diff --git a/neural_insights/README.md b/neural_insights/README.md index 7174b04c104..ba9f5fdc0b9 100644 --- a/neural_insights/README.md +++ b/neural_insights/README.md @@ -107,4 +107,3 @@ q_model = fit( ## Research Collaborations Welcome to raise any interesting research ideas on model compression techniques and feel free to reach us (inc.maintainers@intel.com). Look forward to our collaborations on Neural Insights! - diff --git a/neural_insights/gui/package-lock.json b/neural_insights/gui/package-lock.json index 62ccea99ce7..87df8821d6f 100644 --- a/neural_insights/gui/package-lock.json +++ b/neural_insights/gui/package-lock.json @@ -21549,4 +21549,4 @@ } } } -} \ No newline at end of file +} diff --git a/neural_insights/gui/src/App.js b/neural_insights/gui/src/App.js index 787e43125d2..3522c9c5fc5 100644 --- a/neural_insights/gui/src/App.js +++ b/neural_insights/gui/src/App.js @@ -22,6 +22,7 @@ export const api = axios.create({ function App() { document.body.style = 'background: #ececec;'; + localStorage.setItem('token', window.location.search.replace('?token=', '')); return (
diff --git a/neural_insights/gui/src/components/Graph/Graph.js b/neural_insights/gui/src/components/Graph/Graph.js index 6708e18e484..1afcc9965ee 100644 --- a/neural_insights/gui/src/components/Graph/Graph.js +++ b/neural_insights/gui/src/components/Graph/Graph.js @@ -36,7 +36,7 @@ export default function Graph({ setSelectedNode, selectedWorkload, selectedOp, s path: [selectedWorkload.model_path], ...((groupNode.length || groupNodeOpList.length) && { group: [...groupNode, ...groupNodeOpList] }) }; - api.post('api/model/graph?token=asd', payload) + api.post('api/model/graph?token=' + localStorage.getItem('token'), payload) .then( response => { setGraph(response.data); @@ -49,7 +49,7 @@ export default function Graph({ setSelectedNode, selectedWorkload, selectedOp, s useEffect(() => { if (selectedOp) { - api.post('api/model/graph/highlight_pattern?token=asd', { + api.post('api/model/graph/highlight_pattern?token=' + localStorage.getItem('token'), { workload_id: selectedWorkload.uuid, path: [selectedWorkload.model_path], op_name: selectedOp, diff --git a/neural_insights/gui/src/components/Histogram/Histogram.js b/neural_insights/gui/src/components/Histogram/Histogram.js index f0d35fe2e7b..81ff4e00094 100644 --- a/neural_insights/gui/src/components/Histogram/Histogram.js +++ b/neural_insights/gui/src/components/Histogram/Histogram.js @@ -24,7 +24,7 @@ function Histogram({ selectedWorkload, selectedOp, histogramType, setWarningText useEffect(() => { if (selectedOp.length && histogramType.length) { setHistogramData(null); - api.post('api/diagnosis/histogram?token=asd', { workload_id: selectedWorkload.uuid, op_name: selectedOp, type: histogramType }) + api.post('api/diagnosis/histogram?token=' + localStorage.getItem('token'), { workload_id: selectedWorkload.uuid, op_name: selectedOp, type: histogramType }) .then( response => { setHistogramData(response.data); diff --git a/neural_insights/gui/src/components/OpDetails/OpDetails.js b/neural_insights/gui/src/components/OpDetails/OpDetails.js index e30014b2505..ebafb09d104 100644 --- a/neural_insights/gui/src/components/OpDetails/OpDetails.js +++ b/neural_insights/gui/src/components/OpDetails/OpDetails.js @@ -35,7 +35,7 @@ export default function OpDetails({ selectedWorkload, selectedOp, setHistogramTy useEffect(() => { if (selectedOp?.length) { - api.post('api/diagnosis/op_details?token=asd', { workload_id: selectedWorkload.uuid, op_name: selectedOp }) + api.post('api/diagnosis/op_details?token=' + localStorage.getItem('token'), { workload_id: selectedWorkload.uuid, op_name: selectedOp }) .then( response => { setOpDetails(response.data); diff --git a/neural_insights/gui/src/components/OpList/OpList.js b/neural_insights/gui/src/components/OpList/OpList.js index 6a637348706..bc68030d492 100644 --- a/neural_insights/gui/src/components/OpList/OpList.js +++ b/neural_insights/gui/src/components/OpList/OpList.js @@ -21,13 +21,16 @@ export default function OpList({ selectedWorkload, setSelectedOp, selectedOp, se useEffect(() => { if (selectedWorkload) { - api.post('api/diagnosis/op_list?token=asd', { workload_id: selectedWorkload.uuid }) + setOpList([]); + api.post('api/diagnosis/op_list?token=' + localStorage.getItem('token'), { workload_id: selectedWorkload.uuid }) .then( response => { setOpList(response.data); }) .catch(error => { - setWarningText(error.message + ': ' + error?.response?.data); + if (selectedWorkload?.status !== 'wip') { + setWarningText(error.message + ': ' + error?.response?.data); + } }); } }, [selectedWorkload, selectedOp]); @@ -53,19 +56,21 @@ export default function OpList({ selectedWorkload, setSelectedOp, selectedOp, se return (
- - - - - - - - - - - {tableContent} - -
OP NameMSEActivation MinActivation Max
+ {opList.length > 0 && + + + + + + + + + + + {tableContent} + +
OP NameMSEActivation MinActivation Max
+ }
); } \ No newline at end of file diff --git a/neural_insights/gui/src/components/Profiling/Profiling.js b/neural_insights/gui/src/components/Profiling/Profiling.js index ddc094a9d60..e9064b09baa 100644 --- a/neural_insights/gui/src/components/Profiling/Profiling.js +++ b/neural_insights/gui/src/components/Profiling/Profiling.js @@ -37,7 +37,7 @@ function ProfilingTable({ selectedWorkload, profilingTable, setProfilingTable, s useEffect(() => { if (selectedWorkload) { - api.post('api/profiling?token=asd', { workload_id: selectedWorkload.uuid }) + api.post('api/profiling?token=' + localStorage.getItem('token'), { workload_id: selectedWorkload.uuid }) .then( response => { setProfilingTable(response.data); diff --git a/neural_insights/gui/src/components/Workloads/Workloads.js b/neural_insights/gui/src/components/Workloads/Workloads.js index 93049ddd021..c5b5ad65315 100644 --- a/neural_insights/gui/src/components/Workloads/Workloads.js +++ b/neural_insights/gui/src/components/Workloads/Workloads.js @@ -27,18 +27,20 @@ export default function Workloads({ setSelectedWorkload, selectedWorkload, setWa let socket = io('/'); socket.on('Config update', data => { - getWorkloads(); + getWorkloads(false); }); useEffect(() => { - getWorkloads(); + getWorkloads(true); }, []); - let getWorkloads = () => { - api.get('api/workloads?token=asd') + let getWorkloads = (changeSelectedWorkload) => { + api.get('api/workloads?token=' + localStorage.getItem('token')) .then( response => { - setSelectedWorkload(response.data.workloads[0]); + if (changeSelectedWorkload) { + setSelectedWorkload(response.data.workloads[0]); + } setWorkloads(response.data.workloads); setSpinner(false); } diff --git a/neural_insights/web/app/asset-manifest.json b/neural_insights/web/app/asset-manifest.json index f8ce120a460..4beb818b50e 100644 --- a/neural_insights/web/app/asset-manifest.json +++ b/neural_insights/web/app/asset-manifest.json @@ -1,7 +1,7 @@ { "files": { "main.css": "/static/css/main.570a647a.css", - "main.js": "/static/js/main.f6ad24e2.js", + "main.js": "/static/js/main.38959c1a.js", "static/js/787.c1112931.chunk.js": "/static/js/787.c1112931.chunk.js", "static/media/IntelClear_Rg.ttf": "/static/media/IntelClear_Rg.33af11200cffaf9540ff.ttf", "static/media/IntelClear_Lt.ttf": "/static/media/IntelClear_Lt.c5e18e9d5505364da760.ttf", @@ -11,11 +11,11 @@ "static/media/intelone-display-regular.ttf": "/static/media/intelone-display-regular.0f8c3ef25c545acb6b7c.ttf", "index.html": "/index.html", "main.570a647a.css.map": "/static/css/main.570a647a.css.map", - "main.f6ad24e2.js.map": "/static/js/main.f6ad24e2.js.map", + "main.38959c1a.js.map": "/static/js/main.38959c1a.js.map", "787.c1112931.chunk.js.map": "/static/js/787.c1112931.chunk.js.map" }, "entrypoints": [ "static/css/main.570a647a.css", - "static/js/main.f6ad24e2.js" + "static/js/main.38959c1a.js" ] } \ No newline at end of file diff --git a/neural_insights/web/app/index.html b/neural_insights/web/app/index.html index 3079f956052..fa55138c1d5 100644 --- a/neural_insights/web/app/index.html +++ b/neural_insights/web/app/index.html @@ -1 +1 @@ -Intel Neural Insights
\ No newline at end of file +Neural Insights
\ No newline at end of file diff --git a/neural_insights/web/app/static/js/main.f6ad24e2.js b/neural_insights/web/app/static/js/main.38959c1a.js similarity index 98% rename from neural_insights/web/app/static/js/main.f6ad24e2.js rename to neural_insights/web/app/static/js/main.38959c1a.js index 3d8aafa5616..ffdb2816b37 100644 --- a/neural_insights/web/app/static/js/main.f6ad24e2.js +++ b/neural_insights/web/app/static/js/main.38959c1a.js @@ -1,3 +1,3 @@ -/*! For license information please see main.f6ad24e2.js.LICENSE.txt */ -!function(){var t={1694:function(t,e){var n;!function(){"use strict";var r={}.hasOwnProperty;function i(){for(var t=[],e=0;e1?e-1:0),r=1;r>>0,i=arguments[1],a=0;at.length)&&(e=t.length);for(var n=0,r=new Array(e);ne?1:0},Q=null!=Object.assign?Object.assign.bind(Object):function(t){for(var e=arguments,n=1;n255)return;e.push(Math.floor(a))}var o=r[1]||r[2]||r[3],s=r[1]&&r[2]&&r[3];if(o&&!s)return;var l=n[4];if(void 0!==l){if((l=parseFloat(l))<0||l>1)return;e.push(l)}}return e}(t)||function(t){var e,n,r,i,a,o,s,l;function c(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+6*(e-t)*n:n<.5?e:n<2/3?t+(e-t)*(2/3-n)*6:t}var u=new RegExp("^"+K+"$").exec(t);if(u){if((n=parseInt(u[1]))<0?n=(360- -1*n%360)%360:n>360&&(n%=360),n/=360,(r=parseFloat(u[2]))<0||r>100)return;if(r/=100,(i=parseFloat(u[3]))<0||i>100)return;if(i/=100,void 0!==(a=u[4])&&((a=parseFloat(a))<0||a>1))return;if(0===r)o=s=l=Math.round(255*i);else{var f=i<.5?i*(1+r):i+r-i*r,h=2*i-f;o=Math.round(255*c(h,f,n+1/3)),s=Math.round(255*c(h,f,n)),l=Math.round(255*c(h,f,n-1/3))}e=[o,s,l,a]}return e}(t)},et={transparent:[0,0,0,0],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],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],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],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]},nt=function(t){for(var e=t.map,n=t.keys,r=n.length,i=0;i1&&void 0!==arguments[1]?arguments[1]:ct;!(e=t.next()).done;)n=65599*n+e.value|0;return n},ht=function(t){return 65599*(arguments.length>1&&void 0!==arguments[1]?arguments[1]:ct)+t|0},dt=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:ut;return(e<<5)+e+t|0},pt=function(t){return 2097152*t[0]+t[1]},gt=function(t,e){return[ht(t[0],e[0]),dt(t[1],e[1])]},vt=function(t,e){var n={value:0,done:!1},r=0,i=t.length;return ft({next:function(){return r=0&&(t[r]!==e||(t.splice(r,1),!n));r--);},zt=function(t){t.splice(0,t.length)},Nt=function(t,e,n){return n&&(e=G(n,e)),t[e]},jt=function(t,e,n,r){n&&(e=G(n,e)),t[e]=r},Ft="undefined"!==typeof Map?Map:function(){function t(){g(this,t),this._obj={}}return m(t,[{key:"set",value:function(t,e){return this._obj[t]=e,this}},{key:"delete",value:function(t){return this._obj[t]=void 0,this}},{key:"clear",value:function(){this._obj={}}},{key:"has",value:function(t){return void 0!==this._obj[t]}},{key:"get",value:function(t){return this._obj[t]}}]),t}(),Bt=function(){function t(e){if(g(this,t),this._obj=Object.create(null),this.size=0,null!=e){var n;n=null!=e.instanceString&&e.instanceString()===this.instanceString()?e.toArray():e;for(var r=0;r2&&void 0!==arguments[2])||arguments[2];if(void 0!==t&&void 0!==e&&N(t)){var r=e.group;if(null==r&&(r=e.data&&null!=e.data.source&&null!=e.data.target?"edges":"nodes"),"nodes"===r||"edges"===r){this.length=1,this[0]=this;var i=this._private={cy:t,single:!0,data:e.data||{},position:e.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:r,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!e.selected,selectable:void 0===e.selectable||!!e.selectable,locked:!!e.locked,grabbed:!1,grabbable:void 0===e.grabbable||!!e.grabbable,pannable:void 0===e.pannable?"edges"===r:!!e.pannable,active:!1,classes:new Ut,animation:{current:[],queue:[]},rscratch:{},scratch:e.scratch||{},edges:[],children:[],parent:e.parent&&e.parent.isNode()?e.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(null==i.position.x&&(i.position.x=0),null==i.position.y&&(i.position.y=0),e.renderedPosition){var a=e.renderedPosition,o=t.pan(),s=t.zoom();i.position={x:(a.x-o.x)/s,y:(a.y-o.y)/s}}var l=[];P(e.classes)?l=e.classes:E(e.classes)&&(l=e.classes.split(/\s+/));for(var c=0,u=l.length;c0;){var _=y.pop(),k=v(_),T=_.id();if(h[T]=k,k!==1/0)for(var M=_.neighborhood().intersect(p),A=0;A0)for(n.unshift(e);f[i];){var a=f[i];n.unshift(a.edge),n.unshift(a.node),i=(r=a.node).id()}return o.spawn(n)}}}},Yt={kruskal:function(t){t=t||function(t){return 1};for(var e=this.byGroup(),n=e.nodes,r=e.edges,i=n.length,a=new Array(i),o=n,s=function(t){for(var e=0;e0;){if(l=v.pop(),c=l.id(),m.delete(c),_++,c===h){for(var k=[],T=i,M=h,A=b[M];k.unshift(T),null!=A&&k.unshift(A),null!=(T=y[M]);)A=b[M=T.id()];return{found:!0,distance:d[c],path:this.spawn(k),steps:_}}g[c]=!0;for(var S=l._private.edges,E=0;EA&&(d[M]=A,m[M]=T,y[M]=x),!i){var S=T*c+k;!i&&d[S]>A&&(d[S]=A,m[S]=k,y[S]=x)}}}for(var C=0;C1&&void 0!==arguments[1]?arguments[1]:a,r=[],i=y(t);;){if(null==i)return e.spawn();var o=m(i),l=o.edge,c=o.pred;if(r.unshift(i[0]),i.same(n)&&r.length>0)break;null!=l&&r.unshift(l),i=c}return s.spawn(r)},hasNegativeWeightCycle:p,negativeWeightCycles:g}}},te=Math.sqrt(2),ee=function(t,e,n){0===n.length&&St("Karger-Stein must be run on a connected (sub)graph");for(var r=n[t],i=r[1],a=r[2],o=e[i],s=e[a],l=n,c=l.length-1;c>=0;c--){var u=l[c],f=u[1],h=u[2];(e[f]===o&&e[h]===s||e[f]===s&&e[h]===o)&&l.splice(c,1)}for(var d=0;dr;){var i=Math.floor(Math.random()*e.length);e=ee(i,t,e),n--}return e},re={kargerStein:function(){var t=this,e=this.byGroup(),n=e.nodes,r=e.edges;r.unmergeBy((function(t){return t.isLoop()}));var i=n.length,a=r.length,o=Math.ceil(Math.pow(Math.log(i)/Math.LN2,2)),s=Math.floor(i/te);if(!(i<2)){for(var l=[],c=0;c0?1:t<0?-1:0},ue=function(t,e){return Math.sqrt(fe(t,e))},fe=function(t,e){var n=e.x-t.x,r=e.y-t.y;return n*n+r*r},he=function(t){for(var e=t.length,n=0,r=0;r=t.x1&&t.y2>=t.y1)return{x1:t.x1,y1:t.y1,x2:t.x2,y2:t.y2,w:t.x2-t.x1,h:t.y2-t.y1};if(null!=t.w&&null!=t.h&&t.w>=0&&t.h>=0)return{x1:t.x1,y1:t.y1,x2:t.x1+t.w,y2:t.y1+t.h,w:t.w,h:t.h}}},me=function(t,e,n){t.x1=Math.min(t.x1,e),t.x2=Math.max(t.x2,e),t.w=t.x2-t.x1,t.y1=Math.min(t.y1,n),t.y2=Math.max(t.y2,n),t.h=t.y2-t.y1},ye=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return t.x1-=e,t.x2+=e,t.y1-=e,t.y2+=e,t.w=t.x2-t.x1,t.h=t.y2-t.y1,t},be=function(t){var e,n,r,i,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[0];if(1===a.length)e=n=r=i=a[0];else if(2===a.length)e=r=a[0],i=n=a[1];else if(4===a.length){var o=b(a,4);e=o[0],n=o[1],r=o[2],i=o[3]}return t.x1-=i,t.x2+=n,t.y1-=e,t.y2+=r,t.w=t.x2-t.x1,t.h=t.y2-t.y1,t},xe=function(t,e){t.x1=e.x1,t.y1=e.y1,t.x2=e.x2,t.y2=e.y2,t.w=t.x2-t.x1,t.h=t.y2-t.y1},we=function(t,e){return!(t.x1>e.x2)&&(!(e.x1>t.x2)&&(!(t.x2e.y2)&&!(e.y1>t.y2)))))))},_e=function(t,e,n){return t.x1<=e&&e<=t.x2&&t.y1<=n&&n<=t.y2},ke=function(t,e){return _e(t,e.x1,e.y1)&&_e(t,e.x2,e.y2)},Te=function(t,e,n,r,i,a,o){var s,l=He(i,a),c=i/2,u=a/2,f=r-u-o;if((s=ze(t,e,n,r,n-c+l-o,f,n+c-l+o,f,!1)).length>0)return s;var h=n+c+o;if((s=ze(t,e,n,r,h,r-u+l-o,h,r+u-l+o,!1)).length>0)return s;var d=r+u+o;if((s=ze(t,e,n,r,n-c+l-o,d,n+c-l+o,d,!1)).length>0)return s;var p,g=n-c-o;if((s=ze(t,e,n,r,g,r-u+l-o,g,r+u-l+o,!1)).length>0)return s;var v=n-c+l,m=r-u+l;if((p=De(t,e,n,r,v,m,l+o)).length>0&&p[0]<=v&&p[1]<=m)return[p[0],p[1]];var y=n+c-l,b=r-u+l;if((p=De(t,e,n,r,y,b,l+o)).length>0&&p[0]>=y&&p[1]<=b)return[p[0],p[1]];var x=n+c-l,w=r+u-l;if((p=De(t,e,n,r,x,w,l+o)).length>0&&p[0]>=x&&p[1]>=w)return[p[0],p[1]];var _=n-c+l,k=r+u-l;return(p=De(t,e,n,r,_,k,l+o)).length>0&&p[0]<=_&&p[1]>=k?[p[0],p[1]]:[]},Me=function(t,e,n,r,i,a,o){var s=o,l=Math.min(n,i),c=Math.max(n,i),u=Math.min(r,a),f=Math.max(r,a);return l-s<=t&&t<=c+s&&u-s<=e&&e<=f+s},Ae=function(t,e,n,r,i,a,o,s,l){var c=Math.min(n,o,i)-l,u=Math.max(n,o,i)+l,f=Math.min(r,s,a)-l,h=Math.max(r,s,a)+l;return!(tu||eh)},Se=function(t,e,n,r,i,a,o,s){var l=[];!function(t,e,n,r,i){var a,o,s,l,c,u,f,h;0===t&&(t=1e-5),s=-27*(r/=t)+(e/=t)*(9*(n/=t)-e*e*2),a=(o=(3*n-e*e)/9)*o*o+(s/=54)*s,i[1]=0,f=e/3,a>0?(c=(c=s+Math.sqrt(a))<0?-Math.pow(-c,1/3):Math.pow(c,1/3),u=(u=s-Math.sqrt(a))<0?-Math.pow(-u,1/3):Math.pow(u,1/3),i[0]=-f+c+u,f+=(c+u)/2,i[4]=i[2]=-f,f=Math.sqrt(3)*(-u+c)/2,i[3]=f,i[5]=-f):(i[5]=i[3]=0,0===a?(h=s<0?-Math.pow(-s,1/3):Math.pow(s,1/3),i[0]=2*h-f,i[4]=i[2]=-(h+f)):(l=(o=-o)*o*o,l=Math.acos(s/Math.sqrt(l)),h=2*Math.sqrt(o),i[0]=-f+h*Math.cos(l/3),i[2]=-f+h*Math.cos((l+2*Math.PI)/3),i[4]=-f+h*Math.cos((l+4*Math.PI)/3)))}(1*n*n-4*n*i+2*n*o+4*i*i-4*i*o+o*o+r*r-4*r*a+2*r*s+4*a*a-4*a*s+s*s,9*n*i-3*n*n-3*n*o-6*i*i+3*i*o+9*r*a-3*r*r-3*r*s-6*a*a+3*a*s,3*n*n-6*n*i+n*o-n*t+2*i*i+2*i*t-o*t+3*r*r-6*r*a+r*s-r*e+2*a*a+2*a*e-s*e,1*n*i-n*n+n*t-i*t+r*a-r*r+r*e-a*e,l);for(var c=[],u=0;u<6;u+=2)Math.abs(l[u+1])<1e-7&&l[u]>=0&&l[u]<=1&&c.push(l[u]);c.push(1),c.push(0);for(var f,h,d,p=-1,g=0;g=0?dl?(t-i)*(t-i)+(e-a)*(e-a):c-f},Ce=function(t,e,n){for(var r,i,a,o,s=0,l=0;l=t&&t>=a||r<=t&&t<=a))continue;(t-r)/(a-r)*(o-i)+i>e&&s++}return s%2!==0},Pe=function(t,e,n,r,i,a,o,s,l){var c,u=new Array(n.length);null!=s[0]?(c=Math.atan(s[1]/s[0]),s[0]<0?c+=Math.PI/2:c=-c-Math.PI/2):c=s;for(var f,h=Math.cos(-c),d=Math.sin(-c),p=0;p0){var g=Oe(u,-l);f=Le(g)}else f=u;return Ce(t,e,f)},Le=function(t){for(var e,n,r,i,a,o,s,l,c=new Array(t.length/2),u=0;u=0&&p<=1&&v.push(p),g>=0&&g<=1&&v.push(g),0===v.length)return[];var m=v[0]*s[0]+t,y=v[0]*s[1]+e;return v.length>1?v[0]==v[1]?[m,y]:[m,y,v[1]*s[0]+t,v[1]*s[1]+e]:[m,y]},Re=function(t,e,n){return e<=t&&t<=n||n<=t&&t<=e?t:t<=e&&e<=n||n<=e&&e<=t?e:n},ze=function(t,e,n,r,i,a,o,s,l){var c=t-i,u=n-t,f=o-i,h=e-a,d=r-e,p=s-a,g=f*h-p*c,v=u*h-d*c,m=p*u-f*d;if(0!==m){var y=g/m,b=v/m,x=-.001;return x<=y&&y<=1.001&&x<=b&&b<=1.001||l?[t+y*u,e+y*d]:[]}return 0===g||0===v?Re(t,n,o)===o?[o,s]:Re(t,n,i)===i?[i,a]:Re(i,o,n)===n?[n,r]:[]:[]},Ne=function(t,e,n,r,i,a,o,s){var l,c,u,f,h,d,p=[],g=new Array(n.length),v=!0;if(null==a&&(v=!1),v){for(var m=0;m0){var y=Oe(g,-s);c=Le(y)}else c=g}else c=n;for(var b=0;bc&&(c=e)},h=function(t){return l[t]},d=0;d0?x.edgesTo(b)[0]:b.edgesTo(x)[0];var _=r(w);b=b.id(),d[b]>d[m]+_&&(d[b]=d[m]+_,p.nodes.indexOf(b)<0?p.push(b):p.updateItem(b),c[b]=0,l[b]=[]),d[b]==d[m]+_&&(c[b]=c[b]+c[m],l[b].push(m))}else for(var k=0;k0;){for(var S=n.pop(),E=0;E0&&o.push(n[s]);0!==o.length&&i.push(r.collection(o))}return i}(u,l,e,r);return b=function(t){for(var e=0;e5&&void 0!==arguments[5]?arguments[5]:un,o=r,s=0;s=2?vn(t,e,n,0,dn,pn):vn(t,e,n,0,hn)},squaredEuclidean:function(t,e,n){return vn(t,e,n,0,dn)},manhattan:function(t,e,n){return vn(t,e,n,0,hn)},max:function(t,e,n){return vn(t,e,n,-1/0,gn)}};function yn(t,e,n,r,i,a){var o;return o=C(t)?t:mn[t]||mn.euclidean,0===e&&C(t)?o(i,a):o(e,n,r,i,a)}mn["squared-euclidean"]=mn.squaredEuclidean,mn.squaredeuclidean=mn.squaredEuclidean;var bn=Dt({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),xn=function(t){return bn(t)},wn=function(t,e,n,r,i){var a="kMedoids"!==i?function(t){return n[t]}:function(t){return r[t](n)},o=n,s=e;return yn(t,r.length,a,(function(t){return r[t](e)}),o,s)},_n=function(t,e,n){for(var r=n.length,i=new Array(r),a=new Array(r),o=new Array(e),s=null,l=0;ln)return!1}return!0},An=function(t,e,n){for(var r=0;ri&&(i=e[l][c],a=c);o[a].push(t[l])}for(var u=0;u=i.threshold||"dendrogram"===i.mode&&1===t.length)return!1;var d,p=e[o],g=e[r[o]];d="dendrogram"===i.mode?{left:p,right:g,key:p.key}:{value:p.value.concat(g.value),key:p.key},t[p.index]=d,t.splice(g.index,1),e[p.key]=d;for(var v=0;vn[g.key][m.key]&&(a=n[g.key][m.key])):"max"===i.linkage?(a=n[p.key][m.key],n[p.key][m.key]1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.length,r=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],i=!(arguments.length>5&&void 0!==arguments[5])||arguments[5];arguments.length>3&&void 0!==arguments[3]&&!arguments[3]?(n0&&t.splice(0,e)):t=t.slice(e,n);for(var a=0,o=t.length-1;o>=0;o--){var s=t[o];i?isFinite(s)||(t[o]=-1/0,a++):t.splice(o,1)}r&&t.sort((function(t,e){return t-e}));var l=t.length,c=Math.floor(l/2);return l%2!==0?t[c+1+a]:(t[c-1+a]+t[c+a])/2}(t):"mean"===e?function(t){for(var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.length,r=0,i=0,a=e;a1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.length,r=1/0,i=e;i1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.length,r=-1/0,i=e;io&&(a=l,o=e[i*t+l])}a>0&&r.push(a)}for(var c=0;c=A?(S=A,A=C,E=P):C>S&&(S=C);for(var L=0;L0?1:0;k[_%c.minIterations*e+j]=F,N+=F}if(N>0&&(_>=c.minIterations-1||_==c.maxIterations-1)){for(var B=0,U=0;U0&&r.push(i);return r}(e,a,o),q=function(t,e,n){for(var r=qn(t,e,n),i=0;il&&(s=c,l=u)}n[i]=a[s]}return qn(t,e,n)}(e,r,V),G={},W=0;W1||o>1)&&(c=!0),u[e]=[],t.outgoers().forEach((function(t){t.isEdge()&&u[e].push(t.id())}))}else f[e]=[void 0,t.target().id()]})):l.forEach((function(t){var e=t.id();t.isNode()?(t.degree(!0)%2&&(n?r?c=!0:r=e:n=e),u[e]=[],t.connectedEdges().forEach((function(t){return u[e].push(t.id())}))):f[e]=[t.source().id(),t.target().id()]}));var h={found:!1,trail:void 0};if(c)return h;if(r&&n)if(s){if(i&&r!=i)return h;i=r}else{if(i&&r!=i&&n!=i)return h;i||(i=r)}else i||(i=l[0].id());var d=function(t){for(var e,n,r,i=t,a=[t];u[i].length;)e=u[i].shift(),n=f[e][0],i!=(r=f[e][1])?(u[r]=u[r].filter((function(t){return t!=e})),i=r):s||i==n||(u[n]=u[n].filter((function(t){return t!=e})),i=n),a.unshift(e),a.unshift(i);return a},p=[],g=[];for(g=d(i);1!=g.length;)0==u[g[0]].length?(p.unshift(l.getElementById(g.shift())),p.unshift(l.getElementById(g.shift()))):g=d(g.shift()).concat(g);for(var v in p.unshift(l.getElementById(g.shift())),u)if(u[v].length)return h;return h.found=!0,h.trail=this.spawn(p,!0),h}},Xn=function(){var t=this,e={},n=0,r=0,i=[],a=[],o={},s=function s(l,c,u){l===u&&(r+=1),e[c]={id:n,low:n++,cutVertex:!1};var f,h,d,p,g=t.getElementById(c).connectedEdges().intersection(t);0===g.size()?i.push(t.spawn(t.getElementById(c))):g.forEach((function(n){f=n.source().id(),h=n.target().id(),(d=f===c?h:f)!==u&&(p=n.id(),o[p]||(o[p]=!0,a.push({x:c,y:d,edge:n})),d in e?e[c].low=Math.min(e[c].low,e[d].id):(s(l,d,c),e[c].low=Math.min(e[c].low,e[d].low),e[c].id<=e[d].low&&(e[c].cutVertex=!0,function(n,r){for(var o=a.length-1,s=[],l=t.spawn();a[o].x!=n||a[o].y!=r;)s.push(a.pop().edge),o--;s.push(a.pop().edge),s.forEach((function(n){var r=n.connectedNodes().intersection(t);l.merge(n),r.forEach((function(n){var r=n.id(),i=n.connectedEdges().intersection(t);l.merge(n),e[r].cutVertex?l.merge(i.filter((function(t){return t.isLoop()}))):l.merge(i)}))})),i.push(l)}(c,d))))}))};t.forEach((function(t){if(t.isNode()){var n=t.id();n in e||(r=0,s(n,n),e[n].cutVertex=r>1)}}));var l=Object.keys(e).filter((function(t){return e[t].cutVertex})).map((function(e){return t.getElementById(e)}));return{cut:t.spawn(l),components:i}},Kn=function(){var t=this,e={},n=0,r=[],i=[],a=t.spawn(t),o=function o(s){if(i.push(s),e[s]={index:n,low:n++,explored:!1},t.getElementById(s).connectedEdges().intersection(t).forEach((function(t){var n=t.target().id();n!==s&&(n in e||o(n),e[n].explored||(e[s].low=Math.min(e[s].low,e[n].low)))})),e[s].index===e[s].low){for(var l=t.spawn();;){var c=i.pop();if(l.merge(t.getElementById(c)),e[c].low=e[s].index,e[c].explored=!0,c===s)break}var u=l.edgesWith(l),f=l.merge(u);r.push(f),a=a.difference(f)}};return t.forEach((function(t){if(t.isNode()){var n=t.id();n in e||o(n)}})),{cut:a,components:r}},Zn={};[qt,Wt,Yt,Xt,Zt,Qt,re,We,$e,Ke,Je,cn,On,Bn,Wn,$n,{hopcroftTarjanBiconnected:Xn,htbc:Xn,htb:Xn,hopcroftTarjanBiconnectedComponents:Xn},{tarjanStronglyConnected:Kn,tsc:Kn,tscc:Kn,tarjanStronglyConnectedComponents:Kn}].forEach((function(t){Q(Zn,t)}));var Jn=function t(e){if(!(this instanceof t))return new t(e);this.id="Thenable/1.0.7",this.state=0,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},"function"===typeof e&&e.call(this,this.fulfill.bind(this),this.reject.bind(this))};Jn.prototype={fulfill:function(t){return Qn(this,1,"fulfillValue",t)},reject:function(t){return Qn(this,2,"rejectReason",t)},then:function(t,e){var n=this,r=new Jn;return n.onFulfilled.push(nr(t,r,"fulfill")),n.onRejected.push(nr(e,r,"reject")),tr(n),r.proxy}};var Qn=function(t,e,n,r){return 0===t.state&&(t.state=e,t[n]=r,tr(t)),t},tr=function(t){1===t.state?er(t,"onFulfilled",t.fulfillValue):2===t.state&&er(t,"onRejected",t.rejectReason)},er=function(t,e,n){if(0!==t[e].length){var r=t[e];t[e]=[];var i=function(){for(var t=0;t0:void 0}},clearQueue:function(){return function(){var t=this,e=void 0!==t.length?t:[t];if(!(this._private.cy||this).styleEnabled())return this;for(var n=0;n0&&this.spawn(r).updateStyle().emit("class"),e},addClass:function(t){return this.toggleClass(t,!0)},hasClass:function(t){var e=this[0];return null!=e&&e._private.classes.has(t)},toggleClass:function(t,e){P(t)||(t=t.match(/\S+/g)||[]);for(var n=this,r=void 0===e,i=[],a=0,o=n.length;a0&&this.spawn(i).updateStyle().emit("class"),n},removeClass:function(t){return this.toggleClass(t,!1)},flashClass:function(t,e){var n=this;if(null==e)e=250;else if(0===e)return n;return n.addClass(t),setTimeout((function(){n.removeClass(t)}),e),n}};hr.className=hr.classNames=hr.classes;var dr={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:"\"(?:\\\\\"|[^\"])*\"|'(?:\\\\'|[^'])*'",number:Y,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};dr.variable="(?:[\\w-.]|(?:\\\\"+dr.metaChar+"))+",dr.className="(?:[\\w-]|(?:\\\\"+dr.metaChar+"))+",dr.value=dr.string+"|"+dr.number,dr.id=dr.variable,function(){var t,e,n;for(t=dr.comparatorOp.split("|"),n=0;n=0||"="!==e&&(dr.comparatorOp+="|\\!"+e)}();var pr=0,gr=1,vr=2,mr=3,yr=4,br=5,xr=6,wr=7,_r=8,kr=9,Tr=10,Mr=11,Ar=12,Sr=13,Er=14,Cr=15,Pr=16,Lr=17,Or=18,Ir=19,Dr=20,Rr=[{selector:":selected",matches:function(t){return t.selected()}},{selector:":unselected",matches:function(t){return!t.selected()}},{selector:":selectable",matches:function(t){return t.selectable()}},{selector:":unselectable",matches:function(t){return!t.selectable()}},{selector:":locked",matches:function(t){return t.locked()}},{selector:":unlocked",matches:function(t){return!t.locked()}},{selector:":visible",matches:function(t){return t.visible()}},{selector:":hidden",matches:function(t){return!t.visible()}},{selector:":transparent",matches:function(t){return t.transparent()}},{selector:":grabbed",matches:function(t){return t.grabbed()}},{selector:":free",matches:function(t){return!t.grabbed()}},{selector:":removed",matches:function(t){return t.removed()}},{selector:":inside",matches:function(t){return!t.removed()}},{selector:":grabbable",matches:function(t){return t.grabbable()}},{selector:":ungrabbable",matches:function(t){return!t.grabbable()}},{selector:":animated",matches:function(t){return t.animated()}},{selector:":unanimated",matches:function(t){return!t.animated()}},{selector:":parent",matches:function(t){return t.isParent()}},{selector:":childless",matches:function(t){return t.isChildless()}},{selector:":child",matches:function(t){return t.isChild()}},{selector:":orphan",matches:function(t){return t.isOrphan()}},{selector:":nonorphan",matches:function(t){return t.isChild()}},{selector:":compound",matches:function(t){return t.isNode()?t.isParent():t.source().isParent()||t.target().isParent()}},{selector:":loop",matches:function(t){return t.isLoop()}},{selector:":simple",matches:function(t){return t.isSimple()}},{selector:":active",matches:function(t){return t.active()}},{selector:":inactive",matches:function(t){return!t.active()}},{selector:":backgrounding",matches:function(t){return t.backgrounding()}},{selector:":nonbackgrounding",matches:function(t){return!t.backgrounding()}}].sort((function(t,e){return function(t,e){return-1*J(t,e)}(t.selector,e.selector)})),zr=function(){for(var t,e={},n=0;n0&&c.edgeCount>0)return Ct("The selector `"+t+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(c.edgeCount>1)return Ct("The selector `"+t+"` is invalid because it uses multiple edge selectors"),!1;1===c.edgeCount&&Ct("The selector `"+t+"` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.")}return!0},toString:function(){if(null!=this.toStringCache)return this.toStringCache;for(var t=function(t){return null==t?"":t},e=function(e){return E(e)?'"'+e+'"':t(e)},n=function(t){return" "+t+" "},r=function(r,a){var o=r.type,s=r.value;switch(o){case pr:var l=t(s);return l.substring(0,l.length-1);case mr:var c=r.field,u=r.operator;return"["+c+n(t(u))+e(s)+"]";case br:var f=r.operator,h=r.field;return"["+t(f)+h+"]";case yr:return"["+r.field+"]";case xr:var d=r.operator;return"[["+r.field+n(t(d))+e(s)+"]]";case wr:return s;case _r:return"#"+s;case kr:return"."+s;case Lr:case Cr:return i(r.parent,a)+n(">")+i(r.child,a);case Or:case Pr:return i(r.ancestor,a)+" "+i(r.descendant,a);case Ir:var p=i(r.left,a),g=i(r.subject,a),v=i(r.right,a);return p+(p.length>0?" ":"")+g+v;case Dr:return""}},i=function(t,e){return t.checks.reduce((function(n,i,a){return n+(e===t&&0===a?"$":"")+r(i,e)}),"")},a="",o=0;o1&&o=0&&(e=e.replace("!",""),u=!0),e.indexOf("@")>=0&&(e=e.replace("@",""),c=!0),(o||l||c)&&(i=o||s?""+t:"",a=""+n),c&&(t=i=i.toLowerCase(),n=a=a.toLowerCase()),e){case"*=":r=i.indexOf(a)>=0;break;case"$=":r=i.indexOf(a,i.length-a.length)>=0;break;case"^=":r=0===i.indexOf(a);break;case"=":r=t===n;break;case">":f=!0,r=t>n;break;case">=":f=!0,r=t>=n;break;case"<":f=!0,r=t0;){var c=i.shift();e(c),a.add(c.id()),o&&r(i,a,c)}return t}function ni(t,e,n){if(n.isParent())for(var r=n._private.children,i=0;i1&&void 0!==arguments[1])||arguments[1],ni)},ti.forEachUp=function(t){return ei(this,t,!(arguments.length>1&&void 0!==arguments[1])||arguments[1],ri)},ti.forEachUpAndDown=function(t){return ei(this,t,!(arguments.length>1&&void 0!==arguments[1])||arguments[1],ii)},ti.ancestors=ti.parents,(Zr=Jr={data:ur.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),removeData:ur.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:ur.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:ur.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:ur.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:ur.removeData({field:"rscratch",triggerEvent:!1}),id:function(){var t=this[0];if(t)return t._private.data.id}}).attr=Zr.data,Zr.removeAttr=Zr.removeData;var ai,oi,si=Jr,li={};function ci(t){return function(e){var n=this;if(void 0===e&&(e=!0),0!==n.length&&n.isNode()&&!n.removed()){for(var r=0,i=n[0],a=i._private.edges,o=0;oe})),minIndegree:ui("indegree",(function(t,e){return te})),minOutdegree:ui("outdegree",(function(t,e){return te}))}),Q(li,{totalDegree:function(t){for(var e=0,n=this.nodes(),r=0;r0,u=c;c&&(l=l[0]);var f=u?l.position():{x:0,y:0};return i={x:s.x-f.x,y:s.y-f.y},void 0===t?i:i[t]}for(var h=0;h0,v=g;g&&(p=p[0]);var m=v?p.position():{x:0,y:0};void 0!==e?d.position(t,e+m[t]):void 0!==i&&d.position({x:i.x+m.x,y:i.y+m.y})}}else if(!a)return;return this}},ai.modelPosition=ai.point=ai.position,ai.modelPositions=ai.points=ai.positions,ai.renderedPoint=ai.renderedPosition,ai.relativePoint=ai.relativePosition;var di,pi,gi=oi;di=pi={},pi.renderedBoundingBox=function(t){var e=this.boundingBox(t),n=this.cy(),r=n.zoom(),i=n.pan(),a=e.x1*r+i.x,o=e.x2*r+i.x,s=e.y1*r+i.y,l=e.y2*r+i.y;return{x1:a,x2:o,y1:s,y2:l,w:o-a,h:l-s}},pi.dirtyCompoundBoundsCache=function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=this.cy();return e.styleEnabled()&&e.hasCompoundNodes()?(this.forEachUp((function(e){if(e.isParent()){var n=e._private;n.compoundBoundsClean=!1,n.bbCache=null,t||e.emitAndNotify("bounds")}})),this):this},pi.updateCompoundBounds=function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=this.cy();if(!e.styleEnabled()||!e.hasCompoundNodes())return this;if(!t&&e.batching())return this;function n(t){if(t.isParent()){var e=t._private,n=t.children(),r="include"===t.pstyle("compound-sizing-wrt-labels").value,i={width:{val:t.pstyle("min-width").pfValue,left:t.pstyle("min-width-bias-left"),right:t.pstyle("min-width-bias-right")},height:{val:t.pstyle("min-height").pfValue,top:t.pstyle("min-height-bias-top"),bottom:t.pstyle("min-height-bias-bottom")}},a=n.boundingBox({includeLabels:r,includeOverlays:!1,useCache:!1}),o=e.position;0!==a.w&&0!==a.h||((a={w:t.pstyle("width").pfValue,h:t.pstyle("height").pfValue}).x1=o.x-a.w/2,a.x2=o.x+a.w/2,a.y1=o.y-a.h/2,a.y2=o.y+a.h/2);var s=i.width.left.value;"px"===i.width.left.units&&i.width.val>0&&(s=100*s/i.width.val);var l=i.width.right.value;"px"===i.width.right.units&&i.width.val>0&&(l=100*l/i.width.val);var c=i.height.top.value;"px"===i.height.top.units&&i.height.val>0&&(c=100*c/i.height.val);var u=i.height.bottom.value;"px"===i.height.bottom.units&&i.height.val>0&&(u=100*u/i.height.val);var f=m(i.width.val-a.w,s,l),h=f.biasDiff,d=f.biasComplementDiff,p=m(i.height.val-a.h,c,u),g=p.biasDiff,v=p.biasComplementDiff;e.autoPadding=function(t,e,n,r){if("%"!==n.units)return"px"===n.units?n.pfValue:0;switch(r){case"width":return t>0?n.pfValue*t:0;case"height":return e>0?n.pfValue*e:0;case"average":return t>0&&e>0?n.pfValue*(t+e)/2:0;case"min":return t>0&&e>0?t>e?n.pfValue*e:n.pfValue*t:0;case"max":return t>0&&e>0?t>e?n.pfValue*t:n.pfValue*e:0;default:return 0}}(a.w,a.h,t.pstyle("padding"),t.pstyle("padding-relative-to").value),e.autoWidth=Math.max(a.w,i.width.val),o.x=(-h+a.x1+a.x2+d)/2,e.autoHeight=Math.max(a.h,i.height.val),o.y=(-g+a.y1+a.y2+v)/2}function m(t,e,n){var r=0,i=0,a=e+n;return t>0&&a>0&&(r=e/a*t,i=n/a*t),{biasDiff:r,biasComplementDiff:i}}}for(var r=0;rt.x2?r:t.x2,t.y1=nt.y2?i:t.y2,t.w=t.x2-t.x1,t.h=t.y2-t.y1)},yi=function(t,e){return null==e?t:mi(t,e.x1,e.y1,e.x2,e.y2)},bi=function(t,e,n){return Nt(t,e,n)},xi=function(t,e,n){if(!e.cy().headless()){var r,i,a=e._private,o=a.rstyle,s=o.arrowWidth/2;if("none"!==e.pstyle(n+"-arrow-shape").value){"source"===n?(r=o.srcX,i=o.srcY):"target"===n?(r=o.tgtX,i=o.tgtY):(r=o.midX,i=o.midY);var l=a.arrowBounds=a.arrowBounds||{},c=l[n]=l[n]||{};c.x1=r-s,c.y1=i-s,c.x2=r+s,c.y2=i+s,c.w=c.x2-c.x1,c.h=c.y2-c.y1,ye(c,1),mi(t,c.x1,c.y1,c.x2,c.y2)}}},wi=function(t,e,n){if(!e.cy().headless()){var r;r=n?n+"-":"";var i=e._private,a=i.rstyle;if(e.pstyle(r+"label").strValue){var o,s,l,c,u=e.pstyle("text-halign"),f=e.pstyle("text-valign"),h=bi(a,"labelWidth",n),d=bi(a,"labelHeight",n),p=bi(a,"labelX",n),g=bi(a,"labelY",n),v=e.pstyle(r+"text-margin-x").pfValue,m=e.pstyle(r+"text-margin-y").pfValue,y=e.isEdge(),b=e.pstyle(r+"text-rotation"),x=e.pstyle("text-outline-width").pfValue,w=e.pstyle("text-border-width").pfValue/2,_=e.pstyle("text-background-padding").pfValue,k=d,T=h,M=T/2,A=k/2;if(y)o=p-M,s=p+M,l=g-A,c=g+A;else{switch(u.value){case"left":o=p-T,s=p;break;case"center":o=p-M,s=p+M;break;case"right":o=p,s=p+T}switch(f.value){case"top":l=g-k,c=g;break;case"center":l=g-A,c=g+A;break;case"bottom":l=g,c=g+k}}o+=v-Math.max(x,w)-_-2,s+=v+Math.max(x,w)+_+2,l+=m-Math.max(x,w)-_-2,c+=m+Math.max(x,w)+_+2;var S=n||"main",E=i.labelBounds,C=E[S]=E[S]||{};C.x1=o,C.y1=l,C.x2=s,C.y2=c,C.w=s-o,C.h=c-l;var P=y&&"autorotate"===b.strValue,L=null!=b.pfValue&&0!==b.pfValue;if(P||L){var O=P?bi(i.rstyle,"labelAngle",n):b.pfValue,I=Math.cos(O),D=Math.sin(O),R=(o+s)/2,z=(l+c)/2;if(!y){switch(u.value){case"left":R=s;break;case"right":R=o}switch(f.value){case"top":z=c;break;case"bottom":z=l}}var N=function(t,e){return{x:(t-=R)*I-(e-=z)*D+R,y:t*D+e*I+z}},j=N(o,l),F=N(o,c),B=N(s,l),U=N(s,c);o=Math.min(j.x,F.x,B.x,U.x),s=Math.max(j.x,F.x,B.x,U.x),l=Math.min(j.y,F.y,B.y,U.y),c=Math.max(j.y,F.y,B.y,U.y)}var H=S+"Rot",V=E[H]=E[H]||{};V.x1=o,V.y1=l,V.x2=s,V.y2=c,V.w=s-o,V.h=c-l,mi(t,o,l,s,c),mi(i.labelBounds.all,o,l,s,c)}return t}},_i=function(t){var e=0,n=function(t){return(t?1:0)<(r=E[1].x)){var C=n;n=r,r=C}if(i>(a=E[1].y)){var P=i;i=a,a=P}mi(h,n-k,i-k,r+k,a+k)}}else if("bezier"===S||"unbundled-bezier"===S||"segments"===S||"taxi"===S){var L;switch(S){case"bezier":case"unbundled-bezier":L=v.bezierPts;break;case"segments":case"taxi":L=v.linePts}if(null!=L)for(var O=0;O(r=R.x)){var z=n;n=r,r=z}if((i=D.y)>(a=R.y)){var N=i;i=a,a=N}mi(h,n-=k,i-=k,r+=k,a+=k)}if(u&&e.includeEdges&&g&&(xi(h,t,"mid-source"),xi(h,t,"mid-target"),xi(h,t,"source"),xi(h,t,"target")),u&&"yes"===t.pstyle("ghost").value){var j=t.pstyle("ghost-offset-x").pfValue,F=t.pstyle("ghost-offset-y").pfValue;mi(h,h.x1+j,h.y1+F,h.x2+j,h.y2+F)}var B=d.bodyBounds=d.bodyBounds||{};xe(B,h),be(B,m),ye(B,1),u&&(n=h.x1,r=h.x2,i=h.y1,a=h.y2,mi(h,n-_,i-_,r+_,a+_));var U=d.overlayBounds=d.overlayBounds||{};xe(U,h),be(U,m),ye(U,1);var H=d.labelBounds=d.labelBounds||{};null!=H.all?((l=H.all).x1=1/0,l.y1=1/0,l.x2=-1/0,l.y2=-1/0,l.w=0,l.h=0):H.all=ve(),u&&e.includeLabels&&(e.includeMainLabels&&wi(h,t,null),g&&(e.includeSourceLabels&&wi(h,t,"source"),e.includeTargetLabels&&wi(h,t,"target")))}return h.x1=vi(h.x1),h.y1=vi(h.y1),h.x2=vi(h.x2),h.y2=vi(h.y2),h.w=vi(h.x2-h.x1),h.h=vi(h.y2-h.y1),h.w>0&&h.h>0&&b&&(be(h,m),ye(h,1)),h}(t,Mi),r.bbCache=n,r.bbCachePosKey=o):n=r.bbCache,!a){var u=t.isNode();n=ve(),(e.includeNodes&&u||e.includeEdges&&!u)&&(e.includeOverlays?yi(n,r.overlayBounds):yi(n,r.bodyBounds)),e.includeLabels&&(e.includeMainLabels&&(!i||e.includeSourceLabels&&e.includeTargetLabels)?yi(n,r.labelBounds.all):(e.includeMainLabels&&yi(n,r.labelBounds.mainRot),e.includeSourceLabels&&yi(n,r.labelBounds.sourceRot),e.includeTargetLabels&&yi(n,r.labelBounds.targetRot))),n.w=n.x2-n.x1,n.h=n.y2-n.y1}return n},Mi={includeNodes:!0,includeEdges:!0,includeLabels:!0,includeMainLabels:!0,includeSourceLabels:!0,includeTargetLabels:!0,includeOverlays:!0,includeUnderlays:!0,useCache:!0},Ai=_i(Mi),Si=Dt(Mi);pi.boundingBox=function(t){var e;if(1!==this.length||null==this[0]._private.bbCache||this[0]._private.styleDirty||void 0!==t&&void 0!==t.useCache&&!0!==t.useCache){e=ve();var n=Si(t=t||Mi),r=this;if(r.cy().styleEnabled())for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:Hi,e=arguments.length>1?arguments[1]:void 0,n=0;n=0;s--)o(s);return this},qi.removeAllListeners=function(){return this.removeListener("*")},qi.emit=qi.trigger=function(t,e,n){var r=this.listeners,i=r.length;return this.emitting++,P(e)||(e=[e]),Yi(this,(function(t,a){null!=n&&(r=[{event:a.event,type:a.type,namespace:a.namespace,callback:n}],i=r.length);for(var o=function(n){var i=r[n];if(i.type===a.type&&(!i.namespace||i.namespace===a.namespace||".*"===i.namespace)&&t.eventMatches(t.context,i,a)){var o=[a];null!=e&&function(t,e){for(var n=0;n1&&!r){var i=this.length-1,a=this[i],o=a._private.data.id;this[i]=void 0,this[t]=a,n.set(o,{ele:a,index:t})}return this.length--,this},unmergeOne:function(t){t=t[0];var e=this._private,n=t._private.data.id,r=e.map.get(n);if(!r)return this;var i=r.index;return this.unmergeAt(i),this},unmerge:function(t){var e=this._private.cy;if(!t)return this;if(t&&E(t)){var n=t;t=e.mutableElements().filter(n)}for(var r=0;r=0;e--){t(this[e])&&this.unmergeAt(e)}return this},map:function(t,e){for(var n=[],r=this,i=0;ir&&(r=s,n=o)}return{value:r,ele:n}},min:function(t,e){for(var n,r=1/0,i=this,a=0;a=0&&i1&&void 0!==arguments[1])||arguments[1],n=this[0],r=n.cy();if(r.styleEnabled()&&n){this.cleanStyle();var i=n._private.style[t];return null!=i?i:e?r.style().getDefaultProperty(t):null}},numericStyle:function(t){var e=this[0];if(e.cy().styleEnabled()&&e){var n=e.pstyle(t);return void 0!==n.pfValue?n.pfValue:n.value}},numericStyleUnits:function(t){var e=this[0];if(e.cy().styleEnabled())return e?e.pstyle(t).units:void 0},renderedStyle:function(t){var e=this.cy();if(!e.styleEnabled())return this;var n=this[0];return n?e.style().getRenderedStyle(n,t):void 0},style:function(t,e){var n=this.cy();if(!n.styleEnabled())return this;var r=n.style();if(L(t)){var i=t;r.applyBypass(this,i,false),this.emitAndNotify("style")}else if(E(t)){if(void 0===e){var a=this[0];return a?r.getStylePropertyValue(a,t):void 0}r.applyBypass(this,t,e,false),this.emitAndNotify("style")}else if(void 0===t){var o=this[0];return o?r.getRawStyle(o):void 0}return this},removeStyle:function(t){var e=this.cy();if(!e.styleEnabled())return this;var n=e.style(),r=this;if(void 0===t)for(var i=0;i0&&e.push(u[0]),e.push(s[0])}return this.spawn(e,!0).filter(t)}),"neighborhood"),closedNeighborhood:function(t){return this.neighborhood().add(this).filter(t)},openNeighborhood:function(t){return this.neighborhood(t)}}),ma.neighbourhood=ma.neighborhood,ma.closedNeighbourhood=ma.closedNeighborhood,ma.openNeighbourhood=ma.openNeighborhood,Q(ma,{source:Qr((function(t){var e,n=this[0];return n&&(e=n._private.source||n.cy().collection()),e&&t?e.filter(t):e}),"source"),target:Qr((function(t){var e,n=this[0];return n&&(e=n._private.target||n.cy().collection()),e&&t?e.filter(t):e}),"target"),sources:wa({attr:"source"}),targets:wa({attr:"target"})}),Q(ma,{edgesWith:Qr(_a(),"edgesWith"),edgesTo:Qr(_a({thisIsSrc:!0}),"edgesTo")}),Q(ma,{connectedEdges:Qr((function(t){for(var e=[],n=0;n0);return a},component:function(){var t=this[0];return t.cy().mutableElements().components(t)[0]}}),ma.componentsOf=ma.components;var Ta=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(void 0!==t){var i=new Ft,a=!1;if(e){if(e.length>0&&L(e[0])&&!R(e[0])){a=!0;for(var o=[],s=new Ut,l=0,c=e.length;l0&&void 0!==arguments[0])||arguments[0],r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=this,a=i.cy(),o=a._private,s=[],l=[],c=0,u=i.length;c0){for(var z=t.length===i.length?i:new Ta(a,t),N=0;N0&&void 0!==arguments[0])||arguments[0],e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=this,r=[],i={},a=n._private.cy;function o(t){var n=i[t.id()];e&&t.removed()||n||(i[t.id()]=!0,t.isNode()?(r.push(t),function(t){for(var e=t._private.edges,n=0;n0&&(t?k.emitAndNotify("remove"):e&&k.emit("remove"));for(var T=0;T=a?function(e,r){for(var a=0;a0?i=l:r=l}while(Math.abs(a)>o&&++cf&&Math.abs(s.v)>f;);return a?function(t){return c[t*(c.length-1)|0]}:u}}(),Ca=function(t,e,n,r){var i=Sa(t,e,n,r);return function(t,e,n){return t+(e-t)*i(n)}},Pa={linear:function(t,e,n){return t+(e-t)*n},ease:Ca(.25,.1,.25,1),"ease-in":Ca(.42,0,1,1),"ease-out":Ca(0,0,.58,1),"ease-in-out":Ca(.42,0,.58,1),"ease-in-sine":Ca(.47,0,.745,.715),"ease-out-sine":Ca(.39,.575,.565,1),"ease-in-out-sine":Ca(.445,.05,.55,.95),"ease-in-quad":Ca(.55,.085,.68,.53),"ease-out-quad":Ca(.25,.46,.45,.94),"ease-in-out-quad":Ca(.455,.03,.515,.955),"ease-in-cubic":Ca(.55,.055,.675,.19),"ease-out-cubic":Ca(.215,.61,.355,1),"ease-in-out-cubic":Ca(.645,.045,.355,1),"ease-in-quart":Ca(.895,.03,.685,.22),"ease-out-quart":Ca(.165,.84,.44,1),"ease-in-out-quart":Ca(.77,0,.175,1),"ease-in-quint":Ca(.755,.05,.855,.06),"ease-out-quint":Ca(.23,1,.32,1),"ease-in-out-quint":Ca(.86,0,.07,1),"ease-in-expo":Ca(.95,.05,.795,.035),"ease-out-expo":Ca(.19,1,.22,1),"ease-in-out-expo":Ca(1,0,0,1),"ease-in-circ":Ca(.6,.04,.98,.335),"ease-out-circ":Ca(.075,.82,.165,1),"ease-in-out-circ":Ca(.785,.135,.15,.86),spring:function(t,e,n){if(0===n)return Pa.linear;var r=Ea(t,e,n);return function(t,e,n){return t+(e-t)*r(n)}},"cubic-bezier":Ca};function La(t,e,n,r,i){if(1===r)return n;if(e===n)return n;var a=i(e,n,r);return null==t||((t.roundValue||t.color)&&(a=Math.round(a)),void 0!==t.min&&(a=Math.max(a,t.min)),void 0!==t.max&&(a=Math.min(a,t.max))),a}function Oa(t,e){return null!=t.pfValue||null!=t.value?null==t.pfValue||null!=e&&"%"===e.type.units?t.value:t.pfValue:t}function Ia(t,e,n,r,i){var a=null!=i?i.type:null;n<0?n=0:n>1&&(n=1);var o=Oa(t,i),s=Oa(e,i);if(O(o)&&O(s))return La(a,o,s,n,r);if(P(o)&&P(s)){for(var l=[],c=0;c0?("spring"===f&&h.push(o.duration),o.easingImpl=Pa[f].apply(null,h)):o.easingImpl=Pa[f]}var d,p=o.easingImpl;if(d=0===o.duration?1:(n-l)/o.duration,o.applying&&(d=o.progress),d<0?d=0:d>1&&(d=1),null==o.delay){var g=o.startPosition,v=o.position;if(v&&i&&!t.locked()){var m={};Ra(g.x,v.x)&&(m.x=Ia(g.x,v.x,d,p)),Ra(g.y,v.y)&&(m.y=Ia(g.y,v.y,d,p)),t.position(m)}var y=o.startPan,b=o.pan,x=a.pan,w=null!=b&&r;w&&(Ra(y.x,b.x)&&(x.x=Ia(y.x,b.x,d,p)),Ra(y.y,b.y)&&(x.y=Ia(y.y,b.y,d,p)),t.emit("pan"));var _=o.startZoom,k=o.zoom,T=null!=k&&r;T&&(Ra(_,k)&&(a.zoom=ge(a.minZoom,Ia(_,k,d,p),a.maxZoom)),t.emit("zoom")),(w||T)&&t.emit("viewport");var M=o.style;if(M&&M.length>0&&i){for(var A=0;A=0;e--){(0,t[e])()}t.splice(0,t.length)},u=a.length-1;u>=0;u--){var f=a[u],h=f._private;h.stopped?(a.splice(u,1),h.hooked=!1,h.playing=!1,h.started=!1,c(h.frames)):(h.playing||h.applying)&&(h.playing&&h.applying&&(h.applying=!1),h.started||za(0,f,t),Da(e,f,t,n),h.applying&&(h.applying=!1),c(h.frames),null!=h.step&&h.step(t),f.completed()&&(a.splice(u,1),h.hooked=!1,h.playing=!1,h.started=!1,c(h.completes)),s=!0)}return n||0!==a.length||0!==o.length||r.push(e),s}for(var a=!1,o=0;o0?e.notify("draw",n):e.notify("draw")),n.unmerge(r),e.emit("step")}var ja={animate:ur.animate(),animation:ur.animation(),animated:ur.animated(),clearQueue:ur.clearQueue(),delay:ur.delay(),delayAnimation:ur.delayAnimation(),stop:ur.stop(),addToAnimationPool:function(t){this.styleEnabled()&&this._private.aniEles.merge(t)},stopAnimationLoop:function(){this._private.animationsRunning=!1},startAnimationLoop:function(){var t=this;if(t._private.animationsRunning=!0,t.styleEnabled()){var e=t.renderer();e&&e.beforeRender?e.beforeRender((function(e,n){Na(n,t)}),e.beforeRenderPriorities.animations):function e(){t._private.animationsRunning&&st((function(n){Na(n,t),e()}))}()}}},Fa={qualifierCompare:function(t,e){return null==t||null==e?null==t&&null==e:t.sameText(e)},eventMatches:function(t,e,n){var r=e.qualifier;return null==r||t!==n.target&&R(n.target)&&r.matches(n.target)},addEventFields:function(t,e){e.cy=t,e.target=t},callbackContext:function(t,e,n){return null!=e.qualifier?n.target:t}},Ba=function(t){return E(t)?new $r(t):t},Ua={createEmitter:function(){var t=this._private;return t.emitter||(t.emitter=new Vi(Fa,this)),this},emitter:function(){return this._private.emitter},on:function(t,e,n){return this.emitter().on(t,Ba(e),n),this},removeListener:function(t,e,n){return this.emitter().removeListener(t,Ba(e),n),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},one:function(t,e,n){return this.emitter().one(t,Ba(e),n),this},once:function(t,e,n){return this.emitter().one(t,Ba(e),n),this},emit:function(t,e){return this.emitter().emit(t,e),this},emitAndNotify:function(t,e){return this.emit(t),this.notify(t,e),this}};ur.eventAliasesOn(Ua);var Ha={png:function(t){return t=t||{},this._private.renderer.png(t)},jpg:function(t){var e=this._private.renderer;return(t=t||{}).bg=t.bg||"#fff",e.jpg(t)}};Ha.jpeg=Ha.jpg;var Va={layout:function(t){var e=this;if(null!=t)if(null!=t.name){var n=t.name,r=e.extension("layout",n);if(null!=r){var i;i=E(t.eles)?e.$(t.eles):null!=t.eles?t.eles:e.$();var a=new r(Q({},t,{cy:e,eles:i}));return a}St("No such layout `"+n+"` found. Did you forget to import it and `cytoscape.use()` it?")}else St("A `name` must be specified to make a layout");else St("Layout options must be specified to make a layout")}};Va.createLayout=Va.makeLayout=Va.layout;var qa={notify:function(t,e){var n=this._private;if(this.batching()){n.batchNotifications=n.batchNotifications||{};var r=n.batchNotifications[t]=n.batchNotifications[t]||this.collection();null!=e&&r.merge(e)}else if(n.notificationsEnabled){var i=this.renderer();!this.destroyed()&&i&&i.notify(t,e)}},notifications:function(t){var e=this._private;return void 0===t?e.notificationsEnabled:(e.notificationsEnabled=!!t,this)},noNotifications:function(t){this.notifications(!1),t(),this.notifications(!0)},batching:function(){return this._private.batchCount>0},startBatch:function(){var t=this._private;return null==t.batchCount&&(t.batchCount=0),0===t.batchCount&&(t.batchStyleEles=this.collection(),t.batchNotifications={}),t.batchCount++,this},endBatch:function(){var t=this._private;if(0===t.batchCount)return this;if(t.batchCount--,0===t.batchCount){t.batchStyleEles.updateStyle();var e=this.renderer();Object.keys(t.batchNotifications).forEach((function(n){var r=t.batchNotifications[n];r.empty()?e.notify(n):e.notify(n,r)}))}return this},batch:function(t){return this.startBatch(),t(),this.endBatch(),this},batchData:function(t){var e=this;return this.batch((function(){for(var n=Object.keys(t),r=0;r0;)e.removeChild(e.childNodes[0]);t._private.renderer=null,t.mutableElements().forEach((function(t){var e=t._private;e.rscratch={},e.rstyle={},e.animation.current=[],e.animation.queue=[]}))},onRender:function(t){return this.on("render",t)},offRender:function(t){return this.off("render",t)}};Wa.invalidateDimensions=Wa.resize;var Ya={collection:function(t,e){return E(t)?this.$(t):D(t)?t.collection():P(t)?(e||(e={}),new Ta(this,t,e.unique,e.removed)):new Ta(this)},nodes:function(t){var e=this.$((function(t){return t.isNode()}));return t?e.filter(t):e},edges:function(t){var e=this.$((function(t){return t.isEdge()}));return t?e.filter(t):e},$:function(t){var e=this._private.elements;return t?e.filter(t):e.spawnSelf()},mutableElements:function(){return this._private.elements}};Ya.elements=Ya.filter=Ya.$;var $a={},Xa="t";$a.apply=function(t){for(var e=this,n=e._private.cy.collection(),r=0;r0;if(h||f&&d){var p=void 0;h&&d||h?p=c.properties:d&&(p=c.mappedProperties);for(var g=0;g1&&(v=1),s.color){var w=i.valueMin[0],_=i.valueMax[0],k=i.valueMin[1],T=i.valueMax[1],M=i.valueMin[2],A=i.valueMax[2],S=null==i.valueMin[3]?1:i.valueMin[3],E=null==i.valueMax[3]?1:i.valueMax[3],C=[Math.round(w+(_-w)*v),Math.round(k+(T-k)*v),Math.round(M+(A-M)*v),Math.round(S+(E-S)*v)];n={bypass:i.bypass,name:i.name,value:C,strValue:"rgb("+C[0]+", "+C[1]+", "+C[2]+")"}}else{if(!s.number)return!1;var P=i.valueMin+(i.valueMax-i.valueMin)*v;n=this.parse(i.name,P,i.bypass,h)}if(!n)return g(),!1;n.mapping=i,i=n;break;case o.data:for(var L=i.field.split("."),I=f.data,D=0;D0&&a>0){for(var s={},l=!1,c=0;c0?t.delayAnimation(o).play().promise().then(e):e()})).then((function(){return t.animation({style:s,duration:a,easing:t.pstyle("transition-timing-function").value,queue:!1}).play().promise()})).then((function(){n.removeBypasses(t,i),t.emitAndNotify("style"),r.transitioning=!1}))}else r.transitioning&&(this.removeBypasses(t,i),t.emitAndNotify("style"),r.transitioning=!1)},$a.checkTrigger=function(t,e,n,r,i,a){var o=this.properties[e],s=i(o);null!=s&&s(n,r)&&a(o)},$a.checkZOrderTrigger=function(t,e,n,r){var i=this;this.checkTrigger(t,e,n,r,(function(t){return t.triggersZOrder}),(function(){i._private.cy.notify("zorder",t)}))},$a.checkBoundsTrigger=function(t,e,n,r){this.checkTrigger(t,e,n,r,(function(t){return t.triggersBounds}),(function(i){t.dirtyCompoundBoundsCache(),t.dirtyBoundingBoxCache(),!i.triggersBoundsOfParallelBeziers||("curve-style"!==e||"bezier"!==n&&"bezier"!==r)&&("display"!==e||"none"!==n&&"none"!==r)||t.parallelEdges().forEach((function(t){t.isBundledBezier()&&t.dirtyBoundingBoxCache()}))}))},$a.checkTriggers=function(t,e,n,r){t.dirtyStyleCache(),this.checkZOrderTrigger(t,e,n,r),this.checkBoundsTrigger(t,e,n,r)};var Ka={applyBypass:function(t,e,n,r){var i=[];if("*"===e||"**"===e){if(void 0!==n)for(var a=0;ae.length?a.substr(e.length):""}function s(){n=n.length>r.length?n.substr(r.length):""}for(a=a.replace(/[/][*](\s|.)+?[*][/]/g,"");;){if(a.match(/^\s*$/))break;var l=a.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!l){Ct("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+a);break}e=l[0];var c=l[1];if("core"!==c)if(new $r(c).invalid){Ct("Skipping parsing of block: Invalid selector found in string stylesheet: "+c),o();continue}var u=l[2],f=!1;n=u;for(var h=[];;){if(n.match(/^\s*$/))break;var d=n.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!d){Ct("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+u),f=!0;break}r=d[0];var p=d[1],g=d[2];if(this.properties[p])i.parse(p,g)?(h.push({name:p,val:g}),s()):(Ct("Skipping property: Invalid property definition in: "+r),s());else Ct("Skipping property: Invalid property name in: "+r),s()}if(f){o();break}i.selector(c);for(var v=0;v=7&&"d"===e[0]&&(c=new RegExp(s.data.regex).exec(e))){if(n)return!1;var h=s.data;return{name:t,value:c,strValue:""+e,mapped:h,field:c[1],bypass:n}}if(e.length>=10&&"m"===e[0]&&(u=new RegExp(s.mapData.regex).exec(e))){if(n)return!1;if(f.multiple)return!1;var d=s.mapData;if(!f.color&&!f.number)return!1;var p=this.parse(t,u[4]);if(!p||p.mapped)return!1;var g=this.parse(t,u[5]);if(!g||g.mapped)return!1;if(p.pfValue===g.pfValue||p.strValue===g.strValue)return Ct("`"+t+": "+e+"` is not a valid mapper because the output range is zero; converting to `"+t+": "+p.strValue+"`"),this.parse(t,p.strValue);if(f.color){var v=p.value,m=g.value;if(v[0]===m[0]&&v[1]===m[1]&&v[2]===m[2]&&(v[3]===m[3]||(null==v[3]||1===v[3])&&(null==m[3]||1===m[3])))return!1}return{name:t,value:u,strValue:""+e,mapped:d,field:u[1],fieldMin:parseFloat(u[2]),fieldMax:parseFloat(u[3]),valueMin:p.value,valueMax:g.value,bypass:n}}}if(f.multiple&&"multiple"!==r){var y;if(y=l?e.split(/\s+/):P(e)?e:[e],f.evenMultiple&&y.length%2!==0)return null;for(var b=[],x=[],w=[],_="",k=!1,T=0;T0?" ":"")+M.strValue}return f.validate&&!f.validate(b,x)?null:f.singleEnum&&k?1===b.length&&E(b[0])?{name:t,value:b[0],strValue:b[0],bypass:n}:null:{name:t,value:b,pfValue:w,strValue:_,bypass:n,units:x}}var A,S,L=function(){for(var r=0;rf.max||f.strictMax&&e===f.max))return null;var N={name:t,value:e,strValue:""+e+(I||""),units:I,bypass:n};return f.unitless||"px"!==I&&"em"!==I?N.pfValue=e:N.pfValue="px"!==I&&I?this.getEmSizeInPixels()*e:e,"ms"!==I&&"s"!==I||(N.pfValue="ms"===I?e:1e3*e),"deg"!==I&&"rad"!==I||(N.pfValue="rad"===I?e:(A=e,Math.PI*A/180)),"%"===I&&(N.pfValue=e/100),N}if(f.propList){var j=[],F=""+e;if("none"===F);else{for(var B=F.split(/\s*,\s*|\s+/),U=0;U0&&l>0&&!isNaN(n.w)&&!isNaN(n.h)&&n.w>0&&n.h>0)return{zoom:o=(o=(o=Math.min((s-2*e)/n.w,(l-2*e)/n.h))>this._private.maxZoom?this._private.maxZoom:o)=n.minZoom&&(n.maxZoom=e),this},minZoom:function(t){return void 0===t?this._private.minZoom:this.zoomRange({min:t})},maxZoom:function(t){return void 0===t?this._private.maxZoom:this.zoomRange({max:t})},getZoomedViewport:function(t){var e,n,r=this._private,i=r.pan,a=r.zoom,o=!1;if(r.zoomingEnabled||(o=!0),O(t)?n=t:L(t)&&(n=t.level,null!=t.position?e=ie(t.position,a,i):null!=t.renderedPosition&&(e=t.renderedPosition),null==e||r.panningEnabled||(o=!0)),n=(n=n>r.maxZoom?r.maxZoom:n)e.maxZoom||!e.zoomingEnabled?a=!0:(e.zoom=s,i.push("zoom"))}if(r&&(!a||!t.cancelOnFailedZoom)&&e.panningEnabled){var l=t.pan;O(l.x)&&(e.pan.x=l.x,o=!1),O(l.y)&&(e.pan.y=l.y,o=!1),o||i.push("pan")}return i.length>0&&(i.push("viewport"),this.emit(i.join(" ")),this.notify("viewport")),this},center:function(t){var e=this.getCenterPan(t);return e&&(this._private.pan=e,this.emit("pan viewport"),this.notify("viewport")),this},getCenterPan:function(t,e){if(this._private.panningEnabled){if(E(t)){var n=t;t=this.mutableElements().filter(n)}else D(t)||(t=this.mutableElements());if(0!==t.length){var r=t.boundingBox(),i=this.width(),a=this.height();return{x:(i-(e=void 0===e?this._private.zoom:e)*(r.x1+r.x2))/2,y:(a-e*(r.y1+r.y2))/2}}}},reset:function(){return this._private.panningEnabled&&this._private.zoomingEnabled?(this.viewport({pan:{x:0,y:0},zoom:1}),this):this},invalidateSize:function(){this._private.sizeCache=null},size:function(){var t=this._private,e=t.container;return t.sizeCache=t.sizeCache||(e?function(){var t=w.getComputedStyle(e),n=function(e){return parseFloat(t.getPropertyValue(e))};return{width:e.clientWidth-n("padding-left")-n("padding-right"),height:e.clientHeight-n("padding-top")-n("padding-bottom")}}():{width:1,height:1})},width:function(){return this.size().width},height:function(){return this.size().height},extent:function(){var t=this._private.pan,e=this._private.zoom,n=this.renderedExtent(),r={x1:(n.x1-t.x)/e,x2:(n.x2-t.x)/e,y1:(n.y1-t.y)/e,y2:(n.y2-t.y)/e};return r.w=r.x2-r.x1,r.h=r.y2-r.y1,r},renderedExtent:function(){var t=this.width(),e=this.height();return{x1:0,y1:0,x2:t,y2:e,w:t,h:e}},multiClickDebounceTime:function(t){return t?(this._private.multiClickDebounceTime=t,this):this._private.multiClickDebounceTime}};oo.centre=oo.center,oo.autolockNodes=oo.autolock,oo.autoungrabifyNodes=oo.autoungrabify;var so={data:ur.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:ur.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:ur.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:ur.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};so.attr=so.data,so.removeAttr=so.removeData;var lo=function(t){var e=this,n=(t=Q({},t)).container;n&&!I(n)&&I(n[0])&&(n=n[0]);var r=n?n._cyreg:null;(r=r||{})&&r.cy&&(r.cy.destroy(),r={});var i=r.readies=r.readies||[];n&&(n._cyreg=r),r.cy=e;var a=void 0!==w&&void 0!==n&&!t.headless,o=t;o.layout=Q({name:a?"grid":"null"},o.layout),o.renderer=Q({name:a?"canvas":"null"},o.renderer);var s=function(t,e,n){return void 0!==e?e:void 0!==n?n:t},l=this._private={container:n,ready:!1,options:o,elements:new Ta(this),listeners:[],aniEles:new Ta(this),data:o.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:s(!0,o.zoomingEnabled),userZoomingEnabled:s(!0,o.userZoomingEnabled),panningEnabled:s(!0,o.panningEnabled),userPanningEnabled:s(!0,o.userPanningEnabled),boxSelectionEnabled:s(!0,o.boxSelectionEnabled),autolock:s(!1,o.autolock,o.autolockNodes),autoungrabify:s(!1,o.autoungrabify,o.autoungrabifyNodes),autounselectify:s(!1,o.autounselectify),styleEnabled:void 0===o.styleEnabled?a:o.styleEnabled,zoom:O(o.zoom)?o.zoom:1,pan:{x:L(o.pan)&&O(o.pan.x)?o.pan.x:0,y:L(o.pan)&&O(o.pan.y)?o.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:s(250,o.multiClickDebounceTime)};this.createEmitter(),this.selectionType(o.selectionType),this.zoomRange({min:o.minZoom,max:o.maxZoom});l.styleEnabled&&e.setStyle([]);var c=Q({},o,o.renderer);e.initRenderer(c);!function(t,e){if(t.some(B))return ir.all(t).then(e);e(t)}([o.style,o.elements],(function(t){var n=t[0],a=t[1];l.styleEnabled&&e.style().append(n),function(t,n,r){e.notifications(!1);var i=e.mutableElements();i.length>0&&i.remove(),null!=t&&(L(t)||P(t))&&e.add(t),e.one("layoutready",(function(t){e.notifications(!0),e.emit(t),e.one("load",n),e.emitAndNotify("load")})).one("layoutstop",(function(){e.one("done",r),e.emit("done")}));var a=Q({},e._private.options.layout);a.eles=e.elements(),e.layout(a).run()}(a,(function(){e.startAnimationLoop(),l.ready=!0,C(o.ready)&&e.on("ready",o.ready);for(var t=0;t0,c=ve(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()});if(D(n.roots))t=n.roots;else if(P(n.roots)){for(var u=[],f=0;f0;){var L=A.shift(),O=M(L,S);if(O)L.outgoers().filter((function(t){return t.isNode()&&i.has(t)})).forEach(C);else if(null===O){Ct("Detected double maximal shift for node `"+L.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}T();var I=0;if(n.avoidOverlap)for(var R=0;R0&&m[0].length<=3?l/2:0),f=2*Math.PI/m[r].length*i;return 0===r&&1===m[0].length&&(u=1),{x:Y+u*Math.cos(f),y:$+u*Math.sin(f)}}return{x:Y+(i+1-(a+1)/2)*o,y:(r+1)*s}})),this};var go={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(t,e){return!0},ready:void 0,stop:void 0,transform:function(t,e){return e}};function vo(t){this.options=Q({},go,t)}vo.prototype.run=function(){var t=this.options,e=t,n=t.cy,r=e.eles,i=void 0!==e.counterclockwise?!e.counterclockwise:e.clockwise,a=r.nodes().not(":parent");e.sort&&(a=a.sort(e.sort));for(var o,s=ve(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()}),l=s.x1+s.w/2,c=s.y1+s.h/2,u=(void 0===e.sweep?2*Math.PI-2*Math.PI/a.length:e.sweep)/Math.max(1,a.length-1),f=0,h=0;h1&&e.avoidOverlap){f*=1.75;var v=Math.cos(u)-Math.cos(0),m=Math.sin(u)-Math.sin(0),y=Math.sqrt(f*f/(v*v+m*m));o=Math.max(y,o)}return r.nodes().layoutPositions(this,e,(function(t,n){var r=e.startAngle+n*u*(i?1:-1),a=o*Math.cos(r),s=o*Math.sin(r);return{x:l+a,y:c+s}})),this};var mo,yo={fit:!0,padding:30,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,equidistant:!1,minNodeSpacing:10,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,height:void 0,width:void 0,spacingFactor:void 0,concentric:function(t){return t.degree()},levelWidth:function(t){return t.maxDegree()/4},animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(t,e){return!0},ready:void 0,stop:void 0,transform:function(t,e){return e}};function bo(t){this.options=Q({},yo,t)}bo.prototype.run=function(){for(var t=this.options,e=t,n=void 0!==e.counterclockwise?!e.counterclockwise:e.clockwise,r=t.cy,i=e.eles,a=i.nodes().not(":parent"),o=ve(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),s=o.x1+o.w/2,l=o.y1+o.h/2,c=[],u=0,f=0;f0)Math.abs(y[0].value-x.value)>=v&&(y=[],m.push(y));y.push(x)}var w=u+e.minNodeSpacing;if(!e.avoidOverlap){var _=m.length>0&&m[0].length>1,k=(Math.min(o.w,o.h)/2-w)/(m.length+_?1:0);w=Math.min(w,k)}for(var T=0,M=0;M1&&e.avoidOverlap){var C=Math.cos(E)-Math.cos(0),P=Math.sin(E)-Math.sin(0),L=Math.sqrt(w*w/(C*C+P*P));T=Math.max(L,T)}A.r=T,T+=w}if(e.equidistant){for(var O=0,I=0,D=0;D=t.numIter)&&(Eo(r,t),r.temperature=r.temperature*t.coolingFactor,!(r.temperature=t.animationThreshold&&a(),st(e)):(Bo(r,t),s())}()}else{for(;c;)c=o(l),l++;Bo(r,t),s()}return this},wo.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this},wo.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};var _o=function(t,e,n){for(var r=n.eles.edges(),i=n.eles.nodes(),a={isCompound:t.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:i.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:r.size(),temperature:n.initialTemp,clientWidth:t.width(),clientHeight:t.width(),boundingBox:ve(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:t.width(),h:t.height()})},o=n.eles.components(),s={},l=0;l0){a.graphSet.push(x);for(l=0;lr.count?0:r.graph},To=function t(e,n,r,i){var a=i.graphSet[r];if(-10)var s=(c=r.nodeOverlap*o)*i/(g=Math.sqrt(i*i+a*a)),l=c*a/g;else{var c,u=Io(t,i,a),f=Io(e,-1*i,-1*a),h=f.x-u.x,d=f.y-u.y,p=h*h+d*d,g=Math.sqrt(p);s=(c=(t.nodeRepulsion+e.nodeRepulsion)/p)*h/g,l=c*d/g}t.isLocked||(t.offsetX-=s,t.offsetY-=l),e.isLocked||(e.offsetX+=s,e.offsetY+=l)}},Oo=function(t,e,n,r){if(n>0)var i=t.maxX-e.minX;else i=e.maxX-t.minX;if(r>0)var a=t.maxY-e.minY;else a=e.maxY-t.minY;return i>=0&&a>=0?Math.sqrt(i*i+a*a):0},Io=function(t,e,n){var r=t.positionX,i=t.positionY,a=t.height||1,o=t.width||1,s=n/e,l=a/o,c={};return 0===e&&0n?(c.x=r,c.y=i+a/2,c):0e&&-1*l<=s&&s<=l?(c.x=r-o/2,c.y=i-o*n/2/e,c):0=l)?(c.x=r+a*e/2/n,c.y=i+a/2,c):0>n&&(s<=-1*l||s>=l)?(c.x=r-a*e/2/n,c.y=i-a/2,c):c},Do=function(t,e){for(var n=0;n1){var p=e.gravity*f/d,g=e.gravity*h/d;u.offsetX+=p,u.offsetY+=g}}}}},zo=function(t,e){var n=[],r=0,i=-1;for(n.push.apply(n,t.graphSet[0]),i+=t.graphSet[0].length;r<=i;){var a=n[r++],o=t.idToIndex[a],s=t.layoutNodes[o],l=s.children;if(0n)var i={x:n*t/r,y:n*e/r};else i={x:t,y:e};return i},Fo=function t(e,n){var r=e.parentId;if(null!=r){var i=n.layoutNodes[n.idToIndex[r]],a=!1;return(null==i.maxX||e.maxX+i.padRight>i.maxX)&&(i.maxX=e.maxX+i.padRight,a=!0),(null==i.minX||e.minX-i.padLefti.maxY)&&(i.maxY=e.maxY+i.padBottom,a=!0),(null==i.minY||e.minY-i.padTopp&&(f+=d+e.componentSpacing,u=0,h=0,d=0)}}},Uo={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,avoidOverlapPadding:10,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,condense:!1,rows:void 0,cols:void 0,position:function(t){},sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(t,e){return!0},ready:void 0,stop:void 0,transform:function(t,e){return e}};function Ho(t){this.options=Q({},Uo,t)}Ho.prototype.run=function(){var t=this.options,e=t,n=t.cy,r=e.eles,i=r.nodes().not(":parent");e.sort&&(i=i.sort(e.sort));var a=ve(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()});if(0===a.h||0===a.w)r.nodes().layoutPositions(this,e,(function(t){return{x:a.x1,y:a.y1}}));else{var o=i.size(),s=Math.sqrt(o*a.h/a.w),l=Math.round(s),c=Math.round(a.w/a.h*s),u=function(t){if(null==t)return Math.min(l,c);Math.min(l,c)==l?l=t:c=t},f=function(t){if(null==t)return Math.max(l,c);Math.max(l,c)==l?l=t:c=t},h=e.rows,d=null!=e.cols?e.cols:e.columns;if(null!=h&&null!=d)l=h,c=d;else if(null!=h&&null==d)l=h,c=Math.ceil(o/l);else if(null==h&&null!=d)c=d,l=Math.ceil(o/c);else if(c*l>o){var p=u(),g=f();(p-1)*g>=o?u(p-1):(g-1)*p>=o&&f(g-1)}else for(;c*l=o?f(m+1):u(v+1)}var y=a.w/c,b=a.h/l;if(e.condense&&(y=0,b=0),e.avoidOverlap)for(var x=0;x=c&&(L=0,P++)},I={},D=0;D(r=Ee(t,e,x[w],x[w+1],x[w+2],x[w+3])))return v(n,r),!0}else if("bezier"===a.edgeType||"multibezier"===a.edgeType||"self"===a.edgeType||"compound"===a.edgeType)for(x=a.allpts,w=0;w+5(r=Se(t,e,x[w],x[w+1],x[w+2],x[w+3],x[w+4],x[w+5])))return v(n,r),!0;y=y||i.source,b=b||i.target;var _=o.getArrowWidth(l,u),k=[{name:"source",x:a.arrowStartX,y:a.arrowStartY,angle:a.srcArrowAngle},{name:"target",x:a.arrowEndX,y:a.arrowEndY,angle:a.tgtArrowAngle},{name:"mid-source",x:a.midX,y:a.midY,angle:a.midsrcArrowAngle},{name:"mid-target",x:a.midX,y:a.midY,angle:a.midtgtArrowAngle}];for(w=0;w0&&(m(y),m(b))}function b(t,e,n){return Nt(t,e,n)}function x(n,r){var i,a=n._private,o=p;i=r?r+"-":"",n.boundingBox();var s=a.labelBounds[r||"main"],l=n.pstyle(i+"label").value;if("yes"===n.pstyle("text-events").strValue&&l){var c=b(a.rscratch,"labelX",r),u=b(a.rscratch,"labelY",r),f=b(a.rscratch,"labelAngle",r),h=n.pstyle(i+"text-margin-x").pfValue,d=n.pstyle(i+"text-margin-y").pfValue,g=s.x1-o-h,m=s.x2+o-h,y=s.y1-o-d,x=s.y2+o-d;if(f){var w=Math.cos(f),_=Math.sin(f),k=function(t,e){return{x:(t-=c)*w-(e-=u)*_+c,y:t*_+e*w+u}},T=k(g,y),M=k(g,x),A=k(m,y),S=k(m,x),E=[T.x+h,T.y+d,A.x+h,A.y+d,S.x+h,S.y+d,M.x+h,M.y+d];if(Ce(t,e,E))return v(n),!0}else if(_e(s,t,e))return v(n),!0}}n&&(l=l.interactive);for(var w=l.length-1;w>=0;w--){var _=l[w];_.isNode()?m(_)||x(_):y(_)||x(_)||x(_,"source")||x(_,"target")}return c},getAllInBox:function(t,e,n,r){for(var i,a,o=this.getCachedZSortedEles().interactive,s=[],l=Math.min(t,n),c=Math.max(t,n),u=Math.min(e,r),f=Math.max(e,r),h=ve({x1:t=l,y1:e=u,x2:n=c,y2:r=f}),d=0;d0?Math.max(t-e,0):Math.min(t+e,0)},S=A(T,_),E=A(M,k),C=!1;"auto"===v?g=Math.abs(S)>Math.abs(E)?i:r:v===l||v===s?(g=r,C=!0):v!==a&&v!==o||(g=i,C=!0);var P,L=g===r,O=L?E:S,I=L?M:T,D=ce(I),R=!1;(C&&(y||x)||!(v===s&&I<0||v===l&&I>0||v===a&&I>0||v===o&&I<0)||(O=(D*=-1)*Math.abs(O),R=!0),y)?P=(b<0?1+b:b)*O:P=(b<0?O:0)+b*D;var z=function(t){return Math.abs(t)=Math.abs(O)},N=z(P),j=z(Math.abs(O)-Math.abs(P));if((N||j)&&!R)if(L){var F=Math.abs(I)<=f/2,B=Math.abs(T)<=h/2;if(F){var U=(c.x1+c.x2)/2,H=c.y1,V=c.y2;n.segpts=[U,H,U,V]}else if(B){var q=(c.y1+c.y2)/2,G=c.x1,W=c.x2;n.segpts=[G,q,W,q]}else n.segpts=[c.x1,c.y2]}else{var Y=Math.abs(I)<=u/2,$=Math.abs(M)<=d/2;if(Y){var X=(c.y1+c.y2)/2,K=c.x1,Z=c.x2;n.segpts=[K,X,Z,X]}else if($){var J=(c.x1+c.x2)/2,Q=c.y1,tt=c.y2;n.segpts=[J,Q,J,tt]}else n.segpts=[c.x2,c.y1]}else if(L){var et=c.y1+P+(p?f/2*D:0),nt=c.x1,rt=c.x2;n.segpts=[nt,et,rt,et]}else{var it=c.x1+P+(p?u/2*D:0),at=c.y1,ot=c.y2;n.segpts=[it,at,it,ot]}},ns.tryToCorrectInvalidPoints=function(t,e){var n=t._private.rscratch;if("bezier"===n.edgeType){var r=e.srcPos,i=e.tgtPos,a=e.srcW,o=e.srcH,s=e.tgtW,l=e.tgtH,c=e.srcShape,u=e.tgtShape,f=!O(n.startX)||!O(n.startY),h=!O(n.arrowStartX)||!O(n.arrowStartY),d=!O(n.endX)||!O(n.endY),p=!O(n.arrowEndX)||!O(n.arrowEndY),g=3*(this.getArrowWidth(t.pstyle("width").pfValue,t.pstyle("arrow-scale").value)*this.arrowShapeWidth),v=ue({x:n.ctrlpts[0],y:n.ctrlpts[1]},{x:n.startX,y:n.startY}),m=vh.poolIndex()){var d=f;f=h,h=d}var p=s.srcPos=f.position(),g=s.tgtPos=h.position(),v=s.srcW=f.outerWidth(),m=s.srcH=f.outerHeight(),y=s.tgtW=h.outerWidth(),b=s.tgtH=h.outerHeight(),x=s.srcShape=n.nodeShapes[e.getNodeShape(f)],w=s.tgtShape=n.nodeShapes[e.getNodeShape(h)];s.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var _=0;_0){var H=c,V=fe(H,oe(e)),q=fe(H,oe(U)),G=V;if(q2)fe(H,{x:U[2],y:U[3]})0){var it=u,at=fe(it,oe(e)),ot=fe(it,oe(rt)),st=at;if(ot2)fe(it,{x:rt[2],y:rt[3]})=c||y){u={cp:g,segment:m};break}}if(u)break}var b=u.cp,x=u.segment,w=(c-h)/x.length,_=x.t1-x.t0,k=s?x.t0+_*w:x.t1-_*w;k=ge(0,k,1),e=pe(b.p0,b.p1,b.p2,k),i=function(t,e,n,r){var i=ge(0,r-.001,1),a=ge(0,r+.001,1),o=pe(t,e,n,i),s=pe(t,e,n,a);return cs(o,s)}(b.p0,b.p1,b.p2,k);break;case"straight":case"segments":case"haystack":for(var T,M,A,S,E=0,C=r.allpts.length,P=0;P+3=c));P+=2);var L=(c-M)/T;L=ge(0,L,1),e=function(t,e,n,r){var i=e.x-t.x,a=e.y-t.y,o=ue(t,e),s=i/o,l=a/o;return n=null==n?0:n,r=null!=r?r:n*o,{x:t.x+s*r,y:t.y+l*r}}(A,S,L),i=cs(A,S)}o("labelX",n,e.x),o("labelY",n,e.y),o("labelAutoAngle",n,i)}};c("source"),c("target"),this.applyLabelDimensions(t)}},ss.applyLabelDimensions=function(t){this.applyPrefixedLabelDimensions(t),t.isEdge()&&(this.applyPrefixedLabelDimensions(t,"source"),this.applyPrefixedLabelDimensions(t,"target"))},ss.applyPrefixedLabelDimensions=function(t,e){var n=t._private,r=this.getLabelText(t,e),i=this.calculateLabelDimensions(t,r),a=t.pstyle("line-height").pfValue,o=t.pstyle("text-wrap").strValue,s=Nt(n.rscratch,"labelWrapCachedLines",e)||[],l="wrap"!==o?1:Math.max(s.length,1),c=i.height/l,u=c*a,f=i.width,h=i.height+(l-1)*(a-1)*c;jt(n.rstyle,"labelWidth",e,f),jt(n.rscratch,"labelWidth",e,f),jt(n.rstyle,"labelHeight",e,h),jt(n.rscratch,"labelHeight",e,h),jt(n.rscratch,"labelLineHeight",e,u)},ss.getLabelText=function(t,e){var n=t._private,r=e?e+"-":"",i=t.pstyle(r+"label").strValue,a=t.pstyle("text-transform").value,o=function(t,r){return r?(jt(n.rscratch,t,e,r),r):Nt(n.rscratch,t,e)};if(!i)return"";"none"==a||("uppercase"==a?i=i.toUpperCase():"lowercase"==a&&(i=i.toLowerCase()));var s=t.pstyle("text-wrap").value;if("wrap"===s){var l=o("labelKey");if(null!=l&&o("labelWrapKey")===l)return o("labelWrapCachedText");for(var c=i.split("\n"),u=t.pstyle("text-max-width").pfValue,f="anywhere"===t.pstyle("text-overflow-wrap").value,h=[],d=/[\s\u200b]+/,p=f?"":" ",g=0;gu){for(var b=v.split(d),x="",w=0;wT)break;M+=i[S],S===i.length-1&&(A=!0)}return A||(M+="\u2026"),M}return i},ss.getLabelJustification=function(t){var e=t.pstyle("text-justification").strValue,n=t.pstyle("text-halign").strValue;if("auto"!==e)return e;if(!t.isNode())return"center";switch(n){case"left":return"right";case"right":return"left";default:return"center"}},ss.calculateLabelDimensions=function(t,e){var n=vt(e,t._private.labelDimsKey),r=this.labelDimCache||(this.labelDimCache=[]),i=r[n];if(null!=i)return i;var a=t.pstyle("font-style").strValue,o=t.pstyle("font-size").pfValue,s=t.pstyle("font-family").strValue,l=t.pstyle("font-weight").strValue,c=this.labelCalcCanvas,u=this.labelCalcCanvasContext;if(!c){c=this.labelCalcCanvas=document.createElement("canvas"),u=this.labelCalcCanvasContext=c.getContext("2d");var f=c.style;f.position="absolute",f.left="-9999px",f.top="-9999px",f.zIndex="-1",f.visibility="hidden",f.pointerEvents="none"}u.font="".concat(a," ").concat(l," ").concat(o,"px ").concat(s);for(var h=0,d=0,p=e.split("\n"),g=0;g1&&void 0!==arguments[1])||arguments[1];if(e.merge(t),n)for(var r=0;r=t.desktopTapThreshold2}var A=r(e);v&&(t.hoverData.tapholdCancelled=!0);a=!0,n(g,["mousemove","vmousemove","tapdrag"],e,{x:u[0],y:u[1]});var S=function(){t.data.bgActivePosistion=void 0,t.hoverData.selecting||o.emit({originalEvent:e,type:"boxstart",position:{x:u[0],y:u[1]}}),p[4]=1,t.hoverData.selecting=!0,t.redrawHint("select",!0),t.redraw()};if(3===t.hoverData.which){if(v){var E={originalEvent:e,type:"cxtdrag",position:{x:u[0],y:u[1]}};y?y.emit(E):o.emit(E),t.hoverData.cxtDragged=!0,t.hoverData.cxtOver&&g===t.hoverData.cxtOver||(t.hoverData.cxtOver&&t.hoverData.cxtOver.emit({originalEvent:e,type:"cxtdragout",position:{x:u[0],y:u[1]}}),t.hoverData.cxtOver=g,g&&g.emit({originalEvent:e,type:"cxtdragover",position:{x:u[0],y:u[1]}}))}}else if(t.hoverData.dragging){if(a=!0,o.panningEnabled()&&o.userPanningEnabled()){var C;if(t.hoverData.justStartedPan){var P=t.hoverData.mdownPos;C={x:(u[0]-P[0])*s,y:(u[1]-P[1])*s},t.hoverData.justStartedPan=!1}else C={x:b[0]*s,y:b[1]*s};o.panBy(C),o.emit("dragpan"),t.hoverData.dragged=!0}u=t.projectIntoViewport(e.clientX,e.clientY)}else if(1!=p[4]||null!=y&&!y.pannable()){if(y&&y.pannable()&&y.active()&&y.unactivate(),y&&y.grabbed()||g==m||(m&&n(m,["mouseout","tapdragout"],e,{x:u[0],y:u[1]}),g&&n(g,["mouseover","tapdragover"],e,{x:u[0],y:u[1]}),t.hoverData.last=g),y)if(v){if(o.boxSelectionEnabled()&&A)y&&y.grabbed()&&(f(x),y.emit("freeon"),x.emit("free"),t.dragData.didDrag&&(y.emit("dragfreeon"),x.emit("dragfree"))),S();else if(y&&y.grabbed()&&t.nodeIsDraggable(y)){var L=!t.dragData.didDrag;L&&t.redrawHint("eles",!0),t.dragData.didDrag=!0,t.hoverData.draggingEles||l(x,{inDragLayer:!0});var I={x:0,y:0};if(O(b[0])&&O(b[1])&&(I.x+=b[0],I.y+=b[1],L)){var D=t.hoverData.dragDelta;D&&O(D[0])&&O(D[1])&&(I.x+=D[0],I.y+=D[1])}t.hoverData.draggingEles=!0,x.silentShift(I).emit("position drag"),t.redrawHint("drag",!0),t.redraw()}}else!function(){var e=t.hoverData.dragDelta=t.hoverData.dragDelta||[];0===e.length?(e.push(b[0]),e.push(b[1])):(e[0]+=b[0],e[1]+=b[1])}();a=!0}else if(v){if(t.hoverData.dragging||!o.boxSelectionEnabled()||!A&&o.panningEnabled()&&o.userPanningEnabled()){if(!t.hoverData.selecting&&o.panningEnabled()&&o.userPanningEnabled()){i(y,t.hoverData.downs)&&(t.hoverData.dragging=!0,t.hoverData.justStartedPan=!0,p[4]=0,t.data.bgActivePosistion=oe(h),t.redrawHint("select",!0),t.redraw())}}else S();y&&y.pannable()&&y.active()&&y.unactivate()}return p[2]=u[0],p[3]=u[1],a?(e.stopPropagation&&e.stopPropagation(),e.preventDefault&&e.preventDefault(),!1):void 0}}),!1),t.registerBinding(window,"mouseup",(function(i){if(t.hoverData.capture){t.hoverData.capture=!1;var a=t.cy,o=t.projectIntoViewport(i.clientX,i.clientY),s=t.selection,l=t.findNearestElement(o[0],o[1],!0,!1),c=t.dragData.possibleDragElements,u=t.hoverData.down,h=r(i);if(t.data.bgActivePosistion&&(t.redrawHint("select",!0),t.redraw()),t.hoverData.tapholdCancelled=!0,t.data.bgActivePosistion=void 0,u&&u.unactivate(),3===t.hoverData.which){var d={originalEvent:i,type:"cxttapend",position:{x:o[0],y:o[1]}};if(u?u.emit(d):a.emit(d),!t.hoverData.cxtDragged){var p={originalEvent:i,type:"cxttap",position:{x:o[0],y:o[1]}};u?u.emit(p):a.emit(p)}t.hoverData.cxtDragged=!1,t.hoverData.which=null}else if(1===t.hoverData.which){if(n(l,["mouseup","tapend","vmouseup"],i,{x:o[0],y:o[1]}),t.dragData.didDrag||t.hoverData.dragged||t.hoverData.selecting||t.hoverData.isOverThresholdDrag||(n(u,["click","tap","vclick"],i,{x:o[0],y:o[1]}),b=!1,i.timeStamp-x<=a.multiClickDebounceTime()?(y&&clearTimeout(y),b=!0,x=null,n(u,["dblclick","dbltap","vdblclick"],i,{x:o[0],y:o[1]})):(y=setTimeout((function(){b||n(u,["oneclick","onetap","voneclick"],i,{x:o[0],y:o[1]})}),a.multiClickDebounceTime()),x=i.timeStamp)),null!=u||t.dragData.didDrag||t.hoverData.selecting||t.hoverData.dragged||r(i)||(a.$(e).unselect(["tapunselect"]),c.length>0&&t.redrawHint("eles",!0),t.dragData.possibleDragElements=c=a.collection()),l!=u||t.dragData.didDrag||t.hoverData.selecting||null!=l&&l._private.selectable&&(t.hoverData.dragging||("additive"===a.selectionType()||h?l.selected()?l.unselect(["tapunselect"]):l.select(["tapselect"]):h||(a.$(e).unmerge(l).unselect(["tapunselect"]),l.select(["tapselect"]))),t.redrawHint("eles",!0)),t.hoverData.selecting){var g=a.collection(t.getAllInBox(s[0],s[1],s[2],s[3]));t.redrawHint("select",!0),g.length>0&&t.redrawHint("eles",!0),a.emit({type:"boxend",originalEvent:i,position:{x:o[0],y:o[1]}});var v=function(t){return t.selectable()&&!t.selected()};"additive"===a.selectionType()||h||a.$(e).unmerge(g).unselect(),g.emit("box").stdFilter(v).select().emit("boxselect"),t.redraw()}if(t.hoverData.dragging&&(t.hoverData.dragging=!1,t.redrawHint("select",!0),t.redrawHint("eles",!0),t.redraw()),!s[4]){t.redrawHint("drag",!0),t.redrawHint("eles",!0);var m=u&&u.grabbed();f(c),m&&(u.emit("freeon"),c.emit("free"),t.dragData.didDrag&&(u.emit("dragfreeon"),c.emit("dragfree")))}}s[4]=0,t.hoverData.down=null,t.hoverData.cxtStarted=!1,t.hoverData.draggingEles=!1,t.hoverData.selecting=!1,t.hoverData.isOverThresholdDrag=!1,t.dragData.didDrag=!1,t.hoverData.dragged=!1,t.hoverData.dragDelta=[],t.hoverData.mdownPos=null,t.hoverData.mdownGPos=null}}),!1);var _,k,T,M,A,S,E,C,P,L,I,D,R,z=function(e){if(!t.scrollingPage){var n=t.cy,r=n.zoom(),i=n.pan(),a=t.projectIntoViewport(e.clientX,e.clientY),o=[a[0]*r+i.x,a[1]*r+i.y];if(t.hoverData.draggingEles||t.hoverData.dragging||t.hoverData.cxtStarted||0!==t.selection[4])e.preventDefault();else if(n.panningEnabled()&&n.userPanningEnabled()&&n.zoomingEnabled()&&n.userZoomingEnabled()){var s;e.preventDefault(),t.data.wheelZooming=!0,clearTimeout(t.data.wheelTimeout),t.data.wheelTimeout=setTimeout((function(){t.data.wheelZooming=!1,t.redrawHint("eles",!0),t.redraw()}),150),s=null!=e.deltaY?e.deltaY/-250:null!=e.wheelDeltaY?e.wheelDeltaY/1e3:e.wheelDelta/1e3,s*=t.wheelSensitivity,1===e.deltaMode&&(s*=33);var l=n.zoom()*Math.pow(10,s);"gesturechange"===e.type&&(l=t.gestureStartZoom*e.scale),n.zoom({level:l,renderedPosition:{x:o[0],y:o[1]}}),n.emit("gesturechange"===e.type?"pinchzoom":"scrollzoom")}}};t.registerBinding(t.container,"wheel",z,!0),t.registerBinding(window,"scroll",(function(e){t.scrollingPage=!0,clearTimeout(t.scrollingPageTimeout),t.scrollingPageTimeout=setTimeout((function(){t.scrollingPage=!1}),250)}),!0),t.registerBinding(t.container,"gesturestart",(function(e){t.gestureStartZoom=t.cy.zoom(),t.hasTouchStarted||e.preventDefault()}),!0),t.registerBinding(t.container,"gesturechange",(function(e){t.hasTouchStarted||z(e)}),!0),t.registerBinding(t.container,"mouseout",(function(e){var n=t.projectIntoViewport(e.clientX,e.clientY);t.cy.emit({originalEvent:e,type:"mouseout",position:{x:n[0],y:n[1]}})}),!1),t.registerBinding(t.container,"mouseover",(function(e){var n=t.projectIntoViewport(e.clientX,e.clientY);t.cy.emit({originalEvent:e,type:"mouseover",position:{x:n[0],y:n[1]}})}),!1);var N,j,F,B,U,H,V,q=function(t,e,n,r){return Math.sqrt((n-t)*(n-t)+(r-e)*(r-e))},G=function(t,e,n,r){return(n-t)*(n-t)+(r-e)*(r-e)};if(t.registerBinding(t.container,"touchstart",N=function(e){if(t.hasTouchStarted=!0,w(e)){d(),t.touchData.capture=!0,t.data.bgActivePosistion=void 0;var r=t.cy,i=t.touchData.now,a=t.touchData.earlier;if(e.touches[0]){var s=t.projectIntoViewport(e.touches[0].clientX,e.touches[0].clientY);i[0]=s[0],i[1]=s[1]}if(e.touches[1]){s=t.projectIntoViewport(e.touches[1].clientX,e.touches[1].clientY);i[2]=s[0],i[3]=s[1]}if(e.touches[2]){s=t.projectIntoViewport(e.touches[2].clientX,e.touches[2].clientY);i[4]=s[0],i[5]=s[1]}if(e.touches[1]){t.touchData.singleTouchMoved=!0,f(t.dragData.touchDragEles);var c=t.findContainerClientCoords();P=c[0],L=c[1],I=c[2],D=c[3],_=e.touches[0].clientX-P,k=e.touches[0].clientY-L,T=e.touches[1].clientX-P,M=e.touches[1].clientY-L,R=0<=_&&_<=I&&0<=T&&T<=I&&0<=k&&k<=D&&0<=M&&M<=D;var h=r.pan(),p=r.zoom();A=q(_,k,T,M),S=G(_,k,T,M),C=[((E=[(_+T)/2,(k+M)/2])[0]-h.x)/p,(E[1]-h.y)/p];if(S<4e4&&!e.touches[2]){var g=t.findNearestElement(i[0],i[1],!0,!0),v=t.findNearestElement(i[2],i[3],!0,!0);return g&&g.isNode()?(g.activate().emit({originalEvent:e,type:"cxttapstart",position:{x:i[0],y:i[1]}}),t.touchData.start=g):v&&v.isNode()?(v.activate().emit({originalEvent:e,type:"cxttapstart",position:{x:i[0],y:i[1]}}),t.touchData.start=v):r.emit({originalEvent:e,type:"cxttapstart",position:{x:i[0],y:i[1]}}),t.touchData.start&&(t.touchData.start._private.grabbed=!1),t.touchData.cxt=!0,t.touchData.cxtDragged=!1,t.data.bgActivePosistion=void 0,void t.redraw()}}if(e.touches[2])r.boxSelectionEnabled()&&e.preventDefault();else if(e.touches[1]);else if(e.touches[0]){var m=t.findNearestElements(i[0],i[1],!0,!0),y=m[0];if(null!=y&&(y.activate(),t.touchData.start=y,t.touchData.starts=m,t.nodeIsGrabbable(y))){var b=t.dragData.touchDragEles=r.collection(),x=null;t.redrawHint("eles",!0),t.redrawHint("drag",!0),y.selected()?(x=r.$((function(e){return e.selected()&&t.nodeIsGrabbable(e)})),l(x,{addToList:b})):u(y,{addToList:b}),o(y);var O=function(t){return{originalEvent:e,type:t,position:{x:i[0],y:i[1]}}};y.emit(O("grabon")),x?x.forEach((function(t){t.emit(O("grab"))})):y.emit(O("grab"))}n(y,["touchstart","tapstart","vmousedown"],e,{x:i[0],y:i[1]}),null==y&&(t.data.bgActivePosistion={x:s[0],y:s[1]},t.redrawHint("select",!0),t.redraw()),t.touchData.singleTouchMoved=!1,t.touchData.singleTouchStartTime=+new Date,clearTimeout(t.touchData.tapholdTimeout),t.touchData.tapholdTimeout=setTimeout((function(){!1!==t.touchData.singleTouchMoved||t.pinching||t.touchData.selecting||n(t.touchData.start,["taphold"],e,{x:i[0],y:i[1]})}),t.tapholdDuration)}if(e.touches.length>=1){for(var z=t.touchData.startPosition=[],N=0;N=t.touchTapThreshold2}if(r&&t.touchData.cxt){e.preventDefault();var x=e.touches[0].clientX-P,E=e.touches[0].clientY-L,I=e.touches[1].clientX-P,D=e.touches[1].clientY-L,z=G(x,E,I,D);if(z/S>=2.25||z>=22500){t.touchData.cxt=!1,t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);var N={originalEvent:e,type:"cxttapend",position:{x:s[0],y:s[1]}};t.touchData.start?(t.touchData.start.unactivate().emit(N),t.touchData.start=null):o.emit(N)}}if(r&&t.touchData.cxt){N={originalEvent:e,type:"cxtdrag",position:{x:s[0],y:s[1]}};t.data.bgActivePosistion=void 0,t.redrawHint("select",!0),t.touchData.start?t.touchData.start.emit(N):o.emit(N),t.touchData.start&&(t.touchData.start._private.grabbed=!1),t.touchData.cxtDragged=!0;var j=t.findNearestElement(s[0],s[1],!0,!0);t.touchData.cxtOver&&j===t.touchData.cxtOver||(t.touchData.cxtOver&&t.touchData.cxtOver.emit({originalEvent:e,type:"cxtdragout",position:{x:s[0],y:s[1]}}),t.touchData.cxtOver=j,j&&j.emit({originalEvent:e,type:"cxtdragover",position:{x:s[0],y:s[1]}}))}else if(r&&e.touches[2]&&o.boxSelectionEnabled())e.preventDefault(),t.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,t.touchData.selecting||o.emit({originalEvent:e,type:"boxstart",position:{x:s[0],y:s[1]}}),t.touchData.selecting=!0,t.touchData.didSelect=!0,a[4]=1,a&&0!==a.length&&void 0!==a[0]?(a[2]=(s[0]+s[2]+s[4])/3,a[3]=(s[1]+s[3]+s[5])/3):(a[0]=(s[0]+s[2]+s[4])/3,a[1]=(s[1]+s[3]+s[5])/3,a[2]=(s[0]+s[2]+s[4])/3+1,a[3]=(s[1]+s[3]+s[5])/3+1),t.redrawHint("select",!0),t.redraw();else if(r&&e.touches[1]&&!t.touchData.didSelect&&o.zoomingEnabled()&&o.panningEnabled()&&o.userZoomingEnabled()&&o.userPanningEnabled()){if(e.preventDefault(),t.data.bgActivePosistion=void 0,t.redrawHint("select",!0),tt=t.dragData.touchDragEles){t.redrawHint("drag",!0);for(var F=0;F0&&!t.hoverData.draggingEles&&!t.swipePanning&&null!=t.data.bgActivePosistion&&(t.data.bgActivePosistion=void 0,t.redrawHint("select",!0),t.redraw())}},!1),t.registerBinding(window,"touchcancel",F=function(e){var n=t.touchData.start;t.touchData.capture=!1,n&&n.unactivate()}),t.registerBinding(window,"touchend",B=function(r){var i=t.touchData.start;if(t.touchData.capture){0===r.touches.length&&(t.touchData.capture=!1),r.preventDefault();var a=t.selection;t.swipePanning=!1,t.hoverData.draggingEles=!1;var o,s=t.cy,l=s.zoom(),c=t.touchData.now,u=t.touchData.earlier;if(r.touches[0]){var h=t.projectIntoViewport(r.touches[0].clientX,r.touches[0].clientY);c[0]=h[0],c[1]=h[1]}if(r.touches[1]){h=t.projectIntoViewport(r.touches[1].clientX,r.touches[1].clientY);c[2]=h[0],c[3]=h[1]}if(r.touches[2]){h=t.projectIntoViewport(r.touches[2].clientX,r.touches[2].clientY);c[4]=h[0],c[5]=h[1]}if(i&&i.unactivate(),t.touchData.cxt){if(o={originalEvent:r,type:"cxttapend",position:{x:c[0],y:c[1]}},i?i.emit(o):s.emit(o),!t.touchData.cxtDragged){var d={originalEvent:r,type:"cxttap",position:{x:c[0],y:c[1]}};i?i.emit(d):s.emit(d)}return t.touchData.start&&(t.touchData.start._private.grabbed=!1),t.touchData.cxt=!1,t.touchData.start=null,void t.redraw()}if(!r.touches[2]&&s.boxSelectionEnabled()&&t.touchData.selecting){t.touchData.selecting=!1;var p=s.collection(t.getAllInBox(a[0],a[1],a[2],a[3]));a[0]=void 0,a[1]=void 0,a[2]=void 0,a[3]=void 0,a[4]=0,t.redrawHint("select",!0),s.emit({type:"boxend",originalEvent:r,position:{x:c[0],y:c[1]}});p.emit("box").stdFilter((function(t){return t.selectable()&&!t.selected()})).select().emit("boxselect"),p.nonempty()&&t.redrawHint("eles",!0),t.redraw()}if(null!=i&&i.unactivate(),r.touches[2])t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);else if(r.touches[1]);else if(r.touches[0]);else if(!r.touches[0]){t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);var g=t.dragData.touchDragEles;if(null!=i){var v=i._private.grabbed;f(g),t.redrawHint("drag",!0),t.redrawHint("eles",!0),v&&(i.emit("freeon"),g.emit("free"),t.dragData.didDrag&&(i.emit("dragfreeon"),g.emit("dragfree"))),n(i,["touchend","tapend","vmouseup","tapdragout"],r,{x:c[0],y:c[1]}),i.unactivate(),t.touchData.start=null}else{var m=t.findNearestElement(c[0],c[1],!0,!0);n(m,["touchend","tapend","vmouseup","tapdragout"],r,{x:c[0],y:c[1]})}var y=t.touchData.startPosition[0]-c[0],b=y*y,x=t.touchData.startPosition[1]-c[1],w=(b+x*x)*l*l;t.touchData.singleTouchMoved||(i||s.$(":selected").unselect(["tapunselect"]),n(i,["tap","vclick"],r,{x:c[0],y:c[1]}),U=!1,r.timeStamp-V<=s.multiClickDebounceTime()?(H&&clearTimeout(H),U=!0,V=null,n(i,["dbltap","vdblclick"],r,{x:c[0],y:c[1]})):(H=setTimeout((function(){U||n(i,["onetap","voneclick"],r,{x:c[0],y:c[1]})}),s.multiClickDebounceTime()),V=r.timeStamp)),null!=i&&!t.dragData.didDrag&&i._private.selectable&&w2){for(var E=[c[0],c[1]],C=Math.pow(E[0]-t,2)+Math.pow(E[1]-e,2),P=1;P0)return g[0]}return null},h=Object.keys(u),d=0;d0?l:Te(i,a,t,e,n,r,o)},checkPoint:function(t,e,n,r,i,a,o){var s=He(r,i),l=2*s;if(Pe(t,e,this.points,a,o,r,i-l,[0,-1],n))return!0;if(Pe(t,e,this.points,a,o,r-l,i,[0,-1],n))return!0;var c=r/2+2*n,u=i/2+2*n;return!!Ce(t,e,[a-c,o-u,a-c,o,a+c,o,a+c,o-u])||(!!Ie(t,e,l,l,a+r/2-s,o+i/2-s,n)||!!Ie(t,e,l,l,a-r/2+s,o+i/2-s,n))}}},ms.registerNodeShapes=function(){var t=this.nodeShapes={},e=this;this.generateEllipse(),this.generatePolygon("triangle",Fe(3,0)),this.generateRoundPolygon("round-triangle",Fe(3,0)),this.generatePolygon("rectangle",Fe(4,0)),t.square=t.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();var n=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",n),this.generateRoundPolygon("round-diamond",n),this.generatePolygon("pentagon",Fe(5,0)),this.generateRoundPolygon("round-pentagon",Fe(5,0)),this.generatePolygon("hexagon",Fe(6,0)),this.generateRoundPolygon("round-hexagon",Fe(6,0)),this.generatePolygon("heptagon",Fe(7,0)),this.generateRoundPolygon("round-heptagon",Fe(7,0)),this.generatePolygon("octagon",Fe(8,0)),this.generateRoundPolygon("round-octagon",Fe(8,0));var r=new Array(20),i=Ue(5,0),a=Ue(5,Math.PI/5),o=.5*(3-Math.sqrt(5));o*=1.57;for(var s=0;s=t.deqFastCost*g)break}else if(i){if(d>=t.deqCost*l||d>=t.deqAvgCost*s)break}else if(p>=t.deqNoDrawCost*_s)break;var v=t.deq(e,f,u);if(!(v.length>0))break;for(var m=0;m0&&(t.onDeqd(e,c),!i&&t.shouldRedraw(e,c,f,u)&&r())}),i(e))}}},Ts=function(){function t(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Tt;g(this,t),this.idsByKey=new Ft,this.keyForId=new Ft,this.cachesByLvl=new Ft,this.lvls=[],this.getKey=e,this.doesEleInvalidateKey=n}return m(t,[{key:"getIdsFor",value:function(t){null==t&&St("Can not get id list for null key");var e=this.idsByKey,n=this.idsByKey.get(t);return n||(n=new Ut,e.set(t,n)),n}},{key:"addIdForKey",value:function(t,e){null!=t&&this.getIdsFor(t).add(e)}},{key:"deleteIdForKey",value:function(t,e){null!=t&&this.getIdsFor(t).delete(e)}},{key:"getNumberOfIdsForKey",value:function(t){return null==t?0:this.getIdsFor(t).size}},{key:"updateKeyMappingFor",value:function(t){var e=t.id(),n=this.keyForId.get(e),r=this.getKey(t);this.deleteIdForKey(n,e),this.addIdForKey(r,e),this.keyForId.set(e,r)}},{key:"deleteKeyMappingFor",value:function(t){var e=t.id(),n=this.keyForId.get(e);this.deleteIdForKey(n,e),this.keyForId.delete(e)}},{key:"keyHasChangedFor",value:function(t){var e=t.id();return this.keyForId.get(e)!==this.getKey(t)}},{key:"isInvalid",value:function(t){return this.keyHasChangedFor(t)||this.doesEleInvalidateKey(t)}},{key:"getCachesAt",value:function(t){var e=this.cachesByLvl,n=this.lvls,r=e.get(t);return r||(r=new Ft,e.set(t,r),n.push(t)),r}},{key:"getCache",value:function(t,e){return this.getCachesAt(e).get(t)}},{key:"get",value:function(t,e){var n=this.getKey(t),r=this.getCache(n,e);return null!=r&&this.updateKeyMappingFor(t),r}},{key:"getForCachedKey",value:function(t,e){var n=this.keyForId.get(t.id());return this.getCache(n,e)}},{key:"hasCache",value:function(t,e){return this.getCachesAt(e).has(t)}},{key:"has",value:function(t,e){var n=this.getKey(t);return this.hasCache(n,e)}},{key:"setCache",value:function(t,e,n){n.key=t,this.getCachesAt(e).set(t,n)}},{key:"set",value:function(t,e,n){var r=this.getKey(t);this.setCache(r,e,n),this.updateKeyMappingFor(t)}},{key:"deleteCache",value:function(t,e){this.getCachesAt(e).delete(t)}},{key:"delete",value:function(t,e){var n=this.getKey(t);this.deleteCache(n,e)}},{key:"invalidateKey",value:function(t){var e=this;this.lvls.forEach((function(n){return e.deleteCache(t,n)}))}},{key:"invalidate",value:function(t){var e=t.id(),n=this.keyForId.get(e);this.deleteKeyMappingFor(t);var r=this.doesEleInvalidateKey(t);return r&&this.invalidateKey(n),r||0===this.getNumberOfIdsForKey(n)}}]),t}(),Ms={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},As=Dt({getKey:null,doesEleInvalidateKey:Tt,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:kt,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),Ss=function(t,e){var n=this;n.renderer=t,n.onDequeues=[];var r=As(e);Q(n,r),n.lookup=new Ts(r.getKey,r.doesEleInvalidateKey),n.setupDequeueing()},Es=Ss.prototype;Es.reasons=Ms,Es.getTextureQueue=function(t){var e=this;return e.eleImgCaches=e.eleImgCaches||{},e.eleImgCaches[t]=e.eleImgCaches[t]||[]},Es.getRetiredTextureQueue=function(t){var e=this.eleImgCaches.retired=this.eleImgCaches.retired||{};return e[t]=e[t]||[]},Es.getElementQueue=function(){return this.eleCacheQueue=this.eleCacheQueue||new u.default((function(t,e){return e.reqs-t.reqs}))},Es.getElementKeyToQueue=function(){return this.eleKeyToCacheQueue=this.eleKeyToCacheQueue||{}},Es.getElement=function(t,e,n,r,i){var a=this,o=this.renderer,s=o.cy.zoom(),l=this.lookup;if(!e||0===e.w||0===e.h||isNaN(e.w)||isNaN(e.h)||!t.visible()||t.removed())return null;if(!a.allowEdgeTxrCaching&&t.isEdge()||!a.allowParentTxrCaching&&t.isParent())return null;if(null==r&&(r=Math.ceil(le(s*n))),r<-4)r=-4;else if(s>=7.99||r>3)return null;var c=Math.pow(2,r),u=e.h*c,f=e.w*c,h=o.eleTextBiggerThanMin(t,c);if(!this.isVisible(t,h))return null;var d,p=l.get(t,r);if(p&&p.invalidated&&(p.invalidated=!1,p.texture.invalidatedWidth-=p.width),p)return p;if(d=u<=25?25:u<=50?50:50*Math.ceil(u/50),u>1024||f>1024)return null;var g=a.getTextureQueue(d),v=g[g.length-2],m=function(){return a.recycleTexture(d,f)||a.addTexture(d,f)};v||(v=g[g.length-1]),v||(v=m()),v.width-v.usedWidthr;S--)M=a.getElement(t,e,n,S,Ms.downscale);A()}else{var E;if(!x&&!w&&!_)for(var C=r-1;C>=-4;C--){var P=l.get(t,C);if(P){E=P;break}}if(b(E))return a.queueElement(t,r),E;v.context.translate(v.usedWidth,0),v.context.scale(c,c),this.drawElement(v.context,t,e,h,!1),v.context.scale(1/c,1/c),v.context.translate(-v.usedWidth,0)}return p={x:v.usedWidth,texture:v,level:r,scale:c,width:f,height:u,scaledLabelShown:h},v.usedWidth+=Math.ceil(f+8),v.eleCaches.push(p),l.set(t,r,p),a.checkTextureFullness(v),p},Es.invalidateElements=function(t){for(var e=0;e=.2*t.width&&this.retireTexture(t)},Es.checkTextureFullness=function(t){var e=this.getTextureQueue(t.height);t.usedWidth/t.width>.8&&t.fullnessChecks>=10?Rt(e,t):t.fullnessChecks++},Es.retireTexture=function(t){var e=t.height,n=this.getTextureQueue(e),r=this.lookup;Rt(n,t),t.retired=!0;for(var i=t.eleCaches,a=0;a=e)return a.retired=!1,a.usedWidth=0,a.invalidatedWidth=0,a.fullnessChecks=0,zt(a.eleCaches),a.context.setTransform(1,0,0,1,0,0),a.context.clearRect(0,0,a.width,a.height),Rt(r,a),n.push(a),a}},Es.queueElement=function(t,e){var n=this.getElementQueue(),r=this.getElementKeyToQueue(),i=this.getKey(t),a=r[i];if(a)a.level=Math.max(a.level,e),a.eles.merge(t),a.reqs++,n.updateItem(a);else{var o={eles:t.spawn().merge(t),level:e,reqs:1,key:i};n.push(o),r[i]=o}},Es.dequeue=function(t){for(var e=this,n=e.getElementQueue(),r=e.getElementKeyToQueue(),i=[],a=e.lookup,o=0;o<1&&n.size()>0;o++){var s=n.pop(),l=s.key,c=s.eles[0],u=a.hasCache(c,s.level);if(r[l]=null,!u){i.push(s);var f=e.getBoundingBox(c);e.getElement(c,f,t,s.level,Ms.dequeue)}}return i},Es.removeFromQueue=function(t){var e=this.getElementQueue(),n=this.getElementKeyToQueue(),r=this.getKey(t),i=n[r];null!=i&&(1===i.eles.length?(i.reqs=_t,e.updateItem(i),e.pop(),n[r]=null):i.eles.unmerge(t))},Es.onDequeue=function(t){this.onDequeues.push(t)},Es.offDequeue=function(t){Rt(this.onDequeues,t)},Es.setupDequeueing=ks({deqRedrawThreshold:100,deqCost:.15,deqAvgCost:.1,deqNoDrawCost:.9,deqFastCost:.9,deq:function(t,e,n){return t.dequeue(e,n)},onDeqd:function(t,e){for(var n=0;n=3.99||n>2)return null;r.validateLayersElesOrdering(n,t);var o,s,l=r.layersByLevel,c=Math.pow(2,n),u=l[n]=l[n]||[];if(r.levelIsComplete(n,t))return u;!function(){var e=function(e){if(r.validateLayersElesOrdering(e,t),r.levelIsComplete(e,t))return s=l[e],!0},i=function(t){if(!s)for(var r=n+t;-4<=r&&r<=2&&!e(r);r+=t);};i(1),i(-1);for(var a=u.length-1;a>=0;a--){var o=u[a];o.invalid&&Rt(u,o)}}();var f=function(e){var i=(e=e||{}).after;if(function(){if(!o){o=ve();for(var e=0;e16e6)return null;var a=r.makeLayer(o,n);if(null!=i){var s=u.indexOf(i)+1;u.splice(s,0,a)}else(void 0===e.insert||e.insert)&&u.unshift(a);return a};if(r.skipping&&!a)return null;for(var h=null,d=t.length/1,p=!a,g=0;g=d||!ke(h.bb,v.boundingBox()))&&!(h=f({insert:!0,after:h})))return null;s||p?r.queueLayer(h,v):r.drawEleInLayer(h,v,n,e),h.eles.push(v),y[n]=h}}return s||(p?null:u)},Ps.getEleLevelForLayerLevel=function(t,e){return t},Ps.drawEleInLayer=function(t,e,n,r){var i=this.renderer,a=t.context,o=e.boundingBox();0!==o.w&&0!==o.h&&e.visible()&&(n=this.getEleLevelForLayerLevel(n,r),i.setImgSmoothing(a,!1),i.drawCachedElement(a,e,null,null,n,true),i.setImgSmoothing(a,!0))},Ps.levelIsComplete=function(t,e){var n=this.layersByLevel[t];if(!n||0===n.length)return!1;for(var r=0,i=0;i0)return!1;if(a.invalid)return!1;r+=a.eles.length}return r===e.length},Ps.validateLayersElesOrdering=function(t,e){var n=this.layersByLevel[t];if(n)for(var r=0;r0){t=!0;break}}return t},Ps.invalidateElements=function(t){var e=this;0!==t.length&&(e.lastInvalidationTime=lt(),0!==t.length&&e.haveLayers()&&e.updateElementsInLayers(t,(function(t,n,r){e.invalidateLayer(t)})))},Ps.invalidateLayer=function(t){if(this.lastInvalidationTime=lt(),!t.invalid){var e=t.level,n=t.eles,r=this.layersByLevel[e];Rt(r,t),t.elesQueue=[],t.invalid=!0,t.replacement&&(t.replacement.invalid=!0);for(var i=0;i3&&void 0!==arguments[3])||arguments[3],i=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],a=!(arguments.length>5&&void 0!==arguments[5])||arguments[5],o=this,s=e._private.rscratch;if((!a||e.visible())&&!s.badLine&&null!=s.allpts&&!isNaN(s.allpts[0])){var l;n&&(l=n,t.translate(-l.x1,-l.y1));var c=a?e.pstyle("opacity").value:1,u=a?e.pstyle("line-opacity").value:1,f=e.pstyle("curve-style").value,h=e.pstyle("line-style").value,d=e.pstyle("width").pfValue,p=e.pstyle("line-cap").value,g=c*u,v=c*u,m=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:g;"straight-triangle"===f?(o.eleStrokeStyle(t,e,n),o.drawEdgeTrianglePath(e,t,s.allpts)):(t.lineWidth=d,t.lineCap=p,o.eleStrokeStyle(t,e,n),o.drawEdgePath(e,t,s.allpts,h),t.lineCap="butt")},y=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:v;o.drawArrowheads(t,e,n)};if(t.lineJoin="round","yes"===e.pstyle("ghost").value){var b=e.pstyle("ghost-offset-x").pfValue,x=e.pstyle("ghost-offset-y").pfValue,w=e.pstyle("ghost-opacity").value,_=g*w;t.translate(b,x),m(_),y(_),t.translate(-b,-x)}i&&o.drawEdgeUnderlay(t,e),m(),y(),i&&o.drawEdgeOverlay(t,e),o.drawElementText(t,e,null,r),n&&t.translate(l.x1,l.y1)}}},$s=function(t){if(!["overlay","underlay"].includes(t))throw new Error("Invalid state");return function(e,n){if(n.visible()){var r=n.pstyle("".concat(t,"-opacity")).value;if(0!==r){var i=this,a=i.usePaths(),o=n._private.rscratch,s=2*n.pstyle("".concat(t,"-padding")).pfValue,l=n.pstyle("".concat(t,"-color")).value;e.lineWidth=s,"self"!==o.edgeType||a?e.lineCap="round":e.lineCap="butt",i.colorStrokeStyle(e,l[0],l[1],l[2],r),i.drawEdgePath(n,e,o.allpts,"solid")}}}};Ys.drawEdgeOverlay=$s("overlay"),Ys.drawEdgeUnderlay=$s("underlay"),Ys.drawEdgePath=function(t,e,n,r){var i,a=t._private.rscratch,o=e,s=!1,l=this.usePaths(),c=t.pstyle("line-dash-pattern").pfValue,u=t.pstyle("line-dash-offset").pfValue;if(l){var f=n.join("$");a.pathCacheKey&&a.pathCacheKey===f?(i=e=a.pathCache,s=!0):(i=e=new Path2D,a.pathCacheKey=f,a.pathCache=i)}if(o.setLineDash)switch(r){case"dotted":o.setLineDash([1,1]);break;case"dashed":o.setLineDash(c),o.lineDashOffset=u;break;case"solid":o.setLineDash([])}if(!s&&!a.badLine)switch(e.beginPath&&e.beginPath(),e.moveTo(n[0],n[1]),a.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var h=2;h+35&&void 0!==arguments[5])||arguments[5],o=this;if(null==r){if(a&&!o.eleTextBiggerThanMin(e))return}else if(!1===r)return;if(e.isNode()){var s=e.pstyle("label");if(!s||!s.value)return;var l=o.getLabelJustification(e);t.textAlign=l,t.textBaseline="bottom"}else{var c=e.element()._private.rscratch.badLine,u=e.pstyle("label"),f=e.pstyle("source-label"),h=e.pstyle("target-label");if(c||(!u||!u.value)&&(!f||!f.value)&&(!h||!h.value))return;t.textAlign="center",t.textBaseline="bottom"}var d,p=!n;n&&(d=n,t.translate(-d.x1,-d.y1)),null==i?(o.drawText(t,e,null,p,a),e.isEdge()&&(o.drawText(t,e,"source",p,a),o.drawText(t,e,"target",p,a))):o.drawText(t,e,i,p,a),n&&t.translate(d.x1,d.y1)},Ks.getFontCache=function(t){var e;this.fontCaches=this.fontCaches||[];for(var n=0;n2&&void 0!==arguments[2])||arguments[2],r=e.pstyle("font-style").strValue,i=e.pstyle("font-size").pfValue+"px",a=e.pstyle("font-family").strValue,o=e.pstyle("font-weight").strValue,s=n?e.effectiveOpacity()*e.pstyle("text-opacity").value:1,l=e.pstyle("text-outline-opacity").value*s,c=e.pstyle("color").value,u=e.pstyle("text-outline-color").value;t.font=r+" "+o+" "+i+" "+a,t.lineJoin="round",this.colorFillStyle(t,c[0],c[1],c[2],s),this.colorStrokeStyle(t,u[0],u[1],u[2],l)},Ks.getTextAngle=function(t,e){var n=t._private.rscratch,r=e?e+"-":"",i=t.pstyle(r+"text-rotation"),a=Nt(n,"labelAngle",e);return"autorotate"===i.strValue?t.isEdge()?a:0:"none"===i.strValue?0:i.pfValue},Ks.drawText=function(t,e,n){var r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],i=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],a=e._private.rscratch,o=i?e.effectiveOpacity():1;if(!i||0!==o&&0!==e.pstyle("text-opacity").value){"main"===n&&(n=null);var s,l,c=Nt(a,"labelX",n),u=Nt(a,"labelY",n),f=this.getLabelText(e,n);if(null!=f&&""!==f&&!isNaN(c)&&!isNaN(u)){this.setupTextStyle(t,e,i);var h,d=n?n+"-":"",p=Nt(a,"labelWidth",n),g=Nt(a,"labelHeight",n),v=e.pstyle(d+"text-margin-x").pfValue,m=e.pstyle(d+"text-margin-y").pfValue,y=e.isEdge(),b=e.pstyle("text-halign").value,x=e.pstyle("text-valign").value;switch(y&&(b="center",x="center"),c+=v,u+=m,0!==(h=r?this.getTextAngle(e,n):0)&&(s=c,l=u,t.translate(s,l),t.rotate(h),c=0,u=0),x){case"top":break;case"center":u+=g/2;break;case"bottom":u+=g}var w=e.pstyle("text-background-opacity").value,_=e.pstyle("text-border-opacity").value,k=e.pstyle("text-border-width").pfValue,T=e.pstyle("text-background-padding").pfValue;if(w>0||k>0&&_>0){var M=c-T;switch(b){case"left":M-=p;break;case"center":M-=p/2}var A=u-g-T,S=p+2*T,E=g+2*T;if(w>0){var C=t.fillStyle,P=e.pstyle("text-background-color").value;t.fillStyle="rgba("+P[0]+","+P[1]+","+P[2]+","+w*o+")",0===e.pstyle("text-background-shape").strValue.indexOf("round")?function(t,e,n,r,i){var a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:5;t.beginPath(),t.moveTo(e+a,n),t.lineTo(e+r-a,n),t.quadraticCurveTo(e+r,n,e+r,n+a),t.lineTo(e+r,n+i-a),t.quadraticCurveTo(e+r,n+i,e+r-a,n+i),t.lineTo(e+a,n+i),t.quadraticCurveTo(e,n+i,e,n+i-a),t.lineTo(e,n+a),t.quadraticCurveTo(e,n,e+a,n),t.closePath(),t.fill()}(t,M,A,S,E,2):t.fillRect(M,A,S,E),t.fillStyle=C}if(k>0&&_>0){var L=t.strokeStyle,O=t.lineWidth,I=e.pstyle("text-border-color").value,D=e.pstyle("text-border-style").value;if(t.strokeStyle="rgba("+I[0]+","+I[1]+","+I[2]+","+_*o+")",t.lineWidth=k,t.setLineDash)switch(D){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash([4,2]);break;case"double":t.lineWidth=k/4,t.setLineDash([]);break;case"solid":t.setLineDash([])}if(t.strokeRect(M,A,S,E),"double"===D){var R=k/2;t.strokeRect(M+R,A+R,S-2*R,E-2*R)}t.setLineDash&&t.setLineDash([]),t.lineWidth=O,t.strokeStyle=L}}var z=2*e.pstyle("text-outline-width").pfValue;if(z>0&&(t.lineWidth=z),"wrap"===e.pstyle("text-wrap").value){var N=Nt(a,"labelWrapCachedLines",n),j=Nt(a,"labelLineHeight",n),F=p/2,B=this.getLabelJustification(e);switch("auto"===B||("left"===b?"left"===B?c+=-p:"center"===B&&(c+=-F):"center"===b?"left"===B?c+=-F:"right"===B&&(c+=F):"right"===b&&("center"===B?c+=F:"right"===B&&(c+=p))),x){case"top":case"center":case"bottom":u-=(N.length-1)*j}for(var U=0;U0&&t.strokeText(N[U],c,u),t.fillText(N[U],c,u),u+=j}else z>0&&t.strokeText(f,c,u),t.fillText(f,c,u);0!==h&&(t.rotate(-h),t.translate(-s,-l))}}};var Zs={drawNode:function(t,e,n){var r,i,a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],o=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],s=!(arguments.length>5&&void 0!==arguments[5])||arguments[5],l=this,c=e._private,u=c.rscratch,f=e.position();if(O(f.x)&&O(f.y)&&(!s||e.visible())){var h,d,p=s?e.effectiveOpacity():1,g=l.usePaths(),v=!1,m=e.padding();r=e.width()+2*m,i=e.height()+2*m,n&&(d=n,t.translate(-d.x1,-d.y1));for(var y=e.pstyle("background-image").value,b=new Array(y.length),x=new Array(y.length),w=0,_=0;_0&&void 0!==arguments[0]?arguments[0]:S;l.eleFillStyle(t,e,n)},I=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:P;l.colorStrokeStyle(t,E[0],E[1],E[2],e)},D=e.pstyle("shape").strValue,R=e.pstyle("shape-polygon-points").pfValue;if(g){t.translate(f.x,f.y);var z=l.nodePathCache=l.nodePathCache||[],N=mt("polygon"===D?D+","+R.join(","):D,""+i,""+r),j=z[N];null!=j?(h=j,v=!0,u.pathCache=h):(h=new Path2D,z[N]=u.pathCache=h)}var F=function(){if(!v){var n=f;g&&(n={x:0,y:0}),l.nodeShapes[l.getNodeShape(e)].draw(h||t,n.x,n.y,r,i)}g?t.fill(h):t.fill()},B=function(){for(var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:p,r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=c.backgrounding,a=0,o=0;o0&&void 0!==arguments[0]&&arguments[0],a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:p;l.hasPie(e)&&(l.drawPie(t,e,a),n&&(g||l.nodeShapes[l.getNodeShape(e)].draw(t,f.x,f.y,r,i)))},H=function(){var e=(M>0?M:-M)*(arguments.length>0&&void 0!==arguments[0]?arguments[0]:p),n=M>0?0:255;0!==M&&(l.colorFillStyle(t,n,n,n,e),g?t.fill(h):t.fill())},V=function(){if(A>0){if(t.lineWidth=A,t.lineCap="butt",t.setLineDash)switch(C){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash([4,2]);break;case"solid":case"double":t.setLineDash([])}if(g?t.stroke(h):t.stroke(),"double"===C){t.lineWidth=A/3;var e=t.globalCompositeOperation;t.globalCompositeOperation="destination-out",g?t.stroke(h):t.stroke(),t.globalCompositeOperation=e}t.setLineDash&&t.setLineDash([])}};if("yes"===e.pstyle("ghost").value){var q=e.pstyle("ghost-offset-x").pfValue,G=e.pstyle("ghost-offset-y").pfValue,W=e.pstyle("ghost-opacity").value,Y=W*p;t.translate(q,G),L(W*S),F(),B(Y,!0),I(W*P),V(),U(0!==M||0!==A),B(Y,!1),H(Y),t.translate(-q,-G)}g&&t.translate(-f.x,-f.y),o&&l.drawNodeUnderlay(t,e,f,r,i),g&&t.translate(f.x,f.y),L(),F(),B(p,!0),I(),V(),U(0!==M||0!==A),B(p,!1),H(),g&&t.translate(-f.x,-f.y),l.drawElementText(t,e,null,a),o&&l.drawNodeOverlay(t,e,f,r,i),n&&t.translate(d.x1,d.y1)}}},Js=function(t){if(!["overlay","underlay"].includes(t))throw new Error("Invalid state");return function(e,n,r,i,a){if(n.visible()){var o=n.pstyle("".concat(t,"-padding")).pfValue,s=n.pstyle("".concat(t,"-opacity")).value,l=n.pstyle("".concat(t,"-color")).value,c=n.pstyle("".concat(t,"-shape")).value;if(s>0){if(r=r||n.position(),null==i||null==a){var u=n.padding();i=n.width()+2*u,a=n.height()+2*u}this.colorFillStyle(e,l[0],l[1],l[2],s),this.nodeShapes[c].draw(e,r.x,r.y,i+2*o,a+2*o),e.fill()}}}};Zs.drawNodeOverlay=Js("overlay"),Zs.drawNodeUnderlay=Js("underlay"),Zs.hasPie=function(t){return(t=t[0])._private.hasPie},Zs.drawPie=function(t,e,n,r){e=e[0],r=r||e.position();var i=e.cy().style(),a=e.pstyle("pie-size"),o=r.x,s=r.y,l=e.width(),c=e.height(),u=Math.min(l,c)/2,f=0;this.usePaths()&&(o=0,s=0),"%"===a.units?u*=a.pfValue:void 0!==a.pfValue&&(u=a.pfValue/2);for(var h=1;h<=i.pieBackgroundN;h++){var d=e.pstyle("pie-"+h+"-background-size").value,p=e.pstyle("pie-"+h+"-background-color").value,g=e.pstyle("pie-"+h+"-background-opacity").value*n,v=d/100;v+f>1&&(v=1-f);var m=1.5*Math.PI+2*Math.PI*f,y=m+2*Math.PI*v;0===d||f>=1||f+v>1||(t.beginPath(),t.moveTo(o,s),t.arc(o,s,u,m,y),t.closePath(),this.colorFillStyle(t,p[0],p[1],p[2],g),t.fill(),f+=v)}};var Qs={};Qs.getPixelRatio=function(){var t=this.data.contexts[0];if(null!=this.forcedPixelRatio)return this.forcedPixelRatio;var e=t.backingStorePixelRatio||t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return(window.devicePixelRatio||1)/e},Qs.paintCache=function(t){for(var e,n=this.paintCaches=this.paintCaches||[],r=!0,i=0;io.minMbLowQualFrames&&(o.motionBlurPxRatio=o.mbPxRBlurry)),o.clearingMotionBlur&&(o.motionBlurPxRatio=1),o.textureDrawLastFrame&&!f&&(u[o.NODE]=!0,u[o.SELECT_BOX]=!0);var y=l.style(),b=l.zoom(),x=void 0!==i?i:b,w=l.pan(),_={x:w.x,y:w.y},k={zoom:b,pan:{x:w.x,y:w.y}},T=o.prevViewport;void 0===T||k.zoom!==T.zoom||k.pan.x!==T.pan.x||k.pan.y!==T.pan.y||g&&!p||(o.motionBlurPxRatio=1),a&&(_=a),x*=s,_.x*=s,_.y*=s;var M=o.getCachedZSortedEles();function A(t,e,n,r,i){var a=t.globalCompositeOperation;t.globalCompositeOperation="destination-out",o.colorFillStyle(t,255,255,255,o.motionBlurTransparency),t.fillRect(e,n,r,i),t.globalCompositeOperation=a}function S(t,r){var s,l,u,f;o.clearingMotionBlur||t!==c.bufferContexts[o.MOTIONBLUR_BUFFER_NODE]&&t!==c.bufferContexts[o.MOTIONBLUR_BUFFER_DRAG]?(s=_,l=x,u=o.canvasWidth,f=o.canvasHeight):(s={x:w.x*d,y:w.y*d},l=b*d,u=o.canvasWidth*d,f=o.canvasHeight*d),t.setTransform(1,0,0,1,0,0),"motionBlur"===r?A(t,0,0,u,f):e||void 0!==r&&!r||t.clearRect(0,0,u,f),n||(t.translate(s.x,s.y),t.scale(l,l)),a&&t.translate(a.x,a.y),i&&t.scale(i,i)}if(f||(o.textureDrawLastFrame=!1),f){if(o.textureDrawLastFrame=!0,!o.textureCache){o.textureCache={},o.textureCache.bb=l.mutableElements().boundingBox(),o.textureCache.texture=o.data.bufferCanvases[o.TEXTURE_BUFFER];var E=o.data.bufferContexts[o.TEXTURE_BUFFER];E.setTransform(1,0,0,1,0,0),E.clearRect(0,0,o.canvasWidth*o.textureMult,o.canvasHeight*o.textureMult),o.render({forcedContext:E,drawOnlyNodeLayer:!0,forcedPxRatio:s*o.textureMult}),(k=o.textureCache.viewport={zoom:l.zoom(),pan:l.pan(),width:o.canvasWidth,height:o.canvasHeight}).mpan={x:(0-k.pan.x)/k.zoom,y:(0-k.pan.y)/k.zoom}}u[o.DRAG]=!1,u[o.NODE]=!1;var C=c.contexts[o.NODE],P=o.textureCache.texture;k=o.textureCache.viewport;C.setTransform(1,0,0,1,0,0),h?A(C,0,0,k.width,k.height):C.clearRect(0,0,k.width,k.height);var L=y.core("outside-texture-bg-color").value,O=y.core("outside-texture-bg-opacity").value;o.colorFillStyle(C,L[0],L[1],L[2],O),C.fillRect(0,0,k.width,k.height);b=l.zoom();S(C,!1),C.clearRect(k.mpan.x,k.mpan.y,k.width/k.zoom/s,k.height/k.zoom/s),C.drawImage(P,k.mpan.x,k.mpan.y,k.width/k.zoom/s,k.height/k.zoom/s)}else o.textureOnViewport&&!e&&(o.textureCache=null);var I=l.extent(),D=o.pinching||o.hoverData.dragging||o.swipePanning||o.data.wheelZooming||o.hoverData.draggingEles||o.cy.animated(),R=o.hideEdgesOnViewport&&D,z=[];if(z[o.NODE]=!u[o.NODE]&&h&&!o.clearedForMotionBlur[o.NODE]||o.clearingMotionBlur,z[o.NODE]&&(o.clearedForMotionBlur[o.NODE]=!0),z[o.DRAG]=!u[o.DRAG]&&h&&!o.clearedForMotionBlur[o.DRAG]||o.clearingMotionBlur,z[o.DRAG]&&(o.clearedForMotionBlur[o.DRAG]=!0),u[o.NODE]||n||r||z[o.NODE]){var N=h&&!z[o.NODE]&&1!==d;S(C=e||(N?o.data.bufferContexts[o.MOTIONBLUR_BUFFER_NODE]:c.contexts[o.NODE]),h&&!N?"motionBlur":void 0),R?o.drawCachedNodes(C,M.nondrag,s,I):o.drawLayeredElements(C,M.nondrag,s,I),o.debug&&o.drawDebugPoints(C,M.nondrag),n||h||(u[o.NODE]=!1)}if(!r&&(u[o.DRAG]||n||z[o.DRAG])){N=h&&!z[o.DRAG]&&1!==d;S(C=e||(N?o.data.bufferContexts[o.MOTIONBLUR_BUFFER_DRAG]:c.contexts[o.DRAG]),h&&!N?"motionBlur":void 0),R?o.drawCachedNodes(C,M.drag,s,I):o.drawCachedElements(C,M.drag,s,I),o.debug&&o.drawDebugPoints(C,M.drag),n||h||(u[o.DRAG]=!1)}if(o.showFps||!r&&u[o.SELECT_BOX]&&!n){if(S(C=e||c.contexts[o.SELECT_BOX]),1==o.selection[4]&&(o.hoverData.selecting||o.touchData.selecting)){b=o.cy.zoom();var j=y.core("selection-box-border-width").value/b;C.lineWidth=j,C.fillStyle="rgba("+y.core("selection-box-color").value[0]+","+y.core("selection-box-color").value[1]+","+y.core("selection-box-color").value[2]+","+y.core("selection-box-opacity").value+")",C.fillRect(o.selection[0],o.selection[1],o.selection[2]-o.selection[0],o.selection[3]-o.selection[1]),j>0&&(C.strokeStyle="rgba("+y.core("selection-box-border-color").value[0]+","+y.core("selection-box-border-color").value[1]+","+y.core("selection-box-border-color").value[2]+","+y.core("selection-box-opacity").value+")",C.strokeRect(o.selection[0],o.selection[1],o.selection[2]-o.selection[0],o.selection[3]-o.selection[1]))}if(c.bgActivePosistion&&!o.hoverData.selecting){b=o.cy.zoom();var F=c.bgActivePosistion;C.fillStyle="rgba("+y.core("active-bg-color").value[0]+","+y.core("active-bg-color").value[1]+","+y.core("active-bg-color").value[2]+","+y.core("active-bg-opacity").value+")",C.beginPath(),C.arc(F.x,F.y,y.core("active-bg-size").pfValue/b,0,2*Math.PI),C.fill()}var B=o.lastRedrawTime;if(o.showFps&&B){B=Math.round(B);var U=Math.round(1e3/B);C.setTransform(1,0,0,1,0,0),C.fillStyle="rgba(255, 0, 0, 0.75)",C.strokeStyle="rgba(255, 0, 0, 0.75)",C.lineWidth=1,C.fillText("1 frame = "+B+" ms = "+U+" fps",0,20);C.strokeRect(0,30,250,20),C.fillRect(0,30,250*Math.min(U/60,1),20)}n||(u[o.SELECT_BOX]=!1)}if(h&&1!==d){var H=c.contexts[o.NODE],V=o.data.bufferCanvases[o.MOTIONBLUR_BUFFER_NODE],q=c.contexts[o.DRAG],G=o.data.bufferCanvases[o.MOTIONBLUR_BUFFER_DRAG],W=function(t,e,n){t.setTransform(1,0,0,1,0,0),n||!m?t.clearRect(0,0,o.canvasWidth,o.canvasHeight):A(t,0,0,o.canvasWidth,o.canvasHeight);var r=d;t.drawImage(e,0,0,o.canvasWidth*r,o.canvasHeight*r,0,0,o.canvasWidth,o.canvasHeight)};(u[o.NODE]||z[o.NODE])&&(W(H,V,z[o.NODE]),u[o.NODE]=!1),(u[o.DRAG]||z[o.DRAG])&&(W(q,G,z[o.DRAG]),u[o.DRAG]=!1)}o.prevViewport=k,o.clearingMotionBlur&&(o.clearingMotionBlur=!1,o.motionBlurCleared=!0,o.motionBlur=!0),h&&(o.motionBlurTimeout=setTimeout((function(){o.motionBlurTimeout=null,o.clearedForMotionBlur[o.NODE]=!1,o.clearedForMotionBlur[o.DRAG]=!1,o.motionBlur=!1,o.clearingMotionBlur=!f,o.mbFrames=0,u[o.NODE]=!0,u[o.DRAG]=!0,o.redraw()}),100)),e||l.emit("render")};for(var tl={drawPolygonPath:function(t,e,n,r,i,a){var o=r/2,s=i/2;t.beginPath&&t.beginPath(),t.moveTo(e+o*a[0],n+s*a[1]);for(var l=1;l0&&a>0){h.clearRect(0,0,i,a),h.globalCompositeOperation="source-over";var d=this.getCachedZSortedEles();if(t.full)h.translate(-n.x1*l,-n.y1*l),h.scale(l,l),this.drawElements(h,d),h.scale(1/l,1/l),h.translate(n.x1*l,n.y1*l);else{var p=e.pan(),g={x:p.x*l,y:p.y*l};l*=e.zoom(),h.translate(g.x,g.y),h.scale(l,l),this.drawElements(h,d),h.scale(1/l,1/l),h.translate(-g.x,-g.y)}t.bg&&(h.globalCompositeOperation="destination-over",h.fillStyle=t.bg,h.rect(0,0,i,a),h.fill())}return f},sl.png=function(t){return cl(t,this.bufferCanvasImage(t),"image/png")},sl.jpg=function(t){return cl(t,this.bufferCanvasImage(t),"image/jpeg")};var ul={nodeShapeImpl:function(t,e,n,r,i,a,o){switch(t){case"ellipse":return this.drawEllipsePath(e,n,r,i,a);case"polygon":return this.drawPolygonPath(e,n,r,i,a,o);case"round-polygon":return this.drawRoundPolygonPath(e,n,r,i,a,o);case"roundrectangle":case"round-rectangle":return this.drawRoundRectanglePath(e,n,r,i,a);case"cutrectangle":case"cut-rectangle":return this.drawCutRectanglePath(e,n,r,i,a);case"bottomroundrectangle":case"bottom-round-rectangle":return this.drawBottomRoundRectanglePath(e,n,r,i,a);case"barrel":return this.drawBarrelPath(e,n,r,i,a)}}},fl=dl,hl=dl.prototype;function dl(t){var e=this;e.data={canvases:new Array(hl.CANVAS_LAYERS),contexts:new Array(hl.CANVAS_LAYERS),canvasNeedsRedraw:new Array(hl.CANVAS_LAYERS),bufferCanvases:new Array(hl.BUFFER_COUNT),bufferContexts:new Array(hl.CANVAS_LAYERS)};var n="-webkit-tap-highlight-color",r="rgba(0,0,0,0)";e.data.canvasContainer=document.createElement("div");var i=e.data.canvasContainer.style;e.data.canvasContainer.style[n]=r,i.position="relative",i.zIndex="0",i.overflow="hidden";var a=t.cy.container();a.appendChild(e.data.canvasContainer),a.style[n]=r;var o={"-webkit-user-select":"none","-moz-user-select":"-moz-none","user-select":"none","-webkit-tap-highlight-color":"rgba(0,0,0,0)","outline-style":"none"};U()&&(o["-ms-touch-action"]="none",o["touch-action"]="none");for(var s=0;s0&&void 0!==arguments[0]?arguments[0]:{},r=n.defaultLayoutOptions,a=void 0===r?{}:r,s=n.algorithms,l=void 0===s?["layered","stress","mrtree","radial","force","disco","sporeOverlap","sporeCompaction","rectpacking"]:s,c=n.workerFactory,u=n.workerUrl;if(i(this,t),this.defaultLayoutOptions=a,this.initialized=!1,"undefined"===typeof u&&"undefined"===typeof c)throw new Error("Cannot construct an ELK without both 'workerUrl' and 'workerFactory'.");var f=c;"undefined"!==typeof u&&"undefined"===typeof c&&(f=function(t){return new Worker(t)});var h=f(u);if("function"!==typeof h.postMessage)throw new TypeError("Created worker does not provide the required 'postMessage' function.");this.worker=new o(h),this.worker.postMessage({cmd:"register",algorithms:l}).then((function(t){return e.initialized=!0})).catch(console.err)}return r(t,[{key:"layout",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e.layoutOptions,r=void 0===n?this.defaultLayoutOptions:n,i=e.logging,a=void 0!==i&&i,o=e.measureExecutionTime,s=void 0!==o&&o;return t?this.worker.postMessage({cmd:"layout",graph:t,layoutOptions:r,options:{logging:a,measureExecutionTime:s}}):Promise.reject(new Error("Missing mandatory parameter 'graph'."))}},{key:"knownLayoutAlgorithms",value:function(){return this.worker.postMessage({cmd:"algorithms"})}},{key:"knownLayoutOptions",value:function(){return this.worker.postMessage({cmd:"options"})}},{key:"knownLayoutCategories",value:function(){return this.worker.postMessage({cmd:"categories"})}},{key:"terminateWorker",value:function(){this.worker.terminate()}}]),t}();n.default=a;var o=function(){function t(e){var n=this;if(i(this,t),void 0===e)throw new Error("Missing mandatory parameter 'worker'.");this.resolvers={},this.worker=e,this.worker.onmessage=function(t){setTimeout((function(){n.receive(n,t)}),0)}}return r(t,[{key:"postMessage",value:function(t){var e=this.id||0;this.id=e+1,t.id=e;var n=this;return new Promise((function(r,i){n.resolvers[e]=function(t,e){t?(n.convertGwtStyleError(t),i(t)):r(e)},n.worker.postMessage(t)}))}},{key:"receive",value:function(t,e){var n=e.data,r=t.resolvers[n.id];r&&(delete t.resolvers[n.id],n.error?r(n.error):r(null,n.data))}},{key:"terminate",value:function(){this.worker.terminate&&this.worker.terminate()}},{key:"convertGwtStyleError",value:function(t){if(t){var e=t.__java$exception;e&&(e.cause&&e.cause.backingJsObject&&(t.cause=e.cause.backingJsObject,this.convertGwtStyleError(t.cause)),delete t.__java$exception)}}}]),t}()},{}],2:[function(t,e,n){"use strict";var r=t("./elk-api.js").default;Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports=r,r.default=r},{"./elk-api.js":1}]},{},[2])(2)},3139:function(t,e,n){"use strict";var r;function i(){}function a(){}function o(){}function s(){}function l(){}function c(){}function u(){}function f(){}function h(){}function d(){}function p(){}function g(){}function v(){}function m(){}function y(){}function b(){}function x(){}function w(){}function _(){}function k(){}function T(){}function M(){}function A(){}function S(){}function E(){}function C(){}function P(){}function L(){}function O(){}function I(){}function D(){}function R(){}function z(){}function N(){}function j(){}function F(){}function B(){}function U(){}function H(){}function V(){}function q(){}function G(){}function W(){}function Y(){}function $(){}function X(){}function K(){}function Z(){}function J(){}function Q(){}function tt(){}function et(){}function nt(){}function rt(){}function it(){}function at(){}function ot(){}function st(){}function lt(){}function ct(){}function ut(){}function ft(){}function ht(){}function dt(){}function pt(){}function gt(){}function vt(){}function mt(){}function yt(){}function bt(){}function xt(){}function wt(){}function _t(){}function kt(){}function Tt(){}function Mt(){}function At(){}function St(){}function Et(){}function Ct(){}function Pt(){}function Lt(){}function Ot(){}function It(){}function Dt(){}function Rt(){}function zt(){}function Nt(){}function jt(){}function Ft(){}function Bt(){}function Ut(){}function Ht(){}function Vt(){}function qt(){}function Gt(){}function Wt(){}function Yt(){}function $t(){}function Xt(){}function Kt(){}function Zt(){}function Jt(){}function Qt(){}function te(){}function ee(){}function ne(){}function re(){}function ie(){}function ae(){}function oe(){}function se(){}function le(){}function ce(){}function ue(){}function fe(){}function he(){}function de(){}function pe(){}function ge(){}function ve(){}function me(){}function ye(){}function be(){}function xe(){}function we(){}function _e(){}function ke(){}function Te(){}function Me(){}function Ae(){}function Se(){}function Ee(){}function Ce(){}function Pe(){}function Le(){}function Oe(){}function Ie(){}function De(){}function Re(){}function ze(){}function Ne(){}function je(){}function Fe(){}function Be(){}function Ue(){}function He(){}function Ve(){}function qe(){}function Ge(){}function We(){}function Ye(){}function $e(){}function Xe(){}function Ke(){}function Ze(){}function Je(){}function Qe(){}function tn(){}function en(){}function nn(){}function rn(){}function an(){}function on(){}function sn(){}function ln(){}function cn(){}function un(){}function fn(){}function hn(){}function dn(){}function pn(){}function gn(){}function vn(){}function mn(){}function yn(){}function bn(){}function xn(){}function wn(){}function _n(){}function kn(){}function Tn(){}function Mn(){}function An(){}function Sn(){}function En(){}function Cn(){}function Pn(){}function Ln(){}function On(){}function In(){}function Dn(){}function Rn(){}function zn(){}function Nn(){}function jn(){}function Fn(){}function Bn(){}function Un(){}function Hn(){}function Vn(){}function qn(){}function Gn(){}function Wn(){}function Yn(){}function $n(){}function Xn(){}function Kn(){}function Zn(){}function Jn(){}function Qn(){}function tr(){}function er(){}function nr(){}function rr(){}function ir(){}function ar(){}function or(){}function sr(){}function lr(){}function cr(){}function ur(){}function fr(){}function hr(){}function dr(){}function pr(){}function gr(){}function vr(){}function mr(){}function yr(){}function br(){}function xr(){}function wr(){}function _r(){}function kr(){}function Tr(){}function Mr(){}function Ar(){}function Sr(){}function Er(){}function Cr(){}function Pr(){}function Lr(){}function Or(){}function Ir(){}function Dr(){}function Rr(){}function zr(){}function Nr(){}function jr(){}function Fr(){}function Br(){}function Ur(){}function Hr(){}function Vr(){}function qr(){}function Gr(){}function Wr(){}function Yr(){}function $r(){}function Xr(){}function Kr(){}function Zr(){}function Jr(){}function Qr(){}function ti(){}function ei(){}function ni(){}function ri(){}function ii(){}function ai(){}function oi(){}function si(){}function li(){}function ci(){}function ui(){}function fi(){}function hi(){}function di(){}function pi(){}function gi(){}function vi(){}function mi(){}function yi(){}function bi(){}function xi(){}function wi(){}function _i(){}function ki(){}function Ti(){}function Mi(){}function Ai(){}function Si(){}function Ei(){}function Ci(){}function Pi(){}function Li(){}function Oi(){}function Ii(){}function Di(){}function Ri(){}function zi(){}function Ni(){}function ji(){}function Fi(){}function Bi(){}function Ui(){}function Hi(){}function Vi(){}function qi(){}function Gi(){}function Wi(){}function Yi(){}function $i(){}function Xi(){}function Ki(){}function Zi(){}function Ji(){}function Qi(){}function ta(){}function ea(){}function na(){}function ra(){}function ia(){}function aa(){}function oa(){}function sa(){}function la(){}function ca(){}function ua(){}function fa(){}function ha(){}function da(){}function pa(){}function ga(){}function va(){}function ma(){}function ya(){}function ba(){}function xa(){}function wa(){}function _a(){}function ka(){}function Ta(){}function Ma(){}function Aa(){}function Sa(){}function Ea(){}function Ca(){}function Pa(){}function La(){}function Oa(){}function Ia(){}function Da(){}function Ra(){}function za(){}function Na(){}function ja(){}function Fa(){}function Ba(){}function Ua(){}function Ha(){}function Va(){}function qa(){}function Ga(){}function Wa(){}function Ya(){}function $a(){}function Xa(){}function Ka(){}function Za(){}function Ja(){}function Qa(){}function to(){}function eo(){}function no(){}function ro(){}function io(){}function ao(){}function oo(){}function so(){}function lo(){}function co(){}function uo(){}function fo(){}function ho(){}function po(){}function go(){}function vo(){}function mo(){}function yo(){}function bo(){}function xo(){}function wo(){}function _o(){}function ko(){}function To(){}function Mo(){}function Ao(){}function So(){}function Eo(){}function Co(){}function Po(){}function Lo(){}function Oo(){}function Io(){}function Do(){}function Ro(){}function zo(){}function No(){}function jo(){}function Fo(){}function Bo(){}function Uo(){}function Ho(){}function Vo(){}function qo(){}function Go(){}function Wo(){}function Yo(){}function $o(){}function Xo(){}function Ko(){}function Zo(){}function Jo(){}function Qo(){}function ts(){}function es(){}function ns(){}function rs(){}function is(){}function as(){}function os(){}function ss(){}function ls(){}function cs(){}function us(){}function fs(){}function hs(){}function ds(){}function ps(){}function gs(){}function vs(){}function ms(){}function ys(){}function bs(){}function xs(){}function ws(){}function _s(){}function ks(){}function Ts(){}function Ms(){}function As(){}function Ss(){}function Es(){}function Cs(){}function Ps(){}function Ls(){}function Os(){}function Is(){}function Ds(){}function Rs(){}function zs(){}function Ns(){}function js(){}function Fs(){}function Bs(){}function Us(){}function Hs(){}function Vs(){}function qs(){}function Gs(){}function Ws(){}function Ys(){}function $s(){}function Xs(){}function Ks(){}function Zs(){}function Js(){}function Qs(){}function tl(){}function el(){}function nl(){}function rl(){}function il(){}function al(){}function ol(){}function sl(){}function ll(){}function cl(){}function ul(){}function fl(){}function hl(){}function dl(){}function pl(){}function gl(){}function vl(){}function ml(){}function yl(){}function bl(){}function xl(){}function wl(){}function _l(){}function kl(){}function Tl(){}function Ml(){}function Al(){}function Sl(){}function El(){}function Cl(){}function Pl(){}function Ll(){}function Ol(){}function Il(){}function Dl(){}function Rl(){}function zl(){}function Nl(){}function jl(){}function Fl(){}function Bl(){}function Ul(){}function Hl(){}function Vl(){}function ql(){}function Gl(){}function Wl(){}function Yl(){}function $l(){}function Xl(){}function Kl(){}function Zl(){}function Jl(){}function Ql(){}function tc(){}function ec(){}function nc(){}function rc(){}function ic(){}function ac(){}function oc(){}function sc(){}function lc(){}function cc(){}function uc(){}function fc(){}function hc(){}function dc(){}function pc(){}function gc(){}function vc(){}function mc(){}function yc(){}function bc(){}function xc(){}function wc(){}function _c(){}function kc(){}function Tc(){}function Mc(){}function Ac(){}function Sc(){}function Ec(){}function Cc(){}function Pc(){}function Lc(){}function Oc(){}function Ic(){}function Dc(){}function Rc(){}function zc(){}function Nc(){}function jc(){}function Fc(){}function Bc(){}function Uc(){}function Hc(){}function Vc(){}function qc(){}function Gc(){}function Wc(){}function Yc(){}function $c(){}function Xc(){}function Kc(){}function Zc(){}function Jc(){}function Qc(){}function tu(){}function eu(){}function nu(){}function ru(){}function iu(){}function au(){}function ou(){}function su(){}function lu(){}function cu(){}function uu(){}function fu(){}function hu(){}function du(){}function pu(){}function gu(){}function vu(){}function mu(){}function yu(){}function bu(){}function xu(){}function wu(){}function _u(){}function ku(){}function Tu(){}function Mu(){}function Au(){}function Su(){}function Eu(){}function Cu(){}function Pu(){}function Lu(){}function Ou(){}function Iu(){}function Du(){}function Ru(){}function zu(){}function Nu(){}function ju(){}function Fu(){vb()}function Bu(){P6()}function Uu(){dnt()}function Hu(){yat()}function Vu(){Tlt()}function qu(){Vgt()}function Gu(){Dit()}function Wu(){Xit()}function Yu(){Kk()}function $u(){Wk()}function Xu(){LR()}function Ku(){Zk()}function Zu(){b2()}function Ju(){Qk()}function Qu(){nK()}function tf(){S1()}function ef(){sZ()}function nf(){lG()}function rf(){L6()}function af(){Zst()}function of(){E1()}function sf(){vY()}function lf(){I_t()}function cf(){jit()}function uf(){cG()}function ff(){y_t()}function hf(){oG()}function df(){C1()}function pf(){n4()}function gf(){dG()}function vf(){MZ()}function mf(){tT()}function yf(){dht()}function bf(){Bit()}function xf(){d3()}function wf(){Nst()}function _f(){qgt()}function kf(){drt()}function Tf(){oht()}function Mf(){r5()}function Af(){fG()}function Sf(){imt()}function Ef(){lht()}function Cf(){Qht()}function Pf(){EZ()}function Lf(){jst()}function Of(){L_t()}function If(){I6()}function Df(){Ptt()}function Rf(){tbt()}function zf(){gR()}function Nf(){$2()}function jf(){Hmt()}function Ff(t){yU(t)}function Bf(t){this.a=t}function Uf(t){this.a=t}function Hf(t){this.a=t}function Vf(t){this.a=t}function qf(t){this.a=t}function Gf(t){this.a=t}function Wf(t){this.a=t}function Yf(t){this.a=t}function $f(t){this.a=t}function Xf(t){this.a=t}function Kf(t){this.a=t}function Zf(t){this.a=t}function Jf(t){this.a=t}function Qf(t){this.a=t}function th(t){this.a=t}function eh(t){this.a=t}function nh(t){this.a=t}function rh(t){this.a=t}function ih(t){this.a=t}function ah(t){this.a=t}function oh(t){this.a=t}function sh(t){this.b=t}function lh(t){this.c=t}function ch(t){this.a=t}function uh(t){this.a=t}function fh(t){this.a=t}function hh(t){this.a=t}function dh(t){this.a=t}function ph(t){this.a=t}function gh(t){this.a=t}function vh(t){this.a=t}function mh(t){this.a=t}function yh(t){this.a=t}function bh(t){this.a=t}function xh(t){this.a=t}function wh(t){this.a=t}function _h(t){this.a=t}function kh(t){this.a=t}function Th(t){this.a=t}function Mh(t){this.a=t}function Ah(){this.a=[]}function Sh(t,e){t.a=e}function Eh(t,e){t.j=e}function Ch(t,e){t.c=e}function Ph(t,e){t.d=e}function Lh(t,e){t.k=e}function Oh(t,e){t.c=e}function Ih(t,e){t.a=e}function Dh(t,e){t.a=e}function Rh(t,e){t.f=e}function zh(t,e){t.a=e}function Nh(t,e){t.b=e}function jh(t,e){t.d=e}function Fh(t,e){t.i=e}function Bh(t,e){t.o=e}function Uh(t,e){t.e=e}function Hh(t,e){t.g=e}function Vh(t,e){t.e=e}function qh(t,e){t.f=e}function Gh(t,e){t.f=e}function Wh(t,e){t.n=e}function Yh(t){t.b=t.a}function $h(t){t.c=t.d.d}function Xh(t){this.d=t}function Kh(t){this.a=t}function Zh(t){this.a=t}function Jh(t){this.a=t}function Qh(t){this.a=t}function td(t){this.a=t}function ed(t){this.a=t}function nd(t){this.a=t}function rd(t){this.a=t}function id(t){this.a=t}function ad(t){this.a=t}function od(t){this.a=t}function sd(t){this.a=t}function ld(t){this.a=t}function cd(t){this.a=t}function ud(t){this.b=t}function fd(t){this.b=t}function hd(t){this.b=t}function dd(t){this.a=t}function pd(t){this.a=t}function gd(t){this.a=t}function vd(t){this.c=t}function md(t){this.c=t}function yd(t){this.c=t}function bd(t){this.a=t}function xd(t){this.a=t}function wd(t){this.a=t}function _d(t){this.a=t}function kd(t){this.a=t}function Td(t){this.a=t}function Md(t){this.a=t}function Ad(t){this.a=t}function Sd(t){this.a=t}function Ed(t){this.a=t}function Cd(t){this.a=t}function Pd(t){this.a=t}function Ld(t){this.a=t}function Od(t){this.a=t}function Id(t){this.a=t}function Dd(t){this.a=t}function Rd(t){this.a=t}function zd(t){this.a=t}function Nd(t){this.a=t}function jd(t){this.a=t}function Fd(t){this.a=t}function Bd(t){this.a=t}function Ud(t){this.a=t}function Hd(t){this.a=t}function Vd(t){this.a=t}function qd(t){this.a=t}function Gd(t){this.a=t}function Wd(t){this.a=t}function Yd(t){this.a=t}function $d(t){this.a=t}function Xd(t){this.a=t}function Kd(t){this.a=t}function Zd(t){this.a=t}function Jd(t){this.a=t}function Qd(t){this.a=t}function tp(t){this.a=t}function ep(t){this.a=t}function np(t){this.a=t}function rp(t){this.a=t}function ip(t){this.a=t}function ap(t){this.a=t}function op(t){this.a=t}function sp(t){this.a=t}function lp(t){this.a=t}function cp(t){this.a=t}function up(t){this.e=t}function fp(t){this.a=t}function hp(t){this.a=t}function dp(t){this.a=t}function pp(t){this.a=t}function gp(t){this.a=t}function vp(t){this.a=t}function mp(t){this.a=t}function yp(t){this.a=t}function bp(t){this.a=t}function xp(t){this.a=t}function wp(t){this.a=t}function _p(t){this.a=t}function kp(t){this.a=t}function Tp(t){this.a=t}function Mp(t){this.a=t}function Ap(t){this.a=t}function Sp(t){this.a=t}function Ep(t){this.a=t}function Cp(t){this.a=t}function Pp(t){this.a=t}function Lp(t){this.a=t}function Op(t){this.a=t}function Ip(t){this.a=t}function Dp(t){this.a=t}function Rp(t){this.a=t}function zp(t){this.a=t}function Np(t){this.a=t}function jp(t){this.a=t}function Fp(t){this.a=t}function Bp(t){this.a=t}function Up(t){this.a=t}function Hp(t){this.a=t}function Vp(t){this.a=t}function qp(t){this.a=t}function Gp(t){this.a=t}function Wp(t){this.a=t}function Yp(t){this.a=t}function $p(t){this.a=t}function Xp(t){this.a=t}function Kp(t){this.a=t}function Zp(t){this.a=t}function Jp(t){this.a=t}function Qp(t){this.a=t}function tg(t){this.a=t}function eg(t){this.a=t}function ng(t){this.a=t}function rg(t){this.a=t}function ig(t){this.a=t}function ag(t){this.a=t}function og(t){this.a=t}function sg(t){this.a=t}function lg(t){this.a=t}function cg(t){this.a=t}function ug(t){this.c=t}function fg(t){this.b=t}function hg(t){this.a=t}function dg(t){this.a=t}function pg(t){this.a=t}function gg(t){this.a=t}function vg(t){this.a=t}function mg(t){this.a=t}function yg(t){this.a=t}function bg(t){this.a=t}function xg(t){this.a=t}function wg(t){this.a=t}function _g(t){this.a=t}function kg(t){this.a=t}function Tg(t){this.a=t}function Mg(t){this.a=t}function Ag(t){this.a=t}function Sg(t){this.a=t}function Eg(t){this.a=t}function Cg(t){this.a=t}function Pg(t){this.a=t}function Lg(t){this.a=t}function Og(t){this.a=t}function Ig(t){this.a=t}function Dg(t){this.a=t}function Rg(t){this.a=t}function zg(t){this.a=t}function Ng(t){this.a=t}function jg(t){this.a=t}function Fg(t){this.a=t}function Bg(t){this.a=t}function Ug(t){this.a=t}function Hg(t){this.a=t}function Vg(t){this.a=t}function qg(t){this.a=t}function Gg(t){this.a=t}function Wg(t){this.a=t}function Yg(t){this.a=t}function $g(t){this.a=t}function Xg(t){this.a=t}function Kg(t){this.a=t}function Zg(t){this.a=t}function Jg(t){this.a=t}function Qg(t){this.a=t}function tv(t){this.a=t}function ev(t){this.a=t}function nv(t){this.a=t}function rv(t){this.a=t}function iv(t){this.a=t}function av(t){this.a=t}function ov(t){this.a=t}function sv(t){this.a=t}function lv(t){this.a=t}function cv(t){this.a=t}function uv(t){this.a=t}function fv(t){this.a=t}function hv(t){this.a=t}function dv(t){this.a=t}function pv(t){this.a=t}function gv(t){this.a=t}function vv(t){this.a=t}function mv(t){this.a=t}function yv(t){this.a=t}function bv(t){this.a=t}function xv(t){this.a=t}function wv(t){this.a=t}function _v(t){this.a=t}function kv(t){this.a=t}function Tv(t){this.a=t}function Mv(t){this.a=t}function Av(t){this.a=t}function Sv(t){this.a=t}function Ev(t){this.a=t}function Cv(t){this.a=t}function Pv(t){this.b=t}function Lv(t){this.f=t}function Ov(t){this.a=t}function Iv(t){this.a=t}function Dv(t){this.a=t}function Rv(t){this.a=t}function zv(t){this.a=t}function Nv(t){this.a=t}function jv(t){this.a=t}function Fv(t){this.a=t}function Bv(t){this.a=t}function Uv(t){this.a=t}function Hv(t){this.a=t}function Vv(t){this.b=t}function qv(t){this.c=t}function Gv(t){this.e=t}function Wv(t){this.a=t}function Yv(t){this.a=t}function $v(t){this.a=t}function Xv(t){this.a=t}function Kv(t){this.a=t}function Zv(t){this.d=t}function Jv(t){this.a=t}function Qv(t){this.a=t}function tm(t){this.e=t}function em(){this.a=0}function nm(){OC(this)}function rm(){LC(this)}function im(){WF(this)}function am(){KU(this)}function om(){}function sm(){this.c=Koe}function lm(t,e){t.b+=e}function cm(t){t.b=new vx}function um(t){return t.e}function fm(t){return t.a}function hm(t){return t.a}function dm(t){return t.a}function pm(t){return t.a}function gm(t){return t.a}function vm(){return null}function mm(){return null}function ym(t,e){t.b=e-t.b}function bm(t,e){t.a=e-t.a}function xm(t,e){e.ad(t.a)}function wm(t,e){t.e=e,e.b=t}function _m(t){mR(),this.a=t}function km(t){mR(),this.a=t}function Tm(t){mR(),this.a=t}function Mm(t){XB(),this.a=t}function Am(t){OV(),_Ft.be(t)}function Sm(){PL.call(this)}function Em(){PL.call(this)}function Cm(){Sm.call(this)}function Pm(){Sm.call(this)}function Lm(){Sm.call(this)}function Om(){Sm.call(this)}function Im(){Sm.call(this)}function Dm(){Sm.call(this)}function Rm(){Sm.call(this)}function zm(){Sm.call(this)}function Nm(){Sm.call(this)}function jm(){Sm.call(this)}function Fm(){Sm.call(this)}function Bm(){this.a=this}function Um(){this.Bb|=256}function Hm(){this.b=new RE}function Vm(){Vm=P,new im}function qm(){Cm.call(this)}function Gm(t,e){t.length=e}function Wm(t,e){nz(t.a,e)}function Ym(t,e){j3(t.e,e)}function $m(t){_ft(t.c,t.b)}function Xm(t){this.a=function(t){var e;if((e=mlt(t))>34028234663852886e22)return tMt;if(e<-34028234663852886e22)return eMt;return e}(t)}function Km(){this.a=new im}function Zm(){this.a=new im}function Jm(){this.a=new rm}function Qm(){this.a=new rm}function ty(){this.a=new rm}function ey(){this.a=new xt}function ny(){this.a=new $X}function ry(){this.a=new he}function iy(){this.a=new _k}function ay(){this.a=new vW}function oy(){this.a=new Dq}function sy(){this.a=new oD}function ly(){this.a=new rm}function cy(){this.a=new rm}function uy(){this.a=new rm}function fy(){this.a=new rm}function hy(){this.d=new rm}function dy(){this.a=new Km}function py(){this.a=new im}function gy(){this.b=new im}function vy(){this.b=new rm}function my(){this.e=new rm}function yy(){this.d=new rm}function by(){this.a=new af}function xy(){rm.call(this)}function wy(){Jm.call(this)}function _y(){cD.call(this)}function ky(){cy.call(this)}function Ty(){My.call(this)}function My(){om.call(this)}function Ay(){om.call(this)}function Sy(){Ay.call(this)}function Ey(){kV.call(this)}function Cy(){kV.call(this)}function Py(){sb.call(this)}function Ly(){sb.call(this)}function Oy(){sb.call(this)}function Iy(){lb.call(this)}function Dy(){Mk.call(this)}function Ry(){rl.call(this)}function zy(){rl.call(this)}function Ny(){db.call(this)}function jy(){db.call(this)}function Fy(){im.call(this)}function By(){im.call(this)}function Uy(){im.call(this)}function Hy(){Km.call(this)}function Vy(){T1.call(this)}function qy(){Um.call(this)}function Gy(){GP.call(this)}function Wy(){GP.call(this)}function Yy(){im.call(this)}function $y(){im.call(this)}function Xy(){im.call(this)}function Ky(){xl.call(this)}function Zy(){xl.call(this)}function Jy(){Ky.call(this)}function Qy(){zu.call(this)}function tb(t){FQ.call(this,t)}function eb(t){FQ.call(this,t)}function nb(t){$f.call(this,t)}function rb(t){ek.call(this,t)}function ib(t){rb.call(this,t)}function ab(t){ek.call(this,t)}function ob(){this.a=new Mk}function sb(){this.a=new Km}function lb(){this.a=new im}function cb(){this.a=new rm}function ub(){this.j=new rm}function fb(){this.a=new $o}function hb(){this.a=new d_}function db(){this.a=new bl}function pb(){pb=P,rFt=new jx}function gb(){gb=P,nFt=new Nx}function vb(){vb=P,Xjt=new a}function mb(){mb=P,lFt=new bL}function yb(t){rb.call(this,t)}function bb(t){rb.call(this,t)}function xb(t){u$.call(this,t)}function wb(t){u$.call(this,t)}function _b(t){rR.call(this,t)}function kb(t){_lt.call(this,t)}function Tb(t){ik.call(this,t)}function Mb(t){ok.call(this,t)}function Ab(t){ok.call(this,t)}function Sb(t){ok.call(this,t)}function Eb(t){Rj.call(this,t)}function Cb(t){Eb.call(this,t)}function Pb(){Mh.call(this,{})}function Lb(t){VP(),this.a=t}function Ob(t){t.b=null,t.c=0}function Ib(t,e){t.a=e,function(t){var e,n,i;for(function(t){var e,n,i;for(n=new md(t.a.a.b);n.a0&&((!hC(t.a.c)||!e.n.d)&&(!dC(t.a.c)||!e.n.b)&&(e.g.d-=r.Math.max(0,i/2-.5)),(!hC(t.a.c)||!e.n.a)&&(!dC(t.a.c)||!e.n.c)&&(e.g.a+=r.Math.max(0,i-1)))}(t),i=new rm,n=new md(t.a.a.b);n.a0&&((!hC(t.a.c)||!e.n.d)&&(!dC(t.a.c)||!e.n.b)&&(e.g.d+=r.Math.max(0,i/2-.5)),(!hC(t.a.c)||!e.n.a)&&(!dC(t.a.c)||!e.n.c)&&(e.g.a-=i-1))}(t)}(t)}function Db(t,e,n){t.a[e.g]=n}function Rb(t,e,n){!function(t,e,n){var r,i;for(TC(t,t.j+e,t.k+n),i=new WP((!t.a&&(t.a=new YP(Wie,t,5)),t.a));i.e!=i.i.gc();)xC(r=ZR(fnt(i),469),r.a+e,r.b+n);kC(t,t.b+e,t.c+n)}(n,t,e)}function zb(t,e){!function(t,e){hC(t.f)?function(t,e){var n,r,i,a,o;for(a=t.g.a,o=t.g.b,r=new md(t.d);r.a=t.length)return{done:!0};var r=t[n++];return{value:[r,e.get(r)],done:!1}}}},function(){if(!Object.create||!Object.getOwnPropertyNames)return!1;var t="__proto__",e=Object.create(null);if(void 0!==e[t])return!1;var n=Object.getOwnPropertyNames(e);if(0!=n.length)return!1;if(e[t]=42,42!==e[t])return!1;if(0==Object.getOwnPropertyNames(e).length)return!1;return!0}()||(t.prototype.createObject=function(){return{}},t.prototype.get=function(t){return this.obj[":"+t]},t.prototype.set=function(t,e){this.obj[":"+t]=e},t.prototype[xMt]=function(t){delete this.obj[":"+t]},t.prototype.keys=function(){var t=[];for(var e in this.obj)58==e.charCodeAt(0)&&t.push(e.substring(1));return t});return t}()}()}function Ux(t){return t.a?t.b:0}function Hx(t){return t.a?t.b:0}function Vx(t,e){return oJ(t,e)}function qx(t,e){return Vq(t,e)}function Gx(t,e){return t.f=e,t}function Wx(t,e){return t.c=e,t}function Yx(t,e){return t.a=e,t}function $x(t,e){return t.f=e,t}function Xx(t,e){return t.k=e,t}function Kx(t,e){return t.a=e,t}function Zx(t,e){return t.e=e,t}function Jx(t,e){t.b=!0,t.d=e}function Qx(t,e){return t?0:e-1}function tw(t,e){return t.b=e,t}function ew(t,e){return t.a=e,t}function nw(t,e){return t.c=e,t}function rw(t,e){return t.d=e,t}function iw(t,e){return t.e=e,t}function aw(t,e){return t.f=e,t}function ow(t,e){return t.a=e,t}function sw(t,e){return t.b=e,t}function lw(t,e){return t.c=e,t}function cw(t,e){return t.c=e,t}function uw(t,e){return t.b=e,t}function fw(t,e){return t.d=e,t}function hw(t,e){return t.e=e,t}function dw(t,e){return t.g=e,t}function pw(t,e){return t.a=e,t}function gw(t,e){return t.i=e,t}function vw(t,e){return t.j=e,t}function mw(t,e){return t.k=e,t}function yw(t,e,n){!function(t,e,n){FF(t,new QT(e.a,n.a))}(t.a,e,n)}function bw(t){pH.call(this,t)}function xw(t){pH.call(this,t)}function ww(t){lR.call(this,t)}function _w(t){P9.call(this,t)}function kw(t){BQ.call(this,t)}function Tw(t){jH.call(this,t)}function Mw(t){jH.call(this,t)}function Aw(){cP.call(this,"")}function Sw(){this.a=0,this.b=0}function Ew(){this.b=0,this.a=0}function Cw(t,e){t.b=0,B0(t,e)}function Pw(t,e){return t.c._b(e)}function Lw(t){return t.e&&t.e()}function Ow(t){return t?t.d:null}function Iw(t,e){return N8(t.b,e)}function Dw(t){return cI(t),t.o}function Rw(){Rw=P,Lie=function(){var t,e;tbt();try{if(e=ZR(Qat((bT(),soe),NDt),2014))return e}catch(Wle){if(!CP(Wle=_5(Wle),102))throw um(Wle);t=Wle,Lj((qC(),t))}return new sl}()}function zw(){zw=P,Oie=function(){var t;return uae?ZR(Vht((bT(),soe),NDt),2016):(t=ZR(CP(oq((bT(),soe),NDt),555)?oq(soe,NDt):new Gft,555),uae=!0,function(t){if(t.q)return;t.q=!0,t.p=V3(t,0),t.a=V3(t,1),S2(t.a,0),t.f=V3(t,2),S2(t.f,1),A2(t.f,2),t.n=V3(t,3),A2(t.n,3),A2(t.n,4),A2(t.n,5),A2(t.n,6),t.g=V3(t,4),S2(t.g,7),A2(t.g,8),t.c=V3(t,5),S2(t.c,7),S2(t.c,8),t.i=V3(t,6),S2(t.i,9),S2(t.i,10),S2(t.i,11),S2(t.i,12),A2(t.i,13),t.j=V3(t,7),S2(t.j,9),t.d=V3(t,8),S2(t.d,3),S2(t.d,4),S2(t.d,5),S2(t.d,6),A2(t.d,7),A2(t.d,8),A2(t.d,9),A2(t.d,10),t.b=V3(t,9),A2(t.b,0),A2(t.b,1),t.e=V3(t,10),A2(t.e,1),A2(t.e,2),A2(t.e,3),A2(t.e,4),S2(t.e,5),S2(t.e,6),S2(t.e,7),S2(t.e,8),S2(t.e,9),S2(t.e,10),A2(t.e,11),t.k=V3(t,11),A2(t.k,0),A2(t.k,1),t.o=q3(t,12),t.s=q3(t,13)}(t),function(t){var e,n,r,i,a,o,s,l,c;if(t.r)return;t.r=!0,k2(t,"graph"),T2(t,"graph"),M2(t,NDt),v5(t.o,"T"),fZ(EV(t.a),t.p),fZ(EV(t.f),t.a),fZ(EV(t.n),t.f),fZ(EV(t.g),t.n),fZ(EV(t.c),t.n),fZ(EV(t.i),t.c),fZ(EV(t.j),t.c),fZ(EV(t.d),t.f),fZ(EV(t.e),t.a),TW(t.p,cVt,YAt,!0,!0,!1),l=l6(t.p,t.p,"setProperty"),c=O5(l),r=AH(t.o),i=new sm,fZ((!r.d&&(r.d=new YP(uoe,r,1)),r.d),i),a=SH(c),bot(i,a),Jat(l,r,FDt),r=SH(c),Jat(l,r,BDt),l=l6(t.p,null,"getProperty"),c=O5(l),r=AH(t.o),i=SH(c),fZ((!r.d&&(r.d=new YP(uoe,r,1)),r.d),i),Jat(l,r,FDt),r=SH(c),s=hst(l,r,null),!!s&&s.Fi(),l=l6(t.p,t.wb.e,"hasProperty"),r=AH(t.o),i=new sm,fZ((!r.d&&(r.d=new YP(uoe,r,1)),r.d),i),Jat(l,r,FDt),l=l6(t.p,t.p,"copyProperties"),Pit(l,t.p,UDt),l=l6(t.p,null,"getAllProperties"),r=AH(t.wb.P),i=AH(t.o),fZ((!r.d&&(r.d=new YP(uoe,r,1)),r.d),i),e=new sm,a=e,fZ((!i.d&&(i.d=new YP(uoe,i,1)),i.d),a),i=AH(t.wb.M),fZ((!r.d&&(r.d=new YP(uoe,r,1)),r.d),i),o=hst(l,r,null),!!o&&o.Fi(),TW(t.a,Gie,lDt,!0,!1,!0),Eit(ZR(a0(oV(t.a),0),18),t.k,null,HDt,0,-1,Gie,!1,!1,!0,!0,!1,!1,!1),TW(t.f,Yie,uDt,!0,!1,!0),Eit(ZR(a0(oV(t.f),0),18),t.g,ZR(a0(oV(t.g),0),18),"labels",0,-1,Yie,!1,!1,!0,!0,!1,!1,!1),G2(ZR(a0(oV(t.f),1),34),t.wb._,VDt,null,0,1,Yie,!1,!1,!0,!1,!0,!1),TW(t.n,$ie,"ElkShape",!0,!1,!0),G2(ZR(a0(oV(t.n),0),34),t.wb.t,qDt,fMt,1,1,$ie,!1,!1,!0,!1,!0,!1),G2(ZR(a0(oV(t.n),1),34),t.wb.t,GDt,fMt,1,1,$ie,!1,!1,!0,!1,!0,!1),G2(ZR(a0(oV(t.n),2),34),t.wb.t,"x",fMt,1,1,$ie,!1,!1,!0,!1,!0,!1),G2(ZR(a0(oV(t.n),3),34),t.wb.t,"y",fMt,1,1,$ie,!1,!1,!0,!1,!0,!1),l=l6(t.n,null,"setDimensions"),Pit(l,t.wb.t,GDt),Pit(l,t.wb.t,qDt),l=l6(t.n,null,"setLocation"),Pit(l,t.wb.t,"x"),Pit(l,t.wb.t,"y"),TW(t.g,nae,vDt,!1,!1,!0),Eit(ZR(a0(oV(t.g),0),18),t.f,ZR(a0(oV(t.f),0),18),WDt,0,1,nae,!1,!1,!0,!1,!1,!1,!1),G2(ZR(a0(oV(t.g),1),34),t.wb._,YDt,"",0,1,nae,!1,!1,!0,!1,!0,!1),TW(t.c,Xie,fDt,!0,!1,!0),Eit(ZR(a0(oV(t.c),0),18),t.d,ZR(a0(oV(t.d),1),18),"outgoingEdges",0,-1,Xie,!1,!1,!0,!1,!0,!1,!1),Eit(ZR(a0(oV(t.c),1),18),t.d,ZR(a0(oV(t.d),2),18),"incomingEdges",0,-1,Xie,!1,!1,!0,!1,!0,!1,!1),TW(t.i,rae,mDt,!1,!1,!0),Eit(ZR(a0(oV(t.i),0),18),t.j,ZR(a0(oV(t.j),0),18),"ports",0,-1,rae,!1,!1,!0,!0,!1,!1,!1),Eit(ZR(a0(oV(t.i),1),18),t.i,ZR(a0(oV(t.i),2),18),$Dt,0,-1,rae,!1,!1,!0,!0,!1,!1,!1),Eit(ZR(a0(oV(t.i),2),18),t.i,ZR(a0(oV(t.i),1),18),WDt,0,1,rae,!1,!1,!0,!1,!1,!1,!1),Eit(ZR(a0(oV(t.i),3),18),t.d,ZR(a0(oV(t.d),0),18),"containedEdges",0,-1,rae,!1,!1,!0,!0,!1,!1,!1),G2(ZR(a0(oV(t.i),4),34),t.wb.e,XDt,null,0,1,rae,!0,!0,!1,!1,!0,!0),TW(t.j,iae,yDt,!1,!1,!0),Eit(ZR(a0(oV(t.j),0),18),t.i,ZR(a0(oV(t.i),0),18),WDt,0,1,iae,!1,!1,!0,!1,!1,!1,!1),TW(t.d,Kie,hDt,!1,!1,!0),Eit(ZR(a0(oV(t.d),0),18),t.i,ZR(a0(oV(t.i),3),18),"containingNode",0,1,Kie,!1,!1,!0,!1,!1,!1,!1),Eit(ZR(a0(oV(t.d),1),18),t.c,ZR(a0(oV(t.c),0),18),KDt,0,-1,Kie,!1,!1,!0,!1,!0,!1,!1),Eit(ZR(a0(oV(t.d),2),18),t.c,ZR(a0(oV(t.c),1),18),ZDt,0,-1,Kie,!1,!1,!0,!1,!0,!1,!1),Eit(ZR(a0(oV(t.d),3),18),t.e,ZR(a0(oV(t.e),5),18),JDt,0,-1,Kie,!1,!1,!0,!0,!1,!1,!1),G2(ZR(a0(oV(t.d),4),34),t.wb.e,"hyperedge",null,0,1,Kie,!0,!0,!1,!1,!0,!0),G2(ZR(a0(oV(t.d),5),34),t.wb.e,XDt,null,0,1,Kie,!0,!0,!1,!1,!0,!0),G2(ZR(a0(oV(t.d),6),34),t.wb.e,"selfloop",null,0,1,Kie,!0,!0,!1,!1,!0,!0),G2(ZR(a0(oV(t.d),7),34),t.wb.e,"connected",null,0,1,Kie,!0,!0,!1,!1,!0,!0),TW(t.b,Wie,cDt,!1,!1,!0),G2(ZR(a0(oV(t.b),0),34),t.wb.t,"x",fMt,1,1,Wie,!1,!1,!0,!1,!0,!1),G2(ZR(a0(oV(t.b),1),34),t.wb.t,"y",fMt,1,1,Wie,!1,!1,!0,!1,!0,!1),l=l6(t.b,null,"set"),Pit(l,t.wb.t,"x"),Pit(l,t.wb.t,"y"),TW(t.e,Zie,dDt,!1,!1,!0),G2(ZR(a0(oV(t.e),0),34),t.wb.t,"startX",null,0,1,Zie,!1,!1,!0,!1,!0,!1),G2(ZR(a0(oV(t.e),1),34),t.wb.t,"startY",null,0,1,Zie,!1,!1,!0,!1,!0,!1),G2(ZR(a0(oV(t.e),2),34),t.wb.t,"endX",null,0,1,Zie,!1,!1,!0,!1,!0,!1),G2(ZR(a0(oV(t.e),3),34),t.wb.t,"endY",null,0,1,Zie,!1,!1,!0,!1,!0,!1),Eit(ZR(a0(oV(t.e),4),18),t.b,null,QDt,0,-1,Zie,!1,!1,!0,!0,!1,!1,!1),Eit(ZR(a0(oV(t.e),5),18),t.d,ZR(a0(oV(t.d),3),18),WDt,0,1,Zie,!1,!1,!0,!1,!1,!1,!1),Eit(ZR(a0(oV(t.e),6),18),t.c,null,tRt,0,1,Zie,!1,!1,!0,!1,!0,!1,!1),Eit(ZR(a0(oV(t.e),7),18),t.c,null,eRt,0,1,Zie,!1,!1,!0,!1,!0,!1,!1),Eit(ZR(a0(oV(t.e),8),18),t.e,ZR(a0(oV(t.e),9),18),nRt,0,-1,Zie,!1,!1,!0,!1,!0,!1,!1),Eit(ZR(a0(oV(t.e),9),18),t.e,ZR(a0(oV(t.e),8),18),rRt,0,-1,Zie,!1,!1,!0,!1,!0,!1,!1),G2(ZR(a0(oV(t.e),10),34),t.wb._,VDt,null,0,1,Zie,!1,!1,!0,!1,!0,!1),l=l6(t.e,null,"setStartLocation"),Pit(l,t.wb.t,"x"),Pit(l,t.wb.t,"y"),l=l6(t.e,null,"setEndLocation"),Pit(l,t.wb.t,"x"),Pit(l,t.wb.t,"y"),TW(t.k,eFt,"ElkPropertyToValueMapEntry",!1,!1,!1),r=AH(t.o),n=new sm,i=n,fZ((!r.d&&(r.d=new YP(uoe,r,1)),r.d),i),Eft(ZR(a0(oV(t.k),0),34),r,"key",eFt,!1,!1,!0,!1),G2(ZR(a0(oV(t.k),1),34),t.s,BDt,null,0,1,eFt,!1,!1,!0,!1,!0,!1),ZU(t.o,k9t,"IProperty",!0),ZU(t.s,Yjt,"PropertyValue",!0),c8(t,NDt)}(t),Sit(t),qq(soe,NDt,t),t)}()}function Nw(){Nw=P,voe=function(){var t,e;tbt();try{if(e=ZR(Qat((bT(),soe),hNt),1941))return e}catch(Wle){if(!CP(Wle=_5(Wle),102))throw um(Wle);t=Wle,Lj((qC(),t))}return new Vl}()}function jw(){jw=P,Lse=function(){var t,e;iJ();try{if(e=ZR(Qat((bT(),soe),VNt),2024))return e}catch(Wle){if(!CP(Wle=_5(Wle),102))throw um(Wle);t=Wle,Lj((qC(),t))}return new zc}()}function Fw(){Fw=P,Ose=function(){var t;return ule?ZR(Vht((bT(),soe),VNt),1945):(function(){GE(Pse,new Xc),GE(rle,new ou),GE(ile,new mu),GE(ale,new Eu),GE(iBt,new Ou),GE(qx(Jle,1),new Iu),GE(jFt,new Du),GE(UFt,new Ru),GE(iBt,new Fc),GE(iBt,new Bc),GE(iBt,new Uc),GE(qFt,new Hc),GE(iBt,new Vc),GE(tFt,new qc),GE(tFt,new Gc),GE(iBt,new Wc),GE(GFt,new Yc),GE(iBt,new $c),GE(iBt,new Kc),GE(iBt,new Zc),GE(iBt,new Jc),GE(iBt,new Qc),GE(qx(Jle,1),new tu),GE(iBt,new eu),GE(iBt,new nu),GE(tFt,new ru),GE(tFt,new iu),GE(iBt,new au),GE($Ft,new su),GE(iBt,new lu),GE(KFt,new cu),GE(iBt,new uu),GE(iBt,new fu),GE(iBt,new hu),GE(iBt,new du),GE(tFt,new pu),GE(tFt,new gu),GE(iBt,new vu),GE(iBt,new yu),GE(iBt,new bu),GE(iBt,new xu),GE(iBt,new wu),GE(iBt,new _u),GE(nBt,new ku),GE(iBt,new Tu),GE(iBt,new Mu),GE(iBt,new Au),GE(nBt,new Su),GE(KFt,new Cu),GE(iBt,new Pu),GE($Ft,new Lu)}(),t=ZR(CP(oq((bT(),soe),VNt),586)?oq(soe,VNt):new LU,586),ule=!0,function(t){if(t.N)return;t.N=!0,t.b=V3(t,0),A2(t.b,0),A2(t.b,1),A2(t.b,2),t.bb=V3(t,1),A2(t.bb,0),A2(t.bb,1),t.fb=V3(t,2),A2(t.fb,3),A2(t.fb,4),S2(t.fb,5),t.qb=V3(t,3),A2(t.qb,0),S2(t.qb,1),S2(t.qb,2),A2(t.qb,3),A2(t.qb,4),S2(t.qb,5),A2(t.qb,6),t.a=q3(t,4),t.c=q3(t,5),t.d=q3(t,6),t.e=q3(t,7),t.f=q3(t,8),t.g=q3(t,9),t.i=q3(t,10),t.j=q3(t,11),t.k=q3(t,12),t.n=q3(t,13),t.o=q3(t,14),t.p=q3(t,15),t.q=q3(t,16),t.s=q3(t,17),t.r=q3(t,18),t.t=q3(t,19),t.u=q3(t,20),t.v=q3(t,21),t.w=q3(t,22),t.B=q3(t,23),t.A=q3(t,24),t.C=q3(t,25),t.D=q3(t,26),t.F=q3(t,27),t.G=q3(t,28),t.H=q3(t,29),t.J=q3(t,30),t.I=q3(t,31),t.K=q3(t,32),t.M=q3(t,33),t.L=q3(t,34),t.P=q3(t,35),t.Q=q3(t,36),t.R=q3(t,37),t.S=q3(t,38),t.T=q3(t,39),t.U=q3(t,40),t.V=q3(t,41),t.X=q3(t,42),t.W=q3(t,43),t.Y=q3(t,44),t.Z=q3(t,45),t.$=q3(t,46),t._=q3(t,47),t.ab=q3(t,48),t.cb=q3(t,49),t.db=q3(t,50),t.eb=q3(t,51),t.gb=q3(t,52),t.hb=q3(t,53),t.ib=q3(t,54),t.jb=q3(t,55),t.kb=q3(t,56),t.lb=q3(t,57),t.mb=q3(t,58),t.nb=q3(t,59),t.ob=q3(t,60),t.pb=q3(t,61)}(t),function(t){var e;if(t.O)return;t.O=!0,k2(t,"type"),T2(t,"ecore.xml.type"),M2(t,VNt),e=ZR(Vht((bT(),soe),VNt),1945),fZ(EV(t.fb),t.b),TW(t.b,Pse,"AnyType",!1,!1,!0),G2(ZR(a0(oV(t.b),0),34),t.wb.D,eNt,null,0,-1,Pse,!1,!1,!0,!1,!1,!1),G2(ZR(a0(oV(t.b),1),34),t.wb.D,"any",null,0,-1,Pse,!0,!0,!0,!1,!1,!0),G2(ZR(a0(oV(t.b),2),34),t.wb.D,"anyAttribute",null,0,-1,Pse,!1,!1,!0,!1,!1,!1),TW(t.bb,rle,$Nt,!1,!1,!0),G2(ZR(a0(oV(t.bb),0),34),t.gb,"data",null,0,1,rle,!1,!1,!0,!1,!0,!1),G2(ZR(a0(oV(t.bb),1),34),t.gb,pRt,null,1,1,rle,!1,!1,!0,!1,!0,!1),TW(t.fb,ile,XNt,!1,!1,!0),G2(ZR(a0(oV(t.fb),0),34),e.gb,"rawValue",null,0,1,ile,!0,!0,!0,!1,!0,!0),G2(ZR(a0(oV(t.fb),1),34),e.a,BDt,null,0,1,ile,!0,!0,!0,!1,!0,!0),Eit(ZR(a0(oV(t.fb),2),18),t.wb.q,null,"instanceType",1,1,ile,!1,!1,!0,!1,!1,!1,!1),TW(t.qb,ale,KNt,!1,!1,!0),G2(ZR(a0(oV(t.qb),0),34),t.wb.D,eNt,null,0,-1,null,!1,!1,!0,!1,!1,!1),Eit(ZR(a0(oV(t.qb),1),18),t.wb.ab,null,"xMLNSPrefixMap",0,-1,null,!0,!1,!0,!0,!1,!1,!1),Eit(ZR(a0(oV(t.qb),2),18),t.wb.ab,null,"xSISchemaLocation",0,-1,null,!0,!1,!0,!0,!1,!1,!1),G2(ZR(a0(oV(t.qb),3),34),t.gb,"cDATA",null,0,-2,null,!0,!0,!0,!1,!1,!0),G2(ZR(a0(oV(t.qb),4),34),t.gb,"comment",null,0,-2,null,!0,!0,!0,!1,!1,!0),Eit(ZR(a0(oV(t.qb),5),18),t.bb,null,_jt,0,-2,null,!0,!0,!0,!0,!1,!1,!0),G2(ZR(a0(oV(t.qb),6),34),t.gb,YDt,null,0,-2,null,!0,!0,!0,!1,!1,!0),ZU(t.a,Yjt,"AnySimpleType",!0),ZU(t.c,iBt,"AnyURI",!0),ZU(t.d,qx(Jle,1),"Base64Binary",!0),ZU(t.e,Kle,"Boolean",!0),ZU(t.f,jFt,"BooleanObject",!0),ZU(t.g,Jle,"Byte",!0),ZU(t.i,UFt,"ByteObject",!0),ZU(t.j,iBt,"Date",!0),ZU(t.k,iBt,"DateTime",!0),ZU(t.n,xBt,"Decimal",!0),ZU(t.o,Qle,"Double",!0),ZU(t.p,qFt,"DoubleObject",!0),ZU(t.q,iBt,"Duration",!0),ZU(t.s,tFt,"ENTITIES",!0),ZU(t.r,tFt,"ENTITIESBase",!0),ZU(t.t,iBt,njt,!0),ZU(t.u,tce,"Float",!0),ZU(t.v,GFt,"FloatObject",!0),ZU(t.w,iBt,"GDay",!0),ZU(t.B,iBt,"GMonth",!0),ZU(t.A,iBt,"GMonthDay",!0),ZU(t.C,iBt,"GYear",!0),ZU(t.D,iBt,"GYearMonth",!0),ZU(t.F,qx(Jle,1),"HexBinary",!0),ZU(t.G,iBt,"ID",!0),ZU(t.H,iBt,"IDREF",!0),ZU(t.J,tFt,"IDREFS",!0),ZU(t.I,tFt,"IDREFSBase",!0),ZU(t.K,Xle,"Int",!0),ZU(t.M,MBt,"Integer",!0),ZU(t.L,$Ft,"IntObject",!0),ZU(t.P,iBt,"Language",!0),ZU(t.Q,Zle,"Long",!0),ZU(t.R,KFt,"LongObject",!0),ZU(t.S,iBt,"Name",!0),ZU(t.T,iBt,rjt,!0),ZU(t.U,MBt,"NegativeInteger",!0),ZU(t.V,iBt,djt,!0),ZU(t.X,tFt,"NMTOKENS",!0),ZU(t.W,tFt,"NMTOKENSBase",!0),ZU(t.Y,MBt,"NonNegativeInteger",!0),ZU(t.Z,MBt,"NonPositiveInteger",!0),ZU(t.$,iBt,"NormalizedString",!0),ZU(t._,iBt,"NOTATION",!0),ZU(t.ab,iBt,"PositiveInteger",!0),ZU(t.cb,iBt,"QName",!0),ZU(t.db,ece,"Short",!0),ZU(t.eb,nBt,"ShortObject",!0),ZU(t.gb,iBt,oTt,!0),ZU(t.hb,iBt,"Time",!0),ZU(t.ib,iBt,"Token",!0),ZU(t.jb,ece,"UnsignedByte",!0),ZU(t.kb,nBt,"UnsignedByteObject",!0),ZU(t.lb,Zle,"UnsignedInt",!0),ZU(t.mb,KFt,"UnsignedIntObject",!0),ZU(t.nb,MBt,"UnsignedLong",!0),ZU(t.ob,Xle,"UnsignedShort",!0),ZU(t.pb,$Ft,"UnsignedShortObject",!0),c8(t,VNt),function(t){tdt(t.a,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"anySimpleType"])),tdt(t.b,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"anyType",rNt,eNt])),tdt(ZR(a0(oV(t.b),0),34),nNt,R5(qx(iBt,1),Akt,2,6,[rNt,zNt,yRt,":mixed"])),tdt(ZR(a0(oV(t.b),1),34),nNt,R5(qx(iBt,1),Akt,2,6,[rNt,zNt,HNt,qNt,yRt,":1",QNt,"lax"])),tdt(ZR(a0(oV(t.b),2),34),nNt,R5(qx(iBt,1),Akt,2,6,[rNt,DNt,HNt,qNt,yRt,":2",QNt,"lax"])),tdt(t.c,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"anyURI",UNt,NNt])),tdt(t.d,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"base64Binary",UNt,NNt])),tdt(t.e,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,X_t,UNt,NNt])),tdt(t.f,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"boolean:Object",gNt,X_t])),tdt(t.g,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,Vzt])),tdt(t.i,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"byte:Object",gNt,Vzt])),tdt(t.j,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"date",UNt,NNt])),tdt(t.k,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"dateTime",UNt,NNt])),tdt(t.n,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"decimal",UNt,NNt])),tdt(t.o,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,Gzt,UNt,NNt])),tdt(t.p,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"double:Object",gNt,Gzt])),tdt(t.q,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"duration",UNt,NNt])),tdt(t.s,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"ENTITIES",gNt,tjt,ejt,"1"])),tdt(t.r,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,tjt,jNt,njt])),tdt(t.t,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,njt,gNt,rjt])),tdt(t.u,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,Wzt,UNt,NNt])),tdt(t.v,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"float:Object",gNt,Wzt])),tdt(t.w,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"gDay",UNt,NNt])),tdt(t.B,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"gMonth",UNt,NNt])),tdt(t.A,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"gMonthDay",UNt,NNt])),tdt(t.C,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"gYear",UNt,NNt])),tdt(t.D,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"gYearMonth",UNt,NNt])),tdt(t.F,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"hexBinary",UNt,NNt])),tdt(t.G,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"ID",gNt,rjt])),tdt(t.H,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"IDREF",gNt,rjt])),tdt(t.J,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"IDREFS",gNt,ijt,ejt,"1"])),tdt(t.I,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,ijt,jNt,"IDREF"])),tdt(t.K,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,Yzt])),tdt(t.M,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,ajt])),tdt(t.L,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"int:Object",gNt,Yzt])),tdt(t.P,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"language",gNt,ojt,sjt,ljt])),tdt(t.Q,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,$zt])),tdt(t.R,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"long:Object",gNt,$zt])),tdt(t.S,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"Name",gNt,ojt,sjt,cjt])),tdt(t.T,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,rjt,gNt,"Name",sjt,ujt])),tdt(t.U,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"negativeInteger",gNt,fjt,hjt,"-1"])),tdt(t.V,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,djt,gNt,ojt,sjt,"\\c+"])),tdt(t.X,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"NMTOKENS",gNt,pjt,ejt,"1"])),tdt(t.W,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,pjt,jNt,djt])),tdt(t.Y,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,gjt,gNt,ajt,vjt,"0"])),tdt(t.Z,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,fjt,gNt,ajt,hjt,"0"])),tdt(t.$,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,mjt,gNt,Z_t,UNt,"replace"])),tdt(t._,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"NOTATION",UNt,NNt])),tdt(t.ab,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"positiveInteger",gNt,gjt,vjt,"1"])),tdt(t.bb,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"processingInstruction_._type",rNt,"empty"])),tdt(ZR(a0(oV(t.bb),0),34),nNt,R5(qx(iBt,1),Akt,2,6,[rNt,INt,yRt,"data"])),tdt(ZR(a0(oV(t.bb),1),34),nNt,R5(qx(iBt,1),Akt,2,6,[rNt,INt,yRt,pRt])),tdt(t.cb,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"QName",UNt,NNt])),tdt(t.db,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,Xzt])),tdt(t.eb,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"short:Object",gNt,Xzt])),tdt(t.fb,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"simpleAnyType",rNt,ONt])),tdt(ZR(a0(oV(t.fb),0),34),nNt,R5(qx(iBt,1),Akt,2,6,[yRt,":3",rNt,ONt])),tdt(ZR(a0(oV(t.fb),1),34),nNt,R5(qx(iBt,1),Akt,2,6,[yRt,":4",rNt,ONt])),tdt(ZR(a0(oV(t.fb),2),18),nNt,R5(qx(iBt,1),Akt,2,6,[yRt,":5",rNt,ONt])),tdt(t.gb,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,Z_t,UNt,"preserve"])),tdt(t.hb,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"time",UNt,NNt])),tdt(t.ib,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,ojt,gNt,mjt,UNt,NNt])),tdt(t.jb,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,yjt,hjt,"255",vjt,"0"])),tdt(t.kb,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"unsignedByte:Object",gNt,yjt])),tdt(t.lb,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,bjt,hjt,"4294967295",vjt,"0"])),tdt(t.mb,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"unsignedInt:Object",gNt,bjt])),tdt(t.nb,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"unsignedLong",gNt,gjt,hjt,xjt,vjt,"0"])),tdt(t.ob,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,wjt,hjt,"65535",vjt,"0"])),tdt(t.pb,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"unsignedShort:Object",gNt,wjt])),tdt(t.qb,nNt,R5(qx(iBt,1),Akt,2,6,[yRt,"",rNt,eNt])),tdt(ZR(a0(oV(t.qb),0),34),nNt,R5(qx(iBt,1),Akt,2,6,[rNt,zNt,yRt,":mixed"])),tdt(ZR(a0(oV(t.qb),1),18),nNt,R5(qx(iBt,1),Akt,2,6,[rNt,INt,yRt,"xmlns:prefix"])),tdt(ZR(a0(oV(t.qb),2),18),nNt,R5(qx(iBt,1),Akt,2,6,[rNt,INt,yRt,"xsi:schemaLocation"])),tdt(ZR(a0(oV(t.qb),3),34),nNt,R5(qx(iBt,1),Akt,2,6,[rNt,RNt,yRt,"cDATA",FNt,BNt])),tdt(ZR(a0(oV(t.qb),4),34),nNt,R5(qx(iBt,1),Akt,2,6,[rNt,RNt,yRt,"comment",FNt,BNt])),tdt(ZR(a0(oV(t.qb),5),18),nNt,R5(qx(iBt,1),Akt,2,6,[rNt,RNt,yRt,_jt,FNt,BNt])),tdt(ZR(a0(oV(t.qb),6),34),nNt,R5(qx(iBt,1),Akt,2,6,[rNt,RNt,yRt,YDt,FNt,BNt]))}(t)}(t),RU((xT(),goe),t,new jc),Sit(t),qq(soe,VNt,t),t)}()}function Bw(){Bw=P,Cae=c1()}function Uw(){throw um(new Rm)}function Hw(){throw um(new Rm)}function Vw(){throw um(new Rm)}function qw(){throw um(new Rm)}function Gw(){throw um(new Rm)}function Ww(){throw um(new Rm)}function Yw(t){this.a=new wk(t)}function $w(t){Mwt(),function(t,e){var n,r,i,a,o,s,l,c;if(n=0,o=0,a=e.length,s=null,c=new Ox,o1?GG(qj(e.a[1],32),qG(e.a[0],cMt)):qG(e.a[0],cMt),XW(n9(e.e,n))))}(t,new EC(l));for(t.d=c.a.length,i=0;i0}(ZR(t,33))?jL(r,(Zet(),A9t))||jL(r,S9t):jL(r,(Zet(),A9t));if(CP(t,352))return jL(r,(Zet(),T9t));if(CP(t,186))return jL(r,(Zet(),E9t));if(CP(t,354))return jL(r,(Zet(),M9t))}return!0}(t,e)}function s_(t,e,n){t.splice(e,n)}function l_(t){t.c?bgt(t):xgt(t)}function c_(t){this.a=0,this.b=t}function u_(){this.a=new $dt(v6t)}function f_(){this.b=new $dt(a4t)}function h_(){this.b=new $dt(c7t)}function d_(){this.b=new $dt(c7t)}function p_(){throw um(new Rm)}function g_(){throw um(new Rm)}function v_(){throw um(new Rm)}function m_(){throw um(new Rm)}function y_(){throw um(new Rm)}function b_(){throw um(new Rm)}function x_(){throw um(new Rm)}function w_(){throw um(new Rm)}function __(){throw um(new Rm)}function k_(){throw um(new Rm)}function T_(t){this.a=new M_(t)}function M_(t){!function(t,e,n){var r;t.b=e,t.a=n,r=512==(512&t.a)?new Qy:new zu,t.c=function(t,e,n){var r,i,a;if(t.e=n,t.d=0,t.b=0,t.f=1,t.i=e,16==(16&t.e)&&(t.i=function(t){var e,n,r,i,a;r=t.length,e=new Px,a=0;for(;ae&&e0)){if(a=-1,32==YU(f.c,0)){if(h=u[0],JJ(e,u),u[0]>h)continue}else if(NV(e,f.c,u[0])){u[0]+=f.c.length;continue}return 0}if(a<0&&f.a&&(a=c,o=u[0],i=0),a>=0){if(l=f.b,c==a&&0==(l-=i++))return 0;if(!Rwt(e,u,f,l,s)){c=a-1,u[0]=o;continue}}else if(a=-1,!Rwt(e,u,f,0,s))return 0}if(!function(t,e){var n,i,a,o,s,l;0==t.e&&t.p>0&&(t.p=-(t.p-1)),t.p>nTt&&JY(e,t.p-ATt),s=e.q.getDate(),bq(e,1),t.k>=0&&function(t,e){var n;n=t.q.getHours(),t.q.setMonth(e),Pyt(t,n)}(e,t.k),t.c>=0?bq(e,t.c):t.k>=0?(i=35-new x4(e.q.getFullYear()-ATt,e.q.getMonth(),35).q.getDate(),bq(e,r.Math.min(i,s))):bq(e,s);t.f<0&&(t.f=e.q.getHours()),t.b>0&&t.f<12&&(t.f+=12),function(t,e){t.q.setHours(e),Pyt(t,e)}(e,24==t.f&&t.g?0:t.f),t.j>=0&&function(t,e){var n;n=t.q.getHours()+(e/60|0),t.q.setMinutes(e),Pyt(t,n)}(e,t.j),t.n>=0&&function(t,e){var n;n=t.q.getHours()+(e/3600|0),t.q.setSeconds(e),Pyt(t,n)}(e,t.n),t.i>=0&&TE(e,e9(n9(Hat(z3(e.q.getTime()),hTt),hTt),t.i)),t.a&&(JY(a=new sk,a.q.getFullYear()-ATt-80),IT(z3(e.q.getTime()),z3(a.q.getTime()))&&JY(e,a.q.getFullYear()-ATt+100));if(t.d>=0)if(-1==t.c)(n=(7+t.d-e.q.getDay())%7)>3&&(n-=7),l=e.q.getMonth(),bq(e,e.q.getDate()+n),e.q.getMonth()!=l&&bq(e,e.q.getDate()+(n>0?-7:7));else if(e.q.getDay()!=t.d)return!1;t.o>nTt&&(o=e.q.getTimezoneOffset(),TE(e,e9(z3(e.q.getTime()),60*(t.o-o)*hTt)));return!0}(s,n))return 0;return u[0]}(t,e,a),0==n||n0}function IT(t,e){return w8(t,e)<0}function DT(t,e){return t.a.get(e)}function RT(t,e){return SF(t.e,e)}function zT(t){return yU(t),!1}function NT(t){DG.call(this,t,21)}function jT(t,e){yq.call(this,t,e)}function FT(t,e){W_.call(this,t,e)}function BT(t,e){W_.call(this,t,e)}function UT(t){KB(),rR.call(this,t)}function HT(t,e){tj(t,t.length,e)}function VT(t,e){aB(t,t.length,e)}function qT(t,e,n){t.splice(e,0,n)}function GT(t,e){this.d=t,this.e=e}function WT(t,e){this.b=t,this.a=e}function YT(t,e){this.b=t,this.a=e}function $T(t,e){this.b=t,this.a=e}function XT(t,e){this.a=t,this.b=e}function KT(t,e){this.a=t,this.b=e}function ZT(t,e){this.a=t,this.b=e}function JT(t,e){this.a=t,this.b=e}function QT(t,e){this.a=t,this.b=e}function tM(t,e){this.b=t,this.a=e}function eM(t,e){this.b=t,this.a=e}function nM(t,e){W_.call(this,t,e)}function rM(t,e){W_.call(this,t,e)}function iM(t,e){W_.call(this,t,e)}function aM(t,e){W_.call(this,t,e)}function oM(t,e){W_.call(this,t,e)}function sM(t,e){W_.call(this,t,e)}function lM(t,e){W_.call(this,t,e)}function cM(t,e){W_.call(this,t,e)}function uM(t,e){W_.call(this,t,e)}function fM(t,e){W_.call(this,t,e)}function hM(t,e){W_.call(this,t,e)}function dM(t,e){W_.call(this,t,e)}function pM(t,e){W_.call(this,t,e)}function gM(t,e){W_.call(this,t,e)}function vM(t,e){W_.call(this,t,e)}function mM(t,e){W_.call(this,t,e)}function yM(t,e){W_.call(this,t,e)}function bM(t,e){W_.call(this,t,e)}function xM(t,e){this.a=t,this.b=e}function wM(t,e){this.a=t,this.b=e}function _M(t,e){this.a=t,this.b=e}function kM(t,e){this.a=t,this.b=e}function TM(t,e){this.a=t,this.b=e}function MM(t,e){this.a=t,this.b=e}function AM(t,e){this.a=t,this.b=e}function SM(t,e){this.a=t,this.b=e}function EM(t,e){this.a=t,this.b=e}function CM(t,e){this.b=t,this.a=e}function PM(t,e){this.b=t,this.a=e}function LM(t,e){this.b=t,this.a=e}function OM(t,e){this.b=t,this.a=e}function IM(t,e){this.c=t,this.d=e}function DM(t,e){this.e=t,this.d=e}function RM(t,e){this.a=t,this.b=e}function zM(t,e){this.b=e,this.c=t}function NM(t,e){W_.call(this,t,e)}function jM(t,e){W_.call(this,t,e)}function FM(t,e){W_.call(this,t,e)}function BM(t,e){W_.call(this,t,e)}function UM(t,e){W_.call(this,t,e)}function HM(t,e){W_.call(this,t,e)}function VM(t,e){W_.call(this,t,e)}function qM(t,e){W_.call(this,t,e)}function GM(t,e){W_.call(this,t,e)}function WM(t,e){W_.call(this,t,e)}function YM(t,e){W_.call(this,t,e)}function $M(t,e){W_.call(this,t,e)}function XM(t,e){W_.call(this,t,e)}function KM(t,e){W_.call(this,t,e)}function ZM(t,e){W_.call(this,t,e)}function JM(t,e){W_.call(this,t,e)}function QM(t,e){W_.call(this,t,e)}function tA(t,e){W_.call(this,t,e)}function eA(t,e){W_.call(this,t,e)}function nA(t,e){W_.call(this,t,e)}function rA(t,e){W_.call(this,t,e)}function iA(t,e){W_.call(this,t,e)}function aA(t,e){W_.call(this,t,e)}function oA(t,e){W_.call(this,t,e)}function sA(t,e){W_.call(this,t,e)}function lA(t,e){W_.call(this,t,e)}function cA(t,e){W_.call(this,t,e)}function uA(t,e){W_.call(this,t,e)}function fA(t,e){W_.call(this,t,e)}function hA(t,e){W_.call(this,t,e)}function dA(t,e){W_.call(this,t,e)}function pA(t,e){W_.call(this,t,e)}function gA(t,e){W_.call(this,t,e)}function vA(t,e){W_.call(this,t,e)}function mA(t,e){this.b=t,this.a=e}function yA(t,e){this.a=t,this.b=e}function bA(t,e){this.a=t,this.b=e}function xA(t,e){this.a=t,this.b=e}function wA(t,e){this.a=t,this.b=e}function _A(t,e){W_.call(this,t,e)}function kA(t,e){W_.call(this,t,e)}function TA(t,e){this.b=t,this.d=e}function MA(t,e){W_.call(this,t,e)}function AA(t,e){W_.call(this,t,e)}function SA(t,e){this.a=t,this.b=e}function EA(t,e){this.a=t,this.b=e}function CA(t,e){W_.call(this,t,e)}function PA(t,e){W_.call(this,t,e)}function LA(t,e){W_.call(this,t,e)}function OA(t,e){W_.call(this,t,e)}function IA(t,e){W_.call(this,t,e)}function DA(t,e){W_.call(this,t,e)}function RA(t,e){W_.call(this,t,e)}function zA(t,e){W_.call(this,t,e)}function NA(t,e){W_.call(this,t,e)}function jA(t,e){W_.call(this,t,e)}function FA(t,e){W_.call(this,t,e)}function BA(t,e){W_.call(this,t,e)}function UA(t,e){W_.call(this,t,e)}function HA(t,e){W_.call(this,t,e)}function VA(t,e){W_.call(this,t,e)}function qA(t,e){W_.call(this,t,e)}function GA(t,e){return jL(t.g,e)}function WA(t,e){W_.call(this,t,e)}function YA(t,e){W_.call(this,t,e)}function $A(t,e){this.a=t,this.b=e}function XA(t,e){this.a=t,this.b=e}function KA(t,e){this.a=t,this.b=e}function ZA(t,e){W_.call(this,t,e)}function JA(t,e){W_.call(this,t,e)}function QA(t,e){W_.call(this,t,e)}function tS(t,e){W_.call(this,t,e)}function eS(t,e){W_.call(this,t,e)}function nS(t,e){W_.call(this,t,e)}function rS(t,e){W_.call(this,t,e)}function iS(t,e){W_.call(this,t,e)}function aS(t,e){W_.call(this,t,e)}function oS(t,e){W_.call(this,t,e)}function sS(t,e){W_.call(this,t,e)}function lS(t,e){W_.call(this,t,e)}function cS(t,e){W_.call(this,t,e)}function uS(t,e){W_.call(this,t,e)}function fS(t,e){W_.call(this,t,e)}function hS(t,e){W_.call(this,t,e)}function dS(t,e){this.a=t,this.b=e}function pS(t,e){this.a=t,this.b=e}function gS(t,e){this.a=t,this.b=e}function vS(t,e){this.a=t,this.b=e}function mS(t,e){this.a=t,this.b=e}function yS(t,e){this.a=t,this.b=e}function bS(t,e){this.a=t,this.b=e}function xS(t,e){W_.call(this,t,e)}function wS(t,e){this.a=t,this.b=e}function _S(t,e){this.a=t,this.b=e}function kS(t,e){this.a=t,this.b=e}function TS(t,e){this.a=t,this.b=e}function MS(t,e){this.a=t,this.b=e}function AS(t,e){this.a=t,this.b=e}function SS(t,e){this.b=t,this.a=e}function ES(t,e){this.b=t,this.a=e}function CS(t,e){this.b=t,this.a=e}function PS(t,e){this.b=t,this.a=e}function LS(t,e){this.a=t,this.b=e}function OS(t,e){this.a=t,this.b=e}function IS(t,e){!function(t,e){if(CP(e,239))return function(t,e){var n;if(n=v0(t.i,e),null==n)throw um(new ux("Node did not exist in input."));return f3(e,n),null}(t,ZR(e,33));if(CP(e,186))return function(t,e){var n;if(n=UB(t.k,e),null==n)throw um(new ux("Port did not exist in input."));return f3(e,n),null}(t,ZR(e,118));if(CP(e,354))return function(t,e){var n;return n=UB(t.f,e),f3(e,n),null}(t,ZR(e,137));if(CP(e,352))return function(t,e){var n,r,i,a,o,s,l,c;if(l=ZR(UB(t.c,e),183),!l)throw um(new ux("Edge did not exist in input."));a=ret(l),i=A_((!e.a&&(e.a=new bF(Zie,e,6,6)),e.a)),!i&&(n=new NR(t,a,c=new Ah),function(t,e){!function(t,e){var n;n=0;for(;t.e!=t.i.gc();)cN(e,fnt(t),g7(n)),n!=Q_t&&++n}(new WP(t),e)}((!e.a&&(e.a=new bF(Zie,e,6,6)),e.a),n),PQ(l,JDt,c));r=GK(e,(L_t(),Wte)),r&&!(!(o=ZR(kht(e,Wte),74))||pU(o))&&(Y$(o,new bv(s=new Ah)),PQ(l,"junctionPoints",s));return Dz(l,"container",kq(e).k),null}(t,ZR(e,79));if(e)return null;throw um(new Kb(lRt+Gst(new ox(R5(qx(Yjt,1),akt,1,5,[e])))))}(t.a,ZR(e,56))}function DS(t,e){!function(t,e){gz(),nz(t,new bS(e,g7(e.e.c.length+e.g.c.length)))}(t.a,ZR(e,11))}function RS(){return Bx(),new jBt}function zS(){hG(),this.b=new Km}function NS(){_pt(),this.a=new Km}function jS(){sG(),pj.call(this)}function FS(t,e){W_.call(this,t,e)}function BS(t,e){this.a=t,this.b=e}function US(t,e){this.a=t,this.b=e}function HS(t,e){this.a=t,this.b=e}function VS(t,e){this.a=t,this.b=e}function qS(t,e){this.a=t,this.b=e}function GS(t,e){this.a=t,this.b=e}function WS(t,e){this.d=t,this.b=e}function YS(t,e){this.d=t,this.e=e}function $S(t,e){this.f=t,this.c=e}function XS(t,e){this.b=t,this.c=e}function KS(t,e){this.i=t,this.g=e}function ZS(t,e){this.e=t,this.a=e}function JS(t,e){this.a=t,this.b=e}function QS(t,e){t.i=null,J1(t,e)}function tE(t,e){return btt(t.a,e)}function eE(t){return wtt(t.c,t.b)}function nE(t){return t?t.dd():null}function rE(t){return null==t?null:t}function iE(t){return typeof t===X_t}function aE(t){return typeof t===K_t}function oE(t){return typeof t===Z_t}function sE(t,e){return t.Hd().Xb(e)}function lE(t,e){return function(t,e){MB(e);for(;t.Ob();)if(!f5(ZR(t.Pb(),10)))return!1;return!0}(t.Kc(),e)}function cE(t,e){return 0==w8(t,e)}function uE(t,e){return 0!=w8(t,e)}function fE(t){return""+(yU(t),t)}function hE(t,e){return t.substr(e)}function dE(t){return L9(t),t.d.gc()}function pE(t){return function(t,e){var n,r,i;for(n=new md(t.a.a);n.ae?1:0}function rP(t,e){return w8(t,e)>0?t:e}function iP(t,e,n){return{l:t,m:e,h:n}}function aP(t,e){null!=t.a&&DS(e,t.a)}function oP(t){t.a=new O,t.c=new O}function sP(t){this.b=t,this.a=new rm}function lP(t){this.b=new ee,this.a=t}function cP(t){lD.call(this),this.a=t}function uP(){FT.call(this,"Range",2)}function fP(){Aat(),this.a=new $dt(sGt)}function hP(t,e,n){return Btt(e,n,t.c)}function dP(t){return new KA(t.c,t.d)}function pP(t){return new KA(t.c,t.d)}function gP(t){return new KA(t.a,t.b)}function vP(t,e){return function(t,e,n){var r,i,a,o,s,l,c,u,f;!n&&(n=function(t){var e;return e=new m,e.a=t,e.b=function(t){var e;if(0==t)return"Etc/GMT";t<0?(t=-t,e="Etc/GMT-"):e="Etc/GMT+";return e+YJ(t)}(t),e.c=XK(iBt,Akt,2,2,6,1),e.c[0]=L2(t),e.c[1]=L2(t),e}(e.q.getTimezoneOffset())),i=6e4*(e.q.getTimezoneOffset()-n.a),s=new dI(e9(z3(e.q.getTime()),i)),l=s,s.q.getTimezoneOffset()!=e.q.getTimezoneOffset()&&(i>0?i-=864e5:i+=864e5,l=new dI(e9(z3(e.q.getTime()),i)));for(u=new Ox,c=t.a.length,a=0;a=97&&r<=122||r>=65&&r<=90){for(o=a+1;o=c)throw um(new Kb("Missing trailing '"));o+11)throw um(new Kb(WNt));for(u=mpt(t.e.Tg(),e),r=ZR(t.g,119),o=0;o0),a=ZR(c.a.Xb(c.c=--c.b),17);a!=r&&c.b>0;)t.a[a.p]=!0,t.a[r.p]=!0,AO(c.b>0),a=ZR(c.a.Xb(c.c=--c.b),17);c.b>0&&uU(c)}}(t,e,n),n}function OP(t,e,n){t.a=1502^e,t.b=n^kMt}function IP(t,e,n){return t.a[e.g][n.g]}function DP(t,e){return t.a[e.c.p][e.p]}function RP(t,e){return t.e[e.c.p][e.p]}function zP(t,e){return t.c[e.c.p][e.p]}function NP(t,e){return t.j[e.p]=function(t){var e,n,r,i;for(e=0,n=0,i=new md(t.j);i.a1||n>1)return 2;if(e+n==1)return 2;return 0}(e)}function jP(t,e){return t.a*=e,t.b*=e,t}function FP(t,e,n){return zB(t.g,e,n),n}function BP(t){t.a=ZR(H3(t.b.a,4),126)}function UP(t){t.a=ZR(H3(t.b.a,4),126)}function HP(t){RV(t,xRt),Edt(t,function(t){var e,n,r,i,a;switch(RV(t,xRt),(!t.b&&(t.b=new LD(Xie,t,4,7)),t.b).i+(!t.c&&(t.c=new LD(Xie,t,5,8)),t.c).i){case 0:throw um(new Kb("The edge must have at least one source or target."));case 1:return 0==(!t.b&&(t.b=new LD(Xie,t,4,7)),t.b).i?Eq(ist(ZR(a0((!t.c&&(t.c=new LD(Xie,t,5,8)),t.c),0),82))):Eq(ist(ZR(a0((!t.b&&(t.b=new LD(Xie,t,4,7)),t.b),0),82)))}if(1==(!t.b&&(t.b=new LD(Xie,t,4,7)),t.b).i&&1==(!t.c&&(t.c=new LD(Xie,t,5,8)),t.c).i){if(i=ist(ZR(a0((!t.b&&(t.b=new LD(Xie,t,4,7)),t.b),0),82)),a=ist(ZR(a0((!t.c&&(t.c=new LD(Xie,t,5,8)),t.c),0),82)),Eq(i)==Eq(a))return Eq(i);if(i==Eq(a))return i;if(a==Eq(i))return a}r=$F(t1(R5(qx(Jjt,1),akt,20,0,[(!t.b&&(t.b=new LD(Xie,t,4,7)),t.b),(!t.c&&(t.c=new LD(Xie,t,5,8)),t.c)]))),e=ist(ZR(wX(r),82));for(;Kft(r);)if((n=ist(ZR(wX(r),82)))!=e&&!YQ(n,e))if(Eq(n)==Eq(e))e=Eq(n);else if(!(e=Yht(e,n)))return null;return e}(t))}function VP(){VP=P,VBt=new Lb(null)}function qP(){(qP=P)(),XBt=new G}function GP(){this.Bb|=256,this.Bb|=512}function WP(t){this.i=t,this.f=this.i.j}function YP(t,e,n){Tz.call(this,t,e,n)}function $P(t,e,n){YP.call(this,t,e,n)}function XP(t,e,n){YP.call(this,t,e,n)}function KP(t,e,n){$P.call(this,t,e,n)}function ZP(t,e,n){Tz.call(this,t,e,n)}function JP(t,e,n){Tz.call(this,t,e,n)}function QP(t,e,n){Cz.call(this,t,e,n)}function tL(t,e,n){Cz.call(this,t,e,n)}function eL(t,e,n){QP.call(this,t,e,n)}function nL(t,e,n){ZP.call(this,t,e,n)}function rL(t,e){this.a=t,nk.call(this,e)}function iL(t,e){this.a=t,gx.call(this,e)}function aL(t,e){this.a=t,gx.call(this,e)}function oL(t,e){this.a=t,gx.call(this,e)}function sL(t){this.a=t,lh.call(this,t.d)}function lL(t){this.c=t,this.a=this.c.a}function cL(t,e){this.a=e,gx.call(this,t)}function uL(t,e){this.a=e,u$.call(this,t)}function fL(t,e){this.a=t,u$.call(this,e)}function hL(t,e){return function(e,n,r){try{!function(t,e,n){if(MB(e),n.Ob())for(wE(e,OB(n.Pb()));n.Ob();)wE(e,t.a),wE(e,OB(n.Pb()))}(e,n,r)}catch(t){throw CP(t=_5(t),597)?um(new nX(t)):um(t)}return n}(t,new Lx,e).a}function dL(t,e){return MB(e),new pL(t,e)}function pL(t,e){this.a=e,ok.call(this,t)}function gL(t){this.b=t,this.a=this.b.a.e}function vL(t){t.b.Qb(),--t.d.f.d,lj(t.d)}function mL(t){Qf.call(this,ZR(MB(t),35))}function yL(t){Qf.call(this,ZR(MB(t),35))}function bL(){W_.call(this,"INSTANCE",0)}function xL(t){if(!t)throw um(new Om)}function wL(t){if(!t)throw um(new Im)}function _L(t){if(!t)throw um(new jm)}function kL(){kL=P,kT(),_se=new jf}function TL(){TL=P,RFt=!1,zFt=!0}function ML(t){td.call(this,(yU(t),t))}function AL(t){td.call(this,(yU(t),t))}function SL(t){fd.call(this,t),this.a=t}function EL(t){hd.call(this,t),this.a=t}function CL(t){Dx.call(this,t),this.a=t}function PL(){_P(this),VH(this),this._d()}function LL(t,e){this.a=e,ok.call(this,t)}function OL(t,e){return new kct(t.a,t.b,e)}function IL(t,e){return t.lastIndexOf(e)}function DL(t,e,n){return t.indexOf(e,n)}function RL(t){return null==t?lkt:E9(t)}function zL(t){return null!=t.a?t.a:null}function NL(t,e){return null!=fq(t.a,e)}function jL(t,e){return!!e&&t.b[e.g]==e}function FL(t){return t.$H||(t.$H=++wUt)}function BL(t,e){return nz(e.a,t.a),t.a}function UL(t,e){return nz(e.b,t.a),t.a}function HL(t,e){return nz(e.a,t.a),t.a}function VL(t){return AO(null!=t.a),t.a}function qL(t){Md.call(this,new eZ(t))}function GL(t,e){Tet.call(this,t,e,null)}function WL(t){this.a=t,ud.call(this,t)}function YL(){YL=P,KHt=new FI(OAt,0)}function $L(t,e){return++t.b,nz(t.a,e)}function XL(t,e){return++t.b,sJ(t.a,e)}function KL(t,e){return ZR(FX(t.b,e),15)}function ZL(t){return QC(t.a)||QC(t.b)}function JL(t,e,n){return OY(t,e,n,t.c)}function QL(t,e,n){ZR(_J(t,e),21).Fc(n)}function tO(t,e){wT(),this.a=t,this.b=e}function eO(t,e){_T(),this.b=t,this.c=e}function nO(t,e){vj(),this.f=e,this.d=t}function rO(t,e){VX(e,t),this.d=t,this.c=e}function iO(t){var e;e=t.a,t.a=t.b,t.b=e}function aO(t,e){return new DD(t,t.gc(),e)}function oO(t){this.d=t,WP.call(this,t)}function sO(t){this.c=t,WP.call(this,t)}function lO(t){this.c=t,oO.call(this,t)}function cO(){Jk(),this.b=new Vp(this)}function uO(t){return v1(t,$kt),new mK(t)}function fO(t){return OV(),parseInt(t)||-1}function hO(t,e,n){return t.substr(e,n-e)}function dO(t,e,n){return DL(t,mst(e),n)}function pO(t){return iB(t.c,t.c.length)}function gO(t){return null!=t.f?t.f:""+t.g}function vO(t){return AO(0!=t.b),t.a.a.c}function mO(t){return AO(0!=t.b),t.c.b.c}function yO(t){CP(t,150)&&ZR(t,150).Gh()}function bO(t){return t.b=ZR(BH(t.a),42)}function xO(t){Nk(),this.b=t,this.a=!0}function wO(t){jk(),this.b=t,this.a=!0}function _O(t){t.d=new SO(t),t.e=new im}function kO(t){if(!t)throw um(new zm)}function TO(t){if(!t)throw um(new Om)}function MO(t){if(!t)throw um(new Im)}function AO(t){if(!t)throw um(new jm)}function SO(t){lz.call(this,t,null,null)}function EO(){W_.call(this,"POLYOMINO",0)}function CO(t,e,n,r){Ij.call(this,t,e,n,r)}function PO(t,e){return!!t.q&&SF(t.q,e)}function LO(t,e,n){t.Zc(e).Rb(n)}function OO(t,e,n){return t.a+=e,t.b+=n,t}function IO(t,e,n){return t.a*=e,t.b*=n,t}function DO(t,e,n){return t.a-=e,t.b-=n,t}function RO(t,e){return t.a=e.a,t.b=e.b,t}function zO(t){return t.a=-t.a,t.b=-t.b,t}function NO(t){this.c=t,this.a=1,this.b=1}function jO(t){this.c=t,I0(t,0),D0(t,0)}function FO(t){Mk.call(this),i1(this,t)}function BO(t){p_t(),cm(this),this.mf(t)}function UO(t,e){wT(),tO.call(this,t,e)}function HO(t,e){_T(),eO.call(this,t,e)}function VO(t,e){_T(),eO.call(this,t,e)}function qO(t,e){_T(),HO.call(this,t,e)}function GO(t,e,n){xZ.call(this,t,e,n,2)}function WO(t,e){$C(),jN.call(this,t,e)}function YO(t,e){$C(),WO.call(this,t,e)}function $O(t,e){$C(),WO.call(this,t,e)}function XO(t,e){$C(),$O.call(this,t,e)}function KO(t,e){$C(),jN.call(this,t,e)}function ZO(t,e){$C(),KO.call(this,t,e)}function JO(t,e){$C(),jN.call(this,t,e)}function QO(t,e,n){return Pbt(AJ(t,e),n)}function tI(t,e){return S8(t.e,ZR(e,49))}function eI(t,e){e.$modCount=t.$modCount}function nI(){nI=P,h6t=new Pv("root")}function rI(){rI=P,Dae=new Ny,new jy}function iI(){this.a=new QV,this.b=new QV}function aI(){T1.call(this),this.Bb|=iMt}function oI(){W_.call(this,"GROW_TREE",0)}function sI(t){return null==t?null:function(t){var e,n,r,i,a,o,s,l,c,u,f,h,d,p,g;if(tyt(),null==t)return null;if(f=8*t.length,0==f)return"";for(h=f/24|0,a=null,a=XK($le,fTt,25,4*(0!=(s=f%24)?h+1:h),15,1),c=0,u=0,e=0,n=0,r=0,o=0,i=0,l=0;l>24,c=(3&e)<<24>>24,d=0==(-128&e)?e>>2<<24>>24:(e>>2^192)<<24>>24,p=0==(-128&n)?n>>4<<24>>24:(n>>4^240)<<24>>24,g=0==(-128&(r=t[i++]))?r>>6<<24>>24:(r>>6^252)<<24>>24,a[o++]=hle[d],a[o++]=hle[p|c<<4],a[o++]=hle[u<<2|g],a[o++]=hle[63&r];8==s?(c=(3&(e=t[i]))<<24>>24,d=0==(-128&e)?e>>2<<24>>24:(e>>2^192)<<24>>24,a[o++]=hle[d],a[o++]=hle[c<<4],a[o++]=61,a[o++]=61):16==s&&(e=t[i],u=(15&(n=t[i+1]))<<24>>24,c=(3&e)<<24>>24,d=0==(-128&e)?e>>2<<24>>24:(e>>2^192)<<24>>24,p=0==(-128&n)?n>>4<<24>>24:(n>>4^240)<<24>>24,a[o++]=hle[d],a[o++]=hle[p|c<<4],a[o++]=hle[u<<2],a[o++]=61);return Xtt(a,0,a.length)}(t)}function lI(t){return null==t?null:function(t){var e,n,r,i;if(kgt(),null==t)return null;for(r=t.length,e=XK($le,fTt,25,2*r,15,1),n=0;n>4],e[2*n+1]=ple[15&i];return Xtt(e,0,e.length)}(t)}function cI(t){null==t.o&&function(t){if(t.pe()){var e=t.c;return e.qe()?t.o="["+e.n:e.pe()?t.o="["+e.ne():t.o="[L"+e.ne()+";",t.b=e.me()+"[]",void(t.k=e.oe()+"[]")}var n=t.j,r=t.d;r=r.split("/"),t.o=$tt(".",[n,$tt("$",r)]),t.b=$tt(".",[n,$tt(".",r)]),t.k=r[r.length-1]}(t)}function uI(t){return Kz(null==t||iE(t)),t}function fI(t){return Kz(null==t||aE(t)),t}function hI(t){return Kz(null==t||oE(t)),t}function dI(t){this.q=new r.Date(XW(t))}function pI(t,e){this.c=t,Y_.call(this,t,e)}function gI(t,e){this.a=t,pI.call(this,t,e)}function vI(t,e){this.d=t,$h(this),this.b=e}function mI(t,e){QK.call(this,t),this.a=e}function yI(t,e){QK.call(this,t),this.a=e}function bI(t){utt.call(this,0,0),this.f=t}function xI(t,e,n){gK.call(this,t,e,n,null)}function wI(t,e,n){gK.call(this,t,e,n,null)}function _I(t,e){return ZR(WJ(t.b,e),149)}function kI(t,e){return ZR(WJ(t.c,e),229)}function TI(t){return ZR(TN(t.a,t.b),287)}function MI(t){return new KA(t.c,t.d+t.a)}function AI(t){return uG(),pC(ZR(t,197))}function SI(){SI=P,XHt=J7((Ltt(),nie))}function EI(t,e){e.a?function(t,e){var n,r,i,a,o;if(o=sB(t.a,e.b),!o)throw um(new Zb("Invalid hitboxes for scanline overlap calculation."));for(a=!1,n=new vD(new WL(new ld(t.a.a).a).b),i=new cd(n);PT(i.a.a);)if(r=ZR(bO(i.a).cd(),65),s4(e.b,r))yw(t.b.a,e.b,r),a=!0;else if(a)break}(t,e):NL(t.a,e.b)}function CI(t,e){cUt||nz(t.a,e)}function PI(t,e){return RV(e,TAt),t.f=e,t}function LI(t,e,n){return n=umt(t,e,3,n)}function OI(t,e,n){return n=umt(t,e,6,n)}function II(t,e,n){return n=umt(t,e,9,n)}function DI(t,e,n){++t.j,t.Ki(),YK(t,e,n)}function RI(t,e,n){++t.j,t.Hi(e,t.oi(e,n))}function zI(t,e,n){t.Zc(e).Rb(n)}function NI(t,e,n){return obt(t.c,t.b,e,n)}function jI(t,e){return(e&Q_t)%t.d.length}function FI(t,e){Pv.call(this,t),this.a=e}function BI(t,e){qv.call(this,t),this.a=e}function UI(t,e){qv.call(this,t),this.a=e}function HI(t,e){this.c=t,BQ.call(this,e)}function VI(t,e){this.a=t,Vv.call(this,e)}function qI(t,e){this.a=t,Vv.call(this,e)}function GI(t){this.a=(v1(t,$kt),new mK(t))}function WI(t){this.a=(v1(t,$kt),new mK(t))}function YI(t){return!t.a&&(t.a=new p),t.a}function $I(t){return t>8?0:t+1}function XI(t,e,n){return ZN(t,ZR(e,22),n)}function KI(t,e,n){return t.a+=Xtt(e,0,n),t}function ZI(t,e){var n;return n=t.e,t.e=e,n}function JI(t,e){t[xMt].call(t,e)}function QI(t,e){t.a.Vc(t.b,e),++t.b,t.c=-1}function tD(t){WF(t.e),t.d.b=t.d,t.d.a=t.d}function eD(t){t.b?eD(t.b):t.f.c.zc(t.e,t.d)}function nD(t,e){return Vx(new Array(e),t)}function rD(t){return String.fromCharCode(t)}function iD(){this.a=new rm,this.b=new rm}function aD(){this.a=new he,this.b=new Hm}function oD(){this.b=new Sw,this.c=new rm}function sD(){this.d=new Sw,this.e=new Sw}function lD(){this.n=new Sw,this.o=new Sw}function cD(){this.n=new Ay,this.i=new uC}function uD(){this.a=new Ju,this.b=new sa}function fD(){this.a=new rm,this.d=new rm}function hD(){this.b=new Km,this.a=new Km}function dD(){this.b=new im,this.a=new im}function pD(){this.b=new f_,this.a=new vo}function gD(){cD.call(this),this.a=new Sw}function vD(t){K3.call(this,t,(HZ(),ZBt))}function mD(t,e,n,r){BN.call(this,t,e,n,r)}function yD(t,e,n){return n=umt(t,e,11,n)}function bD(t,e){return t.a+=e.a,t.b+=e.b,t}function xD(t,e){return t.a-=e.a,t.b-=e.b,t}function wD(t,e){return null==RU(t.a,e,"")}function _D(t,e){Hb.call(this,bzt+t+MRt+e)}function kD(t,e,n,r){bF.call(this,t,e,n,r)}function TD(t,e,n,r){bF.call(this,t,e,n,r)}function MD(t,e,n,r){TD.call(this,t,e,n,r)}function AD(t,e,n,r){xF.call(this,t,e,n,r)}function SD(t,e,n,r){xF.call(this,t,e,n,r)}function ED(t,e,n,r){xF.call(this,t,e,n,r)}function CD(t,e,n,r){SD.call(this,t,e,n,r)}function PD(t,e,n,r){SD.call(this,t,e,n,r)}function LD(t,e,n,r){ED.call(this,t,e,n,r)}function OD(t,e,n,r){PD.call(this,t,e,n,r)}function ID(t,e,n,r){vF.call(this,t,e,n,r)}function DD(t,e,n){this.a=t,rO.call(this,e,n)}function RD(t,e,n){this.c=e,this.b=n,this.a=t}function zD(t,e){return t.Aj().Nh().Kh(t,e)}function ND(t,e){return t.Aj().Nh().Ih(t,e)}function jD(t,e){return yU(t),rE(t)===rE(e)}function FD(t,e){return yU(t),rE(t)===rE(e)}function BD(t,e){return Ow(ztt(t.a,e,!1))}function UD(t,e){return Ow(Ntt(t.a,e,!1))}function HD(t,e){return t.b.sd(new JT(t,e))}function VD(t,e,n){return t.lastIndexOf(e,n)}function qD(t){return t.c?uJ(t.c.a,t,0):-1}function GD(t){return t==lre||t==ure||t==cre}function WD(t,e){return CP(e,15)&&Cgt(t.c,e)}function YD(t,e){return!!a6(t,e)}function $D(t,e){this.c=t,QF.call(this,t,e)}function XD(t){this.c=t,SE.call(this,Pkt,0)}function KD(t,e){oz.call(this,t,t.length,e)}function ZD(t,e,n){return ZR(t.c,69).mk(e,n)}function JD(t,e,n){return function(t,e,n){return e.Rk(t.e,t.c,n)}(t,ZR(e,332),n)}function QD(t,e,n){return function(t,e,n){var r,i,a;return r=e.ak(),a=e.dd(),i=r.$j()?jV(t,4,r,a,null,Dyt(t,r,a,CP(r,99)&&0!=(ZR(r,18).Bb&iMt)),!0):jV(t,r.Kj()?2:1,r,a,r.zj(),-1,!0),n?n.Ei(i):n=i,n}(t,ZR(e,332),n)}function tR(t,e){return null==e?null:R8(t.b,e)}function eR(t){return aE(t)?(yU(t),t):t.ke()}function nR(t){return!isNaN(t)&&!isFinite(t)}function rR(t){mR(),this.a=(YH(),new Dx(t))}function iR(t){gz(),this.d=t,this.a=new nm}function aR(t,e,n){this.a=t,this.b=e,this.c=n}function oR(t,e,n){this.a=t,this.b=e,this.c=n}function sR(t,e,n){this.d=t,this.b=n,this.a=e}function lR(t){oP(this),UH(this),C2(this,t)}function cR(t){LC(this),cz(this.c,0,t.Pc())}function uR(t){uU(t.a),rZ(t.c,t.b),t.b=null}function fR(t){this.a=t,lk(),z3(Date.now())}function hR(){hR=P,bUt=new i,xUt=new i}function dR(){dR=P,UBt=new I,HBt=new D}function pR(){pR=P,Oae=XK(Yjt,akt,1,0,5,1)}function gR(){gR=P,qoe=XK(Yjt,akt,1,0,5,1)}function vR(){vR=P,Goe=XK(Yjt,akt,1,0,5,1)}function mR(){mR=P,new _m((YH(),YH(),SBt))}function yR(t,e){if(!t)throw um(new Kb(e))}function bR(t){BN.call(this,t.d,t.c,t.a,t.b)}function xR(t){BN.call(this,t.d,t.c,t.a,t.b)}function wR(t,e,n){this.b=t,this.c=e,this.a=n}function _R(t,e,n){this.b=t,this.a=e,this.c=n}function kR(t,e,n){this.a=t,this.b=e,this.c=n}function TR(t,e,n){this.a=t,this.b=e,this.c=n}function MR(t,e,n){this.a=t,this.b=e,this.c=n}function AR(t,e,n){this.a=t,this.b=e,this.c=n}function SR(t,e,n){this.b=t,this.a=e,this.c=n}function ER(t,e,n){this.e=e,this.b=t,this.d=n}function CR(t){var e;return(e=new wt).e=t,e}function PR(t){var e;return(e=new hy).b=t,e}function LR(){LR=P,cWt=new Dn,uWt=new Rn}function OR(){OR=P,OYt=new yi,IYt=new bi}function IR(t,e){this.c=t,this.a=e,this.b=e-t}function DR(t,e,n){this.a=t,this.b=e,this.c=n}function RR(t,e,n){this.a=t,this.b=e,this.c=n}function zR(t,e,n){this.a=t,this.b=e,this.c=n}function NR(t,e,n){this.a=t,this.b=e,this.c=n}function jR(t,e,n){this.a=t,this.b=e,this.c=n}function FR(t,e,n){this.e=t,this.a=e,this.c=n}function BR(t,e,n){$C(),eq.call(this,t,e,n)}function UR(t,e,n){$C(),rU.call(this,t,e,n)}function HR(t,e,n){$C(),rU.call(this,t,e,n)}function VR(t,e,n){$C(),rU.call(this,t,e,n)}function qR(t,e,n){$C(),UR.call(this,t,e,n)}function GR(t,e,n){$C(),UR.call(this,t,e,n)}function WR(t,e,n){$C(),GR.call(this,t,e,n)}function YR(t,e,n){$C(),HR.call(this,t,e,n)}function $R(t,e,n){$C(),VR.call(this,t,e,n)}function XR(t,e){return MB(t),MB(e),new B_(t,e)}function KR(t,e){return MB(t),MB(e),new Uz(t,e)}function ZR(t,e){return Kz(null==t||Lnt(t,e)),t}function JR(t){var e;return GJ(e=new rm,t),e}function QR(t){var e;return O2(e=new iy,t),e}function tz(t){var e;return O2(e=new Mk,t),e}function ez(t){return!t.e&&(t.e=new rm),t.e}function nz(t,e){return t.c[t.c.length]=e,!0}function rz(t,e){this.c=t,this.b=e,this.a=!1}function iz(t){this.d=t,$h(this),this.b=function(t){return CP(t,15)?ZR(t,15).Yc():t.Kc()}(t.d)}function az(){this.a=";,;",this.b="",this.c=""}function oz(t,e,n){cF.call(this,e,n),this.a=t}function sz(t,e,n){this.b=t,ME.call(this,e,n)}function lz(t,e,n){this.c=t,GT.call(this,e,n)}function cz(t,e,n){fut(n,0,t,e,n.length,!1)}function uz(t,e,n,r,i){t.b=e,t.c=n,t.d=r,t.a=i}function fz(t,e,n,r,i){t.d=e,t.c=n,t.a=r,t.b=i}function hz(t){var e,n;e=t.b,n=t.c,t.b=n,t.c=e}function dz(t){var e,n;n=t.d,e=t.a,t.d=e,t.a=n}function pz(t){return O3(function(t){return iP(~t.l&VTt,~t.m&VTt,~t.h&qTt)}(eC(t)?$3(t):t))}function gz(){gz=P,Pwt(),t5t=qre,e5t=Tre}function vz(){this.b=ex(fI(cnt((Vgt(),_qt))))}function mz(t){return Hk(),XK(Yjt,akt,1,t,5,1)}function yz(t){return new KA(t.c+t.b,t.d+t.a)}function bz(t){return AO(0!=t.b),XQ(t,t.a.a)}function xz(t){return AO(0!=t.b),XQ(t,t.c.b)}function wz(t,e){if(!t)throw um(new Vb(e))}function _z(t,e){if(!t)throw um(new Kb(e))}function kz(t,e,n){IM.call(this,t,e),this.b=n}function Tz(t,e,n){YS.call(this,t,e),this.c=n}function Mz(t,e,n){NQ.call(this,e,n),this.d=t}function Az(t){vR(),xl.call(this),this.th(t)}function Sz(t,e,n){this.a=t,HE.call(this,e,n)}function Ez(t,e,n){this.a=t,HE.call(this,e,n)}function Cz(t,e,n){YS.call(this,t,e),this.c=n}function Pz(){pX(),sU.call(this,(bT(),soe))}function Lz(t){return null!=t&&!O9(t,Xae,Kae)}function Oz(t,e){return(s7(t)<<4|s7(e))&dTt}function Iz(t,e){var n;t.n&&(n=e,nz(t.f,n))}function Dz(t,e,n){PQ(t,e,new GB(n))}function Rz(t,e){return t.g=e<0?-1:e,t}function zz(t,e){return function(t){var e;e=r.Math.sqrt(t.a*t.a+t.b*t.b),e>0&&(t.a/=e,t.b/=e)}(t),t.a*=e,t.b*=e,t}function Nz(t,e,n,r,i){t.c=e,t.d=n,t.b=r,t.a=i}function jz(t,e){return X$(t,e,t.c.b,t.c),!0}function Fz(t){t.a.b=t.b,t.b.a=t.a,t.a=t.b=null}function Bz(t){this.b=t,this.a=zj(this.b.a).Ed()}function Uz(t,e){this.b=t,this.a=e,Fu.call(this)}function Hz(t,e){this.a=t,this.b=e,Fu.call(this)}function Vz(t,e){cF.call(this,e,1040),this.a=t}function qz(t){return 0==t||isNaN(t)?t:t<0?-1:1}function Gz(t,e){return rot(t,new IM(e.a,e.b))}function Wz(t){var e;return e=t.n,t.a.b+e.d+e.a}function Yz(t){var e;return e=t.n,t.e.b+e.d+e.a}function $z(t){var e;return e=t.n,t.e.a+e.b+e.c}function Xz(t){return R_t(),new UN(0,t)}function Kz(t){if(!t)throw um(new Xb(null))}function Zz(){Zz=P,YH(),Tse=new dd(qNt)}function Jz(){Jz=P,new Bnt((pb(),rFt),(gb(),nFt))}function Qz(){Qz=P,WFt=XK($Ft,Akt,19,256,0,1)}function tN(t,e,n,r){B9.call(this,t,e,n,r,0,0)}function eN(t){return t.e.c.length+t.g.c.length}function nN(t){return t.e.c.length-t.g.c.length}function rN(t){return t.b.c.length-t.e.c.length}function iN(t){vR(),Az.call(this,t),this.a=-1}function aN(t,e){XS.call(this,t,e),this.a=this}function oN(t,e){var n;return(n=TB(t,e)).i=2,n}function sN(t,e){return++t.j,t.Ti(e)}function lN(t,e,n){return t.a=-1,QL(t,e.g,n),t}function cN(t,e,n){!function(t,e,n,r,i){var a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k;w=UB(t.e,r),null==w&&(d=ZR(w=new Pb,183),h=new GB(e+"_s"+i),PQ(d,oRt,h));x=ZR(w,183),tU(n,x),tV(k=new Pb,"x",r.j),tV(k,"y",r.k),PQ(x,cRt,k),tV(y=new Pb,"x",r.b),tV(y,"y",r.c),PQ(x,"endPoint",y),f=A_((!r.a&&(r.a=new YP(Wie,r,5)),r.a)),p=!f,p&&(a=new mv(m=new Ah),Y$((!r.a&&(r.a=new YP(Wie,r,5)),r.a),a),PQ(x,QDt,m));l=Qnt(r),v=!!l,v&&kst(t.a,x,eRt,_ct(t,Qnt(r))),g=trt(r),!!g&&kst(t.a,x,tRt,_ct(t,trt(r))),c=0==(!r.e&&(r.e=new LD(Zie,r,10,9)),r.e).i,!c&&(o=new BS(t,b=new Ah),Y$((!r.e&&(r.e=new LD(Zie,r,10,9)),r.e),o),PQ(x,rRt,b));u=0==(!r.g&&(r.g=new LD(Zie,r,9,10)),r.g).i,!u&&(s=new US(t,_=new Ah),Y$((!r.g&&(r.g=new LD(Zie,r,9,10)),r.g),s),PQ(x,nRt,_))}(t.a,t.b,t.c,ZR(e,202),n)}function uN(t,e,n){return new RD(function(t){if(0>=t)return new kk;return function(t){var e,n;if(0>t)return new kk;return e=t+1,n=new aX(e,t),new yI(null,n)}(t-1)}(t).Ie(),n,e)}function fN(t,e,n,r,i,a){return eot(t,e,n,r,i,0,a)}function hN(){hN=P,FFt=XK(UFt,Akt,217,256,0,1)}function dN(){dN=P,XFt=XK(KFt,Akt,162,256,0,1)}function pN(){pN=P,eBt=XK(nBt,Akt,184,256,0,1)}function gN(){gN=P,HFt=XK(VFt,Akt,172,128,0,1)}function vN(){uz(this,!1,!1,!1,!1)}function mN(t){XB(),this.a=(YH(),new dd(MB(t)))}function yN(t){for(MB(t);t.Ob();)t.Pb(),t.Qb()}function bN(t){this.c=t,this.b=this.c.d.vc().Kc()}function xN(t){this.c=t,this.a=new Tk(this.c.a)}function wN(t){this.a=new wk(t.gc()),C2(this,t)}function _N(t){Md.call(this,new d$),C2(this,t)}function kN(t,e){return t.a+=Xtt(e,0,e.length),t}function TN(t,e){return OG(e,t.c.length),t.c[e]}function MN(t,e){return OG(e,t.a.length),t.a[e]}function AN(t,e){Hk(),QK.call(this,t),this.a=e}function SN(t,e){return function(t,e){return wet(e9(wet(t.a).a,e.a))}(ZR(t,162),ZR(e,162))}function EN(t){return t.c-ZR(TN(t.a,t.b),287).b}function CN(t){return t.q?t.q:(YH(),YH(),EBt)}function PN(t){return t.e.Hd().gc()*t.c.Hd().gc()}function LN(t,e,n){return r.Math.min(n/t,1/e)}function ON(t,e){return t?0:r.Math.max(0,e-1)}function IN(t){var e;return(e=fot(t))?IN(e):t}function DN(t,e){return null==t.a&&Ggt(t),t.a[e]}function RN(t){return t.c?t.c.f:t.e.b}function zN(t){return t.c?t.c.g:t.e.a}function NN(t){BQ.call(this,t.gc()),_B(this,t)}function jN(t,e){$C(),Gv.call(this,e),this.a=t}function FN(t,e,n){this.a=t,YP.call(this,e,n,2)}function BN(t,e,n,r){fz(this,t,e,n,r)}function UN(t,e){R_t(),tm.call(this,t),this.a=e}function HN(t){this.b=new Mk,this.a=t,this.c=-1}function VN(){this.d=new KA(0,0),this.e=new Km}function qN(t){rO.call(this,0,0),this.a=t,this.b=0}function GN(t){this.a=t,this.c=new im,function(t){var e,n,r,i;for(n=t.a,r=0,i=n.length;r>>e,i=t.m>>e|n<<22-e,r=t.l>>e|t.m<<22-e):e<44?(a=0,i=n>>>e-22,r=t.m>>e-22|t.h<<44-e):(a=0,i=0,r=n>>>e-44);return iP(r&VTt,i&VTt,a&qTt)}(eC(t)?$3(t):t,e))}function Yj(t,e){return function(t,e){return TL(),t==e?0:t?1:-1}((yU(t),t),(yU(e),e))}function $j(t,e){return O7((yU(t),t),(yU(e),e))}function Xj(t,e){return MB(e),t.a.Ad(e)&&!t.b.Ad(e)}function Kj(t,e){return $8(t,(yU(e),new Sd(e)))}function Zj(t,e){return $8(t,(yU(e),new Ed(e)))}function Jj(t){return K2(),0!=ZR(t,11).e.c.length}function Qj(t){return K2(),0!=ZR(t,11).g.c.length}function tF(t,e,n){return function(t,e,n){var r,i,a,o,s,l,c,u,f,h;if(0!=e.e.c.length&&0!=n.e.c.length){if((r=ZR(TN(e.e,0),17).c.i)==(o=ZR(TN(n.e,0),17).c.i))return nP(ZR(Ost(ZR(TN(e.e,0),17),(O_t(),PKt)),19).a,ZR(Ost(ZR(TN(n.e,0),17),PKt),19).a);for(f=0,h=(u=t.a).length;fs?1:0:(t.b&&(t.b._b(a)&&(i=ZR(t.b.xc(a),19).a),t.b._b(l)&&(s=ZR(t.b.xc(l),19).a)),is?1:0);return 0!=e.e.c.length&&0!=n.g.c.length?1:-1}(t,ZR(e,11),ZR(n,11))}function eF(t){return t.e?lK(t.e):null}function nF(t){t.d||(t.d=t.b.Kc(),t.c=t.b.gc())}function rF(t,e){if(t<0||t>=e)throw um(new qm)}function iF(t,e,n){return cgt(),c3(t,e)&&c3(t,n)}function aF(t){return Put(),!t.Hc(yre)&&!t.Hc(xre)}function oF(t){return new KA(t.c+t.b/2,t.d+t.a/2)}function sF(t,e){return e.kh()?S8(t.b,ZR(e,49)):e}function lF(t,e){this.e=t,this.d=0!=(64&e)?e|Skt:e}function cF(t,e){this.c=0,this.d=t,this.b=64|e|Skt}function uF(t){this.b=new mK(11),this.a=($H(),t)}function fF(t){this.b=null,this.a=($H(),t||LBt)}function hF(t){this.a=znt(t.a),this.b=new cR(t.b)}function dF(t){this.b=t,oO.call(this,t),BP(this)}function pF(t){this.b=t,lO.call(this,t),UP(this)}function gF(t,e,n){this.a=t,kD.call(this,e,n,5,6)}function vF(t,e,n,r){this.b=t,YP.call(this,e,n,r)}function mF(t,e,n,r,i){wZ.call(this,t,e,n,r,i,-1)}function yF(t,e,n,r,i){_Z.call(this,t,e,n,r,i,-1)}function bF(t,e,n,r){YP.call(this,t,e,n),this.b=r}function xF(t,e,n,r){Tz.call(this,t,e,n),this.b=r}function wF(t){$S.call(this,t,!1),this.a=!1}function _F(t,e){this.b=t,lh.call(this,t.b),this.a=e}function kF(t,e){XB(),J_.call(this,t,O8(new ox(e)))}function TF(t,e){return R_t(),new iU(t,e,0)}function MF(t,e){return R_t(),new iU(6,t,e)}function AF(t,e){return FD(t.substr(0,e.length),e)}function SF(t,e){return oE(e)?uV(t,e):!!zV(t.f,e)}function EF(t,e){for(yU(e);t.Ob();)e.td(t.Pb())}function CF(t,e,n){ggt(),this.e=t,this.d=e,this.a=n}function PF(t,e,n,r){var i;(i=t.i).i=e,i.a=n,i.b=r}function LF(t){var e;for(e=t;e.f;)e=e.f;return e}function OF(t){var e;return AO(null!=(e=T4(t))),e}function IF(t){var e;return e=function(t){var e;if(e=t.a[t.c-1&t.a.length-1],null==e)return null;return t.c=t.c-1&t.a.length-1,zB(t.a,t.c,null),e}(t),AO(null!=e),e}function DF(t,e){var n;return VX(e,n=t.a.gc()),n-e}function RF(t,e){var n;for(n=0;nt||t>e)throw um(new Sx("fromIndex: 0, toIndex: "+t+SMt+e))}(e,t.length),new Vz(t,e)}(t,t.length))}function $F(t){return new Oj(new cL(t.a.length,t.a))}function XF(t){return typeof t===$_t||typeof t===J_t}function KF(t,e){return w8(t,e)<0?-1:w8(t,e)>0?1:0}function ZF(t,e,n){return Tbt(t,ZR(e,46),ZR(n,167))}function JF(t,e){return ZR(jj(zj(t.a)).Xb(e),42).cd()}function QF(t,e){this.d=t,WP.call(this,t),this.e=e}function tB(t){this.d=(yU(t),t),this.a=0,this.c=Pkt}function eB(t,e){tm.call(this,1),this.a=t,this.b=e}function nB(t,e){return t.c?nB(t.c,e):nz(t.b,e),t}function rB(t,e,n){var r;return r=XJ(t,e),QY(t,e,n),r}function iB(t,e){return oJ(t.slice(0,e),t)}function aB(t,e,n){var r;for(r=0;r=14&&n<=16);case 11:return null!=e&&typeof e===J_t;case 12:return null!=e&&(typeof e===$_t||typeof e==J_t);case 0:return Lnt(e,t.__elementTypeId$);case 2:return XF(e)&&!(e.im===C);case 1:return XF(e)&&!(e.im===C)||Lnt(e,t.__elementTypeId$);default:return!0}}(t,n)),t[e]=n}function NB(t,e){var n;return HW(e,n=t.a.gc()),n-1-e}function jB(t,e){return t.a+=String.fromCharCode(e),t}function FB(t,e){return t.a+=String.fromCharCode(e),t}function BB(t,e){for(yU(e);t.c0?(vnt(t,n,0),n.a+=String.fromCharCode(r),vnt(t,n,i=fet(e,a)),a+=i-1):39==r?a+1=t.g}function QB(t,e,n){return rvt(t,u2(t,e,n))}function tU(t,e){var n;XJ(t,n=t.a.length),QY(t,n,e)}function eU(t,e){console[t].call(console,e)}function nU(t,e){var n;++t.j,n=t.Vi(),t.Ii(t.oi(n,e))}function rU(t,e,n){Gv.call(this,e),this.a=t,this.b=n}function iU(t,e,n){tm.call(this,t),this.a=e,this.b=n}function aU(t,e,n){this.a=t,qv.call(this,e),this.b=n}function oU(t,e,n){this.a=t,hY.call(this,8,e,null,n)}function sU(t){this.a=(yU(nNt),nNt),this.b=t,new Yy}function lU(t){this.c=t,this.b=this.c.a,this.a=this.c.e}function cU(t){this.c=t,this.b=t.a.d.a,eI(t.a.e,this)}function uU(t){MO(-1!=t.c),t.d.$c(t.c),t.b=t.c,t.c=-1}function fU(t){return r.Math.sqrt(t.a*t.a+t.b*t.b)}function hU(t,e){return rF(e,t.a.c.length),TN(t.a,e)}function dU(t,e){return rE(t)===rE(e)||null!=t&&K8(t,e)}function pU(t){return t?t.dc():!t.Kc().Ob()}function gU(t){return!t.a&&t.c?t.c.b:t.a}function vU(t){return!t.a&&(t.a=new YP(qie,t,4)),t.a}function mU(t){return!t.d&&(t.d=new YP(uoe,t,1)),t.d}function yU(t){if(null==t)throw um(new Dm);return t}function bU(t){t.c?t.c.He():(t.d=!0,function(t){var e,n,r,i,a;if(a=new rm,$Q(t.b,new qd(a)),t.b.c=XK(Yjt,akt,1,0,5,1),0!=a.c.length){for(OG(0,a.c.length),e=ZR(a.c[0],78),n=1,r=a.c.length;n0;)t=t<<1|(t<0?1:0);return t}function VU(t,e){return rE(t)===rE(e)||null!=t&&K8(t,e)}function qU(t,e){return ij(t.a,e)?t.b[ZR(e,22).g]:null}function GU(t,e,n,r){t.a=hO(t.a,0,e)+""+r+hE(t.a,n)}function WU(t,e){t.u.Hc((Put(),yre))&&function(t,e){var n,i,a,o;for(o=ZR(qU(t.b,e),124),n=o.a,a=ZR(ZR(FX(t.r,e),21),84).Kc();a.Ob();)(i=ZR(a.Pb(),111)).c&&(n.a=r.Math.max(n.a,$z(i.c)));if(n.a>0)switch(e.g){case 2:o.n.c=t.s;break;case 4:o.n.b=t.s}}(t,e),function(t,e){var n;t.C&&((n=ZR(qU(t.b,e),124).n).d=t.C.d,n.a=t.C.a)}(t,e)}function YU(t,e){return IG(e,t.length),t.charCodeAt(e)}function $U(){Eb.call(this,"There is no more element.")}function XU(t){this.d=t,this.a=this.d.b,this.b=this.d.c}function KU(t){t.b=!1,t.c=!1,t.d=!1,t.a=!1}function ZU(t,e,n,r){return u3(t,e,n,!1),f7(t,r),t}function JU(t){return!t.n&&(t.n=new bF(nae,t,1,7)),t.n}function QU(t){return!t.c&&(t.c=new bF(iae,t,9,9)),t.c}function tH(t){return t.e==GNt&&function(t,e){t.e=e}(t,function(t,e){var n,r;if(n=e.Hh(t.a),n&&null!=(r=hI(xtt((!n.b&&(n.b=new GO((N_t(),Noe),Qoe,n)),n.b),yRt))))return r;return e.ne()}(t.g,t.b)),t.e}function eH(t){return t.f==GNt&&function(t,e){t.f=e}(t,function(t,e){var n,r;return n=e.Hh(t.a),n?(r=hI(xtt((!n.b&&(n.b=new GO((N_t(),Noe),Qoe,n)),n.b),FNt)),FD(BNt,r)?Pj(t,r0(e.Hj())):r):null}(t.g,t.b)),t.f}function nH(t){var e;return!(e=t.b)&&(t.b=e=new Kf(t)),e}function rH(t){var e;for(e=t.Kc();e.Ob();)e.Pb(),e.Qb()}function iH(t){if(L9(t.d),t.d.d!=t.c)throw um(new zm)}function aH(t,e){this.b=t,this.c=e,this.a=new Tk(this.b)}function oH(t,e,n){this.a=uTt,this.d=t,this.b=e,this.c=n}function sH(t,e){this.d=(yU(t),t),this.a=16449,this.c=e}function lH(t,e){K7(t,ex(V0(e,"x")),ex(V0(e,"y")))}function cH(t,e){K7(t,ex(V0(e,"x")),ex(V0(e,"y")))}function uH(t,e){return $7(t),new AN(t,new FZ(e,t.a))}function fH(t,e){return $7(t),new AN(t,new JX(e,t.a))}function hH(t,e){return $7(t),new mI(t,new KX(e,t.a))}function dH(t,e){return $7(t),new yI(t,new ZX(e,t.a))}function pH(t){this.a=new rm,this.e=XK(Xle,Akt,48,t,0,2)}function gH(t,e,n,r){this.a=t,this.e=e,this.d=n,this.c=r}function vH(t,e,n,r){this.a=t,this.c=e,this.b=n,this.d=r}function mH(t,e,n,r){this.c=t,this.b=e,this.a=n,this.d=r}function yH(t,e,n,r){this.c=t,this.b=e,this.d=n,this.a=r}function bH(t,e,n,r){this.c=t,this.d=e,this.b=n,this.a=r}function xH(t,e,n,r){this.a=t,this.d=e,this.c=n,this.b=r}function wH(t,e,n,r){W_.call(this,t,e),this.a=n,this.b=r}function _H(t,e,n,r){this.a=t,this.c=e,this.d=n,this.b=r}function kH(t,e,n){!function(t,e){var n,r,i,a;for(function(t){var e;for(e=0;e(r=lq(n))&&++r,r}function AH(t){var e;return d0(e=new sm,t),e}function SH(t){var e;return $st(e=new sm,t),e}function EH(t){var e;return e=function(t){var e;if(e=Ost(t,(O_t(),LKt)),CP(e,160))return $9(ZR(e,160));return null}(t),e||null}function CH(t){return!t.b&&(t.b=new bF(Kie,t,12,3)),t.b}function PH(t,e,n){n.a?D0(t,e.b-t.f/2):I0(t,e.a-t.g/2)}function LH(t,e,n,r){this.a=t,this.b=e,this.c=n,this.d=r}function OH(t,e,n,r){this.a=t,this.b=e,this.c=n,this.d=r}function IH(t,e,n,r){this.e=t,this.a=e,this.c=n,this.d=r}function DH(t,e,n,r){this.a=t,this.c=e,this.d=n,this.b=r}function RH(t,e,n,r){$C(),LX.call(this,e,n,r),this.a=t}function zH(t,e,n,r){$C(),LX.call(this,e,n,r),this.a=t}function NH(t,e){this.a=t,vI.call(this,t,ZR(t.d,15).Zc(e))}function jH(t){this.f=t,this.c=this.f.e,t.f>0&&Cat(this)}function FH(t,e,n,r){this.b=t,this.c=r,SE.call(this,e,n)}function BH(t){return AO(t.b0)return r.Error.stackTraceLimit=Error.stackTraceLimit=64,!0;return"stack"in new Error}(),t=new g,_Ft=e?new k:t}function IV(t,e){var n;return n=Dw(t.gm),null==e?n:n+": "+e}function DV(t,e){var n;return m$(n=t.b.Qc(e),t.b.gc()),n}function RV(t,e){if(null==t)throw um(new Qb(e));return t}function zV(t,e){return V6(t,e,function(t,e){var n;return n=t.a.get(e),null==n?new Array:n}(t,null==e?0:t.b.se(e)))}function NV(t,e,n){return n>=0&&FD(t.substr(n,e.length),e)}function jV(t,e,n,r,i,a,o){return new l$(t.e,e,n,r,i,a,o)}function FV(t,e,n,r,i,a){this.a=t,k1.call(this,e,n,r,i,a)}function BV(t,e,n,r,i,a){this.a=t,k1.call(this,e,n,r,i,a)}function UV(t,e){this.g=t,this.d=R5(qx(WGt,1),kEt,10,0,[e])}function HV(t,e){this.e=t,this.a=Yjt,this.b=evt(e),this.c=e}function VV(t,e){cD.call(this),ZQ(this),this.a=t,this.c=e}function qV(t,e,n,r){zB(t.c[e.g],n.g,r),zB(t.c[n.g],e.g,r)}function GV(t,e,n,r){zB(t.c[e.g],e.g,n),zB(t.b[e.g],e.g,r)}function WV(t,e,n,r){return n>=0?t.jh(e,n,r):t.Sg(null,n,r)}function YV(t){return 0==t.b.b?t.a.$e():bz(t.b)}function $V(t){return rE(t.a)===rE(($2(),$oe))&&function(t){var e,n,r,i,a,o,s,l,c,u;for(e=new Tl,n=new Tl,c=FD(eNt,(i=mmt(t.b,nNt))?hI(xtt((!i.b&&(i.b=new GO((N_t(),Noe),Qoe,i)),i.b),rNt)):null),l=0;l=0?t.sh(r,n):ydt(t,e,n)}function pq(t,e,n){Fq(),t&&RU(Sae,t,e),t&&RU(Aae,t,n)}function gq(t,e,n){this.i=new rm,this.b=t,this.g=e,this.a=n}function vq(t,e,n){this.c=new rm,this.e=t,this.f=e,this.b=n}function mq(t,e,n){this.a=new rm,this.e=t,this.f=e,this.c=n}function yq(t,e){_P(this),this.f=e,this.g=t,VH(this),this._d()}function bq(t,e){var n;n=t.q.getHours(),t.q.setDate(e),Pyt(t,n)}function xq(t,e){var n;for(MB(e),n=t.a;n;n=n.c)e.Od(n.g,n.i)}function wq(t){var e;return I4(e=new Yw(EQ(t.length)),t),e}function _q(t,e){if(null==e)throw um(new Dm);return function(t,e){var n,r=t.a;e=String(e),r.hasOwnProperty(e)&&(n=r[e]);var i=(i4(),CFt)[typeof n];return i?i(n):Q6(typeof n)}(t,e)}function kq(t){return t.Db>>16!=3?null:ZR(t.Cb,33)}function Tq(t){return t.Db>>16!=9?null:ZR(t.Cb,33)}function Mq(t){return t.Db>>16!=6?null:ZR(t.Cb,79)}function Aq(t){return t.Db>>16!=7?null:ZR(t.Cb,235)}function Sq(t){return t.Db>>16!=7?null:ZR(t.Cb,160)}function Eq(t){return t.Db>>16!=11?null:ZR(t.Cb,33)}function Cq(t,e){var n;return(n=t.Yg(e))>=0?t.lh(n):Wut(t,e)}function Pq(t,e){var n;return Tst(n=new _N(e),t),new cR(n)}function Lq(t){var e;return e=t.d,e=t.si(t.f),fZ(t,e),e.Ob()}function Oq(t,e){return t.b+=e.b,t.c+=e.c,t.d+=e.d,t.a+=e.a,t}function Iq(t,e){return r.Math.abs(t)>16!=3?null:ZR(t.Cb,147)}function Uq(t){return t.Db>>16!=6?null:ZR(t.Cb,235)}function Hq(t){return t.Db>>16!=17?null:ZR(t.Cb,26)}function Vq(t,e){var n=t.a=t.a||[];return n[e]||(n[e]=t.le(e))}function qq(t,e,n){return null==e?Jct(t.f,null,n):i9(t.g,e,n)}function Gq(t,e,n,r,i,a){return new xJ(t.e,e,t.aj(),n,r,i,a)}function Wq(t,e,n){return t.a=hO(t.a,0,e)+""+n+hE(t.a,e),t}function Yq(t,e,n){return nz(t.a,(jU(),mrt(e,n),new $_(e,n))),t}function $q(t){return _L(t.c),t.e=t.a=t.c,t.c=t.c.c,++t.d,t.a.f}function Xq(t){return _L(t.e),t.c=t.a=t.e,t.e=t.e.e,--t.d,t.a.f}function Kq(t,e){t.d&&sJ(t.d.e,t),t.d=e,t.d&&nz(t.d.e,t)}function Zq(t,e){t.c&&sJ(t.c.g,t),t.c=e,t.c&&nz(t.c.g,t)}function Jq(t,e){t.c&&sJ(t.c.a,t),t.c=e,t.c&&nz(t.c.a,t)}function Qq(t,e){t.i&&sJ(t.i.j,t),t.i=e,t.i&&nz(t.i.j,t)}function tG(t,e,n){this.a=e,this.c=t,this.b=(MB(n),new cR(n))}function eG(t,e,n){this.a=e,this.c=t,this.b=(MB(n),new cR(n))}function nG(t,e){this.a=t,this.c=gP(this.a),this.b=new TV(e)}function rG(t,e){if(t<0||t>e)throw um(new Hb(FMt+t+BMt+e))}function iG(t,e){return aj(t.a,e)?jF(t,ZR(e,22).g,null):null}function aG(){aG=P,uFt=G6((mb(),R5(qx(fFt,1),Xkt,538,0,[lFt])))}function oG(){oG=P,I3t=xj(new fY,(Ist(),iGt),(D_t(),oYt))}function sG(){sG=P,R3t=xj(new fY,(Ist(),iGt),(D_t(),oYt))}function lG(){lG=P,N3t=xj(new fY,(Ist(),iGt),(D_t(),oYt))}function cG(){cG=P,s5t=lN(new fY,(Ist(),iGt),(D_t(),OWt))}function uG(){uG=P,h5t=lN(new fY,(Ist(),iGt),(D_t(),OWt))}function fG(){fG=P,v5t=lN(new fY,(Ist(),iGt),(D_t(),OWt))}function hG(){hG=P,M5t=lN(new fY,(Ist(),iGt),(D_t(),OWt))}function dG(){dG=P,s6t=xj(new fY,(Fit(),r4t),(wct(),l4t))}function pG(t,e,n,r){this.c=t,this.d=r,mG(this,e),yG(this,n)}function gG(t){this.c=new Mk,this.b=t.b,this.d=t.c,this.a=t.a}function vG(t){this.a=r.Math.cos(t),this.b=r.Math.sin(t)}function mG(t,e){t.a&&sJ(t.a.k,t),t.a=e,t.a&&nz(t.a.k,t)}function yG(t,e){t.b&&sJ(t.b.f,t),t.b=e,t.b&&nz(t.b.f,t)}function bG(t,e){!function(t,e,n){ZR(e.b,65),$Q(e.a,new RR(t,n,e))}(t,t.b,t.c),ZR(t.b.b,65),e&&ZR(e.b,65).b}function xG(t,e){CP(t.Cb,88)&&aut(dX(ZR(t.Cb,88)),4),k2(t,e)}function wG(t,e){CP(t.Cb,179)&&(ZR(t.Cb,179).tb=null),k2(t,e)}function _G(t,e){return TT(),qJ(e)?new aN(e,t):new XS(e,t)}function kG(t){var e;return Nw(),d0(e=new sm,t),e}function TG(t){var e;return Nw(),d0(e=new sm,t),e}function MG(t,e){var n;return n=new VB(t),e.c[e.c.length]=n,n}function AG(t,e){var n;return(n=ZR(R8(KH(t.a),e),14))?n.gc():0}function SG(t){return $7(t),$H(),$H(),HQ(t,OBt)}function EG(t){for(var e;;)if(e=t.Pb(),!t.Ob())return e}function CG(t,e){ab.call(this,new wk(EQ(t))),v1(e,Mkt),this.a=e}function PG(t,e,n){r7(e,n,t.gc()),this.c=t,this.a=e,this.b=n-e}function LG(t,e,n){var r;r7(e,n,t.c.length),r=n-e,s_(t.c,e,r)}function OG(t,e){if(t<0||t>=e)throw um(new Hb(FMt+t+BMt+e))}function IG(t,e){if(t<0||t>=e)throw um(new Ix(FMt+t+BMt+e))}function DG(t,e){this.b=(yU(t),t),this.a=0==(e&nMt)?64|e|Skt:e}function RG(t){OC(this),Gm(this.a,_4(r.Math.max(8,t))<<1)}function zG(t){return O4(R5(qx(V9t,1),Akt,8,0,[t.i.n,t.n,t.a]))}function NG(t,e){return function(t,e,n){var r,i,a,o,s,l;if(o=new vl,s=mpt(t.e.Tg(),e),r=ZR(t.g,119),TT(),ZR(e,66).Oj())for(a=0;a0&&0==t.a[--t.d];);0==t.a[t.d++]&&(t.e=0)}function SW(t){return t.a?0==t.e.length?t.a.a:t.a.a+""+t.e:t.c}function EW(t){return uN(t.e.Hd().gc()*t.c.Hd().gc(),16,new Vf(t))}function CW(t){return ZR(Vet(t,XK(zGt,_Et,17,t.c.length,0,1)),474)}function PW(t){return ZR(Vet(t,XK(WGt,kEt,10,t.c.length,0,1)),193)}function LW(t,e,n){MB(t),function(t){var e,n,r;for(YH(),JC(t.c,t.a),r=new md(t.c);r.a=0&&g=e)throw um(new Hb(function(t,e){if(t<0)return nvt(ikt,R5(qx(Yjt,1),akt,1,5,["index",g7(t)]));if(e<0)throw um(new Kb(okt+e));return nvt("%s (%s) must be less than size (%s)",R5(qx(Yjt,1),akt,1,5,["index",g7(t),g7(e)]))}(t,e)));return t}function VW(t,e,n){if(t<0||en)throw um(new Hb(function(t,e,n){if(t<0||t>n)return Yct(t,n,"start index");if(e<0||e>n)return Yct(e,n,"end index");return nvt("end index (%s) must not be less than start index (%s)",R5(qx(Yjt,1),akt,1,5,[g7(e),g7(t)]))}(t,e,n)))}function qW(t,e){if(FF(t.a,e),e.d)throw um(new Eb(WMt));e.d=t}function GW(t,e){if(e.$modCount!=t.$modCount)throw um(new zm)}function WW(t,e){return!!CP(e,42)&&Urt(t.a,ZR(e,42))}function YW(t,e){return!!CP(e,42)&&Urt(t.a,ZR(e,42))}function $W(t,e){return!!CP(e,42)&&Urt(t.a,ZR(e,42))}function XW(t){var e;return eC(t)?-0==(e=t)?0:e:function(t){if(mat(t,(IJ(),DFt))<0)return-function(t){return t.l+t.m*WTt+t.h*YTt}(u4(t));return t.l+t.m*WTt+t.h*YTt}(t)}function KW(t){var e;return xU(t),e=new B,Kw(t.a,new Fd(e)),e}function ZW(t){var e;return xU(t),e=new F,Kw(t.a,new jd(e)),e}function JW(t,e){this.a=t,Xh.call(this,t),rG(e,t.gc()),this.b=e}function QW(t){this.e=t,this.b=this.e.a.entries(),this.a=new Array}function tY(t){return new mK((v1(t,Zkt),SQ(e9(e9(5,t),t/10|0))))}function eY(t){return ZR(Vet(t,XK(nWt,TEt,11,t.c.length,0,1)),1943)}function nY(t,e,n){t.d&&sJ(t.d.e,t),t.d=e,t.d&&QN(t.d.e,n,t)}function rY(t,e){!function(t,e){var n,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w;if(b=0,0==e.f.b)for(m=new md(t);m.a2e3&&(xFt=t,wFt=r.setTimeout(E_,10));if(0==bFt++)return function(t){var e,n;if(t.a){n=null;do{e=t.a,t.a=null,n=tct(e,n)}while(t.a);t.a=n}}((mx(),yFt)),!0;return!1}();try{return function(t,e,n){return t.apply(e,n)}(t,e,n)}finally{!function(t){t&&function(t){var e,n;if(t.b){n=null;do{e=t.b,t.b=null,n=tct(e,n)}while(t.b);t.b=n}}((mx(),yFt)),--bFt,t&&-1!=wFt&&(!function(t){r.clearTimeout(t)}(wFt),wFt=-1)}(i)}}function uY(t){var e;e=t.Wg(),this.a=CP(e,69)?ZR(e,69).Zh():e.Kc()}function fY(){ub.call(this),this.j.c=XK(Yjt,akt,1,0,5,1),this.a=-1}function hY(t,e,n,r){this.d=t,this.n=e,this.g=n,this.o=r,this.p=-1}function dY(t,e,n,r){this.e=r,this.d=null,this.c=t,this.a=e,this.b=n}function pY(t,e,n){this.d=new cg(this),this.e=t,this.i=e,this.f=n}function gY(){gY=P,YXt=new tA(bAt,0),$Xt=new tA("TOP_LEFT",1)}function vY(){vY=P,U3t=NU(g7(1),g7(4)),B3t=NU(g7(1),g7(2))}function mY(){mY=P,p7t=G6((nT(),R5(qx(m7t,1),Xkt,551,0,[h7t])))}function yY(){yY=P,f7t=G6((eT(),R5(qx(d7t,1),Xkt,482,0,[u7t])))}function bY(){bY=P,l9t=G6((rT(),R5(qx(f9t,1),Xkt,530,0,[s9t])))}function xY(){xY=P,_Vt=G6((Uk(),R5(qx(EVt,1),Xkt,481,0,[wVt])))}function wY(t,e,n,r){return CP(n,54)?new CO(t,e,n,r):new Ij(t,e,n,r)}function _Y(t,e){return ZR(VL(Kj(ZR(FX(t.k,e),15).Oc(),d$t)),113)}function kY(t,e){return ZR(VL(Zj(ZR(FX(t.k,e),15).Oc(),d$t)),113)}function TY(t){return new DG(function(t,e){var n,r;for(YH(),r=new rm,n=0;n0}function EY(t){return AO(t.b!=t.d.c),t.c=t.b,t.b=t.b.a,++t.a,t.c.c}function CY(t,e){yU(e),zB(t.a,t.c,e),t.c=t.c+1&t.a.length-1,bit(t)}function PY(t,e){yU(e),t.b=t.b-1&t.a.length-1,zB(t.a,t.b,e),bit(t)}function LY(t,e){var n;for(n=t.j.c.length;n0&&fbt(t.g,0,e,0,t.i),e}function FY(t,e){var n;return MT(),!(n=ZR(UB(Rae,t),55))||n.wj(e)}function BY(t){var e;for(e=0;t.Ob();)t.Pb(),e=e9(e,1);return SQ(e)}function UY(t,e){var n;return n=new Ox,t.xd(n),n.a+="..",e.yd(n),n.a}function HY(t,e,n){return dyt(t,e,n,CP(e,99)&&0!=(ZR(e,18).Bb&iMt))}function VY(t,e,n){return function(t,e,n,r){var i,a,o,s,l,c;if(s=new vl,l=mpt(t.e.Tg(),e),i=ZR(t.g,119),TT(),ZR(e,66).Oj())for(o=0;ot.c));o++)i.a>=t.s&&(a<0&&(a=o),s=o);l=(t.s+t.c)/2,a>=0&&(r=function(t,e,n,r){var i,a,o,s,l,c,u,f,h,d,p;if(a=n,n=n&&(r=e,a=(l=(s.c+s.a)/2)-n,s.c<=l-n&&QN(t,r++,new IR(s.c,a)),(o=l+n)<=s.a&&(i=new IR(o,s.a),rG(r,t.c.length),qT(t.c,r,i)))}(e,r,n));return l}(i,n,r),nz(e,function(t,e){t.r=new o5(t.p),function(t,e){t.r=e}(t.r,t),C2(t.r.j,t.j),UH(t.j),jz(t.j,e),jz(t.r.e,e),hB(t),hB(t.r);for(;0!=t.f.c.length;)mP(ZR(TN(t.f,0),129));for(;0!=t.k.c.length;)mP(ZR(TN(t.k,0),129));return t.r}(i,a)),function(t,e,n){var r,i,a,o;for(a=e.q,o=e.r,new pG((rK(),U5t),e,a,1),new pG(U5t,a,o,1),i=new md(n);i.a0;)r+=t.a[n],n-=n&-n;return r}function W$(t,e){var n;for(n=e;n;)OO(t,-n.i,-n.j),n=Eq(n);return t}function Y$(t,e){var n,r;for(yU(e),r=t.Kc();r.Ob();)n=r.Pb(),e.td(n)}function $$(t,e){var n;return new $_(n=e.cd(),t.e.pc(n,ZR(e.dd(),14)))}function X$(t,e,n,r){var i;(i=new O).c=e,i.b=n,i.a=r,r.b=n.a=i,++t.b}function K$(t,e,n){var r;return OG(e,t.c.length),r=t.c[e],t.c[e]=n,r}function Z$(t){return t.c&&t.d?ZG(t.c)+"->"+ZG(t.d):"e_"+FL(t)}function J$(t,e){return($7(t),n_(new AN(t,new FZ(e,t.a)))).sd(mUt)}function Q$(t){return!(!t.c||!t.d)&&(!!t.c.i&&t.c.i==t.d.i)}function tX(t){if(!t.c.Sb())throw um(new jm);return t.a=!0,t.c.Ub()}function eX(t){t.i=0,VT(t.b,null),VT(t.c,null),t.a=null,t.e=null,++t.g}function nX(t){jT.call(this,null==t?lkt:E9(t),CP(t,78)?ZR(t,78):null)}function rX(t){A_t(),cm(this),this.a=new Mk,o6(this,t),jz(this.a,t)}function iX(){LC(this),this.b=new KA(tMt,tMt),this.a=new KA(eMt,eMt)}function aX(t,e){this.c=0,this.b=e,AE.call(this,t,17493),this.a=this.c}function oX(t){sX(),cUt||(this.c=t,this.e=!0,this.a=new rm)}function sX(){sX=P,cUt=!0,sUt=!1,lUt=!1,fUt=!1,uUt=!1}function lX(t,e){return!!CP(e,149)&&FD(t.c,ZR(e,149).c)}function cX(t,e){var n;return n=0,t&&(n+=t.f.a/2),e&&(n+=e.f.a/2),n}function uX(t,e){return ZR(WJ(t.d,e),23)||ZR(WJ(t.e,e),23)}function fX(t){this.b=t,WP.call(this,t),this.a=ZR(H3(this.b.a,4),126)}function hX(t){this.b=t,sO.call(this,t),this.a=ZR(H3(this.b.a,4),126)}function dX(t){return t.t||(t.t=new jv(t),x7(new Wb(t),0,t.t)),t.t}function pX(){var t,e;pX=P,Nw(),e=new Um,yse=e,t=new Vy,bse=t}function gX(t){var e;return t.c||CP(e=t.r,88)&&(t.c=ZR(e,26)),t.c}function vX(t){return iP(t&VTt,t>>22&VTt,t<0?qTt:0)}function mX(t,e){var n,r;n=ZR(function(e,n){MB(e);try{return e.Bc(n)}catch(t){if(CP(t=_5(t),205)||CP(t,173))return null;throw um(t)}}(t.c,e),14),n&&(r=n.gc(),n.$b(),t.d-=r)}function yX(t,e){var n;return!!(n=a6(t,e.cd()))&&VU(n.e,e.dd())}function bX(t,e){return 0==e||0==t.e?t:e>0?Dtt(t,e):Opt(t,-e)}function xX(t,e){return 0==e||0==t.e?t:e>0?Opt(t,e):Dtt(t,-e)}function wX(t){if(Kft(t))return t.c=t.a,t.a.Pb();throw um(new jm)}function _X(t){var e,n;return e=t.c.i,n=t.d.i,e.k==(plt(),UGt)&&n.k==UGt}function kX(t){var e;return l5(e=new _V,t),d4(e,(y_t(),R0t),null),e}function TX(t,e,n){var r;return(r=t.Yg(e))>=0?t._g(r,n,!0):nft(t,e,n)}function MX(t,e,n,r){var i;for(i=0;ie)throw um(new Hb(Yct(t,e,"index")));return t}function qX(t,e,n,r){var i;return function(t,e,n,r,i){var a,o;for(a=0,o=0;ot.d[i.p]&&(n+=G$(t.b,r)*ZR(o.b,19).a,PY(t.a,g7(r)));for(;!ix(t.a);)nQ(t.b,ZR(OF(t.a),19).a)}return n}(t,n)}function sK(t){var e;return t.a||CP(e=t.r,148)&&(t.a=ZR(e,148)),t.a}function lK(t){return t.a?t.e?lK(t.e):null:t}function cK(t,e){return yU(e),t.c=0,"Initial capacity must not be negative")}function yK(){yK=P,uHt=G6((JQ(),R5(qx(fHt,1),Xkt,232,0,[sHt,lHt,cHt])))}function bK(){bK=P,mHt=G6((UZ(),R5(qx(yHt,1),Xkt,461,0,[dHt,hHt,pHt])))}function xK(){xK=P,kHt=G6((PJ(),R5(qx(THt,1),Xkt,462,0,[_Ht,wHt,xHt])))}function wK(){wK=P,gUt=G6((C6(),R5(qx(vUt,1),Xkt,132,0,[hUt,dUt,pUt])))}function _K(){_K=P,Xqt=G6((CJ(),R5(qx(Kqt,1),Xkt,379,0,[Yqt,Wqt,$qt])))}function kK(){kK=P,OGt=G6((n7(),R5(qx(IGt,1),Xkt,423,0,[LGt,PGt,CGt])))}function TK(){TK=P,C$t=G6((P1(),R5(qx(I$t,1),Xkt,314,0,[A$t,M$t,S$t])))}function MK(){MK=P,D$t=G6((f1(),R5(qx(B$t,1),Xkt,337,0,[P$t,O$t,L$t])))}function AK(){AK=P,K$t=G6((r4(),R5(qx(rXt,1),Xkt,450,0,[Y$t,W$t,$$t])))}function SK(){SK=P,e$t=G6((y2(),R5(qx(n$t,1),Xkt,361,0,[t$t,QYt,JYt])))}function EK(){EK=P,WXt=G6((LJ(),R5(qx(XXt,1),Xkt,303,0,[VXt,qXt,HXt])))}function CK(){CK=P,UXt=G6((i5(),R5(qx(GXt,1),Xkt,292,0,[jXt,FXt,NXt])))}function PK(){PK=P,M2t=G6((r8(),R5(qx(P2t,1),Xkt,378,0,[w2t,_2t,k2t])))}function LK(){LK=P,d3t=G6((g3(),R5(qx(v3t,1),Xkt,375,0,[c3t,u3t,f3t])))}function OK(){OK=P,Q2t=G6((w4(),R5(qx(n3t,1),Xkt,339,0,[K2t,X2t,Z2t])))}function IK(){IK=P,l3t=G6((u1(),R5(qx(h3t,1),Xkt,452,0,[o3t,i3t,a3t])))}function DK(){DK=P,O3t=G6((B5(),R5(qx(D3t,1),Xkt,377,0,[C3t,P3t,E3t])))}function RK(){RK=P,_3t=G6((O6(),R5(qx(A3t,1),Xkt,336,0,[b3t,x3t,w3t])))}function zK(){zK=P,S3t=G6((X2(),R5(qx(L3t,1),Xkt,338,0,[M3t,k3t,T3t])))}function NK(){NK=P,K3t=G6((h1(),R5(qx(Z3t,1),Xkt,454,0,[Y3t,$3t,X3t])))}function jK(){jK=P,x6t=G6((b9(),R5(qx(w6t,1),Xkt,442,0,[b6t,m6t,y6t])))}function FK(){FK=P,C6t=G6((E6(),R5(qx(U6t,1),Xkt,380,0,[M6t,A6t,S6t])))}function BK(){BK=P,y8t=G6((m9(),R5(qx(E8t,1),Xkt,381,0,[v8t,m8t,g8t])))}function UK(){UK=P,h8t=G6((p3(),R5(qx(d8t,1),Xkt,293,0,[c8t,u8t,l8t])))}function HK(){HK=P,l7t=G6((y9(),R5(qx(c7t,1),Xkt,437,0,[a7t,o7t,s7t])))}function VK(){VK=P,Nne=G6((P8(),R5(qx(Hne,1),Xkt,334,0,[Rne,Dne,zne])))}function qK(){qK=P,fne=G6((QQ(),R5(qx(vne,1),Xkt,272,0,[sne,lne,cne])))}function GK(t,e){return!t.o&&(t.o=new xZ((l_t(),Uie),hae,t,0)),btt(t.o,e)}function WK(t){return!t.g&&(t.g=new cl),!t.g.c&&(t.g.c=new Nv(t)),t.g.c}function YK(t,e,n){var r,i;if(null!=n)for(r=0;r=i){for(o=1;on||e=0?t._g(n,!0,!0):nft(t,e,!0)}function MZ(){MZ=P,c6t=det(det(dT(new fY,(Fit(),e4t)),(wct(),d4t)),c4t)}function AZ(t){for(;!t.a;)if(!HD(t.c,new Bd(t)))return!1;return!0}function SZ(t){return MB(t),CP(t,198)?ZR(t,198):new oh(t)}function EZ(){var t,e,n,r;EZ=P,y9t=new ps,x9t=new gs,L_t(),t=Aee,e=y9t,n=aee,r=x9t,jU(),b9t=new kb(R5(qx(eFt,1),jkt,42,0,[(mrt(t,e),new $_(t,e)),(mrt(n,r),new $_(n,r))]))}function CZ(){CZ=P,_6t=new RA("LEAF_NUMBER",0),k6t=new RA("NODE_SIZE",1)}function PZ(t){t.a=XK(Xle,STt,25,t.b+1,15,1),t.c=XK(Xle,STt,25,t.b,15,1),t.d=0}function LZ(t,e){if(null==t.g||e>=t.i)throw um(new UE(e,t.i));return t.g[e]}function OZ(t,e,n){if(w6(t,n),null!=n&&!t.wj(n))throw um(new Pm);return n}function IZ(t){var e;if(t.Ek())for(e=t.i-1;e>=0;--e)a0(t,e);return jY(t)}function DZ(t){var e,n;if(!t.b)return null;for(n=t.b;e=n.a[0];)n=e;return n}function RZ(t,e){var n;return t$(e),(n=oJ(t.slice(0,e),t)).length=e,n}function zZ(t,e,n,r){$H(),r=r||LBt,$ct(t.slice(e,n),t,e,n,-e,r)}function NZ(t,e,n,r,i){return e<0?nft(t,n,r):ZR(n,66).Nj().Pj(t,t.yh(),e,r,i)}function jZ(t,e){if(e.a)throw um(new Eb(WMt));FF(t.a,e),e.a=t,!t.j&&(t.j=e)}function FZ(t,e){SE.call(this,e.rd(),-16449&e.qd()),yU(t),this.a=t,this.c=e}function BZ(t,e){var n,r;return r=e/t.c.Hd().gc()|0,n=e%t.c.Hd().gc(),dK(t,r,n)}function UZ(){UZ=P,dHt=new lM(_At,0),hHt=new lM(bAt,1),pHt=new lM(kAt,2)}function HZ(){HZ=P,ZBt=new FT("All",0),JBt=new CC,QBt=new uP,tUt=new PC}function VZ(){VZ=P,nUt=G6((HZ(),R5(qx(eUt,1),Xkt,297,0,[ZBt,JBt,QBt,tUt])))}function qZ(){qZ=P,xGt=G6((F5(),R5(qx(AGt,1),Xkt,405,0,[gGt,yGt,vGt,mGt])))}function GZ(){GZ=P,eVt=G6((n5(),R5(qx(nVt,1),Xkt,406,0,[tVt,ZHt,JHt,QHt])))}function WZ(){WZ=P,sVt=G6((Snt(),R5(qx(lVt,1),Xkt,323,0,[iVt,rVt,aVt,oVt])))}function YZ(){YZ=P,bVt=G6((Ent(),R5(qx(xVt,1),Xkt,394,0,[vVt,gVt,mVt,yVt])))}function $Z(){$Z=P,i4t=G6((Fit(),R5(qx(a4t,1),Xkt,393,0,[t4t,e4t,n4t,r4t])))}function XZ(){XZ=P,TYt=G6((N5(),R5(qx(MYt,1),Xkt,360,0,[kYt,wYt,_Yt,xYt])))}function KZ(){KZ=P,s8t=G6((Vrt(),R5(qx(f8t,1),Xkt,340,0,[o8t,i8t,a8t,r8t])))}function ZZ(){ZZ=P,FYt=G6((j5(),R5(qx(BYt,1),Xkt,411,0,[RYt,zYt,NYt,jYt])))}function JZ(){JZ=P,L2t=G6((Vnt(),R5(qx(N2t,1),Xkt,197,0,[E2t,C2t,S2t,A2t])))}function QZ(){QZ=P,Sie=G6((S6(),R5(qx(Eie,1),Xkt,396,0,[Tie,Mie,kie,Aie])))}function tJ(){tJ=P,Vne=G6((Uit(),R5(qx(Qne,1),Xkt,285,0,[Une,jne,Fne,Bne])))}function eJ(){eJ=P,mne=G6((v9(),R5(qx(Tne,1),Xkt,218,0,[gne,dne,hne,pne])))}function nJ(){nJ=P,xie=G6((stt(),R5(qx(wie,1),Xkt,311,0,[bie,vie,yie,mie])))}function rJ(){rJ=P,rie=G6((Ltt(),R5(qx(die,1),Xkt,374,0,[eie,nie,tie,Qre])))}function iJ(){iJ=P,tbt(),sle=tMt,ole=eMt,cle=new rd(tMt),lle=new rd(eMt)}function aJ(){aJ=P,oXt=new $M(dEt,0),aXt=new $M("IMPROVE_STRAIGHTNESS",1)}function oJ(t,e){return 10!=KJ(e)&&R5(X4(e),e.hm,e.__elementTypeId$,KJ(e),t),t}function sJ(t,e){var n;return-1!=(n=uJ(t,e,0))&&(jX(t,n),!0)}function lJ(t,e){var n;return(n=ZR(GX(t.e,e),387))?(Fz(n),n.e):null}function cJ(t){var e;return eC(t)&&(e=0-t,!isNaN(e))?e:O3(u4(t))}function uJ(t,e,n){for(;n0?(t.f[c.p]=h/(c.e.c.length+c.g.c.length),t.c=r.Math.min(t.c,t.f[c.p]),t.b=r.Math.max(t.b,t.f[c.p])):s&&(t.f[c.p]=h)}}(t,e,n),0==t.a.c.length||function(t,e){var n,r,i,a,o,s,l,c,u,f;for(c=t.e[e.c.p][e.p]+1,l=e.c.a.c.length+1,s=new md(t.a);s.a=0?Int(t,n,!0,!0):nft(t,e,!0)}function FJ(t,e){var n,r;return Jk(),n=AY(t),r=AY(e),!!n&&!!r&&!Tnt(n.k,r.k)}function BJ(t){(this.q?this.q:(YH(),YH(),EBt)).Ac(t.q?t.q:(YH(),YH(),EBt))}function UJ(t,e){fVt=new ne,hVt=e,ZR((uVt=t).b,65),KK(uVt,fVt,null),Vbt(uVt)}function HJ(t,e,n){var r;return r=t.g[e],FP(t,e,t.oi(e,n)),t.gi(e,n,r),t.ci(),r}function VJ(t,e){var n;return(n=t.Xc(e))>=0&&(t.$c(n),!0)}function qJ(t){var e;return t.d!=t.r&&(e=hat(t),t.e=!!e&&e.Cj()==Bzt,t.d=e),t.e}function GJ(t,e){var n;for(MB(t),MB(e),n=!1;e.Ob();)n|=t.Fc(e.Pb());return n}function WJ(t,e){var n;return(n=ZR(UB(t.e,e),387))?(PP(t,n),n.e):null}function YJ(t){var e,n;return e=t/60|0,0==(n=t%60)?""+e:e+":"+n}function $J(t,e){return $7(t),new AN(t,new XD(new JX(e,t.a)))}function XJ(t,e){var n=t.a[e],r=(i4(),CFt)[typeof n];return r?r(n):Q6(typeof n)}function KJ(t){return null==t.__elementTypeCategory$?10:t.__elementTypeCategory$}function ZJ(t){var e;return null!=(e=0==t.b.c.length?null:TN(t.b,0))&&n2(t,0),e}function JJ(t,e){for(;e[0]=0;)++e[0]}function QJ(t,e){this.e=e,this.a=u5(t),this.a<54?this.f=XW(t):this.c=Yet(t)}function tQ(t,e,n,r){R_t(),tm.call(this,26),this.c=t,this.a=e,this.d=n,this.b=r}function eQ(t,e,n){var r,i;for(r=10,i=0;it.a[r]&&(r=n);return r}function sQ(t,e){return 0==e.e||0==t.e?bBt:(kft(),Zdt(t,e))}function lQ(){lQ=P,kGt=new Me,TGt=new ke,wGt=new Pe,_Gt=new Le,MGt=new Oe}function cQ(){cQ=P,DUt=new aM("BY_SIZE",0),RUt=new aM("BY_SIZE_AND_SHAPE",1)}function uQ(){uQ=P,QVt=new fM("EADES",0),tqt=new fM("FRUCHTERMAN_REINGOLD",1)}function fQ(){fQ=P,H$t=new GM("READING_DIRECTION",0),V$t=new GM("ROTATION",1)}function hQ(){hQ=P,U$t=G6((xrt(),R5(qx(q$t,1),Xkt,335,0,[z$t,R$t,j$t,F$t,N$t])))}function dQ(){dQ=P,j2t=G6((srt(),R5(qx(Y2t,1),Xkt,315,0,[z2t,I2t,D2t,O2t,R2t])))}function pQ(){pQ=P,WYt=G6((Mot(),R5(qx(ZYt,1),Xkt,363,0,[HYt,qYt,GYt,VYt,UYt])))}function gQ(){gQ=P,sZt=G6((g9(),R5(qx(NQt,1),Xkt,163,0,[aZt,eZt,nZt,rZt,iZt])))}function vQ(){vQ=P,M7t=G6((Olt(),R5(qx(j7t,1),Xkt,316,0,[b7t,x7t,k7t,w7t,_7t])))}function mQ(){mQ=P,C9t=G6((Zet(),R5(qx(j9t,1),Xkt,175,0,[S9t,A9t,T9t,E9t,M9t])))}function yQ(){yQ=P,r7t=G6((Ndt(),R5(qx(i7t,1),Xkt,355,0,[J8t,Z8t,t7t,Q8t,e7t])))}function bQ(){bQ=P,aGt=G6((Ist(),R5(qx(sGt,1),Xkt,356,0,[tGt,eGt,nGt,rGt,iGt])))}function xQ(){xQ=P,one=G6((e7(),R5(qx(une,1),Xkt,103,0,[ine,rne,nne,ene,ane])))}function wQ(){wQ=P,sre=G6((Jet(),R5(qx(pre,1),Xkt,249,0,[rre,are,ere,nre,ire])))}function _Q(){_Q=P,Wre=G6((Pwt(),R5(qx(Jre,1),pEt,61,0,[Vre,Mre,Tre,Hre,qre])))}function kQ(t,e){var n;return(n=ZR(UB(t.a,e),134))||(n=new Jt,RU(t.a,e,n)),n}function TQ(t){var e;return!!(e=ZR(Ost(t,(O_t(),QXt)),305))&&e.a==t}function MQ(t){var e;return!!(e=ZR(Ost(t,(O_t(),QXt)),305))&&e.i==t}function AQ(t,e){return yU(e),nF(t),!!t.d.Ob()&&(e.td(t.d.Pb()),!0)}function SQ(t){return w8(t,Q_t)>0?Q_t:w8(t,nTt)<0?nTt:$N(t)}function EQ(t){return t<3?(v1(t,Wkt),t+1):t=0&&e=-.01&&t.a<=EAt&&(t.a=0),t.b>=-.01&&t.b<=EAt&&(t.b=0),t}function OQ(t,e){return e==(dR(),dR(),HBt)?t.toLocaleLowerCase():t.toLowerCase()}function IQ(t){return(0!=(2&t.i)?"interface ":0!=(1&t.i)?"":"class ")+(cI(t),t.o)}function DQ(t){var e;e=new Gy,fZ((!t.q&&(t.q=new bF(foe,t,11,10)),t.q),e)}function RQ(t){this.g=t,this.f=new rm,this.a=r.Math.min(this.g.c.c,this.g.d.c)}function zQ(t){this.b=new rm,this.a=new rm,this.c=new rm,this.d=new rm,this.e=t}function NQ(t,e){this.a=new im,this.e=new im,this.b=(r8(),k2t),this.c=t,this.b=e}function jQ(t,e,n){cD.call(this),ZQ(this),this.a=t,this.c=n,this.b=e.d,this.f=e.e}function FQ(t){this.d=t,this.c=t.c.vc().Kc(),this.b=null,this.a=null,this.e=(mb(),lFt)}function BQ(t){if(t<0)throw um(new Kb("Illegal Capacity: "+t));this.g=this.ri(t)}function UQ(t){var e;MO(!!t.c),e=t.c.a,XQ(t.d,t.c),t.b==t.c?t.b=e:--t.a,t.c=null}function HQ(t,e){var n;return $7(t),n=new FH(t,t.a.rd(),4|t.a.qd(),e),new AN(t,n)}function VQ(t,e){var n;for(n=t.Kc();n.Ob();)d4(ZR(n.Pb(),70),(O_t(),kKt),e)}function qQ(t){var e;return(e=ex(fI(Ost(t,(y_t(),k0t)))))<0&&d4(t,k0t,e=0),e}function GQ(t,e,n,r,i,a){var o;Zq(o=kX(r),i),Kq(o,a),Zut(t.a,r,new _R(o,e,n.f))}function WQ(t,e){var n;if(!(n=Qdt(t.Tg(),e)))throw um(new Kb(wDt+e+TDt));return n}function YQ(t,e){var n;for(n=t;Eq(n);)if((n=Eq(n))==e)return!0;return!1}function $Q(t,e){var n,r,i,a;for(yU(e),i=0,a=(r=t.c).length;i>16!=6?null:ZR(Hft(t),235)}(t),e&&!e.kh()&&(t.w=e),e)}function i0(t){var e;return null==t?null:function(t,e){var n,r,i,a,o;if(null==t)return null;for(o=XK($le,fTt,25,2*e,15,1),r=0,i=0;r>4&15,a=15&t[r],o[i++]=sae[n],o[i++]=sae[a];return Xtt(o,0,o.length)}(e=ZR(t,190),e.length)}function a0(t,e){if(null==t.g||e>=t.i)throw um(new UE(e,t.i));return t.li(e,t.g[e])}function o0(t){var e,n;for(e=t.a.d.j,n=t.c.d.j;e!=n;)t2(t.b,e),e=L7(e);t2(t.b,e)}function s0(t,e){var n,r,i,a;for(i=0,a=(r=t.d).length;i=14&&e<=16)),t}function f0(t,e,n){var r=function e(){return t.apply(e,arguments)};return e.apply(r,n),r}function h0(t,e,n){var r,i;r=e;do{i=ex(t.p[r.p])+n,t.p[r.p]=i,r=t.a[r.p]}while(r!=e)}function d0(t,e){var n,r;r=t.a,n=function(t,e,n){var r,i;i=t.a,t.a=e,0!=(4&t.Db)&&0==(1&t.Db)&&(r=new mF(t,1,5,i,t.a),n?Eot(n,r):n=r);return n}(t,e,null),r!=e&&!t.e&&(n=Yxt(t,e,n)),n&&n.Fi()}function p0(t,e){return YC(),l1(eTt),r.Math.abs(t-e)<=eTt||t==e||isNaN(t)&&isNaN(e)}function g0(t,e){return YC(),l1(eTt),r.Math.abs(t-e)<=eTt||t==e||isNaN(t)&&isNaN(e)}function v0(t,e){return function(t){return t?t.i:null}(j2(t,e,$N(n9(Vkt,HU($N(n9(null==e?0:$4(e),qkt)),15)))))}function m0(){m0=P,YGt=G6((plt(),R5(qx($Gt,1),Xkt,267,0,[qGt,VGt,UGt,GGt,HGt,BGt])))}function y0(){y0=P,mte=G6((vot(),R5(qx(tne,1),Xkt,291,0,[vte,gte,pte,hte,fte,dte])))}function b0(){b0=P,Z9t=G6((qnt(),R5(qx(ute,1),Xkt,248,0,[q9t,Y9t,$9t,X9t,G9t,W9t])))}function x0(){x0=P,x$t=G6((yct(),R5(qx(k$t,1),Xkt,227,0,[v$t,y$t,g$t,m$t,b$t,p$t])))}function w0(){w0=P,TXt=G6((llt(),R5(qx(RXt,1),Xkt,275,0,[wXt,yXt,_Xt,xXt,bXt,mXt])))}function _0(){_0=P,vXt=G6((Xat(),R5(qx(kXt,1),Xkt,274,0,[hXt,fXt,pXt,uXt,dXt,cXt])))}function k0(){k0=P,x2t=G6((est(),R5(qx(T2t,1),Xkt,313,0,[y2t,v2t,p2t,g2t,b2t,m2t])))}function T0(){T0=P,iXt=G6((ylt(),R5(qx(sXt,1),Xkt,276,0,[J$t,Z$t,tXt,Q$t,nXt,eXt])))}function M0(){M0=P,p4t=G6((wct(),R5(qx(g4t,1),Xkt,327,0,[d4t,c4t,f4t,u4t,h4t,l4t])))}function A0(){A0=P,kre=G6((Put(),R5(qx(Gre,1),Xkt,273,0,[xre,yre,bre,mre,vre,wre])))}function S0(){S0=P,Mne=G6((bst(),R5(qx(Ine,1),Xkt,312,0,[_ne,xne,kne,yne,wne,bne])))}function E0(t,e){var n;n=t.a,t.a=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new o$(t,0,n,t.a))}function C0(t,e){var n;n=t.b,t.b=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new o$(t,1,n,t.b))}function P0(t,e){var n;n=t.b,t.b=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new o$(t,3,n,t.b))}function L0(t,e){var n;n=t.f,t.f=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new o$(t,3,n,t.f))}function O0(t,e){var n;n=t.g,t.g=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new o$(t,4,n,t.g))}function I0(t,e){var n;n=t.i,t.i=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new o$(t,5,n,t.i))}function D0(t,e){var n;n=t.j,t.j=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new o$(t,6,n,t.j))}function R0(t,e){var n;n=t.j,t.j=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new o$(t,1,n,t.j))}function z0(t,e){var n;n=t.c,t.c=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new o$(t,4,n,t.c))}function N0(t,e){var n;n=t.k,t.k=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new o$(t,2,n,t.k))}function j0(t,e){var n;n=t.d,t.d=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new s$(t,2,n,t.d))}function F0(t,e){var n;n=t.s,t.s=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new s$(t,4,n,t.s))}function B0(t,e){var n;n=t.t,t.t=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new s$(t,5,n,t.t))}function U0(t,e){var n;n=t.F,t.F=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,5,n,e))}function H0(t,e){var n;return(n=ZR(UB((MT(),Rae),t),55))?n.xj(e):XK(Yjt,akt,1,e,5,1)}function V0(t,e){var n;return e in t.a&&(n=_q(t,e).he())?n.a:null}function q0(t,e){var n,r;return Rw(),r=new ll,!!e&&Xdt(r,e),R1(n=r,t),n}function G0(t,e,n){if(w6(t,n),!t.Bk()&&null!=n&&!t.wj(n))throw um(new Pm);return n}function W0(t,e){return t.n=e,t.n?(t.f=new rm,t.e=new rm):(t.f=null,t.e=null),t}function Y0(t,e,n,r,i,a){var o;return n1(n,o=TB(t,e)),o.i=i?8:0,o.f=r,o.e=i,o.g=a,o}function $0(t,e,n,r,i){this.d=e,this.k=r,this.f=i,this.o=-1,this.p=1,this.c=t,this.a=n}function X0(t,e,n,r,i){this.d=e,this.k=r,this.f=i,this.o=-1,this.p=2,this.c=t,this.a=n}function K0(t,e,n,r,i){this.d=e,this.k=r,this.f=i,this.o=-1,this.p=6,this.c=t,this.a=n}function Z0(t,e,n,r,i){this.d=e,this.k=r,this.f=i,this.o=-1,this.p=7,this.c=t,this.a=n}function J0(t,e,n,r,i){this.d=e,this.j=r,this.e=i,this.o=-1,this.p=4,this.c=t,this.a=n}function Q0(t,e){var n,r,i,a;for(i=0,a=(r=e).length;i=0),function(t,e){var n,r,i,a;return r=t.a.length-1,n=e-t.b&r,a=t.c-e&r,i=t.c-t.b&r,kO(n=a?(function(t,e){var n,r;n=t.a.length-1,t.c=t.c-1&n;for(;e!=t.c;)r=e+1&n,zB(t.a,e,t.a[r]),e=r;zB(t.a,t.c,null)}(t,e),-1):(function(t,e){var n,r;n=t.a.length-1;for(;e!=t.b;)r=e-1&n,zB(t.a,e,t.a[r]),e=r;zB(t.a,t.b,null),t.b=t.b+1&n}(t,e),1)}(t.d,t.c)<0&&(t.a=t.a-1&t.d.a.length-1,t.b=t.d.c),t.c=-1}function s1(t){return t.a<54?t.f<0?-1:t.f>0?1:0:(!t.c&&(t.c=J6(t.f)),t.c).e}function l1(t){if(!(t>=0))throw um(new Kb("tolerance ("+t+") must be >= 0"));return t}function c1(){return _9t||u6(_9t=new tvt,R5(qx(WUt,1),akt,130,0,[new Of])),_9t}function u1(){u1=P,o3t=new cA(SAt,0),i3t=new cA("INPUT",1),a3t=new cA("OUTPUT",2)}function f1(){f1=P,P$t=new VM("ARD",0),O$t=new VM("MSD",1),L$t=new VM("MANUAL",2)}function h1(){h1=P,Y3t=new gA("BARYCENTER",0),$3t=new gA(BEt,1),X3t=new gA(UEt,2)}function d1(t,e){var n;if(n=t.gc(),e<0||e>n)throw um(new _D(e,n));return new $D(t,e)}function p1(t,e){var n;return CP(e,42)?t.c.Mc(e):(n=btt(t,e),eet(t,e),n)}function g1(t,e,n){return o8(t,e),k2(t,n),F0(t,0),B0(t,1),h7(t,!0),c7(t,!0),t}function v1(t,e){if(t<0)throw um(new Kb(e+" cannot be negative but was: "+t));return t}function m1(t,e){var n,r;for(n=0,r=t.gc();n0?ZR(TN(n.a,r-1),10):null}function O1(t,e){var n;n=t.k,t.k=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,2,n,t.k))}function I1(t,e){var n;n=t.f,t.f=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,8,n,t.f))}function D1(t,e){var n;n=t.i,t.i=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,7,n,t.i))}function R1(t,e){var n;n=t.a,t.a=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,8,n,t.a))}function z1(t,e){var n;n=t.b,t.b=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,0,n,t.b))}function N1(t,e){var n;n=t.b,t.b=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,0,n,t.b))}function j1(t,e){var n;n=t.c,t.c=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,1,n,t.c))}function F1(t,e){var n;n=t.c,t.c=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,1,n,t.c))}function B1(t,e){var n;n=t.c,t.c=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,4,n,t.c))}function U1(t,e){var n;n=t.d,t.d=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,1,n,t.d))}function H1(t,e){var n;n=t.D,t.D=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,2,n,t.D))}function V1(t,e){t.r>0&&t.c0&&0!=t.g&&V1(t.i,e/t.r*t.i.d))}function q1(t,e){return Rpt(t.e,e)?(TT(),qJ(e)?new aN(e,t):new XS(e,t)):new JS(e,t)}function G1(t,e){return function(t){return t?t.g:null}(F2(t.a,e,$N(n9(Vkt,HU($N(n9(null==e?0:$4(e),qkt)),15)))))}function W1(t){var e;return(t=r.Math.max(t,2))>(e=_4(t))?(e<<=1)>0?e:Ykt:e}function Y1(t){switch(wL(3!=t.e),t.e){case 2:return!1;case 0:return!0}return function(t){return t.e=3,t.d=t.Yb(),2!=t.e&&(t.e=0,!0)}(t)}function $1(t,e){var n;return!!CP(e,8)&&(n=ZR(e,8),t.a==n.a&&t.b==n.b)}function X1(t,e,n){var r,i;return i=e>>5,r=31&e,qG(Wj(t.n[n][i],$N(qj(r,1))),3)}function K1(t,e){var n;n=t.b,t.b=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,21,n,t.b))}function Z1(t,e){var n;n=t.d,t.d=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,11,n,t.d))}function J1(t,e){var n;n=t.j,t.j=e,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,13,n,t.j))}function Q1(t,e,n){var r,i,a;for(a=t.a.length-1,i=t.b,r=0;r0?e-1:e,mw(function(t,e){return t.j=e,t}(W0(Rz(new ob,n),t.n),t.j),t.k)}(t,t.g),jz(t.a,n),n.i=t,t.d=e,n)}function Q2(t,e,n){ast(n,"DFS Treeifying phase",1),function(t,e){var n,r,i;for(i=e.b.b,t.a=new Mk,t.b=XK(Xle,STt,25,i,15,1),n=0,r=tnt(e.b,0);r.b!=r.d.c;)ZR(EY(r),86).g=n++}(t,e),function(t,e){var n,r,i,a,o;for(o=ZR(Ost(e,(oht(),K4t)),425),a=tnt(e.b,0);a.b!=a.d.c;)if(i=ZR(EY(a),86),0==t.b[i.g]){switch(o.g){case 0:wrt(t,i);break;case 1:mht(t,i)}t.b[i.g]=2}for(r=tnt(t.a,0);r.b!=r.d.c;)X9((n=ZR(EY(r),188)).b.d,n,!0),X9(n.c.b,n,!0);d4(e,(oxt(),C4t),t.a)}(t,e),t.a=null,t.b=null,jlt(n)}function t3(t,e,n){this.g=t,this.d=e,this.e=n,this.a=new rm,function(t){var e,n,r,i,a;for(a=X8(t.d,t.e),i=a.Kc();i.Ob();)for(r=ZR(i.Pb(),11),n=new md(t.e==(Pwt(),qre)?r.e:r.g);n.a0&&(this.g=this.ri(this.i+(this.i/8|0)+1),t.Qc(this.g))}function n3(t,e){Cz.call(this,tse,t,e),this.b=this,this.a=mpt(t.Tg(),CQ(this.e.Tg(),this.c))}function r3(t,e){var n,r;for(yU(e),r=e.vc().Kc();r.Ob();)n=ZR(r.Pb(),42),t.zc(n.cd(),n.dd())}function i3(t){var e;if(-2==t.b){if(0==t.e)e=-1;else for(e=0;0==t.a[e];e++);t.b=e}return t.b}function a3(t){switch(t.g){case 2:return Pwt(),qre;case 4:return Pwt(),Tre;default:return t}}function o3(t){switch(t.g){case 1:return Pwt(),Hre;case 3:return Pwt(),Mre;default:return t}}function s3(t,e){return TL(),oE(t)?BX(t,hI(e)):aE(t)?$j(t,fI(e)):iE(t)?Yj(t,uI(e)):t.wd(e)}function l3(t,e){e.q=t,t.d=r.Math.max(t.d,e.r),t.b+=e.d+(0==t.a.c.length?0:t.c),nz(t.a,e)}function c3(t,e){var n,r,i,a;return i=t.c,n=t.c+t.b,a=t.d,r=t.d+t.a,e.a>i&&e.aa&&e.b0||u.j==qre&&u.e.c.length-u.g.c.length<0)){e=!1;break}for(i=new md(u.g);i.a=0x8000000000000000)return IJ(),LFt;i=!1,t<0&&(i=!0,t=-t);r=0,t>=YTt&&(t-=(r=lq(t/YTt))*YTt);n=0,t>=WTt&&(t-=(n=lq(t/WTt))*WTt);return e=lq(t),a=iP(e,n,r),i&&L4(a),a}(t))}function N3(t,e){var n,r,i;for(n=t.c.Ee(),i=e.Kc();i.Ob();)r=i.Pb(),t.a.Od(n,r);return t.b.Kb(n)}function j3(t,e){var n,r,i;if(null!=(n=t.Jg())&&t.Mg())for(r=0,i=n.length;r1||t.Ob())return++t.a,t.g=0,e=t.i,t.Ob(),e;throw um(new jm)}function $3(t){var e,n,r;return n=0,(r=t)<0&&(r+=YTt,n=qTt),e=lq(r/WTt),iP(lq(r-e*WTt),e,n)}function X3(t){var e,n,r;for(r=0,n=new Tk(t.a);n.a>22),i=t.h-e.h+(r>>22),iP(n&VTt,r&VTt,i&qTt)}function w5(t){var e;return t<128?(!(e=(gN(),HFt)[t])&&(e=HFt[t]=new nd(t)),e):new nd(t)}function _5(t){var e;return CP(t,78)?t:((e=t&&t.__java$exception)||Am(e=new t8(t)),e)}function k5(t){if(CP(t,186))return ZR(t,118);if(t)return null;throw um(new Qb(bRt))}function T5(t,e){if(null==e)return!1;for(;t.a!=t.b;)if(K8(e,p8(t)))return!0;return!1}function M5(t){return!!t.a.Ob()||t.a==t.d&&(t.a=new QW(t.e.f),t.a.Ob())}function A5(t,e){var n;return 0!=(n=e.Pc()).length&&(cz(t.c,t.c.length,n),!0)}function S5(t,e){var n;for(n=new md(t.b);n.a=0,"Negative initial capacity"),_z(e>=0,"Non-positive load factor"),WF(this)}function o4(t,e,n){return!(t>=128)&&uE(t<64?qG(qj(1,t),n):qG(qj(1,t-64),e),0)}function s4(t,e){return!(!t||!e||t==e)&&(x9(t.b.c,e.b.c+e.b.b)<0&&x9(e.b.c,t.b.c+t.b.b)<0)}function l4(t){var e,n,r;return n=t.n,r=t.o,e=t.d,new bH(n.a-e.b,n.b-e.d,r.a+(e.b+e.c),r.b+(e.d+e.a))}function c4(t){var e,n;for(null==t.j&&(t.j=(OV(),function(t){var e,n,i,a;for(e="Sz",n="ez",a=r.Math.min(t.length,5),i=a-1;i>=0;i--)if(FD(t[i].d,e)||FD(t[i].d,n)){t.length>=i+1&&t.splice(0,i+1);break}return t}(_Ft.ce(t)))),e=0,n=t.j.length;e(r=t.gc()))throw um(new _D(e,r));return t.hi()&&(n=Pq(t,n)),t.Vh(e,n)}function h4(t,e,n){return null==n?(!t.q&&(t.q=new im),GX(t.q,e)):(!t.q&&(t.q=new im),RU(t.q,e,n)),t}function d4(t,e,n){return null==n?(!t.q&&(t.q=new im),GX(t.q,e)):(!t.q&&(t.q=new im),RU(t.q,e,n)),t}function p4(t){var e,n;return l5(n=new YX,t),d4(n,(g2(),Aqt),t),function(t,e,n){var i,a,o,s,l;for(i=0,o=new WP((!t.a&&(t.a=new bF(rae,t,10,11)),t.a));o.e!=o.i.gc();)s="",0==(!(a=ZR(fnt(o),33)).n&&(a.n=new bF(nae,a,1,7)),a.n).i||(s=ZR(a0((!a.n&&(a.n=new bF(nae,a,1,7)),a.n),0),137).a),l5(l=new qB(s),a),d4(l,(g2(),Aqt),a),l.b=i++,l.d.a=a.i+a.g/2,l.d.b=a.j+a.f/2,l.e.a=r.Math.max(a.g,1),l.e.b=r.Math.max(a.f,1),nz(e.e,l),Jct(n.f,a,l),ZR(kht(a,(Vgt(),dqt)),98)==(jot(),dre)&&hre}(t,n,e=new im),function(t,e,n){var i,a,o,s,l,c,f,h;for(c=new WP((!t.a&&(t.a=new bF(rae,t,10,11)),t.a));c.e!=c.i.gc();)for(a=new Oj(dL(ddt(l=ZR(fnt(c),33)).a.Kc(),new u));Kft(a);){if(!(i=ZR(wX(a),79)).b&&(i.b=new LD(Xie,i,4,7)),!(i.b.i<=1&&(!i.c&&(i.c=new LD(Xie,i,5,8)),i.c.i<=1)))throw um(new dx("Graph must not contain hyperedges."));if(!jft(i)&&l!=ist(ZR(a0((!i.c&&(i.c=new LD(Xie,i,5,8)),i.c),0),82)))for(l5(f=new iD,i),d4(f,(g2(),Aqt),i),Ch(f,ZR(nE(zV(n.f,l)),144)),Ph(f,ZR(UB(n,ist(ZR(a0((!i.c&&(i.c=new LD(Xie,i,5,8)),i.c),0),82))),144)),nz(e.c,f),s=new WP((!i.n&&(i.n=new bF(nae,i,1,7)),i.n));s.e!=s.i.gc();)l5(h=new p$(f,(o=ZR(fnt(s),137)).a),o),d4(h,Aqt,o),h.e.a=r.Math.max(o.g,1),h.e.b=r.Math.max(o.f,1),Kyt(h),nz(e.d,h)}}(t,n,e),n}function g4(t,e){var n,r,i;for(n=!1,r=t.a[e].length,i=0;i>=1);return e}function k4(t){var e,n;return 32==(n=Jut(t.h))?32==(e=Jut(t.m))?Jut(t.l)+32:e+20-10:n-12}function T4(t){var e;return null==(e=t.a[t.b])?null:(zB(t.a,t.b,null),t.b=t.b+1&t.a.length-1,e)}function M4(t){var e,n;return e=t.t-t.k[t.o.p]*t.d+t.j[t.o.p]>t.f,n=t.u+t.e[t.o.p]*t.d>t.f*t.s*t.d,e||n}function A4(t,e,n){var r,i;return r=new tZ(e,n),i=new V,t.b=qpt(t,t.b,r,i),i.b||++t.c,t.b.b=!1,i.d}function S4(t,e,n){var r,i,a;for(a=0,i=X8(e,n).Kc();i.Ob();)r=ZR(i.Pb(),11),RU(t.c,r,g7(a++))}function E4(t){var e,n;for(n=new md(t.a.b);n.an&&(n=t[e]);return n}function R4(t,e,n){var r;return Ept(t,e,r=new rm,(Pwt(),Tre),!0,!1),Ept(t,n,r,qre,!1,!1),r}function z4(t,e,n){var r,i;return null,i=aY(e,"labels"),function(t,e,n){var r,i,a,o;if(n)for(i=((r=new Dj(n.a.length)).b-r.a)*r.c<0?(ST(),Gle):new lL(r);i.Ob();)(a=oY(n,ZR(i.Pb(),19).a))&&(o=q0(lY(a,YDt),e),RU(t.f,o,a),oRt in a.a&&O1(o,lY(a,oRt)),rst(a,o),iut(a,o))}((r=new LS(t,n)).a,r.b,i),i}function N4(t,e){var n;for(n=0;n1||e>=0&&t.b<3)}function W4(t){var e,n;for(e=new Dy,n=tnt(t,0);n.b!=n.d.c;)LO(e,0,new fC(ZR(EY(n),8)));return e}function Y4(t){var e;for(e=new md(t.a.b);e.a=t.b.c.length||(h6(t,2*e+1),(n=2*e+2)=0&&t[r]===e[r];r--);return r<0?0:IT(qG(t[r],cMt),qG(e[r],cMt))?-1:1}function g6(t,e){var n,r;return r=ZR(H3(t.a,4),126),n=XK(Pae,xzt,415,e,0,1),null!=r&&fbt(r,0,n,0,r.length),n}function v6(t,e){var n;return n=new Ngt(0!=(256&t.f),t.i,t.a,t.d,0!=(16&t.f),t.j,t.g,e),null!=t.e||(n.c=t),n}function m6(t,e,n,r,i){var a,o;for(o=n;o<=i;o++)for(a=e;a<=r;a++)if(Rrt(t,a,o))return!0;return!1}function y6(t,e,n){var r,i,a,o;for(yU(n),o=!1,a=t.Zc(e),i=n.Kc();i.Ob();)r=i.Pb(),a.Rb(r),o=!0;return o}function b6(t,e,n){var r,i;for(i=n.Kc();i.Ob();)if(r=ZR(i.Pb(),42),t.re(e,r.dd()))return!0;return!1}function x6(t,e,n){return t.d[e.p][n.p]||(!function(t,e,n){if(t.e)switch(t.b){case 1:!function(t,e,n){t.i=0,t.e=0,e!=n&&H4(t,e,n)}(t.c,e,n);break;case 0:!function(t,e,n){t.i=0,t.e=0,e!=n&&V4(t,e,n)}(t.c,e,n)}else ZY(t.c,e,n);t.a[e.p][n.p]=t.c.i,t.a[n.p][e.p]=t.c.e}(t,e,n),t.d[e.p][n.p]=!0,t.d[n.p][e.p]=!0),t.a[e.p][n.p]}function w6(t,e){if(!t.ai()&&null==e)throw um(new Kb("The 'no null' constraint is violated"));return e}function _6(t,e){null==t.D&&null!=t.B&&(t.D=t.B,t.B=null),H1(t,null==e?null:(yU(e),e)),t.C&&t.yk(null)}function k6(t,e){return!(!t||t==e||!PO(e,(O_t(),xKt)))&&ZR(Ost(e,(O_t(),xKt)),10)!=t}function T6(t){switch(t.i){case 2:return!0;case 1:return!1;case-1:++t.c;default:return t.pl()}}function M6(t){switch(t.i){case-2:return!0;case-1:return!1;case 1:--t.c;default:return t.ql()}}function A6(t){yq.call(this,"The given string does not match the expected format for individual spacings.",t)}function S6(){S6=P,Tie=new xS("ELK",0),Mie=new xS("JSON",1),kie=new xS("DOT",2),Aie=new xS("SVG",3)}function E6(){E6=P,M6t=new zA(dEt,0),A6t=new zA("RADIAL_COMPACTION",1),S6t=new zA("WEDGE_COMPACTION",2)}function C6(){C6=P,hUt=new BT("CONCURRENT",0),dUt=new BT("IDENTITY_FINISH",1),pUt=new BT("UNORDERED",2)}function P6(){P6=P,Uk(),TVt=new BE(iSt,MVt=wVt),kVt=new Pv(aSt),AVt=new Pv(oSt),SVt=new Pv(sSt)}function L6(){L6=P,CYt=new _r,PYt=new kr,EYt=new Tr,SYt=new Mr,yU(new Ar),AYt=new z}function O6(){O6=P,b3t=new hA("CONSERVATIVE",0),x3t=new hA("CONSERVATIVE_SOFT",1),w3t=new hA("SLOPPY",2)}function I6(){I6=P,Lne=new NC(15),Pne=new zC((L_t(),cee),Lne),One=Oee,Ane=_te,Sne=tee,Cne=ree,Ene=nee}function D6(t,e,n){var r,i;for(r=new Mk,i=tnt(n,0);i.b!=i.d.c;)jz(r,new fC(ZR(EY(i),8)));y6(t,e,r)}function R6(t){var e;return!t.a&&(t.a=new bF(coe,t,9,5)),0!=(e=t.a).i?function(t){return t.b?t.b:t.a}(ZR(a0(e,0),678)):null}function z6(t,e){var n;return n=e9(t,e),IT(WG(t,e),0)|function(t,e){return w8(t,e)>=0}(WG(t,n),0)?n:e9(Pkt,WG(Wj(n,63),1))}function N6(t,e){var n,r;if(0!=(r=t.c[e]))for(t.c[e]=0,t.d-=r,n=e+1;n0)return rF(e-1,t.a.c.length),jX(t.a,e-1);throw um(new Nm)}function F6(t,e,n){if(t>e)throw um(new Kb(zMt+t+NMt+e));if(t<0||e>n)throw um(new Sx(zMt+t+jMt+e+SMt+n))}function B6(t){if(!t.a||0==(8&t.a.i))throw um(new Zb("Enumeration class expected for layout option "+t.f))}function U6(t){var e;++t.j,0==t.i?t.g=null:t.inOt?t-n>nOt:n-t>nOt)}function K6(t,e){return t?e&&!t.j||CP(t,124)&&0==ZR(t,124).a.b?0:t.Re():0}function Z6(t,e){return t?e&&!t.k||CP(t,124)&&0==ZR(t,124).a.a?0:t.Se():0}function J6(t){return ggt(),t<0?-1!=t?new knt(-1,-t):pBt:t<=10?vBt[lq(t)]:new knt(1,t)}function Q6(t){throw i4(),um(new Cb("Unexpected typeof result '"+t+"'; please report this bug to the GWT team"))}function t8(t){yx(),_P(this),VH(this),this.e=t,Lpt(this,t),this.g=null==t?lkt:E9(t),this.a="",this.b=t,this.a=""}function e8(){this.a=new es,this.f=new jg(this),this.b=new Fg(this),this.i=new Bg(this),this.e=new Ug(this)}function n8(){yb.call(this,new eZ(EQ(16))),v1(2,Mkt),this.b=2,this.a=new EU(null,null,0,null),wm(this.a,this.a)}function r8(){r8=P,w2t=new nA("DUMMY_NODE_OVER",0),_2t=new nA("DUMMY_NODE_UNDER",1),k2t=new nA("EQUAL",2)}function i8(){i8=P,uGt=wq(R5(qx(une,1),Xkt,103,0,[(e7(),nne),rne])),fGt=wq(R5(qx(une,1),Xkt,103,0,[ane,ene]))}function a8(t){return(Pwt(),zre).Hc(t.j)?ex(fI(Ost(t,(O_t(),XKt)))):O4(R5(qx(V9t,1),Akt,8,0,[t.i.n,t.n,t.a])).b}function o8(t,e){var n,r;n=t.nk(e,null),r=null,e&&(Nw(),d0(r=new sm,t.r)),(n=hst(t,r,n))&&n.Fi()}function s8(t,e){var n,r,i;return r=!1,n=e.q.d,e.di&&(uot(e.q,i),r=n!=e.q.d)),r}function l8(t,e){var n,i,a,o,s;return o=e.i,s=e.j,i=o-(n=t.f).i,a=s-n.j,r.Math.sqrt(i*i+a*a)}function c8(t,e){var n;return(n=iet(t))||(!cae&&(cae=new Pl),Lbt(),fZ((n=new Zv(zct(e))).Vk(),t)),n}function u8(t,e){var n,r;return(n=ZR(t.c.Bc(e),14))?((r=t.hc()).Gc(n),t.d-=n.gc(),n.$b(),t.mc(r)):t.jc()}function f8(t,e){var n;for(n=0;n=0?e:-e;r>0;)r%2==0?(n*=n,r=r/2|0):(i*=n,r-=1);return e<0?1/i:i}function C8(t){var e,n,r,i;if(null!=t)for(n=0;n0&&o6(ZR(TN(t.a,t.a.c.length-1),570),e)||nz(t.a,new rX(e))}function F8(t){var e;return(e=new Lx).a+="VerticalSegment ",bE(e,t.e),e.a+=" ",xE(e,hL(new Tx,new md(t.k))),e.a}function B8(t){var e;return(e=ZR(WJ(t.c.c,""),229))||(e=new gG(lw(sw(new ys,""),"Other")),Get(t.c.c,"",e)),e}function U8(t){var e;return 0!=(64&t.Db)?Fht(t):((e=new ML(Fht(t))).a+=" (name: ",mE(e,t.zb),e.a+=")",e.a)}function H8(t,e,n){var r,i;return i=t.sb,t.sb=e,0!=(4&t.Db)&&0==(1&t.Db)&&(r=new mF(t,1,4,i,e),n?n.Ei(r):n=r),n}function V8(t,e){var n,r;for(n=0,r=r9(t,e).Kc();r.Ob();)n+=null!=Ost(ZR(r.Pb(),11),(O_t(),FKt))?1:0;return n}function q8(t,e,n){var r,i,a;for(r=0,a=tnt(t,0);a.b!=a.d.c&&!((i=ex(fI(EY(a))))>n);)i>=e&&++r;return r}function G8(t,e,n){var r,i;return i=t.r,t.r=e,0!=(4&t.Db)&&0==(1&t.Db)&&(r=new mF(t,1,8,i,t.r),n?n.Ei(r):n=r),n}function W8(t,e){var n,r;return!(r=(n=ZR(e,676)).vk())&&n.wk(r=CP(e,88)?new WS(t,ZR(e,26)):new bW(t,ZR(e,148))),r}function Y8(t,e,n){var r;t.qi(t.i+1),r=t.oi(e,n),e!=t.i&&fbt(t.g,e,t.g,e+1,t.i-e),zB(t.g,e,r),++t.i,t.bi(e,n),t.ci()}function $8(t,e){var n;return n=new lt,t.a.sd(n)?(VP(),new Lb(yU(fJ(t,n.a,e)))):(xU(t),VP(),VP(),VBt)}function X8(t,e){switch(e.g){case 2:case 1:return r9(t,e);case 3:case 4:return E3(r9(t,e))}return YH(),YH(),SBt}function K8(t,e){return oE(t)?FD(t,e):aE(t)?jD(t,e):iE(t)?(yU(t),rE(t)===rE(e)):Ej(t)?t.Fb(e):sj(t)?$E(t,e):JG(t,e)}function Z8(t,e,n,r,i){0!=e&&0!=r&&(1==e?i[r]=Gnt(i,n,r,t[0]):1==r?i[e]=Gnt(i,t,e,n[0]):function(t,e,n,r,i){var a,o,s,l;if(rE(t)===rE(e)&&r==i)return void dmt(t,r,n);for(s=0;sn)throw um(new Hb(zMt+t+jMt+e+", size: "+n));if(t>e)throw um(new Kb(zMt+t+NMt+e))}function i7(t,e,n){if(e<0)Tut(t,n);else{if(!n.Ij())throw um(new Kb(wDt+n.ne()+_Dt));ZR(n,66).Nj().Vj(t,t.yh(),e)}}function a7(t,e,n,r,i,a){this.e=new rm,this.f=(u1(),o3t),nz(this.e,t),this.d=e,this.a=n,this.b=r,this.f=i,this.c=a}function o7(t,e){var n,r;for(r=new WP(t);r.e!=r.i.gc();)if(n=ZR(fnt(r),26),rE(e)===rE(n))return!0;return!1}function s7(t){return t>=65&&t<=70?t-65+10:t>=97&&t<=102?t-97+10:t>=48&&t<=57?t-48:0}function l7(t){var e;return 0!=(64&t.Db)?Fht(t):((e=new ML(Fht(t))).a+=" (source: ",mE(e,t.d),e.a+=")",e.a)}function c7(t,e){var n;n=0!=(256&t.Bb),e?t.Bb|=256:t.Bb&=-257,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new PX(t,1,2,n,e))}function u7(t,e){var n;n=0!=(256&t.Bb),e?t.Bb|=256:t.Bb&=-257,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new PX(t,1,8,n,e))}function f7(t,e){var n;n=0!=(256&t.Bb),e?t.Bb|=256:t.Bb&=-257,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new PX(t,1,8,n,e))}function h7(t,e){var n;n=0!=(512&t.Bb),e?t.Bb|=512:t.Bb&=-513,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new PX(t,1,3,n,e))}function d7(t,e){var n;n=0!=(512&t.Bb),e?t.Bb|=512:t.Bb&=-513,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new PX(t,1,9,n,e))}function p7(t,e){var n;return-1==t.b&&t.a&&(n=t.a.Gj(),t.b=n?t.c.Xg(t.a.aj(),n):ett(t.c.Tg(),t.a)),t.c.Og(t.b,e)}function g7(t){var e,n;return t>-129&&t<128?(e=t+128,!(n=(Qz(),WFt)[e])&&(n=WFt[e]=new id(t)),n):new id(t)}function v7(t){var e,n;return t>-129&&t<128?(e=t+128,!(n=(pN(),eBt)[e])&&(n=eBt[e]=new od(t)),n):new od(t)}function m7(t){var e;return t.k==(plt(),UGt)&&((e=ZR(Ost(t,(O_t(),hKt)),61))==(Pwt(),Mre)||e==Hre)}function y7(t,e,n){var r,i;return(i=Vht(t.b,e))&&(r=ZR(Pbt(AJ(t,i),""),26))?Dht(t,r,e,n):null}function b7(t,e){var n,r;for(r=new WP(t);r.e!=r.i.gc();)if(n=ZR(fnt(r),138),rE(e)===rE(n))return!0;return!1}function x7(t,e,n){var r;if(e>(r=t.gc()))throw um(new _D(e,r));if(t.hi()&&t.Hc(n))throw um(new Kb(kRt));t.Xh(e,n)}function w7(t,e){var n;if(CP(n=Qdt(t,e),322))return ZR(n,34);throw um(new Kb(wDt+e+"' is not a valid attribute"))}function _7(t){var e,n,r;for(e=new rm,r=new md(t.b);r.ae?1:t==e?0==t?O7(1/t,1/e):0:isNaN(t)?isNaN(e)?0:1:-1}function I7(t,e,n){var r,i;return t.ej()?(i=t.fj(),r=Kut(t,e,n),t.$i(t.Zi(7,g7(n),r,e,i)),r):Kut(t,e,n)}function D7(t,e){var n,r,i;null==t.d?(++t.e,--t.f):(i=e.cd(),function(t,e,n){++t.e,--t.f,ZR(t.d[e].$c(n),133).dd()}(t,r=((n=e.Sh())&Q_t)%t.d.length,Hht(t,r,n,i)))}function R7(t,e){var n;n=0!=(t.Bb&jDt),e?t.Bb|=jDt:t.Bb&=-1025,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new PX(t,1,10,n,e))}function z7(t,e){var n;n=0!=(t.Bb&nMt),e?t.Bb|=nMt:t.Bb&=-4097,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new PX(t,1,12,n,e))}function N7(t,e){var n;n=0!=(t.Bb&Uzt),e?t.Bb|=Uzt:t.Bb&=-8193,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new PX(t,1,15,n,e))}function j7(t,e){var n;n=0!=(t.Bb&Hzt),e?t.Bb|=Hzt:t.Bb&=-2049,0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new PX(t,1,11,n,e))}function F7(t){var e,n;for(n=Kht(r0(t)).Kc();n.Ob();)if(mmt(t,e=hI(n.Pb())))return g$((mT(),Qae),e);return null}function B7(t,e,n){var r;if(t.c)Est(t.c,e,n);else for(r=new md(t.b);r.a>10)+aMt&dTt,e[1]=56320+(1023&t)&dTt,Xtt(e,0,e.length)}function Y7(t){var e;return(e=ZR(Ost(t,(y_t(),c0t)),103))==(e7(),ine)?ex(fI(Ost(t,BQt)))>=1?rne:ene:e}function $7(t){if(t.c)$7(t.c);else if(t.d)throw um(new Zb("Stream already terminated, can't be modified or used"))}function X7(t){var e;return 0!=(64&t.Db)?Fht(t):((e=new ML(Fht(t))).a+=" (identifier: ",mE(e,t.k),e.a+=")",e.a)}function K7(t,e,n){var r;return Rw(),E0(r=new al,e),C0(r,n),t&&fZ((!t.a&&(t.a=new YP(Wie,t,5)),t.a),r),r}function Z7(t,e,n,r){var i,a;return yU(r),yU(n),null==(a=null==(i=t.xc(e))?n:Sk(ZR(i,15),ZR(n,14)))?t.Bc(e):t.zc(e,a),a}function J7(t){var e,n,r,i;return t2(n=new aR(e=ZR(Lw((i=(r=t.gm).f)==cFt?r:i),9),ZR(nD(e,e.length),9),0),t),n}function Q7(t,e,n){var r,i;for(i=t.a.ec().Kc();i.Ob();)if(r=ZR(i.Pb(),10),b5(n,ZR(TN(e,r.p),14)))return r;return null}function t9(t,e){var n;return eC(t)&&eC(e)&&XTt<(n=t-e)&&n>22),i=t.h+e.h+(r>>22),iP(n&VTt,r&VTt,i&qTt)}(eC(t)?$3(t):t,eC(e)?$3(e):e))}function n9(t,e){var n;return eC(t)&&eC(e)&&XTt<(n=t*e)&&n>13|(15&t.m)<<9,i=t.m>>4&8191,a=t.m>>17|(255&t.h)<<5,o=(1048320&t.h)>>8,s=8191&e.l,l=e.l>>13|(15&e.m)<<9,c=e.m>>4&8191,u=e.m>>17|(255&e.h)<<5,f=(1048320&e.h)>>8,v=n*s,m=r*s,y=i*s,b=a*s,x=o*s,0!=l&&(m+=n*l,y+=r*l,b+=i*l,x+=a*l);0!=c&&(y+=n*c,b+=r*c,x+=i*c);0!=u&&(b+=n*u,x+=r*u);return 0!=f&&(x+=n*f),d=(511&m)<<13,h=(v&VTt)+d,p=(v>>22)+(m>>9)+((262143&y)<<4)+((31&b)<<17),g=(y>>18)+(b>>5)+((4095&x)<<8),g+=(p+=h>>22)>>22,iP(h&=VTt,p&=VTt,g&=qTt)}(eC(t)?$3(t):t,eC(e)?$3(e):e))}function r9(t,e){var n;return t.i||wut(t),(n=ZR(qU(t.g,e),46))?new PG(t.j,ZR(n.a,19).a,ZR(n.b,19).a):(YH(),YH(),SBt)}function i9(t,e,n){var r;return r=t.a.get(e),t.a.set(e,void 0===n?null:n),void 0===r?(++t.c,vV(t.b)):++t.d,r}function a9(){var t,e,n;Zot(),n=$Bt+++Date.now(),t=lq(r.Math.floor(n*TMt))&AMt,e=lq(n-t*MMt),this.a=1502^t,this.b=e^kMt}function o9(t){var e,n;for(e=new rm,n=new md(t.j);n.a>1&1431655765)>>2&858993459)+(858993459&t))>>4)+t&252645135,t+=t>>8,63&(t+=t>>16)}function f9(t){var e,n,r;for(e=new WI(t.Hd().gc()),r=0,n=SZ(t.Hd().Kc());n.Ob();)Yq(e,n.Pb(),g7(r++));return function(t){var e;switch(jU(),t.c.length){case 0:return aFt;case 1:return function(t,e){return jU(),mrt(t,e),new PU(t,e)}((e=ZR(but(new md(t)),42)).cd(),e.dd());default:return new kb(ZR(Vet(t,XK(eFt,jkt,42,t.c.length,0,1)),165))}}(e.a)}function h9(t,e){0==t.n.c.length&&nz(t.n,new vq(t.s,t.t,t.i)),nz(t.b,e),Prt(ZR(TN(t.n,t.n.c.length-1),211),e),cyt(t,e)}function d9(t){return t.c==t.b.b&&t.i==t.g.b||(t.a.c=XK(Yjt,akt,1,0,5,1),A5(t.a,t.b),A5(t.a,t.g),t.c=t.b.b,t.i=t.g.b),t.a}function p9(t,e){var n,r;for(r=0,n=ZR(e.Kb(t),20).Kc();n.Ob();)tx(uI(Ost(ZR(n.Pb(),17),(O_t(),qKt))))||++r;return r}function g9(){g9=P,aZt=new aA(dEt,0),eZt=new aA("FIRST",1),nZt=new aA(GEt,2),rZt=new aA("LAST",3),iZt=new aA(WEt,4)}function v9(){v9=P,gne=new eS(SAt,0),dne=new eS("POLYLINE",1),hne=new eS("ORTHOGONAL",2),pne=new eS("SPLINES",3)}function m9(){m9=P,v8t=new FA("ASPECT_RATIO_DRIVEN",0),m8t=new FA("MAX_SCALE_DRIVEN",1),g8t=new FA("AREA_DRIVEN",2)}function y9(){y9=P,a7t=new UA("P1_STRUCTURE",0),o7t=new UA("P2_PROCESSING_ORDER",1),s7t=new UA("P3_EXECUTION",2)}function b9(){b9=P,b6t=new DA("OVERLAP_REMOVAL",0),m6t=new DA("COMPACTION",1),y6t=new DA("GRAPH_SIZE_CALCULATION",2)}function x9(t,e){return YC(),l1(eTt),r.Math.abs(t-e)<=eTt||t==e||isNaN(t)&&isNaN(e)?0:te?1:KE(isNaN(t),isNaN(e))}function w9(t,e){var n,r;for(n=tnt(t,0);n.b!=n.d.c;){if((r=nx(fI(EY(n))))==e)return;if(r>e){MW(n);break}}lB(n,e)}function _9(t,e){var n,r,i,a,o;if(n=e.f,Get(t.c.d,n,e),null!=e.g)for(a=0,o=(i=e.g).length;a>>0).toString(16):t.toString()}function C9(t){var e;this.a=new aR(e=ZR(t.e&&t.e(),9),ZR(nD(e,e.length),9),0),this.b=XK(Yjt,akt,1,this.a.a.length,5,1)}function P9(t){var e,n,r;for(this.a=new lC,r=new md(t);r.a=a)return e.c+n;return e.c+e.b.gc()}function R9(t,e){var n,r,i,a,o,s;for(r=0,n=0,o=0,s=(a=e).length;o0&&(r+=i,++n);return n>1&&(r+=t.d*(n-1)),r}function z9(t){var e,n,r;for((r=new Cx).a+="[",e=0,n=t.gc();eCSt,A=r.Math.abs(d.b-g.b)>CSt,(!n&&M&&A||n&&(M||A))&&jz(m.a,w)),C2(m.a,i),0==i.b?d=w:(AO(0!=i.b),d=ZR(i.c.b.c,8)),h5(p,h,v),q2(a)==T&&(gU(T.i)!=a.a&&vct(v=new Sw,gU(T.i),b),d4(m,QKt,v)),Alt(p,m,b),f.a.zc(p,f);Zq(m,_),Kq(m,T)}for(u=f.a.ec().Kc();u.Ob();)Zq(c=ZR(u.Pb(),17),null),Kq(c,null);jlt(e)}(e,J2(i,1)),jlt(i)}function B9(t,e,n,r,i,a){this.a=t,this.c=e,this.b=n,this.f=r,this.d=i,this.e=a,this.c>0&&this.b>0&&LN(this.c,this.b,this.a)}function U9(t){att(),this.c=zX(R5(qx(m9t,1),akt,831,0,[f2t])),this.b=new im,this.a=t,RU(this.b,h2t,1),$Q(d2t,new Kg(this))}function H9(t,e){var n;return t.d?SF(t.b,e)?ZR(UB(t.b,e),51):(n=e.Kf(),RU(t.b,e,n),n):e.Kf()}function V9(t,e){var n;return rE(t)===rE(e)||!!CP(e,91)&&(n=ZR(e,91),t.e==n.e&&t.d==n.d&&function(t,e){var n;for(n=t.d-1;n>=0&&t.a[n]===e[n];n--);return n<0}(t,n.a))}function q9(t){switch(Pwt(),t.g){case 4:return Mre;case 1:return Tre;case 3:return Hre;case 2:return qre;default:return Vre}}function G9(t,e){switch(e){case 3:return 0!=t.f;case 4:return 0!=t.g;case 5:return 0!=t.i;case 6:return 0!=t.j}return G3(t,e)}function W9(t){switch(t.g){case 0:return new qo;case 1:return new Yo;default:throw um(new Kb(HEt+(null!=t.f?t.f:""+t.g)))}}function Y9(t){switch(t.g){case 0:return new lb;case 1:return new Iy;default:throw um(new Kb(ZOt+(null!=t.f?t.f:""+t.g)))}}function $9(t){var e,n,r;return(n=t.zg())?CP(e=t.Ug(),160)&&null!=(r=$9(ZR(e,160)))?r+"."+n:n:null}function X9(t,e,n){var r,i;for(i=t.Kc();i.Ob();)if(r=i.Pb(),rE(e)===rE(r)||null!=e&&K8(e,r))return n&&i.Qb(),!0;return!1}function K9(t,e,n){var r,i;if(++t.j,n.dc())return!1;for(i=n.Kc();i.Ob();)r=i.Pb(),t.Hi(e,t.oi(e,r)),++e;return!0}function Z9(t,e){var n;if(e){for(n=0;nl.d&&(f=l.d+l.a+u));n.c.d=f,e.a.zc(n,e),c=r.Math.max(c,n.c.d+n.c.a)}return c}(t),Ak(new AN(null,new DG(t.d,16)),new Jd(t)),e}function ttt(t){var e;return 0!=(64&t.Db)?U8(t):((e=new ML(U8(t))).a+=" (instanceClassName: ",mE(e,t.D),e.a+=")",e.a)}function ett(t,e){var n,r,i;if(null==t.i&&fyt(t),n=t.i,-1!=(r=e.aj()))for(i=n.length;r>1,this.k=e-1>>1}function ftt(t,e,n){var r,i;for(r=qG(n,cMt),i=0;0!=w8(r,0)&&i0&&(e.lengtht.i&&zB(e,t.i,null),e}function ptt(t,e,n){var r,i,a;return t.ej()?(r=t.i,a=t.fj(),Y8(t,r,e),i=t.Zi(3,null,e,r,a),n?n.Ei(i):n=i):Y8(t,t.i,e),n}function gtt(t){var e;return SI(),e=new fC(ZR(t.e.We((L_t(),ree)),8)),t.B.Hc((Zvt(),oie))&&(e.a<=0&&(e.a=20),e.b<=0&&(e.b=20)),e}function vtt(t){return Vnt(),(t.q?t.q:(YH(),YH(),EBt))._b((y_t(),t1t))?ZR(Ost(t,t1t),197):ZR(Ost(gU(t),e1t),197)}function mtt(t,e){var n,r;return r=null,PO(t,(y_t(),H1t))&&(n=ZR(Ost(t,H1t),94)).Xe(e)&&(r=n.We(e)),null==r&&(r=Ost(gU(t),e)),r}function ytt(t,e){var n,r,i;return!!CP(e,42)&&(r=(n=ZR(e,42)).cd(),dU(i=R8(t.Rc(),r),n.dd())&&(null!=i||t.Rc()._b(r)))}function btt(t,e){var n;return t.f>0&&(t.qj(),-1!=Hht(t,((n=null==e?0:$4(e))&Q_t)%t.d.length,n,e))}function xtt(t,e){var n,r;return t.f>0&&(t.qj(),n=rft(t,((r=null==e?0:$4(e))&Q_t)%t.d.length,r,e))?n.dd():null}function wtt(t,e){var n,r,i,a;for(a=mpt(t.e.Tg(),e),n=ZR(t.g,119),i=0;i>5,e&=31,i=t.d+n+(0==e?0:1),function(t,e,n,r){var i,a,o;if(0==r)fbt(e,0,t,n,t.length-n);else for(o=32-r,t[t.length-1]=0,a=t.length-1;a>n;a--)t[a]|=e[a-n-1]>>>o,t[a-1]=e[a-n-1]<=0?a=a.a[1]:(i=a,a=a.a[0])}return i}function Ntt(t,e,n){var r,i,a;for(i=null,a=t.b;a;){if(r=t.a.ue(e,a.d),n&&0==r)return a;r<=0?a=a.a[0]:(i=a,a=a.a[1])}return i}function jtt(t,e,n,r){var i,a,o;return i=!1,function(t,e,n){var r,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_;if(h=t.c[e],d=t.c[n],p=ZR(Ost(h,(O_t(),wKt)),15),p&&0!=p.gc()&&p.Hc(d)||(g=h.k!=(plt(),VGt)&&d.k!=VGt,v=ZR(Ost(h,xKt),10),m=ZR(Ost(d,xKt),10),y=v!=m,b=!!v&&v!=h||!!m&&m!=d,x=Crt(h,(Pwt(),Mre)),w=Crt(d,Hre),b|=Crt(h,Hre)||Crt(d,Mre),_=b&&y||x||w,g&&_)||h.k==(plt(),GGt)&&d.k==qGt||d.k==(plt(),GGt)&&h.k==qGt)return!1;u=t.c[e],a=t.c[n],i=Oat(t.e,u,a,(Pwt(),qre)),l=Oat(t.i,u,a,Tre),function(t,e,n){t.d=0,t.b=0,e.k==(plt(),GGt)&&n.k==GGt&&ZR(Ost(e,(O_t(),LKt)),10)==ZR(Ost(n,LKt),10)&&(hJ(e).j==(Pwt(),Mre)?Xht(t,e,n):Xht(t,n,e)),e.k==GGt&&n.k==VGt?hJ(e).j==(Pwt(),Mre)?t.d=1:t.b=1:n.k==GGt&&e.k==VGt&&(hJ(n).j==(Pwt(),Mre)?t.b=1:t.d=1),function(t,e,n){e.k==(plt(),qGt)&&n.k==VGt&&(t.d=V8(e,(Pwt(),Hre)),t.b=V8(e,Mre));n.k==qGt&&e.k==VGt&&(t.d=V8(n,(Pwt(),Mre)),t.b=V8(n,Hre))}(t,e,n)}(t.f,u,a),c=x6(t.b,u,a)+ZR(i.a,19).a+ZR(l.a,19).a+t.f.d,s=x6(t.b,a,u)+ZR(i.b,19).a+ZR(l.b,19).a+t.f.b,t.a&&(f=ZR(Ost(u,LKt),11),o=ZR(Ost(a,LKt),11),c+=ZR((r=Nit(t.g,f,o)).a,19).a,s+=ZR(r.b,19).a);return c>s}(t.f,n,r)&&(!function(t,e,n){var r,i;Sst(t.e,e,n,(Pwt(),qre)),Sst(t.i,e,n,Tre),t.a&&(i=ZR(Ost(e,(O_t(),LKt)),11),r=ZR(Ost(n,LKt),11),eW(t.g,i,r))}(t.f,t.a[e][n],t.a[e][r]),o=(a=t.a[e])[r],a[r]=a[n],a[n]=o,i=!0),i}function Ftt(t,e,n,r,i){var a,o,s;for(o=i;e.b!=e.c;)a=ZR(OF(e),10),s=ZR(r9(a,r).Xb(0),11),t.d[s.p]=o++,n.c[n.c.length]=s;return o}function Btt(t,e,n){var i,a,o,s,l;return s=t.k,l=e.k,a=fI(mtt(t,i=n[s.g][l.g])),o=fI(mtt(e,i)),r.Math.max((yU(a),a),(yU(o),o))}function Utt(t,e,n){var r,i,a;for(i=ZR(UB(t.b,n),177),r=0,a=new md(e.j);a.ae?1:KE(isNaN(t),isNaN(e)))>0}function Wtt(t,e){return YC(),YC(),l1(eTt),(r.Math.abs(t-e)<=eTt||t==e||isNaN(t)&&isNaN(e)?0:te?1:KE(isNaN(t),isNaN(e)))<0}function Ytt(t,e){return YC(),YC(),l1(eTt),(r.Math.abs(t-e)<=eTt||t==e||isNaN(t)&&isNaN(e)?0:te?1:KE(isNaN(t),isNaN(e)))<=0}function $tt(t,e){for(var n=0;!e[n]||""==e[n];)n++;for(var r=e[n++];nsMt)return n.fh();if((r=n.Zg())||n==t)break}return r}function aet(t){return Fq(),CP(t,156)?ZR(UB(Aae,zBt),288).vg(t):SF(Aae,X4(t))?ZR(UB(Aae,X4(t)),288).vg(t):null}function oet(t,e){if(e.c==t)return e.d;if(e.d==t)return e.c;throw um(new Kb("Input edge is not connected to the input port."))}function set(t,e){return t.e>e.e?1:t.ee.d?t.e:t.d=48&&t<48+r.Math.min(10,10)?t-48:t>=97&&t<97?t-97+10:t>=65&&t<65?t-65+10:-1}function uet(t,e){var n;return rE(e)===rE(t)||!!CP(e,21)&&((n=ZR(e,21)).gc()==t.gc()&&t.Ic(n))}function fet(t,e){var n,r;for(IG(e,t.length),n=t.charCodeAt(e),r=e+1;r=2*e&&nz(n,new IR(o[r-1]+e,o[r]-e));return n}(n,r),a=function(t){var e,n,r,i,a,o,s;for(a=new lC,n=new md(t);n.a2&&s.e.b+s.j.b<=2&&(i=s,r=o),a.a.zc(i,a),i.q=r);return a}(e),Ak(HQ(new AN(null,new DG(a,1)),new ko),new xH(t,n,i,r)))}function get(t,e,n){var r;0!=(t.Db&e)?null==n?function(t,e){var n,r,i,a,o,s,l;if(r=u9(254&t.Db),1==r)t.Eb=null;else if(a=u0(t.Eb),2==r)i=Krt(t,e),t.Eb=a[0==i?1:0];else{for(o=XK(Yjt,akt,1,r-1,5,1),n=2,s=0,l=0;n<=128;n<<=1)n==e?++s:0!=(t.Db&n)&&(o[l++]=a[s++]);t.Eb=o}t.Db&=~e}(t,e):-1==(r=Krt(t,e))?t.Eb=n:zB(u0(t.Eb),r,n):null!=n&&function(t,e,n){var r,i,a,o,s,l;if(i=u9(254&t.Db),0==i)t.Eb=n;else{if(1==i)o=XK(Yjt,akt,1,2,5,1),0==Krt(t,e)?(o[0]=n,o[1]=t.Eb):(o[0]=t.Eb,o[1]=n);else for(o=XK(Yjt,akt,1,i+1,5,1),a=u0(t.Eb),r=2,s=0,l=0;r<=128;r<<=1)r==e?o[l++]=n:0!=(t.Db&r)&&(o[l++]=a[s++]);t.Eb=o}t.Db|=e}(t,e,n)}function vet(t){var e;return 0==(32&t.Db)&&0!=(e=yB(ZR(H3(t,16),26)||t.zh())-yB(t.zh()))&&get(t,32,XK(Yjt,akt,1,e,5,1)),t}function met(t){var e,n;for(0,e=new md(t.g);e.a0&&w8(t,128)<0?(e=$N(t)+128,!(n=(dN(),XFt)[e])&&(n=XFt[e]=new ad(t)),n):new ad(t)}function _et(t,e){var n,r;return(n=e.Hh(t.a))&&null!=(r=hI(xtt((!n.b&&(n.b=new GO((N_t(),Noe),Qoe,n)),n.b),yRt)))?r:e.ne()}function ket(t,e){var n,r;for(hG(),r=new Oj(dL(o9(t).a.Kc(),new u));Kft(r);)if((n=ZR(wX(r),17)).d.i==e||n.c.i==e)return n;return null}function Tet(t,e,n){this.c=t,this.f=new rm,this.e=new Sw,this.j=new vN,this.n=new vN,this.b=e,this.g=new bH(e.c,e.d,e.b,e.a),this.a=n}function Met(t){var e,n,r,i;for(this.a=new lC,this.d=new Km,this.e=0,r=0,i=(n=t).length;rk&&(g.c=k-g.b),nz(s.d,new fj(g,S7(s,g))),b=e==Mre?r.Math.max(b,v.b+u.b.rf().b):r.Math.min(b,v.b));for(b+=e==Mre?t.t:-t.t,(x=Q9((s.e=b,s)))>0&&(ZR(qU(t.b,e),124).a.b=x),f=d.Kc();f.Ob();)!(u=ZR(f.Pb(),111)).c||u.c.d.c.length<=0||((g=u.c.i).c-=u.e.a,g.d-=u.e.b)}(t,e):kwt(t,e):t.u.Hc(xre)&&(n?function(t,e){var n,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y;if(f=ZR(ZR(FX(t.r,e),21),84),f.gc()<=2||e==(Pwt(),Tre)||e==(Pwt(),qre))return void Gwt(t,e);for(v=t.u.Hc((Put(),wre)),n=e==(Pwt(),Mre)?(n5(),tVt):(n5(),ZHt),y=e==Mre?(PJ(),xHt):(PJ(),_Ht),i=Kx(PR(n),t.s),m=e==Mre?tMt:eMt,u=f.Kc();u.Ob();)!(l=ZR(u.Pb(),111)).c||l.c.d.c.length<=0||(g=l.b.rf(),p=l.e,(d=(h=l.c).i).b=(o=h.n,h.e.a+o.b+o.c),d.a=(s=h.n,h.e.b+s.d+s.a),v?(d.c=p.a-(a=h.n,h.e.a+a.b+a.c)-t.s,v=!1):d.c=p.a+g.a+t.s,RV(y,TAt),h.f=y,hZ(h,(UZ(),pHt)),nz(i.d,new fj(d,S7(i,d))),m=e==Mre?r.Math.min(m,p.b):r.Math.max(m,p.b+l.b.rf().b));for(m+=e==Mre?-t.t:t.t,Q9((i.e=m,i)),c=f.Kc();c.Ob();)!(l=ZR(c.Pb(),111)).c||l.c.d.c.length<=0||((d=l.c.i).c-=l.e.a,d.d-=l.e.b)}(t,e):Gwt(t,e))}function zet(t,e){var n,r;++t.j,null!=e&&function(t,e){var n,r,i;if(rE(t)===rE(e))return!0;if(null==t||null==e)return!1;if(t.length!=e.length)return!1;for(n=0;n=(i=t.length))return i;for(e=e>0?e:0;er&&zB(e,r,null),e}function qet(t,e){var n,r;for(r=t.a.length,e.lengthr&&zB(e,r,null),e}function Get(t,e,n){var r,i,a;return(i=ZR(UB(t.e,e),387))?(a=ZI(i,n),PP(t,i),a):(r=new lz(t,e,n),RU(t.e,e,r),rq(r),null)}function Wet(t){var e;if(null==t)return null;if(e=function(t){var e,n,r,i,a,o,s;if(kgt(),null==t)return null;if(i=t.length,i%2!=0)return null;for(e=RJ(t),n=XK(Jle,RDt,25,a=i/2|0,15,1),r=0;r>24}return n}(Zyt(t,!0)),null==e)throw um(new fx("Invalid hexBinary value: '"+t+"'"));return e}function Yet(t){return ggt(),w8(t,0)<0?0!=w8(t,-1)?new yot(-1,cJ(t)):pBt:w8(t,10)<=0?vBt[$N(t)]:new yot(1,t)}function $et(){return z_t(),R5(qx($Ht,1),Xkt,159,0,[qHt,VHt,GHt,RHt,DHt,zHt,FHt,jHt,NHt,HHt,UHt,BHt,OHt,LHt,IHt,CHt,EHt,PHt,AHt,MHt,SHt,WHt])}function Xet(t){var e;this.d=new rm,this.j=new Sw,this.g=new Sw,e=t.g.b,this.f=ZR(Ost(gU(e),(y_t(),c0t)),103),this.e=ex(fI(ont(e,V1t)))}function Ket(t){this.b=new rm,this.e=new rm,this.d=t,this.a=!n_(uH(new AN(null,new tB(new WX(t.b))),new Cd(new qi))).sd((Hk(),mUt))}function Zet(){Zet=P,S9t=new WA("PARENTS",0),A9t=new WA("NODES",1),T9t=new WA("EDGES",2),E9t=new WA("PORTS",3),M9t=new WA("LABELS",4)}function Jet(){Jet=P,rre=new oS("DISTRIBUTED",0),are=new oS("JUSTIFIED",1),ere=new oS("BEGIN",2),nre=new oS(bAt,3),ire=new oS("END",4)}function Qet(t){switch(t.g){case 1:return e7(),ane;case 4:return e7(),nne;case 2:return e7(),rne;case 3:return e7(),ene}return e7(),ine}function tnt(t,e){var n,r;if(rG(e,t.b),e>=t.b>>1)for(r=t.c,n=t.b;n>e;--n)r=r.b;else for(r=t.a.a,n=0;n=64&&e<128&&(i=GG(i,qj(1,e-64)));return i}function ont(t,e){var n,r;return r=null,PO(t,(L_t(),qee))&&(n=ZR(Ost(t,qee),94)).Xe(e)&&(r=n.We(e)),null==r&&gU(t)&&(r=Ost(gU(t),e)),r}function snt(t,e){var n,r,i;(r=(i=e.d.i).k)!=(plt(),qGt)&&r!=BGt&&Kft(n=new Oj(dL(l9(i).a.Kc(),new u)))&&RU(t.k,e,ZR(wX(n),17))}function lnt(t,e){var n,r,i;return r=CQ(t.Tg(),e),(n=e-t.Ah())<0?(i=t.Yg(r))>=0?t.lh(i):Wut(t,r):n<0?Wut(t,r):ZR(r,66).Nj().Sj(t,t.yh(),n)}function cnt(t){var e;if(CP(t.a,4)){if(null==(e=aet(t.a)))throw um(new Zb(MIt+t.b+"'. "+wIt+(cI(Eae),Eae.k)+_It));return e}return t.a}function unt(t){var e;if(null==t)return null;if(e=function(t){var e,n,r,i,a,o,s,l,c,u,f,h,d,p,g,v;if(tyt(),null==t)return null;if(a=RJ(t),p=function(t){var e,n,r;for(r=0,n=t.length,e=0;e>4)<<24>>24,f[h++]=((15&n)<<4|r>>2&15)<<24>>24,f[h++]=(r<<6|i)<<24>>24}if(!S_(o=a[u++])||!S_(s=a[u++]))return null;if(e=fle[o],n=fle[s],l=a[u++],c=a[u++],-1==fle[l]||-1==fle[c])return 61==l&&61==c?0!=(15&n)?null:(fbt(f,0,v=XK(Jle,RDt,25,3*d+1,15,1),0,3*d),v[h]=(e<<2|n>>4)<<24>>24,v):61!=l&&61==c?0!=(3&(r=fle[l]))?null:(fbt(f,0,v=XK(Jle,RDt,25,3*d+2,15,1),0,3*d),v[h++]=(e<<2|n>>4)<<24>>24,v[h]=((15&n)<<4|r>>2&15)<<24>>24,v):null;r=fle[l],i=fle[c],f[h++]=(e<<2|n>>4)<<24>>24,f[h++]=((15&n)<<4|r>>2&15)<<24>>24,f[h++]=(r<<6|i)<<24>>24;return f}(Zyt(t,!0)),null==e)throw um(new fx("Invalid base64Binary value: '"+t+"'"));return e}function fnt(t){var e;try{return e=t.i.Xb(t.e),t.mj(),t.g=t.e++,e}catch(Wle){throw CP(Wle=_5(Wle),73)?(t.mj(),um(new jm)):um(Wle)}}function hnt(t){var e;try{return e=t.c.ki(t.e),t.mj(),t.g=t.e++,e}catch(Wle){throw CP(Wle=_5(Wle),73)?(t.mj(),um(new jm)):um(Wle)}}function dnt(){dnt=P,L_t(),BVt=Bee,DVt=zte,CVt=wte,RVt=cee,yat(),jVt=UUt,NVt=FUt,FVt=VUt,zVt=jUt,P6(),LVt=TVt,PVt=kVt,OVt=AVt,IVt=SVt}function pnt(t){switch(Xk(),this.c=new rm,this.d=t,t.g){case 0:case 2:this.a=zU(SGt),this.b=tMt;break;case 3:case 1:this.a=SGt,this.b=eMt}}function gnt(t,e,n){var r;if(t.c)I0(t.c,t.c.i+e),D0(t.c,t.c.j+n);else for(r=new md(t.b);r.a0&&(nz(t.b,new rz(e.a,n)),0<(r=e.a.length)?e.a=e.a.substr(0,0):0>r&&(e.a+=EP(XK($le,fTt,25,-r,15,1))))}function mnt(t,e){var n,r,i;for(n=t.o,i=ZR(ZR(FX(t.r,e),21),84).Kc();i.Ob();)(r=ZR(i.Pb(),111)).e.a=xit(r,n.a),r.e.b=n.b*ex(fI(r.b.We(KHt)))}function ynt(t,e){var n;return n=ZR(Ost(t,(y_t(),R0t)),74),MP(e,RGt)?n?UH(n):(n=new Dy,d4(t,R0t,n)):n&&d4(t,R0t,null),n}function bnt(t){var e;return(e=new Lx).a+="n",t.k!=(plt(),qGt)&&xE(xE((e.a+="(",e),gO(t.k).toLowerCase()),")"),xE((e.a+="_",e),wit(t)),e.a}function xnt(t,e,n,r){var i;return n>=0?t.hh(e,n,r):(t.eh()&&(r=(i=t.Vg())>=0?t.Qg(r):t.eh().ih(t,-1-i,null,r)),t.Sg(e,n,r))}function wnt(t,e){switch(e){case 7:return!t.e&&(t.e=new LD(Kie,t,7,4)),void qbt(t.e);case 8:return!t.d&&(t.d=new LD(Kie,t,8,5)),void qbt(t.d)}itt(t,e)}function _nt(t,e){var n;n=t.Zc(e);try{return n.Pb()}catch(Wle){throw CP(Wle=_5(Wle),109)?um(new Hb("Can't get element "+e)):um(Wle)}}function knt(t,e){this.e=t,e=0&&(n.d=t.t);break;case 3:t.t>=0&&(n.a=t.t)}t.C&&(n.b=t.C.b,n.c=t.C.c)}function Snt(){Snt=P,iVt=new rM(zAt,0),rVt=new rM(NAt,1),aVt=new rM(jAt,2),oVt=new rM(FAt,3),iVt.a=!1,rVt.a=!0,aVt.a=!1,oVt.a=!0}function Ent(){Ent=P,vVt=new nM(zAt,0),gVt=new nM(NAt,1),mVt=new nM(jAt,2),yVt=new nM(FAt,3),vVt.a=!1,gVt.a=!0,mVt.a=!1,yVt.a=!0}function Cnt(t){var e,n,r;if(n=0,0==(r=agt(t)).c.length)return 1;for(e=new md(r);e.an.b)return!0}return!1}function Lnt(t,e){return oE(t)?!!Y_t[e]:t.hm?!!t.hm[e]:aE(t)?!!W_t[e]:!!iE(t)&&!!G_t[e]}function Ont(t,e,n){return null==n?(!t.o&&(t.o=new xZ((l_t(),Uie),hae,t,0)),eet(t.o,e)):(!t.o&&(t.o=new xZ((l_t(),Uie),hae,t,0)),zat(t.o,e,n)),t}function Int(t,e,n,r){var i,a,o;return a=CQ(t.Tg(),e),(i=e-t.Ah())<0?(o=t.Yg(a))>=0?t._g(o,n,!0):nft(t,a,n):ZR(a,66).Nj().Pj(t,t.yh(),i,n,r)}function Dnt(t,e,n,r){var i,a;n.mh(e)&&(TT(),qJ(e)?function(t,e){var n,r,i,a;for(r=0,i=e.gc();r=0)return r;if(t.Fk())for(n=0;n=(i=t.gc()))throw um(new _D(e,i));if(t.hi()&&(r=t.Xc(n))>=0&&r!=e)throw um(new Kb(kRt));return t.mi(e,n)}function Bnt(t,e){if(this.a=ZR(MB(t),245),this.b=ZR(MB(e),245),t.vd(e)>0||t==(gb(),nFt)||e==(pb(),rFt))throw um(new Kb("Invalid range: "+UY(t,e)))}function Unt(t){var e,n;for(this.b=new rm,this.c=t,this.a=!1,n=new md(t.a);n.a0),(e&-e)==e)return lq(e*$ht(t,31)*4.656612873077393e-10);do{r=(n=$ht(t,31))%e}while(n-r+(e-1)<0);return lq(r)}function $nt(t){var e,n,r;return hR(),null!=(r=xUt[n=":"+t])?lq((yU(r),r)):(e=null==(r=bUt[n])?function(t){var e,n,r,i;e=0,r=t.length,i=r-4,n=0;for(;n0)for(r=new cR(ZR(FX(t.a,a),21)),YH(),JC(r,new lp(e)),i=new JW(a.b,0);i.b1&&(i=function(t,e){var n,r,i;for(n=HL(new ny,t),i=new md(e);i.a(l=null==t.d?0:t.d.length)){for(u=t.d,t.d=XK(Tae,_zt,63,2*l+4,0,1),a=0;aQLt;){for(o=e,s=0;r.Math.abs(e-o)0),a.a.Xb(a.c=--a.b),oyt(t,t.b-s,o,i,a),AO(a.b0),i.a.Xb(i.c=--i.b)}if(!t.d)for(n=0;n102?-1:t<=57?t-48:t<65?-1:t<=70?t-65+10:t<97?-1:t-97+10}function mrt(t,e){if(null==t)throw um(new Qb("null key in entry: null="+e));if(null==e)throw um(new Qb("null value in entry: "+t+"=null"))}function yrt(t,e){var n;return n=R5(qx(Qle,1),oMt,25,15,[K6(t.a[0],e),K6(t.a[1],e),K6(t.a[2],e)]),t.d&&(n[0]=r.Math.max(n[0],n[2]),n[2]=n[0]),n}function brt(t,e){var n;return n=R5(qx(Qle,1),oMt,25,15,[Z6(t.a[0],e),Z6(t.a[1],e),Z6(t.a[2],e)]),t.d&&(n[0]=r.Math.max(n[0],n[2]),n[2]=n[0]),n}function xrt(){xrt=P,z$t=new qM("GREEDY",0),R$t=new qM(aCt,1),j$t=new qM(iCt,2),F$t=new qM("MODEL_ORDER",3),N$t=new qM("GREEDY_MODEL_ORDER",4)}function wrt(t,e){var n,r,i;for(t.b[e.g]=1,r=tnt(e.d,0);r.b!=r.d.c;)i=(n=ZR(EY(r),188)).c,1==t.b[i.g]?jz(t.a,n):2==t.b[i.g]?t.b[i.g]=1:wrt(t,i)}function _rt(t,e,n){var r,i,a,o;for(o=t.r+e,t.r+=e,t.d+=n,r=n/t.n.c.length,i=0,a=new md(t.n);a.a0||!o&&0==s))return!1;return!0}(t,n,r.d,i,a,o,s)&&e.Fc(r),(c=r.a[1])&&Drt(t,e,n,c,i,a,o,s))}function Rrt(t,e,n){try{return cE(X1(t,e,n),1)}catch(Wle){throw CP(Wle=_5(Wle),320)?um(new Hb(HAt+t.o+"*"+t.p+VAt+e+rkt+n+qAt)):um(Wle)}}function zrt(t,e,n){try{return cE(X1(t,e,n),0)}catch(Wle){throw CP(Wle=_5(Wle),320)?um(new Hb(HAt+t.o+"*"+t.p+VAt+e+rkt+n+qAt)):um(Wle)}}function Nrt(t,e,n){try{return cE(X1(t,e,n),2)}catch(Wle){throw CP(Wle=_5(Wle),320)?um(new Hb(HAt+t.o+"*"+t.p+VAt+e+rkt+n+qAt)):um(Wle)}}function jrt(t,e){if(-1==t.g)throw um(new Im);t.mj();try{t.d._c(t.g,e),t.f=t.d.j}catch(Wle){throw CP(Wle=_5(Wle),73)?um(new zm):um(Wle)}}function Frt(t,e,n){ast(n,"Linear segments node placement",1),t.b=ZR(Ost(e,(O_t(),YKt)),304),function(t,e){var n,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S,E,C,P,L,O;for(P=new rm,p=new md(e.b);p.a=0){for(l=null,s=new JW(u.a,c+1);s.b0&&c[i]&&(g=hP(t.b,c[i],a)),v=r.Math.max(v,a.c.c.b+g);for(o=new md(f.e);o.aw)?(c=2,s=Q_t):0==c?(c=1,s=k):(c=0,s=k):(d=k>=s||s-k<_,s=k,d&&--a)}while(!(d&&a<=0))}(t,e),function(t){var e,n,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A;for(b=t.a,x=0,w=b.length;x0?(f=ZR(TN(h.c.a,o-1),10),T=hP(t.b,h,f),v=h.n.b-h.d.d-(f.n.b+f.o.b+f.d.a+T)):v=h.n.b-h.d.d,c=r.Math.min(v,c),oa&&zB(e,a,null),e}function Urt(t,e){var n,r,i;return n=e.cd(),i=e.dd(),r=t.xc(n),!!(rE(i)===rE(r)||null!=i&&K8(i,r))&&!(null==r&&!t._b(n))}function Hrt(t,e,n,r){var i,a;this.a=e,this.c=r,function(t,e){t.b=e}(this,new KA(-(i=t.a).c,-i.d)),bD(this.b,n),a=r/2,e.a?DO(this.b,0,a):DO(this.b,a,0),nz(t.c,this)}function Vrt(){Vrt=P,o8t=new NA(dEt,0),i8t=new NA(oCt,1),a8t=new NA("EDGE_LENGTH_BY_POSITION",2),r8t=new NA("CROSSING_MINIMIZATION_BY_POSITION",3)}function qrt(t,e){var n,r;if(n=ZR(v0(t.g,e),33))return n;if(r=ZR(v0(t.j,e),118))return r;throw um(new ux("Referenced shape does not exist: "+e))}function Grt(t,e){if(t.c==e)return t.d;if(t.d==e)return t.c;throw um(new Kb("Node 'one' must be either source or target of edge 'edge'."))}function Wrt(t,e){if(t.c.i==e)return t.d.i;if(t.d.i==e)return t.c.i;throw um(new Kb("Node "+e+" is neither source nor target of edge "+t))}function Yrt(t,e){var n;switch(e.g){case 2:case 4:n=t.a,t.c.d.n.b0&&(l+=i),c[u]=o,o+=s*(l+r)}function Xrt(t){var e,n,r;for(r=t.f,t.n=XK(Qle,oMt,25,r,15,1),t.d=XK(Qle,oMt,25,r,15,1),e=0;e0?t.c:0),++a;t.b=i,t.d=o}function iit(t,e){var n;return n=R5(qx(Qle,1),oMt,25,15,[Wnt(t,(JQ(),sHt),e),Wnt(t,lHt,e),Wnt(t,cHt,e)]),t.f&&(n[0]=r.Math.max(n[0],n[2]),n[2]=n[0]),n}function ait(t,e,n){try{svt(t,e+t.j,n+t.k,!1,!0)}catch(Wle){throw CP(Wle=_5(Wle),73)?um(new Hb(Wle.g+GAt+e+rkt+n+").")):um(Wle)}}function oit(t,e,n){try{svt(t,e+t.j,n+t.k,!0,!1)}catch(Wle){throw CP(Wle=_5(Wle),73)?um(new Hb(Wle.g+GAt+e+rkt+n+").")):um(Wle)}}function sit(t){var e;PO(t,(y_t(),X0t))&&((e=ZR(Ost(t,X0t),21)).Hc((Tht(),Gne))?(e.Mc(Gne),e.Fc(Yne)):e.Hc(Yne)&&(e.Mc(Yne),e.Fc(Gne)))}function lit(t){var e;PO(t,(y_t(),X0t))&&((e=ZR(Ost(t,X0t),21)).Hc((Tht(),Jne))?(e.Mc(Jne),e.Fc(Kne)):e.Hc(Kne)&&(e.Mc(Kne),e.Fc(Jne)))}function cit(t,e,n,r){var i,a;for(i=e;i0&&(a.b+=e),a}function pit(t,e){var n,i,a;for(a=new Sw,i=t.Kc();i.Ob();)gvt(n=ZR(i.Pb(),37),0,a.b),a.b+=n.f.b+e,a.a=r.Math.max(a.a,n.f.a);return a.a>0&&(a.a+=e),a}function git(t){var e,n,i;for(i=Q_t,n=new md(t.a);n.a>16==6?t.Cb.ih(t,5,eae,e):(n=ert(ZR(CQ(ZR(H3(t,16),26)||t.zh(),t.Db>>16),18)),t.Cb.ih(t,n.n,n.f,e))}function bit(t){var e,n,i;t.b==t.c&&(i=t.a.length,n=_4(r.Math.max(8,i))<<1,0!=t.b?(Q1(t,e=nD(t.a,n),i),t.a=e,t.b=0):Gm(t.a,n),t.c=i)}function xit(t,e){var n;return(n=t.b).Xe((L_t(),_ee))?n.Hf()==(Pwt(),qre)?-n.rf().a-ex(fI(n.We(_ee))):e+ex(fI(n.We(_ee))):n.Hf()==(Pwt(),qre)?-n.rf().a:e}function wit(t){var e;return 0!=t.b.c.length&&ZR(TN(t.b,0),70).a?ZR(TN(t.b,0),70).a:null!=(e=EH(t))?e:""+(t.c?uJ(t.c.a,t,0):-1)}function _it(t){var e;return 0!=t.f.c.length&&ZR(TN(t.f,0),70).a?ZR(TN(t.f,0),70).a:null!=(e=EH(t))?e:""+(t.i?uJ(t.i.j,t,0):-1)}function kit(t,e){var n,r;if(e<0||e>=t.gc())return null;for(n=e;n0?t.c:0),a=r.Math.max(a,e.d),++i;t.e=o,t.b=a}function Ait(t,e,n,r){return 0==e?r?(!t.o&&(t.o=new xZ((l_t(),Uie),hae,t,0)),t.o):(!t.o&&(t.o=new xZ((l_t(),Uie),hae,t,0)),WK(t.o)):Int(t,e,n,r)}function Sit(t){var e,n;if(t.rb)for(e=0,n=t.rb.i;e>22))>>22)<0)&&(t.l=n&VTt,t.m=r&VTt,t.h=i&qTt,!0))}function Pit(t,e,n){var r,i;return o8(i=new Wy,e),k2(i,n),fZ((!t.c&&(t.c=new bF(hoe,t,12,10)),t.c),i),F0(r=i,0),B0(r,1),h7(r,!0),c7(r,!0),r}function Lit(t,e){var n,r;if(e>=t.i)throw um(new UE(e,t.i));return++t.j,n=t.g[e],(r=t.i-e-1)>0&&fbt(t.g,e+1,t.g,e,r),zB(t.g,--t.i,null),t.fi(e,n),t.ci(),n}function Oit(t,e){var n;return t.Db>>16==17?t.Cb.ih(t,21,aoe,e):(n=ert(ZR(CQ(ZR(H3(t,16),26)||t.zh(),t.Db>>16),18)),t.Cb.ih(t,n.n,n.f,e))}function Iit(t){var e,n,r,i,a;for(i=Q_t,a=null,r=new md(t.d);r.an.a.c.length))throw um(new Kb("index must be >= 0 and <= layer node count"));t.c&&sJ(t.c.a,t),t.c=n,n&&QN(n.a,e,t)}function qit(t,e){var n,r,i;for(r=new Oj(dL(o9(t).a.Kc(),new u));Kft(r);)return n=ZR(wX(r),17),new Uf(MB((i=ZR(e.Kb(n),10)).n.b+i.o.b/2));return vb(),vb(),Xjt}function Git(t,e){this.c=new im,this.a=t,this.b=e,this.d=ZR(Ost(t,(O_t(),YKt)),304),rE(Ost(t,(y_t(),K0t)))===rE((aJ(),aXt))?this.e=new Cy:this.e=new Ey}function Wit(t,e){var n,r;return r=null,t.Xe((L_t(),qee))&&(n=ZR(t.We(qee),94)).Xe(e)&&(r=n.We(e)),null==r&&t.yf()&&(r=t.yf().We(e)),null==r&&(r=cnt(e)),r}function Yit(t,e){var n,r;n=t.Zc(e);try{return r=n.Pb(),n.Qb(),r}catch(Wle){throw CP(Wle=_5(Wle),109)?um(new Hb("Can't remove element "+e)):um(Wle)}}function $it(t,e){var n,r,i;for(yU(e),TO(e!=t),i=t.b.c.length,r=e.Kc();r.Ob();)n=r.Pb(),nz(t.b,yU(n));return i!=t.b.c.length&&(h6(t,0),!0)}function Xit(){Xit=P,L_t(),jqt=qte,new zC(Lte,(TL(),!0)),Uqt=tee,Hqt=ree,Vqt=aee,Bqt=Jte,qqt=lee,Gqt=See,Dit(),Nqt=Oqt,Rqt=Cqt,zqt=Lqt,Fqt=Iqt,Dqt=Eqt}function Kit(t,e,n,r){var i,a,o;for(Jq(e,ZR(r.Xb(0),29)),o=r.bd(1,r.gc()),a=ZR(n.Kb(e),20).Kc();a.Ob();)Kit(t,(i=ZR(a.Pb(),17)).c.i==e?i.d.i:i.c.i,n,o)}function Zit(t){var e;return e=new im,PO(t,(O_t(),JKt))?ZR(Ost(t,JKt),83):(Ak(uH(new AN(null,new DG(t.j,16)),new ei),new Fp(e)),d4(t,JKt,e),e)}function Jit(t,e){var n;return t.Db>>16==6?t.Cb.ih(t,6,Kie,e):(n=ert(ZR(CQ(ZR(H3(t,16),26)||(l_t(),zie),t.Db>>16),18)),t.Cb.ih(t,n.n,n.f,e))}function Qit(t,e){var n;return t.Db>>16==7?t.Cb.ih(t,1,Yie,e):(n=ert(ZR(CQ(ZR(H3(t,16),26)||(l_t(),jie),t.Db>>16),18)),t.Cb.ih(t,n.n,n.f,e))}function tat(t,e){var n;return t.Db>>16==9?t.Cb.ih(t,9,rae,e):(n=ert(ZR(CQ(ZR(H3(t,16),26)||(l_t(),Bie),t.Db>>16),18)),t.Cb.ih(t,n.n,n.f,e))}function eat(t,e){var n;return t.Db>>16==5?t.Cb.ih(t,9,loe,e):(n=ert(ZR(CQ(ZR(H3(t,16),26)||(N_t(),Moe),t.Db>>16),18)),t.Cb.ih(t,n.n,n.f,e))}function nat(t,e){var n;return t.Db>>16==3?t.Cb.ih(t,0,Jie,e):(n=ert(ZR(CQ(ZR(H3(t,16),26)||(N_t(),yoe),t.Db>>16),18)),t.Cb.ih(t,n.n,n.f,e))}function rat(t,e){var n;return t.Db>>16==7?t.Cb.ih(t,6,eae,e):(n=ert(ZR(CQ(ZR(H3(t,16),26)||(N_t(),Doe),t.Db>>16),18)),t.Cb.ih(t,n.n,n.f,e))}function iat(){this.a=new dl,this.g=new irt,this.j=new irt,this.b=new im,this.d=new irt,this.i=new irt,this.k=new im,this.c=new im,this.e=new im,this.f=new im}function aat(t,e,n){var r,i,a;for(n<0&&(n=0),a=t.i,i=n;isMt)return oat(t,r);if(r==t)return!0}}return!1}function sat(t,e){var n,i,a;for(sJ(t.a,e),t.e-=e.r+(0==t.a.c.length?0:t.c),a=mOt,i=new md(t.a);i.a>16==3?t.Cb.ih(t,12,rae,e):(n=ert(ZR(CQ(ZR(H3(t,16),26)||(l_t(),Rie),t.Db>>16),18)),t.Cb.ih(t,n.n,n.f,e))}function cat(t,e){var n;return t.Db>>16==11?t.Cb.ih(t,10,rae,e):(n=ert(ZR(CQ(ZR(H3(t,16),26)||(l_t(),Fie),t.Db>>16),18)),t.Cb.ih(t,n.n,n.f,e))}function uat(t,e){var n;return t.Db>>16==10?t.Cb.ih(t,11,aoe,e):(n=ert(ZR(CQ(ZR(H3(t,16),26)||(N_t(),Ooe),t.Db>>16),18)),t.Cb.ih(t,n.n,n.f,e))}function fat(t,e){var n;return t.Db>>16==10?t.Cb.ih(t,12,foe,e):(n=ert(ZR(CQ(ZR(H3(t,16),26)||(N_t(),Roe),t.Db>>16),18)),t.Cb.ih(t,n.n,n.f,e))}function hat(t){var e;return 0==(1&t.Bb)&&t.r&&t.r.kh()&&(e=ZR(t.r,49),t.r=ZR(S8(t,e),138),t.r!=e&&0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,9,8,e,t.r))),t.r}function dat(t,e,n){var i;return i=R5(qx(Qle,1),oMt,25,15,[wst(t,(JQ(),sHt),e,n),wst(t,lHt,e,n),wst(t,cHt,e,n)]),t.f&&(i[0]=r.Math.max(i[0],i[2]),i[2]=i[0]),i}function pat(t,e){var n,r,i;if(i=function(t,e){var n,r,i;for(i=new mK(e.gc()),r=e.Kc();r.Ob();)(n=ZR(r.Pb(),286)).c==n.f?ect(t,n,n.c):Klt(t,n)||(i.c[i.c.length]=n);return i}(t,e),0!=i.c.length)for(JC(i,new er),n=i.c.length,r=0;r>19)!=(s=e.h>>19)?s-o:(r=t.h)!=(a=e.h)?r-a:(n=t.m)!=(i=e.m)?n-i:t.l-e.l}function yat(){yat=P,Dgt(),VUt=new BE(cAt,qUt=QUt),cQ(),UUt=new BE(uAt,HUt=RUt),ent(),FUt=new BE(fAt,BUt=OUt),jUt=new BE(hAt,(TL(),!0))}function bat(t,e,n){var r,i;r=e*n,CP(t.g,145)?(i=AY(t)).f.d?i.f.a||(t.d.a+=r+EAt):(t.d.d-=r+EAt,t.d.a+=r+EAt):CP(t.g,10)&&(t.d.d-=r,t.d.a+=2*r)}function xat(t,e,n){var i,a,o,s,l;for(a=t[n.g],l=new md(e.d);l.a0?t.g:0),++n;e.b=i,e.e=a}function _at(t){var e,n,r;if(r=t.b,bk(t.i,r.length)){for(n=2*r.length,t.b=XK(oFt,Gkt,317,n,0,1),t.c=XK(oFt,Gkt,317,n,0,1),t.f=n-1,t.i=0,e=t.a;e;e=e.c)yut(t,e,e);++t.g}}function kat(t,e,n){var r;(r=e.c.i).k==(plt(),VGt)?(d4(t,(O_t(),AKt),ZR(Ost(r,AKt),11)),d4(t,SKt,ZR(Ost(r,SKt),11))):(d4(t,(O_t(),AKt),e.c),d4(t,SKt,n.d))}function Tat(t,e,n){var i,a,o,s,l,c;return cgt(),s=e/2,o=n/2,l=1,c=1,(i=r.Math.abs(t.a))>s&&(l=s/i),(a=r.Math.abs(t.b))>o&&(c=o/a),jP(t,r.Math.min(l,c)),t}function Mat(){sk.call(this),this.e=-1,this.a=!1,this.p=nTt,this.k=-1,this.c=-1,this.b=-1,this.g=!1,this.f=-1,this.j=-1,this.n=-1,this.i=-1,this.d=-1,this.o=nTt}function Aat(){Aat=P,Zqt=xj(lN(lN(lN(new fY,(Ist(),rGt),(D_t(),NWt)),rGt,UWt),iGt,$Wt),iGt,MWt),Qqt=lN(lN(new fY,rGt,gWt),rGt,AWt),Jqt=xj(new fY,iGt,EWt)}function Sat(t,e){var n,r,i,a;for(a=new im,e.e=null,e.f=null,r=new md(e.i);r.a0)try{i=amt(n,nTt,Q_t)}catch(t){throw CP(t=_5(t),127)?um(new bJ(t)):um(t)}return!e.a&&(e.a=new Xv(e)),r=e.a,i=0?ZR(a0(r,i),56):null}(t,0==(i=e.c.length)?"":(OG(0,e.c.length),hI(e.c[0]))),r=1;r0&&(i=rft(t,(a&Q_t)%t.d.length,a,e))?i.ed(n):(r=t.tj(a,e,n),t.c.Fc(r),null)}function Nat(t,e){var n,r,i,a;switch(W8(t,e)._k()){case 3:case 2:for(i=0,a=(n=ibt(e)).i;i=0?e:-e;r>0;)r%2==0?(n*=n,r=r/2|0):(i*=n,r-=1);return e<0?1/i:i}(t,t)/E8(2.718281828459045,t))}function Uat(t,e){var n;if(t.ni()&&null!=e){for(n=0;n0&&(t.b+=2,t.a+=i):(t.b+=1,t.a+=r.Math.min(i,a))}function Yat(t,e){var n;if(n=!1,oE(e)&&(n=!0,tU(t,new GB(hI(e)))),n||CP(e,236)&&(n=!0,tU(t,new Th(eR(ZR(e,236))))),!n)throw um(new qb(aRt))}function $at(t){var e,n;switch(ZR(Ost(gU(t),(y_t(),D0t)),420).g){case 0:return e=t.n,n=t.o,new KA(e.a+n.a/2,e.b+n.b/2);case 1:return new fC(t.n);default:return null}}function Xat(){Xat=P,hXt=new XM(dEt,0),fXt=new XM("LEFTUP",1),pXt=new XM("RIGHTUP",2),uXt=new XM("LEFTDOWN",3),dXt=new XM("RIGHTDOWN",4),cXt=new XM("BALANCED",5)}function Kat(t,e,n){switch(e){case 1:return!t.n&&(t.n=new bF(nae,t,1,7)),qbt(t.n),!t.n&&(t.n=new bF(nae,t,1,7)),void _B(t.n,ZR(n,14));case 2:return void O1(t,hI(n))}J4(t,e,n)}function Zat(t,e,n){switch(e){case 3:return void L0(t,ex(fI(n)));case 4:return void O0(t,ex(fI(n)));case 5:return void I0(t,ex(fI(n)));case 6:return void D0(t,ex(fI(n)))}Kat(t,e,n)}function Jat(t,e,n){var r,i;(r=hst(i=new Wy,e,null))&&r.Fi(),k2(i,n),fZ((!t.c&&(t.c=new bF(hoe,t,12,10)),t.c),i),F0(i,0),B0(i,1),h7(i,!0),c7(i,!0)}function Qat(t,e){var n,r;return CP(n=DT(t.g,e),235)?((r=ZR(n,235)).Qh(),r.Nh()):CP(n,498)?r=ZR(n,1938).b:null}function tot(t,e,n,r){var i,a;return MB(e),MB(n),kJ(!!(a=ZR(tR(t.d,e),19)),"Row %s not in %s",e,t.e),kJ(!!(i=ZR(tR(t.b,n),19)),"Column %s not in %s",n,t.c),D5(t,a.a,i.a,r)}function eot(t,e,n,r,i,a,o){var s,l,c,u,f;if(f=tit(s=(c=a==o-1)?r:0,u=i[a]),10!=r&&R5(qx(t,o-a),e[a],n[a],s,f),!c)for(++a,l=0;l0?t.i:0)),++e;for(function(t,e){var n,r;for(yU(e),n=!1,r=new md(t);r.a1||-1==s?(a=ZR(l,15),i.Wb(function(t,e){var n,r,i;for(r=new mK(e.gc()),n=e.Kc();n.Ob();)(i=Jvt(t,ZR(n.Pb(),56)))&&(r.c[r.c.length]=i);return r}(t,a))):i.Wb(Jvt(t,ZR(l,56))))}function pot(t){switch(ZR(Ost(t.b,(y_t(),b0t)),375).g){case 1:Ak(fH($J(new AN(null,new DG(t.d,16)),new Fi),new Bi),new Ui);break;case 2:!function(t){var e,n,r,i,a,o,s;for(r=0,s=0,o=new md(t.d);o.a0&&Rit(this,this.c-1,(Pwt(),Tre)),this.c0&&t[0].length>0&&(this.c=tx(uI(Ost(gU(t[0][0]),(O_t(),_Kt))))),this.a=XK(V3t,Akt,2018,t.length,0,2),this.b=XK(q3t,Akt,2019,t.length,0,2),this.d=new n8}function Rot(t){return 0!=t.c.length&&((OG(0,t.c.length),ZR(t.c[0],17)).c.i.k==(plt(),VGt)||J$(fH(new AN(null,new DG(t,16)),new ja),new Fa))}function zot(t,e,n){return ast(n,"Tree layout",1),FW(t.b),VF(t.b,(Fit(),t4t),t4t),VF(t.b,e4t,e4t),VF(t.b,n4t,n4t),VF(t.b,r4t,r4t),t.a=ext(t.b,e),function(t,e,n){var r,i,a;if(i=n,!i&&(i=new ob),ast(i,"Layout",t.a.c.length),tx(uI(Ost(e,(oht(),B4t)))))for(lk(),r=0;r=0?(n=Hat(t,$Tt),r=Att(t,$Tt)):(n=Hat(e=Wj(t,1),5e8),r=e9(qj(r=Att(e,5e8),1),qG(t,1))),GG(qj(r,32),qG(n,cMt))}function $ot(t,e,n){var r;switch(AO(0!=e.b),r=ZR(XQ(e,e.a.a),8),n.g){case 0:r.b=0;break;case 2:r.b=t.f;break;case 3:r.a=0;break;default:r.a=t.g}return lB(tnt(e,0),r),e}function Xot(t,e,n,r){var i,a,o,s,l;switch(l=t.b,s=Fet(o=(a=e.d).j,l.d[o.g],n),i=bD(gP(a.n),a.a),a.j.g){case 1:case 3:s.a+=i.a;break;case 2:case 4:s.b+=i.b}X$(r,s,r.c.b,r.c)}function Kot(t,e,n){var r,i,a,o;for(o=uJ(t.e,e,0),(a=new my).b=n,r=new JW(t.e,o);r.b=0;e--)YBt[e]=r,r*=.5;for(n=1,t=24;t>=0;t--)WBt[t]=n,n*=.5}function Jot(t){var e,n;if(tx(uI(kht(t,(y_t(),L0t)))))for(n=new Oj(dL(ddt(t).a.Kc(),new u));Kft(n);)if(Xut(e=ZR(wX(n),79))&&tx(uI(kht(e,O0t))))return!0;return!1}function Qot(t,e){var n,r,i;FF(t.f,e)&&(e.b=t,r=e.c,-1!=uJ(t.j,r,0)||nz(t.j,r),i=e.d,-1!=uJ(t.j,i,0)||nz(t.j,i),0!=(n=e.a.b).c.length&&(!t.i&&(t.i=new Xet(t)),function(t,e){var n,r;for(r=new md(e);r.a=t.f)break;a.c[a.c.length]=n}return a}function cst(t){var e,n,r,i;for(e=null,i=new md(t.wf());i.a0&&fbt(t.g,e,t.g,e+r,s),o=n.Kc(),t.i+=r,i=0;ia&&AF(c,OQ(n[s],UBt))&&(i=s,a=l);return i>=0&&(r[0]=e+a),i}function vst(t,e,n){ast(n,"Grow Tree",1),t.b=e.f,tx(uI(Ost(e,(x3(),dVt))))?(t.c=new ne,bG(t,null)):t.c=new ne,t.a=!1,apt(t,e.f),d4(e,pVt,(TL(),!!t.a)),jlt(n)}function mst(t){var e,n;return t>=iMt?(e=aMt+(t-iMt>>10&1023)&dTt,n=56320+(t-iMt&1023)&dTt,String.fromCharCode(e)+""+String.fromCharCode(n)):String.fromCharCode(t&dTt)}function yst(t,e,n,r,i){var a,o,s;for(a=Zpt(t,e,n,r,i),s=!1;!a;)Rht(t,i,!0),s=!0,a=Zpt(t,e,n,r,i);s&&Rht(t,i,!1),0!=(o=q5(i)).c.length&&(t.d&&t.d.lg(o),yst(t,i,n,r,o))}function bst(){bst=P,_ne=new nS(dEt,0),xne=new nS("DIRECTED",1),kne=new nS("UNDIRECTED",2),yne=new nS("ASSOCIATION",3),wne=new nS("GENERALIZATION",4),bne=new nS("DEPENDENCY",5)}function xst(t,e){var n,r;for(yU(e),r=t.b.c.length,nz(t.b,e);r>0;){if(n=r,r=(r-1)/2|0,t.a.ue(TN(t.b,r),e)<=0)return K$(t.b,n,e),!0;K$(t.b,n,TN(t.b,r))}return K$(t.b,r,e),!0}function wst(t,e,n,i){var a,o;if(a=0,n)a=Z6(t.a[n.g][e.g],i);else for(o=0;o=o))}function kst(t,e,n,r){var i;if(i=!1,oE(r)&&(i=!0,Dz(e,n,hI(r))),i||iE(r)&&(i=!0,kst(t,e,n,r)),i||CP(r,236)&&(i=!0,tV(e,n,ZR(r,236))),!i)throw um(new qb(aRt))}function Tst(t,e){var n,r,i,a;if(yU(e),(a=t.a.gc())=hTt?"error":"warn",t.a),t.b&&tpt(e,n,t.b,"Exception: ",!0))}function Ost(t,e){var n,r;return!t.q&&(t.q=new im),null!=(r=UB(t.q,e))?r:(CP(n=e.wg(),4)&&(null==n?(!t.q&&(t.q=new im),GX(t.q,e)):(!t.q&&(t.q=new im),RU(t.q,e,n))),n)}function Ist(){Ist=P,tGt=new dM("P1_CYCLE_BREAKING",0),eGt=new dM("P2_LAYERING",1),nGt=new dM("P3_NODE_ORDERING",2),rGt=new dM("P4_NODE_PLACEMENT",3),iGt=new dM("P5_EDGE_ROUTING",4)}function Dst(t,e){var n,r,i,a;for(r=(1==e?fGt:uGt).a.ec().Kc();r.Ob();)for(n=ZR(r.Pb(),103),a=ZR(FX(t.f.c,n),21).Kc();a.Ob();)i=ZR(a.Pb(),46),sJ(t.b.b,i.b),sJ(t.b.a,ZR(i.b,81).d)}function Rst(t,e){var n;if(lQ(),t.c==e.c){if(t.b==e.b||function(t,e){return F5(),t==gGt&&e==yGt||t==yGt&&e==gGt||t==mGt&&e==vGt||t==vGt&&e==mGt}(t.b,e.b)){if(n=function(t){return t==gGt||t==yGt}(t.b)?1:-1,t.a&&!e.a)return n;if(!t.a&&e.a)return-n}return nP(t.b.g,e.b.g)}return O7(t.c,e.c)}function zst(t,e){var n,r;if(Wst(t,e))return!0;for(r=new md(e);r.a=(i=t.Vi())||e<0)throw um(new Hb(TRt+e+MRt+i));if(n>=i||n<0)throw um(new Hb(ARt+n+MRt+i));return e!=n?(a=t.Ti(n),t.Hi(e,a),r=a):r=t.Oi(n),r}function qst(t){var e,n,r;if(r=t,t)for(e=0,n=t.Ug();n;n=n.Ug()){if(++e>sMt)return qst(n);if(r=n,n==t)throw um(new Zb("There is a cycle in the containment hierarchy of "+t))}return r}function Gst(t){var e,n,r;for(r=new J3(rkt,"[","]"),n=t.Kc();n.Ob();)HX(r,rE(e=n.Pb())===rE(t)?"(this Collection)":null==e?lkt:E9(e));return r.a?0==r.e.length?r.a.a:r.a.a+""+r.e:r.c}function Wst(t,e){var n,r;if(r=!1,e.gc()<2)return!1;for(n=0;nr&&(IG(e-1,t.length),t.charCodeAt(e-1)<=32);)--e;return r>0||e1&&(t.j.b+=t.e)):(t.j.a+=n.a,t.j.b=r.Math.max(t.j.b,n.b),t.d.c.length>1&&(t.j.a+=t.e))}function Zst(){Zst=P,$Yt=R5(qx(Jre,1),pEt,61,0,[(Pwt(),Mre),Tre,Hre]),YYt=R5(qx(Jre,1),pEt,61,0,[Tre,Hre,qre]),XYt=R5(qx(Jre,1),pEt,61,0,[Hre,qre,Mre]),KYt=R5(qx(Jre,1),pEt,61,0,[qre,Mre,Tre])}function Jst(t,e,n,r){var i,a,o,s,l;if(a=t.c.d,o=t.d.d,a.j!=o.j)for(l=t.b,i=a.j,s=null;i!=o.j;)s=0==e?L7(i):C7(i),jz(r,bD(Fet(i,l.d[i.g],n),Fet(s,l.d[s.g],n))),i=s}function Qst(t,e,n,r){var i,a,o,s,l;return s=ZR((o=Nit(t.a,e,n)).a,19).a,a=ZR(o.b,19).a,r&&(l=ZR(Ost(e,(O_t(),FKt)),10),i=ZR(Ost(n,FKt),10),l&&i&&(ZY(t.b,l,i),s+=t.b.i,a+=t.b.e)),s>a}function tlt(t){var e,n,r,i,a,o,s,l;for(this.a=znt(t),this.b=new rm,r=0,i=(n=t).length;r0&&(t.a[V.p]=J++)}for(rt=0,D=0,N=(L=n).length;D0;){for(AO(Y.b>0),W=0,l=new md((V=ZR(Y.a.Xb(Y.c=--Y.b),11)).e);l.a0&&(V.j==(Pwt(),Mre)?(t.a[V.p]=rt,++rt):(t.a[V.p]=rt+j+B,++B))}rt+=B}for(G=new im,g=new lC,O=0,R=(C=e).length;Ou.b&&(u.b=$)):V.i.c==Z&&($u.c&&(u.c=$));for(zZ(v,0,v.length,null),nt=XK(Xle,STt,25,v.length,15,1),i=XK(Xle,STt,25,rt+1,15,1),y=0;y0;)T%2>0&&(a+=ot[T+1]),++ot[T=(T-1)/2|0];for(A=XK(a5t,akt,362,2*v.length,0,1),w=0;wTI(t.d).c?(t.i+=t.g.c,Ctt(t.d)):TI(t.d).c>TI(t.g).c?(t.e+=t.d.c,Ctt(t.g)):(t.i+=EN(t.g),t.e+=EN(t.d),Ctt(t.g),Ctt(t.d))}function ilt(t,e,n,i){t.a.d=r.Math.min(e,n),t.a.a=r.Math.max(e,i)-t.a.d,el&&(c=l/i),(a=r.Math.abs(e.b-t.b))>o&&(u=o/a),s=r.Math.min(c,u),t.a+=s*(e.a-t.a),t.b+=s*(e.b-t.b)}function ult(t,e,n,r,i){var a,o;for(o=!1,a=ZR(TN(n.b,0),33);Eyt(t,e,a,r,i)&&(o=!0,cot(n,a),0!=n.b.c.length);)a=ZR(TN(n.b,0),33);return 0==n.b.c.length&&sat(n.j,n),o&&rit(e.q),o}function flt(t,e){var n,r,i,a;if(cgt(),e.b<2)return!1;for(r=n=ZR(EY(a=tnt(e,0)),8);a.b!=a.d.c;){if(Fdt(t,r,i=ZR(EY(a),8)))return!0;r=i}return!!Fdt(t,r,n)}function hlt(t,e,n,r){return 0==n?(!t.o&&(t.o=new xZ((l_t(),Uie),hae,t,0)),ZD(t.o,e,r)):ZR(CQ(ZR(H3(t,16),26)||t.zh(),n),66).Nj().Rj(t,vet(t),n-yB(t.zh()),e,r)}function dlt(t,e){var n;e!=t.sb?(n=null,t.sb&&(n=ZR(t.sb,49).ih(t,1,Qie,n)),e&&(n=ZR(e,49).gh(t,1,Qie,n)),(n=H8(t,e,n))&&n.Fi()):0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,4,e,e))}function plt(){plt=P,qGt=new vM("NORMAL",0),VGt=new vM("LONG_EDGE",1),UGt=new vM("EXTERNAL_PORT",2),GGt=new vM("NORTH_SOUTH_PORT",3),HGt=new vM("LABEL",4),BGt=new vM("BREAKING_POINT",5)}function glt(t,e,n){var r;ast(n,"Self-Loop routing",1),r=function(t){switch(ZR(Ost(t,(y_t(),v0t)),218).g){case 1:return new ra;case 3:return new la;default:return new na}}(e),gE(Ost(e,(eK(),B9t))),Ak(fH(uH(uH($J(new AN(null,new DG(e.b,16)),new Gr),new Wr),new Yr),new $r),new xM(t,r)),jlt(n)}function vlt(t,e){var n,r,i;return(e&=63)<22?(n=t.l<>22-e,i=t.h<>22-e):e<44?(n=0,r=t.l<>44-e):(n=0,r=0,i=t.l<t)throw um(new Kb("k must be smaller than n"));return 0==e||e==t?1:0==t?0:Bat(t)/(Bat(e)*Bat(t-e))}function xlt(t,e){var n,r,i,a;for(n=new AC(t);null!=n.g||n.c?null==n.g||0!=n.i&&ZR(n.g[n.i-1],47).Ob():Lq(n);)if(CP(a=ZR(sdt(n),56),160))for(r=ZR(a,160),i=0;i0&&_vt(t,n,e),i):function(t,e,n){var r,i,a;if(r=t.c[e.c.p][e.p],i=t.c[n.c.p][n.p],null!=r.a&&null!=i.a)return(a=$j(r.a,i.a))<0?_vt(t,e,n):a>0&&_vt(t,n,e),a;if(null!=r.a)return _vt(t,e,n),-1;if(null!=i.a)return _vt(t,n,e),1;return 0}(t,e,n)}function zlt(t,e,n){var r,i,a,o;if(0!=e.b){for(r=new Mk,o=tnt(e,0);o.b!=o.d.c;)C2(r,V5(a=ZR(EY(o),86))),(i=a.e).a=ZR(Ost(a,(oxt(),I4t)),19).a,i.b=ZR(Ost(a,D4t),19).a;zlt(t,r,J2(n,r.b/t.a|0))}}function Nlt(t,e){var n,r,i,a,o;if(t.e<=e)return t.g;if(function(t,e,n){var r;return(r=ubt(t,e,!1)).b<=e&&r.a<=n}(t,t.g,e))return t.g;for(a=t.r,r=t.g,o=t.r,i=(a-r)/2+r;r+11&&(t.e.b+=t.a)):(t.e.a+=n.a,t.e.b=r.Math.max(t.e.b,n.b),t.d.c.length>1&&(t.e.a+=t.a))}function Hlt(t){var e,n,r,i;switch(e=(i=t.i).b,r=i.j,n=i.g,i.a.g){case 0:n.a=(t.g.b.o.a-r.a)/2;break;case 1:n.a=e.d.n.a+e.d.a.a;break;case 2:n.a=e.d.n.a+e.d.a.a-r.a;break;case 3:n.b=e.d.n.b+e.d.a.b}}function Vlt(t,e,n,r,i){if(rr&&(t.a=r),t.bi&&(t.b=i),t}function qlt(t){if(CP(t,149))return function(t){var e,n,r,i,a,o,s,l,c,u;u=ost(t),e=t.a,s=null!=e,s&&Dz(u,"category",t.a),i=A_(new Zh(t.d)),o=!i,o&&(PQ(u,"knownOptions",l=new Ah),n=new Mv(l),Y$(new Zh(t.d),n));a=A_(t.g),!a&&(PQ(u,"supportedFeatures",c=new Ah),r=new Av(c),Y$(t.g,r));return u}(ZR(t,149));if(CP(t,229))return function(t){var e,n,r;return r=ost(t),!A_(t.c)&&(PQ(r,"knownLayouters",n=new Ah),e=new Sv(n),Y$(t.c,e)),r}(ZR(t,229));if(CP(t,23))return function(t){var e,n,r;return r=ost(t),null!=t.e&&Dz(r,mRt,t.e),!!t.k&&Dz(r,"type",gO(t.k)),!A_(t.j)&&(n=new Ah,PQ(r,ZDt,n),e=new Ev(n),Y$(t.j,e)),r}(ZR(t,23));throw um(new Kb(lRt+Gst(new ox(R5(qx(Yjt,1),akt,1,5,[t])))))}function Glt(t,e,n,r){var i,a;if(e.k==(plt(),VGt))for(a=new Oj(dL(s9(e).a.Kc(),new u));Kft(a);)if((i=ZR(wX(a),17)).c.i.k==VGt&&t.c.a[i.c.i.c.p]==r&&t.c.a[e.c.p]==n)return!0;return!1}function Wlt(t,e,n,r){var i;this.b=r,this.e=t==(h1(),$3t),i=e[n],this.d=fN(Kle,[Akt,vAt],[177,25],16,[i.length,i.length],2),this.a=fN(Xle,[Akt,STt],[48,25],15,[i.length,i.length],2),this.c=new Iot(e,n)}function Ylt(t){var e,n,r;for(t.k=new CG((Pwt(),R5(qx(Jre,1),pEt,61,0,[Vre,Mre,Tre,Hre,qre])).length,t.j.c.length),r=new md(t.j);r.a=n)return ect(t,e,r.p),!0;return!1}function Zlt(t){var e;return 0!=(64&t.Db)?wlt(t):(e=new AL(vDt),!t.a||xE(xE((e.a+=' "',e),t.a),'"'),xE(e_(xE(e_(xE(e_(xE(e_((e.a+=" (",e),t.i),","),t.j)," | "),t.g),","),t.f),")"),e.a)}function Jlt(t,e,n){var r,i,a,o,s;for(s=mpt(t.e.Tg(),e),i=ZR(t.g,119),r=0,o=0;o0&&rct(t,a,n));e.p=0}function ict(t){var e;this.c=new Mk,this.f=t.e,this.e=t.d,this.i=t.g,this.d=t.c,this.b=t.b,this.k=t.j,this.a=t.a,t.i?this.j=t.i:this.j=new aR(e=ZR(Lw(j9t),9),ZR(nD(e,e.length),9),0),this.g=t.f}function act(t,e,n){var r,i,a;if(!(n<=e+2))for(i=(n-e)/2|0,r=0;r=0?t.Bh(i):Tut(t,r)}else i7(t,n,r)}function cct(t){var e,n;if(n=null,e=!1,CP(t,204)&&(e=!0,n=ZR(t,204).a),e||CP(t,258)&&(e=!0,n=""+ZR(t,258).a),e||CP(t,483)&&(e=!0,n=""+ZR(t,483).a),!e)throw um(new qb(aRt));return n}function uct(t,e){var n,r;if(t.f){for(;e.Ob();)if(CP(r=(n=ZR(e.Pb(),72)).ak(),99)&&0!=(ZR(r,18).Bb&SDt)&&(!t.e||r.Gj()!=Gie||0!=r.aj())&&null!=n.dd())return e.Ub(),!0;return!1}return e.Ob()}function fct(t,e){var n,r;if(t.f){for(;e.Sb();)if(CP(r=(n=ZR(e.Ub(),72)).ak(),99)&&0!=(ZR(r,18).Bb&SDt)&&(!t.e||r.Gj()!=Gie||0!=r.aj())&&null!=n.dd())return e.Pb(),!0;return!1}return e.Sb()}function hct(t,e,n){var r,i,a,o,s,l;for(l=mpt(t.e.Tg(),e),r=0,s=t.i,i=ZR(t.g,119),o=0;o=(i/2|0))for(this.e=r?r.c:null,this.d=i;n++0;)$q(this);this.b=e,this.a=null}function Tct(t,e){var n,r;e.a?function(t,e){var n,r;if(r=sB(t.b,e.b),!r)throw um(new Zb("Invalid hitboxes for scanline constraint calculation."));(C5(e.b,ZR(function(t,e){return Ow(Ntt(t.a,e,!0))}(t.b,e.b),57))||C5(e.b,ZR(function(t,e){return Ow(ztt(t.a,e,!0))}(t.b,e.b),57)))&&(lk(),e.b),t.a[e.b.f]=ZR(UD(t.b,e.b),57),n=ZR(BD(t.b,e.b),57),n&&(t.a[n.f]=e.b)}(t,e):(!!(n=ZR(UD(t.b,e.b),57))&&n==t.a[e.b.f]&&!!n.a&&n.a!=e.b.a&&n.c.Fc(e.b),!!(r=ZR(BD(t.b,e.b),57))&&t.a[r.f]==e.b&&!!r.a&&r.a!=e.b.a&&e.b.c.Fc(r),NL(t.b,e.b))}function Mct(t,e){var n,r;if(n=ZR(qU(t.b,e),124),ZR(ZR(FX(t.r,e),21),84).dc())return n.n.b=0,void(n.n.c=0);n.n.b=t.C.b,n.n.c=t.C.c,t.A.Hc((Ltt(),nie))&&Xgt(t,e),r=function(t,e){var n,r,i;for(i=0,r=ZR(ZR(FX(t.r,e),21),84).Kc();r.Ob();)i+=(n=ZR(r.Pb(),111)).d.b+n.b.rf().a+n.d.c,r.Ob()&&(i+=t.w);return i}(t,e),hgt(t,e)==(Jet(),rre)&&(r+=2*t.w),n.a.a=r}function Act(t,e){var n,r;if(n=ZR(qU(t.b,e),124),ZR(ZR(FX(t.r,e),21),84).dc())return n.n.d=0,void(n.n.a=0);n.n.d=t.C.d,n.n.a=t.C.a,t.A.Hc((Ltt(),nie))&&Kgt(t,e),r=function(t,e){var n,r,i;for(i=0,r=ZR(ZR(FX(t.r,e),21),84).Kc();r.Ob();)i+=(n=ZR(r.Pb(),111)).d.d+n.b.rf().b+n.d.a,r.Ob()&&(i+=t.w);return i}(t,e),hgt(t,e)==(Jet(),rre)&&(r+=2*t.w),n.a.b=r}function Sct(t,e){var n,r,i,a;for(a=new rm,r=new md(e);r.a=0&&FD(t.substr(s,"//".length),"//")?(l=Het(t,s+=2,Xae,Kae),r=t.substr(s,l-s),s=l):null==f||s!=t.length&&(IG(s,t.length),47==t.charCodeAt(s))||(o=!1,-1==(l=DL(t,mst(35),s))&&(l=t.length),r=t.substr(s,l-s),s=l);!n&&s0&&58==YU(u,u.length-1)&&(i=u,s=l));s0&&(IG(0,n.length),47!=n.charCodeAt(0))))throw um(new Kb("invalid opaquePart: "+n));if(t&&(null==e||!fk(jae,e.toLowerCase()))&&null!=n&&O9(n,Xae,Kae))throw um(new Kb(Mzt+n));if(t&&null!=e&&fk(jae,e.toLowerCase())&&!function(e){if(null!=e&&e.length>0&&33==YU(e,e.length-1))try{return null==zct(hO(e,0,e.length-1)).e}catch(t){if(!CP(t=_5(t),32))throw um(t)}return!1}(n))throw um(new Kb(Mzt+n));if(!function(t){var e;return null==t||(e=t.length)>0&&(IG(e-1,t.length),58==t.charCodeAt(e-1))&&!O9(t,Xae,Kae)}(r))throw um(new Kb("invalid device: "+r));if(!function(t){var e,n;if(null==t)return!1;for(e=0,n=t.length;en.a&&(r.Hc((vot(),fte))?i=(e.a-n.a)/2:r.Hc(dte)&&(i=e.a-n.a)),e.b>n.b&&(r.Hc((vot(),gte))?a=(e.b-n.b)/2:r.Hc(pte)&&(a=e.b-n.b)),Est(t,i,a)}function Gct(t,e,n,r,i,a,o,s,l,c,u,f,h){CP(t.Cb,88)&&aut(dX(ZR(t.Cb,88)),4),k2(t,n),t.f=o,z7(t,s),j7(t,l),R7(t,c),N7(t,u),h7(t,f),H7(t,h),c7(t,!0),F0(t,i),t.ok(a),o8(t,e),null!=r&&(t.i=null,J1(t,r))}function Wct(t){var e,n;if(t.f){for(;t.n>0;){if(CP(n=(e=ZR(t.k.Xb(t.n-1),72)).ak(),99)&&0!=(ZR(n,18).Bb&SDt)&&(!t.e||n.Gj()!=Gie||0!=n.aj())&&null!=e.dd())return!0;--t.n}return!1}return t.n>0}function Yct(t,e,n){if(t<0)return nvt(ikt,R5(qx(Yjt,1),akt,1,5,[n,g7(t)]));if(e<0)throw um(new Kb(okt+e));return nvt("%s (%s) must not be greater than size (%s)",R5(qx(Yjt,1),akt,1,5,[n,g7(t),g7(e)]))}function $ct(t,e,n,r,i,a){var o,s,l;if(r-n<7)!function(t,e,n,r){var i,a,o;for(i=e+1;ie&&r.ue(t[a-1],t[a])>0;--a)o=t[a],zB(t,a,t[a-1]),zB(t,a-1,o)}(e,n,r,a);else if($ct(e,t,s=n+i,l=s+((o=r+i)-s>>1),-i,a),$ct(e,t,l,o,-i,a),a.ue(t[l-1],t[l])<=0)for(;n=r||e=0?t.sh(a,n):ydt(t,i,n)}else k9(t,r,i,n)}function Zct(t){var e,n,r,i,a;if(n=ZR(t,49).qh())try{if(r=null,(e=Vht((bT(),soe),fmt(null==(a=n).e?a:(!a.c&&(a.c=new Ngt(0!=(256&a.f),a.i,a.a,a.d,0!=(16&a.f),a.j,a.g,null)),a.c))))&&(i=e.rh())&&(r=i.Wk(function(t){return yU(t),t}(n.e))),r&&r!=t)return Zct(r)}catch(a){if(!CP(a=_5(a),60))throw um(a)}return t}function Jct(t,e,n){var r,i,a,o;if(o=null==e?0:t.b.se(e),0==(i=null==(r=t.a.get(o))?new Array:r).length)t.a.set(o,i);else if(a=V6(t,e,i))return a.ed(n);return zB(i,i.length,new GT(e,n)),++t.c,vV(t.b),null}function Qct(t,e){var n;return FW(t.a),VF(t.a,(m2(),d6t),d6t),VF(t.a,p6t,p6t),lN(n=new fY,p6t,(b9(),b6t)),rE(kht(e,(Bit(),V6t)))!==rE((E6(),M6t))&&lN(n,p6t,m6t),lN(n,p6t,y6t),oC(t.a,n),ext(t.a,e)}function tut(t){if(!t)return xx(),EFt;var e=t.valueOf?t.valueOf():t;if(e!==t){var n=CFt[typeof e];return n?n(e):Q6(typeof e)}return t instanceof Array||t instanceof r.Array?new _h(t):new Mh(t)}function eut(t,e,n){var i,a,o;switch(o=t.o,(a=(i=ZR(qU(t.p,n),244)).i).b=jut(i),a.a=Nut(i),a.b=r.Math.max(a.b,o.a),a.b>o.a&&!e&&(a.b=o.a),a.c=-(a.b-o.a)/2,n.g){case 1:a.d=-a.a;break;case 3:a.d=o.b}syt(i),hyt(i)}function nut(t,e,n){var i,a,o;switch(o=t.o,(a=(i=ZR(qU(t.p,n),244)).i).b=jut(i),a.a=Nut(i),a.a=r.Math.max(a.a,o.b),a.a>o.b&&!e&&(a.a=o.b),a.d=-(a.a-o.b)/2,n.g){case 4:a.c=-a.b;break;case 2:a.c=o.a}syt(i),hyt(i)}function rut(t,e){var n,r,i,a;if(cgt(),e.b<2)return!1;for(r=n=ZR(EY(a=tnt(e,0)),8);a.b!=a.d.c;){if(i=ZR(EY(a),8),!c3(t,r)||!c3(t,i))return!1;r=i}return!(!c3(t,r)||!c3(t,n))}function iut(t,e){var n,r,i,a,o;return null,n=V0(o=t,"x"),function(t,e){I0(t,null==e||nR((yU(e),e))||isNaN((yU(e),e))?0:(yU(e),e))}(new hv(e).a,n),r=V0(o,"y"),function(t,e){D0(t,null==e||nR((yU(e),e))||isNaN((yU(e),e))?0:(yU(e),e))}(new dv(e).a,r),i=V0(o,GDt),function(t,e){O0(t,null==e||nR((yU(e),e))||isNaN((yU(e),e))?0:(yU(e),e))}(new pv(e).a,i),a=V0(o,qDt),function(t,e){L0(t,null==e||nR((yU(e),e))||isNaN((yU(e),e))?0:(yU(e),e))}(new gv(e).a,a),a}function aut(t,e){Wgt(t,e),0!=(1&t.b)&&(t.a.a=null),0!=(2&t.b)&&(t.a.f=null),0!=(4&t.b)&&(t.a.g=null,t.a.i=null),0!=(16&t.b)&&(t.a.d=null,t.a.e=null),0!=(8&t.b)&&(t.a.b=null),0!=(32&t.b)&&(t.a.j=null,t.a.c=null)}function out(t){var e,n,r,i,a;if(null==t)return lkt;for(a=new J3(rkt,"[","]"),r=0,i=(n=t).length;r0)for(o=t.c.d,i=jP(xD(new KA((s=t.d.d).a,s.b),o),1/(r+1)),a=new KA(o.a,o.b),n=new md(t.a);n.a(OG(a+1,e.c.length),ZR(e.c[a+1],19)).a-r&&++s,nz(i,(OG(a+s,e.c.length),ZR(e.c[a+s],19))),o+=(OG(a+s,e.c.length),ZR(e.c[a+s],19)).a-r,++n;n=0?t._g(n,!0,!0):nft(t,i,!0),153),ZR(r,215).ol(e)}function Mut(t){var e,n;return t>-0x800000000000&&t<0x800000000000?0==t?0:((e=t<0)&&(t=-t),n=lq(r.Math.floor(r.Math.log(t)/.6931471805599453)),(!e||t!=r.Math.pow(2,n))&&++n,n):u5(z3(t))}function Aut(t,e){var n,r,i;return l5(r=new art(t),e),d4(r,(O_t(),fKt),e),d4(r,(y_t(),b1t),(jot(),cre)),d4(r,jQt,(qnt(),W9t)),Lh(r,(plt(),UGt)),Qq(n=new Clt,r),gut(n,(Pwt(),qre)),Qq(i=new Clt,r),gut(i,Tre),r}function Sut(t){switch(t.g){case 0:return new Gb((h1(),Y3t));case 1:return new df;case 2:return new xf;default:throw um(new Kb("No implementation is available for the crossing minimizer "+(null!=t.f?t.f:""+t.g)))}}function Eut(t,e){var n,r,i,a;for(t.c[e.p]=!0,nz(t.a,e),a=new md(e.j);a.a=(a=o.gc()))o.$b();else for(i=o.Kc(),r=0;r0&&(o+=n,++e);e>1&&(o+=t.c*(e-1))}else o=Ux(B2(hH(uH(YF(t.a),new Tt),new Mt)));return o>0?o+t.n.d+t.n.a:0}function jut(t){var e,n,r,i,a,o;if(o=0,0==t.b)o=Ux(B2(hH(uH(YF(t.a),new _t),new kt)));else{for(e=0,i=0,a=(r=brt(t,!0)).length;i0&&(o+=n,++e);e>1&&(o+=t.c*(e-1))}return o>0?o+t.n.b+t.n.c:0}function Fut(t){var e,n;return(n=new Lx).a+="e_",e=function(t){return 0!=t.b.c.length&&ZR(TN(t.b,0),70).a?ZR(TN(t.b,0),70).a:EH(t)}(t),null!=e&&(n.a+=""+e),t.c&&t.d&&(xE((n.a+=" ",n),_it(t.c)),xE(bE((n.a+="[",n),t.c.i),"]"),xE((n.a+=bEt,n),_it(t.d)),xE(bE((n.a+="[",n),t.d.i),"]")),n.a}function But(t){switch(t.g){case 0:return new gf;case 1:return new vf;case 2:return new pf;case 3:return new mf;default:throw um(new Kb("No implementation is available for the layout phase "+(null!=t.f?t.f:""+t.g)))}}function Uut(t,e,n,i,a){var o;switch(o=0,a.g){case 1:o=r.Math.max(0,e.b+t.b-(n.b+i));break;case 3:o=r.Math.max(0,-t.b-i);break;case 2:o=r.Math.max(0,-t.a-i);break;case 4:o=r.Math.max(0,e.a+t.a-(n.a+i))}return o}function Hut(t){var e,n;switch(t.b){case-1:return!0;case 0:return(n=t.t)>1||-1==n||(e=hat(t))&&(TT(),e.Cj()==Bzt)?(t.b=-1,!0):(t.b=1,!1);default:return!1}}function Vut(t,e){var n,r,i,a;if(k_t(t),0!=t.c||123!=t.a)throw um(new px(B_t((qC(),qRt))));if(a=112==e,r=t.d,(n=dO(t.i,125,r))<0)throw um(new px(B_t((qC(),GRt))));return i=hO(t.i,r,n),t.d=n+1,dZ(i,a,512==(512&t.e))}function qut(t,e,n,r,i){var a,o,s,l;return rE(l=tI(t,ZR(i,56)))!==rE(i)?(s=ZR(t.g[n],72),FP(t,n,Wot(t,0,a=XY(e,l))),vC(t.e)&&(Eot(o=jV(t,9,a.ak(),i,l,r,!1),new xJ(t.e,9,t.c,s,a,r,!1)),yJ(o)),l):i}function Gut(t,e){var n,r,i;try{return i=function(t,e){var n;return TO(!!(n=(yU(t),t).g)),yU(e),n(e)}(t.a,e),i}catch(Yle){if(CP(Yle=_5(Yle),32)){try{if(r=amt(e,nTt,Q_t),n=Lw(t.a),r>=0&&r=0?t._g(n,!0,!0):nft(t,i,!0),153),ZR(r,215).ll(e);throw um(new Kb(wDt+e.ne()+TDt))}function Yut(t,e){var n,r,i;if(i=0,(r=e[0])>=t.length)return-1;for(IG(r,t.length),n=t.charCodeAt(r);n>=48&&n<=57&&(i=10*i+(n-48),!(++r>=t.length));)IG(r,t.length),n=t.charCodeAt(r);return r>e[0]?e[0]=r:i=-1,i}function $ut(t,e,n){var r,i,a,o;a=t.c,o=t.d,i=(O4(R5(qx(V9t,1),Akt,8,0,[a.i.n,a.n,a.a])).b+O4(R5(qx(V9t,1),Akt,8,0,[o.i.n,o.n,o.a])).b)/2,r=null,r=a.j==(Pwt(),Tre)?new KA(e+a.i.c.c.a+n,i):new KA(e-n,i),LO(t.a,0,r)}function Xut(t){var e,n,r;for(e=null,n=$F(t1(R5(qx(Jjt,1),akt,20,0,[(!t.b&&(t.b=new LD(Xie,t,4,7)),t.b),(!t.c&&(t.c=new LD(Xie,t,5,8)),t.c)])));Kft(n);)if(r=ist(ZR(wX(n),82)),e){if(e!=r)return!1}else e=r;return!0}function Kut(t,e,n){var r;if(++t.j,e>=t.i)throw um(new Hb(TRt+e+MRt+t.i));if(n>=t.i)throw um(new Hb(ARt+n+MRt+t.i));return r=t.g[n],e!=n&&(e>16))>>16&16),n+=e=(r=(t>>=e)-256)>>16&8,n+=e=(r=(t<<=e)-nMt)>>16&4,(n+=e=(r=(t<<=e)-Skt)>>16&2)+2-(e=(r=(t<<=e)>>14)&~(r>>1)))}function Qut(t){var e,n,r,i;for(WH(),VVt=new rm,HVt=new im,UVt=new rm,!t.a&&(t.a=new bF(rae,t,10,11)),function(t){var e,n,r,i,a,o,s,l,c,f;for(e=new im,o=new WP(t);o.e!=o.i.gc();){for(a=ZR(fnt(o),33),n=new Km,RU(HVt,a,n),f=new oe,r=ZR(w$(new AN(null,new tB(new Oj(dL(hdt(a).a.Kc(),new u)))),rj(f,bZ(new H,new U,new rt,R5(qx(vUt,1),Xkt,132,0,[(C6(),dUt)])))),83),r1(n,ZR(r.xc((TL(),!0)),14),new se),i=ZR(w$(uH(ZR(r.xc(!1),15).Lc(),new le),bZ(new H,new U,new rt,R5(qx(vUt,1),Xkt,132,0,[dUt]))),15).Kc();i.Ob();)(c=Bst(ZR(i.Pb(),79)))&&((s=ZR(nE(zV(e.f,c)),21))||(s=Ipt(c),Jct(e.f,c,s)),C2(n,s));for(r=ZR(w$(new AN(null,new tB(new Oj(dL(ddt(a).a.Kc(),new u)))),rj(f,bZ(new H,new U,new rt,R5(qx(vUt,1),Xkt,132,0,[dUt])))),83),r1(n,ZR(r.xc(!0),14),new ce),l=ZR(w$(uH(ZR(r.xc(!1),15).Lc(),new ue),bZ(new H,new U,new rt,R5(qx(vUt,1),Xkt,132,0,[dUt]))),15).Kc();l.Ob();)(c=Ust(ZR(l.Pb(),79)))&&((s=ZR(nE(zV(e.f,c)),21))||(s=Ipt(c),Jct(e.f,c,s)),C2(n,s))}}(e=t.a),i=new WP(e);i.e!=i.i.gc();)r=ZR(fnt(i),33),-1==uJ(VVt,r,0)&&(n=new rm,nz(UVt,n),Iet(r,n));return UVt}function tft(t,e){var n,i,a,o,s,l,c,u;for(u=ex(fI(Ost(e,(y_t(),Z1t)))),c=t[0].n.a+t[0].o.a+t[0].d.c+u,l=1;l0?1:KE(isNaN(i),isNaN(0)))>=0^(l1($Lt),(r.Math.abs(l)<=$Lt||0==l||isNaN(l)&&isNaN(0)?0:l<0?-1:l>0?1:KE(isNaN(l),isNaN(0)))>=0))return r.Math.max(l,i);if(l1($Lt),(r.Math.abs(i)<=$Lt||0==i||isNaN(i)&&isNaN(0)?0:i<0?-1:i>0?1:KE(isNaN(i),isNaN(0)))>0)return r.Math.sqrt(l*l+i*i);return-r.Math.sqrt(l*l+i*i)}(o=i.b,s=a.b),n>=0?n:(l=fU(xD(new KA(s.c+s.b/2,s.d+s.a/2),new KA(o.c+o.b/2,o.d+o.a/2))),-(Cmt(o,s)-1)*l)}function nft(t,e,n){var r,i,a;if(a=axt((gct(),vse),t.Tg(),e))return TT(),ZR(a,66).Oj()||(a=UG(SJ(vse,a))),i=ZR((r=t.Yg(a))>=0?t._g(r,!0,!0):nft(t,a,!0),153),ZR(i,215).hl(e,n);throw um(new Kb(wDt+e.ne()+TDt))}function rft(t,e,n,r){var i,a,o,s,l;if(i=t.d[e])if(a=i.g,l=i.i,null!=r){for(s=0;s>5),15,1))[n]=1<1;e>>=1)0!=(1&e)&&(r=sQ(r,n)),n=1==n.d?sQ(n,n):new Aet(dmt(n.a,n.d,XK(Xle,STt,25,n.d<<1,15,1)));return sQ(r,n)}(t,e)}function aft(t){var e,n,r;for($k(),this.b=hGt,this.c=(e7(),ine),this.f=(Yk(),lGt),this.a=t,Zx(this,new Se),Gdt(this),r=new md(t.b);r.a=null.jm()?(sdt(t),lft(t)):e.Ob()}function cft(t,e,n){var i,a,o,s;if(!(s=n)&&(s=Rz(new ob,0)),ast(s,oEt,1),Dxt(t.c,e),o=function(t,e){var n,r,i,a,o,s,l,c,u,f,h,d;if(t.c=t.d,d=uI(Ost(e,(y_t(),O1t))),h=null==d||(yU(d),d),a=ZR(Ost(e,(O_t(),gKt)),21).Hc((igt(),EXt)),i=ZR(Ost(e,b1t),98),n=!(i==(jot(),lre)||i==ure||i==cre),!h||!n&&a)f=new ox(R5(qx(jGt,1),gEt,37,0,[e]));else{for(u=new md(e.a);u.ae.a&&(r.Hc((vot(),fte))?t.c.a+=(n.a-e.a)/2:r.Hc(dte)&&(t.c.a+=n.a-e.a)),n.b>e.b&&(r.Hc((vot(),gte))?t.c.b+=(n.b-e.b)/2:r.Hc(pte)&&(t.c.b+=n.b-e.b)),ZR(Ost(t,(O_t(),gKt)),21).Hc((igt(),EXt))&&(n.a>e.a||n.b>e.b))for(s=new md(t.a);s.a0?q9(n):P7(q9(n)),Ont(e,T1t,i)}function xft(t,e){var n,r,i,a,o;for(o=t.j,e.a!=e.b&&JC(o,new Wi),i=o.c.length/2|0,r=0;r=0;)r=n[a],o.rl(r.ak())&&fZ(i,r);!Xwt(t,i)&&vC(t.e)&&Ym(t,e.$j()?jV(t,6,e,(YH(),SBt),null,-1,!1):jV(t,e.Kj()?2:1,e,null,null,-1,!1))}function kft(){var t,e;for(kft=P,kBt=XK(MBt,Akt,91,32,0,1),TBt=XK(MBt,Akt,91,32,0,1),t=1,e=0;e<=18;e++)kBt[e]=Yet(t),TBt[e]=Yet(qj(t,e)),t=n9(t,5);for(;ea))&&!(e.q&&(a=(r=e.C).c.c.a-r.o.a/2,r.n.a-n>a)))}function Mft(t){var e,n,r,i,a,o;for(hG(),n=new d$,r=new md(t.e.b);r.a1?t.e*=ex(t.a):t.f/=ex(t.a),function(t){var e,n;for(e=t.b.a.a.ec().Kc();e.Ob();)n=new edt(ZR(e.Pb(),561),t.e,t.f),nz(t.g,n)}(t),met(t),function(t){var e,n,i,a,o,s,l,c,u,f;for(n=function(t){var e,n,i,a,o,s,l,c,u,f;for(n=t.o,e=t.p,s=Q_t,a=nTt,l=Q_t,o=nTt,u=0;u=0?t.Qg(null):t.eh().ih(t,-1-e,null,null),t.Rg(ZR(i,49),n),r&&r.Fi(),t.Lg()&&t.Mg()&&n>-1&&j3(t,new mF(t,9,n,a,i)),i):a}function Vft(t){var e,n,r,i,a,o,s;for(a=0,i=t.f.e,n=0;n>5)>=t.d)return t.e<0;if(n=t.a[i],e=1<<(31&e),t.e<0){if(i<(r=i3(t)))return!1;n=r==i?-n:~n}return 0!=(n&e)}function $ft(t,e){var n,r,i,a,o,s,l;if(a=e.e)for(n=Hft(a),r=ZR(t.g,674),o=0;o>16)),15).Xc(a))>e,a=t.m>>e|n<<22-e,i=t.l>>e|t.m<<22-e):e<44?(o=r?qTt:0,a=n>>e-22,i=t.m>>e-22|n<<44-e):(o=r?qTt:0,a=r?VTt:0,i=n>>e-44),iP(i&VTt,a&VTt,o&qTt)}function rht(t){var e,n,i,a,o,s;for(this.c=new rm,this.d=t,i=tMt,a=tMt,e=eMt,n=eMt,s=tnt(t,0);s.b!=s.d.c;)o=ZR(EY(s),8),i=r.Math.min(i,o.a),a=r.Math.min(a,o.b),e=r.Math.max(e,o.a),n=r.Math.max(n,o.b);this.a=new bH(i,a,e-i,n-a)}function iht(t,e){var n,r,i,a;for(r=new md(t.b);r.a0&&CP(e,42)&&(t.a.qj(),a=null==(l=(c=ZR(e,42)).cd())?0:$4(l),o=jI(t.a,a),n=t.a.d[o]))for(r=ZR(n.g,367),u=n.i,s=0;s=2)for(e=fI((n=a.Kc()).Pb());n.Ob();)o=e,e=fI(n.Pb()),i=r.Math.min(i,(yU(e),e-(yU(o),o)));return i}function mht(t,e){var n,r,i,a,o;X$(r=new Mk,e,r.c.b,r.c);do{for(AO(0!=r.b),n=ZR(XQ(r,r.a.a),86),t.b[n.g]=1,a=tnt(n.d,0);a.b!=a.d.c;)o=(i=ZR(EY(a),188)).c,1==t.b[o.g]?jz(t.a,i):2==t.b[o.g]?t.b[o.g]=1:X$(r,o,r.c.b,r.c)}while(0!=r.b)}function yht(t,e){var n,r,i;if(rE(e)===rE(MB(t)))return!0;if(!CP(e,15))return!1;if(r=ZR(e,15),(i=t.gc())!=r.gc())return!1;if(CP(r,54)){for(n=0;n0&&(i=n),o=new md(t.f.e);o.a0&&a0):a<0&&-a0)}function Lht(t,e,n,r){var i,a,o,s,l,c;for(i=(e-t.d)/t.c.c.length,a=0,t.a+=n,t.d=e,c=new md(t.c);c.a=0;e-=2)for(n=0;n<=e;n+=2)(t.b[n]>t.b[n+2]||t.b[n]===t.b[n+2]&&t.b[n+1]>t.b[n+3])&&(r=t.b[n+2],t.b[n+2]=t.b[n],t.b[n]=r,r=t.b[n+3],t.b[n+3]=t.b[n+1],t.b[n+1]=r);t.c=!0}}function Nht(t,e){var n,r,i,a,o,s;for(a=(1==e?fGt:uGt).a.ec().Kc();a.Ob();)for(i=ZR(a.Pb(),103),s=ZR(FX(t.f.c,i),21).Kc();s.Ob();)switch(o=ZR(s.Pb(),46),r=ZR(o.b,81),n=ZR(o.a,189).c,i.g){case 2:case 1:r.g.d+=n;break;case 4:case 3:r.g.c+=n}}function jht(t,e){var n,r,i,a,o,s,l,c,u;for(c=-1,u=0,s=0,l=(o=t).length;s0&&++u;++c}return u}function Fht(t){var e;return(e=new AL(Dw(t.gm))).a+="@",xE(e,($4(t)>>>0).toString(16)),t.kh()?(e.a+=" (eProxyURI: ",bE(e,t.qh()),t.$g()&&(e.a+=" eClass: ",bE(e,t.$g())),e.a+=")"):t.$g()&&(e.a+=" (eClass: ",bE(e,t.$g()),e.a+=")"),e.a}function Bht(t){var e,n,r;if(t.e)throw um(new Zb((cI(PUt),$Mt+PUt.k+XMt)));for(t.d==(e7(),ine)&&iwt(t,nne),n=new md(t.a.a);n.a=0)return i;for(a=1,o=new md(e.j);o.a0&&e.ue((OG(i-1,t.c.length),ZR(t.c[i-1],10)),a)>0;)K$(t,i,(OG(i-1,t.c.length),ZR(t.c[i-1],10))),--i;OG(i,t.c.length),t.c[i]=a}n.a=new im,n.b=new im}function Wht(t,e,n){var r;if(2==(t.c-t.b&t.a.length-1))e==(Pwt(),Mre)||e==Tre?(VQ(ZR(T4(t),15),(Uit(),jne)),VQ(ZR(T4(t),15),Fne)):(VQ(ZR(T4(t),15),(Uit(),Fne)),VQ(ZR(T4(t),15),jne));else for(r=new XU(t);r.a!=r.b;)VQ(ZR(p8(r),15),n)}function Yht(t,e){var n,r,i,a,o,s;for(o=new JW(r=JR(new Ov(t)),r.c.length),s=new JW(i=JR(new Ov(e)),i.c.length),a=null;o.b>0&&s.b>0&&(AO(o.b>0),n=ZR(o.a.Xb(o.c=--o.b),33),AO(s.b>0),n==ZR(s.a.Xb(s.c=--s.b),33));)a=n;return a}function $ht(t,e){var n,i,a,o;return a=t.a*kMt+1502*t.b,o=t.b*kMt+11,a+=n=r.Math.floor(o*TMt),o-=n*MMt,a%=MMt,t.a=a,t.b=o,e<=24?r.Math.floor(t.a*WBt[e]):((i=t.a*(1<=2147483648&&(i-=uMt),i)}function Xht(t,e,n){var r,i,a,o;$G(t,e)>$G(t,n)?(r=r9(n,(Pwt(),Tre)),t.d=r.dc()?0:eN(ZR(r.Xb(0),11)),o=r9(e,qre),t.b=o.dc()?0:eN(ZR(o.Xb(0),11))):(i=r9(n,(Pwt(),qre)),t.d=i.dc()?0:eN(ZR(i.Xb(0),11)),a=r9(e,Tre),t.b=a.dc()?0:eN(ZR(a.Xb(0),11)))}function Kht(t){var e,n,r,i,a,o,s;if(t&&(e=t.Hh(hNt))&&null!=(o=hI(xtt((!e.b&&(e.b=new GO((N_t(),Noe),Qoe,e)),e.b),"conversionDelegates")))){for(s=new rm,i=0,a=(r=Ovt(o,"\\w+")).length;i>1,t.k=n-1>>1}(this,this.d,this.c),function(t){var e,n,r,i,a,o,s;for(n=FC(t.e),a=jP(DO(gP(jC(t.e)),t.d*t.a,t.c*t.b),-.5),e=n.a-a.a,i=n.b-a.b,s=0;s0&&rxt(this,a)}function ndt(t,e,n,r,i,a){var o,s,l;if(!i[e.b]){for(i[e.b]=!0,!(o=r)&&(o=new YX),nz(o.e,e),l=a[e.b].Kc();l.Ob();)(s=ZR(l.Pb(),282)).d!=n&&s.c!=n&&(s.c!=e&&ndt(t,s.c,e,o,i,a),s.d!=e&&ndt(t,s.d,e,o,i,a),nz(o.c,s),A5(o.d,s.b));return o}return null}function rdt(t){var e,n,r;for(e=0,n=new md(t.e);n.a=2}function idt(t){var e,n;try{return null==t?lkt:E9(t)}catch(Wle){if(CP(Wle=_5(Wle),102))return e=Wle,n=Dw(X4(t))+"@"+(lk(),(Rnt(t)>>>0).toString(16)),Det(P5(),(Fk(),"Exception during lenientFormat for "+n),e),"<"+n+" threw "+Dw(e.gm)+">";throw um(Wle)}}function adt(t){switch(t.g){case 0:return new of;case 1:return new tf;case 2:return new aT;case 3:return new Ca;case 4:return new hD;case 5:return new sf;default:throw um(new Kb("No implementation is available for the layerer "+(null!=t.f?t.f:""+t.g)))}}function odt(t,e,n){var r,i,a;for(a=new md(t.t);a.a0&&(r.b.n-=r.c,r.b.n<=0&&r.b.u>0&&jz(e,r.b));for(i=new md(t.i);i.a0&&(r.a.u-=r.c,r.a.u<=0&&r.a.n>0&&jz(n,r.a))}function sdt(t){var e,n,r;if(null==t.g&&(t.d=t.si(t.f),fZ(t,t.d),t.c))return t.f;if(r=(e=ZR(t.g[t.i-1],47)).Pb(),t.e=e,(n=t.si(r)).Ob())t.d=n,fZ(t,n);else for(t.d=null;!e.Ob()&&(zB(t.g,--t.i,null),0!=t.i);)e=ZR(t.g[t.i-1],47);return r}function ldt(t,e,n,i){var a,o,s;for(Lh(a=new art(t),(plt(),HGt)),d4(a,(O_t(),LKt),e),d4(a,VKt,i),d4(a,(y_t(),b1t),(jot(),cre)),d4(a,AKt,e.c),d4(a,SKt,e.d),Vpt(e,a),s=r.Math.floor(n/2),o=new md(a.j);o.a=0?t._g(r,!0,!0):nft(t,a,!0),153),ZR(i,215).ml(e,n)}function bdt(t,e,n){ast(n,"Eades radial",1),n.n&&e&&tW(n,NW(e),(S6(),Tie)),t.d=ZR(kht(e,(nI(),h6t)),33),t.c=ex(fI(kht(e,(Bit(),Q6t)))),t.e=Knt(ZR(kht(e,t8t),293)),t.a=function(t){switch(t.g){case 0:return new Go;case 1:return new Wo;default:throw um(new Kb(_Ot+(null!=t.f?t.f:""+t.g)))}}(ZR(kht(e,n8t),426)),t.b=function(t){switch(t.g){case 1:return new Bo;case 2:return new Uo;case 3:return new Fo;case 0:return null;default:throw um(new Kb(_Ot+(null!=t.f?t.f:""+t.g)))}}(ZR(kht(e,X6t),340)),function(t){var e,n,r,i,a;if(r=0,i=vSt,t.b)for(e=0;e<360;e++)n=.017453292519943295*e,Gvt(t,t.d,0,0,vOt,n),(a=t.b.ig(t.d))0),a.a.Xb(a.c=--a.b),QI(a,i),AO(a.b0);n++);if(n>0&&n0);e++);return e>0&&n>16!=6&&e){if(oat(t,e))throw um(new Kb(LDt+Aft(t)));r=null,t.Cb&&(r=(n=t.Db>>16)>=0?Jit(t,r):t.Cb.ih(t,-1-n,null,r)),e&&(r=xnt(e,t,6,r)),(r=OI(t,e,r))&&r.Fi()}else 0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,6,e,e))}function Sdt(t,e){var n,r;if(e!=t.Cb||t.Db>>16!=9&&e){if(oat(t,e))throw um(new Kb(LDt+uvt(t)));r=null,t.Cb&&(r=(n=t.Db>>16)>=0?tat(t,r):t.Cb.ih(t,-1-n,null,r)),e&&(r=xnt(e,t,9,r)),(r=II(t,e,r))&&r.Fi()}else 0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,9,e,e))}function Edt(t,e){var n,r;if(e!=t.Cb||t.Db>>16!=3&&e){if(oat(t,e))throw um(new Kb(LDt+gbt(t)));r=null,t.Cb&&(r=(n=t.Db>>16)>=0?lat(t,r):t.Cb.ih(t,-1-n,null,r)),e&&(r=xnt(e,t,12,r)),(r=LI(t,e,r))&&r.Fi()}else 0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,3,e,e))}function Cdt(t){var e,n,r,i,a;if(r=hat(t),null==(a=t.j)&&r)return t.$j()?null:r.zj();if(CP(r,148)){if((n=r.Aj())&&(i=n.Nh())!=t.i){if((e=ZR(r,148)).Ej())try{t.g=i.Kh(e,a)}catch(Wle){if(!CP(Wle=_5(Wle),78))throw um(Wle);t.g=null}t.i=i}return t.g}return null}function Pdt(t){var e;return nz(e=new rm,new QT(new KA(t.c,t.d),new KA(t.c+t.b,t.d))),nz(e,new QT(new KA(t.c,t.d),new KA(t.c,t.d+t.a))),nz(e,new QT(new KA(t.c+t.b,t.d+t.a),new KA(t.c+t.b,t.d))),nz(e,new QT(new KA(t.c+t.b,t.d+t.a),new KA(t.c,t.d+t.a))),e}function Ldt(t,e,n,r){var i,a,o;if(o=Vat(e,n),r.c[r.c.length]=e,-1==t.j[o.p]||2==t.j[o.p]||t.a[e.p])return r;for(t.j[o.p]=-1,a=new Oj(dL(o9(o).a.Kc(),new u));Kft(a);)if(!Q$(i=ZR(wX(a),17))&&(Q$(i)||i.c.i.c!=i.d.i.c)&&i!=e)return Ldt(t,i,o,r);return r}function Odt(t,e,n){var r,i;for(i=e.a.ec().Kc();i.Ob();)r=ZR(i.Pb(),79),!ZR(UB(t.b,r),266)&&(Eq(Fst(r))==Eq(Hst(r))?Kpt(t,r,n):Fst(r)==Eq(Hst(r))?null==UB(t.c,r)&&null!=UB(t.b,Hst(r))&&Wxt(t,r,n,!1):null==UB(t.d,r)&&null!=UB(t.b,Fst(r))&&Wxt(t,r,n,!0))}function Idt(t,e){var n,r,i,a,o,s,l;for(i=t.Kc();i.Ob();)for(r=ZR(i.Pb(),10),Qq(s=new Clt,r),gut(s,(Pwt(),Tre)),d4(s,(O_t(),jKt),(TL(),!0)),o=e.Kc();o.Ob();)a=ZR(o.Pb(),10),Qq(l=new Clt,a),gut(l,qre),d4(l,jKt,!0),d4(n=new _V,jKt,!0),Zq(n,s),Kq(n,l)}function Ddt(t,e,n,r){var i,a,o,s;i=Utt(t,e,n),a=Utt(t,n,e),o=ZR(UB(t.c,e),112),s=ZR(UB(t.c,n),112),i0&&p.a<=0){l.c=XK(Yjt,akt,1,0,5,1),l.c[l.c.length]=p;break}(d=p.i-p.d)>=s&&(d>s&&(l.c=XK(Yjt,akt,1,0,5,1),s=d),l.c[l.c.length]=p)}0!=l.c.length&&(o=ZR(TN(l,Ynt(i,l.c.length)),112),fq(b.a,o),o.g=u++,iyt(o,e,n,r),l.c=XK(Yjt,akt,1,0,5,1))}for(v=t.c.length+1,h=new md(t);h.ar.b.g&&(a.c[a.c.length]=r);return a}function Ndt(){Ndt=P,J8t=new BA("CANDIDATE_POSITION_LAST_PLACED_RIGHT",0),Z8t=new BA("CANDIDATE_POSITION_LAST_PLACED_BELOW",1),t7t=new BA("CANDIDATE_POSITION_WHOLE_DRAWING_RIGHT",2),Q8t=new BA("CANDIDATE_POSITION_WHOLE_DRAWING_BELOW",3),e7t=new BA("WHOLE_DRAWING",4)}function jdt(t,e){var n,r;if(e!=t.Cb||t.Db>>16!=11&&e){if(oat(t,e))throw um(new Kb(LDt+cvt(t)));r=null,t.Cb&&(r=(n=t.Db>>16)>=0?cat(t,r):t.Cb.ih(t,-1-n,null,r)),e&&(r=xnt(e,t,10,r)),(r=yD(t,e,r))&&r.Fi()}else 0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,11,e,e))}function Fdt(t,e,n){return cgt(),(!c3(t,e)||!c3(t,n))&&(nwt(new KA(t.c,t.d),new KA(t.c+t.b,t.d),e,n)||nwt(new KA(t.c+t.b,t.d),new KA(t.c+t.b,t.d+t.a),e,n)||nwt(new KA(t.c+t.b,t.d+t.a),new KA(t.c,t.d+t.a),e,n)||nwt(new KA(t.c,t.d+t.a),new KA(t.c,t.d),e,n))}function Bdt(t,e){var n,r,i,a;if(!t.dc())for(n=0,r=t.gc();n>16!=7&&e){if(oat(t,e))throw um(new Kb(LDt+Zlt(t)));r=null,t.Cb&&(r=(n=t.Db>>16)>=0?Qit(t,r):t.Cb.ih(t,-1-n,null,r)),e&&(r=ZR(e,49).gh(t,1,Yie,r)),(r=wj(t,e,r))&&r.Fi()}else 0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,7,e,e))}function Kdt(t,e){var n,r;if(e!=t.Cb||t.Db>>16!=3&&e){if(oat(t,e))throw um(new Kb(LDt+l7(t)));r=null,t.Cb&&(r=(n=t.Db>>16)>=0?nat(t,r):t.Cb.ih(t,-1-n,null,r)),e&&(r=ZR(e,49).gh(t,0,Jie,r)),(r=_j(t,e,r))&&r.Fi()}else 0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,3,e,e))}function Zdt(t,e){var n,r,i,a,o,s,l,c,u;return kft(),e.d>t.d&&(s=t,t=e,e=s),e.d<63?function(t,e){var n,r,i,a,o,s,l,c,u,f,h;if(r=t.d,a=e.d,s=r+a,l=t.e!=e.e?-1:1,2==s)return h=$N(u=n9(qG(t.a[0],cMt),qG(e.a[0],cMt))),0==(f=$N(Wj(u,32)))?new pK(l,h):new CF(l,2,R5(qx(Xle,1),STt,25,15,[h,f]));return n=t.a,i=e.a,o=XK(Xle,STt,25,s,15,1),Z8(n,r,i,a,o),c=new CF(l,s,o),AW(c),c}(t,e):(c=xX(t,o=(-2&t.d)<<4),u=xX(e,o),r=Myt(t,bX(c,o)),i=Myt(e,bX(u,o)),l=Zdt(c,u),n=Zdt(r,i),a=bX(a=Ebt(Ebt(a=Zdt(Myt(c,r),Myt(i,u)),l),n),o),Ebt(Ebt(l=bX(l,o<<1),a),n))}function Jdt(t,e,n){var r,i,a,o,s;for(o=X8(t,n),s=XK(WGt,kEt,10,e.length,0,1),r=0,a=o.Kc();a.Ob();)tx(uI(Ost(i=ZR(a.Pb(),11),(O_t(),yKt))))&&(s[r++]=ZR(Ost(i,FKt),10));if(r=0;i+=n?1:-1)a|=e.c.Sf(s,i,n,r&&!tx(uI(Ost(e.j,(O_t(),pKt))))&&!tx(uI(Ost(e.j,(O_t(),GKt))))),a|=e.q._f(s,i,n),a|=Ygt(t,s[i],n,r);return FF(t.c,e),a}function npt(t,e,n){var r,i,a,o,s,l,c,u;for(c=0,u=(l=eY(t.j)).length;c1&&(t.a=!0),uj(ZR(n.b,65),bD(gP(ZR(e.b,65).c),jP(xD(gP(ZR(n.b,65).a),ZR(e.b,65).a),i))),bG(t,e),apt(t,n)}function opt(t){var e,n,r,i,a,o;for(i=new md(t.a.a);i.a0&&a>0?e++:r>0?n++:a>0?i++:n++}YH(),JC(t.j,new dr)}function lpt(t,e){var n,r,i,a,o,s,l,c,u;for(s=e.j,o=e.g,l=ZR(TN(s,s.c.length-1),113),OG(0,s.c.length),c=uit(t,o,l,u=ZR(s.c[0],113)),a=1;ac&&(l=n,u=i,c=r);e.a=u,e.c=l}function cpt(t){if(!t.a.d||!t.a.e)throw um(new Zb((cI(iHt),iHt.k+" must have a source and target "+(cI(aHt),aHt.k+" specified."))));if(t.a.d==t.a.e)throw um(new Zb("Network simplex does not support self-loops: "+t.a+" "+t.a.d+" "+t.a.e));return $L(t.a.d.g,t.a),$L(t.a.e.b,t.a),t.a}function upt(t,e,n){var r,i,a,o,s,l;if(r=0,0!=e.b&&0!=n.b){a=tnt(e,0),o=tnt(n,0),s=ex(fI(EY(a))),l=ex(fI(EY(o))),i=!0;do{if(s>l-t.b&&sl-t.a&&se.a&&(r.Hc((vot(),fte))?t.c.a+=(n.a-e.a)/2:r.Hc(dte)&&(t.c.a+=n.a-e.a)),n.b>e.b&&(r.Hc((vot(),gte))?t.c.b+=(n.b-e.b)/2:r.Hc(pte)&&(t.c.b+=n.b-e.b)),ZR(Ost(t,(O_t(),gKt)),21).Hc((igt(),EXt))&&(n.a>e.a||n.b>e.b))for(o=new md(t.a);o.a0&&++h;++f}return h}function mpt(t,e){var n,r,i,a;return TT(),e?e==(lxt(),tle)||(e==zse||e==Dse||e==Rse)&&t!=Ise?new _wt(t,e):((n=(r=ZR(e,677)).pk())||(tH(SJ((gct(),vse),e)),n=r.pk()),!n.i&&(n.i=new im),!(i=ZR(nE(zV((a=n.i).f,t)),1942))&&RU(a,t,i=new _wt(t,e)),i):kse}function ypt(t,e){var n,r,i,a,o,s,l,c;for(s=ZR(Ost(t,(O_t(),LKt)),11),l=O4(R5(qx(V9t,1),Akt,8,0,[s.i.n,s.n,s.a])).a,c=t.i.n.b,i=0,a=(r=CW(t.e)).length;i0&&(a+=(o=ZR(TN(this.b,0),167)).o,i+=o.p),a*=2,i*=2,e>1?a=lq(r.Math.ceil(a*e)):i=lq(r.Math.ceil(i/e)),this.a=new utt(a,i)}function Spt(t,e,n,i,a,o){var s,l,c,u,f,h,d,p,g,v;for(u=i,e.j&&e.o?(g=(d=ZR(UB(t.f,e.A),57)).d.c+d.d.b,--u):g=e.a.c+e.a.b,f=a,n.q&&n.o?(c=(d=ZR(UB(t.f,n.C),57)).d.c,++f):c=n.a.c,p=g+(l=(c-g)/r.Math.max(2,f-u)),h=u;h=0;o+=i?1:-1){for(s=e[o],l=r==(Pwt(),Tre)?i?r9(s,r):E3(r9(s,r)):i?E3(r9(s,r)):r9(s,r),a&&(t.c[s.p]=l.gc()),f=l.Kc();f.Ob();)u=ZR(f.Pb(),11),t.d[u.p]=c++;A5(n,l)}}function Cpt(t,e,n){var r,i,a,o,s,l,c,u;for(a=ex(fI(t.b.Kc().Pb())),c=ex(fI(function(t){var e;if(t){if((e=t).dc())throw um(new jm);return e.Xb(e.gc()-1)}return EG(t.Kc())}(e.b))),r=jP(gP(t.a),c-n),i=jP(gP(e.a),n-a),jP(u=bD(r,i),1/(c-a)),this.a=u,this.b=new rm,s=!0,(o=t.b.Kc()).Pb();o.Ob();)l=ex(fI(o.Pb())),s&&l-n>QLt&&(this.b.Fc(n),s=!1),this.b.Fc(l);s&&this.b.Fc(n)}function Ppt(t){var e,n,i,a;if(function(t,e){var n,i,a,o,s,l,c;for(a=XK(Xle,STt,25,t.e.a.c.length,15,1),s=new md(t.e.a);s.a0){for(lx(t.c);Jft(t,ZR(HG(new md(t.e.a)),121))>5,e&=31,r>=t.d)return t.e<0?(ggt(),pBt):(ggt(),bBt);if(a=t.d-r,function(t,e,n,r,i){var a,o,s;for(a=!0,o=0;o>>i|n[o+r+1]<>>i,++o}}(i=XK(Xle,STt,25,a+1,15,1),a,t.a,r,e),t.e<0){for(n=0;n0&&t.a[n]<<32-e!=0){for(n=0;n=0)&&(!(n=axt((gct(),vse),i,e))||((r=n.Zj())>1||-1==r)&&3!=TU(SJ(vse,n))))}function zpt(t,e,n,r){var i,a,o,s,l;return s=ist(ZR(a0((!e.b&&(e.b=new LD(Xie,e,4,7)),e.b),0),82)),l=ist(ZR(a0((!e.c&&(e.c=new LD(Xie,e,5,8)),e.c),0),82)),Eq(s)==Eq(l)||YQ(l,s)?null:(o=kq(e))==n?r:(a=ZR(UB(t.a,o),10))&&(i=a.e)?i:null}function Npt(t,e,n){var r,i,a,o,s,l;if(r=function(t,e){return t?e-1:0}(n,t.length),(o=t[r])[0].k==(plt(),UGt))for(a=Qx(n,o.length),l=e.j,i=0;i>24}(t));break;case 2:t.g=w5(function(t){if(2!=t.p)throw um(new Im);return $N(t.f)&dTt}(t));break;case 3:t.g=function(t){if(3!=t.p)throw um(new Im);return t.e}(t);break;case 4:t.g=new rd(function(t){if(4!=t.p)throw um(new Im);return t.e}(t));break;case 6:t.g=wet(function(t){if(6!=t.p)throw um(new Im);return t.f}(t));break;case 5:t.g=g7(function(t){if(5!=t.p)throw um(new Im);return $N(t.f)}(t));break;case 7:t.g=v7(function(t){if(7!=t.p)throw um(new Im);return $N(t.f)<<16>>16}(t))}return t.g}function Bpt(t){if(null==t.n)switch(t.p){case 0:t.n=function(t){if(0!=t.p)throw um(new Im);return uE(t.k,0)}(t)?(TL(),zFt):(TL(),RFt);break;case 1:t.n=rQ(function(t){if(1!=t.p)throw um(new Im);return $N(t.k)<<24>>24}(t));break;case 2:t.n=w5(function(t){if(2!=t.p)throw um(new Im);return $N(t.k)&dTt}(t));break;case 3:t.n=function(t){if(3!=t.p)throw um(new Im);return t.j}(t);break;case 4:t.n=new rd(function(t){if(4!=t.p)throw um(new Im);return t.j}(t));break;case 6:t.n=wet(function(t){if(6!=t.p)throw um(new Im);return t.k}(t));break;case 5:t.n=g7(function(t){if(5!=t.p)throw um(new Im);return $N(t.k)}(t));break;case 7:t.n=v7(function(t){if(7!=t.p)throw um(new Im);return $N(t.k)<<16>>16}(t))}return t.n}function Upt(t){var e,n,r,i,a,o;for(i=new md(t.a.a);i.a0&&(n[0]+=t.d,s-=n[0]),n[2]>0&&(n[2]+=t.d,s-=n[2]),o=r.Math.max(0,s),n[1]=r.Math.max(n[1],s),AX(t,lHt,a.c+i.b+n[0]-(n[1]-s)/2,n),e==lHt&&(t.c.b=o,t.c.c=a.c+i.b+(o-s)/2)}function Wpt(){this.c=XK(Qle,oMt,25,(Pwt(),R5(qx(Jre,1),pEt,61,0,[Vre,Mre,Tre,Hre,qre])).length,15,1),this.b=XK(Qle,oMt,25,R5(qx(Jre,1),pEt,61,0,[Vre,Mre,Tre,Hre,qre]).length,15,1),this.a=XK(Qle,oMt,25,R5(qx(Jre,1),pEt,61,0,[Vre,Mre,Tre,Hre,qre]).length,15,1),HT(this.c,tMt),HT(this.b,eMt),HT(this.a,eMt)}function Ypt(t,e,n){var r,i,a,o;if(e<=n?(i=e,a=n):(i=n,a=e),r=0,null==t.b)t.b=XK(Xle,STt,25,2,15,1),t.b[0]=i,t.b[1]=a,t.c=!0;else{if(r=t.b.length,t.b[r-1]+1==i)return void(t.b[r-1]=a);o=XK(Xle,STt,25,r+2,15,1),fbt(t.b,0,o,0,r),t.b=o,t.b[r-1]>=i&&(t.c=!1,t.a=!1),t.b[r++]=i,t.b[r]=a,t.c||zht(t)}}function $pt(t,e,n){var r,i,a,o,s,l;if(!MY(e)){for(ast(l=J2(n,(CP(e,14)?ZR(e,14).gc():BY(e.Kc()))/t.a|0),lOt,1),s=new Po,o=0,a=e.Kc();a.Ob();)r=ZR(a.Pb(),86),s=t1(R5(qx(Jjt,1),akt,20,0,[s,new zg(r)])),o1;)rgt(i,i.i-1);return r}function tgt(t,e){var n,r,i,a,o,s;for(n=new nm,i=new md(t.b);i.at.d[o.p]&&(n+=G$(t.b,a),PY(t.a,g7(a)));for(;!ix(t.a);)nQ(t.b,ZR(OF(t.a),19).a)}return n}function ngt(t,e,n){var r,i,a,o;for(a=(!e.a&&(e.a=new bF(rae,e,10,11)),e.a).i,i=new WP((!e.a&&(e.a=new bF(rae,e,10,11)),e.a));i.e!=i.i.gc();)0==(!(r=ZR(fnt(i),33)).a&&(r.a=new bF(rae,r,10,11)),r.a).i||(a+=ngt(t,r,!1));if(n)for(o=Eq(e);o;)a+=(!o.a&&(o.a=new bF(rae,o,10,11)),o.a).i,o=Eq(o);return a}function rgt(t,e){var n,r,i,a;return t.ej()?(r=null,i=t.fj(),t.ij()&&(r=t.kj(t.pi(e),null)),n=t.Zi(4,a=Lit(t,e),null,e,i),t.bj()&&null!=a?(r=t.dj(a,r))?(r.Ei(n),r.Fi()):t.$i(n):r?(r.Ei(n),r.Fi()):t.$i(n),a):(a=Lit(t,e),t.bj()&&null!=a&&(r=t.dj(a,null))&&r.Fi(),a)}function igt(){igt=P,AXt=new ZM("COMMENTS",0),EXt=new ZM("EXTERNAL_PORTS",1),CXt=new ZM("HYPEREDGES",2),PXt=new ZM("HYPERNODES",3),LXt=new ZM("NON_FREE_PORTS",4),OXt=new ZM("NORTH_SOUTH_PORTS",5),DXt=new ZM(sCt,6),MXt=new ZM("CENTER_LABELS",7),SXt=new ZM("END_LABELS",8),IXt=new ZM("PARTITIONS",9)}function agt(t){var e,n,r,i,a;for(i=new rm,e=new wN((!t.a&&(t.a=new bF(rae,t,10,11)),t.a)),r=new Oj(dL(ddt(t).a.Kc(),new u));Kft(r);)CP(a0((!(n=ZR(wX(r),79)).b&&(n.b=new LD(Xie,n,4,7)),n.b),0),186)||(a=ist(ZR(a0((!n.c&&(n.c=new LD(Xie,n,5,8)),n.c),0),82)),e.a._b(a)||(i.c[i.c.length]=a));return i}function ogt(t){var e,n,r,i,a;for(i=new Km,e=new wN((!t.a&&(t.a=new bF(rae,t,10,11)),t.a)),r=new Oj(dL(ddt(t).a.Kc(),new u));Kft(r);)CP(a0((!(n=ZR(wX(r),79)).b&&(n.b=new LD(Xie,n,4,7)),n.b),0),186)||(a=ist(ZR(a0((!n.c&&(n.c=new LD(Xie,n,5,8)),n.c),0),82)),e.a._b(a)||i.a.zc(a,i));return i}function sgt(t,e){var n,i,a;Eq(t)&&(a=ZR(Ost(e,(y_t(),r1t)),174),rE(kht(t,b1t))===rE((jot(),dre))&&Ont(t,b1t,hre),gT(),i=hwt(new Yb(Eq(t)),new nO(Eq(t)?new Yb(Eq(t)):null,t),!1,!0),t2(a,(Ltt(),Qre)),(n=ZR(Ost(e,a1t),8)).a=r.Math.max(i.a,n.a),n.b=r.Math.max(i.b,n.b))}function lgt(){lgt=P,i$t=new wH(zAt,0,(Pwt(),Mre),Mre),s$t=new wH(jAt,1,Hre,Hre),r$t=new wH(NAt,2,Tre,Tre),u$t=new wH(FAt,3,qre,qre),o$t=new wH("NORTH_WEST_CORNER",4,qre,Mre),a$t=new wH("NORTH_EAST_CORNER",5,Mre,Tre),c$t=new wH("SOUTH_WEST_CORNER",6,Hre,qre),l$t=new wH("SOUTH_EAST_CORNER",7,Tre,Hre)}function cgt(){cgt=P,U9t=R5(qx(Zle,1),rMt,25,14,[1,1,2,6,24,120,720,5040,40320,362880,3628800,39916800,479001600,6227020800,87178291200,1307674368e3,{l:3506176,m:794077,h:1},{l:884736,m:916411,h:20},{l:3342336,m:3912489,h:363},{l:589824,m:3034138,h:6914},{l:3407872,m:1962506,h:138294}]),r.Math.pow(2,-65)}function ugt(t,e){var n,r,i,a,o;if(0==t.c.length)return new bS(g7(0),g7(0));for(n=(OG(0,t.c.length),ZR(t.c[0],11)).j,o=0,a=e.g,r=e.g+1;o=u&&(c=i);c&&(f=r.Math.max(f,c.a.o.a)),f>d&&(h=u,d=f)}return h}function hgt(t,e){var n;switch(n=null,e.g){case 1:t.e.Xe((L_t(),yee))&&(n=ZR(t.e.We(yee),249));break;case 3:t.e.Xe((L_t(),bee))&&(n=ZR(t.e.We(bee),249));break;case 2:t.e.Xe((L_t(),mee))&&(n=ZR(t.e.We(mee),249));break;case 4:t.e.Xe((L_t(),xee))&&(n=ZR(t.e.We(xee),249))}return!n&&(n=ZR(t.e.We((L_t(),gee)),249)),n}function dgt(t,e,n){var r,i,a,o,s,l;for(e.p=1,i=e.c,l=rtt(e,(u1(),a3t)).Kc();l.Ob();)for(r=new md(ZR(l.Pb(),11).g);r.aDOt?JC(c,t.b):i<=DOt&&i>ROt?JC(c,t.d):i<=ROt&&i>zOt?JC(c,t.c):i<=zOt&&JC(c,t.a),o=pgt(t,c,o);return a}function ggt(){var t;for(ggt=P,gBt=new pK(1,1),mBt=new pK(1,10),bBt=new pK(0,0),pBt=new pK(-1,1),vBt=R5(qx(MBt,1),Akt,91,0,[bBt,gBt,new pK(1,2),new pK(1,3),new pK(1,4),new pK(1,5),new pK(1,6),new pK(1,7),new pK(1,8),new pK(1,9),mBt]),yBt=XK(MBt,Akt,91,32,0,1),t=0;t1&&(r=new KA(i,n.b),jz(e.a,r)),i1(e.a,R5(qx(V9t,1),Akt,8,0,[f,u]))}function _gt(t){sT(t,new nst(iw(tw(rw(nw(new vs,nDt),"ELK Randomizer"),'Distributes the nodes randomly on the plane, leading to very obfuscating layouts. Can be useful to demonstrate the power of "real" layout algorithms.'),new Zs))),zW(t,nDt,dSt,Xre),zW(t,nDt,RSt,15),zW(t,nDt,NSt,g7(0)),zW(t,nDt,hSt,OSt)}function kgt(){var t,e,n,r,i,a;for(kgt=P,dle=XK(Jle,RDt,25,255,15,1),ple=XK($le,fTt,25,16,15,1),e=0;e<255;e++)dle[e]=-1;for(n=57;n>=48;n--)dle[n]=n-48<<24>>24;for(r=70;r>=65;r--)dle[r]=r-65+10<<24>>24;for(i=102;i>=97;i--)dle[i]=i-97+10<<24>>24;for(a=0;a<10;a++)ple[a]=48+a&dTt;for(t=10;t<=15;t++)ple[t]=65+t-10&dTt}function Tgt(t,e,n){var r,i,a,o,s,l,c,u;return s=e.i-t.g/2,l=n.i-t.g/2,c=e.j-t.g/2,u=n.j-t.g/2,a=e.g+t.g/2,o=n.g+t.g/2,r=e.f+t.g/2,i=n.f+t.g/2,s=0;--r)for(e=n[r],i=0;i>19!=0)return"-"+Sgt(u4(t));for(n=t,r="";0!=n.l||0!=n.m||0!=n.h;){if(n=txt(n,vX($Tt),!0),e=""+i_(PFt),0!=n.l||0!=n.m||0!=n.h)for(i=9-e.length;i>0;i--)e="0"+e;r=e+r}return r}function Egt(t,e,n,i){var a,o,s,l;if(BY((LR(),new Oj(dL(o9(e).a.Kc(),new u))))>=t.a)return-1;if(!Hot(e,n))return-1;if(MY(ZR(i.Kb(e),20)))return 1;for(a=0,s=ZR(i.Kb(e),20).Kc();s.Ob();){if(-1==(l=Egt(t,(o=ZR(s.Pb(),17)).c.i==e?o.d.i:o.c.i,n,i)))return-1;if((a=r.Math.max(a,l))>t.c-1)return-1}return a+1}function Cgt(t,e){var n,r,i,a,o,s;if(rE(e)===rE(t))return!0;if(!CP(e,15))return!1;if(r=ZR(e,15),s=t.gc(),r.gc()!=s)return!1;if(o=r.Kc(),t.ni()){for(n=0;n0)if(t.qj(),null!=e){for(a=0;a0&&(t.a=s+(h-1)*i,e.c.b+=t.a,e.f.b+=t.a);0!=d.a.gc()&&(h=Ixt(new vB(1,i),e,d,p,e.f.b+s-e.c.b))>0&&(e.f.b+=s+(h-1)*i)}(t,e,i),function(t){var e,n,r,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T;for(b=new rm,f=new md(t.b);f.a>24;case 97:case 98:case 99:case 100:case 101:case 102:return t-97+10<<24>>24;case 65:case 66:case 67:case 68:case 69:case 70:return t-65+10<<24>>24;default:throw um(new Ex("Invalid hexadecimal"))}}function Igt(t,e,n){var r,i,a,o;for(ast(n,"Processor order nodes",2),t.a=ex(fI(Ost(e,(oht(),J4t)))),i=new Mk,o=tnt(e.b,0);o.b!=o.d.c;)tx(uI(Ost(a=ZR(EY(o),86),(oxt(),O4t))))&&X$(i,a,i.c.b,i.c);AO(0!=i.b),Obt(t,r=ZR(i.a.a.c,86)),!n.b&&V1(n,1),lvt(t,r,0-ex(fI(Ost(r,(oxt(),T4t))))/2,0),!n.b&&V1(n,1),jlt(n)}function Dgt(){Dgt=P,eHt=new oM("SPIRAL",0),KUt=new oM("LINE_BY_LINE",1),ZUt=new oM("MANHATTAN",2),XUt=new oM("JITTER",3),QUt=new oM("QUADRANTS_LINE_BY_LINE",4),tHt=new oM("QUADRANTS_MANHATTAN",5),JUt=new oM("QUADRANTS_JITTER",6),$Ut=new oM("COMBINE_LINE_BY_LINE_MANHATTAN",7),YUt=new oM("COMBINE_JITTER_MANHATTAN",8)}function Rgt(t,e,n,r){var i,a,o,s,l,c;for(l=qat(t,n),c=qat(e,n),i=!1;l&&c&&(r||Tit(l,c,n));)o=qat(l,n),s=qat(c,n),mJ(e),mJ(t),a=l.c,pxt(l,!1),pxt(c,!1),n?(Vit(e,c.p,a),e.p=c.p,Vit(t,l.p+1,a),t.p=l.p):(Vit(t,l.p,a),t.p=l.p,Vit(e,c.p+1,a),e.p=c.p),Jq(l,null),Jq(c,null),l=o,c=s,i=!0;return i}function zgt(t,e,n,r){var i,a,o,s,l;for(i=!1,a=!1,s=new md(r.j);s.a=e.length)throw um(new Hb("Greedy SwitchDecider: Free layer not in graph."));this.c=e[t],this.e=new iR(r),u2(this.e,this.c,(Pwt(),qre)),this.i=new iR(r),u2(this.i,this.c,Tre),this.f=new GN(this.c),this.a=!a&&i.i&&!i.s&&this.c[0].k==(plt(),UGt),this.a&&function(t,e,n){var r,i,a,o,s,l,c;s=(a=t.d.p).e,l=a.r,t.g=new iR(l),r=(o=t.d.o.c.p)>0?s[o-1]:XK(WGt,kEt,10,0,0,1),i=s[o],c=oi.d.d+i.d.a?f.f.d=!0:(f.f.d=!0,f.f.a=!0))),r.b!=r.d.c&&(e=n);f&&(a=ZR(UB(t.f,o.d.i),57),e.ba.d.d+a.d.a?f.f.d=!0:(f.f.d=!0,f.f.a=!0))}for(s=new Oj(dL(s9(d).a.Kc(),new u));Kft(s);)0!=(o=ZR(wX(s),17)).a.b&&(e=ZR(mO(o.a),8),o.d.j==(Pwt(),Mre)&&((v=new Uyt(e,new KA(e.a,i.d.d),i,o)).f.a=!0,v.a=o.d,g.c[g.c.length]=v),o.d.j==Hre&&((v=new Uyt(e,new KA(e.a,i.d.d+i.d.a),i,o)).f.d=!0,v.a=o.d,g.c[g.c.length]=v))}return g}(t);break;case 3:i=new rm,Ak(uH(fH($J($J(new AN(null,new DG(t.d.b,16)),new Pi),new Li),new Oi),new mi),new Zp(i)),n=i;break;default:throw um(new Zb("Compaction not supported for "+e+" edges."))}!function(t,e){var n,i,a,o,s,l,c;if(0==e.c.length)return;YH(),JN(e.c,e.c.length,null),a=new md(e),i=ZR(HG(a),145);for(;a.a0&&e0?a.a?n>(s=a.b.rf().a)&&(i=(n-s)/2,a.d.b=i,a.d.c=i):a.d.c=t.s+n:aF(t.u)&&((r=cst(a.b)).c<0&&(a.d.b=-r.c),r.c+r.b>a.b.rf().a&&(a.d.c=r.c+r.b-a.b.rf().a))}(t,e),a=null,c=null,l){for(c=a=ZR((o=s.Kc()).Pb(),111);o.Ob();)c=ZR(o.Pb(),111);a.d.b=0,c.d.c=0,f&&!a.a&&(a.d.c=0)}h&&(!function(t){var e,n,i,a,o;for(e=0,n=0,o=t.Kc();o.Ob();)i=ZR(o.Pb(),111),e=r.Math.max(e,i.d.b),n=r.Math.max(n,i.d.c);for(a=t.Kc();a.Ob();)(i=ZR(a.Pb(),111)).d.b=e,i.d.c=n}(s),l&&(a.d.b=0,c.d.c=0))}function Kgt(t,e){var n,i,a,o,s,l,c,u,f,h;if(s=ZR(ZR(FX(t.r,e),21),84),l=t.u.Hc((Put(),xre)),n=t.u.Hc(mre),i=t.u.Hc(vre),c=t.u.Hc(wre),h=t.B.Hc((Zvt(),hie)),u=!n&&!i&&(c||2==s.gc()),function(t,e){var n,i,a,o,s,l,c;for(l=ZR(ZR(FX(t.r,e),21),84).Kc();l.Ob();)(i=(s=ZR(l.Pb(),111)).c?Yz(s.c):0)>0?s.a?i>(c=s.b.rf().b)&&(t.v||1==s.c.d.c.length?(o=(i-c)/2,s.d.d=o,s.d.a=o):(n=(ZR(TN(s.c.d,0),181).rf().b-c)/2,s.d.d=r.Math.max(0,n),s.d.a=i-n-c)):s.d.a=t.t+i:aF(t.u)&&((a=cst(s.b)).d<0&&(s.d.d=-a.d),a.d+a.a>s.b.rf().b&&(s.d.a=a.d+a.a-s.b.rf().b))}(t,e),f=null,a=null,l){for(a=f=ZR((o=s.Kc()).Pb(),111);o.Ob();)a=ZR(o.Pb(),111);f.d.d=0,a.d.a=0,u&&!f.a&&(f.d.a=0)}h&&(!function(t){var e,n,i,a,o;for(n=0,e=0,o=t.Kc();o.Ob();)i=ZR(o.Pb(),111),n=r.Math.max(n,i.d.d),e=r.Math.max(e,i.d.a);for(a=t.Kc();a.Ob();)(i=ZR(a.Pb(),111)).d.d=n,i.d.a=e}(s),l&&(f.d.d=0,a.d.a=0))}function Zgt(t,e,n){var r,i,a,o,s;if(r=e.k,e.p>=0)return!1;if(e.p=n.b,nz(n.e,e),r==(plt(),VGt)||r==GGt)for(i=new md(e.j);i.a1||-1==o)&&(a|=16),0!=(i.Bb&SDt)&&(a|=64)),0!=(n.Bb&iMt)&&(a|=Hzt),a|=jDt):CP(e,457)?a|=512:(r=e.Bj())&&0!=(1&r.i)&&(a|=256),0!=(512&t.Bb)&&(a|=128),a}function nvt(t,e){var n,r,i,a,o;for(t=null==t?lkt:(yU(t),t),i=0;it.d[s.p]&&(n+=G$(t.b,a),PY(t.a,g7(a))):++o;for(n+=t.b.d*o;!ix(t.a);)nQ(t.b,ZR(OF(t.a),19).a)}return n}function ivt(t){var e,n,r,i,a,o,s;for(s=new im,r=new md(t.a.b);r.a=t.o)throw um(new qm);o=e>>5,a=qj(1,$N(qj(31&e,1))),t.n[n][o]=i?GG(t.n[n][o],a):qG(t.n[n][o],pz(a)),a=qj(a,1),t.n[n][o]=r?GG(t.n[n][o],a):qG(t.n[n][o],pz(a))}catch(Wle){throw CP(Wle=_5(Wle),320)?um(new Hb(HAt+t.o+"*"+t.p+VAt+e+rkt+n+qAt)):um(Wle)}}function lvt(t,e,n,i){var a,o;e&&(a=ex(fI(Ost(e,(oxt(),E4t))))+i,o=n+ex(fI(Ost(e,T4t)))/2,d4(e,I4t,g7($N(z3(r.Math.round(a))))),d4(e,D4t,g7($N(z3(r.Math.round(o))))),0==e.d.b||lvt(t,ZR(SP(new Ng(tnt(new zg(e).a.d,0))),86),n+ex(fI(Ost(e,T4t)))+t.a,i+ex(fI(Ost(e,M4t)))),null!=Ost(e,L4t)&&lvt(t,ZR(Ost(e,L4t),86),n,i))}function cvt(t){var e,n,r;return 0!=(64&t.Db)?wlt(t):(e=new AL(mDt),(n=t.k)?xE(xE((e.a+=' "',e),n),'"'):(!t.n&&(t.n=new bF(nae,t,1,7)),t.n.i>0&&(!(r=(!t.n&&(t.n=new bF(nae,t,1,7)),ZR(a0(t.n,0),137)).a)||xE(xE((e.a+=' "',e),r),'"'))),xE(e_(xE(e_(xE(e_(xE(e_((e.a+=" (",e),t.i),","),t.j)," | "),t.g),","),t.f),")"),e.a)}function uvt(t){var e,n,r;return 0!=(64&t.Db)?wlt(t):(e=new AL(yDt),(n=t.k)?xE(xE((e.a+=' "',e),n),'"'):(!t.n&&(t.n=new bF(nae,t,1,7)),t.n.i>0&&(!(r=(!t.n&&(t.n=new bF(nae,t,1,7)),ZR(a0(t.n,0),137)).a)||xE(xE((e.a+=' "',e),r),'"'))),xE(e_(xE(e_(xE(e_(xE(e_((e.a+=" (",e),t.i),","),t.j)," | "),t.g),","),t.f),")"),e.a)}function fvt(t,e){var n,r,i,a,o,s;if(null==e||0==e.length)return null;if(!(i=ZR(oq(t.a,e),149))){for(r=new sd(new Qh(t.b).a.vc().Kc());r.a.Ob();)if(a=ZR(r.a.Pb(),42),o=(n=ZR(a.dd(),149)).c,s=e.length,FD(o.substr(o.length-s,s),e)&&(e.length==o.length||46==YU(o,o.length-e.length-1))){if(i)return null;i=n}i&&qq(t.a,e,i)}return i}function hvt(t){var e,n,r;PO(t,(y_t(),X0t))&&((r=ZR(Ost(t,X0t),21)).dc()||(n=new aR(e=ZR(Lw(ore),9),ZR(nD(e,e.length),9),0),r.Hc((Tht(),$ne))?t2(n,$ne):t2(n,Xne),r.Hc(Wne)||t2(n,Wne),r.Hc(Gne)?t2(n,Jne):r.Hc(qne)?t2(n,Zne):r.Hc(Yne)&&t2(n,Kne),r.Hc(Jne)?t2(n,Gne):r.Hc(Zne)?t2(n,qne):r.Hc(Kne)&&t2(n,Yne),d4(t,X0t,n)))}function dvt(t){var e,n,r,i,a,o,s;for(i=ZR(Ost(t,(O_t(),xKt)),10),OG(0,(r=t.j).c.length),n=ZR(r.c[0],11),o=new md(i.j);o.ai.p?(gut(a,Hre),a.d&&(s=a.o.b,e=a.a.b,a.a.b=s-e)):a.j==Hre&&i.p>t.p&&(gut(a,Mre),a.d&&(s=a.o.b,e=a.a.b,a.a.b=-(s-e)));break}return i}function pvt(t,e,n,r,i){var a,o,s,l,c,u,f;if(!(CP(e,239)||CP(e,354)||CP(e,186)))throw um(new Kb("Method only works for ElkNode-, ElkLabel and ElkPort-objects."));return o=t.a/2,l=e.i+r-o,u=e.j+i-o,c=l+e.g+t.a,f=u+e.f+t.a,jz(a=new Dy,new KA(l,u)),jz(a,new KA(l,f)),jz(a,new KA(c,f)),jz(a,new KA(c,u)),l5(s=new rht(a),e),n&&RU(t.b,e,s),s}function gvt(t,e,n){var r,i,a,o,s,l,c,u;for(a=new KA(e,n),c=new md(t.a);c.a1&&(r=new KA(i,n.b),jz(e.a,r)),i1(e.a,R5(qx(V9t,1),Akt,8,0,[f,u]))}function Pvt(t,e,n){var r,i,a,o,s,l;if(e){if(n<=-1){if(CP(r=CQ(e.Tg(),-1-n),99))return ZR(r,18);for(s=0,l=(o=ZR(e.ah(r),153)).gc();s0){for(i=l.length;i>0&&""==l[i-1];)--i;i=40)&&function(t){var e,n,r,i,a,o,s;for(t.o=new nm,r=new Mk,o=new md(t.e.a);o.a0,s=T9(e,a),XL(n?s.b:s.g,e),1==d9(s).c.length&&X$(r,s,r.c.b,r.c),i=new bS(a,e),PY(t.o,i),sJ(t.e.a,a))}(t),function(t){var e,n,r,i,a,o,s,l,c,u;for(c=t.e.a.c.length,a=new md(t.e.a);a.a0&&jz(t.f,a)):(t.c[o]-=c+1,t.c[o]<=0&&t.a[o]>0&&jz(t.e,a))))}function Xvt(t,e,n){var r,i,a,o,s,l,c,u,f;for(a=new mK(e.c.length),c=new md(e);c.a=0&&l0&&(IG(0,t.length),45==t.charCodeAt(0)||(IG(0,t.length),43==t.charCodeAt(0)))?1:0;rn)throw um(new Ex(QTt+t+'"'));return o}function omt(t){switch(t){case 100:return F_t(Ajt,!0);case 68:return F_t(Ajt,!1);case 119:return F_t(Sjt,!0);case 87:return F_t(Sjt,!1);case 115:return F_t(Ejt,!0);case 83:return F_t(Ejt,!1);case 99:return F_t(Cjt,!0);case 67:return F_t(Cjt,!1);case 105:return F_t(Pjt,!0);case 73:return F_t(Pjt,!1);default:throw um(new Eb(Mjt+t.toString(16)))}}function smt(t,e,n,r,i){n&&(!r||(t.c-t.b&t.a.length-1)>1)&&1==e&&ZR(t.a[t.b],10).k==(plt(),HGt)?Umt(ZR(t.a[t.b],10),(Uit(),jne)):r&&(!n||(t.c-t.b&t.a.length-1)>1)&&1==e&&ZR(t.a[t.c-1&t.a.length-1],10).k==(plt(),HGt)?Umt(ZR(t.a[t.c-1&t.a.length-1],10),(Uit(),Fne)):2==(t.c-t.b&t.a.length-1)?(Umt(ZR(T4(t),10),(Uit(),jne)),Umt(ZR(T4(t),10),Fne)):function(t,e){var n,r,i,a,o,s,l,c,u;for(l=uO(t.c-t.b&t.a.length-1),c=null,u=null,a=new XU(t);a.a!=a.b;)i=ZR(p8(a),10),n=(s=ZR(Ost(i,(O_t(),AKt)),11))?s.i:null,r=(o=ZR(Ost(i,SKt),11))?o.i:null,c==n&&u==r||(bht(l,e),c=n,u=r),l.c[l.c.length]=i;bht(l,e)}(t,i),r$(t)}function lmt(t,e,n){var r,i,a,o;if(e[0]>=t.length)return n.o=0,!0;switch(YU(t,e[0])){case 43:i=1;break;case 45:i=-1;break;default:return n.o=0,!0}if(++e[0],a=e[0],0==(o=Yut(t,e))&&e[0]==a)return!1;if(e[0]=0&&s!=n&&(a=new mF(t,1,s,o,null),r?r.Ei(a):r=a),n>=0&&(a=new mF(t,1,n,s==n?o:null,e),r?r.Ei(a):r=a)),r}function fmt(t){var e,n,r;if(null==t.b){if(r=new Cx,null!=t.i&&(mE(r,t.i),r.a+=":"),0!=(256&t.f)){for(0!=(256&t.f)&&null!=t.a&&(function(t){return null!=t&&fk(jae,t.toLowerCase())}(t.i)||(r.a+="//"),mE(r,t.a)),null!=t.d&&(r.a+="/",mE(r,t.d)),0!=(16&t.f)&&(r.a+="/"),e=0,n=t.j.length;e0&&(e.td(n),n.i&&T7(n))}(i=xpt(t,e),(o=ZR(_nt(i,0),214)).c.Rf()?o.c.Lf()?new gg(t):new vg(t):new pg(t)),function(t){var e,n,r;for(r=new md(t.b);r.a>>31;0!=r&&(t[n]=r)}(n,n,e<<1),r=0,i=0,o=0;ic)&&(l+s+ubt(r,c,!1).a<=e.b&&(mZ(n,a-n.s),n.c=!0,mZ(r,a-n.s),Znt(r,n.s,n.t+n.d+s),r.k=!0,l3(n.q,r),u=!0,i&&(a1(e,r),r.j=e,t.c.length>o&&(sat((OG(o,t.c.length),ZR(t.c[o],200)),r),0==(OG(o,t.c.length),ZR(t.c[o],200)).a.c.length&&jX(t,o)))),u)}function vmt(t,e,n){var r,i,a,o,s;if(0==e.p){for(e.p=1,(i=n)||(i=new bS(new rm,new aR(r=ZR(Lw(Jre),9),ZR(nD(r,r.length),9),0))),ZR(i.a,15).Fc(e),e.k==(plt(),UGt)&&ZR(i.b,21).Fc(ZR(Ost(e,(O_t(),hKt)),61)),o=new md(e.j);o.a0)if(i=ZR(t.Ab.g,1934),null==e){for(a=0;a1)for(r=new md(i);r.an.s&&l=0&&c>=0&&lo)return Pwt(),Tre;break;case 4:case 3:if(u<0)return Pwt(),Mre;if(u+n>a)return Pwt(),Hre}return(l=(c+s/2)/o)+(r=(u+n/2)/a)<=1&&l-r<=0?(Pwt(),qre):l+r>=1&&l-r>=0?(Pwt(),Tre):r<.5?(Pwt(),Mre):(Pwt(),Hre)}function Smt(t,e){var n,r,i,a,o,s,l,c,u,f,h,d;for(n=!1,l=ex(fI(Ost(e,(y_t(),Y1t)))),h=eTt*l,i=new md(e.b);i.ao.n.b-o.d.d+u.a+h&&(d=c.g+u.g,u.a=(u.g*u.a+c.g*c.a)/d,u.g=d,c.f=u,n=!0)),a=o,c=u;return n}function Emt(t,e,n,r,i,a,o){var s,l,c,u,f;for(f=new uC,l=e.Kc();l.Ob();)for(u=new md(ZR(l.Pb(),839).wf());u.at.b/2+e.b/2||(a=r.Math.abs(t.d+t.a/2-(e.d+e.a/2)))>t.a/2+e.a/2?1:0==n&&0==a?0:0==n?o/a+1:0==a?i/n+1:r.Math.min(i/n,o/a)+1}function Pmt(t,e){var n,i,a,o,s,l;return(a=s1(t))==(l=s1(e))?t.e==e.e&&t.a<54&&e.a<54?t.fe.f?1:0:(i=t.e-e.e,(n=(t.d>0?t.d:r.Math.floor((t.a-1)*lMt)+1)-(e.d>0?e.d:r.Math.floor((e.a-1)*lMt)+1))>i+1?a:n0&&(s=sQ(s,Nyt(i))),set(o,s))):a0&&t.d!=(CJ(),$qt)&&(s+=o*(r.d.a+t.a[e.b][r.b]*(e.d.a-r.d.a)/n)),n>0&&t.d!=(CJ(),Wqt)&&(l+=o*(r.d.b+t.a[e.b][r.b]*(e.d.b-r.d.b)/n)));switch(t.d.g){case 1:return new KA(s/a,e.d.b);case 2:return new KA(e.d.a,l/a);default:return new KA(s/a,l/a)}}function Omt(t,e){var n,r,i,a;if(L6(),a=ZR(Ost(t.i,(y_t(),b1t)),98),0!=t.j.g-e.j.g||a!=(jot(),lre)&&a!=ure&&a!=cre)return 0;if(a==(jot(),lre)&&(n=ZR(Ost(t,x1t),19),r=ZR(Ost(e,x1t),19),n&&r&&0!=(i=n.a-r.a)))return i;switch(t.j.g){case 1:return O7(t.n.a,e.n.a);case 2:return O7(t.n.b,e.n.b);case 3:return O7(e.n.a,t.n.a);case 4:return O7(e.n.b,t.n.b);default:throw um(new Zb(wEt))}}function Imt(t){var e,n,r,i,a;for(nz(a=new mK((!t.a&&(t.a=new YP(Wie,t,5)),t.a).i+2),new KA(t.j,t.k)),Ak(new AN(null,(!t.a&&(t.a=new YP(Wie,t,5)),new DG(t.a,16))),new Jg(a)),nz(a,new KA(t.b,t.c)),e=1;e0&&(Z5(l,!1,(e7(),nne)),Z5(l,!0,rne)),$Q(e.g,new SM(t,n)),RU(t.g,e,n)}function Rmt(){var t;for(Rmt=P,ZFt=R5(qx(Xle,1),STt,25,15,[-1,-1,30,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5]),JFt=XK(Xle,STt,25,37,15,1),QFt=R5(qx(Xle,1),STt,25,15,[-1,-1,63,40,32,28,25,23,21,20,19,19,18,18,17,17,16,16,16,15,15,15,15,14,14,14,14,14,14,13,13,13,13,13,13,13,13]),tBt=XK(Zle,rMt,25,37,14,1),t=2;t<=36;t++)JFt[t]=lq(r.Math.pow(t,ZFt[t])),tBt[t]=Hat(Pkt,JFt[t])}function zmt(t){var e;if(1!=(!t.a&&(t.a=new bF(Zie,t,6,6)),t.a).i)throw um(new Kb(iDt+(!t.a&&(t.a=new bF(Zie,t,6,6)),t.a).i));return e=new Dy,k5(ZR(a0((!t.b&&(t.b=new LD(Xie,t,4,7)),t.b),0),82))&&C2(e,w_t(t,k5(ZR(a0((!t.b&&(t.b=new LD(Xie,t,4,7)),t.b),0),82)),!1)),k5(ZR(a0((!t.c&&(t.c=new LD(Xie,t,5,8)),t.c),0),82))&&C2(e,w_t(t,k5(ZR(a0((!t.c&&(t.c=new LD(Xie,t,5,8)),t.c),0),82)),!0)),e}function Nmt(t,e){var n,r,i;for(i=!1,r=new Oj(dL((e.d?t.a.c==(JV(),y5t)?s9(e.b):l9(e.b):t.a.c==(JV(),m5t)?s9(e.b):l9(e.b)).a.Kc(),new u));Kft(r);)if(n=ZR(wX(r),17),(tx(t.a.f[t.a.g[e.b.p].p])||Q$(n)||n.c.i.c!=n.d.i.c)&&!tx(t.a.n[t.a.g[e.b.p].p])&&!tx(t.a.n[t.a.g[e.b.p].p])&&(i=!0,vk(t.b,t.a.g[Wrt(n,e.b).p])))return e.c=!0,e.a=n,e;return e.c=i,e.a=null,e}function jmt(t,e,n){var r,i,a,o,s,l,c;if(0==(r=n.gc()))return!1;if(t.ej())if(l=t.fj(),K9(t,e,n),o=1==r?t.Zi(3,null,n.Kc().Pb(),e,l):t.Zi(5,null,n,e,l),t.bj()){for(s=r<100?null:new kw(r),a=e+r,i=e;i0){for(s=0;s>16==-15&&t.Cb.nh()&&yJ(new wZ(t.Cb,9,13,n,t.c,jnt(EJ(ZR(t.Cb,59)),t))):CP(t.Cb,88)&&t.Db>>16==-23&&t.Cb.nh()&&(CP(e=t.c,88)||(N_t(),e=Loe),CP(n,88)||(N_t(),n=Loe),yJ(new wZ(t.Cb,9,10,n,e,jnt(e$(ZR(t.Cb,26)),t)))))),t.c}function qmt(t,e,n){var r,i,a,o,s,l,c,u;for(ast(n,"Hyperedge merging",1),function(t,e){var n,r,i,a;for((a=ZR(w$($J($J(new AN(null,new DG(e.b,16)),new Nn),new jn),bZ(new H,new U,new rt,R5(qx(vUt,1),Xkt,132,0,[(C6(),dUt)]))),15)).Jc(new Fn),n=0,i=a.Kc();i.Ob();)-1==(r=ZR(i.Pb(),11)).p&&ght(t,r,n++)}(t,e),s=new JW(e.b,0);s.bn);return i}function Wmt(t,e){var n,r,i;r=0!=$ht(t.d,1),!tx(uI(Ost(e.j,(O_t(),pKt))))&&!tx(uI(Ost(e.j,GKt)))||rE(Ost(e.j,(y_t(),KQt)))===rE((w4(),K2t))?e.c.Tf(e.e,r):r=tx(uI(Ost(e.j,pKt))),ept(t,e,r,!0),tx(uI(Ost(e.j,GKt)))&&d4(e.j,GKt,(TL(),!1)),tx(uI(Ost(e.j,pKt)))&&(d4(e.j,pKt,(TL(),!1)),d4(e.j,GKt,!0)),n=jct(t,e);do{if(w2(t),0==n)return 0;i=n,ept(t,e,r=!r,!1),n=jct(t,e)}while(i>n);return i}function Ymt(t,e,n){var r,i,a,o,s,l,c;if(e==n)return!0;if(e=$ft(t,e),n=$ft(t,n),r=grt(e)){if((l=grt(n))!=r)return!!l&&((o=r.Dj())==l.Dj()&&null!=o);if(!e.d&&(e.d=new YP(uoe,e,1)),i=(a=e.d).i,!n.d&&(n.d=new YP(uoe,n,1)),i==(c=n.d).i)for(s=0;s0&&(d.d+=f.n.d,d.d+=f.d);d.a>0&&(d.a+=f.n.a,d.a+=f.d);d.b>0&&(d.b+=f.n.b,d.b+=f.d);d.c>0&&(d.c+=f.n.c,d.c+=f.d);return d}((Eq(t)&&(gT(),new Yb(Eq(t))),gT(),new nO(Eq(t)?new Yb(Eq(t)):null,t)),rne),o=ZR(Ost(i,l1t),116),Oq(n=i.d,o),Oq(n,a),i}function Zmt(t,e){var n,i,a,o;return i=r.Math.abs(oF(t.b).a-oF(e.b).a),o=r.Math.abs(oF(t.b).b-oF(e.b).b),0,0,n=1,a=1,i>t.b.b/2+e.b.b/2&&(n=1-r.Math.min(r.Math.abs(t.b.c-(e.b.c+e.b.b)),r.Math.abs(t.b.c+t.b.b-e.b.c))/i),o>t.b.a/2+e.b.a/2&&(a=1-r.Math.min(r.Math.abs(t.b.d-(e.b.d+e.b.a)),r.Math.abs(t.b.d+t.b.a-e.b.d))/o),(1-r.Math.min(n,a))*r.Math.sqrt(i*i+o*o)}function Jmt(t){var e,n,i;for(ywt(t,t.e,t.f,(ZV(),K5t),!0,t.c,t.i),ywt(t,t.e,t.f,K5t,!1,t.c,t.i),ywt(t,t.e,t.f,Z5t,!0,t.c,t.i),ywt(t,t.e,t.f,Z5t,!1,t.c,t.i),function(t,e,n,r,i){var a,o,s,l,c,u,f;for(o=new md(e);o.a=p&&(y>p&&(d.c=XK(Yjt,akt,1,0,5,1),p=y),d.c[d.c.length]=o);0!=d.c.length&&(h=ZR(TN(d,Ynt(e,d.c.length)),128),S.a.Bc(h),h.s=g++,odt(h,M,_),d.c=XK(Yjt,akt,1,0,5,1))}for(x=t.c.length+1,s=new md(t);s.aA.s&&(uU(n),sJ(A.i,r),r.c>0&&(r.a=A,nz(A.t,r),r.b=k,nz(k.i,r)))}(t.i,ZR(Ost(t.d,(O_t(),HKt)),230)),function(t){var e,n,i,a,o,s,l,c,u;for(c=new Mk,s=new Mk,a=new md(t);a.a-1){for(i=tnt(s,0);i.b!=i.d.c;)(n=ZR(EY(i),128)).v=o;for(;0!=s.b;)for(e=new md((n=ZR(Yit(s,0),128)).i);e.a=65;n--)fle[n]=n-65<<24>>24;for(r=122;r>=97;r--)fle[r]=r-97+26<<24>>24;for(i=57;i>=48;i--)fle[i]=i-48+52<<24>>24;for(fle[43]=62,fle[47]=63,a=0;a<=25;a++)hle[a]=65+a&dTt;for(o=26,l=0;o<=51;++o,l++)hle[o]=97+l&dTt;for(t=52,s=0;t<=61;++t,s++)hle[t]=48+s&dTt;hle[62]=43,hle[63]=47}function eyt(t,e){var n,r,i,a,o,s,l;if(!Tq(t))throw um(new Zb(rDt));if(a=(r=Tq(t)).g,i=r.f,a<=0&&i<=0)return Pwt(),Vre;switch(s=t.i,l=t.j,e.g){case 2:case 1:if(s<0)return Pwt(),qre;if(s+t.g>a)return Pwt(),Tre;break;case 4:case 3:if(l<0)return Pwt(),Mre;if(l+t.f>i)return Pwt(),Hre}return(o=(s+t.g/2)/a)+(n=(l+t.f/2)/i)<=1&&o-n<=0?(Pwt(),qre):o+n>=1&&o-n>=0?(Pwt(),Tre):n<.5?(Pwt(),Mre):(Pwt(),Hre)}function nyt(t){var e,n,r,i,a,o;if(R_t(),4!=t.e&&5!=t.e)throw um(new Kb("Token#complementRanges(): must be RANGE: "+t.e));for(zht(a=t),Rbt(a),r=a.b.length+2,0==a.b[0]&&(r-=2),(n=a.b[a.b.length-1])==Tjt&&(r-=2),(i=new aW(4)).b=XK(Xle,STt,25,r,15,1),o=0,a.b[0]>0&&(i.b[o++]=0,i.b[o++]=a.b[0]-1),e=1;e0&&(jh(l,l.d-i.d),i.c==(rK(),U5t)&&zh(l,l.a-i.d),l.d<=0&&l.i>0&&X$(e,l,e.c.b,e.c));for(a=new md(t.f);a.a0&&(Fh(s,s.i-i.d),i.c==(rK(),U5t)&&Nh(s,s.b-i.d),s.i<=0&&s.d>0&&X$(n,s,n.c.b,n.c))}function ayt(t,e,n){var r,i,a,o,s,l,c,u;for(ast(n,"Processor compute fanout",1),WF(t.b),WF(t.a),s=null,a=tnt(e.b,0);!s&&a.b!=a.d.c;)tx(uI(Ost(c=ZR(EY(a),86),(oxt(),O4t))))&&(s=c);for(X$(l=new Mk,s,l.c.b,l.c),Lwt(t,l),u=tnt(e.b,0);u.b!=u.d.c;)o=hI(Ost(c=ZR(EY(u),86),(oxt(),w4t))),i=null!=oq(t.b,o)?ZR(oq(t.b,o),19).a:0,d4(c,x4t,g7(i)),r=1+(null!=oq(t.a,o)?ZR(oq(t.a,o),19).a:0),d4(c,y4t,g7(r));jlt(n)}function oyt(t,e,n,r,i){var a,o,s,l,c,u,f,h,d;for(f=function(t,e){var n,r,i;for(i=new JW(t.e,0),n=0;i.bQLt)return n;r>-1e-6&&++n}return n}(t,n),s=0;s0),r.a.Xb(r.c=--r.b),u>f+s&&uU(r);for(a=new md(h);a.a0),r.a.Xb(r.c=--r.b)}}function syt(t){var e,n,i,a,o,s,l,c,u,f,h,d,p;if(n=t.i,e=t.n,0==t.b)for(p=n.c+e.b,d=n.b-e.b-e.c,c=0,f=(s=t.a).length;c0&&(h-=i[0]+t.c,i[0]+=t.c),i[2]>0&&(h-=i[2]+t.c),i[1]=r.Math.max(i[1],h),yj(t.a[1],n.c+e.b+i[0]-(i[1]-h)/2,i[1]);for(l=0,u=(o=t.a).length;lo&&(o=i,c.c=XK(Yjt,akt,1,0,5,1)),i==o&&nz(c,new bS(n.c.i,n)));YH(),JC(c,t.c),QN(t.b,s.p,c)}}(h,t),h.f=uO(h.d),function(t,e){var n,r,i,a,o,s,l,c;for(a=new md(e.b);a.ao&&(o=i,c.c=XK(Yjt,akt,1,0,5,1)),i==o&&nz(c,new bS(n.d.i,n)));YH(),JC(c,t.c),QN(t.f,s.p,c)}}(h,t),h}function cyt(t,e){var n,i,a;for(a=ZR(TN(t.n,t.n.c.length-1),211).d,t.p=r.Math.min(t.p,e.g),t.r=r.Math.max(t.r,a),t.g=r.Math.max(t.g,e.g+(1==t.b.c.length?0:t.i)),t.o=r.Math.min(t.o,e.f),t.e+=e.f+(1==t.b.c.length?0:t.i),t.f=r.Math.max(t.f,e.f),i=t.n.c.length>0?(t.n.c.length-1)*t.i:0,n=new md(t.n);n.a1)for(r=tnt(i,0);r.b!=r.d.c;)for(a=0,s=new md((n=ZR(EY(r),231)).e);s.a0&&(e[0]+=t.c,h-=e[0]),e[2]>0&&(h-=e[2]+t.c),e[1]=r.Math.max(e[1],h),bj(t.a[1],i.d+n.d+e[0]-(e[1]-h)/2,e[1]);else for(p=i.d+n.d,d=i.a-n.d-n.a,c=0,f=(s=t.a).length;c=0&&a!=n)throw um(new Kb(kRt));for(i=0,l=0;l0||0==x9(a.b.d,t.b.d+t.b.a)&&i.b<0||0==x9(a.b.d+a.b.a,t.b.d)&&i.b>0){l=0;break}}else l=r.Math.min(l,put(t,a,i));l=r.Math.min(l,gyt(t,o,l,i))}return l}function vyt(t,e){var n,r,i,a,o,s;if(t.b<2)throw um(new Kb("The vector chain must contain at least a source and a target point."));for(AO(0!=t.b),TC(e,(r=ZR(t.a.a.c,8)).a,r.b),s=new oO((!e.a&&(e.a=new YP(Wie,e,5)),e.a)),a=tnt(t,1);a.aex(DP(o.g,o.d[0]).a)?(AO(l.b>0),l.a.Xb(l.c=--l.b),QI(l,o),i=!0):s.e&&s.e.gc()>0&&(a=(!s.e&&(s.e=new rm),s.e).Mc(e),c=(!s.e&&(s.e=new rm),s.e).Mc(n),(a||c)&&((!s.e&&(s.e=new rm),s.e).Fc(o),++o.c));i||(r.c[r.c.length]=o)}function kyt(t){var e,n,r;if(gC(ZR(Ost(t,(y_t(),b1t)),98)))for(n=new md(t.j);n.a>>0).toString(16),e.length-2,e.length):t>=iMt?"\\v"+hO(e="0"+(t>>>0).toString(16),e.length-6,e.length):""+String.fromCharCode(t&dTt)}return n}function Myt(t,e){var n,r,i,a,o,s,l,c,u,f;if(o=t.e,0==(l=e.e))return t;if(0==o)return 0==e.e?e:new CF(-e.e,e.d,e.a);if((a=t.d)+(s=e.d)==2)return n=qG(t.a[0],cMt),r=qG(e.a[0],cMt),o<0&&(n=cJ(n)),l<0&&(r=cJ(r)),Yet(t9(n,r));if(-1==(i=a!=s?a>s?1:-1:p6(t.a,e.a,a)))f=-l,u=o==l?qX(e.a,s,t.a,a):$K(e.a,s,t.a,a);else if(f=o,o==l){if(0==i)return ggt(),bBt;u=qX(t.a,a,e.a,s)}else u=$K(t.a,a,e.a,s);return AW(c=new CF(f,u.length,u)),c}function Ayt(t){var e,n,r,i,a,o;for(this.e=new rm,this.a=new rm,n=t.b-1;n<3;n++)LO(t,0,ZR(_nt(t,0),8));if(t.b<4)throw um(new Kb("At (least dimension + 1) control points are necessary!"));for(this.b=3,this.d=!0,this.c=!1,function(t,e){var n,r,i,a,o;if(e<2*t.b)throw um(new Kb("The knot vector must have at least two time the dimension elements."));for(t.f=1,i=0;i=e.o&&n.f<=e.f||.5*e.a<=n.f&&1.5*e.a>=n.f){if((a=ZR(TN(e.n,e.n.c.length-1),211)).e+a.d+n.g+i<=r&&(ZR(TN(e.n,e.n.c.length-1),211).f-t.f+n.f<=t.b||1==t.a.c.length))return h9(e,n),!0;if(e.s+n.g<=r&&(e.t+e.d+n.f+i<=t.b||1==t.a.c.length))return nz(e.b,n),o=ZR(TN(e.n,e.n.c.length-1),211),nz(e.n,new vq(e.s,o.f+o.a+e.i,e.i)),Prt(ZR(TN(e.n,e.n.c.length-1),211),n),cyt(e,n),!0}return!1}function Cyt(t,e,n){var r,i,a,o;return t.ej()?(i=null,a=t.fj(),r=t.Zi(1,o=HJ(t,e,n),n,e,a),t.bj()&&!(t.ni()&&null!=o?K8(o,n):rE(o)===rE(n))?(null!=o&&(i=t.dj(o,i)),i=t.cj(n,i),t.ij()&&(i=t.lj(o,n,i)),i?(i.Ei(r),i.Fi()):t.$i(r)):(t.ij()&&(i=t.lj(o,n,i)),i?(i.Ei(r),i.Fi()):t.$i(r)),o):(o=HJ(t,e,n),t.bj()&&!(t.ni()&&null!=o?K8(o,n):rE(o)===rE(n))&&(i=null,null!=o&&(i=t.dj(o,null)),(i=t.cj(n,i))&&i.Fi()),o)}function Pyt(t,e){var n,i,a,o,s,l,c;e%=24,t.q.getHours()!=e&&((n=new r.Date(t.q.getTime())).setDate(n.getDate()+1),(s=t.q.getTimezoneOffset()-n.getTimezoneOffset())>0&&(l=s/60|0,c=s%60,i=t.q.getDate(),t.q.getHours()+l>=24&&++i,a=new r.Date(t.q.getFullYear(),t.q.getMonth(),i,e+l,t.q.getMinutes()+c,t.q.getSeconds(),t.q.getMilliseconds()),t.q.setTime(a.getTime()))),o=t.q.getTime(),t.q.setTime(o+36e5),t.q.getHours()!=e&&t.q.setTime(o)}function Lyt(t,e){var n,r,i,a;if(ast(e,"Path-Like Graph Wrapping",1),0!=t.b.c.length)if(null==(i=new aht(t)).i&&(i.i=z2(i,new wa)),n=ex(i.i)*i.f/(null==i.i&&(i.i=z2(i,new wa)),ex(i.i)),i.b>n)jlt(e);else{switch(ZR(Ost(t,(y_t(),i2t)),337).g){case 2:a=new Ta;break;case 0:a=new pa;break;default:a=new Ma}if(r=a.Vf(t,i),!a.Wf())switch(ZR(Ost(t,u2t),338).g){case 2:r=vut(i,r);break;case 1:r=lst(i,r)}!function(t,e,n){var r,i,a,o,s,l,c,u,f,h,d;if(n.dc())return;o=0,u=0,r=n.Kc(),h=ZR(r.Pb(),19).a;for(;o1||-1==p)if(f=ZR(g,69),h=ZR(u,69),f.dc())h.$b();else for(o=!!ert(e),a=0,s=t.a?f.Kc():f.Zh();s.Ob();)c=ZR(s.Pb(),56),(i=ZR(WJ(t,c),56))?(o?-1==(l=h.Xc(i))?h.Xh(a,i):a!=l&&h.ji(a,i):h.Xh(a,i),++a):t.b&&!o&&(h.Xh(a,c),++a);else null==g?u.Wb(null):null==(i=WJ(t,g))?t.b&&!ert(e)&&u.Wb(g):u.Wb(i)}function zyt(t,e){var n,i,a,o,s,l,c,f;for(n=new In,a=new Oj(dL(s9(e).a.Kc(),new u));Kft(a);)if(!Q$(i=ZR(wX(a),17))&&Hot(l=i.c.i,uWt)){if(-1==(f=Egt(t,l,uWt,cWt)))continue;n.b=r.Math.max(n.b,f),!n.a&&(n.a=new rm),nz(n.a,l)}for(s=new Oj(dL(l9(e).a.Kc(),new u));Kft(s);)if(!Q$(o=ZR(wX(s),17))&&Hot(c=o.d.i,cWt)){if(-1==(f=Egt(t,c,cWt,uWt)))continue;n.d=r.Math.max(n.d,f),!n.c&&(n.c=new rm),nz(n.c,c)}return n}function Nyt(t){var e,n,r,i;if(kft(),e=lq(t),t1e6)throw um(new Ub("power of ten too big"));if(t<=Q_t)return bX(ift(kBt[1],e),e);for(i=r=ift(kBt[1],Q_t),n=z3(t-Q_t),e=lq(t%Q_t);w8(n,Q_t)>0;)i=sQ(i,r),n=t9(n,Q_t);for(i=bX(i=sQ(i,ift(kBt[1],e)),Q_t),n=z3(t-Q_t);w8(n,Q_t)>0;)i=bX(i,Q_t),n=t9(n,Q_t);return i=bX(i,e)}function jyt(t,e){var n,r,i,a,o;ast(e,"Layer constraint postprocessing",1),0!=(o=t.b).c.length&&(OG(0,o.c.length),function(t,e,n,r,i){var a,o,s,l,c,u;for(a=new md(t.b);a.a1)););(s>0||h.Hc((Put(),yre))&&(!a.n&&(a.n=new bF(nae,a,1,7)),a.n).i>0)&&(l=!0),s>1&&(c=!0)}l&&e.Fc((igt(),EXt)),c&&e.Fc((igt(),CXt))}(e,r=ZR(Ost(i,(O_t(),gKt)),21)),r.Hc((igt(),EXt)))for(n=new WP((!e.c&&(e.c=new bF(iae,e,9,9)),e.c));n.e!=n.i.gc();)gwt(t,e,i,ZR(fnt(n),118));return 0!=ZR(kht(e,(y_t(),r1t)),174).gc()&&sgt(e,i),tx(uI(Ost(i,u1t)))&&r.Fc(IXt),PO(i,I1t)&&Nb(new U9(ex(fI(Ost(i,I1t)))),i),rE(kht(e,A0t))===rE((P8(),Dne))?function(t,e,n){var r,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T;o=new Mk,y=ZR(Ost(n,(y_t(),c0t)),103),p=0,C2(o,(!e.a&&(e.a=new bF(rae,e,10,11)),e.a));for(;0!=o.b;)c=ZR(0==o.b?null:(AO(0!=o.b),XQ(o,o.a.a)),33),(rE(kht(e,KQt))!==rE((w4(),K2t))||rE(kht(e,s0t))===rE((xrt(),F$t))||rE(kht(e,s0t))===rE((xrt(),N$t))||tx(uI(kht(e,JQt)))||rE(kht(e,GQt))!==rE((n7(),LGt)))&&!tx(uI(kht(c,XQt)))&&Ont(c,(O_t(),PKt),g7(p++)),!tx(uI(kht(c,s1t)))&&(f=0!=(!c.a&&(c.a=new bF(rae,c,10,11)),c.a).i,d=Jot(c),h=rE(kht(c,A0t))===rE((P8(),Dne)),v=null,(T=!GK(c,(L_t(),yte))||FD(hI(kht(c,yte)),LEt))&&h&&(f||d)&&(d4(v=Kmt(c),c0t,y),PO(v,I1t)&&Nb(new U9(ex(fI(Ost(v,I1t)))),v),0!=ZR(kht(c,r1t),174).gc()&&(u=v,Ak(new AN(null,(!c.c&&(c.c=new bF(iae,c,9,9)),new DG(c.c,16))),new vp(u)),sgt(c,v))),b=n,(x=ZR(UB(t.a,Eq(c)),10))&&(b=x.e),g=Jxt(t,c,b),v&&(g.e=v,v.e=g,C2(o,(!c.a&&(c.a=new bF(rae,c,10,11)),c.a))));p=0,X$(o,e,o.c.b,o.c);for(;0!=o.b;){for(l=new WP((!(a=ZR(0==o.b?null:(AO(0!=o.b),XQ(o,o.a.a)),33)).b&&(a.b=new bF(Kie,a,12,3)),a.b));l.e!=l.i.gc();)mvt(s=ZR(fnt(l),79)),(rE(kht(e,KQt))!==rE((w4(),K2t))||rE(kht(e,s0t))===rE((xrt(),F$t))||rE(kht(e,s0t))===rE((xrt(),N$t))||tx(uI(kht(e,JQt)))||rE(kht(e,GQt))!==rE((n7(),LGt)))&&Ont(s,(O_t(),PKt),g7(p++)),_=ist(ZR(a0((!s.b&&(s.b=new LD(Xie,s,4,7)),s.b),0),82)),k=ist(ZR(a0((!s.c&&(s.c=new LD(Xie,s,5,8)),s.c),0),82)),tx(uI(kht(s,s1t)))||tx(uI(kht(_,s1t)))||tx(uI(kht(k,s1t)))||(m=a,Xut(s)&&tx(uI(kht(_,L0t)))&&tx(uI(kht(s,O0t)))||YQ(k,_)?m=_:YQ(_,k)&&(m=k),b=n,(x=ZR(UB(t.a,m),10))&&(b=x.e),d4(P_t(t,s,m,b),(O_t(),nKt),zpt(t,s,e,n)));if(h=rE(kht(a,A0t))===rE((P8(),Dne)))for(i=new WP((!a.a&&(a.a=new bF(rae,a,10,11)),a.a));i.e!=i.i.gc();)T=!GK(r=ZR(fnt(i),33),(L_t(),yte))||FD(hI(kht(r,yte)),LEt),w=rE(kht(r,A0t))===rE(Dne),T&&w&&X$(o,r,o.c.b,o.c)}}(t,e,i):function(t,e,n){var r,i,a,o,s,l,c,u,f,h,d,p,g;for(f=0,i=new WP((!e.a&&(e.a=new bF(rae,e,10,11)),e.a));i.e!=i.i.gc();)tx(uI(kht(r=ZR(fnt(i),33),(y_t(),s1t))))||(rE(kht(e,KQt))===rE((w4(),K2t))&&rE(kht(e,s0t))!==rE((xrt(),F$t))&&rE(kht(e,s0t))!==rE((xrt(),N$t))&&!tx(uI(kht(e,JQt)))&&rE(kht(e,GQt))===rE((n7(),LGt))||tx(uI(kht(r,XQt)))||(Ont(r,(O_t(),PKt),g7(f)),++f),Jxt(t,r,n));for(f=0,c=new WP((!e.b&&(e.b=new bF(Kie,e,12,3)),e.b));c.e!=c.i.gc();)s=ZR(fnt(c),79),(rE(kht(e,(y_t(),KQt)))!==rE((w4(),K2t))||rE(kht(e,s0t))===rE((xrt(),F$t))||rE(kht(e,s0t))===rE((xrt(),N$t))||tx(uI(kht(e,JQt)))||rE(kht(e,GQt))!==rE((n7(),LGt)))&&(Ont(s,(O_t(),PKt),g7(f)),++f),p=Fst(s),g=Hst(s),u=tx(uI(kht(p,L0t))),d=!tx(uI(kht(s,s1t))),h=u&&Xut(s)&&tx(uI(kht(s,O0t))),a=Eq(p)==e&&Eq(p)==Eq(g),o=(Eq(p)==e&&g==e)^(Eq(g)==e&&p==e),d&&!h&&(o||a)&&P_t(t,s,e,n);if(Eq(e))for(l=new WP(CH(Eq(e)));l.e!=l.i.gc();)(p=Fst(s=ZR(fnt(l),79)))==e&&Xut(s)&&(h=tx(uI(kht(p,(y_t(),L0t))))&&tx(uI(kht(s,O0t))))&&P_t(t,s,e,n)}(t,e,i),i}function Uyt(t,e,n,i){var a,o,s;if(this.j=new rm,this.k=new rm,this.b=new rm,this.c=new rm,this.e=new uC,this.i=new Dy,this.f=new am,this.d=new rm,this.g=new rm,nz(this.b,t),nz(this.b,e),this.e.c=r.Math.min(t.a,e.a),this.e.d=r.Math.min(t.b,e.b),this.e.b=r.Math.abs(t.a-e.a),this.e.a=r.Math.abs(t.b-e.b),a=ZR(Ost(i,(y_t(),R0t)),74))for(s=tnt(a,0);s.b!=s.d.c;)p0((o=ZR(EY(s),8)).a,t.a)&&jz(this.i,o);n&&nz(this.j,n),nz(this.k,i)}function Hyt(t,e,n){var r,i,a,o,s,l,c,u,f,h;for(u=new uF(new ip(n)),RF(s=XK(Kle,vAt,25,t.f.e.c.length,16,1),s.length),n[e.b]=0,c=new md(t.f.e);c.ac&&r>c)){i=!1,n.n&&Iz(n,"bk node placement breaks on "+s+" which should have been after "+u);break}u=s,c=ex(e.p[s.p])+ex(e.d[s.p])+s.o.b+s.d.a}if(!i)break}return n.n&&Iz(n,e+" is feasible: "+i),i}function qyt(t,e,n,r){var i,a,o,s,l,c,u;if(n.d.i!=e.i){for(Lh(i=new art(t),(plt(),VGt)),d4(i,(O_t(),LKt),n),d4(i,(y_t(),b1t),(jot(),cre)),r.c[r.c.length]=i,Qq(o=new Clt,i),gut(o,(Pwt(),qre)),Qq(s=new Clt,i),gut(s,Tre),u=n.d,Kq(n,o),l5(a=new _V,n),d4(a,R0t,null),Zq(a,s),Kq(a,u),c=new JW(n.b,0);c.b=v&&t.e[c.p]>p*t.b||b>=n*v)&&(h.c[h.c.length]=l,l=new rm,C2(s,o),o.a.$b(),u-=f,d=r.Math.max(d,u*t.b+g),u+=b,y=b,b=0,f=0,g=0);return new bS(d,h)}function Yyt(t){var e,n,r,i,a,o,s,l,c,u,f,h;for(n=new sd(new Qh(t.c.b).a.vc().Kc());n.a.Ob();)s=ZR(n.a.Pb(),42),null==(i=(e=ZR(s.dd(),149)).a)&&(i=""),!(r=kI(t.c,i))&&0==i.length&&(r=B8(t)),r&&!X9(r.c,e,!1)&&jz(r.c,e);for(o=tnt(t.a,0);o.b!=o.d.c;)a=ZR(EY(o),478),c=uX(t.c,a.a),h=uX(t.c,a.b),c&&h&&jz(c.c,new bS(h,a.c));for(UH(t.a),f=tnt(t.b,0);f.b!=f.d.c;)u=ZR(EY(f),478),e=_I(t.c,u.a),l=uX(t.c,u.b),e&&l&&cT(e,l,u.c);UH(t.b)}function $yt(t){var e,n,r,i,a,o;if(!t.f){if(o=new Ml,a=new Ml,null==(e=Woe).a.zc(t,e)){for(i=new WP(EV(t));i.e!=i.i.gc();)_B(o,$yt(ZR(fnt(i),26)));e.a.Bc(t),e.a.gc()}for(!t.s&&(t.s=new bF(noe,t,21,17)),r=new WP(t.s);r.e!=r.i.gc();)CP(n=ZR(fnt(r),170),99)&&fZ(a,ZR(n,18));U6(a),t.r=new Ez(t,(ZR(a0(oV((ZB(),moe).o),6),18),a.i),a.g),_B(o,t.r),U6(o),t.f=new HE((ZR(a0(oV(moe.o),5),18),o.i),o.g),dX(t).b&=-3}return t.f}function Xyt(t){var e,n,r,i,a,o,s,l,c,u,f,h,d,p;for(o=t.o,r=XK(Xle,STt,25,o,15,1),i=XK(Xle,STt,25,o,15,1),n=t.p,e=XK(Xle,STt,25,n,15,1),a=XK(Xle,STt,25,n,15,1),c=0;c=0&&!Rrt(t,u,f);)--f;i[u]=f}for(d=0;d=0&&!Rrt(t,s,p);)--s;a[p]=s}for(l=0;le[h]&&hr[l]&&svt(t,l,h,!1,!0)}function Kyt(t){var e,n,r,i,a,o,s,l;n=tx(uI(Ost(t,(Vgt(),rqt)))),a=t.a.c.d,s=t.a.d.d,n?(o=jP(xD(new KA(s.a,s.b),a),.5),l=jP(gP(t.e),.5),e=xD(bD(new KA(a.a,a.b),o),l),RO(t.d,e)):(i=ex(fI(Ost(t.a,xqt))),r=t.d,a.a>=s.a?a.b>=s.b?(r.a=s.a+(a.a-s.a)/2+i,r.b=s.b+(a.b-s.b)/2-i-t.e.b):(r.a=s.a+(a.a-s.a)/2+i,r.b=a.b+(s.b-a.b)/2+i):a.b>=s.b?(r.a=a.a+(s.a-a.a)/2+i,r.b=s.b+(a.b-s.b)/2+i):(r.a=a.a+(s.a-a.a)/2+i,r.b=a.b+(s.b-a.b)/2-i-t.e.b))}function Zyt(t,e){var n,r,i,a,o,s,l;if(null==t)return null;if(0==(a=t.length))return"";for(l=XK($le,fTt,25,a,15,1),ZK(0,a,t.length),ZK(0,a,l.length),oB(t,0,a,l,0),n=null,s=e,i=0,o=0;i0?hO(n.a,0,a-1):"":t.substr(0,a-1):n?n.a:t}function Jyt(t){sT(t,new nst(iw(tw(rw(nw(new vs,cSt),"ELK DisCo"),"Layouter for arranging unconnected subgraphs. The subgraphs themselves are, by default, not laid out."),new ae))),zW(t,cSt,uSt,cnt(BVt)),zW(t,cSt,fSt,cnt(DVt)),zW(t,cSt,hSt,cnt(CVt)),zW(t,cSt,dSt,cnt(RVt)),zW(t,cSt,uAt,cnt(jVt)),zW(t,cSt,fAt,cnt(NVt)),zW(t,cSt,cAt,cnt(FVt)),zW(t,cSt,hAt,cnt(zVt)),zW(t,cSt,iSt,cnt(LVt)),zW(t,cSt,aSt,cnt(PVt)),zW(t,cSt,oSt,cnt(OVt)),zW(t,cSt,sSt,cnt(IVt))}function Qyt(t,e,n,r){var i,a,o,s,l,c,u;if(Lh(a=new art(t),(plt(),GGt)),d4(a,(y_t(),b1t),(jot(),cre)),i=0,e){for(d4(o=new Clt,(O_t(),LKt),e),d4(a,LKt,e.i),gut(o,(Pwt(),qre)),Qq(o,a),c=0,u=(l=CW(e.e)).length;c=0&&h<=1&&d>=0&&d<=1?bD(new KA(t.a,t.b),jP(new KA(e.a,e.b),h)):null}function nbt(t){var e,n,i,a,o,s,l,c,u,f;for(c=new Jh(new Zh(Mft(t)).a.vc().Kc());c.a.Ob();){for(i=ZR(c.a.Pb(),42),u=0,f=0,u=(l=ZR(i.cd(),10)).d.d,f=l.o.b+l.d.a,t.d[l.p]=0,e=l;(a=t.a[e.p])!=l;)n=ket(e,a),s=0,s=t.c==(JV(),m5t)?n.d.n.b+n.d.a.b-n.c.n.b-n.c.a.b:n.c.n.b+n.c.a.b-n.d.n.b-n.d.a.b,o=ex(t.d[e.p])+s,t.d[a.p]=o,u=r.Math.max(u,a.d.d-o),f=r.Math.max(f,o+a.o.b+a.d.a),e=a;e=l;do{t.d[e.p]=ex(t.d[e.p])+u,e=t.a[e.p]}while(e!=l);t.b[l.p]=u+f}}function rbt(t){var e,n,i,a,o,s,l,c,u,f,h;for(t.b=!1,f=tMt,l=eMt,h=tMt,c=eMt,n=t.e.a.ec().Kc();n.Ob();)for(i=(e=ZR(n.Pb(),266)).a,f=r.Math.min(f,i.c),l=r.Math.max(l,i.c+i.b),h=r.Math.min(h,i.d),c=r.Math.max(c,i.d+i.a),o=new md(e.c);o.a=(OG(a,t.c.length),ZR(t.c[a],200)).e,!((c=ubt(r,f,!1).a)>e.b&&!l)&&((l||c<=e.b)&&(l&&c>e.b?(n.d=c,mZ(n,Nlt(n,c))):(uot(n.q,s),n.c=!0),mZ(r,i-(n.s+n.r)),Znt(r,n.q.e+n.q.d,e.f),a1(e,r),t.c.length>a&&(sat((OG(a,t.c.length),ZR(t.c[a],200)),r),0==(OG(a,t.c.length),ZR(t.c[a],200)).a.c.length&&jX(t,a)),u=!0),u))}function obt(t,e,n,r){var i,a,o,s,l,c,u;if(u=mpt(t.e.Tg(),e),i=0,a=ZR(t.g,119),l=null,TT(),ZR(e,66).Oj()){for(s=0;s0?t.i:0)>e&&c>0&&(o=0,s+=c+t.i,a=r.Math.max(a,d),i+=c+t.i,c=0,d=0,n&&(++h,nz(t.n,new vq(t.s,s,t.i))),l=0),d+=u.g+(l>0?t.i:0),c=r.Math.max(c,u.f),n&&Prt(ZR(TN(t.n,h),211),u),o+=u.g+(l>0?t.i:0),++l;return a=r.Math.max(a,d),i+=c,n&&(t.r=a,t.d=i,Mit(t.j)),new bH(t.s,t.t,a,i)}function fbt(t,e,n,r,i){var a,o,s,l,c,u,f,h,d;if(lk(),UF(t,"src"),UF(n,"dest"),h=X4(t),l=X4(n),wz(0!=(4&h.i),"srcType is not an array"),wz(0!=(4&l.i),"destType is not an array"),f=h.c,o=l.c,wz(0!=(1&f.i)?f==o:0==(1&o.i),"Array types don't match"),d=t.length,c=n.length,e<0||r<0||i<0||e+i>d||r+i>c)throw um(new Cm);if(0==(1&f.i)&&h!=l)if(u=u0(t),a=u0(n),rE(t)===rE(n)&&er;)zB(a,s,u[--e]);else for(s=r+i;r0&&fut(t,e,n,r,i,!0)}function hbt(){hbt=P,wBt=R5(qx(Xle,1),STt,25,15,[nTt,1162261467,Ykt,1220703125,362797056,1977326743,Ykt,387420489,$Tt,214358881,429981696,815730721,1475789056,170859375,268435456,410338673,612220032,893871739,128e7,1801088541,113379904,148035889,191102976,244140625,308915776,387420489,481890304,594823321,729e6,887503681,Ykt,1291467969,1544804416,1838265625,60466176]),_Bt=R5(qx(Xle,1),STt,25,15,[-1,-1,31,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5])}function dbt(t,e){var n,r,i,a,o;if(o=ZR(e,136),zht(t),zht(o),null!=o.b){if(t.c=!0,null==t.b)return t.b=XK(Xle,STt,25,o.b.length,15,1),void fbt(o.b,0,t.b,0,o.b.length);for(a=XK(Xle,STt,25,t.b.length+o.b.length,15,1),n=0,r=0,i=0;n=t.b.length?(a[i++]=o.b[r++],a[i++]=o.b[r++]):r>=o.b.length?(a[i++]=t.b[n++],a[i++]=t.b[n++]):o.b[r]0&&(!(i=(!t.n&&(t.n=new bF(nae,t,1,7)),ZR(a0(t.n,0),137)).a)||xE(xE((e.a+=' "',e),i),'"'))),!t.b&&(t.b=new LD(Xie,t,4,7)),n=!(t.b.i<=1&&(!t.c&&(t.c=new LD(Xie,t,5,8)),t.c.i<=1)),e.a+=n?" [":" ",xE(e,hL(new Tx,new WP(t.b))),n&&(e.a+="]"),e.a+=bEt,n&&(e.a+="["),xE(e,hL(new Tx,new WP(t.c))),n&&(e.a+="]"),e.a)}function vbt(t,e){var n,r,i,a,o,s,l;if(t.a){if(l=null,null!=(s=t.a.ne())?e.a+=""+s:null!=(o=t.a.Dj())&&(-1!=(a=XE(o,mst(91)))?(l=o.substr(a),e.a+=""+hO(null==o?lkt:(yU(o),o),0,a)):e.a+=""+o),t.d&&0!=t.d.i){for(i=!0,e.a+="<",r=new WP(t.d);r.e!=r.i.gc();)n=ZR(fnt(r),87),i?i=!1:e.a+=rkt,vbt(n,e);e.a+=">"}null!=l&&(e.a+=""+l)}else t.e?null!=(s=t.e.zb)&&(e.a+=""+s):(e.a+="?",t.b?(e.a+=" super ",vbt(t.b,e)):t.f&&(e.a+=" extends ",vbt(t.f,e)))}function mbt(t,e,n,r){var i,a,o,s,l,c;if(a=Y7(r),!tx(uI(Ost(r,(y_t(),W0t))))&&!tx(uI(Ost(t,P0t)))||gC(ZR(Ost(t,b1t),98)))switch(Qq(s=new Clt,t),e?((c=s.n).a=e.a-t.n.a,c.b=e.b-t.n.b,Vlt(c,0,0,t.o.a,t.o.b),gut(s,Amt(s,a))):(i=q9(a),gut(s,n==(u1(),a3t)?i:P7(i))),o=ZR(Ost(r,(O_t(),gKt)),21),l=s.j,a.g){case 2:case 1:(l==(Pwt(),Mre)||l==Hre)&&o.Fc((igt(),OXt));break;case 4:case 3:(l==(Pwt(),Tre)||l==qre)&&o.Fc((igt(),OXt))}else i=q9(a),s=xmt(t,n,n==(u1(),a3t)?i:P7(i));return s}function ybt(t,e,n){var i,a,o,s,l,c,u;return r.Math.abs(e.s-e.c)u?new pG((rK(),H5t),n,e,c-u):c>0&&u>0&&(new pG((rK(),H5t),e,n,0),new pG(H5t,n,e,0))),o)}function bbt(t,e){var n,i,a,o,s;for(s=new e6(new Kh(t.f.b).a);s.b;){if(a=ZR((o=c0(s)).cd(),594),1==e){if(a.gf()!=(e7(),ane)&&a.gf()!=ene)continue}else if(a.gf()!=(e7(),nne)&&a.gf()!=rne)continue;switch(i=ZR(ZR(o.dd(),46).b,81),n=ZR(ZR(o.dd(),46).a,189).c,a.gf().g){case 2:i.g.c=t.e.a,i.g.b=r.Math.max(1,i.g.b+n);break;case 1:i.g.c=i.g.c+n,i.g.b=r.Math.max(1,i.g.b-n);break;case 4:i.g.d=t.e.b,i.g.a=r.Math.max(1,i.g.a+n);break;case 3:i.g.d=i.g.d+n,i.g.a=r.Math.max(1,i.g.a-n)}}}function xbt(t,e){var n,r,i,a,o,s,l,c,f,h,d;for(r=new Oj(dL(ddt(e).a.Kc(),new u));Kft(r);)CP(a0((!(n=ZR(wX(r),79)).b&&(n.b=new LD(Xie,n,4,7)),n.b),0),186)||(l=ist(ZR(a0((!n.c&&(n.c=new LD(Xie,n,5,8)),n.c),0),82)),jft(n)||(o=e.i+e.g/2,s=e.j+e.f/2,f=l.i+l.g/2,h=l.j+l.f/2,(d=new Sw).a=f-o,d.b=h-s,Tat(a=new KA(d.a,d.b),e.g,e.f),d.a-=a.a,d.b-=a.b,o=f-d.a,s=h-d.b,Tat(c=new KA(d.a,d.b),l.g,l.f),d.a-=c.a,d.b-=c.b,f=o+d.a,h=s+d.b,R0(i=Qpt(n,!0,!0),o),N0(i,s),P0(i,f),z0(i,h),xbt(t,l)))}function wbt(t){sT(t,new nst(iw(tw(rw(nw(new vs,tIt),"ELK SPOrE Compaction"),"ShrinkTree is a compaction algorithm that maintains the topology of a layout. The relocation of diagram elements is based on contracting a spanning tree."),new ns))),zW(t,tIt,eIt,cnt(N7t)),zW(t,tIt,nIt,cnt(D7t)),zW(t,tIt,rIt,cnt(I7t)),zW(t,tIt,iIt,cnt(L7t)),zW(t,tIt,aIt,cnt(O7t)),zW(t,tIt,dSt,P7t),zW(t,tIt,RSt,8),zW(t,tIt,oIt,cnt(z7t)),zW(t,tIt,sIt,cnt(A7t)),zW(t,tIt,lIt,cnt(S7t)),zW(t,tIt,uLt,(TL(),!1))}function _bt(t,e,n){var r,i,a,o,s,l,c,u;return r=t.a.o==(Nq(),w5t)?tMt:eMt,!(s=Nmt(t,new TA(e,n))).a&&s.c?(jz(t.d,s),r):s.a?(i=s.a.c,l=s.a.d,n?(c=t.a.c==(JV(),y5t)?l:i,a=t.a.c==y5t?i:l,o=t.a.g[a.i.p],u=ex(t.a.p[o.p])+ex(t.a.d[a.i.p])+a.n.b+a.a.b-ex(t.a.d[c.i.p])-c.n.b-c.a.b):(c=t.a.c==(JV(),m5t)?l:i,a=t.a.c==m5t?i:l,u=ex(t.a.p[t.a.g[a.i.p].p])+ex(t.a.d[a.i.p])+a.n.b+a.a.b-ex(t.a.d[c.i.p])-c.n.b-c.a.b),t.a.n[t.a.g[i.i.p].p]=(TL(),!0),t.a.n[t.a.g[l.i.p].p]=!0,u):r}function kbt(t,e,n){var r,i,a,o,s,l,c;if(Rpt(t.e,e))TT(),_ft((s=ZR(e,66).Oj()?new aN(e,t):new XS(e,t)).c,s.b),TP(s,ZR(n,14));else{for(c=mpt(t.e.Tg(),e),r=ZR(t.g,119),a=0;at.o.b)return!1;if(n=r9(t,Tre),e.d+e.a+(n.gc()-1)*i>t.o.b)return!1}return!0}function Ebt(t,e){var n,r,i,a,o,s,l,c,u,f,h,d,p;if(o=t.e,l=e.e,0==o)return e;if(0==l)return t;if((a=t.d)+(s=e.d)==2)return n=qG(t.a[0],cMt),r=qG(e.a[0],cMt),o==l?(p=$N(u=e9(n,r)),0==(d=$N(Wj(u,32)))?new pK(o,p):new CF(o,2,R5(qx(Xle,1),STt,25,15,[p,d]))):Yet(o<0?t9(r,n):t9(n,r));if(o==l)h=o,f=a>=s?$K(t.a,a,e.a,s):$K(e.a,s,t.a,a);else{if(0==(i=a!=s?a>s?1:-1:p6(t.a,e.a,a)))return ggt(),bBt;1==i?(h=o,f=qX(t.a,a,e.a,s)):(h=l,f=qX(e.a,s,t.a,a))}return AW(c=new CF(h,f.length,f)),c}function Cbt(t,e,n,i,a,o,s){var l,c,u,f,h,d,p;return h=tx(uI(Ost(e,(y_t(),Y0t)))),d=null,o==(u1(),i3t)&&i.c.i==n?d=i.c:o==a3t&&i.d.i==n&&(d=i.d),(u=s)&&h&&!d?(nz(u.e,i),p=r.Math.max(ex(fI(Ost(u.d,k0t))),ex(fI(Ost(i,k0t)))),d4(u.d,k0t,p)):(Pwt(),f=Vre,d?f=d.j:gC(ZR(Ost(n,b1t),98))&&(f=o==i3t?qre:Tre),c=function(t,e,n,r,i,a){var o,s,l,c,u,f;o=null,c=r==(u1(),i3t)?a.c:a.d,l=Y7(e),c.i==n?(o=ZR(UB(t.b,c),10))||(o=t_t(c,ZR(Ost(n,(y_t(),b1t)),98),i,function(t){var e,n,r,i,a,o,s,l,c,u,f,h;for(i=tx(uI(Ost(s=t.i,(y_t(),L0t)))),u=0,r=0,c=new md(t.g);c.a=t.b[i+1])i+=2;else{if(!(n=iMt?mE(n,W7(r)):jB(n,r&dTt),a=new tq(10,null,0),function(t,e,n){rF(n,t.a.c.length),K$(t.a,n,e)}(t.a,a,o-1)):(a.bm().length,mE(n=new Px,a.bm())),0==e.e?(r=e._l())>=iMt?mE(n,W7(r)):jB(n,r&dTt):mE(n,e.bm()),ZR(a,521).b=n.a):Wm(t.a,e);else for(i=0;i0&&w8(i,-6)>=0){if(w8(i,0)>=0){for(a=n+$N(i),s=u-1;s>=a;s--)f[s+1]=f[s];return f[++a]=46,l&&(f[--n]=45),Xtt(f,n,u-n+1)}for(o=2;IT(o,e9(cJ(i),1));o++)f[--n]=48;return f[--n]=46,f[--n]=48,l&&(f[--n]=45),Xtt(f,n,u-n)}p=n+1,r=u,h=new Ox,l&&(h.a+="-"),r-p>=1?(FB(h,f[n]),h.a+=".",h.a+=Xtt(f,n+1,u-n-1)):h.a+=Xtt(f,n,u-n);return h.a+="E",w8(i,0)>0&&(h.a+="+"),h.a+=""+Hj(i),h.a}(z3(t.f),lq(t.e)),t.g):(i=b_t((!t.c&&(t.c=J6(t.f)),t.c),0),0==t.e?i:(e=(!t.c&&(t.c=J6(t.f)),t.c).e<0?2:1,n=i.length,r=-t.e+n-e,(a=new Lx).a+=""+i,t.e>0&&r>=-6?r>=0?Wq(a,n-lq(t.e),String.fromCharCode(46)):(a.a=hO(a.a,0,e-1)+"0."+hE(a.a,e-1),Wq(a,e+1,Xtt(sBt,0,-lq(r)-1))):(n-e>=1&&(Wq(a,e,String.fromCharCode(46)),++n),Wq(a,n,String.fromCharCode(69)),r>0&&Wq(a,++n,String.fromCharCode(43)),Wq(a,++n,""+Hj(z3(r)))),t.g=a.a,t.g))}function Ubt(t,e,n){var i,a,o;if((a=ZR(Ost(e,(y_t(),qQt)),275))!=(llt(),wXt)){if(ast(n,"Horizontal Compaction",1),t.a=e,i=new gft(((o=new gJ).d=e,o.c=ZR(Ost(o.d,v0t),218),function(t){var e,n,r,i,a,o,s;for(e=!1,n=0,i=new md(t.d.b);i.a0&&Z5(l,!0,(e7(),rne)),o.k==(plt(),UGt)&&KU(l),RU(t.f,o,e)):((c=(r=ZR(fV(o9(o)),17)).c.i)==o&&(c=r.d.i),f=new bS(c,xD(gP(o.n),c.n)),RU(t.b,o,f))}(o),Hgt(o),o.a)),function(t,e){t.g=e}(i,t.b),1===ZR(Ost(e,VQt),422).g)Wx(i,new o2(t.a));else Wx(i,(XH(),EUt));switch(a.g){case 1:Bht(i);break;case 2:Bht(iwt(i,(e7(),rne)));break;case 3:Bht(Gx(iwt(Bht(i),(e7(),rne)),new vi));break;case 4:Bht(Gx(iwt(Bht(i),(e7(),rne)),new qp(o)));break;case 5:Bht(function(t,e){return t.b=e,t}(i,LYt))}iwt(i,(e7(),nne)),i.e=!0,function(t){var e,n,i,a;Ak(uH(new AN(null,new DG(t.a.b,16)),new xi),new wi),function(t){var e,n,r,i,a;for(r=new e6(new Kh(t.b).a);r.b;)e=ZR((n=c0(r)).cd(),10),a=ZR(ZR(n.dd(),46).a,10),i=ZR(ZR(n.dd(),46).b,8),bD(PE(e.n),bD(gP(a.n),i))}(t),Ak(uH(new AN(null,new DG(t.a.b,16)),new _i),new ki),t.c==(v9(),pne)&&(Ak(uH($J(new AN(null,new DG(new Zh(t.f),1)),new Ti),new Mi),new $p(t)),Ak(uH(fH($J($J(new AN(null,new DG(t.d.b,16)),new Ai),new Si),new Ei),new Ci),new Kp(t)));for(a=new KA(tMt,tMt),e=new KA(eMt,eMt),i=new md(t.a.b);i.a1&&(c=u.mg(c,t.a,l));return 1==c.c.length?ZR(TN(c,c.c.length-1),220):2==c.c.length?function(t,e,n,i){var a,o,s,l,c,u,f,h,d,p,g,v,m,y,b;return o=t.f,h=e.f,s=o==(Ndt(),Z8t)||o==Q8t,l=o==J8t||o==t7t,d=h==J8t||h==t7t,c=o==J8t||o==Z8t,p=h==J8t||h==Z8t,!s||h!=Z8t&&h!=Q8t?l&&d?t.f==t7t?t:e:c&&p?(o==J8t?(f=t,u=e):(f=e,u=t),g=n.j+n.f,v=f.e+i.f,m=r.Math.max(g,v)-r.Math.min(n.j,f.e),a=(f.d+i.g-n.i)*m,y=n.i+n.g,b=u.d+i.g,a<=(r.Math.max(y,b)-r.Math.min(n.i,u.d))*(u.e+i.f-n.j)?t.f==J8t?t:e:t.f==Z8t?t:e):t:t.f==Q8t?t:e}((OG(0,c.c.length),ZR(c.c[0],220)),(OG(1,c.c.length),ZR(c.c[1],220)),s,o):null}function Vbt(t){var e,n,i,a,o,s;for($Q(t.a,new Qt),n=new md(t.a);n.a=r.Math.abs(i.b)?(i.b=0,o.d+o.a>s.d&&o.ds.c&&o.c0){if(e=new KS(t.i,t.g),a=(n=t.i)<100?null:new kw(n),t.ij())for(r=0;r0){for(s=t.g,c=t.i,RX(t),a=c<100?null:new kw(c),r=0;r4){if(!t.wj(e))return!1;if(t.rk()){if(s=(n=(r=ZR(e,49)).Ug())==t.e&&(t.Dk()?r.Og(r.Vg(),t.zk())==t.Ak():-1-r.Vg()==t.aj()),t.Ek()&&!s&&!n&&r.Zg())for(i=0;i0)if(e=new e3(t.Gi()),a=(n=u)<100?null:new kw(n),DI(t,n,e.g),i=1==n?t.Zi(4,a0(e,0),null,0,l):t.Zi(6,e,null,-1,l),t.bj()){for(r=new WP(e);r.e!=r.i.gc();)a=t.dj(fnt(r),a);a?(a.Ei(i),a.Fi()):t.$i(i)}else a?(a.Ei(i),a.Fi()):t.$i(i);else DI(t,t.Vi(),t.Wi()),t.$i(t.Zi(6,(YH(),SBt),null,-1,l));else if(t.bj())if((u=t.Vi())>0){for(s=t.Wi(),c=u,DI(t,u,s),a=c<100?null:new kw(c),r=0;r2*a?(u=new n0(f),c=zN(o)/RN(o),l=n_t(u,e,new Ay,n,r,i,c),bD(PE(u.e),l),f.c=XK(Yjt,akt,1,0,5,1),a=0,f.c[f.c.length]=u,f.c[f.c.length]=o,a=zN(u)*RN(u)+zN(o)*RN(o)):(f.c[f.c.length]=o,a+=zN(o)*RN(o));return f}(s,e,f.a,f.b,(c=i,yU(a),c));break;case 1:p=function(t,e,n,r,i){var a,o,s,l,c,u,f,h,d;for(YH(),JC(t,new Ws),o=tz(t),d=new rm,h=new rm,s=null,l=0;0!=o.b;)a=ZR(0==o.b?null:(AO(0!=o.b),XQ(o,o.a.a)),157),!s||zN(s)*RN(s)/21&&(l>zN(s)*RN(s)/2||0==o.b)&&(f=new n0(h),u=zN(s)/RN(s),c=n_t(f,e,new Ay,n,r,i,u),bD(PE(f.e),c),s=f,d.c[d.c.length]=f,l=0,h.c=XK(Yjt,akt,1,0,5,1)));return A5(d,h),d}(s,e,f.a,f.b,(u=i,yU(a),u));break;default:p=function(t,e,n,r,i){var a,o,s,l,c,u,f,h,d;s=XK(Qle,oMt,25,t.c.length,15,1),h=new uF(new Ys),$it(h,t),c=0,d=new rm;for(;0!=h.b.c.length;)if(o=ZR(0==h.b.c.length?null:TN(h.b,0),157),c>1&&zN(o)*RN(o)/2>s[0]){for(a=0;as[a];)++a;f=new n0(new PG(d,0,a+1)),u=zN(o)/RN(o),l=n_t(f,e,new Ay,n,r,i,u),bD(PE(f.e),l),JK(xst(h,f)),$it(h,new PG(d,a+1,d.c.length)),d.c=XK(Yjt,akt,1,0,5,1),c=0,tj(s,s.length,0)}else null!=(0==h.b.c.length?null:TN(h.b,0))&&n2(h,0),c>0&&(s[c]=s[c-1]),s[c]+=zN(o)*RN(o),++c,d.c[d.c.length]=o;return d}(s,e,f.a,f.b,(l=i,yU(a),l))}Nwt(t,(d=n_t(new n0(p),e,n,f.a,f.b,i,(yU(a),a))).a,d.b,!1,!0)}function Jbt(t,e){var n,i,a,o,s,l,c,u,f,h,d,p,g,v,m;for(a=0,o=0,c=new md(t.a);c.a.5?m-=2*o*(p-.5):p<.5&&(m+=2*a*(.5-p)),m<(i=s.d.b)&&(m=i),g=s.d.c,m>v.a-g-u&&(m=v.a-g-u),s.n.a=e+m}}function Qbt(t,e){var n,r,i,a,o,s,l,c,u;return c="",0==e.length?t.de(uTt,lTt,-1,-1):(FD((u=Xst(e)).substr(0,3),"at ")&&(u=u.substr(3)),-1==(o=(u=u.replace(/\[.*?\]/g,"")).indexOf("("))?-1==(o=u.indexOf("@"))?(c=u,u=""):(c=Xst(u.substr(o+1)),u=Xst(u.substr(0,o))):(n=u.indexOf(")",o),c=u.substr(o+1,n-(o+1)),u=Xst(u.substr(0,o))),-1!=(o=XE(u,mst(46)))&&(u=u.substr(o+1)),(0==u.length||FD(u,"Anonymous function"))&&(u=lTt),s=IL(c,mst(58)),i=VD(c,mst(58),s-1),l=-1,r=-1,a=uTt,-1!=s&&-1!=i&&(a=c.substr(0,i),l=fO(c.substr(i+1,s-(i+1))),r=fO(c.substr(s+1))),t.de(a,u,l,r))}function txt(t,e,n){var r,i,a,o,s,l;if(0==e.l&&0==e.m&&0==e.h)throw um(new Ub("divide by zero"));if(0==t.l&&0==t.m&&0==t.h)return n&&(PFt=iP(0,0,0)),iP(0,0,0);if(e.h==GTt&&0==e.m&&0==e.l)return function(t,e){return t.h==GTt&&0==t.m&&0==t.l?(e&&(PFt=iP(0,0,0)),JE((IJ(),IFt))):(e&&(PFt=iP(t.l,t.m,t.h)),iP(0,0,0))}(t,n);if(l=!1,e.h>>19!=0&&(e=u4(e),l=!l),o=function(t){var e,n,r;return 0!=((n=t.l)&n-1)||0!=((r=t.m)&r-1)||0!=((e=t.h)&e-1)||0==e&&0==r&&0==n?-1:0==e&&0==r&&0!=n?b1(n):0==e&&0!=r&&0==n?b1(r)+22:0!=e&&0==r&&0==n?b1(e)+44:-1}(e),a=!1,i=!1,r=!1,t.h==GTt&&0==t.m&&0==t.l){if(i=!0,a=!0,-1!=o)return s=nht(t,o),l&&L4(s),n&&(PFt=iP(0,0,0)),s;t=JE((IJ(),LFt)),r=!0,l=!l}else t.h>>19!=0&&(a=!0,t=u4(t),r=!0,l=!l);return-1!=o?F4(t,o,l,a,n):mat(t,e)<0?(n&&(PFt=a?u4(t):iP(t.l,t.m,t.h)),iP(0,0,0)):function(t,e,n,r,i,a){var o,s,l,c,u,f;for(o=vlt(e,l=k4(e)-k4(t)),s=iP(0,0,0);l>=0&&(!Cit(t,o)||(l<22?s.l|=1<>>1,o.m=c>>>1|(1&u)<<21,o.l=f>>>1|(1&c)<<21,--l;return n&&L4(s),a&&(r?(PFt=u4(t),i&&(PFt=x5(PFt,(IJ(),IFt)))):PFt=iP(t.l,t.m,t.h)),s}(r?t:iP(t.l,t.m,t.h),e,l,a,i,n)}function ext(t,e){var n,r,i,a,o,s,l,c,u,f,h,d,p;if(t.e&&t.c.ce.f||e.g>t.f)){for(n=0,r=0,o=t.w.a.ec().Kc();o.Ob();)i=ZR(o.Pb(),11),X6(O4(R5(qx(V9t,1),Akt,8,0,[i.i.n,i.n,i.a])).b,e.g,e.f)&&++n;for(s=t.r.a.ec().Kc();s.Ob();)i=ZR(s.Pb(),11),X6(O4(R5(qx(V9t,1),Akt,8,0,[i.i.n,i.n,i.a])).b,e.g,e.f)&&--n;for(l=e.w.a.ec().Kc();l.Ob();)i=ZR(l.Pb(),11),X6(O4(R5(qx(V9t,1),Akt,8,0,[i.i.n,i.n,i.a])).b,t.g,t.f)&&++r;for(a=e.r.a.ec().Kc();a.Ob();)i=ZR(a.Pb(),11),X6(O4(R5(qx(V9t,1),Akt,8,0,[i.i.n,i.n,i.a])).b,t.g,t.f)&&--r;n=0)return i=function(t,e){var n;if(CP(n=Qdt(t.Tg(),e),99))return ZR(n,18);throw um(new Kb(wDt+e+"' is not a valid reference"))}(t,e.substr(1,a-1)),function(t,e,n){var r,i,a,o,s,l,c,u,f,h;for(l=new rm,f=e.length,o=P4(n),c=0;c=0?t._g(c,!1,!0):nft(t,n,!1),58).Kc();a.Ob();){for(i=ZR(a.Pb(),56),u=0;u=0){r=ZR(TX(t,WQ(t,e.substr(1,n-1)),!1),58),l=0;try{l=amt(e.substr(n+1),nTt,Q_t)}catch(Wle){throw CP(Wle=_5(Wle),127)?um(new bJ(Wle)):um(Wle)}if(l=0)return n;switch(TU(SJ(t,n))){case 2:if(FD("",W8(t,n.Hj()).ne())){if(l=Iht(t,e,s=eH(SJ(t,n)),tH(SJ(t,n))))return l;for(o=0,c=(i=Ivt(t,e)).gc();o1,u=new WX(d.b);QC(u.a)||QC(u.b);)h=(c=ZR(QC(u.a)?HG(u.a):HG(u.b),17)).c==d?c.d:c.c,r.Math.abs(O4(R5(qx(V9t,1),Akt,8,0,[h.i.n,h.n,h.a])).b-s.b)>1&&Tpt(t,c,s,o,d)}}function lxt(){lxt=P,Ise=(Fw(),Ose).b,zse=ZR(a0(oV(Ose.b),0),34),Dse=ZR(a0(oV(Ose.b),1),34),Rse=ZR(a0(oV(Ose.b),2),34),Wse=Ose.bb,ZR(a0(oV(Ose.bb),0),34),ZR(a0(oV(Ose.bb),1),34),$se=Ose.fb,Xse=ZR(a0(oV(Ose.fb),0),34),ZR(a0(oV(Ose.fb),1),34),ZR(a0(oV(Ose.fb),2),18),Zse=Ose.qb,tle=ZR(a0(oV(Ose.qb),0),34),ZR(a0(oV(Ose.qb),1),18),ZR(a0(oV(Ose.qb),2),18),Jse=ZR(a0(oV(Ose.qb),3),34),Qse=ZR(a0(oV(Ose.qb),4),34),nle=ZR(a0(oV(Ose.qb),6),34),ele=ZR(a0(oV(Ose.qb),5),18),Nse=Ose.j,jse=Ose.k,Fse=Ose.q,Bse=Ose.w,Use=Ose.B,Hse=Ose.A,Vse=Ose.C,qse=Ose.D,Gse=Ose._,Yse=Ose.cb,Kse=Ose.hb}function cxt(t,e){var n,r,i,a;a=t.F,null==e?(t.F=null,_6(t,null)):(t.F=(yU(e),e),-1!=(r=XE(e,mst(60)))?(i=e.substr(0,r),-1==XE(e,mst(46))&&!FD(i,X_t)&&!FD(i,Vzt)&&!FD(i,qzt)&&!FD(i,Gzt)&&!FD(i,Wzt)&&!FD(i,Yzt)&&!FD(i,$zt)&&!FD(i,Xzt)&&(i=Kzt),-1!=(n=IL(e,mst(62)))&&(i+=""+e.substr(n+1)),_6(t,i)):(i=e,-1==XE(e,mst(46))&&(-1!=(r=XE(e,mst(91)))&&(i=e.substr(0,r)),FD(i,X_t)||FD(i,Vzt)||FD(i,qzt)||FD(i,Gzt)||FD(i,Wzt)||FD(i,Yzt)||FD(i,$zt)||FD(i,Xzt)?i=e:(i=Kzt,-1!=r&&(i+=""+e.substr(r)))),_6(t,i),i==e&&(t.F=t.D))),0!=(4&t.Db)&&0==(1&t.Db)&&j3(t,new mF(t,1,5,a,e))}function uxt(t,e){var n;if(null==e||FD(e,lkt))return null;if(0==e.length&&t.k!=(dct(),I9t))return null;switch(t.k.g){case 1:return bet(e,kIt)?(TL(),zFt):bet(e,TIt)?(TL(),RFt):null;case 2:try{return g7(amt(e,nTt,Q_t))}catch(Wle){if(CP(Wle=_5(Wle),127))return null;throw um(Wle)}case 4:try{return mlt(e)}catch(Wle){if(CP(Wle=_5(Wle),127))return null;throw um(Wle)}case 3:return e;case 5:return B6(t),Gut(t,e);case 6:return B6(t),function(t,e,n){var r,i,a,o,s,l,c;for(c=new aR(r=ZR(e.e&&e.e(),9),ZR(nD(r,r.length),9),0),o=0,s=(a=Ovt(n,"[\\[\\]\\s,]+")).length;o-2;default:return!1}switch(e=t.gj(),t.p){case 0:return null!=e&&tx(uI(e))!=uE(t.k,0);case 1:return null!=e&&ZR(e,217).a!=$N(t.k)<<24>>24;case 2:return null!=e&&ZR(e,172).a!=($N(t.k)&dTt);case 6:return null!=e&&uE(ZR(e,162).a,t.k);case 5:return null!=e&&ZR(e,19).a!=$N(t.k);case 7:return null!=e&&ZR(e,184).a!=$N(t.k)<<16>>16;case 3:return null!=e&&ex(fI(e))!=t.j;case 4:return null!=e&&ZR(e,155).a!=t.j;default:return null==e?null!=t.n:!K8(e,t.n)}}function hxt(t,e,n){var r,i,a,o;return t.Fk()&&t.Ek()&&rE(o=sF(t,ZR(n,56)))!==rE(n)?(t.Oi(e),t.Ui(e,OZ(t,0,o)),t.rk()&&(i=ZR(n,49),a=t.Dk()?t.Bk()?i.ih(t.b,ert(ZR(CQ(CV(t.b),t.aj()),18)).n,ZR(CQ(CV(t.b),t.aj()).Yj(),26).Bj(),null):i.ih(t.b,ett(i.Tg(),ert(ZR(CQ(CV(t.b),t.aj()),18))),null,null):i.ih(t.b,-1-t.aj(),null,null),!ZR(o,49).eh()&&(r=ZR(o,49),a=t.Dk()?t.Bk()?r.gh(t.b,ert(ZR(CQ(CV(t.b),t.aj()),18)).n,ZR(CQ(CV(t.b),t.aj()).Yj(),26).Bj(),a):r.gh(t.b,ett(r.Tg(),ert(ZR(CQ(CV(t.b),t.aj()),18))),null,a):r.gh(t.b,-1-t.aj(),null,a)),a&&a.Fi()),vC(t.b)&&t.$i(t.Zi(9,n,o,e,!1)),o):n}function dxt(t,e,n){var i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w;for(f=ex(fI(Ost(t,(y_t(),B1t)))),i=ex(fI(Ost(t,t2t))),d4(d=new Js,B1t,f+i),y=(u=e).d,v=u.c.i,b=u.d.i,m=nC(v.c),x=nC(b.c),a=new rm,h=m;h<=x;h++)Lh(l=new art(t),(plt(),VGt)),d4(l,(O_t(),LKt),u),d4(l,b1t,(jot(),cre)),d4(l,H1t,d),p=ZR(TN(t.b,h),29),h==m?Vit(l,p.a.c.length-n,p):Jq(l,p),(w=ex(fI(Ost(u,k0t))))<0&&d4(u,k0t,w=0),l.o.b=w,g=r.Math.floor(w/2),gut(s=new Clt,(Pwt(),qre)),Qq(s,l),s.n.b=g,gut(c=new Clt,Tre),Qq(c,l),c.n.b=g,Kq(u,s),l5(o=new _V,u),d4(o,R0t,null),Zq(o,c),Kq(o,y),kat(l,u,o),a.c[a.c.length]=o,u=o;return a}function pxt(t,e){var n,r,i,a,o,s,l,c,u,f,h,d,p,g,v;for(s=ZR(Ilt(t,(Pwt(),qre)).Kc().Pb(),11).e,f=ZR(Ilt(t,Tre).Kc().Pb(),11).g,o=s.c.length,v=zG(ZR(TN(t.j,0),11));o-- >0;){for(OG(0,s.c.length),d=ZR(s.c[0],17),OG(0,f.c.length),i=uJ((r=ZR(f.c[0],17)).d.e,r,0),nY(d,r.d,i),Zq(r,null),Kq(r,null),h=d.a,e&&jz(h,new fC(v)),n=tnt(r.a,0);n.b!=n.d.c;)jz(h,new fC(ZR(EY(n),8)));for(g=d.b,u=new md(r.b);u.a0&&(s=r.Math.max(s,Y2(t.C.b+i.d.b,a))),f=i,h=a,d=o;t.C&&t.C.c>0&&(p=d+t.C.c,u&&(p+=f.d.c),s=r.Math.max(s,(YC(),l1(EAt),r.Math.abs(h-1)<=EAt||1==h||isNaN(h)&&isNaN(1)?0:p/(1-h)))),n.n.b=0,n.a.a=s}function vxt(t,e){var n,i,a,o,s,l,c,u,f,h,d,p;if(n=ZR(qU(t.b,e),124),(c=ZR(ZR(FX(t.r,e),21),84)).dc())return n.n.d=0,void(n.n.a=0);for(u=t.u.Hc((Put(),yre)),s=0,t.A.Hc((Ltt(),nie))&&Kgt(t,e),l=c.Kc(),f=null,d=0,h=0;l.Ob();)o=ex(fI((i=ZR(l.Pb(),111)).b.We((YL(),KHt)))),a=i.b.rf().b,f?(p=h+f.d.a+t.w+i.d.d,s=r.Math.max(s,(YC(),l1(EAt),r.Math.abs(d-o)<=EAt||d==o||isNaN(d)&&isNaN(o)?0:p/(o-d)))):t.C&&t.C.d>0&&(s=r.Math.max(s,Y2(t.C.d+i.d.d,o))),f=i,d=o,h=a;t.C&&t.C.a>0&&(p=h+t.C.a,u&&(p+=f.d.a),s=r.Math.max(s,(YC(),l1(EAt),r.Math.abs(d-1)<=EAt||1==d||isNaN(d)&&isNaN(1)?0:p/(1-d)))),n.n.d=0,n.a.b=s}function mxt(t,e,n){var r,i,a,o,s,l;for(this.g=t,s=e.d.length,l=n.d.length,this.d=XK(WGt,kEt,10,s+l,0,1),o=0;o0?s0(this,this.f/this.a):null!=DP(e.g,e.d[0]).a&&null!=DP(n.g,n.d[0]).a?s0(this,(ex(DP(e.g,e.d[0]).a)+ex(DP(n.g,n.d[0]).a))/2):null!=DP(e.g,e.d[0]).a?s0(this,DP(e.g,e.d[0]).a):null!=DP(n.g,n.d[0]).a&&s0(this,DP(n.g,n.d[0]).a)}function yxt(t,e){var n,r,i,a,o,s,l,c,u;for(t.a=new HB(function(t){var e;return new aR(e=ZR(t.e&&t.e(),9),ZR(iB(e,e.length),9),e.length)}(une)),r=new md(e.a);r.a=1&&(v-o>0&&f>=0?(l.n.a+=g,l.n.b+=a*o):v-o<0&&u>=0&&(l.n.a+=g*v,l.n.b+=a));t.o.a=e.a,t.o.b=e.b,d4(t,(y_t(),r1t),(Ltt(),new aR(r=ZR(Lw(die),9),ZR(nD(r,r.length),9),0)))}function wxt(t){var e,n,r,i,a,o,s,l,c,u;for(r=new rm,o=new md(t.e.a);o.a1)for(g=XK(Xle,STt,25,t.b.b.c.length,15,1),f=0,u=new md(t.b.b);u.a=s&&i<=l)s<=i&&a<=l?(n[u++]=i,n[u++]=a,r+=2):s<=i?(n[u++]=i,n[u++]=l,t.b[r]=l+1,o+=2):a<=l?(n[u++]=s,n[u++]=a,r+=2):(n[u++]=s,n[u++]=l,t.b[r]=l+1);else{if(!(leTt)&&l<10);Zx(t.c,new _e),Txt(t),function(t){awt(t,(e7(),nne)),t.d=!0}(t.c),function(t){var e,n,i,a,o,s,l,c;for(o=new md(t.a.b);o.a=2){for(o=ZR(EY(l=tnt(n,0)),8),s=ZR(EY(l),8);s.a0&&nz(t.p,h),nz(t.o,h);g=c+(e-=i),f+=e*t.e,K$(t.a,l,g7(g)),K$(t.b,l,f),t.j=r.Math.max(t.j,g),t.k=r.Math.max(t.k,f),t.d+=e,e+=m}}(t),t.q=ZR(Ost(e,(y_t(),V0t)),260),h=ZR(Ost(t.g,H0t),19).a,o=new ur,t.q.g){case 2:case 1:default:Ibt(t,o);break;case 3:for(t.q=(Udt(),W2t),Ibt(t,o),c=0,l=new md(t.a);l.at.j&&(t.q=B2t,Ibt(t,o));break;case 4:for(t.q=(Udt(),W2t),Ibt(t,o),f=0,a=new md(t.b);a.at.k&&(t.q=V2t,Ibt(t,o));break;case 6:Ibt(t,new Lp(lq(r.Math.ceil(t.f.length*h/100))));break;case 5:Ibt(t,new Op(lq(r.Math.ceil(t.d*h/100))))}!function(t,e){var n,r,i,a,o,s;for(i=new rm,n=0;n<=t.i;n++)(r=new VB(e)).p=t.i-n,i.c[i.c.length]=r;for(s=new md(t.o);s.a=n}(this.k)}function Oxt(t,e){var n,r,i,a,o,s,l,c,f;for(s=!0,i=0,l=t.f[e.p],c=e.o.b+t.n,n=t.c[e.p][2],K$(t.a,l,g7(ZR(TN(t.a,l),19).a-1+n)),K$(t.b,l,ex(fI(TN(t.b,l)))-c+n*t.e),++l>=t.i?(++t.i,nz(t.a,g7(1)),nz(t.b,c)):(r=t.c[e.p][1],K$(t.a,l,g7(ZR(TN(t.a,l),19).a+1-r)),K$(t.b,l,ex(fI(TN(t.b,l)))+c-r*t.e)),(t.q==(Udt(),B2t)&&(ZR(TN(t.a,l),19).a>t.j||ZR(TN(t.a,l-1),19).a>t.j)||t.q==V2t&&(ex(fI(TN(t.b,l)))>t.k||ex(fI(TN(t.b,l-1)))>t.k))&&(s=!1),a=new Oj(dL(s9(e).a.Kc(),new u));Kft(a);)o=ZR(wX(a),17).c.i,t.f[o.p]==l&&(i+=ZR((f=Oxt(t,o)).a,19).a,s=s&&tx(uI(f.b)));return t.f[e.p]=l,new bS(g7(i+=t.c[e.p][0]),(TL(),!!s))}function Ixt(t,e,n,i,a){var o,s,l,c,u,f,h,d,p,g,v,m,y;for(h=new im,s=new rm,kut(t,n,t.d.fg(),s,h),kut(t,i,t.d.gg(),s,h),t.b=.2*(v=vht($J(new AN(null,new DG(s,16)),new So)),m=vht($J(new AN(null,new DG(s,16)),new Eo)),r.Math.min(v,m)),o=0,l=0;l=2&&(y=zdt(s,!0,d),!t.e&&(t.e=new Rg(t)),pet(t.e,y,s,t.b)),Vot(s,d),function(t){var e,n,i,a,o,s,l,c,u;for(c=new rm,s=new rm,o=new md(t);o.a-1){for(a=new md(s);a.a0||(Bh(l,r.Math.min(l.o,i.o-1)),Fh(l,l.i-1),0==l.i&&(s.c[s.c.length]=l))}}(s),p=-1,f=new md(s);f.an))}(t)&&(r=(rE(Ost(t,A0t))===rE(Dne)?ZR(Ost(t,t0t),292):ZR(Ost(t,e0t),292))==(i5(),jXt)?(D_t(),tYt):(D_t(),pYt),lN(e,(Ist(),rGt),r));switch(ZR(Ost(t,l2t),377).g){case 1:lN(e,(Ist(),rGt),(D_t(),hYt));break;case 2:xj(lN(lN(e,(Ist(),nGt),(D_t(),hWt)),rGt,dWt),iGt,pWt)}return rE(Ost(t,KQt))!==rE((w4(),K2t))&&lN(e,(Ist(),nGt),(D_t(),dYt)),e}(e)),d4(e,UKt,ext(t.a,e))}function Rxt(t,e){var n,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b;for(u=tMt,f=tMt,l=eMt,c=eMt,d=new md(e.i);d.a=s&&i<=l)s<=i&&a<=l?r+=2:s<=i?(t.b[r]=l+1,o+=2):a<=l?(n[u++]=i,n[u++]=s-1,r+=2):(n[u++]=i,n[u++]=s-1,t.b[r]=l+1,o+=2);else{if(!(l0?1:0;a.a[i]!=n;)a=a.a[i],i=t.a.ue(n.d,a.d)>0?1:0;a.a[i]=r,r.b=n.b,r.a[0]=n.a[0],r.a[1]=n.a[1],n.a[0]=null,n.a[1]=null}(t,l,o,u=new tZ(f.d,f.e)),h==o&&(h=u)),h.a[h.a[1]==f?1:0]=f.a[f.a[0]?0:1],--t.c),t.b=l.a[1],t.b&&(t.b.b=!1),n.b}function Vxt(t,e,n){var i,a,o,s,l,c,u,f,h,d;if(n)for(i=-1,f=new JW(e,0);f.b0&&0==n.c&&(!e&&(e=new rm),e.c[e.c.length]=n);if(e)for(;0!=e.c.length;){if((n=ZR(jX(e,0),233)).b&&n.b.c.length>0)for(!n.b&&(n.b=new rm),a=new md(n.b);a.auJ(t,n,0))return new bS(i,n)}else if(ex(DP(i.g,i.d[0]).a)>ex(DP(n.g,n.d[0]).a))return new bS(i,n);for(s=(!n.e&&(n.e=new rm),n.e).Kc();s.Ob();)!(o=ZR(s.Pb(),233)).b&&(o.b=new rm),rG(0,(l=o.b).c.length),qT(l.c,0,n),o.c==l.c.length&&(e.c[e.c.length]=o)}return null}function Gxt(t,e){var n,r,i,a,o,s;if(null==t)return lkt;if(null!=e.a.zc(t,e))return"[...]";for(n=new J3(rkt,"[","]"),a=0,o=(i=t).length;a=14&&s<=16?CP(r,177)?HX(n,cut(ZR(r,177))):CP(r,190)?HX(n,Fot(ZR(r,190))):CP(r,195)?HX(n,klt(ZR(r,195))):CP(r,2012)?HX(n,Bot(ZR(r,2012))):CP(r,48)?HX(n,lut(ZR(r,48))):CP(r,364)?HX(n,Out(ZR(r,364))):CP(r,832)?HX(n,sut(ZR(r,832))):CP(r,104)&&HX(n,out(ZR(r,104))):e.a._b(r)?(n.a?xE(n.a,n.b):n.a=new AL(n.d),yE(n.a,"[...]")):HX(n,Gxt(u0(r),new wN(e))):HX(n,null==r?lkt:E9(r));return n.a?0==n.e.length?n.a.a:n.a.a+""+n.e:n.c}function Wxt(t,e,n,i){var a,o,s,l,c,u,f,h,d,p,g,v;for(p=Flt(Qpt(e,!1,!1)),i&&(p=W4(p)),v=ex(fI(kht(e,(dnt(),DVt)))),AO(0!=p.b),d=ZR(p.a.a.c,8),u=ZR(_nt(p,1),8),p.b>2?(A5(c=new rm,new PG(p,1,p.b)),l5(g=new rht(__t(c,v+t.a)),e),n.c[n.c.length]=g):g=ZR(UB(t.b,i?Fst(e):Hst(e)),266),s=Fst(e),i&&(s=Hst(e)),o=function(t,e){var n,i,a;return a=vSt,Ent(),i=vVt,a=r.Math.abs(t.b),(n=r.Math.abs(e.f-t.b))>16==-10?n=ZR(t.Cb,284).nk(e,n):t.Db>>16==-15&&(!e&&(N_t(),e=Eoe),!s&&(N_t(),s=Eoe),t.Cb.nh()&&(o=new xJ(t.Cb,1,13,s,e,jnt(EJ(ZR(t.Cb,59)),t),!1),n?n.Ei(o):n=o));else if(CP(t.Cb,88))t.Db>>16==-23&&(CP(e,88)||(N_t(),e=Loe),CP(s,88)||(N_t(),s=Loe),t.Cb.nh()&&(o=new xJ(t.Cb,1,10,s,e,jnt(e$(ZR(t.Cb,26)),t),!1),n?n.Ei(o):n=o));else if(CP(t.Cb,444))for(!(a=ZR(t.Cb,836)).b&&(a.b=new Yv(new $y)),i=new $v(new e6(new Kh(a.b.a).a));i.a.b;)n=Yxt(r=ZR(c0(i.a).cd(),87),vdt(r,a),n);return n}function $xt(t){var e,n,i,a,o,s,l,c,u,f,h,d;if((d=ZR(kht(t,(L_t(),tee)),21)).dc())return null;if(l=0,s=0,d.Hc((Ltt(),eie))){for(f=ZR(kht(t,kee),98),i=2,n=2,a=2,o=2,e=Eq(t)?ZR(kht(Eq(t),Cte),103):ZR(kht(t,Cte),103),u=new WP((!t.c&&(t.c=new bF(iae,t,9,9)),t.c));u.e!=u.i.gc();)if(c=ZR(fnt(u),118),(h=ZR(kht(c,Pee),61))==(Pwt(),Vre)&&(h=eyt(c,e),Ont(c,Pee,h)),f==(jot(),cre))switch(h.g){case 1:i=r.Math.max(i,c.i+c.g);break;case 2:n=r.Math.max(n,c.j+c.f);break;case 3:a=r.Math.max(a,c.i+c.g);break;case 4:o=r.Math.max(o,c.j+c.f)}else switch(h.g){case 1:i+=c.g+2;break;case 2:n+=c.f+2;break;case 3:a+=c.g+2;break;case 4:o+=c.f+2}l=r.Math.max(i,a),s=r.Math.max(n,o)}return Nwt(t,l,s,!0,!0)}function Xxt(t,e,n,i,a){var o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w;for(b=ZR(w$(HQ(uH(new AN(null,new DG(e.d,16)),new eg(n)),new ng(n)),bZ(new H,new U,new rt,R5(qx(vUt,1),Xkt,132,0,[(C6(),dUt)]))),15),h=Q_t,f=nTt,c=new md(e.b.j);c.a0)?c&&(u=g.p,o?++u:--u,f=!(Fdt(r=l4(ZR(TN(g.c.a,u),10)),x,n[0])||iF(r,x,n[0]))):f=!0),h=!1,(b=e.D.i)&&b.c&&s.e&&(o&&b.p>0||!o&&b.p0&&(e.a+=rkt),twt(ZR(fnt(o),160),e);for(e.a+=bEt,s=new oO((!r.c&&(r.c=new LD(Xie,r,5,8)),r.c));s.e!=s.i.gc();)s.e>0&&(e.a+=rkt),twt(ZR(fnt(s),160),e);e.a+=")"}}}function ewt(t,e,n){var r,i,a,o,s,l,c,u,f,h,d;if(a=ZR(Ost(t,(O_t(),LKt)),79)){for(r=t.a,bD(i=new fC(n),function(t){var e,n,r,i;if(i=ZR(Ost(t,(O_t(),nKt)),37)){for(r=new Sw,e=gU(t.c.i);e!=i;)e=gU(n=e.e),OO(bD(bD(r,n.n),e.c),e.d.b,e.d.d);return r}return rWt}(t)),F3(t.d.i,t.c.i)?(h=t.c,xD(f=O4(R5(qx(V9t,1),Akt,8,0,[h.n,h.a])),n)):f=zG(t.c),X$(r,f,r.a,r.a.a),d=zG(t.d),null!=Ost(t,QKt)&&bD(d,ZR(Ost(t,QKt),8)),X$(r,d,r.c.b,r.c),l0(r,i),I1(o=Qpt(a,!0,!0),ZR(a0((!a.b&&(a.b=new LD(Xie,a,4,7)),a.b),0),82)),D1(o,ZR(a0((!a.c&&(a.c=new LD(Xie,a,5,8)),a.c),0),82)),vyt(r,o),u=new md(t.b);u.ao?1:KE(isNaN(0),isNaN(o)))<0&&(l1($Lt),(r.Math.abs(o-1)<=$Lt||1==o||isNaN(o)&&isNaN(1)?0:o<1?-1:o>1?1:KE(isNaN(o),isNaN(1)))<0)&&(l1($Lt),(r.Math.abs(0-s)<=$Lt||0==s||isNaN(0)&&isNaN(s)?0:0s?1:KE(isNaN(0),isNaN(s)))<0)&&(l1($Lt),(r.Math.abs(s-1)<=$Lt||1==s||isNaN(s)&&isNaN(1)?0:s<1?-1:s>1?1:KE(isNaN(s),isNaN(1)))<0))}function rwt(t,e,n,i,a,o,s){var l,c,u,f,h,d,p,g,v,m,y,b;if(m=function(t,e,n){var r,i,a,o,s,l,c,u;for(u=new rm,a=0,a1(c=new gW(0,n),new t6(0,0,c,n)),i=0,l=new WP(t);l.e!=l.i.gc();)s=ZR(fnt(l),33),r=ZR(TN(c.a,c.a.c.length-1),187),i+s.g+(0==ZR(TN(c.a,0),187).b.c.length?0:n)>e&&(i=0,a+=c.b+n,u.c[u.c.length]=c,a1(c=new gW(a,n),r=new t6(0,c.f,c,n)),i=0),0==r.b.c.length||s.f>=r.o&&s.f<=r.f||.5*r.a<=s.f&&1.5*r.a>=s.f?h9(r,s):(a1(c,o=new t6(r.s+r.r+n,c.f,c,n)),h9(o,s)),i=s.i+s.g;return u.c[u.c.length]=c,u}(e,n,t.g),a.n&&a.n&&o&&tW(a,NW(o),(S6(),Tie)),t.b)for(v=0;v0?t.g:0),++n;t.c=a,t.d=i}(t,m),a.n&&a.n&&o&&tW(a,NW(o),(S6(),Tie)),b=r.Math.max(t.d,i.a-(s.b+s.c)),l=(h=r.Math.max(t.c,i.b-(s.d+s.a)))-t.c,t.e&&t.f&&(b/h0&&(t.c[e.c.p][e.p].d+=$ht(t.i,24)*TMt*.07000000029802322-.03500000014901161,t.c[e.c.p][e.p].a=t.c[e.c.p][e.p].d/t.c[e.c.p][e.p].b)}}function uwt(t,e,n,i,a){var o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k;for(k=0,p=0,h=new md(e.e);h.a=u&&_>=m&&(d+=g.n.b+v.n.b+v.a.b-w,++l));if(n)for(s=new md(b.e);s.a=u&&_>=m&&(d+=g.n.b+v.n.b+v.a.b-w,++l))}l>0&&(k+=d/l,++p)}p>0?(e.a=a*k/p,e.g=p):(e.a=0,e.g=0)}function fwt(t,e){var n,i,a,o,s,l,c,u,f,h;for(i=new md(t.a.b);i.aeMt||e.o==x5t&&ui.d,i.d=r.Math.max(i.d,e),l&&n&&(i.d=r.Math.max(i.d,i.a),i.a=i.d+a);break;case 3:n=e>i.a,i.a=r.Math.max(i.a,e),l&&n&&(i.a=r.Math.max(i.a,i.d),i.d=i.a+a);break;case 2:n=e>i.c,i.c=r.Math.max(i.c,e),l&&n&&(i.c=r.Math.max(i.b,i.c),i.b=i.c+a);break;case 4:n=e>i.b,i.b=r.Math.max(i.b,e),l&&n&&(i.b=r.Math.max(i.b,i.c),i.c=i.b+a)}}}(l),function(t){switch(t.q.g){case 5:jat(t,(Pwt(),Mre)),jat(t,Hre);break;case 4:gxt(t,(Pwt(),Mre)),gxt(t,Hre);break;default:Mct(t,(Pwt(),Mre)),Mct(t,Hre)}}(l),function(t){switch(t.q.g){case 5:Fat(t,(Pwt(),Tre)),Fat(t,qre);break;case 4:vxt(t,(Pwt(),Tre)),vxt(t,qre);break;default:Act(t,(Pwt(),Tre)),Act(t,qre)}}(l),function(t){var e,n,r,i,a,o,s;if(!t.A.dc()){if(t.A.Hc((Ltt(),eie))&&(ZR(qU(t.b,(Pwt(),Mre)),124).k=!0,ZR(qU(t.b,Hre),124).k=!0,e=t.q!=(jot(),ure)&&t.q!=cre,Eh(ZR(qU(t.b,Tre),124),e),Eh(ZR(qU(t.b,qre),124),e),Eh(t.g,e),t.A.Hc(nie)&&(ZR(qU(t.b,Mre),124).j=!0,ZR(qU(t.b,Hre),124).j=!0,ZR(qU(t.b,Tre),124).k=!0,ZR(qU(t.b,qre),124).k=!0,t.g.k=!0)),t.A.Hc(tie))for(t.a.j=!0,t.a.k=!0,t.g.j=!0,t.g.k=!0,s=t.B.Hc((Zvt(),cie)),a=0,o=(i=$et()).length;a0&&(c=t.n.a/a);break;case 2:case 4:(i=t.i.o.b)>0&&(c=t.n.b/i)}d4(t,(O_t(),BKt),c)}if(l=t.o,o=t.a,r)o.a=r.a,o.b=r.b,t.d=!0;else if(e!=hre&&e!=dre&&s!=Vre)switch(s.g){case 1:o.a=l.a/2;break;case 2:o.a=l.a,o.b=l.b/2;break;case 3:o.a=l.a/2,o.b=l.b;break;case 4:o.b=l.b/2}else o.a=l.a/2,o.b=l.b/2}(c,a,i,ZR(kht(e,m1t),8)),l=new WP((!e.n&&(e.n=new bF(nae,e,1,7)),e.n));l.e!=l.i.gc();)!tx(uI(kht(s=ZR(fnt(l),137),s1t)))&&s.a&&nz(c.f,g8(s));switch(i.g){case 2:case 1:(c.j==(Pwt(),Mre)||c.j==Hre)&&r.Fc((igt(),OXt));break;case 4:case 3:(c.j==(Pwt(),Tre)||c.j==qre)&&r.Fc((igt(),OXt))}return c}function ywt(t,e,n,i,a,o,s){var l,c,u,f,h,d,p,g,v,m,y,b;for(h=null,i==(ZV(),K5t)?h=e:i==Z5t&&(h=n),g=h.a.ec().Kc();g.Ob();){for(p=ZR(g.Pb(),11),v=O4(R5(qx(V9t,1),Akt,8,0,[p.i.n,p.n,p.a])).b,b=new Km,l=new Km,u=new WX(p.b);QC(u.a)||QC(u.b);)if(tx(uI(Ost(c=ZR(QC(u.a)?HG(u.a):HG(u.b),17),(O_t(),qKt))))==a&&-1!=uJ(o,c,0)){if(m=c.d==p?c.c:c.d,y=O4(R5(qx(V9t,1),Akt,8,0,[m.i.n,m.n,m.a])).b,r.Math.abs(y-v)<.2)continue;y1)for(Y$(b,new SA(t,d=new Gbt(p,b,i))),s.c[s.c.length]=d,f=b.a.ec().Kc();f.Ob();)sJ(o,ZR(f.Pb(),46).b);if(l.a.gc()>1)for(Y$(l,new EA(t,d=new Gbt(p,l,i))),s.c[s.c.length]=d,f=l.a.ec().Kc();f.Ob();)sJ(o,ZR(f.Pb(),46).b)}}function bwt(t){sT(t,new nst(ew(iw(tw(rw(nw(new vs,LOt),"ELK Radial"),'A radial layout provider which is based on the algorithm of Peter Eades published in "Drawing free trees.", published by International Institute for Advanced Study of Social Information Science, Fujitsu Limited in 1991. The radial layouter takes a tree and places the nodes in radial order around the root. The nodes of the same tree level are placed on the same radius.'),new Vo),LOt))),zW(t,LOt,ILt,cnt(J6t)),zW(t,LOt,RSt,cnt(e8t)),zW(t,LOt,qSt,cnt(G6t)),zW(t,LOt,iEt,cnt(W6t)),zW(t,LOt,VSt,cnt(Y6t)),zW(t,LOt,GSt,cnt(q6t)),zW(t,LOt,HSt,cnt($6t)),zW(t,LOt,WSt,cnt(Z6t)),zW(t,LOt,SOt,cnt(H6t)),zW(t,LOt,AOt,cnt(V6t)),zW(t,LOt,POt,cnt(X6t)),zW(t,LOt,TOt,cnt(K6t)),zW(t,LOt,MOt,cnt(Q6t)),zW(t,LOt,EOt,cnt(t8t)),zW(t,LOt,COt,cnt(n8t))}function xwt(t){var e;if(this.r=function(t,e){return new MV(ZR(MB(t),62),ZR(MB(e),62))}(new At,new St),this.b=new C9(ZR(MB(Jre),290)),this.p=new C9(ZR(MB(Jre),290)),this.i=new C9(ZR(MB($Ht),290)),this.e=t,this.o=new fC(t.rf()),this.D=t.Df()||tx(uI(t.We((L_t(),Hte)))),this.A=ZR(t.We((L_t(),tee)),21),this.B=ZR(t.We(aee),21),this.q=ZR(t.We(kee),98),this.u=ZR(t.We(See),21),!function(t){return Put(),!(X3(cq(ej(yre,R5(qx(Gre,1),Xkt,273,0,[xre])),t))>1)&&!(X3(cq(ej(mre,R5(qx(Gre,1),Xkt,273,0,[vre,wre])),t))>1)}(this.u))throw um(new hx("Invalid port label placement: "+this.u));if(this.v=tx(uI(t.We(Cee))),this.j=ZR(t.We(Jte),21),!function(t){return Tht(),!(X3(cq(ej($ne,R5(qx(ore,1),Xkt,93,0,[Xne])),t))>1)&&!(X3(cq(ej(Gne,R5(qx(ore,1),Xkt,93,0,[qne,Yne])),t))>1)&&!(X3(cq(ej(Jne,R5(qx(ore,1),Xkt,93,0,[Zne,Kne])),t))>1)}(this.j))throw um(new hx("Invalid node label placement: "+this.j));this.n=ZR(Wit(t,Kte),116),this.k=ex(fI(Wit(t,Wee))),this.d=ex(fI(Wit(t,Gee))),this.w=ex(fI(Wit(t,Qee))),this.s=ex(fI(Wit(t,Yee))),this.t=ex(fI(Wit(t,$ee))),this.C=ZR(Wit(t,Zee),142),this.c=2*this.d,e=!this.B.Hc((Zvt(),iie)),this.f=new Set(0,e,0),this.g=new Set(1,e,0),Db(this.f,(JQ(),lHt),this.g)}function wwt(t){var e,n,r,i,a,o,s,l,c,u,f;if(null==t)throw um(new Ex(lkt));if(c=t,l=!1,(a=t.length)>0&&(IG(0,t.length),45!=(e=t.charCodeAt(0))&&43!=e||(t=t.substr(1),--a,l=45==e)),0==a)throw um(new Ex(QTt+c+'"'));for(;t.length>0&&(IG(0,t.length),48==t.charCodeAt(0));)t=t.substr(1),--a;if(a>(Rmt(),QFt)[10])throw um(new Ex(QTt+c+'"'));for(i=0;i0&&(f=-parseInt(t.substr(0,r),10),t=t.substr(r),a-=r,n=!1);a>=o;){if(r=parseInt(t.substr(0,o),10),t=t.substr(o),a-=o,n)n=!1;else{if(w8(f,s)<0)throw um(new Ex(QTt+c+'"'));f=n9(f,u)}f=t9(f,r)}if(w8(f,0)>0)throw um(new Ex(QTt+c+'"'));if(!l&&w8(f=cJ(f),0)<0)throw um(new Ex(QTt+c+'"'));return f}function _wt(t,e){var n,r,i,a,o,s,l;if(Zz(),this.a=new xP(this),this.b=t,this.c=e,this.f=qF(SJ((gct(),vse),e)),this.f.dc())if((s=Nat(vse,t))==e)for(this.e=!0,this.d=new rm,this.f=new hl,this.f.Fc(VNt),ZR(Pbt(AJ(vse,r0(t)),""),26)==t&&this.f.Fc(Pj(vse,r0(t))),i=Dvt(vse,t).Kc();i.Ob();)switch(r=ZR(i.Pb(),170),TU(SJ(vse,r))){case 4:this.d.Fc(r);break;case 5:this.f.Gc(qF(SJ(vse,r)))}else if(TT(),ZR(e,66).Oj())for(this.e=!0,this.f=null,this.d=new rm,o=0,l=(null==t.i&&fyt(t),t.i).length;o=0&&o0&&(ZR(qU(t.b,e),124).a.b=n)}function Twt(t,e){var n,r,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y;if((f=e.length)>0&&(IG(0,e.length),64!=(s=e.charCodeAt(0)))){if(37==s&&(l=!1,0!=(u=e.lastIndexOf("%"))&&(u==f-1||(IG(u+1,e.length),l=46==e.charCodeAt(u+1))))){if(y=FD("%",o=e.substr(1,u-1))?null:Dwt(o),r=0,l)try{r=amt(e.substr(u+2),nTt,Q_t)}catch(Wle){throw CP(Wle=_5(Wle),127)?um(new bJ(Wle)):um(Wle)}for(g=d2(t.Wg());g.Ob();)if(CP(d=Y3(g),510)&&(m=(i=ZR(d,590)).d,(null==y?null==m:FD(y,m))&&0==r--))return i;return null}if(h=-1==(c=e.lastIndexOf("."))?e:e.substr(0,c),n=0,-1!=c)try{n=amt(e.substr(c+1),nTt,Q_t)}catch(Wle){if(!CP(Wle=_5(Wle),127))throw um(Wle);h=e}for(h=FD("%",h)?null:Dwt(h),p=d2(t.Wg());p.Ob();)if(CP(d=Y3(p),191)&&(v=(a=ZR(d,191)).ne(),(null==h?null==v:FD(h,v))&&0==n--))return a;return null}return ixt(t,e)}function Mwt(){var t,e,n;for(Mwt=P,new QJ(1,0),new QJ(10,0),new QJ(0,0),oBt=XK(xBt,Akt,240,11,0,1),sBt=XK($le,fTt,25,100,15,1),lBt=R5(qx(Qle,1),oMt,25,15,[1,5,25,125,625,3125,15625,78125,390625,1953125,9765625,48828125,244140625,1220703125,6103515625,30517578125,152587890625,762939453125,3814697265625,19073486328125,95367431640625,476837158203125,0x878678326eac9]),cBt=XK(Xle,STt,25,lBt.length,15,1),uBt=R5(qx(Qle,1),oMt,25,15,[1,10,100,hTt,1e4,sMt,1e6,1e7,1e8,$Tt,1e10,1e11,1e12,1e13,1e14,1e15,1e16]),fBt=XK(Xle,STt,25,uBt.length,15,1),hBt=XK(xBt,Akt,240,11,0,1),t=0;ti+2&&o4((IG(i+1,t.length),t.charCodeAt(i+1)),Gae,Wae)&&o4((IG(i+2,t.length),t.charCodeAt(i+2)),Gae,Wae))if(n=Oz((IG(i+1,t.length),t.charCodeAt(i+1)),(IG(i+2,t.length),t.charCodeAt(i+2))),i+=2,r>0?128==(192&n)?e[s++]=n<<24>>24:r=0:n>=128&&(192==(224&n)?(e[s++]=n<<24>>24,r=2):224==(240&n)?(e[s++]=n<<24>>24,r=3):240==(248&n)&&(e[s++]=n<<24>>24,r=4)),r>0){if(s==r){switch(s){case 2:FB(l,((31&e[0])<<6|63&e[1])&dTt);break;case 3:FB(l,((15&e[0])<<12|(63&e[1])<<6|63&e[2])&dTt)}s=0,r=0}}else{for(a=0;a0){if(o+r>t.length)return!1;s=Yut(t.substr(0,o+r),e)}else s=Yut(t,e);switch(a){case 71:return s=gst(t,o,R5(qx(iBt,1),Akt,2,6,[ETt,CTt]),e),i.e=s,!0;case 77:case 76:return function(t,e,n,r,i){return r<0?((r=gst(t,i,R5(qx(iBt,1),Akt,2,6,[pTt,gTt,vTt,mTt,yTt,bTt,xTt,wTt,_Tt,kTt,TTt,MTt]),e))<0&&(r=gst(t,i,R5(qx(iBt,1),Akt,2,6,["Jan","Feb","Mar","Apr",yTt,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),e)),!(r<0)&&(n.k=r,!0)):r>0&&(n.k=r-1,!0)}(t,e,i,s,o);case 69:case 99:return function(t,e,n,r){var i;return(i=gst(t,n,R5(qx(iBt,1),Akt,2,6,[PTt,LTt,OTt,ITt,DTt,RTt,zTt]),e))<0&&(i=gst(t,n,R5(qx(iBt,1),Akt,2,6,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]),e)),!(i<0)&&(r.d=i,!0)}(t,e,o,i);case 97:return s=gst(t,o,R5(qx(iBt,1),Akt,2,6,["AM","PM"]),e),i.b=s,!0;case 121:return function(t,e,n,r,i,a){var o,s,l;if(s=32,r<0){if(e[0]>=t.length)return!1;if(43!=(s=YU(t,e[0]))&&45!=s)return!1;if(++e[0],(r=Yut(t,e))<0)return!1;45==s&&(r=-r)}return 32==s&&e[0]-n==2&&2==i.b&&(o=(l=(new sk).q.getFullYear()-ATt+ATt-80)%100,a.a=r==o,r+=100*(l/100|0)+(r3;)i*=10,--a;t=(t+(i>>1))/i|0}return r.i=t,!0}(s,o,e[0],i);case 104:12==s&&(s=0);case 75:case 72:return!(s<0)&&(i.f=s,i.g=!1,!0);case 107:return!(s<0)&&(i.f=s,i.g=!0,!0);case 109:return!(s<0)&&(i.j=s,!0);case 115:return!(s<0)&&(i.n=s,!0);case 90:if(o=0&&FD(t.substr(e,"GMT".length),"GMT")||e>=0&&FD(t.substr(e,"UTC".length),"UTC")?(n[0]=e+3,lmt(t,n,r)):lmt(t,n,r)}(t,o,e,i);default:return!1}}function zwt(t,e,n){var r,i,a,o,s,l,c,u,f,h;if(t.e.a.$b(),t.f.a.$b(),t.c.c=XK(Yjt,akt,1,0,5,1),t.i.c=XK(Yjt,akt,1,0,5,1),t.g.a.$b(),e)for(o=new md(e.a);o.a=1&&(_-u>0&&g>=0?(I0(h,h.i+w),D0(h,h.j+c*u)):_-u<0&&p>=0&&(I0(h,h.i+w*_),D0(h,h.j+c)));return Ont(t,(L_t(),tee),(Ltt(),new aR(o=ZR(Lw(die),9),ZR(nD(o,o.length),9),0))),new KA(k,f)}function jwt(t){var e,n,i,a,o,s,l,c,u,f,h;if(f=Eq(ist(ZR(a0((!t.b&&(t.b=new LD(Xie,t,4,7)),t.b),0),82)))==Eq(ist(ZR(a0((!t.c&&(t.c=new LD(Xie,t,5,8)),t.c),0),82))),s=new Sw,(e=ZR(kht(t,(I6(),Ane)),74))&&e.b>=2){if(0==(!t.a&&(t.a=new bF(Zie,t,6,6)),t.a).i)Rw(),n=new ol,fZ((!t.a&&(t.a=new bF(Zie,t,6,6)),t.a),n);else if((!t.a&&(t.a=new bF(Zie,t,6,6)),t.a).i>1)for(h=new oO((!t.a&&(t.a=new bF(Zie,t,6,6)),t.a));h.e!=h.i.gc();)not(h);vyt(e,ZR(a0((!t.a&&(t.a=new bF(Zie,t,6,6)),t.a),0),202))}if(f)for(i=new WP((!t.a&&(t.a=new bF(Zie,t,6,6)),t.a));i.e!=i.i.gc();)for(c=new WP((!(n=ZR(fnt(i),202)).a&&(n.a=new YP(Wie,n,5)),n.a));c.e!=c.i.gc();)l=ZR(fnt(c),469),s.a=r.Math.max(s.a,l.a),s.b=r.Math.max(s.b,l.b);for(o=new WP((!t.n&&(t.n=new bF(nae,t,1,7)),t.n));o.e!=o.i.gc();)a=ZR(fnt(o),137),(u=ZR(kht(a,One),8))&&_C(a,u.a,u.b),f&&(s.a=r.Math.max(s.a,a.i+a.g),s.b=r.Math.max(s.b,a.j+a.f));return s}function Fwt(t,e,n){var r,i,a,o,s;switch(r=e.i,a=t.i.o,i=t.i.d,s=t.n,o=O4(R5(qx(V9t,1),Akt,8,0,[s,t.a])),t.j.g){case 1:PI(e,(PJ(),xHt)),r.d=-i.d-n-r.a,ZR(ZR(TN(e.d,0),181).We((O_t(),kKt)),285)==(Uit(),jne)?(hZ(e,(UZ(),pHt)),r.c=o.a-ex(fI(Ost(t,CKt)))-n-r.b):(hZ(e,(UZ(),dHt)),r.c=o.a+ex(fI(Ost(t,CKt)))+n);break;case 2:hZ(e,(UZ(),dHt)),r.c=a.a+i.c+n,ZR(ZR(TN(e.d,0),181).We((O_t(),kKt)),285)==(Uit(),jne)?(PI(e,(PJ(),xHt)),r.d=o.b-ex(fI(Ost(t,CKt)))-n-r.a):(PI(e,(PJ(),_Ht)),r.d=o.b+ex(fI(Ost(t,CKt)))+n);break;case 3:PI(e,(PJ(),_Ht)),r.d=a.b+i.a+n,ZR(ZR(TN(e.d,0),181).We((O_t(),kKt)),285)==(Uit(),jne)?(hZ(e,(UZ(),pHt)),r.c=o.a-ex(fI(Ost(t,CKt)))-n-r.b):(hZ(e,(UZ(),dHt)),r.c=o.a+ex(fI(Ost(t,CKt)))+n);break;case 4:hZ(e,(UZ(),pHt)),r.c=-i.b-n-r.b,ZR(ZR(TN(e.d,0),181).We((O_t(),kKt)),285)==(Uit(),jne)?(PI(e,(PJ(),xHt)),r.d=o.b-ex(fI(Ost(t,CKt)))-n-r.a):(PI(e,(PJ(),_Ht)),r.d=o.b+ex(fI(Ost(t,CKt)))+n)}}function Bwt(t,e,n,i,a,o,s){var l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S,E,C,P;for(p=0,A=0,c=new md(t);c.ap&&(o&&(kE(_,d),kE(T,g7(u.b-1))),C=n.b,P+=d+e,d=0,f=r.Math.max(f,n.b+n.c+E)),I0(l,C),D0(l,P),f=r.Math.max(f,C+E+n.c),d=r.Math.max(d,h),C+=E+e;if(f=r.Math.max(f,i),(S=P+d+n.a)l&&(x=0,w+=s+y,s=0),Yvt(v,n,x,w),e=r.Math.max(e,x+m.a),s=r.Math.max(s,m.b),x+=m.a+y;return v}function Hwt(t,e){var n,r,i,a,o,s,l,c,u,f,h,d,p;switch(u=new Dy,t.a.g){case 3:h=ZR(Ost(e.e,(O_t(),KKt)),15),d=ZR(Ost(e.j,KKt),15),p=ZR(Ost(e.f,KKt),15),n=ZR(Ost(e.e,$Kt),15),r=ZR(Ost(e.j,$Kt),15),i=ZR(Ost(e.f,$Kt),15),A5(o=new rm,h),d.Jc(new xa),A5(o,CP(d,152)?NX(ZR(d,152)):CP(d,131)?ZR(d,131).a:CP(d,54)?new Tb(d):new ik(d)),A5(o,p),A5(a=new rm,n),A5(a,CP(r,152)?NX(ZR(r,152)):CP(r,131)?ZR(r,131).a:CP(r,54)?new Tb(r):new ik(r)),A5(a,i),d4(e.f,KKt,o),d4(e.f,$Kt,a),d4(e.f,ZKt,e.f),d4(e.e,KKt,null),d4(e.e,$Kt,null),d4(e.j,KKt,null),d4(e.j,$Kt,null);break;case 1:C2(u,e.e.a),jz(u,e.i.n),C2(u,E3(e.j.a)),jz(u,e.a.n),C2(u,e.f.a);break;default:C2(u,e.e.a),C2(u,E3(e.j.a)),C2(u,e.f.a)}UH(e.f.a),C2(e.f.a,u),Zq(e.f,e.e.c),s=ZR(Ost(e.e,(y_t(),R0t)),74),c=ZR(Ost(e.j,R0t),74),l=ZR(Ost(e.f,R0t),74),(s||c||l)&&(HF(f=new Dy,l),HF(f,c),HF(f,s),d4(e.f,R0t,f)),Zq(e.j,null),Kq(e.j,null),Zq(e.e,null),Kq(e.e,null),Jq(e.a,null),Jq(e.i,null),e.g&&Hwt(t,e.g)}function Vwt(t,e,n){var i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M;return x=t.c[(OG(0,e.c.length),ZR(e.c[0],17)).p],T=t.c[(OG(1,e.c.length),ZR(e.c[1],17)).p],(x.a.e.e-x.a.a-(x.b.e.e-x.b.a)!=0||T.a.e.e-T.a.a-(T.b.e.e-T.b.a)!=0)&&(!!CP(y=x.b.e.f,10)&&(m=ZR(y,10),_=t.i[m.p],k=m.c?uJ(m.c.a,m,0):-1,o=tMt,k>0&&(a=ZR(TN(m.c.a,k-1),10),s=t.i[a.p],M=r.Math.ceil(hP(t.n,a,m)),o=_.a.e-m.d.d-(s.a.e+a.o.b+a.d.a)-M),u=tMt,k0&&T.a.e.e-T.a.a-(T.b.e.e-T.b.a)<0,g=x.a.e.e-x.a.a-(x.b.e.e-x.b.a)<0&&T.a.e.e-T.a.a-(T.b.e.e-T.b.a)>0,p=x.a.e.e+x.b.aT.b.e.e+T.a.a,w=0,!v&&!g&&(d?o+h>0?w=h:u-i>0&&(w=i):p&&(o+l>0?w=l:u-b>0&&(w=b))),_.a.e+=w,_.b&&(_.d.e+=w),!1)))}function qwt(t,e,n){var i,a,o,s,l,c,u,f,h,d;if(i=new bH(e.qf().a,e.qf().b,e.rf().a,e.rf().b),a=new uC,t.c)for(s=new md(e.wf());s.a=2&&(r=ZR(i.Kc().Pb(),111),n=t.u.Hc((Put(),mre)),a=t.u.Hc(wre),!r.a&&!n&&(2==i.gc()||a))}(t,e),n=t.u.Hc((Put(),vre)),l=c.Kc();l.Ob();)if((s=ZR(l.Pb(),111)).c&&!(s.c.d.c.length<=0)){switch(h=s.b.rf(),(f=(u=s.c).i).b=(a=u.n,u.e.a+a.b+a.c),f.a=(i=u.n,u.e.b+i.d+i.a),e.g){case 1:s.a?(f.c=(h.a-f.b)/2,hZ(u,(UZ(),hHt))):o||n?(f.c=-f.b-t.s,hZ(u,(UZ(),pHt))):(f.c=h.a+t.s,hZ(u,(UZ(),dHt))),f.d=-f.a-t.t,PI(u,(PJ(),xHt));break;case 3:s.a?(f.c=(h.a-f.b)/2,hZ(u,(UZ(),hHt))):o||n?(f.c=-f.b-t.s,hZ(u,(UZ(),pHt))):(f.c=h.a+t.s,hZ(u,(UZ(),dHt))),f.d=h.b+t.t,PI(u,(PJ(),_Ht));break;case 2:s.a?(r=t.v?f.a:ZR(TN(u.d,0),181).rf().b,f.d=(h.b-r)/2,PI(u,(PJ(),wHt))):o||n?(f.d=-f.a-t.t,PI(u,(PJ(),xHt))):(f.d=h.b+t.t,PI(u,(PJ(),_Ht))),f.c=h.a+t.s,hZ(u,(UZ(),dHt));break;case 4:s.a?(r=t.v?f.a:ZR(TN(u.d,0),181).rf().b,f.d=(h.b-r)/2,PI(u,(PJ(),wHt))):o||n?(f.d=-f.a-t.t,PI(u,(PJ(),xHt))):(f.d=h.b+t.t,PI(u,(PJ(),_Ht))),f.c=-f.b-t.s,hZ(u,(UZ(),pHt))}o=!1}}function Wwt(t,e){var n,r,i,a,o,s,l,c,u,f,h;if(R_t(),0==uk(ble)){for(f=XK(Vle,Akt,117,wle.length,0,1),o=0;oc&&(r.a+=EP(XK($le,fTt,25,-c,15,1))),r.a+="Is",XE(l,mst(32))>=0)for(i=0;i=r.o.b/2}m?(v=ZR(Ost(r,(O_t(),tZt)),15))?h?a=v:(i=ZR(Ost(r,JXt),15))?a=v.gc()<=i.gc()?v:i:(a=new rm,d4(r,JXt,a)):(a=new rm,d4(r,tZt,a)):(i=ZR(Ost(r,(O_t(),JXt)),15))?f?a=i:(v=ZR(Ost(r,tZt),15))?a=i.gc()<=v.gc()?i:v:(a=new rm,d4(r,tZt,a)):(a=new rm,d4(r,JXt,a)),a.Fc(t),d4(t,(O_t(),tKt),n),e.d==n?(Kq(e,null),n.e.c.length+n.g.c.length==0&&Qq(n,null),function(t){var e,n;(e=ZR(Ost(t,(O_t(),FKt)),10))&&(sJ((n=e.c).a,e),0==n.a.c.length&&sJ(gU(e).b,n))}(n)):(Zq(e,null),n.e.c.length+n.g.c.length==0&&Qq(n,null)),UH(e.a)}function $wt(t,e,n){var i,a,o,s,l,c,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S,E,C,P,L,O;for(ast(n,"MinWidth layering",1),g=e.b,M=e.a,O=ZR(Ost(e,(y_t(),B0t)),19).a,l=ZR(Ost(e,U0t),19).a,t.b=ex(fI(Ost(e,N1t))),t.d=tMt,_=new md(M);_.a<_.c.c.length;)(x=ZR(HG(_),10)).k==(plt(),qGt)&&(E=x.o.b,t.d=r.Math.min(t.d,E));for(t.d=r.Math.max(1,t.d),A=M.c.length,t.c=XK(Xle,STt,25,A,15,1),t.f=XK(Xle,STt,25,A,15,1),t.e=XK(Qle,oMt,25,A,15,1),f=0,t.a=0,k=new md(M);k.a0){for(h=u<100?null:new kw(u),p=(c=new e3(e)).g,v=XK(Xle,STt,25,u,15,1),r=0,b=new BQ(u),i=0;i=0;)if(null!=d?K8(d,p[l]):rE(d)===rE(p[l])){v.length<=r&&fbt(v,0,v=XK(Xle,STt,25,2*v.length,15,1),0,r),v[r++]=i,fZ(b,p[l]);break t}if(rE(d)===rE(s))break}}if(c=b,p=b.g,u=r,r>v.length&&fbt(v,0,v=XK(Xle,STt,25,r,15,1),0,r),r>0){for(y=!0,a=0;a=0;)Lit(t,v[o]);if(r!=u){for(i=u;--i>=r;)Lit(c,i);fbt(v,0,v=XK(Xle,STt,25,r,15,1),0,r)}e=c}}}else for(e=function(t,e){var n,r,i;if(e.dc())return rI(),rI(),Dae;for(n=new HI(t,e.gc()),i=new WP(t);i.e!=i.i.gc();)r=fnt(i),e.Hc(r)&&fZ(n,r);return n}(t,e),i=t.i;--i>=0;)e.Hc(t.g[i])&&(Lit(t,i),y=!0);if(y){if(null!=v){for(f=1==(n=e.gc())?Gq(t,4,e.Kc().Pb(),null,v[0],g):Gq(t,6,e,v,v[0],g),h=n<100?null:new kw(n),i=e.Kc();i.Ob();)h=JD(t,ZR(d=i.Pb(),72),h);h?(h.Ei(f),h.Fi()):j3(t.e,f)}else{for(h=function(t){return t<100?null:new kw(t)}(e.gc()),i=e.Kc();i.Ob();)h=JD(t,ZR(d=i.Pb(),72),h);h&&h.Fi()}return!0}return!1}function Kwt(t,e){var n,i,a,o,s,l,c,f,h,d,p,g,v,m,y,b,x;for((n=new Unt(e)).a||function(t){var e,n,i,a,o;switch(a=ZR(TN(t.a,0),10),e=new art(t),nz(t.a,e),e.o.a=r.Math.max(1,a.o.a),e.o.b=r.Math.max(1,a.o.b),e.n.a=a.n.a,e.n.b=a.n.b,ZR(Ost(a,(O_t(),hKt)),61).g){case 4:e.n.a+=2;break;case 1:e.n.b+=2;break;case 2:e.n.a-=2;break;case 3:e.n.b-=2}Qq(i=new Clt,e),Zq(n=new _V,o=ZR(TN(a.j,0),11)),Kq(n,i),bD(PE(i.n),o.n),bD(PE(i.a),o.a)}(e),f=function(t){var e,n,r,i,a,o,s;for(s=new iX,o=new md(t.a);o.a=s.b.c)&&(s.b=e),(!s.c||e.c<=s.c.c)&&(s.d=s.c,s.c=e),(!s.e||e.d>=s.e.d)&&(s.e=e),(!s.f||e.d<=s.f.d)&&(s.f=e);return r=new pnt((F5(),gGt)),OW(t,TGt,new ox(R5(qx(pGt,1),akt,369,0,[r]))),o=new pnt(yGt),OW(t,kGt,new ox(R5(qx(pGt,1),akt,369,0,[o]))),i=new pnt(vGt),OW(t,_Gt,new ox(R5(qx(pGt,1),akt,369,0,[i]))),a=new pnt(mGt),OW(t,wGt,new ox(R5(qx(pGt,1),akt,369,0,[a]))),kdt(r.c,gGt),kdt(i.c,vGt),kdt(a.c,mGt),kdt(o.c,yGt),s.a.c=XK(Yjt,akt,1,0,5,1),A5(s.a,r.c),A5(s.a,E3(i.c)),A5(s.a,a.c),A5(s.a,E3(o.c)),s}(f)),n}function Zwt(t,e,n){var i,a,o,s,l,c,u,f,h,d,p,g;if(null==n.p[e.p]){l=!0,n.p[e.p]=0,s=e,g=n.o==(Nq(),x5t)?eMt:tMt;do{a=t.b.e[s.p],o=s.c.a.c.length,n.o==x5t&&a>0||n.o==w5t&&a(o=lot(t,n))?wvt(t,e,n):wvt(t,n,e),io?1:0}return(r=ZR(Ost(e,(O_t(),PKt)),19).a)>(a=ZR(Ost(n,PKt),19).a)?wvt(t,e,n):wvt(t,n,e),ra?1:0}function Qwt(t,e,n,r){var i,a,o,s,l,c,f,h,d,p,g,v;if(tx(uI(kht(e,(L_t(),see)))))return YH(),YH(),SBt;if(l=0!=(!e.a&&(e.a=new bF(rae,e,10,11)),e.a).i,f=function(t){var e,n,r;if(tx(uI(kht(t,(L_t(),Hte))))){for(r=new rm,n=new Oj(dL(ddt(t).a.Kc(),new u));Kft(n);)Xut(e=ZR(wX(n),79))&&tx(uI(kht(e,Vte)))&&(r.c[r.c.length]=e);return r}return YH(),YH(),SBt}(e),c=!f.dc(),l||c){if(!(i=ZR(kht(e,Ree),149)))throw um(new hx("Resolved algorithm is not set; apply a LayoutAlgorithmResolver before computing layout."));if(v=GA(i,(Wft(),mae)),Let(e),!l&&c&&!v)return YH(),YH(),SBt;if(s=new rm,rE(kht(e,Fte))===rE((P8(),Dne))&&(GA(i,pae)||GA(i,dae)))for(d=$gt(t,e),C2(p=new Mk,(!e.a&&(e.a=new bF(rae,e,10,11)),e.a));0!=p.b;)Let(h=ZR(0==p.b?null:(AO(0!=p.b),XQ(p,p.a.a)),33)),rE(kht(h,Fte))===rE(zne)||GK(h,yte)&&!lX(i,kht(h,Ree))?(A5(s,Qwt(t,h,n,r)),Ont(h,Fte,zne),Hvt(h)):C2(p,(!h.a&&(h.a=new bF(rae,h,10,11)),h.a));else for(d=(!e.a&&(e.a=new bF(rae,e,10,11)),e.a).i,o=new WP((!e.a&&(e.a=new bF(rae,e,10,11)),e.a));o.e!=o.i.gc();)A5(s,Qwt(t,a=ZR(fnt(o),33),n,r)),Hvt(a);for(g=new md(s);g.a=0?q9(s):P7(q9(s)),t.Ye(T1t,d)),c=new Sw,h=!1,t.Xe(m1t)?(RO(c,ZR(t.We(m1t),8)),h=!0):function(t,e,n){t.a=e,t.b=n}(c,o.a/2,o.b/2),d.g){case 4:d4(u,j0t,(g9(),nZt)),d4(u,oKt,(r4(),$$t)),u.o.b=o.b,g<0&&(u.o.a=-g),gut(f,(Pwt(),Tre)),h||(c.a=o.a),c.a-=o.a;break;case 2:d4(u,j0t,(g9(),iZt)),d4(u,oKt,(r4(),W$t)),u.o.b=o.b,g<0&&(u.o.a=-g),gut(f,(Pwt(),qre)),h||(c.a=0);break;case 1:d4(u,bKt,(LJ(),qXt)),u.o.a=o.a,g<0&&(u.o.b=-g),gut(f,(Pwt(),Hre)),h||(c.b=o.b),c.b-=o.b;break;case 3:d4(u,bKt,(LJ(),HXt)),u.o.a=o.a,g<0&&(u.o.b=-g),gut(f,(Pwt(),Mre)),h||(c.b=0)}if(RO(f.n,c),d4(u,m1t,c),e==lre||e==ure||e==cre){if(p=0,e==lre&&t.Xe(x1t))switch(d.g){case 1:case 2:p=ZR(t.We(x1t),19).a;break;case 3:case 4:p=-ZR(t.We(x1t),19).a}else switch(d.g){case 4:case 2:p=a.b,e==ure&&(p/=i.b);break;case 1:case 3:p=a.a,e==ure&&(p/=i.a)}d4(u,BKt,p)}return d4(u,hKt,d),u}function e_t(t,e,n,r){var i,a,o,s,l,c,u,f,h,d;for(f=!1,c=t+1,OG(t,e.c.length),o=(u=ZR(e.c[t],200)).a,s=null,a=0;ac&&0==(OG(c,e.c.length),ZR(e.c[c],200)).a.c.length;)sJ(e,(OG(c,e.c.length),e.c[c]));if(!l){--a;continue}if(gmt(e,u,i,l,h,n,c,r)){f=!0;continue}if(h){if(abt(e,u,i,l,n,c,r)){f=!0;continue}if(s8(u,i)){i.c=!0,f=!0;continue}}else if(s8(u,i)){i.c=!0,f=!0;continue}if(f)continue}s8(u,i)?(i.c=!0,f=!0,l&&(l.k=!1)):rit(i.q)}else lk(),sat(u,i),--a,f=!0;return f}function n_t(t,e,n,i,a,o,s){var l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S,E,C,P,L;for(v=0,S=0,u=new md(t.b);u.av&&(o&&(kE(k,p),kE(M,g7(f.b-1)),nz(t.d,g),l.c=XK(Yjt,akt,1,0,5,1)),P=n.b,L+=p+e,p=0,h=r.Math.max(h,n.b+n.c+C)),l.c[l.c.length]=c,gnt(c,P,L),h=r.Math.max(h,P+C+n.c),p=r.Math.max(p,d),P+=C+e,g=c;if(A5(t.a,l),nz(t.d,ZR(TN(l,l.c.length-1),157)),h=r.Math.max(h,i),(E=L+p+n.a)1&&(s=r.Math.min(s,r.Math.abs(ZR(_nt(l.a,1),8).b-f.b)))));else for(g=new md(e.j);g.aa&&(o=d.a-a,s=Q_t,i.c=XK(Yjt,akt,1,0,5,1),a=d.a),d.a>=a&&(i.c[i.c.length]=l,l.a.b>1&&(s=r.Math.min(s,r.Math.abs(ZR(_nt(l.a,l.a.b-2),8).b-d.b)))));if(0!=i.c.length&&o>e.o.a/2&&s>e.o.b/2){for(Qq(p=new Clt,e),gut(p,(Pwt(),Mre)),p.n.a=e.o.a/2,Qq(v=new Clt,e),gut(v,Hre),v.n.a=e.o.a/2,v.n.b=e.o.b,c=new md(i);c.a=u.b?Zq(l,v):Zq(l,p)):(u=ZR(xz(l.a),8),(0==l.a.b?zG(l.c):ZR(mO(l.a),8)).b>=u.b?Kq(l,v):Kq(l,p)),(h=ZR(Ost(l,(y_t(),R0t)),74))&&X9(h,u,!0);e.n.a=a-e.o.a/2}}function i_t(t,e,n){var r,i,a,o,s,l,c,u,f,h,d;if(null,c=e,O1(l=WY(t,NY(n),c),lY(c,oRt)),u=ZR(v0(t.g,Rut(_q(c,UDt))),33),r=null,(o=_q(c,"sourcePort"))&&(r=Rut(o)),f=ZR(v0(t.j,r),118),!u)throw um(new ux("An edge must have a source node (edge id: '"+ret(c)+fRt));if(f&&!dU(Tq(f),u))throw um(new ux("The source port of an edge must be a port of the edge's source node (edge id: '"+lY(c,oRt)+fRt));if(!l.b&&(l.b=new LD(Xie,l,4,7)),null,fZ(l.b,f||u),h=ZR(v0(t.g,Rut(_q(c,pRt))),33),i=null,(s=_q(c,"targetPort"))&&(i=Rut(s)),d=ZR(v0(t.j,i),118),!h)throw um(new ux("An edge must have a target node (edge id: '"+ret(c)+fRt));if(d&&!dU(Tq(d),h))throw um(new ux("The target port of an edge must be a port of the edge's target node (edge id: '"+lY(c,oRt)+fRt));if(!l.c&&(l.c=new LD(Xie,l,5,8)),null,fZ(l.c,d||h),0==(!l.b&&(l.b=new LD(Xie,l,4,7)),l.b).i||0==(!l.c&&(l.c=new LD(Xie,l,5,8)),l.c).i)throw a=lY(c,oRt),um(new ux(uRt+a+fRt));return rst(c,l),Cht(c,l),z4(t,c,l)}function a_t(t,e){var n,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S;return h=function(t,e){var n,i,a,o,s,l,c,u,f,h,d;if(t.dc())return new Sw;for(c=0,f=0,i=t.Kc();i.Ob();)a=ZR(i.Pb(),37).f,c=r.Math.max(c,a.a),f+=a.a*a.b;for(c=r.Math.max(c,r.Math.sqrt(f)*ex(fI(Ost(ZR(t.Kc().Pb(),37),(y_t(),BQt))))),h=0,d=0,l=0,n=e,s=t.Kc();s.Ob();)h+(u=(o=ZR(s.Pb(),37)).f).a>c&&(h=0,d+=l+e,l=0),gvt(o,h,d),n=r.Math.max(n,h+u.a),l=r.Math.max(l,u.b),h+=u.a+e;return new KA(n+e,d+l+e)}(KL(t,(Pwt(),Pre)),e),g=dit(KL(t,Lre),e),w=dit(KL(t,Fre),e),M=pit(KL(t,Ure),e),d=pit(KL(t,Are),e),b=dit(KL(t,jre),e),v=dit(KL(t,Ore),e),k=dit(KL(t,Bre),e),_=dit(KL(t,Sre),e),A=pit(KL(t,Cre),e),y=dit(KL(t,zre),e),x=dit(KL(t,Rre),e),T=dit(KL(t,Ere),e),S=pit(KL(t,Nre),e),p=pit(KL(t,Ire),e),m=dit(KL(t,Dre),e),n=D4(R5(qx(Qle,1),oMt,25,15,[b.a,M.a,k.a,S.a])),i=D4(R5(qx(Qle,1),oMt,25,15,[g.a,h.a,w.a,m.a])),a=y.a,o=D4(R5(qx(Qle,1),oMt,25,15,[v.a,d.a,_.a,p.a])),u=D4(R5(qx(Qle,1),oMt,25,15,[b.b,g.b,v.b,x.b])),c=D4(R5(qx(Qle,1),oMt,25,15,[M.b,h.b,d.b,m.b])),f=A.b,l=D4(R5(qx(Qle,1),oMt,25,15,[k.b,w.b,_.b,T.b])),pZ(KL(t,Pre),n+a,u+f),pZ(KL(t,Dre),n+a,u+f),pZ(KL(t,Lre),n+a,0),pZ(KL(t,Fre),n+a,u+f+c),pZ(KL(t,Ure),0,u+f),pZ(KL(t,Are),n+a+i,u+f),pZ(KL(t,Ore),n+a+i,0),pZ(KL(t,Bre),0,u+f+c),pZ(KL(t,Sre),n+a+i,u+f+c),pZ(KL(t,Cre),0,u),pZ(KL(t,zre),n,0),pZ(KL(t,Ere),0,u+f+c),pZ(KL(t,Ire),n+a+i,0),(s=new Sw).a=D4(R5(qx(Qle,1),oMt,25,15,[n+i+a+o,A.a,x.a,T.a])),s.b=D4(R5(qx(Qle,1),oMt,25,15,[u+c+f+l,y.b,S.b,p.b])),s}function o_t(t,e,n){var i,a,o,s,l,c,f;if(ast(n,"Network simplex node placement",1),t.e=e,t.n=ZR(Ost(e,(O_t(),YKt)),304),function(t){var e,n,i,a,o,s,l,c,f,h,d,p;for(t.f=new Qm,l=0,i=0,a=new md(t.e.b);a.a=c.c.c.length?qY((plt(),qGt),VGt):qY((plt(),VGt),VGt),u*=2,a=n.a.g,n.a.g=r.Math.max(a,a+(u-a)),o=n.b.g,n.b.g=r.Math.max(o,o+(u-o)),i=e}else xht(s),Sbt((OG(0,s.c.length),ZR(s.c[0],17)).d.i)||nz(t.o,s)}(t),jlt(o)),Jnt(t.f),a=ZR(Ost(e,J1t),19).a*t.f.a.c.length,Wvt(Yx($x(CR(t.f),a),!1),J2(n,1)),0!=t.d.a.gc()){for(ast(o=J2(n,1),"Flexible Where Space Processing",1),s=ZR(VL(Zj(fH(new AN(null,new DG(t.f.a,16)),new Va),new za)),19).a,l=ZR(VL(Kj(fH(new AN(null,new DG(t.f.a,16)),new qa),new Na)),19).a-s,c=HL(new ny,t.f),f=HL(new ny,t.f),cpt(Dk(Ik(Ok(Rk(new ey,2e4),l),c),f)),Ak(uH(uH(YF(t.i),new Ga),new Wa),new yH(s,c,l,f)),i=t.d.a.ec().Kc();i.Ob();)ZR(i.Pb(),213).g=1;Wvt(Yx($x(CR(t.f),a),!1),J2(o,1)),jlt(o)}tx(uI(Ost(e,J0t)))&&(ast(o=J2(n,1),"Straight Edges Post-Processing",1),function(t){var e,n,r;for(C2(n=new Mk,t.o),r=new wy;0!=n.b;)Vwt(t,e=ZR(0==n.b?null:(AO(0!=n.b),XQ(n,n.a.a)),508),!0)&&nz(r.a,e);for(;0!=r.a.c.length;)Vwt(t,e=ZR(j6(r),508),!1)}(t),jlt(o)),function(t){var e,n,r,i,a,o,s,l,c,u,f,h,d,p,g;for(n=new md(t.e.b);n.a0)if(i=f.gc(),c=lq(r.Math.floor((i+1)/2))-1,a=lq(r.Math.ceil((i+1)/2))-1,e.o==w5t)for(u=a;u>=c;u--)e.a[x.p]==x&&(g=ZR(f.Xb(u),46),p=ZR(g.a,10),!vk(n,g.b)&&d>t.b.e[p.p]&&(e.a[p.p]=x,e.g[x.p]=e.g[p.p],e.a[x.p]=e.g[x.p],e.f[e.g[x.p].p]=(TL(),!!(tx(e.f[e.g[x.p].p])&x.k==(plt(),VGt))),d=t.b.e[p.p]));else for(u=c;u<=a;u++)e.a[x.p]==x&&(m=ZR(f.Xb(u),46),v=ZR(m.a,10),!vk(n,m.b)&&d=48&&e<=57))throw um(new px(B_t((qC(),uzt))));for(r=e-48;i=48&&e<=57;)if((r=10*r+e-48)<0)throw um(new px(B_t((qC(),pzt))));if(n=r,44==e){if(i>=t.j)throw um(new px(B_t((qC(),hzt))));if((e=YU(t.i,i++))>=48&&e<=57){for(n=e-48;i=48&&e<=57;)if((n=10*n+e-48)<0)throw um(new px(B_t((qC(),pzt))));if(r>n)throw um(new px(B_t((qC(),dzt))))}else n=-1}if(125!=e)throw um(new px(B_t((qC(),fzt))));t.sl(i)?(R_t(),R_t(),a=new a$(9,a),t.d=i+1):(R_t(),R_t(),a=new a$(3,a),t.d=i),a.dm(r),a.cm(n),k_t(t)}}return a}function u_t(t,e,n,r,i){var a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M;for(p=new mK(e.b),y=new mK(e.b),h=new mK(e.b),_=new mK(e.b),g=new mK(e.b),w=tnt(e,0);w.b!=w.d.c;)for(s=new md((b=ZR(EY(w),11)).g);s.a0,v=b.g.c.length>0,c&&v?h.c[h.c.length]=b:c?p.c[p.c.length]=b:v&&(y.c[y.c.length]=b);for(d=new md(p);d.a1)for(d=new oO((!t.a&&(t.a=new bF(Zie,t,6,6)),t.a));d.e!=d.i.gc();)not(d);for(g=E,E>x+b?g=x+b:Ew+p?v=w+p:Cx-b&&gw-p&&vE+S?k=E+S:xC+_?T=C+_:wE-S&&kC-_&&Tn&&(f=n-1),(h=I+$ht(e,24)*TMt*u-u/2)<0?h=1:h>i&&(h=i-1),Rw(),E0(a=new al,f),C0(a,h),fZ((!s.a&&(s.a=new YP(Wie,s,5)),s.a),a)}function y_t(){y_t=P,L_t(),D1t=jee,R1t=Fee,z1t=Bee,N1t=Uee,F1t=Hee,B1t=Vee,V1t=Gee,G1t=Yee,W1t=$ee,q1t=Wee,Y1t=Xee,X1t=Kee,Z1t=Qee,H1t=qee,I_t(),I1t=eQt,j1t=nQt,U1t=rQt,$1t=iQt,S1t=new zC(Iee,g7(0)),E1t=JJt,C1t=QJt,P1t=tQt,l2t=EQt,t2t=sQt,e2t=uQt,i2t=yQt,n2t=dQt,r2t=gQt,u2t=IQt,c2t=PQt,o2t=TQt,a2t=_Qt,s2t=AQt,t1t=VJt,e1t=qJt,w0t=tJt,_0t=rJt,c1t=new NC(12),l1t=new zC(cee,c1t),v9(),v0t=new zC(Dte,m0t=hne),y1t=new zC(_ee,0),L1t=new zC(Dee,g7(1)),BQt=new zC(wte,OSt),s1t=see,b1t=kee,T1t=Pee,l0t=Ete,jQt=bte,A0t=Fte,O1t=new zC(Nee,(TL(),!0)),L0t=Hte,O0t=Vte,r1t=tee,o1t=aee,i1t=nee,e7(),c0t=new zC(Cte,f0t=ine),X0t=Jte,$0t=Kte,_1t=See,w1t=Aee,k1t=Cee,Jet(),new zC(gee,h1t=are),p1t=yee,g1t=bee,v1t=xee,d1t=mee,Q1t=oQt,q0t=EJt,V0t=AJt,J1t=aQt,j0t=yJt,s0t=BZt,o0t=jZt,JQt=kZt,QQt=TZt,e0t=CZt,t0t=MZt,a0t=zZt,W0t=PJt,Y0t=LJt,D0t=fJt,n1t=$Jt,Z0t=RJt,T0t=oJt,Q0t=UJt,b0t=KZt,x0t=JZt,ZQt=Ate,K0t=OJt,qQt=hZt,VQt=uZt,HQt=cZt,E0t=cJt,S0t=lJt,C0t=uJt,a1t=ree,R0t=Wte,k0t=zte,p0t=Ote,d0t=Lte,n0t=OZt,x1t=Mee,UQt=Mte,P0t=Ute,m1t=wee,u1t=fee,f1t=dee,B0t=wJt,U0t=kJt,A1t=Oee,FQt=lZt,H0t=MJt,g0t=WZt,h0t=qZt,G0t=$te,z0t=gJt,J0t=jJt,K1t=Zee,u0t=HZt,M1t=KJt,y0t=$Zt,N0t=mJt,r0t=DZt,I0t=Gte,F0t=xJt,i0t=RZt,KQt=wZt,$Qt=yZt,WQt=vZt,YQt=mZt,XQt=xZt,GQt=pZt,M0t=sJt}function b_t(t,e){var n,r,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S,E;if(hbt(),T=t.e,p=t.d,i=t.a,0==T)switch(e){case 0:return"0";case 1:return fMt;case 2:return"0.00";case 3:return"0.000";case 4:return"0.0000";case 5:return"0.00000";case 6:return"0.000000";default:return(_=new Lx).a+=e<0?"0E+":"0E",_.a+=-e,_.a}if(x=XK($le,fTt,25,(b=10*p+1+7)+1,15,1),n=b,1==p)if((s=i[0])<0){E=qG(s,cMt);do{g=E,E=Hat(E,10),x[--n]=48+$N(t9(g,n9(E,10)))&dTt}while(0!=w8(E,0))}else{E=s;do{g=E,E=E/10|0,x[--n]=g-10*E+48&dTt}while(0!=E)}else{fbt(i,0,A=XK(Xle,STt,25,p,15,1),0,S=p);t:for(;;){for(k=0,c=S-1;c>=0;c--)m=Yot(e9(qj(k,32),qG(A[c],cMt))),A[c]=$N(m),k=$N(Gj(m,32));y=$N(k),v=n;do{x[--n]=48+y%10&dTt}while(0!=(y=y/10|0)&&0!=n);for(r=9-v+n,l=0;l0;l++)x[--n]=48;for(f=S-1;0==A[f];f--)if(0==f)break t;S=f+1}for(;48==x[n];)++n}if(d=T<0,o=b-n-e-1,0==e)return d&&(x[--n]=45),Xtt(x,n,b-n);if(e>0&&o>=-6){if(o>=0){for(u=n+o,h=b-1;h>=u;h--)x[h+1]=x[h];return x[++u]=46,d&&(x[--n]=45),Xtt(x,n,b-n+1)}for(f=2;f<1-o;f++)x[--n]=48;return x[--n]=46,x[--n]=48,d&&(x[--n]=45),Xtt(x,n,b-n)}return M=n+1,a=b,w=new Ox,d&&(w.a+="-"),a-M>=1?(FB(w,x[n]),w.a+=".",w.a+=Xtt(x,n+1,b-n-1)):w.a+=Xtt(x,n,b-n),w.a+="E",o>0&&(w.a+="+"),w.a+=""+o,w.a}function x_t(t,e){var n,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w;switch(t.c=e,t.g=new im,gT(),N9(new Kd(new Yb(t.c))),y=hI(kht(t.c,(Nst(),L7t))),s=ZR(kht(t.c,I7t),316),x=ZR(kht(t.c,D7t),429),a=ZR(kht(t.c,A7t),482),b=ZR(kht(t.c,O7t),430),t.j=ex(fI(kht(t.c,R7t))),o=t.a,s.g){case 0:o=t.a;break;case 1:o=t.b;break;case 2:o=t.i;break;case 3:o=t.e;break;case 4:o=t.f;break;default:throw um(new Kb(ZOt+(null!=s.f?s.f:""+s.g)))}if(t.d=new gq(o,x,a),d4(t.d,(x3(),dVt),uI(kht(t.c,E7t))),t.d.c=tx(uI(kht(t.c,S7t))),0==sV(t.c).i)return t.d;for(u=new WP(sV(t.c));u.e!=u.i.gc();){for(h=(c=ZR(fnt(u),33)).g/2,f=c.f/2,w=new KA(c.i+h,c.j+f);SF(t.g,w);)OO(w,(r.Math.random()-.5)*CSt,(r.Math.random()-.5)*CSt);p=ZR(kht(c,(L_t(),$te)),142),g=new nG(w,new bH(w.a-h-t.j/2-p.b,w.b-f-t.j/2-p.d,c.g+t.j+(p.b+p.c),c.f+t.j+(p.d+p.a))),nz(t.d.i,g),RU(t.g,w,new bS(g,c))}switch(b.g){case 0:if(null==y)t.d.d=ZR(TN(t.d.i,0),65);else for(m=new md(t.d.i);m.a1&&X$(f,y,f.c.b,f.c),UQ(a)));y=b}return f}function __t(t,e){var n,r,i,a,o,s,l,c,u,f,h,d,p,g,v,m;for(r=new rm,s=new rm,v=e/2,d=t.gc(),i=ZR(t.Xb(0),8),m=ZR(t.Xb(1),8),nz(r,(OG(0,(p=_ht(i.a,i.b,m.a,m.b,v)).c.length),ZR(p.c[0],8))),nz(s,(OG(1,p.c.length),ZR(p.c[1],8))),c=2;c=0;l--)jz(n,(OG(l,o.c.length),ZR(o.c[l],8)));return n}function k_t(t){var e,n,r;if(t.d>=t.j)return t.a=-1,void(t.c=1);if(e=YU(t.i,t.d++),t.a=e,1!=t.b){switch(e){case 124:r=2;break;case 42:r=3;break;case 43:r=4;break;case 63:r=5;break;case 41:r=7;break;case 46:r=8;break;case 91:r=9;break;case 94:r=11;break;case 36:r=12;break;case 40:if(r=6,t.d>=t.j)break;if(63!=YU(t.i,t.d))break;if(++t.d>=t.j)throw um(new px(B_t((qC(),DRt))));switch(e=YU(t.i,t.d++)){case 58:r=13;break;case 61:r=14;break;case 33:r=15;break;case 91:r=19;break;case 62:r=18;break;case 60:if(t.d>=t.j)throw um(new px(B_t((qC(),DRt))));if(61==(e=YU(t.i,t.d++)))r=16;else{if(33!=e)throw um(new px(B_t((qC(),RRt))));r=17}break;case 35:for(;t.d=t.j)throw um(new px(B_t((qC(),IRt))));t.a=YU(t.i,t.d++);break;default:r=0}t.c=r}else{switch(e){case 92:if(r=10,t.d>=t.j)throw um(new px(B_t((qC(),IRt))));t.a=YU(t.i,t.d++);break;case 45:512==(512&t.e)&&t.d=_||!Vtt(y,r))&&(r=MG(e,f)),Jq(y,r),a=new Oj(dL(s9(y).a.Kc(),new u));Kft(a);)i=ZR(wX(a),17),t.a[i.p]||(v=i.c.i,--t.e[v.p],0==t.e[v.p]&&JK(xst(p,v)));for(c=f.c.length-1;c>=0;--c)nz(e.b,(OG(c,f.c.length),ZR(f.c[c],29)));e.a.c=XK(Yjt,akt,1,0,5,1),jlt(n)}else jlt(n)}function M_t(t){var e,n,r,i,a,o,s,l;for(t.b=1,k_t(t),e=null,0==t.c&&94==t.a?(k_t(t),R_t(),R_t(),Ypt(e=new aW(4),0,Tjt),o=new aW(4)):(R_t(),R_t(),o=new aW(4)),i=!0;1!=(l=t.c);){if(0==l&&93==t.a&&!i){e&&(Uxt(e,o),o=e);break}if(n=t.a,r=!1,10==l)switch(n){case 100:case 68:case 119:case 87:case 115:case 83:dbt(o,omt(n)),r=!0;break;case 105:case 73:case 99:case 67:dbt(o,omt(n)),(n=-1)<0&&(r=!0);break;case 112:case 80:if(!(s=Vut(t,n)))throw um(new px(B_t((qC(),YRt))));dbt(o,s),r=!0;break;default:n=Agt(t)}else if(24==l&&!i){if(e&&(Uxt(e,o),o=e),Uxt(o,M_t(t)),0!=t.c||93!=t.a)throw um(new px(B_t((qC(),ZRt))));break}if(k_t(t),!r){if(0==l){if(91==n)throw um(new px(B_t((qC(),JRt))));if(93==n)throw um(new px(B_t((qC(),QRt))));if(45==n&&!i&&93!=t.a)throw um(new px(B_t((qC(),tzt))))}if(0!=t.c||45!=t.a||45==n&&i)Ypt(o,n,n);else{if(k_t(t),1==(l=t.c))throw um(new px(B_t((qC(),XRt))));if(0==l&&93==t.a)Ypt(o,n,n),Ypt(o,45,45);else{if(0==l&&93==t.a||24==l)throw um(new px(B_t((qC(),tzt))));if(a=t.a,0==l){if(91==a)throw um(new px(B_t((qC(),JRt))));if(93==a)throw um(new px(B_t((qC(),QRt))));if(45==a)throw um(new px(B_t((qC(),tzt))))}else 10==l&&(a=Agt(t));if(k_t(t),n>a)throw um(new px(B_t((qC(),rzt))));Ypt(o,n,a)}}}i=!1}if(1==t.c)throw um(new px(B_t((qC(),XRt))));return zht(o),Rbt(o),t.b=0,k_t(t),o}function A_t(){A_t=P,p_t(),Zut(DGt=new QV,(Pwt(),Lre),Pre),Zut(DGt,Ure,Pre),Zut(DGt,Ore,Pre),Zut(DGt,jre,Pre),Zut(DGt,Nre,Pre),Zut(DGt,Rre,Pre),Zut(DGt,jre,Lre),Zut(DGt,Pre,Are),Zut(DGt,Lre,Are),Zut(DGt,Ure,Are),Zut(DGt,Ore,Are),Zut(DGt,zre,Are),Zut(DGt,jre,Are),Zut(DGt,Nre,Are),Zut(DGt,Rre,Are),Zut(DGt,Cre,Are),Zut(DGt,Pre,Fre),Zut(DGt,Lre,Fre),Zut(DGt,Are,Fre),Zut(DGt,Ure,Fre),Zut(DGt,Ore,Fre),Zut(DGt,zre,Fre),Zut(DGt,jre,Fre),Zut(DGt,Cre,Fre),Zut(DGt,Bre,Fre),Zut(DGt,Nre,Fre),Zut(DGt,Ire,Fre),Zut(DGt,Rre,Fre),Zut(DGt,Lre,Ure),Zut(DGt,Ore,Ure),Zut(DGt,jre,Ure),Zut(DGt,Rre,Ure),Zut(DGt,Lre,Ore),Zut(DGt,Ure,Ore),Zut(DGt,jre,Ore),Zut(DGt,Ore,Ore),Zut(DGt,Nre,Ore),Zut(DGt,Pre,Sre),Zut(DGt,Lre,Sre),Zut(DGt,Are,Sre),Zut(DGt,Fre,Sre),Zut(DGt,Ure,Sre),Zut(DGt,Ore,Sre),Zut(DGt,zre,Sre),Zut(DGt,jre,Sre),Zut(DGt,Bre,Sre),Zut(DGt,Cre,Sre),Zut(DGt,Rre,Sre),Zut(DGt,Nre,Sre),Zut(DGt,Dre,Sre),Zut(DGt,Pre,Bre),Zut(DGt,Lre,Bre),Zut(DGt,Are,Bre),Zut(DGt,Ure,Bre),Zut(DGt,Ore,Bre),Zut(DGt,zre,Bre),Zut(DGt,jre,Bre),Zut(DGt,Cre,Bre),Zut(DGt,Rre,Bre),Zut(DGt,Ire,Bre),Zut(DGt,Dre,Bre),Zut(DGt,Lre,Cre),Zut(DGt,Ure,Cre),Zut(DGt,Ore,Cre),Zut(DGt,jre,Cre),Zut(DGt,Bre,Cre),Zut(DGt,Rre,Cre),Zut(DGt,Nre,Cre),Zut(DGt,Pre,Ere),Zut(DGt,Lre,Ere),Zut(DGt,Are,Ere),Zut(DGt,Ure,Ere),Zut(DGt,Ore,Ere),Zut(DGt,zre,Ere),Zut(DGt,jre,Ere),Zut(DGt,Cre,Ere),Zut(DGt,Rre,Ere),Zut(DGt,Lre,Nre),Zut(DGt,Are,Nre),Zut(DGt,Fre,Nre),Zut(DGt,Ore,Nre),Zut(DGt,Pre,Ire),Zut(DGt,Lre,Ire),Zut(DGt,Fre,Ire),Zut(DGt,Ure,Ire),Zut(DGt,Ore,Ire),Zut(DGt,zre,Ire),Zut(DGt,jre,Ire),Zut(DGt,jre,Dre),Zut(DGt,Ore,Dre),Zut(DGt,Cre,Pre),Zut(DGt,Cre,Ure),Zut(DGt,Cre,Are),Zut(DGt,zre,Pre),Zut(DGt,zre,Lre),Zut(DGt,zre,Fre)}function S_t(t,e){switch(t.e){case 0:case 2:case 4:case 6:case 42:case 44:case 46:case 48:case 8:case 10:case 12:case 14:case 16:case 18:case 20:case 22:case 24:case 26:case 28:case 30:case 32:case 34:case 36:case 38:return new nV(t.b,t.a,e,t.c);case 1:return new $P(t.a,e,ett(e.Tg(),t.c));case 43:return new KP(t.a,e,ett(e.Tg(),t.c));case 3:return new YP(t.a,e,ett(e.Tg(),t.c));case 45:return new XP(t.a,e,ett(e.Tg(),t.c));case 41:return new xZ(ZR(hat(t.c),26),t.a,e,ett(e.Tg(),t.c));case 50:return new _1(ZR(hat(t.c),26),t.a,e,ett(e.Tg(),t.c));case 5:return new TD(t.a,e,ett(e.Tg(),t.c),t.d.n);case 47:return new MD(t.a,e,ett(e.Tg(),t.c),t.d.n);case 7:return new bF(t.a,e,ett(e.Tg(),t.c),t.d.n);case 49:return new kD(t.a,e,ett(e.Tg(),t.c),t.d.n);case 9:return new eL(t.a,e,ett(e.Tg(),t.c));case 11:return new tL(t.a,e,ett(e.Tg(),t.c));case 13:return new QP(t.a,e,ett(e.Tg(),t.c));case 15:return new Cz(t.a,e,ett(e.Tg(),t.c));case 17:return new nL(t.a,e,ett(e.Tg(),t.c));case 19:return new JP(t.a,e,ett(e.Tg(),t.c));case 21:return new ZP(t.a,e,ett(e.Tg(),t.c));case 23:return new Tz(t.a,e,ett(e.Tg(),t.c));case 25:return new OD(t.a,e,ett(e.Tg(),t.c),t.d.n);case 27:return new LD(t.a,e,ett(e.Tg(),t.c),t.d.n);case 29:return new CD(t.a,e,ett(e.Tg(),t.c),t.d.n);case 31:return new AD(t.a,e,ett(e.Tg(),t.c),t.d.n);case 33:return new PD(t.a,e,ett(e.Tg(),t.c),t.d.n);case 35:return new ED(t.a,e,ett(e.Tg(),t.c),t.d.n);case 37:return new SD(t.a,e,ett(e.Tg(),t.c),t.d.n);case 39:return new xF(t.a,e,ett(e.Tg(),t.c),t.d.n);case 40:return new n3(e,ett(e.Tg(),t.c));default:throw um(new Eb("Unknown feature style: "+t.e))}}function E_t(t,e,n){var i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_;switch(ast(n,"Brandes & Koepf node placement",1),t.a=e,t.c=lyt(e),i=ZR(Ost(e,(y_t(),Z0t)),274),p=tx(uI(Ost(e,J0t))),t.d=i==(Xat(),hXt)&&!p||i==cXt,function(t,e){var n,r,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b;if(!((g=e.b.c.length)<3)){for(d=XK(Xle,STt,25,g,15,1),f=0,u=new md(e.b);u.ao)&&FF(t.b,ZR(v.b,17));++s}a=o}}}(t,e),w=null,_=null,m=null,y=null,v1(4,$kt),v=new mK(4),ZR(Ost(e,Z0t),274).g){case 3:m=new Vvt(e,t.c.d,(Nq(),x5t),(JV(),m5t)),v.c[v.c.length]=m;break;case 1:y=new Vvt(e,t.c.d,(Nq(),w5t),(JV(),m5t)),v.c[v.c.length]=y;break;case 4:w=new Vvt(e,t.c.d,(Nq(),x5t),(JV(),y5t)),v.c[v.c.length]=w;break;case 2:_=new Vvt(e,t.c.d,(Nq(),w5t),(JV(),y5t)),v.c[v.c.length]=_;break;default:m=new Vvt(e,t.c.d,(Nq(),x5t),(JV(),m5t)),y=new Vvt(e,t.c.d,w5t,m5t),w=new Vvt(e,t.c.d,x5t,y5t),_=new Vvt(e,t.c.d,w5t,y5t),v.c[v.c.length]=w,v.c[v.c.length]=_,v.c[v.c.length]=m,v.c[v.c.length]=y}for(a=new wA(e,t.c),l=new md(v);l.ak[c]&&(g=c),f=new md(t.a.b);f.aOht(o))&&(h=o);for(!h&&(OG(0,v.c.length),h=ZR(v.c[0],180)),g=new md(e.b);g.a=-1900?1:0,xE(t,n>=4?R5(qx(iBt,1),Akt,2,6,[ETt,CTt])[s]:R5(qx(iBt,1),Akt,2,6,["BC","AD"])[s]);break;case 121:!function(t,e,n){var r;switch((r=n.q.getFullYear()-ATt+ATt)<0&&(r=-r),e){case 1:t.a+=r;break;case 2:eQ(t,r%100,2);break;default:eQ(t,r,e)}}(t,n,i);break;case 77:!function(t,e,n){var r;switch(r=n.q.getMonth(),e){case 5:xE(t,R5(qx(iBt,1),Akt,2,6,["J","F","M","A","M","J","J","A","S","O","N","D"])[r]);break;case 4:xE(t,R5(qx(iBt,1),Akt,2,6,[pTt,gTt,vTt,mTt,yTt,bTt,xTt,wTt,_Tt,kTt,TTt,MTt])[r]);break;case 3:xE(t,R5(qx(iBt,1),Akt,2,6,["Jan","Feb","Mar","Apr",yTt,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"])[r]);break;default:eQ(t,r+1,e)}}(t,n,i);break;case 107:eQ(t,0==(l=a.q.getHours())?24:l,n);break;case 83:!function(t,e,n){var i,a;w8(i=z3(n.q.getTime()),0)<0?(a=hTt-$N(Att(cJ(i),hTt)))==hTt&&(a=0):a=$N(Att(i,hTt)),1==e?FB(t,48+(a=r.Math.min((a+50)/100|0,9))&dTt):2==e?eQ(t,a=r.Math.min((a+5)/10|0,99),2):(eQ(t,a,3),e>3&&eQ(t,0,e-3))}(t,n,a);break;case 69:c=i.q.getDay(),xE(t,5==n?R5(qx(iBt,1),Akt,2,6,["S","M","T","W","T","F","S"])[c]:4==n?R5(qx(iBt,1),Akt,2,6,[PTt,LTt,OTt,ITt,DTt,RTt,zTt])[c]:R5(qx(iBt,1),Akt,2,6,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"])[c]);break;case 97:a.q.getHours()>=12&&a.q.getHours()<24?xE(t,R5(qx(iBt,1),Akt,2,6,["AM","PM"])[1]):xE(t,R5(qx(iBt,1),Akt,2,6,["AM","PM"])[0]);break;case 104:eQ(t,0==(u=a.q.getHours()%12)?12:u,n);break;case 75:eQ(t,a.q.getHours()%12,n);break;case 72:eQ(t,a.q.getHours(),n);break;case 99:f=i.q.getDay(),5==n?xE(t,R5(qx(iBt,1),Akt,2,6,["S","M","T","W","T","F","S"])[f]):4==n?xE(t,R5(qx(iBt,1),Akt,2,6,[PTt,LTt,OTt,ITt,DTt,RTt,zTt])[f]):3==n?xE(t,R5(qx(iBt,1),Akt,2,6,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"])[f]):eQ(t,f,1);break;case 76:h=i.q.getMonth(),5==n?xE(t,R5(qx(iBt,1),Akt,2,6,["J","F","M","A","M","J","J","A","S","O","N","D"])[h]):4==n?xE(t,R5(qx(iBt,1),Akt,2,6,[pTt,gTt,vTt,mTt,yTt,bTt,xTt,wTt,_Tt,kTt,TTt,MTt])[h]):3==n?xE(t,R5(qx(iBt,1),Akt,2,6,["Jan","Feb","Mar","Apr",yTt,"Jun","Jul","Aug","Sep","Oct","Nov","Dec"])[h]):eQ(t,h+1,n);break;case 81:d=i.q.getMonth()/3|0,xE(t,n<4?R5(qx(iBt,1),Akt,2,6,["Q1","Q2","Q3","Q4"])[d]:R5(qx(iBt,1),Akt,2,6,["1st quarter","2nd quarter","3rd quarter","4th quarter"])[d]);break;case 100:eQ(t,i.q.getDate(),n);break;case 109:eQ(t,a.q.getMinutes(),n);break;case 115:eQ(t,a.q.getSeconds(),n);break;case 122:xE(t,n<4?o.c[0]:o.c[1]);break;case 118:xE(t,o.b);break;case 90:xE(t,n<3?function(t){var e,n;return n=-t.a,e=R5(qx($le,1),fTt,25,15,[43,48,48,48,48]),n<0&&(e[0]=45,n=-n),e[1]=e[1]+((n/60|0)/10|0)&dTt,e[2]=e[2]+(n/60|0)%10&dTt,e[3]=e[3]+(n%60/10|0)&dTt,e[4]=e[4]+n%10&dTt,Xtt(e,0,e.length)}(o):3==n?function(t){var e,n;return n=-t.a,e=R5(qx($le,1),fTt,25,15,[43,48,48,58,48,48]),n<0&&(e[0]=45,n=-n),e[1]=e[1]+((n/60|0)/10|0)&dTt,e[2]=e[2]+(n/60|0)%10&dTt,e[4]=e[4]+(n%60/10|0)&dTt,e[5]=e[5]+n%10&dTt,Xtt(e,0,e.length)}(o):function(t){var e;return e=R5(qx($le,1),fTt,25,15,[71,77,84,45,48,48,58,48,48]),t<=0&&(e[3]=43,t=-t),e[4]=e[4]+((t/60|0)/10|0)&dTt,e[5]=e[5]+(t/60|0)%10&dTt,e[7]=e[7]+(t%60/10|0)&dTt,e[8]=e[8]+t%10&dTt,Xtt(e,0,e.length)}(o.a));break;default:return!1}return!0}function P_t(t,e,n,r){var i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S,E;if(mvt(e),l=ZR(a0((!e.b&&(e.b=new LD(Xie,e,4,7)),e.b),0),82),u=ZR(a0((!e.c&&(e.c=new LD(Xie,e,5,8)),e.c),0),82),s=ist(l),c=ist(u),o=0==(!e.a&&(e.a=new bF(Zie,e,6,6)),e.a).i?null:ZR(a0((!e.a&&(e.a=new bF(Zie,e,6,6)),e.a),0),202),_=ZR(UB(t.a,s),10),A=ZR(UB(t.a,c),10),k=null,S=null,CP(l,186)&&(CP(w=ZR(UB(t.a,l),299),11)?k=ZR(w,11):CP(w,10)&&(_=ZR(w,10),k=ZR(TN(_.j,0),11))),CP(u,186)&&(CP(M=ZR(UB(t.a,u),299),11)?S=ZR(M,11):CP(M,10)&&(A=ZR(M,10),S=ZR(TN(A.j,0),11))),!_||!A)throw um(new dx("The source or the target of edge "+e+" could not be found. This usually happens when an edge connects a node laid out by ELK Layered to a node in another level of hierarchy laid out by either another instance of ELK Layered or another layout algorithm alltogether. The former can be solved by setting the hierarchyHandling option to INCLUDE_CHILDREN."));for(l5(g=new _V,e),d4(g,(O_t(),LKt),e),d4(g,(y_t(),R0t),null),d=ZR(Ost(r,gKt),21),_==A&&d.Fc((igt(),DXt)),k||(u1(),x=a3t,T=null,o&&gC(ZR(Ost(_,b1t),98))&&(YY(T=new KA(o.j,o.k),kq(e)),W$(T,n),YQ(c,s)&&(x=i3t,bD(T,_.n))),k=mbt(_,T,x,r)),S||(u1(),x=i3t,E=null,o&&gC(ZR(Ost(A,b1t),98))&&(YY(E=new KA(o.b,o.c),kq(e)),W$(E,n)),S=mbt(A,E,x,gU(A))),Zq(g,k),Kq(g,S),(k.e.c.length>1||k.g.c.length>1||S.e.c.length>1||S.g.c.length>1)&&d.Fc((igt(),CXt)),h=new WP((!e.n&&(e.n=new bF(nae,e,1,7)),e.n));h.e!=h.i.gc();)if(!tx(uI(kht(f=ZR(fnt(h),137),s1t)))&&f.a)switch(v=g8(f),nz(g.b,v),ZR(Ost(v,p0t),272).g){case 1:case 2:d.Fc((igt(),SXt));break;case 0:d.Fc((igt(),MXt)),d4(v,p0t,(QQ(),sne))}if(a=ZR(Ost(r,o0t),314),m=ZR(Ost(r,n1t),315),i=a==(P1(),M$t)||m==(srt(),I2t),o&&0!=(!o.a&&(o.a=new YP(Wie,o,5)),o.a).i&&i){for(y=Flt(o),p=new Dy,b=tnt(y,0);b.b!=b.d.c;)jz(p,new fC(ZR(EY(b),8)));d4(g,OKt,p)}return g}function L_t(){var t,e;L_t=P,yte=new Pv(LIt),Ree=new Pv(OIt),qnt(),bte=new BE(fLt,xte=q9t),new em,wte=new BE(hSt,null),_te=new Pv(IIt),vot(),Ste=ej(vte,R5(qx(tne,1),Xkt,291,0,[hte])),Ate=new BE(TLt,Ste),Ete=new BE(uLt,(TL(),!1)),e7(),Cte=new BE(gLt,Pte=ine),v9(),Dte=new BE(NPt,Rte=gne),jte=new BE($Ot,!1),P8(),Fte=new BE(OPt,Bte=Rne),uee=new NC(12),cee=new BE(dSt,uee),qte=new BE(FSt,!1),Gte=new BE(zLt,!1),lee=new BE(HSt,!1),jot(),kee=new BE(BSt,Tee=dre),Oee=new Pv(ILt),Iee=new Pv(DSt),Dee=new Pv(NSt),Nee=new Pv(jSt),Yte=new Dy,Wte=new BE(MLt,Yte),Mte=new BE(ELt,!1),Ute=new BE(CLt,!1),new Pv(DIt),Xte=new My,$te=new BE(DLt,Xte),see=new BE(lLt,!1),new em,zee=new BE(RIt,1),new BE(zIt,!0),g7(0),new BE(NIt,g7(100)),new BE(jIt,!1),g7(0),new BE(FIt,g7(4e3)),g7(0),new BE(BIt,g7(400)),new BE(UIt,!1),new BE(HIt,!1),new BE(VIt,!0),new BE(qIt,!1),stt(),kte=new BE(PIt,Tte=bie),jee=new BE(KPt,10),Fee=new BE(ZPt,10),Bee=new BE(uSt,20),Uee=new BE(JPt,10),Hee=new BE(zSt,2),Vee=new BE(QPt,10),Gee=new BE(tLt,0),Wee=new BE(rLt,5),Yee=new BE(eLt,1),$ee=new BE(nLt,1),Xee=new BE(RSt,20),Kee=new BE(iLt,10),Qee=new BE(aLt,10),qee=new Pv(oLt),Jee=new cC,Zee=new BE(RLt,Jee),dee=new Pv(OLt),fee=new BE(LLt,hee=!1),Zte=new NC(5),Kte=new BE(vLt,Zte),Tht(),e=ZR(Lw(ore),9),Qte=new aR(e,ZR(nD(e,e.length),9),0),Jte=new BE(GSt,Qte),Jet(),gee=new BE(bLt,vee=rre),yee=new Pv(xLt),bee=new Pv(wLt),xee=new Pv(_Lt),mee=new Pv(kLt),t=ZR(Lw(die),9),eee=new aR(t,ZR(nD(t,t.length),9),0),tee=new BE(qSt,eee),oee=J7((Zvt(),oie)),aee=new BE(VSt,oee),iee=new KA(0,0),ree=new BE(iEt,iee),nee=new BE(pLt,!1),QQ(),Ote=new BE(ALt,Ite=sne),Lte=new BE(USt,!1),new Pv(GIt),g7(1),new BE(WIt,null),wee=new Pv(PLt),Mee=new Pv(SLt),Pwt(),Pee=new BE(cLt,Lee=Vre),_ee=new Pv(sLt),Put(),Eee=J7(xre),See=new BE(WSt,Eee),Aee=new BE(mLt,!1),Cee=new BE(yLt,!0),Hte=new BE(hLt,!1),Vte=new BE(dLt,!1),zte=new BE(fSt,1),bst(),new BE(YIt,Nte=_ne),pee=!0}function O_t(){var t,e;O_t=P,LKt=new Pv(YSt),nKt=new Pv("coordinateOrigin"),UKt=new Pv("processors"),eKt=new FI("compoundNode",(TL(),!1)),yKt=new FI("insideConnections",!1),OKt=new Pv("originalBendpoints"),IKt=new Pv("originalDummyNodePosition"),DKt=new Pv("originalLabelEdge"),VKt=new Pv("representedLabels"),sKt=new Pv("endLabels"),lKt=new Pv("endLabel.origin"),kKt=new FI("labelSide",(Uit(),Une)),CKt=new FI("maxEdgeThickness",0),qKt=new FI("reversed",!1),HKt=new Pv($St),AKt=new FI("longEdgeSource",null),SKt=new FI("longEdgeTarget",null),MKt=new FI("longEdgeHasLabelDummies",!1),TKt=new FI("longEdgeBeforeLabelDummy",!1),oKt=new FI("edgeConstraint",(r4(),Y$t)),xKt=new Pv("inLayerLayoutUnit"),bKt=new FI("inLayerConstraint",(LJ(),VXt)),wKt=new FI("inLayerSuccessorConstraint",new rm),_Kt=new FI("inLayerSuccessorConstraintBetweenNonDummies",!1),FKt=new Pv("portDummy"),rKt=new FI("crossingHint",g7(0)),gKt=new FI("graphProperties",new aR(e=ZR(Lw(BXt),9),ZR(nD(e,e.length),9),0)),hKt=new FI("externalPortSide",(Pwt(),Vre)),dKt=new FI("externalPortSize",new Sw),uKt=new Pv("externalPortReplacedDummies"),fKt=new Pv("externalPortReplacedDummy"),cKt=new FI("externalPortConnections",new aR(t=ZR(Lw(Jre),9),ZR(nD(t,t.length),9),0)),BKt=new FI(OAt,0),ZXt=new Pv("barycenterAssociates"),tZt=new Pv("TopSideComments"),JXt=new Pv("BottomSideComments"),tKt=new Pv("CommentConnectionPort"),mKt=new FI("inputCollect",!1),NKt=new FI("outputCollect",!1),aKt=new FI("cyclic",!1),iKt=new Pv("crossHierarchyMap"),QKt=new Pv("targetOffset"),new FI("splineLabelSize",new Sw),YKt=new Pv("spacings"),jKt=new FI("partitionConstraint",!1),QXt=new Pv("breakingPoint.info"),ZKt=new Pv("splines.survivingEdge"),KKt=new Pv("splines.route.start"),$Kt=new Pv("splines.edgeChain"),zKt=new Pv("originalPortConstraints"),WKt=new Pv("selfLoopHolder"),XKt=new Pv("splines.nsPortY"),PKt=new Pv("modelOrder"),EKt=new Pv("longEdgeTargetNode"),pKt=new FI(lCt,!1),GKt=new FI(lCt,!1),vKt=new Pv("layerConstraints.hiddenNodes"),RKt=new Pv("layerConstraints.opposidePort"),JKt=new Pv("targetNode.modelOrder")}function I_t(){I_t=P,fQ(),HZt=new BE(cCt,VZt=H$t),oJt=new BE(uCt,(TL(),!1)),gY(),fJt=new BE(fCt,hJt=YXt),PJt=new BE(hCt,!1),LJt=new BE(dCt,!0),lZt=new BE(pCt,!1),OJ(),KJt=new BE(gCt,ZJt=t3t),g7(1),aQt=new BE(vCt,g7(7)),oQt=new BE(mCt,!1),sJt=new BE(yCt,!1),xrt(),BZt=new BE(bCt,UZt=z$t),est(),EJt=new BE(xCt,CJt=y2t),g9(),yJt=new BE(wCt,bJt=aZt),g7(-1),mJt=new BE(_Ct,g7(-1)),g7(-1),xJt=new BE(kCt,g7(-1)),g7(-1),wJt=new BE(TCt,g7(4)),g7(-1),kJt=new BE(MCt,g7(2)),Udt(),AJt=new BE(ACt,SJt=G2t),g7(0),MJt=new BE(SCt,g7(0)),gJt=new BE(ECt,g7(Q_t)),P1(),jZt=new BE(CCt,FZt=A$t),kZt=new BE(PCt,!1),OZt=new BE(LCt,.1),zZt=new BE(OCt,!1),g7(-1),DZt=new BE(ICt,g7(-1)),g7(-1),RZt=new BE(DCt,g7(-1)),g7(0),TZt=new BE(RCt,g7(40)),i5(),CZt=new BE(zCt,PZt=FXt),MZt=new BE(NCt,AZt=NXt),srt(),$Jt=new BE(jCt,XJt=O2t),jJt=new Pv(FCt),aJ(),OJt=new BE(BCt,IJt=aXt),Xat(),RJt=new BE(UCt,zJt=hXt),new em,UJt=new BE(HCt,.3),VJt=new Pv(VCt),Vnt(),qJt=new BE(qCt,GJt=E2t),g3(),KZt=new BE(GCt,ZZt=u3t),iK(),JZt=new BE(WCt,QZt=g3t),O6(),tJt=new BE(YCt,eJt=w3t),rJt=new BE($Ct,.2),$Zt=new BE(XCt,2),eQt=new BE(KCt,null),rQt=new BE(ZCt,10),nQt=new BE(JCt,10),iQt=new BE(QCt,20),g7(0),JJt=new BE(tPt,g7(0)),g7(0),QJt=new BE(ePt,g7(0)),g7(0),tQt=new BE(nPt,g7(0)),cZt=new BE(rPt,!1),llt(),hZt=new BE(iPt,dZt=wXt),oZ(),uZt=new BE(aPt,fZt=_$t),cJt=new BE(oPt,!1),g7(0),lJt=new BE(sPt,g7(16)),g7(0),uJt=new BE(lPt,g7(5)),B5(),EQt=new BE(cPt,CQt=C3t),sQt=new BE(uPt,10),uQt=new BE(fPt,1),f1(),yQt=new BE(hPt,bQt=O$t),dQt=new Pv(dPt),vQt=g7(1),g7(0),gQt=new BE(pPt,vQt),X2(),IQt=new BE(gPt,DQt=k3t),PQt=new Pv(vPt),TQt=new BE(mPt,!0),_Qt=new BE(yPt,2),AQt=new BE(bPt,!0),ylt(),WZt=new BE(xPt,YZt=eXt),yct(),qZt=new BE(wPt,GZt=v$t),w4(),wZt=new BE(_Pt,_Zt=K2t),xZt=new BE(kPt,!1),n7(),pZt=new BE(TPt,gZt=LGt),r8(),yZt=new BE(MPt,bZt=w2t),vZt=new BE(APt,0),mZt=new BE(SPt,0),pJt=j$t,dJt=M$t,_Jt=m2t,TJt=m2t,vJt=p2t,P8(),IZt=Dne,NZt=A$t,LZt=A$t,SZt=A$t,EZt=Dne,FJt=R2t,BJt=O2t,DJt=O2t,NJt=O2t,HJt=D2t,YJt=R2t,WJt=R2t,v9(),nJt=pne,iJt=pne,aJt=w3t,XZt=dne,lQt=P3t,cQt=E3t,fQt=P3t,hQt=E3t,xQt=P3t,wQt=E3t,pQt=L$t,mQt=O$t,RQt=P3t,zQt=E3t,LQt=P3t,OQt=E3t,MQt=E3t,kQt=E3t,SQt=E3t}function D_t(){D_t=P,wWt=new yM("DIRECTION_PREPROCESSOR",0),yWt=new yM("COMMENT_PREPROCESSOR",1),_Wt=new yM("EDGE_AND_LAYER_CONSTRAINT_EDGE_REVERSER",2),jWt=new yM("INTERACTIVE_EXTERNAL_PORT_POSITIONER",3),rYt=new yM("PARTITION_PREPROCESSOR",4),HWt=new yM("LABEL_DUMMY_INSERTER",5),cYt=new yM("SELF_LOOP_PREPROCESSOR",6),YWt=new yM("LAYER_CONSTRAINT_PREPROCESSOR",7),eYt=new yM("PARTITION_MIDPROCESSOR",8),IWt=new yM("HIGH_DEGREE_NODE_LAYER_PROCESSOR",9),ZWt=new yM("NODE_PROMOTION",10),WWt=new yM("LAYER_CONSTRAINT_POSTPROCESSOR",11),nYt=new yM("PARTITION_POSTPROCESSOR",12),CWt=new yM("HIERARCHICAL_PORT_CONSTRAINT_PROCESSOR",13),fYt=new yM("SEMI_INTERACTIVE_CROSSMIN_PROCESSOR",14),hWt=new yM("BREAKING_POINT_INSERTER",15),KWt=new yM("LONG_EDGE_SPLITTER",16),aYt=new yM("PORT_SIDE_PROCESSOR",17),FWt=new yM("INVERTED_PORT_PROCESSOR",18),iYt=new yM("PORT_LIST_SORTER",19),dYt=new yM("SORT_BY_INPUT_ORDER_OF_MODEL",20),QWt=new yM("NORTH_SOUTH_PORT_PREPROCESSOR",21),dWt=new yM("BREAKING_POINT_PROCESSOR",22),tYt=new yM(BEt,23),pYt=new yM(UEt,24),sYt=new yM("SELF_LOOP_PORT_RESTORER",25),hYt=new yM("SINGLE_EDGE_GRAPH_WRAPPER",26),BWt=new yM("IN_LAYER_CONSTRAINT_PROCESSOR",27),AWt=new yM("END_NODE_PORT_LABEL_MANAGEMENT_PROCESSOR",28),UWt=new yM("LABEL_AND_NODE_SIZE_PROCESSOR",29),NWt=new yM("INNERMOST_NODE_MARGIN_CALCULATOR",30),uYt=new yM("SELF_LOOP_ROUTER",31),vWt=new yM("COMMENT_NODE_MARGIN_CALCULATOR",32),TWt=new yM("END_LABEL_PREPROCESSOR",33),qWt=new yM("LABEL_DUMMY_SWITCHER",34),gWt=new yM("CENTER_LABEL_MANAGEMENT_PROCESSOR",35),GWt=new yM("LABEL_SIDE_SELECTOR",36),RWt=new yM("HYPEREDGE_DUMMY_MERGER",37),PWt=new yM("HIERARCHICAL_PORT_DUMMY_SIZE_PROCESSOR",38),$Wt=new yM("LAYER_SIZE_AND_GRAPH_HEIGHT_CALCULATOR",39),OWt=new yM("HIERARCHICAL_PORT_POSITION_PROCESSOR",40),bWt=new yM("CONSTRAINTS_POSTPROCESSOR",41),mWt=new yM("COMMENT_POSTPROCESSOR",42),zWt=new yM("HYPERNODE_PROCESSOR",43),LWt=new yM("HIERARCHICAL_PORT_ORTHOGONAL_EDGE_ROUTER",44),XWt=new yM("LONG_EDGE_JOINER",45),lYt=new yM("SELF_LOOP_POSTPROCESSOR",46),pWt=new yM("BREAKING_POINT_REMOVER",47),JWt=new yM("NORTH_SOUTH_PORT_POSTPROCESSOR",48),DWt=new yM("HORIZONTAL_COMPACTOR",49),VWt=new yM("LABEL_DUMMY_REMOVER",50),SWt=new yM("FINAL_SPLINE_BENDPOINTS_CALCULATOR",51),MWt=new yM("END_LABEL_SORTER",52),oYt=new yM("REVERSED_EDGE_RESTORER",53),kWt=new yM("END_LABEL_POSTPROCESSOR",54),EWt=new yM("HIERARCHICAL_NODE_RESIZER",55),xWt=new yM("DIRECTION_POSTPROCESSOR",56)}function R_t(){R_t=P,Mle=new tm(7),Ale=new UN(8,94),new UN(8,64),Sle=new UN(8,36),Ile=new UN(8,65),Dle=new UN(8,122),Rle=new UN(8,90),jle=new UN(8,98),Lle=new UN(8,66),zle=new UN(8,60),Fle=new UN(8,62),Tle=new tm(11),Ypt(kle=new aW(4),48,57),Ypt(Nle=new aW(4),48,57),Ypt(Nle,65,90),Ypt(Nle,95,95),Ypt(Nle,97,122),Ypt(Ole=new aW(4),9,9),Ypt(Ole,10,10),Ypt(Ole,12,12),Ypt(Ole,13,13),Ypt(Ole,32,32),Ele=nyt(kle),Ple=nyt(Nle),Cle=nyt(Ole),ble=new im,xle=new im,wle=R5(qx(iBt,1),Akt,2,6,["Cn","Lu","Ll","Lt","Lm","Lo","Mn","Me","Mc","Nd","Nl","No","Zs","Zl","Zp","Cc","Cf",null,"Co","Cs","Pd","Ps","Pe","Pc","Po","Sm","Sc","Sk","So","Pi","Pf","L","M","N","Z","C","P","S"]),yle=R5(qx(iBt,1),Akt,2,6,["Basic Latin","Latin-1 Supplement","Latin Extended-A","Latin Extended-B","IPA Extensions","Spacing Modifier Letters","Combining Diacritical Marks","Greek","Cyrillic","Armenian","Hebrew","Arabic","Syriac","Thaana","Devanagari","Bengali","Gurmukhi","Gujarati","Oriya","Tamil","Telugu","Kannada","Malayalam","Sinhala","Thai","Lao","Tibetan","Myanmar","Georgian","Hangul Jamo","Ethiopic","Cherokee","Unified Canadian Aboriginal Syllabics","Ogham","Runic","Khmer","Mongolian","Latin Extended Additional","Greek Extended","General Punctuation","Superscripts and Subscripts","Currency Symbols","Combining Marks for Symbols","Letterlike Symbols","Number Forms","Arrows","Mathematical Operators","Miscellaneous Technical","Control Pictures","Optical Character Recognition","Enclosed Alphanumerics","Box Drawing","Block Elements","Geometric Shapes","Miscellaneous Symbols","Dingbats","Braille Patterns","CJK Radicals Supplement","Kangxi Radicals","Ideographic Description Characters","CJK Symbols and Punctuation","Hiragana","Katakana","Bopomofo","Hangul Compatibility Jamo","Kanbun","Bopomofo Extended","Enclosed CJK Letters and Months","CJK Compatibility","CJK Unified Ideographs Extension A","CJK Unified Ideographs","Yi Syllables","Yi Radicals","Hangul Syllables",Ijt,"CJK Compatibility Ideographs","Alphabetic Presentation Forms","Arabic Presentation Forms-A","Combining Half Marks","CJK Compatibility Forms","Small Form Variants","Arabic Presentation Forms-B","Specials","Halfwidth and Fullwidth Forms","Old Italic","Gothic","Deseret","Byzantine Musical Symbols","Musical Symbols","Mathematical Alphanumeric Symbols","CJK Unified Ideographs Extension B","CJK Compatibility Ideographs Supplement","Tags"]),_le=R5(qx(Xle,1),STt,25,15,[66304,66351,66352,66383,66560,66639,118784,119039,119040,119295,119808,120831,131072,173782,194560,195103,917504,917631])}function z_t(){z_t=P,qHt=new W2("OUT_T_L",0,(UZ(),dHt),(PJ(),xHt),(JQ(),sHt),sHt,R5(qx(Qjt,1),akt,21,0,[ej((Tht(),Xne),R5(qx(ore,1),Xkt,93,0,[Jne,Gne]))])),VHt=new W2("OUT_T_C",1,hHt,xHt,sHt,lHt,R5(qx(Qjt,1),akt,21,0,[ej(Xne,R5(qx(ore,1),Xkt,93,0,[Jne,qne])),ej(Xne,R5(qx(ore,1),Xkt,93,0,[Jne,qne,Wne]))])),GHt=new W2("OUT_T_R",2,pHt,xHt,sHt,cHt,R5(qx(Qjt,1),akt,21,0,[ej(Xne,R5(qx(ore,1),Xkt,93,0,[Jne,Yne]))])),RHt=new W2("OUT_B_L",3,dHt,_Ht,cHt,sHt,R5(qx(Qjt,1),akt,21,0,[ej(Xne,R5(qx(ore,1),Xkt,93,0,[Kne,Gne]))])),DHt=new W2("OUT_B_C",4,hHt,_Ht,cHt,lHt,R5(qx(Qjt,1),akt,21,0,[ej(Xne,R5(qx(ore,1),Xkt,93,0,[Kne,qne])),ej(Xne,R5(qx(ore,1),Xkt,93,0,[Kne,qne,Wne]))])),zHt=new W2("OUT_B_R",5,pHt,_Ht,cHt,cHt,R5(qx(Qjt,1),akt,21,0,[ej(Xne,R5(qx(ore,1),Xkt,93,0,[Kne,Yne]))])),FHt=new W2("OUT_L_T",6,pHt,_Ht,sHt,sHt,R5(qx(Qjt,1),akt,21,0,[ej(Xne,R5(qx(ore,1),Xkt,93,0,[Gne,Jne,Wne]))])),jHt=new W2("OUT_L_C",7,pHt,wHt,lHt,sHt,R5(qx(Qjt,1),akt,21,0,[ej(Xne,R5(qx(ore,1),Xkt,93,0,[Gne,Zne])),ej(Xne,R5(qx(ore,1),Xkt,93,0,[Gne,Zne,Wne]))])),NHt=new W2("OUT_L_B",8,pHt,xHt,cHt,sHt,R5(qx(Qjt,1),akt,21,0,[ej(Xne,R5(qx(ore,1),Xkt,93,0,[Gne,Kne,Wne]))])),HHt=new W2("OUT_R_T",9,dHt,_Ht,sHt,cHt,R5(qx(Qjt,1),akt,21,0,[ej(Xne,R5(qx(ore,1),Xkt,93,0,[Yne,Jne,Wne]))])),UHt=new W2("OUT_R_C",10,dHt,wHt,lHt,cHt,R5(qx(Qjt,1),akt,21,0,[ej(Xne,R5(qx(ore,1),Xkt,93,0,[Yne,Zne])),ej(Xne,R5(qx(ore,1),Xkt,93,0,[Yne,Zne,Wne]))])),BHt=new W2("OUT_R_B",11,dHt,xHt,cHt,cHt,R5(qx(Qjt,1),akt,21,0,[ej(Xne,R5(qx(ore,1),Xkt,93,0,[Yne,Kne,Wne]))])),OHt=new W2("IN_T_L",12,dHt,_Ht,sHt,sHt,R5(qx(Qjt,1),akt,21,0,[ej($ne,R5(qx(ore,1),Xkt,93,0,[Jne,Gne])),ej($ne,R5(qx(ore,1),Xkt,93,0,[Jne,Gne,Wne]))])),LHt=new W2("IN_T_C",13,hHt,_Ht,sHt,lHt,R5(qx(Qjt,1),akt,21,0,[ej($ne,R5(qx(ore,1),Xkt,93,0,[Jne,qne])),ej($ne,R5(qx(ore,1),Xkt,93,0,[Jne,qne,Wne]))])),IHt=new W2("IN_T_R",14,pHt,_Ht,sHt,cHt,R5(qx(Qjt,1),akt,21,0,[ej($ne,R5(qx(ore,1),Xkt,93,0,[Jne,Yne])),ej($ne,R5(qx(ore,1),Xkt,93,0,[Jne,Yne,Wne]))])),CHt=new W2("IN_C_L",15,dHt,wHt,lHt,sHt,R5(qx(Qjt,1),akt,21,0,[ej($ne,R5(qx(ore,1),Xkt,93,0,[Zne,Gne])),ej($ne,R5(qx(ore,1),Xkt,93,0,[Zne,Gne,Wne]))])),EHt=new W2("IN_C_C",16,hHt,wHt,lHt,lHt,R5(qx(Qjt,1),akt,21,0,[ej($ne,R5(qx(ore,1),Xkt,93,0,[Zne,qne])),ej($ne,R5(qx(ore,1),Xkt,93,0,[Zne,qne,Wne]))])),PHt=new W2("IN_C_R",17,pHt,wHt,lHt,cHt,R5(qx(Qjt,1),akt,21,0,[ej($ne,R5(qx(ore,1),Xkt,93,0,[Zne,Yne])),ej($ne,R5(qx(ore,1),Xkt,93,0,[Zne,Yne,Wne]))])),AHt=new W2("IN_B_L",18,dHt,xHt,cHt,sHt,R5(qx(Qjt,1),akt,21,0,[ej($ne,R5(qx(ore,1),Xkt,93,0,[Kne,Gne])),ej($ne,R5(qx(ore,1),Xkt,93,0,[Kne,Gne,Wne]))])),MHt=new W2("IN_B_C",19,hHt,xHt,cHt,lHt,R5(qx(Qjt,1),akt,21,0,[ej($ne,R5(qx(ore,1),Xkt,93,0,[Kne,qne])),ej($ne,R5(qx(ore,1),Xkt,93,0,[Kne,qne,Wne]))])),SHt=new W2("IN_B_R",20,pHt,xHt,cHt,cHt,R5(qx(Qjt,1),akt,21,0,[ej($ne,R5(qx(ore,1),Xkt,93,0,[Kne,Yne])),ej($ne,R5(qx(ore,1),Xkt,93,0,[Kne,Yne,Wne]))])),WHt=new W2(SAt,21,null,null,null,null,R5(qx(Qjt,1),akt,21,0,[]))}function N_t(){N_t=P,boe=(ZB(),moe).b,ZR(a0(oV(moe.b),0),34),ZR(a0(oV(moe.b),1),18),yoe=moe.a,ZR(a0(oV(moe.a),0),34),ZR(a0(oV(moe.a),1),18),ZR(a0(oV(moe.a),2),18),ZR(a0(oV(moe.a),3),18),ZR(a0(oV(moe.a),4),18),xoe=moe.o,ZR(a0(oV(moe.o),0),34),ZR(a0(oV(moe.o),1),34),_oe=ZR(a0(oV(moe.o),2),18),ZR(a0(oV(moe.o),3),18),ZR(a0(oV(moe.o),4),18),ZR(a0(oV(moe.o),5),18),ZR(a0(oV(moe.o),6),18),ZR(a0(oV(moe.o),7),18),ZR(a0(oV(moe.o),8),18),ZR(a0(oV(moe.o),9),18),ZR(a0(oV(moe.o),10),18),ZR(a0(oV(moe.o),11),18),ZR(a0(oV(moe.o),12),18),ZR(a0(oV(moe.o),13),18),ZR(a0(oV(moe.o),14),18),ZR(a0(oV(moe.o),15),18),ZR(a0(aV(moe.o),0),59),ZR(a0(aV(moe.o),1),59),ZR(a0(aV(moe.o),2),59),ZR(a0(aV(moe.o),3),59),ZR(a0(aV(moe.o),4),59),ZR(a0(aV(moe.o),5),59),ZR(a0(aV(moe.o),6),59),ZR(a0(aV(moe.o),7),59),ZR(a0(aV(moe.o),8),59),ZR(a0(aV(moe.o),9),59),woe=moe.p,ZR(a0(oV(moe.p),0),34),ZR(a0(oV(moe.p),1),34),ZR(a0(oV(moe.p),2),34),ZR(a0(oV(moe.p),3),34),ZR(a0(oV(moe.p),4),18),ZR(a0(oV(moe.p),5),18),ZR(a0(aV(moe.p),0),59),ZR(a0(aV(moe.p),1),59),koe=moe.q,ZR(a0(oV(moe.q),0),34),Toe=moe.v,ZR(a0(oV(moe.v),0),18),ZR(a0(aV(moe.v),0),59),ZR(a0(aV(moe.v),1),59),ZR(a0(aV(moe.v),2),59),Moe=moe.w,ZR(a0(oV(moe.w),0),34),ZR(a0(oV(moe.w),1),34),ZR(a0(oV(moe.w),2),34),ZR(a0(oV(moe.w),3),18),Aoe=moe.B,ZR(a0(oV(moe.B),0),18),ZR(a0(aV(moe.B),0),59),ZR(a0(aV(moe.B),1),59),ZR(a0(aV(moe.B),2),59),Coe=moe.Q,ZR(a0(oV(moe.Q),0),18),ZR(a0(aV(moe.Q),0),59),Poe=moe.R,ZR(a0(oV(moe.R),0),34),Loe=moe.S,ZR(a0(aV(moe.S),0),59),ZR(a0(aV(moe.S),1),59),ZR(a0(aV(moe.S),2),59),ZR(a0(aV(moe.S),3),59),ZR(a0(aV(moe.S),4),59),ZR(a0(aV(moe.S),5),59),ZR(a0(aV(moe.S),6),59),ZR(a0(aV(moe.S),7),59),ZR(a0(aV(moe.S),8),59),ZR(a0(aV(moe.S),9),59),ZR(a0(aV(moe.S),10),59),ZR(a0(aV(moe.S),11),59),ZR(a0(aV(moe.S),12),59),ZR(a0(aV(moe.S),13),59),ZR(a0(aV(moe.S),14),59),Ooe=moe.T,ZR(a0(oV(moe.T),0),18),ZR(a0(oV(moe.T),2),18),Ioe=ZR(a0(oV(moe.T),3),18),ZR(a0(oV(moe.T),4),18),ZR(a0(aV(moe.T),0),59),ZR(a0(aV(moe.T),1),59),ZR(a0(oV(moe.T),1),18),Doe=moe.U,ZR(a0(oV(moe.U),0),34),ZR(a0(oV(moe.U),1),34),ZR(a0(oV(moe.U),2),18),ZR(a0(oV(moe.U),3),18),ZR(a0(oV(moe.U),4),18),ZR(a0(oV(moe.U),5),18),ZR(a0(aV(moe.U),0),59),Roe=moe.V,ZR(a0(oV(moe.V),0),18),zoe=moe.W,ZR(a0(oV(moe.W),0),34),ZR(a0(oV(moe.W),1),34),ZR(a0(oV(moe.W),2),34),ZR(a0(oV(moe.W),3),18),ZR(a0(oV(moe.W),4),18),ZR(a0(oV(moe.W),5),18),joe=moe.bb,ZR(a0(oV(moe.bb),0),34),ZR(a0(oV(moe.bb),1),34),ZR(a0(oV(moe.bb),2),34),ZR(a0(oV(moe.bb),3),34),ZR(a0(oV(moe.bb),4),34),ZR(a0(oV(moe.bb),5),34),ZR(a0(oV(moe.bb),6),34),ZR(a0(oV(moe.bb),7),18),ZR(a0(aV(moe.bb),0),59),ZR(a0(aV(moe.bb),1),59),Foe=moe.eb,ZR(a0(oV(moe.eb),0),34),ZR(a0(oV(moe.eb),1),34),ZR(a0(oV(moe.eb),2),34),ZR(a0(oV(moe.eb),3),34),ZR(a0(oV(moe.eb),4),34),ZR(a0(oV(moe.eb),5),34),ZR(a0(oV(moe.eb),6),18),ZR(a0(oV(moe.eb),7),18),Noe=moe.ab,ZR(a0(oV(moe.ab),0),34),ZR(a0(oV(moe.ab),1),34),Soe=moe.H,ZR(a0(oV(moe.H),0),18),ZR(a0(oV(moe.H),1),18),ZR(a0(oV(moe.H),2),18),ZR(a0(oV(moe.H),3),18),ZR(a0(oV(moe.H),4),18),ZR(a0(oV(moe.H),5),18),ZR(a0(aV(moe.H),0),59),Boe=moe.db,ZR(a0(oV(moe.db),0),18),Eoe=moe.M}function j_t(t){sT(t,new nst(aw(ew(iw(tw(rw(nw(new vs,LEt),"ELK Layered"),"Layer-based algorithm provided by the Eclipse Layout Kernel. Arranges as many edges as possible into one direction by placing nodes into subsequent layers. This implementation supports different routing styles (straight, orthogonal, splines); if orthogonal routing is selected, arbitrary port constraints are respected, thus enabling the layout of block diagrams such as actor-oriented models or circuit schematics. Furthermore, full layout of compound graphs with cross-hierarchy edges is supported when the respective option is activated on the top level."),new Ea),LEt),ej((Wft(),xae),R5(qx(_ae,1),Xkt,237,0,[mae,yae,vae,bae,pae,dae]))))),zW(t,LEt,KPt,cnt(D1t)),zW(t,LEt,ZPt,cnt(R1t)),zW(t,LEt,uSt,cnt(z1t)),zW(t,LEt,JPt,cnt(N1t)),zW(t,LEt,zSt,cnt(F1t)),zW(t,LEt,QPt,cnt(B1t)),zW(t,LEt,tLt,cnt(V1t)),zW(t,LEt,eLt,cnt(G1t)),zW(t,LEt,nLt,cnt(W1t)),zW(t,LEt,rLt,cnt(q1t)),zW(t,LEt,RSt,cnt(Y1t)),zW(t,LEt,iLt,cnt(X1t)),zW(t,LEt,aLt,cnt(Z1t)),zW(t,LEt,oLt,cnt(H1t)),zW(t,LEt,KCt,cnt(I1t)),zW(t,LEt,JCt,cnt(j1t)),zW(t,LEt,ZCt,cnt(U1t)),zW(t,LEt,QCt,cnt($1t)),zW(t,LEt,DSt,g7(0)),zW(t,LEt,tPt,cnt(E1t)),zW(t,LEt,ePt,cnt(C1t)),zW(t,LEt,nPt,cnt(P1t)),zW(t,LEt,cPt,cnt(l2t)),zW(t,LEt,uPt,cnt(t2t)),zW(t,LEt,fPt,cnt(e2t)),zW(t,LEt,hPt,cnt(i2t)),zW(t,LEt,dPt,cnt(n2t)),zW(t,LEt,pPt,cnt(r2t)),zW(t,LEt,gPt,cnt(u2t)),zW(t,LEt,vPt,cnt(c2t)),zW(t,LEt,mPt,cnt(o2t)),zW(t,LEt,yPt,cnt(a2t)),zW(t,LEt,bPt,cnt(s2t)),zW(t,LEt,VCt,cnt(t1t)),zW(t,LEt,qCt,cnt(e1t)),zW(t,LEt,YCt,cnt(w0t)),zW(t,LEt,$Ct,cnt(_0t)),zW(t,LEt,dSt,c1t),zW(t,LEt,NPt,m0t),zW(t,LEt,sLt,0),zW(t,LEt,NSt,g7(1)),zW(t,LEt,hSt,OSt),zW(t,LEt,lLt,cnt(s1t)),zW(t,LEt,BSt,cnt(b1t)),zW(t,LEt,cLt,cnt(T1t)),zW(t,LEt,uLt,cnt(l0t)),zW(t,LEt,fLt,cnt(jQt)),zW(t,LEt,OPt,cnt(A0t)),zW(t,LEt,jSt,(TL(),!0)),zW(t,LEt,hLt,cnt(L0t)),zW(t,LEt,dLt,cnt(O0t)),zW(t,LEt,qSt,cnt(r1t)),zW(t,LEt,VSt,cnt(o1t)),zW(t,LEt,pLt,cnt(i1t)),zW(t,LEt,gLt,f0t),zW(t,LEt,GSt,cnt(X0t)),zW(t,LEt,vLt,cnt($0t)),zW(t,LEt,WSt,cnt(_1t)),zW(t,LEt,mLt,cnt(w1t)),zW(t,LEt,yLt,cnt(k1t)),zW(t,LEt,bLt,h1t),zW(t,LEt,xLt,cnt(p1t)),zW(t,LEt,wLt,cnt(g1t)),zW(t,LEt,_Lt,cnt(v1t)),zW(t,LEt,kLt,cnt(d1t)),zW(t,LEt,mCt,cnt(Q1t)),zW(t,LEt,xCt,cnt(q0t)),zW(t,LEt,ACt,cnt(V0t)),zW(t,LEt,vCt,cnt(J1t)),zW(t,LEt,wCt,cnt(j0t)),zW(t,LEt,bCt,cnt(s0t)),zW(t,LEt,CCt,cnt(o0t)),zW(t,LEt,PCt,cnt(JQt)),zW(t,LEt,RCt,cnt(QQt)),zW(t,LEt,zCt,cnt(e0t)),zW(t,LEt,NCt,cnt(t0t)),zW(t,LEt,OCt,cnt(a0t)),zW(t,LEt,hCt,cnt(W0t)),zW(t,LEt,dCt,cnt(Y0t)),zW(t,LEt,fCt,cnt(D0t)),zW(t,LEt,jCt,cnt(n1t)),zW(t,LEt,UCt,cnt(Z0t)),zW(t,LEt,uCt,cnt(T0t)),zW(t,LEt,HCt,cnt(Q0t)),zW(t,LEt,GCt,cnt(b0t)),zW(t,LEt,WCt,cnt(x0t)),zW(t,LEt,TLt,cnt(ZQt)),zW(t,LEt,BCt,cnt(K0t)),zW(t,LEt,iPt,cnt(qQt)),zW(t,LEt,aPt,cnt(VQt)),zW(t,LEt,rPt,cnt(HQt)),zW(t,LEt,oPt,cnt(E0t)),zW(t,LEt,sPt,cnt(S0t)),zW(t,LEt,lPt,cnt(C0t)),zW(t,LEt,iEt,cnt(a1t)),zW(t,LEt,MLt,cnt(R0t)),zW(t,LEt,fSt,cnt(k0t)),zW(t,LEt,ALt,cnt(p0t)),zW(t,LEt,USt,cnt(d0t)),zW(t,LEt,LCt,cnt(n0t)),zW(t,LEt,SLt,cnt(x1t)),zW(t,LEt,ELt,cnt(UQt)),zW(t,LEt,CLt,cnt(P0t)),zW(t,LEt,PLt,cnt(m1t)),zW(t,LEt,LLt,cnt(u1t)),zW(t,LEt,OLt,cnt(f1t)),zW(t,LEt,TCt,cnt(B0t)),zW(t,LEt,MCt,cnt(U0t)),zW(t,LEt,ILt,cnt(A1t)),zW(t,LEt,pCt,cnt(FQt)),zW(t,LEt,SCt,cnt(H0t)),zW(t,LEt,xPt,cnt(g0t)),zW(t,LEt,wPt,cnt(h0t)),zW(t,LEt,DLt,cnt(G0t)),zW(t,LEt,ECt,cnt(z0t)),zW(t,LEt,FCt,cnt(J0t)),zW(t,LEt,RLt,cnt(K1t)),zW(t,LEt,cCt,cnt(u0t)),zW(t,LEt,gCt,cnt(M1t)),zW(t,LEt,XCt,cnt(y0t)),zW(t,LEt,_Ct,cnt(N0t)),zW(t,LEt,ICt,cnt(r0t)),zW(t,LEt,zLt,cnt(I0t)),zW(t,LEt,kCt,cnt(F0t)),zW(t,LEt,DCt,cnt(i0t)),zW(t,LEt,_Pt,cnt(KQt)),zW(t,LEt,MPt,cnt($Qt)),zW(t,LEt,APt,cnt(WQt)),zW(t,LEt,SPt,cnt(YQt)),zW(t,LEt,kPt,cnt(XQt)),zW(t,LEt,TPt,cnt(GQt)),zW(t,LEt,yCt,cnt(M0t))}function F_t(t,e){var n;return vle||(vle=new im,mle=new im,R_t(),R_t(),Ott(n=new aW(4),"\t\n\r\r "),qq(vle,Ejt,n),qq(mle,Ejt,nyt(n)),Ott(n=new aW(4),Ljt),qq(vle,Ajt,n),qq(mle,Ajt,nyt(n)),Ott(n=new aW(4),Ljt),qq(vle,Ajt,n),qq(mle,Ajt,nyt(n)),Ott(n=new aW(4),Ojt),dbt(n,ZR(oq(vle,Ajt),117)),qq(vle,Sjt,n),qq(mle,Sjt,nyt(n)),Ott(n=new aW(4),"-.0:AZ__az\xb7\xb7\xc0\xd6\xd8\xf6\xf8\u0131\u0134\u013e\u0141\u0148\u014a\u017e\u0180\u01c3\u01cd\u01f0\u01f4\u01f5\u01fa\u0217\u0250\u02a8\u02bb\u02c1\u02d0\u02d1\u0300\u0345\u0360\u0361\u0386\u038a\u038c\u038c\u038e\u03a1\u03a3\u03ce\u03d0\u03d6\u03da\u03da\u03dc\u03dc\u03de\u03de\u03e0\u03e0\u03e2\u03f3\u0401\u040c\u040e\u044f\u0451\u045c\u045e\u0481\u0483\u0486\u0490\u04c4\u04c7\u04c8\u04cb\u04cc\u04d0\u04eb\u04ee\u04f5\u04f8\u04f9\u0531\u0556\u0559\u0559\u0561\u0586\u0591\u05a1\u05a3\u05b9\u05bb\u05bd\u05bf\u05bf\u05c1\u05c2\u05c4\u05c4\u05d0\u05ea\u05f0\u05f2\u0621\u063a\u0640\u0652\u0660\u0669\u0670\u06b7\u06ba\u06be\u06c0\u06ce\u06d0\u06d3\u06d5\u06e8\u06ea\u06ed\u06f0\u06f9\u0901\u0903\u0905\u0939\u093c\u094d\u0951\u0954\u0958\u0963\u0966\u096f\u0981\u0983\u0985\u098c\u098f\u0990\u0993\u09a8\u09aa\u09b0\u09b2\u09b2\u09b6\u09b9\u09bc\u09bc\u09be\u09c4\u09c7\u09c8\u09cb\u09cd\u09d7\u09d7\u09dc\u09dd\u09df\u09e3\u09e6\u09f1\u0a02\u0a02\u0a05\u0a0a\u0a0f\u0a10\u0a13\u0a28\u0a2a\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a3c\u0a3c\u0a3e\u0a42\u0a47\u0a48\u0a4b\u0a4d\u0a59\u0a5c\u0a5e\u0a5e\u0a66\u0a74\u0a81\u0a83\u0a85\u0a8b\u0a8d\u0a8d\u0a8f\u0a91\u0a93\u0aa8\u0aaa\u0ab0\u0ab2\u0ab3\u0ab5\u0ab9\u0abc\u0ac5\u0ac7\u0ac9\u0acb\u0acd\u0ae0\u0ae0\u0ae6\u0aef\u0b01\u0b03\u0b05\u0b0c\u0b0f\u0b10\u0b13\u0b28\u0b2a\u0b30\u0b32\u0b33\u0b36\u0b39\u0b3c\u0b43\u0b47\u0b48\u0b4b\u0b4d\u0b56\u0b57\u0b5c\u0b5d\u0b5f\u0b61\u0b66\u0b6f\u0b82\u0b83\u0b85\u0b8a\u0b8e\u0b90\u0b92\u0b95\u0b99\u0b9a\u0b9c\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8\u0baa\u0bae\u0bb5\u0bb7\u0bb9\u0bbe\u0bc2\u0bc6\u0bc8\u0bca\u0bcd\u0bd7\u0bd7\u0be7\u0bef\u0c01\u0c03\u0c05\u0c0c\u0c0e\u0c10\u0c12\u0c28\u0c2a\u0c33\u0c35\u0c39\u0c3e\u0c44\u0c46\u0c48\u0c4a\u0c4d\u0c55\u0c56\u0c60\u0c61\u0c66\u0c6f\u0c82\u0c83\u0c85\u0c8c\u0c8e\u0c90\u0c92\u0ca8\u0caa\u0cb3\u0cb5\u0cb9\u0cbe\u0cc4\u0cc6\u0cc8\u0cca\u0ccd\u0cd5\u0cd6\u0cde\u0cde\u0ce0\u0ce1\u0ce6\u0cef\u0d02\u0d03\u0d05\u0d0c\u0d0e\u0d10\u0d12\u0d28\u0d2a\u0d39\u0d3e\u0d43\u0d46\u0d48\u0d4a\u0d4d\u0d57\u0d57\u0d60\u0d61\u0d66\u0d6f\u0e01\u0e2e\u0e30\u0e3a\u0e40\u0e4e\u0e50\u0e59\u0e81\u0e82\u0e84\u0e84\u0e87\u0e88\u0e8a\u0e8a\u0e8d\u0e8d\u0e94\u0e97\u0e99\u0e9f\u0ea1\u0ea3\u0ea5\u0ea5\u0ea7\u0ea7\u0eaa\u0eab\u0ead\u0eae\u0eb0\u0eb9\u0ebb\u0ebd\u0ec0\u0ec4\u0ec6\u0ec6\u0ec8\u0ecd\u0ed0\u0ed9\u0f18\u0f19\u0f20\u0f29\u0f35\u0f35\u0f37\u0f37\u0f39\u0f39\u0f3e\u0f47\u0f49\u0f69\u0f71\u0f84\u0f86\u0f8b\u0f90\u0f95\u0f97\u0f97\u0f99\u0fad\u0fb1\u0fb7\u0fb9\u0fb9\u10a0\u10c5\u10d0\u10f6\u1100\u1100\u1102\u1103\u1105\u1107\u1109\u1109\u110b\u110c\u110e\u1112\u113c\u113c\u113e\u113e\u1140\u1140\u114c\u114c\u114e\u114e\u1150\u1150\u1154\u1155\u1159\u1159\u115f\u1161\u1163\u1163\u1165\u1165\u1167\u1167\u1169\u1169\u116d\u116e\u1172\u1173\u1175\u1175\u119e\u119e\u11a8\u11a8\u11ab\u11ab\u11ae\u11af\u11b7\u11b8\u11ba\u11ba\u11bc\u11c2\u11eb\u11eb\u11f0\u11f0\u11f9\u11f9\u1e00\u1e9b\u1ea0\u1ef9\u1f00\u1f15\u1f18\u1f1d\u1f20\u1f45\u1f48\u1f4d\u1f50\u1f57\u1f59\u1f59\u1f5b\u1f5b\u1f5d\u1f5d\u1f5f\u1f7d\u1f80\u1fb4\u1fb6\u1fbc\u1fbe\u1fbe\u1fc2\u1fc4\u1fc6\u1fcc\u1fd0\u1fd3\u1fd6\u1fdb\u1fe0\u1fec\u1ff2\u1ff4\u1ff6\u1ffc\u20d0\u20dc\u20e1\u20e1\u2126\u2126\u212a\u212b\u212e\u212e\u2180\u2182\u3005\u3005\u3007\u3007\u3021\u302f\u3031\u3035\u3041\u3094\u3099\u309a\u309d\u309e\u30a1\u30fa\u30fc\u30fe\u3105\u312c\u4e00\u9fa5\uac00\ud7a3"),qq(vle,Cjt,n),qq(mle,Cjt,nyt(n)),Ott(n=new aW(4),Ojt),Ypt(n,95,95),Ypt(n,58,58),qq(vle,Pjt,n),qq(mle,Pjt,nyt(n))),ZR(oq(e?vle:mle,t),136)}function B_t(t){return FD("_UI_EMFDiagnostic_marker",t)?"EMF Problem":FD("_UI_CircularContainment_diagnostic",t)?"An object may not circularly contain itself":FD(LRt,t)?"Wrong character.":FD(ORt,t)?"Invalid reference number.":FD(IRt,t)?"A character is required after \\.":FD(DRt,t)?"'?' is not expected. '(?:' or '(?=' or '(?!' or '(?<' or '(?#' or '(?>'?":FD(RRt,t)?"'(?<' or '(? toIndex: ",jMt=", toIndex: ",FMt="Index: ",BMt=", Size: ",UMt="org.eclipse.elk.alg.common",HMt={62:1},VMt="org.eclipse.elk.alg.common.compaction",qMt="Scanline/EventHandler",GMt="org.eclipse.elk.alg.common.compaction.oned",WMt="CNode belongs to another CGroup.",YMt="ISpacingsHandler/1",$Mt="The ",XMt=" instance has been finished already.",KMt="The direction ",ZMt=" is not supported by the CGraph instance.",JMt="OneDimensionalCompactor",QMt="OneDimensionalCompactor/lambda$0$Type",tAt="Quadruplet",eAt="ScanlineConstraintCalculator",nAt="ScanlineConstraintCalculator/ConstraintsScanlineHandler",rAt="ScanlineConstraintCalculator/ConstraintsScanlineHandler/lambda$0$Type",iAt="ScanlineConstraintCalculator/Timestamp",aAt="ScanlineConstraintCalculator/lambda$0$Type",oAt={169:1,45:1},sAt="org.eclipse.elk.alg.common.compaction.options",lAt="org.eclipse.elk.core.data",cAt="org.eclipse.elk.polyomino.traversalStrategy",uAt="org.eclipse.elk.polyomino.lowLevelSort",fAt="org.eclipse.elk.polyomino.highLevelSort",hAt="org.eclipse.elk.polyomino.fill",dAt={130:1},pAt="polyomino",gAt="org.eclipse.elk.alg.common.networksimplex",vAt={177:1,3:1,4:1},mAt="org.eclipse.elk.alg.common.nodespacing",yAt="org.eclipse.elk.alg.common.nodespacing.cellsystem",bAt="CENTER",xAt={212:1,326:1},wAt={3:1,4:1,5:1,595:1},_At="LEFT",kAt="RIGHT",TAt="Vertical alignment cannot be null",MAt="BOTTOM",AAt="org.eclipse.elk.alg.common.nodespacing.internal",SAt="UNDEFINED",EAt=.01,CAt="org.eclipse.elk.alg.common.nodespacing.internal.algorithm",PAt="LabelPlacer/lambda$0$Type",LAt="LabelPlacer/lambda$1$Type",OAt="portRatioOrPosition",IAt="org.eclipse.elk.alg.common.overlaps",DAt="DOWN",RAt="org.eclipse.elk.alg.common.polyomino",zAt="NORTH",NAt="EAST",jAt="SOUTH",FAt="WEST",BAt="org.eclipse.elk.alg.common.polyomino.structures",UAt="Direction",HAt="Grid is only of size ",VAt=". Requested point (",qAt=") is out of bounds.",GAt=" Given center based coordinates were (",WAt="org.eclipse.elk.graph.properties",YAt="IPropertyHolder",$At={3:1,94:1,134:1},XAt="org.eclipse.elk.alg.common.spore",KAt="org.eclipse.elk.alg.common.utils",ZAt={209:1},JAt="org.eclipse.elk.core",QAt="Connected Components Compaction",tSt="org.eclipse.elk.alg.disco",eSt="org.eclipse.elk.alg.disco.graph",nSt="org.eclipse.elk.alg.disco.options",rSt="CompactionStrategy",iSt="org.eclipse.elk.disco.componentCompaction.strategy",aSt="org.eclipse.elk.disco.componentCompaction.componentLayoutAlgorithm",oSt="org.eclipse.elk.disco.debug.discoGraph",sSt="org.eclipse.elk.disco.debug.discoPolys",lSt="componentCompaction",cSt="org.eclipse.elk.disco",uSt="org.eclipse.elk.spacing.componentComponent",fSt="org.eclipse.elk.edge.thickness",hSt="org.eclipse.elk.aspectRatio",dSt="org.eclipse.elk.padding",pSt="org.eclipse.elk.alg.disco.transform",gSt=1.5707963267948966,vSt=17976931348623157e292,mSt={3:1,4:1,5:1,192:1},ySt={3:1,6:1,4:1,5:1,106:1,120:1},bSt="org.eclipse.elk.alg.force",xSt="ComponentsProcessor",wSt="ComponentsProcessor/1",_St="org.eclipse.elk.alg.force.graph",kSt="Component Layout",TSt="org.eclipse.elk.alg.force.model",MSt="org.eclipse.elk.force.model",ASt="org.eclipse.elk.force.iterations",SSt="org.eclipse.elk.force.repulsivePower",ESt="org.eclipse.elk.force.temperature",CSt=.001,PSt="org.eclipse.elk.force.repulsion",LSt="org.eclipse.elk.alg.force.options",OSt=1.600000023841858,ISt="org.eclipse.elk.force",DSt="org.eclipse.elk.priority",RSt="org.eclipse.elk.spacing.nodeNode",zSt="org.eclipse.elk.spacing.edgeLabel",NSt="org.eclipse.elk.randomSeed",jSt="org.eclipse.elk.separateConnectedComponents",FSt="org.eclipse.elk.interactive",BSt="org.eclipse.elk.portConstraints",USt="org.eclipse.elk.edgeLabels.inline",HSt="org.eclipse.elk.omitNodeMicroLayout",VSt="org.eclipse.elk.nodeSize.options",qSt="org.eclipse.elk.nodeSize.constraints",GSt="org.eclipse.elk.nodeLabels.placement",WSt="org.eclipse.elk.portLabels.placement",YSt="origin",$St="random",XSt="boundingBox.upLeft",KSt="boundingBox.lowRight",ZSt="org.eclipse.elk.stress.fixed",JSt="org.eclipse.elk.stress.desiredEdgeLength",QSt="org.eclipse.elk.stress.dimension",tEt="org.eclipse.elk.stress.epsilon",eEt="org.eclipse.elk.stress.iterationLimit",nEt="org.eclipse.elk.stress",rEt="ELK Stress",iEt="org.eclipse.elk.nodeSize.minimum",aEt="org.eclipse.elk.alg.force.stress",oEt="Layered layout",sEt="org.eclipse.elk.alg.layered",lEt="org.eclipse.elk.alg.layered.compaction.components",cEt="org.eclipse.elk.alg.layered.compaction.oned",uEt="org.eclipse.elk.alg.layered.compaction.oned.algs",fEt="org.eclipse.elk.alg.layered.compaction.recthull",hEt="org.eclipse.elk.alg.layered.components",dEt="NONE",pEt={3:1,6:1,4:1,9:1,5:1,122:1},gEt={3:1,6:1,4:1,5:1,141:1,106:1,120:1},vEt="org.eclipse.elk.alg.layered.compound",mEt={51:1},yEt="org.eclipse.elk.alg.layered.graph",bEt=" -> ",xEt="Not supported by LGraph",wEt="Port side is undefined",_Et={3:1,6:1,4:1,5:1,474:1,141:1,106:1,120:1},kEt={3:1,6:1,4:1,5:1,141:1,193:1,203:1,106:1,120:1},TEt={3:1,6:1,4:1,5:1,141:1,1943:1,203:1,106:1,120:1},MEt="([{\"' \t\r\n",AEt=")]}\"' \t\r\n",SEt="The given string contains parts that cannot be parsed as numbers.",EEt="org.eclipse.elk.core.math",CEt={3:1,4:1,142:1,207:1,414:1},PEt={3:1,4:1,116:1,207:1,414:1},LEt="org.eclipse.elk.layered",OEt="org.eclipse.elk.alg.layered.graph.transform",IEt="ElkGraphImporter",DEt="ElkGraphImporter/lambda$0$Type",REt="ElkGraphImporter/lambda$1$Type",zEt="ElkGraphImporter/lambda$2$Type",NEt="ElkGraphImporter/lambda$4$Type",jEt="Node margin calculation",FEt="org.eclipse.elk.alg.layered.intermediate",BEt="ONE_SIDED_GREEDY_SWITCH",UEt="TWO_SIDED_GREEDY_SWITCH",HEt="No implementation is available for the layout processor ",VEt="IntermediateProcessorStrategy",qEt="Node '",GEt="FIRST_SEPARATE",WEt="LAST_SEPARATE",YEt="Odd port side processing",$Et="org.eclipse.elk.alg.layered.intermediate.compaction",XEt="org.eclipse.elk.alg.layered.intermediate.greedyswitch",KEt="org.eclipse.elk.alg.layered.p3order.counting",ZEt={225:1},JEt="org.eclipse.elk.alg.layered.intermediate.loops",QEt="org.eclipse.elk.alg.layered.intermediate.loops.ordering",tCt="org.eclipse.elk.alg.layered.intermediate.loops.routing",eCt="org.eclipse.elk.alg.layered.intermediate.preserveorder",nCt="org.eclipse.elk.alg.layered.intermediate.wrapping",rCt="org.eclipse.elk.alg.layered.options",iCt="INTERACTIVE",aCt="DEPTH_FIRST",oCt="EDGE_LENGTH",sCt="SELF_LOOPS",lCt="firstTryWithInitialOrder",cCt="org.eclipse.elk.layered.directionCongruency",uCt="org.eclipse.elk.layered.feedbackEdges",fCt="org.eclipse.elk.layered.interactiveReferencePoint",hCt="org.eclipse.elk.layered.mergeEdges",dCt="org.eclipse.elk.layered.mergeHierarchyEdges",pCt="org.eclipse.elk.layered.allowNonFlowPortsToSwitchSides",gCt="org.eclipse.elk.layered.portSortingStrategy",vCt="org.eclipse.elk.layered.thoroughness",mCt="org.eclipse.elk.layered.unnecessaryBendpoints",yCt="org.eclipse.elk.layered.generatePositionAndLayerIds",bCt="org.eclipse.elk.layered.cycleBreaking.strategy",xCt="org.eclipse.elk.layered.layering.strategy",wCt="org.eclipse.elk.layered.layering.layerConstraint",_Ct="org.eclipse.elk.layered.layering.layerChoiceConstraint",kCt="org.eclipse.elk.layered.layering.layerId",TCt="org.eclipse.elk.layered.layering.minWidth.upperBoundOnWidth",MCt="org.eclipse.elk.layered.layering.minWidth.upperLayerEstimationScalingFactor",ACt="org.eclipse.elk.layered.layering.nodePromotion.strategy",SCt="org.eclipse.elk.layered.layering.nodePromotion.maxIterations",ECt="org.eclipse.elk.layered.layering.coffmanGraham.layerBound",CCt="org.eclipse.elk.layered.crossingMinimization.strategy",PCt="org.eclipse.elk.layered.crossingMinimization.forceNodeModelOrder",LCt="org.eclipse.elk.layered.crossingMinimization.hierarchicalSweepiness",OCt="org.eclipse.elk.layered.crossingMinimization.semiInteractive",ICt="org.eclipse.elk.layered.crossingMinimization.positionChoiceConstraint",DCt="org.eclipse.elk.layered.crossingMinimization.positionId",RCt="org.eclipse.elk.layered.crossingMinimization.greedySwitch.activationThreshold",zCt="org.eclipse.elk.layered.crossingMinimization.greedySwitch.type",NCt="org.eclipse.elk.layered.crossingMinimization.greedySwitchHierarchical.type",jCt="org.eclipse.elk.layered.nodePlacement.strategy",FCt="org.eclipse.elk.layered.nodePlacement.favorStraightEdges",BCt="org.eclipse.elk.layered.nodePlacement.bk.edgeStraightening",UCt="org.eclipse.elk.layered.nodePlacement.bk.fixedAlignment",HCt="org.eclipse.elk.layered.nodePlacement.linearSegments.deflectionDampening",VCt="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility",qCt="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility.default",GCt="org.eclipse.elk.layered.edgeRouting.selfLoopDistribution",WCt="org.eclipse.elk.layered.edgeRouting.selfLoopOrdering",YCt="org.eclipse.elk.layered.edgeRouting.splines.mode",$Ct="org.eclipse.elk.layered.edgeRouting.splines.sloppy.layerSpacingFactor",XCt="org.eclipse.elk.layered.edgeRouting.polyline.slopedEdgeZoneWidth",KCt="org.eclipse.elk.layered.spacing.baseValue",ZCt="org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers",JCt="org.eclipse.elk.layered.spacing.edgeEdgeBetweenLayers",QCt="org.eclipse.elk.layered.spacing.nodeNodeBetweenLayers",tPt="org.eclipse.elk.layered.priority.direction",ePt="org.eclipse.elk.layered.priority.shortness",nPt="org.eclipse.elk.layered.priority.straightness",rPt="org.eclipse.elk.layered.compaction.connectedComponents",iPt="org.eclipse.elk.layered.compaction.postCompaction.strategy",aPt="org.eclipse.elk.layered.compaction.postCompaction.constraints",oPt="org.eclipse.elk.layered.highDegreeNodes.treatment",sPt="org.eclipse.elk.layered.highDegreeNodes.threshold",lPt="org.eclipse.elk.layered.highDegreeNodes.treeHeight",cPt="org.eclipse.elk.layered.wrapping.strategy",uPt="org.eclipse.elk.layered.wrapping.additionalEdgeSpacing",fPt="org.eclipse.elk.layered.wrapping.correctionFactor",hPt="org.eclipse.elk.layered.wrapping.cutting.strategy",dPt="org.eclipse.elk.layered.wrapping.cutting.cuts",pPt="org.eclipse.elk.layered.wrapping.cutting.msd.freedom",gPt="org.eclipse.elk.layered.wrapping.validify.strategy",vPt="org.eclipse.elk.layered.wrapping.validify.forbiddenIndices",mPt="org.eclipse.elk.layered.wrapping.multiEdge.improveCuts",yPt="org.eclipse.elk.layered.wrapping.multiEdge.distancePenalty",bPt="org.eclipse.elk.layered.wrapping.multiEdge.improveWrappedEdges",xPt="org.eclipse.elk.layered.edgeLabels.sideSelection",wPt="org.eclipse.elk.layered.edgeLabels.centerLabelPlacementStrategy",_Pt="org.eclipse.elk.layered.considerModelOrder.strategy",kPt="org.eclipse.elk.layered.considerModelOrder.noModelOrder",TPt="org.eclipse.elk.layered.considerModelOrder.components",MPt="org.eclipse.elk.layered.considerModelOrder.longEdgeStrategy",APt="org.eclipse.elk.layered.considerModelOrder.crossingCounterNodeInfluence",SPt="org.eclipse.elk.layered.considerModelOrder.crossingCounterPortInfluence",EPt="layering",CPt="layering.minWidth",PPt="layering.nodePromotion",LPt="crossingMinimization",OPt="org.eclipse.elk.hierarchyHandling",IPt="crossingMinimization.greedySwitch",DPt="nodePlacement",RPt="nodePlacement.bk",zPt="edgeRouting",NPt="org.eclipse.elk.edgeRouting",jPt="spacing",FPt="priority",BPt="compaction",UPt="compaction.postCompaction",HPt="Specifies whether and how post-process compaction is applied.",VPt="highDegreeNodes",qPt="wrapping",GPt="wrapping.cutting",WPt="wrapping.validify",YPt="wrapping.multiEdge",$Pt="edgeLabels",XPt="considerModelOrder",KPt="org.eclipse.elk.spacing.commentComment",ZPt="org.eclipse.elk.spacing.commentNode",JPt="org.eclipse.elk.spacing.edgeEdge",QPt="org.eclipse.elk.spacing.edgeNode",tLt="org.eclipse.elk.spacing.labelLabel",eLt="org.eclipse.elk.spacing.labelPortHorizontal",nLt="org.eclipse.elk.spacing.labelPortVertical",rLt="org.eclipse.elk.spacing.labelNode",iLt="org.eclipse.elk.spacing.nodeSelfLoop",aLt="org.eclipse.elk.spacing.portPort",oLt="org.eclipse.elk.spacing.individual",sLt="org.eclipse.elk.port.borderOffset",lLt="org.eclipse.elk.noLayout",cLt="org.eclipse.elk.port.side",uLt="org.eclipse.elk.debugMode",fLt="org.eclipse.elk.alignment",hLt="org.eclipse.elk.insideSelfLoops.activate",dLt="org.eclipse.elk.insideSelfLoops.yo",pLt="org.eclipse.elk.nodeSize.fixedGraphSize",gLt="org.eclipse.elk.direction",vLt="org.eclipse.elk.nodeLabels.padding",mLt="org.eclipse.elk.portLabels.nextToPortIfPossible",yLt="org.eclipse.elk.portLabels.treatAsGroup",bLt="org.eclipse.elk.portAlignment.default",xLt="org.eclipse.elk.portAlignment.north",wLt="org.eclipse.elk.portAlignment.south",_Lt="org.eclipse.elk.portAlignment.west",kLt="org.eclipse.elk.portAlignment.east",TLt="org.eclipse.elk.contentAlignment",MLt="org.eclipse.elk.junctionPoints",ALt="org.eclipse.elk.edgeLabels.placement",SLt="org.eclipse.elk.port.index",ELt="org.eclipse.elk.commentBox",CLt="org.eclipse.elk.hypernode",PLt="org.eclipse.elk.port.anchor",LLt="org.eclipse.elk.partitioning.activate",OLt="org.eclipse.elk.partitioning.partition",ILt="org.eclipse.elk.position",DLt="org.eclipse.elk.margins",RLt="org.eclipse.elk.spacing.portsSurrounding",zLt="org.eclipse.elk.interactiveLayout",NLt="org.eclipse.elk.core.util",jLt={3:1,4:1,5:1,593:1},FLt="NETWORK_SIMPLEX",BLt={123:1,51:1},ULt="org.eclipse.elk.alg.layered.p1cycles",HLt="org.eclipse.elk.alg.layered.p2layers",VLt={402:1,225:1},qLt={832:1,3:1,4:1},GLt="org.eclipse.elk.alg.layered.p3order",WLt="org.eclipse.elk.alg.layered.p4nodes",YLt={3:1,4:1,5:1,840:1},$Lt=1e-5,XLt="org.eclipse.elk.alg.layered.p4nodes.bk",KLt="org.eclipse.elk.alg.layered.p5edges",ZLt="org.eclipse.elk.alg.layered.p5edges.orthogonal",JLt="org.eclipse.elk.alg.layered.p5edges.orthogonal.direction",QLt=1e-6,tOt="org.eclipse.elk.alg.layered.p5edges.splines",eOt=.09999999999999998,nOt=1e-8,rOt=4.71238898038469,iOt=3.141592653589793,aOt="org.eclipse.elk.alg.mrtree",oOt="org.eclipse.elk.alg.mrtree.graph",sOt="org.eclipse.elk.alg.mrtree.intermediate",lOt="Set neighbors in level",cOt="DESCENDANTS",uOt="org.eclipse.elk.mrtree.weighting",fOt="org.eclipse.elk.mrtree.searchOrder",hOt="org.eclipse.elk.alg.mrtree.options",dOt="org.eclipse.elk.mrtree",pOt="org.eclipse.elk.tree",gOt="org.eclipse.elk.alg.radial",vOt=6.283185307179586,mOt=5e-324,yOt="org.eclipse.elk.alg.radial.intermediate",bOt="org.eclipse.elk.alg.radial.intermediate.compaction",xOt={3:1,4:1,5:1,106:1},wOt="org.eclipse.elk.alg.radial.intermediate.optimization",_Ot="No implementation is available for the layout option ",kOt="org.eclipse.elk.alg.radial.options",TOt="org.eclipse.elk.radial.orderId",MOt="org.eclipse.elk.radial.radius",AOt="org.eclipse.elk.radial.compactor",SOt="org.eclipse.elk.radial.compactionStepSize",EOt="org.eclipse.elk.radial.sorter",COt="org.eclipse.elk.radial.wedgeCriteria",POt="org.eclipse.elk.radial.optimizationCriteria",LOt="org.eclipse.elk.radial",OOt="org.eclipse.elk.alg.radial.p1position.wedge",IOt="org.eclipse.elk.alg.radial.sorting",DOt=5.497787143782138,ROt=3.9269908169872414,zOt=2.356194490192345,NOt="org.eclipse.elk.alg.rectpacking",jOt="org.eclipse.elk.alg.rectpacking.firstiteration",FOt="org.eclipse.elk.alg.rectpacking.options",BOt="org.eclipse.elk.rectpacking.optimizationGoal",UOt="org.eclipse.elk.rectpacking.lastPlaceShift",HOt="org.eclipse.elk.rectpacking.currentPosition",VOt="org.eclipse.elk.rectpacking.desiredPosition",qOt="org.eclipse.elk.rectpacking.onlyFirstIteration",GOt="org.eclipse.elk.rectpacking.rowCompaction",WOt="org.eclipse.elk.rectpacking.expandToAspectRatio",YOt="org.eclipse.elk.rectpacking.targetWidth",$Ot="org.eclipse.elk.expandNodes",XOt="org.eclipse.elk.rectpacking",KOt="org.eclipse.elk.alg.rectpacking.util",ZOt="No implementation available for ",JOt="org.eclipse.elk.alg.spore",QOt="org.eclipse.elk.alg.spore.options",tIt="org.eclipse.elk.sporeCompaction",eIt="org.eclipse.elk.underlyingLayoutAlgorithm",nIt="org.eclipse.elk.processingOrder.treeConstruction",rIt="org.eclipse.elk.processingOrder.spanningTreeCostFunction",iIt="org.eclipse.elk.processingOrder.preferredRoot",aIt="org.eclipse.elk.processingOrder.rootSelection",oIt="org.eclipse.elk.structure.structureExtractionStrategy",sIt="org.eclipse.elk.compaction.compactionStrategy",lIt="org.eclipse.elk.compaction.orthogonal",cIt="org.eclipse.elk.overlapRemoval.maxIterations",uIt="org.eclipse.elk.overlapRemoval.runScanline",fIt="processingOrder",hIt="overlapRemoval",dIt="org.eclipse.elk.sporeOverlap",pIt="org.eclipse.elk.alg.spore.p1structure",gIt="org.eclipse.elk.alg.spore.p2processingorder",vIt="org.eclipse.elk.alg.spore.p3execution",mIt="Invalid index: ",yIt="org.eclipse.elk.core.alg",bIt={331:1},xIt={288:1},wIt="Make sure its type is registered with the ",_It=" utility class.",kIt="true",TIt="false",MIt="Couldn't clone property '",AIt=.05,SIt="org.eclipse.elk.core.options",EIt=1.2999999523162842,CIt="org.eclipse.elk.box",PIt="org.eclipse.elk.box.packingMode",LIt="org.eclipse.elk.algorithm",OIt="org.eclipse.elk.resolvedAlgorithm",IIt="org.eclipse.elk.bendPoints",DIt="org.eclipse.elk.labelManager",RIt="org.eclipse.elk.scaleFactor",zIt="org.eclipse.elk.animate",NIt="org.eclipse.elk.animTimeFactor",jIt="org.eclipse.elk.layoutAncestors",FIt="org.eclipse.elk.maxAnimTime",BIt="org.eclipse.elk.minAnimTime",UIt="org.eclipse.elk.progressBar",HIt="org.eclipse.elk.validateGraph",VIt="org.eclipse.elk.validateOptions",qIt="org.eclipse.elk.zoomToFit",GIt="org.eclipse.elk.font.name",WIt="org.eclipse.elk.font.size",YIt="org.eclipse.elk.edge.type",$It="partitioning",XIt="nodeLabels",KIt="portAlignment",ZIt="nodeSize",JIt="port",QIt="portLabels",tDt="insideSelfLoops",eDt="org.eclipse.elk.fixed",nDt="org.eclipse.elk.random",rDt="port must have a parent node to calculate the port side",iDt="The edge needs to have exactly one edge section. Found: ",aDt="org.eclipse.elk.core.util.adapters",oDt="org.eclipse.emf.ecore",sDt="org.eclipse.elk.graph",lDt="EMapPropertyHolder",cDt="ElkBendPoint",uDt="ElkGraphElement",fDt="ElkConnectableShape",hDt="ElkEdge",dDt="ElkEdgeSection",pDt="EModelElement",gDt="ENamedElement",vDt="ElkLabel",mDt="ElkNode",yDt="ElkPort",bDt={92:1,90:1},xDt="org.eclipse.emf.common.notify.impl",wDt="The feature '",_Dt="' is not a valid changeable feature",kDt="Expecting null",TDt="' is not a valid feature",MDt="The feature ID",ADt=" is not a valid feature ID",SDt=32768,EDt={105:1,92:1,90:1,56:1,49:1,97:1},CDt="org.eclipse.emf.ecore.impl",PDt="org.eclipse.elk.graph.impl",LDt="Recursive containment not allowed for ",ODt="The datatype '",IDt="' is not a valid classifier",DDt="The value '",RDt={190:1,3:1,4:1},zDt="The class '",NDt="http://www.eclipse.org/elk/ElkGraph",jDt=1024,FDt="property",BDt="value",UDt="source",HDt="properties",VDt="identifier",qDt="height",GDt="width",WDt="parent",YDt="text",$Dt="children",XDt="hierarchical",KDt="sources",ZDt="targets",JDt="sections",QDt="bendPoints",tRt="outgoingShape",eRt="incomingShape",nRt="outgoingSections",rRt="incomingSections",iRt="org.eclipse.emf.common.util",aRt="Severe implementation error in the Json to ElkGraph importer.",oRt="id",sRt="org.eclipse.elk.graph.json",lRt="Unhandled parameter types: ",cRt="startPoint",uRt="An edge must have at least one source and one target (edge id: '",fRt="').",hRt="Referenced edge section does not exist: ",dRt=" (edge id: '",pRt="target",gRt="sourcePoint",vRt="targetPoint",mRt="group",yRt="name",bRt="connectableShape cannot be null",xRt="edge cannot be null",wRt="Passed edge is not 'simple'.",_Rt="org.eclipse.elk.graph.util",kRt="The 'no duplicates' constraint is violated",TRt="targetIndex=",MRt=", size=",ARt="sourceIndex=",SRt={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1},ERt={3:1,4:1,20:1,28:1,52:1,14:1,47:1,15:1,54:1,67:1,63:1,58:1,588:1},CRt="logging",PRt="measureExecutionTime",LRt="parser.parse.1",ORt="parser.parse.2",IRt="parser.next.1",DRt="parser.next.2",RRt="parser.next.3",zRt="parser.next.4",NRt="parser.factor.1",jRt="parser.factor.2",FRt="parser.factor.3",BRt="parser.factor.4",URt="parser.factor.5",HRt="parser.factor.6",VRt="parser.atom.1",qRt="parser.atom.2",GRt="parser.atom.3",WRt="parser.atom.4",YRt="parser.atom.5",$Rt="parser.cc.1",XRt="parser.cc.2",KRt="parser.cc.3",ZRt="parser.cc.5",JRt="parser.cc.6",QRt="parser.cc.7",tzt="parser.cc.8",ezt="parser.ope.1",nzt="parser.ope.2",rzt="parser.ope.3",izt="parser.descape.1",azt="parser.descape.2",ozt="parser.descape.3",szt="parser.descape.4",lzt="parser.descape.5",czt="parser.process.1",uzt="parser.quantifier.1",fzt="parser.quantifier.2",hzt="parser.quantifier.3",dzt="parser.quantifier.4",pzt="parser.quantifier.5",gzt="org.eclipse.emf.common.notify",vzt={415:1,672:1},mzt={3:1,4:1,20:1,28:1,52:1,14:1,15:1,67:1,58:1},yzt={366:1,143:1},bzt="index=",xzt={3:1,4:1,5:1,126:1},wzt={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,58:1},_zt={3:1,6:1,4:1,5:1,192:1},kzt={3:1,4:1,5:1,165:1,367:1},Tzt=";/?:@&=+$,",Mzt="invalid authority: ",Azt="EAnnotation",Szt="ETypedElement",Ezt="EStructuralFeature",Czt="EAttribute",Pzt="EClassifier",Lzt="EEnumLiteral",Ozt="EGenericType",Izt="EOperation",Dzt="EParameter",Rzt="EReference",zzt="ETypeParameter",Nzt="org.eclipse.emf.ecore.util",jzt={76:1},Fzt={3:1,20:1,14:1,15:1,58:1,589:1,76:1,69:1,95:1},Bzt="org.eclipse.emf.ecore.util.FeatureMap$Entry",Uzt=8192,Hzt=2048,Vzt="byte",qzt="char",Gzt="double",Wzt="float",Yzt="int",$zt="long",Xzt="short",Kzt="java.lang.Object",Zzt={3:1,4:1,5:1,247:1},Jzt={3:1,4:1,5:1,673:1},Qzt={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,69:1},tNt={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,76:1,69:1,95:1},eNt="mixed",nNt="http:///org/eclipse/emf/ecore/util/ExtendedMetaData",rNt="kind",iNt={3:1,4:1,5:1,674:1},aNt={3:1,4:1,20:1,28:1,52:1,14:1,15:1,67:1,58:1,76:1,69:1,95:1},oNt={20:1,28:1,52:1,14:1,15:1,58:1,69:1},sNt={47:1,125:1,279:1},lNt={72:1,332:1},cNt="The value of type '",uNt="' must be of type '",fNt=1316,hNt="http://www.eclipse.org/emf/2002/Ecore",dNt=-32768,pNt="constraints",gNt="baseType",vNt="getEStructuralFeature",mNt="getFeatureID",yNt="feature",bNt="getOperationID",xNt="operation",wNt="defaultValue",_Nt="eTypeParameters",kNt="isInstance",TNt="getEEnumLiteral",MNt="eContainingClass",ANt={55:1},SNt={3:1,4:1,5:1,119:1},ENt="org.eclipse.emf.ecore.resource",CNt={92:1,90:1,591:1,1935:1},PNt="org.eclipse.emf.ecore.resource.impl",LNt="unspecified",ONt="simple",INt="attribute",DNt="attributeWildcard",RNt="element",zNt="elementWildcard",NNt="collapse",jNt="itemType",FNt="namespace",BNt="##targetNamespace",UNt="whiteSpace",HNt="wildcards",VNt="http://www.eclipse.org/emf/2003/XMLType",qNt="##any",GNt="uninitialized",WNt="The multiplicity constraint is violated",YNt="org.eclipse.emf.ecore.xml.type",$Nt="ProcessingInstruction",XNt="SimpleAnyType",KNt="XMLTypeDocumentRoot",ZNt="org.eclipse.emf.ecore.xml.type.impl",JNt="INF",QNt="processing",tjt="ENTITIES_._base",ejt="minLength",njt="ENTITY",rjt="NCName",ijt="IDREFS_._base",ajt="integer",ojt="token",sjt="pattern",ljt="[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",cjt="\\i\\c*",ujt="[\\i-[:]][\\c-[:]]*",fjt="nonPositiveInteger",hjt="maxInclusive",djt="NMTOKEN",pjt="NMTOKENS_._base",gjt="nonNegativeInteger",vjt="minInclusive",mjt="normalizedString",yjt="unsignedByte",bjt="unsignedInt",xjt="18446744073709551615",wjt="unsignedShort",_jt="processingInstruction",kjt="org.eclipse.emf.ecore.xml.type.internal",Tjt=1114111,Mjt="Internal Error: shorthands: \\u",Ajt="xml:isDigit",Sjt="xml:isWord",Ejt="xml:isSpace",Cjt="xml:isNameChar",Pjt="xml:isInitialNameChar",Ljt="09\u0660\u0669\u06f0\u06f9\u0966\u096f\u09e6\u09ef\u0a66\u0a6f\u0ae6\u0aef\u0b66\u0b6f\u0be7\u0bef\u0c66\u0c6f\u0ce6\u0cef\u0d66\u0d6f\u0e50\u0e59\u0ed0\u0ed9\u0f20\u0f29",Ojt="AZaz\xc0\xd6\xd8\xf6\xf8\u0131\u0134\u013e\u0141\u0148\u014a\u017e\u0180\u01c3\u01cd\u01f0\u01f4\u01f5\u01fa\u0217\u0250\u02a8\u02bb\u02c1\u0386\u0386\u0388\u038a\u038c\u038c\u038e\u03a1\u03a3\u03ce\u03d0\u03d6\u03da\u03da\u03dc\u03dc\u03de\u03de\u03e0\u03e0\u03e2\u03f3\u0401\u040c\u040e\u044f\u0451\u045c\u045e\u0481\u0490\u04c4\u04c7\u04c8\u04cb\u04cc\u04d0\u04eb\u04ee\u04f5\u04f8\u04f9\u0531\u0556\u0559\u0559\u0561\u0586\u05d0\u05ea\u05f0\u05f2\u0621\u063a\u0641\u064a\u0671\u06b7\u06ba\u06be\u06c0\u06ce\u06d0\u06d3\u06d5\u06d5\u06e5\u06e6\u0905\u0939\u093d\u093d\u0958\u0961\u0985\u098c\u098f\u0990\u0993\u09a8\u09aa\u09b0\u09b2\u09b2\u09b6\u09b9\u09dc\u09dd\u09df\u09e1\u09f0\u09f1\u0a05\u0a0a\u0a0f\u0a10\u0a13\u0a28\u0a2a\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59\u0a5c\u0a5e\u0a5e\u0a72\u0a74\u0a85\u0a8b\u0a8d\u0a8d\u0a8f\u0a91\u0a93\u0aa8\u0aaa\u0ab0\u0ab2\u0ab3\u0ab5\u0ab9\u0abd\u0abd\u0ae0\u0ae0\u0b05\u0b0c\u0b0f\u0b10\u0b13\u0b28\u0b2a\u0b30\u0b32\u0b33\u0b36\u0b39\u0b3d\u0b3d\u0b5c\u0b5d\u0b5f\u0b61\u0b85\u0b8a\u0b8e\u0b90\u0b92\u0b95\u0b99\u0b9a\u0b9c\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8\u0baa\u0bae\u0bb5\u0bb7\u0bb9\u0c05\u0c0c\u0c0e\u0c10\u0c12\u0c28\u0c2a\u0c33\u0c35\u0c39\u0c60\u0c61\u0c85\u0c8c\u0c8e\u0c90\u0c92\u0ca8\u0caa\u0cb3\u0cb5\u0cb9\u0cde\u0cde\u0ce0\u0ce1\u0d05\u0d0c\u0d0e\u0d10\u0d12\u0d28\u0d2a\u0d39\u0d60\u0d61\u0e01\u0e2e\u0e30\u0e30\u0e32\u0e33\u0e40\u0e45\u0e81\u0e82\u0e84\u0e84\u0e87\u0e88\u0e8a\u0e8a\u0e8d\u0e8d\u0e94\u0e97\u0e99\u0e9f\u0ea1\u0ea3\u0ea5\u0ea5\u0ea7\u0ea7\u0eaa\u0eab\u0ead\u0eae\u0eb0\u0eb0\u0eb2\u0eb3\u0ebd\u0ebd\u0ec0\u0ec4\u0f40\u0f47\u0f49\u0f69\u10a0\u10c5\u10d0\u10f6\u1100\u1100\u1102\u1103\u1105\u1107\u1109\u1109\u110b\u110c\u110e\u1112\u113c\u113c\u113e\u113e\u1140\u1140\u114c\u114c\u114e\u114e\u1150\u1150\u1154\u1155\u1159\u1159\u115f\u1161\u1163\u1163\u1165\u1165\u1167\u1167\u1169\u1169\u116d\u116e\u1172\u1173\u1175\u1175\u119e\u119e\u11a8\u11a8\u11ab\u11ab\u11ae\u11af\u11b7\u11b8\u11ba\u11ba\u11bc\u11c2\u11eb\u11eb\u11f0\u11f0\u11f9\u11f9\u1e00\u1e9b\u1ea0\u1ef9\u1f00\u1f15\u1f18\u1f1d\u1f20\u1f45\u1f48\u1f4d\u1f50\u1f57\u1f59\u1f59\u1f5b\u1f5b\u1f5d\u1f5d\u1f5f\u1f7d\u1f80\u1fb4\u1fb6\u1fbc\u1fbe\u1fbe\u1fc2\u1fc4\u1fc6\u1fcc\u1fd0\u1fd3\u1fd6\u1fdb\u1fe0\u1fec\u1ff2\u1ff4\u1ff6\u1ffc\u2126\u2126\u212a\u212b\u212e\u212e\u2180\u2182\u3007\u3007\u3021\u3029\u3041\u3094\u30a1\u30fa\u3105\u312c\u4e00\u9fa5\uac00\ud7a3",Ijt="Private Use",Djt="ASSIGNED",Rjt="\0\x7f\x80\xff\u0100\u017f\u0180\u024f\u0250\u02af\u02b0\u02ff\u0300\u036f\u0370\u03ff\u0400\u04ff\u0530\u058f\u0590\u05ff\u0600\u06ff\u0700\u074f\u0780\u07bf\u0900\u097f\u0980\u09ff\u0a00\u0a7f\u0a80\u0aff\u0b00\u0b7f\u0b80\u0bff\u0c00\u0c7f\u0c80\u0cff\u0d00\u0d7f\u0d80\u0dff\u0e00\u0e7f\u0e80\u0eff\u0f00\u0fff\u1000\u109f\u10a0\u10ff\u1100\u11ff\u1200\u137f\u13a0\u13ff\u1400\u167f\u1680\u169f\u16a0\u16ff\u1780\u17ff\u1800\u18af\u1e00\u1eff\u1f00\u1fff\u2000\u206f\u2070\u209f\u20a0\u20cf\u20d0\u20ff\u2100\u214f\u2150\u218f\u2190\u21ff\u2200\u22ff\u2300\u23ff\u2400\u243f\u2440\u245f\u2460\u24ff\u2500\u257f\u2580\u259f\u25a0\u25ff\u2600\u26ff\u2700\u27bf\u2800\u28ff\u2e80\u2eff\u2f00\u2fdf\u2ff0\u2fff\u3000\u303f\u3040\u309f\u30a0\u30ff\u3100\u312f\u3130\u318f\u3190\u319f\u31a0\u31bf\u3200\u32ff\u3300\u33ff\u3400\u4db5\u4e00\u9fff\ua000\ua48f\ua490\ua4cf\uac00\ud7a3\ue000\uf8ff\uf900\ufaff\ufb00\ufb4f\ufb50\ufdff\ufe20\ufe2f\ufe30\ufe4f\ufe50\ufe6f\ufe70\ufefe\ufeff\ufeff\uff00\uffef",zjt="UNASSIGNED",Njt={3:1,117:1},jjt="org.eclipse.emf.ecore.xml.type.util",Fjt={3:1,4:1,5:1,368:1},Bjt="org.eclipse.xtext.xbase.lib",Ujt="Cannot add elements to a Range",Hjt="Cannot set elements in a Range",Vjt="Cannot remove elements from a Range",qjt="locale",Gjt="default",Wjt="user.agent";r.goog=r.goog||{},r.goog.global=r.goog.global||r,V_t={},!Array.isArray&&(Array.isArray=function(t){return"[object Array]"===Object.prototype.toString.call(t)}),!Date.now&&(Date.now=function(){return(new Date).getTime()}),Xft(1,null,{},i),H_t.Fb=function(t){return $E(this,t)},H_t.Gb=function(){return this.gm},H_t.Hb=function(){return FL(this)},H_t.Ib=function(){return Dw(X4(this))+"@"+($4(this)>>>0).toString(16)},H_t.equals=function(t){return this.Fb(t)},H_t.hashCode=function(){return this.Hb()},H_t.toString=function(){return this.Ib()},Xft(290,1,{290:1,2026:1},b4),H_t.le=function(t){var e;return(e=new b4).i=4,e.c=t>1?Vq(this,t-1):this,e},H_t.me=function(){return cI(this),this.b},H_t.ne=function(){return Dw(this)},H_t.oe=function(){return cI(this),this.k},H_t.pe=function(){return 0!=(4&this.i)},H_t.qe=function(){return 0!=(1&this.i)},H_t.Ib=function(){return IQ(this)},H_t.i=0;var Yjt=kB(tkt,"Object",1),$jt=kB(tkt,"Class",290);Xft(1998,1,ekt);var Xjt;kB(nkt,"Optional",1998);Xft(1170,1998,ekt,a),H_t.Fb=function(t){return t===this},H_t.Hb=function(){return 2040732332},H_t.Ib=function(){return"Optional.absent()"},H_t.Jb=function(t){return MB(t),vb(),Xjt};kB(nkt,"Absent",1170);Xft(628,1,{},Tx);kB(nkt,"Joiner",628);var Kjt=oN(nkt,"Predicate");Xft(582,1,{169:1,582:1,3:1,45:1},Bf),H_t.Mb=function(t){return N4(this,t)},H_t.Lb=function(t){return N4(this,t)},H_t.Fb=function(t){var e;return!!CP(t,582)&&(e=ZR(t,582),uht(this.a,e.a))},H_t.Hb=function(){return j4(this.a)+306654252},H_t.Ib=function(){return function(t){var e,n,r,i;for(e=FB(xE(new AL("Predicates."),"and"),40),n=!0,i=new Xh(t);i.b0},H_t.Pb=function(){if(this.c>=this.d)throw um(new jm);return this.Xb(this.c++)},H_t.Tb=function(){return this.c},H_t.Ub=function(){if(this.c<=0)throw um(new jm);return this.Xb(--this.c)},H_t.Vb=function(){return this.c-1},H_t.c=0,H_t.d=0;kB(ukt,"AbstractIndexedListIterator",386);Xft(699,198,ckt),H_t.Ob=function(){return Y1(this)},H_t.Pb=function(){return dJ(this)},H_t.e=1;kB(ukt,"AbstractIterator",699);Xft(1986,1,{224:1}),H_t.Zb=function(){return this.f||(this.f=this.ac())},H_t.Fb=function(t){return f6(this,t)},H_t.Hb=function(){return $4(this.Zb())},H_t.dc=function(){return 0==this.gc()},H_t.ec=function(){return Bj(this)},H_t.Ib=function(){return E9(this.Zb())};kB(ukt,"AbstractMultimap",1986);Xft(726,1986,hkt),H_t.$b=function(){y1(this)},H_t._b=function(t){return Pw(this,t)},H_t.ac=function(){return new Y_(this,this.c)},H_t.ic=function(t){return this.hc()},H_t.bc=function(){return new rL(this,this.c)},H_t.jc=function(){return this.mc(this.hc())},H_t.kc=function(){return new eb(this)},H_t.lc=function(){return dst(this.c.vc().Nc(),new s,64,this.d)},H_t.cc=function(t){return FX(this,t)},H_t.fc=function(t){return u8(this,t)},H_t.gc=function(){return this.d},H_t.mc=function(t){return YH(),new fd(t)},H_t.nc=function(){return new tb(this)},H_t.oc=function(){return dst(this.c.Cc().Nc(),new o,64,this.d)},H_t.pc=function(t,e){return new gK(this,t,e,null)},H_t.d=0;kB(ukt,"AbstractMapBasedMultimap",726);Xft(1631,726,hkt),H_t.hc=function(){return new mK(this.a)},H_t.jc=function(){return YH(),YH(),SBt},H_t.cc=function(t){return ZR(FX(this,t),15)},H_t.fc=function(t){return ZR(u8(this,t),15)},H_t.Zb=function(){return KH(this)},H_t.Fb=function(t){return f6(this,t)},H_t.qc=function(t){return ZR(FX(this,t),15)},H_t.rc=function(t){return ZR(u8(this,t),15)},H_t.mc=function(t){return hV(ZR(t,15))},H_t.pc=function(t,e){return wY(this,t,ZR(e,15),null)};kB(ukt,"AbstractListMultimap",1631);Xft(732,1,dkt),H_t.Nb=function(t){EF(this,t)},H_t.Ob=function(){return this.c.Ob()||this.e.Ob()},H_t.Pb=function(){var t;return this.e.Ob()||(t=ZR(this.c.Pb(),42),this.b=t.cd(),this.a=ZR(t.dd(),14),this.e=this.a.Kc()),this.sc(this.b,this.e.Pb())},H_t.Qb=function(){this.e.Qb(),this.a.dc()&&this.c.Qb(),--this.d.d};kB(ukt,"AbstractMapBasedMultimap/Itr",732);Xft(1099,732,dkt,tb),H_t.sc=function(t,e){return e};kB(ukt,"AbstractMapBasedMultimap/1",1099);Xft(1100,1,{},o),H_t.Kb=function(t){return ZR(t,14).Nc()};kB(ukt,"AbstractMapBasedMultimap/1methodref$spliterator$Type",1100);Xft(1101,732,dkt,eb),H_t.sc=function(t,e){return new $_(t,e)};kB(ukt,"AbstractMapBasedMultimap/2",1101);var Zjt=oN(pkt,"Map");Xft(1967,1,gkt),H_t.wc=function(t){A3(this,t)},H_t.yc=function(t,e,n){return Z7(this,t,e,n)},H_t.$b=function(){this.vc().$b()},H_t.tc=function(t){return Urt(this,t)},H_t._b=function(t){return!!Cot(this,t,!1)},H_t.uc=function(t){var e,n;for(e=this.vc().Kc();e.Ob();)if(n=ZR(e.Pb(),42).dd(),rE(t)===rE(n)||null!=t&&K8(t,n))return!0;return!1},H_t.Fb=function(t){var e,n,r;if(t===this)return!0;if(!CP(t,83))return!1;if(r=ZR(t,83),this.gc()!=r.gc())return!1;for(n=r.vc().Kc();n.Ob();)if(e=ZR(n.Pb(),42),!this.tc(e))return!1;return!0},H_t.xc=function(t){return nE(Cot(this,t,!1))},H_t.Hb=function(){return $5(this.vc())},H_t.dc=function(){return 0==this.gc()},H_t.ec=function(){return new Zh(this)},H_t.zc=function(t,e){throw um(new cx("Put not supported on this map"))},H_t.Ac=function(t){r3(this,t)},H_t.Bc=function(t){return nE(Cot(this,t,!0))},H_t.gc=function(){return this.vc().gc()},H_t.Ib=function(){return Uot(this)},H_t.Cc=function(){return new Qh(this)};kB(pkt,"AbstractMap",1967);Xft(1987,1967,gkt),H_t.bc=function(){return new nk(this)},H_t.vc=function(){return Fj(this)},H_t.ec=function(){return this.g||(this.g=this.bc())},H_t.Cc=function(){return this.i||(this.i=new rk(this))};kB(ukt,"Maps/ViewCachingAbstractMap",1987);Xft(389,1987,gkt,Y_),H_t.xc=function(t){return function(t,e){var n,r;return(n=ZR(R8(t.d,e),14))?(r=e,t.e.pc(r,n)):null}(this,t)},H_t.Bc=function(t){return function(t,e){var n,r;return(n=ZR(t.d.Bc(e),14))?((r=t.e.hc()).Gc(n),t.e.d-=n.gc(),n.$b(),r):null}(this,t)},H_t.$b=function(){this.d==this.e.c?this.e.$b():yN(new bN(this))},H_t._b=function(t){return N8(this.d,t)},H_t.Ec=function(){return new Gf(this)},H_t.Dc=function(){return this.Ec()},H_t.Fb=function(t){return this===t||K8(this.d,t)},H_t.Hb=function(){return $4(this.d)},H_t.ec=function(){return this.e.ec()},H_t.gc=function(){return this.d.gc()},H_t.Ib=function(){return E9(this.d)};kB(ukt,"AbstractMapBasedMultimap/AsMap",389);var Jjt=oN(tkt,"Iterable");Xft(28,1,vkt),H_t.Jc=function(t){Y$(this,t)},H_t.Lc=function(){return this.Oc()},H_t.Nc=function(){return new DG(this,0)},H_t.Oc=function(){return new AN(null,this.Nc())},H_t.Fc=function(t){throw um(new cx("Add not supported on this collection"))},H_t.Gc=function(t){return C2(this,t)},H_t.$b=function(){rH(this)},H_t.Hc=function(t){return X9(this,t,!1)},H_t.Ic=function(t){return b5(this,t)},H_t.dc=function(){return 0==this.gc()},H_t.Mc=function(t){return X9(this,t,!0)},H_t.Pc=function(){return Cj(this)},H_t.Qc=function(t){return Brt(this,t)},H_t.Ib=function(){return Gst(this)};kB(pkt,"AbstractCollection",28);var Qjt=oN(pkt,"Set");Xft(mkt,28,ykt),H_t.Nc=function(){return new DG(this,1)},H_t.Fb=function(t){return uet(this,t)},H_t.Hb=function(){return $5(this)};kB(pkt,"AbstractSet",mkt);Xft(1970,mkt,ykt);kB(ukt,"Sets/ImprovedAbstractSet",1970);Xft(1971,1970,ykt),H_t.$b=function(){this.Rc().$b()},H_t.Hc=function(t){return ytt(this,t)},H_t.dc=function(){return this.Rc().dc()},H_t.Mc=function(t){var e;return!!this.Hc(t)&&(e=ZR(t,42),this.Rc().ec().Mc(e.cd()))},H_t.gc=function(){return this.Rc().gc()};kB(ukt,"Maps/EntrySet",1971);Xft(1097,1971,ykt,Gf),H_t.Hc=function(t){return z8(this.a.d.vc(),t)},H_t.Kc=function(){return new bN(this.a)},H_t.Rc=function(){return this.a},H_t.Mc=function(t){var e;return!!z8(this.a.d.vc(),t)&&(e=ZR(t,42),mX(this.a.e,e.cd()),!0)},H_t.Nc=function(){return XR(this.a.d.vc().Nc(),new Wf(this.a))};kB(ukt,"AbstractMapBasedMultimap/AsMap/AsMapEntries",1097);Xft(1098,1,{},Wf),H_t.Kb=function(t){return $$(this.a,ZR(t,42))};kB(ukt,"AbstractMapBasedMultimap/AsMap/AsMapEntries/0methodref$wrapEntry$Type",1098);Xft(730,1,dkt,bN),H_t.Nb=function(t){EF(this,t)},H_t.Pb=function(){var t;return t=ZR(this.b.Pb(),42),this.a=ZR(t.dd(),14),$$(this.c,t)},H_t.Ob=function(){return this.b.Ob()},H_t.Qb=function(){R3(!!this.a),this.b.Qb(),this.c.e.d-=this.a.gc(),this.a.$b(),this.a=null};kB(ukt,"AbstractMapBasedMultimap/AsMap/AsMapIterator",730);Xft(532,1970,ykt,nk),H_t.$b=function(){this.b.$b()},H_t.Hc=function(t){return this.b._b(t)},H_t.Jc=function(t){MB(t),this.b.wc(new vh(t))},H_t.dc=function(){return this.b.dc()},H_t.Kc=function(){return new Mb(this.b.vc().Kc())},H_t.Mc=function(t){return!!this.b._b(t)&&(this.b.Bc(t),!0)},H_t.gc=function(){return this.b.gc()};kB(ukt,"Maps/KeySet",532);Xft(318,532,ykt,rL),H_t.$b=function(){yN(new O_(this,this.b.vc().Kc()))},H_t.Ic=function(t){return this.b.ec().Ic(t)},H_t.Fb=function(t){return this===t||K8(this.b.ec(),t)},H_t.Hb=function(){return $4(this.b.ec())},H_t.Kc=function(){return new O_(this,this.b.vc().Kc())},H_t.Mc=function(t){var e,n;return n=0,(e=ZR(this.b.Bc(t),14))&&(n=e.gc(),e.$b(),this.a.d-=n),n>0},H_t.Nc=function(){return this.b.ec().Nc()};kB(ukt,"AbstractMapBasedMultimap/KeySet",318);Xft(731,1,dkt,O_),H_t.Nb=function(t){EF(this,t)},H_t.Ob=function(){return this.c.Ob()},H_t.Pb=function(){return this.a=ZR(this.c.Pb(),42),this.a.cd()},H_t.Qb=function(){var t;R3(!!this.a),t=ZR(this.a.dd(),14),this.c.Qb(),this.b.a.d-=t.gc(),t.$b(),this.a=null};kB(ukt,"AbstractMapBasedMultimap/KeySet/1",731);Xft(491,389,{83:1,161:1},pI),H_t.bc=function(){return this.Sc()},H_t.ec=function(){return this.Tc()},H_t.Sc=function(){return new P_(this.c,this.Uc())},H_t.Tc=function(){return this.b||(this.b=this.Sc())},H_t.Uc=function(){return ZR(this.d,161)};kB(ukt,"AbstractMapBasedMultimap/SortedAsMap",491);Xft(542,491,bkt,gI),H_t.bc=function(){return new L_(this.a,ZR(ZR(this.d,161),171))},H_t.Sc=function(){return new L_(this.a,ZR(ZR(this.d,161),171))},H_t.ec=function(){return ZR(this.b||(this.b=new L_(this.a,ZR(ZR(this.d,161),171))),271)},H_t.Tc=function(){return ZR(this.b||(this.b=new L_(this.a,ZR(ZR(this.d,161),171))),271)},H_t.Uc=function(){return ZR(ZR(this.d,161),171)};kB(ukt,"AbstractMapBasedMultimap/NavigableAsMap",542);Xft(490,318,xkt,P_),H_t.Nc=function(){return this.b.ec().Nc()};kB(ukt,"AbstractMapBasedMultimap/SortedKeySet",490);Xft(388,490,wkt,L_);kB(ukt,"AbstractMapBasedMultimap/NavigableKeySet",388);Xft(541,28,vkt,gK),H_t.Fc=function(t){var e,n;return L9(this),n=this.d.dc(),(e=this.d.Fc(t))&&(++this.f.d,n&&eD(this)),e},H_t.Gc=function(t){var e,n,r;return!t.dc()&&(L9(this),r=this.d.gc(),(e=this.d.Gc(t))&&(n=this.d.gc(),this.f.d+=n-r,0==r&&eD(this)),e)},H_t.$b=function(){var t;L9(this),0!=(t=this.d.gc())&&(this.d.$b(),this.f.d-=t,lj(this))},H_t.Hc=function(t){return L9(this),this.d.Hc(t)},H_t.Ic=function(t){return L9(this),this.d.Ic(t)},H_t.Fb=function(t){return t===this||(L9(this),K8(this.d,t))},H_t.Hb=function(){return L9(this),$4(this.d)},H_t.Kc=function(){return L9(this),new iz(this)},H_t.Mc=function(t){var e;return L9(this),(e=this.d.Mc(t))&&(--this.f.d,lj(this)),e},H_t.gc=function(){return dE(this)},H_t.Nc=function(){return L9(this),this.d.Nc()},H_t.Ib=function(){return L9(this),E9(this.d)};kB(ukt,"AbstractMapBasedMultimap/WrappedCollection",541);var tFt=oN(pkt,"List");Xft(728,541,{20:1,28:1,14:1,15:1},Ij),H_t.ad=function(t){E2(this,t)},H_t.Nc=function(){return L9(this),this.d.Nc()},H_t.Vc=function(t,e){var n;L9(this),n=this.d.dc(),ZR(this.d,15).Vc(t,e),++this.a.d,n&&eD(this)},H_t.Wc=function(t,e){var n,r,i;return!e.dc()&&(L9(this),i=this.d.gc(),(n=ZR(this.d,15).Wc(t,e))&&(r=this.d.gc(),this.a.d+=r-i,0==i&&eD(this)),n)},H_t.Xb=function(t){return L9(this),ZR(this.d,15).Xb(t)},H_t.Xc=function(t){return L9(this),ZR(this.d,15).Xc(t)},H_t.Yc=function(){return L9(this),new XC(this)},H_t.Zc=function(t){return L9(this),new NH(this,t)},H_t.$c=function(t){var e;return L9(this),e=ZR(this.d,15).$c(t),--this.a.d,lj(this),e},H_t._c=function(t,e){return L9(this),ZR(this.d,15)._c(t,e)},H_t.bd=function(t,e){return L9(this),wY(this.a,this.e,ZR(this.d,15).bd(t,e),this.b?this.b:this)};kB(ukt,"AbstractMapBasedMultimap/WrappedList",728);Xft(1096,728,{20:1,28:1,14:1,15:1,54:1},CO);kB(ukt,"AbstractMapBasedMultimap/RandomAccessWrappedList",1096);Xft(620,1,dkt,iz),H_t.Nb=function(t){EF(this,t)},H_t.Ob=function(){return iH(this),this.b.Ob()},H_t.Pb=function(){return iH(this),this.b.Pb()},H_t.Qb=function(){vL(this)};kB(ukt,"AbstractMapBasedMultimap/WrappedCollection/WrappedIterator",620);Xft(729,620,_kt,XC,NH),H_t.Qb=function(){vL(this)},H_t.Rb=function(t){var e;e=0==dE(this.a),(iH(this),ZR(this.b,125)).Rb(t),++this.a.a.d,e&&eD(this.a)},H_t.Sb=function(){return(iH(this),ZR(this.b,125)).Sb()},H_t.Tb=function(){return(iH(this),ZR(this.b,125)).Tb()},H_t.Ub=function(){return(iH(this),ZR(this.b,125)).Ub()},H_t.Vb=function(){return(iH(this),ZR(this.b,125)).Vb()},H_t.Wb=function(t){(iH(this),ZR(this.b,125)).Wb(t)};kB(ukt,"AbstractMapBasedMultimap/WrappedList/WrappedListIterator",729);Xft(727,541,xkt,xI),H_t.Nc=function(){return L9(this),this.d.Nc()};kB(ukt,"AbstractMapBasedMultimap/WrappedSortedSet",727);Xft(1095,727,wkt,SC);kB(ukt,"AbstractMapBasedMultimap/WrappedNavigableSet",1095);Xft(1094,541,ykt,wI),H_t.Nc=function(){return L9(this),this.d.Nc()};kB(ukt,"AbstractMapBasedMultimap/WrappedSet",1094);Xft(1103,1,{},s),H_t.Kb=function(t){return function(t){var e;return e=t.cd(),XR(ZR(t.dd(),14).Nc(),new Yf(e))}(ZR(t,42))};kB(ukt,"AbstractMapBasedMultimap/lambda$1$Type",1103);Xft(1102,1,{},Yf),H_t.Kb=function(t){return new $_(this.a,t)};kB(ukt,"AbstractMapBasedMultimap/lambda$2$Type",1102);var eFt=oN(pkt,"Map/Entry");Xft(345,1,kkt),H_t.Fb=function(t){var e;return!!CP(t,42)&&(e=ZR(t,42),dU(this.cd(),e.cd())&&dU(this.dd(),e.dd()))},H_t.Hb=function(){var t,e;return t=this.cd(),e=this.dd(),(null==t?0:$4(t))^(null==e?0:$4(e))},H_t.ed=function(t){throw um(new Rm)},H_t.Ib=function(){return this.cd()+"="+this.dd()};kB(ukt,Tkt,345);Xft(1988,28,vkt),H_t.$b=function(){this.fd().$b()},H_t.Hc=function(t){var e;return!!CP(t,42)&&(e=ZR(t,42),function(t,e,n){var r;return!!(r=ZR(t.Zb().xc(e),14))&&r.Hc(n)}(this.fd(),e.cd(),e.dd()))},H_t.Mc=function(t){var e;return!!CP(t,42)&&(e=ZR(t,42),_W(this.fd(),e.cd(),e.dd()))},H_t.gc=function(){return this.fd().d};kB(ukt,"Multimaps/Entries",1988);Xft(733,1988,vkt,$f),H_t.Kc=function(){return this.a.kc()},H_t.fd=function(){return this.a},H_t.Nc=function(){return this.a.lc()};kB(ukt,"AbstractMultimap/Entries",733);Xft(734,733,ykt,nb),H_t.Nc=function(){return this.a.lc()},H_t.Fb=function(t){return Blt(this,t)},H_t.Hb=function(){return P2(this)};kB(ukt,"AbstractMultimap/EntrySet",734);Xft(735,28,vkt,Xf),H_t.$b=function(){this.a.$b()},H_t.Hc=function(t){return function(t,e){var n;for(n=t.Zb().Cc().Kc();n.Ob();)if(ZR(n.Pb(),14).Hc(e))return!0;return!1}(this.a,t)},H_t.Kc=function(){return this.a.nc()},H_t.gc=function(){return this.a.d},H_t.Nc=function(){return this.a.oc()};kB(ukt,"AbstractMultimap/Values",735);Xft(1989,28,{835:1,20:1,28:1,14:1}),H_t.Jc=function(t){MB(t),nH(this).Jc(new gh(t))},H_t.Nc=function(){var t;return dst(t=nH(this).Nc(),new x,64|1296&t.qd(),this.a.d)},H_t.Fc=function(t){return _x(),!0},H_t.Gc=function(t){return MB(this),MB(t),CP(t,543)?UW(ZR(t,835)):!t.dc()&&GJ(this,t.Kc())},H_t.Hc=function(t){var e;return((e=ZR(R8(KH(this.a),t),14))?e.gc():0)>0},H_t.Fb=function(t){return function(t,e){var n,r,i;if(e===t)return!0;if(CP(e,543)){if(i=ZR(e,835),t.a.d!=i.a.d||nH(t).gc()!=nH(i).gc())return!1;for(r=nH(i).Kc();r.Ob();)if(AG(t,(n=ZR(r.Pb(),416)).a.cd())!=ZR(n.a.dd(),14).gc())return!1;return!0}return!1}(this,t)},H_t.Hb=function(){return $4(nH(this))},H_t.dc=function(){return nH(this).dc()},H_t.Mc=function(t){return zut(this,t,1)>0},H_t.Ib=function(){return E9(nH(this))};kB(ukt,"AbstractMultiset",1989);Xft(1991,1970,ykt),H_t.$b=function(){y1(this.a.a)},H_t.Hc=function(t){var e;return!!CP(t,492)&&(e=ZR(t,416),!(ZR(e.a.dd(),14).gc()<=0)&&AG(this.a,e.a.cd())==ZR(e.a.dd(),14).gc())},H_t.Mc=function(t){var e,n,r;return!(!CP(t,492)||(e=(n=ZR(t,416)).a.cd(),0==(r=ZR(n.a.dd(),14).gc())))&&function(t,e,n){var r,i,a;return v1(n,"oldCount"),v1(0,"newCount"),((r=ZR(R8(KH(t.a),e),14))?r.gc():0)==n&&(v1(0,"count"),(a=-((i=ZR(R8(KH(t.a),e),14))?i.gc():0))>0?_x():a<0&&zut(t,e,-a),!0)}(this.a,e,r)};kB(ukt,"Multisets/EntrySet",1991);Xft(1109,1991,ykt,Kf),H_t.Kc=function(){return new Sb(Fj(KH(this.a.a)).Kc())},H_t.gc=function(){return KH(this.a.a).gc()};kB(ukt,"AbstractMultiset/EntrySet",1109);Xft(619,726,hkt),H_t.hc=function(){return this.gd()},H_t.jc=function(){return this.hd()},H_t.cc=function(t){return this.jd(t)},H_t.fc=function(t){return this.kd(t)},H_t.Zb=function(){return this.f||(this.f=this.ac())},H_t.hd=function(){return YH(),YH(),CBt},H_t.Fb=function(t){return f6(this,t)},H_t.jd=function(t){return ZR(FX(this,t),21)},H_t.kd=function(t){return ZR(u8(this,t),21)},H_t.mc=function(t){return YH(),new Dx(ZR(t,21))},H_t.pc=function(t,e){return new wI(this,t,ZR(e,21))};kB(ukt,"AbstractSetMultimap",619);Xft(1657,619,hkt),H_t.hc=function(){return new Xw(this.b)},H_t.gd=function(){return new Xw(this.b)},H_t.jc=function(){return IB(new Xw(this.b))},H_t.hd=function(){return IB(new Xw(this.b))},H_t.cc=function(t){return ZR(ZR(FX(this,t),21),84)},H_t.jd=function(t){return ZR(ZR(FX(this,t),21),84)},H_t.fc=function(t){return ZR(ZR(u8(this,t),21),84)},H_t.kd=function(t){return ZR(ZR(u8(this,t),21),84)},H_t.mc=function(t){return CP(t,271)?IB(ZR(t,271)):(YH(),new CL(ZR(t,84)))},H_t.Zb=function(){return this.f||(this.f=CP(this.c,171)?new gI(this,ZR(this.c,171)):CP(this.c,161)?new pI(this,ZR(this.c,161)):new Y_(this,this.c))},H_t.pc=function(t,e){return CP(e,271)?new SC(this,t,ZR(e,271)):new xI(this,t,ZR(e,84))};kB(ukt,"AbstractSortedSetMultimap",1657);Xft(1658,1657,hkt),H_t.Zb=function(){return ZR(ZR(this.f||(this.f=CP(this.c,171)?new gI(this,ZR(this.c,171)):CP(this.c,161)?new pI(this,ZR(this.c,161)):new Y_(this,this.c)),161),171)},H_t.ec=function(){return ZR(ZR(this.i||(this.i=CP(this.c,171)?new L_(this,ZR(this.c,171)):CP(this.c,161)?new P_(this,ZR(this.c,161)):new rL(this,this.c)),84),271)},H_t.bc=function(){return CP(this.c,171)?new L_(this,ZR(this.c,171)):CP(this.c,161)?new P_(this,ZR(this.c,161)):new rL(this,this.c)};kB(ukt,"AbstractSortedKeySortedSetMultimap",1658);Xft(2010,1,{1947:1}),H_t.Fb=function(t){return function(t,e){var n;return e===t||!!CP(e,664)&&(n=ZR(e,1947),uet(t.g||(t.g=new Zf(t)),n.g||(n.g=new Zf(n))))}(this,t)},H_t.Hb=function(){return $5(this.g||(this.g=new Zf(this)))},H_t.Ib=function(){return Uot(this.f||(this.f=new sL(this)))};kB(ukt,"AbstractTable",2010);Xft(665,mkt,ykt,Zf),H_t.$b=function(){kx()},H_t.Hc=function(t){var e,n;return!!CP(t,468)&&(e=ZR(t,682),!!(n=ZR(R8(SB(this.a),sE(e.c.e,e.b)),83))&&z8(n.vc(),new $_(sE(e.c.c,e.a),dK(e.c,e.b,e.a))))},H_t.Kc=function(){return new iL(t=this.a,t.e.Hd().gc()*t.c.Hd().gc());var t},H_t.Mc=function(t){var e,n;return!!CP(t,468)&&(e=ZR(t,682),!!(n=ZR(R8(SB(this.a),sE(e.c.e,e.b)),83))&&function(e,n){MB(e);try{return e.Mc(n)}catch(t){if(CP(t=_5(t),205)||CP(t,173))return!1;throw um(t)}}(n.vc(),new $_(sE(e.c.c,e.a),dK(e.c,e.b,e.a))))},H_t.gc=function(){return PN(this.a)},H_t.Nc=function(){return uN((t=this.a).e.Hd().gc()*t.c.Hd().gc(),273,new Hf(t));var t};kB(ukt,"AbstractTable/CellSet",665);Xft(1928,28,vkt,Jf),H_t.$b=function(){kx()},H_t.Hc=function(t){return function(t,e){var n,r,i,a,o,s,l;for(s=0,l=(o=t.a).length;s=0?"+":"")+(n/60|0),e=ZE(r.Math.abs(n)%60),(Pst(),DBt)[this.q.getDay()]+" "+RBt[this.q.getMonth()]+" "+ZE(this.q.getDate())+" "+ZE(this.q.getHours())+":"+ZE(this.q.getMinutes())+":"+ZE(this.q.getSeconds())+" GMT"+t+e+" "+this.q.getFullYear()};var MFt=kB(pkt,"Date",199);Xft(1915,199,UTt,Mat),H_t.a=!1,H_t.b=0,H_t.c=0,H_t.d=0,H_t.e=0,H_t.f=0,H_t.g=!1,H_t.i=0,H_t.j=0,H_t.k=0,H_t.n=0,H_t.o=0,H_t.p=0;kB("com.google.gwt.i18n.shared.impl","DateRecord",1915);Xft(1966,1,{}),H_t.fe=function(){return null},H_t.ge=function(){return null},H_t.he=function(){return null},H_t.ie=function(){return null},H_t.je=function(){return null};kB(HTt,"JSONValue",1966);Xft(216,1966,{216:1},Ah,_h),H_t.Fb=function(t){return!!CP(t,216)&&JG(this.a,ZR(t,216).a)},H_t.ee=function(){return fm},H_t.Hb=function(){return cV(this.a)},H_t.fe=function(){return this},H_t.Ib=function(){var t,e,n;for(n=new AL("["),e=0,t=this.a.length;e0&&(n.a+=","),bE(n,XJ(this,e));return n.a+="]",n.a};var AFt,SFt;kB(HTt,"JSONArray",216);Xft(483,1966,{483:1},kh),H_t.ee=function(){return hm},H_t.ge=function(){return this},H_t.Ib=function(){return TL(),""+this.a},H_t.a=!1;kB(HTt,"JSONBoolean",483);Xft(985,60,iTt,Cb);var EFt;kB(HTt,"JSONException",985);Xft(1023,1966,{},y),H_t.ee=function(){return mm},H_t.Ib=function(){return lkt};kB(HTt,"JSONNull",1023);Xft(258,1966,{258:1},Th),H_t.Fb=function(t){return!!CP(t,258)&&this.a==ZR(t,258).a},H_t.ee=function(){return dm},H_t.Hb=function(){return QE(this.a)},H_t.he=function(){return this},H_t.Ib=function(){return this.a+""},H_t.a=0;kB(HTt,"JSONNumber",258);Xft(183,1966,{183:1},Pb,Mh),H_t.Fb=function(t){return!!CP(t,183)&&JG(this.a,ZR(t,183).a)},H_t.ee=function(){return pm},H_t.Hb=function(){return cV(this.a)},H_t.ie=function(){return this},H_t.Ib=function(){var t,e,n,r,i,a;for(a=new AL("{"),t=!0,r=0,i=(n=h2(this,XK(iBt,Akt,2,0,6,1))).length;r=0?":"+this.c:"")+")"},H_t.c=0;var rBt=kB(tkt,"StackTraceElement",310);Y_t={3:1,475:1,35:1,2:1};var iBt=kB(tkt,oTt,2);Xft(107,418,{475:1},Cx,Px,ML);kB(tkt,"StringBuffer",107);Xft(100,418,{475:1},Lx,Ox,AL);kB(tkt,"StringBuilder",100);Xft(687,73,ZTt,Ix);var aBt;kB(tkt,"StringIndexOutOfBoundsException",687);Xft(2043,1,{}),Xft(844,1,{},R),H_t.Kb=function(t){return ZR(t,78).e};kB(tkt,"Throwable/lambda$0$Type",844);Xft(41,60,{3:1,102:1,60:1,78:1,41:1},Rm,cx);var oBt,sBt,lBt,cBt,uBt,fBt,hBt,dBt;kB(tkt,"UnsupportedOperationException",41);Xft(240,236,{3:1,35:1,236:1,240:1},QJ,$w),H_t.wd=function(t){return Pmt(this,ZR(t,240))},H_t.ke=function(){return mlt(Bbt(this))},H_t.Fb=function(t){var e;return this===t||!!CP(t,240)&&(e=ZR(t,240),this.e==e.e&&0==Pmt(this,e))},H_t.Hb=function(){var t;return 0!=this.b?this.b:this.a<54?(t=z3(this.f),this.b=$N(qG(t,-1)),this.b=33*this.b+$N(qG(Gj(t,32),-1)),this.b=17*this.b+lq(this.e),this.b):(this.b=17*d8(this.c)+lq(this.e),this.b)},H_t.Ib=function(){return Bbt(this)},H_t.a=0,H_t.b=0,H_t.d=0,H_t.e=0,H_t.f=0;var pBt,gBt,vBt,mBt,yBt,bBt,xBt=kB("java.math","BigDecimal",240);Xft(91,236,{3:1,35:1,236:1,91:1},knt,pK,CF,yot,Aet,EC),H_t.wd=function(t){return set(this,ZR(t,91))},H_t.ke=function(){return mlt(b_t(this,0))},H_t.Fb=function(t){return V9(this,t)},H_t.Hb=function(){return d8(this)},H_t.Ib=function(){return b_t(this,0)},H_t.b=-2,H_t.c=0,H_t.d=0,H_t.e=0;var wBt,_Bt,kBt,TBt,MBt=kB("java.math","BigInteger",91);Xft(488,1967,gkt),H_t.$b=function(){WF(this)},H_t._b=function(t){return SF(this,t)},H_t.uc=function(t){return b6(this,t,this.g)||b6(this,t,this.f)},H_t.vc=function(){return new Kh(this)},H_t.xc=function(t){return UB(this,t)},H_t.zc=function(t,e){return RU(this,t,e)},H_t.Bc=function(t){return GX(this,t)},H_t.gc=function(){return uk(this)};kB(pkt,"AbstractHashMap",488);Xft(261,mkt,ykt,Kh),H_t.$b=function(){this.a.$b()},H_t.Hc=function(t){return YW(this,t)},H_t.Kc=function(){return new e6(this.a)},H_t.Mc=function(t){var e;return!!YW(this,t)&&(e=ZR(t,42).cd(),this.a.Bc(e),!0)},H_t.gc=function(){return this.a.gc()};kB(pkt,"AbstractHashMap/EntrySet",261);Xft(262,1,dkt,e6),H_t.Nb=function(t){EF(this,t)},H_t.Pb=function(){return c0(this)},H_t.Ob=function(){return this.b},H_t.Qb=function(){lZ(this)},H_t.b=!1;kB(pkt,"AbstractHashMap/EntrySetIterator",262);Xft(417,1,dkt,Xh),H_t.Nb=function(t){EF(this,t)},H_t.Ob=function(){return PT(this)},H_t.Pb=function(){return BH(this)},H_t.Qb=function(){uU(this)},H_t.b=0,H_t.c=-1;kB(pkt,"AbstractList/IteratorImpl",417);Xft(96,417,_kt,JW),H_t.Qb=function(){uU(this)},H_t.Rb=function(t){QI(this,t)},H_t.Sb=function(){return this.b>0},H_t.Tb=function(){return this.b},H_t.Ub=function(){return AO(this.b>0),this.a.Xb(this.c=--this.b)},H_t.Vb=function(){return this.b-1},H_t.Wb=function(t){MO(-1!=this.c),this.a._c(this.c,t)};kB(pkt,"AbstractList/ListIteratorImpl",96);Xft(219,52,Kkt,PG),H_t.Vc=function(t,e){rG(t,this.b),this.c.Vc(this.a+t,e),++this.b},H_t.Xb=function(t){return OG(t,this.b),this.c.Xb(this.a+t)},H_t.$c=function(t){var e;return OG(t,this.b),e=this.c.$c(this.a+t),--this.b,e},H_t._c=function(t,e){return OG(t,this.b),this.c._c(this.a+t,e)},H_t.gc=function(){return this.b},H_t.a=0,H_t.b=0;kB(pkt,"AbstractList/SubList",219);Xft(384,mkt,ykt,Zh),H_t.$b=function(){this.a.$b()},H_t.Hc=function(t){return this.a._b(t)},H_t.Kc=function(){return new Jh(this.a.vc().Kc())},H_t.Mc=function(t){return!!this.a._b(t)&&(this.a.Bc(t),!0)},H_t.gc=function(){return this.a.gc()};kB(pkt,"AbstractMap/1",384);Xft(691,1,dkt,Jh),H_t.Nb=function(t){EF(this,t)},H_t.Ob=function(){return this.a.Ob()},H_t.Pb=function(){return ZR(this.a.Pb(),42).cd()},H_t.Qb=function(){this.a.Qb()};kB(pkt,"AbstractMap/1/1",691);Xft(226,28,vkt,Qh),H_t.$b=function(){this.a.$b()},H_t.Hc=function(t){return this.a.uc(t)},H_t.Kc=function(){return new sd(this.a.vc().Kc())},H_t.gc=function(){return this.a.gc()};kB(pkt,"AbstractMap/2",226);Xft(294,1,dkt,sd),H_t.Nb=function(t){EF(this,t)},H_t.Ob=function(){return this.a.Ob()},H_t.Pb=function(){return ZR(this.a.Pb(),42).dd()},H_t.Qb=function(){this.a.Qb()};kB(pkt,"AbstractMap/2/1",294);Xft(484,1,{484:1,42:1}),H_t.Fb=function(t){var e;return!!CP(t,42)&&(e=ZR(t,42),VU(this.d,e.cd())&&VU(this.e,e.dd()))},H_t.cd=function(){return this.d},H_t.dd=function(){return this.e},H_t.Hb=function(){return DC(this.d)^DC(this.e)},H_t.ed=function(t){return ZI(this,t)},H_t.Ib=function(){return this.d+"="+this.e};kB(pkt,"AbstractMap/AbstractEntry",484);Xft(383,484,{484:1,383:1,42:1},GT);kB(pkt,"AbstractMap/SimpleEntry",383);Xft(1984,1,hMt),H_t.Fb=function(t){var e;return!!CP(t,42)&&(e=ZR(t,42),VU(this.cd(),e.cd())&&VU(this.dd(),e.dd()))},H_t.Hb=function(){return DC(this.cd())^DC(this.dd())},H_t.Ib=function(){return this.cd()+"="+this.dd()};kB(pkt,Tkt,1984);Xft(1992,1967,bkt),H_t.tc=function(t){return yX(this,t)},H_t._b=function(t){return YD(this,t)},H_t.vc=function(){return new ud(this)},H_t.xc=function(t){return nE(a6(this,t))},H_t.ec=function(){return new ld(this)};kB(pkt,"AbstractNavigableMap",1992);Xft(739,mkt,ykt,ud),H_t.Hc=function(t){return CP(t,42)&&yX(this.b,ZR(t,42))},H_t.Kc=function(){return new vD(this.b)},H_t.Mc=function(t){var e;return!!CP(t,42)&&(e=ZR(t,42),rZ(this.b,e))},H_t.gc=function(){return this.b.c};kB(pkt,"AbstractNavigableMap/EntrySet",739);Xft(493,mkt,wkt,ld),H_t.Nc=function(){return new NT(this)},H_t.$b=function(){Ob(this.a)},H_t.Hc=function(t){return YD(this.a,t)},H_t.Kc=function(){return new cd(new vD(new WL(this.a).b))},H_t.Mc=function(t){return!!YD(this.a,t)&&(fq(this.a,t),!0)},H_t.gc=function(){return this.a.c};kB(pkt,"AbstractNavigableMap/NavigableKeySet",493);Xft(494,1,dkt,cd),H_t.Nb=function(t){EF(this,t)},H_t.Ob=function(){return PT(this.a.a)},H_t.Pb=function(){return bO(this.a).cd()},H_t.Qb=function(){uR(this.a)};kB(pkt,"AbstractNavigableMap/NavigableKeySet/1",494);Xft(2004,28,vkt),H_t.Fc=function(t){return JK(xst(this,t)),!0},H_t.Gc=function(t){return yU(t),_z(t!=this,"Can't add a queue to itself"),C2(this,t)},H_t.$b=function(){for(;null!=ZJ(this););};kB(pkt,"AbstractQueue",2004);Xft(302,28,{4:1,20:1,28:1,14:1},nm,RG),H_t.Fc=function(t){return CY(this,t),!0},H_t.$b=function(){r$(this)},H_t.Hc=function(t){return T5(new XU(this),t)},H_t.dc=function(){return ix(this)},H_t.Kc=function(){return new XU(this)},H_t.Mc=function(t){return function(t,e){return!!T5(t,e)&&(o1(t),!0)}(new XU(this),t)},H_t.gc=function(){return this.c-this.b&this.a.length-1},H_t.Nc=function(){return new DG(this,272)},H_t.Qc=function(t){var e;return e=this.c-this.b&this.a.length-1,t.lengthe&&zB(t,e,null),t},H_t.b=0,H_t.c=0;kB(pkt,"ArrayDeque",302);Xft(446,1,dkt,XU),H_t.Nb=function(t){EF(this,t)},H_t.Ob=function(){return this.a!=this.b},H_t.Pb=function(){return p8(this)},H_t.Qb=function(){o1(this)},H_t.a=0,H_t.b=0,H_t.c=-1;kB(pkt,"ArrayDeque/IteratorImpl",446);Xft(12,52,dMt,rm,mK,cR),H_t.Vc=function(t,e){QN(this,t,e)},H_t.Fc=function(t){return nz(this,t)},H_t.Wc=function(t,e){return H6(this,t,e)},H_t.Gc=function(t){return A5(this,t)},H_t.$b=function(){this.c=XK(Yjt,akt,1,0,5,1)},H_t.Hc=function(t){return-1!=uJ(this,t,0)},H_t.Jc=function(t){$Q(this,t)},H_t.Xb=function(t){return TN(this,t)},H_t.Xc=function(t){return uJ(this,t,0)},H_t.dc=function(){return 0==this.c.length},H_t.Kc=function(){return new md(this)},H_t.$c=function(t){return jX(this,t)},H_t.Mc=function(t){return sJ(this,t)},H_t.Ud=function(t,e){LG(this,t,e)},H_t._c=function(t,e){return K$(this,t,e)},H_t.gc=function(){return this.c.length},H_t.ad=function(t){JC(this,t)},H_t.Pc=function(){return pO(this)},H_t.Qc=function(t){return Vet(this,t)};var ABt=kB(pkt,"ArrayList",12);Xft(7,1,dkt,md),H_t.Nb=function(t){EF(this,t)},H_t.Ob=function(){return QC(this)},H_t.Pb=function(){return HG(this)},H_t.Qb=function(){GF(this)},H_t.a=0,H_t.b=-1;kB(pkt,"ArrayList/1",7);Xft(2013,r.Function,{},T),H_t.te=function(t,e){return O7(t,e)},Xft(154,52,pMt,ox),H_t.Hc=function(t){return-1!=m1(this,t)},H_t.Jc=function(t){var e,n,r,i;for(yU(t),r=0,i=(n=this.a).length;r>>0).toString(16))},H_t.f=0,H_t.i=eMt;var MUt=kB(GMt,"CNode",57);Xft(814,1,{},sy);var AUt;kB(GMt,"CNode/CNodeBuilder",814);Xft(1525,1,{},pt),H_t.Oe=function(t,e){return 0},H_t.Pe=function(t,e){return 0};kB(GMt,YMt,1525);Xft(1790,1,{},gt),H_t.Le=function(t){var e,n,i,a,o,s,l,c,u,f,h,d,p,g,v;for(u=tMt,i=new md(t.a.b);i.an.d.c||n.d.c==i.d.c&&n.d.b0?t+this.n.d+this.n.a:0},H_t.Se=function(){var t,e,n,i,a;if(a=0,this.e)this.b?a=this.b.a:this.a[1][1]&&(a=this.a[1][1].Se());else if(this.g)a=R9(this,dat(this,null,!0));else for(JQ(),n=0,i=(e=R5(qx(fHt,1),Xkt,232,0,[sHt,lHt,cHt])).length;n0?a+this.n.b+this.n.c:0},H_t.Te=function(){var t,e,n,r,i;if(this.g)for(t=dat(this,null,!1),JQ(),r=0,i=(n=R5(qx(fHt,1),Xkt,232,0,[sHt,lHt,cHt])).length;r0&&(i[0]+=this.d,n-=i[0]),i[2]>0&&(i[2]+=this.d,n-=i[2]),this.c.a=r.Math.max(0,n),this.c.d=e.d+t.d+(this.c.a-n)/2,i[1]=r.Math.max(i[1],n),MX(this,lHt,e.d+t.d+i[0]-(i[1]-n)/2,i)},H_t.b=null,H_t.d=0,H_t.e=!1,H_t.f=!1,H_t.g=!1;var hHt,dHt,pHt,gHt=0,vHt=0;kB(yAt,"GridContainerCell",1473);Xft(461,22,{3:1,35:1,22:1,461:1},lM);var mHt,yHt=Y0(yAt,"HorizontalLabelAlignment",461,cFt,(function(){return UZ(),R5(qx(yHt,1),Xkt,461,0,[dHt,hHt,pHt])}),(function(t){return UZ(),iQ((bK(),mHt),t)}));Xft(306,212,{212:1,306:1},nq,jQ,VV),H_t.Re=function(){return Yz(this)},H_t.Se=function(){return $z(this)},H_t.a=0,H_t.c=!1;var bHt=kB(yAt,"LabelCell",306);Xft(244,326,{212:1,326:1,244:1},Set),H_t.Re=function(){return Nut(this)},H_t.Se=function(){return jut(this)},H_t.Te=function(){syt(this)},H_t.Ue=function(){hyt(this)},H_t.b=0,H_t.c=0,H_t.d=!1;kB(yAt,"StripContainerCell",244);Xft(1626,1,Qkt,_t),H_t.Mb=function(t){return function(t){return!!t&&t.k}(ZR(t,212))};kB(yAt,"StripContainerCell/lambda$0$Type",1626);Xft(1627,1,{},kt),H_t.Fe=function(t){return ZR(t,212).Se()};kB(yAt,"StripContainerCell/lambda$1$Type",1627);Xft(1628,1,Qkt,Tt),H_t.Mb=function(t){return function(t){return!!t&&t.j}(ZR(t,212))};kB(yAt,"StripContainerCell/lambda$2$Type",1628);Xft(1629,1,{},Mt),H_t.Fe=function(t){return ZR(t,212).Re()};var xHt,wHt,_Ht;kB(yAt,"StripContainerCell/lambda$3$Type",1629);Xft(462,22,{3:1,35:1,22:1,462:1},cM);var kHt,THt=Y0(yAt,"VerticalLabelAlignment",462,cFt,(function(){return PJ(),R5(qx(THt,1),Xkt,462,0,[_Ht,wHt,xHt])}),(function(t){return PJ(),iQ((xK(),kHt),t)}));Xft(789,1,{},xwt),H_t.c=0,H_t.d=0,H_t.k=0,H_t.s=0,H_t.t=0,H_t.v=!1,H_t.w=0,H_t.D=!1;kB(AAt,"NodeContext",789);Xft(1471,1,HMt,At),H_t.ue=function(t,e){return tC(ZR(t,61),ZR(e,61))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(AAt,"NodeContext/0methodref$comparePortSides$Type",1471);Xft(1472,1,HMt,St),H_t.ue=function(t,e){return function(t,e){var n;if(0!=(n=tC(t.b.Hf(),e.b.Hf())))return n;switch(t.b.Hf().g){case 1:case 2:return nP(t.b.sf(),e.b.sf());case 3:case 4:return nP(e.b.sf(),t.b.sf())}return 0}(ZR(t,111),ZR(e,111))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};var MHt,AHt,SHt,EHt,CHt,PHt,LHt,OHt,IHt,DHt,RHt,zHt,NHt,jHt,FHt,BHt,UHt,HHt,VHt,qHt,GHt,WHt;kB(AAt,"NodeContext/1methodref$comparePortContexts$Type",1472);Xft(159,22,{3:1,35:1,22:1,159:1},W2);var YHt,$Ht=Y0(AAt,"NodeLabelLocation",159,cFt,$et,(function(t){return z_t(),iQ((IE(),YHt),t)}));Xft(111,1,{111:1},mft),H_t.a=!1;kB(AAt,"PortContext",111);Xft(1476,1,Ckt,Et),H_t.td=function(t){l_(ZR(t,306))};kB(CAt,PAt,1476);Xft(1477,1,Qkt,Ct),H_t.Mb=function(t){return!!ZR(t,111).c};kB(CAt,LAt,1477);Xft(1478,1,Ckt,Pt),H_t.td=function(t){l_(ZR(t,111).c)};var XHt;kB(CAt,"LabelPlacer/lambda$2$Type",1478);Xft(1475,1,Ckt,Ot),H_t.td=function(t){SI(),function(t){t.b.tf(t.e)}(ZR(t,111))};kB(CAt,"NodeLabelAndSizeUtilities/lambda$0$Type",1475);Xft(790,1,Ckt,wR),H_t.td=function(t){uT(this.b,this.c,this.a,ZR(t,181))},H_t.a=!1,H_t.c=!1;kB(CAt,"NodeLabelCellCreator/lambda$0$Type",790);Xft(1474,1,Ckt,Zd),H_t.td=function(t){!function(t,e){Ult(t.c,e)}(this.a,ZR(t,181))};var KHt;kB(CAt,"PortContextCreator/lambda$0$Type",1474);Xft(1829,1,{},It);kB(IAt,"GreedyRectangleStripOverlapRemover",1829);Xft(1830,1,HMt,Lt),H_t.ue=function(t,e){return function(t,e){return O7(t.c.d,e.c.d)}(ZR(t,222),ZR(e,222))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(IAt,"GreedyRectangleStripOverlapRemover/0methodref$compareByYCoordinate$Type",1830);Xft(1786,1,{},hy),H_t.a=5,H_t.e=0;kB(IAt,"RectangleStripOverlapRemover",1786);Xft(1787,1,HMt,Rt),H_t.ue=function(t,e){return function(t,e){return O7(t.c.c,e.c.c)}(ZR(t,222),ZR(e,222))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(IAt,"RectangleStripOverlapRemover/0methodref$compareLeftRectangleBorders$Type",1787);Xft(1789,1,HMt,zt),H_t.ue=function(t,e){return function(t,e){return O7(t.c.c+t.c.b,e.c.c+e.c.b)}(ZR(t,222),ZR(e,222))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};var ZHt,JHt,QHt,tVt;kB(IAt,"RectangleStripOverlapRemover/1methodref$compareRightRectangleBorders$Type",1789);Xft(406,22,{3:1,35:1,22:1,406:1},uM);var eVt,nVt=Y0(IAt,"RectangleStripOverlapRemover/OverlapRemovalDirection",406,cFt,(function(){return n5(),R5(qx(nVt,1),Xkt,406,0,[tVt,ZHt,JHt,QHt])}),(function(t){return n5(),iQ((GZ(),eVt),t)}));Xft(222,1,{222:1},fj);kB(IAt,"RectangleStripOverlapRemover/RectangleNode",222);Xft(1788,1,Ckt,Jd),H_t.td=function(t){!function(t,e){var n,r;switch(r=e.c,n=e.a,t.b.g){case 0:n.d=t.e-r.a-r.d;break;case 1:n.d+=t.e;break;case 2:n.c=t.e-r.a-r.d;break;case 3:n.c=t.e+r.d}}(this.a,ZR(t,222))};kB(IAt,"RectangleStripOverlapRemover/lambda$1$Type",1788);Xft(1304,1,HMt,Nt),H_t.ue=function(t,e){return function(t,e){var n,r,i,a;return n=new jt,1==(i=2==(i=(r=ZR(w$(fH(new AN(null,new DG(t.f,16)),n),wJ(new K,new Z,new it,new at,R5(qx(vUt,1),Xkt,132,0,[(C6(),pUt),dUt]))),21)).gc())?1:0)&&cE(Att(ZR(w$(uH(r.Lc(),new Ft),w3(wet(0),new nt)),162).a,2),0)&&(i=0),1==(a=2==(a=(r=ZR(w$(fH(new AN(null,new DG(e.f,16)),n),wJ(new K,new Z,new it,new at,R5(qx(vUt,1),Xkt,132,0,[pUt,dUt]))),21)).gc())?1:0)&&cE(Att(ZR(w$(uH(r.Lc(),new Bt),w3(wet(0),new nt)),162).a,2),0)&&(a=0),i0?ZF(t.a,e,n):ZF(t.b,e,n)}(this,ZR(t,46),ZR(e,167))};kB(RAt,"SuccessorCombination",777);Xft(644,1,{},Yt),H_t.Ce=function(t,e){var n;return function(t){var e,n,i,a,o;return n=a=ZR(t.a,19).a,i=o=ZR(t.b,19).a,e=r.Math.max(r.Math.abs(a),r.Math.abs(o)),a<=0&&a==o?(n=0,i=o-1):a==-e&&o!=e?(n=o,i=a,o>=0&&++n):(n=-o,i=a),new bS(g7(n),g7(i))}((n=ZR(t,46),ZR(e,167),n))};kB(RAt,"SuccessorJitter",644);Xft(643,1,{},$t),H_t.Ce=function(t,e){var n;return function(t){var e,n;if(e=ZR(t.a,19).a,n=ZR(t.b,19).a,e>=0){if(e==n)return new bS(g7(-e-1),g7(-e-1));if(e==-n)return new bS(g7(-e),g7(n+1))}return r.Math.abs(e)>r.Math.abs(n)?new bS(g7(-e),g7(e<0?n:n+1)):new bS(g7(e+1),g7(n))}((n=ZR(t,46),ZR(e,167),n))};kB(RAt,"SuccessorLineByLine",643);Xft(568,1,{},Xt),H_t.Ce=function(t,e){var n;return function(t){var e,n,r,i;return e=r=ZR(t.a,19).a,n=i=ZR(t.b,19).a,0==r&&0==i?n-=1:-1==r&&i<=0?(e=0,n-=2):r<=0&&i>0?(e-=1,n-=1):r>=0&&i<0?(e+=1,n+=1):r>0&&i>=0?(e-=1,n+=1):(e+=1,n-=1),new bS(g7(e),g7(n))}((n=ZR(t,46),ZR(e,167),n))};kB(RAt,"SuccessorManhattan",568);Xft(1356,1,{},Kt),H_t.Ce=function(t,e){var n;return function(t){var e,n,i;return n=ZR(t.a,19).a,i=ZR(t.b,19).a,n<(e=r.Math.max(r.Math.abs(n),r.Math.abs(i)))&&i==-e?new bS(g7(n+1),g7(i)):n==e&&i=-e&&i==e?new bS(g7(n-1),g7(i)):new bS(g7(n),g7(i-1))}((n=ZR(t,46),ZR(e,167),n))};kB(RAt,"SuccessorMaxNormWindingInMathPosSense",1356);Xft(400,1,{},Qd),H_t.Ce=function(t,e){return ZF(this,t,e)},H_t.c=!1,H_t.d=!1,H_t.e=!1,H_t.f=!1;kB(RAt,"SuccessorQuadrantsGeneric",400);Xft(1357,1,{},Zt),H_t.Kb=function(t){return ZR(t,324).a};var rVt,iVt,aVt,oVt;kB(RAt,"SuccessorQuadrantsGeneric/lambda$0$Type",1357);Xft(323,22,{3:1,35:1,22:1,323:1},rM),H_t.a=!1;var sVt,lVt=Y0(BAt,UAt,323,cFt,(function(){return Snt(),R5(qx(lVt,1),Xkt,323,0,[iVt,rVt,aVt,oVt])}),(function(t){return Snt(),iQ((WZ(),sVt),t)}));Xft(1298,1,{}),H_t.Ib=function(){var t,e,n,r,i,a;for(n=" ",t=g7(0),i=0;i0&&I0(m,x*_),w>0&&D0(m,w*k);for(A3(t.b,new fe),e=new rm,s=new e6(new Kh(t.c).a);s.b;)r=ZR((o=c0(s)).cd(),79),n=ZR(o.dd(),395).a,i=Qpt(r,!1,!1),vyt(f=$ot(Fst(r),Flt(i),n),i),(b=Bst(r))&&-1==uJ(e,b,0)&&(e.c[e.c.length]=b,PH(b,(AO(0!=f.b),ZR(f.a.a.c,8)),n));for(v=new e6(new Kh(t.d).a);v.b;)r=ZR((g=c0(v)).cd(),79),n=ZR(g.dd(),395).a,i=Qpt(r,!1,!1),f=$ot(Hst(r),W4(Flt(i)),n),vyt(f=W4(f),i),(b=Ust(r))&&-1==uJ(e,b,0)&&(e.c[e.c.length]=b,PH(b,(AO(0!=f.b),ZR(f.c.b.c,8)),n))}(i),Ont(t,OVt,this.b),jlt(e)},H_t.a=0;kB(tSt,"DisCoLayoutProvider",1132);Xft(1244,1,{},ie),H_t.c=!1,H_t.e=0,H_t.f=0;kB(tSt,"DisCoPolyominoCompactor",1244);Xft(561,1,{561:1},VN),H_t.b=!0;var gVt,vVt,mVt,yVt;kB(eSt,"DCComponent",561);Xft(394,22,{3:1,35:1,22:1,394:1},nM),H_t.a=!1;var bVt,xVt=Y0(eSt,"DCDirection",394,cFt,(function(){return Ent(),R5(qx(xVt,1),Xkt,394,0,[vVt,gVt,mVt,yVt])}),(function(t){return Ent(),iQ((YZ(),bVt),t)}));Xft(266,134,{3:1,266:1,94:1,134:1},rht);kB(eSt,"DCElement",266);Xft(395,1,{395:1},Hrt),H_t.c=0;kB(eSt,"DCExtension",395);Xft(755,134,$At,_w);var wVt;kB(eSt,"DCGraph",755);Xft(481,22,{3:1,35:1,22:1,481:1},EO);var _Vt,kVt,TVt,MVt,AVt,SVt,EVt=Y0(nSt,rSt,481,cFt,(function(){return Uk(),R5(qx(EVt,1),Xkt,481,0,[wVt])}),(function(t){return Uk(),iQ((xY(),_Vt),t)}));Xft(854,1,dAt,Bu),H_t.Qe=function(t){_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,iSt),lSt),"Connected Components Compaction Strategy"),"Strategy for packing different connected components in order to save space and enhance readability of a graph."),MVt),(dct(),O9t)),EVt),J7((Zet(),S9t))))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,aSt),lSt),"Connected Components Layout Algorithm"),"A layout algorithm that is to be applied to each connected component before the components themselves are compacted. If unspecified, the positions of the components' nodes are not altered."),z9t),iBt),J7(S9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,oSt),"debug"),"DCGraph"),"Access to the DCGraph is intended for the debug view,"),R9t),Yjt),J7(S9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,sSt),"debug"),"List of Polyominoes"),"Access to the polyominoes is intended for the debug view,"),R9t),Yjt),J7(S9t)))),Jyt((new Uu,t))};var CVt,PVt,LVt,OVt,IVt,DVt,RVt,zVt,NVt,jVt,FVt,BVt;kB(nSt,"DisCoMetaDataProvider",854);Xft(998,1,dAt,Uu),H_t.Qe=function(t){Jyt(t)};kB(nSt,"DisCoOptions",998);Xft(999,1,{},ae),H_t.$e=function(){return new re},H_t._e=function(t){};kB(nSt,"DisCoOptions/DiscoFactory",999);Xft(562,167,{321:1,167:1,562:1},edt),H_t.a=0,H_t.b=0,H_t.c=0,H_t.d=0;var UVt,HVt,VVt;kB("org.eclipse.elk.alg.disco.structures","DCPolyomino",562);Xft(1268,1,Qkt,oe),H_t.Mb=function(t){return OE(t)};kB(pSt,"ElkGraphComponentsProcessor/lambda$0$Type",1268);Xft(1269,1,{},se),H_t.Kb=function(t){return WH(),Fst(ZR(t,79))};kB(pSt,"ElkGraphComponentsProcessor/lambda$1$Type",1269);Xft(1270,1,Qkt,le),H_t.Mb=function(t){return function(t){return WH(),Fst(t)==Eq(Hst(t))}(ZR(t,79))};kB(pSt,"ElkGraphComponentsProcessor/lambda$2$Type",1270);Xft(1271,1,{},ce),H_t.Kb=function(t){return WH(),Hst(ZR(t,79))};kB(pSt,"ElkGraphComponentsProcessor/lambda$3$Type",1271);Xft(1272,1,Qkt,ue),H_t.Mb=function(t){return function(t){return WH(),Hst(t)==Eq(Fst(t))}(ZR(t,79))};kB(pSt,"ElkGraphComponentsProcessor/lambda$4$Type",1272);Xft(1273,1,Qkt,ep),H_t.Mb=function(t){return function(t,e){return WH(),t==Eq(Fst(e))||t==Eq(Hst(e))}(this.a,ZR(t,79))};kB(pSt,"ElkGraphComponentsProcessor/lambda$5$Type",1273);Xft(1274,1,{},np),H_t.Kb=function(t){return function(t,e){return WH(),t==Fst(e)?Hst(e):Fst(e)}(this.a,ZR(t,79))};kB(pSt,"ElkGraphComponentsProcessor/lambda$6$Type",1274);Xft(1241,1,{},i$),H_t.a=0;kB(pSt,"ElkGraphTransformer",1241);Xft(1242,1,{},fe),H_t.Od=function(t,e){!function(t,e,n){var r,i,a,o;t.a=n.b.d,CP(e,352)?(Y$(a=Flt(i=Qpt(ZR(e,79),!1,!1)),r=new rp(t)),vyt(a,i),null!=e.We((L_t(),Wte))&&Y$(ZR(e.We(Wte),74),r)):((o=ZR(e,470)).Hg(o.Dg()+t.a.a),o.Ig(o.Eg()+t.a.b))}(this,ZR(t,160),ZR(e,266))};kB(pSt,"ElkGraphTransformer/OffsetApplier",1242);Xft(1243,1,Ckt,rp),H_t.td=function(t){!function(t,e){OO(e,t.a.a.a,t.a.a.b)}(this,ZR(t,8))};kB(pSt,"ElkGraphTransformer/OffsetApplier/OffSetToChainApplier",1243);Xft(753,1,{},he);kB(bSt,xSt,753);Xft(1232,1,HMt,de),H_t.ue=function(t,e){return function(t,e){var n,r,i;return 0==(n=ZR(Ost(e,(Vgt(),gqt)),19).a-ZR(Ost(t,gqt),19).a)?(r=xD(gP(ZR(Ost(t,(g2(),Tqt)),8)),ZR(Ost(t,Mqt),8)),i=xD(gP(ZR(Ost(e,Tqt),8)),ZR(Ost(e,Mqt),8)),O7(r.a*r.b,i.a*i.b)):n}(ZR(t,231),ZR(e,231))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(bSt,wSt,1232);Xft(740,209,ZAt,ry),H_t.Ze=function(t,e){pdt(this,t,e)};kB(bSt,"ForceLayoutProvider",740);Xft(357,134,{3:1,357:1,94:1,134:1});kB(_St,"FParticle",357);Xft(559,357,{3:1,559:1,357:1,94:1,134:1},gB),H_t.Ib=function(){var t;return this.a?(t=uJ(this.a.a,this,0))>=0?"b"+t+"["+Z$(this.a)+"]":"b["+Z$(this.a)+"]":"b_"+FL(this)};kB(_St,"FBendpoint",559);Xft(282,134,{3:1,282:1,94:1,134:1},iD),H_t.Ib=function(){return Z$(this)};kB(_St,"FEdge",282);Xft(231,134,{3:1,231:1,94:1,134:1},YX);var qVt=kB(_St,"FGraph",231);Xft(447,357,{3:1,447:1,357:1,94:1,134:1},p$),H_t.Ib=function(){return null==this.b||0==this.b.length?"l["+Z$(this.a)+"]":"l_"+this.b};kB(_St,"FLabel",447);Xft(144,357,{3:1,144:1,357:1,94:1,134:1},qB),H_t.Ib=function(){return ZG(this)},H_t.b=0;kB(_St,"FNode",144);Xft(2003,1,{}),H_t.bf=function(t){Bmt(this,t)},H_t.cf=function(){nit(this)},H_t.d=0;kB(TSt,"AbstractForceModel",2003);Xft(631,2003,{631:1},Q3),H_t.af=function(t,e){var n,i,a,o,s;return xut(this.f,t,e),a=xD(gP(e.d),t.d),s=r.Math.sqrt(a.a*a.a+a.b*a.b),i=r.Math.max(0,s-fU(t.e)/2-fU(e.e)/2),o=(n=B4(this.e,t,e))>0?-function(t,e){return t>0?r.Math.log(t/e):-100}(i,this.c)*n:function(t,e){return t>0?e/(t*t):100*e}(i,this.b)*ZR(Ost(t,(Vgt(),gqt)),19).a,jP(a,o/s),a},H_t.bf=function(t){Bmt(this,t),this.a=ZR(Ost(t,(Vgt(),aqt)),19).a,this.c=ex(fI(Ost(t,wqt))),this.b=ex(fI(Ost(t,mqt)))},H_t.df=function(t){return t0?e*e/t:e*e*100}(i=r.Math.max(0,s-fU(t.e)/2-fU(e.e)/2),this.a)*ZR(Ost(t,(Vgt(),gqt)),19).a,(n=B4(this.e,t,e))>0&&(o-=function(t,e){return t*t/e}(i,this.a)*n),jP(a,o*this.b/s),a},H_t.bf=function(t){var e,n,i,a,o,s,l;for(Bmt(this,t),this.b=ex(fI(Ost(t,(Vgt(),_qt)))),this.c=this.b/ZR(Ost(t,aqt),19).a,i=t.e.c.length,o=0,a=0,l=new md(t.e);l.a0},H_t.a=0,H_t.b=0,H_t.c=0;var GVt,WVt,YVt,$Vt,XVt,KVt,ZVt,JVt;kB(TSt,"FruchtermanReingoldModel",632);Xft(849,1,dAt,Vu),H_t.Qe=function(t){_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,MSt),""),"Force Model"),"Determines the model for force calculation."),YVt),(dct(),O9t)),kqt),J7((Zet(),S9t))))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,ASt),""),"Iterations"),"The number of iterations on the force model."),g7(300)),D9t),$Ft),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,SSt),""),"Repulsive Power"),"Determines how many bend points are added to the edge; such bend points are regarded as repelling particles in the force model"),g7(0)),D9t),$Ft),J7(T9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,ESt),""),"FR Temperature"),"The temperature is used as a scaling factor for particle displacements."),CSt),L9t),qFt),J7(S9t)))),RW(t,ESt,MSt,JVt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,PSt),""),"Eades Repulsion"),"Factor for repulsive forces in Eades' model."),5),L9t),qFt),J7(S9t)))),RW(t,PSt,MSt,XVt),Swt((new qu,t))};var QVt,tqt;kB(LSt,"ForceMetaDataProvider",849);Xft(424,22,{3:1,35:1,22:1,424:1},fM);var eqt,nqt,rqt,iqt,aqt,oqt,sqt,lqt,cqt,uqt,fqt,hqt,dqt,pqt,gqt,vqt,mqt,yqt,bqt,xqt,wqt,_qt,kqt=Y0(LSt,"ForceModelStrategy",424,cFt,(function(){return uQ(),R5(qx(kqt,1),Xkt,424,0,[QVt,tqt])}),(function(t){return uQ(),iQ((M$(),eqt),t)}));Xft(988,1,dAt,qu),H_t.Qe=function(t){Swt(t)};kB(LSt,"ForceOptions",988);Xft(989,1,{},pe),H_t.$e=function(){return new ry},H_t._e=function(t){};var Tqt,Mqt,Aqt,Sqt,Eqt,Cqt,Pqt,Lqt,Oqt,Iqt;kB(LSt,"ForceOptions/ForceFactory",989);Xft(850,1,dAt,Gu),H_t.Qe=function(t){_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,ZSt),""),"Fixed Position"),"Prevent that the node is moved by the layout algorithm."),(TL(),!1)),(dct(),P9t)),jFt),J7((Zet(),A9t))))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,JSt),""),"Desired Edge Length"),"Either specified for parent nodes or for individual edges, where the latter takes higher precedence."),100),L9t),qFt),ej(S9t,R5(qx(j9t,1),Xkt,175,0,[T9t]))))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,QSt),""),"Layout Dimension"),"Dimensions that are permitted to be altered during layout."),Pqt),O9t),Kqt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,tEt),""),"Stress Epsilon"),"Termination criterion for the iterative process."),CSt),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,eEt),""),"Iteration Limit"),"Maximum number of performed iterations. Takes higher precedence than 'epsilon'."),g7(Q_t)),D9t),$Ft),J7(S9t)))),Bxt((new Wu,t))};var Dqt,Rqt,zqt,Nqt,jqt,Fqt,Bqt,Uqt,Hqt,Vqt,qqt,Gqt;kB(LSt,"StressMetaDataProvider",850);Xft(992,1,dAt,Wu),H_t.Qe=function(t){Bxt(t)};kB(LSt,"StressOptions",992);Xft(993,1,{},ge),H_t.$e=function(){return new aD},H_t._e=function(t){};kB(LSt,"StressOptions/StressFactory",993);Xft(1128,209,ZAt,aD),H_t.Ze=function(t,e){var n,r,i,a;for(ast(e,rEt,1),tx(uI(kht(t,(Xit(),jqt))))?tx(uI(kht(t,qqt)))||iq(new Yd((gT(),new Yb(t)))):pdt(new ry,t,J2(e,1)),r=p4(t),a=(n=uyt(this.a,r)).Kc();a.Ob();)(i=ZR(a.Pb(),231)).e.c.length<=1||(Dbt(this.b,i),Aht(this.b),$Q(i.d,new ve));Owt(r=Uwt(n)),jlt(e)};kB(aEt,"StressLayoutProvider",1128);Xft(1129,1,Ckt,ve),H_t.td=function(t){Kyt(ZR(t,447))};kB(aEt,"StressLayoutProvider/lambda$0$Type",1129);Xft(990,1,{},Hm),H_t.c=0,H_t.e=0,H_t.g=0;var Wqt,Yqt,$qt;kB(aEt,"StressMajorization",990);Xft(379,22,{3:1,35:1,22:1,379:1},hM);var Xqt,Kqt=Y0(aEt,"StressMajorization/Dimension",379,cFt,(function(){return CJ(),R5(qx(Kqt,1),Xkt,379,0,[Yqt,Wqt,$qt])}),(function(t){return CJ(),iQ((_K(),Xqt),t)}));Xft(991,1,HMt,ip),H_t.ue=function(t,e){return function(t,e,n){return O7(t[e.b],t[n.b])}(this.a,ZR(t,144),ZR(e,144))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(aEt,"StressMajorization/lambda$0$Type",991);Xft(1229,1,{},vW);kB(sEt,"ElkLayered",1229);Xft(1230,1,Ckt,me),H_t.td=function(t){!function(t){var e;if((e=ZR(Ost(t,(y_t(),o0t)),314))==(P1(),A$t))throw um(new dx("The hierarchy aware processor "+e+" in child node "+t+" is only allowed if the root node specifies the same hierarchical processor."))}(ZR(t,37))};kB(sEt,"ElkLayered/lambda$0$Type",1230);Xft(1231,1,Ckt,ap),H_t.td=function(t){!function(t,e){d4(e,(y_t(),t0t),t)}(this.a,ZR(t,37))};var Zqt,Jqt,Qqt;kB(sEt,"ElkLayered/lambda$1$Type",1231);Xft(1263,1,{},fP);kB(sEt,"GraphConfigurator",1263);Xft(759,1,Ckt,op),H_t.td=function(t){alt(this.a,ZR(t,10))};kB(sEt,"GraphConfigurator/lambda$0$Type",759);Xft(760,1,{},ye),H_t.Kb=function(t){return Aat(),new AN(null,new DG(ZR(t,29).a,16))};kB(sEt,"GraphConfigurator/lambda$1$Type",760);Xft(761,1,Ckt,sp),H_t.td=function(t){alt(this.a,ZR(t,10))};kB(sEt,"GraphConfigurator/lambda$2$Type",761);Xft(1127,209,ZAt,ay),H_t.Ze=function(t,e){var n;n=Byt(new py,t),rE(kht(t,(y_t(),A0t)))===rE((P8(),Dne))?F9(this.a,n,e):cft(this.a,n,e),Awt(new $u,n)};var tGt,eGt,nGt,rGt,iGt;kB(sEt,"LayeredLayoutProvider",1127);Xft(356,22,{3:1,35:1,22:1,356:1},dM);var aGt,oGt,sGt=Y0(sEt,"LayeredPhases",356,cFt,(function(){return Ist(),R5(qx(sGt,1),Xkt,356,0,[tGt,eGt,nGt,rGt,iGt])}),(function(t){return Ist(),iQ((bQ(),aGt),t)}));Xft(1651,1,{},x1),H_t.i=0;var lGt;kB(lEt,"ComponentsToCGraphTransformer",1651);Xft(1652,1,{},be),H_t.ef=function(t,e){return r.Math.min(null!=t.a?ex(t.a):t.c.i,null!=e.a?ex(e.a):e.c.i)},H_t.ff=function(t,e){return r.Math.min(null!=t.a?ex(t.a):t.c.i,null!=e.a?ex(e.a):e.c.i)};kB(lEt,"ComponentsToCGraphTransformer/1",1652);Xft(81,1,{81:1}),H_t.i=0,H_t.k=!0,H_t.o=eMt;var cGt=kB(cEt,"CNode",81);Xft(460,81,{460:1,81:1},GL,Tet),H_t.Ib=function(){return""};var uGt,fGt;kB(lEt,"ComponentsToCGraphTransformer/CRectNode",460);Xft(1623,1,{},xe);kB(lEt,"OneDimensionalComponentsCompaction",1623);Xft(1624,1,{},we),H_t.Kb=function(t){return function(t){return i8(),TL(),0!=ZR(t.a,81).d.e}(ZR(t,46))},H_t.Fb=function(t){return this===t};kB(lEt,"OneDimensionalComponentsCompaction/lambda$0$Type",1624);Xft(1625,1,{},_e),H_t.Kb=function(t){return function(t){return i8(),TL(),!!(M9(ZR(t.a,81).j,ZR(t.b,103))||0!=ZR(t.a,81).d.e&&M9(ZR(t.a,81).j,ZR(t.b,103)))}(ZR(t,46))},H_t.Fb=function(t){return this===t};kB(lEt,"OneDimensionalComponentsCompaction/lambda$1$Type",1625);Xft(1654,1,{},HB);kB(cEt,"CGraph",1654);Xft(189,1,{189:1},Met),H_t.b=0,H_t.c=0,H_t.e=0,H_t.g=!0,H_t.i=eMt;kB(cEt,"CGroup",189);Xft(1653,1,{},Ae),H_t.ef=function(t,e){return r.Math.max(null!=t.a?ex(t.a):t.c.i,null!=e.a?ex(e.a):e.c.i)},H_t.ff=function(t,e){return r.Math.max(null!=t.a?ex(t.a):t.c.i,null!=e.a?ex(e.a):e.c.i)};var hGt;kB(cEt,YMt,1653);Xft(1655,1,{},aft),H_t.d=!1;var dGt=kB(cEt,JMt,1655);Xft(1656,1,{},Se),H_t.Kb=function(t){return $k(),TL(),0!=ZR(ZR(t,46).a,81).d.e},H_t.Fb=function(t){return this===t};kB(cEt,QMt,1656);Xft(823,1,{},vN),H_t.a=!1,H_t.b=!1,H_t.c=!1,H_t.d=!1;kB(cEt,tAt,823);Xft(1825,1,{},hj);kB(uEt,eAt,1825);var pGt=oN(fEt,qMt);Xft(1826,1,{369:1},xV),H_t.Ke=function(t){!function(t,e){var n,r,i;e.a?(sB(t.b,e.b),t.a[e.b.i]=ZR(UD(t.b,e.b),81),(n=ZR(BD(t.b,e.b),81))&&(t.a[n.i]=e.b)):(!!(r=ZR(UD(t.b,e.b),81))&&r==t.a[e.b.i]&&!!r.d&&r.d!=e.b.d&&r.f.Fc(e.b),!!(i=ZR(BD(t.b,e.b),81))&&t.a[i.i]==e.b&&!!i.d&&i.d!=e.b.d&&e.b.f.Fc(i),NL(t.b,e.b))}(this,ZR(t,466))};kB(uEt,nAt,1826);Xft(1827,1,HMt,Ee),H_t.ue=function(t,e){return function(t,e){return O7(t.g.c+t.g.b/2,e.g.c+e.g.b/2)}(ZR(t,81),ZR(e,81))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(uEt,rAt,1827);Xft(466,1,{466:1},CM),H_t.a=!1;kB(uEt,iAt,466);Xft(1828,1,HMt,Ce),H_t.ue=function(t,e){return function(t,e){var n,r,i;if(r=t.b.g.d,t.a||(r+=t.b.g.a),i=e.b.g.d,e.a||(i+=e.b.g.a),0==(n=O7(r,i))){if(!t.a&&e.a)return-1;if(!e.a&&t.a)return 1}return n}(ZR(t,466),ZR(e,466))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(uEt,aAt,1828);Xft(140,1,{140:1},IM,kz),H_t.Fb=function(t){var e;return null!=t&&(bGt==X4(t)&&(e=ZR(t,140),VU(this.c,e.c)&&VU(this.d,e.d)))},H_t.Hb=function(){return q6(R5(qx(Yjt,1),akt,1,5,[this.c,this.d]))},H_t.Ib=function(){return"("+this.c+rkt+this.d+(this.a?"cx":"")+this.b+")"},H_t.a=!0,H_t.c=0,H_t.d=0;var gGt,vGt,mGt,yGt,bGt=kB(fEt,"Point",140);Xft(405,22,{3:1,35:1,22:1,405:1},pM);var xGt,wGt,_Gt,kGt,TGt,MGt,AGt=Y0(fEt,"Point/Quadrant",405,cFt,(function(){return F5(),R5(qx(AGt,1),Xkt,405,0,[gGt,yGt,vGt,mGt])}),(function(t){return F5(),iQ((qZ(),xGt),t)}));Xft(1642,1,{},ly),H_t.b=null,H_t.c=null,H_t.d=null,H_t.e=null,H_t.f=null;var SGt;kB(fEt,"RectilinearConvexHull",1642);Xft(574,1,{369:1},pnt),H_t.Ke=function(t){!function(t,e){t.a.ue(e.d,t.b)>0&&(nz(t.c,new kz(e.c,e.d,t.d)),t.b=e.d)}(this,ZR(t,140))},H_t.b=0;kB(fEt,"RectilinearConvexHull/MaximalElementsEventHandler",574);Xft(1644,1,HMt,Te),H_t.ue=function(t,e){return function(t,e){return Xk(),O7((yU(t),t),(yU(e),e))}(fI(t),fI(e))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(fEt,"RectilinearConvexHull/MaximalElementsEventHandler/lambda$0$Type",1644);Xft(1643,1,{369:1},RQ),H_t.Ke=function(t){Ydt(this,ZR(t,140))},H_t.a=0,H_t.b=null,H_t.c=null,H_t.d=null,H_t.e=null;kB(fEt,"RectilinearConvexHull/RectangleEventHandler",1643);Xft(1645,1,HMt,Me),H_t.ue=function(t,e){return function(t,e){return lQ(),t.c==e.c?O7(e.d,t.d):O7(t.c,e.c)}(ZR(t,140),ZR(e,140))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(fEt,"RectilinearConvexHull/lambda$0$Type",1645);Xft(1646,1,HMt,ke),H_t.ue=function(t,e){return function(t,e){return lQ(),t.c==e.c?O7(t.d,e.d):O7(t.c,e.c)}(ZR(t,140),ZR(e,140))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(fEt,"RectilinearConvexHull/lambda$1$Type",1646);Xft(1647,1,HMt,Pe),H_t.ue=function(t,e){return function(t,e){return lQ(),t.c==e.c?O7(e.d,t.d):O7(e.c,t.c)}(ZR(t,140),ZR(e,140))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(fEt,"RectilinearConvexHull/lambda$2$Type",1647);Xft(1648,1,HMt,Le),H_t.ue=function(t,e){return function(t,e){return lQ(),t.c==e.c?O7(t.d,e.d):O7(e.c,t.c)}(ZR(t,140),ZR(e,140))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(fEt,"RectilinearConvexHull/lambda$3$Type",1648);Xft(1649,1,HMt,Oe),H_t.ue=function(t,e){return Rst(ZR(t,140),ZR(e,140))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(fEt,"RectilinearConvexHull/lambda$4$Type",1649);Xft(1650,1,{},eG);kB(fEt,"Scanline",1650);Xft(2005,1,{});var EGt;kB(hEt,"AbstractGraphPlacer",2005);Xft(325,1,{325:1},BO),H_t.mf=function(t){return!!this.nf(t)&&(Zut(this.b,ZR(Ost(t,(O_t(),cKt)),21),t),!0)},H_t.nf=function(t){var e,n,r;for(e=ZR(Ost(t,(O_t(),cKt)),21),r=ZR(FX(EGt,e),21).Kc();r.Ob();)if(n=ZR(r.Pb(),21),!ZR(FX(this.b,n),15).dc())return!1;return!0};kB(hEt,"ComponentGroup",325);Xft(765,2005,{},cy),H_t.of=function(t){var e;for(e=new md(this.a);e.ar?1:0}(ZR(t,37),ZR(e,37))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};var DGt;kB(hEt,"ComponentsProcessor/lambda$0$Type",1265);Xft(570,325,{325:1,570:1},rX),H_t.mf=function(t){return o6(this,t)},H_t.nf=function(t){return Hdt(this,t)};kB(hEt,"ModelOrderComponentGroup",570);Xft(1291,2005,{},Re),H_t.lf=function(t,e){var n,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_;if(1!=t.gc()){if(t.dc())return e.a.c=XK(Yjt,akt,1,0,5,1),e.f.a=0,void(e.f.b=0);if(rE(Ost(e,(y_t(),GQt)))===rE((n7(),LGt))){for(c=t.Kc();c.Ob();){for(m=0,g=new md((s=ZR(c.Pb(),37)).a);g.ad&&(w=0,_+=h+a,h=0),gvt(s,w+(v=s.c).a,_+v.b),PE(v),n=r.Math.max(n,w+y.a),h=r.Math.max(h,y.b),w+=y.a+a;if(e.f.a=n,e.f.b=_+h,tx(uI(Ost(o,HQt)))){for(g_t(i=new Ie,t,a),f=t.Kc();f.Ob();)bD(PE(ZR(f.Pb(),37).c),i.e);bD(PE(e.f),i.a)}gZ(e,t)}else(b=ZR(t.Xb(0),37))!=e&&(e.a.c=XK(Yjt,akt,1,0,5,1),jvt(e,b,0,0),l5(e,b),HH(e.d,b.d),e.f.a=b.f.a,e.f.b=b.f.b)};kB(hEt,"SimpleRowGraphPlacer",1291);Xft(1292,1,HMt,ze),H_t.ue=function(t,e){return function(t,e){var n;return 0==(n=e.p-t.p)?O7(t.f.a*t.f.b,e.f.a*e.f.b):n}(ZR(t,37),ZR(e,37))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};var RGt;kB(hEt,"SimpleRowGraphPlacer/1",1292);Xft(1262,1,oAt,Ne),H_t.Lb=function(t){var e;return!!(e=ZR(Ost(ZR(t,243).b,(y_t(),R0t)),74))&&0!=e.b},H_t.Fb=function(t){return this===t},H_t.Mb=function(t){var e;return!!(e=ZR(Ost(ZR(t,243).b,(y_t(),R0t)),74))&&0!=e.b};kB(vEt,"CompoundGraphPostprocessor/1",1262);Xft(1261,1,mEt,gy),H_t.pf=function(t,e){Xnt(this,ZR(t,37),e)};kB(vEt,"CompoundGraphPreprocessor",1261);Xft(441,1,{441:1},a7),H_t.c=!1;kB(vEt,"CompoundGraphPreprocessor/ExternalPort",441);Xft(243,1,{243:1},_R),H_t.Ib=function(){return gO(this.c)+":"+Fut(this.b)};kB(vEt,"CrossHierarchyEdge",243);Xft(763,1,HMt,lp),H_t.ue=function(t,e){return function(t,e,n){var r,i;return e.c==(u1(),a3t)&&n.c==i3t?-1:e.c==i3t&&n.c==a3t?1:(r=Y6(e.a,t.a),i=Y6(n.a,t.a),e.c==a3t?i-r:r-i)}(this,ZR(t,243),ZR(e,243))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(vEt,"CrossHierarchyEdgeComparator",763);Xft(299,134,{3:1,299:1,94:1,134:1}),H_t.p=0;kB(yEt,"LGraphElement",299);Xft(17,299,{3:1,17:1,299:1,94:1,134:1},_V),H_t.Ib=function(){return Fut(this)};var zGt=kB(yEt,"LEdge",17);Xft(37,299,{3:1,20:1,37:1,299:1,94:1,134:1},w1),H_t.Jc=function(t){Y$(this,t)},H_t.Kc=function(){return new md(this.b)},H_t.Ib=function(){return 0==this.b.c.length?"G-unlayered"+Gst(this.a):0==this.a.c.length?"G-layered"+Gst(this.b):"G[layerless"+Gst(this.a)+", layers"+Gst(this.b)+"]"};var NGt,jGt=kB(yEt,"LGraph",37);Xft(657,1,{}),H_t.qf=function(){return this.e.n},H_t.We=function(t){return Ost(this.e,t)},H_t.rf=function(){return this.e.o},H_t.sf=function(){return this.e.p},H_t.Xe=function(t){return PO(this.e,t)},H_t.tf=function(t){this.e.n.a=t.a,this.e.n.b=t.b},H_t.uf=function(t){this.e.o.a=t.a,this.e.o.b=t.b},H_t.vf=function(t){this.e.p=t};kB(yEt,"LGraphAdapters/AbstractLShapeAdapter",657);Xft(577,1,{839:1},cp),H_t.wf=function(){var t,e;if(!this.b)for(this.b=uO(this.a.b.c.length),e=new md(this.a.b);e.a0&&h8((IG(e-1,t.length),t.charCodeAt(e-1)),AEt);)--e;if(i> ",t),_it(n)),xE(bE((t.a+="[",t),n.i),"]")),t.a},H_t.c=!0,H_t.d=!1;var nWt=kB(yEt,"LPort",11);Xft(397,1,Dkt,fp),H_t.Jc=function(t){Y$(this,t)},H_t.Kc=function(){return new hp(new md(this.a.e))};kB(yEt,"LPort/1",397);Xft(1290,1,dkt,hp),H_t.Nb=function(t){EF(this,t)},H_t.Pb=function(){return ZR(HG(this.a),17).c},H_t.Ob=function(){return QC(this.a)},H_t.Qb=function(){GF(this.a)};kB(yEt,"LPort/1/1",1290);Xft(359,1,Dkt,dp),H_t.Jc=function(t){Y$(this,t)},H_t.Kc=function(){return new pp(new md(this.a.g))};kB(yEt,"LPort/2",359);Xft(762,1,dkt,pp),H_t.Nb=function(t){EF(this,t)},H_t.Pb=function(){return ZR(HG(this.a),17).d},H_t.Ob=function(){return QC(this.a)},H_t.Qb=function(){GF(this.a)};kB(yEt,"LPort/2/1",762);Xft(1283,1,Dkt,EM),H_t.Jc=function(t){Y$(this,t)},H_t.Kc=function(){return new WX(this)};kB(yEt,"LPort/CombineIter",1283);Xft(201,1,dkt,WX),H_t.Nb=function(t){EF(this,t)},H_t.Qb=function(){Uw()},H_t.Ob=function(){return ZL(this)},H_t.Pb=function(){return QC(this.a)?HG(this.a):HG(this.b)};kB(yEt,"LPort/CombineIter/1",201);Xft(1285,1,oAt,Be),H_t.Lb=function(t){return Jj(t)},H_t.Fb=function(t){return this===t},H_t.Mb=function(t){return K2(),0!=ZR(t,11).e.c.length};kB(yEt,"LPort/lambda$0$Type",1285);Xft(1284,1,oAt,Ue),H_t.Lb=function(t){return Qj(t)},H_t.Fb=function(t){return this===t},H_t.Mb=function(t){return K2(),0!=ZR(t,11).g.c.length};kB(yEt,"LPort/lambda$1$Type",1284);Xft(1286,1,oAt,He),H_t.Lb=function(t){return K2(),ZR(t,11).j==(Pwt(),Mre)},H_t.Fb=function(t){return this===t},H_t.Mb=function(t){return K2(),ZR(t,11).j==(Pwt(),Mre)};kB(yEt,"LPort/lambda$2$Type",1286);Xft(1287,1,oAt,Ve),H_t.Lb=function(t){return K2(),ZR(t,11).j==(Pwt(),Tre)},H_t.Fb=function(t){return this===t},H_t.Mb=function(t){return K2(),ZR(t,11).j==(Pwt(),Tre)};kB(yEt,"LPort/lambda$3$Type",1287);Xft(1288,1,oAt,qe),H_t.Lb=function(t){return K2(),ZR(t,11).j==(Pwt(),Hre)},H_t.Fb=function(t){return this===t},H_t.Mb=function(t){return K2(),ZR(t,11).j==(Pwt(),Hre)};kB(yEt,"LPort/lambda$4$Type",1288);Xft(1289,1,oAt,Ge),H_t.Lb=function(t){return K2(),ZR(t,11).j==(Pwt(),qre)},H_t.Fb=function(t){return this===t},H_t.Mb=function(t){return K2(),ZR(t,11).j==(Pwt(),qre)};kB(yEt,"LPort/lambda$5$Type",1289);Xft(29,299,{3:1,20:1,299:1,29:1,94:1,134:1},VB),H_t.Jc=function(t){Y$(this,t)},H_t.Kc=function(){return new md(this.a)},H_t.Ib=function(){return"L_"+uJ(this.b.b,this,0)+Gst(this.a)};kB(yEt,"Layer",29);Xft(1342,1,{},py);kB(OEt,IEt,1342);Xft(1346,1,{},We),H_t.Kb=function(t){return ist(ZR(t,82))};kB(OEt,"ElkGraphImporter/0methodref$connectableShapeToNode$Type",1346);Xft(1349,1,{},Ye),H_t.Kb=function(t){return ist(ZR(t,82))};kB(OEt,"ElkGraphImporter/1methodref$connectableShapeToNode$Type",1349);Xft(1343,1,Ckt,gp),H_t.td=function(t){bft(this.a,ZR(t,118))};kB(OEt,DEt,1343);Xft(1344,1,Ckt,vp),H_t.td=function(t){bft(this.a,ZR(t,118))};kB(OEt,REt,1344);Xft(1345,1,{},$e),H_t.Kb=function(t){return new AN(null,new DG(function(t){return!t.c&&(t.c=new LD(Xie,t,5,8)),t.c}(ZR(t,79)),16))};kB(OEt,zEt,1345);Xft(1347,1,Qkt,mp),H_t.Mb=function(t){return function(t,e){return YQ(e,Tq(t))}(this.a,ZR(t,33))};kB(OEt,NEt,1347);Xft(1348,1,{},Xe),H_t.Kb=function(t){return new AN(null,new DG(function(t){return!t.b&&(t.b=new LD(Xie,t,4,7)),t.b}(ZR(t,79)),16))};kB(OEt,"ElkGraphImporter/lambda$5$Type",1348);Xft(1350,1,Qkt,yp),H_t.Mb=function(t){return function(t,e){return YQ(e,Tq(t))}(this.a,ZR(t,33))};kB(OEt,"ElkGraphImporter/lambda$7$Type",1350);Xft(1351,1,Qkt,Ke),H_t.Mb=function(t){return function(t){return Xut(t)&&tx(uI(kht(t,(y_t(),O0t))))}(ZR(t,79))};var rWt;kB(OEt,"ElkGraphImporter/lambda$8$Type",1351);Xft(1278,1,{},$u);kB(OEt,"ElkGraphLayoutTransferrer",1278);Xft(1279,1,Qkt,bp),H_t.Mb=function(t){return function(t,e){return Wk(),!F3(e.d.i,t)}(this.a,ZR(t,17))};kB(OEt,"ElkGraphLayoutTransferrer/lambda$0$Type",1279);Xft(1280,1,Ckt,xp),H_t.td=function(t){Wk(),nz(this.a,ZR(t,17))};kB(OEt,"ElkGraphLayoutTransferrer/lambda$1$Type",1280);Xft(1281,1,Qkt,wp),H_t.Mb=function(t){return function(t,e){return Wk(),F3(e.d.i,t)}(this.a,ZR(t,17))};kB(OEt,"ElkGraphLayoutTransferrer/lambda$2$Type",1281);Xft(1282,1,Ckt,_p),H_t.td=function(t){Wk(),nz(this.a,ZR(t,17))};kB(OEt,"ElkGraphLayoutTransferrer/lambda$3$Type",1282);Xft(1485,1,mEt,Ze),H_t.pf=function(t,e){!function(t,e){ast(e,jEt,1),Ak($J(new AN(null,new DG(t.b,16)),new Je),new Qe),jlt(e)}(ZR(t,37),e)};kB(FEt,"CommentNodeMarginCalculator",1485);Xft(1486,1,{},Je),H_t.Kb=function(t){return new AN(null,new DG(ZR(t,29).a,16))};kB(FEt,"CommentNodeMarginCalculator/lambda$0$Type",1486);Xft(1487,1,Ckt,Qe),H_t.td=function(t){!function(t){var e,n,i,a,o,s,l,c,u,f,h,d;if(l=t.d,h=ZR(Ost(t,(O_t(),tZt)),15),e=ZR(Ost(t,JXt),15),h||e){if(o=ex(fI(mtt(t,(y_t(),D1t)))),s=ex(fI(mtt(t,R1t))),d=0,h){for(u=0,a=h.Kc();a.Ob();)i=ZR(a.Pb(),10),u=r.Math.max(u,i.o.b),d+=i.o.a;d+=o*(h.gc()-1),l.d+=u+s}if(n=0,e){for(u=0,a=e.Kc();a.Ob();)i=ZR(a.Pb(),10),u=r.Math.max(u,i.o.b),n+=i.o.a;n+=o*(e.gc()-1),l.a+=u+s}(c=r.Math.max(d,n))>t.o.a&&(f=(c-t.o.a)/2,l.b=r.Math.max(l.b,f),l.c=r.Math.max(l.c,f))}}(ZR(t,10))};kB(FEt,"CommentNodeMarginCalculator/lambda$1$Type",1487);Xft(1488,1,mEt,tn),H_t.pf=function(t,e){!function(t,e){var n,r,i,a,o,s,l;for(ast(e,"Comment post-processing",1),a=new md(t.b);a.a0&&tmt((OG(0,n.c.length),ZR(n.c[0],29)),t),n.c.length>1&&tmt(ZR(TN(n,n.c.length-1),29),t),jlt(e)}(ZR(t,37),e)};var cWt,uWt;kB(FEt,"HierarchicalPortPositionProcessor",1517);Xft(1518,1,mEt,Xu),H_t.pf=function(t,e){!function(t,e){var n,i,a,o,s,l,c,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M;for(t.b=e,t.a=ZR(Ost(e,(y_t(),S0t)),19).a,t.c=ZR(Ost(e,C0t),19).a,0==t.c&&(t.c=Q_t),v=new JW(e.b,0);v.b=t.a&&(i=zyt(t,y),h=r.Math.max(h,i.b),x=r.Math.max(x,i.d),nz(l,new bS(y,i)));for(k=new rm,f=0;f0),v.a.Xb(v.c=--v.b),QI(v,T=new VB(t.b)),AO(v.b=2){for(d=!0,n=ZR(HG(u=new md(i.j)),11),f=null;u.a0)}(ZR(t,17))};kB(FEt,"PartitionPreprocessor/lambda$2$Type",1577);Xft(1578,1,Ckt,wr),H_t.td=function(t){!function(t){var e;wyt(t,!0),e=hTt,PO(t,(y_t(),E1t))&&(e+=ZR(Ost(t,E1t),19).a),d4(t,E1t,g7(e))}(ZR(t,17))};var AYt,SYt,EYt,CYt,PYt;kB(FEt,"PartitionPreprocessor/lambda$3$Type",1578);Xft(1579,1,mEt,rf),H_t.pf=function(t,e){!function(t,e){var n,r,i,a,o,s;for(ast(e,"Port order processing",1),s=ZR(Ost(t,(y_t(),M1t)),421),n=new md(t.b);n.ae.d.c){if((d=t.c[e.a.d])==(v=t.c[f.a.d]))continue;cpt(Dk(Ik(Rk(Ok(new ey,1),100),d),v))}}}(this),function(t){var e,n,r,i,a,o,s;for(a=new Mk,i=new md(t.d.a);i.a1)for(e=HL((n=new ny,++t.b,n),t.d),s=tnt(a,0);s.b!=s.d.c;)o=ZR(EY(s),121),cpt(Dk(Ik(Rk(Ok(new ey,1),0),e),o))}(this),Wvt(CR(this.d),new ob),a=new md(this.a.a.b);a.a=v&&(nz(o,g7(f)),b=r.Math.max(b,x[f-1]-h),l+=g,m+=x[f-1]-m,h=x[f-1],g=c[f]),g=r.Math.max(g,c[f]),++f;l+=g}(p=r.Math.min(1/b,1/e.b/l))>i&&(i=p,n=o)}return n},H_t.Wf=function(){return!1};kB(nCt,"MSDCutIndexHeuristic",802);Xft(1617,1,mEt,Aa),H_t.pf=function(t,e){Lyt(ZR(t,37),e)};var p$t,g$t,v$t,m$t,y$t,b$t;kB(nCt,"SingleEdgeGraphWrapper",1617);Xft(227,22,{3:1,35:1,22:1,227:1},BM);var x$t,w$t,_$t,k$t=Y0(rCt,"CenterEdgeLabelPlacementStrategy",227,cFt,(function(){return yct(),R5(qx(k$t,1),Xkt,227,0,[v$t,y$t,g$t,m$t,b$t,p$t])}),(function(t){return yct(),iQ((x0(),x$t),t)}));Xft(422,22,{3:1,35:1,22:1,422:1},UM);var T$t,M$t,A$t,S$t,E$t=Y0(rCt,"ConstraintCalculationStrategy",422,cFt,(function(){return oZ(),R5(qx(E$t,1),Xkt,422,0,[w$t,_$t])}),(function(t){return oZ(),iQ((L$(),T$t),t)}));Xft(314,22,{3:1,35:1,22:1,314:1,246:1,234:1},HM),H_t.Kf=function(){return Sut(this)},H_t.Xf=function(){return Sut(this)};var C$t,P$t,L$t,O$t,I$t=Y0(rCt,"CrossingMinimizationStrategy",314,cFt,(function(){return P1(),R5(qx(I$t,1),Xkt,314,0,[A$t,M$t,S$t])}),(function(t){return P1(),iQ((TK(),C$t),t)}));Xft(337,22,{3:1,35:1,22:1,337:1},VM);var D$t,R$t,z$t,N$t,j$t,F$t,B$t=Y0(rCt,"CuttingStrategy",337,cFt,(function(){return f1(),R5(qx(B$t,1),Xkt,337,0,[P$t,O$t,L$t])}),(function(t){return f1(),iQ((MK(),D$t),t)}));Xft(335,22,{3:1,35:1,22:1,335:1,246:1,234:1},qM),H_t.Kf=function(){return hht(this)},H_t.Xf=function(){return hht(this)};var U$t,H$t,V$t,q$t=Y0(rCt,"CycleBreakingStrategy",335,cFt,(function(){return xrt(),R5(qx(q$t,1),Xkt,335,0,[z$t,R$t,j$t,F$t,N$t])}),(function(t){return xrt(),iQ((hQ(),U$t),t)}));Xft(419,22,{3:1,35:1,22:1,419:1},GM);var G$t,W$t,Y$t,$$t,X$t=Y0(rCt,"DirectionCongruency",419,cFt,(function(){return fQ(),R5(qx(X$t,1),Xkt,419,0,[H$t,V$t])}),(function(t){return fQ(),iQ((S$(),G$t),t)}));Xft(450,22,{3:1,35:1,22:1,450:1},WM);var K$t,Z$t,J$t,Q$t,tXt,eXt,nXt,rXt=Y0(rCt,"EdgeConstraint",450,cFt,(function(){return r4(),R5(qx(rXt,1),Xkt,450,0,[Y$t,W$t,$$t])}),(function(t){return r4(),iQ((AK(),K$t),t)}));Xft(276,22,{3:1,35:1,22:1,276:1},YM);var iXt,aXt,oXt,sXt=Y0(rCt,"EdgeLabelSideSelection",276,cFt,(function(){return ylt(),R5(qx(sXt,1),Xkt,276,0,[J$t,Z$t,tXt,Q$t,nXt,eXt])}),(function(t){return ylt(),iQ((T0(),iXt),t)}));Xft(479,22,{3:1,35:1,22:1,479:1},$M);var lXt,cXt,uXt,fXt,hXt,dXt,pXt,gXt=Y0(rCt,"EdgeStraighteningStrategy",479,cFt,(function(){return aJ(),R5(qx(gXt,1),Xkt,479,0,[oXt,aXt])}),(function(t){return aJ(),iQ((E$(),lXt),t)}));Xft(274,22,{3:1,35:1,22:1,274:1},XM);var vXt,mXt,yXt,bXt,xXt,wXt,_Xt,kXt=Y0(rCt,"FixedAlignment",274,cFt,(function(){return Xat(),R5(qx(kXt,1),Xkt,274,0,[hXt,fXt,pXt,uXt,dXt,cXt])}),(function(t){return Xat(),iQ((_0(),vXt),t)}));Xft(275,22,{3:1,35:1,22:1,275:1},KM);var TXt,MXt,AXt,SXt,EXt,CXt,PXt,LXt,OXt,IXt,DXt,RXt=Y0(rCt,"GraphCompactionStrategy",275,cFt,(function(){return llt(),R5(qx(RXt,1),Xkt,275,0,[wXt,yXt,_Xt,xXt,bXt,mXt])}),(function(t){return llt(),iQ((w0(),TXt),t)}));Xft(256,22,{3:1,35:1,22:1,256:1},ZM);var zXt,NXt,jXt,FXt,BXt=Y0(rCt,"GraphProperties",256,cFt,(function(){return igt(),R5(qx(BXt,1),Xkt,256,0,[AXt,EXt,CXt,PXt,LXt,OXt,DXt,MXt,SXt,IXt])}),(function(t){return igt(),iQ((t4(),zXt),t)}));Xft(292,22,{3:1,35:1,22:1,292:1},JM);var UXt,HXt,VXt,qXt,GXt=Y0(rCt,"GreedySwitchType",292,cFt,(function(){return i5(),R5(qx(GXt,1),Xkt,292,0,[jXt,FXt,NXt])}),(function(t){return i5(),iQ((CK(),UXt),t)}));Xft(303,22,{3:1,35:1,22:1,303:1},QM);var WXt,YXt,$Xt,XXt=Y0(rCt,"InLayerConstraint",303,cFt,(function(){return LJ(),R5(qx(XXt,1),Xkt,303,0,[VXt,qXt,HXt])}),(function(t){return LJ(),iQ((EK(),WXt),t)}));Xft(420,22,{3:1,35:1,22:1,420:1},tA);var KXt,ZXt,JXt,QXt,tKt,eKt,nKt,rKt,iKt,aKt,oKt,sKt,lKt,cKt,uKt,fKt,hKt,dKt,pKt,gKt,vKt,mKt,yKt,bKt,xKt,wKt,_Kt,kKt,TKt,MKt,AKt,SKt,EKt,CKt,PKt,LKt,OKt,IKt,DKt,RKt,zKt,NKt,jKt,FKt,BKt,UKt,HKt,VKt,qKt,GKt,WKt,YKt,$Kt,XKt,KKt,ZKt,JKt,QKt,tZt,eZt,nZt,rZt,iZt,aZt,oZt=Y0(rCt,"InteractiveReferencePoint",420,cFt,(function(){return gY(),R5(qx(oZt,1),Xkt,420,0,[YXt,$Xt])}),(function(t){return gY(),iQ((O$(),KXt),t)}));Xft(163,22,{3:1,35:1,22:1,163:1},aA);var sZt,lZt,cZt,uZt,fZt,hZt,dZt,pZt,gZt,vZt,mZt,yZt,bZt,xZt,wZt,_Zt,kZt,TZt,MZt,AZt,SZt,EZt,CZt,PZt,LZt,OZt,IZt,DZt,RZt,zZt,NZt,jZt,FZt,BZt,UZt,HZt,VZt,qZt,GZt,WZt,YZt,$Zt,XZt,KZt,ZZt,JZt,QZt,tJt,eJt,nJt,rJt,iJt,aJt,oJt,sJt,lJt,cJt,uJt,fJt,hJt,dJt,pJt,gJt,vJt,mJt,yJt,bJt,xJt,wJt,_Jt,kJt,TJt,MJt,AJt,SJt,EJt,CJt,PJt,LJt,OJt,IJt,DJt,RJt,zJt,NJt,jJt,FJt,BJt,UJt,HJt,VJt,qJt,GJt,WJt,YJt,$Jt,XJt,KJt,ZJt,JJt,QJt,tQt,eQt,nQt,rQt,iQt,aQt,oQt,sQt,lQt,cQt,uQt,fQt,hQt,dQt,pQt,gQt,vQt,mQt,yQt,bQt,xQt,wQt,_Qt,kQt,TQt,MQt,AQt,SQt,EQt,CQt,PQt,LQt,OQt,IQt,DQt,RQt,zQt,NQt=Y0(rCt,"LayerConstraint",163,cFt,(function(){return g9(),R5(qx(NQt,1),Xkt,163,0,[aZt,eZt,nZt,rZt,iZt])}),(function(t){return g9(),iQ((gQ(),sZt),t)}));Xft(848,1,dAt,lf),H_t.Qe=function(t){_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,cCt),""),"Direction Congruency"),"Specifies how drawings of the same graph with different layout directions compare to each other: either a natural reading direction is preserved or the drawings are rotated versions of each other."),VZt),(dct(),O9t)),X$t),J7((Zet(),S9t))))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,uCt),""),"Feedback Edges"),"Whether feedback edges should be highlighted by routing around the nodes."),(TL(),!1)),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,fCt),""),"Interactive Reference Point"),"Determines which point of a node is considered by interactive layout phases."),hJt),O9t),oZt),J7(S9t)))),RW(t,fCt,bCt,pJt),RW(t,fCt,CCt,dJt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,hCt),""),"Merge Edges"),"Edges that have no ports are merged so they touch the connected nodes at the same points. When this option is disabled, one port is created for each edge directly connected to a node. When it is enabled, all such incoming edges share an input port, and all outgoing edges share an output port."),!1),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,dCt),""),"Merge Hierarchy-Crossing Edges"),"If hierarchical layout is active, hierarchy-crossing edges use as few hierarchical ports as possible. They are broken by the algorithm, with hierarchical ports inserted as required. Usually, one such port is created for each edge at each hierarchy crossing point. With this option set to true, we try to create as few hierarchical ports as possible in the process. In particular, all edges that form a hyperedge can share a port."),!0),P9t),jFt),J7(S9t)))),_9(t,new ict(function(t,e){return t.f=e,t}(gw(pw(vw(uw(cw(dw(fw(hw(new Us,pCt),""),"Allow Non-Flow Ports To Switch Sides"),"Specifies whether non-flow ports may switch sides if their node's port constraints are either FIXED_SIDE or FIXED_ORDER. A non-flow port is a port on a side that is not part of the currently configured layout flow. For instance, given a left-to-right layout direction, north and south ports would be considered non-flow ports. Further note that the underlying criterium whether to switch sides or not solely relies on the minimization of edge crossings. Hence, edge length and other aesthetics criteria are not addressed."),!1),P9t),jFt),J7(E9t)),R5(qx(iBt,1),Akt,2,6,["org.eclipse.elk.layered.northOrSouthPort"])))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,gCt),""),"Port Sorting Strategy"),"Only relevant for nodes with FIXED_SIDE port constraints. Determines the way a node's ports are distributed on the sides of a node if their order is not prescribed. The option is set on parent nodes."),ZJt),O9t),s3t),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,vCt),""),"Thoroughness"),"How much effort should be spent to produce a nice layout."),g7(7)),D9t),$Ft),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,mCt),""),"Add Unnecessary Bendpoints"),"Adds bend points even if an edge does not change direction. If true, each long edge dummy will contribute a bend point to its edges and hierarchy-crossing edges will always get a bend point where they cross hierarchy boundaries. By default, bend points are only added where an edge changes direction."),!1),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,yCt),""),"Generate Position and Layer IDs"),"If enabled position id and layer id are generated, which are usually only used internally when setting the interactiveLayout option. This option should be specified on the root node."),!1),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,bCt),"cycleBreaking"),"Cycle Breaking Strategy"),"Strategy for cycle breaking. Cycle breaking looks for cycles in the graph and determines which edges to reverse to break the cycles. Reversed edges will end up pointing to the opposite direction of regular edges (that is, reversed edges will point left if edges usually point right)."),UZt),O9t),q$t),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,xCt),EPt),"Node Layering Strategy"),"Strategy for node layering."),CJt),O9t),T2t),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,wCt),EPt),"Layer Constraint"),"Determines a constraint on the placement of the node regarding the layering."),bJt),O9t),NQt),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,_Ct),EPt),"Layer Choice Constraint"),"Allows to set a constraint regarding the layer placement of a node. Let i be the value of teh constraint. Assumed the drawing has n layers and i < n. If set to i, it expresses that the node should be placed in i-th layer. Should i>=n be true then the node is placed in the last layer of the drawing. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),g7(-1)),D9t),$Ft),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,kCt),EPt),"Layer ID"),"Layer identifier that was calculated by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),g7(-1)),D9t),$Ft),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,TCt),CPt),"Upper Bound On Width [MinWidth Layerer]"),"Defines a loose upper bound on the width of the MinWidth layerer. If set to '-1' multiple values are tested and the best result is selected."),g7(4)),D9t),$Ft),J7(S9t)))),RW(t,TCt,xCt,_Jt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,MCt),CPt),"Upper Layer Estimation Scaling Factor [MinWidth Layerer]"),"Multiplied with Upper Bound On Width for defining an upper bound on the width of layers which haven't been determined yet, but whose maximum width had been (roughly) estimated by the MinWidth algorithm. Compensates for too high estimations. If set to '-1' multiple values are tested and the best result is selected."),g7(2)),D9t),$Ft),J7(S9t)))),RW(t,MCt,xCt,TJt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,ACt),PPt),"Node Promotion Strategy"),"Reduces number of dummy nodes after layering phase (if possible)."),SJt),O9t),J2t),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,SCt),PPt),"Max Node Promotion Iterations"),"Limits the number of iterations for node promotion."),g7(0)),D9t),$Ft),J7(S9t)))),RW(t,SCt,ACt,null),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,ECt),"layering.coffmanGraham"),"Layer Bound"),"The maximum number of nodes allowed per layer."),g7(Q_t)),D9t),$Ft),J7(S9t)))),RW(t,ECt,xCt,vJt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,CCt),LPt),"Crossing Minimization Strategy"),"Strategy for crossing minimization."),FZt),O9t),I$t),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,PCt),LPt),"Force Node Model Order"),"The node order given by the model does not change to produce a better layout. E.g. if node A is before node B in the model this is not changed during crossing minimization. This assumes that the node model order is already respected before crossing minimization. This can be achieved by setting considerModelOrder.strategy to NODES_AND_EDGES."),!1),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,LCt),LPt),"Hierarchical Sweepiness"),"How likely it is to use cross-hierarchy (1) vs bottom-up (-1)."),.1),L9t),qFt),J7(S9t)))),RW(t,LCt,OPt,IZt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,OCt),LPt),"Semi-Interactive Crossing Minimization"),"Preserves the order of nodes within a layer but still minimizes crossings between edges connecting long edge dummies. Derives the desired order from positions specified by the 'org.eclipse.elk.position' layout option. Requires a crossing minimization strategy that is able to process 'in-layer' constraints."),!1),P9t),jFt),J7(S9t)))),RW(t,OCt,CCt,NZt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,ICt),LPt),"Position Choice Constraint"),"Allows to set a constraint regarding the position placement of a node in a layer. Assumed the layer in which the node placed includes n other nodes and i < n. If set to i, it expresses that the node should be placed at the i-th position. Should i>=n be true then the node is placed at the last position in the layer. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),g7(-1)),D9t),$Ft),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,DCt),LPt),"Position ID"),"Position within a layer that was determined by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),g7(-1)),D9t),$Ft),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,RCt),IPt),"Greedy Switch Activation Threshold"),"By default it is decided automatically if the greedy switch is activated or not. The decision is based on whether the size of the input graph (without dummy nodes) is smaller than the value of this option. A '0' enforces the activation."),g7(40)),D9t),$Ft),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,zCt),IPt),"Greedy Switch Crossing Minimization"),"Greedy Switch strategy for crossing minimization. The greedy switch heuristic is executed after the regular crossing minimization as a post-processor. Note that if 'hierarchyHandling' is set to 'INCLUDE_CHILDREN', the 'greedySwitchHierarchical.type' option must be used."),PZt),O9t),GXt),J7(S9t)))),RW(t,zCt,CCt,LZt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,NCt),"crossingMinimization.greedySwitchHierarchical"),"Greedy Switch Crossing Minimization (hierarchical)"),"Activates the greedy switch heuristic in case hierarchical layout is used. The differences to the non-hierarchical case (see 'greedySwitch.type') are: 1) greedy switch is inactive by default, 3) only the option value set on the node at which hierarchical layout starts is relevant, and 2) if it's activated by the user, it properly addresses hierarchy-crossing edges."),AZt),O9t),GXt),J7(S9t)))),RW(t,NCt,CCt,SZt),RW(t,NCt,OPt,EZt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,jCt),DPt),"Node Placement Strategy"),"Strategy for node placement."),XJt),O9t),Y2t),J7(S9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,FCt),DPt),"Favor Straight Edges Over Balancing"),"Favor straight edges over a balanced node placement. The default behavior is determined automatically based on the used 'edgeRouting'. For an orthogonal style it is set to true, for all other styles to false."),P9t),jFt),J7(S9t)))),RW(t,FCt,jCt,FJt),RW(t,FCt,jCt,BJt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,BCt),RPt),"BK Edge Straightening"),"Specifies whether the Brandes Koepf node placer tries to increase the number of straight edges at the expense of diagram size. There is a subtle difference to the 'favorStraightEdges' option, which decides whether a balanced placement of the nodes is desired, or not. In bk terms this means combining the four alignments into a single balanced one, or not. This option on the other hand tries to straighten additional edges during the creation of each of the four alignments."),IJt),O9t),gXt),J7(S9t)))),RW(t,BCt,jCt,DJt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,UCt),RPt),"BK Fixed Alignment"),"Tells the BK node placer to use a certain alignment (out of its four) instead of the one producing the smallest height, or the combination of all four."),zJt),O9t),kXt),J7(S9t)))),RW(t,UCt,jCt,NJt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,HCt),"nodePlacement.linearSegments"),"Linear Segments Deflection Dampening"),"Dampens the movement of nodes to keep the diagram from getting too large."),.3),L9t),qFt),J7(S9t)))),RW(t,HCt,jCt,HJt),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,VCt),"nodePlacement.networkSimplex"),"Node Flexibility"),"Aims at shorter and straighter edges. Two configurations are possible: (a) allow ports to move freely on the side they are assigned to (the order is always defined beforehand), (b) additionally allow to enlarge a node wherever it helps. If this option is not configured for a node, the 'nodeFlexibility.default' value is used, which is specified for the node's parent."),O9t),N2t),J7(A9t)))),RW(t,VCt,jCt,YJt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,qCt),"nodePlacement.networkSimplex.nodeFlexibility"),"Node Flexibility Default"),"Default value of the 'nodeFlexibility' option for the children of a hierarchical node."),GJt),O9t),N2t),J7(S9t)))),RW(t,qCt,jCt,WJt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,GCt),zPt),"Self-Loop Distribution"),"Alter the distribution of the loops around the node. It only takes effect for PortConstraints.FREE."),ZZt),O9t),v3t),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,WCt),zPt),"Self-Loop Ordering"),"Alter the ordering of the loops they can either be stacked or sequenced. It only takes effect for PortConstraints.FREE."),QZt),O9t),y3t),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,YCt),"edgeRouting.splines"),"Spline Routing Mode"),"Specifies the way control points are assembled for each individual edge. CONSERVATIVE ensures that edges are properly routed around the nodes but feels rather orthogonal at times. SLOPPY uses fewer control points to obtain curvier edge routes but may result in edges overlapping nodes."),eJt),O9t),A3t),J7(S9t)))),RW(t,YCt,NPt,nJt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,$Ct),"edgeRouting.splines.sloppy"),"Sloppy Spline Layer Spacing Factor"),"Spacing factor for routing area between layers when using sloppy spline routing."),.2),L9t),qFt),J7(S9t)))),RW(t,$Ct,NPt,iJt),RW(t,$Ct,YCt,aJt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,XCt),"edgeRouting.polyline"),"Sloped Edge Zone Width"),"Width of the strip to the left and to the right of each layer where the polyline edge router is allowed to refrain from ensuring that edges are routed horizontally. This prevents awkward bend points for nodes that extent almost to the edge of their layer."),2),L9t),qFt),J7(S9t)))),RW(t,XCt,NPt,XZt),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,KCt),jPt),"Spacing Base Value"),"An optional base value for all other layout options of the 'spacing' group. It can be used to conveniently alter the overall 'spaciousness' of the drawing. Whenever an explicit value is set for the other layout options, this base value will have no effect. The base value is not inherited, i.e. it must be set for each hierarchical node."),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,ZCt),jPt),"Edge Node Between Layers Spacing"),"The spacing to be preserved between nodes and edges that are routed next to the node's layer. For the spacing between nodes and edges that cross the node's layer 'spacing.edgeNode' is used."),10),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,JCt),jPt),"Edge Edge Between Layer Spacing"),"Spacing to be preserved between pairs of edges that are routed between the same pair of layers. Note that 'spacing.edgeEdge' is used for the spacing between pairs of edges crossing the same layer."),10),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,QCt),jPt),"Node Node Between Layers Spacing"),"The spacing to be preserved between any pair of nodes of two adjacent layers. Note that 'spacing.nodeNode' is used for the spacing between nodes within the layer itself."),20),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,tPt),FPt),"Direction Priority"),"Defines how important it is to have a certain edge point into the direction of the overall layout. This option is evaluated during the cycle breaking phase."),g7(0)),D9t),$Ft),J7(T9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,ePt),FPt),"Shortness Priority"),"Defines how important it is to keep an edge as short as possible. This option is evaluated during the layering phase."),g7(0)),D9t),$Ft),J7(T9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,nPt),FPt),"Straightness Priority"),"Defines how important it is to keep an edge straight, i.e. aligned with one of the two axes. This option is evaluated during node placement."),g7(0)),D9t),$Ft),J7(T9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,rPt),BPt),QAt),"Tries to further compact components (disconnected sub-graphs)."),!1),P9t),jFt),J7(S9t)))),RW(t,rPt,jSt,!0),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,iPt),UPt),"Post Compaction Strategy"),HPt),dZt),O9t),RXt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,aPt),UPt),"Post Compaction Constraint Calculation"),HPt),fZt),O9t),E$t),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,oPt),VPt),"High Degree Node Treatment"),"Makes room around high degree nodes to place leafs and trees."),!1),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,sPt),VPt),"High Degree Node Threshold"),"Whether a node is considered to have a high degree."),g7(16)),D9t),$Ft),J7(S9t)))),RW(t,sPt,oPt,!0),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,lPt),VPt),"High Degree Node Maximum Tree Height"),"Maximum height of a subtree connected to a high degree node to be moved to separate layers."),g7(5)),D9t),$Ft),J7(S9t)))),RW(t,lPt,oPt,!0),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,cPt),qPt),"Graph Wrapping Strategy"),"For certain graphs and certain prescribed drawing areas it may be desirable to split the laid out graph into chunks that are placed side by side. The edges that connect different chunks are 'wrapped' around from the end of one chunk to the start of the other chunk. The points between the chunks are referred to as 'cuts'."),CQt),O9t),D3t),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,uPt),qPt),"Additional Wrapped Edges Spacing"),"To visually separate edges that are wrapped from regularly routed edges an additional spacing value can be specified in form of this layout option. The spacing is added to the regular edgeNode spacing."),10),L9t),qFt),J7(S9t)))),RW(t,uPt,cPt,lQt),RW(t,uPt,cPt,cQt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,fPt),qPt),"Correction Factor for Wrapping"),"At times and for certain types of graphs the executed wrapping may produce results that are consistently biased in the same fashion: either wrapping to often or to rarely. This factor can be used to correct the bias. Internally, it is simply multiplied with the 'aspect ratio' layout option."),1),L9t),qFt),J7(S9t)))),RW(t,fPt,cPt,fQt),RW(t,fPt,cPt,hQt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,hPt),GPt),"Cutting Strategy"),"The strategy by which the layer indexes are determined at which the layering crumbles into chunks."),bQt),O9t),B$t),J7(S9t)))),RW(t,hPt,cPt,xQt),RW(t,hPt,cPt,wQt),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,dPt),GPt),"Manually Specified Cuts"),"Allows the user to specify her own cuts for a certain graph."),R9t),tFt),J7(S9t)))),RW(t,dPt,hPt,pQt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,pPt),"wrapping.cutting.msd"),"MSD Freedom"),"The MSD cutting strategy starts with an initial guess on the number of chunks the graph should be split into. The freedom specifies how much the strategy may deviate from this guess. E.g. if an initial number of 3 is computed, a freedom of 1 allows 2, 3, and 4 cuts."),vQt),D9t),$Ft),J7(S9t)))),RW(t,pPt,hPt,mQt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,gPt),WPt),"Validification Strategy"),"When wrapping graphs, one can specify indices that are not allowed as split points. The validification strategy makes sure every computed split point is allowed."),DQt),O9t),L3t),J7(S9t)))),RW(t,gPt,cPt,RQt),RW(t,gPt,cPt,zQt),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,vPt),WPt),"Valid Indices for Wrapping"),null),R9t),tFt),J7(S9t)))),RW(t,vPt,cPt,LQt),RW(t,vPt,cPt,OQt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,mPt),YPt),"Improve Cuts"),"For general graphs it is important that not too many edges wrap backwards. Thus a compromise between evenly-distributed cuts and the total number of cut edges is sought."),!0),P9t),jFt),J7(S9t)))),RW(t,mPt,cPt,MQt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,yPt),YPt),"Distance Penalty When Improving Cuts"),null),2),L9t),qFt),J7(S9t)))),RW(t,yPt,cPt,kQt),RW(t,yPt,mPt,!0),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,bPt),YPt),"Improve Wrapped Edges"),"The initial wrapping is performed in a very simple way. As a consequence, edges that wrap from one chunk to another may be unnecessarily long. Activating this option tries to shorten such edges."),!0),P9t),jFt),J7(S9t)))),RW(t,bPt,cPt,SQt),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,xPt),$Pt),"Edge Label Side Selection"),"Method to decide on edge label sides."),YZt),O9t),sXt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,wPt),$Pt),"Edge Center Label Placement Strategy"),"Determines in which layer center labels of long edges should be placed."),GZt),O9t),k$t),ej(S9t,R5(qx(j9t,1),Xkt,175,0,[M9t]))))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,_Pt),XPt),"Consider Model Order"),"Preserves the order of nodes and edges in the model file if this does not lead to additional edge crossings. Depending on the strategy this is not always possible since the node and edge order might be conflicting."),_Zt),O9t),n3t),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,kPt),XPt),"No Model Order"),"Set on a node to not set a model order for this node even though it is a real node."),!1),P9t),jFt),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,TPt),XPt),"Consider Model Order for Components"),"If set to NONE the usual ordering strategy (by cumulative node priority and size of nodes) is used. INSIDE_PORT_SIDES orders the components with external ports only inside the groups with the same port side. FORCE_MODEL_ORDER enforces the mode order on components. This option might produce bad alignments and sub optimal drawings in terms of used area since the ordering should be respected."),gZt),O9t),IGt),J7(S9t)))),RW(t,TPt,jSt,null),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,MPt),XPt),"Long Edge Ordering Strategy"),"Indicates whether long edges are sorted under, over, or equal to nodes that have no connection to a previous layer in a left-to-right or right-to-left layout. Under and over changes to right and left in a vertical layout."),bZt),O9t),P2t),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,APt),XPt),"Crossing Counter Node Order Influence"),"Indicates with what percentage (1 for 100%) violations of the node model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal node order. Defaults to no influence (0)."),0),L9t),qFt),J7(S9t)))),RW(t,APt,_Pt,null),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,SPt),XPt),"Crossing Counter Port Order Influence"),"Indicates with what percentage (1 for 100%) violations of the port model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal port order. Defaults to no influence (0)."),0),L9t),qFt),J7(S9t)))),RW(t,SPt,_Pt,null),j_t((new ff,t))};var jQt,FQt,BQt,UQt,HQt,VQt,qQt,GQt,WQt,YQt,$Qt,XQt,KQt,ZQt,JQt,QQt,t0t,e0t,n0t,r0t,i0t,a0t,o0t,s0t,l0t,c0t,u0t,f0t,h0t,d0t,p0t,g0t,v0t,m0t,y0t,b0t,x0t,w0t,_0t,k0t,T0t,M0t,A0t,S0t,E0t,C0t,P0t,L0t,O0t,I0t,D0t,R0t,z0t,N0t,j0t,F0t,B0t,U0t,H0t,V0t,q0t,G0t,W0t,Y0t,$0t,X0t,K0t,Z0t,J0t,Q0t,t1t,e1t,n1t,r1t,i1t,a1t,o1t,s1t,l1t,c1t,u1t,f1t,h1t,d1t,p1t,g1t,v1t,m1t,y1t,b1t,x1t,w1t,_1t,k1t,T1t,M1t,A1t,S1t,E1t,C1t,P1t,L1t,O1t,I1t,D1t,R1t,z1t,N1t,j1t,F1t,B1t,U1t,H1t,V1t,q1t,G1t,W1t,Y1t,$1t,X1t,K1t,Z1t,J1t,Q1t,t2t,e2t,n2t,r2t,i2t,a2t,o2t,s2t,l2t,c2t,u2t;kB(rCt,"LayeredMetaDataProvider",848);Xft(986,1,dAt,ff),H_t.Qe=function(t){j_t(t)};kB(rCt,"LayeredOptions",986);Xft(987,1,{},Ea),H_t.$e=function(){return new ay},H_t._e=function(t){};var f2t;kB(rCt,"LayeredOptions/LayeredFactory",987);Xft(1372,1,{}),H_t.a=0;var h2t,d2t;kB(NLt,"ElkSpacings/AbstractSpacingsBuilder",1372);Xft(779,1372,{},U9);var p2t,g2t,v2t,m2t,y2t,b2t;kB(rCt,"LayeredSpacings/LayeredSpacingsBuilder",779);Xft(313,22,{3:1,35:1,22:1,313:1,246:1,234:1},eA),H_t.Kf=function(){return adt(this)},H_t.Xf=function(){return adt(this)};var x2t,w2t,_2t,k2t,T2t=Y0(rCt,"LayeringStrategy",313,cFt,(function(){return est(),R5(qx(T2t,1),Xkt,313,0,[y2t,v2t,p2t,g2t,b2t,m2t])}),(function(t){return est(),iQ((k0(),x2t),t)}));Xft(378,22,{3:1,35:1,22:1,378:1},nA);var M2t,A2t,S2t,E2t,C2t,P2t=Y0(rCt,"LongEdgeOrderingStrategy",378,cFt,(function(){return r8(),R5(qx(P2t,1),Xkt,378,0,[w2t,_2t,k2t])}),(function(t){return r8(),iQ((PK(),M2t),t)}));Xft(197,22,{3:1,35:1,22:1,197:1},rA);var L2t,O2t,I2t,D2t,R2t,z2t,N2t=Y0(rCt,"NodeFlexibility",197,cFt,(function(){return Vnt(),R5(qx(N2t,1),Xkt,197,0,[E2t,C2t,S2t,A2t])}),(function(t){return Vnt(),iQ((JZ(),L2t),t)}));Xft(315,22,{3:1,35:1,22:1,315:1,246:1,234:1},iA),H_t.Kf=function(){return fht(this)},H_t.Xf=function(){return fht(this)};var j2t,F2t,B2t,U2t,H2t,V2t,q2t,G2t,W2t,Y2t=Y0(rCt,"NodePlacementStrategy",315,cFt,(function(){return srt(),R5(qx(Y2t,1),Xkt,315,0,[z2t,I2t,D2t,O2t,R2t])}),(function(t){return srt(),iQ((dQ(),j2t),t)}));Xft(260,22,{3:1,35:1,22:1,260:1},oA);var $2t,X2t,K2t,Z2t,J2t=Y0(rCt,"NodePromotionStrategy",260,cFt,(function(){return Udt(),R5(qx(J2t,1),Xkt,260,0,[G2t,B2t,V2t,U2t,H2t,F2t,q2t,W2t])}),(function(t){return Udt(),iQ((v3(),$2t),t)}));Xft(339,22,{3:1,35:1,22:1,339:1},sA);var Q2t,t3t,e3t,n3t=Y0(rCt,"OrderingStrategy",339,cFt,(function(){return w4(),R5(qx(n3t,1),Xkt,339,0,[K2t,X2t,Z2t])}),(function(t){return w4(),iQ((OK(),Q2t),t)}));Xft(421,22,{3:1,35:1,22:1,421:1},lA);var r3t,i3t,a3t,o3t,s3t=Y0(rCt,"PortSortingStrategy",421,cFt,(function(){return OJ(),R5(qx(s3t,1),Xkt,421,0,[t3t,e3t])}),(function(t){return OJ(),iQ((P$(),r3t),t)}));Xft(452,22,{3:1,35:1,22:1,452:1},cA);var l3t,c3t,u3t,f3t,h3t=Y0(rCt,"PortType",452,cFt,(function(){return u1(),R5(qx(h3t,1),Xkt,452,0,[o3t,i3t,a3t])}),(function(t){return u1(),iQ((IK(),l3t),t)}));Xft(375,22,{3:1,35:1,22:1,375:1},uA);var d3t,p3t,g3t,v3t=Y0(rCt,"SelfLoopDistributionStrategy",375,cFt,(function(){return g3(),R5(qx(v3t,1),Xkt,375,0,[c3t,u3t,f3t])}),(function(t){return g3(),iQ((LK(),d3t),t)}));Xft(376,22,{3:1,35:1,22:1,376:1},fA);var m3t,y3t=Y0(rCt,"SelfLoopOrderingStrategy",376,cFt,(function(){return iK(),R5(qx(y3t,1),Xkt,376,0,[g3t,p3t])}),(function(t){return iK(),iQ((C$(),m3t),t)}));Xft(304,1,{304:1},bxt);var b3t,x3t,w3t;kB(rCt,"Spacings",304);Xft(336,22,{3:1,35:1,22:1,336:1},hA);var _3t,k3t,T3t,M3t,A3t=Y0(rCt,"SplineRoutingMode",336,cFt,(function(){return O6(),R5(qx(A3t,1),Xkt,336,0,[b3t,x3t,w3t])}),(function(t){return O6(),iQ((RK(),_3t),t)}));Xft(338,22,{3:1,35:1,22:1,338:1},dA);var S3t,E3t,C3t,P3t,L3t=Y0(rCt,"ValidifyStrategy",338,cFt,(function(){return X2(),R5(qx(L3t,1),Xkt,338,0,[M3t,k3t,T3t])}),(function(t){return X2(),iQ((zK(),S3t),t)}));Xft(377,22,{3:1,35:1,22:1,377:1},pA);var O3t,I3t,D3t=Y0(rCt,"WrappingStrategy",377,cFt,(function(){return B5(),R5(qx(D3t,1),Xkt,377,0,[C3t,P3t,E3t])}),(function(t){return B5(),iQ((DK(),O3t),t)}));Xft(1383,1,BLt,hf),H_t.Yf=function(t){return ZR(t,37),I3t},H_t.pf=function(t,e){!function(t,e,n){var r,i,a,o,s,l,c,u;for(ast(n,"Depth-first cycle removal",1),l=(c=e.a).c.length,t.c=new rm,t.d=XK(Kle,vAt,25,l,16,1),t.a=XK(Kle,vAt,25,l,16,1),t.b=new rm,a=0,s=new md(c);s.a0?A+1:1);for(o=new md(w.g);o.a0?A+1:1)}0==t.c[c]?jz(t.e,g):0==t.a[c]&&jz(t.f,g),++c}for(p=-1,d=1,f=new rm,t.d=ZR(Ost(e,(O_t(),HKt)),230);L>0;){for(;0!=t.e.b;)E=ZR(bz(t.e),10),t.b[E.p]=p--,$vt(t,E),--L;for(;0!=t.f.b;)C=ZR(bz(t.f),10),t.b[C.p]=d++,$vt(t,C),--L;if(L>0){for(h=nTt,y=new md(b);y.a=h&&(x>h&&(f.c=XK(Yjt,akt,1,0,5,1),h=x),f.c[f.c.length]=g);u=t.Zf(f),t.b[u.p]=d++,$vt(t,u),--L}}for(S=b.c.length+1,c=0;ct.b[P]&&(wyt(r,!0),d4(e,aKt,(TL(),!0)));t.a=null,t.c=null,t.b=null,UH(t.f),UH(t.e),jlt(n)}(this,ZR(t,37),e)},H_t.Zf=function(t){return ZR(TN(t,Ynt(this.d,t.c.length)),10)};kB(ULt,"GreedyCycleBreaker",782);Xft(1386,782,BLt,jS),H_t.Zf=function(t){var e,n,r,i;for(i=null,e=Q_t,r=new md(t);r.a0&&rct(t,s,u);for(i=new md(u);i.a=c){AO(y.b>0),y.a.Xb(y.c=--y.b);break}v.a>u&&(a?(A5(a.b,v.b),a.a=r.Math.max(a.a,v.a),uU(y)):(nz(v.b,h),v.c=r.Math.min(v.c,u),v.a=r.Math.max(v.a,c),a=v))}a||((a=new vy).c=u,a.a=c,QI(y,a),nz(a.b,h))}for(l=e.b,f=0,m=new md(i);m.ae.p?-1:0}(ZR(t,10),ZR(e,10))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(HLt,"StretchWidthLayerer/1",1394);Xft(402,1,VLt),H_t.Nf=function(t,e,n,r,i,a){},H_t._f=function(t,e,n){return emt(this,t,e,n)},H_t.Mf=function(){this.g=XK(tce,qLt,25,this.d,15,1),this.f=XK(tce,qLt,25,this.d,15,1)},H_t.Of=function(t,e){this.e[t]=XK(Xle,STt,25,e[t].length,15,1)},H_t.Pf=function(t,e,n){n[t][e].p=e,this.e[t][e]=e},H_t.Qf=function(t,e,n,r){ZR(TN(r[t][e].j,n),11).p=this.d++},H_t.b=0,H_t.c=0,H_t.d=0;kB(GLt,"AbstractBarycenterPortDistributor",402);Xft(1633,1,HMt,lg),H_t.ue=function(t,e){return function(t,e,n){var r,i,a,o;return(a=e.j)!=(o=n.j)?a.g-o.g:(r=t.f[e.p],i=t.f[n.p],0==r&&0==i?0:0==r?-1:0==i?1:O7(r,i))}(this.a,ZR(t,11),ZR(e,11))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(GLt,"AbstractBarycenterPortDistributor/lambda$0$Type",1633);Xft(817,1,ZEt,pY),H_t.Nf=function(t,e,n,r,i,a){},H_t.Pf=function(t,e,n){},H_t.Qf=function(t,e,n,r){},H_t.Lf=function(){return!1},H_t.Mf=function(){this.c=this.e.a,this.g=this.f.g},H_t.Of=function(t,e){e[t][0].c.p=t},H_t.Rf=function(){return!1},H_t.ag=function(t,e,n,r){n?Lat(this,t):(Gat(this,t,r),Vxt(this,t,e)),t.c.length>1&&(tx(uI(Ost(gU((OG(0,t.c.length),ZR(t.c[0],10))),(y_t(),JQt))))?Ght(t,this.d,ZR(this,660)):(YH(),JC(t,this.d)),s5(this.e,t))},H_t.Sf=function(t,e,n,r){var i,a,o,s,l,c,u;for(e!=ON(n,t.length)&&(a=t[e-(n?1:-1)],hK(this.f,a,n?(u1(),a3t):(u1(),i3t))),i=t[e][0],u=!r||i.k==(plt(),UGt),c=zX(t[e]),this.ag(c,u,!1,n),o=0,l=new md(c);l.a"),t0?zq(this.a,t[e-1],t[e]):!n&&e0&&(n+=l.n.a+l.o.a/2,++f),d=new md(l.j);d.a0&&(n/=f),v=XK(Qle,oMt,25,r.a.c.length,15,1),s=0,c=new md(r.a);c.a1&&(tx(uI(Ost(gU((OG(0,t.c.length),ZR(t.c[0],10))),(y_t(),JQt))))?Ght(t,this.d,this):(YH(),JC(t,this.d)),tx(uI(Ost(gU((OG(0,t.c.length),ZR(t.c[0],10))),JQt)))||s5(this.e,t))};kB(GLt,"ModelOrderBarycenterHeuristic",660);Xft(1803,1,HMt,mg),H_t.ue=function(t,e){return Rlt(this.a,ZR(t,10),ZR(e,10))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};var Q3t;kB(GLt,"ModelOrderBarycenterHeuristic/lambda$0$Type",1803);Xft(1403,1,BLt,xf),H_t.Yf=function(t){var e;return ZR(t,37),lN(e=yC(Q3t),(Ist(),nGt),(D_t(),iYt)),e},H_t.pf=function(t,e){!function(t){ast(t,"No crossing minimization",1),jlt(t)}((ZR(t,37),e))};kB(GLt,"NoCrossingMinimizer",1403);Xft(796,402,VLt,xw),H_t.$f=function(t,e,n){var r,i,a,o,s,l,c,u,f,h,d;switch(f=this.g,n.g){case 1:for(i=0,a=0,u=new md(t.j);u.a1&&(i.j==(Pwt(),Tre)?this.b[t]=!0:i.j==qre&&t>0&&(this.b[t-1]=!0))},H_t.f=0;kB(KEt,"AllCrossingsCounter",1798);Xft(587,1,{},c2),H_t.b=0,H_t.d=0;var t5t,e5t;kB(KEt,"BinaryIndexedTree",587);Xft(524,1,{},iR);kB(KEt,"CrossingsCounter",524);Xft(1906,1,HMt,yg),H_t.ue=function(t,e){return function(t,e,n){return nP(t.d[e.p],t.d[n.p])}(this.a,ZR(t,11),ZR(e,11))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(KEt,"CrossingsCounter/lambda$0$Type",1906);Xft(1907,1,HMt,bg),H_t.ue=function(t,e){return function(t,e,n){return nP(t.d[e.p],t.d[n.p])}(this.a,ZR(t,11),ZR(e,11))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(KEt,"CrossingsCounter/lambda$1$Type",1907);Xft(1908,1,HMt,xg),H_t.ue=function(t,e){return function(t,e,n){return nP(t.d[e.p],t.d[n.p])}(this.a,ZR(t,11),ZR(e,11))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(KEt,"CrossingsCounter/lambda$2$Type",1908);Xft(1909,1,HMt,wg),H_t.ue=function(t,e){return function(t,e,n){return nP(t.d[e.p],t.d[n.p])}(this.a,ZR(t,11),ZR(e,11))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(KEt,"CrossingsCounter/lambda$3$Type",1909);Xft(1910,1,Ckt,_g),H_t.td=function(t){!function(t,e){gz(),nz(t,new bS(e,g7(e.e.c.length+e.g.c.length)))}(this.a,ZR(t,11))};kB(KEt,"CrossingsCounter/lambda$4$Type",1910);Xft(1911,1,Qkt,kg),H_t.Mb=function(t){return function(t,e){return gz(),e!=t}(this.a,ZR(t,11))};kB(KEt,"CrossingsCounter/lambda$5$Type",1911);Xft(1912,1,Ckt,Tg),H_t.td=function(t){DS(this,t)};kB(KEt,"CrossingsCounter/lambda$6$Type",1912);Xft(1913,1,Ckt,mA),H_t.td=function(t){var e;gz(),PY(this.b,(e=this.a,ZR(t,11),e))};kB(KEt,"CrossingsCounter/lambda$7$Type",1913);Xft(826,1,oAt,Ra),H_t.Lb=function(t){return gz(),PO(ZR(t,11),(O_t(),FKt))},H_t.Fb=function(t){return this===t},H_t.Mb=function(t){return gz(),PO(ZR(t,11),(O_t(),FKt))};kB(KEt,"CrossingsCounter/lambda$8$Type",826);Xft(1905,1,{},Mg);kB(KEt,"HyperedgeCrossingsCounter",1905);Xft(467,1,{35:1,467:1},fD),H_t.wd=function(t){return function(t,e){return t.ee.e?1:t.fe.f?1:$4(t)-$4(e)}(this,ZR(t,467))},H_t.b=0,H_t.c=0,H_t.e=0,H_t.f=0;var n5t=kB(KEt,"HyperedgeCrossingsCounter/Hyperedge",467);Xft(362,1,{35:1,362:1},vH),H_t.wd=function(t){return function(t,e){return t.ce.c?1:t.be.b?1:t.a!=e.a?$4(t.a)-$4(e.a):t.d==(q$(),i5t)&&e.d==r5t?-1:t.d==r5t&&e.d==i5t?1:0}(this,ZR(t,362))},H_t.b=0,H_t.c=0;var r5t,i5t,a5t=kB(KEt,"HyperedgeCrossingsCounter/HyperedgeCorner",362);Xft(523,22,{3:1,35:1,22:1,523:1},vA);var o5t,s5t,l5t=Y0(KEt,"HyperedgeCrossingsCounter/HyperedgeCorner/Type",523,cFt,(function(){return q$(),R5(qx(l5t,1),Xkt,523,0,[i5t,r5t])}),(function(t){return q$(),iQ((D$(),o5t),t)}));Xft(1405,1,BLt,uf),H_t.Yf=function(t){return ZR(Ost(ZR(t,37),(O_t(),gKt)),21).Hc((igt(),EXt))?s5t:null},H_t.pf=function(t,e){!function(t,e,n){var r;for(ast(n,"Interactive node placement",1),t.a=ZR(Ost(e,(O_t(),YKt)),304),r=new md(e.b);r.a1};kB(WLt,"NetworkSimplexPlacer/lambda$18$Type",1431);Xft(1432,1,Ckt,yH),H_t.td=function(t){!function(t,e,n,r,i){uG(),cpt(Dk(Ik(Ok(Rk(new ey,0),i.d.e-t),e),i.d)),cpt(Dk(Ik(Ok(Rk(new ey,0),n-i.a.e),i.a),r))}(this.c,this.b,this.d,this.a,ZR(t,401))},H_t.c=0,H_t.d=0;kB(WLt,"NetworkSimplexPlacer/lambda$19$Type",1432);Xft(1415,1,{},Ya),H_t.Kb=function(t){return uG(),new AN(null,new DG(ZR(t,29).a,16))};kB(WLt,"NetworkSimplexPlacer/lambda$2$Type",1415);Xft(1433,1,Ckt,Cg),H_t.td=function(t){!function(t,e){uG(),e.n.b+=t}(this.a,ZR(t,11))},H_t.a=0;kB(WLt,"NetworkSimplexPlacer/lambda$20$Type",1433);Xft(1434,1,{},$a),H_t.Kb=function(t){return uG(),new AN(null,new DG(ZR(t,29).a,16))};kB(WLt,"NetworkSimplexPlacer/lambda$21$Type",1434);Xft(1435,1,Ckt,Pg),H_t.td=function(t){NP(this.a,ZR(t,10))};kB(WLt,"NetworkSimplexPlacer/lambda$22$Type",1435);Xft(1436,1,Qkt,Xa),H_t.Mb=function(t){return AI(t)};kB(WLt,"NetworkSimplexPlacer/lambda$23$Type",1436);Xft(1437,1,{},Ka),H_t.Kb=function(t){return uG(),new AN(null,new DG(ZR(t,29).a,16))};kB(WLt,"NetworkSimplexPlacer/lambda$24$Type",1437);Xft(1438,1,Qkt,Lg),H_t.Mb=function(t){return function(t,e){return 2==t.j[e.p]}(this.a,ZR(t,10))};kB(WLt,"NetworkSimplexPlacer/lambda$25$Type",1438);Xft(1439,1,Ckt,xA),H_t.td=function(t){!function(t,e,n){var r,i,a;for(i=new Oj(dL(o9(n).a.Kc(),new u));Kft(i);)Q$(r=ZR(wX(i),17))||!Q$(r)&&r.c.i.c==r.d.i.c||(a=Ldt(t,r,n,new xy)).c.length>1&&(e.c[e.c.length]=a)}(this.a,this.b,ZR(t,10))};kB(WLt,"NetworkSimplexPlacer/lambda$26$Type",1439);Xft(1440,1,Qkt,Za),H_t.Mb=function(t){return uG(),!Q$(ZR(t,17))};kB(WLt,"NetworkSimplexPlacer/lambda$27$Type",1440);Xft(1441,1,Qkt,Ja),H_t.Mb=function(t){return uG(),!Q$(ZR(t,17))};kB(WLt,"NetworkSimplexPlacer/lambda$28$Type",1441);Xft(1442,1,{},Og),H_t.Ce=function(t,e){return LP(this.a,ZR(t,29),ZR(e,29))};kB(WLt,"NetworkSimplexPlacer/lambda$29$Type",1442);Xft(1416,1,{},Qa),H_t.Kb=function(t){return uG(),new AN(null,new tB(new Oj(dL(l9(ZR(t,10)).a.Kc(),new u))))};kB(WLt,"NetworkSimplexPlacer/lambda$3$Type",1416);Xft(1417,1,Qkt,to),H_t.Mb=function(t){return uG(),function(t){return uG(),!Q$(t)&&!(!Q$(t)&&t.c.i.c==t.d.i.c)}(ZR(t,17))};kB(WLt,"NetworkSimplexPlacer/lambda$4$Type",1417);Xft(1418,1,Ckt,Ig),H_t.td=function(t){!function(t,e){var n,i,a,o,s,l,c,u,f,h,d;n=HL(new ny,t.f),l=t.i[e.c.i.p],h=t.i[e.d.i.p],s=e.c,f=e.d,o=s.a.b,u=f.a.b,l.b||(o+=s.n.b),h.b||(u+=f.n.b),c=lq(r.Math.max(0,o-u)),a=lq(r.Math.max(0,u-o)),d=r.Math.max(1,ZR(Ost(e,(y_t(),P1t)),19).a)*qY(e.c.i.k,e.d.i.k),i=new yA(cpt(Dk(Ik(Ok(Rk(new ey,d),a),n),ZR(UB(t.k,e.c),121))),cpt(Dk(Ik(Ok(Rk(new ey,d),c),n),ZR(UB(t.k,e.d),121)))),t.c[e.p]=i}(this.a,ZR(t,17))};kB(WLt,"NetworkSimplexPlacer/lambda$5$Type",1418);Xft(1419,1,{},eo),H_t.Kb=function(t){return uG(),new AN(null,new DG(ZR(t,29).a,16))};kB(WLt,"NetworkSimplexPlacer/lambda$6$Type",1419);Xft(1420,1,Qkt,no),H_t.Mb=function(t){return uG(),ZR(t,10).k==(plt(),qGt)};kB(WLt,"NetworkSimplexPlacer/lambda$7$Type",1420);Xft(1421,1,{},ro),H_t.Kb=function(t){return uG(),new AN(null,new tB(new Oj(dL(o9(ZR(t,10)).a.Kc(),new u))))};kB(WLt,"NetworkSimplexPlacer/lambda$8$Type",1421);Xft(1422,1,Qkt,io),H_t.Mb=function(t){return uG(),function(t){return!Q$(t)&&t.c.i.c==t.d.i.c}(ZR(t,17))};var v5t;kB(WLt,"NetworkSimplexPlacer/lambda$9$Type",1422);Xft(1404,1,BLt,Af),H_t.Yf=function(t){return ZR(Ost(ZR(t,37),(O_t(),gKt)),21).Hc((igt(),EXt))?v5t:null},H_t.pf=function(t,e){!function(t,e){var n,i,a,o,s,l,c,u,f,h;for(ast(e,"Simple node placement",1),h=ZR(Ost(t,(O_t(),YKt)),304),l=0,o=new md(t.b);o.a0?(d=(p-1)*n,s&&(d+=r),u&&(d+=r),d0&&(w-=g),Jbt(s,w),h=0,p=new md(s.a);p.a0),l.a.Xb(l.c=--l.b)),c=.4*i*h,!o&&l.b"+this.b+" ("+((null!=(t=this.c).f?t.f:""+t.g)+")");var t},H_t.d=0;var U5t,H5t;kB(ZLt,"HyperEdgeSegmentDependency",129);Xft(520,22,{3:1,35:1,22:1,520:1},MA);var V5t,q5t=Y0(ZLt,"HyperEdgeSegmentDependency/DependencyType",520,cFt,(function(){return rK(),R5(qx(q5t,1),Xkt,520,0,[H5t,U5t])}),(function(t){return rK(),iQ((I$(),V5t),t)}));Xft(1815,1,{},Rg);kB(ZLt,"HyperEdgeSegmentSplitter",1815);Xft(1816,1,{},Ew),H_t.a=0,H_t.b=0;kB(ZLt,"HyperEdgeSegmentSplitter/AreaRating",1816);Xft(329,1,{329:1},IR),H_t.a=0,H_t.b=0,H_t.c=0;kB(ZLt,"HyperEdgeSegmentSplitter/FreeArea",329);Xft(1817,1,HMt,ko),H_t.ue=function(t,e){return function(t,e){return O7(t.c-t.s,e.c-e.s)}(ZR(t,112),ZR(e,112))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(ZLt,"HyperEdgeSegmentSplitter/lambda$0$Type",1817);Xft(1818,1,Ckt,xH),H_t.td=function(t){KY(this.a,this.d,this.c,this.b,ZR(t,112))},H_t.b=0;kB(ZLt,"HyperEdgeSegmentSplitter/lambda$1$Type",1818);Xft(1819,1,{},To),H_t.Kb=function(t){return new AN(null,new DG(ZR(t,112).e,16))};kB(ZLt,"HyperEdgeSegmentSplitter/lambda$2$Type",1819);Xft(1820,1,{},Mo),H_t.Kb=function(t){return new AN(null,new DG(ZR(t,112).j,16))};kB(ZLt,"HyperEdgeSegmentSplitter/lambda$3$Type",1820);Xft(1821,1,{},Ao),H_t.Fe=function(t){return ex(fI(t))};kB(ZLt,"HyperEdgeSegmentSplitter/lambda$4$Type",1821);Xft(655,1,{},vB),H_t.a=0,H_t.b=0,H_t.c=0;kB(ZLt,"OrthogonalRoutingGenerator",655);Xft(1638,1,{},So),H_t.Kb=function(t){return new AN(null,new DG(ZR(t,112).e,16))};kB(ZLt,"OrthogonalRoutingGenerator/lambda$0$Type",1638);Xft(1639,1,{},Eo),H_t.Kb=function(t){return new AN(null,new DG(ZR(t,112).j,16))};kB(ZLt,"OrthogonalRoutingGenerator/lambda$1$Type",1639);Xft(661,1,{});kB(JLt,"BaseRoutingDirectionStrategy",661);Xft(1807,661,{},Py),H_t.dg=function(t,e,n){var i,a,o,s,l,c,u,f,h,d,p,g,v;if(!t.r||t.q)for(f=e+t.o*n,u=new md(t.n);u.aCSt&&(a=t,i=new KA(h,o=f),jz(s.a,i),kmt(this,s,a,i,!1),(d=t.r)&&(i=new KA(p=ex(fI(_nt(d.e,0))),o),jz(s.a,i),kmt(this,s,a,i,!1),a=d,i=new KA(p,o=e+d.o*n),jz(s.a,i),kmt(this,s,a,i,!1)),i=new KA(v,o),jz(s.a,i),kmt(this,s,a,i,!1)))},H_t.eg=function(t){return t.i.n.a+t.n.a+t.a.a},H_t.fg=function(){return Pwt(),Hre},H_t.gg=function(){return Pwt(),Mre};kB(JLt,"NorthToSouthRoutingStrategy",1807);Xft(1808,661,{},Ly),H_t.dg=function(t,e,n){var i,a,o,s,l,c,u,f,h,d,p,g,v;if(!t.r||t.q)for(f=e-t.o*n,u=new md(t.n);u.aCSt&&(a=t,i=new KA(h,o=f),jz(s.a,i),kmt(this,s,a,i,!1),(d=t.r)&&(i=new KA(p=ex(fI(_nt(d.e,0))),o),jz(s.a,i),kmt(this,s,a,i,!1),a=d,i=new KA(p,o=e-d.o*n),jz(s.a,i),kmt(this,s,a,i,!1)),i=new KA(v,o),jz(s.a,i),kmt(this,s,a,i,!1)))},H_t.eg=function(t){return t.i.n.a+t.n.a+t.a.a},H_t.fg=function(){return Pwt(),Mre},H_t.gg=function(){return Pwt(),Hre};kB(JLt,"SouthToNorthRoutingStrategy",1808);Xft(1806,661,{},Oy),H_t.dg=function(t,e,n){var i,a,o,s,l,c,u,f,h,d,p,g,v;if(!t.r||t.q)for(f=e+t.o*n,u=new md(t.n);u.aCSt&&(a=t,i=new KA(o=f,h),jz(s.a,i),kmt(this,s,a,i,!0),(d=t.r)&&(i=new KA(o,p=ex(fI(_nt(d.e,0)))),jz(s.a,i),kmt(this,s,a,i,!0),a=d,i=new KA(o=e+d.o*n,p),jz(s.a,i),kmt(this,s,a,i,!0)),i=new KA(o,v),jz(s.a,i),kmt(this,s,a,i,!0)))},H_t.eg=function(t){return t.i.n.b+t.n.b+t.a.b},H_t.fg=function(){return Pwt(),Tre},H_t.gg=function(){return Pwt(),qre};kB(JLt,"WestToEastRoutingStrategy",1806);Xft(813,1,{},Ayt),H_t.Ib=function(){return Gst(this.a)},H_t.b=0,H_t.c=!1,H_t.d=!1,H_t.f=0;kB(tOt,"NubSpline",813);Xft(407,1,{407:1},Cpt,KV);var G5t,W5t,Y5t,$5t,X5t;kB(tOt,"NubSpline/PolarCP",407);Xft(1453,1,BLt,mit),H_t.Yf=function(t){return function(t){var e,n;return T3(e=new fY,G5t),(n=ZR(Ost(t,(O_t(),gKt)),21)).Hc((igt(),DXt))&&T3(e,X5t),n.Hc(MXt)&&T3(e,W5t),n.Hc(OXt)&&T3(e,$5t),n.Hc(SXt)&&T3(e,Y5t),e}(ZR(t,37))},H_t.pf=function(t,e){!function(t,e,n){var i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S,E;if(ast(n,"Spline edge routing",1),0==e.b.c.length)return e.f.a=0,void jlt(n);y=ex(fI(Ost(e,(y_t(),$1t)))),l=ex(fI(Ost(e,U1t))),s=ex(fI(Ost(e,j1t))),T=ZR(Ost(e,w0t),336)==(O6(),w3t),k=ex(fI(Ost(e,_0t))),t.d=e,t.j.c=XK(Yjt,akt,1,0,5,1),t.a.c=XK(Yjt,akt,1,0,5,1),WF(t.k),f=lE((c=ZR(TN(e.b,0),29)).a,(_pt(),F5t)),h=lE((g=ZR(TN(e.b,e.b.c.length-1),29)).a,F5t),v=new md(e.b),m=null,E=0;do{for(zwt(t,m,b=v.a0?(u=0,m&&(u+=l),u+=(M-1)*s,b&&(u+=l),T&&b&&(u=r.Math.max(u,hpt(b,s,y,k))),u("+this.c+") "+this.b},H_t.c=0;var K5t,Z5t;kB(tOt,"SplineEdgeRouter/Dependency",268);Xft(455,22,{3:1,35:1,22:1,455:1},AA);var J5t,Q5t=Y0(tOt,"SplineEdgeRouter/SideToProcess",455,cFt,(function(){return ZV(),R5(qx(Q5t,1),Xkt,455,0,[K5t,Z5t])}),(function(t){return ZV(),iQ((N$(),J5t),t)}));Xft(1454,1,Qkt,wo),H_t.Mb=function(t){return kpt(),!ZR(t,128).o};kB(tOt,"SplineEdgeRouter/lambda$0$Type",1454);Xft(1455,1,{},xo),H_t.Ge=function(t){return kpt(),ZR(t,128).v+1};kB(tOt,"SplineEdgeRouter/lambda$1$Type",1455);Xft(1456,1,Ckt,SA),H_t.td=function(t){!function(t,e,n){RU(t.b,ZR(n.b,17),e)}(this.a,this.b,ZR(t,46))};kB(tOt,"SplineEdgeRouter/lambda$2$Type",1456);Xft(1457,1,Ckt,EA),H_t.td=function(t){!function(t,e,n){RU(t.b,ZR(n.b,17),e)}(this.a,this.b,ZR(t,46))};kB(tOt,"SplineEdgeRouter/lambda$3$Type",1457);Xft(128,1,{35:1,128:1},Fct,Gbt),H_t.wd=function(t){return function(t,e){return t.s-e.s}(this,ZR(t,128))},H_t.b=0,H_t.e=!1,H_t.f=0,H_t.g=0,H_t.j=!1,H_t.k=!1,H_t.n=0,H_t.o=!1,H_t.p=!1,H_t.q=!1,H_t.s=0,H_t.u=0,H_t.v=0,H_t.F=0;kB(tOt,"SplineSegment",128);Xft(459,1,{459:1},_o),H_t.a=0,H_t.b=!1,H_t.c=!1,H_t.d=!1,H_t.e=!1,H_t.f=0;kB(tOt,"SplineSegment/EdgeInformation",459);Xft(1234,1,{},vo);kB(aOt,xSt,1234);Xft(1235,1,HMt,mo),H_t.ue=function(t,e){return function(t,e){var n,r,i;return 0==(n=ZR(Ost(e,(oht(),X4t)),19).a-ZR(Ost(t,X4t),19).a)?(r=xD(gP(ZR(Ost(t,(oxt(),v4t)),8)),ZR(Ost(t,m4t),8)),i=xD(gP(ZR(Ost(e,v4t),8)),ZR(Ost(e,m4t),8)),O7(r.a*r.b,i.a*i.b)):n}(ZR(t,135),ZR(e,135))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(aOt,wSt,1235);Xft(1233,1,{},f_);var t4t,e4t,n4t,r4t;kB(aOt,"MrTree",1233);Xft(393,22,{3:1,35:1,22:1,393:1,246:1,234:1},CA),H_t.Kf=function(){return But(this)},H_t.Xf=function(){return But(this)};var i4t,a4t=Y0(aOt,"TreeLayoutPhases",393,cFt,(function(){return Fit(),R5(qx(a4t,1),Xkt,393,0,[t4t,e4t,n4t,r4t])}),(function(t){return Fit(),iQ(($Z(),i4t),t)}));Xft(1130,209,ZAt,pD),H_t.Ze=function(t,e){var n,i,a,o,s,l;for(tx(uI(kht(t,(oht(),G4t))))||iq(new Yd((gT(),new Yb(t)))),l5(s=new tK,t),d4(s,(oxt(),A4t),t),function(t,e,n){var i,a,o,s,l;for(o=0,a=new WP((!t.a&&(t.a=new bF(rae,t,10,11)),t.a));a.e!=a.i.gc();)s="",0==(!(i=ZR(fnt(a),33)).n&&(i.n=new bF(nae,i,1,7)),i.n).i||(s=ZR(a0((!i.n&&(i.n=new bF(nae,i,1,7)),i.n),0),137).a),l5(l=new Q4(o++,e,s),i),d4(l,(oxt(),A4t),i),l.e.b=i.j+i.f/2,l.f.a=r.Math.max(i.g,1),l.e.a=i.i+i.g/2,l.f.b=r.Math.max(i.f,1),jz(e.b,l),Jct(n.f,i,l)}(t,s,l=new im),function(t,e,n){var r,i,a,o,s,l,c;for(o=new WP((!t.a&&(t.a=new bF(rae,t,10,11)),t.a));o.e!=o.i.gc();)for(i=new Oj(dL(ddt(a=ZR(fnt(o),33)).a.Kc(),new u));Kft(i);)jft(r=ZR(wX(i),79))||jft(r)||Xut(r)||(l=ZR(nE(zV(n.f,a)),86),c=ZR(UB(n,ist(ZR(a0((!r.c&&(r.c=new LD(Xie,r,5,8)),r.c),0),82))),86),l&&c&&(d4(s=new rV(l,c),(oxt(),A4t),r),l5(s,r),jz(l.d,s),jz(c.b,s),jz(e.a,s)))}(t,s,l),o=s,i=new md(a=ymt(this.a,o));i.ah&&(S=0,E+=f+k,f=0),mdt(w,s,S,E),e=r.Math.max(e,S+_.a),f=r.Math.max(f,_.b),S+=_.a+k;for(x=new im,n=new im,M=new md(t);M.a"+KG(this.c):"e_"+$4(this)};kB(oOt,"TEdge",188);Xft(135,134,{3:1,135:1,94:1,134:1},tK),H_t.Ib=function(){var t,e,n,r,i;for(i=null,r=tnt(this.b,0);r.b!=r.d.c;)i+=(null==(n=ZR(EY(r),86)).c||0==n.c.length?"n_"+n.g:"n_"+n.c)+"\n";for(e=tnt(this.a,0);e.b!=e.d.c;)i+=((t=ZR(EY(e),188)).b&&t.c?KG(t.b)+"->"+KG(t.c):"e_"+$4(t))+"\n";return i};var o4t=kB(oOt,"TGraph",135);Xft(633,502,{3:1,502:1,633:1,94:1,134:1});kB(oOt,"TShape",633);Xft(86,633,{3:1,502:1,86:1,633:1,94:1,134:1},Q4),H_t.Ib=function(){return KG(this)};var s4t=kB(oOt,"TNode",86);Xft(255,1,Dkt,zg),H_t.Jc=function(t){Y$(this,t)},H_t.Kc=function(){return new Ng(tnt(this.a.d,0))};kB(oOt,"TNode/2",255);Xft(358,1,dkt,Ng),H_t.Nb=function(t){EF(this,t)},H_t.Pb=function(){return ZR(EY(this.a),188).c},H_t.Ob=function(){return r_(this.a)},H_t.Qb=function(){UQ(this.a)};kB(oOt,"TNode/2/1",358);Xft(1840,1,mEt,dD),H_t.pf=function(t,e){ayt(this,ZR(t,135),e)};var l4t,c4t,u4t,f4t,h4t,d4t;kB(sOt,"FanProcessor",1840);Xft(327,22,{3:1,35:1,22:1,327:1,234:1},PA),H_t.Kf=function(){switch(this.g){case 0:return new cb;case 1:return new dD;case 2:return new Lo;case 3:return new Co;case 4:return new Io;case 5:return new Do;default:throw um(new Kb(HEt+(null!=this.f?this.f:""+this.g)))}};var p4t,g4t=Y0(sOt,VEt,327,cFt,(function(){return wct(),R5(qx(g4t,1),Xkt,327,0,[d4t,c4t,f4t,u4t,h4t,l4t])}),(function(t){return wct(),iQ((M0(),p4t),t)}));Xft(1843,1,mEt,Co),H_t.pf=function(t,e){Eht(this,ZR(t,135),e)},H_t.a=0;kB(sOt,"LevelHeightProcessor",1843);Xft(1844,1,Dkt,Po),H_t.Jc=function(t){Y$(this,t)},H_t.Kc=function(){return YH(),ck(),PBt};kB(sOt,"LevelHeightProcessor/1",1844);Xft(1841,1,mEt,Lo),H_t.pf=function(t,e){Rct(this,ZR(t,135),e)},H_t.a=0;kB(sOt,"NeighborsProcessor",1841);Xft(1842,1,Dkt,Oo),H_t.Jc=function(t){Y$(this,t)},H_t.Kc=function(){return YH(),ck(),PBt};kB(sOt,"NeighborsProcessor/1",1842);Xft(1845,1,mEt,Io),H_t.pf=function(t,e){Sht(this,ZR(t,135),e)},H_t.a=0;kB(sOt,"NodePositionProcessor",1845);Xft(1839,1,mEt,cb),H_t.pf=function(t,e){!function(t,e){var n,r,i,a,o,s,l;for(t.a.c=XK(Yjt,akt,1,0,5,1),r=tnt(e.b,0);r.b!=r.d.c;)0==(n=ZR(EY(r),86)).b.b&&(d4(n,(oxt(),O4t),(TL(),!0)),nz(t.a,n));switch(t.a.c.length){case 0:d4(i=new Q4(0,e,"DUMMY_ROOT"),(oxt(),O4t),(TL(),!0)),d4(i,b4t,!0),jz(e.b,i);break;case 1:break;default:for(a=new Q4(0,e,"SUPER_ROOT"),s=new md(t.a);s.avOt&&(a-=vOt),u=(l=ZR(kht(i,Oee),8)).a,h=l.b+t,(o=r.Math.atan2(h,u))<0&&(o+=vOt),(o+=e)>vOt&&(o-=vOt),YC(),l1(1e-10),r.Math.abs(a-o)<=1e-10||a==o||isNaN(a)&&isNaN(o)?0:ao?1:KE(isNaN(a),isNaN(o))}(this.a,this.b,ZR(t,33),ZR(e,33))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)},H_t.a=0,H_t.b=0;kB(gOt,"RadialUtil/lambda$0$Type",549);Xft(1375,1,mEt,No),H_t.pf=function(t,e){!function(t,e){var n,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y;for(ast(e,"Calculate Graph Size",1),e.n&&t&&tW(e,NW(t),(S6(),Tie)),l=vSt,c=vSt,o=mOt,s=mOt,h=new WP((!t.a&&(t.a=new bF(rae,t,10,11)),t.a));h.e!=h.i.gc();)g=(u=ZR(fnt(h),33)).i,v=u.j,y=u.g,i=u.f,a=ZR(kht(u,(L_t(),$te)),142),l=r.Math.min(l,g-a.b),c=r.Math.min(c,v-a.d),o=r.Math.max(o,g+y+a.c),s=r.Math.max(s,v+i+a.a);for(d=new KA(l-(p=ZR(kht(t,(L_t(),cee)),116)).b,c-p.d),f=new WP((!t.a&&(t.a=new bF(rae,t,10,11)),t.a));f.e!=f.i.gc();)I0(u=ZR(fnt(f),33),u.i-d.a),D0(u,u.j-d.b);m=o-l+(p.b+p.c),n=s-c+(p.d+p.a),O0(t,m),L0(t,n),e.n&&t&&tW(e,NW(t),(S6(),Tie))}(ZR(t,33),e)};var m6t,y6t,b6t;kB(yOt,"CalculateGraphSize",1375);Xft(442,22,{3:1,35:1,22:1,442:1,234:1},DA),H_t.Kf=function(){switch(this.g){case 0:return new Ho;case 1:return new zo;case 2:return new No;default:throw um(new Kb(HEt+(null!=this.f?this.f:""+this.g)))}};var x6t,w6t=Y0(yOt,VEt,442,cFt,(function(){return b9(),R5(qx(w6t,1),Xkt,442,0,[b6t,m6t,y6t])}),(function(t){return b9(),iQ((jK(),x6t),t)}));Xft(645,1,{}),H_t.e=1,H_t.g=0;kB(bOt,"AbstractRadiusExtensionCompaction",645);Xft(1772,645,{},iI),H_t.hg=function(t){var e,n,r,i,a,o,s,l,c;for(this.c=ZR(kht(t,(nI(),h6t)),33),function(t,e){t.f=e}(this,this.c),this.d=Knt(ZR(kht(t,(Bit(),t8t)),293)),(l=ZR(kht(t,H6t),19))&&Uh(this,l.a),Hh(this,(yU(s=fI(kht(t,(L_t(),Xee)))),s)),c=agt(this.c),this.d&&this.d.lg(c),function(t,e){var n,r,i;for(r=new md(e);r.ar?1:0}(ZR(t,33),ZR(e,33))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(NOt,"RectPackingLayoutProvider/lambda$0$Type",1137);Xft(1256,1,{},DR),H_t.a=0,H_t.c=!1;kB(jOt,"AreaApproximation",1256);var p8t=oN(jOt,"BestCandidateFilter");Xft(638,1,{526:1},Zo),H_t.mg=function(t,e,n){var i,a,o,s,l,c;for(c=new rm,o=tMt,l=new md(t);l.a1)for(r=new md(t.a);r.a>>28]|e[t>>24&15]<<4|e[t>>20&15]<<8|e[t>>16&15]<<12|e[t>>12&15]<<16|e[t>>8&15]<<20|e[t>>4&15]<<24|e[15&t]<<28}(QE(this.b))},H_t.Jf=function(t){var e,n,r;for(n=0;n0&&f8((IG(e-1,t.length),t.charCodeAt(e-1)),AEt);)--e;if(n>=e)throw um(new Kb("The given string does not contain any numbers."));if(2!=(r=Ovt(t.substr(n,e-n),",|;|\r|\n")).length)throw um(new Kb("Exactly two numbers are expected, "+r.length+" were found."));try{this.a=mlt(Xst(r[0])),this.b=mlt(Xst(r[1]))}catch(Wle){throw CP(Wle=_5(Wle),127)?um(new Kb(SEt+Wle)):um(Wle)}},H_t.Ib=function(){return"("+this.a+","+this.b+")"},H_t.a=0,H_t.b=0;var V9t=kB(EEt,"KVector",8);Xft(74,68,{3:1,4:1,20:1,28:1,52:1,14:1,68:1,15:1,74:1,414:1},Dy,ww,FO),H_t.Pc=function(){return function(t){var e,n,r;for(e=0,r=XK(V9t,Akt,8,t.b,0,1),n=tnt(t,0);n.b!=n.d.c;)r[e++]=ZR(EY(n),8);return r}(this)},H_t.Jf=function(t){var e,n,r,i,a;n=Ovt(t,",|;|\\(|\\)|\\[|\\]|\\{|\\}| |\t|\n"),UH(this);try{for(e=0,i=0,r=0,a=0;e0&&(i%2==0?r=mlt(n[e]):a=mlt(n[e]),i>0&&i%2!=0&&jz(this,new KA(r,a)),++i),++e}catch(Wle){throw CP(Wle=_5(Wle),127)?um(new Kb("The given string does not match the expected format for vectors."+Wle)):um(Wle)}},H_t.Ib=function(){var t,e,n;for(t=new AL("("),e=tnt(this,0);e.b!=e.d.c;)xE(t,(n=ZR(EY(e),8)).a+","+n.b),e.b!=e.d.c&&(t.a+="; ");return(t.a+=")",t).a};var q9t,G9t,W9t,Y9t,$9t,X9t,K9t=kB(EEt,"KVectorChain",74);Xft(248,22,{3:1,35:1,22:1,248:1},ZA);var Z9t,J9t,Q9t,tte,ete,nte,rte,ite,ate,ote,ste,lte,cte,ute=Y0(SIt,"Alignment",248,cFt,(function(){return qnt(),R5(qx(ute,1),Xkt,248,0,[q9t,Y9t,$9t,X9t,G9t,W9t])}),(function(t){return qnt(),iQ((b0(),Z9t),t)}));Xft(979,1,dAt,Lf),H_t.Qe=function(t){Mmt(t)};kB(SIt,"BoxLayouterOptions",979);Xft(980,1,{},zs),H_t.$e=function(){return new Gs},H_t._e=function(t){};var fte,hte,dte,pte,gte,vte;kB(SIt,"BoxLayouterOptions/BoxFactory",980);Xft(291,22,{3:1,35:1,22:1,291:1},JA);var mte,yte,bte,xte,wte,_te,kte,Tte,Mte,Ate,Ste,Ete,Cte,Pte,Lte,Ote,Ite,Dte,Rte,zte,Nte,jte,Fte,Bte,Ute,Hte,Vte,qte,Gte,Wte,Yte,$te,Xte,Kte,Zte,Jte,Qte,tee,eee,nee,ree,iee,aee,oee,see,lee,cee,uee,fee,hee,dee,pee,gee,vee,mee,yee,bee,xee,wee,_ee,kee,Tee,Mee,Aee,See,Eee,Cee,Pee,Lee,Oee,Iee,Dee,Ree,zee,Nee,jee,Fee,Bee,Uee,Hee,Vee,qee,Gee,Wee,Yee,$ee,Xee,Kee,Zee,Jee,Qee,tne=Y0(SIt,"ContentAlignment",291,cFt,(function(){return vot(),R5(qx(tne,1),Xkt,291,0,[vte,gte,pte,hte,fte,dte])}),(function(t){return vot(),iQ((y0(),mte),t)}));Xft(684,1,dAt,Of),H_t.Qe=function(t){_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,LIt),""),"Layout Algorithm"),"Select a specific layout algorithm."),(dct(),z9t)),iBt),J7((Zet(),S9t))))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,OIt),""),"Resolved Layout Algorithm"),"Meta data associated with the selected algorithm."),R9t),w9t),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,fLt),""),"Alignment"),"Alignment of the selected node relative to other nodes; the exact meaning depends on the used algorithm."),xte),O9t),ute),J7(A9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,hSt),""),"Aspect Ratio"),"The desired aspect ratio of the drawing, that is the quotient of width by height."),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,IIt),""),"Bend Points"),"A fixed list of bend points for the edge. This is used by the 'Fixed Layout' algorithm to specify a pre-defined routing for an edge. The vector chain must include the source point, any bend points, and the target point, so it must have at least two points."),R9t),K9t),J7(T9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,TLt),""),"Content Alignment"),"Specifies how the content of a node are aligned. Each node can individually control the alignment of its contents. I.e. if a node should be aligned top left in its parent node, the parent node should specify that option."),Ste),I9t),tne),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,uLt),""),"Debug Mode"),"Whether additional debug information shall be generated."),(TL(),!1)),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,gLt),""),UAt),"Overall direction of edges: horizontal (right / left) or vertical (down / up)."),Pte),O9t),une),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,NPt),""),"Edge Routing"),"What kind of edge routing style should be applied for the content of a parent node. Algorithms may also set this option to single edges in order to mark them as splines. The bend point list of edges with this option set to SPLINES must be interpreted as control points for a piecewise cubic spline."),Rte),O9t),Tne),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,$Ot),""),"Expand Nodes"),"If active, nodes are expanded to fill the area of their parent."),!1),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,OPt),""),"Hierarchy Handling"),"Determines whether separate layout runs are triggered for different compound nodes in a hierarchical graph. Setting a node's hierarchy handling to `INCLUDE_CHILDREN` will lay out that node and all of its descendants in a single layout run, until a descendant is encountered which has its hierarchy handling set to `SEPARATE_CHILDREN`. In general, `SEPARATE_CHILDREN` will ensure that a new layout run is triggered for a node with that setting. Including multiple levels of hierarchy in a single layout run may allow cross-hierarchical edges to be laid out properly. If the root node is set to `INHERIT` (or not set at all), the default behavior is `SEPARATE_CHILDREN`."),Bte),O9t),Hne),ej(S9t,R5(qx(j9t,1),Xkt,175,0,[A9t]))))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,dSt),""),"Padding"),"The padding to be left to a parent element's border when placing child elements. This can also serve as an output option of a layout algorithm if node size calculation is setup appropriately."),uee),R9t),XGt),ej(S9t,R5(qx(j9t,1),Xkt,175,0,[A9t]))))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,FSt),""),"Interactive"),"Whether the algorithm should be run in interactive mode for the content of a parent node. What this means exactly depends on how the specific algorithm interprets this option. Usually in the interactive mode algorithms try to modify the current layout as little as possible."),!1),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,zLt),""),"interactive Layout"),"Whether the graph should be changeable interactively and by setting constraints"),!1),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,HSt),""),"Omit Node Micro Layout"),"Node micro layout comprises the computation of node dimensions (if requested), the placement of ports and their labels, and the placement of node labels. The functionality is implemented independent of any specific layout algorithm and shouldn't have any negative impact on the layout algorithm's performance itself. Yet, if any unforeseen behavior occurs, this option allows to deactivate the micro layout."),!1),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,BSt),""),"Port Constraints"),"Defines constraints of the position of the ports of a node."),Tee),O9t),_re),J7(A9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,ILt),""),"Position"),"The position of a node, port, or label. This is used by the 'Fixed Layout' algorithm to specify a pre-defined position."),R9t),V9t),ej(A9t,R5(qx(j9t,1),Xkt,175,0,[E9t,M9t]))))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,DSt),""),"Priority"),"Defines the priority of an object; its meaning depends on the specific layout algorithm and the context where it is used."),D9t),$Ft),ej(A9t,R5(qx(j9t,1),Xkt,175,0,[T9t]))))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,NSt),""),"Randomization Seed"),"Seed used for pseudo-random number generators to control the layout algorithm. If the value is 0, the seed shall be determined pseudo-randomly (e.g. from the system time)."),D9t),$Ft),J7(S9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,jSt),""),"Separate Connected Components"),"Whether each connected component should be processed separately."),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,MLt),""),"Junction Points"),"This option is not used as option, but as output of the layout algorithms. It is attached to edges and determines the points where junction symbols should be drawn in order to represent hyperedges with orthogonal routing. Whether such points are computed depends on the chosen layout algorithm and edge routing style. The points are put into the vector chain with no specific order."),Yte),R9t),K9t),J7(T9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,ELt),""),"Comment Box"),"Whether the node should be regarded as a comment box instead of a regular node. In that case its placement should be similar to how labels are handled. Any edges incident to a comment box specify to which graph elements the comment is related."),!1),P9t),jFt),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,CLt),""),"Hypernode"),"Whether the node should be handled as a hypernode."),!1),P9t),jFt),J7(A9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,DIt),""),"Label Manager"),"Label managers can shorten labels upon a layout algorithm's request."),R9t),nce),ej(S9t,R5(qx(j9t,1),Xkt,175,0,[M9t]))))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,DLt),""),"Margins"),"Margins define additional space around the actual bounds of a graph element. For instance, ports or labels being placed on the outside of a node's border might introduce such a margin. The margin is used to guarantee non-overlap of other graph elements with those ports or labels."),Xte),R9t),FGt),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,lLt),""),"No Layout"),"No layout is done for the associated element. This is used to mark parts of a diagram to avoid their inclusion in the layout graph, or to mark parts of the layout graph to prevent layout engines from processing them. If you wish to exclude the contents of a compound node from automatic layout, while the node itself is still considered on its own layer, use the 'Fixed Layout' algorithm for that node."),!1),P9t),jFt),ej(A9t,R5(qx(j9t,1),Xkt,175,0,[T9t,E9t,M9t]))))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,RIt),""),"Scale Factor"),"The scaling factor to be applied to the corresponding node in recursive layout. It causes the corresponding node's size to be adjusted, and its ports and labels to be sized and placed accordingly after the layout of that node has been determined (and before the node itself and its siblings are arranged). The scaling is not reverted afterwards, so the resulting layout graph contains the adjusted size and position data. This option is currently not supported if 'Layout Hierarchy' is set."),1),L9t),qFt),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,zIt),""),"Animate"),"Whether the shift from the old layout to the new computed layout shall be animated."),!0),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,NIt),""),"Animation Time Factor"),"Factor for computation of animation time. The higher the value, the longer the animation time. If the value is 0, the resulting time is always equal to the minimum defined by 'Minimal Animation Time'."),g7(100)),D9t),$Ft),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,jIt),""),"Layout Ancestors"),"Whether the hierarchy levels on the path from the selected element to the root of the diagram shall be included in the layout process."),!1),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,FIt),""),"Maximal Animation Time"),"The maximal time for animations, in milliseconds."),g7(4e3)),D9t),$Ft),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,BIt),""),"Minimal Animation Time"),"The minimal time for animations, in milliseconds."),g7(400)),D9t),$Ft),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,UIt),""),"Progress Bar"),"Whether a progress bar shall be displayed during layout computations."),!1),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,HIt),""),"Validate Graph"),"Whether the graph shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user."),!1),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,VIt),""),"Validate Options"),"Whether layout options shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user."),!0),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,qIt),""),"Zoom to Fit"),"Whether the zoom level shall be set to view the whole diagram after layout."),!1),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,PIt),"box"),"Box Layout Mode"),"Configures the packing mode used by the {@link BoxLayoutProvider}. If SIMPLE is not required (neither priorities are used nor the interactive mode), GROUP_DEC can improve the packing and decrease the area. GROUP_MIXED and GROUP_INC may, in very specific scenarios, work better."),Tte),O9t),wie),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,KPt),jPt),"Comment Comment Spacing"),"Spacing to be preserved between a comment box and other comment boxes connected to the same node. The space left between comment boxes of different nodes is controlled by the node-node spacing."),10),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,ZPt),jPt),"Comment Node Spacing"),"Spacing to be preserved between a node and its connected comment boxes. The space left between a node and the comments of another node is controlled by the node-node spacing."),10),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,uSt),jPt),"Components Spacing"),"Spacing to be preserved between pairs of connected components. This option is only relevant if 'separateConnectedComponents' is activated."),20),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,JPt),jPt),"Edge Spacing"),"Spacing to be preserved between any two edges. Note that while this can somewhat easily be satisfied for the segments of orthogonally drawn edges, it is harder for general polylines or splines."),10),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,zSt),jPt),"Edge Label Spacing"),"The minimal distance to be preserved between a label and the edge it is associated with. Note that the placement of a label is influenced by the 'edgelabels.placement' option."),2),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,QPt),jPt),"Edge Node Spacing"),"Spacing to be preserved between nodes and edges."),10),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,tLt),jPt),"Label Spacing"),"Determines the amount of space to be left between two labels of the same graph element."),0),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,rLt),jPt),"Label Node Spacing"),"Spacing to be preserved between labels and the border of node they are associated with. Note that the placement of a label is influenced by the 'nodelabels.placement' option."),5),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,eLt),jPt),"Horizontal spacing between Label and Port"),"Horizontal spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option."),1),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,nLt),jPt),"Vertical spacing between Label and Port"),"Vertical spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option."),1),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,RSt),jPt),"Node Spacing"),"The minimal distance to be preserved between each two nodes."),20),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,iLt),jPt),"Node Self Loop Spacing"),"Spacing to be preserved between a node and its self loops."),10),L9t),qFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,aLt),jPt),"Port Spacing"),"Spacing between pairs of ports of the same node."),10),L9t),qFt),ej(S9t,R5(qx(j9t,1),Xkt,175,0,[A9t]))))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,oLt),jPt),"Individual Spacing"),"Allows to specify individual spacing values for graph elements that shall be different from the value specified for the element's parent."),R9t),_ie),ej(A9t,R5(qx(j9t,1),Xkt,175,0,[T9t,E9t,M9t]))))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,RLt),jPt),"Additional Port Space"),"Additional space around the sets of ports on each node side. For each side of a node, this option can reserve additional space before and after the ports on each side. For example, a top spacing of 20 makes sure that the first port on the western and eastern side is 20 units away from the northern border."),Jee),R9t),FGt),J7(S9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,OLt),$It),"Layout Partition"),"Partition to which the node belongs. This requires Layout Partitioning to be active. Nodes with lower partition IDs will appear to the left of nodes with higher partition IDs (assuming a left-to-right layout direction)."),D9t),$Ft),ej(S9t,R5(qx(j9t,1),Xkt,175,0,[A9t]))))),RW(t,OLt,LLt,pee),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,LLt),$It),"Layout Partitioning"),"Whether to activate partitioned layout. This will allow to group nodes through the Layout Partition option. a pair of nodes with different partition indices is then placed such that the node with lower index is placed to the left of the other node (with left-to-right layout direction). Depending on the layout algorithm, this may only be guaranteed to work if all nodes have a layout partition configured, or at least if edges that cross partitions are not part of a partition-crossing cycle."),hee),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,vLt),XIt),"Node Label Padding"),"Define padding for node labels that are placed inside of a node."),Zte),R9t),XGt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,GSt),XIt),"Node Label Placement"),"Hints for where node labels are to be placed; if empty, the node label's position is not modified."),Qte),I9t),ore),ej(A9t,R5(qx(j9t,1),Xkt,175,0,[M9t]))))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,bLt),KIt),"Port Alignment"),"Defines the default port distribution for a node. May be overridden for each side individually."),vee),O9t),pre),J7(A9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,xLt),KIt),"Port Alignment (North)"),"Defines how ports on the northern side are placed, overriding the node's general port alignment."),O9t),pre),J7(A9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,wLt),KIt),"Port Alignment (South)"),"Defines how ports on the southern side are placed, overriding the node's general port alignment."),O9t),pre),J7(A9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,_Lt),KIt),"Port Alignment (West)"),"Defines how ports on the western side are placed, overriding the node's general port alignment."),O9t),pre),J7(A9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,kLt),KIt),"Port Alignment (East)"),"Defines how ports on the eastern side are placed, overriding the node's general port alignment."),O9t),pre),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,qSt),ZIt),"Node Size Constraints"),"What should be taken into account when calculating a node's size. Empty size constraints specify that a node's size is already fixed and should not be changed."),eee),I9t),die),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,VSt),ZIt),"Node Size Options"),"Options modifying the behavior of the size constraints set on a node. Each member of the set specifies something that should be taken into account when calculating node sizes. The empty set corresponds to no further modifications."),oee),I9t),gie),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,iEt),ZIt),"Node Size Minimum"),"The minimal size to which a node can be reduced."),iee),R9t),V9t),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,pLt),ZIt),"Fixed Graph Size"),"By default, the fixed layout provider will enlarge a graph until it is large enough to contain its children. If this option is set, it won't do so."),!1),P9t),jFt),J7(S9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,ALt),$Pt),"Edge Label Placement"),"Gives a hint on where to put edge labels."),Ite),O9t),vne),J7(M9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,USt),$Pt),"Inline Edge Labels"),"If true, an edge label is placed directly on its edge. May only apply to center edge labels. This kind of label placement is only advisable if the label's rendering is such that it is not crossed by its edge and thus stays legible."),!1),P9t),jFt),J7(M9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,GIt),"font"),"Font Name"),"Font name used for a label."),z9t),iBt),J7(M9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,WIt),"font"),"Font Size"),"Font size used for a label."),D9t),$Ft),J7(M9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,PLt),JIt),"Port Anchor Offset"),"The offset to the port position where connections shall be attached."),R9t),V9t),J7(E9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,SLt),JIt),"Port Index"),"The index of a port in the fixed order around a node. The order is assumed as clockwise, starting with the leftmost port on the top side. This option must be set if 'Port Constraints' is set to FIXED_ORDER and no specific positions are given for the ports. Additionally, the option 'Port Side' must be defined in this case."),D9t),$Ft),J7(E9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,cLt),JIt),"Port Side"),"The side of a node on which a port is situated. This option must be set if 'Port Constraints' is set to FIXED_SIDE or FIXED_ORDER and no specific positions are given for the ports."),Lee),O9t),Jre),J7(E9t)))),_9(t,new ict(gw(pw(vw(cw(dw(fw(hw(new Us,sLt),JIt),"Port Border Offset"),"The offset of ports on the node border. With a positive offset the port is moved outside of the node, while with a negative offset the port is moved towards the inside. An offset of 0 means that the port is placed directly on the node border, i.e. if the port side is north, the port's south border touches the nodes's north border; if the port side is east, the port's west border touches the nodes's east border; if the port side is south, the port's north border touches the node's south border; if the port side is west, the port's east border touches the node's west border."),L9t),qFt),J7(E9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,WSt),QIt),"Port Label Placement"),"Decides on a placement method for port labels; if empty, the node label's position is not modified."),Eee),I9t),Gre),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,mLt),QIt),"Port Labels Next to Port"),"Use 'portLabels.placement': NEXT_TO_PORT_OF_POSSIBLE."),!1),P9t),jFt),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,yLt),QIt),"Treat Port Labels as Group"),"If this option is true (default), the labels of a port will be treated as a group when it comes to centering them next to their port. If this option is false, only the first label will be centered next to the port, with the others being placed below. This only applies to labels of eastern and western ports and will have no effect if labels are not placed next to their port."),!0),P9t),jFt),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,hLt),tDt),"Activate Inside Self Loops"),"Whether this node allows to route self loops inside of it instead of around it. If set to true, this will make the node a compound node if it isn't already, and will require the layout algorithm to support compound nodes with hierarchical ports."),!1),P9t),jFt),J7(A9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,dLt),tDt),"Inside Self Loop"),"Whether a self loop should be routed inside a node instead of around that node."),!1),P9t),jFt),J7(T9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,fSt),"edge"),"Edge Thickness"),"The thickness of an edge. This is a hint on the line width used to draw an edge, possibly requiring more space to be reserved for it."),1),L9t),qFt),J7(T9t)))),_9(t,new ict(gw(pw(vw(uw(cw(dw(fw(hw(new Us,YIt),"edge"),"Edge Type"),"The type of an edge. This is usually used for UML class diagrams, where associations must be handled differently from generalizations."),Nte),O9t),Ine),J7(T9t)))),lT(t,new gG(ow(lw(sw(new ys,LEt),"Layered"),'The layer-based method was introduced by Sugiyama, Tagawa and Toda in 1981. It emphasizes the direction of edges by pointing as many edges as possible into the same direction. The nodes are arranged in layers, which are sometimes called "hierarchies", and then reordered such that the number of edge crossings is minimized. Afterwards, concrete coordinates are computed for the nodes and edge bend points.'))),lT(t,new gG(ow(lw(sw(new ys,"org.eclipse.elk.orthogonal"),"Orthogonal"),'Orthogonal methods that follow the "topology-shape-metrics" approach by Batini, Nardelli and Tamassia \'86. The first phase determines the topology of the drawing by applying a planarization technique, which results in a planar representation of the graph. The orthogonal shape is computed in the second phase, which aims at minimizing the number of edge bends, and is called orthogonalization. The third phase leads to concrete coordinates for nodes and edge bend points by applying a compaction method, thus defining the metrics.'))),lT(t,new gG(ow(lw(sw(new ys,ISt),"Force"),"Layout algorithms that follow physical analogies by simulating a system of attractive and repulsive forces. The first successful method of this kind was proposed by Eades in 1984."))),lT(t,new gG(ow(lw(sw(new ys,"org.eclipse.elk.circle"),"Circle"),"Circular layout algorithms emphasize cycles or biconnected components of a graph by arranging them in circles. This is useful if a drawing is desired where such components are clearly grouped, or where cycles are shown as prominent OPTIONS of the graph."))),lT(t,new gG(ow(lw(sw(new ys,pOt),"Tree"),"Specialized layout methods for trees, i.e. acyclic graphs. The regular structure of graphs that have no undirected cycles can be emphasized using an algorithm of this type."))),lT(t,new gG(ow(lw(sw(new ys,"org.eclipse.elk.planar"),"Planar"),"Algorithms that require a planar or upward planar graph. Most of these algorithms are theoretically interesting, but not practically usable."))),lT(t,new gG(ow(lw(sw(new ys,LOt),"Radial"),"Radial layout algorithms usually position the nodes of the graph on concentric circles."))),Svt((new If,t)),Mmt((new Lf,t)),_gt((new Df,t))};var ene,nne,rne,ine,ane;kB(SIt,"CoreOptions",684);Xft(103,22,{3:1,35:1,22:1,103:1},QA);var one,sne,lne,cne,une=Y0(SIt,UAt,103,cFt,(function(){return e7(),R5(qx(une,1),Xkt,103,0,[ine,rne,nne,ene,ane])}),(function(t){return e7(),iQ((xQ(),one),t)}));Xft(272,22,{3:1,35:1,22:1,272:1},tS);var fne,hne,dne,pne,gne,vne=Y0(SIt,"EdgeLabelPlacement",272,cFt,(function(){return QQ(),R5(qx(vne,1),Xkt,272,0,[sne,lne,cne])}),(function(t){return QQ(),iQ((qK(),fne),t)}));Xft(218,22,{3:1,35:1,22:1,218:1},eS);var mne,yne,bne,xne,wne,_ne,kne,Tne=Y0(SIt,"EdgeRouting",218,cFt,(function(){return v9(),R5(qx(Tne,1),Xkt,218,0,[gne,dne,hne,pne])}),(function(t){return v9(),iQ((eJ(),mne),t)}));Xft(312,22,{3:1,35:1,22:1,312:1},nS);var Mne,Ane,Sne,Ene,Cne,Pne,Lne,One,Ine=Y0(SIt,"EdgeType",312,cFt,(function(){return bst(),R5(qx(Ine,1),Xkt,312,0,[_ne,xne,kne,yne,wne,bne])}),(function(t){return bst(),iQ((S0(),Mne),t)}));Xft(977,1,dAt,If),H_t.Qe=function(t){Svt(t)};kB(SIt,"FixedLayouterOptions",977);Xft(978,1,{},Ks),H_t.$e=function(){return new Vs},H_t._e=function(t){};var Dne,Rne,zne;kB(SIt,"FixedLayouterOptions/FixedFactory",978);Xft(334,22,{3:1,35:1,22:1,334:1},rS);var Nne,jne,Fne,Bne,Une,Hne=Y0(SIt,"HierarchyHandling",334,cFt,(function(){return P8(),R5(qx(Hne,1),Xkt,334,0,[Rne,Dne,zne])}),(function(t){return P8(),iQ((VK(),Nne),t)}));Xft(285,22,{3:1,35:1,22:1,285:1},iS);var Vne,qne,Gne,Wne,Yne,$ne,Xne,Kne,Zne,Jne,Qne=Y0(SIt,"LabelSide",285,cFt,(function(){return Uit(),R5(qx(Qne,1),Xkt,285,0,[Une,jne,Fne,Bne])}),(function(t){return Uit(),iQ((tJ(),Vne),t)}));Xft(93,22,{3:1,35:1,22:1,93:1},aS);var tre,ere,nre,rre,ire,are,ore=Y0(SIt,"NodeLabelPlacement",93,cFt,(function(){return Tht(),R5(qx(ore,1),Xkt,93,0,[Gne,qne,Yne,Jne,Zne,Kne,$ne,Xne,Wne])}),(function(t){return Tht(),iQ((t5(),tre),t)}));Xft(249,22,{3:1,35:1,22:1,249:1},oS);var sre,lre,cre,ure,fre,hre,dre,pre=Y0(SIt,"PortAlignment",249,cFt,(function(){return Jet(),R5(qx(pre,1),Xkt,249,0,[rre,are,ere,nre,ire])}),(function(t){return Jet(),iQ((wQ(),sre),t)}));Xft(98,22,{3:1,35:1,22:1,98:1},sS);var gre,vre,mre,yre,bre,xre,wre,_re=Y0(SIt,"PortConstraints",98,cFt,(function(){return jot(),R5(qx(_re,1),Xkt,98,0,[dre,hre,fre,lre,ure,cre])}),(function(t){return jot(),iQ((t0(),gre),t)}));Xft(273,22,{3:1,35:1,22:1,273:1},lS);var kre,Tre,Mre,Are,Sre,Ere,Cre,Pre,Lre,Ore,Ire,Dre,Rre,zre,Nre,jre,Fre,Bre,Ure,Hre,Vre,qre,Gre=Y0(SIt,"PortLabelPlacement",273,cFt,(function(){return Put(),R5(qx(Gre,1),Xkt,273,0,[xre,yre,bre,mre,vre,wre])}),(function(t){return Put(),iQ((A0(),kre),t)}));Xft(61,22,{3:1,35:1,22:1,61:1},cS);var Wre,Yre,$re,Xre,Kre,Zre,Jre=Y0(SIt,"PortSide",61,cFt,(function(){return Pwt(),R5(qx(Jre,1),pEt,61,0,[Vre,Mre,Tre,Hre,qre])}),(function(t){return Pwt(),iQ((_Q(),Wre),t)}));Xft(981,1,dAt,Df),H_t.Qe=function(t){_gt(t)};kB(SIt,"RandomLayouterOptions",981);Xft(982,1,{},Zs),H_t.$e=function(){return new el},H_t._e=function(t){};var Qre,tie,eie,nie;kB(SIt,"RandomLayouterOptions/RandomFactory",982);Xft(374,22,{3:1,35:1,22:1,374:1},uS);var rie,iie,aie,oie,sie,lie,cie,uie,fie,hie,die=Y0(SIt,"SizeConstraint",374,cFt,(function(){return Ltt(),R5(qx(die,1),Xkt,374,0,[eie,nie,tie,Qre])}),(function(t){return Ltt(),iQ((rJ(),rie),t)}));Xft(259,22,{3:1,35:1,22:1,259:1},fS);var pie,gie=Y0(SIt,"SizeOptions",259,cFt,(function(){return Zvt(),R5(qx(gie,1),Xkt,259,0,[oie,lie,aie,cie,uie,hie,fie,sie,iie])}),(function(t){return Zvt(),iQ((e4(),pie),t)}));Xft(370,1,{1949:1},ob),H_t.b=!1,H_t.c=0,H_t.d=-1,H_t.e=null,H_t.f=null,H_t.g=-1,H_t.j=!1,H_t.k=!1,H_t.n=!1,H_t.o=0,H_t.q=0,H_t.r=0;kB(NLt,"BasicProgressMonitor",370);Xft(972,209,ZAt,Gs),H_t.Ze=function(t,e){var n,r,i,a,o,s,l,c,u;if(ast(e,"Box layout",2),i=nx(fI(kht(t,(jst(),cte)))),a=ZR(kht(t,ote),116),n=tx(uI(kht(t,ete))),r=tx(uI(kht(t,nte))),0===ZR(kht(t,Q9t),311).g)s=new cR((!t.a&&(t.a=new bF(rae,t,10,11)),t.a)),YH(),JC(s,new Xg(r)),o=s,l=Oct(t),(null==(c=fI(kht(t,J9t)))||(yU(c),c<=0))&&(c=1.3),Nwt(t,(u=Bwt(o,i,a,l.a,l.b,n,(yU(c),c))).a,u.b,!1,!0);else Zbt(t,i,a,n);jlt(e)};kB(NLt,"BoxLayoutProvider",972);Xft(973,1,HMt,Xg),H_t.ue=function(t,e){return function(t,e,n){var r,i,a;if(!(i=ZR(kht(e,(jst(),lte)),19))&&(i=g7(0)),!(a=ZR(kht(n,lte),19))&&(a=g7(0)),i.a>a.a)return-1;if(i.a0&&g.b>0&&Nwt(v,g.a,g.b,!0,!0)),d=r.Math.max(d,v.i+v.g),p=r.Math.max(p,v.j+v.f),f=new WP((!v.n&&(v.n=new bF(nae,v,1,7)),v.n));f.e!=f.i.gc();)l=ZR(fnt(f),137),(T=ZR(kht(l,One),8))&&_C(l,T.a,T.b),d=r.Math.max(d,v.i+l.i+l.g),p=r.Math.max(p,v.j+l.j+l.f);for(w=new WP((!v.c&&(v.c=new bF(iae,v,9,9)),v.c));w.e!=w.i.gc();)for(x=ZR(fnt(w),118),(T=ZR(kht(x,One),8))&&_C(x,T.a,T.b),_=v.i+x.i,k=v.j+x.j,d=r.Math.max(d,_+x.g),p=r.Math.max(p,k+x.f),c=new WP((!x.n&&(x.n=new bF(nae,x,1,7)),x.n));c.e!=c.i.gc();)l=ZR(fnt(c),137),(T=ZR(kht(l,One),8))&&_C(l,T.a,T.b),d=r.Math.max(d,_+l.i+l.g),p=r.Math.max(p,k+l.j+l.f);for(a=new Oj(dL(ddt(v).a.Kc(),new u));Kft(a);)h=jwt(n=ZR(wX(a),79)),d=r.Math.max(d,h.a),p=r.Math.max(p,h.b);for(i=new Oj(dL(hdt(v).a.Kc(),new u));Kft(i);)Eq(Fst(n=ZR(wX(i),79)))!=t&&(h=jwt(n),d=r.Math.max(d,h.a),p=r.Math.max(p,h.b))}if(o==(v9(),hne))for(m=new WP((!t.a&&(t.a=new bF(rae,t,10,11)),t.a));m.e!=m.i.gc();)for(i=new Oj(dL(ddt(v=ZR(fnt(m),33)).a.Kc(),new u));Kft(i);)0==(s=zmt(n=ZR(wX(i),79))).b?Ont(n,Wte,null):Ont(n,Wte,s);tx(uI(kht(t,(I6(),Ene))))||Nwt(t,d+(b=ZR(kht(t,Pne),116)).b+b.c,p+b.d+b.a,!0,!0),jlt(e)};kB(NLt,"FixedLayoutProvider",1138);Xft(373,134,{3:1,414:1,373:1,94:1,134:1},Js,BJ),H_t.Jf=function(t){var e,n,r,i,a,o,s;if(t)try{for(o=Ovt(t,";,;"),i=0,a=(r=o).length;i>16&dTt|t^(n&dTt)<<16},H_t.Kc=function(){return new Qg(this)},H_t.Ib=function(){return null==this.a&&null==this.b?"pair(null,null)":null==this.a?"pair(null,"+E9(this.b)+")":null==this.b?"pair("+E9(this.a)+",null)":"pair("+E9(this.a)+","+E9(this.b)+")"};kB(NLt,"Pair",46);Xft(983,1,dkt,Qg),H_t.Nb=function(t){EF(this,t)},H_t.Ob=function(){return!this.c&&(!this.b&&null!=this.a.a||null!=this.a.b)},H_t.Pb=function(){if(!this.c&&!this.b&&null!=this.a.a)return this.b=!0,this.a.a;if(!this.c&&null!=this.a.b)return this.c=!0,this.a.b;throw um(new jm)},H_t.Qb=function(){throw this.c&&null!=this.a.b?this.a.b=null:this.b&&null!=this.a.a&&(this.a.a=null),um(new Im)},H_t.b=!1,H_t.c=!1;kB(NLt,"Pair/1",983);Xft(448,1,{448:1},_H),H_t.Fb=function(t){return VU(this.a,ZR(t,448).a)&&VU(this.c,ZR(t,448).c)&&VU(this.d,ZR(t,448).d)&&VU(this.b,ZR(t,448).b)},H_t.Hb=function(){return q6(R5(qx(Yjt,1),akt,1,5,[this.a,this.c,this.d,this.b]))},H_t.Ib=function(){return"("+this.a+rkt+this.c+rkt+this.d+rkt+this.b+")"};kB(NLt,"Quadruple",448);Xft(1126,209,ZAt,el),H_t.Ze=function(t,e){var n;ast(e,"Random Layout",1),0!=(!t.a&&(t.a=new bF(rae,t,10,11)),t.a).i?(function(t,e,n,i,a){var o,s,l,c,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A;for(x=0,v=0,g=0,p=1,b=new WP((!t.a&&(t.a=new bF(rae,t,10,11)),t.a));b.e!=b.i.gc();)p+=BY(new Oj(dL(ddt(m=ZR(fnt(b),33)).a.Kc(),new u))),T=m.g,v=r.Math.max(v,T),d=m.f,g=r.Math.max(g,d),x+=T*d;for(s=x+2*i*i*p*(!t.a&&(t.a=new bF(rae,t,10,11)),t.a).i,o=r.Math.sqrt(s),c=r.Math.max(o*n,v),l=r.Math.max(o/n,g),y=new WP((!t.a&&(t.a=new bF(rae,t,10,11)),t.a));y.e!=y.i.gc();)m=ZR(fnt(y),33),M=a.b+($ht(e,26)*wMt+$ht(e,27)*_Mt)*(c-m.g),A=a.b+($ht(e,26)*wMt+$ht(e,27)*_Mt)*(l-m.f),I0(m,M),D0(m,A);for(k=c+(a.b+a.c),_=l+(a.d+a.a),w=new WP((!t.a&&(t.a=new bF(rae,t,10,11)),t.a));w.e!=w.i.gc();)for(h=new Oj(dL(ddt(ZR(fnt(w),33)).a.Kc(),new u));Kft(h);)jft(f=ZR(wX(h),79))||m_t(f,e,k,_);Nwt(t,k+=a.b+a.c,_+=a.d+a.a,!1,!0)}(t,(n=ZR(kht(t,(Ptt(),Kre)),19))&&0!=n.a?new _$(n.a):new a9,nx(fI(kht(t,Yre))),nx(fI(kht(t,Zre))),ZR(kht(t,$re),116)),jlt(e)):jlt(e)};var Cie,Pie;kB(NLt,"RandomLayoutProvider",1126);Xft(553,1,{}),H_t.qf=function(){return new KA(this.f.i,this.f.j)},H_t.We=function(t){return PV(t,(L_t(),_ee))?kht(this.f,Pie):kht(this.f,t)},H_t.rf=function(){return new KA(this.f.g,this.f.f)},H_t.sf=function(){return this.g},H_t.Xe=function(t){return GK(this.f,t)},H_t.tf=function(t){I0(this.f,t.a),D0(this.f,t.b)},H_t.uf=function(t){O0(this.f,t.a),L0(this.f,t.b)},H_t.vf=function(t){this.g=t},H_t.g=0;kB(aDt,"ElkGraphAdapters/AbstractElkGraphElementAdapter",553);Xft(554,1,{839:1},tv),H_t.wf=function(){var t,e;if(!this.b)for(this.b=tY(JU(this.a).i),e=new WP(JU(this.a));e.e!=e.i.gc();)t=ZR(fnt(e),137),nz(this.b,new $b(t));return this.b},H_t.b=null;kB(aDt,"ElkGraphAdapters/ElkEdgeAdapter",554);Xft(301,553,{},Yb),H_t.xf=function(){return fit(this)},H_t.a=null;kB(aDt,"ElkGraphAdapters/ElkGraphAdapter",301);Xft(630,553,{181:1},$b);kB(aDt,"ElkGraphAdapters/ElkLabelAdapter",630);Xft(629,553,{680:1},nO),H_t.wf=function(){return function(t){var e,n;if(!t.b)for(t.b=tY(ZR(t.f,33).Ag().i),n=new WP(ZR(t.f,33).Ag());n.e!=n.i.gc();)e=ZR(fnt(n),137),nz(t.b,new $b(e));return t.b}(this)},H_t.Af=function(){var t;return!(t=ZR(kht(this.f,(L_t(),$te)),142))&&(t=new My),t},H_t.Cf=function(){return function(t){var e,n;if(!t.e)for(t.e=tY(QU(ZR(t.f,33)).i),n=new WP(QU(ZR(t.f,33)));n.e!=n.i.gc();)e=ZR(fnt(n),118),nz(t.e,new Lv(e));return t.e}(this)},H_t.Ef=function(t){var e;e=new xR(t),Ont(this.f,(L_t(),$te),e)},H_t.Ff=function(t){Ont(this.f,(L_t(),cee),new bR(t))},H_t.yf=function(){return this.d},H_t.zf=function(){var t,e;if(!this.a)for(this.a=new rm,e=new Oj(dL(hdt(ZR(this.f,33)).a.Kc(),new u));Kft(e);)t=ZR(wX(e),79),nz(this.a,new tv(t));return this.a},H_t.Bf=function(){var t,e;if(!this.c)for(this.c=new rm,e=new Oj(dL(ddt(ZR(this.f,33)).a.Kc(),new u));Kft(e);)t=ZR(wX(e),79),nz(this.c,new tv(t));return this.c},H_t.Df=function(){return 0!=sV(ZR(this.f,33)).i||tx(uI(ZR(this.f,33).We((L_t(),Hte))))},H_t.Gf=function(){MJ(this,(gT(),Cie))},H_t.a=null,H_t.b=null,H_t.c=null,H_t.d=null,H_t.e=null;kB(aDt,"ElkGraphAdapters/ElkNodeAdapter",629);Xft(1266,553,{838:1},Lv),H_t.wf=function(){return function(t){var e,n;if(!t.b)for(t.b=tY(ZR(t.f,118).Ag().i),n=new WP(ZR(t.f,118).Ag());n.e!=n.i.gc();)e=ZR(fnt(n),137),nz(t.b,new $b(e));return t.b}(this)},H_t.zf=function(){var t,e;if(!this.a)for(this.a=uO(ZR(this.f,118).xg().i),e=new WP(ZR(this.f,118).xg());e.e!=e.i.gc();)t=ZR(fnt(e),79),nz(this.a,new tv(t));return this.a},H_t.Bf=function(){var t,e;if(!this.c)for(this.c=uO(ZR(this.f,118).yg().i),e=new WP(ZR(this.f,118).yg());e.e!=e.i.gc();)t=ZR(fnt(e),79),nz(this.c,new tv(t));return this.c},H_t.Hf=function(){return ZR(ZR(this.f,118).We((L_t(),Pee)),61)},H_t.If=function(){var t,e,n,r,i,a,o;for(r=Tq(ZR(this.f,118)),n=new WP(ZR(this.f,118).yg());n.e!=n.i.gc();)for(o=new WP((!(t=ZR(fnt(n),79)).c&&(t.c=new LD(Xie,t,5,8)),t.c));o.e!=o.i.gc();){if(YQ(ist(a=ZR(fnt(o),82)),r))return!0;if(ist(a)==r&&tx(uI(kht(t,(L_t(),Vte)))))return!0}for(e=new WP(ZR(this.f,118).xg());e.e!=e.i.gc();)for(i=new WP((!(t=ZR(fnt(e),79)).b&&(t.b=new LD(Xie,t,4,7)),t.b));i.e!=i.i.gc();)if(YQ(ist(ZR(fnt(i),82)),r))return!0;return!1},H_t.a=null,H_t.b=null,H_t.c=null;kB(aDt,"ElkGraphAdapters/ElkPortAdapter",1266);Xft(1267,1,HMt,nl),H_t.ue=function(t,e){return function(t,e){var n,r,i,a;if(0!=(a=ZR(kht(t,(L_t(),Pee)),61).g-ZR(kht(e,Pee),61).g))return a;if(n=ZR(kht(t,Mee),19),r=ZR(kht(e,Mee),19),n&&r&&0!=(i=n.a-r.a))return i;switch(ZR(kht(t,Pee),61).g){case 1:return O7(t.i,e.i);case 2:return O7(t.j,e.j);case 3:return O7(e.i,t.i);case 4:return O7(e.j,t.j);default:throw um(new Zb(wEt))}}(ZR(t,118),ZR(e,118))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(aDt,"ElkGraphAdapters/PortComparator",1267);var Lie,Oie,Iie,Die,Rie,zie,Nie,jie,Fie,Bie,Uie,Hie,Vie,qie=oN(oDt,"EObject"),Gie=oN(sDt,lDt),Wie=oN(sDt,cDt),Yie=oN(sDt,uDt),$ie=oN(sDt,"ElkShape"),Xie=oN(sDt,fDt),Kie=oN(sDt,hDt),Zie=oN(sDt,dDt),Jie=oN(oDt,pDt),Qie=oN(oDt,"EFactory"),tae=oN(oDt,gDt),eae=oN(oDt,"EPackage"),nae=oN(sDt,vDt),rae=oN(sDt,mDt),iae=oN(sDt,yDt);Xft(90,1,bDt),H_t.Jg=function(){return this.Kg(),null},H_t.Kg=function(){return null},H_t.Lg=function(){return this.Kg(),!1},H_t.Mg=function(){return!1},H_t.Ng=function(t){j3(this,t)};kB(xDt,"BasicNotifierImpl",90);Xft(97,90,EDt),H_t.nh=function(){return vC(this)},H_t.Og=function(t,e){return t},H_t.Pg=function(){throw um(new Rm)},H_t.Qg=function(t){var e;return e=ert(ZR(CQ(this.Tg(),this.Vg()),18)),this.eh().ih(this,e.n,e.f,t)},H_t.Rg=function(t,e){throw um(new Rm)},H_t.Sg=function(t,e,n){return umt(this,t,e,n)},H_t.Tg=function(){var t;return this.Pg()&&(t=this.Pg().ck())?t:this.zh()},H_t.Ug=function(){return Hft(this)},H_t.Vg=function(){throw um(new Rm)},H_t.Wg=function(){var t,e;return!(e=this.ph().dk())&&this.Pg().ik((wT(),e=null==(t=$V(fyt(this.Tg())))?Zoe:new tO(this,t))),e},H_t.Xg=function(t,e){return t},H_t.Yg=function(t){return t.Gj()?t.aj():ett(this.Tg(),t)},H_t.Zg=function(){var t;return(t=this.Pg())?t.fk():null},H_t.$g=function(){return this.Pg()?this.Pg().ck():null},H_t._g=function(t,e,n){return Int(this,t,e,n)},H_t.ah=function(t){return TZ(this,t)},H_t.bh=function(t,e){return TX(this,t,e)},H_t.dh=function(){var t;return!!(t=this.Pg())&&t.gk()},H_t.eh=function(){throw um(new Rm)},H_t.fh=function(){return iet(this)},H_t.gh=function(t,e,n,r){return xnt(this,t,e,r)},H_t.hh=function(t,e,n){return ZR(CQ(this.Tg(),e),66).Nj().Qj(this,this.yh(),e-this.Ah(),t,n)},H_t.ih=function(t,e,n,r){return WV(this,t,e,r)},H_t.jh=function(t,e,n){return ZR(CQ(this.Tg(),e),66).Nj().Rj(this,this.yh(),e-this.Ah(),t,n)},H_t.kh=function(){return!!this.Pg()&&!!this.Pg().ek()},H_t.lh=function(t){return lnt(this,t)},H_t.mh=function(t){return Cq(this,t)},H_t.oh=function(t){return ixt(this,t)},H_t.ph=function(){throw um(new Rm)},H_t.qh=function(){return this.Pg()?this.Pg().ek():null},H_t.rh=function(){return iet(this)},H_t.sh=function(t,e){Kct(this,t,e)},H_t.th=function(t){this.ph().hk(t)},H_t.uh=function(t){this.ph().kk(t)},H_t.vh=function(t){this.ph().jk(t)},H_t.wh=function(t,e){var n,r,i,a;return(a=this.Zg())&&t&&(e=Mnt(a.Vk(),this,e),a.Zk(this)),(r=this.eh())&&(0!=(Pvt(this,this.eh(),this.Vg()).Bb&iMt)?(i=r.fh())&&(t?!a&&i.Zk(this):i.Yk(this)):(e=(n=this.Vg())>=0?this.Qg(e):this.eh().ih(this,-1-n,null,e),e=this.Sg(null,-1,e))),this.uh(t),e},H_t.xh=function(t){var e,n,r,i,a,o,s;if((a=ett(n=this.Tg(),t))>=(e=this.Ah()))return ZR(t,66).Nj().Uj(this,this.yh(),a-e);if(a<=-1){if(!(o=axt((gct(),vse),n,t)))throw um(new Kb(wDt+t.ne()+TDt));if(TT(),ZR(o,66).Oj()||(o=UG(SJ(vse,o))),i=ZR((r=this.Yg(o))>=0?this._g(r,!0,!0):nft(this,o,!0),153),(s=o.Zj())>1||-1==s)return ZR(ZR(i,215).hl(t,!1),76)}else if(t.$j())return ZR((r=this.Yg(t))>=0?this._g(r,!1,!0):nft(this,t,!1),76);return new VS(this,t)},H_t.yh=function(){return zJ(this)},H_t.zh=function(){return(ZB(),moe).S},H_t.Ah=function(){return yB(this.zh())},H_t.Bh=function(t){lct(this,t)},H_t.Ib=function(){return Fht(this)};var aae;kB(CDt,"BasicEObjectImpl",97);Xft(114,97,{105:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1}),H_t.Ch=function(t){return NJ(this)[t]},H_t.Dh=function(t,e){zB(NJ(this),t,e)},H_t.Eh=function(t){zB(NJ(this),t,null)},H_t.Jg=function(){return ZR(H3(this,4),126)},H_t.Kg=function(){throw um(new Rm)},H_t.Lg=function(){return 0!=(4&this.Db)},H_t.Pg=function(){throw um(new Rm)},H_t.Fh=function(t){get(this,2,t)},H_t.Rg=function(t,e){this.Db=e<<16|255&this.Db,this.Fh(t)},H_t.Tg=function(){return CV(this)},H_t.Vg=function(){return this.Db>>16},H_t.Wg=function(){var t;return wT(),null==(t=$V(fyt(ZR(H3(this,16),26)||this.zh())))?Zoe:new tO(this,t)},H_t.Mg=function(){return 0==(1&this.Db)},H_t.Zg=function(){return ZR(H3(this,128),1935)},H_t.$g=function(){return ZR(H3(this,16),26)},H_t.dh=function(){return 0!=(32&this.Db)},H_t.eh=function(){return ZR(H3(this,2),49)},H_t.kh=function(){return 0!=(64&this.Db)},H_t.ph=function(){throw um(new Rm)},H_t.qh=function(){return ZR(H3(this,64),281)},H_t.th=function(t){get(this,16,t)},H_t.uh=function(t){get(this,128,t)},H_t.vh=function(t){get(this,64,t)},H_t.yh=function(){return vet(this)},H_t.Db=0;kB(CDt,"MinimalEObjectImpl",114);Xft(115,114,{105:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),H_t.Fh=function(t){this.Cb=t},H_t.eh=function(){return this.Cb};kB(CDt,"MinimalEObjectImpl/Container",115);Xft(1985,115,{105:1,413:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),H_t._g=function(t,e,n){return Ait(this,t,e,n)},H_t.jh=function(t,e,n){return hlt(this,t,e,n)},H_t.lh=function(t){return QG(this,t)},H_t.sh=function(t,e){J4(this,t,e)},H_t.zh=function(){return l_t(),Vie},H_t.Bh=function(t){K5(this,t)},H_t.Ve=function(){return rnt(this)},H_t.We=function(t){return kht(this,t)},H_t.Xe=function(t){return GK(this,t)},H_t.Ye=function(t,e){return Ont(this,t,e)};kB(PDt,"EMapPropertyHolderImpl",1985);Xft(567,115,{105:1,469:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},al),H_t._g=function(t,e,n){switch(t){case 0:return this.a;case 1:return this.b}return Int(this,t,e,n)},H_t.lh=function(t){switch(t){case 0:return 0!=this.a;case 1:return 0!=this.b}return lnt(this,t)},H_t.sh=function(t,e){switch(t){case 0:return void E0(this,ex(fI(e)));case 1:return void C0(this,ex(fI(e)))}Kct(this,t,e)},H_t.zh=function(){return l_t(),Iie},H_t.Bh=function(t){switch(t){case 0:return void E0(this,0);case 1:return void C0(this,0)}lct(this,t)},H_t.Ib=function(){var t;return 0!=(64&this.Db)?Fht(this):((t=new ML(Fht(this))).a+=" (x: ",Jw(t,this.a),t.a+=", y: ",Jw(t,this.b),t.a+=")",t.a)},H_t.a=0,H_t.b=0;kB(PDt,"ElkBendPointImpl",567);Xft(723,1985,{105:1,413:1,160:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),H_t._g=function(t,e,n){return t7(this,t,e,n)},H_t.hh=function(t,e,n){return ust(this,t,e,n)},H_t.jh=function(t,e,n){return g5(this,t,e,n)},H_t.lh=function(t){return G3(this,t)},H_t.sh=function(t,e){Kat(this,t,e)},H_t.zh=function(){return l_t(),Nie},H_t.Bh=function(t){L8(this,t)},H_t.zg=function(){return this.k},H_t.Ag=function(){return JU(this)},H_t.Ib=function(){return X7(this)},H_t.k=null;kB(PDt,"ElkGraphElementImpl",723);Xft(724,723,{105:1,413:1,160:1,470:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),H_t._g=function(t,e,n){return A9(this,t,e,n)},H_t.lh=function(t){return G9(this,t)},H_t.sh=function(t,e){Zat(this,t,e)},H_t.zh=function(){return l_t(),Hie},H_t.Bh=function(t){itt(this,t)},H_t.Bg=function(){return this.f},H_t.Cg=function(){return this.g},H_t.Dg=function(){return this.i},H_t.Eg=function(){return this.j},H_t.Fg=function(t,e){wC(this,t,e)},H_t.Gg=function(t,e){_C(this,t,e)},H_t.Hg=function(t){I0(this,t)},H_t.Ig=function(t){D0(this,t)},H_t.Ib=function(){return wlt(this)},H_t.f=0,H_t.g=0,H_t.i=0,H_t.j=0;kB(PDt,"ElkShapeImpl",724);Xft(725,724,{105:1,413:1,82:1,160:1,470:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1}),H_t._g=function(t,e,n){return prt(this,t,e,n)},H_t.hh=function(t,e,n){return Dat(this,t,e,n)},H_t.jh=function(t,e,n){return Rat(this,t,e,n)},H_t.lh=function(t){return U4(this,t)},H_t.sh=function(t,e){cht(this,t,e)},H_t.zh=function(){return l_t(),Die},H_t.Bh=function(t){wnt(this,t)},H_t.xg=function(){return!this.d&&(this.d=new LD(Kie,this,8,5)),this.d},H_t.yg=function(){return!this.e&&(this.e=new LD(Kie,this,7,4)),this.e};kB(PDt,"ElkConnectableShapeImpl",725);Xft(352,723,{105:1,413:1,79:1,160:1,352:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},il),H_t.Qg=function(t){return lat(this,t)},H_t._g=function(t,e,n){switch(t){case 3:return kq(this);case 4:return!this.b&&(this.b=new LD(Xie,this,4,7)),this.b;case 5:return!this.c&&(this.c=new LD(Xie,this,5,8)),this.c;case 6:return!this.a&&(this.a=new bF(Zie,this,6,6)),this.a;case 7:return TL(),!this.b&&(this.b=new LD(Xie,this,4,7)),!(this.b.i<=1&&(!this.c&&(this.c=new LD(Xie,this,5,8)),this.c.i<=1));case 8:return TL(),!!jft(this);case 9:return TL(),!!Xut(this);case 10:return TL(),!this.b&&(this.b=new LD(Xie,this,4,7)),0!=this.b.i&&(!this.c&&(this.c=new LD(Xie,this,5,8)),0!=this.c.i)}return t7(this,t,e,n)},H_t.hh=function(t,e,n){var r;switch(e){case 3:return this.Cb&&(n=(r=this.Db>>16)>=0?lat(this,n):this.Cb.ih(this,-1-r,null,n)),LI(this,ZR(t,33),n);case 4:return!this.b&&(this.b=new LD(Xie,this,4,7)),ptt(this.b,t,n);case 5:return!this.c&&(this.c=new LD(Xie,this,5,8)),ptt(this.c,t,n);case 6:return!this.a&&(this.a=new bF(Zie,this,6,6)),ptt(this.a,t,n)}return ust(this,t,e,n)},H_t.jh=function(t,e,n){switch(e){case 3:return LI(this,null,n);case 4:return!this.b&&(this.b=new LD(Xie,this,4,7)),Mnt(this.b,t,n);case 5:return!this.c&&(this.c=new LD(Xie,this,5,8)),Mnt(this.c,t,n);case 6:return!this.a&&(this.a=new bF(Zie,this,6,6)),Mnt(this.a,t,n)}return g5(this,t,e,n)},H_t.lh=function(t){switch(t){case 3:return!!kq(this);case 4:return!!this.b&&0!=this.b.i;case 5:return!!this.c&&0!=this.c.i;case 6:return!!this.a&&0!=this.a.i;case 7:return!this.b&&(this.b=new LD(Xie,this,4,7)),!(this.b.i<=1&&(!this.c&&(this.c=new LD(Xie,this,5,8)),this.c.i<=1));case 8:return jft(this);case 9:return Xut(this);case 10:return!this.b&&(this.b=new LD(Xie,this,4,7)),0!=this.b.i&&(!this.c&&(this.c=new LD(Xie,this,5,8)),0!=this.c.i)}return G3(this,t)},H_t.sh=function(t,e){switch(t){case 3:return void Edt(this,ZR(e,33));case 4:return!this.b&&(this.b=new LD(Xie,this,4,7)),qbt(this.b),!this.b&&(this.b=new LD(Xie,this,4,7)),void _B(this.b,ZR(e,14));case 5:return!this.c&&(this.c=new LD(Xie,this,5,8)),qbt(this.c),!this.c&&(this.c=new LD(Xie,this,5,8)),void _B(this.c,ZR(e,14));case 6:return!this.a&&(this.a=new bF(Zie,this,6,6)),qbt(this.a),!this.a&&(this.a=new bF(Zie,this,6,6)),void _B(this.a,ZR(e,14))}Kat(this,t,e)},H_t.zh=function(){return l_t(),Rie},H_t.Bh=function(t){switch(t){case 3:return void Edt(this,null);case 4:return!this.b&&(this.b=new LD(Xie,this,4,7)),void qbt(this.b);case 5:return!this.c&&(this.c=new LD(Xie,this,5,8)),void qbt(this.c);case 6:return!this.a&&(this.a=new bF(Zie,this,6,6)),void qbt(this.a)}L8(this,t)},H_t.Ib=function(){return gbt(this)};kB(PDt,"ElkEdgeImpl",352);Xft(439,1985,{105:1,413:1,202:1,439:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},ol),H_t.Qg=function(t){return Jit(this,t)},H_t._g=function(t,e,n){switch(t){case 1:return this.j;case 2:return this.k;case 3:return this.b;case 4:return this.c;case 5:return!this.a&&(this.a=new YP(Wie,this,5)),this.a;case 6:return Mq(this);case 7:return e?trt(this):this.i;case 8:return e?Qnt(this):this.f;case 9:return!this.g&&(this.g=new LD(Zie,this,9,10)),this.g;case 10:return!this.e&&(this.e=new LD(Zie,this,10,9)),this.e;case 11:return this.d}return Ait(this,t,e,n)},H_t.hh=function(t,e,n){var r;switch(e){case 6:return this.Cb&&(n=(r=this.Db>>16)>=0?Jit(this,n):this.Cb.ih(this,-1-r,null,n)),OI(this,ZR(t,79),n);case 9:return!this.g&&(this.g=new LD(Zie,this,9,10)),ptt(this.g,t,n);case 10:return!this.e&&(this.e=new LD(Zie,this,10,9)),ptt(this.e,t,n)}return ZR(CQ(ZR(H3(this,16),26)||(l_t(),zie),e),66).Nj().Qj(this,vet(this),e-yB((l_t(),zie)),t,n)},H_t.jh=function(t,e,n){switch(e){case 5:return!this.a&&(this.a=new YP(Wie,this,5)),Mnt(this.a,t,n);case 6:return OI(this,null,n);case 9:return!this.g&&(this.g=new LD(Zie,this,9,10)),Mnt(this.g,t,n);case 10:return!this.e&&(this.e=new LD(Zie,this,10,9)),Mnt(this.e,t,n)}return hlt(this,t,e,n)},H_t.lh=function(t){switch(t){case 1:return 0!=this.j;case 2:return 0!=this.k;case 3:return 0!=this.b;case 4:return 0!=this.c;case 5:return!!this.a&&0!=this.a.i;case 6:return!!Mq(this);case 7:return!!this.i;case 8:return!!this.f;case 9:return!!this.g&&0!=this.g.i;case 10:return!!this.e&&0!=this.e.i;case 11:return null!=this.d}return QG(this,t)},H_t.sh=function(t,e){switch(t){case 1:return void R0(this,ex(fI(e)));case 2:return void N0(this,ex(fI(e)));case 3:return void P0(this,ex(fI(e)));case 4:return void z0(this,ex(fI(e)));case 5:return!this.a&&(this.a=new YP(Wie,this,5)),qbt(this.a),!this.a&&(this.a=new YP(Wie,this,5)),void _B(this.a,ZR(e,14));case 6:return void Adt(this,ZR(e,79));case 7:return void D1(this,ZR(e,82));case 8:return void I1(this,ZR(e,82));case 9:return!this.g&&(this.g=new LD(Zie,this,9,10)),qbt(this.g),!this.g&&(this.g=new LD(Zie,this,9,10)),void _B(this.g,ZR(e,14));case 10:return!this.e&&(this.e=new LD(Zie,this,10,9)),qbt(this.e),!this.e&&(this.e=new LD(Zie,this,10,9)),void _B(this.e,ZR(e,14));case 11:return void Z1(this,hI(e))}J4(this,t,e)},H_t.zh=function(){return l_t(),zie},H_t.Bh=function(t){switch(t){case 1:return void R0(this,0);case 2:return void N0(this,0);case 3:return void P0(this,0);case 4:return void z0(this,0);case 5:return!this.a&&(this.a=new YP(Wie,this,5)),void qbt(this.a);case 6:return void Adt(this,null);case 7:return void D1(this,null);case 8:return void I1(this,null);case 9:return!this.g&&(this.g=new LD(Zie,this,9,10)),void qbt(this.g);case 10:return!this.e&&(this.e=new LD(Zie,this,10,9)),void qbt(this.e);case 11:return void Z1(this,null)}K5(this,t)},H_t.Ib=function(){return Aft(this)},H_t.b=0,H_t.c=0,H_t.d=null,H_t.j=0,H_t.k=0;kB(PDt,"ElkEdgeSectionImpl",439);Xft(150,115,{105:1,92:1,90:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1}),H_t._g=function(t,e,n){return 0==t?(!this.Ab&&(this.Ab=new bF(toe,this,0,3)),this.Ab):NZ(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t),e,n)},H_t.hh=function(t,e,n){return 0==e?(!this.Ab&&(this.Ab=new bF(toe,this,0,3)),ptt(this.Ab,t,n)):ZR(CQ(ZR(H3(this,16),26)||this.zh(),e),66).Nj().Qj(this,vet(this),e-yB(this.zh()),t,n)},H_t.jh=function(t,e,n){return 0==e?(!this.Ab&&(this.Ab=new bF(toe,this,0,3)),Mnt(this.Ab,t,n)):ZR(CQ(ZR(H3(this,16),26)||this.zh(),e),66).Nj().Rj(this,vet(this),e-yB(this.zh()),t,n)},H_t.lh=function(t){return 0==t?!!this.Ab&&0!=this.Ab.i:RY(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t))},H_t.oh=function(t){return Twt(this,t)},H_t.sh=function(t,e){if(0===t)return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),qbt(this.Ab),!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void _B(this.Ab,ZR(e,14));k9(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t),e)},H_t.uh=function(t){get(this,128,t)},H_t.zh=function(){return N_t(),Coe},H_t.Bh=function(t){if(0===t)return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void qbt(this.Ab);i7(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t))},H_t.Gh=function(){this.Bb|=1},H_t.Hh=function(t){return mmt(this,t)},H_t.Bb=0;var oae,sae,lae;kB(CDt,"EModelElementImpl",150);Xft(704,150,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1},Rf),H_t.Ih=function(t,e){return jxt(this,t,e)},H_t.Jh=function(t){var e,n,r,i;if(this.a!=r0(t)||0!=(256&t.Bb))throw um(new Kb(zDt+t.zb+IDt));for(n=EV(t);0!=e$(n.a).i;){if(hit(e=ZR(hxt(n,0,CP(i=ZR(a0(e$(n.a),0),87).c,88)?ZR(i,26):(N_t(),Loe)),26)))return ZR(r=r0(e).Nh().Jh(e),49).th(t),r;n=EV(e)}return"java.util.Map$Entry"==(null!=t.D?t.D:t.B)?new iN(t):new Az(t)},H_t.Kh=function(t,e){return d_t(this,t,e)},H_t._g=function(t,e,n){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),this.Ab;case 1:return this.a}return NZ(this,t-yB((N_t(),Aoe)),CQ(ZR(H3(this,16),26)||Aoe,t),e,n)},H_t.hh=function(t,e,n){switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),ptt(this.Ab,t,n);case 1:return this.a&&(n=ZR(this.a,49).ih(this,4,eae,n)),T8(this,ZR(t,235),n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),Aoe),e),66).Nj().Qj(this,vet(this),e-yB((N_t(),Aoe)),t,n)},H_t.jh=function(t,e,n){switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),Mnt(this.Ab,t,n);case 1:return T8(this,null,n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),Aoe),e),66).Nj().Rj(this,vet(this),e-yB((N_t(),Aoe)),t,n)},H_t.lh=function(t){switch(t){case 0:return!!this.Ab&&0!=this.Ab.i;case 1:return!!this.a}return RY(this,t-yB((N_t(),Aoe)),CQ(ZR(H3(this,16),26)||Aoe,t))},H_t.sh=function(t,e){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),qbt(this.Ab),!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void _B(this.Ab,ZR(e,14));case 1:return void Yst(this,ZR(e,235))}k9(this,t-yB((N_t(),Aoe)),CQ(ZR(H3(this,16),26)||Aoe,t),e)},H_t.zh=function(){return N_t(),Aoe},H_t.Bh=function(t){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void qbt(this.Ab);case 1:return void Yst(this,null)}i7(this,t-yB((N_t(),Aoe)),CQ(ZR(H3(this,16),26)||Aoe,t))};kB(CDt,"EFactoryImpl",704);Xft(jDt,704,{105:1,2014:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1},sl),H_t.Ih=function(t,e){switch(t.yj()){case 12:return ZR(e,146).tg();case 13:return E9(e);default:throw um(new Kb(ODt+t.ne()+IDt))}},H_t.Jh=function(t){var e;switch(-1==t.G&&(t.G=(e=r0(t))?jnt(e.Mh(),t):-1),t.G){case 4:return new ll;case 6:return new Ry;case 7:return new zy;case 8:return new il;case 9:return new al;case 10:return new ol;case 11:return new ul;default:throw um(new Kb(zDt+t.zb+IDt))}},H_t.Kh=function(t,e){switch(t.yj()){case 13:case 12:return null;default:throw um(new Kb(ODt+t.ne()+IDt))}};kB(PDt,"ElkGraphFactoryImpl",jDt);Xft(438,150,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1}),H_t.Wg=function(){var t;return null==(t=$V(fyt(ZR(H3(this,16),26)||this.zh())))?(wT(),wT(),Zoe):new UO(this,t)},H_t._g=function(t,e,n){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),this.Ab;case 1:return this.ne()}return NZ(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t),e,n)},H_t.lh=function(t){switch(t){case 0:return!!this.Ab&&0!=this.Ab.i;case 1:return null!=this.zb}return RY(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t))},H_t.sh=function(t,e){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),qbt(this.Ab),!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void _B(this.Ab,ZR(e,14));case 1:return void this.Lh(hI(e))}k9(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t),e)},H_t.zh=function(){return N_t(),Poe},H_t.Bh=function(t){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void qbt(this.Ab);case 1:return void this.Lh(null)}i7(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t))},H_t.ne=function(){return this.zb},H_t.Lh=function(t){k2(this,t)},H_t.Ib=function(){return U8(this)},H_t.zb=null;var cae;kB(CDt,"ENamedElementImpl",438);Xft(179,438,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1},AV),H_t.Qg=function(t){return rat(this,t)},H_t._g=function(t,e,n){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.yb;case 3:return this.xb;case 4:return this.sb;case 5:return!this.rb&&(this.rb=new gF(this,ioe,this)),this.rb;case 6:return!this.vb&&(this.vb=new kD(eae,this,6,7)),this.vb;case 7:return e?this.Db>>16==7?ZR(this.Cb,235):null:Aq(this)}return NZ(this,t-yB((N_t(),Doe)),CQ(ZR(H3(this,16),26)||Doe,t),e,n)},H_t.hh=function(t,e,n){var r;switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),ptt(this.Ab,t,n);case 4:return this.sb&&(n=ZR(this.sb,49).ih(this,1,Qie,n)),H8(this,ZR(t,471),n);case 5:return!this.rb&&(this.rb=new gF(this,ioe,this)),ptt(this.rb,t,n);case 6:return!this.vb&&(this.vb=new kD(eae,this,6,7)),ptt(this.vb,t,n);case 7:return this.Cb&&(n=(r=this.Db>>16)>=0?rat(this,n):this.Cb.ih(this,-1-r,null,n)),umt(this,t,7,n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),Doe),e),66).Nj().Qj(this,vet(this),e-yB((N_t(),Doe)),t,n)},H_t.jh=function(t,e,n){switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),Mnt(this.Ab,t,n);case 4:return H8(this,null,n);case 5:return!this.rb&&(this.rb=new gF(this,ioe,this)),Mnt(this.rb,t,n);case 6:return!this.vb&&(this.vb=new kD(eae,this,6,7)),Mnt(this.vb,t,n);case 7:return umt(this,null,7,n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),Doe),e),66).Nj().Rj(this,vet(this),e-yB((N_t(),Doe)),t,n)},H_t.lh=function(t){switch(t){case 0:return!!this.Ab&&0!=this.Ab.i;case 1:return null!=this.zb;case 2:return null!=this.yb;case 3:return null!=this.xb;case 4:return!!this.sb;case 5:return!!this.rb&&0!=this.rb.i;case 6:return!!this.vb&&0!=this.vb.i;case 7:return!!Aq(this)}return RY(this,t-yB((N_t(),Doe)),CQ(ZR(H3(this,16),26)||Doe,t))},H_t.oh=function(t){var e;return e=function(t,e){var n,r,i,a,o,s;if(!t.tb){for(!t.rb&&(t.rb=new gF(t,ioe,t)),s=new wk((a=t.rb).i),i=new WP(a);i.e!=i.i.gc();)r=ZR(fnt(i),138),(n=ZR(null==(o=r.ne())?Jct(s.f,null,r):i9(s.g,o,r),138))&&(null==o?Jct(s.f,null,n):i9(s.g,o,n));t.tb=s}return ZR(oq(t.tb,e),138)}(this,t),e||Twt(this,t)},H_t.sh=function(t,e){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),qbt(this.Ab),!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void _B(this.Ab,ZR(e,14));case 1:return void k2(this,hI(e));case 2:return void M2(this,hI(e));case 3:return void T2(this,hI(e));case 4:return void dlt(this,ZR(e,471));case 5:return!this.rb&&(this.rb=new gF(this,ioe,this)),qbt(this.rb),!this.rb&&(this.rb=new gF(this,ioe,this)),void _B(this.rb,ZR(e,14));case 6:return!this.vb&&(this.vb=new kD(eae,this,6,7)),qbt(this.vb),!this.vb&&(this.vb=new kD(eae,this,6,7)),void _B(this.vb,ZR(e,14))}k9(this,t-yB((N_t(),Doe)),CQ(ZR(H3(this,16),26)||Doe,t),e)},H_t.vh=function(t){var e,n;if(t&&this.rb)for(n=new WP(this.rb);n.e!=n.i.gc();)CP(e=fnt(n),351)&&(ZR(e,351).w=null);get(this,64,t)},H_t.zh=function(){return N_t(),Doe},H_t.Bh=function(t){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void qbt(this.Ab);case 1:return void k2(this,null);case 2:return void M2(this,null);case 3:return void T2(this,null);case 4:return void dlt(this,null);case 5:return!this.rb&&(this.rb=new gF(this,ioe,this)),void qbt(this.rb);case 6:return!this.vb&&(this.vb=new kD(eae,this,6,7)),void qbt(this.vb)}i7(this,t-yB((N_t(),Doe)),CQ(ZR(H3(this,16),26)||Doe,t))},H_t.Gh=function(){Sit(this)},H_t.Mh=function(){return!this.rb&&(this.rb=new gF(this,ioe,this)),this.rb},H_t.Nh=function(){return this.sb},H_t.Oh=function(){return this.ub},H_t.Ph=function(){return this.xb},H_t.Qh=function(){return this.yb},H_t.Rh=function(t){this.ub=t},H_t.Ib=function(){var t;return 0!=(64&this.Db)?U8(this):((t=new ML(U8(this))).a+=" (nsURI: ",mE(t,this.yb),t.a+=", nsPrefix: ",mE(t,this.xb),t.a+=")",t.a)},H_t.xb=null,H_t.yb=null;kB(CDt,"EPackageImpl",179);Xft(555,179,{105:1,2016:1,555:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1},Gft),H_t.q=!1,H_t.r=!1;var uae=!1;kB(PDt,"ElkGraphPackageImpl",555);Xft(354,724,{105:1,413:1,160:1,137:1,470:1,354:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},ll),H_t.Qg=function(t){return Qit(this,t)},H_t._g=function(t,e,n){switch(t){case 7:return Sq(this);case 8:return this.a}return A9(this,t,e,n)},H_t.hh=function(t,e,n){var r;return 7===e?(this.Cb&&(n=(r=this.Db>>16)>=0?Qit(this,n):this.Cb.ih(this,-1-r,null,n)),wj(this,ZR(t,160),n)):ust(this,t,e,n)},H_t.jh=function(t,e,n){return 7==e?wj(this,null,n):g5(this,t,e,n)},H_t.lh=function(t){switch(t){case 7:return!!Sq(this);case 8:return!FD("",this.a)}return G9(this,t)},H_t.sh=function(t,e){switch(t){case 7:return void Xdt(this,ZR(e,160));case 8:return void R1(this,hI(e))}Zat(this,t,e)},H_t.zh=function(){return l_t(),jie},H_t.Bh=function(t){switch(t){case 7:return void Xdt(this,null);case 8:return void R1(this,"")}itt(this,t)},H_t.Ib=function(){return Zlt(this)},H_t.a="";kB(PDt,"ElkLabelImpl",354);Xft(239,725,{105:1,413:1,82:1,160:1,33:1,470:1,239:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},Ry),H_t.Qg=function(t){return cat(this,t)},H_t._g=function(t,e,n){switch(t){case 9:return!this.c&&(this.c=new bF(iae,this,9,9)),this.c;case 10:return!this.a&&(this.a=new bF(rae,this,10,11)),this.a;case 11:return Eq(this);case 12:return!this.b&&(this.b=new bF(Kie,this,12,3)),this.b;case 13:return TL(),!this.a&&(this.a=new bF(rae,this,10,11)),this.a.i>0}return prt(this,t,e,n)},H_t.hh=function(t,e,n){var r;switch(e){case 9:return!this.c&&(this.c=new bF(iae,this,9,9)),ptt(this.c,t,n);case 10:return!this.a&&(this.a=new bF(rae,this,10,11)),ptt(this.a,t,n);case 11:return this.Cb&&(n=(r=this.Db>>16)>=0?cat(this,n):this.Cb.ih(this,-1-r,null,n)),yD(this,ZR(t,33),n);case 12:return!this.b&&(this.b=new bF(Kie,this,12,3)),ptt(this.b,t,n)}return Dat(this,t,e,n)},H_t.jh=function(t,e,n){switch(e){case 9:return!this.c&&(this.c=new bF(iae,this,9,9)),Mnt(this.c,t,n);case 10:return!this.a&&(this.a=new bF(rae,this,10,11)),Mnt(this.a,t,n);case 11:return yD(this,null,n);case 12:return!this.b&&(this.b=new bF(Kie,this,12,3)),Mnt(this.b,t,n)}return Rat(this,t,e,n)},H_t.lh=function(t){switch(t){case 9:return!!this.c&&0!=this.c.i;case 10:return!!this.a&&0!=this.a.i;case 11:return!!Eq(this);case 12:return!!this.b&&0!=this.b.i;case 13:return!this.a&&(this.a=new bF(rae,this,10,11)),this.a.i>0}return U4(this,t)},H_t.sh=function(t,e){switch(t){case 9:return!this.c&&(this.c=new bF(iae,this,9,9)),qbt(this.c),!this.c&&(this.c=new bF(iae,this,9,9)),void _B(this.c,ZR(e,14));case 10:return!this.a&&(this.a=new bF(rae,this,10,11)),qbt(this.a),!this.a&&(this.a=new bF(rae,this,10,11)),void _B(this.a,ZR(e,14));case 11:return void jdt(this,ZR(e,33));case 12:return!this.b&&(this.b=new bF(Kie,this,12,3)),qbt(this.b),!this.b&&(this.b=new bF(Kie,this,12,3)),void _B(this.b,ZR(e,14))}cht(this,t,e)},H_t.zh=function(){return l_t(),Fie},H_t.Bh=function(t){switch(t){case 9:return!this.c&&(this.c=new bF(iae,this,9,9)),void qbt(this.c);case 10:return!this.a&&(this.a=new bF(rae,this,10,11)),void qbt(this.a);case 11:return void jdt(this,null);case 12:return!this.b&&(this.b=new bF(Kie,this,12,3)),void qbt(this.b)}wnt(this,t)},H_t.Ib=function(){return cvt(this)};kB(PDt,"ElkNodeImpl",239);Xft(186,725,{105:1,413:1,82:1,160:1,118:1,470:1,186:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},zy),H_t.Qg=function(t){return tat(this,t)},H_t._g=function(t,e,n){return 9==t?Tq(this):prt(this,t,e,n)},H_t.hh=function(t,e,n){var r;return 9===e?(this.Cb&&(n=(r=this.Db>>16)>=0?tat(this,n):this.Cb.ih(this,-1-r,null,n)),II(this,ZR(t,33),n)):Dat(this,t,e,n)},H_t.jh=function(t,e,n){return 9==e?II(this,null,n):Rat(this,t,e,n)},H_t.lh=function(t){return 9==t?!!Tq(this):U4(this,t)},H_t.sh=function(t,e){9!==t?cht(this,t,e):Sdt(this,ZR(e,33))},H_t.zh=function(){return l_t(),Bie},H_t.Bh=function(t){9!==t?wnt(this,t):Sdt(this,null)},H_t.Ib=function(){return uvt(this)};kB(PDt,"ElkPortImpl",186);var fae=oN(iRt,"BasicEMap/Entry");Xft(1092,115,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1,114:1,115:1},ul),H_t.Fb=function(t){return this===t},H_t.cd=function(){return this.b},H_t.Hb=function(){return FL(this)},H_t.Uh=function(t){z1(this,ZR(t,146))},H_t._g=function(t,e,n){switch(t){case 0:return this.b;case 1:return this.c}return Int(this,t,e,n)},H_t.lh=function(t){switch(t){case 0:return!!this.b;case 1:return null!=this.c}return lnt(this,t)},H_t.sh=function(t,e){switch(t){case 0:return void z1(this,ZR(e,146));case 1:return void F1(this,e)}Kct(this,t,e)},H_t.zh=function(){return l_t(),Uie},H_t.Bh=function(t){switch(t){case 0:return void z1(this,null);case 1:return void F1(this,null)}lct(this,t)},H_t.Sh=function(){var t;return-1==this.a&&(t=this.b,this.a=t?$4(t):0),this.a},H_t.dd=function(){return this.c},H_t.Th=function(t){this.a=t},H_t.ed=function(t){var e;return e=this.c,F1(this,t),e},H_t.Ib=function(){var t;return 0!=(64&this.Db)?Fht(this):(xE(xE(xE(t=new Lx,this.b?this.b.tg():lkt),bEt),RL(this.c)),t.a)},H_t.a=-1,H_t.c=null;var hae=kB(PDt,"ElkPropertyToValueMapEntryImpl",1092);Xft(984,1,{},dl);kB(sRt,"JsonAdapter",984);Xft(210,60,iTt,ux);kB(sRt,"JsonImportException",210);Xft(857,1,{},iat);kB(sRt,"JsonImporter",857);Xft(891,1,{},wS);kB(sRt,"JsonImporter/lambda$0$Type",891);Xft(892,1,{},_S);kB(sRt,"JsonImporter/lambda$1$Type",892);Xft(900,1,{},ev);kB(sRt,"JsonImporter/lambda$10$Type",900);Xft(902,1,{},kS);kB(sRt,"JsonImporter/lambda$11$Type",902);Xft(903,1,{},TS);kB(sRt,"JsonImporter/lambda$12$Type",903);Xft(909,1,{},OH);kB(sRt,"JsonImporter/lambda$13$Type",909);Xft(908,1,{},LH);kB(sRt,"JsonImporter/lambda$14$Type",908);Xft(904,1,{},MS);kB(sRt,"JsonImporter/lambda$15$Type",904);Xft(905,1,{},AS);kB(sRt,"JsonImporter/lambda$16$Type",905);Xft(906,1,{},SS);kB(sRt,"JsonImporter/lambda$17$Type",906);Xft(907,1,{},ES);kB(sRt,"JsonImporter/lambda$18$Type",907);Xft(912,1,{},nv);kB(sRt,"JsonImporter/lambda$19$Type",912);Xft(893,1,{},rv);kB(sRt,"JsonImporter/lambda$2$Type",893);Xft(910,1,{},iv);kB(sRt,"JsonImporter/lambda$20$Type",910);Xft(911,1,{},av);kB(sRt,"JsonImporter/lambda$21$Type",911);Xft(915,1,{},ov);kB(sRt,"JsonImporter/lambda$22$Type",915);Xft(913,1,{},sv);kB(sRt,"JsonImporter/lambda$23$Type",913);Xft(914,1,{},lv);kB(sRt,"JsonImporter/lambda$24$Type",914);Xft(917,1,{},cv);kB(sRt,"JsonImporter/lambda$25$Type",917);Xft(916,1,{},uv);kB(sRt,"JsonImporter/lambda$26$Type",916);Xft(918,1,Ckt,CS),H_t.td=function(t){!function(t,e,n){var r,i;i=null,(r=_q(t,n))&&(i=cct(r)),Uet(e,n,i)}(this.b,this.a,hI(t))};kB(sRt,"JsonImporter/lambda$27$Type",918);Xft(919,1,Ckt,PS),H_t.td=function(t){!function(t,e,n){var r,i;i=null,(r=_q(t,n))&&(i=cct(r)),Uet(e,n,i)}(this.b,this.a,hI(t))};kB(sRt,"JsonImporter/lambda$28$Type",919);Xft(920,1,{},LS);kB(sRt,"JsonImporter/lambda$29$Type",920);Xft(896,1,{},fv);kB(sRt,"JsonImporter/lambda$3$Type",896);Xft(921,1,{},OS);kB(sRt,"JsonImporter/lambda$30$Type",921);Xft(922,1,{},hv);kB(sRt,"JsonImporter/lambda$31$Type",922);Xft(923,1,{},dv);kB(sRt,"JsonImporter/lambda$32$Type",923);Xft(924,1,{},pv);kB(sRt,"JsonImporter/lambda$33$Type",924);Xft(925,1,{},gv);kB(sRt,"JsonImporter/lambda$34$Type",925);Xft(859,1,{},vv);kB(sRt,"JsonImporter/lambda$35$Type",859);Xft(929,1,{},NR);kB(sRt,"JsonImporter/lambda$36$Type",929);Xft(926,1,Ckt,mv),H_t.td=function(t){!function(t,e){var n;tV(n=new Pb,"x",e.a),tV(n,"y",e.b),tU(t,n)}(this.a,ZR(t,469))};kB(sRt,"JsonImporter/lambda$37$Type",926);Xft(927,1,Ckt,BS),H_t.td=function(t){!function(t,e,n){Yat(e,_ct(t,n))}(this.a,this.b,ZR(t,202))};kB(sRt,"JsonImporter/lambda$38$Type",927);Xft(928,1,Ckt,US),H_t.td=function(t){!function(t,e,n){Yat(e,_ct(t,n))}(this.a,this.b,ZR(t,202))};kB(sRt,"JsonImporter/lambda$39$Type",928);Xft(894,1,{},yv);kB(sRt,"JsonImporter/lambda$4$Type",894);Xft(930,1,Ckt,bv),H_t.td=function(t){!function(t,e){var n;tV(n=new Pb,"x",e.a),tV(n,"y",e.b),tU(t,n)}(this.a,ZR(t,8))};kB(sRt,"JsonImporter/lambda$40$Type",930);Xft(895,1,{},xv);kB(sRt,"JsonImporter/lambda$5$Type",895);Xft(899,1,{},wv);kB(sRt,"JsonImporter/lambda$6$Type",899);Xft(897,1,{},_v);kB(sRt,"JsonImporter/lambda$7$Type",897);Xft(898,1,{},kv);kB(sRt,"JsonImporter/lambda$8$Type",898);Xft(901,1,{},Tv);kB(sRt,"JsonImporter/lambda$9$Type",901);Xft(948,1,Ckt,Mv),H_t.td=function(t){tU(this.a,new GB(hI(t)))};kB(sRt,"JsonMetaDataConverter/lambda$0$Type",948);Xft(949,1,Ckt,Av),H_t.td=function(t){!function(t,e){tU(t,new GB(null!=e.f?e.f:""+e.g))}(this.a,ZR(t,237))};kB(sRt,"JsonMetaDataConverter/lambda$1$Type",949);Xft(950,1,Ckt,Sv),H_t.td=function(t){!function(t,e){null!=e.c&&tU(t,new GB(e.c))}(this.a,ZR(t,149))};kB(sRt,"JsonMetaDataConverter/lambda$2$Type",950);Xft(951,1,Ckt,Ev),H_t.td=function(t){!function(t,e){tU(t,new GB(null!=e.f?e.f:""+e.g))}(this.a,ZR(t,175))};var dae,pae,gae,vae,mae,yae,bae,xae;kB(sRt,"JsonMetaDataConverter/lambda$3$Type",951);Xft(237,22,{3:1,35:1,22:1,237:1},FS);var wae,_ae=Y0(WAt,"GraphFeature",237,cFt,(function(){return Wft(),R5(qx(_ae,1),Xkt,237,0,[xae,mae,yae,vae,bae,pae,dae,gae])}),(function(t){return Wft(),iQ((b3(),wae),t)}));Xft(13,1,{35:1,146:1},Pv,FI,BE,zC),H_t.wd=function(t){return function(t,e){return BX(t.b,e.tg())}(this,ZR(t,146))},H_t.Fb=function(t){return PV(this,t)},H_t.wg=function(){return cnt(this)},H_t.tg=function(){return this.b},H_t.Hb=function(){return $nt(this.b)},H_t.Ib=function(){return this.b};kB(WAt,"Property",13);Xft(818,1,HMt,Cv),H_t.ue=function(t,e){return function(t,e,n){var r,i;return r=ZR(e.We(t.a),35),i=ZR(n.We(t.a),35),null!=r&&null!=i?s3(r,i):null!=r?-1:null!=i?1:0}(this,ZR(t,94),ZR(e,94))},H_t.Fb=function(t){return this===t},H_t.ve=function(){return new kd(this)};kB(WAt,"PropertyHolderComparator",818);Xft(695,1,dkt,Ov),H_t.Nb=function(t){EF(this,t)},H_t.Pb=function(){return function(t){var e;if(!t.a)throw um(new $U);return e=t.a,t.a=Eq(t.a),e}(this)},H_t.Qb=function(){Uw()},H_t.Ob=function(){return!!this.a};kB(_Rt,"ElkGraphUtil/AncestorIterator",695);var kae=oN(iRt,"EList");Xft(67,52,{20:1,28:1,52:1,14:1,15:1,67:1,58:1}),H_t.Vc=function(t,e){x7(this,t,e)},H_t.Fc=function(t){return fZ(this,t)},H_t.Wc=function(t,e){return f4(this,t,e)},H_t.Gc=function(t){return _B(this,t)},H_t.Zh=function(){return new sO(this)},H_t.$h=function(){return new lO(this)},H_t._h=function(t){return d1(this,t)},H_t.ai=function(){return!0},H_t.bi=function(t,e){},H_t.ci=function(){},H_t.di=function(t,e){YK(this,t,e)},H_t.ei=function(t,e,n){},H_t.fi=function(t,e){},H_t.gi=function(t,e,n){},H_t.Fb=function(t){return Cgt(this,t)},H_t.Hb=function(){return I5(this)},H_t.hi=function(){return!1},H_t.Kc=function(){return new WP(this)},H_t.Yc=function(){return new oO(this)},H_t.Zc=function(t){var e;if(e=this.gc(),t<0||t>e)throw um(new _D(t,e));return new QF(this,t)},H_t.ji=function(t,e){this.ii(t,this.Xc(e))},H_t.Mc=function(t){return VJ(this,t)},H_t.li=function(t,e){return e},H_t._c=function(t,e){return Fnt(this,t,e)},H_t.Ib=function(){return z9(this)},H_t.ni=function(){return!0},H_t.oi=function(t,e){return w6(this,e)};kB(iRt,"AbstractEList",67);Xft(63,67,SRt,vl,BQ,e3),H_t.Vh=function(t,e){return fst(this,t,e)},H_t.Wh=function(t){return Irt(this,t)},H_t.Xh=function(t,e){Y8(this,t,e)},H_t.Yh=function(t){DX(this,t)},H_t.pi=function(t){return LZ(this,t)},H_t.$b=function(){RX(this)},H_t.Hc=function(t){return Uat(this,t)},H_t.Xb=function(t){return a0(this,t)},H_t.qi=function(t){var e,n,r;++this.j,t>(n=null==this.g?0:this.g.length)&&(r=this.g,(e=n+(n/2|0)+4)=0&&(this.$c(e),!0)},H_t.mi=function(t,e){return this.Ui(t,this.oi(t,e))},H_t.gc=function(){return this.Vi()},H_t.Pc=function(){return this.Wi()},H_t.Qc=function(t){return this.Xi(t)},H_t.Ib=function(){return this.Yi()};kB(iRt,"DelegatingEList",1995);Xft(1996,1995,mzt),H_t.Vh=function(t,e){return jmt(this,t,e)},H_t.Wh=function(t){return this.Vh(this.Vi(),t)},H_t.Xh=function(t,e){Bft(this,t,e)},H_t.Yh=function(t){wft(this,t)},H_t.ai=function(){return!this.bj()},H_t.$b=function(){Kbt(this)},H_t.Zi=function(t,e,n,r,i){return new FV(this,t,e,n,r,i)},H_t.$i=function(t){j3(this.Ai(),t)},H_t._i=function(){return null},H_t.aj=function(){return-1},H_t.Ai=function(){return null},H_t.bj=function(){return!1},H_t.cj=function(t,e){return e},H_t.dj=function(t,e){return e},H_t.ej=function(){return!1},H_t.fj=function(){return!this.Ri()},H_t.ii=function(t,e){var n,r;return this.ej()?(r=this.fj(),n=Vst(this,t,e),this.$i(this.Zi(7,g7(e),n,t,r)),n):Vst(this,t,e)},H_t.$c=function(t){var e,n,r,i;return this.ej()?(n=null,r=this.fj(),e=this.Zi(4,i=sN(this,t),null,t,r),this.bj()&&i?(n=this.dj(i,n))?(n.Ei(e),n.Fi()):this.$i(e):n?(n.Ei(e),n.Fi()):this.$i(e),i):(i=sN(this,t),this.bj()&&i&&(n=this.dj(i,null))&&n.Fi(),i)},H_t.mi=function(t,e){return Fmt(this,t,e)};kB(xDt,"DelegatingNotifyingListImpl",1996);Xft(143,1,yzt),H_t.Ei=function(t){return Eot(this,t)},H_t.Fi=function(){yJ(this)},H_t.xi=function(){return this.d},H_t._i=function(){return null},H_t.gj=function(){return null},H_t.yi=function(t){return-1},H_t.zi=function(){return Fpt(this)},H_t.Ai=function(){return null},H_t.Bi=function(){return Bpt(this)},H_t.Ci=function(){return this.o<0?this.o<-2?-2-this.o-1:-1:this.o},H_t.hj=function(){return!1},H_t.Di=function(t){var e,n,r,i,a,o,s,l;switch(this.d){case 1:case 2:switch(t.xi()){case 1:case 2:if(rE(t.Ai())===rE(this.Ai())&&this.yi(null)==t.yi(null))return this.g=t.zi(),1==t.xi()&&(this.d=1),!0}case 4:if(4===t.xi())if(rE(t.Ai())===rE(this.Ai())&&this.yi(null)==t.yi(null))return o=fxt(this),a=this.o<0?this.o<-2?-2-this.o-1:-1:this.o,r=t.Ci(),this.d=6,l=new BQ(2),a<=r?(fZ(l,this.n),fZ(l,t.Bi()),this.g=R5(qx(Xle,1),STt,25,15,[this.o=a,r+1])):(fZ(l,t.Bi()),fZ(l,this.n),this.g=R5(qx(Xle,1),STt,25,15,[this.o=r,a])),this.n=l,o||(this.o=-2-this.o-1),!0;break;case 6:if(4===t.xi())if(rE(t.Ai())===rE(this.Ai())&&this.yi(null)==t.yi(null)){for(o=fxt(this),r=t.Ci(),s=ZR(this.g,48),n=XK(Xle,STt,25,s.length+1,15,1),e=0;e>>0).toString(16))).a+=" (eventType: ",this.d){case 1:n.a+="SET";break;case 2:n.a+="UNSET";break;case 3:n.a+="ADD";break;case 5:n.a+="ADD_MANY";break;case 4:n.a+="REMOVE";break;case 6:n.a+="REMOVE_MANY";break;case 7:n.a+="MOVE";break;case 8:n.a+="REMOVING_ADAPTER";break;case 9:n.a+="RESOLVE";break;default:Qw(n,this.d)}if(Avt(this)&&(n.a+=", touch: true"),n.a+=", position: ",Qw(n,this.o<0?this.o<-2?-2-this.o-1:-1:this.o),n.a+=", notifier: ",vE(n,this.Ai()),n.a+=", feature: ",vE(n,this._i()),n.a+=", oldValue: ",vE(n,Bpt(this)),n.a+=", newValue: ",6==this.d&&CP(this.g,48)){for(e=ZR(this.g,48),n.a+="[",t=0;t10?(this.b&&this.c.j==this.a||(this.b=new wN(this),this.a=this.j),vk(this.b,t)):Uat(this,t)},H_t.ni=function(){return!0},H_t.a=0;kB(iRt,"AbstractEList/1",953);Xft(295,73,ZTt,_D);kB(iRt,"AbstractEList/BasicIndexOutOfBoundsException",295);Xft(40,1,dkt,WP),H_t.Nb=function(t){EF(this,t)},H_t.mj=function(){if(this.i.j!=this.f)throw um(new zm)},H_t.nj=function(){return fnt(this)},H_t.Ob=function(){return this.e!=this.i.gc()},H_t.Pb=function(){return this.nj()},H_t.Qb=function(){not(this)},H_t.e=0,H_t.f=0,H_t.g=-1;kB(iRt,"AbstractEList/EIterator",40);Xft(278,40,_kt,oO,QF),H_t.Qb=function(){not(this)},H_t.Rb=function(t){ktt(this,t)},H_t.oj=function(){var t;try{return t=this.d.Xb(--this.e),this.mj(),this.g=this.e,t}catch(Wle){throw CP(Wle=_5(Wle),73)?(this.mj(),um(new jm)):um(Wle)}},H_t.pj=function(t){jrt(this,t)},H_t.Sb=function(){return 0!=this.e},H_t.Tb=function(){return this.e},H_t.Ub=function(){return this.oj()},H_t.Vb=function(){return this.e-1},H_t.Wb=function(t){this.pj(t)};kB(iRt,"AbstractEList/EListIterator",278);Xft(341,40,dkt,sO),H_t.nj=function(){return hnt(this)},H_t.Qb=function(){throw um(new Rm)};kB(iRt,"AbstractEList/NonResolvingEIterator",341);Xft(385,278,_kt,lO,$D),H_t.Rb=function(t){throw um(new Rm)},H_t.nj=function(){var t;try{return t=this.c.ki(this.e),this.mj(),this.g=this.e++,t}catch(Wle){throw CP(Wle=_5(Wle),73)?(this.mj(),um(new jm)):um(Wle)}},H_t.oj=function(){var t;try{return t=this.c.ki(--this.e),this.mj(),this.g=this.e,t}catch(Wle){throw CP(Wle=_5(Wle),73)?(this.mj(),um(new jm)):um(Wle)}},H_t.Qb=function(){throw um(new Rm)},H_t.Wb=function(t){throw um(new Rm)};var Oae;kB(iRt,"AbstractEList/NonResolvingEListIterator",385);Xft(1982,67,wzt),H_t.Vh=function(t,e){var n,r,i,a,o,s,l,c,u;if(0!=(r=e.gc())){for(n=g6(this,(c=null==(l=ZR(H3(this.a,4),126))?0:l.length)+r),(u=c-t)>0&&fbt(l,t,n,t+r,u),s=e.Kc(),a=0;an)throw um(new _D(t,n));return new SU(this,t)},H_t.$b=function(){var t,e;++this.j,e=null==(t=ZR(H3(this.a,4),126))?0:t.length,zet(this,null),YK(this,e,t)},H_t.Hc=function(t){var e,n,r,i;if(null!=(e=ZR(H3(this.a,4),126)))if(null!=t){for(r=0,i=(n=e).length;r=(n=null==(e=ZR(H3(this.a,4),126))?0:e.length))throw um(new _D(t,n));return e[t]},H_t.Xc=function(t){var e,n,r;if(null!=(e=ZR(H3(this.a,4),126)))if(null!=t){for(n=0,r=e.length;nn)throw um(new _D(t,n));return new AU(this,t)},H_t.ii=function(t,e){var n,r,i;if(t>=(i=null==(n=Htt(this))?0:n.length))throw um(new Hb(TRt+t+MRt+i));if(e>=i)throw um(new Hb(ARt+e+MRt+i));return r=n[e],t!=e&&(t=(o=null==(n=ZR(H3(t.a,4),126))?0:n.length))throw um(new _D(e,o));return i=n[e],1==o?r=null:(fbt(n,0,r=XK(Pae,xzt,415,o-1,0,1),0,e),(a=o-e-1)>0&&fbt(n,e+1,r,e,a)),zet(t,r),Bct(t,e,i),i}(this,t)},H_t.mi=function(t,e){var n,r;return r=(n=Htt(this))[t],BC(n,t,w6(this,e)),zet(this,n),r},H_t.gc=function(){var t;return null==(t=ZR(H3(this.a,4),126))?0:t.length},H_t.Pc=function(){var t,e,n;return n=null==(t=ZR(H3(this.a,4),126))?0:t.length,e=XK(Pae,xzt,415,n,0,1),n>0&&fbt(t,0,e,0,n),e},H_t.Qc=function(t){var e,n;return(n=null==(e=ZR(H3(this.a,4),126))?0:e.length)>0&&(t.lengthn&&zB(t,n,null),t};kB(iRt,"ArrayDelegatingEList",1982);Xft(1038,40,dkt,fX),H_t.mj=function(){if(this.b.j!=this.f||rE(ZR(H3(this.b.a,4),126))!==rE(this.a))throw um(new zm)},H_t.Qb=function(){not(this),this.a=ZR(H3(this.b.a,4),126)};kB(iRt,"ArrayDelegatingEList/EIterator",1038);Xft(706,278,_kt,dF,AU),H_t.mj=function(){if(this.b.j!=this.f||rE(ZR(H3(this.b.a,4),126))!==rE(this.a))throw um(new zm)},H_t.pj=function(t){jrt(this,t),this.a=ZR(H3(this.b.a,4),126)},H_t.Qb=function(){not(this),this.a=ZR(H3(this.b.a,4),126)};kB(iRt,"ArrayDelegatingEList/EListIterator",706);Xft(1039,341,dkt,hX),H_t.mj=function(){if(this.b.j!=this.f||rE(ZR(H3(this.b.a,4),126))!==rE(this.a))throw um(new zm)};kB(iRt,"ArrayDelegatingEList/NonResolvingEIterator",1039);Xft(707,385,_kt,pF,SU),H_t.mj=function(){if(this.b.j!=this.f||rE(ZR(H3(this.b.a,4),126))!==rE(this.a))throw um(new zm)};kB(iRt,"ArrayDelegatingEList/NonResolvingEListIterator",707);Xft(606,295,ZTt,UE);kB(iRt,"BasicEList/BasicIndexOutOfBoundsException",606);Xft(696,63,SRt,KS),H_t.Vc=function(t,e){throw um(new Rm)},H_t.Fc=function(t){throw um(new Rm)},H_t.Wc=function(t,e){throw um(new Rm)},H_t.Gc=function(t){throw um(new Rm)},H_t.$b=function(){throw um(new Rm)},H_t.qi=function(t){throw um(new Rm)},H_t.Kc=function(){return this.Zh()},H_t.Yc=function(){return this.$h()},H_t.Zc=function(t){return this._h(t)},H_t.ii=function(t,e){throw um(new Rm)},H_t.ji=function(t,e){throw um(new Rm)},H_t.$c=function(t){throw um(new Rm)},H_t.Mc=function(t){throw um(new Rm)},H_t._c=function(t,e){throw um(new Rm)};kB(iRt,"BasicEList/UnmodifiableEList",696);Xft(705,1,{3:1,20:1,14:1,15:1,58:1,589:1}),H_t.Vc=function(t,e){!function(t,e,n){t.c.Vc(e,ZR(n,133))}(this,t,ZR(e,42))},H_t.Fc=function(t){return function(t,e){return t.c.Fc(ZR(e,133))}(this,ZR(t,42))},H_t.Jc=function(t){Y$(this,t)},H_t.Xb=function(t){return ZR(a0(this.c,t),133)},H_t.ii=function(t,e){return ZR(this.c.ii(t,e),42)},H_t.ji=function(t,e){!function(t,e,n){t.c.ji(e,ZR(n,133))}(this,t,ZR(e,42))},H_t.Lc=function(){return new AN(null,new DG(this,16))},H_t.$c=function(t){return ZR(this.c.$c(t),42)},H_t._c=function(t,e){return function(t,e,n){return ZR(t.c._c(e,ZR(n,133)),42)}(this,t,ZR(e,42))},H_t.ad=function(t){E2(this,t)},H_t.Nc=function(){return new DG(this,16)},H_t.Oc=function(){return new AN(null,new DG(this,16))},H_t.Wc=function(t,e){return this.c.Wc(t,e)},H_t.Gc=function(t){return this.c.Gc(t)},H_t.$b=function(){this.c.$b()},H_t.Hc=function(t){return this.c.Hc(t)},H_t.Ic=function(t){return b5(this.c,t)},H_t.qj=function(){var t,e;if(null==this.d){for(this.d=XK(Tae,_zt,63,2*this.f+1,0,1),e=this.e,this.f=0,t=this.c.Kc();t.e!=t.i.gc();)nrt(this,ZR(t.nj(),133));this.e=e}},H_t.Fb=function(t){return WD(this,t)},H_t.Hb=function(){return I5(this.c)},H_t.Xc=function(t){return this.c.Xc(t)},H_t.rj=function(){this.c=new Iv(this)},H_t.dc=function(){return 0==this.f},H_t.Kc=function(){return this.c.Kc()},H_t.Yc=function(){return this.c.Yc()},H_t.Zc=function(t){return this.c.Zc(t)},H_t.sj=function(){return WK(this)},H_t.tj=function(t,e,n){return new jR(t,e,n)},H_t.uj=function(){return new yl},H_t.Mc=function(t){return p1(this,t)},H_t.gc=function(){return this.f},H_t.bd=function(t,e){return new PG(this.c,t,e)},H_t.Pc=function(){return this.c.Pc()},H_t.Qc=function(t){return this.c.Qc(t)},H_t.Ib=function(){return z9(this.c)},H_t.e=0,H_t.f=0;kB(iRt,"BasicEMap",705);Xft(1033,63,SRt,Iv),H_t.bi=function(t,e){!function(t,e){nrt(t.a,e)}(this,ZR(e,133))},H_t.ei=function(t,e,n){++(this,ZR(e,133),this).a.e},H_t.fi=function(t,e){!function(t,e){D7(t.a,e)}(this,ZR(e,133))},H_t.gi=function(t,e,n){!function(t,e,n){D7(t.a,n),nrt(t.a,e)}(this,ZR(e,133),ZR(n,133))},H_t.di=function(t,e){L3(this.a)};kB(iRt,"BasicEMap/1",1033);Xft(1034,63,SRt,yl),H_t.ri=function(t){return XK(Iae,kzt,612,t,0,1)};kB(iRt,"BasicEMap/2",1034);Xft(1035,mkt,ykt,Dv),H_t.$b=function(){this.a.c.$b()},H_t.Hc=function(t){return btt(this.a,t)},H_t.Kc=function(){return 0==this.a.f?(rI(),Dae.a):new Tw(this.a)},H_t.Mc=function(t){var e;return e=this.a.f,eet(this.a,t),this.a.f!=e},H_t.gc=function(){return this.a.f};kB(iRt,"BasicEMap/3",1035);Xft(1036,28,vkt,Rv),H_t.$b=function(){this.a.c.$b()},H_t.Hc=function(t){return Pgt(this.a,t)},H_t.Kc=function(){return 0==this.a.f?(rI(),Dae.a):new Mw(this.a)},H_t.gc=function(){return this.a.f};kB(iRt,"BasicEMap/4",1036);Xft(1037,mkt,ykt,zv),H_t.$b=function(){this.a.c.$b()},H_t.Hc=function(t){var e,n,r,i,a,o,s,l,c;if(this.a.f>0&&CP(t,42)&&(this.a.qj(),i=null==(s=(l=ZR(t,42)).cd())?0:$4(s),a=jI(this.a,i),e=this.a.d[a]))for(n=ZR(e.g,367),c=e.i,o=0;o"+this.c},H_t.a=0;var Iae=kB(iRt,"BasicEMap/EntryImpl",612);Xft(536,1,{},cl);var Dae;kB(iRt,"BasicEMap/View",536);Xft(768,1,{}),H_t.Fb=function(t){return uht((YH(),SBt),t)},H_t.Hb=function(){return j4((YH(),SBt))},H_t.Ib=function(){return Gst((YH(),SBt))};kB(iRt,"ECollections/BasicEmptyUnmodifiableEList",768);Xft(1312,1,_kt,bl),H_t.Nb=function(t){EF(this,t)},H_t.Rb=function(t){throw um(new Rm)},H_t.Ob=function(){return!1},H_t.Sb=function(){return!1},H_t.Pb=function(){throw um(new jm)},H_t.Tb=function(){return 0},H_t.Ub=function(){throw um(new jm)},H_t.Vb=function(){return-1},H_t.Qb=function(){throw um(new Rm)},H_t.Wb=function(t){throw um(new Rm)};kB(iRt,"ECollections/BasicEmptyUnmodifiableEList/1",1312);Xft(1310,768,{20:1,14:1,15:1,58:1},Ny),H_t.Vc=function(t,e){p_()},H_t.Fc=function(t){return g_()},H_t.Wc=function(t,e){return v_()},H_t.Gc=function(t){return m_()},H_t.$b=function(){y_()},H_t.Hc=function(t){return!1},H_t.Ic=function(t){return!1},H_t.Jc=function(t){Y$(this,t)},H_t.Xb=function(t){return CE((YH(),t)),null},H_t.Xc=function(t){return-1},H_t.dc=function(){return!0},H_t.Kc=function(){return this.a},H_t.Yc=function(){return this.a},H_t.Zc=function(t){return this.a},H_t.ii=function(t,e){return b_()},H_t.ji=function(t,e){x_()},H_t.Lc=function(){return new AN(null,new DG(this,16))},H_t.$c=function(t){return w_()},H_t.Mc=function(t){return __()},H_t._c=function(t,e){return k_()},H_t.gc=function(){return 0},H_t.ad=function(t){E2(this,t)},H_t.Nc=function(){return new DG(this,16)},H_t.Oc=function(){return new AN(null,new DG(this,16))},H_t.bd=function(t,e){return YH(),new PG(SBt,t,e)},H_t.Pc=function(){return Cj((YH(),SBt))},H_t.Qc=function(t){return YH(),Brt(SBt,t)};kB(iRt,"ECollections/EmptyUnmodifiableEList",1310);Xft(1311,768,{20:1,14:1,15:1,58:1,589:1},jy),H_t.Vc=function(t,e){p_()},H_t.Fc=function(t){return g_()},H_t.Wc=function(t,e){return v_()},H_t.Gc=function(t){return m_()},H_t.$b=function(){y_()},H_t.Hc=function(t){return!1},H_t.Ic=function(t){return!1},H_t.Jc=function(t){Y$(this,t)},H_t.Xb=function(t){return CE((YH(),t)),null},H_t.Xc=function(t){return-1},H_t.dc=function(){return!0},H_t.Kc=function(){return this.a},H_t.Yc=function(){return this.a},H_t.Zc=function(t){return this.a},H_t.ii=function(t,e){return b_()},H_t.ji=function(t,e){x_()},H_t.Lc=function(){return new AN(null,new DG(this,16))},H_t.$c=function(t){return w_()},H_t.Mc=function(t){return __()},H_t._c=function(t,e){return k_()},H_t.gc=function(){return 0},H_t.ad=function(t){E2(this,t)},H_t.Nc=function(){return new DG(this,16)},H_t.Oc=function(){return new AN(null,new DG(this,16))},H_t.bd=function(t,e){return YH(),new PG(SBt,t,e)},H_t.Pc=function(){return Cj((YH(),SBt))},H_t.Qc=function(t){return YH(),Brt(SBt,t)},H_t.sj=function(){return YH(),YH(),EBt};kB(iRt,"ECollections/EmptyUnmodifiableEMap",1311);var Rae,zae=oN(iRt,"Enumerator");Xft(281,1,{281:1},Ngt),H_t.Fb=function(t){var e;return this===t||!!CP(t,281)&&(e=ZR(t,281),this.f==e.f&&function(t,e){return null==t?null==e:bet(t,e)}(this.i,e.i)&&KN(this.a,0!=(256&this.f)?0!=(256&e.f)?e.a:null:0!=(256&e.f)?null:e.a)&&KN(this.d,e.d)&&KN(this.g,e.g)&&KN(this.e,e.e)&&function(t,e){var n,r;if(t.j.length!=e.j.length)return!1;for(n=0,r=t.j.length;n=0?t.Bh(n):Tut(t,e)}(this.a,this.b)};var qoe;kB(CDt,"BasicEObjectImpl/4",1027);Xft(1983,1,{108:1}),H_t.bk=function(t){this.e=0==t?qoe:XK(Yjt,akt,1,t,5,1)},H_t.Ch=function(t){return this.e[t]},H_t.Dh=function(t,e){this.e[t]=e},H_t.Eh=function(t){this.e[t]=null},H_t.ck=function(){return this.c},H_t.dk=function(){throw um(new Rm)},H_t.ek=function(){throw um(new Rm)},H_t.fk=function(){return this.d},H_t.gk=function(){return null!=this.e},H_t.hk=function(t){this.c=t},H_t.ik=function(t){throw um(new Rm)},H_t.jk=function(t){throw um(new Rm)},H_t.kk=function(t){this.d=t};kB(CDt,"BasicEObjectImpl/EPropertiesHolderBaseImpl",1983);Xft(185,1983,{108:1},zf),H_t.dk=function(){return this.a},H_t.ek=function(){return this.b},H_t.ik=function(t){this.a=t},H_t.jk=function(t){this.b=t};kB(CDt,"BasicEObjectImpl/EPropertiesHolderImpl",185);Xft(506,97,EDt,xl),H_t.Kg=function(){return this.f},H_t.Pg=function(){return this.k},H_t.Rg=function(t,e){this.g=t,this.i=e},H_t.Tg=function(){return 0==(2&this.j)?this.zh():this.ph().ck()},H_t.Vg=function(){return this.i},H_t.Mg=function(){return 0!=(1&this.j)},H_t.eh=function(){return this.g},H_t.kh=function(){return 0!=(4&this.j)},H_t.ph=function(){return!this.k&&(this.k=new zf),this.k},H_t.th=function(t){this.ph().hk(t),t?this.j|=2:this.j&=-3},H_t.vh=function(t){this.ph().jk(t),t?this.j|=4:this.j&=-5},H_t.zh=function(){return(ZB(),moe).S},H_t.i=0,H_t.j=1;var Goe;kB(CDt,"EObjectImpl",506);Xft(780,506,{105:1,92:1,90:1,56:1,108:1,49:1,97:1},Az),H_t.Ch=function(t){return this.e[t]},H_t.Dh=function(t,e){this.e[t]=e},H_t.Eh=function(t){this.e[t]=null},H_t.Tg=function(){return this.d},H_t.Yg=function(t){return ett(this.d,t)},H_t.$g=function(){return this.d},H_t.dh=function(){return null!=this.e},H_t.ph=function(){return!this.k&&(this.k=new wl),this.k},H_t.th=function(t){this.d=t},H_t.yh=function(){var t;return null==this.e&&(t=yB(this.d),this.e=0==t?Goe:XK(Yjt,akt,1,t,5,1)),this},H_t.Ah=function(){return 0};kB(CDt,"DynamicEObjectImpl",780);Xft(1376,780,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1},iN),H_t.Fb=function(t){return this===t},H_t.Hb=function(){return FL(this)},H_t.th=function(t){this.d=t,this.b=Qdt(t,"key"),this.c=Qdt(t,BDt)},H_t.Sh=function(){var t;return-1==this.a&&(t=jJ(this,this.b),this.a=null==t?0:$4(t)),this.a},H_t.cd=function(){return jJ(this,this.b)},H_t.dd=function(){return jJ(this,this.c)},H_t.Th=function(t){this.a=t},H_t.Uh=function(t){dq(this,this.b,t)},H_t.ed=function(t){var e;return e=jJ(this,this.c),dq(this,this.c,t),e},H_t.a=0;kB(CDt,"DynamicEObjectImpl/BasicEMapEntry",1376);Xft(1377,1,{108:1},wl),H_t.bk=function(t){throw um(new Rm)},H_t.Ch=function(t){throw um(new Rm)},H_t.Dh=function(t,e){throw um(new Rm)},H_t.Eh=function(t){throw um(new Rm)},H_t.ck=function(){throw um(new Rm)},H_t.dk=function(){return this.a},H_t.ek=function(){return this.b},H_t.fk=function(){return this.c},H_t.gk=function(){throw um(new Rm)},H_t.hk=function(t){throw um(new Rm)},H_t.ik=function(t){this.a=t},H_t.jk=function(t){this.b=t},H_t.kk=function(t){this.c=t};kB(CDt,"DynamicEObjectImpl/DynamicEPropertiesHolderImpl",1377);Xft(510,150,{105:1,92:1,90:1,590:1,147:1,56:1,108:1,49:1,97:1,510:1,150:1,114:1,115:1},_l),H_t.Qg=function(t){return nat(this,t)},H_t._g=function(t,e,n){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),this.Ab;case 1:return this.d;case 2:return n?(!this.b&&(this.b=new GO((N_t(),Noe),Qoe,this)),this.b):(!this.b&&(this.b=new GO((N_t(),Noe),Qoe,this)),WK(this.b));case 3:return Bq(this);case 4:return!this.a&&(this.a=new YP(qie,this,4)),this.a;case 5:return!this.c&&(this.c=new JP(qie,this,5)),this.c}return NZ(this,t-yB((N_t(),yoe)),CQ(ZR(H3(this,16),26)||yoe,t),e,n)},H_t.hh=function(t,e,n){var r;switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),ptt(this.Ab,t,n);case 3:return this.Cb&&(n=(r=this.Db>>16)>=0?nat(this,n):this.Cb.ih(this,-1-r,null,n)),_j(this,ZR(t,147),n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),yoe),e),66).Nj().Qj(this,vet(this),e-yB((N_t(),yoe)),t,n)},H_t.jh=function(t,e,n){switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),Mnt(this.Ab,t,n);case 2:return!this.b&&(this.b=new GO((N_t(),Noe),Qoe,this)),ZD(this.b,t,n);case 3:return _j(this,null,n);case 4:return!this.a&&(this.a=new YP(qie,this,4)),Mnt(this.a,t,n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),yoe),e),66).Nj().Rj(this,vet(this),e-yB((N_t(),yoe)),t,n)},H_t.lh=function(t){switch(t){case 0:return!!this.Ab&&0!=this.Ab.i;case 1:return null!=this.d;case 2:return!!this.b&&0!=this.b.f;case 3:return!!Bq(this);case 4:return!!this.a&&0!=this.a.i;case 5:return!!this.c&&0!=this.c.i}return RY(this,t-yB((N_t(),yoe)),CQ(ZR(H3(this,16),26)||yoe,t))},H_t.sh=function(t,e){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),qbt(this.Ab),!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void _B(this.Ab,ZR(e,14));case 1:return void function(t,e){U1(t,null==e?null:(yU(e),e))}(this,hI(e));case 2:return!this.b&&(this.b=new GO((N_t(),Noe),Qoe,this)),void S3(this.b,e);case 3:return void Kdt(this,ZR(e,147));case 4:return!this.a&&(this.a=new YP(qie,this,4)),qbt(this.a),!this.a&&(this.a=new YP(qie,this,4)),void _B(this.a,ZR(e,14));case 5:return!this.c&&(this.c=new JP(qie,this,5)),qbt(this.c),!this.c&&(this.c=new JP(qie,this,5)),void _B(this.c,ZR(e,14))}k9(this,t-yB((N_t(),yoe)),CQ(ZR(H3(this,16),26)||yoe,t),e)},H_t.zh=function(){return N_t(),yoe},H_t.Bh=function(t){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void qbt(this.Ab);case 1:return void U1(this,null);case 2:return!this.b&&(this.b=new GO((N_t(),Noe),Qoe,this)),void this.b.c.$b();case 3:return void Kdt(this,null);case 4:return!this.a&&(this.a=new YP(qie,this,4)),void qbt(this.a);case 5:return!this.c&&(this.c=new JP(qie,this,5)),void qbt(this.c)}i7(this,t-yB((N_t(),yoe)),CQ(ZR(H3(this,16),26)||yoe,t))},H_t.Ib=function(){return l7(this)},H_t.d=null;kB(CDt,"EAnnotationImpl",510);Xft(151,705,Fzt,xZ),H_t.Xh=function(t,e){!function(t,e,n){ZR(t.c,69).Xh(e,n)}(this,t,ZR(e,42))},H_t.lk=function(t,e){return function(t,e,n){return ZR(t.c,69).lk(e,n)}(this,ZR(t,42),e)},H_t.pi=function(t){return ZR(ZR(this.c,69).pi(t),133)},H_t.Zh=function(){return ZR(this.c,69).Zh()},H_t.$h=function(){return ZR(this.c,69).$h()},H_t._h=function(t){return ZR(this.c,69)._h(t)},H_t.mk=function(t,e){return ZD(this,t,e)},H_t.Wj=function(t){return ZR(this.c,76).Wj(t)},H_t.rj=function(){},H_t.fj=function(){return ZR(this.c,76).fj()},H_t.tj=function(t,e,n){var r;return(r=ZR(r0(this.b).Nh().Jh(this.b),133)).Th(t),r.Uh(e),r.ed(n),r},H_t.uj=function(){return new Jv(this)},H_t.Wb=function(t){S3(this,t)},H_t.Xj=function(){ZR(this.c,76).Xj()};kB(Nzt,"EcoreEMap",151);Xft(158,151,Fzt,GO),H_t.qj=function(){var t,e,n,r,i;if(null==this.d){for(i=XK(Tae,_zt,63,2*this.f+1,0,1),n=this.c.Kc();n.e!=n.i.gc();)!(t=i[r=((e=ZR(n.nj(),133)).Sh()&Q_t)%i.length])&&(t=i[r]=new Jv(this)),t.Fc(e);this.d=i}};kB(CDt,"EAnnotationImpl/1",158);Xft(284,438,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,472:1,49:1,97:1,150:1,284:1,114:1,115:1}),H_t._g=function(t,e,n){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),this.Ab;case 1:return this.zb;case 2:return TL(),0!=(256&this.Bb);case 3:return TL(),0!=(512&this.Bb);case 4:return g7(this.s);case 5:return g7(this.t);case 6:return TL(),!!this.$j();case 7:return TL(),this.s>=1;case 8:return e?hat(this):this.r;case 9:return this.q}return NZ(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t),e,n)},H_t.jh=function(t,e,n){switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),Mnt(this.Ab,t,n);case 9:return wB(this,n)}return ZR(CQ(ZR(H3(this,16),26)||this.zh(),e),66).Nj().Rj(this,vet(this),e-yB(this.zh()),t,n)},H_t.lh=function(t){switch(t){case 0:return!!this.Ab&&0!=this.Ab.i;case 1:return null!=this.zb;case 2:return 0==(256&this.Bb);case 3:return 0==(512&this.Bb);case 4:return 0!=this.s;case 5:return 1!=this.t;case 6:return this.$j();case 7:return this.s>=1;case 8:return!!this.r&&!this.q.e&&0==mU(this.q).i;case 9:return!!this.q&&!(this.r&&!this.q.e&&0==mU(this.q).i)}return RY(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t))},H_t.sh=function(t,e){var n;switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),qbt(this.Ab),!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void _B(this.Ab,ZR(e,14));case 1:return void this.Lh(hI(e));case 2:return void c7(this,tx(uI(e)));case 3:return void h7(this,tx(uI(e)));case 4:return void F0(this,ZR(e,19).a);case 5:return void this.ok(ZR(e,19).a);case 8:return void o8(this,ZR(e,138));case 9:return void((n=hst(this,ZR(e,87),null))&&n.Fi())}k9(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t),e)},H_t.zh=function(){return N_t(),Foe},H_t.Bh=function(t){var e;switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void qbt(this.Ab);case 1:return void this.Lh(null);case 2:return void c7(this,!0);case 3:return void h7(this,!0);case 4:return void F0(this,0);case 5:return void this.ok(1);case 8:return void o8(this,null);case 9:return void((e=hst(this,null,null))&&e.Fi())}i7(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t))},H_t.Gh=function(){hat(this),this.Bb|=1},H_t.Yj=function(){return hat(this)},H_t.Zj=function(){return this.t},H_t.$j=function(){var t;return(t=this.t)>1||-1==t},H_t.hi=function(){return 0!=(512&this.Bb)},H_t.nk=function(t,e){return G8(this,t,e)},H_t.ok=function(t){B0(this,t)},H_t.Ib=function(){return Sft(this)},H_t.s=0,H_t.t=1;kB(CDt,"ETypedElementImpl",284);Xft(449,284,{105:1,92:1,90:1,147:1,191:1,56:1,170:1,66:1,108:1,472:1,49:1,97:1,150:1,449:1,284:1,114:1,115:1,677:1}),H_t.Qg=function(t){return Oit(this,t)},H_t._g=function(t,e,n){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),this.Ab;case 1:return this.zb;case 2:return TL(),0!=(256&this.Bb);case 3:return TL(),0!=(512&this.Bb);case 4:return g7(this.s);case 5:return g7(this.t);case 6:return TL(),!!this.$j();case 7:return TL(),this.s>=1;case 8:return e?hat(this):this.r;case 9:return this.q;case 10:return TL(),0!=(this.Bb&jDt);case 11:return TL(),0!=(this.Bb&Hzt);case 12:return TL(),0!=(this.Bb&nMt);case 13:return this.j;case 14:return Cdt(this);case 15:return TL(),0!=(this.Bb&Uzt);case 16:return TL(),0!=(this.Bb&Skt);case 17:return Hq(this)}return NZ(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t),e,n)},H_t.hh=function(t,e,n){var r;switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),ptt(this.Ab,t,n);case 17:return this.Cb&&(n=(r=this.Db>>16)>=0?Oit(this,n):this.Cb.ih(this,-1-r,null,n)),umt(this,t,17,n)}return ZR(CQ(ZR(H3(this,16),26)||this.zh(),e),66).Nj().Qj(this,vet(this),e-yB(this.zh()),t,n)},H_t.jh=function(t,e,n){switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),Mnt(this.Ab,t,n);case 9:return wB(this,n);case 17:return umt(this,null,17,n)}return ZR(CQ(ZR(H3(this,16),26)||this.zh(),e),66).Nj().Rj(this,vet(this),e-yB(this.zh()),t,n)},H_t.lh=function(t){switch(t){case 0:return!!this.Ab&&0!=this.Ab.i;case 1:return null!=this.zb;case 2:return 0==(256&this.Bb);case 3:return 0==(512&this.Bb);case 4:return 0!=this.s;case 5:return 1!=this.t;case 6:return this.$j();case 7:return this.s>=1;case 8:return!!this.r&&!this.q.e&&0==mU(this.q).i;case 9:return!!this.q&&!(this.r&&!this.q.e&&0==mU(this.q).i);case 10:return 0==(this.Bb&jDt);case 11:return 0!=(this.Bb&Hzt);case 12:return 0!=(this.Bb&nMt);case 13:return null!=this.j;case 14:return null!=Cdt(this);case 15:return 0!=(this.Bb&Uzt);case 16:return 0!=(this.Bb&Skt);case 17:return!!Hq(this)}return RY(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t))},H_t.sh=function(t,e){var n;switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),qbt(this.Ab),!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void _B(this.Ab,ZR(e,14));case 1:return void xG(this,hI(e));case 2:return void c7(this,tx(uI(e)));case 3:return void h7(this,tx(uI(e)));case 4:return void F0(this,ZR(e,19).a);case 5:return void this.ok(ZR(e,19).a);case 8:return void o8(this,ZR(e,138));case 9:return void((n=hst(this,ZR(e,87),null))&&n.Fi());case 10:return void R7(this,tx(uI(e)));case 11:return void j7(this,tx(uI(e)));case 12:return void z7(this,tx(uI(e)));case 13:return void QS(this,hI(e));case 15:return void N7(this,tx(uI(e)));case 16:return void H7(this,tx(uI(e)))}k9(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t),e)},H_t.zh=function(){return N_t(),joe},H_t.Bh=function(t){var e;switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void qbt(this.Ab);case 1:return CP(this.Cb,88)&&aut(dX(ZR(this.Cb,88)),4),void k2(this,null);case 2:return void c7(this,!0);case 3:return void h7(this,!0);case 4:return void F0(this,0);case 5:return void this.ok(1);case 8:return void o8(this,null);case 9:return void((e=hst(this,null,null))&&e.Fi());case 10:return void R7(this,!0);case 11:return void j7(this,!1);case 12:return void z7(this,!1);case 13:return this.i=null,void J1(this,null);case 15:return void N7(this,!1);case 16:return void H7(this,!1)}i7(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t))},H_t.Gh=function(){tH(SJ((gct(),vse),this)),hat(this),this.Bb|=1},H_t.Gj=function(){return this.f},H_t.zj=function(){return Cdt(this)},H_t.Hj=function(){return Hq(this)},H_t.Lj=function(){return null},H_t.pk=function(){return this.k},H_t.aj=function(){return this.n},H_t.Mj=function(){return hot(this)},H_t.Nj=function(){var t,e,n,r,i,a,o,s,l;return this.p||((null==(n=Hq(this)).i&&fyt(n),n.i).length,(r=this.Lj())&&yB(Hq(r)),t=(o=(i=hat(this)).Bj())?0!=(1&o.i)?o==Kle?jFt:o==Xle?$Ft:o==tce?GFt:o==Qle?qFt:o==Zle?KFt:o==ece?nBt:o==Jle?UFt:VFt:o:null,e=Cdt(this),s=i.zj(),c9(this),0!=(this.Bb&Skt)&&((a=Nat((gct(),vse),n))&&a!=this||(a=UG(SJ(vse,this))))?this.p=new GS(this,a):this.$j()?this.rk()?r?0!=(this.Bb&Uzt)?t?this.sk()?this.p=new IH(47,t,this,r):this.p=new IH(5,t,this,r):this.sk()?this.p=new c$(46,this,r):this.p=new c$(4,this,r):t?this.sk()?this.p=new IH(49,t,this,r):this.p=new IH(7,t,this,r):this.sk()?this.p=new c$(48,this,r):this.p=new c$(6,this,r):0!=(this.Bb&Uzt)?t?t==eFt?this.p=new FR(50,fae,this):this.sk()?this.p=new FR(43,t,this):this.p=new FR(1,t,this):this.sk()?this.p=new HV(42,this):this.p=new HV(0,this):t?t==eFt?this.p=new FR(41,fae,this):this.sk()?this.p=new FR(45,t,this):this.p=new FR(3,t,this):this.sk()?this.p=new HV(44,this):this.p=new HV(2,this):CP(i,148)?t==Voe?this.p=new HV(40,this):0!=(512&this.Bb)?0!=(this.Bb&Uzt)?this.p=t?new FR(9,t,this):new HV(8,this):this.p=t?new FR(11,t,this):new HV(10,this):0!=(this.Bb&Uzt)?this.p=t?new FR(13,t,this):new HV(12,this):this.p=t?new FR(15,t,this):new HV(14,this):r?(l=r.t)>1||-1==l?this.sk()?0!=(this.Bb&Uzt)?this.p=t?new IH(25,t,this,r):new c$(24,this,r):this.p=t?new IH(27,t,this,r):new c$(26,this,r):0!=(this.Bb&Uzt)?this.p=t?new IH(29,t,this,r):new c$(28,this,r):this.p=t?new IH(31,t,this,r):new c$(30,this,r):this.sk()?0!=(this.Bb&Uzt)?this.p=t?new IH(33,t,this,r):new c$(32,this,r):this.p=t?new IH(35,t,this,r):new c$(34,this,r):0!=(this.Bb&Uzt)?this.p=t?new IH(37,t,this,r):new c$(36,this,r):this.p=t?new IH(39,t,this,r):new c$(38,this,r):this.sk()?0!=(this.Bb&Uzt)?this.p=t?new FR(17,t,this):new HV(16,this):this.p=t?new FR(19,t,this):new HV(18,this):0!=(this.Bb&Uzt)?this.p=t?new FR(21,t,this):new HV(20,this):this.p=t?new FR(23,t,this):new HV(22,this):this.qk()?this.sk()?this.p=new BR(ZR(i,26),this,r):this.p=new eq(ZR(i,26),this,r):CP(i,148)?t==Voe?this.p=new HV(40,this):0!=(this.Bb&Uzt)?this.p=t?new Aj(e,s,this,(ltt(),o==Xle?sse:o==Kle?nse:o==Zle?lse:o==tce?ose:o==Qle?ase:o==ece?use:o==Jle?rse:o==$le?ise:cse)):new zH(ZR(i,148),e,s,this):this.p=t?new Mj(e,s,this,(ltt(),o==Xle?sse:o==Kle?nse:o==Zle?lse:o==tce?ose:o==Qle?ase:o==ece?use:o==Jle?rse:o==$le?ise:cse)):new RH(ZR(i,148),e,s,this):this.rk()?r?0!=(this.Bb&Uzt)?this.sk()?this.p=new WR(ZR(i,26),this,r):this.p=new GR(ZR(i,26),this,r):this.sk()?this.p=new qR(ZR(i,26),this,r):this.p=new UR(ZR(i,26),this,r):0!=(this.Bb&Uzt)?this.sk()?this.p=new XO(ZR(i,26),this):this.p=new $O(ZR(i,26),this):this.sk()?this.p=new YO(ZR(i,26),this):this.p=new WO(ZR(i,26),this):this.sk()?r?0!=(this.Bb&Uzt)?this.p=new YR(ZR(i,26),this,r):this.p=new HR(ZR(i,26),this,r):0!=(this.Bb&Uzt)?this.p=new ZO(ZR(i,26),this):this.p=new KO(ZR(i,26),this):r?0!=(this.Bb&Uzt)?this.p=new $R(ZR(i,26),this,r):this.p=new VR(ZR(i,26),this,r):0!=(this.Bb&Uzt)?this.p=new JO(ZR(i,26),this):this.p=new jN(ZR(i,26),this)),this.p},H_t.Ij=function(){return 0!=(this.Bb&jDt)},H_t.qk=function(){return!1},H_t.rk=function(){return!1},H_t.Jj=function(){return 0!=(this.Bb&Skt)},H_t.Oj=function(){return qJ(this)},H_t.sk=function(){return!1},H_t.Kj=function(){return 0!=(this.Bb&Uzt)},H_t.tk=function(t){this.k=t},H_t.Lh=function(t){xG(this,t)},H_t.Ib=function(){return Jgt(this)},H_t.e=!1,H_t.n=0;kB(CDt,"EStructuralFeatureImpl",449);Xft(322,449,{105:1,92:1,90:1,34:1,147:1,191:1,56:1,170:1,66:1,108:1,472:1,49:1,97:1,322:1,150:1,449:1,284:1,114:1,115:1,677:1},Vy),H_t._g=function(t,e,n){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),this.Ab;case 1:return this.zb;case 2:return TL(),0!=(256&this.Bb);case 3:return TL(),0!=(512&this.Bb);case 4:return g7(this.s);case 5:return g7(this.t);case 6:return TL(),!!Hut(this);case 7:return TL(),this.s>=1;case 8:return e?hat(this):this.r;case 9:return this.q;case 10:return TL(),0!=(this.Bb&jDt);case 11:return TL(),0!=(this.Bb&Hzt);case 12:return TL(),0!=(this.Bb&nMt);case 13:return this.j;case 14:return Cdt(this);case 15:return TL(),0!=(this.Bb&Uzt);case 16:return TL(),0!=(this.Bb&Skt);case 17:return Hq(this);case 18:return TL(),0!=(this.Bb&SDt);case 19:return e?y5(this):sK(this)}return NZ(this,t-yB((N_t(),boe)),CQ(ZR(H3(this,16),26)||boe,t),e,n)},H_t.lh=function(t){switch(t){case 0:return!!this.Ab&&0!=this.Ab.i;case 1:return null!=this.zb;case 2:return 0==(256&this.Bb);case 3:return 0==(512&this.Bb);case 4:return 0!=this.s;case 5:return 1!=this.t;case 6:return Hut(this);case 7:return this.s>=1;case 8:return!!this.r&&!this.q.e&&0==mU(this.q).i;case 9:return!!this.q&&!(this.r&&!this.q.e&&0==mU(this.q).i);case 10:return 0==(this.Bb&jDt);case 11:return 0!=(this.Bb&Hzt);case 12:return 0!=(this.Bb&nMt);case 13:return null!=this.j;case 14:return null!=Cdt(this);case 15:return 0!=(this.Bb&Uzt);case 16:return 0!=(this.Bb&Skt);case 17:return!!Hq(this);case 18:return 0!=(this.Bb&SDt);case 19:return!!sK(this)}return RY(this,t-yB((N_t(),boe)),CQ(ZR(H3(this,16),26)||boe,t))},H_t.sh=function(t,e){var n;switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),qbt(this.Ab),!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void _B(this.Ab,ZR(e,14));case 1:return void xG(this,hI(e));case 2:return void c7(this,tx(uI(e)));case 3:return void h7(this,tx(uI(e)));case 4:return void F0(this,ZR(e,19).a);case 5:return void Cw(this,ZR(e,19).a);case 8:return void o8(this,ZR(e,138));case 9:return void((n=hst(this,ZR(e,87),null))&&n.Fi());case 10:return void R7(this,tx(uI(e)));case 11:return void j7(this,tx(uI(e)));case 12:return void z7(this,tx(uI(e)));case 13:return void QS(this,hI(e));case 15:return void N7(this,tx(uI(e)));case 16:return void H7(this,tx(uI(e)));case 18:return void V7(this,tx(uI(e)))}k9(this,t-yB((N_t(),boe)),CQ(ZR(H3(this,16),26)||boe,t),e)},H_t.zh=function(){return N_t(),boe},H_t.Bh=function(t){var e;switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void qbt(this.Ab);case 1:return CP(this.Cb,88)&&aut(dX(ZR(this.Cb,88)),4),void k2(this,null);case 2:return void c7(this,!0);case 3:return void h7(this,!0);case 4:return void F0(this,0);case 5:return this.b=0,void B0(this,1);case 8:return void o8(this,null);case 9:return void((e=hst(this,null,null))&&e.Fi());case 10:return void R7(this,!0);case 11:return void j7(this,!1);case 12:return void z7(this,!1);case 13:return this.i=null,void J1(this,null);case 15:return void N7(this,!1);case 16:return void H7(this,!1);case 18:return void V7(this,!1)}i7(this,t-yB((N_t(),boe)),CQ(ZR(H3(this,16),26)||boe,t))},H_t.Gh=function(){y5(this),tH(SJ((gct(),vse),this)),hat(this),this.Bb|=1},H_t.$j=function(){return Hut(this)},H_t.nk=function(t,e){return this.b=0,this.a=null,G8(this,t,e)},H_t.ok=function(t){Cw(this,t)},H_t.Ib=function(){var t;return 0!=(64&this.Db)?Jgt(this):((t=new ML(Jgt(this))).a+=" (iD: ",t_(t,0!=(this.Bb&SDt)),t.a+=")",t.a)},H_t.b=0;kB(CDt,"EAttributeImpl",322);Xft(351,438,{105:1,92:1,90:1,138:1,147:1,191:1,56:1,108:1,49:1,97:1,351:1,150:1,114:1,115:1,676:1}),H_t.uk=function(t){return t.Tg()==this},H_t.Qg=function(t){return yit(this,t)},H_t.Rg=function(t,e){this.w=null,this.Db=e<<16|255&this.Db,this.Cb=t},H_t._g=function(t,e,n){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),this.Ab;case 1:return this.zb;case 2:return null!=this.D?this.D:this.B;case 3:return hit(this);case 4:return this.zj();case 5:return this.F;case 6:return e?r0(this):Uq(this);case 7:return!this.A&&(this.A=new XP(Uoe,this,7)),this.A}return NZ(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t),e,n)},H_t.hh=function(t,e,n){var r;switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),ptt(this.Ab,t,n);case 6:return this.Cb&&(n=(r=this.Db>>16)>=0?yit(this,n):this.Cb.ih(this,-1-r,null,n)),umt(this,t,6,n)}return ZR(CQ(ZR(H3(this,16),26)||this.zh(),e),66).Nj().Qj(this,vet(this),e-yB(this.zh()),t,n)},H_t.jh=function(t,e,n){switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),Mnt(this.Ab,t,n);case 6:return umt(this,null,6,n);case 7:return!this.A&&(this.A=new XP(Uoe,this,7)),Mnt(this.A,t,n)}return ZR(CQ(ZR(H3(this,16),26)||this.zh(),e),66).Nj().Rj(this,vet(this),e-yB(this.zh()),t,n)},H_t.lh=function(t){switch(t){case 0:return!!this.Ab&&0!=this.Ab.i;case 1:return null!=this.zb;case 2:return null!=this.D&&this.D==this.F;case 3:return!!hit(this);case 4:return null!=this.zj();case 5:return null!=this.F&&this.F!=this.D&&this.F!=this.B;case 6:return!!Uq(this);case 7:return!!this.A&&0!=this.A.i}return RY(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t))},H_t.sh=function(t,e){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),qbt(this.Ab),!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void _B(this.Ab,ZR(e,14));case 1:return void wG(this,hI(e));case 2:return void MC(this,hI(e));case 5:return void cxt(this,hI(e));case 7:return!this.A&&(this.A=new XP(Uoe,this,7)),qbt(this.A),!this.A&&(this.A=new XP(Uoe,this,7)),void _B(this.A,ZR(e,14))}k9(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t),e)},H_t.zh=function(){return N_t(),woe},H_t.Bh=function(t){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void qbt(this.Ab);case 1:return CP(this.Cb,179)&&(ZR(this.Cb,179).tb=null),void k2(this,null);case 2:return _6(this,null),void U0(this,this.D);case 5:return void cxt(this,null);case 7:return!this.A&&(this.A=new XP(Uoe,this,7)),void qbt(this.A)}i7(this,t-yB(this.zh()),CQ(ZR(H3(this,16),26)||this.zh(),t))},H_t.yj=function(){var t;return-1==this.G&&(this.G=(t=r0(this))?jnt(t.Mh(),this):-1),this.G},H_t.zj=function(){return null},H_t.Aj=function(){return r0(this)},H_t.vk=function(){return this.v},H_t.Bj=function(){return hit(this)},H_t.Cj=function(){return null!=this.D?this.D:this.B},H_t.Dj=function(){return this.F},H_t.wj=function(t){return Qmt(this,t)},H_t.wk=function(t){this.v=t},H_t.xk=function(t){D2(this,t)},H_t.yk=function(t){this.C=t},H_t.Lh=function(t){wG(this,t)},H_t.Ib=function(){return ttt(this)},H_t.C=null,H_t.D=null,H_t.G=-1;var Woe,Yoe,$oe;kB(CDt,"EClassifierImpl",351);Xft(88,351,{105:1,92:1,90:1,26:1,138:1,147:1,191:1,56:1,108:1,49:1,97:1,88:1,351:1,150:1,473:1,114:1,115:1,676:1},Nf),H_t.uk=function(t){return function(t,e){return e==t||Uat(wdt(e),t)}(this,t.Tg())},H_t._g=function(t,e,n){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),this.Ab;case 1:return this.zb;case 2:return null!=this.D?this.D:this.B;case 3:return hit(this);case 4:return null;case 5:return this.F;case 6:return e?r0(this):Uq(this);case 7:return!this.A&&(this.A=new XP(Uoe,this,7)),this.A;case 8:return TL(),0!=(256&this.Bb);case 9:return TL(),0!=(512&this.Bb);case 10:return EV(this);case 11:return!this.q&&(this.q=new bF(foe,this,11,10)),this.q;case 12:return ibt(this);case 13:return $yt(this);case 14:return $yt(this),this.r;case 15:return ibt(this),this.k;case 16:return Ict(this);case 17:return Iyt(this);case 18:return fyt(this);case 19:return wdt(this);case 20:return ibt(this),this.o;case 21:return!this.s&&(this.s=new bF(noe,this,21,17)),this.s;case 22:return e$(this);case 23:return Mgt(this)}return NZ(this,t-yB((N_t(),xoe)),CQ(ZR(H3(this,16),26)||xoe,t),e,n)},H_t.hh=function(t,e,n){var r;switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),ptt(this.Ab,t,n);case 6:return this.Cb&&(n=(r=this.Db>>16)>=0?yit(this,n):this.Cb.ih(this,-1-r,null,n)),umt(this,t,6,n);case 11:return!this.q&&(this.q=new bF(foe,this,11,10)),ptt(this.q,t,n);case 21:return!this.s&&(this.s=new bF(noe,this,21,17)),ptt(this.s,t,n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),xoe),e),66).Nj().Qj(this,vet(this),e-yB((N_t(),xoe)),t,n)},H_t.jh=function(t,e,n){switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),Mnt(this.Ab,t,n);case 6:return umt(this,null,6,n);case 7:return!this.A&&(this.A=new XP(Uoe,this,7)),Mnt(this.A,t,n);case 11:return!this.q&&(this.q=new bF(foe,this,11,10)),Mnt(this.q,t,n);case 21:return!this.s&&(this.s=new bF(noe,this,21,17)),Mnt(this.s,t,n);case 22:return Mnt(e$(this),t,n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),xoe),e),66).Nj().Rj(this,vet(this),e-yB((N_t(),xoe)),t,n)},H_t.lh=function(t){switch(t){case 0:return!!this.Ab&&0!=this.Ab.i;case 1:return null!=this.zb;case 2:return null!=this.D&&this.D==this.F;case 3:return!!hit(this);case 4:return!1;case 5:return null!=this.F&&this.F!=this.D&&this.F!=this.B;case 6:return!!Uq(this);case 7:return!!this.A&&0!=this.A.i;case 8:return 0!=(256&this.Bb);case 9:return 0!=(512&this.Bb);case 10:return!!this.u&&0!=e$(this.u.a).i&&!(this.n&&urt(this.n));case 11:return!!this.q&&0!=this.q.i;case 12:return 0!=ibt(this).i;case 13:return 0!=$yt(this).i;case 14:return $yt(this),0!=this.r.i;case 15:return ibt(this),0!=this.k.i;case 16:return 0!=Ict(this).i;case 17:return 0!=Iyt(this).i;case 18:return 0!=fyt(this).i;case 19:return 0!=wdt(this).i;case 20:return ibt(this),!!this.o;case 21:return!!this.s&&0!=this.s.i;case 22:return!!this.n&&urt(this.n);case 23:return 0!=Mgt(this).i}return RY(this,t-yB((N_t(),xoe)),CQ(ZR(H3(this,16),26)||xoe,t))},H_t.oh=function(t){return(null==this.i||this.q&&0!=this.q.i?null:Qdt(this,t))||Twt(this,t)},H_t.sh=function(t,e){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),qbt(this.Ab),!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void _B(this.Ab,ZR(e,14));case 1:return void wG(this,hI(e));case 2:return void MC(this,hI(e));case 5:return void cxt(this,hI(e));case 7:return!this.A&&(this.A=new XP(Uoe,this,7)),qbt(this.A),!this.A&&(this.A=new XP(Uoe,this,7)),void _B(this.A,ZR(e,14));case 8:return void u7(this,tx(uI(e)));case 9:return void d7(this,tx(uI(e)));case 10:return Kbt(EV(this)),void _B(EV(this),ZR(e,14));case 11:return!this.q&&(this.q=new bF(foe,this,11,10)),qbt(this.q),!this.q&&(this.q=new bF(foe,this,11,10)),void _B(this.q,ZR(e,14));case 21:return!this.s&&(this.s=new bF(noe,this,21,17)),qbt(this.s),!this.s&&(this.s=new bF(noe,this,21,17)),void _B(this.s,ZR(e,14));case 22:return qbt(e$(this)),void _B(e$(this),ZR(e,14))}k9(this,t-yB((N_t(),xoe)),CQ(ZR(H3(this,16),26)||xoe,t),e)},H_t.zh=function(){return N_t(),xoe},H_t.Bh=function(t){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void qbt(this.Ab);case 1:return CP(this.Cb,179)&&(ZR(this.Cb,179).tb=null),void k2(this,null);case 2:return _6(this,null),void U0(this,this.D);case 5:return void cxt(this,null);case 7:return!this.A&&(this.A=new XP(Uoe,this,7)),void qbt(this.A);case 8:return void u7(this,!1);case 9:return void d7(this,!1);case 10:return void(this.u&&Kbt(this.u));case 11:return!this.q&&(this.q=new bF(foe,this,11,10)),void qbt(this.q);case 21:return!this.s&&(this.s=new bF(noe,this,21,17)),void qbt(this.s);case 22:return void(this.n&&qbt(this.n))}i7(this,t-yB((N_t(),xoe)),CQ(ZR(H3(this,16),26)||xoe,t))},H_t.Gh=function(){var t,e;if(ibt(this),$yt(this),Ict(this),Iyt(this),fyt(this),wdt(this),Mgt(this),RX(function(t){return!t.c&&(t.c=new Ul),t.c}(dX(this))),this.s)for(t=0,e=this.s.i;t=0;--e)a0(this,e);return dtt(this,t)},H_t.Xj=function(){qbt(this)},H_t.oi=function(t,e){return G0(this,0,e)};kB(Nzt,"EcoreEList",622);Xft(496,622,tNt,Tz),H_t.ai=function(){return!1},H_t.aj=function(){return this.c},H_t.bj=function(){return!1},H_t.Fk=function(){return!0},H_t.hi=function(){return!0},H_t.li=function(t,e){return e},H_t.ni=function(){return!1},H_t.c=0;kB(Nzt,"EObjectEList",496);Xft(85,496,tNt,YP),H_t.bj=function(){return!0},H_t.Dk=function(){return!1},H_t.rk=function(){return!0};kB(Nzt,"EObjectContainmentEList",85);Xft(545,85,tNt,$P),H_t.ci=function(){this.b=!0},H_t.fj=function(){return this.b},H_t.Xj=function(){var t;qbt(this),vC(this.e)?(t=this.b,this.b=!1,j3(this.e,new PX(this.e,2,this.c,t,!1))):this.b=!1},H_t.b=!1;kB(Nzt,"EObjectContainmentEList/Unsettable",545);Xft(1140,545,tNt,kj),H_t.ii=function(t,e){var n,r;return n=ZR(I7(this,t,e),87),vC(this.e)&&Ym(this,new _Z(this.a,7,(N_t(),_oe),g7(e),CP(r=n.c,88)?ZR(r,26):Loe,t)),n},H_t.jj=function(t,e){return function(t,e,n){var r,i;return r=new xJ(t.e,3,10,null,CP(i=e.c,88)?ZR(i,26):(N_t(),Loe),jnt(t,e),!1),n?n.Ei(r):n=r,n}(this,ZR(t,87),e)},H_t.kj=function(t,e){return function(t,e,n){var r,i;return r=new xJ(t.e,4,10,CP(i=e.c,88)?ZR(i,26):(N_t(),Loe),null,jnt(t,e),!1),n?n.Ei(r):n=r,n}(this,ZR(t,87),e)},H_t.lj=function(t,e,n){return function(t,e,n,r){var i,a,o;return i=new xJ(t.e,1,10,CP(o=e.c,88)?ZR(o,26):(N_t(),Loe),CP(a=n.c,88)?ZR(a,26):(N_t(),Loe),jnt(t,e),!1),r?r.Ei(i):r=i,r}(this,ZR(t,87),ZR(e,87),n)},H_t.Zi=function(t,e,n,r,i){switch(t){case 3:return Gq(this,t,e,n,r,this.i>1);case 5:return Gq(this,t,e,n,r,this.i-ZR(n,15).gc()>0);default:return new xJ(this.e,t,this.c,e,n,r,!0)}},H_t.ij=function(){return!0},H_t.fj=function(){return urt(this)},H_t.Xj=function(){qbt(this)};kB(CDt,"EClassImpl/1",1140);Xft(1154,1153,vzt),H_t.ui=function(t){var e,n,r,i,a,o,s;if(8!=(n=t.xi())){if(r=function(t){switch(t.yi(null)){case 10:return 0;case 15:return 1;case 14:return 2;case 11:return 3;case 21:return 4}return-1}(t),0==r)switch(n){case 1:case 9:null!=(s=t.Bi())&&(!(e=dX(ZR(s,473))).c&&(e.c=new Ul),VJ(e.c,t.Ai())),null!=(o=t.zi())&&0==(1&(i=ZR(o,473)).Bb)&&(!(e=dX(i)).c&&(e.c=new Ul),fZ(e.c,ZR(t.Ai(),26)));break;case 3:null!=(o=t.zi())&&0==(1&(i=ZR(o,473)).Bb)&&(!(e=dX(i)).c&&(e.c=new Ul),fZ(e.c,ZR(t.Ai(),26)));break;case 5:if(null!=(o=t.zi()))for(a=ZR(o,14).Kc();a.Ob();)0==(1&(i=ZR(a.Pb(),473)).Bb)&&(!(e=dX(i)).c&&(e.c=new Ul),fZ(e.c,ZR(t.Ai(),26)));break;case 4:null!=(s=t.Bi())&&0==(1&(i=ZR(s,473)).Bb)&&(!(e=dX(i)).c&&(e.c=new Ul),VJ(e.c,t.Ai()));break;case 6:if(null!=(s=t.Bi()))for(a=ZR(s,14).Kc();a.Ob();)0==(1&(i=ZR(a.Pb(),473)).Bb)&&(!(e=dX(i)).c&&(e.c=new Ul),VJ(e.c,t.Ai()))}this.Hk(r)}},H_t.Hk=function(t){Wgt(this,t)},H_t.b=63;kB(CDt,"ESuperAdapter",1154);Xft(1155,1154,vzt,jv),H_t.Hk=function(t){aut(this,t)};kB(CDt,"EClassImpl/10",1155);Xft(1144,696,tNt),H_t.Vh=function(t,e){return fst(this,t,e)},H_t.Wh=function(t){return Irt(this,t)},H_t.Xh=function(t,e){Y8(this,t,e)},H_t.Yh=function(t){DX(this,t)},H_t.pi=function(t){return LZ(this,t)},H_t.mi=function(t,e){return HJ(this,t,e)},H_t.lk=function(t,e){throw um(new Rm)},H_t.Zh=function(){return new sO(this)},H_t.$h=function(){return new lO(this)},H_t._h=function(t){return d1(this,t)},H_t.mk=function(t,e){throw um(new Rm)},H_t.Wj=function(t){return this},H_t.fj=function(){return 0!=this.i},H_t.Wb=function(t){throw um(new Rm)},H_t.Xj=function(){throw um(new Rm)};kB(Nzt,"EcoreEList/UnmodifiableEList",1144);Xft(319,1144,tNt,HE),H_t.ni=function(){return!1};kB(Nzt,"EcoreEList/UnmodifiableEList/FastCompare",319);Xft(1147,319,tNt,m4),H_t.Xc=function(t){var e,n;if(CP(t,170)&&-1!=(e=ZR(t,170).aj()))for(n=this.i;e4){if(!this.wj(t))return!1;if(this.rk()){if(o=(e=(n=ZR(t,49)).Ug())==this.b&&(this.Dk()?n.Og(n.Vg(),ZR(CQ(CV(this.b),this.aj()).Yj(),26).Bj())==ert(ZR(CQ(CV(this.b),this.aj()),18)).n:-1-n.Vg()==this.aj()),this.Ek()&&!o&&!e&&n.Zg())for(r=0;r1||-1==n))},H_t.Dk=function(){var t;return!!CP(t=CQ(CV(this.b),this.aj()),99)&&!!ert(ZR(t,18))},H_t.Ek=function(){var t;return!!CP(t=CQ(CV(this.b),this.aj()),99)&&0!=(ZR(t,18).Bb&iMt)},H_t.Xc=function(t){var e,n,r;if((n=this.Qi(t))>=0)return n;if(this.Fk())for(e=0,r=this.Vi();e=0;--t)hxt(this,t,this.Oi(t));return this.Wi()},H_t.Qc=function(t){var e;if(this.Ek())for(e=this.Vi()-1;e>=0;--e)hxt(this,e,this.Oi(e));return this.Xi(t)},H_t.Xj=function(){Kbt(this)},H_t.oi=function(t,e){return OZ(this,0,e)};kB(Nzt,"DelegatingEcoreEList",742);Xft(1150,742,aNt,VI),H_t.Hi=function(t,e){!function(t,e,n){x7(e$(t.a),e,kG(n))}(this,t,ZR(e,26))},H_t.Ii=function(t){!function(t,e){fZ(e$(t.a),kG(e))}(this,ZR(t,26))},H_t.Oi=function(t){var e;return CP(e=ZR(a0(e$(this.a),t),87).c,88)?ZR(e,26):(N_t(),Loe)},H_t.Ti=function(t){var e;return CP(e=ZR(rgt(e$(this.a),t),87).c,88)?ZR(e,26):(N_t(),Loe)},H_t.Ui=function(t,e){return function(t,e,n){var r,i,a;return(0!=(64&(a=CP(i=(r=ZR(a0(e$(t.a),e),87)).c,88)?ZR(i,26):(N_t(),Loe)).Db)?S8(t.b,a):a)==n?Vmt(r):d0(r,n),a}(this,t,ZR(e,26))},H_t.ai=function(){return!1},H_t.Zi=function(t,e,n,r,i){return null},H_t.Ji=function(){return new Bv(this)},H_t.Ki=function(){qbt(e$(this.a))},H_t.Li=function(t){return o7(this,t)},H_t.Mi=function(t){var e;for(e=t.Kc();e.Ob();)if(!o7(this,e.Pb()))return!1;return!0},H_t.Ni=function(t){var e,n,r;if(CP(t,15)&&(r=ZR(t,15)).gc()==e$(this.a).i){for(e=r.Kc(),n=new WP(this);e.Ob();)if(rE(e.Pb())!==rE(fnt(n)))return!1;return!0}return!1},H_t.Pi=function(){var t,e,n,r;for(e=1,t=new WP(e$(this.a));t.e!=t.i.gc();)e=31*e+((n=CP(r=ZR(fnt(t),87).c,88)?ZR(r,26):(N_t(),Loe))?FL(n):0);return e},H_t.Qi=function(t){var e,n,r,i;for(r=0,n=new WP(e$(this.a));n.e!=n.i.gc();){if(e=ZR(fnt(n),87),rE(t)===rE(CP(i=e.c,88)?ZR(i,26):(N_t(),Loe)))return r;++r}return-1},H_t.Ri=function(){return 0==e$(this.a).i},H_t.Si=function(){return null},H_t.Vi=function(){return e$(this.a).i},H_t.Wi=function(){var t,e,n,r,i,a;for(a=e$(this.a).i,i=XK(Yjt,akt,1,a,5,1),n=0,e=new WP(e$(this.a));e.e!=e.i.gc();)t=ZR(fnt(e),87),i[n++]=CP(r=t.c,88)?ZR(r,26):(N_t(),Loe);return i},H_t.Xi=function(t){var e,n,r,i;for(i=e$(this.a).i,t.lengthi&&zB(t,i,null),n=0,e=new WP(e$(this.a));e.e!=e.i.gc();)zB(t,n++,CP(r=ZR(fnt(e),87).c,88)?ZR(r,26):(N_t(),Loe));return t},H_t.Yi=function(){var t,e,n,r,i;for((i=new Cx).a+="[",t=e$(this.a),e=0,r=e$(this.a).i;e>16)>=0?yit(this,n):this.Cb.ih(this,-1-r,null,n)),umt(this,t,6,n);case 9:return!this.a&&(this.a=new bF(coe,this,9,5)),ptt(this.a,t,n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),Toe),e),66).Nj().Qj(this,vet(this),e-yB((N_t(),Toe)),t,n)},H_t.jh=function(t,e,n){switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),Mnt(this.Ab,t,n);case 6:return umt(this,null,6,n);case 7:return!this.A&&(this.A=new XP(Uoe,this,7)),Mnt(this.A,t,n);case 9:return!this.a&&(this.a=new bF(coe,this,9,5)),Mnt(this.a,t,n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),Toe),e),66).Nj().Rj(this,vet(this),e-yB((N_t(),Toe)),t,n)},H_t.lh=function(t){switch(t){case 0:return!!this.Ab&&0!=this.Ab.i;case 1:return null!=this.zb;case 2:return null!=this.D&&this.D==this.F;case 3:return!!hit(this);case 4:return!!R6(this);case 5:return null!=this.F&&this.F!=this.D&&this.F!=this.B;case 6:return!!Uq(this);case 7:return!!this.A&&0!=this.A.i;case 8:return 0==(256&this.Bb);case 9:return!!this.a&&0!=this.a.i}return RY(this,t-yB((N_t(),Toe)),CQ(ZR(H3(this,16),26)||Toe,t))},H_t.sh=function(t,e){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),qbt(this.Ab),!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void _B(this.Ab,ZR(e,14));case 1:return void wG(this,hI(e));case 2:return void MC(this,hI(e));case 5:return void cxt(this,hI(e));case 7:return!this.A&&(this.A=new XP(Uoe,this,7)),qbt(this.A),!this.A&&(this.A=new XP(Uoe,this,7)),void _B(this.A,ZR(e,14));case 8:return void f7(this,tx(uI(e)));case 9:return!this.a&&(this.a=new bF(coe,this,9,5)),qbt(this.a),!this.a&&(this.a=new bF(coe,this,9,5)),void _B(this.a,ZR(e,14))}k9(this,t-yB((N_t(),Toe)),CQ(ZR(H3(this,16),26)||Toe,t),e)},H_t.zh=function(){return N_t(),Toe},H_t.Bh=function(t){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void qbt(this.Ab);case 1:return CP(this.Cb,179)&&(ZR(this.Cb,179).tb=null),void k2(this,null);case 2:return _6(this,null),void U0(this,this.D);case 5:return void cxt(this,null);case 7:return!this.A&&(this.A=new XP(Uoe,this,7)),void qbt(this.A);case 8:return void f7(this,!0);case 9:return!this.a&&(this.a=new bF(coe,this,9,5)),void qbt(this.a)}i7(this,t-yB((N_t(),Toe)),CQ(ZR(H3(this,16),26)||Toe,t))},H_t.Gh=function(){var t,e;if(this.a)for(t=0,e=this.a.i;t>16==5?ZR(this.Cb,671):null}return NZ(this,t-yB((N_t(),Moe)),CQ(ZR(H3(this,16),26)||Moe,t),e,n)},H_t.hh=function(t,e,n){var r;switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),ptt(this.Ab,t,n);case 5:return this.Cb&&(n=(r=this.Db>>16)>=0?eat(this,n):this.Cb.ih(this,-1-r,null,n)),umt(this,t,5,n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),Moe),e),66).Nj().Qj(this,vet(this),e-yB((N_t(),Moe)),t,n)},H_t.jh=function(t,e,n){switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),Mnt(this.Ab,t,n);case 5:return umt(this,null,5,n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),Moe),e),66).Nj().Rj(this,vet(this),e-yB((N_t(),Moe)),t,n)},H_t.lh=function(t){switch(t){case 0:return!!this.Ab&&0!=this.Ab.i;case 1:return null!=this.zb;case 2:return 0!=this.d;case 3:return!!this.b;case 4:return null!=this.c;case 5:return!(this.Db>>16!=5||!ZR(this.Cb,671))}return RY(this,t-yB((N_t(),Moe)),CQ(ZR(H3(this,16),26)||Moe,t))},H_t.sh=function(t,e){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),qbt(this.Ab),!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void _B(this.Ab,ZR(e,14));case 1:return void k2(this,hI(e));case 2:return void j0(this,ZR(e,19).a);case 3:return void fft(this,ZR(e,1940));case 4:return void B1(this,hI(e))}k9(this,t-yB((N_t(),Moe)),CQ(ZR(H3(this,16),26)||Moe,t),e)},H_t.zh=function(){return N_t(),Moe},H_t.Bh=function(t){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void qbt(this.Ab);case 1:return void k2(this,null);case 2:return void j0(this,0);case 3:return void fft(this,null);case 4:return void B1(this,null)}i7(this,t-yB((N_t(),Moe)),CQ(ZR(H3(this,16),26)||Moe,t))},H_t.Ib=function(){var t;return null==(t=this.c)?this.zb:t},H_t.b=null,H_t.c=null,H_t.d=0;kB(CDt,"EEnumLiteralImpl",573);var Xoe=oN(CDt,"EFactoryImpl/InternalEDateTimeFormat");Xft(489,1,{2015:1},Uv);var Koe;kB(CDt,"EFactoryImpl/1ClientInternalEDateTimeFormat",489);Xft(241,115,{105:1,92:1,90:1,87:1,56:1,108:1,49:1,97:1,241:1,114:1,115:1},sm),H_t.Sg=function(t,e,n){var r;return n=umt(this,t,e,n),this.e&&CP(t,170)&&(r=vdt(this,this.e))!=this.c&&(n=Yxt(this,r,n)),n},H_t._g=function(t,e,n){switch(t){case 0:return this.f;case 1:return!this.d&&(this.d=new YP(uoe,this,1)),this.d;case 2:return e?Vmt(this):this.c;case 3:return this.b;case 4:return this.e;case 5:return e?grt(this):this.a}return NZ(this,t-yB((N_t(),Soe)),CQ(ZR(H3(this,16),26)||Soe,t),e,n)},H_t.jh=function(t,e,n){switch(e){case 0:return A8(this,null,n);case 1:return!this.d&&(this.d=new YP(uoe,this,1)),Mnt(this.d,t,n);case 3:return M8(this,null,n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),Soe),e),66).Nj().Rj(this,vet(this),e-yB((N_t(),Soe)),t,n)},H_t.lh=function(t){switch(t){case 0:return!!this.f;case 1:return!!this.d&&0!=this.d.i;case 2:return!!this.c;case 3:return!!this.b;case 4:return!!this.e;case 5:return!!this.a}return RY(this,t-yB((N_t(),Soe)),CQ(ZR(H3(this,16),26)||Soe,t))},H_t.sh=function(t,e){switch(t){case 0:return void xot(this,ZR(e,87));case 1:return!this.d&&(this.d=new YP(uoe,this,1)),qbt(this.d),!this.d&&(this.d=new YP(uoe,this,1)),void _B(this.d,ZR(e,14));case 3:return void bot(this,ZR(e,87));case 4:return void $st(this,ZR(e,836));case 5:return void d0(this,ZR(e,138))}k9(this,t-yB((N_t(),Soe)),CQ(ZR(H3(this,16),26)||Soe,t),e)},H_t.zh=function(){return N_t(),Soe},H_t.Bh=function(t){switch(t){case 0:return void xot(this,null);case 1:return!this.d&&(this.d=new YP(uoe,this,1)),void qbt(this.d);case 3:return void bot(this,null);case 4:return void $st(this,null);case 5:return void d0(this,null)}i7(this,t-yB((N_t(),Soe)),CQ(ZR(H3(this,16),26)||Soe,t))},H_t.Ib=function(){var t;return(t=new AL(Fht(this))).a+=" (expression: ",vbt(this,t),t.a+=")",t.a};kB(CDt,"EGenericTypeImpl",241);Xft(1969,1964,oNt),H_t.Xh=function(t,e){zI(this,t,e)},H_t.lk=function(t,e){return zI(this,this.gc(),t),e},H_t.pi=function(t){return _nt(this.Gi(),t)},H_t.Zh=function(){return this.$h()},H_t.Gi=function(){return new Kv(this)},H_t.$h=function(){return this._h(0)},H_t._h=function(t){return this.Gi().Zc(t)},H_t.mk=function(t,e){return X9(this,t,!0),e},H_t.ii=function(t,e){var n;return n=Yit(this,e),this.Zc(t).Rb(n),n},H_t.ji=function(t,e){X9(this,e,!0),this.Zc(t).Rb(e)};var Zoe;kB(Nzt,"AbstractSequentialInternalEList",1969);Xft(486,1969,oNt,tO),H_t.pi=function(t){return _nt(this.Gi(),t)},H_t.Zh=function(){return null==this.b?(_T(),_T(),Joe):this.Jk()},H_t.Gi=function(){return new qE(this.a,this.b)},H_t.$h=function(){return null==this.b?(_T(),_T(),Joe):this.Jk()},H_t._h=function(t){var e,n;if(null==this.b){if(t<0||t>1)throw um(new Hb(bzt+t+", size=0"));return _T(),_T(),Joe}for(n=this.Jk(),e=0;e0;)if(e=this.c[--this.d],(!this.e||e.Gj()!=Gie||0!=e.aj())&&(!this.Mk()||this.b.mh(e)))if(a=this.b.bh(e,this.Lk()),this.f=(TT(),ZR(e,66).Oj()),this.f||e.$j()){if(this.Lk()?(r=ZR(a,15),this.k=r):(r=ZR(a,69),this.k=this.j=r),CP(this.k,54)?(this.o=this.k.gc(),this.n=this.o):this.p=this.j?this.j._h(this.k.gc()):this.k.Zc(this.k.gc()),this.p?fct(this,this.p):Wct(this))return i=this.p?this.p.Ub():this.j?this.j.pi(--this.n):this.k.Xb(--this.n),this.f?((t=ZR(i,72)).ak(),n=t.dd(),this.i=n):(n=i,this.i=n),this.g=-3,!0}else if(null!=a)return this.k=null,this.p=null,n=a,this.i=n,this.g=-2,!0;return this.k=null,this.p=null,this.g=-1,!1}},H_t.Pb=function(){return Y3(this)},H_t.Tb=function(){return this.a},H_t.Ub=function(){var t;if(this.g<-1||this.Sb())return--this.a,this.g=0,t=this.i,this.Sb(),t;throw um(new jm)},H_t.Vb=function(){return this.a-1},H_t.Qb=function(){throw um(new Rm)},H_t.Lk=function(){return!1},H_t.Wb=function(t){throw um(new Rm)},H_t.Mk=function(){return!0},H_t.a=0,H_t.d=0,H_t.f=!1,H_t.g=0,H_t.n=0,H_t.o=0;kB(Nzt,"EContentsEList/FeatureIteratorImpl",279);Xft(697,279,sNt,HO),H_t.Lk=function(){return!0};kB(Nzt,"EContentsEList/ResolvingFeatureIteratorImpl",697);Xft(1157,697,sNt,qO),H_t.Mk=function(){return!1};kB(CDt,"ENamedElementImpl/1/1",1157);Xft(1158,279,sNt,VO),H_t.Mk=function(){return!1};kB(CDt,"ENamedElementImpl/1/2",1158);Xft(36,143,yzt,o$,s$,mF,wZ,xJ,PX,$0,oW,X0,sW,SX,lW,J0,cW,EX,uW,K0,fW,yF,_Z,eV,Z0,hW,CX,dW),H_t._i=function(){return uZ(this)},H_t.gj=function(){var t;return(t=uZ(this))?t.zj():null},H_t.yi=function(t){return-1==this.b&&this.a&&(this.b=this.c.Xg(this.a.aj(),this.a.Gj())),this.c.Og(this.b,t)},H_t.Ai=function(){return this.c},H_t.hj=function(){var t;return!!(t=uZ(this))&&t.Kj()},H_t.b=-1;kB(CDt,"ENotificationImpl",36);Xft(399,284,{105:1,92:1,90:1,147:1,191:1,56:1,59:1,108:1,472:1,49:1,97:1,150:1,399:1,284:1,114:1,115:1},Gy),H_t.Qg=function(t){return uat(this,t)},H_t._g=function(t,e,n){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),this.Ab;case 1:return this.zb;case 2:return TL(),0!=(256&this.Bb);case 3:return TL(),0!=(512&this.Bb);case 4:return g7(this.s);case 5:return g7(this.t);case 6:return TL(),(r=this.t)>1||-1==r;case 7:return TL(),this.s>=1;case 8:return e?hat(this):this.r;case 9:return this.q;case 10:return this.Db>>16==10?ZR(this.Cb,26):null;case 11:return!this.d&&(this.d=new XP(Uoe,this,11)),this.d;case 12:return!this.c&&(this.c=new bF(hoe,this,12,10)),this.c;case 13:return!this.a&&(this.a=new qI(this,this)),this.a;case 14:return EJ(this)}return NZ(this,t-yB((N_t(),Ooe)),CQ(ZR(H3(this,16),26)||Ooe,t),e,n)},H_t.hh=function(t,e,n){var r;switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),ptt(this.Ab,t,n);case 10:return this.Cb&&(n=(r=this.Db>>16)>=0?uat(this,n):this.Cb.ih(this,-1-r,null,n)),umt(this,t,10,n);case 12:return!this.c&&(this.c=new bF(hoe,this,12,10)),ptt(this.c,t,n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),Ooe),e),66).Nj().Qj(this,vet(this),e-yB((N_t(),Ooe)),t,n)},H_t.jh=function(t,e,n){switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),Mnt(this.Ab,t,n);case 9:return wB(this,n);case 10:return umt(this,null,10,n);case 11:return!this.d&&(this.d=new XP(Uoe,this,11)),Mnt(this.d,t,n);case 12:return!this.c&&(this.c=new bF(hoe,this,12,10)),Mnt(this.c,t,n);case 14:return Mnt(EJ(this),t,n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),Ooe),e),66).Nj().Rj(this,vet(this),e-yB((N_t(),Ooe)),t,n)},H_t.lh=function(t){var e;switch(t){case 0:return!!this.Ab&&0!=this.Ab.i;case 1:return null!=this.zb;case 2:return 0==(256&this.Bb);case 3:return 0==(512&this.Bb);case 4:return 0!=this.s;case 5:return 1!=this.t;case 6:return(e=this.t)>1||-1==e;case 7:return this.s>=1;case 8:return!!this.r&&!this.q.e&&0==mU(this.q).i;case 9:return!!this.q&&!(this.r&&!this.q.e&&0==mU(this.q).i);case 10:return!(this.Db>>16!=10||!ZR(this.Cb,26));case 11:return!!this.d&&0!=this.d.i;case 12:return!!this.c&&0!=this.c.i;case 13:return!!this.a&&0!=EJ(this.a.a).i&&!(this.b&&frt(this.b));case 14:return!!this.b&&frt(this.b)}return RY(this,t-yB((N_t(),Ooe)),CQ(ZR(H3(this,16),26)||Ooe,t))},H_t.sh=function(t,e){var n;switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),qbt(this.Ab),!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void _B(this.Ab,ZR(e,14));case 1:return void k2(this,hI(e));case 2:return void c7(this,tx(uI(e)));case 3:return void h7(this,tx(uI(e)));case 4:return void F0(this,ZR(e,19).a);case 5:return void B0(this,ZR(e,19).a);case 8:return void o8(this,ZR(e,138));case 9:return void((n=hst(this,ZR(e,87),null))&&n.Fi());case 11:return!this.d&&(this.d=new XP(Uoe,this,11)),qbt(this.d),!this.d&&(this.d=new XP(Uoe,this,11)),void _B(this.d,ZR(e,14));case 12:return!this.c&&(this.c=new bF(hoe,this,12,10)),qbt(this.c),!this.c&&(this.c=new bF(hoe,this,12,10)),void _B(this.c,ZR(e,14));case 13:return!this.a&&(this.a=new qI(this,this)),Kbt(this.a),!this.a&&(this.a=new qI(this,this)),void _B(this.a,ZR(e,14));case 14:return qbt(EJ(this)),void _B(EJ(this),ZR(e,14))}k9(this,t-yB((N_t(),Ooe)),CQ(ZR(H3(this,16),26)||Ooe,t),e)},H_t.zh=function(){return N_t(),Ooe},H_t.Bh=function(t){var e;switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void qbt(this.Ab);case 1:return void k2(this,null);case 2:return void c7(this,!0);case 3:return void h7(this,!0);case 4:return void F0(this,0);case 5:return void B0(this,1);case 8:return void o8(this,null);case 9:return void((e=hst(this,null,null))&&e.Fi());case 11:return!this.d&&(this.d=new XP(Uoe,this,11)),void qbt(this.d);case 12:return!this.c&&(this.c=new bF(hoe,this,12,10)),void qbt(this.c);case 13:return void(this.a&&Kbt(this.a));case 14:return void(this.b&&qbt(this.b))}i7(this,t-yB((N_t(),Ooe)),CQ(ZR(H3(this,16),26)||Ooe,t))},H_t.Gh=function(){var t,e;if(this.c)for(t=0,e=this.c.i;tr&&zB(t,r,null),n=0,e=new WP(EJ(this.a));e.e!=e.i.gc();)zB(t,n++,ZR(fnt(e),87).c||(N_t(),Eoe));return t},H_t.Yi=function(){var t,e,n,r;for((r=new Cx).a+="[",t=EJ(this.a),e=0,n=EJ(this.a).i;e1);case 5:return Gq(this,t,e,n,r,this.i-ZR(n,15).gc()>0);default:return new xJ(this.e,t,this.c,e,n,r,!0)}},H_t.ij=function(){return!0},H_t.fj=function(){return frt(this)},H_t.Xj=function(){qbt(this)};kB(CDt,"EOperationImpl/2",1341);Xft(498,1,{1938:1,498:1},qS);kB(CDt,"EPackageImpl/1",498);Xft(16,85,tNt,bF),H_t.zk=function(){return this.d},H_t.Ak=function(){return this.b},H_t.Dk=function(){return!0},H_t.b=0;kB(Nzt,"EObjectContainmentWithInverseEList",16);Xft(353,16,tNt,kD),H_t.Ek=function(){return!0},H_t.li=function(t,e){return Ift(this,t,ZR(e,56))};kB(Nzt,"EObjectContainmentWithInverseEList/Resolving",353);Xft(298,353,tNt,gF),H_t.ci=function(){this.a.tb=null};kB(CDt,"EPackageImpl/2",298);Xft(1228,1,{},Pl);kB(CDt,"EPackageImpl/3",1228);Xft(718,43,yMt,Yy),H_t._b=function(t){return oE(t)?uV(this,t):!!zV(this.f,t)};kB(CDt,"EPackageRegistryImpl",718);Xft(509,284,{105:1,92:1,90:1,147:1,191:1,56:1,2017:1,108:1,472:1,49:1,97:1,150:1,509:1,284:1,114:1,115:1},Wy),H_t.Qg=function(t){return fat(this,t)},H_t._g=function(t,e,n){var r;switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),this.Ab;case 1:return this.zb;case 2:return TL(),0!=(256&this.Bb);case 3:return TL(),0!=(512&this.Bb);case 4:return g7(this.s);case 5:return g7(this.t);case 6:return TL(),(r=this.t)>1||-1==r;case 7:return TL(),this.s>=1;case 8:return e?hat(this):this.r;case 9:return this.q;case 10:return this.Db>>16==10?ZR(this.Cb,59):null}return NZ(this,t-yB((N_t(),Roe)),CQ(ZR(H3(this,16),26)||Roe,t),e,n)},H_t.hh=function(t,e,n){var r;switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),ptt(this.Ab,t,n);case 10:return this.Cb&&(n=(r=this.Db>>16)>=0?fat(this,n):this.Cb.ih(this,-1-r,null,n)),umt(this,t,10,n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),Roe),e),66).Nj().Qj(this,vet(this),e-yB((N_t(),Roe)),t,n)},H_t.jh=function(t,e,n){switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),Mnt(this.Ab,t,n);case 9:return wB(this,n);case 10:return umt(this,null,10,n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),Roe),e),66).Nj().Rj(this,vet(this),e-yB((N_t(),Roe)),t,n)},H_t.lh=function(t){var e;switch(t){case 0:return!!this.Ab&&0!=this.Ab.i;case 1:return null!=this.zb;case 2:return 0==(256&this.Bb);case 3:return 0==(512&this.Bb);case 4:return 0!=this.s;case 5:return 1!=this.t;case 6:return(e=this.t)>1||-1==e;case 7:return this.s>=1;case 8:return!!this.r&&!this.q.e&&0==mU(this.q).i;case 9:return!!this.q&&!(this.r&&!this.q.e&&0==mU(this.q).i);case 10:return!(this.Db>>16!=10||!ZR(this.Cb,59))}return RY(this,t-yB((N_t(),Roe)),CQ(ZR(H3(this,16),26)||Roe,t))},H_t.zh=function(){return N_t(),Roe};kB(CDt,"EParameterImpl",509);Xft(99,449,{105:1,92:1,90:1,147:1,191:1,56:1,18:1,170:1,66:1,108:1,472:1,49:1,97:1,150:1,99:1,449:1,284:1,114:1,115:1,677:1},aI),H_t._g=function(t,e,n){var r,i;switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),this.Ab;case 1:return this.zb;case 2:return TL(),0!=(256&this.Bb);case 3:return TL(),0!=(512&this.Bb);case 4:return g7(this.s);case 5:return g7(this.t);case 6:return TL(),(i=this.t)>1||-1==i;case 7:return TL(),this.s>=1;case 8:return e?hat(this):this.r;case 9:return this.q;case 10:return TL(),0!=(this.Bb&jDt);case 11:return TL(),0!=(this.Bb&Hzt);case 12:return TL(),0!=(this.Bb&nMt);case 13:return this.j;case 14:return Cdt(this);case 15:return TL(),0!=(this.Bb&Uzt);case 16:return TL(),0!=(this.Bb&Skt);case 17:return Hq(this);case 18:return TL(),0!=(this.Bb&SDt);case 19:return TL(),!(!(r=ert(this))||0==(r.Bb&SDt));case 20:return TL(),0!=(this.Bb&iMt);case 21:return e?ert(this):this.b;case 22:return e?P4(this):gX(this);case 23:return!this.a&&(this.a=new JP(roe,this,23)),this.a}return NZ(this,t-yB((N_t(),zoe)),CQ(ZR(H3(this,16),26)||zoe,t),e,n)},H_t.lh=function(t){var e,n;switch(t){case 0:return!!this.Ab&&0!=this.Ab.i;case 1:return null!=this.zb;case 2:return 0==(256&this.Bb);case 3:return 0==(512&this.Bb);case 4:return 0!=this.s;case 5:return 1!=this.t;case 6:return(n=this.t)>1||-1==n;case 7:return this.s>=1;case 8:return!!this.r&&!this.q.e&&0==mU(this.q).i;case 9:return!!this.q&&!(this.r&&!this.q.e&&0==mU(this.q).i);case 10:return 0==(this.Bb&jDt);case 11:return 0!=(this.Bb&Hzt);case 12:return 0!=(this.Bb&nMt);case 13:return null!=this.j;case 14:return null!=Cdt(this);case 15:return 0!=(this.Bb&Uzt);case 16:return 0!=(this.Bb&Skt);case 17:return!!Hq(this);case 18:return 0!=(this.Bb&SDt);case 19:return!!(e=ert(this))&&0!=(e.Bb&SDt);case 20:return 0==(this.Bb&iMt);case 21:return!!this.b;case 22:return!!gX(this);case 23:return!!this.a&&0!=this.a.i}return RY(this,t-yB((N_t(),zoe)),CQ(ZR(H3(this,16),26)||zoe,t))},H_t.sh=function(t,e){var n;switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),qbt(this.Ab),!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void _B(this.Ab,ZR(e,14));case 1:return void xG(this,hI(e));case 2:return void c7(this,tx(uI(e)));case 3:return void h7(this,tx(uI(e)));case 4:return void F0(this,ZR(e,19).a);case 5:return void B0(this,ZR(e,19).a);case 8:return void o8(this,ZR(e,138));case 9:return void((n=hst(this,ZR(e,87),null))&&n.Fi());case 10:return void R7(this,tx(uI(e)));case 11:return void j7(this,tx(uI(e)));case 12:return void z7(this,tx(uI(e)));case 13:return void QS(this,hI(e));case 15:return void N7(this,tx(uI(e)));case 16:return void H7(this,tx(uI(e)));case 18:return void function(t,e){q7(t,e),CP(t.Cb,88)&&aut(dX(ZR(t.Cb,88)),2)}(this,tx(uI(e)));case 20:return void G7(this,tx(uI(e)));case 21:return void K1(this,ZR(e,18));case 23:return!this.a&&(this.a=new JP(roe,this,23)),qbt(this.a),!this.a&&(this.a=new JP(roe,this,23)),void _B(this.a,ZR(e,14))}k9(this,t-yB((N_t(),zoe)),CQ(ZR(H3(this,16),26)||zoe,t),e)},H_t.zh=function(){return N_t(),zoe},H_t.Bh=function(t){var e;switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void qbt(this.Ab);case 1:return CP(this.Cb,88)&&aut(dX(ZR(this.Cb,88)),4),void k2(this,null);case 2:return void c7(this,!0);case 3:return void h7(this,!0);case 4:return void F0(this,0);case 5:return void B0(this,1);case 8:return void o8(this,null);case 9:return void((e=hst(this,null,null))&&e.Fi());case 10:return void R7(this,!0);case 11:return void j7(this,!1);case 12:return void z7(this,!1);case 13:return this.i=null,void J1(this,null);case 15:return void N7(this,!1);case 16:return void H7(this,!1);case 18:return q7(this,!1),void(CP(this.Cb,88)&&aut(dX(ZR(this.Cb,88)),2));case 20:return void G7(this,!0);case 21:return void K1(this,null);case 23:return!this.a&&(this.a=new JP(roe,this,23)),void qbt(this.a)}i7(this,t-yB((N_t(),zoe)),CQ(ZR(H3(this,16),26)||zoe,t))},H_t.Gh=function(){P4(this),tH(SJ((gct(),vse),this)),hat(this),this.Bb|=1},H_t.Lj=function(){return ert(this)},H_t.qk=function(){var t;return!!(t=ert(this))&&0!=(t.Bb&SDt)},H_t.rk=function(){return 0!=(this.Bb&SDt)},H_t.sk=function(){return 0!=(this.Bb&iMt)},H_t.nk=function(t,e){return this.c=null,G8(this,t,e)},H_t.Ib=function(){var t;return 0!=(64&this.Db)?Jgt(this):((t=new ML(Jgt(this))).a+=" (containment: ",t_(t,0!=(this.Bb&SDt)),t.a+=", resolveProxies: ",t_(t,0!=(this.Bb&iMt)),t.a+=")",t.a)};kB(CDt,"EReferenceImpl",99);Xft(548,115,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1,548:1,114:1,115:1},Ll),H_t.Fb=function(t){return this===t},H_t.cd=function(){return this.b},H_t.dd=function(){return this.c},H_t.Hb=function(){return FL(this)},H_t.Uh=function(t){!function(t,e){N1(t,null==e?null:(yU(e),e))}(this,hI(t))},H_t.ed=function(t){return function(t,e){var n;return n=t.c,j1(t,e),n}(this,hI(t))},H_t._g=function(t,e,n){switch(t){case 0:return this.b;case 1:return this.c}return NZ(this,t-yB((N_t(),Noe)),CQ(ZR(H3(this,16),26)||Noe,t),e,n)},H_t.lh=function(t){switch(t){case 0:return null!=this.b;case 1:return null!=this.c}return RY(this,t-yB((N_t(),Noe)),CQ(ZR(H3(this,16),26)||Noe,t))},H_t.sh=function(t,e){switch(t){case 0:return void function(t,e){N1(t,null==e?null:(yU(e),e))}(this,hI(e));case 1:return void j1(this,hI(e))}k9(this,t-yB((N_t(),Noe)),CQ(ZR(H3(this,16),26)||Noe,t),e)},H_t.zh=function(){return N_t(),Noe},H_t.Bh=function(t){switch(t){case 0:return void N1(this,null);case 1:return void j1(this,null)}i7(this,t-yB((N_t(),Noe)),CQ(ZR(H3(this,16),26)||Noe,t))},H_t.Sh=function(){var t;return-1==this.a&&(t=this.b,this.a=null==t?0:$nt(t)),this.a},H_t.Th=function(t){this.a=t},H_t.Ib=function(){var t;return 0!=(64&this.Db)?Fht(this):((t=new ML(Fht(this))).a+=" (key: ",mE(t,this.b),t.a+=", value: ",mE(t,this.c),t.a+=")",t.a)},H_t.a=-1,H_t.b=null,H_t.c=null;var Qoe=kB(CDt,"EStringToStringMapEntryImpl",548),tse=oN(Nzt,"FeatureMap/Entry/Internal");Xft(565,1,lNt),H_t.Ok=function(t){return this.Pk(ZR(t,49))},H_t.Pk=function(t){return this.Ok(t)},H_t.Fb=function(t){var e,n;return this===t||!!CP(t,72)&&((e=ZR(t,72)).ak()==this.c&&(null==(n=this.dd())?null==e.dd():K8(n,e.dd())))},H_t.ak=function(){return this.c},H_t.Hb=function(){var t;return t=this.dd(),$4(this.c)^(null==t?0:$4(t))},H_t.Ib=function(){var t,e;return e=r0((t=this.c).Hj()).Ph(),t.ne(),(null!=e&&0!=e.length?e+":"+t.ne():t.ne())+"="+this.dd()};kB(CDt,"EStructuralFeatureImpl/BasicFeatureMapEntry",565);Xft(776,565,lNt,BI),H_t.Pk=function(t){return new BI(this.c,t)},H_t.dd=function(){return this.a},H_t.Qk=function(t,e,n){return function(t,e,n,r,i){var a;return n&&(a=ett(e.Tg(),t.c),i=n.gh(e,-1-(-1==a?r:a),null,i)),i}(this,t,this.a,e,n)},H_t.Rk=function(t,e,n){return function(t,e,n,r,i){var a;return n&&(a=ett(e.Tg(),t.c),i=n.ih(e,-1-(-1==a?r:a),null,i)),i}(this,t,this.a,e,n)};kB(CDt,"EStructuralFeatureImpl/ContainmentUpdatingFeatureMapEntry",776);Xft(1314,1,{},GS),H_t.Pj=function(t,e,n,r,i){return ZR(TZ(t,this.b),215).nl(this.a).Wj(r)},H_t.Qj=function(t,e,n,r,i){return ZR(TZ(t,this.b),215).el(this.a,r,i)},H_t.Rj=function(t,e,n,r,i){return ZR(TZ(t,this.b),215).fl(this.a,r,i)},H_t.Sj=function(t,e,n){return ZR(TZ(t,this.b),215).nl(this.a).fj()},H_t.Tj=function(t,e,n,r){ZR(TZ(t,this.b),215).nl(this.a).Wb(r)},H_t.Uj=function(t,e,n){return ZR(TZ(t,this.b),215).nl(this.a)},H_t.Vj=function(t,e,n){ZR(TZ(t,this.b),215).nl(this.a).Xj()};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateFeatureMapDelegator",1314);Xft(89,1,{},FR,IH,HV,c$),H_t.Pj=function(t,e,n,r,i){var a;if(null==(a=e.Ch(n))&&e.Dh(n,a=S_t(this,t)),!i)switch(this.e){case 50:case 41:return ZR(a,589).sj();case 40:return ZR(a,215).kl()}return a},H_t.Qj=function(t,e,n,r,i){var a;return null==(a=e.Ch(n))&&e.Dh(n,a=S_t(this,t)),ZR(a,69).lk(r,i)},H_t.Rj=function(t,e,n,r,i){var a;return null!=(a=e.Ch(n))&&(i=ZR(a,69).mk(r,i)),i},H_t.Sj=function(t,e,n){var r;return null!=(r=e.Ch(n))&&ZR(r,76).fj()},H_t.Tj=function(t,e,n,r){var i;!(i=ZR(e.Ch(n),76))&&e.Dh(n,i=S_t(this,t)),i.Wb(r)},H_t.Uj=function(t,e,n){var r;return null==(r=e.Ch(n))&&e.Dh(n,r=S_t(this,t)),CP(r,76)?ZR(r,76):new Wv(ZR(e.Ch(n),15))},H_t.Vj=function(t,e,n){var r;!(r=ZR(e.Ch(n),76))&&e.Dh(n,r=S_t(this,t)),r.Xj()},H_t.b=0,H_t.e=0;var ese;kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateMany",89);Xft(504,1,{}),H_t.Qj=function(t,e,n,r,i){throw um(new Rm)},H_t.Rj=function(t,e,n,r,i){throw um(new Rm)},H_t.Uj=function(t,e,n){return new DH(this,t,e,n)};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingle",504);Xft(1331,1,jzt,DH),H_t.Wj=function(t){return this.a.Pj(this.c,this.d,this.b,t,!0)},H_t.fj=function(){return this.a.Sj(this.c,this.d,this.b)},H_t.Wb=function(t){this.a.Tj(this.c,this.d,this.b,t)},H_t.Xj=function(){this.a.Vj(this.c,this.d,this.b)},H_t.b=0;kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingle/1",1331);Xft(769,504,{},eq),H_t.Pj=function(t,e,n,r,i){return Pvt(t,t.eh(),t.Vg())==this.b?this.sk()&&r?Hft(t):t.eh():null},H_t.Qj=function(t,e,n,r,i){var a,o;return t.eh()&&(i=(a=t.Vg())>=0?t.Qg(i):t.eh().ih(t,-1-a,null,i)),o=ett(t.Tg(),this.e),t.Sg(r,o,i)},H_t.Rj=function(t,e,n,r,i){var a;return a=ett(t.Tg(),this.e),t.Sg(null,a,i)},H_t.Sj=function(t,e,n){var r;return r=ett(t.Tg(),this.e),!!t.eh()&&t.Vg()==r},H_t.Tj=function(t,e,n,r){var i,a,o,s,l;if(null!=r&&!Qmt(this.a,r))throw um(new Xb(cNt+(CP(r,56)?mot(ZR(r,56).Tg()):IQ(X4(r)))+uNt+this.a+"'"));if(i=t.eh(),o=ett(t.Tg(),this.e),rE(r)!==rE(i)||t.Vg()!=o&&null!=r){if(oat(t,ZR(r,56)))throw um(new Kb(LDt+t.Ib()));l=null,i&&(l=(a=t.Vg())>=0?t.Qg(l):t.eh().ih(t,-1-a,null,l)),(s=ZR(r,49))&&(l=s.gh(t,ett(s.Tg(),this.b),null,l)),(l=t.Sg(s,o,l))&&l.Fi()}else t.Lg()&&t.Mg()&&j3(t,new mF(t,1,o,r,r))},H_t.Vj=function(t,e,n){var r,i,a;t.eh()?(a=(r=t.Vg())>=0?t.Qg(null):t.eh().ih(t,-1-r,null,null),i=ett(t.Tg(),this.e),(a=t.Sg(null,i,a))&&a.Fi()):t.Lg()&&t.Mg()&&j3(t,new yF(t,1,this.e,null,null))},H_t.sk=function(){return!1};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleContainer",769);Xft(1315,769,{},BR),H_t.sk=function(){return!0};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleContainerResolving",1315);Xft(563,504,{}),H_t.Pj=function(t,e,n,r,i){var a;return null==(a=e.Ch(n))?this.b:rE(a)===rE(ese)?null:a},H_t.Sj=function(t,e,n){var r;return null!=(r=e.Ch(n))&&(rE(r)===rE(ese)||!K8(r,this.b))},H_t.Tj=function(t,e,n,r){var i,a;t.Lg()&&t.Mg()?(i=null==(a=e.Ch(n))?this.b:rE(a)===rE(ese)?null:a,null==r?null!=this.c?(e.Dh(n,null),r=this.b):null!=this.b?e.Dh(n,ese):e.Dh(n,null):(this.Sk(r),e.Dh(n,r)),j3(t,this.d.Tk(t,1,this.e,i,r))):null==r?null!=this.c?e.Dh(n,null):null!=this.b?e.Dh(n,ese):e.Dh(n,null):(this.Sk(r),e.Dh(n,r))},H_t.Vj=function(t,e,n){var r,i;t.Lg()&&t.Mg()?(r=null==(i=e.Ch(n))?this.b:rE(i)===rE(ese)?null:i,e.Eh(n),j3(t,this.d.Tk(t,1,this.e,r,this.b))):e.Eh(n)},H_t.Sk=function(t){throw um(new Lm)};var nse,rse,ise,ase,ose,sse,lse,cse,use;kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData",563);Xft(fNt,1,{},Ol),H_t.Tk=function(t,e,n,r,i){return new yF(t,e,n,r,i)},H_t.Uk=function(t,e,n,r,i,a){return new eV(t,e,n,r,i,a)};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator",fNt);Xft(1332,fNt,{},Il),H_t.Tk=function(t,e,n,r,i){return new CX(t,e,n,tx(uI(r)),tx(uI(i)))},H_t.Uk=function(t,e,n,r,i,a){return new dW(t,e,n,tx(uI(r)),tx(uI(i)),a)};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/1",1332);Xft(1333,fNt,{},Dl),H_t.Tk=function(t,e,n,r,i){return new $0(t,e,n,ZR(r,217).a,ZR(i,217).a)},H_t.Uk=function(t,e,n,r,i,a){return new oW(t,e,n,ZR(r,217).a,ZR(i,217).a,a)};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/2",1333);Xft(1334,fNt,{},Rl),H_t.Tk=function(t,e,n,r,i){return new X0(t,e,n,ZR(r,172).a,ZR(i,172).a)},H_t.Uk=function(t,e,n,r,i,a){return new sW(t,e,n,ZR(r,172).a,ZR(i,172).a,a)};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/3",1334);Xft(1335,fNt,{},zl),H_t.Tk=function(t,e,n,r,i){return new SX(t,e,n,ex(fI(r)),ex(fI(i)))},H_t.Uk=function(t,e,n,r,i,a){return new lW(t,e,n,ex(fI(r)),ex(fI(i)),a)};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/4",1335);Xft(1336,fNt,{},Nl),H_t.Tk=function(t,e,n,r,i){return new J0(t,e,n,ZR(r,155).a,ZR(i,155).a)},H_t.Uk=function(t,e,n,r,i,a){return new cW(t,e,n,ZR(r,155).a,ZR(i,155).a,a)};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/5",1336);Xft(1337,fNt,{},jl),H_t.Tk=function(t,e,n,r,i){return new EX(t,e,n,ZR(r,19).a,ZR(i,19).a)},H_t.Uk=function(t,e,n,r,i,a){return new uW(t,e,n,ZR(r,19).a,ZR(i,19).a,a)};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/6",1337);Xft(1338,fNt,{},Fl),H_t.Tk=function(t,e,n,r,i){return new K0(t,e,n,ZR(r,162).a,ZR(i,162).a)},H_t.Uk=function(t,e,n,r,i,a){return new fW(t,e,n,ZR(r,162).a,ZR(i,162).a,a)};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/7",1338);Xft(1339,fNt,{},Bl),H_t.Tk=function(t,e,n,r,i){return new Z0(t,e,n,ZR(r,184).a,ZR(i,184).a)},H_t.Uk=function(t,e,n,r,i,a){return new hW(t,e,n,ZR(r,184).a,ZR(i,184).a,a)};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/8",1339);Xft(1317,563,{},RH),H_t.Sk=function(t){if(!this.a.wj(t))throw um(new Xb(cNt+X4(t)+uNt+this.a+"'"))};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataDynamic",1317);Xft(1318,563,{},Mj),H_t.Sk=function(t){};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataStatic",1318);Xft(770,563,{}),H_t.Sj=function(t,e,n){return null!=e.Ch(n)},H_t.Tj=function(t,e,n,r){var i,a;t.Lg()&&t.Mg()?(i=!0,null==(a=e.Ch(n))?(i=!1,a=this.b):rE(a)===rE(ese)&&(a=null),null==r?null!=this.c?(e.Dh(n,null),r=this.b):e.Dh(n,ese):(this.Sk(r),e.Dh(n,r)),j3(t,this.d.Uk(t,1,this.e,a,r,!i))):null==r?null!=this.c?e.Dh(n,null):e.Dh(n,ese):(this.Sk(r),e.Dh(n,r))},H_t.Vj=function(t,e,n){var r,i;t.Lg()&&t.Mg()?(r=!0,null==(i=e.Ch(n))?(r=!1,i=this.b):rE(i)===rE(ese)&&(i=null),e.Eh(n),j3(t,this.d.Uk(t,2,this.e,i,this.b,r))):e.Eh(n)};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettable",770);Xft(1319,770,{},zH),H_t.Sk=function(t){if(!this.a.wj(t))throw um(new Xb(cNt+X4(t)+uNt+this.a+"'"))};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableDynamic",1319);Xft(1320,770,{},Aj),H_t.Sk=function(t){};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableStatic",1320);Xft(398,504,{},jN),H_t.Pj=function(t,e,n,r,i){var a,o,s,l,c;if(c=e.Ch(n),this.Kj()&&rE(c)===rE(ese))return null;if(this.sk()&&r&&null!=c){if((s=ZR(c,49)).kh()&&s!=(l=S8(t,s))){if(!Qmt(this.a,l))throw um(new Xb(cNt+X4(l)+uNt+this.a+"'"));e.Dh(n,c=l),this.rk()&&(a=ZR(l,49),o=s.ih(t,this.b?ett(s.Tg(),this.b):-1-ett(t.Tg(),this.e),null,null),!a.eh()&&(o=a.gh(t,this.b?ett(a.Tg(),this.b):-1-ett(t.Tg(),this.e),null,o)),o&&o.Fi()),t.Lg()&&t.Mg()&&j3(t,new yF(t,9,this.e,s,l))}return c}return c},H_t.Qj=function(t,e,n,r,i){var a,o;return rE(o=e.Ch(n))===rE(ese)&&(o=null),e.Dh(n,r),this.bj()?rE(o)!==rE(r)&&null!=o&&(i=(a=ZR(o,49)).ih(t,ett(a.Tg(),this.b),null,i)):this.rk()&&null!=o&&(i=ZR(o,49).ih(t,-1-ett(t.Tg(),this.e),null,i)),t.Lg()&&t.Mg()&&(!i&&(i=new kw(4)),i.Ei(new yF(t,1,this.e,o,r))),i},H_t.Rj=function(t,e,n,r,i){var a;return rE(a=e.Ch(n))===rE(ese)&&(a=null),e.Eh(n),t.Lg()&&t.Mg()&&(!i&&(i=new kw(4)),this.Kj()?i.Ei(new yF(t,2,this.e,a,null)):i.Ei(new yF(t,1,this.e,a,null))),i},H_t.Sj=function(t,e,n){return null!=e.Ch(n)},H_t.Tj=function(t,e,n,r){var i,a,o,s,l;if(null!=r&&!Qmt(this.a,r))throw um(new Xb(cNt+(CP(r,56)?mot(ZR(r,56).Tg()):IQ(X4(r)))+uNt+this.a+"'"));s=null!=(l=e.Ch(n)),this.Kj()&&rE(l)===rE(ese)&&(l=null),o=null,this.bj()?rE(l)!==rE(r)&&(null!=l&&(o=(i=ZR(l,49)).ih(t,ett(i.Tg(),this.b),null,o)),null!=r&&(o=(i=ZR(r,49)).gh(t,ett(i.Tg(),this.b),null,o))):this.rk()&&rE(l)!==rE(r)&&(null!=l&&(o=ZR(l,49).ih(t,-1-ett(t.Tg(),this.e),null,o)),null!=r&&(o=ZR(r,49).gh(t,-1-ett(t.Tg(),this.e),null,o))),null==r&&this.Kj()?e.Dh(n,ese):e.Dh(n,r),t.Lg()&&t.Mg()?(a=new eV(t,1,this.e,l,r,this.Kj()&&!s),o?(o.Ei(a),o.Fi()):j3(t,a)):o&&o.Fi()},H_t.Vj=function(t,e,n){var r,i,a,o,s;o=null!=(s=e.Ch(n)),this.Kj()&&rE(s)===rE(ese)&&(s=null),a=null,null!=s&&(this.bj()?a=(r=ZR(s,49)).ih(t,ett(r.Tg(),this.b),null,a):this.rk()&&(a=ZR(s,49).ih(t,-1-ett(t.Tg(),this.e),null,a))),e.Eh(n),t.Lg()&&t.Mg()?(i=new eV(t,this.Kj()?2:1,this.e,s,null,o),a?(a.Ei(i),a.Fi()):j3(t,i)):a&&a.Fi()},H_t.bj=function(){return!1},H_t.rk=function(){return!1},H_t.sk=function(){return!1},H_t.Kj=function(){return!1};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObject",398);Xft(564,398,{},WO),H_t.rk=function(){return!0};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainment",564);Xft(1323,564,{},YO),H_t.sk=function(){return!0};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentResolving",1323);Xft(772,564,{},$O),H_t.Kj=function(){return!0};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettable",772);Xft(1325,772,{},XO),H_t.sk=function(){return!0};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettableResolving",1325);Xft(640,564,{},UR),H_t.bj=function(){return!0};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverse",640);Xft(1324,640,{},qR),H_t.sk=function(){return!0};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseResolving",1324);Xft(773,640,{},GR),H_t.Kj=function(){return!0};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettable",773);Xft(1326,773,{},WR),H_t.sk=function(){return!0};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettableResolving",1326);Xft(641,398,{},KO),H_t.sk=function(){return!0};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolving",641);Xft(1327,641,{},ZO),H_t.Kj=function(){return!0};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingUnsettable",1327);Xft(774,641,{},HR),H_t.bj=function(){return!0};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverse",774);Xft(1328,774,{},YR),H_t.Kj=function(){return!0};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverseUnsettable",1328);Xft(1321,398,{},JO),H_t.Kj=function(){return!0};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectUnsettable",1321);Xft(771,398,{},VR),H_t.bj=function(){return!0};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverse",771);Xft(1322,771,{},$R),H_t.Kj=function(){return!0};kB(CDt,"EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverseUnsettable",1322);Xft(775,565,lNt,aU),H_t.Pk=function(t){return new aU(this.a,this.c,t)},H_t.dd=function(){return this.b},H_t.Qk=function(t,e,n){return function(t,e,n,r){return n&&(r=n.gh(e,ett(n.Tg(),t.c.Lj()),null,r)),r}(this,t,this.b,n)},H_t.Rk=function(t,e,n){return function(t,e,n,r){return n&&(r=n.ih(e,ett(n.Tg(),t.c.Lj()),null,r)),r}(this,t,this.b,n)};kB(CDt,"EStructuralFeatureImpl/InverseUpdatingFeatureMapEntry",775);Xft(1329,1,jzt,Wv),H_t.Wj=function(t){return this.a},H_t.fj=function(){return CP(this.a,95)?ZR(this.a,95).fj():!this.a.dc()},H_t.Wb=function(t){this.a.$b(),this.a.Gc(ZR(t,15))},H_t.Xj=function(){CP(this.a,95)?ZR(this.a,95).Xj():this.a.$b()};kB(CDt,"EStructuralFeatureImpl/SettingMany",1329);Xft(1330,565,lNt,f$),H_t.Ok=function(t){return new UI((lxt(),nle),this.b.Ih(this.a,t))},H_t.dd=function(){return null},H_t.Qk=function(t,e,n){return n},H_t.Rk=function(t,e,n){return n};kB(CDt,"EStructuralFeatureImpl/SimpleContentFeatureMapEntry",1330);Xft(642,565,lNt,UI),H_t.Ok=function(t){return new UI(this.c,t)},H_t.dd=function(){return this.a},H_t.Qk=function(t,e,n){return n},H_t.Rk=function(t,e,n){return n};kB(CDt,"EStructuralFeatureImpl/SimpleFeatureMapEntry",642);Xft(391,497,SRt,Ul),H_t.ri=function(t){return XK(aoe,akt,26,t,0,1)},H_t.ni=function(){return!1};kB(CDt,"ESuperAdapter/1",391);Xft(444,438,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,836:1,49:1,97:1,150:1,444:1,114:1,115:1},Hl),H_t._g=function(t,e,n){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),this.Ab;case 1:return this.zb;case 2:return!this.a&&(this.a=new FN(this,uoe,this)),this.a}return NZ(this,t-yB((N_t(),Boe)),CQ(ZR(H3(this,16),26)||Boe,t),e,n)},H_t.jh=function(t,e,n){switch(e){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),Mnt(this.Ab,t,n);case 2:return!this.a&&(this.a=new FN(this,uoe,this)),Mnt(this.a,t,n)}return ZR(CQ(ZR(H3(this,16),26)||(N_t(),Boe),e),66).Nj().Rj(this,vet(this),e-yB((N_t(),Boe)),t,n)},H_t.lh=function(t){switch(t){case 0:return!!this.Ab&&0!=this.Ab.i;case 1:return null!=this.zb;case 2:return!!this.a&&0!=this.a.i}return RY(this,t-yB((N_t(),Boe)),CQ(ZR(H3(this,16),26)||Boe,t))},H_t.sh=function(t,e){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),qbt(this.Ab),!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void _B(this.Ab,ZR(e,14));case 1:return void k2(this,hI(e));case 2:return!this.a&&(this.a=new FN(this,uoe,this)),qbt(this.a),!this.a&&(this.a=new FN(this,uoe,this)),void _B(this.a,ZR(e,14))}k9(this,t-yB((N_t(),Boe)),CQ(ZR(H3(this,16),26)||Boe,t),e)},H_t.zh=function(){return N_t(),Boe},H_t.Bh=function(t){switch(t){case 0:return!this.Ab&&(this.Ab=new bF(toe,this,0,3)),void qbt(this.Ab);case 1:return void k2(this,null);case 2:return!this.a&&(this.a=new FN(this,uoe,this)),void qbt(this.a)}i7(this,t-yB((N_t(),Boe)),CQ(ZR(H3(this,16),26)||Boe,t))};kB(CDt,"ETypeParameterImpl",444);Xft(445,85,tNt,FN),H_t.cj=function(t,e){return function(t,e,n){var r,i;for(n=xnt(e,t.e,-1-t.c,n),i=new $v(new e6(new Kh(kU(t.a).a).a));i.a.b;)n=Yxt(r=ZR(c0(i.a).cd(),87),vdt(r,t.a),n);return n}(this,ZR(t,87),e)},H_t.dj=function(t,e){return function(t,e,n){var r,i;for(n=WV(e,t.e,-1-t.c,n),i=new $v(new e6(new Kh(kU(t.a).a).a));i.a.b;)n=Yxt(r=ZR(c0(i.a).cd(),87),vdt(r,t.a),n);return n}(this,ZR(t,87),e)};kB(CDt,"ETypeParameterImpl/1",445);Xft(634,43,yMt,$y),H_t.ec=function(){return new Yv(this)};kB(CDt,"ETypeParameterImpl/2",634);Xft(556,mkt,ykt,Yv),H_t.Fc=function(t){return wD(this,ZR(t,87))},H_t.Gc=function(t){var e,n,r;for(r=!1,n=t.Kc();n.Ob();)e=ZR(n.Pb(),87),null==RU(this.a,e,"")&&(r=!0);return r},H_t.$b=function(){WF(this.a)},H_t.Hc=function(t){return SF(this.a,t)},H_t.Kc=function(){return new $v(new e6(new Kh(this.a).a))},H_t.Mc=function(t){return uK(this,t)},H_t.gc=function(){return uk(this.a)};kB(CDt,"ETypeParameterImpl/2/1",556);Xft(557,1,dkt,$v),H_t.Nb=function(t){EF(this,t)},H_t.Pb=function(){return ZR(c0(this.a).cd(),87)},H_t.Ob=function(){return this.a.b},H_t.Qb=function(){lZ(this.a)};kB(CDt,"ETypeParameterImpl/2/1/1",557);Xft(1276,43,yMt,Xy),H_t._b=function(t){return oE(t)?uV(this,t):!!zV(this.f,t)},H_t.xc=function(t){var e;return CP(e=oE(t)?oq(this,t):nE(zV(this.f,t)),837)?(e=ZR(e,837)._j(),RU(this,ZR(t,235),e),e):null!=e?e:null==t?(kT(),wse):null};kB(CDt,"EValidatorRegistryImpl",1276);Xft(1313,704,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,1941:1,49:1,97:1,150:1,114:1,115:1},Vl),H_t.Ih=function(t,e){switch(t.yj()){case 21:case 22:case 23:case 24:case 26:case 31:case 32:case 37:case 38:case 39:case 40:case 43:case 44:case 48:case 49:case 20:return null==e?null:E9(e);case 25:return i0(e);case 27:case 28:return function(t){return CP(t,172)?""+ZR(t,172).a:null==t?null:E9(t)}(e);case 29:return null==e?null:vP(oae[0],ZR(e,199));case 41:return null==e?"":Dw(ZR(e,290));case 42:return E9(e);case 50:return hI(e);default:throw um(new Kb(ODt+t.ne()+IDt))}},H_t.Jh=function(t){var e;switch(-1==t.G&&(t.G=(e=r0(t))?jnt(e.Mh(),t):-1),t.G){case 0:return new Vy;case 1:return new _l;case 2:return new Nf;case 4:return new Um;case 5:return new qy;case 6:return new Bm;case 7:return new Rf;case 10:return new xl;case 11:return new Gy;case 12:return new AV;case 13:return new Wy;case 14:return new aI;case 17:return new Ll;case 18:return new sm;case 19:return new Hl;default:throw um(new Kb(zDt+t.zb+IDt))}},H_t.Kh=function(t,e){switch(t.yj()){case 20:return null==e?null:new $w(e);case 21:return null==e?null:new EC(e);case 23:case 22:return null==e?null:function(t){if(bet(kIt,t))return TL(),zFt;if(bet(TIt,t))return TL(),RFt;throw um(new Kb("Expecting true or false"))}(e);case 26:case 24:return null==e?null:rQ(amt(e,-128,127)<<24>>24);case 25:return function(t){var e,n,r,i,a,o,s;if(null==t)return null;for(s=t.length,o=XK(Jle,RDt,25,i=(s+1)/2|0,15,1),s%2!=0&&(o[--i]=Ogt((IG(s-1,t.length),t.charCodeAt(s-1)))),n=0,r=0;n>24;return o}(e);case 27:return function(e){var n;if(null==e)return null;n=0;try{n=amt(e,nTt,Q_t)&dTt}catch(t){if(!CP(t=_5(t),127))throw um(t);n=RJ(e)[0]}return w5(n)}(e);case 28:return function(e){var n;if(null==e)return null;n=0;try{n=amt(e,nTt,Q_t)&dTt}catch(t){if(!CP(t=_5(t),127))throw um(t);n=RJ(e)[0]}return w5(n)}(e);case 29:return function(e){var n,r;if(null==e)return null;for(n=null,r=0;r>16);case 50:return e;default:throw um(new Kb(ODt+t.ne()+IDt))}};kB(CDt,"EcoreFactoryImpl",1313);Xft(547,179,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,1939:1,49:1,97:1,150:1,179:1,547:1,114:1,115:1,675:1},OU),H_t.gb=!1,H_t.hb=!1;var fse,hse=!1;kB(CDt,"EcorePackageImpl",547);Xft(1184,1,{837:1},ql),H_t._j=function(){return kL(),_se};kB(CDt,"EcorePackageImpl/1",1184);Xft(1193,1,ANt,Gl),H_t.wj=function(t){return CP(t,147)},H_t.xj=function(t){return XK(Jie,akt,147,t,0,1)};kB(CDt,"EcorePackageImpl/10",1193);Xft(1194,1,ANt,Wl),H_t.wj=function(t){return CP(t,191)},H_t.xj=function(t){return XK(tae,akt,191,t,0,1)};kB(CDt,"EcorePackageImpl/11",1194);Xft(1195,1,ANt,Yl),H_t.wj=function(t){return CP(t,56)},H_t.xj=function(t){return XK(qie,akt,56,t,0,1)};kB(CDt,"EcorePackageImpl/12",1195);Xft(1196,1,ANt,$l),H_t.wj=function(t){return CP(t,399)},H_t.xj=function(t){return XK(foe,Jzt,59,t,0,1)};kB(CDt,"EcorePackageImpl/13",1196);Xft(1197,1,ANt,Xl),H_t.wj=function(t){return CP(t,235)},H_t.xj=function(t){return XK(eae,akt,235,t,0,1)};kB(CDt,"EcorePackageImpl/14",1197);Xft(1198,1,ANt,Kl),H_t.wj=function(t){return CP(t,509)},H_t.xj=function(t){return XK(hoe,akt,2017,t,0,1)};kB(CDt,"EcorePackageImpl/15",1198);Xft(1199,1,ANt,Zl),H_t.wj=function(t){return CP(t,99)},H_t.xj=function(t){return XK(doe,Zzt,18,t,0,1)};kB(CDt,"EcorePackageImpl/16",1199);Xft(1200,1,ANt,Jl),H_t.wj=function(t){return CP(t,170)},H_t.xj=function(t){return XK(noe,Zzt,170,t,0,1)};kB(CDt,"EcorePackageImpl/17",1200);Xft(1201,1,ANt,Ql),H_t.wj=function(t){return CP(t,472)},H_t.xj=function(t){return XK(eoe,akt,472,t,0,1)};kB(CDt,"EcorePackageImpl/18",1201);Xft(1202,1,ANt,tc),H_t.wj=function(t){return CP(t,548)},H_t.xj=function(t){return XK(Qoe,kzt,548,t,0,1)};kB(CDt,"EcorePackageImpl/19",1202);Xft(1185,1,ANt,ec),H_t.wj=function(t){return CP(t,322)},H_t.xj=function(t){return XK(roe,Zzt,34,t,0,1)};kB(CDt,"EcorePackageImpl/2",1185);Xft(1203,1,ANt,nc),H_t.wj=function(t){return CP(t,241)},H_t.xj=function(t){return XK(uoe,iNt,87,t,0,1)};kB(CDt,"EcorePackageImpl/20",1203);Xft(1204,1,ANt,rc),H_t.wj=function(t){return CP(t,444)},H_t.xj=function(t){return XK(Uoe,akt,836,t,0,1)};kB(CDt,"EcorePackageImpl/21",1204);Xft(1205,1,ANt,ic),H_t.wj=function(t){return iE(t)},H_t.xj=function(t){return XK(jFt,Akt,476,t,8,1)};kB(CDt,"EcorePackageImpl/22",1205);Xft(1206,1,ANt,ac),H_t.wj=function(t){return CP(t,190)},H_t.xj=function(t){return XK(Jle,Akt,190,t,0,2)};kB(CDt,"EcorePackageImpl/23",1206);Xft(1207,1,ANt,oc),H_t.wj=function(t){return CP(t,217)},H_t.xj=function(t){return XK(UFt,Akt,217,t,0,1)};kB(CDt,"EcorePackageImpl/24",1207);Xft(1208,1,ANt,sc),H_t.wj=function(t){return CP(t,172)},H_t.xj=function(t){return XK(VFt,Akt,172,t,0,1)};kB(CDt,"EcorePackageImpl/25",1208);Xft(1209,1,ANt,lc),H_t.wj=function(t){return CP(t,199)},H_t.xj=function(t){return XK(MFt,Akt,199,t,0,1)};kB(CDt,"EcorePackageImpl/26",1209);Xft(1210,1,ANt,cc),H_t.wj=function(t){return!1},H_t.xj=function(t){return XK(rce,akt,2110,t,0,1)};kB(CDt,"EcorePackageImpl/27",1210);Xft(1211,1,ANt,uc),H_t.wj=function(t){return aE(t)},H_t.xj=function(t){return XK(qFt,Akt,333,t,7,1)};kB(CDt,"EcorePackageImpl/28",1211);Xft(1212,1,ANt,fc),H_t.wj=function(t){return CP(t,58)},H_t.xj=function(t){return XK(kae,mSt,58,t,0,1)};kB(CDt,"EcorePackageImpl/29",1212);Xft(1186,1,ANt,hc),H_t.wj=function(t){return CP(t,510)},H_t.xj=function(t){return XK(toe,{3:1,4:1,5:1,1934:1},590,t,0,1)};kB(CDt,"EcorePackageImpl/3",1186);Xft(1213,1,ANt,dc),H_t.wj=function(t){return CP(t,573)},H_t.xj=function(t){return XK(zae,akt,1940,t,0,1)};kB(CDt,"EcorePackageImpl/30",1213);Xft(1214,1,ANt,pc),H_t.wj=function(t){return CP(t,153)},H_t.xj=function(t){return XK(xse,mSt,153,t,0,1)};kB(CDt,"EcorePackageImpl/31",1214);Xft(1215,1,ANt,gc),H_t.wj=function(t){return CP(t,72)},H_t.xj=function(t){return XK(Voe,SNt,72,t,0,1)};kB(CDt,"EcorePackageImpl/32",1215);Xft(1216,1,ANt,vc),H_t.wj=function(t){return CP(t,155)},H_t.xj=function(t){return XK(GFt,Akt,155,t,0,1)};kB(CDt,"EcorePackageImpl/33",1216);Xft(1217,1,ANt,mc),H_t.wj=function(t){return CP(t,19)},H_t.xj=function(t){return XK($Ft,Akt,19,t,0,1)};kB(CDt,"EcorePackageImpl/34",1217);Xft(1218,1,ANt,yc),H_t.wj=function(t){return CP(t,290)},H_t.xj=function(t){return XK($jt,akt,290,t,0,1)};kB(CDt,"EcorePackageImpl/35",1218);Xft(1219,1,ANt,bc),H_t.wj=function(t){return CP(t,162)},H_t.xj=function(t){return XK(KFt,Akt,162,t,0,1)};kB(CDt,"EcorePackageImpl/36",1219);Xft(1220,1,ANt,xc),H_t.wj=function(t){return CP(t,83)},H_t.xj=function(t){return XK(Zjt,akt,83,t,0,1)};kB(CDt,"EcorePackageImpl/37",1220);Xft(1221,1,ANt,wc),H_t.wj=function(t){return CP(t,591)},H_t.xj=function(t){return XK(dse,akt,591,t,0,1)};kB(CDt,"EcorePackageImpl/38",1221);Xft(1222,1,ANt,_c),H_t.wj=function(t){return!1},H_t.xj=function(t){return XK(ice,akt,2111,t,0,1)};kB(CDt,"EcorePackageImpl/39",1222);Xft(1187,1,ANt,kc),H_t.wj=function(t){return CP(t,88)},H_t.xj=function(t){return XK(aoe,akt,26,t,0,1)};kB(CDt,"EcorePackageImpl/4",1187);Xft(1223,1,ANt,Tc),H_t.wj=function(t){return CP(t,184)},H_t.xj=function(t){return XK(nBt,Akt,184,t,0,1)};kB(CDt,"EcorePackageImpl/40",1223);Xft(1224,1,ANt,Mc),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(CDt,"EcorePackageImpl/41",1224);Xft(1225,1,ANt,Ac),H_t.wj=function(t){return CP(t,588)},H_t.xj=function(t){return XK(Mae,akt,588,t,0,1)};kB(CDt,"EcorePackageImpl/42",1225);Xft(1226,1,ANt,Sc),H_t.wj=function(t){return!1},H_t.xj=function(t){return XK(ace,Akt,2112,t,0,1)};kB(CDt,"EcorePackageImpl/43",1226);Xft(1227,1,ANt,Ec),H_t.wj=function(t){return CP(t,42)},H_t.xj=function(t){return XK(eFt,jkt,42,t,0,1)};kB(CDt,"EcorePackageImpl/44",1227);Xft(1188,1,ANt,Cc),H_t.wj=function(t){return CP(t,138)},H_t.xj=function(t){return XK(ioe,akt,138,t,0,1)};kB(CDt,"EcorePackageImpl/5",1188);Xft(1189,1,ANt,Pc),H_t.wj=function(t){return CP(t,148)},H_t.xj=function(t){return XK(ooe,akt,148,t,0,1)};kB(CDt,"EcorePackageImpl/6",1189);Xft(1190,1,ANt,Lc),H_t.wj=function(t){return CP(t,457)},H_t.xj=function(t){return XK(loe,akt,671,t,0,1)};kB(CDt,"EcorePackageImpl/7",1190);Xft(1191,1,ANt,Oc),H_t.wj=function(t){return CP(t,573)},H_t.xj=function(t){return XK(coe,akt,678,t,0,1)};kB(CDt,"EcorePackageImpl/8",1191);Xft(1192,1,ANt,Ic),H_t.wj=function(t){return CP(t,471)},H_t.xj=function(t){return XK(Qie,akt,471,t,0,1)};kB(CDt,"EcorePackageImpl/9",1192);Xft(1025,1982,wzt,Wb),H_t.bi=function(t,e){!function(t,e){var n,r,i;if(e.vi(t.a),null!=(i=ZR(H3(t.a,8),1936)))for(n=0,r=i.length;n0){if(IG(0,t.length),47==t.charCodeAt(0)){for(a=new mK(4),i=1,e=1;e0&&(t=t.substr(0,n))}return function(t,e){var n,r,i,a,o,s;for(a=null,i=new wF((!t.a&&(t.a=new Xv(t)),t.a));lft(i);)if(ibt(o=(n=ZR(sdt(i),56)).Tg()),null!=(r=(s=o.o)&&n.mh(s)?ND(y5(s),n.ah(s)):null)&&FD(r,e)){a=n;break}return a}(this,t)},H_t.Xk=function(){return this.c},H_t.Ib=function(){return Dw(this.gm)+"@"+(($4(this)>>>0).toString(16)+" uri='")+this.d+"'"},H_t.b=!1;kB(PNt,"ResourceImpl",781);Xft(1379,781,CNt,Zv);kB(PNt,"BinaryResourceImpl",1379);Xft(1169,694,ERt),H_t.si=function(t){return CP(t,56)?function(t,e){return t.a?e.Wg().Kc():ZR(e.Wg(),69).Zh()}(this,ZR(t,56)):CP(t,591)?new WP(ZR(t,591).Vk()):rE(t)===rE(this.f)?ZR(t,14).Kc():(rI(),Dae.a)},H_t.Ob=function(){return lft(this)},H_t.a=!1;kB(Nzt,"EcoreUtil/ContentTreeIterator",1169);Xft(1380,1169,ERt,wF),H_t.si=function(t){return rE(t)===rE(this.f)?ZR(t,15).Kc():new uY(ZR(t,56))};kB(PNt,"ResourceImpl/5",1380);Xft(648,1994,Qzt,Xv),H_t.Hc=function(t){return this.i<=4?Uat(this,t):CP(t,49)&&ZR(t,49).Zg()==this.a},H_t.bi=function(t,e){t==this.i-1&&(this.a.b||(this.a.b=!0))},H_t.di=function(t,e){0==t?this.a.b||(this.a.b=!0):YK(this,t,e)},H_t.fi=function(t,e){},H_t.gi=function(t,e,n){},H_t.aj=function(){return 2},H_t.Ai=function(){return this.a},H_t.bj=function(){return!0},H_t.cj=function(t,e){return e=ZR(t,49).wh(this.a,e)},H_t.dj=function(t,e){return ZR(t,49).wh(null,e)},H_t.ej=function(){return!1},H_t.hi=function(){return!0},H_t.ri=function(t){return XK(qie,akt,56,t,0,1)},H_t.ni=function(){return!1};kB(PNt,"ResourceImpl/ContentsEList",648);Xft(957,1964,Kkt,Kv),H_t.Zc=function(t){return this.a._h(t)},H_t.gc=function(){return this.a.gc()};var pse,gse,vse,mse,yse,bse;kB(Nzt,"AbstractSequentialInternalEList/1",957);Xft(624,1,{},Pz);kB(Nzt,"BasicExtendedMetaData",624);Xft(1160,1,{},WS),H_t.$k=function(){return null},H_t._k=function(){var t,e;return-2==this.a&&(t=this,e=function(t,e){var n,r,i;if((n=e.Hh(t.a))&&null!=(i=xtt((!n.b&&(n.b=new GO((N_t(),Noe),Qoe,n)),n.b),rNt)))for(r=1;r<(gct(),pse).length;++r)if(FD(pse[r],i))return r;return 0}(this.d,this.b),t.a=e),this.a},H_t.al=function(){return null},H_t.bl=function(){return YH(),YH(),SBt},H_t.ne=function(){var t,e;return this.c==GNt&&(t=this,e=_et(this.d,this.b),t.c=e),this.c},H_t.cl=function(){return 0},H_t.a=-2,H_t.c=GNt;kB(Nzt,"BasicExtendedMetaData/EClassExtendedMetaDataImpl",1160);Xft(1161,1,{},bW),H_t.$k=function(){var t,e;return this.a==(pX(),yse)&&(t=this,e=function(t,e){var n,r,i,a;return(r=e.Hh(t.a))&&(!r.b&&(r.b=new GO((N_t(),Noe),Qoe,r)),null!=(n=hI(xtt(r.b,gNt)))&&CP(a=-1==(i=n.lastIndexOf("#"))?QO(t,e.Aj(),n):0==i?kZ(t,null,n.substr(1)):kZ(t,n.substr(0,i),n.substr(i+1)),148))?ZR(a,148):null}(this.f,this.b),t.a=e),this.a},H_t._k=function(){return 0},H_t.al=function(){var t,e;return this.c==(pX(),yse)&&(t=this,e=function(t,e){var n,r,i,a;return(n=e.Hh(t.a))&&(!n.b&&(n.b=new GO((N_t(),Noe),Qoe,n)),null!=(i=hI(xtt(n.b,jNt)))&&CP(a=-1==(r=i.lastIndexOf("#"))?QO(t,e.Aj(),i):0==r?kZ(t,null,i.substr(1)):kZ(t,i.substr(0,r),i.substr(r+1)),148))?ZR(a,148):null}(this.f,this.b),t.c=e),this.c},H_t.bl=function(){var t,e;return!this.d&&(t=this,e=function(t,e){var n,r,i,a,o,s,l,c,u;if((n=e.Hh(t.a))&&null!=(l=hI(xtt((!n.b&&(n.b=new GO((N_t(),Noe),Qoe,n)),n.b),"memberTypes")))){for(c=new rm,o=0,s=(a=Ovt(l,"\\w")).length;on?e:n;c<=f;++c)c==n?s=r++:(a=i[c],u=p.rl(a.ak()),c==e&&(l=c!=f||u?r:r-1),u&&++r);return h=ZR(I7(t,e,n),72),s!=l&&Ym(t,new _Z(t.e,7,o,g7(s),d.dd(),l)),h}return ZR(I7(t,e,n),72)}(this,t,e)},H_t.li=function(t,e){return function(t,e,n){var r,i,a,o,s,l,c,u,f,h,d,p,g,v;if(CP(o=n.ak(),99)&&0!=(ZR(o,18).Bb&iMt)&&(h=ZR(n.dd(),49),(g=S8(t.e,h))!=h)){if(FP(t,e,Wot(t,0,u=XY(o,g))),f=null,vC(t.e)&&(r=axt((gct(),vse),t.e.Tg(),o))!=CQ(t.e.Tg(),t.c)){for(v=mpt(t.e.Tg(),o),s=0,a=ZR(t.g,119),l=0;l=0;)if(e=t[this.c],this.k.rl(e.ak()))return this.j=this.f?e:e.dd(),this.i=-2,!0;return this.i=-1,this.g=-1,!1};kB(Nzt,"BasicFeatureMap/FeatureEIterator",410);Xft(662,410,_kt,VE),H_t.Lk=function(){return!0};kB(Nzt,"BasicFeatureMap/ResolvingFeatureEIterator",662);Xft(955,486,oNt,yP),H_t.Gi=function(){return this};kB(Nzt,"EContentsEList/1",955);Xft(956,486,oNt,qE),H_t.Lk=function(){return!1};kB(Nzt,"EContentsEList/2",956);Xft(954,279,sNt,bP),H_t.Nk=function(t){},H_t.Ob=function(){return!1},H_t.Sb=function(){return!1};kB(Nzt,"EContentsEList/FeatureIteratorImpl/1",954);Xft(825,585,tNt,QP),H_t.ci=function(){this.a=!0},H_t.fj=function(){return this.a},H_t.Xj=function(){var t;qbt(this),vC(this.e)?(t=this.a,this.a=!1,j3(this.e,new PX(this.e,2,this.c,t,!1))):this.a=!1},H_t.a=!1;kB(Nzt,"EDataTypeEList/Unsettable",825);Xft(1849,585,tNt,tL),H_t.hi=function(){return!0};kB(Nzt,"EDataTypeUniqueEList",1849);Xft(1850,825,tNt,eL),H_t.hi=function(){return!0};kB(Nzt,"EDataTypeUniqueEList/Unsettable",1850);Xft(139,85,tNt,XP),H_t.Ek=function(){return!0},H_t.li=function(t,e){return Ift(this,t,ZR(e,56))};kB(Nzt,"EObjectContainmentEList/Resolving",139);Xft(1163,545,tNt,KP),H_t.Ek=function(){return!0},H_t.li=function(t,e){return Ift(this,t,ZR(e,56))};kB(Nzt,"EObjectContainmentEList/Unsettable/Resolving",1163);Xft(748,16,tNt,TD),H_t.ci=function(){this.a=!0},H_t.fj=function(){return this.a},H_t.Xj=function(){var t;qbt(this),vC(this.e)?(t=this.a,this.a=!1,j3(this.e,new PX(this.e,2,this.c,t,!1))):this.a=!1},H_t.a=!1;kB(Nzt,"EObjectContainmentWithInverseEList/Unsettable",748);Xft(1173,748,tNt,MD),H_t.Ek=function(){return!0},H_t.li=function(t,e){return Ift(this,t,ZR(e,56))};kB(Nzt,"EObjectContainmentWithInverseEList/Unsettable/Resolving",1173);Xft(743,496,tNt,ZP),H_t.ci=function(){this.a=!0},H_t.fj=function(){return this.a},H_t.Xj=function(){var t;qbt(this),vC(this.e)?(t=this.a,this.a=!1,j3(this.e,new PX(this.e,2,this.c,t,!1))):this.a=!1},H_t.a=!1;kB(Nzt,"EObjectEList/Unsettable",743);Xft(328,496,tNt,JP),H_t.Ek=function(){return!0},H_t.li=function(t,e){return Ift(this,t,ZR(e,56))};kB(Nzt,"EObjectResolvingEList",328);Xft(1641,743,tNt,nL),H_t.Ek=function(){return!0},H_t.li=function(t,e){return Ift(this,t,ZR(e,56))};var wse;kB(Nzt,"EObjectResolvingEList/Unsettable",1641);Xft(1381,1,{},Dc);kB(Nzt,"EObjectValidator",1381);Xft(546,496,tNt,xF),H_t.zk=function(){return this.d},H_t.Ak=function(){return this.b},H_t.bj=function(){return!0},H_t.Dk=function(){return!0},H_t.b=0;kB(Nzt,"EObjectWithInverseEList",546);Xft(1176,546,tNt,AD),H_t.Ck=function(){return!0};kB(Nzt,"EObjectWithInverseEList/ManyInverse",1176);Xft(625,546,tNt,SD),H_t.ci=function(){this.a=!0},H_t.fj=function(){return this.a},H_t.Xj=function(){var t;qbt(this),vC(this.e)?(t=this.a,this.a=!1,j3(this.e,new PX(this.e,2,this.c,t,!1))):this.a=!1},H_t.a=!1;kB(Nzt,"EObjectWithInverseEList/Unsettable",625);Xft(1175,625,tNt,CD),H_t.Ck=function(){return!0};kB(Nzt,"EObjectWithInverseEList/Unsettable/ManyInverse",1175);Xft(749,546,tNt,ED),H_t.Ek=function(){return!0},H_t.li=function(t,e){return Ift(this,t,ZR(e,56))};kB(Nzt,"EObjectWithInverseResolvingEList",749);Xft(31,749,tNt,LD),H_t.Ck=function(){return!0};kB(Nzt,"EObjectWithInverseResolvingEList/ManyInverse",31);Xft(750,625,tNt,PD),H_t.Ek=function(){return!0},H_t.li=function(t,e){return Ift(this,t,ZR(e,56))};kB(Nzt,"EObjectWithInverseResolvingEList/Unsettable",750);Xft(1174,750,tNt,OD),H_t.Ck=function(){return!0};kB(Nzt,"EObjectWithInverseResolvingEList/Unsettable/ManyInverse",1174);Xft(1164,622,tNt),H_t.ai=function(){return 0==(1792&this.b)},H_t.ci=function(){this.b|=1},H_t.Bk=function(){return 0!=(4&this.b)},H_t.bj=function(){return 0!=(40&this.b)},H_t.Ck=function(){return 0!=(16&this.b)},H_t.Dk=function(){return 0!=(8&this.b)},H_t.Ek=function(){return 0!=(this.b&Hzt)},H_t.rk=function(){return 0!=(32&this.b)},H_t.Fk=function(){return 0!=(this.b&jDt)},H_t.wj=function(t){return this.d?FY(this.d,t):this.ak().Yj().wj(t)},H_t.fj=function(){return 0!=(2&this.b)?0!=(1&this.b):0!=this.i},H_t.hi=function(){return 0!=(128&this.b)},H_t.Xj=function(){var t;qbt(this),0!=(2&this.b)&&(vC(this.e)?(t=0!=(1&this.b),this.b&=-2,Ym(this,new PX(this.e,2,ett(this.e.Tg(),this.ak()),t,!1))):this.b&=-2)},H_t.ni=function(){return 0==(1536&this.b)},H_t.b=0;kB(Nzt,"EcoreEList/Generic",1164);Xft(1165,1164,tNt,nV),H_t.ak=function(){return this.a};kB(Nzt,"EcoreEList/Dynamic",1165);Xft(747,63,SRt,Jv),H_t.ri=function(t){return H0(this.a.a,t)};kB(Nzt,"EcoreEMap/1",747);Xft(746,85,tNt,vF),H_t.bi=function(t,e){nrt(this.b,ZR(e,133))},H_t.di=function(t,e){L3(this.b)},H_t.ei=function(t,e,n){var r;++(r=this.b,ZR(e,133),r).e},H_t.fi=function(t,e){D7(this.b,ZR(e,133))},H_t.gi=function(t,e,n){D7(this.b,ZR(n,133)),rE(n)===rE(e)&&ZR(n,133).Th(function(t){return null==t?0:$4(t)}(ZR(e,133).cd())),nrt(this.b,ZR(e,133))};kB(Nzt,"EcoreEMap/DelegateEObjectContainmentEList",746);Xft(1171,151,Fzt,_1);kB(Nzt,"EcoreEMap/Unsettable",1171);Xft(1172,746,tNt,ID),H_t.ci=function(){this.a=!0},H_t.fj=function(){return this.a},H_t.Xj=function(){var t;qbt(this),vC(this.e)?(t=this.a,this.a=!1,j3(this.e,new PX(this.e,2,this.c,t,!1))):this.a=!1},H_t.a=!1;kB(Nzt,"EcoreEMap/Unsettable/UnsettableDelegateEObjectContainmentEList",1172);Xft(1168,228,yMt,mB),H_t.a=!1,H_t.b=!1;kB(Nzt,"EcoreUtil/Copier",1168);Xft(745,1,dkt,uY),H_t.Nb=function(t){EF(this,t)},H_t.Ob=function(){return _tt(this)},H_t.Pb=function(){var t;return _tt(this),t=this.b,this.b=null,t},H_t.Qb=function(){this.a.Qb()};var _se;kB(Nzt,"EcoreUtil/ProperContentIterator",745);Xft(1382,1381,{},jf);var kse;kB(Nzt,"EcoreValidator",1382),oN(Nzt,"FeatureMapUtil/Validator");Xft(1260,1,{1942:1},Rc),H_t.rl=function(t){return!0};var Tse;kB(Nzt,"FeatureMapUtil/1",1260);Xft(757,1,{1942:1},_wt),H_t.rl=function(t){var e;return this.c==t||(null==(e=uI(UB(this.a,t)))?function(t,e){var n;return t.f==Tse?(n=TU(SJ((gct(),vse),e)),t.e?4==n&&e!=(vft(),Ese)&&e!=(vft(),Mse)&&e!=(vft(),Ase)&&e!=(vft(),Sse):2==n):!(!t.d||!(t.d.Hc(e)||t.d.Hc(UG(SJ((gct(),vse),e)))||t.d.Hc(axt((gct(),vse),t.b,e))))||!(!t.f||!Bdt((gct(),t.f),eH(SJ(vse,e))))&&(n=TU(SJ(vse,e)),t.e?4==n:2==n)}(this,t)?(IX(this.a,t,(TL(),zFt)),!0):(IX(this.a,t,(TL(),RFt)),!1):e==(TL(),zFt))},H_t.e=!1;kB(Nzt,"FeatureMapUtil/BasicValidator",757);Xft(758,43,yMt,xP);kB(Nzt,"FeatureMapUtil/BasicValidator/Cache",758);Xft(501,52,{20:1,28:1,52:1,14:1,15:1,58:1,76:1,69:1,95:1},XS),H_t.Vc=function(t,e){Dpt(this.c,this.b,t,e)},H_t.Fc=function(t){return Fvt(this.c,this.b,t)},H_t.Wc=function(t,e){return function(t,e,n,r){var i,a,o,s,l,c,u,f;if(0==r.gc())return!1;if(TT(),o=(l=ZR(e,66).Oj())?r:new BQ(r.gc()),Rpt(t.e,e)){if(e.hi())for(u=r.Kc();u.Ob();)dyt(t,e,c=u.Pb(),CP(e,99)&&0!=(ZR(e,18).Bb&iMt))||(a=XY(e,c),o.Fc(a));else if(!l)for(u=r.Kc();u.Ob();)a=XY(e,c=u.Pb()),o.Fc(a)}else{for(f=mpt(t.e.Tg(),e),i=ZR(t.g,119),s=0;s1)throw um(new Kb(WNt));l||(a=XY(e,r.Kc().Pb()),o.Fc(a))}return f4(t,hct(t,e,n),o)}(this.c,this.b,t,e)},H_t.Gc=function(t){return TP(this,t)},H_t.Xh=function(t,e){!function(t,e,n,r){t.j=-1,Oft(t,hct(t,e,n),(TT(),ZR(e,66).Mj().Ok(r)))}(this.c,this.b,t,e)},H_t.lk=function(t,e){return Qgt(this.c,this.b,t,e)},H_t.pi=function(t){return lbt(this.c,this.b,t,!1)},H_t.Zh=function(){return bC(this.c,this.b)},H_t.$h=function(){return t=this.c,new Z3(this.b,t);var t},H_t._h=function(t){return function(t,e,n){var r,i;for(i=new Z3(e,t),r=0;r0)if((n-=i.length-e)>=0){for(a.a+="0.";n>sBt.length;n-=sBt.length)kN(a,sBt);KI(a,sBt,lq(n)),xE(a,i.substr(e))}else xE(a,hO(i,e,lq(n=e-n))),a.a+=".",xE(a,hE(i,lq(n)));else{for(xE(a,i.substr(e));n<-sBt.length;n+=sBt.length)kN(a,sBt);KI(a,sBt,lq(-n))}return a.a}(ZR(e,240));case 15:case 14:return null==e?null:function(t){return t==tMt?JNt:t==eMt?"-INF":""+t}(ex(fI(e)));case 17:return wot((lxt(),e));case 18:return wot(e);case 21:case 20:return null==e?null:function(t){return t==tMt?JNt:t==eMt?"-INF":""+t}(ZR(e,155).a);case 27:return lI(ZR(e,190));case 30:return Jrt((lxt(),ZR(e,15)));case 31:return Jrt(ZR(e,15));case 40:case 59:case 48:return function(t){return null==t?null:E9(t)}((lxt(),e));case 42:return _ot((lxt(),e));case 43:return _ot(e);default:throw um(new Kb(ODt+t.ne()+IDt))}},H_t.Jh=function(t){var e;switch(-1==t.G&&(t.G=(e=r0(t))?jnt(e.Mh(),t):-1),t.G){case 0:return new Ky;case 1:return new Nc;case 2:return new Jy;case 3:return new Zy;default:throw um(new Kb(zDt+t.zb+IDt))}},H_t.Kh=function(t,e){var n,r,i,a,o,s,l,c,u,f,h,d,p,g,v,m;switch(t.yj()){case 5:case 52:case 4:return e;case 6:return unt(e);case 8:case 7:return null==e?null:function(t){if(t=Zyt(t,!0),FD(kIt,t)||FD("1",t))return TL(),zFt;if(FD(TIt,t)||FD("0",t))return TL(),RFt;throw um(new fx("Invalid boolean value: '"+t+"'"))}(e);case 9:return null==e?null:rQ(amt((r=Zyt(e,!0)).length>0&&(IG(0,r.length),43==r.charCodeAt(0))?r.substr(1):r,-128,127)<<24>>24);case 10:return null==e?null:rQ(amt((i=Zyt(e,!0)).length>0&&(IG(0,i.length),43==i.charCodeAt(0))?i.substr(1):i,-128,127)<<24>>24);case 11:return hI(d_t(this,(lxt(),Nse),e));case 12:return hI(d_t(this,(lxt(),jse),e));case 13:return null==e?null:new $w(Zyt(e,!0));case 15:case 14:return function(t){var e,n,r,i;if(null==t)return null;if(r=Zyt(t,!0),i=JNt.length,FD(r.substr(r.length-i,i),JNt))if(4==(n=r.length)){if(IG(0,r.length),43==(e=r.charCodeAt(0)))return sle;if(45==e)return ole}else if(3==n)return sle;return mlt(r)}(e);case 16:return hI(d_t(this,(lxt(),Fse),e));case 17:return Ktt((lxt(),e));case 18:return Ktt(e);case 28:case 29:case 35:case 38:case 39:case 41:case 54:case 19:return Zyt(e,!0);case 21:case 20:return function(t){var e,n,r,i;if(null==t)return null;if(r=Zyt(t,!0),i=JNt.length,FD(r.substr(r.length-i,i),JNt))if(4==(n=r.length)){if(IG(0,r.length),43==(e=r.charCodeAt(0)))return cle;if(45==e)return lle}else if(3==n)return cle;return new Xm(r)}(e);case 22:return hI(d_t(this,(lxt(),Bse),e));case 23:return hI(d_t(this,(lxt(),Use),e));case 24:return hI(d_t(this,(lxt(),Hse),e));case 25:return hI(d_t(this,(lxt(),Vse),e));case 26:return hI(d_t(this,(lxt(),qse),e));case 27:return Wet(e);case 30:return Ztt((lxt(),e));case 31:return Ztt(e);case 32:return null==e?null:g7(amt((u=Zyt(e,!0)).length>0&&(IG(0,u.length),43==u.charCodeAt(0))?u.substr(1):u,nTt,Q_t));case 33:return null==e?null:new EC((f=Zyt(e,!0)).length>0&&(IG(0,f.length),43==f.charCodeAt(0))?f.substr(1):f);case 34:return null==e?null:g7(amt((h=Zyt(e,!0)).length>0&&(IG(0,h.length),43==h.charCodeAt(0))?h.substr(1):h,nTt,Q_t));case 36:return null==e?null:wet(wwt((d=Zyt(e,!0)).length>0&&(IG(0,d.length),43==d.charCodeAt(0))?d.substr(1):d));case 37:return null==e?null:wet(wwt((p=Zyt(e,!0)).length>0&&(IG(0,p.length),43==p.charCodeAt(0))?p.substr(1):p));case 40:case 59:case 48:return function(t){var e;return null==t?null:new EC((e=Zyt(t,!0)).length>0&&(IG(0,e.length),43==e.charCodeAt(0))?e.substr(1):e)}((lxt(),e));case 42:return Jtt((lxt(),e));case 43:return Jtt(e);case 44:return null==e?null:new EC((g=Zyt(e,!0)).length>0&&(IG(0,g.length),43==g.charCodeAt(0))?g.substr(1):g);case 45:return null==e?null:new EC((v=Zyt(e,!0)).length>0&&(IG(0,v.length),43==v.charCodeAt(0))?v.substr(1):v);case 46:return Zyt(e,!1);case 47:return hI(d_t(this,(lxt(),Gse),e));case 49:return hI(d_t(this,(lxt(),Yse),e));case 50:return null==e?null:v7(amt((m=Zyt(e,!0)).length>0&&(IG(0,m.length),43==m.charCodeAt(0))?m.substr(1):m,dNt,32767)<<16>>16);case 51:return null==e?null:v7(amt((a=Zyt(e,!0)).length>0&&(IG(0,a.length),43==a.charCodeAt(0))?a.substr(1):a,dNt,32767)<<16>>16);case 53:return hI(d_t(this,(lxt(),Kse),e));case 55:return null==e?null:v7(amt((o=Zyt(e,!0)).length>0&&(IG(0,o.length),43==o.charCodeAt(0))?o.substr(1):o,dNt,32767)<<16>>16);case 56:return null==e?null:v7(amt((s=Zyt(e,!0)).length>0&&(IG(0,s.length),43==s.charCodeAt(0))?s.substr(1):s,dNt,32767)<<16>>16);case 57:return null==e?null:wet(wwt((l=Zyt(e,!0)).length>0&&(IG(0,l.length),43==l.charCodeAt(0))?l.substr(1):l));case 58:return null==e?null:wet(wwt((c=Zyt(e,!0)).length>0&&(IG(0,c.length),43==c.charCodeAt(0))?c.substr(1):c));case 60:return null==e?null:g7(amt((n=Zyt(e,!0)).length>0&&(IG(0,n.length),43==n.charCodeAt(0))?n.substr(1):n,nTt,Q_t));case 61:return null==e?null:g7(amt(Zyt(e,!0),nTt,Q_t));default:throw um(new Kb(ODt+t.ne()+IDt))}};kB(ZNt,"XMLTypeFactoryImpl",1919);Xft(586,179,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1,1945:1,586:1},LU),H_t.N=!1,H_t.O=!1;var ule=!1;kB(ZNt,"XMLTypePackageImpl",586);Xft(1852,1,{837:1},jc),H_t._j=function(){return Hmt(),qle};kB(ZNt,"XMLTypePackageImpl/1",1852);Xft(1861,1,ANt,Fc),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/10",1861);Xft(1862,1,ANt,Bc),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/11",1862);Xft(1863,1,ANt,Uc),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/12",1863);Xft(1864,1,ANt,Hc),H_t.wj=function(t){return aE(t)},H_t.xj=function(t){return XK(qFt,Akt,333,t,7,1)};kB(ZNt,"XMLTypePackageImpl/13",1864);Xft(1865,1,ANt,Vc),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/14",1865);Xft(1866,1,ANt,qc),H_t.wj=function(t){return CP(t,15)},H_t.xj=function(t){return XK(tFt,mSt,15,t,0,1)};kB(ZNt,"XMLTypePackageImpl/15",1866);Xft(1867,1,ANt,Gc),H_t.wj=function(t){return CP(t,15)},H_t.xj=function(t){return XK(tFt,mSt,15,t,0,1)};kB(ZNt,"XMLTypePackageImpl/16",1867);Xft(1868,1,ANt,Wc),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/17",1868);Xft(1869,1,ANt,Yc),H_t.wj=function(t){return CP(t,155)},H_t.xj=function(t){return XK(GFt,Akt,155,t,0,1)};kB(ZNt,"XMLTypePackageImpl/18",1869);Xft(1870,1,ANt,$c),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/19",1870);Xft(1853,1,ANt,Xc),H_t.wj=function(t){return CP(t,843)},H_t.xj=function(t){return XK(Pse,akt,843,t,0,1)};kB(ZNt,"XMLTypePackageImpl/2",1853);Xft(1871,1,ANt,Kc),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/20",1871);Xft(1872,1,ANt,Zc),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/21",1872);Xft(1873,1,ANt,Jc),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/22",1873);Xft(1874,1,ANt,Qc),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/23",1874);Xft(1875,1,ANt,tu),H_t.wj=function(t){return CP(t,190)},H_t.xj=function(t){return XK(Jle,Akt,190,t,0,2)};kB(ZNt,"XMLTypePackageImpl/24",1875);Xft(1876,1,ANt,eu),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/25",1876);Xft(1877,1,ANt,nu),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/26",1877);Xft(1878,1,ANt,ru),H_t.wj=function(t){return CP(t,15)},H_t.xj=function(t){return XK(tFt,mSt,15,t,0,1)};kB(ZNt,"XMLTypePackageImpl/27",1878);Xft(1879,1,ANt,iu),H_t.wj=function(t){return CP(t,15)},H_t.xj=function(t){return XK(tFt,mSt,15,t,0,1)};kB(ZNt,"XMLTypePackageImpl/28",1879);Xft(1880,1,ANt,au),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/29",1880);Xft(1854,1,ANt,ou),H_t.wj=function(t){return CP(t,667)},H_t.xj=function(t){return XK(rle,akt,2021,t,0,1)};kB(ZNt,"XMLTypePackageImpl/3",1854);Xft(1881,1,ANt,su),H_t.wj=function(t){return CP(t,19)},H_t.xj=function(t){return XK($Ft,Akt,19,t,0,1)};kB(ZNt,"XMLTypePackageImpl/30",1881);Xft(1882,1,ANt,lu),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/31",1882);Xft(1883,1,ANt,cu),H_t.wj=function(t){return CP(t,162)},H_t.xj=function(t){return XK(KFt,Akt,162,t,0,1)};kB(ZNt,"XMLTypePackageImpl/32",1883);Xft(1884,1,ANt,uu),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/33",1884);Xft(1885,1,ANt,fu),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/34",1885);Xft(1886,1,ANt,hu),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/35",1886);Xft(1887,1,ANt,du),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/36",1887);Xft(1888,1,ANt,pu),H_t.wj=function(t){return CP(t,15)},H_t.xj=function(t){return XK(tFt,mSt,15,t,0,1)};kB(ZNt,"XMLTypePackageImpl/37",1888);Xft(1889,1,ANt,gu),H_t.wj=function(t){return CP(t,15)},H_t.xj=function(t){return XK(tFt,mSt,15,t,0,1)};kB(ZNt,"XMLTypePackageImpl/38",1889);Xft(1890,1,ANt,vu),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/39",1890);Xft(1855,1,ANt,mu),H_t.wj=function(t){return CP(t,668)},H_t.xj=function(t){return XK(ile,akt,2022,t,0,1)};kB(ZNt,"XMLTypePackageImpl/4",1855);Xft(1891,1,ANt,yu),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/40",1891);Xft(1892,1,ANt,bu),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/41",1892);Xft(1893,1,ANt,xu),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/42",1893);Xft(1894,1,ANt,wu),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/43",1894);Xft(1895,1,ANt,_u),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/44",1895);Xft(1896,1,ANt,ku),H_t.wj=function(t){return CP(t,184)},H_t.xj=function(t){return XK(nBt,Akt,184,t,0,1)};kB(ZNt,"XMLTypePackageImpl/45",1896);Xft(1897,1,ANt,Tu),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/46",1897);Xft(1898,1,ANt,Mu),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/47",1898);Xft(1899,1,ANt,Au),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/48",1899);Xft(ATt,1,ANt,Su),H_t.wj=function(t){return CP(t,184)},H_t.xj=function(t){return XK(nBt,Akt,184,t,0,1)};kB(ZNt,"XMLTypePackageImpl/49",ATt);Xft(1856,1,ANt,Eu),H_t.wj=function(t){return CP(t,669)},H_t.xj=function(t){return XK(ale,akt,2023,t,0,1)};kB(ZNt,"XMLTypePackageImpl/5",1856);Xft(1901,1,ANt,Cu),H_t.wj=function(t){return CP(t,162)},H_t.xj=function(t){return XK(KFt,Akt,162,t,0,1)};kB(ZNt,"XMLTypePackageImpl/50",1901);Xft(1902,1,ANt,Pu),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/51",1902);Xft(1903,1,ANt,Lu),H_t.wj=function(t){return CP(t,19)},H_t.xj=function(t){return XK($Ft,Akt,19,t,0,1)};kB(ZNt,"XMLTypePackageImpl/52",1903);Xft(1857,1,ANt,Ou),H_t.wj=function(t){return oE(t)},H_t.xj=function(t){return XK(iBt,Akt,2,t,6,1)};kB(ZNt,"XMLTypePackageImpl/6",1857);Xft(1858,1,ANt,Iu),H_t.wj=function(t){return CP(t,190)},H_t.xj=function(t){return XK(Jle,Akt,190,t,0,2)};kB(ZNt,"XMLTypePackageImpl/7",1858);Xft(1859,1,ANt,Du),H_t.wj=function(t){return iE(t)},H_t.xj=function(t){return XK(jFt,Akt,476,t,8,1)};kB(ZNt,"XMLTypePackageImpl/8",1859);Xft(1860,1,ANt,Ru),H_t.wj=function(t){return CP(t,217)},H_t.xj=function(t){return XK(UFt,Akt,217,t,0,1)};var fle,hle,dle,ple,gle;kB(ZNt,"XMLTypePackageImpl/9",1860);Xft(50,60,iTt,px);kB(kjt,"RegEx/ParseException",50);Xft(820,1,{},zu),H_t.sl=function(t){return t16*n)throw um(new px(B_t((qC(),azt))));n=16*n+i}if(125!=this.a)throw um(new px(B_t((qC(),ozt))));if(n>Tjt)throw um(new px(B_t((qC(),szt))));t=n}else{if(i=0,0!=this.c||(i=vrt(this.a))<0)throw um(new px(B_t((qC(),izt))));if(n=i,k_t(this),0!=this.c||(i=vrt(this.a))<0)throw um(new px(B_t((qC(),izt))));t=n=16*n+i}break;case 117:if(r=0,k_t(this),0!=this.c||(r=vrt(this.a))<0)throw um(new px(B_t((qC(),izt))));if(e=r,k_t(this),0!=this.c||(r=vrt(this.a))<0)throw um(new px(B_t((qC(),izt))));if(e=16*e+r,k_t(this),0!=this.c||(r=vrt(this.a))<0)throw um(new px(B_t((qC(),izt))));if(e=16*e+r,k_t(this),0!=this.c||(r=vrt(this.a))<0)throw um(new px(B_t((qC(),izt))));t=e=16*e+r;break;case 118:if(k_t(this),0!=this.c||(r=vrt(this.a))<0)throw um(new px(B_t((qC(),izt))));if(e=r,k_t(this),0!=this.c||(r=vrt(this.a))<0)throw um(new px(B_t((qC(),izt))));if(e=16*e+r,k_t(this),0!=this.c||(r=vrt(this.a))<0)throw um(new px(B_t((qC(),izt))));if(e=16*e+r,k_t(this),0!=this.c||(r=vrt(this.a))<0)throw um(new px(B_t((qC(),izt))));if(e=16*e+r,k_t(this),0!=this.c||(r=vrt(this.a))<0)throw um(new px(B_t((qC(),izt))));if(e=16*e+r,k_t(this),0!=this.c||(r=vrt(this.a))<0)throw um(new px(B_t((qC(),izt))));if((e=16*e+r)>Tjt)throw um(new px(B_t((qC(),"parser.descappe.4"))));t=e;break;case 65:case 90:case 122:throw um(new px(B_t((qC(),lzt))))}return t},H_t.ul=function(t){var e;switch(t){case 100:e=32==(32&this.e)?Wwt("Nd",!0):(R_t(),kle);break;case 68:e=32==(32&this.e)?Wwt("Nd",!1):(R_t(),Ele);break;case 119:e=32==(32&this.e)?Wwt("IsWord",!0):(R_t(),Nle);break;case 87:e=32==(32&this.e)?Wwt("IsWord",!1):(R_t(),Ple);break;case 115:e=32==(32&this.e)?Wwt("IsSpace",!0):(R_t(),Ole);break;case 83:e=32==(32&this.e)?Wwt("IsSpace",!1):(R_t(),Cle);break;default:throw um(new Eb(Mjt+t.toString(16)))}return e},H_t.vl=function(t){var e,n,r,i,a,o,s,l,c,u,f;for(this.b=1,k_t(this),e=null,0==this.c&&94==this.a?(k_t(this),t?(R_t(),R_t(),c=new aW(5)):(R_t(),R_t(),Ypt(e=new aW(4),0,Tjt),c=new aW(4))):(R_t(),R_t(),c=new aW(4)),i=!0;1!=(f=this.c)&&(0!=f||93!=this.a||i);){if(i=!1,n=this.a,r=!1,10==f)switch(n){case 100:case 68:case 119:case 87:case 115:case 83:dbt(c,this.ul(n)),r=!0;break;case 105:case 73:case 99:case 67:(n=this.Ll(c,n))<0&&(r=!0);break;case 112:case 80:if(!(u=Vut(this,n)))throw um(new px(B_t((qC(),YRt))));dbt(c,u),r=!0;break;default:n=this.tl()}else if(20==f){if((a=dO(this.i,58,this.d))<0)throw um(new px(B_t((qC(),$Rt))));if(o=!0,94==YU(this.i,this.d)&&(++this.d,o=!1),!(s=dZ(hO(this.i,this.d,a),o,512==(512&this.e))))throw um(new px(B_t((qC(),KRt))));if(dbt(c,s),r=!0,a+1>=this.j||93!=YU(this.i,a+1))throw um(new px(B_t((qC(),$Rt))));this.d=a+2}if(k_t(this),!r)if(0!=this.c||45!=this.a)Ypt(c,n,n);else{if(k_t(this),1==(f=this.c))throw um(new px(B_t((qC(),XRt))));0==f&&93==this.a?(Ypt(c,n,n),Ypt(c,45,45)):(l=this.a,10==f&&(l=this.tl()),k_t(this),Ypt(c,n,l))}(this.e&jDt)==jDt&&0==this.c&&44==this.a&&k_t(this)}if(1==this.c)throw um(new px(B_t((qC(),XRt))));return e&&(Uxt(e,c),c=e),zht(c),Rbt(c),this.b=0,k_t(this),c},H_t.wl=function(){var t,e,n,r;for(n=this.vl(!1);7!=(r=this.c);){if(t=this.a,(0!=r||45!=t&&38!=t)&&4!=r)throw um(new px(B_t((qC(),nzt))));if(k_t(this),9!=this.c)throw um(new px(B_t((qC(),ezt))));if(e=this.vl(!1),4==r)dbt(n,e);else if(45==t)Uxt(n,e);else{if(38!=t)throw um(new Eb("ASSERT"));Mxt(n,e)}}return k_t(this),n},H_t.xl=function(){var t,e;return t=this.a-48,R_t(),R_t(),e=new tq(12,null,t),!this.g&&(this.g=new Jm),Wm(this.g,new Qv(t)),k_t(this),e},H_t.yl=function(){return k_t(this),R_t(),Ile},H_t.zl=function(){return k_t(this),R_t(),Lle},H_t.Al=function(){throw um(new px(B_t((qC(),czt))))},H_t.Bl=function(){throw um(new px(B_t((qC(),czt))))},H_t.Cl=function(){return k_t(this),i6()},H_t.Dl=function(){return k_t(this),R_t(),Rle},H_t.El=function(){return k_t(this),R_t(),jle},H_t.Fl=function(){var t;if(this.d>=this.j||64!=(65504&(t=YU(this.i,this.d++))))throw um(new px(B_t((qC(),VRt))));return k_t(this),R_t(),R_t(),new UN(0,t-64)},H_t.Gl=function(){return k_t(this),function(){var t,e,n,r,i,a;if(R_t(),Hle)return Hle;for(dbt(t=new aW(4),Wwt(Djt,!0)),Uxt(t,Wwt("M",!0)),Uxt(t,Wwt("C",!0)),a=new aW(4),r=0;r<11;r++)Ypt(a,r,r);return dbt(e=new aW(4),Wwt("M",!0)),Ypt(e,4448,4607),Ypt(e,65438,65439),Fbt(i=new HC(2),t),Fbt(i,Mle),(n=new HC(2)).$l(XN(a,Wwt("L",!0))),n.$l(e),n=new a$(3,n),n=new eB(i,n),Hle=n}()},H_t.Hl=function(){return k_t(this),R_t(),Fle},H_t.Il=function(){var t;return R_t(),R_t(),t=new UN(0,105),k_t(this),t},H_t.Jl=function(){return k_t(this),R_t(),zle},H_t.Kl=function(){return k_t(this),R_t(),Dle},H_t.Ll=function(t,e){return this.tl()},H_t.Ml=function(){return k_t(this),R_t(),Ale},H_t.Nl=function(){var t,e,n,r,i;if(this.d+1>=this.j)throw um(new px(B_t((qC(),BRt))));if(r=-1,e=null,49<=(t=YU(this.i,this.d))&&t<=57){if(r=t-48,!this.g&&(this.g=new Jm),Wm(this.g,new Qv(r)),++this.d,41!=YU(this.i,this.d))throw um(new px(B_t((qC(),NRt))));++this.d}else switch(63==t&&--this.d,k_t(this),(e=c_t(this)).e){case 20:case 21:case 22:case 23:break;case 8:if(7!=this.c)throw um(new px(B_t((qC(),NRt))));break;default:throw um(new px(B_t((qC(),URt))))}if(k_t(this),n=null,2==(i=net(this)).e){if(2!=i.em())throw um(new px(B_t((qC(),HRt))));n=i.am(1),i=i.am(0)}if(7!=this.c)throw um(new px(B_t((qC(),NRt))));return k_t(this),R_t(),R_t(),new tQ(r,e,i,n)},H_t.Ol=function(){return k_t(this),R_t(),Sle},H_t.Pl=function(){var t;if(k_t(this),t=TF(24,net(this)),7!=this.c)throw um(new px(B_t((qC(),NRt))));return k_t(this),t},H_t.Ql=function(){var t;if(k_t(this),t=TF(20,net(this)),7!=this.c)throw um(new px(B_t((qC(),NRt))));return k_t(this),t},H_t.Rl=function(){var t;if(k_t(this),t=TF(22,net(this)),7!=this.c)throw um(new px(B_t((qC(),NRt))));return k_t(this),t},H_t.Sl=function(){var t,e,n,r,i;for(t=0,n=0,e=-1;this.d=this.j)throw um(new px(B_t((qC(),jRt))));if(45==e){for(++this.d;this.d=this.j)throw um(new px(B_t((qC(),jRt))))}if(58==e){if(++this.d,k_t(this),r=RB(net(this),t,n),7!=this.c)throw um(new px(B_t((qC(),NRt))));k_t(this)}else{if(41!=e)throw um(new px(B_t((qC(),FRt))));++this.d,k_t(this),r=RB(net(this),t,n)}return r},H_t.Tl=function(){var t;if(k_t(this),t=TF(21,net(this)),7!=this.c)throw um(new px(B_t((qC(),NRt))));return k_t(this),t},H_t.Ul=function(){var t;if(k_t(this),t=TF(23,net(this)),7!=this.c)throw um(new px(B_t((qC(),NRt))));return k_t(this),t},H_t.Vl=function(){var t,e;if(k_t(this),t=this.f++,e=MF(net(this),t),7!=this.c)throw um(new px(B_t((qC(),NRt))));return k_t(this),e},H_t.Wl=function(){var t;if(k_t(this),t=MF(net(this),0),7!=this.c)throw um(new px(B_t((qC(),NRt))));return k_t(this),t},H_t.Xl=function(t){return k_t(this),5==this.c?(k_t(this),XN(t,(R_t(),R_t(),new a$(9,t)))):XN(t,(R_t(),R_t(),new a$(3,t)))},H_t.Yl=function(t){var e;return k_t(this),R_t(),R_t(),e=new HC(2),5==this.c?(k_t(this),Fbt(e,Mle),Fbt(e,t)):(Fbt(e,t),Fbt(e,Mle)),e},H_t.Zl=function(t){return k_t(this),5==this.c?(k_t(this),R_t(),R_t(),new a$(9,t)):(R_t(),R_t(),new a$(3,t))},H_t.a=0,H_t.b=0,H_t.c=0,H_t.d=0,H_t.e=0,H_t.f=1,H_t.g=null,H_t.j=0;kB(kjt,"RegEx/RegexParser",820);Xft(1824,820,{},Qy),H_t.sl=function(t){return!1},H_t.tl=function(){return Agt(this)},H_t.ul=function(t){return omt(t)},H_t.vl=function(t){return M_t(this)},H_t.wl=function(){throw um(new px(B_t((qC(),czt))))},H_t.xl=function(){throw um(new px(B_t((qC(),czt))))},H_t.yl=function(){throw um(new px(B_t((qC(),czt))))},H_t.zl=function(){throw um(new px(B_t((qC(),czt))))},H_t.Al=function(){return k_t(this),omt(67)},H_t.Bl=function(){return k_t(this),omt(73)},H_t.Cl=function(){throw um(new px(B_t((qC(),czt))))},H_t.Dl=function(){throw um(new px(B_t((qC(),czt))))},H_t.El=function(){throw um(new px(B_t((qC(),czt))))},H_t.Fl=function(){return k_t(this),omt(99)},H_t.Gl=function(){throw um(new px(B_t((qC(),czt))))},H_t.Hl=function(){throw um(new px(B_t((qC(),czt))))},H_t.Il=function(){return k_t(this),omt(105)},H_t.Jl=function(){throw um(new px(B_t((qC(),czt))))},H_t.Kl=function(){throw um(new px(B_t((qC(),czt))))},H_t.Ll=function(t,e){return dbt(t,omt(e)),-1},H_t.Ml=function(){return k_t(this),R_t(),R_t(),new UN(0,94)},H_t.Nl=function(){throw um(new px(B_t((qC(),czt))))},H_t.Ol=function(){return k_t(this),R_t(),R_t(),new UN(0,36)},H_t.Pl=function(){throw um(new px(B_t((qC(),czt))))},H_t.Ql=function(){throw um(new px(B_t((qC(),czt))))},H_t.Rl=function(){throw um(new px(B_t((qC(),czt))))},H_t.Sl=function(){throw um(new px(B_t((qC(),czt))))},H_t.Tl=function(){throw um(new px(B_t((qC(),czt))))},H_t.Ul=function(){throw um(new px(B_t((qC(),czt))))},H_t.Vl=function(){var t;if(k_t(this),t=MF(net(this),0),7!=this.c)throw um(new px(B_t((qC(),NRt))));return k_t(this),t},H_t.Wl=function(){throw um(new px(B_t((qC(),czt))))},H_t.Xl=function(t){return k_t(this),XN(t,(R_t(),R_t(),new a$(3,t)))},H_t.Yl=function(t){var e;return k_t(this),R_t(),R_t(),Fbt(e=new HC(2),t),Fbt(e,Mle),e},H_t.Zl=function(t){return k_t(this),R_t(),R_t(),new a$(3,t)};var vle=null,mle=null;kB(kjt,"RegEx/ParserForXMLSchema",1824);Xft(117,1,Njt,tm),H_t.$l=function(t){throw um(new Eb("Not supported."))},H_t._l=function(){return-1},H_t.am=function(t){return null},H_t.bm=function(){return null},H_t.cm=function(t){},H_t.dm=function(t){},H_t.em=function(){return 0},H_t.Ib=function(){return this.fm(0)},H_t.fm=function(t){return 11==this.e?".":""},H_t.e=0;var yle,ble,xle,wle,_le,kle,Tle,Mle,Ale,Sle,Ele,Cle,Ple,Lle,Ole,Ile,Dle,Rle,zle,Nle,jle,Fle,Ble=null,Ule=null,Hle=null,Vle=kB(kjt,"RegEx/Token",117);Xft(136,117,{3:1,136:1,117:1},aW),H_t.fm=function(t){var e,n,r;if(4==this.e)if(this==Tle)n=".";else if(this==kle)n="\\d";else if(this==Nle)n="\\w";else if(this==Ole)n="\\s";else{for((r=new Cx).a+="[",e=0;e0&&(r.a+=","),this.b[e]===this.b[e+1]?mE(r,Tyt(this.b[e])):(mE(r,Tyt(this.b[e])),r.a+="-",mE(r,Tyt(this.b[e+1])));r.a+="]",n=r.a}else if(this==Ele)n="\\D";else if(this==Ple)n="\\W";else if(this==Cle)n="\\S";else{for((r=new Cx).a+="[^",e=0;e0&&(r.a+=","),this.b[e]===this.b[e+1]?mE(r,Tyt(this.b[e])):(mE(r,Tyt(this.b[e])),r.a+="-",mE(r,Tyt(this.b[e+1])));r.a+="]",n=r.a}return n},H_t.a=!1,H_t.c=!1;kB(kjt,"RegEx/RangeToken",136);Xft(584,1,{584:1},Qv),H_t.a=0;kB(kjt,"RegEx/RegexParser/ReferencePosition",584);Xft(583,1,{3:1,583:1},M_),H_t.Fb=function(t){var e;return null!=t&&(!!CP(t,583)&&(e=ZR(t,583),FD(this.b,e.b)&&this.a==e.a))},H_t.Hb=function(){return $nt(this.b+"/"+dpt(this.a))},H_t.Ib=function(){return this.c.fm(this.a)},H_t.a=0;kB(kjt,"RegEx/RegularExpression",583);Xft(223,117,Njt,UN),H_t._l=function(){return this.a},H_t.fm=function(t){var e,n;switch(this.e){case 0:switch(this.a){case 124:case 42:case 43:case 63:case 40:case 41:case 46:case 91:case 123:case 92:n="\\"+rD(this.a&dTt);break;case 12:n="\\f";break;case 10:n="\\n";break;case 13:n="\\r";break;case 9:n="\\t";break;case 27:n="\\e";break;default:n=this.a>=iMt?"\\v"+hO(e="0"+(this.a>>>0).toString(16),e.length-6,e.length):""+rD(this.a&dTt)}break;case 8:n=this==Ale||this==Sle?""+rD(this.a&dTt):"\\"+rD(this.a&dTt);break;default:n=null}return n},H_t.a=0;kB(kjt,"RegEx/Token/CharToken",223);Xft(309,117,Njt,a$),H_t.am=function(t){return this.a},H_t.cm=function(t){this.b=t},H_t.dm=function(t){this.c=t},H_t.em=function(){return 1},H_t.fm=function(t){var e;if(3==this.e)if(this.c<0&&this.b<0)e=this.a.fm(t)+"*";else if(this.c==this.b)e=this.a.fm(t)+"{"+this.c+"}";else if(this.c>=0&&this.b>=0)e=this.a.fm(t)+"{"+this.c+","+this.b+"}";else{if(!(this.c>=0&&this.b<0))throw um(new Eb("Token#toString(): CLOSURE "+this.c+rkt+this.b));e=this.a.fm(t)+"{"+this.c+",}"}else if(this.c<0&&this.b<0)e=this.a.fm(t)+"*?";else if(this.c==this.b)e=this.a.fm(t)+"{"+this.c+"}?";else if(this.c>=0&&this.b>=0)e=this.a.fm(t)+"{"+this.c+","+this.b+"}?";else{if(!(this.c>=0&&this.b<0))throw um(new Eb("Token#toString(): NONGREEDYCLOSURE "+this.c+rkt+this.b));e=this.a.fm(t)+"{"+this.c+",}?"}return e},H_t.b=0,H_t.c=0;kB(kjt,"RegEx/Token/ClosureToken",309);Xft(821,117,Njt,eB),H_t.am=function(t){return 0==t?this.a:this.b},H_t.em=function(){return 2},H_t.fm=function(t){return 3==this.b.e&&this.b.am(0)==this.a?this.a.fm(t)+"+":9==this.b.e&&this.b.am(0)==this.a?this.a.fm(t)+"+?":this.a.fm(t)+""+this.b.fm(t)};kB(kjt,"RegEx/Token/ConcatToken",821);Xft(1822,117,Njt,tQ),H_t.am=function(t){if(0==t)return this.d;if(1==t)return this.b;throw um(new Eb("Internal Error: "+t))},H_t.em=function(){return this.b?2:1},H_t.fm=function(t){var e;return e=this.c>0?"(?("+this.c+")":8==this.a.e?"(?("+this.a+")":"(?"+this.a,this.b?e+=this.d+"|"+this.b+")":e+=this.d+")",e},H_t.c=0;kB(kjt,"RegEx/Token/ConditionToken",1822);Xft(1823,117,Njt,iW),H_t.am=function(t){return this.b},H_t.em=function(){return 1},H_t.fm=function(t){return"(?"+(0==this.a?"":dpt(this.a))+(0==this.c?"":dpt(this.c))+":"+this.b.fm(t)+")"},H_t.a=0,H_t.c=0;kB(kjt,"RegEx/Token/ModifierToken",1823);Xft(822,117,Njt,iU),H_t.am=function(t){return this.a},H_t.em=function(){return 1},H_t.fm=function(t){var e;switch(e=null,this.e){case 6:e=0==this.b?"(?:"+this.a.fm(t)+")":"("+this.a.fm(t)+")";break;case 20:e="(?="+this.a.fm(t)+")";break;case 21:e="(?!"+this.a.fm(t)+")";break;case 22:e="(?<="+this.a.fm(t)+")";break;case 23:e="(?"+this.a.fm(t)+")"}return e},H_t.b=0;kB(kjt,"RegEx/Token/ParenToken",822);Xft(521,117,{3:1,117:1,521:1},tq),H_t.bm=function(){return this.b},H_t.fm=function(t){return 12==this.e?"\\"+this.a:function(t){var e,n,r,i;for(i=t.length,e=null,r=0;r=0?(e||(e=new Px,r>0&&mE(e,t.substr(0,r))),e.a+="\\",jB(e,n&dTt)):e&&jB(e,n&dTt);return e?e.a:t}(this.b)},H_t.a=0;kB(kjt,"RegEx/Token/StringToken",521);Xft(465,117,Njt,HC),H_t.$l=function(t){Fbt(this,t)},H_t.am=function(t){return ZR(hU(this.a,t),117)},H_t.em=function(){return this.a?this.a.a.c.length:0},H_t.fm=function(t){var e,n,r,i,a;if(1==this.e){if(2==this.a.a.c.length)e=ZR(hU(this.a,0),117),i=3==(n=ZR(hU(this.a,1),117)).e&&n.am(0)==e?e.fm(t)+"+":9==n.e&&n.am(0)==e?e.fm(t)+"+?":e.fm(t)+""+n.fm(t);else{for(a=new Cx,r=0;r=t.c.b:t.a<=t.c.b))throw um(new jm);return e=t.a,t.a+=t.c.c,++t.b,g7(e)}(this)},H_t.Ub=function(){return function(t){if(t.b<=0)throw um(new jm);return--t.b,t.a-=t.c.c,g7(t.a)}(this)},H_t.Wb=function(t){ZR(t,19),function(){throw um(new cx(Hjt))}()},H_t.Ob=function(){return this.c.c<0?this.a>=this.c.b:this.a<=this.c.b},H_t.Sb=function(){return this.b>0},H_t.Tb=function(){return this.b},H_t.Vb=function(){return this.b-1},H_t.Qb=function(){throw um(new cx(Vjt))},H_t.a=0,H_t.b=0;kB(Bjt,"ExclusiveRange/RangeIterator",254);var Wle,Yle,$le=MU(qzt,"C"),Xle=MU(Yzt,"I"),Kle=MU(X_t,"Z"),Zle=MU($zt,"J"),Jle=MU(Vzt,"B"),Qle=MU(Gzt,"D"),tce=MU(Wzt,"F"),ece=MU(Xzt,"S"),nce=oN("org.eclipse.elk.core.labels","ILabelManager"),rce=oN(iRt,"DiagnosticChain"),ice=oN(ENt,"ResourceSet"),ace=kB(iRt,"InvocationTargetException",null),oce=(Fx(),function(t){return Fx(),function(){return cY(t,this,arguments)}}),sce=sce=function(t,e,n,r){C_();var i=q_t;function a(){for(var t=0;t0&&void 0!==arguments[0]?arguments[0]:{};!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e);var r=Object.assign({},t),i=!1;try{i=!0}catch(s){}if(t.workerUrl)if(i){var a=n(4408);r.workerFactory=function(t){return new a(t)}}else console.warn("Web worker requested but 'web-worker' package not installed. \nConsider installing the package or pass your own 'workerFactory' to ELK's constructor.\n... Falling back to non-web worker version.");if(!r.workerFactory){var o=n(3139).Worker;r.workerFactory=function(t){return new o(t)}}return function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!==typeof e&&"function"!==typeof e?t:e}(this,(e.__proto__||Object.getPrototypeOf(e)).call(this,r))}return function(t,e){if("function"!==typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(e,t),e}(n(9400).default);Object.defineProperty(t.exports,"__esModule",{value:!0}),t.exports=r,r.default=r},5641:function(t,e,n){t.exports=n(2132)},2132:function(t,e){var n,r,i;(function(){var a,o,s,l,c,u,f,h,d,p,g,v,m,y,b;s=Math.floor,p=Math.min,o=function(t,e){return te?1:0},d=function(t,e,n,r,i){var a;if(null==n&&(n=0),null==i&&(i=o),n<0)throw new Error("lo must be non-negative");for(null==r&&(r=t.length);nn;0<=n?e++:e--)c.push(e);return c}.apply(this).reverse(),l=[],r=0,i=a.length;rg;0<=g?++u:--u)v.push(c(t,n));return v},y=function(t,e,n,r){var i,a,s;for(null==r&&(r=o),i=t[n];n>e&&r(i,a=t[s=n-1>>1])<0;)t[n]=a,n=s;return t[n]=i},b=function(t,e,n){var r,i,a,s,l;for(null==n&&(n=o),i=t.length,l=e,a=t[e],r=2*e+1;r-1&&t%1==0&&t-1}},7109:function(t,e,n){var r=n(7112);t.exports=function(t,e){var n=this.__data__,i=r(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this}},4086:function(t,e,n){var r=n(9676),i=n(8384),a=n(5797);t.exports=function(){this.size=0,this.__data__={hash:new r,map:new(a||i),string:new r}}},9255:function(t,e,n){var r=n(2799);t.exports=function(t){var e=r(this,t).delete(t);return this.size-=e?1:0,e}},9186:function(t,e,n){var r=n(2799);t.exports=function(t){return r(this,t).get(t)}},3423:function(t,e,n){var r=n(2799);t.exports=function(t){return r(this,t).has(t)}},3739:function(t,e,n){var r=n(2799);t.exports=function(t,e){var n=r(this,t),i=n.size;return n.set(t,e),this.size+=n.size==i?0:1,this}},4634:function(t,e,n){var r=n(9151),i=500;t.exports=function(t){var e=r(t,(function(t){return n.size===i&&n.clear(),t})),n=e.cache;return e}},9620:function(t,e,n){var r=n(8136)(Object,"create");t.exports=r},3581:function(t){var e=Object.prototype.toString;t.exports=function(t){return e.call(t)}},7009:function(t,e,n){var r=n(1032),i="object"==typeof self&&self&&self.Object===Object&&self,a=r||i||Function("return this")();t.exports=a},170:function(t,e,n){var r=n(4634),i=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,a=/\\(\\)?/g,o=r((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(i,(function(t,n,r,i){e.push(r?i.replace(a,"$1"):n||t)})),e}));t.exports=o},9793:function(t,e,n){var r=n(152),i=1/0;t.exports=function(t){if("string"==typeof t||r(t))return t;var e=t+"";return"0"==e&&1/t==-i?"-0":e}},7907:function(t){var e=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return e.call(t)}catch(n){}try{return t+""}catch(n){}}return""}},6050:function(t){var e=/\s/;t.exports=function(t){for(var n=t.length;n--&&e.test(t.charAt(n)););return n}},8573:function(t,e,n){var r=n(8092),i=n(72),a=n(2582),o="Expected a function",s=Math.max,l=Math.min;t.exports=function(t,e,n){var c,u,f,h,d,p,g=0,v=!1,m=!1,y=!0;if("function"!=typeof t)throw new TypeError(o);function b(e){var n=c,r=u;return c=u=void 0,g=e,h=t.apply(r,n)}function x(t){var n=t-p;return void 0===p||n>=e||n<0||m&&t-g>=f}function w(){var t=i();if(x(t))return _(t);d=setTimeout(w,function(t){var n=e-(t-p);return m?l(n,f-(t-g)):n}(t))}function _(t){return d=void 0,y&&c?b(t):(c=u=void 0,h)}function k(){var t=i(),n=x(t);if(c=arguments,u=this,p=t,n){if(void 0===d)return function(t){return g=t,d=setTimeout(w,e),v?b(t):h}(p);if(m)return clearTimeout(d),d=setTimeout(w,e),b(p)}return void 0===d&&(d=setTimeout(w,e)),h}return e=a(e)||0,r(n)&&(v=!!n.leading,f=(m="maxWait"in n)?s(a(n.maxWait)||0,e):f,y="trailing"in n?!!n.trailing:y),k.cancel=function(){void 0!==d&&clearTimeout(d),g=0,c=p=u=d=void 0},k.flush=function(){return void 0===d?h:_(i())},k}},9231:function(t){t.exports=function(t,e){return t===e||t!==t&&e!==e}},6181:function(t,e,n){var r=n(8667);t.exports=function(t,e,n){var i=null==t?void 0:r(t,e);return void 0===i?n:i}},3629:function(t){var e=Array.isArray;t.exports=e},4786:function(t,e,n){var r=n(9066),i=n(8092),a="[object AsyncFunction]",o="[object Function]",s="[object GeneratorFunction]",l="[object Proxy]";t.exports=function(t){if(!i(t))return!1;var e=r(t);return e==o||e==s||e==a||e==l}},8092:function(t){t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},3141:function(t){t.exports=function(t){return null!=t&&"object"==typeof t}},152:function(t,e,n){var r=n(9066),i=n(3141),a="[object Symbol]";t.exports=function(t){return"symbol"==typeof t||i(t)&&r(t)==a}},9151:function(t,e,n){var r=n(8059),i="Expected a function";function a(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError(i);var n=function n(){var r=arguments,i=e?e.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=t.apply(this,r);return n.cache=a.set(i,o)||a,o};return n.cache=new(a.Cache||r),n}a.Cache=r,t.exports=a},72:function(t,e,n){var r=n(7009);t.exports=function(){return r.Date.now()}},4485:function(t,e,n){var r=n(379);t.exports=function(t,e,n){return null==t?t:r(t,e,n)}},2582:function(t,e,n){var r=n(821),i=n(8092),a=n(152),o=NaN,s=/^[-+]0x[0-9a-f]+$/i,l=/^0b[01]+$/i,c=/^0o[0-7]+$/i,u=parseInt;t.exports=function(t){if("number"==typeof t)return t;if(a(t))return o;if(i(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=i(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=r(t);var n=l.test(t);return n||c.test(t)?u(t.slice(2),n?2:8):s.test(t)?o:+t}},168:function(t,e,n){var r=n(8950),i=n(291),a=n(3629),o=n(152),s=n(170),l=n(9793),c=n(3518);t.exports=function(t){return a(t)?r(t,l):o(t)?[t]:i(s(c(t)))}},3518:function(t,e,n){var r=n(2446);t.exports=function(t){return null==t?"":r(t)}},2426:function(t,e,n){(t=n.nmd(t)).exports=function(){"use strict";var e,n;function r(){return e.apply(null,arguments)}function i(t){e=t}function a(t){return t instanceof Array||"[object Array]"===Object.prototype.toString.call(t)}function o(t){return null!=t&&"[object Object]"===Object.prototype.toString.call(t)}function s(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function l(t){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(t).length;var e;for(e in t)if(s(t,e))return!1;return!0}function c(t){return void 0===t}function u(t){return"number"===typeof t||"[object Number]"===Object.prototype.toString.call(t)}function f(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function h(t,e){var n,r=[],i=t.length;for(n=0;n>>0;for(e=0;e0)for(n=0;n=0?n?"+":"":"-")+Math.pow(10,Math.max(0,i)).toString().substr(1)+r}var z=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,N=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,j={},F={};function B(t,e,n,r){var i=r;"string"===typeof r&&(i=function(){return this[r]()}),t&&(F[t]=i),e&&(F[e[0]]=function(){return R(i.apply(this,arguments),e[1],e[2])}),n&&(F[n]=function(){return this.localeData().ordinal(i.apply(this,arguments),t)})}function U(t){return t.match(/\[[\s\S]/)?t.replace(/^\[|\]$/g,""):t.replace(/\\/g,"")}function H(t){var e,n,r=t.match(z);for(e=0,n=r.length;e=0&&N.test(t);)t=t.replace(N,r),N.lastIndex=0,n-=1;return t}var G={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};function W(t){var e=this._longDateFormat[t],n=this._longDateFormat[t.toUpperCase()];return e||!n?e:(this._longDateFormat[t]=n.match(z).map((function(t){return"MMMM"===t||"MM"===t||"DD"===t||"dddd"===t?t.slice(1):t})).join(""),this._longDateFormat[t])}var Y="Invalid date";function $(){return this._invalidDate}var X="%d",K=/\d{1,2}/;function Z(t){return this._ordinal.replace("%d",t)}var J={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function Q(t,e,n,r){var i=this._relativeTime[n];return C(i)?i(t,e,n,r):i.replace(/%d/i,t)}function tt(t,e){var n=this._relativeTime[t>0?"future":"past"];return C(n)?n(e):n.replace(/%s/i,e)}var et={};function nt(t,e){var n=t.toLowerCase();et[n]=et[n+"s"]=et[e]=t}function rt(t){return"string"===typeof t?et[t]||et[t.toLowerCase()]:void 0}function it(t){var e,n,r={};for(n in t)s(t,n)&&(e=rt(n))&&(r[e]=t[n]);return r}var at={};function ot(t,e){at[t]=e}function st(t){var e,n=[];for(e in t)s(t,e)&&n.push({unit:e,priority:at[e]});return n.sort((function(t,e){return t.priority-e.priority})),n}function lt(t){return t%4===0&&t%100!==0||t%400===0}function ct(t){return t<0?Math.ceil(t)||0:Math.floor(t)}function ut(t){var e=+t,n=0;return 0!==e&&isFinite(e)&&(n=ct(e)),n}function ft(t,e){return function(n){return null!=n?(dt(this,t,n),r.updateOffset(this,e),this):ht(this,t)}}function ht(t,e){return t.isValid()?t._d["get"+(t._isUTC?"UTC":"")+e]():NaN}function dt(t,e,n){t.isValid()&&!isNaN(n)&&("FullYear"===e&<(t.year())&&1===t.month()&&29===t.date()?(n=ut(n),t._d["set"+(t._isUTC?"UTC":"")+e](n,t.month(),Qt(n,t.month()))):t._d["set"+(t._isUTC?"UTC":"")+e](n))}function pt(t){return C(this[t=rt(t)])?this[t]():this}function gt(t,e){if("object"===typeof t){var n,r=st(t=it(t)),i=r.length;for(n=0;n68?1900:2e3)};var ve=ft("FullYear",!0);function me(){return lt(this.year())}function ye(t,e,n,r,i,a,o){var s;return t<100&&t>=0?(s=new Date(t+400,e,n,r,i,a,o),isFinite(s.getFullYear())&&s.setFullYear(t)):s=new Date(t,e,n,r,i,a,o),s}function be(t){var e,n;return t<100&&t>=0?((n=Array.prototype.slice.call(arguments))[0]=t+400,e=new Date(Date.UTC.apply(null,n)),isFinite(e.getUTCFullYear())&&e.setUTCFullYear(t)):e=new Date(Date.UTC.apply(null,arguments)),e}function xe(t,e,n){var r=7+e-n;return-(7+be(t,0,r).getUTCDay()-e)%7+r-1}function we(t,e,n,r,i){var a,o,s=1+7*(e-1)+(7+n-r)%7+xe(t,r,i);return s<=0?o=ge(a=t-1)+s:s>ge(t)?(a=t+1,o=s-ge(t)):(a=t,o=s),{year:a,dayOfYear:o}}function _e(t,e,n){var r,i,a=xe(t.year(),e,n),o=Math.floor((t.dayOfYear()-a-1)/7)+1;return o<1?r=o+ke(i=t.year()-1,e,n):o>ke(t.year(),e,n)?(r=o-ke(t.year(),e,n),i=t.year()+1):(i=t.year(),r=o),{week:r,year:i}}function ke(t,e,n){var r=xe(t,e,n),i=xe(t+1,e,n);return(ge(t)-r+i)/7}function Te(t){return _e(t,this._week.dow,this._week.doy).week}B("w",["ww",2],"wo","week"),B("W",["WW",2],"Wo","isoWeek"),nt("week","w"),nt("isoWeek","W"),ot("week",5),ot("isoWeek",5),Dt("w",_t),Dt("ww",_t,yt),Dt("W",_t),Dt("WW",_t,yt),Bt(["w","ww","W","WW"],(function(t,e,n,r){e[r.substr(0,1)]=ut(t)}));var Me={dow:0,doy:6};function Ae(){return this._week.dow}function Se(){return this._week.doy}function Ee(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")}function Ce(t){var e=_e(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")}function Pe(t,e){return"string"!==typeof t?t:isNaN(t)?"number"===typeof(t=e.weekdaysParse(t))?t:null:parseInt(t,10)}function Le(t,e){return"string"===typeof t?e.weekdaysParse(t)%7||7:isNaN(t)?null:t}function Oe(t,e){return t.slice(e,7).concat(t.slice(0,e))}B("d",0,"do","day"),B("dd",0,0,(function(t){return this.localeData().weekdaysMin(this,t)})),B("ddd",0,0,(function(t){return this.localeData().weekdaysShort(this,t)})),B("dddd",0,0,(function(t){return this.localeData().weekdays(this,t)})),B("e",0,0,"weekday"),B("E",0,0,"isoWeekday"),nt("day","d"),nt("weekday","e"),nt("isoWeekday","E"),ot("day",11),ot("weekday",11),ot("isoWeekday",11),Dt("d",_t),Dt("e",_t),Dt("E",_t),Dt("dd",(function(t,e){return e.weekdaysMinRegex(t)})),Dt("ddd",(function(t,e){return e.weekdaysShortRegex(t)})),Dt("dddd",(function(t,e){return e.weekdaysRegex(t)})),Bt(["dd","ddd","dddd"],(function(t,e,n,r){var i=n._locale.weekdaysParse(t,r,n._strict);null!=i?e.d=i:v(n).invalidWeekday=t})),Bt(["d","e","E"],(function(t,e,n,r){e[r]=ut(t)}));var Ie="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),De="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Re="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),ze=It,Ne=It,je=It;function Fe(t,e){var n=a(this._weekdays)?this._weekdays:this._weekdays[t&&!0!==t&&this._weekdays.isFormat.test(e)?"format":"standalone"];return!0===t?Oe(n,this._week.dow):t?n[t.day()]:n}function Be(t){return!0===t?Oe(this._weekdaysShort,this._week.dow):t?this._weekdaysShort[t.day()]:this._weekdaysShort}function Ue(t){return!0===t?Oe(this._weekdaysMin,this._week.dow):t?this._weekdaysMin[t.day()]:this._weekdaysMin}function He(t,e,n){var r,i,a,o=t.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],r=0;r<7;++r)a=p([2e3,1]).day(r),this._minWeekdaysParse[r]=this.weekdaysMin(a,"").toLocaleLowerCase(),this._shortWeekdaysParse[r]=this.weekdaysShort(a,"").toLocaleLowerCase(),this._weekdaysParse[r]=this.weekdays(a,"").toLocaleLowerCase();return n?"dddd"===e?-1!==(i=Ht.call(this._weekdaysParse,o))?i:null:"ddd"===e?-1!==(i=Ht.call(this._shortWeekdaysParse,o))?i:null:-1!==(i=Ht.call(this._minWeekdaysParse,o))?i:null:"dddd"===e?-1!==(i=Ht.call(this._weekdaysParse,o))||-1!==(i=Ht.call(this._shortWeekdaysParse,o))||-1!==(i=Ht.call(this._minWeekdaysParse,o))?i:null:"ddd"===e?-1!==(i=Ht.call(this._shortWeekdaysParse,o))||-1!==(i=Ht.call(this._weekdaysParse,o))||-1!==(i=Ht.call(this._minWeekdaysParse,o))?i:null:-1!==(i=Ht.call(this._minWeekdaysParse,o))||-1!==(i=Ht.call(this._weekdaysParse,o))||-1!==(i=Ht.call(this._shortWeekdaysParse,o))?i:null}function Ve(t,e,n){var r,i,a;if(this._weekdaysParseExact)return He.call(this,t,e,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),r=0;r<7;r++){if(i=p([2e3,1]).day(r),n&&!this._fullWeekdaysParse[r]&&(this._fullWeekdaysParse[r]=new RegExp("^"+this.weekdays(i,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[r]=new RegExp("^"+this.weekdaysShort(i,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[r]=new RegExp("^"+this.weekdaysMin(i,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[r]||(a="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[r]=new RegExp(a.replace(".",""),"i")),n&&"dddd"===e&&this._fullWeekdaysParse[r].test(t))return r;if(n&&"ddd"===e&&this._shortWeekdaysParse[r].test(t))return r;if(n&&"dd"===e&&this._minWeekdaysParse[r].test(t))return r;if(!n&&this._weekdaysParse[r].test(t))return r}}function qe(t){if(!this.isValid())return null!=t?this:NaN;var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=Pe(t,this.localeData()),this.add(t-e,"d")):e}function Ge(t){if(!this.isValid())return null!=t?this:NaN;var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")}function We(t){if(!this.isValid())return null!=t?this:NaN;if(null!=t){var e=Le(t,this.localeData());return this.day(this.day()%7?e:e-7)}return this.day()||7}function Ye(t){return this._weekdaysParseExact?(s(this,"_weekdaysRegex")||Ke.call(this),t?this._weekdaysStrictRegex:this._weekdaysRegex):(s(this,"_weekdaysRegex")||(this._weekdaysRegex=ze),this._weekdaysStrictRegex&&t?this._weekdaysStrictRegex:this._weekdaysRegex)}function $e(t){return this._weekdaysParseExact?(s(this,"_weekdaysRegex")||Ke.call(this),t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(s(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Ne),this._weekdaysShortStrictRegex&&t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function Xe(t){return this._weekdaysParseExact?(s(this,"_weekdaysRegex")||Ke.call(this),t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(s(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=je),this._weekdaysMinStrictRegex&&t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function Ke(){function t(t,e){return e.length-t.length}var e,n,r,i,a,o=[],s=[],l=[],c=[];for(e=0;e<7;e++)n=p([2e3,1]).day(e),r=Nt(this.weekdaysMin(n,"")),i=Nt(this.weekdaysShort(n,"")),a=Nt(this.weekdays(n,"")),o.push(r),s.push(i),l.push(a),c.push(r),c.push(i),c.push(a);o.sort(t),s.sort(t),l.sort(t),c.sort(t),this._weekdaysRegex=new RegExp("^("+c.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+o.join("|")+")","i")}function Ze(){return this.hours()%12||12}function Je(){return this.hours()||24}function Qe(t,e){B(t,0,0,(function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)}))}function tn(t,e){return e._meridiemParse}function en(t){return"p"===(t+"").toLowerCase().charAt(0)}B("H",["HH",2],0,"hour"),B("h",["hh",2],0,Ze),B("k",["kk",2],0,Je),B("hmm",0,0,(function(){return""+Ze.apply(this)+R(this.minutes(),2)})),B("hmmss",0,0,(function(){return""+Ze.apply(this)+R(this.minutes(),2)+R(this.seconds(),2)})),B("Hmm",0,0,(function(){return""+this.hours()+R(this.minutes(),2)})),B("Hmmss",0,0,(function(){return""+this.hours()+R(this.minutes(),2)+R(this.seconds(),2)})),Qe("a",!0),Qe("A",!1),nt("hour","h"),ot("hour",13),Dt("a",tn),Dt("A",tn),Dt("H",_t),Dt("h",_t),Dt("k",_t),Dt("HH",_t,yt),Dt("hh",_t,yt),Dt("kk",_t,yt),Dt("hmm",kt),Dt("hmmss",Tt),Dt("Hmm",kt),Dt("Hmmss",Tt),Ft(["H","HH"],Wt),Ft(["k","kk"],(function(t,e,n){var r=ut(t);e[Wt]=24===r?0:r})),Ft(["a","A"],(function(t,e,n){n._isPm=n._locale.isPM(t),n._meridiem=t})),Ft(["h","hh"],(function(t,e,n){e[Wt]=ut(t),v(n).bigHour=!0})),Ft("hmm",(function(t,e,n){var r=t.length-2;e[Wt]=ut(t.substr(0,r)),e[Yt]=ut(t.substr(r)),v(n).bigHour=!0})),Ft("hmmss",(function(t,e,n){var r=t.length-4,i=t.length-2;e[Wt]=ut(t.substr(0,r)),e[Yt]=ut(t.substr(r,2)),e[$t]=ut(t.substr(i)),v(n).bigHour=!0})),Ft("Hmm",(function(t,e,n){var r=t.length-2;e[Wt]=ut(t.substr(0,r)),e[Yt]=ut(t.substr(r))})),Ft("Hmmss",(function(t,e,n){var r=t.length-4,i=t.length-2;e[Wt]=ut(t.substr(0,r)),e[Yt]=ut(t.substr(r,2)),e[$t]=ut(t.substr(i))}));var nn=/[ap]\.?m?\.?/i,rn=ft("Hours",!0);function an(t,e,n){return t>11?n?"pm":"PM":n?"am":"AM"}var on,sn={calendar:I,longDateFormat:G,invalidDate:Y,ordinal:X,dayOfMonthOrdinalParse:K,relativeTime:J,months:te,monthsShort:ee,week:Me,weekdays:Ie,weekdaysMin:Re,weekdaysShort:De,meridiemParse:nn},ln={},cn={};function un(t,e){var n,r=Math.min(t.length,e.length);for(n=0;n0;){if(r=pn(i.slice(0,e).join("-")))return r;if(n&&n.length>=e&&un(i,n)>=e-1)break;e--}a++}return on}function dn(t){return null!=t.match("^[^/\\\\]*$")}function pn(e){var n=null;if(void 0===ln[e]&&t&&t.exports&&dn(e))try{n=on._abbr,Object(function(){var t=new Error("Cannot find module 'undefined'");throw t.code="MODULE_NOT_FOUND",t}()),gn(n)}catch(r){ln[e]=null}return ln[e]}function gn(t,e){var n;return t&&((n=c(e)?yn(t):vn(t,e))?on=n:"undefined"!==typeof console&&console.warn&&console.warn("Locale "+t+" not found. Did you forget to load it?")),on._abbr}function vn(t,e){if(null!==e){var n,r=sn;if(e.abbr=t,null!=ln[t])E("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),r=ln[t]._config;else if(null!=e.parentLocale)if(null!=ln[e.parentLocale])r=ln[e.parentLocale]._config;else{if(null==(n=pn(e.parentLocale)))return cn[e.parentLocale]||(cn[e.parentLocale]=[]),cn[e.parentLocale].push({name:t,config:e}),null;r=n._config}return ln[t]=new O(L(r,e)),cn[t]&&cn[t].forEach((function(t){vn(t.name,t.config)})),gn(t),ln[t]}return delete ln[t],null}function mn(t,e){if(null!=e){var n,r,i=sn;null!=ln[t]&&null!=ln[t].parentLocale?ln[t].set(L(ln[t]._config,e)):(null!=(r=pn(t))&&(i=r._config),e=L(i,e),null==r&&(e.abbr=t),(n=new O(e)).parentLocale=ln[t],ln[t]=n),gn(t)}else null!=ln[t]&&(null!=ln[t].parentLocale?(ln[t]=ln[t].parentLocale,t===gn()&&gn(t)):null!=ln[t]&&delete ln[t]);return ln[t]}function yn(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return on;if(!a(t)){if(e=pn(t))return e;t=[t]}return hn(t)}function bn(){return A(ln)}function xn(t){var e,n=t._a;return n&&-2===v(t).overflow&&(e=n[qt]<0||n[qt]>11?qt:n[Gt]<1||n[Gt]>Qt(n[Vt],n[qt])?Gt:n[Wt]<0||n[Wt]>24||24===n[Wt]&&(0!==n[Yt]||0!==n[$t]||0!==n[Xt])?Wt:n[Yt]<0||n[Yt]>59?Yt:n[$t]<0||n[$t]>59?$t:n[Xt]<0||n[Xt]>999?Xt:-1,v(t)._overflowDayOfYear&&(eGt)&&(e=Gt),v(t)._overflowWeeks&&-1===e&&(e=Kt),v(t)._overflowWeekday&&-1===e&&(e=Zt),v(t).overflow=e),t}var wn=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,_n=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,kn=/Z|[+-]\d\d(?::?\d\d)?/,Tn=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],Mn=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],An=/^\/?Date\((-?\d+)/i,Sn=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,En={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Cn(t){var e,n,r,i,a,o,s=t._i,l=wn.exec(s)||_n.exec(s),c=Tn.length,u=Mn.length;if(l){for(v(t).iso=!0,e=0,n=c;ege(a)||0===t._dayOfYear)&&(v(t)._overflowDayOfYear=!0),n=be(a,0,t._dayOfYear),t._a[qt]=n.getUTCMonth(),t._a[Gt]=n.getUTCDate()),e=0;e<3&&null==t._a[e];++e)t._a[e]=o[e]=r[e];for(;e<7;e++)t._a[e]=o[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[Wt]&&0===t._a[Yt]&&0===t._a[$t]&&0===t._a[Xt]&&(t._nextDay=!0,t._a[Wt]=0),t._d=(t._useUTC?be:ye).apply(null,o),i=t._useUTC?t._d.getUTCDay():t._d.getDay(),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[Wt]=24),t._w&&"undefined"!==typeof t._w.d&&t._w.d!==i&&(v(t).weekdayMismatch=!0)}}function Bn(t){var e,n,r,i,a,o,s,l,c;null!=(e=t._w).GG||null!=e.W||null!=e.E?(a=1,o=4,n=Nn(e.GG,t._a[Vt],_e(Xn(),1,4).year),r=Nn(e.W,1),((i=Nn(e.E,1))<1||i>7)&&(l=!0)):(a=t._locale._week.dow,o=t._locale._week.doy,c=_e(Xn(),a,o),n=Nn(e.gg,t._a[Vt],c.year),r=Nn(e.w,c.week),null!=e.d?((i=e.d)<0||i>6)&&(l=!0):null!=e.e?(i=e.e+a,(e.e<0||e.e>6)&&(l=!0)):i=a),r<1||r>ke(n,a,o)?v(t)._overflowWeeks=!0:null!=l?v(t)._overflowWeekday=!0:(s=we(n,r,i,a,o),t._a[Vt]=s.year,t._dayOfYear=s.dayOfYear)}function Un(t){if(t._f!==r.ISO_8601)if(t._f!==r.RFC_2822){t._a=[],v(t).empty=!0;var e,n,i,a,o,s,l,c=""+t._i,u=c.length,f=0;for(l=(i=q(t._f,t._locale).match(z)||[]).length,e=0;e0&&v(t).unusedInput.push(o),c=c.slice(c.indexOf(n)+n.length),f+=n.length),F[a]?(n?v(t).empty=!1:v(t).unusedTokens.push(a),Ut(a,n,t)):t._strict&&!n&&v(t).unusedTokens.push(a);v(t).charsLeftOver=u-f,c.length>0&&v(t).unusedInput.push(c),t._a[Wt]<=12&&!0===v(t).bigHour&&t._a[Wt]>0&&(v(t).bigHour=void 0),v(t).parsedDateParts=t._a.slice(0),v(t).meridiem=t._meridiem,t._a[Wt]=Hn(t._locale,t._a[Wt],t._meridiem),null!==(s=v(t).era)&&(t._a[Vt]=t._locale.erasConvertYear(s,t._a[Vt])),Fn(t),xn(t)}else Rn(t);else Cn(t)}function Hn(t,e,n){var r;return null==n?e:null!=t.meridiemHour?t.meridiemHour(e,n):null!=t.isPM?((r=t.isPM(n))&&e<12&&(e+=12),r||12!==e||(e=0),e):e}function Vn(t){var e,n,r,i,a,o,s=!1,l=t._f.length;if(0===l)return v(t).invalidFormat=!0,void(t._d=new Date(NaN));for(i=0;ithis?this:t:y()}));function Jn(t,e){var n,r;if(1===e.length&&a(e[0])&&(e=e[0]),!e.length)return Xn();for(n=e[0],r=1;rthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function _r(){if(!c(this._isDSTShifted))return this._isDSTShifted;var t,e={};return w(e,this),(e=Wn(e))._a?(t=e._isUTC?p(e._a):Xn(e._a),this._isDSTShifted=this.isValid()&&cr(e._a,t.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function kr(){return!!this.isValid()&&!this._isUTC}function Tr(){return!!this.isValid()&&this._isUTC}function Mr(){return!!this.isValid()&&this._isUTC&&0===this._offset}r.updateOffset=function(){};var Ar=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,Sr=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function Er(t,e){var n,r,i,a=t,o=null;return sr(t)?a={ms:t._milliseconds,d:t._days,M:t._months}:u(t)||!isNaN(+t)?(a={},e?a[e]=+t:a.milliseconds=+t):(o=Ar.exec(t))?(n="-"===o[1]?-1:1,a={y:0,d:ut(o[Gt])*n,h:ut(o[Wt])*n,m:ut(o[Yt])*n,s:ut(o[$t])*n,ms:ut(lr(1e3*o[Xt]))*n}):(o=Sr.exec(t))?(n="-"===o[1]?-1:1,a={y:Cr(o[2],n),M:Cr(o[3],n),w:Cr(o[4],n),d:Cr(o[5],n),h:Cr(o[6],n),m:Cr(o[7],n),s:Cr(o[8],n)}):null==a?a={}:"object"===typeof a&&("from"in a||"to"in a)&&(i=Lr(Xn(a.from),Xn(a.to)),(a={}).ms=i.milliseconds,a.M=i.months),r=new or(a),sr(t)&&s(t,"_locale")&&(r._locale=t._locale),sr(t)&&s(t,"_isValid")&&(r._isValid=t._isValid),r}function Cr(t,e){var n=t&&parseFloat(t.replace(",","."));return(isNaN(n)?0:n)*e}function Pr(t,e){var n={};return n.months=e.month()-t.month()+12*(e.year()-t.year()),t.clone().add(n.months,"M").isAfter(e)&&--n.months,n.milliseconds=+e-+t.clone().add(n.months,"M"),n}function Lr(t,e){var n;return t.isValid()&&e.isValid()?(e=dr(e,t),t.isBefore(e)?n=Pr(t,e):((n=Pr(e,t)).milliseconds=-n.milliseconds,n.months=-n.months),n):{milliseconds:0,months:0}}function Or(t,e){return function(n,r){var i;return null===r||isNaN(+r)||(E(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),i=n,n=r,r=i),Ir(this,Er(n,r),t),this}}function Ir(t,e,n,i){var a=e._milliseconds,o=lr(e._days),s=lr(e._months);t.isValid()&&(i=null==i||i,s&&ce(t,ht(t,"Month")+s*n),o&&dt(t,"Date",ht(t,"Date")+o*n),a&&t._d.setTime(t._d.valueOf()+a*n),i&&r.updateOffset(t,o||s))}Er.fn=or.prototype,Er.invalid=ar;var Dr=Or(1,"add"),Rr=Or(-1,"subtract");function zr(t){return"string"===typeof t||t instanceof String}function Nr(t){return k(t)||f(t)||zr(t)||u(t)||Fr(t)||jr(t)||null===t||void 0===t}function jr(t){var e,n,r=o(t)&&!l(t),i=!1,a=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],c=a.length;for(e=0;en.valueOf():n.valueOf()9999?V(n,e?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):C(Date.prototype.toISOString)?e?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",V(n,"Z")):V(n,e?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function ti(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var t,e,n,r,i="moment",a="";return this.isLocal()||(i=0===this.utcOffset()?"moment.utc":"moment.parseZone",a="Z"),t="["+i+'("]',e=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",n="-MM-DD[T]HH:mm:ss.SSS",r=a+'[")]',this.format(t+e+n+r)}function ei(t){t||(t=this.isUtc()?r.defaultFormatUtc:r.defaultFormat);var e=V(this,t);return this.localeData().postformat(e)}function ni(t,e){return this.isValid()&&(k(t)&&t.isValid()||Xn(t).isValid())?Er({to:this,from:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()}function ri(t){return this.from(Xn(),t)}function ii(t,e){return this.isValid()&&(k(t)&&t.isValid()||Xn(t).isValid())?Er({from:this,to:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()}function ai(t){return this.to(Xn(),t)}function oi(t){var e;return void 0===t?this._locale._abbr:(null!=(e=yn(t))&&(this._locale=e),this)}r.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",r.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var si=M("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",(function(t){return void 0===t?this.localeData():this.locale(t)}));function li(){return this._locale}var ci=1e3,ui=60*ci,fi=60*ui,hi=3506328*fi;function di(t,e){return(t%e+e)%e}function pi(t,e,n){return t<100&&t>=0?new Date(t+400,e,n)-hi:new Date(t,e,n).valueOf()}function gi(t,e,n){return t<100&&t>=0?Date.UTC(t+400,e,n)-hi:Date.UTC(t,e,n)}function vi(t){var e,n;if(void 0===(t=rt(t))||"millisecond"===t||!this.isValid())return this;switch(n=this._isUTC?gi:pi,t){case"year":e=n(this.year(),0,1);break;case"quarter":e=n(this.year(),this.month()-this.month()%3,1);break;case"month":e=n(this.year(),this.month(),1);break;case"week":e=n(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":e=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":e=n(this.year(),this.month(),this.date());break;case"hour":e=this._d.valueOf(),e-=di(e+(this._isUTC?0:this.utcOffset()*ui),fi);break;case"minute":e=this._d.valueOf(),e-=di(e,ui);break;case"second":e=this._d.valueOf(),e-=di(e,ci)}return this._d.setTime(e),r.updateOffset(this,!0),this}function mi(t){var e,n;if(void 0===(t=rt(t))||"millisecond"===t||!this.isValid())return this;switch(n=this._isUTC?gi:pi,t){case"year":e=n(this.year()+1,0,1)-1;break;case"quarter":e=n(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":e=n(this.year(),this.month()+1,1)-1;break;case"week":e=n(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":e=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":e=n(this.year(),this.month(),this.date()+1)-1;break;case"hour":e=this._d.valueOf(),e+=fi-di(e+(this._isUTC?0:this.utcOffset()*ui),fi)-1;break;case"minute":e=this._d.valueOf(),e+=ui-di(e,ui)-1;break;case"second":e=this._d.valueOf(),e+=ci-di(e,ci)-1}return this._d.setTime(e),r.updateOffset(this,!0),this}function yi(){return this._d.valueOf()-6e4*(this._offset||0)}function bi(){return Math.floor(this.valueOf()/1e3)}function xi(){return new Date(this.valueOf())}function wi(){var t=this;return[t.year(),t.month(),t.date(),t.hour(),t.minute(),t.second(),t.millisecond()]}function _i(){var t=this;return{years:t.year(),months:t.month(),date:t.date(),hours:t.hours(),minutes:t.minutes(),seconds:t.seconds(),milliseconds:t.milliseconds()}}function ki(){return this.isValid()?this.toISOString():null}function Ti(){return m(this)}function Mi(){return d({},v(this))}function Ai(){return v(this).overflow}function Si(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}function Ei(t,e){var n,i,a,o=this._eras||yn("en")._eras;for(n=0,i=o.length;n=0)return l[r]}function Pi(t,e){var n=t.since<=t.until?1:-1;return void 0===e?r(t.since).year():r(t.since).year()+(e-t.offset)*n}function Li(){var t,e,n,r=this.localeData().eras();for(t=0,e=r.length;t(a=ke(t,r,i))&&(e=a),Zi.call(this,t,e,n,r,i))}function Zi(t,e,n,r,i){var a=we(t,e,n,r,i),o=be(a.year,0,a.dayOfYear);return this.year(o.getUTCFullYear()),this.month(o.getUTCMonth()),this.date(o.getUTCDate()),this}function Ji(t){return null==t?Math.ceil((this.month()+1)/3):this.month(3*(t-1)+this.month()%3)}B("N",0,0,"eraAbbr"),B("NN",0,0,"eraAbbr"),B("NNN",0,0,"eraAbbr"),B("NNNN",0,0,"eraName"),B("NNNNN",0,0,"eraNarrow"),B("y",["y",1],"yo","eraYear"),B("y",["yy",2],0,"eraYear"),B("y",["yyy",3],0,"eraYear"),B("y",["yyyy",4],0,"eraYear"),Dt("N",ji),Dt("NN",ji),Dt("NNN",ji),Dt("NNNN",Fi),Dt("NNNNN",Bi),Ft(["N","NN","NNN","NNNN","NNNNN"],(function(t,e,n,r){var i=n._locale.erasParse(t,r,n._strict);i?v(n).era=i:v(n).invalidEra=t})),Dt("y",Et),Dt("yy",Et),Dt("yyy",Et),Dt("yyyy",Et),Dt("yo",Ui),Ft(["y","yy","yyy","yyyy"],Vt),Ft(["yo"],(function(t,e,n,r){var i;n._locale._eraYearOrdinalRegex&&(i=t.match(n._locale._eraYearOrdinalRegex)),n._locale.eraYearOrdinalParse?e[Vt]=n._locale.eraYearOrdinalParse(t,i):e[Vt]=parseInt(t,10)})),B(0,["gg",2],0,(function(){return this.weekYear()%100})),B(0,["GG",2],0,(function(){return this.isoWeekYear()%100})),Vi("gggg","weekYear"),Vi("ggggg","weekYear"),Vi("GGGG","isoWeekYear"),Vi("GGGGG","isoWeekYear"),nt("weekYear","gg"),nt("isoWeekYear","GG"),ot("weekYear",1),ot("isoWeekYear",1),Dt("G",Ct),Dt("g",Ct),Dt("GG",_t,yt),Dt("gg",_t,yt),Dt("GGGG",At,xt),Dt("gggg",At,xt),Dt("GGGGG",St,wt),Dt("ggggg",St,wt),Bt(["gggg","ggggg","GGGG","GGGGG"],(function(t,e,n,r){e[r.substr(0,2)]=ut(t)})),Bt(["gg","GG"],(function(t,e,n,i){e[i]=r.parseTwoDigitYear(t)})),B("Q",0,"Qo","quarter"),nt("quarter","Q"),ot("quarter",7),Dt("Q",mt),Ft("Q",(function(t,e){e[qt]=3*(ut(t)-1)})),B("D",["DD",2],"Do","date"),nt("date","D"),ot("date",9),Dt("D",_t),Dt("DD",_t,yt),Dt("Do",(function(t,e){return t?e._dayOfMonthOrdinalParse||e._ordinalParse:e._dayOfMonthOrdinalParseLenient})),Ft(["D","DD"],Gt),Ft("Do",(function(t,e){e[Gt]=ut(t.match(_t)[0])}));var Qi=ft("Date",!0);function ta(t){var e=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==t?e:this.add(t-e,"d")}B("DDD",["DDDD",3],"DDDo","dayOfYear"),nt("dayOfYear","DDD"),ot("dayOfYear",4),Dt("DDD",Mt),Dt("DDDD",bt),Ft(["DDD","DDDD"],(function(t,e,n){n._dayOfYear=ut(t)})),B("m",["mm",2],0,"minute"),nt("minute","m"),ot("minute",14),Dt("m",_t),Dt("mm",_t,yt),Ft(["m","mm"],Yt);var ea=ft("Minutes",!1);B("s",["ss",2],0,"second"),nt("second","s"),ot("second",15),Dt("s",_t),Dt("ss",_t,yt),Ft(["s","ss"],$t);var na,ra,ia=ft("Seconds",!1);for(B("S",0,0,(function(){return~~(this.millisecond()/100)})),B(0,["SS",2],0,(function(){return~~(this.millisecond()/10)})),B(0,["SSS",3],0,"millisecond"),B(0,["SSSS",4],0,(function(){return 10*this.millisecond()})),B(0,["SSSSS",5],0,(function(){return 100*this.millisecond()})),B(0,["SSSSSS",6],0,(function(){return 1e3*this.millisecond()})),B(0,["SSSSSSS",7],0,(function(){return 1e4*this.millisecond()})),B(0,["SSSSSSSS",8],0,(function(){return 1e5*this.millisecond()})),B(0,["SSSSSSSSS",9],0,(function(){return 1e6*this.millisecond()})),nt("millisecond","ms"),ot("millisecond",16),Dt("S",Mt,mt),Dt("SS",Mt,yt),Dt("SSS",Mt,bt),na="SSSS";na.length<=9;na+="S")Dt(na,Et);function aa(t,e){e[Xt]=ut(1e3*("0."+t))}for(na="S";na.length<=9;na+="S")Ft(na,aa);function oa(){return this._isUTC?"UTC":""}function sa(){return this._isUTC?"Coordinated Universal Time":""}ra=ft("Milliseconds",!1),B("z",0,0,"zoneAbbr"),B("zz",0,0,"zoneName");var la=_.prototype;function ca(t){return Xn(1e3*t)}function ua(){return Xn.apply(null,arguments).parseZone()}function fa(t){return t}la.add=Dr,la.calendar=Hr,la.clone=Vr,la.diff=Kr,la.endOf=mi,la.format=ei,la.from=ni,la.fromNow=ri,la.to=ii,la.toNow=ai,la.get=pt,la.invalidAt=Ai,la.isAfter=qr,la.isBefore=Gr,la.isBetween=Wr,la.isSame=Yr,la.isSameOrAfter=$r,la.isSameOrBefore=Xr,la.isValid=Ti,la.lang=si,la.locale=oi,la.localeData=li,la.max=Zn,la.min=Kn,la.parsingFlags=Mi,la.set=gt,la.startOf=vi,la.subtract=Rr,la.toArray=wi,la.toObject=_i,la.toDate=xi,la.toISOString=Qr,la.inspect=ti,"undefined"!==typeof Symbol&&null!=Symbol.for&&(la[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),la.toJSON=ki,la.toString=Jr,la.unix=bi,la.valueOf=yi,la.creationData=Si,la.eraName=Li,la.eraNarrow=Oi,la.eraAbbr=Ii,la.eraYear=Di,la.year=ve,la.isLeapYear=me,la.weekYear=qi,la.isoWeekYear=Gi,la.quarter=la.quarters=Ji,la.month=ue,la.daysInMonth=fe,la.week=la.weeks=Ee,la.isoWeek=la.isoWeeks=Ce,la.weeksInYear=$i,la.weeksInWeekYear=Xi,la.isoWeeksInYear=Wi,la.isoWeeksInISOWeekYear=Yi,la.date=Qi,la.day=la.days=qe,la.weekday=Ge,la.isoWeekday=We,la.dayOfYear=ta,la.hour=la.hours=rn,la.minute=la.minutes=ea,la.second=la.seconds=ia,la.millisecond=la.milliseconds=ra,la.utcOffset=gr,la.utc=mr,la.local=yr,la.parseZone=br,la.hasAlignedHourOffset=xr,la.isDST=wr,la.isLocal=kr,la.isUtcOffset=Tr,la.isUtc=Mr,la.isUTC=Mr,la.zoneAbbr=oa,la.zoneName=sa,la.dates=M("dates accessor is deprecated. Use date instead.",Qi),la.months=M("months accessor is deprecated. Use month instead",ue),la.years=M("years accessor is deprecated. Use year instead",ve),la.zone=M("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",vr),la.isDSTShifted=M("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",_r);var ha=O.prototype;function da(t,e,n,r){var i=yn(),a=p().set(r,e);return i[n](a,t)}function pa(t,e,n){if(u(t)&&(e=t,t=void 0),t=t||"",null!=e)return da(t,e,n,"month");var r,i=[];for(r=0;r<12;r++)i[r]=da(t,r,n,"month");return i}function ga(t,e,n,r){"boolean"===typeof t?(u(e)&&(n=e,e=void 0),e=e||""):(n=e=t,t=!1,u(e)&&(n=e,e=void 0),e=e||"");var i,a=yn(),o=t?a._week.dow:0,s=[];if(null!=n)return da(e,(n+o)%7,r,"day");for(i=0;i<7;i++)s[i]=da(e,(i+o)%7,r,"day");return s}function va(t,e){return pa(t,e,"months")}function ma(t,e){return pa(t,e,"monthsShort")}function ya(t,e,n){return ga(t,e,n,"weekdays")}function ba(t,e,n){return ga(t,e,n,"weekdaysShort")}function xa(t,e,n){return ga(t,e,n,"weekdaysMin")}ha.calendar=D,ha.longDateFormat=W,ha.invalidDate=$,ha.ordinal=Z,ha.preparse=fa,ha.postformat=fa,ha.relativeTime=Q,ha.pastFuture=tt,ha.set=P,ha.eras=Ei,ha.erasParse=Ci,ha.erasConvertYear=Pi,ha.erasAbbrRegex=zi,ha.erasNameRegex=Ri,ha.erasNarrowRegex=Ni,ha.months=ae,ha.monthsShort=oe,ha.monthsParse=le,ha.monthsRegex=de,ha.monthsShortRegex=he,ha.week=Te,ha.firstDayOfYear=Se,ha.firstDayOfWeek=Ae,ha.weekdays=Fe,ha.weekdaysMin=Ue,ha.weekdaysShort=Be,ha.weekdaysParse=Ve,ha.weekdaysRegex=Ye,ha.weekdaysShortRegex=$e,ha.weekdaysMinRegex=Xe,ha.isPM=en,ha.meridiem=an,gn("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10;return t+(1===ut(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")}}),r.lang=M("moment.lang is deprecated. Use moment.locale instead.",gn),r.langData=M("moment.langData is deprecated. Use moment.localeData instead.",yn);var wa=Math.abs;function _a(){var t=this._data;return this._milliseconds=wa(this._milliseconds),this._days=wa(this._days),this._months=wa(this._months),t.milliseconds=wa(t.milliseconds),t.seconds=wa(t.seconds),t.minutes=wa(t.minutes),t.hours=wa(t.hours),t.months=wa(t.months),t.years=wa(t.years),this}function ka(t,e,n,r){var i=Er(e,n);return t._milliseconds+=r*i._milliseconds,t._days+=r*i._days,t._months+=r*i._months,t._bubble()}function Ta(t,e){return ka(this,t,e,1)}function Ma(t,e){return ka(this,t,e,-1)}function Aa(t){return t<0?Math.floor(t):Math.ceil(t)}function Sa(){var t,e,n,r,i,a=this._milliseconds,o=this._days,s=this._months,l=this._data;return a>=0&&o>=0&&s>=0||a<=0&&o<=0&&s<=0||(a+=864e5*Aa(Ca(s)+o),o=0,s=0),l.milliseconds=a%1e3,t=ct(a/1e3),l.seconds=t%60,e=ct(t/60),l.minutes=e%60,n=ct(e/60),l.hours=n%24,o+=ct(n/24),s+=i=ct(Ea(o)),o-=Aa(Ca(i)),r=ct(s/12),s%=12,l.days=o,l.months=s,l.years=r,this}function Ea(t){return 4800*t/146097}function Ca(t){return 146097*t/4800}function Pa(t){if(!this.isValid())return NaN;var e,n,r=this._milliseconds;if("month"===(t=rt(t))||"quarter"===t||"year"===t)switch(e=this._days+r/864e5,n=this._months+Ea(e),t){case"month":return n;case"quarter":return n/3;case"year":return n/12}else switch(e=this._days+Math.round(Ca(this._months)),t){case"week":return e/7+r/6048e5;case"day":return e+r/864e5;case"hour":return 24*e+r/36e5;case"minute":return 1440*e+r/6e4;case"second":return 86400*e+r/1e3;case"millisecond":return Math.floor(864e5*e)+r;default:throw new Error("Unknown unit "+t)}}function La(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*ut(this._months/12):NaN}function Oa(t){return function(){return this.as(t)}}var Ia=Oa("ms"),Da=Oa("s"),Ra=Oa("m"),za=Oa("h"),Na=Oa("d"),ja=Oa("w"),Fa=Oa("M"),Ba=Oa("Q"),Ua=Oa("y");function Ha(){return Er(this)}function Va(t){return t=rt(t),this.isValid()?this[t+"s"]():NaN}function qa(t){return function(){return this.isValid()?this._data[t]:NaN}}var Ga=qa("milliseconds"),Wa=qa("seconds"),Ya=qa("minutes"),$a=qa("hours"),Xa=qa("days"),Ka=qa("months"),Za=qa("years");function Ja(){return ct(this.days()/7)}var Qa=Math.round,to={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function eo(t,e,n,r,i){return i.relativeTime(e||1,!!n,t,r)}function no(t,e,n,r){var i=Er(t).abs(),a=Qa(i.as("s")),o=Qa(i.as("m")),s=Qa(i.as("h")),l=Qa(i.as("d")),c=Qa(i.as("M")),u=Qa(i.as("w")),f=Qa(i.as("y")),h=a<=n.ss&&["s",a]||a0,h[4]=r,eo.apply(null,h)}function ro(t){return void 0===t?Qa:"function"===typeof t&&(Qa=t,!0)}function io(t,e){return void 0!==to[t]&&(void 0===e?to[t]:(to[t]=e,"s"===t&&(to.ss=e-1),!0))}function ao(t,e){if(!this.isValid())return this.localeData().invalidDate();var n,r,i=!1,a=to;return"object"===typeof t&&(e=t,t=!1),"boolean"===typeof t&&(i=t),"object"===typeof e&&(a=Object.assign({},to,e),null!=e.s&&null==e.ss&&(a.ss=e.s-1)),r=no(this,!i,a,n=this.localeData()),i&&(r=n.pastFuture(+this,r)),n.postformat(r)}var oo=Math.abs;function so(t){return(t>0)-(t<0)||+t}function lo(){if(!this.isValid())return this.localeData().invalidDate();var t,e,n,r,i,a,o,s,l=oo(this._milliseconds)/1e3,c=oo(this._days),u=oo(this._months),f=this.asSeconds();return f?(t=ct(l/60),e=ct(t/60),l%=60,t%=60,n=ct(u/12),u%=12,r=l?l.toFixed(3).replace(/\.?0+$/,""):"",i=f<0?"-":"",a=so(this._months)!==so(f)?"-":"",o=so(this._days)!==so(f)?"-":"",s=so(this._milliseconds)!==so(f)?"-":"",i+"P"+(n?a+n+"Y":"")+(u?a+u+"M":"")+(c?o+c+"D":"")+(e||t||l?"T":"")+(e?s+e+"H":"")+(t?s+t+"M":"")+(l?s+r+"S":"")):"P0D"}var co=or.prototype;return co.isValid=ir,co.abs=_a,co.add=Ta,co.subtract=Ma,co.as=Pa,co.asMilliseconds=Ia,co.asSeconds=Da,co.asMinutes=Ra,co.asHours=za,co.asDays=Na,co.asWeeks=ja,co.asMonths=Fa,co.asQuarters=Ba,co.asYears=Ua,co.valueOf=La,co._bubble=Sa,co.clone=Ha,co.get=Va,co.milliseconds=Ga,co.seconds=Wa,co.minutes=Ya,co.hours=$a,co.days=Xa,co.weeks=Ja,co.months=Ka,co.years=Za,co.humanize=ao,co.toISOString=lo,co.toString=lo,co.toJSON=lo,co.locale=oi,co.localeData=li,co.toIsoString=M("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",lo),co.lang=si,B("X",0,0,"unix"),B("x",0,0,"valueOf"),Dt("x",Ct),Dt("X",Ot),Ft("X",(function(t,e,n){n._d=new Date(1e3*parseFloat(t))})),Ft("x",(function(t,e,n){n._d=new Date(ut(t))})),r.version="2.29.4",i(Xn),r.fn=la,r.min=Qn,r.max=tr,r.now=er,r.utc=p,r.unix=ca,r.months=va,r.isDate=f,r.locale=gn,r.invalid=y,r.duration=Er,r.isMoment=k,r.weekdays=ya,r.parseZone=ua,r.localeData=yn,r.isDuration=sr,r.monthsShort=ma,r.weekdaysMin=xa,r.defineLocale=vn,r.updateLocale=mn,r.locales=bn,r.weekdaysShort=ba,r.normalizeUnits=rt,r.relativeTimeRounding=ro,r.relativeTimeThreshold=io,r.calendarFormat=Ur,r.prototype=la,r.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},r}()},5771:function(t){var e;self,e=function(){return function(){var t={98847:function(t,e,n){"use strict";var r=n(71828),i={"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 a in i){var o=a.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier");r.addStyleRule(o,i[a])}},98222:function(t,e,n){"use strict";t.exports=n(82887)},27206:function(t,e,n){"use strict";t.exports=n(60822)},59893:function(t,e,n){"use strict";t.exports=n(23381)},5224:function(t,e,n){"use strict";t.exports=n(83832)},59509:function(t,e,n){"use strict";t.exports=n(72201)},75557:function(t,e,n){"use strict";t.exports=n(91815)},40338:function(t,e,n){"use strict";t.exports=n(21462)},35080:function(t,e,n){"use strict";t.exports=n(51319)},61396:function(t,e,n){"use strict";t.exports=n(57516)},40549:function(t,e,n){"use strict";t.exports=n(98128)},49866:function(t,e,n){"use strict";t.exports=n(99442)},36089:function(t,e,n){"use strict";t.exports=n(93740)},19548:function(t,e,n){"use strict";t.exports=n(8729)},35831:function(t,e,n){"use strict";t.exports=n(93814)},61039:function(t,e,n){"use strict";t.exports=n(14382)},97040:function(t,e,n){"use strict";t.exports=n(51759)},77986:function(t,e,n){"use strict";t.exports=n(10421)},24296:function(t,e,n){"use strict";t.exports=n(43102)},58872:function(t,e,n){"use strict";t.exports=n(92165)},29626:function(t,e,n){"use strict";t.exports=n(3325)},65591:function(t,e,n){"use strict";t.exports=n(36071)},69738:function(t,e,n){"use strict";t.exports=n(43905)},92650:function(t,e,n){"use strict";t.exports=n(35902)},35630:function(t,e,n){"use strict";t.exports=n(69816)},73434:function(t,e,n){"use strict";t.exports=n(94507)},27909:function(t,e,n){"use strict";var r=n(19548);r.register([n(27206),n(5224),n(58872),n(65591),n(69738),n(92650),n(49866),n(25743),n(6197),n(97040),n(85461),n(73434),n(54201),n(81299),n(47645),n(35630),n(77986),n(83043),n(93005),n(96881),n(4534),n(50581),n(40549),n(77900),n(47582),n(35080),n(21641),n(17280),n(5861),n(29626),n(10021),n(65317),n(96268),n(61396),n(35831),n(16122),n(46163),n(40344),n(40338),n(48131),n(36089),n(55334),n(75557),n(19440),n(99488),n(59893),n(97393),n(98222),n(61039),n(24296),n(66398),n(59509)]),t.exports=r},46163:function(t,e,n){"use strict";t.exports=n(15154)},96881:function(t,e,n){"use strict";t.exports=n(64943)},50581:function(t,e,n){"use strict";t.exports=n(21164)},55334:function(t,e,n){"use strict";t.exports=n(54186)},65317:function(t,e,n){"use strict";t.exports=n(94873)},10021:function(t,e,n){"use strict";t.exports=n(67618)},54201:function(t,e,n){"use strict";t.exports=n(58810)},5861:function(t,e,n){"use strict";t.exports=n(20593)},16122:function(t,e,n){"use strict";t.exports=n(29396)},83043:function(t,e,n){"use strict";t.exports=n(13551)},48131:function(t,e,n){"use strict";t.exports=n(46858)},47582:function(t,e,n){"use strict";t.exports=n(17988)},21641:function(t,e,n){"use strict";t.exports=n(68868)},96268:function(t,e,n){"use strict";t.exports=n(20467)},19440:function(t,e,n){"use strict";t.exports=n(91271)},99488:function(t,e,n){"use strict";t.exports=n(21461)},97393:function(t,e,n){"use strict";t.exports=n(85956)},25743:function(t,e,n){"use strict";t.exports=n(52979)},66398:function(t,e,n){"use strict";t.exports=n(32275)},17280:function(t,e,n){"use strict";t.exports=n(6419)},77900:function(t,e,n){"use strict";t.exports=n(61510)},81299:function(t,e,n){"use strict";t.exports=n(87619)},93005:function(t,e,n){"use strict";t.exports=n(93601)},40344:function(t,e,n){"use strict";t.exports=n(96595)},47645:function(t,e,n){"use strict";t.exports=n(70954)},6197:function(t,e,n){"use strict";t.exports=n(47462)},4534:function(t,e,n){"use strict";t.exports=n(17659)},85461:function(t,e,n){"use strict";t.exports=n(19990)},82884:function(t){"use strict";t.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(t,e,n){"use strict";var r=n(82884),i=n(41940),a=n(85555),o=n(44467).templatedArray;n(24695),t.exports=o("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:i({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:r.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:r.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",a.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",a.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",a.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",a.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:i({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc",_deprecated:{ref:{valType:"string",editType:"calc"}}})},3749:function(t,e,n){"use strict";var r=n(71828),i=n(89298),a=n(92605).draw;function o(t){var e=t._fullLayout;r.filterVisible(e.annotations).forEach((function(e){var n=i.getFromId(t,e.xref),r=i.getFromId(t,e.yref),a=i.getRefType(e.xref),o=i.getRefType(e.yref);e._extremes={},"range"===a&&s(e,n),"range"===o&&s(e,r)}))}function s(t,e){var n,r=e._id,a=r.charAt(0),o=t[a],s=t["a"+a],l=t[a+"ref"],c=t["a"+a+"ref"],u=t["_"+a+"padplus"],f=t["_"+a+"padminus"],h={x:1,y:-1}[a]*t[a+"shift"],d=3*t.arrowsize*t.arrowwidth||0,p=d+h,g=d-h,v=3*t.startarrowsize*t.arrowwidth||0,m=v+h,y=v-h;if(c===l){var b=i.findExtremes(e,[e.r2c(o)],{ppadplus:p,ppadminus:g}),x=i.findExtremes(e,[e.r2c(s)],{ppadplus:Math.max(u,m),ppadminus:Math.max(f,y)});n={min:[b.min[0],x.min[0]],max:[b.max[0],x.max[0]]}}else m=s?m+s:m,y=s?y-s:y,n=i.findExtremes(e,[e.r2c(o)],{ppadplus:Math.max(u,p,m),ppadminus:Math.max(f,g,y)});t._extremes[r]=n}t.exports=function(t){var e=t._fullLayout;if(r.filterVisible(e.annotations).length&&t._fullData.length)return r.syncOrAsync([a,o],t)}},44317:function(t,e,n){"use strict";var r=n(71828),i=n(73972),a=n(44467).arrayEditor;function o(t,e){var n,r,i,a,o,l,c,u=t._fullLayout.annotations,f=[],h=[],d=[],p=(e||[]).length;for(n=0;n0||n.explicitOff.length>0},onClick:function(t,e){var n,s,l=o(t,e),c=l.on,u=l.off.concat(l.explicitOff),f={},h=t._fullLayout.annotations;if(c.length||u.length){for(n=0;n2/3?"right":"center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[e]}for(var Y=!1,$=["x","y"],X=0;X<$.length;X++){var K,Z,J,Q,tt,et=$[X],nt=e[et+"ref"]||et,rt=e["a"+et+"ref"],it={x:m,y:b}[et],at=(L+("x"===et?0:-90))*Math.PI/180,ot=j*Math.cos(at),st=V*Math.sin(at),lt=Math.abs(ot)+Math.abs(st),ct=e[et+"anchor"],ut=e[et+"shift"]*("x"===et?1:-1),ft=P[et],ht=l.getRefType(nt);if(it&&"domain"!==ht){var dt=it.r2fraction(e[et]);(dt<0||dt>1)&&(rt===nt?((dt=it.r2fraction(e["a"+et]))<0||dt>1)&&(Y=!0):Y=!0),K=it._offset+it.r2p(e[et]),Q=.5}else{var pt="domain"===ht;"x"===et?(J=e[et],K=pt?it._offset+it._length*J:K=k.l+k.w*J):(J=1-e[et],K=pt?it._offset+it._length*J:K=k.t+k.h*J),Q=e.showarrow?.5:J}if(e.showarrow){ft.head=K;var gt=e["a"+et];if(tt=ot*q(.5,e.xanchor)-st*q(.5,e.yanchor),rt===nt){var vt=l.getRefType(rt);"domain"===vt?("y"===et&&(gt=1-gt),ft.tail=it._offset+it._length*gt):"paper"===vt?"y"===et?(gt=1-gt,ft.tail=k.t+k.h*gt):ft.tail=k.l+k.w*gt:ft.tail=it._offset+it.r2p(gt),Z=tt}else ft.tail=K+gt,Z=tt+gt;ft.text=ft.tail+tt;var mt=_["x"===et?"width":"height"];if("paper"===nt&&(ft.head=o.constrain(ft.head,1,mt-1)),"pixel"===rt){var yt=-Math.max(ft.tail-3,ft.text),bt=Math.min(ft.tail+3,ft.text)-mt;yt>0?(ft.tail+=yt,ft.text+=yt):bt>0&&(ft.tail-=bt,ft.text-=bt)}ft.tail+=ut,ft.head+=ut}else Z=tt=lt*q(Q,ct),ft.text=K+tt;ft.text+=ut,tt+=ut,Z+=ut,e["_"+et+"padplus"]=lt/2+Z,e["_"+et+"padminus"]=lt/2-Z,e["_"+et+"size"]=lt,e["_"+et+"shift"]=tt}if(Y)z.remove();else{var xt=0,wt=0;if("left"!==e.align&&(xt=(M-x)*("center"===e.align?.5:1)),"top"!==e.valign&&(wt=(R-w)*("middle"===e.valign?.5:1)),f)r.select("svg").attr({x:F+xt-1,y:F+wt}).call(u.setClipUrl,U?C:null,t);else{var _t=F+wt-g.top,kt=F+xt-g.left;G.call(h.positionText,kt,_t).call(u.setClipUrl,U?C:null,t)}H.select("rect").call(u.setRect,F,F,M,R),B.call(u.setRect,N/2,N/2,j-N,V-N),z.call(u.setTranslate,Math.round(P.x.text-j/2),Math.round(P.y.text-V/2)),I.attr({transform:"rotate("+L+","+P.x.text+","+P.y.text+")"});var Tt,Mt=function(n,r){O.selectAll(".annotation-arrow-g").remove();var l=P.x.head,f=P.y.head,h=P.x.tail+n,d=P.y.tail+r,g=P.x.text+n,x=P.y.text+r,w=o.rotationXYMatrix(L,g,x),_=o.apply2DTransform(w),M=o.apply2DTransform2(w),C=+B.attr("width"),D=+B.attr("height"),R=g-.5*C,N=R+C,j=x-.5*D,F=j+D,U=[[R,j,R,F],[R,F,N,F],[N,F,N,j],[N,j,R,j]].map(M);if(!U.reduce((function(t,e){return t^!!o.segmentsIntersect(l,f,l+1e6,f+1e6,e[0],e[1],e[2],e[3])}),!1)){U.forEach((function(t){var e=o.segmentsIntersect(h,d,l,f,t[0],t[1],t[2],t[3]);e&&(h=e.x,d=e.y)}));var H=e.arrowwidth,V=e.arrowcolor,q=e.arrowside,G=O.append("g").style({opacity:c.opacity(V)}).classed("annotation-arrow-g",!0),W=G.append("path").attr("d","M"+h+","+d+"L"+l+","+f).style("stroke-width",H+"px").call(c.stroke,c.rgb(V));if(v(W,q,e),T.annotationPosition&&W.node().parentNode&&!a){var Y=l,$=f;if(e.standoff){var X=Math.sqrt(Math.pow(l-h,2)+Math.pow(f-d,2));Y+=e.standoff*(h-l)/X,$+=e.standoff*(d-f)/X}var K,Z,J=G.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(h-Y)+","+(d-$),transform:s(Y,$)}).style("stroke-width",H+6+"px").call(c.stroke,"rgba(0,0,0,0)").call(c.fill,"rgba(0,0,0,0)");p.init({element:J.node(),gd:t,prepFn:function(){var t=u.getTranslate(z);K=t.x,Z=t.y,m&&m.autorange&&A(m._name+".autorange",!0),b&&b.autorange&&A(b._name+".autorange",!0)},moveFn:function(t,n){var r=_(K,Z),i=r[0]+t,a=r[1]+n;z.call(u.setTranslate,i,a),S("x",y(m,t,"x",k,e)),S("y",y(b,n,"y",k,e)),e.axref===e.xref&&S("ax",y(m,t,"ax",k,e)),e.ayref===e.yref&&S("ay",y(b,n,"ay",k,e)),G.attr("transform",s(t,n)),I.attr({transform:"rotate("+L+","+i+","+a+")"})},doneFn:function(){i.call("_guiRelayout",t,E());var e=document.querySelector(".js-notes-box-panel");e&&e.redraw(e.selectedObj)}})}}};e.showarrow&&Mt(0,0),D&&p.init({element:z.node(),gd:t,prepFn:function(){Tt=I.attr("transform")},moveFn:function(t,n){var r="pointer";if(e.showarrow)e.axref===e.xref?S("ax",y(m,t,"ax",k,e)):S("ax",e.ax+t),e.ayref===e.yref?S("ay",y(b,n,"ay",k.w,e)):S("ay",e.ay+n),Mt(t,n);else{if(a)return;var i,o;if(m)i=y(m,t,"x",k,e);else{var l=e._xsize/k.w,c=e.x+(e._xshift-e.xshift)/k.w-l/2;i=p.align(c+t/k.w,l,0,1,e.xanchor)}if(b)o=y(b,n,"y",k,e);else{var u=e._ysize/k.h,f=e.y-(e._yshift+e.yshift)/k.h-u/2;o=p.align(f-n/k.h,u,0,1,e.yanchor)}S("x",i),S("y",o),m&&b||(r=p.getCursor(m?.5:i,b?.5:o,e.xanchor,e.yanchor))}I.attr({transform:s(t,n)+Tt}),d(z,r)},clickFn:function(n,r){e.captureevents&&t.emit("plotly_clickannotation",W(r))},doneFn:function(){d(z),i.call("_guiRelayout",t,E());var e=document.querySelector(".js-notes-box-panel");e&&e.redraw(e.selectedObj)}})}}}t.exports={draw:function(t){var e=t._fullLayout;e._infolayer.selectAll(".annotation").remove();for(var n=0;n=0,b=e.indexOf("end")>=0,x=p.backoff*v+n.standoff,w=g.backoff*m+n.startstandoff;if("line"===d.nodeName){o={x:+t.attr("x1"),y:+t.attr("y1")},u={x:+t.attr("x2"),y:+t.attr("y2")};var _=o.x-u.x,k=o.y-u.y;if(h=(f=Math.atan2(k,_))+Math.PI,x&&w&&x+w>Math.sqrt(_*_+k*k))return void D();if(x){if(x*x>_*_+k*k)return void D();var T=x*Math.cos(f),M=x*Math.sin(f);u.x+=T,u.y+=M,t.attr({x2:u.x,y2:u.y})}if(w){if(w*w>_*_+k*k)return void D();var A=w*Math.cos(f),S=w*Math.sin(f);o.x-=A,o.y-=S,t.attr({x1:o.x,y1:o.y})}}else if("path"===d.nodeName){var E=d.getTotalLength(),C="";if(E1){c=!0;break}}c?t.fullLayout._infolayer.select(".annotation-"+t.id+'[data-index="'+s+'"]').remove():(l._pdata=i(t.glplot.cameraParams,[e.xaxis.r2l(l.x)*n[0],e.yaxis.r2l(l.y)*n[1],e.zaxis.r2l(l.z)*n[2]]),r(t.graphDiv,l,s,t.id,l._xa,l._ya))}}},2468:function(t,e,n){"use strict";var r=n(73972),i=n(71828);t.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:n(26997)}}},layoutAttributes:n(26997),handleDefaults:n(20226),includeBasePlot:function(t,e){var n=r.subplotsRegistry.gl3d;if(n)for(var a=n.attrRegex,o=Object.keys(t),s=0;s=0))return t;if(3===o)r[o]>1&&(r[o]=1);else if(r[o]>=1)return t}var s=Math.round(255*r[0])+", "+Math.round(255*r[1])+", "+Math.round(255*r[2]);return a?"rgba("+s+", "+r[3]+")":"rgb("+s+")"}o.tinyRGB=function(t){var e=t.toRgb();return"rgb("+Math.round(e.r)+", "+Math.round(e.g)+", "+Math.round(e.b)+")"},o.rgb=function(t){return o.tinyRGB(r(t))},o.opacity=function(t){return t?r(t).getAlpha():0},o.addOpacity=function(t,e){var n=r(t).toRgb();return"rgba("+Math.round(n.r)+", "+Math.round(n.g)+", "+Math.round(n.b)+", "+e+")"},o.combine=function(t,e){var n=r(t).toRgb();if(1===n.a)return r(t).toRgbString();var i=r(e||c).toRgb(),a=1===i.a?i:{r:255*(1-i.a)+i.r*i.a,g:255*(1-i.a)+i.g*i.a,b:255*(1-i.a)+i.b*i.a},o={r:a.r*(1-n.a)+n.r*n.a,g:a.g*(1-n.a)+n.g*n.a,b:a.b*(1-n.a)+n.b*n.a};return r(o).toRgbString()},o.contrast=function(t,e,n){var i=r(t);return 1!==i.getAlpha()&&(i=r(o.combine(t,c))),(i.isDark()?e?i.lighten(e):c:n?i.darken(n):l).toString()},o.stroke=function(t,e){var n=r(e);t.style({stroke:o.tinyRGB(n),"stroke-opacity":n.getAlpha()})},o.fill=function(t,e){var n=r(e);t.style({fill:o.tinyRGB(n),"fill-opacity":n.getAlpha()})},o.clean=function(t){if(t&&"object"===typeof t){var e,n,r,i,s=Object.keys(t);for(e=0;e0?r>=l:r<=l));i++)r>u&&r0?r>=l:r<=l));i++)r>n[0]&&r1){var ct=Math.pow(10,Math.floor(Math.log(lt)/Math.LN10));ot*=ct*c.roundUp(lt/ct,[2,5,10]),(Math.abs(q.start)/q.size+1e-6)%1<2e-6&&(it.tick0=0)}it.dtick=ot}it.domain=o?[nt+O/z.h,nt+Z-O/z.h]:[nt+L/z.w,nt+Z-L/z.w],it.setScale(),t.attr("transform",u(Math.round(z.l),Math.round(z.t)));var ut,ft=t.select("."+M.cbtitleunshift).attr("transform",u(-Math.round(z.l),-Math.round(z.t))),ht=it.ticklabelposition,dt=it.title.font.size,pt=t.select("."+M.cbaxis),gt=0,vt=0;function mt(r,i){var a={propContainer:it,propName:e._propPrefix+"title",traceIndex:e._traceIndex,_meta:e._meta,placeholder:R._dfltTitle.colorbar,containerGroup:t.select("."+M.cbtitle)},o="h"===r.charAt(0)?r.substr(1):"h"+r;t.selectAll("."+o+",."+o+"-math-group").remove(),g.draw(n,r,f(a,i||{}))}function yt(){var t,e;(o&&at||!o&&!at)&&("top"===B&&(t=L+z.l+z.w*I,e=O+z.t+z.h*(1-nt-Z)+3+.75*dt),"bottom"===B&&(t=L+z.l+z.w*I,e=O+z.t+z.h*(1-nt)-3-.25*dt),"right"===B&&(e=O+z.t+z.h*D+3+.75*dt,t=L+z.l+z.w*nt),mt(it._id+"title",{attributes:{x:t,y:e,"text-anchor":o?"start":"middle"}}))}function bt(){if(o&&!at||!o&&at){var t,i,a=it.position||0,s=it._offset+it._length/2;if("right"===B)i=s,t=z.l+z.w*a+10+dt*(it.showticklabels?1:.5);else if(t=s,"bottom"===B&&(i=z.t+z.h*a+10+(-1===ht.indexOf("inside")?it.tickfont.size:0)+("intside"!==it.ticks&&e.ticklen||0)),"top"===B){var l=F.text.split("
").length;i=z.t+z.h*a+10-$-_*dt*l}mt((o?"h":"v")+it._id+"title",{avoid:{selection:r.select(n).selectAll("g."+it._id+"tick"),side:B,offsetTop:o?0:z.t,offsetLeft:o?z.l:0,maxShift:o?R.width:R.height},attributes:{x:t,y:i,"text-anchor":"middle"},transform:{rotate:o?-90:0,offset:0}})}}function xt(){if(!o&&!at||o&&at){var a,l=t.select("."+M.cbtitle),f=l.select("text"),h=[-A/2,A/2],p=l.select(".h"+it._id+"title-math-group").node(),g=15.6;if(f.node()&&(g=parseInt(f.node().style.fontSize,10)*_),p?(a=d.bBox(p),vt=a.width,(gt=a.height)>g&&(h[1]-=(gt-g)/2)):f.node()&&!f.classed(M.jsPlaceholder)&&(a=d.bBox(f.node()),vt=a.width,gt=a.height),o){if(gt){if(gt+=5,"top"===B)it.domain[1]-=gt/z.h,h[1]*=-1;else{it.domain[0]+=gt/z.h;var m=v.lineCount(f);h[1]+=(1-m)*g}l.attr("transform",u(h[0],h[1])),it.setScale()}}else vt&&("right"===B&&(it.domain[0]+=(vt+dt/2)/z.w),l.attr("transform",u(h[0],h[1])),it.setScale())}t.selectAll("."+M.cbfills+",."+M.cblines).attr("transform",o?u(0,Math.round(z.h*(1-it.domain[1]))):u(Math.round(z.w*it.domain[0]),0)),pt.attr("transform",o?u(0,Math.round(-z.t)):u(Math.round(-z.l),0));var y=t.select("."+M.cbfills).selectAll("rect."+M.cbfill).attr("style","").data(W);y.enter().append("rect").classed(M.cbfill,!0).style("stroke","none"),y.exit().remove();var b=U.map(it.c2p).map(Math.round).sort((function(t,e){return t-e}));y.each((function(t,a){var s=[0===a?U[0]:(W[a]+W[a-1])/2,a===W.length-1?U[1]:(W[a]+W[a+1])/2].map(it.c2p).map(Math.round);o&&(s[1]=c.constrain(s[1]+(s[1]>s[0])?1:-1,b[0],b[1]));var l=r.select(this).attr(o?"x":"y",J).attr(o?"y":"x",r.min(s)).attr(o?"width":"height",Math.max($,2)).attr(o?"height":"width",Math.max(r.max(s)-r.min(s),2));if(e._fillgradient)d.gradient(l,n,e._id,o?"vertical":"horizontalreversed",e._fillgradient,"fill");else{var u=V(t).replace("e-","");l.attr("fill",i(u).toHexString())}}));var x=t.select("."+M.cblines).selectAll("path."+M.cbline).data(j.color&&j.width?Y:[]);x.enter().append("path").classed(M.cbline,!0),x.exit().remove(),x.each((function(t){var e=J,n=Math.round(it.c2p(t))+j.width/2%1;r.select(this).attr("d","M"+(o?e+","+n:n+","+e)+(o?"h":"v")+$).call(d.lineGroupStyle,j.width,H(t),j.dash)})),pt.selectAll("g."+it._id+"tick,path").remove();var w=J+$+(A||0)/2-("outside"===e.ticks?1:0),k=s.calcTicks(it),T=s.getTickSigns(it)[2];return s.drawTicks(n,it,{vals:"inside"===it.ticks?s.clipEnds(it,k):k,layer:pt,path:s.makeTickPath(it,w,T),transFn:s.makeTransTickFn(it)}),s.drawLabels(n,it,{vals:k,layer:pt,transFn:s.makeTransTickLabelFn(it),labelFns:s.makeLabelFns(it,w)})}function wt(){var r,s=$+A/2;-1===ht.indexOf("inside")&&(r=d.bBox(pt.node()),s+=o?r.width:r.height),ut=ft.select("text");var c=0,f=o&&"top"===B,g=!o&&"right"===B,v=0;if(ut.node()&&!ut.classed(M.jsPlaceholder)){var y,b=ft.select(".h"+it._id+"title-math-group").node();b&&(o&&at||!o&&!at)?(c=(r=d.bBox(b)).width,y=r.height):(c=(r=d.bBox(ft.node())).right-z.l-(o?J:rt),y=r.bottom-z.t-(o?rt:J),o||"top"!==B||(s+=r.height,v=r.height)),g&&(ut.attr("transform",u(c/2+dt/2,0)),c*=2),s=Math.max(s,o?c:y)}var x=2*(o?L:O)+s+S+A/2,_=0;!o&&F.text&&"bottom"===P&&D<=0&&(x+=_=x/2,v+=_),R._hColorbarMoveTitle=_,R._hColorbarMoveCBTitle=v;var N=S+A;t.select("."+M.cbbg).attr("x",(o?J:rt)-N/2-(o?L:0)).attr("y",(o?rt:J)-(o?K:O+v-_)).attr(o?"width":"height",Math.max(x-_,2)).attr(o?"height":"width",Math.max(K+N,2)).call(p.fill,E).call(p.stroke,e.bordercolor).style("stroke-width",S);var j=g?Math.max(c-10,0):0;if(t.selectAll("."+M.cboutline).attr("x",(o?J:rt+L)+j).attr("y",(o?rt+O-K:J)+(f?gt:0)).attr(o?"width":"height",Math.max($,2)).attr(o?"height":"width",Math.max(K-(o?2*O+gt:2*L+j),2)).call(p.stroke,e.outlinecolor).style({fill:"none","stroke-width":A}),t.attr("transform",u(z.l-(o?Q*x:0),z.t-(o?0:(1-tt)*x-v))),!o&&(S||i(E).getAlpha()&&!i.equals(R.paper_bgcolor,E))){var U=pt.selectAll("text"),H=U[0].length,V=t.select("."+M.cbbg).node(),q=d.bBox(V),G=d.getTranslate(t),W=2;U.each((function(t,e){var n=0,r=H-1;if(e===n||e===r){var i,a=d.bBox(this),o=d.getTranslate(this);if(e===r){var s=a.right+o.x;(i=q.right+G.x+rt-S-W+I-s)>0&&(i=0)}else if(e===n){var l=a.left+o.x;(i=q.left+G.x+rt+S+W-l)<0&&(i=0)}i&&(H<3?this.setAttribute("transform","translate("+i+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}}))}var Y={},X=k[C],Z=T[C],et=k[P],nt=T[P],ot=x-$;o?("pixels"===h?(Y.y=D,Y.t=K*et,Y.b=K*nt):(Y.t=Y.b=0,Y.yt=D+l*et,Y.yb=D-l*nt),"pixels"===w?(Y.x=I,Y.l=x*X,Y.r=x*Z):(Y.l=ot*X,Y.r=ot*Z,Y.xl=I-m*X,Y.xr=I+m*Z)):("pixels"===h?(Y.x=I,Y.l=K*X,Y.r=K*Z):(Y.l=Y.r=0,Y.xl=I+l*X,Y.xr=I-l*Z),"pixels"===w?(Y.y=1-D,Y.t=x*et,Y.b=x*nt):(Y.t=ot*et,Y.b=ot*nt,Y.yt=D-m*et,Y.yb=D+m*nt)),a.autoMargin(n,e._id,Y)}return c.syncOrAsync([a.previousPromises,yt,xt,bt,a.previousPromises,wt],n)}(n,e,t);m&&m.then&&(t._promises||[]).push(m),t._context.edits.colorbarPosition&&function(t,e,n){var r,i,a,s="v"===e.orientation,c=n._fullLayout,f=c._size;l.init({element:t.node(),gd:n,prepFn:function(){r=t.attr("transform"),h(t)},moveFn:function(n,o){t.attr("transform",r+u(n,o)),i=l.align((s?e._uFrac:e._vFrac)+n/f.w,s?e._thickFrac:e._lenFrac,0,1,e.xanchor),a=l.align((s?e._vFrac:1-e._uFrac)-o/f.h,s?e._lenFrac:e._thickFrac,0,1,e.yanchor);var c=l.getCursor(i,a,e.xanchor,e.yanchor);h(t,c)},doneFn:function(){if(h(t),void 0!==i&&void 0!==a){var r={};r[e._propPrefix+"x"]=i,r[e._propPrefix+"y"]=a,void 0!==e._traceIndex?o.call("_guiRestyle",n,r,e._traceIndex):o.call("_guiRelayout",n,r)}}})}(n,e,t)})),e.exit().each((function(e){a.autoMargin(t,e._id)})).remove(),e.order()}}},76228:function(t,e,n){"use strict";var r=n(71828);t.exports=function(t){return r.isPlainObject(t.colorbar)}},12311:function(t,e,n){"use strict";t.exports={moduleType:"component",name:"colorbar",attributes:n(63583),supplyDefaults:n(62499),draw:n(98981).draw,hasColorbar:n(76228)}},50693:function(t,e,n){"use strict";var r=n(63583),i=n(30587).counter,a=n(78607),o=n(63282).scales;function s(t){return"`"+t+"`"}a(o),t.exports=function(t,e){t=t||"";var n,a=(e=e||{}).cLetter||"c",l=("onlyIfNumerical"in e?e.onlyIfNumerical:Boolean(t),"noScale"in e?e.noScale:"marker.line"===t),c="showScaleDflt"in e?e.showScaleDflt:"z"===a,u="string"===typeof e.colorscaleDflt?o[e.colorscaleDflt]:null,f=e.editTypeOverride||"",h=t?t+".":"";"colorAttr"in e?(n=e.colorAttr,e.colorAttr):s(h+(n={z:"z",c:"color"}[a]));var d=a+"auto",p=a+"min",g=a+"max",v=a+"mid",m=(s(h+d),s(h+p),s(h+g),{});m[p]=m[g]=void 0;var y={};y[d]=!1;var b={};return"color"===n&&(b.color={valType:"color",arrayOk:!0,editType:f||"style"},e.anim&&(b.color.anim=!0)),b[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:m},b[p]={valType:"number",dflt:null,editType:f||"plot",impliedEdits:y},b[g]={valType:"number",dflt:null,editType:f||"plot",impliedEdits:y},b[v]={valType:"number",dflt:null,editType:"calc",impliedEdits:m},b.colorscale={valType:"colorscale",editType:"calc",dflt:u,impliedEdits:{autocolorscale:!1}},b.autocolorscale={valType:"boolean",dflt:!1!==e.autoColorDflt,editType:"calc",impliedEdits:{colorscale:void 0}},b.reversescale={valType:"boolean",dflt:!1,editType:"plot"},l||(b.showscale={valType:"boolean",dflt:c,editType:"calc"},b.colorbar=r),e.noColorAxis||(b.coloraxis={valType:"subplotid",regex:i("coloraxis"),dflt:null,editType:"calc"}),b}},78803:function(t,e,n){"use strict";var r=n(92770),i=n(71828),a=n(52075).extractOpts;t.exports=function(t,e,n){var o,s=t._fullLayout,l=n.vals,c=n.containerStr,u=c?i.nestedProperty(e,c).get():e,f=a(u),h=!1!==f.auto,d=f.min,p=f.max,g=f.mid,v=function(){return i.aggNums(Math.min,null,l)},m=function(){return i.aggNums(Math.max,null,l)};void 0===d?d=v():h&&(d=u._colorAx&&r(d)?Math.min(d,v()):v()),void 0===p?p=m():h&&(p=u._colorAx&&r(p)?Math.max(p,m()):m()),h&&void 0!==g&&(p-g>g-d?d=g-(p-g):p-g=0?s.colorscale.sequential:s.colorscale.sequentialminus,f._sync("colorscale",o))}},33046:function(t,e,n){"use strict";var r=n(71828),i=n(52075).hasColorscale,a=n(52075).extractOpts;t.exports=function(t,e){function n(t,e){var n=t["_"+e];void 0!==n&&(t[e]=n)}function o(t,i){var o=i.container?r.nestedProperty(t,i.container).get():t;if(o)if(o.coloraxis)o._colorAx=e[o.coloraxis];else{var s=a(o),l=s.auto;(l||void 0===s.min)&&n(o,i.min),(l||void 0===s.max)&&n(o,i.max),s.autocolorscale&&n(o,"colorscale")}}for(var s=0;s=0;r--,i++){var a=t[r];n[i]=[1-a[0],a[1]]}return n}function p(t,e){e=e||{};for(var n=t.domain,o=t.range,l=o.length,c=new Array(l),u=0;u4/3-s?o:s}},70461:function(t,e,n){"use strict";var r=n(71828),i=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];t.exports=function(t,e,n,a){return t="left"===n?0:"center"===n?1:"right"===n?2:r.constrain(Math.floor(3*t),0,2),e="bottom"===a?0:"middle"===a?1:"top"===a?2:r.constrain(Math.floor(3*e),0,2),i[e][t]}},64505:function(t,e){"use strict";e.selectMode=function(t){return"lasso"===t||"select"===t},e.drawMode=function(t){return"drawclosedpath"===t||"drawopenpath"===t||"drawline"===t||"drawrect"===t||"drawcircle"===t},e.openMode=function(t){return"drawline"===t||"drawopenpath"===t},e.rectMode=function(t){return"select"===t||"drawline"===t||"drawrect"===t||"drawcircle"===t},e.freeMode=function(t){return"lasso"===t||"drawclosedpath"===t||"drawopenpath"===t},e.selectingOrDrawing=function(t){return e.freeMode(t)||e.rectMode(t)}},28569:function(t,e,n){"use strict";var r=n(48956),i=n(57035),a=n(38520),o=n(71828).removeElement,s=n(85555),l=t.exports={};l.align=n(92807),l.getCursor=n(70461);var c=n(26041);function u(){var t=document.createElement("div");t.className="dragcover";var e=t.style;return e.position="fixed",e.left=0,e.right=0,e.top=0,e.bottom=0,e.zIndex=999999999,e.background="none",document.body.appendChild(t),t}function f(t){return r(t.changedTouches?t.changedTouches[0]:t,document.body)}l.unhover=c.wrapped,l.unhoverRaw=c.raw,l.init=function(t){var e,n,r,c,h,d,p,g,v=t.gd,m=1,y=v._context.doubleClickDelay,b=t.element;v._mouseDownTime||(v._mouseDownTime=0),b.style.pointerEvents="all",b.onmousedown=w,a?(b._ontouchstart&&b.removeEventListener("touchstart",b._ontouchstart),b._ontouchstart=w,b.addEventListener("touchstart",w,{passive:!1})):b.ontouchstart=w;var x=t.clampFn||function(t,e,n){return Math.abs(t)y&&(m=Math.max(m-1,1)),v._dragged)t.doneFn&&t.doneFn();else if(t.clickFn&&t.clickFn(m,d),!g){var n;try{n=new MouseEvent("click",e)}catch(a){var r=f(e);(n=document.createEvent("MouseEvents")).initMouseEvent("click",e.bubbles,e.cancelable,e.view,e.detail,e.screenX,e.screenY,r[0],r[1],e.ctrlKey,e.altKey,e.shiftKey,e.metaKey,e.button,e.relatedTarget)}p.dispatchEvent(n)}v._dragging=!1,v._dragged=!1}else v._dragged=!1}},l.coverSlip=u},26041:function(t,e,n){"use strict";var r=n(11086),i=n(79990),a=n(24401).getGraphDiv,o=n(26675),s=t.exports={};s.wrapped=function(t,e,n){(t=a(t))._fullLayout&&i.clear(t._fullLayout._uid+o.HOVERID),s.raw(t,e,n)},s.raw=function(t,e){var n=t._fullLayout,i=t._hoverdata;e||(e={}),e.target&&!t._dragged&&!1===r.triggerHandler(t,"plotly_beforehover",e)||(n._hoverlayer.selectAll("g").remove(),n._hoverlayer.selectAll("line").remove(),n._hoverlayer.selectAll("circle").remove(),t._hoverdata=void 0,e.target&&i&&t.emit("plotly_unhover",{event:e,points:i}))}},79952:function(t,e){"use strict";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(t,e,n){"use strict";var r=n(39898),i=n(71828),a=i.numberFormat,o=n(92770),s=n(84267),l=n(73972),c=n(7901),u=n(21081),f=i.strTranslate,h=n(63893),d=n(77922),p=n(18783).LINE_SPACING,g=n(37822).DESELECTDIM,v=n(34098),m=n(39984),y=n(23469).appendArrayPointValue,b=t.exports={};function x(t,e,n){var r=e.fillpattern,i=r&&b.getPatternAttr(r.shape,0,"");if(i){var a=b.getPatternAttr(r.bgcolor,0,null),o=b.getPatternAttr(r.fgcolor,0,null),s=r.fgopacity,l=b.getPatternAttr(r.size,0,8),u=b.getPatternAttr(r.solidity,0,.3),f=e.uid;b.pattern(t,"point",n,f,i,l,u,void 0,r.fillmode,a,o,s)}else e.fillcolor&&t.call(c.fill,e.fillcolor)}b.font=function(t,e,n,r){i.isPlainObject(e)&&(r=e.color,n=e.size,e=e.family),e&&t.style("font-family",e),n+1&&t.style("font-size",n+"px"),r&&t.call(c.fill,r)},b.setPosition=function(t,e,n){t.attr("x",e).attr("y",n)},b.setSize=function(t,e,n){t.attr("width",e).attr("height",n)},b.setRect=function(t,e,n,r,i){t.call(b.setPosition,e,n).call(b.setSize,r,i)},b.translatePoint=function(t,e,n,r){var i=n.c2p(t.x),a=r.c2p(t.y);return!!(o(i)&&o(a)&&e.node())&&("text"===e.node().nodeName?e.attr("x",i).attr("y",a):e.attr("transform",f(i,a)),!0)},b.translatePoints=function(t,e,n){t.each((function(t){var i=r.select(this);b.translatePoint(t,i,e,n)}))},b.hideOutsideRangePoint=function(t,e,n,r,i,a){e.attr("display",n.isPtWithinRange(t,i)&&r.isPtWithinRange(t,a)?null:"none")},b.hideOutsideRangePoints=function(t,e){if(e._hasClipOnAxisFalse){var n=e.xaxis,i=e.yaxis;t.each((function(e){var a=e[0].trace,o=a.xcalendar,s=a.ycalendar,c=l.traceIs(a,"bar-like")?".bartext":".point,.textpoint";t.selectAll(c).each((function(t){b.hideOutsideRangePoint(t,r.select(this),n,i,o,s)}))}))}},b.crispRound=function(t,e,n){return e&&o(e)?t._context.staticPlot?e:e<1?1:Math.round(e):n||0},b.singleLineStyle=function(t,e,n,r,i){e.style("fill","none");var a=(((t||[])[0]||{}).trace||{}).line||{},o=n||a.width||0,s=i||a.dash||"";c.stroke(e,r||a.color),b.dashLine(e,s,o)},b.lineGroupStyle=function(t,e,n,i){t.style("fill","none").each((function(t){var a=(((t||[])[0]||{}).trace||{}).line||{},o=e||a.width||0,s=i||a.dash||"";r.select(this).call(c.stroke,n||a.color).call(b.dashLine,s,o)}))},b.dashLine=function(t,e,n){n=+n||0,e=b.dashStyle(e,n),t.style({"stroke-dasharray":e,"stroke-width":n+"px"})},b.dashStyle=function(t,e){e=+e||1;var n=Math.max(e,3);return"solid"===t?t="":"dot"===t?t=n+"px,"+n+"px":"dash"===t?t=3*n+"px,"+3*n+"px":"longdash"===t?t=5*n+"px,"+5*n+"px":"dashdot"===t?t=3*n+"px,"+n+"px,"+n+"px,"+n+"px":"longdashdot"===t&&(t=5*n+"px,"+2*n+"px,"+n+"px,"+2*n+"px"),t},b.singleFillStyle=function(t,e){var n=r.select(t.node());x(t,((n.data()[0]||[])[0]||{}).trace||{},e)},b.fillGroupStyle=function(t,e){t.style("stroke-width",0).each((function(t){var n=r.select(this);t[0].trace&&x(n,t[0].trace,e)}))};var w=n(90998);b.symbolNames=[],b.symbolFuncs=[],b.symbolBackOffs=[],b.symbolNeedLines={},b.symbolNoDot={},b.symbolNoFill={},b.symbolList=[],Object.keys(w).forEach((function(t){var e=w[t],n=e.n;b.symbolList.push(n,String(n),t,n+100,String(n+100),t+"-open"),b.symbolNames[n]=t,b.symbolFuncs[n]=e.f,b.symbolBackOffs[n]=e.backoff||0,e.needLine&&(b.symbolNeedLines[n]=!0),e.noDot?b.symbolNoDot[n]=!0:b.symbolList.push(n+200,String(n+200),t+"-dot",n+300,String(n+300),t+"-open-dot"),e.noFill&&(b.symbolNoFill[n]=!0)}));var _=b.symbolNames.length,k="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";function T(t,e,n,r){var i=t%100;return b.symbolFuncs[i](e,n,r)+(t>=200?k:"")}b.symbolNumber=function(t){if(o(t))t=+t;else if("string"===typeof t){var e=0;t.indexOf("-open")>0&&(e=100,t=t.replace("-open","")),t.indexOf("-dot")>0&&(e+=200,t=t.replace("-dot","")),(t=b.symbolNames.indexOf(t))>=0&&(t+=e)}return t%100>=_||t>=400?0:Math.floor(Math.max(t,0))};var M={x1:1,x2:0,y1:0,y2:0},A={x1:0,x2:0,y1:1,y2:0},S=a("~f"),E={radial:{node:"radialGradient"},radialreversed:{node:"radialGradient",reversed:!0},horizontal:{node:"linearGradient",attrs:M},horizontalreversed:{node:"linearGradient",attrs:M,reversed:!0},vertical:{node:"linearGradient",attrs:A},verticalreversed:{node:"linearGradient",attrs:A,reversed:!0}};b.gradient=function(t,e,n,a,o,l){for(var u=o.length,f=E[a],h=new Array(u),d=0;d=100;var f=it(t,n),h=Y(t,n);e.attr("d",T(u,l,f,h))}var d,p,g,v=!1;if(t.so)g=s.outlierwidth,p=s.outliercolor,d=o.outliercolor;else{var m=(s||{}).width;g=(t.mlw+1||m+1||(t.trace?(t.trace.marker.line||{}).width:0)+1)-1||0,p="mlc"in t?t.mlcc=r.lineScale(t.mlc):i.isArrayOrTypedArray(s.color)?c.defaultLine:s.color,i.isArrayOrTypedArray(o.color)&&(d=c.defaultLine,v=!0),d="mc"in t?t.mcc=r.markerScale(t.mc):o.color||"rgba(0,0,0,0)",r.selectedColorFn&&(d=r.selectedColorFn(t))}if(t.om)e.call(c.stroke,d).style({"stroke-width":(g||1)+"px",fill:"none"});else{e.style("stroke-width",(t.isBlank?0:g)+"px");var y=o.gradient,x=t.mgt;x?v=!0:x=y&&y.type,i.isArrayOrTypedArray(x)&&(x=x[0],E[x]||(x=0));var w=o.pattern,_=w&&b.getPatternAttr(w.shape,t.i,"");if(x&&"none"!==x){var k=t.mgc;k?v=!0:k=y.color;var M=n.uid;v&&(M+="-"+t.i),b.gradient(e,a,M,x,[[0,k],[1,d]],"fill")}else if(_){var A=b.getPatternAttr(w.bgcolor,t.i,null),S=b.getPatternAttr(w.fgcolor,t.i,null),C=w.fgopacity,P=b.getPatternAttr(w.size,t.i,8),L=b.getPatternAttr(w.solidity,t.i,.3),O=t.mcc||i.isArrayOrTypedArray(w.shape)||i.isArrayOrTypedArray(w.bgcolor)||i.isArrayOrTypedArray(w.size)||i.isArrayOrTypedArray(w.solidity),I=n.uid;O&&(I+="-"+t.i),b.pattern(e,"point",a,I,_,P,L,t.mcc,w.fillmode,A,S,C)}else c.fill(e,d);g&&c.stroke(e,p)}},b.makePointStyleFns=function(t){var e={},n=t.marker;return e.markerScale=b.tryColorscale(n,""),e.lineScale=b.tryColorscale(n,"line"),l.traceIs(t,"symbols")&&(e.ms2mrc=v.isBubble(t)?m(t):function(){return(n.size||6)/2}),t.selectedpoints&&i.extendFlat(e,b.makeSelectedPointStyleFns(t)),e},b.makeSelectedPointStyleFns=function(t){var e={},n=t.selected||{},r=t.unselected||{},a=t.marker||{},o=n.marker||{},s=r.marker||{},c=a.opacity,u=o.opacity,f=s.opacity,h=void 0!==u,d=void 0!==f;(i.isArrayOrTypedArray(c)||h||d)&&(e.selectedOpacityFn=function(t){var e=void 0===t.mo?a.opacity:t.mo;return t.selected?h?u:e:d?f:g*e});var p=a.color,v=o.color,m=s.color;(v||m)&&(e.selectedColorFn=function(t){var e=t.mcc||p;return t.selected?v||e:m||e});var y=a.size,b=o.size,x=s.size,w=void 0!==b,_=void 0!==x;return l.traceIs(t,"symbols")&&(w||_)&&(e.selectedSizeFn=function(t){var e=t.mrc||y/2;return t.selected?w?b/2:e:_?x/2:e}),e},b.makeSelectedTextStyleFns=function(t){var e={},n=t.selected||{},r=t.unselected||{},i=t.textfont||{},a=n.textfont||{},o=r.textfont||{},s=i.color,l=a.color,u=o.color;return e.selectedTextColorFn=function(t){var e=t.tc||s;return t.selected?l||e:u||(l?e:c.addOpacity(e,g))},e},b.selectedPointStyle=function(t,e){if(t.size()&&e.selectedpoints){var n=b.makeSelectedPointStyleFns(e),i=e.marker||{},a=[];n.selectedOpacityFn&&a.push((function(t,e){t.style("opacity",n.selectedOpacityFn(e))})),n.selectedColorFn&&a.push((function(t,e){c.fill(t,n.selectedColorFn(e))})),n.selectedSizeFn&&a.push((function(t,r){var a=r.mx||i.symbol||0,o=n.selectedSizeFn(r);t.attr("d",T(b.symbolNumber(a),o,it(r,e),Y(r,e))),r.mrc2=o})),a.length&&t.each((function(t){for(var e=r.select(this),n=0;n0?n:0}b.textPointStyle=function(t,e,n){if(t.size()){var a;if(e.selectedpoints){var o=b.makeSelectedTextStyleFns(e);a=o.selectedTextColorFn}var s=e.texttemplate,l=n._fullLayout;t.each((function(t){var o=r.select(this),c=s?i.extractOption(t,e,"txt","texttemplate"):i.extractOption(t,e,"tx","text");if(c||0===c){if(s){var u=e._module.formatLabels,f=u?u(t,e,l):{},d={};y(d,e,t.i);var p=e._meta||{};c=i.texttemplateString(c,f,l._d3locale,d,t,p)}var g=t.tp||e.textposition,v=L(t,e),m=a?a(t):t.tc||e.textfont.color;o.call(b.font,t.tf||e.textfont.family,v,m).text(c).call(h.convertToTspans,n).call(P,g,v,t.mrc)}else o.remove()}))}},b.selectedTextStyle=function(t,e){if(t.size()&&e.selectedpoints){var n=b.makeSelectedTextStyleFns(e);t.each((function(t){var i=r.select(this),a=n.selectedTextColorFn(t),o=t.tp||e.textposition,s=L(t,e);c.fill(i,a);var u=l.traceIs(e,"bar-like");P(i,o,s,t.mrc2||t.mrc,u)}))}};var O,I,D=.5;function R(t,e,n){return n&&(t=U(t)),e?N(t[1]):z(t[0])}function z(t){var e=r.round(t,2);return O=e,e}function N(t){var e=r.round(t,2);return I=e,e}function j(t,e,n,r){var i=t[0]-e[0],a=t[1]-e[1],o=n[0]-e[0],s=n[1]-e[1],l=Math.pow(i*i+a*a,D/2),c=Math.pow(o*o+s*s,D/2),u=(c*c*i-l*l*o)*r,f=(c*c*a-l*l*s)*r,h=3*c*(l+c),d=3*l*(l+c);return[[z(e[0]+(h&&u/h)),N(e[1]+(h&&f/h))],[z(e[0]-(d&&u/d)),N(e[1]-(d&&f/d))]]}b.smoothopen=function(t,e){if(t.length<3)return"M"+t.join("L");var n,r="M"+t[0],i=[];for(n=1;n=c||_>=f&&_<=c)&&(k<=h&&k>=u||k>=h&&k<=u)&&(t=[_,k])}return t}b.steps=function(t){var e=F[t]||B;return function(t){for(var n="M"+z(t[0][0])+","+N(t[0][1]),r=t.length,i=1;i=1e4&&(b.savedBBoxes={},H=0),n&&(b.savedBBoxes[n]=v),H++,i.extendFlat({},v)},b.setClipUrl=function(t,e,n){t.attr("clip-path",q(e,n))},b.getTranslate=function(t){var e=(t[t.attr?"attr":"getAttribute"]("transform")||"").replace(/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,(function(t,e,n){return[e,n].join(" ")})).split(" ");return{x:+e[0]||0,y:+e[1]||0}},b.setTranslate=function(t,e,n){var r=t.attr?"attr":"getAttribute",i=t.attr?"attr":"setAttribute",a=t[r]("transform")||"";return e=e||0,n=n||0,a=a.replace(/(\btranslate\(.*?\);?)/,"").trim(),a=(a+=f(e,n)).trim(),t[i]("transform",a),a},b.getScale=function(t){var e=(t[t.attr?"attr":"getAttribute"]("transform")||"").replace(/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,(function(t,e,n){return[e,n].join(" ")})).split(" ");return{x:+e[0]||1,y:+e[1]||1}},b.setScale=function(t,e,n){var r=t.attr?"attr":"getAttribute",i=t.attr?"attr":"setAttribute",a=t[r]("transform")||"";return e=e||1,n=n||1,a=a.replace(/(\bscale\(.*?\);?)/,"").trim(),a=(a+="scale("+e+","+n+")").trim(),t[i]("transform",a),a};var G=/\s*sc.*/;b.setPointGroupScale=function(t,e,n){if(e=e||1,n=n||1,t){var r=1===e&&1===n?"":"scale("+e+","+n+")";t.each((function(){var t=(this.getAttribute("transform")||"").replace(G,"");t=(t+=r).trim(),this.setAttribute("transform",t)}))}};var W=/translate\([^)]*\)\s*$/;function Y(t,e){var n;return t&&(n=t.mf),void 0===n&&(n=e.marker&&e.marker.standoff||0),e._geo||e._xA?n:-n}b.setTextPointsScale=function(t,e,n){t&&t.each((function(){var t,i=r.select(this),a=i.select("text");if(a.node()){var o=parseFloat(a.attr("x")||0),s=parseFloat(a.attr("y")||0),l=(i.attr("transform")||"").match(W);t=1===e&&1===n?[]:[f(o,s),"scale("+e+","+n+")",f(-o,-s)],l&&t.push(l),i.attr("transform",t.join(""))}}))},b.getMarkerStandoff=Y;var $,X,K,Z,J,Q,tt=Math.atan2,et=Math.cos,nt=Math.sin;function rt(t,e){var n=e[0],r=e[1];return[n*et(t)-r*nt(t),n*nt(t)+r*et(t)]}function it(t,e){var n,r,i=t.ma;void 0===i&&(i=e.marker.angle||0);var a=e.marker.angleref;if("previous"===a||"north"===a){if(e._geo){var s=e._geo.project(t.lonlat);n=s[0],r=s[1]}else{var l=e._xA,c=e._yA;if(!l||!c)return 90;n=l.c2p(t.x),r=c.c2p(t.y)}if(e._geo){var u,f=t.lonlat[0],h=t.lonlat[1],d=e._geo.project([f,h+1e-5]),p=e._geo.project([f+1e-5,h]),g=tt(p[1]-r,p[0]-n),v=tt(d[1]-r,d[0]-n);if("north"===a)u=i/180*Math.PI;else if("previous"===a){var m=f/180*Math.PI,y=h/180*Math.PI,b=$/180*Math.PI,x=X/180*Math.PI,w=b-m,_=et(x)*nt(w),k=nt(x)*et(y)-et(x)*nt(y)*et(w);u=-tt(_,k)-Math.PI,$=f,X=h}var T=rt(g,[et(u),0]),M=rt(v,[nt(u),0]);i=tt(T[1]+M[1],T[0]+M[0])/Math.PI*180,"previous"!==a||Q===e.uid&&t.i===J+1||(i=null)}if("previous"===a&&!e._geo)if(Q===e.uid&&t.i===J+1&&o(n)&&o(r)){var A=n-K,S=r-Z,E=e.line&&e.line.shape||"",C=E.slice(E.length-1);"h"===C&&(S=0),"v"===C&&(A=0),i+=tt(S,A)/Math.PI*180+90}else i=null}return K=n,Z=r,J=t.i,Q=e.uid,i}b.getMarkerAngle=it},90998:function(t,e,n){"use strict";var r,i,a,o,s=n(95616),l=n(39898).round,c="M0,0Z",u=Math.sqrt(2),f=Math.sqrt(3),h=Math.PI,d=Math.cos,p=Math.sin;function g(t){return null===t}function v(t,e,n){if((!t||t%360===0)&&!e)return n;if(a===t&&o===e&&r===n)return i;function l(t,n){var r=d(t),i=p(t),a=n[0],o=n[1]+(e||0);return[a*r-o*i,a*i+o*r]}a=t,o=e,r=n;for(var c=t/180*h,u=0,f=0,g=s(n),v="",m=0;m0,f=t._context.staticPlot;e.each((function(e){var h,d=e[0].trace,p=d.error_x||{},g=d.error_y||{};d.ids&&(h=function(t){return t.id});var v=o.hasMarkers(d)&&d.marker.maxdisplayed>0;g.visible||p.visible||(e=[]);var m=r.select(this).selectAll("g.errorbar").data(e,h);if(m.exit().remove(),e.length){p.visible||m.selectAll("path.xerror").remove(),g.visible||m.selectAll("path.yerror").remove(),m.style("opacity",1);var y=m.enter().append("g").classed("errorbar",!0);u&&y.style("opacity",0).transition().duration(s.duration).style("opacity",1),a.setClipUrl(m,n.layerClipId,t),m.each((function(t){var e=r.select(this),n=function(t,e,n){var r={x:e.c2p(t.x),y:n.c2p(t.y)};return void 0!==t.yh&&(r.yh=n.c2p(t.yh),r.ys=n.c2p(t.ys),i(r.ys)||(r.noYS=!0,r.ys=n.c2p(t.ys,!0))),void 0!==t.xh&&(r.xh=e.c2p(t.xh),r.xs=e.c2p(t.xs),i(r.xs)||(r.noXS=!0,r.xs=e.c2p(t.xs,!0))),r}(t,l,c);if(!v||t.vis){var a,o=e.select("path.yerror");if(g.visible&&i(n.x)&&i(n.yh)&&i(n.ys)){var h=g.width;a="M"+(n.x-h)+","+n.yh+"h"+2*h+"m-"+h+",0V"+n.ys,n.noYS||(a+="m-"+h+",0h"+2*h),o.size()?u&&(o=o.transition().duration(s.duration).ease(s.easing)):o=e.append("path").style("vector-effect",f?"none":"non-scaling-stroke").classed("yerror",!0),o.attr("d",a)}else o.remove();var d=e.select("path.xerror");if(p.visible&&i(n.y)&&i(n.xh)&&i(n.xs)){var m=(p.copy_ystyle?g:p).width;a="M"+n.xh+","+(n.y-m)+"v"+2*m+"m0,-"+m+"H"+n.xs,n.noXS||(a+="m0,-"+m+"v"+2*m),d.size()?u&&(d=d.transition().duration(s.duration).ease(s.easing)):d=e.append("path").style("vector-effect",f?"none":"non-scaling-stroke").classed("xerror",!0),d.attr("d",a)}else d.remove()}}))}}))}},62662:function(t,e,n){"use strict";var r=n(39898),i=n(7901);t.exports=function(t){t.each((function(t){var e=t[0].trace,n=e.error_y||{},a=e.error_x||{},o=r.select(this);o.selectAll("path.yerror").style("stroke-width",n.thickness+"px").call(i.stroke,n.color),a.copy_ystyle&&(a=n),o.selectAll("path.xerror").style("stroke-width",a.thickness+"px").call(i.stroke,a.color)}))}},77914:function(t,e,n){"use strict";var r=n(41940),i=n(528).hoverlabel,a=n(1426).extendFlat;t.exports={hoverlabel:{bgcolor:a({},i.bgcolor,{arrayOk:!0}),bordercolor:a({},i.bordercolor,{arrayOk:!0}),font:r({arrayOk:!0,editType:"none"}),align:a({},i.align,{arrayOk:!0}),namelength:a({},i.namelength,{arrayOk:!0}),editType:"none"}}},30732:function(t,e,n){"use strict";var r=n(71828),i=n(73972);function a(t,e,n,i){i=i||r.identity,Array.isArray(t)&&(e[0][n]=i(t))}t.exports=function(t){var e=t.calcdata,n=t._fullLayout;function o(t){return function(e){return r.coerceHoverinfo({hoverinfo:e},{_module:t._module},n)}}for(var s=0;s=0&&n.indexw[0]._length||lt<0||lt>_[0]._length)return p.unhoverRaw(t,e)}else st="xpx"in e?e.xpx:w[0]._length/2,lt="ypx"in e?e.ypx:_[0]._length/2;if(e.pointerX=st+w[0]._offset,e.pointerY=lt+_[0]._offset,q="xval"in e?m.flat(l,e.xval):m.p2c(w,st),G="yval"in e?m.flat(l,e.yval):m.p2c(_,lt),!i(q[0])||!i(G[0]))return o.warn("Fx.hover failed",e,t),p.unhoverRaw(t,e)}var ft=1/0;function ht(t,n){for(Y=0;Ynt&&(rt.splice(0,nt),ft=rt[0].distance),y&&0!==V&&0===rt.length){et.distance=V,et.index=!1;var f=X._module.hoverPoints(et,Q,tt,"closest",{hoverLayer:u._hoverlayer});if(f&&(f=f.filter((function(t){return t.spikeDistance<=V}))),f&&f.length){var h,p=f.filter((function(t){return t.xa.showspikes&&"hovered data"!==t.xa.spikesnap}));if(p.length){var g=p[0];i(g.x0)&&i(g.y0)&&(h=pt(g),(!at.vLinePoint||at.vLinePoint.spikeDistance>h.spikeDistance)&&(at.vLinePoint=h))}var v=f.filter((function(t){return t.ya.showspikes&&"hovered data"!==t.ya.spikesnap}));if(v.length){var b=v[0];i(b.x0)&&i(b.y0)&&(h=pt(b),(!at.hLinePoint||at.hLinePoint.spikeDistance>h.spikeDistance)&&(at.hLinePoint=h))}}}}}function dt(t,e,n){for(var r,i=null,a=1/0,o=0;o0&&Math.abs(t.distance)Mt-1;At--)Pt(rt[At]);rt=St,yt()}var Lt=t._hoverdata,Ot=[],It=U(t),Dt=H(t);for(W=0;W1||rt.length>1)||"closest"===I&&ot&&rt.length>1,Yt=d.combine(u.plot_bgcolor||d.background,u.paper_bgcolor),$t=O(rt,{gd:t,hovermode:I,rotateLabels:Wt,bgColor:Yt,container:u._hoverlayer,outerContainer:u._paper.node(),commonLabelOpts:u.hoverlabel,hoverdistance:u.hoverdistance}),Xt=$t.hoverLabels;if(m.isUnifiedHover(I)||(function(t,e,n,r){var i,a,o,s,l,c,u,f=e?"xa":"ya",h=e?"ya":"xa",d=0,p=1,g=t.size(),v=new Array(g),m=0,y=r.minX,b=r.maxX,x=r.minY,w=r.maxY,_=function(t){return t*n._invScaleX},T=function(t){return t*n._invScaleY};function M(t){var e=t[0],n=t[t.length-1];if(a=e.pmin-e.pos-e.dp+e.size,o=n.pos+n.dp+n.size-e.pmax,a>.01){for(l=t.length-1;l>=0;l--)t[l].dp+=a;i=!1}if(!(o<.01)){if(a<-.01){for(l=t.length-1;l>=0;l--)t[l].dp-=o;i=!1}if(i){var r=0;for(s=0;se.pmax&&r++;for(s=t.length-1;s>=0&&!(r<=0);s--)(c=t[s]).pos>e.pmax-1&&(c.del=!0,r--);for(s=0;s=0;l--)t[l].dp-=o;for(s=t.length-1;s>=0&&!(r<=0);s--)(c=t[s]).pos+c.dp+c.size>e.pmax&&(c.del=!0,r--)}}}for(t.each((function(t){var r=t[f],i=t[h],a="x"===r._id.charAt(0),o=r.range;0===m&&o&&o[0]>o[1]!==a&&(p=-1);var s=0,l=a?n.width:n.height;if("x"===n.hovermode||"y"===n.hovermode){var c,u,d=D(t,e),g=t.anchor,M="end"===g?-1:1;if("middle"===g)u=(c=t.crossPos+(a?T(d.y-t.by/2):_(t.bx/2+t.tx2width/2)))+(a?T(t.by):_(t.bx));else if(a)u=(c=t.crossPos+T(A+d.y)-T(t.by/2-A))+T(t.by);else{var S=_(M*A+d.x),E=S+_(M*t.bx);c=t.crossPos+Math.min(S,E),u=t.crossPos+Math.max(S,E)}a?void 0!==x&&void 0!==w&&Math.min(u,w)-Math.max(c,x)>1&&("left"===i.side?(s=i._mainLinePosition,l=n.width):l=i._mainLinePosition):void 0!==y&&void 0!==b&&Math.min(u,b)-Math.max(c,y)>1&&("top"===i.side?(s=i._mainLinePosition,l=n.height):l=i._mainLinePosition)}v[m++]=[{datum:t,traceIndex:t.trace.index,dp:0,pos:t.pos,posref:t.posref,size:t.by*(a?k:1)/2,pmin:s,pmax:l}]})),v.sort((function(t,e){return t[0].posref-e[0].posref||p*(e[0].traceIndex-t[0].traceIndex)}));!i&&d<=g;){for(d++,i=!0,s=0;s.01&&C.pmin===P.pmin&&C.pmax===P.pmax){for(l=E.length-1;l>=0;l--)E[l].dp+=a;for(S.push.apply(S,E),v.splice(s+1,1),u=0,l=S.length-1;l>=0;l--)u+=S[l].dp;for(o=u/S.length,l=S.length-1;l>=0;l--)S[l].dp-=o;i=!1}else s++}v.forEach(M)}for(s=v.length-1;s>=0;s--){var L=v[s];for(l=L.length-1;l>=0;l--){var O=L[l],I=O.datum;I.offset=O.dp,I.del=O.del}}}(Xt,Wt,u,$t.commonLabelBoundingBox),R(Xt,Wt,u._invScaleX,u._invScaleY)),s&&s.tagName){var Kt=v.getComponentMethod("annotations","hasClickToShow")(t,Ot);f(r.select(s),Kt?"pointer":"")}s&&!a&&function(t,e,n){if(!n||n.length!==t._hoverdata.length)return!0;for(var r=n.length-1;r>=0;r--){var i=n[r],a=t._hoverdata[r];if(i.curveNumber!==a.curveNumber||String(i.pointNumber)!==String(a.pointNumber)||String(i.pointNumbers)!==String(a.pointNumbers))return!0}return!1}(t,0,Lt)&&(Lt&&t.emit("plotly_unhover",{event:e,points:Lt}),t.emit("plotly_hover",{event:e,points:t._hoverdata,xaxes:w,yaxes:_,xvals:q,yvals:G}))}(t,e,n,a,s)}))},e.loneHover=function(t,e){var n=!0;Array.isArray(t)||(n=!1,t=[t]);var i=e.gd,a=U(i),o=H(i),s=O(t.map((function(t){var n=t._x0||t.x0||t.x||0,r=t._x1||t.x1||t.x||0,s=t._y0||t.y0||t.y||0,l=t._y1||t.y1||t.y||0,c=t.eventData;if(c){var u=Math.min(n,r),f=Math.max(n,r),h=Math.min(s,l),p=Math.max(s,l),g=t.trace;if(v.traceIs(g,"gl3d")){var m=i._fullLayout[g.scene]._scene.container,y=m.offsetLeft,b=m.offsetTop;u+=y,f+=y,h+=b,p+=b}c.bbox={x0:u+o,x1:f+o,y0:h+a,y1:p+a},e.inOut_bbox&&e.inOut_bbox.push(c.bbox)}else c=!1;return{color:t.color||d.defaultLine,x0:t.x0||t.x||0,x1:t.x1||t.x||0,y0:t.y0||t.y||0,y1:t.y1||t.y||0,xLabel:t.xLabel,yLabel:t.yLabel,zLabel:t.zLabel,text:t.text,name:t.name,idealAlign:t.idealAlign,borderColor:t.borderColor,fontFamily:t.fontFamily,fontSize:t.fontSize,fontColor:t.fontColor,nameLength:t.nameLength,textAlign:t.textAlign,trace:t.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:t.hovertemplate||!1,hovertemplateLabels:t.hovertemplateLabels||!1,eventData:c}})),{gd:i,hovermode:"closest",rotateLabels:!1,bgColor:e.bgColor||d.background,container:r.select(e.container),outerContainer:e.outerContainer||e.container}).hoverLabels,l=0,c=0;return s.sort((function(t,e){return t.y0-e.y0})).each((function(t,n){var r=t.y0-t.by/2;t.offset=r-5([\s\S]*)<\/extra>/;function O(t,e){var n=e.gd,i=n._fullLayout,a=e.hovermode,c=e.rotateLabels,f=e.bgColor,p=e.container,g=e.outerContainer,_=e.commonLabelOpts||{};if(0===t.length)return[[]];var k=e.fontFamily||y.HOVERFONT,T=e.fontSize||y.HOVERFONTSIZE,M=t[0],E=M.xa,C=M.ya,L=a.charAt(0),O=L+"Label",D=M[O];if(void 0===D&&"multicategory"===E.type)for(var R=0;Ri.width-x?(v=i.width-x,e.attr("d","M"+(x-A)+",0L"+x+","+b+A+"v"+b+(2*S+y.height)+"H-"+x+"V"+b+A+"H"+(x-2*A)+"Z")):e.attr("d","M0,0L"+A+","+b+A+"H"+x+"v"+b+(2*S+y.height)+"H-"+x+"V"+b+A+"H-"+A+"Z"),Y.minX=v-x,Y.maxX=v+x,"top"===E.side?(Y.minY=m-(2*S+y.height),Y.maxY=m-S):(Y.minY=m+S,Y.maxY=m+(2*S+y.height))}else{var w,P,L;"right"===C.side?(w="start",P=1,L="",v=E._offset+E._length):(w="end",P=-1,L="-",v=E._offset),m=C._offset+(M.y0+M.y1)/2,l.attr("text-anchor",w),e.attr("d","M0,0L"+L+A+","+A+"V"+(S+y.height/2)+"h"+L+(2*S+y.width)+"V-"+(S+y.height/2)+"H"+L+A+"V-"+A+"Z"),Y.minY=m-(S+y.height/2),Y.maxY=m+(S+y.height/2),"right"===C.side?(Y.minX=v+A,Y.maxX=v+A+(2*S+y.width)):(Y.minX=v-A-(2*S+y.width),Y.maxX=v-A);var O,I=y.height/2,R=N-y.top-I,z="clip"+i._uid+"commonlabel"+C._id;if(v=0?lt:ct+ht=0?ct:xt+ht=0?ot:st+dt=0?st:wt+dt=0,"top"!==t.idealAlign&&G||!W?G?(O+=z/2,t.anchor="start"):t.anchor="middle":(O-=z/2,t.anchor="end"),t.crossPos=O;else{if(t.pos=O,G=L+R/2+Y<=j,W=L-R/2-Y>=0,"left"!==t.idealAlign&&G||!W)if(G)L+=R/2,t.anchor="start";else{t.anchor="middle";var $=Y/2,X=L+$-j,K=L-$;X>0&&(L-=X),K<0&&(L+=-K)}else L-=R/2,t.anchor="end";t.crossPos=L}_.attr("text-anchor",t.anchor),E&&M.attr("text-anchor",t.anchor),e.attr("transform",s(L,O)+(c?l(w):""))})),{hoverLabels:_t,commonLabelBoundingBox:Y}}function I(t,e,n,r,i,a){var s="",l="";void 0!==t.nameOverride&&(t.name=t.nameOverride),t.name&&(t.trace._meta&&(t.name=o.templateString(t.name,t.trace._meta)),s=F(t.name,t.nameLength));var c=n.charAt(0),u="x"===c?"y":"x";void 0!==t.zLabel?(void 0!==t.xLabel&&(l+="x: "+t.xLabel+"
"),void 0!==t.yLabel&&(l+="y: "+t.yLabel+"
"),"choropleth"!==t.trace.type&&"choroplethmapbox"!==t.trace.type&&(l+=(l?"z: ":"")+t.zLabel)):e&&t[c+"Label"]===i?l=t[u+"Label"]||"":void 0===t.xLabel?void 0!==t.yLabel&&"scattercarpet"!==t.trace.type&&(l=t.yLabel):l=void 0===t.yLabel?t.xLabel:"("+t.xLabel+", "+t.yLabel+")",!t.text&&0!==t.text||Array.isArray(t.text)||(l+=(l?"
":"")+t.text),void 0!==t.extraText&&(l+=(l?"
":"")+t.extraText),a&&""===l&&!t.hovertemplate&&(""===s&&a.remove(),l=s);var f=t.hovertemplate||!1;if(f){var h=t.hovertemplateLabels||t;t[c+"Label"]!==i&&(h[c+"other"]=h[c+"Val"],h[c+"otherLabel"]=h[c+"Label"]),l=(l=o.hovertemplateString(f,h,r._d3locale,t.eventData[0]||{},t.trace._meta)).replace(L,(function(e,n){return s=F(n,t.nameLength),""}))}return[l,s]}function D(t,e){var n=0,r=t.offset;return e&&(r*=-M,n=t.offset*T),{x:n,y:r}}function R(t,e,n,i){var a=function(t){return t*n},o=function(t){return t*i};t.each((function(t){var n=r.select(this);if(t.del)return n.remove();var i=n.select("text.nums"),s=t.anchor,l="end"===s?-1:1,c=function(t){var e={start:1,end:-1,middle:0}[t.anchor],n=e*(A+S),r=n+e*(t.txwidth+S);return"middle"===t.anchor&&(n-=t.tx2width/2,r+=t.txwidth/2+S),{alignShift:e,textShiftX:n,text2ShiftX:r}}(t),f=D(t,e),d=f.x,p=f.y,g="middle"===s;n.select("path").attr("d",g?"M-"+a(t.bx/2+t.tx2width/2)+","+o(p-t.by/2)+"h"+a(t.bx)+"v"+o(t.by)+"h-"+a(t.bx)+"Z":"M0,0L"+a(l*A+d)+","+o(A+p)+"v"+o(t.by/2-A)+"h"+a(l*t.bx)+"v-"+o(t.by)+"H"+a(l*A+d)+"V"+o(p-A)+"Z");var v=d+c.textShiftX,m=p+t.ty0-t.by/2+S,y=t.textAlign||"auto";"auto"!==y&&("left"===y&&"start"!==s?(i.attr("text-anchor","start"),v=g?-t.bx/2-t.tx2width/2+S:-t.bx-S):"right"===y&&"end"!==s&&(i.attr("text-anchor","end"),v=g?t.bx/2-t.tx2width/2-S:t.bx+S)),i.call(u.positionText,a(v),o(m)),t.tx2width&&(n.select("text.name").call(u.positionText,a(c.text2ShiftX+c.alignShift*S+d),o(p+t.ty0-t.by/2+S)),n.select("rect").call(h.setRect,a(c.text2ShiftX+(c.alignShift-1)*t.tx2width/2+d),o(p-t.by/2-1),a(t.tx2width),o(t.by+2)))}))}function z(t,e){var n=t.index,r=t.trace||{},a=t.cd[0],s=t.cd[n]||{};function l(t){return t||i(t)&&0===t}var c=Array.isArray(n)?function(t,e){var i=o.castOption(a,n,t);return l(i)?i:o.extractOption({},r,"",e)}:function(t,e){return o.extractOption(s,r,t,e)};function u(e,n,r){var i=c(n,r);l(i)&&(t[e]=i)}if(u("hoverinfo","hi","hoverinfo"),u("bgcolor","hbg","hoverlabel.bgcolor"),u("borderColor","hbc","hoverlabel.bordercolor"),u("fontFamily","htf","hoverlabel.font.family"),u("fontSize","hts","hoverlabel.font.size"),u("fontColor","htc","hoverlabel.font.color"),u("nameLength","hnl","hoverlabel.namelength"),u("textAlign","hta","hoverlabel.align"),t.posref="y"===e||"closest"===e&&"h"===r.orientation?t.xa._offset+(t.x0+t.x1)/2:t.ya._offset+(t.y0+t.y1)/2,t.x0=o.constrain(t.x0,0,t.xa._length),t.x1=o.constrain(t.x1,0,t.xa._length),t.y0=o.constrain(t.y0,0,t.ya._length),t.y1=o.constrain(t.y1,0,t.ya._length),void 0!==t.xLabelVal&&(t.xLabel="xLabel"in t?t.xLabel:g.hoverLabelText(t.xa,t.xLabelVal,r.xhoverformat),t.xVal=t.xa.c2d(t.xLabelVal)),void 0!==t.yLabelVal&&(t.yLabel="yLabel"in t?t.yLabel:g.hoverLabelText(t.ya,t.yLabelVal,r.yhoverformat),t.yVal=t.ya.c2d(t.yLabelVal)),void 0!==t.zLabelVal&&void 0===t.zLabel&&(t.zLabel=String(t.zLabelVal)),!isNaN(t.xerr)&&!("log"===t.xa.type&&t.xerr<=0)){var f=g.tickText(t.xa,t.xa.c2l(t.xerr),"hover").text;void 0!==t.xerrneg?t.xLabel+=" +"+f+" / -"+g.tickText(t.xa,t.xa.c2l(t.xerrneg),"hover").text:t.xLabel+=" \xb1 "+f,"x"===e&&(t.distance+=1)}if(!isNaN(t.yerr)&&!("log"===t.ya.type&&t.yerr<=0)){var h=g.tickText(t.ya,t.ya.c2l(t.yerr),"hover").text;void 0!==t.yerrneg?t.yLabel+=" +"+h+" / -"+g.tickText(t.ya,t.ya.c2l(t.yerrneg),"hover").text:t.yLabel+=" \xb1 "+h,"y"===e&&(t.distance+=1)}var d=t.hoverinfo||t.trace.hoverinfo;return d&&"all"!==d&&(-1===(d=Array.isArray(d)?d:d.split("+")).indexOf("x")&&(t.xLabel=void 0),-1===d.indexOf("y")&&(t.yLabel=void 0),-1===d.indexOf("z")&&(t.zLabel=void 0),-1===d.indexOf("text")&&(t.text=void 0),-1===d.indexOf("name")&&(t.name=void 0)),t}function N(t,e,n){var r,i,o=n.container,s=n.fullLayout,l=s._size,c=n.event,u=!!e.hLinePoint,f=!!e.vLinePoint;if(o.selectAll(".spikeline").remove(),f||u){var p=d.combine(s.plot_bgcolor,s.paper_bgcolor);if(u){var v,m,y=e.hLinePoint;r=y&&y.xa,"cursor"===(i=y&&y.ya).spikesnap?(v=c.pointerX,m=c.pointerY):(v=r._offset+y.x,m=i._offset+y.y);var b,x,w=a.readability(y.color,p)<1.5?d.contrast(p):y.color,_=i.spikemode,k=i.spikethickness,T=i.spikecolor||w,M=g.getPxPosition(t,i);if(-1!==_.indexOf("toaxis")||-1!==_.indexOf("across")){if(-1!==_.indexOf("toaxis")&&(b=M,x=v),-1!==_.indexOf("across")){var A=i._counterDomainMin,S=i._counterDomainMax;"free"===i.anchor&&(A=Math.min(A,i.position),S=Math.max(S,i.position)),b=l.l+A*l.w,x=l.l+S*l.w}o.insert("line",":first-child").attr({x1:b,x2:x,y1:m,y2:m,"stroke-width":k,stroke:T,"stroke-dasharray":h.dashStyle(i.spikedash,k)}).classed("spikeline",!0).classed("crisp",!0),o.insert("line",":first-child").attr({x1:b,x2:x,y1:m,y2:m,"stroke-width":k+2,stroke:p}).classed("spikeline",!0).classed("crisp",!0)}-1!==_.indexOf("marker")&&o.insert("circle",":first-child").attr({cx:M+("right"!==i.side?k:-k),cy:m,r:k,fill:T}).classed("spikeline",!0)}if(f){var E,C,P=e.vLinePoint;r=P&&P.xa,i=P&&P.ya,"cursor"===r.spikesnap?(E=c.pointerX,C=c.pointerY):(E=r._offset+P.x,C=i._offset+P.y);var L,O,I=a.readability(P.color,p)<1.5?d.contrast(p):P.color,D=r.spikemode,R=r.spikethickness,z=r.spikecolor||I,N=g.getPxPosition(t,r);if(-1!==D.indexOf("toaxis")||-1!==D.indexOf("across")){if(-1!==D.indexOf("toaxis")&&(L=N,O=C),-1!==D.indexOf("across")){var j=r._counterDomainMin,F=r._counterDomainMax;"free"===r.anchor&&(j=Math.min(j,r.position),F=Math.max(F,r.position)),L=l.t+(1-F)*l.h,O=l.t+(1-j)*l.h}o.insert("line",":first-child").attr({x1:E,x2:E,y1:L,y2:O,"stroke-width":R,stroke:z,"stroke-dasharray":h.dashStyle(r.spikedash,R)}).classed("spikeline",!0).classed("crisp",!0),o.insert("line",":first-child").attr({x1:E,x2:E,y1:L,y2:O,"stroke-width":R+2,stroke:p}).classed("spikeline",!0).classed("crisp",!0)}-1!==D.indexOf("marker")&&o.insert("circle",":first-child").attr({cx:E,cy:N-("top"!==r.side?R:-R),r:R,fill:z}).classed("spikeline",!0)}}}function j(t,e){return!e||e.vLinePoint!==t._spikepoints.vLinePoint||e.hLinePoint!==t._spikepoints.hLinePoint}function F(t,e){return u.plainText(t||"",{len:e,allowedTags:["br","sub","sup","b","i","em"]})}function B(t,e,n){var r=e[t+"a"],i=e[t+"Val"],a=e.cd[0];if("category"===r.type||"multicategory"===r.type)i=r._categoriesMap[i];else if("date"===r.type){var o=e.trace[t+"periodalignment"];if(o){var s=e.cd[e.index],l=s[t+"Start"];void 0===l&&(l=s[t]);var c=s[t+"End"];void 0===c&&(c=s[t]);var u=c-l;"end"===o?i+=u:"middle"===o&&(i+=u/2)}i=r.d2c(i)}return a&&a.t&&a.t.posLetter===r._id&&("group"!==n.boxmode&&"group"!==n.violinmode||(i+=a.t.dPos)),i}function U(t){return t.offsetTop+t.clientTop}function H(t){return t.offsetLeft+t.clientLeft}function V(t,e){var n=t._fullLayout,r=e.getBoundingClientRect(),i=r.left,a=r.top,s=i+r.width,l=a+r.height,c=o.apply3DTransform(n._invTransform)(i,a),u=o.apply3DTransform(n._invTransform)(s,l),f=c[0],h=c[1],d=u[0],p=u[1];return{x:f,y:h,width:d-f,height:p-h,top:Math.min(h,p),left:Math.min(f,d),right:Math.max(f,d),bottom:Math.max(h,p)}}},38048:function(t,e,n){"use strict";var r=n(71828),i=n(7901),a=n(23469).isUnifiedHover;t.exports=function(t,e,n,o){o=o||{};var s=e.legend;function l(t){o.font[t]||(o.font[t]=s?e.legend.font[t]:e.font[t])}e&&a(e.hovermode)&&(o.font||(o.font={}),l("size"),l("family"),l("color"),s?(o.bgcolor||(o.bgcolor=i.combine(e.legend.bgcolor,e.paper_bgcolor)),o.bordercolor||(o.bordercolor=e.legend.bordercolor)):o.bgcolor||(o.bgcolor=e.paper_bgcolor)),n("hoverlabel.bgcolor",o.bgcolor),n("hoverlabel.bordercolor",o.bordercolor),n("hoverlabel.namelength",o.namelength),r.coerceFont(n,"hoverlabel.font",o.font),n("hoverlabel.align",o.align)}},98212:function(t,e,n){"use strict";var r=n(71828),i=n(528);t.exports=function(t,e){function n(n,a){return void 0!==e[n]?e[n]:r.coerce(t,e,i,n,a)}return n("clickmode"),n("hovermode")}},30211:function(t,e,n){"use strict";var r=n(39898),i=n(71828),a=n(28569),o=n(23469),s=n(528),l=n(88335);t.exports={moduleType:"component",name:"fx",constants:n(26675),schema:{layout:s},attributes:n(77914),layoutAttributes:s,supplyLayoutGlobalDefaults:n(22774),supplyDefaults:n(54268),supplyLayoutDefaults:n(34938),calc:n(30732),getDistanceFunction:o.getDistanceFunction,getClosest:o.getClosest,inbox:o.inbox,quadrature:o.quadrature,appendArrayPointValue:o.appendArrayPointValue,castHoverOption:function(t,e,n){return i.castOption(t,e,"hoverlabel."+n)},castHoverinfo:function(t,e,n){return i.castOption(t,n,"hoverinfo",(function(n){return i.coerceHoverinfo({hoverinfo:n},{_module:t._module},e)}))},hover:l.hover,unhover:a.unhover,loneHover:l.loneHover,loneUnhover:function(t){var e=i.isD3Selection(t)?t:r.select(t);e.selectAll("g.hovertext").remove(),e.selectAll(".spikeline").remove()},click:n(75914)}},528:function(t,e,n){"use strict";var r=n(26675),i=n(41940),a=i({editType:"none"});a.family.dflt=r.HOVERFONT,a.size.dflt=r.HOVERFONTSIZE,t.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:a,grouptitlefont:i({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(t,e,n){"use strict";var r=n(71828),i=n(528),a=n(98212),o=n(38048);t.exports=function(t,e){function n(n,a){return r.coerce(t,e,i,n,a)}a(t,e)&&(n("hoverdistance"),n("spikedistance")),"select"===n("dragmode")&&n("selectdirection");var s=e._has("mapbox"),l=e._has("geo"),c=e._basePlotModules.length;"zoom"===e.dragmode&&((s||l)&&1===c||s&&l&&2===c)&&(e.dragmode="pan"),o(t,e,n),r.coerceFont(n,"hoverlabel.grouptitlefont",e.hoverlabel.font)}},22774:function(t,e,n){"use strict";var r=n(71828),i=n(38048),a=n(528);t.exports=function(t,e){i(t,e,(function(n,i){return r.coerce(t,e,a,n,i)}))}},83312:function(t,e,n){"use strict";var r=n(71828),i=n(30587).counter,a=n(27670).Y,o=n(85555).idRegex,s=n(44467),l={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:[i("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[o.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[o.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:a({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 c(t,e,n){var r=e[n+"axes"],i=Object.keys((t._splomAxes||{})[n]||{});return Array.isArray(r)?r:i.length?i:void 0}function u(t,e,n,r,i,a){var o=e(t+"gap",n),s=e("domain."+t);e(t+"side",r);for(var l=new Array(i),c=s[0],u=(s[1]-c)/(i-o),f=u*(1-o),h=0;h1){h||d||p||"independent"===T("pattern")&&(h=!0),v._hasSubplotGrid=h;var b,x,w="top to bottom"===T("roworder"),_=h?.2:.1,k=h?.3:.1;g&&e._splomGridDflt&&(b=e._splomGridDflt.xside,x=e._splomGridDflt.yside),v._domains={x:u("x",T,_,b,y),y:u("y",T,k,x,m,w)}}else delete e.grid}function T(t,e){return r.coerce(n,v,l,t,e)}},contentDefaults:function(t,e){var n=e.grid;if(n&&n._domains){var r,i,a,o,s,l,u,h=t.grid||{},d=e._subplots,p=n._hasSubplotGrid,g=n.rows,v=n.columns,m="independent"===n.pattern,y=n._axisMap={};if(p){var b=h.subplots||[];l=n.subplots=new Array(g);var x=1;for(r=0;r1);if(!1===w&&(e.legend=void 0),(!1!==w||f.uirevision)&&(d("uirevision",e.uirevision),!1!==w)){d("bgcolor",e.paper_bgcolor),d("bordercolor"),d("borderwidth");var _,k,T,M=i.coerceFont(d,"font",e.font),A="h"===d("orientation");if(A?(_=0,r.getComponentMethod("rangeslider","isVisible")(t.xaxis)?(k=1.1,T="bottom"):(k=-.1,T="top")):(_=1.02,k=1,T="auto"),d("traceorder",b),c.isGrouped(e.legend)&&d("tracegroupgap"),d("entrywidth"),d("entrywidthmode"),d("itemsizing"),d("itemwidth"),d("itemclick"),d("itemdoubleclick"),d("groupclick"),d("x",_),d("xanchor"),d("y",k),d("yanchor",T),d("valign"),i.noneOrAll(f,h,["x","y"]),d("title.text")){d("title.side",A?"left":"top");var S=i.extendFlat({},M,{size:i.bigFont(M.size)});i.coerceFont(d,"title.font",S)}}}},43969:function(t,e,n){"use strict";var r=n(39898),i=n(71828),a=n(74875),o=n(73972),s=n(11086),l=n(28569),c=n(91424),u=n(7901),f=n(63893),h=n(85167),d=n(14928),p=n(18783),g=p.LINE_SPACING,v=p.FROM_TL,m=p.FROM_BR,y=n(82424),b=n(53630),x=n(10130),w=1;function _(t,e,n){var r=t[0],i=r.width,a=e.entrywidthmode,o=r.trace.legendwidth||e.entrywidth;return"fraction"===a?e._maxWidth*o:n+(o||i)}function k(t,e,n,r,i){var a=n.data()[0][0].trace,l={event:i,node:n.node(),curveNumber:a.index,expandedIndex:a._expandedIndex,data:t.data,layout:t.layout,frames:t._transitionData._frames,config:t._context,fullData:t._fullData,fullLayout:t._fullLayout};a._group&&(l.group=a._group),o.traceIs(a,"pie-like")&&(l.label=n.datum()[0].label),!1!==s.triggerHandler(t,"plotly_legendclick",l)&&(1===r?e._clickTimeout=setTimeout((function(){t._fullLayout&&h(n,t,r)}),t._context.doubleClickDelay):2===r&&(e._clickTimeout&&clearTimeout(e._clickTimeout),t._legendMouseDownTime=0,!1!==s.triggerHandler(t,"plotly_legenddoubleclick",l)&&h(n,t,r)))}function T(t,e,n){var r,a,s=t.data()[0][0],l=s.trace,u=o.traceIs(l,"pie-like"),h=!n._inHover&&e._context.edits.legendText&&!u,p=n._maxNameLength;s.groupTitle?(r=s.groupTitle.text,a=s.groupTitle.font):(a=n.font,n.entries?r=s.text:(r=u?s.label:l.name,l._meta&&(r=i.templateString(r,l._meta))));var g=i.ensureSingle(t,"text","legendtext");g.attr("text-anchor","start").call(c.font,a).text(h?M(r,p):r);var v=n.itemwidth+2*d.itemGap;f.positionText(g,v,0),h?g.call(f.makeEditable,{gd:e,text:r}).call(S,t,e,n).on("edit",(function(r){this.text(M(r,p)).call(S,t,e,n);var a=s.trace._fullInput||{},c={};if(o.hasTransform(a,"groupby")){var u=o.getTransformIndices(a,"groupby"),f=u[u.length-1],h=i.keyedContainer(a,"transforms["+f+"].styles","target","value.name");h.set(s.trace._group,r),c=h.constructUpdate()}else c.name=r;return o.call("_guiRestyle",e,c,l.index)})):S(g,t,e,n)}function M(t,e){var n=Math.max(4,e);if(t&&t.trim().length>=n/2)return t;for(var r=n-(t=t||"").length;r>0;r--)t+=" ";return t}function A(t,e){var n,a=e._context.doubleClickDelay,o=1,s=i.ensureSingle(t,"rect","legendtoggle",(function(t){e._context.staticPlot||t.style("cursor","pointer").attr("pointer-events","all"),t.call(u.fill,"rgba(0,0,0,0)")}));e._context.staticPlot||(s.on("mousedown",(function(){(n=(new Date).getTime())-e._legendMouseDownTimea&&(o=Math.max(o-1,1)),k(e,n,t,o,r.event)}})))}function S(t,e,n,r,i){r._inHover&&t.attr("data-notex",!0),f.convertToTspans(t,n,(function(){!function(t,e,n,r){var i=t.data()[0][0];if(n._inHover||!i||i.trace.showlegend){var a=t.select("g[class*=math-group]"),o=a.node();n||(n=e._fullLayout.legend);var s,l,u=n.borderwidth,h=(r===w?n.title.font:i.groupTitle?i.groupTitle.font:n.font).size*g;if(o){var p=c.bBox(o);s=p.height,l=p.width,r===w?c.setTranslate(a,u,u+.75*s):c.setTranslate(a,0,.25*s)}else{var v=t.select(r===w?".legendtitletext":".legendtext"),m=f.lineCount(v),y=v.node();if(s=h*m,l=y?c.bBox(y).width:0,r===w)"left"===n.title.side&&(l+=2*d.itemGap),f.positionText(v,u+d.titlePad,u+h);else{var b=2*d.itemGap+n.itemwidth;i.groupTitle&&(b=d.itemGap,l-=n.itemwidth),f.positionText(v,b,-h*((m-1)/2-.3))}}r===w?(n._titleWidth=l,n._titleHeight=s):(i.lineHeight=h,i.height=Math.max(s,16)+3,i.width=l)}else t.remove()}(e,n,r,i)}))}function E(t){return i.isRightAnchor(t)?"right":i.isCenterAnchor(t)?"center":"left"}function C(t){return i.isBottomAnchor(t)?"bottom":i.isMiddleAnchor(t)?"middle":"top"}t.exports=function(t,e){return e||(e=t._fullLayout.legend||{}),function(t,e){var n,s,f=t._fullLayout,h="legend"+f._uid,p=e._inHover;if(p?(n=e.layer,h+="-hover"):n=f._infolayer,n){if(t._legendMouseDownTime||(t._legendMouseDownTime=0),p){if(!e.entries)return;s=y(e.entries,e)}else{if(!t.calcdata)return;s=f.showlegend&&y(t.calcdata,e)}var g=f.hiddenlabels||[];if(!p&&(!f.showlegend||!s.length))return n.selectAll(".legend").remove(),f._topdefs.select("#"+h).remove(),a.autoMargin(t,"legend");var M=i.ensureSingle(n,"g","legend",(function(t){p||t.attr("pointer-events","all")})),P=i.ensureSingleById(f._topdefs,"clipPath",h,(function(t){t.append("rect")})),L=i.ensureSingle(M,"rect","bg",(function(t){t.attr("shape-rendering","crispEdges")}));L.call(u.stroke,e.bordercolor).call(u.fill,e.bgcolor).style("stroke-width",e.borderwidth+"px");var O=i.ensureSingle(M,"g","scrollbox"),I=e.title;if(e._titleWidth=0,e._titleHeight=0,I.text){var D=i.ensureSingle(O,"text","legendtitletext");D.attr("text-anchor","start").call(c.font,I.font).text(I.text),S(D,O,t,e,w)}else O.selectAll(".legendtitletext").remove();var R=i.ensureSingle(M,"rect","scrollbar",(function(t){t.attr(d.scrollBarEnterAttrs).call(u.fill,d.scrollBarColor)})),z=O.selectAll("g.groups").data(s);z.enter().append("g").attr("class","groups"),z.exit().remove();var N=z.selectAll("g.traces").data(i.identity);N.enter().append("g").attr("class","traces"),N.exit().remove(),N.style("opacity",(function(t){var e=t[0].trace;return o.traceIs(e,"pie-like")?-1!==g.indexOf(t[0].label)?.5:1:"legendonly"===e.visible?.5:1})).each((function(){r.select(this).call(T,t,e)})).call(b,t,e).each((function(){p||r.select(this).call(A,t)})),i.syncOrAsync([a.previousPromises,function(){return function(t,e,n,i){var a=t._fullLayout;i||(i=a.legend);var o=a._size,s=x.isVertical(i),l=x.isGrouped(i),u="fraction"===i.entrywidthmode,f=i.borderwidth,h=2*f,p=d.itemGap,g=i.itemwidth+2*p,v=2*(f+p),m=C(i),y=i.y<0||0===i.y&&"top"===m,b=i.y>1||1===i.y&&"bottom"===m,w=i.tracegroupgap,k={};i._maxHeight=Math.max(y||b?a.height/2:o.h,30);var T=0;i._width=0,i._height=0;var M=function(t){var e=0,n=0,r=t.title.side;return r&&(-1!==r.indexOf("left")&&(e=t._titleWidth),-1!==r.indexOf("top")&&(n=t._titleHeight)),[e,n]}(i);if(s)n.each((function(t){var e=t[0].height;c.setTranslate(this,f+M[0],f+M[1]+i._height+e/2+p),i._height+=e,i._width=Math.max(i._width,t[0].width)})),T=g+i._width,i._width+=p+g+h,i._height+=v,l&&(e.each((function(t,e){c.setTranslate(this,0,e*i.tracegroupgap)})),i._height+=(i._lgroupsLength-1)*i.tracegroupgap);else{var A=E(i),S=i.x<0||0===i.x&&"right"===A,P=i.x>1||1===i.x&&"left"===A,L=b||y,O=a.width/2;i._maxWidth=Math.max(S?L&&"left"===A?o.l+o.w:O:P?L&&"right"===A?o.r+o.w:O:o.w,2*g);var I=0,D=0;n.each((function(t){var e=_(t,i,g);I=Math.max(I,e),D+=e})),T=null;var R=0;if(l){var z=0,N=0,j=0;e.each((function(){var t=0,e=0;r.select(this).selectAll("g.traces").each((function(n){var r=_(n,i,g),a=n[0].height;c.setTranslate(this,M[0],M[1]+f+p+a/2+e),e+=a,t=Math.max(t,r),k[n[0].trace.legendgroup]=t}));var n=t+p;N>0&&n+f+N>i._maxWidth?(R=Math.max(R,N),N=0,j+=z+w,z=e):z=Math.max(z,e),c.setTranslate(this,N,j),N+=n})),i._width=Math.max(R,N)+f,i._height=j+z+v}else{var F=n.size(),B=D+h+(F-1)*p=i._maxWidth&&(R=Math.max(R,q),H=0,V+=U,i._height+=U,U=0),c.setTranslate(this,M[0]+f+H,M[1]+f+V+e/2+p),q=H+n+p,H+=r,U=Math.max(U,e)})),B?(i._width=H+h,i._height=U+v):(i._width=Math.max(R,q)+h,i._height+=U+v)}}i._width=Math.ceil(Math.max(i._width+M[0],i._titleWidth+2*(f+d.titlePad))),i._height=Math.ceil(Math.max(i._height+M[1],i._titleHeight+2*(f+d.itemGap))),i._effHeight=Math.min(i._height,i._maxHeight);var G=t._context.edits,W=G.legendText||G.legendPosition;n.each((function(t){var e=r.select(this).select(".legendtoggle"),n=t[0].height,a=t[0].trace.legendgroup,o=_(t,i,g);l&&""!==a&&(o=k[a]);var f=W?g:T||o;s||u||(f+=p/2),c.setRect(e,0,-n/2,f,n)}))}(t,z,N,e)},function(){var s,u,g,y,b=f._size,x=e.borderwidth;if(!p){var w=function(t){var e=t._fullLayout,n=e.legend,r=E(n),i=C(n);return a.autoMargin(t,"legend",{x:n.x,y:n.y,l:n._width*v[r],r:n._width*m[r],b:n._effHeight*m[i],t:n._effHeight*v[i]})}(t);if(w)return;var _=b.l+b.w*e.x-v[E(e)]*e._width,T=b.t+b.h*(1-e.y)-v[C(e)]*e._effHeight;if(f.margin.autoexpand){var A=_,S=T;_=i.constrain(_,0,f.width-e._width),T=i.constrain(T,0,f.height-e._effHeight),_!==A&&i.log("Constrain legend.x to make legend fit inside graph"),T!==S&&i.log("Constrain legend.y to make legend fit inside graph")}c.setTranslate(M,_,T)}if(R.on(".drag",null),M.on("wheel",null),p||e._height<=e._maxHeight||t._context.staticPlot){var I=e._effHeight;p&&(I=e._height),L.attr({width:e._width-x,height:I-x,x:x/2,y:x/2}),c.setTranslate(O,0,0),P.select("rect").attr({width:e._width-2*x,height:I-2*x,x:x,y:x}),c.setClipUrl(O,h,t),c.setRect(R,0,0,0,0),delete e._scrollY}else{var D,z,N,j=Math.max(d.scrollBarMinHeight,e._effHeight*e._effHeight/e._height),F=e._effHeight-j-2*d.scrollBarMargin,B=e._height-e._effHeight,U=F/B,H=Math.min(e._scrollY||0,B);L.attr({width:e._width-2*x+d.scrollBarWidth+d.scrollBarMargin,height:e._effHeight-x,x:x/2,y:x/2}),P.select("rect").attr({width:e._width-2*x+d.scrollBarWidth+d.scrollBarMargin,height:e._effHeight-2*x,x:x,y:x+H}),c.setClipUrl(O,h,t),Y(H,j,U),M.on("wheel",(function(){Y(H=i.constrain(e._scrollY+r.event.deltaY/F*B,0,B),j,U),0!==H&&H!==B&&r.event.preventDefault()}));var V=function(t,e,n){var r=(n-e)/U+t;return i.constrain(r,0,B)},q=function(t,e,n){var r=(e-n)/U+t;return i.constrain(r,0,B)},G=r.behavior.drag().on("dragstart",(function(){var t=r.event.sourceEvent;D="touchstart"===t.type?t.changedTouches[0].clientY:t.clientY,N=H})).on("drag",(function(){var t=r.event.sourceEvent;2===t.buttons||t.ctrlKey||(z="touchmove"===t.type?t.changedTouches[0].clientY:t.clientY,Y(H=V(N,D,z),j,U))}));R.call(G);var W=r.behavior.drag().on("dragstart",(function(){var t=r.event.sourceEvent;"touchstart"===t.type&&(D=t.changedTouches[0].clientY,N=H)})).on("drag",(function(){var t=r.event.sourceEvent;"touchmove"===t.type&&(z=t.changedTouches[0].clientY,Y(H=q(N,D,z),j,U))}));O.call(W)}function Y(n,r,i){e._scrollY=t._fullLayout.legend._scrollY=n,c.setTranslate(O,0,-n),c.setRect(R,e._width,d.scrollBarMargin+n*i,d.scrollBarWidth,r),P.select("rect").attr("y",x+n)}t._context.edits.legendPosition&&(M.classed("cursor-move",!0),l.init({element:M.node(),gd:t,prepFn:function(){var t=c.getTranslate(M);g=t.x,y=t.y},moveFn:function(t,n){var r=g+t,i=y+n;c.setTranslate(M,r,i),s=l.align(r,0,b.l,b.l+b.w,e.xanchor),u=l.align(i,0,b.t+b.h,b.t,e.yanchor)},doneFn:function(){void 0!==s&&void 0!==u&&o.call("_guiRelayout",t,{"legend.x":s,"legend.y":u})},clickFn:function(e,r){var i=n.selectAll("g.traces").filter((function(){var t=this.getBoundingClientRect();return r.clientX>=t.left&&r.clientX<=t.right&&r.clientY>=t.top&&r.clientY<=t.bottom}));i.size()>0&&k(t,M,i,e,r)}}))}],t)}}(t,e)}},82424:function(t,e,n){"use strict";var r=n(73972),i=n(10130);t.exports=function(t,e){var n,a,o=e._inHover,s=i.isGrouped(e),l=i.isReversed(e),c={},u=[],f=!1,h={},d=0,p=0;function g(t,n){if(""!==t&&i.isGrouped(e))-1===u.indexOf(t)?(u.push(t),f=!0,c[t]=[n]):c[t].push(n);else{var r="~~i"+d;u.push(r),c[r]=[n],d++}}for(n=0;nM&&(T=M)}_[n][0]._groupMinRank=T,_[n][0]._preGroupSort=n}var A=function(t,e){return t.trace.legendrank-e.trace.legendrank||t._preSort-e._preSort};for(_.forEach((function(t,e){t[0]._preGroupSort=e})),_.sort((function(t,e){return t[0]._groupMinRank-e[0]._groupMinRank||t[0]._preGroupSort-e[0]._preGroupSort})),n=0;n<_.length;n++){_[n].forEach((function(t,e){t._preSort=e})),_[n].sort(A);var S=_[n][0].trace,E=null;for(a=0;a<_[n].length;a++){var C=_[n][a].trace.legendgrouptitle;if(C&&C.text){E=C,o&&(C.font=e._groupTitleFont);break}}if(l&&_[n].reverse(),E){var P=!1;for(a=0;a<_[n].length;a++)if(r.traceIs(_[n][a].trace,"pie-like")){P=!0;break}_[n].unshift({i:-1,groupTitle:E,noClick:P,trace:{showlegend:S.showlegend,legendgroup:S.legendgroup,visible:"toggleitem"===e.groupclick||S.visible}})}for(a=0;a<_[n].length;a++)_[n][a]=[_[n][a]]}return e._lgroupsLength=_.length,e._maxNameLength=p,_}},85167:function(t,e,n){"use strict";var r=n(71828),i=n(73972),a=!0;t.exports=function(t,e,n){var o=e._fullLayout;if(!e._dragged&&!e._editing){var s,l=o.legend.itemclick,c=o.legend.itemdoubleclick,u=o.legend.groupclick;if(1===n&&"toggle"===l&&"toggleothers"===c&&a&&e.data&&e._context.showTips?(r.notifier(r._(e,"Double-click on legend to isolate one trace"),"long"),a=!1):a=!1,1===n?s=l:2===n&&(s=c),s){var f="togglegroup"===u,h=o.hiddenlabels?o.hiddenlabels.slice():[],d=t.data()[0][0];if(!d.groupTitle||!d.noClick){var p,g,v,m,y,b=e._fullData,x=d.trace,w=x.legendgroup,_={},k=[],T=[],M=[];if(i.traceIs(x,"pie-like")){var A=d.label,S=h.indexOf(A);"toggle"===s?-1===S?h.push(A):h.splice(S,1):"toggleothers"===s&&(h=[],e.calcdata[0].forEach((function(t){A!==t.label&&h.push(t.label)})),e._fullLayout.hiddenlabels&&e._fullLayout.hiddenlabels.length===h.length&&-1===S&&(h=[])),i.call("_guiRelayout",e,"hiddenlabels",h)}else{var E,C=w&&w.length,P=[];if(C)for(p=0;pn?n:t}t.exports=function(t,e,n){var m=e._fullLayout;n||(n=m.legend);var y="constant"===n.itemsizing,b=n.itemwidth,x=(b+2*d.itemGap)/2,w=o(x,0),_=function(t,e,n,r){var i;if(t+1)i=t;else{if(!(e&&e.width>0))return 0;i=e.width}return y?r:Math.min(i,n)};function k(t,a,o){var u=t[0].trace,f=u.marker||{},h=f.line||{},d=o?u.visible&&u.type===o:i.traceIs(u,"bar"),p=r.select(a).select("g.legendpoints").selectAll("path.legend"+o).data(d?[t]:[]);p.enter().append("path").classed("legend"+o,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",w),p.exit().remove(),p.each((function(t){var i=r.select(this),a=t[0],o=_(a.mlw,f.line,5,2);i.style("stroke-width",o+"px");var d=a.mcc;if(!n._inHover&&"mc"in a){var p=c(f),g=p.mid;void 0===g&&(g=(p.max+p.min)/2),d=s.tryColorscale(f,"")(g)}var m=d||a.mc||f.color,y=f.pattern,b=y&&s.getPatternAttr(y.shape,0,"");if(b){var x=s.getPatternAttr(y.bgcolor,0,null),w=s.getPatternAttr(y.fgcolor,0,null),k=y.fgopacity,T=v(y.size,8,10),M=v(y.solidity,.5,1),A="legend-"+u.uid;i.call(s.pattern,"legend",e,A,b,T,M,d,y.fillmode,x,w,k)}else i.call(l.fill,m);o&&l.stroke(i,a.mlc||h.color)}))}function T(t,e,n){var o=t[0],s=o.trace,l=n?s.visible&&s.type===n:i.traceIs(s,n),c=r.select(e).select("g.legendpoints").selectAll("path.legend"+n).data(l?[t]:[]);if(c.enter().append("path").classed("legend"+n,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",w),c.exit().remove(),c.size()){var u=(s.marker||{}).line,d=_(h(u.width,o.pts),u,5,2),p=a.minExtend(s,{marker:{line:{width:d}}});p.marker.line.color=u.color;var g=a.minExtend(o,{trace:p});f(c,g,p)}}t.each((function(t){var e=r.select(this),i=a.ensureSingle(e,"g","layers");i.style("opacity",t[0].trace.opacity);var s=n.valign,l=t[0].lineHeight,c=t[0].height;if("middle"!==s&&l&&c){var u={top:1,bottom:-1}[s]*(.5*(l-c+3));i.attr("transform",o(0,u))}else i.attr("transform",null);i.selectAll("g.legendfill").data([t]).enter().append("g").classed("legendfill",!0),i.selectAll("g.legendlines").data([t]).enter().append("g").classed("legendlines",!0);var f=i.selectAll("g.legendsymbols").data([t]);f.enter().append("g").classed("legendsymbols",!0),f.selectAll("g.legendpoints").data([t]).enter().append("g").classed("legendpoints",!0)})).each((function(t){var n,i=t[0].trace,o=[];if(i.visible)switch(i.type){case"histogram2d":case"heatmap":o=[["M-15,-2V4H15V-2Z"]],n=!0;break;case"choropleth":case"choroplethmapbox":o=[["M-6,-6V6H6V-6Z"]],n=!0;break;case"densitymapbox":o=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],n="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"]],n=!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"]],n=!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"]],n=!0;break;case"mesh3d":o=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],n=!1;break;case"volume":o=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],n=!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"]],n=!1}var u=r.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(o);u.enter().append("path").classed("legend3dandfriends",!0).attr("transform",w).style("stroke-miterlimit",1),u.exit().remove(),u.each((function(t,o){var u,f=r.select(this),h=c(i),d=h.colorscale,g=h.reversescale;if(d){if(!n){var v=d.length;u=0===o?d[g?v-1:0][1]:1===o?d[g?0:v-1][1]:d[Math.floor((v-1)/2)][1]}}else{var m=i.vertexcolor||i.facecolor||i.color;u=a.isArrayOrTypedArray(m)?m[o]||m[0]:m}f.attr("d",t[0]),u?f.call(l.fill,u):f.call((function(t){if(t.size()){var r="legendfill-"+i.uid;s.gradient(t,e,r,p(g,"radial"===n),d,"fill")}}))}))})).each((function(t){var e=t[0].trace,n="waterfall"===e.type;if(t[0]._distinct&&n){var i=t[0].trace[t[0].dir].marker;return t[0].mc=i.color,t[0].mlw=i.line.width,t[0].mlc=i.line.color,k(t,this,"waterfall")}var a=[];e.visible&&n&&(a=t[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 o=r.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(a);o.enter().append("path").classed("legendwaterfall",!0).attr("transform",w).style("stroke-miterlimit",1),o.exit().remove(),o.each((function(t){var n=r.select(this),i=e[t[0]].marker,a=_(void 0,i.line,5,2);n.attr("d",t[1]).style("stroke-width",a+"px").call(l.fill,i.color),a&&n.call(l.stroke,i.line.color)}))})).each((function(t){k(t,this,"funnel")})).each((function(t){k(t,this)})).each((function(t){var n=t[0].trace,o=r.select(this).select("g.legendpoints").selectAll("path.legendbox").data(n.visible&&i.traceIs(n,"box-violin")?[t]:[]);o.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",w),o.exit().remove(),o.each((function(){var t=r.select(this);if("all"!==n.boxpoints&&"all"!==n.points||0!==l.opacity(n.fillcolor)||0!==l.opacity((n.line||{}).color)){var i=_(void 0,n.line,5,2);t.style("stroke-width",i+"px").call(l.fill,n.fillcolor),i&&l.stroke(t,n.line.color)}else{var c=a.minExtend(n,{marker:{size:y?12:a.constrain(n.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});o.call(s.pointStyle,c,e)}}))})).each((function(t){T(t,this,"funnelarea")})).each((function(t){T(t,this,"pie")})).each((function(t){var n,i,o=g(t),l=o.showFill,f=o.showLine,h=o.showGradientLine,d=o.showGradientFill,v=o.anyFill,m=o.anyLine,y=t[0],x=y.trace,w=c(x),k=w.colorscale,T=w.reversescale,M=u.hasMarkers(x)||!v?"M5,0":m?"M5,-2":"M5,-3",A=r.select(this),S=A.select(".legendfill").selectAll("path").data(l||d?[t]:[]);if(S.enter().append("path").classed("js-fill",!0),S.exit().remove(),S.attr("d",M+"h"+b+"v6h-"+b+"z").call((function(t){if(t.size())if(l)s.fillGroupStyle(t,e);else{var n="legendfill-"+x.uid;s.gradient(t,e,n,p(T),k,"fill")}})),f||h){var E=_(void 0,x.line,10,5);i=a.minExtend(x,{line:{width:E}}),n=[a.minExtend(y,{trace:i})]}var C=A.select(".legendlines").selectAll("path").data(f||h?[n]:[]);C.enter().append("path").classed("js-line",!0),C.exit().remove(),C.attr("d",M+(h?"l"+b+",0.0001":"h"+b)).call(f?s.lineGroupStyle:function(t){if(t.size()){var n="legendline-"+x.uid;s.lineGroupStyle(t),s.gradient(t,e,n,p(T),k,"stroke")}})})).each((function(t){var n,i,o=g(t),l=o.anyFill,c=o.anyLine,f=o.showLine,h=o.showMarker,d=t[0],p=d.trace,v=!h&&!c&&!l&&u.hasText(p);function m(t,e,n,r){var i=a.nestedProperty(p,t).get(),o=a.isArrayOrTypedArray(i)&&e?e(i):i;if(y&&o&&void 0!==r&&(o=r),n){if(on[1])return n[1]}return o}function b(t){return d._distinct&&d.index&&t[d.index]?t[d.index]:t[0]}if(h||v||f){var x={},_={};if(h){x.mc=m("marker.color",b),x.mx=m("marker.symbol",b),x.mo=m("marker.opacity",a.mean,[.2,1]),x.mlc=m("marker.line.color",b),x.mlw=m("marker.line.width",a.mean,[0,5],2),_.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var k=m("marker.size",a.mean,[2,16],12);x.ms=k,_.marker.size=k}f&&(_.line={width:m("line.width",b,[0,10],5)}),v&&(x.tx="Aa",x.tp=m("textposition",b),x.ts=10,x.tc=m("textfont.color",b),x.tf=m("textfont.family",b)),n=[a.minExtend(d,x)],(i=a.minExtend(p,_)).selectedpoints=null,i.texttemplate=null}var T=r.select(this).select("g.legendpoints"),M=T.selectAll("path.scatterpts").data(h?n:[]);M.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",w),M.exit().remove(),M.call(s.pointStyle,i,e),h&&(n[0].mrc=3);var A=T.selectAll("g.pointtext").data(v?n:[]);A.enter().append("g").classed("pointtext",!0).append("text").attr("transform",w),A.exit().remove(),A.selectAll("text").call(s.textPointStyle,i,e)})).each((function(t){var e=t[0].trace,n=r.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(e.visible&&"candlestick"===e.type?[t,t]:[]);n.enter().append("path").classed("legendcandle",!0).attr("d",(function(t,e){return e?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"})).attr("transform",w).style("stroke-miterlimit",1),n.exit().remove(),n.each((function(t,n){var i=r.select(this),a=e[n?"increasing":"decreasing"],o=_(void 0,a.line,5,2);i.style("stroke-width",o+"px").call(l.fill,a.fillcolor),o&&l.stroke(i,a.line.color)}))})).each((function(t){var e=t[0].trace,n=r.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(e.visible&&"ohlc"===e.type?[t,t]:[]);n.enter().append("path").classed("legendohlc",!0).attr("d",(function(t,e){return e?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"})).attr("transform",w).style("stroke-miterlimit",1),n.exit().remove(),n.each((function(t,n){var i=r.select(this),a=e[n?"increasing":"decreasing"],o=_(void 0,a.line,5,2);i.style("fill","none").call(s.dashLine,a.line.dash,o),o&&l.stroke(i,a.line.color)}))}))}},42068:function(t,e,n){"use strict";n(93348),t.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(t,e,n){"use strict";var r=n(73972),i=n(74875),a=n(41675),o=n(24255),s=n(34031).eraseActiveShape,l=n(71828),c=l._,u=t.exports={};function f(t,e){var n,i,o=e.currentTarget,s=o.getAttribute("data-attr"),l=o.getAttribute("data-val")||!0,c=t._fullLayout,u={},f=a.list(t,null,!0),h=c._cartesianSpikesEnabled;if("zoom"===s){var d,p="in"===l?.5:2,g=(1+p)/2,v=(1-p)/2;for(i=0;i1?(O=["toggleHover"],I=["resetViews"]):m?(L=["zoomInGeo","zoomOutGeo"],O=["hoverClosestGeo"],I=["resetGeo"]):v?(O=["hoverClosest3d"],I=["resetCameraDefault3d","resetCameraLastSave3d"]):_?(L=["zoomInMapbox","zoomOutMapbox"],O=["toggleHover"],I=["resetViewMapbox"]):x?O=["hoverClosestGl2d"]:y?O=["hoverClosestPie"]:M?(O=["hoverClosestCartesian","hoverCompareCartesian"],I=["resetViewSankey"]):O=["toggleHover"],g&&(O=["toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"]),(function(t){for(var e=0;e0)){var g=function(t,e,n){for(var r=n.filter((function(n){return e[n].anchor===t._id})),i=0,a=0;a=r.max)e=N[n+1];else if(t=r.pmax)e=N[n+1];else if(tn._length||m+x<0)return;u=v+x,d=m+x;break;case l:if(b="col-resize",v+x>n._length)return;u=v+x,d=m;break;case c:if(b="col-resize",m+x<0)return;u=v,d=m+x;break;default:b="ew-resize",u=g,d=g+x}if(d=0;T--){var M=n.append("path").attr(v).style("opacity",T?.1:m).call(o.stroke,b).call(o.fill,y).call(s.dashLine,T?"solid":w,T?4+x:x);if(p(M,t,a),_){var A=l(t.layout,"selections",a);M.style({cursor:"move"});var S={element:M.node(),plotinfo:d,gd:t,editHelpers:A,isActiveSelection:!0},E=r(c,t);i(E,M,S)}else M.style("pointer-events",T?"all":"none");k[T]=M}var C=k[0];k[1].node().addEventListener("click",(function(){return function(t,e){if(h(t)){var n=e.node(),r=+n.getAttribute("data-index");if(r>=0){if(r===t._fullLayout._activeSelectionIndex)return void g(t);t._fullLayout._activeSelectionIndex=r,t._fullLayout._deactivateSelection=g,f(t)}}}(t,C)}))}(t._fullLayout._selectionLayer)}function p(t,e,n){var r=n.xref+n.yref;s.setClipUrl(t,"clip"+e._fullLayout._uid+r,e)}function g(t){h(t)&&t._fullLayout._activeSelectionIndex>=0&&(a(t),delete t._fullLayout._activeSelectionIndex,f(t))}t.exports={draw:f,drawOne:d,activateLastSelection:function(t){if(h(t)){var e=t._fullLayout.selections.length-1;t._fullLayout._activeSelectionIndex=e,t._fullLayout._deactivateSelection=g,f(t)}}}},53777:function(t,e,n){"use strict";var r=n(79952).P,i=n(1426).extendFlat;t.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:i({},r,{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(t){"use strict";t.exports=function(t,e,n){n("newselection.mode"),n("newselection.line.width")&&(n("newselection.line.color"),n("newselection.line.dash")),n("activeselection.fillcolor"),n("activeselection.opacity")}},35855:function(t,e,n){"use strict";var r=n(64505).selectMode,i=n(51873).clearOutline,a=n(60165),o=a.readPaths,s=a.writePaths,l=a.fixDatesForPaths;t.exports=function(t,e){if(t.length){var n=t[0][0];if(n){var a=n.getAttribute("d"),c=e.gd,u=c._fullLayout.newselection,f=e.plotinfo,h=f.xaxis,d=f.yaxis,p=e.isActiveSelection,g=e.dragmode,v=(c.layout||{}).selections||[];if(!r(g)&&void 0!==p){var m=c._fullLayout._activeSelectionIndex;if(m-1,x=[];if(function(t){return t&&Array.isArray(t)&&!0!==t[0].hoverOnBox}(m)){W(t,e,a);var w=function(t,e){var n,r,i=t[0],a=-1,o=[];for(r=0;r0?function(t,e){var n,r,i,a=[];for(i=0;i0&&a.push(n);if(1===a.length&&a[0]===e.searchInfo&&(r=e.searchInfo.cd[0].trace).selectedpoints.length===e.pointNumbers.length){for(i=0;i1)return!1;if((r+=e.selectedpoints.length)>1)return!1}return 1===r}(s)&&(h=Z(w))){for(o&&o.remove(),v=0;v=0})(i)&&i._fullLayout._deactivateShape(i),function(t){return t._fullLayout._activeSelectionIndex>=0}(i)&&i._fullLayout._deactivateSelection(i);var o=i._fullLayout._zoomlayer,s=d(n),l=g(n);if(s||l){var c,u,f=o.selectAll(".select-outline-"+r.id);f&&i._fullLayout._outlining&&(s&&(c=k(f,t)),c&&a.call("_guiRelayout",i,{shapes:c}),l&&!U(t)&&(u=T(f,t)),u&&(i._fullLayout._noEmitSelectedAtStart=!0,a.call("_guiRelayout",i,{selections:u}).then((function(){e&&M(i)}))),i._fullLayout._outlining=!1)}r.selection={},r.selection.selectionDefs=t.selectionDefs=[],r.selection.mergedPolygons=t.mergedPolygons=[]}function $(t){return t._id}function X(t,e,n,r){if(!t.calcdata)return[];var i,a,o,s=[],l=e.map($),c=n.map($);for(o=0;o0?r[0]:n;return!!e.selectedpoints&&e.selectedpoints.indexOf(i)>-1}function J(t,e,n){var r,i;for(r=0;r-1&&e;if(!a&&e){var et=ot(t,!0);if(et.length){var rt=et[0].xref,dt=et[0].yref;if(rt&&dt){var pt=ct(et);ut([P(t,rt,"x"),P(t,dt,"y")])(Q,pt)}}t._fullLayout._noEmitSelectedAtStart?t._fullLayout._noEmitSelectedAtStart=!1:tt&&ft(t,Q),h._reselect=!1}if(!a&&h._deselect){var gt=h._deselect;(function(t,e,n){for(var r=0;r=0)T._fullLayout._deactivateShape(T);else if(!b){var n=M.clickmode;C.done(Mt).then((function(){if(C.clear(Mt),2===t){for(xt.remove(),Z=0;Z-1&&H(e,T,r.xaxes,r.yaxes,r.subplot,r,xt),"event"===n&&ft(T,void 0);l.click(T,e)})).catch(A.error)}},r.doneFn=function(){Tt.remove(),C.done(Mt).then((function(){C.clear(Mt),!S&&K&&r.selectionDefs&&(K.subtract=bt,r.selectionDefs.push(K),r.mergedPolygons.length=0,[].push.apply(r.mergedPolygons,$)),(S||b)&&Y(r,S),r.doneFnCompleted&&r.doneFnCompleted(At),x&&ft(T,at)})).catch(A.error)}},clearOutline:b,clearSelectionsCache:Y,selectOnClick:H}},89827:function(t,e,n){"use strict";var r=n(50215),i=n(41940),a=n(82196).line,o=n(79952).P,s=n(1426).extendFlat,l=n(44467).templatedArray;n(24695),t.exports=l("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:s({},r.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:s({},r.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:s({},a.color,{editType:"arraydraw"}),width:s({},a.width,{editType:"calc+arraydraw"}),dash:s({},o,{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"},font:i({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(t,e,n){"use strict";var r=n(71828),i=n(89298),a=n(21459),o=n(30477);function s(t){return c(t.line.width,t.xsizemode,t.x0,t.x1,t.path,!1)}function l(t){return c(t.line.width,t.ysizemode,t.y0,t.y1,t.path,!0)}function c(t,e,n,i,s,l){var c=t/2,u=l;if("pixel"===e){var f=s?o.extractPathCoords(s,l?a.paramIsY:a.paramIsX):[n,i],h=r.aggNums(Math.max,null,f),d=r.aggNums(Math.min,null,f),p=d<0?Math.abs(d)+c:c,g=h>0?h+c:c;return{ppad:c,ppadplus:u?p:g,ppadminus:u?g:p}}return{ppad:c}}function u(t,e,n,r,i){var s="category"===t.type||"multicategory"===t.type?t.r2c:t.d2c;if(void 0!==e)return[s(e),s(n)];if(r){var l,c,u,f,h=1/0,d=-1/0,p=r.match(a.segmentRE);for("date"===t.type&&(s=o.decodeDate(s)),l=0;ld&&(d=f)));return d>=h?[h,d]:void 0}}t.exports=function(t){var e=t._fullLayout,n=r.filterVisible(e.shapes);if(n.length&&t._fullData.length)for(var o=0;o1&&(2!==t.length||"Z"!==t[1][0])&&(0===E&&(t[0][0]="M"),e[S]=t,k(),T())}}()}}function j(t,n){!function(t,n){if(e.length)for(var r=0;rz&&a>N&&!n.shiftKey?d.getCursor(o/i,1-s/a):"move";p(e,l),R=l.split("-")[0]}}function rt(r){w(t)||(j&&(x=$(n.xanchor)),F&&(_=X(n.yanchor)),"path"===n.type?D=n.path:(u=j?n.x0:$(n.x0),h=F?n.y0:X(n.y0),g=j?n.x1:$(n.x1),b=F?n.y1:X(n.y1)),ub?(k=h,P="y0",S=b,L="y1"):(k=b,P="y1",S=h,L="y0"),nt(r),lt(l,n),ut(e,n,t),Q.moveFn="move"===R?ot:st,Q.altKey=r.altKey)}function it(){w(t)||(p(e),ct(l),T(e,t,n),i.call("_guiRelayout",t,c.getUpdateObj()))}function at(){w(t)||ct(l)}function ot(r,i){if("path"===n.type){var a=function(t){return t},o=a,c=a;j?H("xanchor",n.xanchor=K(x+r)):(o=function(t){return K($(t)+r)},q&&"date"===q.type&&(o=m.encodeDate(o))),F?H("yanchor",n.yanchor=Z(_+i)):(c=function(t){return Z(X(t)+i)},W&&"date"===W.type&&(c=m.encodeDate(c))),H("path",n.path=A(D,o,c))}else j?H("xanchor",n.xanchor=K(x+r)):(H("x0",n.x0=K(u+r)),H("x1",n.x1=K(g+r))),F?H("yanchor",n.yanchor=Z(_+i)):(H("y0",n.y0=Z(h+i)),H("y1",n.y1=Z(b+i)));e.attr("d",y(t,n)),lt(l,n),M(t,s,n,V)}function st(r,i){if(U){var a=function(t){return t},o=a,c=a;j?H("xanchor",n.xanchor=K(x+r)):(o=function(t){return K($(t)+r)},q&&"date"===q.type&&(o=m.encodeDate(o))),F?H("yanchor",n.yanchor=Z(_+i)):(c=function(t){return Z(X(t)+i)},W&&"date"===W.type&&(c=m.encodeDate(c))),H("path",n.path=A(D,o,c))}else if(B){if("resize-over-start-point"===R){var f=u+r,d=F?h-i:h+i;H("x0",n.x0=j?f:K(f)),H("y0",n.y0=F?d:Z(d))}else if("resize-over-end-point"===R){var p=g+r,v=F?b-i:b+i;H("x1",n.x1=j?p:K(p)),H("y1",n.y1=F?v:Z(v))}}else{var w=function(t){return-1!==R.indexOf(t)},T=w("n"),G=w("s"),Y=w("w"),J=w("e"),Q=T?k+i:k,tt=G?S+i:S,et=Y?E+r:E,nt=J?C+r:C;F&&(T&&(Q=k-i),G&&(tt=S-i)),(!F&&tt-Q>N||F&&Q-tt>N)&&(H(P,n[P]=F?Q:Z(Q)),H(L,n[L]=F?tt:Z(tt))),nt-et>z&&(H(O,n[O]=j?et:K(et)),H(I,n[I]=j?nt:K(nt)))}e.attr("d",y(t,n)),lt(l,n),M(t,s,n,V)}function lt(t,e){function n(){var n="path"!==e.type,r=t.selectAll(".visual-cue").data([0]),i=1;r.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":i}).classed("visual-cue",!0);var o=$(j?e.xanchor:a.midRange(n?[e.x0,e.x1]:m.extractPathCoords(e.path,v.paramIsX))),s=X(F?e.yanchor:a.midRange(n?[e.y0,e.y1]:m.extractPathCoords(e.path,v.paramIsY)));if(o=m.roundPositionForSharpStrokeRendering(o,i),s=m.roundPositionForSharpStrokeRendering(s,i),j&&F){var l="M"+(o-1-i)+","+(s-1-i)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";r.attr("d",l)}else if(j){var c="M"+(o-1-i)+","+(s-9-i)+"v18 h2 v-18 Z";r.attr("d",c)}else{var u="M"+(o-9-i)+","+(s-1-i)+"h18 v2 h-18 Z";r.attr("d",u)}}(j||F)&&n()}function ct(t){t.selectAll(".visual-cue").remove()}function ut(t,e,n){var r=e.xref,i=e.yref,a=o.getFromId(n,r),s=o.getFromId(n,i),l="";"paper"===r||a.autorange||(l+=r),"paper"===i||s.autorange||(l+=i),f.setClipUrl(t,l?"clip"+n._fullLayout._uid+l:null,n)}d.init(Q),J.node().onmousemove=nt}(t,N,c,e,n,R):!0===c.editable&&N.style("pointer-events",I||u.opacity(C)*E<=.5?"stroke":"all");N.node().addEventListener("click",(function(){return function(t,e){if(_(t)){var n=e.node(),r=+n.getAttribute("data-index");if(r>=0){if(r===t._fullLayout._activeShapeIndex)return void S(t);t._fullLayout._activeShapeIndex=r,t._fullLayout._deactivateShape=S,x(t)}}}(t,N)}))}c._input&&!1!==c.visible&&("below"!==c.layer?b(t._fullLayout._shapeUpperLayer):"paper"===c.xref||"paper"===c.yref?b(t._fullLayout._shapeLowerLayer):g._hadPlotinfo?b((g.mainplotinfo||g).shapelayer):b(t._fullLayout._shapeLowerLayer))}function T(t,e,n){var r=(n.xref+n.yref).replace(/paper/g,"").replace(/[xyz][1-9]* *domain/g,"");f.setClipUrl(t,r?"clip"+e._fullLayout._uid+r:null,e)}function M(t,e,n,r){if(r.selectAll(".shape-label").remove(),n.label.text){var i,a,l,c,u={"data-index":e},h=n.label.text,d=n.label.font,p=r.append("g").attr(u).classed("shape-label",!0).append("text").attr({"data-notex":1}).classed("shape-label-text",!0).text(h);if(n.path){var v=y(t,n),x=s(v,t);i=1/0,l=1/0,a=-1/0,c=-1/0;for(var w=0;w=t?e-r:r-e,-180/Math.PI*Math.atan2(i,a)}(i,l,a,c):0),p.call((function(e){return e.call(f.font,d).attr({}),g.convertToTspans(e,t),e}));var D=function(t,e,n,r,i,a,o){var s,l,c,u,f=i.label.textposition,h=i.label.textangle,d=i.label.padding,p=i.type,g=Math.PI/180*a,v=Math.sin(g),m=Math.cos(g),y=i.label.xanchor,x=i.label.yanchor;if("line"===p){"start"===f?(s=t,l=e):"end"===f?(s=n,l=r):(s=(t+n)/2,l=(e+r)/2),"auto"===y&&(y="start"===f?"auto"===h?n>t?"left":nt?"right":nt?"right":nt?"left":n=s||(a[r]?t=e(t):o[r]&&(t=n(t)),r++),t}))}))}function S(t){_(t)&&t._fullLayout._activeShapeIndex>=0&&(c(t),delete t._fullLayout._activeShapeIndex,x(t))}t.exports={draw:x,drawOne:k,eraseActiveShape:function(t){if(_(t)){c(t);var e=t._fullLayout._activeShapeIndex,n=(t.layout||{}).shapes||[];if(e0&&ld&&(t="X"),t}));return a>d&&(p=p.replace(/[\s,]*X.*/,""),i.log("Ignoring extra params in segment "+t)),u+p}))}(n,s,c);if("pixel"===n.xsizemode){var x=s(n.xanchor);u=x+n.x0,f=x+n.x1}else u=s(n.x0),f=s(n.x1);if("pixel"===n.ysizemode){var w=c(n.yanchor);h=w-n.y0,d=w-n.y1}else h=c(n.y0),d=c(n.y1);if("line"===p)return"M"+u+","+h+"L"+f+","+d;if("rect"===p)return"M"+u+","+h+"H"+f+"V"+d+"H"+u+"Z";var _=(u+f)/2,k=(h+d)/2,T=Math.abs(_-u),M=Math.abs(k-h),A="A"+T+","+M,S=_+T+","+k;return"M"+S+A+" 0 1,1 "+_+","+(k-M)+A+" 0 0,1 "+S+"Z"}},89853:function(t,e,n){"use strict";var r=n(34031);t.exports={moduleType:"component",name:"shapes",layoutAttributes:n(89827),supplyLayoutDefaults:n(84726),supplyDrawNewShapeDefaults:n(45547),includeBasePlot:n(76325)("shapes"),calcAutorange:n(5627),draw:r.draw,drawOne:r.drawOne}},75067:function(t,e,n){"use strict";var r=n(41940),i=n(35025),a=n(1426).extendDeepAll,o=n(30962).overrideAll,s=n(85594),l=n(44467).templatedArray,c=n(98292),u=l("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}});t.exports=o(l("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:u,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:a(i({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:s.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:r({})},font:r({}),activebgcolor:{valType:"color",dflt:c.gripBgActiveColor},bgcolor:{valType:"color",dflt:c.railBgColor},bordercolor:{valType:"color",dflt:c.railBorderColor},borderwidth:{valType:"number",min:0,dflt:c.railBorderWidth},ticklen:{valType:"number",min:0,dflt:c.tickLength},tickcolor:{valType:"color",dflt:c.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:c.minorTickLength}}),"arraydraw","from-root")},98292:function(t){"use strict";t.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(t,e,n){"use strict";var r=n(71828),i=n(85501),a=n(75067),o=n(98292).name,s=a.steps;function l(t,e,n){function o(n,i){return r.coerce(t,e,a,n,i)}for(var s=i(t,e,{name:"steps",handleItemDefaults:c}),l=0,u=0;u0&&(s=s.transition().duration(e.transition.duration).ease(e.transition.easing)),s.attr("transform",l(o-.5*f.gripWidth,e._dims.currentValueTotalHeight))}}function E(t,e){var n=t._dims;return n.inputAreaStart+f.stepInset+(n.inputAreaLength-2*f.stepInset)*Math.min(1,Math.max(0,e))}function C(t,e){var n=t._dims;return Math.min(1,Math.max(0,(e-f.stepInset-n.inputAreaStart)/(n.inputAreaLength-2*f.stepInset-2*n.inputAreaStart)))}function P(t,e,n){var r=n._dims,i=s.ensureSingle(t,"rect",f.railTouchRectClass,(function(r){r.call(M,e,t,n).style("pointer-events","all")}));i.attr({width:r.inputAreaLength,height:Math.max(r.inputAreaWidth,f.tickOffset+n.ticklen+r.labelHeight)}).call(a.fill,n.bgcolor).attr("opacity",0),o.setTranslate(i,0,r.currentValueTotalHeight)}function L(t,e){var n=e._dims,r=n.inputAreaLength-2*f.railInset,i=s.ensureSingle(t,"rect",f.railRectClass);i.attr({width:r,height:f.railWidth,rx:f.railRadius,ry:f.railRadius,"shape-rendering":"crispEdges"}).call(a.stroke,e.bordercolor).call(a.fill,e.bgcolor).style("stroke-width",e.borderwidth+"px"),o.setTranslate(i,f.railInset,.5*(n.inputAreaWidth-f.railWidth)+n.currentValueTotalHeight)}t.exports=function(t){var e=t._context.staticPlot,n=t._fullLayout,a=function(t,e){for(var n=t[f.name],r=[],i=0;i0?[0]:[]);function l(e){e._commandObserver&&(e._commandObserver.remove(),delete e._commandObserver),i.autoMargin(t,v(e))}if(s.enter().append("g").classed(f.containerClassName,!0).style("cursor",e?null:"ew-resize"),s.exit().each((function(){r.select(this).selectAll("g."+f.groupClassName).each(l)})).remove(),0!==a.length){var c=s.selectAll("g."+f.groupClassName).data(a,m);c.enter().append("g").classed(f.groupClassName,!0),c.exit().each(l).remove();for(var u=0;u0||w<0){var A={left:[-_,0],right:[_,0],top:[0,-_],bottom:[0,_]}[x.side];n.attr("transform",l(A[0],A[1]))}}}return z.call(N),I&&(E?z.on(".opacity",null):(M=0,A=!0,z.text(y).on("mouseover.opacity",(function(){r.select(this).transition().duration(h.SHOW_PLACEHOLDER).style("opacity",1)})).on("mouseout.opacity",(function(){r.select(this).transition().duration(h.HIDE_PLACEHOLDER).style("opacity",0)}))),z.call(f.makeEditable,{gd:t}).on("edit",(function(e){void 0!==b?o.call("_guiRestyle",t,m,e,b):o.call("_guiRelayout",t,m,e)})).on("cancel",(function(){this.text(this.attr("data-unformatted")).call(N)})).on("input",(function(t){this.text(t||" ").call(f.positionText,w.x,w.y)}))),z.classed("js-placeholder",A),k}}},7163:function(t,e,n){"use strict";var r=n(41940),i=n(22399),a=n(1426).extendFlat,o=n(30962).overrideAll,s=n(35025),l=n(44467).templatedArray,c=l("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}});t.exports=o(l("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:c,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:a(s({editType:"arraydraw"}),{}),font:r({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:i.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")},75909:function(t){"use strict";t.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25c4",right:"\u25ba",up:"\u25b2",down:"\u25bc"}}},64897:function(t,e,n){"use strict";var r=n(71828),i=n(85501),a=n(7163),o=n(75909).name,s=a.buttons;function l(t,e,n){function o(n,i){return r.coerce(t,e,a,n,i)}o("visible",i(t,e,{name:"buttons",handleItemDefaults:c}).length>0)&&(o("active"),o("direction"),o("type"),o("showactive"),o("x"),o("y"),r.noneOrAll(t,e,["x","y"]),o("xanchor"),o("yanchor"),o("pad.t"),o("pad.r"),o("pad.b"),o("pad.l"),r.coerceFont(o,"font",n.font),o("bgcolor",n.paper_bgcolor),o("bordercolor"),o("borderwidth"))}function c(t,e){function n(n,i){return r.coerce(t,e,s,n,i)}n("visible","skip"===t.method||Array.isArray(t.args))&&(n("method"),n("args"),n("args2"),n("label"),n("execute"))}t.exports=function(t,e){i(t,e,{name:o,handleItemDefaults:l})}},13689:function(t,e,n){"use strict";var r=n(39898),i=n(74875),a=n(7901),o=n(91424),s=n(71828),l=n(63893),c=n(44467).arrayEditor,u=n(18783).LINE_SPACING,f=n(75909),h=n(25849);function d(t){return t._index}function p(t,e){return+t.attr(f.menuIndexAttrName)===e._index}function g(t,e,n,r,i,a,o,s){e.active=o,c(t.layout,f.name,e).applyUpdate("active",o),"buttons"===e.type?m(t,r,null,null,e):"dropdown"===e.type&&(i.attr(f.menuIndexAttrName,"-1"),v(t,r,i,a,e),s||m(t,r,i,a,e))}function v(t,e,n,r,i){var a=s.ensureSingle(e,"g",f.headerClassName,(function(t){t.style("pointer-events","all")})),l=i._dims,c=i.active,u=i.buttons[c]||f.blankHeaderOpts,h={y:i.pad.t,yPad:0,x:i.pad.l,xPad:0,index:0},d={width:l.headerWidth,height:l.headerHeight};a.call(y,i,u,t).call(A,i,h,d),s.ensureSingle(e,"text",f.headerArrowClassName,(function(t){t.attr("text-anchor","end").call(o.font,i.font).text(f.arrowSymbol[i.direction])})).attr({x:l.headerWidth-f.arrowOffsetX+i.pad.l,y:l.headerHeight/2+f.textOffsetY+i.pad.t}),a.on("click",(function(){n.call(S,String(p(n,i)?-1:i._index)),m(t,e,n,r,i)})),a.on("mouseover",(function(){a.call(_)})),a.on("mouseout",(function(){a.call(k,i)})),o.setTranslate(e,l.lx,l.ly)}function m(t,e,n,a,o){n||(n=e).attr("pointer-events","all");var l=function(t){return-1===+t.attr(f.menuIndexAttrName)}(n)&&"buttons"!==o.type?[]:o.buttons,c="dropdown"===o.type?f.dropdownButtonClassName:f.buttonClassName,u=n.selectAll("g."+c).data(s.filterVisible(l)),h=u.enter().append("g").classed(c,!0),d=u.exit();"dropdown"===o.type?(h.attr("opacity","0").transition().attr("opacity","1"),d.transition().attr("opacity","0").remove()):d.remove();var p=0,v=0,m=o._dims,b=-1!==["up","down"].indexOf(o.direction);"dropdown"===o.type&&(b?v=m.headerHeight+f.gapButtonHeader:p=m.headerWidth+f.gapButtonHeader),"dropdown"===o.type&&"up"===o.direction&&(v=-f.gapButtonHeader+f.gapButton-m.openHeight),"dropdown"===o.type&&"left"===o.direction&&(p=-f.gapButtonHeader+f.gapButton-m.openWidth);var x={x:m.lx+p+o.pad.l,y:m.ly+v+o.pad.t,yPad:f.gapButton,xPad:f.gapButton,index:0},T={l:x.x+o.borderwidth,t:x.y+o.borderwidth};u.each((function(s,l){var c=r.select(this);c.call(y,o,s,t).call(A,o,x),c.on("click",(function(){r.event.defaultPrevented||(s.execute&&(s.args2&&o.active===l?(g(t,o,0,e,n,a,-1),i.executeAPICommand(t,s.method,s.args2)):(g(t,o,0,e,n,a,l),i.executeAPICommand(t,s.method,s.args))),t.emit("plotly_buttonclicked",{menu:o,button:s,active:o.active}))})),c.on("mouseover",(function(){c.call(_)})),c.on("mouseout",(function(){c.call(k,o),u.call(w,o)}))})),u.call(w,o),b?(T.w=Math.max(m.openWidth,m.headerWidth),T.h=x.y-T.t):(T.w=x.x-T.l,T.h=Math.max(m.openHeight,m.headerHeight)),T.direction=o.direction,a&&(u.size()?function(t,e,n,r,i,a){var o,s,l,c=i.direction,u="up"===c||"down"===c,h=i._dims,d=i.active;if(u)for(s=0,l=0;l0?[0]:[]);if(o.enter().append("g").classed(f.containerClassName,!0).style("cursor","pointer"),o.exit().each((function(){r.select(this).selectAll("g."+f.headerGroupClassName).each(a)})).remove(),0!==n.length){var l=o.selectAll("g."+f.headerGroupClassName).data(n,d);l.enter().append("g").classed(f.headerGroupClassName,!0);for(var c=s.ensureSingle(o,"g",f.dropdownButtonGroupClassName,(function(t){t.style("pointer-events","all")})),u=0;u_,M=s.barLength+2*s.barPad,A=s.barWidth+2*s.barPad,S=p,E=v+m;E+A>c&&(E=c-A);var C=this.container.selectAll("rect.scrollbar-horizontal").data(T?[0]:[]);C.exit().on(".drag",null).remove(),C.enter().append("rect").classed("scrollbar-horizontal",!0).call(i.fill,s.barColor),T?(this.hbar=C.attr({rx:s.barRadius,ry:s.barRadius,x:S,y:E,width:M,height:A}),this._hbarXMin=S+M/2,this._hbarTranslateMax=_-M):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var P=m>k,L=s.barWidth+2*s.barPad,O=s.barLength+2*s.barPad,I=p+g,D=v;I+L>l&&(I=l-L);var R=this.container.selectAll("rect.scrollbar-vertical").data(P?[0]:[]);R.exit().on(".drag",null).remove(),R.enter().append("rect").classed("scrollbar-vertical",!0).call(i.fill,s.barColor),P?(this.vbar=R.attr({rx:s.barRadius,ry:s.barRadius,x:I,y:D,width:L,height:O}),this._vbarYMin=D+O/2,this._vbarTranslateMax=k-O):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var z=this.id,N=u-.5,j=P?f+L+.5:f+.5,F=h-.5,B=T?d+A+.5:d+.5,U=o._topdefs.selectAll("#"+z).data(T||P?[0]:[]);if(U.exit().remove(),U.enter().append("clipPath").attr("id",z).append("rect"),T||P?(this._clipRect=U.select("rect").attr({x:Math.floor(N),y:Math.floor(F),width:Math.ceil(j)-Math.floor(N),height:Math.ceil(B)-Math.floor(F)}),this.container.call(a.setClipUrl,z,this.gd),this.bg.attr({x:p,y:v,width:g,height:m})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(a.setClipUrl,null),delete this._clipRect),T||P){var H=r.behavior.drag().on("dragstart",(function(){r.event.sourceEvent.preventDefault()})).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(H);var V=r.behavior.drag().on("dragstart",(function(){r.event.sourceEvent.preventDefault(),r.event.sourceEvent.stopPropagation()})).on("drag",this._onBarDrag.bind(this));T&&this.hbar.on(".drag",null).call(V),P&&this.vbar.on(".drag",null).call(V)}this.setTranslate(e,n)},s.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(a.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)},s.prototype._onBoxDrag=function(){var t=this.translateX,e=this.translateY;this.hbar&&(t-=r.event.dx),this.vbar&&(e-=r.event.dy),this.setTranslate(t,e)},s.prototype._onBoxWheel=function(){var t=this.translateX,e=this.translateY;this.hbar&&(t+=r.event.deltaY),this.vbar&&(e+=r.event.deltaY),this.setTranslate(t,e)},s.prototype._onBarDrag=function(){var t=this.translateX,e=this.translateY;if(this.hbar){var n=t+this._hbarXMin,i=n+this._hbarTranslateMax;t=(o.constrain(r.event.x,n,i)-n)/(i-n)*(this.position.w-this._box.w)}if(this.vbar){var a=e+this._vbarYMin,s=a+this._vbarTranslateMax;e=(o.constrain(r.event.y,a,s)-a)/(s-a)*(this.position.h-this._box.h)}this.setTranslate(t,e)},s.prototype.setTranslate=function(t,e){var n=this.position.w-this._box.w,r=this.position.h-this._box.h;if(t=o.constrain(t||0,0,n),e=o.constrain(e||0,0,r),this.translateX=t,this.translateY=e,this.container.call(a.setTranslate,this._box.l-this.position.l-t,this._box.t-this.position.t-e),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+t-.5),y:Math.floor(this.position.t+e-.5)}),this.hbar){var i=t/n;this.hbar.call(a.setTranslate,t+i*this._hbarTranslateMax,e)}if(this.vbar){var s=e/r;this.vbar.call(a.setTranslate,t,e+s*this._vbarTranslateMax)}}},18783:function(t){"use strict";t.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(t){"use strict";t.exports={axisRefDescription:function(t,e,n){return["If set to a",t,"axis id (e.g. *"+t+"* or","*"+t+"2*), the `"+t+"` position refers to a",t,"coordinate. If set to *paper*, the `"+t+"`","position refers to the distance from the",e,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",e,"("+n+"). If set to a",t,"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.,","*"+t+"2 domain* refers to the domain of the second",t," axis and a",t,"position of 0.5 refers to the","point between the",e,"and the",n,"of the domain of the","second",t,"axis."].join(" ")}}},22372:function(t){"use strict";t.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25b2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25bc"}}},31562:function(t){"use strict";t.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(t){"use strict";t.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}},29659:function(t){"use strict";t.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(t){"use strict";t.exports={circle:"\u25cf","circle-open":"\u25cb",square:"\u25a0","square-open":"\u25a1",diamond:"\u25c6","diamond-open":"\u25c7",cross:"+",x:"\u274c"}},37822:function(t){"use strict";t.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}},50606:function(t){"use strict";t.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:2440587.5,ALMOST_EQUAL:.999999,LOG_CLIP:10,MINUS_SIGN:"\u2212"}},77922:function(t,e){"use strict";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(t,e,n){"use strict";e.version=n(11506).version,n(7417),n(98847);for(var r=n(73972),i=e.register=r.register,a=n(10641),o=Object.keys(a),s=0;s",""," ",""," plotly-logomark"," "," "," "," "," "," "," "," "," "," "," "," "," ",""].join("")}}},99863:function(t,e){"use strict";e.isLeftAnchor=function(t){return"left"===t.xanchor||"auto"===t.xanchor&&t.x<=1/3},e.isCenterAnchor=function(t){return"center"===t.xanchor||"auto"===t.xanchor&&t.x>1/3&&t.x<2/3},e.isRightAnchor=function(t){return"right"===t.xanchor||"auto"===t.xanchor&&t.x>=2/3},e.isTopAnchor=function(t){return"top"===t.yanchor||"auto"===t.yanchor&&t.y>=2/3},e.isMiddleAnchor=function(t){return"middle"===t.yanchor||"auto"===t.yanchor&&t.y>1/3&&t.y<2/3},e.isBottomAnchor=function(t){return"bottom"===t.yanchor||"auto"===t.yanchor&&t.y<=1/3}},26348:function(t,e,n){"use strict";var r=n(64872),i=r.mod,a=r.modHalf,o=Math.PI,s=2*o;function l(t){return Math.abs(t[1]-t[0])>s-1e-14}function c(t,e){return a(e-t,s)}function u(t,e){if(l(e))return!0;var n,r;e[0](r=i(r,s))&&(r+=s);var a=i(t,s),o=a+s;return a>=n&&a<=r||o>=n&&o<=r}function f(t,e,n,r,i,a,c){i=i||0,a=a||0;var u,f,h,d,p,g=l([n,r]);function v(t,e){return[t*Math.cos(e)+i,a-t*Math.sin(e)]}g?(u=0,f=o,h=s):n=i&&t<=a);var i,a},pathArc:function(t,e,n,r,i){return f(null,t,e,n,r,i,0)},pathSector:function(t,e,n,r,i){return f(null,t,e,n,r,i,1)},pathAnnulus:function(t,e,n,r,i,a){return f(t,e,n,r,i,a,1)}}},73627:function(t,e){"use strict";var n=Array.isArray,r=ArrayBuffer,i=DataView;function a(t){return r.isView(t)&&!(t instanceof i)}function o(t){return n(t)||a(t)}function s(t,e,n){if(o(t)){if(o(t[0])){for(var r=n,i=0;ii.max?e.set(n):e.set(+t)}},integer:{coerceFunction:function(t,e,n,i){t%1||!r(t)||void 0!==i.min&&ti.max?e.set(n):e.set(+t)}},string:{coerceFunction:function(t,e,n,r){if("string"!==typeof t){var i="number"===typeof t;!0!==r.strict&&i?e.set(String(t)):e.set(n)}else r.noBlank&&!t?e.set(n):e.set(t)}},color:{coerceFunction:function(t,e,n){i(t).isValid()?e.set(t):e.set(n)}},colorlist:{coerceFunction:function(t,e,n){Array.isArray(t)&&t.length&&t.every((function(t){return i(t).isValid()}))?e.set(t):e.set(n)}},colorscale:{coerceFunction:function(t,e,n){e.set(o.get(t,n))}},angle:{coerceFunction:function(t,e,n){"auto"===t?e.set("auto"):r(t)?e.set(f(+t,360)):e.set(n)}},subplotid:{coerceFunction:function(t,e,n,r){var i=r.regex||u(n);"string"===typeof t&&i.test(t)?e.set(t):e.set(n)},validateFunction:function(t,e){var n=e.dflt;return t===n||"string"===typeof t&&!!u(n).test(t)}},flaglist:{coerceFunction:function(t,e,n,r){if(-1===(r.extras||[]).indexOf(t))if("string"===typeof t){for(var i=t.split("+"),a=0;a=r&&t<=i?t:u}if("string"!==typeof t&&"number"!==typeof t)return u;t=String(t);var c=w(n),m=t.charAt(0);!c||"G"!==m&&"g"!==m||(t=t.substr(1),n="");var _=c&&"chinese"===n.substr(0,7),k=t.match(_?b:y);if(!k)return u;var T=k[1],M=k[3]||"1",A=Number(k[5]||1),S=Number(k[7]||0),E=Number(k[9]||0),C=Number(k[11]||0);if(c){if(2===T.length)return u;var P;T=Number(T);try{var L=v.getComponentMethod("calendars","getCal")(n);if(_){var O="i"===M.charAt(M.length-1);M=parseInt(M,10),P=L.newDate(T,L.toMonthIndex(T,M,O),A)}else P=L.newDate(T,Number(M),A)}catch(D){return u}return P?(P.toJD()-g)*f+S*h+E*d+C*p:u}T=2===T.length?(Number(T)+2e3-x)%100+x:Number(T),M-=1;var I=new Date(Date.UTC(2e3,M,A,S,E));return I.setUTCFullYear(T),I.getUTCMonth()!==M||I.getUTCDate()!==A?u:I.getTime()+C*p},r=e.MIN_MS=e.dateTime2ms("-9999"),i=e.MAX_MS=e.dateTime2ms("9999-12-31 23:59:59.9999"),e.isDateTime=function(t,n){return e.dateTime2ms(t,n)!==u};var k=90*f,T=3*h,M=5*d;function A(t,e,n,r,i){if((e||n||r||i)&&(t+=" "+_(e,2)+":"+_(n,2),(r||i)&&(t+=":"+_(r,2),i))){for(var a=4;i%10===0;)a-=1,i/=10;t+="."+_(i,a)}return t}e.ms2DateTime=function(t,e,n){if("number"!==typeof t||!(t>=r&&t<=i))return u;e||(e=0);var a,o,s,c,y,b,x=Math.floor(10*l(t+.05,1)),_=Math.round(t-x/10);if(w(n)){var S=Math.floor(_/f)+g,E=Math.floor(l(t,f));try{a=v.getComponentMethod("calendars","getCal")(n).fromJD(S).formatDate("yyyy-mm-dd")}catch(C){a=m("G%Y-%m-%d")(new Date(_))}if("-"===a.charAt(0))for(;a.length<11;)a="-0"+a.substr(1);else for(;a.length<10;)a="0"+a;o=e=r+f&&t<=i-f))return u;var e=Math.floor(10*l(t+.05,1)),n=new Date(Math.round(t-e/10));return A(a("%Y-%m-%d")(n),n.getHours(),n.getMinutes(),n.getSeconds(),10*n.getUTCMilliseconds()+e)},e.cleanDate=function(t,n,r){if(t===u)return n;if(e.isJSDate(t)||"number"===typeof t&&isFinite(t)){if(w(r))return s.error("JS Dates and milliseconds are incompatible with world calendars",t),n;if(!(t=e.ms2DateTimeLocal(+t))&&void 0!==n)return n}else if(!e.isDateTime(t,r))return s.error("unrecognized date",t),n;return t};var S=/%\d?f/g,E=/%h/g,C={1:"1",2:"1",3:"2",4:"2"};function P(t,e,n,r){t=t.replace(S,(function(t){var n=Math.min(+t.charAt(1)||6,6);return(e/1e3%1+2).toFixed(n).substr(2).replace(/0+$/,"")||"0"}));var i=new Date(Math.floor(e+.05));if(t=t.replace(E,(function(){return C[n("%q")(i)]})),w(r))try{t=v.getComponentMethod("calendars","worldCalFmt")(t,e,r)}catch(a){return"Invalid"}return n(t)(i)}var L=[59,59.9,59.99,59.999,59.9999];e.formatDate=function(t,e,n,r,i,a){if(i=w(i)&&i,!e)if("y"===n)e=a.year;else if("m"===n)e=a.month;else{if("d"!==n)return function(t,e){var n=l(t+.05,f),r=_(Math.floor(n/h),2)+":"+_(l(Math.floor(n/d),60),2);if("M"!==e){o(e)||(e=0);var i=(100+Math.min(l(t/p,60),L[e])).toFixed(e).substr(1);e>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),r+=":"+i}return r}(t,n)+"\n"+P(a.dayMonthYear,t,r,i);e=a.dayMonth+"\n"+a.year}return P(e,t,r,i)};var O=3*f;e.incrementMonth=function(t,e,n){n=w(n)&&n;var r=l(t,f);if(t=Math.round(t-r),n)try{var i=Math.round(t/f)+g,a=v.getComponentMethod("calendars","getCal")(n),o=a.fromJD(i);return e%12?a.add(o,e,"m"):a.add(o,e/12,"y"),(o.toJD()-g)*f+r}catch(u){s.error("invalid ms "+t+" in calendar "+n)}var c=new Date(t+O);return c.setUTCMonth(c.getUTCMonth()+e)+r-O},e.findExactDates=function(t,e){for(var n,r,i=0,a=0,s=0,l=0,c=w(e)&&v.getComponentMethod("calendars","getCal")(e),u=0;u0&&t[e+1][0]<0)return e;return null}switch(e="RUS"===s||"FJI"===s?function(t){var e;if(null===c(t))e=t;else for(e=new Array(t.length),i=0;ie?n[r++]=[t[i][0]+360,t[i][1]]:i===e?(n[r++]=t[i],n[r++]=[t[i][0],-90]):n[r++]=t[i];var a=h.tester(n);a.pts.pop(),l.push(a)}:function(t){l.push(h.tester(t))},a.type){case"MultiPolygon":for(n=0;ni&&(i=c,e=l)}else e=n;return o.default(e).geometry.coordinates}(u),r.fIn=t,r.fOut=u,s.push(u)}else c.log(["Location",r.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete i[n]}switch(n.type){case"FeatureCollection":var h=n.features;for(r=0;r100?(clearInterval(a),r("Unexpected error while fetching from "+t)):void i++}),50)}))}for(var o=0;o0&&(n.push(i),i=[])}return i.length>0&&n.push(i),n},e.makeLine=function(t){return 1===t.length?{type:"LineString",coordinates:t[0]}:{type:"MultiLineString",coordinates:t}},e.makePolygon=function(t){if(1===t.length)return{type:"Polygon",coordinates:t};for(var e=new Array(t.length),n=0;n1||g<0||g>1?null:{x:t+l*g,y:e+f*g}}function l(t,e,n,r,i){var a=r*t+i*e;if(a<0)return r*r+i*i;if(a>n){var o=r-t,s=i-e;return o*o+s*s}var l=r*e-i*t;return l*l/n}e.segmentsIntersect=s,e.segmentDistance=function(t,e,n,r,i,a,o,c){if(s(t,e,n,r,i,a,o,c))return 0;var u=n-t,f=r-e,h=o-i,d=c-a,p=u*u+f*f,g=h*h+d*d,v=Math.min(l(u,f,p,i-t,a-e),l(u,f,p,o-t,c-e),l(h,d,g,t-i,e-a),l(h,d,g,n-i,r-a));return Math.sqrt(v)},e.getTextLocation=function(t,e,n,s){if(t===i&&s===a||(r={},i=t,a=s),r[n])return r[n];var l=t.getPointAtLength(o(n-s/2,e)),c=t.getPointAtLength(o(n+s/2,e)),u=Math.atan((c.y-l.y)/(c.x-l.x)),f=t.getPointAtLength(o(n,e)),h={x:(4*f.x+l.x+c.x)/6,y:(4*f.y+l.y+c.y)/6,theta:u};return r[n]=h,h},e.clearLocationCache=function(){i=null},e.getVisibleSegment=function(t,e,n){var r,i,a=e.left,o=e.right,s=e.top,l=e.bottom,c=0,u=t.getTotalLength(),f=u;function h(e){var n=t.getPointAtLength(e);0===e?r=n:e===u&&(i=n);var c=n.xo?n.x-o:0,f=n.yl?n.y-l:0;return Math.sqrt(c*c+f*f)}for(var d=h(c);d;){if((c+=d+n)>f)return;d=h(c)}for(d=h(f);d;){if(c>(f-=d+n))return;d=h(f)}return{min:c,max:f,len:f-c,total:u,isClosed:0===c&&f===u&&Math.abs(r.x-i.x)<.1&&Math.abs(r.y-i.y)<.1}},e.findPointOnPath=function(t,e,n,r){for(var i,a,o,s=(r=r||{}).pathLength||t.getTotalLength(),l=r.tolerance||.001,c=r.iterationLimit||30,u=t.getPointAtLength(0)[n]>t.getPointAtLength(s)[n]?-1:1,f=0,h=0,d=s;f0?d=i:h=i,f++}return a}},81697:function(t,e,n){"use strict";var r=n(92770),i=n(84267),a=n(25075),o=n(21081),s=n(22399).defaultLine,l=n(73627).isArrayOrTypedArray,c=a(s),u=1;function f(t,e){var n=t;return n[3]*=e,n}function h(t){if(r(t))return c;var e=a(t);return e.length?e:c}function d(t){return r(t)?t:u}t.exports={formatColor:function(t,e,n){var r,i,s,p,g,v=t.color,m=l(v),y=l(e),b=o.extractOpts(t),x=[];if(r=void 0!==b.colorscale?o.makeColorScaleFuncFromTrace(t):h,i=m?function(t,e){return void 0===t[e]?c:a(r(t[e]))}:h,s=y?function(t,e){return void 0===t[e]?u:d(t[e])}:d,m||y)for(var w=0;w1?(n*t+n*e)/n:t+e,i=String(r).length;if(i>16){var a=String(e).length;if(i>=String(t).length+a){var o=parseFloat(r).toPrecision(12);-1===o.indexOf("e+")&&(r=+o)}}return r}},71828:function(t,e,n){"use strict";var r=n(39898),i=n(84096).g0,a=n(60721).WU,o=n(92770),s=n(50606),l=s.FP_SAFE,c=-l,u=s.BADNUM,f=t.exports={};f.adjustFormat=function(t){return!t||/^\d[.]\df/.test(t)||/[.]\d%/.test(t)?t:"0.f"===t?"~f":/^\d%/.test(t)?"~%":/^\ds/.test(t)?"~s":!/^[~,.0$]/.test(t)&&/[&fps]/.test(t)?"~"+t:t};var h={};f.warnBadFormat=function(t){var e=String(t);h[e]||(h[e]=1,f.warn('encountered bad format: "'+e+'"'))},f.noFormat=function(t){return String(t)},f.numberFormat=function(t){var e;try{e=a(f.adjustFormat(t))}catch(n){return f.warnBadFormat(t),f.noFormat}return e},f.nestedProperty=n(65487),f.keyedContainer=n(66636),f.relativeAttr=n(6962),f.isPlainObject=n(41965),f.toLogRange=n(58163),f.relinkPrivateKeys=n(51332);var d=n(73627);f.isTypedArray=d.isTypedArray,f.isArrayOrTypedArray=d.isArrayOrTypedArray,f.isArray1D=d.isArray1D,f.ensureArray=d.ensureArray,f.concat=d.concat,f.maxRowLength=d.maxRowLength,f.minRowLength=d.minRowLength;var p=n(64872);f.mod=p.mod,f.modHalf=p.modHalf;var g=n(96554);f.valObjectMeta=g.valObjectMeta,f.coerce=g.coerce,f.coerce2=g.coerce2,f.coerceFont=g.coerceFont,f.coercePattern=g.coercePattern,f.coerceHoverinfo=g.coerceHoverinfo,f.coerceSelectionMarkerOpacity=g.coerceSelectionMarkerOpacity,f.validate=g.validate;var v=n(41631);f.dateTime2ms=v.dateTime2ms,f.isDateTime=v.isDateTime,f.ms2DateTime=v.ms2DateTime,f.ms2DateTimeLocal=v.ms2DateTimeLocal,f.cleanDate=v.cleanDate,f.isJSDate=v.isJSDate,f.formatDate=v.formatDate,f.incrementMonth=v.incrementMonth,f.dateTick0=v.dateTick0,f.dfltRange=v.dfltRange,f.findExactDates=v.findExactDates,f.MIN_MS=v.MIN_MS,f.MAX_MS=v.MAX_MS;var m=n(65888);f.findBin=m.findBin,f.sorterAsc=m.sorterAsc,f.sorterDes=m.sorterDes,f.distinctVals=m.distinctVals,f.roundUp=m.roundUp,f.sort=m.sort,f.findIndexOfMin=m.findIndexOfMin,f.sortObjectKeys=n(78607);var y=n(80038);f.aggNums=y.aggNums,f.len=y.len,f.mean=y.mean,f.median=y.median,f.midRange=y.midRange,f.variance=y.variance,f.stdev=y.stdev,f.interp=y.interp;var b=n(35657);f.init2dArray=b.init2dArray,f.transposeRagged=b.transposeRagged,f.dot=b.dot,f.translationMatrix=b.translationMatrix,f.rotationMatrix=b.rotationMatrix,f.rotationXYMatrix=b.rotationXYMatrix,f.apply3DTransform=b.apply3DTransform,f.apply2DTransform=b.apply2DTransform,f.apply2DTransform2=b.apply2DTransform2,f.convertCssMatrix=b.convertCssMatrix,f.inverseTransformMatrix=b.inverseTransformMatrix;var x=n(26348);f.deg2rad=x.deg2rad,f.rad2deg=x.rad2deg,f.angleDelta=x.angleDelta,f.angleDist=x.angleDist,f.isFullCircle=x.isFullCircle,f.isAngleInsideSector=x.isAngleInsideSector,f.isPtInsideSector=x.isPtInsideSector,f.pathArc=x.pathArc,f.pathSector=x.pathSector,f.pathAnnulus=x.pathAnnulus;var w=n(99863);f.isLeftAnchor=w.isLeftAnchor,f.isCenterAnchor=w.isCenterAnchor,f.isRightAnchor=w.isRightAnchor,f.isTopAnchor=w.isTopAnchor,f.isMiddleAnchor=w.isMiddleAnchor,f.isBottomAnchor=w.isBottomAnchor;var _=n(87642);f.segmentsIntersect=_.segmentsIntersect,f.segmentDistance=_.segmentDistance,f.getTextLocation=_.getTextLocation,f.clearLocationCache=_.clearLocationCache,f.getVisibleSegment=_.getVisibleSegment,f.findPointOnPath=_.findPointOnPath;var k=n(1426);f.extendFlat=k.extendFlat,f.extendDeep=k.extendDeep,f.extendDeepAll=k.extendDeepAll,f.extendDeepNoArrays=k.extendDeepNoArrays;var T=n(47769);f.log=T.log,f.warn=T.warn,f.error=T.error;var M=n(30587);f.counterRegex=M.counter;var A=n(79990);f.throttle=A.throttle,f.throttleDone=A.done,f.clearThrottle=A.clear;var S=n(24401);function E(t){var e={};for(var n in t)for(var r=t[n],i=0;il||t=e)&&o(t)&&t>=0&&t%1===0},f.noop=n(64213),f.identity=n(23389),f.repeat=function(t,e){for(var n=new Array(e),r=0;rn?Math.max(n,Math.min(e,t)):Math.max(e,Math.min(n,t))},f.bBoxIntersect=function(t,e,n){return n=n||0,t.left<=e.right+n&&e.left<=t.right+n&&t.top<=e.bottom+n&&e.top<=t.bottom+n},f.simpleMap=function(t,e,n,r,i){for(var a=t.length,o=new Array(a),s=0;s=Math.pow(2,n)?i>10?(f.warn("randstr failed uniqueness"),l):t(e,n,r,(i||0)+1):l},f.OptionControl=function(t,e){t||(t={}),e||(e="opt");var n={optionList:[],_newoption:function(r){r[e]=t,n[r.name]=r,n.optionList.push(r)}};return n["_"+e]=t,n},f.smooth=function(t,e){if((e=Math.round(e)||0)<2)return t;var n,r,i,a,o=t.length,s=2*o,l=2*e-1,c=new Array(l),u=new Array(o);for(n=0;n=s&&(i-=s*Math.floor(i/s)),i<0?i=-1-i:i>=o&&(i=s-1-i),a+=t[i]*c[r];u[n]=a}return u},f.syncOrAsync=function(t,e,n){var r;function i(){return f.syncOrAsync(t,e,n)}for(;t.length;)if((r=(0,t.splice(0,1)[0])(e))&&r.then)return r.then(i);return n&&n(e)},f.stripTrailingSlash=function(t){return"/"===t.substr(-1)?t.substr(0,t.length-1):t},f.noneOrAll=function(t,e,n){if(t){var r,i,a=!1,o=!0;for(r=0;r0?e:0}))},f.fillArray=function(t,e,n,r){if(r=r||f.identity,f.isArrayOrTypedArray(t))for(var i=0;i1?i+o[1]:"";if(a&&(o.length>1||s.length>4||n))for(;r.test(s);)s=s.replace(r,"$1"+a+"$2");return s+l},f.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var D=/^\w*$/;f.templateString=function(t,e){var n={};return t.replace(f.TEMPLATE_STRING_REGEX,(function(t,r){var i;return D.test(r)?i=e[r]:(n[r]=n[r]||f.nestedProperty(e,r).get,i=n[r]()),f.isValidTextValue(i)?i:""}))};var R={max:10,count:0,name:"hovertemplate"};f.hovertemplateString=function(){return j.apply(R,arguments)};var z={max:10,count:0,name:"texttemplate"};f.texttemplateString=function(){return j.apply(z,arguments)};var N=/^[:|\|]/;function j(t,e,n){var r=this,a=arguments;e||(e={});var o={};return t.replace(f.TEMPLATE_STRING_REGEX,(function(t,s,l){var c,u,h,d="_xother"===s||"_yother"===s,p="_xother_"===s||"_yother_"===s,g="xother_"===s||"yother_"===s,v="xother"===s||"yother"===s||d||g||p,m=s;if((d||p)&&(m=m.substring(1)),(g||p)&&(m=m.substring(0,m.length-1)),v){if(void 0===(c=e[m]))return""}else for(h=3;h=48&&o<=57,c=s>=48&&s<=57;if(l&&(r=10*r+o-48),c&&(i=10*i+s-48),!l||!c){if(r!==i)return r-i;if(o!==s)return o-s}}return i-r};var F=2e9;f.seedPseudoRandom=function(){F=2e9},f.pseudoRandom=function(){var t=F;return F=(69069*F+1)%4294967296,Math.abs(F-t)<429496729?f.pseudoRandom():F/4294967296},f.fillText=function(t,e,n){var r=Array.isArray(n)?function(t){n.push(t)}:function(t){n.text=t},i=f.extractOption(t,e,"htx","hovertext");if(f.isValidTextValue(i))return r(i);var a=f.extractOption(t,e,"tx","text");return f.isValidTextValue(a)?r(a):void 0},f.isValidTextValue=function(t){return t||0===t},f.formatPercent=function(t,e){e=e||0;for(var n=(Math.round(100*t*Math.pow(10,e))*Math.pow(.1,e)).toFixed(e)+"%",r=0;r1&&(c=1):c=0,f.strTranslate(i-c*(n+o),a-c*(r+s))+f.strScale(c)+(l?"rotate("+l+(e?"":" "+n+" "+r)+")":"")},f.setTransormAndDisplay=function(t,e){t.attr("transform",f.getTextTransform(e)),t.style("display",e.scale?null:"none")},f.ensureUniformFontSize=function(t,e){var n=f.extendFlat({},e);return n.size=Math.max(e.size,t._fullLayout.uniformtext.minsize||0),n},f.join2=function(t,e,n){var r=t.length;return r>1?t.slice(0,-1).join(e)+n+t[r-1]:t.join(e)},f.bigFont=function(t){return Math.round(1.2*t)};var B=f.getFirefoxVersion(),U=null!==B&&B<86;f.getPositionFromD3Event=function(){return U?[r.event.layerX,r.event.layerY]:[r.event.offsetX,r.event.offsetY]}},41965:function(t){"use strict";t.exports=function(t){return window&&window.process&&window.process.versions?"[object Object]"===Object.prototype.toString.call(t):"[object Object]"===Object.prototype.toString.call(t)&&Object.getPrototypeOf(t).hasOwnProperty("hasOwnProperty")}},66636:function(t,e,n){"use strict";var r=n(65487),i=/^\w*$/;t.exports=function(t,e,n,a){var o,s,l;n=n||"name",a=a||"value";var c={};e&&e.length?(l=r(t,e),s=l.get()):s=t,e=e||"";var u={};if(s)for(o=0;o2)return c[e]=2|c[e],h.set(t,null);if(f){for(o=e;o1){var e=["LOG:"];for(t=0;t1){var n=[];for(t=0;t"),"long")}},a.warn=function(){var t;if(r.logging>0){var e=["WARN:"];for(t=0;t0){var n=[];for(t=0;t"),"stick")}},a.error=function(){var t;if(r.logging>0){var e=["ERROR:"];for(t=0;t0){var n=[];for(t=0;t"),"stick")}}},77310:function(t,e,n){"use strict";var r=n(39898);t.exports=function(t,e,n){var i=t.selectAll("g."+n.replace(/\s/g,".")).data(e,(function(t){return t[0].trace.uid}));i.exit().remove(),i.enter().append("g").attr("class",n),i.order();var a=t.classed("rangeplot")?"nodeRangePlot3":"node3";return i.each((function(t){t[0][a]=r.select(this)})),i}},35657:function(t,e,n){"use strict";var r=n(79576);e.init2dArray=function(t,e){for(var n=new Array(t),r=0;re/2?t-Math.round(t/e)*e:t}}},65487:function(t,e,n){"use strict";var r=n(92770),i=n(73627).isArrayOrTypedArray;function a(t,e){return function(){var n,r,o,s,l,c=t;for(s=0;s/g),l=0;la||c===i||cs)&&(!e||!l(t))}:function(t,e){var l=t[0],c=t[1];if(l===i||la||c===i||cs)return!1;var u,f,h,d,p,g=n.length,v=n[0][0],m=n[0][1],y=0;for(u=1;uMath.max(f,v)||c>Math.max(h,m)))if(cu||Math.abs(r(o,h))>i)return!0;return!1},a.filter=function(t,e){var n=[t[0]],r=0,i=0;function o(o){t.push(o);var s=n.length,l=r;n.splice(i+1);for(var c=l+1;c1&&o(t.pop()),{addPt:o,raw:t,filtered:n}}},79749:function(t,e,n){"use strict";var r=n(58617),i=n(98580);t.exports=function(t,e,a){var o=t._fullLayout,s=!0;return o._glcanvas.each((function(r){if(r.regl)r.regl.preloadCachedCode(a);else if(!r.pick||o._has("parcoords")){try{r.regl=i({canvas:this,attributes:{antialias:!r.pick,preserveDrawingBuffer:!0},pixelRatio:t._context.plotGlPixelRatio||n.g.devicePixelRatio,extensions:e||[],cachedCode:a||{}})}catch(l){s=!1}r.regl||(s=!1),s&&this.addEventListener("webglcontextlost",(function(e){t&&t.emit&&t.emit("plotly_webglcontextlost",{event:e,layer:r.key})}),!1)}})),s||r({container:o._glcontainer.node()}),s}},45142:function(t,e,n){"use strict";var r=n(92770),i=n(35791);t.exports=function(t){var e;if("string"!==typeof(e=t&&t.hasOwnProperty("userAgent")?t.userAgent:function(){var t;return"undefined"!==typeof navigator&&(t=navigator.userAgent),t&&t.headers&&"string"===typeof t.headers["user-agent"]&&(t=t.headers["user-agent"]),t}()))return!0;var n=i({ua:{headers:{"user-agent":e}},tablet:!0,featureDetect:!1});if(!n)for(var a=e.split(" "),o=1;o-1;s--){var l=a[s];if("Version/"===l.substr(0,8)){var c=l.substr(8).split(".")[0];if(r(c)&&(c=+c),c>=13)return!0}}return n}},75138:function(t){"use strict";t.exports=function(t,e){if(e instanceof RegExp){for(var n=e.toString(),r=0;ri.queueLength&&(t.undoQueue.queue.shift(),t.undoQueue.index--))},startSequence:function(t){t.undoQueue=t.undoQueue||{index:0,queue:[],sequence:!1},t.undoQueue.sequence=!0,t.undoQueue.beginSequence=!0},stopSequence:function(t){t.undoQueue=t.undoQueue||{index:0,queue:[],sequence:!1},t.undoQueue.sequence=!1,t.undoQueue.beginSequence=!1},undo:function(t){var e,n;if(!(void 0===t.undoQueue||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,e=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,n=0;n=t.undoQueue.queue.length)){for(e=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,n=0;ne}function f(t,e){return t>=e}e.findBin=function(t,e,n){if(r(e.start))return n?Math.ceil((t-e.start)/e.size-s)-1:Math.floor((t-e.start)/e.size+s);var a,o,h=0,d=e.length,p=0,g=d>1?(e[d-1]-e[0])/(d-1):1;for(o=g>=0?n?l:c:n?f:u,t+=g*s*(n?-1:1)*(g>=0?1:-1);h90&&i.log("Long binary search..."),h-1},e.sorterAsc=function(t,e){return t-e},e.sorterDes=function(t,e){return e-t},e.distinctVals=function(t){var n,r=t.slice();for(r.sort(e.sorterAsc),n=r.length-1;n>-1&&r[n]===o;n--);for(var i,a=r[n]-r[0]||1,s=a/(n||1)/1e4,l=[],c=0;c<=n;c++){var u=r[c],f=u-i;void 0===i?(l.push(u),i=u):f>s&&(a=Math.min(a,f),l.push(u),i=u)}return{vals:l,minDiff:a}},e.roundUp=function(t,e,n){for(var r,i=0,a=e.length-1,o=0,s=n?0:1,l=n?1:0,c=n?Math.ceil:Math.floor;i0&&(r=1),n&&r)return t.sort(e)}return r?t:t.reverse()},e.findIndexOfMin=function(t,e){e=e||a;for(var n,r=1/0,i=0;ia.length)&&(o=a.length),r(n)||(n=!1),i(a[0])){for(l=new Array(o),s=0;st.length-1)return t[t.length-1];var n=e%1;return n*t[Math.ceil(e)]+(1-n)*t[Math.floor(e)]}},78614:function(t,e,n){"use strict";var r=n(25075);t.exports=function(t){return t?r(t):[0,0,0,1]}},63893:function(t,e,n){"use strict";var r=n(39898),i=n(71828),a=i.strTranslate,o=n(77922),s=n(18783).LINE_SPACING,l=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;e.convertToTspans=function(t,n,v){var S=t.text(),E=!t.attr("data-notex")&&n&&n._context.typesetMath&&"undefined"!==typeof MathJax&&S.match(l),L=r.select(t.node().parentNode);if(!L.empty()){var O=t.attr("class")?t.attr("class").split(" ")[0]:"text";return O+="-math",L.selectAll("svg."+O).remove(),L.selectAll("g."+O+"-group").remove(),t.style("display",null).attr({"data-unformatted":S,"data-math":"N"}),E?(n&&n._promises||[]).push(new Promise((function(e){t.style("display","none");var n=parseInt(t.node().style.fontSize,10),o={fontSize:n};!function(t,e,n){var a,o,s,l,h=parseInt((MathJax.version||"").split(".")[0]);if(2===h||3===h){var d=function(){return o=i.extendDeepAll({},MathJax.Hub.config),s=MathJax.Hub.processSectionDelay,void 0!==MathJax.Hub.processSectionDelay&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:f},displayAlign:"left"})},p=function(){o=i.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=f},g=function(){if("SVG"!==(a=MathJax.Hub.config.menuSettings.renderer))return MathJax.Hub.setRenderer("SVG")},v=function(){"svg"!==(a=MathJax.config.startup.output)&&(MathJax.config.startup.output="svg")},m=function(){var n="math-output-"+i.randstr({},64),a=(l=r.select("body").append("div").attr({id:n}).style({visibility:"hidden",position:"absolute","font-size":e.fontSize+"px"}).text(t.replace(c,"\\lt ").replace(u,"\\gt "))).node();return 2===h?MathJax.Hub.Typeset(a):MathJax.typeset([a])},y=function(){var e=l.select(2===h?".MathJax_SVG":".MathJax"),a=!e.empty()&&l.select("svg").node();if(a){var o,s=a.getBoundingClientRect();o=2===h?r.select("body").select("#MathJax_SVG_glyphs"):e.select("defs"),n(e,o,s)}else i.log("There was an error in the tex syntax.",t),n();l.remove()},b=function(){if("SVG"!==a)return MathJax.Hub.setRenderer(a)},x=function(){"svg"!==a&&(MathJax.config.startup.output=a)},w=function(){return void 0!==s&&(MathJax.Hub.processSectionDelay=s),MathJax.Hub.Config(o)},_=function(){MathJax.config=o};2===h?MathJax.Hub.Queue(d,g,m,y,b,w):3===h&&(p(),v(),MathJax.startup.defaultReady(),MathJax.startup.promise.then((function(){m(),y(),x(),_()})))}else i.warn("No MathJax version:",MathJax.version)}(E[2],o,(function(r,i,o){L.selectAll("svg."+O).remove(),L.selectAll("g."+O+"-group").remove();var s=r&&r.select("svg");if(!s||!s.node())return I(),void e();var l=L.append("g").classed(O+"-group",!0).attr({"pointer-events":"none","data-unformatted":S,"data-math":"Y"});l.node().appendChild(s.node()),i&&i.node()&&s.node().insertBefore(i.node().cloneNode(!0),s.node().firstChild);var c=o.width,u=o.height;s.attr({class:O,height:u,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var f=t.node().style.fill||"black",h=s.select("g");h.attr({fill:f,stroke:f});var d=h.node().getBoundingClientRect(),p=d.width,g=d.height;(p>c||g>u)&&(s.style("overflow","hidden"),p=(d=s.node().getBoundingClientRect()).width,g=d.height);var m=+t.attr("x"),y=+t.attr("y"),b=-(n||t.node().getBoundingClientRect().height)/4;if("y"===O[0])l.attr({transform:"rotate("+[-90,m,y]+")"+a(-p/2,b-g/2)});else if("l"===O[0])y=b-g/2;else if("a"===O[0]&&0!==O.indexOf("atitle"))m=0,y=b;else{var x=t.attr("text-anchor");m-=p*("middle"===x?.5:"end"===x?1:0),y=y+b-g/2}s.attr({x:m,y:y}),v&&v.call(t,l),e(l)}))}))):I(),t}function I(){L.empty()||(O=t.attr("class")+"-math",L.select("svg."+O).remove()),t.text("").style("white-space","pre");var n=function(t,e){e=e.replace(m," ");var n,a=!1,l=[],c=-1;function u(){c++;var e=document.createElementNS(o.svg,"tspan");r.select(e).attr({class:"line",dy:c*s+"em"}),t.appendChild(e),n=e;var i=l;if(l=[{node:e}],i.length>1)for(var a=1;a doesnt match end tag <"+t+">. Pretending it did match.",e),n=l[l.length-1].node}else i.log("Ignoring unexpected end tag .",e)}var E=x.test(e);E?u():(n=t,l=[{node:t}]);for(var L=e.split(y),O=0;O|>|>)/g,f=[["$","$"],["\\(","\\)"]],h={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"},d={sub:"0.3em",sup:"-0.6em"},p={sub:"-0.21em",sup:"0.42em"},g="\u200b",v=["http:","https:","mailto:","",void 0,":"],m=e.NEWLINES=/(\r\n?|\n)/g,y=/(<[^<>]*>)/,b=/<(\/?)([^ >]*)(\s+(.*))?>/i,x=//i;e.BR_TAG_ALL=//gi;var w=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,_=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,k=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,T=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function M(t,e){if(!t)return null;var n=t.match(e),r=n&&(n[3]||n[4]);return r&&C(r)}var A=/(^|;)\s*color:/;e.plainText=function(t,e){for(var n=void 0!==(e=e||{}).len&&-1!==e.len?e.len:1/0,r=void 0!==e.allowedTags?e.allowedTags:["br"],i="...".length,a=t.split(y),o=[],s="",l=0,c=0;ci?o.push(u.substr(0,p-i)+"..."):o.push(u.substr(0,p));break}s=""}}return o.join("")};var S={mu:"\u03bc",amp:"&",lt:"<",gt:">",nbsp:"\xa0",times:"\xd7",plusmn:"\xb1",deg:"\xb0"},E=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function C(t){return t.replace(E,(function(t,e){return("#"===e.charAt(0)?function(t){if(!(t>1114111)){var e=String.fromCodePoint;if(e)return e(t);var n=String.fromCharCode;return t<=65535?n(t):n(55232+(t>>10),t%1024+56320)}}("x"===e.charAt(1)?parseInt(e.substr(2),16):parseInt(e.substr(1),10)):S[e])||t}))}function P(t){var e=encodeURI(decodeURI(t)),n=document.createElement("a"),r=document.createElement("a");n.href=t,r.href=e;var i=n.protocol,a=r.protocol;return-1!==v.indexOf(i)&&-1!==v.indexOf(a)?e:""}function L(t,e,n){var r,a,o,s=n.horizontalAlign,l=n.verticalAlign||"top",c=t.node().getBoundingClientRect(),u=e.node().getBoundingClientRect();return a="bottom"===l?function(){return c.bottom-r.height}:"middle"===l?function(){return c.top+(c.height-r.height)/2}:function(){return c.top},o="right"===s?function(){return c.right-r.width}:"center"===s?function(){return c.left+(c.width-r.width)/2}:function(){return c.left},function(){r=this.node().getBoundingClientRect();var t=o()-u.left,e=a()-u.top,s=n.gd||{};if(n.gd){s._fullLayout._calcInverseTransform(s);var l=i.apply3DTransform(s._fullLayout._invTransform)(t,e);t=l[0],e=l[1]}return this.style({top:e+"px",left:t+"px","z-index":1e3}),this}}e.convertEntities=C,e.sanitizeHTML=function(t){t=t.replace(m," ");for(var e=document.createElement("p"),n=e,i=[],a=t.split(y),o=0;oa.ts+e?l():a.timer=setTimeout((function(){l(),a.timer=null}),e)},e.done=function(t){var e=n[t];return e&&e.timer?new Promise((function(t){var n=e.onDone;e.onDone=function(){n&&n(),t(),e.onDone=null}})):Promise.resolve()},e.clear=function(t){if(t)r(n[t]),delete n[t];else for(var i in n)e.clear(i)}},58163:function(t,e,n){"use strict";var r=n(92770);t.exports=function(t,e){if(t>0)return Math.log(t)/Math.LN10;var n=Math.log(Math.min(e[0],e[1]))/Math.LN10;return r(n)||(n=Math.log(Math.max(e[0],e[1]))/Math.LN10-6),n}},90973:function(t,e,n){"use strict";var r=t.exports={},i=n(78776).locationmodeToLayer,a=n(96892).zL;r.getTopojsonName=function(t){return[t.scope.replace(/ /g,"-"),"_",t.resolution.toString(),"m"].join("")},r.getTopojsonPath=function(t,e){return t+e+".json"},r.getTopojsonFeatures=function(t,e){var n=i[t.locationmode],r=e.objects[n];return a(e,r).features}},37815:function(t){"use strict";t.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}},92177:function(t){"use strict";t.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(t,e,n){"use strict";var r=n(73972);t.exports=function(t){for(var e,n,i=r.layoutArrayContainers,a=r.layoutArrayRegexes,o=t.split("[")[0],s=0;s0&&o.log("Clearing previous rejected promises from queue."),t._promises=[]},e.cleanLayout=function(t){var n,r;t||(t={}),t.xaxis1&&(t.xaxis||(t.xaxis=t.xaxis1),delete t.xaxis1),t.yaxis1&&(t.yaxis||(t.yaxis=t.yaxis1),delete t.yaxis1),t.scene1&&(t.scene||(t.scene=t.scene1),delete t.scene1);var a=(s.subplotsRegistry.cartesian||{}).attrRegex,l=(s.subplotsRegistry.polar||{}).attrRegex,f=(s.subplotsRegistry.ternary||{}).attrRegex,h=(s.subplotsRegistry.gl3d||{}).attrRegex,g=Object.keys(t);for(n=0;n3?(I.x=1.02,I.xanchor="left"):I.x<-2&&(I.x=-.02,I.xanchor="right"),I.y>3?(I.y=1.02,I.yanchor="bottom"):I.y<-2&&(I.y=-.02,I.yanchor="top")),p(t),"rotate"===t.dragmode&&(t.dragmode="orbit"),c.clean(t),t.template&&t.template.layout&&e.cleanLayout(t.template.layout),t},e.cleanData=function(t){for(var n=0;n0)return t.substr(0,e)}e.hasParent=function(t,e){for(var n=x(e);n;){if(n in t)return!0;n=x(n)}return!1};var w=["x","y","z"];e.clearAxisTypes=function(t,e,n){for(var r=0;r1&&a.warn("Full array edits are incompatible with other edits",f);var y=n[""][""];if(c(y))e.set(null);else{if(!Array.isArray(y))return a.warn("Unrecognized full array edit value",f,y),!0;e.set(y)}return!g&&(h(v,m),d(t),!0)}var b,x,w,_,k,T,M,A,S=Object.keys(n).map(Number).sort(o),E=e.get(),C=E||[],P=u(m,f).get(),L=[],O=-1,I=C.length;for(b=0;bC.length-(M?0:1))a.warn("index out of range",f,w);else if(void 0!==T)k.length>1&&a.warn("Insertion & removal are incompatible with edits to the same index.",f,w),c(T)?L.push(w):M?("add"===T&&(T={}),C.splice(w,0,T),P&&P.splice(w,0,{})):a.warn("Unrecognized full object edit value",f,w,T),-1===O&&(O=w);else for(x=0;x=0;b--)C.splice(L[b],1),P&&P.splice(L[b],1);if(C.length?E||e.set(C):e.set(null),g)return!1;if(h(v,m),p!==i){var D;if(-1===O)D=S;else{for(I=Math.max(C.length,I),D=[],b=0;b=O);b++)D.push(w);for(b=O;b=t.data.length||i<-t.data.length)throw new Error(n+" must be valid indices for gd.data.");if(e.indexOf(i,r+1)>-1||i>=0&&e.indexOf(-t.data.length+i)>-1||i<0&&e.indexOf(t.data.length+i)>-1)throw new Error("each index in "+n+" must be unique.")}}function I(t,e,n){if(!Array.isArray(t.data))throw new Error("gd.data must be an array.");if("undefined"===typeof e)throw new Error("currentIndices is a required argument.");if(Array.isArray(e)||(e=[e]),O(t,e,"currentIndices"),"undefined"===typeof n||Array.isArray(n)||(n=[n]),"undefined"!==typeof n&&O(t,n,"newIndices"),"undefined"!==typeof n&&e.length!==n.length)throw new Error("current and new indices must be of equal length.")}function D(t,e,n,r,a){!function(t,e,n,r){var i=o.isPlainObject(r);if(!Array.isArray(t.data))throw new Error("gd.data must be an array");if(!o.isPlainObject(e))throw new Error("update must be a key:value object");if("undefined"===typeof n)throw new Error("indices must be an integer or array of integers");for(var a in O(t,n,"indices"),e){if(!Array.isArray(e[a])||e[a].length!==n.length)throw new Error("attribute "+a+" must be an array of length equal to indices array length");if(i&&(!(a in r)||!Array.isArray(r[a])||r[a].length!==e[a].length))throw new Error("when maxPoints is set as a key:value object it must contain a 1:1 corrispondence with the keys and number of traces in the update object")}}(t,e,n,r);for(var l=function(t,e,n,r){var a,l,c,u,f,h=o.isPlainObject(r),d=[];for(var p in Array.isArray(n)||(n=[n]),n=L(n,t.data.length-1),e)for(var g=0;g-1&&-1===n.indexOf("grouptitlefont")?l(n,n.replace("titlefont","title.font")):n.indexOf("titleposition")>-1?l(n,n.replace("titleposition","title.position")):n.indexOf("titleside")>-1?l(n,n.replace("titleside","title.side")):n.indexOf("titleoffset")>-1&&l(n,n.replace("titleoffset","title.offset")):l(n,n.replace("title","title.text"));function l(e,n){t[n]=t[e],delete t[e]}}function H(t,e,n){t=o.getGraphDiv(t),w.clearPromiseQueue(t);var r={};if("string"===typeof e)r[e]=n;else{if(!o.isPlainObject(e))return o.warn("Relayout fail.",e,n),Promise.reject();r=o.extendFlat({},e)}Object.keys(r).length&&(t.changed=!0);var i=$(t,r),a=i.flags;a.calc&&(t.calcdata=void 0);var s=[h.previousPromises];a.layoutReplot?s.push(_.layoutReplot):Object.keys(r).length&&(V(t,a,i)||h.supplyDefaults(t),a.legend&&s.push(_.doLegend),a.layoutstyle&&s.push(_.layoutStyles),a.axrange&&q(s,i.rangesAltered),a.ticks&&s.push(_.doTicksRelayout),a.modebar&&s.push(_.doModeBar),a.camera&&s.push(_.doCamera),a.colorbars&&s.push(_.doColorBars),s.push(S)),s.push(h.rehover,h.redrag,h.reselect),c.add(t,H,[t,i.undoit],H,[t,i.redoit]);var l=o.syncOrAsync(s,t);return l&&l.then||(l=Promise.resolve(t)),l.then((function(){return t.emit("plotly_relayout",i.eventData),t}))}function V(t,e,n){var r=t._fullLayout;if(!e.axrange)return!1;for(var i in e)if("axrange"!==i&&e[i])return!1;for(var a in n.rangesAltered){var o=d.id2name(a),s=t.layout[o],l=r[o];if(l.autorange=s.autorange,s.range&&(l.range=s.range.slice()),l.cleanRange(),l._matchGroup)for(var c in l._matchGroup)if(c!==a){var u=r[d.id2name(c)];u.autorange=l.autorange,u.range=l.range.slice(),u._input.range=l.range.slice()}}return!0}function q(t,e){var n=e?function(t){var n=[];for(var r in e){var i=d.getFromId(t,r);if(n.push(r),-1!==(i.ticklabelposition||"").indexOf("inside")&&i._anchorAxis&&n.push(i._anchorAxis._id),i._matchGroup)for(var a in i._matchGroup)e[a]||n.push(a)}return d.draw(t,n,{skipTitle:!0})}:function(t){return d.draw(t,"redraw")};t.push(y,_.doAutoRangeAndConstraints,n,_.drawData,_.finalDraw)}var G=/^[xyz]axis[0-9]*\.range(\[[0|1]\])?$/,W=/^[xyz]axis[0-9]*\.autorange$/,Y=/^[xyz]axis[0-9]*\.domain(\[[0|1]\])?$/;function $(t,e){var n,r,i,a=t.layout,l=t._fullLayout,c=l._guiEditing,h=j(l._preGUI,c),p=Object.keys(e),g=d.list(t),v=o.extendDeepAll({},e),m={};for(U(e),p=Object.keys(e),r=0;r0&&"string"!==typeof I.parts[R];)R--;var z=I.parts[R],F=I.parts[R-1]+"."+z,B=I.parts.slice(0,R).join("."),H=s(t.layout,B).get(),V=s(l,B).get(),q=I.get();if(void 0!==D){A[O]=D,S[O]="reverse"===z?D:N(q);var $=f.getLayoutValObject(l,I.parts);if($&&$.impliedEdits&&null!==D)for(var K in $.impliedEdits)E(o.relativeAttr(O,K),$.impliedEdits[K]);if(-1!==["width","height"].indexOf(O))if(D){E("autosize",null);var Z="height"===O?"width":"height";E(Z,l[Z])}else l[O]=t._initialAutoSize[O];else if("autosize"===O)E("width",D?null:l.width),E("height",D?null:l.height);else if(F.match(G))L(F),s(l,B+"._inputRange").set(null);else if(F.match(W)){L(F),s(l,B+"._inputRange").set(null);var J=s(l,B).get();J._inputDomain&&(J._input.domain=J._inputDomain.slice())}else F.match(Y)&&s(l,B+"._inputDomain").set(null);if("type"===z){C=H;var Q="linear"===V.type&&"log"===D,tt="log"===V.type&&"linear"===D;if(Q||tt){if(C&&C.range)if(V.autorange)Q&&(C.range=C.range[1]>C.range[0]?[1,2]:[2,1]);else{var et=C.range[0],nt=C.range[1];Q?(et<=0&&nt<=0&&E(B+".autorange",!0),et<=0?et=nt/1e6:nt<=0&&(nt=et/1e6),E(B+".range[0]",Math.log(et)/Math.LN10),E(B+".range[1]",Math.log(nt)/Math.LN10)):(E(B+".range[0]",Math.pow(10,et)),E(B+".range[1]",Math.pow(10,nt)))}else E(B+".autorange",!0);Array.isArray(l._subplots.polar)&&l._subplots.polar.length&&l[I.parts[0]]&&"radialaxis"===I.parts[1]&&delete l[I.parts[0]]._subplot.viewInitial["radialaxis.range"],u.getComponentMethod("annotations","convertCoords")(t,V,D,E),u.getComponentMethod("images","convertCoords")(t,V,D,E)}else E(B+".autorange",!0),E(B+".range",null);s(l,B+"._inputRange").set(null)}else if(z.match(T)){var rt=s(l,O).get(),it=(D||{}).type;it&&"-"!==it||(it="linear"),u.getComponentMethod("annotations","convertCoords")(t,rt,it,E),u.getComponentMethod("images","convertCoords")(t,rt,it,E)}var at=x.containerArrayMatch(O);if(at){n=at.array,r=at.index;var ot=at.property,st=$||{editType:"calc"};""!==r&&""===ot&&(x.isAddVal(D)?S[O]=null:x.isRemoveVal(D)?S[O]=(s(a,n).get()||[])[r]:o.warn("unrecognized full object value",e)),k.update(M,st),m[n]||(m[n]={});var lt=m[n][r];lt||(lt=m[n][r]={}),lt[ot]=D,delete e[O]}else"reverse"===z?(H.range?H.range.reverse():(E(B+".autorange",!0),H.range=[1,0]),V.autorange?M.calc=!0:M.plot=!0):("dragmode"===O&&(!1===D&&!1!==q||!1!==D&&!1===q)||l._has("scatter-like")&&l._has("regl")&&"dragmode"===O&&("lasso"===D||"select"===D)&&"lasso"!==q&&"select"!==q||l._has("gl2d")?M.plot=!0:$?k.update(M,$):M.calc=!0,I.set(D))}}for(n in m)x.applyContainerArrayChanges(t,h(a,n),m[n],M,h)||(M.plot=!0);for(var ct in P){var ut=(C=d.getFromId(t,ct))&&C._constraintGroup;if(ut)for(var ft in M.calc=!0,ut)P[ft]||(d.getFromId(t,ft)._constraintShrinkable=!0)}return(X(t)||e.height||e.width)&&(M.plot=!0),(M.plot||M.calc)&&(M.layoutReplot=!0),{flags:M,rangesAltered:P,undoit:S,redoit:A,eventData:v}}function X(t){var e=t._fullLayout,n=e.width,r=e.height;return t.layout.autosize&&h.plotAutoSize(t,t.layout,e),e.width!==n||e.height!==r}function K(t,n,r,i){t=o.getGraphDiv(t),w.clearPromiseQueue(t),o.isPlainObject(n)||(n={}),o.isPlainObject(r)||(r={}),Object.keys(n).length&&(t.changed=!0),Object.keys(r).length&&(t.changed=!0);var a=w.coerceTraceIndices(t,i),s=B(t,o.extendFlat({},n),a),l=s.flags,u=$(t,o.extendFlat({},r)),f=u.flags;(l.calc||f.calc)&&(t.calcdata=void 0),l.clearAxisTypes&&w.clearAxisTypes(t,a,r);var d=[];f.layoutReplot?d.push(_.layoutReplot):l.fullReplot?d.push(e._doPlot):(d.push(h.previousPromises),V(t,f,u)||h.supplyDefaults(t),l.style&&d.push(_.doTraceStyle),(l.colorbars||f.colorbars)&&d.push(_.doColorBars),f.legend&&d.push(_.doLegend),f.layoutstyle&&d.push(_.layoutStyles),f.axrange&&q(d,u.rangesAltered),f.ticks&&d.push(_.doTicksRelayout),f.modebar&&d.push(_.doModeBar),f.camera&&d.push(_.doCamera),d.push(S)),d.push(h.rehover,h.redrag,h.reselect),c.add(t,K,[t,s.undoit,u.undoit,s.traces],K,[t,s.redoit,u.redoit,s.traces]);var p=o.syncOrAsync(d,t);return p&&p.then||(p=Promise.resolve(t)),p.then((function(){return t.emit("plotly_update",{data:s.eventData,layout:u.eventData}),t}))}function Z(t){return function(e){e._fullLayout._guiEditing=!0;var n=t.apply(null,arguments);return e._fullLayout._guiEditing=!1,n}}var J=[{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"}],Q=[{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 tt(t,e){for(var n=0;n1;)if(r.pop(),void 0!==(n=s(e,r.join(".")+".uirevision").get()))return n;return e.uirevision}function nt(t,e){for(var n=0;n=i.length?i[0]:i[t]:i}function l(t){return Array.isArray(a)?t>=a.length?a[0]:a[t]:a}function c(t,e){var n=0;return function(){if(t&&++n===e)return t()}}return void 0===r._frameWaitingCnt&&(r._frameWaitingCnt=0),new Promise((function(a,u){function f(){r._currentFrame&&r._currentFrame.onComplete&&r._currentFrame.onComplete();var e=r._currentFrame=r._frameQueue.shift();if(e){var n=e.name?e.name.toString():null;t._fullLayout._currentFrame=n,r._lastFrameAt=Date.now(),r._timeToNext=e.frameOpts.duration,h.transition(t,e.frame.data,e.frame.layout,w.coerceTraceIndices(t,e.frame.traces),e.frameOpts,e.transitionOpts).then((function(){e.onComplete&&e.onComplete()})),t.emit("plotly_animatingframe",{name:n,frame:e.frame,animation:{frame:e.frameOpts,transition:e.transitionOpts}})}else t.emit("plotly_animated"),window.cancelAnimationFrame(r._animationRaf),r._animationRaf=null}function d(){t.emit("plotly_animating"),r._lastFrameAt=-1/0,r._timeToNext=0,r._runningTransitions=0,r._currentFrame=null,function t(){r._animationRaf=window.requestAnimationFrame(t),Date.now()-r._lastFrameAt>r._timeToNext&&f()}()}var p,g,v=0;function m(t){return Array.isArray(i)?v>=i.length?t.transitionOpts=i[v]:t.transitionOpts=i[0]:t.transitionOpts=i,v++,t}var y=[],b=void 0===e||null===e,x=Array.isArray(e);if(b||x||!o.isPlainObject(e)){if(b||-1!==["string","number"].indexOf(typeof e))for(p=0;p0&&TT)&&M.push(g);y=M}}y.length>0?function(e){if(0!==e.length){for(var i=0;i=0;r--)if(o.isPlainObject(e[r])){var g=e[r].name,v=(u[g]||p[g]||{}).name,m=e[r].name,y=u[v]||p[v];v&&m&&"number"===typeof m&&y&&Me.index?-1:t.index=0;r--){if("number"===typeof(i=d[r].frame).name&&o.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!i.name)for(;u[i.name="frame "+t._transitionData._counter++];);if(u[i.name]){for(a=0;a=0;n--)r=e[n],a.push({type:"delete",index:r}),s.unshift({type:"insert",index:r,value:i[r]});var l=h.modifyFrames,u=h.modifyFrames,f=[t,s],d=[t,a];return c&&c.add(t,l,f,u,d),h.modifyFrames(t,a)},e.addTraces=function t(n,r,i){n=o.getGraphDiv(n);var a,s,l=[],u=e.deleteTraces,f=t,h=[n,l],d=[n,r];for(function(t,e,n){var r,i;if(!Array.isArray(t.data))throw new Error("gd.data must be an array.");if("undefined"===typeof e)throw new Error("traces must be defined.");for(Array.isArray(e)||(e=[e]),r=0;r=0&&n=0&&n=a.length)return!1;if(2===t.dimensions){if(n++,e.length===n)return t;var o=e[n];if(!w(o))return!1;t=a[i][o]}else t=a[i]}else t=a}}return t}function w(t){return t===Math.round(t)&&t>=0}function _(){var t,e,n={};for(t in f(n,o),r.subplotsRegistry)if((e=r.subplotsRegistry[t]).layoutAttributes)if(Array.isArray(e.attr))for(var i=0;i=l.length)return!1;i=(n=(r.transformsRegistry[l[c].type]||{}).attributes)&&n[e[2]],s=3}else{var u=t._module;if(u||(u=(r.modules[t.type||a.type.dflt]||{})._module),!u)return!1;if(!(i=(n=u.attributes)&&n[o])){var f=u.basePlotModule;f&&f.attributes&&(i=f.attributes[o])}i||(i=a[o])}return x(i,e,s)},e.getLayoutValObject=function(t,e){var n=function(t,e){var n,i,a,s,l=t._basePlotModules;if(l){var c;for(n=0;n=i&&(n._input||{})._templateitemname;s&&(o=i);var l,c=e+"["+o+"]";function u(){l={},s&&(l[c]={},l[c][a]=s)}function f(t,e){s?r.nestedProperty(l[c],t).set(e):l[c+"."+t]=e}function h(){var t=l;return u(),t}return u(),{modifyBase:function(t,e){l[t]=e},modifyItem:f,getUpdateObj:h,applyUpdate:function(e,n){e&&f(e,n);var i=h();for(var a in i)r.nestedProperty(t,a).set(i[a])}}}},61549:function(t,e,n){"use strict";var r=n(39898),i=n(73972),a=n(74875),o=n(71828),s=n(63893),l=n(33306),c=n(7901),u=n(91424),f=n(92998),h=n(64168),d=n(89298),p=n(18783),g=n(99082),v=g.enforce,m=g.clean,y=n(71739).doAutoRange,b="start",x="middle",w="end";function _(t,e,n){for(var r=0;r=t[1]||i[1]<=t[0])&&a[0]e[0])return!0}return!1}function k(t){var n,i,s,l,f,g,v=t._fullLayout,m=v._size,y=m.p,b=d.list(t,"",!0);if(v._paperdiv.style({width:t._context.responsive&&v.autosize&&!t._context._hasZeroWidth&&!t.layout.width?"100%":v.width+"px",height:t._context.responsive&&v.autosize&&!t._context._hasZeroHeight&&!t.layout.height?"100%":v.height+"px"}).selectAll(".main-svg").call(u.setSize,v.width,v.height),t._context.setBackground(t,v.paper_bgcolor),e.drawMainTitle(t),h.manage(t),!v._has("cartesian"))return a.previousPromises(t);function x(t,e,n){var r=t._lw/2;return"x"===t._id.charAt(0)?e?"top"===n?e._offset-y-r:e._offset+e._length+y+r:m.t+m.h*(1-(t.position||0))+r%1:e?"right"===n?e._offset+e._length+y+r:e._offset-y-r:m.l+m.w*(t.position||0)+r%1}for(n=0;n.5?"t":"b",o=t._fullLayout.margin[a],s=0;return"paper"===e.yref?s=n+e.pad.t+e.pad.b:"container"===e.yref&&(s=function(t,e,n,r,i){var a=0;return"middle"===n&&(a+=i/2),"t"===t?("top"===n&&(a+=i),a+=r-e*r):("bottom"===n&&(a+=i),a+=e*r),a}(a,r,i,t._fullLayout.height,n)+e.pad.t+e.pad.b),s>o?s:0}(t,n,v);m>0&&(function(t,e,n,r){var i="title.automargin",s=t._fullLayout.title,l=s.y>.5?"t":"b",c={x:s.x,y:s.y,t:0,b:0},u={};"paper"===s.yref&&function(t,e,n,r,i){var a="paper"===e.yref?t._fullLayout._size.h:t._fullLayout.height,s=o.isTopAnchor(e)?r:r-i,l="b"===n?a-s:s;return!(o.isTopAnchor(e)&&"t"===n||o.isBottomAnchor(e)&&"b"===n)&&lk?u.push({code:"unused",traceType:y,templateCount:_,dataCount:k}):k>_&&u.push({code:"reused",traceType:y,templateCount:_,dataCount:k})}}else u.push({code:"data"});if(function t(e,n){for(var r in e)if("_"!==r.charAt(0)){var a=e[r],o=g(e,r,n);i(a)?(Array.isArray(e)&&!1===a._template&&a.templateitemname&&u.push({code:"missing",path:o,templateitemname:a.templateitemname}),t(a,o)):Array.isArray(a)&&v(a)&&t(a,o)}}({data:d,layout:h},""),u.length)return u.map(m)}},403:function(t,e,n){"use strict";var r=n(92770),i=n(72391),a=n(74875),o=n(71828),s=n(25095),l=n(5900),c=n(70942),u=n(11506).version,f={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}};t.exports=function(t,e){var n,h,d,p;function g(t){return!(t in e)||o.validate(e[t],f[t])}if(e=e||{},o.isPlainObject(t)?(n=t.data||[],h=t.layout||{},d=t.config||{},p={}):(t=o.getGraphDiv(t),n=o.extendDeep([],t.data),h=o.extendDeep({},t.layout),d=t._context,p=t._fullLayout||{}),!g("width")&&null!==e.width||!g("height")&&null!==e.height)throw new Error("Height and width should be pixel values.");if(!g("format"))throw new Error("Export format is not "+o.join2(f.format.values,", "," or ")+".");var v={};function m(t,n){return o.coerce(e,v,f,t,n)}var y=m("format"),b=m("width"),x=m("height"),w=m("scale"),_=m("setBackground"),k=m("imageDataOnly"),T=document.createElement("div");T.style.position="absolute",T.style.left="-5000px",document.body.appendChild(T);var M=o.extendFlat({},h);b?M.width=b:null===e.width&&r(p.width)&&(M.width=p.width),x?M.height=x:null===e.height&&r(p.height)&&(M.height=p.height);var A=o.extendFlat({},d,{_exportedPlot:!0,staticPlot:!0,setBackground:_}),S=s.getRedrawFunc(T);function E(){return new Promise((function(t){setTimeout(t,s.getDelay(T._fullLayout))}))}function C(){return new Promise((function(t,e){var n=l(T,y,w),r=T._fullLayout.width,f=T._fullLayout.height;function h(){i.purge(T),document.body.removeChild(T)}if("full-json"===y){var d=a.graphJson(T,!1,"keepdata","object",!0,!0);return d.version=u,d=JSON.stringify(d),h(),t(k?d:s.encodeJSON(d))}if(h(),"svg"===y)return t(k?n:s.encodeSVG(n));var p=document.createElement("canvas");p.id=o.randstr(),c({format:y,width:r,height:f,scale:w,canvas:p,svg:n,promise:!0}).then(t).catch(e)}))}return new Promise((function(t,e){i.newPlot(T,n,M,A).then(S).then(E).then(C).then((function(e){t(function(t){return k?t.replace(s.IMAGE_URL_PREFIX,""):t}(e))})).catch((function(t){e(t)}))}))}},84936:function(t,e,n){"use strict";var r=n(71828),i=n(74875),a=n(86281),o=n(72075).dfltConfig,s=r.isPlainObject,l=Array.isArray,c=r.isArrayOrTypedArray;function u(t,e,n,i,a,o){o=o||[];for(var f=Object.keys(t),h=0;hb.length&&i.push(d("unused",a,m.concat(b.length)));var M,A,S,E,C,P=b.length,L=Array.isArray(T);if(L&&(P=Math.min(P,T.length)),2===x.dimensions)for(A=0;Ab[A].length&&i.push(d("unused",a,m.concat(A,b[A].length)));var O=b[A].length;for(M=0;M<(L?Math.min(O,T[A].length):O);M++)S=L?T[A][M]:T,E=y[A][M],C=b[A][M],r.validate(E,S)?C!==E&&C!==+E&&i.push(d("dynamic",a,m.concat(A,M),E,C)):i.push(d("value",a,m.concat(A,M),E))}else i.push(d("array",a,m.concat(A),y[A]));else for(A=0;A1&&h.push(d("object","layout"))),i.supplyDefaults(p);for(var g=p._fullData,v=n.length,m=0;m0&&Math.round(f)===f))return{vals:i};c=f}for(var h=e.calendar,d="start"===l,p="end"===l,g=t[n+"period0"],v=a(g,h)||0,m=[],y=[],b=[],x=i.length,w=0;wM;)T=o(T,-c,h);for(;T<=M;)T=o(T,c,h);k=o(T,-c,h)}else{for(T=v+(_=Math.round((M-v)/u))*u;T>M;)T-=u;for(;T<=M;)T+=u;k=T-u}m[w]=d?k:p?T:(k+T)/2,y[w]=k,b[w]=T}return{vals:m,starts:y,ends:b}}},89502:function(t){"use strict";t.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}},71739:function(t,e,n){"use strict";var r=n(39898),i=n(92770),a=n(71828),o=n(50606).FP_SAFE,s=n(73972),l=n(91424),c=n(41675),u=c.getFromId,f=c.isLinked;function h(t,e){var n,r,i=[],o=t._fullLayout,s=p(o,e,0),l=p(o,e,1),c=v(t,e),u=c.min,f=c.max;if(0===u.length||0===f.length)return a.simpleMap(e.range,e.r2l);var h=u[0].val,g=f[0].val;for(n=1;n0&&((k=E-s(b)-l(x))>C?T/k>P&&(w=b,_=x,P=T/k):T/E>P&&(w={val:b.val,nopad:1},_={val:x.val,nopad:1},P=T/E));if(h===g){var L=h-1,O=h+1;if(A)if(0===h)i=[0,1];else{var I=(h>0?f:u).reduce((function(t,e){return Math.max(t,l(e))}),0),D=h/(1-Math.min(.5,I/E));i=h>0?[0,D]:[D,0]}else i=S?[Math.max(0,L),Math.max(1,O)]:[L,O]}else A?(w.val>=0&&(w={val:0,nopad:1}),_.val<=0&&(_={val:0,nopad:1})):S&&(w.val-P*s(w)<0&&(w={val:0,nopad:1}),_.val<=0&&(_={val:1,nopad:1})),P=(_.val-w.val-d(e,b.val,x.val))/(E-s(w)-l(_)),i=[w.val-P*s(w),_.val+P*l(_)];return m&&i.reverse(),a.simpleMap(i,e.l2r||Number)}function d(t,e,n){var r=0;if(t.rangebreaks)for(var i=t.locateBreaks(e,n),a=0;a0?n.ppadplus:n.ppadminus)||n.ppad||0),S=M((t._m>0?n.ppadminus:n.ppadplus)||n.ppad||0),E=M(n.vpadplus||n.vpad),C=M(n.vpadminus||n.vpad);if(!k){if(h=1/0,d=-1/0,_)for(r=0;r0&&(h=a),a>d&&a-o&&(h=a),a>d&&a=O;r--)L(r);return{min:p,max:g,opts:n}},concatExtremes:v};var g=3;function v(t,e,n){var r,i,a,o=e._id,s=t._fullData,l=t._fullLayout,c=[],f=[];function h(t,e){for(r=0;r=n&&(c.extrapad||!o)){s=!1;break}i(e,c.val)&&c.pad<=n&&(o||!c.extrapad)&&(t.splice(l,1),l--)}if(s){var u=a&&0===e;t.push({val:e,pad:u?0:n,extrapad:!u&&o})}}function x(t){return i(t)&&Math.abs(t)=e}},89298:function(t,e,n){"use strict";var r=n(39898),i=n(92770),a=n(74875),o=n(73972),s=n(71828),l=s.strTranslate,c=n(63893),u=n(92998),f=n(7901),h=n(91424),d=n(13838),p=n(66287),g=n(50606),v=g.ONEMAXYEAR,m=g.ONEAVGYEAR,y=g.ONEMINYEAR,b=g.ONEMAXQUARTER,x=g.ONEAVGQUARTER,w=g.ONEMINQUARTER,_=g.ONEMAXMONTH,k=g.ONEAVGMONTH,T=g.ONEMINMONTH,M=g.ONEWEEK,A=g.ONEDAY,S=A/2,E=g.ONEHOUR,C=g.ONEMIN,P=g.ONESEC,L=g.MINUS_SIGN,O=g.BADNUM,I={K:"zeroline"},D={K:"gridline",L:"path"},R={K:"minor-gridline",L:"path"},z={K:"tick",L:"path"},N={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"]},F=n(18783),B=F.MID_SHIFT,U=F.CAP_SHIFT,H=F.LINE_SPACING,V=F.OPPOSITE_SIDE,q=3,G=t.exports={};G.setConvert=n(21994);var W=n(4322),Y=n(41675),$=Y.idSort,X=Y.isLinked;G.id2name=Y.id2name,G.name2id=Y.name2id,G.cleanId=Y.cleanId,G.list=Y.list,G.listIds=Y.listIds,G.getFromId=Y.getFromId,G.getFromTrace=Y.getFromTrace;var K=n(71739);G.getAutoRange=K.getAutoRange,G.findExtremes=K.findExtremes;var Z=1e-4;function J(t){var e=(t[1]-t[0])*Z;return[t[0]-e,t[1]+e]}G.coerceRef=function(t,e,n,r,i,a){var o=r.charAt(r.length-1),l=n._fullLayout._subplots[o+"axis"],c=r+"ref",u={};return i||(i=l[0]||("string"===typeof a?a:a[0])),a||(a=i),l=l.concat(l.map((function(t){return t+" domain"}))),u[c]={valType:"enumerated",values:l.concat(a?"string"===typeof a?[a]:a:[]),dflt:i},s.coerce(t,e,u,c)},G.getRefType=function(t){return void 0===t?t:"paper"===t?"paper":"pixel"===t?"pixel":/( domain)$/.test(t)?"domain":"range"},G.coercePosition=function(t,e,n,r,i,a){var o,l;if("range"!==G.getRefType(r))o=s.ensureNumber,l=n(i,a);else{var c=G.getFromId(e,r);l=n(i,a=c.fraction2r(a)),o=c.cleanPos}t[i]=o(l)},G.cleanPosition=function(t,e,n){return("paper"===n||"pixel"===n?s.ensureNumber:G.getFromId(e,n).cleanPos)(t)},G.redrawComponents=function(t,e){e=e||G.listIds(t);var n=t._fullLayout;function r(r,i,a,s){for(var l=o.getComponentMethod(r,i),c={},u=0;un&&f2e-6||((n-t._forceTick0)/t._minDtick%1+1.000001)%1>2e-6)&&(t._minDtick=0)):t._minDtick=0},G.saveRangeInitial=function(t,e){for(var n=G.list(t,"",!0),r=!1,i=0;i.3*h||u(r)||u(a))){var d=n.dtick/2;t+=t+do){var l=Number(n.substr(1));a.exactYears>o&&l%12===0?t=G.tickIncrement(t,"M6","reverse")+1.5*A:a.exactMonths>o?t=G.tickIncrement(t,"M1","reverse")+15.5*A:t-=S;var c=G.tickIncrement(t,n);if(c<=r)return c}return t}(y,t,m,c,a)),v=y;v<=u;)v=G.tickIncrement(v,m,!1,a);return{start:e.c2r(y,0,a),end:e.c2r(v,0,a),size:m,_dataSpan:u-c}},G.prepMinorTicks=function(t,e,n){if(!e.minor.dtick){delete t.dtick;var r,a=e.dtick&&i(e._tmin);if(a){var o=G.tickIncrement(e._tmin,e.dtick,!0);r=[e._tmin,.99*o+.01*e._tmin]}else{var l=s.simpleMap(e.range,e.r2l);r=[l[0],.8*l[0]+.2*l[1]]}if(t.range=s.simpleMap(r,e.l2r),t._isMinor=!0,G.prepTicks(t,n),a){var c=i(e.dtick),u=i(t.dtick),f=c?e.dtick:+e.dtick.substring(1),h=u?t.dtick:+t.dtick.substring(1);c&&u?nt(f,h)?f===2*M&&h===2*A&&(t.dtick=M):f===2*M&&h===3*A?t.dtick=M:f!==M||(e._input.minor||{}).nticks?rt(f/h,2.5)?t.dtick=f/2:t.dtick=f:t.dtick=A:"M"===String(e.dtick).charAt(0)?u?t.dtick="M1":nt(f,h)?f>=12&&2===h&&(t.dtick="M3"):t.dtick=e.dtick:"L"===String(t.dtick).charAt(0)?"L"===String(e.dtick).charAt(0)?nt(f,h)||(t.dtick=rt(f/h,2.5)?e.dtick/2:e.dtick):t.dtick="D1":"D2"===t.dtick&&+e.dtick>1&&(t.dtick=1)}t.range=e.range}void 0===e.minor._tick0Init&&(t.tick0=e.tick0)},G.prepTicks=function(t,e){var n=s.simpleMap(t.range,t.r2l,void 0,void 0,e);if("auto"===t.tickmode||!t.dtick){var r,a=t.nticks;a||("category"===t.type||"multicategory"===t.type?(r=t.tickfont?s.bigFont(t.tickfont.size||12):15,a=t._length/r):(r="y"===t._id.charAt(0)?40:80,a=s.constrain(t._length/r,4,9)+1),"radialaxis"===t._name&&(a*=2)),t.minor&&"array"!==t.minor.tickmode||"array"===t.tickmode&&(a*=100),t._roughDTick=Math.abs(n[1]-n[0])/a,G.autoTicks(t,t._roughDTick),t._minDtick>0&&t.dtick<2*t._minDtick&&(t.dtick=t._minDtick,t.tick0=t.l2r(t._forceTick0))}"period"===t.ticklabelmode&&function(t){var e;function n(){return!(i(t.dtick)||"M"!==t.dtick.charAt(0))}var r=n(),a=G.getTickFormat(t);if(a){var o=t._dtickInit!==t.dtick;/%[fLQsSMX]/.test(a)||(/%[HI]/.test(a)?(e=E,o&&!r&&t.dtick=(I?0:1);D--){var R=!D;D?(t._dtickInit=t.dtick,t._tick0Init=t.tick0):(t.minor._dtickInit=t.minor.dtick,t.minor._tick0Init=t.minor.tick0);var z=D?t:s.extendFlat({},t,t.minor);if(R?G.prepMinorTicks(z,t,e):G.prepTicks(z,e),"array"!==z.tickmode)if("sync"!==z.tickmode){var N=J(u),j=N[0],F=N[1],B=i(z.dtick),U="log"===a&&!(B||"L"===z.dtick.charAt(0)),H=G.tickFirst(z,e);if(D){if(t._tmin=H,H=F:Y<=F;Y=G.tickIncrement(Y,$,f,o)){if(D&&V++,z.rangebreaks&&!f){if(Y=d)break}if(P.length>p||Y===W)break;W=Y;var X={value:Y};D?(U&&Y!==(0|Y)&&(X.simpleLabel=!0),l>1&&V%l&&(X.skipLabel=!0),P.push(X)):(X.minor=!0,L.push(X))}}else P=[],g=ot(t);else D?(P=[],g=st(t)):(L=[],C=st(t))}if(I&&!("inside"===t.minor.ticks&&"outside"===t.ticks||"outside"===t.minor.ticks&&"inside"===t.ticks)){for(var K=P.map((function(t){return t.value})),Z=[],Q=0;Q0?(a=r-1,o=r):(a=r,o=r);var s,l=t[a].value,c=t[o].value,u=Math.abs(c-l),f=n||u,h=0;f>=y?h=u>=y&&u<=v?u:m:n===x&&f>=w?h=u>=w&&u<=b?u:x:f>=T?h=u>=T&&u<=_?u:k:n===M&&f>=M?h=M:f>=A?h=A:n===S&&f>=S?h=S:n===E&&f>=E&&(h=E),h>=u&&(h=u,s=!0);var d=i+h;if(e.rangebreaks&&h>0){for(var p=0,g=0;g<84;g++){var C=(g+.5)/84;e.maskBreaks(i*(1-C)+C*d)!==O&&p++}(h*=p/84)||(t[r].drop=!0),s&&u>M&&(h=u)}(h>0||0===r)&&(t[r].periodX=i+h/2)}}(P,t,t._definedDelta),t.rangebreaks){var it="y"===t._id.charAt(0),at=1;"auto"===t.tickmode&&(at=t.tickfont?t.tickfont.size:12);var lt=NaN;for(n=P.length-1;n>-1;n--)if(P[n].drop)P.splice(n,1);else{P[n].value=zt(P[n].value,t);var ct=t.c2p(P[n].value);(it?lt>ct-at:ltd||ftd&&(ut.periodX=d),ft10||"01-01"!==r.substr(5)?t._tickround="d":t._tickround=+e.substr(1)%12===0?"y":"m";else if(e>=A&&a<=10||e>=15*A)t._tickround="d";else if(e>=C&&a<=16||e>=E)t._tickround="M";else if(e>=P&&a<=19||e>=C)t._tickround="S";else{var o=t.l2r(n+e).replace(/^-/,"").length;t._tickround=Math.max(a,o)-20,t._tickround<0&&(t._tickround=4)}}else if(i(e)||"L"===e.charAt(0)){var s=t.range.map(t.r2d||Number);i(e)||(e=Number(e.substr(1))),t._tickround=2-Math.floor(Math.log(e)/Math.LN10+.01);var l=Math.max(Math.abs(s[0]),Math.abs(s[1])),c=Math.floor(Math.log(l)/Math.LN10+.01),u=void 0===t.minexponent?3:t.minexponent;Math.abs(c)>u&&(bt(t.exponentformat)&&!xt(c)?t._tickexponent=3*Math.round((c-1)/3):t._tickexponent=c)}else t._tickround=null}function mt(t,e,n){var r=t.tickfont||{};return{x:e,dx:0,dy:0,text:n||"",fontSize:r.size,font:r.family,fontColor:r.color}}G.autoTicks=function(t,e,n){var r;function a(t){return Math.pow(t,Math.floor(Math.log(e)/Math.LN10))}if("date"===t.type){t.tick0=s.dateTick0(t.calendar,0);var o=2*e;if(o>m)e/=m,r=a(10),t.dtick="M"+12*gt(e,r,lt);else if(o>k)e/=k,t.dtick="M"+gt(e,1,ct);else if(o>A){if(t.dtick=gt(e,A,t._hasDayOfWeekBreaks?[1,2,7,14]:ft),!n){var l=G.getTickFormat(t),c="period"===t.ticklabelmode;c&&(t._rawTick0=t.tick0),/%[uVW]/.test(l)?t.tick0=s.dateTick0(t.calendar,2):t.tick0=s.dateTick0(t.calendar,1),c&&(t._dowTick0=t.tick0)}}else o>E?t.dtick=gt(e,E,ct):o>C?t.dtick=gt(e,C,ut):o>P?t.dtick=gt(e,P,ut):(r=a(10),t.dtick=gt(e,r,lt))}else if("log"===t.type){t.tick0=0;var u=s.simpleMap(t.range,t.r2l);if(t._isMinor&&(e*=1.5),e>.7)t.dtick=Math.ceil(e);else if(Math.abs(u[1]-u[0])<1){var f=1.5*Math.abs((u[1]-u[0])/e);e=Math.abs(Math.pow(10,u[1])-Math.pow(10,u[0]))/f,r=a(10),t.dtick="L"+gt(e,r,lt)}else t.dtick=e>.3?"D2":"D1"}else"category"===t.type||"multicategory"===t.type?(t.tick0=0,t.dtick=Math.ceil(Math.max(e,1))):Rt(t)?(t.tick0=0,r=1,t.dtick=gt(e,r,pt)):(t.tick0=0,r=a(10),t.dtick=gt(e,r,lt));if(0===t.dtick&&(t.dtick=1),!i(t.dtick)&&"string"!==typeof t.dtick){var h=t.dtick;throw t.dtick=1,"ax.dtick error: "+String(h)}},G.tickIncrement=function(t,e,n,a){var o=n?-1:1;if(i(e))return s.increment(t,o*e);var l=e.charAt(0),c=o*Number(e.substr(1));if("M"===l)return s.incrementMonth(t,c,a);if("L"===l)return Math.log(Math.pow(10,t)+c)/Math.LN10;if("D"===l){var u="D2"===e?dt:ht,f=t+.01*o,h=s.roundUp(s.mod(f,1),u,n);return Math.floor(f)+Math.log(r.round(Math.pow(10,h),1))/Math.LN10}throw"unrecognized dtick "+String(e)},G.tickFirst=function(t,e){var n=t.r2l||Number,a=s.simpleMap(t.range,n,void 0,void 0,e),o=a[1] ")}else t._prevDateHead=l,c+="
"+l;e.text=c}(t,o,n,c):"log"===u?function(t,e,n,r,a){var o=t.dtick,l=e.x,c=t.tickformat,u="string"===typeof o&&o.charAt(0);if("never"===a&&(a=""),r&&"L"!==u&&(o="L3",u="L"),c||"L"===u)e.text=wt(Math.pow(10,l),t,a,r);else if(i(o)||"D"===u&&s.mod(l+.01,1)<.1){var f=Math.round(l),h=Math.abs(f),d=t.exponentformat;"power"===d||bt(d)&&xt(f)?(e.text=0===f?1:1===f?"10":"10"+(f>1?"":L)+h+"",e.fontSize*=1.25):("e"===d||"E"===d)&&h>2?e.text="1"+d+(f>0?"+":L)+h:(e.text=wt(Math.pow(10,l),t,"","fakehover"),"D1"===o&&"y"===t._id.charAt(0)&&(e.dy-=e.fontSize/6))}else{if("D"!==u)throw"unrecognized dtick "+String(o);e.text=String(Math.round(Math.pow(10,s.mod(l,1)))),e.fontSize*=.75}if("D1"===t.dtick){var p=String(e.text).charAt(0);"0"!==p&&"1"!==p||("y"===t._id.charAt(0)?e.dx-=e.fontSize/4:(e.dy+=e.fontSize/2,e.dx+=(t.range[1]>t.range[0]?1:-1)*e.fontSize*(l<0?.5:.25)))}}(t,o,0,c,g):"category"===u?function(t,e){var n=t._categories[Math.round(e.x)];void 0===n&&(n=""),e.text=String(n)}(t,o):"multicategory"===u?function(t,e,n){var r=Math.round(e.x),i=t._categories[r]||[],a=void 0===i[1]?"":String(i[1]),o=void 0===i[0]?"":String(i[0]);n?e.text=o+" - "+a:(e.text=a,e.text2=o)}(t,o,n):Rt(t)?function(t,e,n,r,i){if("radians"!==t.thetaunit||n)e.text=wt(e.x,t,i,r);else{var a=e.x/180;if(0===a)e.text="0";else{var o=function(t){function e(t,e){return Math.abs(t-e)<=1e-6}function n(t,r){return e(r,0)?t:n(r,t%r)}function r(t){for(var n=1;!e(Math.round(t*n)/n,t);)n*=10;return n}var i=r(t),a=t*i,o=Math.abs(n(a,i));return[Math.round(a/o),Math.round(i/o)]}(a);if(o[1]>=100)e.text=wt(s.deg2rad(e.x),t,i,r);else{var l=e.x<0;1===o[1]?1===o[0]?e.text="\u03c0":e.text=o[0]+"\u03c0":e.text=["",o[0],"","\u2044","",o[1],"","\u03c0"].join(""),l&&(e.text=L+e.text)}}}}(t,o,n,c,g):function(t,e,n,r,i){"never"===i?i="":"all"===t.showexponent&&Math.abs(e.x/t.dtick)<1e-6&&(i="hide"),e.text=wt(e.x,t,i,r)}(t,o,0,c,g),r||(t.tickprefix&&!p(t.showtickprefix)&&(o.text=t.tickprefix+o.text),t.ticksuffix&&!p(t.showticksuffix)&&(o.text+=t.ticksuffix)),t.labelalias&&t.labelalias.hasOwnProperty(o.text)){var v=t.labelalias[o.text];"string"===typeof v&&(o.text=v)}if("boundaries"===t.tickson||t.showdividers){var m=function(e){var n=t.l2p(e);return n>=0&&n<=t._length?e:null};o.xbnd=[m(o.x-.5),m(o.x+t.dtick-.5)]}return o},G.hoverLabelText=function(t,e,n){n&&(t=s.extendFlat({},t,{hoverformat:n}));var r=Array.isArray(e)?e[0]:e,i=Array.isArray(e)?e[1]:void 0;if(void 0!==i&&i!==r)return G.hoverLabelText(t,r,n)+" - "+G.hoverLabelText(t,i,n);var a="log"===t.type&&r<=0,o=G.tickText(t,t.c2l(a?-r:r),"hover").text;return a?0===r?"0":L+o:o};var yt=["f","p","n","\u03bc","m","","k","M","G","T"];function bt(t){return"SI"===t||"B"===t}function xt(t){return t>14||t<-15}function wt(t,e,n,r){var a=t<0,o=e._tickround,l=n||e.exponentformat||"B",c=e._tickexponent,u=G.getTickFormat(e),f=e.separatethousands;if(r){var h={exponentformat:l,minexponent:e.minexponent,dtick:"none"===e.showexponent?e.dtick:i(t)&&Math.abs(t)||1,range:"none"===e.showexponent?e.range.map(e.r2d):[0,t||1]};vt(h),o=(Number(h._tickround)||0)+4,c=h._tickexponent,e.hoverformat&&(u=e.hoverformat)}if(u)return e._numFormat(u)(t).replace(/-/g,L);var d,p=Math.pow(10,-o)/2;if("none"===l&&(c=0),(t=Math.abs(t))"+d+"":"B"===l&&9===c?t+="B":bt(l)&&(t+=yt[c/3+5])),a?L+t:t}function _t(t,e){if(t){var n=Object.keys(j).reduce((function(t,n){return-1!==e.indexOf(n)&&j[n].forEach((function(e){t[e]=1})),t}),{});Object.keys(t).forEach((function(e){n[e]||(1===e.length?t[e]=0:delete t[e])}))}}function kt(t,e){for(var n=[],r={},i=0;i1&&n=i.min&&t=r(t))}function s(t,e){var n=null===e[0],r=null===e[1],i=a(t,e[0])>=0,o=a(t,e[1])<=0;return(n||i)&&(r||o)}if(t.tickformatstops&&t.tickformatstops.length>0)switch(t.type){case"date":case"linear":for(e=0;e=0&&i.unshift(i.splice(r,1).shift())}}));var o={false:{left:0,right:0}};return s.syncOrAsync(i.map((function(e){return function(){if(e){var r=G.getFromId(t,e);n||(n={}),n.axShifts=o,n.overlayingShiftedAx=a;var i=G.drawOne(t,r,n);return r._shiftPusher&&Ft(r,r._fullDepth||0,o,!0),r._r=r.range.slice(),r._rl=s.simpleMap(r._r,r.r2l),i}}})))},G.drawOne=function(t,e,n){var r,i,l,c=(n=n||{}).axShifts||{},d=n.overlayingShiftedAx||[];e.setScale();var p=t._fullLayout,g=e._id,v=g.charAt(0),m=G.counterLetter(g),y=p._plots[e._mainSubplot];if(y){if(e._shiftPusher=e.autoshift||-1!==d.indexOf(e._id)||-1!==d.indexOf(e.overlaying),e._shiftPusher&"free"===e.anchor){var b=e.linewidth/2||0;"inside"===e.ticks&&(b+=e.ticklen),Ft(e,b,c,!0),Ft(e,e.shift||0,c,!1)}!0===n.skipTitle&&void 0!==e._shift||(e._shift=function(t,e){return t.autoshift?e[t.overlaying][t.side]:t.shift||0}(e,c));var x=y[v+"axislayer"],w=e._mainLinePosition,_=w+=e._shift,k=e._mainMirrorPosition,T=e._vals=G.calcTicks(e),M=[e.mirror,_,k].join("_");for(r=0;r0?n.bottom-u:0,f))));var h=0,d=0;if(e._shiftPusher&&(h=Math.max(f,n.height>0?"l"===l?u-n.left:n.right-u:0),e.title.text!==p._dfltTitle[v]&&(d=(e._titleStandoff||0)+(e._titleScoot||0),"l"===l&&(d+=At(e))),e._fullDepth=Math.max(h,d)),e.automargin){r={x:0,y:0,r:0,l:0,t:0,b:0};var g=[0,1],y="number"===typeof e._shift?e._shift:0;if("x"===v){if("b"===l?r[l]=e._depth:(r[l]=e._depth=Math.max(n.width>0?u-n.top:0,f),g.reverse()),n.width>0){var b=n.right-(e._offset+e._length);b>0&&(r.xr=1,r.r=b);var x=e._offset-n.left;x>0&&(r.xl=0,r.l=x)}}else if("l"===l?(e._depth=Math.max(n.height>0?u-n.left:0,f),r[l]=e._depth-y):(e._depth=Math.max(n.height>0?n.right-u:0,f),r[l]=e._depth+y,g.reverse()),n.height>0){var w=n.bottom-(e._offset+e._length);w>0&&(r.yb=0,r.b=w);var _=e._offset-n.top;_>0&&(r.yt=1,r.t=_)}r[m]="free"===e.anchor?e.position:e._anchorAxis.domain[g[0]],e.title.text!==p._dfltTitle[v]&&(r[l]+=At(e)+(e.title.standoff||0)),e.mirror&&"free"!==e.anchor&&((i={x:0,y:0,r:0,l:0,t:0,b:0})[c]=e.linewidth,e.mirror&&!0!==e.mirror&&(i[c]+=f),!0===e.mirror||"ticks"===e.mirror?i[m]=e._anchorAxis.domain[g[1]]:"all"!==e.mirror&&"allticks"!==e.mirror||(i[m]=[e._counterDomainMin,e._counterDomainMax][g[1]]))}lt&&(s=o.getComponentMethod("rangeslider","autoMarginOpts")(t,e)),"string"===typeof e.automargin&&(_t(r,e.automargin),_t(i,e.automargin)),a.autoMargin(t,Ct(e),r),a.autoMargin(t,Pt(e),i),a.autoMargin(t,Lt(e),s)})),s.syncOrAsync(ot)}}function ct(t){var n=g+(t||"tick");return A[n]||(A[n]=function(t,e){var n,r,i,a;return t._selections[e].size()?(n=1/0,r=-1/0,i=1/0,a=-1/0,t._selections[e].each((function(){var t=Et(this),e=h.bBox(t.node().parentNode);n=Math.min(n,e.top),r=Math.max(r,e.bottom),i=Math.min(i,e.left),a=Math.max(a,e.right)}))):(n=0,r=0,i=0,a=0),{top:n,bottom:r,left:i,right:a,height:r-n,width:a-i}}(e,n)),A[n]}},G.getTickSigns=function(t,e){var n=t._id.charAt(0),r={x:"top",y:"right"}[n],i=t.side===r?1:-1,a=[-1,1,i,-i];return"inside"!==(e?(t.minor||{}).ticks:t.ticks)===("x"===n)&&(a=a.map((function(t){return-t}))),t.side&&a.push({l:-1,t:-1,r:1,b:1}[t.side.charAt(0)]),a},G.makeTransTickFn=function(t){return"x"===t._id.charAt(0)?function(e){return l(t._offset+t.l2p(e.x),0)}:function(e){return l(0,t._offset+t.l2p(e.x))}},G.makeTransTickLabelFn=function(t){var e=function(t){var e=t.ticklabelposition||"",n=function(t){return-1!==e.indexOf(t)},r=n("top"),i=n("left"),a=n("right"),o=n("bottom"),s=n("inside"),l=o||i||r||a;if(!l&&!s)return[0,0];var c=t.side,u=l?(t.tickwidth||0)/2:0,f=q,h=t.tickfont?t.tickfont.size:12;return(o||r)&&(u+=h*U,f+=(t.linewidth||0)/2),(i||a)&&(u+=(t.linewidth||0)/2,f+=q),s&&"top"===c&&(f-=h*(1-U)),(i||r)&&(u=-u),"bottom"!==c&&"right"!==c||(f=-f),[l?u:0,s?f:0]}(t),n=e[0],r=e[1];return"x"===t._id.charAt(0)?function(e){return l(n+t._offset+t.l2p(Tt(e)),r)}:function(e){return l(r,n+t._offset+t.l2p(Tt(e)))}},G.makeTickPath=function(t,e,n,r){r||(r={});var i=r.minor;if(i&&!t.minor)return"";var a=void 0!==r.len?r.len:i?t.minor.ticklen:t.ticklen,o=t._id.charAt(0),s=(t.linewidth||1)/2;return"x"===o?"M0,"+(e+s*n)+"v"+a*n:"M"+(e+s*n)+",0h"+a*n},G.makeLabelFns=function(t,e,n){var r=t.ticklabelposition||"",a=function(t){return-1!==r.indexOf(t)},o=a("top"),l=a("left"),c=a("right"),u=a("bottom")||l||o||c,f=a("inside"),h="inside"===r&&"inside"===t.ticks||!f&&"outside"===t.ticks&&"boundaries"!==t.tickson,d=0,p=0,g=h?t.ticklen:0;if(f?g*=-1:u&&(g=0),h&&(d+=g,n)){var v=s.deg2rad(n);d=g*Math.cos(v)+1,p=g*Math.sin(v)}t.showticklabels&&(h||t.showline)&&(d+=.2*t.tickfont.size);var m,y,b,x,w,_={labelStandoff:d+=(t.linewidth||1)/2*(f?-1:1),labelShift:p},k=0,T=t.side,M=t._id.charAt(0),A=t.tickangle;if("x"===M)x=(w=!f&&"bottom"===T||f&&"top"===T)?1:-1,f&&(x*=-1),m=p*x,y=e+d*x,b=w?1:-.2,90===Math.abs(A)&&(f?b+=B:b=-90===A&&"bottom"===T?U:90===A&&"top"===T?B:.5,k=B/2*(A/90)),_.xFn=function(t){return t.dx+m+k*t.fontSize},_.yFn=function(t){return t.dy+y+t.fontSize*b},_.anchorFn=function(t,e){if(u){if(l)return"end";if(c)return"start"}return i(e)&&0!==e&&180!==e?e*x<0!==f?"end":"start":"middle"},_.heightFn=function(e,n,r){return n<-60||n>60?-.5*r:"top"===t.side!==f?-r:0};else if("y"===M){if(x=(w=!f&&"left"===T||f&&"right"===T)?1:-1,f&&(x*=-1),m=d,y=p*x,b=0,f||90!==Math.abs(A)||(b=-90===A&&"left"===T||90===A&&"right"===T?U:.5),f){var S=i(A)?+A:0;if(0!==S){var E=s.deg2rad(S);k=Math.abs(Math.sin(E))*U*x,b=0}}_.xFn=function(t){return t.dx+e-(m+t.fontSize*b)*x+k*t.fontSize},_.yFn=function(t){return t.dy+y+t.fontSize*B},_.anchorFn=function(t,e){return i(e)&&90===Math.abs(e)?"middle":w?"end":"start"},_.heightFn=function(e,n,r){return"right"===t.side&&(n*=-1),n<-30?-r:n<30?-.5*r:0}}return _},G.drawTicks=function(t,e,n){n=n||{};var i=e._id+"tick",a=[].concat(e.minor&&e.minor.ticks?n.vals.filter((function(t){return t.minor&&!t.noTick})):[]).concat(e.ticks?n.vals.filter((function(t){return!t.minor&&!t.noTick})):[]),o=n.layer.selectAll("path."+i).data(a,Mt);o.exit().remove(),o.enter().append("path").classed(i,1).classed("ticks",1).classed("crisp",!1!==n.crisp).each((function(t){return f.stroke(r.select(this),t.minor?e.minor.tickcolor:e.tickcolor)})).style("stroke-width",(function(n){return h.crispRound(t,n.minor?e.minor.tickwidth:e.tickwidth,1)+"px"})).attr("d",n.path).style("display",null),jt(e,[z]),o.attr("transform",n.transFn)},G.drawGrid=function(t,e,n){if(n=n||{},"sync"!==e.tickmode){var i=e._id+"grid",a=e.minor&&e.minor.showgrid,o=a?n.vals.filter((function(t){return t.minor})):[],s=e.showgrid?n.vals.filter((function(t){return!t.minor})):[],l=n.counterAxis;if(l&&G.shouldShowZeroLine(t,e,l))for(var c="array"===e.tickmode,u=0;u=0;m--){var y=m?g:v;if(y){var b=y.selectAll("path."+i).data(m?s:o,Mt);b.exit().remove(),b.enter().append("path").classed(i,1).classed("crisp",!1!==n.crisp),b.attr("transform",n.transFn).attr("d",n.path).each((function(t){return f.stroke(r.select(this),t.minor?e.minor.gridcolor:e.gridcolor||"#ddd")})).style("stroke-dasharray",(function(t){return h.dashStyle(t.minor?e.minor.griddash:e.griddash,t.minor?e.minor.gridwidth:e.gridwidth)})).style("stroke-width",(function(t){return(t.minor?p:e._gw)+"px"})).style("display",null),"function"===typeof n.path&&b.attr("d",n.path)}}jt(e,[D,R])}},G.drawZeroLine=function(t,e,n){n=n||n;var r=e._id+"zl",i=G.shouldShowZeroLine(t,e,n.counterAxis),a=n.layer.selectAll("path."+r).data(i?[{x:0,id:e._id}]:[]);a.exit().remove(),a.enter().append("path").classed(r,1).classed("zl",1).classed("crisp",!1!==n.crisp).each((function(){n.layer.selectAll("path").sort((function(t,e){return $(t.id,e.id)}))})),a.attr("transform",n.transFn).attr("d",n.path).call(f.stroke,e.zerolinecolor||f.defaultLine).style("stroke-width",h.crispRound(t,e.zerolinewidth,e._gw||1)+"px").style("display",null),jt(e,[I])},G.drawLabels=function(t,e,n){n=n||{};var a=t._fullLayout,o=e._id,u=o.charAt(0),f=n.cls||o+"tick",d=n.vals.filter((function(t){return t.text})),p=n.labelFns,g=n.secondary?0:e.tickangle,v=(e._prevTickAngles||{})[f],m=n.layer.selectAll("g."+f).data(e.showticklabels?d:[],Mt),y=[];function b(t,a){t.each((function(t){var o=r.select(this),s=o.select(".text-math-group"),u=p.anchorFn(t,a),f=n.transFn.call(o.node(),t)+(i(a)&&0!==+a?" rotate("+a+","+p.xFn(t)+","+(p.yFn(t)-t.fontSize/2)+")":""),d=c.lineCount(o),g=H*t.fontSize,v=p.heightFn(t,i(a)?+a:0,(d-1)*g);if(v&&(f+=l(0,v)),s.empty()){var m=o.select("text");m.attr({transform:f,"text-anchor":u}),m.style("opacity",1),e._adjustTickLabelsOverflow&&e._adjustTickLabelsOverflow()}else{var y=h.bBox(s.node()).width*{end:-.5,start:.5}[u];s.attr("transform",f+l(y,0))}}))}m.enter().append("g").classed(f,1).append("text").attr("text-anchor","middle").each((function(e){var n=r.select(this),i=t._promises.length;n.call(c.positionText,p.xFn(e),p.yFn(e)).call(h.font,e.font,e.fontSize,e.fontColor).text(e.text).call(c.convertToTspans,t),t._promises[i]?y.push(t._promises.pop().then((function(){b(n,g)}))):b(n,g)})),jt(e,[N]),m.exit().remove(),n.repositionOnUpdate&&m.each((function(t){r.select(this).select("text").call(c.positionText,p.xFn(t),p.yFn(t))})),e._adjustTickLabelsOverflow=function(){var n=e.ticklabeloverflow;if(n&&"allow"!==n){var i=-1!==n.indexOf("hide"),o="x"===e._id.charAt(0),l=0,c=o?t._fullLayout.width:t._fullLayout.height;if(-1!==n.indexOf("domain")){var u=s.simpleMap(e.range,e.r2l);l=e.l2p(u[0])+e._offset,c=e.l2p(u[1])+e._offset}var f=Math.min(l,c),d=Math.max(l,c),p=e.side,g=1/0,v=-1/0;for(var y in m.each((function(t){var n=r.select(this);if(n.select(".text-math-group").empty()){var a=h.bBox(n.node()),s=0;o?(a.right>d||a.leftd||a.top+(e.tickangle?0:t.fontSize/4)e["_visibleLabelMin_"+n._id]?l.style("display","none"):"tick"!==t.K||i||l.style("display",null)}))}))}))}))},b(m,v+1?v:g);var x=null;e._selections&&(e._selections[f]=m);var w=[function(){return y.length&&Promise.all(y)}];e.automargin&&a._redrawFromAutoMarginCount&&90===v?(x=90,w.push((function(){b(m,v)}))):w.push((function(){if(b(m,g),d.length&&"x"===u&&!i(g)&&("log"!==e.type||"D"!==String(e.dtick).charAt(0))){x=0;var t,r=0,a=[];if(m.each((function(t){r=Math.max(r,t.fontSize);var n=e.l2p(t.x),i=Et(this),o=h.bBox(i.node());a.push({top:0,bottom:10,height:10,left:n-o.width/2,right:n+o.width/2+2,width:o.width+2})})),"boundaries"!==e.tickson&&!e.showdividers||n.secondary){var o=d.length,l=Math.abs((d[o-1].x-d[0].x)*e._m)/(o-1),c=e.ticklabelposition||"",f=function(t){return-1!==c.indexOf(t)},p=f("top"),v=f("left"),y=f("right"),w=f("bottom")||v||p||y?(e.tickwidth||0)+2*q:0,_=l<2.5*r||"multicategory"===e.type||"realaxis"===e._name;for(t=0;t1)for(r=1;r2*o}(i,e))return"date";var v="strict"!==n.autotypenumbers;return function(t,e){for(var n=t.length,r=f(n),i=0,o=0,s={},u=0;u2*i}(i,v)?"category":function(t,e){for(var n=t.length,r=0;r=2){var s,c,u="";if(2===o.length)for(s=0;s<2;s++)if(c=x(o[s])){u=v;break}var f=i("pattern",u);if(f===v)for(s=0;s<2;s++)(c=x(o[s]))&&(e.bounds[s]=o[s]=c-1);if(f)for(s=0;s<2;s++)switch(c=o[s],f){case v:if(!r(c))return void(e.enabled=!1);if((c=+c)!==Math.floor(c)||c<0||c>=7)return void(e.enabled=!1);e.bounds[s]=o[s]=c;break;case m:if(!r(c))return void(e.enabled=!1);if((c=+c)<0||c>24)return void(e.enabled=!1);e.bounds[s]=o[s]=c}if(!1===n.autorange){var h=n.range;if(h[0]h[1])return void(e.enabled=!1)}else if(o[0]>h[0]&&o[1]r?1:-1:+(t.substr(1)||1)-+(e.substr(1)||1)},e.ref2id=function(t){return!!/^[xyz]/.test(t)&&t.split(" ")[0]},e.isLinked=function(t,e){return a(e,t._axisMatchGroups)||a(e,t._axisConstraintGroups)}},15258:function(t){"use strict";t.exports=function(t,e,n,r){if("category"===e.type){var i,a=t.categoryarray,o=Array.isArray(a)&&a.length>0;o&&(i="array");var s,l=n("categoryorder",i);"array"===l&&(s=n("categoryarray")),o||"array"!==l||(l=e.categoryorder="trace"),"trace"===l?e._initialCategories=[]:"array"===l?e._initialCategories=s.slice():(s=function(t,e){var n,r,i,a=e.dataAttr||t._id.charAt(0),o={};if(e.axData)n=e.axData;else for(n=[],r=0;rr?i.substr(r):a.substr(n))+o:i+a+t*e:o}function v(t,e){for(var n=e._size,r=n.h/n.w,i={},a=Object.keys(t),o=0;oc*b)||k)for(n=0;nI&&NL&&(L=N);h/=(L-P)/(2*O),P=l.l2r(P),L=l.l2r(L),l.range=l._input.range=S=0?Math.min(t,.9):1/(1/Math.max(t,-.3)+3.222))}function F(t,e,n,r,i){return t.append("path").attr("class","zoombox").style({fill:e>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",c(n,r)).attr("d",i+"Z")}function B(t,e,n){return t.append("path").attr("class","zoombox-corners").style({fill:f.background,stroke:f.defaultLine,"stroke-width":1,opacity:0}).attr("transform",c(e,n)).attr("d","M0,0Z")}function U(t,e,n,r,i,a){t.attr("d",r+"M"+n.l+","+n.t+"v"+n.h+"h"+n.w+"v-"+n.h+"h-"+n.w+"Z"),H(t,e,i,a)}function H(t,e,n,r){n||(t.transition().style("fill",r>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),e.transition().style("opacity",1).duration(200))}function V(t){r.select(t).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function q(t){O&&t.data&&t._context.showTips&&(i.notifier(i._(t,"Double-click to zoom back out"),"long"),O=!1)}function G(t){var e=Math.floor(Math.min(t.b-t.t,t.r-t.l,L)/2);return"M"+(t.l-3.5)+","+(t.t-.5+e)+"h3v"+-e+"h"+e+"v-3h-"+(e+3)+"ZM"+(t.r+3.5)+","+(t.t-.5+e)+"h-3v"+-e+"h"+-e+"v-3h"+(e+3)+"ZM"+(t.r+3.5)+","+(t.b+.5-e)+"h-3v"+e+"h"+-e+"v3h"+(e+3)+"ZM"+(t.l-3.5)+","+(t.b+.5-e)+"h3v"+e+"h"+e+"v3h-"+(e+3)+"Z"}function W(t,e,n,r,a){for(var o,s,l,c,u=!1,f={},h={},d=(a||{}).xaHash,p=(a||{}).yaHash,g=0;g=0)i._fullLayout._deactivateShape(i);else{var o=i._fullLayout.clickmode;if(V(i),2!==t||mt||qt(),vt)o.indexOf("select")>-1&&S(n,i,K,Z,e.id,Lt),o.indexOf("event")>-1&&d.click(i,n,e.id);else if(1===t&&mt){var s=g?I:O,c="s"===g||"w"===m?0:1,f=s._name+".range["+c+"]",h=function(t,e){var n,r=t.range[e],i=Math.abs(r-t.range[1-e]);return"date"===t.type?r:"log"===t.type?(n=Math.ceil(Math.max(0,-Math.log(i)/Math.LN10))+3,a("."+n+"g")(Math.pow(10,r))):(n=Math.floor(Math.log(Math.abs(r))/Math.LN10)-Math.floor(Math.log(i)/Math.LN10)+4,a("."+String(n)+"g")(r))}(s,c),p="left",v="middle";if(s.fixedrange)return;g?(v="n"===g?"top":"bottom","right"===s.side&&(p="right")):"e"===m&&(p="right"),i._context.showAxisRangeEntryBoxes&&r.select(xt).call(u.makeEditable,{gd:i,immediate:!0,background:i._fullLayout.paper_bgcolor,text:String(h),fill:s.tickfont?s.tickfont.color:"#444",horizontalAlign:p,verticalAlign:v}).on("edit",(function(t){var e=s.d2r(t);void 0!==e&&l.call("_guiRelayout",i,f,e)}))}}}function Dt(e,n){if(t._transitioningWithDuration)return!1;var r=Math.max(0,Math.min(tt,dt*e+wt)),i=Math.max(0,Math.min(et,pt*n+_t)),a=Math.abs(r-wt),o=Math.abs(i-_t);function s(){St="",kt.r=kt.l,kt.t=kt.b,Ct.attr("d","M0,0Z")}if(kt.l=Math.min(wt,r),kt.r=Math.max(wt,r),kt.t=Math.min(_t,i),kt.b=Math.max(_t,i),nt.isSubplotConstrained)a>L||o>L?(St="xy",a/tt>o/et?(o=a*et/tt,_t>i?kt.t=_t-o:kt.b=_t+o):(a=o*tt/et,wt>r?kt.l=wt-a:kt.r=wt+a),Ct.attr("d",G(kt))):s();else if(rt.isSubplotConstrained)if(a>L||o>L){St="xy";var l=Math.min(kt.l/tt,(et-kt.b)/et),c=Math.max(kt.r/tt,(et-kt.t)/et);kt.l=l*tt,kt.r=c*tt,kt.b=(1-l)*et,kt.t=(1-c)*et,Ct.attr("d",G(kt))}else s();else!at||o0){var u;if(rt.isSubplotConstrained||!it&&1===at.length){for(u=0;ux[1]-1/4096&&(e.domain=s),i.noneOrAll(t.domain,e.domain,s),"sync"===e.tickmode&&(e.tickmode="auto")}return n("layer"),e}},89426:function(t,e,n){"use strict";var r=n(59652);t.exports=function(t,e,n,i,a){a||(a={});var o=a.tickSuffixDflt,s=r(t);n("tickprefix")&&n("showtickprefix",s),n("ticksuffix",o)&&n("showticksuffix",s)}},42449:function(t,e,n){"use strict";var r=n(18783).FROM_BL;t.exports=function(t,e,n){void 0===n&&(n=r[t.constraintoward||"center"]);var i=[t.r2l(t.range[0]),t.r2l(t.range[1])],a=i[0]+(i[1]-i[0])*n;t.range=t._input.range=[t.l2r(a+(i[0]-a)*e),t.l2r(a+(i[1]-a)*e)],t.setScale()}},21994:function(t,e,n){"use strict";var r=n(39898),i=n(84096).g0,a=n(71828),o=a.numberFormat,s=n(92770),l=a.cleanNumber,c=a.ms2DateTime,u=a.dateTime2ms,f=a.ensureNumber,h=a.isArrayOrTypedArray,d=n(50606),p=d.FP_SAFE,g=d.BADNUM,v=d.LOG_CLIP,m=d.ONEWEEK,y=d.ONEDAY,b=d.ONEHOUR,x=d.ONEMIN,w=d.ONESEC,_=n(41675),k=n(85555),T=k.HOUR_PATTERN,M=k.WEEKDAY_PATTERN;function A(t){return Math.pow(10,t)}function S(t){return null!==t&&void 0!==t}t.exports=function(t,e){e=e||{};var n=t._id||"x",d=n.charAt(0);function E(e,n){if(e>0)return Math.log(e)/Math.LN10;if(e<=0&&n&&t.range&&2===t.range.length){var r=t.range[0],i=t.range[1];return.5*(r+i-2*v*Math.abs(r-i))}return g}function C(e,n,r,i){if((i||{}).msUTC&&s(e))return+e;var o=u(e,r||t.calendar);if(o===g){if(!s(e))return g;e=+e;var l=Math.floor(10*a.mod(e+.05,1)),c=Math.round(e-l/10);o=u(new Date(c))+l/10}return o}function P(e,n,r){return c(e,n,r||t.calendar)}function L(e){return t._categories[Math.round(e)]}function O(e){if(S(e)){if(void 0===t._categoriesMap&&(t._categoriesMap={}),void 0!==t._categoriesMap[e])return t._categoriesMap[e];t._categories.push("number"===typeof e?String(e):e);var n=t._categories.length-1;return t._categoriesMap[e]=n,n}return g}function I(e){if(t._categoriesMap)return t._categoriesMap[e]}function D(t){var e=I(t);return void 0!==e?e:s(t)?+t:void 0}function R(t){return s(t)?+t:I(t)}function z(t,e,n){return r.round(n+e*t,2)}function N(t,e,n){return(t-n)/e}var j=function(e){return s(e)?z(e,t._m,t._b):g},F=function(e){return N(e,t._m,t._b)};if(t.rangebreaks){var B="y"===d;j=function(e){if(!s(e))return g;var n=t._rangebreaks.length;if(!n)return z(e,t._m,t._b);var r=B;t.range[0]>t.range[1]&&(r=!r);for(var i=r?-1:1,a=i*e,o=0,l=0;lu)){o=a<(c+u)/2?l:l+1;break}o=l+1}var f=t._B[o]||0;return isFinite(f)?z(e,t._m2,f):0},F=function(e){var n=t._rangebreaks.length;if(!n)return N(e,t._m,t._b);for(var r=0,i=0;it._rangebreaks[i].pmax&&(r=i+1);return N(e,t._m2,t._B[r])}}t.c2l="log"===t.type?E:f,t.l2c="log"===t.type?A:f,t.l2p=j,t.p2l=F,t.c2p="log"===t.type?function(t,e){return j(E(t,e))}:j,t.p2c="log"===t.type?function(t){return A(F(t))}:F,-1!==["linear","-"].indexOf(t.type)?(t.d2r=t.r2d=t.d2c=t.r2c=t.d2l=t.r2l=l,t.c2d=t.c2r=t.l2d=t.l2r=f,t.d2p=t.r2p=function(e){return t.l2p(l(e))},t.p2d=t.p2r=F,t.cleanPos=f):"log"===t.type?(t.d2r=t.d2l=function(t,e){return E(l(t),e)},t.r2d=t.r2c=function(t){return A(l(t))},t.d2c=t.r2l=l,t.c2d=t.l2r=f,t.c2r=E,t.l2d=A,t.d2p=function(e,n){return t.l2p(t.d2r(e,n))},t.p2d=function(t){return A(F(t))},t.r2p=function(e){return t.l2p(l(e))},t.p2r=F,t.cleanPos=f):"date"===t.type?(t.d2r=t.r2d=a.identity,t.d2c=t.r2c=t.d2l=t.r2l=C,t.c2d=t.c2r=t.l2d=t.l2r=P,t.d2p=t.r2p=function(e,n,r){return t.l2p(C(e,0,r))},t.p2d=t.p2r=function(t,e,n){return P(F(t),e,n)},t.cleanPos=function(e){return a.cleanDate(e,g,t.calendar)}):"category"===t.type?(t.d2c=t.d2l=O,t.r2d=t.c2d=t.l2d=L,t.d2r=t.d2l_noadd=D,t.r2c=function(e){var n=R(e);return void 0!==n?n:t.fraction2r(.5)},t.l2r=t.c2r=f,t.r2l=R,t.d2p=function(e){return t.l2p(t.r2c(e))},t.p2d=function(t){return L(F(t))},t.r2p=t.d2p,t.p2r=F,t.cleanPos=function(t){return"string"===typeof t&&""!==t?t:f(t)}):"multicategory"===t.type&&(t.r2d=t.c2d=t.l2d=L,t.d2r=t.d2l_noadd=D,t.r2c=function(e){var n=D(e);return void 0!==n?n:t.fraction2r(.5)},t.r2c_just_indices=I,t.l2r=t.c2r=f,t.r2l=D,t.d2p=function(e){return t.l2p(t.r2c(e))},t.p2d=function(t){return L(F(t))},t.r2p=t.d2p,t.p2r=F,t.cleanPos=function(t){return Array.isArray(t)||"string"===typeof t&&""!==t?t:f(t)},t.setupMultiCategory=function(r){var i,o,s=t._traceIndices,l=t._matchGroup;if(l&&0===t._categories.length)for(var c in l)if(c!==n){var u=e[_.id2name(c)];s=s.concat(u._traceIndices)}var f=[[0,{}],[0,{}]],p=[];for(i=0;ip&&(o[r]=p),o[0]===o[1]){var c=Math.max(1,Math.abs(1e-6*o[0]));o[0]-=c,o[1]+=c}}else a.nestedProperty(t,e).set(i)},t.setScale=function(n){var r=e._size;if(t.overlaying){var i=_.getFromId({_fullLayout:e},t.overlaying);t.domain=i.domain}var a=n&&t._r?"_r":"range",o=t.calendar;t.cleanRange(a);var s,l,c=t.r2l(t[a][0],o),u=t.r2l(t[a][1],o),f="y"===d;if(f?(t._offset=r.t+(1-t.domain[1])*r.h,t._length=r.h*(t.domain[1]-t.domain[0]),t._m=t._length/(c-u),t._b=-t._m*u):(t._offset=r.l+t.domain[0]*r.w,t._length=r.w*(t.domain[1]-t.domain[0]),t._m=t._length/(u-c),t._b=-t._m*c),t._rangebreaks=[],t._lBreaks=0,t._m2=0,t._B=[],t.rangebreaks&&(t._rangebreaks=t.locateBreaks(Math.min(c,u),Math.max(c,u)),t._rangebreaks.length)){for(s=0;su&&(h=!h),h&&t._rangebreaks.reverse();var p=h?-1:1;for(t._m2=p*t._length/(Math.abs(u-c)-t._lBreaks),t._B.push(-t._m2*(f?u:c)),s=0;si&&(i+=7,oi&&(i+=24,o=r&&o=r&&e=s.min&&(ts.max&&(s.max=r),i=!1)}i&&c.push({min:t,max:r})}};for(r=0;rn.duration?(function(){for(var n={},r=0;r rect").call(o.setTranslate,0,0).call(o.setScale,1,1),t.plot.call(o.setTranslate,e._offset,n._offset).call(o.setScale,1,1);var r=t.plot.selectAll(".scatterlayer .trace");r.selectAll(".point").call(o.setPointGroupScale,1,1),r.selectAll(".textpoint").call(o.setTextPointsScale,1,1),r.call(o.hideOutsideRangePoints,t)}function v(e,n){var r=e.plotinfo,i=r.xaxis,l=r.yaxis,c=i._length,u=l._length,f=!!e.xr1,h=!!e.yr1,d=[];if(f){var p=a.simpleMap(e.xr0,i.r2l),g=a.simpleMap(e.xr1,i.r2l),v=p[1]-p[0],m=g[1]-g[0];d[0]=(p[0]*(1-n)+n*g[0]-p[0])/(p[1]-p[0])*c,d[2]=c*(1-n+n*m/v),i.range[0]=i.l2r(p[0]*(1-n)+n*g[0]),i.range[1]=i.l2r(p[1]*(1-n)+n*g[1])}else d[0]=0,d[2]=c;if(h){var y=a.simpleMap(e.yr0,l.r2l),b=a.simpleMap(e.yr1,l.r2l),x=y[1]-y[0],w=b[1]-b[0];d[1]=(y[1]*(1-n)+n*b[1]-y[1])/(y[0]-y[1])*u,d[3]=u*(1-n+n*w/x),l.range[0]=i.l2r(y[0]*(1-n)+n*b[0]),l.range[1]=l.l2r(y[1]*(1-n)+n*b[1])}else d[1]=0,d[3]=u;s.drawOne(t,i,{skipTitle:!0}),s.drawOne(t,l,{skipTitle:!0}),s.redrawComponents(t,[i._id,l._id]);var _=f?c/d[2]:1,k=h?u/d[3]:1,T=f?d[0]:0,M=h?d[1]:0,A=f?d[0]/d[2]*c:0,S=h?d[1]/d[3]*u:0,E=i._offset-A,C=l._offset-S;r.clipRect.call(o.setTranslate,T,M).call(o.setScale,1/_,1/k),r.plot.call(o.setTranslate,E,C).call(o.setScale,_,k),o.setPointGroupScale(r.zoomScalePts,1/_,1/k),o.setTextPointsScale(r.zoomScaleTxt,1/_,1/k)}s.redrawComponents(t)}},951:function(t,e,n){"use strict";var r=n(73972).traceIs,i=n(4322);function a(t){return{v:"x",h:"y"}[t.orientation||"v"]}function o(t,e){var n=a(t),i=r(t,"box-violin"),o=r(t._fullInput||{},"candlestick");return i&&!o&&e===n&&void 0===t[n]&&void 0===t[n+"0"]}t.exports=function(t,e,n,s){n("autotypenumbers",s.autotypenumbersDflt),"-"===n("type",(s.splomStash||{}).type)&&(function(t,e){if("-"===t.type){var n,s=t._id,l=s.charAt(0);-1!==s.indexOf("scene")&&(s=l);var c=function(t,e,n){for(var r=0;r0&&(i["_"+n+"axes"]||{})[e])return i;if((i[n+"axis"]||n)===e){if(o(i,n))return i;if((i[n]||[]).length||i[n+"0"])return i}}}(e,s,l);if(c)if("histogram"!==c.type||l!=={v:"y",h:"x"}[c.orientation||"v"]){var u=l+"calendar",f=c[u],h={noMultiCategory:!r(c,"cartesian")||r(c,"noMultiCategory")};if("box"===c.type&&c._hasPreCompStats&&l==={h:"x",v:"y"}[c.orientation||"v"]&&(h.noMultiCategory=!0),h.autotypenumbers=t.autotypenumbers,o(c,l)){var d=a(c),p=[];for(n=0;n0?".":"")+a;i.isPlainObject(o)?l(o,e,s,r+1):e(s,a,o)}}))}e.manageCommandObserver=function(t,n,r,o){var s={},l=!0;n&&n._commandObserver&&(s=n._commandObserver),s.cache||(s.cache={}),s.lookupTable={};var c=e.hasSimpleAPICommandBindings(t,r,s.lookupTable);if(n&&n._commandObserver){if(c)return s;if(n._commandObserver.remove)return n._commandObserver.remove(),n._commandObserver=null,s}if(c){a(t,c,s.cache),s.check=function(){if(l){var e=a(t,c,s.cache);return e.changed&&o&&void 0!==s.lookupTable[e.value]&&(s.disable(),Promise.resolve(o({value:e.value,type:c.type,prop:c.prop,traces:c.traces,index:s.lookupTable[e.value]})).then(s.enable,s.enable)),e.changed}};for(var u=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],f=0;f0&&i<0&&(i+=360);var s=(i-r)/4;return{type:"Polygon",coordinates:[[[r,a],[r,o],[r+s,o],[r+2*s,o],[r+3*s,o],[i,o],[i,a],[i-s,a],[i-2*s,a],[i-3*s,a],[r,a]]]}}t.exports=function(t){return new A(t)},S.plot=function(t,e,n,r){var i=this;if(r)return i.update(t,e,!0);i._geoCalcData=t,i._fullLayout=e;var a=e[this.id],o=[],s=!1;for(var l in _.layerNameToAdjective)if("frame"!==l&&a["show"+l]){s=!0;break}for(var c=!1,u=0;u0&&o._module.calcGeoJSON(a,e)}if(!n){if(this.updateProjection(t,e))return;this.viewInitial&&this.scope===r.scope||this.saveViewInitial(r)}this.scope=r.scope,this.updateBaseLayers(e,r),this.updateDims(e,r),this.updateFx(e,r),p.generalUpdatePerTraceModule(this.graphDiv,this,t,r);var s=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=s.selectAll(".point"),this.dataPoints.text=s.selectAll("text"),this.dataPaths.line=s.selectAll(".js-line");var l=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=l.selectAll("path"),this._render()},S.updateProjection=function(t,e){var n=this.graphDiv,r=e[this.id],l=e._size,u=r.domain,f=r.projection,h=r.lonaxis,d=r.lataxis,p=h._ax,g=d._ax,m=this.projection=function(t){var e=t.projection,n=e.type,r=_.projNames[n];r="geo"+c.titleCase(r);for(var l=(i[r]||s[r])(),u=t._isSatellite?180*Math.acos(1/e.distance)/Math.PI:t._isClipped?_.lonaxisSpan[n]/2:null,f=["center","rotate","parallels","clipExtent"],h=function(t){return t?l:[]},d=0;du*Math.PI/180}return!1},l.getPath=function(){return a().projection(l)},l.getBounds=function(t){return l.getPath().bounds(t)},l.precision(_.precision),t._isSatellite&&l.tilt(e.tilt).distance(e.distance),u&&l.clipAngle(u-_.clipPad),l}(r),y=[[l.l+l.w*u.x[0],l.t+l.h*(1-u.y[1])],[l.l+l.w*u.x[1],l.t+l.h*(1-u.y[0])]],b=r.center||{},x=f.rotation||{},w=h.range||[],k=d.range||[];if(r.fitbounds){p._length=y[1][0]-y[0][0],g._length=y[1][1]-y[0][1],p.range=v(n,p),g.range=v(n,g);var T=(p.range[0]+p.range[1])/2,M=(g.range[0]+g.range[1])/2;if(r._isScoped)b={lon:T,lat:M};else if(r._isClipped){b={lon:T,lat:M},x={lon:T,lat:M,roll:x.roll};var A=f.type,S=_.lonaxisSpan[A]/2||180,C=_.lataxisSpan[A]/2||90;w=[T-S,T+S],k=[M-C,M+C]}else b={lon:T,lat:M},x={lon:T,lat:x.lat,roll:x.roll}}m.center([b.lon-x.lon,b.lat-x.lat]).rotate([-x.lon,-x.lat,x.roll]).parallels(f.parallels);var P=E(w,k);m.fitExtent(y,P);var L=this.bounds=m.getBounds(P),O=this.fitScale=m.scale(),I=m.translate();if(r.fitbounds){var D=m.getBounds(E(p.range,g.range)),R=Math.min((L[1][0]-L[0][0])/(D[1][0]-D[0][0]),(L[1][1]-L[0][1])/(D[1][1]-D[0][1]));isFinite(R)?m.scale(R*O):c.warn("Something went wrong during"+this.id+"fitbounds computations.")}else m.scale(f.scale*O);var z=this.midPt=[(L[0][0]+L[1][0])/2,(L[0][1]+L[1][1])/2];if(m.translate([I[0]+(z[0]-I[0]),I[1]+(z[1]-I[1])]).clipExtent(L),r._isAlbersUsa){var N=m([b.lon,b.lat]),j=m.translate();m.translate([j[0]-(N[0]-j[0]),j[1]-(N[1]-j[1])])}},S.updateBaseLayers=function(t,e){var n=this,i=n.topojson,a=n.layers,o=n.basePaths;function s(t){return"lonaxis"===t||"lataxis"===t}function l(t){return Boolean(_.lineLayers[t])}function c(t){return Boolean(_.fillLayers[t])}var u=(this.hasChoropleth?_.layersForChoropleth:_.layers).filter((function(t){return l(t)||c(t)?e["show"+t]:!s(t)||e[t].showgrid})),d=n.framework.selectAll(".layer").data(u,String);d.exit().each((function(t){delete a[t],delete o[t],r.select(this).remove()})),d.enter().append("g").attr("class",(function(t){return"layer "+t})).each((function(t){var e=a[t]=r.select(this);"bg"===t?n.bgRect=e.append("rect").style("pointer-events","all"):s(t)?o[t]=e.append("path").style("fill","none"):"backplot"===t?e.append("g").classed("choroplethlayer",!0):"frontplot"===t?e.append("g").classed("scatterlayer",!0):l(t)?o[t]=e.append("path").style("fill","none").style("stroke-miterlimit",2):c(t)&&(o[t]=e.append("path").style("stroke","none"))})),d.order(),d.each((function(n){var r=o[n],a=_.layerNameToAdjective[n];"frame"===n?r.datum(_.sphereSVG):l(n)||c(n)?r.datum(M(i,i.objects[n])):s(n)&&r.datum(function(t,e,n){var r,i,a,o=1e-6,s=2.5,l=e[t],c=_.scopeDefaults[e.scope];"lonaxis"===t?(r=c.lonaxisRange,i=c.lataxisRange,a=function(t,e){return[t,e]}):"lataxis"===t&&(r=c.lataxisRange,i=c.lonaxisRange,a=function(t,e){return[e,t]});var u={type:"linear",range:[r[0],r[1]-o],tick0:l.tick0,dtick:l.dtick};g.setConvert(u,n);var f=g.calcTicks(u);e.isScoped||"lonaxis"!==t||f.pop();for(var h=f.length,d=new Array(h),p=0;p-1&&x(r.event,i,[n.xaxis],[n.yaxis],n.id,u),s.indexOf("event")>-1&&d.click(i,r.event))}))}function f(t){return n.projection.invert([t[0]+n.xaxis._offset,t[1]+n.yaxis._offset])}},S.makeFramework=function(){var t=this,e=t.graphDiv,n=e._fullLayout,i="clip"+n._uid+t.id;t.clipDef=n._clips.append("clipPath").attr("id",i),t.clipRect=t.clipDef.append("rect"),t.framework=r.select(t.container).append("g").attr("class","geo "+t.id).call(h.setClipUrl,i,e),t.project=function(e){var n=t.projection(e);return n?[n[0]-t.xaxis._offset,n[1]-t.yaxis._offset]:[null,null]},t.xaxis={_id:"x",c2p:function(e){return t.project(e)[0]}},t.yaxis={_id:"y",c2p:function(e){return t.project(e)[1]}},t.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},g.setConvert(t.mockAxis,n)},S.saveViewInitial=function(t){var e,n=t.center||{},r=t.projection,i=r.rotation||{};this.viewInitial={fitbounds:t.fitbounds,"projection.scale":r.scale},e=t._isScoped?{"center.lon":n.lon,"center.lat":n.lat}:t._isClipped?{"projection.rotation.lon":i.lon,"projection.rotation.lat":i.lat}:{"center.lon":n.lon,"center.lat":n.lat,"projection.rotation.lon":i.lon},c.extendFlat(this.viewInitial,e)},S.render=function(t){this._hasMarkerAngles&&t?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()},S._render=function(){var t,e=this.projection,n=e.getPath();function r(t){var n=e(t.lonlat);return n?u(n[0],n[1]):null}function i(t){return e.isLonLatOverEdges(t.lonlat)?"none":null}for(t in this.basePaths)this.basePaths[t].attr("d",n);for(t in this.dataPaths)this.dataPaths[t].attr("d",(function(t){return n(t.geojson)}));for(t in this.dataPoints)this.dataPoints[t].attr("display",i).attr("transform",r)}},44622:function(t,e,n){"use strict";var r=n(27659).AU,i=n(71828).counterRegex,a=n(69082),o="geo",s=i(o),l={};l[o]={valType:"subplotid",dflt:o,editType:"calc"},t.exports={attr:o,name:o,idRoot:o,idRegex:s,attrRegex:s,attributes:l,layoutAttributes:n(77519),supplyLayoutDefaults:n(82161),plot:function(t){for(var e=t._fullLayout,n=t.calcdata,i=e._subplots[o],s=0;s0&&L<0&&(L+=360);var O,I,D,R=(P+L)/2;if(!d){var z=p?f.projRotate:[R,0,0];O=n("projection.rotation.lon",z[0]),n("projection.rotation.lat",z[1]),n("projection.rotation.roll",z[2]),n("showcoastlines",!p&&b)&&(n("coastlinecolor"),n("coastlinewidth")),n("showocean",!!b&&void 0)&&n("oceancolor")}d?(I=-96.6,D=38.7):(I=p?R:O,D=(C[0]+C[1])/2),n("center.lon",I),n("center.lat",D),g&&(n("projection.tilt"),n("projection.distance")),v&&n("projection.parallels",f.projParallels||[0,60]),n("projection.scale"),n("showland",!!b&&void 0)&&n("landcolor"),n("showlakes",!!b&&void 0)&&n("lakecolor"),n("showrivers",!!b&&void 0)&&(n("rivercolor"),n("riverwidth")),n("showcountries",p&&"usa"!==u&&b)&&(n("countrycolor"),n("countrywidth")),("usa"===u||"north america"===u&&50===c)&&(n("showsubunits",b),n("subunitcolor"),n("subunitwidth")),p||n("showframe",b)&&(n("framecolor"),n("framewidth")),n("bgcolor"),n("fitbounds")&&(delete e.projection.scale,p?(delete e.center.lon,delete e.center.lat):m?(delete e.center.lon,delete e.center.lat,delete e.projection.rotation.lon,delete e.projection.rotation.lat,delete e.lonaxis.range,delete e.lataxis.range):(delete e.center.lon,delete e.center.lat,delete e.projection.rotation.lon))}t.exports=function(t,e,n){i(t,e,n,{type:"geo",attributes:s,handleDefaults:c,fullData:n,partition:"y"})}},74455:function(t,e,n){"use strict";var r=n(39898),i=n(71828),a=n(73972),o=Math.PI/180,s=180/Math.PI,l={cursor:"pointer"},c={cursor:"auto"};function u(t,e){return r.behavior.zoom().translate(e.translate()).scale(e.scale())}function f(t,e,n){var r=t.id,o=t.graphDiv,s=o.layout,l=s[r],c=o._fullLayout,u=c[r],f={},h={};function d(t,e){f[r+"."+t]=i.nestedProperty(l,t).get(),a.call("_storeDirectGUIEdit",s,c._preGUI,f);var n=i.nestedProperty(u,t);n.get()!==e&&(n.set(e),i.nestedProperty(l,t).set(e),h[r+"."+t]=e)}n(d),d("projection.scale",e.scale()/t.fitScale),d("fitbounds",!1),o.emit("plotly_relayout",h)}function h(t,e){var n=u(0,e);function i(n){var r=e.invert(t.midPt);n("center.lon",r[0]),n("center.lat",r[1])}return n.on("zoomstart",(function(){r.select(this).style(l)})).on("zoom",(function(){e.scale(r.event.scale).translate(r.event.translate),t.render(!0);var n=e.invert(t.midPt);t.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":e.scale()/t.fitScale,"geo.center.lon":n[0],"geo.center.lat":n[1]})})).on("zoomend",(function(){r.select(this).style(c),f(t,e,i)})),n}function d(t,e){var n,i,a,o,s,h,d,p,g,v=u(0,e),m=2;function y(t){return e.invert(t)}function b(n){var r=e.rotate(),i=e.invert(t.midPt);n("projection.rotation.lon",-r[0]),n("center.lon",i[0]),n("center.lat",i[1])}return v.on("zoomstart",(function(){r.select(this).style(l),n=r.mouse(this),i=e.rotate(),a=e.translate(),o=i,s=y(n)})).on("zoom",(function(){if(h=r.mouse(this),function(t){var n=y(t);if(!n)return!0;var r=e(n);return Math.abs(r[0]-t[0])>m||Math.abs(r[1]-t[1])>m}(n))return v.scale(e.scale()),void v.translate(e.translate());e.scale(r.event.scale),e.translate([a[0],r.event.translate[1]]),s?y(h)&&(p=y(h),d=[o[0]+(p[0]-s[0]),i[1],i[2]],e.rotate(d),o=d):s=y(n=h),g=!0,t.render(!0);var l=e.rotate(),c=e.invert(t.midPt);t.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":e.scale()/t.fitScale,"geo.center.lon":c[0],"geo.center.lat":c[1],"geo.projection.rotation.lon":-l[0]})})).on("zoomend",(function(){r.select(this).style(c),g&&f(t,e,b)})),v}function p(t,e){var n,i={r:e.rotate(),k:e.scale()},a=u(0,e),h=function(t){for(var e=0,n=arguments.length,i=[];++ep?(a=(f>0?90:-90)-d,i=0):(a=Math.asin(f/p)*s-d,i=Math.sqrt(p*p-f*f));var g=180-a-2*d,m=(Math.atan2(h,u)-Math.atan2(c,i))*s,b=(Math.atan2(h,u)-Math.atan2(c,-i))*s,x=v(n[0],n[1],a,m),w=v(n[0],n[1],g,b);return x<=w?[a,m,n[2]]:[g,b,n[2]]}(l,n,f);isFinite(d[0])&&isFinite(d[1])&&isFinite(d[2])||(d=f),e.rotate(d),f=d}}else n=g(e,c=t);h.of(this,arguments)({type:"zoom"})})),t=h.of(this,arguments),d++||t({type:"zoomstart"})})).on("zoomend",(function(){var n;r.select(this).style(c),p.call(a,"zoom",null),n=h.of(this,arguments),--d||n({type:"zoomend"}),f(t,e,m)})).on("zoom.redraw",(function(){t.render(!0);var n=e.rotate();t.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":e.scale()/t.fitScale,"geo.projection.rotation.lon":-n[0],"geo.projection.rotation.lat":-n[1]})})),r.rebind(a,h,"on")}function g(t,e){var n=t.invert(e);return n&&isFinite(n[0])&&isFinite(n[1])&&function(t){var e=t[0]*o,n=t[1]*o,r=Math.cos(n);return[r*Math.cos(e),r*Math.sin(e),Math.sin(n)]}(n)}function v(t,e,n,r){var i=m(n-t),a=m(r-e);return Math.sqrt(i*i+a*a)}function m(t){return(t%360+540)%360-180}function y(t,e,n){var r=n*o,i=t.slice(),a=0===e?1:0,s=2===e?1:2,l=Math.cos(r),c=Math.sin(r);return i[a]=t[a]*l-t[s]*c,i[s]=t[s]*l+t[a]*c,i}function b(t,e){for(var n=0,r=0,i=t.length;rMath.abs(s)?(c.boxEnd[1]=c.boxStart[1]+Math.abs(a)*w*(s>=0?1:-1),c.boxEnd[1]l[3]&&(c.boxEnd[1]=l[3],c.boxEnd[0]=c.boxStart[0]+(l[3]-c.boxStart[1])/Math.abs(w))):(c.boxEnd[0]=c.boxStart[0]+Math.abs(s)/w*(a>=0?1:-1),c.boxEnd[0]l[2]&&(c.boxEnd[0]=l[2],c.boxEnd[1]=c.boxStart[1]+(l[2]-c.boxStart[0])*Math.abs(w)))}}else c.boxEnabled?(a=c.boxStart[0]!==c.boxEnd[0],s=c.boxStart[1]!==c.boxEnd[1],a||s?(a&&(v(0,c.boxStart[0],c.boxEnd[0]),t.xaxis.autorange=!1),s&&(v(1,c.boxStart[1],c.boxEnd[1]),t.yaxis.autorange=!1),t.relayoutCallback()):t.glplot.setDirty(),c.boxEnabled=!1,c.boxInited=!1):c.boxInited&&(c.boxInited=!1);break;case"pan":c.boxEnabled=!1,c.boxInited=!1,e?(c.panning||(c.dragStart[0]=r,c.dragStart[1]=i),Math.abs(c.dragStart[0]-r).999&&(v="turntable"):v="turntable")}else v="turntable";n("dragmode",v),n("hovermode",r.getDfltFromLayout("hovermode"))}t.exports=function(t,e,n){var i=e._basePlotModules.length>1;o(t,e,n,{type:u,attributes:l,handleDefaults:f,fullLayout:e,font:e.font,fullData:n,getDfltFromLayout:function(e){if(!i)return r.validate(t[e],l[e])?t[e]:void 0},autotypenumbersDflt:e.autotypenumbers,paper_bgcolor:e.paper_bgcolor,calendar:e.calendar})}},65500:function(t,e,n){"use strict";var r=n(77894),i=n(27670).Y,a=n(1426).extendFlat,o=n(71828).counterRegex;function s(t,e,n){return{x:{valType:"number",dflt:t,editType:"camera"},y:{valType:"number",dflt:e,editType:"camera"},z:{valType:"number",dflt:n,editType:"camera"},editType:"camera"}}t.exports={_arrayAttrRegexps:[o("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:a(s(0,0,1),{}),center:a(s(0,0,0),{}),eye:a(s(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:i({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:r,yaxis:r,zaxis:r,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(t,e,n){"use strict";var r=n(78614),i=["xaxis","yaxis","zaxis"];function a(){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]}a.prototype.merge=function(t){for(var e=0;e<3;++e){var n=t[i[e]];n.visible?(this.enabled[e]=n.showspikes,this.colors[e]=r(n.spikecolor),this.drawSides[e]=n.spikesides,this.lineWidth[e]=n.spikethickness):(this.enabled[e]=!1,this.drawSides[e]=!1)}},t.exports=function(t){var e=new a;return e.merge(t),e}},96085:function(t,e,n){"use strict";t.exports=function(t){for(var e=t.axesOptions,n=t.glplot.axesPixels,s=t.fullSceneLayout,l=[[],[],[]],c=0;c<3;++c){var u=s[a[c]];if(u._length=(n[c].hi-n[c].lo)*n[c].pixelsPerDataUnit/t.dataScale[c],Math.abs(u._length)===1/0||isNaN(u._length))l[c]=[];else{u._input_range=u.range.slice(),u.range[0]=n[c].lo/t.dataScale[c],u.range[1]=n[c].hi/t.dataScale[c],u._m=1/(t.dataScale[c]*n[c].pixelsPerDataUnit),u.range[0]===u.range[1]&&(u.range[0]-=1,u.range[1]+=1);var f=u.tickmode;if("auto"===u.tickmode){u.tickmode="linear";var h=u.nticks||i.constrain(u._length/40,4,9);r.autoTicks(u,Math.abs(u.range[1]-u.range[0])/h)}for(var d=r.calcTicks(u,{msUTC:!0}),p=0;p/g," "));l[c]=d,u.tickmode=f}}for(e.ticks=l,c=0;c<3;++c)for(o[c]=.5*(t.glplot.bounds[0][c]+t.glplot.bounds[1][c]),p=0;p<2;++p)e.bounds[p][c]=t.glplot.bounds[p][c];t.contourLevels=function(t){for(var e=new Array(3),n=0;n<3;++n){for(var r=t[n],i=new Array(r.length),a=0;an.deltaY?1.1:1/1.1,a=t.glplot.getAspectratio();t.glplot.setAspectratio({x:r*a.x,y:r*a.y,z:r*a.z})}i(t)}}),!!c&&{passive:!1}),t.glplot.canvas.addEventListener("mousemove",(function(){if(!1!==t.fullSceneLayout.dragmode&&0!==t.camera.mouseListener.buttons){var e=r();t.graphDiv.emit("plotly_relayouting",e)}})),t.staticMode||t.glplot.canvas.addEventListener("webglcontextlost",(function(n){e&&e.emit&&e.emit("plotly_webglcontextlost",{event:n,layer:t.id})}),!1)),t.glplot.oncontextloss=function(){t.recoverContext()},t.glplot.onrender=function(){t.render()},!0},_.render=function(){var t,e=this,n=e.graphDiv,r=e.svgContainer,i=e.container.getBoundingClientRect();n._fullLayout._calcInverseTransform(n);var a=n._fullLayout._invScaleX,o=n._fullLayout._invScaleY,s=i.width*a,l=i.height*o;r.setAttributeNS(null,"viewBox","0 0 "+s+" "+l),r.setAttributeNS(null,"width",s),r.setAttributeNS(null,"height",l),x(e),e.glplot.axes.update(e.axesOptions);for(var c=Object.keys(e.traces),u=null,h=e.glplot.selection,g=0;g")):"isosurface"===t.type||"volume"===t.type?(k.valueLabel=d.hoverLabelText(e._mockAxis,e._mockAxis.d2l(h.traceCoordinate[3]),t.valuehoverformat),S.push("value: "+k.valueLabel),h.textLabel&&S.push(h.textLabel),b=S.join("
")):b=h.textLabel;var E={x:h.traceCoordinate[0],y:h.traceCoordinate[1],z:h.traceCoordinate[2],data:w._input,fullData:w,curveNumber:w.index,pointNumber:_};p.appendArrayPointValue(E,w,_),t._module.eventData&&(E=w._module.eventData(E,h,w,{},_));var C={points:[E]};if(e.fullSceneLayout.hovermode){var P=[];p.loneHover({trace:w,x:(.5+.5*y[0]/y[3])*s,y:(.5-.5*y[1]/y[3])*l,xLabel:k.xLabel,yLabel:k.yLabel,zLabel:k.zLabel,text:b,name:u.name,color:p.castHoverOption(w,_,"bgcolor")||u.color,borderColor:p.castHoverOption(w,_,"bordercolor"),fontFamily:p.castHoverOption(w,_,"font.family"),fontSize:p.castHoverOption(w,_,"font.size"),fontColor:p.castHoverOption(w,_,"font.color"),nameLength:p.castHoverOption(w,_,"namelength"),textAlign:p.castHoverOption(w,_,"align"),hovertemplate:f.castOption(w,_,"hovertemplate"),hovertemplateLabels:f.extendFlat({},E,k),eventData:[E]},{container:r,gd:n,inOut_bbox:P}),E.bbox=P[0]}h.buttons&&h.distance<5?n.emit("plotly_click",C):n.emit("plotly_hover",C),this.oldEventData=C}else p.loneUnhover(r),this.oldEventData&&n.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;e.drawAnnotations(e)},_.recoverContext=function(){var t=this;t.glplot.dispose(),requestAnimationFrame((function e(){t.glplot.gl.isContextLost()?requestAnimationFrame(e):t.initializeGLPlot()?t.plot.apply(t,t.plotArgs):f.error("Catastrophic and unrecoverable WebGL error. Context lost.")}))};var T=["xaxis","yaxis","zaxis"];function M(t,e,n){for(var r=t.fullSceneLayout,i=0;i<3;i++){var a=T[i],o=a.charAt(0),s=r[a],l=e[o],c=e[o+"calendar"],u=e["_"+o+"length"];if(f.isArrayOrTypedArray(l))for(var h,d=0;d<(u||l.length);d++)if(f.isArrayOrTypedArray(l[d]))for(var p=0;pm[1][o])m[0][o]=-1,m[1][o]=1;else{var P=m[1][o]-m[0][o];m[0][o]-=P/32,m[1][o]+=P/32}if("reversed"===l.autorange){var L=m[0][o];m[0][o]=m[1][o],m[1][o]=L}}else{var O=l.range;m[0][o]=l.r2l(O[0]),m[1][o]=l.r2l(O[1])}m[0][o]===m[1][o]&&(m[0][o]-=1,m[1][o]+=1),y[o]=m[1][o]-m[0][o],r.glplot.setBounds(o,{min:m[0][o]*d[o],max:m[1][o]*d[o]})}var I=u.aspectmode;if("cube"===I)v=[1,1,1];else if("manual"===I){var D=u.aspectratio;v=[D.x,D.y,D.z]}else{if("auto"!==I&&"data"!==I)throw new Error("scene.js aspectRatio was not one of the enumerated types");var R=[1,1,1];for(o=0;o<3;++o){var z=b[c=(l=u[T[o]]).type];R[o]=Math.pow(z.acc,1/z.count)/d[o]}v="data"===I||Math.max.apply(null,R)/Math.min.apply(null,R)<=4?R:[1,1,1]}u.aspectratio.x=f.aspectratio.x=v[0],u.aspectratio.y=f.aspectratio.y=v[1],u.aspectratio.z=f.aspectratio.z=v[2],r.glplot.setAspectratio(u.aspectratio),r.viewInitial.aspectratio||(r.viewInitial.aspectratio={x:u.aspectratio.x,y:u.aspectratio.y,z:u.aspectratio.z}),r.viewInitial.aspectmode||(r.viewInitial.aspectmode=u.aspectmode);var N=u.domain||null,j=e._size||null;if(N&&j){var F=r.container.style;F.position="absolute",F.left=j.l+N.x[0]*j.w+"px",F.top=j.t+(1-N.y[1])*j.h+"px",F.width=j.w*(N.x[1]-N.x[0])+"px",F.height=j.h*(N.y[1]-N.y[0])+"px"}r.glplot.redraw()}},_.destroy=function(){var t=this;t.glplot&&(t.camera.mouseListener.enabled=!1,t.container.removeEventListener("wheel",t.camera.wheelListener),t.camera=null,t.glplot.dispose(),t.container.parentNode.removeChild(t.container),t.glplot=null)},_.getCamera=function(){var t,e=this;return e.camera.view.recalcMatrix(e.camera.view.lastT()),{up:{x:(t=e.camera).up[0],y:t.up[1],z:t.up[2]},center:{x:t.center[0],y:t.center[1],z:t.center[2]},eye:{x:t.eye[0],y:t.eye[1],z:t.eye[2]},projection:{type:!0===t._ortho?"orthographic":"perspective"}}},_.setViewport=function(t){var e,n=this,r=t.camera;n.camera.lookAt.apply(this,[[(e=r).eye.x,e.eye.y,e.eye.z],[e.center.x,e.center.y,e.center.z],[e.up.x,e.up.y,e.up.z]]),n.glplot.setAspectratio(t.aspectratio),"orthographic"===r.projection.type!==n.camera._ortho&&(n.glplot.redraw(),n.glplot.clearRGBA(),n.glplot.dispose(),n.initializeGLPlot())},_.isCameraChanged=function(t){var e=this.getCamera(),n=f.nestedProperty(t,this.id+".camera").get();function r(t,e,n,r){var i=["up","center","eye"],a=["x","y","z"];return e[i[n]]&&t[i[n]][a[r]]===e[i[n]][a[r]]}var i=!1;if(void 0===n)i=!0;else{for(var a=0;a<3;a++)for(var o=0;o<3;o++)if(!r(e,n,a,o)){i=!0;break}(!n.projection||e.projection&&e.projection.type!==n.projection.type)&&(i=!0)}return i},_.isAspectChanged=function(t){var e=this.glplot.getAspectratio(),n=f.nestedProperty(t,this.id+".aspectratio").get();return void 0===n||n.x!==e.x||n.y!==e.y||n.z!==e.z},_.saveLayout=function(t){var e,n,r,i,a,o,s=this,l=s.fullLayout,c=s.isCameraChanged(t),h=s.isAspectChanged(t),d=c||h;if(d){var p={};c&&(e=s.getCamera(),r=(n=f.nestedProperty(t,s.id+".camera")).get(),p[s.id+".camera"]=r),h&&(i=s.glplot.getAspectratio(),o=(a=f.nestedProperty(t,s.id+".aspectratio")).get(),p[s.id+".aspectratio"]=o),u.call("_storeDirectGUIEdit",t,l._preGUI,p),c&&(n.set(e),f.nestedProperty(l,s.id+".camera").set(e)),h&&(a.set(i),f.nestedProperty(l,s.id+".aspectratio").set(i),s.glplot.redraw())}return d},_.updateFx=function(t,e){var n=this,r=n.camera;if(r)if("orbit"===t)r.mode="orbit",r.keyBindingMode="rotate";else if("turntable"===t){r.up=[0,0,1],r.mode="turntable",r.keyBindingMode="rotate";var i=n.graphDiv,a=i._fullLayout,o=n.fullSceneLayout.camera,s=o.up.x,l=o.up.y,c=o.up.z;if(c/Math.sqrt(s*s+l*l+c*c)<.999){var h=n.id+".camera.up",d={x:0,y:0,z:1},p={};p[h]=d;var g=i.layout;u.call("_storeDirectGUIEdit",g,a._preGUI,p),o.up=d,f.nestedProperty(g,h).set(d)}}else r.keyBindingMode=t;n.fullSceneLayout.hovermode=e},_.toImage=function(t){var e=this;t||(t="png"),e.staticMode&&e.container.appendChild(r),e.glplot.redraw();var n=e.glplot.gl,i=n.drawingBufferWidth,a=n.drawingBufferHeight;n.bindFramebuffer(n.FRAMEBUFFER,null);var o=new Uint8Array(i*a*4);n.readPixels(0,0,i,a,n.RGBA,n.UNSIGNED_BYTE,o),function(t,e,n){for(var r=0,i=n-1;r0)for(var s=255/o,l=0;l<3;++l)t[a+l]=Math.min(s*t[a+l],255)}}(o,i,a);var s=document.createElement("canvas");s.width=i,s.height=a;var l,c=s.getContext("2d",{willReadFrequently:!0}),u=c.createImageData(i,a);switch(u.data.set(o),c.putImageData(u,0,0),t){case"jpeg":l=s.toDataURL("image/jpeg");break;case"webp":l=s.toDataURL("image/webp");break;default:l=s.toDataURL("image/png")}return e.staticMode&&e.container.removeChild(r),l},_.setConvert=function(){for(var t=0;t<3;t++){var e=this.fullSceneLayout[T[t]];d.setConvert(e,this.fullLayout),e.setScale=f.noop}},_.make4thDimension=function(){var t=this,e=t.graphDiv._fullLayout;t._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},d.setConvert(t._mockAxis,e)},t.exports=w},90060:function(t){"use strict";t.exports=function(t,e,n,r){r=r||t.length;for(var i=new Array(r),a=0;aOpenStreetMap contributors',o=['\xa9 Carto',a].join(" "),s=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under ODbL'].join(" "),l={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:a,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:o,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:o,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:s,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:s,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 Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under CC BY SA'].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}]}},c=r(l);t.exports={requiredVersion:i,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:l,styleValuesNonMapbox:c,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@"+i+"."].join("\n"),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("\n"),missingStyleErrorMsg:["No valid mapbox style found, please set `mapbox.style` to one of:",c.join(", "),"or register a Mapbox access token to use a Mapbox-served style."].join("\n"),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("\n"),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(t,e,n){"use strict";var r=n(71828);t.exports=function(t,e){var n=t.split(" "),i=n[0],a=n[1],o=r.isArrayOrTypedArray(e)?r.mean(e):e,s=.5+o/100,l=1.5+o/100,c=["",""],u=[0,0];switch(i){case"top":c[0]="top",u[1]=-l;break;case"bottom":c[0]="bottom",u[1]=l}switch(a){case"left":c[1]="right",u[0]=-s;break;case"right":c[1]="left",u[0]=s}return{anchor:c[0]&&c[1]?c.join("-"):c[0]?c[0]:c[1]?c[1]:"center",offset:u}}},50101:function(t,e,n){"use strict";var r=n(44517),i=n(71828),a=i.strTranslate,o=i.strScale,s=n(27659).AU,l=n(77922),c=n(39898),u=n(91424),f=n(63893),h=n(10481),d="mapbox",p=e.constants=n(77734);function g(t){return"string"===typeof t&&(-1!==p.styleValuesMapbox.indexOf(t)||0===t.indexOf("mapbox://"))}e.name=d,e.attr="subplot",e.idRoot=d,e.idRegex=e.attrRegex=i.counterRegex(d),e.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}},e.layoutAttributes=n(23585),e.supplyLayoutDefaults=n(77882),e.plot=function(t){var e=t._fullLayout,n=t.calcdata,a=e._subplots[d];if(r.version!==p.requiredVersion)throw new Error(p.wrongVersionErrorMsg);var o=function(t,e){var n=t._fullLayout,r=t._context;if(""===r.mapboxAccessToken)return"";for(var a=[],o=[],s=!1,l=!1,c=0;c1&&i.warn(p.multipleTokensErrorMsg),a[0]):(o.length&&i.log(["Listed mapbox access token(s)",o.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}(t,a);r.accessToken=o;for(var l=0;l_/2){var k=y.split("|").join("
");x.text(k).attr("data-unformatted",k).call(f.convertToTspans,t),w=u.bBox(x.node())}x.attr("transform",a(-3,8-w.height)),b.insert("rect",".static-attribution").attr({x:-w.width-6,y:-w.height-3,width:w.width+6,height:w.height+3,fill:"rgba(255, 255, 255, 0.75)"});var T=1;w.width+6>_&&(T=_/(w.width+6));var M=[r.l+r.w*h.x[1],r.t+r.h*(1-h.y[0])];b.attr("transform",a(M[0],M[1])+o(T))}},e.updateFx=function(t){for(var e=t._fullLayout,n=e._subplots[d],r=0;r0){for(var n=0;n0}function u(t){var e={},n={};switch(t.type){case"circle":r.extendFlat(n,{"circle-radius":t.circle.radius,"circle-color":t.color,"circle-opacity":t.opacity});break;case"line":r.extendFlat(n,{"line-width":t.line.width,"line-color":t.color,"line-opacity":t.opacity,"line-dasharray":t.line.dash});break;case"fill":r.extendFlat(n,{"fill-color":t.color,"fill-outline-color":t.fill.outlinecolor,"fill-opacity":t.opacity});break;case"symbol":var i=t.symbol,o=a(i.textposition,i.iconsize);r.extendFlat(e,{"icon-image":i.icon+"-15","icon-size":i.iconsize/10,"text-field":i.text,"text-size":i.textfont.size,"text-anchor":o.anchor,"text-offset":o.offset,"symbol-placement":i.placement}),r.extendFlat(n,{"icon-color":t.color,"text-color":i.textfont.color,"text-opacity":t.opacity});break;case"raster":r.extendFlat(n,{"raster-fade-duration":0,"raster-opacity":t.opacity})}return{layout:e,paint:n}}l.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=c(t)},l.needsNewImage=function(t){return this.subplot.map.getSource(this.idSource)&&"image"===this.sourceType&&"image"===t.sourcetype&&(this.source!==t.source||JSON.stringify(this.coordinates)!==JSON.stringify(t.coordinates))},l.needsNewSource=function(t){return this.sourceType!==t.sourcetype||JSON.stringify(this.source)!==JSON.stringify(t.source)||this.layerType!==t.type},l.needsNewLayer=function(t){return this.layerType!==t.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},l.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]},l.updateImage=function(t){this.subplot.map.getSource(this.idSource).updateImage({url:t.source,coordinates:t.coordinates});var e=this.findFollowingMapboxLayerId(this.lookupBelow());null!==e&&this.subplot.map.moveLayer(this.idLayer,e)},l.updateSource=function(t){var e=this.subplot.map;if(e.getSource(this.idSource)&&e.removeSource(this.idSource),this.sourceType=t.sourcetype,this.source=t.source,c(t)){var n=function(t){var e,n=t.sourcetype,r=t.source,a={type:n};return"geojson"===n?e="data":"vector"===n?e="string"===typeof r?"url":"tiles":"raster"===n?(e="tiles",a.tileSize=256):"image"===n&&(e="url",a.coordinates=t.coordinates),a[e]=r,t.sourceattribution&&(a.attribution=i(t.sourceattribution)),a}(t);e.addSource(this.idSource,n)}},l.findFollowingMapboxLayerId=function(t){if("traces"===t)for(var e=this.subplot.getMapLayers(),n=0;n1)for(n=0;n-1&&v(e.originalEvent,r,[n.xaxis],[n.yaxis],n.id,t),i.indexOf("event")>-1&&c.click(r,e.originalEvent)}}},x.updateFx=function(t){var e=this,n=e.map,r=e.gd;if(!e.isStatic){var a,o=t.dragmode;a=function(t,n){n.isRect?(t.range={})[e.id]=[c([n.xmin,n.ymin]),c([n.xmax,n.ymax])]:(t.lassoPoints={})[e.id]=n.map(c)};var s=e.dragOptions;e.dragOptions=i.extendDeep(s||{},{dragmode:t.dragmode,element:e.div,gd:r,plotinfo:{id:e.id,domain:t[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis,fillRangeItems:a},xaxes:[e.xaxis],yaxes:[e.yaxis],subplot:e.id}),n.off("click",e.onClickInPanHandler),h(o)||f(o)?(n.dragPan.disable(),n.on("zoomstart",e.clearOutline),e.dragOptions.prepFn=function(t,n,r){d(t,n,r,e.dragOptions,o)},l.init(e.dragOptions)):(n.dragPan.enable(),n.off("zoomstart",e.clearOutline),e.div.onmousedown=null,e.div.ontouchstart=null,e.div.removeEventListener("touchstart",e.div._ontouchstart),e.onClickInPanHandler=e.onClickInPanFn(e.dragOptions),n.on("click",e.onClickInPanHandler))}function c(t){var n=e.map.unproject(t);return[n.lng,n.lat]}},x.updateFramework=function(t){var e=t[this.id].domain,n=t._size,r=this.div.style;r.width=n.w*(e.x[1]-e.x[0])+"px",r.height=n.h*(e.y[1]-e.y[0])+"px",r.left=n.l+e.x[0]*n.w+"px",r.top=n.t+(1-e.y[1])*n.h+"px",this.xaxis._offset=n.l+e.x[0]*n.w,this.xaxis._length=n.w*(e.x[1]-e.x[0]),this.yaxis._offset=n.t+(1-e.y[1])*n.h,this.yaxis._length=n.h*(e.y[1]-e.y[0])},x.updateLayers=function(t){var e,n=t[this.id].layers,r=this.layerList;if(n.length!==r.length){for(e=0;e=e.width-20?(a["text-anchor"]="start",a.x=5):(a["text-anchor"]="end",a.x=e._paper.attr("width")-7),n.attr(a);var o=n.select(".js-link-to-tool"),s=n.select(".js-link-spacer"),l=n.select(".js-sourcelinks");t._context.showSources&&t._context.showSources(t),t._context.showLink&&function(t,e){e.text("");var n=e.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(t._context.linkText+" "+String.fromCharCode(187));if(t._context.sendData)n.on("click",(function(){w.sendDataToCloud(t)}));else{var r=window.location.pathname.split("/"),i=window.location.search;n.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+r[2].split(".")[0]+"/"+r[1]+i})}}(t,o),s.text(o.text()&&l.text()?" - ":"")}},w.sendDataToCloud=function(t){var e=(window.PLOTLYENV||{}).BASE_URL||t._context.plotlyServerURL;if(e){t.emit("plotly_beforeexport");var n=r.select(t).append("div").attr("id","hiddenform").style("display","none"),i=n.append("form").attr({action:e+"/external",method:"post",target:"_blank"});return i.append("input").attr({type:"text",name:"data"}).node().value=w.graphJson(t,!1,"keepdata"),i.node().submit(),n.remove(),t.emit("plotly_afterexport"),!1}};var T=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],M=["year","month","dayMonth","dayMonthYear"];function A(t,e){var n=t._context.locale;n||(n="en-US");var r=!1,i={};function a(t){for(var n=!0,a=0;a1&&D.length>1){for(s.getComponentMethod("grid","sizeDefaults")(c,l),o=0;o15&&D.length>15&&0===l.shapes.length&&0===l.images.length,w.linkSubplots(h,l,f,r),w.cleanPlot(h,l,f,r);var F=!(!r._has||!r._has("gl2d")),B=!(!l._has||!l._has("gl2d")),U=!(!r._has||!r._has("cartesian"))||F,H=!(!l._has||!l._has("cartesian"))||B;U&&!H?r._bgLayer.remove():H&&!U&&(l._shouldCreateBgLayer=!0),r._zoomlayer&&!t._dragging&&p({_fullLayout:r}),function(t,e){var n,r=[];e.meta&&(n=e._meta={meta:e.meta,layout:{meta:e.meta}});for(var i=0;i0){var f=1-2*s;r=Math.round(f*r),i=Math.round(f*i)}}var h=w.layoutAttributes.width.min,d=w.layoutAttributes.height.min;r1,g=!e.height&&Math.abs(n.height-i)>1;(g||p)&&(p&&(n.width=r),g&&(n.height=i)),t._initialAutoSize||(t._initialAutoSize={width:r,height:i}),w.sanitizeMargins(n)},w.supplyLayoutModuleDefaults=function(t,e,n,r){var i,a,o,l=s.componentsRegistry,c=e._basePlotModules,f=s.subplotsRegistry.cartesian;for(i in l)(o=l[i]).includeBasePlot&&o.includeBasePlot(t,e);for(var h in c.length||c.push(f),e._has("cartesian")&&(s.getComponentMethod("grid","contentDefaults")(t,e),f.finalizeSubplots(t,e)),e._subplots)e._subplots[h].sort(u.subplotSort);for(a=0;a1&&(n.l/=m,n.r/=m)}if(d){var y=(n.t+n.b)/d;y>1&&(n.t/=y,n.b/=y)}var b=void 0!==n.xl?n.xl:n.x,x=void 0!==n.xr?n.xr:n.x,_=void 0!==n.yt?n.yt:n.y,k=void 0!==n.yb?n.yb:n.y;p[e]={l:{val:b,size:n.l+v},r:{val:x,size:n.r+v},b:{val:k,size:n.b+v},t:{val:_,size:n.t+v}},g[e]=1}else delete p[e],delete g[e];if(!r._replotting)return w.doAutoMargin(t)}},w.doAutoMargin=function(t){var e=t._fullLayout,n=e.width,r=e.height;e._size||(e._size={}),L(e);var i=e._size,a=e.margin,l={t:0,b:0,l:0,r:0},c=u.extendFlat({},i),f=t._fullLayout._reservedMargin;for(var h in f)for(var p in f[h]){var g=f[h][p];l[p]=Math.max(l[p],g)}var v=a.l,m=a.r,y=a.t,b=a.b,x=e._pushmargin,_=e._pushmarginIds,k=e.minreducedwidth,T=e.minreducedheight;if(!1!==e.margin.autoexpand){for(var M in x)_[M]||delete x[M];for(var A in x.base={l:{val:0,size:v},r:{val:1,size:m},t:{val:1,size:y},b:{val:0,size:b}},x){var S=x[A].l||{},E=x[A].b||{},C=S.val,P=S.size,O=E.val,I=E.size,D=n-l.r-l.l,R=r-l.t-l.b;for(var z in x){if(o(P)&&x[z].r){var N=x[z].r.val,j=x[z].r.size;if(N>C){var F=(P*N+(j-D)*C)/(N-C),B=(j*(1-C)+(P-D)*(1-N))/(N-C);F+B>v+m&&(v=F,m=B)}}if(o(I)&&x[z].t){var U=x[z].t.val,H=x[z].t.size;if(U>O){var V=(I*U+(H-R)*O)/(U-O),q=(H*(1-O)+(I-R)*(1-U))/(U-O);V+q>b+y&&(b=V,y=q)}}}}}var G=u.constrain(n-a.l-a.r,2,k),W=u.constrain(r-a.t-a.b,2,T),Y=Math.max(0,n-G),$=Math.max(0,r-W);if(Y){var X=(v+m)/Y;X>1&&(v/=X,m/=X)}if($){var K=(b+y)/$;K>1&&(b/=K,y/=K)}if(i.l=Math.round(v)+l.l,i.r=Math.round(m)+l.r,i.t=Math.round(y)+l.t,i.b=Math.round(b)+l.b,i.p=Math.round(a.pad),i.w=Math.round(n)-i.l-i.r,i.h=Math.round(r)-i.t-i.b,!e._replotting&&(w.didMarginChange(c,i)||function(t){if("_redrawFromAutoMarginCount"in t._fullLayout)return!1;var e=d.list(t,"",!0);for(var n in e)if(e[n].autoshift||e[n].shift)return!0;return!1}(t))){"_redrawFromAutoMarginCount"in e?e._redrawFromAutoMarginCount++:e._redrawFromAutoMarginCount=1;var Z=3*(1+Object.keys(_).length);if(e._redrawFromAutoMarginCount0&&(t._transitioningWithDuration=!0),t._transitionData._interruptCallbacks.push((function(){r=!0})),n.redraw&&t._transitionData._interruptCallbacks.push((function(){return s.call("redraw",t)})),t._transitionData._interruptCallbacks.push((function(){t.emit("plotly_transitioninterrupted",[])}));var a=0,o=0;function l(){return a++,function(){var e;o++,r||o!==a||(e=i,t._transitionData&&(function(t){if(t)for(;t.length;)t.shift()}(t._transitionData._interruptCallbacks),Promise.resolve().then((function(){if(n.redraw)return s.call("redraw",t)})).then((function(){t._transitioning=!1,t._transitioningWithDuration=!1,t.emit("plotly_transitioned",[])})).then(e)))}}n.runFn(l),setTimeout(l())}))}],a=u.syncOrAsync(i,t);return a&&a.then||(a=Promise.resolve()),a.then((function(){return t}))}w.didMarginChange=function(t,e){for(var n=0;n1)return!0}return!1},w.graphJson=function(t,e,n,r,i,a){(i&&e&&!t._fullData||i&&!e&&!t._fullLayout)&&w.supplyDefaults(t);var o=i?t._fullData:t.data,s=i?t._fullLayout:t.layout,l=(t._transitionData||{})._frames;function c(t,e){if("function"===typeof t)return e?"_function_":null;if(u.isPlainObject(t)){var r,i={};return Object.keys(t).sort().forEach((function(a){if(-1===["_","["].indexOf(a.charAt(0)))if("function"!==typeof t[a]){if("keepdata"===n){if("src"===a.substr(a.length-3))return}else if("keepstream"===n){if("string"===typeof(r=t[a+"src"])&&r.indexOf(":")>0&&!u.isPlainObject(t.stream))return}else if("keepall"!==n&&"string"===typeof(r=t[a+"src"])&&r.indexOf(":")>0)return;i[a]=c(t[a],e)}else e&&(i[a]="_function")})),i}return Array.isArray(t)?t.map((function(t){return c(t,e)})):u.isTypedArray(t)?u.simpleMap(t,u.identity):u.isJSDate(t)?u.ms2DateTimeLocal(+t):t}var f={data:(o||[]).map((function(t){var n=c(t);return e&&delete n.fit,n}))};if(!e&&(f.layout=c(s),i)){var h=s._size;f.layout.computed={margin:{b:h.b,l:h.l,r:h.r,t:h.t}}}return l&&(f.frames=c(l)),a&&(f.config=c(t._context,!0)),"object"===r?f:JSON.stringify(f)},w.modifyFrames=function(t,e){var n,r,i,a=t._transitionData._frames,o=t._transitionData._frameHash;for(n=0;n=0;a--)if(s[a].enabled){n._indexToPoints=s[a]._indexToPoints;break}r&&r.calc&&(o=r.calc(t,n))}Array.isArray(o)&&o[0]||(o=[{x:h,y:h}]),o[0].t||(o[0].t={}),o[0].trace=n,p[e]=o}}for(R(o,c,f),i=0;i1e-10?t:0}function h(t,e,n){e=e||0,n=n||0;for(var r=t.length,i=new Array(r),a=0;a0?n:1/0})),i=r.mod(n+1,e.length);return[e[n],e[i]]},findIntersectionXY:c,findXYatLength:function(t,e,n,r){var i=-e*n,a=e*e+1,o=2*(e*i-n),s=i*i+n*n-t*t,l=Math.sqrt(o*o-4*a*s),c=(-o+l)/(2*a),u=(-o-l)/(2*a);return[[c,e*c+i+r],[u,e*u+i+r]]},clampTiny:f,pathPolygon:function(t,e,n,r,i,a){return"M"+h(u(t,e,n,r),i,a).join("L")},pathPolygonAnnulus:function(t,e,n,r,i,a,o){var s,l;t=90||l>90&&c>=450?1:f<=0&&d<=0?0:Math.max(f,d),e=l<=180&&c>=180||l>180&&c>=540?-1:u>=0&&h>=0?0:Math.min(u,h),n=l<=270&&c>=270||l>270&&c>=630?-1:f>=0&&d>=0?0:Math.min(f,d),r=c>=360?1:u<=0&&h<=0?0:Math.max(u,h),[e,n,r,i]}(p),w=x[2]-x[0],_=x[3]-x[1],k=d/h,T=Math.abs(_/w);k>T?(g=h,b=(d-(v=h*T))/i.h/2,m=[s[0],s[1]],y=[f[0]+b,f[1]-b]):(v=d,b=(h-(g=d/T))/i.w/2,m=[s[0]+b,s[1]-b],y=[f[0],f[1]]),n.xLength2=g,n.yLength2=v,n.xDomain2=m,n.yDomain2=y;var M,A=n.xOffset2=i.l+i.w*m[0],S=n.yOffset2=i.t+i.h*(1-y[1]),E=n.radius=g/w,C=n.innerRadius=n.getHole(e)*E,P=n.cx=A-E*x[0],L=n.cy=S+E*x[3],O=n.cxx=P-A,I=n.cyy=L-S,D=a.side;"counterclockwise"===D?(M=D,D="top"):"clockwise"===D&&(M=D,D="bottom"),n.radialAxis=n.mockAxis(t,e,a,{_id:"x",side:D,_trueSide:M,domain:[C/i.w,E/i.w]}),n.angularAxis=n.mockAxis(t,e,o,{side:"right",domain:[0,Math.PI],autorange:!1}),n.doAutoRange(t,e),n.updateAngularAxis(t,e),n.updateRadialAxis(t,e),n.updateRadialAxisTitle(t,e),n.xaxis=n.mockCartesianAxis(t,e,{_id:"x",domain:m}),n.yaxis=n.mockCartesianAxis(t,e,{_id:"y",domain:y});var N=n.pathSubplot();n.clipPaths.forTraces.select("path").attr("d",N).attr("transform",l(O,I)),r.frontplot.attr("transform",l(A,S)).call(u.setClipUrl,n._hasClipOnAxisFalse?null:n.clipIds.forTraces,n.gd),r.bg.attr("d",N).attr("transform",l(P,L)).call(c.fill,e.bgcolor)},F.mockAxis=function(t,e,n,r){var i=o.extendFlat({},n,r);return p(i,e,t),i},F.mockCartesianAxis=function(t,e,n){var r=this,i=r.isSmith,a=n._id,s=o.extendFlat({type:"linear"},n);d(s,t);var l={x:[0,2],y:[1,3]};return s.setRange=function(){var t=r.sectorBBox,n=l[a],i=r.radialAxis._rl,o=(i[1]-i[0])/(1-r.getHole(e));s.range=[t[n[0]]*o,t[n[1]]*o]},s.isPtWithinRange="x"!==a||i?function(){return!0}:function(t){return r.isPtInside(t)},s.setRange(),s.setScale(),s},F.doAutoRange=function(t,e){var n=this,r=n.gd,i=n.radialAxis,a=n.getRadial(e);g(r,i);var o=i.range;a.range=o.slice(),a._input.range=o.slice(),i._rl=[i.r2l(o[0],null,"gregorian"),i.r2l(o[1],null,"gregorian")]},F.updateRadialAxis=function(t,e){var n=this,r=n.gd,i=n.layers,a=n.radius,u=n.innerRadius,f=n.cx,d=n.cy,p=n.getRadial(e),g=R(n.getSector(e)[0],360),v=n.radialAxis,m=u90&&g<=270&&(v.tickangle=180);var b=y?function(t){var e=I(n,P([t.x,0]));return l(e[0]-f,e[1]-d)}:function(t){return l(v.l2p(t.x)+u,0)},x=y?function(t){return O(n,t.x,-1/0,1/0)}:function(t){return n.pathArc(v.r2p(t.x)+u)},w=B(p);if(n.radialTickLayout!==w&&(i["radial-axis"].selectAll(".xtick").remove(),n.radialTickLayout=w),m){v.setScale();var _=0,k=y?(v.tickvals||[]).filter((function(t){return t>=0})).map((function(t){return h.tickText(v,t,!0,!1)})):h.calcTicks(v),T=y?k:h.clipEnds(v,k),M=h.getTickSigns(v)[2];y&&(("top"===v.ticks&&"bottom"===v.side||"bottom"===v.ticks&&"top"===v.side)&&(M=-M),"top"===v.ticks&&"top"===v.side&&(_=-v.ticklen),"bottom"===v.ticks&&"bottom"===v.side&&(_=v.ticklen)),h.drawTicks(r,v,{vals:k,layer:i["radial-axis"],path:h.makeTickPath(v,0,M),transFn:b,crisp:!1}),h.drawGrid(r,v,{vals:T,layer:i["radial-grid"],path:x,transFn:o.noop,crisp:!1}),h.drawLabels(r,v,{vals:k,layer:i["radial-axis"],transFn:b,labelFns:h.makeLabelFns(v,_)})}var A=n.radialAxisAngle=n.vangles?N(U(z(p.angle),n.vangles)):p.angle,S=l(f,d),E=S+s(-A);H(i["radial-axis"],m&&(p.showticklabels||p.ticks),{transform:E}),H(i["radial-grid"],m&&p.showgrid,{transform:y?"":S}),H(i["radial-line"].select("line"),m&&p.showline,{x1:y?-a:u,y1:0,x2:a,y2:0,transform:E}).attr("stroke-width",p.linewidth).call(c.stroke,p.linecolor)},F.updateRadialAxisTitle=function(t,e,n){if(!this.isSmith){var r=this,i=r.gd,a=r.radius,o=r.cx,s=r.cy,l=r.getRadial(e),c=r.id+"title",f=0;if(l.title){var h=u.bBox(r.layers["radial-axis"].node()).height,d=l.title.font.size,p=l.side;f="top"===p?d:"counterclockwise"===p?-(h+.4*d):h+.8*d}var g=void 0!==n?n:r.radialAxisAngle,v=z(g),m=Math.cos(v),y=Math.sin(v),x=o+a/2*m+f*y,w=s-a/2*y+f*m;r.layers["radial-axis-title"]=b.draw(i,c,{propContainer:l,propName:r.id+".radialaxis.title",placeholder:D(i,"Click to enter radial axis title"),attributes:{x:x,y:w,"text-anchor":"middle"},transform:{rotate:-g}})}},F.updateAngularAxis=function(t,e){var n=this,r=n.gd,i=n.layers,a=n.radius,u=n.innerRadius,f=n.cx,d=n.cy,p=n.getAngular(e),g=n.angularAxis,v=n.isSmith;v||(n.fillViewInitialKey("angularaxis.rotation",p.rotation),g.setGeometry(),g.setScale());var m=v?function(t){var e=I(n,P([0,t.x]));return Math.atan2(e[0]-f,e[1]-d)-Math.PI/2}:function(t){return g.t2g(t.x)};"linear"===g.type&&"radians"===g.thetaunit&&(g.tick0=N(g.tick0),g.dtick=N(g.dtick));var y=function(t){return l(f+a*Math.cos(t),d-a*Math.sin(t))},b=v?function(t){var e=I(n,P([0,t.x]));return l(e[0],e[1])}:function(t){return y(m(t))},x=v?function(t){var e=I(n,P([0,t.x])),r=Math.atan2(e[0]-f,e[1]-d)-Math.PI/2;return l(e[0],e[1])+s(-N(r))}:function(t){var e=m(t);return y(e)+s(-N(e))},w=v?function(t){return L(n,t.x,0,1/0)}:function(t){var e=m(t),n=Math.cos(e),r=Math.sin(e);return"M"+[f+u*n,d-u*r]+"L"+[f+a*n,d-a*r]},_=h.makeLabelFns(g,0).labelStandoff,k={xFn:function(t){var e=m(t);return Math.cos(e)*_},yFn:function(t){var e=m(t),n=Math.sin(e)>0?.2:1;return-Math.sin(e)*(_+t.fontSize*n)+Math.abs(Math.cos(e))*(t.fontSize*A)},anchorFn:function(t){var e=m(t),n=Math.cos(e);return Math.abs(n)<.1?"middle":n>0?"start":"end"},heightFn:function(t,e,n){var r=m(t);return-.5*(1+Math.sin(r))*n}},T=B(p);n.angularTickLayout!==T&&(i["angular-axis"].selectAll("."+g._id+"tick").remove(),n.angularTickLayout=T);var M,S=v?[1/0].concat(g.tickvals||[]).map((function(t){return h.tickText(g,t,!0,!1)})):h.calcTicks(g);if(v&&(S[0].text="\u221e",S[0].fontSize*=1.75),"linear"===e.gridshape?(M=S.map(m),o.angleDelta(M[0],M[1])<0&&(M=M.slice().reverse())):M=null,n.vangles=M,"category"===g.type&&(S=S.filter((function(t){return o.isAngleInsideSector(m(t),n.sectorInRad)}))),g.visible){var E="inside"===g.ticks?-1:1,C=(g.linewidth||1)/2;h.drawTicks(r,g,{vals:S,layer:i["angular-axis"],path:"M"+E*C+",0h"+E*g.ticklen,transFn:x,crisp:!1}),h.drawGrid(r,g,{vals:S,layer:i["angular-grid"],path:w,transFn:o.noop,crisp:!1}),h.drawLabels(r,g,{vals:S,layer:i["angular-axis"],repositionOnUpdate:!0,transFn:b,labelFns:k})}H(i["angular-line"].select("path"),p.showline,{d:n.pathSubplot(),transform:l(f,d)}).attr("stroke-width",p.linewidth).call(c.stroke,p.linecolor)},F.updateFx=function(t,e){this.gd._context.staticPlot||(!this.isSmith&&(this.updateAngularDrag(t),this.updateRadialDrag(t,e,0),this.updateRadialDrag(t,e,1)),this.updateHoverAndMainDrag(t))},F.updateHoverAndMainDrag=function(t){var e,n,s=this,c=s.isSmith,u=s.gd,f=s.layers,h=t._zoomlayer,d=S.MINZOOM,p=S.OFFEDGE,g=s.radius,b=s.innerRadius,k=s.cx,T=s.cy,M=s.cxx,A=s.cyy,C=s.sectorInRad,P=s.vangles,L=s.radialAxis,O=E.clampTiny,I=E.findXYatLength,D=E.findEnclosingVertexAngles,R=S.cornerHalfWidth,z=S.cornerLen/2,N=v.makeDragger(f,"path","maindrag",!1===t.dragmode?"none":"crosshair");r.select(N).attr("d",s.pathSubplot()).attr("transform",l(k,T)),N.onmousemove=function(t){y.hover(u,t,s.id),u._fullLayout._lasthover=N,u._fullLayout._hoversubplot=s.id},N.onmouseout=function(t){u._dragging||m.unhover(u,t)};var j,F,B,U,H,V,q,G,W,Y={element:N,gd:u,subplot:s.id,plotinfo:{id:s.id,xaxis:s.xaxis,yaxis:s.yaxis},xaxes:[s.xaxis],yaxes:[s.yaxis]};function $(t,e){return Math.sqrt(t*t+e*e)}function X(t,e){return $(t-M,e-A)}function K(t,e){return Math.atan2(A-e,t-M)}function Z(t,e){return[t*Math.cos(e),t*Math.sin(-e)]}function J(t,e){if(0===t)return s.pathSector(2*R);var n=z/t,r=e-n,i=e+n,a=Math.max(0,Math.min(t,g)),o=a-R,l=a+R;return"M"+Z(o,r)+"A"+[o,o]+" 0,0,0 "+Z(o,i)+"L"+Z(l,i)+"A"+[l,l]+" 0,0,1 "+Z(l,r)+"Z"}function Q(t,e,n){if(0===t)return s.pathSector(2*R);var r,i,a=Z(t,e),o=Z(t,n),l=O((a[0]+o[0])/2),c=O((a[1]+o[1])/2);if(l&&c){var u=c/l,f=-1/u,h=I(R,u,l,c);r=I(z,f,h[0][0],h[0][1]),i=I(z,f,h[1][0],h[1][1])}else{var d,p;c?(d=z,p=R):(d=R,p=z),r=[[l-d,c-p],[l+d,c-p]],i=[[l-d,c+p],[l+d,c+p]]}return"M"+r.join("L")+"L"+i.reverse().join("L")+"Z"}function tt(t,e){return e=Math.max(Math.min(e,g),b),td?(t-1&&1===t&&w(e,u,[s.xaxis],[s.yaxis],s.id,Y),n.indexOf("event")>-1&&y.click(u,e,s.id)}Y.prepFn=function(t,r,a){var l=u._fullLayout.dragmode,f=N.getBoundingClientRect();u._fullLayout._calcInverseTransform(u);var d=u._fullLayout._invTransform;e=u._fullLayout._invScaleX,n=u._fullLayout._invScaleY;var p=o.apply3DTransform(d)(r-f.left,a-f.top);if(j=p[0],F=p[1],P){var m=E.findPolygonOffset(g,C[0],C[1],P);j+=M+m[0],F+=A+m[1]}switch(l){case"zoom":Y.clickFn=st,c||(Y.moveFn=P?it:nt,Y.doneFn=at,function(){B=null,U=null,H=s.pathSubplot(),V=!1;var t=u._fullLayout[s.id];q=i(t.bgcolor).getLuminance(),(G=v.makeZoombox(h,q,k,T,H)).attr("fill-rule","evenodd"),W=v.makeCorners(h,k,T),_(u)}());break;case"select":case"lasso":x(t,r,a,Y,l)}},m.init(Y)},F.updateRadialDrag=function(t,e,n){var i=this,c=i.gd,u=i.layers,f=i.radius,h=i.innerRadius,d=i.cx,p=i.cy,g=i.radialAxis,y=S.radialDragBoxSize,b=y/2;if(g.visible){var x,w,k,A=z(i.radialAxisAngle),E=g._rl,C=E[0],P=E[1],L=E[n],O=.75*(E[1]-E[0])/(1-i.getHole(e))/f;n?(x=d+(f+b)*Math.cos(A),w=p-(f+b)*Math.sin(A),k="radialdrag"):(x=d+(h-b)*Math.cos(A),w=p-(h-b)*Math.sin(A),k="radialdrag-inner");var I,D,R,j=v.makeRectDragger(u,k,"crosshair",-b,-b,y,y),F={element:j,gd:c};!1===t.dragmode&&(F.dragmode=!1),H(r.select(j),g.visible&&h0===(n?R>C:Rr?function(t){return t<=0}:function(t){return t>=0};t.c2g=function(n){var r=t.c2l(n)-e;return(s(r)?r:0)+o},t.g2c=function(n){return t.l2c(n+e-o)},t.g2p=function(t){return t*a},t.c2p=function(e){return t.g2p(t.c2g(e))}}}(t,e);break;case"angularaxis":!function(t,e){var n=t.type;if("linear"===n){var i=t.d2c,s=t.c2d;t.d2c=function(t,e){return function(t,e){return"degrees"===e?a(t):t}(i(t),e)},t.c2d=function(t,e){return s(function(t,e){return"degrees"===e?o(t):t}(t,e))}}t.makeCalcdata=function(e,i){var a,o,s=e[i],l=e._length,c=function(n){return t.d2c(n,e.thetaunit)};if(s){if(r.isTypedArray(s)&&"linear"===n){if(l===s.length)return s;if(s.subarray)return s.subarray(0,l)}for(a=new Array(l),o=0;o0?1:0}function n(t){var e=t[0],n=t[1];if(!isFinite(e)||!isFinite(n))return[1,0];var r=(e+1)*(e+1)+n*n;return[(e*e+n*n-1)/r,2*n/r]}function r(t,e){var n=e[0],r=e[1];return[n*t.radius+t.cx,-r*t.radius+t.cy]}function i(t,e){return e*t.radius}t.exports={smith:n,reactanceArc:function(t,e,a,o){var s=r(t,n([a,e])),l=s[0],c=s[1],u=r(t,n([o,e])),f=u[0],h=u[1];if(0===e)return["M"+l+","+c,"L"+f+","+h].join(" ");var d=i(t,1/Math.abs(e));return["M"+l+","+c,"A"+d+","+d+" 0 0,"+(e<0?1:0)+" "+f+","+h].join(" ")},resistanceArc:function(t,a,o,s){var l=i(t,1/(a+1)),c=r(t,n([a,o])),u=c[0],f=c[1],h=r(t,n([a,s])),d=h[0],p=h[1];if(e(o)!==e(s)){var g=r(t,n([a,0]));return["M"+u+","+f,"A"+l+","+l+" 0 0,"+(00){for(var r=[],i=0;i=u&&(h.min=0,p.min=0,v.min=0,t.aaxis&&delete t.aaxis.min,t.baxis&&delete t.baxis.min,t.caxis&&delete t.caxis.min)}function g(t,e,n,r){var i=h[e._name];function o(n,r){return a.coerce(t,e,i,n,r)}o("uirevision",r.uirevision),e.type="linear";var d=o("color"),p=d!==i.color.dflt?d:n.font.color,g=e._name.charAt(0).toUpperCase(),v="Component "+g,m=o("title.text",v);e._hovertitle=m===v?m:g,a.coerceFont(o,"title.font",{family:n.font.family,size:a.bigFont(n.font.size),color:p}),o("min"),u(t,e,o,"linear"),l(t,e,o,"linear"),s(t,e,o,"linear"),c(t,e,o,{outerTicks:!0}),o("showticklabels")&&(a.coerceFont(o,"tickfont",{family:n.font.family,size:n.font.size,color:p}),o("tickangle"),o("tickformat")),f(t,e,o,{dfltColor:d,bgColor:n.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:i}),o("hoverformat"),o("layer")}t.exports=function(t,e,n){o(t,e,n,{type:"ternary",attributes:h,handleDefaults:p,font:e.font,paper_bgcolor:e.paper_bgcolor})}},64380:function(t,e,n){"use strict";var r=n(39898),i=n(84267),a=n(73972),o=n(71828),s=o.strTranslate,l=o._,c=n(7901),u=n(91424),f=n(21994),h=n(1426).extendFlat,d=n(74875),p=n(89298),g=n(28569),v=n(30211),m=n(64505),y=m.freeMode,b=m.rectMode,x=n(92998),w=n(47322).prepSelect,_=n(47322).selectOnClick,k=n(47322).clearOutline,T=n(47322).clearSelectionsCache,M=n(85555);function A(t,e){this.id=t.id,this.graphDiv=t.graphDiv,this.init(e),this.makeFramework(e),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}t.exports=A;var S=A.prototype;S.init=function(t){this.container=t._ternarylayer,this.defs=t._defs,this.layoutId=t._uid,this.traceHash={},this.layers={}},S.plot=function(t,e){var n=this,r=e[n.id],i=e._size;n._hasClipOnAxisFalse=!1;for(var a=0;aE*x?i=(a=x)*E:a=(i=b)/E,o=m*i/b,l=y*a/x,n=e.l+e.w*g-i/2,r=e.t+e.h*(1-v)-a/2,d.x0=n,d.y0=r,d.w=i,d.h=a,d.sum=w,d.xaxis={type:"linear",range:[_+2*T-w,w-_-2*k],domain:[g-o/2,g+o/2],_id:"x"},f(d.xaxis,d.graphDiv._fullLayout),d.xaxis.setScale(),d.xaxis.isPtWithinRange=function(t){return t.a>=d.aaxis.range[0]&&t.a<=d.aaxis.range[1]&&t.b>=d.baxis.range[1]&&t.b<=d.baxis.range[0]&&t.c>=d.caxis.range[1]&&t.c<=d.caxis.range[0]},d.yaxis={type:"linear",range:[_,w-k-T],domain:[v-l/2,v+l/2],_id:"y"},f(d.yaxis,d.graphDiv._fullLayout),d.yaxis.setScale(),d.yaxis.isPtWithinRange=function(){return!0};var M=d.yaxis.domain[0],A=d.aaxis=h({},t.aaxis,{range:[_,w-k-T],side:"left",tickangle:(+t.aaxis.tickangle||0)-30,domain:[M,M+l*E],anchor:"free",position:0,_id:"y",_length:i});f(A,d.graphDiv._fullLayout),A.setScale();var S=d.baxis=h({},t.baxis,{range:[w-_-T,k],side:"bottom",domain:d.xaxis.domain,anchor:"free",position:0,_id:"x",_length:i});f(S,d.graphDiv._fullLayout),S.setScale();var C=d.caxis=h({},t.caxis,{range:[w-_-k,T],side:"right",tickangle:(+t.caxis.tickangle||0)+30,domain:[M,M+l*E],anchor:"free",position:0,_id:"y",_length:i});f(C,d.graphDiv._fullLayout),C.setScale();var P="M"+n+","+(r+a)+"h"+i+"l-"+i/2+",-"+a+"Z";d.clipDef.select("path").attr("d",P),d.layers.plotbg.select("path").attr("d",P);var L="M0,"+a+"h"+i+"l-"+i/2+",-"+a+"Z";d.clipDefRelative.select("path").attr("d",L);var O=s(n,r);d.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",O),d.clipDefRelative.select("path").attr("transform",null);var I=s(n-S._offset,r+a);d.layers.baxis.attr("transform",I),d.layers.bgrid.attr("transform",I);var D=s(n+i/2,r)+"rotate(30)"+s(0,-A._offset);d.layers.aaxis.attr("transform",D),d.layers.agrid.attr("transform",D);var R=s(n+i/2,r)+"rotate(-30)"+s(0,-C._offset);d.layers.caxis.attr("transform",R),d.layers.cgrid.attr("transform",R),d.drawAxes(!0),d.layers.aline.select("path").attr("d",A.showline?"M"+n+","+(r+a)+"l"+i/2+",-"+a:"M0,0").call(c.stroke,A.linecolor||"#000").style("stroke-width",(A.linewidth||0)+"px"),d.layers.bline.select("path").attr("d",S.showline?"M"+n+","+(r+a)+"h"+i:"M0,0").call(c.stroke,S.linecolor||"#000").style("stroke-width",(S.linewidth||0)+"px"),d.layers.cline.select("path").attr("d",C.showline?"M"+(n+i/2)+","+r+"l"+i/2+","+a:"M0,0").call(c.stroke,C.linecolor||"#000").style("stroke-width",(C.linewidth||0)+"px"),d.graphDiv._context.staticPlot||d.initInteractions(),u.setClipUrl(d.layers.frontplot,d._hasClipOnAxisFalse?null:d.clipId,d.graphDiv)},S.drawAxes=function(t){var e=this,n=e.graphDiv,r=e.id.substr(7)+"title",i=e.layers,a=e.aaxis,o=e.baxis,s=e.caxis;if(e.drawAx(a),e.drawAx(o),e.drawAx(s),t){var c=Math.max(a.showticklabels?a.tickfont.size/2:0,(s.showticklabels?.75*s.tickfont.size:0)+("outside"===s.ticks?.87*s.ticklen:0)),u=(o.showticklabels?o.tickfont.size:0)+("outside"===o.ticks?o.ticklen:0)+3;i["a-title"]=x.draw(n,"a"+r,{propContainer:a,propName:e.id+".aaxis.title",placeholder:l(n,"Click to enter Component A title"),attributes:{x:e.x0+e.w/2,y:e.y0-a.title.font.size/3-c,"text-anchor":"middle"}}),i["b-title"]=x.draw(n,"b"+r,{propContainer:o,propName:e.id+".baxis.title",placeholder:l(n,"Click to enter Component B title"),attributes:{x:e.x0-u,y:e.y0+e.h+.83*o.title.font.size+u,"text-anchor":"middle"}}),i["c-title"]=x.draw(n,"c"+r,{propContainer:s,propName:e.id+".caxis.title",placeholder:l(n,"Click to enter Component C title"),attributes:{x:e.x0+e.w+u,y:e.y0+e.h+.83*s.title.font.size+u,"text-anchor":"middle"}})}},S.drawAx=function(t){var e,n=this,r=n.graphDiv,i=t._name,a=i.charAt(0),s=t._id,l=n.layers[i],c=a+"tickLayout",u=(e=t).ticks+String(e.ticklen)+String(e.showticklabels);n[c]!==u&&(l.selectAll("."+s+"tick").remove(),n[c]=u),t.setScale();var f=p.calcTicks(t),h=p.clipEnds(t,f),d=p.makeTransTickFn(t),g=p.getTickSigns(t)[2],v=o.deg2rad(30),m=g*(t.linewidth||1)/2,y=g*t.ticklen,b=n.w,x=n.h,w="b"===a?"M0,"+m+"l"+Math.sin(v)*y+","+Math.cos(v)*y:"M"+m+",0l"+Math.cos(v)*y+","+-Math.sin(v)*y,_={a:"M0,0l"+x+",-"+b/2,b:"M0,0l-"+b/2+",-"+x,c:"M0,0l-"+x+","+b/2}[a];p.drawTicks(r,t,{vals:"inside"===t.ticks?h:f,layer:l,path:w,transFn:d,crisp:!1}),p.drawGrid(r,t,{vals:h,layer:n.layers[a+"grid"],path:_,transFn:d,crisp:!1}),p.drawLabels(r,t,{vals:f,layer:l,transFn:d,labelFns:p.makeLabelFns(t,0,30)})};var C=M.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",L="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",O="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",I=!0;function D(t){r.select(t).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}S.clearOutline=function(){T(this.dragOptions),k(this.dragOptions.gd)},S.initInteractions=function(){var t,e,n,r,f,h,d,p,m,x,k,T,A=this,S=A.layers.plotbg.select("path").node(),C=A.graphDiv,R=C._fullLayout._zoomlayer;function z(t){var e={};return e[A.id+".aaxis.min"]=t.a,e[A.id+".baxis.min"]=t.b,e[A.id+".caxis.min"]=t.c,e}function N(t,e){var n=C._fullLayout.clickmode;D(C),2===t&&(C.emit("plotly_doubleclick",null),a.call("_guiRelayout",C,z({a:0,b:0,c:0}))),n.indexOf("select")>-1&&1===t&&_(e,C,[A.xaxis],[A.yaxis],A.id,A.dragOptions),n.indexOf("event")>-1&&v.click(C,e,A.id)}function j(t,e){return 1-e/A.h}function F(t,e){return 1-(t+(A.h-e)/Math.sqrt(3))/A.w}function B(t,e){return(t-(A.h-e)/Math.sqrt(3))/A.w}function U(i,a){var o=n+i*t,s=r+a*e,l=Math.max(0,Math.min(1,j(0,r),j(0,s))),c=Math.max(0,Math.min(1,F(n,r),F(o,s))),u=Math.max(0,Math.min(1,B(n,r),B(o,s))),g=(l/2+u)*A.w,v=(1-l/2-c)*A.w,y=(g+v)/2,b=v-g,w=(1-l)*A.h,_=w-b/E;b.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),T.transition().style("opacity",1).duration(200),x=!0),C.emit("plotly_relayouting",z(d))}function H(){D(C),d!==f&&(a.call("_guiRelayout",C,z(d)),I&&C.data&&C._context.showTips&&(o.notifier(l(C,"Double-click to zoom back out"),"long"),I=!1))}function V(t,e){var n=t/A.xaxis._m,r=e/A.yaxis._m,i=[(d={a:f.a-r,b:f.b+(n+r)/2,c:f.c-(n-r)/2}).a,d.b,d.c].sort(o.sorterAsc),a=i.indexOf(d.a),l=i.indexOf(d.b),c=i.indexOf(d.c);i[0]<0&&(i[1]+i[0]/2<0?(i[2]+=i[0]+i[1],i[0]=i[1]=0):(i[2]+=i[0]/2,i[1]+=i[0]/2,i[0]=0),d={a:i[a],b:i[l],c:i[c]},e=(f.a-d.a)*A.yaxis._m,t=(f.c-d.c-f.b+d.b)*A.xaxis._m);var h=s(A.x0+t,A.y0+e);A.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",h);var p=s(-t,-e);A.clipDefRelative.select("path").attr("transform",p),A.aaxis.range=[d.a,A.sum-d.b-d.c],A.baxis.range=[A.sum-d.a-d.c,d.b],A.caxis.range=[A.sum-d.a-d.b,d.c],A.drawAxes(!1),A._hasClipOnAxisFalse&&A.plotContainer.select(".scatterlayer").selectAll(".trace").call(u.hideOutsideRangePoints,A),C.emit("plotly_relayouting",z(d))}function q(){a.call("_guiRelayout",C,z(d))}this.dragOptions={element:S,gd:C,plotinfo:{id:A.id,domain:C._fullLayout[A.id].domain,xaxis:A.xaxis,yaxis:A.yaxis},subplot:A.id,prepFn:function(a,l,u){A.dragOptions.xaxes=[A.xaxis],A.dragOptions.yaxes=[A.yaxis],t=C._fullLayout._invScaleX,e=C._fullLayout._invScaleY;var g=A.dragOptions.dragmode=C._fullLayout.dragmode;y(g)?A.dragOptions.minDrag=1:A.dragOptions.minDrag=void 0,"zoom"===g?(A.dragOptions.moveFn=U,A.dragOptions.clickFn=N,A.dragOptions.doneFn=H,function(t,e,a){var l=S.getBoundingClientRect();n=e-l.left,r=a-l.top,C._fullLayout._calcInverseTransform(C);var u=C._fullLayout._invTransform,g=o.apply3DTransform(u)(n,r);n=g[0],r=g[1],f={a:A.aaxis.range[0],b:A.baxis.range[1],c:A.caxis.range[1]},d=f,h=A.aaxis.range[1]-f.a,p=i(A.graphDiv._fullLayout[A.id].bgcolor).getLuminance(),m="M0,"+A.h+"L"+A.w/2+", 0L"+A.w+","+A.h+"Z",x=!1,k=R.append("path").attr("class","zoombox").attr("transform",s(A.x0,A.y0)).style({fill:p>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",m),T=R.append("path").attr("class","zoombox-corners").attr("transform",s(A.x0,A.y0)).style({fill:c.background,stroke:c.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),A.clearOutline(C)}(0,l,u)):"pan"===g?(A.dragOptions.moveFn=V,A.dragOptions.clickFn=N,A.dragOptions.doneFn=q,f={a:A.aaxis.range[0],b:A.baxis.range[1],c:A.caxis.range[1]},d=f,A.clearOutline(C)):(b(g)||y(g))&&w(a,l,u,A.dragOptions,g)}},S.onmousemove=function(t){v.hover(C,t,A.id),C._fullLayout._lasthover=S,C._fullLayout._hoversubplot=A.id},S.onmouseout=function(t){C._dragging||g.unhover(C,t)},g.init(this.dragOptions)}},73972:function(t,e,n){"use strict";var r=n(47769),i=n(64213),a=n(75138),o=n(41965),s=n(24401).addStyleRule,l=n(1426),c=n(9012),u=n(10820),f=l.extendFlat,h=l.extendDeepAll;function d(t){var n=t.name,i=t.categories,a=t.meta;if(e.modules[n])r.log("Type "+n+" already registered");else{e.subplotsRegistry[t.basePlotModule.name]||function(t){var n=t.name;if(e.subplotsRegistry[n])r.log("Plot type "+n+" already registered.");else for(var i in m(t),e.subplotsRegistry[n]=t,e.componentsRegistry)x(i,t.name)}(t.basePlotModule);for(var o={},l=0;l-1&&(f[d[n]].title={text:""});for(n=0;n")?"":e.html(t).text()}));return e.remove(),n}(_)).replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")).replace(u,"'"),i.isIE()&&(_=(_=(_=_.replace(/"/gi,"'")).replace(/(\('#)([^']*)('\))/gi,'("#$2")')).replace(/(\\')/gi,'"')),_}},75341:function(t,e,n){"use strict";var r=n(71828);t.exports=function(t,e){for(var n=0;nf+c||!r(u))}for(var d=0;da))return e}return void 0!==n?n:t.dflt},e.coerceColor=function(t,e,n){return i(e).isValid()?e:void 0!==n?n:t.dflt},e.coerceEnumerated=function(t,e,n){return t.coerceNumber&&(e=+e),-1!==t.values.indexOf(e)?e:void 0!==n?n:t.dflt},e.getValue=function(t,e){var n;return Array.isArray(t)?e0?e+=n:u<0&&(e-=n)}return e}function D(t){var e=u,n=t.b,i=I(t);return r.inbox(n-e,i-e,w+(i-e)/(i-n)-1)}var R=t[f+"a"],z=t[h+"a"];g=Math.abs(R.r2c(R.range[1])-R.r2c(R.range[0]));var N=r.getDistanceFunction(i,d,p,(function(t){return(d(t)+p(t))/2}));if(r.getClosest(v,N,t),!1!==t.index&&v[t.index].p!==c){T||(C=function(t){return Math.min(M(t),t.p-y.bargroupwidth/2)},P=function(t){return Math.max(A(t),t.p+y.bargroupwidth/2)});var j=v[t.index],F=m.base?j.b+j.s:j.s;t[h+"0"]=t[h+"1"]=z.c2p(j[h],!0),t[h+"LabelVal"]=F;var B=y.extents[y.extents.round(j.p)];t[f+"0"]=R.c2p(b?C(j):B[0],!0),t[f+"1"]=R.c2p(b?P(j):B[1],!0);var U=void 0!==j.orig_p;return t[f+"LabelVal"]=U?j.orig_p:j.p,t.labelLabel=l(R,t[f+"LabelVal"],m[f+"hoverformat"]),t.valueLabel=l(z,t[h+"LabelVal"],m[h+"hoverformat"]),t.baseLabel=l(z,j.b,m[h+"hoverformat"]),t.spikeDistance=(function(t){var e=u,n=t.b,i=I(t);return r.inbox(n-e,i-e,_+(i-e)/(i-n)-1)}(j)+function(t){return L(M(t),A(t),_)}(j))/2,t[f+"Spike"]=R.c2p(j.p,!0),o(j,m,t),t.hovertemplate=m.hovertemplate,t}}function f(t,e){var n=e.mcc||t.marker.color,r=e.mlcc||t.marker.line.color,i=s(t,e);return a.opacity(n)?n:a.opacity(r)&&i?r:void 0}t.exports={hoverPoints:function(t,e,n,r,a){var o=u(t,e,n,r,a);if(o){var s=o.cd,l=s[0].trace,c=s[o.index];return o.color=f(l,c),i.getComponentMethod("errorbars","hoverInfo")(c,l,o),[o]}},hoverOnBars:u,getTraceColor:f}},60822:function(t,e,n){"use strict";t.exports={attributes:n(1486),layoutAttributes:n(43641),supplyDefaults:n(90769).supplyDefaults,crossTraceDefaults:n(90769).crossTraceDefaults,supplyLayoutDefaults:n(13957),calc:n(92290),crossTraceCalc:n(11661).crossTraceCalc,colorbar:n(4898),arraysToCalcdata:n(75341),plot:n(17295).plot,style:n(16688).style,styleOnSelect:n(16688).styleOnSelect,hoverPoints:n(95423).hoverPoints,eventData:n(58065),selectPoints:n(81974),moduleType:"trace",name:"bar",basePlotModule:n(93612),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}},43641:function(t){"use strict";t.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(t,e,n){"use strict";var r=n(73972),i=n(89298),a=n(71828),o=n(43641);t.exports=function(t,e,n){function s(n,r){return a.coerce(t,e,o,n,r)}for(var l=!1,c=!1,u=!1,f={},h=s("barmode"),d=0;d0}function S(t){return"auto"===t?0:t}function E(t,e){var n=Math.PI/180*e,r=Math.abs(Math.sin(n)),i=Math.abs(Math.cos(n));return{x:t.width*i+t.height*r,y:t.width*r+t.height*i}}function C(t,e,n,r,i,a){var o=!!a.isHorizontal,s=!!a.constrained,l=a.angle||0,c=a.anchor||"end",u="end"===c,f="start"===c,h=((a.leftToRight||0)+1)/2,d=1-h,p=i.width,g=i.height,v=Math.abs(e-t),m=Math.abs(r-n),y=v>2*w&&m>2*w?w:0;v-=2*y,m-=2*y;var b=S(l);"auto"!==l||p<=v&&g<=m||!(p>v||g>m)||(p>m||g>v)&&p.01?G:function(t,e,n){return n&&t===e?t:Math.abs(t-e)>=2?G(t):t>e?Math.ceil(t):Math.floor(t)};F=W(F,B,z),B=W(B,F,z),U=W(U,H,!z),H=W(H,U,!z)}var Y=M(a.ensureSingle(I,"path"),L,v,m);if(Y.style("vector-effect",O?"none":"non-scaling-stroke").attr("d",isNaN((B-F)*(H-U))||V&&t._context.staticPlot?"M0,0Z":"M"+F+","+U+"V"+H+"H"+B+"V"+U+"Z").call(l.setClipUrl,e.layerClipId,t),!L.uniformtext.mode&&N){var $=l.makePointStyleFns(f);l.singlePointStyle(c,Y,f,$,t)}!function(t,e,n,r,i,s,c,f,d,v,m){var _,k=e.xaxis,A=e.yaxis,P=t._fullLayout;function L(e,n,r){return a.ensureSingle(e,"text").text(n).attr({class:"bartext bartext-"+_,"text-anchor":"middle","data-notex":1}).call(l.font,r).call(o.convertToTspans,t)}var O=r[0].trace,I="h"===O.orientation,D=function(t,e,n,r,i){var o,s=e[0].trace,l=s.texttemplate;return o=l?function(t,e,n,r,i){var o=e[0].trace,s=a.castOption(o,n,"texttemplate");if(!s)return"";var l,c,f,h,d="histogram"===o.type,p="waterfall"===o.type,g="funnel"===o.type,v="h"===o.orientation;function m(t){return u(c,c.c2l(t),!0).text}function y(t){return u(h,h.c2l(t),!0).text}v?(l="y",c=i,f="x",h=r):(l="x",c=r,f="y",h=i);var b=e[n],w={};w.label=b.p,w.labelLabel=w[l+"Label"]=m(b.p);var _=a.castOption(o,b.i,"text");(0===_||_)&&(w.text=_),w.value=b.s,w.valueLabel=w[f+"Label"]=y(b.s);var k={};x(k,o,b.i),(d||void 0===k.x)&&(k.x=v?w.value:w.label),(d||void 0===k.y)&&(k.y=v?w.label:w.value),(d||void 0===k.xLabel)&&(k.xLabel=v?w.valueLabel:w.labelLabel),(d||void 0===k.yLabel)&&(k.yLabel=v?w.labelLabel:w.valueLabel),p&&(w.delta=+b.rawS||b.s,w.deltaLabel=y(w.delta),w.final=b.v,w.finalLabel=y(w.final),w.initial=w.final-w.delta,w.initialLabel=y(w.initial)),g&&(w.value=b.s,w.valueLabel=y(w.value),w.percentInitial=b.begR,w.percentInitialLabel=a.formatPercent(b.begR),w.percentPrevious=b.difR,w.percentPreviousLabel=a.formatPercent(b.difR),w.percentTotal=b.sumR,w.percenTotalLabel=a.formatPercent(b.sumR));var T=a.castOption(o,b.i,"customdata");return T&&(w.customdata=T),a.texttemplateString(s,w,t._d3locale,k,w,o._meta||{})}(t,e,n,r,i):s.textinfo?function(t,e,n,r){var i=t[0].trace,o="h"===i.orientation,s="waterfall"===i.type,l="funnel"===i.type;function c(t){return u(o?r:n,t,!0).text}function f(t){return u(o?n:r,+t,!0).text}var h,d=i.textinfo,p=t[e],g=d.split("+"),v=[],m=function(t){return-1!==g.indexOf(t)};if(m("label")&&v.push(c(t[e].p)),m("text")&&(0===(h=a.castOption(i,p.i,"text"))||h)&&v.push(h),s){var y=+p.rawS||p.s,b=p.v,x=b-y;m("initial")&&v.push(f(x)),m("delta")&&v.push(f(y)),m("final")&&v.push(f(b))}if(l){m("value")&&v.push(f(p.s));var w=0;m("percent initial")&&w++,m("percent previous")&&w++,m("percent total")&&w++;var _=w>1;m("percent initial")&&(h=a.formatPercent(p.begR),_&&(h+=" of initial"),v.push(h)),m("percent previous")&&(h=a.formatPercent(p.difR),_&&(h+=" of previous"),v.push(h)),m("percent total")&&(h=a.formatPercent(p.sumR),_&&(h+=" of total"),v.push(h))}return v.join("
")}(e,n,r,i):g.getValue(s.text,n),g.coerceString(y,o)}(P,r,i,k,A);_=function(t,e){var n=g.getValue(t.textposition,e);return g.coerceEnumerated(b,n)}(O,i);var R="stack"===v.mode||"relative"===v.mode,z=r[i],N=!R||z._outmost;if(D&&"none"!==_&&(!z.isBlank&&s!==c&&f!==d||"auto"!==_&&"inside"!==_)){var j=P.font,F=p.getBarColor(r[i],O),B=p.getInsideTextFont(O,i,j,F),U=p.getOutsideTextFont(O,i,j),H=n.datum();I?"log"===k.type&&H.s0<=0&&(s=k.range[0]0&&W>0&&(G<=$&&W<=X||G<=X&&W<=$||(I?$>=G*(X/W):X>=W*($/G)))?_="inside":(_="outside",V.remove(),V=null)):_="inside"),!V){var K=(V=L(n,D,Y=a.ensureUniformFontSize(t,"outside"===_?U:B))).attr("transform");if(V.attr("transform",""),G=(q=l.bBox(V.node())).width,W=q.height,V.attr("transform",K),G<=0||W<=0)return void V.remove()}var Z,J=O.textangle;Z="outside"===_?function(t,e,n,r,i,a){var o,s=!!a.isHorizontal,l=!!a.constrained,c=a.angle||0,u=i.width,f=i.height,h=Math.abs(e-t),d=Math.abs(r-n);o=s?d>2*w?w:0:h>2*w?w:0;var p=1;l&&(p=s?Math.min(1,d/f):Math.min(1,h/u));var g=S(c),v=E(i,g),m=(s?v.x:v.y)/2,y=(i.left+i.right)/2,b=(i.top+i.bottom)/2,x=(t+e)/2,_=(n+r)/2,k=0,M=0,A=s?T(e,t):T(n,r);return s?(x=e-A*o,k=A*m):(_=r+A*o,M=-A*m),{textX:y,textY:b,targetX:x,targetY:_,anchorX:k,anchorY:M,scale:p,rotate:g}}(s,c,f,d,q,{isHorizontal:I,constrained:"both"===O.constraintext||"outside"===O.constraintext,angle:J}):C(s,c,f,d,q,{isHorizontal:I,constrained:"both"===O.constraintext||"inside"===O.constraintext,angle:J,anchor:O.insidetextanchor}),Z.fontSize=Y.size,h("histogram"===O.type?"bar":O.type,Z,P),z.transform=Z;var Q=M(V,P,v,m);a.setTransormAndDisplay(Q,Z)}else n.select("text").remove()}(t,e,I,n,d,F,B,U,H,v,m),e.layerClipId&&l.hideOutsideRangePoint(c,I.select("text"),_,P,f.xcalendar,f.ycalendar)}));var U=!1===f.cliponaxis;l.setClipUrl(c,U?null:e.layerClipId,t)}));c.getComponentMethod("errorbars","plot")(t,I,e,v)},toMoveInsideBar:C}},81974:function(t){"use strict";function e(t,e,n,r,i){var a=e.c2p(r?t.s0:t.p0,!0),o=e.c2p(r?t.s1:t.p1,!0),s=n.c2p(r?t.p0:t.s0,!0),l=n.c2p(r?t.p1:t.s1,!0);return i?[(a+o)/2,(s+l)/2]:r?[o,(s+l)/2]:[(a+o)/2,l]}t.exports=function(t,n){var r,i=t.cd,a=t.xaxis,o=t.yaxis,s=i[0].trace,l="funnel"===s.type,c="h"===s.orientation,u=[];if(!1===n)for(r=0;r1||0===i.bargap&&0===i.bargroupgap&&!t[0].trace.marker.line.width)&&r.select(this).attr("shape-rendering","crispEdges")})),e.selectAll("g.points").each((function(e){p(r.select(this),e[0].trace,t)})),s.getComponentMethod("errorbars","style")(e)},styleTextPoints:g,styleOnSelect:function(t,e,n){var i=e[0].trace;i.selectedpoints?function(t,e,n){a.selectedPointStyle(t.selectAll("path"),e),function(t,e,n){t.each((function(t){var i,s=r.select(this);if(t.selected){i=o.ensureUniformFontSize(n,v(s,t,e,n));var l=e.selected.textfont&&e.selected.textfont.color;l&&(i.color=l),a.font(s,i)}else a.selectedTextStyle(s,e)}))}(t.selectAll("text"),e,n)}(n,i,t):(p(n,i,t),s.getComponentMethod("errorbars","style")(n))},getInsideTextFont:y,getOutsideTextFont:b,getBarColor:w,resizeText:l}},98340:function(t,e,n){"use strict";var r=n(7901),i=n(52075).hasColorscale,a=n(1586),o=n(71828).coercePattern;t.exports=function(t,e,n,s,l){var c=n("marker.color",s),u=i(t,"marker");u&&a(t,e,l,n,{prefix:"marker.",cLetter:"c"}),n("marker.line.color",r.defaultLine),i(t,"marker.line")&&a(t,e,l,n,{prefix:"marker.line.",cLetter:"c"}),n("marker.line.width"),n("marker.opacity"),o(n,"marker.pattern",c,u),n("selected.marker.color"),n("unselected.marker.color")}},72597:function(t,e,n){"use strict";var r=n(39898),i=n(71828);function a(t){return"_"+t+"Text_minsize"}t.exports={recordMinTextSize:function(t,e,n){if(n.uniformtext.mode){var r=a(t),i=n.uniformtext.minsize,o=e.scale*e.fontSize;e.hide=oh.range[1]&&(b+=Math.PI),r.getClosest(c,(function(t){return g(y,b,[t.rp0,t.rp1],[t.thetag0,t.thetag1],p)?v+Math.min(1,Math.abs(t.thetag1-t.thetag0)/m)-1+(t.rp1-y)/(t.rp1-t.rp0)-1:1/0}),t),!1!==t.index){var x=c[t.index];t.x0=t.x1=x.ct[0],t.y0=t.y1=x.ct[1];var w=i.extendFlat({},x,{r:x.s,theta:x.p});return o(x,u,t),s(w,u,f,t),t.hovertemplate=u.hovertemplate,t.color=a(u,x),t.xLabelVal=t.yLabelVal=void 0,x.s<0&&(t.idealAlign="left"),[t]}}},23381:function(t,e,n){"use strict";t.exports={moduleType:"trace",name:"barpolar",basePlotModule:n(23580),categories:["polar","bar","showLegend"],attributes:n(55023),layoutAttributes:n(40151),supplyDefaults:n(6135),supplyLayoutDefaults:n(19860),calc:n(74692).calc,crossTraceCalc:n(74692).crossTraceCalc,plot:n(60173),colorbar:n(4898),formatLabels:n(98608),style:n(16688).style,styleOnSelect:n(16688).styleOnSelect,hoverPoints:n(27379),selectPoints:n(81974),meta:{}}},40151:function(t){"use strict";t.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}},19860:function(t,e,n){"use strict";var r=n(71828),i=n(40151);t.exports=function(t,e,n){var a,o={};function s(n,o){return r.coerce(t[a]||{},e[a],i,n,o)}for(var l=0;l0?(c=o,u=l):(c=l,u=o);var f=[s.findEnclosingVertexAngles(c,t.vangles)[0],(c+u)/2,s.findEnclosingVertexAngles(u,t.vangles)[1]];return s.pathPolygonAnnulus(r,i,c,u,f,e,n)}:function(t,r,i,o){return a.pathAnnulus(t,r,i,o,e,n)}}(e),p=e.layers.frontplot.select("g.barlayer");a.makeTraceGroups(p,n,"trace bars").each((function(){var n=r.select(this),s=a.ensureSingle(n,"g","points").selectAll("g.point").data(a.identity);s.enter().append("g").style("vector-effect",l?"none":"non-scaling-stroke").style("stroke-miterlimit",2).classed("point",!0),s.exit().remove(),s.each((function(t){var e,n=r.select(this),o=t.rp0=f.c2p(t.s0),s=t.rp1=f.c2p(t.s1),l=t.thetag0=h.c2g(t.p0),p=t.thetag1=h.c2g(t.p1);if(i(o)&&i(s)&&i(l)&&i(p)&&o!==s&&l!==p){var g=f.c2g(t.s1),v=(l+p)/2;t.ct=[c.c2p(g*Math.cos(v)),u.c2p(g*Math.sin(v))],e=d(o,s,l,p)}else e="M0,0Z";a.ensureSingle(n,"path").attr("d",e)})),o.setClipUrl(n,e._hasClipOnAxisFalse?e.clipIds.forTraces:null,t)}))}},53522:function(t,e,n){"use strict";var r=n(82196),i=n(1486),a=n(22399),o=n(12663).axisHoverFormat,s=n(5386).f,l=n(1426).extendFlat,c=r.marker,u=c.line;t.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:r.xperiod,yperiod:r.yperiod,xperiod0:r.xperiod0,yperiod0:r.yperiod0,xperiodalignment:r.xperiodalignment,yperiodalignment:r.yperiodalignment,xhoverformat:o("x"),yhoverformat:o("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:l({},c.symbol,{arrayOk:!1,editType:"plot"}),opacity:l({},c.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:l({},c.angle,{arrayOk:!1,editType:"calc"}),size:l({},c.size,{arrayOk:!1,editType:"calc"}),color:l({},c.color,{arrayOk:!1,editType:"style"}),line:{color:l({},u.color,{arrayOk:!1,dflt:a.defaultLine,editType:"style"}),width:l({},u.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:r.fillcolor,whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},offsetgroup:i.offsetgroup,alignmentgroup:i.alignmentgroup,selected:{marker:r.selected.marker,editType:"style"},unselected:{marker:r.unselected.marker,editType:"style"},text:l({},r.text,{}),hovertext:l({},r.hovertext,{}),hovertemplate:s({}),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"}}},48518:function(t,e,n){"use strict";var r=n(92770),i=n(89298),a=n(42973),o=n(71828),s=n(50606).BADNUM,l=o._;t.exports=function(t,e){var n,c,y,b,x,w,_,k=t._fullLayout,T=i.getFromId(t,e.xaxis||"x"),M=i.getFromId(t,e.yaxis||"y"),A=[],S="violin"===e.type?"_numViolins":"_numBoxes";"h"===e.orientation?(y=T,b="x",x=M,w="y",_=!!e.yperiodalignment):(y=M,b="y",x=T,w="x",_=!!e.xperiodalignment);var E,C,P,L,O,I,D=function(t,e,n,i){var s,l=e in t,c=e+"0"in t,u="d"+e in t;if(l||c&&u){var f=n.makeCalcdata(t,e);return[a(t,n,e,f).vals,f]}s=c?t[e+"0"]:"name"in t&&("category"===n.type||r(t.name)&&-1!==["linear","log"].indexOf(n.type)||o.isDateTime(t.name)&&"date"===n.type)?t.name:i;for(var h="multicategory"===n.type?n.r2c_just_indices(s):n.d2c(s,0,t[e+"calendar"]),d=t._length,p=new Array(d),g=0;gE.uf};if(e._hasPreCompStats){var U=e[b],H=function(t){return y.d2c((e[t]||[])[n])},V=1/0,q=-1/0;for(n=0;n=E.q1&&E.q3>=E.med){var W=H("lowerfence");E.lf=W!==s&&W<=E.q1?W:d(E,P,L);var Y=H("upperfence");E.uf=Y!==s&&Y>=E.q3?Y:p(E,P,L);var $=H("mean");E.mean=$!==s?$:L?o.mean(P,L):(E.q1+E.q3)/2;var X=H("sd");E.sd=$!==s&&X>=0?X:L?o.stdev(P,L,E.mean):E.q3-E.q1,E.lo=g(E),E.uo=v(E);var K=H("notchspan");K=K!==s&&K>0?K:m(E,L),E.ln=E.med-K,E.un=E.med+K;var Z=E.lf,J=E.uf;e.boxpoints&&P.length&&(Z=Math.min(Z,P[0]),J=Math.max(J,P[L-1])),e.notched&&(Z=Math.min(Z,E.ln),J=Math.max(J,E.un)),E.min=Z,E.max=J}else{var Q;o.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+E.q1,"median = "+E.med,"q3 = "+E.q3].join("\n")),Q=E.med!==s?E.med:E.q1!==s?E.q3!==s?(E.q1+E.q3)/2:E.q1:E.q3!==s?E.q3:0,E.med=Q,E.q1=E.q3=Q,E.lf=E.uf=Q,E.mean=E.sd=Q,E.ln=E.un=Q,E.min=E.max=Q}V=Math.min(V,E.min),q=Math.max(q,E.max),E.pts2=C.filter(B),A.push(E)}}e._extremes[y._id]=i.findExtremes(y,[V,q],{padded:!0})}else{var tt=y.makeCalcdata(e,b),et=function(t,e){for(var n=t.length,r=new Array(n+1),i=0;i=0&&it0){var ut,ft;(E={}).pos=E[w]=j[n],C=E.pts=rt[n].sort(f),L=(P=E[b]=C.map(h)).length,E.min=P[0],E.max=P[L-1],E.mean=o.mean(P,L),E.sd=o.stdev(P,L,E.mean),E.med=o.interp(P,.5),L%2&&(lt||ct)?(lt?(ut=P.slice(0,L/2),ft=P.slice(L/2+1)):ct&&(ut=P.slice(0,L/2+1),ft=P.slice(L/2)),E.q1=o.interp(ut,.5),E.q3=o.interp(ft,.5)):(E.q1=o.interp(P,.25),E.q3=o.interp(P,.75)),E.lf=d(E,P,L),E.uf=p(E,P,L),E.lo=g(E),E.uo=v(E);var ht=m(E,L);E.ln=E.med-ht,E.un=E.med+ht,at=Math.min(at,E.ln),ot=Math.max(ot,E.un),E.pts2=C.filter(B),A.push(E)}e._extremes[y._id]=i.findExtremes(y,e.notched?tt.concat([at,ot]):tt,{padded:!0})}return function(t,e){if(o.isArrayOrTypedArray(e.selectedpoints))for(var n=0;n0?(A[0].t={num:k[S],dPos:F,posLetter:w,valLetter:b,labels:{med:l(t,"median:"),min:l(t,"min:"),q1:l(t,"q1:"),q3:l(t,"q3:"),max:l(t,"max:"),mean:"sd"===e.boxmean?l(t,"mean \xb1 \u03c3:"):l(t,"mean:"),lf:l(t,"lower fence:"),uf:l(t,"upper fence:")}},k[S]++,A):[{t:{empty:!0}}]};var c={text:"tx",hovertext:"htx"};function u(t,e,n){for(var r in c)o.isArrayOrTypedArray(e[r])&&(Array.isArray(n)?o.isArrayOrTypedArray(e[r][n[0]])&&(t[c[r]]=e[r][n[0]][n[1]]):t[c[r]]=e[r][n])}function f(t,e){return t.v-e.v}function h(t){return t.v}function d(t,e,n){return 0===n?t.q1:Math.min(t.q1,e[Math.min(o.findBin(2.5*t.q1-1.5*t.q3,e,!0)+1,n-1)])}function p(t,e,n){return 0===n?t.q3:Math.max(t.q3,e[Math.max(o.findBin(2.5*t.q3-1.5*t.q1,e),0)])}function g(t){return 4*t.q1-3*t.q3}function v(t){return 4*t.q3-3*t.q1}function m(t,e){return 0===e?0:1.57*(t.q3-t.q1)/Math.sqrt(e)}},37188:function(t,e,n){"use strict";var r=n(89298),i=n(71828),a=n(99082).getAxisGroup,o=["v","h"];function s(t,e,n,o){var s,l,c,u=e.calcdata,f=e._fullLayout,h=o._id,d=h.charAt(0),p=[],g=0;for(s=0;s1,x=1-f[t+"gap"],w=1-f[t+"groupgap"];for(s=0;s0){var q=E.pointpos,G=E.jitter,W=E.marker.size/2,Y=0;q+G>=0&&((Y=H*(q+G))>A?(V=!0,B=W,j=Y):Y>z&&(B=W,j=A)),Y<=A&&(j=A);var $=0;q-G<=0&&(($=-H*(q-G))>S?(V=!0,U=W,F=$):$>N&&(U=W,F=S)),$<=S&&(F=S)}else j=A,F=S;var X=new Array(c.length);for(l=0;l0?(v="v",m=b>0?Math.min(w,x):Math.min(x)):b>0?(v="h",m=Math.min(w)):m=0;if(m){e._length=m;var S=n("orientation",v);e._hasPreCompStats?"v"===S&&0===b?(n("x0",0),n("dx",1)):"h"===S&&0===y&&(n("y0",0),n("dy",1)):"v"===S&&0===b?n("x0"):"h"===S&&0===y&&n("y0"),i.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x","y"],a)}else e.visible=!1}function f(t,e,n,i){var a=i.prefix,o=r.coerce2(t,e,c,"marker.outliercolor"),s=n("marker.line.outliercolor"),l="outliers";e._hasPreCompStats?l="all":(o||s)&&(l="suspectedoutliers");var u=n(a+"points",l);u?(n("jitter","all"===u?.3:0),n("pointpos","all"===u?-1.5:0),n("marker.symbol"),n("marker.opacity"),n("marker.size"),n("marker.angle"),n("marker.color",e.line.color),n("marker.line.color"),n("marker.line.width"),"suspectedoutliers"===u&&(n("marker.line.outliercolor",e.marker.color),n("marker.line.outlierwidth")),n("selected.marker.color"),n("unselected.marker.color"),n("selected.marker.size"),n("unselected.marker.size"),n("text"),n("hovertext")):delete e.marker;var f=n("hoveron");"all"!==f&&-1===f.indexOf("points")||n("hovertemplate"),r.coerceSelectionMarkerOpacity(e,n)}t.exports={supplyDefaults:function(t,e,n,i){function s(n,i){return r.coerce(t,e,c,n,i)}if(u(t,e,s,i),!1!==e.visible){o(t,e,i,s),s("xhoverformat"),s("yhoverformat");var l=e._hasPreCompStats;l&&(s("lowerfence"),s("upperfence")),s("line.color",(t.marker||{}).color||n),s("line.width"),s("fillcolor",a.addOpacity(e.line.color,.5));var h=!1;if(l){var d=s("mean"),p=s("sd");d&&d.length&&(h=!0,p&&p.length&&(h="sd"))}s("boxmean",h),s("whiskerwidth"),s("width"),s("quartilemethod");var g=!1;if(l){var v=s("notchspan");v&&v.length&&(g=!0)}else r.validate(t.notchwidth,c.notchwidth)&&(g=!0);s("notched",g)&&s("notchwidth"),f(t,e,s,{prefix:"box"})}},crossTraceDefaults:function(t,e){var n,i;function a(t){return r.coerce(i._input,i,c,t)}for(var o=0;ot.lo&&(w.so=!0)}return a}));p.enter().append("path").classed("point",!0),p.exit().remove(),p.call(a.translatePoints,l,c)}function u(t,e,n,a){var o,s,l=e.val,c=e.pos,u=!!c.rangebreaks,f=a.bPos,h=a.bPosPxOffset||0,d=n.boxmean||(n.meanline||{}).visible;Array.isArray(a.bdPos)?(o=a.bdPos[0],s=a.bdPos[1]):(o=a.bdPos,s=a.bdPos);var p=t.selectAll("path.mean").data("box"===n.type&&n.boxmean||"violin"===n.type&&n.box.visible&&n.meanline.visible?i.identity:[]);p.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),p.exit().remove(),p.each((function(t){var e=c.c2l(t.pos+f,!0),i=c.l2p(e-o)+h,a=c.l2p(e+s)+h,p=u?(i+a)/2:c.l2p(e)+h,g=l.c2p(t.mean,!0),v=l.c2p(t.mean-t.sd,!0),m=l.c2p(t.mean+t.sd,!0);"h"===n.orientation?r.select(this).attr("d","M"+g+","+i+"V"+a+("sd"===d?"m0,0L"+v+","+p+"L"+g+","+i+"L"+m+","+p+"Z":"")):r.select(this).attr("d","M"+i+","+g+"H"+a+("sd"===d?"m0,0L"+p+","+v+"L"+i+","+g+"L"+p+","+m+"Z":""))}))}t.exports={plot:function(t,e,n,a){var o=t._context.staticPlot,s=e.xaxis,f=e.yaxis;i.makeTraceGroups(a,n,"trace boxes").each((function(t){var e,n,i=r.select(this),a=t[0],h=a.t,d=a.trace;h.wdPos=h.bdPos*d.whiskerwidth,!0!==d.visible||h.empty?i.remove():("h"===d.orientation?(e=f,n=s):(e=s,n=f),l(i,{pos:e,val:n},d,h,o),c(i,{x:s,y:f},d,h),u(i,{pos:e,val:n},d,h))}))},plotBoxAndWhiskers:l,plotPoints:c,plotBoxMean:u}},24626:function(t){"use strict";t.exports=function(t,e){var n,r,i=t.cd,a=t.xaxis,o=t.yaxis,s=[];if(!1===e)for(n=0;n=10)return null;for(var n=1/0,a=-1/0,o=t.length,s=0;s0?Math.floor:Math.ceil,O=C>0?Math.ceil:Math.floor,I=C>0?Math.min:Math.max,D=C>0?Math.max:Math.min,R=L(S+P),z=O(E-P),N=[[f=A(S)]];for(a=R;a*C=0;i--)a[u-i]=t[f][i],o[u-i]=e[f][i];for(s.push({x:a,y:o,bicubic:l}),i=f,a=[],o=[];i>=0;i--)a[f-i]=t[i][0],o[f-i]=e[i][0];return s.push({x:a,y:o,bicubic:c}),s}},20347:function(t,e,n){"use strict";var r=n(89298),i=n(1426).extendFlat;t.exports=function(t,e,n){var a,o,s,l,c,u,f,h,d,p,g,v,m,y,b=t["_"+e],x=t[e+"axis"],w=x._gridlines=[],_=x._minorgridlines=[],k=x._boundarylines=[],T=t["_"+n],M=t[n+"axis"];"array"===x.tickmode&&(x.tickvals=b.slice());var A=t._xctrl,S=t._yctrl,E=A[0].length,C=A.length,P=t._a.length,L=t._b.length;r.prepTicks(x),"array"===x.tickmode&&delete x.tickvals;var O=x.smoothing?3:1;function I(r){var i,a,o,s,l,c,u,f,d,p,g,v,m=[],y=[],b={};if("b"===e)for(a=t.b2j(r),o=Math.floor(Math.max(0,Math.min(L-2,a))),s=a-o,b.length=L,b.crossLength=P,b.xy=function(e){return t.evalxy([],e,a)},b.dxy=function(e,n){return t.dxydi([],e,o,n,s)},i=0;i0&&(d=t.dxydi([],i-1,o,0,s),m.push(l[0]+d[0]/3),y.push(l[1]+d[1]/3),p=t.dxydi([],i-1,o,1,s),m.push(f[0]-p[0]/3),y.push(f[1]-p[1]/3)),m.push(f[0]),y.push(f[1]),l=f;else for(i=t.a2i(r),c=Math.floor(Math.max(0,Math.min(P-2,i))),u=i-c,b.length=P,b.crossLength=L,b.xy=function(e){return t.evalxy([],i,e)},b.dxy=function(e,n){return t.dxydj([],c,e,u,n)},a=0;a0&&(g=t.dxydj([],c,a-1,u,0),m.push(l[0]+g[0]/3),y.push(l[1]+g[1]/3),v=t.dxydj([],c,a-1,u,1),m.push(f[0]-v[0]/3),y.push(f[1]-v[1]/3)),m.push(f[0]),y.push(f[1]),l=f;return b.axisLetter=e,b.axis=x,b.crossAxis=M,b.value=r,b.constvar=n,b.index=h,b.x=m,b.y=y,b.smoothing=M.smoothing,b}function D(r){var i,a,o,s,l,c=[],u=[],f={};if(f.length=b.length,f.crossLength=T.length,"b"===e)for(o=Math.max(0,Math.min(L-2,r)),l=Math.min(1,Math.max(0,r-o)),f.xy=function(e){return t.evalxy([],e,r)},f.dxy=function(e,n){return t.dxydi([],e,o,n,l)},i=0;ib.length-1||w.push(i(D(o),{color:x.gridcolor,width:x.gridwidth,dash:x.griddash}));for(h=u;hb.length-1)&&!(g<0||g>b.length-1))for(v=b[s],m=b[g],a=0;ab[b.length-1]||_.push(i(I(p),{color:x.minorgridcolor,width:x.minorgridwidth,dash:x.minorgriddash}));x.startline&&k.push(i(D(0),{color:x.startlinecolor,width:x.startlinewidth})),x.endline&&k.push(i(D(b.length-1),{color:x.endlinecolor,width:x.endlinewidth}))}else{for(l=5e-15,u=(c=[Math.floor((b[b.length-1]-x.tick0)/x.dtick*(1+l)),Math.ceil((b[0]-x.tick0)/x.dtick/(1+l))].sort((function(t,e){return t-e})))[0],f=c[1],h=u;h<=f;h++)d=x.tick0+x.dtick*h,w.push(i(I(d),{color:x.gridcolor,width:x.gridwidth,dash:x.griddash}));for(h=u-1;hb[b.length-1]||_.push(i(I(p),{color:x.minorgridcolor,width:x.minorgridwidth,dash:x.minorgriddash}));x.startline&&k.push(i(I(b[0]),{color:x.startlinecolor,width:x.startlinewidth})),x.endline&&k.push(i(I(b[b.length-1]),{color:x.endlinecolor,width:x.endlinewidth}))}}},83311:function(t,e,n){"use strict";var r=n(89298),i=n(1426).extendFlat;t.exports=function(t,e){var n,a,o,s=e._labels=[],l=e._gridlines;for(n=0;ne.length&&(t=t.slice(0,e.length)):t=[],i=0;i90&&(d-=180,l=-l),{angle:d,flip:l,p:t.c2p(r,e,n),offsetMultplier:c}}},89740:function(t,e,n){"use strict";var r=n(39898),i=n(91424),a=n(27669),o=n(67961),s=n(11651),l=n(63893),c=n(71828),u=c.strRotate,f=c.strTranslate,h=n(18783);function d(t,e,n,s,l,c,u){var f="const-"+l+"-lines",h=n.selectAll("."+f).data(c);h.enter().append("path").classed(f,!0).style("vector-effect",u?"none":"non-scaling-stroke"),h.each((function(n){var s=n,l=s.x,c=s.y,u=a([],l,t.c2p),f=a([],c,e.c2p),h="M"+o(u,f,s.smoothing);r.select(this).attr("d",h).style("stroke-width",s.width).style("stroke",s.color).style("stroke-dasharray",i.dashStyle(s.dash,s.width)).style("fill","none")})),h.exit().remove()}function p(t,e,n,a,o,c,h,d){var p=c.selectAll("text."+d).data(h);p.enter().append("text").classed(d,!0);var g=0,v={};return p.each((function(o,c){var h;if("auto"===o.axis.tickangle)h=s(a,e,n,o.xy,o.dxy);else{var d=(o.axis.tickangle+180)*Math.PI/180;h=s(a,e,n,o.xy,[Math.cos(d),Math.sin(d)])}c||(v={angle:h.angle,flip:h.flip});var p=(o.endAnchor?-1:1)*h.flip,m=r.select(this).attr({"text-anchor":p>0?"start":"end","data-notex":1}).call(i.font,o.font).text(o.text).call(l.convertToTspans,t),y=i.bBox(this);m.attr("transform",f(h.p[0],h.p[1])+u(h.angle)+f(o.axis.labelpadding*p,.3*y.height)),g=Math.max(g,y.width+o.axis.labelpadding)})),p.exit().remove(),v.maxExtent=g,v}t.exports=function(t,e,n,i){var l=t._context.staticPlot,u=e.xaxis,f=e.yaxis,h=t._fullLayout._clips;c.makeTraceGroups(i,n,"trace").each((function(e){var n=r.select(this),i=e[0],g=i.trace,v=g.aaxis,y=g.baxis,b=c.ensureSingle(n,"g","minorlayer"),x=c.ensureSingle(n,"g","majorlayer"),w=c.ensureSingle(n,"g","boundarylayer"),_=c.ensureSingle(n,"g","labellayer");n.style("opacity",g.opacity),d(u,f,x,0,"a",v._gridlines,!0),d(u,f,x,0,"b",y._gridlines,!0),d(u,f,b,0,"a",v._minorgridlines,!0),d(u,f,b,0,"b",y._minorgridlines,!0),d(u,f,w,0,"a-boundary",v._boundarylines,l),d(u,f,w,0,"b-boundary",y._boundarylines,l);var k=p(t,u,f,g,0,_,v._labels,"a-label"),T=p(t,u,f,g,0,_,y._labels,"b-label");!function(t,e,n,r,i,a,o,l){var u,f,h,d,p=c.aggNums(Math.min,null,n.a),g=c.aggNums(Math.max,null,n.a),v=c.aggNums(Math.min,null,n.b),y=c.aggNums(Math.max,null,n.b);u=.5*(p+g),f=v,h=n.ab2xy(u,f,!0),d=n.dxyda_rough(u,f),void 0===o.angle&&c.extendFlat(o,s(n,i,a,h,n.dxydb_rough(u,f))),m(t,e,n,0,h,d,n.aaxis,i,a,o,"a-title"),u=p,f=.5*(v+y),h=n.ab2xy(u,f,!0),d=n.dxydb_rough(u,f),void 0===l.angle&&c.extendFlat(l,s(n,i,a,h,n.dxyda_rough(u,f))),m(t,e,n,0,h,d,n.baxis,i,a,l,"b-title")}(t,_,g,0,u,f,k,T),function(t,e,n,r,i){var s,l,u,f,h=n.select("#"+t._clipPathId);h.size()||(h=n.append("clipPath").classed("carpetclip",!0));var d=c.ensureSingle(h,"path","carpetboundary"),p=e.clipsegments,g=[];for(f=0;f90&&y<270,x=r.select(this);x.text(h.title.text).call(l.convertToTspans,t),b&&(w=(-l.lineCount(x)+v)*g*a-w),x.attr("transform",f(e.p[0],e.p[1])+u(e.angle)+f(0,w)).attr("text-anchor","middle").call(i.font,h.title.font)})),x.exit().remove()}},11435:function(t,e,n){"use strict";var r=n(35509),i=n(65888).findBin,a=n(45664),o=n(20349),s=n(54495),l=n(73057);t.exports=function(t){var e=t._a,n=t._b,c=e.length,u=n.length,f=t.aaxis,h=t.baxis,d=e[0],p=e[c-1],g=n[0],v=n[u-1],m=e[e.length-1]-e[0],y=n[n.length-1]-n[0],b=m*r.RELATIVE_CULL_TOLERANCE,x=y*r.RELATIVE_CULL_TOLERANCE;d-=b,p+=b,g-=x,v+=x,t.isVisible=function(t,e){return t>d&&tg&&ep||ev},t.setScale=function(){var e=t._x,n=t._y,r=a(t._xctrl,t._yctrl,e,n,f.smoothing,h.smoothing);t._xctrl=r[0],t._yctrl=r[1],t.evalxy=o([t._xctrl,t._yctrl],c,u,f.smoothing,h.smoothing),t.dxydi=s([t._xctrl,t._yctrl],f.smoothing,h.smoothing),t.dxydj=l([t._xctrl,t._yctrl],f.smoothing,h.smoothing)},t.i2a=function(t){var n=Math.max(0,Math.floor(t[0]),c-2),r=t[0]-n;return(1-r)*e[n]+r*e[n+1]},t.j2b=function(t){var e=Math.max(0,Math.floor(t[1]),c-2),r=t[1]-e;return(1-r)*n[e]+r*n[e+1]},t.ij2ab=function(e){return[t.i2a(e[0]),t.j2b(e[1])]},t.a2i=function(t){var n=Math.max(0,Math.min(i(t,e),c-2)),r=e[n],a=e[n+1];return Math.max(0,Math.min(c-1,n+(t-r)/(a-r)))},t.b2j=function(t){var e=Math.max(0,Math.min(i(t,n),u-2)),r=n[e],a=n[e+1];return Math.max(0,Math.min(u-1,e+(t-r)/(a-r)))},t.ab2ij=function(e){return[t.a2i(e[0]),t.b2j(e[1])]},t.i2c=function(e,n){return t.evalxy([],e,n)},t.ab2xy=function(r,i,a){if(!a&&(re[c-1]|in[u-1]))return[!1,!1];var o=t.a2i(r),s=t.b2j(i),l=t.evalxy([],o,s);if(a){var f,h,d,p,g=0,v=0,m=[];re[c-1]?(f=c-2,h=1,g=(r-e[c-1])/(e[c-1]-e[c-2])):h=o-(f=Math.max(0,Math.min(c-2,Math.floor(o)))),in[u-1]?(d=u-2,p=1,v=(i-n[u-1])/(n[u-1]-n[u-2])):p=s-(d=Math.max(0,Math.min(u-2,Math.floor(s)))),g&&(t.dxydi(m,f,d,h,p),l[0]+=m[0]*g,l[1]+=m[1]*g),v&&(t.dxydj(m,f,d,h,p),l[0]+=m[0]*v,l[1]+=m[1]*v)}return l},t.c2p=function(t,e,n){return[e.c2p(t[0]),n.c2p(t[1])]},t.p2x=function(t,e,n){return[e.p2c(t[0]),n.p2c(t[1])]},t.dadi=function(t){var n=Math.max(0,Math.min(e.length-2,t));return e[n+1]-e[n]},t.dbdj=function(t){var e=Math.max(0,Math.min(n.length-2,t));return n[e+1]-n[e]},t.dxyda=function(e,n,r,i){var a=t.dxydi(null,e,n,r,i),o=t.dadi(e,r);return[a[0]/o,a[1]/o]},t.dxydb=function(e,n,r,i){var a=t.dxydj(null,e,n,r,i),o=t.dbdj(n,i);return[a[0]/o,a[1]/o]},t.dxyda_rough=function(e,n,r){var i=m*(r||.1),a=t.ab2xy(e+i,n,!0),o=t.ab2xy(e-i,n,!0);return[.5*(a[0]-o[0])/i,.5*(a[1]-o[1])/i]},t.dxydb_rough=function(e,n,r){var i=y*(r||.1),a=t.ab2xy(e,n+i,!0),o=t.ab2xy(e,n-i,!0);return[.5*(a[0]-o[0])/i,.5*(a[1]-o[1])/i]},t.dpdx=function(t){return t._m},t.dpdy=function(t){return t._m}}},72505:function(t,e,n){"use strict";var r=n(71828);t.exports=function(t,e,n){var i,a,o,s=[],l=[],c=t[0].length,u=t.length;function f(e,n){var r,i=0,a=0;return e>0&&void 0!==(r=t[n][e-1])&&(a++,i+=r),e0&&void 0!==(r=t[n-1][e])&&(a++,i+=r),n0&&a0&&i1e-5);return r.log("Smoother converged to",T,"after",M,"iterations"),t}},19237:function(t,e,n){"use strict";var r=n(71828).isArray1D;t.exports=function(t,e,n){var i=n("x"),a=i&&i.length,o=n("y"),s=o&&o.length;if(!a&&!s)return!1;if(e._cheater=!i,a&&!r(i)||s&&!r(o))e._length=null;else{var l=a?i.length:1/0;s&&(l=Math.min(l,o.length)),e.a&&e.a.length&&(l=Math.min(l,e.a.length)),e.b&&e.b.length&&(l=Math.min(l,e.b.length)),e._length=l}return!0}},69568:function(t,e,n){"use strict";var r=n(5386).f,i=n(19316),a=n(50693),o=n(9012),s=n(22399).defaultLine,l=n(1426).extendFlat,c=i.marker.line;t.exports=l({locations:{valType:"data_array",editType:"calc"},locationmode:i.locationmode,z:{valType:"data_array",editType:"calc"},geojson:l({},i.geojson,{}),featureidkey:i.featureidkey,text:l({},i.text,{}),hovertext:l({},i.hovertext,{}),marker:{line:{color:l({},c.color,{dflt:s}),width:l({},c.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style"},editType:"calc"},selected:{marker:{opacity:i.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:i.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:l({},o.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:r(),showlegend:l({},o.showlegend,{dflt:!1})},a("",{cLetter:"z",editTypeOverride:"calc"}))},38675:function(t,e,n){"use strict";var r=n(92770),i=n(50606).BADNUM,a=n(78803),o=n(75225),s=n(66279);function l(t){return t&&"string"===typeof t}t.exports=function(t,e){var n,c=e._length,u=new Array(c);n=e.geojson?function(t){return l(t)||r(t)}:l;for(var f=0;f")}}(t,f,o),[t]}},51319:function(t,e,n){"use strict";t.exports={attributes:n(69568),supplyDefaults:n(61869),colorbar:n(61243),calc:n(38675),calcGeoJSON:n(99841).calcGeoJSON,plot:n(99841).plot,style:n(99636).style,styleOnSelect:n(99636).styleOnSelect,hoverPoints:n(42300),eventData:n(92069),selectPoints:n(81253),moduleType:"trace",name:"choropleth",basePlotModule:n(44622),categories:["geo","noOpacity","showLegend"],meta:{}}},99841:function(t,e,n){"use strict";var r=n(39898),i=n(71828),a=n(41327),o=n(90973).getTopojsonFeatures,s=n(71739).findExtremes,l=n(99636).style;t.exports={calcGeoJSON:function(t,e){for(var n=t[0].trace,r=e[n.geo],i=r._subplot,l=n.locationmode,c=n._length,u="geojson-id"===l?a.extractTraceFeature(t):o(n,i.topojson),f=[],h=[],d=0;d=0;r--){var i=n[r].id;if("string"===typeof i&&0===i.indexOf("water"))for(var a=r+1;a=0;n--)t.removeLayer(e[n][1])},s.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},t.exports=function(t,e){var n=e[0].trace,i=new o(t,n.uid),a=i.sourceId,s=r(e),l=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:s.geojson}),i._addLayers(s,l),e[0].trace._glTrace=i,i}},12674:function(t,e,n){"use strict";var r=n(50693),i=n(12663).axisHoverFormat,a=n(5386).f,o=n(2418),s=n(9012),l=n(1426).extendFlat,c={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:a({editType:"calc"},{keys:["norm"]}),uhoverformat:i("u",1),vhoverformat:i("v",1),whoverformat:i("w",1),xhoverformat:i("x"),yhoverformat:i("y"),zhoverformat:i("z"),showlegend:l({},s.showlegend,{dflt:!1})};l(c,r("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"})),["opacity","lightposition","lighting"].forEach((function(t){c[t]=o[t]})),c.hoverinfo=l({},s.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"}),c.transforms=void 0,t.exports=c},31371:function(t,e,n){"use strict";var r=n(78803);t.exports=function(t,e){for(var n=e.u,i=e.v,a=e.w,o=Math.min(e.x.length,e.y.length,e.z.length,n.length,i.length,a.length),s=-1/0,l=1/0,c=0;co.level||o.starts.length&&a===o.level)}break;case"constraint":if(r.prefixBoundary=!1,r.edgepaths.length)return;var s=r.x.length,l=r.y.length,c=-1/0,u=1/0;for(n=0;n":d>c&&(r.prefixBoundary=!0);break;case"<":(dc||r.starts.length&&h===u)&&(r.prefixBoundary=!0);break;case"][":f=Math.min(d[0],d[1]),h=Math.max(d[0],d[1]),fc&&(r.prefixBoundary=!0)}}}},90654:function(t,e,n){"use strict";var r=n(21081),i=n(86068),a=n(53572);t.exports={min:"zmin",max:"zmax",calc:function(t,e,n){var o=e.contours,s=e.line,l=o.size||1,c=o.coloring,u=i(e,{isColorbar:!0});if("heatmap"===c){var f=r.extractOpts(e);n._fillgradient=f.reversescale?r.flipScale(f.colorscale):f.colorscale,n._zrange=[f.min,f.max]}else"fill"===c&&(n._fillcolor=u);n._line={color:"lines"===c?u:s.color,width:!1!==o.showlines?s.width:0,dash:s.dash},n._levels={start:o.start,end:a(o),size:l}}}},36914:function(t){"use strict";t.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(t,e,n){"use strict";var r=n(92770),i=n(14523),a=n(7901),o=a.addOpacity,s=a.opacity,l=n(74808),c=l.CONSTRAINT_REDUCTION,u=l.COMPARISON_OPS2;t.exports=function(t,e,n,a,l,f){var h,d,p,g=e.contours,v=n("contours.operation");g._operation=c[v],function(t,e){var n;-1===u.indexOf(e.operation)?(t("contours.value",[0,1]),Array.isArray(e.value)?e.value.length>2?e.value=e.value.slice(2):0===e.length?e.value=[0,1]:e.length<2?(n=parseFloat(e.value[0]),e.value=[n,n+1]):e.value=[parseFloat(e.value[0]),parseFloat(e.value[1])]:r(e.value)&&(n=parseFloat(e.value),e.value=[n,n+1])):(t("contours.value",0),r(e.value)||(Array.isArray(e.value)?e.value=parseFloat(e.value[0]):e.value=0))}(n,g),"="===v?h=g.showlines=!0:(h=n("contours.showlines"),p=n("fillcolor",o((t.line||{}).color||l,.5))),h&&(d=n("line.color",p&&s(p)?o(e.fillcolor,1):l),n("line.width",2),n("line.dash")),n("line.smoothing"),i(n,a,d,f)}},64237:function(t,e,n){"use strict";var r=n(74808),i=n(92770);function a(t,e){var n,a=Array.isArray(e);function o(t){return i(t)?+t:null}return-1!==r.COMPARISON_OPS2.indexOf(t)?n=o(a?e[0]:e):-1!==r.INTERVAL_OPS.indexOf(t)?n=a?[o(e[0]),o(e[1])]:[o(e),o(e)]:-1!==r.SET_OPS.indexOf(t)&&(n=a?e.map(o):[o(e)]),n}function o(t){return function(e){e=a(t,e);var n=Math.min(e[0],e[1]),r=Math.max(e[0],e[1]);return{start:n,end:r,size:r-n}}}function s(t){return function(e){return{start:e=a(t,e),end:1/0,size:1/0}}}t.exports={"[]":o("[]"),"][":o("]["),">":s(">"),"<":s("<"),"=":s("=")}},67217:function(t){"use strict";t.exports=function(t,e,n,r){var i=r("contours.start"),a=r("contours.end"),o=!1===i||!1===a,s=n("contours.size");!(o?e.autocontour=!0:n("autocontour",!1))&&s||n("ncontours")}},84857:function(t,e,n){"use strict";var r=n(71828);function i(t){return r.extendFlat({},t,{edgepaths:r.extendDeep([],t.edgepaths),paths:r.extendDeep([],t.paths),starts:r.extendDeep([],t.starts)})}t.exports=function(t,e){var n,a,o,s=function(t){return t.reverse()},l=function(t){return t};switch(e){case"=":case"<":return t;case">":for(1!==t.length&&r.warn("Contour data invalid for the specified inequality operation."),a=t[0],n=0;n1e3){r.warn("Too many contours, clipping at 1000",t);break}return l}},53572:function(t){"use strict";t.exports=function(t){return t.end+t.size/1e6}},81696:function(t,e,n){"use strict";var r=n(71828),i=n(36914);function a(t,e,n,r){return Math.abs(t[0]-e[0])20&&e?208===t||1114===t?r=0===n[0]?1:-1:a=0===n[1]?1:-1:-1!==i.BOTTOMSTART.indexOf(t)?a=1:-1!==i.LEFTSTART.indexOf(t)?r=1:-1!==i.TOPSTART.indexOf(t)?a=-1:r=-1,[r,a]}(h,n,e),p=[l(t,e,[-d[0],-d[1]])],g=t.z.length,v=t.z[0].length,m=e.slice(),y=d.slice();for(u=0;u<1e4;u++){if(h>20?(h=i.CHOOSESADDLE[h][(d[0]||d[1])<0?0:1],t.crossings[f]=i.SADDLEREMAINDER[h]):delete t.crossings[f],!(d=i.NEWDELTA[h])){r.log("Found bad marching index:",h,e,t.level);break}p.push(l(t,e,d)),e[0]+=d[0],e[1]+=d[1],f=e.join(","),a(p[p.length-1],p[p.length-2],s,c)&&p.pop();var b=d[0]&&(e[0]<0||e[0]>v-2)||d[1]&&(e[1]<0||e[1]>g-2);if(e[0]===m[0]&&e[1]===m[1]&&d[0]===y[0]&&d[1]===y[1]||n&&b)break;h=t.crossings[f]}1e4===u&&r.log("Infinite loop in contour?");var x,w,_,k,T,M,A,S,E,C,P,L=a(p[0],p[p.length-1],s,c),O=0,I=.2*t.smoothing,D=[],R=0;for(u=1;u=R;u--)if((x=D[u])=R&&x+D[w]S&&E--,t.edgepaths[E]=P.concat(p,C));break}F||(t.edgepaths[S]=p.concat(C))}for(S=0;St?0:1)+(e[0][1]>t?0:2)+(e[1][1]>t?0:4)+(e[1][0]>t?0:8);return 5===n||10===n?t>(e[0][0]+e[0][1]+e[1][0]+e[1][1])/4?5===n?713:1114:5===n?104:208:15===n?0:n}t.exports=function(t){var e,n,a,o,s,l,c,u,f,h=t[0].z,d=h.length,p=h[0].length,g=2===d||2===p;for(n=0;n=0&&(r=y,s=l):Math.abs(n[1]-r[1])<.01?Math.abs(n[1]-y[1])<.01&&(y[0]-n[0])*(r[0]-y[0])>=0&&(r=y,s=l):i.log("endpt to newendpt is not vert. or horz.",n,r,y)}if(n=r,s>=0)break;f+="L"+r}if(s===t.edgepaths.length){i.log("unclosed perimeter path");break}h=s,(p=-1===d.indexOf(h))&&(h=d[0],f+="Z")}for(h=0;hr.center?r.right-s:s-r.left)/(u+Math.abs(Math.sin(c)*o)),d=(l>r.middle?r.bottom-l:l-r.top)/(Math.abs(f)+Math.cos(c)*o);if(h<1||d<1)return 1/0;var p=m.EDGECOST*(1/(h-1)+1/(d-1));p+=m.ANGLECOST*c*c;for(var g=s-u,v=l-f,y=s+u,b=l+f,x=0;x2*m.MAXCOST)break;d&&(s/=2),l=(o=c-s/2)+1.5*s}if(h<=m.MAXCOST)return u},e.addLabelData=function(t,e,n,r){var i=e.fontSize,a=e.width+i/3,o=Math.max(0,e.height-i/3),s=t.x,l=t.y,c=t.theta,u=Math.sin(c),f=Math.cos(c),h=function(t,e){return[s+t*f-e*u,l+t*u+e*f]},d=[h(-a/2,-o/2),h(-a/2,o/2),h(a/2,o/2),h(a/2,-o/2)];n.push({text:e.text,x:s,y:l,dy:e.dy,theta:c,level:e.level,width:a,height:o}),r.push(d)},e.drawLabels=function(t,e,n,a,o){var l=t.selectAll("text").data(e,(function(t){return t.text+","+t.x+","+t.y+","+t.theta}));if(l.exit().remove(),l.enter().append("text").attr({"data-notex":1,"text-anchor":"middle"}).each((function(t){var e=t.x+Math.sin(t.theta)*t.dy,i=t.y-Math.cos(t.theta)*t.dy;r.select(this).text(t.text).attr({x:e,y:i,transform:"rotate("+180*t.theta/Math.PI+" "+e+" "+i+")"}).call(s.convertToTspans,n)})),o){for(var c="",u=0;un.end&&(n.start=n.end=(n.start+n.end)/2),t._input.contours||(t._input.contours={}),i.extendFlat(t._input.contours,{start:n.start,end:n.end,size:n.size}),t._input.autocontour=!0}else if("constraint"!==n.type){var c,u=n.start,f=n.end,h=t._input.contours;u>f&&(n.start=h.start=f,f=n.end=h.end=u,u=n.start),n.size>0||(c=u===f?1:a(u,f,t.ncontours).dtick,h.size=n.size=c)}}},84426:function(t,e,n){"use strict";var r=n(39898),i=n(91424),a=n(70035),o=n(86068);t.exports=function(t){var e=r.select(t).selectAll("g.contour");e.style("opacity",(function(t){return t[0].trace.opacity})),e.each((function(t){var e=r.select(this),n=t[0].trace,a=n.contours,s=n.line,l=a.size||1,c=a.start,u="constraint"===a.type,f=!u&&"lines"===a.coloring,h=!u&&"fill"===a.coloring,d=f||h?o(n):null;e.selectAll("g.contourlevel").each((function(t){r.select(this).selectAll("path").call(i.lineGroupStyle,s.width,f?d(t.level):s.color,s.dash)}));var p=a.labelfont;if(e.selectAll("g.contourlabels text").each((function(t){i.font(r.select(this),{family:p.family,size:p.size,color:p.color||(f?d(t.level):s.color)})})),u)e.selectAll("g.contourfill path").style("fill",n.fillcolor);else if(h){var g;e.selectAll("g.contourfill path").style("fill",(function(t){return void 0===g&&(g=t.level),d(t.level+.5*l)})),void 0===g&&(g=c),e.selectAll("g.contourbg path").style("fill",d(g-.5*l))}})),a(t)}},8724:function(t,e,n){"use strict";var r=n(1586),i=n(14523);t.exports=function(t,e,n,a,o){var s,l=n("contours.coloring"),c="";"fill"===l&&(s=n("contours.showlines")),!1!==s&&("lines"!==l&&(c=n("line.color","#000")),n("line.width",.5),n("line.dash")),"none"!==l&&(!0!==t.showlegend&&(e.showlegend=!1),e._dfltShowLegend=!1,r(t,e,a,n,{prefix:"",cLetter:"z"})),n("line.smoothing"),i(n,a,c,o)}},88085:function(t,e,n){"use strict";var r=n(21606),i=n(70600),a=n(50693),o=n(1426).extendFlat,s=i.contours;t.exports=o({carpet:{valType:"string",editType:"calc"},z:r.z,a:r.x,a0:r.x0,da:r.dx,b:r.y,b0:r.y0,db:r.dy,text:r.text,hovertext:r.hovertext,transpose:r.transpose,atype:r.xtype,btype:r.ytype,fillcolor:i.fillcolor,autocontour:i.autocontour,ncontours:i.ncontours,contours:{type:s.type,start:s.start,end:s.end,size:s.size,coloring:{valType:"enumerated",values:["fill","lines","none"],dflt:"fill",editType:"calc"},showlines:s.showlines,showlabels:s.showlabels,labelfont:s.labelfont,labelformat:s.labelformat,operation:s.operation,value:s.value,editType:"calc",impliedEdits:{autocontour:!1}},line:{color:i.line.color,width:i.line.width,dash:i.line.dash,smoothing:i.line.smoothing,editType:"plot"},transforms:void 0},a("",{cLetter:"z",autoColorDflt:!1}))},59885:function(t,e,n){"use strict";var r=n(78803),i=n(71828),a=n(68296),o=n(4742),s=n(824),l=n(43907),c=n(70769),u=n(75005),f=n(22882),h=n(18670);t.exports=function(t,e){var n=e._carpetTrace=f(t,e);if(n&&n.visible&&"legendonly"!==n.visible){if(!e.a||!e.b){var d=t.data[n.index],p=t.data[e.index];p.a||(p.a=d.a),p.b||(p.b=d.b),u(p,e,e._defaultColor,t._fullLayout)}var g=function(t,e){var n,u,f,h,d,p,g,v=e._carpetTrace,m=v.aaxis,y=v.baxis;m._minDtick=0,y._minDtick=0,i.isArray1D(e.z)&&a(e,m,y,"a","b",["z"]),n=e._a=e._a||e.a,h=e._b=e._b||e.b,n=n?m.makeCalcdata(e,"_a"):[],h=h?y.makeCalcdata(e,"_b"):[],u=e.a0||0,f=e.da||1,d=e.b0||0,p=e.db||1,g=e._z=o(e._z||e.z,e.transpose),e._emptypoints=l(g),s(g,e._emptypoints);var b=i.maxRowLength(g),x="scaled"===e.xtype?"":n,w=c(e,x,u,f,b,m),_="scaled"===e.ytype?"":h,k=c(e,_,d,p,g.length,y),T={a:w,b:k,z:g};return"levels"===e.contours.type&&"none"!==e.contours.coloring&&r(t,e,{vals:g,containerStr:"",cLetter:"z"}),[T]}(t,e);return h(e,e._z),g}}},75005:function(t,e,n){"use strict";var r=n(71828),i=n(67684),a=n(88085),o=n(83179),s=n(67217),l=n(8724);t.exports=function(t,e,n,c){function u(n,i){return r.coerce(t,e,a,n,i)}if(u("carpet"),t.a&&t.b){if(!i(t,e,u,c,"a","b"))return void(e.visible=!1);u("text"),"constraint"===u("contours.type")?o(t,e,u,c,n,{hasHover:!1}):(s(t,e,u,(function(n){return r.coerce2(t,e,a,n)})),l(t,e,u,c,{hasHover:!1}))}else e._defaultColor=n,e._length=null}},93740:function(t,e,n){"use strict";t.exports={attributes:n(88085),supplyDefaults:n(75005),colorbar:n(90654),calc:n(59885),plot:n(51048),style:n(84426),moduleType:"trace",name:"contourcarpet",basePlotModule:n(93612),categories:["cartesian","svg","carpet","contour","symbols","showLegend","hasLines","carpetDependent","noHover","noSortingByValue"],meta:{}}},51048:function(t,e,n){"use strict";var r=n(39898),i=n(27669),a=n(67961),o=n(91424),s=n(71828),l=n(87678),c=n(81696),u=n(29854),f=n(36914),h=n(84857),d=n(87558),p=n(20083),g=n(22882),v=n(4536);function m(t,e,n){var r=t.getPointAtLength(e),i=t.getPointAtLength(n),a=i.x-r.x,o=i.y-r.y,s=Math.sqrt(a*a+o*o);return[a/s,o/s]}function y(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);return[t[0]/e,t[1]/e]}function b(t,e){var n=Math.abs(t[0]*e[0]+t[1]*e[1]);return Math.sqrt(1-n*n)/n}t.exports=function(t,e,n,x){var w=e.xaxis,_=e.yaxis;s.makeTraceGroups(x,n,"contour").each((function(n){var x=r.select(this),k=n[0],T=k.trace,M=T._carpetTrace=g(t,T),A=t.calcdata[M.index][0];if(M.visible&&"legendonly"!==M.visible){var S=k.a,E=k.b,C=T.contours,P=d(C,e,k),L="constraint"===C.type,O=C._operation,I=L?"="===O?"lines":"fill":C.coloring,D=[[S[0],E[E.length-1]],[S[S.length-1],E[E.length-1]],[S[S.length-1],E[0]],[S[0],E[0]]];l(P);var R=1e-8*(S[S.length-1]-S[0]),z=1e-8*(E[E.length-1]-E[0]);c(P,R,z);var N,j,F,B,U=P;"constraint"===C.type&&(U=h(P,O)),function(t,e){var n,r,i,a,o,s,l,c,u;for(n=0;n=0;B--)N=A.clipsegments[B],j=i([],N.x,w.c2p),F=i([],N.y,_.c2p),j.reverse(),F.reverse(),H.push(a(j,F,N.bicubic));var V="M"+H.join("L")+"Z";!function(t,e,n,r,o,l){var c,u,f,h,d=s.ensureSingle(t,"g","contourbg").selectAll("path").data("fill"!==l||o?[]:[0]);d.enter().append("path"),d.exit().remove();var p=[];for(h=0;h=0&&(h=C,p=g):Math.abs(f[1]-h[1])<_?Math.abs(f[1]-C[1])<_&&(C[0]-f[0])*(h[0]-C[0])>=0&&(h=C,p=g):s.log("endpt to newendpt is not vert. or horz.",f,h,C)}if(p>=0)break;y+=S(f,h),f=h}if(p===e.edgepaths.length){s.log("unclosed perimeter path");break}u=p,(x=-1===b.indexOf(u))&&(u=b[0],y+=S(f,h)+"Z",f=null)}for(u=0;ug&&(r.max=g),r.len=r.max-r.min}function v(t,e){var n,r=0,o=.1;return(Math.abs(t[0]-l)0?+d[u]:0),f.push({type:"Feature",geometry:{type:"Point",coordinates:m},properties:y})}}var x=o.extractOpts(e),w=x.reversescale?o.flipScale(x.colorscale):x.colorscale,_=w[0][1],k=["interpolate",["linear"],["heatmap-density"],0,a.opacity(_)<1?_:a.addOpacity(_,0)];for(u=1;u=0;n--)t.removeLayer(e[n][1])},o.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},t.exports=function(t,e){var n=e[0].trace,i=new a(t,n.uid),o=i.sourceId,s=r(e),l=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(o,{type:"geojson",data:s.geojson}),i._addLayers(s,l),i}},49789:function(t,e,n){"use strict";var r=n(71828);t.exports=function(t,e){for(var n=0;n"),l.color=function(t,e){var n=t.marker,i=e.mc||n.color,a=e.mlc||n.line.color,o=e.mlw||n.line.width;return r(i)?i:r(a)&&o?a:void 0}(u,h),[l]}}},51759:function(t,e,n){"use strict";t.exports={attributes:n(1285),layoutAttributes:n(10440),supplyDefaults:n(26199).supplyDefaults,crossTraceDefaults:n(26199).crossTraceDefaults,supplyLayoutDefaults:n(93138),calc:n(9532),crossTraceCalc:n(8984),plot:n(80461),style:n(68266).style,hoverPoints:n(63341),eventData:n(34598),selectPoints:n(81974),moduleType:"trace",name:"funnel",basePlotModule:n(93612),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}},10440:function(t){"use strict";t.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(t,e,n){"use strict";var r=n(71828),i=n(10440);t.exports=function(t,e,n){var a=!1;function o(n,a){return r.coerce(t,e,i,n,a)}for(var s=0;s path").each((function(t){if(!t.isBlank){var e=s.marker;r.select(this).call(a.fill,t.mc||e.color).call(a.stroke,t.mlc||e.line.color).call(i.dashLine,e.line.dash,t.mlw||e.line.width).style("opacity",s.selectedpoints&&!t.selected?o:1)}})),c(n,s,t),n.selectAll(".regions").each((function(){r.select(this).selectAll("path").style("stroke-width",0).call(a.fill,s.connector.fillcolor)})),n.selectAll(".lines").each((function(){var t=s.connector.line;i.lineGroupStyle(r.select(this).selectAll("path"),t.width,t.color,t.dash)}))}))}}},86807:function(t,e,n){"use strict";var r=n(34e3),i=n(9012),a=n(27670).Y,o=n(5386).f,s=n(5386).s,l=n(1426).extendFlat;t.exports={labels:r.labels,label0:r.label0,dlabel:r.dlabel,values:r.values,marker:{colors:r.marker.colors,line:{color:l({},r.marker.line.color,{dflt:null}),width:l({},r.marker.line.width,{dflt:1}),editType:"calc"},editType:"calc"},text:r.text,hovertext:r.hovertext,scalegroup:l({},r.scalegroup,{}),textinfo:l({},r.textinfo,{flags:["label","text","value","percent"]}),texttemplate:s({editType:"plot"},{keys:["label","color","value","text","percent"]}),hoverinfo:l({},i.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:o({},{keys:["label","color","value","text","percent"]}),textposition:l({},r.textposition,{values:["inside","none"],dflt:"inside"}),textfont:r.textfont,insidetextfont:r.insidetextfont,title:{text:r.title.text,font:r.title.font,position:l({},r.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:a({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(t,e,n){"use strict";var r=n(74875);e.name="funnelarea",e.plot=function(t,n,i,a){r.plotBasePlot(e.name,t,n,i,a)},e.clean=function(t,n,i,a){r.cleanBasePlot(e.name,t,n,i,a)}},89574:function(t,e,n){"use strict";var r=n(32354);t.exports={calc:function(t,e){return r.calc(t,e)},crossTraceCalc:function(t){r.crossTraceCalc(t,{type:"funnelarea"})}}},86282:function(t,e,n){"use strict";var r=n(71828),i=n(86807),a=n(27670).c,o=n(90769).handleText,s=n(37434).handleLabelsAndValues;t.exports=function(t,e,n,l){function c(n,a){return r.coerce(t,e,i,n,a)}var u=c("labels"),f=c("values"),h=s(u,f),d=h.len;if(e._hasLabels=h.hasLabels,e._hasValues=h.hasValues,!e._hasLabels&&e._hasValues&&(c("label0"),c("dlabel")),d){e._length=d,c("marker.line.width")&&c("marker.line.color",l.paper_bgcolor),c("marker.colors"),c("scalegroup");var p,g=c("text"),v=c("texttemplate");if(v||(p=c("textinfo",Array.isArray(g)?"text+percent":"percent")),c("hovertext"),c("hovertemplate"),v||p&&"none"!==p){var m=c("textposition");o(t,e,l,c,m,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}a(e,l,c),c("title.text")&&(c("title.position"),r.coerceFont(c,"title.font",l.font)),c("aspectratio"),c("baseratio")}else e.visible=!1}},10421:function(t,e,n){"use strict";t.exports={moduleType:"trace",name:"funnelarea",basePlotModule:n(6452),categories:["pie-like","funnelarea","showLegend"],attributes:n(86807),layoutAttributes:n(80097),supplyDefaults:n(86282),supplyLayoutDefaults:n(57402),calc:n(89574).calc,crossTraceCalc:n(89574).crossTraceCalc,plot:n(79187),style:n(71858),styleOne:n(63463),meta:{}}},80097:function(t,e,n){"use strict";var r=n(92774).hiddenlabels;t.exports={hiddenlabels:r,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}},57402:function(t,e,n){"use strict";var r=n(71828),i=n(80097);t.exports=function(t,e){function n(n,a){return r.coerce(t,e,i,n,a)}n("hiddenlabels"),n("funnelareacolorway",e.colorway),n("extendfunnelareacolors")}},79187:function(t,e,n){"use strict";var r=n(39898),i=n(91424),a=n(71828),o=a.strScale,s=a.strTranslate,l=n(63893),c=n(17295).toMoveInsideBar,u=n(72597),f=u.recordMinTextSize,h=u.clearMinTextSize,d=n(53581),p=n(14575),g=p.attachFxHandlers,v=p.determineInsideTextFont,m=p.layoutAreas,y=p.prerenderTitles,b=p.positionTitleOutside,x=p.formatSliceLabel;function w(t,e){return"l"+(e[0]-t[0])+","+(e[1]-t[1])}function _(t,e){return[.5*(t[0]+e[0]),.5*(t[1]+e[1])]}t.exports=function(t,e){var n=t._context.staticPlot,u=t._fullLayout;h("funnelarea",u),y(e,t),m(e,u._size),a.makeTraceGroups(u._funnelarealayer,e,"trace").each((function(e){var h=r.select(this),p=e[0],m=p.trace;!function(t){if(t.length){var e=t[0],n=e.trace,r=n.aspectratio,i=n.baseratio;i>.999&&(i=.999);var a,o,s,l=Math.pow(i,2),c=e.vTotal,u=c,f=c*l/(1-l)/c,h=[];for(h.push(E()),o=t.length-1;o>-1;o--)if(!(s=t[o]).hidden){var d=s.v/u;f+=d,h.push(E())}var p=1/0,g=-1/0;for(o=0;o-1;o--)if(!(s=t[o]).hidden){var M=h[T+=1][0],A=h[T][1];s.TL=[-M,A],s.TR=[M,A],s.BL=w,s.BR=k,s.pxmid=_(s.TR,s.BR),w=s.TL,k=s.TR}}function S(){var t=Math.sqrt(f);return{x:t,y:-t}}function E(){var t=S();return[t.x,t.y]}}(e),h.each((function(){var h=r.select(this).selectAll("g.slice").data(e);h.enter().append("g").classed("slice",!0),h.exit().remove(),h.each((function(o,s){if(o.hidden)r.select(this).selectAll("path,g").remove();else{o.pointNumber=o.i,o.curveNumber=m.index;var h=p.cx,y=p.cy,b=r.select(this),_=b.selectAll("path.surface").data([o]);_.enter().append("path").classed("surface",!0).style({"pointer-events":n?"none":"all"}),b.call(g,t,e);var k="M"+(h+o.TR[0])+","+(y+o.TR[1])+w(o.TR,o.BR)+w(o.BR,o.BL)+w(o.BL,o.TL)+"Z";_.attr("d",k),x(t,o,p);var T=d.castOption(m.textposition,o.pts),M=b.selectAll("g.slicetext").data(o.text&&"none"!==T?[0]:[]);M.enter().append("g").classed("slicetext",!0),M.exit().remove(),M.each((function(){var n=a.ensureSingle(r.select(this),"text","",(function(t){t.attr("data-notex",1)})),d=a.ensureUniformFontSize(t,v(m,o,u.font));n.text(o.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(i.font,d).call(l.convertToTspans,t);var p,g,b,x=i.bBox(n.node()),w=Math.min(o.BL[1],o.BR[1])+y,_=Math.max(o.TL[1],o.TR[1])+y;g=Math.max(o.TL[0],o.BL[0])+h,b=Math.min(o.TR[0],o.BR[0])+h,(p=c(g,b,w,_,x,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"})).fontSize=d.size,f(m.type,p,u),e[s].transform=p,a.setTransormAndDisplay(n,p)}))}}));var y=r.select(this).selectAll("g.titletext").data(m.title.text?[0]:[]);y.enter().append("g").classed("titletext",!0),y.exit().remove(),y.each((function(){var e=a.ensureSingle(r.select(this),"text","",(function(t){t.attr("data-notex",1)})),n=m.title.text;m._meta&&(n=a.templateString(n,m._meta)),e.text(n).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(i.font,m.title.font).call(l.convertToTspans,t);var c=b(p,u._size);e.attr("transform",s(c.x,c.y)+o(Math.min(1,c.scale))+s(c.tx,c.ty))}))}))}))}},71858:function(t,e,n){"use strict";var r=n(39898),i=n(63463),a=n(72597).resizeText;t.exports=function(t){var e=t._fullLayout._funnelarealayer.selectAll(".trace");a(t,e,"funnelarea"),e.each((function(t){var e=t[0].trace,n=r.select(this);n.style({opacity:e.opacity}),n.selectAll("path.surface").each((function(t){r.select(this).call(i,t,e)}))}))}},21606:function(t,e,n){"use strict";var r=n(82196),i=n(9012),a=n(41940),o=n(12663).axisHoverFormat,s=n(5386).f,l=n(5386).s,c=n(50693),u=n(1426).extendFlat;t.exports=u({z:{valType:"data_array",editType:"calc"},x:u({},r.x,{impliedEdits:{xtype:"array"}}),x0:u({},r.x0,{impliedEdits:{xtype:"scaled"}}),dx:u({},r.dx,{impliedEdits:{xtype:"scaled"}}),y:u({},r.y,{impliedEdits:{ytype:"array"}}),y0:u({},r.y0,{impliedEdits:{ytype:"scaled"}}),dy:u({},r.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:u({},r.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:u({},r.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:u({},r.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:u({},r.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:u({},r.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:u({},r.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:o("x"),yhoverformat:o("y"),zhoverformat:o("z",1),hovertemplate:s(),texttemplate:l({arrayOk:!1,editType:"plot"},{keys:["x","y","z","text"]}),textfont:a({editType:"plot",autoSize:!0,autoColor:!0,colorEditType:"style"}),showlegend:u({},i.showlegend,{dflt:!1})},{transforms:void 0},c("",{cLetter:"z",autoColorDflt:!1}))},90757:function(t,e,n){"use strict";var r=n(73972),i=n(71828),a=n(89298),o=n(42973),s=n(17562),l=n(78803),c=n(68296),u=n(4742),f=n(824),h=n(43907),d=n(70769),p=n(50606).BADNUM;function g(t){for(var e=[],n=t.length,r=0;rR){I("x scale is not linear");break}}if(b.length&&"fast"===L){var z=(b[b.length-1]-b[0])/(b.length-1),N=Math.abs(z/100);for(T=0;TN){I("y scale is not linear");break}}}var j=i.maxRowLength(k),F="scaled"===e.xtype?"":n,B=d(e,F,v,m,j,A),U="scaled"===e.ytype?"":b,H=d(e,U,x,w,k.length,S);P||(e._extremes[A._id]=a.findExtremes(A,B),e._extremes[S._id]=a.findExtremes(S,H));var V={x:B,y:H,z:k,text:e._text||e.text,hovertext:e._hovertext||e.hovertext};if(e.xperiodalignment&&y&&(V.orig_x=y),e.yperiodalignment&&_&&(V.orig_y=_),F&&F.length===B.length-1&&(V.xCenter=F),U&&U.length===H.length-1&&(V.yCenter=U),C&&(V.xRanges=M.xRanges,V.yRanges=M.yRanges,V.pts=M.pts),E||l(t,e,{vals:k,cLetter:"z"}),E&&e.contours&&"heatmap"===e.contours.coloring){var q={type:"contour"===e.type?"heatmap":"histogram2d",xcalendar:e.xcalendar,ycalendar:e.ycalendar};V.xfill=d(q,F,v,m,j,A),V.yfill=d(q,U,x,w,k.length,S)}return[V]}},4742:function(t,e,n){"use strict";var r=n(92770),i=n(71828),a=n(50606).BADNUM;t.exports=function(t,e,n,o){var s,l,c,u,f,h;function d(t){if(r(t))return+t}if(e&&e.transpose){for(s=0,f=0;f=0;o--)(s=((f[[(n=(a=h[o])[0])-1,i=a[1]]]||g)[2]+(f[[n+1,i]]||g)[2]+(f[[n,i-1]]||g)[2]+(f[[n,i+1]]||g)[2])/20)&&(l[a]=[n,i,s],h.splice(o,1),c=!0);if(!c)throw"findEmpties iterated with no new neighbors";for(a in l)f[a]=l[a],u.push(l[a])}return u.sort((function(t,e){return e[2]-t[2]}))}},46248:function(t,e,n){"use strict";var r=n(30211),i=n(71828),a=n(89298),o=n(21081).extractOpts;t.exports=function(t,e,n,s,l){l||(l={});var c,u,f,h,d=l.isContour,p=t.cd[0],g=p.trace,v=t.xa,m=t.ya,y=p.x,b=p.y,x=p.z,w=p.xCenter,_=p.yCenter,k=p.zmask,T=g.zhoverformat,M=y,A=b;if(!1!==t.index){try{f=Math.round(t.index[1]),h=Math.round(t.index[0])}catch(F){return void i.error("Error hovering on heatmap, pointNumber must be [row,col], found:",t.index)}if(f<0||f>=x[0].length||h<0||h>x.length)return}else{if(r.inbox(e-y[0],e-y[y.length-1],0)>0||r.inbox(n-b[0],n-b[b.length-1],0)>0)return;if(d){var S;for(M=[2*y[0]-y[1]],S=1;Sg&&(m=Math.max(m,Math.abs(t[a][o]-p)/(v-g))))}return m}t.exports=function(t,e){var n,i=1;for(o(t,e),n=0;n.01;n++)i=o(t,e,a(i));return i>.01&&r.log("interp2d didn't converge quickly",i),t}},58623:function(t,e,n){"use strict";var r=n(71828);t.exports=function(t,e){t("texttemplate");var n=r.extendFlat({},e.font,{color:"auto",size:"auto"});r.coerceFont(t,"textfont",n)}},70769:function(t,e,n){"use strict";var r=n(73972),i=n(71828).isArrayOrTypedArray;t.exports=function(t,e,n,a,o,s){var l,c,u,f=[],h=r.traceIs(t,"contour"),d=r.traceIs(t,"histogram"),p=r.traceIs(t,"gl2d");if(i(e)&&e.length>1&&!d&&"category"!==s.type){var g=e.length;if(!(g<=o))return h?e.slice(0,o):e.slice(0,o+1);if(h||p)f=e.slice(0,o);else if(1===o)f=[e[0]-.5,e[0]+.5];else{for(f=[1.5*e[0]-.5*e[1]],u=1;u0;)_=k.c2p(N[E]),E--;for(_0;)S=T.c2p(j[E]),E--;if(SWt||Wt>T._length))for(C=Ht;C$t||$t>k._length)){var Xt=u({x:Yt,y:Gt},I,t._fullLayout);Xt.x=Yt,Xt.y=Gt;var Kt=O.z[E][C];void 0===Kt?(Xt.z="",Xt.zLabel=""):(Xt.z=Kt,Xt.zLabel=s.tickText(jt,Kt,"hover").text);var Zt=O.text&&O.text[E]&&O.text[E][C];void 0!==Zt&&!1!==Zt||(Zt=""),Xt.text=Zt;var Jt=l.texttemplateString(zt,Xt,t._fullLayout._d3locale,Xt,I._meta||{});if(Jt){var Qt=Jt.split("
"),te=Qt.length,ee=0;for(P=0;P0&&(a=!0);for(var l=0;la){var o=a-n[t];return n[t]=a,o}}return 0},max:function(t,e,n,i){var a=i[e];if(r(a)){if(a=Number(a),!r(n[t]))return n[t]=a,a;if(n[t]c?t>o?t>1.1*i?i:t>1.1*a?a:o:t>s?s:t>l?l:c:Math.pow(10,Math.floor(Math.log(t)/Math.LN10))}function d(t,e,n,r,a,s){if(r&&t>o){var l=p(e,a,s),c=p(n,a,s),u=t===i?0:1;return l[u]!==c[u]}return Math.floor(n/t)-Math.floor(e/t)>.1}function p(t,e,n){var r=e.c2d(t,i,n).split("-");return""===r[0]&&(r.unshift(),r[0]="-"+r[0]),r}t.exports=function(t,e,n,r,a){var s,l,c=-1.1*e,h=-.1*e,d=t-h,p=n[0],g=n[1],v=Math.min(f(p+h,p+d,r,a),f(g+h,g+d,r,a)),m=Math.min(f(p+c,p+h,r,a),f(g+c,g+h,r,a));if(v>m&&mo){var y=s===i?1:6,b=s===i?"M12":"M1";return function(e,n){var o=r.c2d(e,i,a),s=o.indexOf("-",y);s>0&&(o=o.substr(0,s));var c=r.d2c(o,0,a);if(cn.r2l(j)&&(B=o.tickIncrement(B,x.size,!0,d)),D.start=n.l2r(B),N||i.nestedProperty(e,m+".start").set(D.start)}var U=x.end,H=n.r2l(I.end),V=void 0!==H;if((x.endFound||V)&&H!==n.r2l(U)){var q=V?H:i.aggNums(Math.max,null,p);D.end=n.l2r(q),V||i.nestedProperty(e,m+".start").set(D.end)}var G="autobin"+s;return!1===e._input[G]&&(e._input[m]=i.extendFlat({},e[m]||{}),delete e._input[G],delete e[G]),[D,p]}t.exports={calc:function(t,e){var n,a,d,p,g=[],v=[],m="h"===e.orientation,y=o.getFromId(t,m?e.yaxis:e.xaxis),b=m?"y":"x",x={x:"y",y:"x"}[b],w=e[b+"calendar"],_=e.cumulative,k=h(t,e,y,b),T=k[0],M=k[1],A="string"===typeof T.size,S=[],E=A?S:T,C=[],P=[],L=[],O=0,I=e.histnorm,D=e.histfunc,R=-1!==I.indexOf("density");_.enabled&&R&&(I=I.replace(/ ?density$/,""),R=!1);var z,N="max"===D||"min"===D?null:0,j=l.count,F=c[I],B=!1,U=function(t){return y.r2c(t,0,w)};for(i.isArrayOrTypedArray(e[x])&&"count"!==D&&(z=e[x],B="avg"===D,j=l[D]),n=U(T.start),d=U(T.end)+(n-o.tickIncrement(n,T.size,!1,w))/1e6;n=0&&p=0;r--)s(r);else if("increasing"===e){for(r=1;r=0;r--)t[r]+=t[r+1];"exclude"===n&&(t.push(0),t.shift())}}(v,_.direction,_.currentbin);var Z=Math.min(g.length,v.length),J=[],Q=0,tt=Z-1;for(n=0;n=Q;n--)if(v[n]){tt=n;break}for(n=Q;n<=tt;n++)if(r(g[n])&&r(v[n])){var et={p:g[n],s:v[n],b:0};_.enabled||(et.pts=L[n],W?et.ph0=et.ph1=L[n].length?M[L[n][0]]:g[n]:(e._computePh=!0,et.ph0=q(S[n]),et.ph1=q(S[n+1],!0))),J.push(et)}return 1===J.length&&(J[0].width1=o.tickIncrement(J[0].p,T.size,!1,w)-J[0].p),s(J,e),i.isArrayOrTypedArray(e.selectedpoints)&&i.tagSelected(J,e,X),J},calcAllAutoBins:h}},72406:function(t){"use strict";t.exports={eventDataKeys:["binNumber"]}},82222:function(t,e,n){"use strict";var r=n(71828),i=n(41675),a=n(73972).traceIs,o=n(26125),s=r.nestedProperty,l=n(99082).getAxisGroup,c=[{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"}],u=["x","y"];t.exports=function(t,e){var n,f,h,d,p,g,v,m=e._histogramBinOpts={},y=[],b={},x=[];function w(t,e){return r.coerce(n._input,n,n._module.attributes,t,e)}function _(t){return"v"===t.orientation?"x":"y"}function k(t,n,a){var o=t.uid+"__"+a;n||(n=o);var s=function(t,n){return i.getFromTrace({_fullLayout:e},t,n).type}(t,a),l=t[a+"calendar"]||"",c=m[n],u=!0;c&&(s===c.axType&&l===c.calendar?(u=!1,c.traces.push(t),c.dirs.push(a)):(n=o,s!==c.axType&&r.warn(["Attempted to group the bins of trace",t.index,"set on a","type:"+s,"axis","with bins on","type:"+c.axType,"axis."].join(" ")),l!==c.calendar&&r.warn(["Attempted to group the bins of trace",t.index,"set with a",l,"calendar","with bins",c.calendar?"on a "+c.calendar+" calendar":"w/o a set calendar"].join(" ")))),u&&(m[n]={traces:[t],dirs:[a],axType:s,calendar:t[a+"calendar"]||""}),t["_"+a+"bingroup"]=n}for(p=0;pS&&k.splice(S,k.length-S),A.length>S&&A.splice(S,A.length-S);var E=[],C=[],P=[],L="string"===typeof _.size,O="string"===typeof M.size,I=[],D=[],R=L?I:_,z=O?D:M,N=0,j=[],F=[],B=e.histnorm,U=e.histfunc,H=-1!==B.indexOf("density"),V="max"===U||"min"===U?null:0,q=a.count,G=o[B],W=!1,Y=[],$=[],X="z"in e?e.z:"marker"in e&&Array.isArray(e.marker.color)?e.marker.color:"";X&&"count"!==U&&(W="avg"===U,q=a[U]);var K=_.size,Z=b(_.start),J=b(_.end)+(Z-i.tickIncrement(Z,K,!1,m))/1e6;for(n=Z;n=0&&d=0&&p-1,flipY:P.tiling.flip.indexOf("y")>-1,orientation:P.tiling.orientation,pad:{inner:P.tiling.pad},maxDepth:P._maxDepth}).descendants(),R=1/0,z=-1/0;D.forEach((function(t){var e=t.depth;e>=P._maxDepth?(t.x0=t.x1=(t.x0+t.x1)/2,t.y0=t.y1=(t.y0+t.y1)/2):(R=Math.min(R,e),z=Math.max(z,e))})),p=p.data(D,u.getPtId),P._maxVisibleLayers=isFinite(z)?z-R+1:0,p.enter().append("g").classed("slice",!0),T(p,d,{},[v,m],x),p.order();var N=null;if(k&&S){var j=u.getPtId(S);p.each((function(t){null===N&&u.getPtId(t)===j&&(N={x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1})}))}var F=function(){return N||{x0:0,x1:v,y0:0,y1:m}},B=p;return k&&(B=B.transition().each("end",(function(){var e=r.select(this);u.setSliceCursor(e,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})}))),B.each((function(s){s._x0=y(s.x0),s._x1=y(s.x1),s._y0=b(s.y0),s._y1=b(s.y1),s._hoverX=y(s.x1-P.tiling.pad),s._hoverY=b(I?s.y1-P.tiling.pad/2:s.y0+P.tiling.pad/2);var p=r.select(this),g=i.ensureSingle(p,"path","surface",(function(t){t.style("pointer-events",E?"none":"all")}));k?g.transition().attrTween("d",(function(t){var e=M(t,d,F(),[v,m],{orientation:P.tiling.orientation,flipX:P.tiling.flip.indexOf("x")>-1,flipY:P.tiling.flip.indexOf("y")>-1});return function(t){return x(e(t))}})):g.attr("d",x),p.call(f,n,t,e,{styleOne:l,eventDataKeys:c.eventDataKeys,transitionTime:c.CLICK_TRANSITION_TIME,transitionEasing:c.CLICK_TRANSITION_EASING}).call(u.setSliceCursor,t,{isTransitioning:t._transitioning}),g.call(l,s,P,{hovered:!1}),s.x0===s.x1||s.y0===s.y1?s._text="":s._text=h(s,n,P,e,C)||"";var T=i.ensureSingle(p,"g","slicetext"),S=i.ensureSingle(T,"text","",(function(t){t.attr("data-notex",1)})),D=i.ensureUniformFontSize(t,u.determineTextFont(P,s,C.font));S.text(s._text||" ").classed("slicetext",!0).attr("text-anchor",O?"end":L?"start":"middle").call(a.font,D).call(o.convertToTspans,t),s.textBB=a.bBox(S.node()),s.transform=w(s,{fontSize:D.size}),s.transform.fontSize=D.size,k?S.transition().attrTween("transform",(function(t){var e=A(t,d,F(),[v,m]);return function(t){return _(e(t))}})):S.attr("transform",_(s))})),N}},69816:function(t,e,n){"use strict";t.exports={moduleType:"trace",name:"icicle",basePlotModule:n(96346),categories:[],animatable:!0,attributes:n(46291),layoutAttributes:n(92894),supplyDefaults:n(56524),supplyLayoutDefaults:n(21070),calc:n(46584).y,crossTraceCalc:n(46584).T,plot:n(85596),style:n(82454).style,colorbar:n(4898),meta:{}}},92894:function(t){"use strict";t.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}},21070:function(t,e,n){"use strict";var r=n(71828),i=n(92894);t.exports=function(t,e){function n(n,a){return r.coerce(t,e,i,n,a)}n("iciclecolorway",e.colorway),n("extendiciclecolors")}},21538:function(t,e,n){"use strict";var r=n(674),i=n(14102);t.exports=function(t,e,n){var a=n.flipX,o=n.flipY,s="h"===n.orientation,l=n.maxDepth,c=e[0],u=e[1];l&&(c=(t.height+1)*e[0]/Math.min(t.height+1,l),u=(t.height+1)*e[1]/Math.min(t.height+1,l));var f=r.partition().padding(n.pad.inner).size(s?[e[1],c]:[e[0],u])(t);return(s||a||o)&&i(f,e,{swapXY:s,flipX:a,flipY:o}),f}},85596:function(t,e,n){"use strict";var r=n(80694),i=n(90666);t.exports=function(t,e,n,a){return r(t,e,n,a,{type:"icicle",drawDescendants:i})}},82454:function(t,e,n){"use strict";var r=n(39898),i=n(7901),a=n(71828),o=n(72597).resizeText;function s(t,e,n){var r=e.data.data,o=!e.children,s=r.i,l=a.castOption(n,s,"marker.line.color")||i.defaultLine,c=a.castOption(n,s,"marker.line.width")||0;t.style("stroke-width",c).call(i.fill,r.color).call(i.stroke,l).style("opacity",o?n.leaf.opacity:null)}t.exports={style:function(t){var e=t._fullLayout._iciclelayer.selectAll(".trace");o(t,e,"icicle"),e.each((function(t){var e=r.select(this),n=t[0].trace;e.style("opacity",n.opacity),e.selectAll("path.surface").each((function(t){r.select(this).call(s,t,n)}))}))},styleOne:s}},17230:function(t,e,n){"use strict";for(var r=n(9012),i=n(5386).f,a=n(1426).extendFlat,o=n(51877).colormodel,s=["rgb","rgba","rgba256","hsl","hsla"],l=[],c=[],u=0;u0||r.inbox(n-o.y0,n-(o.y0+o.h*s.dy),0)>0)){var u,f=Math.floor((e-o.x0)/s.dx),h=Math.floor(Math.abs(n-o.y0)/s.dy);if(s._hasZ?u=o.z[h][f]:s._hasSource&&(u=s._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(f,h,1,1).data),u){var d,p=o.hi||s.hoverinfo;if(p){var g=p.split("+");-1!==g.indexOf("all")&&(g=["color"]),-1!==g.indexOf("color")&&(d=!0)}var v,m=a.colormodel[s.colormodel],y=m.colormodel||s.colormodel,b=y.length,x=s._scaler(u),w=m.suffix,_=[];(s.hovertemplate||d)&&(_.push("["+[x[0]+w[0],x[1]+w[1],x[2]+w[2]].join(", ")),4===b&&_.push(", "+x[3]+w[3]),_.push("]"),_=_.join(""),t.extraText=y.toUpperCase()+": "+_),Array.isArray(s.hovertext)&&Array.isArray(s.hovertext[h])?v=s.hovertext[h][f]:Array.isArray(s.text)&&Array.isArray(s.text[h])&&(v=s.text[h][f]);var k=c.c2p(o.y0+(h+.5)*s.dy),T=o.x0+(f+.5)*s.dx,M=o.y0+(h+.5)*s.dy,A="["+u.slice(0,s.colormodel.length).join(", ")+"]";return[i.extendFlat(t,{index:[h,f],x0:l.c2p(o.x0+f*s.dx),x1:l.c2p(o.x0+(f+1)*s.dx),y0:k,y1:k,color:x,xVal:T,xLabelVal:T,yVal:M,yLabelVal:M,zLabelVal:A,text:v,hovertemplateLabels:{zLabel:A,colorLabel:_,"color[0]Label":x[0]+w[0],"color[1]Label":x[1]+w[1],"color[2]Label":x[2]+w[2],"color[3]Label":x[3]+w[3]}})]}}}},94507:function(t,e,n){"use strict";t.exports={attributes:n(17230),supplyDefaults:n(13245),calc:n(71113),plot:n(60775),style:n(12826),hoverPoints:n(28749),eventData:n(30835),moduleType:"trace",name:"image",basePlotModule:n(93612),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}},60775:function(t,e,n){"use strict";var r=n(39898),i=n(71828),a=i.strTranslate,o=n(77922),s=n(51877),l=i.isIOS()||i.isSafari()||i.isIE();t.exports=function(t,e,n,c){var u=e.xaxis,f=e.yaxis,h=!(l||t._context._exportedPlot);i.makeTraceGroups(c,n,"im").each((function(e){var n=r.select(this),l=e[0],c=l.trace,d=("fast"===c.zsmooth||!1===c.zsmooth&&h)&&!c._hasZ&&c._hasSource&&"linear"===u.type&&"linear"===f.type;c._realImage=d;var p,g,v,m,y,b,x=l.z,w=l.x0,_=l.y0,k=l.w,T=l.h,M=c.dx,A=c.dy;for(b=0;void 0===p&&b0;)g=u.c2p(w+b*M),b--;for(b=0;void 0===m&&b0;)y=f.c2p(_+b*A),b--;gO[0];if(I||D){var R=p+S/2,z=m+E/2;P+="transform:"+a(R+"px",z+"px")+"scale("+(I?-1:1)+","+(D?-1:1)+")"+a(-R+"px",-z+"px")+";"}}C.attr("style",P);var N=new Promise((function(t){if(c._hasZ)t();else if(c._hasSource)if(c._canvas&&c._canvas.el.width===k&&c._canvas.el.height===T&&c._canvas.source===c.source)t();else{var e=document.createElement("canvas");e.width=k,e.height=T;var n=e.getContext("2d",{willReadFrequently:!0});c._image=c._image||new Image;var r=c._image;r.onload=function(){n.drawImage(r,0,0),c._canvas={el:e,source:c.source},t()},r.setAttribute("src",c.source)}})).then((function(){var t,e;if(c._hasZ)e=j((function(t,e){return x[e][t]})),t=e.toDataURL("image/png");else if(c._hasSource)if(d)t=c.source;else{var n=c._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(0,0,k,T).data;e=j((function(t,e){var r=4*(e*k+t);return[n[r],n[r+1],n[r+2],n[r+3]]})),t=e.toDataURL("image/png")}C.attr({"xlink:href":t,height:E,width:S,x:p,y:m})}));t._promises.push(N)}function j(t){var e=document.createElement("canvas");e.width=S,e.height=E;var n,r=e.getContext("2d",{willReadFrequently:!0}),a=function(t){return i.constrain(Math.round(u.c2p(w+t*M)-p),0,S)},o=function(t){return i.constrain(Math.round(f.c2p(_+t*A)-m),0,E)},h=s.colormodel[c.colormodel],d=h.colormodel||c.colormodel,g=h.fmt;for(b=0;b0}function k(t){t.each((function(t){y.stroke(r.select(this),t.line.color)})).each((function(t){y.fill(r.select(this),t.color)})).style("stroke-width",(function(t){return t.line.width}))}function T(t,e,n){var r=t._fullLayout,i=o.extendFlat({type:"linear",ticks:"outside",range:n,showline:!0},e),a={type:"linear",_id:"x"+e._id},s={letter:"x",font:r.font,noHover:!0,noTickson:!0};function l(t,e){return o.coerce(i,a,m,t,e)}return g(i,a,l,s,r),v(i,a,l,s),a}function M(t,e,n){return[Math.min(e/t.width,n/t.height),t,e+"x"+n]}function A(t,e,n,i){var a=document.createElementNS("http://www.w3.org/2000/svg","text"),o=r.select(a);return o.text(t).attr("x",0).attr("y",0).attr("text-anchor",n).attr("data-unformatted",t).call(d.convertToTspans,i).call(f.font,e),f.bBox(o.node())}function S(t,e,n,r,i,a){var s="_cache"+e;t[s]&&t[s].key===i||(t[s]={key:i,value:n});var l=o.aggNums(a,null,[t[s].value,r],2);return t[s].value=l,l}t.exports=function(t,e,n,g){var v,m=t._fullLayout;_(n)&&g&&(v=g()),o.makeTraceGroups(m._indicatorlayer,e,"trace").each((function(e){var g,E,C,P,L,O=e[0].trace,I=r.select(this),D=O._hasGauge,R=O._isAngular,z=O._isBullet,N=O.domain,j={w:m._size.w*(N.x[1]-N.x[0]),h:m._size.h*(N.y[1]-N.y[0]),l:m._size.l+m._size.w*N.x[0],r:m._size.r+m._size.w*(1-N.x[1]),t:m._size.t+m._size.h*(1-N.y[1]),b:m._size.b+m._size.h*N.y[0]},F=j.l+j.w/2,B=j.t+j.h/2,U=Math.min(j.w/2,j.h),H=h.innerRadius*U,V=O.align||"center";if(E=B,D){if(R&&(g=F,E=B+U/2,C=function(t){return function(t,e){var n=Math.sqrt(t.width/2*(t.width/2)+t.height*t.height),r=e/n;return[r,t,e]}(t,.9*H)}),z){var q=h.bulletPadding,G=1-h.bulletNumberDomainSize+q;g=j.l+(G+(1-G)*x[V])*j.w,C=function(t){return M(t,(h.bulletNumberDomainSize-q)*j.w,j.h)}}}else g=j.l+x[V]*j.w,C=function(t){return M(t,j.w,j.h)};!function(t,e,n,i){var c,u,h,g=n[0].trace,v=i.numbersX,m=i.numbersY,k=g.align||"center",M=b[k],E=i.transitionOpts,C=i.onComplete,P=o.ensureSingle(e,"g","numbers"),L=[];g._hasNumber&&L.push("number"),g._hasDelta&&(L.push("delta"),"left"===g.delta.position&&L.reverse());var O=P.selectAll("text").data(L);function I(e,n,r,i){if(!e.match("s")||r>=0===i>=0||n(r).slice(-1).match(w)||n(i).slice(-1).match(w))return n;var a=e.slice().replace("s","f").replace(/\d+/,(function(t){return parseInt(t)-1})),o=T(t,{tickformat:a});return function(t){return Math.abs(t)<1?p.tickText(o,t).text:n(t)}}function D(){var e=T(t,{tickformat:g.number.valueformat},g._range);e.setScale(),p.prepTicks(e);var i=function(t){return p.tickText(e,t).text},o=g.number.suffix,s=g.number.prefix,l=P.select("text.number");function u(){var e="number"===typeof n[0].y?s+i(n[0].y)+o:"-";l.text(e).call(f.font,g.number.font).call(d.convertToTspans,t)}return _(E)?l.transition().duration(E.duration).ease(E.easing).each("end",(function(){u(),C&&C()})).each("interrupt",(function(){u(),C&&C()})).attrTween("text",(function(){var t=r.select(this),e=a(n[0].lastY,n[0].y);g._lastValue=n[0].y;var l=I(g.number.valueformat,i,n[0].lastY,n[0].y);return function(n){t.text(s+l(e(n))+o)}})):u(),c=A(s+i(n[0].y)+o,g.number.font,M,t),l}function R(){var e=T(t,{tickformat:g.delta.valueformat},g._range);e.setScale(),p.prepTicks(e);var i=function(t){return p.tickText(e,t).text},o=g.delta.suffix,s=g.delta.prefix,l=function(t){return g.delta.relative?t.relativeDelta:t.delta},c=function(t,e){return 0===t||"number"!==typeof t||isNaN(t)?"-":(t>0?g.delta.increasing.symbol:g.delta.decreasing.symbol)+s+e(t)+o},h=function(t){return t.delta>=0?g.delta.increasing.color:g.delta.decreasing.color};void 0===g._deltaLastValue&&(g._deltaLastValue=l(n[0]));var v=P.select("text.delta");function m(){v.text(c(l(n[0]),i)).call(y.fill,h(n[0])).call(d.convertToTspans,t)}return v.call(f.font,g.delta.font).call(y.fill,h({delta:g._deltaLastValue})),_(E)?v.transition().duration(E.duration).ease(E.easing).tween("text",(function(){var t=r.select(this),e=l(n[0]),o=g._deltaLastValue,s=I(g.delta.valueformat,i,o,e),u=a(o,e);return g._deltaLastValue=e,function(e){t.text(c(u(e),s)),t.call(y.fill,h({delta:u(e)}))}})).each("end",(function(){m(),C&&C()})).each("interrupt",(function(){m(),C&&C()})):m(),u=A(c(l(n[0]),i),g.delta.font,M,t),v}O.enter().append("text"),O.attr("text-anchor",(function(){return M})).attr("class",(function(t){return t})).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),O.exit().remove();var z,N=g.mode+g.align;if(g._hasDelta&&(z=R(),N+=g.delta.position+g.delta.font.size+g.delta.font.family+g.delta.valueformat,N+=g.delta.increasing.symbol+g.delta.decreasing.symbol,h=u),g._hasNumber&&(D(),N+=g.number.font.size+g.number.font.family+g.number.valueformat+g.number.suffix+g.number.prefix,h=c),g._hasDelta&&g._hasNumber){var j,F,B=[(c.left+c.right)/2,(c.top+c.bottom)/2],U=[(u.left+u.right)/2,(u.top+u.bottom)/2],H=.75*g.delta.font.size;"left"===g.delta.position&&(j=S(g,"deltaPos",0,-1*(c.width*x[g.align]+u.width*(1-x[g.align])+H),N,Math.min),F=B[1]-U[1],h={width:c.width+u.width+H,height:Math.max(c.height,u.height),left:u.left+j,right:c.right,top:Math.min(c.top,u.top+F),bottom:Math.max(c.bottom,u.bottom+F)}),"right"===g.delta.position&&(j=S(g,"deltaPos",0,c.width*(1-x[g.align])+u.width*x[g.align]+H,N,Math.max),F=B[1]-U[1],h={width:c.width+u.width+H,height:Math.max(c.height,u.height),left:c.left,right:u.right+j,top:Math.min(c.top,u.top+F),bottom:Math.max(c.bottom,u.bottom+F)}),"bottom"===g.delta.position&&(j=null,F=u.height,h={width:Math.max(c.width,u.width),height:c.height+u.height,left:Math.min(c.left,u.left),right:Math.max(c.right,u.right),top:c.bottom-c.height,bottom:c.bottom+u.height}),"top"===g.delta.position&&(j=null,F=c.top,h={width:Math.max(c.width,u.width),height:c.height+u.height,left:Math.min(c.left,u.left),right:Math.max(c.right,u.right),top:c.bottom-c.height-u.height,bottom:c.bottom}),z.attr({dx:j,dy:F})}(g._hasNumber||g._hasDelta)&&P.attr("transform",(function(){var t=i.numbersScaler(h);N+=t[2];var e,n=S(g,"numbersScale",1,t[0],N,Math.min);g._scaleNumbers||(n=1),e=g._isAngular?m-n*h.bottom:m-n*(h.top+h.bottom)/2,g._numbersTop=n*h.top+e;var r=h[k];"center"===k&&(r=(h.left+h.right)/2);var a=v-n*r;return a=S(g,"numbersTranslate",0,a,N,Math.max),l(a,e)+s(n)}))}(t,I,e,{numbersX:g,numbersY:E,numbersScaler:C,transitionOpts:n,onComplete:v}),D&&(P={range:O.gauge.axis.range,color:O.gauge.bgcolor,line:{color:O.gauge.bordercolor,width:0},thickness:1},L={range:O.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:O.gauge.bordercolor,width:O.gauge.borderwidth},thickness:1});var W=I.selectAll("g.angular").data(R?e:[]);W.exit().remove();var Y=I.selectAll("g.angularaxis").data(R?e:[]);Y.exit().remove(),R&&function(t,e,n,a){var o,s,f,h,d=n[0].trace,g=a.size,v=a.radius,m=a.innerRadius,y=a.gaugeBg,b=a.gaugeOutline,x=[g.l+g.w/2,g.t+g.h/2+v/2],w=a.gauge,M=a.layer,A=a.transitionOpts,S=a.onComplete,E=Math.PI/2;function C(t){var e=d.gauge.axis.range[0],n=(t-e)/(d.gauge.axis.range[1]-e)*Math.PI-E;return n<-E?-E:n>E?E:n}function P(t){return r.svg.arc().innerRadius((m+v)/2-t/2*(v-m)).outerRadius((m+v)/2+t/2*(v-m)).startAngle(-E)}function L(t){t.attr("d",(function(t){return P(t.thickness).startAngle(C(t.range[0])).endAngle(C(t.range[1]))()}))}w.enter().append("g").classed("angular",!0),w.attr("transform",l(x[0],x[1])),M.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),M.selectAll("g.xangularaxistick,path,text").remove(),(o=T(t,d.gauge.axis)).type="linear",o.range=d.gauge.axis.range,o._id="xangularaxis",o.ticklabeloverflow="allow",o.setScale();var O=function(t){return(o.range[0]-t.x)/(o.range[1]-o.range[0])*Math.PI+Math.PI},I={},D=p.makeLabelFns(o,0).labelStandoff;I.xFn=function(t){var e=O(t);return Math.cos(e)*D},I.yFn=function(t){var e=O(t),n=Math.sin(e)>0?.2:1;return-Math.sin(e)*(D+t.fontSize*n)+Math.abs(Math.cos(e))*(t.fontSize*u)},I.anchorFn=function(t){var e=O(t),n=Math.cos(e);return Math.abs(n)<.1?"middle":n>0?"start":"end"},I.heightFn=function(t,e,n){var r=O(t);return-.5*(1+Math.sin(r))*n};var R=function(t){return l(x[0]+v*Math.cos(t),x[1]-v*Math.sin(t))};f=function(t){return R(O(t))};var z=function(t){var e=O(t);return R(e)+"rotate("+-c(e)+")"};if(s=p.calcTicks(o),h=p.getTickSigns(o)[2],o.visible){h="inside"===o.ticks?-1:1;var N=(o.linewidth||1)/2;p.drawTicks(t,o,{vals:s,layer:M,path:"M"+h*N+",0h"+h*o.ticklen,transFn:z}),p.drawLabels(t,o,{vals:s,layer:M,transFn:f,labelFns:I})}var j=[y].concat(d.gauge.steps),F=w.selectAll("g.bg-arc").data(j);F.enter().append("g").classed("bg-arc",!0).append("path"),F.select("path").call(L).call(k),F.exit().remove();var B=P(d.gauge.bar.thickness),U=w.selectAll("g.value-arc").data([d.gauge.bar]);U.enter().append("g").classed("value-arc",!0).append("path");var H,V,q,G=U.select("path");_(A)?(G.transition().duration(A.duration).ease(A.easing).each("end",(function(){S&&S()})).each("interrupt",(function(){S&&S()})).attrTween("d",(H=B,V=C(n[0].lastY),q=C(n[0].y),function(){var t=i(V,q);return function(e){return H.endAngle(t(e))()}})),d._lastValue=n[0].y):G.attr("d","number"===typeof n[0].y?B.endAngle(C(n[0].y)):"M0,0Z"),G.call(k),U.exit().remove(),j=[];var W=d.gauge.threshold.value;(W||0===W)&&j.push({range:[W,W],color:d.gauge.threshold.color,line:{color:d.gauge.threshold.line.color,width:d.gauge.threshold.line.width},thickness:d.gauge.threshold.thickness});var Y=w.selectAll("g.threshold-arc").data(j);Y.enter().append("g").classed("threshold-arc",!0).append("path"),Y.select("path").call(L).call(k),Y.exit().remove();var $=w.selectAll("g.gauge-outline").data([b]);$.enter().append("g").classed("gauge-outline",!0).append("path"),$.select("path").call(L).call(k),$.exit().remove()}(t,0,e,{radius:U,innerRadius:H,gauge:W,layer:Y,size:j,gaugeBg:P,gaugeOutline:L,transitionOpts:n,onComplete:v});var $=I.selectAll("g.bullet").data(z?e:[]);$.exit().remove();var X=I.selectAll("g.bulletaxis").data(z?e:[]);X.exit().remove(),z&&function(t,e,n,r){var i,a,o,s,c,u=n[0].trace,f=r.gauge,d=r.layer,g=r.gaugeBg,v=r.gaugeOutline,m=r.size,b=u.domain,x=r.transitionOpts,w=r.onComplete;f.enter().append("g").classed("bullet",!0),f.attr("transform",l(m.l,m.t)),d.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),d.selectAll("g.xbulletaxistick,path,text").remove();var M=m.h,A=u.gauge.bar.thickness*M,S=b.x[0],E=b.x[0]+(b.x[1]-b.x[0])*(u._hasNumber||u._hasDelta?1-h.bulletNumberDomainSize:1);function C(t){t.attr("width",(function(t){return Math.max(0,i.c2p(t.range[1])-i.c2p(t.range[0]))})).attr("x",(function(t){return i.c2p(t.range[0])})).attr("y",(function(t){return.5*(1-t.thickness)*M})).attr("height",(function(t){return t.thickness*M}))}(i=T(t,u.gauge.axis))._id="xbulletaxis",i.domain=[S,E],i.setScale(),a=p.calcTicks(i),o=p.makeTransTickFn(i),s=p.getTickSigns(i)[2],c=m.t+m.h,i.visible&&(p.drawTicks(t,i,{vals:"inside"===i.ticks?p.clipEnds(i,a):a,layer:d,path:p.makeTickPath(i,c,s),transFn:o}),p.drawLabels(t,i,{vals:a,layer:d,transFn:o,labelFns:p.makeLabelFns(i,c)}));var P=[g].concat(u.gauge.steps),L=f.selectAll("g.bg-bullet").data(P);L.enter().append("g").classed("bg-bullet",!0).append("rect"),L.select("rect").call(C).call(k),L.exit().remove();var O=f.selectAll("g.value-bullet").data([u.gauge.bar]);O.enter().append("g").classed("value-bullet",!0).append("rect"),O.select("rect").attr("height",A).attr("y",(M-A)/2).call(k),_(x)?O.select("rect").transition().duration(x.duration).ease(x.easing).each("end",(function(){w&&w()})).each("interrupt",(function(){w&&w()})).attr("width",Math.max(0,i.c2p(Math.min(u.gauge.axis.range[1],n[0].y)))):O.select("rect").attr("width","number"===typeof n[0].y?Math.max(0,i.c2p(Math.min(u.gauge.axis.range[1],n[0].y))):0),O.exit().remove();var I=n.filter((function(){return u.gauge.threshold.value||0===u.gauge.threshold.value})),D=f.selectAll("g.threshold-bullet").data(I);D.enter().append("g").classed("threshold-bullet",!0).append("line"),D.select("line").attr("x1",i.c2p(u.gauge.threshold.value)).attr("x2",i.c2p(u.gauge.threshold.value)).attr("y1",(1-u.gauge.threshold.thickness)/2*M).attr("y2",(1-(1-u.gauge.threshold.thickness)/2)*M).call(y.stroke,u.gauge.threshold.line.color).style("stroke-width",u.gauge.threshold.line.width),D.exit().remove();var R=f.selectAll("g.gauge-outline").data([v]);R.enter().append("g").classed("gauge-outline",!0).append("rect"),R.select("rect").call(C).call(k),R.exit().remove()}(t,0,e,{gauge:$,layer:X,size:j,gaugeBg:P,gaugeOutline:L,transitionOpts:n,onComplete:v});var K=I.selectAll("text.title").data(e);K.exit().remove(),K.enter().append("text").classed("title",!0),K.attr("text-anchor",(function(){return z?b.right:b[O.title.align]})).text(O.title.text).call(f.font,O.title.font).call(d.convertToTspans,t),K.attr("transform",(function(){var t,e=j.l+j.w*x[O.title.align],n=h.titlePadding,r=f.bBox(K.node());return D?(R&&(t=O.gauge.axis.visible?f.bBox(Y.node()).top-n-r.bottom:j.t+j.h/2-U/2-r.bottom-n),z&&(t=E-(r.top+r.bottom)/2,e=j.l-h.bulletPadding*j.w)):t=O._numbersTop-n-r.bottom,l(e,t)}))}))}},16249:function(t,e,n){"use strict";var r=n(50693),i=n(12663).axisHoverFormat,a=n(5386).f,o=n(2418),s=n(9012),l=n(1426).extendFlat,c=n(30962).overrideAll,u=t.exports=c(l({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:a(),xhoverformat:i("x"),yhoverformat:i("y"),zhoverformat:i("z"),valuehoverformat:i("value",1),showlegend:l({},s.showlegend,{dflt:!1})},r("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:o.opacity,lightposition:o.lightposition,lighting:o.lighting,flatshading:o.flatshading,contour:o.contour,hoverinfo:l({},s.hoverinfo)}),"calc","nested");u.flatshading.dflt=!0,u.lighting.facenormalsepsilon.dflt=0,u.x.editType=u.y.editType=u.z.editType=u.value.editType="calc+clearAxisTypes",u.transforms=void 0},56959:function(t,e,n){"use strict";var r=n(78803),i=n(88489).processGrid,a=n(88489).filter;t.exports=function(t,e){e._len=Math.min(e.x.length,e.y.length,e.z.length,e.value.length),e._x=a(e.x,e._len),e._y=a(e.y,e._len),e._z=a(e.z,e._len),e._value=a(e.value,e._len);var n=i(e);e._gridFill=n.fill,e._Xs=n.Xs,e._Ys=n.Ys,e._Zs=n.Zs,e._len=n.len;for(var o=1/0,s=-1/0,l=0;l0;n--){var r=Math.min(e[n],e[n-1]),i=Math.max(e[n],e[n-1]);if(i>r&&r-1}function z(t,e){return null===t?e:t}function N(e,n,r){P();var i,a,o,l=[n],c=[r];if(s>=1)l=[n],c=[r];else if(s>0){var u=function(t,e){var n=t[0],r=t[1],i=t[2],a=function(t,e,n){for(var r=[],i=0;i-1?r[d]:C(p,g,m);h[d]=b>-1?b:O(p,g,m,z(e,y))}i=h[0],a=h[1],o=h[2],t._meshI.push(i),t._meshJ.push(a),t._meshK.push(o),++v}}function j(t,e,n,r){var i=t[3];ir&&(i=r);for(var a=(t[3]-i)/(t[3]-e[3]+1e-9),o=[],s=0;s<4;s++)o[s]=(1-a)*t[s]+a*e[s];return o}function F(t,e,n){return t>=e&&t<=n}function B(t){var e=.001*(E-S);return t>=S-e&&t<=E+e}function U(e){for(var n=[],r=0;r<4;r++){var i=e[r];n.push([t._x[i],t._y[i],t._z[i],t._value[i]])}return n}var H=3;function V(t,e,n,r,i,a){a||(a=1),n=[-1,-1,-1];var o=!1,s=[F(e[0][3],r,i),F(e[1][3],r,i),F(e[2][3],r,i)];if(!s[0]&&!s[1]&&!s[2])return!1;var l=function(t,e,n){return B(e[0][3])&&B(e[1][3])&&B(e[2][3])?(N(t,e,n),!0):aMath.abs(k-A)?[M,k]:[k,A];tt(n,C[0],C[1])}}var P=[[Math.min(S,A),Math.max(S,A)],[Math.min(M,E),Math.max(M,E)]];["x","y","z"].forEach((function(n){for(var r=[],i=0;i0&&(f.push(p.id),"x"===n?h.push([p.distRatio,0,0]):"y"===n?h.push([0,p.distRatio,0]):h.push([0,0,p.distRatio]))}else u=it(1,"x"===n?x-1:"y"===n?w-1:_-1);f.length>0&&(r[a]="x"===n?et(e,f,o,s,h,r[a]):"y"===n?nt(e,f,o,s,h,r[a]):rt(e,f,o,s,h,r[a]),a++),u.length>0&&(r[a]="x"===n?K(e,u,o,s,r[a]):"y"===n?Z(e,u,o,s,r[a]):J(e,u,o,s,r[a]),a++)}var g=t.caps[n];g.show&&g.fill&&(D(g.fill),r[a]="x"===n?K(e,[0,x-1],o,s,r[a]):"y"===n?Z(e,[0,w-1],o,s,r[a]):J(e,[0,_-1],o,s,r[a]),a++)}})),0===v&&L(),t._meshX=r,t._meshY=i,t._meshZ=a,t._meshIntensity=o,t._Xs=m,t._Ys=y,t._Zs=b}(),t}t.exports={findNearestOnAxis:l,generateIsoMeshes:h,createIsosurfaceTrace:function(t,e){var n=t.glplot.gl,i=r({gl:n}),a=new c(t,i,e.uid);return i._trace=a,a.update(e),t.glplot.add(i),a}}},82738:function(t,e,n){"use strict";var r=n(71828),i=n(73972),a=n(16249),o=n(1586);function s(t,e,n,r,a){var s=a("isomin"),l=a("isomax");void 0!==l&&null!==l&&void 0!==s&&null!==s&&s>l&&(e.isomin=null,e.isomax=null);var c=a("x"),u=a("y"),f=a("z"),h=a("value");c&&c.length&&u&&u.length&&f&&f.length&&h&&h.length?(i.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x","y","z"],r),a("valuehoverformat"),["x","y","z"].forEach((function(t){a(t+"hoverformat");var e="caps."+t;a(e+".show")&&a(e+".fill");var n="slices."+t;a(n+".show")&&(a(n+".fill"),a(n+".locations"))})),a("spaceframe.show")&&a("spaceframe.fill"),a("surface.show")&&(a("surface.count"),a("surface.fill"),a("surface.pattern")),a("contour.show")&&(a("contour.color"),a("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(t){a(t)})),o(t,e,r,a,{prefix:"",cLetter:"c"}),e._length=null):e.visible=!1}t.exports={supplyDefaults:function(t,e,n,i){s(t,e,0,i,(function(n,i){return r.coerce(t,e,a,n,i)}))},supplyIsoDefaults:s}},64943:function(t,e,n){"use strict";t.exports={attributes:n(16249),supplyDefaults:n(82738).supplyDefaults,calc:n(56959),colorbar:{min:"cmin",max:"cmax"},plot:n(22674).createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:n(58547),categories:["gl3d","showLegend"],meta:{}}},2418:function(t,e,n){"use strict";var r=n(50693),i=n(12663).axisHoverFormat,a=n(5386).f,o=n(54532),s=n(9012),l=n(1426).extendFlat;t.exports=l({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:a({editType:"calc"}),xhoverformat:i("x"),yhoverformat:i("y"),zhoverformat:i("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},r("",{colorAttr:"`intensity`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:o.opacity,flatshading:{valType:"boolean",dflt:!1,editType:"calc"},contour:{show:l({},o.contours.x.show,{}),color:o.contours.x.color,width:o.contours.x.width,editType:"calc"},lightposition:{x:l({},o.lightposition.x,{dflt:1e5}),y:l({},o.lightposition.y,{dflt:1e5}),z:l({},o.lightposition.z,{dflt:0}),editType:"calc"},lighting:l({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"},o.lighting),hoverinfo:l({},s.hoverinfo,{editType:"calc"}),showlegend:l({},s.showlegend,{dflt:!1})})},82932:function(t,e,n){"use strict";var r=n(78803);t.exports=function(t,e){e.intensity&&r(t,e,{vals:e.intensity,containerStr:"",cLetter:"c"})}},91134:function(t,e,n){"use strict";var r=n(9330).gl_mesh3d,i=n(9330).delaunay_triangulate,a=n(9330).alpha_shape,o=n(9330).convex_hull,s=n(81697).parseColorScale,l=n(78614),c=n(21081).extractOpts,u=n(90060);function f(t,e,n){this.scene=t,this.uid=n,this.mesh=e,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var h=f.prototype;function d(t){for(var e=[],n=t.length,r=0;r=e-.5)return!1;return!0}h.handlePick=function(t){if(t.object===this.mesh){var e=t.index=t.data.index;t.data._cellCenter?t.traceCoordinate=t.data.dataCoordinate:t.traceCoordinate=[this.data.x[e],this.data.y[e],this.data.z[e]];var n=this.data.hovertext||this.data.text;return Array.isArray(n)&&void 0!==n[e]?t.textLabel=n[e]:n&&(t.textLabel=n),!0}},h.update=function(t){var e=this.scene,n=e.fullSceneLayout;this.data=t;var r,f=t.x.length,h=u(p(n.xaxis,t.x,e.dataScale[0],t.xcalendar),p(n.yaxis,t.y,e.dataScale[1],t.ycalendar),p(n.zaxis,t.z,e.dataScale[2],t.zcalendar));if(t.i&&t.j&&t.k){if(t.i.length!==t.j.length||t.j.length!==t.k.length||!v(t.i,f)||!v(t.j,f)||!v(t.k,f))return;r=u(g(t.i),g(t.j),g(t.k))}else r=0===t.alphahull?o(h):t.alphahull>0?a(t.alphahull,h):function(t,e){for(var n=["x","y","z"].indexOf(t),r=[],a=e.length,o=0;om):v=M>_,m=M;var A=c(_,k,T,M);A.pos=w,A.yc=(_+M)/2,A.i=x,A.dir=v?"increasing":"decreasing",A.x=A.pos,A.y=[T,k],y&&(A.orig_p=n[x]),p&&(A.tx=e.text[x]),g&&(A.htx=e.hovertext[x]),b.push(A)}else b.push({pos:w,empty:!0})}return e._extremes[l._id]=a.findExtremes(l,r.concat(h,f),{padded:!0}),b.length&&(b[0].t={labels:{open:i(t,"open:")+" ",high:i(t,"high:")+" ",low:i(t,"low:")+" ",close:i(t,"close:")+" "}}),b}t.exports={calc:function(t,e){var n=a.getFromId(t,e.xaxis),i=a.getFromId(t,e.yaxis),s=function(t,e,n){var i=n._minDiff;if(!i){var a,s=t._fullData,l=[];for(i=1/0,a=0;a"+c.labels[b]+r.hoverLabelText(s,x,l.yhoverformat):((y=i.extendFlat({},h)).y0=y.y1=w,y.yLabelVal=x,y.yLabel=c.labels[b]+r.hoverLabelText(s,x,l.yhoverformat),y.name="",f.push(y),v[x]=y)}return f}function h(t,e,n,i){var a=t.cd,o=t.ya,l=a[0].trace,f=a[0].t,h=u(t,e,n,i);if(!h)return[];var d=a[h.index],p=h.index=d.i,g=d.dir;function v(t){return f.labels[t]+r.hoverLabelText(o,l[t][p],l.yhoverformat)}var m=d.hi||l.hoverinfo,y=m.split("+"),b="all"===m,x=b||-1!==y.indexOf("y"),w=b||-1!==y.indexOf("text"),_=x?[v("open"),v("high"),v("low"),v("close")+" "+c[g]]:[];return w&&s(d,l,_),h.extraText=_.join("
"),h.y0=h.y1=o.c2p(d.yc,!0),[h]}t.exports={hoverPoints:function(t,e,n,r){return t.cd[0].trace.hoverlabel.split?f(t,e,n,r):h(t,e,n,r)},hoverSplit:f,hoverOnPoints:h}},54186:function(t,e,n){"use strict";t.exports={moduleType:"trace",name:"ohlc",basePlotModule:n(93612),categories:["cartesian","svg","showLegend"],meta:{},attributes:n(2522),supplyDefaults:n(16169),calc:n(3485).calc,plot:n(72314),style:n(53101),hoverPoints:n(66449).hoverPoints,selectPoints:n(67324)}},14555:function(t,e,n){"use strict";var r=n(73972),i=n(71828);t.exports=function(t,e,n,a){var o=n("x"),s=n("open"),l=n("high"),c=n("low"),u=n("close");if(n("hoverlabel.split"),r.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x"],a),s&&l&&c&&u){var f=Math.min(s.length,l.length,c.length,u.length);return o&&(f=Math.min(f,i.minRowLength(o))),e._length=f,f}}},72314:function(t,e,n){"use strict";var r=n(39898),i=n(71828);t.exports=function(t,e,n,a){var o=e.yaxis,s=e.xaxis,l=!!s.rangebreaks;i.makeTraceGroups(a,n,"trace ohlc").each((function(t){var e=r.select(this),n=t[0],a=n.t;if(!0!==n.trace.visible||a.empty)e.remove();else{var c=a.tickLen,u=e.selectAll("path").data(i.identity);u.enter().append("path"),u.exit().remove(),u.attr("d",(function(t){if(t.empty)return"M0,0Z";var e=s.c2p(t.pos-c,!0),n=s.c2p(t.pos+c,!0),r=l?(e+n)/2:s.c2p(t.pos,!0);return"M"+e+","+o.c2p(t.o,!0)+"H"+r+"M"+r+","+o.c2p(t.h,!0)+"V"+o.c2p(t.l,!0)+"M"+n+","+o.c2p(t.c,!0)+"H"+r}))}}))}},67324:function(t){"use strict";t.exports=function(t,e){var n,r=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=r[0].t.bPos||0;if(!1===e)for(n=0;n=t.length)return!1;if(void 0!==e[t[n]])return!1;e[t[n]]=!0}return!0}(n))for(e=0;e0;c&&(o="array");var u=n("categoryorder",o);"array"===u?(n("categoryarray"),n("ticktext")):(delete t.categoryarray,delete t.ticktext),c||"array"!==u||(e.categoryorder="trace")}}t.exports=function(t,e,n,f){function h(n,i){return r.coerce(t,e,l,n,i)}var d=s(t,e,{name:"dimensions",handleItemDefaults:u}),p=function(t,e,n,o,s){s("line.shape"),s("line.hovertemplate");var l=s("line.color",o.colorway[0]);if(i(t,"line")&&r.isArrayOrTypedArray(l)){if(l.length)return s("line.colorscale"),a(t,e,o,s,{prefix:"line.",cLetter:"c"}),l.length;e.line.color=n}return 1/0}(t,e,n,f,h);o(e,f,h),Array.isArray(d)&&d.length||(e.visible=!1),c(e,d,"values",p),h("hoveron"),h("hovertemplate"),h("arrangement"),h("bundlecolors"),h("sortpaths"),h("counts");var g={family:f.font.family,size:Math.round(f.font.size),color:f.font.color};r.coerceFont(h,"labelfont",g);var v={family:f.font.family,size:Math.round(f.font.size/1.2),color:f.font.color};r.coerceFont(h,"tickfont",v)}},94873:function(t,e,n){"use strict";t.exports={attributes:n(99506),supplyDefaults:n(14647),calc:n(28699),plot:n(45784),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:n(27677),categories:["noOpacity"],meta:{}}},45460:function(t,e,n){"use strict";var r=n(39898),i=n(81684).k4,a=n(72391),o=n(30211),s=n(71828),l=s.strTranslate,c=n(91424),u=n(84267),f=n(63893);function h(t,e,n,i){var a=e._context.staticPlot,o=t.map(N.bind(0,e,n)),u=i.selectAll("g.parcatslayer").data([null]);u.enter().append("g").attr("class","parcatslayer").style("pointer-events",a?"none":"all");var h=u.selectAll("g.trace.parcats").data(o,d),y=h.enter().append("g").attr("class","trace parcats");h.attr("transform",(function(t){return l(t.x,t.y)})),y.append("g").attr("class","paths");var b=h.select("g.paths").selectAll("path.path").data((function(t){return t.paths}),d);b.attr("fill",(function(t){return t.model.color}));var _=b.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",(function(t){return t.model.color})).attr("fill-opacity",0);w(_),b.attr("d",(function(t){return t.svgD})),_.empty()||b.sort(g),b.exit().remove(),b.on("mouseover",v).on("mouseout",m).on("click",x),y.append("g").attr("class","dimensions");var M=h.select("g.dimensions").selectAll("g.dimension").data((function(t){return t.dimensions}),d);M.enter().append("g").attr("class","dimension"),M.attr("transform",(function(t){return l(t.x,0)})),M.exit().remove();var A=M.selectAll("g.category").data((function(t){return t.categories}),d),S=A.enter().append("g").attr("class","category");A.attr("transform",(function(t){return l(0,t.y)})),S.append("rect").attr("class","catrect").attr("pointer-events","none"),A.select("rect.catrect").attr("fill","none").attr("width",(function(t){return t.width})).attr("height",(function(t){return t.height})),k(S);var E=A.selectAll("rect.bandrect").data((function(t){return t.bands}),d);E.each((function(){s.raiseToTop(this)})),E.attr("fill",(function(t){return t.color}));var D=E.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",(function(t){return t.color})).attr("fill-opacity",0);E.attr("fill",(function(t){return t.color})).attr("width",(function(t){return t.width})).attr("height",(function(t){return t.height})).attr("y",(function(t){return t.y})).attr("cursor",(function(t){return"fixed"===t.parcatsViewModel.arrangement?"default":"perpendicular"===t.parcatsViewModel.arrangement?"ns-resize":"move"})),T(D),E.exit().remove(),S.append("text").attr("class","catlabel").attr("pointer-events","none");var R=e._fullLayout.paper_bgcolor;A.select("text.catlabel").attr("text-anchor",(function(t){return p(t)?"start":"end"})).attr("alignment-baseline","middle").style("text-shadow",f.makeTextShadow(R)).style("fill","rgb(0, 0, 0)").attr("x",(function(t){return p(t)?t.width+5:-5})).attr("y",(function(t){return t.height/2})).text((function(t){return t.model.categoryLabel})).each((function(t){c.font(r.select(this),t.parcatsViewModel.categorylabelfont),f.convertToTspans(r.select(this),e)})),S.append("text").attr("class","dimlabel"),A.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",(function(t){return"fixed"===t.parcatsViewModel.arrangement?"default":"ew-resize"})).attr("x",(function(t){return t.width/2})).attr("y",-5).text((function(t,e){return 0===e?t.parcatsViewModel.model.dimensions[t.model.dimensionInd].dimensionLabel:null})).each((function(t){c.font(r.select(this),t.parcatsViewModel.labelfont)})),A.selectAll("rect.bandrect").on("mouseover",C).on("mouseout",P),A.exit().remove(),M.call(r.behavior.drag().origin((function(t){return{x:t.x,y:0}})).on("dragstart",L).on("drag",O).on("dragend",I)),h.each((function(t){t.traceSelection=r.select(this),t.pathSelection=r.select(this).selectAll("g.paths").selectAll("path.path"),t.dimensionSelection=r.select(this).selectAll("g.dimensions").selectAll("g.dimension")})),h.exit().remove()}function d(t){return t.key}function p(t){var e=t.parcatsViewModel.dimensions.length,n=t.parcatsViewModel.dimensions[e-1].model.dimensionInd;return t.model.dimensionInd===n}function g(t,e){return t.model.rawColor>e.model.rawColor?1:t.model.rawColor"),C=r.mouse(f)[0];o.loneHover({trace:h,x:x-p.left+g.left,y:w-p.top+g.top,text:E,color:t.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:k,idealAlign:C1&&h.displayInd===f.dimensions.length-1?(i=c.left,a="left"):(i=c.left+c.width,a="right");var g=u.model.count,v=u.model.categoryLabel,m=g/u.parcatsViewModel.model.count,y={countLabel:g,categoryLabel:v,probabilityLabel:m.toFixed(3)},b=[];-1!==u.parcatsViewModel.hoverinfoItems.indexOf("count")&&b.push(["Count:",y.countLabel].join(" ")),-1!==u.parcatsViewModel.hoverinfoItems.indexOf("probability")&&b.push(["P("+y.categoryLabel+"):",y.probabilityLabel].join(" "));var x=b.join("
");return{trace:d,x:o*(i-e.left),y:s*(p-e.top),text:x,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:a,hovertemplate:d.hovertemplate,hovertemplateLabels:y,eventData:[{data:d._input,fullData:d,count:g,category:v,probability:m}]}}function C(t){if(!t.parcatsViewModel.dragDimension&&-1===t.parcatsViewModel.hoverinfoItems.indexOf("skip")){if(r.mouse(this)[1]<-1)return;var e,n=t.parcatsViewModel.graphDiv,i=n._fullLayout,a=i._paperdiv.node().getBoundingClientRect(),l=t.parcatsViewModel.hoveron,c=this;"color"===l?(function(t){var e=r.select(t).datum(),n=M(e);_(n),n.each((function(){s.raiseToTop(this)})),r.select(t.parentNode).selectAll("rect.bandrect").filter((function(t){return t.color===e.color})).each((function(){s.raiseToTop(this),r.select(this).attr("stroke","black").attr("stroke-width",1.5)}))}(c),S(c,"plotly_hover",r.event)):(function(t){r.select(t.parentNode).selectAll("rect.bandrect").each((function(t){var e=M(t);_(e),e.each((function(){s.raiseToTop(this)}))})),r.select(t.parentNode).select("rect.catrect").attr("stroke","black").attr("stroke-width",2.5)}(c),A(c,"plotly_hover",r.event)),-1===t.parcatsViewModel.hoverinfoItems.indexOf("none")&&("category"===l?e=E(n,a,c):"color"===l?e=function(t,e,n){t._fullLayout._calcInverseTransform(t);var i,a,o=t._fullLayout._invScaleX,s=t._fullLayout._invScaleY,l=n.getBoundingClientRect(),c=r.select(n).datum(),f=c.categoryViewModel,h=f.parcatsViewModel,d=h.model.dimensions[f.model.dimensionInd],p=h.trace,g=l.y+l.height/2;h.dimensions.length>1&&d.displayInd===h.dimensions.length-1?(i=l.left,a="left"):(i=l.left+l.width,a="right");var v=f.model.categoryLabel,m=c.parcatsViewModel.model.count,y=0;c.categoryViewModel.bands.forEach((function(t){t.color===c.color&&(y+=t.count)}));var b=f.model.count,x=0;h.pathSelection.each((function(t){t.model.color===c.color&&(x+=t.model.count)}));var w=y/m,_=y/x,k=y/b,T={countLabel:m,categoryLabel:v,probabilityLabel:w.toFixed(3)},M=[];-1!==f.parcatsViewModel.hoverinfoItems.indexOf("count")&&M.push(["Count:",T.countLabel].join(" ")),-1!==f.parcatsViewModel.hoverinfoItems.indexOf("probability")&&(M.push("P(color \u2229 "+v+"): "+T.probabilityLabel),M.push("P("+v+" | color): "+_.toFixed(3)),M.push("P(color | "+v+"): "+k.toFixed(3)));var A=M.join("
"),S=u.mostReadable(c.color,["black","white"]);return{trace:p,x:o*(i-e.left),y:s*(g-e.top),text:A,color:c.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontColor:S,fontSize:10,idealAlign:a,hovertemplate:p.hovertemplate,hovertemplateLabels:T,eventData:[{data:p._input,fullData:p,category:v,count:m,probability:w,categorycount:b,colorcount:x,bandcolorcount:y}]}}(n,a,c):"dimension"===l&&(e=function(t,e,n){var i=[];return r.select(n.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each((function(){i.push(E(t,e,this))})),i}(n,a,c)),e&&o.loneHover(e,{container:i._hoverlayer.node(),outerContainer:i._paper.node(),gd:n}))}}function P(t){var e=t.parcatsViewModel;e.dragDimension||(w(e.pathSelection),k(e.dimensionSelection.selectAll("g.category")),T(e.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),o.loneUnhover(e.graphDiv._fullLayout._hoverlayer.node()),e.pathSelection.sort(g),-1!==e.hoverinfoItems.indexOf("skip"))||("color"===t.parcatsViewModel.hoveron?S(this,"plotly_unhover",r.event):A(this,"plotly_unhover",r.event))}function L(t){"fixed"!==t.parcatsViewModel.arrangement&&(t.dragDimensionDisplayInd=t.model.displayInd,t.initialDragDimensionDisplayInds=t.parcatsViewModel.model.dimensions.map((function(t){return t.displayInd})),t.dragHasMoved=!1,t.dragCategoryDisplayInd=null,r.select(this).selectAll("g.category").select("rect.catrect").each((function(e){var n=r.mouse(this)[0],i=r.mouse(this)[1];-2<=n&&n<=e.width+2&&-2<=i&&i<=e.height+2&&(t.dragCategoryDisplayInd=e.model.displayInd,t.initialDragCategoryDisplayInds=t.model.categories.map((function(t){return t.displayInd})),e.model.dragY=e.y,s.raiseToTop(this.parentNode),r.select(this.parentNode).selectAll("rect.bandrect").each((function(e){e.yf.y+f.height/2&&(o.model.displayInd=f.model.displayInd,f.model.displayInd=l),t.dragCategoryDisplayInd=o.model.displayInd}if(null===t.dragCategoryDisplayInd||"freeform"===t.parcatsViewModel.arrangement){a.model.dragX=r.event.x;var h=t.parcatsViewModel.dimensions[n],d=t.parcatsViewModel.dimensions[i];void 0!==h&&a.model.dragXd.x&&(a.model.displayInd=d.model.displayInd,d.model.displayInd=t.dragDimensionDisplayInd),t.dragDimensionDisplayInd=a.model.displayInd}B(t.parcatsViewModel),F(t.parcatsViewModel),z(t.parcatsViewModel),R(t.parcatsViewModel)}}function I(t){if("fixed"!==t.parcatsViewModel.arrangement&&null!==t.dragDimensionDisplayInd){r.select(this).selectAll("text").attr("font-weight","normal");var e={},n=D(t.parcatsViewModel),i=t.parcatsViewModel.model.dimensions.map((function(t){return t.displayInd})),o=t.initialDragDimensionDisplayInds.some((function(t,e){return t!==i[e]}));o&&i.forEach((function(n,r){var i=t.parcatsViewModel.model.dimensions[r].containerInd;e["dimensions["+i+"].displayindex"]=n}));var s=!1;if(null!==t.dragCategoryDisplayInd){var l=t.model.categories.map((function(t){return t.displayInd}));if(s=t.initialDragCategoryDisplayInds.some((function(t,e){return t!==l[e]}))){var c=t.model.categories.slice().sort((function(t,e){return t.displayInd-e.displayInd})),u=c.map((function(t){return t.categoryValue})),f=c.map((function(t){return t.categoryLabel}));e["dimensions["+t.model.containerInd+"].categoryarray"]=[u],e["dimensions["+t.model.containerInd+"].ticktext"]=[f],e["dimensions["+t.model.containerInd+"].categoryorder"]="array"}}-1===t.parcatsViewModel.hoverinfoItems.indexOf("skip")&&!t.dragHasMoved&&t.potentialClickBand&&("color"===t.parcatsViewModel.hoveron?S(t.potentialClickBand,"plotly_click",r.event.sourceEvent):A(t.potentialClickBand,"plotly_click",r.event.sourceEvent)),t.model.dragX=null,null!==t.dragCategoryDisplayInd&&(t.parcatsViewModel.dimensions[t.dragDimensionDisplayInd].categories[t.dragCategoryDisplayInd].model.dragY=null,t.dragCategoryDisplayInd=null),t.dragDimensionDisplayInd=null,t.parcatsViewModel.dragDimension=null,t.dragHasMoved=null,t.potentialClickBand=null,B(t.parcatsViewModel),F(t.parcatsViewModel),r.transition().duration(300).ease("cubic-in-out").each((function(){z(t.parcatsViewModel,!0),R(t.parcatsViewModel,!0)})).each("end",(function(){(o||s)&&a.restyle(t.parcatsViewModel.graphDiv,e,[n])}))}}function D(t){for(var e,n=t.graphDiv._fullData,r=0;r=0;s--)u+="C"+c[s]+","+(e[s+1]+r)+" "+l[s]+","+(e[s]+r)+" "+(t[s]+n[s])+","+(e[s]+r),u+="l-"+n[s]+",0 ";return u+="Z"}function F(t){var e=t.dimensions,n=t.model,r=e.map((function(t){return t.categories.map((function(t){return t.y}))})),i=t.model.dimensions.map((function(t){return t.categories.map((function(t){return t.displayInd}))})),a=t.model.dimensions.map((function(t){return t.displayInd})),o=t.dimensions.map((function(t){return t.model.dimensionInd})),s=e.map((function(t){return t.x})),l=e.map((function(t){return t.width})),c=[];for(var u in n.paths)n.paths.hasOwnProperty(u)&&c.push(n.paths[u]);function f(t){var e=t.categoryInds.map((function(t,e){return i[e][t]}));return o.map((function(t){return e[t]}))}c.sort((function(e,n){var r=f(e),i=f(n);return"backward"===t.sortpaths&&(r.reverse(),i.reverse()),r.push(e.valueInds[0]),i.push(n.valueInds[0]),t.bundlecolors&&(r.unshift(e.rawColor),i.unshift(n.rawColor)),ri?1:0}));for(var h=new Array(c.length),d=e[0].model.count,p=e[0].categories.map((function(t){return t.height})).reduce((function(t,e){return t+e})),g=0;g0?p*(m.count/d):0;for(var y,b=new Array(r.length),x=0;x1?(t.width-80-16)/(r-1):0)*i;var a,o,s,l,c,u=[],f=t.model.maxCats,h=e.categories.length,d=e.count,p=t.height-8*(f-1),g=8*(f-h)/2,v=e.categories.map((function(t){return{displayInd:t.displayInd,categoryInd:t.categoryInd}}));for(v.sort((function(t,e){return t.displayInd-e.displayInd})),c=0;c0?o.count/d*p:0,s={key:o.valueInds[0],model:o,width:16,height:a,y:null!==o.dragY?o.dragY:g,bands:[],parcatsViewModel:t},g=g+a+8,u.push(s);return{key:e.dimensionInd,x:null!==e.dragX?e.dragX:n,y:0,width:16,model:e,categories:u,parcatsViewModel:t,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}t.exports=function(t,e,n,r){h(n,t,r,e)}},45784:function(t,e,n){"use strict";var r=n(45460);t.exports=function(t,e,n,i){var a=t._fullLayout,o=a._paper,s=a._size;r(t,o,e,{width:s.w,height:s.h,margin:{t:s.t,r:s.r,b:s.b,l:s.l}},n,i)}},73362:function(t,e,n){"use strict";var r=n(50693),i=n(13838),a=n(41940),o=n(27670).Y,s=n(1426).extendFlat,l=n(44467).templatedArray;t.exports={domain:o({name:"parcoords",trace:!0,editType:"plot"}),labelangle:{valType:"angle",dflt:0,editType:"plot"},labelside:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},labelfont:a({editType:"plot"}),tickfont:a({editType:"plot"}),rangefont:a({editType:"plot"}),dimensions:l("dimension",{label:{valType:"string",editType:"plot"},tickvals:s({},i.tickvals,{editType:"plot"}),ticktext:s({},i.ticktext,{editType:"plot"}),tickformat:s({},i.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:s({editType:"calc"},r("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(t,e,n){"use strict";var r=n(25706),i=n(39898),a=n(28984).keyFun,o=n(28984).repeat,s=n(71828).sorterAsc,l=n(71828).strTranslate,c=r.bar.snapRatio;function u(t,e){return t*(1-c)+e*c}var f=r.bar.snapClose;function h(t,e){return t*(1-f)+e*f}function d(t,e,n,r){if(function(t,e){for(var n=0;n=e[n][0]&&t<=e[n][1])return!0;return!1}(n,r))return n;var i=t?-1:1,a=0,o=e.length-1;if(i<0){var s=a;a=o,o=s}for(var l=e[a],c=l,f=a;i*fe){h=n;break}}if(a=u,isNaN(a)&&(a=isNaN(f)||isNaN(h)?isNaN(f)?h:f:e-c[f][1]t[1]+n||e=.9*t[1]+.1*t[0]?"n":e<=.9*t[0]+.1*t[1]?"s":"ns"}(p,e);g&&(o.interval=l[a],o.intervalPix=p,o.region=g)}}if(t.ordinal&&!o.region){var v=t.unitTickvals,y=t.unitToPaddedPx.invert(e);for(n=0;n=b[0]&&y<=b[1]){o.clickableOrdinalRange=b;break}}}return o}function _(t,e){i.event.sourceEvent.stopPropagation();var n=e.height-i.mouse(t)[1]-2*r.verticalPadding,a=e.brush.svgBrush;a.wasDragged=!0,a._dragging=!0,a.grabbingBar?a.newExtent=[n-a.grabPoint,n+a.barLength-a.grabPoint].map(e.unitToPaddedPx.invert):a.newExtent=[a.startExtent,e.unitToPaddedPx.invert(n)].sort(s),e.brush.filterSpecified=!0,a.extent=a.stayingIntervals.concat([a.newExtent]),a.brushCallback(e),x(t.parentNode)}function k(t,e){var n=w(e,e.height-i.mouse(t)[1]-2*r.verticalPadding),a="crosshair";n.clickableOrdinalRange?a="pointer":n.region&&(a=n.region+"-resize"),i.select(document.body).style("cursor",a)}function T(t){t.on("mousemove",(function(t){i.event.preventDefault(),t.parent.inBrushDrag||k(this,t)})).on("mouseleave",(function(t){t.parent.inBrushDrag||y()})).call(i.behavior.drag().on("dragstart",(function(t){!function(t,e){i.event.sourceEvent.stopPropagation();var n=e.height-i.mouse(t)[1]-2*r.verticalPadding,a=e.unitToPaddedPx.invert(n),o=e.brush,s=w(e,n),l=s.interval,c=o.svgBrush;if(c.wasDragged=!1,c.grabbingBar="ns"===s.region,c.grabbingBar){var u=l.map(e.unitToPaddedPx);c.grabPoint=n-u[0]-r.verticalPadding,c.barLength=u[1]-u[0]}c.clickableOrdinalRange=s.clickableOrdinalRange,c.stayingIntervals=e.multiselect&&o.filterSpecified?o.filter.getConsolidated():[],l&&(c.stayingIntervals=c.stayingIntervals.filter((function(t){return t[0]!==l[0]&&t[1]!==l[1]}))),c.startExtent=s.region?l["s"===s.region?1:0]:a,e.parent.inBrushDrag=!0,c.brushStartCallback()}(this,t)})).on("drag",(function(t){_(this,t)})).on("dragend",(function(t){!function(t,e){var n=e.brush,r=n.filter,a=n.svgBrush;a._dragging||(k(t,e),_(t,e),e.brush.svgBrush.wasDragged=!1),a._dragging=!1,i.event.sourceEvent.stopPropagation();var o=a.grabbingBar;if(a.grabbingBar=!1,a.grabLocation=void 0,e.parent.inBrushDrag=!1,y(),!a.wasDragged)return a.wasDragged=void 0,a.clickableOrdinalRange?n.filterSpecified&&e.multiselect?a.extent.push(a.clickableOrdinalRange):(a.extent=[a.clickableOrdinalRange],n.filterSpecified=!0):o?(a.extent=a.stayingIntervals,0===a.extent.length&&A(n)):A(n),a.brushCallback(e),x(t.parentNode),void a.brushEndCallback(n.filterSpecified?r.getConsolidated():[]);var s=function(){r.set(r.getConsolidated())};if(e.ordinal){var l=e.unitTickvals;l[l.length-1]a.newExtent[0];a.extent=a.stayingIntervals.concat(c?[a.newExtent]:[]),a.extent.length||A(n),a.brushCallback(e),c?x(t.parentNode,s):(s(),x(t.parentNode))}else s();a.brushEndCallback(n.filterSpecified?r.getConsolidated():[])}(this,t)})))}function M(t,e){return t[0]-e[0]}function A(t){t.filterSpecified=!1,t.svgBrush.extent=[[-1/0,1/0]]}function S(t){for(var e,n=t.slice(),r=[],i=n.shift();i;){for(e=i.slice();(i=n.shift())&&i[0]<=e[1];)e[1]=Math.max(e[1],i[1]);r.push(e)}return 1===r.length&&r[0][0]>r[0][1]&&(r=[]),r}t.exports={makeBrush:function(t,e,n,r,i,a){var o,l=function(){var t,e,n=[];return{set:function(r){1===(n=r.map((function(t){return t.slice().sort(s)})).sort(M)).length&&n[0][0]===-1/0&&n[0][1]===1/0&&(n=[[0,-1]]),t=S(n),e=n.reduce((function(t,e){return[Math.min(t[0],e[0]),Math.max(t[1],e[1])]}),[1/0,-1/0])},get:function(){return n.slice()},getConsolidated:function(){return t},getBounds:function(){return e}}}();return l.set(n),{filter:l,filterSpecified:e,svgBrush:{extent:[],brushStartCallback:r,brushCallback:(o=i,function(t){var e=t.brush,n=function(t){return t.svgBrush.extent.map((function(t){return t.slice()}))}(e),r=n.slice();e.filter.set(r),o()}),brushEndCallback:a}}},ensureAxisBrush:function(t,e,n){var i=t.selectAll("."+r.cn.axisBrush).data(o,a);i.enter().append("g").classed(r.cn.axisBrush,!0),function(t,e,n){var i=n._context.staticPlot,a=t.selectAll(".background").data(o);a.enter().append("rect").classed("background",!0).call(p).call(g).style("pointer-events",i?"none":"auto").attr("transform",l(0,r.verticalPadding)),a.call(T).attr("height",(function(t){return t.height-r.verticalPadding}));var s=t.selectAll(".highlight-shadow").data(o);s.enter().append("line").classed("highlight-shadow",!0).attr("x",-r.bar.width/2).attr("stroke-width",r.bar.width+r.bar.strokeWidth).attr("stroke",e).attr("opacity",r.bar.strokeOpacity).attr("stroke-linecap","butt"),s.attr("y1",(function(t){return t.height})).call(b);var c=t.selectAll(".highlight").data(o);c.enter().append("line").classed("highlight",!0).attr("x",-r.bar.width/2).attr("stroke-width",r.bar.width-r.bar.strokeWidth).attr("stroke",r.bar.fillColor).attr("opacity",r.bar.fillOpacity).attr("stroke-linecap","butt"),c.attr("y1",(function(t){return t.height})).call(b)}(i,e,n)},cleanRanges:function(t,e){if(Array.isArray(t[0])?(t=t.map((function(t){return t.sort(s)})),t=e.multiselect?S(t.sort(M)):[t[0]]):t=[t.sort(s)],e.tickvals){var n=e.tickvals.slice().sort(s);if(!(t=t.map((function(t){var e=[d(0,n,t[0],[]),d(1,n,t[1],[])];if(e[1]>e[0])return e})).filter((function(t){return t}))).length)return}return t.length>1?t:t[0]}}},71791:function(t,e,n){"use strict";t.exports={attributes:n(73362),supplyDefaults:n(3633),calc:n(24639),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:n(49351),categories:["gl","regl","noOpacity","noHover"],meta:{}}},49351:function(t,e,n){"use strict";var r=n(39898),i=n(27659).a0,a=n(21341),o=n(77922);e.name="parcoords",e.plot=function(t){var e=i(t.calcdata,"parcoords")[0];e.length&&a(t,e)},e.clean=function(t,e,n,r){var i=r._has&&r._has("parcoords"),a=e._has&&e._has("parcoords");i&&!a&&(r._paperdiv.selectAll(".parcoords").remove(),r._glimages.selectAll("*").remove())},e.toSVG=function(t){var e=t._fullLayout._glimages,n=r.select(t).selectAll(".svg-container");n.filter((function(t,e){return e===n.size()-1})).selectAll(".gl-canvas-context, .gl-canvas-focus").each((function(){var t=this,n=t.toDataURL("image/png");e.append("svg:image").attr({xmlns:o.svg,"xlink:href":n,preserveAspectRatio:"none",x:0,y:0,width:t.style.width,height:t.style.height})})),window.setTimeout((function(){r.selectAll("#filterBarPattern").attr("id","filterBarPattern")}),60)}},24639:function(t,e,n){"use strict";var r=n(71828).isArrayOrTypedArray,i=n(21081),a=n(28984).wrap;t.exports=function(t,e){var n,o;return i.hasColorscale(e,"line")&&r(e.line.color)?(n=e.line.color,o=i.extractOpts(e.line).colorscale,i.calc(t,e,{vals:n,containerStr:"line",cLetter:"c"})):(n=function(t){for(var e=new Array(t),n=0;nf&&(r.log("parcoords traces support up to "+f+" dimensions at the moment"),p.splice(f));var g=s(t,e,{name:"dimensions",layout:l,handleItemDefaults:d}),v=function(t,e,n,o,s){var l=s("line.color",n);if(i(t,"line")&&r.isArrayOrTypedArray(l)){if(l.length)return s("line.colorscale"),a(t,e,o,s,{prefix:"line.",cLetter:"c"}),l.length;e.line.color=n}return 1/0}(t,e,n,l,u);o(e,l,u),Array.isArray(g)&&g.length||(e.visible=!1),h(e,g,"values",v);var m={family:l.font.family,size:Math.round(l.font.size/1.2),color:l.font.color};r.coerceFont(u,"labelfont",m),r.coerceFont(u,"tickfont",m),r.coerceFont(u,"rangefont",m),u("labelangle"),u("labelside"),u("unselected.line.color"),u("unselected.line.opacity")}},1602:function(t,e,n){"use strict";var r=n(71828).isTypedArray;e.convertTypedArray=function(t){return r(t)?Array.prototype.slice.call(t):t},e.isOrdinal=function(t){return!!t.tickvals},e.isVisible=function(t){return t.visible||!("visible"in t)}},67618:function(t,e,n){"use strict";var r=n(71791);r.plot=n(21341),t.exports=r},83398:function(t,e,n){"use strict";var r=n(56068),i=r(["precision highp float;\n#define GLSLIFY 1\n\nvarying vec4 fragColor;\n\nattribute vec4 p01_04, p05_08, p09_12, p13_16,\n p17_20, p21_24, p25_28, p29_32,\n p33_36, p37_40, p41_44, p45_48,\n p49_52, p53_56, p57_60, colors;\n\nuniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,\n loA, hiA, loB, hiB, loC, hiC, loD, hiD;\n\nuniform vec2 resolution, viewBoxPos, viewBoxSize;\nuniform float maskHeight;\nuniform float drwLayer; // 0: context, 1: focus, 2: pick\nuniform vec4 contextColor;\nuniform sampler2D maskTexture, palette;\n\nbool isPick = (drwLayer > 1.5);\nbool isContext = (drwLayer < 0.5);\n\nconst vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);\nconst vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);\n\nfloat val(mat4 p, mat4 v) {\n return dot(matrixCompMult(p, v) * UNITS, UNITS);\n}\n\nfloat axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {\n float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);\n float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);\n return y1 * (1.0 - ratio) + y2 * ratio;\n}\n\nint iMod(int a, int b) {\n return a - b * (a / b);\n}\n\nbool fOutside(float p, float lo, float hi) {\n return (lo < hi) && (lo > p || p > hi);\n}\n\nbool vOutside(vec4 p, vec4 lo, vec4 hi) {\n return (\n fOutside(p[0], lo[0], hi[0]) ||\n fOutside(p[1], lo[1], hi[1]) ||\n fOutside(p[2], lo[2], hi[2]) ||\n fOutside(p[3], lo[3], hi[3])\n );\n}\n\nbool mOutside(mat4 p, mat4 lo, mat4 hi) {\n return (\n vOutside(p[0], lo[0], hi[0]) ||\n vOutside(p[1], lo[1], hi[1]) ||\n vOutside(p[2], lo[2], hi[2]) ||\n vOutside(p[3], lo[3], hi[3])\n );\n}\n\nbool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {\n return mOutside(A, loA, hiA) ||\n mOutside(B, loB, hiB) ||\n mOutside(C, loC, hiC) ||\n mOutside(D, loD, hiD);\n}\n\nbool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {\n mat4 pnts[4];\n pnts[0] = A;\n pnts[1] = B;\n pnts[2] = C;\n pnts[3] = D;\n\n for(int i = 0; i < 4; ++i) {\n for(int j = 0; j < 4; ++j) {\n for(int k = 0; k < 4; ++k) {\n if(0 == iMod(\n int(255.0 * texture2D(maskTexture,\n vec2(\n (float(i * 2 + j / 2) + 0.5) / 8.0,\n (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight\n ))[3]\n ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),\n 2\n )) return true;\n }\n }\n }\n return false;\n}\n\nvec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {\n float x = 0.5 * sign(v) + 0.5;\n float y = axisY(x, A, B, C, D);\n float z = 1.0 - abs(v);\n\n z += isContext ? 0.0 : 2.0 * float(\n outsideBoundingBox(A, B, C, D) ||\n outsideRasterMask(A, B, C, D)\n );\n\n return vec4(\n 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,\n z,\n 1.0\n );\n}\n\nvoid main() {\n mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);\n mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);\n mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);\n mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);\n\n float v = colors[3];\n\n gl_Position = position(isContext, v, A, B, C, D);\n\n fragColor =\n isContext ? vec4(contextColor) :\n isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));\n}\n"]),a=r(["precision highp float;\n#define GLSLIFY 1\n\nvarying vec4 fragColor;\n\nvoid main() {\n gl_FragColor = fragColor;\n}\n"]),o=n(25706).maxDimensionCount,s=n(71828),l=1e-6,c=2048,u=new Uint8Array(4),f=new Uint8Array(4),h={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function d(t,e,n,r,i){var a=t._gl;a.enable(a.SCISSOR_TEST),a.scissor(e,n,r,i),t.clear({color:[0,0,0,0],depth:1})}function p(t,e,n,r,i,a){var o=a.key;n.drawCompleted||(function(t){t.read({x:0,y:0,width:1,height:1,data:u})}(t),n.drawCompleted=!0),function s(l){var c=Math.min(r,i-l*r);0===l&&(window.cancelAnimationFrame(n.currentRafs[o]),delete n.currentRafs[o],d(t,a.scissorX,a.scissorY,a.scissorWidth,a.viewBoxSize[1])),n.clearOnly||(a.count=2*c,a.offset=2*l*r,e(a),l*r+c>>8*e)%256/255}function m(t,e,n){for(var r=new Array(8*e),i=0,a=0;af&&(f=t[i].dim1.canvasX,o=i);0===s&&d(M,0,0,n.canvasWidth,n.canvasHeight);var h=function(t){var e,n,r,i=[[],[]];for(r=0;r<64;r++){var a=!t&&ro._length&&(S=S.slice(0,o._length));var C,P=o.tickvals;function L(t,e){return{val:t,text:C[e]}}function O(t,e){return t.val-e.val}if(Array.isArray(P)&&P.length){C=o.ticktext,Array.isArray(C)&&C.length?C.length>P.length?C=C.slice(0,P.length):P.length>C.length&&(P=P.slice(0,C.length)):C=P.map(a(o.tickformat));for(var I=1;I=n||l>=i)return;var c=t.lineLayer.readPixel(s,i-1-l),u=0!==c[3],f=u?c[2]+256*(c[1]+256*c[0]):null,h={x:s,y:l,clientX:e.clientX,clientY:e.clientY,dataIndex:t.model.key,curveNumber:f};f!==N&&(u?a.hover(h):a.unhover&&a.unhover(h),N=f)}})),z.style("opacity",(function(t){return t.pick?0:1})),d.style("background","rgba(255, 255, 255, 0)");var j=d.selectAll("."+y.cn.parcoords).data(S,p);j.exit().remove(),j.enter().append("g").classed(y.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),j.attr("transform",(function(t){return c(t.model.translateX,t.model.translateY)}));var F=j.selectAll("."+y.cn.parcoordsControlView).data(g,p);F.enter().append("g").classed(y.cn.parcoordsControlView,!0),F.attr("transform",(function(t){return c(t.model.pad.l,t.model.pad.t)}));var B=F.selectAll("."+y.cn.yAxis).data((function(t){return t.dimensions}),p);B.enter().append("g").classed(y.cn.yAxis,!0),F.each((function(t){I(B,t,k)})),z.each((function(t){if(t.viewModel){!t.lineLayer||a?t.lineLayer=x(this,t):t.lineLayer.update(t),(t.key||0===t.key)&&(t.viewModel[t.key]=t.lineLayer);var e=!t.context||a;t.lineLayer.render(t.viewModel.panels,e)}})),B.attr("transform",(function(t){return c(t.xScale(t.xIndex),0)})),B.call(r.behavior.drag().origin((function(t){return t})).on("drag",(function(t){var e=t.parent;A.linePickActive(!1),t.x=Math.max(-y.overdrag,Math.min(t.model.width+y.overdrag,r.event.x)),t.canvasX=t.x*t.model.canvasPixelRatio,B.sort((function(t,e){return t.x-e.x})).each((function(e,n){e.xIndex=n,e.x=t===e?e.x:e.xScale(e.xIndex),e.canvasX=e.x*e.model.canvasPixelRatio})),I(B,e,k),B.filter((function(e){return 0!==Math.abs(t.xIndex-e.xIndex)})).attr("transform",(function(t){return c(t.xScale(t.xIndex),0)})),r.select(this).attr("transform",c(t.x,0)),B.each((function(n,r,i){i===t.parent.key&&(e.dimensions[r]=n)})),e.contextLayer&&e.contextLayer.render(e.panels,!1,!E(e)),e.focusLayer.render&&e.focusLayer.render(e.panels)})).on("dragend",(function(t){var e=t.parent;t.x=t.xScale(t.xIndex),t.canvasX=t.x*t.model.canvasPixelRatio,I(B,e,k),r.select(this).attr("transform",(function(t){return c(t.x,0)})),e.contextLayer&&e.contextLayer.render(e.panels,!1,!E(e)),e.focusLayer&&e.focusLayer.render(e.panels),e.pickLayer&&e.pickLayer.render(e.panels,!0),A.linePickActive(!0),a&&a.axesMoved&&a.axesMoved(e.key,e.dimensions.map((function(t){return t.crossfilterDimensionIndex})))}))),B.exit().remove();var U=B.selectAll("."+y.cn.axisOverlays).data(g,p);U.enter().append("g").classed(y.cn.axisOverlays,!0),U.selectAll("."+y.cn.axis).remove();var H=U.selectAll("."+y.cn.axis).data(g,p);H.enter().append("g").classed(y.cn.axis,!0),H.each((function(t){var e=t.model.height/t.model.tickDistance,n=t.domainScale,i=n.domain();r.select(this).call(r.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(e,t.tickFormat).tickValues(t.ordinal?i:null).tickFormat((function(e){return m.isOrdinal(t)?e:D(t.model.dimensions[t.visibleIndex],e)})).scale(n)),f.font(H.selectAll("text"),t.model.tickFont)})),H.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),H.selectAll("text").style("text-shadow",u.makeTextShadow(M)).style("cursor","default");var V=U.selectAll("."+y.cn.axisHeading).data(g,p);V.enter().append("g").classed(y.cn.axisHeading,!0);var q=V.selectAll("."+y.cn.axisTitle).data(g,p);q.enter().append("text").classed(y.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",o?"none":"auto"),q.text((function(t){return t.label})).each((function(e){var n=r.select(this);f.font(n,e.model.labelFont),u.convertToTspans(n,t)})).attr("transform",(function(t){var e=O(t.model.labelAngle,t.model.labelSide),n=y.axisTitleOffset;return(e.dir>0?"":c(0,2*n+t.model.height))+l(e.degrees)+c(-n*e.dx,-n*e.dy)})).attr("text-anchor",(function(t){var e=O(t.model.labelAngle,t.model.labelSide);return 2*Math.abs(e.dx)>Math.abs(e.dy)?e.dir*e.dx<0?"start":"end":"middle"}));var G=U.selectAll("."+y.cn.axisExtent).data(g,p);G.enter().append("g").classed(y.cn.axisExtent,!0);var W=G.selectAll("."+y.cn.axisExtentTop).data(g,p);W.enter().append("g").classed(y.cn.axisExtentTop,!0),W.attr("transform",c(0,-y.axisExtentOffset));var Y=W.selectAll("."+y.cn.axisExtentTopText).data(g,p);Y.enter().append("text").classed(y.cn.axisExtentTopText,!0).call(L),Y.text((function(t){return R(t,!0)})).each((function(t){f.font(r.select(this),t.model.rangeFont)}));var $=G.selectAll("."+y.cn.axisExtentBottom).data(g,p);$.enter().append("g").classed(y.cn.axisExtentBottom,!0),$.attr("transform",(function(t){return c(0,t.model.height+y.axisExtentOffset)}));var X=$.selectAll("."+y.cn.axisExtentBottomText).data(g,p);X.enter().append("text").classed(y.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(L),X.text((function(t){return R(t,!1)})).each((function(t){f.font(r.select(this),t.model.rangeFont)})),b.ensureAxisBrush(U,M,t)}},21341:function(t,e,n){"use strict";var r=n(17171),i=n(79749),a=n(1602).isVisible,o={};function s(t,e,n){var r=e.indexOf(n),i=t.indexOf(r);return-1===i&&(i+=e.length),i}(t.exports=function(t,e){var n=t._fullLayout;if(i(t,[],o)){var l={},c={},u={},f={},h=n._size;e.forEach((function(e,n){var r=e[0].trace;u[n]=r.index;var i=f[n]=r._fullInput.index;l[n]=t.data[i].dimensions,c[n]=t.data[i].dimensions.slice()})),r(t,e,{width:h.w,height:h.h,margin:{t:h.t,r:h.r,b:h.b,l:h.l}},{filterChanged:function(e,r,i){var a=c[e][r],o=i.map((function(t){return t.slice()})),s="dimensions["+r+"].constraintrange",l=n._tracePreGUI[t._fullData[u[e]]._fullInput.uid];if(void 0===l[s]){var h=a.constraintrange;l[s]=h||null}var d=t._fullData[u[e]].dimensions[r];o.length?(1===o.length&&(o=o[0]),a.constraintrange=o,d.constraintrange=o.slice(),o=[o]):(delete a.constraintrange,delete d.constraintrange,o=null);var p={};p[s]=o,t.emit("plotly_restyle",[p,[f[e]]])},hover:function(e){t.emit("plotly_hover",e)},unhover:function(e){t.emit("plotly_unhover",e)},axesMoved:function(e,n){var r=function(t,e){return function(n,r){return s(t,e,n)-s(t,e,r)}}(n,c[e].filter(a));l[e].sort(r),c[e].filter((function(t){return!a(t)})).sort((function(t){return c[e].indexOf(t)})).forEach((function(t){l[e].splice(l[e].indexOf(t),1),l[e].splice(c[e].indexOf(t),0,t)})),t.emit("plotly_restyle",[{dimensions:[l[e]]},[f[e]]])}})}}).reglPrecompiled=o},34e3:function(t,e,n){"use strict";var r=n(9012),i=n(27670).Y,a=n(41940),o=n(22399),s=n(5386).f,l=n(5386).s,c=n(1426).extendFlat,u=a({editType:"plot",arrayOk:!0,colorEditType:"plot"});t.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:o.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},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:c({},r.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:s({},{keys:["label","color","value","percent","text"]}),texttemplate:l({editType:"plot"},{keys:["label","color","value","percent","text"]}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:c({},u,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:c({},u,{}),outsidetextfont:c({},u,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:c({},u,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:i({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:c({},u,{}),titleposition:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"calc"}}}},13584:function(t,e,n){"use strict";var r=n(74875);e.name="pie",e.plot=function(t,n,i,a){r.plotBasePlot(e.name,t,n,i,a)},e.clean=function(t,n,i,a){r.cleanBasePlot(e.name,t,n,i,a)}},32354:function(t,e,n){"use strict";var r=n(92770),i=n(84267),a=n(7901),o={};function s(t){return function(e,n){return!!e&&!!(e=i(e)).isValid()&&(e=a.addOpacity(e,e.getAlpha()),t[n]||(t[n]=e),e)}}function l(t,e){var n,r=JSON.stringify(t),a=e[r];if(!a){for(a=t.slice(),n=0;n=0})),("funnelarea"===e.type?m:e.sort)&&a.sort((function(t,e){return e.v-t.v})),a[0]&&(a[0].vTotal=v),a},crossTraceCalc:function(t,e){var n=(e||{}).type;n||(n="pie");var r=t._fullLayout,i=t.calcdata,a=r[n+"colorway"],s=r["_"+n+"colormap"];r["extend"+n+"colors"]&&(a=l(a,o));for(var c=0,u=0;u0){s=!0;break}}s||(o=0)}return{hasLabels:n,hasValues:a,len:o}}t.exports={handleLabelsAndValues:l,supplyDefaults:function(t,e,n,r){function c(n,r){return i.coerce(t,e,a,n,r)}var u=l(c("labels"),c("values")),f=u.len;if(e._hasLabels=u.hasLabels,e._hasValues=u.hasValues,!e._hasLabels&&e._hasValues&&(c("label0"),c("dlabel")),f){e._length=f,c("marker.line.width")&&c("marker.line.color"),c("marker.colors"),c("scalegroup");var h,d=c("text"),p=c("texttemplate");if(p||(h=c("textinfo",Array.isArray(d)?"text+percent":"percent")),c("hovertext"),c("hovertemplate"),p||h&&"none"!==h){var g=c("textposition");s(t,e,r,c,g,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),(Array.isArray(g)||"auto"===g||"outside"===g)&&c("automargin"),("inside"===g||"auto"===g||Array.isArray(g))&&c("insidetextorientation")}o(e,r,c);var v=c("hole");if(c("title.text")){var m=c("title.position",v?"middle center":"top center");v||"middle center"!==m||(e.title.position="top center"),i.coerceFont(c,"title.font",r.font)}c("sort"),c("direction"),c("rotation"),c("pull")}else e.visible=!1}}},20007:function(t,e,n){"use strict";var r=n(23469).appendArrayMultiPointValues;t.exports=function(t,e){var n={curveNumber:e.index,pointNumbers:t.pts,data:e._input,fullData:e,label:t.label,color:t.color,value:t.v,percent:t.percent,text:t.text,bbox:t.bbox,v:t.v};return 1===t.pts.length&&(n.pointNumber=n.i=t.pts[0]),r(n,e,t.pts),"funnelarea"===e.type&&(delete n.v,delete n.i),n}},53581:function(t,e,n){"use strict";var r=n(71828);function i(t){return-1!==t.indexOf("e")?t.replace(/[.]?0+e/,"e"):-1!==t.indexOf(".")?t.replace(/[.]?0+$/,""):t}e.formatPiePercent=function(t,e){var n=i((100*t).toPrecision(3));return r.numSeparate(n,e)+"%"},e.formatPieValue=function(t,e){var n=i(t.toPrecision(10));return r.numSeparate(n,e)},e.getFirstFilled=function(t,e){if(Array.isArray(t))for(var n=0;n"),name:f.hovertemplate||-1!==h.indexOf("name")?f.name:void 0,idealAlign:t.pxmid[0]<0?"left":"right",color:v.castOption(w.bgcolor,t.pts)||t.color,borderColor:v.castOption(w.bordercolor,t.pts),fontFamily:v.castOption(_.family,t.pts),fontSize:v.castOption(_.size,t.pts),fontColor:v.castOption(_.color,t.pts),nameLength:v.castOption(w.namelength,t.pts),textAlign:v.castOption(w.align,t.pts),hovertemplate:v.castOption(f.hovertemplate,t.pts),hovertemplateLabels:t,eventData:[m(t,f)]},{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:e,inOut_bbox:k}),t.bbox=k[0],c._hasHoverLabel=!0}c._hasHoverEvent=!0,e.emit("plotly_hover",{points:[m(t,f)],event:r.event})}})),t.on("mouseout",(function(t){var n=e._fullLayout,i=e._fullData[c.index],o=r.select(this).datum();c._hasHoverEvent&&(t.originalEvent=r.event,e.emit("plotly_unhover",{points:[m(o,i)],event:r.event}),c._hasHoverEvent=!1),c._hasHoverLabel&&(a.loneUnhover(n._hoverlayer.node()),c._hasHoverLabel=!1)})),t.on("click",(function(t){var n=e._fullLayout,i=e._fullData[c.index];e._dragging||!1===n.hovermode||(e._hoverdata=[m(t,i)],a.click(e,r.event))}))}function x(t,e,n){var r=v.castOption(t.insidetextfont.color,e.pts);!r&&t._input.textfont&&(r=v.castOption(t._input.textfont.color,e.pts));var i=v.castOption(t.insidetextfont.family,e.pts)||v.castOption(t.textfont.family,e.pts)||n.family,a=v.castOption(t.insidetextfont.size,e.pts)||v.castOption(t.textfont.size,e.pts)||n.size;return{color:r||o.contrast(e.color),family:i,size:a}}function w(t,e){for(var n,r,i=0;ie&&e>r||n=-4;v-=2)m(Math.PI*v,"tan");for(v=4;v>=-4;v-=2)m(Math.PI*(v+1),"tan")}if(f||d){for(v=4;v>=-4;v-=2)m(Math.PI*(v+1.5),"rad");for(v=4;v>=-4;v-=2)m(Math.PI*(v+.5),"rad")}}if(s||p||f){var y=Math.sqrt(t.width*t.width+t.height*t.height);if((a={scale:i*r*2/y,rCenter:1-i,rotate:0}).textPosAngle=(e.startangle+e.stopangle)/2,a.scale>=1)return a;g.push(a)}(p||d)&&((a=k(t,r,o,l,c)).textPosAngle=(e.startangle+e.stopangle)/2,g.push(a)),(p||h)&&((a=T(t,r,o,l,c)).textPosAngle=(e.startangle+e.stopangle)/2,g.push(a));for(var b=0,x=0,w=0;w=1)break}return g[b]}function k(t,e,n,r,i){e=Math.max(0,e-2*g);var a=t.width/t.height,o=S(a,r,e,n);return{scale:2*o/t.height,rCenter:M(a,o/e),rotate:A(i)}}function T(t,e,n,r,i){e=Math.max(0,e-2*g);var a=t.height/t.width,o=S(a,r,e,n);return{scale:2*o/t.width,rCenter:M(a,o/e),rotate:A(i+Math.PI/2)}}function M(t,e){return Math.cos(e)-t*e}function A(t){return(180/Math.PI*t+720)%180-90}function S(t,e,n,r){var i=t+1/(2*Math.tan(e));return n*Math.min(1/(Math.sqrt(i*i+.5)+i),r/(Math.sqrt(t*t+r/2)+t))}function E(t,e){return t.v!==e.vTotal||e.trace.hole?Math.min(1/(1+1/Math.sin(t.halfangle)),t.ring/2):1}function C(t,e){var n=e.pxmid[0],r=e.pxmid[1],i=t.width/2,a=t.height/2;return n<0&&(i*=-1),r<0&&(a*=-1),{scale:1,rCenter:1,rotate:0,x:i+Math.abs(a)*(i>0?1:-1)/2,y:a/(1+n*n/(r*r)),outside:!0}}function P(t,e){var n,r,i,a=t.trace,o={x:t.cx,y:t.cy},s={tx:0,ty:0};s.ty+=a.title.font.size,i=O(a),-1!==a.title.position.indexOf("top")?(o.y-=(1+i)*t.r,s.ty-=t.titleBox.height):-1!==a.title.position.indexOf("bottom")&&(o.y+=(1+i)*t.r);var l,c,u=(l=t.r,c=t.trace.aspectratio,l/(void 0===c?1:c)),f=e.w*(a.domain.x[1]-a.domain.x[0])/2;return-1!==a.title.position.indexOf("left")?(f+=u,o.x-=(1+i)*u,s.tx+=t.titleBox.width/2):-1!==a.title.position.indexOf("center")?f*=2:-1!==a.title.position.indexOf("right")&&(f+=u,o.x+=(1+i)*u,s.tx-=t.titleBox.width/2),n=f/t.titleBox.width,r=L(t,e)/t.titleBox.height,{x:o.x,y:o.y,scale:Math.min(n,r),tx:s.tx,ty:s.ty}}function L(t,e){var n=t.trace,r=e.h*(n.domain.y[1]-n.domain.y[0]);return Math.min(t.titleBox.height,r/2)}function O(t){var e,n=t.pull;if(!n)return 0;if(Array.isArray(n))for(n=0,e=0;en&&(n=t.pull[e]);return n}function I(t,e){for(var n=[],r=0;r1?u=(c=n.r)/i.aspectratio:c=(u=n.r)*i.aspectratio,l=(c*=(1+i.baseratio)/2)*u}o=Math.min(o,l/n.vTotal)}for(r=0;r")}if(a){var b=l.castOption(i,e.i,"texttemplate");if(b){var x=function(t){return{label:t.label,value:t.v,valueLabel:v.formatPieValue(t.v,r.separators),percent:t.v/n.vTotal,percentLabel:v.formatPiePercent(t.v/n.vTotal,r.separators),color:t.color,text:t.text,customdata:l.castOption(i,t.i,"customdata")}}(e),w=v.getFirstFilled(i.text,e.pts);(y(w)||""===w)&&(x.text=w),e.text=l.texttemplateString(b,x,t._fullLayout._d3locale,x,i._meta||{})}else e.text=""}}function z(t,e){var n=t.rotate*Math.PI/180,r=Math.cos(n),i=Math.sin(n),a=(e.left+e.right)/2,o=(e.top+e.bottom)/2;t.textX=a*r-o*i,t.textY=a*i+o*r,t.noCenter=!0}t.exports={plot:function(t,e){var n=t._context.staticPlot,a=t._fullLayout,h=a._size;p("pie",a),w(e,t),I(e,h);var g=l.makeTraceGroups(a._pielayer,e,"trace").each((function(e){var p=r.select(this),g=e[0],m=g.trace;!function(t){var e,n,r,i=t[0],a=i.r,o=i.trace,s=v.getRotationAngle(o.rotation),l=2*Math.PI/i.vTotal,c="px0",u="px1";if("counterclockwise"===o.direction){for(e=0;ei.vTotal/2?1:0,n.halfangle=Math.PI*Math.min(n.v/i.vTotal,.5),n.ring=1-o.hole,n.rInscribed=E(n,i))}(e),p.attr("stroke-linejoin","round"),p.each((function(){var y=r.select(this).selectAll("g.slice").data(e);y.enter().append("g").classed("slice",!0),y.exit().remove();var w=[[[],[]],[[],[]]],k=!1;y.each((function(i,o){if(i.hidden)r.select(this).selectAll("path,g").remove();else{i.pointNumber=i.i,i.curveNumber=m.index,w[i.pxmid[1]<0?0:1][i.pxmid[0]<0?0:1].push(i);var c=g.cx,u=g.cy,h=r.select(this),p=h.selectAll("path.surface").data([i]);if(p.enter().append("path").classed("surface",!0).style({"pointer-events":n?"none":"all"}),h.call(b,t,e),m.pull){var y=+v.castOption(m.pull,i.pts)||0;y>0&&(c+=y*i.pxmid[0],u+=y*i.pxmid[1])}i.cxFinal=c,i.cyFinal=u;var T=m.hole;if(i.v===g.vTotal){var M="M"+(c+i.px0[0])+","+(u+i.px0[1])+L(i.px0,i.pxmid,!0,1)+L(i.pxmid,i.px0,!0,1)+"Z";T?p.attr("d","M"+(c+T*i.px0[0])+","+(u+T*i.px0[1])+L(i.px0,i.pxmid,!1,T)+L(i.pxmid,i.px0,!1,T)+"Z"+M):p.attr("d",M)}else{var A=L(i.px0,i.px1,!0,1);if(T){var S=1-T;p.attr("d","M"+(c+T*i.px1[0])+","+(u+T*i.px1[1])+L(i.px1,i.px0,!1,T)+"l"+S*i.px0[0]+","+S*i.px0[1]+A+"Z")}else p.attr("d","M"+c+","+u+"l"+i.px0[0]+","+i.px0[1]+A+"Z")}R(t,i,g);var E=v.castOption(m.textposition,i.pts),P=h.selectAll("g.slicetext").data(i.text&&"none"!==E?[0]:[]);P.enter().append("g").classed("slicetext",!0),P.exit().remove(),P.each((function(){var n=l.ensureSingle(r.select(this),"text","",(function(t){t.attr("data-notex",1)})),h=l.ensureUniformFontSize(t,"outside"===E?function(t,e,n){var r=v.castOption(t.outsidetextfont.color,e.pts)||v.castOption(t.textfont.color,e.pts)||n.color,i=v.castOption(t.outsidetextfont.family,e.pts)||v.castOption(t.textfont.family,e.pts)||n.family,a=v.castOption(t.outsidetextfont.size,e.pts)||v.castOption(t.textfont.size,e.pts)||n.size;return{color:r,family:i,size:a}}(m,i,a.font):x(m,i,a.font));n.text(i.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(s.font,h).call(f.convertToTspans,t);var p,y=s.bBox(n.node());if("outside"===E)p=C(y,i);else if(p=_(y,i,g),"auto"===E&&p.scale<1){var b=l.ensureUniformFontSize(t,m.outsidetextfont);n.call(s.font,b),p=C(y=s.bBox(n.node()),i)}var w=p.textPosAngle,T=void 0===w?i.pxmid:D(g.r,w);if(p.targetX=c+T[0]*p.rCenter+(p.x||0),p.targetY=u+T[1]*p.rCenter+(p.y||0),z(p,y),p.outside){var M=p.targetY;i.yLabelMin=M-y.height/2,i.yLabelMid=M,i.yLabelMax=M+y.height/2,i.labelExtraX=0,i.labelExtraY=0,k=!0}p.fontSize=h.size,d(m.type,p,a),e[o].transform=p,l.setTransormAndDisplay(n,p)}))}function L(t,e,n,r){var a=r*(e[0]-t[0]),o=r*(e[1]-t[1]);return"a"+r*g.r+","+r*g.r+" 0 "+i.largeArc+(n?" 1 ":" 0 ")+a+","+o}}));var T=r.select(this).selectAll("g.titletext").data(m.title.text?[0]:[]);if(T.enter().append("g").classed("titletext",!0),T.exit().remove(),T.each((function(){var e,n=l.ensureSingle(r.select(this),"text","",(function(t){t.attr("data-notex",1)})),i=m.title.text;m._meta&&(i=l.templateString(i,m._meta)),n.text(i).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(s.font,m.title.font).call(f.convertToTspans,t),e="middle center"===m.title.position?function(t){var e=Math.sqrt(t.titleBox.width*t.titleBox.width+t.titleBox.height*t.titleBox.height);return{x:t.cx,y:t.cy,scale:t.trace.hole*t.r*2/e,tx:0,ty:-t.titleBox.height/2+t.trace.title.font.size}}(g):P(g,h),n.attr("transform",u(e.x,e.y)+c(Math.min(1,e.scale))+u(e.tx,e.ty))})),k&&function(t,e){var n,r,i,a,o,s,l,c,u,f,h,d,p;function g(t,e){return t.pxmid[1]-e.pxmid[1]}function m(t,e){return e.pxmid[1]-t.pxmid[1]}function y(t,n){n||(n={});var i,c,u,h,d=n.labelExtraY+(r?n.yLabelMax:n.yLabelMin),p=r?t.yLabelMin:t.yLabelMax,g=r?t.yLabelMax:t.yLabelMin,m=t.cyFinal+o(t.px0[1],t.px1[1]),y=d-p;if(y*l>0&&(t.labelExtraY=y),Array.isArray(e.pull))for(c=0;c=(v.castOption(e.pull,u.pts)||0)||((t.pxmid[1]-u.pxmid[1])*l>0?(y=u.cyFinal+o(u.px0[1],u.px1[1])-p-t.labelExtraY)*l>0&&(t.labelExtraY+=y):(g+t.labelExtraY-m)*l>0&&(i=3*s*Math.abs(c-f.indexOf(t)),(h=u.cxFinal+a(u.px0[0],u.px1[0])+i-(t.cxFinal+t.pxmid[0])-t.labelExtraX)*s>0&&(t.labelExtraX+=h)))}for(r=0;r<2;r++)for(i=r?g:m,o=r?Math.max:Math.min,l=r?1:-1,n=0;n<2;n++){for(a=n?Math.max:Math.min,s=n?1:-1,(c=t[r][n]).sort(i),u=t[1-r][n],f=u.concat(c),d=[],h=0;hMath.abs(f)?s+="l"+f*t.pxmid[0]/t.pxmid[1]+","+f+"H"+(a+t.labelExtraX+c):s+="l"+t.labelExtraX+","+u+"v"+(f-u)+"h"+c}else s+="V"+(t.yLabelMid+t.labelExtraY)+"h"+c;l.ensureSingle(n,"path","textline").call(o.stroke,e.outsidetextfont.color).attr({"stroke-width":Math.min(2,e.outsidetextfont.size/8),d:s,fill:"none"})}else n.select("path.textline").remove()}))}(y,m),k&&m.automargin){var M=s.bBox(p.node()),A=m.domain,S=h.w*(A.x[1]-A.x[0]),E=h.h*(A.y[1]-A.y[0]),L=(.5*S-g.r)/h.w,O=(.5*E-g.r)/h.h;i.autoMargin(t,"pie."+m.uid+".automargin",{xl:A.x[0]-L,xr:A.x[1]+L,yb:A.y[0]-O,yt:A.y[1]+O,l:Math.max(g.cx-g.r-M.left,0),r:Math.max(M.right-(g.cx+g.r),0),b:Math.max(M.bottom-(g.cy+g.r),0),t:Math.max(g.cy-g.r-M.top,0),pad:5})}}))}));setTimeout((function(){g.selectAll("tspan").each((function(){var t=r.select(this);t.attr("dy")&&t.attr("dy",t.attr("dy"))}))}),0)},formatSliceLabel:R,transformInsideText:_,determineInsideTextFont:x,positionTitleOutside:P,prerenderTitles:w,layoutAreas:I,attachFxHandlers:b,computeTransform:z}},68357:function(t,e,n){"use strict";var r=n(39898),i=n(63463),a=n(72597).resizeText;t.exports=function(t){var e=t._fullLayout._pielayer.selectAll(".trace");a(t,e,"pie"),e.each((function(t){var e=t[0].trace,n=r.select(this);n.style({opacity:e.opacity}),n.selectAll("path.surface").each((function(t){r.select(this).call(i,t,e)}))}))}},63463:function(t,e,n){"use strict";var r=n(7901),i=n(53581).castOption;t.exports=function(t,e,n){var a=n.marker.line,o=i(a.color,e.pts)||r.defaultLine,s=i(a.width,e.pts)||0;t.style("stroke-width",s).call(r.fill,e.color).call(r.stroke,o)}},10959:function(t,e,n){"use strict";var r=n(82196);t.exports={x:r.x,y:r.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:r.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(t,e,n){"use strict";var r=n(9330).gl_pointcloud2d,i=n(78614),a=n(71739).findExtremes,o=n(34603);function s(t,e){this.scene=t,this.uid=e,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=r(t.glplot,this.pointcloudOptions),this.pointcloud._trace=this}var l=s.prototype;l.handlePick=function(t){var e=this.idToIndex[t.pointId];return{trace:this,dataCoord:t.dataCoord,traceCoord:this.pickXYData?[this.pickXYData[2*e],this.pickXYData[2*e+1]]:[this.pickXData[e],this.pickYData[e]],textLabel:Array.isArray(this.textLabels)?this.textLabels[e]:this.textLabels,color:this.color,name:this.name,pointIndex:e,hoverinfo:this.hoverinfo}},l.update=function(t){this.index=t.index,this.textLabels=t.text,this.name=t.name,this.hoverinfo=t.hoverinfo,this.bounds=[1/0,1/0,-1/0,-1/0],this.updateFast(t),this.color=o(t,{})},l.updateFast=function(t){var e,n,r,o,s,l,c=this.xData=this.pickXData=t.x,u=this.yData=this.pickYData=t.y,f=this.pickXYData=t.xy,h=t.xbounds&&t.ybounds,d=t.indices,p=this.bounds;if(f){if(r=f,e=f.length>>>1,h)p[0]=t.xbounds[0],p[2]=t.xbounds[1],p[1]=t.ybounds[0],p[3]=t.ybounds[1];else for(l=0;lp[2]&&(p[2]=o),sp[3]&&(p[3]=s);if(d)n=d;else for(n=new Int32Array(e),l=0;lp[2]&&(p[2]=o),sp[3]&&(p[3]=s);this.idToIndex=n,this.pointcloudOptions.idToIndex=n,this.pointcloudOptions.positions=r;var g=i(t.marker.color),v=i(t.marker.border.color),m=t.opacity*t.marker.opacity;g[3]*=m,this.pointcloudOptions.color=g;var y=t.marker.blend;null===y&&(y=c.length<100||u.length<100),this.pointcloudOptions.blend=y,v[3]*=m,this.pointcloudOptions.borderColor=v;var b=t.marker.sizemin,x=Math.max(t.marker.sizemax,t.marker.sizemin);this.pointcloudOptions.sizeMin=b,this.pointcloudOptions.sizeMax=x,this.pointcloudOptions.areaRatio=t.marker.border.arearatio,this.pointcloud.update(this.pointcloudOptions);var w=this.scene.xaxis,_=this.scene.yaxis,k=x/2||.5;t._extremes[w._id]=a(w,[p[0],p[2]],{ppad:k}),t._extremes[_._id]=a(_,[p[1],p[3]],{ppad:k})},l.dispose=function(){this.pointcloud.dispose()},t.exports=function(t,e){var n=new s(t,e.uid);return n.update(e),n}},33876:function(t,e,n){"use strict";var r=n(71828),i=n(10959);t.exports=function(t,e,n){function a(n,a){return r.coerce(t,e,i,n,a)}a("x"),a("y"),a("xbounds"),a("ybounds"),t.xy&&t.xy instanceof Float32Array&&(e.xy=t.xy),t.indices&&t.indices instanceof Int32Array&&(e.indices=t.indices),a("text"),a("marker.color",n),a("marker.opacity"),a("marker.blend"),a("marker.sizemin"),a("marker.sizemax"),a("marker.border.color",n),a("marker.border.arearatio"),e._length=null}},20593:function(t,e,n){"use strict";["*pointcloud* trace is deprecated!","Please consider switching to the *scattergl* trace type."].join(" "),t.exports={attributes:n(10959),supplyDefaults:n(33876),calc:n(36563),plot:n(42743),moduleType:"trace",name:"pointcloud",basePlotModule:n(4796),categories:["gl","gl2d","showLegend"],meta:{}}},39953:function(t,e,n){"use strict";var r=n(41940),i=n(9012),a=n(22399),o=n(77914),s=n(27670).Y,l=n(5386).f,c=n(50693),u=n(44467).templatedArray,f=n(12663).descriptionOnlyNumbers,h=n(1426).extendFlat,d=n(30962).overrideAll;(t.exports=d({hoverinfo:h({},i.hoverinfo,{flags:[],arrayOk:!1}),hoverlabel:o.hoverlabel,domain:s({name:"sankey",trace:!0}),orientation:{valType:"enumerated",values:["v","h"],dflt:"h"},valueformat:{valType:"string",dflt:".3s",description:f("value")},valuesuffix:{valType:"string",dflt:""},arrangement:{valType:"enumerated",values:["snap","perpendicular","freeform","fixed"],dflt:"snap"},textfont:r({}),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:a.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:o.hoverlabel,hovertemplate:l({},{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:a.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:o.hoverlabel,hovertemplate:l({},{keys:["value","label"]}),colorscales:u("concentrationscales",{editType:"calc",label:{valType:"string",editType:"calc",dflt:""},cmax:{valType:"number",editType:"calc",dflt:1},cmin:{valType:"number",editType:"calc",dflt:0},colorscale:h(c().colorscale,{dflt:[[0,"white"],[1,"black"]]})})}},"calc","nested")).transforms=void 0},75536:function(t,e,n){"use strict";var r=n(30962).overrideAll,i=n(27659).a0,a=n(60436),o=n(528),s=n(6964),l=n(28569),c=n(47322).prepSelect,u=n(71828),f=n(73972),h="sankey";function d(t,e){var n=t._fullData[e],r=t._fullLayout,i=r.dragmode,a="pan"===r.dragmode?"move":"crosshair",o=n._bgRect;if(o&&"pan"!==i&&"zoom"!==i){s(o,a);var h={_id:"x",c2p:u.identity,_offset:n._sankey.translateX,_length:n._sankey.width},d={_id:"y",c2p:u.identity,_offset:n._sankey.translateY,_length:n._sankey.height},p={gd:t,element:o.node(),plotinfo:{id:e,xaxis:h,yaxis:d,fillRangeItems:u.noop},subplot:e,xaxes:[h],yaxes:[d],doneFnCompleted:function(n){var r,i=t._fullData[e],a=i.node.groups.slice(),o=[];function s(t){for(var e=i._sankey.graph.nodes,n=0;ny&&(y=a.source[e]),a.target[e]>y&&(y=a.target[e]);var b,x=y+1;t.node._count=x;var w=t.node.groups,_={};for(e=0;e0&&s(E,x)&&s(C,x)&&(!_.hasOwnProperty(E)||!_.hasOwnProperty(C)||_[E]!==_[C])){_.hasOwnProperty(C)&&(C=_[C]),_.hasOwnProperty(E)&&(E=_[E]),C=+C,h[E=+E]=h[C]=!0;var P="";a.label&&a.label[e]&&(P=a.label[e]);var L=null;P&&d.hasOwnProperty(P)&&(L=d[P]),c.push({pointNumber:e,label:P,color:u?a.color[e]:a.color,customdata:f?a.customdata[e]:a.customdata,concentrationscale:L,source:E,target:C,value:+S}),A.source.push(E),A.target.push(C)}}var O=x+w.length,I=o(n.color),D=o(n.customdata),R=[];for(e=0;ex-1,childrenNodes:[],pointNumber:e,label:z,color:I?n.color[e]:n.color,customdata:D?n.customdata[e]:n.customdata})}var N=!1;return function(t,e,n){for(var a=i.init2dArray(t,0),o=0;o1}))}(O,A.source,A.target)&&(N=!0),{circular:N,links:c,nodes:R,groups:w,groupLookup:_}}t.exports=function(t,e){var n=c(e);return a({circular:n.circular,_nodes:n.nodes,_links:n.links,_groups:n.groups,_groupLookup:n.groupLookup})}},85247:function(t){"use strict";t.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(t,e,n){"use strict";var r=n(71828),i=n(39953),a=n(7901),o=n(84267),s=n(27670).c,l=n(38048),c=n(44467),u=n(85501);function f(t,e){function n(n,a){return r.coerce(t,e,i.link.colorscales,n,a)}n("label"),n("cmin"),n("cmax"),n("colorscale")}t.exports=function(t,e,n,h){function d(n,a){return r.coerce(t,e,i,n,a)}var p=r.extendDeep(h.hoverlabel,t.hoverlabel),g=t.node,v=c.newContainer(e,"node");function m(t,e){return r.coerce(g,v,i.node,t,e)}m("label"),m("groups"),m("x"),m("y"),m("pad"),m("thickness"),m("line.color"),m("line.width"),m("hoverinfo",t.hoverinfo),l(g,v,m,p),m("hovertemplate");var y=h.colorway;m("color",v.label.map((function(t,e){return a.addOpacity(function(t){return y[t%y.length]}(e),.8)}))),m("customdata");var b=t.link||{},x=c.newContainer(e,"link");function w(t,e){return r.coerce(b,x,i.link,t,e)}w("label"),w("arrowlen"),w("source"),w("target"),w("value"),w("line.color"),w("line.width"),w("hoverinfo",t.hoverinfo),l(b,x,w,p),w("hovertemplate");var _,k=o(h.paper_bgcolor).getLuminance()<.333?"rgba(255, 255, 255, 0.6)":"rgba(0, 0, 0, 0.2)";w("color",r.repeat(k,x.value.length)),w("customdata"),u(b,x,{name:"colorscales",handleItemDefaults:f}),s(e,h,d),d("orientation"),d("valueformat"),d("valuesuffix"),v.x.length&&v.y.length&&(_="freeform"),d("arrangement",_),r.coerceFont(d,"textfont",r.extendFlat({},h.font)),e._length=null}},29396:function(t,e,n){"use strict";t.exports={attributes:n(39953),supplyDefaults:n(26857),calc:n(92930),plot:n(60436),moduleType:"trace",name:"sankey",basePlotModule:n(75536),selectPoints:n(84564),categories:["noOpacity"],meta:{}}},60436:function(t,e,n){"use strict";var r=n(39898),i=n(71828),a=i.numberFormat,o=n(3393),s=n(30211),l=n(7901),c=n(85247).cn,u=i._;function f(t){return""!==t}function h(t,e){return t.filter((function(t){return t.key===e.traceId}))}function d(t,e){r.select(t).select("path").style("fill-opacity",e),r.select(t).select("rect").style("fill-opacity",e)}function p(t){r.select(t).select("text.name").style("fill","black")}function g(t){return function(e){return-1!==t.node.sourceLinks.indexOf(e.link)||-1!==t.node.targetLinks.indexOf(e.link)}}function v(t){return function(e){return-1!==e.node.sourceLinks.indexOf(t.link)||-1!==e.node.targetLinks.indexOf(t.link)}}function m(t,e,n){e&&n&&h(n,e).selectAll("."+c.sankeyLink).filter(g(e)).call(b.bind(0,e,n,!1))}function y(t,e,n){e&&n&&h(n,e).selectAll("."+c.sankeyLink).filter(g(e)).call(x.bind(0,e,n,!1))}function b(t,e,n,r){var i=r.datum().link.label;r.style("fill-opacity",(function(t){if(!t.link.concentrationscale)return.4})),i&&h(e,t).selectAll("."+c.sankeyLink).filter((function(t){return t.link.label===i})).style("fill-opacity",(function(t){if(!t.link.concentrationscale)return.4})),n&&h(e,t).selectAll("."+c.sankeyNode).filter(v(t)).call(m)}function x(t,e,n,r){var i=r.datum().link.label;r.style("fill-opacity",(function(t){return t.tinyColorAlpha})),i&&h(e,t).selectAll("."+c.sankeyLink).filter((function(t){return t.link.label===i})).style("fill-opacity",(function(t){return t.tinyColorAlpha})),n&&h(e,t).selectAll(c.sankeyNode).filter(v(t)).call(y)}function w(t,e){var n=t.hoverlabel||{},r=i.nestedProperty(n,e).get();return!Array.isArray(r)&&r}t.exports=function(t,e){for(var n=t._fullLayout,i=n._paper,h=n._size,g=0;g"),color:w(o,"bgcolor")||l.addOpacity(g.color,1),borderColor:w(o,"bordercolor"),fontFamily:w(o,"font.family"),fontSize:w(o,"font.size"),fontColor:w(o,"font.color"),nameLength:w(o,"namelength"),textAlign:w(o,"align"),idealAlign:r.event.x"),color:w(o,"bgcolor")||i.tinyColorHue,borderColor:w(o,"bordercolor"),fontFamily:w(o,"font.family"),fontSize:w(o,"font.size"),fontColor:w(o,"font.color"),nameLength:w(o,"namelength"),textAlign:w(o,"align"),idealAlign:"left",hovertemplate:o.hovertemplate,hovertemplateLabels:y,eventData:[i.node]},{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:t});d(_,.85),p(_)}}},unhover:function(e,i,a){!1!==t._fullLayout.hovermode&&(r.select(e).call(y,i,a),"skip"!==i.node.trace.node.hoverinfo&&(i.node.fullData=i.node.trace,t.emit("plotly_unhover",{event:r.event,points:[i.node]})),s.loneUnhover(n._hoverlayer.node()))},select:function(e,n,i){var a=n.node;a.originalEvent=r.event,t._hoverdata=[a],r.select(e).call(y,n,i),s.click(t,{target:!0})}}})}},3393:function(t,e,n){"use strict";var r=n(49887),i=n(81684).k4,a=n(39898),o=n(30838),s=n(86781),l=n(85247),c=n(84267),u=n(7901),f=n(91424),h=n(71828),d=h.strTranslate,p=h.strRotate,g=n(28984),v=g.keyFun,m=g.repeat,y=g.unwrap,b=n(63893),x=n(73972),w=n(18783),_=w.CAP_SHIFT,k=w.LINE_SPACING;function T(t,e,n){var r,i=y(e),a=i.trace,u=a.domain,f="h"===a.orientation,d=a.node.pad,p=a.node.thickness,g=t.width*(u.x[1]-u.x[0]),v=t.height*(u.y[1]-u.y[0]),m=i._nodes,b=i._links,x=i.circular;(r=x?s.sankeyCircular().circularLinkGap(0):o.sankey()).iterations(l.sankeyIterations).size(f?[g,v]:[v,g]).nodeWidth(p).nodePadding(d).nodeId((function(t){return t.pointNumber})).nodes(m).links(b);var w,_,k,T=r();for(var M in r.nodePadding()=i||(n=i-e.y0)>1e-6&&(e.y0+=n,e.y1+=n),i=e.y1+d}))}(function(t){var e,n,r=t.map((function(t,e){return{x0:t.x0,index:e}})).sort((function(t,e){return t.x0-e.x0})),i=[],a=-1,o=-1/0;for(w=0;wo+p&&(a+=1,e=s.x0),o=s.x0,i[a]||(i[a]=[]),i[a].push(s),n=e-s.x0,s.x0+=n,s.x1+=n}return i}(m=T.nodes)),r.update(T)}return{circular:x,key:n,trace:a,guid:h.randstr(),horizontal:f,width:g,height:v,nodePad:a.node.pad,nodeLineColor:a.node.line.color,nodeLineWidth:a.node.line.width,linkLineColor:a.link.line.color,linkLineWidth:a.link.line.width,linkArrowLength:a.link.arrowlen,valueFormat:a.valueformat,valueSuffix:a.valuesuffix,textFont:a.textfont,translateX:u.x[0]*t.width+t.margin.l,translateY:t.height-u.y[1]*t.height+t.margin.t,dragParallel:f?v:g,dragPerpendicular:f?g:v,arrangement:a.arrangement,sankey:r,graph:T,forceLayouts:{},interactionState:{dragInProgress:!1,hovered:!1}}}function M(t,e,n){var r=c(e.color),i=e.source.label+"|"+e.target.label+"__"+n;return e.trace=t.trace,e.curveNumber=t.trace.index,{circular:t.circular,key:i,traceId:t.key,pointNumber:e.pointNumber,link:e,tinyColorHue:u.tinyRGB(r),tinyColorAlpha:r.getAlpha(),linkPath:A,linkLineColor:t.linkLineColor,linkLineWidth:t.linkLineWidth,linkArrowLength:t.linkArrowLength,valueFormat:t.valueFormat,valueSuffix:t.valueSuffix,sankey:t.sankey,parent:t,interactionState:t.interactionState,flow:e.flow}}function A(){var t=.5;return function(e){var n=e.linkArrowLength;if(e.link.circular)return function(t,e){var n=t.width/2,r=t.circularPathData;return"top"===t.circularLinkType?"M "+(r.targetX-e)+" "+(r.targetY+n)+" L"+(r.rightInnerExtent-e)+" "+(r.targetY+n)+"A"+(r.rightLargeArcRadius+n)+" "+(r.rightSmallArcRadius+n)+" 0 0 1 "+(r.rightFullExtent-n-e)+" "+(r.targetY-r.rightSmallArcRadius)+"L"+(r.rightFullExtent-n-e)+" "+r.verticalRightInnerExtent+"A"+(r.rightLargeArcRadius+n)+" "+(r.rightLargeArcRadius+n)+" 0 0 1 "+(r.rightInnerExtent-e)+" "+(r.verticalFullExtent-n)+"L"+r.leftInnerExtent+" "+(r.verticalFullExtent-n)+"A"+(r.leftLargeArcRadius+n)+" "+(r.leftLargeArcRadius+n)+" 0 0 1 "+(r.leftFullExtent+n)+" "+r.verticalLeftInnerExtent+"L"+(r.leftFullExtent+n)+" "+(r.sourceY-r.leftSmallArcRadius)+"A"+(r.leftLargeArcRadius+n)+" "+(r.leftSmallArcRadius+n)+" 0 0 1 "+r.leftInnerExtent+" "+(r.sourceY+n)+"L"+r.sourceX+" "+(r.sourceY+n)+"L"+r.sourceX+" "+(r.sourceY-n)+"L"+r.leftInnerExtent+" "+(r.sourceY-n)+"A"+(r.leftLargeArcRadius-n)+" "+(r.leftSmallArcRadius-n)+" 0 0 0 "+(r.leftFullExtent-n)+" "+(r.sourceY-r.leftSmallArcRadius)+"L"+(r.leftFullExtent-n)+" "+r.verticalLeftInnerExtent+"A"+(r.leftLargeArcRadius-n)+" "+(r.leftLargeArcRadius-n)+" 0 0 0 "+r.leftInnerExtent+" "+(r.verticalFullExtent+n)+"L"+(r.rightInnerExtent-e)+" "+(r.verticalFullExtent+n)+"A"+(r.rightLargeArcRadius-n)+" "+(r.rightLargeArcRadius-n)+" 0 0 0 "+(r.rightFullExtent+n-e)+" "+r.verticalRightInnerExtent+"L"+(r.rightFullExtent+n-e)+" "+(r.targetY-r.rightSmallArcRadius)+"A"+(r.rightLargeArcRadius-n)+" "+(r.rightSmallArcRadius-n)+" 0 0 0 "+(r.rightInnerExtent-e)+" "+(r.targetY-n)+"L"+(r.targetX-e)+" "+(r.targetY-n)+(e>0?"L"+r.targetX+" "+r.targetY:"")+"Z":"M "+(r.targetX-e)+" "+(r.targetY-n)+" L"+(r.rightInnerExtent-e)+" "+(r.targetY-n)+"A"+(r.rightLargeArcRadius+n)+" "+(r.rightSmallArcRadius+n)+" 0 0 0 "+(r.rightFullExtent-n-e)+" "+(r.targetY+r.rightSmallArcRadius)+"L"+(r.rightFullExtent-n-e)+" "+r.verticalRightInnerExtent+"A"+(r.rightLargeArcRadius+n)+" "+(r.rightLargeArcRadius+n)+" 0 0 0 "+(r.rightInnerExtent-e)+" "+(r.verticalFullExtent+n)+"L"+r.leftInnerExtent+" "+(r.verticalFullExtent+n)+"A"+(r.leftLargeArcRadius+n)+" "+(r.leftLargeArcRadius+n)+" 0 0 0 "+(r.leftFullExtent+n)+" "+r.verticalLeftInnerExtent+"L"+(r.leftFullExtent+n)+" "+(r.sourceY+r.leftSmallArcRadius)+"A"+(r.leftLargeArcRadius+n)+" "+(r.leftSmallArcRadius+n)+" 0 0 0 "+r.leftInnerExtent+" "+(r.sourceY-n)+"L"+r.sourceX+" "+(r.sourceY-n)+"L"+r.sourceX+" "+(r.sourceY+n)+"L"+r.leftInnerExtent+" "+(r.sourceY+n)+"A"+(r.leftLargeArcRadius-n)+" "+(r.leftSmallArcRadius-n)+" 0 0 1 "+(r.leftFullExtent-n)+" "+(r.sourceY+r.leftSmallArcRadius)+"L"+(r.leftFullExtent-n)+" "+r.verticalLeftInnerExtent+"A"+(r.leftLargeArcRadius-n)+" "+(r.leftLargeArcRadius-n)+" 0 0 1 "+r.leftInnerExtent+" "+(r.verticalFullExtent-n)+"L"+(r.rightInnerExtent-e)+" "+(r.verticalFullExtent-n)+"A"+(r.rightLargeArcRadius-n)+" "+(r.rightLargeArcRadius-n)+" 0 0 1 "+(r.rightFullExtent+n-e)+" "+r.verticalRightInnerExtent+"L"+(r.rightFullExtent+n-e)+" "+(r.targetY+r.rightSmallArcRadius)+"A"+(r.rightLargeArcRadius-n)+" "+(r.rightSmallArcRadius-n)+" 0 0 1 "+(r.rightInnerExtent-e)+" "+(r.targetY+n)+"L"+(r.targetX-e)+" "+(r.targetY+n)+(e>0?"L"+r.targetX+" "+r.targetY:"")+"Z"}(e.link,n);var r=Math.abs((e.link.target.x0-e.link.source.x1)/2);n>r&&(n=r);var a=e.link.source.x1,o=e.link.target.x0-n,s=i(a,o),l=s(t),c=s(1-t),u=e.link.y0-e.link.width/2,f=e.link.y0+e.link.width/2,h=e.link.y1-e.link.width/2,d=e.link.y1+e.link.width/2,p="M"+a+","+u,g="C"+l+","+u+" "+c+","+h+" "+o+","+h,v="C"+c+","+d+" "+l+","+f+" "+a+","+f,m=n>0?"L"+(o+n)+","+(h+e.link.width/2):"";return p+g+(m+="L"+o+","+d)+v+"Z"}}function S(t,e){var n=c(e.color),r=l.nodePadAcross,i=t.nodePad/2;e.dx=e.x1-e.x0,e.dy=e.y1-e.y0;var a=e.dx,o=Math.max(.5,e.dy),s="node_"+e.pointNumber;return e.group&&(s=h.randstr()),e.trace=t.trace,e.curveNumber=t.trace.index,{index:e.pointNumber,key:s,partOfGroup:e.partOfGroup||!1,group:e.group,traceId:t.key,trace:t.trace,node:e,nodePad:t.nodePad,nodeLineColor:t.nodeLineColor,nodeLineWidth:t.nodeLineWidth,textFont:t.textFont,size:t.horizontal?t.height:t.width,visibleWidth:Math.ceil(a),visibleHeight:o,zoneX:-r,zoneY:-i,zoneWidth:a+2*r,zoneHeight:o+2*i,labelY:t.horizontal?e.dy/2+1:e.dx/2+1,left:1===e.originalLayer,sizeAcross:t.width,forceLayouts:t.forceLayouts,horizontal:t.horizontal,darkBackground:n.getBrightness()<=128,tinyColorHue:u.tinyRGB(n),tinyColorAlpha:n.getAlpha(),valueFormat:t.valueFormat,valueSuffix:t.valueSuffix,sankey:t.sankey,graph:t.graph,arrangement:t.arrangement,uniqueNodeLabelPathId:[t.guid,t.key,s].join("_"),interactionState:t.interactionState,figure:t}}function E(t){t.attr("transform",(function(t){return d(t.node.x0.toFixed(3),t.node.y0.toFixed(3))}))}function C(t){t.call(E)}function P(t,e){t.call(C),e.attr("d",A())}function L(t){t.attr("width",(function(t){return t.node.x1-t.node.x0})).attr("height",(function(t){return t.visibleHeight}))}function O(t){return t.link.width>1||t.linkLineWidth>0}function I(t){return d(t.translateX,t.translateY)+(t.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function D(t,e,n){t.on(".basic",null).on("mouseover.basic",(function(t){t.interactionState.dragInProgress||t.partOfGroup||(n.hover(this,t,e),t.interactionState.hovered=[this,t])})).on("mousemove.basic",(function(t){t.interactionState.dragInProgress||t.partOfGroup||(n.follow(this,t),t.interactionState.hovered=[this,t])})).on("mouseout.basic",(function(t){t.interactionState.dragInProgress||t.partOfGroup||(n.unhover(this,t,e),t.interactionState.hovered=!1)})).on("click.basic",(function(t){t.interactionState.hovered&&(n.unhover(this,t,e),t.interactionState.hovered=!1),t.interactionState.dragInProgress||t.partOfGroup||n.select(this,t,e)}))}function R(t,e,n,i){var o=a.behavior.drag().origin((function(t){return{x:t.node.x0+t.visibleWidth/2,y:t.node.y0+t.visibleHeight/2}})).on("dragstart",(function(a){if("fixed"!==a.arrangement&&(h.ensureSingle(i._fullLayout._infolayer,"g","dragcover",(function(t){i._fullLayout._dragCover=t})),h.raiseToTop(this),a.interactionState.dragInProgress=a.node,N(a.node),a.interactionState.hovered&&(n.nodeEvents.unhover.apply(0,a.interactionState.hovered),a.interactionState.hovered=!1),"snap"===a.arrangement)){var o=a.traceId+"|"+a.key;a.forceLayouts[o]?a.forceLayouts[o].alpha(1):function(t,e,n,i){!function(t){for(var e=0;e0&&r.forceLayouts[e].alpha(0)}}(0,e,a,n)).stop()}(0,o,a),function(t,e,n,r,i){window.requestAnimationFrame((function a(){var o;for(o=0;o0)window.requestAnimationFrame(a);else{var s=n.node.originalX;n.node.x0=s-n.visibleWidth/2,n.node.x1=s+n.visibleWidth/2,z(n,i)}}))}(t,e,a,o,i)}})).on("drag",(function(n){if("fixed"!==n.arrangement){var r=a.event.x,i=a.event.y;"snap"===n.arrangement?(n.node.x0=r-n.visibleWidth/2,n.node.x1=r+n.visibleWidth/2,n.node.y0=i-n.visibleHeight/2,n.node.y1=i+n.visibleHeight/2):("freeform"===n.arrangement&&(n.node.x0=r-n.visibleWidth/2,n.node.x1=r+n.visibleWidth/2),i=Math.max(0,Math.min(n.size-n.visibleHeight/2,i)),n.node.y0=i-n.visibleHeight/2,n.node.y1=i+n.visibleHeight/2),N(n.node),"snap"!==n.arrangement&&(n.sankey.update(n.graph),P(t.filter(j(n)),e))}})).on("dragend",(function(t){if("fixed"!==t.arrangement){t.interactionState.dragInProgress=!1;for(var e=0;el&&P[m].gap;)m--;for(b=P[m].s,g=P.length-1;g>m;g--)P[g].s=b;for(;lS[f]&&f=0;f--){var h=t[f];if("scatter"===h.type&&h.xaxis===c.xaxis&&h.yaxis===c.yaxis){h.opacity=void 0;break}}}}}},17438:function(t,e,n){"use strict";var r=n(71828),i=n(73972),a=n(82196),o=n(47581),s=n(34098),l=n(67513),c=n(73927),u=n(565),f=n(49508),h=n(11058),d=n(94039),p=n(82410),g=n(28908),v=n(71828).coercePattern;t.exports=function(t,e,n,m){function y(n,i){return r.coerce(t,e,a,n,i)}var b=l(t,e,m,y);if(b||(e.visible=!1),e.visible){c(t,e,m,y),y("xhoverformat"),y("yhoverformat");var x=u(t,e,m,y);"group"===m.scattermode&&void 0===e.orientation&&y("orientation","v");var w=!x&&b=Math.min(e,n)&&p<=Math.max(e,n)?0:1/0}var r=Math.max(3,t.mrc||0),i=1-1/r,a=Math.abs(h.c2p(t.x)-p);return a=Math.min(e,n)&&g<=Math.max(e,n)?0:1/0}var r=Math.max(3,t.mrc||0),i=1-1/r,a=Math.abs(d.c2p(t.y)-g);return aY!==(F=D[O][1])>=Y&&(z=D[O-1][0],N=D[O][0],F-j&&(R=z+(N-z)*(Y-j)/(F-j),V=Math.min(V,R),q=Math.max(q,R)));V=Math.max(V,0),q=Math.min(q,h._length);var $=s.defaultLine;return s.opacity(f.fillcolor)?$=f.fillcolor:s.opacity((f.line||{}).color)&&($=f.line.color),r.extendFlat(t,{distance:t.maxHoverDistance,x0:V,x1:q,y0:Y,y1:Y,color:$,hovertemplate:!1}),delete t.index,f.text&&!Array.isArray(f.text)?t.text=String(f.text):t.text=f.name,[t]}}}},67368:function(t,e,n){"use strict";var r=n(34098);t.exports={hasLines:r.hasLines,hasMarkers:r.hasMarkers,hasText:r.hasText,isBubble:r.isBubble,attributes:n(82196),layoutAttributes:n(21479),supplyDefaults:n(17438),crossTraceDefaults:n(34936),supplyLayoutDefaults:n(79334),calc:n(47761).calc,crossTraceCalc:n(72626),arraysToCalcdata:n(75225),plot:n(32663),colorbar:n(4898),formatLabels:n(8225),style:n(16296).style,styleOnSelect:n(16296).styleOnSelect,hoverPoints:n(33720),selectPoints:n(98002),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:n(93612),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}},21479:function(t){"use strict";t.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}},79334:function(t,e,n){"use strict";var r=n(71828),i=n(21479);t.exports=function(t,e){var n,a,o="group"===e.barmode;"group"===e.scattermode&&(n="scattergap",a=o?e.bargap:.2,r.coerce(t,e,i,n,a))}},11058:function(t,e,n){"use strict";var r=n(71828).isArrayOrTypedArray,i=n(52075).hasColorscale,a=n(1586);t.exports=function(t,e,n,o,s,l){l||(l={});var c=(t.marker||{}).color;s("line.color",n),i(t,"line")?a(t,e,o,s,{prefix:"line.",cLetter:"c"}):s("line.color",!r(c)&&c||n),s("line.width"),l.noDash||s("line.dash"),l.backoff&&s("line.backoff")}},34621:function(t,e,n){"use strict";var r=n(91424),i=n(50606),a=i.BADNUM,o=i.LOG_CLIP,s=o+.5,l=o-.5,c=n(71828),u=c.segmentsIntersect,f=c.constrain,h=n(47581);t.exports=function(t,e){var n,i,o,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S,E=e.trace||{},C=e.xaxis,P=e.yaxis,L="log"===C.type,O="log"===P.type,I=C._length,D=P._length,R=e.backoff,z=E.marker,N=e.connectGaps,j=e.baseTolerance,F=e.shape,B="linear"===F,U=E.fill&&"none"!==E.fill,H=[],V=h.minTolerance,q=t.length,G=new Array(q),W=0;function Y(n){var r=t[n];if(!r)return!1;var i=e.linearized?C.l2p(r.x):C.c2p(r.x),o=e.linearized?P.l2p(r.y):P.c2p(r.y);if(i===a){if(L&&(i=C.c2p(r.x,!0)),i===a)return!1;O&&o===a&&(i*=Math.abs(C._m*D*(C._m>0?s:l)/(P._m*I*(P._m>0?s:l)))),i*=1e3}if(o===a){if(O&&(o=P.c2p(r.y,!0)),o===a)return!1;o*=1e3}return[i,o]}function $(t,e,n,r){var i=n-t,a=r-e,o=.5-t,s=.5-e,l=i*i+a*a,c=i*o+a*s;if(c>0&&cot||t[1]lt)return[f(t[0],at,ot),f(t[1],st,lt)]}function ft(t,e){return t[0]===e[0]&&(t[0]===at||t[0]===ot)||t[1]===e[1]&&(t[1]===st||t[1]===lt)||void 0}function ht(t,e,n){return function(r,i){var a=ut(r),o=ut(i),s=[];if(a&&o&&ft(a,o))return s;a&&s.push(a),o&&s.push(o);var l=2*c.constrain((r[t]+i[t])/2,e,n)-((a||r)[t]+(o||i)[t]);return l&&((a&&o?l>0===a[t]>o[t]?a:o:a||o)[t]+=l),s}}function dt(t){var e=t[0],n=t[1],r=e===G[W-1][0],i=n===G[W-1][1];if(!r||!i)if(W>1){var a=e===G[W-2][0],o=n===G[W-2][1];r&&(e===at||e===ot)&&a?o?W--:G[W-1]=t:i&&(n===st||n===lt)&&o?a?W--:G[W-1]=t:G[W++]=t}else G[W++]=t}function pt(t){G[W-1][0]!==t[0]&&G[W-1][1]!==t[1]&&dt([Q,tt]),dt(t),et=null,Q=tt=0}"linear"===F||"spline"===F?rt=function(t,e){for(var n=[],r=0,i=0;i<4;i++){var a=ct[i],o=u(t[0],t[1],e[0],e[1],a[0],a[1],a[2],a[3]);o&&(!r||Math.abs(o.x-n[0][0])>1||Math.abs(o.y-n[0][1])>1)&&(o=[o.x,o.y],r&&K(o,t)ot?ot:0,J=e[1]lt?lt:0,Z||J){if(W)if(et){var r=rt(et,e);r.length>1&&(pt(r[0]),G[W++]=r[1])}else nt=rt(G[W-1],e)[0],G[W++]=nt;else G[W++]=[Z||e[0],J||e[1]];var i=G[W-1];Z&&J&&(i[0]!==Z||i[1]!==J)?(et&&(Q!==Z&&tt!==J?dt(Q&&tt?function(t,e){var n=e[0]-t[0],r=(e[1]-t[1])/n;return(t[1]*e[0]-e[1]*t[0])/n>0?[r>0?at:ot,lt]:[r>0?ot:at,st]}(et,e):[Q||Z,tt||J]):Q&&tt&&dt([Q,tt])),dt([Z,J])):Q-Z&&tt-J&&dt([Z||Q,J||tt]),et=e,Q=Z,tt=J}else et&&pt(rt(et,e)[0]),G[W++]=e}for(n=0;nX(g,mt))break;o=g,(_=y[0]*m[0]+y[1]*m[1])>x?(x=_,d=g,v=!1):_=t.length||!g)break;vt(g),i=g}}else vt(d)}et&&dt([Q||et[0],tt||et[1]]),H.push(G.slice(0,W))}var yt=F.slice(F.length-1);if(R&&"h"!==yt&&"v"!==yt){for(var bt=!1,xt=-1,wt=[],_t=0;_t=0?l=d:(l=d=h,h++),l0?Math.max(n,a):0}}},4898:function(t){"use strict";t.exports={container:"marker",min:"cmin",max:"cmax"}},49508:function(t,e,n){"use strict";var r=n(7901),i=n(52075).hasColorscale,a=n(1586),o=n(34098);t.exports=function(t,e,n,s,l,c){var u=o.isBubble(t),f=(t.line||{}).color;c=c||{},f&&(n=f),l("marker.symbol"),l("marker.opacity",u?.7:1),l("marker.size"),c.noAngle||(l("marker.angle"),c.noAngleRef||l("marker.angleref"),c.noStandOff||l("marker.standoff")),l("marker.color",n),i(t,"marker")&&a(t,e,s,l,{prefix:"marker.",cLetter:"c"}),c.noSelect||(l("selected.marker.color"),l("unselected.marker.color"),l("selected.marker.size"),l("unselected.marker.size")),c.noLine||(l("marker.line.color",f&&!Array.isArray(f)&&e.marker.color!==f?f:u?r.background:r.defaultLine),i(t,"marker.line")&&a(t,e,s,l,{prefix:"marker.line.",cLetter:"c"}),l("marker.line.width",u?1:0)),u&&(l("marker.sizeref"),l("marker.sizemin"),l("marker.sizemode")),c.gradient&&"none"!==l("marker.gradient.type")&&l("marker.gradient.color")}},73927:function(t,e,n){"use strict";var r=n(71828).dateTick0,i=n(50606).ONEWEEK;function a(t,e){return r(e,t%i===0?1:0)}t.exports=function(t,e,n,r,i){if(i||(i={x:!0,y:!0}),i.x){var o=r("xperiod");o&&(r("xperiod0",a(o,e.xcalendar)),r("xperiodalignment"))}if(i.y){var s=r("yperiod");s&&(r("yperiod0",a(s,e.ycalendar)),r("yperiodalignment"))}}},32663:function(t,e,n){"use strict";var r=n(39898),i=n(73972),a=n(71828),o=a.ensureSingle,s=a.identity,l=n(91424),c=n(34098),u=n(34621),f=n(68687),h=n(61082).tester;function d(t,e,n,f,d,p,g){var v,m=t._context.staticPlot;!function(t,e,n,i,o){var s=n.xaxis,l=n.yaxis,u=r.extent(a.simpleMap(s.range,s.r2c)),f=r.extent(a.simpleMap(l.range,l.r2c)),h=i[0].trace;if(c.hasMarkers(h)){var d=h.marker.maxdisplayed;if(0!==d){var p=i.filter((function(t){return t.x>=u[0]&&t.x<=u[1]&&t.y>=f[0]&&t.y<=f[1]})),g=Math.ceil(p.length/d),v=0;o.forEach((function(t,n){var r=t[0].trace;c.hasMarkers(r)&&r.marker.maxdisplayed>0&&n0;function b(t){return y?t.transition():t}var x=n.xaxis,w=n.yaxis,_=f[0].trace,k=_.line,T=r.select(p),M=o(T,"g","errorbars"),A=o(T,"g","lines"),S=o(T,"g","points"),E=o(T,"g","text");if(i.getComponentMethod("errorbars","plot")(t,M,n,g),!0===_.visible){var C,P;b(T).style("opacity",_.opacity);var L=_.fill.charAt(_.fill.length-1);"x"!==L&&"y"!==L&&(L=""),f[0][n.isRangePlot?"nodeRangePlot3":"node3"]=T;var O,I,D="",R=[],z=_._prevtrace;z&&(D=z._prevRevpath||"",P=z._nextFill,R=z._polygons);var N,j,F,B,U,H,V,q="",G="",W=[],Y=a.noop;if(C=_._ownFill,c.hasLines(_)||"none"!==_.fill){for(P&&P.datum(f),-1!==["hv","vh","hvh","vhv"].indexOf(k.shape)?(N=l.steps(k.shape),j=l.steps(k.shape.split("").reverse().join(""))):N=j="spline"===k.shape?function(t){var e=t[t.length-1];return t.length>1&&t[0][0]===e[0]&&t[0][1]===e[1]?l.smoothclosed(t.slice(1),k.smoothing):l.smoothopen(t,k.smoothing)}:function(t){return"M"+t.join("L")},F=function(t){return j(t.reverse())},W=u(f,{xaxis:x,yaxis:w,trace:_,connectGaps:_.connectgaps,baseTolerance:Math.max(k.width||1,3)/4,shape:k.shape,backoff:k.backoff,simplify:k.simplify,fill:_.fill}),V=_._polygons=new Array(W.length),v=0;v0,v=f(t,e,n);(u=i.selectAll("g.trace").data(v,(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),u.order(),function(t,e,n){e.each((function(e){var i=o(r.select(this),"g","fills");l.setClipUrl(i,n.layerClipId,t);var a=e[0].trace,c=[];a._ownfill&&c.push("_ownFill"),a._nexttrace&&c.push("_nextFill");var u=i.selectAll("g").data(c,s);u.enter().append("g"),u.exit().each((function(t){a[t]=null})).remove(),u.order().each((function(t){a[t]=o(r.select(this),"path","js-fill")}))}))}(t,u,e),g?(c&&(h=c()),r.transition().duration(a.duration).ease(a.easing).each("end",(function(){h&&h()})).each("interrupt",(function(){h&&h()})).each((function(){i.selectAll("g.trace").each((function(n,r){d(t,r,e,n,v,this,a)}))}))):u.each((function(n,r){d(t,r,e,n,v,this,a)})),p&&u.exit().remove(),i.selectAll("path:not([d])").remove()}},98002:function(t,e,n){"use strict";var r=n(34098);t.exports=function(t,e){var n,i,a,o,s=t.cd,l=t.xaxis,c=t.yaxis,u=[],f=s[0].trace;if(!r.hasMarkers(f)&&!r.hasText(f))return[];if(!1===e)for(n=0;n0){var h=i.c2l(u);i._lowerLogErrorBound||(i._lowerLogErrorBound=h),i._lowerErrorBound=Math.min(i._lowerLogErrorBound,h)}}else o[s]=[-l[0]*n,l[1]*n]}return o}t.exports=function(t,e,n){var r=[i(t.x,t.error_x,e[0],n.xaxis),i(t.y,t.error_y,e[1],n.yaxis),i(t.z,t.error_z,e[2],n.zaxis)],a=function(t){for(var e=0;e-1?-1:t.indexOf("right")>-1?1:0}function x(t){return null===t||void 0===t?0:t.indexOf("top")>-1?-1:t.indexOf("bottom")>-1?1:0}function w(t,e){return e(4*t)}function _(t){return d[t]}function k(t,e,n,r,i){var a=null;if(l.isArrayOrTypedArray(t)){a=[];for(var o=0;o=0){var g=function(t,e,n){var r,i=(n+1)%3,a=(n+2)%3,o=[],l=[];for(r=0;r=0&&f("surfacecolor",d||p);for(var g=["x","y","z"],v=0;v<3;++v){var m="projection."+g[v];f(m+".show")&&(f(m+".opacity"),f(m+".scale"))}var y=r.getComponentMethod("errorbars","supplyDefaults");y(t,e,d||p||n,{axis:"z"}),y(t,e,d||p||n,{axis:"y",inherit:"z"}),y(t,e,d||p||n,{axis:"x",inherit:"z"})}else e.visible=!1}},13551:function(t,e,n){"use strict";t.exports={plot:n(58925),attributes:n(44542),markerSymbols:n(87381),supplyDefaults:n(21428),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:n(36563),moduleType:"trace",name:"scatter3d",basePlotModule:n(58547),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}},97001:function(t,e,n){"use strict";var r=n(82196),i=n(9012),a=n(5386).f,o=n(5386).s,s=n(50693),l=n(1426).extendFlat,c=r.marker,u=r.line,f=c.line;t.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:l({},r.mode,{dflt:"markers"}),text:l({},r.text,{}),texttemplate:o({editType:"plot"},{keys:["a","b","text"]}),hovertext:l({},r.hovertext,{}),line:{color:u.color,width:u.width,dash:u.dash,backoff:u.backoff,shape:l({},u.shape,{values:["linear","spline"]}),smoothing:u.smoothing,editType:"calc"},connectgaps:r.connectgaps,fill:l({},r.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:r.fillcolor,marker:l({symbol:c.symbol,opacity:c.opacity,maxdisplayed:c.maxdisplayed,angle:c.angle,angleref:c.angleref,standoff:c.standoff,size:c.size,sizeref:c.sizeref,sizemin:c.sizemin,sizemode:c.sizemode,line:l({width:f.width,editType:"calc"},s("marker.line")),gradient:c.gradient,editType:"calc"},s("marker")),textfont:r.textfont,textposition:r.textposition,selected:r.selected,unselected:r.unselected,hoverinfo:l({},i.hoverinfo,{flags:["a","b","text","name"]}),hoveron:r.hoveron,hovertemplate:a()}},34618:function(t,e,n){"use strict";var r=n(92770),i=n(36922),a=n(75225),o=n(66279),s=n(47761).calcMarkerSize,l=n(22882);t.exports=function(t,e){var n=e._carpetTrace=l(t,e);if(n&&n.visible&&"legendonly"!==n.visible){var c;e.xaxis=n.xaxis,e.yaxis=n.yaxis;var u,f,h=e._length,d=new Array(h),p=!1;for(c=0;c")}return o}function y(t,e){var n;n=t.labelprefix&&t.labelprefix.length>0?t.labelprefix.replace(/ = $/,""):t._hovertitle,v.push(n+": "+e.toFixed(3)+t.labelsuffix)}}},46858:function(t,e,n){"use strict";t.exports={attributes:n(97001),supplyDefaults:n(98965),colorbar:n(4898),formatLabels:n(48953),calc:n(34618),plot:n(1913),style:n(16296).style,styleOnSelect:n(16296).styleOnSelect,hoverPoints:n(22931),selectPoints:n(98002),eventData:n(16165),moduleType:"trace",name:"scattercarpet",basePlotModule:n(93612),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}},1913:function(t,e,n){"use strict";var r=n(32663),i=n(89298),a=n(91424);t.exports=function(t,e,n,o){var s,l,c,u=n[0][0].carpet,f=i.getFromId(t,u.xaxis||"x"),h=i.getFromId(t,u.yaxis||"y"),d={xaxis:f,yaxis:h,plot:e.plot};for(s=0;s")}function d(t){return t+"\xb0"}}(c,g,t,l[0].t.labels),t.hovertemplate=c.hovertemplate,[t]}}},17988:function(t,e,n){"use strict";t.exports={attributes:n(19316),supplyDefaults:n(10659),colorbar:n(4898),formatLabels:n(82719),calc:n(84622),calcGeoJSON:n(89171).calcGeoJSON,plot:n(89171).plot,style:n(33095),styleOnSelect:n(16296).styleOnSelect,hoverPoints:n(14977),eventData:n(84084),selectPoints:n(20548),moduleType:"trace",name:"scattergeo",basePlotModule:n(44622),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}},89171:function(t,e,n){"use strict";var r=n(39898),i=n(71828),a=n(90973).getTopojsonFeatures,o=n(18214),s=n(41327),l=n(71739).findExtremes,c=n(50606).BADNUM,u=n(47761).calcMarkerSize,f=n(34098),h=n(33095);t.exports={calcGeoJSON:function(t,e){var n,r,i=t[0].trace,o=e[i.geo],f=o._subplot,h=i._length;if(Array.isArray(i.locations)){var d=i.locationmode,p="geojson-id"===d?s.extractTraceFeature(t):a(i,f.topojson);for(n=0;n=v,_=2*x,k={},T=l.makeCalcdata(e,"x"),M=y.makeCalcdata(e,"y"),A=s(e,l,"x",T),S=s(e,y,"y",M),E=A.vals,C=S.vals;e._x=E,e._y=C,e.xperiodalignment&&(e._origX=T,e._xStarts=A.starts,e._xEnds=A.ends),e.yperiodalignment&&(e._origY=M,e._yStarts=S.starts,e._yEnds=S.ends);var P=new Array(_),L=new Array(x);for(n=0;n1&&i.extendFlat(s.line,d.linePositions(t,n,r)),s.errorX||s.errorY){var l=d.errorBarPositions(t,n,r,a,o);s.errorX&&i.extendFlat(s.errorX,l.x),s.errorY&&i.extendFlat(s.errorY,l.y)}return s.text&&(i.extendFlat(s.text,{positions:r},d.textPosition(t,n,s.text,s.marker)),i.extendFlat(s.textSel,{positions:r},d.textPosition(t,n,s.text,s.markerSel)),i.extendFlat(s.textUnsel,{positions:r},d.textPosition(t,n,s.text,s.markerUnsel))),s}(t,0,e,P,E,C),D=p(t,b);return f(o,e),w?I.marker&&(O=I.marker.sizeAvg||Math.max(I.marker.size,3)):O=c(e,x),u(t,e,l,y,E,C,O),I.errorX&&m(e,l,I.errorX),I.errorY&&m(e,y,I.errorY),I.fill&&!D.fill2d&&(D.fill2d=!0),I.marker&&!D.scatter2d&&(D.scatter2d=!0),I.line&&!D.line2d&&(D.line2d=!0),!I.errorX&&!I.errorY||D.error2d||(D.error2d=!0),I.text&&!D.glText&&(D.glText=!0),I.marker&&(I.marker.snap=x),D.lineOptions.push(I.line),D.errorXOptions.push(I.errorX),D.errorYOptions.push(I.errorY),D.fillOptions.push(I.fill),D.markerOptions.push(I.marker),D.markerSelectedOptions.push(I.markerSel),D.markerUnselectedOptions.push(I.markerUnsel),D.textOptions.push(I.text),D.textSelectedOptions.push(I.textSel),D.textUnselectedOptions.push(I.textUnsel),D.selectBatch.push([]),D.unselectBatch.push([]),k._scene=D,k.index=D.count,k.x=E,k.y=C,k.positions=P,D.count++,[{x:!1,y:!1,t:k,trace:e}]}},78232:function(t){"use strict";t.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(t,e,n){"use strict";var r=n(92770),i=n(82019),a=n(25075),o=n(73972),s=n(71828),l=n(91424),c=n(41675),u=n(81697).formatColor,f=n(34098),h=n(39984),d=n(68645),p=n(78232),g=n(37822).DESELECTDIM,v={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},m=n(23469).appendArrayPointValue;function y(t,e){var n,i=t._fullLayout,a=e._length,o=e.textfont,l=e.textposition,c=Array.isArray(l)?l:[l],u=o.color,f=o.size,h=o.family,d={},p=t._context.plotGlPixelRatio,g=e.texttemplate;if(g){d.text=[];var v=i._d3locale,y=Array.isArray(g),b=y?Math.min(g.length,a):a,x=y?function(t){return g[t]}:function(){return g};for(n=0;np.TOO_MANY_POINTS||f.hasMarkers(e)?"rect":"round";if(c&&e.connectgaps){var h=r[0],d=r[1];for(i=0;i1?l[i]:l[0]:l,p=Array.isArray(c)?c.length>1?c[i]:c[0]:c,g=v[d],m=v[p],y=u?u/.8+1:0,b=-m*y-.5*m;o.offset[i]=[g*y/h,b/h]}}return o}}},47148:function(t,e,n){"use strict";var r=n(71828),i=n(73972),a=n(68645),o=n(42341),s=n(47581),l=n(34098),c=n(67513),u=n(73927),f=n(49508),h=n(11058),d=n(28908),p=n(82410);t.exports=function(t,e,n,g){function v(n,i){return r.coerce(t,e,o,n,i)}var m=!!t.marker&&a.isOpenSymbol(t.marker.symbol),y=l.isBubble(t),b=c(t,e,g,v);if(b){u(t,e,g,v),v("xhoverformat"),v("yhoverformat");var x=b100},e.isDotSymbol=function(t){return"string"===typeof t?r.DOT_RE.test(t):t>200}},20794:function(t,e,n){"use strict";var r=n(73972),i=n(71828),a=n(34603);function o(t,e,n,o){var s=t.xa,l=t.ya,c=t.distance,u=t.dxy,f=t.index,h={pointNumber:f,x:e[f],y:n[f]};h.tx=Array.isArray(o.text)?o.text[f]:o.text,h.htx=Array.isArray(o.hovertext)?o.hovertext[f]:o.hovertext,h.data=Array.isArray(o.customdata)?o.customdata[f]:o.customdata,h.tp=Array.isArray(o.textposition)?o.textposition[f]:o.textposition;var d=o.textfont;d&&(h.ts=i.isArrayOrTypedArray(d.size)?d.size[f]:d.size,h.tc=Array.isArray(d.color)?d.color[f]:d.color,h.tf=Array.isArray(d.family)?d.family[f]:d.family);var p=o.marker;p&&(h.ms=i.isArrayOrTypedArray(p.size)?p.size[f]:p.size,h.mo=i.isArrayOrTypedArray(p.opacity)?p.opacity[f]:p.opacity,h.mx=i.isArrayOrTypedArray(p.symbol)?p.symbol[f]:p.symbol,h.ma=i.isArrayOrTypedArray(p.angle)?p.angle[f]:p.angle,h.mc=i.isArrayOrTypedArray(p.color)?p.color[f]:p.color);var g=p&&p.line;g&&(h.mlc=Array.isArray(g.color)?g.color[f]:g.color,h.mlw=i.isArrayOrTypedArray(g.width)?g.width[f]:g.width);var v=p&&p.gradient;v&&"none"!==v.type&&(h.mgt=Array.isArray(v.type)?v.type[f]:v.type,h.mgc=Array.isArray(v.color)?v.color[f]:v.color);var m=s.c2p(h.x,!0),y=l.c2p(h.y,!0),b=h.mrc||1,x=o.hoverlabel;x&&(h.hbg=Array.isArray(x.bgcolor)?x.bgcolor[f]:x.bgcolor,h.hbc=Array.isArray(x.bordercolor)?x.bordercolor[f]:x.bordercolor,h.hts=i.isArrayOrTypedArray(x.font.size)?x.font.size[f]:x.font.size,h.htc=Array.isArray(x.font.color)?x.font.color[f]:x.font.color,h.htf=Array.isArray(x.font.family)?x.font.family[f]:x.font.family,h.hnl=i.isArrayOrTypedArray(x.namelength)?x.namelength[f]:x.namelength);var w=o.hoverinfo;w&&(h.hi=Array.isArray(w)?w[f]:w);var _=o.hovertemplate;_&&(h.ht=Array.isArray(_)?_[f]:_);var k={};k[t.index]=h;var T=o._origX,M=o._origY,A=i.extendFlat({},t,{color:a(o,h),x0:m-b,x1:m+b,xLabelVal:T?T[f]:h.x,y0:y-b,y1:y+b,yLabelVal:M?M[f]:h.y,cd:k,distance:c,spikeDistance:u,hovertemplate:h.ht});return h.htx?A.text=h.htx:h.tx?A.text=h.tx:o.text&&(A.text=o.text),i.fillText(h,o,A),r.getComponentMethod("errorbars","hoverInfo")(h,o,A),A}t.exports={hoverPoints:function(t,e,n,r){var i,a,s,l,c,u,f,h,d,p,g=t.cd,v=g[0].t,m=g[0].trace,y=t.xa,b=t.ya,x=v.x,w=v.y,_=y.c2p(e),k=b.c2p(n),T=t.distance;if(v.tree){var M=y.p2c(_-T),A=y.p2c(_+T),S=b.p2c(k-T),E=b.p2c(k+T);i="x"===r?v.tree.range(Math.min(M,A),Math.min(b._rl[0],b._rl[1]),Math.max(M,A),Math.max(b._rl[0],b._rl[1])):v.tree.range(Math.min(M,A),Math.min(S,E),Math.max(M,A),Math.max(S,E))}else i=v.ids;var C=T;if("x"===r){var P=!!m.xperiodalignment,L=!!m.yperiodalignment;for(u=0;u=Math.min(O,I)&&_<=Math.max(O,I)?0:1/0}if(f=Math.min(D,R)&&k<=Math.max(D,R)?0:1/0}p=Math.sqrt(f*f+h*h),s=i[u]}}}else for(u=i.length-1;u>-1;u--)l=x[a=i[u]],c=w[a],f=y.c2p(l)-_,h=b.c2p(c)-k,(d=Math.sqrt(f*f+h*h))y.glText.length){var k=w-y.glText.length;for(g=0;gn&&(isNaN(e[r])||isNaN(e[r+1]));)r-=2;t.positions=e.slice(n,r+2)}return t})),y.line2d.update(y.lineOptions)),y.error2d){var M=(y.errorXOptions||[]).concat(y.errorYOptions||[]);y.error2d.update(M)}y.scatter2d&&y.scatter2d.update(y.markerOptions),y.fillOrder=s.repeat(null,w),y.fill2d&&(y.fillOptions=y.fillOptions.map((function(t,e){var r=n[e];if(t&&r&&r[0]&&r[0].trace){var i,a,o=r[0],s=o.trace,l=o.t,c=y.lineOptions[e],u=[];s._ownfill&&u.push(e),s._nexttrace&&u.push(e+1),u.length&&(y.fillOrder[e]=u);var f,h,d=[],p=c&&c.positions||l.positions;if("tozeroy"===s.fill){for(f=0;ff&&isNaN(p[h+1]);)h-=2;0!==p[f+1]&&(d=[p[f],0]),d=d.concat(p.slice(f,h+2)),0!==p[h+1]&&(d=d.concat([p[h],0]))}else if("tozerox"===s.fill){for(f=0;ff&&isNaN(p[h]);)h-=2;0!==p[f]&&(d=[0,p[f+1]]),d=d.concat(p.slice(f,h+2)),0!==p[h]&&(d=d.concat([0,p[h+1]]))}else if("toself"===s.fill||"tonext"===s.fill){for(d=[],i=0,t.splitNull=!0,a=0;a-1;for(g=0;g")}function u(t){return t+"\xb0"}}t.exports={hoverPoints:function(t,e,n){var o=t.cd,u=o[0].trace,f=t.xa,h=t.ya,d=t.subplot,p=[],g=l+u.uid+"-circle",v=u.cluster&&u.cluster.enabled;if(v){var m=d.map.queryRenderedFeatures(null,{layers:[g]});p=m.map((function(t){return t.id}))}var y=360*(e>=0?Math.floor((e+180)/360):Math.ceil((e-180)/360)),b=e-y;if(r.getClosest(o,(function(t){var e=t.lonlat;if(e[0]===s)return 1/0;if(v&&-1===p.indexOf(t.i+1))return 1/0;var r=i.modHalf(e[0],360),a=e[1],o=d.project([r,a]),l=o.x-f.c2p([b,a]),c=o.y-h.c2p([r,n]),u=Math.max(3,t.mrc||0);return Math.max(Math.sqrt(l*l+c*c)-u,1-3/u)}),t),!1!==t.index){var x=o[t.index],w=x.lonlat,_=[i.modHalf(w[0],360)+y,w[1]],k=f.c2p(_),T=h.c2p(_),M=x.mrc||1;t.x0=k-M,t.x1=k+M,t.y0=T-M,t.y1=T+M;var A={};A[u.subplot]={_subplot:d};var S=u._module.formatLabels(x,u,A);return t.lonLabel=S.lonLabel,t.latLabel=S.latLabel,t.color=a(u,x),t.extraText=c(u,x,o[0].t.labels),t.hovertemplate=u.hovertemplate,[t]}},getExtraText:c}},20467:function(t,e,n){"use strict";t.exports={attributes:n(99181),supplyDefaults:n(76645),colorbar:n(4898),formatLabels:n(15636),calc:n(84622),plot:n(86951),hoverPoints:n(28178).hoverPoints,eventData:n(53353),selectPoints:n(86387),styleOnSelect:function(t,e){e&&e[0].trace._glTrace.update(e)},moduleType:"trace",name:"scattermapbox",basePlotModule:n(50101),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}},86951:function(t,e,n){"use strict";var r=n(71828),i=n(15790),a=n(77734).traceLayerPrefix,o={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function s(t,e,n,r){this.type="scattermapbox",this.subplot=t,this.uid=e,this.clusterEnabled=n,this.isHidden=r,this.sourceIds={fill:"source-"+e+"-fill",line:"source-"+e+"-line",circle:"source-"+e+"-circle",symbol:"source-"+e+"-symbol",cluster:"source-"+e+"-circle",clusterCount:"source-"+e+"-circle"},this.layerIds={fill:a+e+"-fill",line:a+e+"-line",circle:a+e+"-circle",symbol:a+e+"-symbol",cluster:a+e+"-cluster",clusterCount:a+e+"-cluster-count"},this.below=null}var l=s.prototype;l.addSource=function(t,e,n){var i={type:"geojson",data:e.geojson};n&&n.enabled&&r.extendFlat(i,{cluster:!0,clusterMaxZoom:n.maxzoom}),this.subplot.map.addSource(this.sourceIds[t],i)},l.setSourceData=function(t,e){this.subplot.map.getSource(this.sourceIds[t]).setData(e.geojson)},l.addLayer=function(t,e,n){var r={type:e.type,id:this.layerIds[t],source:this.sourceIds[t],layout:e.layout,paint:e.paint};e.filter&&(r.filter=e.filter),this.subplot.addLayer(r,n)},l.update=function(t){var e=t[0].trace,n=this.subplot,r=n.map,a=i(n.gd,t),s=n.belowLookup["trace-"+this.uid],l=!(!e.cluster||!e.cluster.enabled),c=!!this.clusterEnabled,u=this;function f(t){c?function(t){for(var e=o.cluster,n=e.length-1;n>=0;n--){var i=e[n];r.removeLayer(u.layerIds[i])}t||r.removeSource(u.sourceIds.circle)}(t):function(t){for(var e=o.nonCluster,n=e.length-1;n>=0;n--){var i=e[n];r.removeLayer(u.layerIds[i]),t||r.removeSource(u.sourceIds[i])}}(t)}function h(t){l?function(t){t||u.addSource("circle",a.circle,e.cluster);for(var n=o.cluster,r=0;r=0;n--){var r=e[n];t.removeLayer(this.layerIds[r]),t.removeSource(this.sourceIds[r])}},t.exports=function(t,e){var n,r,a,l=e[0].trace,c=l.cluster&&l.cluster.enabled,u=!0!==l.visible,f=new s(t,l.uid,c,u),h=i(t.gd,e),d=f.below=t.belowLookup["trace-"+l.uid];if(c)for(f.addSource("circle",h.circle,l.cluster),n=0;n")}}t.exports={hoverPoints:function(t,e,n,a){var o=r(t,e,n,a);if(o&&!1!==o[0].index){var s=o[0];if(void 0===s.index)return o;var l=t.subplot,c=s.cd[s.index],u=s.trace;if(l.isPtInside(c))return s.xLabelVal=void 0,s.yLabelVal=void 0,i(c,u,l,s),s.hovertemplate=u.hovertemplate,o}},makeHoverPointText:i}},91271:function(t,e,n){"use strict";t.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:n(23580),categories:["polar","symbols","showLegend","scatter-like"],attributes:n(81245),supplyDefaults:n(22184).supplyDefaults,colorbar:n(4898),formatLabels:n(98608),calc:n(26442),plot:n(45162),style:n(16296).style,styleOnSelect:n(16296).styleOnSelect,hoverPoints:n(59150).hoverPoints,selectPoints:n(98002),meta:{}}},45162:function(t,e,n){"use strict";var r=n(32663),i=n(50606).BADNUM;t.exports=function(t,e,n){for(var a=e.layers.frontplot.select("g.scatterlayer"),o=e.xaxis,s=e.yaxis,l={xaxis:o,yaxis:s,plot:e.framework,layerClipId:e._hasClipOnAxisFalse?e.clipIds.forTraces:null},c=e.radialAxis,u=e.angularAxis,f=0;f=c&&(y.marker.cluster=p.tree),y.marker&&(y.markerSel.positions=y.markerUnsel.positions=y.marker.positions=w),y.line&&w.length>1&&l.extendFlat(y.line,s.linePositions(t,d,w)),y.text&&(l.extendFlat(y.text,{positions:w},s.textPosition(t,d,y.text,y.marker)),l.extendFlat(y.textSel,{positions:w},s.textPosition(t,d,y.text,y.markerSel)),l.extendFlat(y.textUnsel,{positions:w},s.textPosition(t,d,y.text,y.markerUnsel))),y.fill&&!h.fill2d&&(h.fill2d=!0),y.marker&&!h.scatter2d&&(h.scatter2d=!0),y.line&&!h.line2d&&(h.line2d=!0),y.text&&!h.glText&&(h.glText=!0),h.lineOptions.push(y.line),h.fillOptions.push(y.fill),h.markerOptions.push(y.marker),h.markerSelectedOptions.push(y.markerSel),h.markerUnselectedOptions.push(y.markerUnsel),h.textOptions.push(y.text),h.textSelectedOptions.push(y.textSel),h.textUnselectedOptions.push(y.textUnsel),h.selectBatch.push([]),h.unselectBatch.push([]),p.x=_,p.y=k,p.rawx=_,p.rawy=k,p.r=v,p.theta=m,p.positions=w,p._scene=h,p.index=h.count,h.count++}})),a(t,e,n)}},t.exports.reglPrecompiled={}},48300:function(t,e,n){"use strict";var r=n(5386).f,i=n(5386).s,a=n(1426).extendFlat,o=n(82196),s=n(9012),l=o.line;t.exports={mode:o.mode,real:{valType:"data_array",editType:"calc+clearAxisTypes"},imag:{valType:"data_array",editType:"calc+clearAxisTypes"},text:o.text,texttemplate:i({editType:"plot"},{keys:["real","imag","text"]}),hovertext:o.hovertext,line:{color:l.color,width:l.width,dash:l.dash,backoff:l.backoff,shape:a({},l.shape,{values:["linear","spline"]}),smoothing:l.smoothing,editType:"calc"},connectgaps:o.connectgaps,marker:o.marker,cliponaxis:a({},o.cliponaxis,{dflt:!1}),textposition:o.textposition,textfont:o.textfont,fill:a({},o.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:o.fillcolor,hoverinfo:a({},s.hoverinfo,{flags:["real","imag","text","name"]}),hoveron:o.hoveron,hovertemplate:r(),selected:o.selected,unselected:o.unselected}},30621:function(t,e,n){"use strict";var r=n(92770),i=n(50606).BADNUM,a=n(36922),o=n(75225),s=n(66279),l=n(47761).calcMarkerSize;t.exports=function(t,e){for(var n=t._fullLayout,c=e.subplot,u=n[c].realaxis,f=n[c].imaginaryaxis,h=u.makeCalcdata(e,"real"),d=f.makeCalcdata(e,"imag"),p=e._length,g=new Array(p),v=0;v")}}t.exports={hoverPoints:function(t,e,n,a){var o=r(t,e,n,a);if(o&&!1!==o[0].index){var s=o[0];if(void 0===s.index)return o;var l=t.subplot,c=s.cd[s.index],u=s.trace;if(l.isPtInside(c))return s.xLabelVal=void 0,s.yLabelVal=void 0,i(c,u,l,s),s.hovertemplate=u.hovertemplate,o}},makeHoverPointText:i}},85956:function(t,e,n){"use strict";t.exports={moduleType:"trace",name:"scattersmith",basePlotModule:n(7504),categories:["smith","symbols","showLegend","scatter-like"],attributes:n(48300),supplyDefaults:n(65269),colorbar:n(4898),formatLabels:n(62047),calc:n(30621),plot:n(12480),style:n(16296).style,styleOnSelect:n(16296).styleOnSelect,hoverPoints:n(11350).hoverPoints,selectPoints:n(98002),meta:{}}},12480:function(t,e,n){"use strict";var r=n(32663),i=n(50606).BADNUM,a=n(23893).smith;t.exports=function(t,e,n){for(var o=e.layers.frontplot.select("g.scatterlayer"),s=e.xaxis,l=e.yaxis,c={xaxis:s,yaxis:l,plot:e.framework,layerClipId:e._hasClipOnAxisFalse?e.clipIds.forTraces:null},u=0;u"),o.hovertemplate=h.hovertemplate,a}function b(t,e){m.push(t._hovertitle+": "+e)}}},52979:function(t,e,n){"use strict";t.exports={attributes:n(50413),supplyDefaults:n(46008),colorbar:n(4898),formatLabels:n(93645),calc:n(54337),plot:n(7507),style:n(16296).style,styleOnSelect:n(16296).styleOnSelect,hoverPoints:n(47250),selectPoints:n(98002),eventData:n(4524),moduleType:"trace",name:"scatterternary",basePlotModule:n(61639),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}},7507:function(t,e,n){"use strict";var r=n(32663);t.exports=function(t,e,n){var i=e.plotContainer;i.select(".scatterlayer").selectAll("*").remove();for(var a=e.xaxis,o=e.yaxis,s={xaxis:a,yaxis:o,plot:i,layerClipId:e._hasClipOnAxisFalse?e.clipIdRelative:null},l=e.layers.frontplot.select("g.scatterlayer"),c=0;ch?x.sizeAvg||Math.max(x.size,3):a(e,b),d=0;da&&l||i-1,L=!0;if(o(b)||d.selectedpoints||P){var O=d._length;if(d.selectedpoints){g.selectBatch=d.selectedpoints;var I=d.selectedpoints,D={};for(l=0;l1&&(u=g[y-1],h=v[y-1],p=m[y-1]),e=0;eu?"-":"+")+"x")).replace("y",(f>h?"-":"+")+"y")).replace("z",(d>p?"-":"+")+"z");var C=function(){y=0,A=[],S=[],E=[]};(!y||y2?t.slice(1,e-1):2===e?[(t[0]+t[1])/2]:t}function d(t){var e=t.length;return 1===e?[.5,.5]:[t[1]-t[0],t[e-1]-t[e-2]]}function p(t,e){var n=t.fullSceneLayout,i=t.dataScale,u=e._len,f={};function p(t,e){var r=n[e],o=i[c[e]];return a.simpleMap(t,(function(t){return r.d2l(t)*o}))}if(f.vectors=l(p(e._u,"xaxis"),p(e._v,"yaxis"),p(e._w,"zaxis"),u),!u)return{positions:[],cells:[]};var g=p(e._Xs,"xaxis"),v=p(e._Ys,"yaxis"),m=p(e._Zs,"zaxis");if(f.meshgrid=[g,v,m],f.gridFill=e._gridFill,e._slen)f.startingPositions=l(p(e._startsX,"xaxis"),p(e._startsY,"yaxis"),p(e._startsZ,"zaxis"));else{for(var y=v[0],b=h(g),x=h(m),w=new Array(b.length*x.length),_=0,k=0;k=0};y?(n=Math.min(m.length,x.length),l=function(t){return A(m[t])&&S(t)},f=function(t){return String(m[t])}):(n=Math.min(b.length,x.length),l=function(t){return A(b[t])&&S(t)},f=function(t){return String(b[t])}),_&&(n=Math.min(n,w.length));for(var E=0;E1){for(var O=a.randstr(),I=0;I"),name:M||D("name")?y.name:void 0,color:T("hoverlabel.bgcolor")||b.color,borderColor:T("hoverlabel.bordercolor"),fontFamily:T("hoverlabel.font.family"),fontSize:T("hoverlabel.font.size"),fontColor:T("hoverlabel.font.color"),nameLength:T("hoverlabel.namelength"),textAlign:T("hoverlabel.align"),hovertemplate:M,hovertemplateLabels:L,eventData:l};v&&(N.x0=E-i.rInscribed*i.rpx1,N.x1=E+i.rInscribed*i.rpx1,N.idealAlign=i.pxmid[0]<0?"left":"right"),m&&(N.x=E,N.idealAlign=E<0?"left":"right");var j=[];o.loneHover(N,{container:a._hoverlayer.node(),outerContainer:a._paper.node(),gd:n,inOut_bbox:j}),l[0].bbox=j[0],p._hasHoverLabel=!0}if(m){var F=t.select("path.surface");h.styleOne(F,i,y,{hovered:!0})}p._hasHoverEvent=!0,n.emit("plotly_hover",{points:l||[f(i,y,h.eventDataKeys)],event:r.event})}})),t.on("mouseout",(function(e){var i=n._fullLayout,a=n._fullData[p.index],s=r.select(this).datum();if(p._hasHoverEvent&&(e.originalEvent=r.event,n.emit("plotly_unhover",{points:[f(s,a,h.eventDataKeys)],event:r.event}),p._hasHoverEvent=!1),p._hasHoverLabel&&(o.loneUnhover(i._hoverlayer.node()),p._hasHoverLabel=!1),m){var l=t.select("path.surface");h.styleOne(l,s,a,{hovered:!1})}})),t.on("click",(function(t){var e=n._fullLayout,a=n._fullData[p.index],s=v&&(c.isHierarchyRoot(t)||c.isLeaf(t)),u=c.getPtId(t),d=c.isEntry(t)?c.findEntryWithChild(g,u):c.findEntryWithLevel(g,u),m=c.getPtId(d),y={points:[f(t,a,h.eventDataKeys)],event:r.event};s||(y.nextLevel=m);var b=l.triggerHandler(n,"plotly_"+p.type+"click",y);if(!1!==b&&e.hovermode&&(n._hoverdata=[f(t,a,h.eventDataKeys)],o.click(n,r.event)),!s&&!1!==b&&!n._dragging&&!n._transitioning){i.call("_storeDirectGUIEdit",a,e._tracePreGUI[a.uid],{level:a.level});var x={data:[{level:m}],traces:[p.index]},w={frame:{redraw:!1,duration:h.transitionTime},transition:{duration:h.transitionTime,easing:h.transitionEasing},mode:"immediate",fromcurrent:!0};o.loneUnhover(e._hoverlayer.node()),i.call("animate",n,x,w)}}))}},2791:function(t,e,n){"use strict";var r=n(71828),i=n(7901),a=n(6964),o=n(53581);function s(t){return t.data.data.pid}e.findEntryWithLevel=function(t,n){var r;return n&&t.eachAfter((function(t){if(e.getPtId(t)===n)return r=t.copy()})),r||t},e.findEntryWithChild=function(t,n){var r;return t.eachAfter((function(t){for(var i=t.children||[],a=0;a0)},e.getMaxDepth=function(t){return t.maxdepth>=0?t.maxdepth:1/0},e.isHeader=function(t,n){return!(e.isLeaf(t)||t.depth===n._maxDepth-1)},e.getParent=function(t,n){return e.findEntryWithLevel(t,s(n))},e.listPath=function(t,n){var r=t.parent;if(!r)return[];var i=n?[r.data[n]]:[r];return e.listPath(r,n).concat(i)},e.getPath=function(t){return e.listPath(t,"label").join("/")+"/"},e.formatValue=o.formatPieValue,e.formatPercent=function(t,e){var n=r.formatPercent(t,0);return"0%"===n&&(n=o.formatPiePercent(t,e)),n}},87619:function(t,e,n){"use strict";t.exports={moduleType:"trace",name:"sunburst",basePlotModule:n(66888),categories:[],animatable:!0,attributes:n(57564),layoutAttributes:n(2654),supplyDefaults:n(17094),supplyLayoutDefaults:n(57034),calc:n(52147).calc,crossTraceCalc:n(52147).crossTraceCalc,plot:n(24714).plot,style:n(29969).style,colorbar:n(4898),meta:{}}},2654:function(t){"use strict";t.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}},57034:function(t,e,n){"use strict";var r=n(71828),i=n(2654);t.exports=function(t,e){function n(n,a){return r.coerce(t,e,i,n,a)}n("sunburstcolorway",e.colorway),n("extendsunburstcolors")}},24714:function(t,e,n){"use strict";var r=n(39898),i=n(674),a=n(81684).sX,o=n(91424),s=n(71828),l=n(63893),c=n(72597),u=c.recordMinTextSize,f=c.clearMinTextSize,h=n(14575),d=n(53581).getRotationAngle,p=h.computeTransform,g=h.transformInsideText,v=n(29969).styleOne,m=n(16688).resizeText,y=n(83523),b=n(7055),x=n(2791);function w(t,n,c,f){var h=t._context.staticPlot,m=t._fullLayout,w=!m.uniformtext.mode&&x.hasTransition(f),k=r.select(c).selectAll("g.slice"),T=n[0],M=T.trace,A=T.hierarchy,S=x.findEntryWithLevel(A,M.level),E=x.getMaxDepth(M),C=m._size,P=M.domain,L=C.w*(P.x[1]-P.x[0]),O=C.h*(P.y[1]-P.y[0]),I=.5*Math.min(L,O),D=T.cx=C.l+C.w*(P.x[1]+P.x[0])/2,R=T.cy=C.t+C.h*(1-P.y[0])-O/2;if(!S)return k.remove();var z=null,N={};w&&k.each((function(t){N[x.getPtId(t)]={rpx0:t.rpx0,rpx1:t.rpx1,x0:t.x0,x1:t.x1,transform:t.transform},!z&&x.isEntry(t)&&(z=t)}));var j=function(t){return i.partition().size([2*Math.PI,t.height+1])(t)}(S).descendants(),F=S.height+1,B=0,U=E;T.hasMultipleRoots&&x.isHierarchyRoot(S)&&(j=j.slice(1),F-=1,B=1,U+=1),j=j.filter((function(t){return t.y1<=U}));var H=d(M.rotation);H&&j.forEach((function(t){t.x0+=H,t.x1+=H}));var V=Math.min(F,E),q=function(t){return(t-B)/V*I},G=function(t,e){return[t*Math.cos(e),-t*Math.sin(e)]},W=function(t){return s.pathAnnulus(t.rpx0,t.rpx1,t.x0,t.x1,D,R)},Y=function(t){return D+_(t)[0]*(t.transform.rCenter||0)+(t.transform.x||0)},$=function(t){return R+_(t)[1]*(t.transform.rCenter||0)+(t.transform.y||0)};(k=k.data(j,x.getPtId)).enter().append("g").classed("slice",!0),w?k.exit().transition().each((function(){var t=r.select(this);t.select("path.surface").transition().attrTween("d",(function(t){var e=function(t){var e,n=x.getPtId(t),r=N[n],i=N[x.getPtId(S)];if(i){var o=(t.x1>i.x1?2*Math.PI:0)+H;e=t.rpx1X?2*Math.PI:0)+H;e={x0:i,x1:i}}else e={rpx0:I,rpx1:I},s.extendFlat(e,J(t));else e={rpx0:0,rpx1:0};else e={x0:H,x1:H};return a(e,r)}(t);return function(t){return W(e(t))}})):f.attr("d",W),c.call(y,S,t,n,{eventDataKeys:b.eventDataKeys,transitionTime:b.CLICK_TRANSITION_TIME,transitionEasing:b.CLICK_TRANSITION_EASING}).call(x.setSliceCursor,t,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:t._transitioning}),f.call(v,i,M);var d=s.ensureSingle(c,"g","slicetext"),_=s.ensureSingle(d,"text","",(function(t){t.attr("data-notex",1)})),k=s.ensureUniformFontSize(t,x.determineTextFont(M,i,m.font));_.text(e.formatSliceLabel(i,S,M,n,m)).classed("slicetext",!0).attr("text-anchor","middle").call(o.font,k).call(l.convertToTspans,t);var A=o.bBox(_.node());i.transform=g(A,i,T),i.transform.targetX=Y(i),i.transform.targetY=$(i);var E=function(t,e){var n=t.transform;return p(n,e),n.fontSize=k.size,u(M.type,n,m),s.getTextTransform(n)};w?_.transition().attrTween("transform",(function(t){var e=function(t){var e,n=N[x.getPtId(t)],r=t.transform;if(n)e=n;else if(e={rpx1:t.rpx1,transform:{textPosAngle:r.textPosAngle,scale:0,rotate:r.rotate,rCenter:r.rCenter,x:r.x,y:r.y}},z)if(t.parent)if(X){var i=t.x1>X?2*Math.PI:0;e.x0=e.x1=i}else s.extendFlat(e,J(t));else e.x0=e.x1=H;else e.x0=e.x1=H;var o=a(e.transform.textPosAngle,t.transform.textPosAngle),l=a(e.rpx1,t.rpx1),c=a(e.x0,t.x0),f=a(e.x1,t.x1),h=a(e.transform.scale,r.scale),d=a(e.transform.rotate,r.rotate),p=0===r.rCenter?3:0===e.transform.rCenter?1/3:1,g=a(e.transform.rCenter,r.rCenter),v=function(t){return g(Math.pow(t,p))};return function(t){var e=l(t),n=c(t),i=f(t),a=v(t),s={pxmid:G(e,(n+i)/2),rpx1:e,transform:{textPosAngle:o(t),rCenter:a,x:r.x,y:r.y}};return u(M.type,r,m),{transform:{targetX:Y(s),targetY:$(s),scale:h(t),rotate:d(t),rCenter:a}}}}(t);return function(t){return E(e(t),A)}})):_.attr("transform",E(i,A))}))}function _(t){return e=t.rpx1,n=t.transform.textPosAngle,[e*Math.sin(n),-e*Math.cos(n)];var e,n}e.plot=function(t,e,n,i){var a,o,s=t._fullLayout,l=s._sunburstlayer,c=!n,u=!s.uniformtext.mode&&x.hasTransition(n);f("sunburst",s),(a=l.selectAll("g.trace.sunburst").data(e,(function(t){return t[0].trace.uid}))).enter().append("g").classed("trace",!0).classed("sunburst",!0).attr("stroke-linejoin","round"),a.order(),u?(i&&(o=i()),r.transition().duration(n.duration).ease(n.easing).each("end",(function(){o&&o()})).each("interrupt",(function(){o&&o()})).each((function(){l.selectAll("g.trace").each((function(e){w(t,e,this,n)}))}))):(a.each((function(e){w(t,e,this,n)})),s.uniformtext.mode&&m(t,s._sunburstlayer.selectAll(".trace"),"sunburst")),c&&a.exit().remove()},e.formatSliceLabel=function(t,e,n,r,i){var a=n.texttemplate,o=n.textinfo;if(!a&&(!o||"none"===o))return"";var l=i.separators,c=r[0],u=t.data.data,f=c.hierarchy,h=x.isHierarchyRoot(t),d=x.getParent(f,t),p=x.getValue(t);if(!a){var g,v=o.split("+"),m=function(t){return-1!==v.indexOf(t)},y=[];if(m("label")&&u.label&&y.push(u.label),u.hasOwnProperty("v")&&m("value")&&y.push(x.formatValue(u.v,l)),!h){m("current path")&&y.push(x.getPath(t.data));var b=0;m("percent parent")&&b++,m("percent entry")&&b++,m("percent root")&&b++;var w=b>1;if(b){var _,k=function(t){g=x.formatPercent(_,l),w&&(g+=" of "+t),y.push(g)};m("percent parent")&&!h&&(_=p/x.getValue(d),k("parent")),m("percent entry")&&(_=p/x.getValue(e),k("entry")),m("percent root")&&(_=p/x.getValue(f),k("root"))}}return m("text")&&(g=s.castOption(n,u.i,"text"),s.isValidTextValue(g)&&y.push(g)),y.join("
")}var T=s.castOption(n,u.i,"texttemplate");if(!T)return"";var M={};u.label&&(M.label=u.label),u.hasOwnProperty("v")&&(M.value=u.v,M.valueLabel=x.formatValue(u.v,l)),M.currentPath=x.getPath(t.data),h||(M.percentParent=p/x.getValue(d),M.percentParentLabel=x.formatPercent(M.percentParent,l),M.parent=x.getPtLabel(d)),M.percentEntry=p/x.getValue(e),M.percentEntryLabel=x.formatPercent(M.percentEntry,l),M.entry=x.getPtLabel(e),M.percentRoot=p/x.getValue(f),M.percentRootLabel=x.formatPercent(M.percentRoot,l),M.root=x.getPtLabel(f),u.hasOwnProperty("color")&&(M.color=u.color);var A=s.castOption(n,u.i,"text");return(s.isValidTextValue(A)||""===A)&&(M.text=A),M.customdata=s.castOption(n,u.i,"customdata"),s.texttemplateString(T,M,i._d3locale,M,n._meta||{})}},29969:function(t,e,n){"use strict";var r=n(39898),i=n(7901),a=n(71828),o=n(72597).resizeText;function s(t,e,n){var r=e.data.data,o=!e.children,s=r.i,l=a.castOption(n,s,"marker.line.color")||i.defaultLine,c=a.castOption(n,s,"marker.line.width")||0;t.style("stroke-width",c).call(i.fill,r.color).call(i.stroke,l).style("opacity",o?n.leaf.opacity:null)}t.exports={style:function(t){var e=t._fullLayout._sunburstlayer.selectAll(".trace");o(t,e,"sunburst"),e.each((function(t){var e=r.select(this),n=t[0].trace;e.style("opacity",n.opacity),e.selectAll("path.surface").each((function(t){r.select(this).call(s,t,n)}))}))},styleOne:s}},54532:function(t,e,n){"use strict";var r=n(7901),i=n(50693),a=n(12663).axisHoverFormat,o=n(5386).f,s=n(9012),l=n(1426).extendFlat,c=n(30962).overrideAll;function u(t){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:r.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:r.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var f=t.exports=c(l({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:o(),xhoverformat:a("x"),yhoverformat:a("y"),zhoverformat:a("z"),connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},surfacecolor:{valType:"data_array"}},i("",{colorAttr:"z or surfacecolor",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:"calc"}),{contours:{x:u(),y:u(),z:u()},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:l({},i.zauto,{}),zmin:l({},i.zmin,{}),zmax:l({},i.zmax,{})},hoverinfo:l({},s.hoverinfo),showlegend:l({},s.showlegend,{dflt:!1})}),"calc","nested");f.x.editType=f.y.editType=f.z.editType="calc+clearAxisTypes",f.transforms=void 0},18396:function(t,e,n){"use strict";var r=n(78803);t.exports=function(t,e){e.surfacecolor?r(t,e,{vals:e.surfacecolor,containerStr:"",cLetter:"c"}):r(t,e,{vals:e.z,containerStr:"",cLetter:"c"})}},43768:function(t,e,n){"use strict";var r=n(9330).gl_surface3d,i=n(9330).ndarray,a=n(9330).ndarray_linear_interpolate.d2,o=n(824),s=n(43907),l=n(71828).isArrayOrTypedArray,c=n(81697).parseColorScale,u=n(78614),f=n(21081).extractOpts;function h(t,e,n){this.scene=t,this.uid=n,this.surface=e,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 d=h.prototype;d.getXat=function(t,e,n,r){var i=l(this.data.x)?l(this.data.x[0])?this.data.x[e][t]:this.data.x[t]:t;return void 0===n?i:r.d2l(i,0,n)},d.getYat=function(t,e,n,r){var i=l(this.data.y)?l(this.data.y[0])?this.data.y[e][t]:this.data.y[e]:e;return void 0===n?i:r.d2l(i,0,n)},d.getZat=function(t,e,n,r){var i=this.data.z[e][t];return null===i&&this.data.connectgaps&&this.data._interpolatedZ&&(i=this.data._interpolatedZ[e][t]),void 0===n?i:r.d2l(i,0,n)},d.handlePick=function(t){if(t.object===this.surface){var e=(t.data.index[0]-1)/this.dataScaleX-1,n=(t.data.index[1]-1)/this.dataScaleY-1,r=Math.max(Math.min(Math.round(e),this.data.z[0].length-1),0),i=Math.max(Math.min(Math.round(n),this.data._ylength-1),0);t.index=[r,i],t.traceCoordinate=[this.getXat(r,i),this.getYat(r,i),this.getZat(r,i)],t.dataCoordinate=[this.getXat(r,i,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(r,i,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(r,i,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var a=0;a<3;a++){var o=t.dataCoordinate[a];null!==o&&void 0!==o&&(t.dataCoordinate[a]*=this.scene.dataScale[a])}var s=this.data.hovertext||this.data.text;return Array.isArray(s)&&s[i]&&void 0!==s[i][r]?t.textLabel=s[i][r]:t.textLabel=s||"",t.data.dataCoordinate=t.dataCoordinate.slice(),this.surface.highlight(t.data),this.scene.glplot.spikes.position=t.dataCoordinate,!0}};var p=[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 g(t,e){if(t0){n=p[r];break}return n}function y(t,e){if(!(t<1||e<1)){for(var n=v(t),r=v(e),i=1,a=0;aw;)n--,n/=m(n),++n1?r:1},d.refineCoords=function(t){for(var e=this.dataScaleX,n=this.dataScaleY,r=t[0].shape[0],a=t[0].shape[1],o=0|Math.floor(t[0].shape[0]*e+1),s=0|Math.floor(t[0].shape[1]*n+1),l=1+r+1,c=1+a+1,u=i(new Float32Array(l*c),[l,c]),f=[1/e,0,0,0,1/n,0,0,0,1],h=0;h0&&null!==this.contourStart[t]&&null!==this.contourEnd[t]&&this.contourEnd[t]>this.contourStart[t]))for(i[t]=!0,e=this.contourStart[t];ea&&(this.minValues[e]=a),this.maxValues[e]",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(t,e,n){"use strict";var r=n(49850),i=n(1426).extendFlat,a=n(92770);function o(t){if(Array.isArray(t)){for(var e=0,n=0;n=e||c===t.length-1)&&(r[i]=o,o.key=l++,o.firstRowIndex=s,o.lastRowIndex=c,o={firstRowIndex:null,lastRowIndex:null,rows:[]},i+=a,s=c+1,a=0);return r}t.exports=function(t,e){var n=l(e.cells.values),d=function(t){return t.slice(e.header.values.length,t.length)},p=l(e.header.values);p.length&&!p[0].length&&(p[0]=[""],p=l(p));var g=p.concat(d(n).map((function(){return c((p[0]||[""]).length)}))),v=e.domain,m=Math.floor(t._fullLayout._size.w*(v.x[1]-v.x[0])),y=Math.floor(t._fullLayout._size.h*(v.y[1]-v.y[0])),b=e.header.values.length?g[0].map((function(){return e.header.height})):[r.emptyHeaderHeight],x=n.length?n[0].map((function(){return e.cells.height})):[],w=b.reduce(s,0),_=h(x,y-w+r.uplift),k=f(h(b,w),[]),T=f(_,k),M={},A=e._fullInput.columnorder.concat(d(n.map((function(t,e){return e})))),S=g.map((function(t,n){var r=Array.isArray(e.columnwidth)?e.columnwidth[Math.min(n,e.columnwidth.length-1)]:e.columnwidth;return a(r)?Number(r):1})),E=S.reduce(s,0);S=S.map((function(t){return t/E*m}));var C=Math.max(o(e.header.line.width),o(e.cells.line.width)),P={key:e.uid+t._context.staticPlot,translateX:v.x[0]*t._fullLayout._size.w,translateY:t._fullLayout._size.h*(1-v.y[1]),size:t._fullLayout._size,width:m,maxLineWidth:C,height:y,columnOrder:A,groupHeight:y,rowBlocks:T,headerRowBlocks:k,scrollY:0,cells:i({},e.cells,{values:n}),headerCells:i({},e.header,{values:g}),gdColumns:g.map((function(t){return t[0]})),gdColumnsOriginalOrder:g.map((function(t){return t[0]})),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:g.map((function(t,e){var n=M[t];return M[t]=(n||0)+1,{key:t+"__"+M[t],label:t,specIndex:e,xIndex:A[e],xScale:u,x:void 0,calcdata:void 0,columnWidth:S[e]}}))};return P.columns.forEach((function(t){t.calcdata=P,t.x=u(t)})),P}},56269:function(t,e,n){"use strict";var r=n(1426).extendFlat;e.splitToPanels=function(t){var e=[0,0],n=r({},t,{key:"header",type:"header",page:0,prevPages:e,currentRepaint:[null,null],dragHandle:!0,values:t.calcdata.headerCells.values[t.specIndex],rowBlocks:t.calcdata.headerRowBlocks,calcdata:r({},t.calcdata,{cells:t.calcdata.headerCells})});return[r({},t,{key:"cells1",type:"cells",page:0,prevPages:e,currentRepaint:[null,null],dragHandle:!1,values:t.calcdata.cells.values[t.specIndex],rowBlocks:t.calcdata.rowBlocks}),r({},t,{key:"cells2",type:"cells",page:1,prevPages:e,currentRepaint:[null,null],dragHandle:!1,values:t.calcdata.cells.values[t.specIndex],rowBlocks:t.calcdata.rowBlocks}),n]},e.splitToCells=function(t){var e=function(t){var e=t.rowBlocks[t.page],n=e?e.rows[0].rowIndex:0,r=e?n+e.rows.length:0;return[n,r]}(t);return(t.values||[]).slice(e[0],e[1]).map((function(n,r){return{keyWithinBlock:r+("string"===typeof n&&n.match(/[<$&> ]/)?"_keybuster_"+Math.random():""),key:e[0]+r,column:t,calcdata:t.calcdata,page:t.page,rowBlocks:t.rowBlocks,value:n}}))}},39754:function(t,e,n){"use strict";var r=n(71828),i=n(44464),a=n(27670).c;t.exports=function(t,e,n,o){function s(n,a){return r.coerce(t,e,i,n,a)}a(e,o,s),s("columnwidth"),s("header.values"),s("header.format"),s("header.align"),s("header.prefix"),s("header.suffix"),s("header.height"),s("header.line.width"),s("header.line.color"),s("header.fill.color"),r.coerceFont(s,"header.font",r.extendFlat({},o.font)),function(t,e){for(var n=t.columnorder||[],r=t.header.values.length,i=n.slice(0,r),a=i.slice().sort((function(t,e){return t-e})),o=i.map((function(t){return a.indexOf(t)})),s=o.length;s/i),l=!o||s;t.mayHaveMarkup=o&&i.match(/[<&>]/);var c,u="string"===typeof(c=i)&&c.match(r.latexCheck);t.latex=u;var f,h,d=u?"":k(t.calcdata.cells.prefix,e,n)||"",p=u?"":k(t.calcdata.cells.suffix,e,n)||"",g=u?null:k(t.calcdata.cells.format,e,n)||null,v=d+(g?a(g)(t.value):t.value)+p;if(t.wrappingNeeded=!t.wrapped&&!l&&!u&&(f=_(v)),t.cellHeightMayIncrease=s||u||t.mayHaveMarkup||(void 0===f?_(v):f),t.needsConvertToTspans=t.mayHaveMarkup||t.wrappingNeeded||t.latex,t.wrappingNeeded){var m=(" "===r.wrapSplitCharacter?v.replace(/i&&r.push(a),i+=l}return r}(i,l,s);1===c.length&&(c[0]===i.length-1?c.unshift(c[0]-1):c.push(c[0]+1)),c[0]%2&&c.reverse(),e.each((function(t,e){t.page=c[e],t.scrollY=l})),e.attr("transform",(function(t){var e=R(t.rowBlocks,t.page)-t.scrollY;return u(0,e)})),t&&(P(t,n,e,c,r.prevPages,r,0),P(t,n,e,c,r.prevPages,r,1),b(n,t))}}function C(t,e,n,a){return function(o){var s=o.calcdata?o.calcdata:o,l=e.filter((function(t){return s.key===t.key})),c=n||s.scrollbarState.dragMultiplier,u=s.scrollY;s.scrollY=void 0===a?s.scrollY+c*i.event.dy:a;var f=l.selectAll("."+r.cn.yColumn).selectAll("."+r.cn.columnBlock).filter(M);return E(t,f,l),s.scrollY===u}}function P(t,e,n,r,i,a,o){r[o]!==i[o]&&(clearTimeout(a.currentRepaint[o]),a.currentRepaint[o]=setTimeout((function(){var a=n.filter((function(t,e){return e===o&&r[e]!==i[e]}));x(t,e,a,n),i[o]=r[o]})))}function L(t,e,n,a){return function(){var o=i.select(e.parentNode);o.each((function(t){var e=t.fragments;o.selectAll("tspan.line").each((function(t,n){e[n].width=this.getComputedTextLength()}));var n,i,a=e[e.length-1].width,s=e.slice(0,-1),l=[],c=0,u=t.column.columnWidth-2*r.cellPad;for(t.value="";s.length;)c+(i=(n=s.shift()).width+a)>u&&(t.value+=l.join(r.wrapSpacer)+r.lineBreaker,l=[],c=0),l.push(n.text),c+=i;c&&(t.value+=l.join(r.wrapSpacer)),t.wrapped=!0})),o.selectAll("tspan.line").remove(),w(o.select("."+r.cn.cellText),n,t,a),i.select(e.parentNode.parentNode).call(D)}}function O(t,e,n,a,o){return function(){if(!o.settledY){var s=i.select(e.parentNode),l=j(o),c=o.key-l.firstRowIndex,f=l.rows[c].rowHeight,h=o.cellHeightMayIncrease?e.parentNode.getBoundingClientRect().height+2*r.cellPad:f,d=Math.max(h,f);d-l.rows[c].rowHeight&&(l.rows[c].rowHeight=d,t.selectAll("."+r.cn.columnCell).call(D),E(null,t.filter(M),0),b(n,a,!0)),s.attr("transform",(function(){var t=this,e=t.parentNode.getBoundingClientRect(),n=i.select(t.parentNode).select("."+r.cn.cellRect).node().getBoundingClientRect(),a=t.transform.baseVal.consolidate(),s=n.top-e.top+(a?a.matrix.f:r.cellPad);return u(I(o,i.select(t.parentNode).select("."+r.cn.cellTextHolder).node().getBoundingClientRect().width),s)})),o.settledY=!0}}}function I(t,e){switch(t.align){case"left":default:return r.cellPad;case"right":return t.column.columnWidth-(e||0)-r.cellPad;case"center":return(t.column.columnWidth-(e||0))/2}}function D(t){t.attr("transform",(function(t){var e=t.rowBlocks[0].auxiliaryBlocks.reduce((function(t,e){return t+z(e,1/0)}),0),n=z(j(t),t.key);return u(0,n+e)})).selectAll("."+r.cn.cellRect).attr("height",(function(t){return(e=j(t),n=t.key,e.rows[n-e.firstRowIndex]).rowHeight;var e,n}))}function R(t,e){for(var n=0,r=e-1;r>=0;r--)n+=N(t[r]);return n}function z(t,e){for(var n=0,r=0;r","<","|","/","\\"],dflt:">",editType:"plot"},thickness:{valType:"number",min:12,editType:"plot"},textfont:u({},s.textfont,{}),editType:"calc"},text:s.text,textinfo:l.textinfo,texttemplate:i({editType:"plot"},{keys:c.eventDataKeys.concat(["label","value"])}),hovertext:s.hovertext,hoverinfo:l.hoverinfo,hovertemplate:r({},{keys:c.eventDataKeys}),textfont:s.textfont,insidetextfont:s.insidetextfont,outsidetextfont:u({},s.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:s.sort,root:l.root,domain:o({name:"treemap",trace:!0,editType:"calc"})}},78018:function(t,e,n){"use strict";var r=n(74875);e.name="treemap",e.plot=function(t,n,i,a){r.plotBasePlot(e.name,t,n,i,a)},e.clean=function(t,n,i,a){r.cleanBasePlot(e.name,t,n,i,a)}},65039:function(t,e,n){"use strict";var r=n(52147);e.y=function(t,e){return r.calc(t,e)},e.T=function(t){return r._runCrossTraceCalc("treemap",t)}},43473:function(t){"use strict";t.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}},91174:function(t,e,n){"use strict";var r=n(71828),i=n(45802),a=n(7901),o=n(27670).c,s=n(90769).handleText,l=n(97313).TEXTPAD,c=n(21081),u=c.hasColorscale,f=c.handleDefaults;t.exports=function(t,e,n,c){function h(n,a){return r.coerce(t,e,i,n,a)}var d=h("labels"),p=h("parents");if(d&&d.length&&p&&p.length){var g=h("values");g&&g.length?h("branchvalues"):h("count"),h("level"),h("maxdepth"),"squarify"===h("tiling.packing")&&h("tiling.squarifyratio"),h("tiling.flip"),h("tiling.pad");var v=h("text");h("texttemplate"),e.texttemplate||h("textinfo",Array.isArray(v)?"text+label":"label"),h("hovertext"),h("hovertemplate");var m=h("pathbar.visible");s(t,e,c,h,"auto",{hasPathbar:m,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),h("textposition");var y=-1!==e.textposition.indexOf("bottom");h("marker.line.width")&&h("marker.line.color",c.paper_bgcolor);var b=h("marker.colors");(e._hasColorscale=u(t,"marker","colors")||(t.marker||{}).coloraxis)?f(t,e,c,h,{prefix:"marker.",cLetter:"c"}):h("marker.depthfade",!(b||[]).length);var x=2*e.textfont.size;h("marker.pad.t",y?x/4:x),h("marker.pad.l",x/4),h("marker.pad.r",x/4),h("marker.pad.b",y?x:x/4),h("marker.cornerradius"),e._hovered={marker:{line:{width:2,color:a.contrast(c.paper_bgcolor)}}},m&&(h("pathbar.thickness",e.pathbar.textfont.size+2*l),h("pathbar.side"),h("pathbar.edgeshape")),h("sort"),h("root.color"),o(e,c,h),e._length=null}else e.visible=!1}},80694:function(t,e,n){"use strict";var r=n(39898),i=n(2791),a=n(72597).clearMinTextSize,o=n(16688).resizeText,s=n(46650);t.exports=function(t,e,n,l,c){var u,f,h=c.type,d=c.drawDescendants,p=t._fullLayout,g=p["_"+h+"layer"],v=!n;a(h,p),(u=g.selectAll("g.trace."+h).data(e,(function(t){return t[0].trace.uid}))).enter().append("g").classed("trace",!0).classed(h,!0),u.order(),!p.uniformtext.mode&&i.hasTransition(n)?(l&&(f=l()),r.transition().duration(n.duration).ease(n.easing).each("end",(function(){f&&f()})).each("interrupt",(function(){f&&f()})).each((function(){g.selectAll("g.trace").each((function(e){s(t,e,this,n,d)}))}))):(u.each((function(e){s(t,e,this,n,d)})),p.uniformtext.mode&&o(t,g.selectAll(".trace"),h)),v&&u.exit().remove()}},66209:function(t,e,n){"use strict";var r=n(39898),i=n(71828),a=n(91424),o=n(63893),s=n(37210),l=n(96362).styleOne,c=n(43473),u=n(2791),f=n(83523),h=!0;t.exports=function(t,e,n,d,p){var g=p.barDifY,v=p.width,m=p.height,y=p.viewX,b=p.viewY,x=p.pathSlice,w=p.toMoveInsideSlice,_=p.strTransform,k=p.hasTransition,T=p.handleSlicesExit,M=p.makeUpdateSliceInterpolator,A=p.makeUpdateTextInterpolator,S={},E=t._context.staticPlot,C=t._fullLayout,P=e[0],L=P.trace,O=P.hierarchy,I=v/L._entryDepth,D=u.listPath(n.data,"id"),R=s(O.copy(),[v,m],{packing:"dice",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();(R=R.filter((function(t){var e=D.indexOf(t.data.id);return-1!==e&&(t.x0=I*e,t.x1=I*(e+1),t.y0=g,t.y1=g+m,t.onPathbar=!0,!0)}))).reverse(),(d=d.data(R,u.getPtId)).enter().append("g").classed("pathbar",!0),T(d,h,S,[v,m],x),d.order();var z=d;k&&(z=z.transition().each("end",(function(){var e=r.select(this);u.setSliceCursor(e,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})}))),z.each((function(s){s._x0=y(s.x0),s._x1=y(s.x1),s._y0=b(s.y0),s._y1=b(s.y1),s._hoverX=y(s.x1-Math.min(v,m)/2),s._hoverY=b(s.y1-m/2);var d=r.select(this),p=i.ensureSingle(d,"path","surface",(function(t){t.style("pointer-events",E?"none":"all")}));k?p.transition().attrTween("d",(function(t){var e=M(t,h,S,[v,m]);return function(t){return x(e(t))}})):p.attr("d",x),d.call(f,n,t,e,{styleOne:l,eventDataKeys:c.eventDataKeys,transitionTime:c.CLICK_TRANSITION_TIME,transitionEasing:c.CLICK_TRANSITION_EASING}).call(u.setSliceCursor,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:t._transitioning}),p.call(l,s,L,{hovered:!1}),s._text=(u.getPtLabel(s)||"").split("
").join(" ")||"";var g=i.ensureSingle(d,"g","slicetext"),T=i.ensureSingle(g,"text","",(function(t){t.attr("data-notex",1)})),P=i.ensureUniformFontSize(t,u.determineTextFont(L,s,C.font,{onPathbar:!0}));T.text(s._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(a.font,P).call(o.convertToTspans,t),s.textBB=a.bBox(T.node()),s.transform=w(s,{fontSize:P.size,onPathbar:!0}),s.transform.fontSize=P.size,k?T.transition().attrTween("transform",(function(t){var e=A(t,h,S,[v,m]);return function(t){return _(e(t))}})):T.attr("transform",_(s))}))}},52583:function(t,e,n){"use strict";var r=n(39898),i=n(71828),a=n(91424),o=n(63893),s=n(37210),l=n(96362).styleOne,c=n(43473),u=n(2791),f=n(83523),h=n(24714).formatSliceLabel,d=!1;t.exports=function(t,e,n,p,g){var v=g.width,m=g.height,y=g.viewX,b=g.viewY,x=g.pathSlice,w=g.toMoveInsideSlice,_=g.strTransform,k=g.hasTransition,T=g.handleSlicesExit,M=g.makeUpdateSliceInterpolator,A=g.makeUpdateTextInterpolator,S=g.prevEntry,E=t._context.staticPlot,C=t._fullLayout,P=e[0].trace,L=-1!==P.textposition.indexOf("left"),O=-1!==P.textposition.indexOf("right"),I=-1!==P.textposition.indexOf("bottom"),D=!I&&!P.marker.pad.t||I&&!P.marker.pad.b,R=s(n,[v,m],{packing:P.tiling.packing,squarifyratio:P.tiling.squarifyratio,flipX:P.tiling.flip.indexOf("x")>-1,flipY:P.tiling.flip.indexOf("y")>-1,pad:{inner:P.tiling.pad,top:P.marker.pad.t,left:P.marker.pad.l,right:P.marker.pad.r,bottom:P.marker.pad.b}}).descendants(),z=1/0,N=-1/0;R.forEach((function(t){var e=t.depth;e>=P._maxDepth?(t.x0=t.x1=(t.x0+t.x1)/2,t.y0=t.y1=(t.y0+t.y1)/2):(z=Math.min(z,e),N=Math.max(N,e))})),p=p.data(R,u.getPtId),P._maxVisibleLayers=isFinite(N)?N-z+1:0,p.enter().append("g").classed("slice",!0),T(p,d,{},[v,m],x),p.order();var j=null;if(k&&S){var F=u.getPtId(S);p.each((function(t){null===j&&u.getPtId(t)===F&&(j={x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1})}))}var B=function(){return j||{x0:0,x1:v,y0:0,y1:m}},U=p;return k&&(U=U.transition().each("end",(function(){var e=r.select(this);u.setSliceCursor(e,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})}))),U.each((function(s){var p=u.isHeader(s,P);s._x0=y(s.x0),s._x1=y(s.x1),s._y0=b(s.y0),s._y1=b(s.y1),s._hoverX=y(s.x1-P.marker.pad.r),s._hoverY=b(I?s.y1-P.marker.pad.b/2:s.y0+P.marker.pad.t/2);var g=r.select(this),T=i.ensureSingle(g,"path","surface",(function(t){t.style("pointer-events",E?"none":"all")}));k?T.transition().attrTween("d",(function(t){var e=M(t,d,B(),[v,m]);return function(t){return x(e(t))}})):T.attr("d",x),g.call(f,n,t,e,{styleOne:l,eventDataKeys:c.eventDataKeys,transitionTime:c.CLICK_TRANSITION_TIME,transitionEasing:c.CLICK_TRANSITION_EASING}).call(u.setSliceCursor,t,{isTransitioning:t._transitioning}),T.call(l,s,P,{hovered:!1}),s.x0===s.x1||s.y0===s.y1?s._text="":s._text=p?D?"":u.getPtLabel(s)||"":h(s,n,P,e,C)||"";var S=i.ensureSingle(g,"g","slicetext"),R=i.ensureSingle(S,"text","",(function(t){t.attr("data-notex",1)})),z=i.ensureUniformFontSize(t,u.determineTextFont(P,s,C.font));R.text(s._text||" ").classed("slicetext",!0).attr("text-anchor",O?"end":L||p?"start":"middle").call(a.font,z).call(o.convertToTspans,t),s.textBB=a.bBox(R.node()),s.transform=w(s,{fontSize:z.size,isHeader:p}),s.transform.fontSize=z.size,k?R.transition().attrTween("transform",(function(t){var e=A(t,d,B(),[v,m]);return function(t){return _(e(t))}})):R.attr("transform",_(s))})),j}},14102:function(t){"use strict";t.exports=function t(e,n,r){var i;r.swapXY&&(i=e.x0,e.x0=e.y0,e.y0=i,i=e.x1,e.x1=e.y1,e.y1=i),r.flipX&&(i=e.x0,e.x0=n[0]-e.x1,e.x1=n[0]-i),r.flipY&&(i=e.y0,e.y0=n[1]-e.y1,e.y1=n[1]-i);var a=e.children;if(a)for(var o=0;o-1?P+I:-(O+I):0,R={x0:L,x1:L,y0:D,y1:D+O},z=function(t,e,n){var r=m.tiling.pad,i=function(t){return t-r<=e.x0},a=function(t){return t+r>=e.x1},o=function(t){return t-r<=e.y0},s=function(t){return t+r>=e.y1};return t.x0===e.x0&&t.x1===e.x1&&t.y0===e.y0&&t.y1===e.y1?{x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1}:{x0:i(t.x0-r)?0:a(t.x0-r)?n[0]:t.x0,x1:i(t.x1+r)?0:a(t.x1+r)?n[0]:t.x1,y0:o(t.y0-r)?0:s(t.y0-r)?n[1]:t.y0,y1:o(t.y1+r)?0:s(t.y1+r)?n[1]:t.y1}},N=null,j={},F={},B=null,U=function(t,e){return e?j[h(t)]:F[h(t)]},H=function(t,e,n,r){if(e)return j[h(b)]||R;var i=F[m.level]||n;return function(t){return t.data.depth-x.data.depth=(r-=(y?et:et.r)-s)){var d=(n+r)/2;n=d,r=d}var p;ot?i<(p=a-(y?et:et.b))&&p"===tt?(l.x-=a,c.x-=a,u.x-=a,f.x-=a):"/"===tt?(u.x-=a,f.x-=a,o.x-=a/2,s.x-=a/2):"\\"===tt?(l.x-=a,c.x-=a,o.x-=a/2,s.x-=a/2):"<"===tt&&(o.x-=a,s.x-=a),Q(l),Q(f),Q(o),Q(c),Q(u),Q(s),"M"+Z(l.x,l.y)+"L"+Z(c.x,c.y)+"L"+Z(s.x,s.y)+"L"+Z(u.x,u.y)+"L"+Z(f.x,f.y)+"L"+Z(o.x,o.y)+"Z"},toMoveInsideSlice:st,makeUpdateSliceInterpolator:ct,makeUpdateTextInterpolator:ut,handleSlicesExit:ft,hasTransition:M,strTransform:ht}):_.remove()}},96362:function(t,e,n){"use strict";var r=n(39898),i=n(7901),a=n(71828),o=n(2791),s=n(72597).resizeText;function l(t,e,n,r){var s,l,c=(r||{}).hovered,u=e.data.data,f=u.i,h=u.color,d=o.isHierarchyRoot(e),p=1;if(c)s=n._hovered.marker.line.color,l=n._hovered.marker.line.width;else if(d&&h===n.root.color)p=100,s="rgba(0,0,0,0)",l=0;else if(s=a.castOption(n,f,"marker.line.color")||i.defaultLine,l=a.castOption(n,f,"marker.line.width")||0,!n._hasColorscale&&!e.onPathbar){var g=n.marker.depthfade;if(g){var v,m=i.combine(i.addOpacity(n._backgroundColor,.75),h);if(!0===g){var y=o.getMaxDepth(n);v=isFinite(y)?o.isLeaf(e)?0:n._maxVisibleLayers-(e.data.depth-n._entryDepth):e.data.height+1}else v=e.data.depth-n._entryDepth,n._atRootLevel||v++;if(v>0)for(var b=0;b0){var x,w,_,k,T,M=t.xa,A=t.ya;"h"===p.orientation?(T=e,x="y",_=A,w="x",k=M):(T=n,x="x",_=M,w="y",k=A);var S=d[t.index];if(T>=S.span[0]&&T<=S.span[1]){var E=i.extendFlat({},t),C=k.c2p(T,!0),P=s.getKdeValue(S,p,T),L=s.getPositionOnKdePath(S,p,C),O=_._offset,I=_._length;E[x+"0"]=L[0],E[x+"1"]=L[1],E[w+"0"]=E[w+"1"]=C,E[w+"Label"]=w+": "+a.hoverLabelText(k,T,p[w+"hoverformat"])+", "+d[0].t.labels.kde+" "+P.toFixed(3);for(var D=0,R=0;R")),u.color=function(t,e){var n=t[e.dir].marker,r=n.color,a=n.line.color,o=n.line.width;return i(r)?r:i(a)&&o?a:void 0}(h,v),[u]}function T(t){return r(g,t,h[p+"hoverformat"])}}},19990:function(t,e,n){"use strict";t.exports={attributes:n(43037),layoutAttributes:n(13494),supplyDefaults:n(83266).supplyDefaults,crossTraceDefaults:n(83266).crossTraceDefaults,supplyLayoutDefaults:n(5176),calc:n(52752),crossTraceCalc:n(70766),plot:n(30436),style:n(55750).style,hoverPoints:n(61326),eventData:n(58593),selectPoints:n(81974),moduleType:"trace",name:"waterfall",basePlotModule:n(93612),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}},13494:function(t){"use strict";t.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(t,e,n){"use strict";var r=n(71828),i=n(13494);t.exports=function(t,e,n){var a=!1;function o(n,a){return r.coerce(t,e,i,n,a)}for(var s=0;s0&&(v+=h?"M"+f[0]+","+p[1]+"V"+p[0]:"M"+f[1]+","+p[0]+"H"+f[0]),"between"!==d&&(n.isSum||s path").each((function(t){if(!t.isBlank){var e=s[t.dir].marker;r.select(this).call(a.fill,e.color).call(a.stroke,e.line.color).call(i.dashLine,e.line.dash,e.line.width).style("opacity",s.selectedpoints&&!t.selected?o:1)}})),c(n,s,t),n.selectAll(".lines").each((function(){var t=s.connector.line;i.lineGroupStyle(r.select(this).selectAll("path"),t.width,t.color,t.dash)}))}))}}},82887:function(t,e,n){"use strict";var r=n(89298),i=n(71828),a=n(86281),o=n(79344).p,s=n(50606).BADNUM;e.moduleType="transform",e.name="aggregate";var l=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"},c=l.aggregations;function u(t,e,n,a){if(a.enabled){for(var o=a.target,l=i.nestedProperty(e,o),c=l.get(),u=function(t,e){var n=t.func,r=e.d2c,a=e.c2d;switch(n){case"count":return f;case"first":return h;case"last":return d;case"sum":return function(t,e){for(var n=0,i=0;ii&&(i=u,o=c)}}return i?a(o):s};case"rms":return function(t,e){for(var n=0,i=0,o=0;o":return function(t){return h(t)>s};case">=":return function(t){return h(t)>=s};case"[]":return function(t){var e=h(t);return e>=s[0]&&e<=s[1]};case"()":return function(t){var e=h(t);return e>s[0]&&e=s[0]&&es[0]&&e<=s[1]};case"][":return function(t){var e=h(t);return e<=s[0]||e>=s[1]};case")(":return function(t){var e=h(t);return es[1]};case"](":return function(t){var e=h(t);return e<=s[0]||e>s[1]};case")[":return function(t){var e=h(t);return e=s[1]};case"{}":return function(t){return-1!==s.indexOf(h(t))};case"}{":return function(t){return-1===s.indexOf(h(t))}}}(n,a.getDataToCoordFunc(t,e,s,i),h),b={},x={},w=0;p?(v=function(t){b[t.astr]=r.extendDeep([],t.get()),t.set(new Array(f))},m=function(t,e){var n=b[t.astr][e];t.get()[e]=n}):(v=function(t){b[t.astr]=r.extendDeep([],t.get()),t.set([])},m=function(t,e){var n=b[t.astr][e];t.get().push(n)}),T(v);for(var _=o(e.transforms,n),k=0;k1?"%{group} (%{trace})":"%{group}");var l=t.styles,c=o.styles=[];if(l)for(a=0;ah)throw new RangeError('The value "'+t+'" is invalid for option "size"');var e=new Uint8Array(t);return Object.setPrototypeOf(e,p.prototype),e}function p(t,e,n){if("number"===typeof t){if("string"===typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return m(t)}return g(t,e,n)}function g(t,e,n){if("string"===typeof t)return function(t,e){if("string"===typeof e&&""!==e||(e="utf8"),!p.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var n=0|w(t,e),r=d(n),i=r.write(t,e);return i!==n&&(r=r.slice(0,i)),r}(t,e);if(ArrayBuffer.isView(t))return function(t){if(et(t,Uint8Array)){var e=new Uint8Array(t);return b(e.buffer,e.byteOffset,e.byteLength)}return y(t)}(t);if(null==t)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(t));if(et(t,ArrayBuffer)||t&&et(t.buffer,ArrayBuffer))return b(t,e,n);if("undefined"!==typeof SharedArrayBuffer&&(et(t,SharedArrayBuffer)||t&&et(t.buffer,SharedArrayBuffer)))return b(t,e,n);if("number"===typeof t)throw new TypeError('The "value" argument must not be of type number. Received type number');var r=t.valueOf&&t.valueOf();if(null!=r&&r!==t)return p.from(r,e,n);var i=function(t){if(p.isBuffer(t)){var e=0|x(t.length),n=d(e);return 0===n.length||t.copy(n,0,0,e),n}return void 0!==t.length?"number"!==typeof t.length||nt(t.length)?d(0):y(t):"Buffer"===t.type&&Array.isArray(t.data)?y(t.data):void 0}(t);if(i)return i;if("undefined"!==typeof Symbol&&null!=Symbol.toPrimitive&&"function"===typeof t[Symbol.toPrimitive])return p.from(t[Symbol.toPrimitive]("string"),e,n);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(t))}function v(t){if("number"!==typeof t)throw new TypeError('"size" argument must be of type number');if(t<0)throw new RangeError('The value "'+t+'" is invalid for option "size"')}function m(t){return v(t),d(t<0?0:0|x(t))}function y(t){for(var e=t.length<0?0:0|x(t.length),n=d(e),r=0;r=h)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+h.toString(16)+" bytes");return 0|t}function w(t,e){if(p.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||et(t,ArrayBuffer))return t.byteLength;if("string"!==typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+l(t));var n=t.length,r=arguments.length>2&&!0===arguments[2];if(!r&&0===n)return 0;for(var i=!1;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return J(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return Q(t).length;default:if(i)return r?-1:J(t).length;e=(""+e).toLowerCase(),i=!0}}function _(t,e,n){var r=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return z(this,e,n);case"utf8":case"utf-8":return O(this,e,n);case"ascii":return D(this,e,n);case"latin1":case"binary":return R(this,e,n);case"base64":return L(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return N(this,e,n);default:if(r)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),r=!0}}function k(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function T(t,e,n,r,i){if(0===t.length)return-1;if("string"===typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),nt(n=+n)&&(n=i?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(i)return-1;n=t.length-1}else if(n<0){if(!i)return-1;n=0}if("string"===typeof e&&(e=p.from(e,r)),p.isBuffer(e))return 0===e.length?-1:M(t,e,n,r,i);if("number"===typeof e)return e&=255,"function"===typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):M(t,[e],n,r,i);throw new TypeError("val must be string, number or Buffer")}function M(t,e,n,r,i){var a,o=1,s=t.length,l=e.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(t.length<2||e.length<2)return-1;o=2,s/=2,l/=2,n/=2}function c(t,e){return 1===o?t[e]:t.readUInt16BE(e*o)}if(i){var u=-1;for(a=n;as&&(n=s-l),a=n;a>=0;a--){for(var f=!0,h=0;hi&&(r=i):r=i;var a,o=e.length;for(r>o/2&&(r=o/2),a=0;a>8,i=n%256,a.push(i),a.push(r);return a}(e,t.length-n),t,n,r)}function L(t,e,n){return 0===e&&n===t.length?c.fromByteArray(t):c.fromByteArray(t.slice(e,n))}function O(t,e,n){n=Math.min(t.length,n);for(var r=[],i=e;i239?4:a>223?3:a>191?2:1;if(i+s<=n){var l=void 0,c=void 0,u=void 0,f=void 0;switch(s){case 1:a<128&&(o=a);break;case 2:128===(192&(l=t[i+1]))&&(f=(31&a)<<6|63&l)>127&&(o=f);break;case 3:l=t[i+1],c=t[i+2],128===(192&l)&&128===(192&c)&&(f=(15&a)<<12|(63&l)<<6|63&c)>2047&&(f<55296||f>57343)&&(o=f);break;case 4:l=t[i+1],c=t[i+2],u=t[i+3],128===(192&l)&&128===(192&c)&&128===(192&u)&&(f=(15&a)<<18|(63&l)<<12|(63&c)<<6|63&u)>65535&&f<1114112&&(o=f)}}null===o?(o=65533,s=1):o>65535&&(o-=65536,r.push(o>>>10&1023|55296),o=56320|1023&o),r.push(o),i+=s}return function(t){var e=t.length;if(e<=I)return String.fromCharCode.apply(String,t);for(var n="",r=0;rr.length?(p.isBuffer(a)||(a=p.from(a)),a.copy(r,i)):Uint8Array.prototype.set.call(r,a,i);else{if(!p.isBuffer(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(r,i)}i+=a.length}return r},p.byteLength=w,p.prototype._isBuffer=!0,p.prototype.swap16=function(){var t=this.length;if(t%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var e=0;en&&(t+=" ... "),""},f&&(p.prototype[f]=p.prototype.inspect),p.prototype.compare=function(t,e,n,r,i){if(et(t,Uint8Array)&&(t=p.from(t,t.offset,t.byteLength)),!p.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+l(t));if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),e<0||n>t.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&e>=n)return 0;if(r>=i)return-1;if(e>=n)return 1;if(this===t)return 0;for(var a=(i>>>=0)-(r>>>=0),o=(n>>>=0)-(e>>>=0),s=Math.min(a,o),c=this.slice(r,i),u=t.slice(e,n),f=0;f>>=0,isFinite(n)?(n>>>=0,void 0===r&&(r="utf8")):(r=n,n=void 0)}var i=this.length-e;if((void 0===n||n>i)&&(n=i),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var a=!1;;)switch(r){case"hex":return A(this,t,e,n);case"utf8":case"utf-8":return S(this,t,e,n);case"ascii":case"latin1":case"binary":return E(this,t,e,n);case"base64":return C(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return P(this,t,e,n);default:if(a)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),a=!0}},p.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var I=4096;function D(t,e,n){var r="";n=Math.min(t.length,n);for(var i=e;ir)&&(n=r);for(var i="",a=e;an)throw new RangeError("Trying to access beyond buffer length")}function F(t,e,n,r,i,a){if(!p.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||et.length)throw new RangeError("Index out of range")}function B(t,e,n,r,i){$(e,r,i,t,n,7);var a=Number(e&BigInt(4294967295));t[n++]=a,a>>=8,t[n++]=a,a>>=8,t[n++]=a,a>>=8,t[n++]=a;var o=Number(e>>BigInt(32)&BigInt(4294967295));return t[n++]=o,o>>=8,t[n++]=o,o>>=8,t[n++]=o,o>>=8,t[n++]=o,n}function U(t,e,n,r,i){$(e,r,i,t,n,7);var a=Number(e&BigInt(4294967295));t[n+7]=a,a>>=8,t[n+6]=a,a>>=8,t[n+5]=a,a>>=8,t[n+4]=a;var o=Number(e>>BigInt(32)&BigInt(4294967295));return t[n+3]=o,o>>=8,t[n+2]=o,o>>=8,t[n+1]=o,o>>=8,t[n]=o,n+8}function H(t,e,n,r,i,a){if(n+r>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function V(t,e,n,r,i){return e=+e,n>>>=0,i||H(t,0,n,4),u.write(t,e,n,r,23,4),n+4}function q(t,e,n,r,i){return e=+e,n>>>=0,i||H(t,0,n,8),u.write(t,e,n,r,52,8),n+8}p.prototype.slice=function(t,e){var n=this.length;(t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e>>=0,e>>>=0,n||j(t,e,this.length);for(var r=this[t],i=1,a=0;++a>>=0,e>>>=0,n||j(t,e,this.length);for(var r=this[t+--e],i=1;e>0&&(i*=256);)r+=this[t+--e]*i;return r},p.prototype.readUint8=p.prototype.readUInt8=function(t,e){return t>>>=0,e||j(t,1,this.length),this[t]},p.prototype.readUint16LE=p.prototype.readUInt16LE=function(t,e){return t>>>=0,e||j(t,2,this.length),this[t]|this[t+1]<<8},p.prototype.readUint16BE=p.prototype.readUInt16BE=function(t,e){return t>>>=0,e||j(t,2,this.length),this[t]<<8|this[t+1]},p.prototype.readUint32LE=p.prototype.readUInt32LE=function(t,e){return t>>>=0,e||j(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},p.prototype.readUint32BE=p.prototype.readUInt32BE=function(t,e){return t>>>=0,e||j(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},p.prototype.readBigUInt64LE=it((function(t){X(t>>>=0,"offset");var e=this[t],n=this[t+7];void 0!==e&&void 0!==n||K(t,this.length-8);var r=e+this[++t]*Math.pow(2,8)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,24),i=this[++t]+this[++t]*Math.pow(2,8)+this[++t]*Math.pow(2,16)+n*Math.pow(2,24);return BigInt(r)+(BigInt(i)<>>=0,"offset");var e=this[t],n=this[t+7];void 0!==e&&void 0!==n||K(t,this.length-8);var r=e*Math.pow(2,24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+this[++t],i=this[++t]*Math.pow(2,24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+n;return(BigInt(r)<>>=0,e>>>=0,n||j(t,e,this.length);for(var r=this[t],i=1,a=0;++a=(i*=128)&&(r-=Math.pow(2,8*e)),r},p.prototype.readIntBE=function(t,e,n){t>>>=0,e>>>=0,n||j(t,e,this.length);for(var r=e,i=1,a=this[t+--r];r>0&&(i*=256);)a+=this[t+--r]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*e)),a},p.prototype.readInt8=function(t,e){return t>>>=0,e||j(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},p.prototype.readInt16LE=function(t,e){t>>>=0,e||j(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},p.prototype.readInt16BE=function(t,e){t>>>=0,e||j(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},p.prototype.readInt32LE=function(t,e){return t>>>=0,e||j(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},p.prototype.readInt32BE=function(t,e){return t>>>=0,e||j(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},p.prototype.readBigInt64LE=it((function(t){X(t>>>=0,"offset");var e=this[t],n=this[t+7];void 0!==e&&void 0!==n||K(t,this.length-8);var r=this[t+4]+this[t+5]*Math.pow(2,8)+this[t+6]*Math.pow(2,16)+(n<<24);return(BigInt(r)<>>=0,"offset");var e=this[t],n=this[t+7];void 0!==e&&void 0!==n||K(t,this.length-8);var r=(e<<24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+this[++t];return(BigInt(r)<>>=0,e||j(t,4,this.length),u.read(this,t,!0,23,4)},p.prototype.readFloatBE=function(t,e){return t>>>=0,e||j(t,4,this.length),u.read(this,t,!1,23,4)},p.prototype.readDoubleLE=function(t,e){return t>>>=0,e||j(t,8,this.length),u.read(this,t,!0,52,8)},p.prototype.readDoubleBE=function(t,e){return t>>>=0,e||j(t,8,this.length),u.read(this,t,!1,52,8)},p.prototype.writeUintLE=p.prototype.writeUIntLE=function(t,e,n,r){t=+t,e>>>=0,n>>>=0,r||F(this,t,e,n,Math.pow(2,8*n)-1,0);var i=1,a=0;for(this[e]=255&t;++a>>=0,n>>>=0,r||F(this,t,e,n,Math.pow(2,8*n)-1,0);var i=n-1,a=1;for(this[e+i]=255&t;--i>=0&&(a*=256);)this[e+i]=t/a&255;return e+n},p.prototype.writeUint8=p.prototype.writeUInt8=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,1,255,0),this[e]=255&t,e+1},p.prototype.writeUint16LE=p.prototype.writeUInt16LE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},p.prototype.writeUint16BE=p.prototype.writeUInt16BE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},p.prototype.writeUint32LE=p.prototype.writeUInt32LE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},p.prototype.writeUint32BE=p.prototype.writeUInt32BE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},p.prototype.writeBigUInt64LE=it((function(t){return B(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),p.prototype.writeBigUInt64BE=it((function(t){return U(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),p.prototype.writeIntLE=function(t,e,n,r){if(t=+t,e>>>=0,!r){var i=Math.pow(2,8*n-1);F(this,t,e,n,i-1,-i)}var a=0,o=1,s=0;for(this[e]=255&t;++a>0)-s&255;return e+n},p.prototype.writeIntBE=function(t,e,n,r){if(t=+t,e>>>=0,!r){var i=Math.pow(2,8*n-1);F(this,t,e,n,i-1,-i)}var a=n-1,o=1,s=0;for(this[e+a]=255&t;--a>=0&&(o*=256);)t<0&&0===s&&0!==this[e+a+1]&&(s=1),this[e+a]=(t/o>>0)-s&255;return e+n},p.prototype.writeInt8=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},p.prototype.writeInt16LE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},p.prototype.writeInt16BE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},p.prototype.writeInt32LE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},p.prototype.writeInt32BE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},p.prototype.writeBigInt64LE=it((function(t){return B(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),p.prototype.writeBigInt64BE=it((function(t){return U(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),p.prototype.writeFloatLE=function(t,e,n){return V(this,t,e,!0,n)},p.prototype.writeFloatBE=function(t,e,n){return V(this,t,e,!1,n)},p.prototype.writeDoubleLE=function(t,e,n){return q(this,t,e,!0,n)},p.prototype.writeDoubleBE=function(t,e,n){return q(this,t,e,!1,n)},p.prototype.copy=function(t,e,n,r){if(!p.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),r||0===r||(r=this.length),e>=t.length&&(e=t.length),e||(e=0),r>0&&r=this.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),t.length-e>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),"number"===typeof t)for(a=e;a=r+4;n-=3)e="_".concat(t.slice(n-3,n)).concat(e);return"".concat(t.slice(0,n)).concat(e)}function $(t,e,n,r,i,a){if(t>n||t3?0===e||e===BigInt(0)?">= 0".concat(s," and < 2").concat(s," ** ").concat(8*(a+1)).concat(s):">= -(2".concat(s," ** ").concat(8*(a+1)-1).concat(s,") and < 2 ** ")+"".concat(8*(a+1)-1).concat(s):">= ".concat(e).concat(s," and <= ").concat(n).concat(s),new G.ERR_OUT_OF_RANGE("value",o,t)}!function(t,e,n){X(e,"offset"),void 0!==t[e]&&void 0!==t[e+n]||K(e,t.length-(n+1))}(r,i,a)}function X(t,e){if("number"!==typeof t)throw new G.ERR_INVALID_ARG_TYPE(e,"number",t)}function K(t,e,n){if(Math.floor(t)!==t)throw X(t,n),new G.ERR_OUT_OF_RANGE(n||"offset","an integer",t);if(e<0)throw new G.ERR_BUFFER_OUT_OF_BOUNDS;throw new G.ERR_OUT_OF_RANGE(n||"offset",">= ".concat(n?1:0," and <= ").concat(e),t)}W("ERR_BUFFER_OUT_OF_BOUNDS",(function(t){return t?"".concat(t," is outside of buffer bounds"):"Attempt to access memory outside buffer bounds"}),RangeError),W("ERR_INVALID_ARG_TYPE",(function(t,e){return'The "'.concat(t,'" argument must be of type number. Received type ').concat(l(e))}),TypeError),W("ERR_OUT_OF_RANGE",(function(t,e,n){var r='The value of "'.concat(t,'" is out of range.'),i=n;return Number.isInteger(n)&&Math.abs(n)>Math.pow(2,32)?i=Y(String(n)):"bigint"===typeof n&&(i=String(n),(n>Math.pow(BigInt(2),BigInt(32))||n<-Math.pow(BigInt(2),BigInt(32)))&&(i=Y(i)),i+="n"),r+=" It must be ".concat(e,". Received ").concat(i)}),RangeError);var Z=/[^+/0-9A-Za-z-_]/g;function J(t,e){var n;e=e||1/0;for(var r=t.length,i=null,a=[],o=0;o55295&&n<57344){if(!i){if(n>56319){(e-=3)>-1&&a.push(239,191,189);continue}if(o+1===r){(e-=3)>-1&&a.push(239,191,189);continue}i=n;continue}if(n<56320){(e-=3)>-1&&a.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(e-=3)>-1&&a.push(239,191,189);if(i=null,n<128){if((e-=1)<0)break;a.push(n)}else if(n<2048){if((e-=2)<0)break;a.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;a.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return a}function Q(t){return c.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(Z,"")).length<2)return"";for(;t.length%4!==0;)t+="=";return t}(t))}function tt(t,e,n,r){var i;for(i=0;i=e.length||i>=t.length);++i)e[i+n]=t[i];return i}function et(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function nt(t){return t!==t}var rt=function(){for(var t="0123456789abcdef",e=new Array(256),n=0;n<16;++n)for(var r=16*n,i=0;i<16;++i)e[r+i]=t[n]+t[i];return e}();function it(t){return"undefined"===typeof BigInt?at:t}function at(){throw new Error("BigInt not supported")}},2321:function(t){"use strict";t.exports=i,t.exports.isMobile=i,t.exports.default=i;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,n=/CrOS/,r=/android|ipad|playbook|silk/i;function i(t){t||(t={});var i=t.ua;if(i||"undefined"===typeof navigator||(i=navigator.userAgent),i&&i.headers&&"string"===typeof i.headers["user-agent"]&&(i=i.headers["user-agent"]),"string"!==typeof i)return!1;var a=e.test(i)&&!n.test(i)||!!t.tablet&&r.test(i);return!a&&t.tablet&&t.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==i.indexOf("Macintosh")&&-1!==i.indexOf("Safari")&&(a=!0),a}},3910:function(t,e){"use strict";e.byteLength=function(t){var e=l(t),n=e[0],r=e[1];return 3*(n+r)/4-r},e.toByteArray=function(t){var e,n,a=l(t),o=a[0],s=a[1],c=new i(function(t,e,n){return 3*(e+n)/4-n}(0,o,s)),u=0,f=s>0?o-4:o;for(n=0;n>16&255,c[u++]=e>>8&255,c[u++]=255&e;return 2===s&&(e=r[t.charCodeAt(n)]<<2|r[t.charCodeAt(n+1)]>>4,c[u++]=255&e),1===s&&(e=r[t.charCodeAt(n)]<<10|r[t.charCodeAt(n+1)]<<4|r[t.charCodeAt(n+2)]>>2,c[u++]=e>>8&255,c[u++]=255&e),c},e.fromByteArray=function(t){for(var e,r=t.length,i=r%3,a=[],o=16383,s=0,l=r-i;sl?l:s+o));return 1===i?(e=t[r-1],a.push(n[e>>2]+n[e<<4&63]+"==")):2===i&&(e=(t[r-2]<<8)+t[r-1],a.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"=")),a.join("")};for(var n=[],r=[],i="undefined"!==typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0,s=a.length;o0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");return-1===n&&(n=e),[n,n===e?0:4-n%4]}function c(t,e,r){for(var i,a,o=[],s=e;s>18&63]+n[a>>12&63]+n[a>>6&63]+n[63&a]);return o.join("")}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63},3187:function(t,e){e.read=function(t,e,n,r,i){var a,o,s=8*i-r-1,l=(1<>1,u=-7,f=n?i-1:0,h=n?-1:1,d=t[e+f];for(f+=h,a=d&(1<<-u)-1,d>>=-u,u+=s;u>0;a=256*a+t[e+f],f+=h,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=r;u>0;o=256*o+t[e+f],f+=h,u-=8);if(0===a)a=1-c;else{if(a===l)return o?NaN:1/0*(d?-1:1);o+=Math.pow(2,r),a-=c}return(d?-1:1)*o*Math.pow(2,a-r)},e.write=function(t,e,n,r,i,a){var o,s,l,c=8*a-i-1,u=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:a-1,p=r?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+f>=1?h/l:h*Math.pow(2,1-f))*l>=2&&(o++,l/=2),o+f>=u?(s=0,o=u):o+f>=1?(s=(e*l-1)*Math.pow(2,i),o+=f):(s=e*Math.pow(2,f-1)*Math.pow(2,i),o=0));i>=8;t[n+d]=255&s,d+=p,s/=256,i-=8);for(o=o<0;t[n+d]=255&o,d+=p,o/=256,c-=8);t[n+d-p]|=128*g}},1152:function(t,e,n){"use strict";t.exports=function(t){var e=(t=t||{}).eye||[0,0,1],n=t.center||[0,0,0],s=t.up||[0,1,0],l=t.distanceLimits||[0,1/0],c=t.mode||"turntable",u=r(),f=i(),h=a();return u.setDistanceLimits(l[0],l[1]),u.lookAt(0,e,n,s),f.setDistanceLimits(l[0],l[1]),f.lookAt(0,e,n,s),h.setDistanceLimits(l[0],l[1]),h.lookAt(0,e,n,s),new o({turntable:u,orbit:f,matrix:h},c)};var r=n(3440),i=n(7774),a=n(9298);function o(t,e){this._controllerNames=Object.keys(t),this._controllerList=this._controllerNames.map((function(e){return t[e]})),this._mode=e,this._active=t[e],this._active||(this._mode="turntable",this._active=t.turntable),this.modes=this._controllerNames,this.computedMatrix=this._active.computedMatrix,this.computedEye=this._active.computedEye,this.computedUp=this._active.computedUp,this.computedCenter=this._active.computedCenter,this.computedRadius=this._active.computedRadius}var s=o.prototype;s.flush=function(t){for(var e=this._controllerList,n=0;n0?c=c.ushln(f):f<0&&(u=u.ushln(-f)),s(c,u)}},234:function(t,e,n){"use strict";var r=n(3218);t.exports=function(t){return Array.isArray(t)&&2===t.length&&r(t[0])&&r(t[1])}},4275:function(t,e,n){"use strict";var r=n(1928);t.exports=function(t){return t.cmp(new r(0))}},9958:function(t,e,n){"use strict";var r=n(4275);t.exports=function(t){var e=t.length,n=t.words,i=0;if(1===e)i=n[0];else if(2===e)i=n[0]+67108864*n[1];else for(var a=0;a20?52:n+32}},3218:function(t,e,n){"use strict";n(1928),t.exports=function(t){return t&&"object"===typeof t&&Boolean(t.words)}},5514:function(t,e,n){"use strict";var r=n(1928),i=n(8362);t.exports=function(t){var e=i.exponent(t);return e<52?new r(t):new r(t*Math.pow(2,52-e)).ushln(e-52)}},8524:function(t,e,n){"use strict";var r=n(5514),i=n(4275);t.exports=function(t,e){var n=i(t),a=i(e);if(0===n)return[r(0),r(1)];if(0===a)return[r(0),r(0)];a<0&&(t=t.neg(),e=e.neg());var o=t.gcd(e);return o.cmpn(1)?[t.div(o),e.div(o)]:[t,e]}},2813:function(t,e,n){"use strict";var r=n(1928);t.exports=function(t){return new r(t)}},3962:function(t,e,n){"use strict";var r=n(8524);t.exports=function(t,e){return r(t[0].mul(e[0]),t[1].mul(e[1]))}},4951:function(t,e,n){"use strict";var r=n(4275);t.exports=function(t){return r(t[0])*r(t[1])}},4354:function(t,e,n){"use strict";var r=n(8524);t.exports=function(t,e){return r(t[0].mul(e[1]).sub(t[1].mul(e[0])),t[1].mul(e[1]))}},7999:function(t,e,n){"use strict";var r=n(9958),i=n(1112);t.exports=function(t){var e=t[0],n=t[1];if(0===e.cmpn(0))return 0;var a=e.abs().divmod(n.abs()),o=a.div,s=r(o),l=a.mod,c=e.negative!==n.negative?-1:1;if(0===l.cmpn(0))return c*s;if(s){var u=i(s)+4;return c*(s+(h=r(l.ushln(u).divRound(n)))*Math.pow(2,-u))}var f=n.bitLength()-l.bitLength()+53,h=r(l.ushln(f).divRound(n));return f<1023?c*h*Math.pow(2,-f):c*(h*=Math.pow(2,-1023))*Math.pow(2,1023-f)}},5070:function(t){"use strict";function e(t,e,n,r,i){for(var a=i+1;r<=i;){var o=r+i>>>1,s=t[o];(void 0!==n?n(s,e):s-e)>=0?(a=o,i=o-1):r=o+1}return a}function n(t,e,n,r,i){for(var a=i+1;r<=i;){var o=r+i>>>1,s=t[o];(void 0!==n?n(s,e):s-e)>0?(a=o,i=o-1):r=o+1}return a}function r(t,e,n,r,i){for(var a=r-1;r<=i;){var o=r+i>>>1,s=t[o];(void 0!==n?n(s,e):s-e)<0?(a=o,r=o+1):i=o-1}return a}function i(t,e,n,r,i){for(var a=r-1;r<=i;){var o=r+i>>>1,s=t[o];(void 0!==n?n(s,e):s-e)<=0?(a=o,r=o+1):i=o-1}return a}function a(t,e,n,r,i){for(;r<=i;){var a=r+i>>>1,o=t[a],s=void 0!==n?n(o,e):o-e;if(0===s)return a;s<=0?r=a+1:i=a-1}return-1}function o(t,e,n,r,i,a){return"function"===typeof n?a(t,e,n,void 0===r?0:0|r,void 0===i?t.length-1:0|i):a(t,e,void 0,void 0===n?0:0|n,void 0===r?t.length-1:0|r)}t.exports={ge:function(t,n,r,i,a){return o(t,n,r,i,a,e)},gt:function(t,e,r,i,a){return o(t,e,r,i,a,n)},lt:function(t,e,n,i,a){return o(t,e,n,i,a,r)},le:function(t,e,n,r,a){return o(t,e,n,r,a,i)},eq:function(t,e,n,r,i){return o(t,e,n,r,i,a)}}},2288:function(t,e){"use strict";function n(t){var e=32;return(t&=-t)&&e--,65535&t&&(e-=16),16711935&t&&(e-=8),252645135&t&&(e-=4),858993459&t&&(e-=2),1431655765&t&&(e-=1),e}e.INT_BITS=32,e.INT_MAX=2147483647,e.INT_MIN=-1<<31,e.sign=function(t){return(t>0)-(t<0)},e.abs=function(t){var e=t>>31;return(t^e)-e},e.min=function(t,e){return e^(t^e)&-(t65535)<<4,e|=n=((t>>>=e)>255)<<3,e|=n=((t>>>=n)>15)<<2,(e|=n=((t>>>=n)>3)<<1)|(t>>>=n)>>1},e.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},e.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},e.countTrailingZeros=n,e.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,1+(t|=t>>>16)},e.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},e.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var r=new Array(256);!function(t){for(var e=0;e<256;++e){var n=e,r=e,i=7;for(n>>>=1;n;n>>>=1)r<<=1,r|=1&n,--i;t[e]=r<>>8&255]<<16|r[t>>>16&255]<<8|r[t>>>24&255]},e.interleave2=function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},e.deinterleave2=function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},e.interleave3=function(t,e,n){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(n=1227133513&((n=3272356035&((n=251719695&((n=4278190335&((n&=1023)|n<<16))|n<<8))|n<<4))|n<<2))<<2},e.deinterleave3=function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},e.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>n(t)+1}},1928:function(t,e,n){!function(t,e){"use strict";function r(t,e){if(!t)throw new Error(e||"Assertion failed")}function i(t,e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}function a(t,e,n){if(a.isBN(t))return t;this.negative=0,this.words=null,this.length=0,this.red=null,null!==t&&("le"!==e&&"be"!==e||(n=e,e=10),this._init(t||0,e||10,n||"be"))}var o;"object"===typeof t?t.exports=a:e.BN=a,a.BN=a,a.wordSize=26;try{o="undefined"!==typeof window&&"undefined"!==typeof window.Buffer?window.Buffer:n(6601).Buffer}catch(M){}function s(t,e){var n=t.charCodeAt(e);return n>=65&&n<=70?n-55:n>=97&&n<=102?n-87:n-48&15}function l(t,e,n){var r=s(t,n);return n-1>=e&&(r|=s(t,n-1)<<4),r}function c(t,e,n,r){for(var i=0,a=Math.min(t.length,n),o=e;o=49?s-49+10:s>=17?s-17+10:s}return i}a.isBN=function(t){return t instanceof a||null!==t&&"object"===typeof t&&t.constructor.wordSize===a.wordSize&&Array.isArray(t.words)},a.max=function(t,e){return t.cmp(e)>0?t:e},a.min=function(t,e){return t.cmp(e)<0?t:e},a.prototype._init=function(t,e,n){if("number"===typeof t)return this._initNumber(t,e,n);if("object"===typeof t)return this._initArray(t,e,n);"hex"===e&&(e=16),r(e===(0|e)&&e>=2&&e<=36);var i=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&(i++,this.negative=1),i=0;i-=3)o=t[i]|t[i-1]<<8|t[i-2]<<16,this.words[a]|=o<>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);else if("le"===n)for(i=0,a=0;i>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);return this.strip()},a.prototype._parseHex=function(t,e,n){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var r=0;r=e;r-=2)i=l(t,e,r)<=18?(a-=18,o+=1,this.words[o]|=i>>>26):a+=8;else for(r=(t.length-e)%2===0?e+1:e;r=18?(a-=18,o+=1,this.words[o]|=i>>>26):a+=8;this.strip()},a.prototype._parseBase=function(t,e,n){this.words=[0],this.length=1;for(var r=0,i=1;i<=67108863;i*=e)r++;r--,i=i/e|0;for(var a=t.length-n,o=a%r,s=Math.min(a,a-o)+n,l=0,u=n;u1&&0===this.words[this.length-1];)this.length--;return this._normSign()},a.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},a.prototype.inspect=function(){return(this.red?""};var u=["","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],h=[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 d(t,e,n){n.negative=e.negative^t.negative;var r=t.length+e.length|0;n.length=r,r=r-1|0;var i=0|t.words[0],a=0|e.words[0],o=i*a,s=67108863&o,l=o/67108864|0;n.words[0]=s;for(var c=1;c>>26,f=67108863&l,h=Math.min(c,e.length-1),d=Math.max(0,c-t.length+1);d<=h;d++){var p=c-d|0;u+=(o=(i=0|t.words[p])*(a=0|e.words[d])+f)/67108864|0,f=67108863&o}n.words[c]=0|f,l=0|u}return 0!==l?n.words[c]=0|l:n.length--,n.strip()}a.prototype.toString=function(t,e){var n;if(e=0|e||1,16===(t=t||10)||"hex"===t){n="";for(var i=0,a=0,o=0;o>>24-i&16777215)||o!==this.length-1?u[6-l.length]+l+n:l+n,(i+=2)>=26&&(i-=26,o--)}for(0!==a&&(n=a.toString(16)+n);n.length%e!==0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(t===(0|t)&&t>=2&&t<=36){var c=f[t],d=h[t];n="";var p=this.clone();for(p.negative=0;!p.isZero();){var g=p.modn(d).toString(t);n=(p=p.idivn(d)).isZero()?g+n:u[c-g.length]+g+n}for(this.isZero()&&(n="0"+n);n.length%e!==0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}r(!1,"Base should be between 2 and 36")},a.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},a.prototype.toJSON=function(){return this.toString(16)},a.prototype.toBuffer=function(t,e){return r("undefined"!==typeof o),this.toArrayLike(o,t,e)},a.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},a.prototype.toArrayLike=function(t,e,n){var i=this.byteLength(),a=n||Math.max(1,i);r(i<=a,"byte array longer than desired length"),r(a>0,"Requested array length <= 0"),this.strip();var o,s,l="le"===e,c=new t(a),u=this.clone();if(l){for(s=0;!u.isZero();s++)o=u.andln(255),u.iushrn(8),c[s]=o;for(;s=4096&&(n+=13,e>>>=13),e>=64&&(n+=7,e>>>=7),e>=8&&(n+=4,e>>>=4),e>=2&&(n+=2,e>>>=2),n+e},a.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,n=0;return 0===(8191&e)&&(n+=13,e>>>=13),0===(127&e)&&(n+=7,e>>>=7),0===(15&e)&&(n+=4,e>>>=4),0===(3&e)&&(n+=2,e>>>=2),0===(1&e)&&n++,n},a.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},a.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},a.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},a.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var n=0;nt.length?this.clone().iand(t):t.clone().iand(this)},a.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},a.prototype.iuxor=function(t){var e,n;this.length>t.length?(e=this,n=t):(e=t,n=this);for(var r=0;rt.length?this.clone().ixor(t):t.clone().ixor(this)},a.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},a.prototype.inotn=function(t){r("number"===typeof t&&t>=0);var e=0|Math.ceil(t/26),n=t%26;this._expand(e),n>0&&e--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-n),this.strip()},a.prototype.notn=function(t){return this.clone().inotn(t)},a.prototype.setn=function(t,e){r("number"===typeof t&&t>=0);var n=t/26|0,i=t%26;return this._expand(n+1),this.words[n]=e?this.words[n]|1<t.length?(n=this,r=t):(n=t,r=this);for(var i=0,a=0;a>>26;for(;0!==i&&a>>26;if(this.length=n.length,0!==i)this.words[this.length]=i,this.length++;else if(n!==this)for(;at.length?this.clone().iadd(t):t.clone().iadd(this)},a.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var n,r,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(n=this,r=t):(n=t,r=this);for(var a=0,o=0;o>26,this.words[o]=67108863&e;for(;0!==a&&o>26,this.words[o]=67108863&e;if(0===a&&o>>13,d=0|o[1],p=8191&d,g=d>>>13,v=0|o[2],m=8191&v,y=v>>>13,b=0|o[3],x=8191&b,w=b>>>13,_=0|o[4],k=8191&_,T=_>>>13,M=0|o[5],A=8191&M,S=M>>>13,E=0|o[6],C=8191&E,P=E>>>13,L=0|o[7],O=8191&L,I=L>>>13,D=0|o[8],R=8191&D,z=D>>>13,N=0|o[9],j=8191&N,F=N>>>13,B=0|s[0],U=8191&B,H=B>>>13,V=0|s[1],q=8191&V,G=V>>>13,W=0|s[2],Y=8191&W,$=W>>>13,X=0|s[3],K=8191&X,Z=X>>>13,J=0|s[4],Q=8191&J,tt=J>>>13,et=0|s[5],nt=8191&et,rt=et>>>13,it=0|s[6],at=8191&it,ot=it>>>13,st=0|s[7],lt=8191&st,ct=st>>>13,ut=0|s[8],ft=8191&ut,ht=ut>>>13,dt=0|s[9],pt=8191&dt,gt=dt>>>13;n.negative=t.negative^e.negative,n.length=19;var vt=(c+(r=Math.imul(f,U))|0)+((8191&(i=(i=Math.imul(f,H))+Math.imul(h,U)|0))<<13)|0;c=((a=Math.imul(h,H))+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,r=Math.imul(p,U),i=(i=Math.imul(p,H))+Math.imul(g,U)|0,a=Math.imul(g,H);var mt=(c+(r=r+Math.imul(f,q)|0)|0)+((8191&(i=(i=i+Math.imul(f,G)|0)+Math.imul(h,q)|0))<<13)|0;c=((a=a+Math.imul(h,G)|0)+(i>>>13)|0)+(mt>>>26)|0,mt&=67108863,r=Math.imul(m,U),i=(i=Math.imul(m,H))+Math.imul(y,U)|0,a=Math.imul(y,H),r=r+Math.imul(p,q)|0,i=(i=i+Math.imul(p,G)|0)+Math.imul(g,q)|0,a=a+Math.imul(g,G)|0;var yt=(c+(r=r+Math.imul(f,Y)|0)|0)+((8191&(i=(i=i+Math.imul(f,$)|0)+Math.imul(h,Y)|0))<<13)|0;c=((a=a+Math.imul(h,$)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,r=Math.imul(x,U),i=(i=Math.imul(x,H))+Math.imul(w,U)|0,a=Math.imul(w,H),r=r+Math.imul(m,q)|0,i=(i=i+Math.imul(m,G)|0)+Math.imul(y,q)|0,a=a+Math.imul(y,G)|0,r=r+Math.imul(p,Y)|0,i=(i=i+Math.imul(p,$)|0)+Math.imul(g,Y)|0,a=a+Math.imul(g,$)|0;var bt=(c+(r=r+Math.imul(f,K)|0)|0)+((8191&(i=(i=i+Math.imul(f,Z)|0)+Math.imul(h,K)|0))<<13)|0;c=((a=a+Math.imul(h,Z)|0)+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,r=Math.imul(k,U),i=(i=Math.imul(k,H))+Math.imul(T,U)|0,a=Math.imul(T,H),r=r+Math.imul(x,q)|0,i=(i=i+Math.imul(x,G)|0)+Math.imul(w,q)|0,a=a+Math.imul(w,G)|0,r=r+Math.imul(m,Y)|0,i=(i=i+Math.imul(m,$)|0)+Math.imul(y,Y)|0,a=a+Math.imul(y,$)|0,r=r+Math.imul(p,K)|0,i=(i=i+Math.imul(p,Z)|0)+Math.imul(g,K)|0,a=a+Math.imul(g,Z)|0;var xt=(c+(r=r+Math.imul(f,Q)|0)|0)+((8191&(i=(i=i+Math.imul(f,tt)|0)+Math.imul(h,Q)|0))<<13)|0;c=((a=a+Math.imul(h,tt)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,r=Math.imul(A,U),i=(i=Math.imul(A,H))+Math.imul(S,U)|0,a=Math.imul(S,H),r=r+Math.imul(k,q)|0,i=(i=i+Math.imul(k,G)|0)+Math.imul(T,q)|0,a=a+Math.imul(T,G)|0,r=r+Math.imul(x,Y)|0,i=(i=i+Math.imul(x,$)|0)+Math.imul(w,Y)|0,a=a+Math.imul(w,$)|0,r=r+Math.imul(m,K)|0,i=(i=i+Math.imul(m,Z)|0)+Math.imul(y,K)|0,a=a+Math.imul(y,Z)|0,r=r+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,tt)|0)+Math.imul(g,Q)|0,a=a+Math.imul(g,tt)|0;var wt=(c+(r=r+Math.imul(f,nt)|0)|0)+((8191&(i=(i=i+Math.imul(f,rt)|0)+Math.imul(h,nt)|0))<<13)|0;c=((a=a+Math.imul(h,rt)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,r=Math.imul(C,U),i=(i=Math.imul(C,H))+Math.imul(P,U)|0,a=Math.imul(P,H),r=r+Math.imul(A,q)|0,i=(i=i+Math.imul(A,G)|0)+Math.imul(S,q)|0,a=a+Math.imul(S,G)|0,r=r+Math.imul(k,Y)|0,i=(i=i+Math.imul(k,$)|0)+Math.imul(T,Y)|0,a=a+Math.imul(T,$)|0,r=r+Math.imul(x,K)|0,i=(i=i+Math.imul(x,Z)|0)+Math.imul(w,K)|0,a=a+Math.imul(w,Z)|0,r=r+Math.imul(m,Q)|0,i=(i=i+Math.imul(m,tt)|0)+Math.imul(y,Q)|0,a=a+Math.imul(y,tt)|0,r=r+Math.imul(p,nt)|0,i=(i=i+Math.imul(p,rt)|0)+Math.imul(g,nt)|0,a=a+Math.imul(g,rt)|0;var _t=(c+(r=r+Math.imul(f,at)|0)|0)+((8191&(i=(i=i+Math.imul(f,ot)|0)+Math.imul(h,at)|0))<<13)|0;c=((a=a+Math.imul(h,ot)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,r=Math.imul(O,U),i=(i=Math.imul(O,H))+Math.imul(I,U)|0,a=Math.imul(I,H),r=r+Math.imul(C,q)|0,i=(i=i+Math.imul(C,G)|0)+Math.imul(P,q)|0,a=a+Math.imul(P,G)|0,r=r+Math.imul(A,Y)|0,i=(i=i+Math.imul(A,$)|0)+Math.imul(S,Y)|0,a=a+Math.imul(S,$)|0,r=r+Math.imul(k,K)|0,i=(i=i+Math.imul(k,Z)|0)+Math.imul(T,K)|0,a=a+Math.imul(T,Z)|0,r=r+Math.imul(x,Q)|0,i=(i=i+Math.imul(x,tt)|0)+Math.imul(w,Q)|0,a=a+Math.imul(w,tt)|0,r=r+Math.imul(m,nt)|0,i=(i=i+Math.imul(m,rt)|0)+Math.imul(y,nt)|0,a=a+Math.imul(y,rt)|0,r=r+Math.imul(p,at)|0,i=(i=i+Math.imul(p,ot)|0)+Math.imul(g,at)|0,a=a+Math.imul(g,ot)|0;var kt=(c+(r=r+Math.imul(f,lt)|0)|0)+((8191&(i=(i=i+Math.imul(f,ct)|0)+Math.imul(h,lt)|0))<<13)|0;c=((a=a+Math.imul(h,ct)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,r=Math.imul(R,U),i=(i=Math.imul(R,H))+Math.imul(z,U)|0,a=Math.imul(z,H),r=r+Math.imul(O,q)|0,i=(i=i+Math.imul(O,G)|0)+Math.imul(I,q)|0,a=a+Math.imul(I,G)|0,r=r+Math.imul(C,Y)|0,i=(i=i+Math.imul(C,$)|0)+Math.imul(P,Y)|0,a=a+Math.imul(P,$)|0,r=r+Math.imul(A,K)|0,i=(i=i+Math.imul(A,Z)|0)+Math.imul(S,K)|0,a=a+Math.imul(S,Z)|0,r=r+Math.imul(k,Q)|0,i=(i=i+Math.imul(k,tt)|0)+Math.imul(T,Q)|0,a=a+Math.imul(T,tt)|0,r=r+Math.imul(x,nt)|0,i=(i=i+Math.imul(x,rt)|0)+Math.imul(w,nt)|0,a=a+Math.imul(w,rt)|0,r=r+Math.imul(m,at)|0,i=(i=i+Math.imul(m,ot)|0)+Math.imul(y,at)|0,a=a+Math.imul(y,ot)|0,r=r+Math.imul(p,lt)|0,i=(i=i+Math.imul(p,ct)|0)+Math.imul(g,lt)|0,a=a+Math.imul(g,ct)|0;var Tt=(c+(r=r+Math.imul(f,ft)|0)|0)+((8191&(i=(i=i+Math.imul(f,ht)|0)+Math.imul(h,ft)|0))<<13)|0;c=((a=a+Math.imul(h,ht)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,r=Math.imul(j,U),i=(i=Math.imul(j,H))+Math.imul(F,U)|0,a=Math.imul(F,H),r=r+Math.imul(R,q)|0,i=(i=i+Math.imul(R,G)|0)+Math.imul(z,q)|0,a=a+Math.imul(z,G)|0,r=r+Math.imul(O,Y)|0,i=(i=i+Math.imul(O,$)|0)+Math.imul(I,Y)|0,a=a+Math.imul(I,$)|0,r=r+Math.imul(C,K)|0,i=(i=i+Math.imul(C,Z)|0)+Math.imul(P,K)|0,a=a+Math.imul(P,Z)|0,r=r+Math.imul(A,Q)|0,i=(i=i+Math.imul(A,tt)|0)+Math.imul(S,Q)|0,a=a+Math.imul(S,tt)|0,r=r+Math.imul(k,nt)|0,i=(i=i+Math.imul(k,rt)|0)+Math.imul(T,nt)|0,a=a+Math.imul(T,rt)|0,r=r+Math.imul(x,at)|0,i=(i=i+Math.imul(x,ot)|0)+Math.imul(w,at)|0,a=a+Math.imul(w,ot)|0,r=r+Math.imul(m,lt)|0,i=(i=i+Math.imul(m,ct)|0)+Math.imul(y,lt)|0,a=a+Math.imul(y,ct)|0,r=r+Math.imul(p,ft)|0,i=(i=i+Math.imul(p,ht)|0)+Math.imul(g,ft)|0,a=a+Math.imul(g,ht)|0;var Mt=(c+(r=r+Math.imul(f,pt)|0)|0)+((8191&(i=(i=i+Math.imul(f,gt)|0)+Math.imul(h,pt)|0))<<13)|0;c=((a=a+Math.imul(h,gt)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,r=Math.imul(j,q),i=(i=Math.imul(j,G))+Math.imul(F,q)|0,a=Math.imul(F,G),r=r+Math.imul(R,Y)|0,i=(i=i+Math.imul(R,$)|0)+Math.imul(z,Y)|0,a=a+Math.imul(z,$)|0,r=r+Math.imul(O,K)|0,i=(i=i+Math.imul(O,Z)|0)+Math.imul(I,K)|0,a=a+Math.imul(I,Z)|0,r=r+Math.imul(C,Q)|0,i=(i=i+Math.imul(C,tt)|0)+Math.imul(P,Q)|0,a=a+Math.imul(P,tt)|0,r=r+Math.imul(A,nt)|0,i=(i=i+Math.imul(A,rt)|0)+Math.imul(S,nt)|0,a=a+Math.imul(S,rt)|0,r=r+Math.imul(k,at)|0,i=(i=i+Math.imul(k,ot)|0)+Math.imul(T,at)|0,a=a+Math.imul(T,ot)|0,r=r+Math.imul(x,lt)|0,i=(i=i+Math.imul(x,ct)|0)+Math.imul(w,lt)|0,a=a+Math.imul(w,ct)|0,r=r+Math.imul(m,ft)|0,i=(i=i+Math.imul(m,ht)|0)+Math.imul(y,ft)|0,a=a+Math.imul(y,ht)|0;var At=(c+(r=r+Math.imul(p,pt)|0)|0)+((8191&(i=(i=i+Math.imul(p,gt)|0)+Math.imul(g,pt)|0))<<13)|0;c=((a=a+Math.imul(g,gt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,r=Math.imul(j,Y),i=(i=Math.imul(j,$))+Math.imul(F,Y)|0,a=Math.imul(F,$),r=r+Math.imul(R,K)|0,i=(i=i+Math.imul(R,Z)|0)+Math.imul(z,K)|0,a=a+Math.imul(z,Z)|0,r=r+Math.imul(O,Q)|0,i=(i=i+Math.imul(O,tt)|0)+Math.imul(I,Q)|0,a=a+Math.imul(I,tt)|0,r=r+Math.imul(C,nt)|0,i=(i=i+Math.imul(C,rt)|0)+Math.imul(P,nt)|0,a=a+Math.imul(P,rt)|0,r=r+Math.imul(A,at)|0,i=(i=i+Math.imul(A,ot)|0)+Math.imul(S,at)|0,a=a+Math.imul(S,ot)|0,r=r+Math.imul(k,lt)|0,i=(i=i+Math.imul(k,ct)|0)+Math.imul(T,lt)|0,a=a+Math.imul(T,ct)|0,r=r+Math.imul(x,ft)|0,i=(i=i+Math.imul(x,ht)|0)+Math.imul(w,ft)|0,a=a+Math.imul(w,ht)|0;var St=(c+(r=r+Math.imul(m,pt)|0)|0)+((8191&(i=(i=i+Math.imul(m,gt)|0)+Math.imul(y,pt)|0))<<13)|0;c=((a=a+Math.imul(y,gt)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,r=Math.imul(j,K),i=(i=Math.imul(j,Z))+Math.imul(F,K)|0,a=Math.imul(F,Z),r=r+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,tt)|0)+Math.imul(z,Q)|0,a=a+Math.imul(z,tt)|0,r=r+Math.imul(O,nt)|0,i=(i=i+Math.imul(O,rt)|0)+Math.imul(I,nt)|0,a=a+Math.imul(I,rt)|0,r=r+Math.imul(C,at)|0,i=(i=i+Math.imul(C,ot)|0)+Math.imul(P,at)|0,a=a+Math.imul(P,ot)|0,r=r+Math.imul(A,lt)|0,i=(i=i+Math.imul(A,ct)|0)+Math.imul(S,lt)|0,a=a+Math.imul(S,ct)|0,r=r+Math.imul(k,ft)|0,i=(i=i+Math.imul(k,ht)|0)+Math.imul(T,ft)|0,a=a+Math.imul(T,ht)|0;var Et=(c+(r=r+Math.imul(x,pt)|0)|0)+((8191&(i=(i=i+Math.imul(x,gt)|0)+Math.imul(w,pt)|0))<<13)|0;c=((a=a+Math.imul(w,gt)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,r=Math.imul(j,Q),i=(i=Math.imul(j,tt))+Math.imul(F,Q)|0,a=Math.imul(F,tt),r=r+Math.imul(R,nt)|0,i=(i=i+Math.imul(R,rt)|0)+Math.imul(z,nt)|0,a=a+Math.imul(z,rt)|0,r=r+Math.imul(O,at)|0,i=(i=i+Math.imul(O,ot)|0)+Math.imul(I,at)|0,a=a+Math.imul(I,ot)|0,r=r+Math.imul(C,lt)|0,i=(i=i+Math.imul(C,ct)|0)+Math.imul(P,lt)|0,a=a+Math.imul(P,ct)|0,r=r+Math.imul(A,ft)|0,i=(i=i+Math.imul(A,ht)|0)+Math.imul(S,ft)|0,a=a+Math.imul(S,ht)|0;var Ct=(c+(r=r+Math.imul(k,pt)|0)|0)+((8191&(i=(i=i+Math.imul(k,gt)|0)+Math.imul(T,pt)|0))<<13)|0;c=((a=a+Math.imul(T,gt)|0)+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,r=Math.imul(j,nt),i=(i=Math.imul(j,rt))+Math.imul(F,nt)|0,a=Math.imul(F,rt),r=r+Math.imul(R,at)|0,i=(i=i+Math.imul(R,ot)|0)+Math.imul(z,at)|0,a=a+Math.imul(z,ot)|0,r=r+Math.imul(O,lt)|0,i=(i=i+Math.imul(O,ct)|0)+Math.imul(I,lt)|0,a=a+Math.imul(I,ct)|0,r=r+Math.imul(C,ft)|0,i=(i=i+Math.imul(C,ht)|0)+Math.imul(P,ft)|0,a=a+Math.imul(P,ht)|0;var Pt=(c+(r=r+Math.imul(A,pt)|0)|0)+((8191&(i=(i=i+Math.imul(A,gt)|0)+Math.imul(S,pt)|0))<<13)|0;c=((a=a+Math.imul(S,gt)|0)+(i>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,r=Math.imul(j,at),i=(i=Math.imul(j,ot))+Math.imul(F,at)|0,a=Math.imul(F,ot),r=r+Math.imul(R,lt)|0,i=(i=i+Math.imul(R,ct)|0)+Math.imul(z,lt)|0,a=a+Math.imul(z,ct)|0,r=r+Math.imul(O,ft)|0,i=(i=i+Math.imul(O,ht)|0)+Math.imul(I,ft)|0,a=a+Math.imul(I,ht)|0;var Lt=(c+(r=r+Math.imul(C,pt)|0)|0)+((8191&(i=(i=i+Math.imul(C,gt)|0)+Math.imul(P,pt)|0))<<13)|0;c=((a=a+Math.imul(P,gt)|0)+(i>>>13)|0)+(Lt>>>26)|0,Lt&=67108863,r=Math.imul(j,lt),i=(i=Math.imul(j,ct))+Math.imul(F,lt)|0,a=Math.imul(F,ct),r=r+Math.imul(R,ft)|0,i=(i=i+Math.imul(R,ht)|0)+Math.imul(z,ft)|0,a=a+Math.imul(z,ht)|0;var Ot=(c+(r=r+Math.imul(O,pt)|0)|0)+((8191&(i=(i=i+Math.imul(O,gt)|0)+Math.imul(I,pt)|0))<<13)|0;c=((a=a+Math.imul(I,gt)|0)+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,r=Math.imul(j,ft),i=(i=Math.imul(j,ht))+Math.imul(F,ft)|0,a=Math.imul(F,ht);var It=(c+(r=r+Math.imul(R,pt)|0)|0)+((8191&(i=(i=i+Math.imul(R,gt)|0)+Math.imul(z,pt)|0))<<13)|0;c=((a=a+Math.imul(z,gt)|0)+(i>>>13)|0)+(It>>>26)|0,It&=67108863;var Dt=(c+(r=Math.imul(j,pt))|0)+((8191&(i=(i=Math.imul(j,gt))+Math.imul(F,pt)|0))<<13)|0;return c=((a=Math.imul(F,gt))+(i>>>13)|0)+(Dt>>>26)|0,Dt&=67108863,l[0]=vt,l[1]=mt,l[2]=yt,l[3]=bt,l[4]=xt,l[5]=wt,l[6]=_t,l[7]=kt,l[8]=Tt,l[9]=Mt,l[10]=At,l[11]=St,l[12]=Et,l[13]=Ct,l[14]=Pt,l[15]=Lt,l[16]=Ot,l[17]=It,l[18]=Dt,0!==c&&(l[19]=c,n.length++),n};function g(t,e,n){return(new v).mulp(t,e,n)}function v(t,e){this.x=t,this.y=e}Math.imul||(p=d),a.prototype.mulTo=function(t,e){var n,r=this.length+t.length;return n=10===this.length&&10===t.length?p(this,t,e):r<63?d(this,t,e):r<1024?function(t,e,n){n.negative=e.negative^t.negative,n.length=t.length+e.length;for(var r=0,i=0,a=0;a>>26)|0)>>>26,o&=67108863}n.words[a]=s,r=o,o=i}return 0!==r?n.words[a]=r:n.length--,n.strip()}(this,t,e):g(this,t,e),n},v.prototype.makeRBT=function(t){for(var e=new Array(t),n=a.prototype._countBits(t)-1,r=0;r>=1;return r},v.prototype.permute=function(t,e,n,r,i,a){for(var o=0;o>>=1)i++;return 1<>>=13,n[2*o+1]=8191&a,a>>>=13;for(o=2*e;o>=26,e+=i/67108864|0,e+=a>>>26,this.words[n]=67108863&a}return 0!==e&&(this.words[n]=e,this.length++),this},a.prototype.muln=function(t){return this.clone().imuln(t)},a.prototype.sqr=function(){return this.mul(this)},a.prototype.isqr=function(){return this.imul(this.clone())},a.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),n=0;n>>i}return e}(t);if(0===e.length)return new a(1);for(var n=this,r=0;r=0);var e,n=t%26,i=(t-n)/26,a=67108863>>>26-n<<26-n;if(0!==n){var o=0;for(e=0;e>>26-n}o&&(this.words[e]=o,this.length++)}if(0!==i){for(e=this.length-1;e>=0;e--)this.words[e+i]=this.words[e];for(e=0;e=0),i=e?(e-e%26)/26:0;var a=t%26,o=Math.min((t-a)/26,this.length),s=67108863^67108863>>>a<o)for(this.length-=o,c=0;c=0&&(0!==u||c>=i);c--){var f=0|this.words[c];this.words[c]=u<<26-a|f>>>a,u=f&s}return l&&0!==u&&(l.words[l.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},a.prototype.ishrn=function(t,e,n){return r(0===this.negative),this.iushrn(t,e,n)},a.prototype.shln=function(t){return this.clone().ishln(t)},a.prototype.ushln=function(t){return this.clone().iushln(t)},a.prototype.shrn=function(t){return this.clone().ishrn(t)},a.prototype.ushrn=function(t){return this.clone().iushrn(t)},a.prototype.testn=function(t){r("number"===typeof t&&t>=0);var e=t%26,n=(t-e)/26,i=1<=0);var e=t%26,n=(t-e)/26;if(r(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==e&&n++,this.length=Math.min(n,this.length),0!==e){var i=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},a.prototype.isubn=function(t){if(r("number"===typeof t),r(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(l/67108864|0),this.words[i+n]=67108863&a}for(;i>26,this.words[i+n]=67108863&a;if(0===s)return this.strip();for(r(-1===s),s=0,i=0;i>26,this.words[i]=67108863&a;return this.negative=1,this.strip()},a.prototype._wordDiv=function(t,e){var n=(this.length,t.length),r=this.clone(),i=t,o=0|i.words[i.length-1];0!==(n=26-this._countBits(o))&&(i=i.ushln(n),r.iushln(n),o=0|i.words[i.length-1]);var s,l=r.length-i.length;if("mod"!==e){(s=new a(null)).length=l+1,s.words=new Array(s.length);for(var c=0;c=0;f--){var h=67108864*(0|r.words[i.length+f])+(0|r.words[i.length+f-1]);for(h=Math.min(h/o|0,67108863),r._ishlnsubmul(i,h,f);0!==r.negative;)h--,r.negative=0,r._ishlnsubmul(i,1,f),r.isZero()||(r.negative^=1);s&&(s.words[f]=h)}return s&&s.strip(),r.strip(),"div"!==e&&0!==n&&r.iushrn(n),{div:s||null,mod:r}},a.prototype.divmod=function(t,e,n){return r(!t.isZero()),this.isZero()?{div:new a(0),mod:new a(0)}:0!==this.negative&&0===t.negative?(s=this.neg().divmod(t,e),"mod"!==e&&(i=s.div.neg()),"div"!==e&&(o=s.mod.neg(),n&&0!==o.negative&&o.iadd(t)),{div:i,mod:o}):0===this.negative&&0!==t.negative?(s=this.divmod(t.neg(),e),"mod"!==e&&(i=s.div.neg()),{div:i,mod:s.mod}):0!==(this.negative&t.negative)?(s=this.neg().divmod(t.neg(),e),"div"!==e&&(o=s.mod.neg(),n&&0!==o.negative&&o.isub(t)),{div:s.div,mod:o}):t.length>this.length||this.cmp(t)<0?{div:new a(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new a(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new a(this.modn(t.words[0]))}:this._wordDiv(t,e);var i,o,s},a.prototype.div=function(t){return this.divmod(t,"div",!1).div},a.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},a.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},a.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var n=0!==e.div.negative?e.mod.isub(t):e.mod,r=t.ushrn(1),i=t.andln(1),a=n.cmp(r);return a<0||1===i&&0===a?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},a.prototype.modn=function(t){r(t<=67108863);for(var e=(1<<26)%t,n=0,i=this.length-1;i>=0;i--)n=(e*n+(0|this.words[i]))%t;return n},a.prototype.idivn=function(t){r(t<=67108863);for(var e=0,n=this.length-1;n>=0;n--){var i=(0|this.words[n])+67108864*e;this.words[n]=i/t|0,e=i%t}return this.strip()},a.prototype.divn=function(t){return this.clone().idivn(t)},a.prototype.egcd=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i=new a(1),o=new a(0),s=new a(0),l=new a(1),c=0;e.isEven()&&n.isEven();)e.iushrn(1),n.iushrn(1),++c;for(var u=n.clone(),f=e.clone();!e.isZero();){for(var h=0,d=1;0===(e.words[0]&d)&&h<26;++h,d<<=1);if(h>0)for(e.iushrn(h);h-- >0;)(i.isOdd()||o.isOdd())&&(i.iadd(u),o.isub(f)),i.iushrn(1),o.iushrn(1);for(var p=0,g=1;0===(n.words[0]&g)&&p<26;++p,g<<=1);if(p>0)for(n.iushrn(p);p-- >0;)(s.isOdd()||l.isOdd())&&(s.iadd(u),l.isub(f)),s.iushrn(1),l.iushrn(1);e.cmp(n)>=0?(e.isub(n),i.isub(s),o.isub(l)):(n.isub(e),s.isub(i),l.isub(o))}return{a:s,b:l,gcd:n.iushln(c)}},a.prototype._invmp=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i,o=new a(1),s=new a(0),l=n.clone();e.cmpn(1)>0&&n.cmpn(1)>0;){for(var c=0,u=1;0===(e.words[0]&u)&&c<26;++c,u<<=1);if(c>0)for(e.iushrn(c);c-- >0;)o.isOdd()&&o.iadd(l),o.iushrn(1);for(var f=0,h=1;0===(n.words[0]&h)&&f<26;++f,h<<=1);if(f>0)for(n.iushrn(f);f-- >0;)s.isOdd()&&s.iadd(l),s.iushrn(1);e.cmp(n)>=0?(e.isub(n),o.isub(s)):(n.isub(e),s.isub(o))}return(i=0===e.cmpn(1)?o:s).cmpn(0)<0&&i.iadd(t),i},a.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),n=t.clone();e.negative=0,n.negative=0;for(var r=0;e.isEven()&&n.isEven();r++)e.iushrn(1),n.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;n.isEven();)n.iushrn(1);var i=e.cmp(n);if(i<0){var a=e;e=n,n=a}else if(0===i||0===n.cmpn(1))break;e.isub(n)}return n.iushln(r)},a.prototype.invm=function(t){return this.egcd(t).a.umod(t)},a.prototype.isEven=function(){return 0===(1&this.words[0])},a.prototype.isOdd=function(){return 1===(1&this.words[0])},a.prototype.andln=function(t){return this.words[0]&t},a.prototype.bincn=function(t){r("number"===typeof t);var e=t%26,n=(t-e)/26,i=1<>>26,s&=67108863,this.words[o]=s}return 0!==a&&(this.words[o]=a,this.length++),this},a.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},a.prototype.cmpn=function(t){var e,n=t<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)e=1;else{n&&(t=-t),r(t<=67108863,"Number is too big");var i=0|this.words[0];e=i===t?0:it.length)return 1;if(this.length=0;n--){var r=0|this.words[n],i=0|t.words[n];if(r!==i){ri&&(e=1);break}}return e},a.prototype.gtn=function(t){return 1===this.cmpn(t)},a.prototype.gt=function(t){return 1===this.cmp(t)},a.prototype.gten=function(t){return this.cmpn(t)>=0},a.prototype.gte=function(t){return this.cmp(t)>=0},a.prototype.ltn=function(t){return-1===this.cmpn(t)},a.prototype.lt=function(t){return-1===this.cmp(t)},a.prototype.lten=function(t){return this.cmpn(t)<=0},a.prototype.lte=function(t){return this.cmp(t)<=0},a.prototype.eqn=function(t){return 0===this.cmpn(t)},a.prototype.eq=function(t){return 0===this.cmp(t)},a.red=function(t){return new k(t)},a.prototype.toRed=function(t){return r(!this.red,"Already a number in reduction context"),r(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},a.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},a.prototype._forceRed=function(t){return this.red=t,this},a.prototype.forceRed=function(t){return r(!this.red,"Already a number in reduction context"),this._forceRed(t)},a.prototype.redAdd=function(t){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},a.prototype.redIAdd=function(t){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},a.prototype.redSub=function(t){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},a.prototype.redISub=function(t){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},a.prototype.redShl=function(t){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},a.prototype.redMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},a.prototype.redIMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},a.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},a.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},a.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},a.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},a.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},a.prototype.redPow=function(t){return r(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var m={k256:null,p224:null,p192:null,p25519:null};function y(t,e){this.name=t,this.p=new a(e,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function b(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function x(){y.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function w(){y.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function _(){y.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function k(t){if("string"===typeof t){var e=a._prime(t);this.m=e.p,this.prime=e}else r(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function T(t){k.call(this,t),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new a(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)}y.prototype._tmp=function(){var t=new a(null);return t.words=new Array(Math.ceil(this.n/13)),t},y.prototype.ireduce=function(t){var e,n=t;do{this.split(n,this.tmp),e=(n=(n=this.imulK(n)).iadd(this.tmp)).bitLength()}while(e>this.n);var r=e0?n.isub(this.p):void 0!==n.strip?n.strip():n._strip(),n},y.prototype.split=function(t,e){t.iushrn(this.n,0,e)},y.prototype.imulK=function(t){return t.imul(this.k)},i(b,y),b.prototype.split=function(t,e){for(var n=4194303,r=Math.min(t.length,9),i=0;i>>22,a=o}a>>>=22,t.words[i-10]=a,0===a&&t.length>10?t.length-=10:t.length-=9},b.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,n=0;n>>=26,t.words[n]=i,e=r}return 0!==e&&(t.words[t.length++]=e),t},a._prime=function(t){if(m[t])return m[t];var e;if("k256"===t)e=new b;else if("p224"===t)e=new x;else if("p192"===t)e=new w;else{if("p25519"!==t)throw new Error("Unknown prime "+t);e=new _}return m[t]=e,e},k.prototype._verify1=function(t){r(0===t.negative,"red works only with positives"),r(t.red,"red works only with red numbers")},k.prototype._verify2=function(t,e){r(0===(t.negative|e.negative),"red works only with positives"),r(t.red&&t.red===e.red,"red works only with red numbers")},k.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},k.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},k.prototype.add=function(t,e){this._verify2(t,e);var n=t.add(e);return n.cmp(this.m)>=0&&n.isub(this.m),n._forceRed(this)},k.prototype.iadd=function(t,e){this._verify2(t,e);var n=t.iadd(e);return n.cmp(this.m)>=0&&n.isub(this.m),n},k.prototype.sub=function(t,e){this._verify2(t,e);var n=t.sub(e);return n.cmpn(0)<0&&n.iadd(this.m),n._forceRed(this)},k.prototype.isub=function(t,e){this._verify2(t,e);var n=t.isub(e);return n.cmpn(0)<0&&n.iadd(this.m),n},k.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},k.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},k.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},k.prototype.isqr=function(t){return this.imul(t,t.clone())},k.prototype.sqr=function(t){return this.mul(t,t)},k.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(r(e%2===1),3===e){var n=this.m.add(new a(1)).iushrn(2);return this.pow(t,n)}for(var i=this.m.subn(1),o=0;!i.isZero()&&0===i.andln(1);)o++,i.iushrn(1);r(!i.isZero());var s=new a(1).toRed(this),l=s.redNeg(),c=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new a(2*u*u).toRed(this);0!==this.pow(u,c).cmp(l);)u.redIAdd(l);for(var f=this.pow(u,i),h=this.pow(t,i.addn(1).iushrn(1)),d=this.pow(t,i),p=o;0!==d.cmp(s);){for(var g=d,v=0;0!==g.cmp(s);v++)g=g.redSqr();r(v=0;r--){for(var c=e.words[r],u=l-1;u>=0;u--){var f=c>>u&1;i!==n[0]&&(i=this.sqr(i)),0!==f||0!==o?(o<<=1,o|=f,(4===++s||0===r&&0===u)&&(i=this.mul(i,n[o]),s=0,o=0)):s=0}l=26}return i},k.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},k.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},a.mont=function(t){return new T(t)},i(T,k),T.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},T.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},T.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var n=t.imul(e),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},T.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new a(0)._forceRed(this);var n=t.mul(e),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},T.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t=n.nmd(t),this)},2692:function(t){"use strict";t.exports=function(t){var e,n,r,i=t.length,a=0;for(e=0;e>>1;if(!(u<=0)){var f,h=i.mallocDouble(2*u*s),d=i.mallocInt32(s);if((s=l(t,u,h,d))>0){if(1===u&&r)a.init(s),f=a.sweepComplete(u,n,0,s,h,d,0,s,h,d);else{var p=i.mallocDouble(2*u*c),g=i.mallocInt32(c);(c=l(e,u,p,g))>0&&(a.init(s+c),f=1===u?a.sweepBipartite(u,n,0,s,h,d,0,c,p,g):o(u,n,r,s,h,d,c,p,g),i.free(p),i.free(g))}i.free(h),i.free(d)}return f}}}function u(t,e){r.push([t,e])}},7333:function(t,e){"use strict";function n(t){return t?function(t,e,n,r,i,a,o,s,l,c,u){return i-r>l-s?function(t,e,n,r,i,a,o,s,l,c,u){for(var f=2*t,h=r,d=f*r;hc-l?r?function(t,e,n,r,i,a,o,s,l,c,u){for(var f=2*t,h=r,d=f*r;h0;){var D=(O-=1)*x,R=_[D],z=_[D+1],N=_[D+2],j=_[D+3],F=_[D+4],B=_[D+5],U=O*w,H=k[U],V=k[U+1],q=1&B,G=!!(16&B),W=u,Y=S,$=C,X=P;if(q&&(W=C,Y=P,$=u,X=S),!(2&B&&z>=(N=v(t,R,z,N,W,Y,V)))&&!(4&B&&(z=m(t,R,z,N,W,Y,H))>=N)){var K=N-z,Z=F-j;if(G){if(t*K*(K+Z)=p0)&&!(p1>=hi)"),g=u("lo===p0"),v=u("lo>>1,h=2*t,d=f,p=s[h*f+e];c=b?(d=y,p=b):m>=w?(d=v,p=m):(d=x,p=w):b>=w?(d=y,p=b):w>=m?(d=v,p=m):(d=x,p=w);for(var _=h*(u-1),k=h*d,T=0;Tn&&i[f+e]>c;--u,f-=o){for(var h=f,d=f+o,p=0;ph;++h,l+=s)if(i[l+f]===o)if(u===h)u+=1,c+=s;else{for(var d=0;s>d;++d){var p=i[l+d];i[l+d]=i[c],i[c++]=p}var g=a[h];a[h]=a[u],a[u++]=g}return u},"loh;++h,l+=s)if(i[l+f]d;++d){var p=i[l+d];i[l+d]=i[c],i[c++]=p}var g=a[h];a[h]=a[u],a[u++]=g}return u},"lo<=p0":function(t,e,n,r,i,a,o){for(var s=2*t,l=s*n,c=l,u=n,f=t+e,h=n;r>h;++h,l+=s)if(i[l+f]<=o)if(u===h)u+=1,c+=s;else{for(var d=0;s>d;++d){var p=i[l+d];i[l+d]=i[c],i[c++]=p}var g=a[h];a[h]=a[u],a[u++]=g}return u},"hi<=p0":function(t,e,n,r,i,a,o){for(var s=2*t,l=s*n,c=l,u=n,f=t+e,h=n;r>h;++h,l+=s)if(i[l+f]<=o)if(u===h)u+=1,c+=s;else{for(var d=0;s>d;++d){var p=i[l+d];i[l+d]=i[c],i[c++]=p}var g=a[h];a[h]=a[u],a[u++]=g}return u},"lod;++d,l+=s){var p=i[l+f],g=i[l+h];if(pv;++v){var m=i[l+v];i[l+v]=i[c],i[c++]=m}var y=a[d];a[d]=a[u],a[u++]=y}}return u},"lo<=p0&&p0<=hi":function(t,e,n,r,i,a,o){for(var s=2*t,l=s*n,c=l,u=n,f=e,h=t+e,d=n;r>d;++d,l+=s){var p=i[l+f],g=i[l+h];if(p<=o&&o<=g)if(u===d)u+=1,c+=s;else{for(var v=0;s>v;++v){var m=i[l+v];i[l+v]=i[c],i[c++]=m}var y=a[d];a[d]=a[u],a[u++]=y}}return u},"!(lo>=p0)&&!(p1>=hi)":function(t,e,n,r,i,a,o,s){for(var l=2*t,c=l*n,u=c,f=n,h=e,d=t+e,p=n;r>p;++p,c+=l){var g=i[c+h],v=i[c+d];if(!(g>=o)&&!(s>=v))if(f===p)f+=1,u+=l;else{for(var m=0;l>m;++m){var y=i[c+m];i[c+m]=i[u],i[u++]=y}var b=a[p];a[p]=a[f],a[f++]=b}}return f}}},309:function(t){"use strict";t.exports=function(t,r){r<=4*e?n(0,r-1,t):c(0,r-1,t)};var e=32;function n(t,e,n){for(var r=2*(t+1),i=t+1;i<=e;++i){for(var a=n[r++],o=n[r++],s=i,l=r-2;s-- >t;){var c=n[l-2],u=n[l-1];if(cn[e+1])}function l(t,e,n,r){var i=r[t*=2];return i>1,v=g-h,m=g+h,y=d,b=v,x=g,w=m,_=p,k=t+1,T=u-1,M=0;s(y,b,f)&&(M=y,y=b,b=M),s(w,_,f)&&(M=w,w=_,_=M),s(y,x,f)&&(M=y,y=x,x=M),s(b,x,f)&&(M=b,b=x,x=M),s(y,w,f)&&(M=y,y=w,w=M),s(x,w,f)&&(M=x,x=w,w=M),s(b,_,f)&&(M=b,b=_,_=M),s(b,x,f)&&(M=b,b=x,x=M),s(w,_,f)&&(M=w,w=_,_=M);for(var A=f[2*b],S=f[2*b+1],E=f[2*w],C=f[2*w+1],P=2*y,L=2*x,O=2*_,I=2*d,D=2*g,R=2*p,z=0;z<2;++z){var N=f[P+z],j=f[L+z],F=f[O+z];f[I+z]=N,f[D+z]=j,f[R+z]=F}i(v,t,f),i(m,u,f);for(var B=k;B<=T;++B)if(l(B,A,S,f))B!==k&&r(B,k,f),++k;else if(!l(B,E,C,f))for(;;){if(l(T,E,C,f)){l(T,A,S,f)?(a(B,k,T,f),++k,--T):(r(B,T,f),--T);break}if(--T>>1;a(p,S);var E=0,C=0;for(k=0;k=o)g(u,f,C--,P=P-o|0);else if(P>=0)g(l,c,E--,P);else if(P<=-o){P=-P-o|0;for(var L=0;L>>1;a(p,E);var C=0,P=0,L=0;for(T=0;T>1===p[2*T+3]>>1&&(I=2,T+=1),O<0){for(var D=-(O>>1)-1,R=0;R>1)-1,0===I?g(l,c,C--,D):1===I?g(u,f,P--,D):2===I&&g(h,d,L--,D)}},scanBipartite:function(t,e,n,r,i,s,u,f,h,d,m,y){var b=0,x=2*t,w=e,_=e+t,k=1,T=1;r?T=o:k=o;for(var M=i;M>>1;a(p,C);var P=0;for(M=0;M=o?(O=!r,A-=o):(O=!!r,A-=1),O)v(l,c,P++,A);else{var I=y[A],D=x*A,R=m[D+e+1],z=m[D+e+1+t];t:for(var N=0;N>>1;a(p,k);var T=0;for(b=0;b=o)l[T++]=x-o;else{var A=d[x-=1],S=v*x,E=h[S+e+1],C=h[S+e+1+t];t:for(var P=0;P=0;--P)if(l[P]===x){for(D=P+1;D0;){for(var d=n.pop(),p=(u=-1,f=-1,l=o[s=n.pop()],1);p=0||(e.flip(s,d),i(t,e,n,u,s,f),i(t,e,n,s,f,u),i(t,e,n,f,d,u),i(t,e,n,d,u,f))}}},7098:function(t,e,n){"use strict";var r=n(5070);function i(t,e,n,r,i,a,o){this.cells=t,this.neighbor=e,this.flags=r,this.constraint=n,this.active=i,this.next=a,this.boundary=o}function a(t,e){return t[0]-e[0]||t[1]-e[1]||t[2]-e[2]}t.exports=function(t,e,n){var r=function(t,e){for(var n=t.cells(),r=n.length,o=0;o0||l.length>0;){for(;s.length>0;){var d=s.pop();if(c[d]!==-o){c[d]=o,u[d];for(var p=0;p<3;++p){var g=h[3*d+p];g>=0&&0===c[g]&&(f[3*d+p]?l.push(g):(s.push(g),c[g]=o))}}}var v=l;l=s,s=v,l.length=0,o=-o}var m=function(t,e,n){for(var r=0,i=0;i1&&i(n[h[d-2]],n[h[d-1]],a)>0;)t.push([h[d-1],h[d-2],o]),d-=1;h.length=d,h.push(o);var p=u.upperIds;for(d=p.length;d>1&&i(n[p[d-2]],n[p[d-1]],a)<0;)t.push([p[d-2],p[d-1],o]),d-=1;p.length=d,p.push(o)}}function d(t,e){var n;return(n=t.a[0]m[0]&&i.push(new c(m,v,s,f),new c(v,m,o,f))}i.sort(u);for(var y=i[0].a[0]-(1+Math.abs(i[0].a[0]))*Math.pow(2,-52),b=[new l([y,1],[y,0],-1,[],[],[],[])],x=[],w=(f=0,i.length);f=0}}(),a.removeTriangle=function(t,e,n){var r=this.stars;o(r[t],e,n),o(r[e],n,t),o(r[n],t,e)},a.addTriangle=function(t,e,n){var r=this.stars;r[t].push(e,n),r[e].push(n,t),r[n].push(t,e)},a.opposite=function(t,e){for(var n=this.stars[e],r=1,i=n.length;re[2]?1:0)}function m(t,e,n){if(0!==t.length){if(e)for(var r=0;r=0;--a){var b=e[u=(S=r[a])[0]],x=b[0],w=b[1],_=t[x],k=t[w];if((_[0]-k[0]||_[1]-k[1])<0){var T=x;x=w,w=T}b[0]=x;var M,A=b[1]=S[1];for(i&&(M=b[2]);a>0&&r[a-1][0]===u;){var S,E=(S=r[--a])[1];i?e.push([A,E,M]):e.push([A,E]),A=E}i?e.push([A,w,M]):e.push([A,w])}return h}(t,e,h,v,n),b=p(t,y);return m(e,b,n),!!b||h.length>0||v.length>0}},5528:function(t,e,n){"use strict";t.exports=function(t,e,n,r){var a=s(e,t),f=s(r,n),h=u(a,f);if(0===o(h))return null;var d=s(t,n),p=u(f,d),g=i(p,h),v=c(a,g);return l(t,v)};var r=n(3962),i=n(9189),a=n(4354),o=n(4951),s=n(6695),l=n(7584),c=n(4469);function u(t,e){return a(r(t[0],e[1]),r(t[1],e[0]))}},5692:function(t){t.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(t,e,n){"use strict";var r=n(5692),i=n(3578);function a(t){return[t[0]/255,t[1]/255,t[2]/255,t[3]]}function o(t){for(var e,n="#",r=0;r<3;++r)n+=("00"+(e=(e=t[r]).toString(16))).substr(e.length);return n}function s(t){return"rgba("+t.join(",")+")"}t.exports=function(t){var e,n,l,c,u,f,h,d,p,g;if(t||(t={}),d=(t.nshades||72)-1,h=t.format||"hex",(f=t.colormap)||(f="jet"),"string"===typeof f){if(f=f.toLowerCase(),!r[f])throw Error(f+" not a supported colorscale");u=r[f]}else{if(!Array.isArray(f))throw Error("unsupported colormap option",f);u=f.slice()}if(u.length>d+1)throw new Error(f+" map requires nshades to be at least size "+u.length);p=Array.isArray(t.alpha)?2!==t.alpha.length?[1,1]:t.alpha.slice():"number"===typeof t.alpha?[t.alpha,t.alpha]:[1,1],e=u.map((function(t){return Math.round(t.index*d)})),p[0]=Math.min(Math.max(p[0],0),1),p[1]=Math.min(Math.max(p[1],0),1);var v=u.map((function(t,e){var n=u[e].index,r=u[e].rgb.slice();return 4===r.length&&r[3]>=0&&r[3]<=1||(r[3]=p[0]+(p[1]-p[0])*n),r})),m=[];for(g=0;g0||l(t,e,a)?-1:1:0===s?c>0||l(t,e,n)?1:-1:i(c-s)}var f=r(t,e,n);return f>0?o>0&&r(t,e,a)>0?1:-1:f<0?o>0||r(t,e,a)>0?1:-1:r(t,e,a)>0||l(t,e,n)?1:-1};var r=n(417),i=n(7538),a=n(87),o=n(2019),s=n(9662);function l(t,e,n){var r=a(t[0],-e[0]),i=a(t[1],-e[1]),l=a(n[0],-e[0]),c=a(n[1],-e[1]),u=s(o(r,l),o(i,c));return u[u.length-1]>=0}},7538:function(t){"use strict";t.exports=function(t){return t<0?-1:t>0?1:0}},9209:function(t){t.exports=function(t,r){var i=t.length,a=t.length-r.length;if(a)return a;switch(i){case 0:return 0;case 1:return t[0]-r[0];case 2:return t[0]+t[1]-r[0]-r[1]||e(t[0],t[1])-e(r[0],r[1]);case 3:var o=t[0]+t[1],s=r[0]+r[1];if(a=o+t[2]-(s+r[2]))return a;var l=e(t[0],t[1]),c=e(r[0],r[1]);return e(l,t[2])-e(c,r[2])||e(l+t[2],o)-e(c+r[2],s);case 4:var u=t[0],f=t[1],h=t[2],d=t[3],p=r[0],g=r[1],v=r[2],m=r[3];return u+f+h+d-(p+g+v+m)||e(u,f,h,d)-e(p,g,v,m,p)||e(u+f,u+h,u+d,f+h,f+d,h+d)-e(p+g,p+v,p+m,g+v,g+m,v+m)||e(u+f+h,u+f+d,u+h+d,f+h+d)-e(p+g+v,p+g+m,p+v+m,g+v+m);default:for(var y=t.slice().sort(n),b=r.slice().sort(n),x=0;xt[n][0]&&(n=r);return en?[[n],[e]]:[[e]]}},8722:function(t,e,n){"use strict";t.exports=function(t){var e=r(t),n=e.length;if(n<=2)return[];for(var i=new Array(n),a=e[n-1],o=0;o=e[l]&&(s+=1);a[o]=s}}return t}(r(a,!0),n)}};var r=n(2183),i=n(2153)},9680:function(t){"use strict";t.exports=function(t,e,n,r,i,a){var o=i-1,s=i*i,l=o*o,c=(1+2*i)*l,u=i*l,f=s*(3-2*i),h=s*o;if(t.length){a||(a=new Array(t.length));for(var d=t.length-1;d>=0;--d)a[d]=c*t[d]+u*e[d]+f*n[d]+h*r[d];return a}return c*t+u*e+f*n+h*r},t.exports.derivative=function(t,e,n,r,i,a){var o=6*i*i-6*i,s=3*i*i-4*i+1,l=-6*i*i+6*i,c=3*i*i-2*i;if(t.length){a||(a=new Array(t.length));for(var u=t.length-1;u>=0;--u)a[u]=o*t[u]+s*e[u]+l*n[u]+c*r[u];return a}return o*t+s*e+l*n[u]+c*r}},4419:function(t,e,n){"use strict";var r=n(2183),i=n(1215);function a(t,e){this.point=t,this.index=e}function o(t,e){for(var n=t.point,r=e.point,i=n.length,a=0;a=2)return!1;t[n]=r}return!0})):w.filter((function(t){for(var e=0;e<=s;++e){var n=m[t[e]];if(n<0)return!1;t[e]=n}return!0})),1&s)for(u=0;u>>31},t.exports.exponent=function(e){return(t.exports.hi(e)<<1>>>21)-1023},t.exports.fraction=function(e){var n=t.exports.lo(e),r=t.exports.hi(e),i=1048575&r;return 2146435072&r&&(i+=1<<20),[n,i]},t.exports.denormalized=function(e){return!(2146435072&t.exports.hi(e))}},3094:function(t){"use strict";function e(t,n,r){var i=0|t[r];if(i<=0)return[];var a,o=new Array(i);if(r===t.length-1)for(a=0;a0)return function(t,e){var n,r;for(n=new Array(t),r=0;r=n-1){h=l.length-1;var p=t-e[n-1];for(d=0;d=n-1)for(var u=s.length-1,f=(e[n-1],0);f=0;--n)if(t[--e])return!1;return!0},s.jump=function(t){var e=this.lastT(),n=this.dimension;if(!(t0;--f)r.push(a(l[f-1],c[f-1],arguments[f])),i.push(0)}},s.push=function(t){var e=this.lastT(),n=this.dimension;if(!(t1e-6?1/s:0;this._time.push(t);for(var h=n;h>0;--h){var d=a(c[h-1],u[h-1],arguments[h]);r.push(d),i.push((d-r[o++])*f)}}},s.set=function(t){var e=this.dimension;if(!(t0;--l)n.push(a(o[l-1],s[l-1],arguments[l])),r.push(0)}},s.move=function(t){var e=this.lastT(),n=this.dimension;if(!(t<=e||arguments.length!==n+1)){var r=this._state,i=this._velocity,o=r.length-this.dimension,s=this.bounds,l=s[0],c=s[1],u=t-e,f=u>1e-6?1/u:0;this._time.push(t);for(var h=n;h>0;--h){var d=arguments[h];r.push(a(l[h-1],c[h-1],r[o++]+d)),i.push(d*f)}}},s.idle=function(t){var e=this.lastT();if(!(t=0;--f)r.push(a(l[f],c[f],r[o]+u*i[o])),i.push(0),o+=1}}},7080:function(t){"use strict";t.exports=function(t){return new s(t||g,null)};var e=0,n=1;function r(t,e,n,r,i,a){this._color=t,this.key=e,this.value=n,this.left=r,this.right=i,this._count=a}function i(t){return new r(t._color,t.key,t.value,t.left,t.right,t._count)}function a(t,e){return new r(t,e.key,e.value,e.left,e.right,e._count)}function o(t){t._count=1+(t.left?t.left._count:0)+(t.right?t.right._count:0)}function s(t,e){this._compare=t,this.root=e}var l=s.prototype;function c(t,e){var n;return e.left&&(n=c(t,e.left))?n:(n=t(e.key,e.value))||(e.right?c(t,e.right):void 0)}function u(t,e,n,r){if(e(t,r.key)<=0){var i;if(r.left&&(i=u(t,e,n,r.left)))return i;if(i=n(r.key,r.value))return i}if(r.right)return u(t,e,n,r.right)}function f(t,e,n,r,i){var a,o=n(t,i.key),s=n(e,i.key);if(o<=0){if(i.left&&(a=f(t,e,n,r,i.left)))return a;if(s>0&&(a=r(i.key,i.value)))return a}if(s>0&&i.right)return f(t,e,n,r,i.right)}function h(t,e){this.tree=t,this._stack=e}Object.defineProperty(l,"keys",{get:function(){var t=[];return this.forEach((function(e,n){t.push(e)})),t}}),Object.defineProperty(l,"values",{get:function(){var t=[];return this.forEach((function(e,n){t.push(n)})),t}}),Object.defineProperty(l,"length",{get:function(){return this.root?this.root._count:0}}),l.insert=function(t,i){for(var l=this._compare,c=this.root,u=[],f=[];c;){var h=l(t,c.key);u.push(c),f.push(h),c=h<=0?c.left:c.right}u.push(new r(e,t,i,null,null,1));for(var d=u.length-2;d>=0;--d)c=u[d],f[d]<=0?u[d]=new r(c._color,c.key,c.value,u[d+1],c.right,c._count+1):u[d]=new r(c._color,c.key,c.value,c.left,u[d+1],c._count+1);for(d=u.length-1;d>1;--d){var p=u[d-1];if(c=u[d],p._color===n||c._color===n)break;var g=u[d-2];if(g.left===p)if(p.left===c){if(!(v=g.right)||v._color!==e){g._color=e,g.left=p.right,p._color=n,p.right=g,u[d-2]=p,u[d-1]=c,o(g),o(p),d>=3&&((m=u[d-3]).left===g?m.left=p:m.right=p);break}p._color=n,g.right=a(n,v),g._color=e,d-=1}else{if(!(v=g.right)||v._color!==e){p.right=c.left,g._color=e,g.left=c.right,c._color=n,c.left=p,c.right=g,u[d-2]=c,u[d-1]=p,o(g),o(p),o(c),d>=3&&((m=u[d-3]).left===g?m.left=c:m.right=c);break}p._color=n,g.right=a(n,v),g._color=e,d-=1}else if(p.right===c){if(!(v=g.left)||v._color!==e){g._color=e,g.right=p.left,p._color=n,p.left=g,u[d-2]=p,u[d-1]=c,o(g),o(p),d>=3&&((m=u[d-3]).right===g?m.right=p:m.left=p);break}p._color=n,g.left=a(n,v),g._color=e,d-=1}else{var v;if(!(v=g.left)||v._color!==e){var m;p.left=c.right,g._color=e,g.right=c.left,c._color=n,c.right=p,c.left=g,u[d-2]=c,u[d-1]=p,o(g),o(p),o(c),d>=3&&((m=u[d-3]).right===g?m.right=c:m.left=c);break}p._color=n,g.left=a(n,v),g._color=e,d-=1}}return u[0]._color=n,new s(l,u[0])},l.forEach=function(t,e,n){if(this.root)switch(arguments.length){case 1:return c(t,this.root);case 2:return u(e,this._compare,t,this.root);case 3:if(this._compare(e,n)>=0)return;return f(e,n,this._compare,t,this.root)}},Object.defineProperty(l,"begin",{get:function(){for(var t=[],e=this.root;e;)t.push(e),e=e.left;return new h(this,t)}}),Object.defineProperty(l,"end",{get:function(){for(var t=[],e=this.root;e;)t.push(e),e=e.right;return new h(this,t)}}),l.at=function(t){if(t<0)return new h(this,[]);for(var e=this.root,n=[];;){if(n.push(e),e.left){if(t=e.right._count)break;e=e.right}return new h(this,[])},l.ge=function(t){for(var e=this._compare,n=this.root,r=[],i=0;n;){var a=e(t,n.key);r.push(n),a<=0&&(i=r.length),n=a<=0?n.left:n.right}return r.length=i,new h(this,r)},l.gt=function(t){for(var e=this._compare,n=this.root,r=[],i=0;n;){var a=e(t,n.key);r.push(n),a<0&&(i=r.length),n=a<0?n.left:n.right}return r.length=i,new h(this,r)},l.lt=function(t){for(var e=this._compare,n=this.root,r=[],i=0;n;){var a=e(t,n.key);r.push(n),a>0&&(i=r.length),n=a<=0?n.left:n.right}return r.length=i,new h(this,r)},l.le=function(t){for(var e=this._compare,n=this.root,r=[],i=0;n;){var a=e(t,n.key);r.push(n),a>=0&&(i=r.length),n=a<0?n.left:n.right}return r.length=i,new h(this,r)},l.find=function(t){for(var e=this._compare,n=this.root,r=[];n;){var i=e(t,n.key);if(r.push(n),0===i)return new h(this,r);n=i<=0?n.left:n.right}return new h(this,[])},l.remove=function(t){var e=this.find(t);return e?e.remove():this},l.get=function(t){for(var e=this._compare,n=this.root;n;){var r=e(t,n.key);if(0===r)return n.value;n=r<=0?n.left:n.right}};var d=h.prototype;function p(t,e){t.key=e.key,t.value=e.value,t.left=e.left,t.right=e.right,t._color=e._color,t._count=e._count}function g(t,e){return te?1:0}Object.defineProperty(d,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(d,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),d.clone=function(){return new h(this.tree,this._stack.slice())},d.remove=function(){var t=this._stack;if(0===t.length)return this.tree;var l=new Array(t.length),c=t[t.length-1];l[l.length-1]=new r(c._color,c.key,c.value,c.left,c.right,c._count);for(var u=t.length-2;u>=0;--u)(c=t[u]).left===t[u+1]?l[u]=new r(c._color,c.key,c.value,l[u+1],c.right,c._count):l[u]=new r(c._color,c.key,c.value,c.left,l[u+1],c._count);if((c=l[l.length-1]).left&&c.right){var f=l.length;for(c=c.left;c.right;)l.push(c),c=c.right;var h=l[f-1];for(l.push(new r(c._color,h.key,h.value,c.left,c.right,c._count)),l[f-1].key=c.key,l[f-1].value=c.value,u=l.length-2;u>=f;--u)c=l[u],l[u]=new r(c._color,c.key,c.value,c.left,l[u+1],c._count);l[f-1].left=l[f]}if((c=l[l.length-1])._color===e){var d=l[l.length-2];for(d.left===c?d.left=null:d.right===c&&(d.right=null),l.pop(),u=0;u=0;--u){if(r=t[u],0===u)return void(r._color=n);if((s=t[u-1]).left===r){if((l=s.right).right&&l.right._color===e)return c=(l=s.right=i(l)).right=i(l.right),s.right=l.left,l.left=s,l.right=c,l._color=s._color,r._color=n,s._color=n,c._color=n,o(s),o(l),u>1&&((f=t[u-2]).left===s?f.left=l:f.right=l),void(t[u-1]=l);if(l.left&&l.left._color===e)return c=(l=s.right=i(l)).left=i(l.left),s.right=c.left,l.left=c.right,c.left=s,c.right=l,c._color=s._color,s._color=n,l._color=n,r._color=n,o(s),o(l),o(c),u>1&&((f=t[u-2]).left===s?f.left=c:f.right=c),void(t[u-1]=c);if(l._color===n){if(s._color===e)return s._color=n,void(s.right=a(e,l));s.right=a(e,l);continue}l=i(l),s.right=l.left,l.left=s,l._color=s._color,s._color=e,o(s),o(l),u>1&&((f=t[u-2]).left===s?f.left=l:f.right=l),t[u-1]=l,t[u]=s,u+11&&((f=t[u-2]).right===s?f.right=l:f.left=l),void(t[u-1]=l);if(l.right&&l.right._color===e)return c=(l=s.left=i(l)).right=i(l.right),s.left=c.right,l.right=c.left,c.right=s,c.left=l,c._color=s._color,s._color=n,l._color=n,r._color=n,o(s),o(l),o(c),u>1&&((f=t[u-2]).right===s?f.right=c:f.left=c),void(t[u-1]=c);if(l._color===n){if(s._color===e)return s._color=n,void(s.left=a(e,l));s.left=a(e,l);continue}var f;l=i(l),s.left=l.right,l.right=s,l._color=s._color,s._color=e,o(s),o(l),u>1&&((f=t[u-2]).right===s?f.right=l:f.left=l),t[u-1]=l,t[u]=s,u+10)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(d,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(d,"index",{get:function(){var t=0,e=this._stack;if(0===e.length){var n=this.tree.root;return n?n._count:0}e[e.length-1].left&&(t=e[e.length-1].left._count);for(var r=e.length-2;r>=0;--r)e[r+1]===e[r].right&&(++t,e[r].left&&(t+=e[r].left._count));return t},enumerable:!0}),d.next=function(){var t=this._stack;if(0!==t.length){var e=t[t.length-1];if(e.right)for(e=e.right;e;)t.push(e),e=e.left;else for(t.pop();t.length>0&&t[t.length-1].right===e;)e=t[t.length-1],t.pop()}},Object.defineProperty(d,"hasNext",{get:function(){var t=this._stack;if(0===t.length)return!1;if(t[t.length-1].right)return!0;for(var e=t.length-1;e>0;--e)if(t[e-1].left===t[e])return!0;return!1}}),d.update=function(t){var e=this._stack;if(0===e.length)throw new Error("Can't update empty node!");var n=new Array(e.length),i=e[e.length-1];n[n.length-1]=new r(i._color,i.key,t,i.left,i.right,i._count);for(var a=e.length-2;a>=0;--a)(i=e[a]).left===e[a+1]?n[a]=new r(i._color,i.key,i.value,n[a+1],i.right,i._count):n[a]=new r(i._color,i.key,i.value,i.left,n[a+1],i._count);return new s(this.tree._compare,n[0])},d.prev=function(){var t=this._stack;if(0!==t.length){var e=t[t.length-1];if(e.left)for(e=e.left;e;)t.push(e),e=e.right;else for(t.pop();t.length>0&&t[t.length-1].left===e;)e=t[t.length-1],t.pop()}},Object.defineProperty(d,"hasPrev",{get:function(){var t=this._stack;if(0===t.length)return!1;if(t[t.length-1].left)return!0;for(var e=t.length-1;e>0;--e)if(t[e-1].right===t[e])return!0;return!1}})},7453:function(t,e,n){"use strict";t.exports=function(t,e){var n=new u(t);return n.update(e),n};var r=n(9557),i=n(1681),a=n(1011),o=n(2864),s=n(8468),l=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]);function c(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function u(t){this.gl=t,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.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=a(t)}var f=u.prototype;function h(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}f.update=function(t){function e(e,n,r){if(r in t){var i,a=t[r],o=this[r];(e?Array.isArray(a)&&Array.isArray(a[0]):Array.isArray(a))?this[r]=i=[n(a[0]),n(a[1]),n(a[2])]:this[r]=i=[n(a),n(a),n(a)];for(var s=0;s<3;++s)if(i[s]!==o[s])return!0}return!1}t=t||{};var n,a=e.bind(this,!1,Number),o=e.bind(this,!1,Boolean),l=e.bind(this,!1,String),c=e.bind(this,!0,(function(t){if(Array.isArray(t)){if(3===t.length)return[+t[0],+t[1],+t[2],1];if(4===t.length)return[+t[0],+t[1],+t[2],+t[3]]}return[0,0,0,1]})),u=!1,f=!1;if("bounds"in t)for(var h=t.bounds,d=0;d<2;++d)for(var p=0;p<3;++p)h[d][p]!==this.bounds[d][p]&&(f=!0),this.bounds[d][p]=h[d][p];if("ticks"in t)for(n=t.ticks,u=!0,this.autoTicks=!1,d=0;d<3;++d)this.tickSpacing[d]=0;else a("tickSpacing")&&(this.autoTicks=!0,f=!0);if(this._firstInit&&("ticks"in t||"tickSpacing"in t||(this.autoTicks=!0),f=!0,u=!0,this._firstInit=!1),f&&this.autoTicks&&(n=s.create(this.bounds,this.tickSpacing),u=!0),u){for(d=0;d<3;++d)n[d].sort((function(t,e){return t.x-e.x}));s.equal(n,this.ticks)?u=!1:this.ticks=n}o("tickEnable"),l("tickFont")&&(u=!0),a("tickSize"),a("tickAngle"),a("tickPad"),c("tickColor");var g=l("labels");l("labelFont")&&(g=!0),o("labelEnable"),a("labelSize"),a("labelPad"),c("labelColor"),o("lineEnable"),o("lineMirror"),a("lineWidth"),c("lineColor"),o("lineTickEnable"),o("lineTickMirror"),a("lineTickLength"),a("lineTickWidth"),c("lineTickColor"),o("gridEnable"),a("gridWidth"),c("gridColor"),o("zeroEnable"),c("zeroLineColor"),a("zeroLineWidth"),o("backgroundEnable"),c("backgroundColor"),this._text?this._text&&(g||u)&&this._text.update(this.bounds,this.labels,this.labelFont,this.ticks,this.tickFont):this._text=r(this.gl,this.bounds,this.labels,this.labelFont,this.ticks,this.tickFont),this._lines&&u&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=i(this.gl,this.bounds,this.ticks))};var d=[new h,new h,new h];function p(t,e,n,r,i){for(var a=t.primalOffset,o=t.primalMinor,s=t.mirrorOffset,l=t.mirrorMinor,c=r[e],u=0;u<3;++u)if(e!==u){var f=a,h=s,d=o,p=l;c&1<0?(d[u]=-1,p[u]=0):(d[u]=0,p[u]=1)}}var g=[0,0,0],v={model:l,view:l,projection:l,_ortho:!1};f.isOpaque=function(){return!0},f.isTransparent=function(){return!1},f.drawTransparent=function(t){};var m=[0,0,0],y=[0,0,0],b=[0,0,0];f.draw=function(t){t=t||v;for(var e=this.gl,n=t.model||l,r=t.view||l,i=t.projection||l,a=this.bounds,s=t._ortho||!1,u=o(n,r,i,a,s),f=u.cubeEdges,h=u.axis,x=r[12],w=r[13],_=r[14],k=r[15],T=(s?2:1)*this.pixelRatio*(i[3]*x+i[7]*w+i[11]*_+i[15]*k)/e.drawingBufferHeight,M=0;M<3;++M)this.lastCubeProps.cubeEdges[M]=f[M],this.lastCubeProps.axis[M]=h[M];var A=d;for(M=0;M<3;++M)p(d[M],M,this.bounds,f,h);e=this.gl;var S,E,C,P=g;for(M=0;M<3;++M)this.backgroundEnable[M]?P[M]=h[M]:P[M]=0;for(this._background.draw(n,r,i,a,P,this.backgroundColor),this._lines.bind(n,r,i,this),M=0;M<3;++M){var L=[0,0,0];h[M]>0?L[M]=a[1][M]:L[M]=a[0][M];for(var O=0;O<2;++O){var I=(M+1+O)%3,D=(M+1+(1^O))%3;this.gridEnable[I]&&this._lines.drawGrid(I,D,this.bounds,L,this.gridColor[I],this.gridWidth[I]*this.pixelRatio)}for(O=0;O<2;++O)I=(M+1+O)%3,D=(M+1+(1^O))%3,this.zeroEnable[D]&&Math.min(a[0][D],a[1][D])<=0&&Math.max(a[0][D],a[1][D])>=0&&this._lines.drawZero(I,D,this.bounds,L,this.zeroLineColor[D],this.zeroLineWidth[D]*this.pixelRatio)}for(M=0;M<3;++M){this.lineEnable[M]&&this._lines.drawAxisLine(M,this.bounds,A[M].primalOffset,this.lineColor[M],this.lineWidth[M]*this.pixelRatio),this.lineMirror[M]&&this._lines.drawAxisLine(M,this.bounds,A[M].mirrorOffset,this.lineColor[M],this.lineWidth[M]*this.pixelRatio);var R=c(m,A[M].primalMinor),z=c(y,A[M].mirrorMinor),N=this.lineTickLength;for(O=0;O<3;++O){var j=T/n[5*O];R[O]*=N[O]*j,z[O]*=N[O]*j}this.lineTickEnable[M]&&this._lines.drawAxisTicks(M,A[M].primalOffset,R,this.lineTickColor[M],this.lineTickWidth[M]*this.pixelRatio),this.lineTickMirror[M]&&this._lines.drawAxisTicks(M,A[M].mirrorOffset,z,this.lineTickColor[M],this.lineTickWidth[M]*this.pixelRatio)}function F(t){(C=[0,0,0])[t]=1}function B(t,e,n){var r=(t+1)%3,i=(t+2)%3,a=e[r],o=e[i],s=n[r],l=n[i];a>0&&l>0||a>0&&l<0||a<0&&l>0||a<0&&l<0?F(r):(o>0&&s>0||o>0&&s<0||o<0&&s>0||o<0&&s<0)&&F(i)}for(this._lines.unbind(),this._text.bind(n,r,i,this.pixelRatio),M=0;M<3;++M){var U=A[M].primalMinor,H=A[M].mirrorMinor,V=c(b,A[M].primalOffset);for(O=0;O<3;++O)this.lineTickEnable[M]&&(V[O]+=T*U[O]*Math.max(this.lineTickLength[O],0)/n[5*O]);var q=[0,0,0];if(q[M]=1,this.tickEnable[M]){for(-3600===this.tickAngle[M]?(this.tickAngle[M]=0,this.tickAlign[M]="auto"):this.tickAlign[M]=-1,E=1,"auto"===(S=[this.tickAlign[M],.5,E])[0]?S[0]=0:S[0]=parseInt(""+S[0]),C=[0,0,0],B(M,U,H),O=0;O<3;++O)V[O]+=T*U[O]*this.tickPad[O]/n[5*O];this._text.drawTicks(M,this.tickSize[M],this.tickAngle[M],V,this.tickColor[M],q,C,S)}if(this.labelEnable[M]){for(E=0,C=[0,0,0],this.labels[M].length>4&&(F(M),E=1),"auto"===(S=[this.labelAlign[M],.5,E])[0]?S[0]=0:S[0]=parseInt(""+S[0]),O=0;O<3;++O)V[O]+=T*U[O]*this.labelPad[O]/n[5*O];V[M]+=.5*(a[0][M]+a[1][M]),this._text.drawLabel(M,this.labelSize[M],this.labelAngle[M],V,this.labelColor[M],[0,0,0],C,S)}}this._text.unbind()},f.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(t,e,n){"use strict";t.exports=function(t){for(var e=[],n=[],s=0,l=0;l<3;++l)for(var c=(l+1)%3,u=(l+2)%3,f=[0,0,0],h=[0,0,0],d=-1;d<=1;d+=2){n.push(s,s+2,s+1,s+1,s+2,s+3),f[l]=d,h[l]=d;for(var p=-1;p<=1;p+=2){f[c]=p;for(var g=-1;g<=1;g+=2)f[u]=g,e.push(f[0],f[1],f[2],h[0],h[1],h[2]),s+=1}var v=c;c=u,u=v}var m=r(t,new Float32Array(e)),y=r(t,new Uint16Array(n),t.ELEMENT_ARRAY_BUFFER),b=i(t,[{buffer:m,type:t.FLOAT,size:3,offset:0,stride:24},{buffer:m,type:t.FLOAT,size:3,offset:12,stride:24}],y),x=a(t);return x.attributes.position.location=0,x.attributes.normal.location=1,new o(t,m,b,x)};var r=n(5827),i=n(2944),a=n(1943).bg;function o(t,e,n,r){this.gl=t,this.buffer=e,this.vao=n,this.shader=r}var s=o.prototype;s.draw=function(t,e,n,r,i,a){for(var o=!1,s=0;s<3;++s)o=o||i[s];if(o){var l=this.gl;l.enable(l.POLYGON_OFFSET_FILL),l.polygonOffset(1,2),this.shader.bind(),this.shader.uniforms={model:t,view:e,projection:n,bounds:r,enable:i,colors:a},this.vao.bind(),this.vao.draw(this.gl.TRIANGLES,36),this.vao.unbind(),l.disable(l.POLYGON_OFFSET_FILL)}},s.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()}},2864:function(t,e,n){"use strict";t.exports=function(t,e,n,a,d){i(s,e,t),i(s,n,s);for(var y=0,b=0;b<2;++b){u[2]=a[b][2];for(var x=0;x<2;++x){u[1]=a[x][1];for(var w=0;w<2;++w)u[0]=a[w][0],h(l[y],u,s),y+=1}}var _=-1;for(b=0;b<8;++b){for(var k=l[b][3],T=0;T<3;++T)c[b][T]=l[b][T]/k;d&&(c[b][2]*=-1),k<0&&(_<0||c[b][2]E&&(_|=1<E&&(_|=1<c[b][1])&&(z=b);var N=-1;for(b=0;b<3;++b)(F=z^1<c[j][0]&&(j=F))}var B=g;B[0]=B[1]=B[2]=0,B[r.log2(N^z)]=z&N,B[r.log2(z^j)]=z&j;var U=7^j;U===_||U===R?(U=7^N,B[r.log2(j^U)]=U&j):B[r.log2(N^U)]=U&N;var H=v,V=_;for(M=0;M<3;++M)H[M]=V&1< HALF_PI) && (b <= ONE_AND_HALF_PI)) ?\n b - PI :\n b;\n}\n\nfloat look_horizontal_or_vertical(float a, float ratio) {\n // ratio controls the ratio between being horizontal to (vertical + horizontal)\n // if ratio is set to 0.5 then it is 50%, 50%.\n // when using a higher ratio e.g. 0.75 the result would\n // likely be more horizontal than vertical.\n\n float b = positive_angle(a);\n\n return\n (b < ( ratio) * HALF_PI) ? 0.0 :\n (b < (2.0 - ratio) * HALF_PI) ? -HALF_PI :\n (b < (2.0 + ratio) * HALF_PI) ? 0.0 :\n (b < (4.0 - ratio) * HALF_PI) ? HALF_PI :\n 0.0;\n}\n\nfloat roundTo(float a, float b) {\n return float(b * floor((a + 0.5 * b) / b));\n}\n\nfloat look_round_n_directions(float a, int n) {\n float b = positive_angle(a);\n float div = TWO_PI / float(n);\n float c = roundTo(b, div);\n return look_upwards(c);\n}\n\nfloat applyAlignOption(float rawAngle, float delta) {\n return\n (option > 2) ? look_round_n_directions(rawAngle + delta, option) : // option 3-n: round to n directions\n (option == 2) ? look_horizontal_or_vertical(rawAngle + delta, hv_ratio) : // horizontal or vertical\n (option == 1) ? rawAngle + delta : // use free angle, and flip to align with one direction of the axis\n (option == 0) ? look_upwards(rawAngle) : // use free angle, and stay upwards\n (option ==-1) ? 0.0 : // useful for backward compatibility, all texts remains horizontal\n rawAngle; // otherwise return back raw input angle\n}\n\nbool isAxisTitle = (axis.x == 0.0) &&\n (axis.y == 0.0) &&\n (axis.z == 0.0);\n\nvoid main() {\n //Compute world offset\n float axisDistance = position.z;\n vec3 dataPosition = axisDistance * axis + offset;\n\n float beta = angle; // i.e. user defined attributes for each tick\n\n float axisAngle;\n float clipAngle;\n float flip;\n\n if (enableAlign) {\n axisAngle = (isAxisTitle) ? HALF_PI :\n computeViewAngle(dataPosition, dataPosition + axis);\n clipAngle = computeViewAngle(dataPosition, dataPosition + alignDir);\n\n axisAngle += (sin(axisAngle) < 0.0) ? PI : 0.0;\n clipAngle += (sin(clipAngle) < 0.0) ? PI : 0.0;\n\n flip = (dot(vec2(cos(axisAngle), sin(axisAngle)),\n vec2(sin(clipAngle),-cos(clipAngle))) > 0.0) ? 1.0 : 0.0;\n\n beta += applyAlignOption(clipAngle, flip * PI);\n }\n\n //Compute plane offset\n vec2 planeCoord = position.xy * pixelScale;\n\n mat2 planeXform = scale * mat2(\n cos(beta), sin(beta),\n -sin(beta), cos(beta)\n );\n\n vec2 viewOffset = 2.0 * planeXform * planeCoord / resolution;\n\n //Compute clip position\n vec3 clipPosition = project(dataPosition);\n\n //Apply text offset in clip coordinates\n clipPosition += vec3(viewOffset, 0.0);\n\n //Done\n gl_Position = vec4(clipPosition, 1.0);\n}"]),l=r(["precision highp float;\n#define GLSLIFY 1\n\nuniform vec4 color;\nvoid main() {\n gl_FragColor = color;\n}"]);e.f=function(t){return i(t,s,l,null,[{name:"position",type:"vec3"}])};var c=r(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position;\nattribute vec3 normal;\n\nuniform mat4 model, view, projection;\nuniform vec3 enable;\nuniform vec3 bounds[2];\n\nvarying vec3 colorChannel;\n\nvoid main() {\n\n vec3 signAxis = sign(bounds[1] - bounds[0]);\n\n vec3 realNormal = signAxis * normal;\n\n if(dot(realNormal, enable) > 0.0) {\n vec3 minRange = min(bounds[0], bounds[1]);\n vec3 maxRange = max(bounds[0], bounds[1]);\n vec3 nPosition = mix(minRange, maxRange, 0.5 * (position + 1.0));\n gl_Position = projection * view * model * vec4(nPosition, 1.0);\n } else {\n gl_Position = vec4(0,0,0,0);\n }\n\n colorChannel = abs(realNormal);\n}"]),u=r(["precision highp float;\n#define GLSLIFY 1\n\nuniform vec4 colors[3];\n\nvarying vec3 colorChannel;\n\nvoid main() {\n gl_FragColor = colorChannel.x * colors[0] +\n colorChannel.y * colors[1] +\n colorChannel.z * colors[2];\n}"]);e.bg=function(t){return i(t,c,u,null,[{name:"position",type:"vec3"},{name:"normal",type:"vec3"}])}},9557:function(t,e,n){"use strict";t.exports=function(t,e,n,i,o,l){var c=r(t),f=a(t,[{buffer:c,size:3}]),h=s(t);h.attributes.position.location=0;var d=new u(t,h,c,f);return d.update(e,n,i,o,l),d};var r=n(5827),a=n(2944),o=n(875),s=n(1943).f,l=window||i.global||{},c=l.__TEXT_CACHE||{};function u(t,e,n,r){this.gl=t,this.shader=e,this.buffer=n,this.vao=r,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}l.__TEXT_CACHE={};var f=u.prototype,h=[0,0];f.bind=function(t,e,n,r){this.vao.bind(),this.shader.bind();var i=this.shader.uniforms;i.model=t,i.view=e,i.projection=n,i.pixelScale=r,h[0]=this.gl.drawingBufferWidth,h[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=h},f.unbind=function(){this.vao.unbind()},f.update=function(t,e,n,r,i){var a=[];function s(t,e,n,r,i,s){var l=c[n];l||(l=c[n]={});var u=l[e];u||(u=l[e]=function(t,e){try{return o(t,e)}catch(n){return console.warn('error vectorizing text:"'+t+'" error:',n),{cells:[],positions:[]}}}(e,{triangles:!0,font:n,textAlign:"center",textBaseline:"middle",lineSpacing:i,styletags:s}));for(var f=(r||12)/12,h=u.positions,d=u.cells,p=0,g=d.length;p=0;--m){var y=h[v[m]];a.push(f*y[0],-f*y[1],t)}}for(var l=[0,0,0],u=[0,0,0],f=[0,0,0],h=[0,0,0],d={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},p=0;p<3;++p){f[p]=a.length/3|0,s(.5*(t[0][p]+t[1][p]),e[p],n[p],12,1.25,d),h[p]=(a.length/3|0)-f[p],l[p]=a.length/3|0;for(var g=0;g=0&&(i=n.length-r-1);var a=Math.pow(10,i),o=Math.round(t*e*a),s=o+"";if(s.indexOf("e")>=0)return s;var l=o/a,c=o%a;o<0?(l=0|-Math.ceil(l),c=0|-c):(l=0|Math.floor(l),c|=0);var u=""+l;if(o<0&&(u="-"+u),i){for(var f=""+c;f.length=t[0][i];--o)a.push({x:o*e[i],text:n(e[i],o)});r.push(a)}return r},e.equal=function(t,e){for(var n=0;n<3;++n){if(t[n].length!==e[n].length)return!1;for(var r=0;rn)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return t.bufferSubData(e,a,i),n}function u(t,e){for(var n=r.malloc(t.length,e),i=t.length,a=0;a=0;--r){if(e[r]!==n)return!1;n*=t[r]}return!0}(t.shape,t.stride))0===t.offset&&t.data.length===t.shape[0]?this.length=c(this.gl,this.type,this.length,this.usage,t.data,e):this.length=c(this.gl,this.type,this.length,this.usage,t.data.subarray(t.offset,t.shape[0]),e);else{var s=r.malloc(t.size,n),l=a(s,t.shape);i.assign(l,t),this.length=c(this.gl,this.type,this.length,this.usage,e<0?s:s.subarray(0,t.size),e),r.free(s)}}else if(Array.isArray(t)){var f;f=this.type===this.gl.ELEMENT_ARRAY_BUFFER?u(t,"uint16"):u(t,"float32"),this.length=c(this.gl,this.type,this.length,this.usage,e<0?f:f.subarray(0,t.length),e),r.free(f)}else if("object"===typeof t&&"number"===typeof t.length)this.length=c(this.gl,this.type,this.length,this.usage,t,e);else{if("number"!==typeof t&&void 0!==t)throw new Error("gl-buffer: Invalid data type");if(e>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");(t|=0)<=0&&(t=1),this.gl.bufferData(this.type,0|t,this.usage),this.length=t}},t.exports=function(t,e,n,r){if(n=n||t.ARRAY_BUFFER,r=r||t.DYNAMIC_DRAW,n!==t.ARRAY_BUFFER&&n!==t.ELEMENT_ARRAY_BUFFER)throw new Error("gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER");if(r!==t.DYNAMIC_DRAW&&r!==t.STATIC_DRAW&&r!==t.STREAM_DRAW)throw new Error("gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW");var i=t.createBuffer(),a=new s(t,n,i,0,r);return a.update(e),a}},1140:function(t,e,n){"use strict";var r=n(2858);t.exports=function(t,e){var n=t.positions,i=t.vectors,a={positions:[],vertexIntensity:[],vertexIntensityBounds:t.vertexIntensityBounds,vectors:[],cells:[],coneOffset:t.coneOffset,colormap:t.colormap};if(0===t.positions.length)return e&&(e[0]=[0,0,0],e[1]=[0,0,0]),a;for(var o=0,s=1/0,l=-1/0,c=1/0,u=-1/0,f=1/0,h=-1/0,d=null,p=null,g=[],v=1/0,m=!1,y=0;yo&&(o=r.length(x)),y){var w=2*r.distance(d,b)/(r.length(p)+r.length(x));w?(v=Math.min(v,w),m=!1):m=!0}m||(d=b,p=x),g.push(x)}var _=[s,c,f],k=[l,u,h];e&&(e[0]=_,e[1]=k),0===o&&(o=1);var T=1/o;isFinite(v)||(v=1),a.vectorScale=v;var M=t.coneSize||.5;t.absoluteConeSize&&(M=t.absoluteConeSize*T),a.coneScale=M,y=0;for(var A=0;y=1},d.isTransparent=function(){return this.opacity<1},d.pickSlots=1,d.setPickBase=function(t){this.pickId=t},d.update=function(t){t=t||{};var e=this.gl;this.dirty=!0,"lightPosition"in t&&(this.lightPosition=t.lightPosition),"opacity"in t&&(this.opacity=t.opacity),"ambient"in t&&(this.ambientLight=t.ambient),"diffuse"in t&&(this.diffuseLight=t.diffuse),"specular"in t&&(this.specularLight=t.specular),"roughness"in t&&(this.roughness=t.roughness),"fresnel"in t&&(this.fresnel=t.fresnel),void 0!==t.tubeScale&&(this.tubeScale=t.tubeScale),void 0!==t.vectorScale&&(this.vectorScale=t.vectorScale),void 0!==t.coneScale&&(this.coneScale=t.coneScale),void 0!==t.coneOffset&&(this.coneOffset=t.coneOffset),t.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=e.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=e.LINEAR,this.texture.setPixels(function(t){for(var e=u({colormap:t,nshades:256,format:"rgba"}),n=new Uint8Array(1024),r=0;r<256;++r){for(var i=e[r],a=0;a<3;++a)n[4*r+a]=i[a];n[4*r+3]=255*i[3]}return c(n,[256,256,4],[4,0,1])}(t.colormap)),this.texture.generateMipmap());var n=t.cells,r=t.positions,i=t.vectors;if(r&&n&&i){var a=[],o=[],s=[],l=[],f=[];this.cells=n,this.positions=r,this.vectors=i;var h=t.meshColor||[1,1,1,1],d=t.vertexIntensity,p=1/0,g=-1/0;if(d)if(t.vertexIntensityBounds)p=+t.vertexIntensityBounds[0],g=+t.vertexIntensityBounds[1];else for(var v=0;v0){var g=this.triShader;g.bind(),g.uniforms=c,this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()}},d.drawPick=function(t){t=t||{};for(var e=this.gl,n=t.model||f,r=t.view||f,i=t.projection||f,a=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],o=0;o<3;++o)a[0][o]=Math.max(a[0][o],this.clipBounds[0][o]),a[1][o]=Math.min(a[1][o],this.clipBounds[1][o]);this._model=[].slice.call(n),this._view=[].slice.call(r),this._projection=[].slice.call(i),this._resolution=[e.drawingBufferWidth,e.drawingBufferHeight];var s={model:n,view:r,projection:i,clipBounds:a,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},l=this.pickShader;l.bind(),l.uniforms=s,this.triangleCount>0&&(this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind())},d.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;var e=t.value[0]+256*t.value[1]+65536*t.value[2],n=this.cells[e],r=this.positions[n[1]].slice(0,3),i={position:r,dataCoordinate:r,index:Math.floor(n[1]/48)};return"cone"===this.traceType?i.index=Math.floor(n[1]/48):"streamtube"===this.traceType&&(i.intensity=this.intensity[n[1]],i.velocity=this.vectors[n[1]].slice(0,3),i.divergence=this.vectors[n[1]][3],i.index=e),i},d.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()},t.exports=function(t,e,n){var s=n.shaders;1===arguments.length&&(t=(e=t).gl);var l=function(t,e){var n=r(t,e.meshShader.vertex,e.meshShader.fragment,null,e.meshShader.attributes);return n.attributes.position.location=0,n.attributes.color.location=2,n.attributes.uv.location=3,n.attributes.vector.location=4,n}(t,s),u=function(t,e){var n=r(t,e.pickShader.vertex,e.pickShader.fragment,null,e.pickShader.attributes);return n.attributes.position.location=0,n.attributes.id.location=1,n.attributes.vector.location=4,n}(t,s),f=o(t,c(new Uint8Array([255,255,255,255]),[1,1,4]));f.generateMipmap(),f.minFilter=t.LINEAR_MIPMAP_LINEAR,f.magFilter=t.LINEAR;var d=i(t),p=i(t),g=i(t),v=i(t),m=i(t),y=new h(t,f,l,u,d,p,m,g,v,a(t,[{buffer:d,type:t.FLOAT,size:4},{buffer:m,type:t.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:g,type:t.FLOAT,size:4},{buffer:v,type:t.FLOAT,size:2},{buffer:p,type:t.FLOAT,size:4}]),n.traceType||"cone");return y.update(e),y}},7234:function(t,e,n){var r=n(6832),i=r(["precision highp float;\n\nprecision highp float;\n#define GLSLIFY 1\n\nvec3 getOrthogonalVector(vec3 v) {\n // Return up-vector for only-z vector.\n // 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).\n // From the above if-statement we have ||a|| > 0 U ||b|| > 0.\n // Assign z = 0, x = -b, y = a:\n // a*-b + b*a + c*0 = -ba + ba + 0 = 0\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\n return normalize(vec3(-v.y, v.x, 0.0));\n } else {\n return normalize(vec3(0.0, v.z, -v.y));\n }\n}\n\n// Calculate the cone vertex and normal at the given index.\n//\n// The returned vertex is for a cone with its top at origin and height of 1.0,\n// pointing in the direction of the vector attribute.\n//\n// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.\n// These vertices are used to make up the triangles of the cone by the following:\n// segment + 0 top vertex\n// segment + 1 perimeter vertex a+1\n// segment + 2 perimeter vertex a\n// segment + 3 center base vertex\n// segment + 4 perimeter vertex a\n// segment + 5 perimeter vertex a+1\n// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.\n// To go from index to segment, floor(index / 6)\n// To go from segment to angle, 2*pi * (segment/segmentCount)\n// To go from index to segment index, index - (segment*6)\n//\nvec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {\n\n const float segmentCount = 8.0;\n\n float index = rawIndex - floor(rawIndex /\n (segmentCount * 6.0)) *\n (segmentCount * 6.0);\n\n float segment = floor(0.001 + index/6.0);\n float segmentIndex = index - (segment*6.0);\n\n normal = -normalize(d);\n\n if (segmentIndex > 2.99 && segmentIndex < 3.01) {\n return mix(vec3(0.0), -d, coneOffset);\n }\n\n float nextAngle = (\n (segmentIndex > 0.99 && segmentIndex < 1.01) ||\n (segmentIndex > 4.99 && segmentIndex < 5.01)\n ) ? 1.0 : 0.0;\n float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);\n\n vec3 v1 = mix(d, vec3(0.0), coneOffset);\n vec3 v2 = v1 - d;\n\n vec3 u = getOrthogonalVector(d);\n vec3 v = normalize(cross(u, d));\n\n vec3 x = u * cos(angle) * length(d)*0.25;\n vec3 y = v * sin(angle) * length(d)*0.25;\n vec3 v3 = v2 + x + y;\n if (segmentIndex < 3.0) {\n vec3 tx = u * sin(angle);\n vec3 ty = v * -cos(angle);\n vec3 tangent = tx + ty;\n normal = normalize(cross(v3 - v1, tangent));\n }\n\n if (segmentIndex == 0.0) {\n return mix(d, vec3(0.0), coneOffset);\n }\n return v3;\n}\n\nattribute vec3 vector;\nattribute vec4 color, position;\nattribute vec2 uv;\n\nuniform float vectorScale, coneScale, coneOffset;\nuniform mat4 model, view, projection, inverseModel;\nuniform vec3 eyePosition, lightPosition;\n\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n // Scale the vector magnitude to stay constant with\n // model & view changes.\n vec3 normal;\n vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector), position.w, coneOffset, normal);\n vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\n\n //Lighting geometry parameters\n vec4 cameraCoordinate = view * conePosition;\n cameraCoordinate.xyz /= cameraCoordinate.w;\n f_lightDirection = lightPosition - cameraCoordinate.xyz;\n f_eyeDirection = eyePosition - cameraCoordinate.xyz;\n f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);\n\n // vec4 m_position = model * vec4(conePosition, 1.0);\n vec4 t_position = view * conePosition;\n gl_Position = projection * t_position;\n\n f_color = color;\n f_data = conePosition.xyz;\n f_position = position.xyz;\n f_uv = uv;\n}\n"]),a=r(["#extension GL_OES_standard_derivatives : enable\n\nprecision highp float;\n#define GLSLIFY 1\n\nfloat beckmannDistribution(float x, float roughness) {\n float NdotH = max(x, 0.0001);\n float cos2Alpha = NdotH * NdotH;\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\n float roughness2 = roughness * roughness;\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\n return exp(tan2Alpha / roughness2) / denom;\n}\n\nfloat cookTorranceSpecular(\n vec3 lightDirection,\n vec3 viewDirection,\n vec3 surfaceNormal,\n float roughness,\n float fresnel) {\n\n float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);\n float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);\n\n //Half angle vector\n vec3 H = normalize(lightDirection + viewDirection);\n\n //Geometric term\n float NdotH = max(dot(surfaceNormal, H), 0.0);\n float VdotH = max(dot(viewDirection, H), 0.000001);\n float LdotH = max(dot(lightDirection, H), 0.000001);\n float G1 = (2.0 * NdotH * VdotN) / VdotH;\n float G2 = (2.0 * NdotH * LdotN) / LdotH;\n float G = min(1.0, min(G1, G2));\n \n //Distribution term\n float D = beckmannDistribution(NdotH, roughness);\n\n //Fresnel term\n float F = pow(1.0 - VdotN, fresnel);\n\n //Multiply terms and done\n return G * F * D / max(3.14159265 * VdotN, 0.000001);\n}\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\nuniform sampler2D texture;\n\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n vec3 N = normalize(f_normal);\n vec3 L = normalize(f_lightDirection);\n vec3 V = normalize(f_eyeDirection);\n\n if(gl_FrontFacing) {\n N = -N;\n }\n\n float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\n\n vec4 surfaceColor = f_color * texture2D(texture, f_uv);\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\n\n gl_FragColor = litColor * opacity;\n}\n"]),o=r(["precision highp float;\n\nprecision highp float;\n#define GLSLIFY 1\n\nvec3 getOrthogonalVector(vec3 v) {\n // Return up-vector for only-z vector.\n // 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).\n // From the above if-statement we have ||a|| > 0 U ||b|| > 0.\n // Assign z = 0, x = -b, y = a:\n // a*-b + b*a + c*0 = -ba + ba + 0 = 0\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\n return normalize(vec3(-v.y, v.x, 0.0));\n } else {\n return normalize(vec3(0.0, v.z, -v.y));\n }\n}\n\n// Calculate the cone vertex and normal at the given index.\n//\n// The returned vertex is for a cone with its top at origin and height of 1.0,\n// pointing in the direction of the vector attribute.\n//\n// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.\n// These vertices are used to make up the triangles of the cone by the following:\n// segment + 0 top vertex\n// segment + 1 perimeter vertex a+1\n// segment + 2 perimeter vertex a\n// segment + 3 center base vertex\n// segment + 4 perimeter vertex a\n// segment + 5 perimeter vertex a+1\n// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.\n// To go from index to segment, floor(index / 6)\n// To go from segment to angle, 2*pi * (segment/segmentCount)\n// To go from index to segment index, index - (segment*6)\n//\nvec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {\n\n const float segmentCount = 8.0;\n\n float index = rawIndex - floor(rawIndex /\n (segmentCount * 6.0)) *\n (segmentCount * 6.0);\n\n float segment = floor(0.001 + index/6.0);\n float segmentIndex = index - (segment*6.0);\n\n normal = -normalize(d);\n\n if (segmentIndex > 2.99 && segmentIndex < 3.01) {\n return mix(vec3(0.0), -d, coneOffset);\n }\n\n float nextAngle = (\n (segmentIndex > 0.99 && segmentIndex < 1.01) ||\n (segmentIndex > 4.99 && segmentIndex < 5.01)\n ) ? 1.0 : 0.0;\n float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);\n\n vec3 v1 = mix(d, vec3(0.0), coneOffset);\n vec3 v2 = v1 - d;\n\n vec3 u = getOrthogonalVector(d);\n vec3 v = normalize(cross(u, d));\n\n vec3 x = u * cos(angle) * length(d)*0.25;\n vec3 y = v * sin(angle) * length(d)*0.25;\n vec3 v3 = v2 + x + y;\n if (segmentIndex < 3.0) {\n vec3 tx = u * sin(angle);\n vec3 ty = v * -cos(angle);\n vec3 tangent = tx + ty;\n normal = normalize(cross(v3 - v1, tangent));\n }\n\n if (segmentIndex == 0.0) {\n return mix(d, vec3(0.0), coneOffset);\n }\n return v3;\n}\n\nattribute vec4 vector;\nattribute vec4 position;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\nuniform float vectorScale, coneScale, coneOffset;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n vec3 normal;\n vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector.xyz), position.w, coneOffset, normal);\n vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\n gl_Position = projection * view * conePosition;\n f_id = id;\n f_position = position.xyz;\n}\n"]),s=r(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float pickId;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n\n gl_FragColor = vec4(pickId, f_id.xyz);\n}"]);e.meshShader={vertex:i,fragment:a,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec3"}]},e.pickShader={vertex:o,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec3"}]}},1950:function(t){t.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(t,e,n){var r=n(1950);t.exports=function(t){return r[t]}},3110:function(t,e,n){"use strict";t.exports=function(t){var e=t.gl,n=r(e),o=i(e,[{buffer:n,type:e.FLOAT,size:3,offset:0,stride:40},{buffer:n,type:e.FLOAT,size:4,offset:12,stride:40},{buffer:n,type:e.FLOAT,size:3,offset:28,stride:40}]),l=a(e);l.attributes.position.location=0,l.attributes.color.location=1,l.attributes.offset.location=2;var c=new s(e,n,o,l);return c.update(t),c};var r=n(5827),i=n(2944),a=n(7667),o=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(t,e,n,r){this.gl=t,this.shader=r,this.buffer=e,this.vao=n,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 l=s.prototype;function c(t,e){for(var n=0;n<3;++n)t[0][n]=Math.min(t[0][n],e[n]),t[1][n]=Math.max(t[1][n],e[n])}l.isOpaque=function(){return!this.hasAlpha},l.isTransparent=function(){return this.hasAlpha},l.drawTransparent=l.draw=function(t){var e=this.gl,n=this.shader.uniforms;this.shader.bind();var r=n.view=t.view||o,i=n.projection=t.projection||o;n.model=t.model||o,n.clipBounds=this.clipBounds,n.opacity=this.opacity;var a=r[12],s=r[13],l=r[14],c=r[15],u=(t._ortho?2:1)*this.pixelRatio*(i[3]*a+i[7]*s+i[11]*l+i[15]*c)/e.drawingBufferHeight;this.vao.bind();for(var f=0;f<3;++f)e.lineWidth(this.lineWidth[f]*this.pixelRatio),n.capSize=this.capSize[f]*u,this.lineCount[f]&&e.drawArrays(e.LINES,this.lineOffset[f],this.lineCount[f]);this.vao.unbind()};var u=function(){for(var t=new Array(3),e=0;e<3;++e){for(var n=[],r=1;r<=2;++r)for(var i=-1;i<=1;i+=2){var a=[0,0,0];a[(r+e)%3]=i,n.push(a)}t[e]=n}return t}();function f(t,e,n,r){for(var i=u[r],a=0;a0&&((d=u.slice())[s]+=p[1][s],i.push(u[0],u[1],u[2],g[0],g[1],g[2],g[3],0,0,0,d[0],d[1],d[2],g[0],g[1],g[2],g[3],0,0,0),c(this.bounds,d),o+=2+f(i,d,g,s)))}this.lineCount[s]=o-this.lineOffset[s]}this.buffer.update(i)}},l.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()}},7667:function(t,e,n){"use strict";var r=n(6832),i=n(5158),a=r(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position, offset;\nattribute vec4 color;\nuniform mat4 model, view, projection;\nuniform float capSize;\nvarying vec4 fragColor;\nvarying vec3 fragPosition;\n\nvoid main() {\n vec4 worldPosition = model * vec4(position, 1.0);\n worldPosition = (worldPosition / worldPosition.w) + vec4(capSize * offset, 0.0);\n gl_Position = projection * view * worldPosition;\n fragColor = color;\n fragPosition = position;\n}"]),o=r(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float opacity;\nvarying vec3 fragPosition;\nvarying vec4 fragColor;\n\nvoid main() {\n if (\n outOfRange(clipBounds[0], clipBounds[1], fragPosition) ||\n fragColor.a * opacity == 0.\n ) discard;\n\n gl_FragColor = opacity * fragColor;\n}"]);t.exports=function(t){return i(t,a,o,null,[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"offset",type:"vec3"}])}},4234:function(t,e,n){"use strict";var r=n(8931);t.exports=function(t,e,n,r){i||(i=t.FRAMEBUFFER_UNSUPPORTED,a=t.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,o=t.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,s=t.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT);var c=t.getExtension("WEBGL_draw_buffers");if(!l&&c&&function(t,e){var n=t.getParameter(e.MAX_COLOR_ATTACHMENTS_WEBGL);l=new Array(n+1);for(var r=0;r<=n;++r){for(var i=new Array(n),a=0;au||n<0||n>u)throw new Error("gl-fbo: Parameters are too large for FBO");var f=1;if("color"in(r=r||{})){if((f=Math.max(0|r.color,0))<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(f>1){if(!c)throw new Error("gl-fbo: Multiple draw buffer extension not supported");if(f>t.getParameter(c.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+f+" draw buffers")}}var h=t.UNSIGNED_BYTE,d=t.getExtension("OES_texture_float");if(r.float&&f>0){if(!d)throw new Error("gl-fbo: Context does not support floating point textures");h=t.FLOAT}else r.preferFloat&&f>0&&d&&(h=t.FLOAT);var g=!0;"depth"in r&&(g=!!r.depth);var v=!1;return"stencil"in r&&(v=!!r.stencil),new p(t,e,n,h,f,g,v,c)};var i,a,o,s,l=null;function c(t){return[t.getParameter(t.FRAMEBUFFER_BINDING),t.getParameter(t.RENDERBUFFER_BINDING),t.getParameter(t.TEXTURE_BINDING_2D)]}function u(t,e){t.bindFramebuffer(t.FRAMEBUFFER,e[0]),t.bindRenderbuffer(t.RENDERBUFFER,e[1]),t.bindTexture(t.TEXTURE_2D,e[2])}function f(t){switch(t){case i:throw new Error("gl-fbo: Framebuffer unsupported");case a:throw new Error("gl-fbo: Framebuffer incomplete attachment");case o: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 h(t,e,n,i,a,o){if(!i)return null;var s=r(t,e,n,a,i);return s.magFilter=t.NEAREST,s.minFilter=t.NEAREST,s.mipSamples=1,s.bind(),t.framebufferTexture2D(t.FRAMEBUFFER,o,t.TEXTURE_2D,s.handle,0),s}function d(t,e,n,r,i){var a=t.createRenderbuffer();return t.bindRenderbuffer(t.RENDERBUFFER,a),t.renderbufferStorage(t.RENDERBUFFER,r,e,n),t.framebufferRenderbuffer(t.FRAMEBUFFER,i,t.RENDERBUFFER,a),a}function p(t,e,n,r,i,a,o,s){this.gl=t,this._shape=[0|e,0|n],this._destroyed=!1,this._ext=s,this.color=new Array(i);for(var p=0;p1&&s.drawBuffersWEBGL(l[o]);var y=n.getExtension("WEBGL_depth_texture");y?p?t.depth=h(n,i,a,y.UNSIGNED_INT_24_8_WEBGL,n.DEPTH_STENCIL,n.DEPTH_STENCIL_ATTACHMENT):g&&(t.depth=h(n,i,a,n.UNSIGNED_SHORT,n.DEPTH_COMPONENT,n.DEPTH_ATTACHMENT)):g&&p?t._depth_rb=d(n,i,a,n.DEPTH_STENCIL,n.DEPTH_STENCIL_ATTACHMENT):g?t._depth_rb=d(n,i,a,n.DEPTH_COMPONENT16,n.DEPTH_ATTACHMENT):p&&(t._depth_rb=d(n,i,a,n.STENCIL_INDEX,n.STENCIL_ATTACHMENT));var b=n.checkFramebufferStatus(n.FRAMEBUFFER);if(b!==n.FRAMEBUFFER_COMPLETE){for(t._destroyed=!0,n.bindFramebuffer(n.FRAMEBUFFER,null),n.deleteFramebuffer(t.handle),t.handle=null,t.depth&&(t.depth.dispose(),t.depth=null),t._depth_rb&&(n.deleteRenderbuffer(t._depth_rb),t._depth_rb=null),m=0;mi||n<0||n>i)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");t._shape[0]=e,t._shape[1]=n;for(var a=c(r),o=0;o>8*d&255;this.pickOffset=n,i.bind();var p=i.uniforms;p.viewTransform=t,p.pickOffset=e,p.shape=this.shape;var g=i.attributes;return this.positionBuffer.bind(),g.position.pointer(),this.weightBuffer.bind(),g.weight.pointer(s.UNSIGNED_BYTE,!1),this.idBuffer.bind(),g.pickId.pointer(s.UNSIGNED_BYTE,!1),s.drawArrays(s.TRIANGLES,0,o),n+this.shape[0]*this.shape[1]}}}(),u.pick=function(t,e,n){var r=this.pickOffset,i=this.shape[0]*this.shape[1];if(n=r+i)return null;var a=n-r,o=this.xData,s=this.yData;return{object:this,pointId:a,dataCoord:[o[a%this.shape[0]],s[a/this.shape[0]|0]]}},u.update=function(t){var e=(t=t||{}).shape||[0,0],n=t.x||i(e[0]),o=t.y||i(e[1]),s=t.z||new Float32Array(e[0]*e[1]),l=!1!==t.zsmooth;this.xData=n,this.yData=o;var c,u,h,d,p=t.colorLevels||[0],g=t.colorValues||[0,0,0,1],v=p.length,m=this.bounds;l?(c=m[0]=n[0],u=m[1]=o[0],h=m[2]=n[n.length-1],d=m[3]=o[o.length-1]):(c=m[0]=n[0]+(n[1]-n[0])/2,u=m[1]=o[0]+(o[1]-o[0])/2,h=m[2]=n[n.length-1]+(n[n.length-1]-n[n.length-2])/2,d=m[3]=o[o.length-1]+(o[o.length-1]-o[o.length-2])/2);var y=1/(h-c),b=1/(d-u),x=e[0],w=e[1];this.shape=[x,w];var _=(l?(x-1)*(w-1):x*w)*(f.length>>>1);this.numVertices=_;for(var k=a.mallocUint8(4*_),T=a.mallocFloat32(2*_),M=a.mallocUint8(2*_),A=a.mallocUint32(_),S=0,E=l?x-1:x,C=l?w-1:w,P=0;P max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform sampler2D dashTexture;\nuniform float dashScale;\nuniform float opacity;\n\nvarying vec3 worldPosition;\nvarying float pixelArcLength;\nvarying vec4 fragColor;\n\nvoid main() {\n if (\n outOfRange(clipBounds[0], clipBounds[1], worldPosition) ||\n fragColor.a * opacity == 0.\n ) discard;\n\n float dashWeight = texture2D(dashTexture, vec2(dashScale * pixelArcLength, 0)).r;\n if(dashWeight < 0.5) {\n discard;\n }\n gl_FragColor = fragColor * opacity;\n}\n"]),s=r(["precision highp float;\n#define GLSLIFY 1\n\n#define FLOAT_MAX 1.70141184e38\n#define FLOAT_MIN 1.17549435e-38\n\n// https://github.com/mikolalysenko/glsl-read-float/blob/master/index.glsl\nvec4 packFloat(float v) {\n float av = abs(v);\n\n //Handle special cases\n if(av < FLOAT_MIN) {\n return vec4(0.0, 0.0, 0.0, 0.0);\n } else if(v > FLOAT_MAX) {\n return vec4(127.0, 128.0, 0.0, 0.0) / 255.0;\n } else if(v < -FLOAT_MAX) {\n return vec4(255.0, 128.0, 0.0, 0.0) / 255.0;\n }\n\n vec4 c = vec4(0,0,0,0);\n\n //Compute exponent and mantissa\n float e = floor(log2(av));\n float m = av * pow(2.0, -e) - 1.0;\n\n //Unpack mantissa\n c[1] = floor(128.0 * m);\n m -= c[1] / 128.0;\n c[2] = floor(32768.0 * m);\n m -= c[2] / 32768.0;\n c[3] = floor(8388608.0 * m);\n\n //Unpack exponent\n float ebias = e + 127.0;\n c[0] = floor(ebias / 2.0);\n ebias -= c[0] * 2.0;\n c[1] += floor(ebias) * 128.0;\n\n //Unpack sign bit\n c[0] += 128.0 * step(0.0, -v);\n\n //Scale back to range\n return c / 255.0;\n}\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform float pickId;\nuniform vec3 clipBounds[2];\n\nvarying vec3 worldPosition;\nvarying float pixelArcLength;\nvarying vec4 fragColor;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], worldPosition)) discard;\n\n gl_FragColor = vec4(pickId/255.0, packFloat(pixelArcLength).xyz);\n}"]),l=[{name:"position",type:"vec3"},{name:"nextPosition",type:"vec3"},{name:"arcLength",type:"float"},{name:"lineWidth",type:"float"},{name:"color",type:"vec4"}];e.createShader=function(t){return i(t,a,o,null,l)},e.createPickShader=function(t){return i(t,a,s,null,l)}},6086:function(t,e,n){"use strict";t.exports=function(t){var e=t.gl||t.scene&&t.scene.gl,n=f(e);n.attributes.position.location=0,n.attributes.nextPosition.location=1,n.attributes.arcLength.location=2,n.attributes.lineWidth.location=3,n.attributes.color.location=4;var o=h(e);o.attributes.position.location=0,o.attributes.nextPosition.location=1,o.attributes.arcLength.location=2,o.attributes.lineWidth.location=3,o.attributes.color.location=4;for(var s=r(e),l=i(e,[{buffer:s,size:3,offset:0,stride:48},{buffer:s,size:3,offset:12,stride:48},{buffer:s,size:1,offset:24,stride:48},{buffer:s,size:1,offset:28,stride:48},{buffer:s,size:4,offset:32,stride:48}]),u=c(new Array(1024),[256,1,4]),d=0;d<1024;++d)u.data[d]=255;var p=a(e,u);p.wrap=e.REPEAT;var g=new m(e,n,o,s,l,p);return g.update(t),g};var r=n(5827),i=n(2944),a=n(8931),o=new Uint8Array(4),s=new Float32Array(o.buffer),l=n(5070),c=n(5050),u=n(248),f=u.createShader,h=u.createPickShader,d=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function p(t,e){for(var n=0,r=0;r<3;++r){var i=t[r]-e[r];n+=i*i}return Math.sqrt(n)}function g(t){for(var e=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],n=0;n<3;++n)e[0][n]=Math.max(t[0][n],e[0][n]),e[1][n]=Math.min(t[1][n],e[1][n]);return e}function v(t,e,n,r){this.arcLength=t,this.position=e,this.index=n,this.dataCoordinate=r}function m(t,e,n,r,i,a){this.gl=t,this.shader=e,this.pickShader=n,this.buffer=r,this.vao=i,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.points=[],this.arcLength=[],this.vertexCount=0,this.bounds=[[0,0,0],[0,0,0]],this.pickId=0,this.lineWidth=1,this.texture=a,this.dashScale=1,this.opacity=1,this.hasAlpha=!1,this.dirty=!0,this.pixelRatio=1}var y=m.prototype;y.isTransparent=function(){return this.hasAlpha},y.isOpaque=function(){return!this.hasAlpha},y.pickSlots=1,y.setPickBase=function(t){this.pickId=t},y.drawTransparent=y.draw=function(t){if(this.vertexCount){var e=this.gl,n=this.shader,r=this.vao;n.bind(),n.uniforms={model:t.model||d,view:t.view||d,projection:t.projection||d,clipBounds:g(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[e.drawingBufferWidth,e.drawingBufferHeight],pixelRatio:this.pixelRatio},r.bind(),r.draw(e.TRIANGLE_STRIP,this.vertexCount),r.unbind()}},y.drawPick=function(t){if(this.vertexCount){var e=this.gl,n=this.pickShader,r=this.vao;n.bind(),n.uniforms={model:t.model||d,view:t.view||d,projection:t.projection||d,pickId:this.pickId,clipBounds:g(this.clipBounds),screenShape:[e.drawingBufferWidth,e.drawingBufferHeight],pixelRatio:this.pixelRatio},r.bind(),r.draw(e.TRIANGLE_STRIP,this.vertexCount),r.unbind()}},y.update=function(t){var e,n;this.dirty=!0;var r=!!t.connectGaps;"dashScale"in t&&(this.dashScale=t.dashScale),this.hasAlpha=!1,"opacity"in t&&(this.opacity=+t.opacity,this.opacity<1&&(this.hasAlpha=!0));var i=[],a=[],o=[],s=0,u=0,f=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],h=t.position||t.positions;if(h){var d=t.color||t.colors||[0,0,0,1],g=t.lineWidth||1,v=!1;t:for(e=1;e0){for(var _=0;_<24;++_)i.push(i[i.length-12]);u+=2,v=!0}continue t}f[0][n]=Math.min(f[0][n],x[n],w[n]),f[1][n]=Math.max(f[1][n],x[n],w[n])}Array.isArray(d[0])?(m=d.length>e-1?d[e-1]:d.length>0?d[d.length-1]:[0,0,0,1],y=d.length>e?d[e]:d.length>0?d[d.length-1]:[0,0,0,1]):m=y=d,3===m.length&&(m=[m[0],m[1],m[2],1]),3===y.length&&(y=[y[0],y[1],y[2],1]),!this.hasAlpha&&m[3]<1&&(this.hasAlpha=!0),b=Array.isArray(g)?g.length>e-1?g[e-1]:g.length>0?g[g.length-1]:[0,0,0,1]:g;var k=s;if(s+=p(x,w),v){for(n=0;n<2;++n)i.push(x[0],x[1],x[2],w[0],w[1],w[2],k,b,m[0],m[1],m[2],m[3]);u+=2,v=!1}i.push(x[0],x[1],x[2],w[0],w[1],w[2],k,b,m[0],m[1],m[2],m[3],x[0],x[1],x[2],w[0],w[1],w[2],k,-b,m[0],m[1],m[2],m[3],w[0],w[1],w[2],x[0],x[1],x[2],s,-b,y[0],y[1],y[2],y[3],w[0],w[1],w[2],x[0],x[1],x[2],s,b,y[0],y[1],y[2],y[3]),u+=4}}if(this.buffer.update(i),a.push(s),o.push(h[h.length-1].slice()),this.bounds=f,this.vertexCount=u,this.points=o,this.arcLength=a,"dashes"in t){var T=t.dashes.slice();for(T.unshift(0),e=1;e1.0001)return null;m+=v[f]}return Math.abs(m-1)>.001?null:[h,s(t,v),v]}},2056:function(t,e,n){var r=n(6832),i=r(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position, normal;\nattribute vec4 color;\nattribute vec2 uv;\n\nuniform mat4 model\n , view\n , projection\n , inverseModel;\nuniform vec3 eyePosition\n , lightPosition;\n\nvarying vec3 f_normal\n , f_lightDirection\n , f_eyeDirection\n , f_data;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvec4 project(vec3 p) {\n return projection * view * model * vec4(p, 1.0);\n}\n\nvoid main() {\n gl_Position = project(position);\n\n //Lighting geometry parameters\n vec4 cameraCoordinate = view * vec4(position , 1.0);\n cameraCoordinate.xyz /= cameraCoordinate.w;\n f_lightDirection = lightPosition - cameraCoordinate.xyz;\n f_eyeDirection = eyePosition - cameraCoordinate.xyz;\n f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);\n\n f_color = color;\n f_data = position;\n f_uv = uv;\n}\n"]),a=r(["#extension GL_OES_standard_derivatives : enable\n\nprecision highp float;\n#define GLSLIFY 1\n\nfloat beckmannDistribution(float x, float roughness) {\n float NdotH = max(x, 0.0001);\n float cos2Alpha = NdotH * NdotH;\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\n float roughness2 = roughness * roughness;\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\n return exp(tan2Alpha / roughness2) / denom;\n}\n\nfloat cookTorranceSpecular(\n vec3 lightDirection,\n vec3 viewDirection,\n vec3 surfaceNormal,\n float roughness,\n float fresnel) {\n\n float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);\n float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);\n\n //Half angle vector\n vec3 H = normalize(lightDirection + viewDirection);\n\n //Geometric term\n float NdotH = max(dot(surfaceNormal, H), 0.0);\n float VdotH = max(dot(viewDirection, H), 0.000001);\n float LdotH = max(dot(lightDirection, H), 0.000001);\n float G1 = (2.0 * NdotH * VdotN) / VdotH;\n float G2 = (2.0 * NdotH * LdotN) / LdotH;\n float G = min(1.0, min(G1, G2));\n \n //Distribution term\n float D = beckmannDistribution(NdotH, roughness);\n\n //Fresnel term\n float F = pow(1.0 - VdotN, fresnel);\n\n //Multiply terms and done\n return G * F * D / max(3.14159265 * VdotN, 0.000001);\n}\n\n//#pragma glslify: beckmann = require(glsl-specular-beckmann) // used in gl-surface3d\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float roughness\n , fresnel\n , kambient\n , kdiffuse\n , kspecular;\nuniform sampler2D texture;\n\nvarying vec3 f_normal\n , f_lightDirection\n , f_eyeDirection\n , f_data;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n if (f_color.a == 0.0 ||\n outOfRange(clipBounds[0], clipBounds[1], f_data)\n ) discard;\n\n vec3 N = normalize(f_normal);\n vec3 L = normalize(f_lightDirection);\n vec3 V = normalize(f_eyeDirection);\n\n if(gl_FrontFacing) {\n N = -N;\n }\n\n float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));\n //float specular = max(0.0, beckmann(L, V, N, roughness)); // used in gl-surface3d\n\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\n\n vec4 surfaceColor = vec4(f_color.rgb, 1.0) * texture2D(texture, f_uv);\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\n\n gl_FragColor = litColor * f_color.a;\n}\n"]),o=r(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 uv;\n\nuniform mat4 model, view, projection;\n\nvarying vec4 f_color;\nvarying vec3 f_data;\nvarying vec2 f_uv;\n\nvoid main() {\n gl_Position = projection * view * model * vec4(position, 1.0);\n f_color = color;\n f_data = position;\n f_uv = uv;\n}"]),s=r(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform sampler2D texture;\nuniform float opacity;\n\nvarying vec4 f_color;\nvarying vec3 f_data;\nvarying vec2 f_uv;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_data)) discard;\n\n gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;\n}"]),l=r(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 uv;\nattribute float pointSize;\n\nuniform mat4 model, view, projection;\nuniform vec3 clipBounds[2];\n\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0.0, 0.0 ,0.0 ,0.0);\n } else {\n gl_Position = projection * view * model * vec4(position, 1.0);\n }\n gl_PointSize = pointSize;\n f_color = color;\n f_uv = uv;\n}"]),c=r(["precision highp float;\n#define GLSLIFY 1\n\nuniform sampler2D texture;\nuniform float opacity;\n\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n vec2 pointR = gl_PointCoord.xy - vec2(0.5, 0.5);\n if(dot(pointR, pointR) > 0.25) {\n discard;\n }\n gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;\n}"]),u=r(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n gl_Position = projection * view * model * vec4(position, 1.0);\n f_id = id;\n f_position = position;\n}"]),f=r(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float pickId;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n\n gl_FragColor = vec4(pickId, f_id.xyz);\n}"]),h=r(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute float pointSize;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\nuniform vec3 clipBounds[2];\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0.0, 0.0, 0.0, 0.0);\n } else {\n gl_Position = projection * view * model * vec4(position, 1.0);\n gl_PointSize = pointSize;\n }\n f_id = id;\n f_position = position;\n}"]),d=r(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position;\n\nuniform mat4 model, view, projection;\n\nvoid main() {\n gl_Position = projection * view * model * vec4(position, 1.0);\n}"]),p=r(["precision highp float;\n#define GLSLIFY 1\n\nuniform vec3 contourColor;\n\nvoid main() {\n gl_FragColor = vec4(contourColor, 1.0);\n}\n"]);e.meshShader={vertex:i,fragment:a,attributes:[{name:"position",type:"vec3"},{name:"normal",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},e.wireShader={vertex:o,fragment:s,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},e.pointShader={vertex:l,fragment:c,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"pointSize",type:"float"}]},e.pickShader={vertex:u,fragment:f,attributes:[{name:"position",type:"vec3"},{name:"id",type:"vec4"}]},e.pointPickShader={vertex:h,fragment:f,attributes:[{name:"position",type:"vec3"},{name:"pointSize",type:"float"},{name:"id",type:"vec4"}]},e.contourShader={vertex:d,fragment:p,attributes:[{name:"position",type:"vec3"}]}},8116:function(t,e,n){"use strict";var r=n(5158),i=n(5827),a=n(2944),o=n(8931),s=n(115),l=n(104),c=n(7437),u=n(5050),f=n(9156),h=n(7212),d=n(5306),p=n(2056),g=n(4340),v=p.meshShader,m=p.wireShader,y=p.pointShader,b=p.pickShader,x=p.pointPickShader,w=p.contourShader,_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function k(t,e,n,r,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,k,T,M,A,S){this.gl=t,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=e,this.dirty=!0,this.triShader=n,this.lineShader=r,this.pointShader=i,this.pickShader=a,this.pointPickShader=o,this.contourShader=s,this.trianglePositions=l,this.triangleColors=u,this.triangleNormals=h,this.triangleUVs=f,this.triangleIds=c,this.triangleVAO=d,this.triangleCount=0,this.lineWidth=1,this.edgePositions=p,this.edgeColors=v,this.edgeUVs=m,this.edgeIds=g,this.edgeVAO=y,this.edgeCount=0,this.pointPositions=b,this.pointColors=w,this.pointUVs=k,this.pointSizes=T,this.pointIds=x,this.pointVAO=M,this.pointCount=0,this.contourLineWidth=1,this.contourPositions=A,this.contourVAO=S,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=_,this._view=_,this._projection=_,this._resolution=[1,1]}var T=k.prototype;function M(t,e){if(!e)return 1;if(!e.length)return 1;for(var n=0;nt&&n>0){var r=(e[n][0]-t)/(e[n][0]-e[n-1][0]);return e[n][1]*(1-r)+r*e[n-1][1]}}return 1}function A(t){var e=r(t,y.vertex,y.fragment);return e.attributes.position.location=0,e.attributes.color.location=2,e.attributes.uv.location=3,e.attributes.pointSize.location=4,e}function S(t){var e=r(t,b.vertex,b.fragment);return e.attributes.position.location=0,e.attributes.id.location=1,e}function E(t){var e=r(t,x.vertex,x.fragment);return e.attributes.position.location=0,e.attributes.id.location=1,e.attributes.pointSize.location=4,e}function C(t){var e=r(t,w.vertex,w.fragment);return e.attributes.position.location=0,e}T.isOpaque=function(){return!this.hasAlpha},T.isTransparent=function(){return this.hasAlpha},T.pickSlots=1,T.setPickBase=function(t){this.pickId=t},T.highlight=function(t){if(t&&this.contourEnable){for(var e=h(this.cells,this.intensity,t.intensity),n=e.cells,r=e.vertexIds,i=e.vertexWeights,a=n.length,o=d.mallocFloat32(6*a),s=0,l=0;l0&&((f=this.triShader).bind(),f.uniforms=s,this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()),this.edgeCount>0&&this.lineWidth>0&&((f=this.lineShader).bind(),f.uniforms=s,this.edgeVAO.bind(),e.lineWidth(this.lineWidth*this.pixelRatio),e.drawArrays(e.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()),this.pointCount>0&&((f=this.pointShader).bind(),f.uniforms=s,this.pointVAO.bind(),e.drawArrays(e.POINTS,0,this.pointCount),this.pointVAO.unbind()),this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0&&((f=this.contourShader).bind(),f.uniforms=s,this.contourVAO.bind(),e.drawArrays(e.LINES,0,this.contourCount),this.contourVAO.unbind())},T.drawPick=function(t){t=t||{};for(var e=this.gl,n=t.model||_,r=t.view||_,i=t.projection||_,a=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],o=0;o<3;++o)a[0][o]=Math.max(a[0][o],this.clipBounds[0][o]),a[1][o]=Math.min(a[1][o],this.clipBounds[1][o]);this._model=[].slice.call(n),this._view=[].slice.call(r),this._projection=[].slice.call(i),this._resolution=[e.drawingBufferWidth,e.drawingBufferHeight];var s,l={model:n,view:r,projection:i,clipBounds:a,pickId:this.pickId/255};(s=this.pickShader).bind(),s.uniforms=l,this.triangleCount>0&&(this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),e.lineWidth(this.lineWidth*this.pixelRatio),e.drawArrays(e.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()),this.pointCount>0&&((s=this.pointPickShader).bind(),s.uniforms=l,this.pointVAO.bind(),e.drawArrays(e.POINTS,0,this.pointCount),this.pointVAO.unbind())},T.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;for(var e=t.value[0]+256*t.value[1]+65536*t.value[2],n=this.cells[e],r=this.positions,i=new Array(n.length),a=0;al[T]&&(a.uniforms.dataAxis=t,a.uniforms.screenOffset=e,a.uniforms.color=v[r],a.uniforms.angle=m[r],c.drawArrays(c.TRIANGLES,l[T],l[M]-l[T]))),y[r]&&k&&(e[1^r]-=A*d*b[r],a.uniforms.dataAxis=n,a.uniforms.screenOffset=e,a.uniforms.color=x[r],a.uniforms.angle=w[r],c.drawArrays(c.TRIANGLES,_,k)),e[1^r]=A*u[2+(1^r)]-1,p[r+2]&&(e[1^r]+=A*d*g[r+2],Tl[T]&&(a.uniforms.dataAxis=t,a.uniforms.screenOffset=e,a.uniforms.color=v[r+2],a.uniforms.angle=m[r+2],c.drawArrays(c.TRIANGLES,l[T],l[M]-l[T]))),y[r+2]&&k&&(e[1^r]+=A*d*b[r+2],a.uniforms.dataAxis=n,a.uniforms.screenOffset=e,a.uniforms.color=x[r+2],a.uniforms.angle=w[r+2],c.drawArrays(c.TRIANGLES,_,k))}}(),c.drawTitle=function(){var t=[0,0],e=[0,0];return function(){var n=this.plot,r=this.shader,i=n.gl,a=n.screenBox,o=n.titleCenter,s=n.titleAngle,l=n.titleColor,c=n.pixelRatio;if(this.titleCount){for(var u=0;u<2;++u)e[u]=2*(o[u]*c-a[u])/(a[2+u]-a[u])-1;r.bind(),r.uniforms.dataAxis=t,r.uniforms.screenOffset=e,r.uniforms.angle=s,r.uniforms.color=l,i.drawArrays(i.TRIANGLES,this.titleOffset,this.titleCount)}}}(),c.bind=function(){var t=[0,0],e=[0,0],n=[0,0];return function(){var r=this.plot,i=this.shader,a=r._tickBounds,o=r.dataBox,s=r.screenBox,l=r.viewBox;i.bind();for(var c=0;c<2;++c){var u=a[c],f=a[c+2]-u,h=.5*(o[c+2]+o[c]),d=o[c+2]-o[c],p=l[c],g=l[c+2]-p,v=s[c],m=s[c+2]-v;e[c]=2*f/d*g/m,t[c]=2*(u-h)/d*g/m}n[1]=2*r.pixelRatio/(s[3]-s[1]),n[0]=n[1]*(s[3]-s[1])/(s[2]-s[0]),i.uniforms.dataScale=e,i.uniforms.dataShift=t,i.uniforms.textScale=n,this.vbo.bind(),i.attributes.textCoordinate.pointer()}}(),c.update=function(t){var e,n,r,i,o,s=[],l=t.ticks,c=t.bounds;for(o=0;o<2;++o){var u=[Math.floor(s.length/3)],f=[-1/0],h=l[o];for(e=0;e=0){var g=e[p]-r[p]*(e[p+2]-e[p])/(r[p+2]-r[p]);0===p?o.drawLine(g,e[1],g,e[3],d[p],h[p]):o.drawLine(e[0],g,e[2],g,d[p],h[p])}}for(p=0;p=0;--t)this.objects[t].dispose();for(this.objects.length=0,t=this.overlays.length-1;t>=0;--t)this.overlays[t].dispose();this.overlays.length=0,this.gl=null},c.addObject=function(t){this.objects.indexOf(t)<0&&(this.objects.push(t),this.setDirty())},c.removeObject=function(t){for(var e=this.objects,n=0;nMath.abs(e))c.rotate(a,0,0,-t*n*Math.PI*p.rotateSpeed/window.innerWidth);else if(!p._ortho){var o=-p.zoomSpeed*i*e/window.innerHeight*(a-c.lastT())/20;c.pan(a,0,0,f*(Math.exp(o)-1))}}}),!0)},p.enableMouseListeners(),p};var r=n(8161),i=n(1152),a=n(6145),o=n(6475),s=n(2565),l=n(5233)},8245:function(t,e,n){var r=n(6832),i=n(5158),a=r(["precision mediump float;\n#define GLSLIFY 1\nattribute vec2 position;\nvarying vec2 uv;\nvoid main() {\n uv = position;\n gl_Position = vec4(position, 0, 1);\n}"]),o=r(["precision mediump float;\n#define GLSLIFY 1\n\nuniform sampler2D accumBuffer;\nvarying vec2 uv;\n\nvoid main() {\n vec4 accum = texture2D(accumBuffer, 0.5 * (uv + 1.0));\n gl_FragColor = min(vec4(1,1,1,1), accum);\n}"]);t.exports=function(t){return i(t,a,o,null,[{name:"position",type:"vec2"}])}},1059:function(t,e,n){"use strict";var r=n(4296),i=n(7453),a=n(2771),o=n(6496),s=n(2611),l=n(4234),c=n(8126),u=n(6145),f=n(1120),h=n(5268),d=n(8245),p=n(2321)({tablet:!0,featureDetect:!0});function g(){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 v(t){var e=Math.round(Math.log(Math.abs(t))/Math.log(10));if(e<0){var n=Math.round(Math.pow(10,-e));return Math.ceil(t*n)/n}return e>0?(n=Math.round(Math.pow(10,e)),Math.ceil(t/n)*n):Math.ceil(t)}function m(t){return"boolean"!==typeof t||t}t.exports={createScene:function(t){(t=t||{}).camera=t.camera||{};var e=t.canvas;e||(e=document.createElement("canvas"),t.container?t.container.appendChild(e):document.body.appendChild(e));var n=t.gl;if(n||(t.glOptions&&(p=!!t.glOptions.preserveDrawingBuffer),n=function(t,e){var n=null;try{(n=t.getContext("webgl",e))||(n=t.getContext("experimental-webgl",e))}catch(r){return null}return n}(e,t.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:p})),!n)throw new Error("webgl not supported");var y=t.bounds||[[-10,-10,-10],[10,10,10]],b=new g,x=l(n,n.drawingBufferWidth,n.drawingBufferHeight,{preferFloat:!p}),w=d(n),_=t.cameraObject&&!0===t.cameraObject._ortho||t.camera.projection&&"orthographic"===t.camera.projection.type||!1,k={eye:t.camera.eye||[2,0,0],center:t.camera.center||[0,0,0],up:t.camera.up||[0,1,0],zoomMin:t.camera.zoomMax||.1,zoomMax:t.camera.zoomMin||100,mode:t.camera.mode||"turntable",_ortho:_},T=t.axes||{},M=i(n,T);M.enable=!T.disable;var A=t.spikes||{},S=o(n,A),E=[],C=[],P=[],L=[],O=!0,I=!0,D=new Array(16),R=new Array(16),z={view:null,projection:D,model:R,_ortho:!1},N=(I=!0,[n.drawingBufferWidth,n.drawingBufferHeight]),j=t.cameraObject||r(e,k),F={gl:n,contextLost:!1,pixelRatio:t.pixelRatio||1,canvas:e,selection:b,camera:j,axes:M,axesPixels:null,spikes:S,bounds:y,objects:E,shape:N,aspect:t.aspectRatio||[1,1,1],pickRadius:t.pickRadius||10,zNear:t.zNear||.01,zFar:t.zFar||1e3,fovy:t.fovy||Math.PI/4,clearColor:t.clearColor||[0,0,0,0],autoResize:m(t.autoResize),autoBounds:m(t.autoBounds),autoScale:!!t.autoScale,autoCenter:m(t.autoCenter),clipToBounds:m(t.clipToBounds),snapToData:!!t.snapToData,onselect:t.onselect||null,onrender:t.onrender||null,onclick:t.onclick||null,cameraParams:z,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(t){this.aspect[0]=t.x,this.aspect[1]=t.y,this.aspect[2]=t.z,I=!0},setBounds:function(t,e){this.bounds[0][t]=e.min,this.bounds[1][t]=e.max},setClearColor:function(t){this.clearColor=t},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)}},B=[n.drawingBufferWidth/F.pixelRatio|0,n.drawingBufferHeight/F.pixelRatio|0];function U(){if(!F._stopped&&F.autoResize){var t=e.parentNode,n=1,r=1;t&&t!==document.body?(n=t.clientWidth,r=t.clientHeight):(n=window.innerWidth,r=window.innerHeight);var i=0|Math.ceil(n*F.pixelRatio),a=0|Math.ceil(r*F.pixelRatio);if(i!==e.width||a!==e.height){e.width=i,e.height=a;var o=e.style;o.position=o.position||"absolute",o.left="0px",o.top="0px",o.width=n+"px",o.height=r+"px",O=!0}}}function H(){for(var t=E.length,e=L.length,r=0;r0&&0===P[e-1];)P.pop(),L.pop().dispose()}function V(){if(F.contextLost)return!0;n.isContextLost()&&(F.contextLost=!0,F.mouseListener.enabled=!1,F.selection.object=null,F.oncontextloss&&F.oncontextloss())}F.autoResize&&U(),window.addEventListener("resize",U),F.update=function(t){F._stopped||(t=t||{},O=!0,I=!0)},F.add=function(t){F._stopped||(t.axes=M,E.push(t),C.push(-1),O=!0,I=!0,H())},F.remove=function(t){if(!F._stopped){var e=E.indexOf(t);e<0||(E.splice(e,1),C.pop(),O=!0,I=!0,H())}},F.dispose=function(){if(!F._stopped&&(F._stopped=!0,window.removeEventListener("resize",U),e.removeEventListener("webglcontextlost",V),F.mouseListener.enabled=!1,!F.contextLost)){M.dispose(),S.dispose();for(var t=0;tb.distance)continue;for(var c=0;c 1.0) {\n discard;\n }\n baseColor = mix(borderColor, color, step(radius, centerFraction));\n gl_FragColor = vec4(baseColor.rgb * baseColor.a, baseColor.a);\n }\n}\n"]),e.pickVertex=r(["precision mediump float;\n#define GLSLIFY 1\n\nattribute vec2 position;\nattribute vec4 pickId;\n\nuniform mat3 matrix;\nuniform float pointSize;\nuniform vec4 pickOffset;\n\nvarying vec4 fragId;\n\nvoid main() {\n vec3 hgPosition = matrix * vec3(position, 1);\n gl_Position = vec4(hgPosition.xy, 0, hgPosition.z);\n gl_PointSize = pointSize;\n\n vec4 id = pickId + pickOffset;\n id.y += floor(id.x / 256.0);\n id.x -= floor(id.x / 256.0) * 256.0;\n\n id.z += floor(id.y / 256.0);\n id.y -= floor(id.y / 256.0) * 256.0;\n\n id.w += floor(id.z / 256.0);\n id.z -= floor(id.z / 256.0) * 256.0;\n\n fragId = id;\n}\n"]),e.pickFragment=r(["precision mediump float;\n#define GLSLIFY 1\n\nvarying vec4 fragId;\n\nvoid main() {\n float radius = length(2.0 * gl_PointCoord.xy - 1.0);\n if(radius > 1.0) {\n discard;\n }\n gl_FragColor = fragId / 255.0;\n}\n"])},8271:function(t,e,n){"use strict";var r=n(5158),i=n(5827),a=n(5306),o=n(8023);function s(t,e,n,r,i){this.plot=t,this.offsetBuffer=e,this.pickBuffer=n,this.shader=r,this.pickShader=i,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}t.exports=function(t,e){var n=t.gl,a=i(n),l=i(n),c=r(n,o.pointVertex,o.pointFragment),u=r(n,o.pickVertex,o.pickFragment),f=new s(t,a,l,c,u);return f.update(e),t.addObject(f),f};var l=s.prototype;l.dispose=function(){this.shader.dispose(),this.pickShader.dispose(),this.offsetBuffer.dispose(),this.pickBuffer.dispose(),this.plot.removeObject(this)},l.update=function(t){var e;function n(e,n){return e in t?t[e]:n}t=t||{},this.sizeMin=n("sizeMin",.5),this.sizeMax=n("sizeMax",20),this.color=n("color",[1,0,0,1]).slice(),this.areaRatio=n("areaRatio",1),this.borderColor=n("borderColor",[0,0,0,1]).slice(),this.blend=n("blend",!1);var r=t.positions.length>>>1,i=t.positions instanceof Float32Array,o=t.idToIndex instanceof Int32Array&&t.idToIndex.length>=r,s=t.positions,l=i?s:a.mallocFloat32(s.length),c=o?t.idToIndex:a.mallocInt32(r);if(i||l.set(s),!o)for(l.set(s),e=0;e>>1;for(n=0;n=e[0]&&a<=e[2]&&o>=e[1]&&o<=e[3]&&r++}return r}(this.points,o),u=this.plot.pickPixelRatio*Math.max(Math.min(this.sizeMinCap,this.sizeMin),Math.min(this.sizeMax,this.sizeMax/Math.pow(c,.33333)));t[0]=2/s,t[4]=2/l,t[6]=-2*o[0]/s-1,t[7]=-2*o[1]/l-1,this.offsetBuffer.bind(),i.bind(),i.attributes.position.pointer(),i.uniforms.matrix=t,i.uniforms.color=this.color,i.uniforms.borderColor=this.borderColor,i.uniforms.pointCloud=u<5,i.uniforms.pointSize=u,i.uniforms.centerFraction=Math.min(1,Math.max(0,Math.sqrt(1-this.areaRatio))),r&&(e[0]=255&n,e[1]=n>>8&255,e[2]=n>>16&255,e[3]=n>>24&255,this.pickBuffer.bind(),i.attributes.pickId.pointer(a.UNSIGNED_BYTE),i.uniforms.pickOffset=e,this.pickOffset=n);var f=a.getParameter(a.BLEND),h=a.getParameter(a.DITHER);return f&&!this.blend&&a.disable(a.BLEND),h&&a.disable(a.DITHER),a.drawArrays(a.POINTS,0,this.pointCount),f&&!this.blend&&a.enable(a.BLEND),h&&a.enable(a.DITHER),n+this.pointCount}}(),l.draw=l.unifiedDraw,l.drawPick=l.unifiedDraw,l.pick=function(t,e,n){var r=this.pickOffset,i=this.pointCount;if(n=r+i)return null;var a=n-r,o=this.points;return{object:this,pointId:a,dataCoord:[o[2*a],o[2*a+1]]}}},6093:function(t){t.exports=function(t,e,n,r){var i,a,o,s,l,c=e[0],u=e[1],f=e[2],h=e[3],d=n[0],p=n[1],g=n[2],v=n[3];return(a=c*d+u*p+f*g+h*v)<0&&(a=-a,d=-d,p=-p,g=-g,v=-v),1-a>1e-6?(i=Math.acos(a),o=Math.sin(i),s=Math.sin((1-r)*i)/o,l=Math.sin(r*i)/o):(s=1-r,l=r),t[0]=s*c+l*d,t[1]=s*u+l*p,t[2]=s*f+l*g,t[3]=s*h+l*v,t}},8240:function(t){"use strict";t.exports=function(t){return t||0===t?t.toString():""}},4123:function(t,e,n){"use strict";var r=n(875);t.exports=function(t,e,n){var a=i[e];if(a||(a=i[e]={}),t in a)return a[t];var o={textAlign:"center",textBaseline:"middle",lineHeight:1,font:e,lineSpacing:1.25,styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},triangles:!0},s=r(t,o);o.triangles=!1;var l,c,u=r(t,o);if(n&&1!==n){for(l=0;l max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 glyph;\nattribute vec4 id;\n\nuniform vec4 highlightId;\nuniform float highlightScale;\nuniform mat4 model, view, projection;\nuniform vec3 clipBounds[2];\n\nvarying vec4 interpColor;\nvarying vec4 pickId;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0,0,0,0);\n } else {\n float scale = 1.0;\n if(distance(highlightId, id) < 0.0001) {\n scale = highlightScale;\n }\n\n vec4 worldPosition = model * vec4(position, 1);\n vec4 viewPosition = view * worldPosition;\n viewPosition = viewPosition / viewPosition.w;\n vec4 clipPosition = projection * (viewPosition + scale * vec4(glyph.x, -glyph.y, 0, 0));\n\n gl_Position = clipPosition;\n interpColor = color;\n pickId = id;\n dataCoordinate = position;\n }\n}"]),o=i(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 glyph;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\nuniform vec2 screenSize;\nuniform vec3 clipBounds[2];\nuniform float highlightScale, pixelRatio;\nuniform vec4 highlightId;\n\nvarying vec4 interpColor;\nvarying vec4 pickId;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0,0,0,0);\n } else {\n float scale = pixelRatio;\n if(distance(highlightId.bgr, id.bgr) < 0.001) {\n scale *= highlightScale;\n }\n\n vec4 worldPosition = model * vec4(position, 1.0);\n vec4 viewPosition = view * worldPosition;\n vec4 clipPosition = projection * viewPosition;\n clipPosition /= clipPosition.w;\n\n gl_Position = clipPosition + vec4(screenSize * scale * vec2(glyph.x, -glyph.y), 0.0, 0.0);\n interpColor = color;\n pickId = id;\n dataCoordinate = position;\n }\n}"]),s=i(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 glyph;\nattribute vec4 id;\n\nuniform float highlightScale;\nuniform vec4 highlightId;\nuniform vec3 axes[2];\nuniform mat4 model, view, projection;\nuniform vec2 screenSize;\nuniform vec3 clipBounds[2];\nuniform float scale, pixelRatio;\n\nvarying vec4 interpColor;\nvarying vec4 pickId;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0,0,0,0);\n } else {\n float lscale = pixelRatio * scale;\n if(distance(highlightId, id) < 0.0001) {\n lscale *= highlightScale;\n }\n\n vec4 clipCenter = projection * view * model * vec4(position, 1);\n vec3 dataPosition = position + 0.5*lscale*(axes[0] * glyph.x + axes[1] * glyph.y) * clipCenter.w * screenSize.y;\n vec4 clipPosition = projection * view * model * vec4(dataPosition, 1);\n\n gl_Position = clipPosition;\n interpColor = color;\n pickId = id;\n dataCoordinate = dataPosition;\n }\n}\n"]),l=i(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 fragClipBounds[2];\nuniform float opacity;\n\nvarying vec4 interpColor;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (\n outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate) ||\n interpColor.a * opacity == 0.\n ) discard;\n gl_FragColor = interpColor * opacity;\n}\n"]),c=i(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 fragClipBounds[2];\nuniform float pickGroup;\n\nvarying vec4 pickId;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate)) discard;\n\n gl_FragColor = vec4(pickGroup, pickId.bgr);\n}"]),u=[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"glyph",type:"vec2"},{name:"id",type:"vec4"}],f={vertex:a,fragment:l,attributes:u},h={vertex:o,fragment:l,attributes:u},d={vertex:s,fragment:l,attributes:u},p={vertex:a,fragment:c,attributes:u},g={vertex:o,fragment:c,attributes:u},v={vertex:s,fragment:c,attributes:u};function m(t,e){var n=r(t,e),i=n.attributes;return i.position.location=0,i.color.location=1,i.glyph.location=2,i.id.location=3,n}e.createPerspective=function(t){return m(t,f)},e.createOrtho=function(t){return m(t,h)},e.createProject=function(t){return m(t,d)},e.createPickPerspective=function(t){return m(t,p)},e.createPickOrtho=function(t){return m(t,g)},e.createPickProject=function(t){return m(t,v)}},2182:function(t,e,n){"use strict";var r=n(3596),i=n(5827),a=n(2944),o=n(5306),s=n(104),l=n(9282),c=n(4123),u=n(8240),f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function h(t,e){var n=t[0],r=t[1],i=t[2],a=t[3];return t[0]=e[0]*n+e[4]*r+e[8]*i+e[12]*a,t[1]=e[1]*n+e[5]*r+e[9]*i+e[13]*a,t[2]=e[2]*n+e[6]*r+e[10]*i+e[14]*a,t[3]=e[3]*n+e[7]*r+e[11]*i+e[15]*a,t}function d(t,e,n,r){return h(r,r),h(r,r),h(r,r)}function p(t,e){this.index=t,this.dataCoordinate=this.position=e}function g(t){return!0===t||t>1?1:t}function v(t,e,n,r,i,a,o,s,l,c,u,f){this.gl=t,this.pixelRatio=1,this.shader=e,this.orthoShader=n,this.projectShader=r,this.pointBuffer=i,this.colorBuffer=a,this.glyphBuffer=o,this.idBuffer=s,this.vao=l,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[2/3,2/3,2/3],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=c,this.pickOrthoShader=u,this.pickProjectShader=f,this.points=[],this._selectResult=new p(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}t.exports=function(t){var e=t.gl,n=l.createPerspective(e),r=l.createOrtho(e),o=l.createProject(e),s=l.createPickPerspective(e),c=l.createPickOrtho(e),u=l.createPickProject(e),f=i(e),h=i(e),d=i(e),p=i(e),g=a(e,[{buffer:f,size:3,type:e.FLOAT},{buffer:h,size:4,type:e.FLOAT},{buffer:d,size:2,type:e.FLOAT},{buffer:p,size:4,type:e.UNSIGNED_BYTE,normalized:!0}]),m=new v(e,n,r,o,f,h,d,p,g,s,c,u);return m.update(t),m};var m=v.prototype;m.pickSlots=1,m.setPickBase=function(t){this.pickId=t},m.isTransparent=function(){if(this.hasAlpha)return!0;for(var t=0;t<3;++t)if(this.axesProject[t]&&this.projectHasAlpha)return!0;return!1},m.isOpaque=function(){if(!this.hasAlpha)return!0;for(var t=0;t<3;++t)if(this.axesProject[t]&&!this.projectHasAlpha)return!0;return!1};var y=[0,0],b=[0,0,0],x=[0,0,0],w=[0,0,0,1],_=[0,0,0,1],k=f.slice(),T=[0,0,0],M=[[0,0,0],[0,0,0]];function A(t){return t[0]=t[1]=t[2]=0,t}function S(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=1,t}function E(t,e,n,r){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[n]=r,t}function C(t,e,n,r){var i,a=e.axesProject,o=e.gl,l=t.uniforms,c=n.model||f,u=n.view||f,h=n.projection||f,p=e.axesBounds,g=function(t){for(var e=M,n=0;n<2;++n)for(var r=0;r<3;++r)e[n][r]=Math.max(Math.min(t[n][r],1e8),-1e8);return e}(e.clipBounds);i=e.axes&&e.axes.lastCubeProps?e.axes.lastCubeProps.axis:[1,1,1],y[0]=2/o.drawingBufferWidth,y[1]=2/o.drawingBufferHeight,t.bind(),l.view=u,l.projection=h,l.screenSize=y,l.highlightId=e.highlightId,l.highlightScale=e.highlightScale,l.clipBounds=g,l.pickGroup=e.pickId/255,l.pixelRatio=r;for(var v=0;v<3;++v)if(a[v]){l.scale=e.projectScale[v],l.opacity=e.projectOpacity[v];for(var m=k,C=0;C<16;++C)m[C]=0;for(C=0;C<4;++C)m[5*C]=1;m[5*v]=0,i[v]<0?m[12+v]=p[0][v]:m[12+v]=p[1][v],s(m,c,m),l.model=m;var P=(v+1)%3,L=(v+2)%3,O=A(b),I=A(x);O[P]=1,I[L]=1;var D=d(0,0,0,S(w,O)),R=d(0,0,0,S(_,I));if(Math.abs(D[1])>Math.abs(R[1])){var z=D;D=R,R=z,z=O,O=I,I=z;var N=P;P=L,L=N}D[0]<0&&(O[P]=-1),R[1]>0&&(I[L]=-1);var j=0,F=0;for(C=0;C<4;++C)j+=Math.pow(c[4*P+C],2),F+=Math.pow(c[4*L+C],2);O[P]/=Math.sqrt(j),I[L]/=Math.sqrt(F),l.axes[0]=O,l.axes[1]=I,l.fragClipBounds[0]=E(T,g[0],v,-1e8),l.fragClipBounds[1]=E(T,g[1],v,1e8),e.vao.bind(),e.vao.draw(o.TRIANGLES,e.vertexCount),e.lineWidth>0&&(o.lineWidth(e.lineWidth*r),e.vao.draw(o.LINES,e.lineVertexCount,e.vertexCount)),e.vao.unbind()}}var P=[[-1e8,-1e8,-1e8],[1e8,1e8,1e8]];function L(t,e,n,r,i,a,o){var s=n.gl;if((a===n.projectHasAlpha||o)&&C(e,n,r,i),a===n.hasAlpha||o){t.bind();var l=t.uniforms;l.model=r.model||f,l.view=r.view||f,l.projection=r.projection||f,y[0]=2/s.drawingBufferWidth,y[1]=2/s.drawingBufferHeight,l.screenSize=y,l.highlightId=n.highlightId,l.highlightScale=n.highlightScale,l.fragClipBounds=P,l.clipBounds=n.axes.bounds,l.opacity=n.opacity,l.pickGroup=n.pickId/255,l.pixelRatio=i,n.vao.bind(),n.vao.draw(s.TRIANGLES,n.vertexCount),n.lineWidth>0&&(s.lineWidth(n.lineWidth*i),n.vao.draw(s.LINES,n.lineVertexCount,n.vertexCount)),n.vao.unbind()}}function O(t,e,n,i){var a;a=Array.isArray(t)?e=this.pointCount||e<0)return null;var n=this.points[e],r=this._selectResult;r.index=e;for(var i=0;i<3;++i)r.position[i]=r.dataCoordinate[i]=n[i];return r},m.highlight=function(t){if(t){var e=t.index,n=255&e,r=e>>8&255,i=e>>16&255;this.highlightId=[n/255,r/255,i/255,0]}else this.highlightId=[1,1,1,1]},m.update=function(t){if("perspective"in(t=t||{})&&(this.useOrtho=!t.perspective),"orthographic"in t&&(this.useOrtho=!!t.orthographic),"lineWidth"in t&&(this.lineWidth=t.lineWidth),"project"in t)if(Array.isArray(t.project))this.axesProject=t.project;else{var e=!!t.project;this.axesProject=[e,e,e]}if("projectScale"in t)if(Array.isArray(t.projectScale))this.projectScale=t.projectScale.slice();else{var n=+t.projectScale;this.projectScale=[n,n,n]}if(this.projectHasAlpha=!1,"projectOpacity"in t){Array.isArray(t.projectOpacity)?this.projectOpacity=t.projectOpacity.slice():(n=+t.projectOpacity,this.projectOpacity=[n,n,n]);for(var r=0;r<3;++r)this.projectOpacity[r]=g(this.projectOpacity[r]),this.projectOpacity[r]<1&&(this.projectHasAlpha=!0)}this.hasAlpha=!1,"opacity"in t&&(this.opacity=g(t.opacity),this.opacity<1&&(this.hasAlpha=!0)),this.dirty=!0;var i,a,s=t.position,l=t.font||"normal",c=t.alignment||[0,0];if(2===c.length)i=c[0],a=c[1];else for(i=[],a=[],r=0;r0){var I=0,D=b,R=[0,0,0,1],z=[0,0,0,1],N=Array.isArray(d)&&Array.isArray(d[0]),j=Array.isArray(m)&&Array.isArray(m[0]);t:for(r=0;r0?1-A[0][0]:W<0?1+A[1][0]:1,Y*=Y>0?1-A[0][1]:Y<0?1+A[1][1]:1],X=T.cells||[],K=T.positions||[];for(k=0;k0){var m=n*u;o.drawBox(f-m,h-m,d+m,h+m,a),o.drawBox(f-m,p-m,d+m,p+m,a),o.drawBox(f-m,h-m,f+m,p+m,a),o.drawBox(d-m,h-m,d+m,p+m,a)}}}},s.update=function(t){t=t||{},this.innerFill=!!t.innerFill,this.outerFill=!!t.outerFill,this.innerColor=(t.innerColor||[0,0,0,.5]).slice(),this.outerColor=(t.outerColor||[0,0,0,.5]).slice(),this.borderColor=(t.borderColor||[0,0,0,1]).slice(),this.borderWidth=t.borderWidth||0,this.selectBox=(t.selectBox||this.selectBox).slice()},s.dispose=function(){this.boxBuffer.dispose(),this.boxShader.dispose(),this.plot.removeOverlay(this)}},2611:function(t,e,n){"use strict";t.exports=function(t,e){var n=e[0],a=e[1],o=r(t,n,a,{}),s=i.mallocUint8(n*a*4);return new l(t,o,s)};var r=n(4234),i=n(5306),a=n(5050),o=n(2288).nextPow2;function s(t,e,n,r,i){this.coord=[t,e],this.id=n,this.value=r,this.distance=i}function l(t,e,n){this.gl=t,this.fbo=e,this.buffer=n,this._readTimeout=null;var r=this;this._readCallback=function(){r.gl&&(e.bind(),t.readPixels(0,0,e.shape[0],e.shape[1],t.RGBA,t.UNSIGNED_BYTE,r.buffer),r._readTimeout=null)}}var c=l.prototype;Object.defineProperty(c,"shape",{get:function(){return this.gl?this.fbo.shape.slice():[0,0]},set:function(t){if(this.gl){this.fbo.shape=t;var e=this.fbo.shape[0],n=this.fbo.shape[1];if(n*e*4>this.buffer.length){i.free(this.buffer);for(var r=this.buffer=i.mallocUint8(o(n*e*4)),a=0;an)for(t=n;te)for(t=e;t=0){for(var k=0|_.type.charAt(_.type.length-1),T=new Array(k),M=0;M=0;)A+=1;w[y]=A}var S=new Array(n.length);function E(){h.program=o.program(d,h._vref,h._fref,x,w);for(var t=0;t=0){if((p=h.charCodeAt(h.length-1)-48)<2||p>4)throw new r("","Invalid data type for attribute "+f+": "+h);s(t,e,d[0],i,p,a,f)}else{if(!(h.indexOf("mat")>=0))throw new r("","Unknown data type for attribute "+f+": "+h);var p;if((p=h.charCodeAt(h.length-1)-48)<2||p>4)throw new r("","Invalid data type for attribute "+f+": "+h);l(t,e,d,i,p,a,f)}}}return a};var r=n(9068);function i(t,e,n,r,i,a){this._gl=t,this._wrapper=e,this._index=n,this._locations=r,this._dimension=i,this._constFunc=a}var a=i.prototype;a.pointer=function(t,e,n,r){var i=this,a=i._gl,o=i._locations[i._index];a.vertexAttribPointer(o,i._dimension,t||a.FLOAT,!!e,n||0,r||0),a.enableVertexAttribArray(o)},a.set=function(t,e,n,r){return this._constFunc(this._locations[this._index],t,e,n,r)},Object.defineProperty(a,"location",{get:function(){return this._locations[this._index]},set:function(t){return t!==this._locations[this._index]&&(this._locations[this._index]=0|t,this._wrapper.program=null),0|t}});var o=[function(t,e,n){return void 0===n.length?t.vertexAttrib1f(e,n):t.vertexAttrib1fv(e,n)},function(t,e,n,r){return void 0===n.length?t.vertexAttrib2f(e,n,r):t.vertexAttrib2fv(e,n)},function(t,e,n,r,i){return void 0===n.length?t.vertexAttrib3f(e,n,r,i):t.vertexAttrib3fv(e,n)},function(t,e,n,r,i,a){return void 0===n.length?t.vertexAttrib4f(e,n,r,i,a):t.vertexAttrib4fv(e,n)}];function s(t,e,n,r,a,s,l){var c=o[a],u=new i(t,e,n,r,a,c);Object.defineProperty(s,l,{set:function(e){return t.disableVertexAttribArray(r[n]),c(t,r[n],e),e},get:function(){return u},enumerable:!0})}function l(t,e,n,r,i,a,o){for(var l=new Array(i),c=new Array(i),u=0;u4)throw new i("","Invalid uniform dimension type for matrix "+name+": "+y);t["uniformMatrix"+m+"fv"](s[f],!1,h);break}throw new i("","Unknown uniform data type for "+name+": "+y)}if((m=y.charCodeAt(y.length-1)-48)<2||m>4)throw new i("","Invalid data type");switch(y.charAt(0)){case"b":case"i":t["uniform"+m+"iv"](s[f],h);break;case"v":t["uniform"+m+"fv"](s[f],h);break;default:throw new i("","Unrecognized data type for vector "+name+": "+y)}}}}}}function c(t,e){if("object"!==typeof e)return[[t,e]];var n=[];for(var r in e){var i=e[r],a=t;parseInt(r)+""===r?a+="["+r+"]":a+="."+r,"object"===typeof i?n.push.apply(n,c(a,i)):n.push([a,i])}return n}function u(t,e,r){if("object"===typeof r){var c=f(r);Object.defineProperty(t,e,{get:a(c),set:l(r),enumerable:!0,configurable:!1})}else s[r]?Object.defineProperty(t,e,{get:(u=r,function(t,e,n){return t.getUniform(e.program,n[u])}),set:l(r),enumerable:!0,configurable:!1}):t[e]=function(t){switch(t){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":case"float":return 0;default:var e=t.indexOf("vec");if(0<=e&&e<=1&&t.length===4+e){if((n=t.charCodeAt(t.length-1)-48)<2||n>4)throw new i("","Invalid data type");return"b"===t.charAt(0)?o(n,!1):o(n,0)}if(0===t.indexOf("mat")&&4===t.length){var n;if((n=t.charCodeAt(t.length-1)-48)<2||n>4)throw new i("","Invalid uniform dimension type for matrix "+name+": "+t);return o(n*n,0)}throw new i("","Unknown uniform data type for "+name+": "+t)}}(n[r].type);var u}function f(t){var e;if(Array.isArray(t)){e=new Array(t.length);for(var n=0;n1){s[0]in a||(a[s[0]]=[]),a=a[s[0]];for(var l=1;l1)for(var l=0;l 0 U ||b|| > 0.\n // Assign z = 0, x = -b, y = a:\n // a*-b + b*a + c*0 = -ba + ba + 0 = 0\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\n return normalize(vec3(-v.y, v.x, 0.0));\n } else {\n return normalize(vec3(0.0, v.z, -v.y));\n }\n}\n\n// Calculate the tube vertex and normal at the given index.\n//\n// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.\n//\n// Each tube segment is made up of a ring of vertices.\n// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.\n// The indexes of tube segments run from 0 to 8.\n//\nvec3 getTubePosition(vec3 d, float index, out vec3 normal) {\n float segmentCount = 8.0;\n\n float angle = 2.0 * 3.14159 * (index / segmentCount);\n\n vec3 u = getOrthogonalVector(d);\n vec3 v = normalize(cross(u, d));\n\n vec3 x = u * cos(angle) * length(d);\n vec3 y = v * sin(angle) * length(d);\n vec3 v3 = x + y;\n\n normal = normalize(v3);\n\n return v3;\n}\n\nattribute vec4 vector;\nattribute vec4 color, position;\nattribute vec2 uv;\n\nuniform float vectorScale, tubeScale;\nuniform mat4 model, view, projection, inverseModel;\nuniform vec3 eyePosition, lightPosition;\n\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n // Scale the vector magnitude to stay constant with\n // model & view changes.\n vec3 normal;\n vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);\n vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\n\n //Lighting geometry parameters\n vec4 cameraCoordinate = view * tubePosition;\n cameraCoordinate.xyz /= cameraCoordinate.w;\n f_lightDirection = lightPosition - cameraCoordinate.xyz;\n f_eyeDirection = eyePosition - cameraCoordinate.xyz;\n f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);\n\n // vec4 m_position = model * vec4(tubePosition, 1.0);\n vec4 t_position = view * tubePosition;\n gl_Position = projection * t_position;\n\n f_color = color;\n f_data = tubePosition.xyz;\n f_position = position.xyz;\n f_uv = uv;\n}\n"]),a=r(["#extension GL_OES_standard_derivatives : enable\n\nprecision highp float;\n#define GLSLIFY 1\n\nfloat beckmannDistribution(float x, float roughness) {\n float NdotH = max(x, 0.0001);\n float cos2Alpha = NdotH * NdotH;\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\n float roughness2 = roughness * roughness;\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\n return exp(tan2Alpha / roughness2) / denom;\n}\n\nfloat cookTorranceSpecular(\n vec3 lightDirection,\n vec3 viewDirection,\n vec3 surfaceNormal,\n float roughness,\n float fresnel) {\n\n float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);\n float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);\n\n //Half angle vector\n vec3 H = normalize(lightDirection + viewDirection);\n\n //Geometric term\n float NdotH = max(dot(surfaceNormal, H), 0.0);\n float VdotH = max(dot(viewDirection, H), 0.000001);\n float LdotH = max(dot(lightDirection, H), 0.000001);\n float G1 = (2.0 * NdotH * VdotN) / VdotH;\n float G2 = (2.0 * NdotH * LdotN) / LdotH;\n float G = min(1.0, min(G1, G2));\n \n //Distribution term\n float D = beckmannDistribution(NdotH, roughness);\n\n //Fresnel term\n float F = pow(1.0 - VdotN, fresnel);\n\n //Multiply terms and done\n return G * F * D / max(3.14159265 * VdotN, 0.000001);\n}\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\nuniform sampler2D texture;\n\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n vec3 N = normalize(f_normal);\n vec3 L = normalize(f_lightDirection);\n vec3 V = normalize(f_eyeDirection);\n\n if(gl_FrontFacing) {\n N = -N;\n }\n\n float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\n\n vec4 surfaceColor = f_color * texture2D(texture, f_uv);\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\n\n gl_FragColor = litColor * opacity;\n}\n"]),o=r(["precision highp float;\n\nprecision highp float;\n#define GLSLIFY 1\n\nvec3 getOrthogonalVector(vec3 v) {\n // Return up-vector for only-z vector.\n // 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).\n // From the above if-statement we have ||a|| > 0 U ||b|| > 0.\n // Assign z = 0, x = -b, y = a:\n // a*-b + b*a + c*0 = -ba + ba + 0 = 0\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\n return normalize(vec3(-v.y, v.x, 0.0));\n } else {\n return normalize(vec3(0.0, v.z, -v.y));\n }\n}\n\n// Calculate the tube vertex and normal at the given index.\n//\n// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.\n//\n// Each tube segment is made up of a ring of vertices.\n// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.\n// The indexes of tube segments run from 0 to 8.\n//\nvec3 getTubePosition(vec3 d, float index, out vec3 normal) {\n float segmentCount = 8.0;\n\n float angle = 2.0 * 3.14159 * (index / segmentCount);\n\n vec3 u = getOrthogonalVector(d);\n vec3 v = normalize(cross(u, d));\n\n vec3 x = u * cos(angle) * length(d);\n vec3 y = v * sin(angle) * length(d);\n vec3 v3 = x + y;\n\n normal = normalize(v3);\n\n return v3;\n}\n\nattribute vec4 vector;\nattribute vec4 position;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\nuniform float tubeScale;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n vec3 normal;\n vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);\n vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\n\n gl_Position = projection * view * tubePosition;\n f_id = id;\n f_position = position.xyz;\n}\n"]),s=r(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float pickId;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n\n gl_FragColor = vec4(pickId, f_id.xyz);\n}"]);e.meshShader={vertex:i,fragment:a,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec4"}]},e.pickShader={vertex:o,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec4"}]}},7307:function(t,e,n){"use strict";var r=n(2858),i=n(4020),a=["xyz","xzy","yxz","yzx","zxy","zyx"],o=function(t,e,n,a){for(var o=0,s=0;s0)for(k=0;k<8;k++){var T=(k+1)%8;c.push(h[k],d[k],d[T],d[T],h[T],h[k]),f.push(y,m,m,m,y,y),p.push(g,v,v,v,g,g);var M=c.length;u.push([M-6,M-5,M-4],[M-3,M-2,M-1])}var A=h;h=d,d=A;var S=y;y=m,m=S;var E=g;g=v,v=E}return{positions:c,cells:u,vectors:f,vertexIntensity:p}}(t,n,a,o)})),f=[],h=[],d=[],p=[];for(s=0;se)return n-1}return n},l=function(t,e,n){return tn?n:t},c=function(t){var e=1/0;t.sort((function(t,e){return t-e}));for(var n=t.length,r=1;rf-1||y>h-1||b>d-1)return r.create();var x,w,_,k,T,M,A=a[0][p],S=a[0][m],E=a[1][g],C=a[1][y],P=a[2][v],L=(o-A)/(S-A),O=(c-E)/(C-E),I=(u-P)/(a[2][b]-P);switch(isFinite(L)||(L=.5),isFinite(O)||(O=.5),isFinite(I)||(I=.5),n.reversedX&&(p=f-1-p,m=f-1-m),n.reversedY&&(g=h-1-g,y=h-1-y),n.reversedZ&&(v=d-1-v,b=d-1-b),n.filled){case 5:T=v,M=b,_=g*d,k=y*d,x=p*d*h,w=m*d*h;break;case 4:T=v,M=b,x=p*d,w=m*d,_=g*d*f,k=y*d*f;break;case 3:_=g,k=y,T=v*h,M=b*h,x=p*h*d,w=m*h*d;break;case 2:_=g,k=y,x=p*h,w=m*h,T=v*h*f,M=b*h*f;break;case 1:x=p,w=m,T=v*f,M=b*f,_=g*f*d,k=y*f*d;break;default:x=p,w=m,_=g*f,k=y*f,T=v*f*h,M=b*f*h}var D=i[x+_+T],R=i[x+_+M],z=i[x+k+T],N=i[x+k+M],j=i[w+_+T],F=i[w+_+M],B=i[w+k+T],U=i[w+k+M],H=r.create(),V=r.create(),q=r.create(),G=r.create();r.lerp(H,D,j,L),r.lerp(V,R,F,L),r.lerp(q,z,B,L),r.lerp(G,N,U,L);var W=r.create(),Y=r.create();r.lerp(W,H,q,O),r.lerp(Y,V,G,O);var $=r.create();return r.lerp($,W,Y,I),$}(e,t,d)},g=t.getDivergence||function(t,e){var n=r.create(),i=1e-4;r.add(n,t,[i,0,0]);var a=p(n);r.subtract(a,a,e),r.scale(a,a,1/i),r.add(n,t,[0,i,0]);var o=p(n);r.subtract(o,o,e),r.scale(o,o,1/i),r.add(n,t,[0,0,i]);var s=p(n);return r.subtract(s,s,e),r.scale(s,s,1/i),r.add(n,a,o),r.add(n,n,s),n},v=[],m=e[0][0],y=e[0][1],b=e[0][2],x=e[1][0],w=e[1][1],_=e[1][2],k=function(t){var e=t[0],n=t[1],r=t[2];return!(ex||nw||r_)},T=10*r.distance(e[0],e[1])/i,M=T*T,A=1,S=0,E=n.length;E>1&&(A=function(t){for(var e=[],n=[],r=[],i={},a={},o={},s=t.length,l=0;lS&&(S=N),R.push(N),v.push({points:L,velocities:O,divergences:R});for(var j=0;j<100*i&&L.lengthM&&r.scale(F,F,T/Math.sqrt(B)),r.add(F,F,P),I=p(F),r.squaredDistance(D,F)-M>-1e-4*M&&(L.push(F),D=F,O.push(I),z=g(F,I),N=r.length(z),isFinite(N)&&N>S&&(S=N),R.push(N)),P=F}}var U=o(v,t.colormap,S,A);return f?U.tubeScale=f:(0===S&&(S=1),U.tubeScale=.5*u*A/S),U};var u=n(9578),f=n(1140).createMesh;t.exports.createTubeMesh=function(t,e){return f(t,e,{shaders:u,traceType:"streamtube"})}},9054:function(t,e,n){var r=n(5158),i=n(6832),a=i(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec4 uv;\nattribute vec3 f;\nattribute vec3 normal;\n\nuniform vec3 objectOffset;\nuniform mat4 model, view, projection, inverseModel;\nuniform vec3 lightPosition, eyePosition;\nuniform sampler2D colormap;\n\nvarying float value, kill;\nvarying vec3 worldCoordinate;\nvarying vec2 planeCoordinate;\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\nvarying vec4 vColor;\n\nvoid main() {\n vec3 localCoordinate = vec3(uv.zw, f.x);\n worldCoordinate = objectOffset + localCoordinate;\n vec4 worldPosition = model * vec4(worldCoordinate, 1.0);\n vec4 clipPosition = projection * view * worldPosition;\n gl_Position = clipPosition;\n kill = f.y;\n value = f.z;\n planeCoordinate = uv.xy;\n\n vColor = texture2D(colormap, vec2(value, value));\n\n //Lighting geometry parameters\n vec4 cameraCoordinate = view * worldPosition;\n cameraCoordinate.xyz /= cameraCoordinate.w;\n lightDirection = lightPosition - cameraCoordinate.xyz;\n eyeDirection = eyePosition - cameraCoordinate.xyz;\n surfaceNormal = normalize((vec4(normal,0) * inverseModel).xyz);\n}\n"]),o=i(["precision highp float;\n#define GLSLIFY 1\n\nfloat beckmannDistribution(float x, float roughness) {\n float NdotH = max(x, 0.0001);\n float cos2Alpha = NdotH * NdotH;\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\n float roughness2 = roughness * roughness;\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\n return exp(tan2Alpha / roughness2) / denom;\n}\n\nfloat beckmannSpecular(\n vec3 lightDirection,\n vec3 viewDirection,\n vec3 surfaceNormal,\n float roughness) {\n return beckmannDistribution(dot(surfaceNormal, normalize(lightDirection + viewDirection)), roughness);\n}\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 lowerBound, upperBound;\nuniform float contourTint;\nuniform vec4 contourColor;\nuniform sampler2D colormap;\nuniform vec3 clipBounds[2];\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\nuniform float vertexColor;\n\nvarying float value, kill;\nvarying vec3 worldCoordinate;\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\nvarying vec4 vColor;\n\nvoid main() {\n if (\n kill > 0.0 ||\n vColor.a == 0.0 ||\n outOfRange(clipBounds[0], clipBounds[1], worldCoordinate)\n ) discard;\n\n vec3 N = normalize(surfaceNormal);\n vec3 V = normalize(eyeDirection);\n vec3 L = normalize(lightDirection);\n\n if(gl_FrontFacing) {\n N = -N;\n }\n\n float specular = max(beckmannSpecular(L, V, N, roughness), 0.);\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\n\n //decide how to interpolate color \u2014 in vertex or in fragment\n vec4 surfaceColor =\n step(vertexColor, .5) * texture2D(colormap, vec2(value, value)) +\n step(.5, vertexColor) * vColor;\n\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\n\n gl_FragColor = mix(litColor, contourColor, contourTint) * opacity;\n}\n"]),s=i(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec4 uv;\nattribute float f;\n\nuniform vec3 objectOffset;\nuniform mat3 permutation;\nuniform mat4 model, view, projection;\nuniform float height, zOffset;\nuniform sampler2D colormap;\n\nvarying float value, kill;\nvarying vec3 worldCoordinate;\nvarying vec2 planeCoordinate;\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\nvarying vec4 vColor;\n\nvoid main() {\n vec3 dataCoordinate = permutation * vec3(uv.xy, height);\n worldCoordinate = objectOffset + dataCoordinate;\n vec4 worldPosition = model * vec4(worldCoordinate, 1.0);\n\n vec4 clipPosition = projection * view * worldPosition;\n clipPosition.z += zOffset;\n\n gl_Position = clipPosition;\n value = f + objectOffset.z;\n kill = -1.0;\n planeCoordinate = uv.zw;\n\n vColor = texture2D(colormap, vec2(value, value));\n\n //Don't do lighting for contours\n surfaceNormal = vec3(1,0,0);\n eyeDirection = vec3(0,1,0);\n lightDirection = vec3(0,0,1);\n}\n"]),l=i(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec2 shape;\nuniform vec3 clipBounds[2];\nuniform float pickId;\n\nvarying float value, kill;\nvarying vec3 worldCoordinate;\nvarying vec2 planeCoordinate;\nvarying vec3 surfaceNormal;\n\nvec2 splitFloat(float v) {\n float vh = 255.0 * v;\n float upper = floor(vh);\n float lower = fract(vh);\n return vec2(upper / 255.0, floor(lower * 16.0) / 16.0);\n}\n\nvoid main() {\n if ((kill > 0.0) ||\n (outOfRange(clipBounds[0], clipBounds[1], worldCoordinate))) discard;\n\n vec2 ux = splitFloat(planeCoordinate.x / shape.x);\n vec2 uy = splitFloat(planeCoordinate.y / shape.y);\n gl_FragColor = vec4(pickId, ux.x, uy.x, ux.y + (uy.y/16.0));\n}\n"]);e.createShader=function(t){var e=r(t,a,o,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e.attributes.normal.location=2,e},e.createPickShader=function(t){var e=r(t,a,l,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e.attributes.normal.location=2,e},e.createContourShader=function(t){var e=r(t,s,o,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e},e.createPickContourShader=function(t){var e=r(t,s,l,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e}},3754:function(t,e,n){"use strict";t.exports=function(t){var e=t.gl,n=y(e),r=x(e),s=b(e),l=w(e),c=i(e),u=a(e,[{buffer:c,size:4,stride:_,offset:0},{buffer:c,size:3,stride:_,offset:16},{buffer:c,size:3,stride:_,offset:28}]),f=i(e),h=a(e,[{buffer:f,size:4,stride:20,offset:0},{buffer:f,size:1,stride:20,offset:16}]),d=i(e),p=a(e,[{buffer:d,size:2,type:e.FLOAT}]),g=o(e,1,S,e.RGBA,e.UNSIGNED_BYTE);g.minFilter=e.LINEAR,g.magFilter=e.LINEAR;var v=new E(e,[0,0],[[0,0,0],[0,0,0]],n,r,c,u,g,s,l,f,h,d,p,[0,0,0]),m={levels:[[],[],[]]};for(var k in t)m[k]=t[k];return m.colormap=m.colormap||"jet",v.update(m),v};var r=n(2288),i=n(5827),a=n(2944),o=n(8931),s=n(5306),l=n(9156),c=n(7498),u=n(7382),f=n(5050),h=n(4162),d=n(104),p=n(7437),g=n(5070),v=n(9144),m=n(9054),y=m.createShader,b=m.createContourShader,x=m.createPickShader,w=m.createPickContourShader,_=40,k=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],T=[[0,0],[0,1],[1,0],[1,1],[1,0],[0,1]],M=[[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 A(t,e,n,r,i){this.position=t,this.index=e,this.uv=n,this.level=r,this.dataCoordinate=i}!function(){for(var t=0;t<3;++t){var e=M[t],n=(t+2)%3;e[(t+1)%3+0]=1,e[n+3]=1,e[t+6]=1}}();var S=256;function E(t,e,n,r,i,a,o,l,c,u,h,d,p,g,v){this.gl=t,this.shape=e,this.bounds=n,this.objectOffset=v,this.intensityBounds=[],this._shader=r,this._pickShader=i,this._coordinateBuffer=a,this._vao=o,this._colorMap=l,this._contourShader=c,this._contourPickShader=u,this._contourBuffer=h,this._contourVAO=d,this._contourOffsets=[[],[],[]],this._contourCounts=[[],[],[]],this._vertexCount=0,this._pickResult=new A([0,0,0],[0,0],[0,0],[0,0,0],[0,0,0]),this._dynamicBuffer=p,this._dynamicVAO=g,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=[f(s.mallocFloat(1024),[0,0]),f(s.mallocFloat(1024),[0,0]),f(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 C=E.prototype;C.genColormap=function(t,e){var n=!1,r=u([l({colormap:t,nshades:S,format:"rgba"}).map((function(t,r){var i=e?function(t,e){if(!e)return 1;if(!e.length)return 1;for(var n=0;nt&&n>0){var r=(e[n][0]-t)/(e[n][0]-e[n-1][0]);return e[n][1]*(1-r)+r*e[n-1][1]}}return 1}(r/255,e):t[3];return i<1&&(n=!0),[t[0],t[1],t[2],255*i]}))]);return c.divseq(r,255),this.hasAlphaScale=n,r},C.isTransparent=function(){return this.opacity<1||this.hasAlphaScale},C.isOpaque=function(){return!this.isTransparent()},C.pickSlots=1,C.setPickBase=function(t){this.pickId=t};var P=[0,0,0],L={showSurface:!1,showContour:!1,projections:[k.slice(),k.slice(),k.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function O(t,e){var n,r,i,a=e.axes&&e.axes.lastCubeProps.axis||P,o=e.showSurface,s=e.showContour;for(n=0;n<3;++n)for(o=o||e.surfaceProject[n],r=0;r<3;++r)s=s||e.contourProject[n][r];for(n=0;n<3;++n){var l=L.projections[n];for(r=0;r<16;++r)l[r]=0;for(r=0;r<4;++r)l[5*r]=1;l[5*n]=0,l[12+n]=e.axesBounds[+(a[n]>0)][n],d(l,t.model,l);var c=L.clipBounds[n];for(i=0;i<2;++i)for(r=0;r<3;++r)c[i][r]=t.clipBounds[i][r];c[0][n]=-1e8,c[1][n]=1e8}return L.showSurface=o,L.showContour=s,L}var I={model:k,view:k,projection:k,inverseModel:k.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},D=k.slice(),R=[1,0,0,0,1,0,0,0,1];function z(t,e){t=t||{};var n=this.gl;n.disable(n.CULL_FACE),this._colorMap.bind(0);var r=I;r.model=t.model||k,r.view=t.view||k,r.projection=t.projection||k,r.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],r.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],r.objectOffset=this.objectOffset,r.contourColor=this.contourColor[0],r.inverseModel=p(r.inverseModel,r.model);for(var i=0;i<2;++i)for(var a=r.clipBounds[i],o=0;o<3;++o)a[o]=Math.min(Math.max(this.clipBounds[i][o],-1e8),1e8);r.kambient=this.ambientLight,r.kdiffuse=this.diffuseLight,r.kspecular=this.specularLight,r.roughness=this.roughness,r.fresnel=this.fresnel,r.opacity=this.opacity,r.height=0,r.permutation=R,r.vertexColor=this.vertexColor;var s=D;for(d(s,r.view,r.model),d(s,r.projection,s),p(s,s),i=0;i<3;++i)r.eyePosition[i]=s[12+i]/s[15];var l=s[15];for(i=0;i<3;++i)l+=this.lightPosition[i]*s[4*i+3];for(i=0;i<3;++i){var c=s[12+i];for(o=0;o<3;++o)c+=s[4*o+i]*this.lightPosition[o];r.lightPosition[i]=c/l}var u=O(r,this);if(u.showSurface){for(this._shader.bind(),this._shader.uniforms=r,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(n.TRIANGLES,this._vertexCount),i=0;i<3;++i)this.surfaceProject[i]&&this.vertexCount&&(this._shader.uniforms.model=u.projections[i],this._shader.uniforms.clipBounds=u.clipBounds[i],this._vao.draw(n.TRIANGLES,this._vertexCount));this._vao.unbind()}if(u.showContour){var f=this._contourShader;r.kambient=1,r.kdiffuse=0,r.kspecular=0,r.opacity=1,f.bind(),f.uniforms=r;var h=this._contourVAO;for(h.bind(),i=0;i<3;++i)for(f.uniforms.permutation=M[i],n.lineWidth(this.contourWidth[i]*this.pixelRatio),o=0;o>4)/16)/255,i=Math.floor(r),a=r-i,o=e[1]*(t.value[1]+(15&t.value[2])/16)/255,s=Math.floor(o),l=o-s;i+=1,s+=1;var c=n.position;c[0]=c[1]=c[2]=0;for(var u=0;u<2;++u)for(var f=u?a:1-a,h=0;h<2;++h)for(var d=i+u,p=s+h,v=f*(h?l:1-l),m=0;m<3;++m)c[m]+=this._field[m].get(d,p)*v;for(var y=this._pickResult.level,b=0;b<3;++b)if(y[b]=g.le(this.contourLevels[b],c[b]),y[b]<0)this.contourLevels[b].length>0&&(y[b]=0);else if(y[b]Math.abs(w-c[b])&&(y[b]+=1)}for(n.index[0]=a<.5?i:i+1,n.index[1]=l<.5?s:s+1,n.uv[0]=r/e[0],n.uv[1]=o/e[1],m=0;m<3;++m)n.dataCoordinate[m]=this._field[m].get(n.index[0],n.index[1]);return n},C.padField=function(t,e){var n=e.shape.slice(),r=t.shape.slice();c.assign(t.lo(1,1).hi(n[0],n[1]),e),c.assign(t.lo(1).hi(n[0],1),e.hi(n[0],1)),c.assign(t.lo(1,r[1]-1).hi(n[0],1),e.lo(0,n[1]-1).hi(n[0],1)),c.assign(t.lo(0,1).hi(1,n[1]),e.hi(1)),c.assign(t.lo(r[0]-1,1).hi(1,n[1]),e.lo(n[0]-1)),t.set(0,0,e.get(0,0)),t.set(0,r[1]-1,e.get(0,n[1]-1)),t.set(r[0]-1,0,e.get(n[0]-1,0)),t.set(r[0]-1,r[1]-1,e.get(n[0]-1,n[1]-1))},C.update=function(t){t=t||{},this.objectOffset=t.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in t&&(this.contourWidth=j(t.contourWidth,Number)),"showContour"in t&&(this.showContour=j(t.showContour,Boolean)),"showSurface"in t&&(this.showSurface=!!t.showSurface),"contourTint"in t&&(this.contourTint=j(t.contourTint,Boolean)),"contourColor"in t&&(this.contourColor=B(t.contourColor)),"contourProject"in t&&(this.contourProject=j(t.contourProject,(function(t){return j(t,Boolean)}))),"surfaceProject"in t&&(this.surfaceProject=t.surfaceProject),"dynamicColor"in t&&(this.dynamicColor=B(t.dynamicColor)),"dynamicTint"in t&&(this.dynamicTint=j(t.dynamicTint,Number)),"dynamicWidth"in t&&(this.dynamicWidth=j(t.dynamicWidth,Number)),"opacity"in t&&(this.opacity=t.opacity),"opacityscale"in t&&(this.opacityscale=t.opacityscale),"colorBounds"in t&&(this.colorBounds=t.colorBounds),"vertexColor"in t&&(this.vertexColor=t.vertexColor?1:0),"colormap"in t&&this._colorMap.setPixels(this.genColormap(t.colormap,this.opacityscale));var e=t.field||t.coords&&t.coords[2]||null,n=!1;if(e||(e=this._field[2].shape[0]||this._field[2].shape[2]?this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):this._field[2].hi(0,0)),"field"in t||"coords"in t){var i=(e.shape[0]+2)*(e.shape[1]+2);i>this._field[2].data.length&&(s.freeFloat(this._field[2].data),this._field[2].data=s.mallocFloat(r.nextPow2(i))),this._field[2]=f(this._field[2].data,[e.shape[0]+2,e.shape[1]+2]),this.padField(this._field[2],e),this.shape=e.shape.slice();for(var a=this.shape,o=0;o<2;++o)this._field[2].size>this._field[o].data.length&&(s.freeFloat(this._field[o].data),this._field[o].data=s.mallocFloat(this._field[2].size)),this._field[o]=f(this._field[o].data,[a[0]+2,a[1]+2]);if(t.coords){var l=t.coords;if(!Array.isArray(l)||3!==l.length)throw new Error("gl-surface: invalid coordinates for x/y");for(o=0;o<2;++o){var c=l[o];for(m=0;m<2;++m)if(c.shape[m]!==a[m])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[o],c)}}else if(t.ticks){var u=t.ticks;if(!Array.isArray(u)||2!==u.length)throw new Error("gl-surface: invalid ticks");for(o=0;o<2;++o){var d=u[o];if((Array.isArray(d)||d.length)&&(d=f(d)),d.shape[0]!==a[o])throw new Error("gl-surface: invalid tick length");var p=f(d.data,a);p.stride[o]=d.stride[0],p.stride[1^o]=0,this.padField(this._field[o],p)}}else{for(o=0;o<2;++o){var g=[0,0];g[o]=1,this._field[o]=f(this._field[o].data,[a[0]+2,a[1]+2],g,0)}this._field[0].set(0,0,0);for(var m=0;m0){for(var bt=0;bt<5;++bt)J.pop();U-=1}continue t}J.push(rt[0],rt[1],ot[0],ot[1],rt[2]),U+=1}}nt.push(U)}this._contourOffsets[Q]=et,this._contourCounts[Q]=nt}var xt=s.mallocFloat(J.length);for(o=0;os||o[1]<0||o[1]>s)throw new Error("gl-texture2d: Invalid texture size");var l=p(o,e.stride.slice()),c=0;"float32"===n?c=t.FLOAT:"float64"===n?(c=t.FLOAT,l=!1,n="float32"):"uint8"===n?c=t.UNSIGNED_BYTE:(c=t.UNSIGNED_BYTE,l=!1,n="uint8");var f,d,v=0;if(2===o.length)v=t.LUMINANCE,o=[o[0],o[1],1],e=r(e.data,o,[e.stride[0],e.stride[1],1],e.offset);else{if(3!==o.length)throw new Error("gl-texture2d: Invalid shape for texture");if(1===o[2])v=t.ALPHA;else if(2===o[2])v=t.LUMINANCE_ALPHA;else if(3===o[2])v=t.RGB;else{if(4!==o[2])throw new Error("gl-texture2d: Invalid shape for pixel coords");v=t.RGBA}}c!==t.FLOAT||t.getExtension("OES_texture_float")||(c=t.UNSIGNED_BYTE,l=!1);var m=e.size;if(l)f=0===e.offset&&e.data.length===m?e.data:e.data.subarray(e.offset,e.offset+m);else{var y=[o[2],o[2]*o[0],1];d=a.malloc(m,n);var b=r(d,o,y,0);"float32"!==n&&"float64"!==n||c!==t.UNSIGNED_BYTE?i.assign(b,e):u(b,e),f=d.subarray(0,m)}var x=g(t);return t.texImage2D(t.TEXTURE_2D,0,v,o[0],o[1],0,v,c,f),l||a.free(d),new h(t,x,o[0],o[1],v,c)}(t,e)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")};var o=null,s=null,l=null;function c(t){return"undefined"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||"undefined"!=typeof HTMLImageElement&&t instanceof HTMLImageElement||"undefined"!=typeof HTMLVideoElement&&t instanceof HTMLVideoElement||"undefined"!=typeof ImageData&&t instanceof ImageData}var u=function(t,e){i.muls(t,e,255)};function f(t,e,n){var r=t.gl,i=r.getParameter(r.MAX_TEXTURE_SIZE);if(e<0||e>i||n<0||n>i)throw new Error("gl-texture2d: Invalid texture size");return t._shape=[e,n],t.bind(),r.texImage2D(r.TEXTURE_2D,0,t.format,e,n,0,t.format,t.type,null),t._mipLevels=[0],t}function h(t,e,n,r,i,a){this.gl=t,this.handle=e,this.format=i,this.type=a,this._shape=[n,r],this._mipLevels=[0],this._magFilter=t.NEAREST,this._minFilter=t.NEAREST,this._wrapS=t.CLAMP_TO_EDGE,this._wrapT=t.CLAMP_TO_EDGE,this._anisoSamples=1;var o=this,s=[this._wrapS,this._wrapT];Object.defineProperties(s,[{get:function(){return o._wrapS},set:function(t){return o.wrapS=t}},{get:function(){return o._wrapT},set:function(t){return o.wrapT=t}}]),this._wrapVector=s;var l=[this._shape[0],this._shape[1]];Object.defineProperties(l,[{get:function(){return o._shape[0]},set:function(t){return o.width=t}},{get:function(){return o._shape[1]},set:function(t){return o.height=t}}]),this._shapeVector=l}var d=h.prototype;function p(t,e){return 3===t.length?1===e[2]&&e[1]===t[0]*t[2]&&e[0]===t[2]:1===e[0]&&e[1]===t[0]}function g(t){var e=t.createTexture();return t.bindTexture(t.TEXTURE_2D,e),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),e}function v(t,e,n,r,i){var a=t.getParameter(t.MAX_TEXTURE_SIZE);if(e<0||e>a||n<0||n>a)throw new Error("gl-texture2d: Invalid texture shape");if(i===t.FLOAT&&!t.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var o=g(t);return t.texImage2D(t.TEXTURE_2D,0,r,e,n,0,r,i,null),new h(t,o,e,n,r,i)}Object.defineProperties(d,{minFilter:{get:function(){return this._minFilter},set:function(t){this.bind();var e=this.gl;if(this.type===e.FLOAT&&o.indexOf(t)>=0&&(e.getExtension("OES_texture_float_linear")||(t=e.NEAREST)),s.indexOf(t)<0)throw new Error("gl-texture2d: Unknown filter mode "+t);return e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,t),this._minFilter=t}},magFilter:{get:function(){return this._magFilter},set:function(t){this.bind();var e=this.gl;if(this.type===e.FLOAT&&o.indexOf(t)>=0&&(e.getExtension("OES_texture_float_linear")||(t=e.NEAREST)),s.indexOf(t)<0)throw new Error("gl-texture2d: Unknown filter mode "+t);return e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,t),this._magFilter=t}},mipSamples:{get:function(){return this._anisoSamples},set:function(t){var e=this._anisoSamples;if(this._anisoSamples=0|Math.max(t,1),e!==this._anisoSamples){var n=this.gl.getExtension("EXT_texture_filter_anisotropic");n&&this.gl.texParameterf(this.gl.TEXTURE_2D,n.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(t){if(this.bind(),l.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(),l.indexOf(t)<0)throw new Error("gl-texture2d: Unknown wrap mode "+t);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,t),this._wrapT=t}},wrap:{get:function(){return this._wrapVector},set:function(t){if(Array.isArray(t)||(t=[t,t]),2!==t.length)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var e=0;e<2;++e)if(l.indexOf(t[e])<0)throw new Error("gl-texture2d: Unknown wrap mode "+t);this._wrapS=t[0],this._wrapT=t[1];var n=this.gl;return this.bind(),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,this._wrapS),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,this._wrapT),t}},shape:{get:function(){return this._shapeVector},set:function(t){if(Array.isArray(t)){if(2!==t.length)throw new Error("gl-texture2d: Invalid texture shape")}else t=[0|t,0|t];return f(this,0|t[0],0|t[1]),[0|t[0],0|t[1]]}},width:{get:function(){return this._shape[0]},set:function(t){return f(this,t|=0,this._shape[1]),t}},height:{get:function(){return this._shape[1]},set:function(t){return t|=0,f(this,this._shape[0],t),t}}}),d.bind=function(t){var e=this.gl;return void 0!==t&&e.activeTexture(e.TEXTURE0+(0|t)),e.bindTexture(e.TEXTURE_2D,this.handle),void 0!==t?0|t:e.getParameter(e.ACTIVE_TEXTURE)-e.TEXTURE0},d.dispose=function(){this.gl.deleteTexture(this.handle)},d.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var t=Math.min(this._shape[0],this._shape[1]),e=0;t>0;++e,t>>>=1)this._mipLevels.indexOf(e)<0&&this._mipLevels.push(e)},d.setPixels=function(t,e,n,o){var s=this.gl;this.bind(),Array.isArray(e)?(o=n,n=0|e[1],e=0|e[0]):(e=e||0,n=n||0),o=o||0;var l=c(t)?t:t.raw;if(l)this._mipLevels.indexOf(o)<0?(s.texImage2D(s.TEXTURE_2D,0,this.format,this.format,this.type,l),this._mipLevels.push(o)):s.texSubImage2D(s.TEXTURE_2D,o,e,n,this.format,this.type,l);else{if(!(t.shape&&t.stride&&t.data))throw new Error("gl-texture2d: Unsupported data type");if(t.shape.length<2||e+t.shape[1]>this._shape[1]>>>o||n+t.shape[0]>this._shape[0]>>>o||e<0||n<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");!function(t,e,n,o,s,l,c,f){var h=f.dtype,d=f.shape.slice();if(d.length<2||d.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var g=0,v=0,m=p(d,f.stride.slice());if("float32"===h?g=t.FLOAT:"float64"===h?(g=t.FLOAT,m=!1,h="float32"):"uint8"===h?g=t.UNSIGNED_BYTE:(g=t.UNSIGNED_BYTE,m=!1,h="uint8"),2===d.length)v=t.LUMINANCE,d=[d[0],d[1],1],f=r(f.data,d,[f.stride[0],f.stride[1],1],f.offset);else{if(3!==d.length)throw new Error("gl-texture2d: Invalid shape for texture");if(1===d[2])v=t.ALPHA;else if(2===d[2])v=t.LUMINANCE_ALPHA;else if(3===d[2])v=t.RGB;else{if(4!==d[2])throw new Error("gl-texture2d: Invalid shape for pixel coords");v=t.RGBA}d[2]}if(v!==t.LUMINANCE&&v!==t.ALPHA||s!==t.LUMINANCE&&s!==t.ALPHA||(v=s),v!==s)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var y=f.size,b=c.indexOf(o)<0;if(b&&c.push(o),g===l&&m)0===f.offset&&f.data.length===y?b?t.texImage2D(t.TEXTURE_2D,o,s,d[0],d[1],0,s,l,f.data):t.texSubImage2D(t.TEXTURE_2D,o,e,n,d[0],d[1],s,l,f.data):b?t.texImage2D(t.TEXTURE_2D,o,s,d[0],d[1],0,s,l,f.data.subarray(f.offset,f.offset+y)):t.texSubImage2D(t.TEXTURE_2D,o,e,n,d[0],d[1],s,l,f.data.subarray(f.offset,f.offset+y));else{var x;x=l===t.FLOAT?a.mallocFloat32(y):a.mallocUint8(y);var w=r(x,d,[d[2],d[2]*d[0],1]);g===t.FLOAT&&l===t.UNSIGNED_BYTE?u(w,f):i.assign(w,f),b?t.texImage2D(t.TEXTURE_2D,o,s,d[0],d[1],0,s,l,x.subarray(0,y)):t.texSubImage2D(t.TEXTURE_2D,o,e,n,d[0],d[1],s,l,x.subarray(0,y)),l===t.FLOAT?a.freeFloat32(x):a.freeUint8(x)}}(s,e,n,o,this.format,this.type,this._mipLevels,t)}}},3056:function(t){"use strict";t.exports=function(t,e,n){e?e.bind():t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,null);var r=0|t.getParameter(t.MAX_VERTEX_ATTRIBS);if(n){if(n.length>r)throw new Error("gl-vao: Too many vertex attributes");for(var i=0;i1?0:Math.acos(s)};var r=n(5415),i=n(899),a=n(9305)},8827:function(t){t.exports=function(t,e){return t[0]=Math.ceil(e[0]),t[1]=Math.ceil(e[1]),t[2]=Math.ceil(e[2]),t}},7622:function(t){t.exports=function(t){var e=new Float32Array(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}},8782:function(t){t.exports=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}},8501:function(t){t.exports=function(){var t=new Float32Array(3);return t[0]=0,t[1]=0,t[2]=0,t}},903:function(t){t.exports=function(t,e,n){var r=e[0],i=e[1],a=e[2],o=n[0],s=n[1],l=n[2];return t[0]=i*l-a*s,t[1]=a*o-r*l,t[2]=r*s-i*o,t}},5981:function(t,e,n){t.exports=n(8288)},8288:function(t){t.exports=function(t,e){var n=e[0]-t[0],r=e[1]-t[1],i=e[2]-t[2];return Math.sqrt(n*n+r*r+i*i)}},8629:function(t,e,n){t.exports=n(7979)},7979:function(t){t.exports=function(t,e,n){return t[0]=e[0]/n[0],t[1]=e[1]/n[1],t[2]=e[2]/n[2],t}},9305:function(t){t.exports=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}},154:function(t){t.exports=1e-6},4932:function(t,e,n){t.exports=function(t,e){var n=t[0],i=t[1],a=t[2],o=e[0],s=e[1],l=e[2];return Math.abs(n-o)<=r*Math.max(1,Math.abs(n),Math.abs(o))&&Math.abs(i-s)<=r*Math.max(1,Math.abs(i),Math.abs(s))&&Math.abs(a-l)<=r*Math.max(1,Math.abs(a),Math.abs(l))};var r=n(154)},5777:function(t){t.exports=function(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]}},3306:function(t){t.exports=function(t,e){return t[0]=Math.floor(e[0]),t[1]=Math.floor(e[1]),t[2]=Math.floor(e[2]),t}},7447:function(t,e,n){t.exports=function(t,e,n,i,a,o){var s,l;for(e||(e=3),n||(n=0),l=i?Math.min(i*e+n,t.length):t.length,s=n;s0&&(a=1/Math.sqrt(a),t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a),t}},6660:function(t){t.exports=function(t,e){e=e||1;var n=2*Math.random()*Math.PI,r=2*Math.random()-1,i=Math.sqrt(1-r*r)*e;return t[0]=Math.cos(n)*i,t[1]=Math.sin(n)*i,t[2]=r*e,t}},392:function(t){t.exports=function(t,e,n,r){var i=n[1],a=n[2],o=e[1]-i,s=e[2]-a,l=Math.sin(r),c=Math.cos(r);return t[0]=e[0],t[1]=i+o*c-s*l,t[2]=a+o*l+s*c,t}},3222:function(t){t.exports=function(t,e,n,r){var i=n[0],a=n[2],o=e[0]-i,s=e[2]-a,l=Math.sin(r),c=Math.cos(r);return t[0]=i+s*l+o*c,t[1]=e[1],t[2]=a+s*c-o*l,t}},3388:function(t){t.exports=function(t,e,n,r){var i=n[0],a=n[1],o=e[0]-i,s=e[1]-a,l=Math.sin(r),c=Math.cos(r);return t[0]=i+o*c-s*l,t[1]=a+o*l+s*c,t[2]=e[2],t}},1624:function(t){t.exports=function(t,e){return t[0]=Math.round(e[0]),t[1]=Math.round(e[1]),t[2]=Math.round(e[2]),t}},5685:function(t){t.exports=function(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t}},6722:function(t){t.exports=function(t,e,n,r){return t[0]=e[0]+n[0]*r,t[1]=e[1]+n[1]*r,t[2]=e[2]+n[2]*r,t}},831:function(t){t.exports=function(t,e,n,r){return t[0]=e,t[1]=n,t[2]=r,t}},5294:function(t,e,n){t.exports=n(6403)},3303:function(t,e,n){t.exports=n(4337)},6403:function(t){t.exports=function(t,e){var n=e[0]-t[0],r=e[1]-t[1],i=e[2]-t[2];return n*n+r*r+i*i}},4337:function(t){t.exports=function(t){var e=t[0],n=t[1],r=t[2];return e*e+n*n+r*r}},8921:function(t,e,n){t.exports=n(911)},911:function(t){t.exports=function(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t[2]=e[2]-n[2],t}},9908:function(t){t.exports=function(t,e,n){var r=e[0],i=e[1],a=e[2];return t[0]=r*n[0]+i*n[3]+a*n[6],t[1]=r*n[1]+i*n[4]+a*n[7],t[2]=r*n[2]+i*n[5]+a*n[8],t}},3255:function(t){t.exports=function(t,e,n){var r=e[0],i=e[1],a=e[2],o=n[3]*r+n[7]*i+n[11]*a+n[15];return o=o||1,t[0]=(n[0]*r+n[4]*i+n[8]*a+n[12])/o,t[1]=(n[1]*r+n[5]*i+n[9]*a+n[13])/o,t[2]=(n[2]*r+n[6]*i+n[10]*a+n[14])/o,t}},6568:function(t){t.exports=function(t,e,n){var r=e[0],i=e[1],a=e[2],o=n[0],s=n[1],l=n[2],c=n[3],u=c*r+s*a-l*i,f=c*i+l*r-o*a,h=c*a+o*i-s*r,d=-o*r-s*i-l*a;return t[0]=u*c+d*-o+f*-l-h*-s,t[1]=f*c+d*-s+h*-o-u*-l,t[2]=h*c+d*-l+u*-s-f*-o,t}},3433:function(t){t.exports=function(t,e,n){return t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2],t[3]=e[3]+n[3],t}},1413:function(t){t.exports=function(t){var e=new Float32Array(4);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}},3470:function(t){t.exports=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}},5313:function(t){t.exports=function(){var t=new Float32Array(4);return t[0]=0,t[1]=0,t[2]=0,t[3]=0,t}},5446:function(t){t.exports=function(t,e){var n=e[0]-t[0],r=e[1]-t[1],i=e[2]-t[2],a=e[3]-t[3];return Math.sqrt(n*n+r*r+i*i+a*a)}},205:function(t){t.exports=function(t,e,n){return t[0]=e[0]/n[0],t[1]=e[1]/n[1],t[2]=e[2]/n[2],t[3]=e[3]/n[3],t}},4242:function(t){t.exports=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}},5680:function(t){t.exports=function(t,e,n,r){var i=new Float32Array(4);return i[0]=t,i[1]=e,i[2]=n,i[3]=r,i}},4020:function(t,e,n){t.exports={create:n(5313),clone:n(1413),fromValues:n(5680),copy:n(3470),set:n(6453),add:n(3433),subtract:n(2705),multiply:n(746),divide:n(205),min:n(2170),max:n(3030),scale:n(5510),scaleAndAdd:n(4224),distance:n(5446),squaredDistance:n(1542),length:n(8177),squaredLength:n(9037),negate:n(6459),inverse:n(8057),normalize:n(381),dot:n(4242),lerp:n(8746),random:n(3770),transformMat4:n(6342),transformQuat:n(5022)}},8057:function(t){t.exports=function(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t[3]=1/e[3],t}},8177:function(t){t.exports=function(t){var e=t[0],n=t[1],r=t[2],i=t[3];return Math.sqrt(e*e+n*n+r*r+i*i)}},8746:function(t){t.exports=function(t,e,n,r){var i=e[0],a=e[1],o=e[2],s=e[3];return t[0]=i+r*(n[0]-i),t[1]=a+r*(n[1]-a),t[2]=o+r*(n[2]-o),t[3]=s+r*(n[3]-s),t}},3030:function(t){t.exports=function(t,e,n){return t[0]=Math.max(e[0],n[0]),t[1]=Math.max(e[1],n[1]),t[2]=Math.max(e[2],n[2]),t[3]=Math.max(e[3],n[3]),t}},2170:function(t){t.exports=function(t,e,n){return t[0]=Math.min(e[0],n[0]),t[1]=Math.min(e[1],n[1]),t[2]=Math.min(e[2],n[2]),t[3]=Math.min(e[3],n[3]),t}},746:function(t){t.exports=function(t,e,n){return t[0]=e[0]*n[0],t[1]=e[1]*n[1],t[2]=e[2]*n[2],t[3]=e[3]*n[3],t}},6459:function(t){t.exports=function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=-e[3],t}},381:function(t){t.exports=function(t,e){var n=e[0],r=e[1],i=e[2],a=e[3],o=n*n+r*r+i*i+a*a;return o>0&&(o=1/Math.sqrt(o),t[0]=n*o,t[1]=r*o,t[2]=i*o,t[3]=a*o),t}},3770:function(t,e,n){var r=n(381),i=n(5510);t.exports=function(t,e){return e=e||1,t[0]=Math.random(),t[1]=Math.random(),t[2]=Math.random(),t[3]=Math.random(),r(t,t),i(t,t,e),t}},5510:function(t){t.exports=function(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t}},4224:function(t){t.exports=function(t,e,n,r){return t[0]=e[0]+n[0]*r,t[1]=e[1]+n[1]*r,t[2]=e[2]+n[2]*r,t[3]=e[3]+n[3]*r,t}},6453:function(t){t.exports=function(t,e,n,r,i){return t[0]=e,t[1]=n,t[2]=r,t[3]=i,t}},1542:function(t){t.exports=function(t,e){var n=e[0]-t[0],r=e[1]-t[1],i=e[2]-t[2],a=e[3]-t[3];return n*n+r*r+i*i+a*a}},9037:function(t){t.exports=function(t){var e=t[0],n=t[1],r=t[2],i=t[3];return e*e+n*n+r*r+i*i}},2705:function(t){t.exports=function(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t[2]=e[2]-n[2],t[3]=e[3]-n[3],t}},6342:function(t){t.exports=function(t,e,n){var r=e[0],i=e[1],a=e[2],o=e[3];return t[0]=n[0]*r+n[4]*i+n[8]*a+n[12]*o,t[1]=n[1]*r+n[5]*i+n[9]*a+n[13]*o,t[2]=n[2]*r+n[6]*i+n[10]*a+n[14]*o,t[3]=n[3]*r+n[7]*i+n[11]*a+n[15]*o,t}},5022:function(t){t.exports=function(t,e,n){var r=e[0],i=e[1],a=e[2],o=n[0],s=n[1],l=n[2],c=n[3],u=c*r+s*a-l*i,f=c*i+l*r-o*a,h=c*a+o*i-s*r,d=-o*r-s*i-l*a;return t[0]=u*c+d*-o+f*-l-h*-s,t[1]=f*c+d*-s+h*-o-u*-l,t[2]=h*c+d*-l+u*-s-f*-o,t[3]=e[3],t}},9365:function(t,e,n){var r=n(8096),i=n(7896);t.exports=function(t){for(var e=Array.isArray(t)?t:r(t),n=0;n0)continue;n=t.slice(0,1).join("")}return F(n),L+=n.length,(S=S.slice(n.length)).length}}function Y(){return/[^a-fA-F0-9]/.test(e)?(F(S.join("")),A=l,T):(S.push(e),n=e,T+1)}function $(){return"."===e||/[eE]/.test(e)?(S.push(e),A=g,n=e,T+1):"x"===e&&1===S.length&&"0"===S[0]?(A=w,S.push(e),n=e,T+1):/[^\d]/.test(e)?(F(S.join("")),A=l,T):(S.push(e),n=e,T+1)}function X(){return"f"===e&&(S.push(e),n=e,T+=1),/[eE]/.test(e)?(S.push(e),n=e,T+1):("-"!==e&&"+"!==e||!/[eE]/.test(n))&&/[^\d]/.test(e)?(F(S.join("")),A=l,T):(S.push(e),n=e,T+1)}function K(){if(/[^\d\w_]/.test(e)){var t=S.join("");return A=j[t]?y:N[t]?m:v,F(S.join("")),A=l,T}return S.push(e),n=e,T+1}};var r=n(399),i=n(9746),a=n(9525),o=n(9458),s=n(3585),l=999,c=9999,u=0,f=1,h=2,d=3,p=4,g=5,v=6,m=7,y=8,b=9,x=10,w=11,_=["block-comment","line-comment","preprocessor","operator","integer","float","ident","builtin","keyword","whitespace","eof","integer"]},3585:function(t,e,n){var r=n(9525);r=r.slice().filter((function(t){return!/^(gl\_|texture)/.test(t)})),t.exports=r.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(t){t.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(t,e,n){var r=n(399);t.exports=r.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(t){t.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(t){t.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},8096:function(t,e,n){var r=n(3193);t.exports=function(t,e){var n=r(e),i=[];return i=(i=i.concat(n(t))).concat(n(null))}},6832:function(t){t.exports=function(t){"string"===typeof t&&(t=[t]);for(var e=[].slice.call(arguments,1),n=[],r=0;r0;)for(var s=(t=o.pop()).adjacent,l=0;l<=n;++l){var c=s[l];if(c.boundary&&!(c.lastVisited<=-r)){for(var u=c.vertices,f=0;f<=n;++f){var h=u[f];i[f]=h<0?e:a[h]}var d=this.orient();if(d>0)return c;c.lastVisited=-r,0===d&&o.push(c)}}return null},u.walk=function(t,e){var n=this.vertices.length-1,r=this.dimension,i=this.vertices,a=this.tuple,o=e?this.interior.length*Math.random()|0:this.interior.length-1,s=this.interior[o];t:for(;!s.boundary;){for(var l=s.vertices,c=s.adjacent,u=0;u<=r;++u)a[u]=i[l[u]];for(s.lastVisited=n,u=0;u<=r;++u){var f=c[u];if(!(f.lastVisited>=n)){var h=a[u];a[u]=t;var d=this.orient();if(a[u]=h,d<0){s=f;continue t}f.boundary?f.lastVisited=-n:f.lastVisited=n}}return}return s},u.addPeaks=function(t,e){var n=this.vertices.length-1,r=this.dimension,i=this.vertices,l=this.tuple,c=this.interior,u=this.simplices,f=[e];e.lastVisited=n,e.vertices[e.vertices.indexOf(-1)]=n,e.boundary=!1,c.push(e);for(var h=[];f.length>0;){var d=(e=f.pop()).vertices,p=e.adjacent,g=d.indexOf(n);if(!(g<0))for(var v=0;v<=r;++v)if(v!==g){var m=p[v];if(m.boundary&&!(m.lastVisited>=n)){var y=m.vertices;if(m.lastVisited!==-n){for(var b=0,x=0;x<=r;++x)y[x]<0?(b=x,l[x]=t):l[x]=i[y[x]];if(this.orient()>0){y[b]=n,m.boundary=!1,c.push(m),f.push(m),m.lastVisited=n;continue}m.lastVisited=-n}var w=m.adjacent,_=d.slice(),k=p.slice(),T=new a(_,k,!0);u.push(T);var M=w.indexOf(e);if(!(M<0))for(w[M]=T,k[g]=m,_[v]=-1,k[v]=e,p[v]=T,T.flip(),x=0;x<=r;++x){var A=_[x];if(!(A<0||A===n)){for(var S=new Array(r-1),E=0,C=0;C<=r;++C){var P=_[C];P<0||C===x||(S[E++]=P)}h.push(new o(S,T,x))}}}}}for(h.sort(s),v=0;v+1=0?o[l++]=s[u]:c=1&u;if(c===(1&t)){var f=o[0];o[0]=o[1],o[1]=f}e.push(o)}}return e}},9014:function(t,e,n){"use strict";var r=n(5070),i=0,a=1;function o(t,e,n,r,i){this.mid=t,this.left=e,this.right=n,this.leftPoints=r,this.rightPoints=i,this.count=(e?e.count:0)+(n?n.count:0)+r.length}t.exports=function(t){return t&&0!==t.length?new b(y(t)):new b(null)};var s=o.prototype;function l(t,e){t.mid=e.mid,t.left=e.left,t.right=e.right,t.leftPoints=e.leftPoints,t.rightPoints=e.rightPoints,t.count=e.count}function c(t,e){var n=y(e);t.mid=n.mid,t.left=n.left,t.right=n.right,t.leftPoints=n.leftPoints,t.rightPoints=n.rightPoints,t.count=n.count}function u(t,e){var n=t.intervals([]);n.push(e),c(t,n)}function f(t,e){var n=t.intervals([]),r=n.indexOf(e);return r<0?i:(n.splice(r,1),c(t,n),a)}function h(t,e,n){for(var r=0;r=0&&t[r][1]>=e;--r){var i=n(t[r]);if(i)return i}}function p(t,e){for(var n=0;n>1],i=[],a=[],s=[];for(n=0;n3*(e+1)?u(this,t):this.left.insert(t):this.left=y([t]);else if(t[0]>this.mid)this.right?4*(this.right.count+1)>3*(e+1)?u(this,t):this.right.insert(t):this.right=y([t]);else{var n=r.ge(this.leftPoints,t,v),i=r.ge(this.rightPoints,t,m);this.leftPoints.splice(n,0,t),this.rightPoints.splice(i,0,t)}},s.remove=function(t){var e=this.count-this.leftPoints;if(t[1]3*(e-1)?f(this,t):2===(c=this.left.remove(t))?(this.left=null,this.count-=1,a):(c===a&&(this.count-=1),c):i;if(t[0]>this.mid)return this.right?4*(this.left?this.left.count:0)>3*(e-1)?f(this,t):2===(c=this.right.remove(t))?(this.right=null,this.count-=1,a):(c===a&&(this.count-=1),c):i;if(1===this.count)return this.leftPoints[0]===t?2:i;if(1===this.leftPoints.length&&this.leftPoints[0]===t){if(this.left&&this.right){for(var n=this,o=this.left;o.right;)n=o,o=o.right;if(n===this)o.right=this.right;else{var s=this.left,c=this.right;n.count-=o.count,n.right=o.left,o.left=s,o.right=c}l(this,o),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?l(this,this.left):l(this,this.right);return a}for(s=r.ge(this.leftPoints,t,v);sthis.mid?this.right&&(n=this.right.queryPoint(t,e))?n:d(this.rightPoints,t,e):p(this.leftPoints,e);var n},s.queryInterval=function(t,e,n){var r;return tthis.mid&&this.right&&(r=this.right.queryInterval(t,e,n))?r:ethis.mid?d(this.rightPoints,t,n):p(this.leftPoints,n)};var x=b.prototype;x.insert=function(t){this.root?this.root.insert(t):this.root=new o(t[0],null,null,[t],[t])},x.remove=function(t){if(this.root){var e=this.root.remove(t);return 2===e&&(this.root=null),e!==i}return!1},x.queryPoint=function(t,e){if(this.root)return this.root.queryPoint(t,e)},x.queryInterval=function(t,e,n){if(t<=e&&this.root)return this.root.queryInterval(t,e,n)},Object.defineProperty(x,"count",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(x,"intervals",{get:function(){return this.root?this.root.intervals([]):[]}})},9560:function(t){"use strict";t.exports=function(t){for(var e=new Array(t),n=0;n13)&&32!==e&&133!==e&&160!==e&&5760!==e&&6158!==e&&(e<8192||e>8205)&&8232!==e&&8233!==e&&8239!==e&&8287!==e&&8288!==e&&12288!==e&&65279!==e)return!1;return!0}},3578:function(t){t.exports=function(t,e,n){return t*(1-n)+e*n}},7191:function(t,e,n){var r=n(4690),i=n(9823),a=n(7332),o=n(7787),s=n(7437),l=n(2142),c={length:n(4693),normalize:n(899),dot:n(9305),cross:n(903)},u=i(),f=i(),h=[0,0,0,0],d=[[0,0,0],[0,0,0],[0,0,0]],p=[0,0,0];function g(t,e,n,r,i){t[0]=e[0]*r+n[0]*i,t[1]=e[1]*r+n[1]*i,t[2]=e[2]*r+n[2]*i}t.exports=function(t,e,n,i,v,m){if(e||(e=[0,0,0]),n||(n=[0,0,0]),i||(i=[0,0,0]),v||(v=[0,0,0,1]),m||(m=[0,0,0,1]),!r(u,t))return!1;if(a(f,u),f[3]=0,f[7]=0,f[11]=0,f[15]=1,Math.abs(o(f)<1e-8))return!1;var y,b,x=u[3],w=u[7],_=u[11],k=u[12],T=u[13],M=u[14],A=u[15];if(0!==x||0!==w||0!==_){if(h[0]=x,h[1]=w,h[2]=_,h[3]=A,!s(f,f))return!1;l(f,f),function(t,e,n){var r=e[0],i=e[1],a=e[2],o=e[3];t[0]=n[0]*r+n[4]*i+n[8]*a+n[12]*o,t[1]=n[1]*r+n[5]*i+n[9]*a+n[13]*o,t[2]=n[2]*r+n[6]*i+n[10]*a+n[14]*o,t[3]=n[3]*r+n[7]*i+n[11]*a+n[15]*o}(v,h,f)}else v[0]=v[1]=v[2]=0,v[3]=1;if(e[0]=k,e[1]=T,e[2]=M,b=u,(y=d)[0][0]=b[0],y[0][1]=b[1],y[0][2]=b[2],y[1][0]=b[4],y[1][1]=b[5],y[1][2]=b[6],y[2][0]=b[8],y[2][1]=b[9],y[2][2]=b[10],n[0]=c.length(d[0]),c.normalize(d[0],d[0]),i[0]=c.dot(d[0],d[1]),g(d[1],d[1],d[0],1,-i[0]),n[1]=c.length(d[1]),c.normalize(d[1],d[1]),i[0]/=n[1],i[1]=c.dot(d[0],d[2]),g(d[2],d[2],d[0],1,-i[1]),i[2]=c.dot(d[1],d[2]),g(d[2],d[2],d[1],1,-i[2]),n[2]=c.length(d[2]),c.normalize(d[2],d[2]),i[1]/=n[2],i[2]/=n[2],c.cross(p,d[1],d[2]),c.dot(d[0],p)<0)for(var S=0;S<3;S++)n[S]*=-1,d[S][0]*=-1,d[S][1]*=-1,d[S][2]*=-1;return m[0]=.5*Math.sqrt(Math.max(1+d[0][0]-d[1][1]-d[2][2],0)),m[1]=.5*Math.sqrt(Math.max(1-d[0][0]+d[1][1]-d[2][2],0)),m[2]=.5*Math.sqrt(Math.max(1-d[0][0]-d[1][1]+d[2][2],0)),m[3]=.5*Math.sqrt(Math.max(1+d[0][0]+d[1][1]+d[2][2],0)),d[2][1]>d[1][2]&&(m[0]=-m[0]),d[0][2]>d[2][0]&&(m[1]=-m[1]),d[1][0]>d[0][1]&&(m[2]=-m[2]),!0}},4690:function(t){t.exports=function(t,e){var n=e[15];if(0===n)return!1;for(var r=1/n,i=0;i<16;i++)t[i]=e[i]*r;return!0}},7649:function(t,e,n){var r=n(1868),i=n(1102),a=n(7191),o=n(7787),s=n(1116),l=f(),c=f(),u=f();function f(){return{translate:h(),scale:h(1),skew:h(),perspective:[0,0,0,1],quaternion:[0,0,0,1]}}function h(t){return[t||0,t||0,t||0]}t.exports=function(t,e,n,f){if(0===o(e)||0===o(n))return!1;var h=a(e,l.translate,l.scale,l.skew,l.perspective,l.quaternion),d=a(n,c.translate,c.scale,c.skew,c.perspective,c.quaternion);return!(!h||!d)&&(r(u.translate,l.translate,c.translate,f),r(u.skew,l.skew,c.skew,f),r(u.scale,l.scale,c.scale,f),r(u.perspective,l.perspective,c.perspective,f),s(u.quaternion,l.quaternion,c.quaternion,f),i(t,u.translate,u.scale,u.skew,u.perspective,u.quaternion),!0)}},1102:function(t,e,n){var r={identity:n(9947),translate:n(998),multiply:n(104),create:n(9823),scale:n(3668),fromRotationTranslation:n(7280)},i=(r.create(),r.create());t.exports=function(t,e,n,a,o,s){return r.identity(t),r.fromRotationTranslation(t,s,e),t[3]=o[0],t[7]=o[1],t[11]=o[2],t[15]=o[3],r.identity(i),0!==a[2]&&(i[9]=a[2],r.multiply(t,t,i)),0!==a[1]&&(i[9]=0,i[8]=a[1],r.multiply(t,t,i)),0!==a[0]&&(i[8]=0,i[4]=a[0],r.multiply(t,t,i)),r.scale(t,t,n),t}},9298:function(t,e,n){"use strict";var r=n(5070),i=n(7649),a=n(7437),o=n(6109),s=n(7115),l=n(5240),c=n(3012),u=n(998),f=(n(3668),n(899)),h=[0,0,0];function d(t){this._components=t.slice(),this._time=[0],this.prevMatrix=t.slice(),this.nextMatrix=t.slice(),this.computedMatrix=t.slice(),this.computedInverse=t.slice(),this.computedEye=[0,0,0],this.computedUp=[0,0,0],this.computedCenter=[0,0,0],this.computedRadius=[0],this._limits=[-1/0,1/0]}t.exports=function(t){return new d((t=t||{}).matrix||[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])};var p=d.prototype;p.recalcMatrix=function(t){var e=this._time,n=r.le(e,t),o=this.computedMatrix;if(!(n<0)){var s=this._components;if(n===e.length-1)for(var l=16*n,c=0;c<16;++c)o[c]=s[l++];else{var u=e[n+1]-e[n],h=(l=16*n,this.prevMatrix),d=!0;for(c=0;c<16;++c)h[c]=s[l++];var p=this.nextMatrix;for(c=0;c<16;++c)p[c]=s[l++],d=d&&h[c]===p[c];if(u<1e-6||d)for(c=0;c<16;++c)o[c]=h[c];else i(o,h,p,(t-e[n])/u)}var g=this.computedUp;g[0]=o[1],g[1]=o[5],g[2]=o[9],f(g,g);var v=this.computedInverse;a(v,o);var m=this.computedEye,y=v[15];m[0]=v[12]/y,m[1]=v[13]/y,m[2]=v[14]/y;var b=this.computedCenter,x=Math.exp(this.computedRadius[0]);for(c=0;c<3;++c)b[c]=m[c]-o[2+4*c]*x}},p.idle=function(t){if(!(t1&&r(t[o[u-2]],t[o[u-1]],c)<=0;)u-=1,o.pop();for(o.push(l),u=s.length;u>1&&r(t[s[u-2]],t[s[u-1]],c)>=0;)u-=1,s.pop();s.push(l)}n=new Array(s.length+o.length-2);for(var f=0,h=(i=0,o.length);i0;--d)n[f++]=s[d];return n};var r=n(417)[3]},6145:function(t,e,n){"use strict";t.exports=function(t,e){e||(e=t,t=window);var n=0,i=0,a=0,o={shift:!1,alt:!1,control:!1,meta:!1},s=!1;function l(t){var e=!1;return"altKey"in t&&(e=e||t.altKey!==o.alt,o.alt=!!t.altKey),"shiftKey"in t&&(e=e||t.shiftKey!==o.shift,o.shift=!!t.shiftKey),"ctrlKey"in t&&(e=e||t.ctrlKey!==o.control,o.control=!!t.ctrlKey),"metaKey"in t&&(e=e||t.metaKey!==o.meta,o.meta=!!t.metaKey),e}function c(t,s){var c=r.x(s),u=r.y(s);"buttons"in s&&(t=0|s.buttons),(t!==n||c!==i||u!==a||l(s))&&(n=0|t,i=c||0,a=u||0,e&&e(n,i,a,o))}function u(t){c(0,t)}function f(){(n||i||a||o.shift||o.alt||o.meta||o.control)&&(i=a=0,n=0,o.shift=o.alt=o.control=o.meta=!1,e&&e(0,0,0,o))}function h(t){l(t)&&e&&e(n,i,a,o)}function d(t){0===r.buttons(t)?c(0,t):c(n,t)}function p(t){c(n|r.buttons(t),t)}function g(t){c(n&~r.buttons(t),t)}function v(){s||(s=!0,t.addEventListener("mousemove",d),t.addEventListener("mousedown",p),t.addEventListener("mouseup",g),t.addEventListener("mouseleave",u),t.addEventListener("mouseenter",u),t.addEventListener("mouseout",u),t.addEventListener("mouseover",u),t.addEventListener("blur",f),t.addEventListener("keyup",h),t.addEventListener("keydown",h),t.addEventListener("keypress",h),t!==window&&(window.addEventListener("blur",f),window.addEventListener("keyup",h),window.addEventListener("keydown",h),window.addEventListener("keypress",h)))}v();var m={element:t};return Object.defineProperties(m,{enabled:{get:function(){return s},set:function(e){e?v():s&&(s=!1,t.removeEventListener("mousemove",d),t.removeEventListener("mousedown",p),t.removeEventListener("mouseup",g),t.removeEventListener("mouseleave",u),t.removeEventListener("mouseenter",u),t.removeEventListener("mouseout",u),t.removeEventListener("mouseover",u),t.removeEventListener("blur",f),t.removeEventListener("keyup",h),t.removeEventListener("keydown",h),t.removeEventListener("keypress",h),t!==window&&(window.removeEventListener("blur",f),window.removeEventListener("keyup",h),window.removeEventListener("keydown",h),window.removeEventListener("keypress",h)))},enumerable:!0},buttons:{get:function(){return n},enumerable:!0},x:{get:function(){return i},enumerable:!0},y:{get:function(){return a},enumerable:!0},mods:{get:function(){return o},enumerable:!0}}),m};var r=n(4110)},2565:function(t){var e={left:0,top:0};t.exports=function(t,n,r){n=n||t.currentTarget||t.srcElement,Array.isArray(r)||(r=[0,0]);var i,a=t.clientX||0,o=t.clientY||0,s=(i=n)===window||i===document||i===document.body?e:i.getBoundingClientRect();return r[0]=a-s.left,r[1]=o-s.top,r}},4110:function(t,e){"use strict";function n(t){return t.target||t.srcElement||window}e.buttons=function(t){if("object"===typeof t){if("buttons"in t)return t.buttons;if("which"in t){if(2===(e=t.which))return 4;if(3===e)return 2;if(e>0)return 1<=0)return 1< 0"),"function"!==typeof t.vertex&&e("Must specify vertex creation function"),"function"!==typeof t.cell&&e("Must specify cell creation function"),"function"!==typeof t.phase&&e("Must specify phase function");for(var s=t.getters||[],l=new Array(a),c=0;c=0?l[c]=!0:l[c]=!1;return function(t,e,n,a,o,s){var l=[s,o].join(",");return(0,i[l])(t,e,n,r.mallocUint32,r.freeUint32)}(t.vertex,t.cell,t.phase,0,n,l)};var i={"false,0,1":function(t,e,n,r,i){return function(a,o,s,l){var c,u=0|a.shape[0],f=0|a.shape[1],h=a.data,d=0|a.offset,p=0|a.stride[0],g=0|a.stride[1],v=d,m=0|-p,y=0,b=0|-g,x=0,w=-p-g|0,_=0,k=0|p,T=g-p*u|0,M=0,A=0,S=0,E=2*u|0,C=r(E),P=r(E),L=0,O=0,I=-1,D=-1,R=0,z=0|-u,N=0|u,j=0,F=-u-1|0,B=u-1|0,U=0,H=0,V=0;for(M=0;M0){if(A=1,C[L++]=n(h[v],o,s,l),v+=k,u>0)for(M=1,c=h[v],O=C[L]=n(c,o,s,l),R=C[L+I],j=C[L+z],U=C[L+F],O===R&&O===j&&O===U||(y=h[v+m],x=h[v+b],_=h[v+w],t(M,A,c,y,x,_,O,R,j,U,o,s,l),H=P[L]=S++),L+=1,v+=k,M=2;M0)for(M=1,c=h[v],O=C[L]=n(c,o,s,l),R=C[L+I],j=C[L+z],U=C[L+F],O===R&&O===j&&O===U||(y=h[v+m],x=h[v+b],_=h[v+w],t(M,A,c,y,x,_,O,R,j,U,o,s,l),H=P[L]=S++,U!==j&&e(P[L+z],H,x,_,j,U,o,s,l)),L+=1,v+=k,M=2;M0){if(M=1,C[L++]=n(h[v],o,s,l),v+=k,f>0)for(A=1,c=h[v],O=C[L]=n(c,o,s,l),j=C[L+z],R=C[L+I],U=C[L+F],O===j&&O===R&&O===U||(y=h[v+m],x=h[v+b],_=h[v+w],t(M,A,c,y,x,_,O,j,R,U,o,s,l),H=P[L]=S++),L+=1,v+=k,A=2;A0)for(A=1,c=h[v],O=C[L]=n(c,o,s,l),j=C[L+z],R=C[L+I],U=C[L+F],O===j&&O===R&&O===U||(y=h[v+m],x=h[v+b],_=h[v+w],t(M,A,c,y,x,_,O,j,R,U,o,s,l),H=P[L]=S++,U!==j&&e(P[L+z],H,_,y,U,j,o,s,l)),L+=1,v+=k,A=2;A2&&a[1]>2&&r(i.pick(-1,-1).lo(1,1).hi(a[0]-2,a[1]-2),t.pick(-1,-1,0).lo(1,1).hi(a[0]-2,a[1]-2),t.pick(-1,-1,1).lo(1,1).hi(a[0]-2,a[1]-2)),a[1]>2&&(n(i.pick(0,-1).lo(1).hi(a[1]-2),t.pick(0,-1,1).lo(1).hi(a[1]-2)),e(t.pick(0,-1,0).lo(1).hi(a[1]-2))),a[1]>2&&(n(i.pick(a[0]-1,-1).lo(1).hi(a[1]-2),t.pick(a[0]-1,-1,1).lo(1).hi(a[1]-2)),e(t.pick(a[0]-1,-1,0).lo(1).hi(a[1]-2))),a[0]>2&&(n(i.pick(-1,0).lo(1).hi(a[0]-2),t.pick(-1,0,0).lo(1).hi(a[0]-2)),e(t.pick(-1,0,1).lo(1).hi(a[0]-2))),a[0]>2&&(n(i.pick(-1,a[1]-1).lo(1).hi(a[0]-2),t.pick(-1,a[1]-1,0).lo(1).hi(a[0]-2)),e(t.pick(-1,a[1]-1,1).lo(1).hi(a[0]-2))),t.set(0,0,0,0),t.set(0,0,1,0),t.set(a[0]-1,0,0,0),t.set(a[0]-1,0,1,0),t.set(0,a[1]-1,0,0),t.set(0,a[1]-1,1,0),t.set(a[0]-1,a[1]-1,0,0),t.set(a[0]-1,a[1]-1,1,0),t}}t.exports=function(t,e,n){return Array.isArray(n)||(n=r(e.dimension,"string"===typeof n?n:"clamp")),0===e.size?t:0===e.dimension?(t.set(0),t):function(t){var e=t.join();if(a=u[e])return a;for(var n=t.length,r=[f,h],i=1;i<=n;++i)r.push(d(i));var a=p.apply(void 0,r);return u[e]=a,a}(n)(t,e)}},3581:function(t){"use strict";function e(t,e){var n=Math.floor(e),r=e-n,i=0<=n&&n0;){b<64?(l=b,b=0):(l=64,b-=64);for(var x=0|t[1];x>0;){x<64?(c=x,x=0):(c=64,x-=64),r=m+b*f+x*h,o=y+b*p+x*g;var w=0,_=0,k=0,T=d,M=f-u*d,A=h-l*f,S=v,E=p-u*v,C=g-l*p;for(k=0;k0;){g<64?(l=g,g=0):(l=64,g-=64);for(var v=0|t[0];v>0;){v<64?(s=v,v=0):(s=64,v-=64),r=d+g*u+v*c,o=p+g*h+v*f;var m=0,y=0,b=u,x=c-l*u,w=h,_=f-l*h;for(y=0;y0;){y<64?(c=y,y=0):(c=64,y-=64);for(var b=0|t[0];b>0;){b<64?(s=b,b=0):(s=64,b-=64);for(var x=0|t[1];x>0;){x<64?(l=x,x=0):(l=64,x-=64),r=v+y*h+b*u+x*f,o=m+y*g+b*d+x*p;var w=0,_=0,k=0,T=h,M=u-c*h,A=f-s*u,S=g,E=d-c*g,C=p-s*d;for(k=0;kn;){m=0,y=g-o;e:for(v=0;vx)break e;y+=f,m+=h}for(m=g,y=g-o,v=0;v>1,q=V-B,G=V+B,W=U,Y=q,$=V,X=G,K=H,Z=i+1,J=a-1,Q=!0,tt=0,et=0,nt=0,rt=f,it=e(rt),at=e(rt);M=l*W,A=l*Y,F=s;t:for(T=0;T0){v=W,W=Y,Y=v;break t}if(nt<0)break t;F+=d}M=l*X,A=l*K,F=s;t:for(T=0;T0){v=X,X=K,K=v;break t}if(nt<0)break t;F+=d}M=l*W,A=l*$,F=s;t:for(T=0;T0){v=W,W=$,$=v;break t}if(nt<0)break t;F+=d}M=l*Y,A=l*$,F=s;t:for(T=0;T0){v=Y,Y=$,$=v;break t}if(nt<0)break t;F+=d}M=l*W,A=l*X,F=s;t:for(T=0;T0){v=W,W=X,X=v;break t}if(nt<0)break t;F+=d}M=l*$,A=l*X,F=s;t:for(T=0;T0){v=$,$=X,X=v;break t}if(nt<0)break t;F+=d}M=l*Y,A=l*K,F=s;t:for(T=0;T0){v=Y,Y=K,K=v;break t}if(nt<0)break t;F+=d}M=l*Y,A=l*$,F=s;t:for(T=0;T0){v=Y,Y=$,$=v;break t}if(nt<0)break t;F+=d}M=l*X,A=l*K,F=s;t:for(T=0;T0){v=X,X=K,K=v;break t}if(nt<0)break t;F+=d}for(M=l*W,A=l*Y,S=l*$,E=l*X,C=l*K,P=l*U,L=l*V,O=l*H,j=0,F=s,T=0;T0)){if(nt<0){for(M=l*x,A=l*Z,S=l*J,F=s,T=0;T0)for(;;){for(w=s+J*l,j=0,T=0;T0)){for(w=s+J*l,j=0,T=0;TH){t:for(;;){for(w=s+Z*l,j=0,F=s,T=0;T1&&r?s(n,r[0],r[1]):s(n)}(t,e,l);return r(l,c)}},8729:function(t,e,n){"use strict";var r=n(8139),i={};t.exports=function(t){var e=t.order,n=t.dtype,a=[e,n].join(":"),o=i[a];return o||(i[a]=o=r(e,n)),o(t),t}},5050:function(t,e,n){var r=n(4780),i="undefined"!==typeof Float64Array;function a(t,e){return t[0]-e[0]}function o(){var t,e=this.stride,n=new Array(e.length);for(t=0;t=0&&(e+=a*(n=0|t),i-=n),new r(this.data,i,a,e)},i.step=function(t){var e=this.shape[0],n=this.stride[0],i=this.offset,a=0,o=Math.ceil;return"number"===typeof t&&((a=0|t)<0?(i+=n*(e-1),e=o(-e/a)):e=o(e/a),n*=a),new r(this.data,e,n,i)},i.transpose=function(t){t=void 0===t?0:0|t;var e=this.shape,n=this.stride;return new r(this.data,e[t],n[t],this.offset)},i.pick=function(t){var n=[],r=[],i=this.offset;return"number"===typeof t&&t>=0?i=i+this.stride[0]*t|0:(n.push(this.shape[0]),r.push(this.stride[0])),(0,e[n.length+1])(this.data,n,r,i)},function(t,e,n,i){return new r(t,e[0],n[0],i)}},2:function(t,e,n){function r(t,e,n,r,i,a){this.data=t,this.shape=[e,n],this.stride=[r,i],this.offset=0|a}var i=r.prototype;return i.dtype=t,i.dimension=2,Object.defineProperty(i,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(i,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),i.set=function(e,n,r){return"generic"===t?this.data.set(this.offset+this.stride[0]*e+this.stride[1]*n,r):this.data[this.offset+this.stride[0]*e+this.stride[1]*n]=r},i.get=function(e,n){return"generic"===t?this.data.get(this.offset+this.stride[0]*e+this.stride[1]*n):this.data[this.offset+this.stride[0]*e+this.stride[1]*n]},i.index=function(t,e){return this.offset+this.stride[0]*t+this.stride[1]*e},i.hi=function(t,e){return new r(this.data,"number"!==typeof t||t<0?this.shape[0]:0|t,"number"!==typeof e||e<0?this.shape[1]:0|e,this.stride[0],this.stride[1],this.offset)},i.lo=function(t,e){var n=this.offset,i=0,a=this.shape[0],o=this.shape[1],s=this.stride[0],l=this.stride[1];return"number"===typeof t&&t>=0&&(n+=s*(i=0|t),a-=i),"number"===typeof e&&e>=0&&(n+=l*(i=0|e),o-=i),new r(this.data,a,o,s,l,n)},i.step=function(t,e){var n=this.shape[0],i=this.shape[1],a=this.stride[0],o=this.stride[1],s=this.offset,l=0,c=Math.ceil;return"number"===typeof t&&((l=0|t)<0?(s+=a*(n-1),n=c(-n/l)):n=c(n/l),a*=l),"number"===typeof e&&((l=0|e)<0?(s+=o*(i-1),i=c(-i/l)):i=c(i/l),o*=l),new r(this.data,n,i,a,o,s)},i.transpose=function(t,e){t=void 0===t?0:0|t,e=void 0===e?1:0|e;var n=this.shape,i=this.stride;return new r(this.data,n[t],n[e],i[t],i[e],this.offset)},i.pick=function(t,n){var r=[],i=[],a=this.offset;return"number"===typeof t&&t>=0?a=a+this.stride[0]*t|0:(r.push(this.shape[0]),i.push(this.stride[0])),"number"===typeof n&&n>=0?a=a+this.stride[1]*n|0:(r.push(this.shape[1]),i.push(this.stride[1])),(0,e[r.length+1])(this.data,r,i,a)},function(t,e,n,i){return new r(t,e[0],e[1],n[0],n[1],i)}},3:function(t,e,n){function r(t,e,n,r,i,a,o,s){this.data=t,this.shape=[e,n,r],this.stride=[i,a,o],this.offset=0|s}var i=r.prototype;return i.dtype=t,i.dimension=3,Object.defineProperty(i,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(i,"order",{get:function(){var t=Math.abs(this.stride[0]),e=Math.abs(this.stride[1]),n=Math.abs(this.stride[2]);return t>e?e>n?[2,1,0]:t>n?[1,2,0]:[1,0,2]:t>n?[2,0,1]:n>e?[0,1,2]:[0,2,1]}}),i.set=function(e,n,r,i){return"generic"===t?this.data.set(this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r,i):this.data[this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r]=i},i.get=function(e,n,r){return"generic"===t?this.data.get(this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r):this.data[this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r]},i.index=function(t,e,n){return this.offset+this.stride[0]*t+this.stride[1]*e+this.stride[2]*n},i.hi=function(t,e,n){return new r(this.data,"number"!==typeof t||t<0?this.shape[0]:0|t,"number"!==typeof e||e<0?this.shape[1]:0|e,"number"!==typeof n||n<0?this.shape[2]:0|n,this.stride[0],this.stride[1],this.stride[2],this.offset)},i.lo=function(t,e,n){var i=this.offset,a=0,o=this.shape[0],s=this.shape[1],l=this.shape[2],c=this.stride[0],u=this.stride[1],f=this.stride[2];return"number"===typeof t&&t>=0&&(i+=c*(a=0|t),o-=a),"number"===typeof e&&e>=0&&(i+=u*(a=0|e),s-=a),"number"===typeof n&&n>=0&&(i+=f*(a=0|n),l-=a),new r(this.data,o,s,l,c,u,f,i)},i.step=function(t,e,n){var i=this.shape[0],a=this.shape[1],o=this.shape[2],s=this.stride[0],l=this.stride[1],c=this.stride[2],u=this.offset,f=0,h=Math.ceil;return"number"===typeof t&&((f=0|t)<0?(u+=s*(i-1),i=h(-i/f)):i=h(i/f),s*=f),"number"===typeof e&&((f=0|e)<0?(u+=l*(a-1),a=h(-a/f)):a=h(a/f),l*=f),"number"===typeof n&&((f=0|n)<0?(u+=c*(o-1),o=h(-o/f)):o=h(o/f),c*=f),new r(this.data,i,a,o,s,l,c,u)},i.transpose=function(t,e,n){t=void 0===t?0:0|t,e=void 0===e?1:0|e,n=void 0===n?2:0|n;var i=this.shape,a=this.stride;return new r(this.data,i[t],i[e],i[n],a[t],a[e],a[n],this.offset)},i.pick=function(t,n,r){var i=[],a=[],o=this.offset;return"number"===typeof t&&t>=0?o=o+this.stride[0]*t|0:(i.push(this.shape[0]),a.push(this.stride[0])),"number"===typeof n&&n>=0?o=o+this.stride[1]*n|0:(i.push(this.shape[1]),a.push(this.stride[1])),"number"===typeof r&&r>=0?o=o+this.stride[2]*r|0:(i.push(this.shape[2]),a.push(this.stride[2])),(0,e[i.length+1])(this.data,i,a,o)},function(t,e,n,i){return new r(t,e[0],e[1],e[2],n[0],n[1],n[2],i)}},4:function(t,e,n){function r(t,e,n,r,i,a,o,s,l,c){this.data=t,this.shape=[e,n,r,i],this.stride=[a,o,s,l],this.offset=0|c}var i=r.prototype;return i.dtype=t,i.dimension=4,Object.defineProperty(i,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(i,"order",{get:n}),i.set=function(e,n,r,i,a){return"generic"===t?this.data.set(this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r+this.stride[3]*i,a):this.data[this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r+this.stride[3]*i]=a},i.get=function(e,n,r,i){return"generic"===t?this.data.get(this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r+this.stride[3]*i):this.data[this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r+this.stride[3]*i]},i.index=function(t,e,n,r){return this.offset+this.stride[0]*t+this.stride[1]*e+this.stride[2]*n+this.stride[3]*r},i.hi=function(t,e,n,i){return new r(this.data,"number"!==typeof t||t<0?this.shape[0]:0|t,"number"!==typeof e||e<0?this.shape[1]:0|e,"number"!==typeof n||n<0?this.shape[2]:0|n,"number"!==typeof i||i<0?this.shape[3]:0|i,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},i.lo=function(t,e,n,i){var a=this.offset,o=0,s=this.shape[0],l=this.shape[1],c=this.shape[2],u=this.shape[3],f=this.stride[0],h=this.stride[1],d=this.stride[2],p=this.stride[3];return"number"===typeof t&&t>=0&&(a+=f*(o=0|t),s-=o),"number"===typeof e&&e>=0&&(a+=h*(o=0|e),l-=o),"number"===typeof n&&n>=0&&(a+=d*(o=0|n),c-=o),"number"===typeof i&&i>=0&&(a+=p*(o=0|i),u-=o),new r(this.data,s,l,c,u,f,h,d,p,a)},i.step=function(t,e,n,i){var a=this.shape[0],o=this.shape[1],s=this.shape[2],l=this.shape[3],c=this.stride[0],u=this.stride[1],f=this.stride[2],h=this.stride[3],d=this.offset,p=0,g=Math.ceil;return"number"===typeof t&&((p=0|t)<0?(d+=c*(a-1),a=g(-a/p)):a=g(a/p),c*=p),"number"===typeof e&&((p=0|e)<0?(d+=u*(o-1),o=g(-o/p)):o=g(o/p),u*=p),"number"===typeof n&&((p=0|n)<0?(d+=f*(s-1),s=g(-s/p)):s=g(s/p),f*=p),"number"===typeof i&&((p=0|i)<0?(d+=h*(l-1),l=g(-l/p)):l=g(l/p),h*=p),new r(this.data,a,o,s,l,c,u,f,h,d)},i.transpose=function(t,e,n,i){t=void 0===t?0:0|t,e=void 0===e?1:0|e,n=void 0===n?2:0|n,i=void 0===i?3:0|i;var a=this.shape,o=this.stride;return new r(this.data,a[t],a[e],a[n],a[i],o[t],o[e],o[n],o[i],this.offset)},i.pick=function(t,n,r,i){var a=[],o=[],s=this.offset;return"number"===typeof t&&t>=0?s=s+this.stride[0]*t|0:(a.push(this.shape[0]),o.push(this.stride[0])),"number"===typeof n&&n>=0?s=s+this.stride[1]*n|0:(a.push(this.shape[1]),o.push(this.stride[1])),"number"===typeof r&&r>=0?s=s+this.stride[2]*r|0:(a.push(this.shape[2]),o.push(this.stride[2])),"number"===typeof i&&i>=0?s=s+this.stride[3]*i|0:(a.push(this.shape[3]),o.push(this.stride[3])),(0,e[a.length+1])(this.data,a,o,s)},function(t,e,n,i){return new r(t,e[0],e[1],e[2],e[3],n[0],n[1],n[2],n[3],i)}},5:function(t,e,n){function r(t,e,n,r,i,a,o,s,l,c,u,f){this.data=t,this.shape=[e,n,r,i,a],this.stride=[o,s,l,c,u],this.offset=0|f}var i=r.prototype;return i.dtype=t,i.dimension=5,Object.defineProperty(i,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(i,"order",{get:n}),i.set=function(e,n,r,i,a,o){return"generic"===t?this.data.set(this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r+this.stride[3]*i+this.stride[4]*a,o):this.data[this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r+this.stride[3]*i+this.stride[4]*a]=o},i.get=function(e,n,r,i,a){return"generic"===t?this.data.get(this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r+this.stride[3]*i+this.stride[4]*a):this.data[this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r+this.stride[3]*i+this.stride[4]*a]},i.index=function(t,e,n,r,i){return this.offset+this.stride[0]*t+this.stride[1]*e+this.stride[2]*n+this.stride[3]*r+this.stride[4]*i},i.hi=function(t,e,n,i,a){return new r(this.data,"number"!==typeof t||t<0?this.shape[0]:0|t,"number"!==typeof e||e<0?this.shape[1]:0|e,"number"!==typeof n||n<0?this.shape[2]:0|n,"number"!==typeof i||i<0?this.shape[3]:0|i,"number"!==typeof a||a<0?this.shape[4]:0|a,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},i.lo=function(t,e,n,i,a){var o=this.offset,s=0,l=this.shape[0],c=this.shape[1],u=this.shape[2],f=this.shape[3],h=this.shape[4],d=this.stride[0],p=this.stride[1],g=this.stride[2],v=this.stride[3],m=this.stride[4];return"number"===typeof t&&t>=0&&(o+=d*(s=0|t),l-=s),"number"===typeof e&&e>=0&&(o+=p*(s=0|e),c-=s),"number"===typeof n&&n>=0&&(o+=g*(s=0|n),u-=s),"number"===typeof i&&i>=0&&(o+=v*(s=0|i),f-=s),"number"===typeof a&&a>=0&&(o+=m*(s=0|a),h-=s),new r(this.data,l,c,u,f,h,d,p,g,v,m,o)},i.step=function(t,e,n,i,a){var o=this.shape[0],s=this.shape[1],l=this.shape[2],c=this.shape[3],u=this.shape[4],f=this.stride[0],h=this.stride[1],d=this.stride[2],p=this.stride[3],g=this.stride[4],v=this.offset,m=0,y=Math.ceil;return"number"===typeof t&&((m=0|t)<0?(v+=f*(o-1),o=y(-o/m)):o=y(o/m),f*=m),"number"===typeof e&&((m=0|e)<0?(v+=h*(s-1),s=y(-s/m)):s=y(s/m),h*=m),"number"===typeof n&&((m=0|n)<0?(v+=d*(l-1),l=y(-l/m)):l=y(l/m),d*=m),"number"===typeof i&&((m=0|i)<0?(v+=p*(c-1),c=y(-c/m)):c=y(c/m),p*=m),"number"===typeof a&&((m=0|a)<0?(v+=g*(u-1),u=y(-u/m)):u=y(u/m),g*=m),new r(this.data,o,s,l,c,u,f,h,d,p,g,v)},i.transpose=function(t,e,n,i,a){t=void 0===t?0:0|t,e=void 0===e?1:0|e,n=void 0===n?2:0|n,i=void 0===i?3:0|i,a=void 0===a?4:0|a;var o=this.shape,s=this.stride;return new r(this.data,o[t],o[e],o[n],o[i],o[a],s[t],s[e],s[n],s[i],s[a],this.offset)},i.pick=function(t,n,r,i,a){var o=[],s=[],l=this.offset;return"number"===typeof t&&t>=0?l=l+this.stride[0]*t|0:(o.push(this.shape[0]),s.push(this.stride[0])),"number"===typeof n&&n>=0?l=l+this.stride[1]*n|0:(o.push(this.shape[1]),s.push(this.stride[1])),"number"===typeof r&&r>=0?l=l+this.stride[2]*r|0:(o.push(this.shape[2]),s.push(this.stride[2])),"number"===typeof i&&i>=0?l=l+this.stride[3]*i|0:(o.push(this.shape[3]),s.push(this.stride[3])),"number"===typeof a&&a>=0?l=l+this.stride[4]*a|0:(o.push(this.shape[4]),s.push(this.stride[4])),(0,e[o.length+1])(this.data,o,s,l)},function(t,e,n,i){return new r(t,e[0],e[1],e[2],e[3],e[4],n[0],n[1],n[2],n[3],n[4],i)}}};function l(t,e){var n=-1===e?"T":String(e),r=s[n];return-1===e?r(t):0===e?r(t,c[t][0]):r(t,c[t],o)}var c={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};t.exports=function(t,e,n,a){if(void 0===t)return(0,c.array[0])([]);"number"===typeof t&&(t=[t]),void 0===e&&(e=[t.length]);var o=e.length;if(void 0===n){n=new Array(o);for(var s=o-1,u=1;s>=0;--s)n[s]=u,u*=e[s]}if(void 0===a)for(a=0,s=0;s>>0;t.exports=function(t,e){if(isNaN(t)||isNaN(e))return NaN;if(t===e)return t;if(0===t)return e<0?-i:i;var n=r.hi(t),o=r.lo(t);return e>t===t>0?o===a?(n+=1,o=0):o+=1:0===o?(o=a,n-=1):o-=1,r.pack(o,n)}},115:function(t,e){e.vertexNormals=function(t,e,n){for(var r=e.length,i=new Array(r),a=void 0===n?1e-6:n,o=0;oa){var x=i[c],w=1/Math.sqrt(v*y);for(b=0;b<3;++b){var _=(b+1)%3,k=(b+2)%3;x[b]+=w*(m[_]*g[k]-m[k]*g[_])}}}for(o=0;oa)for(w=1/Math.sqrt(T),b=0;b<3;++b)x[b]*=w;else for(b=0;b<3;++b)x[b]=0}return i},e.faceNormals=function(t,e,n){for(var r=t.length,i=new Array(r),a=void 0===n?1e-6:n,o=0;oa?1/Math.sqrt(d):0,c=0;c<3;++c)h[c]*=d;i[o]=h}return i}},567:function(t){"use strict";t.exports=function(t,e,n,r,i,a,o,s,l,c){var u=e+a+c;if(f>0){var f=Math.sqrt(u+1);t[0]=.5*(o-l)/f,t[1]=.5*(s-r)/f,t[2]=.5*(n-a)/f,t[3]=.5*f}else{var h=Math.max(e,a,c);f=Math.sqrt(2*h-u+1),e>=h?(t[0]=.5*f,t[1]=.5*(i+n)/f,t[2]=.5*(s+r)/f,t[3]=.5*(o-l)/f):a>=h?(t[0]=.5*(n+i)/f,t[1]=.5*f,t[2]=.5*(l+o)/f,t[3]=.5*(s-r)/f):(t[0]=.5*(r+s)/f,t[1]=.5*(o+l)/f,t[2]=.5*f,t[3]=.5*(n-i)/f)}return t}},7774:function(t,e,n){"use strict";t.exports=function(t){var e=(t=t||{}).center||[0,0,0],n=t.rotation||[0,0,0,1],r=t.radius||1;e=[].slice.call(e,0,3),u(n=[].slice.call(n,0,4),n);var i=new f(n,e,Math.log(r));return i.setDistanceLimits(t.zoomMin,t.zoomMax),("eye"in t||"up"in t)&&i.lookAt(0,t.eye,t.center,t.up),i};var r=n(8444),i=n(3012),a=n(5950),o=n(7437),s=n(567);function l(t,e,n){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(n,2))}function c(t,e,n,r){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(n,2)+Math.pow(r,2))}function u(t,e){var n=e[0],r=e[1],i=e[2],a=e[3],o=c(n,r,i,a);o>1e-6?(t[0]=n/o,t[1]=r/o,t[2]=i/o,t[3]=a/o):(t[0]=t[1]=t[2]=0,t[3]=1)}function f(t,e,n){this.radius=r([n]),this.center=r(e),this.rotation=r(t),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var h=f.prototype;h.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},h.recalcMatrix=function(t){this.radius.curve(t),this.center.curve(t),this.rotation.curve(t);var e=this.computedRotation;u(e,e);var n=this.computedMatrix;a(n,e);var r=this.computedCenter,i=this.computedEye,o=this.computedUp,s=Math.exp(this.computedRadius[0]);i[0]=r[0]+s*n[2],i[1]=r[1]+s*n[6],i[2]=r[2]+s*n[10],o[0]=n[1],o[1]=n[5],o[2]=n[9];for(var l=0;l<3;++l){for(var c=0,f=0;f<3;++f)c+=n[l+4*f]*i[f];n[12+l]=-c}},h.getMatrix=function(t,e){this.recalcMatrix(t);var n=this.computedMatrix;if(e){for(var r=0;r<16;++r)e[r]=n[r];return e}return n},h.idle=function(t){this.center.idle(t),this.radius.idle(t),this.rotation.idle(t)},h.flush=function(t){this.center.flush(t),this.radius.flush(t),this.rotation.flush(t)},h.pan=function(t,e,n,r){e=e||0,n=n||0,r=r||0,this.recalcMatrix(t);var i=this.computedMatrix,a=i[1],o=i[5],s=i[9],c=l(a,o,s);a/=c,o/=c,s/=c;var u=i[0],f=i[4],h=i[8],d=u*a+f*o+h*s,p=l(u-=a*d,f-=o*d,h-=s*d);u/=p,f/=p,h/=p;var g=i[2],v=i[6],m=i[10],y=g*a+v*o+m*s,b=g*u+v*f+m*h,x=l(g-=y*a+b*u,v-=y*o+b*f,m-=y*s+b*h);g/=x,v/=x,m/=x;var w=u*e+a*n,_=f*e+o*n,k=h*e+s*n;this.center.move(t,w,_,k);var T=Math.exp(this.computedRadius[0]);T=Math.max(1e-4,T+r),this.radius.set(t,Math.log(T))},h.rotate=function(t,e,n,r){this.recalcMatrix(t),e=e||0,n=n||0;var i=this.computedMatrix,a=i[0],o=i[4],s=i[8],u=i[1],f=i[5],h=i[9],d=i[2],p=i[6],g=i[10],v=e*a+n*u,m=e*o+n*f,y=e*s+n*h,b=-(p*y-g*m),x=-(g*v-d*y),w=-(d*m-p*v),_=Math.sqrt(Math.max(0,1-Math.pow(b,2)-Math.pow(x,2)-Math.pow(w,2))),k=c(b,x,w,_);k>1e-6?(b/=k,x/=k,w/=k,_/=k):(b=x=w=0,_=1);var T=this.computedRotation,M=T[0],A=T[1],S=T[2],E=T[3],C=M*_+E*b+A*w-S*x,P=A*_+E*x+S*b-M*w,L=S*_+E*w+M*x-A*b,O=E*_-M*b-A*x-S*w;if(r){b=d,x=p,w=g;var I=Math.sin(r)/l(b,x,w);b*=I,x*=I,w*=I,O=O*(_=Math.cos(e))-(C=C*_+O*b+P*w-L*x)*b-(P=P*_+O*x+L*b-C*w)*x-(L=L*_+O*w+C*x-P*b)*w}var D=c(C,P,L,O);D>1e-6?(C/=D,P/=D,L/=D,O/=D):(C=P=L=0,O=1),this.rotation.set(t,C,P,L,O)},h.lookAt=function(t,e,n,r){this.recalcMatrix(t),n=n||this.computedCenter,e=e||this.computedEye,r=r||this.computedUp;var a=this.computedMatrix;i(a,e,n,r);var o=this.computedRotation;s(o,a[0],a[1],a[2],a[4],a[5],a[6],a[8],a[9],a[10]),u(o,o),this.rotation.set(t,o[0],o[1],o[2],o[3]);for(var l=0,c=0;c<3;++c)l+=Math.pow(n[c]-e[c],2);this.radius.set(t,.5*Math.log(Math.max(l,1e-6))),this.center.set(t,n[0],n[1],n[2])},h.translate=function(t,e,n,r){this.center.move(t,e||0,n||0,r||0)},h.setMatrix=function(t,e){var n=this.computedRotation;s(n,e[0],e[1],e[2],e[4],e[5],e[6],e[8],e[9],e[10]),u(n,n),this.rotation.set(t,n[0],n[1],n[2],n[3]);var r=this.computedMatrix;o(r,e);var i=r[15];if(Math.abs(i)>1e-6){var a=r[12]/i,l=r[13]/i,c=r[14]/i;this.recalcMatrix(t);var f=Math.exp(this.computedRadius[0]);this.center.set(t,a-r[2]*f,l-r[6]*f,c-r[10]*f),this.radius.idle(t)}else this.center.idle(t),this.radius.idle(t)},h.setDistance=function(t,e){e>0&&this.radius.set(t,Math.log(e))},h.setDistanceLimits=function(t,e){t=t>0?Math.log(t):-1/0,e=e>0?Math.log(e):1/0,e=Math.max(e,t),this.radius.bounds[0][0]=t,this.radius.bounds[1][0]=e},h.getDistanceLimits=function(t){var e=this.radius.bounds;return t?(t[0]=Math.exp(e[0][0]),t[1]=Math.exp(e[1][0]),t):[Math.exp(e[0][0]),Math.exp(e[1][0])]},h.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},h.fromJSON=function(t){var e=this.lastT(),n=t.center;n&&this.center.set(e,n[0],n[1],n[2]);var r=t.rotation;r&&this.rotation.set(e,r[0],r[1],r[2],r[3]);var i=t.distance;i&&i>0&&this.radius.set(e,Math.log(i)),this.setDistanceLimits(t.zoomMin,t.zoomMax)}},4930:function(t,e,n){"use strict";var r=n(6184);t.exports=function(t,e,n){return r(n="undefined"!==typeof n?n+"":" ",e)+t}},4405:function(t){t.exports=function(t,e){e||(e=[0,""]),t=String(t);var n=parseFloat(t,10);return e[0]=n,e[1]=t.match(/[\d.\-\+]*\s*(.*)/)[1]||"",e}},4166:function(t,e,n){"use strict";t.exports=function(t,e){for(var n=0|e.length,i=t.length,a=[new Array(n),new Array(n)],o=0;o0){o=a[u][n][0],l=u;break}s=o[1^l];for(var f=0;f<2;++f)for(var h=a[f][n],d=0;d0&&(o=p,s=g,l=f)}return i||o&&c(o,l),s}function f(t,n){var i=a[n][t][0],o=[t];c(i,n);for(var s=i[1^n];;){for(;s!==t;)o.push(s),s=u(o[o.length-2],s,!1);if(a[0][t].length+a[1][t].length===0)break;var l=o[o.length-1],f=t,h=o[1],d=u(l,f,!0);if(r(e[l],e[f],e[h],e[d])<0)break;o.push(t),s=u(l,f)}return o}function h(t,e){return e[1]===e[e.length-1]}for(o=0;o0;){a[0][o].length;var g=f(o,d);h(0,g)?p.push.apply(p,g):(p.length>0&&l.push(p),p=g)}p.length>0&&l.push(p)}return l};var r=n(9398)},3959:function(t,e,n){"use strict";t.exports=function(t,e){for(var n=r(t,e.length),i=new Array(e.length),a=new Array(e.length),o=[],s=0;s0;){i[d=o.pop()]=!1;var c=n[d];for(s=0;s0}))).length,v=new Array(g),m=new Array(g);for(d=0;d0;){var j=z.pop(),F=E[j];l(F,(function(t,e){return t-e}));var B,U=F.length,H=N[j];for(0===H&&(B=[V=p[j]]),d=0;d=0||(N[q]=1^H,z.push(q),0===H&&(R(V=p[q])||(V.reverse(),B.push(V))))}0===H&&n.push(B)}return n};var r=n(8348),i=n(4166),a=n(211),o=n(9660),s=n(9662),l=n(1215),c=n(3959);function u(t,e){for(var n=new Array(t),r=0;r0&&e[i]===n[0]))return 1;a=t[i-1]}for(var s=1;a;){var l=a.key,c=r(n,l[0],l[1]);if(l[0][0]0))return 0;s=-1,a=a.right}else if(c>0)a=a.left;else{if(!(c<0))return 0;s=1,a=a.right}}return s}}(m.slabs,m.coordinates);return 0===a.length?y:function(t,e){return function(n){return t(n[0],n[1])?0:e(n)}}(l(a),y)};var r=n(417)[3],i=n(4385),a=n(9014),o=n(5070);function s(){return!0}function l(t){for(var e={},n=0;n=c?(T=1,y=c+2*h+p):y=h*(T=-h/c)+p):(T=0,d>=0?(M=0,y=p):-d>=f?(M=1,y=f+2*d+p):y=d*(M=-d/f)+p);else if(M<0)M=0,h>=0?(T=0,y=p):-h>=c?(T=1,y=c+2*h+p):y=h*(T=-h/c)+p;else{var A=1/k;y=(T*=A)*(c*T+u*(M*=A)+2*h)+M*(u*T+f*M+2*d)+p}else T<0?(x=f+d)>(b=u+h)?(w=x-b)>=(_=c-2*u+f)?(T=1,M=0,y=c+2*h+p):y=(T=w/_)*(c*T+u*(M=1-T)+2*h)+M*(u*T+f*M+2*d)+p:(T=0,x<=0?(M=1,y=f+2*d+p):d>=0?(M=0,y=p):y=d*(M=-d/f)+p):M<0?(x=c+h)>(b=u+d)?(w=x-b)>=(_=c-2*u+f)?(M=1,T=0,y=f+2*d+p):y=(T=1-(M=w/_))*(c*T+u*M+2*h)+M*(u*T+f*M+2*d)+p:(M=0,x<=0?(T=1,y=c+2*h+p):h>=0?(T=0,y=p):y=h*(T=-h/c)+p):(w=f+d-u-h)<=0?(T=0,M=1,y=f+2*d+p):w>=(_=c-2*u+f)?(T=1,M=0,y=c+2*h+p):y=(T=w/_)*(c*T+u*(M=1-T)+2*h)+M*(u*T+f*M+2*d)+p;var S=1-T-M;for(l=0;l0){var c=t[n-1];if(0===r(s,c)&&a(c)!==l){n-=1;continue}}t[n++]=s}}return t.length=n,t}},6184:function(t){"use strict";var e,n="";t.exports=function(t,r){if("string"!==typeof t)throw new TypeError("expected a string");if(1===r)return t;if(2===r)return t+t;var i=t.length*r;if(e!==t||"undefined"===typeof e)e=t,n="";else if(n.length>=i)return n.substr(0,i);for(;i>n.length&&r>1;)1&r&&(n+=t),r>>=1,t+=t;return n=(n+=t).substr(0,i)}},8161:function(t,e,n){t.exports=n.g.performance&&n.g.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}},402:function(t){"use strict";t.exports=function(t){for(var e=t.length,n=t[t.length-1],r=e,i=e-2;i>=0;--i){var a=n;(l=(s=t[i])-((n=a+s)-a))&&(t[--r]=n,n=l)}var o=0;for(i=r;i0){if(a<=0)return o;r=i+a}else{if(!(i<0))return o;if(a>=0)return o;r=-(i+a)}var s=33306690738754716e-32*r;return o>=s||o<=-s?o:h(t,e,n)},function(t,e,n,r){var i=t[0]-r[0],a=e[0]-r[0],o=n[0]-r[0],s=t[1]-r[1],l=e[1]-r[1],c=n[1]-r[1],u=t[2]-r[2],f=e[2]-r[2],h=n[2]-r[2],p=a*c,g=o*l,v=o*s,m=i*c,y=i*l,b=a*s,x=u*(p-g)+f*(v-m)+h*(y-b),w=7771561172376103e-31*((Math.abs(p)+Math.abs(g))*Math.abs(u)+(Math.abs(v)+Math.abs(m))*Math.abs(f)+(Math.abs(y)+Math.abs(b))*Math.abs(h));return x>w||-x>w?x:d(t,e,n,r)}];function g(t){var e=p[t.length];return e||(e=p[t.length]=f(t.length)),e.apply(void 0,t)}function v(t,e,n,r,i,a,o){return function(e,n,s,l,c){switch(arguments.length){case 0:case 1:return 0;case 2:return r(e,n);case 3:return i(e,n,s);case 4:return a(e,n,s,l);case 5:return o(e,n,s,l,c)}for(var u=new Array(arguments.length),f=0;f0&&o>0||a<0&&o<0)return!1;var s=r(n,t,e),l=r(i,t,e);return!(s>0&&l>0||s<0&&l<0)&&(0!==a||0!==o||0!==s||0!==l||function(t,e,n,r){for(var i=0;i<2;++i){var a=t[i],o=e[i],s=Math.min(a,o),l=Math.max(a,o),c=n[i],u=r[i],f=Math.min(c,u);if(Math.max(c,u)=r?(i=f,(l+=1)=r?(i=f,(l+=1)>1,c=e[2*l+1];if(c===a)return l;a>1,c=e[2*l+1];if(c===a)return l;a>1,c=e[2*l+1];if(c===a)return l;a0)-(t<0)},e.abs=function(t){var e=t>>31;return(t^e)-e},e.min=function(t,e){return e^(t^e)&-(t65535)<<4,e|=n=((t>>>=e)>255)<<3,e|=n=((t>>>=n)>15)<<2,(e|=n=((t>>>=n)>3)<<1)|(t>>>=n)>>1},e.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},e.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},e.countTrailingZeros=n,e.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,1+(t|=t>>>16)},e.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},e.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var r=new Array(256);!function(t){for(var e=0;e<256;++e){var n=e,r=e,i=7;for(n>>>=1;n;n>>>=1)r<<=1,r|=1&n,--i;t[e]=r<>>8&255]<<16|r[t>>>16&255]<<8|r[t>>>24&255]},e.interleave2=function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},e.deinterleave2=function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},e.interleave3=function(t,e,n){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(n=1227133513&((n=3272356035&((n=251719695&((n=4278190335&((n&=1023)|n<<16))|n<<8))|n<<4))|n<<2))<<2},e.deinterleave3=function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},e.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>n(t)+1}},6656:function(t,e,n){"use strict";var r=n(9392),i=n(9521);function a(t,e){var n=t.length,r=t.length-e.length,i=Math.min;if(r)return r;switch(n){case 0:return 0;case 1:return t[0]-e[0];case 2:return(s=t[0]+t[1]-e[0]-e[1])||i(t[0],t[1])-i(e[0],e[1]);case 3:var a=t[0]+t[1],o=e[0]+e[1];if(s=a+t[2]-(o+e[2]))return s;var s,l=i(t[0],t[1]),c=i(e[0],e[1]);return(s=i(l,t[2])-i(c,e[2]))||i(l+t[2],a)-i(c+e[2],o);default:var u=t.slice(0);u.sort();var f=e.slice(0);f.sort();for(var h=0;h>1,s=a(t[o],e);s<=0?(0===s&&(i=o),n=o+1):s>0&&(r=o-1)}return i}function u(t,e){for(var n=new Array(t.length),i=0,o=n.length;i=t.length||0!==a(t[v],s)););}return n}function f(t,e){if(e<0)return[];for(var n=[],i=(1<>>u&1&&c.push(i[u]);e.push(c)}return s(e)},e.skeleton=f,e.boundary=function(t){for(var e=[],n=0,r=t.length;n>1:(t>>1)-1}function b(t){for(var e=m(t);;){var n=e,r=2*t+1,i=2*(t+1),a=t;if(r0;){var n=y(t);if(!(n>=0&&e0){var t=T[0];return v(0,A-1),A-=1,b(0),t}return-1}function _(t,e){var n=T[t];return c[n]===e?t:(c[n]=-1/0,x(t),w(),c[n]=e,x((A+=1)-1))}function k(t){if(!u[t]){u[t]=!0;var e=s[t],n=l[t];s[n]>=0&&(s[n]=e),l[e]>=0&&(l[e]=n),M[e]>=0&&_(M[e],g(e)),M[n]>=0&&_(M[n],g(n))}}var T=[],M=new Array(a);for(f=0;f>1;f>=0;--f)b(f);for(;;){var S=w();if(S<0||c[S]>n)break;k(S)}var E=[];for(f=0;f=0&&n>=0&&e!==n){var r=M[e],i=M[n];r!==i&&P.push([r,i])}})),i.unique(i.normalize(P)),{positions:E,edges:P}};var r=n(417),i=n(6656)},6638:function(t,e,n){"use strict";t.exports=function(t,e){var n,a,o,s;if(e[0][0]e[1][0]))return i(e,t);n=e[1],a=e[0]}if(t[0][0]t[1][0]))return-i(t,e);o=t[1],s=t[0]}var l=r(n,a,s),c=r(n,a,o);if(l<0){if(c<=0)return l}else if(l>0){if(c>=0)return l}else if(c)return c;if(l=r(s,o,a),c=r(s,o,n),l<0){if(c<=0)return l}else if(l>0){if(c>=0)return l}else if(c)return c;return a[0]-s[0]};var r=n(417);function i(t,e){var n,i,a,o;if(e[0][0]e[1][0])){var s=Math.min(t[0][1],t[1][1]),l=Math.max(t[0][1],t[1][1]),c=Math.min(e[0][1],e[1][1]),u=Math.max(e[0][1],e[1][1]);return lu?s-u:l-u}n=e[1],i=e[0]}t[0][1]0)if(e[0]!==o[1][0])n=t,t=t.right;else{if(l=c(t.right,e))return l;t=t.left}else{if(e[0]!==o[1][0])return t;var l;if(l=c(t.right,e))return l;t=t.left}}return n}function u(t,e,n,r){this.y=t,this.index=e,this.start=n,this.closed=r}function f(t,e,n,r){this.x=t,this.segment=e,this.create=n,this.index=r}s.prototype.castUp=function(t){var e=r.le(this.coordinates,t[0]);if(e<0)return-1;this.slabs[e];var n=c(this.slabs[e],t),i=-1;if(n&&(i=n.value),this.coordinates[e]===t[0]){var s=null;if(n&&(s=n.key),e>0){var u=c(this.slabs[e-1],t);u&&(s?o(u.key,s)>0&&(s=u.key,i=u.value):(i=u.value,s=u.key))}var f=this.horizontal[e];if(f.length>0){var h=r.ge(f,t[1],l);if(h=f.length)return i;d=f[h]}}if(d.start)if(s){var p=a(s[0],s[1],[t[0],d.y]);s[0][0]>s[1][0]&&(p=-p),p>0&&(i=d.index)}else i=d.index;else d.y!==t[1]&&(i=d.index)}}}return i}},4670:function(t,e,n){"use strict";var r=n(9130),i=n(9662);function a(t,e){var n=i(r(t,e),[e[e.length-1]]);return n[n.length-1]}function o(t,e,n,r){var i=-e/(r-e);i<0?i=0:i>1&&(i=1);for(var a=1-i,o=t.length,s=new Array(o),l=0;l0||i>0&&u<0){var f=o(s,u,l,i);n.push(f),r.push(f.slice())}u<0?r.push(l.slice()):u>0?n.push(l.slice()):(n.push(l.slice()),r.push(l.slice())),i=u}return{positive:n,negative:r}},t.exports.positive=function(t,e){for(var n=[],r=a(t[t.length-1],e),i=t[t.length-1],s=t[0],l=0;l0||r>0&&c<0)&&n.push(o(i,c,s,r)),c>=0&&n.push(s.slice()),r=c}return n},t.exports.negative=function(t,e){for(var n=[],r=a(t[t.length-1],e),i=t[t.length-1],s=t[0],l=0;l0||r>0&&c<0)&&n.push(o(i,c,s,r)),c<=0&&n.push(s.slice()),r=c}return n}},8974:function(t,e,n){var r;!function(){"use strict";var i={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 a(t){return function(t,e){var n,r,o,s,l,c,u,f,h,d=1,p=t.length,g="";for(r=0;r=0),s.type){case"b":n=parseInt(n,10).toString(2);break;case"c":n=String.fromCharCode(parseInt(n,10));break;case"d":case"i":n=parseInt(n,10);break;case"j":n=JSON.stringify(n,null,s.width?parseInt(s.width):0);break;case"e":n=s.precision?parseFloat(n).toExponential(s.precision):parseFloat(n).toExponential();break;case"f":n=s.precision?parseFloat(n).toFixed(s.precision):parseFloat(n);break;case"g":n=s.precision?String(Number(n.toPrecision(s.precision))):parseFloat(n);break;case"o":n=(parseInt(n,10)>>>0).toString(8);break;case"s":n=String(n),n=s.precision?n.substring(0,s.precision):n;break;case"t":n=String(!!n),n=s.precision?n.substring(0,s.precision):n;break;case"T":n=Object.prototype.toString.call(n).slice(8,-1).toLowerCase(),n=s.precision?n.substring(0,s.precision):n;break;case"u":n=parseInt(n,10)>>>0;break;case"v":n=n.valueOf(),n=s.precision?n.substring(0,s.precision):n;break;case"x":n=(parseInt(n,10)>>>0).toString(16);break;case"X":n=(parseInt(n,10)>>>0).toString(16).toUpperCase()}i.json.test(s.type)?g+=n:(!i.number.test(s.type)||f&&!s.sign?h="":(h=f?"+":"-",n=n.toString().replace(i.sign,"")),c=s.pad_char?"0"===s.pad_char?"0":s.pad_char.charAt(1):" ",u=s.width-(h+n).length,l=s.width&&u>0?c.repeat(u):"",g+=s.align?h+n+l:"0"===c?h+l+n:l+h+n)}return g}(function(t){if(s[t])return s[t];for(var e,n=t,r=[],a=0;n;){if(null!==(e=i.text.exec(n)))r.push(e[0]);else if(null!==(e=i.modulo.exec(n)))r.push("%");else{if(null===(e=i.placeholder.exec(n)))throw new SyntaxError("[sprintf] unexpected placeholder");if(e[2]){a|=1;var o=[],l=e[2],c=[];if(null===(c=i.key.exec(l)))throw new SyntaxError("[sprintf] failed to parse named argument key");for(o.push(c[1]);""!==(l=l.substring(c[0].length));)if(null!==(c=i.key_access.exec(l)))o.push(c[1]);else{if(null===(c=i.index_access.exec(l)))throw new SyntaxError("[sprintf] failed to parse named argument key");o.push(c[1])}e[2]=o}else a|=2;if(3===a)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");r.push({placeholder:e[0],param_no:e[1],keys:e[2],sign:e[3],pad_char:e[4],align:e[5],width:e[6],precision:e[7],type:e[8]})}n=n.substring(e[0].length)}return s[t]=r}(t),arguments)}function o(t,e){return a.apply(null,[t].concat(e||[]))}var s=Object.create(null);e.sprintf=a,e.vsprintf=o,"undefined"!==typeof window&&(window.sprintf=a,window.vsprintf=o,void 0===(r=function(){return{sprintf:a,vsprintf:o}}.call(e,n,e,t))||(t.exports=r))}()},4162:function(t,e,n){"use strict";t.exports=function(t,e){if(t.dimension<=0)return{positions:[],cells:[]};if(1===t.dimension)return function(t,e){for(var n=i(t,e),r=n.length,a=new Array(r),o=new Array(r),s=0;sr|0},vertex:function(t,e,n,r,i,a,o,s,l,c,u,f,h){var d=(o<<0)+(s<<1)+(l<<2)+(c<<3)|0;if(0!==d&&15!==d)switch(d){case 0:case 15:u.push([t-.5,e-.5]);break;case 1:u.push([t-.25-.25*(r+n-2*h)/(n-r),e-.25-.25*(i+n-2*h)/(n-i)]);break;case 2:u.push([t-.75-.25*(-r-n+2*h)/(r-n),e-.25-.25*(a+r-2*h)/(r-a)]);break;case 3:u.push([t-.5,e-.5-.5*(i+n+a+r-4*h)/(n-i+r-a)]);break;case 4:u.push([t-.25-.25*(a+i-2*h)/(i-a),e-.75-.25*(-i-n+2*h)/(i-n)]);break;case 5:u.push([t-.5-.5*(r+n+a+i-4*h)/(n-r+i-a),e-.5]);break;case 6:u.push([t-.5-.25*(-r-n+a+i)/(r-n+i-a),e-.5-.25*(-i-n+a+r)/(i-n+r-a)]);break;case 7:u.push([t-.75-.25*(a+i-2*h)/(i-a),e-.75-.25*(a+r-2*h)/(r-a)]);break;case 8:u.push([t-.75-.25*(-a-i+2*h)/(a-i),e-.75-.25*(-a-r+2*h)/(a-r)]);break;case 9:u.push([t-.5-.25*(r+n+-a-i)/(n-r+a-i),e-.5-.25*(i+n+-a-r)/(n-i+a-r)]);break;case 10:u.push([t-.5-.5*(-r-n-a-i+4*h)/(r-n+a-i),e-.5]);break;case 11:u.push([t-.25-.25*(-a-i+2*h)/(a-i),e-.75-.25*(i+n-2*h)/(n-i)]);break;case 12:u.push([t-.5,e-.5-.5*(-i-n-a-r+4*h)/(i-n+a-r)]);break;case 13:u.push([t-.75-.25*(r+n-2*h)/(n-r),e-.25-.25*(-a-r+2*h)/(a-r)]);break;case 14:u.push([t-.25-.25*(-r-n+2*h)/(r-n),e-.25-.25*(-i-n+2*h)/(i-n)])}},cell:function(t,e,n,r,i,a,o,s,l){i?s.push([t,e]):s.push([e,t])}});return function(t,e){var n=[],i=[];return r(t,n,i,e),{positions:n,cells:i}}}},o={}},6946:function(t,e,n){"use strict";t.exports=function t(e,n,i){i=i||{};var a=o[e];a||(a=o[e]={" ":{data:new Float32Array(0),shape:.2}});var s=a[n];if(!s)if(n.length<=1||!/\d/.test(n))s=a[n]=function(t){for(var e=t.cells,n=t.positions,r=new Float32Array(6*e.length),i=0,a=0,o=0;o0&&(f+=.02);var d=new Float32Array(u),p=0,g=-.5*f;for(h=0;hMath.max(n,r)?i[2]=1:n>Math.max(e,r)?i[0]=1:i[1]=1;for(var a=0,o=0,l=0;l<3;++l)a+=t[l]*t[l],o+=i[l]*t[l];for(l=0;l<3;++l)i[l]-=o/a*t[l];return s(i,i),i}function h(t,e,n,i,a,o,s,l){this.center=r(n),this.up=r(i),this.right=r(a),this.radius=r([o]),this.angle=r([s,l]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(t,e),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var c=0;c<16;++c)this.computedMatrix[c]=.5;this.recalcMatrix(0)}var d=h.prototype;d.setDistanceLimits=function(t,e){t=t>0?Math.log(t):-1/0,e=e>0?Math.log(e):1/0,e=Math.max(e,t),this.radius.bounds[0][0]=t,this.radius.bounds[1][0]=e},d.getDistanceLimits=function(t){var e=this.radius.bounds[0];return t?(t[0]=Math.exp(e[0][0]),t[1]=Math.exp(e[1][0]),t):[Math.exp(e[0][0]),Math.exp(e[1][0])]},d.recalcMatrix=function(t){this.center.curve(t),this.up.curve(t),this.right.curve(t),this.radius.curve(t),this.angle.curve(t);for(var e=this.computedUp,n=this.computedRight,r=0,i=0,a=0;a<3;++a)i+=e[a]*n[a],r+=e[a]*e[a];var l=Math.sqrt(r),u=0;for(a=0;a<3;++a)n[a]-=e[a]*i/r,u+=n[a]*n[a],e[a]/=l;var f=Math.sqrt(u);for(a=0;a<3;++a)n[a]/=f;var h=this.computedToward;o(h,e,n),s(h,h);var d=Math.exp(this.computedRadius[0]),p=this.computedAngle[0],g=this.computedAngle[1],v=Math.cos(p),m=Math.sin(p),y=Math.cos(g),b=Math.sin(g),x=this.computedCenter,w=v*y,_=m*y,k=b,T=-v*b,M=-m*b,A=y,S=this.computedEye,E=this.computedMatrix;for(a=0;a<3;++a){var C=w*n[a]+_*h[a]+k*e[a];E[4*a+1]=T*n[a]+M*h[a]+A*e[a],E[4*a+2]=C,E[4*a+3]=0}var P=E[1],L=E[5],O=E[9],I=E[2],D=E[6],R=E[10],z=L*R-O*D,N=O*I-P*R,j=P*D-L*I,F=c(z,N,j);for(z/=F,N/=F,j/=F,E[0]=z,E[4]=N,E[8]=j,a=0;a<3;++a)S[a]=x[a]+E[2+4*a]*d;for(a=0;a<3;++a){u=0;for(var B=0;B<3;++B)u+=E[a+4*B]*S[B];E[12+a]=-u}E[15]=1},d.getMatrix=function(t,e){this.recalcMatrix(t);var n=this.computedMatrix;if(e){for(var r=0;r<16;++r)e[r]=n[r];return e}return n};var p=[0,0,0];d.rotate=function(t,e,n,r){if(this.angle.move(t,e,n),r){this.recalcMatrix(t);var i=this.computedMatrix;p[0]=i[2],p[1]=i[6],p[2]=i[10];for(var o=this.computedUp,s=this.computedRight,l=this.computedToward,c=0;c<3;++c)i[4*c]=o[c],i[4*c+1]=s[c],i[4*c+2]=l[c];for(a(i,i,r,p),c=0;c<3;++c)o[c]=i[4*c],s[c]=i[4*c+1];this.up.set(t,o[0],o[1],o[2]),this.right.set(t,s[0],s[1],s[2])}},d.pan=function(t,e,n,r){e=e||0,n=n||0,r=r||0,this.recalcMatrix(t);var i=this.computedMatrix,a=(Math.exp(this.computedRadius[0]),i[1]),o=i[5],s=i[9],l=c(a,o,s);a/=l,o/=l,s/=l;var u=i[0],f=i[4],h=i[8],d=u*a+f*o+h*s,p=c(u-=a*d,f-=o*d,h-=s*d),g=(u/=p)*e+a*n,v=(f/=p)*e+o*n,m=(h/=p)*e+s*n;this.center.move(t,g,v,m);var y=Math.exp(this.computedRadius[0]);y=Math.max(1e-4,y+r),this.radius.set(t,Math.log(y))},d.translate=function(t,e,n,r){this.center.move(t,e||0,n||0,r||0)},d.setMatrix=function(t,e,n,r){var a=1;"number"===typeof n&&(a=0|n),(a<0||a>3)&&(a=1);var o=(a+2)%3;e||(this.recalcMatrix(t),e=this.computedMatrix);var s=e[a],l=e[a+4],f=e[a+8];if(r){var h=Math.abs(s),d=Math.abs(l),p=Math.abs(f),g=Math.max(h,d,p);h===g?(s=s<0?-1:1,l=f=0):p===g?(f=f<0?-1:1,s=l=0):(l=l<0?-1:1,s=f=0)}else{var v=c(s,l,f);s/=v,l/=v,f/=v}var m,y,b=e[o],x=e[o+4],w=e[o+8],_=b*s+x*l+w*f,k=c(b-=s*_,x-=l*_,w-=f*_),T=l*(w/=k)-f*(x/=k),M=f*(b/=k)-s*w,A=s*x-l*b,S=c(T,M,A);if(T/=S,M/=S,A/=S,this.center.jump(t,q,G,W),this.radius.idle(t),this.up.jump(t,s,l,f),this.right.jump(t,b,x,w),2===a){var E=e[1],C=e[5],P=e[9],L=E*b+C*x+P*w,O=E*T+C*M+P*A;m=z<0?-Math.PI/2:Math.PI/2,y=Math.atan2(O,L)}else{var I=e[2],D=e[6],R=e[10],z=I*s+D*l+R*f,N=I*b+D*x+R*w,j=I*T+D*M+R*A;m=Math.asin(u(z)),y=Math.atan2(j,N)}this.angle.jump(t,y,m),this.recalcMatrix(t);var F=e[2],B=e[6],U=e[10],H=this.computedMatrix;i(H,e);var V=H[15],q=H[12]/V,G=H[13]/V,W=H[14]/V,Y=Math.exp(this.computedRadius[0]);this.center.jump(t,q-F*Y,G-B*Y,W-U*Y)},d.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},d.idle=function(t){this.center.idle(t),this.up.idle(t),this.right.idle(t),this.radius.idle(t),this.angle.idle(t)},d.flush=function(t){this.center.flush(t),this.up.flush(t),this.right.flush(t),this.radius.flush(t),this.angle.flush(t)},d.setDistance=function(t,e){e>0&&this.radius.set(t,Math.log(e))},d.lookAt=function(t,e,n,r){this.recalcMatrix(t),e=e||this.computedEye,n=n||this.computedCenter;var i=(r=r||this.computedUp)[0],a=r[1],o=r[2],s=c(i,a,o);if(!(s<1e-6)){i/=s,a/=s,o/=s;var l=e[0]-n[0],f=e[1]-n[1],h=e[2]-n[2],d=c(l,f,h);if(!(d<1e-6)){l/=d,f/=d,h/=d;var p=this.computedRight,g=p[0],v=p[1],m=p[2],y=i*g+a*v+o*m,b=c(g-=y*i,v-=y*a,m-=y*o);if(!(b<.01&&(b=c(g=a*h-o*f,v=o*l-i*h,m=i*f-a*l))<1e-6)){g/=b,v/=b,m/=b,this.up.set(t,i,a,o),this.right.set(t,g,v,m),this.center.set(t,n[0],n[1],n[2]),this.radius.set(t,Math.log(d));var x=a*m-o*v,w=o*g-i*m,_=i*v-a*g,k=c(x,w,_),T=i*l+a*f+o*h,M=g*l+v*f+m*h,A=(x/=k)*l+(w/=k)*f+(_/=k)*h,S=Math.asin(u(T)),E=Math.atan2(A,M),C=this.angle._state,P=C[C.length-1],L=C[C.length-2];P%=2*Math.PI;var O=Math.abs(P+2*Math.PI-E),I=Math.abs(P-E),D=Math.abs(P-2*Math.PI-E);O0?n.pop():new ArrayBuffer(t)}function p(t){return new Uint8Array(d(t),0,t)}function g(t){return new Uint16Array(d(2*t),0,t)}function v(t){return new Uint32Array(d(4*t),0,t)}function m(t){return new Int8Array(d(t),0,t)}function y(t){return new Int16Array(d(2*t),0,t)}function b(t){return new Int32Array(d(4*t),0,t)}function x(t){return new Float32Array(d(4*t),0,t)}function w(t){return new Float64Array(d(8*t),0,t)}function _(t){return o?new Uint8ClampedArray(d(t),0,t):p(t)}function k(t){return s?new BigUint64Array(d(8*t),0,t):null}function T(t){return l?new BigInt64Array(d(8*t),0,t):null}function M(t){return new DataView(d(t),0,t)}function A(t){t=r.nextPow2(t);var e=r.log2(t),n=f[e];return n.length>0?n.pop():new a(t)}e.free=function(t){if(a.isBuffer(t))f[r.log2(t.length)].push(t);else{if("[object ArrayBuffer]"!==Object.prototype.toString.call(t)&&(t=t.buffer),!t)return;var e=t.length||t.byteLength,n=0|r.log2(e);u[n].push(t)}},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(t){h(t.buffer)},e.freeArrayBuffer=h,e.freeBuffer=function(t){f[r.log2(t.length)].push(t)},e.malloc=function(t,e){if(void 0===e||"arraybuffer"===e)return d(t);switch(e){case"uint8":return p(t);case"uint16":return g(t);case"uint32":return v(t);case"int8":return m(t);case"int16":return y(t);case"int32":return b(t);case"float":case"float32":return x(t);case"double":case"float64":return w(t);case"uint8_clamped":return _(t);case"bigint64":return T(t);case"biguint64":return k(t);case"buffer":return A(t);case"data":case"dataview":return M(t);default:return null}return null},e.mallocArrayBuffer=d,e.mallocUint8=p,e.mallocUint16=g,e.mallocUint32=v,e.mallocInt8=m,e.mallocInt16=y,e.mallocInt32=b,e.mallocFloat32=e.mallocFloat=x,e.mallocFloat64=e.mallocDouble=w,e.mallocUint8Clamped=_,e.mallocBigUint64=k,e.mallocBigInt64=T,e.mallocDataView=M,e.mallocBuffer=A,e.clearCache=function(){for(var t=0;t<32;++t)c.UINT8[t].length=0,c.UINT16[t].length=0,c.UINT32[t].length=0,c.INT8[t].length=0,c.INT16[t].length=0,c.INT32[t].length=0,c.FLOAT[t].length=0,c.DOUBLE[t].length=0,c.BIGUINT64[t].length=0,c.BIGINT64[t].length=0,c.UINT8C[t].length=0,u[t].length=0,f[t].length=0}},1731:function(t){"use strict";function e(t){this.roots=new Array(t),this.ranks=new Array(t);for(var e=0;e0&&(a=r.size),r.lineSpacing&&r.lineSpacing>0&&(o=r.lineSpacing),r.styletags&&r.styletags.breaklines&&(s.breaklines=!!r.styletags.breaklines),r.styletags&&r.styletags.bolds&&(s.bolds=!!r.styletags.bolds),r.styletags&&r.styletags.italics&&(s.italics=!!r.styletags.italics),r.styletags&&r.styletags.subscripts&&(s.subscripts=!!r.styletags.subscripts),r.styletags&&r.styletags.superscripts&&(s.superscripts=!!r.styletags.superscripts)),n.font=[r.fontStyle,r.fontVariant,r.fontWeight,a+"px",r.font].filter((function(t){return t})).join(" "),n.textAlign="start",n.textBaseline="alphabetic",n.direction="ltr",_(function(t,e,n,r,a,o){n=n.replace(/\n/g,""),n=!0===o.breaklines?n.replace(/\/g,"\n"):n.replace(/\/g," ");var s="",l=[];for(k=0;k-1?parseInt(t[1+i]):0,l=a>-1?parseInt(n[1+a]):0;s!==l&&(r=r.replace(N(),"?px "),A*=Math.pow(.75,l-s),r=r.replace("?px ",N())),M+=.25*C*(l-s)}if(!0===o.superscripts){var c=t.indexOf(p),f=n.indexOf(p),d=c>-1?parseInt(t[1+c]):0,g=f>-1?parseInt(n[1+f]):0;d!==g&&(r=r.replace(N(),"?px "),A*=Math.pow(.75,g-d),r=r.replace("?px ",N())),M-=.25*C*(g-d)}if(!0===o.bolds){var v=t.indexOf(u)>-1,y=n.indexOf(u)>-1;!v&&y&&(r=b?r.replace("italic ","italic bold "):"bold "+r),v&&!y&&(r=r.replace("bold ",""))}if(!0===o.italics){var b=t.indexOf(h)>-1,x=n.indexOf(h)>-1;!b&&x&&(r="italic "+r),b&&!x&&(r=r.replace("italic ",""))}e.font=r}for(_=0;_",a="",o=i.length,s=a.length,l=e[0]===p||e[0]===m,c=0,u=-s;c>-1&&-1!==(c=n.indexOf(i,c))&&-1!==(u=n.indexOf(a,c+o))&&!(u<=c);){for(var f=c;f=u)r[f]=null,n=n.substr(0,f)+" "+n.substr(f+1);else if(null!==r[f]){var h=r[f].indexOf(e[0]);-1===h?r[f]+=e:l&&(r[f]=r[f].substr(0,h+1)+(1+parseInt(r[f][h+1]))+r[f].substr(h+2))}var d=c+o,g=n.substr(d,u-d).indexOf(i);c=-1!==g?g:u+s}return r}function x(t,e){var n=r(t,128);return e?a(n.cells,n.positions,.25):{edges:n.cells,positions:n.positions}}function w(t,e,n,r){var i=x(t,r),a=function(t,e,n){for(var r=e.textAlign||"start",i=e.textBaseline||"alphabetic",a=[1<<30,1<<30],o=[0,0],s=t.length,l=0;l=0?n[a]:i}))},has___:{value:b((function(t){var n=y(t);return n?r in n:e.indexOf(t)>=0}))},set___:{value:b((function(t,i){var a,o=y(t);return o?o[r]=i:(a=e.indexOf(t))>=0?n[a]=i:(a=e.length,n[a]=i,e[a]=t),this}))},delete___:{value:b((function(t){var i,a,o=y(t);return o?r in o&&delete o[r]:!((i=e.indexOf(t))<0)&&(a=e.length-1,e[i]=void 0,n[i]=n[a],e[i]=e[a],e.length=a,n.length=a,!0)}))}})};g.prototype=Object.create(Object.prototype,{get:{value:function(t,e){return this.get___(t,e)},writable:!0,configurable:!0},has:{value:function(t){return this.has___(t)},writable:!0,configurable:!0},set:{value:function(t,e){return this.set___(t,e)},writable:!0,configurable:!0},delete:{value:function(t){return this.delete___(t)},writable:!0,configurable:!0}}),"function"===typeof n?function(){function r(){this instanceof g||x();var t,r=new n,i=void 0,a=!1;return t=e?function(t,e){return r.set(t,e),r.has(t)||(i||(i=new g),i.set(t,e)),this}:function(t,e){if(a)try{r.set(t,e)}catch(n){i||(i=new g),i.set___(t,e)}else r.set(t,e);return this},Object.create(g.prototype,{get___:{value:b((function(t,e){return i?r.has(t)?r.get(t):i.get___(t,e):r.get(t,e)}))},has___:{value:b((function(t){return r.has(t)||!!i&&i.has___(t)}))},set___:{value:b(t)},delete___:{value:b((function(t){var e=!!r.delete(t);return i&&i.delete___(t)||e}))},permitHostObjects___:{value:b((function(t){if(t!==v)throw new Error("bogus call to permitHostObjects___");a=!0}))}})}e&&"undefined"!==typeof Proxy&&(Proxy=void 0),r.prototype=g.prototype,t.exports=r,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():("undefined"!==typeof Proxy&&(Proxy=void 0),t.exports=g)}function v(t){t.permitHostObjects___&&t.permitHostObjects___(v)}function m(t){return!(t.substr(0,l.length)==l&&"___"===t.substr(t.length-3))}function y(t){if(t!==Object(t))throw new TypeError("Not an object: "+t);var e=t[c];if(e&&e.key===t)return e;if(s(t)){e={key:t};try{return o(t,c,{value:e,writable:!1,enumerable:!1,configurable:!1}),e}catch(n){return}}}function b(t){return t.prototype=null,Object.freeze(t)}function x(){d||"undefined"===typeof console||(d=!0,console.warn("WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future."))}}()},9222:function(t,e,n){var r=n(7178);t.exports=function(){var t={};return function(e){if(("object"!==typeof e||null===e)&&"function"!==typeof e)throw new Error("Weakmap-shim: Key must be object");var n=e.valueOf(t);return n&&n.identity===t?n:r(e,t)}}},7178:function(t){t.exports=function(t,e){var n={identity:e},r=t.valueOf;return Object.defineProperty(t,"valueOf",{value:function(t){return t!==e?r.apply(this,arguments):n},writable:!0}),n}},4037:function(t,e,n){var r=n(9222);t.exports=function(){var t=r();return{get:function(e,n){var r=t(e);return r.hasOwnProperty("value")?r.value:n},set:function(e,n){return t(e).value=n,this},has:function(e){return"value"in t(e)},delete:function(e){return delete t(e).value}}}},6183:function(t){"use strict";var e=function(){return function(t,e,n,r,i,a){var o=t[0],s=n[0],l=[0],c=s;r|=0;var u=0,f=s;for(u=0;u=0!==d>=0&&i.push(l[0]+.5+.5*(h+d)/(h-d)),r+=f,++l[0]}}};t.exports=function(t){return n={funcName:t.funcName},function(t){var e={};return function(n,r,i){var a=n.dtype,o=n.order,s=[a,o.join()].join(),l=e[s];return l||(e[s]=l=t([a,o])),l(n.shape.slice(0),n.data,n.stride,0|n.offset,r,i)}}(e.bind(void 0,n));var n}({funcName:"zeroCrossings"})},9584:function(t,e,n){"use strict";t.exports=function(t,e){var n=[];return e=+e||0,r(t.hi(t.shape[0]-1),n,e),n};var r=n(6183)},6601:function(){}},e={};function n(r){var i=e[r];if(void 0!==i)return i.exports;var a=e[r]={id:r,loaded:!1,exports:{}};return t[r].call(a.exports,a,a.exports,n),a.loaded=!0,a.exports}return n.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"===typeof window)return window}}(),n.nmd=function(t){return t.paths=[],t.children||(t.children=[]),t},n(7386)}()},t.exports=r()},12856:function(t,e,n){"use strict";function r(t,e){for(var n=0;nh)throw new RangeError('The value "'+t+'" is invalid for option "size"');var e=new Uint8Array(t);return Object.setPrototypeOf(e,p.prototype),e}function p(t,e,n){if("number"===typeof t){if("string"===typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return m(t)}return g(t,e,n)}function g(t,e,n){if("string"===typeof t)return function(t,e){if("string"===typeof e&&""!==e||(e="utf8"),!p.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var n=0|w(t,e),r=d(n),i=r.write(t,e);return i!==n&&(r=r.slice(0,i)),r}(t,e);if(ArrayBuffer.isView(t))return function(t){if(et(t,Uint8Array)){var e=new Uint8Array(t);return b(e.buffer,e.byteOffset,e.byteLength)}return y(t)}(t);if(null==t)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(t));if(et(t,ArrayBuffer)||t&&et(t.buffer,ArrayBuffer))return b(t,e,n);if("undefined"!==typeof SharedArrayBuffer&&(et(t,SharedArrayBuffer)||t&&et(t.buffer,SharedArrayBuffer)))return b(t,e,n);if("number"===typeof t)throw new TypeError('The "value" argument must not be of type number. Received type number');var r=t.valueOf&&t.valueOf();if(null!=r&&r!==t)return p.from(r,e,n);var i=function(t){if(p.isBuffer(t)){var e=0|x(t.length),n=d(e);return 0===n.length||t.copy(n,0,0,e),n}return void 0!==t.length?"number"!==typeof t.length||nt(t.length)?d(0):y(t):"Buffer"===t.type&&Array.isArray(t.data)?y(t.data):void 0}(t);if(i)return i;if("undefined"!==typeof Symbol&&null!=Symbol.toPrimitive&&"function"===typeof t[Symbol.toPrimitive])return p.from(t[Symbol.toPrimitive]("string"),e,n);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(t))}function v(t){if("number"!==typeof t)throw new TypeError('"size" argument must be of type number');if(t<0)throw new RangeError('The value "'+t+'" is invalid for option "size"')}function m(t){return v(t),d(t<0?0:0|x(t))}function y(t){for(var e=t.length<0?0:0|x(t.length),n=d(e),r=0;r=h)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+h.toString(16)+" bytes");return 0|t}function w(t,e){if(p.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||et(t,ArrayBuffer))return t.byteLength;if("string"!==typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+l(t));var n=t.length,r=arguments.length>2&&!0===arguments[2];if(!r&&0===n)return 0;for(var i=!1;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return J(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return Q(t).length;default:if(i)return r?-1:J(t).length;e=(""+e).toLowerCase(),i=!0}}function _(t,e,n){var r=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return z(this,e,n);case"utf8":case"utf-8":return O(this,e,n);case"ascii":return D(this,e,n);case"latin1":case"binary":return R(this,e,n);case"base64":return L(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return N(this,e,n);default:if(r)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),r=!0}}function k(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function T(t,e,n,r,i){if(0===t.length)return-1;if("string"===typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),nt(n=+n)&&(n=i?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(i)return-1;n=t.length-1}else if(n<0){if(!i)return-1;n=0}if("string"===typeof e&&(e=p.from(e,r)),p.isBuffer(e))return 0===e.length?-1:M(t,e,n,r,i);if("number"===typeof e)return e&=255,"function"===typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):M(t,[e],n,r,i);throw new TypeError("val must be string, number or Buffer")}function M(t,e,n,r,i){var a,o=1,s=t.length,l=e.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(t.length<2||e.length<2)return-1;o=2,s/=2,l/=2,n/=2}function c(t,e){return 1===o?t[e]:t.readUInt16BE(e*o)}if(i){var u=-1;for(a=n;as&&(n=s-l),a=n;a>=0;a--){for(var f=!0,h=0;hi&&(r=i):r=i;var a,o=e.length;for(r>o/2&&(r=o/2),a=0;a>8,i=n%256,a.push(i),a.push(r);return a}(e,t.length-n),t,n,r)}function L(t,e,n){return 0===e&&n===t.length?c.fromByteArray(t):c.fromByteArray(t.slice(e,n))}function O(t,e,n){n=Math.min(t.length,n);for(var r=[],i=e;i239?4:a>223?3:a>191?2:1;if(i+s<=n){var l=void 0,c=void 0,u=void 0,f=void 0;switch(s){case 1:a<128&&(o=a);break;case 2:128===(192&(l=t[i+1]))&&(f=(31&a)<<6|63&l)>127&&(o=f);break;case 3:l=t[i+1],c=t[i+2],128===(192&l)&&128===(192&c)&&(f=(15&a)<<12|(63&l)<<6|63&c)>2047&&(f<55296||f>57343)&&(o=f);break;case 4:l=t[i+1],c=t[i+2],u=t[i+3],128===(192&l)&&128===(192&c)&&128===(192&u)&&(f=(15&a)<<18|(63&l)<<12|(63&c)<<6|63&u)>65535&&f<1114112&&(o=f)}}null===o?(o=65533,s=1):o>65535&&(o-=65536,r.push(o>>>10&1023|55296),o=56320|1023&o),r.push(o),i+=s}return function(t){var e=t.length;if(e<=I)return String.fromCharCode.apply(String,t);for(var n="",r=0;rr.length?(p.isBuffer(a)||(a=p.from(a)),a.copy(r,i)):Uint8Array.prototype.set.call(r,a,i);else{if(!p.isBuffer(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(r,i)}i+=a.length}return r},p.byteLength=w,p.prototype._isBuffer=!0,p.prototype.swap16=function(){var t=this.length;if(t%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var e=0;en&&(t+=" ... "),""},f&&(p.prototype[f]=p.prototype.inspect),p.prototype.compare=function(t,e,n,r,i){if(et(t,Uint8Array)&&(t=p.from(t,t.offset,t.byteLength)),!p.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+l(t));if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),e<0||n>t.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&e>=n)return 0;if(r>=i)return-1;if(e>=n)return 1;if(this===t)return 0;for(var a=(i>>>=0)-(r>>>=0),o=(n>>>=0)-(e>>>=0),s=Math.min(a,o),c=this.slice(r,i),u=t.slice(e,n),f=0;f>>=0,isFinite(n)?(n>>>=0,void 0===r&&(r="utf8")):(r=n,n=void 0)}var i=this.length-e;if((void 0===n||n>i)&&(n=i),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var a=!1;;)switch(r){case"hex":return A(this,t,e,n);case"utf8":case"utf-8":return S(this,t,e,n);case"ascii":case"latin1":case"binary":return E(this,t,e,n);case"base64":return C(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return P(this,t,e,n);default:if(a)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),a=!0}},p.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var I=4096;function D(t,e,n){var r="";n=Math.min(t.length,n);for(var i=e;ir)&&(n=r);for(var i="",a=e;an)throw new RangeError("Trying to access beyond buffer length")}function F(t,e,n,r,i,a){if(!p.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||et.length)throw new RangeError("Index out of range")}function B(t,e,n,r,i){$(e,r,i,t,n,7);var a=Number(e&BigInt(4294967295));t[n++]=a,a>>=8,t[n++]=a,a>>=8,t[n++]=a,a>>=8,t[n++]=a;var o=Number(e>>BigInt(32)&BigInt(4294967295));return t[n++]=o,o>>=8,t[n++]=o,o>>=8,t[n++]=o,o>>=8,t[n++]=o,n}function U(t,e,n,r,i){$(e,r,i,t,n,7);var a=Number(e&BigInt(4294967295));t[n+7]=a,a>>=8,t[n+6]=a,a>>=8,t[n+5]=a,a>>=8,t[n+4]=a;var o=Number(e>>BigInt(32)&BigInt(4294967295));return t[n+3]=o,o>>=8,t[n+2]=o,o>>=8,t[n+1]=o,o>>=8,t[n]=o,n+8}function H(t,e,n,r,i,a){if(n+r>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function V(t,e,n,r,i){return e=+e,n>>>=0,i||H(t,0,n,4),u.write(t,e,n,r,23,4),n+4}function q(t,e,n,r,i){return e=+e,n>>>=0,i||H(t,0,n,8),u.write(t,e,n,r,52,8),n+8}p.prototype.slice=function(t,e){var n=this.length;(t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e>>=0,e>>>=0,n||j(t,e,this.length);for(var r=this[t],i=1,a=0;++a>>=0,e>>>=0,n||j(t,e,this.length);for(var r=this[t+--e],i=1;e>0&&(i*=256);)r+=this[t+--e]*i;return r},p.prototype.readUint8=p.prototype.readUInt8=function(t,e){return t>>>=0,e||j(t,1,this.length),this[t]},p.prototype.readUint16LE=p.prototype.readUInt16LE=function(t,e){return t>>>=0,e||j(t,2,this.length),this[t]|this[t+1]<<8},p.prototype.readUint16BE=p.prototype.readUInt16BE=function(t,e){return t>>>=0,e||j(t,2,this.length),this[t]<<8|this[t+1]},p.prototype.readUint32LE=p.prototype.readUInt32LE=function(t,e){return t>>>=0,e||j(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},p.prototype.readUint32BE=p.prototype.readUInt32BE=function(t,e){return t>>>=0,e||j(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},p.prototype.readBigUInt64LE=it((function(t){X(t>>>=0,"offset");var e=this[t],n=this[t+7];void 0!==e&&void 0!==n||K(t,this.length-8);var r=e+this[++t]*Math.pow(2,8)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,24),i=this[++t]+this[++t]*Math.pow(2,8)+this[++t]*Math.pow(2,16)+n*Math.pow(2,24);return BigInt(r)+(BigInt(i)<>>=0,"offset");var e=this[t],n=this[t+7];void 0!==e&&void 0!==n||K(t,this.length-8);var r=e*Math.pow(2,24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+this[++t],i=this[++t]*Math.pow(2,24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+n;return(BigInt(r)<>>=0,e>>>=0,n||j(t,e,this.length);for(var r=this[t],i=1,a=0;++a=(i*=128)&&(r-=Math.pow(2,8*e)),r},p.prototype.readIntBE=function(t,e,n){t>>>=0,e>>>=0,n||j(t,e,this.length);for(var r=e,i=1,a=this[t+--r];r>0&&(i*=256);)a+=this[t+--r]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*e)),a},p.prototype.readInt8=function(t,e){return t>>>=0,e||j(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},p.prototype.readInt16LE=function(t,e){t>>>=0,e||j(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},p.prototype.readInt16BE=function(t,e){t>>>=0,e||j(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},p.prototype.readInt32LE=function(t,e){return t>>>=0,e||j(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},p.prototype.readInt32BE=function(t,e){return t>>>=0,e||j(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},p.prototype.readBigInt64LE=it((function(t){X(t>>>=0,"offset");var e=this[t],n=this[t+7];void 0!==e&&void 0!==n||K(t,this.length-8);var r=this[t+4]+this[t+5]*Math.pow(2,8)+this[t+6]*Math.pow(2,16)+(n<<24);return(BigInt(r)<>>=0,"offset");var e=this[t],n=this[t+7];void 0!==e&&void 0!==n||K(t,this.length-8);var r=(e<<24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+this[++t];return(BigInt(r)<>>=0,e||j(t,4,this.length),u.read(this,t,!0,23,4)},p.prototype.readFloatBE=function(t,e){return t>>>=0,e||j(t,4,this.length),u.read(this,t,!1,23,4)},p.prototype.readDoubleLE=function(t,e){return t>>>=0,e||j(t,8,this.length),u.read(this,t,!0,52,8)},p.prototype.readDoubleBE=function(t,e){return t>>>=0,e||j(t,8,this.length),u.read(this,t,!1,52,8)},p.prototype.writeUintLE=p.prototype.writeUIntLE=function(t,e,n,r){t=+t,e>>>=0,n>>>=0,r||F(this,t,e,n,Math.pow(2,8*n)-1,0);var i=1,a=0;for(this[e]=255&t;++a>>=0,n>>>=0,r||F(this,t,e,n,Math.pow(2,8*n)-1,0);var i=n-1,a=1;for(this[e+i]=255&t;--i>=0&&(a*=256);)this[e+i]=t/a&255;return e+n},p.prototype.writeUint8=p.prototype.writeUInt8=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,1,255,0),this[e]=255&t,e+1},p.prototype.writeUint16LE=p.prototype.writeUInt16LE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},p.prototype.writeUint16BE=p.prototype.writeUInt16BE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},p.prototype.writeUint32LE=p.prototype.writeUInt32LE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},p.prototype.writeUint32BE=p.prototype.writeUInt32BE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},p.prototype.writeBigUInt64LE=it((function(t){return B(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),p.prototype.writeBigUInt64BE=it((function(t){return U(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),p.prototype.writeIntLE=function(t,e,n,r){if(t=+t,e>>>=0,!r){var i=Math.pow(2,8*n-1);F(this,t,e,n,i-1,-i)}var a=0,o=1,s=0;for(this[e]=255&t;++a>0)-s&255;return e+n},p.prototype.writeIntBE=function(t,e,n,r){if(t=+t,e>>>=0,!r){var i=Math.pow(2,8*n-1);F(this,t,e,n,i-1,-i)}var a=n-1,o=1,s=0;for(this[e+a]=255&t;--a>=0&&(o*=256);)t<0&&0===s&&0!==this[e+a+1]&&(s=1),this[e+a]=(t/o>>0)-s&255;return e+n},p.prototype.writeInt8=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},p.prototype.writeInt16LE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},p.prototype.writeInt16BE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},p.prototype.writeInt32LE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},p.prototype.writeInt32BE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},p.prototype.writeBigInt64LE=it((function(t){return B(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),p.prototype.writeBigInt64BE=it((function(t){return U(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),p.prototype.writeFloatLE=function(t,e,n){return V(this,t,e,!0,n)},p.prototype.writeFloatBE=function(t,e,n){return V(this,t,e,!1,n)},p.prototype.writeDoubleLE=function(t,e,n){return q(this,t,e,!0,n)},p.prototype.writeDoubleBE=function(t,e,n){return q(this,t,e,!1,n)},p.prototype.copy=function(t,e,n,r){if(!p.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),r||0===r||(r=this.length),e>=t.length&&(e=t.length),e||(e=0),r>0&&r=this.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),t.length-e>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),"number"===typeof t)for(a=e;a=r+4;n-=3)e="_".concat(t.slice(n-3,n)).concat(e);return"".concat(t.slice(0,n)).concat(e)}function $(t,e,n,r,i,a){if(t>n||t3?0===e||e===BigInt(0)?">= 0".concat(s," and < 2").concat(s," ** ").concat(8*(a+1)).concat(s):">= -(2".concat(s," ** ").concat(8*(a+1)-1).concat(s,") and < 2 ** ")+"".concat(8*(a+1)-1).concat(s):">= ".concat(e).concat(s," and <= ").concat(n).concat(s),new G.ERR_OUT_OF_RANGE("value",o,t)}!function(t,e,n){X(e,"offset"),void 0!==t[e]&&void 0!==t[e+n]||K(e,t.length-(n+1))}(r,i,a)}function X(t,e){if("number"!==typeof t)throw new G.ERR_INVALID_ARG_TYPE(e,"number",t)}function K(t,e,n){if(Math.floor(t)!==t)throw X(t,n),new G.ERR_OUT_OF_RANGE(n||"offset","an integer",t);if(e<0)throw new G.ERR_BUFFER_OUT_OF_BOUNDS;throw new G.ERR_OUT_OF_RANGE(n||"offset",">= ".concat(n?1:0," and <= ").concat(e),t)}W("ERR_BUFFER_OUT_OF_BOUNDS",(function(t){return t?"".concat(t," is outside of buffer bounds"):"Attempt to access memory outside buffer bounds"}),RangeError),W("ERR_INVALID_ARG_TYPE",(function(t,e){return'The "'.concat(t,'" argument must be of type number. Received type ').concat(l(e))}),TypeError),W("ERR_OUT_OF_RANGE",(function(t,e,n){var r='The value of "'.concat(t,'" is out of range.'),i=n;return Number.isInteger(n)&&Math.abs(n)>Math.pow(2,32)?i=Y(String(n)):"bigint"===typeof n&&(i=String(n),(n>Math.pow(BigInt(2),BigInt(32))||n<-Math.pow(BigInt(2),BigInt(32)))&&(i=Y(i)),i+="n"),r+=" It must be ".concat(e,". Received ").concat(i)}),RangeError);var Z=/[^+/0-9A-Za-z-_]/g;function J(t,e){var n;e=e||1/0;for(var r=t.length,i=null,a=[],o=0;o55295&&n<57344){if(!i){if(n>56319){(e-=3)>-1&&a.push(239,191,189);continue}if(o+1===r){(e-=3)>-1&&a.push(239,191,189);continue}i=n;continue}if(n<56320){(e-=3)>-1&&a.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(e-=3)>-1&&a.push(239,191,189);if(i=null,n<128){if((e-=1)<0)break;a.push(n)}else if(n<2048){if((e-=2)<0)break;a.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;a.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return a}function Q(t){return c.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(Z,"")).length<2)return"";for(;t.length%4!==0;)t+="=";return t}(t))}function tt(t,e,n,r){var i;for(i=0;i=e.length||i>=t.length);++i)e[i+n]=t[i];return i}function et(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function nt(t){return t!==t}var rt=function(){for(var t="0123456789abcdef",e=new Array(256),n=0;n<16;++n)for(var r=16*n,i=0;i<16;++i)e[r+i]=t[n]+t[i];return e}();function it(t){return"undefined"===typeof BigInt?at:t}function at(){throw new Error("BigInt not supported")}},35791:function(t){"use strict";t.exports=i,t.exports.isMobile=i,t.exports.default=i;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,n=/CrOS/,r=/android|ipad|playbook|silk/i;function i(t){t||(t={});var i=t.ua;if(i||"undefined"===typeof navigator||(i=navigator.userAgent),i&&i.headers&&"string"===typeof i.headers["user-agent"]&&(i=i.headers["user-agent"]),"string"!==typeof i)return!1;var a=e.test(i)&&!n.test(i)||!!t.tablet&&r.test(i);return!a&&t.tablet&&t.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==i.indexOf("Macintosh")&&-1!==i.indexOf("Safari")&&(a=!0),a}},86781:function(t,e,n){"use strict";n.r(e),n.d(e,{sankeyCenter:function(){return h},sankeyCircular:function(){return P},sankeyJustify:function(){return f},sankeyLeft:function(){return c},sankeyRight:function(){return u}});var r=n(33064),i=n(15140),a=n(45879),o=n(2502),s=n.n(o);function l(t){return t.target.depth}function c(t){return t.depth}function u(t,e){return e-1-t.height}function f(t,e){return t.sourceLinks.length?t.depth:e-1}function h(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?(0,r.VV)(t.sourceLinks,l)-1:0}function d(t){return function(){return t}}var p="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};function g(t,e){return m(t.source,e.source)||t.index-e.index}function v(t,e){return m(t.target,e.target)||t.index-e.index}function m(t,e){return t.partOfCycle===e.partOfCycle?t.y0-e.y0:"top"===t.circularLinkType||"bottom"===e.circularLinkType?-1:1}function y(t){return t.value}function b(t){return(t.y0+t.y1)/2}function x(t){return b(t.source)}function w(t){return b(t.target)}function _(t){return t.index}function k(t){return t.nodes}function T(t){return t.links}function M(t,e){var n=t.get(e);if(!n)throw new Error("missing: "+e);return n}function A(t,e){return e(t)}var S=25,E=10,C=.3;function P(){var t,e,n=0,a=0,o=1,l=1,c=24,u=_,h=f,A=k,P=T,O=32,D=2,R=null;function N(){var f={nodes:A.apply(null,arguments),links:P.apply(null,arguments)};!function(t){t.nodes.forEach((function(t,e){t.index=e,t.sourceLinks=[],t.targetLinks=[]}));var e=(0,i.UI)(t.nodes,u);t.links.forEach((function(t,n){t.index=n;var r=t.source,i=t.target;"object"!==("undefined"===typeof r?"undefined":p(r))&&(r=t.source=M(e,r)),"object"!==("undefined"===typeof i?"undefined":p(i))&&(i=t.target=M(e,i)),r.sourceLinks.push(t),i.targetLinks.push(t)}))}(f),function(t,e,n){var r=0;if(null===n){for(var i=[],a=0;a0;--p)v(d*=.99,f),_();function g(i){if(e){var u=1/0;h.forEach((function(t){var n=l*e/(t.length+1);u=n0?e+S+E:e,bottom:n=n>0?n+S+E:n,left:a=a>0?a+S+E:a,right:i=i>0?i+S+E:i}}(s),p=function(t,e){var i=(0,r.Fp)(t.nodes,(function(t){return t.column})),s=o-n,u=l-a,f=s+e.right+e.left,h=u+e.top+e.bottom,d=s/f,p=u/h;return n=n*d+e.left,o=0==e.right?o:o*d,a=a*p+e.top,l*=p,t.nodes.forEach((function(t){t.x0=n+t.column*((o-n-c)/i),t.x1=t.x0+c})),p}(s,d);f*=p,s.links.forEach((function(t){t.width=t.value*f})),h.forEach((function(t){var e=t.length;t.forEach((function(t,n){t.depth==h.length-1&&1==e||0==t.depth&&1==e?(t.y0=l/2-t.value*f,t.y1=t.y0+t.value*f):t.partOfCycle?0==I(t,i)?(t.y0=l/2+n,t.y1=t.y0+t.value*f):"top"==t.circularLinkType?(t.y0=a+n,t.y1=t.y0+t.value*f):(t.y0=l-t.value*f-n,t.y1=t.y0+t.value*f):0==d.top||0==d.bottom?(t.y0=(l-a)/e*n,t.y1=t.y0+t.value*f):(t.y0=(l-a)/2-e/2+n,t.y1=t.y0+t.value*f)}))}))}function v(t,e){var n=h.length;h.forEach((function(i){var a=i.length,o=i[0].depth;i.forEach((function(i){var s;if(i.sourceLinks.length||i.targetLinks.length)if(i.partOfCycle&&I(i,e)>0);else if(0==o&&1==a)s=i.y1-i.y0,i.y0=l/2-s/2,i.y1=l/2+s/2;else if(o==n-1&&1==a)s=i.y1-i.y0,i.y0=l/2-s/2,i.y1=l/2+s/2;else{var c=(0,r.J6)(i.sourceLinks,w),u=(0,r.J6)(i.targetLinks,x),f=((c&&u?(c+u)/2:c||u)-b(i))*t;i.y0+=f,i.y1+=f}}))}))}function _(){h.forEach((function(e){var n,r,i,o=a,s=e.length;for(e.sort(m),i=0;i0&&(n.y0+=r,n.y1+=r),o=n.y1+t;if((r=o-t-l)>0)for(o=n.y0-=r,n.y1-=r,i=s-2;i>=0;--i)(r=(n=e[i]).y1+t-o)>0&&(n.y0-=r,n.y1-=r),o=n.y0}))}}(f,O,u),j(f);for(var d=0;d<4;d++)$(f,l,u),X(f,0,u),W(f,a,l,u),$(f,l,u),X(f,0,u);return function(t,e,n){var i=t.nodes,a=t.links,o=!1,s=!1;if(a.forEach((function(t){"top"==t.circularLinkType?o=!0:"bottom"==t.circularLinkType&&(s=!0)})),0==o||0==s){var l=(0,r.VV)(i,(function(t){return t.y0})),c=(n-e)/((0,r.Fp)(i,(function(t){return t.y1}))-l);i.forEach((function(t){var e=(t.y1-t.y0)*c;t.y0=(t.y0-l)*c,t.y1=t.y0+e})),a.forEach((function(t){t.y0=(t.y0-l)*c,t.y1=(t.y1-l)*c,t.width=t.width*c}))}}(f,a,l),z(f,D,l,u),f}function j(t){t.nodes.forEach((function(t){t.sourceLinks.sort(v),t.targetLinks.sort(g)})),t.nodes.forEach((function(t){var e=t.y0,n=e,r=t.y1,i=r;t.sourceLinks.forEach((function(t){t.circular?(t.y0=r-t.width/2,r-=t.width):(t.y0=e+t.width/2,e+=t.width)})),t.targetLinks.forEach((function(t){t.circular?(t.y1=i-t.width/2,i-=t.width):(t.y1=n+t.width/2,n+=t.width)}))}))}return N.nodeId=function(t){return arguments.length?(u="function"===typeof t?t:d(t),N):u},N.nodeAlign=function(t){return arguments.length?(h="function"===typeof t?t:d(t),N):h},N.nodeWidth=function(t){return arguments.length?(c=+t,N):c},N.nodePadding=function(e){return arguments.length?(t=+e,N):t},N.nodes=function(t){return arguments.length?(A="function"===typeof t?t:d(t),N):A},N.links=function(t){return arguments.length?(P="function"===typeof t?t:d(t),N):P},N.size=function(t){return arguments.length?(n=a=0,o=+t[0],l=+t[1],N):[o-n,l-a]},N.extent=function(t){return arguments.length?(n=+t[0][0],o=+t[1][0],a=+t[0][1],l=+t[1][1],N):[[n,a],[o,l]]},N.iterations=function(t){return arguments.length?(O=+t,N):O},N.circularLinkGap=function(t){return arguments.length?(D=+t,N):D},N.nodePaddingRatio=function(t){return arguments.length?(e=+t,N):e},N.sortNodes=function(t){return arguments.length?(R=t,N):R},N.update=function(t){return L(t,u),j(t),t.links.forEach((function(t){t.circular&&(t.circularLinkType=t.y0+t.y11||i>1)}function R(t,e,n){return t.sort(N),t.forEach((function(r,i){var a,o,s=0;if(J(r,n)&&D(r))r.circularPathData.verticalBuffer=s+r.width/2;else{for(var l=0;lo.source.column)){var c=t[l].circularPathData.verticalBuffer+t[l].width/2+e;s=c>s?c:s}r.circularPathData.verticalBuffer=s+r.width/2}})),t}function z(t,e,n,i){var o=(0,r.VV)(t.links,(function(t){return t.source.y0}));t.links.forEach((function(t){t.circular&&(t.circularPathData={})})),R(t.links.filter((function(t){return"top"==t.circularLinkType})),e,i),R(t.links.filter((function(t){return"bottom"==t.circularLinkType})),e,i),t.links.forEach((function(r){if(r.circular){if(r.circularPathData.arcRadius=r.width+E,r.circularPathData.leftNodeBuffer=5,r.circularPathData.rightNodeBuffer=5,r.circularPathData.sourceWidth=r.source.x1-r.source.x0,r.circularPathData.sourceX=r.source.x0+r.circularPathData.sourceWidth,r.circularPathData.targetX=r.target.x0,r.circularPathData.sourceY=r.y0,r.circularPathData.targetY=r.y1,J(r,i)&&D(r))r.circularPathData.leftSmallArcRadius=E+r.width/2,r.circularPathData.leftLargeArcRadius=E+r.width/2,r.circularPathData.rightSmallArcRadius=E+r.width/2,r.circularPathData.rightLargeArcRadius=E+r.width/2,"bottom"==r.circularLinkType?(r.circularPathData.verticalFullExtent=r.source.y1+S+r.circularPathData.verticalBuffer,r.circularPathData.verticalLeftInnerExtent=r.circularPathData.verticalFullExtent-r.circularPathData.leftLargeArcRadius,r.circularPathData.verticalRightInnerExtent=r.circularPathData.verticalFullExtent-r.circularPathData.rightLargeArcRadius):(r.circularPathData.verticalFullExtent=r.source.y0-S-r.circularPathData.verticalBuffer,r.circularPathData.verticalLeftInnerExtent=r.circularPathData.verticalFullExtent+r.circularPathData.leftLargeArcRadius,r.circularPathData.verticalRightInnerExtent=r.circularPathData.verticalFullExtent+r.circularPathData.rightLargeArcRadius);else{var s=r.source.column,l=r.circularLinkType,c=t.links.filter((function(t){return t.source.column==s&&t.circularLinkType==l}));"bottom"==r.circularLinkType?c.sort(F):c.sort(j);var u=0;c.forEach((function(t,n){t.circularLinkID==r.circularLinkID&&(r.circularPathData.leftSmallArcRadius=E+r.width/2+u,r.circularPathData.leftLargeArcRadius=E+r.width/2+n*e+u),u+=t.width})),s=r.target.column,c=t.links.filter((function(t){return t.target.column==s&&t.circularLinkType==l})),"bottom"==r.circularLinkType?c.sort(U):c.sort(B),u=0,c.forEach((function(t,n){t.circularLinkID==r.circularLinkID&&(r.circularPathData.rightSmallArcRadius=E+r.width/2+u,r.circularPathData.rightLargeArcRadius=E+r.width/2+n*e+u),u+=t.width})),"bottom"==r.circularLinkType?(r.circularPathData.verticalFullExtent=Math.max(n,r.source.y1,r.target.y1)+S+r.circularPathData.verticalBuffer,r.circularPathData.verticalLeftInnerExtent=r.circularPathData.verticalFullExtent-r.circularPathData.leftLargeArcRadius,r.circularPathData.verticalRightInnerExtent=r.circularPathData.verticalFullExtent-r.circularPathData.rightLargeArcRadius):(r.circularPathData.verticalFullExtent=o-S-r.circularPathData.verticalBuffer,r.circularPathData.verticalLeftInnerExtent=r.circularPathData.verticalFullExtent+r.circularPathData.leftLargeArcRadius,r.circularPathData.verticalRightInnerExtent=r.circularPathData.verticalFullExtent+r.circularPathData.rightLargeArcRadius)}r.circularPathData.leftInnerExtent=r.circularPathData.sourceX+r.circularPathData.leftNodeBuffer,r.circularPathData.rightInnerExtent=r.circularPathData.targetX-r.circularPathData.rightNodeBuffer,r.circularPathData.leftFullExtent=r.circularPathData.sourceX+r.circularPathData.leftLargeArcRadius+r.circularPathData.leftNodeBuffer,r.circularPathData.rightFullExtent=r.circularPathData.targetX-r.circularPathData.rightLargeArcRadius-r.circularPathData.rightNodeBuffer}if(r.circular)r.path=function(t){return"top"==t.circularLinkType?"M"+t.circularPathData.sourceX+" "+t.circularPathData.sourceY+" L"+t.circularPathData.leftInnerExtent+" "+t.circularPathData.sourceY+" A"+t.circularPathData.leftLargeArcRadius+" "+t.circularPathData.leftSmallArcRadius+" 0 0 0 "+t.circularPathData.leftFullExtent+" "+(t.circularPathData.sourceY-t.circularPathData.leftSmallArcRadius)+" L"+t.circularPathData.leftFullExtent+" "+t.circularPathData.verticalLeftInnerExtent+" A"+t.circularPathData.leftLargeArcRadius+" "+t.circularPathData.leftLargeArcRadius+" 0 0 0 "+t.circularPathData.leftInnerExtent+" "+t.circularPathData.verticalFullExtent+" L"+t.circularPathData.rightInnerExtent+" "+t.circularPathData.verticalFullExtent+" A"+t.circularPathData.rightLargeArcRadius+" "+t.circularPathData.rightLargeArcRadius+" 0 0 0 "+t.circularPathData.rightFullExtent+" "+t.circularPathData.verticalRightInnerExtent+" L"+t.circularPathData.rightFullExtent+" "+(t.circularPathData.targetY-t.circularPathData.rightSmallArcRadius)+" A"+t.circularPathData.rightLargeArcRadius+" "+t.circularPathData.rightSmallArcRadius+" 0 0 0 "+t.circularPathData.rightInnerExtent+" "+t.circularPathData.targetY+" L"+t.circularPathData.targetX+" "+t.circularPathData.targetY:"M"+t.circularPathData.sourceX+" "+t.circularPathData.sourceY+" L"+t.circularPathData.leftInnerExtent+" "+t.circularPathData.sourceY+" A"+t.circularPathData.leftLargeArcRadius+" "+t.circularPathData.leftSmallArcRadius+" 0 0 1 "+t.circularPathData.leftFullExtent+" "+(t.circularPathData.sourceY+t.circularPathData.leftSmallArcRadius)+" L"+t.circularPathData.leftFullExtent+" "+t.circularPathData.verticalLeftInnerExtent+" A"+t.circularPathData.leftLargeArcRadius+" "+t.circularPathData.leftLargeArcRadius+" 0 0 1 "+t.circularPathData.leftInnerExtent+" "+t.circularPathData.verticalFullExtent+" L"+t.circularPathData.rightInnerExtent+" "+t.circularPathData.verticalFullExtent+" A"+t.circularPathData.rightLargeArcRadius+" "+t.circularPathData.rightLargeArcRadius+" 0 0 1 "+t.circularPathData.rightFullExtent+" "+t.circularPathData.verticalRightInnerExtent+" L"+t.circularPathData.rightFullExtent+" "+(t.circularPathData.targetY+t.circularPathData.rightSmallArcRadius)+" A"+t.circularPathData.rightLargeArcRadius+" "+t.circularPathData.rightSmallArcRadius+" 0 0 1 "+t.circularPathData.rightInnerExtent+" "+t.circularPathData.targetY+" L"+t.circularPathData.targetX+" "+t.circularPathData.targetY}(r);else{var f=(0,a.h5)().source((function(t){return[t.source.x0+(t.source.x1-t.source.x0),t.y0]})).target((function(t){return[t.target.x0,t.y1]}));r.path=f(r)}}))}function N(t,e){return H(t)==H(e)?"bottom"==t.circularLinkType?F(t,e):j(t,e):H(e)-H(t)}function j(t,e){return t.y0-e.y0}function F(t,e){return e.y0-t.y0}function B(t,e){return t.y1-e.y1}function U(t,e){return e.y1-t.y1}function H(t){return t.target.column-t.source.column}function V(t){return t.target.x0-t.source.x1}function q(t,e){var n=O(t),r=V(e)/Math.tan(n);return"up"==Z(t)?t.y1+r:t.y1-r}function G(t,e){var n=O(t),r=V(e)/Math.tan(n);return"up"==Z(t)?t.y1-r:t.y1+r}function W(t,e,n,r){t.links.forEach((function(i){if(!i.circular&&i.target.column-i.source.column>1){var a=i.source.column+1,o=i.target.column-1,s=1,l=o-a+1;for(s=1;a<=o;a++,s++)t.nodes.forEach((function(o){if(o.column==a){var c,u=s/(l+1),f=Math.pow(1-u,3),h=3*u*Math.pow(1-u,2),d=3*Math.pow(u,2)*(1-u),p=Math.pow(u,3),g=f*i.y0+h*i.y0+d*i.y1+p*i.y1,v=g-i.width/2,m=g+i.width/2;v>o.y0&&va.y0&&i.y0a.y0&&i.y1a.y1)&&Y(t,c,e,n)}))):(m>o.y0&&mo.y1)&&(c=m-o.y0+10,o=Y(o,c,e,n),t.nodes.forEach((function(t){A(t,r)!=A(o,r)&&t.column==o.column&&t.y0o.y1&&Y(t,c,e,n)})))}}))}}))}function Y(t,e,n,r){return t.y0+e>=n&&t.y1+e<=r&&(t.y0=t.y0+e,t.y1=t.y1+e,t.targetLinks.forEach((function(t){t.y1=t.y1+e})),t.sourceLinks.forEach((function(t){t.y0=t.y0+e}))),t}function $(t,e,n,r){t.nodes.forEach((function(i){r&&i.y+(i.y1-i.y0)>e&&(i.y=i.y-(i.y+(i.y1-i.y0)-e));var a=t.links.filter((function(t){return A(t.source,n)==A(i,n)})),o=a.length;o>1&&a.sort((function(t,e){if(!t.circular&&!e.circular){if(t.target.column==e.target.column)return t.y1-e.y1;if(!K(t,e))return t.y1-e.y1;if(t.target.column>e.target.column){var n=G(e,t);return t.y1-n}if(e.target.column>t.target.column)return G(t,e)-e.y1}return t.circular&&!e.circular?"top"==t.circularLinkType?-1:1:e.circular&&!t.circular?"top"==e.circularLinkType?1:-1:t.circular&&e.circular?t.circularLinkType===e.circularLinkType&&"top"==t.circularLinkType?t.target.column===e.target.column?t.target.y1-e.target.y1:e.target.column-t.target.column:t.circularLinkType===e.circularLinkType&&"bottom"==t.circularLinkType?t.target.column===e.target.column?e.target.y1-t.target.y1:t.target.column-e.target.column:"top"==t.circularLinkType?-1:1:void 0}));var s=i.y0;a.forEach((function(t){t.y0=s+t.width/2,s+=t.width})),a.forEach((function(t,e){if("bottom"==t.circularLinkType){for(var n=e+1,r=0;n1&&r.sort((function(t,e){if(!t.circular&&!e.circular){if(t.source.column==e.source.column)return t.y0-e.y0;if(!K(t,e))return t.y0-e.y0;if(e.source.column0?"up":"down"}function J(t,e){return A(t.source,e)==A(t.target,e)}},30838:function(t,e,n){"use strict";n.r(e),n.d(e,{sankey:function(){return _},sankeyCenter:function(){return c},sankeyJustify:function(){return l},sankeyLeft:function(){return o},sankeyLinkHorizontal:function(){return A},sankeyRight:function(){return s}});var r=n(33064),i=n(15140);function a(t){return t.target.depth}function o(t){return t.depth}function s(t,e){return e-1-t.height}function l(t,e){return t.sourceLinks.length?t.depth:e-1}function c(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?(0,r.VV)(t.sourceLinks,a)-1:0}function u(t){return function(){return t}}function f(t,e){return d(t.source,e.source)||t.index-e.index}function h(t,e){return d(t.target,e.target)||t.index-e.index}function d(t,e){return t.y0-e.y0}function p(t){return t.value}function g(t){return(t.y0+t.y1)/2}function v(t){return g(t.source)*t.value}function m(t){return g(t.target)*t.value}function y(t){return t.index}function b(t){return t.nodes}function x(t){return t.links}function w(t,e){var n=t.get(e);if(!n)throw new Error("missing: "+e);return n}function _(){var t=0,e=0,n=1,a=1,o=24,s=8,c=y,_=l,k=b,T=x,M=32,A=2/3;function S(){var l={nodes:k.apply(null,arguments),links:T.apply(null,arguments)};return function(t){t.nodes.forEach((function(t,e){t.index=e,t.sourceLinks=[],t.targetLinks=[]}));var e=(0,i.UI)(t.nodes,c);t.links.forEach((function(t,n){t.index=n;var r=t.source,i=t.target;"object"!==typeof r&&(r=t.source=w(e,r)),"object"!==typeof i&&(i=t.target=w(e,i)),r.sourceLinks.push(t),i.targetLinks.push(t)}))}(l),function(t){t.nodes.forEach((function(t){t.value=Math.max((0,r.Sm)(t.sourceLinks,p),(0,r.Sm)(t.targetLinks,p))}))}(l),function(e){var r,i,a;for(r=e.nodes,i=[],a=0;r.length;++a,r=i,i=[])r.forEach((function(t){t.depth=a,t.sourceLinks.forEach((function(t){i.indexOf(t.target)<0&&i.push(t.target)}))}));for(r=e.nodes,i=[],a=0;r.length;++a,r=i,i=[])r.forEach((function(t){t.height=a,t.targetLinks.forEach((function(t){i.indexOf(t.source)<0&&i.push(t.source)}))}));var s=(n-t-o)/(a-1);e.nodes.forEach((function(e){e.x1=(e.x0=t+Math.max(0,Math.min(a-1,Math.floor(_.call(null,e,a))))*s)+o}))}(l),function(t){var n=(0,i.b1)().key((function(t){return t.x0})).sortKeys(r.j2).entries(t.nodes).map((function(t){return t.values}));c(),h();for(var o=1,l=M;l>0;--l)f(o*=.99),h(),u(o),h();function c(){var i=(0,r.Fp)(n,(function(t){return t.length})),o=A*(a-e)/(i-1);s>o&&(s=o);var l=(0,r.VV)(n,(function(t){return(a-e-(t.length-1)*s)/(0,r.Sm)(t,p)}));n.forEach((function(t){t.forEach((function(t,e){t.y1=(t.y0=e)+t.value*l}))})),t.links.forEach((function(t){t.width=t.value*l}))}function u(t){n.forEach((function(e){e.forEach((function(e){if(e.targetLinks.length){var n=((0,r.Sm)(e.targetLinks,v)/(0,r.Sm)(e.targetLinks,p)-g(e))*t;e.y0+=n,e.y1+=n}}))}))}function f(t){n.slice().reverse().forEach((function(e){e.forEach((function(e){if(e.sourceLinks.length){var n=((0,r.Sm)(e.sourceLinks,m)/(0,r.Sm)(e.sourceLinks,p)-g(e))*t;e.y0+=n,e.y1+=n}}))}))}function h(){n.forEach((function(t){var n,r,i,o=e,l=t.length;for(t.sort(d),i=0;i0&&(n.y0+=r,n.y1+=r),o=n.y1+s;if((r=o-s-a)>0)for(o=n.y0-=r,n.y1-=r,i=l-2;i>=0;--i)(r=(n=t[i]).y1+s-o)>0&&(n.y0-=r,n.y1-=r),o=n.y0}))}}(l),E(l),l}function E(t){t.nodes.forEach((function(t){t.sourceLinks.sort(h),t.targetLinks.sort(f)})),t.nodes.forEach((function(t){var e=t.y0,n=e;t.sourceLinks.forEach((function(t){t.y0=e+t.width/2,e+=t.width})),t.targetLinks.forEach((function(t){t.y1=n+t.width/2,n+=t.width}))}))}return S.update=function(t){return E(t),t},S.nodeId=function(t){return arguments.length?(c="function"===typeof t?t:u(t),S):c},S.nodeAlign=function(t){return arguments.length?(_="function"===typeof t?t:u(t),S):_},S.nodeWidth=function(t){return arguments.length?(o=+t,S):o},S.nodePadding=function(t){return arguments.length?(s=+t,S):s},S.nodes=function(t){return arguments.length?(k="function"===typeof t?t:u(t),S):k},S.links=function(t){return arguments.length?(T="function"===typeof t?t:u(t),S):T},S.size=function(r){return arguments.length?(t=e=0,n=+r[0],a=+r[1],S):[n-t,a-e]},S.extent=function(r){return arguments.length?(t=+r[0][0],n=+r[1][0],e=+r[0][1],a=+r[1][1],S):[[t,e],[n,a]]},S.iterations=function(t){return arguments.length?(M=+t,S):M},S}var k=n(45879);function T(t){return[t.source.x1,t.y0]}function M(t){return[t.target.x0,t.y1]}function A(){return(0,k.h5)().source(T).target(M)}},39898:function(t,e,n){var r,i;(function(){var a={version:"3.8.0"},o=[].slice,s=function(t){return o.call(t)},l=self.document;function c(t){return t&&(t.ownerDocument||t.document||t).documentElement}function u(t){return t&&(t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView)}if(l)try{s(l.documentElement.childNodes)[0].nodeType}catch(ma){s=function(t){for(var e=t.length,n=new Array(e);e--;)n[e]=t[e];return n}}if(Date.now||(Date.now=function(){return+new Date}),l)try{l.createElement("DIV").style.setProperty("opacity",0,"")}catch(ya){var f=this.Element.prototype,h=f.setAttribute,d=f.setAttributeNS,p=this.CSSStyleDeclaration.prototype,g=p.setProperty;f.setAttribute=function(t,e){h.call(this,t,e+"")},f.setAttributeNS=function(t,e,n){d.call(this,t,e,n+"")},p.setProperty=function(t,e,n){g.call(this,t,e+"",n)}}function v(t,e){return te?1:t>=e?0:NaN}function m(t){return null===t?NaN:+t}function y(t){return!isNaN(t)}function b(t){return{left:function(e,n,r,i){for(arguments.length<3&&(r=0),arguments.length<4&&(i=e.length);r>>1;t(e[a],n)<0?r=a+1:i=a}return r},right:function(e,n,r,i){for(arguments.length<3&&(r=0),arguments.length<4&&(i=e.length);r>>1;t(e[a],n)>0?i=a:r=a+1}return r}}}a.ascending=v,a.descending=function(t,e){return et?1:e>=t?0:NaN},a.min=function(t,e){var n,r,i=-1,a=t.length;if(1===arguments.length){for(;++i=r){n=r;break}for(;++ir&&(n=r)}else{for(;++i=r){n=r;break}for(;++ir&&(n=r)}return n},a.max=function(t,e){var n,r,i=-1,a=t.length;if(1===arguments.length){for(;++i=r){n=r;break}for(;++in&&(n=r)}else{for(;++i=r){n=r;break}for(;++in&&(n=r)}return n},a.extent=function(t,e){var n,r,i,a=-1,o=t.length;if(1===arguments.length){for(;++a=r){n=i=r;break}for(;++ar&&(n=r),i=r){n=i=r;break}for(;++ar&&(n=r),i1)return o/(l-1)},a.deviation=function(){var t=a.variance.apply(this,arguments);return t?Math.sqrt(t):t};var x=b(v);function w(t){return t.length}a.bisectLeft=x.left,a.bisect=a.bisectRight=x.right,a.bisector=function(t){return b(1===t.length?function(e,n){return v(t(e),n)}:t)},a.shuffle=function(t,e,n){(a=arguments.length)<3&&(n=t.length,a<2&&(e=0));for(var r,i,a=n-e;a;)i=Math.random()*a--|0,r=t[a+e],t[a+e]=t[i+e],t[i+e]=r;return t},a.permute=function(t,e){for(var n=e.length,r=new Array(n);n--;)r[n]=t[e[n]];return r},a.pairs=function(t){for(var e=0,n=t.length-1,r=t[0],i=new Array(n<0?0:n);e=0;)for(e=(r=t[i]).length;--e>=0;)n[--o]=r[e];return n};var _=Math.abs;function k(t,e){for(var n in e)Object.defineProperty(t.prototype,n,{value:e[n],enumerable:!1})}function T(){this._=Object.create(null)}a.range=function(t,e,n){if(arguments.length<3&&(n=1,arguments.length<2&&(e=t,t=0)),(e-t)/n===1/0)throw new Error("infinite range");var r,i=[],a=function(t){for(var e=1;t*e%1;)e*=10;return e}(_(n)),o=-1;if(t*=a,e*=a,(n*=a)<0)for(;(r=t+n*++o)>e;)i.push(r/a);else for(;(r=t+n*++o)=r.length)return e?e.call(n,a):t?a.sort(t):a;for(var l,c,u,f,h=-1,d=a.length,p=r[s++],g=new T;++h=r.length)return t;var n=[],a=i[e++];return t.forEach((function(t,r){n.push({key:t,values:s(r,e)})})),a?n.sort((function(t,e){return a(t.key,e.key)})):n}return n.map=function(t,e){return o(e,t,0)},n.entries=function(t){return s(o(a.map,t,0),0)},n.key=function(t){return r.push(t),n},n.sortKeys=function(t){return i[r.length-1]=t,n},n.sortValues=function(e){return t=e,n},n.rollup=function(t){return e=t,n},n},a.set=function(t){var e=new D;if(t)for(var n=0,r=t.length;n=0&&(r=t.slice(n+1),t=t.slice(0,n)),t)return arguments.length<2?this[t].on(r):this[t].on(r,e);if(2===arguments.length){if(null==e)for(t in this)this.hasOwnProperty(t)&&this[t].on(r,null);return this}},a.event=null,a.requote=function(t){return t.replace(G,"\\$&")};var G=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g,W={}.__proto__?function(t,e){t.__proto__=e}:function(t,e){for(var n in e)t[n]=e[n]};function Y(t){return W(t,Z),t}var $=function(t,e){return e.querySelector(t)},X=function(t,e){return e.querySelectorAll(t)},K=function(t,e){var n=t.matches||t[N(t,"matchesSelector")];return K=function(t,e){return n.call(t,e)},K(t,e)};"function"===typeof Sizzle&&($=function(t,e){return Sizzle(t,e)[0]||null},X=Sizzle,K=Sizzle.matchesSelector),a.selection=function(){return a.select(l.documentElement)};var Z=a.selection.prototype=[];function J(t){return"function"===typeof t?t:function(){return $(t,this)}}function Q(t){return"function"===typeof t?t:function(){return X(t,this)}}Z.select=function(t){var e,n,r,i,a=[];t=J(t);for(var o=-1,s=this.length;++o=0&&"xmlns"!==(n=t.slice(0,e))&&(t=t.slice(e+1)),et.hasOwnProperty(n)?{space:et[n],local:t}:t}},Z.attr=function(t,e){if(arguments.length<2){if("string"===typeof t){var n=this.node();return(t=a.ns.qualify(t)).local?n.getAttributeNS(t.space,t.local):n.getAttribute(t)}for(e in t)this.each(nt(e,t[e]));return this}return this.each(nt(t,e))},Z.classed=function(t,e){if(arguments.length<2){if("string"===typeof t){var n=this.node(),r=(t=at(t)).length,i=-1;if(e=n.classList){for(;++i=0;)(n=r[i])&&(a&&a!==n.nextSibling&&a.parentNode.insertBefore(n,a),a=n);return this},Z.sort=function(t){t=pt.apply(this,arguments);for(var e=-1,n=this.length;++e0&&(t=t.slice(0,i));var l=bt.get(t);function c(){var e=this[r];e&&(this.removeEventListener(t,e,e.$),delete this[r])}return l&&(t=l,o=wt),i?e?function(){var i=o(e,s(arguments));c.call(this),this.addEventListener(t,this[r]=i,i.$=n),i._=e}:c:e?F:function(){var e,n=new RegExp("^__on([^.]+)"+a.requote(t)+"$");for(var r in this)if(e=r.match(n)){var i=this[r];this.removeEventListener(e[1],i,i.$),delete this[r]}}}a.selection.enter=vt,a.selection.enter.prototype=mt,mt.append=Z.append,mt.empty=Z.empty,mt.node=Z.node,mt.call=Z.call,mt.size=Z.size,mt.select=function(t){for(var e,n,r,i,a,o=[],s=-1,l=this.length;++s=e&&(e=i+1);!(o=s[e])&&++e1?It:t<-1?-It:Math.asin(t)}function Nt(t){return((t=Math.exp(t))+1/t)/2}var jt=Math.SQRT2;a.interpolateZoom=function(t,e){var n,r,i=t[0],a=t[1],o=t[2],s=e[0],l=e[1],c=e[2],u=s-i,f=l-a,h=u*u+f*f;if(h0&&(t=t.transition().duration(g)),t.call(_.event)}function S(){s&&s.domain(o.range().map((function(t){return(t-h.x)/h.k})).map(o.invert)),f&&f.domain(c.range().map((function(t){return(t-h.y)/h.k})).map(c.invert))}function E(t){v++||t({type:"zoomstart"})}function C(t){S(),t({type:"zoom",scale:h.k,translate:[h.x,h.y]})}function P(t){--v||(t({type:"zoomend"}),e=null)}function L(){var t=this,e=w.of(t,arguments),n=0,r=a.select(u(t)).on(y,(function(){n=1,M(a.mouse(t),i),C(e)})).on(b,(function(){r.on(y,null).on(b,null),o(n),P(e)})),i=k(a.mouse(t)),o=Tt(t);Ji.call(t),E(e)}function O(){var t,e=this,n=w.of(e,arguments),r={},o=0,s=".zoom-"+a.event.changedTouches[0].identifier,l="touchmove"+s,c="touchend"+s,u=[],f=a.select(e),d=Tt(e);function p(){var n=a.touches(e);return t=h.k,n.forEach((function(t){t.identifier in r&&(r[t.identifier]=k(t))})),n}function g(){var t=a.event.target;a.select(t).on(l,v).on(c,y),u.push(t);for(var n=a.event.changedTouches,s=0,f=n.length;s1){m=d[0];var b=d[1],x=m[0]-b[0],w=m[1]-b[1];o=x*x+w*w}}function v(){var s,l,c,u,f=a.touches(e);Ji.call(e);for(var h=0,d=f.length;h360?t-=360:t<0&&(t+=360),t<60?r+(i-r)*t/60:t<180?i:t<240?r+(i-r)*(240-t)/60:r}(t))}return t=isNaN(t)?0:(t%=360)<0?t+360:t,e=isNaN(e)||e<0?0:e>1?1:e,r=2*(n=n<0?0:n>1?1:n)-(i=n<=.5?n*(1+e):n+e-n*e),new oe(a(t+120),a(t),a(t-120))}function Wt(t,e,n){return this instanceof Wt?(this.h=+t,this.c=+e,void(this.l=+n)):arguments.length<2?t instanceof Wt?new Wt(t.h,t.c,t.l):ne(t instanceof Xt?t.l:(t=de((t=a.rgb(t)).r,t.g,t.b)).l,t.a,t.b):new Wt(t,e,n)}qt.brighter=function(t){return t=Math.pow(.7,arguments.length?t:1),new Vt(this.h,this.s,this.l/t)},qt.darker=function(t){return t=Math.pow(.7,arguments.length?t:1),new Vt(this.h,this.s,t*this.l)},qt.rgb=function(){return Gt(this.h,this.s,this.l)},a.hcl=Wt;var Yt=Wt.prototype=new Ht;function $t(t,e,n){return isNaN(t)&&(t=0),isNaN(e)&&(e=0),new Xt(n,Math.cos(t*=Dt)*e,Math.sin(t)*e)}function Xt(t,e,n){return this instanceof Xt?(this.l=+t,this.a=+e,void(this.b=+n)):arguments.length<2?t instanceof Xt?new Xt(t.l,t.a,t.b):t instanceof Wt?$t(t.h,t.c,t.l):de((t=oe(t)).r,t.g,t.b):new Xt(t,e,n)}Yt.brighter=function(t){return new Wt(this.h,this.c,Math.min(100,this.l+Kt*(arguments.length?t:1)))},Yt.darker=function(t){return new Wt(this.h,this.c,Math.max(0,this.l-Kt*(arguments.length?t:1)))},Yt.rgb=function(){return $t(this.h,this.c,this.l).rgb()},a.lab=Xt;var Kt=18,Zt=.95047,Jt=1,Qt=1.08883,te=Xt.prototype=new Ht;function ee(t,e,n){var r=(t+16)/116,i=r+e/500,a=r-n/200;return new oe(ae(3.2404542*(i=re(i)*Zt)-1.5371385*(r=re(r)*Jt)-.4985314*(a=re(a)*Qt)),ae(-.969266*i+1.8760108*r+.041556*a),ae(.0556434*i-.2040259*r+1.0572252*a))}function ne(t,e,n){return t>0?new Wt(Math.atan2(n,e)*Rt,Math.sqrt(e*e+n*n),t):new Wt(NaN,NaN,t)}function re(t){return t>.206893034?t*t*t:(t-4/29)/7.787037}function ie(t){return t>.008856?Math.pow(t,1/3):7.787037*t+4/29}function ae(t){return Math.round(255*(t<=.00304?12.92*t:1.055*Math.pow(t,1/2.4)-.055))}function oe(t,e,n){return this instanceof oe?(this.r=~~t,this.g=~~e,void(this.b=~~n)):arguments.length<2?t instanceof oe?new oe(t.r,t.g,t.b):fe(""+t,oe,Gt):new oe(t,e,n)}function se(t){return new oe(t>>16,t>>8&255,255&t)}function le(t){return se(t)+""}te.brighter=function(t){return new Xt(Math.min(100,this.l+Kt*(arguments.length?t:1)),this.a,this.b)},te.darker=function(t){return new Xt(Math.max(0,this.l-Kt*(arguments.length?t:1)),this.a,this.b)},te.rgb=function(){return ee(this.l,this.a,this.b)},a.rgb=oe;var ce=oe.prototype=new Ht;function ue(t){return t<16?"0"+Math.max(0,t).toString(16):Math.min(255,t).toString(16)}function fe(t,e,n){var r,i,a,o=0,s=0,l=0;if(r=/([a-z]+)\((.*)\)/.exec(t=t.toLowerCase()))switch(i=r[2].split(","),r[1]){case"hsl":return n(parseFloat(i[0]),parseFloat(i[1])/100,parseFloat(i[2])/100);case"rgb":return e(ge(i[0]),ge(i[1]),ge(i[2]))}return(a=ve.get(t))?e(a.r,a.g,a.b):(null==t||"#"!==t.charAt(0)||isNaN(a=parseInt(t.slice(1),16))||(4===t.length?(o=(3840&a)>>4,o|=o>>4,s=240&a,s|=s>>4,l=15&a,l|=l<<4):7===t.length&&(o=(16711680&a)>>16,s=(65280&a)>>8,l=255&a)),e(o,s,l))}function he(t,e,n){var r,i,a=Math.min(t/=255,e/=255,n/=255),o=Math.max(t,e,n),s=o-a,l=(o+a)/2;return s?(i=l<.5?s/(o+a):s/(2-o-a),r=t==o?(e-n)/s+(e0&&l<1?0:r),new Vt(r,i,l)}function de(t,e,n){var r=ie((.4124564*(t=pe(t))+.3575761*(e=pe(e))+.1804375*(n=pe(n)))/Zt),i=ie((.2126729*t+.7151522*e+.072175*n)/Jt);return Xt(116*i-16,500*(r-i),200*(i-ie((.0193339*t+.119192*e+.9503041*n)/Qt)))}function pe(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function ge(t){var e=parseFloat(t);return"%"===t.charAt(t.length-1)?Math.round(2.55*e):e}ce.brighter=function(t){t=Math.pow(.7,arguments.length?t:1);var e=this.r,n=this.g,r=this.b,i=30;return e||n||r?(e&&e=200&&e<300||304===e){try{t=n.call(i,c)}catch(ma){return void o.error.call(i,ma)}o.load.call(i,t)}else o.error.call(i,c)}return self.XDomainRequest&&!("withCredentials"in c)&&/^(http(s)?:)?\/\//.test(t)&&(c=new XDomainRequest),"onload"in c?c.onload=c.onerror=f:c.onreadystatechange=function(){c.readyState>3&&f()},c.onprogress=function(t){var e=a.event;a.event=t;try{o.progress.call(i,c)}finally{a.event=e}},i.header=function(t,e){return t=(t+"").toLowerCase(),arguments.length<2?l[t]:(null==e?delete l[t]:l[t]=e+"",i)},i.mimeType=function(t){return arguments.length?(e=null==t?null:t+"",i):e},i.responseType=function(t){return arguments.length?(u=t,i):u},i.response=function(t){return n=t,i},["get","post"].forEach((function(t){i[t]=function(){return i.send.apply(i,[t].concat(s(arguments)))}})),i.send=function(n,r,a){if(2===arguments.length&&"function"===typeof r&&(a=r,r=null),c.open(n,t,!0),null==e||"accept"in l||(l.accept=e+",*/*"),c.setRequestHeader)for(var s in l)c.setRequestHeader(s,l[s]);return null!=e&&c.overrideMimeType&&c.overrideMimeType(e),null!=u&&(c.responseType=u),null!=a&&i.on("error",a).on("load",(function(t){a(null,t)})),o.beforesend.call(i,c),c.send(null==r?null:r),i},i.abort=function(){return c.abort(),i},a.rebind(i,o,"on"),null==r?i:i.get(function(t){return 1===t.length?function(e,n){t(null==e?n:null)}:t}(r))}ve.forEach((function(t,e){ve.set(t,se(e))})),a.functor=me,a.xhr=ye(R),a.dsv=function(t,e){var n=new RegExp('["'+t+"\n]"),r=t.charCodeAt(0);function i(t,n,r){arguments.length<3&&(r=n,n=null);var i=be(t,e,null==n?a:o(n),r);return i.row=function(t){return arguments.length?i.response(null==(n=t)?a:o(t)):n},i}function a(t){return i.parse(t.responseText)}function o(t){return function(e){return i.parse(e.responseText,t)}}function s(e){return e.map(l).join(t)}function l(t){return n.test(t)?'"'+t.replace(/\"/g,'""')+'"':t}return i.parse=function(t,e){var n;return i.parseRows(t,(function(t,r){if(n)return n(t,r-1);var i=function(e){for(var n={},r=t.length,i=0;i=l)return o;if(i)return i=!1,a;var e=c;if(34===t.charCodeAt(e)){for(var n=e;n++24?(isFinite(e)&&(clearTimeout(ke),ke=setTimeout(Ae,e)),_e=0):(_e=1,Te(Ae))}function Se(){for(var t=Date.now(),e=xe;e;)t>=e.t&&e.c(t-e.t)&&(e.c=null),e=e.n;return t}function Ee(){for(var t,e=xe,n=1/0;e;)e.c?(e.t1&&(e=t[a[o-2]],n=t[a[o-1]],r=t[s],(n[0]-e[0])*(r[1]-e[1])-(n[1]-e[1])*(r[0]-e[0])<=0);)--o;a[o++]=s}return a.slice(0,o)}function Oe(t,e){return t[0]-e[0]||t[1]-e[1]}a.timer=function(){Me.apply(this,arguments)},a.timer.flush=function(){Se(),Ee()},a.round=function(t,e){return e?Math.round(t*(e=Math.pow(10,e)))/e:Math.round(t)},a.geom={},a.geom.hull=function(t){var e=Ce,n=Pe;if(arguments.length)return r(t);function r(t){if(t.length<3)return[];var r,i=me(e),a=me(n),o=t.length,s=[],l=[];for(r=0;r=0;--r)d.push(t[s[c[r]][2]]);for(r=+f;rEt)s=s.L;else{if(!((i=a-Ke(s,o))>Et)){r>-Et?(e=s.P,n=s):i>-Et?(e=s,n=s.N):e=n=s;break}if(!s.R){e=s;break}s=s.R}var l=Ge(t);if(Fe.insert(e,l),e||n){if(e===n)return en(e),n=Ge(e.site),Fe.insert(l,n),l.edge=n.edge=an(e.site,l.site),tn(e),void tn(n);if(n){en(e),en(n);var c=e.site,u=c.x,f=c.y,h=t.x-u,d=t.y-f,p=n.site,g=p.x-u,v=p.y-f,m=2*(h*v-d*g),y=h*h+d*d,b=g*g+v*v,x={x:(v*y-d*b)/m+u,y:(h*b-g*y)/m+f};sn(n.edge,c,p,x),l.edge=an(c,t,null,x),n.edge=an(t,p,null,x),tn(e),tn(n)}else l.edge=an(e.site,l.site)}}function Xe(t,e){var n=t.site,r=n.x,i=n.y,a=i-e;if(!a)return r;var o=t.P;if(!o)return-1/0;var s=(n=o.site).x,l=n.y,c=l-e;if(!c)return s;var u=s-r,f=1/a-1/c,h=u/c;return f?(-h+Math.sqrt(h*h-2*f*(u*u/(-2*c)-l+c/2+i-a/2)))/f+r:(r+s)/2}function Ke(t,e){var n=t.N;if(n)return Xe(n,e);var r=t.site;return r.y===e?r.x:1/0}function Ze(t){this.site=t,this.edges=[]}function Je(t,e){return e.angle-t.angle}function Qe(){un(this),this.x=this.y=this.arc=this.site=this.cy=null}function tn(t){var e=t.P,n=t.N;if(e&&n){var r=e.site,i=t.site,a=n.site;if(r!==a){var o=i.x,s=i.y,l=r.x-o,c=r.y-s,u=a.x-o,f=2*(l*(v=a.y-s)-c*u);if(!(f>=-Ct)){var h=l*l+c*c,d=u*u+v*v,p=(v*h-c*d)/f,g=(l*d-u*h)/f,v=g+s,m=Ve.pop()||new Qe;m.arc=t,m.site=i,m.x=p+o,m.y=v+Math.sqrt(p*p+g*g),m.cy=v,t.circle=m;for(var y=null,b=Ue._;b;)if(m.y=s)return;if(h>p){if(a){if(a.y>=c)return}else a={x:v,y:l};n={x:v,y:c}}else{if(a){if(a.y1)if(h>p){if(a){if(a.y>=c)return}else a={x:(l-i)/r,y:l};n={x:(c-i)/r,y:c}}else{if(a){if(a.y=s)return}else a={x:o,y:r*o+i};n={x:s,y:r*s+i}}else{if(a){if(a.x0)){if(e/=h,h<0){if(e0){if(e>f)return;e>u&&(u=e)}if(e=i-l,h||!(e<0)){if(e/=h,h<0){if(e>f)return;e>u&&(u=e)}else if(h>0){if(e0)){if(e/=d,d<0){if(e0){if(e>f)return;e>u&&(u=e)}if(e=a-c,d||!(e<0)){if(e/=d,d<0){if(e>f)return;e>u&&(u=e)}else if(d>0){if(e0&&(t.a={x:l+u*h,y:c+u*d}),f<1&&(t.b={x:l+f*h,y:c+f*d}),t}}}}}),l=o.length;l--;)(!nn(e=o[l],t)||!s(e)||_(e.a.x-e.b.x)Et||_(i-n)>Et)&&(s.splice(o,0,new ln(on(a.site,u,_(r-f)Et?{x:f,y:_(e-f)Et?{x:_(n-p)Et?{x:h,y:_(e-h)Et?{x:_(n-d)=n&&c.x<=i&&c.y>=r&&c.y<=o?[[n,o],[i,o],[i,r],[n,r]]:[]).point=t[s]})),e}function s(t){return t.map((function(t,e){return{x:Math.round(r(t,e)/Et)*Et,y:Math.round(i(t,e)/Et)*Et,i:e}}))}return o.links=function(t){return pn(s(t)).edges.filter((function(t){return t.l&&t.r})).map((function(e){return{source:t[e.l.i],target:t[e.r.i]}}))},o.triangles=function(t){var e=[];return pn(s(t)).cells.forEach((function(n,r){for(var i,a,o,s,l=n.site,c=n.edges.sort(Je),u=-1,f=c.length,h=c[f-1].edge,d=h.l===l?h.r:h.l;++ua&&(i=e.slice(a,i),s[o]?s[o]+=i:s[++o]=i),(n=n[0])===(r=r[0])?s[o]?s[o]+=r:s[++o]=r:(s[++o]=null,l.push({i:o,x:_n(n,r)})),a=Mn.lastIndex;return ag&&(g=l.x),l.y>v&&(v=l.y),c.push(l.x),u.push(l.y);else for(f=0;fg&&(g=b),x>v&&(v=x),c.push(b),u.push(x)}var w=g-d,k=v-p;function T(t,e,n,r,i,a,o,s){if(!isNaN(n)&&!isNaN(r))if(t.leaf){var l=t.x,c=t.y;if(null!=l)if(_(l-n)+_(c-r)<.01)M(t,e,n,r,i,a,o,s);else{var u=t.point;t.x=t.y=t.point=null,M(t,u,l,c,i,a,o,s),M(t,e,n,r,i,a,o,s)}else t.x=n,t.y=r,t.point=e}else M(t,e,n,r,i,a,o,s)}function M(t,e,n,r,i,a,o,s){var l=.5*(i+o),c=.5*(a+s),u=n>=l,f=r>=c,h=f<<1|u;t.leaf=!1,u?i=l:o=l,f?a=c:s=c,T(t=t.nodes[h]||(t.nodes[h]={leaf:!0,nodes:[],point:null,x:null,y:null}),e,n,r,i,a,o,s)}w>k?v=p+w:g=d+k;var A={leaf:!0,nodes:[],point:null,x:null,y:null,add:function(t){T(A,t,+m(t,++f),+y(t,f),d,p,g,v)},visit:function(t){bn(t,A,d,p,g,v)},find:function(t){return function(t,e,n,r,i,a,o){var s,l=1/0;return function t(c,u,f,h,d){if(!(u>a||f>o||h=w)<<1|e>=x,k=_+4;_=0&&!(n=a.interpolators[r](t,e)););return n}function Sn(t,e){var n,r=[],i=[],a=t.length,o=e.length,s=Math.min(t.length,e.length);for(n=0;n=1)return 1;var e=t*t,n=e*t;return 4*(t<.5?n:3*(t-e)+n-.75)}function zn(t){return 1-Math.cos(t*It)}function Nn(t){return Math.pow(2,10*(t-1))}function jn(t){return 1-Math.sqrt(1-t*t)}function Fn(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375}function Bn(t,e){return e-=t,function(n){return Math.round(t+e*n)}}function Un(t){var e,n,r,i=[t.a,t.b],a=[t.c,t.d],o=Vn(i),s=Hn(i,a),l=Vn(((e=a)[0]+=(r=-s)*(n=i)[0],e[1]+=r*n[1],e))||0;i[0]*a[1]=0?t.slice(0,n):t,i=n>=0?t.slice(n+1):"in";return r=Cn.get(r)||En,i=Pn.get(i)||R,e=i(r.apply(null,o.call(arguments,1))),function(t){return t<=0?0:t>=1?1:e(t)}},a.interpolateHcl=function(t,e){t=a.hcl(t),e=a.hcl(e);var n=t.h,r=t.c,i=t.l,o=e.h-n,s=e.c-r,l=e.l-i;return isNaN(s)&&(s=0,r=isNaN(r)?e.c:r),isNaN(o)?(o=0,n=isNaN(n)?e.h:n):o>180?o-=360:o<-180&&(o+=360),function(t){return $t(n+o*t,r+s*t,i+l*t)+""}},a.interpolateHsl=function(t,e){t=a.hsl(t),e=a.hsl(e);var n=t.h,r=t.s,i=t.l,o=e.h-n,s=e.s-r,l=e.l-i;return isNaN(s)&&(s=0,r=isNaN(r)?e.s:r),isNaN(o)?(o=0,n=isNaN(n)?e.h:n):o>180?o-=360:o<-180&&(o+=360),function(t){return Gt(n+o*t,r+s*t,i+l*t)+""}},a.interpolateLab=function(t,e){t=a.lab(t),e=a.lab(e);var n=t.l,r=t.a,i=t.b,o=e.l-n,s=e.a-r,l=e.b-i;return function(t){return ee(n+o*t,r+s*t,i+l*t)+""}},a.interpolateRound=Bn,a.transform=function(t){var e=l.createElementNS(a.ns.prefix.svg,"g");return(a.transform=function(t){if(null!=t){e.setAttribute("transform",t);var n=e.transform.baseVal.consolidate()}return new Un(n?n.matrix:qn)})(t)},Un.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};var qn={a:1,b:0,c:0,d:1,e:0,f:0};function Gn(t){return t.length?t.pop()+",":""}function Wn(t,e){var n=[],r=[];return t=a.transform(t),e=a.transform(e),function(t,e,n,r){if(t[0]!==e[0]||t[1]!==e[1]){var i=n.push("translate(",null,",",null,")");r.push({i:i-4,x:_n(t[0],e[0])},{i:i-2,x:_n(t[1],e[1])})}else(e[0]||e[1])&&n.push("translate("+e+")")}(t.translate,e.translate,n,r),function(t,e,n,r){t!==e?(t-e>180?e+=360:e-t>180&&(t+=360),r.push({i:n.push(Gn(n)+"rotate(",null,")")-2,x:_n(t,e)})):e&&n.push(Gn(n)+"rotate("+e+")")}(t.rotate,e.rotate,n,r),function(t,e,n,r){t!==e?r.push({i:n.push(Gn(n)+"skewX(",null,")")-2,x:_n(t,e)}):e&&n.push(Gn(n)+"skewX("+e+")")}(t.skew,e.skew,n,r),function(t,e,n,r){if(t[0]!==e[0]||t[1]!==e[1]){var i=n.push(Gn(n)+"scale(",null,",",null,")");r.push({i:i-4,x:_n(t[0],e[0])},{i:i-2,x:_n(t[1],e[1])})}else 1===e[0]&&1===e[1]||n.push(Gn(n)+"scale("+e+")")}(t.scale,e.scale,n,r),t=e=null,function(t){for(var e,i=-1,a=r.length;++i0?n=e:(t.c=null,t.t=NaN,t=null,l.end({type:"end",alpha:n=0})):e>0&&(l.start({type:"start",alpha:n=e}),t=Me(s.tick)),s):n},s.start=function(){var t,e,n,a=m.length,l=y.length,u=c[0],p=c[1];for(t=0;t=0;)n.push(i[r])}function sr(t,e){for(var n=[t],r=[];null!=(t=n.pop());)if(r.push(t),(a=t.children)&&(i=a.length))for(var i,a,o=-1;++o=0;)o.push(u=c[l]),u.parent=a,u.depth=a.depth+1;n&&(a.value=0),a.children=c}else n&&(a.value=+n.call(r,a,a.depth)||0),delete a.children;return sr(i,(function(e){var r,i;t&&(r=e.children)&&r.sort(t),n&&(i=e.parent)&&(i.value+=e.value)})),s}return r.sort=function(e){return arguments.length?(t=e,r):t},r.children=function(t){return arguments.length?(e=t,r):e},r.value=function(t){return arguments.length?(n=t,r):n},r.revalue=function(t){return n&&(or(t,(function(t){t.children&&(t.value=0)})),sr(t,(function(t){var e;t.children||(t.value=+n.call(r,t,t.depth)||0),(e=t.parent)&&(e.value+=t.value)}))),t},r},a.layout.partition=function(){var t=a.layout.hierarchy(),e=[1,1];function n(t,e,r,i){var a=t.children;if(t.x=e,t.y=t.depth*i,t.dx=r,t.dy=i,a&&(o=a.length)){var o,s,l,c=-1;for(r=t.value?r/t.value:0;++cs&&(s=r),o.push(r)}for(n=0;ni&&(r=n,i=e);return r}function wr(t){return t.reduce(_r,0)}function _r(t,e){return t+e[1]}function kr(t,e){return Tr(t,Math.ceil(Math.log(e.length)/Math.LN2+1))}function Tr(t,e){for(var n=-1,r=+t[0],i=(t[1]-r)/e,a=[];++n<=e;)a[n]=i*n+r;return a}function Mr(t){return[a.min(t),a.max(t)]}function Ar(t,e){return t.value-e.value}function Sr(t,e){var n=t._pack_next;t._pack_next=e,e._pack_prev=t,e._pack_next=n,n._pack_prev=e}function Er(t,e){t._pack_next=e,e._pack_prev=t}function Cr(t,e){var n=e.x-t.x,r=e.y-t.y,i=t.r+e.r;return.999*i*i>n*n+r*r}function Pr(t){if((e=t.children)&&(l=e.length)){var e,n,r,i,a,o,s,l,c=1/0,u=-1/0,f=1/0,h=-1/0;if(e.forEach(Lr),(n=e[0]).x=-n.r,n.y=0,b(n),l>1&&((r=e[1]).x=r.r,r.y=0,b(r),l>2))for(Dr(n,r,i=e[2]),b(i),Sr(n,i),n._pack_prev=i,Sr(i,r),r=n._pack_next,a=3;a0)for(o=-1;++o=f[0]&&l<=f[1]&&((s=c[a.bisect(h,l,1,p)-1]).y+=g,s.push(i[o]));return c}return i.value=function(t){return arguments.length?(e=t,i):e},i.range=function(t){return arguments.length?(n=me(t),i):n},i.bins=function(t){return arguments.length?(r="number"===typeof t?function(e){return Tr(e,t)}:me(t),i):r},i.frequency=function(e){return arguments.length?(t=!!e,i):t},i},a.layout.pack=function(){var t,e=a.layout.hierarchy().sort(Ar),n=0,r=[1,1];function i(i,a){var o=e.call(this,i,a),s=o[0],l=r[0],c=r[1],u=null==t?Math.sqrt:"function"===typeof t?t:function(){return t};if(s.x=s.y=0,sr(s,(function(t){t.r=+u(t.value)})),sr(s,Pr),n){var f=n*(t?1:Math.max(2*s.r/l,2*s.r/c))/2;sr(s,(function(t){t.r+=f})),sr(s,Pr),sr(s,(function(t){t.r-=f}))}return Ir(s,l/2,c/2,t?1:1/Math.max(2*s.r/l,2*s.r/c)),o}return i.size=function(t){return arguments.length?(r=t,i):r},i.radius=function(e){return arguments.length?(t=null==e||"function"===typeof e?e:+e,i):t},i.padding=function(t){return arguments.length?(n=+t,i):n},ar(i,e)},a.layout.tree=function(){var t=a.layout.hierarchy().sort(null).value(null),e=Rr,n=[1,1],r=null;function i(i,a){var c=t.call(this,i,a),u=c[0],f=function(t){for(var e,n={A:null,children:[t]},r=[n];null!=(e=r.pop());)for(var i,a=e.children,o=0,s=a.length;od.x&&(d=t),t.depth>p.depth&&(p=t)}));var g=e(h,d)/2-h.x,v=n[0]/(d.x+e(d,h)/2+g),m=n[1]/(p.depth||1);or(u,(function(t){t.x=(t.x+g)*v,t.y=t.depth*m}))}return c}function o(t){var n=t.children,r=t.parent.children,i=t.i?r[t.i-1]:null;if(n.length){!function(t){for(var e,n=0,r=0,i=t.children,a=i.length;--a>=0;)(e=i[a]).z+=n,e.m+=n,n+=e.s+(r+=e.c)}(t);var a=(n[0].z+n[n.length-1].z)/2;i?(t.z=i.z+e(t._,i._),t.m=t.z-a):t.z=a}else i&&(t.z=i.z+e(t._,i._));t.parent.A=function(t,n,r){if(n){for(var i,a=t,o=t,s=n,l=a.parent.children[0],c=a.m,u=o.m,f=s.m,h=l.m;s=Nr(s),a=zr(a),s&&a;)l=zr(l),(o=Nr(o)).a=t,(i=s.z+f-a.z-c+e(s._,a._))>0&&(jr(Fr(s,t,r),t,i),c+=i,u+=i),f+=s.m,c+=a.m,h+=l.m,u+=o.m;s&&!Nr(o)&&(o.t=s,o.m+=f-u),a&&!zr(l)&&(l.t=a,l.m+=c-h,r=t)}return r}(t,i,t.parent.A||r[0])}function s(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function l(t){t.x*=n[0],t.y=t.depth*n[1]}return i.separation=function(t){return arguments.length?(e=t,i):e},i.size=function(t){return arguments.length?(r=null==(n=t)?l:null,i):r?null:n},i.nodeSize=function(t){return arguments.length?(r=null==(n=t)?null:l,i):r?n:null},ar(i,t)},a.layout.cluster=function(){var t=a.layout.hierarchy().sort(null).value(null),e=Rr,n=[1,1],r=!1;function i(i,o){var s,l=t.call(this,i,o),c=l[0],u=0;sr(c,(function(t){var n=t.children;n&&n.length?(t.x=function(t){return t.reduce((function(t,e){return t+e.x}),0)/t.length}(n),t.y=function(t){return 1+a.max(t,(function(t){return t.y}))}(n)):(t.x=s?u+=e(t,s):0,t.y=0,s=t)}));var f=Br(c),h=Ur(c),d=f.x-e(f,h)/2,p=h.x+e(h,f)/2;return sr(c,r?function(t){t.x=(t.x-c.x)*n[0],t.y=(c.y-t.y)*n[1]}:function(t){t.x=(t.x-d)/(p-d)*n[0],t.y=(1-(c.y?t.y/c.y:1))*n[1]}),l}return i.separation=function(t){return arguments.length?(e=t,i):e},i.size=function(t){return arguments.length?(r=null==(n=t),i):r?null:n},i.nodeSize=function(t){return arguments.length?(r=null!=(n=t),i):r?n:null},ar(i,t)},a.layout.treemap=function(){var t,e=a.layout.hierarchy(),n=Math.round,r=[1,1],i=null,o=Hr,s=!1,l="squarify",c=.5*(1+Math.sqrt(5));function u(t,e){for(var n,r,i=-1,a=t.length;++i0;)s.push(n=c[i-1]),s.area+=n.area,"squarify"!==l||(r=d(s,g))<=h?(c.pop(),h=r):(s.area-=s.pop().area,p(s,g,a,!1),g=Math.min(a.dx,a.dy),s.length=s.area=0,h=1/0);s.length&&(p(s,g,a,!0),s.length=s.area=0),e.forEach(f)}}function h(t){var e=t.children;if(e&&e.length){var n,r=o(t),i=e.slice(),a=[];for(u(i,r.dx*r.dy/t.value),a.area=0;n=i.pop();)a.push(n),a.area+=n.area,null!=n.z&&(p(a,n.z?r.dx:r.dy,r,!i.length),a.length=a.area=0);e.forEach(h)}}function d(t,e){for(var n,r=t.area,i=0,a=1/0,o=-1,s=t.length;++oi&&(i=n));return e*=e,(r*=r)?Math.max(e*i*c/r,r/(e*a*c)):1/0}function p(t,e,r,i){var a,o=-1,s=t.length,l=r.x,c=r.y,u=e?n(t.area/e):0;if(e==r.dx){for((i||u>r.dy)&&(u=r.dy);++or.dx)&&(u=r.dx);++o1);return t+e*n*Math.sqrt(-2*Math.log(i)/i)}},logNormal:function(){var t=a.random.normal.apply(a,arguments);return function(){return Math.exp(t())}},bates:function(t){var e=a.random.irwinHall(t);return function(){return e()/t}},irwinHall:function(t){return function(){for(var e=0,n=0;n2?Kr:Wr,l=r?$n:Yn;return i=o(t,e,l,n),a=o(e,t,l,An),s}function s(t){return i(t)}return s.invert=function(t){return a(t)},s.domain=function(e){return arguments.length?(t=e.map(Number),o()):t},s.range=function(t){return arguments.length?(e=t,o()):e},s.rangeRound=function(t){return s.range(t).interpolate(Bn)},s.clamp=function(t){return arguments.length?(r=t,o()):r},s.interpolate=function(t){return arguments.length?(n=t,o()):n},s.ticks=function(e){return ei(t,e)},s.tickFormat=function(e,n){return d3_scale_linearTickFormat(t,e,n)},s.nice=function(e){return Qr(t,e),o()},s.copy=function(){return Zr(t,e,n,r)},o()}function Jr(t,e){return a.rebind(t,e,"range","rangeRound","interpolate","clamp")}function Qr(t,e){return Yr(t,$r(ti(t,e)[2])),Yr(t,$r(ti(t,e)[2])),t}function ti(t,e){null==e&&(e=10);var n=qr(t),r=n[1]-n[0],i=Math.pow(10,Math.floor(Math.log(r/e)/Math.LN10)),a=e/r*i;return a<=.15?i*=10:a<=.35?i*=5:a<=.75&&(i*=2),n[0]=Math.ceil(n[0]/i)*i,n[1]=Math.floor(n[1]/i)*i+.5*i,n[2]=i,n}function ei(t,e){return a.range.apply(a,ti(t,e))}function ni(t,e,n,r){function i(t){return(n?Math.log(t<0?0:t):-Math.log(t>0?0:-t))/Math.log(e)}function a(t){return n?Math.pow(e,t):-Math.pow(e,-t)}function o(e){return t(i(e))}return o.invert=function(e){return a(t.invert(e))},o.domain=function(e){return arguments.length?(n=e[0]>=0,t.domain((r=e.map(Number)).map(i)),o):r},o.base=function(n){return arguments.length?(e=+n,t.domain(r.map(i)),o):e},o.nice=function(){var e=Yr(r.map(i),n?Math:ri);return t.domain(e),r=e.map(a),o},o.ticks=function(){var t=qr(r),o=[],s=t[0],l=t[1],c=Math.floor(i(s)),u=Math.ceil(i(l)),f=e%1?2:e;if(isFinite(u-c)){if(n){for(;c0;h--)o.push(a(c)*h);for(c=0;o[c]l;u--);o=o.slice(c,u)}return o},o.copy=function(){return ni(t.copy(),e,n,r)},Jr(o,t)}a.scale.linear=function(){return Zr([0,1],[0,1],An,!1)},a.scale.log=function(){return ni(a.scale.linear().domain([0,1]),10,!0,[1,10])};var ri={floor:function(t){return-Math.ceil(-t)},ceil:function(t){return-Math.floor(-t)}};function ii(t,e,n){var r=ai(e),i=ai(1/e);function a(e){return t(r(e))}return a.invert=function(e){return i(t.invert(e))},a.domain=function(e){return arguments.length?(t.domain((n=e.map(Number)).map(r)),a):n},a.ticks=function(t){return ei(n,t)},a.tickFormat=function(t,e){return d3_scale_linearTickFormat(n,t,e)},a.nice=function(t){return a.domain(Qr(n,t))},a.exponent=function(o){return arguments.length?(r=ai(e=o),i=ai(1/e),t.domain(n.map(r)),a):e},a.copy=function(){return ii(t.copy(),e,n)},Jr(a,t)}function ai(t){return function(e){return e<0?-Math.pow(-e,t):Math.pow(e,t)}}function oi(t,e){var n,r,i;function o(i){return r[((n.get(i)||("range"===e.t?n.set(i,t.push(i)):NaN))-1)%r.length]}function s(e,n){return a.range(t.length).map((function(t){return e+n*t}))}return o.domain=function(r){if(!arguments.length)return t;t=[],n=new T;for(var i,a=-1,s=r.length;++a0?n[r-1]:t[0],rf?0:1;if(c=Ot)return l(c,d)+(s?l(s,1-d):"")+"Z";var p,g,v,m,y,b,x,w,_,k,T,M,A=0,S=0,E=[];if((m=(+o.apply(this,arguments)||0)/2)&&(v=r===vi?Math.sqrt(s*s+c*c):+r.apply(this,arguments),d||(S*=-1),c&&(S=zt(v/c*Math.sin(m))),s&&(A=zt(v/s*Math.sin(m)))),c){y=c*Math.cos(u+S),b=c*Math.sin(u+S),x=c*Math.cos(f-S),w=c*Math.sin(f-S);var C=Math.abs(f-u-2*S)<=Pt?0:1;if(S&&_i(y,b,x,w)===d^C){var P=(u+f)/2;y=c*Math.cos(P),b=c*Math.sin(P),x=w=null}}else y=b=0;if(s){_=s*Math.cos(f-A),k=s*Math.sin(f-A),T=s*Math.cos(u+A),M=s*Math.sin(u+A);var L=Math.abs(u-f+2*A)<=Pt?0:1;if(A&&_i(_,k,T,M)===1-d^L){var O=(u+f)/2;_=s*Math.cos(O),k=s*Math.sin(O),T=M=null}}else _=k=0;if(h>Et&&(p=Math.min(Math.abs(c-s)/2,+n.apply(this,arguments)))>.001){g=s0?0:1}function ki(t,e,n,r,i){var a=t[0]-e[0],o=t[1]-e[1],s=(i?r:-r)/Math.sqrt(a*a+o*o),l=s*o,c=-s*a,u=t[0]+l,f=t[1]+c,h=e[0]+l,d=e[1]+c,p=(u+h)/2,g=(f+d)/2,v=h-u,m=d-f,y=v*v+m*m,b=n-r,x=u*d-h*f,w=(m<0?-1:1)*Math.sqrt(Math.max(0,b*b*y-x*x)),_=(x*m-v*w)/y,k=(-x*v-m*w)/y,T=(x*m+v*w)/y,M=(-x*v+m*w)/y,A=_-p,S=k-g,E=T-p,C=M-g;return A*A+S*S>E*E+C*C&&(_=T,k=M),[[_-l,k-c],[_*n/b,k*n/b]]}function Ti(){return!0}function Mi(t){var e=Ce,n=Pe,r=Ti,i=Si,a=i.key,o=.7;function s(a){var s,l=[],c=[],u=-1,f=a.length,h=me(e),d=me(n);function p(){l.push("M",i(t(c),o))}for(;++u1&&i.push("H",r[0]),i.join("")},"step-before":Ci,"step-after":Pi,basis:Ii,"basis-open":function(t){if(t.length<4)return Si(t);for(var e,n=[],r=-1,i=t.length,a=[0],o=[0];++r<3;)e=t[r],a.push(e[0]),o.push(e[1]);for(n.push(Di(Ni,a)+","+Di(Ni,o)),--r;++r9&&(i=3*e/Math.sqrt(i),o[s]=i*n,o[s+1]=i*r);for(s=-1;++s<=l;)i=(t[Math.min(l,s+1)][0]-t[Math.max(0,s-1)][0])/(6*(1+o[s]*o[s])),a.push([i||0,o[s]*i||0]);return a}(t))}});function Si(t){return t.length>1?t.join("L"):t+"Z"}function Ei(t){return t.join("L")+"Z"}function Ci(t){for(var e=0,n=t.length,r=t[0],i=[r[0],",",r[1]];++e1){s=e[1],a=t[l],l++,r+="C"+(i[0]+o[0])+","+(i[1]+o[1])+","+(a[0]-s[0])+","+(a[1]-s[1])+","+a[0]+","+a[1];for(var c=2;cPt)+",1 "+e}function l(t,e,n,r){return"Q 0,0 "+r}return a.radius=function(t){return arguments.length?(n=me(t),a):n},a.source=function(e){return arguments.length?(t=me(e),a):t},a.target=function(t){return arguments.length?(e=me(t),a):e},a.startAngle=function(t){return arguments.length?(r=me(t),a):r},a.endAngle=function(t){return arguments.length?(i=me(t),a):i},a},a.svg.diagonal=function(){var t=Hi,e=Vi,n=Gi;function r(r,i){var a=t.call(this,r,i),o=e.call(this,r,i),s=(a.y+o.y)/2,l=[a,{x:a.x,y:s},{x:o.x,y:s},o];return"M"+(l=l.map(n))[0]+"C"+l[1]+" "+l[2]+" "+l[3]}return r.source=function(e){return arguments.length?(t=me(e),r):t},r.target=function(t){return arguments.length?(e=me(t),r):e},r.projection=function(t){return arguments.length?(n=t,r):n},r},a.svg.diagonal.radial=function(){var t=a.svg.diagonal(),e=Gi,n=t.projection;return t.projection=function(t){return arguments.length?n(function(t){return function(){var e=t.apply(this,arguments),n=e[0],r=e[1]-It;return[n*Math.cos(r),n*Math.sin(r)]}}(e=t)):e},t},a.svg.symbol=function(){var t=Yi,e=Wi;function n(n,r){return(Xi.get(t.call(this,n,r))||$i)(e.call(this,n,r))}return n.type=function(e){return arguments.length?(t=me(e),n):t},n.size=function(t){return arguments.length?(e=me(t),n):e},n};var Xi=a.map({circle:$i,cross:function(t){var e=Math.sqrt(t/5)/2;return"M"+-3*e+","+-e+"H"+-e+"V"+-3*e+"H"+e+"V"+-e+"H"+3*e+"V"+e+"H"+e+"V"+3*e+"H"+-e+"V"+e+"H"+-3*e+"Z"},diamond:function(t){var e=Math.sqrt(t/(2*Zi)),n=e*Zi;return"M0,"+-e+"L"+n+",0 0,"+e+" "+-n+",0Z"},square:function(t){var e=Math.sqrt(t)/2;return"M"+-e+","+-e+"L"+e+","+-e+" "+e+","+e+" "+-e+","+e+"Z"},"triangle-down":function(t){var e=Math.sqrt(t/Ki),n=e*Ki/2;return"M0,"+n+"L"+e+","+-n+" "+-e+","+-n+"Z"},"triangle-up":function(t){var e=Math.sqrt(t/Ki),n=e*Ki/2;return"M0,"+-n+"L"+e+","+n+" "+-e+","+n+"Z"}});a.svg.symbolTypes=Xi.keys();var Ki=Math.sqrt(3),Zi=Math.tan(30*Dt);Z.transition=function(t){for(var e,n,r=ea||++ia,i=sa(t),a=[],o=na||{time:Date.now(),ease:Rn,delay:0,duration:250},s=-1,l=this.length;++s0;)c[--h].call(t,o);if(a>=1)return f.event&&f.event.end.call(t,t.__data__,e),--u.count?delete u[r]:delete t[n],1}f||(a=i.time,o=Me((function(t){var e=f.delay;if(o.t=e+a,e<=t)return h(t-e);o.c=h}),0,a),f=u[r]={tween:new T,time:a,timer:o,delay:i.delay,duration:i.duration,ease:i.ease,index:e},i=null,++u.count)}ra.call=Z.call,ra.empty=Z.empty,ra.node=Z.node,ra.size=Z.size,a.transition=function(t,e){return t&&t.transition?ea?t.transition(e):t:a.selection().transition(t)},a.transition.prototype=ra,ra.select=function(t){var e,n,r,i=this.id,a=this.namespace,o=[];t=J(t);for(var s=-1,l=this.length;++srect,.s>rect").attr("width",o[1]-o[0])}function g(t){t.select(".extent").attr("y",s[0]),t.selectAll(".extent,.e>rect,.w>rect").attr("height",s[1]-s[0])}function v(){var f,v,m=this,y=a.select(a.event.target),b=n.of(m,arguments),x=a.select(m),w=y.datum(),_=!/^(n|s)$/.test(w)&&r,k=!/^(e|w)$/.test(w)&&i,T=y.classed("extent"),M=Tt(m),A=a.mouse(m),S=a.select(u(m)).on("keydown.brush",(function(){32==a.event.keyCode&&(T||(f=null,A[0]-=o[1],A[1]-=s[1],T=2),H())})).on("keyup.brush",(function(){32==a.event.keyCode&&2==T&&(A[0]+=o[1],A[1]+=s[1],T=0,H())}));if(a.event.changedTouches?S.on("touchmove.brush",P).on("touchend.brush",O):S.on("mousemove.brush",P).on("mouseup.brush",O),x.interrupt().selectAll("*").interrupt(),T)A[0]=o[0]-A[0],A[1]=s[0]-A[1];else if(w){var E=+/w$/.test(w),C=+/^n/.test(w);v=[o[1-E]-A[0],s[1-C]-A[1]],A[0]=o[E],A[1]=s[C]}else a.event.altKey&&(f=A.slice());function P(){var t=a.mouse(m),e=!1;v&&(t[0]+=v[0],t[1]+=v[1]),T||(a.event.altKey?(f||(f=[(o[0]+o[1])/2,(s[0]+s[1])/2]),A[0]=o[+(t[0]>>1;e.dtype||(e.dtype="array"),"string"===typeof e.dtype?p=new(f(e.dtype))(v):e.dtype&&(p=e.dtype,Array.isArray(p)&&(p.length=v));for(var m=0;mn||s>1073741824){for(var h=0;hn+i||A>r+i||S=P)&&o!==s){var l=y[a];void 0===s&&(s=l.length);for(var c=o;c=v&&f<=_&&h>=m&&h<=k&&L.push(u)}var d=b[a],p=d[4*o+0],g=d[4*o+1],x=d[4*o+2],w=d[4*o+3],T=function(t,e){for(var n=null,r=0;null===n;)if(n=t[4*e+r],++r>t.length)return null;return n}(d,o+1),E=.5*i,O=a+1;e(n,r,E,O,p,g||x||w||T),e(n,r+E,E,O,g,x||w||T),e(n+E,r,E,O,x,w||T),e(n+E,r+E,E,O,w,T)}}(0,0,1,0,0,1),L},p;function E(t,e,n){for(var r=1,i=.5,a=.5,o=.5,s=0;s0){e+=Math.abs(o(t[0]));for(var n=1;n2){for(l=0;l=0))throw new Error("precision must be a positive number");var n=Math.pow(10,e||0);return Math.round(t*n)/n},e.radiansToLength=u,e.lengthToRadians=f,e.lengthToDegrees=function(t,e){return h(f(t,e))},e.bearingToAzimuth=function(t){var e=t%360;return e<0&&(e+=360),e},e.radiansToDegrees=h,e.degreesToRadians=function(t){return t%360*Math.PI/180},e.convertLength=function(t,e,n){if(void 0===e&&(e="kilometers"),void 0===n&&(n="kilometers"),!(t>=0))throw new Error("length must be a positive number");return u(f(t,e),n)},e.convertArea=function(t,n,r){if(void 0===n&&(n="meters"),void 0===r&&(r="kilometers"),!(t>=0))throw new Error("area must be a positive number");var i=e.areaFactors[n];if(!i)throw new Error("invalid original units");var a=e.areaFactors[r];if(!a)throw new Error("invalid final units");return t/i*a},e.isNumber=d,e.isObject=function(t){return!!t&&t.constructor===Object},e.validateBBox=function(t){if(!t)throw new Error("bbox is required");if(!Array.isArray(t))throw new Error("bbox must be an Array");if(4!==t.length&&6!==t.length)throw new Error("bbox must be an Array of 4 or 6 numbers");t.forEach((function(t){if(!d(t))throw new Error("bbox must only contain numbers")}))},e.validateId=function(t){if(!t)throw new Error("id is required");if(-1===["string","number"].indexOf(typeof t))throw new Error("id must be a number or a string")}},60302:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(23132);function i(t,e,n){if(null!==t)for(var r,a,o,s,l,c,u,f,h=0,d=0,p=t.type,g="FeatureCollection"===p,v="Feature"===p,m=g?t.features.length:1,y=0;yc||d>u||p>f)return l=i,c=n,u=d,f=p,void(o=0);var g=r.lineString([l,i],t.properties);if(!1===e(g,n,a,p,o))return!1;o++,l=i}))&&void 0}}}))}function u(t,e){if(!t)throw new Error("geojson is required");l(t,(function(t,n,i){if(null!==t.geometry){var a=t.geometry.type,o=t.geometry.coordinates;switch(a){case"LineString":if(!1===e(t,n,i,0,0))return!1;break;case"Polygon":for(var s=0;st[0]&&(e[0]=t[0]),e[1]>t[1]&&(e[1]=t[1]),e[2]=0))throw new Error("precision must be a positive number");var n=Math.pow(10,e||0);return Math.round(t*n)/n},e.radiansToLength=u,e.lengthToRadians=f,e.lengthToDegrees=function(t,e){return h(f(t,e))},e.bearingToAzimuth=function(t){var e=t%360;return e<0&&(e+=360),e},e.radiansToDegrees=h,e.degreesToRadians=function(t){return t%360*Math.PI/180},e.convertLength=function(t,e,n){if(void 0===e&&(e="kilometers"),void 0===n&&(n="kilometers"),!(t>=0))throw new Error("length must be a positive number");return u(f(t,e),n)},e.convertArea=function(t,n,r){if(void 0===n&&(n="meters"),void 0===r&&(r="kilometers"),!(t>=0))throw new Error("area must be a positive number");var i=e.areaFactors[n];if(!i)throw new Error("invalid original units");var a=e.areaFactors[r];if(!a)throw new Error("invalid final units");return t/i*a},e.isNumber=d,e.isObject=function(t){return!!t&&t.constructor===Object},e.validateBBox=function(t){if(!t)throw new Error("bbox is required");if(!Array.isArray(t))throw new Error("bbox must be an Array");if(4!==t.length&&6!==t.length)throw new Error("bbox must be an Array of 4 or 6 numbers");t.forEach((function(t){if(!d(t))throw new Error("bbox must only contain numbers")}))},e.validateId=function(t){if(!t)throw new Error("id is required");if(-1===["string","number"].indexOf(typeof t))throw new Error("id must be a number or a string")}},27138:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(94228);function i(t,e,n){if(null!==t)for(var r,a,o,s,l,c,u,f,h=0,d=0,p=t.type,g="FeatureCollection"===p,v="Feature"===p,m=g?t.features.length:1,y=0;yc||d>u||p>f)return l=i,c=n,u=d,f=p,void(o=0);var g=r.lineString([l,i],t.properties);if(!1===e(g,n,a,p,o))return!1;o++,l=i}))&&void 0}}}))}function u(t,e){if(!t)throw new Error("geojson is required");l(t,(function(t,n,i){if(null!==t.geometry){var a=t.geometry.type,o=t.geometry.coordinates;switch(a){case"LineString":if(!1===e(t,n,i,0,0))return!1;break;case"Polygon":for(var s=0;s=0))throw new Error("precision must be a positive number");var n=Math.pow(10,e||0);return Math.round(t*n)/n},e.radiansToLength=u,e.lengthToRadians=f,e.lengthToDegrees=function(t,e){return h(f(t,e))},e.bearingToAzimuth=function(t){var e=t%360;return e<0&&(e+=360),e},e.radiansToDegrees=h,e.degreesToRadians=function(t){return t%360*Math.PI/180},e.convertLength=function(t,e,n){if(void 0===e&&(e="kilometers"),void 0===n&&(n="kilometers"),!(t>=0))throw new Error("length must be a positive number");return u(f(t,e),n)},e.convertArea=function(t,n,r){if(void 0===n&&(n="meters"),void 0===r&&(r="kilometers"),!(t>=0))throw new Error("area must be a positive number");var i=e.areaFactors[n];if(!i)throw new Error("invalid original units");var a=e.areaFactors[r];if(!a)throw new Error("invalid final units");return t/i*a},e.isNumber=d,e.isObject=function(t){return!!t&&t.constructor===Object},e.validateBBox=function(t){if(!t)throw new Error("bbox is required");if(!Array.isArray(t))throw new Error("bbox must be an Array");if(4!==t.length&&6!==t.length)throw new Error("bbox must be an Array of 4 or 6 numbers");t.forEach((function(t){if(!d(t))throw new Error("bbox must only contain numbers")}))},e.validateId=function(t){if(!t)throw new Error("id is required");if(-1===["string","number"].indexOf(typeof t))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(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(64182);function i(t,e,n){if(null!==t)for(var r,a,o,s,l,c,u,f,h=0,d=0,p=t.type,g="FeatureCollection"===p,v="Feature"===p,m=g?t.features.length:1,y=0;yc||d>u||p>f)return l=i,c=n,u=d,f=p,void(o=0);var g=r.lineString([l,i],t.properties);if(!1===e(g,n,a,p,o))return!1;o++,l=i}))&&void 0}}}))}function u(t,e){if(!t)throw new Error("geojson is required");l(t,(function(t,n,i){if(null!==t.geometry){var a=t.geometry.type,o=t.geometry.coordinates;switch(a){case"LineString":if(!1===e(t,n,i,0,0))return!1;break;case"Polygon":for(var s=0;si&&(i=t[o]),t[o]1?n-1:0),i=1;i1?n-1:0),i=1;i1?n-1:0),i=1;i1?n-1:0),i=1;it.length)&&(n=t.length),t.substring(n-e.length,n)===e}var v="",m="",y="",b="",x={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:"},w=10;function _(t){var e=Object.keys(t),n=Object.create(Object.getPrototypeOf(t));return e.forEach((function(e){n[e]=t[e]})),Object.defineProperty(n,"message",{value:t.message}),n}function k(t){return d(t,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function T(t,e,n){var i="",a="",o=0,s="",l=!1,c=k(t),u=c.split("\n"),f=k(e).split("\n"),d=0,p="";if("strictEqual"===n&&"object"===h(t)&&"object"===h(e)&&null!==t&&null!==e&&(n="strictEqualObject"),1===u.length&&1===f.length&&u[0]!==f[0]){var _=u[0].length+f[0].length;if(_<=w){if(("object"!==h(t)||null===t)&&("object"!==h(e)||null===e)&&(0!==t||0!==e))return"".concat(x[n],"\n\n")+"".concat(u[0]," !== ").concat(f[0],"\n")}else if("strictEqualObject"!==n&&_<(r.stderr&&r.stderr.isTTY?r.stderr.columns:80)){for(;u[0][d]===f[0][d];)d++;d>2&&(p="\n ".concat(function(t,e){if(e=Math.floor(e),0==t.length||0==e)return"";var n=t.length*e;for(e=Math.floor(Math.log(e)/Math.log(2));e;)t+=t,e--;return t+t.substring(0,n-t.length)}(" ",d),"^"),d=0)}}for(var T=u[u.length-1],M=f[f.length-1];T===M&&(d++<2?s="\n ".concat(T).concat(s):i=T,u.pop(),f.pop(),0!==u.length&&0!==f.length);)T=u[u.length-1],M=f[f.length-1];var A=Math.max(u.length,f.length);if(0===A){var S=c.split("\n");if(S.length>30)for(S[26]="".concat(v,"...").concat(b);S.length>27;)S.pop();return"".concat(x.notIdentical,"\n\n").concat(S.join("\n"),"\n")}d>3&&(s="\n".concat(v,"...").concat(b).concat(s),l=!0),""!==i&&(s="\n ".concat(i).concat(s),i="");var E=0,C=x[n]+"\n".concat(m,"+ actual").concat(b," ").concat(y,"- expected").concat(b),P=" ".concat(v,"...").concat(b," Lines skipped");for(d=0;d1&&d>2&&(L>4?(a+="\n".concat(v,"...").concat(b),l=!0):L>3&&(a+="\n ".concat(f[d-2]),E++),a+="\n ".concat(f[d-1]),E++),o=d,i+="\n".concat(y,"-").concat(b," ").concat(f[d]),E++;else if(f.length1&&d>2&&(L>4?(a+="\n".concat(v,"...").concat(b),l=!0):L>3&&(a+="\n ".concat(u[d-2]),E++),a+="\n ".concat(u[d-1]),E++),o=d,a+="\n".concat(m,"+").concat(b," ").concat(u[d]),E++;else{var O=f[d],I=u[d],D=I!==O&&(!g(I,",")||I.slice(0,-1)!==O);D&&g(O,",")&&O.slice(0,-1)===I&&(D=!1,I+=","),D?(L>1&&d>2&&(L>4?(a+="\n".concat(v,"...").concat(b),l=!0):L>3&&(a+="\n ".concat(u[d-2]),E++),a+="\n ".concat(u[d-1]),E++),o=d,a+="\n".concat(m,"+").concat(b," ").concat(I),i+="\n".concat(y,"-").concat(b," ").concat(O),E+=2):(a+=i,i="",1!==L&&0!==d||(a+="\n ".concat(I),E++))}if(E>20&&d30)for(w[26]="".concat(v,"...").concat(b);w.length>27;)w.pop();n=1===w.length?o(this,f(e).call(this,"".concat(g," ").concat(w[0]))):o(this,f(e).call(this,"".concat(g,"\n\n").concat(w.join("\n"),"\n")))}else{var M=k(c),A="",S=x[a];"notDeepEqual"===a||"notEqual"===a?(M="".concat(x[a],"\n\n").concat(M)).length>1024&&(M="".concat(M.slice(0,1021),"...")):(A="".concat(k(u)),M.length>512&&(M="".concat(M.slice(0,509),"...")),A.length>512&&(A="".concat(A.slice(0,509),"...")),"deepEqual"===a||"equal"===a?M="".concat(S,"\n\n").concat(M,"\n\nshould equal\n\n"):A=" ".concat(a," ").concat(A)),n=o(this,f(e).call(this,"".concat(M).concat(A)))}return Error.stackTraceLimit=d,n.generatedMessage=!i,Object.defineProperty(s(n),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),n.code="ERR_ASSERTION",n.actual=c,n.expected=u,n.operator=a,Error.captureStackTrace&&Error.captureStackTrace(s(n),l),n.stack,n.name="AssertionError",o(n)}var n,l,c;return function(t,e){if("function"!==typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&u(t,e)}(e,t),n=e,l=[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:d.custom,value:function(t,e){return d(this,function(t){for(var e=1;e2?"one of ".concat(e," ").concat(t.slice(0,n-1).join(", "),", or ")+t[n-1]:2===n?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}return"of ".concat(e," ").concat(String(t))}u("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError),u("ERR_INVALID_ARG_TYPE",(function(t,e,i){var a,o,l,c;if(void 0===s&&(s=n(32791)),s("string"===typeof t,"'name' must be a string"),"string"===typeof e&&(o="not ",e.substr(!l||l<0?0:+l,o.length)===o)?(a="must not be",e=e.replace(/^not /,"")):a="must be",function(t,e,n){return(void 0===n||n>t.length)&&(n=t.length),t.substring(n-e.length,n)===e}(t," argument"))c="The ".concat(t," ").concat(a," ").concat(f(e,"type"));else{var u=function(t,e,n){return"number"!==typeof n&&(n=0),!(n+e.length>t.length)&&-1!==t.indexOf(e,n)}(t,".")?"property":"argument";c='The "'.concat(t,'" ').concat(u," ").concat(a," ").concat(f(e,"type"))}return c+=". Received type ".concat(r(i))}),TypeError),u("ERR_INVALID_ARG_VALUE",(function(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"is invalid";void 0===l&&(l=n(43827));var i=l.inspect(e);return i.length>128&&(i="".concat(i.slice(0,128),"...")),"The argument '".concat(t,"' ").concat(r,". Received ").concat(i)}),TypeError,RangeError),u("ERR_INVALID_RETURN_VALUE",(function(t,e,n){var i;return i=n&&n.constructor&&n.constructor.name?"instance of ".concat(n.constructor.name):"type ".concat(r(n)),"Expected ".concat(t,' to be returned from the "').concat(e,'"')+" function but got ".concat(i,".")}),TypeError),u("ERR_MISSING_ARGS",(function(){for(var t=arguments.length,e=new Array(t),r=0;r0,"At least one arg needs to be specified");var i="The ",a=e.length;switch(e=e.map((function(t){return'"'.concat(t,'"')})),a){case 1:i+="".concat(e[0]," argument");break;case 2:i+="".concat(e[0]," and ").concat(e[1]," arguments");break;default:i+=e.slice(0,a-1).join(", "),i+=", and ".concat(e[a-1]," arguments")}return"".concat(i," must be specified")}),TypeError),t.exports.codes=c},74061:function(t,e,n){"use strict";function r(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=[],r=!0,i=!1,a=void 0;try{for(var o,s=t[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!e||n.length!==e);r=!0);}catch(l){i=!0,a=l}finally{try{r||null==s.return||s.return()}finally{if(i)throw a}}return n}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function i(t){return i="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i(t)}var a=void 0!==/a/g.flags,o=function(t){var e=[];return t.forEach((function(t){return e.push(t)})),e},s=function(t){var e=[];return t.forEach((function(t,n){return e.push([n,t])})),e},l=Object.is?Object.is:n(64003),c=Object.getOwnPropertySymbols?Object.getOwnPropertySymbols:function(){return[]},u=Number.isNaN?Number.isNaN:n(15567);function f(t){return t.call.bind(t)}var h=f(Object.prototype.hasOwnProperty),d=f(Object.prototype.propertyIsEnumerable),p=f(Object.prototype.toString),g=n(43827).types,v=g.isAnyArrayBuffer,m=g.isArrayBufferView,y=g.isDate,b=g.isMap,x=g.isRegExp,w=g.isSet,_=g.isNativeError,k=g.isBoxedPrimitive,T=g.isNumberObject,M=g.isStringObject,A=g.isBooleanObject,S=g.isBigIntObject,E=g.isSymbolObject,C=g.isFloat32Array,P=g.isFloat64Array;function L(t){if(0===t.length||t.length>10)return!0;for(var e=0;e57)return!0}return 10===t.length&&t>=Math.pow(2,32)}function O(t){return Object.keys(t).filter(L).concat(c(t).filter(Object.prototype.propertyIsEnumerable.bind(t)))}function I(t,e){if(t===e)return 0;for(var n=t.length,r=e.length,i=0,a=Math.min(n,r);i0?o-4:o;for(n=0;n>16&255,c[u++]=e>>8&255,c[u++]=255&e;return 2===s&&(e=r[t.charCodeAt(n)]<<2|r[t.charCodeAt(n+1)]>>4,c[u++]=255&e),1===s&&(e=r[t.charCodeAt(n)]<<10|r[t.charCodeAt(n+1)]<<4|r[t.charCodeAt(n+2)]>>2,c[u++]=e>>8&255,c[u++]=255&e),c},e.fromByteArray=function(t){for(var e,r=t.length,i=r%3,a=[],o=16383,s=0,l=r-i;sl?l:s+o));return 1===i?(e=t[r-1],a.push(n[e>>2]+n[e<<4&63]+"==")):2===i&&(e=(t[r-2]<<8)+t[r-1],a.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"=")),a.join("")};for(var n=[],r=[],i="undefined"!==typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0,s=a.length;o0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");return-1===n&&(n=e),[n,n===e?0:4-n%4]}function c(t,e,r){for(var i,a,o=[],s=e;s>18&63]+n[a>>12&63]+n[a>>6&63]+n[63&a]);return o.join("")}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63},91358:function(t){"use strict";function e(t,e,n,r,i){for(var a=i+1;r<=i;){var o=r+i>>>1,s=t[o];(void 0!==n?n(s,e):s-e)>=0?(a=o,i=o-1):r=o+1}return a}function n(t,e,n,r,i){for(var a=i+1;r<=i;){var o=r+i>>>1,s=t[o];(void 0!==n?n(s,e):s-e)>0?(a=o,i=o-1):r=o+1}return a}function r(t,e,n,r,i){for(var a=r-1;r<=i;){var o=r+i>>>1,s=t[o];(void 0!==n?n(s,e):s-e)<0?(a=o,r=o+1):i=o-1}return a}function i(t,e,n,r,i){for(var a=r-1;r<=i;){var o=r+i>>>1,s=t[o];(void 0!==n?n(s,e):s-e)<=0?(a=o,r=o+1):i=o-1}return a}function a(t,e,n,r,i){for(;r<=i;){var a=r+i>>>1,o=t[a],s=void 0!==n?n(o,e):o-e;if(0===s)return a;s<=0?r=a+1:i=a-1}return-1}function o(t,e,n,r,i,a){return"function"===typeof n?a(t,e,n,void 0===r?0:0|r,void 0===i?t.length-1:0|i):a(t,e,void 0,void 0===n?0:0|n,void 0===r?t.length-1:0|r)}t.exports={ge:function(t,n,r,i,a){return o(t,n,r,i,a,e)},gt:function(t,e,r,i,a){return o(t,e,r,i,a,n)},lt:function(t,e,n,i,a){return o(t,e,n,i,a,r)},le:function(t,e,n,r,a){return o(t,e,n,r,a,i)},eq:function(t,e,n,r,i){return o(t,e,n,r,i,a)}}},13547:function(t,e){"use strict";function n(t){var e=32;return(t&=-t)&&e--,65535&t&&(e-=16),16711935&t&&(e-=8),252645135&t&&(e-=4),858993459&t&&(e-=2),1431655765&t&&(e-=1),e}e.INT_BITS=32,e.INT_MAX=2147483647,e.INT_MIN=-1<<31,e.sign=function(t){return(t>0)-(t<0)},e.abs=function(t){var e=t>>31;return(t^e)-e},e.min=function(t,e){return e^(t^e)&-(t65535)<<4,e|=n=((t>>>=e)>255)<<3,e|=n=((t>>>=n)>15)<<2,(e|=n=((t>>>=n)>3)<<1)|(t>>>=n)>>1},e.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},e.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},e.countTrailingZeros=n,e.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,1+(t|=t>>>16)},e.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},e.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var r=new Array(256);!function(t){for(var e=0;e<256;++e){var n=e,r=e,i=7;for(n>>>=1;n;n>>>=1)r<<=1,r|=1&n,--i;t[e]=r<>>8&255]<<16|r[t>>>16&255]<<8|r[t>>>24&255]},e.interleave2=function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},e.deinterleave2=function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},e.interleave3=function(t,e,n){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(n=1227133513&((n=3272356035&((n=251719695&((n=4278190335&((n&=1023)|n<<16))|n<<8))|n<<4))|n<<2))<<2},e.deinterleave3=function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},e.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>n(t)+1}},44781:function(t,e,n){"use strict";var r=n(53435);t.exports=function(t,e){e||(e={});var n,o,s,l,c,u,f,h,d,p,g,v=null==e.cutoff?.25:e.cutoff,m=null==e.radius?8:e.radius,y=e.channel||0;if(ArrayBuffer.isView(t)||Array.isArray(t)){if(!e.width||!e.height)throw Error("For raw data width and height should be provided by options");n=e.width,o=e.height,l=t,u=e.stride?e.stride:Math.floor(t.length/n/o)}else window.HTMLCanvasElement&&t instanceof window.HTMLCanvasElement?(f=(h=t).getContext("2d"),n=h.width,o=h.height,l=(d=f.getImageData(0,0,n,o)).data,u=4):window.CanvasRenderingContext2D&&t instanceof window.CanvasRenderingContext2D?(f=t,n=(h=t.canvas).width,o=h.height,l=(d=f.getImageData(0,0,n,o)).data,u=4):window.ImageData&&t instanceof window.ImageData&&(d=t,n=t.width,o=t.height,l=d.data,u=4);if(s=Math.max(n,o),window.Uint8ClampedArray&&l instanceof window.Uint8ClampedArray||window.Uint8Array&&l instanceof window.Uint8Array)for(c=l,l=Array(n*o),p=0,g=c.length;p-1?i(n):n}},68222:function(t,e,n){"use strict";var r=n(77575),i=n(68318),a=i("%Function.prototype.apply%"),o=i("%Function.prototype.call%"),s=i("%Reflect.apply%",!0)||r.call(o,a),l=i("%Object.getOwnPropertyDescriptor%",!0),c=i("%Object.defineProperty%",!0),u=i("%Math.max%");if(c)try{c({},"a",{value:1})}catch(h){c=null}t.exports=function(t){var e=s(r,o,arguments);return l&&c&&l(e,"length").configurable&&c(e,"length",{value:1+u(0,t.length-(arguments.length-1))}),e};var f=function(){return s(r,a,arguments)};c?c(t.exports,"apply",{value:f}):t.exports.apply=f},53435:function(t){t.exports=function(t,e,n){return en?n:t:te?e:t}},6475:function(t,e,n){"use strict";var r=n(53435);function i(t,e){null==e&&(e=!0);var n=t[0],i=t[1],a=t[2],o=t[3];return null==o&&(o=e?1:255),e&&(n*=255,i*=255,a*=255,o*=255),16777216*(n=255&r(n,0,255))+((i=255&r(i,0,255))<<16)+((a=255&r(a,0,255))<<8)+(o=255&r(o,0,255))}t.exports=i,t.exports.to=i,t.exports.from=function(t,e){var n=(t=+t)>>>24,r=(16711680&t)>>>16,i=(65280&t)>>>8,a=255&t;return!1===e?[n,r,i,a]:[n/255,r/255,i/255,a/255]}},76857:function(t){"use strict";t.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(t,e,n){"use strict";var r=n(36652),i=n(53435),a=n(90660);t.exports=function(t,e){"float"!==e&&e||(e="array"),"uint"===e&&(e="uint8"),"uint_clamped"===e&&(e="uint8_clamped");var n=new(a(e))(4),o="uint8"!==e&&"uint8_clamped"!==e;return t.length&&"string"!==typeof t||((t=r(t))[0]/=255,t[1]/=255,t[2]/=255),function(t){return t instanceof Uint8Array||t instanceof Uint8ClampedArray||!!(Array.isArray(t)&&(t[0]>1||0===t[0])&&(t[1]>1||0===t[1])&&(t[2]>1||0===t[2])&&(!t[3]||t[3]>1))}(t)?(n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=null!=t[3]?t[3]:255,o&&(n[0]/=255,n[1]/=255,n[2]/=255,n[3]/=255),n):(o?(n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=null!=t[3]?t[3]:1):(n[0]=i(Math.floor(255*t[0]),0,255),n[1]=i(Math.floor(255*t[1]),0,255),n[2]=i(Math.floor(255*t[2]),0,255),n[3]=null==t[3]?255:i(Math.floor(255*t[3]),0,255)),n)}},90736:function(t,e,n){"use strict";var r=n(76857),i=n(10973),a=n(46775);t.exports=function(t){var e,s,l=[],c=1;if("string"===typeof t)if(r[t])l=r[t].slice(),s="rgb";else if("transparent"===t)c=0,s="rgb",l=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(t)){var u=t.slice(1);c=1,(d=u.length)<=4?(l=[parseInt(u[0]+u[0],16),parseInt(u[1]+u[1],16),parseInt(u[2]+u[2],16)],4===d&&(c=parseInt(u[3]+u[3],16)/255)):(l=[parseInt(u[0]+u[1],16),parseInt(u[2]+u[3],16),parseInt(u[4]+u[5],16)],8===d&&(c=parseInt(u[6]+u[7],16)/255)),l[0]||(l[0]=0),l[1]||(l[1]=0),l[2]||(l[2]=0),s="rgb"}else if(e=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(t)){var f=e[1],h="rgb"===f;s=u=f.replace(/a$/,"");var d="cmyk"===u?4:"gray"===u?1:3;l=e[2].trim().split(/\s*,\s*/).map((function(t,e){if(/%$/.test(t))return e===d?parseFloat(t)/100:"rgb"===u?255*parseFloat(t)/100:parseFloat(t);if("h"===u[e]){if(/deg$/.test(t))return parseFloat(t);if(void 0!==o[t])return o[t]}return parseFloat(t)})),f===u&&l.push(1),c=h||void 0===l[d]?1:l[d],l=l.slice(0,d)}else t.length>10&&/[0-9](?:\s|\/)/.test(t)&&(l=t.match(/([0-9]+)/g).map((function(t){return parseFloat(t)})),s=t.match(/([a-z])/gi).join("").toLowerCase());else if(isNaN(t))if(i(t)){var p=a(t.r,t.red,t.R,null);null!==p?(s="rgb",l=[p,a(t.g,t.green,t.G),a(t.b,t.blue,t.B)]):(s="hsl",l=[a(t.h,t.hue,t.H),a(t.s,t.saturation,t.S),a(t.l,t.lightness,t.L,t.b,t.brightness)]),c=a(t.a,t.alpha,t.opacity,1),null!=t.opacity&&(c/=100)}else(Array.isArray(t)||n.g.ArrayBuffer&&ArrayBuffer.isView&&ArrayBuffer.isView(t))&&(l=[t[0],t[1],t[2]],s="rgb",c=4===t.length?t[3]:1);else s="rgb",l=[t>>>16,(65280&t)>>>8,255&t];return{space:s,values:l,alpha:c}};var o={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}},36652:function(t,e,n){"use strict";var r=n(90736),i=n(80009),a=n(53435);t.exports=function(t){var e,n=r(t);return n.space?((e=Array(3))[0]=a(n.values[0],0,255),e[1]=a(n.values[1],0,255),e[2]=a(n.values[2],0,255),"h"===n.space[0]&&(e=i.rgb(e)),e.push(a(n.alpha,0,1)),e):[]}},80009:function(t,e,n){"use strict";var r=n(6866);t.exports={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(t){var e,n,r,i,a,o=t[0]/360,s=t[1]/100,l=t[2]/100;if(0===s)return[a=255*l,a,a];e=2*l-(n=l<.5?l*(1+s):l+s-l*s),i=[0,0,0];for(var c=0;c<3;c++)(r=o+1/3*-(c-1))<0?r++:r>1&&r--,a=6*r<1?e+6*(n-e)*r:2*r<1?n:3*r<2?e+(n-e)*(2/3-r)*6:e,i[c]=255*a;return i}},r.hsl=function(t){var e,n,r=t[0]/255,i=t[1]/255,a=t[2]/255,o=Math.min(r,i,a),s=Math.max(r,i,a),l=s-o;return s===o?e=0:r===s?e=(i-a)/l:i===s?e=2+(a-r)/l:a===s&&(e=4+(r-i)/l),(e=Math.min(60*e,360))<0&&(e+=360),n=(o+s)/2,[e,100*(s===o?0:n<=.5?l/(s+o):l/(2-s-o)),100*n]}},6866:function(t){"use strict";t.exports={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}},24138:function(t){t.exports={AFG:"afghan",ALA:"\\b\\wland",ALB:"albania",DZA:"algeria",ASM:"^(?=.*americ).*samoa",AND:"andorra",AGO:"angola",AIA:"anguill?a",ATA:"antarctica",ATG:"antigua",ARG:"argentin",ARM:"armenia",ABW:"^(?!.*bonaire).*\\baruba",AUS:"australia",AUT:"^(?!.*hungary).*austria|\\baustri.*\\bemp",AZE:"azerbaijan",BHS:"bahamas",BHR:"bahrain",BGD:"bangladesh|^(?=.*east).*paki?stan",BRB:"barbados",BLR:"belarus|byelo",BEL:"^(?!.*luxem).*belgium",BLZ:"belize|^(?=.*british).*honduras",BEN:"benin|dahome",BMU:"bermuda",BTN:"bhutan",BOL:"bolivia",BES:"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\bbes.?islands",BIH:"herzegovina|bosnia",BWA:"botswana|bechuana",BVT:"bouvet",BRA:"brazil",IOT:"british.?indian.?ocean",BRN:"brunei",BGR:"bulgaria",BFA:"burkina|\\bfaso|upper.?volta",BDI:"burundi",CPV:"verde",KHM:"cambodia|kampuchea|khmer",CMR:"cameroon",CAN:"canada",CYM:"cayman",CAF:"\\bcentral.african.republic",TCD:"\\bchad",CHL:"\\bchile",CHN:"^(?!.*\\bmac)(?!.*\\bhong)(?!.*\\btai)(?!.*\\brep).*china|^(?=.*peo)(?=.*rep).*china",CXR:"christmas",CCK:"\\bcocos|keeling",COL:"colombia",COM:"comoro",COG:"^(?!.*\\bdem)(?!.*\\bd[\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\bcongo",COK:"\\bcook",CRI:"costa.?rica",CIV:"ivoire|ivory",HRV:"croatia",CUB:"\\bcuba",CUW:"^(?!.*bonaire).*\\bcura(c|\xe7)ao",CYP:"cyprus",CSK:"czechoslovakia",CZE:"^(?=.*rep).*czech|czechia|bohemia",COD:"\\bdem.*congo|congo.*\\bdem|congo.*\\bd[\\.]?r|\\bd[\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc",DNK:"denmark",DJI:"djibouti",DMA:"dominica(?!n)",DOM:"dominican.rep",ECU:"ecuador",EGY:"egypt",SLV:"el.?salvador",GNQ:"guine.*eq|eq.*guine|^(?=.*span).*guinea",ERI:"eritrea",EST:"estonia",ETH:"ethiopia|abyssinia",FLK:"falkland|malvinas",FRO:"faroe|faeroe",FJI:"fiji",FIN:"finland",FRA:"^(?!.*\\bdep)(?!.*martinique).*france|french.?republic|\\bgaul",GUF:"^(?=.*french).*guiana",PYF:"french.?polynesia|tahiti",ATF:"french.?southern",GAB:"gabon",GMB:"gambia",GEO:"^(?!.*south).*georgia",DDR:"german.?democratic.?republic|democratic.?republic.*germany|east.germany",DEU:"^(?!.*east).*germany|^(?=.*\\bfed.*\\brep).*german",GHA:"ghana|gold.?coast",GIB:"gibraltar",GRC:"greece|hellenic|hellas",GRL:"greenland",GRD:"grenada",GLP:"guadeloupe",GUM:"\\bguam",GTM:"guatemala",GGY:"guernsey",GIN:"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea",GNB:"bissau|^(?=.*portu).*guinea",GUY:"guyana|british.?guiana",HTI:"haiti",HMD:"heard.*mcdonald",VAT:"holy.?see|vatican|papal.?st",HND:"^(?!.*brit).*honduras",HKG:"hong.?kong",HUN:"^(?!.*austr).*hungary",ISL:"iceland",IND:"india(?!.*ocea)",IDN:"indonesia",IRN:"\\biran|persia",IRQ:"\\biraq|mesopotamia",IRL:"(^ireland)|(^republic.*ireland)",IMN:"^(?=.*isle).*\\bman",ISR:"israel",ITA:"italy",JAM:"jamaica",JPN:"japan",JEY:"jersey",JOR:"jordan",KAZ:"kazak",KEN:"kenya|british.?east.?africa|east.?africa.?prot",KIR:"kiribati",PRK:"^(?=.*democrat|people|north|d.*p.*.r).*\\bkorea|dprk|korea.*(d.*p.*r)",KWT:"kuwait",KGZ:"kyrgyz|kirghiz",LAO:"\\blaos?\\b",LVA:"latvia",LBN:"lebanon",LSO:"lesotho|basuto",LBR:"liberia",LBY:"libya",LIE:"liechtenstein",LTU:"lithuania",LUX:"^(?!.*belg).*luxem",MAC:"maca(o|u)",MDG:"madagascar|malagasy",MWI:"malawi|nyasa",MYS:"malaysia",MDV:"maldive",MLI:"\\bmali\\b",MLT:"\\bmalta",MHL:"marshall",MTQ:"martinique",MRT:"mauritania",MUS:"mauritius",MYT:"\\bmayotte",MEX:"\\bmexic",FSM:"fed.*micronesia|micronesia.*fed",MCO:"monaco",MNG:"mongolia",MNE:"^(?!.*serbia).*montenegro",MSR:"montserrat",MAR:"morocco|\\bmaroc",MOZ:"mozambique",MMR:"myanmar|burma",NAM:"namibia",NRU:"nauru",NPL:"nepal",NLD:"^(?!.*\\bant)(?!.*\\bcarib).*netherlands",ANT:"^(?=.*\\bant).*(nether|dutch)",NCL:"new.?caledonia",NZL:"new.?zealand",NIC:"nicaragua",NER:"\\bniger(?!ia)",NGA:"nigeria",NIU:"niue",NFK:"norfolk",MNP:"mariana",NOR:"norway",OMN:"\\boman|trucial",PAK:"^(?!.*east).*paki?stan",PLW:"palau",PSE:"palestin|\\bgaza|west.?bank",PAN:"panama",PNG:"papua|new.?guinea",PRY:"paraguay",PER:"peru",PHL:"philippines",PCN:"pitcairn",POL:"poland",PRT:"portugal",PRI:"puerto.?rico",QAT:"qatar",KOR:"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\bkorea(?!.*d.*p.*r)",MDA:"moldov|b(a|e)ssarabia",REU:"r(e|\xe9)union",ROU:"r(o|u|ou)mania",RUS:"\\brussia|soviet.?union|u\\.?s\\.?s\\.?r|socialist.?republics",RWA:"rwanda",BLM:"barth(e|\xe9)lemy",SHN:"helena",KNA:"kitts|\\bnevis",LCA:"\\blucia",MAF:"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)",SPM:"miquelon",VCT:"vincent",WSM:"^(?!.*amer).*samoa",SMR:"san.?marino",STP:"\\bs(a|\xe3)o.?tom(e|\xe9)",SAU:"\\bsa\\w*.?arabia",SEN:"senegal",SRB:"^(?!.*monte).*serbia",SYC:"seychell",SLE:"sierra",SGP:"singapore",SXM:"^(?!.*martin)(?!.*saba).*maarten",SVK:"^(?!.*cze).*slovak",SVN:"slovenia",SLB:"solomon",SOM:"somali",ZAF:"south.africa|s\\\\..?africa",SGS:"south.?georgia|sandwich",SSD:"\\bs\\w*.?sudan",ESP:"spain",LKA:"sri.?lanka|ceylon",SDN:"^(?!.*\\bs(?!u)).*sudan",SUR:"surinam|dutch.?guiana",SJM:"svalbard",SWZ:"swaziland",SWE:"sweden",CHE:"switz|swiss",SYR:"syria",TWN:"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china",TJK:"tajik",THA:"thailand|\\bsiam",MKD:"macedonia|fyrom",TLS:"^(?=.*leste).*timor|^(?=.*east).*timor",TGO:"togo",TKL:"tokelau",TON:"tonga",TTO:"trinidad|tobago",TUN:"tunisia",TUR:"turkey",TKM:"turkmen",TCA:"turks",TUV:"tuvalu",UGA:"uganda",UKR:"ukrain",ARE:"emirates|^u\\.?a\\.?e\\.?$|united.?arab.?em",GBR:"united.?kingdom|britain|^u\\.?k\\.?$",TZA:"tanzania",USA:"united.?states\\b(?!.*islands)|\\bu\\.?s\\.?a\\.?\\b|^\\s*u\\.?s\\.?\\b(?!.*islands)",UMI:"minor.?outlying.?is",URY:"uruguay",UZB:"uzbek",VUT:"vanuatu|new.?hebrides",VEN:"venezuela",VNM:"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam",VGB:"^(?=.*\\bu\\.?\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin",VIR:"^(?=.*\\bu\\.?\\s?s).*virgin|^(?=.*states).*virgin",WLF:"futuna|wallis",ESH:"western.sahara",YEM:"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\bp\\.?d\\.?r).*yemen",YMD:"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\bp\\.?d\\.?r).*yemen",YUG:"yugoslavia",ZMB:"zambia|northern.?rhodesia",EAZ:"zanzibar",ZWE:"zimbabwe|^(?!.*northern).*rhodesia"}},72791:function(t,e,n){"use strict";t.exports={parse:n(41004),stringify:n(53313)}},63625:function(t,e,n){"use strict";var r=n(40402);t.exports={isSize:function(t){return/^[\d\.]/.test(t)||-1!==t.indexOf("/")||-1!==r.indexOf(t)}}},41004:function(t,e,n){"use strict";var r=n(90448),i=n(38732),a=n(41901),o=n(15659),s=n(96209),l=n(83794),c=n(99011),u=n(63625).isSize;t.exports=h;var f=h.cache={};function h(t){if("string"!==typeof t)throw new Error("Font argument must be a string.");if(f[t])return f[t];if(""===t)throw new Error("Cannot parse an empty string.");if(-1!==a.indexOf(t))return f[t]={system:t};for(var e,n={style:"normal",variant:"normal",weight:"normal",stretch:"normal",lineHeight:"normal",size:"1rem",family:["serif"]},h=c(t,/\s+/);e=h.shift();){if(-1!==i.indexOf(e))return["style","variant","weight","stretch"].forEach((function(t){n[t]=e})),f[t]=n;if(-1===s.indexOf(e))if("normal"!==e&&"small-caps"!==e)if(-1===l.indexOf(e)){if(-1===o.indexOf(e)){if(u(e)){var p=c(e,"/");if(n.size=p[0],null!=p[1]?n.lineHeight=d(p[1]):"/"===h[0]&&(h.shift(),n.lineHeight=d(h.shift())),!h.length)throw new Error("Missing required font-family.");return n.family=c(h.join(" "),/\s*,\s*/).map(r),f[t]=n}throw new Error("Unknown or unsupported font token: "+e)}n.weight=e}else n.stretch=e;else n.variant=e;else n.style=e}throw new Error("Missing required font-size.")}function d(t){var e=parseFloat(t);return e.toString()===t?e:t}},53313:function(t,e,n){"use strict";var r=n(71299),i=n(63625).isSize,a=g(n(38732)),o=g(n(41901)),s=g(n(15659)),l=g(n(96209)),c=g(n(83794)),u={normal:1,"small-caps":1},f={serif:1,"sans-serif":1,monospace:1,cursive:1,fantasy:1,"system-ui":1},h="1rem",d="serif";function p(t,e){if(t&&!e[t]&&!a[t])throw Error("Unknown keyword `"+t+"`");return t}function g(t){for(var e={},n=0;ne?1:t>=e?0:NaN}n.d(e,{j2:function(){return r},Fp:function(){return o},J6:function(){return l},TS:function(){return c},VV:function(){return u},w6:function(){return f},Sm:function(){return h}});var i=function(t){var e;return 1===t.length&&(e=t,t=function(t,n){return r(e(t),n)}),{left:function(e,n,r,i){for(null==r&&(r=0),null==i&&(i=e.length);r>>1;t(e[a],n)<0?r=a+1:i=a}return r},right:function(e,n,r,i){for(null==r&&(r=0),null==i&&(i=e.length);r>>1;t(e[a],n)>0?i=a:r=a+1}return r}}}(r),a=(i.right,i.left,Array.prototype);function o(t,e){var n,r,i=t.length,a=-1;if(null==e){for(;++a=n)for(r=n;++ar&&(r=n)}else for(;++a=n)for(r=n;++ar&&(r=n);return r}function s(t){return null===t?NaN:+t}function l(t,e){var n,r=t.length,i=r,a=-1,o=0;if(null==e)for(;++a=0;)for(e=(r=t[i]).length;--e>=0;)n[--o]=r[e];return n}function u(t,e){var n,r,i=t.length,a=-1;if(null==e){for(;++a=n)for(r=n;++an&&(r=n)}else for(;++a=n)for(r=n;++an&&(r=n);return r}function f(t,e,n){t=+t,e=+e,n=(i=arguments.length)<2?(e=t,t=0,1):i<3?1:+n;for(var r=-1,i=0|Math.max(0,Math.ceil((e-t)/n)),a=new Array(i);++r=r.length)return null!=t&&n.sort(t),null!=e?e(n):n;for(var c,u,f,h=-1,d=n.length,p=r[i++],g=o(),v=s();++hr.length)return t;var a,o=i[n-1];return null!=e&&n>=r.length?a=t.entries():(a=[],t.each((function(t,e){a.push({key:e,values:s(t,n)})}))),null!=o?a.sort((function(t,e){return o(t.key,e.key)})):a}return n={object:function(t){return a(t,0,l,c)},map:function(t){return a(t,0,u,f)},entries:function(t){return s(a(t,0,u,f),0)},key:function(t){return r.push(t),n},sortKeys:function(t){return i[r.length-1]=t,n},sortValues:function(e){return t=e,n},rollup:function(t){return e=t,n}}}function l(){return{}}function c(t,e,n){t[e]=n}function u(){return o()}function f(t,e,n){t.set(e,n)}function h(){}var d=o.prototype;h.prototype=function(t,e){var n=new h;if(t instanceof h)t.each((function(t){n.add(t)}));else if(t){var r=-1,i=t.length;if(null==e)for(;++r=(a=(g+m)/2))?g=a:m=a,(u=n>=(o=(v+y)/2))?v=o:y=o,i=d,!(d=d[f=u<<1|c]))return i[f]=p,t;if(s=+t._x.call(null,d.data),l=+t._y.call(null,d.data),e===s&&n===l)return p.next=d,i?i[f]=p:t._root=p,t;do{i=i?i[f]=new Array(4):t._root=new Array(4),(c=e>=(a=(g+m)/2))?g=a:m=a,(u=n>=(o=(v+y)/2))?v=o:y=o}while((f=u<<1|c)===(h=(l>=o)<<1|s>=a));return i[h]=d,i[f]=p,t}function s(t,e,n,r,i){this.node=t,this.x0=e,this.y0=n,this.x1=r,this.y1=i}function l(t){return t[0]}function c(t){return t[1]}function u(t,e,n){var r=new f(null==e?l:e,null==n?c:n,NaN,NaN,NaN,NaN);return null==t?r:r.addAll(t)}function f(t,e,n,r,i,a){this._x=t,this._y=e,this._x0=n,this._y0=r,this._x1=i,this._y1=a,this._root=void 0}function h(t){for(var e={data:t.data},n=e;t=t.next;)n=n.next={data:t.data};return e}n.r(e),n.d(e,{forceCenter:function(){return r},forceCollide:function(){return v},forceLink:function(){return x},forceManyBody:function(){return K},forceRadial:function(){return Z},forceSimulation:function(){return X},forceX:function(){return J},forceY:function(){return Q}});var d=u.prototype=f.prototype;function p(t){return t.x+t.vx}function g(t){return t.y+t.vy}function v(t){var e,n,r=1,o=1;function s(){for(var t,i,s,c,f,h,d,v=e.length,m=0;mc+p||if+p||os.index){var g=c-l.x-l.vx,v=f-l.y-l.vy,m=g*g+v*v;mt.r&&(t.r=t[e].r)}function c(){if(e){var r,i,a=e.length;for(n=new Array(a),r=0;rf&&(f=r),ih&&(h=i));if(c>f||u>h)return this;for(this.cover(c,u).cover(f,h),n=0;nt||t>=i||r>e||e>=a;)switch(s=(ed||(a=c.y0)>p||(o=c.x1)=y)<<1|t>=m)&&(c=g[g.length-1],g[g.length-1]=g[g.length-1-u],g[g.length-1-u]=c)}else{var b=t-+this._x.call(null,v.data),x=e-+this._y.call(null,v.data),w=b*b+x*x;if(w=(s=(p+v)/2))?p=s:v=s,(u=o>=(l=(g+m)/2))?g=l:m=l,e=d,!(d=d[f=u<<1|c]))return this;if(!d.length)break;(e[f+1&3]||e[f+2&3]||e[f+3&3])&&(n=e,h=f)}for(;d.data!==t;)if(r=d,!(d=d.next))return this;return(i=d.next)&&delete d.next,r?(i?r.next=i:delete r.next,this):e?(i?e[f]=i:delete e[f],(d=e[0]||e[1]||e[2]||e[3])&&d===(e[3]||e[2]||e[1]||e[0])&&!d.length&&(n?n[h]=d:this._root=d),this):(this._root=i,this)},d.removeAll=function(t){for(var e=0,n=t.length;e=0&&(e=t.slice(n+1),t=t.slice(0,n)),t&&!r.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:e}}))),o=-1,s=a.length;if(!(arguments.length<2)){if(null!=e&&"function"!==typeof e)throw new Error("invalid callback: "+e);for(;++o0)for(var n,r,i=new Array(n),a=0;a=0&&e._call.call(null,t),e=e._next;--C}()}finally{C=0,function(){for(var t,e,n=A,r=1/0;n;)n._call?(r>n._time&&(r=n._time),t=n,n=n._next):(e=n._next,n._next=null,n=t?t._next=e:A=e);S=t,q(r)}(),D=0}}function V(){var t=z.now(),e=t-I;e>O&&(R-=e,I=t)}function q(t){C||(P&&(P=clearTimeout(P)),t-D>24?(t<1/0&&(P=setTimeout(H,t-z.now()-R)),L&&(L=clearInterval(L))):(L||(I=z.now(),L=setInterval(V,O)),C=1,N(H)))}function G(t){return t.x}function W(t){return t.y}B.prototype=U.prototype={constructor:B,restart:function(t,e,n){if("function"!==typeof t)throw new TypeError("callback is not a function");n=(null==n?j():+n)+(null==e?0:+e),this._next||S===this||(S?S._next=this:A=this,S=this),this._call=t,this._time=n,q()},stop:function(){this._call&&(this._call=null,this._time=1/0,q())}};var Y=10,$=Math.PI*(3-Math.sqrt(5));function X(t){var e,n=1,r=.001,i=1-Math.pow(r,1/300),a=0,o=.6,s=(0,m.UI)(),l=U(u),c=E("tick","end");function u(){f(),c.call("tick",e),n1?(null==n?s.remove(t):s.set(t,d(n)),e):s.get(t)},find:function(e,n,r){var i,a,o,s,l,c=0,u=t.length;for(null==r?r=1/0:r*=r,c=0;c1?(c.on(t,n),e):c.on(t)}}}function K(){var t,e,n,r,o=i(-30),s=1,l=1/0,c=.81;function f(r){var i,a=t.length,o=u(t,G,W).visitAfter(d);for(n=r,i=0;i=l)){(t.data!==e||t.next)&&(0===f&&(p+=(f=a())*f),0===h&&(p+=(h=a())*h),p1?r[0]+r.slice(2):r,+t.slice(n+1)]}n.d(e,{WU:function(){return h},FF:function(){return g}});var i,a=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function o(t){if(!(e=a.exec(t)))throw new Error("invalid format: "+t);var e;return new s({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function s(t){this.fill=void 0===t.fill?" ":t.fill+"",this.align=void 0===t.align?">":t.align+"",this.sign=void 0===t.sign?"-":t.sign+"",this.symbol=void 0===t.symbol?"":t.symbol+"",this.zero=!!t.zero,this.width=void 0===t.width?void 0:+t.width,this.comma=!!t.comma,this.precision=void 0===t.precision?void 0:+t.precision,this.trim=!!t.trim,this.type=void 0===t.type?"":t.type+""}function l(t,e){var n=r(t,e);if(!n)return t+"";var i=n[0],a=n[1];return a<0?"0."+new Array(-a).join("0")+i:i.length>a+1?i.slice(0,a+1)+"."+i.slice(a+1):i+new Array(a-i.length+2).join("0")}o.prototype=s.prototype,s.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};var c={"%":function(t,e){return(100*t).toFixed(e)},b:function(t){return Math.round(t).toString(2)},c:function(t){return t+""},d:function(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)},e:function(t,e){return t.toExponential(e)},f:function(t,e){return t.toFixed(e)},g:function(t,e){return t.toPrecision(e)},o:function(t){return Math.round(t).toString(8)},p:function(t,e){return l(100*t,e)},r:l,s:function(t,e){var n=r(t,e);if(!n)return t+"";var a=n[0],o=n[1],s=o-(i=3*Math.max(-8,Math.min(8,Math.floor(o/3))))+1,l=a.length;return s===l?a:s>l?a+new Array(s-l+1).join("0"):s>0?a.slice(0,s)+"."+a.slice(s):"0."+new Array(1-s).join("0")+r(t,Math.max(0,e+s-1))[0]},X:function(t){return Math.round(t).toString(16).toUpperCase()},x:function(t){return Math.round(t).toString(16)}};function u(t){return t}var f,h,d=Array.prototype.map,p=["y","z","a","f","p","n","\xb5","m","","k","M","G","T","P","E","Z","Y"];function g(t){var e,n,a=void 0===t.grouping||void 0===t.thousands?u:(e=d.call(t.grouping,Number),n=t.thousands+"",function(t,r){for(var i=t.length,a=[],o=0,s=e[0],l=0;i>0&&s>0&&(l+s+1>r&&(s=Math.max(1,r-l)),a.push(t.substring(i-=s,i+s)),!((l+=s+1)>r));)s=e[o=(o+1)%e.length];return a.reverse().join(n)}),s=void 0===t.currency?"":t.currency[0]+"",l=void 0===t.currency?"":t.currency[1]+"",f=void 0===t.decimal?".":t.decimal+"",h=void 0===t.numerals?u:function(t){return function(e){return e.replace(/[0-9]/g,(function(e){return t[+e]}))}}(d.call(t.numerals,String)),g=void 0===t.percent?"%":t.percent+"",v=void 0===t.minus?"-":t.minus+"",m=void 0===t.nan?"NaN":t.nan+"";function y(t){var e=(t=o(t)).fill,n=t.align,r=t.sign,u=t.symbol,d=t.zero,y=t.width,b=t.comma,x=t.precision,w=t.trim,_=t.type;"n"===_?(b=!0,_="g"):c[_]||(void 0===x&&(x=12),w=!0,_="g"),(d||"0"===e&&"="===n)&&(d=!0,e="0",n="=");var k="$"===u?s:"#"===u&&/[boxX]/.test(_)?"0"+_.toLowerCase():"",T="$"===u?l:/[%p]/.test(_)?g:"",M=c[_],A=/[defgprs%]/.test(_);function S(t){var o,s,l,c=k,u=T;if("c"===_)u=M(t)+u,t="";else{var g=(t=+t)<0||1/t<0;if(t=isNaN(t)?m:M(Math.abs(t),x),w&&(t=function(t){t:for(var e,n=t.length,r=1,i=-1;r0&&(i=0)}return i>0?t.slice(0,i)+t.slice(e+1):t}(t)),g&&0===+t&&"+"!==r&&(g=!1),c=(g?"("===r?r:v:"-"===r||"("===r?"":r)+c,u=("s"===_?p[8+i/3]:"")+u+(g&&"("===r?")":""),A)for(o=-1,s=t.length;++o(l=t.charCodeAt(o))||l>57){u=(46===l?f+t.slice(o+1):t.slice(o))+u,t=t.slice(0,o);break}}b&&!d&&(t=a(t,1/0));var S=c.length+t.length+u.length,E=S>1)+c+t+u+E.slice(S);break;default:t=E+c+t+u}return h(t)}return x=void 0===x?6:/[gprs]/.test(_)?Math.max(1,Math.min(21,x)):Math.max(0,Math.min(20,x)),S.toString=function(){return t+""},S}return{format:y,formatPrefix:function(t,e){var n,i=y(((t=o(t)).type="f",t)),a=3*Math.max(-8,Math.min(8,Math.floor((n=e,((n=r(Math.abs(n)))?n[1]:NaN)/3)))),s=Math.pow(10,-a),l=p[8+a/3];return function(t){return i(s*t)+l}}}}f=g({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"}),h=f.format,f.formatPrefix},65704:function(t,e,n){"use strict";n.r(e),n.d(e,{geoAiry:function(){return R},geoAiryRaw:function(){return D},geoAitoff:function(){return N},geoAitoffRaw:function(){return z},geoArmadillo:function(){return F},geoArmadilloRaw:function(){return j},geoAugust:function(){return U},geoAugustRaw:function(){return B},geoBaker:function(){return G},geoBakerRaw:function(){return q},geoBerghaus:function(){return $},geoBerghausRaw:function(){return Y},geoBertin1953:function(){return nt},geoBertin1953Raw:function(){return et},geoBoggs:function(){return ut},geoBoggsRaw:function(){return ct},geoBonne:function(){return gt},geoBonneRaw:function(){return pt},geoBottomley:function(){return mt},geoBottomleyRaw:function(){return vt},geoBromley:function(){return bt},geoBromleyRaw:function(){return yt},geoChamberlin:function(){return Et},geoChamberlinAfrica:function(){return St},geoChamberlinRaw:function(){return Mt},geoCollignon:function(){return Pt},geoCollignonRaw:function(){return Ct},geoCraig:function(){return Ot},geoCraigRaw:function(){return Lt},geoCraster:function(){return Rt},geoCrasterRaw:function(){return Dt},geoCylindricalEqualArea:function(){return Nt},geoCylindricalEqualAreaRaw:function(){return zt},geoCylindricalStereographic:function(){return Ft},geoCylindricalStereographicRaw:function(){return jt},geoEckert1:function(){return Ut},geoEckert1Raw:function(){return Bt},geoEckert2:function(){return Vt},geoEckert2Raw:function(){return Ht},geoEckert3:function(){return Gt},geoEckert3Raw:function(){return qt},geoEckert4:function(){return Yt},geoEckert4Raw:function(){return Wt},geoEckert5:function(){return Xt},geoEckert5Raw:function(){return $t},geoEckert6:function(){return Zt},geoEckert6Raw:function(){return Kt},geoEisenlohr:function(){return te},geoEisenlohrRaw:function(){return Qt},geoFahey:function(){return re},geoFaheyRaw:function(){return ne},geoFoucaut:function(){return ae},geoFoucautRaw:function(){return ie},geoFoucautSinusoidal:function(){return se},geoFoucautSinusoidalRaw:function(){return oe},geoGilbert:function(){return he},geoGingery:function(){return ve},geoGingeryRaw:function(){return de},geoGinzburg4:function(){return be},geoGinzburg4Raw:function(){return ye},geoGinzburg5:function(){return we},geoGinzburg5Raw:function(){return xe},geoGinzburg6:function(){return ke},geoGinzburg6Raw:function(){return _e},geoGinzburg8:function(){return Me},geoGinzburg8Raw:function(){return Te},geoGinzburg9:function(){return Se},geoGinzburg9Raw:function(){return Ae},geoGringorten:function(){return Pe},geoGringortenQuincuncial:function(){return ai},geoGringortenRaw:function(){return Ce},geoGuyou:function(){return De},geoGuyouRaw:function(){return Ie},geoHammer:function(){return J},geoHammerRaw:function(){return K},geoHammerRetroazimuthal:function(){return je},geoHammerRetroazimuthalRaw:function(){return ze},geoHealpix:function(){return Ye},geoHealpixRaw:function(){return Ve},geoHill:function(){return Xe},geoHillRaw:function(){return $e},geoHomolosine:function(){return en},geoHomolosineRaw:function(){return tn},geoHufnagel:function(){return rn},geoHufnagelRaw:function(){return nn},geoHyperelliptical:function(){return ln},geoHyperellipticalRaw:function(){return sn},geoInterrupt:function(){return fn},geoInterruptedBoggs:function(){return dn},geoInterruptedHomolosine:function(){return gn},geoInterruptedMollweide:function(){return mn},geoInterruptedMollweideHemispheres:function(){return bn},geoInterruptedQuarticAuthalic:function(){return fr},geoInterruptedSinuMollweide:function(){return wn},geoInterruptedSinusoidal:function(){return kn},geoKavrayskiy7:function(){return Mn},geoKavrayskiy7Raw:function(){return Tn},geoLagrange:function(){return Sn},geoLagrangeRaw:function(){return An},geoLarrivee:function(){return Pn},geoLarriveeRaw:function(){return Cn},geoLaskowski:function(){return On},geoLaskowskiRaw:function(){return Ln},geoLittrow:function(){return Dn},geoLittrowRaw:function(){return In},geoLoximuthal:function(){return zn},geoLoximuthalRaw:function(){return Rn},geoMiller:function(){return jn},geoMillerRaw:function(){return Nn},geoModifiedStereographic:function(){return Kn},geoModifiedStereographicAlaska:function(){return Gn},geoModifiedStereographicGs48:function(){return Wn},geoModifiedStereographicGs50:function(){return Yn},geoModifiedStereographicLee:function(){return Xn},geoModifiedStereographicMiller:function(){return $n},geoModifiedStereographicRaw:function(){return Fn},geoMollweide:function(){return ot},geoMollweideRaw:function(){return at},geoMtFlatPolarParabolic:function(){return tr},geoMtFlatPolarParabolicRaw:function(){return Qn},geoMtFlatPolarQuartic:function(){return nr},geoMtFlatPolarQuarticRaw:function(){return er},geoMtFlatPolarSinusoidal:function(){return ir},geoMtFlatPolarSinusoidalRaw:function(){return rr},geoNaturalEarth:function(){return ar.Z},geoNaturalEarth2:function(){return sr},geoNaturalEarth2Raw:function(){return or},geoNaturalEarthRaw:function(){return ar.K},geoNellHammer:function(){return cr},geoNellHammerRaw:function(){return lr},geoNicolosi:function(){return dr},geoNicolosiRaw:function(){return hr},geoPatterson:function(){return Tr},geoPattersonRaw:function(){return kr},geoPeirceQuincuncial:function(){return oi},geoPierceQuincuncial:function(){return oi},geoPolyconic:function(){return Ar},geoPolyconicRaw:function(){return Mr},geoPolyhedral:function(){return Ir},geoPolyhedralButterfly:function(){return Br},geoPolyhedralCollignon:function(){return Vr},geoPolyhedralWaterman:function(){return qr},geoProject:function(){return Xr},geoQuantize:function(){return si},geoQuincuncial:function(){return ii},geoRectangularPolyconic:function(){return ci},geoRectangularPolyconicRaw:function(){return li},geoRobinson:function(){return hi},geoRobinsonRaw:function(){return fi},geoSatellite:function(){return pi},geoSatelliteRaw:function(){return di},geoSinuMollweide:function(){return Qe},geoSinuMollweideRaw:function(){return Je},geoSinusoidal:function(){return dt},geoSinusoidalRaw:function(){return ht},geoStitch:function(){return Ii},geoTimes:function(){return Ri},geoTimesRaw:function(){return Di},geoTwoPointAzimuthal:function(){return Fi},geoTwoPointAzimuthalRaw:function(){return Ni},geoTwoPointAzimuthalUsa:function(){return ji},geoTwoPointEquidistant:function(){return Hi},geoTwoPointEquidistantRaw:function(){return Bi},geoTwoPointEquidistantUsa:function(){return Ui},geoVanDerGrinten:function(){return qi},geoVanDerGrinten2:function(){return Wi},geoVanDerGrinten2Raw:function(){return Gi},geoVanDerGrinten3:function(){return $i},geoVanDerGrinten3Raw:function(){return Yi},geoVanDerGrinten4:function(){return Ki},geoVanDerGrinten4Raw:function(){return Xi},geoVanDerGrintenRaw:function(){return Vi},geoWagner:function(){return Ji},geoWagner4:function(){return ra},geoWagner4Raw:function(){return na},geoWagner6:function(){return aa},geoWagner6Raw:function(){return ia},geoWagner7:function(){return Qi},geoWagnerRaw:function(){return Zi},geoWiechel:function(){return sa},geoWiechelRaw:function(){return oa},geoWinkel3:function(){return ca},geoWinkel3Raw:function(){return la}});var r=n(15002),i=Math.abs,a=Math.atan,o=Math.atan2,s=(Math.ceil,Math.cos),l=Math.exp,c=Math.floor,u=Math.log,f=Math.max,h=Math.min,d=Math.pow,p=Math.round,g=Math.sign||function(t){return t>0?1:t<0?-1:0},v=Math.sin,m=Math.tan,y=1e-6,b=1e-12,x=Math.PI,w=x/2,_=x/4,k=Math.SQRT1_2,T=L(2),M=L(x),A=2*x,S=180/x,E=x/180;function C(t){return t>1?w:t<-1?-w:Math.asin(t)}function P(t){return t>1?0:t<-1?x:Math.acos(t)}function L(t){return t>0?Math.sqrt(t):0}function O(t){return(l(t)-l(-t))/2}function I(t){return(l(t)+l(-t))/2}function D(t){var e=m(t/2),n=2*u(s(t/2))/(e*e);function r(t,e){var r=s(t),i=s(e),a=v(e),o=i*r,l=-((1-o?u((1+o)/2)/(1-o):-.5)+n/(1+o));return[l*i*v(t),l*a]}return r.invert=function(e,r){var a,l=L(e*e+r*r),c=-t/2,f=50;if(!l)return[0,0];do{var h=c/2,d=s(h),p=v(h),g=p/d,m=-u(i(d));c-=a=(2/g*m-n*g-l)/(-m/(p*p)+1-n/(2*d*d))*(d<0?.7:1)}while(i(a)>y&&--f>0);var b=v(c);return[o(e*b,l*s(c)),C(r*b/l)]},r}function R(){var t=w,e=(0,r.r)(D),n=e(t);return n.radius=function(n){return arguments.length?e(t=n*E):t*S},n.scale(179.976).clipAngle(147)}function z(t,e){var n=s(e),r=function(t){return t?t/Math.sin(t):1}(P(n*s(t/=2)));return[2*n*v(t)*r,v(e)*r]}function N(){return(0,r.Z)(z).scale(152.63)}function j(t){var e=v(t),n=s(t),r=t>=0?1:-1,a=m(r*t),l=(1+e-n)/2;function c(t,i){var c=s(i),u=s(t/=2);return[(1+c)*v(t),(r*i>-o(u,a)-.001?0:10*-r)+l+v(i)*n-(1+c)*e*u]}return c.invert=function(t,c){var u=0,f=0,h=50;do{var d=s(u),p=v(u),g=s(f),m=v(f),b=1+g,x=b*p-t,w=l+m*n-b*e*d-c,_=b*d/2,k=-p*m,T=e*b*p/2,M=n*g+e*d*m,A=k*T-M*_,S=(w*k-x*M)/A/2,E=(x*T-w*_)/A;i(E)>2&&(E/=2),u-=S,f-=E}while((i(S)>y||i(E)>y)&&--h>0);return r*f>-o(s(u),a)-.001?[2*u,f]:null},c}function F(){var t=20*E,e=t>=0?1:-1,n=m(e*t),i=(0,r.r)(j),a=i(t),l=a.stream;return a.parallel=function(r){return arguments.length?(n=m((e=(t=r*E)>=0?1:-1)*t),i(t)):t*S},a.stream=function(r){var i=a.rotate(),c=l(r),u=(a.rotate([0,0]),l(r)),f=a.precision();return a.rotate(i),c.sphere=function(){u.polygonStart(),u.lineStart();for(var r=-180*e;e*r<180;r+=90*e)u.point(r,90*e);if(t)for(;e*(r-=3*e*f)>=-180;)u.point(r,e*-o(s(r*E/2),n)*S);u.lineEnd(),u.polygonEnd()},c},a.scale(218.695).center([0,28.0974])}function B(t,e){var n=m(e/2),r=L(1-n*n),i=1+r*s(t/=2),a=v(t)*r/i,o=n/i,l=a*a,c=o*o;return[4/3*a*(3+l-3*c),4/3*o*(3+3*l-c)]}function U(){return(0,r.Z)(B).scale(66.1603)}z.invert=function(t,e){if(!(t*t+4*e*e>x*x+y)){var n=t,r=e,a=25;do{var o,l=v(n),c=v(n/2),u=s(n/2),f=v(r),h=s(r),d=v(2*r),p=f*f,g=h*h,m=c*c,b=1-g*u*u,w=b?P(h*u)*L(o=1/b):o=0,_=2*w*h*c-t,k=w*f-e,T=o*(g*m+w*h*u*p),M=o*(.5*l*d-2*w*f*c),A=.25*o*(d*c-w*f*g*l),S=o*(p*u+w*m*h),E=M*A-S*T;if(!E)break;var C=(k*M-_*S)/E,O=(_*A-k*T)/E;n-=C,r-=O}while((i(C)>y||i(O)>y)&&--a>0);return[n,r]}},B.invert=function(t,e){if(e*=3/8,!(t*=3/8)&&i(e)>1)return null;var n=1+t*t+e*e,r=L((n-L(n*n-4*e*e))/2),a=C(r)/3,l=r?function(t){return u(t+L(t*t-1))}(i(e/r))/3:function(t){return u(t+L(t*t+1))}(i(t))/3,c=s(a),f=I(l),h=f*f-c*c;return[2*g(t)*o(O(l)*c,.25-h),2*g(e)*o(f*v(a),.25+h)]};var H=L(8),V=u(1+T);function q(t,e){var n=i(e);return n<_?[t,u(m(_+e/2))]:[t*s(n)*(2*T-1/v(n)),g(e)*(2*T*(n-_)-u(m(n/2)))]}function G(){return(0,r.Z)(q).scale(112.314)}q.invert=function(t,e){if((r=i(e))b&&--c>0);return[t/(s(o)*(H-1/v(o))),g(e)*o]};var W=n(17889);function Y(t){var e=2*x/t;function n(t,n){var r=(0,W.N)(t,n);if(i(t)>w){var a=o(r[1],r[0]),l=L(r[0]*r[0]+r[1]*r[1]),c=e*p((a-w)/e)+w,u=o(v(a-=c),2-s(a));a=c+C(x/l*v(u))-u,r[0]=l*s(a),r[1]=l*v(a)}return r}return n.invert=function(t,n){var r=L(t*t+n*n);if(r>w){var i=o(n,t),l=e*p((i-w)/e)+w,c=i>l?-1:1,u=r*s(l-i),f=1/m(c*P((u-x)/L(x*(x-2*u)+r*r)));i=l+2*a((f+c*L(f*f-3))/3),t=r*s(i),n=r*v(i)}return W.N.invert(t,n)},n}function $(){var t=5,e=(0,r.r)(Y),n=e(t),i=n.stream,a=.01,l=-s(a*E),c=v(a*E);return n.lobes=function(n){return arguments.length?e(t=+n):t},n.stream=function(e){var r=n.rotate(),u=i(e),f=(n.rotate([0,0]),i(e));return n.rotate(r),u.sphere=function(){f.polygonStart(),f.lineStart();for(var e=0,n=360/t,r=2*x/t,i=90-180/t,u=w;e0&&i(r)>y);return s<0?NaN:n}function tt(t,e,n){return void 0===e&&(e=40),void 0===n&&(n=b),function(r,a,o,s){var l,c,u;o=void 0===o?0:+o,s=void 0===s?0:+s;for(var f=0;fl)o-=c/=2,s-=u/=2;else{l=g;var v=(o>0?-1:1)*n,m=(s>0?-1:1)*n,y=t(o+v,s),b=t(o,s+m),x=(y[0]-h[0])/v,w=(y[1]-h[1])/v,_=(b[0]-h[0])/m,k=(b[1]-h[1])/m,T=k*x-w*_,M=(i(T)<.5?.5:1)/T;if(o+=c=(p*_-d*k)*M,s+=u=(d*w-p*x)*M,i(c)0&&(o[1]*=1+l/1.5*o[0]*o[0]),o}return r.invert=tt(r),r}function nt(){return(0,r.Z)(et()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function rt(t,e){var n,r=t*v(e),a=30;do{e-=n=(e+v(e)-r)/(1+s(e))}while(i(n)>y&&--a>0);return e/2}function it(t,e,n){function r(r,i){return[t*r*s(i=rt(n,i)),e*v(i)]}return r.invert=function(r,i){return i=C(i/e),[r/(t*s(i)),C((2*i+v(2*i))/n)]},r}Z.invert=function(t,e){var n=2*C(e/2);return[t*s(n/2)/s(n),n]};var at=it(T/w,T,x);function ot(){return(0,r.Z)(at).scale(169.529)}var st=2.00276,lt=1.11072;function ct(t,e){var n=rt(x,e);return[st*t/(1/s(e)+lt/s(n)),(e+T*v(n))/st]}function ut(){return(0,r.Z)(ct).scale(160.857)}function ft(t){var e=0,n=(0,r.r)(t),i=n(e);return i.parallel=function(t){return arguments.length?n(e=t*E):e*S},i}function ht(t,e){return[t*s(e),e]}function dt(){return(0,r.Z)(ht).scale(152.63)}function pt(t){if(!t)return ht;var e=1/m(t);function n(n,r){var i=e+t-r,a=i?n*s(r)/i:i;return[i*v(a),e-i*s(a)]}return n.invert=function(n,r){var i=L(n*n+(r=e-r)*r),a=e+t-i;return[i/s(a)*o(n,r),a]},n}function gt(){return ft(pt).scale(123.082).center([0,26.1441]).parallel(45)}function vt(t){function e(e,n){var r=w-n,i=r?e*t*v(r)/r:r;return[r*v(i)/t,w-r*s(i)]}return e.invert=function(e,n){var r=e*t,i=w-n,a=L(r*r+i*i),s=o(r,i);return[(a?a/v(a):1)*s/t,w-a]},e}function mt(){var t=.5,e=(0,r.r)(vt),n=e(t);return n.fraction=function(n){return arguments.length?e(t=+n):t},n.scale(158.837)}ct.invert=function(t,e){var n,r,a=st*e,o=e<0?-_:_,l=25;do{r=a-T*v(o),o-=n=(v(2*o)+2*o-x*v(r))/(2*s(2*o)+2+x*s(r)*T*s(o))}while(i(n)>y&&--l>0);return r=a-T*v(o),[t*(1/s(r)+lt/s(o))/st,r]},ht.invert=function(t,e){return[t/s(e),e]};var yt=it(1,4/x,x);function bt(){return(0,r.Z)(yt).scale(152.63)}var xt=n(66624),wt=n(49386);function _t(t,e,n,r,a,l){var c,u=s(l);if(i(t)>1||i(l)>1)c=P(n*a+e*r*u);else{var f=v(t/2),h=v(l/2);c=2*C(L(f*f+e*r*h*h))}return i(c)>y?[c,o(r*v(l),e*a-n*r*u)]:[0,0]}function kt(t,e,n){return P((t*t+e*e-n*n)/(2*t*e))}function Tt(t){return t-2*x*c((t+x)/(2*x))}function Mt(t,e,n){for(var r,i=[[t[0],t[1],v(t[1]),s(t[1])],[e[0],e[1],v(e[1]),s(e[1])],[n[0],n[1],v(n[1]),s(n[1])]],a=i[2],o=0;o<3;++o,a=r)r=i[o],a.v=_t(r[1]-a[1],a[3],a[2],r[3],r[2],r[0]-a[0]),a.point=[0,0];var l=kt(i[0].v[0],i[2].v[0],i[1].v[0]),c=kt(i[0].v[0],i[1].v[0],i[2].v[0]),u=x-l;i[2].point[1]=0,i[0].point[0]=-(i[1].point[0]=i[0].v[0]/2);var f=[i[2].point[0]=i[0].point[0]+i[2].v[0]*s(l),2*(i[0].point[1]=i[1].point[1]=i[2].v[0]*v(l))];return function(t,e){var n,r=v(e),a=s(e),o=new Array(3);for(n=0;n<3;++n){var l=i[n];if(o[n]=_t(e-l[1],l[3],l[2],a,r,t-l[0]),!o[n][0])return l.point;o[n][1]=Tt(o[n][1]-l.v[1])}var h=f.slice();for(n=0;n<3;++n){var d=2==n?0:n+1,p=kt(i[n].v[0],o[n][0],o[d][0]);o[n][1]<0&&(p=-p),n?1==n?(p=c-p,h[0]-=o[n][0]*s(p),h[1]-=o[n][0]*v(p)):(p=u-p,h[0]+=o[n][0]*s(p),h[1]+=o[n][0]*v(p)):(h[0]+=o[n][0]*s(p),h[1]-=o[n][0]*v(p))}return h[0]/=3,h[1]/=3,h}}function At(t){return t[0]*=E,t[1]*=E,t}function St(){return Et([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function Et(t,e,n){var i=(0,xt.Z)({type:"MultiPoint",coordinates:[t,e,n]}),a=[-i[0],-i[1]],o=(0,wt.Z)(a),s=Mt(At(o(t)),At(o(e)),At(o(n)));s.invert=tt(s);var l=(0,r.Z)(s).rotate(a),c=l.center;return delete l.rotate,l.center=function(t){return arguments.length?c(o(t)):o.invert(c())},l.clipAngle(90)}function Ct(t,e){var n=L(1-v(e));return[2/M*t*n,M*(1-n)]}function Pt(){return(0,r.Z)(Ct).scale(95.6464).center([0,30])}function Lt(t){var e=m(t);function n(t,n){return[t,(t?t/v(t):1)*(v(n)*s(t)-e*s(n))]}return n.invert=e?function(t,n){t&&(n*=v(t)/t);var r=s(t);return[t,2*o(L(r*r+e*e-n*n)-r,e-n)]}:function(t,e){return[t,C(t?e*m(t)/t:e)]},n}function Ot(){return ft(Lt).scale(249.828).clipAngle(90)}Ct.invert=function(t,e){var n=(n=e/M-1)*n;return[n>0?t*L(x/n)/2:0,C(1-n)]};var It=L(3);function Dt(t,e){return[It*t*(2*s(2*e/3)-1)/M,It*M*v(e/3)]}function Rt(){return(0,r.Z)(Dt).scale(156.19)}function zt(t){var e=s(t);function n(t,n){return[t*e,v(n)/e]}return n.invert=function(t,n){return[t/e,C(n*e)]},n}function Nt(){return ft(zt).parallel(38.58).scale(195.044)}function jt(t){var e=s(t);function n(t,n){return[t*e,(1+e)*m(n/2)]}return n.invert=function(t,n){return[t/e,2*a(n/(1+e))]},n}function Ft(){return ft(jt).scale(124.75)}function Bt(t,e){var n=L(8/(3*x));return[n*t*(1-i(e)/x),n*e]}function Ut(){return(0,r.Z)(Bt).scale(165.664)}function Ht(t,e){var n=L(4-3*v(i(e)));return[2/L(6*x)*t*n,g(e)*L(2*x/3)*(2-n)]}function Vt(){return(0,r.Z)(Ht).scale(165.664)}function qt(t,e){var n=L(x*(4+x));return[2/n*t*(1+L(1-4*e*e/(x*x))),4/n*e]}function Gt(){return(0,r.Z)(qt).scale(180.739)}function Wt(t,e){var n=(2+w)*v(e);e/=2;for(var r=0,a=1/0;r<10&&i(a)>y;r++){var o=s(e);e-=a=(e+v(e)*(o+2)-n)/(2*o*(1+o))}return[2/L(x*(4+x))*t*(1+s(e)),2*L(x/(4+x))*v(e)]}function Yt(){return(0,r.Z)(Wt).scale(180.739)}function $t(t,e){return[t*(1+s(e))/L(2+x),2*e/L(2+x)]}function Xt(){return(0,r.Z)($t).scale(173.044)}function Kt(t,e){for(var n=(1+w)*v(e),r=0,a=1/0;r<10&&i(a)>y;r++)e-=a=(e+v(e)-n)/(1+s(e));return n=L(2+x),[t*(1+s(e))/n,2*e/n]}function Zt(){return(0,r.Z)(Kt).scale(173.044)}Dt.invert=function(t,e){var n=3*C(e/(It*M));return[M*t/(It*(2*s(2*n/3)-1)),n]},Bt.invert=function(t,e){var n=L(8/(3*x)),r=e/n;return[t/(n*(1-i(r)/x)),r]},Ht.invert=function(t,e){var n=2-i(e)/L(2*x/3);return[t*L(6*x)/(2*n),g(e)*C((4-n*n)/3)]},qt.invert=function(t,e){var n=L(x*(4+x))/2;return[t*n/(1+L(1-e*e*(4+x)/(4*x))),e*n/2]},Wt.invert=function(t,e){var n=e*L((4+x)/x)/2,r=C(n),i=s(r);return[t/(2/L(x*(4+x))*(1+i)),C((r+n*(i+2))/(2+w))]},$t.invert=function(t,e){var n=L(2+x),r=e*n/2;return[n*t/(1+s(r)),r]},Kt.invert=function(t,e){var n=1+w,r=L(n/2);return[2*t*r/(1+s(e*=r)),C((e+v(e))/n)]};var Jt=3+2*T;function Qt(t,e){var n=v(t/=2),r=s(t),i=L(s(e)),o=s(e/=2),l=v(e)/(o+T*r*i),c=L(2/(1+l*l)),f=L((T*o+(r+n)*i)/(T*o+(r-n)*i));return[Jt*(c*(f-1/f)-2*u(f)),Jt*(c*l*(f+1/f)-2*a(l))]}function te(){return(0,r.Z)(Qt).scale(62.5271)}Qt.invert=function(t,e){if(!(n=B.invert(t/1.2,1.065*e)))return null;var n,r=n[0],o=n[1],l=20;t/=Jt,e/=Jt;do{var c=r/2,d=o/2,p=v(c),g=s(c),m=v(d),b=s(d),x=s(o),_=L(x),M=m/(b+T*g*_),A=M*M,S=L(2/(1+A)),E=(T*b+(g+p)*_)/(T*b+(g-p)*_),C=L(E),P=C-1/C,O=C+1/C,I=S*P-2*u(C)-t,D=S*M*O-2*a(M)-e,R=m&&k*_*p*A/m,z=(T*g*b+_)/(2*(b+T*g*_)*(b+T*g*_)*_),N=-.5*M*S*S*S,j=N*R,F=N*z,U=(U=2*b+T*_*(g-p))*U*C,H=(T*g*b*_+x)/U,V=-T*p*m/(_*U),q=P*j-2*H/C+S*(H+H/E),G=P*F-2*V/C+S*(V+V/E),W=M*O*j-2*R/(1+A)+S*O*R+S*M*(H-H/E),Y=M*O*F-2*z/(1+A)+S*O*z+S*M*(V-V/E),$=G*W-Y*q;if(!$)break;var X=(D*G-I*Y)/$,K=(I*W-D*q)/$;r-=X,o=f(-w,h(w,o-K))}while((i(X)>y||i(K)>y)&&--l>0);return i(i(o)-w)r){var h=L(f),d=o(u,c),g=n*p(d/n),m=d-g,b=t*s(m),_=(t*v(m)-m*v(b))/(w-b),k=pe(m,_),T=(x-t)/ge(k,b,x);c=h;var M,A=50;do{c-=M=(t+ge(k,b,c)*T-h)/(k(c)*T)}while(i(M)>y&&--A>0);u=m*v(c),cr){var c=L(l),u=o(a,e),f=n*p(u/n),h=u-f;e=c*s(h),a=c*v(h);for(var d=e-w,g=v(e),m=a/g,y=ey||i(d)>y)&&--m>0);return[p,g]},u}var ye=me(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function be(){return(0,r.Z)(ye).scale(149.995)}var xe=me(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function we(){return(0,r.Z)(xe).scale(153.93)}var _e=me(5/6*x,-.62636,-.0344,0,1.3493,-.05524,0,.045);function ke(){return(0,r.Z)(_e).scale(130.945)}function Te(t,e){var n=t*t,r=e*e;return[t*(1-.162388*r)*(.87-952426e-9*n*n),e*(1+r/12)]}function Me(){return(0,r.Z)(Te).scale(131.747)}Te.invert=function(t,e){var n,r=t,a=e,o=50;do{var s=a*a;a-=n=(a*(1+s/12)-e)/(1+s/4)}while(i(n)>y&&--o>0);o=50,t/=1-.162388*s;do{var l=(l=r*r)*l;r-=n=(r*(.87-952426e-9*l)-t)/(.87-.00476213*l)}while(i(n)>y&&--o>0);return[r,a]};var Ae=me(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function Se(){return(0,r.Z)(Ae).scale(131.087)}function Ee(t){var e=t(w,0)[0]-t(-w,0)[0];function n(n,r){var i=n>0?-.5:.5,a=t(n+i*x,r);return a[0]-=i*e,a}return t.invert&&(n.invert=function(n,r){var i=n>0?-.5:.5,a=t.invert(n+i*e,r),o=a[0]-i*x;return o<-x?o+=2*x:o>x&&(o-=2*x),a[0]=o,a}),n}function Ce(t,e){var n=g(t),r=g(e),a=s(e),l=s(t)*a,c=v(t)*a,u=v(r*e);t=i(o(c,u)),e=C(l),i(t-w)>y&&(t%=w);var f=function(t,e){if(e===w)return[0,0];var n,r,a=v(e),o=a*a,l=o*o,c=1+l,u=1+3*l,f=1-l,h=C(1/L(c)),d=f+o*c*h,p=(1-a)/d,g=L(p),m=p*c,b=L(m),_=g*f;if(0===t)return[0,-(_+o*b)];var k,T=s(e),M=1/T,A=2*a*T,S=(-3*o+h*u)*A,E=(-d*T-(1-a)*S)/(d*d),P=o*c*E+p*u*A,O=-M*A,I=-M*P,D=-2*M*(f*(.5*E/g)-2*o*g*A),R=4*t/x;if(t>.222*x||e.175*x){if(n=(_+o*L(m*(1+l)-_*_))/(1+l),t>x/4)return[n,n];var z=n,N=.5*n;n=.5*(N+z),r=50;do{var j=n*(D+O*L(m-n*n))+I*C(n/b)-R;if(!j)break;j<0?N=n:z=n,n=.5*(N+z)}while(i(z-N)>y&&--r>0)}else{n=y,r=25;do{var F=n*n,B=L(m-F),U=D+O*B,H=n*U+I*C(n/b)-R;n-=k=B?H/(U+(I-O*F)/B):0}while(i(k)>y&&--r>0)}return[n,-_-o*L(m-n*n)]}(t>x/4?w-t:t,e);return t>x/4&&(u=f[0],f[0]=-f[1],f[1]=-u),f[0]*=n,f[1]*=-r,f}function Pe(){return(0,r.Z)(Ee(Ce)).scale(239.75)}function Le(t,e){var n,r,o,c,u,f;if(e=1-y)return n=(1-e)/4,o=1/(r=I(t)),[(c=((f=l(2*(f=t)))-1)/(f+1))+n*((u=r*O(t))-t)/(r*r),o-n*c*o*(u-t),o+n*c*o*(u+t),2*a(l(t))-w+n*(u-t)/r];var h=[1,0,0,0,0,0,0,0,0],d=[L(e),0,0,0,0,0,0,0,0],p=0;for(r=L(1-e),u=1;i(d[p]/h[p])>y&&p<8;)n=h[p++],d[p]=(n-r)/2,h[p]=(n+r)/2,r=L(n*r),u*=2;o=u*h[p]*t;do{o=(C(c=d[p]*v(r=o)/h[p])+o)/2}while(--p);return[v(o),c=s(o),c/s(o-r),o]}function Oe(t,e){if(!e)return t;if(1===e)return u(m(t/2+_));for(var n=1,r=L(1-e),o=L(e),s=0;i(o)>y;s++){if(t%x){var l=a(r*m(t)/n);l<0&&(l+=x),t+=l+~~(t/x)*x}else t+=t;o=(n+r)/2,r=L(n*r),o=((n=o)-r)/2}return t/(d(2,s)*n)}function Ie(t,e){var n=(T-1)/(T+1),r=L(1-n*n),c=Oe(w,r*r),f=u(m(x/4+i(e)/2)),h=l(-1*f)/L(n),d=function(t,e){var n=t*t,r=e+1,i=1-n-e*e;return[.5*((t>=0?w:-w)-o(i,2*t)),-.25*u(i*i+4*n)+.5*u(r*r+n)]}(h*s(-1*t),h*v(-1*t)),p=function(t,e,n){var r=i(t),o=O(i(e));if(r){var s=1/v(r),l=1/(m(r)*m(r)),c=-(l+n*(o*o*s*s)-1+n),u=(-c+L(c*c-(n-1)*l*4))/2;return[Oe(a(1/L(u)),n)*g(t),Oe(a(L((u/l-1)/n)),1-n)*g(e)]}return[0,Oe(a(o),1-n)*g(e)]}(d[0],d[1],r*r);return[-p[1],(e>=0?1:-1)*(.5*c-p[0])]}function De(){return(0,r.Z)(Ee(Ie)).scale(151.496)}Ce.invert=function(t,e){i(t)>1&&(t=2*g(t)-t),i(e)>1&&(e=2*g(e)-e);var n=g(t),r=g(e),a=-n*t,l=-r*e,c=l/a<1,u=function(t,e){for(var n=0,r=1,a=.5,o=50;;){var l=a*a,c=L(a),u=C(1/L(1+l)),f=1-l+a*(1+l)*u,h=(1-c)/f,d=L(h),p=h*(1+l),g=d*(1-l),v=L(p-t*t),m=e+g+a*v;if(i(r-n)0?n=a:r=a,a=.5*(n+r)}if(!o)return null;var y=C(c),w=s(y),_=1/w,k=2*c*w,T=(-f*w-(-3*a+u*(1+3*l))*k*(1-c))/(f*f),M=.5*T/d,A=(1-l)*M-2*a*d*k;return[x/4*(t*(-2*_*A+-_*k*v)+-_*(a*(1+l)*T+h*(1+3*l)*k)*C(t/L(p))),y]}(c?l:a,c?a:l),f=u[0],h=u[1],d=s(h);return c&&(f=-w-f),[n*(o(v(f)*d,-v(h))+x),r*C(s(f)*d)]},Ie.invert=function(t,e){var n=(T-1)/(T+1),r=L(1-n*n),i=function(t,e,n){var r,i,a;return t?(r=Le(t,n),e?(a=(i=Le(e,1-n))[1]*i[1]+n*r[0]*r[0]*i[0]*i[0],[[r[0]*i[2]/a,r[1]*r[2]*i[0]*i[1]/a],[r[1]*i[1]/a,-r[0]*r[2]*i[0]*i[2]/a],[r[2]*i[1]*i[2]/a,-n*r[0]*r[1]*i[0]/a]]):[[r[0],0],[r[1],0],[r[2],0]]):[[0,(i=Le(e,1-n))[0]/i[1]],[1/i[1],0],[i[2]/i[1],0]]}(.5*Oe(w,r*r)-e,-t,r*r),s=function(t,e){var n=e[0]*e[0]+e[1]*e[1];return[(t[0]*e[0]+t[1]*e[1])/n,(t[1]*e[0]-t[0]*e[1])/n]}(i[0],i[1]);return[o(s[1],s[0])/-1,2*a(l(-.5*u(n*s[0]*s[0]+n*s[1]*s[1])))-w]};var Re=n(7613);function ze(t){var e=v(t),n=s(t),r=Ne(t);function a(t,a){var o=r(t,a);t=o[0],a=o[1];var l=v(a),c=s(a),u=s(t),f=P(e*l+n*c*u),h=v(f),d=i(h)>y?f/h:1;return[d*n*v(t),(i(t)>w?d:-d)*(e*c-n*l*u)]}return r.invert=Ne(-t),a.invert=function(t,n){var i=L(t*t+n*n),a=-v(i),l=s(i),c=i*l,u=-n*a,f=i*e,h=L(c*c+u*u-f*f),d=o(c*f+u*h,u*f-c*h),p=(i>w?-1:1)*o(t*a,i*s(d)*l+n*v(d)*a);return r.invert(p,d)},a}function Ne(t){var e=v(t),n=s(t);return function(t,r){var i=s(r),a=s(t)*i,l=v(t)*i,c=v(r);return[o(l,a*n-c*e),C(c*n+a*e)]}}function je(){var t=0,e=(0,r.r)(ze),n=e(t),i=n.rotate,a=n.stream,o=(0,Re.Z)();return n.parallel=function(r){if(!arguments.length)return t*S;var i=n.rotate();return e(t=r*E).rotate(i)},n.rotate=function(e){return arguments.length?(i.call(n,[e[0],e[1]-t*S]),o.center([-e[0],-e[1]]),n):((e=i.call(n))[1]+=t*S,e)},n.stream=function(t){return(t=a(t)).sphere=function(){t.polygonStart();var e,n=o.radius(89.99)().coordinates[0],r=n.length-1,i=-1;for(t.lineStart();++i=0;)t.point((e=n[i])[0],e[1]);t.lineEnd(),t.polygonEnd()},t},n.scale(79.4187).parallel(45).clipAngle(179.999)}var Fe=n(33064),Be=n(72736),Ue=C(1-1/3)*S,He=zt(0);function Ve(t){var e=Ue*E,n=Ct(x,e)[0]-Ct(-x,e)[0],r=He(0,e)[1],a=Ct(0,e)[1],o=M-a,s=A/t,l=4/A,u=r+o*o*4/A;function d(d,p){var g,v=i(p);if(v>e){var m=h(t-1,f(0,c((d+x)/s)));(g=Ct(d+=x*(t-1)/t-m*s,v))[0]=g[0]*A/n-A*(t-1)/(2*t)+m*A/t,g[1]=r+4*(g[1]-a)*o/A,p<0&&(g[1]=-g[1])}else g=He(d,p);return g[0]*=l,g[1]/=u,g}return d.invert=function(e,d){e/=l;var p=i(d*=u);if(p>r){var g=h(t-1,f(0,c((e+x)/s)));e=(e+x*(t-1)/t-g*s)*n/A;var v=Ct.invert(e,.25*(p-r)*A/o+a);return v[0]-=x*(t-1)/t-g*s,d<0&&(v[1]=-v[1]),v}return He.invert(e,d)},d}function qe(t,e){return[t,1&e?90-y:Ue]}function Ge(t,e){return[t,1&e?-90+y:-Ue]}function We(t){return[t[0]*(1-y),t[1]]}function Ye(){var t=4,e=(0,r.r)(Ve),n=e(t),i=n.stream;return n.lobes=function(n){return arguments.length?e(t=+n):t},n.stream=function(e){var r=n.rotate(),a=i(e),o=(n.rotate([0,0]),i(e));return n.rotate(r),a.sphere=function(){(0,Be.Z)(function(t){var e=[].concat((0,Fe.w6)(-180,180+t/2,t).map(qe),(0,Fe.w6)(180,-180-t/2,-t).map(Ge));return{type:"Polygon",coordinates:[180===t?e.map(We):e]}}(180/t),o)},a},n.scale(239.75)}function $e(t){var e,n=1+t,r=C(v(1/n)),a=2*L(x/(e=x+4*r*n)),l=.5*a*(n+L(t*(2+t))),c=t*t,u=n*n;function f(f,h){var d,p,g=1-v(h);if(g&&g<2){var m,y=w-h,_=25;do{var k=v(y),T=s(y),M=r+o(k,n-T),A=1+u-2*n*T;y-=m=(y-c*r-n*k+A*M-.5*g*e)/(2*n*k*M)}while(i(m)>b&&--_>0);d=a*L(A),p=f*M/x}else d=a*(t+g),p=f*r/x;return[d*v(p),l-d*s(p)]}return f.invert=function(t,i){var s=t*t+(i-=l)*i,f=(1+u-s/(a*a))/(2*n),h=P(f),d=v(h),p=r+o(d,n-f);return[C(t/L(s))*x/p,C(1-2*(h-c*r-n*d+(1+u-2*n*f)*p)/e)]},f}function Xe(){var t=1,e=(0,r.r)($e),n=e(t);return n.ratio=function(n){return arguments.length?e(t=+n):t},n.scale(167.774).center([0,18.67])}var Ke=.7109889596207567,Ze=.0528035274542;function Je(t,e){return e>-Ke?((t=at(t,e))[1]+=Ze,t):ht(t,e)}function Qe(){return(0,r.Z)(Je).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function tn(t,e){return i(e)>Ke?((t=at(t,e))[1]-=e>0?Ze:-Ze,t):ht(t,e)}function en(){return(0,r.Z)(tn).scale(152.63)}function nn(t,e,n,r){var i=L(4*x/(2*n+(1+t-e/2)*v(2*n)+(t+e)/2*v(4*n)+e/2*v(6*n))),a=L(r*v(n)*L((1+t*s(2*n)+e*s(4*n))/(1+t+e))),o=n*c(1);function l(n){return L(1+t*s(2*n)+e*s(4*n))}function c(r){var i=r*n;return(2*i+(1+t-e/2)*v(2*i)+(t+e)/2*v(4*i)+e/2*v(6*i))/n}function u(t){return l(t)*v(t)}var f=function(t,e){var r=n*Q(c,o*v(e)/n,e/x);isNaN(r)&&(r=n*g(e));var u=i*l(r);return[u*a*t/x*s(r),u/a*v(r)]};return f.invert=function(t,e){var r=Q(u,e*a/i);return[t*x/(s(r)*i*a*l(r)),C(n*c(r/n)/o)]},0===n&&(i=L(r/x),(f=function(t,e){return[t*i,v(e)/i]}).invert=function(t,e){return[t/i,C(e*i)]}),f}function rn(){var t=1,e=0,n=45*E,i=2,a=(0,r.r)(nn),o=a(t,e,n,i);return o.a=function(r){return arguments.length?a(t=+r,e,n,i):t},o.b=function(r){return arguments.length?a(t,e=+r,n,i):e},o.psiMax=function(r){return arguments.length?a(t,e,n=+r*E,i):n*S},o.ratio=function(r){return arguments.length?a(t,e,n,i=+r):i},o.scale(180.739)}function an(t,e,n,r,i,a,o,s,l,c,u){if(u.nanEncountered)return NaN;var f,h,d,p,g,v,m,y,b,x;if(h=t(e+.25*(f=n-e)),d=t(n-.25*f),isNaN(h))u.nanEncountered=!0;else{if(!isNaN(d))return x=((v=(p=f*(r+4*h+i)/12)+(g=f*(i+4*d+a)/12))-o)/15,c>l?(u.maxDepthCount++,v+x):Math.abs(x)>1;do{c[r]>t?n=r:e=r,r=e+n>>1}while(r>e);var i=c[r+1]-c[r];return i&&(i=(t-c[r+1])/i),(r+1+i)/s}var h=2*f(1)/x*o/n,p=function(t,e){var n=f(i(v(e))),a=r(n)*t;return n/=h,[a,e>=0?n:-n]};return p.invert=function(t,e){var n;return i(e*=h)<1&&(n=g(e)*C(a(i(e))*o)),[t/r(i(e)),n]},p}function ln(){var t=0,e=2.5,n=1.183136,i=(0,r.r)(sn),a=i(t,e,n);return a.alpha=function(r){return arguments.length?i(t=+r,e,n):t},a.k=function(r){return arguments.length?i(t,e=+r,n):e},a.gamma=function(r){return arguments.length?i(t,e,n=+r):n},a.scale(152.63)}function cn(t,e){return i(t[0]-e[0])a[o][2][0];++o);var l=t(n-a[o][1][0],r);return l[0]+=t(a[o][1][0],i*r>i*a[o][0][1]?a[o][0][1]:r)[0],l}n?o.invert=n(o):t.invert&&(o.invert=function(n,r){for(var i=a[+(r<0)],s=e[+(r<0)],l=0,c=i.length;l=0;--s)n=(e=t[1][s])[0][0],r=e[0][1],i=e[1][1],a=e[2][0],o=e[2][1],l.push(un([[a-y,o-y],[a-y,i+y],[n+y,i+y],[n+y,r-y]],30));return{type:"Polygon",coordinates:[(0,Fe.TS)(l)]}}(n),e=n.map((function(t){return t.map((function(t){return[[t[0][0]*E,t[0][1]*E],[t[1][0]*E,t[1][1]*E],[t[2][0]*E,t[2][1]*E]]}))})),a=e.map((function(e){return e.map((function(e){var n,r=t(e[0][0],e[0][1])[0],i=t(e[2][0],e[2][1])[0],a=t(e[1][0],e[0][1])[1],o=t(e[1][0],e[1][1])[1];return a>o&&(n=a,a=o,o=n),[[r,a],[i,o]]}))})),s):e.map((function(t){return t.map((function(t){return[[t[0][0]*S,t[0][1]*S],[t[1][0]*S,t[1][1]*S],[t[2][0]*S,t[2][1]*S]]}))}))},null!=e&&s.lobes(e),s}Je.invert=function(t,e){return e>-Ke?at.invert(t,e-Ze):ht.invert(t,e)},tn.invert=function(t,e){return i(e)>Ke?at.invert(t,e+(e>0?Ze:-Ze)):ht.invert(t,e)};var hn=[[[[-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 dn(){return fn(ct,hn).scale(160.857)}var pn=[[[[-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 gn(){return fn(tn,pn).scale(152.63)}var vn=[[[[-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 mn(){return fn(at,vn).scale(169.529)}var yn=[[[[-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 bn(){return fn(at,yn).scale(169.529).rotate([20,0])}var xn=[[[[-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 wn(){return fn(Je,xn,tt).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var _n=[[[[-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 kn(){return fn(ht,_n).scale(152.63).rotate([-20,0])}function Tn(t,e){return[3/A*t*L(x*x/3-e*e),e]}function Mn(){return(0,r.Z)(Tn).scale(158.837)}function An(t){function e(e,n){if(i(i(n)-w)2)return null;var a=(e/=2)*e,s=(n/=2)*n,l=2*n/(1+a+s);return l=d((1+l)/(1-l),1/t),[o(2*e,1-a-s)/t,C((l-1)/(l+1))]},e}function Sn(){var t=.5,e=(0,r.r)(An),n=e(t);return n.spacing=function(n){return arguments.length?e(t=+n):t},n.scale(124.75)}Tn.invert=function(t,e){return[A/3*t/L(x*x/3-e*e),e]};var En=x/T;function Cn(t,e){return[t*(1+L(s(e)))/2,e/(s(e/2)*s(t/6))]}function Pn(){return(0,r.Z)(Cn).scale(97.2672)}function Ln(t,e){var n=t*t,r=e*e;return[t*(.975534+r*(-.0143059*n-.119161+-.0547009*r)),e*(1.00384+n*(.0802894+-.02855*r+199025e-9*n)+r*(.0998909+-.0491032*r))]}function On(){return(0,r.Z)(Ln).scale(139.98)}function In(t,e){return[v(t)/s(e),m(e)*s(t)]}function Dn(){return(0,r.Z)(In).scale(144.049).clipAngle(89.999)}function Rn(t){var e=s(t),n=m(_+t/2);function r(r,a){var o=a-t,s=i(o)=0;)h=(f=t[u])[0]+l*(i=h)-c*d,d=f[1]+l*d+c*i;return[h=l*(i=h)-c*d,d=l*d+c*i]}return n.invert=function(n,r){var l=20,c=n,u=r;do{for(var f,h=e,d=t[h],p=d[0],g=d[1],m=0,b=0;--h>=0;)m=p+c*(f=m)-u*b,b=g+c*b+u*f,p=(d=t[h])[0]+c*(f=p)-u*g,g=d[1]+c*g+u*f;var x,w,_=(m=p+c*(f=m)-u*b)*m+(b=g+c*b+u*f)*b;c-=x=((p=c*(f=p)-u*g-n)*m+(g=c*g+u*f-r)*b)/_,u-=w=(g*m-p*b)/_}while(i(x)+i(w)>y*y&&--l>0);if(l){var k=L(c*c+u*u),T=2*a(.5*k),M=v(T);return[o(c*M,k*s(T)),k?C(u*M/k):0]}},n}Cn.invert=function(t,e){var n=i(t),r=i(e),a=y,o=w;ry||i(b)>y)&&--a>0);return a&&[n,r]},In.invert=function(t,e){var n=t*t,r=e*e+1,i=n+r,a=t?k*L((i-L(i*i-4*n))/n):1/L(r);return[C(t*a),g(e)*P(a)]},Nn.invert=function(t,e){return[t,2.5*a(l(.8*e))-.625*x]};var Bn=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],Un=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Hn=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],Vn=[[.9245,0],[0,0],[.01943,0]],qn=[[.721316,0],[0,0],[-.00881625,-.00617325]];function Gn(){return Kn(Bn,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function Wn(){return Kn(Un,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Yn(){return Kn(Hn,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function $n(){return Kn(Vn,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function Xn(){return Kn(qn,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function Kn(t,e){var n=(0,r.Z)(Fn(t)).rotate(e).clipAngle(90),i=(0,wt.Z)(e),a=n.center;return delete n.rotate,n.center=function(t){return arguments.length?a(i(t)):i.invert(a())},n}var Zn=L(6),Jn=L(7);function Qn(t,e){var n=C(7*v(e)/(3*Zn));return[Zn*t*(2*s(2*n/3)-1)/Jn,9*v(n/3)/Jn]}function tr(){return(0,r.Z)(Qn).scale(164.859)}function er(t,e){for(var n,r=(1+k)*v(e),a=e,o=0;o<25&&(a-=n=(v(a/2)+v(a)-r)/(.5*s(a/2)+s(a)),!(i(n)b&&--l>0);return[t/(.84719-.13063*(r=s*s)+(o=r*(a=r*r))*o*(.05494*r-.04515-.02326*a+.00331*o)),s]},lr.invert=function(t,e){for(var n=e/2,r=0,a=1/0;r<10&&i(a)>y;++r){var o=s(e/2);e-=a=(e-m(e/2)-n)/(1-.5/(o*o))}return[2*t/(1+s(e)),e]};var ur=[[[[-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 fr(){return fn(K(1/0),ur).rotate([20,0]).scale(152.63)}function hr(t,e){var n=v(e),r=s(e),a=g(t);if(0===t||i(e)===w)return[0,e];if(0===e)return[t,0];if(i(t)===w)return[t*r,w*n];var o=x/(2*t)-2*t/x,l=2*e/x,c=(1-l*l)/(n-l),u=o*o,f=c*c,h=1+u/f,d=1+f/u,p=(o*n/c-o/2)/h,m=(f*n/u+c/2)/d,y=m*m-(f*n*n/u+c*n-1)/d;return[w*(p+L(p*p+r*r/h)*a),w*(m+L(y<0?0:y)*g(-e*o)*a)]}function dr(){return(0,r.Z)(hr).scale(127.267)}hr.invert=function(t,e){var n=(t/=w)*t,r=n+(e/=w)*e,i=x*x;return[t?(r-1+L((1-r)*(1-r)+4*n))/(2*t)*w:0,Q((function(t){return r*(x*v(t)-2*t)*x+4*t*t*(e-v(t))+2*x*t-i*e}),0)]};var pr=1.0148,gr=.23185,vr=-.14499,mr=.02406,yr=pr,br=5*gr,xr=7*vr,wr=9*mr,_r=1.790857183;function kr(t,e){var n=e*e;return[t,e*(pr+n*n*(gr+n*(vr+mr*n)))]}function Tr(){return(0,r.Z)(kr).scale(139.319)}function Mr(t,e){if(i(e)_r?e=_r:e<-1.790857183&&(e=-1.790857183);var n,r=e;do{var a=r*r;r-=n=(r*(pr+a*a*(gr+a*(vr+mr*a)))-e)/(yr+a*a*(br+a*(xr+wr*a)))}while(i(n)>y);return[t,r]},Mr.invert=function(t,e){if(i(e)y&&--o>0);return l=m(a),[(i(e)=0;)if(r=e[s],n[0]===r[0]&&n[1]===r[1]){if(a)return[a,n];a=n}}}(e.face,n.face),i=Cr(r.map(n.project),r.map(e.project));e.transform=n.transform?Pr(n.transform,i):i;for(var a=n.edges,o=0,s=a.length;o0?[-e[0],0]:[180-e[0],180])};var e=Fr.map((function(e){return{face:e,project:t(e)}}));return[-1,0,0,1,0,1,4,5].forEach((function(t,n){var r=e[t];r&&(r.children||(r.children=[])).push(e[n])})),Ir(e[0],(function(t,n){return e[t<-x/2?n<0?6:4:t<0?n<0?2:0:tr^d>r&&n<(h-c)*(r-u)/(d-u)+c&&(i=!i)}return i}(t[0],n))return t.push(e),!0}))||t.push([e])})),ti=[],t.length?t.length>1?{type:"MultiPolygon",coordinates:t}:{type:"Polygon",coordinates:t[0]}:null}};function ii(t){var e=t(w,0)[0]-t(-w,0)[0];function n(n,r){var a=i(n)0?n-x:n+x,r),s=(o[0]-o[1])*k,l=(o[0]+o[1])*k;if(a)return[s,l];var c=e*k,u=s>0^l>0?-1:1;return[u*s-g(l)*c,u*l-g(s)*c]}return t.invert&&(n.invert=function(n,r){var a=(n+r)*k,o=(r-n)*k,s=i(a)<.5*e&&i(o)<.5*e;if(!s){var l=e*k,c=a>0^o>0?-1:1,u=-c*n+(o>0?1:-1)*l,f=-c*r+(a>0?1:-1)*l;a=(-u-f)*k,o=(u-f)*k}var h=t.invert(a,o);return s||(h[0]+=a>0?x:-x),h}),(0,r.Z)(n).rotate([-90,-90,45]).clipAngle(179.999)}function ai(){return ii(Ce).scale(176.423)}function oi(){return ii(Ie).scale(111.48)}function si(t,e){if(!(0<=(e=+e)&&e<=20))throw new Error("invalid digits");function n(t){var n=t.length,r=2,i=new Array(n);for(i[0]=+t[0].toFixed(e),i[1]=+t[1].toFixed(e);r2||a[0]!=e[0]||a[1]!=e[1])&&(r.push(a),e=a)}return 1===r.length&&t.length>1&&r.push(n(t[t.length-1])),r}function a(t){return t.map(i)}function o(t){if(null==t)return t;var e;switch(t.type){case"GeometryCollection":e={type:"GeometryCollection",geometries:t.geometries.map(o)};break;case"Point":e={type:"Point",coordinates:n(t.coordinates)};break;case"MultiPoint":e={type:t.type,coordinates:r(t.coordinates)};break;case"LineString":e={type:t.type,coordinates:i(t.coordinates)};break;case"MultiLineString":case"Polygon":e={type:t.type,coordinates:a(t.coordinates)};break;case"MultiPolygon":e={type:"MultiPolygon",coordinates:t.coordinates.map(a)};break;default:return t}return null!=t.bbox&&(e.bbox=t.bbox),e}function s(t){var e={type:"Feature",properties:t.properties,geometry:o(t.geometry)};return null!=t.id&&(e.id=t.id),null!=t.bbox&&(e.bbox=t.bbox),e}if(null!=t)switch(t.type){case"Feature":return s(t);case"FeatureCollection":var l={type:"FeatureCollection",features:t.features.map(s)};return null!=t.bbox&&(l.bbox=t.bbox),l;default:return o(t)}return t}function li(t){var e=v(t);function n(n,r){var i=e?m(n*e/2)/e:n/2;if(!r)return[2*i,-t];var o=2*a(i*v(r)),l=1/m(r);return[v(o)*l,r+(1-s(o))*l-t]}return n.invert=function(n,r){if(i(r+=t)y&&--u>0);var p=n*(f=m(c)),g=m(i(r)0?w:-w)*(f+o*(p-l)/2+o*o*(p-2*f+l)/2)]}function hi(){return(0,r.Z)(fi).scale(152.63)}function di(t,e){var n=function(t){function e(e,n){var r=s(n),i=(t-1)/(t-r*s(e));return[i*r*v(e),i*v(n)]}return e.invert=function(e,n){var r=e*e+n*n,i=L(r),a=(t-L(1-r*(t+1)/(t-1)))/((t-1)/i+i/(t-1));return[o(e*a,i*L(1-a*a)),i?C(n*a/i):0]},e}(t);if(!e)return n;var r=s(e),i=v(e);function a(e,a){var o=n(e,a),s=o[1],l=s*i/(t-1)+r;return[o[0]*r/l,s/l]}return a.invert=function(e,a){var o=(t-1)/(t-1-a*i);return n.invert(o*e,o*a*r)},a}function pi(){var t=2,e=0,n=(0,r.r)(di),i=n(t,e);return i.distance=function(r){return arguments.length?n(t=+r,e):t},i.tilt=function(r){return arguments.length?n(t,e=r*E):e*S},i.scale(432.147).clipAngle(P(1/t)*S-1e-6)}ui.forEach((function(t){t[1]*=1.0144})),fi.invert=function(t,e){var n=e/w,r=90*n,a=h(18,i(r/5)),o=f(0,c(a));do{var s=ui[o][1],l=ui[o+1][1],u=ui[h(19,o+2)][1],d=u-s,p=u-2*l+s,g=2*(i(n)-l)/d,v=p/d,m=g*(1-v*g*(1-2*v*g));if(m>=0||1===o){r=(e>=0?5:-5)*(m+a);var y,x=50;do{m=(a=h(18,i(r)/5))-(o=c(a)),s=ui[o][1],l=ui[o+1][1],u=ui[h(19,o+2)][1],r-=(y=(e>=0?w:-w)*(l+m*(u-s)/2+m*m*(u-2*l+s)/2)-e)*S}while(i(y)>b&&--x>0);break}}while(--o>=0);var _=ui[o][0],k=ui[o+1][0],T=ui[h(19,o+2)][0];return[t/(k+m*(T-_)/2+m*m*(T-2*k+_)/2),r*E]};var gi=1e-4,vi=1e4,mi=-180,yi=mi+gi,bi=180,xi=bi-gi,wi=-90,_i=wi+gi,ki=90,Ti=ki-gi;function Mi(t){return t.length>0}function Ai(t){return t===wi||t===ki?[0,t]:[mi,(e=t,Math.floor(e*vi)/vi)];var e}function Si(t){var e=t[0],n=t[1],r=!1;return e<=yi?(e=mi,r=!0):e>=xi&&(e=bi,r=!0),n<=_i?(n=wi,r=!0):n>=Ti&&(n=ki,r=!0),r?[e,n]:t}function Ei(t){return t.map(Si)}function Ci(t,e,n){for(var r=0,i=t.length;r=xi||u<=_i||u>=Ti){a[o]=Si(l);for(var f=o+1;fyi&&d_i&&p=s)break;n.push({index:-1,polygon:e,ring:a=a.slice(f-1)}),a[0]=Ai(a[0][1]),o=-1,s=a.length}}}}function Pi(t){var e,n,r,i,a,o,s=t.length,l={},c={};for(e=0;e0?x-l:l)*S],u=(0,r.Z)(t(s)).rotate(c),f=(0,wt.Z)(c),h=u.center;return delete u.rotate,u.center=function(t){return arguments.length?h(f(t)):f.invert(h())},u.clipAngle(90)}function Ni(t){var e=s(t);function n(t,n){var r=(0,Nr.M)(t,n);return r[0]*=e,r}return n.invert=function(t,n){return Nr.M.invert(t/e,n)},n}function ji(){return Fi([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function Fi(t,e){return zi(Ni,t,e)}function Bi(t){if(!(t*=2))return W.N;var e=-t/2,n=-e,r=t*t,i=m(n),a=.5/v(n);function l(i,a){var o=P(s(a)*s(i-e)),l=P(s(a)*s(i-n));return[((o*=o)-(l*=l))/(2*t),(a<0?-1:1)*L(4*r*l-(r-o+l)*(r-o+l))/(2*t)]}return l.invert=function(t,r){var l,c,u=r*r,f=s(L(u+(l=t+e)*l)),h=s(L(u+(l=t+n)*l));return[o(c=f-h,l=(f+h)*i),(r<0?-1:1)*P(L(l*l+c*c)*a)]},l}function Ui(){return Hi([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function Hi(t,e){return zi(Bi,t,e)}function Vi(t,e){if(i(e)y&&--l>0);return[g(t)*(L(a*a+4)+a)*x/4,w*s]};var ta=4*x+3*L(3),ea=2*L(2*x*L(3)/ta),na=it(ea*L(3)/x,ea,ta/6);function ra(){return(0,r.Z)(na).scale(176.84)}function ia(t,e){return[t*L(1-3*e*e/(x*x)),e]}function aa(){return(0,r.Z)(ia).scale(152.63)}function oa(t,e){var n=s(e),r=s(t)*n,i=1-r,a=s(t=o(v(t)*n,-v(e))),l=v(t);return[l*(n=L(1-r*r))-a*i,-a*n-l*i]}function sa(){return(0,r.Z)(oa).rotate([0,-90,45]).scale(124.75).clipAngle(179.999)}function la(t,e){var n=z(t,e);return[(n[0]+t/w)/2,(n[1]+e)/2]}function ca(){return(0,r.Z)(la).scale(158.837)}ia.invert=function(t,e){return[t/L(1-3*e*e/(x*x)),e]},oa.invert=function(t,e){var n=(t*t+e*e)/-2,r=L(-n*(2+n)),i=e*n+t*r,a=t*n-e*r,s=L(a*a+i*i);return[o(r*i,s*(1+n)),s?-C(r*a/s):0]},la.invert=function(t,e){var n=t,r=e,a=25;do{var o,l=s(r),c=v(r),u=v(2*r),f=c*c,h=l*l,d=v(n),p=s(n/2),g=v(n/2),m=g*g,b=1-h*p*p,x=b?P(l*p)*L(o=1/b):o=0,_=.5*(2*x*l*g+n/w)-t,k=.5*(x*c+r)-e,T=.5*o*(h*m+x*l*p*f)+.5/w,M=o*(d*u/4-x*c*g),A=.125*o*(u*g-x*c*h*d),S=.5*o*(f*p+x*m*l)+.5,E=M*A-S*T,C=(k*M-_*S)/E,O=(_*A-k*T)/E;n-=C,r-=O}while((i(C)>y||i(O)>y)&&--a>0);return[n,r]}},33940:function(t,e,n){"use strict";function r(){return new i}function i(){this.reset()}n.d(e,{Z:function(){return r}}),i.prototype={constructor:i,reset:function(){this.s=this.t=0},add:function(t){o(a,t,this.t),o(this,a.s,this.s),this.s?this.t+=a.t:this.s=a.t},valueOf:function(){return this.s}};var a=new i;function o(t,e,n){var r=t.s=e+n,i=r-e,a=r-i;t.t=e-a+(n-i)}},97860:function(t,e,n){"use strict";n.d(e,{L9:function(){return h},ZP:function(){return b},gL:function(){return p}});var r,i,a,o,s,l=n(33940),c=n(39695),u=n(73182),f=n(72736),h=(0,l.Z)(),d=(0,l.Z)(),p={point:u.Z,lineStart:u.Z,lineEnd:u.Z,polygonStart:function(){h.reset(),p.lineStart=g,p.lineEnd=v},polygonEnd:function(){var t=+h;d.add(t<0?c.BZ+t:t),this.lineStart=this.lineEnd=this.point=u.Z},sphere:function(){d.add(c.BZ)}};function g(){p.point=m}function v(){y(r,i)}function m(t,e){p.point=y,r=t,i=e,t*=c.uR,e*=c.uR,a=t,o=(0,c.mC)(e=e/2+c.pu),s=(0,c.O$)(e)}function y(t,e){t*=c.uR,e=(e*=c.uR)/2+c.pu;var n=t-a,r=n>=0?1:-1,i=r*n,l=(0,c.mC)(e),u=(0,c.O$)(e),f=s*u,d=o*l+f*(0,c.mC)(i),p=f*r*(0,c.O$)(i);h.add((0,c.fv)(p,d)),a=t,o=l,s=u}function b(t){return d.reset(),(0,f.Z)(t,p),2*d}},77338:function(t,e,n){"use strict";n.d(e,{Z:function(){return P}});var r,i,a,o,s,l,c,u,f,h,d=n(33940),p=n(97860),g=n(7620),v=n(39695),m=n(72736),y=(0,d.Z)(),b={point:x,lineStart:_,lineEnd:k,polygonStart:function(){b.point=T,b.lineStart=M,b.lineEnd=A,y.reset(),p.gL.polygonStart()},polygonEnd:function(){p.gL.polygonEnd(),b.point=x,b.lineStart=_,b.lineEnd=k,p.L9<0?(r=-(a=180),i=-(o=90)):y>v.Ho?o=90:y<-v.Ho&&(i=-90),h[0]=r,h[1]=a},sphere:function(){r=-(a=180),i=-(o=90)}};function x(t,e){f.push(h=[r=t,a=t]),eo&&(o=e)}function w(t,e){var n=(0,g.Og)([t*v.uR,e*v.uR]);if(u){var l=(0,g.T5)(u,n),c=[l[1],-l[0],0],d=(0,g.T5)(c,l);(0,g.iJ)(d),d=(0,g.Y1)(d);var p,m=t-s,y=m>0?1:-1,b=d[0]*v.RW*y,x=(0,v.Wn)(m)>180;x^(y*so&&(o=p):x^(y*s<(b=(b+360)%360-180)&&bo&&(o=e)),x?tS(r,a)&&(a=t):S(t,a)>S(r,a)&&(r=t):a>=r?(ta&&(a=t)):t>s?S(r,t)>S(r,a)&&(a=t):S(t,a)>S(r,a)&&(r=t)}else f.push(h=[r=t,a=t]);eo&&(o=e),u=n,s=t}function _(){b.point=w}function k(){h[0]=r,h[1]=a,b.point=x,u=null}function T(t,e){if(u){var n=t-s;y.add((0,v.Wn)(n)>180?n+(n>0?360:-360):n)}else l=t,c=e;p.gL.point(t,e),w(t,e)}function M(){p.gL.lineStart()}function A(){T(l,c),p.gL.lineEnd(),(0,v.Wn)(y)>v.Ho&&(r=-(a=180)),h[0]=r,h[1]=a,u=null}function S(t,e){return(e-=t)<0?e+360:e}function E(t,e){return t[0]-e[0]}function C(t,e){return t[0]<=t[1]?t[0]<=e&&e<=t[1]:eS(s[0],s[1])&&(s[1]=l[1]),S(l[0],s[1])>S(s[0],s[1])&&(s[0]=l[0])):c.push(s=l);for(u=-1/0,e=0,s=c[n=c.length-1];e<=n;s=l,++e)l=c[e],(d=S(s[1],l[0]))>u&&(u=d,r=l[0],a=s[1])}return f=h=null,r===1/0||i===1/0?[[NaN,NaN],[NaN,NaN]]:[[r,i],[a,o]]}},7620:function(t,e,n){"use strict";n.d(e,{Og:function(){return a},T:function(){return c},T5:function(){return s},Y1:function(){return i},iJ:function(){return u},j9:function(){return o},s0:function(){return l}});var r=n(39695);function i(t){return[(0,r.fv)(t[1],t[0]),(0,r.ZR)(t[2])]}function a(t){var e=t[0],n=t[1],i=(0,r.mC)(n);return[i*(0,r.mC)(e),i*(0,r.O$)(e),(0,r.O$)(n)]}function o(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function s(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}function l(t,e){t[0]+=e[0],t[1]+=e[1],t[2]+=e[2]}function c(t,e){return[t[0]*e,t[1]*e,t[2]*e]}function u(t){var e=(0,r._b)(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=e,t[1]/=e,t[2]/=e}},66624:function(t,e,n){"use strict";n.d(e,{Z:function(){return I}});var r,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b=n(39695),x=n(73182),w=n(72736),_={sphere:x.Z,point:k,lineStart:M,lineEnd:E,polygonStart:function(){_.lineStart=C,_.lineEnd=P},polygonEnd:function(){_.lineStart=M,_.lineEnd=E}};function k(t,e){t*=b.uR,e*=b.uR;var n=(0,b.mC)(e);T(n*(0,b.mC)(t),n*(0,b.O$)(t),(0,b.O$)(e))}function T(t,e,n){++r,a+=(t-a)/r,o+=(e-o)/r,s+=(n-s)/r}function M(){_.point=A}function A(t,e){t*=b.uR,e*=b.uR;var n=(0,b.mC)(e);v=n*(0,b.mC)(t),m=n*(0,b.O$)(t),y=(0,b.O$)(e),_.point=S,T(v,m,y)}function S(t,e){t*=b.uR,e*=b.uR;var n=(0,b.mC)(e),r=n*(0,b.mC)(t),a=n*(0,b.O$)(t),o=(0,b.O$)(e),s=(0,b.fv)((0,b._b)((s=m*o-y*a)*s+(s=y*r-v*o)*s+(s=v*a-m*r)*s),v*r+m*a+y*o);i+=s,l+=s*(v+(v=r)),c+=s*(m+(m=a)),u+=s*(y+(y=o)),T(v,m,y)}function E(){_.point=k}function C(){_.point=L}function P(){O(p,g),_.point=k}function L(t,e){p=t,g=e,t*=b.uR,e*=b.uR,_.point=O;var n=(0,b.mC)(e);v=n*(0,b.mC)(t),m=n*(0,b.O$)(t),y=(0,b.O$)(e),T(v,m,y)}function O(t,e){t*=b.uR,e*=b.uR;var n=(0,b.mC)(e),r=n*(0,b.mC)(t),a=n*(0,b.O$)(t),o=(0,b.O$)(e),s=m*o-y*a,p=y*r-v*o,g=v*a-m*r,x=(0,b._b)(s*s+p*p+g*g),w=(0,b.ZR)(x),_=x&&-w/x;f+=_*s,h+=_*p,d+=_*g,i+=w,l+=w*(v+(v=r)),c+=w*(m+(m=a)),u+=w*(y+(y=o)),T(v,m,y)}function I(t){r=i=a=o=s=l=c=u=f=h=d=0,(0,w.Z)(t,_);var e=f,n=h,p=d,g=e*e+n*n+p*p;return g0?os)&&(o+=i*a.BZ));for(var h,d=o;i>0?d>s:d0?i.pi:-i.pi,c=(0,i.Wn)(o-n);(0,i.Wn)(c-i.pi)0?i.ou:-i.ou),t.point(a,r),t.lineEnd(),t.lineStart(),t.point(l,r),t.point(o,r),e=0):a!==l&&c>=i.pi&&((0,i.Wn)(n-a)i.Ho?(0,i.z4)(((0,i.O$)(e)*(o=(0,i.mC)(r))*(0,i.O$)(n)-(0,i.O$)(r)*(a=(0,i.mC)(e))*(0,i.O$)(t))/(a*o*s)):(e+r)/2}(n,r,o,s),t.point(a,r),t.lineEnd(),t.lineStart(),t.point(l,r),e=0),t.point(n=o,r=s),a=l},lineEnd:function(){t.lineEnd(),n=r=NaN},clean:function(){return 2-e}}}),(function(t,e,n,r){var a;if(null==t)a=n*i.ou,r.point(-i.pi,a),r.point(0,a),r.point(i.pi,a),r.point(i.pi,0),r.point(i.pi,-a),r.point(0,-a),r.point(-i.pi,-a),r.point(-i.pi,0),r.point(-i.pi,a);else if((0,i.Wn)(t[0]-e[0])>i.Ho){var o=t[0]1&&e.push(e.pop().concat(e.shift()))},result:function(){var n=e;return e=[],t=null,n}}}},1457:function(t,e,n){"use strict";n.d(e,{Z:function(){return l}});var r=n(7620),i=n(7613),a=n(39695),o=n(67108),s=n(97023);function l(t){var e=(0,a.mC)(t),n=6*a.uR,l=e>0,c=(0,a.Wn)(e)>a.Ho;function u(t,n){return(0,a.mC)(t)*(0,a.mC)(n)>e}function f(t,n,i){var o=(0,r.Og)(t),s=(0,r.Og)(n),l=[1,0,0],c=(0,r.T5)(o,s),u=(0,r.j9)(c,c),f=c[0],h=u-f*f;if(!h)return!i&&t;var d=e*u/h,p=-e*f/h,g=(0,r.T5)(l,c),v=(0,r.T)(l,d),m=(0,r.T)(c,p);(0,r.s0)(v,m);var y=g,b=(0,r.j9)(v,y),x=(0,r.j9)(y,y),w=b*b-x*((0,r.j9)(v,v)-1);if(!(w<0)){var _=(0,a._b)(w),k=(0,r.T)(y,(-b-_)/x);if((0,r.s0)(k,v),k=(0,r.Y1)(k),!i)return k;var T,M=t[0],A=n[0],S=t[1],E=n[1];A0^k[1]<((0,a.Wn)(k[0]-M)a.pi^(M<=k[0]&&k[0]<=A)){var L=(0,r.T)(y,(-b+_)/x);return(0,r.s0)(L,v),[k,(0,r.Y1)(L)]}}}function h(e,n){var r=l?t:a.pi-t,i=0;return e<-r?i|=1:e>r&&(i|=2),n<-r?i|=4:n>r&&(i|=8),i}return(0,s.Z)(u,(function(t){var e,n,r,i,s;return{lineStart:function(){i=r=!1,s=1},point:function(d,p){var g,v=[d,p],m=u(d,p),y=l?m?0:h(d,p):m?h(d+(d<0?a.pi:-a.pi),p):0;if(!e&&(i=r=m)&&t.lineStart(),m!==r&&(!(g=f(e,v))||(0,o.Z)(e,g)||(0,o.Z)(v,g))&&(v[2]=1),m!==r)s=0,m?(t.lineStart(),g=f(v,e),t.point(g[0],g[1])):(g=f(e,v),t.point(g[0],g[1],2),t.lineEnd()),e=g;else if(c&&e&&l^m){var b;y&n||!(b=f(v,e,!0))||(s=0,l?(t.lineStart(),t.point(b[0][0],b[0][1]),t.point(b[1][0],b[1][1]),t.lineEnd()):(t.point(b[1][0],b[1][1]),t.lineEnd(),t.lineStart(),t.point(b[0][0],b[0][1],3)))}!m||e&&(0,o.Z)(e,v)||t.point(v[0],v[1]),e=v,r=m,n=y},lineEnd:function(){r&&t.lineEnd(),e=null},clean:function(){return s|(i&&r)<<1}}}),(function(e,r,a,o){(0,i.m)(o,t,n,a,e,r)}),l?[0,-t]:[-a.pi,t-a.pi])}},97023:function(t,e,n){"use strict";n.d(e,{Z:function(){return l}});var r=n(85272),i=n(46225),a=n(39695),o=n(23071),s=n(33064);function l(t,e,n,a){return function(l){var f,h,d,p=e(l),g=(0,r.Z)(),v=e(g),m=!1,y={point:b,lineStart:w,lineEnd:_,polygonStart:function(){y.point=k,y.lineStart=T,y.lineEnd=M,h=[],f=[]},polygonEnd:function(){y.point=b,y.lineStart=w,y.lineEnd=_,h=(0,s.TS)(h);var t=(0,o.Z)(f,a);h.length?(m||(l.polygonStart(),m=!0),(0,i.Z)(h,u,t,n,l)):t&&(m||(l.polygonStart(),m=!0),l.lineStart(),n(null,null,1,l),l.lineEnd()),m&&(l.polygonEnd(),m=!1),h=f=null},sphere:function(){l.polygonStart(),l.lineStart(),n(null,null,1,l),l.lineEnd(),l.polygonEnd()}};function b(e,n){t(e,n)&&l.point(e,n)}function x(t,e){p.point(t,e)}function w(){y.point=x,p.lineStart()}function _(){y.point=b,p.lineEnd()}function k(t,e){d.push([t,e]),v.point(t,e)}function T(){v.lineStart(),d=[]}function M(){k(d[0][0],d[0][1]),v.lineEnd();var t,e,n,r,i=v.clean(),a=g.result(),o=a.length;if(d.pop(),f.push(d),d=null,o)if(1&i){if((e=(n=a[0]).length-1)>0){for(m||(l.polygonStart(),m=!0),l.lineStart(),t=0;t1&&2&i&&a.push(a.pop().concat(a.shift())),h.push(a.filter(c))}return y}}function c(t){return t.length>1}function u(t,e){return((t=t.x)[0]<0?t[1]-a.ou-a.Ho:a.ou-t[1])-((e=e.x)[0]<0?e[1]-a.ou-a.Ho:a.ou-e[1])}},87605:function(t,e,n){"use strict";n.d(e,{Z:function(){return c}});var r=n(39695),i=n(85272),a=n(46225),o=n(33064),s=1e9,l=-s;function c(t,e,n,c){function u(r,i){return t<=r&&r<=n&&e<=i&&i<=c}function f(r,i,a,o){var s=0,l=0;if(null==r||(s=h(r,a))!==(l=h(i,a))||p(r,i)<0^a>0)do{o.point(0===s||3===s?t:n,s>1?c:e)}while((s=(s+a+4)%4)!==l);else o.point(i[0],i[1])}function h(i,a){return(0,r.Wn)(i[0]-t)0?0:3:(0,r.Wn)(i[0]-n)0?2:1:(0,r.Wn)(i[1]-e)0?1:0:a>0?3:2}function d(t,e){return p(t.x,e.x)}function p(t,e){var n=h(t,1),r=h(e,1);return n!==r?n-r:0===n?e[1]-t[1]:1===n?t[0]-e[0]:2===n?t[1]-e[1]:e[0]-t[0]}return function(r){var h,p,g,v,m,y,b,x,w,_,k,T=r,M=(0,i.Z)(),A={point:S,lineStart:function(){A.point=E,p&&p.push(g=[]),_=!0,w=!1,b=x=NaN},lineEnd:function(){h&&(E(v,m),y&&w&&M.rejoin(),h.push(M.result())),A.point=S,w&&T.lineEnd()},polygonStart:function(){T=M,h=[],p=[],k=!0},polygonEnd:function(){var e=function(){for(var e=0,n=0,r=p.length;nc&&(f-i)*(c-a)>(h-a)*(t-i)&&++e:h<=c&&(f-i)*(c-a)<(h-a)*(t-i)&&--e;return e}(),n=k&&e,i=(h=(0,o.TS)(h)).length;(n||i)&&(r.polygonStart(),n&&(r.lineStart(),f(null,null,1,r),r.lineEnd()),i&&(0,a.Z)(h,d,e,f,r),r.polygonEnd()),T=r,h=p=g=null}};function S(t,e){u(t,e)&&T.point(t,e)}function E(r,i){var a=u(r,i);if(p&&g.push([r,i]),_)v=r,m=i,y=a,_=!1,a&&(T.lineStart(),T.point(r,i));else if(a&&w)T.point(r,i);else{var o=[b=Math.max(l,Math.min(s,b)),x=Math.max(l,Math.min(s,x))],f=[r=Math.max(l,Math.min(s,r)),i=Math.max(l,Math.min(s,i))];!function(t,e,n,r,i,a){var o,s=t[0],l=t[1],c=0,u=1,f=e[0]-s,h=e[1]-l;if(o=n-s,f||!(o>0)){if(o/=f,f<0){if(o0){if(o>u)return;o>c&&(c=o)}if(o=i-s,f||!(o<0)){if(o/=f,f<0){if(o>u)return;o>c&&(c=o)}else if(f>0){if(o0)){if(o/=h,h<0){if(o0){if(o>u)return;o>c&&(c=o)}if(o=a-l,h||!(o<0)){if(o/=h,h<0){if(o>u)return;o>c&&(c=o)}else if(h>0){if(o0&&(t[0]=s+c*f,t[1]=l+c*h),u<1&&(e[0]=s+u*f,e[1]=l+u*h),!0}}}}}(o,f,t,e,n,c)?a&&(T.lineStart(),T.point(r,i),k=!1):(w||(T.lineStart(),T.point(o[0],o[1])),T.point(f[0],f[1]),a||T.lineEnd(),k=!1)}b=r,x=i,w=a}return A}}},46225:function(t,e,n){"use strict";n.d(e,{Z:function(){return o}});var r=n(67108),i=n(39695);function a(t,e,n,r){this.x=t,this.z=e,this.o=n,this.e=r,this.v=!1,this.n=this.p=null}function o(t,e,n,o,l){var c,u,f=[],h=[];if(t.forEach((function(t){if(!((e=t.length-1)<=0)){var e,n,o=t[0],s=t[e];if((0,r.Z)(o,s)){if(!o[2]&&!s[2]){for(l.lineStart(),c=0;c=0;--c)l.point((p=d[c])[0],p[1]);else o(v.x,v.p.x,-1,l);v=v.p}d=(v=v.o).z,m=!m}while(!v.v);l.lineEnd()}}}function s(t){if(e=t.length){for(var e,n,r=0,i=t[0];++r0&&(i=S(t[a],t[a-1]))>0&&n<=i&&r<=i&&(n+r-i)*(1-Math.pow((n-r)/i,2))v.Ho})).map(l)).concat((0,N.w6)((0,v.mD)(a/d)*d,i,d).filter((function(t){return(0,v.Wn)(t%g)>v.Ho})).map(c))}return y.lines=function(){return b().map((function(t){return{type:"LineString",coordinates:t}}))},y.outline=function(){return{type:"Polygon",coordinates:[u(r).concat(f(o).slice(1),u(n).reverse().slice(1),f(s).reverse().slice(1))]}},y.extent=function(t){return arguments.length?y.extentMajor(t).extentMinor(t):y.extentMinor()},y.extentMajor=function(t){return arguments.length?(r=+t[0][0],n=+t[1][0],s=+t[0][1],o=+t[1][1],r>n&&(t=r,r=n,n=t),s>o&&(t=s,s=o,o=t),y.precision(m)):[[r,s],[n,o]]},y.extentMinor=function(n){return arguments.length?(e=+n[0][0],t=+n[1][0],a=+n[0][1],i=+n[1][1],e>t&&(n=e,e=t,t=n),a>i&&(n=a,a=i,i=n),y.precision(m)):[[e,a],[t,i]]},y.step=function(t){return arguments.length?y.stepMajor(t).stepMinor(t):y.stepMinor()},y.stepMajor=function(t){return arguments.length?(p=+t[0],g=+t[1],y):[p,g]},y.stepMinor=function(t){return arguments.length?(h=+t[0],d=+t[1],y):[h,d]},y.precision=function(h){return arguments.length?(m=+h,l=j(a,i,90),c=F(e,t,m),u=j(s,o,90),f=F(r,n,m),y):m},y.extentMajor([[-180,-90+v.Ho],[180,90-v.Ho]]).extentMinor([[-180,-80-v.Ho],[180,80+v.Ho]])}function U(){return B()()}var H,V,q,G,W=n(83074),Y=n(8593),$=(0,g.Z)(),X=(0,g.Z)(),K={point:m.Z,lineStart:m.Z,lineEnd:m.Z,polygonStart:function(){K.lineStart=Z,K.lineEnd=tt},polygonEnd:function(){K.lineStart=K.lineEnd=K.point=m.Z,$.add((0,v.Wn)(X)),X.reset()},result:function(){var t=$/2;return $.reset(),t}};function Z(){K.point=J}function J(t,e){K.point=Q,H=q=t,V=G=e}function Q(t,e){X.add(G*t-q*e),q=t,G=e}function tt(){Q(H,V)}var et,nt,rt,it,at=K,ot=n(3559),st=0,lt=0,ct=0,ut=0,ft=0,ht=0,dt=0,pt=0,gt=0,vt={point:mt,lineStart:yt,lineEnd:wt,polygonStart:function(){vt.lineStart=_t,vt.lineEnd=kt},polygonEnd:function(){vt.point=mt,vt.lineStart=yt,vt.lineEnd=wt},result:function(){var t=gt?[dt/gt,pt/gt]:ht?[ut/ht,ft/ht]:ct?[st/ct,lt/ct]:[NaN,NaN];return st=lt=ct=ut=ft=ht=dt=pt=gt=0,t}};function mt(t,e){st+=t,lt+=e,++ct}function yt(){vt.point=bt}function bt(t,e){vt.point=xt,mt(rt=t,it=e)}function xt(t,e){var n=t-rt,r=e-it,i=(0,v._b)(n*n+r*r);ut+=i*(rt+t)/2,ft+=i*(it+e)/2,ht+=i,mt(rt=t,it=e)}function wt(){vt.point=mt}function _t(){vt.point=Tt}function kt(){Mt(et,nt)}function Tt(t,e){vt.point=Mt,mt(et=rt=t,nt=it=e)}function Mt(t,e){var n=t-rt,r=e-it,i=(0,v._b)(n*n+r*r);ut+=i*(rt+t)/2,ft+=i*(it+e)/2,ht+=i,dt+=(i=it*t-rt*e)*(rt+t),pt+=i*(it+e),gt+=3*i,mt(rt=t,it=e)}var At=vt;function St(t){this._context=t}St.prototype={_radius:4.5,pointRadius:function(t){return this._radius=t,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._context.closePath(),this._point=NaN},point:function(t,e){switch(this._point){case 0:this._context.moveTo(t,e),this._point=1;break;case 1:this._context.lineTo(t,e);break;default:this._context.moveTo(t+this._radius,e),this._context.arc(t,e,this._radius,0,v.BZ)}},result:m.Z};var Et,Ct,Pt,Lt,Ot,It=(0,g.Z)(),Dt={point:m.Z,lineStart:function(){Dt.point=Rt},lineEnd:function(){Et&&zt(Ct,Pt),Dt.point=m.Z},polygonStart:function(){Et=!0},polygonEnd:function(){Et=null},result:function(){var t=+It;return It.reset(),t}};function Rt(t,e){Dt.point=zt,Ct=Lt=t,Pt=Ot=e}function zt(t,e){Lt-=t,Ot-=e,It.add((0,v._b)(Lt*Lt+Ot*Ot)),Lt=t,Ot=e}var Nt=Dt;function jt(){this._string=[]}function Ft(t){return"m0,"+t+"a"+t+","+t+" 0 1,1 0,"+-2*t+"a"+t+","+t+" 0 1,1 0,"+2*t+"z"}function Bt(t,e){var n,r,i=4.5;function a(t){return t&&("function"===typeof i&&r.pointRadius(+i.apply(this,arguments)),(0,y.Z)(t,n(r))),r.result()}return a.area=function(t){return(0,y.Z)(t,n(at)),at.result()},a.measure=function(t){return(0,y.Z)(t,n(Nt)),Nt.result()},a.bounds=function(t){return(0,y.Z)(t,n(ot.Z)),ot.Z.result()},a.centroid=function(t){return(0,y.Z)(t,n(At)),At.result()},a.projection=function(e){return arguments.length?(n=null==e?(t=null,Y.Z):(t=e).stream,a):t},a.context=function(t){return arguments.length?(r=null==t?(e=null,new jt):new St(e=t),"function"!==typeof i&&r.pointRadius(i),a):e},a.pointRadius=function(t){return arguments.length?(i="function"===typeof t?t:(r.pointRadius(+t),+t),a):i},a.projection(t).context(e)}jt.prototype={_radius:4.5,_circle:Ft(4.5),pointRadius:function(t){return(t=+t)!==this._radius&&(this._radius=t,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._string.push("Z"),this._point=NaN},point:function(t,e){switch(this._point){case 0:this._string.push("M",t,",",e),this._point=1;break;case 1:this._string.push("L",t,",",e);break;default:null==this._circle&&(this._circle=Ft(this._radius)),this._string.push("M",t,",",e,this._circle)}},result:function(){if(this._string.length){var t=this._string.join("");return this._string=[],t}return null}};var Ut=n(15002);function Ht(t){var e=0,n=v.pi/3,r=(0,Ut.r)(t),i=r(e,n);return i.parallels=function(t){return arguments.length?r(e=t[0]*v.uR,n=t[1]*v.uR):[e*v.RW,n*v.RW]},i}function Vt(t,e){var n=(0,v.O$)(t),r=(n+(0,v.O$)(e))/2;if((0,v.Wn)(r)=.12&&i<.234&&r>=-.425&&r<-.214?s:i>=.166&&i<.234&&r>=-.214&&r<-.115?l:o).invert(t)},u.stream=function(n){return t&&e===n?t:t=function(t){var e=t.length;return{point:function(n,r){for(var i=-1;++i0?e<-v.ou+v.Ho&&(e=-v.ou+v.Ho):e>v.ou-v.Ho&&(e=v.ou-v.Ho);var n=i/(0,v.sQ)(te(e),r);return[n*(0,v.O$)(r*t),i-n*(0,v.mC)(r*t)]}return a.invert=function(t,e){var n=i-e,a=(0,v.Xx)(r)*(0,v._b)(t*t+n*n),o=(0,v.fv)(t,(0,v.Wn)(n))*(0,v.Xx)(n);return n*r<0&&(o-=v.pi*(0,v.Xx)(t)*(0,v.Xx)(n)),[o/r,2*(0,v.z4)((0,v.sQ)(i/a,1/r))-v.ou]},a}function ne(){return Ht(ee).scale(109.5).parallels([30,30])}Zt.invert=function(t,e){return[t,2*(0,v.z4)((0,v.Qq)(e))-v.ou]};var re=n(97492);function ie(t,e){var n=(0,v.mC)(t),r=t===e?(0,v.O$)(t):(n-(0,v.mC)(e))/(e-t),i=n/r+t;if((0,v.Wn)(r)2?t[2]+90:90]):[(t=n())[0],t[1],t[2]-90]},n([0,0,90]).scale(159.155)}be.invert=(0,ye.O)((function(t){return 2*(0,v.z4)(t)})),we.invert=function(t,e){return[-e,2*(0,v.z4)((0,v.Qq)(t))-v.ou]}},83074:function(t,e,n){"use strict";n.d(e,{Z:function(){return i}});var r=n(39695);function i(t,e){var n=t[0]*r.uR,i=t[1]*r.uR,a=e[0]*r.uR,o=e[1]*r.uR,s=(0,r.mC)(i),l=(0,r.O$)(i),c=(0,r.mC)(o),u=(0,r.O$)(o),f=s*(0,r.mC)(n),h=s*(0,r.O$)(n),d=c*(0,r.mC)(a),p=c*(0,r.O$)(a),g=2*(0,r.ZR)((0,r._b)((0,r.Jy)(o-i)+s*c*(0,r.Jy)(a-n))),v=(0,r.O$)(g),m=g?function(t){var e=(0,r.O$)(t*=g)/v,n=(0,r.O$)(g-t)/v,i=n*f+e*d,a=n*h+e*p,o=n*l+e*u;return[(0,r.fv)(a,i)*r.RW,(0,r.fv)(o,(0,r._b)(i*i+a*a))*r.RW]}:function(){return[n*r.RW,i*r.RW]};return m.distance=g,m}},39695:function(t,e,n){"use strict";n.d(e,{BZ:function(){return l},Ho:function(){return r},Jy:function(){return M},Kh:function(){return k},O$:function(){return b},OR:function(){return _},Qq:function(){return v},RW:function(){return c},Wn:function(){return f},Xx:function(){return x},ZR:function(){return T},_b:function(){return w},aW:function(){return i},cM:function(){return m},fv:function(){return d},mC:function(){return p},mD:function(){return g},ou:function(){return o},pi:function(){return a},pu:function(){return s},sQ:function(){return y},uR:function(){return u},z4:function(){return h}});var r=1e-6,i=1e-12,a=Math.PI,o=a/2,s=a/4,l=2*a,c=180/a,u=a/180,f=Math.abs,h=Math.atan,d=Math.atan2,p=Math.cos,g=Math.ceil,v=Math.exp,m=(Math.floor,Math.log),y=Math.pow,b=Math.sin,x=Math.sign||function(t){return t>0?1:t<0?-1:0},w=Math.sqrt,_=Math.tan;function k(t){return t>1?0:t<-1?a:Math.acos(t)}function T(t){return t>1?o:t<-1?-o:Math.asin(t)}function M(t){return(t=b(t/2))*t}},73182:function(t,e,n){"use strict";function r(){}n.d(e,{Z:function(){return r}})},3559:function(t,e,n){"use strict";var r=n(73182),i=1/0,a=i,o=-i,s=o,l={point:function(t,e){to&&(o=t),es&&(s=e)},lineStart:r.Z,lineEnd:r.Z,polygonStart:r.Z,polygonEnd:r.Z,result:function(){var t=[[i,a],[o,s]];return o=s=-(a=i=1/0),t}};e.Z=l},67108:function(t,e,n){"use strict";n.d(e,{Z:function(){return i}});var r=n(39695);function i(t,e){return(0,r.Wn)(t[0]-e[0])=0?1:-1,C=E*S,P=C>a.pi,L=b*M;if(o.add((0,a.fv)(L*E*(0,a.O$)(C),x*A+L*(0,a.mC)(C))),u+=P?S+E*a.BZ:S,P^m>=n^k>=n){var O=(0,i.T5)((0,i.Og)(v),(0,i.Og)(_));(0,i.iJ)(O);var I=(0,i.T5)(c,O);(0,i.iJ)(I);var D=(P^S>=0?-1:1)*(0,a.ZR)(I[2]);(r>D||r===D&&(O[0]||O[1]))&&(f+=P^S>=0?1:-1)}}return(u<-a.Ho||u4*e&&m--){var _=o+d,k=s+g,T=c+v,M=(0,l._b)(_*_+k*k+T*T),A=(0,l.ZR)(T/=M),S=(0,l.Wn)((0,l.Wn)(T)-1)e||(0,l.Wn)((b*L+x*O)/w-.5)>.3||o*d+s*g+c*v2?t[2]%360*l.uR:0,H()):[C*l.RW,P*l.RW,L*l.RW]},B.angle=function(t){return arguments.length?(O=t%360*l.uR,H()):O*l.RW},B.reflectX=function(t){return arguments.length?(I=t?-1:1,H()):I<0},B.reflectY=function(t){return arguments.length?(D=t?-1:1,H()):D<0},B.precision=function(t){return arguments.length?(b=g(x,F=t*t),V()):(0,l._b)(F)},B.fitExtent=function(t,e){return(0,f.qg)(B,t,e)},B.fitSize=function(t,e){return(0,f.mF)(B,t,e)},B.fitWidth=function(t,e){return(0,f.V6)(B,t,e)},B.fitHeight=function(t,e){return(0,f.rf)(B,t,e)},function(){return e=t.apply(this,arguments),B.invert=e.invert&&U,H()}}},26867:function(t,e,n){"use strict";n.d(e,{K:function(){return a},Z:function(){return o}});var r=n(15002),i=n(39695);function a(t,e){var n=e*e,r=n*n;return[t*(.8707-.131979*n+r*(r*(.003971*n-.001529*r)-.013791)),e*(1.007226+n*(.015085+r*(.028874*n-.044475-.005916*r)))]}function o(){return(0,r.Z)(a).scale(175.295)}a.invert=function(t,e){var n,r=e,a=25;do{var o=r*r,s=o*o;r-=n=(r*(1.007226+o*(.015085+s*(.028874*o-.044475-.005916*s)))-e)/(1.007226+o*(.045255+s*(.259866*o-.311325-.005916*11*s)))}while((0,i.Wn)(n)>i.Ho&&--a>0);return[t/(.8707+(o=r*r)*(o*(o*o*o*(.003971-.001529*o)-.013791)-.131979)),r]}},57962:function(t,e,n){"use strict";n.d(e,{I:function(){return o},Z:function(){return s}});var r=n(39695),i=n(25382),a=n(15002);function o(t,e){return[(0,r.mC)(e)*(0,r.O$)(t),(0,r.O$)(e)]}function s(){return(0,a.Z)(o).scale(249.5).clipAngle(90+r.Ho)}o.invert=(0,i.O)(r.ZR)},49386:function(t,e,n){"use strict";n.d(e,{I:function(){return o},Z:function(){return u}});var r=n(96059),i=n(39695);function a(t,e){return[(0,i.Wn)(t)>i.pi?t+Math.round(-t/i.BZ)*i.BZ:t,e]}function o(t,e,n){return(t%=i.BZ)?e||n?(0,r.Z)(l(t),c(e,n)):l(t):e||n?c(e,n):a}function s(t){return function(e,n){return[(e+=t)>i.pi?e-i.BZ:e<-i.pi?e+i.BZ:e,n]}}function l(t){var e=s(t);return e.invert=s(-t),e}function c(t,e){var n=(0,i.mC)(t),r=(0,i.O$)(t),a=(0,i.mC)(e),o=(0,i.O$)(e);function s(t,e){var s=(0,i.mC)(e),l=(0,i.mC)(t)*s,c=(0,i.O$)(t)*s,u=(0,i.O$)(e),f=u*n+l*r;return[(0,i.fv)(c*a-f*o,l*n-u*r),(0,i.ZR)(f*a+c*o)]}return s.invert=function(t,e){var s=(0,i.mC)(e),l=(0,i.mC)(t)*s,c=(0,i.O$)(t)*s,u=(0,i.O$)(e),f=u*a-c*o;return[(0,i.fv)(c*a+u*o,l*n+f*r),(0,i.ZR)(f*n-l*r)]},s}function u(t){function e(e){return(e=t(e[0]*i.uR,e[1]*i.uR))[0]*=i.RW,e[1]*=i.RW,e}return t=o(t[0]*i.uR,t[1]*i.uR,t.length>2?t[2]*i.uR:0),e.invert=function(e){return(e=t.invert(e[0]*i.uR,e[1]*i.uR))[0]*=i.RW,e[1]*=i.RW,e},e}a.invert=a},72736:function(t,e,n){"use strict";function r(t,e){t&&a.hasOwnProperty(t.type)&&a[t.type](t,e)}n.d(e,{Z:function(){return l}});var i={Feature:function(t,e){r(t.geometry,e)},FeatureCollection:function(t,e){for(var n=t.features,i=-1,a=n.length;++i=0;)e+=n[r].value;else e=1;t.value=e}function l(t,e){var n,r,i,a,o,s=new h(t),l=+t.value&&(s.value=t.value),u=[s];for(null==e&&(e=c);n=u.pop();)if(l&&(n.value=+n.data.value),(i=e(n.data))&&(o=i.length))for(n.children=new Array(o),a=o-1;a>=0;--a)u.push(r=n.children[a]=new h(i[a])),r.parent=n,r.depth=n.depth+1;return s.eachBefore(f)}function c(t){return t.children}function u(t){t.data=t.data.data}function f(t){var e=0;do{t.height=e}while((t=t.parent)&&t.height<++e)}function h(t){this.data=t,this.depth=this.height=0,this.parent=null}n.r(e),n.d(e,{cluster:function(){return o},hierarchy:function(){return l},pack:function(){return O},packEnclose:function(){return p},packSiblings:function(){return S},partition:function(){return j},stratify:function(){return q},tree:function(){return Z},treemap:function(){return nt},treemapBinary:function(){return rt},treemapDice:function(){return N},treemapResquarify:function(){return at},treemapSlice:function(){return J},treemapSliceDice:function(){return it},treemapSquarify:function(){return et}}),h.prototype=l.prototype={constructor:h,count:function(){return this.eachAfter(s)},each:function(t){var e,n,r,i,a=this,o=[a];do{for(e=o.reverse(),o=[];a=e.pop();)if(t(a),n=a.children)for(r=0,i=n.length;r=0;--n)i.push(e[n]);return this},sum:function(t){return this.eachAfter((function(e){for(var n=+t(e.data)||0,r=e.children,i=r&&r.length;--i>=0;)n+=r[i].value;e.value=n}))},sort:function(t){return this.eachBefore((function(e){e.children&&e.children.sort(t)}))},path:function(t){for(var e=this,n=function(t,e){if(t===e)return t;var n=t.ancestors(),r=e.ancestors(),i=null;for(t=n.pop(),e=r.pop();t===e;)i=t,t=n.pop(),e=r.pop();return i}(e,t),r=[e];e!==n;)e=e.parent,r.push(e);for(var i=r.length;t!==n;)r.splice(i,0,t),t=t.parent;return r},ancestors:function(){for(var t=this,e=[t];t=t.parent;)e.push(t);return e},descendants:function(){var t=[];return this.each((function(e){t.push(e)})),t},leaves:function(){var t=[];return this.eachBefore((function(e){e.children||t.push(e)})),t},links:function(){var t=this,e=[];return t.each((function(n){n!==t&&e.push({source:n.parent,target:n})})),e},copy:function(){return l(this).eachBefore(u)}};var d=Array.prototype.slice;function p(t){for(var e,n,r=0,i=(t=function(t){for(var e,n,r=t.length;r;)n=Math.random()*r--|0,e=t[r],t[r]=t[n],t[n]=e;return t}(d.call(t))).length,a=[];r0&&n*n>r*r+i*i}function y(t,e){for(var n=0;n(o*=o)?(r=(c+o-i)/(2*c),a=Math.sqrt(Math.max(0,o/c-r*r)),n.x=t.x-r*s-a*l,n.y=t.y-r*l+a*s):(r=(c+i-o)/(2*c),a=Math.sqrt(Math.max(0,i/c-r*r)),n.x=e.x+r*s-a*l,n.y=e.y+r*l+a*s)):(n.x=e.x+n.r,n.y=e.y)}function k(t,e){var n=t.r+e.r-1e-6,r=e.x-t.x,i=e.y-t.y;return n>0&&n*n>r*r+i*i}function T(t){var e=t._,n=t.next._,r=e.r+n.r,i=(e.x*n.r+n.x*e.r)/r,a=(e.y*n.r+n.y*e.r)/r;return i*i+a*a}function M(t){this._=t,this.next=null,this.previous=null}function A(t){if(!(i=t.length))return 0;var e,n,r,i,a,o,s,l,c,u,f;if((e=t[0]).x=0,e.y=0,!(i>1))return e.r;if(n=t[1],e.x=-n.r,n.x=e.r,n.y=0,!(i>2))return e.r+n.r;_(n,e,r=t[2]),e=new M(e),n=new M(n),r=new M(r),e.next=r.previous=n,n.next=e.previous=r,r.next=n.previous=e;t:for(s=3;s0)throw new Error("cycle");return a}return n.id=function(e){return arguments.length?(t=E(e),n):t},n.parentId=function(t){return arguments.length?(e=E(t),n):e},n}function G(t,e){return t.parent===e.parent?1:2}function W(t){var e=t.children;return e?e[0]:t.t}function Y(t){var e=t.children;return e?e[e.length-1]:t.t}function $(t,e,n){var r=n/(e.i-t.i);e.c-=r,e.s+=n,t.c+=r,e.z+=n,e.m+=n}function X(t,e,n){return t.a.parent===e.parent?t.a:n}function K(t,e){this._=t,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=e}function Z(){var t=G,e=1,n=1,r=null;function i(i){var l=function(t){for(var e,n,r,i,a,o=new K(t,0),s=[o];e=s.pop();)if(r=e._.children)for(e.children=new Array(a=r.length),i=a-1;i>=0;--i)s.push(n=e.children[i]=new K(r[i],i)),n.parent=e;return(o.parent=new K(null,0)).children=[o],o}(i);if(l.eachAfter(a),l.parent.m=-l.z,l.eachBefore(o),r)i.eachBefore(s);else{var c=i,u=i,f=i;i.eachBefore((function(t){t.xu.x&&(u=t),t.depth>f.depth&&(f=t)}));var h=c===u?1:t(c,u)/2,d=h-c.x,p=e/(u.x+h+d),g=n/(f.depth||1);i.eachBefore((function(t){t.x=(t.x+d)*p,t.y=t.depth*g}))}return i}function a(e){var n=e.children,r=e.parent.children,i=e.i?r[e.i-1]:null;if(n){!function(t){for(var e,n=0,r=0,i=t.children,a=i.length;--a>=0;)(e=i[a]).z+=n,e.m+=n,n+=e.s+(r+=e.c)}(e);var a=(n[0].z+n[n.length-1].z)/2;i?(e.z=i.z+t(e._,i._),e.m=e.z-a):e.z=a}else i&&(e.z=i.z+t(e._,i._));e.parent.A=function(e,n,r){if(n){for(var i,a=e,o=e,s=n,l=a.parent.children[0],c=a.m,u=o.m,f=s.m,h=l.m;s=Y(s),a=W(a),s&&a;)l=W(l),(o=Y(o)).a=e,(i=s.z+f-a.z-c+t(s._,a._))>0&&($(X(s,e,r),e,i),c+=i,u+=i),f+=s.m,c+=a.m,h+=l.m,u+=o.m;s&&!Y(o)&&(o.t=s,o.m+=f-u),a&&!W(l)&&(l.t=a,l.m+=c-h,r=e)}return r}(e,i,e.parent.A||r[0])}function o(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function s(t){t.x*=e,t.y=t.depth*n}return i.separation=function(e){return arguments.length?(t=e,i):t},i.size=function(t){return arguments.length?(r=!1,e=+t[0],n=+t[1],i):r?null:[e,n]},i.nodeSize=function(t){return arguments.length?(r=!0,e=+t[0],n=+t[1],i):r?[e,n]:null},i}function J(t,e,n,r,i){for(var a,o=t.children,s=-1,l=o.length,c=t.value&&(i-n)/t.value;++sh&&(h=s),v=u*u*g,(d=Math.max(h/v,v/f))>p){u-=s;break}p=d}m.push(o={value:u,dice:l1?e:1)},n}(Q);function nt(){var t=et,e=!1,n=1,r=1,i=[0],a=C,o=C,s=C,l=C,c=C;function u(t){return t.x0=t.y0=0,t.x1=n,t.y1=r,t.eachBefore(f),i=[0],e&&t.eachBefore(z),t}function f(e){var n=i[e.depth],r=e.x0+n,u=e.y0+n,f=e.x1-n,h=e.y1-n;f=n-1){var u=s[e];return u.x0=i,u.y0=a,u.x1=o,void(u.y1=l)}for(var f=c[e],h=r/2+f,d=e+1,p=n-1;d>>1;c[g]l-a){var y=(i*m+o*v)/r;t(e,d,v,i,a,y,l),t(d,n,m,y,a,o,l)}else{var b=(a*m+l*v)/r;t(e,d,v,i,a,o,b),t(d,n,m,i,b,o,l)}}(0,l,t.value,e,n,r,i)}function it(t,e,n,r,i){(1&t.depth?J:N)(t,e,n,r,i)}var at=function t(e){function n(t,n,r,i,a){if((o=t._squarify)&&o.ratio===e)for(var o,s,l,c,u,f=-1,h=o.length,d=t.value;++f1?e:1)},n}(Q)},45879:function(t,e,n){"use strict";n.d(e,{h5:function(){return y}});var r=Math.PI,i=2*r,a=1e-6,o=i-a;function s(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function l(){return new s}s.prototype=l.prototype={constructor:s,moveTo:function(t,e){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,e){this._+="L"+(this._x1=+t)+","+(this._y1=+e)},quadraticCurveTo:function(t,e,n,r){this._+="Q"+ +t+","+ +e+","+(this._x1=+n)+","+(this._y1=+r)},bezierCurveTo:function(t,e,n,r,i,a){this._+="C"+ +t+","+ +e+","+ +n+","+ +r+","+(this._x1=+i)+","+(this._y1=+a)},arcTo:function(t,e,n,i,o){t=+t,e=+e,n=+n,i=+i,o=+o;var s=this._x1,l=this._y1,c=n-t,u=i-e,f=s-t,h=l-e,d=f*f+h*h;if(o<0)throw new Error("negative radius: "+o);if(null===this._x1)this._+="M"+(this._x1=t)+","+(this._y1=e);else if(d>a)if(Math.abs(h*c-u*f)>a&&o){var p=n-s,g=i-l,v=c*c+u*u,m=p*p+g*g,y=Math.sqrt(v),b=Math.sqrt(d),x=o*Math.tan((r-Math.acos((v+d-m)/(2*y*b)))/2),w=x/b,_=x/y;Math.abs(w-1)>a&&(this._+="L"+(t+w*f)+","+(e+w*h)),this._+="A"+o+","+o+",0,0,"+ +(h*p>f*g)+","+(this._x1=t+_*c)+","+(this._y1=e+_*u)}else this._+="L"+(this._x1=t)+","+(this._y1=e)},arc:function(t,e,n,s,l,c){t=+t,e=+e,c=!!c;var u=(n=+n)*Math.cos(s),f=n*Math.sin(s),h=t+u,d=e+f,p=1^c,g=c?s-l:l-s;if(n<0)throw new Error("negative radius: "+n);null===this._x1?this._+="M"+h+","+d:(Math.abs(this._x1-h)>a||Math.abs(this._y1-d)>a)&&(this._+="L"+h+","+d),n&&(g<0&&(g=g%i+i),g>o?this._+="A"+n+","+n+",0,1,"+p+","+(t-u)+","+(e-f)+"A"+n+","+n+",0,1,"+p+","+(this._x1=h)+","+(this._y1=d):g>a&&(this._+="A"+n+","+n+",0,"+ +(g>=r)+","+p+","+(this._x1=t+n*Math.cos(l))+","+(this._y1=e+n*Math.sin(l))))},rect:function(t,e,n,r){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)+"h"+ +n+"v"+ +r+"h"+-n+"Z"},toString:function(){return this._}};var c=l,u=Array.prototype.slice;function f(t){return function(){return t}}function h(t){return t[0]}function d(t){return t[1]}function p(t){return t.source}function g(t){return t.target}function v(t){var e=p,n=g,r=h,i=d,a=null;function o(){var o,s=u.call(arguments),l=e.apply(this,s),f=n.apply(this,s);if(a||(a=o=c()),t(a,+r.apply(this,(s[0]=l,s)),+i.apply(this,s),+r.apply(this,(s[0]=f,s)),+i.apply(this,s)),o)return a=null,o+""||null}return o.source=function(t){return arguments.length?(e=t,o):e},o.target=function(t){return arguments.length?(n=t,o):n},o.x=function(t){return arguments.length?(r="function"===typeof t?t:f(+t),o):r},o.y=function(t){return arguments.length?(i="function"===typeof t?t:f(+t),o):i},o.context=function(t){return arguments.length?(a=null==t?null:t,o):a},o}function m(t,e,n,r,i){t.moveTo(e,n),t.bezierCurveTo(e=(e+r)/2,n,e,i,r,i)}function y(){return v(m)}},84096:function(t,e,n){"use strict";n.d(e,{i$:function(){return p},Dq:function(){return h},g0:function(){return g}});var r=n(58176),i=n(48480),a=n(59879),o=n(82301),s=n(34823),l=n(79791);function c(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function u(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function f(t,e,n){return{y:t,m:e,d:n,H:0,M:0,S:0,L:0}}function h(t){var e=t.dateTime,n=t.date,s=t.time,l=t.periods,h=t.days,d=t.shortDays,p=t.months,g=t.shortMonths,m=_(l),y=k(l),b=_(h),x=k(h),w=_(d),St=k(d),Et=_(p),Ct=k(p),Pt=_(g),Lt=k(g),Ot={a:function(t){return d[t.getDay()]},A:function(t){return h[t.getDay()]},b:function(t){return g[t.getMonth()]},B:function(t){return p[t.getMonth()]},c:null,d:q,e:q,f:X,H:G,I:W,j:Y,L:$,m:K,M:Z,p:function(t){return l[+(t.getHours()>=12)]},q:function(t){return 1+~~(t.getMonth()/3)},Q:Mt,s:At,S:J,u:Q,U:tt,V:et,w:nt,W:rt,x:null,X:null,y:it,Y:at,Z:ot,"%":Tt},It={a:function(t){return d[t.getUTCDay()]},A:function(t){return h[t.getUTCDay()]},b:function(t){return g[t.getUTCMonth()]},B:function(t){return p[t.getUTCMonth()]},c:null,d:st,e:st,f:ht,H:lt,I:ct,j:ut,L:ft,m:dt,M:pt,p:function(t){return l[+(t.getUTCHours()>=12)]},q:function(t){return 1+~~(t.getUTCMonth()/3)},Q:Mt,s:At,S:gt,u:vt,U:mt,V:yt,w:bt,W:xt,x:null,X:null,y:wt,Y:_t,Z:kt,"%":Tt},Dt={a:function(t,e,n){var r=w.exec(e.slice(n));return r?(t.w=St[r[0].toLowerCase()],n+r[0].length):-1},A:function(t,e,n){var r=b.exec(e.slice(n));return r?(t.w=x[r[0].toLowerCase()],n+r[0].length):-1},b:function(t,e,n){var r=Pt.exec(e.slice(n));return r?(t.m=Lt[r[0].toLowerCase()],n+r[0].length):-1},B:function(t,e,n){var r=Et.exec(e.slice(n));return r?(t.m=Ct[r[0].toLowerCase()],n+r[0].length):-1},c:function(t,n,r){return Nt(t,e,n,r)},d:D,e:D,f:B,H:z,I:z,j:R,L:F,m:I,M:N,p:function(t,e,n){var r=m.exec(e.slice(n));return r?(t.p=y[r[0].toLowerCase()],n+r[0].length):-1},q:O,Q:H,s:V,S:j,u:M,U:A,V:S,w:T,W:E,x:function(t,e,r){return Nt(t,n,e,r)},X:function(t,e,n){return Nt(t,s,e,n)},y:P,Y:C,Z:L,"%":U};function Rt(t,e){return function(n){var r,i,a,o=[],s=-1,l=0,c=t.length;for(n instanceof Date||(n=new Date(+n));++s53)return null;"w"in h||(h.w=1),"Z"in h?(l=(s=u(f(h.y,0,1))).getUTCDay(),s=l>4||0===l?r.l6.ceil(s):(0,r.l6)(s),s=i.Z.offset(s,7*(h.V-1)),h.y=s.getUTCFullYear(),h.m=s.getUTCMonth(),h.d=s.getUTCDate()+(h.w+6)%7):(l=(s=c(f(h.y,0,1))).getDay(),s=l>4||0===l?a.wA.ceil(s):(0,a.wA)(s),s=o.Z.offset(s,7*(h.V-1)),h.y=s.getFullYear(),h.m=s.getMonth(),h.d=s.getDate()+(h.w+6)%7)}else("W"in h||"U"in h)&&("w"in h||(h.w="u"in h?h.u%7:"W"in h?1:0),l="Z"in h?u(f(h.y,0,1)).getUTCDay():c(f(h.y,0,1)).getDay(),h.m=0,h.d="W"in h?(h.w+6)%7+7*h.W-(l+5)%7:h.w+7*h.U-(l+6)%7);return"Z"in h?(h.H+=h.Z/100|0,h.M+=h.Z%100,u(h)):c(h)}}function Nt(t,e,n,r){for(var i,a,o=0,s=e.length,l=n.length;o=l)return-1;if(37===(i=e.charCodeAt(o++))){if(i=e.charAt(o++),!(a=Dt[i in v?e.charAt(o++):i])||(r=a(t,n,r))<0)return-1}else if(i!=n.charCodeAt(r++))return-1}return r}return Ot.x=Rt(n,Ot),Ot.X=Rt(s,Ot),Ot.c=Rt(e,Ot),It.x=Rt(n,It),It.X=Rt(s,It),It.c=Rt(e,It),{format:function(t){var e=Rt(t+="",Ot);return e.toString=function(){return t},e},parse:function(t){var e=zt(t+="",!1);return e.toString=function(){return t},e},utcFormat:function(t){var e=Rt(t+="",It);return e.toString=function(){return t},e},utcParse:function(t){var e=zt(t+="",!0);return e.toString=function(){return t},e}}}var d,p,g,v={"-":"",_:" ",0:"0"},m=/^\s*\d+/,y=/^%/,b=/[\\^$*+?|[\]().{}]/g;function x(t,e,n){var r=t<0?"-":"",i=(r?-t:t)+"",a=i.length;return r+(a68?1900:2e3),n+r[0].length):-1}function L(t,e,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function O(t,e,n){var r=m.exec(e.slice(n,n+1));return r?(t.q=3*r[0]-3,n+r[0].length):-1}function I(t,e,n){var r=m.exec(e.slice(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function D(t,e,n){var r=m.exec(e.slice(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function R(t,e,n){var r=m.exec(e.slice(n,n+3));return r?(t.m=0,t.d=+r[0],n+r[0].length):-1}function z(t,e,n){var r=m.exec(e.slice(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function N(t,e,n){var r=m.exec(e.slice(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function j(t,e,n){var r=m.exec(e.slice(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function F(t,e,n){var r=m.exec(e.slice(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function B(t,e,n){var r=m.exec(e.slice(n,n+6));return r?(t.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function U(t,e,n){var r=y.exec(e.slice(n,n+1));return r?n+r[0].length:-1}function H(t,e,n){var r=m.exec(e.slice(n));return r?(t.Q=+r[0],n+r[0].length):-1}function V(t,e,n){var r=m.exec(e.slice(n));return r?(t.s=+r[0],n+r[0].length):-1}function q(t,e){return x(t.getDate(),e,2)}function G(t,e){return x(t.getHours(),e,2)}function W(t,e){return x(t.getHours()%12||12,e,2)}function Y(t,e){return x(1+o.Z.count((0,s.Z)(t),t),e,3)}function $(t,e){return x(t.getMilliseconds(),e,3)}function X(t,e){return $(t,e)+"000"}function K(t,e){return x(t.getMonth()+1,e,2)}function Z(t,e){return x(t.getMinutes(),e,2)}function J(t,e){return x(t.getSeconds(),e,2)}function Q(t){var e=t.getDay();return 0===e?7:e}function tt(t,e){return x(a.OM.count((0,s.Z)(t)-1,t),e,2)}function et(t,e){var n=t.getDay();return t=n>=4||0===n?(0,a.bL)(t):a.bL.ceil(t),x(a.bL.count((0,s.Z)(t),t)+(4===(0,s.Z)(t).getDay()),e,2)}function nt(t){return t.getDay()}function rt(t,e){return x(a.wA.count((0,s.Z)(t)-1,t),e,2)}function it(t,e){return x(t.getFullYear()%100,e,2)}function at(t,e){return x(t.getFullYear()%1e4,e,4)}function ot(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+x(e/60|0,"0",2)+x(e%60,"0",2)}function st(t,e){return x(t.getUTCDate(),e,2)}function lt(t,e){return x(t.getUTCHours(),e,2)}function ct(t,e){return x(t.getUTCHours()%12||12,e,2)}function ut(t,e){return x(1+i.Z.count((0,l.Z)(t),t),e,3)}function ft(t,e){return x(t.getUTCMilliseconds(),e,3)}function ht(t,e){return ft(t,e)+"000"}function dt(t,e){return x(t.getUTCMonth()+1,e,2)}function pt(t,e){return x(t.getUTCMinutes(),e,2)}function gt(t,e){return x(t.getUTCSeconds(),e,2)}function vt(t){var e=t.getUTCDay();return 0===e?7:e}function mt(t,e){return x(r.Ox.count((0,l.Z)(t)-1,t),e,2)}function yt(t,e){var n=t.getUTCDay();return t=n>=4||0===n?(0,r.hB)(t):r.hB.ceil(t),x(r.hB.count((0,l.Z)(t),t)+(4===(0,l.Z)(t).getUTCDay()),e,2)}function bt(t){return t.getUTCDay()}function xt(t,e){return x(r.l6.count((0,l.Z)(t)-1,t),e,2)}function wt(t,e){return x(t.getUTCFullYear()%100,e,2)}function _t(t,e){return x(t.getUTCFullYear()%1e4,e,4)}function kt(){return"+0000"}function Tt(){return"%"}function Mt(t){return+t}function At(t){return Math.floor(+t/1e3)}d=h({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"]}),p=d.format,d.parse,g=d.utcFormat,d.utcParse},82301:function(t,e,n){"use strict";n.d(e,{a:function(){return o}});var r=n(30052),i=n(54263),a=(0,r.Z)((function(t){t.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+e)}),(function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*i.yB)/i.UD}),(function(t){return t.getDate()-1}));e.Z=a;var o=a.range},54263:function(t,e,n){"use strict";n.d(e,{UD:function(){return o},Y2:function(){return a},Ym:function(){return r},iM:function(){return s},yB:function(){return i}});var r=1e3,i=6e4,a=36e5,o=864e5,s=6048e5},81041:function(t,e,n){"use strict";n.r(e),n.d(e,{timeDay:function(){return m.Z},timeDays:function(){return m.a},timeFriday:function(){return y.mC},timeFridays:function(){return y.b$},timeHour:function(){return g},timeHours:function(){return v},timeInterval:function(){return r.Z},timeMillisecond:function(){return a},timeMilliseconds:function(){return o},timeMinute:function(){return h},timeMinutes:function(){return d},timeMonday:function(){return y.wA},timeMondays:function(){return y.bJ},timeMonth:function(){return x},timeMonths:function(){return w},timeSaturday:function(){return y.EY},timeSaturdays:function(){return y.Ff},timeSecond:function(){return c},timeSeconds:function(){return u},timeSunday:function(){return y.OM},timeSundays:function(){return y.vm},timeThursday:function(){return y.bL},timeThursdays:function(){return y.$t},timeTuesday:function(){return y.sy},timeTuesdays:function(){return y.aU},timeWednesday:function(){return y.zg},timeWednesdays:function(){return y.Ld},timeWeek:function(){return y.OM},timeWeeks:function(){return y.vm},timeYear:function(){return _.Z},timeYears:function(){return _.g},utcDay:function(){return C.Z},utcDays:function(){return C.y},utcFriday:function(){return P.QQ},utcFridays:function(){return P.fz},utcHour:function(){return S},utcHours:function(){return E},utcMillisecond:function(){return a},utcMilliseconds:function(){return o},utcMinute:function(){return T},utcMinutes:function(){return M},utcMonday:function(){return P.l6},utcMondays:function(){return P.$3},utcMonth:function(){return O},utcMonths:function(){return I},utcSaturday:function(){return P.g4},utcSaturdays:function(){return P.Q_},utcSecond:function(){return c},utcSeconds:function(){return u},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 D.Z},utcYears:function(){return D.D}});var r=n(30052),i=(0,r.Z)((function(){}),(function(t,e){t.setTime(+t+e)}),(function(t,e){return e-t}));i.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?(0,r.Z)((function(e){e.setTime(Math.floor(e/t)*t)}),(function(e,n){e.setTime(+e+n*t)}),(function(e,n){return(n-e)/t})):i:null};var a=i,o=i.range,s=n(54263),l=(0,r.Z)((function(t){t.setTime(t-t.getMilliseconds())}),(function(t,e){t.setTime(+t+e*s.Ym)}),(function(t,e){return(e-t)/s.Ym}),(function(t){return t.getUTCSeconds()})),c=l,u=l.range,f=(0,r.Z)((function(t){t.setTime(t-t.getMilliseconds()-t.getSeconds()*s.Ym)}),(function(t,e){t.setTime(+t+e*s.yB)}),(function(t,e){return(e-t)/s.yB}),(function(t){return t.getMinutes()})),h=f,d=f.range,p=(0,r.Z)((function(t){t.setTime(t-t.getMilliseconds()-t.getSeconds()*s.Ym-t.getMinutes()*s.yB)}),(function(t,e){t.setTime(+t+e*s.Y2)}),(function(t,e){return(e-t)/s.Y2}),(function(t){return t.getHours()})),g=p,v=p.range,m=n(82301),y=n(59879),b=(0,r.Z)((function(t){t.setDate(1),t.setHours(0,0,0,0)}),(function(t,e){t.setMonth(t.getMonth()+e)}),(function(t,e){return e.getMonth()-t.getMonth()+12*(e.getFullYear()-t.getFullYear())}),(function(t){return t.getMonth()})),x=b,w=b.range,_=n(34823),k=(0,r.Z)((function(t){t.setUTCSeconds(0,0)}),(function(t,e){t.setTime(+t+e*s.yB)}),(function(t,e){return(e-t)/s.yB}),(function(t){return t.getUTCMinutes()})),T=k,M=k.range,A=(0,r.Z)((function(t){t.setUTCMinutes(0,0,0)}),(function(t,e){t.setTime(+t+e*s.Y2)}),(function(t,e){return(e-t)/s.Y2}),(function(t){return t.getUTCHours()})),S=A,E=A.range,C=n(48480),P=n(58176),L=(0,r.Z)((function(t){t.setUTCDate(1),t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCMonth(t.getUTCMonth()+e)}),(function(t,e){return e.getUTCMonth()-t.getUTCMonth()+12*(e.getUTCFullYear()-t.getUTCFullYear())}),(function(t){return t.getUTCMonth()})),O=L,I=L.range,D=n(79791)},30052:function(t,e,n){"use strict";n.d(e,{Z:function(){return a}});var r=new Date,i=new Date;function a(t,e,n,o){function s(e){return t(e=0===arguments.length?new Date:new Date(+e)),e}return s.floor=function(e){return t(e=new Date(+e)),e},s.ceil=function(n){return t(n=new Date(n-1)),e(n,1),t(n),n},s.round=function(t){var e=s(t),n=s.ceil(t);return t-e0))return o;do{o.push(a=new Date(+n)),e(n,i),t(n)}while(a=e)for(;t(e),!n(e);)e.setTime(e-1)}),(function(t,r){if(t>=t)if(r<0)for(;++r<=0;)for(;e(t,-1),!n(t););else for(;--r>=0;)for(;e(t,1),!n(t););}))},n&&(s.count=function(e,a){return r.setTime(+e),i.setTime(+a),t(r),t(i),Math.floor(n(r,i))},s.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?s.filter(o?function(e){return o(e)%t===0}:function(e){return s.count(0,e)%t===0}):s:null}),s}},48480:function(t,e,n){"use strict";n.d(e,{y:function(){return o}});var r=n(30052),i=n(54263),a=(0,r.Z)((function(t){t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+e)}),(function(t,e){return(e-t)/i.UD}),(function(t){return t.getUTCDate()-1}));e.Z=a;var o=a.range},58176:function(t,e,n){"use strict";n.d(e,{$3:function(){return p},DK:function(){return g},J1:function(){return l},Ox:function(){return o},QQ:function(){return f},Q_:function(){return b},SU:function(){return d},b3:function(){return c},fz:function(){return y},g4:function(){return h},hB:function(){return u},l6:function(){return s},uy:function(){return v},xj:function(){return m}});var r=n(30052),i=n(54263);function a(t){return(0,r.Z)((function(e){e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+7*e)}),(function(t,e){return(e-t)/i.iM}))}var o=a(0),s=a(1),l=a(2),c=a(3),u=a(4),f=a(5),h=a(6),d=o.range,p=s.range,g=l.range,v=c.range,m=u.range,y=f.range,b=h.range},79791:function(t,e,n){"use strict";n.d(e,{D:function(){return a}});var r=n(30052),i=(0,r.Z)((function(t){t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCFullYear(t.getUTCFullYear()+e)}),(function(t,e){return e.getUTCFullYear()-t.getUTCFullYear()}),(function(t){return t.getUTCFullYear()}));i.every=function(t){return isFinite(t=Math.floor(t))&&t>0?(0,r.Z)((function(e){e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),(function(e,n){e.setUTCFullYear(e.getUTCFullYear()+n*t)})):null},e.Z=i;var a=i.range},59879:function(t,e,n){"use strict";n.d(e,{$t:function(){return m},EY:function(){return h},Ff:function(){return b},Ld:function(){return v},OM:function(){return o},aU:function(){return g},b$:function(){return y},bJ:function(){return p},bL:function(){return u},mC:function(){return f},sy:function(){return l},vm:function(){return d},wA:function(){return s},zg:function(){return c}});var r=n(30052),i=n(54263);function a(t){return(0,r.Z)((function(e){e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+7*e)}),(function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*i.yB)/i.iM}))}var o=a(0),s=a(1),l=a(2),c=a(3),u=a(4),f=a(5),h=a(6),d=o.range,p=s.range,g=l.range,v=c.range,m=u.range,y=f.range,b=h.range},34823:function(t,e,n){"use strict";n.d(e,{g:function(){return a}});var r=n(30052),i=(0,r.Z)((function(t){t.setMonth(0,1),t.setHours(0,0,0,0)}),(function(t,e){t.setFullYear(t.getFullYear()+e)}),(function(t,e){return e.getFullYear()-t.getFullYear()}),(function(t){return t.getFullYear()}));i.every=function(t){return isFinite(t=Math.floor(t))&&t>0?(0,r.Z)((function(e){e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)}),(function(e,n){e.setFullYear(e.getFullYear()+n*t)})):null},e.Z=i;var a=i.range},17045:function(t,e,n){"use strict";var r=n(8709),i="function"===typeof Symbol&&"symbol"===typeof Symbol("foo"),a=Object.prototype.toString,o=Array.prototype.concat,s=Object.defineProperty,l=n(55622)(),c=s&&l,u=function(t,e,n,r){if(e in t)if(!0===r){if(t[e]===n)return}else if("function"!==typeof(i=r)||"[object Function]"!==a.call(i)||!r())return;var i;c?s(t,e,{configurable:!0,enumerable:!1,value:n,writable:!0}):t[e]=n},f=function(t,e){var n=arguments.length>2?arguments[2]:{},a=r(e);i&&(a=o.call(a,Object.getOwnPropertySymbols(e)));for(var s=0;ss*l){var d=(h-f)/s;o[u]=1e3*d}}return o}function i(t){for(var e=[],n=t[0];n<=t[1];n++)for(var r=String.fromCharCode(n),i=t[0];i0)return function(t,e){var n,r;for(n=new Array(t),r=0;r80*a){o=l=t[0],s=f=t[1];for(var x=a;xl&&(l=h),p>f&&(f=p);g=0!==(g=Math.max(l-o,f-s))?1/g:0}return i(y,b,a,o,s,g),b}function n(t,e,n,r,i){var a,o;if(i===A(t,e,n,r)>0)for(a=e;a=e;a-=r)o=k(a,t[a],t[a+1],o);return o&&m(o,o.next)&&(T(o),o=o.next),o}function r(t,e){if(!t)return t;e||(e=t);var n,r=t;do{if(n=!1,r.steiner||!m(r,r.next)&&0!==v(r.prev,r,r.next))r=r.next;else{if(T(r),(r=e=r.prev)===r.next)break;n=!0}}while(n||r!==e);return e}function i(t,e,n,c,u,f,d){if(t){!d&&f&&function(t,e,n,r){var i=t;do{null===i.z&&(i.z=h(i.x,i.y,e,n,r)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==t);i.prevZ.nextZ=null,i.prevZ=null,function(t){var e,n,r,i,a,o,s,l,c=1;do{for(n=t,t=null,a=null,o=0;n;){for(o++,r=n,s=0,e=0;e0||l>0&&r;)0!==s&&(0===l||!r||n.z<=r.z)?(i=n,n=n.nextZ,s--):(i=r,r=r.nextZ,l--),a?a.nextZ=i:t=i,i.prevZ=a,a=i;n=r}a.nextZ=null,c*=2}while(o>1)}(i)}(t,c,u,f);for(var p,g,v=t;t.prev!==t.next;)if(p=t.prev,g=t.next,f?o(t,c,u,f):a(t))e.push(p.i/n),e.push(t.i/n),e.push(g.i/n),T(t),t=g.next,v=g.next;else if((t=g)===v){d?1===d?i(t=s(r(t),e,n),e,n,c,u,f,2):2===d&&l(t,e,n,c,u,f):i(r(t),e,n,c,u,f,1);break}}}function a(t){var e=t.prev,n=t,r=t.next;if(v(e,n,r)>=0)return!1;for(var i=t.next.next;i!==t.prev;){if(p(e.x,e.y,n.x,n.y,r.x,r.y,i.x,i.y)&&v(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function o(t,e,n,r){var i=t.prev,a=t,o=t.next;if(v(i,a,o)>=0)return!1;for(var s=i.xa.x?i.x>o.x?i.x:o.x:a.x>o.x?a.x:o.x,u=i.y>a.y?i.y>o.y?i.y:o.y:a.y>o.y?a.y:o.y,f=h(s,l,e,n,r),d=h(c,u,e,n,r),g=t.prevZ,m=t.nextZ;g&&g.z>=f&&m&&m.z<=d;){if(g!==t.prev&&g!==t.next&&p(i.x,i.y,a.x,a.y,o.x,o.y,g.x,g.y)&&v(g.prev,g,g.next)>=0)return!1;if(g=g.prevZ,m!==t.prev&&m!==t.next&&p(i.x,i.y,a.x,a.y,o.x,o.y,m.x,m.y)&&v(m.prev,m,m.next)>=0)return!1;m=m.nextZ}for(;g&&g.z>=f;){if(g!==t.prev&&g!==t.next&&p(i.x,i.y,a.x,a.y,o.x,o.y,g.x,g.y)&&v(g.prev,g,g.next)>=0)return!1;g=g.prevZ}for(;m&&m.z<=d;){if(m!==t.prev&&m!==t.next&&p(i.x,i.y,a.x,a.y,o.x,o.y,m.x,m.y)&&v(m.prev,m,m.next)>=0)return!1;m=m.nextZ}return!0}function s(t,e,n){var i=t;do{var a=i.prev,o=i.next.next;!m(a,o)&&y(a,i,i.next,o)&&w(a,o)&&w(o,a)&&(e.push(a.i/n),e.push(i.i/n),e.push(o.i/n),T(i),T(i.next),i=t=o),i=i.next}while(i!==t);return r(i)}function l(t,e,n,a,o,s){var l=t;do{for(var c=l.next.next;c!==l.prev;){if(l.i!==c.i&&g(l,c)){var u=_(l,c);return l=r(l,l.next),u=r(u,u.next),i(l,e,n,a,o,s),void i(u,e,n,a,o,s)}c=c.next}l=l.next}while(l!==t)}function c(t,e){return t.x-e.x}function u(t,e){if(e=function(t,e){var n,r=e,i=t.x,a=t.y,o=-1/0;do{if(a<=r.y&&a>=r.next.y&&r.next.y!==r.y){var s=r.x+(a-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(s<=i&&s>o){if(o=s,s===i){if(a===r.y)return r;if(a===r.next.y)return r.next}n=r.x=r.x&&r.x>=u&&i!==r.x&&p(an.x||r.x===n.x&&f(n,r)))&&(n=r,d=l)),r=r.next}while(r!==c);return n}(t,e),e){var n=_(e,t);r(e,e.next),r(n,n.next)}}function f(t,e){return v(t.prev,t,e.prev)<0&&v(e.next,t,t.next)<0}function h(t,e,n,r,i){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-n)*i)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-r)*i)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function d(t){var e=t,n=t;do{(e.x=0&&(t-o)*(r-s)-(n-o)*(e-s)>=0&&(n-o)*(a-s)-(i-o)*(r-s)>=0}function g(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){var n=t;do{if(n.i!==t.i&&n.next.i!==t.i&&n.i!==e.i&&n.next.i!==e.i&&y(n,n.next,t,e))return!0;n=n.next}while(n!==t);return!1}(t,e)&&(w(t,e)&&w(e,t)&&function(t,e){var n=t,r=!1,i=(t.x+e.x)/2,a=(t.y+e.y)/2;do{n.y>a!==n.next.y>a&&n.next.y!==n.y&&i<(n.next.x-n.x)*(a-n.y)/(n.next.y-n.y)+n.x&&(r=!r),n=n.next}while(n!==t);return r}(t,e)&&(v(t.prev,t,e.prev)||v(t,e.prev,e))||m(t,e)&&v(t.prev,t,t.next)>0&&v(e.prev,e,e.next)>0)}function v(t,e,n){return(e.y-t.y)*(n.x-e.x)-(e.x-t.x)*(n.y-e.y)}function m(t,e){return t.x===e.x&&t.y===e.y}function y(t,e,n,r){var i=x(v(t,e,n)),a=x(v(t,e,r)),o=x(v(n,r,t)),s=x(v(n,r,e));return i!==a&&o!==s||!(0!==i||!b(t,n,e))||!(0!==a||!b(t,r,e))||!(0!==o||!b(n,t,r))||!(0!==s||!b(n,e,r))}function b(t,e,n){return e.x<=Math.max(t.x,n.x)&&e.x>=Math.min(t.x,n.x)&&e.y<=Math.max(t.y,n.y)&&e.y>=Math.min(t.y,n.y)}function x(t){return t>0?1:t<0?-1:0}function w(t,e){return v(t.prev,t,t.next)<0?v(t,e,t.next)>=0&&v(t,t.prev,e)>=0:v(t,e,t.prev)<0||v(t,t.next,e)<0}function _(t,e){var n=new M(t.i,t.x,t.y),r=new M(e.i,e.x,e.y),i=t.next,a=e.prev;return t.next=e,e.prev=t,n.next=i,i.prev=n,r.next=n,n.prev=r,a.next=r,r.prev=a,r}function k(t,e,n,r){var i=new M(t,e,n);return r?(i.next=r.next,i.prev=r,r.next.prev=i,r.next=i):(i.prev=i,i.next=i),i}function T(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function M(t,e,n){this.i=t,this.x=e,this.y=n,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function A(t,e,n,r){for(var i=0,a=e,o=n-r;a0&&(r+=t[i-1].length,n.holes.push(r))}return n}},2502:function(t,e,n){var r=n(68664);t.exports=function(t,e){var n,i=[],a=[],o=[],s={},l=[];function c(t){o[t]=!1,s.hasOwnProperty(t)&&Object.keys(s[t]).forEach((function(e){delete s[t][e],o[e]&&c(e)}))}function u(t){var e,r,i=!1;for(a.push(t),o[t]=!0,e=0;e=e}))}(e);for(var n,i=r(t).components.filter((function(t){return t.length>1})),a=1/0,o=0;o=55296&&y<=56319&&(_+=t[++n]),_=k?h.call(k,T,_,g):_,e?(d.value=_,p(v,g,d)):v[g]=_,++g;m=g}if(void 0===m)for(m=o(t.length),e&&(v=new e(m)),n=0;n0?1:-1}},56247:function(t,e,n){"use strict";var r=n(9953),i=Math.abs,a=Math.floor;t.exports=function(t){return isNaN(t)?0:0!==(t=Number(t))&&isFinite(t)?r(t)*a(i(t)):t}},35976:function(t,e,n){"use strict";var r=n(56247),i=Math.max;t.exports=function(t){return i(0,r(t))}},67260:function(t,e,n){"use strict";var r=n(78513),i=n(36672),a=Function.prototype.bind,o=Function.prototype.call,s=Object.keys,l=Object.prototype.propertyIsEnumerable;t.exports=function(t,e){return function(n,c){var u,f=arguments[2],h=arguments[3];return n=Object(i(n)),r(c),u=s(n),h&&u.sort("function"===typeof h?a.call(h,n):void 0),"function"!==typeof t&&(t=u[t]),o.call(t,u,(function(t,r){return l.call(n,t)?o.call(c,f,n[t],t,n,r):e}))}}},95879:function(t,e,n){"use strict";t.exports=n(73583)()?Object.assign:n(34205)},73583:function(t){"use strict";t.exports=function(){var t,e=Object.assign;return"function"===typeof e&&(e(t={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),t.foo+t.bar+t.trzy==="razdwatrzy")}},34205:function(t,e,n){"use strict";var r=n(68700),i=n(36672),a=Math.max;t.exports=function(t,e){var n,o,s,l=a(arguments.length,2);for(t=Object(i(t)),s=function(r){try{t[r]=e[r]}catch(i){n||(n=i)}},o=1;o-1}},87963:function(t){"use strict";var e=Object.prototype.toString,n=e.call("");t.exports=function(t){return"string"===typeof t||t&&"object"===typeof t&&(t instanceof String||e.call(t)===n)||!1}},43043:function(t){"use strict";var e=Object.create(null),n=Math.random;t.exports=function(){var t;do{t=n().toString(36).slice(2)}while(e[t]);return t}},32411:function(t,e,n){"use strict";var r,i=n(1496),a=n(66741),o=n(62072),s=n(8260),l=n(95426),c=Object.defineProperty;r=t.exports=function(t,e){if(!(this instanceof r))throw new TypeError("Constructor requires 'new'");l.call(this,t),e=e?a.call(e,"key+value")?"key+value":a.call(e,"key")?"key":"value":"value",c(this,"__kind__",o("",e))},i&&i(r,l),delete r.prototype.constructor,r.prototype=Object.create(l.prototype,{_resolve:o((function(t){return"value"===this.__kind__?this.__list__[t]:"key+value"===this.__kind__?[t,this.__list__[t]]:t}))}),c(r.prototype,s.toStringTag,o("c","Array Iterator"))},27515:function(t,e,n){"use strict";var r=n(73051),i=n(78513),a=n(87963),o=n(66661),s=Array.isArray,l=Function.prototype.call,c=Array.prototype.some;t.exports=function(t,e){var n,u,f,h,d,p,g,v,m=arguments[2];if(s(t)||r(t)?n="array":a(t)?n="string":t=o(t),i(e),f=function(){h=!0},"array"!==n)if("string"!==n)for(u=t.next();!u.done;){if(l.call(e,m,u.value,f),h)return;u=t.next()}else for(p=t.length,d=0;d=55296&&v<=56319&&(g+=t[++d]),l.call(e,m,g,f),!h);++d);else c.call(t,(function(t){return l.call(e,m,t,f),h}))}},66661:function(t,e,n){"use strict";var r=n(73051),i=n(87963),a=n(32411),o=n(259),s=n(58095),l=n(8260).iterator;t.exports=function(t){return"function"===typeof s(t)[l]?t[l]():r(t)?new a(t):i(t)?new o(t):new a(t)}},95426:function(t,e,n){"use strict";var r,i=n(16134),a=n(95879),o=n(78513),s=n(36672),l=n(62072),c=n(55174),u=n(8260),f=Object.defineProperty,h=Object.defineProperties;t.exports=r=function(t,e){if(!(this instanceof r))throw new TypeError("Constructor requires 'new'");h(this,{__list__:l("w",s(t)),__context__:l("w",e),__nextIndex__:l("w",0)}),e&&(o(e.on),e.on("_add",this._onAdd),e.on("_delete",this._onDelete),e.on("_clear",this._onClear))},delete r.prototype.constructor,h(r.prototype,a({_next:l((function(){var t;if(this.__list__)return this.__redo__&&void 0!==(t=this.__redo__.shift())?t:this.__nextIndex__=this.__nextIndex__||(++this.__nextIndex__,this.__redo__?(this.__redo__.forEach((function(e,n){e>=t&&(this.__redo__[n]=++e)}),this),this.__redo__.push(t)):f(this,"__redo__",l("c",[t])))})),_onDelete:l((function(t){var e;t>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(-1!==(e=this.__redo__.indexOf(t))&&this.__redo__.splice(e,1),this.__redo__.forEach((function(e,n){e>t&&(this.__redo__[n]=--e)}),this)))})),_onClear:l((function(){this.__redo__&&i.call(this.__redo__),this.__nextIndex__=0}))}))),f(r.prototype,u.iterator,l((function(){return this})))},35940:function(t,e,n){"use strict";var r=n(73051),i=n(95296),a=n(87963),o=n(8260).iterator,s=Array.isArray;t.exports=function(t){return!!i(t)&&(!!s(t)||!!a(t)||!!r(t)||"function"===typeof t[o])}},259:function(t,e,n){"use strict";var r,i=n(1496),a=n(62072),o=n(8260),s=n(95426),l=Object.defineProperty;r=t.exports=function(t){if(!(this instanceof r))throw new TypeError("Constructor requires 'new'");t=String(t),s.call(this,t),l(this,"__length__",a("",t.length))},i&&i(r,s),delete r.prototype.constructor,r.prototype=Object.create(s.prototype,{_next:a((function(){if(this.__list__)return this.__nextIndex__=55296&&e<=56319?n+this.__list__[this.__nextIndex__++]:n}))}),l(r.prototype,o.toStringTag,a("c","String Iterator"))},58095:function(t,e,n){"use strict";var r=n(35940);t.exports=function(t){if(!r(t))throw new TypeError(t+" is not iterable");return t}},73523:function(t){"use strict";function e(t,e){if(void 0===t||null===t)throw new TypeError("Cannot convert first argument to object");for(var n=Object(t),r=1;r0&&o.length>i&&!o.warned){o.warned=!0;var u=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");u.name="MaxListenersExceededWarning",u.emitter=t,u.type=e,u.count=o.length,c=u,console&&console.warn&&console.warn(c)}return t}function u(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function f(t,e,n){var r={fired:!1,wrapFn:void 0,target:t,type:e,listener:n},i=u.bind(r);return i.listener=n,r.wrapFn=i,i}function h(t,e,n){var r=t._events;if(void 0===r)return[];var i=r[e];return void 0===i?[]:"function"===typeof i?n?[i.listener||i]:[i]:n?function(t){for(var e=new Array(t.length),n=0;n0&&(o=e[0]),o instanceof Error)throw o;var s=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw s.context=o,s}var l=a[t];if(void 0===l)return!1;if("function"===typeof l)r(l,this,e);else{var c=l.length,u=p(l,c);for(n=0;n=0;a--)if(n[a]===e||n[a].listener===e){o=n[a].listener,i=a;break}if(i<0)return this;0===i?n.shift():function(t,e){for(;e+1=0;r--)this.removeListener(t,e[r]);return this},a.prototype.listeners=function(t){return h(this,t,!0)},a.prototype.rawListeners=function(t){return h(this,t,!1)},a.listenerCount=function(t,e){return"function"===typeof t.listenerCount?t.listenerCount(e):d.call(t,e)},a.prototype.listenerCount=d,a.prototype.eventNames=function(){return this._eventsCount>0?e(this._events):[]}},60774:function(t){var e=function(){if("object"===typeof self&&self)return self;if("object"===typeof window&&window)return window;throw new Error("Unable to resolve global `this`")};t.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch(t){return e()}try{return __global__||e()}finally{delete Object.prototype.__global__}}()},94908:function(t,e,n){"use strict";t.exports=n(51152)()?globalThis:n(60774)},51152:function(t){"use strict";t.exports=function(){return"object"===typeof globalThis&&!!globalThis&&globalThis.Array===Array}},92770:function(t,e,n){"use strict";var r=n(18546);t.exports=function(t){var e=typeof t;if("string"===e){var n=t;if(0===(t=+t)&&r(n))return!1}else if("number"!==e)return!1;return t-t<1}},30120:function(t,e,n){var r=n(90660);t.exports=function(t,e,n){if(!t)throw new TypeError("must specify data as first parameter");if(n=0|+(n||0),Array.isArray(t)&&t[0]&&"number"===typeof t[0][0]){var i,a,o,s,l=t[0].length,c=t.length*l;e&&"string"!==typeof e||(e=new(r(e||"float32"))(c+n));var u=e.length-n;if(c!==u)throw new Error("source length "+c+" ("+l+"x"+t.length+") does not match destination length "+u);for(i=0,o=n;ie[0]-o[0]/2&&(h=o[0]/2,d+=o[1]);return n}},32879:function(t){"use strict";function e(t,a){a||(a={}),("string"===typeof t||Array.isArray(t))&&(a.family=t);var o=Array.isArray(a.family)?a.family.join(", "):a.family;if(!o)throw Error("`family` must be defined");var s=a.size||a.fontSize||a.em||48,l=a.weight||a.fontWeight||"",c=(t=[a.style||a.fontStyle||"",l,s].join(" ")+"px "+o,a.origin||"top");if(e.cache[o]&&s<=e.cache[o].em)return n(e.cache[o],c);var u=a.canvas||e.canvas,f=u.getContext("2d"),h={upper:void 0!==a.upper?a.upper:"H",lower:void 0!==a.lower?a.lower:"x",descent:void 0!==a.descent?a.descent:"p",ascent:void 0!==a.ascent?a.ascent:"h",tittle:void 0!==a.tittle?a.tittle:"i",overshoot:void 0!==a.overshoot?a.overshoot:"O"},d=Math.ceil(1.5*s);u.height=d,u.width=.5*d,f.font=t;var p="H",g={top:0};f.clearRect(0,0,d,d),f.textBaseline="top",f.fillStyle="black",f.fillText(p,0,0);var v=r(f.getImageData(0,0,d,d));f.clearRect(0,0,d,d),f.textBaseline="bottom",f.fillText(p,0,d);var m=r(f.getImageData(0,0,d,d));g.lineHeight=g.bottom=d-m+v,f.clearRect(0,0,d,d),f.textBaseline="alphabetic",f.fillText(p,0,d);var y=d-r(f.getImageData(0,0,d,d))-1+v;g.baseline=g.alphabetic=y,f.clearRect(0,0,d,d),f.textBaseline="middle",f.fillText(p,0,.5*d);var b=r(f.getImageData(0,0,d,d));g.median=g.middle=d-b-1+v-.5*d,f.clearRect(0,0,d,d),f.textBaseline="hanging",f.fillText(p,0,.5*d);var x=r(f.getImageData(0,0,d,d));g.hanging=d-x-1+v-.5*d,f.clearRect(0,0,d,d),f.textBaseline="ideographic",f.fillText(p,0,d);var w=r(f.getImageData(0,0,d,d));if(g.ideographic=d-w-1+v,h.upper&&(f.clearRect(0,0,d,d),f.textBaseline="top",f.fillText(h.upper,0,0),g.upper=r(f.getImageData(0,0,d,d)),g.capHeight=g.baseline-g.upper),h.lower&&(f.clearRect(0,0,d,d),f.textBaseline="top",f.fillText(h.lower,0,0),g.lower=r(f.getImageData(0,0,d,d)),g.xHeight=g.baseline-g.lower),h.tittle&&(f.clearRect(0,0,d,d),f.textBaseline="top",f.fillText(h.tittle,0,0),g.tittle=r(f.getImageData(0,0,d,d))),h.ascent&&(f.clearRect(0,0,d,d),f.textBaseline="top",f.fillText(h.ascent,0,0),g.ascent=r(f.getImageData(0,0,d,d))),h.descent&&(f.clearRect(0,0,d,d),f.textBaseline="top",f.fillText(h.descent,0,0),g.descent=i(f.getImageData(0,0,d,d))),h.overshoot){f.clearRect(0,0,d,d),f.textBaseline="top",f.fillText(h.overshoot,0,0);var _=i(f.getImageData(0,0,d,d));g.overshoot=_-y}for(var k in g)g[k]/=s;return g.em=s,e.cache[o]=g,n(g,c)}function n(t,e){var n={};for(var r in"string"===typeof e&&(e=t[e]),t)"em"!==r&&(n[r]=t[r]-e);return n}function r(t){for(var e=t.height,n=t.data,r=3;r0;r-=4)if(0!==n[r])return Math.floor(.25*(r-3)/e)}t.exports=e,e.canvas=document.createElement("canvas"),e.cache={}},31353:function(t,e,n){"use strict";var r=n(85395),i=Object.prototype.toString,a=Object.prototype.hasOwnProperty;t.exports=function(t,e,n){if(!r(e))throw new TypeError("iterator must be a function");var o;arguments.length>=3&&(o=n),"[object Array]"===i.call(t)?function(t,e,n){for(var r=0,i=t.length;r1&&"boolean"!==typeof e)throw new o('"allowMissing" argument must be a boolean');if(null===M(/^%?[^%]*%?$/,t))throw new i("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=function(t){var e=T(t,0,1),n=T(t,-1);if("%"===e&&"%"!==n)throw new i("invalid intrinsic syntax, expected closing `%`");if("%"===n&&"%"!==e)throw new i("invalid intrinsic syntax, expected opening `%`");var r=[];return k(t,A,(function(t,e,n,i){r[r.length]=n?k(i,S,"$1"):e||t})),r}(t),r=n.length>0?n[0]:"",a=E("%"+r+"%",e),s=a.name,c=a.value,u=!1,f=a.alias;f&&(r=f[0],_(n,w([0,1],f)));for(var h=1,d=!0;h=n.length){var y=l(c,p);c=(d=!!y)&&"get"in y&&!("originalValue"in y.get)?y.get:c[p]}else d=x(c,p),c=c[p];d&&!u&&(g[s]=c)}}return c}},85400:function(t){t.exports=function(t,e){var n=e[0],r=e[1],i=e[2],a=e[3],o=e[4],s=e[5],l=e[6],c=e[7],u=e[8],f=e[9],h=e[10],d=e[11],p=e[12],g=e[13],v=e[14],m=e[15];return t[0]=s*(h*m-d*v)-f*(l*m-c*v)+g*(l*d-c*h),t[1]=-(r*(h*m-d*v)-f*(i*m-a*v)+g*(i*d-a*h)),t[2]=r*(l*m-c*v)-s*(i*m-a*v)+g*(i*c-a*l),t[3]=-(r*(l*d-c*h)-s*(i*d-a*h)+f*(i*c-a*l)),t[4]=-(o*(h*m-d*v)-u*(l*m-c*v)+p*(l*d-c*h)),t[5]=n*(h*m-d*v)-u*(i*m-a*v)+p*(i*d-a*h),t[6]=-(n*(l*m-c*v)-o*(i*m-a*v)+p*(i*c-a*l)),t[7]=n*(l*d-c*h)-o*(i*d-a*h)+u*(i*c-a*l),t[8]=o*(f*m-d*g)-u*(s*m-c*g)+p*(s*d-c*f),t[9]=-(n*(f*m-d*g)-u*(r*m-a*g)+p*(r*d-a*f)),t[10]=n*(s*m-c*g)-o*(r*m-a*g)+p*(r*c-a*s),t[11]=-(n*(s*d-c*f)-o*(r*d-a*f)+u*(r*c-a*s)),t[12]=-(o*(f*v-h*g)-u*(s*v-l*g)+p*(s*h-l*f)),t[13]=n*(f*v-h*g)-u*(r*v-i*g)+p*(r*h-i*f),t[14]=-(n*(s*v-l*g)-o*(r*v-i*g)+p*(r*l-i*s)),t[15]=n*(s*h-l*f)-o*(r*h-i*f)+u*(r*l-i*s),t}},42331:function(t){t.exports=function(t){var e=new Float32Array(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}},31042:function(t){t.exports=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}},11902:function(t){t.exports=function(){var t=new Float32Array(16);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},89887:function(t){t.exports=function(t){var e=t[0],n=t[1],r=t[2],i=t[3],a=t[4],o=t[5],s=t[6],l=t[7],c=t[8],u=t[9],f=t[10],h=t[11],d=t[12],p=t[13],g=t[14],v=t[15];return(e*o-n*a)*(f*v-h*g)-(e*s-r*a)*(u*v-h*p)+(e*l-i*a)*(u*g-f*p)+(n*s-r*o)*(c*v-h*d)-(n*l-i*o)*(c*g-f*d)+(r*l-i*s)*(c*p-u*d)}},27812:function(t){t.exports=function(t,e){var n=e[0],r=e[1],i=e[2],a=e[3],o=n+n,s=r+r,l=i+i,c=n*o,u=r*o,f=r*s,h=i*o,d=i*s,p=i*l,g=a*o,v=a*s,m=a*l;return t[0]=1-f-p,t[1]=u+m,t[2]=h-v,t[3]=0,t[4]=u-m,t[5]=1-c-p,t[6]=d+g,t[7]=0,t[8]=h+v,t[9]=d-g,t[10]=1-c-f,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},34045:function(t){t.exports=function(t,e,n){var r,i,a,o=n[0],s=n[1],l=n[2],c=Math.sqrt(o*o+s*s+l*l);return Math.abs(c)<1e-6?null:(o*=c=1/c,s*=c,l*=c,r=Math.sin(e),i=Math.cos(e),a=1-i,t[0]=o*o*a+i,t[1]=s*o*a+l*r,t[2]=l*o*a-s*r,t[3]=0,t[4]=o*s*a-l*r,t[5]=s*s*a+i,t[6]=l*s*a+o*r,t[7]=0,t[8]=o*l*a+s*r,t[9]=s*l*a-o*r,t[10]=l*l*a+i,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t)}},45973:function(t){t.exports=function(t,e,n){var r=e[0],i=e[1],a=e[2],o=e[3],s=r+r,l=i+i,c=a+a,u=r*s,f=r*l,h=r*c,d=i*l,p=i*c,g=a*c,v=o*s,m=o*l,y=o*c;return t[0]=1-(d+g),t[1]=f+y,t[2]=h-m,t[3]=0,t[4]=f-y,t[5]=1-(u+g),t[6]=p+v,t[7]=0,t[8]=h+m,t[9]=p-v,t[10]=1-(u+d),t[11]=0,t[12]=n[0],t[13]=n[1],t[14]=n[2],t[15]=1,t}},81472:function(t){t.exports=function(t,e){return t[0]=e[0],t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=e[1],t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=e[2],t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},14669:function(t){t.exports=function(t,e){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=e[0],t[13]=e[1],t[14]=e[2],t[15]=1,t}},75262:function(t){t.exports=function(t,e){var n=Math.sin(e),r=Math.cos(e);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=r,t[6]=n,t[7]=0,t[8]=0,t[9]=-n,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},331:function(t){t.exports=function(t,e){var n=Math.sin(e),r=Math.cos(e);return t[0]=r,t[1]=0,t[2]=-n,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=n,t[9]=0,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},11049:function(t){t.exports=function(t,e){var n=Math.sin(e),r=Math.cos(e);return t[0]=r,t[1]=n,t[2]=0,t[3]=0,t[4]=-n,t[5]=r,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},75195:function(t){t.exports=function(t,e,n,r,i,a,o){var s=1/(n-e),l=1/(i-r),c=1/(a-o);return t[0]=2*a*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=2*a*l,t[6]=0,t[7]=0,t[8]=(n+e)*s,t[9]=(i+r)*l,t[10]=(o+a)*c,t[11]=-1,t[12]=0,t[13]=0,t[14]=o*a*2*c,t[15]=0,t}},71551:function(t){t.exports=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},79576:function(t,e,n){t.exports={create:n(11902),clone:n(42331),copy:n(31042),identity:n(71551),transpose:n(88654),invert:n(95874),adjoint:n(85400),determinant:n(89887),multiply:n(91362),translate:n(31283),scale:n(10789),rotate:n(65074),rotateX:n(35545),rotateY:n(94918),rotateZ:n(15692),fromRotation:n(34045),fromRotationTranslation:n(45973),fromScaling:n(81472),fromTranslation:n(14669),fromXRotation:n(75262),fromYRotation:n(331),fromZRotation:n(11049),fromQuat:n(27812),frustum:n(75195),perspective:n(7864),perspectiveFromFieldOfView:n(35279),ortho:n(60378),lookAt:n(65551),str:n(6726)}},95874:function(t){t.exports=function(t,e){var n=e[0],r=e[1],i=e[2],a=e[3],o=e[4],s=e[5],l=e[6],c=e[7],u=e[8],f=e[9],h=e[10],d=e[11],p=e[12],g=e[13],v=e[14],m=e[15],y=n*s-r*o,b=n*l-i*o,x=n*c-a*o,w=r*l-i*s,_=r*c-a*s,k=i*c-a*l,T=u*g-f*p,M=u*v-h*p,A=u*m-d*p,S=f*v-h*g,E=f*m-d*g,C=h*m-d*v,P=y*C-b*E+x*S+w*A-_*M+k*T;return P?(P=1/P,t[0]=(s*C-l*E+c*S)*P,t[1]=(i*E-r*C-a*S)*P,t[2]=(g*k-v*_+m*w)*P,t[3]=(h*_-f*k-d*w)*P,t[4]=(l*A-o*C-c*M)*P,t[5]=(n*C-i*A+a*M)*P,t[6]=(v*x-p*k-m*b)*P,t[7]=(u*k-h*x+d*b)*P,t[8]=(o*E-s*A+c*T)*P,t[9]=(r*A-n*E-a*T)*P,t[10]=(p*_-g*x+m*y)*P,t[11]=(f*x-u*_-d*y)*P,t[12]=(s*M-o*S-l*T)*P,t[13]=(n*S-r*M+i*T)*P,t[14]=(g*b-p*w-v*y)*P,t[15]=(u*w-f*b+h*y)*P,t):null}},65551:function(t,e,n){var r=n(71551);t.exports=function(t,e,n,i){var a,o,s,l,c,u,f,h,d,p,g=e[0],v=e[1],m=e[2],y=i[0],b=i[1],x=i[2],w=n[0],_=n[1],k=n[2];return Math.abs(g-w)<1e-6&&Math.abs(v-_)<1e-6&&Math.abs(m-k)<1e-6?r(t):(f=g-w,h=v-_,d=m-k,p=1/Math.sqrt(f*f+h*h+d*d),a=b*(d*=p)-x*(h*=p),o=x*(f*=p)-y*d,s=y*h-b*f,(p=Math.sqrt(a*a+o*o+s*s))?(a*=p=1/p,o*=p,s*=p):(a=0,o=0,s=0),l=h*s-d*o,c=d*a-f*s,u=f*o-h*a,(p=Math.sqrt(l*l+c*c+u*u))?(l*=p=1/p,c*=p,u*=p):(l=0,c=0,u=0),t[0]=a,t[1]=l,t[2]=f,t[3]=0,t[4]=o,t[5]=c,t[6]=h,t[7]=0,t[8]=s,t[9]=u,t[10]=d,t[11]=0,t[12]=-(a*g+o*v+s*m),t[13]=-(l*g+c*v+u*m),t[14]=-(f*g+h*v+d*m),t[15]=1,t)}},91362:function(t){t.exports=function(t,e,n){var r=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],f=e[8],h=e[9],d=e[10],p=e[11],g=e[12],v=e[13],m=e[14],y=e[15],b=n[0],x=n[1],w=n[2],_=n[3];return t[0]=b*r+x*s+w*f+_*g,t[1]=b*i+x*l+w*h+_*v,t[2]=b*a+x*c+w*d+_*m,t[3]=b*o+x*u+w*p+_*y,b=n[4],x=n[5],w=n[6],_=n[7],t[4]=b*r+x*s+w*f+_*g,t[5]=b*i+x*l+w*h+_*v,t[6]=b*a+x*c+w*d+_*m,t[7]=b*o+x*u+w*p+_*y,b=n[8],x=n[9],w=n[10],_=n[11],t[8]=b*r+x*s+w*f+_*g,t[9]=b*i+x*l+w*h+_*v,t[10]=b*a+x*c+w*d+_*m,t[11]=b*o+x*u+w*p+_*y,b=n[12],x=n[13],w=n[14],_=n[15],t[12]=b*r+x*s+w*f+_*g,t[13]=b*i+x*l+w*h+_*v,t[14]=b*a+x*c+w*d+_*m,t[15]=b*o+x*u+w*p+_*y,t}},60378:function(t){t.exports=function(t,e,n,r,i,a,o){var s=1/(e-n),l=1/(r-i),c=1/(a-o);return t[0]=-2*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*c,t[11]=0,t[12]=(e+n)*s,t[13]=(i+r)*l,t[14]=(o+a)*c,t[15]=1,t}},7864:function(t){t.exports=function(t,e,n,r,i){var a=1/Math.tan(e/2),o=1/(r-i);return t[0]=a/n,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=a,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=(i+r)*o,t[11]=-1,t[12]=0,t[13]=0,t[14]=2*i*r*o,t[15]=0,t}},35279:function(t){t.exports=function(t,e,n,r){var i=Math.tan(e.upDegrees*Math.PI/180),a=Math.tan(e.downDegrees*Math.PI/180),o=Math.tan(e.leftDegrees*Math.PI/180),s=Math.tan(e.rightDegrees*Math.PI/180),l=2/(o+s),c=2/(i+a);return t[0]=l,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=c,t[6]=0,t[7]=0,t[8]=-(o-s)*l*.5,t[9]=(i-a)*c*.5,t[10]=r/(n-r),t[11]=-1,t[12]=0,t[13]=0,t[14]=r*n/(n-r),t[15]=0,t}},65074:function(t){t.exports=function(t,e,n,r){var i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S,E=r[0],C=r[1],P=r[2],L=Math.sqrt(E*E+C*C+P*P);return Math.abs(L)<1e-6?null:(E*=L=1/L,C*=L,P*=L,i=Math.sin(n),a=Math.cos(n),o=1-a,s=e[0],l=e[1],c=e[2],u=e[3],f=e[4],h=e[5],d=e[6],p=e[7],g=e[8],v=e[9],m=e[10],y=e[11],b=E*E*o+a,x=C*E*o+P*i,w=P*E*o-C*i,_=E*C*o-P*i,k=C*C*o+a,T=P*C*o+E*i,M=E*P*o+C*i,A=C*P*o-E*i,S=P*P*o+a,t[0]=s*b+f*x+g*w,t[1]=l*b+h*x+v*w,t[2]=c*b+d*x+m*w,t[3]=u*b+p*x+y*w,t[4]=s*_+f*k+g*T,t[5]=l*_+h*k+v*T,t[6]=c*_+d*k+m*T,t[7]=u*_+p*k+y*T,t[8]=s*M+f*A+g*S,t[9]=l*M+h*A+v*S,t[10]=c*M+d*A+m*S,t[11]=u*M+p*A+y*S,e!==t&&(t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t)}},35545:function(t){t.exports=function(t,e,n){var r=Math.sin(n),i=Math.cos(n),a=e[4],o=e[5],s=e[6],l=e[7],c=e[8],u=e[9],f=e[10],h=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=a*i+c*r,t[5]=o*i+u*r,t[6]=s*i+f*r,t[7]=l*i+h*r,t[8]=c*i-a*r,t[9]=u*i-o*r,t[10]=f*i-s*r,t[11]=h*i-l*r,t}},94918:function(t){t.exports=function(t,e,n){var r=Math.sin(n),i=Math.cos(n),a=e[0],o=e[1],s=e[2],l=e[3],c=e[8],u=e[9],f=e[10],h=e[11];return e!==t&&(t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=a*i-c*r,t[1]=o*i-u*r,t[2]=s*i-f*r,t[3]=l*i-h*r,t[8]=a*r+c*i,t[9]=o*r+u*i,t[10]=s*r+f*i,t[11]=l*r+h*i,t}},15692:function(t){t.exports=function(t,e,n){var r=Math.sin(n),i=Math.cos(n),a=e[0],o=e[1],s=e[2],l=e[3],c=e[4],u=e[5],f=e[6],h=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=a*i+c*r,t[1]=o*i+u*r,t[2]=s*i+f*r,t[3]=l*i+h*r,t[4]=c*i-a*r,t[5]=u*i-o*r,t[6]=f*i-s*r,t[7]=h*i-l*r,t}},10789:function(t){t.exports=function(t,e,n){var r=n[0],i=n[1],a=n[2];return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t[3]=e[3]*r,t[4]=e[4]*i,t[5]=e[5]*i,t[6]=e[6]*i,t[7]=e[7]*i,t[8]=e[8]*a,t[9]=e[9]*a,t[10]=e[10]*a,t[11]=e[11]*a,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}},6726:function(t){t.exports=function(t){return"mat4("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+", "+t[4]+", "+t[5]+", "+t[6]+", "+t[7]+", "+t[8]+", "+t[9]+", "+t[10]+", "+t[11]+", "+t[12]+", "+t[13]+", "+t[14]+", "+t[15]+")"}},31283:function(t){t.exports=function(t,e,n){var r,i,a,o,s,l,c,u,f,h,d,p,g=n[0],v=n[1],m=n[2];return e===t?(t[12]=e[0]*g+e[4]*v+e[8]*m+e[12],t[13]=e[1]*g+e[5]*v+e[9]*m+e[13],t[14]=e[2]*g+e[6]*v+e[10]*m+e[14],t[15]=e[3]*g+e[7]*v+e[11]*m+e[15]):(r=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],f=e[8],h=e[9],d=e[10],p=e[11],t[0]=r,t[1]=i,t[2]=a,t[3]=o,t[4]=s,t[5]=l,t[6]=c,t[7]=u,t[8]=f,t[9]=h,t[10]=d,t[11]=p,t[12]=r*g+s*v+f*m+e[12],t[13]=i*g+l*v+h*m+e[13],t[14]=a*g+c*v+d*m+e[14],t[15]=o*g+u*v+p*m+e[15]),t}},88654:function(t){t.exports=function(t,e){if(t===e){var n=e[1],r=e[2],i=e[3],a=e[6],o=e[7],s=e[11];t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=n,t[6]=e[9],t[7]=e[13],t[8]=r,t[9]=a,t[11]=e[14],t[12]=i,t[13]=o,t[14]=s}else t[0]=e[0],t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=e[1],t[5]=e[5],t[6]=e[9],t[7]=e[13],t[8]=e[2],t[9]=e[6],t[10]=e[10],t[11]=e[14],t[12]=e[3],t[13]=e[7],t[14]=e[11],t[15]=e[15];return t}},42505:function(t,e,n){"use strict";var r=n(72791),i=n(71299),a=n(98580),o=n(12018),s=n(83522),l=n(25075),c=n(68016),u=n(58404),f=n(18863),h=n(10973),d=n(25677),p=n(75686),g=n(53545),v=n(56131),m=n(32879),y=n(30120),b=n(13547).nextPow2,x=new s,w=!1;if(document.body){var _=document.body.appendChild(document.createElement("div"));_.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(_).fontStretch&&(w=!0),document.body.removeChild(_)}var k=function(t){!function(t){return"function"===typeof t&&t._gl&&t.prop&&t.texture&&t.buffer}(t)?this.gl=o(t):(t={regl:t},this.gl=t.regl._gl),this.shader=x.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=t.regl||a({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(),x.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(h(t)?t:{})};k.prototype.createShader=function(){var t=this.regl,e=t({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:t.prop("count"),offset:t.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:t.this("sizeBuffer")},width:{offset:0,stride:8,buffer:t.this("sizeBuffer")},char:t.this("charBuffer"),position:t.this("position")},uniforms:{atlasSize:function(t,e){return[e.atlas.width,e.atlas.height]},atlasDim:function(t,e){return[e.atlas.cols,e.atlas.rows]},atlas:function(t,e){return e.atlas.texture},charStep:function(t,e){return e.atlas.step},em:function(t,e){return e.atlas.em},color:t.prop("color"),opacity:t.prop("opacity"),viewport:t.this("viewportArray"),scale:t.this("scale"),align:t.prop("align"),baseline:t.prop("baseline"),translate:t.this("translate"),positionOffset:t.prop("positionOffset")},primitive:"points",viewport:t.this("viewport"),vert:"\n\t\t\tprecision highp float;\n\t\t\tattribute float width, charOffset, char;\n\t\t\tattribute vec2 position;\n\t\t\tuniform float fontSize, charStep, em, align, baseline;\n\t\t\tuniform vec4 viewport;\n\t\t\tuniform vec4 color;\n\t\t\tuniform vec2 atlasSize, atlasDim, scale, translate, positionOffset;\n\t\t\tvarying vec2 charCoord, charId;\n\t\t\tvarying float charWidth;\n\t\t\tvarying vec4 fontColor;\n\t\t\tvoid main () {\n\t\t\t\tvec2 offset = floor(em * (vec2(align + charOffset, baseline)\n\t\t\t\t\t+ vec2(positionOffset.x, -positionOffset.y)))\n\t\t\t\t\t/ (viewport.zw * scale.xy);\n\n\t\t\t\tvec2 position = (position + translate) * scale;\n\t\t\t\tposition += offset * scale;\n\n\t\t\t\tcharCoord = position * viewport.zw + viewport.xy;\n\n\t\t\t\tgl_Position = vec4(position * 2. - 1., 0, 1);\n\n\t\t\t\tgl_PointSize = charStep;\n\n\t\t\t\tcharId.x = mod(char, atlasDim.x);\n\t\t\t\tcharId.y = floor(char / atlasDim.x);\n\n\t\t\t\tcharWidth = width * em;\n\n\t\t\t\tfontColor = color / 255.;\n\t\t\t}",frag:"\n\t\t\tprecision highp float;\n\t\t\tuniform float fontSize, charStep, opacity;\n\t\t\tuniform vec2 atlasSize;\n\t\t\tuniform vec4 viewport;\n\t\t\tuniform sampler2D atlas;\n\t\t\tvarying vec4 fontColor;\n\t\t\tvarying vec2 charCoord, charId;\n\t\t\tvarying float charWidth;\n\n\t\t\tfloat lightness(vec4 color) {\n\t\t\t\treturn color.r * 0.299 + color.g * 0.587 + color.b * 0.114;\n\t\t\t}\n\n\t\t\tvoid main () {\n\t\t\t\tvec2 uv = gl_FragCoord.xy - charCoord + charStep * .5;\n\t\t\t\tfloat halfCharStep = floor(charStep * .5 + .5);\n\n\t\t\t\t// invert y and shift by 1px (FF expecially needs that)\n\t\t\t\tuv.y = charStep - uv.y;\n\n\t\t\t\t// ignore points outside of character bounding box\n\t\t\t\tfloat halfCharWidth = ceil(charWidth * .5);\n\t\t\t\tif (floor(uv.x) > halfCharStep + halfCharWidth ||\n\t\t\t\t\tfloor(uv.x) < halfCharStep - halfCharWidth) return;\n\n\t\t\t\tuv += charId * charStep;\n\t\t\t\tuv = uv / atlasSize;\n\n\t\t\t\tvec4 color = fontColor;\n\t\t\t\tvec4 mask = texture2D(atlas, uv);\n\n\t\t\t\tfloat maskY = lightness(mask);\n\t\t\t\t// float colorY = lightness(color);\n\t\t\t\tcolor.a *= maskY;\n\t\t\t\tcolor.a *= opacity;\n\n\t\t\t\t// color.a += .1;\n\n\t\t\t\t// antialiasing, see yiq color space y-channel formula\n\t\t\t\t// color.rgb += (1. - color.rgb) * (1. - mask.rgb);\n\n\t\t\t\tgl_FragColor = color;\n\t\t\t}"});return{regl:t,draw:e,atlas:{}}},k.prototype.update=function(t){var e=this;if("string"===typeof t)t={text:t};else if(!t)return;null!=(t=i(t,{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&&(Array.isArray(t.opacity)?this.opacity=t.opacity.map((function(t){return parseFloat(t)})):this.opacity=parseFloat(t.opacity)),null!=t.viewport&&(this.viewport=f(t.viewport),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),null==this.viewport&&(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]),null!=t.kerning&&(this.kerning=t.kerning),null!=t.offset&&("number"===typeof t.offset&&(t.offset=[t.offset,0]),this.positionOffset=y(t.offset)),t.direction&&(this.direction=t.direction),t.range&&(this.range=t.range,this.scale=[1/(t.range[2]-t.range[0]),1/(t.range[3]-t.range[1])],this.translate=[-t.range[0],-t.range[1]]),t.scale&&(this.scale=t.scale),t.translate&&(this.translate=t.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),this.font.length||t.font||(t.font=k.baseFontSize+"px sans-serif");var n,a=!1,o=!1;if(t.font&&(Array.isArray(t.font)?t.font:[t.font]).forEach((function(t,n){if("string"===typeof t)try{t=r.parse(t)}catch(f){t=r.parse(k.baseFontSize+"px "+t)}else t=r.parse(r.stringify(t));var i=r.stringify({size:k.baseFontSize,family:t.family,stretch:w?t.stretch:void 0,variant:t.variant,weight:t.weight,style:t.style}),s=d(t.size),l=Math.round(s[0]*p(s[1]));if(l!==e.fontSize[n]&&(o=!0,e.fontSize[n]=l),(!e.font[n]||i!=e.font[n].baseString)&&(a=!0,e.font[n]=k.fonts[i],!e.font[n])){var c=t.family.join(", "),u=[t.style];t.style!=t.variant&&u.push(t.variant),t.variant!=t.weight&&u.push(t.weight),w&&t.weight!=t.stretch&&u.push(t.stretch),e.font[n]={baseString:i,family:c,weight:t.weight,stretch:t.stretch,style:t.style,variant:t.variant,width:{},kerning:{},metrics:m(c,{origin:"top",fontSize:k.baseFontSize,fontStyle:u.join(" ")})},k.fonts[i]=e.font[n]}})),(a||o)&&this.font.forEach((function(n,i){var a=r.stringify({size:e.fontSize[i],family:n.family,stretch:w?n.stretch:void 0,variant:n.variant,weight:n.weight,style:n.style});if(e.fontAtlas[i]=e.shader.atlas[a],!e.fontAtlas[i]){var o=n.metrics;e.shader.atlas[a]=e.fontAtlas[i]={fontString:a,step:2*Math.ceil(e.fontSize[i]*o.bottom*.5),em:e.fontSize[i],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:e.regl.texture()}}null==t.text&&(t.text=e.text)})),"string"===typeof t.text&&t.position&&t.position.length>2){for(var s=Array(.5*t.position.length),h=0;h2){for(var _=!t.position[0].length,T=u.mallocFloat(2*this.count),M=0,A=0;M1?e.align[n]:e.align[0]:e.align;if("number"===typeof r)return r;switch(r){case"right":case"end":return-t;case"center":case"centre":case"middle":return.5*-t}return 0}))),null==this.baseline&&null==t.baseline&&(t.baseline=0),null!=t.baseline&&(this.baseline=t.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map((function(t,n){var r=(e.font[n]||e.font[0]).metrics,i=0;return i+=.5*r.bottom,i+="number"===typeof t?t-r.baseline:-r[t],i*=-1}))),null!=t.color)if(t.color||(t.color="transparent"),"string"!==typeof t.color&&isNaN(t.color)){var q;if("number"===typeof t.color[0]&&t.color.length>this.counts.length){var G=t.color.length;q=u.mallocUint8(G);for(var W=(t.color.subarray||t.color.slice).bind(t.color),Y=0;Y4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2){var K=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(K);for(var Z=0;Z1?this.counts[Z]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[Z]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(4*Z,4*Z+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[Z]:this.opacity,baseline:null!=this.baselineOffset[Z]?this.baselineOffset[Z]:this.baselineOffset[0],align:this.align?null!=this.alignOffset[Z]?this.alignOffset[Z]:this.alignOffset[0]:0,atlas:this.fontAtlas[Z]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(2*Z,2*Z+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=[]},k.prototype.destroy=function(){},k.prototype.kerning=!0,k.prototype.position={constant:new Float32Array(2)},k.prototype.translate=null,k.prototype.scale=null,k.prototype.font=null,k.prototype.text="",k.prototype.positionOffset=[0,0],k.prototype.opacity=1,k.prototype.color=new Uint8Array([0,0,0,255]),k.prototype.alignOffset=[0,0],k.maxAtlasSize=1024,k.atlasCanvas=document.createElement("canvas"),k.atlasContext=k.atlasCanvas.getContext("2d",{alpha:!1}),k.baseFontSize=64,k.fonts={},t.exports=k},12018:function(t,e,n){"use strict";var r=n(71299);function i(t){if(t.container)if(t.container==document.body)document.body.style.width||(t.canvas.width=t.width||t.pixelRatio*n.g.innerWidth),document.body.style.height||(t.canvas.height=t.height||t.pixelRatio*n.g.innerHeight);else{var e=t.container.getBoundingClientRect();t.canvas.width=t.width||e.right-e.left,t.canvas.height=t.height||e.bottom-e.top}}function a(t){return"function"===typeof t.getContext&&"width"in t&&"height"in t}function o(){var t=document.createElement("canvas");return t.style.position="absolute",t.style.top=0,t.style.left=0,t}t.exports=function(t){var e;if(t?"string"===typeof t&&(t={container:t}):t={},(t=a(t)||"string"===typeof(e=t).nodeName&&"function"===typeof e.appendChild&&"function"===typeof e.getBoundingClientRect?{container:t}:function(t){return"function"===typeof t.drawArrays||"function"===typeof t.drawElements}(t)?{gl:t}:r(t,{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||(t.pixelRatio=n.g.pixelRatio||1),t.gl)return t.gl;if(t.canvas&&(t.container=t.canvas.parentNode),t.container){if("string"===typeof t.container){var s=document.querySelector(t.container);if(!s)throw Error("Element "+t.container+" is not found");t.container=s}a(t.container)?(t.canvas=t.container,t.container=t.canvas.parentNode):t.canvas||(t.canvas=o(),t.container.appendChild(t.canvas),i(t))}else if(!t.canvas){if("undefined"===typeof document)throw Error("Not DOM environment. Use headless-gl.");t.container=document.body||document.documentElement,t.canvas=o(),t.container.appendChild(t.canvas),i(t)}return t.gl||["webgl","experimental-webgl","webgl-experimental"].some((function(n){try{t.gl=t.canvas.getContext(n,t.attrs)}catch(e){}return t.gl})),t.gl}},56068:function(t){t.exports=function(t){"string"===typeof t&&(t=[t]);for(var e=[].slice.call(arguments,1),n=[],r=0;r>1,u=-7,f=n?i-1:0,h=n?-1:1,d=t[e+f];for(f+=h,a=d&(1<<-u)-1,d>>=-u,u+=s;u>0;a=256*a+t[e+f],f+=h,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=r;u>0;o=256*o+t[e+f],f+=h,u-=8);if(0===a)a=1-c;else{if(a===l)return o?NaN:1/0*(d?-1:1);o+=Math.pow(2,r),a-=c}return(d?-1:1)*o*Math.pow(2,a-r)},e.write=function(t,e,n,r,i,a){var o,s,l,c=8*a-i-1,u=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:a-1,p=r?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+f>=1?h/l:h*Math.pow(2,1-f))*l>=2&&(o++,l/=2),o+f>=u?(s=0,o=u):o+f>=1?(s=(e*l-1)*Math.pow(2,i),o+=f):(s=e*Math.pow(2,f-1)*Math.pow(2,i),o=0));i>=8;t[n+d]=255&s,d+=p,s/=256,i-=8);for(o=o<0;t[n+d]=255&o,d+=p,o/=256,c-=8);t[n+d-p]|=128*g}},42018:function(t){"function"===typeof Object.create?t.exports=function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(t,e){if(e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}}},47216:function(t,e,n){"use strict";var r=n(84543)(),i=n(6614)("Object.prototype.toString"),a=function(t){return!(r&&t&&"object"===typeof t&&Symbol.toStringTag in t)&&"[object Arguments]"===i(t)},o=function(t){return!!a(t)||null!==t&&"object"===typeof t&&"number"===typeof t.length&&t.length>=0&&"[object Array]"!==i(t)&&"[object Function]"===i(t.callee)},s=function(){return a(arguments)}();a.isLegacyArguments=o,t.exports=s?a:o},54404:function(t){t.exports=!0},85395:function t(e){"use strict";var n,r,i=Function.prototype.toString,a="object"===typeof Reflect&&null!==Reflect&&Reflect.apply;if("function"===typeof a&&"function"===typeof Object.defineProperty)try{n=Object.defineProperty({},"length",{get:function(){throw r}}),r={},a((function(){throw 42}),null,n)}catch(t){t!==r&&(a=null)}else a=null;var o=/^\s*class\b/,s=function(t){try{var e=i.call(t);return o.test(e)}catch(n){return!1}},l=function(t){try{return!s(t)&&(i.call(t),!0)}catch(e){return!1}},c=Object.prototype.toString,u="function"===typeof Symbol&&!!Symbol.toStringTag,f=!(0 in[,]),h=function(){return!1};if("object"===typeof document){var d=document.all;c.call(d)===c.call(document.all)&&(h=function(t){if((f||!t)&&("undefined"===typeof t||"object"===typeof t))try{var e=c.call(t);return("[object HTMLAllCollection]"===e||"[object HTML document.all class]"===e||"[object HTMLCollection]"===e||"[object Object]"===e)&&null==t("")}catch(n){}return!1})}e.exports=a?function(t){if(h(t))return!0;if(!t)return!1;if("function"!==typeof t&&"object"!==typeof t)return!1;try{a(t,null,n)}catch(e){if(e!==r)return!1}return!s(t)&&l(t)}:function(t){if(h(t))return!0;if(!t)return!1;if("function"!==typeof t&&"object"!==typeof t)return!1;if(u)return l(t);if(s(t))return!1;var e=c.call(t);return!("[object Function]"!==e&&"[object GeneratorFunction]"!==e&&!/^\[object HTML/.test(e))&&l(t)}},65481:function(t,e,n){"use strict";var r,i=Object.prototype.toString,a=Function.prototype.toString,o=/^\s*(?:function)?\*/,s=n(84543)(),l=Object.getPrototypeOf;t.exports=function(t){if("function"!==typeof t)return!1;if(o.test(a.call(t)))return!0;if(!s)return"[object GeneratorFunction]"===i.call(t);if(!l)return!1;if("undefined"===typeof r){var e=function(){if(!s)return!1;try{return Function("return function*() {}")()}catch(t){}}();r=!!e&&l(e)}return l(t)===r}},62683:function(t){"use strict";t.exports="undefined"!==typeof navigator&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))},64274:function(t){"use strict";t.exports=function(t){return t!==t}},15567:function(t,e,n){"use strict";var r=n(68222),i=n(17045),a=n(64274),o=n(14922),s=n(22442),l=r(o(),Number);i(l,{getPolyfill:o,implementation:a,shim:s}),t.exports=l},14922:function(t,e,n){"use strict";var r=n(64274);t.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:r}},22442:function(t,e,n){"use strict";var r=n(17045),i=n(14922);t.exports=function(){var t=i();return r(Number,{isNaN:t},{isNaN:function(){return Number.isNaN!==t}}),t}},64941:function(t){"use strict";t.exports=function(t){var e=typeof t;return null!==t&&("object"===e||"function"===e)}},10973:function(t){"use strict";var e=Object.prototype.toString;t.exports=function(t){var n;return"[object Object]"===e.call(t)&&(null===(n=Object.getPrototypeOf(t))||n===Object.getPrototypeOf({}))}},18546:function(t){"use strict";t.exports=function(t){for(var e,n=t.length,r=0;r13)&&32!==e&&133!==e&&160!==e&&5760!==e&&6158!==e&&(e<8192||e>8205)&&8232!==e&&8233!==e&&8239!==e&&8287!==e&&8288!==e&&12288!==e&&65279!==e)return!1;return!0}},89546:function(t){"use strict";t.exports=function(t){return"string"===typeof t&&(t=t.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(t)&&/[\dz]$/i.test(t)&&t.length>4))}},9187:function(t,e,n){"use strict";var r=n(31353),i=n(72077),a=n(6614),o=a("Object.prototype.toString"),s=n(84543)(),l=n(40383),c="undefined"===typeof globalThis?n.g:globalThis,u=i(),f=a("Array.prototype.indexOf",!0)||function(t,e){for(var n=0;n-1}return!!l&&function(t){var e=!1;return r(d,(function(n,r){if(!e)try{e=n.call(t)===r}catch(i){}})),e}(t)}},44517:function(t){t.exports=function(){"use strict";var t,e,n;function r(r,i){if(t)if(e){var a="var sharedChunk = {}; ("+t+")(sharedChunk); ("+e+")(sharedChunk);",o={};t(o),(n=i(o)).workerUrl=window.URL.createObjectURL(new Blob([a],{type:"text/javascript"}))}else e=i;else t=i}return r(["exports"],(function(t){function e(t,e){return t(e={exports:{}},e.exports),e.exports}var n="1.10.1",r=i;function i(t,e,n,r){this.cx=3*t,this.bx=3*(n-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*e,this.by=3*(r-e)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=r,this.p2x=n,this.p2y=r}i.prototype.sampleCurveX=function(t){return((this.ax*t+this.bx)*t+this.cx)*t},i.prototype.sampleCurveY=function(t){return((this.ay*t+this.by)*t+this.cy)*t},i.prototype.sampleCurveDerivativeX=function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},i.prototype.solveCurveX=function(t,e){var n,r,i,a,o;for("undefined"===typeof e&&(e=1e-6),i=t,o=0;o<8;o++){if(a=this.sampleCurveX(i)-t,Math.abs(a)(r=1))return r;for(;na?n=i:r=i,i=.5*(r-n)+n}return i},i.prototype.solve=function(t,e){return this.sampleCurveY(this.solveCurveX(t,e))};var a=o;function o(t,e){this.x=t,this.y=e}function s(t,e){if(Array.isArray(t)){if(!Array.isArray(e)||t.length!==e.length)return!1;for(var n=0;n=1)return 1;var e=t*t,n=e*t;return 4*(t<.5?n:3*(t-e)+n-.75)}function c(t,e,n,i){var a=new r(t,e,n,i);return function(t){return a.solve(t)}}o.prototype={clone:function(){return new o(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(t)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,e){return this.clone()._rotateAround(t,e)},matMult:function(t){return this.clone()._matMult(t)},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(t){return this.x===t.x&&this.y===t.y},dist:function(t){return Math.sqrt(this.distSqr(t))},distSqr:function(t){var e=t.x-this.x,n=t.y-this.y;return e*e+n*n},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(t){return Math.atan2(this.y-t.y,this.x-t.x)},angleWith:function(t){return this.angleWithSep(t.x,t.y)},angleWithSep:function(t,e){return Math.atan2(this.x*e-this.y*t,this.x*t+this.y*e)},_matMult:function(t){var e=t[0]*this.x+t[1]*this.y,n=t[2]*this.x+t[3]*this.y;return this.x=e,this.y=n,this},_add:function(t){return this.x+=t.x,this.y+=t.y,this},_sub:function(t){return this.x-=t.x,this.y-=t.y,this},_mult:function(t){return this.x*=t,this.y*=t,this},_div:function(t){return this.x/=t,this.y/=t,this},_multByPoint:function(t){return this.x*=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var e=Math.cos(t),n=Math.sin(t),r=e*this.x-n*this.y,i=n*this.x+e*this.y;return this.x=r,this.y=i,this},_rotateAround:function(t,e){var n=Math.cos(t),r=Math.sin(t),i=e.x+n*(this.x-e.x)-r*(this.y-e.y),a=e.y+r*(this.x-e.x)+n*(this.y-e.y);return this.x=i,this.y=a,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},o.convert=function(t){return t instanceof o?t:Array.isArray(t)?new o(t[0],t[1]):t};var u=c(.25,.1,.25,1);function f(t,e,n){return Math.min(n,Math.max(e,t))}function h(t,e,n){var r=n-e,i=((t-e)%r+r)%r+e;return i===e?n:i}function d(t,e,n){if(!t.length)return n(null,[]);var r=t.length,i=new Array(t.length),a=null;t.forEach((function(t,o){e(t,(function(t,e){t&&(a=t),i[o]=e,0===--r&&n(a,i)}))}))}function p(t){var e=[];for(var n in t)e.push(t[n]);return e}function g(t,e){var n=[];for(var r in t)r in e||n.push(r);return n}function v(t){for(var e=[],n=arguments.length-1;n-- >0;)e[n]=arguments[n+1];for(var r=0,i=e;r>e/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,t)}return t()}function w(t){return!!t&&/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(t)}function _(t,e){t.forEach((function(t){e[t]&&(e[t]=e[t].bind(e))}))}function k(t,e){return-1!==t.indexOf(e,t.length-e.length)}function T(t,e,n){var r={};for(var i in t)r[i]=e.call(n||this,t[i],i,t);return r}function M(t,e,n){var r={};for(var i in t)e.call(n||this,t[i],i,t)&&(r[i]=t[i]);return r}function A(t){return Array.isArray(t)?t.map(A):"object"===typeof t&&t?T(t,A):t}function S(t,e){for(var n=0;n=0)return!0;return!1}var E={};function C(t){E[t]||("undefined"!==typeof console&&console.warn(t),E[t]=!0)}function P(t,e,n){return(n.y-t.y)*(e.x-t.x)>(e.y-t.y)*(n.x-t.x)}function L(t){for(var e=0,n=0,r=t.length,i=r-1,a=void 0,o=void 0;n@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,n={};if(t.replace(e,(function(t,e,r,i){var a=r||i;return n[e]=!a||a.toLowerCase(),""})),n["max-age"]){var r=parseInt(n["max-age"],10);isNaN(r)?delete n["max-age"]:n["max-age"]=r}return n}var R=null;function z(t){if(null==R){var e=t.navigator?t.navigator.userAgent:null;R=!!t.safari||!(!e||!(/\b(iPad|iPhone|iPod)\b/.test(e)||e.match("Safari")&&!e.match("Chrome")))}return R}function N(t){try{var e=self[t];return e.setItem("_mapbox_test_",1),e.removeItem("_mapbox_test_"),!0}catch(n){return!1}}function j(t){return self.btoa(encodeURIComponent(t).replace(/%([0-9A-F]{2})/g,(function(t,e){return String.fromCharCode(Number("0x"+e))})))}function F(t){return decodeURIComponent(self.atob(t).split("").map((function(t){return"%"+("00"+t.charCodeAt(0).toString(16)).slice(-2)})).join(""))}var B,U,H,V,q=self.performance&&self.performance.now?self.performance.now.bind(self.performance):Date.now.bind(Date),G=self.requestAnimationFrame||self.mozRequestAnimationFrame||self.webkitRequestAnimationFrame||self.msRequestAnimationFrame,W=self.cancelAnimationFrame||self.mozCancelAnimationFrame||self.webkitCancelAnimationFrame||self.msCancelAnimationFrame,Y={now:q,frame:function(t){var e=G(t);return{cancel:function(){return W(e)}}},getImageData:function(t,e){void 0===e&&(e=0);var n=self.document.createElement("canvas"),r=n.getContext("2d");if(!r)throw new Error("failed to create canvas 2d context");return n.width=t.width,n.height=t.height,r.drawImage(t,0,0,t.width,t.height),r.getImageData(-e,-e,t.width+2*e,t.height+2*e)},resolveURL:function(t){return B||(B=self.document.createElement("a")),B.href=t,B.href},hardwareConcurrency:self.navigator.hardwareConcurrency||4,get devicePixelRatio(){return self.devicePixelRatio},get prefersReducedMotion(){return!!self.matchMedia&&(null==U&&(U=self.matchMedia("(prefers-reduced-motion: reduce)")),U.matches)}},$={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?0===this.API_URL.indexOf("https://api.mapbox.cn")?"https://events.mapbox.cn/events/v2":0===this.API_URL.indexOf("https://api.mapbox.com")?"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:J},K=!1,Z=!1;function J(t){!K&&V&&(Z?Q(t):H=t)}function Q(t){var e=t.createTexture();t.bindTexture(t.TEXTURE_2D,e);try{if(t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,V),t.isContextLost())return;X.supported=!0}catch(n){}t.deleteTexture(e),K=!0}self.document&&((V=self.document.createElement("img")).onload=function(){H&&Q(H),H=null,Z=!0},V.onerror=function(){K=!0,H=null},V.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");var tt="01";function et(){for(var t="1",e="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",n="",r=0;r<10;r++)n+=e[Math.floor(62*Math.random())];var i=432e5;return{token:[t,tt,n].join(""),tokenExpiresAt:Date.now()+i}}var nt=function(t,e){this._transformRequestFn=t,this._customAccessToken=e,this._createSkuToken()};function rt(t){return 0===t.indexOf("mapbox:")}nt.prototype._createSkuToken=function(){var t=et();this._skuToken=t.token,this._skuTokenExpiresAt=t.tokenExpiresAt},nt.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},nt.prototype.transformRequest=function(t,e){return this._transformRequestFn&&this._transformRequestFn(t,e)||{url:t}},nt.prototype.normalizeStyleURL=function(t,e){if(!rt(t))return t;var n=ct(t);return n.path="/styles/v1"+n.path,this._makeAPIURL(n,this._customAccessToken||e)},nt.prototype.normalizeGlyphsURL=function(t,e){if(!rt(t))return t;var n=ct(t);return n.path="/fonts/v1"+n.path,this._makeAPIURL(n,this._customAccessToken||e)},nt.prototype.normalizeSourceURL=function(t,e){if(!rt(t))return t;var n=ct(t);return n.path="/v4/"+n.authority+".json",n.params.push("secure"),this._makeAPIURL(n,this._customAccessToken||e)},nt.prototype.normalizeSpriteURL=function(t,e,n,r){var i=ct(t);return rt(t)?(i.path="/styles/v1"+i.path+"/sprite"+e+n,this._makeAPIURL(i,this._customAccessToken||r)):(i.path+=""+e+n,ut(i))},nt.prototype.normalizeTileURL=function(t,e){if(this._isSkuTokenExpired()&&this._createSkuToken(),t&&!rt(t))return t;var n=ct(t),r=/(\.(png|jpg)\d*)(?=$)/,i=/^.+\/v4\//,a=Y.devicePixelRatio>=2||512===e?"@2x":"",o=X.supported?".webp":"$1";n.path=n.path.replace(r,""+a+o),n.path=n.path.replace(i,"/"),n.path="/v4"+n.path;var s=this._customAccessToken||st(n.params)||$.ACCESS_TOKEN;return $.REQUIRE_ACCESS_TOKEN&&s&&this._skuToken&&n.params.push("sku="+this._skuToken),this._makeAPIURL(n,s)},nt.prototype.canonicalizeTileURL=function(t,e){var n="/v4/",r=/\.[\w]+$/,i=ct(t);if(!i.path.match(/(^\/v4\/)/)||!i.path.match(r))return t;var a="mapbox://tiles/";a+=i.path.replace(n,"");var o=i.params;return e&&(o=o.filter((function(t){return!t.match(/^access_token=/)}))),o.length&&(a+="?"+o.join("&")),a},nt.prototype.canonicalizeTileset=function(t,e){for(var n=!!e&&rt(e),r=[],i=0,a=t.tiles||[];i=1&&self.localStorage.setItem(e,JSON.stringify(this.eventData))}catch(r){C("Unable to write to LocalStorage")}},dt.prototype.processRequests=function(t){},dt.prototype.postEvent=function(t,e,r,i){var a=this;if($.EVENTS_URL){var o=ct($.EVENTS_URL);o.params.push("access_token="+(i||$.ACCESS_TOKEN||""));var s={event:this.type,created:new Date(t).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:n,skuId:tt,userId:this.anonId},l=e?v(s,e):s,c={url:ut(o),headers:{"Content-Type":"text/plain"},body:JSON.stringify([l])};this.pendingRequest=$t(c,(function(t){a.pendingRequest=null,r(t),a.saveEventData(),a.processRequests(i)}))}},dt.prototype.queueRequest=function(t,e){this.queue.push(t),this.processRequests(e)};var pt,gt,vt=function(t){function e(){t.call(this,"map.load"),this.success={},this.skuToken=""}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.postMapLoadEvent=function(t,e,n,r){this.skuToken=n,($.EVENTS_URL&&r||$.ACCESS_TOKEN&&Array.isArray(t)&&t.some((function(t){return rt(t)||at(t)})))&&this.queueRequest({id:e,timestamp:Date.now()},r)},e.prototype.processRequests=function(t){var e=this;if(!this.pendingRequest&&0!==this.queue.length){var n=this.queue.shift(),r=n.id,i=n.timestamp;r&&this.success[r]||(this.anonId||this.fetchEventData(),w(this.anonId)||(this.anonId=x()),this.postEvent(i,{skuToken:this.skuToken},(function(t){t||r&&(e.success[r]=!0)}),t))}},e}(dt),mt=function(t){function e(e){t.call(this,"appUserTurnstile"),this._customAccessToken=e}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.postTurnstileEvent=function(t,e){$.EVENTS_URL&&$.ACCESS_TOKEN&&Array.isArray(t)&&t.some((function(t){return rt(t)||at(t)}))&&this.queueRequest(Date.now(),e)},e.prototype.processRequests=function(t){var e=this;if(!this.pendingRequest&&0!==this.queue.length){this.anonId&&this.eventData.lastSuccess&&this.eventData.tokenU||this.fetchEventData();var n=ht($.ACCESS_TOKEN),r=n?n.u:$.ACCESS_TOKEN,i=r!==this.eventData.tokenU;w(this.anonId)||(this.anonId=x(),i=!0);var a=this.queue.shift();if(this.eventData.lastSuccess){var o=new Date(this.eventData.lastSuccess),s=new Date(a),l=(a-this.eventData.lastSuccess)/864e5;i=i||l>=1||l<-1||o.getDate()!==s.getDate()}else i=!0;if(!i)return this.processRequests();this.postEvent(a,{"enabled.telemetry":!1},(function(t){t||(e.eventData.lastSuccess=a,e.eventData.tokenU=r)}),t)}},e}(dt),yt=new mt,bt=yt.postTurnstileEvent.bind(yt),xt=new vt,wt=xt.postMapLoadEvent.bind(xt),_t="mapbox-tiles",kt=500,Tt=50,Mt=42e4;function At(){self.caches&&!pt&&(pt=self.caches.open(_t))}function St(t,e){if(void 0===gt)try{new Response(new ReadableStream),gt=!0}catch(n){gt=!1}gt?e(t.body):t.blob().then(e)}function Et(t,e,n){if(At(),pt){var r={status:e.status,statusText:e.statusText,headers:new self.Headers};e.headers.forEach((function(t,e){return r.headers.set(e,t)}));var i=D(e.headers.get("Cache-Control")||"");i["no-store"]||(i["max-age"]&&r.headers.set("Expires",new Date(n+1e3*i["max-age"]).toUTCString()),new Date(r.headers.get("Expires")).getTime()-nDate.now()&&!n["no-cache"]}var Ot,It=1/0;function Dt(t){++It>Tt&&(t.getActor().send("enforceCacheSizeLimit",kt),It=0)}function Rt(t){At(),pt&&pt.then((function(e){e.keys().then((function(n){for(var r=0;r=200&&n.status<300||0===n.status)&&null!==n.response){var r=n.response;if("json"===t.type)try{r=JSON.parse(n.response)}catch(i){return e(i)}e(null,r,n.getResponseHeader("Cache-Control"),n.getResponseHeader("Expires"))}else e(new Bt(n.statusText,n.status,t.url))},n.send(t.body),{cancel:function(){return n.abort()}}}var Gt=function(t,e){if(!Ht(t.url)){if(self.fetch&&self.Request&&self.AbortController&&self.Request.prototype.hasOwnProperty("signal"))return Vt(t,e);if(I()&&self.worker&&self.worker.actor){var n=!0;return self.worker.actor.send("getResource",t,e,void 0,n)}}return qt(t,e)},Wt=function(t,e){return Gt(v(t,{type:"json"}),e)},Yt=function(t,e){return Gt(v(t,{type:"arrayBuffer"}),e)},$t=function(t,e){return Gt(v(t,{method:"POST"}),e)};function Xt(t){var e=self.document.createElement("a");return e.href=t,e.protocol===self.document.location.protocol&&e.host===self.document.location.host}var Kt,Zt,Jt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function Qt(t,e,n,r){var i=new self.Image,a=self.URL;i.onload=function(){e(null,i),a.revokeObjectURL(i.src)},i.onerror=function(){return e(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 o=new self.Blob([new Uint8Array(t)],{type:"image/png"});i.cacheControl=n,i.expires=r,i.src=t.byteLength?a.createObjectURL(o):Jt}function te(t,e){var n=new self.Blob([new Uint8Array(t)],{type:"image/png"});self.createImageBitmap(n).then((function(t){e(null,t)})).catch((function(t){e(new Error("Could not load image because of "+t.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))}))}Kt=[],Zt=0;var ee=function t(e,n){if(X.supported&&(e.headers||(e.headers={}),e.headers.accept="image/webp,*/*"),Zt>=$.MAX_PARALLEL_IMAGE_REQUESTS){var r={requestParameters:e,callback:n,cancelled:!1,cancel:function(){this.cancelled=!0}};return Kt.push(r),r}Zt++;var i=!1,a=function(){if(!i)for(i=!0,Zt--;Kt.length&&Zt<$.MAX_PARALLEL_IMAGE_REQUESTS;){var e=Kt.shift(),n=e.requestParameters,r=e.callback;e.cancelled||(e.cancel=t(n,r).cancel)}},o=Yt(e,(function(t,e,r,i){a(),t?n(t):e&&(jt()?te(e,n):Qt(e,n,r,i))}));return{cancel:function(){o.cancel(),a()}}},ne=function(t,e){var n=self.document.createElement("video");n.muted=!0,n.onloadstart=function(){e(null,n)};for(var r=0;r0||this._oneTimeListeners&&this._oneTimeListeners[t]&&this._oneTimeListeners[t].length>0||this._eventedParent&&this._eventedParent.listens(t)},se.prototype.setEventedParent=function(t,e){return this._eventedParent=t,this._eventedParentData=e,this};var le={$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"}}},ce=function(t,e,n,r){this.message=(t?t+": ":"")+n,r&&(this.identifier=r),null!==e&&void 0!==e&&e.__line__&&(this.line=e.__line__)};function ue(t){var e=t.key,n=t.value;return n?[new ce(e,n,"constants have been deprecated as of v8")]:[]}function fe(t){for(var e=[],n=arguments.length-1;n-- >0;)e[n]=arguments[n+1];for(var r=0,i=e;r":"value"===t.itemType.kind?"array":"array<"+e+">"}return t.kind}var Ce=[ve,me,ye,be,xe,Me,we,Se(_e),Ae];function Pe(t,e){if("error"===e.kind)return null;if("array"===t.kind){if("array"===e.kind&&(0===e.N&&"value"===e.itemType.kind||!Pe(t.itemType,e.itemType))&&("number"!==typeof t.N||t.N===e.N))return null}else{if(t.kind===e.kind)return null;if("value"===t.kind)for(var n=0,r=Ce;n255?255:t}function i(t){return t<0?0:t>1?1:t}function a(t){return"%"===t[t.length-1]?r(parseFloat(t)/100*255):r(parseInt(t))}function o(t){return"%"===t[t.length-1]?i(parseFloat(t)/100):i(parseFloat(t))}function s(t,e,n){return n<0?n+=1:n>1&&(n-=1),6*n<1?t+(e-t)*n*6:2*n<1?e:3*n<2?t+(e-t)*(2/3-n)*6:t}function l(t){var e,i=t.replace(/ /g,"").toLowerCase();if(i in n)return n[i].slice();if("#"===i[0])return 4===i.length?(e=parseInt(i.substr(1),16))>=0&&e<=4095?[(3840&e)>>4|(3840&e)>>8,240&e|(240&e)>>4,15&e|(15&e)<<4,1]:null:7===i.length&&(e=parseInt(i.substr(1),16))>=0&&e<=16777215?[(16711680&e)>>16,(65280&e)>>8,255&e,1]:null;var l=i.indexOf("("),c=i.indexOf(")");if(-1!==l&&c+1===i.length){var u=i.substr(0,l),f=i.substr(l+1,c-(l+1)).split(","),h=1;switch(u){case"rgba":if(4!==f.length)return null;h=o(f.pop());case"rgb":return 3!==f.length?null:[a(f[0]),a(f[1]),a(f[2]),h];case"hsla":if(4!==f.length)return null;h=o(f.pop());case"hsl":if(3!==f.length)return null;var d=(parseFloat(f[0])%360+360)%360/360,p=o(f[1]),g=o(f[2]),v=g<=.5?g*(p+1):g+p-g*p,m=2*g-v;return[r(255*s(m,v,d+1/3)),r(255*s(m,v,d)),r(255*s(m,v,d-1/3)),h];default:return null}}return null}try{e.parseCSSColor=l}catch(c){}})),De=Ie.parseCSSColor,Re=function(t,e,n,r){void 0===r&&(r=1),this.r=t,this.g=e,this.b=n,this.a=r};Re.parse=function(t){if(t){if(t instanceof Re)return t;if("string"===typeof t){var e=De(t);if(e)return new Re(e[0]/255*e[3],e[1]/255*e[3],e[2]/255*e[3],e[3])}}},Re.prototype.toString=function(){var t=this.toArray(),e=t[0],n=t[1],r=t[2],i=t[3];return"rgba("+Math.round(e)+","+Math.round(n)+","+Math.round(r)+","+i+")"},Re.prototype.toArray=function(){var t=this,e=t.r,n=t.g,r=t.b,i=t.a;return 0===i?[0,0,0,0]:[255*e/i,255*n/i,255*r/i,i]},Re.black=new Re(0,0,0,1),Re.white=new Re(1,1,1,1),Re.transparent=new Re(0,0,0,0),Re.red=new Re(1,0,0,1);var ze=function(t,e,n){this.sensitivity=t?e?"variant":"case":e?"accent":"base",this.locale=n,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};ze.prototype.compare=function(t,e){return this.collator.compare(t,e)},ze.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var Ne=function(t,e,n,r,i){this.text=t,this.image=e,this.scale=n,this.fontStack=r,this.textColor=i},je=function(t){this.sections=t};je.fromString=function(t){return new je([new Ne(t,null,null,null,null)])},je.prototype.isEmpty=function(){return 0===this.sections.length||!this.sections.some((function(t){return 0!==t.text.length||t.image&&0!==t.image.name.length}))},je.factory=function(t){return t instanceof je?t:je.fromString(t)},je.prototype.toString=function(){return 0===this.sections.length?"":this.sections.map((function(t){return t.text})).join("")},je.prototype.serialize=function(){for(var t=["format"],e=0,n=this.sections;e=0&&t<=255&&"number"===typeof e&&e>=0&&e<=255&&"number"===typeof n&&n>=0&&n<=255?"undefined"===typeof r||"number"===typeof r&&r>=0&&r<=1?null:"Invalid rgba value ["+[t,e,n,r].join(", ")+"]: 'a' must be between 0 and 1.":"Invalid rgba value ["+("number"===typeof r?[t,e,n,r]:[t,e,n]).join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}function Ue(t){if(null===t)return!0;if("string"===typeof t)return!0;if("boolean"===typeof t)return!0;if("number"===typeof t)return!0;if(t instanceof Re)return!0;if(t instanceof ze)return!0;if(t instanceof je)return!0;if(t instanceof Fe)return!0;if(Array.isArray(t)){for(var e=0,n=t;e2){var s=t[1];if("string"!==typeof s||!(s in We)||"object"===s)return e.error('The item type argument of "array" must be one of string, number, boolean',1);a=We[s],r++}else a=_e;if(t.length>3){if(null!==t[2]&&("number"!==typeof t[2]||t[2]<0||t[2]!==Math.floor(t[2])))return e.error('The length argument to "array" must be a positive integer literal',2);o=t[2],r++}n=Se(a,o)}else n=We[i];for(var l=[];r1)&&e.push(r)}}return e.concat(this.args.map((function(t){return t.serialize()})))};var $e=function(t){this.type=Me,this.sections=t};$e.parse=function(t,e){if(t.length<2)return e.error("Expected at least one argument.");var n=t[1];if(!Array.isArray(n)&&"object"===typeof n)return e.error("First argument must be an image or text section.");for(var r=[],i=!1,a=1;a<=t.length-1;++a){var o=t[a];if(i&&"object"===typeof o&&!Array.isArray(o)){i=!1;var s=null;if(o["font-scale"]&&!(s=e.parse(o["font-scale"],1,me)))return null;var l=null;if(o["text-font"]&&!(l=e.parse(o["text-font"],1,Se(ye))))return null;var c=null;if(o["text-color"]&&!(c=e.parse(o["text-color"],1,xe)))return null;var u=r[r.length-1];u.scale=s,u.font=l,u.textColor=c}else{var f=e.parse(t[a],1,_e);if(!f)return null;var h=f.type.kind;if("string"!==h&&"value"!==h&&"null"!==h&&"resolvedImage"!==h)return e.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");i=!0,r.push({content:f,scale:null,font:null,textColor:null})}}return new $e(r)},$e.prototype.evaluate=function(t){var e=function(e){var n=e.content.evaluate(t);return He(n)===Ae?new Ne("",n,null,null,null):new Ne(Ve(n),null,e.scale?e.scale.evaluate(t):null,e.font?e.font.evaluate(t).join(","):null,e.textColor?e.textColor.evaluate(t):null)};return new je(this.sections.map(e))},$e.prototype.eachChild=function(t){for(var e=0,n=this.sections;e-1),n},Xe.prototype.eachChild=function(t){t(this.input)},Xe.prototype.outputDefined=function(){return!1},Xe.prototype.serialize=function(){return["image",this.input.serialize()]};var Ke={"to-boolean":be,"to-color":xe,"to-number":me,"to-string":ye},Ze=function(t,e){this.type=t,this.args=e};Ze.parse=function(t,e){if(t.length<2)return e.error("Expected at least one argument.");var n=t[0];if(("to-boolean"===n||"to-string"===n)&&2!==t.length)return e.error("Expected one argument.");for(var r=Ke[n],i=[],a=1;a4?"Invalid rbga value "+JSON.stringify(e)+": expected an array containing either three or four numeric values.":Be(e[0],e[1],e[2],e[3])))return new Re(e[0]/255,e[1]/255,e[2]/255,e[3])}throw new Ge(n||"Could not parse color from value '"+("string"===typeof e?e:String(JSON.stringify(e)))+"'")}if("number"===this.type.kind){for(var o=null,s=0,l=this.args;s=e[2])&&!(t[1]<=e[1])&&!(t[3]>=e[3])}function cn(t,e){var n=on(t[0]),r=sn(t[1]),i=Math.pow(2,e.z);return[Math.round(n*i*rn),Math.round(r*i*rn)]}function un(t,e,n){var r=t[0]-e[0],i=t[1]-e[1],a=t[0]-n[0],o=t[1]-n[1];return r*o-a*i===0&&r*a<=0&&i*o<=0}function fn(t,e,n){return e[1]>t[1]!==n[1]>t[1]&&t[0]<(n[0]-e[0])*(t[1]-e[1])/(n[1]-e[1])+e[0]}function hn(t,e){for(var n=!1,r=0,i=e.length;r0&&f<0||u<0&&f>0}function vn(t,e,n,r){var i=[e[0]-t[0],e[1]-t[1]];return 0!==pn([r[0]-n[0],r[1]-n[1]],i)&&!(!gn(t,e,n,r)||!gn(n,r,t,e))}function mn(t,e,n){for(var r=0,i=n;rn[2]){var i=.5*r,a=t[0]-n[0]>i?-r:n[0]-t[0]>i?r:0;0===a&&(a=t[0]-n[2]>i?-r:n[2]-t[0]>i?r:0),t[0]+=a}an(e,t)}function kn(t){t[0]=t[1]=1/0,t[2]=t[3]=-1/0}function Tn(t,e,n,r){for(var i=Math.pow(2,r.z)*rn,a=[r.x*rn,r.y*rn],o=[],s=0,l=t;s=0)return!1;var n=!0;return t.eachChild((function(t){n&&!Ln(t,e)&&(n=!1)})),n}En.parse=function(t,e){if(2!==t.length)return e.error("'within' expression requires exactly one argument, but found "+(t.length-1)+" instead.");if(Ue(t[1])){var n=t[1];if("FeatureCollection"===n.type)for(var r=0;re))throw new Ge("Input is not a number.");o=s-1}return 0}In.prototype.parse=function(t,e,n,r,i){return void 0===i&&(i={}),e?this.concat(e,n,r)._parse(t,i):this._parse(t,i)},In.prototype._parse=function(t,e){function n(t,e,n){return"assert"===n?new Ye(e,[t]):"coerce"===n?new Ze(e,[t]):t}if(null!==t&&"string"!==typeof t&&"boolean"!==typeof t&&"number"!==typeof t||(t=["literal",t]),Array.isArray(t)){if(0===t.length)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var r=t[0];if("string"!==typeof r)return this.error("Expression name must be a string, but found "+typeof r+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var i=this.registry[r];if(i){var a=i.parse(t,this);if(!a)return null;if(this.expectedType){var o=this.expectedType,s=a.type;if("string"!==o.kind&&"number"!==o.kind&&"boolean"!==o.kind&&"object"!==o.kind&&"array"!==o.kind||"value"!==s.kind)if("color"!==o.kind&&"formatted"!==o.kind&&"resolvedImage"!==o.kind||"value"!==s.kind&&"string"!==s.kind){if(this.checkSubtype(o,s))return null}else a=n(a,o,e.typeAnnotation||"coerce");else a=n(a,o,e.typeAnnotation||"assert")}if(!(a instanceof qe)&&"resolvedImage"!==a.type.kind&&Dn(a)){var l=new Qe;try{a=new qe(a.type,a.evaluate(l))}catch(c){return this.error(c.message),null}}return a}return this.error('Unknown expression "'+r+'". If you wanted a literal array, use ["literal", [...]].',0)}return"undefined"===typeof t?this.error("'undefined' value invalid. Use null instead."):"object"===typeof t?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof t+" instead.")},In.prototype.concat=function(t,e,n){var r="number"===typeof t?this.path.concat(t):this.path,i=n?this.scope.concat(n):this.scope;return new In(this.registry,r,e||null,i,this.errors)},In.prototype.error=function(t){for(var e=[],n=arguments.length-1;n-- >0;)e[n]=arguments[n+1];var r=""+this.key+e.map((function(t){return"["+t+"]"})).join("");this.errors.push(new pe(r,t))},In.prototype.checkSubtype=function(t,e){var n=Pe(t,e);return n&&this.error(n),n};var zn=function(t,e,n){this.type=t,this.input=e,this.labels=[],this.outputs=[];for(var r=0,i=n;r=o)return e.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',l);var u=e.parse(s,c,i);if(!u)return null;i=i||u.type,r.push([o,u])}return new zn(i,n,r)},zn.prototype.evaluate=function(t){var e=this.labels,n=this.outputs;if(1===e.length)return n[0].evaluate(t);var r=this.input.evaluate(t);if(r<=e[0])return n[0].evaluate(t);var i=e.length;return r>=e[i-1]?n[i-1].evaluate(t):n[Rn(e,r)].evaluate(t)},zn.prototype.eachChild=function(t){t(this.input);for(var e=0,n=this.outputs;e0&&t.push(this.labels[e]),t.push(this.outputs[e].serialize());return t};var Bn=Object.freeze({__proto__:null,number:Nn,color:jn,array:Fn}),Un=.95047,Hn=1,Vn=1.08883,qn=4/29,Gn=6/29,Wn=3*Gn*Gn,Yn=Gn*Gn*Gn,$n=Math.PI/180,Xn=180/Math.PI;function Kn(t){return t>Yn?Math.pow(t,1/3):t/Wn+qn}function Zn(t){return t>Gn?t*t*t:Wn*(t-qn)}function Jn(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function Qn(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function tr(t){var e=Qn(t.r),n=Qn(t.g),r=Qn(t.b),i=Kn((.4124564*e+.3575761*n+.1804375*r)/Un),a=Kn((.2126729*e+.7151522*n+.072175*r)/Hn);return{l:116*a-16,a:500*(i-a),b:200*(a-Kn((.0193339*e+.119192*n+.9503041*r)/Vn)),alpha:t.a}}function er(t){var e=(t.l+16)/116,n=isNaN(t.a)?e:e+t.a/500,r=isNaN(t.b)?e:e-t.b/200;return e=Hn*Zn(e),n=Un*Zn(n),r=Vn*Zn(r),new Re(Jn(3.2404542*n-1.5371385*e-.4985314*r),Jn(-.969266*n+1.8760108*e+.041556*r),Jn(.0556434*n-.2040259*e+1.0572252*r),t.alpha)}function nr(t,e,n){return{l:Nn(t.l,e.l,n),a:Nn(t.a,e.a,n),b:Nn(t.b,e.b,n),alpha:Nn(t.alpha,e.alpha,n)}}function rr(t){var e=tr(t),n=e.l,r=e.a,i=e.b,a=Math.atan2(i,r)*Xn;return{h:a<0?a+360:a,c:Math.sqrt(r*r+i*i),l:n,alpha:t.a}}function ir(t){var e=t.h*$n,n=t.c;return er({l:t.l,a:Math.cos(e)*n,b:Math.sin(e)*n,alpha:t.alpha})}function ar(t,e,n){var r=e-t;return t+n*(r>180||r<-180?r-360*Math.round(r/360):r)}function or(t,e,n){return{h:ar(t.h,e.h,n),c:Nn(t.c,e.c,n),l:Nn(t.l,e.l,n),alpha:Nn(t.alpha,e.alpha,n)}}var sr={forward:tr,reverse:er,interpolate:nr},lr={forward:rr,reverse:ir,interpolate:or},cr=Object.freeze({__proto__:null,lab:sr,hcl:lr}),ur=function(t,e,n,r,i){this.type=t,this.operator=e,this.interpolation=n,this.input=r,this.labels=[],this.outputs=[];for(var a=0,o=i;a1})))return e.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);r={name:"cubic-bezier",controlPoints:s}}if(t.length-1<4)return e.error("Expected at least 4 arguments, but found only "+(t.length-1)+".");if((t.length-1)%2!==0)return e.error("Expected an even number of arguments.");if(!(i=e.parse(i,2,me)))return null;var l=[],c=null;"interpolate-hcl"===n||"interpolate-lab"===n?c=xe:e.expectedType&&"value"!==e.expectedType.kind&&(c=e.expectedType);for(var u=0;u=f)return e.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',d);var g=e.parse(h,p,c);if(!g)return null;c=c||g.type,l.push([f,g])}return"number"===c.kind||"color"===c.kind||"array"===c.kind&&"number"===c.itemType.kind&&"number"===typeof c.N?new ur(c,n,r,i,l):e.error("Type "+Ee(c)+" is not interpolatable.")},ur.prototype.evaluate=function(t){var e=this.labels,n=this.outputs;if(1===e.length)return n[0].evaluate(t);var r=this.input.evaluate(t);if(r<=e[0])return n[0].evaluate(t);var i=e.length;if(r>=e[i-1])return n[i-1].evaluate(t);var a=Rn(e,r),o=e[a],s=e[a+1],l=ur.interpolationFactor(this.interpolation,r,o,s),c=n[a].evaluate(t),u=n[a+1].evaluate(t);return"interpolate"===this.operator?Bn[this.type.kind.toLowerCase()](c,u,l):"interpolate-hcl"===this.operator?lr.reverse(lr.interpolate(lr.forward(c),lr.forward(u),l)):sr.reverse(sr.interpolate(sr.forward(c),sr.forward(u),l))},ur.prototype.eachChild=function(t){t(this.input);for(var e=0,n=this.outputs;e=n.length)throw new Ge("Array index out of bounds: "+e+" > "+(n.length-1)+".");if(e!==Math.floor(e))throw new Ge("Array index must be an integer, but found "+e+" instead.");return n[e]},pr.prototype.eachChild=function(t){t(this.index),t(this.input)},pr.prototype.outputDefined=function(){return!1},pr.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var gr=function(t,e){this.type=be,this.needle=t,this.haystack=e};gr.parse=function(t,e){if(3!==t.length)return e.error("Expected 2 arguments, but found "+(t.length-1)+" instead.");var n=e.parse(t[1],1,_e),r=e.parse(t[2],2,_e);return n&&r?Le(n.type,[be,ye,me,ve,_e])?new gr(n,r):e.error("Expected first argument to be of type boolean, string, number or null, but found "+Ee(n.type)+" instead"):null},gr.prototype.evaluate=function(t){var e=this.needle.evaluate(t),n=this.haystack.evaluate(t);if(!n)return!1;if(!Oe(e,["boolean","string","number","null"]))throw new Ge("Expected first argument to be of type boolean, string, number or null, but found "+Ee(He(e))+" instead.");if(!Oe(n,["string","array"]))throw new Ge("Expected second argument to be of type array or string, but found "+Ee(He(n))+" instead.");return n.indexOf(e)>=0},gr.prototype.eachChild=function(t){t(this.needle),t(this.haystack)},gr.prototype.outputDefined=function(){return!0},gr.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var vr=function(t,e,n){this.type=me,this.needle=t,this.haystack=e,this.fromIndex=n};vr.parse=function(t,e){if(t.length<=2||t.length>=5)return e.error("Expected 3 or 4 arguments, but found "+(t.length-1)+" instead.");var n=e.parse(t[1],1,_e),r=e.parse(t[2],2,_e);if(!n||!r)return null;if(!Le(n.type,[be,ye,me,ve,_e]))return e.error("Expected first argument to be of type boolean, string, number or null, but found "+Ee(n.type)+" instead");if(4===t.length){var i=e.parse(t[3],3,me);return i?new vr(n,r,i):null}return new vr(n,r)},vr.prototype.evaluate=function(t){var e=this.needle.evaluate(t),n=this.haystack.evaluate(t);if(!Oe(e,["boolean","string","number","null"]))throw new Ge("Expected first argument to be of type boolean, string, number or null, but found "+Ee(He(e))+" instead.");if(!Oe(n,["string","array"]))throw new Ge("Expected second argument to be of type array or string, but found "+Ee(He(n))+" instead.");if(this.fromIndex){var r=this.fromIndex.evaluate(t);return n.indexOf(e,r)}return n.indexOf(e)},vr.prototype.eachChild=function(t){t(this.needle),t(this.haystack),this.fromIndex&&t(this.fromIndex)},vr.prototype.outputDefined=function(){return!1},vr.prototype.serialize=function(){if(null!=this.fromIndex&&void 0!==this.fromIndex){var t=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),t]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var mr=function(t,e,n,r,i,a){this.inputType=t,this.type=e,this.input=n,this.cases=r,this.outputs=i,this.otherwise=a};mr.parse=function(t,e){if(t.length<5)return e.error("Expected at least 4 arguments, but found only "+(t.length-1)+".");if(t.length%2!==1)return e.error("Expected an even number of arguments.");var n,r;e.expectedType&&"value"!==e.expectedType.kind&&(r=e.expectedType);for(var i={},a=[],o=2;oNumber.MAX_SAFE_INTEGER)return c.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if("number"===typeof h&&Math.floor(h)!==h)return c.error("Numeric branch labels must be integer values.");if(n){if(c.checkSubtype(n,He(h)))return null}else n=He(h);if("undefined"!==typeof i[String(h)])return c.error("Branch labels must be unique.");i[String(h)]=a.length}var d=e.parse(l,o,r);if(!d)return null;r=r||d.type,a.push(d)}var p=e.parse(t[1],1,_e);if(!p)return null;var g=e.parse(t[t.length-1],t.length-1,r);return g?"value"!==p.type.kind&&e.concat(1).checkSubtype(n,p.type)?null:new mr(n,r,p,i,a,g):null},mr.prototype.evaluate=function(t){var e=this.input.evaluate(t);return(He(e)===this.inputType&&this.outputs[this.cases[e]]||this.otherwise).evaluate(t)},mr.prototype.eachChild=function(t){t(this.input),this.outputs.forEach(t),t(this.otherwise)},mr.prototype.outputDefined=function(){return this.outputs.every((function(t){return t.outputDefined()}))&&this.otherwise.outputDefined()},mr.prototype.serialize=function(){for(var t=this,e=["match",this.input.serialize()],n=[],r={},i=0,a=Object.keys(this.cases).sort();in}function Mr(t,e,n){return e<=n}function Ar(t,e,n){return e>=n}function Sr(t,e,n,r){return 0===r.compare(e,n)}function Er(t,e,n,r){return!Sr(t,e,n,r)}function Cr(t,e,n,r){return r.compare(e,n)<0}function Pr(t,e,n,r){return r.compare(e,n)>0}function Lr(t,e,n,r){return r.compare(e,n)<=0}function Or(t,e,n,r){return r.compare(e,n)>=0}function Ir(t,e,n){var r="=="!==t&&"!="!==t;return function(){function i(t,e,n){this.type=be,this.lhs=t,this.rhs=e,this.collator=n,this.hasUntypedArgument="value"===t.type.kind||"value"===e.type.kind}return i.parse=function(t,e){if(3!==t.length&&4!==t.length)return e.error("Expected two or three arguments.");var n=t[0],a=e.parse(t[1],1,_e);if(!a)return null;if(!xr(n,a.type))return e.concat(1).error('"'+n+"\" comparisons are not supported for type '"+Ee(a.type)+"'.");var o=e.parse(t[2],2,_e);if(!o)return null;if(!xr(n,o.type))return e.concat(2).error('"'+n+"\" comparisons are not supported for type '"+Ee(o.type)+"'.");if(a.type.kind!==o.type.kind&&"value"!==a.type.kind&&"value"!==o.type.kind)return e.error("Cannot compare types '"+Ee(a.type)+"' and '"+Ee(o.type)+"'.");r&&("value"===a.type.kind&&"value"!==o.type.kind?a=new Ye(o.type,[a]):"value"!==a.type.kind&&"value"===o.type.kind&&(o=new Ye(a.type,[o])));var s=null;if(4===t.length){if("string"!==a.type.kind&&"string"!==o.type.kind&&"value"!==a.type.kind&&"value"!==o.type.kind)return e.error("Cannot use collator to compare non-string types.");if(!(s=e.parse(t[3],3,Te)))return null}return new i(a,o,s)},i.prototype.evaluate=function(i){var a=this.lhs.evaluate(i),o=this.rhs.evaluate(i);if(r&&this.hasUntypedArgument){var s=He(a),l=He(o);if(s.kind!==l.kind||"string"!==s.kind&&"number"!==s.kind)throw new Ge('Expected arguments for "'+t+'" to be (string, string) or (number, number), but found ('+s.kind+", "+l.kind+") instead.")}if(this.collator&&!r&&this.hasUntypedArgument){var c=He(a),u=He(o);if("string"!==c.kind||"string"!==u.kind)return e(i,a,o)}return this.collator?n(i,a,o,this.collator.evaluate(i)):e(i,a,o)},i.prototype.eachChild=function(t){t(this.lhs),t(this.rhs),this.collator&&t(this.collator)},i.prototype.outputDefined=function(){return!0},i.prototype.serialize=function(){var e=[t];return this.eachChild((function(t){e.push(t.serialize())})),e},i}()}br.parse=function(t,e){if(t.length<=2||t.length>=5)return e.error("Expected 3 or 4 arguments, but found "+(t.length-1)+" instead.");var n=e.parse(t[1],1,_e),r=e.parse(t[2],2,me);if(!n||!r)return null;if(!Le(n.type,[Se(_e),ye,_e]))return e.error("Expected first argument to be of type array or string, but found "+Ee(n.type)+" instead");if(4===t.length){var i=e.parse(t[3],3,me);return i?new br(n.type,n,r,i):null}return new br(n.type,n,r)},br.prototype.evaluate=function(t){var e=this.input.evaluate(t),n=this.beginIndex.evaluate(t);if(!Oe(e,["string","array"]))throw new Ge("Expected first argument to be of type array or string, but found "+Ee(He(e))+" instead.");if(this.endIndex){var r=this.endIndex.evaluate(t);return e.slice(n,r)}return e.slice(n)},br.prototype.eachChild=function(t){t(this.input),t(this.beginIndex),this.endIndex&&t(this.endIndex)},br.prototype.outputDefined=function(){return!1},br.prototype.serialize=function(){if(null!=this.endIndex&&void 0!==this.endIndex){var t=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),t]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};var Dr=Ir("==",wr,Sr),Rr=Ir("!=",_r,Er),zr=Ir("<",kr,Cr),Nr=Ir(">",Tr,Pr),jr=Ir("<=",Mr,Lr),Fr=Ir(">=",Ar,Or),Br=function(t,e,n,r,i){this.type=ye,this.number=t,this.locale=e,this.currency=n,this.minFractionDigits=r,this.maxFractionDigits=i};Br.parse=function(t,e){if(3!==t.length)return e.error("Expected two arguments.");var n=e.parse(t[1],1,me);if(!n)return null;var r=t[2];if("object"!==typeof r||Array.isArray(r))return e.error("NumberFormat options argument must be an object.");var i=null;if(r.locale&&!(i=e.parse(r.locale,1,ye)))return null;var a=null;if(r.currency&&!(a=e.parse(r.currency,1,ye)))return null;var o=null;if(r["min-fraction-digits"]&&!(o=e.parse(r["min-fraction-digits"],1,me)))return null;var s=null;return r["max-fraction-digits"]&&!(s=e.parse(r["max-fraction-digits"],1,me))?null:new Br(n,i,a,o,s)},Br.prototype.evaluate=function(t){return new Intl.NumberFormat(this.locale?this.locale.evaluate(t):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(t):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(t):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(t):void 0}).format(this.number.evaluate(t))},Br.prototype.eachChild=function(t){t(this.number),this.locale&&t(this.locale),this.currency&&t(this.currency),this.minFractionDigits&&t(this.minFractionDigits),this.maxFractionDigits&&t(this.maxFractionDigits)},Br.prototype.outputDefined=function(){return!1},Br.prototype.serialize=function(){var t={};return this.locale&&(t.locale=this.locale.serialize()),this.currency&&(t.currency=this.currency.serialize()),this.minFractionDigits&&(t["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(t["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),t]};var Ur=function(t){this.type=me,this.input=t};Ur.parse=function(t,e){if(2!==t.length)return e.error("Expected 1 argument, but found "+(t.length-1)+" instead.");var n=e.parse(t[1],1);return n?"array"!==n.type.kind&&"string"!==n.type.kind&&"value"!==n.type.kind?e.error("Expected argument of type string or array, but found "+Ee(n.type)+" instead."):new Ur(n):null},Ur.prototype.evaluate=function(t){var e=this.input.evaluate(t);if("string"===typeof e)return e.length;if(Array.isArray(e))return e.length;throw new Ge("Expected value to be of type string or array, but found "+Ee(He(e))+" instead.")},Ur.prototype.eachChild=function(t){t(this.input)},Ur.prototype.outputDefined=function(){return!1},Ur.prototype.serialize=function(){var t=["length"];return this.eachChild((function(e){t.push(e.serialize())})),t};var Hr={"==":Dr,"!=":Rr,">":Nr,"<":zr,">=":Fr,"<=":jr,array:Ye,at:pr,boolean:Ye,case:yr,coalesce:hr,collator:nn,format:$e,image:Xe,in:gr,"index-of":vr,interpolate:ur,"interpolate-hcl":ur,"interpolate-lab":ur,length:Ur,let:dr,literal:qe,match:mr,number:Ye,"number-format":Br,object:Ye,slice:br,step:zn,string:Ye,"to-boolean":Ze,"to-color":Ze,"to-number":Ze,"to-string":Ze,var:On,within:En};function Vr(t,e){var n=e[0],r=e[1],i=e[2],a=e[3];n=n.evaluate(t),r=r.evaluate(t),i=i.evaluate(t);var o=a?a.evaluate(t):1,s=Be(n,r,i,o);if(s)throw new Ge(s);return new Re(n/255*o,r/255*o,i/255*o,o)}function qr(t,e){return t in e}function Gr(t,e){var n=e[t];return"undefined"===typeof n?null:n}function Wr(t,e,n,r){for(;n<=r;){var i=n+r>>1;if(e[i]===t)return!0;e[i]>t?r=i-1:n=i+1}return!1}function Yr(t){return{type:t}}function $r(t){return{result:"success",value:t}}function Xr(t){return{result:"error",value:t}}function Kr(t){return"data-driven"===t["property-type"]||"cross-faded-data-driven"===t["property-type"]}function Zr(t){return!!t.expression&&t.expression.parameters.indexOf("zoom")>-1}function Jr(t){return!!t.expression&&t.expression.interpolated}function Qr(t){return t instanceof Number?"number":t instanceof String?"string":t instanceof Boolean?"boolean":Array.isArray(t)?"array":null===t?"null":typeof t}function ti(t){return"object"===typeof t&&null!==t&&!Array.isArray(t)}function ei(t){return t}function ni(t,e){var n,r,i,a="color"===e.type,o=t.stops&&"object"===typeof t.stops[0][0],s=o||void 0!==t.property,l=o||!s,c=t.type||(Jr(e)?"exponential":"interval");if(a&&((t=fe({},t)).stops&&(t.stops=t.stops.map((function(t){return[t[0],Re.parse(t[1])]}))),t.default?t.default=Re.parse(t.default):t.default=Re.parse(e.default)),t.colorSpace&&"rgb"!==t.colorSpace&&!cr[t.colorSpace])throw new Error("Unknown color space: "+t.colorSpace);if("exponential"===c)n=oi;else if("interval"===c)n=ai;else if("categorical"===c){n=ii,r=Object.create(null);for(var u=0,f=t.stops;u=t.stops[r-1][0])return t.stops[r-1][1];var i=Rn(t.stops.map((function(t){return t[0]})),n);return t.stops[i][1]}function oi(t,e,n){var r=void 0!==t.base?t.base:1;if("number"!==Qr(n))return ri(t.default,e.default);var i=t.stops.length;if(1===i)return t.stops[0][1];if(n<=t.stops[0][0])return t.stops[0][1];if(n>=t.stops[i-1][0])return t.stops[i-1][1];var a=Rn(t.stops.map((function(t){return t[0]})),n),o=li(n,r,t.stops[a][0],t.stops[a+1][0]),s=t.stops[a][1],l=t.stops[a+1][1],c=Bn[e.type]||ei;if(t.colorSpace&&"rgb"!==t.colorSpace){var u=cr[t.colorSpace];c=function(t,e){return u.reverse(u.interpolate(u.forward(t),u.forward(e),o))}}return"function"===typeof s.evaluate?{evaluate:function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var n=s.evaluate.apply(void 0,t),r=l.evaluate.apply(void 0,t);if(void 0!==n&&void 0!==r)return c(n,r,o)}}:c(s,l,o)}function si(t,e,n){return"color"===e.type?n=Re.parse(n):"formatted"===e.type?n=je.fromString(n.toString()):"resolvedImage"===e.type?n=Fe.fromString(n.toString()):Qr(n)===e.type||"enum"===e.type&&e.values[n]||(n=void 0),ri(n,t.default,e.default)}function li(t,e,n,r){var i=r-n,a=t-n;return 0===i?0:1===e?a/i:(Math.pow(e,a)-1)/(Math.pow(e,i)-1)}tn.register(Hr,{error:[ke,[ye],function(t,e){var n=e[0];throw new Ge(n.evaluate(t))}],typeof:[ye,[_e],function(t,e){return Ee(He(e[0].evaluate(t)))}],"to-rgba":[Se(me,4),[xe],function(t,e){return e[0].evaluate(t).toArray()}],rgb:[xe,[me,me,me],Vr],rgba:[xe,[me,me,me,me],Vr],has:{type:be,overloads:[[[ye],function(t,e){return qr(e[0].evaluate(t),t.properties())}],[[ye,we],function(t,e){var n=e[0],r=e[1];return qr(n.evaluate(t),r.evaluate(t))}]]},get:{type:_e,overloads:[[[ye],function(t,e){return Gr(e[0].evaluate(t),t.properties())}],[[ye,we],function(t,e){var n=e[0],r=e[1];return Gr(n.evaluate(t),r.evaluate(t))}]]},"feature-state":[_e,[ye],function(t,e){return Gr(e[0].evaluate(t),t.featureState||{})}],properties:[we,[],function(t){return t.properties()}],"geometry-type":[ye,[],function(t){return t.geometryType()}],id:[_e,[],function(t){return t.id()}],zoom:[me,[],function(t){return t.globals.zoom}],"heatmap-density":[me,[],function(t){return t.globals.heatmapDensity||0}],"line-progress":[me,[],function(t){return t.globals.lineProgress||0}],accumulated:[_e,[],function(t){return void 0===t.globals.accumulated?null:t.globals.accumulated}],"+":[me,Yr(me),function(t,e){for(var n=0,r=0,i=e;r":[be,[ye,_e],function(t,e){var n=e[0],r=e[1],i=t.properties()[n.value],a=r.value;return typeof i===typeof a&&i>a}],"filter-id->":[be,[_e],function(t,e){var n=e[0],r=t.id(),i=n.value;return typeof r===typeof i&&r>i}],"filter-<=":[be,[ye,_e],function(t,e){var n=e[0],r=e[1],i=t.properties()[n.value],a=r.value;return typeof i===typeof a&&i<=a}],"filter-id-<=":[be,[_e],function(t,e){var n=e[0],r=t.id(),i=n.value;return typeof r===typeof i&&r<=i}],"filter->=":[be,[ye,_e],function(t,e){var n=e[0],r=e[1],i=t.properties()[n.value],a=r.value;return typeof i===typeof a&&i>=a}],"filter-id->=":[be,[_e],function(t,e){var n=e[0],r=t.id(),i=n.value;return typeof r===typeof i&&r>=i}],"filter-has":[be,[_e],function(t,e){return e[0].value in t.properties()}],"filter-has-id":[be,[],function(t){return null!==t.id()&&void 0!==t.id()}],"filter-type-in":[be,[Se(ye)],function(t,e){return e[0].value.indexOf(t.geometryType())>=0}],"filter-id-in":[be,[Se(_e)],function(t,e){return e[0].value.indexOf(t.id())>=0}],"filter-in-small":[be,[ye,Se(_e)],function(t,e){var n=e[0];return e[1].value.indexOf(t.properties()[n.value])>=0}],"filter-in-large":[be,[ye,Se(_e)],function(t,e){var n=e[0],r=e[1];return Wr(t.properties()[n.value],r.value,0,r.value.length-1)}],all:{type:be,overloads:[[[be,be],function(t,e){var n=e[0],r=e[1];return n.evaluate(t)&&r.evaluate(t)}],[Yr(be),function(t,e){for(var n=0,r=e;n0&&"string"===typeof t[0]&&t[0]in Hr}function fi(t,e){var n=new In(Hr,[],e?yi(e):void 0),r=n.parse(t,void 0,void 0,void 0,e&&"string"===e.type?{typeAnnotation:"coerce"}:void 0);return r?$r(new ci(r,e)):Xr(n.errors)}ci.prototype.evaluateWithoutErrorHandling=function(t,e,n,r,i,a){return this._evaluator.globals=t,this._evaluator.feature=e,this._evaluator.featureState=n,this._evaluator.canonical=r,this._evaluator.availableImages=i||null,this._evaluator.formattedSection=a,this.expression.evaluate(this._evaluator)},ci.prototype.evaluate=function(t,e,n,r,i,a){this._evaluator.globals=t,this._evaluator.feature=e||null,this._evaluator.featureState=n||null,this._evaluator.canonical=r,this._evaluator.availableImages=i||null,this._evaluator.formattedSection=a||null;try{var o=this.expression.evaluate(this._evaluator);if(null===o||void 0===o||"number"===typeof o&&o!==o)return this._defaultValue;if(this._enumValues&&!(o in this._enumValues))throw new Ge("Expected value to be one of "+Object.keys(this._enumValues).map((function(t){return JSON.stringify(t)})).join(", ")+", but found "+JSON.stringify(o)+" instead.");return o}catch(s){return this._warningHistory[s.message]||(this._warningHistory[s.message]=!0,"undefined"!==typeof console&&console.warn(s.message)),this._defaultValue}};var hi=function(t,e){this.kind=t,this._styleExpression=e,this.isStateDependent="constant"!==t&&!Pn(e.expression)};hi.prototype.evaluateWithoutErrorHandling=function(t,e,n,r,i,a){return this._styleExpression.evaluateWithoutErrorHandling(t,e,n,r,i,a)},hi.prototype.evaluate=function(t,e,n,r,i,a){return this._styleExpression.evaluate(t,e,n,r,i,a)};var di=function(t,e,n,r){this.kind=t,this.zoomStops=n,this._styleExpression=e,this.isStateDependent="camera"!==t&&!Pn(e.expression),this.interpolationType=r};function pi(t,e){if("error"===(t=fi(t,e)).result)return t;var n=t.value.expression,r=Cn(n);if(!r&&!Kr(e))return Xr([new pe("","data expressions not supported")]);var i=Ln(n,["zoom"]);if(!i&&!Zr(e))return Xr([new pe("","zoom expressions not supported")]);var a=mi(n);if(!a&&!i)return Xr([new pe("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(a instanceof pe)return Xr([a]);if(a instanceof ur&&!Jr(e))return Xr([new pe("",'"interpolate" expressions cannot be used with this property')]);if(!a)return $r(new hi(r?"constant":"source",t.value));var o=a instanceof ur?a.interpolation:void 0;return $r(new di(r?"camera":"composite",t.value,a.labels,o))}di.prototype.evaluateWithoutErrorHandling=function(t,e,n,r,i,a){return this._styleExpression.evaluateWithoutErrorHandling(t,e,n,r,i,a)},di.prototype.evaluate=function(t,e,n,r,i,a){return this._styleExpression.evaluate(t,e,n,r,i,a)},di.prototype.interpolationFactor=function(t,e,n){return this.interpolationType?ur.interpolationFactor(this.interpolationType,t,e,n):0};var gi=function(t,e){this._parameters=t,this._specification=e,fe(this,ni(this._parameters,this._specification))};function vi(t,e){if(ti(t))return new gi(t,e);if(ui(t)){var n=pi(t,e);if("error"===n.result)throw new Error(n.value.map((function(t){return t.key+": "+t.message})).join(", "));return n.value}var r=t;return"string"===typeof t&&"color"===e.type&&(r=Re.parse(t)),{kind:"constant",evaluate:function(){return r}}}function mi(t){var e=null;if(t instanceof dr)e=mi(t.result);else if(t instanceof hr)for(var n=0,r=t.args;nr.maximum?[new ce(e,n,n+" is greater than the maximum value "+r.maximum)]:[]}function ki(t){var e,n,r,i=t.valueSpec,a=he(t.value.type),o={},s="categorical"!==a&&void 0===t.value.property,l=!s,c="array"===Qr(t.value.stops)&&"array"===Qr(t.value.stops[0])&&"object"===Qr(t.value.stops[0][0]),u=xi({key:t.key,value:t.value,valueSpec:t.styleSpec.function,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{stops:f,default:p}});return"identity"===a&&s&&u.push(new ce(t.key,t.value,'missing required property "property"')),"identity"===a||t.value.stops||u.push(new ce(t.key,t.value,'missing required property "stops"')),"exponential"===a&&t.valueSpec.expression&&!Jr(t.valueSpec)&&u.push(new ce(t.key,t.value,"exponential functions not supported")),t.styleSpec.$version>=8&&(l&&!Kr(t.valueSpec)?u.push(new ce(t.key,t.value,"property functions not supported")):s&&!Zr(t.valueSpec)&&u.push(new ce(t.key,t.value,"zoom functions not supported"))),"categorical"!==a&&!c||void 0!==t.value.property||u.push(new ce(t.key,t.value,'"property" property is required')),u;function f(t){if("identity"===a)return[new ce(t.key,t.value,'identity function may not have a "stops" property')];var e=[],n=t.value;return e=e.concat(wi({key:t.key,value:n,valueSpec:t.valueSpec,style:t.style,styleSpec:t.styleSpec,arrayElementValidator:h})),"array"===Qr(n)&&0===n.length&&e.push(new ce(t.key,n,"array must have at least one stop")),e}function h(t){var e=[],a=t.value,s=t.key;if("array"!==Qr(a))return[new ce(s,a,"array expected, "+Qr(a)+" found")];if(2!==a.length)return[new ce(s,a,"array length 2 expected, length "+a.length+" found")];if(c){if("object"!==Qr(a[0]))return[new ce(s,a,"object expected, "+Qr(a[0])+" found")];if(void 0===a[0].zoom)return[new ce(s,a,"object stop key must have zoom")];if(void 0===a[0].value)return[new ce(s,a,"object stop key must have value")];if(r&&r>he(a[0].zoom))return[new ce(s,a[0].zoom,"stop zoom values must appear in ascending order")];he(a[0].zoom)!==r&&(r=he(a[0].zoom),n=void 0,o={}),e=e.concat(xi({key:s+"[0]",value:a[0],valueSpec:{zoom:{}},style:t.style,styleSpec:t.styleSpec,objectElementValidators:{zoom:_i,value:d}}))}else e=e.concat(d({key:s+"[0]",value:a[0],valueSpec:{},style:t.style,styleSpec:t.styleSpec},a));return ui(de(a[1]))?e.concat([new ce(s+"[1]",a[1],"expressions are not allowed in function stops.")]):e.concat(Qi({key:s+"[1]",value:a[1],valueSpec:i,style:t.style,styleSpec:t.styleSpec}))}function d(t,r){var s=Qr(t.value),l=he(t.value),c=null!==t.value?t.value:r;if(e){if(s!==e)return[new ce(t.key,c,s+" stop domain type must match previous stop domain type "+e)]}else e=s;if("number"!==s&&"string"!==s&&"boolean"!==s)return[new ce(t.key,c,"stop domain value must be a number, string, or boolean")];if("number"!==s&&"categorical"!==a){var u="number expected, "+s+" found";return Kr(i)&&void 0===a&&(u+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new ce(t.key,c,u)]}return"categorical"!==a||"number"!==s||isFinite(l)&&Math.floor(l)===l?"categorical"!==a&&"number"===s&&void 0!==n&&l=2&&"$id"!==t[1]&&"$type"!==t[1];case"in":return t.length>=3&&("string"!==typeof t[1]||Array.isArray(t[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return 3!==t.length||Array.isArray(t[1])||Array.isArray(t[2]);case"any":case"all":for(var e=0,n=t.slice(1);ee?1:0}function Oi(t){if(!Array.isArray(t))return!1;if("within"===t[0])return!0;for(var e=1;e"===e||"<="===e||">="===e?Di(t[1],t[2],e):"any"===e?Ri(t.slice(1)):"all"===e?["all"].concat(t.slice(1).map(Ii)):"none"===e?["all"].concat(t.slice(1).map(Ii).map(ji)):"in"===e?zi(t[1],t.slice(2)):"!in"===e?ji(zi(t[1],t.slice(2))):"has"===e?Ni(t[1]):"!has"===e?ji(Ni(t[1])):"within"!==e||t}function Di(t,e,n){switch(t){case"$type":return["filter-type-"+n,e];case"$id":return["filter-id-"+n,e];default:return["filter-"+n,t,e]}}function Ri(t){return["any"].concat(t.map(Ii))}function zi(t,e){if(0===e.length)return!1;switch(t){case"$type":return["filter-type-in",["literal",e]];case"$id":return["filter-id-in",["literal",e]];default:return e.length>200&&!e.some((function(t){return typeof t!==typeof e[0]}))?["filter-in-large",t,["literal",e.sort(Li)]]:["filter-in-small",t,["literal",e]]}}function Ni(t){switch(t){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",t]}}function ji(t){return["!",t]}function Fi(t){return Ei(de(t.value))?Ti(fe({},t,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Bi(t)}function Bi(t){var e=t.value,n=t.key;if("array"!==Qr(e))return[new ce(n,e,"array expected, "+Qr(e)+" found")];var r,i=t.styleSpec,a=[];if(e.length<1)return[new ce(n,e,"filter array must have at least 1 element")];switch(a=a.concat(Si({key:n+"[0]",value:e[0],valueSpec:i.filter_operator,style:t.style,styleSpec:t.styleSpec})),he(e[0])){case"<":case"<=":case">":case">=":e.length>=2&&"$type"===he(e[1])&&a.push(new ce(n,e,'"$type" cannot be use with operator "'+e[0]+'"'));case"==":case"!=":3!==e.length&&a.push(new ce(n,e,'filter array for operator "'+e[0]+'" must have 3 elements'));case"in":case"!in":e.length>=2&&"string"!==(r=Qr(e[1]))&&a.push(new ce(n+"[1]",e[1],"string expected, "+r+" found"));for(var o=2;o=u[d+0]&&r>=u[d+1])?(o[h]=!0,a.push(c[h])):o[h]=!1}}},fa.prototype._forEachCell=function(t,e,n,r,i,a,o,s){for(var l=this._convertToCellCoord(t),c=this._convertToCellCoord(e),u=this._convertToCellCoord(n),f=this._convertToCellCoord(r),h=l;h<=u;h++)for(var d=c;d<=f;d++){var p=this.d*d+h;if((!s||s(this._convertFromCellCoord(h),this._convertFromCellCoord(d),this._convertFromCellCoord(h+1),this._convertFromCellCoord(d+1)))&&i.call(this,t,e,n,r,p,a,o,s))return}},fa.prototype._convertFromCellCoord=function(t){return(t-this.padding)/this.scale},fa.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},fa.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,e=ua+this.cells.length+1+1,n=0,r=0;r=0)){var f=t[u];c[u]=pa[l].shallow.indexOf(u)>=0?f:ba(f,e)}t instanceof Error&&(c.message=t.message)}if(c.$name)throw new Error("$name property is reserved for worker serialization logic.");return"Object"!==l&&(c.$name=l),c}throw new Error("can't serialize object of type "+typeof t)}function xa(t){if(null===t||void 0===t||"boolean"===typeof t||"number"===typeof t||"string"===typeof t||t instanceof Boolean||t instanceof Number||t instanceof String||t instanceof Date||t instanceof RegExp||ma(t)||ya(t)||ArrayBuffer.isView(t)||t instanceof ha)return t;if(Array.isArray(t))return t.map(xa);if("object"===typeof t){var e=t.$name||"Object",n=pa[e].klass;if(!n)throw new Error("can't deserialize unregistered class "+e);if(n.deserialize)return n.deserialize(t);for(var r=Object.create(n.prototype),i=0,a=Object.keys(t);i=0?s:xa(s)}}return r}throw new Error("can't deserialize object of type "+typeof t)}var wa=function(){this.first=!0};wa.prototype.update=function(t,e){var n=Math.floor(t);return this.first?(this.first=!1,this.lastIntegerZoom=n,this.lastIntegerZoomTime=0,this.lastZoom=t,this.lastFloorZoom=n,!0):(this.lastFloorZoom>n?(this.lastIntegerZoom=n+1,this.lastIntegerZoomTime=e):this.lastFloorZoom=128&&t<=255},Arabic:function(t){return t>=1536&&t<=1791},"Arabic Supplement":function(t){return t>=1872&&t<=1919},"Arabic Extended-A":function(t){return t>=2208&&t<=2303},"Hangul Jamo":function(t){return t>=4352&&t<=4607},"Unified Canadian Aboriginal Syllabics":function(t){return t>=5120&&t<=5759},Khmer:function(t){return t>=6016&&t<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(t){return t>=6320&&t<=6399},"General Punctuation":function(t){return t>=8192&&t<=8303},"Letterlike Symbols":function(t){return t>=8448&&t<=8527},"Number Forms":function(t){return t>=8528&&t<=8591},"Miscellaneous Technical":function(t){return t>=8960&&t<=9215},"Control Pictures":function(t){return t>=9216&&t<=9279},"Optical Character Recognition":function(t){return t>=9280&&t<=9311},"Enclosed Alphanumerics":function(t){return t>=9312&&t<=9471},"Geometric Shapes":function(t){return t>=9632&&t<=9727},"Miscellaneous Symbols":function(t){return t>=9728&&t<=9983},"Miscellaneous Symbols and Arrows":function(t){return t>=11008&&t<=11263},"CJK Radicals Supplement":function(t){return t>=11904&&t<=12031},"Kangxi Radicals":function(t){return t>=12032&&t<=12255},"Ideographic Description Characters":function(t){return t>=12272&&t<=12287},"CJK Symbols and Punctuation":function(t){return t>=12288&&t<=12351},Hiragana:function(t){return t>=12352&&t<=12447},Katakana:function(t){return t>=12448&&t<=12543},Bopomofo:function(t){return t>=12544&&t<=12591},"Hangul Compatibility Jamo":function(t){return t>=12592&&t<=12687},Kanbun:function(t){return t>=12688&&t<=12703},"Bopomofo Extended":function(t){return t>=12704&&t<=12735},"CJK Strokes":function(t){return t>=12736&&t<=12783},"Katakana Phonetic Extensions":function(t){return t>=12784&&t<=12799},"Enclosed CJK Letters and Months":function(t){return t>=12800&&t<=13055},"CJK Compatibility":function(t){return t>=13056&&t<=13311},"CJK Unified Ideographs Extension A":function(t){return t>=13312&&t<=19903},"Yijing Hexagram Symbols":function(t){return t>=19904&&t<=19967},"CJK Unified Ideographs":function(t){return t>=19968&&t<=40959},"Yi Syllables":function(t){return t>=40960&&t<=42127},"Yi Radicals":function(t){return t>=42128&&t<=42191},"Hangul Jamo Extended-A":function(t){return t>=43360&&t<=43391},"Hangul Syllables":function(t){return t>=44032&&t<=55215},"Hangul Jamo Extended-B":function(t){return t>=55216&&t<=55295},"Private Use Area":function(t){return t>=57344&&t<=63743},"CJK Compatibility Ideographs":function(t){return t>=63744&&t<=64255},"Arabic Presentation Forms-A":function(t){return t>=64336&&t<=65023},"Vertical Forms":function(t){return t>=65040&&t<=65055},"CJK Compatibility Forms":function(t){return t>=65072&&t<=65103},"Small Form Variants":function(t){return t>=65104&&t<=65135},"Arabic Presentation Forms-B":function(t){return t>=65136&&t<=65279},"Halfwidth and Fullwidth Forms":function(t){return t>=65280&&t<=65519}};function ka(t){for(var e=0,n=t;e=65097&&t<=65103)||!!_a["CJK Compatibility Ideographs"](t)||!!_a["CJK Compatibility"](t)||!!_a["CJK Radicals Supplement"](t)||!!_a["CJK Strokes"](t)||!(!_a["CJK Symbols and Punctuation"](t)||t>=12296&&t<=12305||t>=12308&&t<=12319||12336===t)||!!_a["CJK Unified Ideographs Extension A"](t)||!!_a["CJK Unified Ideographs"](t)||!!_a["Enclosed CJK Letters and Months"](t)||!!_a["Hangul Compatibility Jamo"](t)||!!_a["Hangul Jamo Extended-A"](t)||!!_a["Hangul Jamo Extended-B"](t)||!!_a["Hangul Jamo"](t)||!!_a["Hangul Syllables"](t)||!!_a.Hiragana(t)||!!_a["Ideographic Description Characters"](t)||!!_a.Kanbun(t)||!!_a["Kangxi Radicals"](t)||!!_a["Katakana Phonetic Extensions"](t)||!(!_a.Katakana(t)||12540===t)||!(!_a["Halfwidth and Fullwidth Forms"](t)||65288===t||65289===t||65293===t||t>=65306&&t<=65310||65339===t||65341===t||65343===t||t>=65371&&t<=65503||65507===t||t>=65512&&t<=65519)||!(!_a["Small Form Variants"](t)||t>=65112&&t<=65118||t>=65123&&t<=65126)||!!_a["Unified Canadian Aboriginal Syllabics"](t)||!!_a["Unified Canadian Aboriginal Syllabics Extended"](t)||!!_a["Vertical Forms"](t)||!!_a["Yijing Hexagram Symbols"](t)||!!_a["Yi Syllables"](t)||!!_a["Yi Radicals"](t))}function Ea(t){return!(!_a["Latin-1 Supplement"](t)||167!==t&&169!==t&&174!==t&&177!==t&&188!==t&&189!==t&&190!==t&&215!==t&&247!==t)||!(!_a["General Punctuation"](t)||8214!==t&&8224!==t&&8225!==t&&8240!==t&&8241!==t&&8251!==t&&8252!==t&&8258!==t&&8263!==t&&8264!==t&&8265!==t&&8273!==t)||!!_a["Letterlike Symbols"](t)||!!_a["Number Forms"](t)||!(!_a["Miscellaneous Technical"](t)||!(t>=8960&&t<=8967||t>=8972&&t<=8991||t>=8996&&t<=9e3||9003===t||t>=9085&&t<=9114||t>=9150&&t<=9165||9167===t||t>=9169&&t<=9179||t>=9186&&t<=9215))||!(!_a["Control Pictures"](t)||9251===t)||!!_a["Optical Character Recognition"](t)||!!_a["Enclosed Alphanumerics"](t)||!!_a["Geometric Shapes"](t)||!(!_a["Miscellaneous Symbols"](t)||t>=9754&&t<=9759)||!(!_a["Miscellaneous Symbols and Arrows"](t)||!(t>=11026&&t<=11055||t>=11088&&t<=11097||t>=11192&&t<=11243))||!!_a["CJK Symbols and Punctuation"](t)||!!_a.Katakana(t)||!!_a["Private Use Area"](t)||!!_a["CJK Compatibility Forms"](t)||!!_a["Small Form Variants"](t)||!!_a["Halfwidth and Fullwidth Forms"](t)||8734===t||8756===t||8757===t||t>=9984&&t<=10087||t>=10102&&t<=10131||65532===t||65533===t}function Ca(t){return!(Sa(t)||Ea(t))}function Pa(t){return _a.Arabic(t)||_a["Arabic Supplement"](t)||_a["Arabic Extended-A"](t)||_a["Arabic Presentation Forms-A"](t)||_a["Arabic Presentation Forms-B"](t)}function La(t){return t>=1424&&t<=2303||_a["Arabic Presentation Forms-A"](t)||_a["Arabic Presentation Forms-B"](t)}function Oa(t,e){return!(!e&&La(t))&&!(t>=2304&&t<=3583||t>=3840&&t<=4255||_a.Khmer(t))}function Ia(t){for(var e=0,n=t;e-1&&(Na=Ra.error),za&&za(t)};function Ba(){Ua.fire(new ae("pluginStateChange",{pluginStatus:Na,pluginURL:ja}))}var Ua=new se,Ha=function(){return Na},Va=function(t){return t({pluginStatus:Na,pluginURL:ja}),Ua.on("pluginStateChange",t),t},qa=function(t,e,n){if(void 0===n&&(n=!1),Na===Ra.deferred||Na===Ra.loading||Na===Ra.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");ja=Y.resolveURL(t),Na=Ra.deferred,za=e,Ba(),n||Ga()},Ga=function(){if(Na!==Ra.deferred||!ja)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");Na=Ra.loading,Ba(),ja&&Yt({url:ja},(function(t){t?Fa(t):(Na=Ra.loaded,Ba())}))},Wa={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return Na===Ra.loaded||null!=Wa.applyArabicShaping},isLoading:function(){return Na===Ra.loading},setState:function(t){Na=t.pluginStatus,ja=t.pluginURL},isParsed:function(){return null!=Wa.applyArabicShaping&&null!=Wa.processBidirectionalText&&null!=Wa.processStyledBidirectionalText},getPluginURL:function(){return ja}},Ya=function(){Wa.isLoading()||Wa.isLoaded()||"deferred"!==Ha()||Ga()},$a=function(t,e){this.zoom=t,e?(this.now=e.now,this.fadeDuration=e.fadeDuration,this.zoomHistory=e.zoomHistory,this.transition=e.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new wa,this.transition={})};$a.prototype.isSupportedScript=function(t){return Da(t,Wa.isLoaded())},$a.prototype.crossFadingFactor=function(){return 0===this.fadeDuration?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},$a.prototype.getCrossfadeParameters=function(){var t=this.zoom,e=t-Math.floor(t),n=this.crossFadingFactor();return t>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:e+(1-e)*n}:{fromScale:.5,toScale:1,t:1-(1-n)*e}};var Xa=function(t,e){this.property=t,this.value=e,this.expression=vi(void 0===e?t.specification.default:e,t.specification)};Xa.prototype.isDataDriven=function(){return"source"===this.expression.kind||"composite"===this.expression.kind},Xa.prototype.possiblyEvaluate=function(t,e,n){return this.property.possiblyEvaluate(this,t,e,n)};var Ka=function(t){this.property=t,this.value=new Xa(t,void 0)};Ka.prototype.transitioned=function(t,e){return new Ja(this.property,this.value,e,v({},t.transition,this.transition),t.now)},Ka.prototype.untransitioned=function(){return new Ja(this.property,this.value,null,{},0)};var Za=function(t){this._properties=t,this._values=Object.create(t.defaultTransitionablePropertyValues)};Za.prototype.getValue=function(t){return A(this._values[t].value.value)},Za.prototype.setValue=function(t,e){this._values.hasOwnProperty(t)||(this._values[t]=new Ka(this._values[t].property)),this._values[t].value=new Xa(this._values[t].property,null===e?void 0:A(e))},Za.prototype.getTransition=function(t){return A(this._values[t].transition)},Za.prototype.setTransition=function(t,e){this._values.hasOwnProperty(t)||(this._values[t]=new Ka(this._values[t].property)),this._values[t].transition=A(e)||void 0},Za.prototype.serialize=function(){for(var t={},e=0,n=Object.keys(this._values);ethis.end)return this.prior=null,i;if(this.value.isDataDriven())return this.prior=null,i;if(rr.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:n,to:e}},e.prototype.interpolate=function(t){return t},e}(io),oo=function(t){this.specification=t};oo.prototype.possiblyEvaluate=function(t,e,n,r){if(void 0!==t.value){if("constant"===t.expression.kind){var i=t.expression.evaluate(e,null,{},n,r);return this._calculate(i,i,i,e)}return this._calculate(t.expression.evaluate(new $a(Math.floor(e.zoom-1),e)),t.expression.evaluate(new $a(Math.floor(e.zoom),e)),t.expression.evaluate(new $a(Math.floor(e.zoom+1),e)),e)}},oo.prototype._calculate=function(t,e,n,r){return r.zoom>r.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:n,to:e}},oo.prototype.interpolate=function(t){return t};var so=function(t){this.specification=t};so.prototype.possiblyEvaluate=function(t,e,n,r){return!!t.expression.evaluate(e,null,{},n,r)},so.prototype.interpolate=function(){return!1};var lo=function(t){for(var e in this.properties=t,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[],t){var n=t[e];n.specification.overridable&&this.overridableProperties.push(e);var r=this.defaultPropertyValues[e]=new Xa(n,void 0),i=this.defaultTransitionablePropertyValues[e]=new Ka(n);this.defaultTransitioningPropertyValues[e]=i.untransitioned(),this.defaultPossiblyEvaluatedValues[e]=r.possiblyEvaluate({})}};ga("DataDrivenProperty",io),ga("DataConstantProperty",ro),ga("CrossFadedDataDrivenProperty",ao),ga("CrossFadedProperty",oo),ga("ColorRampProperty",so);var co="-transition",uo=function(t){function e(e,n){if(t.call(this),this.id=e.id,this.type=e.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},"custom"!==e.type&&(this.metadata=e.metadata,this.minzoom=e.minzoom,this.maxzoom=e.maxzoom,"background"!==e.type&&(this.source=e.source,this.sourceLayer=e["source-layer"],this.filter=e.filter),n.layout&&(this._unevaluatedLayout=new to(n.layout)),n.paint)){for(var r in this._transitionablePaint=new Za(n.paint),e.paint)this.setPaintProperty(r,e.paint[r],{validate:!1});for(var i in e.layout)this.setLayoutProperty(i,e.layout[i],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new no(n.paint)}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},e.prototype.getLayoutProperty=function(t){return"visibility"===t?this.visibility:this._unevaluatedLayout.getValue(t)},e.prototype.setLayoutProperty=function(t,e,n){if(void 0===n&&(n={}),null!==e&&void 0!==e){var r="layers."+this.id+".layout."+t;if(this._validate(sa,r,t,e,n))return}"visibility"!==t?this._unevaluatedLayout.setValue(t,e):this.visibility=e},e.prototype.getPaintProperty=function(t){return k(t,co)?this._transitionablePaint.getTransition(t.slice(0,-co.length)):this._transitionablePaint.getValue(t)},e.prototype.setPaintProperty=function(t,e,n){if(void 0===n&&(n={}),null!==e&&void 0!==e){var r="layers."+this.id+".paint."+t;if(this._validate(oa,r,t,e,n))return!1}if(k(t,co))return this._transitionablePaint.setTransition(t.slice(0,-co.length),e||void 0),!1;var i=this._transitionablePaint._values[t],a="cross-faded-data-driven"===i.property.specification["property-type"],o=i.value.isDataDriven(),s=i.value;this._transitionablePaint.setValue(t,e),this._handleSpecialPaintPropertyUpdate(t);var l=this._transitionablePaint._values[t].value;return l.isDataDriven()||o||a||this._handleOverridablePaintPropertyUpdate(t,s,l)},e.prototype._handleSpecialPaintPropertyUpdate=function(t){},e.prototype._handleOverridablePaintPropertyUpdate=function(t,e,n){return!1},e.prototype.isHidden=function(t){return!!(this.minzoom&&t=this.maxzoom)||"none"===this.visibility},e.prototype.updateTransitions=function(t){this._transitioningPaint=this._transitionablePaint.transitioned(t,this._transitioningPaint)},e.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},e.prototype.recalculate=function(t,e){t.getCrossfadeParameters&&(this._crossfadeParameters=t.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(t,void 0,e)),this.paint=this._transitioningPaint.possiblyEvaluate(t,void 0,e)},e.prototype.serialize=function(){var t={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&&(t.layout=t.layout||{},t.layout.visibility=this.visibility),M(t,(function(t,e){return void 0!==t&&!("layout"===e&&!Object.keys(t).length)&&!("paint"===e&&!Object.keys(t).length)}))},e.prototype._validate=function(t,e,n,r,i){return void 0===i&&(i={}),(!i||!1!==i.validate)&&la(this,t.call(ia,{key:e,layerType:this.type,objectKey:n,value:r,styleSpec:le,style:{glyphs:!0,sprite:!0}}))},e.prototype.is3D=function(){return!1},e.prototype.isTileClipped=function(){return!1},e.prototype.hasOffscreenPass=function(){return!1},e.prototype.resize=function(){},e.prototype.isStateDependent=function(){for(var t in this.paint._values){var e=this.paint.get(t);if(e instanceof eo&&Kr(e.property.specification)&&("source"===e.value.kind||"composite"===e.value.kind)&&e.value.isStateDependent)return!0}return!1},e}(se),fo={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},ho=function(t,e){this._structArray=t,this._pos1=e*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},po=128,go=5,vo=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};function mo(t,e){void 0===e&&(e=1);var n=0,r=0;return{members:t.map((function(t){var i=yo(t.type),a=n=bo(n,Math.max(e,i)),o=t.components||1;return r=Math.max(r,i),n+=i*o,{name:t.name,type:t.type,components:o,offset:a}})),size:bo(n,Math.max(r,e)),alignment:e}}function yo(t){return fo[t].BYTES_PER_ELEMENT}function bo(t,e){return Math.ceil(t/e)*e}vo.serialize=function(t,e){return t._trim(),e&&(t.isTransferred=!0,e.push(t.arrayBuffer)),{length:t.length,arrayBuffer:t.arrayBuffer}},vo.deserialize=function(t){var e=Object.create(this.prototype);return e.arrayBuffer=t.arrayBuffer,e.length=t.length,e.capacity=t.arrayBuffer.byteLength/e.bytesPerElement,e._refreshViews(),e},vo.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},vo.prototype.clear=function(){this.length=0},vo.prototype.resize=function(t){this.reserve(t),this.length=t},vo.prototype.reserve=function(t){if(t>this.capacity){this.capacity=Math.max(t,Math.floor(this.capacity*go),po),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var e=this.uint8;this._refreshViews(),e&&this.uint8.set(e)}},vo.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};var xo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var n=this.length;return this.resize(n+1),this.emplace(n,t,e)},e.prototype.emplace=function(t,e,n){var r=2*t;return this.int16[r+0]=e,this.int16[r+1]=n,t},e}(vo);xo.prototype.bytesPerElement=4,ga("StructArrayLayout2i4",xo);var wo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r){var i=this.length;return this.resize(i+1),this.emplace(i,t,e,n,r)},e.prototype.emplace=function(t,e,n,r,i){var a=4*t;return this.int16[a+0]=e,this.int16[a+1]=n,this.int16[a+2]=r,this.int16[a+3]=i,t},e}(vo);wo.prototype.bytesPerElement=8,ga("StructArrayLayout4i8",wo);var _o=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,n,r,i,a)},e.prototype.emplace=function(t,e,n,r,i,a,o){var s=6*t;return this.int16[s+0]=e,this.int16[s+1]=n,this.int16[s+2]=r,this.int16[s+3]=i,this.int16[s+4]=a,this.int16[s+5]=o,t},e}(vo);_o.prototype.bytesPerElement=12,ga("StructArrayLayout2i4i12",_o);var ko=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,n,r,i,a)},e.prototype.emplace=function(t,e,n,r,i,a,o){var s=4*t,l=8*t;return this.int16[s+0]=e,this.int16[s+1]=n,this.uint8[l+4]=r,this.uint8[l+5]=i,this.uint8[l+6]=a,this.uint8[l+7]=o,t},e}(vo);ko.prototype.bytesPerElement=8,ga("StructArrayLayout2i4ub8",ko);var To=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r,i,a,o,s,l,c){var u=this.length;return this.resize(u+1),this.emplace(u,t,e,n,r,i,a,o,s,l,c)},e.prototype.emplace=function(t,e,n,r,i,a,o,s,l,c,u){var f=9*t,h=18*t;return this.uint16[f+0]=e,this.uint16[f+1]=n,this.uint16[f+2]=r,this.uint16[f+3]=i,this.uint16[f+4]=a,this.uint16[f+5]=o,this.uint16[f+6]=s,this.uint16[f+7]=l,this.uint8[h+16]=c,this.uint8[h+17]=u,t},e}(vo);To.prototype.bytesPerElement=18,ga("StructArrayLayout8ui2ub18",To);var Mo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r,i,a,o,s,l,c,u,f){var h=this.length;return this.resize(h+1),this.emplace(h,t,e,n,r,i,a,o,s,l,c,u,f)},e.prototype.emplace=function(t,e,n,r,i,a,o,s,l,c,u,f,h){var d=12*t;return this.int16[d+0]=e,this.int16[d+1]=n,this.int16[d+2]=r,this.int16[d+3]=i,this.uint16[d+4]=a,this.uint16[d+5]=o,this.uint16[d+6]=s,this.uint16[d+7]=l,this.int16[d+8]=c,this.int16[d+9]=u,this.int16[d+10]=f,this.int16[d+11]=h,t},e}(vo);Mo.prototype.bytesPerElement=24,ga("StructArrayLayout4i4ui4i24",Mo);var Ao=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n){var r=this.length;return this.resize(r+1),this.emplace(r,t,e,n)},e.prototype.emplace=function(t,e,n,r){var i=3*t;return this.float32[i+0]=e,this.float32[i+1]=n,this.float32[i+2]=r,t},e}(vo);Ao.prototype.bytesPerElement=12,ga("StructArrayLayout3f12",Ao);var So=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){var n=1*t;return this.uint32[n+0]=e,t},e}(vo);So.prototype.bytesPerElement=4,ga("StructArrayLayout1ul4",So);var Eo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.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)},e.prototype.emplaceBack=function(t,e,n,r,i,a,o,s,l){var c=this.length;return this.resize(c+1),this.emplace(c,t,e,n,r,i,a,o,s,l)},e.prototype.emplace=function(t,e,n,r,i,a,o,s,l,c){var u=10*t,f=5*t;return this.int16[u+0]=e,this.int16[u+1]=n,this.int16[u+2]=r,this.int16[u+3]=i,this.int16[u+4]=a,this.int16[u+5]=o,this.uint32[f+3]=s,this.uint16[u+8]=l,this.uint16[u+9]=c,t},e}(vo);Eo.prototype.bytesPerElement=20,ga("StructArrayLayout6i1ul2ui20",Eo);var Co=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,n,r,i,a)},e.prototype.emplace=function(t,e,n,r,i,a,o){var s=6*t;return this.int16[s+0]=e,this.int16[s+1]=n,this.int16[s+2]=r,this.int16[s+3]=i,this.int16[s+4]=a,this.int16[s+5]=o,t},e}(vo);Co.prototype.bytesPerElement=12,ga("StructArrayLayout2i2i2i12",Co);var Po=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r,i){var a=this.length;return this.resize(a+1),this.emplace(a,t,e,n,r,i)},e.prototype.emplace=function(t,e,n,r,i,a){var o=4*t,s=8*t;return this.float32[o+0]=e,this.float32[o+1]=n,this.float32[o+2]=r,this.int16[s+6]=i,this.int16[s+7]=a,t},e}(vo);Po.prototype.bytesPerElement=16,ga("StructArrayLayout2f1f2i16",Po);var Lo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r){var i=this.length;return this.resize(i+1),this.emplace(i,t,e,n,r)},e.prototype.emplace=function(t,e,n,r,i){var a=12*t,o=3*t;return this.uint8[a+0]=e,this.uint8[a+1]=n,this.float32[o+1]=r,this.float32[o+2]=i,t},e}(vo);Lo.prototype.bytesPerElement=12,ga("StructArrayLayout2ub2f12",Lo);var Oo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n){var r=this.length;return this.resize(r+1),this.emplace(r,t,e,n)},e.prototype.emplace=function(t,e,n,r){var i=3*t;return this.uint16[i+0]=e,this.uint16[i+1]=n,this.uint16[i+2]=r,t},e}(vo);Oo.prototype.bytesPerElement=6,ga("StructArrayLayout3ui6",Oo);var Io=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.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)},e.prototype.emplaceBack=function(t,e,n,r,i,a,o,s,l,c,u,f,h,d,p,g,v){var m=this.length;return this.resize(m+1),this.emplace(m,t,e,n,r,i,a,o,s,l,c,u,f,h,d,p,g,v)},e.prototype.emplace=function(t,e,n,r,i,a,o,s,l,c,u,f,h,d,p,g,v,m){var y=24*t,b=12*t,x=48*t;return this.int16[y+0]=e,this.int16[y+1]=n,this.uint16[y+2]=r,this.uint16[y+3]=i,this.uint32[b+2]=a,this.uint32[b+3]=o,this.uint32[b+4]=s,this.uint16[y+10]=l,this.uint16[y+11]=c,this.uint16[y+12]=u,this.float32[b+7]=f,this.float32[b+8]=h,this.uint8[x+36]=d,this.uint8[x+37]=p,this.uint8[x+38]=g,this.uint32[b+10]=v,this.int16[y+22]=m,t},e}(vo);Io.prototype.bytesPerElement=48,ga("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Io);var Do=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.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)},e.prototype.emplaceBack=function(t,e,n,r,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S){var E=this.length;return this.resize(E+1),this.emplace(E,t,e,n,r,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S)},e.prototype.emplace=function(t,e,n,r,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S,E){var C=34*t,P=17*t;return this.int16[C+0]=e,this.int16[C+1]=n,this.int16[C+2]=r,this.int16[C+3]=i,this.int16[C+4]=a,this.int16[C+5]=o,this.int16[C+6]=s,this.int16[C+7]=l,this.uint16[C+8]=c,this.uint16[C+9]=u,this.uint16[C+10]=f,this.uint16[C+11]=h,this.uint16[C+12]=d,this.uint16[C+13]=p,this.uint16[C+14]=g,this.uint16[C+15]=v,this.uint16[C+16]=m,this.uint16[C+17]=y,this.uint16[C+18]=b,this.uint16[C+19]=x,this.uint16[C+20]=w,this.uint16[C+21]=_,this.uint16[C+22]=k,this.uint32[P+12]=T,this.float32[P+13]=M,this.float32[P+14]=A,this.float32[P+15]=S,this.float32[P+16]=E,t},e}(vo);Do.prototype.bytesPerElement=68,ga("StructArrayLayout8i15ui1ul4f68",Do);var Ro=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){var n=1*t;return this.float32[n+0]=e,t},e}(vo);Ro.prototype.bytesPerElement=4,ga("StructArrayLayout1f4",Ro);var zo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n){var r=this.length;return this.resize(r+1),this.emplace(r,t,e,n)},e.prototype.emplace=function(t,e,n,r){var i=3*t;return this.int16[i+0]=e,this.int16[i+1]=n,this.int16[i+2]=r,t},e}(vo);zo.prototype.bytesPerElement=6,ga("StructArrayLayout3i6",zo);var No=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n){var r=this.length;return this.resize(r+1),this.emplace(r,t,e,n)},e.prototype.emplace=function(t,e,n,r){var i=2*t,a=4*t;return this.uint32[i+0]=e,this.uint16[a+2]=n,this.uint16[a+3]=r,t},e}(vo);No.prototype.bytesPerElement=8,ga("StructArrayLayout1ul2ui8",No);var jo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var n=this.length;return this.resize(n+1),this.emplace(n,t,e)},e.prototype.emplace=function(t,e,n){var r=2*t;return this.uint16[r+0]=e,this.uint16[r+1]=n,t},e}(vo);jo.prototype.bytesPerElement=4,ga("StructArrayLayout2ui4",jo);var Fo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){var n=1*t;return this.uint16[n+0]=e,t},e}(vo);Fo.prototype.bytesPerElement=2,ga("StructArrayLayout1ui2",Fo);var Bo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var n=this.length;return this.resize(n+1),this.emplace(n,t,e)},e.prototype.emplace=function(t,e,n){var r=2*t;return this.float32[r+0]=e,this.float32[r+1]=n,t},e}(vo);Bo.prototype.bytesPerElement=8,ga("StructArrayLayout2f8",Bo);var Uo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r){var i=this.length;return this.resize(i+1),this.emplace(i,t,e,n,r)},e.prototype.emplace=function(t,e,n,r,i){var a=4*t;return this.float32[a+0]=e,this.float32[a+1]=n,this.float32[a+2]=r,this.float32[a+3]=i,t},e}(vo);Uo.prototype.bytesPerElement=16,ga("StructArrayLayout4f16",Uo);var Ho=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var n={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 n.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},n.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},n.x1.get=function(){return this._structArray.int16[this._pos2+2]},n.y1.get=function(){return this._structArray.int16[this._pos2+3]},n.x2.get=function(){return this._structArray.int16[this._pos2+4]},n.y2.get=function(){return this._structArray.int16[this._pos2+5]},n.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},n.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},n.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},n.anchorPoint.get=function(){return new a(this.anchorPointX,this.anchorPointY)},Object.defineProperties(e.prototype,n),e}(ho);Ho.prototype.size=20;var Vo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.get=function(t){return new Ho(this,t)},e}(Eo);ga("CollisionBoxArray",Vo);var qo=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var n={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 n.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},n.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},n.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},n.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},n.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},n.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},n.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},n.segment.get=function(){return this._structArray.uint16[this._pos2+10]},n.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},n.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},n.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},n.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},n.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},n.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},n.placedOrientation.set=function(t){this._structArray.uint8[this._pos1+37]=t},n.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},n.hidden.set=function(t){this._structArray.uint8[this._pos1+38]=t},n.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},n.crossTileID.set=function(t){this._structArray.uint32[this._pos4+10]=t},n.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(e.prototype,n),e}(ho);qo.prototype.size=48;var Go=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.get=function(t){return new qo(this,t)},e}(Io);ga("PlacedSymbolArray",Go);var Wo=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var n={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 n.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},n.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},n.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},n.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},n.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},n.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},n.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},n.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},n.key.get=function(){return this._structArray.uint16[this._pos2+8]},n.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},n.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},n.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},n.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},n.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},n.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},n.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},n.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},n.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},n.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},n.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},n.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},n.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},n.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},n.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},n.crossTileID.set=function(t){this._structArray.uint32[this._pos4+12]=t},n.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},n.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},n.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},n.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(e.prototype,n),e}(ho);Wo.prototype.size=68;var Yo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.get=function(t){return new Wo(this,t)},e}(Do);ga("SymbolInstanceArray",Yo);var $o=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getoffsetX=function(t){return this.float32[1*t+0]},e}(Ro);ga("GlyphOffsetArray",$o);var Xo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getx=function(t){return this.int16[3*t+0]},e.prototype.gety=function(t){return this.int16[3*t+1]},e.prototype.gettileUnitDistanceFromAnchor=function(t){return this.int16[3*t+2]},e}(zo);ga("SymbolLineVertexArray",Xo);var Ko=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var n={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return n.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},n.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},n.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(e.prototype,n),e}(ho);Ko.prototype.size=8;var Zo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.get=function(t){return new Ko(this,t)},e}(No);ga("FeatureIndexArray",Zo);var Jo=mo([{name:"a_pos",components:2,type:"Int16"}],4).members,Qo=function(t){void 0===t&&(t=[]),this.segments=t};function ts(t,e){return 256*(t=f(Math.floor(t),0,255))+(e=f(Math.floor(e),0,255))}Qo.prototype.prepareSegment=function(t,e,n,r){var i=this.segments[this.segments.length-1];return t>Qo.MAX_VERTEX_ARRAY_LENGTH&&C("Max vertices per segment is "+Qo.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+t),(!i||i.vertexLength+t>Qo.MAX_VERTEX_ARRAY_LENGTH||i.sortKey!==r)&&(i={vertexOffset:e.length,primitiveOffset:n.length,vertexLength:0,primitiveLength:0},void 0!==r&&(i.sortKey=r),this.segments.push(i)),i},Qo.prototype.get=function(){return this.segments},Qo.prototype.destroy=function(){for(var t=0,e=this.segments;t>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)*s&65535)<<16)&4294967295)<<13|i>>>19))+((5*(i>>>16)&65535)<<16)&4294967295))+((58964+(a>>>16)&65535)<<16);switch(l=0,n){case 3:l^=(255&t.charCodeAt(c+2))<<16;case 2:l^=(255&t.charCodeAt(c+1))<<8;case 1:i^=l=(65535&(l=(l=(65535&(l^=255&t.charCodeAt(c)))*o+(((l>>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)*s&65535)<<16)&4294967295}return i^=t.length,i=2246822507*(65535&(i^=i>>>16))+((2246822507*(i>>>16)&65535)<<16)&4294967295,i=3266489909*(65535&(i^=i>>>13))+((3266489909*(i>>>16)&65535)<<16)&4294967295,(i^=i>>>16)>>>0}t.exports=e})),rs=e((function(t){function e(t,e){for(var n,r=t.length,i=e^r,a=0;r>=4;)n=1540483477*(65535&(n=255&t.charCodeAt(a)|(255&t.charCodeAt(++a))<<8|(255&t.charCodeAt(++a))<<16|(255&t.charCodeAt(++a))<<24))+((1540483477*(n>>>16)&65535)<<16),i=1540483477*(65535&i)+((1540483477*(i>>>16)&65535)<<16)^(n=1540483477*(65535&(n^=n>>>24))+((1540483477*(n>>>16)&65535)<<16)),r-=4,++a;switch(r){case 3:i^=(255&t.charCodeAt(a+2))<<16;case 2:i^=(255&t.charCodeAt(a+1))<<8;case 1:i=1540483477*(65535&(i^=255&t.charCodeAt(a)))+((1540483477*(i>>>16)&65535)<<16)}return i=1540483477*(65535&(i^=i>>>13))+((1540483477*(i>>>16)&65535)<<16),(i^=i>>>15)>>>0}t.exports=e})),is=ns,as=ns,os=rs;is.murmur3=as,is.murmur2=os;var ss=function(){this.ids=[],this.positions=[],this.indexed=!1};ss.prototype.add=function(t,e,n,r){this.ids.push(cs(t)),this.positions.push(e,n,r)},ss.prototype.getPositions=function(t){for(var e=cs(t),n=0,r=this.ids.length-1;n>1;this.ids[i]>=e?r=i:n=i+1}for(var a=[];this.ids[n]===e;){var o=this.positions[3*n],s=this.positions[3*n+1],l=this.positions[3*n+2];a.push({index:o,start:s,end:l}),n++}return a},ss.serialize=function(t,e){var n=new Float64Array(t.ids),r=new Uint32Array(t.positions);return us(n,r,0,n.length-1),e&&e.push(n.buffer,r.buffer),{ids:n,positions:r}},ss.deserialize=function(t){var e=new ss;return e.ids=t.ids,e.positions=t.positions,e.indexed=!0,e};var ls=Math.pow(2,53)-1;function cs(t){var e=+t;return!isNaN(e)&&e<=ls?e:is(String(t))}function us(t,e,n,r){for(;n>1],a=n-1,o=r+1;;){do{a++}while(t[a]i);if(a>=o)break;fs(t,a,o),fs(e,3*a,3*o),fs(e,3*a+1,3*o+1),fs(e,3*a+2,3*o+2)}o-nDs.max||o.yDs.max)&&(C("Geometry exceeds allowed extent, reduce your vector tile buffer size"),o.x=f(o.x,Ds.min,Ds.max),o.y=f(o.y,Ds.min,Ds.max))}return n}function zs(t,e,n,r,i){t.emplaceBack(2*e+(r+1)/2,2*n+(i+1)/2)}var Ns=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new xo,this.indexArray=new Oo,this.segments=new Qo,this.programConfigurations=new Es(Jo,t.layers,t.zoom),this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};function js(t,e){for(var n=0;n=3)for(var a=0;a1){if(Vs(t,e))return!0;for(var r=0;r1?t.distSqr(n):t.distSqr(n.sub(e)._mult(i)._add(e))}function Ys(t,e){for(var n,r,i,a=!1,o=0;oe.y!==i.y>e.y&&e.x<(i.x-r.x)*(e.y-r.y)/(i.y-r.y)+r.x&&(a=!a);return a}function $s(t,e){for(var n=!1,r=0,i=t.length-1;re.y!==o.y>e.y&&e.x<(o.x-a.x)*(e.y-a.y)/(o.y-a.y)+a.x&&(n=!n)}return n}function Xs(t,e,n,r,i){for(var o=0,s=t;o=l.x&&i>=l.y)return!0}var c=[new a(e,n),new a(e,i),new a(r,i),new a(r,n)];if(t.length>2)for(var u=0,f=c;ui.x&&e.x>i.x||t.yi.y&&e.y>i.y)return!1;var a=P(t,e,n[0]);return a!==P(t,e,n[1])||a!==P(t,e,n[2])||a!==P(t,e,n[3])}function Zs(t,e,n){var r=e.paint.get(t).value;return"constant"===r.kind?r.value:n.programConfigurations.get(e.id).getMaxValue(t)}function Js(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function Qs(t,e,n,r,i){if(!e[0]&&!e[1])return t;var o=a.convert(e)._mult(i);"viewport"===n&&o._rotate(-r);for(var s=[],l=0;l=Os||u<0||u>=Os)){var f=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,t.sortKey),h=f.vertexLength;zs(this.layoutVertexArray,c,u,-1,-1),zs(this.layoutVertexArray,c,u,1,-1),zs(this.layoutVertexArray,c,u,1,1),zs(this.layoutVertexArray,c,u,-1,1),this.indexArray.emplaceBack(h,h+1,h+2),this.indexArray.emplaceBack(h,h+3,h+2),f.vertexLength+=4,f.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,n,{},r)},ga("CircleBucket",Ns,{omit:["layers"]});var tl=new lo({"circle-sort-key":new io(le.layout_circle["circle-sort-key"])}),el={paint:new lo({"circle-radius":new io(le.paint_circle["circle-radius"]),"circle-color":new io(le.paint_circle["circle-color"]),"circle-blur":new io(le.paint_circle["circle-blur"]),"circle-opacity":new io(le.paint_circle["circle-opacity"]),"circle-translate":new ro(le.paint_circle["circle-translate"]),"circle-translate-anchor":new ro(le.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new ro(le.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new ro(le.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new io(le.paint_circle["circle-stroke-width"]),"circle-stroke-color":new io(le.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new io(le.paint_circle["circle-stroke-opacity"])}),layout:tl},nl="undefined"!==typeof Float32Array?Float32Array:Array;function rl(){var t=new nl(4);return nl!=Float32Array&&(t[1]=0,t[2]=0),t[0]=1,t[3]=1,t}function il(t,e,n){var r=e[0],i=e[1],a=e[2],o=e[3],s=Math.sin(n),l=Math.cos(n);return t[0]=r*l+a*s,t[1]=i*l+o*s,t[2]=r*-s+a*l,t[3]=i*-s+o*l,t}function al(){var t=new nl(9);return nl!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1,t}function ol(t,e){var n=Math.sin(e),r=Math.cos(e);return t[0]=r,t[1]=n,t[2]=0,t[3]=-n,t[4]=r,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t}function sl(){var t=new nl(16);return nl!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t}function ll(t){var e=new nl(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function cl(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function ul(t,e){var n=e[0],r=e[1],i=e[2],a=e[3],o=e[4],s=e[5],l=e[6],c=e[7],u=e[8],f=e[9],h=e[10],d=e[11],p=e[12],g=e[13],v=e[14],m=e[15],y=n*s-r*o,b=n*l-i*o,x=n*c-a*o,w=r*l-i*s,_=r*c-a*s,k=i*c-a*l,T=u*g-f*p,M=u*v-h*p,A=u*m-d*p,S=f*v-h*g,E=f*m-d*g,C=h*m-d*v,P=y*C-b*E+x*S+w*A-_*M+k*T;return P?(P=1/P,t[0]=(s*C-l*E+c*S)*P,t[1]=(i*E-r*C-a*S)*P,t[2]=(g*k-v*_+m*w)*P,t[3]=(h*_-f*k-d*w)*P,t[4]=(l*A-o*C-c*M)*P,t[5]=(n*C-i*A+a*M)*P,t[6]=(v*x-p*k-m*b)*P,t[7]=(u*k-h*x+d*b)*P,t[8]=(o*E-s*A+c*T)*P,t[9]=(r*A-n*E-a*T)*P,t[10]=(p*_-g*x+m*y)*P,t[11]=(f*x-u*_-d*y)*P,t[12]=(s*M-o*S-l*T)*P,t[13]=(n*S-r*M+i*T)*P,t[14]=(g*b-p*w-v*y)*P,t[15]=(u*w-f*b+h*y)*P,t):null}function fl(t,e,n){var r=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],f=e[8],h=e[9],d=e[10],p=e[11],g=e[12],v=e[13],m=e[14],y=e[15],b=n[0],x=n[1],w=n[2],_=n[3];return t[0]=b*r+x*s+w*f+_*g,t[1]=b*i+x*l+w*h+_*v,t[2]=b*a+x*c+w*d+_*m,t[3]=b*o+x*u+w*p+_*y,b=n[4],x=n[5],w=n[6],_=n[7],t[4]=b*r+x*s+w*f+_*g,t[5]=b*i+x*l+w*h+_*v,t[6]=b*a+x*c+w*d+_*m,t[7]=b*o+x*u+w*p+_*y,b=n[8],x=n[9],w=n[10],_=n[11],t[8]=b*r+x*s+w*f+_*g,t[9]=b*i+x*l+w*h+_*v,t[10]=b*a+x*c+w*d+_*m,t[11]=b*o+x*u+w*p+_*y,b=n[12],x=n[13],w=n[14],_=n[15],t[12]=b*r+x*s+w*f+_*g,t[13]=b*i+x*l+w*h+_*v,t[14]=b*a+x*c+w*d+_*m,t[15]=b*o+x*u+w*p+_*y,t}function hl(t,e,n){var r,i,a,o,s,l,c,u,f,h,d,p,g=n[0],v=n[1],m=n[2];return e===t?(t[12]=e[0]*g+e[4]*v+e[8]*m+e[12],t[13]=e[1]*g+e[5]*v+e[9]*m+e[13],t[14]=e[2]*g+e[6]*v+e[10]*m+e[14],t[15]=e[3]*g+e[7]*v+e[11]*m+e[15]):(r=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],f=e[8],h=e[9],d=e[10],p=e[11],t[0]=r,t[1]=i,t[2]=a,t[3]=o,t[4]=s,t[5]=l,t[6]=c,t[7]=u,t[8]=f,t[9]=h,t[10]=d,t[11]=p,t[12]=r*g+s*v+f*m+e[12],t[13]=i*g+l*v+h*m+e[13],t[14]=a*g+c*v+d*m+e[14],t[15]=o*g+u*v+p*m+e[15]),t}function dl(t,e,n){var r=n[0],i=n[1],a=n[2];return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t[3]=e[3]*r,t[4]=e[4]*i,t[5]=e[5]*i,t[6]=e[6]*i,t[7]=e[7]*i,t[8]=e[8]*a,t[9]=e[9]*a,t[10]=e[10]*a,t[11]=e[11]*a,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function pl(t,e,n){var r=Math.sin(n),i=Math.cos(n),a=e[4],o=e[5],s=e[6],l=e[7],c=e[8],u=e[9],f=e[10],h=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=a*i+c*r,t[5]=o*i+u*r,t[6]=s*i+f*r,t[7]=l*i+h*r,t[8]=c*i-a*r,t[9]=u*i-o*r,t[10]=f*i-s*r,t[11]=h*i-l*r,t}function gl(t,e,n){var r=Math.sin(n),i=Math.cos(n),a=e[0],o=e[1],s=e[2],l=e[3],c=e[4],u=e[5],f=e[6],h=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=a*i+c*r,t[1]=o*i+u*r,t[2]=s*i+f*r,t[3]=l*i+h*r,t[4]=c*i-a*r,t[5]=u*i-o*r,t[6]=f*i-s*r,t[7]=h*i-l*r,t}function vl(t,e,n,r,i){var a,o=1/Math.tan(e/2);return t[0]=o/n,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,null!=i&&i!==1/0?(a=1/(r-i),t[10]=(i+r)*a,t[14]=2*i*r*a):(t[10]=-1,t[14]=-2*r),t}function ml(t,e,n,r,i,a,o){var s=1/(e-n),l=1/(r-i),c=1/(a-o);return t[0]=-2*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*c,t[11]=0,t[12]=(e+n)*s,t[13]=(i+r)*l,t[14]=(o+a)*c,t[15]=1,t}Math.hypot||(Math.hypot=function(){for(var t=arguments,e=0,n=arguments.length;n--;)e+=t[n]*t[n];return Math.sqrt(e)});var yl=fl;function bl(){var t=new nl(3);return nl!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t}function xl(t){var e=new nl(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}function wl(t,e,n){return t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2],t}function _l(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t[2]=e[2]-n[2],t}function kl(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t}function Tl(t,e){var n=e[0],r=e[1],i=e[2],a=n*n+r*r+i*i;return a>0&&(a=1/Math.sqrt(a)),t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a,t}function Ml(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function Al(t,e,n){var r=e[0],i=e[1],a=e[2],o=n[0],s=n[1],l=n[2];return t[0]=i*l-a*s,t[1]=a*o-r*l,t[2]=r*s-i*o,t}function Sl(t,e,n){var r=e[0],i=e[1],a=e[2];return t[0]=r*n[0]+i*n[3]+a*n[6],t[1]=r*n[1]+i*n[4]+a*n[7],t[2]=r*n[2]+i*n[5]+a*n[8],t}var El=_l;function Cl(){var t=new nl(4);return nl!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0),t}function Pl(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t}function Ll(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}function Ol(t,e,n){var r=e[0],i=e[1],a=e[2],o=e[3];return t[0]=n[0]*r+n[4]*i+n[8]*a+n[12]*o,t[1]=n[1]*r+n[5]*i+n[9]*a+n[13]*o,t[2]=n[2]*r+n[6]*i+n[10]*a+n[14]*o,t[3]=n[3]*r+n[7]*i+n[11]*a+n[15]*o,t}function Il(){var t=new nl(2);return nl!=Float32Array&&(t[0]=0,t[1]=0),t}function Dl(t){var e=t[0],n=t[1];return e*e+n*n}bl(),Cl();var Rl=Dl,zl=(Il(),function(t){function e(e){t.call(this,e,el)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.createBucket=function(t){return new Ns(t)},e.prototype.queryRadius=function(t){var e=t;return Zs("circle-radius",this,e)+Zs("circle-stroke-width",this,e)+Js(this.paint.get("circle-translate"))},e.prototype.queryIntersectsFeature=function(t,e,n,r,i,a,o,s){for(var l=Qs(t,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),a.angle,o),c=this.paint.get("circle-radius").evaluate(e,n)+this.paint.get("circle-stroke-width").evaluate(e,n),u="map"===this.paint.get("circle-pitch-alignment"),f=u?l:jl(l,s),h=u?c*o:c,d=0,p=r;dt.width||i.height>t.height||n.x>t.width-i.width||n.y>t.height-i.height)throw new RangeError("out of range source coordinates for image copy");if(i.width>e.width||i.height>e.height||r.x>e.width-i.width||r.y>e.height-i.height)throw new RangeError("out of range destination coordinates for image copy");for(var o=t.data,s=e.data,l=0;l80*n){r=a=t[0],i=o=t[1];for(var p=n;pa&&(a=s),l>o&&(o=l);c=0!==(c=Math.max(a-r,o-i))?1/c:0}return nc(h,d,n,r,i,c),d}function tc(t,e,n,r,i){var a,o;if(i===Pc(t,e,n,r)>0)for(a=e;a=e;a-=r)o=Sc(a,t[a],t[a+1],o);return o&&bc(o,o.next)&&(Ec(o),o=o.next),o}function ec(t,e){if(!t)return t;e||(e=t);var n,r=t;do{if(n=!1,r.steiner||!bc(r,r.next)&&0!==yc(r.prev,r,r.next))r=r.next;else{if(Ec(r),(r=e=r.prev)===r.next)break;n=!0}}while(n||r!==e);return e}function nc(t,e,n,r,i,a,o){if(t){!o&&a&&hc(t,r,i,a);for(var s,l,c=t;t.prev!==t.next;)if(s=t.prev,l=t.next,a?ic(t,r,i,a):rc(t))e.push(s.i/n),e.push(t.i/n),e.push(l.i/n),Ec(t),t=l.next,c=l.next;else if((t=l)===c){o?1===o?nc(t=ac(ec(t),e,n),e,n,r,i,a,2):2===o&&oc(t,e,n,r,i,a):nc(ec(t),e,n,r,i,a,1);break}}}function rc(t){var e=t.prev,n=t,r=t.next;if(yc(e,n,r)>=0)return!1;for(var i=t.next.next;i!==t.prev;){if(vc(e.x,e.y,n.x,n.y,r.x,r.y,i.x,i.y)&&yc(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function ic(t,e,n,r){var i=t.prev,a=t,o=t.next;if(yc(i,a,o)>=0)return!1;for(var s=i.xa.x?i.x>o.x?i.x:o.x:a.x>o.x?a.x:o.x,u=i.y>a.y?i.y>o.y?i.y:o.y:a.y>o.y?a.y:o.y,f=pc(s,l,e,n,r),h=pc(c,u,e,n,r),d=t.prevZ,p=t.nextZ;d&&d.z>=f&&p&&p.z<=h;){if(d!==t.prev&&d!==t.next&&vc(i.x,i.y,a.x,a.y,o.x,o.y,d.x,d.y)&&yc(d.prev,d,d.next)>=0)return!1;if(d=d.prevZ,p!==t.prev&&p!==t.next&&vc(i.x,i.y,a.x,a.y,o.x,o.y,p.x,p.y)&&yc(p.prev,p,p.next)>=0)return!1;p=p.nextZ}for(;d&&d.z>=f;){if(d!==t.prev&&d!==t.next&&vc(i.x,i.y,a.x,a.y,o.x,o.y,d.x,d.y)&&yc(d.prev,d,d.next)>=0)return!1;d=d.prevZ}for(;p&&p.z<=h;){if(p!==t.prev&&p!==t.next&&vc(i.x,i.y,a.x,a.y,o.x,o.y,p.x,p.y)&&yc(p.prev,p,p.next)>=0)return!1;p=p.nextZ}return!0}function ac(t,e,n){var r=t;do{var i=r.prev,a=r.next.next;!bc(i,a)&&xc(i,r,r.next,a)&&Tc(i,a)&&Tc(a,i)&&(e.push(i.i/n),e.push(r.i/n),e.push(a.i/n),Ec(r),Ec(r.next),r=t=a),r=r.next}while(r!==t);return ec(r)}function oc(t,e,n,r,i,a){var o=t;do{for(var s=o.next.next;s!==o.prev;){if(o.i!==s.i&&mc(o,s)){var l=Ac(o,s);return o=ec(o,o.next),l=ec(l,l.next),nc(o,e,n,r,i,a),void nc(l,e,n,r,i,a)}s=s.next}o=o.next}while(o!==t)}function sc(t,e,n,r){var i,a,o,s=[];for(i=0,a=e.length;i=r.next.y&&r.next.y!==r.y){var s=r.x+(a-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(s<=i&&s>o){if(o=s,s===i){if(a===r.y)return r;if(a===r.next.y)return r.next}n=r.x=r.x&&r.x>=u&&i!==r.x&&vc(an.x||r.x===n.x&&fc(n,r)))&&(n=r,h=l)),r=r.next}while(r!==c);return n}function fc(t,e){return yc(t.prev,t,e.prev)<0&&yc(e.next,t,t.next)<0}function hc(t,e,n,r){var i=t;do{null===i.z&&(i.z=pc(i.x,i.y,e,n,r)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==t);i.prevZ.nextZ=null,i.prevZ=null,dc(i)}function dc(t){var e,n,r,i,a,o,s,l,c=1;do{for(n=t,t=null,a=null,o=0;n;){for(o++,r=n,s=0,e=0;e0||l>0&&r;)0!==s&&(0===l||!r||n.z<=r.z)?(i=n,n=n.nextZ,s--):(i=r,r=r.nextZ,l--),a?a.nextZ=i:t=i,i.prevZ=a,a=i;n=r}a.nextZ=null,c*=2}while(o>1);return t}function pc(t,e,n,r,i){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-n)*i)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-r)*i)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function gc(t){var e=t,n=t;do{(e.x=0&&(t-o)*(r-s)-(n-o)*(e-s)>=0&&(n-o)*(a-s)-(i-o)*(r-s)>=0}function mc(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!kc(t,e)&&(Tc(t,e)&&Tc(e,t)&&Mc(t,e)&&(yc(t.prev,t,e.prev)||yc(t,e.prev,e))||bc(t,e)&&yc(t.prev,t,t.next)>0&&yc(e.prev,e,e.next)>0)}function yc(t,e,n){return(e.y-t.y)*(n.x-e.x)-(e.x-t.x)*(n.y-e.y)}function bc(t,e){return t.x===e.x&&t.y===e.y}function xc(t,e,n,r){var i=_c(yc(t,e,n)),a=_c(yc(t,e,r)),o=_c(yc(n,r,t)),s=_c(yc(n,r,e));return i!==a&&o!==s||!(0!==i||!wc(t,n,e))||!(0!==a||!wc(t,r,e))||!(0!==o||!wc(n,t,r))||!(0!==s||!wc(n,e,r))}function wc(t,e,n){return e.x<=Math.max(t.x,n.x)&&e.x>=Math.min(t.x,n.x)&&e.y<=Math.max(t.y,n.y)&&e.y>=Math.min(t.y,n.y)}function _c(t){return t>0?1:t<0?-1:0}function kc(t,e){var n=t;do{if(n.i!==t.i&&n.next.i!==t.i&&n.i!==e.i&&n.next.i!==e.i&&xc(n,n.next,t,e))return!0;n=n.next}while(n!==t);return!1}function Tc(t,e){return yc(t.prev,t,t.next)<0?yc(t,e,t.next)>=0&&yc(t,t.prev,e)>=0:yc(t,e,t.prev)<0||yc(t,t.next,e)<0}function Mc(t,e){var n=t,r=!1,i=(t.x+e.x)/2,a=(t.y+e.y)/2;do{n.y>a!==n.next.y>a&&n.next.y!==n.y&&i<(n.next.x-n.x)*(a-n.y)/(n.next.y-n.y)+n.x&&(r=!r),n=n.next}while(n!==t);return r}function Ac(t,e){var n=new Cc(t.i,t.x,t.y),r=new Cc(e.i,e.x,e.y),i=t.next,a=e.prev;return t.next=e,e.prev=t,n.next=i,i.prev=n,r.next=n,n.prev=r,a.next=r,r.prev=a,r}function Sc(t,e,n,r){var i=new Cc(t,e,n);return r?(i.next=r.next,i.prev=r,r.next.prev=i,r.next=i):(i.prev=i,i.next=i),i}function Ec(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function Cc(t,e,n){this.i=t,this.x=e,this.y=n,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function Pc(t,e,n,r){for(var i=0,a=e,o=n-r;an;){if(r-n>600){var a=r-n+1,o=e-n+1,s=Math.log(a),l=.5*Math.exp(2*s/3),c=.5*Math.sqrt(s*l*(a-l)/a)*(o-a/2<0?-1:1);Oc(t,e,Math.max(n,Math.floor(e-o*l/a+c)),Math.min(r,Math.floor(e+(a-o)*l/a+c)),i)}var u=t[e],f=n,h=r;for(Ic(t,n,e),i(t[r],u)>0&&Ic(t,n,r);f0;)h--}0===i(t[n],u)?Ic(t,n,h):Ic(t,++h,r),h<=e&&(n=h+1),e<=h&&(r=h-1)}}function Ic(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function Dc(t,e){return te?1:0}function Rc(t,e){var n=t.length;if(n<=1)return[t];for(var r,i,a=[],o=0;o1)for(var l=0;l0&&(r+=t[i-1].length,n.holes.push(r))}return n},Zl.default=Jl;var Fc=500,Bc=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new xo,this.indexArray=new Oo,this.indexArray2=new jo,this.programConfigurations=new Es(Kl,t.layers,t.zoom),this.segments=new Qo,this.segments2=new Qo,this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};Bc.prototype.populate=function(t,e,n){this.hasPattern=Nc("fill",this.layers,e);for(var r=this.layers[0].layout.get("fill-sort-key"),i=[],a=0,o=t;a>3}if(i--,1===r||2===r)o+=t.readSVarint(),s+=t.readSVarint(),1===r&&(e&&l.push(e),e=[]),e.push(new a(o,s));else{if(7!==r)throw new Error("unknown command "+r);e&&e.push(e[0].clone())}}return e&&l.push(e),l},Wc.prototype.bbox=function(){var t=this._pbf;t.pos=this._geometry;for(var e=t.readVarint()+t.pos,n=1,r=0,i=0,a=0,o=1/0,s=-1/0,l=1/0,c=-1/0;t.pos>3}if(r--,1===n||2===n)(i+=t.readSVarint())s&&(s=i),(a+=t.readSVarint())c&&(c=a);else if(7!==n)throw new Error("unknown command "+n)}return[o,l,s,c]},Wc.prototype.toGeoJSON=function(t,e,n){var r,i,a=this.extent*Math.pow(2,n),o=this.extent*t,s=this.extent*e,l=this.loadGeometry(),c=Wc.types[this.type];function u(t){for(var e=0;e>3;e=1===r?t.readString():2===r?t.readFloat():3===r?t.readDouble():4===r?t.readVarint64():5===r?t.readVarint():6===r?t.readSVarint():7===r?t.readBoolean():null}return e}function eu(t,e){this.layers=t.readFields(nu,{},e)}function nu(t,e,n){if(3===t){var r=new Zc(n,n.readVarint()+n.pos);r.length&&(e[r.name]=r)}}Jc.prototype.feature=function(t){if(t<0||t>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[t];var e=this._pbf.readVarint()+this._pbf.pos;return new Gc(this._pbf,e,this.extent,this._keys,this._values)};var ru={VectorTile:eu,VectorTileFeature:Gc,VectorTileLayer:Zc},iu=ru.VectorTileFeature.types,au=500,ou=Math.pow(2,13);function su(t,e,n,r,i,a,o,s){t.emplaceBack(e,n,2*Math.floor(r*ou)+o,i*ou*2,a*ou*2,Math.round(s))}var lu=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new _o,this.indexArray=new Oo,this.programConfigurations=new Es(qc,t.layers,t.zoom),this.segments=new Qo,this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};function cu(t,e){return t.x===e.x&&(t.x<0||t.x>Os)||t.y===e.y&&(t.y<0||t.y>Os)}function uu(t){return t.every((function(t){return t.x<0}))||t.every((function(t){return t.x>Os}))||t.every((function(t){return t.y<0}))||t.every((function(t){return t.y>Os}))}lu.prototype.populate=function(t,e,n){this.features=[],this.hasPattern=Nc("fill-extrusion",this.layers,e);for(var r=0,i=t;r=1){var y=p[v-1];if(!cu(m,y)){f.vertexLength+4>Qo.MAX_VERTEX_ARRAY_LENGTH&&(f=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var b=m.sub(y)._perp()._unit(),x=y.dist(m);g+x>32768&&(g=0),su(this.layoutVertexArray,m.x,m.y,b.x,b.y,0,0,g),su(this.layoutVertexArray,m.x,m.y,b.x,b.y,0,1,g),g+=x,su(this.layoutVertexArray,y.x,y.y,b.x,b.y,0,0,g),su(this.layoutVertexArray,y.x,y.y,b.x,b.y,0,1,g);var w=f.vertexLength;this.indexArray.emplaceBack(w,w+2,w+1),this.indexArray.emplaceBack(w+1,w+2,w+3),f.vertexLength+=4,f.primitiveLength+=2}}}}if(f.vertexLength+l>Qo.MAX_VERTEX_ARRAY_LENGTH&&(f=this.segments.prepareSegment(l,this.layoutVertexArray,this.indexArray)),"Polygon"===iu[t.type]){for(var _=[],k=[],T=f.vertexLength,M=0,A=s;M=2&&t[l-1].equals(t[l-2]);)l--;for(var c=0;c0;if(k&&m>c){var M=u.dist(d);if(M>2*f){var A=u.sub(u.sub(d)._mult(f/M)._round());this.updateDistance(d,A),this.addCurrentVertex(A,g,0,0,h),d=A}}var S=d&&p,E=S?n:s?"butt":r;if(S&&"round"===E&&(wi&&(E="bevel"),"bevel"===E&&(w>2&&(E="flipbevel"),w100)y=v.mult(-1);else{var C=w*g.add(v).mag()/g.sub(v).mag();y._perp()._mult(C*(T?-1:1))}this.addCurrentVertex(u,y,0,0,h),this.addCurrentVertex(u,y.mult(-1),0,0,h)}else if("bevel"===E||"fakeround"===E){var P=-Math.sqrt(w*w-1),L=T?P:0,O=T?0:P;if(d&&this.addCurrentVertex(u,g,L,O,h),"fakeround"===E)for(var I=Math.round(180*_/Math.PI/ku),D=1;D2*f){var B=u.add(p.sub(u)._mult(f/F)._round());this.updateDistance(u,B),this.addCurrentVertex(B,v,0,0,h),u=B}}}}},Su.prototype.addCurrentVertex=function(t,e,n,r,i,a){void 0===a&&(a=!1);var o=e.x+e.y*n,s=e.y-e.x*n,l=-e.x+e.y*r,c=-e.y-e.x*r;this.addHalfVertex(t,o,s,a,!1,n,i),this.addHalfVertex(t,l,c,a,!0,-r,i),this.distance>Au/2&&0===this.totalDistance&&(this.distance=0,this.addCurrentVertex(t,e,n,r,i,a))},Su.prototype.addHalfVertex=function(t,e,n,r,i,a,o){var s=t.x,l=t.y,c=this.scaledDistance*Mu;this.layoutVertexArray.emplaceBack((s<<1)+(r?1:0),(l<<1)+(i?1:0),Math.round(xu*e)+128,Math.round(xu*n)+128,1+(0===a?0:a<0?-1:1)|(63&c)<<2,c>>6);var u=o.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,u),o.primitiveLength++),i?this.e2=u:this.e1=u},Su.prototype.updateScaledDistance=function(){this.scaledDistance=this.totalDistance>0?(this.clipStart+(this.clipEnd-this.clipStart)*this.distance/this.totalDistance)*(Au-1):this.distance},Su.prototype.updateDistance=function(t,e){this.distance+=t.dist(e),this.updateScaledDistance()},ga("LineBucket",Su,{omit:["layers","patternFeatures"]});var Eu=new lo({"line-cap":new ro(le.layout_line["line-cap"]),"line-join":new io(le.layout_line["line-join"]),"line-miter-limit":new ro(le.layout_line["line-miter-limit"]),"line-round-limit":new ro(le.layout_line["line-round-limit"]),"line-sort-key":new io(le.layout_line["line-sort-key"])}),Cu={paint:new lo({"line-opacity":new io(le.paint_line["line-opacity"]),"line-color":new io(le.paint_line["line-color"]),"line-translate":new ro(le.paint_line["line-translate"]),"line-translate-anchor":new ro(le.paint_line["line-translate-anchor"]),"line-width":new io(le.paint_line["line-width"]),"line-gap-width":new io(le.paint_line["line-gap-width"]),"line-offset":new io(le.paint_line["line-offset"]),"line-blur":new io(le.paint_line["line-blur"]),"line-dasharray":new oo(le.paint_line["line-dasharray"]),"line-pattern":new ao(le.paint_line["line-pattern"]),"line-gradient":new so(le.paint_line["line-gradient"])}),layout:Eu},Pu=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.possiblyEvaluate=function(e,n){return n=new $a(Math.floor(n.zoom),{now:n.now,fadeDuration:n.fadeDuration,zoomHistory:n.zoomHistory,transition:n.transition}),t.prototype.possiblyEvaluate.call(this,e,n)},e.prototype.evaluate=function(e,n,r,i){return n=v({},n,{zoom:Math.floor(n.zoom)}),t.prototype.evaluate.call(this,e,n,r,i)},e}(io),Lu=new Pu(Cu.paint.properties["line-width"].specification);Lu.useIntegerZoom=!0;var Ou=function(t){function e(e){t.call(this,e,Cu)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._handleSpecialPaintPropertyUpdate=function(t){"line-gradient"===t&&this._updateGradient()},e.prototype._updateGradient=function(){var t=this._transitionablePaint._values["line-gradient"].value.expression;this.gradient=Wl(t,"lineProgress"),this.gradientTexture=null},e.prototype.recalculate=function(e,n){t.prototype.recalculate.call(this,e,n),this.paint._values["line-floorwidth"]=Lu.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,e)},e.prototype.createBucket=function(t){return new Su(t)},e.prototype.queryRadius=function(t){var e=t,n=Iu(Zs("line-width",this,e),Zs("line-gap-width",this,e)),r=Zs("line-offset",this,e);return n/2+Math.abs(r)+Js(this.paint.get("line-translate"))},e.prototype.queryIntersectsFeature=function(t,e,n,r,i,a,o){var s=Qs(t,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),a.angle,o),l=o/2*Iu(this.paint.get("line-width").evaluate(e,n),this.paint.get("line-gap-width").evaluate(e,n)),c=this.paint.get("line-offset").evaluate(e,n);return c&&(r=Du(r,c*o)),Us(s,r,l)},e.prototype.isTileClipped=function(){return!0},e}(uo);function Iu(t,e){return e>0?e+2*t:t}function Du(t,e){for(var n=[],r=new a(0,0),i=0;i":"\ufe40","?":"\ufe16","@":"\uff20","[":"\ufe47","\\":"\uff3c","]":"\ufe48","^":"\uff3e",_:"\ufe33","`":"\uff40","{":"\ufe37","|":"\u2015","}":"\ufe38","~":"\uff5e","\xa2":"\uffe0","\xa3":"\uffe1","\xa5":"\uffe5","\xa6":"\uffe4","\xac":"\uffe2","\xaf":"\uffe3","\u2013":"\ufe32","\u2014":"\ufe31","\u2018":"\ufe43","\u2019":"\ufe44","\u201c":"\ufe41","\u201d":"\ufe42","\u2026":"\ufe19","\u2027":"\u30fb","\u20a9":"\uffe6","\u3001":"\ufe11","\u3002":"\ufe12","\u3008":"\ufe3f","\u3009":"\ufe40","\u300a":"\ufe3d","\u300b":"\ufe3e","\u300c":"\ufe41","\u300d":"\ufe42","\u300e":"\ufe43","\u300f":"\ufe44","\u3010":"\ufe3b","\u3011":"\ufe3c","\u3014":"\ufe39","\u3015":"\ufe3a","\u3016":"\ufe17","\u3017":"\ufe18","\uff01":"\ufe15","\uff08":"\ufe35","\uff09":"\ufe36","\uff0c":"\ufe10","\uff0d":"\ufe32","\uff0e":"\u30fb","\uff1a":"\ufe13","\uff1b":"\ufe14","\uff1c":"\ufe3f","\uff1e":"\ufe40","\uff1f":"\ufe16","\uff3b":"\ufe47","\uff3d":"\ufe48","\uff3f":"\ufe33","\uff5b":"\ufe37","\uff5c":"\u2015","\uff5d":"\ufe38","\uff5f":"\ufe35","\uff60":"\ufe36","\uff61":"\ufe12","\uff62":"\ufe41","\uff63":"\ufe42"};function qu(t){for(var e="",n=0;n>1,u=-7,f=n?i-1:0,h=n?-1:1,d=t[e+f];for(f+=h,a=d&(1<<-u)-1,d>>=-u,u+=s;u>0;a=256*a+t[e+f],f+=h,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=r;u>0;o=256*o+t[e+f],f+=h,u-=8);if(0===a)a=1-c;else{if(a===l)return o?NaN:1/0*(d?-1:1);o+=Math.pow(2,r),a-=c}return(d?-1:1)*o*Math.pow(2,a-r)},write:function(t,e,n,r,i,a){var o,s,l,c=8*a-i-1,u=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:a-1,p=r?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+f>=1?h/l:h*Math.pow(2,1-f))*l>=2&&(o++,l/=2),o+f>=u?(s=0,o=u):o+f>=1?(s=(e*l-1)*Math.pow(2,i),o+=f):(s=e*Math.pow(2,f-1)*Math.pow(2,i),o=0));i>=8;t[n+d]=255&s,d+=p,s/=256,i-=8);for(o=o<0;t[n+d]=255&o,d+=p,o/=256,c-=8);t[n+d-p]|=128*g}},Yu=$u;function $u(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}$u.Varint=0,$u.Fixed64=1,$u.Bytes=2,$u.Fixed32=5;var Xu=4294967296,Ku=1/Xu,Zu=12,Ju="undefined"===typeof TextDecoder?null:new TextDecoder("utf8");function Qu(t,e,n){var r,i,a=n.buf;if(r=(112&(i=a[n.pos++]))>>4,i<128)return ef(t,r,e);if(r|=(127&(i=a[n.pos++]))<<3,i<128)return ef(t,r,e);if(r|=(127&(i=a[n.pos++]))<<10,i<128)return ef(t,r,e);if(r|=(127&(i=a[n.pos++]))<<17,i<128)return ef(t,r,e);if(r|=(127&(i=a[n.pos++]))<<24,i<128)return ef(t,r,e);if(r|=(1&(i=a[n.pos++]))<<31,i<128)return ef(t,r,e);throw new Error("Expected varint not more than 10 bytes")}function tf(t){return t.type===$u.Bytes?t.readVarint()+t.pos:t.pos+1}function ef(t,e,n){return n?4294967296*e+(t>>>0):4294967296*(e>>>0)+(t>>>0)}function nf(t,e){var n,r;if(t>=0?(n=t%4294967296|0,r=t/4294967296|0):(r=~(-t/4294967296),4294967295^(n=~(-t%4294967296))?n=n+1|0:(n=0,r=r+1|0)),t>=0x10000000000000000||t<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");e.realloc(10),rf(n,r,e),af(r,e)}function rf(t,e,n){n.buf[n.pos++]=127&t|128,t>>>=7,n.buf[n.pos++]=127&t|128,t>>>=7,n.buf[n.pos++]=127&t|128,t>>>=7,n.buf[n.pos++]=127&t|128,t>>>=7,n.buf[n.pos]=127&t}function af(t,e){var n=(7&t)<<4;e.buf[e.pos++]|=n|((t>>>=3)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t)))))}function of(t,e,n){var r=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.floor(Math.log(e)/(7*Math.LN2));n.realloc(r);for(var i=n.pos-1;i>=t;i--)n.buf[i+r]=n.buf[i]}function sf(t,e){for(var n=0;n>>8,t[n+2]=e>>>16,t[n+3]=e>>>24}function yf(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+(t[e+3]<<24)}function bf(t,e,n){for(var r="",i=e;i239?4:l>223?3:l>191?2:1;if(i+u>n)break;1===u?l<128&&(c=l):2===u?128===(192&(a=t[i+1]))&&(c=(31&l)<<6|63&a)<=127&&(c=null):3===u?(a=t[i+1],o=t[i+2],128===(192&a)&&128===(192&o)&&((c=(15&l)<<12|(63&a)<<6|63&o)<=2047||c>=55296&&c<=57343)&&(c=null)):4===u&&(a=t[i+1],o=t[i+2],s=t[i+3],128===(192&a)&&128===(192&o)&&128===(192&s)&&((c=(15&l)<<18|(63&a)<<12|(63&o)<<6|63&s)<=65535||c>=1114112)&&(c=null)),null===c?(c=65533,u=1):c>65535&&(c-=65536,r+=String.fromCharCode(c>>>10&1023|55296),c=56320|1023&c),r+=String.fromCharCode(c),i+=u}return r}function xf(t,e,n){return Ju.decode(t.subarray(e,n))}function wf(t,e,n){for(var r,i,a=0;a55295&&r<57344){if(!i){r>56319||a+1===e.length?(t[n++]=239,t[n++]=191,t[n++]=189):i=r;continue}if(r<56320){t[n++]=239,t[n++]=191,t[n++]=189,i=r;continue}r=i-55296<<10|r-56320|65536,i=null}else i&&(t[n++]=239,t[n++]=191,t[n++]=189,i=null);r<128?t[n++]=r:(r<2048?t[n++]=r>>6|192:(r<65536?t[n++]=r>>12|224:(t[n++]=r>>18|240,t[n++]=r>>12&63|128),t[n++]=r>>6&63|128),t[n++]=63&r|128)}return n}$u.prototype={destroy:function(){this.buf=null},readFields:function(t,e,n){for(n=n||this.length;this.pos>3,a=this.pos;this.type=7&r,t(i,e,this),this.pos===a&&this.skip(r)}return e},readMessage:function(t,e){return this.readFields(t,e,this.readVarint()+this.pos)},readFixed32:function(){var t=vf(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=yf(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=vf(this.buf,this.pos)+vf(this.buf,this.pos+4)*Xu;return this.pos+=8,t},readSFixed64:function(){var t=vf(this.buf,this.pos)+yf(this.buf,this.pos+4)*Xu;return this.pos+=8,t},readFloat:function(){var t=Wu.read(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=Wu.read(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var e,n,r=this.buf;return e=127&(n=r[this.pos++]),n<128?e:(e|=(127&(n=r[this.pos++]))<<7,n<128?e:(e|=(127&(n=r[this.pos++]))<<14,n<128?e:(e|=(127&(n=r[this.pos++]))<<21,n<128?e:Qu(e|=(15&(n=r[this.pos]))<<28,t,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2===1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,e=this.pos;return this.pos=t,t-e>=Zu&&Ju?xf(this.buf,e,t):bf(this.buf,e,t)},readBytes:function(){var t=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,t);return this.pos=t,e},readPackedVarint:function(t,e){if(this.type!==$u.Bytes)return t.push(this.readVarint(e));var n=tf(this);for(t=t||[];this.pos127;);else if(e===$u.Bytes)this.pos=this.readVarint()+this.pos;else if(e===$u.Fixed32)this.pos+=4;else{if(e!==$u.Fixed64)throw new Error("Unimplemented type: "+e);this.pos+=8}},writeTag:function(t,e){this.writeVarint(t<<3|e)},realloc:function(t){for(var e=this.length||16;e268435455||t<0?nf(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127))))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(Boolean(t))},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var e=this.pos;this.pos=wf(this.buf,t,this.pos);var n=this.pos-e;n>=128&&of(e,n,this),this.pos=e-1,this.writeVarint(n),this.pos+=n},writeFloat:function(t){this.realloc(4),Wu.write(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),Wu.write(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var e=t.length;this.writeVarint(e),this.realloc(e);for(var n=0;n=128&&of(n,r,this),this.pos=n-1,this.writeVarint(r),this.pos+=r},writeMessage:function(t,e,n){this.writeTag(t,$u.Bytes),this.writeRawMessage(e,n)},writePackedVarint:function(t,e){e.length&&this.writeMessage(t,sf,e)},writePackedSVarint:function(t,e){e.length&&this.writeMessage(t,lf,e)},writePackedBoolean:function(t,e){e.length&&this.writeMessage(t,ff,e)},writePackedFloat:function(t,e){e.length&&this.writeMessage(t,cf,e)},writePackedDouble:function(t,e){e.length&&this.writeMessage(t,uf,e)},writePackedFixed32:function(t,e){e.length&&this.writeMessage(t,hf,e)},writePackedSFixed32:function(t,e){e.length&&this.writeMessage(t,df,e)},writePackedFixed64:function(t,e){e.length&&this.writeMessage(t,pf,e)},writePackedSFixed64:function(t,e){e.length&&this.writeMessage(t,gf,e)},writeBytesField:function(t,e){this.writeTag(t,$u.Bytes),this.writeBytes(e)},writeFixed32Field:function(t,e){this.writeTag(t,$u.Fixed32),this.writeFixed32(e)},writeSFixed32Field:function(t,e){this.writeTag(t,$u.Fixed32),this.writeSFixed32(e)},writeFixed64Field:function(t,e){this.writeTag(t,$u.Fixed64),this.writeFixed64(e)},writeSFixed64Field:function(t,e){this.writeTag(t,$u.Fixed64),this.writeSFixed64(e)},writeVarintField:function(t,e){this.writeTag(t,$u.Varint),this.writeVarint(e)},writeSVarintField:function(t,e){this.writeTag(t,$u.Varint),this.writeSVarint(e)},writeStringField:function(t,e){this.writeTag(t,$u.Bytes),this.writeString(e)},writeFloatField:function(t,e){this.writeTag(t,$u.Fixed32),this.writeFloat(e)},writeDoubleField:function(t,e){this.writeTag(t,$u.Fixed64),this.writeDouble(e)},writeBooleanField:function(t,e){this.writeVarintField(t,Boolean(e))}};var _f=3;function kf(t,e,n){1===t&&n.readMessage(Tf,e)}function Tf(t,e,n){if(3===t){var r=n.readMessage(Mf,{}),i=r.id,a=r.bitmap,o=r.width,s=r.height,l=r.left,c=r.top,u=r.advance;e.push({id:i,bitmap:new Vl({width:o+2*_f,height:s+2*_f},a),metrics:{width:o,height:s,left:l,top:c,advance:u}})}}function Mf(t,e,n){1===t?e.id=n.readVarint():2===t?e.bitmap=n.readBytes():3===t?e.width=n.readVarint():4===t?e.height=n.readVarint():5===t?e.left=n.readSVarint():6===t?e.top=n.readSVarint():7===t&&(e.advance=n.readVarint())}function Af(t){return new Yu(t).readFields(kf,[])}var Sf=_f;function Ef(t){for(var e=0,n=0,r=0,i=t;r=0;h--){var d=o[h];if(!(f.w>d.w||f.h>d.h)){if(f.x=d.x,f.y=d.y,l=Math.max(l,f.y+f.h),s=Math.max(s,f.x+f.w),f.w===d.w&&f.h===d.h){var p=o.pop();h=0&&r>=t&&Hf[this.text.charCodeAt(r)];r--)n--;this.text=this.text.substring(t,n),this.sectionIndex=this.sectionIndex.slice(t,n)},Ff.prototype.substring=function(t,e){var n=new Ff;return n.text=this.text.substring(t,e),n.sectionIndex=this.sectionIndex.slice(t,e),n.sections=this.sections,n},Ff.prototype.toString=function(){return this.text},Ff.prototype.getMaxScale=function(){var t=this;return this.sectionIndex.reduce((function(e,n){return Math.max(e,t.sections[n].scale)}),0)},Ff.prototype.addTextSection=function(t,e){this.text+=t.text,this.sections.push(jf.forText(t.scale,t.fontStack||e));for(var n=this.sections.length-1,r=0;r=Nf?null:++this.imageSectionID:(this.imageSectionID=zf,this.imageSectionID)};var Hf={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},Vf={};function qf(t,e,n,r,i,a){if(e.imageName){var o=r[e.imageName];return o?o.displaySize[0]*e.scale*Gu/a+i:0}var s=n[e.fontStack],l=s&&s[t];return l?l.metrics.advance*e.scale+i:0}function Gf(t,e,n,r,i,a){for(var o=0,s=0;s=0,u=0,f=0;f0&&j>M&&(M=j)}else{var F=n[S.fontStack],B=F&&F[C];if(B&&B.rect)O=B.rect,L=B.metrics;else{var U=e[S.fontStack],H=U&&U[C];if(!H)continue;L=H.metrics}P=(w-S.scale)*Gu}R?(t.verticalizable=!0,T.push({glyph:C,imageName:I,x:h,y:d+P,vertical:R,scale:S.scale,fontStack:S.fontStack,sectionIndex:E,metrics:L,rect:O}),h+=D*S.scale+c):(T.push({glyph:C,imageName:I,x:h,y:d+P,vertical:R,scale:S.scale,fontStack:S.fontStack,sectionIndex:E,metrics:L,rect:O}),h+=L.advance*S.scale+c)}if(0!==T.length){var V=h-c;p=Math.max(V,p),Qf(T,0,T.length-1,v,M)}h=0;var q=a*w+M;k.lineOffset=Math.max(M,_),d+=q,g=Math.max(q,g),++m}else d+=a,++m}var G=d-Df,W=Zf(o),Y=W.horizontalAlign,$=W.verticalAlign;th(t.positionedLines,v,Y,$,p,g,a,G,i.length),t.top+=-$*G,t.bottom=t.top+G,t.left+=-Y*p,t.right=t.left+p}function Qf(t,e,n,r,i){if(r||i)for(var a=t[n],o=a.metrics.advance*a.scale,s=(t[n].x+o)*r,l=e;l<=n;l++)t[l].x-=s,t[l].y+=i}function th(t,e,n,r,i,a,o,s,l){var c=(e-n)*i,u=0;u=a!==o?-s*r-Df:(-r*l+.5)*o;for(var f=0,h=t;f-n/2;){if(--o<0)return!1;s-=t[o].dist(a),a=t[o]}s+=t[o].dist(t[o+1]),o++;for(var l=[],c=0;sr;)c-=l.shift().angleDelta;if(c>i)return!1;o++,s+=f.dist(h)}return!0}function uh(t){for(var e=0,n=0;nc){var p=(c-l)/d,g=Nn(f.x,h.x,p),v=Nn(f.y,h.y,p),m=new rh(g,v,h.angleTo(f),u);return m._round(),!o||ch(t,m,s,o,e)?m:void 0}l+=d}}function ph(t,e,n,r,i,a,o,s,l){var c=fh(r,a,o),u=hh(r,i),f=u*o,h=0===t[0].x||t[0].x===l||0===t[0].y||t[0].y===l;return e-f=0&&x=0&&w=0&&h+c<=u){var _=new rh(x,w,y,p);_._round(),r&&!ch(t,_,a,r,i)||d.push(_)}}f+=m}return s||d.length||o||(d=gh(t,f/2,n,r,i,a,o,!0,l)),d}function vh(t,e,n,r,i){for(var o=[],s=0;s=r&&h.x>=r||(f.x>=r?f=new a(r,f.y+(h.y-f.y)*((r-f.x)/(h.x-f.x)))._round():h.x>=r&&(h=new a(r,f.y+(h.y-f.y)*((r-f.x)/(h.x-f.x)))._round()),f.y>=i&&h.y>=i||(f.y>=i?f=new a(f.x+(h.x-f.x)*((i-f.y)/(h.y-f.y)),i)._round():h.y>=i&&(h=new a(f.x+(h.x-f.x)*((i-f.y)/(h.y-f.y)),i)._round()),c&&f.equals(c[c.length-1])||(c=[f],o.push(c)),c.push(h)))))}return o}var mh=Cf;function yh(t,e,n,r){var i=[],o=t.image,s=o.pixelRatio,l=o.paddedRect.w-2*mh,c=o.paddedRect.h-2*mh,u=t.right-t.left,f=t.bottom-t.top,h=o.stretchX||[[0,l]],d=o.stretchY||[[0,c]],p=function(t,e){return t+e[1]-e[0]},g=h.reduce(p,0),v=d.reduce(p,0),m=l-g,y=c-v,b=0,x=g,w=0,_=v,k=0,T=m,M=0,A=y;if(o.content&&r){var S=o.content;b=bh(h,0,S[0]),w=bh(d,0,S[1]),x=bh(h,S[0],S[2]),_=bh(d,S[1],S[3]),k=S[0]-b,M=S[1]-w,T=S[2]-S[0]-x,A=S[3]-S[1]-_}var E=function(r,i,l,c){var h=wh(r.stretch-b,x,u,t.left),d=_h(r.fixed-k,T,r.stretch,g),p=wh(i.stretch-w,_,f,t.top),m=_h(i.fixed-M,A,i.stretch,v),y=wh(l.stretch-b,x,u,t.left),S=_h(l.fixed-k,T,l.stretch,g),E=wh(c.stretch-w,_,f,t.top),C=_h(c.fixed-M,A,c.stretch,v),P=new a(h,p),L=new a(y,p),O=new a(y,E),I=new a(h,E),D=new a(d/s,m/s),R=new a(S/s,C/s),z=e*Math.PI/180;if(z){var N=Math.sin(z),j=Math.cos(z),F=[j,-N,N,j];P._matMult(F),L._matMult(F),I._matMult(F),O._matMult(F)}var B=r.stretch+r.fixed,U=l.stretch+l.fixed,H=i.stretch+i.fixed,V=c.stretch+c.fixed;return{tl:P,tr:L,bl:I,br:O,tex:{x:o.paddedRect.x+mh+B,y:o.paddedRect.y+mh+H,w:U-B,h:V-H},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:D,pixelOffsetBR:R,minFontScaleX:T/s/u,minFontScaleY:A/s/f,isSDF:n}};if(r&&(o.stretchX||o.stretchY))for(var C=xh(h,m,g),P=xh(d,y,v),L=0;L0&&(p=Math.max(10,p),this.circleDiameter=p)}else{var g=o.top*s-l,v=o.bottom*s+l,m=o.left*s-l,y=o.right*s+l,b=o.collisionPadding;if(b&&(m-=b[0]*s,g-=b[1]*s,y+=b[2]*s,v+=b[3]*s),u){var x=new a(m,g),w=new a(y,g),_=new a(m,v),k=new a(y,v),T=u*Math.PI/180;x._rotate(T),w._rotate(T),_._rotate(T),k._rotate(T),m=Math.min(x.x,w.x,_.x,k.x),y=Math.max(x.x,w.x,_.x,k.x),g=Math.min(x.y,w.y,_.y,k.y),v=Math.max(x.y,w.y,_.y,k.y)}t.emplaceBack(e.x,e.y,m,g,y,v,n,r,i)}this.boxEndIndex=t.length},Mh=function(t,e){if(void 0===t&&(t=[]),void 0===e&&(e=Ah),this.data=t,this.length=this.data.length,this.compare=e,this.length>0)for(var n=(this.length>>1)-1;n>=0;n--)this._down(n)};function Ah(t,e){return te?1:0}function Sh(t,e,n){void 0===e&&(e=1),void 0===n&&(n=!1);for(var r=1/0,i=1/0,o=-1/0,s=-1/0,l=t[0],c=0;co)&&(o=u.x),(!c||u.y>s)&&(s=u.y)}var f=o-r,h=s-i,d=Math.min(f,h),p=d/2,g=new Mh([],Eh);if(0===d)return new a(r,i);for(var v=r;vy.d||!y.d)&&(y=x,n&&console.log("found best %d after %d probes",Math.round(1e4*x.d)/1e4,b)),x.max-y.d<=e||(p=x.h/2,g.push(new Ch(x.p.x-p,x.p.y-p,p,t)),g.push(new Ch(x.p.x+p,x.p.y-p,p,t)),g.push(new Ch(x.p.x-p,x.p.y+p,p,t)),g.push(new Ch(x.p.x+p,x.p.y+p,p,t)),b+=4)}return n&&(console.log("num probes: "+b),console.log("best distance: "+y.d)),y.p}function Eh(t,e){return e.max-t.max}function Ch(t,e,n,r){this.p=new a(t,e),this.h=n,this.d=Ph(this.p,r),this.max=this.d+this.h*Math.SQRT2}function Ph(t,e){for(var n=!1,r=1/0,i=0;it.y!==u.y>t.y&&t.x<(u.x-c.x)*(t.y-c.y)/(u.y-c.y)+c.x&&(n=!n),r=Math.min(r,Ws(t,c,u))}return(n?1:-1)*Math.sqrt(r)}function Lh(t){for(var e=0,n=0,r=0,i=t[0],a=0,o=i.length,s=o-1;a0&&(this.data[0]=e,this._down(0)),t}},Mh.prototype.peek=function(){return this.data[0]},Mh.prototype._up=function(t){for(var e=this,n=e.data,r=e.compare,i=n[t];t>0;){var a=t-1>>1,o=n[a];if(r(i,o)>=0)break;n[t]=o,t=a}n[t]=i},Mh.prototype._down=function(t){for(var e=this,n=e.data,r=e.compare,i=this.length>>1,a=n[t];t=0)break;n[t]=s,t=o}n[t]=a};var Oh=7,Ih=Number.POSITIVE_INFINITY;function Dh(t,e){function n(t,e){var n=0,r=0;e<0&&(e=0);var i=e/Math.sqrt(2);switch(t){case"top-right":case"top-left":r=i-Oh;break;case"bottom-right":case"bottom-left":r=-i+Oh;break;case"bottom":r=-e+Oh;break;case"top":r=e-Oh}switch(t){case"top-right":case"bottom-right":n=-i;break;case"top-left":case"bottom-left":n=i;break;case"left":n=e;break;case"right":n=-e}return[n,r]}function r(t,e,n){var r=0,i=0;switch(e=Math.abs(e),n=Math.abs(n),t){case"top-right":case"top-left":case"top":i=n-Oh;break;case"bottom-right":case"bottom-left":case"bottom":i=-n+Oh}switch(t){case"top-right":case"bottom-right":case"right":r=-e;break;case"top-left":case"bottom-left":case"left":r=e}return[r,i]}return e[1]!==Ih?r(t,e[0],e[1]):n(t,e[0])}function Rh(t,e,n,r,i,a,o){t.createArrays();var s=512*t.overscaling;t.tilePixelRatio=Os/s,t.compareText={},t.iconsNeedLinear=!1;var l=t.layers[0].layout,c=t.layers[0]._unevaluatedLayout._values,u={};if("composite"===t.textSizeData.kind){var f=t.textSizeData,h=f.minZoom,d=f.maxZoom;u.compositeTextSizes=[c["text-size"].possiblyEvaluate(new $a(h),o),c["text-size"].possiblyEvaluate(new $a(d),o)]}if("composite"===t.iconSizeData.kind){var p=t.iconSizeData,g=p.minZoom,v=p.maxZoom;u.compositeIconSizes=[c["icon-size"].possiblyEvaluate(new $a(g),o),c["icon-size"].possiblyEvaluate(new $a(v),o)]}u.layoutTextSize=c["text-size"].possiblyEvaluate(new $a(t.zoom+1),o),u.layoutIconSize=c["icon-size"].possiblyEvaluate(new $a(t.zoom+1),o),u.textMaxSize=c["text-size"].possiblyEvaluate(new $a(18));for(var m=l.get("text-line-height")*Gu,y="map"===l.get("text-rotation-alignment")&&"point"!==l.get("symbol-placement"),b=l.get("text-keep-upright"),x=l.get("text-size"),w=function(){var a=k[_],s=l.get("text-font").evaluate(a,{},o).join(","),c=x.evaluate(a,{},o),f=u.layoutTextSize.evaluate(a,{},o),h=u.layoutIconSize.evaluate(a,{},o),d={horizontal:{},vertical:void 0},p=a.text,g=[0,0];if(p){var v=p.toString(),w=l.get("text-letter-spacing").evaluate(a,{},o)*Gu,T=Ta(v)?w:0,M=l.get("text-anchor").evaluate(a,{},o),A=l.get("text-variable-anchor");if(!A){var S=l.get("text-radial-offset").evaluate(a,{},o);g=S?Dh(M,[S*Gu,Ih]):l.get("text-offset").evaluate(a,{},o).map((function(t){return t*Gu}))}var E=y?"center":l.get("text-justify").evaluate(a,{},o),P=l.get("symbol-placement"),L="point"===P?l.get("text-max-width").evaluate(a,{},o)*Gu:0,O=function(){t.allowVerticalPlacement&&ka(v)&&(d.vertical=Uf(p,e,n,i,s,L,m,M,"left",T,g,If.vertical,!0,P,f,c))};if(!y&&A){for(var I="auto"===E?A.map((function(t){return zh(t)})):[E],D=!1,R=0;R=Os||f.y<0||f.y>=Os||Hh(t,f,s,n,r,i,h,t.layers[0],t.collisionBoxArray,e.index,e.sourceLayerIndex,t.index,y,_,M,l,x,k,A,p,e,a,c,u,o)};if("line"===S)for(var L=0,O=vh(e.geometry,0,0,Os,Os);L1){var B=dh(F,T,n.vertical||g,r,v,b);B&&P(F,B)}}else if("Polygon"===e.type)for(var U=0,H=Rc(e.geometry,0);UFh&&C(t.layerIds[0]+': Value for "text-size" is >= '+jh+'. Reduce your "text-size".'):"composite"===v.kind&&((m=[ih*d.compositeTextSizes[0].evaluate(o,{},p),ih*d.compositeTextSizes[1].evaluate(o,{},p)])[0]>Fh||m[1]>Fh)&&C(t.layerIds[0]+': Value for "text-size" is >= '+jh+'. Reduce your "text-size".'),t.addSymbols(t.text,g,m,s,a,o,c,e,l.lineStartIndex,l.lineLength,h,p);for(var y=0,b=u;yFh&&C(t.layerIds[0]+': Value for "icon-size" is >= '+jh+'. Reduce your "icon-size".'):"composite"===$.kind&&((X=[ih*w.compositeIconSizes[0].evaluate(x,{},k),ih*w.compositeIconSizes[1].evaluate(x,{},k)])[0]>Fh||X[1]>Fh)&&C(t.layerIds[0]+': Value for "icon-size" is >= '+jh+'. Reduce your "icon-size".'),t.addSymbols(t.icon,W,X,b,y,x,!1,e,L.lineStartIndex,L.lineLength,-1,k),z=t.icon.placedSymbolArray.length-1,Y&&(I=4*Y.length,t.addSymbols(t.icon,Y,X,b,y,x,If.vertical,e,L.lineStartIndex,L.lineLength,-1,k),N=t.icon.placedSymbolArray.length-1)}for(var K in r.horizontal){var Z=r.horizontal[K];if(!A){F=is(Z.text);var J=s.layout.get("text-rotate").evaluate(x,{},k);A=new Th(l,e,c,u,f,Z,h,d,p,J)}var Q=1===Z.positionedLines.length;if(D+=Bh(t,e,Z,a,s,p,x,g,L,r.vertical?If.horizontal:If.horizontalOnly,Q?Object.keys(r.horizontal):[K],j,z,w,k),Q)break}r.vertical&&(R+=Bh(t,e,r.vertical,a,s,p,x,g,L,If.vertical,["vertical"],j,N,w,k));var tt=A?A.boxStartIndex:t.collisionBoxArray.length,et=A?A.boxEndIndex:t.collisionBoxArray.length,nt=E?E.boxStartIndex:t.collisionBoxArray.length,rt=E?E.boxEndIndex:t.collisionBoxArray.length,it=S?S.boxStartIndex:t.collisionBoxArray.length,at=S?S.boxEndIndex:t.collisionBoxArray.length,ot=P?P.boxStartIndex:t.collisionBoxArray.length,st=P?P.boxEndIndex:t.collisionBoxArray.length,lt=-1,ct=function(t,e){return t&&t.circleDiameter?Math.max(t.circleDiameter,e):e};lt=ct(A,lt),lt=ct(E,lt),lt=ct(S,lt);var ut=(lt=ct(P,lt))>-1?1:0;ut&&(lt*=T/Gu),t.glyphOffsetArray.length>=Zh.MAX_GLYPHS&&C("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),void 0!==x.sortKey&&t.addToSortKeyRanges(t.symbolInstances.length,x.sortKey),t.symbolInstances.emplaceBack(e.x,e.y,j.right>=0?j.right:-1,j.center>=0?j.center:-1,j.left>=0?j.left:-1,j.vertical||-1,z,N,F,tt,et,nt,rt,it,at,ot,st,c,D,R,O,I,ut,0,h,B,U,lt)}function Vh(t,e,n,r){var i=t.compareText;if(e in i){for(var a=i[e],o=a.length-1;o>=0;o--)if(r.dist(a[o])0)&&("constant"!==a.value.kind||a.value.value.length>0),c="constant"!==s.value.kind||!!s.value.value||Object.keys(s.parameters).length>0,u=i.get("symbol-sort-key");if(this.features=[],l||c){for(var f=e.iconDependencies,h=e.glyphDependencies,d=e.availableImages,p=new $a(this.zoom),g=0,v=t;g=0;for(var I=0,D=T.sections;I=0;s--)a[s]={x:e[s].x,y:e[s].y,tileUnitDistanceFromAnchor:i},s>0&&(i+=e[s-1].dist(e[s]));for(var l=0;l0},Zh.prototype.hasIconData=function(){return this.icon.segments.get().length>0},Zh.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},Zh.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},Zh.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},Zh.prototype.addIndicesForPlacedSymbol=function(t,e){for(var n=t.placedSymbolArray.get(e),r=n.vertexStartIndex+4*n.numGlyphs,i=n.vertexStartIndex;i1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(t),this.sortedAngle=t,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var n=0,r=this.symbolInstanceIndexes;n=0&&r.indexOf(t)===n&&e.addIndicesForPlacedSymbol(e.text,t)})),a.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,a.verticalPlacedTextSymbolIndex),a.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,a.placedIconSymbolIndex),a.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,a.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},ga("SymbolBucket",Zh,{omit:["layers","collisionBoxArray","features","compareText"]}),Zh.MAX_GLYPHS=65535,Zh.addDynamicAttributes=Yh;var Qh=new lo({"symbol-placement":new ro(le.layout_symbol["symbol-placement"]),"symbol-spacing":new ro(le.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new ro(le.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new io(le.layout_symbol["symbol-sort-key"]),"symbol-z-order":new ro(le.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new ro(le.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new ro(le.layout_symbol["icon-ignore-placement"]),"icon-optional":new ro(le.layout_symbol["icon-optional"]),"icon-rotation-alignment":new ro(le.layout_symbol["icon-rotation-alignment"]),"icon-size":new io(le.layout_symbol["icon-size"]),"icon-text-fit":new ro(le.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new ro(le.layout_symbol["icon-text-fit-padding"]),"icon-image":new io(le.layout_symbol["icon-image"]),"icon-rotate":new io(le.layout_symbol["icon-rotate"]),"icon-padding":new ro(le.layout_symbol["icon-padding"]),"icon-keep-upright":new ro(le.layout_symbol["icon-keep-upright"]),"icon-offset":new io(le.layout_symbol["icon-offset"]),"icon-anchor":new io(le.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new ro(le.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new ro(le.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new ro(le.layout_symbol["text-rotation-alignment"]),"text-field":new io(le.layout_symbol["text-field"]),"text-font":new io(le.layout_symbol["text-font"]),"text-size":new io(le.layout_symbol["text-size"]),"text-max-width":new io(le.layout_symbol["text-max-width"]),"text-line-height":new ro(le.layout_symbol["text-line-height"]),"text-letter-spacing":new io(le.layout_symbol["text-letter-spacing"]),"text-justify":new io(le.layout_symbol["text-justify"]),"text-radial-offset":new io(le.layout_symbol["text-radial-offset"]),"text-variable-anchor":new ro(le.layout_symbol["text-variable-anchor"]),"text-anchor":new io(le.layout_symbol["text-anchor"]),"text-max-angle":new ro(le.layout_symbol["text-max-angle"]),"text-writing-mode":new ro(le.layout_symbol["text-writing-mode"]),"text-rotate":new io(le.layout_symbol["text-rotate"]),"text-padding":new ro(le.layout_symbol["text-padding"]),"text-keep-upright":new ro(le.layout_symbol["text-keep-upright"]),"text-transform":new io(le.layout_symbol["text-transform"]),"text-offset":new io(le.layout_symbol["text-offset"]),"text-allow-overlap":new ro(le.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new ro(le.layout_symbol["text-ignore-placement"]),"text-optional":new ro(le.layout_symbol["text-optional"])}),td={paint:new lo({"icon-opacity":new io(le.paint_symbol["icon-opacity"]),"icon-color":new io(le.paint_symbol["icon-color"]),"icon-halo-color":new io(le.paint_symbol["icon-halo-color"]),"icon-halo-width":new io(le.paint_symbol["icon-halo-width"]),"icon-halo-blur":new io(le.paint_symbol["icon-halo-blur"]),"icon-translate":new ro(le.paint_symbol["icon-translate"]),"icon-translate-anchor":new ro(le.paint_symbol["icon-translate-anchor"]),"text-opacity":new io(le.paint_symbol["text-opacity"]),"text-color":new io(le.paint_symbol["text-color"],{runtimeType:xe,getOverride:function(t){return t.textColor},hasOverride:function(t){return!!t.textColor}}),"text-halo-color":new io(le.paint_symbol["text-halo-color"]),"text-halo-width":new io(le.paint_symbol["text-halo-width"]),"text-halo-blur":new io(le.paint_symbol["text-halo-blur"]),"text-translate":new ro(le.paint_symbol["text-translate"]),"text-translate-anchor":new ro(le.paint_symbol["text-translate-anchor"])}),layout:Qh},ed=function(t){this.type=t.property.overrides?t.property.overrides.runtimeType:ve,this.defaultValue=t};ed.prototype.evaluate=function(t){if(t.formattedSection){var e=this.defaultValue.property.overrides;if(e&&e.hasOverride(t.formattedSection))return e.getOverride(t.formattedSection)}return t.feature&&t.featureState?this.defaultValue.evaluate(t.feature,t.featureState):this.defaultValue.property.specification.default},ed.prototype.eachChild=function(t){this.defaultValue.isConstant()||t(this.defaultValue.value._styleExpression.expression)},ed.prototype.outputDefined=function(){return!1},ed.prototype.serialize=function(){return null},ga("FormatSectionOverride",ed,{omit:["defaultValue"]});var nd=function(t){function e(e){t.call(this,e,td)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.recalculate=function(e,n){if(t.prototype.recalculate.call(this,e,n),"auto"===this.layout.get("icon-rotation-alignment")&&("point"!==this.layout.get("symbol-placement")?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),"auto"===this.layout.get("text-rotation-alignment")&&("point"!==this.layout.get("symbol-placement")?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),"auto"===this.layout.get("text-pitch-alignment")&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),"auto"===this.layout.get("icon-pitch-alignment")&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),"point"===this.layout.get("symbol-placement")){var r=this.layout.get("text-writing-mode");if(r){for(var i=[],a=0,o=r;a",targetMapId:r,sourceMapId:a.mapId})}}},yd.prototype.receive=function(t){var e=t.data,n=e.id;if(n&&(!e.targetMapId||this.mapId===e.targetMapId))if(""===e.type){delete this.tasks[n];var r=this.cancelCallbacks[n];delete this.cancelCallbacks[n],r&&r()}else I()||e.mustQueue?(this.tasks[n]=e,this.taskQueue.push(n),this.invoker.trigger()):this.processTask(n,e)},yd.prototype.process=function(){if(this.taskQueue.length){var t=this.taskQueue.shift(),e=this.tasks[t];delete this.tasks[t],this.taskQueue.length&&this.invoker.trigger(),e&&this.processTask(t,e)}},yd.prototype.processTask=function(t,e){var n=this;if(""===e.type){var r=this.callbacks[t];delete this.callbacks[t],r&&(e.error?r(xa(e.error)):r(null,xa(e.data)))}else{var i=!1,a=z(this.globalScope)?void 0:[],o=e.hasCallback?function(e,r){i=!0,delete n.cancelCallbacks[t],n.target.postMessage({id:t,type:"",sourceMapId:n.mapId,error:e?ba(e):null,data:ba(r,a)},a)}:function(t){i=!0},s=null,l=xa(e.data);if(this.parent[e.type])s=this.parent[e.type](e.sourceMapId,l,o);else if(this.parent.getWorkerSource){var c=e.type.split(".");s=this.parent.getWorkerSource(e.sourceMapId,c[0],l.source)[c[1]](l,o)}else o(new Error("Could not find function "+e.type));!i&&s&&s.cancel&&(this.cancelCallbacks[t]=s.cancel)}},yd.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};var wd=function(t,e){t&&(e?this.setSouthWest(t).setNorthEast(e):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]))};wd.prototype.setNorthEast=function(t){return this._ne=t instanceof kd?new kd(t.lng,t.lat):kd.convert(t),this},wd.prototype.setSouthWest=function(t){return this._sw=t instanceof kd?new kd(t.lng,t.lat):kd.convert(t),this},wd.prototype.extend=function(t){var e,n,r=this._sw,i=this._ne;if(t instanceof kd)e=t,n=t;else{if(!(t instanceof wd)){if(Array.isArray(t)){if(4===t.length||t.every(Array.isArray)){var a=t;return this.extend(wd.convert(a))}var o=t;return this.extend(kd.convert(o))}return this}if(e=t._sw,n=t._ne,!e||!n)return this}return r||i?(r.lng=Math.min(e.lng,r.lng),r.lat=Math.min(e.lat,r.lat),i.lng=Math.max(n.lng,i.lng),i.lat=Math.max(n.lat,i.lat)):(this._sw=new kd(e.lng,e.lat),this._ne=new kd(n.lng,n.lat)),this},wd.prototype.getCenter=function(){return new kd((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},wd.prototype.getSouthWest=function(){return this._sw},wd.prototype.getNorthEast=function(){return this._ne},wd.prototype.getNorthWest=function(){return new kd(this.getWest(),this.getNorth())},wd.prototype.getSouthEast=function(){return new kd(this.getEast(),this.getSouth())},wd.prototype.getWest=function(){return this._sw.lng},wd.prototype.getSouth=function(){return this._sw.lat},wd.prototype.getEast=function(){return this._ne.lng},wd.prototype.getNorth=function(){return this._ne.lat},wd.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},wd.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},wd.prototype.isEmpty=function(){return!(this._sw&&this._ne)},wd.prototype.contains=function(t){var e=kd.convert(t),n=e.lng,r=e.lat,i=this._sw.lat<=r&&r<=this._ne.lat,a=this._sw.lng<=n&&n<=this._ne.lng;return this._sw.lng>this._ne.lng&&(a=this._sw.lng>=n&&n>=this._ne.lng),i&&a},wd.convert=function(t){return!t||t instanceof wd?t:new wd(t)};var _d=6371008.8,kd=function(t,e){if(isNaN(t)||isNaN(e))throw new Error("Invalid LngLat object: ("+t+", "+e+")");if(this.lng=+t,this.lat=+e,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};kd.prototype.wrap=function(){return new kd(h(this.lng,-180,180),this.lat)},kd.prototype.toArray=function(){return[this.lng,this.lat]},kd.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},kd.prototype.distanceTo=function(t){var e=Math.PI/180,n=this.lat*e,r=t.lat*e,i=Math.sin(n)*Math.sin(r)+Math.cos(n)*Math.cos(r)*Math.cos((t.lng-this.lng)*e);return _d*Math.acos(Math.min(i,1))},kd.prototype.toBounds=function(t){void 0===t&&(t=0);var e=360*t/40075017,n=e/Math.cos(Math.PI/180*this.lat);return new wd(new kd(this.lng-n,this.lat-e),new kd(this.lng+n,this.lat+e))},kd.convert=function(t){if(t instanceof kd)return t;if(Array.isArray(t)&&(2===t.length||3===t.length))return new kd(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&"object"===typeof t&&null!==t)return new kd(Number("lng"in t?t.lng:t.lon),Number(t.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")};var Td=2*Math.PI*_d;function Md(t){return Td*Math.cos(t*Math.PI/180)}function Ad(t){return(180+t)/360}function Sd(t){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))/360}function Ed(t,e){return t/Md(e)}function Cd(t){return 360*t-180}function Pd(t){var e=180-360*t;return 360/Math.PI*Math.atan(Math.exp(e*Math.PI/180))-90}function Ld(t,e){return t*Md(Pd(e))}function Od(t){return 1/Math.cos(t*Math.PI/180)}var Id=function(t,e,n){void 0===n&&(n=0),this.x=+t,this.y=+e,this.z=+n};Id.fromLngLat=function(t,e){void 0===e&&(e=0);var n=kd.convert(t);return new Id(Ad(n.lng),Sd(n.lat),Ed(e,n.lat))},Id.prototype.toLngLat=function(){return new kd(Cd(this.x),Pd(this.y))},Id.prototype.toAltitude=function(){return Ld(this.z,this.y)},Id.prototype.meterInMercatorCoordinateUnits=function(){return 1/Td*Od(Pd(this.y))};var Dd=function(t,e,n){this.z=t,this.x=e,this.y=n,this.key=Nd(0,t,t,e,n)};Dd.prototype.equals=function(t){return this.z===t.z&&this.x===t.x&&this.y===t.y},Dd.prototype.url=function(t,e){var n=bd(this.x,this.y,this.z),r=jd(this.z,this.x,this.y);return t[(this.x+this.y)%t.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("tms"===e?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",r).replace("{bbox-epsg-3857}",n)},Dd.prototype.getTilePoint=function(t){var e=Math.pow(2,this.z);return new a((t.x*e-this.x)*Os,(t.y*e-this.y)*Os)},Dd.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var Rd=function(t,e){this.wrap=t,this.canonical=e,this.key=Nd(t,e.z,e.z,e.x,e.y)},zd=function(t,e,n,r,i){this.overscaledZ=t,this.wrap=e,this.canonical=new Dd(n,+r,+i),this.key=Nd(e,t,n,r,i)};function Nd(t,e,n,r,i){(t*=2)<0&&(t=-1*t-1);var a=1<0;a--)i+=(e&(r=1<this.canonical.z?new zd(t,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new zd(t,this.wrap,t,this.canonical.x>>e,this.canonical.y>>e)},zd.prototype.calculateScaledKey=function(t,e){var n=this.canonical.z-t;return t>this.canonical.z?Nd(this.wrap*+e,t,this.canonical.z,this.canonical.x,this.canonical.y):Nd(this.wrap*+e,t,t,this.canonical.x>>n,this.canonical.y>>n)},zd.prototype.isChildOf=function(t){if(t.wrap!==this.wrap)return!1;var e=this.canonical.z-t.canonical.z;return 0===t.overscaledZ||t.overscaledZ>e&&t.canonical.y===this.canonical.y>>e},zd.prototype.children=function(t){if(this.overscaledZ>=t)return[new zd(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var e=this.canonical.z+1,n=2*this.canonical.x,r=2*this.canonical.y;return[new zd(e,this.wrap,e,n,r),new zd(e,this.wrap,e,n+1,r),new zd(e,this.wrap,e,n,r+1),new zd(e,this.wrap,e,n+1,r+1)]},zd.prototype.isLessThan=function(t){return this.wrapt.wrap)&&(this.overscaledZt.overscaledZ)&&(this.canonical.xt.canonical.x)&&this.canonical.y=this.dim+1||e<-1||e>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(e+1)*this.stride+(t+1)},Fd.prototype._unpackMapbox=function(t,e,n){return(256*t*256+256*e+n)/10-1e4},Fd.prototype._unpackTerrarium=function(t,e,n){return 256*t+e+n/256-32768},Fd.prototype.getPixels=function(){return new ql({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},Fd.prototype.backfillBorder=function(t,e,n){if(this.dim!==t.dim)throw new Error("dem dimension mismatch");var r=e*this.dim,i=e*this.dim+this.dim,a=n*this.dim,o=n*this.dim+this.dim;switch(e){case-1:r=i-1;break;case 1:i=r+1}switch(n){case-1:a=o-1;break;case 1:o=a+1}for(var s=-e*this.dim,l=-n*this.dim,c=a;c=0&&u[3]>=0&&s.insert(o,u[0],u[1],u[2],u[3])}},Gd.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new ru.VectorTile(new Yu(this.rawTileData)).layers,this.sourceLayerCoder=new Ud(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},Gd.prototype.query=function(t,e,n,r){var i=this;this.loadVTLayers();for(var a=t.params||{},o=Os/t.tileSize/t.scale,s=Pi(a.filter),l=t.queryGeometry,c=t.queryPadding*o,u=Yd(l),f=this.grid.query(u.minX-c,u.minY-c,u.maxX+c,u.maxY+c),h=Yd(t.cameraQueryGeometry),d=0,p=this.grid3D.query(h.minX-c,h.minY-c,h.maxX+c,h.maxY+c,(function(e,n,r,i){return Xs(t.cameraQueryGeometry,e-c,n-c,r+c,i+c)}));dr)i=!1;else if(e)if(this.expirationTime=E.maxzoom||"none"!==E.visibility&&(l(S,this.zoom,r),(g[E.id]=E.createBucket({index:u.bucketLayerIDs.length,layers:S,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:x,sourceID:this.source})).populate(w,v,this.tileID.canonical),u.bucketLayerIDs.push(S.map((function(t){return t.id}))))}}}var C=t.mapObject(v.glyphDependencies,(function(t){return Object.keys(t).map(Number)}));Object.keys(C).length?i.send("getGlyphs",{uid:this.uid,stacks:C},(function(t,e){f||(f=t,h=e,O.call(s))})):h={};var P=Object.keys(v.iconDependencies);P.length?i.send("getImages",{icons:P,source:this.source,tileID:this.tileID,type:"icons"},(function(t,e){f||(f=t,d=e,O.call(s))})):d={};var L=Object.keys(v.patternDependencies);function O(){if(f)return a(f);if(h&&d&&p){var e=new o(h),n=new t.ImageAtlas(d,p);for(var i in g){var s=g[i];s instanceof t.SymbolBucket?(l(s.layers,this.zoom,r),t.performSymbolLayout(s,h,e.positions,d,n.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):s.hasPattern&&(s instanceof t.LineBucket||s instanceof t.FillBucket||s instanceof t.FillExtrusionBucket)&&(l(s.layers,this.zoom,r),s.addFeatures(v,this.tileID.canonical,n.patternPositions))}this.status="done",a(null,{buckets:t.values(g).filter((function(t){return!t.isEmpty()})),featureIndex:u,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:e.image,imageAtlas:n,glyphMap:this.returnDependencies?h:null,iconMap:this.returnDependencies?d:null,glyphPositions:this.returnDependencies?e.positions:null})}}L.length?i.send("getImages",{icons:L,source:this.source,tileID:this.tileID,type:"patterns"},(function(t,e){f||(f=t,p=e,O.call(s))})):p={},O.call(this)};var u=function(t,e,n,r){this.actor=t,this.layerIndex=e,this.availableImages=n,this.loadVectorData=r||c,this.loading={},this.loaded={}};u.prototype.loadTile=function(e,n){var r=this,i=e.uid;this.loading||(this.loading={});var a=!!(e&&e.request&&e.request.collectResourceTiming)&&new t.RequestPerformance(e.request),o=this.loading[i]=new s(e);o.abort=this.loadVectorData(e,(function(e,s){if(delete r.loading[i],e||!s)return o.status="done",r.loaded[i]=o,n(e);var l=s.rawData,c={};s.expires&&(c.expires=s.expires),s.cacheControl&&(c.cacheControl=s.cacheControl);var u={};if(a){var f=a.finish();f&&(u.resourceTiming=JSON.parse(JSON.stringify(f)))}o.vectorTile=s.vectorTile,o.parse(s.vectorTile,r.layerIndex,r.availableImages,r.actor,(function(e,r){if(e||!r)return n(e);n(null,t.extend({rawTileData:l.slice(0)},r,c,u))})),r.loaded=r.loaded||{},r.loaded[i]=o}))},u.prototype.reloadTile=function(t,e){var n=this,r=this.loaded,i=t.uid,a=this;if(r&&r[i]){var o=r[i];o.showCollisionBoxes=t.showCollisionBoxes;var s=function(t,r){var i=o.reloadCallback;i&&(delete o.reloadCallback,o.parse(o.vectorTile,a.layerIndex,n.availableImages,a.actor,i)),e(t,r)};"parsing"===o.status?o.reloadCallback=s:"done"===o.status&&(o.vectorTile?o.parse(o.vectorTile,this.layerIndex,this.availableImages,this.actor,s):s())}},u.prototype.abortTile=function(t,e){var n=this.loading,r=t.uid;n&&n[r]&&n[r].abort&&(n[r].abort(),delete n[r]),e()},u.prototype.removeTile=function(t,e){var n=this.loaded,r=t.uid;n&&n[r]&&delete n[r],e()};var f=t.window.ImageBitmap,h=function(){this.loaded={}};h.prototype.loadTile=function(e,n){var r=e.uid,i=e.encoding,a=e.rawImageData,o=f&&a instanceof f?this.getImageData(a):a,s=new t.DEMData(r,o,i);this.loaded=this.loaded||{},this.loaded[r]=s,n(null,s)},h.prototype.getImageData=function(e){this.offscreenCanvas&&this.offscreenCanvasContext||(this.offscreenCanvas=new OffscreenCanvas(e.width,e.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d")),this.offscreenCanvas.width=e.width,this.offscreenCanvas.height=e.height,this.offscreenCanvasContext.drawImage(e,0,0,e.width,e.height);var n=this.offscreenCanvasContext.getImageData(-1,-1,e.width+2,e.height+2);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),new t.RGBAImage({width:n.width,height:n.height},n.data)},h.prototype.removeTile=function(t){var e=this.loaded,n=t.uid;e&&e[n]&&delete e[n]};var d=p;function p(t,e){var n,r=t&&t.type;if("FeatureCollection"===r)for(n=0;n=0!==!!e&&t.reverse()}var m=t.vectorTile.VectorTileFeature.prototype.toGeoJSON,y=function(e){this._feature=e,this.extent=t.EXTENT,this.type=e.type,this.properties=e.tags,"id"in e&&!isNaN(e.id)&&(this.id=parseInt(e.id,10))};y.prototype.loadGeometry=function(){if(1===this._feature.type){for(var e=[],n=0,r=this._feature.geometry;n>31}function z(t,e){for(var n=t.loadGeometry(),r=t.type,i=0,a=0,o=n.length,s=0;s>1;F(t,e,o,r,i,a%2),j(t,e,n,r,o-1,a+1),j(t,e,n,o+1,i,a+1)}}function F(t,e,n,r,i,a){for(;i>r;){if(i-r>600){var o=i-r+1,s=n-r+1,l=Math.log(o),c=.5*Math.exp(2*l/3),u=.5*Math.sqrt(l*c*(o-c)/o)*(s-o/2<0?-1:1);F(t,e,n,Math.max(r,Math.floor(n-s*c/o+u)),Math.min(i,Math.floor(n+(o-s)*c/o+u)),a)}var f=e[2*n+a],h=r,d=i;for(B(t,e,r,n),e[2*i+a]>f&&B(t,e,r,i);hf;)d--}e[2*r+a]===f?B(t,e,r,d):B(t,e,++d,i),d<=n&&(r=d+1),n<=d&&(i=d-1)}}function B(t,e,n,r){U(t,n,r),U(e,2*n,2*r),U(e,2*n+1,2*r+1)}function U(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function H(t,e,n,r,i,a,o){for(var s,l,c=[0,t.length-1,0],u=[];c.length;){var f=c.pop(),h=c.pop(),d=c.pop();if(h-d<=o)for(var p=d;p<=h;p++)s=e[2*p],l=e[2*p+1],s>=n&&s<=i&&l>=r&&l<=a&&u.push(t[p]);else{var g=Math.floor((d+h)/2);s=e[2*g],l=e[2*g+1],s>=n&&s<=i&&l>=r&&l<=a&&u.push(t[g]);var v=(f+1)%2;(0===f?n<=s:r<=l)&&(c.push(d),c.push(g-1),c.push(v)),(0===f?i>=s:a>=l)&&(c.push(g+1),c.push(h),c.push(v))}}return u}function V(t,e,n,r,i,a){for(var o=[0,t.length-1,0],s=[],l=i*i;o.length;){var c=o.pop(),u=o.pop(),f=o.pop();if(u-f<=a)for(var h=f;h<=u;h++)q(e[2*h],e[2*h+1],n,r)<=l&&s.push(t[h]);else{var d=Math.floor((f+u)/2),p=e[2*d],g=e[2*d+1];q(p,g,n,r)<=l&&s.push(t[d]);var v=(c+1)%2;(0===c?n-i<=p:r-i<=g)&&(o.push(f),o.push(d-1),o.push(v)),(0===c?n+i>=p:r+i>=g)&&(o.push(d+1),o.push(u),o.push(v))}}return s}function q(t,e,n,r){var i=t-n,a=e-r;return i*i+a*a}T.fromVectorTileJs=M,T.fromGeojsonVt=A,T.GeoJSONWrapper=S;var G=function(t){return t[0]},W=function(t){return t[1]},Y=function(t,e,n,r,i){void 0===e&&(e=G),void 0===n&&(n=W),void 0===r&&(r=64),void 0===i&&(i=Float64Array),this.nodeSize=r,this.points=t;for(var a=t.length<65536?Uint16Array:Uint32Array,o=this.ids=new a(t.length),s=this.coords=new i(2*t.length),l=0;l=1e4?Math.round(e/1e3)+"k":e>=1e3?Math.round(e/100)/10+"k":e;return it(it({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:n})}function tt(t){return t/360+.5}function et(t){var e=Math.sin(t*Math.PI/180),n=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return n<0?0:n>1?1:n}function nt(t){return 360*(t-.5)}function rt(t){var e=(180-360*t)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}function it(t,e){for(var n in e)t[n]=e[n];return t}function at(t){return t.x}function ot(t){return t.y}function st(t,e,n,r){for(var i,a=r,o=n-e>>1,s=n-e,l=t[e],c=t[e+1],u=t[n],f=t[n+1],h=e+3;ha)i=h,a=d;else if(d===a){var p=Math.abs(h-o);pr&&(i-e>3&&st(t,e,i,r),t[i+2]=a,n-i>3&&st(t,i,n,r))}function lt(t,e,n,r,i,a){var o=i-n,s=a-r;if(0!==o||0!==s){var l=((t-n)*o+(e-r)*s)/(o*o+s*s);l>1?(n=i,r=a):l>0&&(n+=o*l,r+=s*l)}return(o=t-n)*o+(s=e-r)*s}function ct(t,e,n,r){var i={id:"undefined"===typeof t?null:t,type:e,geometry:n,tags:r,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return ut(i),i}function ut(t){var e=t.geometry,n=t.type;if("Point"===n||"MultiPoint"===n||"LineString"===n)ft(t,e);else if("Polygon"===n||"MultiLineString"===n)for(var r=0;r0&&(o+=r?(i*c-l*a)/2:Math.sqrt(Math.pow(l-i,2)+Math.pow(c-a,2))),i=l,a=c}var u=e.length-3;e[2]=1,st(e,0,u,n),e[u+2]=1,e.size=Math.abs(o),e.start=0,e.end=e.size}function vt(t,e,n,r){for(var i=0;i1?1:n}function bt(t,e,n,r,i,a,o,s){if(r/=e,a>=(n/=e)&&o=r)return null;for(var l=[],c=0;c=n&&p=r)){var g=[];if("Point"===h||"MultiPoint"===h)xt(f,g,n,r,i);else if("LineString"===h)wt(f,g,n,r,i,!1,s.lineMetrics);else if("MultiLineString"===h)kt(f,g,n,r,i,!1);else if("Polygon"===h)kt(f,g,n,r,i,!0);else if("MultiPolygon"===h)for(var v=0;v=n&&o<=r&&(e.push(t[a]),e.push(t[a+1]),e.push(t[a+2]))}}function wt(t,e,n,r,i,a,o){for(var s,l,c=_t(t),u=0===i?Mt:At,f=t.start,h=0;hn&&(l=u(c,d,p,v,m,n),o&&(c.start=f+s*l)):y>r?b=n&&(l=u(c,d,p,v,m,n),x=!0),b>r&&y<=r&&(l=u(c,d,p,v,m,r),x=!0),!a&&x&&(o&&(c.end=f+s*l),e.push(c),c=_t(t)),o&&(f+=s)}var w=t.length-3;d=t[w],p=t[w+1],g=t[w+2],(y=0===i?d:p)>=n&&y<=r&&Tt(c,d,p,g),w=c.length-3,a&&w>=3&&(c[w]!==c[0]||c[w+1]!==c[1])&&Tt(c,c[0],c[1],c[2]),c.length&&e.push(c)}function _t(t){var e=[];return e.size=t.size,e.start=t.start,e.end=t.end,e}function kt(t,e,n,r,i,a){for(var o=0;oo.maxX&&(o.maxX=u),f>o.maxY&&(o.maxY=f)}return o}function It(t,e,n,r){var i=e.geometry,a=e.type,o=[];if("Point"===a||"MultiPoint"===a)for(var s=0;s0&&e.size<(i?o:r))n.numPoints+=e.length/3;else{for(var s=[],l=0;lo)&&(n.numSimplified++,s.push(e[l]),s.push(e[l+1])),n.numPoints++;i&&Rt(s,a),t.push(s)}}function Rt(t,e){for(var n=0,r=0,i=t.length,a=i-2;r0===e)for(r=0,i=t.length;r24)throw new Error("maxZoom should be in the 0-24 range");if(e.promoteId&&e.generateId)throw new Error("promoteId and generateId cannot be used together.");var r=ht(t,e);this.tiles={},this.tileCoords=[],n&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",e.indexMaxZoom,e.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),(r=St(r,e)).length&&this.splitTile(r,0,0,0),n&&(r.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 jt(t,e,n){return 32*((1<=r;c--){var u=+Date.now();s=this._cluster(s,c),this.trees[c]=new Y(s,at,ot,a,Float32Array),n&&console.log("z%d: %d clusters in %dms",c,s.length,+Date.now()-u)}return n&&console.timeEnd("total time"),this},X.prototype.getClusters=function(t,e){var n=((t[0]+180)%360+360)%360-180,r=Math.max(-90,Math.min(90,t[1])),i=180===t[2]?180:((t[2]+180)%360+360)%360-180,a=Math.max(-90,Math.min(90,t[3]));if(t[2]-t[0]>=360)n=-180,i=180;else if(n>i){var o=this.getClusters([n,r,180,a],e),s=this.getClusters([-180,r,i,a],e);return o.concat(s)}for(var l=this.trees[this._limitZoom(e)],c=[],u=0,f=l.range(tt(n),et(a),tt(i),et(r));u1?this._map(c,!0):null,v=(l<<5)+(e+1)+this.points.length,m=0,y=f;m>5},X.prototype._getOriginZoom=function(t){return(t-this.points.length)%32},X.prototype._map=function(t,e){if(t.numPoints)return e?it({},t.properties):t.properties;var n=this.points[t.index].properties,r=this.options.map(n);return e&&r===n?it({},r):r},Nt.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},Nt.prototype.splitTile=function(t,e,n,r,i,a,o){for(var s=[t,e,n,r],l=this.options,c=l.debug;s.length;){r=s.pop(),n=s.pop(),e=s.pop(),t=s.pop();var u=1<1&&console.time("creation"),h=this.tiles[f]=Ot(t,e,n,r,l),this.tileCoords.push({z:e,x:n,y:r}),c)){c>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",e,n,r,h.numFeatures,h.numPoints,h.numSimplified),console.timeEnd("creation"));var d="z"+e;this.stats[d]=(this.stats[d]||0)+1,this.total++}if(h.source=t,i){if(e===l.maxZoom||e===i)continue;var p=1<1&&console.time("clipping");var g,v,m,y,b,x,w=.5*l.buffer/l.extent,_=.5-w,k=.5+w,T=1+w;g=v=m=y=null,b=bt(t,u,n-w,n+k,0,h.minX,h.maxX,l),x=bt(t,u,n+_,n+T,0,h.minX,h.maxX,l),t=null,b&&(g=bt(b,u,r-w,r+k,1,h.minY,h.maxY,l),v=bt(b,u,r+_,r+T,1,h.minY,h.maxY,l),b=null),x&&(m=bt(x,u,r-w,r+k,1,h.minY,h.maxY,l),y=bt(x,u,r+_,r+T,1,h.minY,h.maxY,l),x=null),c>1&&console.timeEnd("clipping"),s.push(g||[],e+1,2*n,2*r),s.push(v||[],e+1,2*n,2*r+1),s.push(m||[],e+1,2*n+1,2*r),s.push(y||[],e+1,2*n+1,2*r+1)}}},Nt.prototype.getTile=function(t,e,n){var r=this.options,i=r.extent,a=r.debug;if(t<0||t>24)return null;var o=1<1&&console.log("drilling down to z%d-%d-%d",t,e,n);for(var l,c=t,u=e,f=n;!l&&c>0;)c--,u=Math.floor(u/2),f=Math.floor(f/2),l=this.tiles[jt(c,u,f)];return l&&l.source?(a>1&&console.log("found parent tile z%d-%d-%d",c,u,f),a>1&&console.time("drilling down"),this.splitTile(l.source,c,u,f,t,e,n),a>1&&console.timeEnd("drilling down"),this.tiles[s]?Pt(this.tiles[s],i):null):null};var Ut=function(e){function n(t,n,r,i){e.call(this,t,n,r,Bt),i&&(this.loadGeoJSON=i)}return e&&(n.__proto__=e),n.prototype=Object.create(e&&e.prototype),n.prototype.constructor=n,n.prototype.loadData=function(t,e){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),this._pendingCallback=e,this._pendingLoadDataParams=t,this._state&&"Idle"!==this._state?this._state="NeedsLoadData":(this._state="Coalescing",this._loadData())},n.prototype._loadData=function(){var e=this;if(this._pendingCallback&&this._pendingLoadDataParams){var n=this._pendingCallback,r=this._pendingLoadDataParams;delete this._pendingCallback,delete this._pendingLoadDataParams;var i=!!(r&&r.request&&r.request.collectResourceTiming)&&new t.RequestPerformance(r.request);this.loadGeoJSON(r,(function(t,a){if(t||!a)return n(t);if("object"!==typeof a)return n(new Error("Input data given to '"+r.source+"' is not a valid GeoJSON object."));d(a,!0);try{e._geoJSONIndex=r.cluster?new X(Ht(r)).load(a.features):zt(a,r.geojsonVtOptions)}catch(t){return n(t)}e.loaded={};var o={};if(i){var s=i.finish();s&&(o.resourceTiming={},o.resourceTiming[r.source]=JSON.parse(JSON.stringify(s)))}n(null,o)}))}},n.prototype.coalesce=function(){"Coalescing"===this._state?this._state="Idle":"NeedsLoadData"===this._state&&(this._state="Coalescing",this._loadData())},n.prototype.reloadTile=function(t,n){var r=this.loaded,i=t.uid;return r&&r[i]?e.prototype.reloadTile.call(this,t,n):this.loadTile(t,n)},n.prototype.loadGeoJSON=function(e,n){if(e.request)t.getJSON(e.request,n);else{if("string"!==typeof e.data)return n(new Error("Input data given to '"+e.source+"' is not a valid GeoJSON object."));try{return n(null,JSON.parse(e.data))}catch(r){return n(new Error("Input data given to '"+e.source+"' is not a valid GeoJSON object."))}}},n.prototype.removeSource=function(t,e){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),e()},n.prototype.getClusterExpansionZoom=function(t,e){try{e(null,this._geoJSONIndex.getClusterExpansionZoom(t.clusterId))}catch(n){e(n)}},n.prototype.getClusterChildren=function(t,e){try{e(null,this._geoJSONIndex.getChildren(t.clusterId))}catch(n){e(n)}},n.prototype.getClusterLeaves=function(t,e){try{e(null,this._geoJSONIndex.getLeaves(t.clusterId,t.limit,t.offset))}catch(n){e(n)}},n}(u);function Ht(e){var n=e.superclusterOptions,r=e.clusterProperties;if(!r||!n)return n;for(var i={},a={},o={accumulated:null,zoom:0},s={properties:null},l=Object.keys(r),c=0,u=l;c1?"@2x":"",l=t.getJSON(n.transformRequest(n.normalizeSpriteURL(e,s,".json"),t.ResourceType.SpriteJSON),(function(t,e){l=null,o||(o=t,i=e,u())})),c=t.getImage(n.transformRequest(n.normalizeSpriteURL(e,s,".png"),t.ResourceType.SpriteImage),(function(t,e){c=null,o||(o=t,a=e,u())}));function u(){if(o)r(o);else if(i&&a){var e=t.browser.getImageData(a),n={};for(var s in i){var l=i[s],c=l.width,u=l.height,f=l.x,h=l.y,d=l.sdf,p=l.pixelRatio,g=l.stretchX,v=l.stretchY,m=l.content,y=new t.RGBAImage({width:c,height:u});t.RGBAImage.copy(e,y,{x:f,y:h},{x:0,y:0},{width:c,height:u}),n[s]={data:y,pixelRatio:p,sdf:d,stretchX:g,stretchY:v,content:m}}r(null,n)}}return{cancel:function(){l&&(l.cancel(),l=null),c&&(c.cancel(),c=null)}}}function h(t){var e=t.userImage;return!!(e&&e.render&&e.render())&&(t.data.replace(new Uint8Array(e.data.buffer)),!0)}n.suppressClick=function(){t.window.addEventListener("click",u,!0),t.window.setTimeout((function(){t.window.removeEventListener("click",u,!0)}),0)},n.mousePos=function(e,n){var r=e.getBoundingClientRect();return new t.Point(n.clientX-r.left-e.clientLeft,n.clientY-r.top-e.clientTop)},n.touchPos=function(e,n){for(var r=e.getBoundingClientRect(),i=[],a=0;a=0?0:e.button},n.remove=function(t){t.parentNode&&t.parentNode.removeChild(t)};var d=1,p=function(e){function n(){e.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new t.RGBAImage({width:1,height:1}),this.dirty=!0}return e&&(n.__proto__=e),n.prototype=Object.create(e&&e.prototype),n.prototype.constructor=n,n.prototype.isLoaded=function(){return this.loaded},n.prototype.setLoaded=function(t){if(this.loaded!==t&&(this.loaded=t,t)){for(var e=0,n=this.requestors;e=0?1.2:1))}function x(t,e,n,r,i,a,o){for(var s=0;s65535)e(new Error("glyphs > 65535 not supported"));else if(a.ranges[s])e(null,{stack:n,id:i,glyph:o});else{var l=a.requests[s];l||(l=a.requests[s]=[],_.loadGlyphRange(n,s,r.url,r.requestManager,(function(t,e){if(e){for(var n in e)r._doesCharSupportLocalGlyph(+n)||(a.glyphs[+n]=e[+n]);a.ranges[s]=!0}for(var i=0,o=l;i1&&(l=t[++s]);var u=Math.abs(c-l.left),f=Math.abs(c-l.right),h=Math.min(u,f),d=void 0,p=i/n*(r+1);if(l.isDash){var g=r-Math.abs(p);d=Math.sqrt(h*h+g*g)}else d=r-Math.sqrt(h*h+p*p);this.data[o+c]=Math.max(0,Math.min(255,d+128))}},S.prototype.addRegularDash=function(t){for(var e=t.length-1;e>=0;--e){var n=t[e],r=t[e+1];n.zeroLength?t.splice(e,1):r&&r.isDash===n.isDash&&(r.left=n.left,t.splice(e,1))}var i=t[0],a=t[t.length-1];i.isDash===a.isDash&&(i.left=a.left-this.width,a.right=i.right+this.width);for(var o=this.width*this.nextRow,s=0,l=t[s],c=0;c1&&(l=t[++s]);var u=Math.abs(c-l.left),f=Math.abs(c-l.right),h=Math.min(u,f),d=l.isDash?h:-h;this.data[o+c]=Math.max(0,Math.min(255,d+128))}},S.prototype.addDash=function(e,n){var r=n?7:0,i=2*r+1;if(this.nextRow+i>this.height)return t.warnOnce("LineAtlas out of space"),null;for(var a=0,o=0;o=r.minX&&e.x=r.minY&&e.y0&&(l[new t.OverscaledTileID(e.overscaledZ,a,n.z,i,n.y-1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,e.wrap,n.z,n.x,n.y-1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,s,n.z,o,n.y-1).key]={backfilled:!1}),n.y+10&&(r.resourceTiming=e._resourceTiming,e._resourceTiming=[]),e.fire(new t.Event("data",r))}}))},n.prototype.onAdd=function(t){this.map=t,this.load()},n.prototype.setData=function(e){var n=this;return this._data=e,this.fire(new t.Event("dataloading",{dataType:"source"})),this._updateWorkerData((function(e){if(e)n.fire(new t.ErrorEvent(e));else{var r={dataType:"source",sourceDataType:"content"};n._collectResourceTiming&&n._resourceTiming&&n._resourceTiming.length>0&&(r.resourceTiming=n._resourceTiming,n._resourceTiming=[]),n.fire(new t.Event("data",r))}})),this},n.prototype.getClusterExpansionZoom=function(t,e){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:t,source:this.id},e),this},n.prototype.getClusterChildren=function(t,e){return this.actor.send("geojson.getClusterChildren",{clusterId:t,source:this.id},e),this},n.prototype.getClusterLeaves=function(t,e,n,r){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:t,limit:e,offset:n},r),this},n.prototype._updateWorkerData=function(e){var n=this;this._loaded=!1;var r=t.extend({},this.workerOptions),i=this._data;"string"===typeof i?(r.request=this.map._requestManager.transformRequest(t.browser.resolveURL(i),t.ResourceType.Source),r.request.collectResourceTiming=this._collectResourceTiming):r.data=JSON.stringify(i),this.actor.send(this.type+".loadData",r,(function(t,i){n._removed||i&&i.abandoned||(n._loaded=!0,i&&i.resourceTiming&&i.resourceTiming[n.id]&&(n._resourceTiming=i.resourceTiming[n.id].slice(0)),n.actor.send(n.type+".coalesce",{source:r.source},null),e(t))}))},n.prototype.loaded=function(){return this._loaded},n.prototype.loadTile=function(e,n){var r=this,i=e.actor?"reloadTile":"loadTile";e.actor=this.actor;var a={type:this.type,uid:e.uid,tileID:e.tileID,zoom:e.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:t.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};e.request=this.actor.send(i,a,(function(t,a){return delete e.request,e.unloadVectorData(),e.aborted?n(null):t?n(t):(e.loadVectorData(a,r.map.painter,"reloadTile"===i),n(null))}))},n.prototype.abortTile=function(t){t.request&&(t.request.cancel(),delete t.request),t.aborted=!0},n.prototype.unloadTile=function(t){t.unloadVectorData(),this.actor.send("removeTile",{uid:t.uid,type:this.type,source:this.id})},n.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},n.prototype.serialize=function(){return t.extend({},this._options,{type:this.type,data:this._data})},n.prototype.hasTransition=function(){return!1},n}(t.Evented),R=t.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),z=function(e){function n(t,n,r,i){e.call(this),this.id=t,this.dispatcher=r,this.coordinates=n.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(i),this.options=n}return e&&(n.__proto__=e),n.prototype=Object.create(e&&e.prototype),n.prototype.constructor=n,n.prototype.load=function(e,n){var r=this;this._loaded=!1,this.fire(new t.Event("dataloading",{dataType:"source"})),this.url=this.options.url,t.getImage(this.map._requestManager.transformRequest(this.url,t.ResourceType.Image),(function(i,a){r._loaded=!0,i?r.fire(new t.ErrorEvent(i)):a&&(r.image=a,e&&(r.coordinates=e),n&&n(),r._finishLoading())}))},n.prototype.loaded=function(){return this._loaded},n.prototype.updateImage=function(t){var e=this;return this.image&&t.url?(this.options.url=t.url,this.load(t.coordinates,(function(){e.texture=null})),this):this},n.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new t.Event("data",{dataType:"source",sourceDataType:"metadata"})))},n.prototype.onAdd=function(t){this.map=t,this.load()},n.prototype.setCoordinates=function(e){var n=this;this.coordinates=e;var r=e.map(t.MercatorCoordinate.fromLngLat);this.tileID=N(r),this.minzoom=this.maxzoom=this.tileID.z;var i=r.map((function(t){return n.tileID.getTilePoint(t)._round()}));return this._boundsArray=new t.StructArrayLayout4i8,this._boundsArray.emplaceBack(i[0].x,i[0].y,0,0),this._boundsArray.emplaceBack(i[1].x,i[1].y,t.EXTENT,0),this._boundsArray.emplaceBack(i[3].x,i[3].y,0,t.EXTENT),this._boundsArray.emplaceBack(i[2].x,i[2].y,t.EXTENT,t.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new t.Event("data",{dataType:"source",sourceDataType:"content"})),this},n.prototype.prepare=function(){if(0!==Object.keys(this.tiles).length&&this.image){var e=this.map.painter.context,n=e.gl;for(var r in this.boundsBuffer||(this.boundsBuffer=e.createVertexBuffer(this._boundsArray,R.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new t.Texture(e,this.image,n.RGBA),this.texture.bind(n.LINEAR,n.CLAMP_TO_EDGE)),this.tiles){var i=this.tiles[r];"loaded"!==i.state&&(i.state="loaded",i.texture=this.texture)}}},n.prototype.loadTile=function(t,e){this.tileID&&this.tileID.equals(t.tileID.canonical)?(this.tiles[String(t.tileID.wrap)]=t,t.buckets={},e(null)):(t.state="errored",e(null))},n.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},n.prototype.hasTransition=function(){return!1},n}(t.Evented);function N(e){for(var n=1/0,r=1/0,i=-1/0,a=-1/0,o=0,s=e;on.end(0)?this.fire(new t.ErrorEvent(new t.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+n.start(0)+" and "+n.end(0)+"-second mark."))):this.video.currentTime=e}},n.prototype.getVideo=function(){return this.video},n.prototype.onAdd=function(t){this.map||(this.map=t,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},n.prototype.prepare=function(){if(!(0===Object.keys(this.tiles).length||this.video.readyState<2)){var e=this.map.painter.context,n=e.gl;for(var r in this.boundsBuffer||(this.boundsBuffer=e.createVertexBuffer(this._boundsArray,R.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(n.LINEAR,n.CLAMP_TO_EDGE),n.texSubImage2D(n.TEXTURE_2D,0,0,0,n.RGBA,n.UNSIGNED_BYTE,this.video)):(this.texture=new t.Texture(e,this.video,n.RGBA),this.texture.bind(n.LINEAR,n.CLAMP_TO_EDGE)),this.tiles){var i=this.tiles[r];"loaded"!==i.state&&(i.state="loaded",i.texture=this.texture)}}},n.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},n.prototype.hasTransition=function(){return this.video&&!this.video.paused},n}(z),F=function(e){function n(n,r,i,a){e.call(this,n,r,i,a),r.coordinates?Array.isArray(r.coordinates)&&4===r.coordinates.length&&!r.coordinates.some((function(t){return!Array.isArray(t)||2!==t.length||t.some((function(t){return"number"!==typeof t}))}))||this.fire(new t.ErrorEvent(new t.ValidationError("sources."+n,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new t.ErrorEvent(new t.ValidationError("sources."+n,null,'missing required property "coordinates"'))),r.animate&&"boolean"!==typeof r.animate&&this.fire(new t.ErrorEvent(new t.ValidationError("sources."+n,null,'optional "animate" property must be a boolean value'))),r.canvas?"string"===typeof r.canvas||r.canvas instanceof t.window.HTMLCanvasElement||this.fire(new t.ErrorEvent(new t.ValidationError("sources."+n,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 t.ErrorEvent(new t.ValidationError("sources."+n,null,'missing required property "canvas"'))),this.options=r,this.animate=void 0===r.animate||r.animate}return e&&(n.__proto__=e),n.prototype=Object.create(e&&e.prototype),n.prototype.constructor=n,n.prototype.load=function(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof t.window.HTMLCanvasElement?this.options.canvas:t.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new t.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())},n.prototype.getCanvas=function(){return this.canvas},n.prototype.onAdd=function(t){this.map=t,this.load(),this.canvas&&this.animate&&this.play()},n.prototype.onRemove=function(){this.pause()},n.prototype.prepare=function(){var e=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,e=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,e=!0),!this._hasInvalidDimensions()&&0!==Object.keys(this.tiles).length){var n=this.map.painter.context,r=n.gl;for(var i in this.boundsBuffer||(this.boundsBuffer=n.createVertexBuffer(this._boundsArray,R.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(e||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new t.Texture(n,this.canvas,r.RGBA,{premultiply:!0}),this.tiles){var a=this.tiles[i];"loaded"!==a.state&&(a.state="loaded",a.texture=this.texture)}}},n.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},n.prototype.hasTransition=function(){return this._playing},n.prototype._hasInvalidDimensions=function(){for(var t=0,e=[this.canvas.width,this.canvas.height];tthis.max){var o=this._getAndRemoveByKey(this.order[0]);o&&this.onRemove(o)}return this},Z.prototype.has=function(t){return t.wrapped().key in this.data},Z.prototype.getAndRemove=function(t){return this.has(t)?this._getAndRemoveByKey(t.wrapped().key):null},Z.prototype._getAndRemoveByKey=function(t){var e=this.data[t].shift();return e.timeout&&clearTimeout(e.timeout),0===this.data[t].length&&delete this.data[t],this.order.splice(this.order.indexOf(t),1),e.value},Z.prototype.getByKey=function(t){var e=this.data[t];return e?e[0].value:null},Z.prototype.get=function(t){return this.has(t)?this.data[t.wrapped().key][0].value:null},Z.prototype.remove=function(t,e){if(!this.has(t))return this;var n=t.wrapped().key,r=void 0===e?0:this.data[n].indexOf(e),i=this.data[n][r];return this.data[n].splice(r,1),i.timeout&&clearTimeout(i.timeout),0===this.data[n].length&&delete this.data[n],this.onRemove(i.value),this.order.splice(this.order.indexOf(n),1),this},Z.prototype.setMaxSize=function(t){for(this.max=t;this.order.length>this.max;){var e=this._getAndRemoveByKey(this.order[0]);e&&this.onRemove(e)}return this},Z.prototype.filter=function(t){var e=[];for(var n in this.data)for(var r=0,i=this.data[n];r1||(Math.abs(n)>1&&(1===Math.abs(n+i)?n+=i:1===Math.abs(n-i)&&(n-=i)),e.dem&&t.dem&&(t.dem.backfillBorder(e.dem,n,r),t.neighboringTiles&&t.neighboringTiles[a]&&(t.neighboringTiles[a].backfilled=!0)))}},n.prototype.getTile=function(t){return this.getTileByID(t.key)},n.prototype.getTileByID=function(t){return this._tiles[t]},n.prototype._retainLoadedChildren=function(t,e,n,r){for(var i in this._tiles){var a=this._tiles[i];if(!(r[i]||!a.hasData()||a.tileID.overscaledZ<=e||a.tileID.overscaledZ>n)){for(var o=a.tileID;a&&a.tileID.overscaledZ>e+1;){var s=a.tileID.scaledTo(a.tileID.overscaledZ-1);(a=this._tiles[s.key])&&a.hasData()&&(o=s)}for(var l=o;l.overscaledZ>e;)if(t[(l=l.scaledTo(l.overscaledZ-1)).key]){r[o.key]=o;break}}}},n.prototype.findLoadedParent=function(t,e){if(t.key in this._loadedParentTiles){var n=this._loadedParentTiles[t.key];return n&&n.tileID.overscaledZ>=e?n:null}for(var r=t.overscaledZ-1;r>=e;r--){var i=t.scaledTo(r),a=this._getLoadedTile(i);if(a)return a}},n.prototype._getLoadedTile=function(t){var e=this._tiles[t.key];return e&&e.hasData()?e:this._cache.getByKey(t.wrapped().key)},n.prototype.updateCacheSize=function(t){var e=(Math.ceil(t.width/this._source.tileSize)+1)*(Math.ceil(t.height/this._source.tileSize)+1),n=5,r=Math.floor(e*n),i="number"===typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,r):r;this._cache.setMaxSize(i)},n.prototype.handleWrapJump=function(t){var e=(t-(void 0===this._prevLng?t:this._prevLng))/360,n=Math.round(e);if(this._prevLng=t,n){var r={};for(var i in this._tiles){var a=this._tiles[i];a.tileID=a.tileID.unwrapTo(a.tileID.wrap+n),r[a.tileID.key]=a}for(var o in this._tiles=r,this._timers)clearTimeout(this._timers[o]),delete this._timers[o];for(var s in this._tiles){var l=this._tiles[s];this._setTileReloadTimer(s,l)}}},n.prototype.update=function(e){var r=this;if(this.transform=e,this._sourceLoaded&&!this._paused){var i;this.updateCacheSize(e),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used?this._source.tileID?i=e.getVisibleUnwrappedCoordinates(this._source.tileID).map((function(e){return new t.OverscaledTileID(e.canonical.z,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y)})):(i=e.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(i=i.filter((function(t){return r._source.hasTile(t)})))):i=[];var a=e.coveringZoomLevel(this._source),o=Math.max(a-n.maxOverzooming,this._source.minzoom),s=Math.max(a+n.maxUnderzooming,this._source.minzoom),l=this._updateRetainedTiles(i,a);if(Jt(this._source.type)){for(var c={},u={},f=0,h=Object.keys(l);fthis._source.maxzoom){var v=p.children(this._source.maxzoom)[0],m=this.getTile(v);if(m&&m.hasData()){r[v.key]=v;continue}}else{var y=p.children(this._source.maxzoom);if(r[y[0].key]&&r[y[1].key]&&r[y[2].key]&&r[y[3].key])continue}for(var b=g.wasRequested(),x=p.overscaledZ-1;x>=a;--x){var w=p.scaledTo(x);if(i[w.key])break;if(i[w.key]=!0,!(g=this.getTile(w))&&b&&(g=this._addTile(w)),g&&(r[w.key]=w,b=g.wasRequested(),g.hasData()))break}}}return r},n.prototype._updateLoadedParentTileCache=function(){for(var t in this._loadedParentTiles={},this._tiles){for(var e=[],n=void 0,r=this._tiles[t].tileID;r.overscaledZ>0;){if(r.key in this._loadedParentTiles){n=this._loadedParentTiles[r.key];break}e.push(r.key);var i=r.scaledTo(r.overscaledZ-1);if(n=this._getLoadedTile(i))break;r=i}for(var a=0,o=e;a0||(e.hasData()&&"reloading"!==e.state?this._cache.add(e.tileID,e,e.getExpiryTimeout()):(e.aborted=!0,this._abortTile(e),this._unloadTile(e))))},n.prototype.clearTiles=function(){for(var t in this._shouldReloadOnResume=!1,this._paused=!1,this._tiles)this._removeTile(t);this._cache.reset()},n.prototype.tilesIn=function(e,n,r){var i=this,a=[],o=this.transform;if(!o)return a;for(var s=r?o.getCameraQueryGeometry(e):e,l=e.map((function(t){return o.pointCoordinate(t)})),c=s.map((function(t){return o.pointCoordinate(t)})),u=this.getIds(),f=1/0,h=1/0,d=-1/0,p=-1/0,g=0,v=c;g=0&&m[1].y+v>=0){var y=l.map((function(t){return s.getTilePoint(t)})),b=c.map((function(t){return s.getTilePoint(t)}));a.push({tile:r,tileID:s,queryGeometry:y,cameraQueryGeometry:b,scale:g})}}},b=0;b=t.browser.now())return!0}return!1},n.prototype.setFeatureState=function(t,e,n){t=t||"_geojsonTileLayer",this._state.updateState(t,e,n)},n.prototype.removeFeatureState=function(t,e,n){t=t||"_geojsonTileLayer",this._state.removeFeatureState(t,e,n)},n.prototype.getFeatureState=function(t,e){return t=t||"_geojsonTileLayer",this._state.getState(t,e)},n.prototype.setDependencies=function(t,e,n){var r=this._tiles[t];r&&r.setDependencies(e,n)},n.prototype.reloadTilesForDependencies=function(t,e){for(var n in this._tiles)this._tiles[n].hasDependency(t,e)&&this._reloadTile(n,"reloading");this._cache.filter((function(n){return!n.hasDependency(t,e)}))},n}(t.Evented);function Zt(t,e){var n=Math.abs(2*t.wrap)-+(t.wrap<0),r=Math.abs(2*e.wrap)-+(e.wrap<0);return t.overscaledZ-e.overscaledZ||r-n||e.canonical.y-t.canonical.y||e.canonical.x-t.canonical.x}function Jt(t){return"raster"===t||"image"===t||"video"===t}function Qt(){return new t.window.Worker(us.workerUrl)}Kt.maxOverzooming=10,Kt.maxUnderzooming=3;var te="mapboxgl_preloaded_worker_pool",ee=function(){this.active={}};ee.prototype.acquire=function(t){if(!this.workers)for(this.workers=[];this.workers.length0?(i-o)/s:0;return this.points[a].mult(1-l).add(this.points[n].mult(l))};var _e=function(t,e,n){var r=this.boxCells=[],i=this.circleCells=[];this.xCellCount=Math.ceil(t/n),this.yCellCount=Math.ceil(e/n);for(var a=0;a=-e[0]&&n<=e[0]&&r>=-e[1]&&r<=e[1]}function Ee(e,n,r,i,a,o,s,l){var c=i?e.textSizeData:e.iconSizeData,u=t.evaluateSizeForZoom(c,r.transform.zoom),f=[256/r.width*2+1,256/r.height*2+1],h=i?e.text.dynamicLayoutVertexArray:e.icon.dynamicLayoutVertexArray;h.clear();for(var d=e.lineVertexArray,p=i?e.text.placedSymbolArray:e.icon.placedSymbolArray,g=r.transform.width/r.transform.height,v=!1,m=0;mMath.abs(r.x-n.x)*i?{useVertical:!0}:(e===t.WritingMode.vertical?n.yr.x)?{needsFlipping:!0}:null}function Le(e,n,r,i,a,o,s,l,c,u,f,h,d,p){var g,v=n/24,m=e.lineOffsetX*v,y=e.lineOffsetY*v;if(e.numGlyphs>1){var b=e.glyphStartIndex+e.numGlyphs,x=e.lineStartIndex,w=e.lineStartIndex+e.lineLength,_=Ce(v,l,m,y,r,f,h,e,c,o,d);if(!_)return{notEnoughRoom:!0};var k=Me(_.first.point,s).point,T=Me(_.last.point,s).point;if(i&&!r){var M=Pe(e.writingMode,k,T,p);if(M)return M}g=[_.first];for(var A=e.glyphStartIndex+1;A0?P.point:Oe(h,C,S,1,a),O=Pe(e.writingMode,S,L,p);if(O)return O}var I=Ie(v*l.getoffsetX(e.glyphStartIndex),m,y,r,f,h,e.segment,e.lineStartIndex,e.lineStartIndex+e.lineLength,c,o,d);if(!I)return{notEnoughRoom:!0};g=[I]}for(var D=0,R=g;D0?1:-1,g=0;i&&(p*=-1,g=Math.PI),p<0&&(g+=Math.PI);for(var v=p>0?l+s:l+s+1,m=a,y=a,b=0,x=0,w=Math.abs(d),_=[];b+x<=w;){if((v+=p)=c)return null;if(y=m,_.push(m),void 0===(m=h[v])){var k=new t.Point(u.getx(v),u.gety(v)),T=Me(k,f);if(T.signedDistanceFromCamera>0)m=h[v]=T.point;else{var M=v-p;m=Oe(0===b?o:new t.Point(u.getx(M),u.gety(M)),k,y,w-b+1,f)}}b+=x,x=y.dist(m)}var A=(w-b)/x,S=m.sub(y),E=S.mult(A)._add(y);E._add(S._unit()._perp()._mult(r*p));var C=g+Math.atan2(m.y-y.y,m.x-y.x);return _.push(E),{point:E,angle:C,path:_}}_e.prototype.keysLength=function(){return this.boxKeys.length+this.circleKeys.length},_e.prototype.insert=function(t,e,n,r,i){this._forEachCell(e,n,r,i,this._insertBoxCell,this.boxUid++),this.boxKeys.push(t),this.bboxes.push(e),this.bboxes.push(n),this.bboxes.push(r),this.bboxes.push(i)},_e.prototype.insertCircle=function(t,e,n,r){this._forEachCell(e-r,n-r,e+r,n+r,this._insertCircleCell,this.circleUid++),this.circleKeys.push(t),this.circles.push(e),this.circles.push(n),this.circles.push(r)},_e.prototype._insertBoxCell=function(t,e,n,r,i,a){this.boxCells[i].push(a)},_e.prototype._insertCircleCell=function(t,e,n,r,i,a){this.circleCells[i].push(a)},_e.prototype._query=function(t,e,n,r,i,a){if(n<0||t>this.width||r<0||e>this.height)return!i&&[];var o=[];if(t<=0&&e<=0&&this.width<=n&&this.height<=r){if(i)return!0;for(var s=0;s0:o},_e.prototype._queryCircle=function(t,e,n,r,i){var a=t-n,o=t+n,s=e-n,l=e+n;if(o<0||a>this.width||l<0||s>this.height)return!r&&[];var c=[],u={hitTest:r,circle:{x:t,y:e,radius:n},seenUids:{box:{},circle:{}}};return this._forEachCell(a,s,o,l,this._queryCellCircle,c,u,i),r?c.length>0:c},_e.prototype.query=function(t,e,n,r,i){return this._query(t,e,n,r,!1,i)},_e.prototype.hitTest=function(t,e,n,r,i){return this._query(t,e,n,r,!0,i)},_e.prototype.hitTestCircle=function(t,e,n,r){return this._queryCircle(t,e,n,!0,r)},_e.prototype._queryCell=function(t,e,n,r,i,a,o,s){var l=o.seenUids,c=this.boxCells[i];if(null!==c)for(var u=this.bboxes,f=0,h=c;f=u[p+0]&&r>=u[p+1]&&(!s||s(this.boxKeys[d]))){if(o.hitTest)return a.push(!0),!0;a.push({key:this.boxKeys[d],x1:u[p],y1:u[p+1],x2:u[p+2],y2:u[p+3]})}}}var g=this.circleCells[i];if(null!==g)for(var v=this.circles,m=0,y=g;mo*o+s*s},_e.prototype._circleAndRectCollide=function(t,e,n,r,i,a,o){var s=(a-r)/2,l=Math.abs(t-(r+s));if(l>s+n)return!1;var c=(o-i)/2,u=Math.abs(e-(i+c));if(u>c+n)return!1;if(l<=s||u<=c)return!0;var f=l-s,h=u-c;return f*f+h*h<=n*n};var De=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function Re(t,e){for(var n=0;n=1;O--)L.push(C.path[O]);for(var I=1;I0){for(var N=L[0].clone(),j=L[0].clone(),F=1;F=A.x&&j.x<=S.x&&N.y>=A.y&&j.y<=S.y?[L]:j.xS.x||j.yS.y?[]:t.clipLine([L],A.x,A.y,S.x,S.y)}for(var B=0,U=z;B=this.screenRightBoundary||rthis.screenBottomBoundary},je.prototype.isInsideGrid=function(t,e,n,r){return n>=0&&t=0&&e0?(this.prevPlacement&&this.prevPlacement.variableOffsets[f.crossTileID]&&this.prevPlacement.placements[f.crossTileID]&&this.prevPlacement.placements[f.crossTileID].text&&(g=this.prevPlacement.variableOffsets[f.crossTileID].anchor),this.variableOffsets[f.crossTileID]={textOffset:v,width:n,height:r,anchor:t,textBoxScale:i,prevAnchor:g},this.markUsedJustification(h,t,f,d),h.allowVerticalPlacement&&(this.markUsedOrientation(h,d,f),this.placedOrientations[f.crossTileID]=d),{shift:m,placedGlyphBoxes:y}):void 0},$e.prototype.placeLayerBucketPart=function(e,n,r){var i=this,a=e.parameters,o=a.bucket,s=a.layout,l=a.posMatrix,c=a.textLabelPlaneMatrix,u=a.labelToScreenMatrix,f=a.textPixelRatio,h=a.holdingForFade,d=a.collisionBoxArray,p=a.partiallyEvaluatedTextSize,g=a.collisionGroup,v=s.get("text-optional"),m=s.get("icon-optional"),y=s.get("text-allow-overlap"),b=s.get("icon-allow-overlap"),x="map"===s.get("text-rotation-alignment"),w="map"===s.get("text-pitch-alignment"),_="none"!==s.get("icon-text-fit"),k="viewport-y"===s.get("symbol-z-order"),T=y&&(b||!o.hasIconData()||m),M=b&&(y||!o.hasTextData()||v);!o.collisionArrays&&d&&o.deserializeCollisionBoxes(d);var A=function(e,a){if(!n[e.crossTileID])if(h)i.placements[e.crossTileID]=new He(!1,!1,!1);else{var d=!1,k=!1,A=!0,S=null,E={box:null,offscreen:null},C={box:null,offscreen:null},P=null,L=null,O=null,I=0,D=0,R=0;a.textFeatureIndex?I=a.textFeatureIndex:e.useRuntimeCollisionCircles&&(I=e.featureIndex),a.verticalTextFeatureIndex&&(D=a.verticalTextFeatureIndex);var z=a.textBox;if(z){var N=function(n){var r=t.WritingMode.horizontal;if(o.allowVerticalPlacement&&!n&&i.prevPlacement){var a=i.prevPlacement.placedOrientations[e.crossTileID];a&&(i.placedOrientations[e.crossTileID]=a,r=a,i.markUsedOrientation(o,r,e))}return r},j=function(n,r){if(o.allowVerticalPlacement&&e.numVerticalGlyphVertices>0&&a.verticalTextBox)for(var i=0,s=o.writingModes;i0&&(F=F.filter((function(t){return t!==B.anchor}))).unshift(B.anchor)}var U=function(t,n,r){for(var a=t.x2-t.x1,s=t.y2-t.y1,c=e.textBoxScale,u=_&&!b?n:null,h={box:[],offscreen:!1},p=y?2*F.length:F.length,v=0;v=F.length,T=i.attemptAnchorPlacement(m,t,a,s,c,x,w,f,l,g,k,e,o,r,u);if(T&&(h=T.placedGlyphBoxes)&&h.box&&h.box.length){d=!0,S=T.shift;break}}return h};j((function(){return U(z,a.iconBox,t.WritingMode.horizontal)}),(function(){var n=a.verticalTextBox,r=E&&E.box&&E.box.length;return o.allowVerticalPlacement&&!r&&e.numVerticalGlyphVertices>0&&n?U(n,a.verticalIconBox,t.WritingMode.vertical):{box:null,offscreen:null}})),E&&(d=E.box,A=E.offscreen);var H=N(E&&E.box);if(!d&&i.prevPlacement){var V=i.prevPlacement.variableOffsets[e.crossTileID];V&&(i.variableOffsets[e.crossTileID]=V,i.markUsedJustification(o,V.anchor,e,H))}}else{var q=function(t,n){var r=i.collisionIndex.placeCollisionBox(t,y,f,l,g.predicate);return r&&r.box&&r.box.length&&(i.markUsedOrientation(o,n,e),i.placedOrientations[e.crossTileID]=n),r};j((function(){return q(z,t.WritingMode.horizontal)}),(function(){var n=a.verticalTextBox;return o.allowVerticalPlacement&&e.numVerticalGlyphVertices>0&&n?q(n,t.WritingMode.vertical):{box:null,offscreen:null}})),N(E&&E.box&&E.box.length)}}if(d=(P=E)&&P.box&&P.box.length>0,A=P&&P.offscreen,e.useRuntimeCollisionCircles){var G=o.text.placedSymbolArray.get(e.centerJustifiedTextSymbolIndex),W=t.evaluateSizeForFeature(o.textSizeData,p,G),Y=s.get("text-padding"),$=e.collisionCircleDiameter;L=i.collisionIndex.placeCollisionCircles(y,G,o.lineVertexArray,o.glyphOffsetArray,W,l,c,u,r,w,g.predicate,$,Y),d=y||L.circles.length>0&&!L.collisionDetected,A=A&&L.offscreen}if(a.iconFeatureIndex&&(R=a.iconFeatureIndex),a.iconBox){var X=function(t){var e=_&&S?Ye(t,S.x,S.y,x,w,i.transform.angle):t;return i.collisionIndex.placeCollisionBox(e,b,f,l,g.predicate)};k=C&&C.box&&C.box.length&&a.verticalIconBox?(O=X(a.verticalIconBox)).box.length>0:(O=X(a.iconBox)).box.length>0,A=A&&O.offscreen}var K=v||0===e.numHorizontalGlyphVertices&&0===e.numVerticalGlyphVertices,Z=m||0===e.numIconVertices;if(K||Z?Z?K||(k=k&&d):d=k&&d:k=d=k&&d,d&&P&&P.box&&(C&&C.box&&D?i.collisionIndex.insertCollisionBox(P.box,s.get("text-ignore-placement"),o.bucketInstanceId,D,g.ID):i.collisionIndex.insertCollisionBox(P.box,s.get("text-ignore-placement"),o.bucketInstanceId,I,g.ID)),k&&O&&i.collisionIndex.insertCollisionBox(O.box,s.get("icon-ignore-placement"),o.bucketInstanceId,R,g.ID),L&&(d&&i.collisionIndex.insertCollisionCircles(L.circles,s.get("text-ignore-placement"),o.bucketInstanceId,I,g.ID),r)){var J=o.bucketInstanceId,Q=i.collisionCircleArrays[J];void 0===Q&&(Q=i.collisionCircleArrays[J]=new Ve);for(var tt=0;tt=0;--E){var C=S[E];A(o.symbolInstances.get(C),o.collisionArrays[C])}else for(var P=e.symbolInstanceStart;P=0&&(e.text.placedSymbolArray.get(c).crossTileID=a>=0&&c!==a?0:r.crossTileID)}},$e.prototype.markUsedOrientation=function(e,n,r){for(var i=n===t.WritingMode.horizontal||n===t.WritingMode.horizontalOnly?n:0,a=n===t.WritingMode.vertical?n:0,o=0,s=[r.leftJustifiedTextSymbolIndex,r.centerJustifiedTextSymbolIndex,r.rightJustifiedTextSymbolIndex];o0||l>0,b=a.numIconVertices>0,x=i.placedOrientations[a.crossTileID],w=x===t.WritingMode.vertical,_=x===t.WritingMode.horizontal||x===t.WritingMode.horizontalOnly;if(y){var k=rn(m.text),T=w?an:k;p(e.text,s,T);var M=_?an:k;p(e.text,l,M);var A=m.text.isHidden();[a.rightJustifiedTextSymbolIndex,a.centerJustifiedTextSymbolIndex,a.leftJustifiedTextSymbolIndex].forEach((function(t){t>=0&&(e.text.placedSymbolArray.get(t).hidden=A||w?1:0)})),a.verticalPlacedTextSymbolIndex>=0&&(e.text.placedSymbolArray.get(a.verticalPlacedTextSymbolIndex).hidden=A||_?1:0);var S=i.variableOffsets[a.crossTileID];S&&i.markUsedJustification(e,S.anchor,a,x);var E=i.placedOrientations[a.crossTileID];E&&(i.markUsedJustification(e,"left",a,E),i.markUsedOrientation(e,E,a))}if(b){var C=rn(m.icon),P=!(h&&a.verticalPlacedIconSymbolIndex&&w);if(a.placedIconSymbolIndex>=0){var L=P?C:an;p(e.icon,a.numIconVertices,L),e.icon.placedSymbolArray.get(a.placedIconSymbolIndex).hidden=m.icon.isHidden()}if(a.verticalPlacedIconSymbolIndex>=0){var O=P?an:C;p(e.icon,a.numVerticalIconVertices,O),e.icon.placedSymbolArray.get(a.verticalPlacedIconSymbolIndex).hidden=m.icon.isHidden()}}if(e.hasIconCollisionBoxData()||e.hasTextCollisionBoxData()){var I=e.collisionArrays[r];if(I){var D=new t.Point(0,0);if(I.textBox||I.verticalTextBox){var R=!0;if(c){var z=i.variableOffsets[g];z?(D=We(z.anchor,z.width,z.height,z.textOffset,z.textBoxScale),u&&D._rotate(f?i.transform.angle:-i.transform.angle)):R=!1}I.textBox&&Xe(e.textCollisionBox.collisionVertexArray,m.text.placed,!R||w,D.x,D.y),I.verticalTextBox&&Xe(e.textCollisionBox.collisionVertexArray,m.text.placed,!R||_,D.x,D.y)}var N=Boolean(!_&&I.verticalIconBox);I.iconBox&&Xe(e.iconCollisionBox.collisionVertexArray,m.icon.placed,N,h?D.x:0,h?D.y:0),I.verticalIconBox&&Xe(e.iconCollisionBox.collisionVertexArray,m.icon.placed,!N,h?D.x:0,h?D.y:0)}}},v=0;vt},$e.prototype.setStale=function(){this.stale=!0};var Ke=Math.pow(2,25),Ze=Math.pow(2,24),Je=Math.pow(2,17),Qe=Math.pow(2,16),tn=Math.pow(2,9),en=Math.pow(2,8),nn=Math.pow(2,1);function rn(t){if(0===t.opacity&&!t.placed)return 0;if(1===t.opacity&&t.placed)return 4294967295;var e=t.placed?1:0,n=Math.floor(127*t.opacity);return n*Ke+e*Ze+n*Je+e*Qe+n*tn+e*en+n*nn+e}var an=0,on=function(t){this._sortAcrossTiles="viewport-y"!==t.layout.get("symbol-z-order")&&void 0!==t.layout.get("symbol-sort-key").constantOr(1),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};on.prototype.continuePlacement=function(t,e,n,r,i){for(var a=this._bucketParts;this._currentTileIndex2};this._currentPlacementIndex>=0;){var s=n[e[this._currentPlacementIndex]],l=this.placement.collisionIndex.transform.zoom;if("symbol"===s.type&&(!s.minzoom||s.minzoom<=l)&&(!s.maxzoom||s.maxzoom>l)){if(this._inProgressLayer||(this._inProgressLayer=new on(s)),this._inProgressLayer.continuePlacement(r[s.source],this.placement,this._showCollisionBoxes,s,o))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},sn.prototype.commit=function(t){return this.placement.commit(t),this.placement};var ln=512/t.EXTENT/2,cn=function(t,e,n){this.tileID=t,this.indexedSymbolInstances={},this.bucketInstanceId=n;for(var r=0;rt.overscaledZ)for(var s in o){var l=o[s];l.tileID.isChildOf(t)&&l.findMatches(e.symbolInstances,t,i)}else{var c=o[t.scaledTo(Number(a)).key];c&&c.findMatches(e.symbolInstances,t,i)}}for(var u=0;u0)throw new Error("Unimplemented: "+i.map((function(t){return t.command})).join(", ")+".");return r.forEach((function(t){"setTransition"!==t.command&&n[t.command].apply(n,t.args)})),this.stylesheet=e,!0},n.prototype.addImage=function(e,n){if(this.getImage(e))return this.fire(new t.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(e,n),this._availableImages=this.imageManager.listImages(),this._changedImages[e]=!0,this._changed=!0,this.fire(new t.Event("data",{dataType:"style"}))},n.prototype.updateImage=function(t,e){this.imageManager.updateImage(t,e)},n.prototype.getImage=function(t){return this.imageManager.getImage(t)},n.prototype.removeImage=function(e){if(!this.getImage(e))return this.fire(new t.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(e),this._availableImages=this.imageManager.listImages(),this._changedImages[e]=!0,this._changed=!0,this.fire(new t.Event("data",{dataType:"style"}))},n.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},n.prototype.addSource=function(e,n,r){var i=this;if(void 0===r&&(r={}),this._checkLoaded(),void 0!==this.sourceCaches[e])throw new Error("There is already a source with this ID");if(!n.type)throw new Error("The type property must be defined, but the only the following properties were given: "+Object.keys(n).join(", ")+".");if(!(["vector","raster","geojson","video","image"].indexOf(n.type)>=0)||!this._validate(t.validateStyle.source,"sources."+e,n,null,r)){this.map&&this.map._collectResourceTiming&&(n.collectResourceTiming=!0);var a=this.sourceCaches[e]=new Kt(e,n,this.dispatcher);a.style=this,a.setEventedParent(this,(function(){return{isSourceLoaded:i.loaded(),source:a.serialize(),sourceId:e}})),a.onAdd(this.map),this._changed=!0}},n.prototype.removeSource=function(e){if(this._checkLoaded(),void 0===this.sourceCaches[e])throw new Error("There is no source with this ID");for(var n in this._layers)if(this._layers[n].source===e)return this.fire(new t.ErrorEvent(new Error('Source "'+e+'" cannot be removed while layer "'+n+'" is using it.')));var r=this.sourceCaches[e];delete this.sourceCaches[e],delete this._updatedSources[e],r.fire(new t.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:e})),r.setEventedParent(null),r.clearTiles(),r.onRemove&&r.onRemove(this.map),this._changed=!0},n.prototype.setGeoJSONSourceData=function(t,e){this._checkLoaded(),this.sourceCaches[t].getSource().setData(e),this._changed=!0},n.prototype.getSource=function(t){return this.sourceCaches[t]&&this.sourceCaches[t].getSource()},n.prototype.addLayer=function(e,n,r){void 0===r&&(r={}),this._checkLoaded();var i=e.id;if(this.getLayer(i))this.fire(new t.ErrorEvent(new Error('Layer with id "'+i+'" already exists on this map')));else{var a;if("custom"===e.type){if(dn(this,t.validateCustomStyleLayer(e)))return;a=t.createStyleLayer(e)}else{if("object"===typeof e.source&&(this.addSource(i,e.source),e=t.clone$1(e),e=t.extend(e,{source:i})),this._validate(t.validateStyle.layer,"layers."+i,e,{arrayIndex:-1},r))return;a=t.createStyleLayer(e),this._validateLayer(a),a.setEventedParent(this,{layer:{id:i}}),this._serializedLayers[a.id]=a.serialize()}var o=n?this._order.indexOf(n):this._order.length;if(n&&-1===o)this.fire(new t.ErrorEvent(new Error('Layer with id "'+n+'" does not exist on this map.')));else{if(this._order.splice(o,0,i),this._layerOrderChanged=!0,this._layers[i]=a,this._removedLayers[i]&&a.source&&"custom"!==a.type){var s=this._removedLayers[i];delete this._removedLayers[i],s.type!==a.type?this._updatedSources[a.source]="clear":(this._updatedSources[a.source]="reload",this.sourceCaches[a.source].pause())}this._updateLayer(a),a.onAdd&&a.onAdd(this.map)}}},n.prototype.moveLayer=function(e,n){if(this._checkLoaded(),this._changed=!0,this._layers[e]){if(e!==n){var r=this._order.indexOf(e);this._order.splice(r,1);var i=n?this._order.indexOf(n):this._order.length;n&&-1===i?this.fire(new t.ErrorEvent(new Error('Layer with id "'+n+'" does not exist on this map.'))):(this._order.splice(i,0,e),this._layerOrderChanged=!0)}}else this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be moved.")))},n.prototype.removeLayer=function(e){this._checkLoaded();var n=this._layers[e];if(n){n.setEventedParent(null);var r=this._order.indexOf(e);this._order.splice(r,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[e]=n,delete this._layers[e],delete this._serializedLayers[e],delete this._updatedLayers[e],delete this._updatedPaintProps[e],n.onRemove&&n.onRemove(this.map)}else this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be removed.")))},n.prototype.getLayer=function(t){return this._layers[t]},n.prototype.hasLayer=function(t){return t in this._layers},n.prototype.setLayerZoomRange=function(e,n,r){this._checkLoaded();var i=this.getLayer(e);i?i.minzoom===n&&i.maxzoom===r||(null!=n&&(i.minzoom=n),null!=r&&(i.maxzoom=r),this._updateLayer(i)):this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot have zoom extent.")))},n.prototype.setFilter=function(e,n,r){void 0===r&&(r={}),this._checkLoaded();var i=this.getLayer(e);if(i){if(!t.deepEqual(i.filter,n))return null===n||void 0===n?(i.filter=void 0,void this._updateLayer(i)):void(this._validate(t.validateStyle.filter,"layers."+i.id+".filter",n,null,r)||(i.filter=t.clone$1(n),this._updateLayer(i)))}else this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be filtered.")))},n.prototype.getFilter=function(e){return t.clone$1(this.getLayer(e).filter)},n.prototype.setLayoutProperty=function(e,n,r,i){void 0===i&&(i={}),this._checkLoaded();var a=this.getLayer(e);a?t.deepEqual(a.getLayoutProperty(n),r)||(a.setLayoutProperty(n,r,i),this._updateLayer(a)):this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be styled.")))},n.prototype.getLayoutProperty=function(e,n){var r=this.getLayer(e);if(r)return r.getLayoutProperty(n);this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style.")))},n.prototype.setPaintProperty=function(e,n,r,i){void 0===i&&(i={}),this._checkLoaded();var a=this.getLayer(e);a?t.deepEqual(a.getPaintProperty(n),r)||(a.setPaintProperty(n,r,i)&&this._updateLayer(a),this._changed=!0,this._updatedPaintProps[e]=!0):this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be styled.")))},n.prototype.getPaintProperty=function(t,e){return this.getLayer(t).getPaintProperty(e)},n.prototype.setFeatureState=function(e,n){this._checkLoaded();var r=e.source,i=e.sourceLayer,a=this.sourceCaches[r];if(void 0!==a){var o=a.getSource().type;"geojson"===o&&i?this.fire(new t.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):"vector"!==o||i?(void 0===e.id&&this.fire(new t.ErrorEvent(new Error("The feature id parameter must be provided."))),a.setFeatureState(i,e.id,n)):this.fire(new t.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new t.ErrorEvent(new Error("The source '"+r+"' does not exist in the map's style.")))},n.prototype.removeFeatureState=function(e,n){this._checkLoaded();var r=e.source,i=this.sourceCaches[r];if(void 0!==i){var a=i.getSource().type,o="vector"===a?e.sourceLayer:void 0;"vector"!==a||o?n&&"string"!==typeof e.id&&"number"!==typeof e.id?this.fire(new t.ErrorEvent(new Error("A feature id is requred to remove its specific state property."))):i.removeFeatureState(o,e.id,n):this.fire(new t.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new t.ErrorEvent(new Error("The source '"+r+"' does not exist in the map's style.")))},n.prototype.getFeatureState=function(e){this._checkLoaded();var n=e.source,r=e.sourceLayer,i=this.sourceCaches[n];if(void 0!==i){if("vector"!==i.getSource().type||r)return void 0===e.id&&this.fire(new t.ErrorEvent(new Error("The feature id parameter must be provided."))),i.getFeatureState(r,e.id);this.fire(new t.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new t.ErrorEvent(new Error("The source '"+n+"' does not exist in the map's style.")))},n.prototype.getTransition=function(){return t.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},n.prototype.serialize=function(){return t.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:t.mapObject(this.sourceCaches,(function(t){return t.serialize()})),layers:this._serializeLayers(this._order)},(function(t){return void 0!==t}))},n.prototype._updateLayer=function(t){this._updatedLayers[t.id]=!0,t.source&&!this._updatedSources[t.source]&&"raster"!==this.sourceCaches[t.source].getSource().type&&(this._updatedSources[t.source]="reload",this.sourceCaches[t.source].pause()),this._changed=!0},n.prototype._flattenAndSortRenderedFeatures=function(t){for(var e=this,n=function(t){return"fill-extrusion"===e._layers[t].type},r={},i=[],a=this._order.length-1;a>=0;a--){var o=this._order[a];if(n(o)){r[o]=a;for(var s=0,l=t;s=0;p--){var g=this._order[p];if(n(g))for(var v=i.length-1;v>=0;v--){var m=i[v].feature;if(r[m.layer.id] 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}",On="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;}",In="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;}",Dn="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);}",Rn="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);}",zn="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);}",Nn="#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\ngl_FragColor=color*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",jn="attribute vec2 a_pos;uniform mat4 u_matrix;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);}",Fn="varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",Bn="attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}",Un="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;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\nvec2 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;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",Hn="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;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 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;}",Vn="uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\nvec2 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;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",qn="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;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 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);}",Gn="varying vec4 v_color;void main() {gl_FragColor=v_color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",Wn="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;\n#pragma mapbox: define highp float base\n#pragma mapbox: define highp float height\n#pragma mapbox: define highp vec4 color\nvoid main() {\n#pragma mapbox: initialize highp float base\n#pragma mapbox: initialize highp float height\n#pragma mapbox: initialize highp vec4 color\nvec3 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;}",Yn="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;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 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;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",$n="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;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 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\n? a_pos\n: 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;}",Xn="#ifdef GL_ES\nprecision highp float;\n#endif\nuniform 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);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",Kn="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;}",Zn="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;\n#define PI 3.141592653589793\nvoid 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;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",Jn="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;}",Qn="uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nfloat 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);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",tr="\n#define scale 0.015873016\nattribute 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;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\nfloat 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);}",er="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;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nfloat 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);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",nr="\n#define MAX_LINE_DISTANCE 32767.0\n#define scale 0.015873016\nattribute 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;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\nfloat 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);}",rr="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;\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nvec2 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;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",ir="\n#define scale 0.015873016\n#define LINE_DISTANCE_SCALE 2.0\nattribute 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;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nfloat 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;}",ar="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;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\nfloat 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);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",or="\n#define scale 0.015873016\n#define LINE_DISTANCE_SCALE 2.0\nattribute 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;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\nfloat 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);}",sr="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);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",lr="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;}",cr="uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nlowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",ur="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;\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nvec2 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 ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_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));}",fr="#define SDF_PX 8.0\nuniform 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;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat 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);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",hr="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;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 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 ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_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);}",dr="#define SDF_PX 8.0\n#define SDF 1.0\n#define ICON 0.0\nuniform 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;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat 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;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\nreturn;}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);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",pr="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;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 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 ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_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);}",gr=Ur("#ifdef GL_ES\nprecision mediump float;\n#else\n#if !defined(lowp)\n#define lowp\n#endif\n#if !defined(mediump)\n#define mediump\n#endif\n#if !defined(highp)\n#define highp\n#endif\n#endif","#ifdef GL_ES\nprecision highp float;\n#else\n#if !defined(lowp)\n#define lowp\n#endif\n#if !defined(mediump)\n#define mediump\n#endif\n#if !defined(highp)\n#define highp\n#endif\n#endif\nvec2 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\n);}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=Ur(bn,xn),mr=Ur(wn,_n),yr=Ur(kn,Tn),br=Ur(Mn,An),xr=Ur(Sn,En),wr=Ur(Cn,Pn),_r=Ur(Ln,On),kr=Ur(In,Dn),Tr=Ur(Rn,zn),Mr=Ur(Nn,jn),Ar=Ur(Fn,Bn),Sr=Ur(Un,Hn),Er=Ur(Vn,qn),Cr=Ur(Gn,Wn),Pr=Ur(Yn,$n),Lr=Ur(Xn,Kn),Or=Ur(Zn,Jn),Ir=Ur(Qn,tr),Dr=Ur(er,nr),Rr=Ur(rr,ir),zr=Ur(ar,or),Nr=Ur(sr,lr),jr=Ur(cr,ur),Fr=Ur(fr,hr),Br=Ur(dr,pr);function Ur(t,e){var n=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,r={};return{fragmentSource:t=t.replace(n,(function(t,e,n,i,a){return r[a]=!0,"define"===e?"\n#ifndef HAS_UNIFORM_u_"+a+"\nvarying "+n+" "+i+" "+a+";\n#else\nuniform "+n+" "+i+" u_"+a+";\n#endif\n":"\n#ifdef HAS_UNIFORM_u_"+a+"\n "+n+" "+i+" "+a+" = u_"+a+";\n#endif\n"})),vertexSource:e=e.replace(n,(function(t,e,n,i,a){var o="float"===i?"vec2":"vec4",s=a.match(/color/)?"color":o;return r[a]?"define"===e?"\n#ifndef HAS_UNIFORM_u_"+a+"\nuniform lowp float u_"+a+"_t;\nattribute "+n+" "+o+" a_"+a+";\nvarying "+n+" "+i+" "+a+";\n#else\nuniform "+n+" "+i+" u_"+a+";\n#endif\n":"vec4"===s?"\n#ifndef HAS_UNIFORM_u_"+a+"\n "+a+" = a_"+a+";\n#else\n "+n+" "+i+" "+a+" = u_"+a+";\n#endif\n":"\n#ifndef HAS_UNIFORM_u_"+a+"\n "+a+" = unpack_mix_"+s+"(a_"+a+", u_"+a+"_t);\n#else\n "+n+" "+i+" "+a+" = u_"+a+";\n#endif\n":"define"===e?"\n#ifndef HAS_UNIFORM_u_"+a+"\nuniform lowp float u_"+a+"_t;\nattribute "+n+" "+o+" a_"+a+";\n#else\nuniform "+n+" "+i+" u_"+a+";\n#endif\n":"vec4"===s?"\n#ifndef HAS_UNIFORM_u_"+a+"\n "+n+" "+i+" "+a+" = a_"+a+";\n#else\n "+n+" "+i+" "+a+" = u_"+a+";\n#endif\n":"\n#ifndef HAS_UNIFORM_u_"+a+"\n "+n+" "+i+" "+a+" = unpack_mix_"+s+"(a_"+a+", u_"+a+"_t);\n#else\n "+n+" "+i+" "+a+" = u_"+a+";\n#endif\n"}))}}var Hr=Object.freeze({__proto__:null,prelude:gr,background:vr,backgroundPattern:mr,circle:yr,clippingMask:br,heatmap:xr,heatmapTexture:wr,collisionBox:_r,collisionCircle:kr,debug:Tr,fill:Mr,fillOutline:Ar,fillOutlinePattern:Sr,fillPattern:Er,fillExtrusion:Cr,fillExtrusionPattern:Pr,hillshadePrepare:Lr,hillshade:Or,line:Ir,lineGradient:Dr,linePattern:Rr,lineSDF:zr,raster:Nr,symbolIcon:jr,symbolSDF:Fr,symbolTextAndIcon:Br}),Vr=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};Vr.prototype.bind=function(t,e,n,r,i,a,o,s){this.context=t;for(var l=this.boundPaintVertexBuffers.length!==r.length,c=0;!l&&c>16,s>>16],u_pixel_coord_lower:[65535&o,65535&s]}}function Wr(t,e,n,r){var i=n.imageManager.getPattern(t.from.toString()),a=n.imageManager.getPattern(t.to.toString()),o=n.imageManager.getPixelSize(),s=o.width,l=o.height,c=Math.pow(2,r.tileID.overscaledZ),u=r.tileSize*Math.pow(2,n.transform.tileZoom)/c,f=u*(r.tileID.canonical.x+r.tileID.wrap*c),h=u*r.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:i.tl,u_pattern_br_a:i.br,u_pattern_tl_b:a.tl,u_pattern_br_b:a.br,u_texsize:[s,l],u_mix:e.t,u_pattern_size_a:i.displaySize,u_pattern_size_b:a.displaySize,u_scale_a:e.fromScale,u_scale_b:e.toScale,u_tile_units_to_pixels:1/Fe(r,1,n.transform.tileZoom),u_pixel_coord_upper:[f>>16,h>>16],u_pixel_coord_lower:[65535&f,65535&h]}}qr.prototype.draw=function(t,e,n,r,i,a,o,s,l,c,u,f,h,d,p,g){var v,m=t.gl;if(!this.failedToCreate){for(var y in t.program.set(this.program),t.setDepthMode(n),t.setStencilMode(r),t.setColorMode(i),t.setCullFace(a),this.fixedUniforms)this.fixedUniforms[y].set(o[y]);d&&d.setUniforms(t,this.binderUniforms,f,{zoom:h});for(var b=(v={},v[m.LINES]=2,v[m.TRIANGLES]=3,v[m.LINE_STRIP]=1,v)[e],x=0,w=u.get();x0?1/(1-t):1+t}function yi(t){return t>0?1-1/(1.001-t):-t}var bi,xi=function(t,e,n,r,i,a,o,s,l,c){var u=i.transform;return{u_is_size_zoom_constant:+("constant"===t||"source"===t),u_is_size_feature_constant:+("constant"===t||"camera"===t),u_size_t:e?e.uSizeT:0,u_size:e?e.uSize:0,u_camera_to_center_distance:u.cameraToCenterDistance,u_pitch:u.pitch/360*2*Math.PI,u_rotate_symbol:+n,u_aspect_ratio:u.width/u.height,u_fade_change:i.options.fadeDuration?i.symbolFadeChange:1,u_matrix:a,u_label_plane_matrix:o,u_coord_matrix:s,u_is_text:+l,u_pitch_with_map:+r,u_texsize:c,u_texture:0}},wi=function(e,n,r,i,a,o,s,l,c,u,f){var h=a.transform;return t.extend(xi(e,n,r,i,a,o,s,l,c,u),{u_gamma_scale:i?Math.cos(h._pitch)*h.cameraToCenterDistance:1,u_device_pixel_ratio:t.browser.devicePixelRatio,u_is_halo:+f})},_i=function(e,n,r,i,a,o,s,l,c,u){return t.extend(wi(e,n,r,i,a,o,s,l,!0,c,!0),{u_texsize_icon:u,u_texture_icon:1})},ki=function(t,e,n){return{u_matrix:t,u_opacity:e,u_color:n}},Ti=function(e,n,r,i,a,o){return t.extend(Wr(i,o,r,a),{u_matrix:e,u_opacity:n})},Mi={fillExtrusion:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_lightpos:new t.Uniform3f(e,n.u_lightpos),u_lightintensity:new t.Uniform1f(e,n.u_lightintensity),u_lightcolor:new t.Uniform3f(e,n.u_lightcolor),u_vertical_gradient:new t.Uniform1f(e,n.u_vertical_gradient),u_opacity:new t.Uniform1f(e,n.u_opacity)}},fillExtrusionPattern:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_lightpos:new t.Uniform3f(e,n.u_lightpos),u_lightintensity:new t.Uniform1f(e,n.u_lightintensity),u_lightcolor:new t.Uniform3f(e,n.u_lightcolor),u_vertical_gradient:new t.Uniform1f(e,n.u_vertical_gradient),u_height_factor:new t.Uniform1f(e,n.u_height_factor),u_image:new t.Uniform1i(e,n.u_image),u_texsize:new t.Uniform2f(e,n.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,n.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,n.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,n.u_scale),u_fade:new t.Uniform1f(e,n.u_fade),u_opacity:new t.Uniform1f(e,n.u_opacity)}},fill:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix)}},fillPattern:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_image:new t.Uniform1i(e,n.u_image),u_texsize:new t.Uniform2f(e,n.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,n.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,n.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,n.u_scale),u_fade:new t.Uniform1f(e,n.u_fade)}},fillOutline:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_world:new t.Uniform2f(e,n.u_world)}},fillOutlinePattern:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_world:new t.Uniform2f(e,n.u_world),u_image:new t.Uniform1i(e,n.u_image),u_texsize:new t.Uniform2f(e,n.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,n.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,n.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,n.u_scale),u_fade:new t.Uniform1f(e,n.u_fade)}},circle:function(e,n){return{u_camera_to_center_distance:new t.Uniform1f(e,n.u_camera_to_center_distance),u_scale_with_map:new t.Uniform1i(e,n.u_scale_with_map),u_pitch_with_map:new t.Uniform1i(e,n.u_pitch_with_map),u_extrude_scale:new t.Uniform2f(e,n.u_extrude_scale),u_device_pixel_ratio:new t.Uniform1f(e,n.u_device_pixel_ratio),u_matrix:new t.UniformMatrix4f(e,n.u_matrix)}},collisionBox:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_camera_to_center_distance:new t.Uniform1f(e,n.u_camera_to_center_distance),u_pixels_to_tile_units:new t.Uniform1f(e,n.u_pixels_to_tile_units),u_extrude_scale:new t.Uniform2f(e,n.u_extrude_scale),u_overscale_factor:new t.Uniform1f(e,n.u_overscale_factor)}},collisionCircle:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_inv_matrix:new t.UniformMatrix4f(e,n.u_inv_matrix),u_camera_to_center_distance:new t.Uniform1f(e,n.u_camera_to_center_distance),u_viewport_size:new t.Uniform2f(e,n.u_viewport_size)}},debug:function(e,n){return{u_color:new t.UniformColor(e,n.u_color),u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_overlay:new t.Uniform1i(e,n.u_overlay),u_overlay_scale:new t.Uniform1f(e,n.u_overlay_scale)}},clippingMask:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix)}},heatmap:function(e,n){return{u_extrude_scale:new t.Uniform1f(e,n.u_extrude_scale),u_intensity:new t.Uniform1f(e,n.u_intensity),u_matrix:new t.UniformMatrix4f(e,n.u_matrix)}},heatmapTexture:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_world:new t.Uniform2f(e,n.u_world),u_image:new t.Uniform1i(e,n.u_image),u_color_ramp:new t.Uniform1i(e,n.u_color_ramp),u_opacity:new t.Uniform1f(e,n.u_opacity)}},hillshade:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_image:new t.Uniform1i(e,n.u_image),u_latrange:new t.Uniform2f(e,n.u_latrange),u_light:new t.Uniform2f(e,n.u_light),u_shadow:new t.UniformColor(e,n.u_shadow),u_highlight:new t.UniformColor(e,n.u_highlight),u_accent:new t.UniformColor(e,n.u_accent)}},hillshadePrepare:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_image:new t.Uniform1i(e,n.u_image),u_dimension:new t.Uniform2f(e,n.u_dimension),u_zoom:new t.Uniform1f(e,n.u_zoom),u_maxzoom:new t.Uniform1f(e,n.u_maxzoom),u_unpack:new t.Uniform4f(e,n.u_unpack)}},line:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_ratio:new t.Uniform1f(e,n.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,n.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,n.u_units_to_pixels)}},lineGradient:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_ratio:new t.Uniform1f(e,n.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,n.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,n.u_units_to_pixels),u_image:new t.Uniform1i(e,n.u_image)}},linePattern:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_texsize:new t.Uniform2f(e,n.u_texsize),u_ratio:new t.Uniform1f(e,n.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,n.u_device_pixel_ratio),u_image:new t.Uniform1i(e,n.u_image),u_units_to_pixels:new t.Uniform2f(e,n.u_units_to_pixels),u_scale:new t.Uniform3f(e,n.u_scale),u_fade:new t.Uniform1f(e,n.u_fade)}},lineSDF:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_ratio:new t.Uniform1f(e,n.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,n.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,n.u_units_to_pixels),u_patternscale_a:new t.Uniform2f(e,n.u_patternscale_a),u_patternscale_b:new t.Uniform2f(e,n.u_patternscale_b),u_sdfgamma:new t.Uniform1f(e,n.u_sdfgamma),u_image:new t.Uniform1i(e,n.u_image),u_tex_y_a:new t.Uniform1f(e,n.u_tex_y_a),u_tex_y_b:new t.Uniform1f(e,n.u_tex_y_b),u_mix:new t.Uniform1f(e,n.u_mix)}},raster:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_tl_parent:new t.Uniform2f(e,n.u_tl_parent),u_scale_parent:new t.Uniform1f(e,n.u_scale_parent),u_buffer_scale:new t.Uniform1f(e,n.u_buffer_scale),u_fade_t:new t.Uniform1f(e,n.u_fade_t),u_opacity:new t.Uniform1f(e,n.u_opacity),u_image0:new t.Uniform1i(e,n.u_image0),u_image1:new t.Uniform1i(e,n.u_image1),u_brightness_low:new t.Uniform1f(e,n.u_brightness_low),u_brightness_high:new t.Uniform1f(e,n.u_brightness_high),u_saturation_factor:new t.Uniform1f(e,n.u_saturation_factor),u_contrast_factor:new t.Uniform1f(e,n.u_contrast_factor),u_spin_weights:new t.Uniform3f(e,n.u_spin_weights)}},symbolIcon:function(e,n){return{u_is_size_zoom_constant:new t.Uniform1i(e,n.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,n.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,n.u_size_t),u_size:new t.Uniform1f(e,n.u_size),u_camera_to_center_distance:new t.Uniform1f(e,n.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,n.u_pitch),u_rotate_symbol:new t.Uniform1i(e,n.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,n.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,n.u_fade_change),u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,n.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,n.u_coord_matrix),u_is_text:new t.Uniform1i(e,n.u_is_text),u_pitch_with_map:new t.Uniform1i(e,n.u_pitch_with_map),u_texsize:new t.Uniform2f(e,n.u_texsize),u_texture:new t.Uniform1i(e,n.u_texture)}},symbolSDF:function(e,n){return{u_is_size_zoom_constant:new t.Uniform1i(e,n.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,n.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,n.u_size_t),u_size:new t.Uniform1f(e,n.u_size),u_camera_to_center_distance:new t.Uniform1f(e,n.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,n.u_pitch),u_rotate_symbol:new t.Uniform1i(e,n.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,n.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,n.u_fade_change),u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,n.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,n.u_coord_matrix),u_is_text:new t.Uniform1i(e,n.u_is_text),u_pitch_with_map:new t.Uniform1i(e,n.u_pitch_with_map),u_texsize:new t.Uniform2f(e,n.u_texsize),u_texture:new t.Uniform1i(e,n.u_texture),u_gamma_scale:new t.Uniform1f(e,n.u_gamma_scale),u_device_pixel_ratio:new t.Uniform1f(e,n.u_device_pixel_ratio),u_is_halo:new t.Uniform1i(e,n.u_is_halo)}},symbolTextAndIcon:function(e,n){return{u_is_size_zoom_constant:new t.Uniform1i(e,n.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,n.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,n.u_size_t),u_size:new t.Uniform1f(e,n.u_size),u_camera_to_center_distance:new t.Uniform1f(e,n.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,n.u_pitch),u_rotate_symbol:new t.Uniform1i(e,n.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,n.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,n.u_fade_change),u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,n.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,n.u_coord_matrix),u_is_text:new t.Uniform1i(e,n.u_is_text),u_pitch_with_map:new t.Uniform1i(e,n.u_pitch_with_map),u_texsize:new t.Uniform2f(e,n.u_texsize),u_texsize_icon:new t.Uniform2f(e,n.u_texsize_icon),u_texture:new t.Uniform1i(e,n.u_texture),u_texture_icon:new t.Uniform1i(e,n.u_texture_icon),u_gamma_scale:new t.Uniform1f(e,n.u_gamma_scale),u_device_pixel_ratio:new t.Uniform1f(e,n.u_device_pixel_ratio),u_is_halo:new t.Uniform1i(e,n.u_is_halo)}},background:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_opacity:new t.Uniform1f(e,n.u_opacity),u_color:new t.UniformColor(e,n.u_color)}},backgroundPattern:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_opacity:new t.Uniform1f(e,n.u_opacity),u_image:new t.Uniform1i(e,n.u_image),u_pattern_tl_a:new t.Uniform2f(e,n.u_pattern_tl_a),u_pattern_br_a:new t.Uniform2f(e,n.u_pattern_br_a),u_pattern_tl_b:new t.Uniform2f(e,n.u_pattern_tl_b),u_pattern_br_b:new t.Uniform2f(e,n.u_pattern_br_b),u_texsize:new t.Uniform2f(e,n.u_texsize),u_mix:new t.Uniform1f(e,n.u_mix),u_pattern_size_a:new t.Uniform2f(e,n.u_pattern_size_a),u_pattern_size_b:new t.Uniform2f(e,n.u_pattern_size_b),u_scale_a:new t.Uniform1f(e,n.u_scale_a),u_scale_b:new t.Uniform1f(e,n.u_scale_b),u_pixel_coord_upper:new t.Uniform2f(e,n.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,n.u_pixel_coord_lower),u_tile_units_to_pixels:new t.Uniform1f(e,n.u_tile_units_to_pixels)}}};function Ai(e,n,r,i,a,o,s){for(var l=e.context,c=l.gl,u=e.useProgram("collisionBox"),f=[],h=0,d=0,p=0;p0){var w=t.create(),_=y;t.mul(w,m.placementInvProjMatrix,e.transform.glCoordMatrix),t.mul(w,w,m.placementViewportMatrix),f.push({circleArray:x,circleOffset:d,transform:_,invTransform:w}),d=h+=x.length/4}b&&u.draw(l,c.LINES,jt.disabled,Ut.disabled,e.colorModeForRenderPass(),$t.disabled,ti(y,e.transform,v),r.id,b.layoutVertexBuffer,b.indexBuffer,b.segments,null,e.transform.zoom,null,null,b.collisionVertexBuffer)}}if(s&&f.length){var k=e.useProgram("collisionCircle"),T=new t.StructArrayLayout2f1f2i16;T.resize(4*h),T._trim();for(var M=0,A=0,S=f;A=0&&(g[m.associatedIconIndex]={shiftedAnchor:S,angle:E})}else Re(m.numGlyphs,d)}if(f){p.clear();for(var P=e.icon.placedSymbolArray,L=0;L0){var s=t.browser.now(),l=(s-e.timeAdded)/o,c=n?(s-n.timeAdded)/o:-1,u=r.getSource(),f=a.coveringZoomLevel({tileSize:u.tileSize,roundZoom:u.roundZoom}),h=!n||Math.abs(n.tileID.overscaledZ-f)>Math.abs(e.tileID.overscaledZ-f),d=h&&e.refreshedUponExpiration?1:t.clamp(h?l:1-c,0,1);return e.refreshedUponExpiration&&l>=1&&(e.refreshedUponExpiration=!1),n?{opacity:1,mix:1-d}:{opacity:d,mix:0}}return{opacity:1,mix:0}}function Zi(t,e,n){var r=n.paint.get("background-color"),i=n.paint.get("background-opacity");if(0!==i){var a=t.context,o=a.gl,s=t.transform,l=s.tileSize,c=n.paint.get("background-pattern");if(!t.isPatternMissing(c)){var u=!c&&1===r.a&&1===i&&t.opaquePassEnabledForLayer()?"opaque":"translucent";if(t.renderPass===u){var f=Ut.disabled,h=t.depthModeForSublayer(0,"opaque"===u?jt.ReadWrite:jt.ReadOnly),d=t.colorModeForRenderPass(),p=t.useProgram(c?"backgroundPattern":"background"),g=s.coveringTiles({tileSize:l});c&&(a.activeTexture.set(o.TEXTURE0),t.imageManager.bind(t.context));for(var v=n.getCrossfadeParameters(),m=0,y=g;m "+r.overscaledZ),ua(e,m+" "+p+"kb"),s.draw(i,a.TRIANGLES,l,c,Gt.alphaBlended,$t.disabled,ni(o,t.Color.transparent,v),f,e.debugBuffer,e.quadTriangleIndexBuffer,e.debugSegments)}function ua(t,e){t.initDebugOverlayCanvas();var n=t.debugOverlayCanvas,r=t.context.gl,i=t.debugOverlayCanvas.getContext("2d");i.clearRect(0,0,n.width,n.height),i.shadowColor="white",i.shadowBlur=2,i.lineWidth=1.5,i.strokeStyle="white",i.textBaseline="top",i.font="bold 36px Open Sans, sans-serif",i.fillText(e,5,5),i.strokeText(e,5,5),t.debugOverlayTexture.update(n),t.debugOverlayTexture.bind(r.LINEAR,r.CLAMP_TO_EDGE)}function fa(t,e,n){var r=t.context,i=n.implementation;if("offscreen"===t.renderPass){var a=i.prerender;a&&(t.setCustomLayerDefaults(),r.setColorMode(t.colorModeForRenderPass()),a.call(i,r.gl,t.transform.customLayerMatrix()),r.setDirty(),t.setBaseState())}else if("translucent"===t.renderPass){t.setCustomLayerDefaults(),r.setColorMode(t.colorModeForRenderPass()),r.setStencilMode(Ut.disabled);var o="3d"===i.renderingMode?new jt(t.context.gl.LEQUAL,jt.ReadWrite,t.depthRangeFor3D):t.depthModeForSublayer(0,jt.ReadOnly);r.setDepthMode(o),i.render(r.gl,t.transform.customLayerMatrix()),r.setDirty(),t.setBaseState(),r.bindFramebuffer.set(null)}}var ha={symbol:Ci,circle:zi,heatmap:Ni,line:Ui,fill:Hi,"fill-extrusion":qi,hillshade:Wi,raster:Xi,background:Zi,debug:la,custom:fa},da=function(t,e){this.context=new Xt(t),this.transform=e,this._tileTextures={},this.setup(),this.numSublayers=Kt.maxUnderzooming+Kt.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new hn,this.gpuTimers={}};da.prototype.resize=function(e,n){if(this.width=e*t.browser.devicePixelRatio,this.height=n*t.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var r=0,i=this.style._order;r256&&this.clearStencil(),n.setColorMode(Gt.disabled),n.setDepthMode(jt.disabled);var i=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var a=0,o=e;a256&&this.clearStencil();var t=this.nextStencilID++,e=this.context.gl;return new Ut({func:e.NOTEQUAL,mask:255},t,255,e.KEEP,e.KEEP,e.REPLACE)},da.prototype.stencilModeForClipping=function(t){var e=this.context.gl;return new Ut({func:e.EQUAL,mask:255},this._tileClippingMaskIDs[t.key],0,e.KEEP,e.KEEP,e.REPLACE)},da.prototype.stencilConfigForOverlap=function(t){var e,n=this.context.gl,r=t.sort((function(t,e){return e.overscaledZ-t.overscaledZ})),i=r[r.length-1].overscaledZ,a=r[0].overscaledZ-i+1;if(a>1){this.currentStencilSource=void 0,this.nextStencilID+a>256&&this.clearStencil();for(var o={},s=0;s=0;this.currentLayer--){var _=this.style._layers[i[this.currentLayer]],k=a[_.source],T=u[_.source];this._renderTileClippingMasks(_,T),this.renderLayer(this,k,_,T)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer0?e.pop():null},da.prototype.isPatternMissing=function(t){if(!t)return!1;if(!t.from||!t.to)return!0;var e=this.imageManager.getPattern(t.from.toString()),n=this.imageManager.getPattern(t.to.toString());return!e||!n},da.prototype.useProgram=function(t,e){this.cache=this.cache||{};var n=""+t+(e?e.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[n]||(this.cache[n]=new qr(this.context,Hr[t],e,Mi[t],this._showOverdrawInspector)),this.cache[n]},da.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()},da.prototype.setBaseState=function(){var t=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(t.FUNC_ADD)},da.prototype.initDebugOverlayCanvas=function(){if(null==this.debugOverlayCanvas){this.debugOverlayCanvas=t.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var e=this.context.gl;this.debugOverlayTexture=new t.Texture(this.context,this.debugOverlayCanvas,e.RGBA)}},da.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var pa=function(t,e){this.points=t,this.planes=e};pa.fromInvProjectionMatrix=function(e,n,r){var i=[[-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]],a=Math.pow(2,r),o=i.map((function(n){return t.transformMat4([],n,e)})).map((function(e){return t.scale$1([],e,1/e[3]/n*a)})),s=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map((function(e){var n=t.sub([],o[e[0]],o[e[1]]),r=t.sub([],o[e[2]],o[e[1]]),i=t.normalize([],t.cross([],n,r)),a=-t.dot(i,o[e[1]]);return i.concat(a)}));return new pa(o,s)};var ga=function(e,n){this.min=e,this.max=n,this.center=t.scale$2([],t.add([],this.min,this.max),.5)};ga.prototype.quadrant=function(e){for(var n=[e%2===0,e<2],r=t.clone$2(this.min),i=t.clone$2(this.max),a=0;a=0;if(0===o)return 0;o!==n.length&&(r=!1)}if(r)return 2;for(var l=0;l<3;l++){for(var c=Number.MAX_VALUE,u=-Number.MAX_VALUE,f=0;fthis.max[l]-this.min[l])return 0}return 1};var va=function(t,e,n,r){if(void 0===t&&(t=0),void 0===e&&(e=0),void 0===n&&(n=0),void 0===r&&(r=0),isNaN(t)||t<0||isNaN(e)||e<0||isNaN(n)||n<0||isNaN(r)||r<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=t,this.bottom=e,this.left=n,this.right=r};va.prototype.interpolate=function(e,n,r){return null!=n.top&&null!=e.top&&(this.top=t.number(e.top,n.top,r)),null!=n.bottom&&null!=e.bottom&&(this.bottom=t.number(e.bottom,n.bottom,r)),null!=n.left&&null!=e.left&&(this.left=t.number(e.left,n.left,r)),null!=n.right&&null!=e.right&&(this.right=t.number(e.right,n.right,r)),this},va.prototype.getCenter=function(e,n){var r=t.clamp((this.left+e-this.right)/2,0,e),i=t.clamp((this.top+n-this.bottom)/2,0,n);return new t.Point(r,i)},va.prototype.equals=function(t){return this.top===t.top&&this.bottom===t.bottom&&this.left===t.left&&this.right===t.right},va.prototype.clone=function(){return new va(this.top,this.bottom,this.left,this.right)},va.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var ma=function(e,n,r,i,a){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=void 0===a||a,this._minZoom=e||0,this._maxZoom=n||22,this._minPitch=void 0===r||null===r?0:r,this._maxPitch=void 0===i||null===i?60:i,this.setMaxBounds(),this.width=0,this.height=0,this._center=new t.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new va,this._posMatrixCache={},this._alignedPosMatrixCache={}},ya={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}};function ba(t,e){var n=!1,r=null,i=function i(){r=null,n&&(t(),r=setTimeout(i,e),n=!1)};return function(){return n=!0,r||i(),r}}ma.prototype.clone=function(){var t=new ma(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return t.tileSize=this.tileSize,t.latRange=this.latRange,t.width=this.width,t.height=this.height,t._center=this._center,t.zoom=this.zoom,t.angle=this.angle,t._fov=this._fov,t._pitch=this._pitch,t._unmodified=this._unmodified,t._edgeInsets=this._edgeInsets.clone(),t._calcMatrices(),t},ya.minZoom.get=function(){return this._minZoom},ya.minZoom.set=function(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))},ya.maxZoom.get=function(){return this._maxZoom},ya.maxZoom.set=function(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))},ya.minPitch.get=function(){return this._minPitch},ya.minPitch.set=function(t){this._minPitch!==t&&(this._minPitch=t,this.pitch=Math.max(this.pitch,t))},ya.maxPitch.get=function(){return this._maxPitch},ya.maxPitch.set=function(t){this._maxPitch!==t&&(this._maxPitch=t,this.pitch=Math.min(this.pitch,t))},ya.renderWorldCopies.get=function(){return this._renderWorldCopies},ya.renderWorldCopies.set=function(t){void 0===t?t=!0:null===t&&(t=!1),this._renderWorldCopies=t},ya.worldSize.get=function(){return this.tileSize*this.scale},ya.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},ya.size.get=function(){return new t.Point(this.width,this.height)},ya.bearing.get=function(){return-this.angle/Math.PI*180},ya.bearing.set=function(e){var n=-t.wrap(e,-180,180)*Math.PI/180;this.angle!==n&&(this._unmodified=!1,this.angle=n,this._calcMatrices(),this.rotationMatrix=t.create$2(),t.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},ya.pitch.get=function(){return this._pitch/Math.PI*180},ya.pitch.set=function(e){var n=t.clamp(e,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==n&&(this._unmodified=!1,this._pitch=n,this._calcMatrices())},ya.fov.get=function(){return this._fov/Math.PI*180},ya.fov.set=function(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices())},ya.zoom.get=function(){return this._zoom},ya.zoom.set=function(t){var e=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==e&&(this._unmodified=!1,this._zoom=e,this.scale=this.zoomScale(e),this.tileZoom=Math.floor(e),this.zoomFraction=e-this.tileZoom,this._constrain(),this._calcMatrices())},ya.center.get=function(){return this._center},ya.center.set=function(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())},ya.padding.get=function(){return this._edgeInsets.toJSON()},ya.padding.set=function(t){this._edgeInsets.equals(t)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,t,1),this._calcMatrices())},ya.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},ma.prototype.isPaddingEqual=function(t){return this._edgeInsets.equals(t)},ma.prototype.interpolatePadding=function(t,e,n){this._unmodified=!1,this._edgeInsets.interpolate(t,e,n),this._constrain(),this._calcMatrices()},ma.prototype.coveringZoomLevel=function(t){var e=(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize));return Math.max(0,e)},ma.prototype.getVisibleUnwrappedCoordinates=function(e){var n=[new t.UnwrappedTileID(0,e)];if(this._renderWorldCopies)for(var r=this.pointCoordinate(new t.Point(0,0)),i=this.pointCoordinate(new t.Point(this.width,0)),a=this.pointCoordinate(new t.Point(this.width,this.height)),o=this.pointCoordinate(new t.Point(0,this.height)),s=Math.floor(Math.min(r.x,i.x,a.x,o.x)),l=Math.floor(Math.max(r.x,i.x,a.x,o.x)),c=1,u=s-c;u<=l+c;u++)0!==u&&n.push(new t.UnwrappedTileID(u,e));return n},ma.prototype.coveringTiles=function(e){var n=this.coveringZoomLevel(e),r=n;if(void 0!==e.minzoom&&ne.maxzoom&&(n=e.maxzoom);var i=t.MercatorCoordinate.fromLngLat(this.center),a=Math.pow(2,n),o=[a*i.x,a*i.y,0],s=pa.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,n),l=e.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(l=n);var c=3,u=function(t){return{aabb:new ga([t*a,0,0],[(t+1)*a,a,0]),zoom:0,x:0,y:0,wrap:t,fullyVisible:!1}},f=[],h=[],d=n,p=e.reparseOverscaled?r:n;if(this._renderWorldCopies)for(var g=1;g<=3;g++)f.push(u(-g)),f.push(u(g));for(f.push(u(0));f.length>0;){var v=f.pop(),m=v.x,y=v.y,b=v.fullyVisible;if(!b){var x=v.aabb.intersects(s);if(0===x)continue;b=2===x}var w=v.aabb.distanceX(o),_=v.aabb.distanceY(o),k=Math.max(Math.abs(w),Math.abs(_)),T=c+(1<T&&v.zoom>=l)h.push({tileID:new t.OverscaledTileID(v.zoom===d?p:v.zoom,v.wrap,v.zoom,m,y),distanceSq:t.sqrLen([o[0]-.5-m,o[1]-.5-y])});else for(var M=0;M<4;M++){var A=(m<<1)+M%2,S=(y<<1)+(M>>1);f.push({aabb:v.aabb.quadrant(M),zoom:v.zoom+1,x:A,y:S,wrap:v.wrap,fullyVisible:b})}}return h.sort((function(t,e){return t.distanceSq-e.distanceSq})).map((function(t){return t.tileID}))},ma.prototype.resize=function(t,e){this.width=t,this.height=e,this.pixelsToGLUnits=[2/t,-2/e],this._constrain(),this._calcMatrices()},ya.unmodified.get=function(){return this._unmodified},ma.prototype.zoomScale=function(t){return Math.pow(2,t)},ma.prototype.scaleZoom=function(t){return Math.log(t)/Math.LN2},ma.prototype.project=function(e){var n=t.clamp(e.lat,-this.maxValidLatitude,this.maxValidLatitude);return new t.Point(t.mercatorXfromLng(e.lng)*this.worldSize,t.mercatorYfromLat(n)*this.worldSize)},ma.prototype.unproject=function(e){return new t.MercatorCoordinate(e.x/this.worldSize,e.y/this.worldSize).toLngLat()},ya.point.get=function(){return this.project(this.center)},ma.prototype.setLocationAtPoint=function(e,n){var r=this.pointCoordinate(n),i=this.pointCoordinate(this.centerPoint),a=this.locationCoordinate(e),o=new t.MercatorCoordinate(a.x-(r.x-i.x),a.y-(r.y-i.y));this.center=this.coordinateLocation(o),this._renderWorldCopies&&(this.center=this.center.wrap())},ma.prototype.locationPoint=function(t){return this.coordinatePoint(this.locationCoordinate(t))},ma.prototype.pointLocation=function(t){return this.coordinateLocation(this.pointCoordinate(t))},ma.prototype.locationCoordinate=function(e){return t.MercatorCoordinate.fromLngLat(e)},ma.prototype.coordinateLocation=function(t){return t.toLngLat()},ma.prototype.pointCoordinate=function(e){var n=0,r=[e.x,e.y,0,1],i=[e.x,e.y,1,1];t.transformMat4(r,r,this.pixelMatrixInverse),t.transformMat4(i,i,this.pixelMatrixInverse);var a=r[3],o=i[3],s=r[0]/a,l=i[0]/o,c=r[1]/a,u=i[1]/o,f=r[2]/a,h=i[2]/o,d=f===h?0:(n-f)/(h-f);return new t.MercatorCoordinate(t.number(s,l,d)/this.worldSize,t.number(c,u,d)/this.worldSize)},ma.prototype.coordinatePoint=function(e){var n=[e.x*this.worldSize,e.y*this.worldSize,0,1];return t.transformMat4(n,n,this.pixelMatrix),new t.Point(n[0]/n[3],n[1]/n[3])},ma.prototype.getBounds=function(){return(new t.LngLatBounds).extend(this.pointLocation(new t.Point(0,0))).extend(this.pointLocation(new t.Point(this.width,0))).extend(this.pointLocation(new t.Point(this.width,this.height))).extend(this.pointLocation(new t.Point(0,this.height)))},ma.prototype.getMaxBounds=function(){return this.latRange&&2===this.latRange.length&&this.lngRange&&2===this.lngRange.length?new t.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null},ma.prototype.setMaxBounds=function(t){t?(this.lngRange=[t.getWest(),t.getEast()],this.latRange=[t.getSouth(),t.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},ma.prototype.calculatePosMatrix=function(e,n){void 0===n&&(n=!1);var r=e.key,i=n?this._alignedPosMatrixCache:this._posMatrixCache;if(i[r])return i[r];var a=e.canonical,o=this.worldSize/this.zoomScale(a.z),s=a.x+Math.pow(2,a.z)*e.wrap,l=t.identity(new Float64Array(16));return t.translate(l,l,[s*o,a.y*o,0]),t.scale(l,l,[o/t.EXTENT,o/t.EXTENT,1]),t.multiply(l,n?this.alignedProjMatrix:this.projMatrix,l),i[r]=new Float32Array(l),i[r]},ma.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},ma.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var e,n,r,i,a=-90,o=90,s=-180,l=180,c=this.size,u=this._unmodified;if(this.latRange){var f=this.latRange;a=t.mercatorYfromLat(f[1])*this.worldSize,e=(o=t.mercatorYfromLat(f[0])*this.worldSize)-ao&&(i=o-v)}if(this.lngRange){var m=d.x,y=c.x/2;m-yl&&(r=l-y)}void 0===r&&void 0===i||(this.center=this.unproject(new t.Point(void 0!==r?r:d.x,void 0!==i?i:d.y))),this._unmodified=u,this._constraining=!1}},ma.prototype._calcMatrices=function(){if(this.height){var e=this._fov/2,n=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(e)*this.height;var r=Math.PI/2+this._pitch,i=this._fov*(.5+n.y/this.height),a=Math.sin(i)*this.cameraToCenterDistance/Math.sin(t.clamp(Math.PI-r-i,.01,Math.PI-.01)),o=this.point,s=o.x,l=o.y,c=1.01*(Math.cos(Math.PI/2-this._pitch)*a+this.cameraToCenterDistance),u=this.height/50,f=new Float64Array(16);t.perspective(f,this._fov,this.width/this.height,u,c),f[8]=2*-n.x/this.width,f[9]=2*n.y/this.height,t.scale(f,f,[1,-1,1]),t.translate(f,f,[0,0,-this.cameraToCenterDistance]),t.rotateX(f,f,this._pitch),t.rotateZ(f,f,this.angle),t.translate(f,f,[-s,-l,0]),this.mercatorMatrix=t.scale([],f,[this.worldSize,this.worldSize,this.worldSize]),t.scale(f,f,[1,1,t.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=f,this.invProjMatrix=t.invert([],this.projMatrix);var h=this.width%2/2,d=this.height%2/2,p=Math.cos(this.angle),g=Math.sin(this.angle),v=s-Math.round(s)+p*h+g*d,m=l-Math.round(l)+p*d+g*h,y=new Float64Array(f);if(t.translate(y,y,[v>.5?v-1:v,m>.5?m-1:m,0]),this.alignedProjMatrix=y,f=t.create(),t.scale(f,f,[this.width/2,-this.height/2,1]),t.translate(f,f,[1,-1,0]),this.labelPlaneMatrix=f,f=t.create(),t.scale(f,f,[1,-1,1]),t.translate(f,f,[-1,-1,0]),t.scale(f,f,[2/this.width,2/this.height,1]),this.glCoordMatrix=f,this.pixelMatrix=t.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),!(f=t.invert(new Float64Array(16),this.pixelMatrix)))throw new Error("failed to invert matrix");this.pixelMatrixInverse=f,this._posMatrixCache={},this._alignedPosMatrixCache={}}},ma.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var e=this.pointCoordinate(new t.Point(0,0)),n=[e.x*this.worldSize,e.y*this.worldSize,0,1];return t.transformMat4(n,n,this.pixelMatrix)[3]/this.cameraToCenterDistance},ma.prototype.getCameraPoint=function(){var e=this._pitch,n=Math.tan(e)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new t.Point(0,n))},ma.prototype.getCameraQueryGeometry=function(e){var n=this.getCameraPoint();if(1===e.length)return[e[0],n];for(var r=n.x,i=n.y,a=n.x,o=n.y,s=0,l=e;s=3&&!t.some((function(t){return isNaN(t)}))){var e=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(t[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:e,pitch:+(t[4]||0)}),!0}return!1},xa.prototype._updateHashUnthrottled=function(){var e=this.getHashString();try{t.window.history.replaceState(t.window.history.state,"",e)}catch(n){}};var wa={linearity:.3,easing:t.bezier(0,0,.3,1)},_a=t.extend({deceleration:2500,maxSpeed:1400},wa),ka=t.extend({deceleration:20,maxSpeed:1400},wa),Ta=t.extend({deceleration:1e3,maxSpeed:360},wa),Ma=t.extend({deceleration:1e3,maxSpeed:90},wa),Aa=function(t){this._map=t,this.clear()};function Sa(t,e){(!t.duration||t.duration0&&n-e[0].time>r;)e.shift()},Aa.prototype._onMoveEnd=function(e){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var n={zoom:0,bearing:0,pitch:0,pan:new t.Point(0,0),pinchAround:void 0,around:void 0},r=0,i=this._inertiaBuffer;r=this._clickTolerance||this._map.fire(new Ca(t.type,this._map,t))},Oa.prototype.dblclick=function(t){return this._firePreventable(new Ca(t.type,this._map,t))},Oa.prototype.mouseover=function(t){this._map.fire(new Ca(t.type,this._map,t))},Oa.prototype.mouseout=function(t){this._map.fire(new Ca(t.type,this._map,t))},Oa.prototype.touchstart=function(t){return this._firePreventable(new Pa(t.type,this._map,t))},Oa.prototype.touchmove=function(t){this._map.fire(new Pa(t.type,this._map,t))},Oa.prototype.touchend=function(t){this._map.fire(new Pa(t.type,this._map,t))},Oa.prototype.touchcancel=function(t){this._map.fire(new Pa(t.type,this._map,t))},Oa.prototype._firePreventable=function(t){if(this._map.fire(t),t.defaultPrevented)return{}},Oa.prototype.isEnabled=function(){return!0},Oa.prototype.isActive=function(){return!1},Oa.prototype.enable=function(){},Oa.prototype.disable=function(){};var Ia=function(t){this._map=t};Ia.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},Ia.prototype.mousemove=function(t){this._map.fire(new Ca(t.type,this._map,t))},Ia.prototype.mousedown=function(){this._delayContextMenu=!0},Ia.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new Ca("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},Ia.prototype.contextmenu=function(t){this._delayContextMenu?this._contextMenuEvent=t:this._map.fire(new Ca(t.type,this._map,t)),this._map.listens("contextmenu")&&t.preventDefault()},Ia.prototype.isEnabled=function(){return!0},Ia.prototype.isActive=function(){return!1},Ia.prototype.enable=function(){},Ia.prototype.disable=function(){};var Da=function(t,e){this._map=t,this._el=t.getCanvasContainer(),this._container=t.getContainer(),this._clickTolerance=e.clickTolerance||1};function Ra(t,e){for(var n={},r=0;rthis.numTouches)&&(this.aborted=!0),this.aborted||(void 0===this.startTime&&(this.startTime=t.timeStamp),n.length===this.numTouches&&(this.centroid=za(e),this.touches=Ra(n,e)))},Ba.prototype.touchmove=function(t,e,n){if(!this.aborted&&this.centroid){var r=Ra(n,e);for(var i in this.touches){var a=this.touches[i],o=r[i];(!o||o.dist(a)>Fa)&&(this.aborted=!0)}}},Ba.prototype.touchend=function(t,e,n){if((!this.centroid||t.timeStamp-this.startTime>ja)&&(this.aborted=!0),0===n.length){var r=!this.aborted&&this.centroid;if(this.reset(),r)return r}};var Ua=function(t){this.singleTap=new Ba(t),this.numTaps=t.numTaps,this.reset()};Ua.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Ua.prototype.touchstart=function(t,e,n){this.singleTap.touchstart(t,e,n)},Ua.prototype.touchmove=function(t,e,n){this.singleTap.touchmove(t,e,n)},Ua.prototype.touchend=function(t,e,n){var r=this.singleTap.touchend(t,e,n);if(r){var i=t.timeStamp-this.lastTime0&&(this._active=!0);var i=Ra(r,n),a=new t.Point(0,0),o=new t.Point(0,0),s=0;for(var l in i){var c=i[l],u=this._touches[l];u&&(a._add(c),o._add(c.sub(u)),s++,i[l]=c)}if(this._touches=i,!(sMath.abs(t.x)}var ao=100,oo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.reset=function(){t.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},e.prototype._start=function(t){this._lastPoints=t,io(t[0].sub(t[1]))&&(this._valid=!1)},e.prototype._move=function(t,e,n){var r=t[0].sub(this._lastPoints[0]),i=t[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(r,i,n.timeStamp),this._valid)return this._lastPoints=t,this._active=!0,{pitchDelta:(r.y+i.y)/2*-.5}},e.prototype.gestureBeginsVertically=function(t,e,n){if(void 0!==this._valid)return this._valid;var r=2,i=t.mag()>=r,a=e.mag()>=r;if(i||a){if(!i||!a)return void 0===this._firstMove&&(this._firstMove=n),n-this._firstMove0===e.y>0;return io(t)&&io(e)&&o}},e}(Ka),so={panStep:100,bearingStep:15,pitchStep:10},lo=function(){var t=so;this._panStep=t.panStep,this._bearingStep=t.bearingStep,this._pitchStep=t.pitchStep};function co(t){return t*(2-t)}lo.prototype.reset=function(){this._active=!1},lo.prototype.keydown=function(t){var e=this;if(!(t.altKey||t.ctrlKey||t.metaKey)){var n=0,r=0,i=0,a=0,o=0;switch(t.keyCode){case 61:case 107:case 171:case 187:n=1;break;case 189:case 109:case 173:n=-1;break;case 37:t.shiftKey?r=-1:(t.preventDefault(),a=-1);break;case 39:t.shiftKey?r=1:(t.preventDefault(),a=1);break;case 38:t.shiftKey?i=1:(t.preventDefault(),o=-1);break;case 40:t.shiftKey?i=-1:(t.preventDefault(),o=1);break;default:return}return{cameraAnimation:function(s){var l=s.getZoom();s.easeTo({duration:300,easeId:"keyboardHandler",easing:co,zoom:n?Math.round(l)+n*(t.shiftKey?2:1):l,bearing:s.getBearing()+r*e._bearingStep,pitch:s.getPitch()+i*e._pitchStep,offset:[-a*e._panStep,-o*e._panStep],center:s.getCenter()},{originalEvent:t})}}}},lo.prototype.enable=function(){this._enabled=!0},lo.prototype.disable=function(){this._enabled=!1,this.reset()},lo.prototype.isEnabled=function(){return this._enabled},lo.prototype.isActive=function(){return this._active};var uo=4.000244140625,fo=.01,ho=1/450,po=2,go=function(e,n){this._map=e,this._el=e.getCanvasContainer(),this._handler=n,this._delta=0,this._defaultZoomRate=fo,this._wheelZoomRate=ho,t.bindAll(["_onWheel","_onTimeout","_onScrollFrame","_onScrollFinished"],this)};go.prototype.setZoomRate=function(t){this._defaultZoomRate=t},go.prototype.setWheelZoomRate=function(t){this._wheelZoomRate=t},go.prototype.isEnabled=function(){return!!this._enabled},go.prototype.isActive=function(){return!!this._active||void 0!==this._finishTimeout},go.prototype.isZooming=function(){return!!this._zooming},go.prototype.enable=function(t){this.isEnabled()||(this._enabled=!0,this._aroundCenter=t&&"center"===t.around)},go.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},go.prototype.wheel=function(e){if(this.isEnabled()){var n=e.deltaMode===t.window.WheelEvent.DOM_DELTA_LINE?40*e.deltaY:e.deltaY,r=t.browser.now(),i=r-(this._lastWheelEventTime||0);this._lastWheelEventTime=r,0!==n&&n%uo===0?this._type="wheel":0!==n&&Math.abs(n)<4?this._type="trackpad":i>400?(this._type=null,this._lastValue=n,this._timeout=setTimeout(this._onTimeout,40,e)):this._type||(this._type=Math.abs(i*n)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,n+=this._lastValue)),e.shiftKey&&n&&(n/=4),this._type&&(this._lastWheelEvent=e,this._delta-=n,this._active||this._start(e)),e.preventDefault()}},go.prototype._onTimeout=function(t){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(t)},go.prototype._start=function(e){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 r=n.mousePos(this._el,e);this._around=t.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(r)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},go.prototype.renderFrame=function(){return this._onScrollFrame()},go.prototype._onScrollFrame=function(){var e=this;if(this._frameId&&(this._frameId=null,this.isActive())){var n=this._map.transform;if(0!==this._delta){var r="wheel"===this._type&&Math.abs(this._delta)>uo?this._wheelZoomRate:this._defaultZoomRate,i=po/(1+Math.exp(-Math.abs(this._delta*r)));this._delta<0&&0!==i&&(i=1/i);var a="number"===typeof this._targetZoom?n.zoomScale(this._targetZoom):n.scale;this._targetZoom=Math.min(n.maxZoom,Math.max(n.minZoom,n.scaleZoom(a*i))),"wheel"===this._type&&(this._startZoom=n.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var o,s="number"===typeof this._targetZoom?this._targetZoom:n.zoom,l=this._startZoom,c=this._easing,u=!1;if("wheel"===this._type&&l&&c){var f=Math.min((t.browser.now()-this._lastWheelEventTime)/200,1),h=c(f);o=t.number(l,s,h),f<1?this._frameId||(this._frameId=!0):u=!0}else o=s,u=!0;return this._active=!0,u&&(this._active=!1,this._finishTimeout=setTimeout((function(){e._zooming=!1,e._handler._triggerRenderFrame(),delete e._targetZoom,delete e._finishTimeout}),200)),{noInertia:!0,needsRenderFrame:!u,zoomDelta:o-n.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},go.prototype._smoothOutEasing=function(e){var n=t.ease;if(this._prevEase){var r=this._prevEase,i=(t.browser.now()-r.start)/r.duration,a=r.easing(i+.01)-r.easing(i),o=.27/Math.sqrt(a*a+1e-4)*.01,s=Math.sqrt(.0729-o*o);n=t.bezier(o,s,.25,1)}return this._prevEase={start:t.browser.now(),duration:e,easing:n},n},go.prototype.reset=function(){this._active=!1};var vo=function(t,e){this._clickZoom=t,this._tapZoom=e};vo.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},vo.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},vo.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},vo.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var mo=function(){this.reset()};mo.prototype.reset=function(){this._active=!1},mo.prototype.dblclick=function(t,e){return t.preventDefault(),{cameraAnimation:function(n){n.easeTo({duration:300,zoom:n.getZoom()+(t.shiftKey?-1:1),around:n.unproject(e)},{originalEvent:t})}}},mo.prototype.enable=function(){this._enabled=!0},mo.prototype.disable=function(){this._enabled=!1,this.reset()},mo.prototype.isEnabled=function(){return this._enabled},mo.prototype.isActive=function(){return this._active};var yo=function(){this._tap=new Ua({numTouches:1,numTaps:1}),this.reset()};yo.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},yo.prototype.touchstart=function(t,e,n){this._swipePoint||(this._tapTime&&t.timeStamp-this._tapTime>Na&&this.reset(),this._tapTime?n.length>0&&(this._swipePoint=e[0],this._swipeTouch=n[0].identifier):this._tap.touchstart(t,e,n))},yo.prototype.touchmove=function(t,e,n){if(this._tapTime){if(this._swipePoint){if(n[0].identifier!==this._swipeTouch)return;var r=e[0],i=r.y-this._swipePoint.y;return this._swipePoint=r,t.preventDefault(),this._active=!0,{zoomDelta:i/128}}}else this._tap.touchmove(t,e,n)},yo.prototype.touchend=function(t,e,n){this._tapTime?this._swipePoint&&0===n.length&&this.reset():this._tap.touchend(t,e,n)&&(this._tapTime=t.timeStamp)},yo.prototype.touchcancel=function(){this.reset()},yo.prototype.enable=function(){this._enabled=!0},yo.prototype.disable=function(){this._enabled=!1,this.reset()},yo.prototype.isEnabled=function(){return this._enabled},yo.prototype.isActive=function(){return this._active};var bo=function(t,e,n){this._el=t,this._mousePan=e,this._touchPan=n};bo.prototype.enable=function(t){this._inertiaOptions=t||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},bo.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},bo.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},bo.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var xo=function(t,e,n){this._pitchWithRotate=t.pitchWithRotate,this._mouseRotate=e,this._mousePitch=n};xo.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},xo.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},xo.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},xo.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var wo=function(t,e,n,r){this._el=t,this._touchZoom=e,this._touchRotate=n,this._tapDragZoom=r,this._rotationDisabled=!1,this._enabled=!0};wo.prototype.enable=function(t){this._touchZoom.enable(t),this._rotationDisabled||this._touchRotate.enable(t),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},wo.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},wo.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},wo.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},wo.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},wo.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var _o=function(t){return t.zoom||t.drag||t.pitch||t.rotate},ko=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(t.Event);function To(t){return t.panDelta&&t.panDelta.mag()||t.zoomDelta||t.bearingDelta||t.pitchDelta}var Mo=function(e,r){this._map=e,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Aa(e),this._bearingSnap=r.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(r),t.bindAll(["handleEvent","handleWindowEvent"],this);var i=this._el;this._listeners=[[i,"touchstart",{passive:!1}],[i,"touchmove",{passive:!1}],[i,"touchend",void 0],[i,"touchcancel",void 0],[i,"mousedown",void 0],[i,"mousemove",void 0],[i,"mouseup",void 0],[t.window.document,"mousemove",{capture:!0}],[t.window.document,"mouseup",void 0],[i,"mouseover",void 0],[i,"mouseout",void 0],[i,"dblclick",void 0],[i,"click",void 0],[i,"keydown",{capture:!1}],[i,"keyup",void 0],[i,"wheel",{passive:!1}],[i,"contextmenu",void 0],[t.window,"blur",void 0]];for(var a=0,o=this._listeners;aa?Math.min(2,w):Math.max(.5,w),_=Math.pow(v,1-e),k=i.unproject(b.add(x.mult(e*_)).mult(g));i.setLocationAtPoint(i.renderWorldCopies?k.wrap():k,p)}r._fireMoveEvents(n)}),(function(t){r._afterEase(n,t)}),e),this},n.prototype._prepareEase=function(e,n,r){void 0===r&&(r={}),this._moving=!0,n||r.moving||this.fire(new t.Event("movestart",e)),this._zooming&&!r.zooming&&this.fire(new t.Event("zoomstart",e)),this._rotating&&!r.rotating&&this.fire(new t.Event("rotatestart",e)),this._pitching&&!r.pitching&&this.fire(new t.Event("pitchstart",e))},n.prototype._fireMoveEvents=function(e){this.fire(new t.Event("move",e)),this._zooming&&this.fire(new t.Event("zoom",e)),this._rotating&&this.fire(new t.Event("rotate",e)),this._pitching&&this.fire(new t.Event("pitch",e))},n.prototype._afterEase=function(e,n){if(!this._easeId||!n||this._easeId!==n){delete this._easeId;var r=this._zooming,i=this._rotating,a=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,r&&this.fire(new t.Event("zoomend",e)),i&&this.fire(new t.Event("rotateend",e)),a&&this.fire(new t.Event("pitchend",e)),this.fire(new t.Event("moveend",e))}},n.prototype.flyTo=function(e,n){var r=this;if(!e.essential&&t.browser.prefersReducedMotion){var i=t.pick(e,["center","zoom","bearing","pitch","around"]);return this.jumpTo(i,n)}this.stop(),e=t.extend({offset:[0,0],speed:1.2,curve:1.42,easing:t.ease},e);var a=this.transform,o=this.getZoom(),s=this.getBearing(),l=this.getPitch(),c=this.getPadding(),u="zoom"in e?t.clamp(+e.zoom,a.minZoom,a.maxZoom):o,f="bearing"in e?this._normalizeBearing(e.bearing,s):s,h="pitch"in e?+e.pitch:l,d="padding"in e?e.padding:a.padding,p=a.zoomScale(u-o),g=t.Point.convert(e.offset),v=a.centerPoint.add(g),m=a.pointLocation(v),y=t.LngLat.convert(e.center||m);this._normalizeCenter(y);var b=a.project(m),x=a.project(y).sub(b),w=e.curve,_=Math.max(a.width,a.height),k=_/p,T=x.mag();if("minZoom"in e){var M=t.clamp(Math.min(e.minZoom,o,u),a.minZoom,a.maxZoom),A=_/a.zoomScale(M-o);w=Math.sqrt(A/T*2)}var S=w*w;function E(t){var e=(k*k-_*_+(t?-1:1)*S*S*T*T)/(2*(t?k:_)*S*T);return Math.log(Math.sqrt(e*e+1)-e)}function C(t){return(Math.exp(t)-Math.exp(-t))/2}function P(t){return(Math.exp(t)+Math.exp(-t))/2}function L(t){return C(t)/P(t)}var O=E(0),I=function(t){return P(O)/P(O+w*t)},D=function(t){return _*((P(O)*L(O+w*t)-C(O))/S)/T},R=(E(1)-O)/w;if(Math.abs(T)<1e-6||!isFinite(R)){if(Math.abs(_-k)<1e-6)return this.easeTo(e,n);var z=k<_?-1:1;R=Math.abs(Math.log(k/_))/w,D=function(){return 0},I=function(t){return Math.exp(z*w*t)}}if("duration"in e)e.duration=+e.duration;else{var N="screenSpeed"in e?+e.screenSpeed/w:+e.speed;e.duration=1e3*R/N}return e.maxDuration&&e.duration>e.maxDuration&&(e.duration=0),this._zooming=!0,this._rotating=s!==f,this._pitching=h!==l,this._padding=!a.isPaddingEqual(d),this._prepareEase(n,!1),this._ease((function(e){var i=e*R,p=1/I(i);a.zoom=1===e?u:o+a.scaleZoom(p),r._rotating&&(a.bearing=t.number(s,f,e)),r._pitching&&(a.pitch=t.number(l,h,e)),r._padding&&(a.interpolatePadding(c,d,e),v=a.centerPoint.add(g));var m=1===e?y:a.unproject(b.add(x.mult(D(i))).mult(p));a.setLocationAtPoint(a.renderWorldCopies?m.wrap():m,v),r._fireMoveEvents(n)}),(function(){return r._afterEase(n)}),e),this},n.prototype.isEasing=function(){return!!this._easeFrameId},n.prototype.stop=function(){return this._stop()},n.prototype._stop=function(t,e){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var n=this._onEaseEnd;delete this._onEaseEnd,n.call(this,e)}if(!t){var r=this.handlers;r&&r.stop()}return this},n.prototype._ease=function(e,n,r){!1===r.animate||0===r.duration?(e(1),n()):(this._easeStart=t.browser.now(),this._easeOptions=r,this._onEaseFrame=e,this._onEaseEnd=n,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},n.prototype._renderFrameCallback=function(){var e=Math.min((t.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(e)),e<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},n.prototype._normalizeBearing=function(e,n){e=t.wrap(e,-180,180);var r=Math.abs(e-n);return Math.abs(e-360-n)180?-360:n<-180?360:0}},n}(t.Evented),So=function(e){void 0===e&&(e={}),this.options=e,t.bindAll(["_updateEditLink","_updateData","_updateCompact"],this)};So.prototype.getDefaultPosition=function(){return"bottom-right"},So.prototype.onAdd=function(t){var e=this.options&&this.options.compact;return this._map=t,this._container=n.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._innerContainer=n.create("div","mapboxgl-ctrl-attrib-inner",this._container),e&&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),void 0===e&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},So.prototype.onRemove=function(){n.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},So.prototype._updateEditLink=function(){var e=this._editLink;e||(e=this._editLink=this._container.querySelector(".mapbox-improve-map"));var n=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||t.config.ACCESS_TOKEN}];if(e){var r=n.reduce((function(t,e,r){return e.value&&(t+=e.key+"="+e.value+(r=0)return!1;return!0}))).join(" | ");o!==this._attribHTML&&(this._attribHTML=o,t.length?(this._innerContainer.innerHTML=o,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},So.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact")};var Eo=function(){t.bindAll(["_updateLogo"],this),t.bindAll(["_updateCompact"],this)};Eo.prototype.onAdd=function(t){this._map=t,this._container=n.create("div","mapboxgl-ctrl");var e=n.create("a","mapboxgl-ctrl-logo");return e.target="_blank",e.rel="noopener nofollow",e.href="https://www.mapbox.com/",e.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),e.setAttribute("rel","noopener nofollow"),this._container.appendChild(e),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},Eo.prototype.onRemove=function(){n.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},Eo.prototype.getDefaultPosition=function(){return"bottom-left"},Eo.prototype._updateLogo=function(t){t&&"metadata"!==t.sourceDataType||(this._container.style.display=this._logoRequired()?"block":"none")},Eo.prototype._logoRequired=function(){if(this._map.style){var t=this._map.style.sourceCaches;for(var e in t)if(t[e].getSource().mapbox_logo)return!0;return!1}},Eo.prototype._updateCompact=function(){var t=this._container.children;if(t.length){var e=t[0];this._map.getCanvasContainer().offsetWidth<250?e.classList.add("mapboxgl-compact"):e.classList.remove("mapboxgl-compact")}};var Co=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};Co.prototype.add=function(t){var e=++this._id;return this._queue.push({callback:t,id:e,cancelled:!1}),e},Co.prototype.remove=function(t){for(var e=this._currentlyRunning,n=0,r=e?this._queue.concat(e):this._queue;ne.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(null!=e.minPitch&&null!=e.maxPitch&&e.minPitch>e.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(null!=e.minPitch&&e.minPitchNo)throw new Error("maxPitch must be less than or equal to "+No);var i=new ma(e.minZoom,e.maxZoom,e.minPitch,e.maxPitch,e.renderWorldCopies);if(r.call(this,i,e),this._interactive=e.interactive,this._maxTileCacheSize=e.maxTileCacheSize,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._antialias=e.antialias,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles,this._fadeDuration=e.fadeDuration,this._crossSourceCollisions=e.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=e.collectResourceTiming,this._renderTaskQueue=new Co,this._controls=[],this._mapId=t.uniqueId(),this._locale=t.extend({},Po,e.locale),this._requestManager=new t.RequestManager(e.transformRequest,e.accessToken),"string"===typeof e.container){if(this._container=t.window.document.getElementById(e.container),!this._container)throw new Error("Container '"+e.container+"' not found.")}else{if(!(e.container instanceof Oo))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=e.container}if(e.maxBounds&&this.setMaxBounds(e.maxBounds),t.bindAll(["_onWindowOnline","_onWindowResize","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),void 0===this.painter)throw new Error("Failed to initialize WebGL.");this.on("move",(function(){return n._update(!1)})),this.on("moveend",(function(){return n._update(!1)})),this.on("zoom",(function(){return n._update(!0)})),"undefined"!==typeof t.window&&(t.window.addEventListener("online",this._onWindowOnline,!1),t.window.addEventListener("resize",this._onWindowResize,!1)),this.handlers=new Mo(this,e);var a="string"===typeof e.hash&&e.hash||void 0;this._hash=e.hash&&new xa(a).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:e.center,zoom:e.zoom,bearing:e.bearing,pitch:e.pitch}),e.bounds&&(this.resize(),this.fitBounds(e.bounds,t.extend({},e.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=e.localIdeographFontFamily,e.style&&this.setStyle(e.style,{localIdeographFontFamily:e.localIdeographFontFamily}),e.attributionControl&&this.addControl(new So({customAttribution:e.customAttribution})),this.addControl(new Eo,e.logoPosition),this.on("style.load",(function(){n.transform.unmodified&&n.jumpTo(n.style.stylesheet)})),this.on("data",(function(e){n._update("style"===e.dataType),n.fire(new t.Event(e.dataType+"data",e))})),this.on("dataloading",(function(e){n.fire(new t.Event(e.dataType+"dataloading",e))}))}r&&(i.__proto__=r),i.prototype=Object.create(r&&r.prototype),i.prototype.constructor=i;var a={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return i.prototype._getMapId=function(){return this._mapId},i.prototype.addControl=function(e,n){if(void 0===n&&e.getDefaultPosition&&(n=e.getDefaultPosition()),void 0===n&&(n="top-right"),!e||!e.onAdd)return this.fire(new t.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var r=e.onAdd(this);this._controls.push(e);var i=this._controlPositions[n];return-1!==n.indexOf("bottom")?i.insertBefore(r,i.firstChild):i.appendChild(r),this},i.prototype.removeControl=function(e){if(!e||!e.onRemove)return this.fire(new t.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var n=this._controls.indexOf(e);return n>-1&&this._controls.splice(n,1),e.onRemove(this),this},i.prototype.resize=function(e){var n=this._containerDimensions(),r=n[0],i=n[1];this._resizeCanvas(r,i),this.transform.resize(r,i),this.painter.resize(r,i);var a=!this._moving;return a&&(this.stop(),this.fire(new t.Event("movestart",e)).fire(new t.Event("move",e))),this.fire(new t.Event("resize",e)),a&&this.fire(new t.Event("moveend",e)),this},i.prototype.getBounds=function(){return this.transform.getBounds()},i.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},i.prototype.setMaxBounds=function(e){return this.transform.setMaxBounds(t.LngLatBounds.convert(e)),this._update()},i.prototype.setMinZoom=function(t){if((t=null===t||void 0===t?Do:t)>=Do&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=t,this._update(),this.getZoom()>t&&this.setZoom(t),this;throw new Error("maxZoom must be greater than the current minZoom")},i.prototype.getMaxZoom=function(){return this.transform.maxZoom},i.prototype.setMinPitch=function(t){if((t=null===t||void 0===t?zo:t)=zo&&t<=this.transform.maxPitch)return this.transform.minPitch=t,this._update(),this.getPitch()No)throw new Error("maxPitch must be less than or equal to "+No);if(t>=this.transform.minPitch)return this.transform.maxPitch=t,this._update(),this.getPitch()>t&&this.setPitch(t),this;throw new Error("maxPitch must be greater than the current minPitch")},i.prototype.getMaxPitch=function(){return this.transform.maxPitch},i.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},i.prototype.setRenderWorldCopies=function(t){return this.transform.renderWorldCopies=t,this._update()},i.prototype.project=function(e){return this.transform.locationPoint(t.LngLat.convert(e))},i.prototype.unproject=function(e){return this.transform.pointLocation(t.Point.convert(e))},i.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},i.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},i.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},i.prototype._createDelegatedListener=function(t,e,n){var r,i=this;if("mouseenter"===t||"mouseover"===t){var a=!1,o=function(r){var o=i.getLayer(e)?i.queryRenderedFeatures(r.point,{layers:[e]}):[];o.length?a||(a=!0,n.call(i,new Ca(t,i,r.originalEvent,{features:o}))):a=!1};return{layer:e,listener:n,delegates:{mousemove:o,mouseout:function(){a=!1}}}}if("mouseleave"===t||"mouseout"===t){var s=!1,l=function(r){(i.getLayer(e)?i.queryRenderedFeatures(r.point,{layers:[e]}):[]).length?s=!0:s&&(s=!1,n.call(i,new Ca(t,i,r.originalEvent)))},c=function(e){s&&(s=!1,n.call(i,new Ca(t,i,e.originalEvent)))};return{layer:e,listener:n,delegates:{mousemove:l,mouseout:c}}}var u=function(t){var r=i.getLayer(e)?i.queryRenderedFeatures(t.point,{layers:[e]}):[];r.length&&(t.features=r,n.call(i,t),delete t.features)};return{layer:e,listener:n,delegates:(r={},r[t]=u,r)}},i.prototype.on=function(t,e,n){if(void 0===n)return r.prototype.on.call(this,t,e);var i=this._createDelegatedListener(t,e,n);for(var a in this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[t]=this._delegatedListeners[t]||[],this._delegatedListeners[t].push(i),i.delegates)this.on(a,i.delegates[a]);return this},i.prototype.once=function(t,e,n){if(void 0===n)return r.prototype.once.call(this,t,e);var i=this._createDelegatedListener(t,e,n);for(var a in i.delegates)this.once(a,i.delegates[a]);return this},i.prototype.off=function(t,e,n){var i=this;if(void 0===n)return r.prototype.off.call(this,t,e);var a=function(r){for(var a=r[t],o=0;o180;){var s=r.locationPoint(e);if(s.x>=0&&s.y>=0&&s.x<=r.width&&s.y<=r.height)break;e.lng>r.center.lng?e.lng-=360:e.lng+=360}return e}Vo.prototype.down=function(t,e){this.mouseRotate.mousedown(t,e),this.mousePitch&&this.mousePitch.mousedown(t,e),n.disableDrag()},Vo.prototype.move=function(t,e){var n=this.map,r=this.mouseRotate.mousemoveWindow(t,e);if(r&&r.bearingDelta&&n.setBearing(n.getBearing()+r.bearingDelta),this.mousePitch){var i=this.mousePitch.mousemoveWindow(t,e);i&&i.pitchDelta&&n.setPitch(n.getPitch()+i.pitchDelta)}},Vo.prototype.off=function(){var t=this.element;n.removeEventListener(t,"mousedown",this.mousedown),n.removeEventListener(t,"touchstart",this.touchstart,{passive:!1}),n.removeEventListener(t,"touchmove",this.touchmove),n.removeEventListener(t,"touchend",this.touchend),n.removeEventListener(t,"touchcancel",this.reset),this.offTemp()},Vo.prototype.offTemp=function(){n.enableDrag(),n.removeEventListener(t.window,"mousemove",this.mousemove),n.removeEventListener(t.window,"mouseup",this.mouseup)},Vo.prototype.mousedown=function(e){this.down(t.extend({},e,{ctrlKey:!0,preventDefault:function(){return e.preventDefault()}}),n.mousePos(this.element,e)),n.addEventListener(t.window,"mousemove",this.mousemove),n.addEventListener(t.window,"mouseup",this.mouseup)},Vo.prototype.mousemove=function(t){this.move(t,n.mousePos(this.element,t))},Vo.prototype.mouseup=function(t){this.mouseRotate.mouseupWindow(t),this.mousePitch&&this.mousePitch.mouseupWindow(t),this.offTemp()},Vo.prototype.touchstart=function(t){1!==t.targetTouches.length?this.reset():(this._startPos=this._lastPos=n.touchPos(this.element,t.targetTouches)[0],this.down({type:"mousedown",button:0,ctrlKey:!0,preventDefault:function(){return t.preventDefault()}},this._startPos))},Vo.prototype.touchmove=function(t){1!==t.targetTouches.length?this.reset():(this._lastPos=n.touchPos(this.element,t.targetTouches)[0],this.move({preventDefault:function(){return t.preventDefault()}},this._lastPos))},Vo.prototype.touchend=function(t){0===t.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)e.getEast()||n.latitudee.getNorth())},r.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")}},r.prototype._onSuccess=function(e){if(this._map){if(this._isOutOfMapMaxBounds(e))return this._setErrorState(),this.fire(new t.Event("outofmaxbounds",e)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=e,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&&"OFF"!==this._watchState&&this._updateMarker(e),this.options.trackUserLocation&&"ACTIVE_LOCK"!==this._watchState||this._updateCamera(e),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new t.Event("geolocate",e)),this._finish()}},r.prototype._updateCamera=function(e){var n=new t.LngLat(e.coords.longitude,e.coords.latitude),r=e.coords.accuracy,i=this._map.getBearing(),a=t.extend({bearing:i},this.options.fitBoundsOptions);this._map.fitBounds(n.toBounds(r),a,{geolocateSource:!0})},r.prototype._updateMarker=function(e){if(e){var n=new t.LngLat(e.coords.longitude,e.coords.latitude);this._accuracyCircleMarker.setLngLat(n).addTo(this._map),this._userLocationDotMarker.setLngLat(n).addTo(this._map),this._accuracy=e.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},r.prototype._updateCircleRadius=function(){var t=this._map._container.clientHeight/2,e=this._map.unproject([0,t]),n=this._map.unproject([1,t]),r=e.distanceTo(n),i=Math.ceil(2*this._accuracy/r);this._circleElement.style.width=i+"px",this._circleElement.style.height=i+"px"},r.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},r.prototype._onError=function(e){if(this._map){if(this.options.trackUserLocation)if(1===e.code){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 n=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=n,this._geolocateButton.setAttribute("aria-label",n),void 0!==this._geolocationWatchID&&this._clearWatch()}else{if(3===e.code&&Jo)return;this._setErrorState()}"OFF"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new t.Event("error",e)),this._finish()}},r.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},r.prototype._setupUI=function(e){var r=this;if(this._container.addEventListener("contextmenu",(function(t){return t.preventDefault()})),this._geolocateButton=n.create("button","mapboxgl-ctrl-geolocate",this._container),n.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",!1===e){t.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var i=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=i,this._geolocateButton.setAttribute("aria-label",i)}else{var a=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=a,this._geolocateButton.setAttribute("aria-label",a)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=n.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new $o(this._dotElement),this._circleElement=n.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new $o({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(e){var n=e.originalEvent&&"resize"===e.originalEvent.type;e.geolocateSource||"ACTIVE_LOCK"!==r._watchState||n||(r._watchState="BACKGROUND",r._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),r._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),r.fire(new t.Event("trackuserlocationend")))}))},r.prototype.trigger=function(){if(!this._setup)return t.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 t.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":Zo--,Jo=!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 t.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 t.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("OFF"===this._watchState&&void 0!==this._geolocationWatchID)this._clearWatch();else if(void 0===this._geolocationWatchID){var e;this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),++Zo>1?(e={maximumAge:6e5,timeout:0},Jo=!0):(e=this.options.positionOptions,Jo=!1),this._geolocationWatchID=t.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,e)}}else t.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},r.prototype._clearWatch=function(){t.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)},r}(t.Evented),ts={maxWidth:100,unit:"metric"},es=function(e){this.options=t.extend({},ts,e),t.bindAll(["_onMove","setUnit"],this)};function ns(t,e,n){var r=n&&n.maxWidth||100,i=t._container.clientHeight/2,a=t.unproject([0,i]),o=t.unproject([r,i]),s=a.distanceTo(o);if(n&&"imperial"===n.unit){var l=3.2808*s;l>5280?rs(e,r,l/5280,t._getUIString("ScaleControl.Miles")):rs(e,r,l,t._getUIString("ScaleControl.Feet"))}else n&&"nautical"===n.unit?rs(e,r,s/1852,t._getUIString("ScaleControl.NauticalMiles")):s>=1e3?rs(e,r,s/1e3,t._getUIString("ScaleControl.Kilometers")):rs(e,r,s,t._getUIString("ScaleControl.Meters"))}function rs(t,e,n,r){var i=as(n),a=i/n;t.style.width=e*a+"px",t.innerHTML=i+" "+r}function is(t){var e=Math.pow(10,Math.ceil(-Math.log(t)/Math.LN10));return Math.round(t*e)/e}function as(t){var e=Math.pow(10,(""+Math.floor(t)).length-1),n=t/e;return e*(n=n>=10?10:n>=5?5:n>=3?3:n>=2?2:n>=1?1:is(n))}es.prototype.getDefaultPosition=function(){return"bottom-left"},es.prototype._onMove=function(){ns(this._map,this._container,this.options)},es.prototype.onAdd=function(t){return this._map=t,this._container=n.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",t.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},es.prototype.onRemove=function(){n.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},es.prototype.setUnit=function(t){this.options.unit=t,ns(this._map,this._container,this.options)};var os=function(e){this._fullscreen=!1,e&&e.container&&(e.container instanceof t.window.HTMLElement?this._container=e.container:t.warnOnce("Full screen control 'container' must be a DOM element.")),t.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in t.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in t.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in t.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in t.window.document&&(this._fullscreenchange="MSFullscreenChange")};os.prototype.onAdd=function(e){return this._map=e,this._container||(this._container=this._map.getContainer()),this._controlContainer=n.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",t.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},os.prototype.onRemove=function(){n.remove(this._controlContainer),this._map=null,t.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},os.prototype._checkFullscreenSupport=function(){return!!(t.window.document.fullscreenEnabled||t.window.document.mozFullScreenEnabled||t.window.document.msFullscreenEnabled||t.window.document.webkitFullscreenEnabled)},os.prototype._setupUI=function(){var e=this._fullscreenButton=n.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);n.create("span","mapboxgl-ctrl-icon",e).setAttribute("aria-hidden",!0),e.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),t.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},os.prototype._updateTitle=function(){var t=this._getTitle();this._fullscreenButton.setAttribute("aria-label",t),this._fullscreenButton.title=t},os.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},os.prototype._isFullscreen=function(){return this._fullscreen},os.prototype._changeIcon=function(){(t.window.document.fullscreenElement||t.window.document.mozFullScreenElement||t.window.document.webkitFullscreenElement||t.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())},os.prototype._onClickFullscreen=function(){this._isFullscreen()?t.window.document.exitFullscreen?t.window.document.exitFullscreen():t.window.document.mozCancelFullScreen?t.window.document.mozCancelFullScreen():t.window.document.msExitFullscreen?t.window.document.msExitFullscreen():t.window.document.webkitCancelFullScreen&&t.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 ss={closeButton:!0,closeOnClick:!0,className:"",maxWidth:"240px"},ls=function(e){function r(n){e.call(this),this.options=t.extend(Object.create(ss),n),t.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.addTo=function(e){return this._map&&this.remove(),this._map=e,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 t.Event("open")),this},r.prototype.isOpen=function(){return!!this._map},r.prototype.remove=function(){return this._content&&n.remove(this._content),this._container&&(n.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 t.Event("close")),this},r.prototype.getLngLat=function(){return this._lngLat},r.prototype.setLngLat=function(e){return this._lngLat=t.LngLat.convert(e),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},r.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},r.prototype.getElement=function(){return this._container},r.prototype.setText=function(e){return this.setDOMContent(t.window.document.createTextNode(e))},r.prototype.setHTML=function(e){var n,r=t.window.document.createDocumentFragment(),i=t.window.document.createElement("body");for(i.innerHTML=e;n=i.firstChild;)r.appendChild(n);return this.setDOMContent(r)},r.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},r.prototype.setMaxWidth=function(t){return this.options.maxWidth=t,this._update(),this},r.prototype.setDOMContent=function(t){return this._createContent(),this._content.appendChild(t),this._update(),this},r.prototype.addClassName=function(t){this._container&&this._container.classList.add(t)},r.prototype.removeClassName=function(t){this._container&&this._container.classList.remove(t)},r.prototype.toggleClassName=function(t){if(this._container)return this._container.classList.toggle(t)},r.prototype._createContent=function(){this._content&&n.remove(this._content),this._content=n.create("div","mapboxgl-popup-content",this._container),this.options.closeButton&&(this._closeButton=n.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))},r.prototype._onMouseUp=function(t){this._update(t.point)},r.prototype._onMouseMove=function(t){this._update(t.point)},r.prototype._onDrag=function(t){this._update(t.point)},r.prototype._update=function(t){var e=this,r=this._lngLat||this._trackPointer;if(this._map&&r&&this._content&&(this._container||(this._container=n.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=n.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach((function(t){return e._container.classList.add(t)})),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=qo(this._lngLat,this._pos,this._map.transform)),!this._trackPointer||t)){var i=this._pos=this._trackPointer&&t?t:this._map.project(this._lngLat),a=this.options.anchor,o=cs(this.options.offset);if(!a){var s,l=this._container.offsetWidth,c=this._container.offsetHeight;s=i.y+o.bottom.ythis._map.transform.height-c?["bottom"]:[],i.xthis._map.transform.width-l/2&&s.push("right"),a=0===s.length?"bottom":s.join("-")}var u=i.add(o[a]).round();n.setTransform(this._container,Go[a]+" translate("+u.x+"px,"+u.y+"px)"),Wo(this._container,a,"popup")}},r.prototype._onClose=function(){this.remove()},r}(t.Evented);function cs(e){if(e){if("number"===typeof e){var n=Math.round(Math.sqrt(.5*Math.pow(e,2)));return{center:new t.Point(0,0),top:new t.Point(0,e),"top-left":new t.Point(n,n),"top-right":new t.Point(-n,n),bottom:new t.Point(0,-e),"bottom-left":new t.Point(n,-n),"bottom-right":new t.Point(-n,-n),left:new t.Point(e,0),right:new t.Point(-e,0)}}if(e instanceof t.Point||Array.isArray(e)){var r=t.Point.convert(e);return{center:r,top:r,"top-left":r,"top-right":r,bottom:r,"bottom-left":r,"bottom-right":r,left:r,right:r}}return{center:t.Point.convert(e.center||[0,0]),top:t.Point.convert(e.top||[0,0]),"top-left":t.Point.convert(e["top-left"]||[0,0]),"top-right":t.Point.convert(e["top-right"]||[0,0]),bottom:t.Point.convert(e.bottom||[0,0]),"bottom-left":t.Point.convert(e["bottom-left"]||[0,0]),"bottom-right":t.Point.convert(e["bottom-right"]||[0,0]),left:t.Point.convert(e.left||[0,0]),right:t.Point.convert(e.right||[0,0])}}return cs(new t.Point(0,0))}var us={version:t.version,supported:e,setRTLTextPlugin:t.setRTLTextPlugin,getRTLTextPluginStatus:t.getRTLTextPluginStatus,Map:Fo,NavigationControl:Ho,GeolocateControl:Qo,AttributionControl:So,ScaleControl:es,FullscreenControl:os,Popup:ls,Marker:$o,Style:mn,LngLat:t.LngLat,LngLatBounds:t.LngLatBounds,Point:t.Point,MercatorCoordinate:t.MercatorCoordinate,Evented:t.Evented,config:t.config,prewarm:ae,clearPrewarmedResources:oe,get accessToken(){return t.config.ACCESS_TOKEN},set accessToken(e){t.config.ACCESS_TOKEN=e},get baseApiUrl(){return t.config.API_URL},set baseApiUrl(e){t.config.API_URL=e},get workerCount(){return ee.workerCount},set workerCount(t){ee.workerCount=t},get maxParallelImageRequests(){return t.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(e){t.config.MAX_PARALLEL_IMAGE_REQUESTS=e},clearStorage:function(e){t.clearTileCache(e)},workerUrl:""};return us})),n}()},27084:function(t){"use strict";t.exports=Math.log2||function(t){return Math.log(t)*Math.LOG2E}},16825:function(t,e,n){"use strict";t.exports=function(t,e){e||(e=t,t=window);var n=0,i=0,a=0,o={shift:!1,alt:!1,control:!1,meta:!1},s=!1;function l(t){var e=!1;return"altKey"in t&&(e=e||t.altKey!==o.alt,o.alt=!!t.altKey),"shiftKey"in t&&(e=e||t.shiftKey!==o.shift,o.shift=!!t.shiftKey),"ctrlKey"in t&&(e=e||t.ctrlKey!==o.control,o.control=!!t.ctrlKey),"metaKey"in t&&(e=e||t.metaKey!==o.meta,o.meta=!!t.metaKey),e}function c(t,s){var c=r.x(s),u=r.y(s);"buttons"in s&&(t=0|s.buttons),(t!==n||c!==i||u!==a||l(s))&&(n=0|t,i=c||0,a=u||0,e&&e(n,i,a,o))}function u(t){c(0,t)}function f(){(n||i||a||o.shift||o.alt||o.meta||o.control)&&(i=a=0,n=0,o.shift=o.alt=o.control=o.meta=!1,e&&e(0,0,0,o))}function h(t){l(t)&&e&&e(n,i,a,o)}function d(t){0===r.buttons(t)?c(0,t):c(n,t)}function p(t){c(n|r.buttons(t),t)}function g(t){c(n&~r.buttons(t),t)}function v(){s||(s=!0,t.addEventListener("mousemove",d),t.addEventListener("mousedown",p),t.addEventListener("mouseup",g),t.addEventListener("mouseleave",u),t.addEventListener("mouseenter",u),t.addEventListener("mouseout",u),t.addEventListener("mouseover",u),t.addEventListener("blur",f),t.addEventListener("keyup",h),t.addEventListener("keydown",h),t.addEventListener("keypress",h),t!==window&&(window.addEventListener("blur",f),window.addEventListener("keyup",h),window.addEventListener("keydown",h),window.addEventListener("keypress",h)))}v();var m={element:t};return Object.defineProperties(m,{enabled:{get:function(){return s},set:function(e){e?v():s&&(s=!1,t.removeEventListener("mousemove",d),t.removeEventListener("mousedown",p),t.removeEventListener("mouseup",g),t.removeEventListener("mouseleave",u),t.removeEventListener("mouseenter",u),t.removeEventListener("mouseout",u),t.removeEventListener("mouseover",u),t.removeEventListener("blur",f),t.removeEventListener("keyup",h),t.removeEventListener("keydown",h),t.removeEventListener("keypress",h),t!==window&&(window.removeEventListener("blur",f),window.removeEventListener("keyup",h),window.removeEventListener("keydown",h),window.removeEventListener("keypress",h)))},enumerable:!0},buttons:{get:function(){return n},enumerable:!0},x:{get:function(){return i},enumerable:!0},y:{get:function(){return a},enumerable:!0},mods:{get:function(){return o},enumerable:!0}}),m};var r=n(74311)},48956:function(t){var e={left:0,top:0};t.exports=function(t,n,r){n=n||t.currentTarget||t.srcElement,Array.isArray(r)||(r=[0,0]);var i,a=t.clientX||0,o=t.clientY||0,s=(i=n)===window||i===document||i===document.body?e:i.getBoundingClientRect();return r[0]=a-s.left,r[1]=o-s.top,r}},74311:function(t,e){"use strict";function n(t){return t.target||t.srcElement||window}e.buttons=function(t){if("object"===typeof t){if("buttons"in t)return t.buttons;if("which"in t){if(2===(e=t.which))return 4;if(3===e)return 2;if(e>0)return 1<=0)return 1<0&&a(s,n))}catch(v){u.call(new h(n),v)}}}function u(t){var e=this;e.triggered||(e.triggered=!0,e.def&&(e=e.def),e.msg=t,e.state=2,e.chain.length>0&&a(s,e))}function f(t,e,n,r){for(var i=0;i1&&(i*=m=Math.sqrt(m),s*=m);var y=i*i,b=s*s,x=(c==u?-1:1)*Math.sqrt(Math.abs((y*b-y*v*v-b*g*g)/(y*v*v+b*g*g)));x==1/0&&(x=1);var w=x*i*v/s+(t+f)/2,_=x*-s*g/i+(r+h)/2,k=Math.asin(((r-_)/s).toFixed(9)),T=Math.asin(((h-_)/s).toFixed(9));(k=tT&&(k-=2*e),!u&&T>k&&(T-=2*e)}if(Math.abs(T-k)>n){var M=T,A=f,S=h;T=k+n*(u&&T>k?1:-1);var E=a(f=w+i*Math.cos(T),h=_+s*Math.sin(T),i,s,l,0,u,A,S,[T,M,w,_])}var C=Math.tan((T-k)/4),P=4/3*i*C,L=4/3*s*C,O=[2*t-(t+P*Math.sin(k)),2*r-(r-L*Math.cos(k)),f+P*Math.sin(T),h-L*Math.cos(T),f,h];if(d)return O;E&&(O=O.concat(E));for(var I=0;I7&&(n.push(m.splice(0,7)),m.unshift("C"));break;case"S":var b=d,x=p;"C"!=e&&"S"!=e||(b+=b-o,x+=x-l),m=["C",b,x,m[1],m[2],m[3],m[4]];break;case"T":"Q"==e||"T"==e?(f=2*d-f,h=2*p-h):(f=d,h=p),m=i(d,p,f,h,m[1],m[2]);break;case"Q":f=m[1],h=m[2],m=i(d,p,m[1],m[2],m[3],m[4]);break;case"L":m=r(d,p,m[1],m[2]);break;case"H":m=r(d,p,m[1],p);break;case"V":m=r(d,p,d,m[1]);break;case"Z":m=r(d,p,c,u)}e=y,d=m[m.length-2],p=m[m.length-1],m.length>4?(o=m[m.length-4],l=m[m.length-3]):(o=d,l=p),n.push(m)}return n}},56131:function(t){"use strict";var e=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;t.exports=function(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de","5"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},n=0;n<10;n++)e["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(e).map((function(t){return e[t]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(t){r[t]=t})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(i){return!1}}()?Object.assign:function(t,i){for(var a,o,s=function(t){if(null===t||void 0===t)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}(t),l=1;l0&&!i.call(t,0))for(var g=0;g0)for(var v=0;v=0&&"[object Function]"===e.call(t.callee)),r}},88641:function(t){"use strict";function e(t,e){if("string"!==typeof t)return[t];var n=[t];"string"===typeof e||Array.isArray(e)?e={brackets:e}:e||(e={});var r=e.brackets?Array.isArray(e.brackets)?e.brackets:[e.brackets]:["{}","[]","()"],i=e.escape||"___",a=!!e.flat;r.forEach((function(t){var e=new RegExp(["\\",t[0],"[^\\",t[0],"\\",t[1],"]*\\",t[1]].join("")),r=[];function a(e,a,o){var s=n.push(e.slice(t[0].length,-t[1].length))-1;return r.push(s),i+s+i}n.forEach((function(t,r){for(var i,o=0;t!=i;)if(i=t,t=t.replace(e,a),o++>1e4)throw Error("References have circular dependency. Please, check them.");n[r]=t})),r=r.reverse(),n=n.map((function(e){return r.forEach((function(n){e=e.replace(new RegExp("(\\"+i+n+"\\"+i+")","g"),t[0]+"$1"+t[1])})),e}))}));var o=new RegExp("\\"+i+"([0-9]+)\\"+i);return a?n:function t(e,n,r){for(var i,a=[],s=0;i=o.exec(e);){if(s++>1e4)throw Error("Circular references in parenthesis");a.push(e.slice(0,i.index)),a.push(t(n[i[1]],n)),e=e.slice(i.index+i[0].length)}return a.push(e),a}(n[0],n)}function n(t,e){if(e&&e.flat){var n,r=e&&e.escape||"___",i=t[0];if(!i)return"";for(var a=new RegExp("\\"+r+"([0-9]+)\\"+r),o=0;i!=n;){if(o++>1e4)throw Error("Circular references in "+t);n=i,i=i.replace(a,s)}return i}return t.reduce((function t(e,n){return Array.isArray(n)&&(n=n.reduce(t,"")),e+n}),"");function s(e,n){if(null==t[n])throw Error("Reference "+n+"is undefined");return t[n]}}function r(t,r){return Array.isArray(t)?n(t,r):e(t,r)}r.parse=e,r.stringify=n,t.exports=r},18863:function(t,e,n){"use strict";var r=n(71299);t.exports=function(t){var e;return arguments.length>1&&(t=arguments),"string"===typeof t?t=t.split(/\s/).map(parseFloat):"number"===typeof t&&(t=[t]),t.length&&"number"===typeof t[0]?e=1===t.length?{width:t[0],height:t[0],x:0,y:0}:2===t.length?{width:t[0],height:t[1],x:0,y:0}:{x:t[0],y:t[1],width:t[2]-t[0]||0,height:t[3]-t[1]||0}:t&&(e={x:(t=r(t,{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:t.top||0},null==t.width?t.right?e.width=t.right-e.x:e.width=0:e.width=t.width,null==t.height?t.bottom?e.height=t.bottom-e.y:e.height=0:e.height=t.height),e}},95616:function(t){t.exports=function(t){var i=[];return t.replace(n,(function(t,n,a){var o=n.toLowerCase();for(a=function(t){var e=t.match(r);return e?e.map(Number):[]}(a),"m"==o&&a.length>2&&(i.push([n].concat(a.splice(0,2))),o="l",n="m"==n?"l":"L");;){if(a.length==e[o])return a.unshift(n),i.push(a);if(a.lengtha!==d>a&&i<(h-u)*(a-f)/(d-f)+u&&(o=!o)}return o}},52142:function(t,e,n){var r,i=n(69444),a=n(29023),o=n(87263),s=n(11328),l=n(55968),c=n(10670),u=!1,f=a();function h(t,e,n){var i=r.segments(t),a=r.segments(e),o=n(r.combine(i,a));return r.polygon(o)}r={buildLog:function(t){return!0===t?u=i():!1===t&&(u=!1),!1!==u&&u.list},epsilon:function(t){return f.epsilon(t)},segments:function(t){var e=o(!0,f,u);return t.regions.forEach(e.addRegion),{segments:e.calculate(t.inverted),inverted:t.inverted}},combine:function(t,e){return{combined:o(!1,f,u).calculate(t.segments,t.inverted,e.segments,e.inverted),inverted1:t.inverted,inverted2:e.inverted}},selectUnion:function(t){return{segments:l.union(t.combined,u),inverted:t.inverted1||t.inverted2}},selectIntersect:function(t){return{segments:l.intersect(t.combined,u),inverted:t.inverted1&&t.inverted2}},selectDifference:function(t){return{segments:l.difference(t.combined,u),inverted:t.inverted1&&!t.inverted2}},selectDifferenceRev:function(t){return{segments:l.differenceRev(t.combined,u),inverted:!t.inverted1&&t.inverted2}},selectXor:function(t){return{segments:l.xor(t.combined,u),inverted:t.inverted1!==t.inverted2}},polygon:function(t){return{regions:s(t.segments,f,u),inverted:t.inverted}},polygonFromGeoJSON:function(t){return c.toPolygon(r,t)},polygonToGeoJSON:function(t){return c.fromPolygon(r,f,t)},union:function(t,e){return h(t,e,r.selectUnion)},intersect:function(t,e){return h(t,e,r.selectIntersect)},difference:function(t,e){return h(t,e,r.selectDifference)},differenceRev:function(t,e){return h(t,e,r.selectDifferenceRev)},xor:function(t,e){return h(t,e,r.selectXor)}},"object"===typeof window&&(window.PolyBool=r),t.exports=r},69444:function(t){t.exports=function(){var t,e=0,n=!1;function r(e,n){return t.list.push({type:e,data:n?JSON.parse(JSON.stringify(n)):void 0}),t}return t={list:[],segmentId:function(){return e++},checkIntersection:function(t,e){return r("check",{seg1:t,seg2:e})},segmentChop:function(t,e){return r("div_seg",{seg:t,pt:e}),r("chop",{seg:t,pt:e})},statusRemove:function(t){return r("pop_seg",{seg:t})},segmentUpdate:function(t){return r("seg_update",{seg:t})},segmentNew:function(t,e){return r("new_seg",{seg:t,primary:e})},segmentRemove:function(t){return r("rem_seg",{seg:t})},tempStatus:function(t,e,n){return r("temp_status",{seg:t,above:e,below:n})},rewind:function(t){return r("rewind",{seg:t})},status:function(t,e,n){return r("status",{seg:t,above:e,below:n})},vert:function(e){return e===n?t:(n=e,r("vert",{x:e}))},log:function(t){return"string"!==typeof t&&(t=JSON.stringify(t,!1," ")),r("log",{txt:t})},reset:function(){return r("reset")},selected:function(t){return r("selected",{segs:t})},chainStart:function(t){return r("chain_start",{seg:t})},chainRemoveHead:function(t,e){return r("chain_rem_head",{index:t,pt:e})},chainRemoveTail:function(t,e){return r("chain_rem_tail",{index:t,pt:e})},chainNew:function(t,e){return r("chain_new",{pt1:t,pt2:e})},chainMatch:function(t){return r("chain_match",{index:t})},chainClose:function(t){return r("chain_close",{index:t})},chainAddHead:function(t,e){return r("chain_add_head",{index:t,pt:e})},chainAddTail:function(t,e){return r("chain_add_tail",{index:t,pt:e})},chainConnect:function(t,e){return r("chain_con",{index1:t,index2:e})},chainReverse:function(t){return r("chain_rev",{index:t})},chainJoin:function(t,e){return r("chain_join",{index1:t,index2:e})},done:function(){return r("done")}}}},29023:function(t){t.exports=function(t){"number"!==typeof t&&(t=1e-10);var e={epsilon:function(e){return"number"===typeof e&&(t=e),t},pointAboveOrOnLine:function(e,n,r){var i=n[0],a=n[1],o=r[0],s=r[1],l=e[0];return(o-i)*(e[1]-a)-(s-a)*(l-i)>=-t},pointBetween:function(e,n,r){var i=e[1]-n[1],a=r[0]-n[0],o=e[0]-n[0],s=r[1]-n[1],l=o*a+i*s;return!(l-t)},pointsSameX:function(e,n){return Math.abs(e[0]-n[0])t!=o-i>t&&(a-c)*(i-u)/(o-u)+c-r>t&&(s=!s),a=c,o=u}return s}};return e}},10670:function(t){var e={toPolygon:function(t,e){function n(e){if(e.length<=0)return t.segments({inverted:!1,regions:[]});function n(e){var n=e.slice(0,e.length-1);return t.segments({inverted:!1,regions:[n]})}for(var r=n(e[0]),i=1;i0}))}function u(t,r){var i=t.seg,a=r.seg,o=i.start,s=i.end,c=a.start,u=a.end;n&&n.checkIntersection(i,a);var f=e.linesIntersect(o,s,c,u);if(!1===f){if(!e.pointsCollinear(o,s,c))return!1;if(e.pointsSame(o,u)||e.pointsSame(s,c))return!1;var h=e.pointsSame(o,c),d=e.pointsSame(s,u);if(h&&d)return r;var p=!h&&e.pointBetween(o,c,u),g=!d&&e.pointBetween(s,c,u);if(h)return g?l(r,s):l(t,u),r;p&&(d||(g?l(r,s):l(t,u)),l(r,o))}else 0===f.alongA&&(-1===f.alongB?l(t,c):0===f.alongB?l(t,f.pt):1===f.alongB&&l(t,u)),0===f.alongB&&(-1===f.alongA?l(r,o):0===f.alongA?l(r,f.pt):1===f.alongA&&l(r,s));return!1}for(var f=[],h=function(){if(d=a.getHead(),n&&n.vert(d.pt[0]),d.isStart){if(n&&n.segmentNew(d.seg,d.primary),p=c(d),g=p.before?p.before.ev:null,v=p.after?p.after.ev:null,n&&n.tempStatus(d.seg,!!g&&g.seg,!!v&&v.seg),(m=function(){if(g){var t=u(d,g);if(t)return t}return!!v&&u(d,v)}())&&(t?(y=null===d.seg.myFill.below||d.seg.myFill.above!==d.seg.myFill.below)&&(m.seg.myFill.above=!m.seg.myFill.above):m.seg.otherFill=d.seg.myFill,n&&n.segmentUpdate(m.seg),d.other.remove(),d.remove()),a.getHead()!==d)return n&&n.rewind(d.seg),"continue";t?(y=null===d.seg.myFill.below||d.seg.myFill.above!==d.seg.myFill.below,d.seg.myFill.below=v?v.seg.myFill.above:i,d.seg.myFill.above=y?!d.seg.myFill.below:d.seg.myFill.below):null===d.seg.otherFill&&(b=v?d.primary===v.primary?v.seg.otherFill.above:v.seg.myFill.above:d.primary?o:i,d.seg.otherFill={above:b,below:b}),n&&n.status(d.seg,!!g&&g.seg,!!v&&v.seg),d.other.status=p.insert(r.node({ev:d}))}else{if(null===(x=d.status))throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");s.exists(x.prev)&&s.exists(x.next)&&u(x.prev.ev,x.next.ev),n&&n.statusRemove(x.ev.seg),x.remove(),d.primary||(w=d.seg.myFill,d.seg.myFill=d.seg.otherFill,d.seg.otherFill=w),f.push(d.seg)}a.getHead().remove()};!a.isEmpty();){var d,p,g,v,m,y,b,x,w;h()}return n&&n.done(),f}return t?{addRegion:function(t){for(var r,i,a,o=t[t.length-1],l=0;l0&&!this.aborted;){var n=this.ifds_to_read.shift();n.offset&&this.scan_ifd(n.id,n.offset,t)}},r.prototype.read_uint16=function(t){var n=this.input;if(t+2>n.length)throw e("unexpected EOF","EBADDATA");return this.big_endian?256*n[t]+n[t+1]:n[t]+256*n[t+1]},r.prototype.read_uint32=function(t){var n=this.input;if(t+4>n.length)throw e("unexpected EOF","EBADDATA");return this.big_endian?16777216*n[t]+65536*n[t+1]+256*n[t+2]+n[t+3]:n[t]+256*n[t+1]+65536*n[t+2]+16777216*n[t+3]},r.prototype.is_subifd_link=function(t,e){return 0===t&&34665===e||0===t&&34853===e||34665===t&&40965===e},r.prototype.exif_format_length=function(t){switch(t){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}},r.prototype.exif_format_read=function(t,e){var n;switch(t){case 1:case 2:return n=this.input[e];case 6:return(n=this.input[e])|33554430*(128&n);case 3:return n=this.read_uint16(e);case 8:return(n=this.read_uint16(e))|131070*(32768&n);case 4:return n=this.read_uint32(e);case 9:return 0|(n=this.read_uint32(e));default:return null}},r.prototype.scan_ifd=function(t,r,i){var a=this.read_uint16(r);r+=2;for(var o=0;othis.input.length)throw e("unexpected EOF","EBADDATA");for(var p=[],g=h,v=0;v0&&(this.ifds_to_read.push({id:s,offset:p[0]}),d=!0),!1===i({is_big_endian:this.big_endian,ifd:t,tag:s,format:l,count:c,entry_offset:r+this.start,data_length:f,data_offset:h+this.start,value:p,is_subifd_link:d}))return void(this.aborted=!0);r+=12}0===t&&this.ifds_to_read.push({id:1,offset:this.read_uint32(r)})},t.exports.ExifParser=r,t.exports.get_orientation=function(t){var e=0;try{return new r(t,0,t.length).each((function(t){if(0===t.ifd&&274===t.tag&&Array.isArray(t.value))return e=t.value[0],!1})),e}catch(n){return-1}}},76767:function(t,e,n){"use strict";var r=n(14847).n8,i=n(14847).Ag;function a(t,e){if(t.length<4+e)return null;var n=i(t,e);return t.length>4&15,i=15&t[4],a=t[5]>>4&15,o=r(t,6),l=8,c=0;ce.width||t.width===e.width&&t.height>e.height?t:e})),n=t.reduce((function(t,e){return t.height>e.height||t.height===e.height&&t.width>e.width?t:e}));return e.width>n.height||e.width===n.height&&e.height>n.width?e:n}(e.sizes),r=1;e.transforms.forEach((function(t){var e={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},n={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if("imir"===t.type&&(r=0===t.value?n[r]:e[r=e[r=n[r]]]),"irot"===t.type)for(var i=0;i1&&(h.variants=f.variants),f.orientation&&(h.orientation=f.orientation),f.exif_location&&f.exif_location.offset+f.exif_location.length<=t.length){var d=a(t,f.exif_location.offset),p=t.slice(f.exif_location.offset+d+4,f.exif_location.offset+f.exif_location.length),g=s.get_orientation(p);g>0&&(h.orientation=g)}return h}}}}}}},2504:function(t,e,n){"use strict";var r=n(14847).eG,i=n(14847).OF,a=n(14847).mP,o=r("BM");t.exports=function(t){if(!(t.length<26)&&i(t,0,o))return{width:a(t,18),height:a(t,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}},47342:function(t,e,n){"use strict";var r=n(14847).eG,i=n(14847).OF,a=n(14847).mP,o=r("GIF87a"),s=r("GIF89a");t.exports=function(t){if(!(t.length<10)&&(i(t,0,o)||i(t,0,s)))return{width:a(t,6),height:a(t,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}},31355:function(t,e,n){"use strict";var r=n(14847).mP;t.exports=function(t){var e=r(t,0),n=r(t,2),i=r(t,4);if(0===e&&1===n&&i){for(var a=[],o={width:0,height:0},s=0;so.width||c>o.height)&&(o=u)}return{width:o.width,height:o.height,variants:a,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}},54261:function(t,e,n){"use strict";var r=n(14847).n8,i=n(14847).eG,a=n(14847).OF,o=n(71371),s=i("Exif\0\0");t.exports=function(t){if(!(t.length<2)&&255===t[0]&&216===t[1]&&255===t[2])for(var e=2;;){for(;;){if(t.length-e<2)return;if(255===t[e++])break}for(var n,i,l=t[e++];255===l;)l=t[e++];if(208<=l&&l<=217||1===l)n=0;else{if(!(192<=l&&l<=254))return;if(t.length-e<2)return;n=r(t,e)-2,e+=2}if(217===l||218===l)return;if(225===l&&n>=10&&a(t,e,s)&&(i=o.get_orientation(t.slice(e+6,e+n))),n>=5&&192<=l&&l<=207&&196!==l&&200!==l&&204!==l){if(t.length-e0&&(c.orientation=i),c}e+=n}}},6303:function(t,e,n){"use strict";var r=n(14847).eG,i=n(14847).OF,a=n(14847).Ag,o=r("\x89PNG\r\n\x1a\n"),s=r("IHDR");t.exports=function(t){if(!(t.length<24)&&i(t,0,o)&&i(t,12,s))return{width:a(t,16),height:a(t,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}},38689:function(t,e,n){"use strict";var r=n(14847).eG,i=n(14847).OF,a=n(14847).Ag,o=r("8BPS\0\x01");t.exports=function(t){if(!(t.length<22)&&i(t,0,o))return{width:a(t,18),height:a(t,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}},6881:function(t){"use strict";function e(t){return"number"===typeof t&&isFinite(t)&&t>0}var n=/<[-_.:a-zA-Z0-9][^>]*>/,r=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,i=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,a=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,o=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,s=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function l(t){return s.test(t)?t.match(s)[0]:"px"}t.exports=function(t){if(function(t){var e,n=0,r=t.length;for(239===t[0]&&187===t[1]&&191===t[2]&&(n=3);n>14&16383),type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function h(t,e){return{width:1+(t[e+6]<<16|t[e+5]<<8|t[e+4]),height:1+(t[e+9]<t.length)){for(;e+8=10?n=n||u(t,e+8):"VP8L"===d&&p>=9?n=n||f(t,e+8):"VP8X"===d&&p>=10?n=n||h(t,e+8):"EXIF"===d&&(r=s.get_orientation(t.slice(e+8,e+8+p)),e=1/0),e+=8+p}else e++;if(n)return r>0&&(n.orientation=r),n}}}},91497:function(t,e,n){"use strict";t.exports={avif:n(24461),bmp:n(2504),gif:n(47342),ico:n(31355),jpeg:n(54261),png:n(6303),psd:n(38689),svg:n(6881),tiff:n(66278),webp:n(90784)}},33575:function(t,e,n){"use strict";var r=n(91497);t.exports=function(t){return function(t){for(var e=Object.keys(r),n=0;n1)for(var n=1;n1&&(t.scaleRatio=[t.scale[0]*t.viewport.width,t.scale[1]*t.viewport.height],n(t),t.after&&t.after(t))}function k(t){if(t){null!=t.length?"number"===typeof t[0]&&(t=[{positions:t}]):Array.isArray(t)||(t=[t]);var e=0,n=0;if(x.groups=b=t.map((function(t,c){var u=b[c];return t?("function"===typeof t?t={after:t}:"number"===typeof t[0]&&(t={positions:t}),t=o(t,{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"}),u||(b[c]=u={id:c,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},t=s({},y,t)),a(u,t,[{lineWidth:function(t){return.5*+t},capSize:function(t){return.5*+t},opacity:parseFloat,errors:function(t){return t=l(t),n+=t.length,t},positions:function(t,n){return t=l(t,"float64"),n.count=Math.floor(t.length/2),n.bounds=r(t,2),n.offset=e,e+=n.count,t}},{color:function(t,e){var n=e.count;if(t||(t="transparent"),!Array.isArray(t)||"number"===typeof t[0]){var r=t;t=Array(n);for(var a=0;a 0. && baClipping < length(normalWidth * endBotJoin)) {\n\t\t//handle miter clipping\n\t\tbTopCoord -= normalWidth * endTopJoin;\n\t\tbTopCoord += normalize(endTopJoin * normalWidth) * baClipping;\n\t}\n\n\tif (nextReverse) {\n\t\t//make join rectangular\n\t\tvec2 miterShift = normalWidth * endJoinDirection * miterLimit * .5;\n\t\tfloat normalAdjust = 1. - min(miterLimit / endMiterRatio, 1.);\n\t\tbBotCoord = bCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;\n\t\tbTopCoord = bCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;\n\t}\n\telse if (!prevReverse && abClipping > 0. && abClipping < length(normalWidth * startBotJoin)) {\n\t\t//handle miter clipping\n\t\taBotCoord -= normalWidth * startBotJoin;\n\t\taBotCoord += normalize(startBotJoin * normalWidth) * abClipping;\n\t}\n\n\tvec2 aTopPosition = (aTopCoord) * adjustedScale + translate;\n\tvec2 aBotPosition = (aBotCoord) * adjustedScale + translate;\n\n\tvec2 bTopPosition = (bTopCoord) * adjustedScale + translate;\n\tvec2 bBotPosition = (bBotCoord) * adjustedScale + translate;\n\n\t//position is normalized 0..1 coord on the screen\n\tvec2 position = (aTopPosition * lineTop + aBotPosition * lineBot) * lineStart + (bTopPosition * lineTop + bBotPosition * lineBot) * lineEnd;\n\n\tstartCoord = aCoord * scaleRatio + translate * viewport.zw + viewport.xy;\n\tendCoord = bCoord * scaleRatio + translate * viewport.zw + viewport.xy;\n\n\tgl_Position = vec4(position * 2.0 - 1.0, depth, 1);\n\n\tenableStartMiter = step(dot(currTangent, prevTangent), .5);\n\tenableEndMiter = step(dot(currTangent, nextTangent), .5);\n\n\t//bevel miter cutoffs\n\tif (miterMode == 1.) {\n\t\tif (enableStartMiter == 1.) {\n\t\t\tvec2 startMiterWidth = vec2(startJoinDirection) * thickness * miterLimit * .5;\n\t\t\tstartCutoff = vec4(aCoord, aCoord);\n\t\t\tstartCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;\n\t\t\tstartCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\n\t\t\tstartCutoff += viewport.xyxy;\n\t\t\tstartCutoff += startMiterWidth.xyxy;\n\t\t}\n\n\t\tif (enableEndMiter == 1.) {\n\t\t\tvec2 endMiterWidth = vec2(endJoinDirection) * thickness * miterLimit * .5;\n\t\t\tendCutoff = vec4(bCoord, bCoord);\n\t\t\tendCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;\n\t\t\tendCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\n\t\t\tendCutoff += viewport.xyxy;\n\t\t\tendCutoff += endMiterWidth.xyxy;\n\t\t}\n\t}\n\n\t//round miter cutoffs\n\telse if (miterMode == 2.) {\n\t\tif (enableStartMiter == 1.) {\n\t\t\tvec2 startMiterWidth = vec2(startJoinDirection) * thickness * abs(dot(startJoinDirection, currNormal)) * .5;\n\t\t\tstartCutoff = vec4(aCoord, aCoord);\n\t\t\tstartCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;\n\t\t\tstartCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\n\t\t\tstartCutoff += viewport.xyxy;\n\t\t\tstartCutoff += startMiterWidth.xyxy;\n\t\t}\n\n\t\tif (enableEndMiter == 1.) {\n\t\t\tvec2 endMiterWidth = vec2(endJoinDirection) * thickness * abs(dot(endJoinDirection, currNormal)) * .5;\n\t\t\tendCutoff = vec4(bCoord, bCoord);\n\t\t\tendCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;\n\t\t\tendCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\n\t\t\tendCutoff += viewport.xyxy;\n\t\t\tendCutoff += endMiterWidth.xyxy;\n\t\t}\n\t}\n}\n"]),frag:o(["precision highp float;\n#define GLSLIFY 1\n\nuniform float dashLength, pixelRatio, thickness, opacity, id, miterMode;\nuniform sampler2D dashTexture;\n\nvarying vec4 fragColor;\nvarying vec2 tangent;\nvarying vec4 startCutoff, endCutoff;\nvarying vec2 startCoord, endCoord;\nvarying float enableStartMiter, enableEndMiter;\n\nfloat distToLine(vec2 p, vec2 a, vec2 b) {\n\tvec2 diff = b - a;\n\tvec2 perp = normalize(vec2(-diff.y, diff.x));\n\treturn dot(p - a, perp);\n}\n\nvoid main() {\n\tfloat alpha = 1., distToStart, distToEnd;\n\tfloat cutoff = thickness * .5;\n\n\t//bevel miter\n\tif (miterMode == 1.) {\n\t\tif (enableStartMiter == 1.) {\n\t\t\tdistToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);\n\t\t\tif (distToStart < -1.) {\n\t\t\t\tdiscard;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\talpha *= min(max(distToStart + 1., 0.), 1.);\n\t\t}\n\n\t\tif (enableEndMiter == 1.) {\n\t\t\tdistToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);\n\t\t\tif (distToEnd < -1.) {\n\t\t\t\tdiscard;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\talpha *= min(max(distToEnd + 1., 0.), 1.);\n\t\t}\n\t}\n\n\t// round miter\n\telse if (miterMode == 2.) {\n\t\tif (enableStartMiter == 1.) {\n\t\t\tdistToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);\n\t\t\tif (distToStart < 0.) {\n\t\t\t\tfloat radius = length(gl_FragCoord.xy - startCoord);\n\n\t\t\t\tif(radius > cutoff + .5) {\n\t\t\t\t\tdiscard;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\talpha -= smoothstep(cutoff - .5, cutoff + .5, radius);\n\t\t\t}\n\t\t}\n\n\t\tif (enableEndMiter == 1.) {\n\t\t\tdistToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);\n\t\t\tif (distToEnd < 0.) {\n\t\t\t\tfloat radius = length(gl_FragCoord.xy - endCoord);\n\n\t\t\t\tif(radius > cutoff + .5) {\n\t\t\t\t\tdiscard;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\talpha -= smoothstep(cutoff - .5, cutoff + .5, radius);\n\t\t\t}\n\t\t}\n\t}\n\n\tfloat t = fract(dot(tangent, gl_FragCoord.xy) / dashLength) * .5 + .25;\n\tfloat dash = texture2D(dashTexture, vec2(t, .5)).r;\n\n\tgl_FragColor = fragColor;\n\tgl_FragColor.a *= alpha * opacity * dash;\n}\n"]),attributes:{lineEnd:{buffer:n,divisor:0,stride:8,offset:0},lineTop:{buffer:n,divisor:0,stride:8,offset:4},aColor:{buffer:t.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:t.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:t.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:t.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:t.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:t.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},r))}catch(s){e=i}return{fill:t({primitive:"triangle",elements:function(t,e){return e.triangles},offset:0,vert:o(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec2 position, positionFract;\n\nuniform vec4 color;\nuniform vec2 scale, scaleFract, translate, translateFract;\nuniform float pixelRatio, id;\nuniform vec4 viewport;\nuniform float opacity;\n\nvarying vec4 fragColor;\n\nconst float MAX_LINES = 256.;\n\nvoid main() {\n\tfloat depth = (MAX_LINES - 4. - id) / (MAX_LINES);\n\n\tvec2 position = position * scale + translate\n + positionFract * scale + translateFract\n + position * scaleFract\n + positionFract * scaleFract;\n\n\tgl_Position = vec4(position * 2.0 - 1.0, depth, 1);\n\n\tfragColor = color / 255.;\n\tfragColor.a *= opacity;\n}\n"]),frag:o(["precision highp float;\n#define GLSLIFY 1\n\nvarying vec4 fragColor;\n\nvoid main() {\n\tgl_FragColor = fragColor;\n}\n"]),uniforms:{scale:t.prop("scale"),color:t.prop("fill"),scaleFract:t.prop("scaleFract"),translateFract:t.prop("translateFract"),translate:t.prop("translate"),opacity:t.prop("opacity"),pixelRatio:t.context("pixelRatio"),id:t.prop("id"),viewport:function(t,e){return[e.viewport.x,e.viewport.y,t.viewportWidth,t.viewportHeight]}},attributes:{position:{buffer:t.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:t.prop("positionFractBuffer"),stride:8,offset:8}},blend:r.blend,depth:{enable:!1},scissor:r.scissor,stencil:r.stencil,viewport:r.viewport}),rect:i,miter:e}},m.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},m.prototype.render=function(){for(var t,e=[],n=arguments.length;n--;)e[n]=arguments[n];e.length&&(t=this).update.apply(t,e),this.draw()},m.prototype.draw=function(){for(var t=this,e=[],n=arguments.length;n--;)e[n]=arguments[n];return(e.length?e:this.passes).forEach((function(e,n){var r;if(e&&Array.isArray(e))return(r=t).draw.apply(r,e);"number"===typeof e&&(e=t.passes[e]),e&&e.count>1&&e.opacity&&(t.regl._refresh(),e.fill&&e.triangles&&e.triangles.length>2&&t.shaders.fill(e),e.thickness&&(e.scale[0]*e.viewport.width>m.precisionThreshold||e.scale[1]*e.viewport.height>m.precisionThreshold||"rect"===e.join||!e.join&&(e.thickness<=2||e.count>=m.maxPoints)?t.shaders.rect(e):t.shaders.miter(e)))})),this},m.prototype.update=function(t){var e=this;if(t){null!=t.length?"number"===typeof t[0]&&(t=[{positions:t}]):Array.isArray(t)||(t=[t]);var n=this.regl,o=this.gl;if(t.forEach((function(t,f){var p=e.passes[f];if(void 0!==t)if(null!==t){if("number"===typeof t[0]&&(t={positions:t}),t=s(t,{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"}),p||(e.passes[f]=p={id:f,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:n.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:n.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:n.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:n.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},t=a({},m.defaults,t)),null!=t.thickness&&(p.thickness=parseFloat(t.thickness)),null!=t.opacity&&(p.opacity=parseFloat(t.opacity)),null!=t.miterLimit&&(p.miterLimit=parseFloat(t.miterLimit)),null!=t.overlay&&(p.overlay=!!t.overlay,f=R}));(O=O.slice(0,z)).push(R)}for(var N=function(t){var e=T.slice(2*D,2*O[t]).concat(R?T.slice(2*R):[]),n=(p.hole||[]).map((function(e){return e-R+(O[t]-D)})),r=c(e,n);r=r.map((function(e){return e+D+(e+Dt.length)&&(e=t.length);for(var n=0,r=new Array(e);n 1.0 + delta) {\n\t\tdiscard;\n\t}\n\n\talpha -= smoothstep(1.0 - delta, 1.0 + delta, radius);\n\n\tfloat borderRadius = fragBorderRadius;\n\tfloat ratio = smoothstep(borderRadius - delta, borderRadius + delta, radius);\n\tvec4 color = mix(fragColor, fragBorderColor, ratio);\n\tcolor.a *= alpha * opacity;\n\tgl_FragColor = color;\n}\n"]),c.vert=h(["precision highp float;\n#define GLSLIFY 1\n\nattribute float x, y, xFract, yFract;\nattribute float size, borderSize;\nattribute vec4 colorId, borderColorId;\nattribute float isActive;\n\nuniform bool constPointSize;\nuniform float pixelRatio;\nuniform vec2 paletteSize, scale, scaleFract, translate, translateFract;\nuniform sampler2D paletteTexture;\n\nconst float maxSize = 100.;\n\nvarying vec4 fragColor, fragBorderColor;\nvarying float fragBorderRadius, fragWidth;\n\nfloat pointSizeScale = (constPointSize) ? 2. : pixelRatio;\n\nbool isDirect = (paletteSize.x < 1.);\n\nvec4 getColor(vec4 id) {\n return isDirect ? id / 255. : texture2D(paletteTexture,\n vec2(\n (id.x + .5) / paletteSize.x,\n (id.y + .5) / paletteSize.y\n )\n );\n}\n\nvoid main() {\n // ignore inactive points\n if (isActive == 0.) return;\n\n vec2 position = vec2(x, y);\n vec2 positionFract = vec2(xFract, yFract);\n\n vec4 color = getColor(colorId);\n vec4 borderColor = getColor(borderColorId);\n\n float size = size * maxSize / 255.;\n float borderSize = borderSize * maxSize / 255.;\n\n gl_PointSize = (size + borderSize) * pointSizeScale;\n\n vec2 pos = (position + translate) * scale\n + (positionFract + translateFract) * scale\n + (position + translate) * scaleFract\n + (positionFract + translateFract) * scaleFract;\n\n gl_Position = vec4(pos * 2. - 1., 0., 1.);\n\n fragBorderRadius = 1. - 2. * borderSize / (size + borderSize);\n fragColor = color;\n fragBorderColor = borderColor.a == 0. || borderSize == 0. ? vec4(color.rgb, 0.) : borderColor;\n fragWidth = 1. / gl_PointSize;\n}\n"]),v&&(c.frag=c.frag.replace("smoothstep","smoothStep"),l.frag=l.frag.replace("smoothstep","smoothStep")),this.drawCircle=t(c)}x.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},x.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this},x.prototype.draw=function(){for(var t=this,e=arguments.length,n=new Array(e),r=0;rr)?e.tree=u(t,{bounds:f}):r&&r.length&&(e.tree=r),e.tree){var h={primitive:"points",usage:"static",data:e.tree,type:"uint32"};e.elements?e.elements(h):e.elements=o.elements(h)}var d=m.float32(t);return i({data:d,usage:"dynamic"}),a({data:m.fract32(t,d),usage:"dynamic"}),s({data:new Uint8Array(c),type:"uint8",usage:"stream"}),t}},{marker:function(e,n,r){var i=n.activation;if(i.forEach((function(t){return t&&t.destroy&&t.destroy()})),i.length=0,e&&"number"!==typeof e[0]){for(var a=[],s=0,l=Math.min(e.length,n.count);s=0)return a;if(t instanceof Uint8Array||t instanceof Uint8ClampedArray)e=t;else{e=new Uint8Array(t.length);for(var o=0,s=t.length;o4*r&&(this.tooManyColors=!0),this.updatePalette(n),1===i.length?i[0]:i},x.prototype.updatePalette=function(t){if(!this.tooManyColors){var e=this.maxColors,n=this.paletteTexture,r=Math.ceil(.25*t.length/e);if(r>1)for(var i=.25*(t=t.slice()).length%e;i2?(s[0],s[2],r=s[1],i=s[3]):s.length?(r=s[0],i=s[1]):(s.x,r=s.y,s.x,s.width,i=s.y+s.height),l.length>2?(a=l[0],o=l[2],l[1],l[3]):l.length?(a=l[0],o=l[1]):(a=l.x,l.y,o=l.x+l.width,l.y,l.height),[a,r,o,i]}function d(t){if("number"===typeof t)return[t,t,t,t];if(2===t.length)return[t[0],t[1],t[0],t[1]];var e=l(t);return[e.x,e.y,e.x+e.width,e.y+e.height]}t.exports=u,u.prototype.render=function(){for(var t,e=this,n=[],r=arguments.length;r--;)n[r]=arguments[r];return n.length&&(t=this).update.apply(t,n),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?null==this.planned&&(this.planned=o((function(){e.draw(),e.dirty=!0,e.planned=null}))):(this.draw(),this.dirty=!0,o((function(){e.dirty=!1}))),this)},u.prototype.update=function(){for(var t,e=[],n=arguments.length;n--;)e[n]=arguments[n];if(e.length){for(var r=0;rT))&&(s.lower||!(k>>=e))<<3,(e|=n=(15<(t>>>=n))<<2)|(n=(3<(t>>>=n))<<1)|t>>>n>>1}function d(){function t(t){t:{for(var e=16;268435456>=e;e*=16)if(t<=e){t=e;break t}t=0}return 0<(e=n[h(t)>>2]).length?e.pop():new ArrayBuffer(t)}function e(t){n[h(t.byteLength)>>2].push(t)}var n=f(8,(function(){return[]}));return{alloc:t,free:e,allocType:function(e,n){var r=null;switch(e){case 5120:r=new Int8Array(t(n),0,n);break;case 5121:r=new Uint8Array(t(n),0,n);break;case 5122:r=new Int16Array(t(2*n),0,n);break;case 5123:r=new Uint16Array(t(2*n),0,n);break;case 5124:r=new Int32Array(t(4*n),0,n);break;case 5125:r=new Uint32Array(t(4*n),0,n);break;case 5126:r=new Float32Array(t(4*n),0,n);break;default:return null}return r.length!==n?r.subarray(0,n):r},freeType:function(t){e(t.buffer)}}}function p(t){return!!t&&"object"===typeof t&&Array.isArray(t.shape)&&Array.isArray(t.stride)&&"number"===typeof t.offset&&t.shape.length===t.stride.length&&(Array.isArray(t.data)||ot(t.data))}function g(t,e,n,r,i,a){for(var o=0;o(i=s)&&(i=r.buffer.byteLength,5123===u?i>>=1:5125===u&&(i>>=2)),r.vertCount=i,i=o,0>o&&(i=4,1===(o=r.buffer.dimension)&&(i=0),2===o&&(i=1),3===o&&(i=4)),r.primType=i}function o(t){r.elementsCount--,delete s[t.id],t.buffer.destroy(),t.buffer=null}var s={},l=0,c={uint8:5121,uint16:5123};e.oes_element_index_uint&&(c.uint32=5125),i.prototype.bind=function(){this.buffer.bind()};var u=[];return{create:function(t,e){function s(t){if(t)if("number"===typeof t)l(t),u.primType=4,u.vertCount=0|t,u.type=5121;else{var e=null,n=35044,r=-1,i=-1,o=0,f=0;Array.isArray(t)||ot(t)||p(t)?e=t:("data"in t&&(e=t.data),"usage"in t&&(n=ft[t.usage]),"primitive"in t&&(r=gt[t.primitive]),"count"in t&&(i=0|t.count),"type"in t&&(f=c[t.type]),"length"in t?o=0|t.length:(o=i,5123===f||5122===f?o*=2:5125!==f&&5124!==f||(o*=4))),a(u,e,n,r,i,o,f)}else l(),u.primType=4,u.vertCount=0,u.type=5121;return s}var l=n.create(null,34963,!0),u=new i(l._buffer);return r.elementsCount++,s(t),s._reglType="elements",s._elements=u,s.subdata=function(t,e){return l.subdata(t,e),s},s.destroy=function(){o(u)},s},createStream:function(t){var e=u.pop();return e||(e=new i(n.create(null,34963,!0,!1)._buffer)),a(e,t,35040,-1,-1,0,0),e},destroyStream:function(t){u.push(t)},getElements:function(t){return"function"===typeof t&&t._elements instanceof i?t._elements:null},clear:function(){st(s).forEach(o)}}}function _(t){for(var e=it.allocType(5123,t.length),n=0;n>>31<<15,i=(a<<1>>>24)-127,a=a>>13&1023;e[n]=-24>i?r:-14>i?r+(a+1024>>-14-i):15>=i,n.height>>=i,h(n,r[i]),t.mipmask|=1<e;++e)t.images[e]=null;return t}function T(t){for(var e=t.images,n=0;ne){for(var n=0;n=--this.refCount&&N(this)}}),o.profile&&(a.getTotalTextureSize=function(){var t=0;return Object.keys(at).forEach((function(e){t+=at[e].stats.size})),t}),{create2D:function(e,n){function r(t,e){var n=i.texInfo;L.call(n);var a=w();return"number"===typeof t?y(a,0|t,"number"===typeof e?0|e:0|t):t?(O(n,t),b(a,t)):y(a,1,1),n.genMipmaps&&(a.mipmask=(a.width<<1)-1),i.mipmask=a.mipmask,l(i,a),i.internalformat=a.internalformat,r.width=a.width,r.height=a.height,R(i),x(a,3553),I(n,3553),z(),T(a),o.profile&&(i.stats.size=P(i.internalformat,i.type,a.width,a.height,n.genMipmaps,!1)),r.format=$[i.internalformat],r.type=X[i.type],r.mag=K[n.magFilter],r.min=Z[n.minFilter],r.wrapS=J[n.wrapS],r.wrapT=J[n.wrapT],r}var i=new D(3553);return at[i.id]=i,a.textureCount++,r(e,n),r.subimage=function(t,e,n,a){e|=0,n|=0,a|=0;var o=g();return l(o,i),o.width=0,o.height=0,h(o,t),o.width=o.width||(i.width>>a)-e,o.height=o.height||(i.height>>a)-n,R(i),d(o,3553,e,n,a),z(),v(o),r},r.resize=function(e,n){var a=0|e,s=0|n||a;if(a===i.width&&s===i.height)return r;r.width=i.width=a,r.height=i.height=s,R(i);for(var l=0;i.mipmask>>l;++l){var c=a>>l,u=s>>l;if(!c||!u)break;t.texImage2D(3553,l,i.format,c,u,0,i.format,i.type,null)}return z(),o.profile&&(i.stats.size=P(i.internalformat,i.type,a,s,!1,!1)),r},r._reglType="texture2d",r._texture=i,o.profile&&(r.stats=i.stats),r.destroy=function(){i.decRef()},r},createCube:function(e,n,r,i,s,u){function f(t,e,n,r,i,a){var s,u=p.texInfo;for(L.call(u),s=0;6>s;++s)m[s]=w();if("number"!==typeof t&&t){if("object"===typeof t)if(e)b(m[0],t),b(m[1],e),b(m[2],n),b(m[3],r),b(m[4],i),b(m[5],a);else if(O(u,t),c(p,t),"faces"in t)for(t=t.faces,s=0;6>s;++s)l(m[s],p),b(m[s],t[s]);else for(s=0;6>s;++s)b(m[s],t)}else for(t=0|t||1,s=0;6>s;++s)y(m[s],t,t);for(l(p,m[0]),p.mipmask=u.genMipmaps?(m[0].width<<1)-1:m[0].mipmask,p.internalformat=m[0].internalformat,f.width=m[0].width,f.height=m[0].height,R(p),s=0;6>s;++s)x(m[s],34069+s);for(I(u,34067),z(),o.profile&&(p.stats.size=P(p.internalformat,p.type,f.width,f.height,u.genMipmaps,!0)),f.format=$[p.internalformat],f.type=X[p.type],f.mag=K[u.magFilter],f.min=Z[u.minFilter],f.wrapS=J[u.wrapS],f.wrapT=J[u.wrapT],s=0;6>s;++s)T(m[s]);return f}var p=new D(34067);at[p.id]=p,a.cubeCount++;var m=Array(6);return f(e,n,r,i,s,u),f.subimage=function(t,e,n,r,i){n|=0,r|=0,i|=0;var a=g();return l(a,p),a.width=0,a.height=0,h(a,e),a.width=a.width||(p.width>>i)-n,a.height=a.height||(p.height>>i)-r,R(p),d(a,34069+t,n,r,i),z(),v(a),f},f.resize=function(e){if((e|=0)!==p.width){f.width=p.width=e,f.height=p.height=e,R(p);for(var n=0;6>n;++n)for(var r=0;p.mipmask>>r;++r)t.texImage2D(34069+n,r,p.format,e>>r,e>>r,0,p.format,p.type,null);return z(),o.profile&&(p.stats.size=P(p.internalformat,p.type,f.width,f.height,!1,!0)),f}},f._reglType="textureCube",f._texture=p,o.profile&&(f.stats=p.stats),f.destroy=function(){p.decRef()},f},clear:function(){for(var e=0;en;++n)if(0!==(e.mipmask&1<>n,e.height>>n,0,e.internalformat,e.type,null);else for(var r=0;6>r;++r)t.texImage2D(34069+r,n,e.internalformat,e.width>>n,e.height>>n,0,e.internalformat,e.type,null);I(e.texInfo,e.target)}))},refresh:function(){for(var e=0;ei;++i){for(c=0;ct;++t)n[t].resize(r);return e.width=e.height=r,e},_reglType:"framebufferCube",destroy:function(){n.forEach((function(t){t.destroy()}))}})},clear:function(){st(T).forEach(v)},restore:function(){b.cur=null,b.next=null,b.dirty=!0,st(T).forEach((function(e){e.framebuffer=t.createFramebuffer(),m(e)}))}})}function I(){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 D(t,e,n,r,i,a,o){function s(t){if(t!==m.currentVAO){var n=e.oes_vertex_array_object;t?n.bindVertexArrayOES(t.vao):n.bindVertexArrayOES(null),m.currentVAO=t}}function l(n){if(n!==m.currentVAO){if(n)n.bindAttrs();else{for(var r=e.angle_instanced_arrays,i=0;i=f.byteLength?l.subdata(f):(l.destroy(),n.buffers[s]=null)),n.buffers[s]||(l=n.buffers[s]=i.create(c,34962,!1,!0)),u.buffer=i.getBuffer(l),u.size=0|u.buffer.dimension,u.normalized=!1,u.type=u.buffer.dtype,u.offset=0,u.stride=0,u.divisor=0,u.state=1,t[s]=1):i.getBuffer(c)?(u.buffer=i.getBuffer(c),u.size=0|u.buffer.dimension,u.normalized=!1,u.type=u.buffer.dtype,u.offset=0,u.stride=0,u.divisor=0,u.state=1):i.getBuffer(c.buffer)?(u.buffer=i.getBuffer(c.buffer),u.size=0|(+c.size||u.buffer.dimension),u.normalized=!!c.normalized||!1,u.type="type"in c?ut[c.type]:u.buffer.dtype,u.offset=0|(c.offset||0),u.stride=0|(c.stride||0),u.divisor=0|(c.divisor||0),u.state=1):"x"in c&&(u.x=+c.x||0,u.y=+c.y||0,u.z=+c.z||0,u.w=+c.w||0,u.state=2)}for(l=0;lt&&(t=e.stats.uniformsCount)})),t},n.getMaxAttributesCount=function(){var t=0;return h.forEach((function(e){e.stats.attributesCount>t&&(t=e.stats.attributesCount)})),t}),{clear:function(){var e=t.deleteShader.bind(t);st(c).forEach(e),c={},st(u).forEach(e),u={},h.forEach((function(e){t.deleteProgram(e.program)})),h.length=0,f={},n.shaderCount=0},program:function(e,r,i,a){var o=f[r];o||(o=f[r]={});var d=o[e];if(d&&(d.refCount++,!a))return d;var p=new s(r,e);return n.shaderCount++,l(p,i,a),d||(o[e]=p),h.push(p),Q(p,{destroy:function(){if(p.refCount--,0>=p.refCount){t.deleteProgram(p.program);var e=h.indexOf(p);h.splice(e,1),n.shaderCount--}0>=o[p.vertId].refCount&&(t.deleteShader(u[p.vertId]),delete u[p.vertId],delete f[p.fragId][p.vertId]),Object.keys(f[p.fragId]).length||(t.deleteShader(c[p.fragId]),delete c[p.fragId],delete f[p.fragId])}})},restore:function(){c={},u={};for(var t=0;t>2),n=0;n>5]|=(255&t.charCodeAt(n/8))<<24-n%32;var r,i,a,o,s,l,c,u,f,h,d,p=8*t.length;for(t=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225],n=Array(64),e[p>>5]|=128<<24-p%32,e[15+(p+64>>9<<4)]=p,u=0;uf;f++){var g;16>f?n[f]=e[f+u]:(h=f,d=U(d=B(d=n[f-2],17)^B(d,19)^d>>>10,n[f-7]),g=B(g=n[f-15],7)^B(g,18)^g>>>3,n[h]=U(U(d,g),n[f-16])),h=U(U(U(U(c,h=B(h=o,6)^B(h,11)^B(h,25)),o&s^~o&l),Dt[f]),n[f]),d=U(c=B(c=p,2)^B(c,13)^B(c,22),p&r^p&i^r&i),c=l,l=s,s=o,o=U(a,h),a=i,i=r,r=p,p=U(h,d)}t[0]=U(p,t[0]),t[1]=U(r,t[1]),t[2]=U(i,t[2]),t[3]=U(a,t[3]),t[4]=U(o,t[4]),t[5]=U(s,t[5]),t[6]=U(l,t[6]),t[7]=U(c,t[7])}for(e="",n=0;n<32*t.length;n+=8)e+=String.fromCharCode(t[n>>5]>>>24-n%32&255);return e}function j(t){for(var e,n="",r=0;r>>4&15)+"0123456789abcdef".charAt(15&e);return n}function F(t){for(var e,n,r="",i=-1;++i=e&&56320<=n&&57343>=n&&(e=65536+((1023&e)<<10)+(1023&n),i++),127>=e?r+=String.fromCharCode(e):2047>=e?r+=String.fromCharCode(192|e>>>6&31,128|63&e):65535>=e?r+=String.fromCharCode(224|e>>>12&15,128|e>>>6&63,128|63&e):2097151>=e&&(r+=String.fromCharCode(240|e>>>18&7,128|e>>>12&63,128|e>>>6&63,128|63&e));return r}function B(t,e){return t>>>e|t<<32-e}function U(t,e){var n=(65535&t)+(65535&e);return(t>>16)+(e>>16)+(n>>16)<<16|65535&n}function H(t){return Array.prototype.slice.call(t)}function V(t){return H(t).join("")}function q(t){function e(){var t=[],e=[];return Q((function(){t.push.apply(t,H(arguments))}),{def:function(){var n="v"+i++;return e.push(n),0"+e+"?"+i+".constant["+e+"]:0;"})).join(""),"}}else{","if(",s,"(",i,".buffer)){",u,"=",a,".createStream(",34962,",",i,".buffer);","}else{",u,"=",a,".getBuffer(",i,".buffer);","}",f,'="type" in ',i,"?",o.glTypes,"[",i,".type]:",u,".dtype;",l.normalized,"=!!",i,".normalized;"),r("size"),r("offset"),r("stride"),r("divisor"),n("}}"),n.exit("if(",l.isStream,"){",a,".destroyStream(",u,");","}"),l}))})),o}function L(t){var e=t.static,n=t.dynamic,r={};return Object.keys(e).forEach((function(t){var n=e[t];r[t]=X((function(t,e){return"number"===typeof n||"boolean"===typeof n?""+n:t.link(n)}))})),Object.keys(n).forEach((function(t){var e=n[t];r[t]=K(e,(function(t,n){return t.invoke(n,e)}))})),r}function O(t,e,r,i,a){function o(t){var e=l[t];e&&(f[t]=e)}var s=M(t,e),l=T(t,d=_(t,a),a),u=S(t,a),f=E(t,a),h=A(t,a,s);o("viewport"),o(m("scissor.box"));var d,p=0>1)",s],");")}function e(){n(l,".drawArraysInstancedANGLE(",[p,g,v,s],");")}d&&"null"!==d?y?t():(n("if(",d,"){"),t(),n("}else{"),e(),n("}")):e()}function o(){function t(){n(u+".drawElements("+[p,v,m,g+"<<(("+m+"-5121)>>1)"]+");")}function e(){n(u+".drawArrays("+[p,g,v]+");")}d&&"null"!==d?y?t():(n("if(",d,"){"),t(),n("}else{"),e(),n("}")):e()}var s,l,c=t.shared,u=c.gl,f=c.draw,h=r.draw,d=function(){var i=h.elements,a=e;return i?((i.contextDep&&r.contextDynamic||i.propDep)&&(a=n),i=i.append(t,a),h.elementsActive&&a("if("+i+")"+u+".bindBuffer(34963,"+i+".buffer.buffer);")):(i=a.def(),a(i,"=",f,".","elements",";","if(",i,"){",u,".bindBuffer(",34963,",",i,".buffer.buffer);}","else if(",c.vao,".currentVAO){",i,"=",t.shared.elements+".getElements("+c.vao,".currentVAO.elements);",ft?"":"if("+i+")"+u+".bindBuffer(34963,"+i+".buffer.buffer);","}")),i}(),p=i("primitive"),g=i("offset"),v=function(){var i=h.count,a=e;return i?((i.contextDep&&r.contextDynamic||i.propDep)&&(a=n),i=i.append(t,a)):i=a.def(f,".","count"),i}();if("number"===typeof v){if(0===v)return}else n("if(",v,"){"),n.exit("}");lt&&(s=i("instances"),l=t.instancing);var m=d+".type",y=h.elements&&$(h.elements)&&!h.vaoActive;lt&&("number"!==typeof s||0<=s)?"string"===typeof s?(n("if(",s,">0){"),a(),n("}else if(",s,"<0){"),o(),n("}")):a():o()}function H(t,e,n,r,i){return i=(e=x()).proc("body",i),lt&&(e.instancing=i.def(e.shared.extensions,".angle_instanced_arrays")),t(e,i,n,r),e.compile().body}function V(t,e,n,r){N(t,e),n.useVAO?n.drawVAO?e(t.shared.vao,".setVAO(",n.drawVAO.append(t,e),");"):e(t.shared.vao,".setVAO(",t.shared.vao,".targetVAO);"):(e(t.shared.vao,".setVAO(null);"),F(t,e,n,r.attributes,(function(){return!0}))),B(t,e,n,r.uniforms,(function(){return!0}),!1),U(t,e,e,n)}function Z(t,e){var n=t.proc("draw",1);N(t,n),I(t,n,e.context),D(t,n,e.framebuffer),R(t,n,e),z(t,n,e.state),j(t,n,e,!1,!0);var r=e.shader.progVar.append(t,n);if(n(t.shared.gl,".useProgram(",r,".program);"),e.shader.program)V(t,n,e,e.shader.program);else{n(t.shared.vao,".setVAO(null);");var i=t.global.def("{}"),a=n.def(r,".id"),o=n.def(i,"[",a,"]");n(t.cond(o).then(o,".call(this,a0);").else(o,"=",i,"[",a,"]=",t.link((function(n){return H(V,t,e,n,1)})),"(",r,");",o,".call(this,a0);"))}0=--this.refCount&&o(this)},i.profile&&(r.getTotalRenderbufferSize=function(){var t=0;return Object.keys(u).forEach((function(e){t+=u[e].stats.size})),t}),{create:function(e,n){function o(e,n){var r=0,a=0,u=32854;if("object"===typeof e&&e?("shape"in e?(r=0|(a=e.shape)[0],a=0|a[1]):("radius"in e&&(r=a=0|e.radius),"width"in e&&(r=0|e.width),"height"in e&&(a=0|e.height)),"format"in e&&(u=s[e.format])):"number"===typeof e?(r=0|e,a="number"===typeof n?0|n:r):e||(r=a=1),r!==c.width||a!==c.height||u!==c.format)return o.width=c.width=r,o.height=c.height=a,c.format=u,t.bindRenderbuffer(36161,c.renderbuffer),t.renderbufferStorage(36161,u,r,a),i.profile&&(c.stats.size=Pt[c.format]*c.width*c.height),o.format=l[c.format],o}var c=new a(t.createRenderbuffer());return u[c.id]=c,r.renderbufferCount++,o(e,n),o.resize=function(e,n){var r=0|e,a=0|n||r;return r===c.width&&a===c.height||(o.width=c.width=r,o.height=c.height=a,t.bindRenderbuffer(36161,c.renderbuffer),t.renderbufferStorage(36161,c.format,r,a),i.profile&&(c.stats.size=Pt[c.format]*c.width*c.height)),o},o._reglType="renderbuffer",o._renderbuffer=c,i.profile&&(o.stats=c.stats),o.destroy=function(){c.decRef()},o},clear:function(){st(u).forEach(o)},restore:function(){st(u).forEach((function(e){e.renderbuffer=t.createRenderbuffer(),t.bindRenderbuffer(36161,e.renderbuffer),t.renderbufferStorage(36161,e.format,e.width,e.height)})),t.bindRenderbuffer(36161,null)}}},Ot=[];Ot[6408]=4,Ot[6407]=3;var It=[];It[5121]=1,It[5126]=4,It[36193]=2;var Dt=[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],Rt=["x","y","z","w"],zt="blend.func blend.equation stencil.func stencil.opFront stencil.opBack sample.coverage viewport scissor.box polygonOffset.offset".split(" "),Nt={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},jt={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},Ft={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Bt={cw:2304,ccw:2305},Ut=new Y(!1,!1,!1,(function(){})),Ht=function(t,e){function n(){this.endQueryIndex=this.startQueryIndex=-1,this.sum=0,this.stats=null}function r(t,e,r){var i=o.pop()||new n;i.startQueryIndex=t,i.endQueryIndex=e,i.sum=0,i.stats=r,s.push(i)}if(!e.ext_disjoint_timer_query)return null;var i=[],a=[],o=[],s=[],l=[],c=[];return{beginQuery:function(t){var n=i.pop()||e.ext_disjoint_timer_query.createQueryEXT();e.ext_disjoint_timer_query.beginQueryEXT(35007,n),a.push(n),r(a.length-1,a.length,t)},endQuery:function(){e.ext_disjoint_timer_query.endQueryEXT(35007)},pushScopeStats:r,update:function(){var t,n;if(0!==(t=a.length)){c.length=Math.max(c.length,t+1),l.length=Math.max(l.length,t+1),l[0]=0;var r=c[0]=0;for(n=t=0;n=W.length&&r()}var n=J(W,t);W[n]=e}}}function h(){var t=q.viewport,e=q.scissor_box;t[0]=t[1]=e[0]=e[1]=0,C.viewportWidth=C.framebufferWidth=C.drawingBufferWidth=t[2]=e[2]=v.drawingBufferWidth,C.viewportHeight=C.framebufferHeight=C.drawingBufferHeight=t[3]=e[3]=v.drawingBufferHeight}function d(){C.tick+=1,C.time=g(),h(),V.procs.poll()}function p(){B.refresh(),h(),V.procs.refresh(),M&&M.update()}function g(){return(rt()-A)/1e3}if(!(t=c(t)))return null;var v=t.gl,m=v.getContextAttributes();v.isContextLost();var y=u(v,t);if(!y)return null;var b=i(),_={vaoCount:0,bufferCount:0,elementsCount:0,framebufferCount:0,shaderCount:0,textureCount:0,cubeCount:0,renderbufferCount:0,maxTextureUnits:0},k=t.cachedCode||{},T=y.extensions,M=Ht(v,T),A=rt(),S=v.drawingBufferWidth,E=v.drawingBufferHeight,C={tick:0,time:0,viewportWidth:S,viewportHeight:E,framebufferWidth:S,framebufferHeight:E,drawingBufferWidth:S,drawingBufferHeight:E,pixelRatio:t.pixelRatio},P=(S={elements:null,primitive:4,count:-1,offset:0,instances:-1},at(v,T)),I=x(v,_,t,(function(t){return j.destroyBuffer(t)})),N=w(v,T,I,_),j=D(v,T,P,_,I,N,S),F=R(v,b,_,t),B=L(v,T,P,(function(){V.procs.poll()}),C,_,t),U=Lt(v,T,P,_,t),H=O(v,T,P,B,U,_),V=Z(v,b,T,P,I,N,B,H,{},j,F,S,C,M,k,t),q=(b=z(v,H,V.procs.poll,C,m,T,P),V.next),G=v.canvas,W=[],Y=[],$=[],X=[t.onDestroy],K=null;G&&(G.addEventListener("webglcontextlost",a,!1),G.addEventListener("webglcontextrestored",o,!1));var tt=H.setFBO=s({framebuffer:et.define.call(null,1,"framebuffer")});return p(),m=Q(s,{clear:function(t){if("framebuffer"in t)if(t.framebuffer&&"framebufferCube"===t.framebuffer_reglType)for(var e=0;6>e;++e)tt(Q({framebuffer:t.framebuffer.faces[e]},t),l);else tt(t,l);else l(null,t)},prop:et.define.bind(null,1),context:et.define.bind(null,2),this:et.define.bind(null,3),draw:s({}),buffer:function(t){return I.create(t,34962,!1,!1)},elements:function(t){return N.create(t,!1)},texture:B.create2D,cube:B.createCube,renderbuffer:U.create,framebuffer:H.create,framebufferCube:H.createCube,vao:j.createVAO,attributes:m,frame:f,on:function(t,e){var n;switch(t){case"frame":return f(e);case"lost":n=Y;break;case"restore":n=$;break;case"destroy":n=X}return n.push(e),{cancel:function(){for(var t=0;t2?"one of ".concat(e," ").concat(t.slice(0,n-1).join(", "),", or ")+t[n-1]:2===n?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}return"of ".concat(e," ").concat(String(t))}n("ERR_INVALID_OPT_VALUE",(function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'}),TypeError),n("ERR_INVALID_ARG_TYPE",(function(t,e,n){var i,a,o,s;if("string"===typeof e&&(a="not ",e.substr(!o||o<0?0:+o,a.length)===a)?(i="must not be",e=e.replace(/^not /,"")):i="must be",function(t,e,n){return(void 0===n||n>t.length)&&(n=t.length),t.substring(n-e.length,n)===e}(t," argument"))s="The ".concat(t," ").concat(i," ").concat(r(e,"type"));else{var l=function(t,e,n){return"number"!==typeof n&&(n=0),!(n+e.length>t.length)&&-1!==t.indexOf(e,n)}(t,".")?"property":"argument";s='The "'.concat(t,'" ').concat(l," ").concat(i," ").concat(r(e,"type"))}return s+=". Received type ".concat(typeof n)}),TypeError),n("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),n("ERR_METHOD_NOT_IMPLEMENTED",(function(t){return"The "+t+" method is not implemented"})),n("ERR_STREAM_PREMATURE_CLOSE","Premature close"),n("ERR_STREAM_DESTROYED",(function(t){return"Cannot call "+t+" after a stream was destroyed"})),n("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),n("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),n("ERR_STREAM_WRITE_AFTER_END","write after end"),n("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),n("ERR_UNKNOWN_ENCODING",(function(t){return"Unknown encoding: "+t}),TypeError),n("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),t.exports.q=e},37865:function(t,e,n){"use strict";var r=n(90386),i=Object.keys||function(t){var e=[];for(var n in t)e.push(n);return e};t.exports=u;var a=n(40410),o=n(37493);n(42018)(u,a);for(var s=i(o.prototype),l=0;l0)if("string"===typeof e||s.objectMode||Object.getPrototypeOf(e)===l.prototype||(e=function(t){return l.from(t)}(e)),r)s.endEmitted?_(t,new w):S(t,s,e,!0);else if(s.ended)_(t,new b);else{if(s.destroyed)return!1;s.reading=!1,s.decoder&&!n?(e=s.decoder.write(e),s.objectMode||0!==e.length?S(t,s,e,!1):O(t,s)):S(t,s,e,!1)}else r||(s.reading=!1,O(t,s));return!s.ended&&(s.lengthe.highWaterMark&&(e.highWaterMark=function(t){return t>=E?t=E:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function P(t){var e=t._readableState;a("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(a("emitReadable",e.flowing),e.emittedReadable=!0,i.nextTick(L,t))}function L(t){var e=t._readableState;a("emitReadable_",e.destroyed,e.length,e.ended),e.destroyed||!e.length&&!e.ended||(t.emit("readable"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,N(t)}function O(t,e){e.readingMore||(e.readingMore=!0,i.nextTick(I,t,e))}function I(t,e){for(;!e.reading&&!e.ended&&(e.length0,e.resumeScheduled&&!e.paused?e.flowing=!0:t.listenerCount("data")>0&&t.resume()}function R(t){a("readable nexttick read 0"),t.read(0)}function z(t,e){a("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),N(t),e.flowing&&!e.reading&&t.read(0)}function N(t){var e=t._readableState;for(a("flow",e.flowing);e.flowing&&null!==t.read(););}function j(t,e){return 0===e.length?null:(e.objectMode?n=e.buffer.shift():!t||t>=e.length?(n=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.first():e.buffer.concat(e.length),e.buffer.clear()):n=e.buffer.consume(t,e.decoder),n);var n}function F(t){var e=t._readableState;a("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,i.nextTick(B,e,t))}function B(t,e){if(a("endReadableNT",t.endEmitted,t.length),!t.endEmitted&&0===t.length&&(t.endEmitted=!0,e.readable=!1,e.emit("end"),t.autoDestroy)){var n=e._writableState;(!n||n.autoDestroy&&n.finished)&&e.destroy()}}function U(t,e){for(var n=0,r=t.length;n=e.highWaterMark:e.length>0)||e.ended))return a("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?F(this):P(this),null;if(0===(t=C(t,e))&&e.ended)return 0===e.length&&F(this),null;var r,i=e.needReadable;return a("need readable",i),(0===e.length||e.length-t0?j(t,e):null)?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.awaitDrain=0),0===e.length&&(e.ended||(e.needReadable=!0),n!==t&&e.ended&&F(this)),null!==r&&this.emit("data",r),r},M.prototype._read=function(t){_(this,new x("_read()"))},M.prototype.pipe=function(t,e){var n=this,r=this._readableState;switch(r.pipesCount){case 0:r.pipes=t;break;case 1:r.pipes=[r.pipes,t];break;default:r.pipes.push(t)}r.pipesCount+=1,a("pipe count=%d opts=%j",r.pipesCount,e);var s=e&&!1===e.end||t===i.stdout||t===i.stderr?v:c;function l(e,i){a("onunpipe"),e===n&&i&&!1===i.hasUnpiped&&(i.hasUnpiped=!0,a("cleanup"),t.removeListener("close",p),t.removeListener("finish",g),t.removeListener("drain",u),t.removeListener("error",d),t.removeListener("unpipe",l),n.removeListener("end",c),n.removeListener("end",v),n.removeListener("data",h),f=!0,!r.awaitDrain||t._writableState&&!t._writableState.needDrain||u())}function c(){a("onend"),t.end()}r.endEmitted?i.nextTick(s):n.once("end",s),t.on("unpipe",l);var u=function(t){return function(){var e=t._readableState;a("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&o(t,"data")&&(e.flowing=!0,N(t))}}(n);t.on("drain",u);var f=!1;function h(e){a("ondata");var i=t.write(e);a("dest.write",i),!1===i&&((1===r.pipesCount&&r.pipes===t||r.pipesCount>1&&-1!==U(r.pipes,t))&&!f&&(a("false write response, pause",r.awaitDrain),r.awaitDrain++),n.pause())}function d(e){a("onerror",e),v(),t.removeListener("error",d),0===o(t,"error")&&_(t,e)}function p(){t.removeListener("finish",g),v()}function g(){a("onfinish"),t.removeListener("close",p),v()}function v(){a("unpipe"),n.unpipe(t)}return n.on("data",h),function(t,e,n){if("function"===typeof t.prependListener)return t.prependListener(e,n);t._events&&t._events[e]?Array.isArray(t._events[e])?t._events[e].unshift(n):t._events[e]=[n,t._events[e]]:t.on(e,n)}(t,"error",d),t.once("close",p),t.once("finish",g),t.emit("pipe",n),r.flowing||(a("pipe resume"),n.resume()),t},M.prototype.unpipe=function(t){var e=this._readableState,n={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes||(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,n)),this;if(!t){var r=e.pipes,i=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var a=0;a0,!1!==r.flowing&&this.resume()):"readable"===t&&(r.endEmitted||r.readableListening||(r.readableListening=r.needReadable=!0,r.flowing=!1,r.emittedReadable=!1,a("on readable",r.length,r.reading),r.length?P(this):r.reading||i.nextTick(R,this))),n},M.prototype.addListener=M.prototype.on,M.prototype.removeListener=function(t,e){var n=s.prototype.removeListener.call(this,t,e);return"readable"===t&&i.nextTick(D,this),n},M.prototype.removeAllListeners=function(t){var e=s.prototype.removeAllListeners.apply(this,arguments);return"readable"!==t&&void 0!==t||i.nextTick(D,this),e},M.prototype.resume=function(){var t=this._readableState;return t.flowing||(a("resume"),t.flowing=!t.readableListening,function(t,e){e.resumeScheduled||(e.resumeScheduled=!0,i.nextTick(z,t,e))}(this,t)),t.paused=!1,this},M.prototype.pause=function(){return a("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(a("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},M.prototype.wrap=function(t){var e=this,n=this._readableState,r=!1;for(var i in t.on("end",(function(){if(a("wrapped end"),n.decoder&&!n.ended){var t=n.decoder.end();t&&t.length&&e.push(t)}e.push(null)})),t.on("data",(function(i){a("wrapped data"),n.decoder&&(i=n.decoder.write(i)),(!n.objectMode||null!==i&&void 0!==i)&&(n.objectMode||i&&i.length)&&(e.push(i)||(r=!0,t.pause()))})),t)void 0===this[i]&&"function"===typeof t[i]&&(this[i]=function(e){return function(){return t[e].apply(t,arguments)}}(i));for(var o=0;o-1))throw new w(t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(M.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(M.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),M.prototype._write=function(t,e,n){n(new g("_write()"))},M.prototype._writev=null,M.prototype.end=function(t,e,n){var r=this._writableState;return"function"===typeof t?(n=t,t=null,e=null):"function"===typeof e&&(n=e,e=null),null!==t&&void 0!==t&&this.write(t,e),r.corked&&(r.corked=1,this.uncork()),r.ending||function(t,e,n){e.ending=!0,L(t,e),n&&(e.finished?i.nextTick(n):t.once("finish",n)),e.ended=!0,t.writable=!1}(this,r,n),this},Object.defineProperty(M.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(M.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}}),M.prototype.destroy=f.destroy,M.prototype._undestroy=f.undestroy,M.prototype._destroy=function(t,e){e(t)}},68221:function(t,e,n){"use strict";var r,i=n(90386);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var o=n(12726),s=Symbol("lastResolve"),l=Symbol("lastReject"),c=Symbol("error"),u=Symbol("ended"),f=Symbol("lastPromise"),h=Symbol("handlePromise"),d=Symbol("stream");function p(t,e){return{value:t,done:e}}function g(t){var e=t[s];if(null!==e){var n=t[d].read();null!==n&&(t[f]=null,t[s]=null,t[l]=null,e(p(n,!1)))}}function v(t){i.nextTick(g,t)}var m=Object.getPrototypeOf((function(){})),y=Object.setPrototypeOf((a(r={get stream(){return this[d]},next:function(){var t=this,e=this[c];if(null!==e)return Promise.reject(e);if(this[u])return Promise.resolve(p(void 0,!0));if(this[d].destroyed)return new Promise((function(e,n){i.nextTick((function(){t[c]?n(t[c]):e(p(void 0,!0))}))}));var n,r=this[f];if(r)n=new Promise(function(t,e){return function(n,r){t.then((function(){e[u]?n(p(void 0,!0)):e[h](n,r)}),r)}}(r,this));else{var a=this[d].read();if(null!==a)return Promise.resolve(p(a,!1));n=new Promise(this[h])}return this[f]=n,n}},Symbol.asyncIterator,(function(){return this})),a(r,"return",(function(){var t=this;return new Promise((function(e,n){t[d].destroy(null,(function(t){t?n(t):e(p(void 0,!0))}))}))})),r),m);t.exports=function(t){var e,n=Object.create(y,(a(e={},d,{value:t,writable:!0}),a(e,s,{value:null,writable:!0}),a(e,l,{value:null,writable:!0}),a(e,c,{value:null,writable:!0}),a(e,u,{value:t._readableState.endEmitted,writable:!0}),a(e,h,{value:function(t,e){var r=n[d].read();r?(n[f]=null,n[s]=null,n[l]=null,t(p(r,!1))):(n[s]=t,n[l]=e)},writable:!0}),e));return n[f]=null,o(t,(function(t){if(t&&"ERR_STREAM_PREMATURE_CLOSE"!==t.code){var e=n[l];return null!==e&&(n[f]=null,n[s]=null,n[l]=null,e(t)),void(n[c]=t)}var r=n[s];null!==r&&(n[f]=null,n[s]=null,n[l]=null,r(p(void 0,!0))),n[u]=!0})),t.on("readable",v.bind(null,n)),n}},31125:function(t,e,n){"use strict";function r(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function i(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function a(t,e){for(var n=0;n0?this.tail.next=e:this.head=e,this.tail=e,++this.length}},{key:"unshift",value:function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length}},{key:"shift",value:function(){if(0!==this.length){var t=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,t}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(t){if(0===this.length)return"";for(var e=this.head,n=""+e.data;e=e.next;)n+=t+e.data;return n}},{key:"concat",value:function(t){if(0===this.length)return o.alloc(0);for(var e,n,r,i=o.allocUnsafe(t>>>0),a=this.head,s=0;a;)e=a.data,n=i,r=s,o.prototype.copy.call(e,n,r),s+=a.data.length,a=a.next;return i}},{key:"consume",value:function(t,e){var n;return ti.length?i.length:t;if(a===i.length?r+=i:r+=i.slice(0,t),0===(t-=a)){a===i.length?(++n,e.next?this.head=e.next:this.head=this.tail=null):(this.head=e,e.data=i.slice(a));break}++n}return this.length-=n,r}},{key:"_getBuffer",value:function(t){var e=o.allocUnsafe(t),n=this.head,r=1;for(n.data.copy(e),t-=n.data.length;n=n.next;){var i=n.data,a=t>i.length?i.length:t;if(i.copy(e,e.length-t,0,a),0===(t-=a)){a===i.length?(++r,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=i.slice(a));break}++r}return this.length-=r,e}},{key:l,value:function(t,e){return s(this,function(t){for(var e=1;e0,(function(t){u||(u=t),t&&h.forEach(l),a||(h.forEach(l),f(u))}))}));return e.reduce(c)}},56306:function(t,e,n){"use strict";var r=n(74322).q.ERR_INVALID_OPT_VALUE;t.exports={getHighWaterMark:function(t,e,n,i){var a=function(t,e,n){return null!=t.highWaterMark?t.highWaterMark:e?t[n]:null}(e,i,n);if(null!=a){if(!isFinite(a)||Math.floor(a)!==a||a<0)throw new r(i?n:"highWaterMark",a);return Math.floor(a)}return t.objectMode?16:16384}}},71405:function(t,e,n){t.exports=n(15398).EventEmitter},68019:function(t,e,n){"use strict";var r=n(71665).Buffer,i=r.isEncoding||function(t){switch((t=""+t)&&t.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 a(t){var e;switch(this.encoding=function(t){var e=function(t){if(!t)return"utf8";for(var e;;)switch(t){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 t;default:if(e)return;t=(""+t).toLowerCase(),e=!0}}(t);if("string"!==typeof e&&(r.isEncoding===i||!i(t)))throw new Error("Unknown encoding: "+t);return e||t}(t),this.encoding){case"utf16le":this.text=l,this.end=c,e=4;break;case"utf8":this.fillLast=s,e=4;break;case"base64":this.text=u,this.end=f,e=3;break;default:return this.write=h,void(this.end=d)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(e)}function o(t){return t<=127?0:t>>5===6?2:t>>4===14?3:t>>3===30?4:t>>6===2?-1:-2}function s(t){var e=this.lastTotal-this.lastNeed,n=function(t,e,n){if(128!==(192&e[0]))return t.lastNeed=0,"\ufffd";if(t.lastNeed>1&&e.length>1){if(128!==(192&e[1]))return t.lastNeed=1,"\ufffd";if(t.lastNeed>2&&e.length>2&&128!==(192&e[2]))return t.lastNeed=2,"\ufffd"}}(this,t);return void 0!==n?n:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function l(t,e){if((t.length-e)%2===0){var n=t.toString("utf16le",e);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function c(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,n)}return e}function u(t,e){var n=(t.length-e)%3;return 0===n?t.toString("base64",e):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-n))}function f(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function h(t){return t.toString(this.encoding)}function d(t){return t&&t.length?this.write(t):""}e.s=a,a.prototype.write=function(t){if(0===t.length)return"";var e,n;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0?(i>0&&(t.lastNeed=i-1),i):--r=0?(i>0&&(t.lastNeed=i-2),i):--r=0?(i>0&&(2===i?i=0:t.lastNeed=i-3),i):0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=n;var r=t.length-(n-this.lastNeed);return t.copy(this.lastChar,0,r),t.toString("utf8",e,r)},a.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},90715:function(t,e,n){var r=n(32791),i=n(41633)("stream-parser");t.exports=function(t){var e=t&&"function"==typeof t._transform,n=t&&"function"==typeof t._write;if(!e&&!n)throw new Error("must pass a Writable or Transform stream in");i("extending Parser into stream"),t._bytes=u,t._skipBytes=f,e&&(t._passthrough=h),e?t._transform=p:t._write=d};var a=-1,o=0,s=1,l=2;function c(t){i("initializing parser stream"),t._parserBytesLeft=0,t._parserBuffers=[],t._parserBuffered=0,t._parserState=a,t._parserCallback=null,"function"==typeof t.push&&(t._parserOutput=t.push.bind(t)),t._parserInit=!0}function u(t,e){r(!this._parserCallback,'there is already a "callback" set!'),r(isFinite(t)&&t>0,'can only buffer a finite number of bytes > 0, got "'+t+'"'),this._parserInit||c(this),i("buffering %o bytes",t),this._parserBytesLeft=t,this._parserCallback=e,this._parserState=o}function f(t,e){r(!this._parserCallback,'there is already a "callback" set!'),r(t>0,'can only skip > 0 bytes, got "'+t+'"'),this._parserInit||c(this),i("skipping %o bytes",t),this._parserBytesLeft=t,this._parserCallback=e,this._parserState=s}function h(t,e){r(!this._parserCallback,'There is already a "callback" set!'),r(t>0,'can only pass through > 0 bytes, got "'+t+'"'),this._parserInit||c(this),i("passing through %o bytes",t),this._parserBytesLeft=t,this._parserCallback=e,this._parserState=l}function d(t,e,n){this._parserInit||c(this),i("write(%o bytes)",t.length),"function"==typeof e&&(n=e),v(this,t,null,n)}function p(t,e,n){this._parserInit||c(this),i("transform(%o bytes)",t.length),"function"!=typeof e&&(e=this._parserOutput),v(this,t,e,n)}function g(t,e,n,r){if(t._parserBytesLeft-=e.length,i("%o bytes left for stream piece",t._parserBytesLeft),t._parserState===o?(t._parserBuffers.push(e),t._parserBuffered+=e.length):t._parserState===l&&n(e),0!==t._parserBytesLeft)return r;var s=t._parserCallback;if(s&&t._parserState===o&&t._parserBuffers.length>1&&(e=Buffer.concat(t._parserBuffers,t._parserBuffered)),t._parserState!==o&&(e=null),t._parserCallback=null,t._parserBuffered=0,t._parserState=a,t._parserBuffers.splice(0),s){var c=[];e&&c.push(e),n&&c.push(n);var u=s.length>c.length;u&&c.push(m(r));var f=s.apply(t,c);if(!u||r===f)return r}}var v=m((function t(e,n,r,i){return e._parserBytesLeft<=0?i(new Error("got data but not currently parsing anything")):n.length<=e._parserBytesLeft?function(){return g(e,n,r,i)}:function(){var a=n.slice(0,e._parserBytesLeft);return g(e,a,r,(function(o){return o?i(o):n.length>a.length?function(){return t(e,n.slice(a.length),r,i)}:void 0}))}}));function m(t){return function(){for(var e=t.apply(this,arguments);"function"==typeof e;)e=e();return e}}},41633:function(t,e,n){var r=n(90386);function i(){var t;try{t=e.storage.debug}catch(n){}return!t&&"undefined"!==typeof r&&"env"in r&&(t=r.env.DEBUG),t}(e=t.exports=n(74469)).log=function(){return"object"===typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)},e.formatArgs=function(t){var n=this.useColors;if(t[0]=(n?"%c":"")+this.namespace+(n?" %c":" ")+t[0]+(n?"%c ":" ")+"+"+e.humanize(this.diff),n){var r="color: "+this.color;t.splice(1,0,r,"color: inherit");var i=0,a=0;t[0].replace(/%[a-zA-Z%]/g,(function(t){"%%"!==t&&(i++,"%c"===t&&(a=i))})),t.splice(a,0,r)}},e.save=function(t){try{null==t?e.storage.removeItem("debug"):e.storage.debug=t}catch(n){}},e.load=i,e.useColors=function(){return!("undefined"===typeof window||!window.process||"renderer"!==window.process.type)||("undefined"!==typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!==typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!==typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!==typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},e.storage="undefined"!=typeof chrome&&"undefined"!=typeof chrome.storage?chrome.storage.local:function(){try{return window.localStorage}catch(t){}}(),e.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"],e.formatters.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}},e.enable(i())},74469:function(t,e,n){var r;function i(t){function n(){if(n.enabled){var t=n,i=+new Date,a=i-(r||i);t.diff=a,t.prev=r,t.curr=i,r=i;for(var o=new Array(arguments.length),s=0;s0)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 s=parseFloat(o[1]);switch((o[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return s*a;case"days":case"day":case"d":return s*i;case"hours":case"hour":case"hrs":case"hr":case"h":return s*r;case"minutes":case"minute":case"mins":case"min":case"m":return s*n;case"seconds":case"second":case"secs":case"sec":case"s":return s*e;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}}}(t);if("number"===c&&!1===isNaN(t))return s.long?o(l=t,i,"day")||o(l,r,"hour")||o(l,n,"minute")||o(l,e,"second")||l+" ms":function(t){return t>=i?Math.round(t/i)+"d":t>=r?Math.round(t/r)+"h":t>=n?Math.round(t/n)+"m":t>=e?Math.round(t/e)+"s":t+"ms"}(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))}},99011:function(t,e,n){"use strict";var r=n(88641);t.exports=function(t,e,n){if(null==t)throw Error("First argument should be a string");if(null==e)throw Error("Separator should be a string or a RegExp");n?("string"===typeof n||Array.isArray(n))&&(n={ignore:n}):n={},null==n.escape&&(n.escape=!0),null==n.ignore?n.ignore=["[]","()","{}","<>",'""',"''","``","\u201c\u201d","\xab\xbb"]:("string"===typeof n.ignore&&(n.ignore=[n.ignore]),n.ignore=n.ignore.map((function(t){return 1===t.length&&(t+=t),t})));var i=r.parse(t,{flat:!0,brackets:n.ignore}),a=i[0].split(e);if(n.escape){for(var o=[],s=0;s0;){e=c[c.length-1];var d=t[e];if(a[e]=0&&s[e].push(o[g])}a[e]=p}else{if(r[e]===n[e]){var v=[],m=[],y=0;for(p=l.length-1;p>=0;--p){var b=l[p];if(i[b]=!1,v.push(b),m.push(s[b]),y+=s[b].length,o[b]=f.length,b===e){l.length=p;break}}f.push(v);var x=new Array(y);for(p=0;p1&&(i=1),i<-1&&(i=-1),(t*r-e*n<0?-1:1)*Math.acos(i)};e.default=function(t){var e=t.px,n=t.py,l=t.cx,c=t.cy,u=t.rx,f=t.ry,h=t.xAxisRotation,d=void 0===h?0:h,p=t.largeArcFlag,g=void 0===p?0:p,v=t.sweepFlag,m=void 0===v?0:v,y=[];if(0===u||0===f)return[];var b=Math.sin(d*i/360),x=Math.cos(d*i/360),w=x*(e-l)/2+b*(n-c)/2,_=-b*(e-l)/2+x*(n-c)/2;if(0===w&&0===_)return[];u=Math.abs(u),f=Math.abs(f);var k=Math.pow(w,2)/Math.pow(u,2)+Math.pow(_,2)/Math.pow(f,2);k>1&&(u*=Math.sqrt(k),f*=Math.sqrt(k));var T=function(t,e,n,r,a,o,l,c,u,f,h,d){var p=Math.pow(a,2),g=Math.pow(o,2),v=Math.pow(h,2),m=Math.pow(d,2),y=p*g-p*m-g*v;y<0&&(y=0),y/=p*m+g*v;var b=(y=Math.sqrt(y)*(l===c?-1:1))*a/o*d,x=y*-o/a*h,w=f*b-u*x+(t+n)/2,_=u*b+f*x+(e+r)/2,k=(h-b)/a,T=(d-x)/o,M=(-h-b)/a,A=(-d-x)/o,S=s(1,0,k,T),E=s(k,T,M,A);return 0===c&&E>0&&(E-=i),1===c&&E<0&&(E+=i),[w,_,S,E]}(e,n,l,c,u,f,g,m,b,x,w,_),M=r(T,4),A=M[0],S=M[1],E=M[2],C=M[3],P=Math.abs(C)/(i/4);Math.abs(1-P)<1e-7&&(P=1);var L=Math.max(Math.ceil(P),1);C/=L;for(var O=0;Oe[2]&&(e[2]=c[u+0]),c[u+1]>e[3]&&(e[3]=c[u+1]);return e}},29988:function(t,e,n){"use strict";t.exports=function(t){for(var e,n=[],o=0,s=0,l=0,c=0,u=null,f=null,h=0,d=0,p=0,g=t.length;p4?(o=v[v.length-4],s=v[v.length-3]):(o=h,s=d),n.push(v)}return n};var r=n(7095);function i(t,e,n,r){return["C",t,e,n,r,n,r]}function a(t,e,n,r,i,a){return["C",t/3+2/3*n,e/3+2/3*r,i/3+2/3*n,a/3+2/3*r,i,a]}},82019:function(t,e,n){"use strict";var r,i=n(1750),a=n(95616),o=n(31457),s=n(89546),l=n(44781),c=document.createElement("canvas"),u=c.getContext("2d");t.exports=function(t,e){if(!s(t))throw Error("Argument should be valid svg path string");var n,f;e||(e={}),e.shape?(n=e.shape[0],f=e.shape[1]):(n=c.width=e.w||e.width||200,f=c.height=e.h||e.height||200);var h=Math.min(n,f),d=e.stroke||0,p=e.viewbox||e.viewBox||i(t),g=[n/(p[2]-p[0]),f/(p[3]-p[1])],v=Math.min(g[0]||0,g[1]||0)/2;if(u.fillStyle="black",u.fillRect(0,0,n,f),u.fillStyle="white",d&&("number"!=typeof d&&(d=1),u.strokeStyle=d>0?"white":"black",u.lineWidth=Math.abs(d)),u.translate(.5*n,.5*f),u.scale(v,v),function(){if(null!=r)return r;var t=document.createElement("canvas").getContext("2d");if(t.canvas.width=t.canvas.height=1,!window.Path2D)return r=!1;var e=new Path2D("M0,0h1v1h-1v-1Z");t.fillStyle="black",t.fill(e);var n=t.getImageData(0,0,1,1);return r=n&&n.data&&255===n.data[3]}()){var m=new Path2D(t);u.fill(m),d&&u.stroke(m)}else{var y=a(t);o(u,y),u.fill(),d&&u.stroke()}return u.setTransform(1,0,0,1,0,0),l(u,{cutoff:null!=e.cutoff?e.cutoff:.5,radius:null!=e.radius?e.radius:.5*h})}},84267:function(t,e,n){var r;!function(i){var a=/^\s+/,o=/\s+$/,s=0,l=i.round,c=i.min,u=i.max,f=i.random;function h(t,e){if(e=e||{},(t=t||"")instanceof h)return t;if(!(this instanceof h))return new h(t,e);var n=function(t){var e,n,r,s={r:0,g:0,b:0},l=1,f=null,h=null,d=null,p=!1,g=!1;return"string"==typeof t&&(t=function(t){t=t.replace(a,"").replace(o,"").toLowerCase();var e,n=!1;if(P[t])t=P[t],n=!0;else if("transparent"==t)return{r:0,g:0,b:0,a:0,format:"name"};return(e=B.rgb.exec(t))?{r:e[1],g:e[2],b:e[3]}:(e=B.rgba.exec(t))?{r:e[1],g:e[2],b:e[3],a:e[4]}:(e=B.hsl.exec(t))?{h:e[1],s:e[2],l:e[3]}:(e=B.hsla.exec(t))?{h:e[1],s:e[2],l:e[3],a:e[4]}:(e=B.hsv.exec(t))?{h:e[1],s:e[2],v:e[3]}:(e=B.hsva.exec(t))?{h:e[1],s:e[2],v:e[3],a:e[4]}:(e=B.hex8.exec(t))?{r:R(e[1]),g:R(e[2]),b:R(e[3]),a:F(e[4]),format:n?"name":"hex8"}:(e=B.hex6.exec(t))?{r:R(e[1]),g:R(e[2]),b:R(e[3]),format:n?"name":"hex"}:(e=B.hex4.exec(t))?{r:R(e[1]+""+e[1]),g:R(e[2]+""+e[2]),b:R(e[3]+""+e[3]),a:F(e[4]+""+e[4]),format:n?"name":"hex8"}:!!(e=B.hex3.exec(t))&&{r:R(e[1]+""+e[1]),g:R(e[2]+""+e[2]),b:R(e[3]+""+e[3]),format:n?"name":"hex"}}(t)),"object"==typeof t&&(U(t.r)&&U(t.g)&&U(t.b)?(e=t.r,n=t.g,r=t.b,s={r:255*I(e,255),g:255*I(n,255),b:255*I(r,255)},p=!0,g="%"===String(t.r).substr(-1)?"prgb":"rgb"):U(t.h)&&U(t.s)&&U(t.v)?(f=N(t.s),h=N(t.v),s=function(t,e,n){t=6*I(t,360),e=I(e,100),n=I(n,100);var r=i.floor(t),a=t-r,o=n*(1-e),s=n*(1-a*e),l=n*(1-(1-a)*e),c=r%6,u=[n,s,o,o,l,n][c],f=[l,n,n,s,o,o][c],h=[o,o,l,n,n,s][c];return{r:255*u,g:255*f,b:255*h}}(t.h,f,h),p=!0,g="hsv"):U(t.h)&&U(t.s)&&U(t.l)&&(f=N(t.s),d=N(t.l),s=function(t,e,n){var r,i,a;function o(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+6*(e-t)*n:n<.5?e:n<2/3?t+(e-t)*(2/3-n)*6:t}if(t=I(t,360),e=I(e,100),n=I(n,100),0===e)r=i=a=n;else{var s=n<.5?n*(1+e):n+e-n*e,l=2*n-s;r=o(l,s,t+1/3),i=o(l,s,t),a=o(l,s,t-1/3)}return{r:255*r,g:255*i,b:255*a}}(t.h,f,d),p=!0,g="hsl"),t.hasOwnProperty("a")&&(l=t.a)),l=O(l),{ok:p,format:t.format||g,r:c(255,u(s.r,0)),g:c(255,u(s.g,0)),b:c(255,u(s.b,0)),a:l}}(t);this._originalInput=t,this._r=n.r,this._g=n.g,this._b=n.b,this._a=n.a,this._roundA=l(100*this._a)/100,this._format=e.format||n.format,this._gradientType=e.gradientType,this._r<1&&(this._r=l(this._r)),this._g<1&&(this._g=l(this._g)),this._b<1&&(this._b=l(this._b)),this._ok=n.ok,this._tc_id=s++}function d(t,e,n){t=I(t,255),e=I(e,255),n=I(n,255);var r,i,a=u(t,e,n),o=c(t,e,n),s=(a+o)/2;if(a==o)r=i=0;else{var l=a-o;switch(i=s>.5?l/(2-a-o):l/(a+o),a){case t:r=(e-n)/l+(e>1)+720)%360;--e;)r.h=(r.h+i)%360,a.push(h(r));return a}function C(t,e){e=e||6;for(var n=h(t).toHsv(),r=n.h,i=n.s,a=n.v,o=[],s=1/e;e--;)o.push(h({h:r,s:i,v:a})),a=(a+s)%1;return o}h.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},getLuminance:function(){var t,e,n,r=this.toRgb();return t=r.r/255,e=r.g/255,n=r.b/255,.2126*(t<=.03928?t/12.92:i.pow((t+.055)/1.055,2.4))+.7152*(e<=.03928?e/12.92:i.pow((e+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:i.pow((n+.055)/1.055,2.4))},setAlpha:function(t){return this._a=O(t),this._roundA=l(100*this._a)/100,this},toHsv:function(){var t=p(this._r,this._g,this._b);return{h:360*t.h,s:t.s,v:t.v,a:this._a}},toHsvString:function(){var t=p(this._r,this._g,this._b),e=l(360*t.h),n=l(100*t.s),r=l(100*t.v);return 1==this._a?"hsv("+e+", "+n+"%, "+r+"%)":"hsva("+e+", "+n+"%, "+r+"%, "+this._roundA+")"},toHsl:function(){var t=d(this._r,this._g,this._b);return{h:360*t.h,s:t.s,l:t.l,a:this._a}},toHslString:function(){var t=d(this._r,this._g,this._b),e=l(360*t.h),n=l(100*t.s),r=l(100*t.l);return 1==this._a?"hsl("+e+", "+n+"%, "+r+"%)":"hsla("+e+", "+n+"%, "+r+"%, "+this._roundA+")"},toHex:function(t){return g(this._r,this._g,this._b,t)},toHexString:function(t){return"#"+this.toHex(t)},toHex8:function(t){return function(t,e,n,r,i){var a=[z(l(t).toString(16)),z(l(e).toString(16)),z(l(n).toString(16)),z(j(r))];return i&&a[0].charAt(0)==a[0].charAt(1)&&a[1].charAt(0)==a[1].charAt(1)&&a[2].charAt(0)==a[2].charAt(1)&&a[3].charAt(0)==a[3].charAt(1)?a[0].charAt(0)+a[1].charAt(0)+a[2].charAt(0)+a[3].charAt(0):a.join("")}(this._r,this._g,this._b,this._a,t)},toHex8String:function(t){return"#"+this.toHex8(t)},toRgb:function(){return{r:l(this._r),g:l(this._g),b:l(this._b),a:this._a}},toRgbString:function(){return 1==this._a?"rgb("+l(this._r)+", "+l(this._g)+", "+l(this._b)+")":"rgba("+l(this._r)+", "+l(this._g)+", "+l(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:l(100*I(this._r,255))+"%",g:l(100*I(this._g,255))+"%",b:l(100*I(this._b,255))+"%",a:this._a}},toPercentageRgbString:function(){return 1==this._a?"rgb("+l(100*I(this._r,255))+"%, "+l(100*I(this._g,255))+"%, "+l(100*I(this._b,255))+"%)":"rgba("+l(100*I(this._r,255))+"%, "+l(100*I(this._g,255))+"%, "+l(100*I(this._b,255))+"%, "+this._roundA+")"},toName:function(){return 0===this._a?"transparent":!(this._a<1)&&(L[g(this._r,this._g,this._b,!0)]||!1)},toFilter:function(t){var e="#"+v(this._r,this._g,this._b,this._a),n=e,r=this._gradientType?"GradientType = 1, ":"";if(t){var i=h(t);n="#"+v(i._r,i._g,i._b,i._a)}return"progid:DXImageTransform.Microsoft.gradient("+r+"startColorstr="+e+",endColorstr="+n+")"},toString:function(t){var e=!!t;t=t||this._format;var n=!1,r=this._a<1&&this._a>=0;return e||!r||"hex"!==t&&"hex6"!==t&&"hex3"!==t&&"hex4"!==t&&"hex8"!==t&&"name"!==t?("rgb"===t&&(n=this.toRgbString()),"prgb"===t&&(n=this.toPercentageRgbString()),"hex"!==t&&"hex6"!==t||(n=this.toHexString()),"hex3"===t&&(n=this.toHexString(!0)),"hex4"===t&&(n=this.toHex8String(!0)),"hex8"===t&&(n=this.toHex8String()),"name"===t&&(n=this.toName()),"hsl"===t&&(n=this.toHslString()),"hsv"===t&&(n=this.toHsvString()),n||this.toHexString()):"name"===t&&0===this._a?this.toName():this.toRgbString()},clone:function(){return h(this.toString())},_applyModification:function(t,e){var n=t.apply(null,[this].concat([].slice.call(e)));return this._r=n._r,this._g=n._g,this._b=n._b,this.setAlpha(n._a),this},lighten:function(){return this._applyModification(x,arguments)},brighten:function(){return this._applyModification(w,arguments)},darken:function(){return this._applyModification(_,arguments)},desaturate:function(){return this._applyModification(m,arguments)},saturate:function(){return this._applyModification(y,arguments)},greyscale:function(){return this._applyModification(b,arguments)},spin:function(){return this._applyModification(k,arguments)},_applyCombination:function(t,e){return t.apply(null,[this].concat([].slice.call(e)))},analogous:function(){return this._applyCombination(E,arguments)},complement:function(){return this._applyCombination(T,arguments)},monochromatic:function(){return this._applyCombination(C,arguments)},splitcomplement:function(){return this._applyCombination(S,arguments)},triad:function(){return this._applyCombination(M,arguments)},tetrad:function(){return this._applyCombination(A,arguments)}},h.fromRatio=function(t,e){if("object"==typeof t){var n={};for(var r in t)t.hasOwnProperty(r)&&(n[r]="a"===r?t[r]:N(t[r]));t=n}return h(t,e)},h.equals=function(t,e){return!(!t||!e)&&h(t).toRgbString()==h(e).toRgbString()},h.random=function(){return h.fromRatio({r:f(),g:f(),b:f()})},h.mix=function(t,e,n){n=0===n?0:n||50;var r=h(t).toRgb(),i=h(e).toRgb(),a=n/100;return h({r:(i.r-r.r)*a+r.r,g:(i.g-r.g)*a+r.g,b:(i.b-r.b)*a+r.b,a:(i.a-r.a)*a+r.a})},h.readability=function(t,e){var n=h(t),r=h(e);return(i.max(n.getLuminance(),r.getLuminance())+.05)/(i.min(n.getLuminance(),r.getLuminance())+.05)},h.isReadable=function(t,e,n){var r,i,a=h.readability(t,e);switch(i=!1,(r=function(t){var e,n;return e=((t=t||{level:"AA",size:"small"}).level||"AA").toUpperCase(),n=(t.size||"small").toLowerCase(),"AA"!==e&&"AAA"!==e&&(e="AA"),"small"!==n&&"large"!==n&&(n="small"),{level:e,size:n}}(n)).level+r.size){case"AAsmall":case"AAAlarge":i=a>=4.5;break;case"AAlarge":i=a>=3;break;case"AAAsmall":i=a>=7}return i},h.mostReadable=function(t,e,n){var r,i,a,o,s=null,l=0;i=(n=n||{}).includeFallbackColors,a=n.level,o=n.size;for(var c=0;cl&&(l=r,s=h(e[c]));return h.isReadable(t,s,{level:a,size:o})||!i?s:(n.includeFallbackColors=!1,h.mostReadable(t,["#fff","#000"],n))};var P=h.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"},L=h.hexNames=function(t){var e={};for(var n in t)t.hasOwnProperty(n)&&(e[t[n]]=n);return e}(P);function O(t){return t=parseFloat(t),(isNaN(t)||t<0||t>1)&&(t=1),t}function I(t,e){(function(t){return"string"==typeof t&&-1!=t.indexOf(".")&&1===parseFloat(t)})(t)&&(t="100%");var n=function(t){return"string"===typeof t&&-1!=t.indexOf("%")}(t);return t=c(e,u(0,parseFloat(t))),n&&(t=parseInt(t*e,10)/100),i.abs(t-e)<1e-6?1:t%e/parseFloat(e)}function D(t){return c(1,u(0,t))}function R(t){return parseInt(t,16)}function z(t){return 1==t.length?"0"+t:""+t}function N(t){return t<=1&&(t=100*t+"%"),t}function j(t){return i.round(255*parseFloat(t)).toString(16)}function F(t){return R(t)/255}var B=function(){var t="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)",e="[\\s|\\(]+("+t+")[,|\\s]+("+t+")[,|\\s]+("+t+")\\s*\\)?",n="[\\s|\\(]+("+t+")[,|\\s]+("+t+")[,|\\s]+("+t+")[,|\\s]+("+t+")\\s*\\)?";return{CSS_UNIT:new RegExp(t),rgb:new RegExp("rgb"+e),rgba:new RegExp("rgba"+n),hsl:new RegExp("hsl"+e),hsla:new RegExp("hsla"+n),hsv:new RegExp("hsv"+e),hsva:new RegExp("hsva"+n),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 U(t){return!!B.CSS_UNIT.exec(t)}t.exports?t.exports=h:void 0===(r=function(){return h}.call(e,n,e,t))||(t.exports=r)}(Math)},57060:function(t){"use strict";t.exports=n,t.exports.float32=t.exports.float=n,t.exports.fract32=t.exports.fract=function(t,e){if(t.length){if(t instanceof Float32Array)return new Float32Array(t.length);e instanceof Float32Array||(e=n(t));for(var r=0,i=e.length;r":(e.length>100&&(e=e.slice(0,99)+"\u2026"),e=e.replace(i,(function(t){switch(t){case"\n":return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}})))}},47403:function(t,e,n){"use strict";var r=n(24582),i={object:!0,function:!0,undefined:!0};t.exports=function(t){return!!r(t)&&hasOwnProperty.call(i,typeof t)}},82527:function(t,e,n){"use strict";var r=n(69190),i=n(84985);t.exports=function(t){return i(t)?t:r(t,"%v is not a plain function",arguments[1])}},84985:function(t,e,n){"use strict";var r=n(73116),i=/^\s*class[\s{/}]/,a=Function.prototype.toString;t.exports=function(t){return!!r(t)&&!i.test(a.call(t))}},24511:function(t,e,n){"use strict";var r=n(47403);t.exports=function(t){if(!r(t))return!1;try{return!!t.constructor&&t.constructor.prototype===t}catch(e){return!1}}},9234:function(t,e,n){"use strict";var r=n(24582),i=n(47403),a=Object.prototype.toString;t.exports=function(t){if(!r(t))return null;if(i(t)){var e=t.toString;if("function"!==typeof e)return null;if(e===a)return null}try{return""+t}catch(n){return null}}},10424:function(t,e,n){"use strict";var r=n(69190),i=n(24582);t.exports=function(t){return i(t)?t:r(t,"Cannot use %v",arguments[1])}},24582:function(t){"use strict";t.exports=function(t){return void 0!==t&&null!==t}},58404:function(t,e,n){"use strict";var r=n(13547),i=n(12129),a=n(12856).Buffer;n.g.__TYPEDARRAY_POOL||(n.g.__TYPEDARRAY_POOL={UINT8:i([32,0]),UINT16:i([32,0]),UINT32:i([32,0]),BIGUINT64:i([32,0]),INT8:i([32,0]),INT16:i([32,0]),INT32:i([32,0]),BIGINT64:i([32,0]),FLOAT:i([32,0]),DOUBLE:i([32,0]),DATA:i([32,0]),UINT8C:i([32,0]),BUFFER:i([32,0])});var o="undefined"!==typeof Uint8ClampedArray,s="undefined"!==typeof BigUint64Array,l="undefined"!==typeof BigInt64Array,c=n.g.__TYPEDARRAY_POOL;c.UINT8C||(c.UINT8C=i([32,0])),c.BIGUINT64||(c.BIGUINT64=i([32,0])),c.BIGINT64||(c.BIGINT64=i([32,0])),c.BUFFER||(c.BUFFER=i([32,0]));var u=c.DATA,f=c.BUFFER;function h(t){if(t){var e=t.length||t.byteLength,n=r.log2(e);u[n].push(t)}}function d(t){t=r.nextPow2(t);var e=r.log2(t),n=u[e];return n.length>0?n.pop():new ArrayBuffer(t)}function p(t){return new Uint8Array(d(t),0,t)}function g(t){return new Uint16Array(d(2*t),0,t)}function v(t){return new Uint32Array(d(4*t),0,t)}function m(t){return new Int8Array(d(t),0,t)}function y(t){return new Int16Array(d(2*t),0,t)}function b(t){return new Int32Array(d(4*t),0,t)}function x(t){return new Float32Array(d(4*t),0,t)}function w(t){return new Float64Array(d(8*t),0,t)}function _(t){return o?new Uint8ClampedArray(d(t),0,t):p(t)}function k(t){return s?new BigUint64Array(d(8*t),0,t):null}function T(t){return l?new BigInt64Array(d(8*t),0,t):null}function M(t){return new DataView(d(t),0,t)}function A(t){t=r.nextPow2(t);var e=r.log2(t),n=f[e];return n.length>0?n.pop():new a(t)}e.free=function(t){if(a.isBuffer(t))f[r.log2(t.length)].push(t);else{if("[object ArrayBuffer]"!==Object.prototype.toString.call(t)&&(t=t.buffer),!t)return;var e=t.length||t.byteLength,n=0|r.log2(e);u[n].push(t)}},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(t){h(t.buffer)},e.freeArrayBuffer=h,e.freeBuffer=function(t){f[r.log2(t.length)].push(t)},e.malloc=function(t,e){if(void 0===e||"arraybuffer"===e)return d(t);switch(e){case"uint8":return p(t);case"uint16":return g(t);case"uint32":return v(t);case"int8":return m(t);case"int16":return y(t);case"int32":return b(t);case"float":case"float32":return x(t);case"double":case"float64":return w(t);case"uint8_clamped":return _(t);case"bigint64":return T(t);case"biguint64":return k(t);case"buffer":return A(t);case"data":case"dataview":return M(t);default:return null}return null},e.mallocArrayBuffer=d,e.mallocUint8=p,e.mallocUint16=g,e.mallocUint32=v,e.mallocInt8=m,e.mallocInt16=y,e.mallocInt32=b,e.mallocFloat32=e.mallocFloat=x,e.mallocFloat64=e.mallocDouble=w,e.mallocUint8Clamped=_,e.mallocBigUint64=k,e.mallocBigInt64=T,e.mallocDataView=M,e.mallocBuffer=A,e.clearCache=function(){for(var t=0;t<32;++t)c.UINT8[t].length=0,c.UINT16[t].length=0,c.UINT32[t].length=0,c.INT8[t].length=0,c.INT16[t].length=0,c.INT32[t].length=0,c.FLOAT[t].length=0,c.DOUBLE[t].length=0,c.BIGUINT64[t].length=0,c.BIGINT64[t].length=0,c.UINT8C[t].length=0,u[t].length=0,f[t].length=0}},90448:function(t){var e=/[\'\"]/;t.exports=function(t){return t?(e.test(t.charAt(0))&&(t=t.substr(1)),e.test(t.charAt(t.length-1))&&(t=t.substr(0,t.length-1)),t):""}},93447:function(t){"use strict";t.exports=function(t,e,n){Array.isArray(n)||(n=[].slice.call(arguments,2));for(var r=0,i=n.length;r=i)return t;switch(t){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return t}})),s=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),v(n)?r.showHidden=n:n&&e._extend(r,n),x(r.showHidden)&&(r.showHidden=!1),x(r.depth)&&(r.depth=2),x(r.colors)&&(r.colors=!1),x(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=u),h(r,t,r.depth)}function u(t,e){var n=c.styles[e];return n?"\x1b["+c.colors[n][0]+"m"+t+"\x1b["+c.colors[n][1]+"m":t}function f(t,e){return t}function h(t,n,r){if(t.customInspect&&n&&M(n.inspect)&&n.inspect!==e.inspect&&(!n.constructor||n.constructor.prototype!==n)){var i=n.inspect(r,t);return b(i)||(i=h(t,i,r)),i}var a=function(t,e){if(x(e))return t.stylize("undefined","undefined");if(b(e)){var n="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(n,"string")}return y(e)?t.stylize(""+e,"number"):v(e)?t.stylize(""+e,"boolean"):m(e)?t.stylize("null","null"):void 0}(t,n);if(a)return a;var o=Object.keys(n),s=function(t){var e={};return t.forEach((function(t,n){e[t]=!0})),e}(o);if(t.showHidden&&(o=Object.getOwnPropertyNames(n)),T(n)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return d(n);if(0===o.length){if(M(n)){var l=n.name?": "+n.name:"";return t.stylize("[Function"+l+"]","special")}if(w(n))return t.stylize(RegExp.prototype.toString.call(n),"regexp");if(k(n))return t.stylize(Date.prototype.toString.call(n),"date");if(T(n))return d(n)}var c,u="",f=!1,_=["{","}"];return g(n)&&(f=!0,_=["[","]"]),M(n)&&(u=" [Function"+(n.name?": "+n.name:"")+"]"),w(n)&&(u=" "+RegExp.prototype.toString.call(n)),k(n)&&(u=" "+Date.prototype.toUTCString.call(n)),T(n)&&(u=" "+d(n)),0!==o.length||f&&0!=n.length?r<0?w(n)?t.stylize(RegExp.prototype.toString.call(n),"regexp"):t.stylize("[Object]","special"):(t.seen.push(n),c=f?function(t,e,n,r,i){for(var a=[],o=0,s=e.length;o60?n[0]+(""===e?"":e+"\n ")+" "+t.join(",\n ")+" "+n[1]:n[0]+e+" "+t.join(", ")+" "+n[1]}(c,u,_)):_[0]+u+_[1]}function d(t){return"["+Error.prototype.toString.call(t)+"]"}function p(t,e,n,r,i,a){var o,s,l;if((l=Object.getOwnPropertyDescriptor(e,i)||{value:e[i]}).get?s=l.set?t.stylize("[Getter/Setter]","special"):t.stylize("[Getter]","special"):l.set&&(s=t.stylize("[Setter]","special")),C(r,i)||(o="["+i+"]"),s||(t.seen.indexOf(l.value)<0?(s=m(n)?h(t,l.value,null):h(t,l.value,n-1)).indexOf("\n")>-1&&(s=a?s.split("\n").map((function(t){return" "+t})).join("\n").slice(2):"\n"+s.split("\n").map((function(t){return" "+t})).join("\n")):s=t.stylize("[Circular]","special")),x(o)){if(a&&i.match(/^\d+$/))return s;(o=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=t.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=t.stylize(o,"string"))}return o+": "+s}function g(t){return Array.isArray(t)}function v(t){return"boolean"===typeof t}function m(t){return null===t}function y(t){return"number"===typeof t}function b(t){return"string"===typeof t}function x(t){return void 0===t}function w(t){return _(t)&&"[object RegExp]"===A(t)}function _(t){return"object"===typeof t&&null!==t}function k(t){return _(t)&&"[object Date]"===A(t)}function T(t){return _(t)&&("[object Error]"===A(t)||t instanceof Error)}function M(t){return"function"===typeof t}function A(t){return Object.prototype.toString.call(t)}function S(t){return t<10?"0"+t.toString(10):t.toString(10)}e.debuglog=function(t){if(t=t.toUpperCase(),!o[t])if(s.test(t)){var n=r.pid;o[t]=function(){var r=e.format.apply(e,arguments);console.error("%s %d: %s",t,n,r)}}else o[t]=function(){};return o[t]},e.inspect=c,c.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]},c.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},e.types=n(4936),e.isArray=g,e.isBoolean=v,e.isNull=m,e.isNullOrUndefined=function(t){return null==t},e.isNumber=y,e.isString=b,e.isSymbol=function(t){return"symbol"===typeof t},e.isUndefined=x,e.isRegExp=w,e.types.isRegExp=w,e.isObject=_,e.isDate=k,e.types.isDate=k,e.isError=T,e.types.isNativeError=T,e.isFunction=M,e.isPrimitive=function(t){return null===t||"boolean"===typeof t||"number"===typeof t||"string"===typeof t||"symbol"===typeof t||"undefined"===typeof t},e.isBuffer=n(45920);var E=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function C(t,e){return Object.prototype.hasOwnProperty.call(t,e)}e.log=function(){console.log("%s - %s",function(){var t=new Date,e=[S(t.getHours()),S(t.getMinutes()),S(t.getSeconds())].join(":");return[t.getDate(),E[t.getMonth()],e].join(" ")}(),e.format.apply(e,arguments))},e.inherits=n(42018),e._extend=function(t,e){if(!e||!_(e))return t;for(var n=Object.keys(e),r=n.length;r--;)t[n[r]]=e[n[r]];return t};var P="undefined"!==typeof Symbol?Symbol("util.promisify.custom"):void 0;function L(t,e){if(!t){var n=new Error("Promise was rejected with a falsy value");n.reason=t,t=n}return e(t)}e.promisify=function(t){if("function"!==typeof t)throw new TypeError('The "original" argument must be of type Function');if(P&&t[P]){var e;if("function"!==typeof(e=t[P]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(e,P,{value:e,enumerable:!1,writable:!1,configurable:!0}),e}function e(){for(var e,n,r=new Promise((function(t,r){e=t,n=r})),i=[],a=0;a2111)throw e.replace(/\{0\}/,this.local.name);return t},toMonthIndex:function(t,e,n){var i=this.intercalaryMonth(t);if(n&&e!==i||e<1||e>12)throw r.local.invalidMonth.replace(/\{0\}/,this.local.name);return i?!n&&e<=i?e-1:e:e-1},toChineseMonth:function(t,e){t.year&&(e=(t=t.year()).month());var n=this.intercalaryMonth(t);if(e<0||e>(n?12:11))throw r.local.invalidMonth.replace(/\{0\}/,this.local.name);return n?e>13;return e},isIntercalaryMonth:function(t,e){t.year&&(e=(t=t.year()).month());var n=this.intercalaryMonth(t);return!!n&&n===e},leapYear:function(t){return 0!==this.intercalaryMonth(t)},weekOfYear:function(t,e,n){var i,o=this._validateYear(t,r.local.invalidyear),s=h[o-h[0]],l=s>>9&4095,c=s>>5&15,u=31&s;(i=a.newDate(l,c,u)).add(4-(i.dayOfWeek()||7),"d");var f=this.toJD(t,e,n)-i.toJD();return 1+Math.floor(f/7)},monthsInYear:function(t){return this.leapYear(t)?13:12},daysInMonth:function(t,e){t.year&&(e=t.month(),t=t.year()),t=this._validateYear(t);var n=f[t-f[0]];if(e>(n>>13?12:11))throw r.local.invalidMonth.replace(/\{0\}/,this.local.name);var i=n&1<<12-e?30:29;return i},weekDay:function(t,e,n){return(this.dayOfWeek(t,e,n)||7)<6},toJD:function(t,e,n){var i=this._validate(t,s,n,r.local.invalidDate);t=this._validateYear(i.year()),e=i.month(),n=i.day();var o=this.isIntercalaryMonth(t,e),s=this.toChineseMonth(t,e),l=function(t,e,n,r,i){var a,o,s;if("object"===typeof t)o=t,a=e||{};else{var l;if(!("number"===typeof t&&t>=1888&&t<=2111))throw new Error("Lunar year outside range 1888-2111");if(!("number"===typeof e&&e>=1&&e<=12))throw new Error("Lunar month outside range 1 - 12");if(!("number"===typeof n&&n>=1&&n<=30))throw new Error("Lunar day outside range 1 - 30");"object"===typeof r?(l=!1,a=r):(l=!!r,a=i||{}),o={year:t,month:e,day:n,isIntercalary:l}}s=o.day-1;var c,u=f[o.year-f[0]],d=u>>13;c=d&&(o.month>d||o.isIntercalary)?o.month:o.month-1;for(var p=0;p>9&4095,(g>>5&15)-1,(31&g)+s);return a.year=v.getFullYear(),a.month=1+v.getMonth(),a.day=v.getDate(),a}(t,s,n,o);return a.toJD(l.year,l.month,l.day)},fromJD:function(t){var e=a.fromJD(t),n=function(t,e,n,r){var i,a;if("object"===typeof t)i=t,a=e||{};else{if(!("number"===typeof t&&t>=1888&&t<=2111))throw new Error("Solar year outside range 1888-2111");if(!("number"===typeof e&&e>=1&&e<=12))throw new Error("Solar month outside range 1 - 12");if(!("number"===typeof n&&n>=1&&n<=31))throw new Error("Solar day outside range 1 - 31");i={year:t,month:e,day:n},a=r||{}}var o=h[i.year-h[0]],s=i.year<<9|i.month<<5|i.day;a.year=s>=o?i.year:i.year-1,o=h[a.year-h[0]];var l,c=new Date(o>>9&4095,(o>>5&15)-1,31&o),u=new Date(i.year,i.month-1,i.day);l=Math.round((u-c)/864e5);var d,p=f[a.year-f[0]];for(d=0;d<13;d++){var g=p&1<<12-d?30:29;if(l>13;return!v||d=2&&r<=6},extraInfo:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return{century:o[Math.floor((i.year()-1)/100)+1]||""}},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return t=i.year()+(i.year()<0?1:0),e=i.month(),(n=i.day())+(e>1?16:0)+(e>2?32*(e-2):0)+400*(t-1)+this.jdEpoch-1},fromJD:function(t){t=Math.floor(t+.5)-Math.floor(this.jdEpoch)-1;var e=Math.floor(t/400)+1;t-=400*(e-1),t+=t>15?16:0;var n=Math.floor(t/32)+1,r=t-32*(n-1)+1;return this.newDate(e<=0?e-1:e,n,r)}});var o={20:"Fruitbat",21:"Anchovy"};r.calendars.discworld=a},37715:function(t,e,n){var r=n(63489),i=n(56131);function a(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}a.prototype=new r.baseCalendar,i(a.prototype,{name:"Ethiopian",jdEpoch:1724220.5,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(t){var e=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear);return(t=e.year()+(e.year()<0?1:0))%4===3||t%4===-1},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear),13},weekOfYear:function(t,e,n){var r=this.newDate(t,e,n);return r.add(-r.dayOfWeek(),"d"),Math.floor((r.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var n=this._validate(t,e,this.minDay,r.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(13===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,n){return(this.dayOfWeek(t,e,n)||7)<6},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return(t=i.year())<0&&t++,i.day()+30*(i.month()-1)+365*(t-1)+Math.floor(t/4)+this.jdEpoch-1},fromJD:function(t){var e=Math.floor(t)+.5-this.jdEpoch,n=Math.floor((e-Math.floor((e+366)/1461))/365)+1;n<=0&&n--,e=Math.floor(t)+.5-this.newDate(n,1,1).toJD();var r=Math.floor(e/30)+1,i=e-30*(r-1)+1;return this.newDate(n,r,i)}}),r.calendars.ethiopian=a},99384:function(t,e,n){var r=n(63489),i=n(56131);function a(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}function o(t,e){return t-e*Math.floor(t/e)}a.prototype=new r.baseCalendar,i(a.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(t){var e=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear);return this._leapYear(e.year())},_leapYear:function(t){return o(7*(t=t<0?t+1:t)+1,19)<7},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,r.local.invalidYear),this._leapYear(t.year?t.year():t)?13:12},weekOfYear:function(t,e,n){var r=this.newDate(t,e,n);return r.add(-r.dayOfWeek(),"d"),Math.floor((r.dayOfYear()-1)/7)+1},daysInYear:function(t){return t=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear).year(),this.toJD(-1===t?1:t+1,7,1)-this.toJD(t,7,1)},daysInMonth:function(t,e){return t.year&&(e=t.month(),t=t.year()),this._validate(t,e,this.minDay,r.local.invalidMonth),12===e&&this.leapYear(t)||8===e&&5===o(this.daysInYear(t),10)?30:9===e&&3===o(this.daysInYear(t),10)?29:this.daysPerMonth[e-1]},weekDay:function(t,e,n){return 6!==this.dayOfWeek(t,e,n)},extraInfo:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return{yearType:(this.leapYear(i)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(i)%10-3]}},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);t=i.year(),e=i.month(),n=i.day();var a=t<=0?t+1:t,o=this.jdEpoch+this._delay1(a)+this._delay2(a)+n+1;if(e<7){for(var s=7;s<=this.monthsInYear(t);s++)o+=this.daysInMonth(t,s);for(s=1;s=this.toJD(-1===e?1:e+1,7,1);)e++;for(var n=tthis.toJD(e,n,this.daysInMonth(e,n));)n++;var r=t-this.toJD(e,n,1)+1;return this.newDate(e,n,r)}}),r.calendars.hebrew=a},43805:function(t,e,n){var r=n(63489),i=n(56131);function a(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}a.prototype=new r.baseCalendar,i(a.prototype,{name:"Islamic",jdEpoch:1948439.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(t){return(11*this._validate(t,this.minMonth,this.minDay,r.local.invalidYear).year()+14)%30<11},weekOfYear:function(t,e,n){var r=this.newDate(t,e,n);return r.add(-r.dayOfWeek(),"d"),Math.floor((r.dayOfYear()-1)/7)+1},daysInYear:function(t){return this.leapYear(t)?355:354},daysInMonth:function(t,e){var n=this._validate(t,e,this.minDay,r.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(12===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,n){return 5!==this.dayOfWeek(t,e,n)},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return t=i.year(),e=i.month(),t=t<=0?t+1:t,(n=i.day())+Math.ceil(29.5*(e-1))+354*(t-1)+Math.floor((3+11*t)/30)+this.jdEpoch-1},fromJD:function(t){t=Math.floor(t)+.5;var e=Math.floor((30*(t-this.jdEpoch)+10646)/10631);e=e<=0?e-1:e;var n=Math.min(12,Math.ceil((t-29-this.toJD(e,1,1))/29.5)+1),r=t-this.toJD(e,n,1)+1;return this.newDate(e,n,r)}}),r.calendars.islamic=a},88874:function(t,e,n){var r=n(63489),i=n(56131);function a(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}a.prototype=new r.baseCalendar,i(a.prototype,{name:"Julian",jdEpoch:1721423.5,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(t){var e=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear);return(t=e.year()<0?e.year()+1:e.year())%4===0},weekOfYear:function(t,e,n){var r=this.newDate(t,e,n);return r.add(4-(r.dayOfWeek()||7),"d"),Math.floor((r.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var n=this._validate(t,e,this.minDay,r.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(2===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,n){return(this.dayOfWeek(t,e,n)||7)<6},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return t=i.year(),e=i.month(),n=i.day(),t<0&&t++,e<=2&&(t--,e+=12),Math.floor(365.25*(t+4716))+Math.floor(30.6001*(e+1))+n-1524.5},fromJD:function(t){var e=Math.floor(t+.5)+1524,n=Math.floor((e-122.1)/365.25),r=Math.floor(365.25*n),i=Math.floor((e-r)/30.6001),a=i-Math.floor(i<14?1:13),o=n-Math.floor(a>2?4716:4715),s=e-r-Math.floor(30.6001*i);return o<=0&&o--,this.newDate(o,a,s)}}),r.calendars.julian=a},83290:function(t,e,n){var r=n(63489),i=n(56131);function a(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}function o(t,e){return t-e*Math.floor(t/e)}function s(t,e){return o(t-1,e)+1}a.prototype=new r.baseCalendar,i(a.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(t){return this._validate(t,this.minMonth,this.minDay,r.local.invalidYear),!1},formatYear:function(t){t=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear).year();var e=Math.floor(t/400);return t%=400,t+=t<0?400:0,e+"."+Math.floor(t/20)+"."+t%20},forYear:function(t){if((t=t.split(".")).length<3)throw"Invalid Mayan year";for(var e=0,n=0;n19||n>0&&r<0)throw"Invalid Mayan year";e=20*e+r}return e},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,r.local.invalidYear),18},weekOfYear:function(t,e,n){return this._validate(t,e,n,r.local.invalidDate),0},daysInYear:function(t){return this._validate(t,this.minMonth,this.minDay,r.local.invalidYear),360},daysInMonth:function(t,e){return this._validate(t,e,this.minDay,r.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(t,e,n){return this._validate(t,e,n,r.local.invalidDate).day()},weekDay:function(t,e,n){return this._validate(t,e,n,r.local.invalidDate),!0},extraInfo:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate).toJD(),a=this._toHaab(i),o=this._toTzolkin(i);return{haabMonthName:this.local.haabMonths[a[0]-1],haabMonth:a[0],haabDay:a[1],tzolkinDayName:this.local.tzolkinMonths[o[0]-1],tzolkinDay:o[0],tzolkinTrecena:o[1]}},_toHaab:function(t){var e=o(8+(t-=this.jdEpoch)+340,365);return[Math.floor(e/20)+1,o(e,20)]},_toTzolkin:function(t){return[s(20+(t-=this.jdEpoch),20),s(t+4,13)]},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return i.day()+20*i.month()+360*i.year()+this.jdEpoch},fromJD:function(t){t=Math.floor(t)+.5-this.jdEpoch;var e=Math.floor(t/360);t%=360,t+=t<0?360:0;var n=Math.floor(t/20),r=t%20;return this.newDate(e,n,r)}}),r.calendars.mayan=a},29108:function(t,e,n){var r=n(63489),i=n(56131);function a(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}a.prototype=new r.baseCalendar;var o=r.instance("gregorian");i(a.prototype,{name:"Nanakshahi",jdEpoch:2257673.5,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(t){var e=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear);return o.leapYear(e.year()+(e.year()<1?1:0)+1469)},weekOfYear:function(t,e,n){var r=this.newDate(t,e,n);return r.add(1-(r.dayOfWeek()||7),"d"),Math.floor((r.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var n=this._validate(t,e,this.minDay,r.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(12===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,n){return(this.dayOfWeek(t,e,n)||7)<6},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidMonth);(t=i.year())<0&&t++;for(var a=i.day(),s=1;s=this.toJD(e+1,1,1);)e++;for(var n=t-Math.floor(this.toJD(e,1,1)+.5)+1,r=1;n>this.daysInMonth(e,r);)n-=this.daysInMonth(e,r),r++;return this.newDate(e,r,n)}}),r.calendars.nanakshahi=a},55422:function(t,e,n){var r=n(63489),i=n(56131);function a(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}a.prototype=new r.baseCalendar,i(a.prototype,{name:"Nepali",jdEpoch:1700709.5,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(t){return this.daysInYear(t)!==this.daysPerYear},weekOfYear:function(t,e,n){var r=this.newDate(t,e,n);return r.add(-r.dayOfWeek(),"d"),Math.floor((r.dayOfYear()-1)/7)+1},daysInYear:function(t){if(t=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear).year(),"undefined"===typeof this.NEPALI_CALENDAR_DATA[t])return this.daysPerYear;for(var e=0,n=this.minMonth;n<=12;n++)e+=this.NEPALI_CALENDAR_DATA[t][n];return e},daysInMonth:function(t,e){return t.year&&(e=t.month(),t=t.year()),this._validate(t,e,this.minDay,r.local.invalidMonth),"undefined"===typeof this.NEPALI_CALENDAR_DATA[t]?this.daysPerMonth[e-1]:this.NEPALI_CALENDAR_DATA[t][e]},weekDay:function(t,e,n){return 6!==this.dayOfWeek(t,e,n)},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);t=i.year(),e=i.month(),n=i.day();var a=r.instance(),o=0,s=e,l=t;this._createMissingCalendarData(t);var c=t-(s>9||9===s&&n>=this.NEPALI_CALENDAR_DATA[l][0]?56:57);for(9!==e&&(o=n,s--);9!==s;)s<=0&&(s=12,l--),o+=this.NEPALI_CALENDAR_DATA[l][s],s--;return 9===e?(o+=n-this.NEPALI_CALENDAR_DATA[l][0])<0&&(o+=a.daysInYear(c)):o+=this.NEPALI_CALENDAR_DATA[l][9]-this.NEPALI_CALENDAR_DATA[l][0],a.newDate(c,1,1).add(o,"d").toJD()},fromJD:function(t){var e=r.instance().fromJD(t),n=e.year(),i=e.dayOfYear(),a=n+56;this._createMissingCalendarData(a);for(var o=9,s=this.NEPALI_CALENDAR_DATA[a][0],l=this.NEPALI_CALENDAR_DATA[a][o]-s+1;i>l;)++o>12&&(o=1,a++),l+=this.NEPALI_CALENDAR_DATA[a][o];var c=this.NEPALI_CALENDAR_DATA[a][o]-(l-i);return this.newDate(a,o,c)},_createMissingCalendarData:function(t){var e=this.daysPerMonth.slice(0);e.unshift(17);for(var n=t-1;n0?474:473))%2820+474+38)%2816<682},weekOfYear:function(t,e,n){var r=this.newDate(t,e,n);return r.add(-(r.dayOfWeek()+1)%7,"d"),Math.floor((r.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var n=this._validate(t,e,this.minDay,r.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(12===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,n){return 5!==this.dayOfWeek(t,e,n)},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);t=i.year(),e=i.month(),n=i.day();var a=t-(t>=0?474:473),s=474+o(a,2820);return n+(e<=7?31*(e-1):30*(e-1)+6)+Math.floor((682*s-110)/2816)+365*(s-1)+1029983*Math.floor(a/2820)+this.jdEpoch-1},fromJD:function(t){var e=(t=Math.floor(t)+.5)-this.toJD(475,1,1),n=Math.floor(e/1029983),r=o(e,1029983),i=2820;if(1029982!==r){var a=Math.floor(r/366),s=o(r,366);i=Math.floor((2134*a+2816*s+2815)/1028522)+a+1}var l=i+2820*n+474;l=l<=0?l-1:l;var c=t-this.toJD(l,1,1)+1,u=c<=186?Math.ceil(c/31):Math.ceil((c-6)/30),f=t-this.toJD(l,u,1)+1;return this.newDate(l,u,f)}}),r.calendars.persian=a,r.calendars.jalali=a},31320:function(t,e,n){var r=n(63489),i=n(56131),a=r.instance();function o(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}o.prototype=new r.baseCalendar,i(o.prototype,{name:"Taiwan",jdEpoch:2419402.5,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(t){var e=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear);return t=this._t2gYear(e.year()),a.leapYear(t)},weekOfYear:function(t,e,n){var i=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear);return t=this._t2gYear(i.year()),a.weekOfYear(t,i.month(),i.day())},daysInMonth:function(t,e){var n=this._validate(t,e,this.minDay,r.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(2===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,n){return(this.dayOfWeek(t,e,n)||7)<6},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return t=this._t2gYear(i.year()),a.toJD(t,i.month(),i.day())},fromJD:function(t){var e=a.fromJD(t),n=this._g2tYear(e.year());return this.newDate(n,e.month(),e.day())},_t2gYear:function(t){return t+this.yearsOffset+(t>=-this.yearsOffset&&t<=-1?1:0)},_g2tYear:function(t){return t-this.yearsOffset-(t>=1&&t<=this.yearsOffset?1:0)}}),r.calendars.taiwan=o},51367:function(t,e,n){var r=n(63489),i=n(56131),a=r.instance();function o(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}o.prototype=new r.baseCalendar,i(o.prototype,{name:"Thai",jdEpoch:1523098.5,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(t){var e=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear);return t=this._t2gYear(e.year()),a.leapYear(t)},weekOfYear:function(t,e,n){var i=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear);return t=this._t2gYear(i.year()),a.weekOfYear(t,i.month(),i.day())},daysInMonth:function(t,e){var n=this._validate(t,e,this.minDay,r.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(2===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,n){return(this.dayOfWeek(t,e,n)||7)<6},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return t=this._t2gYear(i.year()),a.toJD(t,i.month(),i.day())},fromJD:function(t){var e=a.fromJD(t),n=this._g2tYear(e.year());return this.newDate(n,e.month(),e.day())},_t2gYear:function(t){return t-this.yearsOffset-(t>=1&&t<=this.yearsOffset?1:0)},_g2tYear:function(t){return t+this.yearsOffset+(t>=-this.yearsOffset&&t<=-1?1:0)}}),r.calendars.thai=o},21457:function(t,e,n){var r=n(63489),i=n(56131);function a(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}a.prototype=new r.baseCalendar,i(a.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear);return 355===this.daysInYear(e.year())},weekOfYear:function(t,e,n){var r=this.newDate(t,e,n);return r.add(-r.dayOfWeek(),"d"),Math.floor((r.dayOfYear()-1)/7)+1},daysInYear:function(t){for(var e=0,n=1;n<=12;n++)e+=this.daysInMonth(t,n);return e},daysInMonth:function(t,e){for(var n=this._validate(t,e,this.minDay,r.local.invalidMonth).toJD()-24e5+.5,i=0,a=0;an)return o[i]-o[i-1];i++}return 30},weekDay:function(t,e,n){return 5!==this.dayOfWeek(t,e,n)},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate),a=12*(i.year()-1)+i.month()-15292;return i.day()+o[a-1]-1+24e5-.5},fromJD:function(t){for(var e=t-24e5+.5,n=0,r=0;re);r++)n++;var i=n+15292,a=Math.floor((i-1)/12),s=a+1,l=i-12*a,c=e-o[n-1]+1;return this.newDate(s,l,c)},isValid:function(t,e,n){var i=r.baseCalendar.prototype.isValid.apply(this,arguments);return i&&(i=(t=null!=t.year?t.year:t)>=1276&&t<=1500),i},_validate:function(t,e,n,i){var a=r.baseCalendar.prototype._validate.apply(this,arguments);if(a.year<1276||a.year>1500)throw i.replace(/\{0\}/,this.local.name);return a}}),r.calendars.ummalqura=a;var o=[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(t,e,n){var r=n(56131);function i(){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 a(t,e,n,r){if(this._calendar=t,this._year=e,this._month=n,this._day=r,0===this._calendar._validateLevel&&!this._calendar.isValid(this._year,this._month,this._day))throw(c.local.invalidDate||c.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function o(t,e){return"000000".substring(0,e-(t=""+t).length)+t}function s(){this.shortYearCutoff="+10"}function l(t){this.local=this.regionalOptions[t]||this.regionalOptions[""]}r(i.prototype,{instance:function(t,e){t=(t||"gregorian").toLowerCase(),e=e||"";var n=this._localCals[t+"-"+e];if(!n&&this.calendars[t]&&(n=new this.calendars[t](e),this._localCals[t+"-"+e]=n),!n)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,t);return n},newDate:function(t,e,n,r,i){return(r=(null!=t&&t.year?t.calendar():"string"===typeof r?this.instance(r,i):r)||this.instance()).newDate(t,e,n)},substituteDigits:function(t){return function(e){return(e+"").replace(/[0-9]/g,(function(e){return t[e]}))}},substituteChineseDigits:function(t,e){return function(n){for(var r="",i=0;n>0;){var a=n%10;r=(0===a?"":t[a]+e[i])+r,i++,n=Math.floor(n/10)}return 0===r.indexOf(t[1]+e[1])&&(r=r.substr(1)),r||t[0]}}}),r(a.prototype,{newDate:function(t,e,n){return this._calendar.newDate(null==t?this:t,e,n)},year:function(t){return 0===arguments.length?this._year:this.set(t,"y")},month:function(t){return 0===arguments.length?this._month:this.set(t,"m")},day:function(t){return 0===arguments.length?this._day:this.set(t,"d")},date:function(t,e,n){if(!this._calendar.isValid(t,e,n))throw(c.local.invalidDate||c.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=t,this._month=e,this._day=n,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,e){return this._calendar.add(this,t,e)},set:function(t,e){return this._calendar.set(this,t,e)},compareTo:function(t){if(this._calendar.name!==t._calendar.name)throw(c.local.differentCalendars||c.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,t._calendar.local.name);var e=this._year!==t._year?this._year-t._year:this._month!==t._month?this.monthOfYear()-t.monthOfYear():this._day-t._day;return 0===e?0:e<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?"-":"")+o(Math.abs(this.year()),4)+"-"+o(this.month(),2)+"-"+o(this.day(),2)}}),r(s.prototype,{_validateLevel:0,newDate:function(t,e,n){return null==t?this.today():(t.year&&(this._validate(t,e,n,c.local.invalidDate||c.regionalOptions[""].invalidDate),n=t.day(),e=t.month(),t=t.year()),new a(this,t,e,n))},today:function(){return this.fromJSDate(new Date)},epoch:function(t){return this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[""].invalidYear).year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[""].invalidYear);return(e.year()<0?"-":"")+o(Math.abs(e.year()),4)},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[""].invalidYear),12},monthOfYear:function(t,e){var n=this._validate(t,e,this.minDay,c.local.invalidMonth||c.regionalOptions[""].invalidMonth);return(n.month()+this.monthsInYear(n)-this.firstMonth)%this.monthsInYear(n)+this.minMonth},fromMonthOfYear:function(t,e){var n=(e+this.firstMonth-2*this.minMonth)%this.monthsInYear(t)+this.minMonth;return this._validate(t,n,this.minDay,c.local.invalidMonth||c.regionalOptions[""].invalidMonth),n},daysInYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[""].invalidYear);return this.leapYear(e)?366:365},dayOfYear:function(t,e,n){var r=this._validate(t,e,n,c.local.invalidDate||c.regionalOptions[""].invalidDate);return r.toJD()-this.newDate(r.year(),this.fromMonthOfYear(r.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(t,e,n){var r=this._validate(t,e,n,c.local.invalidDate||c.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(r))+2)%this.daysInWeek()},extraInfo:function(t,e,n){return this._validate(t,e,n,c.local.invalidDate||c.regionalOptions[""].invalidDate),{}},add:function(t,e,n){return this._validate(t,this.minMonth,this.minDay,c.local.invalidDate||c.regionalOptions[""].invalidDate),this._correctAdd(t,this._add(t,e,n),e,n)},_add:function(t,e,n){if(this._validateLevel++,"d"===n||"w"===n){var r=t.toJD()+e*("w"===n?this.daysInWeek():1),i=t.calendar().fromJD(r);return this._validateLevel--,[i.year(),i.month(),i.day()]}try{var a=t.year()+("y"===n?e:0),o=t.monthOfYear()+("m"===n?e:0);i=t.day(),"y"===n?(t.month()!==this.fromMonthOfYear(a,o)&&(o=this.newDate(a,t.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(a)),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o)))):"m"===n&&(function(t){for(;oe-1+t.minMonth;)a++,o-=e,e=t.monthsInYear(a)}(this),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o))));var s=[a,this.fromMonthOfYear(a,o),i];return this._validateLevel--,s}catch(l){throw this._validateLevel--,l}},_correctAdd:function(t,e,n,r){if(!this.hasYearZero&&("y"===r||"m"===r)&&(0===e[0]||t.year()>0!==e[0]>0)){var i={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[r],a=n<0?-1:1;e=this._add(t,n*i[0]+a*i[1],i[2])}return t.date(e[0],e[1],e[2])},set:function(t,e,n){this._validate(t,this.minMonth,this.minDay,c.local.invalidDate||c.regionalOptions[""].invalidDate);var r="y"===n?e:t.year(),i="m"===n?e:t.month(),a="d"===n?e:t.day();return"y"!==n&&"m"!==n||(a=Math.min(a,this.daysInMonth(r,i))),t.date(r,i,a)},isValid:function(t,e,n){this._validateLevel++;var r=this.hasYearZero||0!==t;if(r){var i=this.newDate(t,e,this.minDay);r=e>=this.minMonth&&e-this.minMonth=this.minDay&&n-this.minDay13.5?13:1),c=i-(l>2.5?4716:4715);return c<=0&&c--,this.newDate(c,l,s)},toJSDate:function(t,e,n){var r=this._validate(t,e,n,c.local.invalidDate||c.regionalOptions[""].invalidDate),i=new Date(r.year(),r.month()-1,r.day());return i.setHours(0),i.setMinutes(0),i.setSeconds(0),i.setMilliseconds(0),i.setHours(i.getHours()>12?i.getHours()+2:0),i},fromJSDate:function(t){return this.newDate(t.getFullYear(),t.getMonth()+1,t.getDate())}});var c=t.exports=new i;c.cdate=a,c.baseCalendar=s,c.calendars.gregorian=l},94338:function(t,e,n){var r=n(56131),i=n(63489);r(i.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"}),i.local=i.regionalOptions[""],r(i.cdate.prototype,{formatDate:function(t,e){return"string"!==typeof t&&(e=t,t=""),this._calendar.formatDate(t||"",this,e)}}),r(i.baseCalendar.prototype,{UNIX_EPOCH:i.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:86400,TICKS_EPOCH:i.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(t,e,n){if("string"!==typeof t&&(n=e,e=t,t=""),!e)return"";if(e.calendar()!==this)throw i.local.invalidFormat||i.regionalOptions[""].invalidFormat;t=t||this.local.dateFormat;for(var r,a,o,s,l=(n=n||{}).dayNamesShort||this.local.dayNamesShort,c=n.dayNames||this.local.dayNames,u=n.monthNumbers||this.local.monthNumbers,f=n.monthNamesShort||this.local.monthNamesShort,h=n.monthNames||this.local.monthNames,d=(n.calculateWeek||this.local.calculateWeek,function(e,n){for(var r=1;_+r1}),p=function(t,e,n,r){var i=""+e;if(d(t,r))for(;i.length1},b=function(t,n){var r=y(t,n),a=[2,3,r?4:2,r?4:2,10,11,20]["oyYJ@!".indexOf(t)+1],o=new RegExp("^-?\\d{1,"+a+"}"),s=e.substring(M).match(o);if(!s)throw(i.local.missingNumberAt||i.regionalOptions[""].missingNumberAt).replace(/\{0\}/,M);return M+=s[0].length,parseInt(s[0],10)},x=this,w=function(){if("function"===typeof l){y("m");var t=l.call(x,e.substring(M));return M+=t.length,t}return b("m")},_=function(t,n,r,a){for(var o=y(t,a)?r:n,s=0;s-1){d=1,p=g;for(var E=this.daysInMonth(h,d);p>E;E=this.daysInMonth(h,d))d++,p-=E}return f>-1?this.fromJD(f):this.newDate(h,d,p)},determineDate:function(t,e,n,r,i){n&&"object"!==typeof n&&(i=r,r=n,n=null),"string"!==typeof r&&(i=r,r="");var a=this;return e=e?e.newDate():null,t=null==t?e:"string"===typeof t?function(t){try{return a.parseDate(r,t,i)}catch(l){}for(var e=((t=t.toLowerCase()).match(/^c/)&&n?n.newDate():null)||a.today(),o=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,s=o.exec(t);s;)e.add(parseInt(s[1],10),s[2]||"d"),s=o.exec(t);return e}(t):"number"===typeof t?isNaN(t)||t===1/0||t===-1/0?e:a.today().add(t,"d"):a.newDate(t)}})},69862:function(){},40964:function(){},72077:function(t,e,n){"use strict";var r=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],i="undefined"===typeof globalThis?n.g:globalThis;t.exports=function(){for(var t=[],e=0;e>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===n?k(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===n?k(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=h.exec(t))?new M(e[1],e[2],e[3],1):(e=d.exec(t))?new M(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=p.exec(t))?k(e[1],e[2],e[3],e[4]):(e=g.exec(t))?k(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=v.exec(t))?L(e[1],e[2]/100,e[3]/100,1):(e=m.exec(t))?L(e[1],e[2]/100,e[3]/100,e[4]):y.hasOwnProperty(t)?_(y[t]):"transparent"===t?new M(NaN,NaN,NaN,0):null}function _(t){return new M(t>>16&255,t>>8&255,255&t,1)}function k(t,e,n,r){return r<=0&&(t=e=n=NaN),new M(t,e,n,r)}function T(t,e,n,r){return 1===arguments.length?((i=t)instanceof a||(i=w(i)),i?new M((i=i.rgb()).r,i.g,i.b,i.opacity):new M):new M(t,e,n,null==r?1:r);var i}function M(t,e,n,r){this.r=+t,this.g=+e,this.b=+n,this.opacity=+r}function A(){return"#".concat(P(this.r)).concat(P(this.g)).concat(P(this.b))}function S(){var t=E(this.opacity);return"".concat(1===t?"rgb(":"rgba(").concat(C(this.r),", ").concat(C(this.g),", ").concat(C(this.b)).concat(1===t?")":", ".concat(t,")"))}function E(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function C(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function P(t){return((t=C(t))<16?"0":"")+t.toString(16)}function L(t,e,n,r){return r<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new I(t,e,n,r)}function O(t){if(t instanceof I)return new I(t.h,t.s,t.l,t.opacity);if(t instanceof a||(t=w(t)),!t)return new I;if(t instanceof I)return t;var e=(t=t.rgb()).r/255,n=t.g/255,r=t.b/255,i=Math.min(e,n,r),o=Math.max(e,n,r),s=NaN,l=o-i,c=(o+i)/2;return l?(s=e===o?(n-r)/l+6*(n0&&c<1?0:s,new I(s,l,c,t.opacity)}function I(t,e,n,r){this.h=+t,this.s=+e,this.l=+n,this.opacity=+r}function D(t){return(t=(t||0)%360)<0?t+360:t}function R(t){return Math.max(0,Math.min(1,t||0))}function z(t,e,n){return 255*(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)}function N(t,e,n,r,i){var a=t*t,o=a*t;return((1-3*t+3*a-o)*e+(4-6*a+3*o)*n+(1+3*t+3*a-3*o)*r+o*i)/6}r(a,w,{copy:function(t){return Object.assign(new this.constructor,this,t)},displayable:function(){return this.rgb().displayable()},hex:b,formatHex:b,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return O(this).formatHsl()},formatRgb:x,toString:x}),r(M,T,i(a,{brighter:function(t){return t=null==t?s:Math.pow(s,t),new M(this.r*t,this.g*t,this.b*t,this.opacity)},darker:function(t){return t=null==t?o:Math.pow(o,t),new M(this.r*t,this.g*t,this.b*t,this.opacity)},rgb:function(){return this},clamp:function(){return new M(C(this.r),C(this.g),C(this.b),E(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:A,formatHex:A,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:S,toString:S})),r(I,(function(t,e,n,r){return 1===arguments.length?O(t):new I(t,e,n,null==r?1:r)}),i(a,{brighter:function(t){return t=null==t?s:Math.pow(s,t),new I(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?o:Math.pow(o,t),new I(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*e,i=2*n-r;return new M(z(t>=240?t-240:t+120,i,r),z(t,i,r),z(t<120?t+240:t-120,i,r),this.opacity)},clamp:function(){return new I(D(this.h),R(this.s),R(this.l),E(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 t=E(this.opacity);return"".concat(1===t?"hsl(":"hsla(").concat(D(this.h),", ").concat(100*R(this.s),"%, ").concat(100*R(this.l),"%").concat(1===t?")":", ".concat(t,")"))}}));var j=function(t){return function(){return t}};function F(t,e){return function(n){return t+n*e}}function B(t){return 1===(t=+t)?U:function(e,n){return n-e?function(t,e,n){return t=Math.pow(t,n),e=Math.pow(e,n)-t,n=1/n,function(r){return Math.pow(t+r*e,n)}}(e,n,t):j(isNaN(e)?n:e)}}function U(t,e){var n=e-t;return n?F(t,n):j(isNaN(t)?e:t)}var H=function t(e){var n=B(e);function r(t,e){var r=n((t=T(t)).r,(e=T(e)).r),i=n(t.g,e.g),a=n(t.b,e.b),o=U(t.opacity,e.opacity);return function(e){return t.r=r(e),t.g=i(e),t.b=a(e),t.opacity=o(e),t+""}}return r.gamma=t,r}(1);function V(t){return function(e){var n,r,i=e.length,a=new Array(i),o=new Array(i),s=new Array(i);for(n=0;n=1?(n=1,e-1):Math.floor(n*e),i=t[r],a=t[r+1],o=r>0?t[r-1]:2*i-a,s=ra&&(i=e.slice(a,i),s[o]?s[o]+=i:s[++o]=i),(n=n[0])===(r=r[0])?s[o]?s[o]+=r:s[++o]=r:(s[++o]=null,l.push({i:o,x:W(n,r)})),a=K.lastIndex;return a
contributors',o=['\xa9 Carto',a].join(" "),s=['Map tiles by Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under ODbL'].join(" "),l={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:a,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:o,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:o,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:s,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:s,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 Stamen Design','under CC BY 3.0',"|",'Data by OpenStreetMap contributors','under CC BY SA'].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}]}},c=r(l);t.exports={requiredVersion:i,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:l,styleValuesNonMapbox:c,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@"+i+"."].join("\n"),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("\n"),missingStyleErrorMsg:["No valid mapbox style found, please set `mapbox.style` to one of:",c.join(", "),"or register a Mapbox access token to use a Mapbox-served style."].join("\n"),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("\n"),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(t,e,n){"use strict";var r=n(71828);t.exports=function(t,e){var n=t.split(" "),i=n[0],a=n[1],o=r.isArrayOrTypedArray(e)?r.mean(e):e,s=.5+o/100,l=1.5+o/100,c=["",""],u=[0,0];switch(i){case"top":c[0]="top",u[1]=-l;break;case"bottom":c[0]="bottom",u[1]=l}switch(a){case"left":c[1]="right",u[0]=-s;break;case"right":c[1]="left",u[0]=s}return{anchor:c[0]&&c[1]?c.join("-"):c[0]?c[0]:c[1]?c[1]:"center",offset:u}}},50101:function(t,e,n){"use strict";var r=n(44517),i=n(71828),a=i.strTranslate,o=i.strScale,s=n(27659).AU,l=n(77922),c=n(39898),u=n(91424),f=n(63893),h=n(10481),d="mapbox",p=e.constants=n(77734);function g(t){return"string"===typeof t&&(-1!==p.styleValuesMapbox.indexOf(t)||0===t.indexOf("mapbox://"))}e.name=d,e.attr="subplot",e.idRoot=d,e.idRegex=e.attrRegex=i.counterRegex(d),e.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}},e.layoutAttributes=n(23585),e.supplyLayoutDefaults=n(77882),e.plot=function(t){var e=t._fullLayout,n=t.calcdata,a=e._subplots[d];if(r.version!==p.requiredVersion)throw new Error(p.wrongVersionErrorMsg);var o=function(t,e){var n=t._fullLayout,r=t._context;if(""===r.mapboxAccessToken)return"";for(var a=[],o=[],s=!1,l=!1,c=0;c1&&i.warn(p.multipleTokensErrorMsg),a[0]):(o.length&&i.log(["Listed mapbox access token(s)",o.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}(t,a);r.accessToken=o;for(var l=0;l_/2){var k=y.split("|").join("
");x.text(k).attr("data-unformatted",k).call(f.convertToTspans,t),w=u.bBox(x.node())}x.attr("transform",a(-3,8-w.height)),b.insert("rect",".static-attribution").attr({x:-w.width-6,y:-w.height-3,width:w.width+6,height:w.height+3,fill:"rgba(255, 255, 255, 0.75)"});var T=1;w.width+6>_&&(T=_/(w.width+6));var M=[r.l+r.w*h.x[1],r.t+r.h*(1-h.y[0])];b.attr("transform",a(M[0],M[1])+o(T))}},e.updateFx=function(t){for(var e=t._fullLayout,n=e._subplots[d],r=0;r0){for(var n=0;n0}function u(t){var e={},n={};switch(t.type){case"circle":r.extendFlat(n,{"circle-radius":t.circle.radius,"circle-color":t.color,"circle-opacity":t.opacity});break;case"line":r.extendFlat(n,{"line-width":t.line.width,"line-color":t.color,"line-opacity":t.opacity,"line-dasharray":t.line.dash});break;case"fill":r.extendFlat(n,{"fill-color":t.color,"fill-outline-color":t.fill.outlinecolor,"fill-opacity":t.opacity});break;case"symbol":var i=t.symbol,o=a(i.textposition,i.iconsize);r.extendFlat(e,{"icon-image":i.icon+"-15","icon-size":i.iconsize/10,"text-field":i.text,"text-size":i.textfont.size,"text-anchor":o.anchor,"text-offset":o.offset,"symbol-placement":i.placement}),r.extendFlat(n,{"icon-color":t.color,"text-color":i.textfont.color,"text-opacity":t.opacity});break;case"raster":r.extendFlat(n,{"raster-fade-duration":0,"raster-opacity":t.opacity})}return{layout:e,paint:n}}l.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=c(t)},l.needsNewImage=function(t){return this.subplot.map.getSource(this.idSource)&&"image"===this.sourceType&&"image"===t.sourcetype&&(this.source!==t.source||JSON.stringify(this.coordinates)!==JSON.stringify(t.coordinates))},l.needsNewSource=function(t){return this.sourceType!==t.sourcetype||JSON.stringify(this.source)!==JSON.stringify(t.source)||this.layerType!==t.type},l.needsNewLayer=function(t){return this.layerType!==t.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},l.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]},l.updateImage=function(t){this.subplot.map.getSource(this.idSource).updateImage({url:t.source,coordinates:t.coordinates});var e=this.findFollowingMapboxLayerId(this.lookupBelow());null!==e&&this.subplot.map.moveLayer(this.idLayer,e)},l.updateSource=function(t){var e=this.subplot.map;if(e.getSource(this.idSource)&&e.removeSource(this.idSource),this.sourceType=t.sourcetype,this.source=t.source,c(t)){var n=function(t){var e,n=t.sourcetype,r=t.source,a={type:n};return"geojson"===n?e="data":"vector"===n?e="string"===typeof r?"url":"tiles":"raster"===n?(e="tiles",a.tileSize=256):"image"===n&&(e="url",a.coordinates=t.coordinates),a[e]=r,t.sourceattribution&&(a.attribution=i(t.sourceattribution)),a}(t);e.addSource(this.idSource,n)}},l.findFollowingMapboxLayerId=function(t){if("traces"===t)for(var e=this.subplot.getMapLayers(),n=0;n1)for(n=0;n-1&&v(e.originalEvent,r,[n.xaxis],[n.yaxis],n.id,t),i.indexOf("event")>-1&&c.click(r,e.originalEvent)}}},x.updateFx=function(t){var e=this,n=e.map,r=e.gd;if(!e.isStatic){var a,o=t.dragmode;a=function(t,n){n.isRect?(t.range={})[e.id]=[c([n.xmin,n.ymin]),c([n.xmax,n.ymax])]:(t.lassoPoints={})[e.id]=n.map(c)};var s=e.dragOptions;e.dragOptions=i.extendDeep(s||{},{dragmode:t.dragmode,element:e.div,gd:r,plotinfo:{id:e.id,domain:t[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis,fillRangeItems:a},xaxes:[e.xaxis],yaxes:[e.yaxis],subplot:e.id}),n.off("click",e.onClickInPanHandler),h(o)||f(o)?(n.dragPan.disable(),n.on("zoomstart",e.clearOutline),e.dragOptions.prepFn=function(t,n,r){d(t,n,r,e.dragOptions,o)},l.init(e.dragOptions)):(n.dragPan.enable(),n.off("zoomstart",e.clearOutline),e.div.onmousedown=null,e.div.ontouchstart=null,e.div.removeEventListener("touchstart",e.div._ontouchstart),e.onClickInPanHandler=e.onClickInPanFn(e.dragOptions),n.on("click",e.onClickInPanHandler))}function c(t){var n=e.map.unproject(t);return[n.lng,n.lat]}},x.updateFramework=function(t){var e=t[this.id].domain,n=t._size,r=this.div.style;r.width=n.w*(e.x[1]-e.x[0])+"px",r.height=n.h*(e.y[1]-e.y[0])+"px",r.left=n.l+e.x[0]*n.w+"px",r.top=n.t+(1-e.y[1])*n.h+"px",this.xaxis._offset=n.l+e.x[0]*n.w,this.xaxis._length=n.w*(e.x[1]-e.x[0]),this.yaxis._offset=n.t+(1-e.y[1])*n.h,this.yaxis._length=n.h*(e.y[1]-e.y[0])},x.updateLayers=function(t){var e,n=t[this.id].layers,r=this.layerList;if(n.length!==r.length){for(e=0;e=e.width-20?(a["text-anchor"]="start",a.x=5):(a["text-anchor"]="end",a.x=e._paper.attr("width")-7),n.attr(a);var o=n.select(".js-link-to-tool"),s=n.select(".js-link-spacer"),l=n.select(".js-sourcelinks");t._context.showSources&&t._context.showSources(t),t._context.showLink&&function(t,e){e.text("");var n=e.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(t._context.linkText+" "+String.fromCharCode(187));if(t._context.sendData)n.on("click",(function(){w.sendDataToCloud(t)}));else{var r=window.location.pathname.split("/"),i=window.location.search;n.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+r[2].split(".")[0]+"/"+r[1]+i})}}(t,o),s.text(o.text()&&l.text()?" - ":"")}},w.sendDataToCloud=function(t){var e=(window.PLOTLYENV||{}).BASE_URL||t._context.plotlyServerURL;if(e){t.emit("plotly_beforeexport");var n=r.select(t).append("div").attr("id","hiddenform").style("display","none"),i=n.append("form").attr({action:e+"/external",method:"post",target:"_blank"});return i.append("input").attr({type:"text",name:"data"}).node().value=w.graphJson(t,!1,"keepdata"),i.node().submit(),n.remove(),t.emit("plotly_afterexport"),!1}};var T=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],M=["year","month","dayMonth","dayMonthYear"];function A(t,e){var n=t._context.locale;n||(n="en-US");var r=!1,i={};function a(t){for(var n=!0,a=0;a1&&D.length>1){for(s.getComponentMethod("grid","sizeDefaults")(c,l),o=0;o15&&D.length>15&&0===l.shapes.length&&0===l.images.length,w.linkSubplots(h,l,f,r),w.cleanPlot(h,l,f,r);var F=!(!r._has||!r._has("gl2d")),B=!(!l._has||!l._has("gl2d")),U=!(!r._has||!r._has("cartesian"))||F,H=!(!l._has||!l._has("cartesian"))||B;U&&!H?r._bgLayer.remove():H&&!U&&(l._shouldCreateBgLayer=!0),r._zoomlayer&&!t._dragging&&p({_fullLayout:r}),function(t,e){var n,r=[];e.meta&&(n=e._meta={meta:e.meta,layout:{meta:e.meta}});for(var i=0;i0){var f=1-2*s;r=Math.round(f*r),i=Math.round(f*i)}}var h=w.layoutAttributes.width.min,d=w.layoutAttributes.height.min;r1,g=!e.height&&Math.abs(n.height-i)>1;(g||p)&&(p&&(n.width=r),g&&(n.height=i)),t._initialAutoSize||(t._initialAutoSize={width:r,height:i}),w.sanitizeMargins(n)},w.supplyLayoutModuleDefaults=function(t,e,n,r){var i,a,o,l=s.componentsRegistry,c=e._basePlotModules,f=s.subplotsRegistry.cartesian;for(i in l)(o=l[i]).includeBasePlot&&o.includeBasePlot(t,e);for(var h in c.length||c.push(f),e._has("cartesian")&&(s.getComponentMethod("grid","contentDefaults")(t,e),f.finalizeSubplots(t,e)),e._subplots)e._subplots[h].sort(u.subplotSort);for(a=0;a1&&(n.l/=m,n.r/=m)}if(d){var y=(n.t+n.b)/d;y>1&&(n.t/=y,n.b/=y)}var b=void 0!==n.xl?n.xl:n.x,x=void 0!==n.xr?n.xr:n.x,_=void 0!==n.yt?n.yt:n.y,k=void 0!==n.yb?n.yb:n.y;p[e]={l:{val:b,size:n.l+v},r:{val:x,size:n.r+v},b:{val:k,size:n.b+v},t:{val:_,size:n.t+v}},g[e]=1}else delete p[e],delete g[e];if(!r._replotting)return w.doAutoMargin(t)}},w.doAutoMargin=function(t){var e=t._fullLayout,n=e.width,r=e.height;e._size||(e._size={}),L(e);var i=e._size,a=e.margin,l={t:0,b:0,l:0,r:0},c=u.extendFlat({},i),f=t._fullLayout._reservedMargin;for(var h in f)for(var p in f[h]){var g=f[h][p];l[p]=Math.max(l[p],g)}var v=a.l,m=a.r,y=a.t,b=a.b,x=e._pushmargin,_=e._pushmarginIds,k=e.minreducedwidth,T=e.minreducedheight;if(!1!==e.margin.autoexpand){for(var M in x)_[M]||delete x[M];for(var A in x.base={l:{val:0,size:v},r:{val:1,size:m},t:{val:1,size:y},b:{val:0,size:b}},x){var S=x[A].l||{},E=x[A].b||{},C=S.val,P=S.size,O=E.val,I=E.size,D=n-l.r-l.l,R=r-l.t-l.b;for(var z in x){if(o(P)&&x[z].r){var N=x[z].r.val,j=x[z].r.size;if(N>C){var F=(P*N+(j-D)*C)/(N-C),B=(j*(1-C)+(P-D)*(1-N))/(N-C);F+B>v+m&&(v=F,m=B)}}if(o(I)&&x[z].t){var U=x[z].t.val,H=x[z].t.size;if(U>O){var V=(I*U+(H-R)*O)/(U-O),q=(H*(1-O)+(I-R)*(1-U))/(U-O);V+q>b+y&&(b=V,y=q)}}}}}var G=u.constrain(n-a.l-a.r,2,k),W=u.constrain(r-a.t-a.b,2,T),Y=Math.max(0,n-G),$=Math.max(0,r-W);if(Y){var X=(v+m)/Y;X>1&&(v/=X,m/=X)}if($){var K=(b+y)/$;K>1&&(b/=K,y/=K)}if(i.l=Math.round(v)+l.l,i.r=Math.round(m)+l.r,i.t=Math.round(y)+l.t,i.b=Math.round(b)+l.b,i.p=Math.round(a.pad),i.w=Math.round(n)-i.l-i.r,i.h=Math.round(r)-i.t-i.b,!e._replotting&&(w.didMarginChange(c,i)||function(t){if("_redrawFromAutoMarginCount"in t._fullLayout)return!1;var e=d.list(t,"",!0);for(var n in e)if(e[n].autoshift||e[n].shift)return!0;return!1}(t))){"_redrawFromAutoMarginCount"in e?e._redrawFromAutoMarginCount++:e._redrawFromAutoMarginCount=1;var Z=3*(1+Object.keys(_).length);if(e._redrawFromAutoMarginCount0&&(t._transitioningWithDuration=!0),t._transitionData._interruptCallbacks.push((function(){r=!0})),n.redraw&&t._transitionData._interruptCallbacks.push((function(){return s.call("redraw",t)})),t._transitionData._interruptCallbacks.push((function(){t.emit("plotly_transitioninterrupted",[])}));var a=0,o=0;function l(){return a++,function(){var e;o++,r||o!==a||(e=i,t._transitionData&&(function(t){if(t)for(;t.length;)t.shift()}(t._transitionData._interruptCallbacks),Promise.resolve().then((function(){if(n.redraw)return s.call("redraw",t)})).then((function(){t._transitioning=!1,t._transitioningWithDuration=!1,t.emit("plotly_transitioned",[])})).then(e)))}}n.runFn(l),setTimeout(l())}))}],a=u.syncOrAsync(i,t);return a&&a.then||(a=Promise.resolve()),a.then((function(){return t}))}w.didMarginChange=function(t,e){for(var n=0;n1)return!0}return!1},w.graphJson=function(t,e,n,r,i,a){(i&&e&&!t._fullData||i&&!e&&!t._fullLayout)&&w.supplyDefaults(t);var o=i?t._fullData:t.data,s=i?t._fullLayout:t.layout,l=(t._transitionData||{})._frames;function c(t,e){if("function"===typeof t)return e?"_function_":null;if(u.isPlainObject(t)){var r,i={};return Object.keys(t).sort().forEach((function(a){if(-1===["_","["].indexOf(a.charAt(0)))if("function"!==typeof t[a]){if("keepdata"===n){if("src"===a.substr(a.length-3))return}else if("keepstream"===n){if("string"===typeof(r=t[a+"src"])&&r.indexOf(":")>0&&!u.isPlainObject(t.stream))return}else if("keepall"!==n&&"string"===typeof(r=t[a+"src"])&&r.indexOf(":")>0)return;i[a]=c(t[a],e)}else e&&(i[a]="_function")})),i}return Array.isArray(t)?t.map((function(t){return c(t,e)})):u.isTypedArray(t)?u.simpleMap(t,u.identity):u.isJSDate(t)?u.ms2DateTimeLocal(+t):t}var f={data:(o||[]).map((function(t){var n=c(t);return e&&delete n.fit,n}))};if(!e&&(f.layout=c(s),i)){var h=s._size;f.layout.computed={margin:{b:h.b,l:h.l,r:h.r,t:h.t}}}return l&&(f.frames=c(l)),a&&(f.config=c(t._context,!0)),"object"===r?f:JSON.stringify(f)},w.modifyFrames=function(t,e){var n,r,i,a=t._transitionData._frames,o=t._transitionData._frameHash;for(n=0;n=0;a--)if(s[a].enabled){n._indexToPoints=s[a]._indexToPoints;break}r&&r.calc&&(o=r.calc(t,n))}Array.isArray(o)&&o[0]||(o=[{x:h,y:h}]),o[0].t||(o[0].t={}),o[0].trace=n,p[e]=o}}for(R(o,c,f),i=0;i1e-10?t:0}function h(t,e,n){e=e||0,n=n||0;for(var r=t.length,i=new Array(r),a=0;a0?n:1/0})),i=r.mod(n+1,e.length);return[e[n],e[i]]},findIntersectionXY:c,findXYatLength:function(t,e,n,r){var i=-e*n,a=e*e+1,o=2*(e*i-n),s=i*i+n*n-t*t,l=Math.sqrt(o*o-4*a*s),c=(-o+l)/(2*a),u=(-o-l)/(2*a);return[[c,e*c+i+r],[u,e*u+i+r]]},clampTiny:f,pathPolygon:function(t,e,n,r,i,a){return"M"+h(u(t,e,n,r),i,a).join("L")},pathPolygonAnnulus:function(t,e,n,r,i,a,o){var s,l;t=90||l>90&&c>=450?1:f<=0&&d<=0?0:Math.max(f,d),e=l<=180&&c>=180||l>180&&c>=540?-1:u>=0&&h>=0?0:Math.min(u,h),n=l<=270&&c>=270||l>270&&c>=630?-1:f>=0&&d>=0?0:Math.min(f,d),r=c>=360?1:u<=0&&h<=0?0:Math.max(u,h),[e,n,r,i]}(p),w=x[2]-x[0],_=x[3]-x[1],k=d/h,T=Math.abs(_/w);k>T?(g=h,b=(d-(v=h*T))/i.h/2,m=[s[0],s[1]],y=[f[0]+b,f[1]-b]):(v=d,b=(h-(g=d/T))/i.w/2,m=[s[0]+b,s[1]-b],y=[f[0],f[1]]),n.xLength2=g,n.yLength2=v,n.xDomain2=m,n.yDomain2=y;var M,A=n.xOffset2=i.l+i.w*m[0],S=n.yOffset2=i.t+i.h*(1-y[1]),E=n.radius=g/w,C=n.innerRadius=n.getHole(e)*E,P=n.cx=A-E*x[0],L=n.cy=S+E*x[3],O=n.cxx=P-A,I=n.cyy=L-S,D=a.side;"counterclockwise"===D?(M=D,D="top"):"clockwise"===D&&(M=D,D="bottom"),n.radialAxis=n.mockAxis(t,e,a,{_id:"x",side:D,_trueSide:M,domain:[C/i.w,E/i.w]}),n.angularAxis=n.mockAxis(t,e,o,{side:"right",domain:[0,Math.PI],autorange:!1}),n.doAutoRange(t,e),n.updateAngularAxis(t,e),n.updateRadialAxis(t,e),n.updateRadialAxisTitle(t,e),n.xaxis=n.mockCartesianAxis(t,e,{_id:"x",domain:m}),n.yaxis=n.mockCartesianAxis(t,e,{_id:"y",domain:y});var N=n.pathSubplot();n.clipPaths.forTraces.select("path").attr("d",N).attr("transform",l(O,I)),r.frontplot.attr("transform",l(A,S)).call(u.setClipUrl,n._hasClipOnAxisFalse?null:n.clipIds.forTraces,n.gd),r.bg.attr("d",N).attr("transform",l(P,L)).call(c.fill,e.bgcolor)},F.mockAxis=function(t,e,n,r){var i=o.extendFlat({},n,r);return p(i,e,t),i},F.mockCartesianAxis=function(t,e,n){var r=this,i=r.isSmith,a=n._id,s=o.extendFlat({type:"linear"},n);d(s,t);var l={x:[0,2],y:[1,3]};return s.setRange=function(){var t=r.sectorBBox,n=l[a],i=r.radialAxis._rl,o=(i[1]-i[0])/(1-r.getHole(e));s.range=[t[n[0]]*o,t[n[1]]*o]},s.isPtWithinRange="x"!==a||i?function(){return!0}:function(t){return r.isPtInside(t)},s.setRange(),s.setScale(),s},F.doAutoRange=function(t,e){var n=this,r=n.gd,i=n.radialAxis,a=n.getRadial(e);g(r,i);var o=i.range;a.range=o.slice(),a._input.range=o.slice(),i._rl=[i.r2l(o[0],null,"gregorian"),i.r2l(o[1],null,"gregorian")]},F.updateRadialAxis=function(t,e){var n=this,r=n.gd,i=n.layers,a=n.radius,u=n.innerRadius,f=n.cx,d=n.cy,p=n.getRadial(e),g=R(n.getSector(e)[0],360),v=n.radialAxis,m=u90&&g<=270&&(v.tickangle=180);var b=y?function(t){var e=I(n,P([t.x,0]));return l(e[0]-f,e[1]-d)}:function(t){return l(v.l2p(t.x)+u,0)},x=y?function(t){return O(n,t.x,-1/0,1/0)}:function(t){return n.pathArc(v.r2p(t.x)+u)},w=B(p);if(n.radialTickLayout!==w&&(i["radial-axis"].selectAll(".xtick").remove(),n.radialTickLayout=w),m){v.setScale();var _=0,k=y?(v.tickvals||[]).filter((function(t){return t>=0})).map((function(t){return h.tickText(v,t,!0,!1)})):h.calcTicks(v),T=y?k:h.clipEnds(v,k),M=h.getTickSigns(v)[2];y&&(("top"===v.ticks&&"bottom"===v.side||"bottom"===v.ticks&&"top"===v.side)&&(M=-M),"top"===v.ticks&&"top"===v.side&&(_=-v.ticklen),"bottom"===v.ticks&&"bottom"===v.side&&(_=v.ticklen)),h.drawTicks(r,v,{vals:k,layer:i["radial-axis"],path:h.makeTickPath(v,0,M),transFn:b,crisp:!1}),h.drawGrid(r,v,{vals:T,layer:i["radial-grid"],path:x,transFn:o.noop,crisp:!1}),h.drawLabels(r,v,{vals:k,layer:i["radial-axis"],transFn:b,labelFns:h.makeLabelFns(v,_)})}var A=n.radialAxisAngle=n.vangles?N(U(z(p.angle),n.vangles)):p.angle,S=l(f,d),E=S+s(-A);H(i["radial-axis"],m&&(p.showticklabels||p.ticks),{transform:E}),H(i["radial-grid"],m&&p.showgrid,{transform:y?"":S}),H(i["radial-line"].select("line"),m&&p.showline,{x1:y?-a:u,y1:0,x2:a,y2:0,transform:E}).attr("stroke-width",p.linewidth).call(c.stroke,p.linecolor)},F.updateRadialAxisTitle=function(t,e,n){if(!this.isSmith){var r=this,i=r.gd,a=r.radius,o=r.cx,s=r.cy,l=r.getRadial(e),c=r.id+"title",f=0;if(l.title){var h=u.bBox(r.layers["radial-axis"].node()).height,d=l.title.font.size,p=l.side;f="top"===p?d:"counterclockwise"===p?-(h+.4*d):h+.8*d}var g=void 0!==n?n:r.radialAxisAngle,v=z(g),m=Math.cos(v),y=Math.sin(v),x=o+a/2*m+f*y,w=s-a/2*y+f*m;r.layers["radial-axis-title"]=b.draw(i,c,{propContainer:l,propName:r.id+".radialaxis.title",placeholder:D(i,"Click to enter radial axis title"),attributes:{x:x,y:w,"text-anchor":"middle"},transform:{rotate:-g}})}},F.updateAngularAxis=function(t,e){var n=this,r=n.gd,i=n.layers,a=n.radius,u=n.innerRadius,f=n.cx,d=n.cy,p=n.getAngular(e),g=n.angularAxis,v=n.isSmith;v||(n.fillViewInitialKey("angularaxis.rotation",p.rotation),g.setGeometry(),g.setScale());var m=v?function(t){var e=I(n,P([0,t.x]));return Math.atan2(e[0]-f,e[1]-d)-Math.PI/2}:function(t){return g.t2g(t.x)};"linear"===g.type&&"radians"===g.thetaunit&&(g.tick0=N(g.tick0),g.dtick=N(g.dtick));var y=function(t){return l(f+a*Math.cos(t),d-a*Math.sin(t))},b=v?function(t){var e=I(n,P([0,t.x]));return l(e[0],e[1])}:function(t){return y(m(t))},x=v?function(t){var e=I(n,P([0,t.x])),r=Math.atan2(e[0]-f,e[1]-d)-Math.PI/2;return l(e[0],e[1])+s(-N(r))}:function(t){var e=m(t);return y(e)+s(-N(e))},w=v?function(t){return L(n,t.x,0,1/0)}:function(t){var e=m(t),n=Math.cos(e),r=Math.sin(e);return"M"+[f+u*n,d-u*r]+"L"+[f+a*n,d-a*r]},_=h.makeLabelFns(g,0).labelStandoff,k={xFn:function(t){var e=m(t);return Math.cos(e)*_},yFn:function(t){var e=m(t),n=Math.sin(e)>0?.2:1;return-Math.sin(e)*(_+t.fontSize*n)+Math.abs(Math.cos(e))*(t.fontSize*A)},anchorFn:function(t){var e=m(t),n=Math.cos(e);return Math.abs(n)<.1?"middle":n>0?"start":"end"},heightFn:function(t,e,n){var r=m(t);return-.5*(1+Math.sin(r))*n}},T=B(p);n.angularTickLayout!==T&&(i["angular-axis"].selectAll("."+g._id+"tick").remove(),n.angularTickLayout=T);var M,S=v?[1/0].concat(g.tickvals||[]).map((function(t){return h.tickText(g,t,!0,!1)})):h.calcTicks(g);if(v&&(S[0].text="\u221e",S[0].fontSize*=1.75),"linear"===e.gridshape?(M=S.map(m),o.angleDelta(M[0],M[1])<0&&(M=M.slice().reverse())):M=null,n.vangles=M,"category"===g.type&&(S=S.filter((function(t){return o.isAngleInsideSector(m(t),n.sectorInRad)}))),g.visible){var E="inside"===g.ticks?-1:1,C=(g.linewidth||1)/2;h.drawTicks(r,g,{vals:S,layer:i["angular-axis"],path:"M"+E*C+",0h"+E*g.ticklen,transFn:x,crisp:!1}),h.drawGrid(r,g,{vals:S,layer:i["angular-grid"],path:w,transFn:o.noop,crisp:!1}),h.drawLabels(r,g,{vals:S,layer:i["angular-axis"],repositionOnUpdate:!0,transFn:b,labelFns:k})}H(i["angular-line"].select("path"),p.showline,{d:n.pathSubplot(),transform:l(f,d)}).attr("stroke-width",p.linewidth).call(c.stroke,p.linecolor)},F.updateFx=function(t,e){this.gd._context.staticPlot||(!this.isSmith&&(this.updateAngularDrag(t),this.updateRadialDrag(t,e,0),this.updateRadialDrag(t,e,1)),this.updateHoverAndMainDrag(t))},F.updateHoverAndMainDrag=function(t){var e,n,s=this,c=s.isSmith,u=s.gd,f=s.layers,h=t._zoomlayer,d=S.MINZOOM,p=S.OFFEDGE,g=s.radius,b=s.innerRadius,k=s.cx,T=s.cy,M=s.cxx,A=s.cyy,C=s.sectorInRad,P=s.vangles,L=s.radialAxis,O=E.clampTiny,I=E.findXYatLength,D=E.findEnclosingVertexAngles,R=S.cornerHalfWidth,z=S.cornerLen/2,N=v.makeDragger(f,"path","maindrag",!1===t.dragmode?"none":"crosshair");r.select(N).attr("d",s.pathSubplot()).attr("transform",l(k,T)),N.onmousemove=function(t){y.hover(u,t,s.id),u._fullLayout._lasthover=N,u._fullLayout._hoversubplot=s.id},N.onmouseout=function(t){u._dragging||m.unhover(u,t)};var j,F,B,U,H,V,q,G,W,Y={element:N,gd:u,subplot:s.id,plotinfo:{id:s.id,xaxis:s.xaxis,yaxis:s.yaxis},xaxes:[s.xaxis],yaxes:[s.yaxis]};function $(t,e){return Math.sqrt(t*t+e*e)}function X(t,e){return $(t-M,e-A)}function K(t,e){return Math.atan2(A-e,t-M)}function Z(t,e){return[t*Math.cos(e),t*Math.sin(-e)]}function J(t,e){if(0===t)return s.pathSector(2*R);var n=z/t,r=e-n,i=e+n,a=Math.max(0,Math.min(t,g)),o=a-R,l=a+R;return"M"+Z(o,r)+"A"+[o,o]+" 0,0,0 "+Z(o,i)+"L"+Z(l,i)+"A"+[l,l]+" 0,0,1 "+Z(l,r)+"Z"}function Q(t,e,n){if(0===t)return s.pathSector(2*R);var r,i,a=Z(t,e),o=Z(t,n),l=O((a[0]+o[0])/2),c=O((a[1]+o[1])/2);if(l&&c){var u=c/l,f=-1/u,h=I(R,u,l,c);r=I(z,f,h[0][0],h[0][1]),i=I(z,f,h[1][0],h[1][1])}else{var d,p;c?(d=z,p=R):(d=R,p=z),r=[[l-d,c-p],[l+d,c-p]],i=[[l-d,c+p],[l+d,c+p]]}return"M"+r.join("L")+"L"+i.reverse().join("L")+"Z"}function tt(t,e){return e=Math.max(Math.min(e,g),b),td?(t-1&&1===t&&w(e,u,[s.xaxis],[s.yaxis],s.id,Y),n.indexOf("event")>-1&&y.click(u,e,s.id)}Y.prepFn=function(t,r,a){var l=u._fullLayout.dragmode,f=N.getBoundingClientRect();u._fullLayout._calcInverseTransform(u);var d=u._fullLayout._invTransform;e=u._fullLayout._invScaleX,n=u._fullLayout._invScaleY;var p=o.apply3DTransform(d)(r-f.left,a-f.top);if(j=p[0],F=p[1],P){var m=E.findPolygonOffset(g,C[0],C[1],P);j+=M+m[0],F+=A+m[1]}switch(l){case"zoom":Y.clickFn=st,c||(Y.moveFn=P?it:nt,Y.doneFn=at,function(){B=null,U=null,H=s.pathSubplot(),V=!1;var t=u._fullLayout[s.id];q=i(t.bgcolor).getLuminance(),(G=v.makeZoombox(h,q,k,T,H)).attr("fill-rule","evenodd"),W=v.makeCorners(h,k,T),_(u)}());break;case"select":case"lasso":x(t,r,a,Y,l)}},m.init(Y)},F.updateRadialDrag=function(t,e,n){var i=this,c=i.gd,u=i.layers,f=i.radius,h=i.innerRadius,d=i.cx,p=i.cy,g=i.radialAxis,y=S.radialDragBoxSize,b=y/2;if(g.visible){var x,w,k,A=z(i.radialAxisAngle),E=g._rl,C=E[0],P=E[1],L=E[n],O=.75*(E[1]-E[0])/(1-i.getHole(e))/f;n?(x=d+(f+b)*Math.cos(A),w=p-(f+b)*Math.sin(A),k="radialdrag"):(x=d+(h-b)*Math.cos(A),w=p-(h-b)*Math.sin(A),k="radialdrag-inner");var I,D,R,j=v.makeRectDragger(u,k,"crosshair",-b,-b,y,y),F={element:j,gd:c};!1===t.dragmode&&(F.dragmode=!1),H(r.select(j),g.visible&&h0===(n?R>C:Rr?function(t){return t<=0}:function(t){return t>=0};t.c2g=function(n){var r=t.c2l(n)-e;return(s(r)?r:0)+o},t.g2c=function(n){return t.l2c(n+e-o)},t.g2p=function(t){return t*a},t.c2p=function(e){return t.g2p(t.c2g(e))}}}(t,e);break;case"angularaxis":!function(t,e){var n=t.type;if("linear"===n){var i=t.d2c,s=t.c2d;t.d2c=function(t,e){return function(t,e){return"degrees"===e?a(t):t}(i(t),e)},t.c2d=function(t,e){return s(function(t,e){return"degrees"===e?o(t):t}(t,e))}}t.makeCalcdata=function(e,i){var a,o,s=e[i],l=e._length,c=function(n){return t.d2c(n,e.thetaunit)};if(s){if(r.isTypedArray(s)&&"linear"===n){if(l===s.length)return s;if(s.subarray)return s.subarray(0,l)}for(a=new Array(l),o=0;o0?1:0}function n(t){var e=t[0],n=t[1];if(!isFinite(e)||!isFinite(n))return[1,0];var r=(e+1)*(e+1)+n*n;return[(e*e+n*n-1)/r,2*n/r]}function r(t,e){var n=e[0],r=e[1];return[n*t.radius+t.cx,-r*t.radius+t.cy]}function i(t,e){return e*t.radius}t.exports={smith:n,reactanceArc:function(t,e,a,o){var s=r(t,n([a,e])),l=s[0],c=s[1],u=r(t,n([o,e])),f=u[0],h=u[1];if(0===e)return["M"+l+","+c,"L"+f+","+h].join(" ");var d=i(t,1/Math.abs(e));return["M"+l+","+c,"A"+d+","+d+" 0 0,"+(e<0?1:0)+" "+f+","+h].join(" ")},resistanceArc:function(t,a,o,s){var l=i(t,1/(a+1)),c=r(t,n([a,o])),u=c[0],f=c[1],h=r(t,n([a,s])),d=h[0],p=h[1];if(e(o)!==e(s)){var g=r(t,n([a,0]));return["M"+u+","+f,"A"+l+","+l+" 0 0,"+(00){for(var r=[],i=0;i=u&&(h.min=0,p.min=0,v.min=0,t.aaxis&&delete t.aaxis.min,t.baxis&&delete t.baxis.min,t.caxis&&delete t.caxis.min)}function g(t,e,n,r){var i=h[e._name];function o(n,r){return a.coerce(t,e,i,n,r)}o("uirevision",r.uirevision),e.type="linear";var d=o("color"),p=d!==i.color.dflt?d:n.font.color,g=e._name.charAt(0).toUpperCase(),v="Component "+g,m=o("title.text",v);e._hovertitle=m===v?m:g,a.coerceFont(o,"title.font",{family:n.font.family,size:a.bigFont(n.font.size),color:p}),o("min"),u(t,e,o,"linear"),l(t,e,o,"linear"),s(t,e,o,"linear"),c(t,e,o,{outerTicks:!0}),o("showticklabels")&&(a.coerceFont(o,"tickfont",{family:n.font.family,size:n.font.size,color:p}),o("tickangle"),o("tickformat")),f(t,e,o,{dfltColor:d,bgColor:n.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:i}),o("hoverformat"),o("layer")}t.exports=function(t,e,n){o(t,e,n,{type:"ternary",attributes:h,handleDefaults:p,font:e.font,paper_bgcolor:e.paper_bgcolor})}},64380:function(t,e,n){"use strict";var r=n(39898),i=n(84267),a=n(73972),o=n(71828),s=o.strTranslate,l=o._,c=n(7901),u=n(91424),f=n(21994),h=n(1426).extendFlat,d=n(74875),p=n(89298),g=n(28569),v=n(30211),m=n(64505),y=m.freeMode,b=m.rectMode,x=n(92998),w=n(47322).prepSelect,_=n(47322).selectOnClick,k=n(47322).clearOutline,T=n(47322).clearSelectionsCache,M=n(85555);function A(t,e){this.id=t.id,this.graphDiv=t.graphDiv,this.init(e),this.makeFramework(e),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}t.exports=A;var S=A.prototype;S.init=function(t){this.container=t._ternarylayer,this.defs=t._defs,this.layoutId=t._uid,this.traceHash={},this.layers={}},S.plot=function(t,e){var n=this,r=e[n.id],i=e._size;n._hasClipOnAxisFalse=!1;for(var a=0;aE*x?i=(a=x)*E:a=(i=b)/E,o=m*i/b,l=y*a/x,n=e.l+e.w*g-i/2,r=e.t+e.h*(1-v)-a/2,d.x0=n,d.y0=r,d.w=i,d.h=a,d.sum=w,d.xaxis={type:"linear",range:[_+2*T-w,w-_-2*k],domain:[g-o/2,g+o/2],_id:"x"},f(d.xaxis,d.graphDiv._fullLayout),d.xaxis.setScale(),d.xaxis.isPtWithinRange=function(t){return t.a>=d.aaxis.range[0]&&t.a<=d.aaxis.range[1]&&t.b>=d.baxis.range[1]&&t.b<=d.baxis.range[0]&&t.c>=d.caxis.range[1]&&t.c<=d.caxis.range[0]},d.yaxis={type:"linear",range:[_,w-k-T],domain:[v-l/2,v+l/2],_id:"y"},f(d.yaxis,d.graphDiv._fullLayout),d.yaxis.setScale(),d.yaxis.isPtWithinRange=function(){return!0};var M=d.yaxis.domain[0],A=d.aaxis=h({},t.aaxis,{range:[_,w-k-T],side:"left",tickangle:(+t.aaxis.tickangle||0)-30,domain:[M,M+l*E],anchor:"free",position:0,_id:"y",_length:i});f(A,d.graphDiv._fullLayout),A.setScale();var S=d.baxis=h({},t.baxis,{range:[w-_-T,k],side:"bottom",domain:d.xaxis.domain,anchor:"free",position:0,_id:"x",_length:i});f(S,d.graphDiv._fullLayout),S.setScale();var C=d.caxis=h({},t.caxis,{range:[w-_-k,T],side:"right",tickangle:(+t.caxis.tickangle||0)+30,domain:[M,M+l*E],anchor:"free",position:0,_id:"y",_length:i});f(C,d.graphDiv._fullLayout),C.setScale();var P="M"+n+","+(r+a)+"h"+i+"l-"+i/2+",-"+a+"Z";d.clipDef.select("path").attr("d",P),d.layers.plotbg.select("path").attr("d",P);var L="M0,"+a+"h"+i+"l-"+i/2+",-"+a+"Z";d.clipDefRelative.select("path").attr("d",L);var O=s(n,r);d.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",O),d.clipDefRelative.select("path").attr("transform",null);var I=s(n-S._offset,r+a);d.layers.baxis.attr("transform",I),d.layers.bgrid.attr("transform",I);var D=s(n+i/2,r)+"rotate(30)"+s(0,-A._offset);d.layers.aaxis.attr("transform",D),d.layers.agrid.attr("transform",D);var R=s(n+i/2,r)+"rotate(-30)"+s(0,-C._offset);d.layers.caxis.attr("transform",R),d.layers.cgrid.attr("transform",R),d.drawAxes(!0),d.layers.aline.select("path").attr("d",A.showline?"M"+n+","+(r+a)+"l"+i/2+",-"+a:"M0,0").call(c.stroke,A.linecolor||"#000").style("stroke-width",(A.linewidth||0)+"px"),d.layers.bline.select("path").attr("d",S.showline?"M"+n+","+(r+a)+"h"+i:"M0,0").call(c.stroke,S.linecolor||"#000").style("stroke-width",(S.linewidth||0)+"px"),d.layers.cline.select("path").attr("d",C.showline?"M"+(n+i/2)+","+r+"l"+i/2+","+a:"M0,0").call(c.stroke,C.linecolor||"#000").style("stroke-width",(C.linewidth||0)+"px"),d.graphDiv._context.staticPlot||d.initInteractions(),u.setClipUrl(d.layers.frontplot,d._hasClipOnAxisFalse?null:d.clipId,d.graphDiv)},S.drawAxes=function(t){var e=this,n=e.graphDiv,r=e.id.substr(7)+"title",i=e.layers,a=e.aaxis,o=e.baxis,s=e.caxis;if(e.drawAx(a),e.drawAx(o),e.drawAx(s),t){var c=Math.max(a.showticklabels?a.tickfont.size/2:0,(s.showticklabels?.75*s.tickfont.size:0)+("outside"===s.ticks?.87*s.ticklen:0)),u=(o.showticklabels?o.tickfont.size:0)+("outside"===o.ticks?o.ticklen:0)+3;i["a-title"]=x.draw(n,"a"+r,{propContainer:a,propName:e.id+".aaxis.title",placeholder:l(n,"Click to enter Component A title"),attributes:{x:e.x0+e.w/2,y:e.y0-a.title.font.size/3-c,"text-anchor":"middle"}}),i["b-title"]=x.draw(n,"b"+r,{propContainer:o,propName:e.id+".baxis.title",placeholder:l(n,"Click to enter Component B title"),attributes:{x:e.x0-u,y:e.y0+e.h+.83*o.title.font.size+u,"text-anchor":"middle"}}),i["c-title"]=x.draw(n,"c"+r,{propContainer:s,propName:e.id+".caxis.title",placeholder:l(n,"Click to enter Component C title"),attributes:{x:e.x0+e.w+u,y:e.y0+e.h+.83*s.title.font.size+u,"text-anchor":"middle"}})}},S.drawAx=function(t){var e,n=this,r=n.graphDiv,i=t._name,a=i.charAt(0),s=t._id,l=n.layers[i],c=a+"tickLayout",u=(e=t).ticks+String(e.ticklen)+String(e.showticklabels);n[c]!==u&&(l.selectAll("."+s+"tick").remove(),n[c]=u),t.setScale();var f=p.calcTicks(t),h=p.clipEnds(t,f),d=p.makeTransTickFn(t),g=p.getTickSigns(t)[2],v=o.deg2rad(30),m=g*(t.linewidth||1)/2,y=g*t.ticklen,b=n.w,x=n.h,w="b"===a?"M0,"+m+"l"+Math.sin(v)*y+","+Math.cos(v)*y:"M"+m+",0l"+Math.cos(v)*y+","+-Math.sin(v)*y,_={a:"M0,0l"+x+",-"+b/2,b:"M0,0l-"+b/2+",-"+x,c:"M0,0l-"+x+","+b/2}[a];p.drawTicks(r,t,{vals:"inside"===t.ticks?h:f,layer:l,path:w,transFn:d,crisp:!1}),p.drawGrid(r,t,{vals:h,layer:n.layers[a+"grid"],path:_,transFn:d,crisp:!1}),p.drawLabels(r,t,{vals:f,layer:l,transFn:d,labelFns:p.makeLabelFns(t,0,30)})};var C=M.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",L="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",O="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",I=!0;function D(t){r.select(t).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}S.clearOutline=function(){T(this.dragOptions),k(this.dragOptions.gd)},S.initInteractions=function(){var t,e,n,r,f,h,d,p,m,x,k,T,A=this,S=A.layers.plotbg.select("path").node(),C=A.graphDiv,R=C._fullLayout._zoomlayer;function z(t){var e={};return e[A.id+".aaxis.min"]=t.a,e[A.id+".baxis.min"]=t.b,e[A.id+".caxis.min"]=t.c,e}function N(t,e){var n=C._fullLayout.clickmode;D(C),2===t&&(C.emit("plotly_doubleclick",null),a.call("_guiRelayout",C,z({a:0,b:0,c:0}))),n.indexOf("select")>-1&&1===t&&_(e,C,[A.xaxis],[A.yaxis],A.id,A.dragOptions),n.indexOf("event")>-1&&v.click(C,e,A.id)}function j(t,e){return 1-e/A.h}function F(t,e){return 1-(t+(A.h-e)/Math.sqrt(3))/A.w}function B(t,e){return(t-(A.h-e)/Math.sqrt(3))/A.w}function U(i,a){var o=n+i*t,s=r+a*e,l=Math.max(0,Math.min(1,j(0,r),j(0,s))),c=Math.max(0,Math.min(1,F(n,r),F(o,s))),u=Math.max(0,Math.min(1,B(n,r),B(o,s))),g=(l/2+u)*A.w,v=(1-l/2-c)*A.w,y=(g+v)/2,b=v-g,w=(1-l)*A.h,_=w-b/E;b.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),T.transition().style("opacity",1).duration(200),x=!0),C.emit("plotly_relayouting",z(d))}function H(){D(C),d!==f&&(a.call("_guiRelayout",C,z(d)),I&&C.data&&C._context.showTips&&(o.notifier(l(C,"Double-click to zoom back out"),"long"),I=!1))}function V(t,e){var n=t/A.xaxis._m,r=e/A.yaxis._m,i=[(d={a:f.a-r,b:f.b+(n+r)/2,c:f.c-(n-r)/2}).a,d.b,d.c].sort(o.sorterAsc),a=i.indexOf(d.a),l=i.indexOf(d.b),c=i.indexOf(d.c);i[0]<0&&(i[1]+i[0]/2<0?(i[2]+=i[0]+i[1],i[0]=i[1]=0):(i[2]+=i[0]/2,i[1]+=i[0]/2,i[0]=0),d={a:i[a],b:i[l],c:i[c]},e=(f.a-d.a)*A.yaxis._m,t=(f.c-d.c-f.b+d.b)*A.xaxis._m);var h=s(A.x0+t,A.y0+e);A.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",h);var p=s(-t,-e);A.clipDefRelative.select("path").attr("transform",p),A.aaxis.range=[d.a,A.sum-d.b-d.c],A.baxis.range=[A.sum-d.a-d.c,d.b],A.caxis.range=[A.sum-d.a-d.b,d.c],A.drawAxes(!1),A._hasClipOnAxisFalse&&A.plotContainer.select(".scatterlayer").selectAll(".trace").call(u.hideOutsideRangePoints,A),C.emit("plotly_relayouting",z(d))}function q(){a.call("_guiRelayout",C,z(d))}this.dragOptions={element:S,gd:C,plotinfo:{id:A.id,domain:C._fullLayout[A.id].domain,xaxis:A.xaxis,yaxis:A.yaxis},subplot:A.id,prepFn:function(a,l,u){A.dragOptions.xaxes=[A.xaxis],A.dragOptions.yaxes=[A.yaxis],t=C._fullLayout._invScaleX,e=C._fullLayout._invScaleY;var g=A.dragOptions.dragmode=C._fullLayout.dragmode;y(g)?A.dragOptions.minDrag=1:A.dragOptions.minDrag=void 0,"zoom"===g?(A.dragOptions.moveFn=U,A.dragOptions.clickFn=N,A.dragOptions.doneFn=H,function(t,e,a){var l=S.getBoundingClientRect();n=e-l.left,r=a-l.top,C._fullLayout._calcInverseTransform(C);var u=C._fullLayout._invTransform,g=o.apply3DTransform(u)(n,r);n=g[0],r=g[1],f={a:A.aaxis.range[0],b:A.baxis.range[1],c:A.caxis.range[1]},d=f,h=A.aaxis.range[1]-f.a,p=i(A.graphDiv._fullLayout[A.id].bgcolor).getLuminance(),m="M0,"+A.h+"L"+A.w/2+", 0L"+A.w+","+A.h+"Z",x=!1,k=R.append("path").attr("class","zoombox").attr("transform",s(A.x0,A.y0)).style({fill:p>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",m),T=R.append("path").attr("class","zoombox-corners").attr("transform",s(A.x0,A.y0)).style({fill:c.background,stroke:c.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),A.clearOutline(C)}(0,l,u)):"pan"===g?(A.dragOptions.moveFn=V,A.dragOptions.clickFn=N,A.dragOptions.doneFn=q,f={a:A.aaxis.range[0],b:A.baxis.range[1],c:A.caxis.range[1]},d=f,A.clearOutline(C)):(b(g)||y(g))&&w(a,l,u,A.dragOptions,g)}},S.onmousemove=function(t){v.hover(C,t,A.id),C._fullLayout._lasthover=S,C._fullLayout._hoversubplot=A.id},S.onmouseout=function(t){C._dragging||g.unhover(C,t)},g.init(this.dragOptions)}},73972:function(t,e,n){"use strict";var r=n(47769),i=n(64213),a=n(75138),o=n(41965),s=n(24401).addStyleRule,l=n(1426),c=n(9012),u=n(10820),f=l.extendFlat,h=l.extendDeepAll;function d(t){var n=t.name,i=t.categories,a=t.meta;if(e.modules[n])r.log("Type "+n+" already registered");else{e.subplotsRegistry[t.basePlotModule.name]||function(t){var n=t.name;if(e.subplotsRegistry[n])r.log("Plot type "+n+" already registered.");else for(var i in m(t),e.subplotsRegistry[n]=t,e.componentsRegistry)x(i,t.name)}(t.basePlotModule);for(var o={},l=0;l-1&&(f[d[n]].title={text:""});for(n=0;n")?"":e.html(t).text()}));return e.remove(),n}(_)).replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")).replace(u,"'"),i.isIE()&&(_=(_=(_=_.replace(/"/gi,"'")).replace(/(\('#)([^']*)('\))/gi,'("#$2")')).replace(/(\\')/gi,'"')),_}},75341:function(t,e,n){"use strict";var r=n(71828);t.exports=function(t,e){for(var n=0;nf+c||!r(u))}for(var d=0;da))return e}return void 0!==n?n:t.dflt},e.coerceColor=function(t,e,n){return i(e).isValid()?e:void 0!==n?n:t.dflt},e.coerceEnumerated=function(t,e,n){return t.coerceNumber&&(e=+e),-1!==t.values.indexOf(e)?e:void 0!==n?n:t.dflt},e.getValue=function(t,e){var n;return Array.isArray(t)?e0?e+=n:u<0&&(e-=n)}return e}function D(t){var e=u,n=t.b,i=I(t);return r.inbox(n-e,i-e,w+(i-e)/(i-n)-1)}var R=t[f+"a"],z=t[h+"a"];g=Math.abs(R.r2c(R.range[1])-R.r2c(R.range[0]));var N=r.getDistanceFunction(i,d,p,(function(t){return(d(t)+p(t))/2}));if(r.getClosest(v,N,t),!1!==t.index&&v[t.index].p!==c){T||(C=function(t){return Math.min(M(t),t.p-y.bargroupwidth/2)},P=function(t){return Math.max(A(t),t.p+y.bargroupwidth/2)});var j=v[t.index],F=m.base?j.b+j.s:j.s;t[h+"0"]=t[h+"1"]=z.c2p(j[h],!0),t[h+"LabelVal"]=F;var B=y.extents[y.extents.round(j.p)];t[f+"0"]=R.c2p(b?C(j):B[0],!0),t[f+"1"]=R.c2p(b?P(j):B[1],!0);var U=void 0!==j.orig_p;return t[f+"LabelVal"]=U?j.orig_p:j.p,t.labelLabel=l(R,t[f+"LabelVal"],m[f+"hoverformat"]),t.valueLabel=l(z,t[h+"LabelVal"],m[h+"hoverformat"]),t.baseLabel=l(z,j.b,m[h+"hoverformat"]),t.spikeDistance=(function(t){var e=u,n=t.b,i=I(t);return r.inbox(n-e,i-e,_+(i-e)/(i-n)-1)}(j)+function(t){return L(M(t),A(t),_)}(j))/2,t[f+"Spike"]=R.c2p(j.p,!0),o(j,m,t),t.hovertemplate=m.hovertemplate,t}}function f(t,e){var n=e.mcc||t.marker.color,r=e.mlcc||t.marker.line.color,i=s(t,e);return a.opacity(n)?n:a.opacity(r)&&i?r:void 0}t.exports={hoverPoints:function(t,e,n,r,a){var o=u(t,e,n,r,a);if(o){var s=o.cd,l=s[0].trace,c=s[o.index];return o.color=f(l,c),i.getComponentMethod("errorbars","hoverInfo")(c,l,o),[o]}},hoverOnBars:u,getTraceColor:f}},60822:function(t,e,n){"use strict";t.exports={attributes:n(1486),layoutAttributes:n(43641),supplyDefaults:n(90769).supplyDefaults,crossTraceDefaults:n(90769).crossTraceDefaults,supplyLayoutDefaults:n(13957),calc:n(92290),crossTraceCalc:n(11661).crossTraceCalc,colorbar:n(4898),arraysToCalcdata:n(75341),plot:n(17295).plot,style:n(16688).style,styleOnSelect:n(16688).styleOnSelect,hoverPoints:n(95423).hoverPoints,eventData:n(58065),selectPoints:n(81974),moduleType:"trace",name:"bar",basePlotModule:n(93612),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}},43641:function(t){"use strict";t.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(t,e,n){"use strict";var r=n(73972),i=n(89298),a=n(71828),o=n(43641);t.exports=function(t,e,n){function s(n,r){return a.coerce(t,e,o,n,r)}for(var l=!1,c=!1,u=!1,f={},h=s("barmode"),d=0;d0}function S(t){return"auto"===t?0:t}function E(t,e){var n=Math.PI/180*e,r=Math.abs(Math.sin(n)),i=Math.abs(Math.cos(n));return{x:t.width*i+t.height*r,y:t.width*r+t.height*i}}function C(t,e,n,r,i,a){var o=!!a.isHorizontal,s=!!a.constrained,l=a.angle||0,c=a.anchor||"end",u="end"===c,f="start"===c,h=((a.leftToRight||0)+1)/2,d=1-h,p=i.width,g=i.height,v=Math.abs(e-t),m=Math.abs(r-n),y=v>2*w&&m>2*w?w:0;v-=2*y,m-=2*y;var b=S(l);"auto"!==l||p<=v&&g<=m||!(p>v||g>m)||(p>m||g>v)&&p.01?G:function(t,e,n){return n&&t===e?t:Math.abs(t-e)>=2?G(t):t>e?Math.ceil(t):Math.floor(t)};F=W(F,B,z),B=W(B,F,z),U=W(U,H,!z),H=W(H,U,!z)}var Y=M(a.ensureSingle(I,"path"),L,v,m);if(Y.style("vector-effect",O?"none":"non-scaling-stroke").attr("d",isNaN((B-F)*(H-U))||V&&t._context.staticPlot?"M0,0Z":"M"+F+","+U+"V"+H+"H"+B+"V"+U+"Z").call(l.setClipUrl,e.layerClipId,t),!L.uniformtext.mode&&N){var $=l.makePointStyleFns(f);l.singlePointStyle(c,Y,f,$,t)}!function(t,e,n,r,i,s,c,f,d,v,m){var _,k=e.xaxis,A=e.yaxis,P=t._fullLayout;function L(e,n,r){return a.ensureSingle(e,"text").text(n).attr({class:"bartext bartext-"+_,"text-anchor":"middle","data-notex":1}).call(l.font,r).call(o.convertToTspans,t)}var O=r[0].trace,I="h"===O.orientation,D=function(t,e,n,r,i){var o,s=e[0].trace,l=s.texttemplate;return o=l?function(t,e,n,r,i){var o=e[0].trace,s=a.castOption(o,n,"texttemplate");if(!s)return"";var l,c,f,h,d="histogram"===o.type,p="waterfall"===o.type,g="funnel"===o.type,v="h"===o.orientation;function m(t){return u(c,c.c2l(t),!0).text}function y(t){return u(h,h.c2l(t),!0).text}v?(l="y",c=i,f="x",h=r):(l="x",c=r,f="y",h=i);var b=e[n],w={};w.label=b.p,w.labelLabel=w[l+"Label"]=m(b.p);var _=a.castOption(o,b.i,"text");(0===_||_)&&(w.text=_),w.value=b.s,w.valueLabel=w[f+"Label"]=y(b.s);var k={};x(k,o,b.i),(d||void 0===k.x)&&(k.x=v?w.value:w.label),(d||void 0===k.y)&&(k.y=v?w.label:w.value),(d||void 0===k.xLabel)&&(k.xLabel=v?w.valueLabel:w.labelLabel),(d||void 0===k.yLabel)&&(k.yLabel=v?w.labelLabel:w.valueLabel),p&&(w.delta=+b.rawS||b.s,w.deltaLabel=y(w.delta),w.final=b.v,w.finalLabel=y(w.final),w.initial=w.final-w.delta,w.initialLabel=y(w.initial)),g&&(w.value=b.s,w.valueLabel=y(w.value),w.percentInitial=b.begR,w.percentInitialLabel=a.formatPercent(b.begR),w.percentPrevious=b.difR,w.percentPreviousLabel=a.formatPercent(b.difR),w.percentTotal=b.sumR,w.percenTotalLabel=a.formatPercent(b.sumR));var T=a.castOption(o,b.i,"customdata");return T&&(w.customdata=T),a.texttemplateString(s,w,t._d3locale,k,w,o._meta||{})}(t,e,n,r,i):s.textinfo?function(t,e,n,r){var i=t[0].trace,o="h"===i.orientation,s="waterfall"===i.type,l="funnel"===i.type;function c(t){return u(o?r:n,t,!0).text}function f(t){return u(o?n:r,+t,!0).text}var h,d=i.textinfo,p=t[e],g=d.split("+"),v=[],m=function(t){return-1!==g.indexOf(t)};if(m("label")&&v.push(c(t[e].p)),m("text")&&(0===(h=a.castOption(i,p.i,"text"))||h)&&v.push(h),s){var y=+p.rawS||p.s,b=p.v,x=b-y;m("initial")&&v.push(f(x)),m("delta")&&v.push(f(y)),m("final")&&v.push(f(b))}if(l){m("value")&&v.push(f(p.s));var w=0;m("percent initial")&&w++,m("percent previous")&&w++,m("percent total")&&w++;var _=w>1;m("percent initial")&&(h=a.formatPercent(p.begR),_&&(h+=" of initial"),v.push(h)),m("percent previous")&&(h=a.formatPercent(p.difR),_&&(h+=" of previous"),v.push(h)),m("percent total")&&(h=a.formatPercent(p.sumR),_&&(h+=" of total"),v.push(h))}return v.join("
")}(e,n,r,i):g.getValue(s.text,n),g.coerceString(y,o)}(P,r,i,k,A);_=function(t,e){var n=g.getValue(t.textposition,e);return g.coerceEnumerated(b,n)}(O,i);var R="stack"===v.mode||"relative"===v.mode,z=r[i],N=!R||z._outmost;if(D&&"none"!==_&&(!z.isBlank&&s!==c&&f!==d||"auto"!==_&&"inside"!==_)){var j=P.font,F=p.getBarColor(r[i],O),B=p.getInsideTextFont(O,i,j,F),U=p.getOutsideTextFont(O,i,j),H=n.datum();I?"log"===k.type&&H.s0<=0&&(s=k.range[0]0&&W>0&&(G<=$&&W<=X||G<=X&&W<=$||(I?$>=G*(X/W):X>=W*($/G)))?_="inside":(_="outside",V.remove(),V=null)):_="inside"),!V){var K=(V=L(n,D,Y=a.ensureUniformFontSize(t,"outside"===_?U:B))).attr("transform");if(V.attr("transform",""),G=(q=l.bBox(V.node())).width,W=q.height,V.attr("transform",K),G<=0||W<=0)return void V.remove()}var Z,J=O.textangle;Z="outside"===_?function(t,e,n,r,i,a){var o,s=!!a.isHorizontal,l=!!a.constrained,c=a.angle||0,u=i.width,f=i.height,h=Math.abs(e-t),d=Math.abs(r-n);o=s?d>2*w?w:0:h>2*w?w:0;var p=1;l&&(p=s?Math.min(1,d/f):Math.min(1,h/u));var g=S(c),v=E(i,g),m=(s?v.x:v.y)/2,y=(i.left+i.right)/2,b=(i.top+i.bottom)/2,x=(t+e)/2,_=(n+r)/2,k=0,M=0,A=s?T(e,t):T(n,r);return s?(x=e-A*o,k=A*m):(_=r+A*o,M=-A*m),{textX:y,textY:b,targetX:x,targetY:_,anchorX:k,anchorY:M,scale:p,rotate:g}}(s,c,f,d,q,{isHorizontal:I,constrained:"both"===O.constraintext||"outside"===O.constraintext,angle:J}):C(s,c,f,d,q,{isHorizontal:I,constrained:"both"===O.constraintext||"inside"===O.constraintext,angle:J,anchor:O.insidetextanchor}),Z.fontSize=Y.size,h("histogram"===O.type?"bar":O.type,Z,P),z.transform=Z;var Q=M(V,P,v,m);a.setTransormAndDisplay(Q,Z)}else n.select("text").remove()}(t,e,I,n,d,F,B,U,H,v,m),e.layerClipId&&l.hideOutsideRangePoint(c,I.select("text"),_,P,f.xcalendar,f.ycalendar)}));var U=!1===f.cliponaxis;l.setClipUrl(c,U?null:e.layerClipId,t)}));c.getComponentMethod("errorbars","plot")(t,I,e,v)},toMoveInsideBar:C}},81974:function(t){"use strict";function e(t,e,n,r,i){var a=e.c2p(r?t.s0:t.p0,!0),o=e.c2p(r?t.s1:t.p1,!0),s=n.c2p(r?t.p0:t.s0,!0),l=n.c2p(r?t.p1:t.s1,!0);return i?[(a+o)/2,(s+l)/2]:r?[o,(s+l)/2]:[(a+o)/2,l]}t.exports=function(t,n){var r,i=t.cd,a=t.xaxis,o=t.yaxis,s=i[0].trace,l="funnel"===s.type,c="h"===s.orientation,u=[];if(!1===n)for(r=0;r1||0===i.bargap&&0===i.bargroupgap&&!t[0].trace.marker.line.width)&&r.select(this).attr("shape-rendering","crispEdges")})),e.selectAll("g.points").each((function(e){p(r.select(this),e[0].trace,t)})),s.getComponentMethod("errorbars","style")(e)},styleTextPoints:g,styleOnSelect:function(t,e,n){var i=e[0].trace;i.selectedpoints?function(t,e,n){a.selectedPointStyle(t.selectAll("path"),e),function(t,e,n){t.each((function(t){var i,s=r.select(this);if(t.selected){i=o.ensureUniformFontSize(n,v(s,t,e,n));var l=e.selected.textfont&&e.selected.textfont.color;l&&(i.color=l),a.font(s,i)}else a.selectedTextStyle(s,e)}))}(t.selectAll("text"),e,n)}(n,i,t):(p(n,i,t),s.getComponentMethod("errorbars","style")(n))},getInsideTextFont:y,getOutsideTextFont:b,getBarColor:w,resizeText:l}},98340:function(t,e,n){"use strict";var r=n(7901),i=n(52075).hasColorscale,a=n(1586),o=n(71828).coercePattern;t.exports=function(t,e,n,s,l){var c=n("marker.color",s),u=i(t,"marker");u&&a(t,e,l,n,{prefix:"marker.",cLetter:"c"}),n("marker.line.color",r.defaultLine),i(t,"marker.line")&&a(t,e,l,n,{prefix:"marker.line.",cLetter:"c"}),n("marker.line.width"),n("marker.opacity"),o(n,"marker.pattern",c,u),n("selected.marker.color"),n("unselected.marker.color")}},72597:function(t,e,n){"use strict";var r=n(39898),i=n(71828);function a(t){return"_"+t+"Text_minsize"}t.exports={recordMinTextSize:function(t,e,n){if(n.uniformtext.mode){var r=a(t),i=n.uniformtext.minsize,o=e.scale*e.fontSize;e.hide=oh.range[1]&&(b+=Math.PI),r.getClosest(c,(function(t){return g(y,b,[t.rp0,t.rp1],[t.thetag0,t.thetag1],p)?v+Math.min(1,Math.abs(t.thetag1-t.thetag0)/m)-1+(t.rp1-y)/(t.rp1-t.rp0)-1:1/0}),t),!1!==t.index){var x=c[t.index];t.x0=t.x1=x.ct[0],t.y0=t.y1=x.ct[1];var w=i.extendFlat({},x,{r:x.s,theta:x.p});return o(x,u,t),s(w,u,f,t),t.hovertemplate=u.hovertemplate,t.color=a(u,x),t.xLabelVal=t.yLabelVal=void 0,x.s<0&&(t.idealAlign="left"),[t]}}},23381:function(t,e,n){"use strict";t.exports={moduleType:"trace",name:"barpolar",basePlotModule:n(23580),categories:["polar","bar","showLegend"],attributes:n(55023),layoutAttributes:n(40151),supplyDefaults:n(6135),supplyLayoutDefaults:n(19860),calc:n(74692).calc,crossTraceCalc:n(74692).crossTraceCalc,plot:n(60173),colorbar:n(4898),formatLabels:n(98608),style:n(16688).style,styleOnSelect:n(16688).styleOnSelect,hoverPoints:n(27379),selectPoints:n(81974),meta:{}}},40151:function(t){"use strict";t.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}},19860:function(t,e,n){"use strict";var r=n(71828),i=n(40151);t.exports=function(t,e,n){var a,o={};function s(n,o){return r.coerce(t[a]||{},e[a],i,n,o)}for(var l=0;l0?(c=o,u=l):(c=l,u=o);var f=[s.findEnclosingVertexAngles(c,t.vangles)[0],(c+u)/2,s.findEnclosingVertexAngles(u,t.vangles)[1]];return s.pathPolygonAnnulus(r,i,c,u,f,e,n)}:function(t,r,i,o){return a.pathAnnulus(t,r,i,o,e,n)}}(e),p=e.layers.frontplot.select("g.barlayer");a.makeTraceGroups(p,n,"trace bars").each((function(){var n=r.select(this),s=a.ensureSingle(n,"g","points").selectAll("g.point").data(a.identity);s.enter().append("g").style("vector-effect",l?"none":"non-scaling-stroke").style("stroke-miterlimit",2).classed("point",!0),s.exit().remove(),s.each((function(t){var e,n=r.select(this),o=t.rp0=f.c2p(t.s0),s=t.rp1=f.c2p(t.s1),l=t.thetag0=h.c2g(t.p0),p=t.thetag1=h.c2g(t.p1);if(i(o)&&i(s)&&i(l)&&i(p)&&o!==s&&l!==p){var g=f.c2g(t.s1),v=(l+p)/2;t.ct=[c.c2p(g*Math.cos(v)),u.c2p(g*Math.sin(v))],e=d(o,s,l,p)}else e="M0,0Z";a.ensureSingle(n,"path").attr("d",e)})),o.setClipUrl(n,e._hasClipOnAxisFalse?e.clipIds.forTraces:null,t)}))}},53522:function(t,e,n){"use strict";var r=n(82196),i=n(1486),a=n(22399),o=n(12663).axisHoverFormat,s=n(5386).f,l=n(1426).extendFlat,c=r.marker,u=c.line;t.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:r.xperiod,yperiod:r.yperiod,xperiod0:r.xperiod0,yperiod0:r.yperiod0,xperiodalignment:r.xperiodalignment,yperiodalignment:r.yperiodalignment,xhoverformat:o("x"),yhoverformat:o("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:l({},c.symbol,{arrayOk:!1,editType:"plot"}),opacity:l({},c.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:l({},c.angle,{arrayOk:!1,editType:"calc"}),size:l({},c.size,{arrayOk:!1,editType:"calc"}),color:l({},c.color,{arrayOk:!1,editType:"style"}),line:{color:l({},u.color,{arrayOk:!1,dflt:a.defaultLine,editType:"style"}),width:l({},u.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:r.fillcolor,whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},offsetgroup:i.offsetgroup,alignmentgroup:i.alignmentgroup,selected:{marker:r.selected.marker,editType:"style"},unselected:{marker:r.unselected.marker,editType:"style"},text:l({},r.text,{}),hovertext:l({},r.hovertext,{}),hovertemplate:s({}),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"}}},48518:function(t,e,n){"use strict";var r=n(92770),i=n(89298),a=n(42973),o=n(71828),s=n(50606).BADNUM,l=o._;t.exports=function(t,e){var n,c,y,b,x,w,_,k=t._fullLayout,T=i.getFromId(t,e.xaxis||"x"),M=i.getFromId(t,e.yaxis||"y"),A=[],S="violin"===e.type?"_numViolins":"_numBoxes";"h"===e.orientation?(y=T,b="x",x=M,w="y",_=!!e.yperiodalignment):(y=M,b="y",x=T,w="x",_=!!e.xperiodalignment);var E,C,P,L,O,I,D=function(t,e,n,i){var s,l=e in t,c=e+"0"in t,u="d"+e in t;if(l||c&&u){var f=n.makeCalcdata(t,e);return[a(t,n,e,f).vals,f]}s=c?t[e+"0"]:"name"in t&&("category"===n.type||r(t.name)&&-1!==["linear","log"].indexOf(n.type)||o.isDateTime(t.name)&&"date"===n.type)?t.name:i;for(var h="multicategory"===n.type?n.r2c_just_indices(s):n.d2c(s,0,t[e+"calendar"]),d=t._length,p=new Array(d),g=0;gE.uf};if(e._hasPreCompStats){var U=e[b],H=function(t){return y.d2c((e[t]||[])[n])},V=1/0,q=-1/0;for(n=0;n=E.q1&&E.q3>=E.med){var W=H("lowerfence");E.lf=W!==s&&W<=E.q1?W:d(E,P,L);var Y=H("upperfence");E.uf=Y!==s&&Y>=E.q3?Y:p(E,P,L);var $=H("mean");E.mean=$!==s?$:L?o.mean(P,L):(E.q1+E.q3)/2;var X=H("sd");E.sd=$!==s&&X>=0?X:L?o.stdev(P,L,E.mean):E.q3-E.q1,E.lo=g(E),E.uo=v(E);var K=H("notchspan");K=K!==s&&K>0?K:m(E,L),E.ln=E.med-K,E.un=E.med+K;var Z=E.lf,J=E.uf;e.boxpoints&&P.length&&(Z=Math.min(Z,P[0]),J=Math.max(J,P[L-1])),e.notched&&(Z=Math.min(Z,E.ln),J=Math.max(J,E.un)),E.min=Z,E.max=J}else{var Q;o.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+E.q1,"median = "+E.med,"q3 = "+E.q3].join("\n")),Q=E.med!==s?E.med:E.q1!==s?E.q3!==s?(E.q1+E.q3)/2:E.q1:E.q3!==s?E.q3:0,E.med=Q,E.q1=E.q3=Q,E.lf=E.uf=Q,E.mean=E.sd=Q,E.ln=E.un=Q,E.min=E.max=Q}V=Math.min(V,E.min),q=Math.max(q,E.max),E.pts2=C.filter(B),A.push(E)}}e._extremes[y._id]=i.findExtremes(y,[V,q],{padded:!0})}else{var tt=y.makeCalcdata(e,b),et=function(t,e){for(var n=t.length,r=new Array(n+1),i=0;i=0&&it0){var ut,ft;(E={}).pos=E[w]=j[n],C=E.pts=rt[n].sort(f),L=(P=E[b]=C.map(h)).length,E.min=P[0],E.max=P[L-1],E.mean=o.mean(P,L),E.sd=o.stdev(P,L,E.mean),E.med=o.interp(P,.5),L%2&&(lt||ct)?(lt?(ut=P.slice(0,L/2),ft=P.slice(L/2+1)):ct&&(ut=P.slice(0,L/2+1),ft=P.slice(L/2)),E.q1=o.interp(ut,.5),E.q3=o.interp(ft,.5)):(E.q1=o.interp(P,.25),E.q3=o.interp(P,.75)),E.lf=d(E,P,L),E.uf=p(E,P,L),E.lo=g(E),E.uo=v(E);var ht=m(E,L);E.ln=E.med-ht,E.un=E.med+ht,at=Math.min(at,E.ln),ot=Math.max(ot,E.un),E.pts2=C.filter(B),A.push(E)}e._extremes[y._id]=i.findExtremes(y,e.notched?tt.concat([at,ot]):tt,{padded:!0})}return function(t,e){if(o.isArrayOrTypedArray(e.selectedpoints))for(var n=0;n0?(A[0].t={num:k[S],dPos:F,posLetter:w,valLetter:b,labels:{med:l(t,"median:"),min:l(t,"min:"),q1:l(t,"q1:"),q3:l(t,"q3:"),max:l(t,"max:"),mean:"sd"===e.boxmean?l(t,"mean \xb1 \u03c3:"):l(t,"mean:"),lf:l(t,"lower fence:"),uf:l(t,"upper fence:")}},k[S]++,A):[{t:{empty:!0}}]};var c={text:"tx",hovertext:"htx"};function u(t,e,n){for(var r in c)o.isArrayOrTypedArray(e[r])&&(Array.isArray(n)?o.isArrayOrTypedArray(e[r][n[0]])&&(t[c[r]]=e[r][n[0]][n[1]]):t[c[r]]=e[r][n])}function f(t,e){return t.v-e.v}function h(t){return t.v}function d(t,e,n){return 0===n?t.q1:Math.min(t.q1,e[Math.min(o.findBin(2.5*t.q1-1.5*t.q3,e,!0)+1,n-1)])}function p(t,e,n){return 0===n?t.q3:Math.max(t.q3,e[Math.max(o.findBin(2.5*t.q3-1.5*t.q1,e),0)])}function g(t){return 4*t.q1-3*t.q3}function v(t){return 4*t.q3-3*t.q1}function m(t,e){return 0===e?0:1.57*(t.q3-t.q1)/Math.sqrt(e)}},37188:function(t,e,n){"use strict";var r=n(89298),i=n(71828),a=n(99082).getAxisGroup,o=["v","h"];function s(t,e,n,o){var s,l,c,u=e.calcdata,f=e._fullLayout,h=o._id,d=h.charAt(0),p=[],g=0;for(s=0;s1,x=1-f[t+"gap"],w=1-f[t+"groupgap"];for(s=0;s0){var q=E.pointpos,G=E.jitter,W=E.marker.size/2,Y=0;q+G>=0&&((Y=H*(q+G))>A?(V=!0,B=W,j=Y):Y>z&&(B=W,j=A)),Y<=A&&(j=A);var $=0;q-G<=0&&(($=-H*(q-G))>S?(V=!0,U=W,F=$):$>N&&(U=W,F=S)),$<=S&&(F=S)}else j=A,F=S;var X=new Array(c.length);for(l=0;l0?(v="v",m=b>0?Math.min(w,x):Math.min(x)):b>0?(v="h",m=Math.min(w)):m=0;if(m){e._length=m;var S=n("orientation",v);e._hasPreCompStats?"v"===S&&0===b?(n("x0",0),n("dx",1)):"h"===S&&0===y&&(n("y0",0),n("dy",1)):"v"===S&&0===b?n("x0"):"h"===S&&0===y&&n("y0"),i.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x","y"],a)}else e.visible=!1}function f(t,e,n,i){var a=i.prefix,o=r.coerce2(t,e,c,"marker.outliercolor"),s=n("marker.line.outliercolor"),l="outliers";e._hasPreCompStats?l="all":(o||s)&&(l="suspectedoutliers");var u=n(a+"points",l);u?(n("jitter","all"===u?.3:0),n("pointpos","all"===u?-1.5:0),n("marker.symbol"),n("marker.opacity"),n("marker.size"),n("marker.angle"),n("marker.color",e.line.color),n("marker.line.color"),n("marker.line.width"),"suspectedoutliers"===u&&(n("marker.line.outliercolor",e.marker.color),n("marker.line.outlierwidth")),n("selected.marker.color"),n("unselected.marker.color"),n("selected.marker.size"),n("unselected.marker.size"),n("text"),n("hovertext")):delete e.marker;var f=n("hoveron");"all"!==f&&-1===f.indexOf("points")||n("hovertemplate"),r.coerceSelectionMarkerOpacity(e,n)}t.exports={supplyDefaults:function(t,e,n,i){function s(n,i){return r.coerce(t,e,c,n,i)}if(u(t,e,s,i),!1!==e.visible){o(t,e,i,s),s("xhoverformat"),s("yhoverformat");var l=e._hasPreCompStats;l&&(s("lowerfence"),s("upperfence")),s("line.color",(t.marker||{}).color||n),s("line.width"),s("fillcolor",a.addOpacity(e.line.color,.5));var h=!1;if(l){var d=s("mean"),p=s("sd");d&&d.length&&(h=!0,p&&p.length&&(h="sd"))}s("boxmean",h),s("whiskerwidth"),s("width"),s("quartilemethod");var g=!1;if(l){var v=s("notchspan");v&&v.length&&(g=!0)}else r.validate(t.notchwidth,c.notchwidth)&&(g=!0);s("notched",g)&&s("notchwidth"),f(t,e,s,{prefix:"box"})}},crossTraceDefaults:function(t,e){var n,i;function a(t){return r.coerce(i._input,i,c,t)}for(var o=0;ot.lo&&(w.so=!0)}return a}));p.enter().append("path").classed("point",!0),p.exit().remove(),p.call(a.translatePoints,l,c)}function u(t,e,n,a){var o,s,l=e.val,c=e.pos,u=!!c.rangebreaks,f=a.bPos,h=a.bPosPxOffset||0,d=n.boxmean||(n.meanline||{}).visible;Array.isArray(a.bdPos)?(o=a.bdPos[0],s=a.bdPos[1]):(o=a.bdPos,s=a.bdPos);var p=t.selectAll("path.mean").data("box"===n.type&&n.boxmean||"violin"===n.type&&n.box.visible&&n.meanline.visible?i.identity:[]);p.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),p.exit().remove(),p.each((function(t){var e=c.c2l(t.pos+f,!0),i=c.l2p(e-o)+h,a=c.l2p(e+s)+h,p=u?(i+a)/2:c.l2p(e)+h,g=l.c2p(t.mean,!0),v=l.c2p(t.mean-t.sd,!0),m=l.c2p(t.mean+t.sd,!0);"h"===n.orientation?r.select(this).attr("d","M"+g+","+i+"V"+a+("sd"===d?"m0,0L"+v+","+p+"L"+g+","+i+"L"+m+","+p+"Z":"")):r.select(this).attr("d","M"+i+","+g+"H"+a+("sd"===d?"m0,0L"+p+","+v+"L"+i+","+g+"L"+p+","+m+"Z":""))}))}t.exports={plot:function(t,e,n,a){var o=t._context.staticPlot,s=e.xaxis,f=e.yaxis;i.makeTraceGroups(a,n,"trace boxes").each((function(t){var e,n,i=r.select(this),a=t[0],h=a.t,d=a.trace;h.wdPos=h.bdPos*d.whiskerwidth,!0!==d.visible||h.empty?i.remove():("h"===d.orientation?(e=f,n=s):(e=s,n=f),l(i,{pos:e,val:n},d,h,o),c(i,{x:s,y:f},d,h),u(i,{pos:e,val:n},d,h))}))},plotBoxAndWhiskers:l,plotPoints:c,plotBoxMean:u}},24626:function(t){"use strict";t.exports=function(t,e){var n,r,i=t.cd,a=t.xaxis,o=t.yaxis,s=[];if(!1===e)for(n=0;n=10)return null;for(var n=1/0,a=-1/0,o=t.length,s=0;s0?Math.floor:Math.ceil,O=C>0?Math.ceil:Math.floor,I=C>0?Math.min:Math.max,D=C>0?Math.max:Math.min,R=L(S+P),z=O(E-P),N=[[f=A(S)]];for(a=R;a*C=0;i--)a[u-i]=t[f][i],o[u-i]=e[f][i];for(s.push({x:a,y:o,bicubic:l}),i=f,a=[],o=[];i>=0;i--)a[f-i]=t[i][0],o[f-i]=e[i][0];return s.push({x:a,y:o,bicubic:c}),s}},20347:function(t,e,n){"use strict";var r=n(89298),i=n(1426).extendFlat;t.exports=function(t,e,n){var a,o,s,l,c,u,f,h,d,p,g,v,m,y,b=t["_"+e],x=t[e+"axis"],w=x._gridlines=[],_=x._minorgridlines=[],k=x._boundarylines=[],T=t["_"+n],M=t[n+"axis"];"array"===x.tickmode&&(x.tickvals=b.slice());var A=t._xctrl,S=t._yctrl,E=A[0].length,C=A.length,P=t._a.length,L=t._b.length;r.prepTicks(x),"array"===x.tickmode&&delete x.tickvals;var O=x.smoothing?3:1;function I(r){var i,a,o,s,l,c,u,f,d,p,g,v,m=[],y=[],b={};if("b"===e)for(a=t.b2j(r),o=Math.floor(Math.max(0,Math.min(L-2,a))),s=a-o,b.length=L,b.crossLength=P,b.xy=function(e){return t.evalxy([],e,a)},b.dxy=function(e,n){return t.dxydi([],e,o,n,s)},i=0;i0&&(d=t.dxydi([],i-1,o,0,s),m.push(l[0]+d[0]/3),y.push(l[1]+d[1]/3),p=t.dxydi([],i-1,o,1,s),m.push(f[0]-p[0]/3),y.push(f[1]-p[1]/3)),m.push(f[0]),y.push(f[1]),l=f;else for(i=t.a2i(r),c=Math.floor(Math.max(0,Math.min(P-2,i))),u=i-c,b.length=P,b.crossLength=L,b.xy=function(e){return t.evalxy([],i,e)},b.dxy=function(e,n){return t.dxydj([],c,e,u,n)},a=0;a0&&(g=t.dxydj([],c,a-1,u,0),m.push(l[0]+g[0]/3),y.push(l[1]+g[1]/3),v=t.dxydj([],c,a-1,u,1),m.push(f[0]-v[0]/3),y.push(f[1]-v[1]/3)),m.push(f[0]),y.push(f[1]),l=f;return b.axisLetter=e,b.axis=x,b.crossAxis=M,b.value=r,b.constvar=n,b.index=h,b.x=m,b.y=y,b.smoothing=M.smoothing,b}function D(r){var i,a,o,s,l,c=[],u=[],f={};if(f.length=b.length,f.crossLength=T.length,"b"===e)for(o=Math.max(0,Math.min(L-2,r)),l=Math.min(1,Math.max(0,r-o)),f.xy=function(e){return t.evalxy([],e,r)},f.dxy=function(e,n){return t.dxydi([],e,o,n,l)},i=0;ib.length-1||w.push(i(D(o),{color:x.gridcolor,width:x.gridwidth,dash:x.griddash}));for(h=u;hb.length-1)&&!(g<0||g>b.length-1))for(v=b[s],m=b[g],a=0;ab[b.length-1]||_.push(i(I(p),{color:x.minorgridcolor,width:x.minorgridwidth,dash:x.minorgriddash}));x.startline&&k.push(i(D(0),{color:x.startlinecolor,width:x.startlinewidth})),x.endline&&k.push(i(D(b.length-1),{color:x.endlinecolor,width:x.endlinewidth}))}else{for(l=5e-15,u=(c=[Math.floor((b[b.length-1]-x.tick0)/x.dtick*(1+l)),Math.ceil((b[0]-x.tick0)/x.dtick/(1+l))].sort((function(t,e){return t-e})))[0],f=c[1],h=u;h<=f;h++)d=x.tick0+x.dtick*h,w.push(i(I(d),{color:x.gridcolor,width:x.gridwidth,dash:x.griddash}));for(h=u-1;hb[b.length-1]||_.push(i(I(p),{color:x.minorgridcolor,width:x.minorgridwidth,dash:x.minorgriddash}));x.startline&&k.push(i(I(b[0]),{color:x.startlinecolor,width:x.startlinewidth})),x.endline&&k.push(i(I(b[b.length-1]),{color:x.endlinecolor,width:x.endlinewidth}))}}},83311:function(t,e,n){"use strict";var r=n(89298),i=n(1426).extendFlat;t.exports=function(t,e){var n,a,o,s=e._labels=[],l=e._gridlines;for(n=0;ne.length&&(t=t.slice(0,e.length)):t=[],i=0;i90&&(d-=180,l=-l),{angle:d,flip:l,p:t.c2p(r,e,n),offsetMultplier:c}}},89740:function(t,e,n){"use strict";var r=n(39898),i=n(91424),a=n(27669),o=n(67961),s=n(11651),l=n(63893),c=n(71828),u=c.strRotate,f=c.strTranslate,h=n(18783);function d(t,e,n,s,l,c,u){var f="const-"+l+"-lines",h=n.selectAll("."+f).data(c);h.enter().append("path").classed(f,!0).style("vector-effect",u?"none":"non-scaling-stroke"),h.each((function(n){var s=n,l=s.x,c=s.y,u=a([],l,t.c2p),f=a([],c,e.c2p),h="M"+o(u,f,s.smoothing);r.select(this).attr("d",h).style("stroke-width",s.width).style("stroke",s.color).style("stroke-dasharray",i.dashStyle(s.dash,s.width)).style("fill","none")})),h.exit().remove()}function p(t,e,n,a,o,c,h,d){var p=c.selectAll("text."+d).data(h);p.enter().append("text").classed(d,!0);var g=0,v={};return p.each((function(o,c){var h;if("auto"===o.axis.tickangle)h=s(a,e,n,o.xy,o.dxy);else{var d=(o.axis.tickangle+180)*Math.PI/180;h=s(a,e,n,o.xy,[Math.cos(d),Math.sin(d)])}c||(v={angle:h.angle,flip:h.flip});var p=(o.endAnchor?-1:1)*h.flip,m=r.select(this).attr({"text-anchor":p>0?"start":"end","data-notex":1}).call(i.font,o.font).text(o.text).call(l.convertToTspans,t),y=i.bBox(this);m.attr("transform",f(h.p[0],h.p[1])+u(h.angle)+f(o.axis.labelpadding*p,.3*y.height)),g=Math.max(g,y.width+o.axis.labelpadding)})),p.exit().remove(),v.maxExtent=g,v}t.exports=function(t,e,n,i){var l=t._context.staticPlot,u=e.xaxis,f=e.yaxis,h=t._fullLayout._clips;c.makeTraceGroups(i,n,"trace").each((function(e){var n=r.select(this),i=e[0],g=i.trace,v=g.aaxis,y=g.baxis,b=c.ensureSingle(n,"g","minorlayer"),x=c.ensureSingle(n,"g","majorlayer"),w=c.ensureSingle(n,"g","boundarylayer"),_=c.ensureSingle(n,"g","labellayer");n.style("opacity",g.opacity),d(u,f,x,0,"a",v._gridlines,!0),d(u,f,x,0,"b",y._gridlines,!0),d(u,f,b,0,"a",v._minorgridlines,!0),d(u,f,b,0,"b",y._minorgridlines,!0),d(u,f,w,0,"a-boundary",v._boundarylines,l),d(u,f,w,0,"b-boundary",y._boundarylines,l);var k=p(t,u,f,g,0,_,v._labels,"a-label"),T=p(t,u,f,g,0,_,y._labels,"b-label");!function(t,e,n,r,i,a,o,l){var u,f,h,d,p=c.aggNums(Math.min,null,n.a),g=c.aggNums(Math.max,null,n.a),v=c.aggNums(Math.min,null,n.b),y=c.aggNums(Math.max,null,n.b);u=.5*(p+g),f=v,h=n.ab2xy(u,f,!0),d=n.dxyda_rough(u,f),void 0===o.angle&&c.extendFlat(o,s(n,i,a,h,n.dxydb_rough(u,f))),m(t,e,n,0,h,d,n.aaxis,i,a,o,"a-title"),u=p,f=.5*(v+y),h=n.ab2xy(u,f,!0),d=n.dxydb_rough(u,f),void 0===l.angle&&c.extendFlat(l,s(n,i,a,h,n.dxyda_rough(u,f))),m(t,e,n,0,h,d,n.baxis,i,a,l,"b-title")}(t,_,g,0,u,f,k,T),function(t,e,n,r,i){var s,l,u,f,h=n.select("#"+t._clipPathId);h.size()||(h=n.append("clipPath").classed("carpetclip",!0));var d=c.ensureSingle(h,"path","carpetboundary"),p=e.clipsegments,g=[];for(f=0;f90&&y<270,x=r.select(this);x.text(h.title.text).call(l.convertToTspans,t),b&&(w=(-l.lineCount(x)+v)*g*a-w),x.attr("transform",f(e.p[0],e.p[1])+u(e.angle)+f(0,w)).attr("text-anchor","middle").call(i.font,h.title.font)})),x.exit().remove()}},11435:function(t,e,n){"use strict";var r=n(35509),i=n(65888).findBin,a=n(45664),o=n(20349),s=n(54495),l=n(73057);t.exports=function(t){var e=t._a,n=t._b,c=e.length,u=n.length,f=t.aaxis,h=t.baxis,d=e[0],p=e[c-1],g=n[0],v=n[u-1],m=e[e.length-1]-e[0],y=n[n.length-1]-n[0],b=m*r.RELATIVE_CULL_TOLERANCE,x=y*r.RELATIVE_CULL_TOLERANCE;d-=b,p+=b,g-=x,v+=x,t.isVisible=function(t,e){return t>d&&tg&&ep||ev},t.setScale=function(){var e=t._x,n=t._y,r=a(t._xctrl,t._yctrl,e,n,f.smoothing,h.smoothing);t._xctrl=r[0],t._yctrl=r[1],t.evalxy=o([t._xctrl,t._yctrl],c,u,f.smoothing,h.smoothing),t.dxydi=s([t._xctrl,t._yctrl],f.smoothing,h.smoothing),t.dxydj=l([t._xctrl,t._yctrl],f.smoothing,h.smoothing)},t.i2a=function(t){var n=Math.max(0,Math.floor(t[0]),c-2),r=t[0]-n;return(1-r)*e[n]+r*e[n+1]},t.j2b=function(t){var e=Math.max(0,Math.floor(t[1]),c-2),r=t[1]-e;return(1-r)*n[e]+r*n[e+1]},t.ij2ab=function(e){return[t.i2a(e[0]),t.j2b(e[1])]},t.a2i=function(t){var n=Math.max(0,Math.min(i(t,e),c-2)),r=e[n],a=e[n+1];return Math.max(0,Math.min(c-1,n+(t-r)/(a-r)))},t.b2j=function(t){var e=Math.max(0,Math.min(i(t,n),u-2)),r=n[e],a=n[e+1];return Math.max(0,Math.min(u-1,e+(t-r)/(a-r)))},t.ab2ij=function(e){return[t.a2i(e[0]),t.b2j(e[1])]},t.i2c=function(e,n){return t.evalxy([],e,n)},t.ab2xy=function(r,i,a){if(!a&&(re[c-1]|in[u-1]))return[!1,!1];var o=t.a2i(r),s=t.b2j(i),l=t.evalxy([],o,s);if(a){var f,h,d,p,g=0,v=0,m=[];re[c-1]?(f=c-2,h=1,g=(r-e[c-1])/(e[c-1]-e[c-2])):h=o-(f=Math.max(0,Math.min(c-2,Math.floor(o)))),in[u-1]?(d=u-2,p=1,v=(i-n[u-1])/(n[u-1]-n[u-2])):p=s-(d=Math.max(0,Math.min(u-2,Math.floor(s)))),g&&(t.dxydi(m,f,d,h,p),l[0]+=m[0]*g,l[1]+=m[1]*g),v&&(t.dxydj(m,f,d,h,p),l[0]+=m[0]*v,l[1]+=m[1]*v)}return l},t.c2p=function(t,e,n){return[e.c2p(t[0]),n.c2p(t[1])]},t.p2x=function(t,e,n){return[e.p2c(t[0]),n.p2c(t[1])]},t.dadi=function(t){var n=Math.max(0,Math.min(e.length-2,t));return e[n+1]-e[n]},t.dbdj=function(t){var e=Math.max(0,Math.min(n.length-2,t));return n[e+1]-n[e]},t.dxyda=function(e,n,r,i){var a=t.dxydi(null,e,n,r,i),o=t.dadi(e,r);return[a[0]/o,a[1]/o]},t.dxydb=function(e,n,r,i){var a=t.dxydj(null,e,n,r,i),o=t.dbdj(n,i);return[a[0]/o,a[1]/o]},t.dxyda_rough=function(e,n,r){var i=m*(r||.1),a=t.ab2xy(e+i,n,!0),o=t.ab2xy(e-i,n,!0);return[.5*(a[0]-o[0])/i,.5*(a[1]-o[1])/i]},t.dxydb_rough=function(e,n,r){var i=y*(r||.1),a=t.ab2xy(e,n+i,!0),o=t.ab2xy(e,n-i,!0);return[.5*(a[0]-o[0])/i,.5*(a[1]-o[1])/i]},t.dpdx=function(t){return t._m},t.dpdy=function(t){return t._m}}},72505:function(t,e,n){"use strict";var r=n(71828);t.exports=function(t,e,n){var i,a,o,s=[],l=[],c=t[0].length,u=t.length;function f(e,n){var r,i=0,a=0;return e>0&&void 0!==(r=t[n][e-1])&&(a++,i+=r),e0&&void 0!==(r=t[n-1][e])&&(a++,i+=r),n0&&a0&&i1e-5);return r.log("Smoother converged to",T,"after",M,"iterations"),t}},19237:function(t,e,n){"use strict";var r=n(71828).isArray1D;t.exports=function(t,e,n){var i=n("x"),a=i&&i.length,o=n("y"),s=o&&o.length;if(!a&&!s)return!1;if(e._cheater=!i,a&&!r(i)||s&&!r(o))e._length=null;else{var l=a?i.length:1/0;s&&(l=Math.min(l,o.length)),e.a&&e.a.length&&(l=Math.min(l,e.a.length)),e.b&&e.b.length&&(l=Math.min(l,e.b.length)),e._length=l}return!0}},69568:function(t,e,n){"use strict";var r=n(5386).f,i=n(19316),a=n(50693),o=n(9012),s=n(22399).defaultLine,l=n(1426).extendFlat,c=i.marker.line;t.exports=l({locations:{valType:"data_array",editType:"calc"},locationmode:i.locationmode,z:{valType:"data_array",editType:"calc"},geojson:l({},i.geojson,{}),featureidkey:i.featureidkey,text:l({},i.text,{}),hovertext:l({},i.hovertext,{}),marker:{line:{color:l({},c.color,{dflt:s}),width:l({},c.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style"},editType:"calc"},selected:{marker:{opacity:i.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:i.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:l({},o.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:r(),showlegend:l({},o.showlegend,{dflt:!1})},a("",{cLetter:"z",editTypeOverride:"calc"}))},38675:function(t,e,n){"use strict";var r=n(92770),i=n(50606).BADNUM,a=n(78803),o=n(75225),s=n(66279);function l(t){return t&&"string"===typeof t}t.exports=function(t,e){var n,c=e._length,u=new Array(c);n=e.geojson?function(t){return l(t)||r(t)}:l;for(var f=0;f")}}(t,f,o),[t]}},51319:function(t,e,n){"use strict";t.exports={attributes:n(69568),supplyDefaults:n(61869),colorbar:n(61243),calc:n(38675),calcGeoJSON:n(99841).calcGeoJSON,plot:n(99841).plot,style:n(99636).style,styleOnSelect:n(99636).styleOnSelect,hoverPoints:n(42300),eventData:n(92069),selectPoints:n(81253),moduleType:"trace",name:"choropleth",basePlotModule:n(44622),categories:["geo","noOpacity","showLegend"],meta:{}}},99841:function(t,e,n){"use strict";var r=n(39898),i=n(71828),a=n(41327),o=n(90973).getTopojsonFeatures,s=n(71739).findExtremes,l=n(99636).style;t.exports={calcGeoJSON:function(t,e){for(var n=t[0].trace,r=e[n.geo],i=r._subplot,l=n.locationmode,c=n._length,u="geojson-id"===l?a.extractTraceFeature(t):o(n,i.topojson),f=[],h=[],d=0;d=0;r--){var i=n[r].id;if("string"===typeof i&&0===i.indexOf("water"))for(var a=r+1;a=0;n--)t.removeLayer(e[n][1])},s.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},t.exports=function(t,e){var n=e[0].trace,i=new o(t,n.uid),a=i.sourceId,s=r(e),l=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:s.geojson}),i._addLayers(s,l),e[0].trace._glTrace=i,i}},12674:function(t,e,n){"use strict";var r=n(50693),i=n(12663).axisHoverFormat,a=n(5386).f,o=n(2418),s=n(9012),l=n(1426).extendFlat,c={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:a({editType:"calc"},{keys:["norm"]}),uhoverformat:i("u",1),vhoverformat:i("v",1),whoverformat:i("w",1),xhoverformat:i("x"),yhoverformat:i("y"),zhoverformat:i("z"),showlegend:l({},s.showlegend,{dflt:!1})};l(c,r("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"})),["opacity","lightposition","lighting"].forEach((function(t){c[t]=o[t]})),c.hoverinfo=l({},s.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"}),c.transforms=void 0,t.exports=c},31371:function(t,e,n){"use strict";var r=n(78803);t.exports=function(t,e){for(var n=e.u,i=e.v,a=e.w,o=Math.min(e.x.length,e.y.length,e.z.length,n.length,i.length,a.length),s=-1/0,l=1/0,c=0;co.level||o.starts.length&&a===o.level)}break;case"constraint":if(r.prefixBoundary=!1,r.edgepaths.length)return;var s=r.x.length,l=r.y.length,c=-1/0,u=1/0;for(n=0;n":d>c&&(r.prefixBoundary=!0);break;case"<":(dc||r.starts.length&&h===u)&&(r.prefixBoundary=!0);break;case"][":f=Math.min(d[0],d[1]),h=Math.max(d[0],d[1]),fc&&(r.prefixBoundary=!0)}}}},90654:function(t,e,n){"use strict";var r=n(21081),i=n(86068),a=n(53572);t.exports={min:"zmin",max:"zmax",calc:function(t,e,n){var o=e.contours,s=e.line,l=o.size||1,c=o.coloring,u=i(e,{isColorbar:!0});if("heatmap"===c){var f=r.extractOpts(e);n._fillgradient=f.reversescale?r.flipScale(f.colorscale):f.colorscale,n._zrange=[f.min,f.max]}else"fill"===c&&(n._fillcolor=u);n._line={color:"lines"===c?u:s.color,width:!1!==o.showlines?s.width:0,dash:s.dash},n._levels={start:o.start,end:a(o),size:l}}}},36914:function(t){"use strict";t.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(t,e,n){"use strict";var r=n(92770),i=n(14523),a=n(7901),o=a.addOpacity,s=a.opacity,l=n(74808),c=l.CONSTRAINT_REDUCTION,u=l.COMPARISON_OPS2;t.exports=function(t,e,n,a,l,f){var h,d,p,g=e.contours,v=n("contours.operation");g._operation=c[v],function(t,e){var n;-1===u.indexOf(e.operation)?(t("contours.value",[0,1]),Array.isArray(e.value)?e.value.length>2?e.value=e.value.slice(2):0===e.length?e.value=[0,1]:e.length<2?(n=parseFloat(e.value[0]),e.value=[n,n+1]):e.value=[parseFloat(e.value[0]),parseFloat(e.value[1])]:r(e.value)&&(n=parseFloat(e.value),e.value=[n,n+1])):(t("contours.value",0),r(e.value)||(Array.isArray(e.value)?e.value=parseFloat(e.value[0]):e.value=0))}(n,g),"="===v?h=g.showlines=!0:(h=n("contours.showlines"),p=n("fillcolor",o((t.line||{}).color||l,.5))),h&&(d=n("line.color",p&&s(p)?o(e.fillcolor,1):l),n("line.width",2),n("line.dash")),n("line.smoothing"),i(n,a,d,f)}},64237:function(t,e,n){"use strict";var r=n(74808),i=n(92770);function a(t,e){var n,a=Array.isArray(e);function o(t){return i(t)?+t:null}return-1!==r.COMPARISON_OPS2.indexOf(t)?n=o(a?e[0]:e):-1!==r.INTERVAL_OPS.indexOf(t)?n=a?[o(e[0]),o(e[1])]:[o(e),o(e)]:-1!==r.SET_OPS.indexOf(t)&&(n=a?e.map(o):[o(e)]),n}function o(t){return function(e){e=a(t,e);var n=Math.min(e[0],e[1]),r=Math.max(e[0],e[1]);return{start:n,end:r,size:r-n}}}function s(t){return function(e){return{start:e=a(t,e),end:1/0,size:1/0}}}t.exports={"[]":o("[]"),"][":o("]["),">":s(">"),"<":s("<"),"=":s("=")}},67217:function(t){"use strict";t.exports=function(t,e,n,r){var i=r("contours.start"),a=r("contours.end"),o=!1===i||!1===a,s=n("contours.size");!(o?e.autocontour=!0:n("autocontour",!1))&&s||n("ncontours")}},84857:function(t,e,n){"use strict";var r=n(71828);function i(t){return r.extendFlat({},t,{edgepaths:r.extendDeep([],t.edgepaths),paths:r.extendDeep([],t.paths),starts:r.extendDeep([],t.starts)})}t.exports=function(t,e){var n,a,o,s=function(t){return t.reverse()},l=function(t){return t};switch(e){case"=":case"<":return t;case">":for(1!==t.length&&r.warn("Contour data invalid for the specified inequality operation."),a=t[0],n=0;n1e3){r.warn("Too many contours, clipping at 1000",t);break}return l}},53572:function(t){"use strict";t.exports=function(t){return t.end+t.size/1e6}},81696:function(t,e,n){"use strict";var r=n(71828),i=n(36914);function a(t,e,n,r){return Math.abs(t[0]-e[0])20&&e?208===t||1114===t?r=0===n[0]?1:-1:a=0===n[1]?1:-1:-1!==i.BOTTOMSTART.indexOf(t)?a=1:-1!==i.LEFTSTART.indexOf(t)?r=1:-1!==i.TOPSTART.indexOf(t)?a=-1:r=-1,[r,a]}(h,n,e),p=[l(t,e,[-d[0],-d[1]])],g=t.z.length,v=t.z[0].length,m=e.slice(),y=d.slice();for(u=0;u<1e4;u++){if(h>20?(h=i.CHOOSESADDLE[h][(d[0]||d[1])<0?0:1],t.crossings[f]=i.SADDLEREMAINDER[h]):delete t.crossings[f],!(d=i.NEWDELTA[h])){r.log("Found bad marching index:",h,e,t.level);break}p.push(l(t,e,d)),e[0]+=d[0],e[1]+=d[1],f=e.join(","),a(p[p.length-1],p[p.length-2],s,c)&&p.pop();var b=d[0]&&(e[0]<0||e[0]>v-2)||d[1]&&(e[1]<0||e[1]>g-2);if(e[0]===m[0]&&e[1]===m[1]&&d[0]===y[0]&&d[1]===y[1]||n&&b)break;h=t.crossings[f]}1e4===u&&r.log("Infinite loop in contour?");var x,w,_,k,T,M,A,S,E,C,P,L=a(p[0],p[p.length-1],s,c),O=0,I=.2*t.smoothing,D=[],R=0;for(u=1;u=R;u--)if((x=D[u])=R&&x+D[w]S&&E--,t.edgepaths[E]=P.concat(p,C));break}F||(t.edgepaths[S]=p.concat(C))}for(S=0;St?0:1)+(e[0][1]>t?0:2)+(e[1][1]>t?0:4)+(e[1][0]>t?0:8);return 5===n||10===n?t>(e[0][0]+e[0][1]+e[1][0]+e[1][1])/4?5===n?713:1114:5===n?104:208:15===n?0:n}t.exports=function(t){var e,n,a,o,s,l,c,u,f,h=t[0].z,d=h.length,p=h[0].length,g=2===d||2===p;for(n=0;n=0&&(r=y,s=l):Math.abs(n[1]-r[1])<.01?Math.abs(n[1]-y[1])<.01&&(y[0]-n[0])*(r[0]-y[0])>=0&&(r=y,s=l):i.log("endpt to newendpt is not vert. or horz.",n,r,y)}if(n=r,s>=0)break;f+="L"+r}if(s===t.edgepaths.length){i.log("unclosed perimeter path");break}h=s,(p=-1===d.indexOf(h))&&(h=d[0],f+="Z")}for(h=0;hr.center?r.right-s:s-r.left)/(u+Math.abs(Math.sin(c)*o)),d=(l>r.middle?r.bottom-l:l-r.top)/(Math.abs(f)+Math.cos(c)*o);if(h<1||d<1)return 1/0;var p=m.EDGECOST*(1/(h-1)+1/(d-1));p+=m.ANGLECOST*c*c;for(var g=s-u,v=l-f,y=s+u,b=l+f,x=0;x2*m.MAXCOST)break;d&&(s/=2),l=(o=c-s/2)+1.5*s}if(h<=m.MAXCOST)return u},e.addLabelData=function(t,e,n,r){var i=e.fontSize,a=e.width+i/3,o=Math.max(0,e.height-i/3),s=t.x,l=t.y,c=t.theta,u=Math.sin(c),f=Math.cos(c),h=function(t,e){return[s+t*f-e*u,l+t*u+e*f]},d=[h(-a/2,-o/2),h(-a/2,o/2),h(a/2,o/2),h(a/2,-o/2)];n.push({text:e.text,x:s,y:l,dy:e.dy,theta:c,level:e.level,width:a,height:o}),r.push(d)},e.drawLabels=function(t,e,n,a,o){var l=t.selectAll("text").data(e,(function(t){return t.text+","+t.x+","+t.y+","+t.theta}));if(l.exit().remove(),l.enter().append("text").attr({"data-notex":1,"text-anchor":"middle"}).each((function(t){var e=t.x+Math.sin(t.theta)*t.dy,i=t.y-Math.cos(t.theta)*t.dy;r.select(this).text(t.text).attr({x:e,y:i,transform:"rotate("+180*t.theta/Math.PI+" "+e+" "+i+")"}).call(s.convertToTspans,n)})),o){for(var c="",u=0;un.end&&(n.start=n.end=(n.start+n.end)/2),t._input.contours||(t._input.contours={}),i.extendFlat(t._input.contours,{start:n.start,end:n.end,size:n.size}),t._input.autocontour=!0}else if("constraint"!==n.type){var c,u=n.start,f=n.end,h=t._input.contours;u>f&&(n.start=h.start=f,f=n.end=h.end=u,u=n.start),n.size>0||(c=u===f?1:a(u,f,t.ncontours).dtick,h.size=n.size=c)}}},84426:function(t,e,n){"use strict";var r=n(39898),i=n(91424),a=n(70035),o=n(86068);t.exports=function(t){var e=r.select(t).selectAll("g.contour");e.style("opacity",(function(t){return t[0].trace.opacity})),e.each((function(t){var e=r.select(this),n=t[0].trace,a=n.contours,s=n.line,l=a.size||1,c=a.start,u="constraint"===a.type,f=!u&&"lines"===a.coloring,h=!u&&"fill"===a.coloring,d=f||h?o(n):null;e.selectAll("g.contourlevel").each((function(t){r.select(this).selectAll("path").call(i.lineGroupStyle,s.width,f?d(t.level):s.color,s.dash)}));var p=a.labelfont;if(e.selectAll("g.contourlabels text").each((function(t){i.font(r.select(this),{family:p.family,size:p.size,color:p.color||(f?d(t.level):s.color)})})),u)e.selectAll("g.contourfill path").style("fill",n.fillcolor);else if(h){var g;e.selectAll("g.contourfill path").style("fill",(function(t){return void 0===g&&(g=t.level),d(t.level+.5*l)})),void 0===g&&(g=c),e.selectAll("g.contourbg path").style("fill",d(g-.5*l))}})),a(t)}},8724:function(t,e,n){"use strict";var r=n(1586),i=n(14523);t.exports=function(t,e,n,a,o){var s,l=n("contours.coloring"),c="";"fill"===l&&(s=n("contours.showlines")),!1!==s&&("lines"!==l&&(c=n("line.color","#000")),n("line.width",.5),n("line.dash")),"none"!==l&&(!0!==t.showlegend&&(e.showlegend=!1),e._dfltShowLegend=!1,r(t,e,a,n,{prefix:"",cLetter:"z"})),n("line.smoothing"),i(n,a,c,o)}},88085:function(t,e,n){"use strict";var r=n(21606),i=n(70600),a=n(50693),o=n(1426).extendFlat,s=i.contours;t.exports=o({carpet:{valType:"string",editType:"calc"},z:r.z,a:r.x,a0:r.x0,da:r.dx,b:r.y,b0:r.y0,db:r.dy,text:r.text,hovertext:r.hovertext,transpose:r.transpose,atype:r.xtype,btype:r.ytype,fillcolor:i.fillcolor,autocontour:i.autocontour,ncontours:i.ncontours,contours:{type:s.type,start:s.start,end:s.end,size:s.size,coloring:{valType:"enumerated",values:["fill","lines","none"],dflt:"fill",editType:"calc"},showlines:s.showlines,showlabels:s.showlabels,labelfont:s.labelfont,labelformat:s.labelformat,operation:s.operation,value:s.value,editType:"calc",impliedEdits:{autocontour:!1}},line:{color:i.line.color,width:i.line.width,dash:i.line.dash,smoothing:i.line.smoothing,editType:"plot"},transforms:void 0},a("",{cLetter:"z",autoColorDflt:!1}))},59885:function(t,e,n){"use strict";var r=n(78803),i=n(71828),a=n(68296),o=n(4742),s=n(824),l=n(43907),c=n(70769),u=n(75005),f=n(22882),h=n(18670);t.exports=function(t,e){var n=e._carpetTrace=f(t,e);if(n&&n.visible&&"legendonly"!==n.visible){if(!e.a||!e.b){var d=t.data[n.index],p=t.data[e.index];p.a||(p.a=d.a),p.b||(p.b=d.b),u(p,e,e._defaultColor,t._fullLayout)}var g=function(t,e){var n,u,f,h,d,p,g,v=e._carpetTrace,m=v.aaxis,y=v.baxis;m._minDtick=0,y._minDtick=0,i.isArray1D(e.z)&&a(e,m,y,"a","b",["z"]),n=e._a=e._a||e.a,h=e._b=e._b||e.b,n=n?m.makeCalcdata(e,"_a"):[],h=h?y.makeCalcdata(e,"_b"):[],u=e.a0||0,f=e.da||1,d=e.b0||0,p=e.db||1,g=e._z=o(e._z||e.z,e.transpose),e._emptypoints=l(g),s(g,e._emptypoints);var b=i.maxRowLength(g),x="scaled"===e.xtype?"":n,w=c(e,x,u,f,b,m),_="scaled"===e.ytype?"":h,k=c(e,_,d,p,g.length,y),T={a:w,b:k,z:g};return"levels"===e.contours.type&&"none"!==e.contours.coloring&&r(t,e,{vals:g,containerStr:"",cLetter:"z"}),[T]}(t,e);return h(e,e._z),g}}},75005:function(t,e,n){"use strict";var r=n(71828),i=n(67684),a=n(88085),o=n(83179),s=n(67217),l=n(8724);t.exports=function(t,e,n,c){function u(n,i){return r.coerce(t,e,a,n,i)}if(u("carpet"),t.a&&t.b){if(!i(t,e,u,c,"a","b"))return void(e.visible=!1);u("text"),"constraint"===u("contours.type")?o(t,e,u,c,n,{hasHover:!1}):(s(t,e,u,(function(n){return r.coerce2(t,e,a,n)})),l(t,e,u,c,{hasHover:!1}))}else e._defaultColor=n,e._length=null}},93740:function(t,e,n){"use strict";t.exports={attributes:n(88085),supplyDefaults:n(75005),colorbar:n(90654),calc:n(59885),plot:n(51048),style:n(84426),moduleType:"trace",name:"contourcarpet",basePlotModule:n(93612),categories:["cartesian","svg","carpet","contour","symbols","showLegend","hasLines","carpetDependent","noHover","noSortingByValue"],meta:{}}},51048:function(t,e,n){"use strict";var r=n(39898),i=n(27669),a=n(67961),o=n(91424),s=n(71828),l=n(87678),c=n(81696),u=n(29854),f=n(36914),h=n(84857),d=n(87558),p=n(20083),g=n(22882),v=n(4536);function m(t,e,n){var r=t.getPointAtLength(e),i=t.getPointAtLength(n),a=i.x-r.x,o=i.y-r.y,s=Math.sqrt(a*a+o*o);return[a/s,o/s]}function y(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);return[t[0]/e,t[1]/e]}function b(t,e){var n=Math.abs(t[0]*e[0]+t[1]*e[1]);return Math.sqrt(1-n*n)/n}t.exports=function(t,e,n,x){var w=e.xaxis,_=e.yaxis;s.makeTraceGroups(x,n,"contour").each((function(n){var x=r.select(this),k=n[0],T=k.trace,M=T._carpetTrace=g(t,T),A=t.calcdata[M.index][0];if(M.visible&&"legendonly"!==M.visible){var S=k.a,E=k.b,C=T.contours,P=d(C,e,k),L="constraint"===C.type,O=C._operation,I=L?"="===O?"lines":"fill":C.coloring,D=[[S[0],E[E.length-1]],[S[S.length-1],E[E.length-1]],[S[S.length-1],E[0]],[S[0],E[0]]];l(P);var R=1e-8*(S[S.length-1]-S[0]),z=1e-8*(E[E.length-1]-E[0]);c(P,R,z);var N,j,F,B,U=P;"constraint"===C.type&&(U=h(P,O)),function(t,e){var n,r,i,a,o,s,l,c,u;for(n=0;n=0;B--)N=A.clipsegments[B],j=i([],N.x,w.c2p),F=i([],N.y,_.c2p),j.reverse(),F.reverse(),H.push(a(j,F,N.bicubic));var V="M"+H.join("L")+"Z";!function(t,e,n,r,o,l){var c,u,f,h,d=s.ensureSingle(t,"g","contourbg").selectAll("path").data("fill"!==l||o?[]:[0]);d.enter().append("path"),d.exit().remove();var p=[];for(h=0;h=0&&(h=C,p=g):Math.abs(f[1]-h[1])<_?Math.abs(f[1]-C[1])<_&&(C[0]-f[0])*(h[0]-C[0])>=0&&(h=C,p=g):s.log("endpt to newendpt is not vert. or horz.",f,h,C)}if(p>=0)break;y+=S(f,h),f=h}if(p===e.edgepaths.length){s.log("unclosed perimeter path");break}u=p,(x=-1===b.indexOf(u))&&(u=b[0],y+=S(f,h)+"Z",f=null)}for(u=0;ug&&(r.max=g),r.len=r.max-r.min}function v(t,e){var n,r=0,o=.1;return(Math.abs(t[0]-l)0?+d[u]:0),f.push({type:"Feature",geometry:{type:"Point",coordinates:m},properties:y})}}var x=o.extractOpts(e),w=x.reversescale?o.flipScale(x.colorscale):x.colorscale,_=w[0][1],k=["interpolate",["linear"],["heatmap-density"],0,a.opacity(_)<1?_:a.addOpacity(_,0)];for(u=1;u=0;n--)t.removeLayer(e[n][1])},o.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},t.exports=function(t,e){var n=e[0].trace,i=new a(t,n.uid),o=i.sourceId,s=r(e),l=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(o,{type:"geojson",data:s.geojson}),i._addLayers(s,l),i}},49789:function(t,e,n){"use strict";var r=n(71828);t.exports=function(t,e){for(var n=0;n"),l.color=function(t,e){var n=t.marker,i=e.mc||n.color,a=e.mlc||n.line.color,o=e.mlw||n.line.width;return r(i)?i:r(a)&&o?a:void 0}(u,h),[l]}}},51759:function(t,e,n){"use strict";t.exports={attributes:n(1285),layoutAttributes:n(10440),supplyDefaults:n(26199).supplyDefaults,crossTraceDefaults:n(26199).crossTraceDefaults,supplyLayoutDefaults:n(93138),calc:n(9532),crossTraceCalc:n(8984),plot:n(80461),style:n(68266).style,hoverPoints:n(63341),eventData:n(34598),selectPoints:n(81974),moduleType:"trace",name:"funnel",basePlotModule:n(93612),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}},10440:function(t){"use strict";t.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(t,e,n){"use strict";var r=n(71828),i=n(10440);t.exports=function(t,e,n){var a=!1;function o(n,a){return r.coerce(t,e,i,n,a)}for(var s=0;s path").each((function(t){if(!t.isBlank){var e=s.marker;r.select(this).call(a.fill,t.mc||e.color).call(a.stroke,t.mlc||e.line.color).call(i.dashLine,e.line.dash,t.mlw||e.line.width).style("opacity",s.selectedpoints&&!t.selected?o:1)}})),c(n,s,t),n.selectAll(".regions").each((function(){r.select(this).selectAll("path").style("stroke-width",0).call(a.fill,s.connector.fillcolor)})),n.selectAll(".lines").each((function(){var t=s.connector.line;i.lineGroupStyle(r.select(this).selectAll("path"),t.width,t.color,t.dash)}))}))}}},86807:function(t,e,n){"use strict";var r=n(34e3),i=n(9012),a=n(27670).Y,o=n(5386).f,s=n(5386).s,l=n(1426).extendFlat;t.exports={labels:r.labels,label0:r.label0,dlabel:r.dlabel,values:r.values,marker:{colors:r.marker.colors,line:{color:l({},r.marker.line.color,{dflt:null}),width:l({},r.marker.line.width,{dflt:1}),editType:"calc"},editType:"calc"},text:r.text,hovertext:r.hovertext,scalegroup:l({},r.scalegroup,{}),textinfo:l({},r.textinfo,{flags:["label","text","value","percent"]}),texttemplate:s({editType:"plot"},{keys:["label","color","value","text","percent"]}),hoverinfo:l({},i.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:o({},{keys:["label","color","value","text","percent"]}),textposition:l({},r.textposition,{values:["inside","none"],dflt:"inside"}),textfont:r.textfont,insidetextfont:r.insidetextfont,title:{text:r.title.text,font:r.title.font,position:l({},r.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:a({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(t,e,n){"use strict";var r=n(74875);e.name="funnelarea",e.plot=function(t,n,i,a){r.plotBasePlot(e.name,t,n,i,a)},e.clean=function(t,n,i,a){r.cleanBasePlot(e.name,t,n,i,a)}},89574:function(t,e,n){"use strict";var r=n(32354);t.exports={calc:function(t,e){return r.calc(t,e)},crossTraceCalc:function(t){r.crossTraceCalc(t,{type:"funnelarea"})}}},86282:function(t,e,n){"use strict";var r=n(71828),i=n(86807),a=n(27670).c,o=n(90769).handleText,s=n(37434).handleLabelsAndValues;t.exports=function(t,e,n,l){function c(n,a){return r.coerce(t,e,i,n,a)}var u=c("labels"),f=c("values"),h=s(u,f),d=h.len;if(e._hasLabels=h.hasLabels,e._hasValues=h.hasValues,!e._hasLabels&&e._hasValues&&(c("label0"),c("dlabel")),d){e._length=d,c("marker.line.width")&&c("marker.line.color",l.paper_bgcolor),c("marker.colors"),c("scalegroup");var p,g=c("text"),v=c("texttemplate");if(v||(p=c("textinfo",Array.isArray(g)?"text+percent":"percent")),c("hovertext"),c("hovertemplate"),v||p&&"none"!==p){var m=c("textposition");o(t,e,l,c,m,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}a(e,l,c),c("title.text")&&(c("title.position"),r.coerceFont(c,"title.font",l.font)),c("aspectratio"),c("baseratio")}else e.visible=!1}},10421:function(t,e,n){"use strict";t.exports={moduleType:"trace",name:"funnelarea",basePlotModule:n(6452),categories:["pie-like","funnelarea","showLegend"],attributes:n(86807),layoutAttributes:n(80097),supplyDefaults:n(86282),supplyLayoutDefaults:n(57402),calc:n(89574).calc,crossTraceCalc:n(89574).crossTraceCalc,plot:n(79187),style:n(71858),styleOne:n(63463),meta:{}}},80097:function(t,e,n){"use strict";var r=n(92774).hiddenlabels;t.exports={hiddenlabels:r,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}},57402:function(t,e,n){"use strict";var r=n(71828),i=n(80097);t.exports=function(t,e){function n(n,a){return r.coerce(t,e,i,n,a)}n("hiddenlabels"),n("funnelareacolorway",e.colorway),n("extendfunnelareacolors")}},79187:function(t,e,n){"use strict";var r=n(39898),i=n(91424),a=n(71828),o=a.strScale,s=a.strTranslate,l=n(63893),c=n(17295).toMoveInsideBar,u=n(72597),f=u.recordMinTextSize,h=u.clearMinTextSize,d=n(53581),p=n(14575),g=p.attachFxHandlers,v=p.determineInsideTextFont,m=p.layoutAreas,y=p.prerenderTitles,b=p.positionTitleOutside,x=p.formatSliceLabel;function w(t,e){return"l"+(e[0]-t[0])+","+(e[1]-t[1])}function _(t,e){return[.5*(t[0]+e[0]),.5*(t[1]+e[1])]}t.exports=function(t,e){var n=t._context.staticPlot,u=t._fullLayout;h("funnelarea",u),y(e,t),m(e,u._size),a.makeTraceGroups(u._funnelarealayer,e,"trace").each((function(e){var h=r.select(this),p=e[0],m=p.trace;!function(t){if(t.length){var e=t[0],n=e.trace,r=n.aspectratio,i=n.baseratio;i>.999&&(i=.999);var a,o,s,l=Math.pow(i,2),c=e.vTotal,u=c,f=c*l/(1-l)/c,h=[];for(h.push(E()),o=t.length-1;o>-1;o--)if(!(s=t[o]).hidden){var d=s.v/u;f+=d,h.push(E())}var p=1/0,g=-1/0;for(o=0;o-1;o--)if(!(s=t[o]).hidden){var M=h[T+=1][0],A=h[T][1];s.TL=[-M,A],s.TR=[M,A],s.BL=w,s.BR=k,s.pxmid=_(s.TR,s.BR),w=s.TL,k=s.TR}}function S(){var t=Math.sqrt(f);return{x:t,y:-t}}function E(){var t=S();return[t.x,t.y]}}(e),h.each((function(){var h=r.select(this).selectAll("g.slice").data(e);h.enter().append("g").classed("slice",!0),h.exit().remove(),h.each((function(o,s){if(o.hidden)r.select(this).selectAll("path,g").remove();else{o.pointNumber=o.i,o.curveNumber=m.index;var h=p.cx,y=p.cy,b=r.select(this),_=b.selectAll("path.surface").data([o]);_.enter().append("path").classed("surface",!0).style({"pointer-events":n?"none":"all"}),b.call(g,t,e);var k="M"+(h+o.TR[0])+","+(y+o.TR[1])+w(o.TR,o.BR)+w(o.BR,o.BL)+w(o.BL,o.TL)+"Z";_.attr("d",k),x(t,o,p);var T=d.castOption(m.textposition,o.pts),M=b.selectAll("g.slicetext").data(o.text&&"none"!==T?[0]:[]);M.enter().append("g").classed("slicetext",!0),M.exit().remove(),M.each((function(){var n=a.ensureSingle(r.select(this),"text","",(function(t){t.attr("data-notex",1)})),d=a.ensureUniformFontSize(t,v(m,o,u.font));n.text(o.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(i.font,d).call(l.convertToTspans,t);var p,g,b,x=i.bBox(n.node()),w=Math.min(o.BL[1],o.BR[1])+y,_=Math.max(o.TL[1],o.TR[1])+y;g=Math.max(o.TL[0],o.BL[0])+h,b=Math.min(o.TR[0],o.BR[0])+h,(p=c(g,b,w,_,x,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"})).fontSize=d.size,f(m.type,p,u),e[s].transform=p,a.setTransormAndDisplay(n,p)}))}}));var y=r.select(this).selectAll("g.titletext").data(m.title.text?[0]:[]);y.enter().append("g").classed("titletext",!0),y.exit().remove(),y.each((function(){var e=a.ensureSingle(r.select(this),"text","",(function(t){t.attr("data-notex",1)})),n=m.title.text;m._meta&&(n=a.templateString(n,m._meta)),e.text(n).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(i.font,m.title.font).call(l.convertToTspans,t);var c=b(p,u._size);e.attr("transform",s(c.x,c.y)+o(Math.min(1,c.scale))+s(c.tx,c.ty))}))}))}))}},71858:function(t,e,n){"use strict";var r=n(39898),i=n(63463),a=n(72597).resizeText;t.exports=function(t){var e=t._fullLayout._funnelarealayer.selectAll(".trace");a(t,e,"funnelarea"),e.each((function(t){var e=t[0].trace,n=r.select(this);n.style({opacity:e.opacity}),n.selectAll("path.surface").each((function(t){r.select(this).call(i,t,e)}))}))}},21606:function(t,e,n){"use strict";var r=n(82196),i=n(9012),a=n(41940),o=n(12663).axisHoverFormat,s=n(5386).f,l=n(5386).s,c=n(50693),u=n(1426).extendFlat;t.exports=u({z:{valType:"data_array",editType:"calc"},x:u({},r.x,{impliedEdits:{xtype:"array"}}),x0:u({},r.x0,{impliedEdits:{xtype:"scaled"}}),dx:u({},r.dx,{impliedEdits:{xtype:"scaled"}}),y:u({},r.y,{impliedEdits:{ytype:"array"}}),y0:u({},r.y0,{impliedEdits:{ytype:"scaled"}}),dy:u({},r.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:u({},r.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:u({},r.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:u({},r.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:u({},r.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:u({},r.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:u({},r.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:o("x"),yhoverformat:o("y"),zhoverformat:o("z",1),hovertemplate:s(),texttemplate:l({arrayOk:!1,editType:"plot"},{keys:["x","y","z","text"]}),textfont:a({editType:"plot",autoSize:!0,autoColor:!0,colorEditType:"style"}),showlegend:u({},i.showlegend,{dflt:!1})},{transforms:void 0},c("",{cLetter:"z",autoColorDflt:!1}))},90757:function(t,e,n){"use strict";var r=n(73972),i=n(71828),a=n(89298),o=n(42973),s=n(17562),l=n(78803),c=n(68296),u=n(4742),f=n(824),h=n(43907),d=n(70769),p=n(50606).BADNUM;function g(t){for(var e=[],n=t.length,r=0;rR){I("x scale is not linear");break}}if(b.length&&"fast"===L){var z=(b[b.length-1]-b[0])/(b.length-1),N=Math.abs(z/100);for(T=0;TN){I("y scale is not linear");break}}}var j=i.maxRowLength(k),F="scaled"===e.xtype?"":n,B=d(e,F,v,m,j,A),U="scaled"===e.ytype?"":b,H=d(e,U,x,w,k.length,S);P||(e._extremes[A._id]=a.findExtremes(A,B),e._extremes[S._id]=a.findExtremes(S,H));var V={x:B,y:H,z:k,text:e._text||e.text,hovertext:e._hovertext||e.hovertext};if(e.xperiodalignment&&y&&(V.orig_x=y),e.yperiodalignment&&_&&(V.orig_y=_),F&&F.length===B.length-1&&(V.xCenter=F),U&&U.length===H.length-1&&(V.yCenter=U),C&&(V.xRanges=M.xRanges,V.yRanges=M.yRanges,V.pts=M.pts),E||l(t,e,{vals:k,cLetter:"z"}),E&&e.contours&&"heatmap"===e.contours.coloring){var q={type:"contour"===e.type?"heatmap":"histogram2d",xcalendar:e.xcalendar,ycalendar:e.ycalendar};V.xfill=d(q,F,v,m,j,A),V.yfill=d(q,U,x,w,k.length,S)}return[V]}},4742:function(t,e,n){"use strict";var r=n(92770),i=n(71828),a=n(50606).BADNUM;t.exports=function(t,e,n,o){var s,l,c,u,f,h;function d(t){if(r(t))return+t}if(e&&e.transpose){for(s=0,f=0;f=0;o--)(s=((f[[(n=(a=h[o])[0])-1,i=a[1]]]||g)[2]+(f[[n+1,i]]||g)[2]+(f[[n,i-1]]||g)[2]+(f[[n,i+1]]||g)[2])/20)&&(l[a]=[n,i,s],h.splice(o,1),c=!0);if(!c)throw"findEmpties iterated with no new neighbors";for(a in l)f[a]=l[a],u.push(l[a])}return u.sort((function(t,e){return e[2]-t[2]}))}},46248:function(t,e,n){"use strict";var r=n(30211),i=n(71828),a=n(89298),o=n(21081).extractOpts;t.exports=function(t,e,n,s,l){l||(l={});var c,u,f,h,d=l.isContour,p=t.cd[0],g=p.trace,v=t.xa,m=t.ya,y=p.x,b=p.y,x=p.z,w=p.xCenter,_=p.yCenter,k=p.zmask,T=g.zhoverformat,M=y,A=b;if(!1!==t.index){try{f=Math.round(t.index[1]),h=Math.round(t.index[0])}catch(F){return void i.error("Error hovering on heatmap, pointNumber must be [row,col], found:",t.index)}if(f<0||f>=x[0].length||h<0||h>x.length)return}else{if(r.inbox(e-y[0],e-y[y.length-1],0)>0||r.inbox(n-b[0],n-b[b.length-1],0)>0)return;if(d){var S;for(M=[2*y[0]-y[1]],S=1;Sg&&(m=Math.max(m,Math.abs(t[a][o]-p)/(v-g))))}return m}t.exports=function(t,e){var n,i=1;for(o(t,e),n=0;n.01;n++)i=o(t,e,a(i));return i>.01&&r.log("interp2d didn't converge quickly",i),t}},58623:function(t,e,n){"use strict";var r=n(71828);t.exports=function(t,e){t("texttemplate");var n=r.extendFlat({},e.font,{color:"auto",size:"auto"});r.coerceFont(t,"textfont",n)}},70769:function(t,e,n){"use strict";var r=n(73972),i=n(71828).isArrayOrTypedArray;t.exports=function(t,e,n,a,o,s){var l,c,u,f=[],h=r.traceIs(t,"contour"),d=r.traceIs(t,"histogram"),p=r.traceIs(t,"gl2d");if(i(e)&&e.length>1&&!d&&"category"!==s.type){var g=e.length;if(!(g<=o))return h?e.slice(0,o):e.slice(0,o+1);if(h||p)f=e.slice(0,o);else if(1===o)f=[e[0]-.5,e[0]+.5];else{for(f=[1.5*e[0]-.5*e[1]],u=1;u0;)_=k.c2p(N[E]),E--;for(_0;)S=T.c2p(j[E]),E--;if(SWt||Wt>T._length))for(C=Ht;C$t||$t>k._length)){var Xt=u({x:Yt,y:Gt},I,t._fullLayout);Xt.x=Yt,Xt.y=Gt;var Kt=O.z[E][C];void 0===Kt?(Xt.z="",Xt.zLabel=""):(Xt.z=Kt,Xt.zLabel=s.tickText(jt,Kt,"hover").text);var Zt=O.text&&O.text[E]&&O.text[E][C];void 0!==Zt&&!1!==Zt||(Zt=""),Xt.text=Zt;var Jt=l.texttemplateString(zt,Xt,t._fullLayout._d3locale,Xt,I._meta||{});if(Jt){var Qt=Jt.split("
"),te=Qt.length,ee=0;for(P=0;P0&&(a=!0);for(var l=0;la){var o=a-n[t];return n[t]=a,o}}return 0},max:function(t,e,n,i){var a=i[e];if(r(a)){if(a=Number(a),!r(n[t]))return n[t]=a,a;if(n[t]c?t>o?t>1.1*i?i:t>1.1*a?a:o:t>s?s:t>l?l:c:Math.pow(10,Math.floor(Math.log(t)/Math.LN10))}function d(t,e,n,r,a,s){if(r&&t>o){var l=p(e,a,s),c=p(n,a,s),u=t===i?0:1;return l[u]!==c[u]}return Math.floor(n/t)-Math.floor(e/t)>.1}function p(t,e,n){var r=e.c2d(t,i,n).split("-");return""===r[0]&&(r.unshift(),r[0]="-"+r[0]),r}t.exports=function(t,e,n,r,a){var s,l,c=-1.1*e,h=-.1*e,d=t-h,p=n[0],g=n[1],v=Math.min(f(p+h,p+d,r,a),f(g+h,g+d,r,a)),m=Math.min(f(p+c,p+h,r,a),f(g+c,g+h,r,a));if(v>m&&mo){var y=s===i?1:6,b=s===i?"M12":"M1";return function(e,n){var o=r.c2d(e,i,a),s=o.indexOf("-",y);s>0&&(o=o.substr(0,s));var c=r.d2c(o,0,a);if(cn.r2l(j)&&(B=o.tickIncrement(B,x.size,!0,d)),D.start=n.l2r(B),N||i.nestedProperty(e,m+".start").set(D.start)}var U=x.end,H=n.r2l(I.end),V=void 0!==H;if((x.endFound||V)&&H!==n.r2l(U)){var q=V?H:i.aggNums(Math.max,null,p);D.end=n.l2r(q),V||i.nestedProperty(e,m+".start").set(D.end)}var G="autobin"+s;return!1===e._input[G]&&(e._input[m]=i.extendFlat({},e[m]||{}),delete e._input[G],delete e[G]),[D,p]}t.exports={calc:function(t,e){var n,a,d,p,g=[],v=[],m="h"===e.orientation,y=o.getFromId(t,m?e.yaxis:e.xaxis),b=m?"y":"x",x={x:"y",y:"x"}[b],w=e[b+"calendar"],_=e.cumulative,k=h(t,e,y,b),T=k[0],M=k[1],A="string"===typeof T.size,S=[],E=A?S:T,C=[],P=[],L=[],O=0,I=e.histnorm,D=e.histfunc,R=-1!==I.indexOf("density");_.enabled&&R&&(I=I.replace(/ ?density$/,""),R=!1);var z,N="max"===D||"min"===D?null:0,j=l.count,F=c[I],B=!1,U=function(t){return y.r2c(t,0,w)};for(i.isArrayOrTypedArray(e[x])&&"count"!==D&&(z=e[x],B="avg"===D,j=l[D]),n=U(T.start),d=U(T.end)+(n-o.tickIncrement(n,T.size,!1,w))/1e6;n=0&&p=0;r--)s(r);else if("increasing"===e){for(r=1;r=0;r--)t[r]+=t[r+1];"exclude"===n&&(t.push(0),t.shift())}}(v,_.direction,_.currentbin);var Z=Math.min(g.length,v.length),J=[],Q=0,tt=Z-1;for(n=0;n=Q;n--)if(v[n]){tt=n;break}for(n=Q;n<=tt;n++)if(r(g[n])&&r(v[n])){var et={p:g[n],s:v[n],b:0};_.enabled||(et.pts=L[n],W?et.ph0=et.ph1=L[n].length?M[L[n][0]]:g[n]:(e._computePh=!0,et.ph0=q(S[n]),et.ph1=q(S[n+1],!0))),J.push(et)}return 1===J.length&&(J[0].width1=o.tickIncrement(J[0].p,T.size,!1,w)-J[0].p),s(J,e),i.isArrayOrTypedArray(e.selectedpoints)&&i.tagSelected(J,e,X),J},calcAllAutoBins:h}},72406:function(t){"use strict";t.exports={eventDataKeys:["binNumber"]}},82222:function(t,e,n){"use strict";var r=n(71828),i=n(41675),a=n(73972).traceIs,o=n(26125),s=r.nestedProperty,l=n(99082).getAxisGroup,c=[{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"}],u=["x","y"];t.exports=function(t,e){var n,f,h,d,p,g,v,m=e._histogramBinOpts={},y=[],b={},x=[];function w(t,e){return r.coerce(n._input,n,n._module.attributes,t,e)}function _(t){return"v"===t.orientation?"x":"y"}function k(t,n,a){var o=t.uid+"__"+a;n||(n=o);var s=function(t,n){return i.getFromTrace({_fullLayout:e},t,n).type}(t,a),l=t[a+"calendar"]||"",c=m[n],u=!0;c&&(s===c.axType&&l===c.calendar?(u=!1,c.traces.push(t),c.dirs.push(a)):(n=o,s!==c.axType&&r.warn(["Attempted to group the bins of trace",t.index,"set on a","type:"+s,"axis","with bins on","type:"+c.axType,"axis."].join(" ")),l!==c.calendar&&r.warn(["Attempted to group the bins of trace",t.index,"set with a",l,"calendar","with bins",c.calendar?"on a "+c.calendar+" calendar":"w/o a set calendar"].join(" ")))),u&&(m[n]={traces:[t],dirs:[a],axType:s,calendar:t[a+"calendar"]||""}),t["_"+a+"bingroup"]=n}for(p=0;pS&&k.splice(S,k.length-S),A.length>S&&A.splice(S,A.length-S);var E=[],C=[],P=[],L="string"===typeof _.size,O="string"===typeof M.size,I=[],D=[],R=L?I:_,z=O?D:M,N=0,j=[],F=[],B=e.histnorm,U=e.histfunc,H=-1!==B.indexOf("density"),V="max"===U||"min"===U?null:0,q=a.count,G=o[B],W=!1,Y=[],$=[],X="z"in e?e.z:"marker"in e&&Array.isArray(e.marker.color)?e.marker.color:"";X&&"count"!==U&&(W="avg"===U,q=a[U]);var K=_.size,Z=b(_.start),J=b(_.end)+(Z-i.tickIncrement(Z,K,!1,m))/1e6;for(n=Z;n=0&&d=0&&p-1,flipY:P.tiling.flip.indexOf("y")>-1,orientation:P.tiling.orientation,pad:{inner:P.tiling.pad},maxDepth:P._maxDepth}).descendants(),R=1/0,z=-1/0;D.forEach((function(t){var e=t.depth;e>=P._maxDepth?(t.x0=t.x1=(t.x0+t.x1)/2,t.y0=t.y1=(t.y0+t.y1)/2):(R=Math.min(R,e),z=Math.max(z,e))})),p=p.data(D,u.getPtId),P._maxVisibleLayers=isFinite(z)?z-R+1:0,p.enter().append("g").classed("slice",!0),T(p,d,{},[v,m],x),p.order();var N=null;if(k&&S){var j=u.getPtId(S);p.each((function(t){null===N&&u.getPtId(t)===j&&(N={x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1})}))}var F=function(){return N||{x0:0,x1:v,y0:0,y1:m}},B=p;return k&&(B=B.transition().each("end",(function(){var e=r.select(this);u.setSliceCursor(e,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})}))),B.each((function(s){s._x0=y(s.x0),s._x1=y(s.x1),s._y0=b(s.y0),s._y1=b(s.y1),s._hoverX=y(s.x1-P.tiling.pad),s._hoverY=b(I?s.y1-P.tiling.pad/2:s.y0+P.tiling.pad/2);var p=r.select(this),g=i.ensureSingle(p,"path","surface",(function(t){t.style("pointer-events",E?"none":"all")}));k?g.transition().attrTween("d",(function(t){var e=M(t,d,F(),[v,m],{orientation:P.tiling.orientation,flipX:P.tiling.flip.indexOf("x")>-1,flipY:P.tiling.flip.indexOf("y")>-1});return function(t){return x(e(t))}})):g.attr("d",x),p.call(f,n,t,e,{styleOne:l,eventDataKeys:c.eventDataKeys,transitionTime:c.CLICK_TRANSITION_TIME,transitionEasing:c.CLICK_TRANSITION_EASING}).call(u.setSliceCursor,t,{isTransitioning:t._transitioning}),g.call(l,s,P,{hovered:!1}),s.x0===s.x1||s.y0===s.y1?s._text="":s._text=h(s,n,P,e,C)||"";var T=i.ensureSingle(p,"g","slicetext"),S=i.ensureSingle(T,"text","",(function(t){t.attr("data-notex",1)})),D=i.ensureUniformFontSize(t,u.determineTextFont(P,s,C.font));S.text(s._text||" ").classed("slicetext",!0).attr("text-anchor",O?"end":L?"start":"middle").call(a.font,D).call(o.convertToTspans,t),s.textBB=a.bBox(S.node()),s.transform=w(s,{fontSize:D.size}),s.transform.fontSize=D.size,k?S.transition().attrTween("transform",(function(t){var e=A(t,d,F(),[v,m]);return function(t){return _(e(t))}})):S.attr("transform",_(s))})),N}},69816:function(t,e,n){"use strict";t.exports={moduleType:"trace",name:"icicle",basePlotModule:n(96346),categories:[],animatable:!0,attributes:n(46291),layoutAttributes:n(92894),supplyDefaults:n(56524),supplyLayoutDefaults:n(21070),calc:n(46584).y,crossTraceCalc:n(46584).T,plot:n(85596),style:n(82454).style,colorbar:n(4898),meta:{}}},92894:function(t){"use strict";t.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}},21070:function(t,e,n){"use strict";var r=n(71828),i=n(92894);t.exports=function(t,e){function n(n,a){return r.coerce(t,e,i,n,a)}n("iciclecolorway",e.colorway),n("extendiciclecolors")}},21538:function(t,e,n){"use strict";var r=n(674),i=n(14102);t.exports=function(t,e,n){var a=n.flipX,o=n.flipY,s="h"===n.orientation,l=n.maxDepth,c=e[0],u=e[1];l&&(c=(t.height+1)*e[0]/Math.min(t.height+1,l),u=(t.height+1)*e[1]/Math.min(t.height+1,l));var f=r.partition().padding(n.pad.inner).size(s?[e[1],c]:[e[0],u])(t);return(s||a||o)&&i(f,e,{swapXY:s,flipX:a,flipY:o}),f}},85596:function(t,e,n){"use strict";var r=n(80694),i=n(90666);t.exports=function(t,e,n,a){return r(t,e,n,a,{type:"icicle",drawDescendants:i})}},82454:function(t,e,n){"use strict";var r=n(39898),i=n(7901),a=n(71828),o=n(72597).resizeText;function s(t,e,n){var r=e.data.data,o=!e.children,s=r.i,l=a.castOption(n,s,"marker.line.color")||i.defaultLine,c=a.castOption(n,s,"marker.line.width")||0;t.style("stroke-width",c).call(i.fill,r.color).call(i.stroke,l).style("opacity",o?n.leaf.opacity:null)}t.exports={style:function(t){var e=t._fullLayout._iciclelayer.selectAll(".trace");o(t,e,"icicle"),e.each((function(t){var e=r.select(this),n=t[0].trace;e.style("opacity",n.opacity),e.selectAll("path.surface").each((function(t){r.select(this).call(s,t,n)}))}))},styleOne:s}},17230:function(t,e,n){"use strict";for(var r=n(9012),i=n(5386).f,a=n(1426).extendFlat,o=n(51877).colormodel,s=["rgb","rgba","rgba256","hsl","hsla"],l=[],c=[],u=0;u0||r.inbox(n-o.y0,n-(o.y0+o.h*s.dy),0)>0)){var u,f=Math.floor((e-o.x0)/s.dx),h=Math.floor(Math.abs(n-o.y0)/s.dy);if(s._hasZ?u=o.z[h][f]:s._hasSource&&(u=s._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(f,h,1,1).data),u){var d,p=o.hi||s.hoverinfo;if(p){var g=p.split("+");-1!==g.indexOf("all")&&(g=["color"]),-1!==g.indexOf("color")&&(d=!0)}var v,m=a.colormodel[s.colormodel],y=m.colormodel||s.colormodel,b=y.length,x=s._scaler(u),w=m.suffix,_=[];(s.hovertemplate||d)&&(_.push("["+[x[0]+w[0],x[1]+w[1],x[2]+w[2]].join(", ")),4===b&&_.push(", "+x[3]+w[3]),_.push("]"),_=_.join(""),t.extraText=y.toUpperCase()+": "+_),Array.isArray(s.hovertext)&&Array.isArray(s.hovertext[h])?v=s.hovertext[h][f]:Array.isArray(s.text)&&Array.isArray(s.text[h])&&(v=s.text[h][f]);var k=c.c2p(o.y0+(h+.5)*s.dy),T=o.x0+(f+.5)*s.dx,M=o.y0+(h+.5)*s.dy,A="["+u.slice(0,s.colormodel.length).join(", ")+"]";return[i.extendFlat(t,{index:[h,f],x0:l.c2p(o.x0+f*s.dx),x1:l.c2p(o.x0+(f+1)*s.dx),y0:k,y1:k,color:x,xVal:T,xLabelVal:T,yVal:M,yLabelVal:M,zLabelVal:A,text:v,hovertemplateLabels:{zLabel:A,colorLabel:_,"color[0]Label":x[0]+w[0],"color[1]Label":x[1]+w[1],"color[2]Label":x[2]+w[2],"color[3]Label":x[3]+w[3]}})]}}}},94507:function(t,e,n){"use strict";t.exports={attributes:n(17230),supplyDefaults:n(13245),calc:n(71113),plot:n(60775),style:n(12826),hoverPoints:n(28749),eventData:n(30835),moduleType:"trace",name:"image",basePlotModule:n(93612),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}},60775:function(t,e,n){"use strict";var r=n(39898),i=n(71828),a=i.strTranslate,o=n(77922),s=n(51877),l=i.isIOS()||i.isSafari()||i.isIE();t.exports=function(t,e,n,c){var u=e.xaxis,f=e.yaxis,h=!(l||t._context._exportedPlot);i.makeTraceGroups(c,n,"im").each((function(e){var n=r.select(this),l=e[0],c=l.trace,d=("fast"===c.zsmooth||!1===c.zsmooth&&h)&&!c._hasZ&&c._hasSource&&"linear"===u.type&&"linear"===f.type;c._realImage=d;var p,g,v,m,y,b,x=l.z,w=l.x0,_=l.y0,k=l.w,T=l.h,M=c.dx,A=c.dy;for(b=0;void 0===p&&b0;)g=u.c2p(w+b*M),b--;for(b=0;void 0===m&&b0;)y=f.c2p(_+b*A),b--;gO[0];if(I||D){var R=p+S/2,z=m+E/2;P+="transform:"+a(R+"px",z+"px")+"scale("+(I?-1:1)+","+(D?-1:1)+")"+a(-R+"px",-z+"px")+";"}}C.attr("style",P);var N=new Promise((function(t){if(c._hasZ)t();else if(c._hasSource)if(c._canvas&&c._canvas.el.width===k&&c._canvas.el.height===T&&c._canvas.source===c.source)t();else{var e=document.createElement("canvas");e.width=k,e.height=T;var n=e.getContext("2d",{willReadFrequently:!0});c._image=c._image||new Image;var r=c._image;r.onload=function(){n.drawImage(r,0,0),c._canvas={el:e,source:c.source},t()},r.setAttribute("src",c.source)}})).then((function(){var t,e;if(c._hasZ)e=j((function(t,e){return x[e][t]})),t=e.toDataURL("image/png");else if(c._hasSource)if(d)t=c.source;else{var n=c._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(0,0,k,T).data;e=j((function(t,e){var r=4*(e*k+t);return[n[r],n[r+1],n[r+2],n[r+3]]})),t=e.toDataURL("image/png")}C.attr({"xlink:href":t,height:E,width:S,x:p,y:m})}));t._promises.push(N)}function j(t){var e=document.createElement("canvas");e.width=S,e.height=E;var n,r=e.getContext("2d",{willReadFrequently:!0}),a=function(t){return i.constrain(Math.round(u.c2p(w+t*M)-p),0,S)},o=function(t){return i.constrain(Math.round(f.c2p(_+t*A)-m),0,E)},h=s.colormodel[c.colormodel],d=h.colormodel||c.colormodel,g=h.fmt;for(b=0;b0}function k(t){t.each((function(t){y.stroke(r.select(this),t.line.color)})).each((function(t){y.fill(r.select(this),t.color)})).style("stroke-width",(function(t){return t.line.width}))}function T(t,e,n){var r=t._fullLayout,i=o.extendFlat({type:"linear",ticks:"outside",range:n,showline:!0},e),a={type:"linear",_id:"x"+e._id},s={letter:"x",font:r.font,noHover:!0,noTickson:!0};function l(t,e){return o.coerce(i,a,m,t,e)}return g(i,a,l,s,r),v(i,a,l,s),a}function M(t,e,n){return[Math.min(e/t.width,n/t.height),t,e+"x"+n]}function A(t,e,n,i){var a=document.createElementNS("http://www.w3.org/2000/svg","text"),o=r.select(a);return o.text(t).attr("x",0).attr("y",0).attr("text-anchor",n).attr("data-unformatted",t).call(d.convertToTspans,i).call(f.font,e),f.bBox(o.node())}function S(t,e,n,r,i,a){var s="_cache"+e;t[s]&&t[s].key===i||(t[s]={key:i,value:n});var l=o.aggNums(a,null,[t[s].value,r],2);return t[s].value=l,l}t.exports=function(t,e,n,g){var v,m=t._fullLayout;_(n)&&g&&(v=g()),o.makeTraceGroups(m._indicatorlayer,e,"trace").each((function(e){var g,E,C,P,L,O=e[0].trace,I=r.select(this),D=O._hasGauge,R=O._isAngular,z=O._isBullet,N=O.domain,j={w:m._size.w*(N.x[1]-N.x[0]),h:m._size.h*(N.y[1]-N.y[0]),l:m._size.l+m._size.w*N.x[0],r:m._size.r+m._size.w*(1-N.x[1]),t:m._size.t+m._size.h*(1-N.y[1]),b:m._size.b+m._size.h*N.y[0]},F=j.l+j.w/2,B=j.t+j.h/2,U=Math.min(j.w/2,j.h),H=h.innerRadius*U,V=O.align||"center";if(E=B,D){if(R&&(g=F,E=B+U/2,C=function(t){return function(t,e){var n=Math.sqrt(t.width/2*(t.width/2)+t.height*t.height),r=e/n;return[r,t,e]}(t,.9*H)}),z){var q=h.bulletPadding,G=1-h.bulletNumberDomainSize+q;g=j.l+(G+(1-G)*x[V])*j.w,C=function(t){return M(t,(h.bulletNumberDomainSize-q)*j.w,j.h)}}}else g=j.l+x[V]*j.w,C=function(t){return M(t,j.w,j.h)};!function(t,e,n,i){var c,u,h,g=n[0].trace,v=i.numbersX,m=i.numbersY,k=g.align||"center",M=b[k],E=i.transitionOpts,C=i.onComplete,P=o.ensureSingle(e,"g","numbers"),L=[];g._hasNumber&&L.push("number"),g._hasDelta&&(L.push("delta"),"left"===g.delta.position&&L.reverse());var O=P.selectAll("text").data(L);function I(e,n,r,i){if(!e.match("s")||r>=0===i>=0||n(r).slice(-1).match(w)||n(i).slice(-1).match(w))return n;var a=e.slice().replace("s","f").replace(/\d+/,(function(t){return parseInt(t)-1})),o=T(t,{tickformat:a});return function(t){return Math.abs(t)<1?p.tickText(o,t).text:n(t)}}function D(){var e=T(t,{tickformat:g.number.valueformat},g._range);e.setScale(),p.prepTicks(e);var i=function(t){return p.tickText(e,t).text},o=g.number.suffix,s=g.number.prefix,l=P.select("text.number");function u(){var e="number"===typeof n[0].y?s+i(n[0].y)+o:"-";l.text(e).call(f.font,g.number.font).call(d.convertToTspans,t)}return _(E)?l.transition().duration(E.duration).ease(E.easing).each("end",(function(){u(),C&&C()})).each("interrupt",(function(){u(),C&&C()})).attrTween("text",(function(){var t=r.select(this),e=a(n[0].lastY,n[0].y);g._lastValue=n[0].y;var l=I(g.number.valueformat,i,n[0].lastY,n[0].y);return function(n){t.text(s+l(e(n))+o)}})):u(),c=A(s+i(n[0].y)+o,g.number.font,M,t),l}function R(){var e=T(t,{tickformat:g.delta.valueformat},g._range);e.setScale(),p.prepTicks(e);var i=function(t){return p.tickText(e,t).text},o=g.delta.suffix,s=g.delta.prefix,l=function(t){return g.delta.relative?t.relativeDelta:t.delta},c=function(t,e){return 0===t||"number"!==typeof t||isNaN(t)?"-":(t>0?g.delta.increasing.symbol:g.delta.decreasing.symbol)+s+e(t)+o},h=function(t){return t.delta>=0?g.delta.increasing.color:g.delta.decreasing.color};void 0===g._deltaLastValue&&(g._deltaLastValue=l(n[0]));var v=P.select("text.delta");function m(){v.text(c(l(n[0]),i)).call(y.fill,h(n[0])).call(d.convertToTspans,t)}return v.call(f.font,g.delta.font).call(y.fill,h({delta:g._deltaLastValue})),_(E)?v.transition().duration(E.duration).ease(E.easing).tween("text",(function(){var t=r.select(this),e=l(n[0]),o=g._deltaLastValue,s=I(g.delta.valueformat,i,o,e),u=a(o,e);return g._deltaLastValue=e,function(e){t.text(c(u(e),s)),t.call(y.fill,h({delta:u(e)}))}})).each("end",(function(){m(),C&&C()})).each("interrupt",(function(){m(),C&&C()})):m(),u=A(c(l(n[0]),i),g.delta.font,M,t),v}O.enter().append("text"),O.attr("text-anchor",(function(){return M})).attr("class",(function(t){return t})).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),O.exit().remove();var z,N=g.mode+g.align;if(g._hasDelta&&(z=R(),N+=g.delta.position+g.delta.font.size+g.delta.font.family+g.delta.valueformat,N+=g.delta.increasing.symbol+g.delta.decreasing.symbol,h=u),g._hasNumber&&(D(),N+=g.number.font.size+g.number.font.family+g.number.valueformat+g.number.suffix+g.number.prefix,h=c),g._hasDelta&&g._hasNumber){var j,F,B=[(c.left+c.right)/2,(c.top+c.bottom)/2],U=[(u.left+u.right)/2,(u.top+u.bottom)/2],H=.75*g.delta.font.size;"left"===g.delta.position&&(j=S(g,"deltaPos",0,-1*(c.width*x[g.align]+u.width*(1-x[g.align])+H),N,Math.min),F=B[1]-U[1],h={width:c.width+u.width+H,height:Math.max(c.height,u.height),left:u.left+j,right:c.right,top:Math.min(c.top,u.top+F),bottom:Math.max(c.bottom,u.bottom+F)}),"right"===g.delta.position&&(j=S(g,"deltaPos",0,c.width*(1-x[g.align])+u.width*x[g.align]+H,N,Math.max),F=B[1]-U[1],h={width:c.width+u.width+H,height:Math.max(c.height,u.height),left:c.left,right:u.right+j,top:Math.min(c.top,u.top+F),bottom:Math.max(c.bottom,u.bottom+F)}),"bottom"===g.delta.position&&(j=null,F=u.height,h={width:Math.max(c.width,u.width),height:c.height+u.height,left:Math.min(c.left,u.left),right:Math.max(c.right,u.right),top:c.bottom-c.height,bottom:c.bottom+u.height}),"top"===g.delta.position&&(j=null,F=c.top,h={width:Math.max(c.width,u.width),height:c.height+u.height,left:Math.min(c.left,u.left),right:Math.max(c.right,u.right),top:c.bottom-c.height-u.height,bottom:c.bottom}),z.attr({dx:j,dy:F})}(g._hasNumber||g._hasDelta)&&P.attr("transform",(function(){var t=i.numbersScaler(h);N+=t[2];var e,n=S(g,"numbersScale",1,t[0],N,Math.min);g._scaleNumbers||(n=1),e=g._isAngular?m-n*h.bottom:m-n*(h.top+h.bottom)/2,g._numbersTop=n*h.top+e;var r=h[k];"center"===k&&(r=(h.left+h.right)/2);var a=v-n*r;return a=S(g,"numbersTranslate",0,a,N,Math.max),l(a,e)+s(n)}))}(t,I,e,{numbersX:g,numbersY:E,numbersScaler:C,transitionOpts:n,onComplete:v}),D&&(P={range:O.gauge.axis.range,color:O.gauge.bgcolor,line:{color:O.gauge.bordercolor,width:0},thickness:1},L={range:O.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:O.gauge.bordercolor,width:O.gauge.borderwidth},thickness:1});var W=I.selectAll("g.angular").data(R?e:[]);W.exit().remove();var Y=I.selectAll("g.angularaxis").data(R?e:[]);Y.exit().remove(),R&&function(t,e,n,a){var o,s,f,h,d=n[0].trace,g=a.size,v=a.radius,m=a.innerRadius,y=a.gaugeBg,b=a.gaugeOutline,x=[g.l+g.w/2,g.t+g.h/2+v/2],w=a.gauge,M=a.layer,A=a.transitionOpts,S=a.onComplete,E=Math.PI/2;function C(t){var e=d.gauge.axis.range[0],n=(t-e)/(d.gauge.axis.range[1]-e)*Math.PI-E;return n<-E?-E:n>E?E:n}function P(t){return r.svg.arc().innerRadius((m+v)/2-t/2*(v-m)).outerRadius((m+v)/2+t/2*(v-m)).startAngle(-E)}function L(t){t.attr("d",(function(t){return P(t.thickness).startAngle(C(t.range[0])).endAngle(C(t.range[1]))()}))}w.enter().append("g").classed("angular",!0),w.attr("transform",l(x[0],x[1])),M.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),M.selectAll("g.xangularaxistick,path,text").remove(),(o=T(t,d.gauge.axis)).type="linear",o.range=d.gauge.axis.range,o._id="xangularaxis",o.ticklabeloverflow="allow",o.setScale();var O=function(t){return(o.range[0]-t.x)/(o.range[1]-o.range[0])*Math.PI+Math.PI},I={},D=p.makeLabelFns(o,0).labelStandoff;I.xFn=function(t){var e=O(t);return Math.cos(e)*D},I.yFn=function(t){var e=O(t),n=Math.sin(e)>0?.2:1;return-Math.sin(e)*(D+t.fontSize*n)+Math.abs(Math.cos(e))*(t.fontSize*u)},I.anchorFn=function(t){var e=O(t),n=Math.cos(e);return Math.abs(n)<.1?"middle":n>0?"start":"end"},I.heightFn=function(t,e,n){var r=O(t);return-.5*(1+Math.sin(r))*n};var R=function(t){return l(x[0]+v*Math.cos(t),x[1]-v*Math.sin(t))};f=function(t){return R(O(t))};var z=function(t){var e=O(t);return R(e)+"rotate("+-c(e)+")"};if(s=p.calcTicks(o),h=p.getTickSigns(o)[2],o.visible){h="inside"===o.ticks?-1:1;var N=(o.linewidth||1)/2;p.drawTicks(t,o,{vals:s,layer:M,path:"M"+h*N+",0h"+h*o.ticklen,transFn:z}),p.drawLabels(t,o,{vals:s,layer:M,transFn:f,labelFns:I})}var j=[y].concat(d.gauge.steps),F=w.selectAll("g.bg-arc").data(j);F.enter().append("g").classed("bg-arc",!0).append("path"),F.select("path").call(L).call(k),F.exit().remove();var B=P(d.gauge.bar.thickness),U=w.selectAll("g.value-arc").data([d.gauge.bar]);U.enter().append("g").classed("value-arc",!0).append("path");var H,V,q,G=U.select("path");_(A)?(G.transition().duration(A.duration).ease(A.easing).each("end",(function(){S&&S()})).each("interrupt",(function(){S&&S()})).attrTween("d",(H=B,V=C(n[0].lastY),q=C(n[0].y),function(){var t=i(V,q);return function(e){return H.endAngle(t(e))()}})),d._lastValue=n[0].y):G.attr("d","number"===typeof n[0].y?B.endAngle(C(n[0].y)):"M0,0Z"),G.call(k),U.exit().remove(),j=[];var W=d.gauge.threshold.value;(W||0===W)&&j.push({range:[W,W],color:d.gauge.threshold.color,line:{color:d.gauge.threshold.line.color,width:d.gauge.threshold.line.width},thickness:d.gauge.threshold.thickness});var Y=w.selectAll("g.threshold-arc").data(j);Y.enter().append("g").classed("threshold-arc",!0).append("path"),Y.select("path").call(L).call(k),Y.exit().remove();var $=w.selectAll("g.gauge-outline").data([b]);$.enter().append("g").classed("gauge-outline",!0).append("path"),$.select("path").call(L).call(k),$.exit().remove()}(t,0,e,{radius:U,innerRadius:H,gauge:W,layer:Y,size:j,gaugeBg:P,gaugeOutline:L,transitionOpts:n,onComplete:v});var $=I.selectAll("g.bullet").data(z?e:[]);$.exit().remove();var X=I.selectAll("g.bulletaxis").data(z?e:[]);X.exit().remove(),z&&function(t,e,n,r){var i,a,o,s,c,u=n[0].trace,f=r.gauge,d=r.layer,g=r.gaugeBg,v=r.gaugeOutline,m=r.size,b=u.domain,x=r.transitionOpts,w=r.onComplete;f.enter().append("g").classed("bullet",!0),f.attr("transform",l(m.l,m.t)),d.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),d.selectAll("g.xbulletaxistick,path,text").remove();var M=m.h,A=u.gauge.bar.thickness*M,S=b.x[0],E=b.x[0]+(b.x[1]-b.x[0])*(u._hasNumber||u._hasDelta?1-h.bulletNumberDomainSize:1);function C(t){t.attr("width",(function(t){return Math.max(0,i.c2p(t.range[1])-i.c2p(t.range[0]))})).attr("x",(function(t){return i.c2p(t.range[0])})).attr("y",(function(t){return.5*(1-t.thickness)*M})).attr("height",(function(t){return t.thickness*M}))}(i=T(t,u.gauge.axis))._id="xbulletaxis",i.domain=[S,E],i.setScale(),a=p.calcTicks(i),o=p.makeTransTickFn(i),s=p.getTickSigns(i)[2],c=m.t+m.h,i.visible&&(p.drawTicks(t,i,{vals:"inside"===i.ticks?p.clipEnds(i,a):a,layer:d,path:p.makeTickPath(i,c,s),transFn:o}),p.drawLabels(t,i,{vals:a,layer:d,transFn:o,labelFns:p.makeLabelFns(i,c)}));var P=[g].concat(u.gauge.steps),L=f.selectAll("g.bg-bullet").data(P);L.enter().append("g").classed("bg-bullet",!0).append("rect"),L.select("rect").call(C).call(k),L.exit().remove();var O=f.selectAll("g.value-bullet").data([u.gauge.bar]);O.enter().append("g").classed("value-bullet",!0).append("rect"),O.select("rect").attr("height",A).attr("y",(M-A)/2).call(k),_(x)?O.select("rect").transition().duration(x.duration).ease(x.easing).each("end",(function(){w&&w()})).each("interrupt",(function(){w&&w()})).attr("width",Math.max(0,i.c2p(Math.min(u.gauge.axis.range[1],n[0].y)))):O.select("rect").attr("width","number"===typeof n[0].y?Math.max(0,i.c2p(Math.min(u.gauge.axis.range[1],n[0].y))):0),O.exit().remove();var I=n.filter((function(){return u.gauge.threshold.value||0===u.gauge.threshold.value})),D=f.selectAll("g.threshold-bullet").data(I);D.enter().append("g").classed("threshold-bullet",!0).append("line"),D.select("line").attr("x1",i.c2p(u.gauge.threshold.value)).attr("x2",i.c2p(u.gauge.threshold.value)).attr("y1",(1-u.gauge.threshold.thickness)/2*M).attr("y2",(1-(1-u.gauge.threshold.thickness)/2)*M).call(y.stroke,u.gauge.threshold.line.color).style("stroke-width",u.gauge.threshold.line.width),D.exit().remove();var R=f.selectAll("g.gauge-outline").data([v]);R.enter().append("g").classed("gauge-outline",!0).append("rect"),R.select("rect").call(C).call(k),R.exit().remove()}(t,0,e,{gauge:$,layer:X,size:j,gaugeBg:P,gaugeOutline:L,transitionOpts:n,onComplete:v});var K=I.selectAll("text.title").data(e);K.exit().remove(),K.enter().append("text").classed("title",!0),K.attr("text-anchor",(function(){return z?b.right:b[O.title.align]})).text(O.title.text).call(f.font,O.title.font).call(d.convertToTspans,t),K.attr("transform",(function(){var t,e=j.l+j.w*x[O.title.align],n=h.titlePadding,r=f.bBox(K.node());return D?(R&&(t=O.gauge.axis.visible?f.bBox(Y.node()).top-n-r.bottom:j.t+j.h/2-U/2-r.bottom-n),z&&(t=E-(r.top+r.bottom)/2,e=j.l-h.bulletPadding*j.w)):t=O._numbersTop-n-r.bottom,l(e,t)}))}))}},16249:function(t,e,n){"use strict";var r=n(50693),i=n(12663).axisHoverFormat,a=n(5386).f,o=n(2418),s=n(9012),l=n(1426).extendFlat,c=n(30962).overrideAll,u=t.exports=c(l({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:a(),xhoverformat:i("x"),yhoverformat:i("y"),zhoverformat:i("z"),valuehoverformat:i("value",1),showlegend:l({},s.showlegend,{dflt:!1})},r("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:o.opacity,lightposition:o.lightposition,lighting:o.lighting,flatshading:o.flatshading,contour:o.contour,hoverinfo:l({},s.hoverinfo)}),"calc","nested");u.flatshading.dflt=!0,u.lighting.facenormalsepsilon.dflt=0,u.x.editType=u.y.editType=u.z.editType=u.value.editType="calc+clearAxisTypes",u.transforms=void 0},56959:function(t,e,n){"use strict";var r=n(78803),i=n(88489).processGrid,a=n(88489).filter;t.exports=function(t,e){e._len=Math.min(e.x.length,e.y.length,e.z.length,e.value.length),e._x=a(e.x,e._len),e._y=a(e.y,e._len),e._z=a(e.z,e._len),e._value=a(e.value,e._len);var n=i(e);e._gridFill=n.fill,e._Xs=n.Xs,e._Ys=n.Ys,e._Zs=n.Zs,e._len=n.len;for(var o=1/0,s=-1/0,l=0;l0;n--){var r=Math.min(e[n],e[n-1]),i=Math.max(e[n],e[n-1]);if(i>r&&r-1}function z(t,e){return null===t?e:t}function N(e,n,r){P();var i,a,o,l=[n],c=[r];if(s>=1)l=[n],c=[r];else if(s>0){var u=function(t,e){var n=t[0],r=t[1],i=t[2],a=function(t,e,n){for(var r=[],i=0;i-1?r[d]:C(p,g,m);h[d]=b>-1?b:O(p,g,m,z(e,y))}i=h[0],a=h[1],o=h[2],t._meshI.push(i),t._meshJ.push(a),t._meshK.push(o),++v}}function j(t,e,n,r){var i=t[3];ir&&(i=r);for(var a=(t[3]-i)/(t[3]-e[3]+1e-9),o=[],s=0;s<4;s++)o[s]=(1-a)*t[s]+a*e[s];return o}function F(t,e,n){return t>=e&&t<=n}function B(t){var e=.001*(E-S);return t>=S-e&&t<=E+e}function U(e){for(var n=[],r=0;r<4;r++){var i=e[r];n.push([t._x[i],t._y[i],t._z[i],t._value[i]])}return n}var H=3;function V(t,e,n,r,i,a){a||(a=1),n=[-1,-1,-1];var o=!1,s=[F(e[0][3],r,i),F(e[1][3],r,i),F(e[2][3],r,i)];if(!s[0]&&!s[1]&&!s[2])return!1;var l=function(t,e,n){return B(e[0][3])&&B(e[1][3])&&B(e[2][3])?(N(t,e,n),!0):aMath.abs(k-A)?[M,k]:[k,A];tt(n,C[0],C[1])}}var P=[[Math.min(S,A),Math.max(S,A)],[Math.min(M,E),Math.max(M,E)]];["x","y","z"].forEach((function(n){for(var r=[],i=0;i0&&(f.push(p.id),"x"===n?h.push([p.distRatio,0,0]):"y"===n?h.push([0,p.distRatio,0]):h.push([0,0,p.distRatio]))}else u=it(1,"x"===n?x-1:"y"===n?w-1:_-1);f.length>0&&(r[a]="x"===n?et(e,f,o,s,h,r[a]):"y"===n?nt(e,f,o,s,h,r[a]):rt(e,f,o,s,h,r[a]),a++),u.length>0&&(r[a]="x"===n?K(e,u,o,s,r[a]):"y"===n?Z(e,u,o,s,r[a]):J(e,u,o,s,r[a]),a++)}var g=t.caps[n];g.show&&g.fill&&(D(g.fill),r[a]="x"===n?K(e,[0,x-1],o,s,r[a]):"y"===n?Z(e,[0,w-1],o,s,r[a]):J(e,[0,_-1],o,s,r[a]),a++)}})),0===v&&L(),t._meshX=r,t._meshY=i,t._meshZ=a,t._meshIntensity=o,t._Xs=m,t._Ys=y,t._Zs=b}(),t}t.exports={findNearestOnAxis:l,generateIsoMeshes:h,createIsosurfaceTrace:function(t,e){var n=t.glplot.gl,i=r({gl:n}),a=new c(t,i,e.uid);return i._trace=a,a.update(e),t.glplot.add(i),a}}},82738:function(t,e,n){"use strict";var r=n(71828),i=n(73972),a=n(16249),o=n(1586);function s(t,e,n,r,a){var s=a("isomin"),l=a("isomax");void 0!==l&&null!==l&&void 0!==s&&null!==s&&s>l&&(e.isomin=null,e.isomax=null);var c=a("x"),u=a("y"),f=a("z"),h=a("value");c&&c.length&&u&&u.length&&f&&f.length&&h&&h.length?(i.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x","y","z"],r),a("valuehoverformat"),["x","y","z"].forEach((function(t){a(t+"hoverformat");var e="caps."+t;a(e+".show")&&a(e+".fill");var n="slices."+t;a(n+".show")&&(a(n+".fill"),a(n+".locations"))})),a("spaceframe.show")&&a("spaceframe.fill"),a("surface.show")&&(a("surface.count"),a("surface.fill"),a("surface.pattern")),a("contour.show")&&(a("contour.color"),a("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(t){a(t)})),o(t,e,r,a,{prefix:"",cLetter:"c"}),e._length=null):e.visible=!1}t.exports={supplyDefaults:function(t,e,n,i){s(t,e,0,i,(function(n,i){return r.coerce(t,e,a,n,i)}))},supplyIsoDefaults:s}},64943:function(t,e,n){"use strict";t.exports={attributes:n(16249),supplyDefaults:n(82738).supplyDefaults,calc:n(56959),colorbar:{min:"cmin",max:"cmax"},plot:n(22674).createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:n(58547),categories:["gl3d","showLegend"],meta:{}}},2418:function(t,e,n){"use strict";var r=n(50693),i=n(12663).axisHoverFormat,a=n(5386).f,o=n(54532),s=n(9012),l=n(1426).extendFlat;t.exports=l({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:a({editType:"calc"}),xhoverformat:i("x"),yhoverformat:i("y"),zhoverformat:i("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},r("",{colorAttr:"`intensity`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:o.opacity,flatshading:{valType:"boolean",dflt:!1,editType:"calc"},contour:{show:l({},o.contours.x.show,{}),color:o.contours.x.color,width:o.contours.x.width,editType:"calc"},lightposition:{x:l({},o.lightposition.x,{dflt:1e5}),y:l({},o.lightposition.y,{dflt:1e5}),z:l({},o.lightposition.z,{dflt:0}),editType:"calc"},lighting:l({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"},o.lighting),hoverinfo:l({},s.hoverinfo,{editType:"calc"}),showlegend:l({},s.showlegend,{dflt:!1})})},82932:function(t,e,n){"use strict";var r=n(78803);t.exports=function(t,e){e.intensity&&r(t,e,{vals:e.intensity,containerStr:"",cLetter:"c"})}},91134:function(t,e,n){"use strict";var r=n(9330).gl_mesh3d,i=n(9330).delaunay_triangulate,a=n(9330).alpha_shape,o=n(9330).convex_hull,s=n(81697).parseColorScale,l=n(78614),c=n(21081).extractOpts,u=n(90060);function f(t,e,n){this.scene=t,this.uid=n,this.mesh=e,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var h=f.prototype;function d(t){for(var e=[],n=t.length,r=0;r=e-.5)return!1;return!0}h.handlePick=function(t){if(t.object===this.mesh){var e=t.index=t.data.index;t.data._cellCenter?t.traceCoordinate=t.data.dataCoordinate:t.traceCoordinate=[this.data.x[e],this.data.y[e],this.data.z[e]];var n=this.data.hovertext||this.data.text;return Array.isArray(n)&&void 0!==n[e]?t.textLabel=n[e]:n&&(t.textLabel=n),!0}},h.update=function(t){var e=this.scene,n=e.fullSceneLayout;this.data=t;var r,f=t.x.length,h=u(p(n.xaxis,t.x,e.dataScale[0],t.xcalendar),p(n.yaxis,t.y,e.dataScale[1],t.ycalendar),p(n.zaxis,t.z,e.dataScale[2],t.zcalendar));if(t.i&&t.j&&t.k){if(t.i.length!==t.j.length||t.j.length!==t.k.length||!v(t.i,f)||!v(t.j,f)||!v(t.k,f))return;r=u(g(t.i),g(t.j),g(t.k))}else r=0===t.alphahull?o(h):t.alphahull>0?a(t.alphahull,h):function(t,e){for(var n=["x","y","z"].indexOf(t),r=[],a=e.length,o=0;om):v=M>_,m=M;var A=c(_,k,T,M);A.pos=w,A.yc=(_+M)/2,A.i=x,A.dir=v?"increasing":"decreasing",A.x=A.pos,A.y=[T,k],y&&(A.orig_p=n[x]),p&&(A.tx=e.text[x]),g&&(A.htx=e.hovertext[x]),b.push(A)}else b.push({pos:w,empty:!0})}return e._extremes[l._id]=a.findExtremes(l,r.concat(h,f),{padded:!0}),b.length&&(b[0].t={labels:{open:i(t,"open:")+" ",high:i(t,"high:")+" ",low:i(t,"low:")+" ",close:i(t,"close:")+" "}}),b}t.exports={calc:function(t,e){var n=a.getFromId(t,e.xaxis),i=a.getFromId(t,e.yaxis),s=function(t,e,n){var i=n._minDiff;if(!i){var a,s=t._fullData,l=[];for(i=1/0,a=0;a"+c.labels[b]+r.hoverLabelText(s,x,l.yhoverformat):((y=i.extendFlat({},h)).y0=y.y1=w,y.yLabelVal=x,y.yLabel=c.labels[b]+r.hoverLabelText(s,x,l.yhoverformat),y.name="",f.push(y),v[x]=y)}return f}function h(t,e,n,i){var a=t.cd,o=t.ya,l=a[0].trace,f=a[0].t,h=u(t,e,n,i);if(!h)return[];var d=a[h.index],p=h.index=d.i,g=d.dir;function v(t){return f.labels[t]+r.hoverLabelText(o,l[t][p],l.yhoverformat)}var m=d.hi||l.hoverinfo,y=m.split("+"),b="all"===m,x=b||-1!==y.indexOf("y"),w=b||-1!==y.indexOf("text"),_=x?[v("open"),v("high"),v("low"),v("close")+" "+c[g]]:[];return w&&s(d,l,_),h.extraText=_.join("
"),h.y0=h.y1=o.c2p(d.yc,!0),[h]}t.exports={hoverPoints:function(t,e,n,r){return t.cd[0].trace.hoverlabel.split?f(t,e,n,r):h(t,e,n,r)},hoverSplit:f,hoverOnPoints:h}},54186:function(t,e,n){"use strict";t.exports={moduleType:"trace",name:"ohlc",basePlotModule:n(93612),categories:["cartesian","svg","showLegend"],meta:{},attributes:n(2522),supplyDefaults:n(16169),calc:n(3485).calc,plot:n(72314),style:n(53101),hoverPoints:n(66449).hoverPoints,selectPoints:n(67324)}},14555:function(t,e,n){"use strict";var r=n(73972),i=n(71828);t.exports=function(t,e,n,a){var o=n("x"),s=n("open"),l=n("high"),c=n("low"),u=n("close");if(n("hoverlabel.split"),r.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x"],a),s&&l&&c&&u){var f=Math.min(s.length,l.length,c.length,u.length);return o&&(f=Math.min(f,i.minRowLength(o))),e._length=f,f}}},72314:function(t,e,n){"use strict";var r=n(39898),i=n(71828);t.exports=function(t,e,n,a){var o=e.yaxis,s=e.xaxis,l=!!s.rangebreaks;i.makeTraceGroups(a,n,"trace ohlc").each((function(t){var e=r.select(this),n=t[0],a=n.t;if(!0!==n.trace.visible||a.empty)e.remove();else{var c=a.tickLen,u=e.selectAll("path").data(i.identity);u.enter().append("path"),u.exit().remove(),u.attr("d",(function(t){if(t.empty)return"M0,0Z";var e=s.c2p(t.pos-c,!0),n=s.c2p(t.pos+c,!0),r=l?(e+n)/2:s.c2p(t.pos,!0);return"M"+e+","+o.c2p(t.o,!0)+"H"+r+"M"+r+","+o.c2p(t.h,!0)+"V"+o.c2p(t.l,!0)+"M"+n+","+o.c2p(t.c,!0)+"H"+r}))}}))}},67324:function(t){"use strict";t.exports=function(t,e){var n,r=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=r[0].t.bPos||0;if(!1===e)for(n=0;n=t.length)return!1;if(void 0!==e[t[n]])return!1;e[t[n]]=!0}return!0}(n))for(e=0;e0;c&&(o="array");var u=n("categoryorder",o);"array"===u?(n("categoryarray"),n("ticktext")):(delete t.categoryarray,delete t.ticktext),c||"array"!==u||(e.categoryorder="trace")}}t.exports=function(t,e,n,f){function h(n,i){return r.coerce(t,e,l,n,i)}var d=s(t,e,{name:"dimensions",handleItemDefaults:u}),p=function(t,e,n,o,s){s("line.shape"),s("line.hovertemplate");var l=s("line.color",o.colorway[0]);if(i(t,"line")&&r.isArrayOrTypedArray(l)){if(l.length)return s("line.colorscale"),a(t,e,o,s,{prefix:"line.",cLetter:"c"}),l.length;e.line.color=n}return 1/0}(t,e,n,f,h);o(e,f,h),Array.isArray(d)&&d.length||(e.visible=!1),c(e,d,"values",p),h("hoveron"),h("hovertemplate"),h("arrangement"),h("bundlecolors"),h("sortpaths"),h("counts");var g={family:f.font.family,size:Math.round(f.font.size),color:f.font.color};r.coerceFont(h,"labelfont",g);var v={family:f.font.family,size:Math.round(f.font.size/1.2),color:f.font.color};r.coerceFont(h,"tickfont",v)}},94873:function(t,e,n){"use strict";t.exports={attributes:n(99506),supplyDefaults:n(14647),calc:n(28699),plot:n(45784),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:n(27677),categories:["noOpacity"],meta:{}}},45460:function(t,e,n){"use strict";var r=n(39898),i=n(81684).k4,a=n(72391),o=n(30211),s=n(71828),l=s.strTranslate,c=n(91424),u=n(84267),f=n(63893);function h(t,e,n,i){var a=e._context.staticPlot,o=t.map(N.bind(0,e,n)),u=i.selectAll("g.parcatslayer").data([null]);u.enter().append("g").attr("class","parcatslayer").style("pointer-events",a?"none":"all");var h=u.selectAll("g.trace.parcats").data(o,d),y=h.enter().append("g").attr("class","trace parcats");h.attr("transform",(function(t){return l(t.x,t.y)})),y.append("g").attr("class","paths");var b=h.select("g.paths").selectAll("path.path").data((function(t){return t.paths}),d);b.attr("fill",(function(t){return t.model.color}));var _=b.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",(function(t){return t.model.color})).attr("fill-opacity",0);w(_),b.attr("d",(function(t){return t.svgD})),_.empty()||b.sort(g),b.exit().remove(),b.on("mouseover",v).on("mouseout",m).on("click",x),y.append("g").attr("class","dimensions");var M=h.select("g.dimensions").selectAll("g.dimension").data((function(t){return t.dimensions}),d);M.enter().append("g").attr("class","dimension"),M.attr("transform",(function(t){return l(t.x,0)})),M.exit().remove();var A=M.selectAll("g.category").data((function(t){return t.categories}),d),S=A.enter().append("g").attr("class","category");A.attr("transform",(function(t){return l(0,t.y)})),S.append("rect").attr("class","catrect").attr("pointer-events","none"),A.select("rect.catrect").attr("fill","none").attr("width",(function(t){return t.width})).attr("height",(function(t){return t.height})),k(S);var E=A.selectAll("rect.bandrect").data((function(t){return t.bands}),d);E.each((function(){s.raiseToTop(this)})),E.attr("fill",(function(t){return t.color}));var D=E.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",(function(t){return t.color})).attr("fill-opacity",0);E.attr("fill",(function(t){return t.color})).attr("width",(function(t){return t.width})).attr("height",(function(t){return t.height})).attr("y",(function(t){return t.y})).attr("cursor",(function(t){return"fixed"===t.parcatsViewModel.arrangement?"default":"perpendicular"===t.parcatsViewModel.arrangement?"ns-resize":"move"})),T(D),E.exit().remove(),S.append("text").attr("class","catlabel").attr("pointer-events","none");var R=e._fullLayout.paper_bgcolor;A.select("text.catlabel").attr("text-anchor",(function(t){return p(t)?"start":"end"})).attr("alignment-baseline","middle").style("text-shadow",f.makeTextShadow(R)).style("fill","rgb(0, 0, 0)").attr("x",(function(t){return p(t)?t.width+5:-5})).attr("y",(function(t){return t.height/2})).text((function(t){return t.model.categoryLabel})).each((function(t){c.font(r.select(this),t.parcatsViewModel.categorylabelfont),f.convertToTspans(r.select(this),e)})),S.append("text").attr("class","dimlabel"),A.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",(function(t){return"fixed"===t.parcatsViewModel.arrangement?"default":"ew-resize"})).attr("x",(function(t){return t.width/2})).attr("y",-5).text((function(t,e){return 0===e?t.parcatsViewModel.model.dimensions[t.model.dimensionInd].dimensionLabel:null})).each((function(t){c.font(r.select(this),t.parcatsViewModel.labelfont)})),A.selectAll("rect.bandrect").on("mouseover",C).on("mouseout",P),A.exit().remove(),M.call(r.behavior.drag().origin((function(t){return{x:t.x,y:0}})).on("dragstart",L).on("drag",O).on("dragend",I)),h.each((function(t){t.traceSelection=r.select(this),t.pathSelection=r.select(this).selectAll("g.paths").selectAll("path.path"),t.dimensionSelection=r.select(this).selectAll("g.dimensions").selectAll("g.dimension")})),h.exit().remove()}function d(t){return t.key}function p(t){var e=t.parcatsViewModel.dimensions.length,n=t.parcatsViewModel.dimensions[e-1].model.dimensionInd;return t.model.dimensionInd===n}function g(t,e){return t.model.rawColor>e.model.rawColor?1:t.model.rawColor"),C=r.mouse(f)[0];o.loneHover({trace:h,x:x-p.left+g.left,y:w-p.top+g.top,text:E,color:t.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:k,idealAlign:C1&&h.displayInd===f.dimensions.length-1?(i=c.left,a="left"):(i=c.left+c.width,a="right");var g=u.model.count,v=u.model.categoryLabel,m=g/u.parcatsViewModel.model.count,y={countLabel:g,categoryLabel:v,probabilityLabel:m.toFixed(3)},b=[];-1!==u.parcatsViewModel.hoverinfoItems.indexOf("count")&&b.push(["Count:",y.countLabel].join(" ")),-1!==u.parcatsViewModel.hoverinfoItems.indexOf("probability")&&b.push(["P("+y.categoryLabel+"):",y.probabilityLabel].join(" "));var x=b.join("
");return{trace:d,x:o*(i-e.left),y:s*(p-e.top),text:x,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:a,hovertemplate:d.hovertemplate,hovertemplateLabels:y,eventData:[{data:d._input,fullData:d,count:g,category:v,probability:m}]}}function C(t){if(!t.parcatsViewModel.dragDimension&&-1===t.parcatsViewModel.hoverinfoItems.indexOf("skip")){if(r.mouse(this)[1]<-1)return;var e,n=t.parcatsViewModel.graphDiv,i=n._fullLayout,a=i._paperdiv.node().getBoundingClientRect(),l=t.parcatsViewModel.hoveron,c=this;"color"===l?(function(t){var e=r.select(t).datum(),n=M(e);_(n),n.each((function(){s.raiseToTop(this)})),r.select(t.parentNode).selectAll("rect.bandrect").filter((function(t){return t.color===e.color})).each((function(){s.raiseToTop(this),r.select(this).attr("stroke","black").attr("stroke-width",1.5)}))}(c),S(c,"plotly_hover",r.event)):(function(t){r.select(t.parentNode).selectAll("rect.bandrect").each((function(t){var e=M(t);_(e),e.each((function(){s.raiseToTop(this)}))})),r.select(t.parentNode).select("rect.catrect").attr("stroke","black").attr("stroke-width",2.5)}(c),A(c,"plotly_hover",r.event)),-1===t.parcatsViewModel.hoverinfoItems.indexOf("none")&&("category"===l?e=E(n,a,c):"color"===l?e=function(t,e,n){t._fullLayout._calcInverseTransform(t);var i,a,o=t._fullLayout._invScaleX,s=t._fullLayout._invScaleY,l=n.getBoundingClientRect(),c=r.select(n).datum(),f=c.categoryViewModel,h=f.parcatsViewModel,d=h.model.dimensions[f.model.dimensionInd],p=h.trace,g=l.y+l.height/2;h.dimensions.length>1&&d.displayInd===h.dimensions.length-1?(i=l.left,a="left"):(i=l.left+l.width,a="right");var v=f.model.categoryLabel,m=c.parcatsViewModel.model.count,y=0;c.categoryViewModel.bands.forEach((function(t){t.color===c.color&&(y+=t.count)}));var b=f.model.count,x=0;h.pathSelection.each((function(t){t.model.color===c.color&&(x+=t.model.count)}));var w=y/m,_=y/x,k=y/b,T={countLabel:m,categoryLabel:v,probabilityLabel:w.toFixed(3)},M=[];-1!==f.parcatsViewModel.hoverinfoItems.indexOf("count")&&M.push(["Count:",T.countLabel].join(" ")),-1!==f.parcatsViewModel.hoverinfoItems.indexOf("probability")&&(M.push("P(color \u2229 "+v+"): "+T.probabilityLabel),M.push("P("+v+" | color): "+_.toFixed(3)),M.push("P(color | "+v+"): "+k.toFixed(3)));var A=M.join("
"),S=u.mostReadable(c.color,["black","white"]);return{trace:p,x:o*(i-e.left),y:s*(g-e.top),text:A,color:c.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontColor:S,fontSize:10,idealAlign:a,hovertemplate:p.hovertemplate,hovertemplateLabels:T,eventData:[{data:p._input,fullData:p,category:v,count:m,probability:w,categorycount:b,colorcount:x,bandcolorcount:y}]}}(n,a,c):"dimension"===l&&(e=function(t,e,n){var i=[];return r.select(n.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each((function(){i.push(E(t,e,this))})),i}(n,a,c)),e&&o.loneHover(e,{container:i._hoverlayer.node(),outerContainer:i._paper.node(),gd:n}))}}function P(t){var e=t.parcatsViewModel;e.dragDimension||(w(e.pathSelection),k(e.dimensionSelection.selectAll("g.category")),T(e.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),o.loneUnhover(e.graphDiv._fullLayout._hoverlayer.node()),e.pathSelection.sort(g),-1!==e.hoverinfoItems.indexOf("skip"))||("color"===t.parcatsViewModel.hoveron?S(this,"plotly_unhover",r.event):A(this,"plotly_unhover",r.event))}function L(t){"fixed"!==t.parcatsViewModel.arrangement&&(t.dragDimensionDisplayInd=t.model.displayInd,t.initialDragDimensionDisplayInds=t.parcatsViewModel.model.dimensions.map((function(t){return t.displayInd})),t.dragHasMoved=!1,t.dragCategoryDisplayInd=null,r.select(this).selectAll("g.category").select("rect.catrect").each((function(e){var n=r.mouse(this)[0],i=r.mouse(this)[1];-2<=n&&n<=e.width+2&&-2<=i&&i<=e.height+2&&(t.dragCategoryDisplayInd=e.model.displayInd,t.initialDragCategoryDisplayInds=t.model.categories.map((function(t){return t.displayInd})),e.model.dragY=e.y,s.raiseToTop(this.parentNode),r.select(this.parentNode).selectAll("rect.bandrect").each((function(e){e.yf.y+f.height/2&&(o.model.displayInd=f.model.displayInd,f.model.displayInd=l),t.dragCategoryDisplayInd=o.model.displayInd}if(null===t.dragCategoryDisplayInd||"freeform"===t.parcatsViewModel.arrangement){a.model.dragX=r.event.x;var h=t.parcatsViewModel.dimensions[n],d=t.parcatsViewModel.dimensions[i];void 0!==h&&a.model.dragXd.x&&(a.model.displayInd=d.model.displayInd,d.model.displayInd=t.dragDimensionDisplayInd),t.dragDimensionDisplayInd=a.model.displayInd}B(t.parcatsViewModel),F(t.parcatsViewModel),z(t.parcatsViewModel),R(t.parcatsViewModel)}}function I(t){if("fixed"!==t.parcatsViewModel.arrangement&&null!==t.dragDimensionDisplayInd){r.select(this).selectAll("text").attr("font-weight","normal");var e={},n=D(t.parcatsViewModel),i=t.parcatsViewModel.model.dimensions.map((function(t){return t.displayInd})),o=t.initialDragDimensionDisplayInds.some((function(t,e){return t!==i[e]}));o&&i.forEach((function(n,r){var i=t.parcatsViewModel.model.dimensions[r].containerInd;e["dimensions["+i+"].displayindex"]=n}));var s=!1;if(null!==t.dragCategoryDisplayInd){var l=t.model.categories.map((function(t){return t.displayInd}));if(s=t.initialDragCategoryDisplayInds.some((function(t,e){return t!==l[e]}))){var c=t.model.categories.slice().sort((function(t,e){return t.displayInd-e.displayInd})),u=c.map((function(t){return t.categoryValue})),f=c.map((function(t){return t.categoryLabel}));e["dimensions["+t.model.containerInd+"].categoryarray"]=[u],e["dimensions["+t.model.containerInd+"].ticktext"]=[f],e["dimensions["+t.model.containerInd+"].categoryorder"]="array"}}-1===t.parcatsViewModel.hoverinfoItems.indexOf("skip")&&!t.dragHasMoved&&t.potentialClickBand&&("color"===t.parcatsViewModel.hoveron?S(t.potentialClickBand,"plotly_click",r.event.sourceEvent):A(t.potentialClickBand,"plotly_click",r.event.sourceEvent)),t.model.dragX=null,null!==t.dragCategoryDisplayInd&&(t.parcatsViewModel.dimensions[t.dragDimensionDisplayInd].categories[t.dragCategoryDisplayInd].model.dragY=null,t.dragCategoryDisplayInd=null),t.dragDimensionDisplayInd=null,t.parcatsViewModel.dragDimension=null,t.dragHasMoved=null,t.potentialClickBand=null,B(t.parcatsViewModel),F(t.parcatsViewModel),r.transition().duration(300).ease("cubic-in-out").each((function(){z(t.parcatsViewModel,!0),R(t.parcatsViewModel,!0)})).each("end",(function(){(o||s)&&a.restyle(t.parcatsViewModel.graphDiv,e,[n])}))}}function D(t){for(var e,n=t.graphDiv._fullData,r=0;r=0;s--)u+="C"+c[s]+","+(e[s+1]+r)+" "+l[s]+","+(e[s]+r)+" "+(t[s]+n[s])+","+(e[s]+r),u+="l-"+n[s]+",0 ";return u+="Z"}function F(t){var e=t.dimensions,n=t.model,r=e.map((function(t){return t.categories.map((function(t){return t.y}))})),i=t.model.dimensions.map((function(t){return t.categories.map((function(t){return t.displayInd}))})),a=t.model.dimensions.map((function(t){return t.displayInd})),o=t.dimensions.map((function(t){return t.model.dimensionInd})),s=e.map((function(t){return t.x})),l=e.map((function(t){return t.width})),c=[];for(var u in n.paths)n.paths.hasOwnProperty(u)&&c.push(n.paths[u]);function f(t){var e=t.categoryInds.map((function(t,e){return i[e][t]}));return o.map((function(t){return e[t]}))}c.sort((function(e,n){var r=f(e),i=f(n);return"backward"===t.sortpaths&&(r.reverse(),i.reverse()),r.push(e.valueInds[0]),i.push(n.valueInds[0]),t.bundlecolors&&(r.unshift(e.rawColor),i.unshift(n.rawColor)),ri?1:0}));for(var h=new Array(c.length),d=e[0].model.count,p=e[0].categories.map((function(t){return t.height})).reduce((function(t,e){return t+e})),g=0;g0?p*(m.count/d):0;for(var y,b=new Array(r.length),x=0;x1?(t.width-80-16)/(r-1):0)*i;var a,o,s,l,c,u=[],f=t.model.maxCats,h=e.categories.length,d=e.count,p=t.height-8*(f-1),g=8*(f-h)/2,v=e.categories.map((function(t){return{displayInd:t.displayInd,categoryInd:t.categoryInd}}));for(v.sort((function(t,e){return t.displayInd-e.displayInd})),c=0;c0?o.count/d*p:0,s={key:o.valueInds[0],model:o,width:16,height:a,y:null!==o.dragY?o.dragY:g,bands:[],parcatsViewModel:t},g=g+a+8,u.push(s);return{key:e.dimensionInd,x:null!==e.dragX?e.dragX:n,y:0,width:16,model:e,categories:u,parcatsViewModel:t,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}t.exports=function(t,e,n,r){h(n,t,r,e)}},45784:function(t,e,n){"use strict";var r=n(45460);t.exports=function(t,e,n,i){var a=t._fullLayout,o=a._paper,s=a._size;r(t,o,e,{width:s.w,height:s.h,margin:{t:s.t,r:s.r,b:s.b,l:s.l}},n,i)}},73362:function(t,e,n){"use strict";var r=n(50693),i=n(13838),a=n(41940),o=n(27670).Y,s=n(1426).extendFlat,l=n(44467).templatedArray;t.exports={domain:o({name:"parcoords",trace:!0,editType:"plot"}),labelangle:{valType:"angle",dflt:0,editType:"plot"},labelside:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},labelfont:a({editType:"plot"}),tickfont:a({editType:"plot"}),rangefont:a({editType:"plot"}),dimensions:l("dimension",{label:{valType:"string",editType:"plot"},tickvals:s({},i.tickvals,{editType:"plot"}),ticktext:s({},i.ticktext,{editType:"plot"}),tickformat:s({},i.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:s({editType:"calc"},r("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(t,e,n){"use strict";var r=n(25706),i=n(39898),a=n(28984).keyFun,o=n(28984).repeat,s=n(71828).sorterAsc,l=n(71828).strTranslate,c=r.bar.snapRatio;function u(t,e){return t*(1-c)+e*c}var f=r.bar.snapClose;function h(t,e){return t*(1-f)+e*f}function d(t,e,n,r){if(function(t,e){for(var n=0;n=e[n][0]&&t<=e[n][1])return!0;return!1}(n,r))return n;var i=t?-1:1,a=0,o=e.length-1;if(i<0){var s=a;a=o,o=s}for(var l=e[a],c=l,f=a;i*fe){h=n;break}}if(a=u,isNaN(a)&&(a=isNaN(f)||isNaN(h)?isNaN(f)?h:f:e-c[f][1]t[1]+n||e=.9*t[1]+.1*t[0]?"n":e<=.9*t[0]+.1*t[1]?"s":"ns"}(p,e);g&&(o.interval=l[a],o.intervalPix=p,o.region=g)}}if(t.ordinal&&!o.region){var v=t.unitTickvals,y=t.unitToPaddedPx.invert(e);for(n=0;n=b[0]&&y<=b[1]){o.clickableOrdinalRange=b;break}}}return o}function _(t,e){i.event.sourceEvent.stopPropagation();var n=e.height-i.mouse(t)[1]-2*r.verticalPadding,a=e.brush.svgBrush;a.wasDragged=!0,a._dragging=!0,a.grabbingBar?a.newExtent=[n-a.grabPoint,n+a.barLength-a.grabPoint].map(e.unitToPaddedPx.invert):a.newExtent=[a.startExtent,e.unitToPaddedPx.invert(n)].sort(s),e.brush.filterSpecified=!0,a.extent=a.stayingIntervals.concat([a.newExtent]),a.brushCallback(e),x(t.parentNode)}function k(t,e){var n=w(e,e.height-i.mouse(t)[1]-2*r.verticalPadding),a="crosshair";n.clickableOrdinalRange?a="pointer":n.region&&(a=n.region+"-resize"),i.select(document.body).style("cursor",a)}function T(t){t.on("mousemove",(function(t){i.event.preventDefault(),t.parent.inBrushDrag||k(this,t)})).on("mouseleave",(function(t){t.parent.inBrushDrag||y()})).call(i.behavior.drag().on("dragstart",(function(t){!function(t,e){i.event.sourceEvent.stopPropagation();var n=e.height-i.mouse(t)[1]-2*r.verticalPadding,a=e.unitToPaddedPx.invert(n),o=e.brush,s=w(e,n),l=s.interval,c=o.svgBrush;if(c.wasDragged=!1,c.grabbingBar="ns"===s.region,c.grabbingBar){var u=l.map(e.unitToPaddedPx);c.grabPoint=n-u[0]-r.verticalPadding,c.barLength=u[1]-u[0]}c.clickableOrdinalRange=s.clickableOrdinalRange,c.stayingIntervals=e.multiselect&&o.filterSpecified?o.filter.getConsolidated():[],l&&(c.stayingIntervals=c.stayingIntervals.filter((function(t){return t[0]!==l[0]&&t[1]!==l[1]}))),c.startExtent=s.region?l["s"===s.region?1:0]:a,e.parent.inBrushDrag=!0,c.brushStartCallback()}(this,t)})).on("drag",(function(t){_(this,t)})).on("dragend",(function(t){!function(t,e){var n=e.brush,r=n.filter,a=n.svgBrush;a._dragging||(k(t,e),_(t,e),e.brush.svgBrush.wasDragged=!1),a._dragging=!1,i.event.sourceEvent.stopPropagation();var o=a.grabbingBar;if(a.grabbingBar=!1,a.grabLocation=void 0,e.parent.inBrushDrag=!1,y(),!a.wasDragged)return a.wasDragged=void 0,a.clickableOrdinalRange?n.filterSpecified&&e.multiselect?a.extent.push(a.clickableOrdinalRange):(a.extent=[a.clickableOrdinalRange],n.filterSpecified=!0):o?(a.extent=a.stayingIntervals,0===a.extent.length&&A(n)):A(n),a.brushCallback(e),x(t.parentNode),void a.brushEndCallback(n.filterSpecified?r.getConsolidated():[]);var s=function(){r.set(r.getConsolidated())};if(e.ordinal){var l=e.unitTickvals;l[l.length-1]a.newExtent[0];a.extent=a.stayingIntervals.concat(c?[a.newExtent]:[]),a.extent.length||A(n),a.brushCallback(e),c?x(t.parentNode,s):(s(),x(t.parentNode))}else s();a.brushEndCallback(n.filterSpecified?r.getConsolidated():[])}(this,t)})))}function M(t,e){return t[0]-e[0]}function A(t){t.filterSpecified=!1,t.svgBrush.extent=[[-1/0,1/0]]}function S(t){for(var e,n=t.slice(),r=[],i=n.shift();i;){for(e=i.slice();(i=n.shift())&&i[0]<=e[1];)e[1]=Math.max(e[1],i[1]);r.push(e)}return 1===r.length&&r[0][0]>r[0][1]&&(r=[]),r}t.exports={makeBrush:function(t,e,n,r,i,a){var o,l=function(){var t,e,n=[];return{set:function(r){1===(n=r.map((function(t){return t.slice().sort(s)})).sort(M)).length&&n[0][0]===-1/0&&n[0][1]===1/0&&(n=[[0,-1]]),t=S(n),e=n.reduce((function(t,e){return[Math.min(t[0],e[0]),Math.max(t[1],e[1])]}),[1/0,-1/0])},get:function(){return n.slice()},getConsolidated:function(){return t},getBounds:function(){return e}}}();return l.set(n),{filter:l,filterSpecified:e,svgBrush:{extent:[],brushStartCallback:r,brushCallback:(o=i,function(t){var e=t.brush,n=function(t){return t.svgBrush.extent.map((function(t){return t.slice()}))}(e),r=n.slice();e.filter.set(r),o()}),brushEndCallback:a}}},ensureAxisBrush:function(t,e,n){var i=t.selectAll("."+r.cn.axisBrush).data(o,a);i.enter().append("g").classed(r.cn.axisBrush,!0),function(t,e,n){var i=n._context.staticPlot,a=t.selectAll(".background").data(o);a.enter().append("rect").classed("background",!0).call(p).call(g).style("pointer-events",i?"none":"auto").attr("transform",l(0,r.verticalPadding)),a.call(T).attr("height",(function(t){return t.height-r.verticalPadding}));var s=t.selectAll(".highlight-shadow").data(o);s.enter().append("line").classed("highlight-shadow",!0).attr("x",-r.bar.width/2).attr("stroke-width",r.bar.width+r.bar.strokeWidth).attr("stroke",e).attr("opacity",r.bar.strokeOpacity).attr("stroke-linecap","butt"),s.attr("y1",(function(t){return t.height})).call(b);var c=t.selectAll(".highlight").data(o);c.enter().append("line").classed("highlight",!0).attr("x",-r.bar.width/2).attr("stroke-width",r.bar.width-r.bar.strokeWidth).attr("stroke",r.bar.fillColor).attr("opacity",r.bar.fillOpacity).attr("stroke-linecap","butt"),c.attr("y1",(function(t){return t.height})).call(b)}(i,e,n)},cleanRanges:function(t,e){if(Array.isArray(t[0])?(t=t.map((function(t){return t.sort(s)})),t=e.multiselect?S(t.sort(M)):[t[0]]):t=[t.sort(s)],e.tickvals){var n=e.tickvals.slice().sort(s);if(!(t=t.map((function(t){var e=[d(0,n,t[0],[]),d(1,n,t[1],[])];if(e[1]>e[0])return e})).filter((function(t){return t}))).length)return}return t.length>1?t:t[0]}}},71791:function(t,e,n){"use strict";t.exports={attributes:n(73362),supplyDefaults:n(3633),calc:n(24639),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:n(49351),categories:["gl","regl","noOpacity","noHover"],meta:{}}},49351:function(t,e,n){"use strict";var r=n(39898),i=n(27659).a0,a=n(21341),o=n(77922);e.name="parcoords",e.plot=function(t){var e=i(t.calcdata,"parcoords")[0];e.length&&a(t,e)},e.clean=function(t,e,n,r){var i=r._has&&r._has("parcoords"),a=e._has&&e._has("parcoords");i&&!a&&(r._paperdiv.selectAll(".parcoords").remove(),r._glimages.selectAll("*").remove())},e.toSVG=function(t){var e=t._fullLayout._glimages,n=r.select(t).selectAll(".svg-container");n.filter((function(t,e){return e===n.size()-1})).selectAll(".gl-canvas-context, .gl-canvas-focus").each((function(){var t=this,n=t.toDataURL("image/png");e.append("svg:image").attr({xmlns:o.svg,"xlink:href":n,preserveAspectRatio:"none",x:0,y:0,width:t.style.width,height:t.style.height})})),window.setTimeout((function(){r.selectAll("#filterBarPattern").attr("id","filterBarPattern")}),60)}},24639:function(t,e,n){"use strict";var r=n(71828).isArrayOrTypedArray,i=n(21081),a=n(28984).wrap;t.exports=function(t,e){var n,o;return i.hasColorscale(e,"line")&&r(e.line.color)?(n=e.line.color,o=i.extractOpts(e.line).colorscale,i.calc(t,e,{vals:n,containerStr:"line",cLetter:"c"})):(n=function(t){for(var e=new Array(t),n=0;nf&&(r.log("parcoords traces support up to "+f+" dimensions at the moment"),p.splice(f));var g=s(t,e,{name:"dimensions",layout:l,handleItemDefaults:d}),v=function(t,e,n,o,s){var l=s("line.color",n);if(i(t,"line")&&r.isArrayOrTypedArray(l)){if(l.length)return s("line.colorscale"),a(t,e,o,s,{prefix:"line.",cLetter:"c"}),l.length;e.line.color=n}return 1/0}(t,e,n,l,u);o(e,l,u),Array.isArray(g)&&g.length||(e.visible=!1),h(e,g,"values",v);var m={family:l.font.family,size:Math.round(l.font.size/1.2),color:l.font.color};r.coerceFont(u,"labelfont",m),r.coerceFont(u,"tickfont",m),r.coerceFont(u,"rangefont",m),u("labelangle"),u("labelside"),u("unselected.line.color"),u("unselected.line.opacity")}},1602:function(t,e,n){"use strict";var r=n(71828).isTypedArray;e.convertTypedArray=function(t){return r(t)?Array.prototype.slice.call(t):t},e.isOrdinal=function(t){return!!t.tickvals},e.isVisible=function(t){return t.visible||!("visible"in t)}},67618:function(t,e,n){"use strict";var r=n(71791);r.plot=n(21341),t.exports=r},83398:function(t,e,n){"use strict";var r=n(56068),i=r(["precision highp float;\n#define GLSLIFY 1\n\nvarying vec4 fragColor;\n\nattribute vec4 p01_04, p05_08, p09_12, p13_16,\n p17_20, p21_24, p25_28, p29_32,\n p33_36, p37_40, p41_44, p45_48,\n p49_52, p53_56, p57_60, colors;\n\nuniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,\n loA, hiA, loB, hiB, loC, hiC, loD, hiD;\n\nuniform vec2 resolution, viewBoxPos, viewBoxSize;\nuniform float maskHeight;\nuniform float drwLayer; // 0: context, 1: focus, 2: pick\nuniform vec4 contextColor;\nuniform sampler2D maskTexture, palette;\n\nbool isPick = (drwLayer > 1.5);\nbool isContext = (drwLayer < 0.5);\n\nconst vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);\nconst vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);\n\nfloat val(mat4 p, mat4 v) {\n return dot(matrixCompMult(p, v) * UNITS, UNITS);\n}\n\nfloat axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {\n float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);\n float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);\n return y1 * (1.0 - ratio) + y2 * ratio;\n}\n\nint iMod(int a, int b) {\n return a - b * (a / b);\n}\n\nbool fOutside(float p, float lo, float hi) {\n return (lo < hi) && (lo > p || p > hi);\n}\n\nbool vOutside(vec4 p, vec4 lo, vec4 hi) {\n return (\n fOutside(p[0], lo[0], hi[0]) ||\n fOutside(p[1], lo[1], hi[1]) ||\n fOutside(p[2], lo[2], hi[2]) ||\n fOutside(p[3], lo[3], hi[3])\n );\n}\n\nbool mOutside(mat4 p, mat4 lo, mat4 hi) {\n return (\n vOutside(p[0], lo[0], hi[0]) ||\n vOutside(p[1], lo[1], hi[1]) ||\n vOutside(p[2], lo[2], hi[2]) ||\n vOutside(p[3], lo[3], hi[3])\n );\n}\n\nbool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {\n return mOutside(A, loA, hiA) ||\n mOutside(B, loB, hiB) ||\n mOutside(C, loC, hiC) ||\n mOutside(D, loD, hiD);\n}\n\nbool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {\n mat4 pnts[4];\n pnts[0] = A;\n pnts[1] = B;\n pnts[2] = C;\n pnts[3] = D;\n\n for(int i = 0; i < 4; ++i) {\n for(int j = 0; j < 4; ++j) {\n for(int k = 0; k < 4; ++k) {\n if(0 == iMod(\n int(255.0 * texture2D(maskTexture,\n vec2(\n (float(i * 2 + j / 2) + 0.5) / 8.0,\n (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight\n ))[3]\n ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),\n 2\n )) return true;\n }\n }\n }\n return false;\n}\n\nvec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {\n float x = 0.5 * sign(v) + 0.5;\n float y = axisY(x, A, B, C, D);\n float z = 1.0 - abs(v);\n\n z += isContext ? 0.0 : 2.0 * float(\n outsideBoundingBox(A, B, C, D) ||\n outsideRasterMask(A, B, C, D)\n );\n\n return vec4(\n 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,\n z,\n 1.0\n );\n}\n\nvoid main() {\n mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);\n mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);\n mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);\n mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);\n\n float v = colors[3];\n\n gl_Position = position(isContext, v, A, B, C, D);\n\n fragColor =\n isContext ? vec4(contextColor) :\n isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));\n}\n"]),a=r(["precision highp float;\n#define GLSLIFY 1\n\nvarying vec4 fragColor;\n\nvoid main() {\n gl_FragColor = fragColor;\n}\n"]),o=n(25706).maxDimensionCount,s=n(71828),l=1e-6,c=2048,u=new Uint8Array(4),f=new Uint8Array(4),h={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function d(t,e,n,r,i){var a=t._gl;a.enable(a.SCISSOR_TEST),a.scissor(e,n,r,i),t.clear({color:[0,0,0,0],depth:1})}function p(t,e,n,r,i,a){var o=a.key;n.drawCompleted||(function(t){t.read({x:0,y:0,width:1,height:1,data:u})}(t),n.drawCompleted=!0),function s(l){var c=Math.min(r,i-l*r);0===l&&(window.cancelAnimationFrame(n.currentRafs[o]),delete n.currentRafs[o],d(t,a.scissorX,a.scissorY,a.scissorWidth,a.viewBoxSize[1])),n.clearOnly||(a.count=2*c,a.offset=2*l*r,e(a),l*r+c>>8*e)%256/255}function m(t,e,n){for(var r=new Array(8*e),i=0,a=0;af&&(f=t[i].dim1.canvasX,o=i);0===s&&d(M,0,0,n.canvasWidth,n.canvasHeight);var h=function(t){var e,n,r,i=[[],[]];for(r=0;r<64;r++){var a=!t&&ro._length&&(S=S.slice(0,o._length));var C,P=o.tickvals;function L(t,e){return{val:t,text:C[e]}}function O(t,e){return t.val-e.val}if(Array.isArray(P)&&P.length){C=o.ticktext,Array.isArray(C)&&C.length?C.length>P.length?C=C.slice(0,P.length):P.length>C.length&&(P=P.slice(0,C.length)):C=P.map(a(o.tickformat));for(var I=1;I=n||l>=i)return;var c=t.lineLayer.readPixel(s,i-1-l),u=0!==c[3],f=u?c[2]+256*(c[1]+256*c[0]):null,h={x:s,y:l,clientX:e.clientX,clientY:e.clientY,dataIndex:t.model.key,curveNumber:f};f!==N&&(u?a.hover(h):a.unhover&&a.unhover(h),N=f)}})),z.style("opacity",(function(t){return t.pick?0:1})),d.style("background","rgba(255, 255, 255, 0)");var j=d.selectAll("."+y.cn.parcoords).data(S,p);j.exit().remove(),j.enter().append("g").classed(y.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),j.attr("transform",(function(t){return c(t.model.translateX,t.model.translateY)}));var F=j.selectAll("."+y.cn.parcoordsControlView).data(g,p);F.enter().append("g").classed(y.cn.parcoordsControlView,!0),F.attr("transform",(function(t){return c(t.model.pad.l,t.model.pad.t)}));var B=F.selectAll("."+y.cn.yAxis).data((function(t){return t.dimensions}),p);B.enter().append("g").classed(y.cn.yAxis,!0),F.each((function(t){I(B,t,k)})),z.each((function(t){if(t.viewModel){!t.lineLayer||a?t.lineLayer=x(this,t):t.lineLayer.update(t),(t.key||0===t.key)&&(t.viewModel[t.key]=t.lineLayer);var e=!t.context||a;t.lineLayer.render(t.viewModel.panels,e)}})),B.attr("transform",(function(t){return c(t.xScale(t.xIndex),0)})),B.call(r.behavior.drag().origin((function(t){return t})).on("drag",(function(t){var e=t.parent;A.linePickActive(!1),t.x=Math.max(-y.overdrag,Math.min(t.model.width+y.overdrag,r.event.x)),t.canvasX=t.x*t.model.canvasPixelRatio,B.sort((function(t,e){return t.x-e.x})).each((function(e,n){e.xIndex=n,e.x=t===e?e.x:e.xScale(e.xIndex),e.canvasX=e.x*e.model.canvasPixelRatio})),I(B,e,k),B.filter((function(e){return 0!==Math.abs(t.xIndex-e.xIndex)})).attr("transform",(function(t){return c(t.xScale(t.xIndex),0)})),r.select(this).attr("transform",c(t.x,0)),B.each((function(n,r,i){i===t.parent.key&&(e.dimensions[r]=n)})),e.contextLayer&&e.contextLayer.render(e.panels,!1,!E(e)),e.focusLayer.render&&e.focusLayer.render(e.panels)})).on("dragend",(function(t){var e=t.parent;t.x=t.xScale(t.xIndex),t.canvasX=t.x*t.model.canvasPixelRatio,I(B,e,k),r.select(this).attr("transform",(function(t){return c(t.x,0)})),e.contextLayer&&e.contextLayer.render(e.panels,!1,!E(e)),e.focusLayer&&e.focusLayer.render(e.panels),e.pickLayer&&e.pickLayer.render(e.panels,!0),A.linePickActive(!0),a&&a.axesMoved&&a.axesMoved(e.key,e.dimensions.map((function(t){return t.crossfilterDimensionIndex})))}))),B.exit().remove();var U=B.selectAll("."+y.cn.axisOverlays).data(g,p);U.enter().append("g").classed(y.cn.axisOverlays,!0),U.selectAll("."+y.cn.axis).remove();var H=U.selectAll("."+y.cn.axis).data(g,p);H.enter().append("g").classed(y.cn.axis,!0),H.each((function(t){var e=t.model.height/t.model.tickDistance,n=t.domainScale,i=n.domain();r.select(this).call(r.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(e,t.tickFormat).tickValues(t.ordinal?i:null).tickFormat((function(e){return m.isOrdinal(t)?e:D(t.model.dimensions[t.visibleIndex],e)})).scale(n)),f.font(H.selectAll("text"),t.model.tickFont)})),H.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),H.selectAll("text").style("text-shadow",u.makeTextShadow(M)).style("cursor","default");var V=U.selectAll("."+y.cn.axisHeading).data(g,p);V.enter().append("g").classed(y.cn.axisHeading,!0);var q=V.selectAll("."+y.cn.axisTitle).data(g,p);q.enter().append("text").classed(y.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",o?"none":"auto"),q.text((function(t){return t.label})).each((function(e){var n=r.select(this);f.font(n,e.model.labelFont),u.convertToTspans(n,t)})).attr("transform",(function(t){var e=O(t.model.labelAngle,t.model.labelSide),n=y.axisTitleOffset;return(e.dir>0?"":c(0,2*n+t.model.height))+l(e.degrees)+c(-n*e.dx,-n*e.dy)})).attr("text-anchor",(function(t){var e=O(t.model.labelAngle,t.model.labelSide);return 2*Math.abs(e.dx)>Math.abs(e.dy)?e.dir*e.dx<0?"start":"end":"middle"}));var G=U.selectAll("."+y.cn.axisExtent).data(g,p);G.enter().append("g").classed(y.cn.axisExtent,!0);var W=G.selectAll("."+y.cn.axisExtentTop).data(g,p);W.enter().append("g").classed(y.cn.axisExtentTop,!0),W.attr("transform",c(0,-y.axisExtentOffset));var Y=W.selectAll("."+y.cn.axisExtentTopText).data(g,p);Y.enter().append("text").classed(y.cn.axisExtentTopText,!0).call(L),Y.text((function(t){return R(t,!0)})).each((function(t){f.font(r.select(this),t.model.rangeFont)}));var $=G.selectAll("."+y.cn.axisExtentBottom).data(g,p);$.enter().append("g").classed(y.cn.axisExtentBottom,!0),$.attr("transform",(function(t){return c(0,t.model.height+y.axisExtentOffset)}));var X=$.selectAll("."+y.cn.axisExtentBottomText).data(g,p);X.enter().append("text").classed(y.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(L),X.text((function(t){return R(t,!1)})).each((function(t){f.font(r.select(this),t.model.rangeFont)})),b.ensureAxisBrush(U,M,t)}},21341:function(t,e,n){"use strict";var r=n(17171),i=n(79749),a=n(1602).isVisible,o={};function s(t,e,n){var r=e.indexOf(n),i=t.indexOf(r);return-1===i&&(i+=e.length),i}(t.exports=function(t,e){var n=t._fullLayout;if(i(t,[],o)){var l={},c={},u={},f={},h=n._size;e.forEach((function(e,n){var r=e[0].trace;u[n]=r.index;var i=f[n]=r._fullInput.index;l[n]=t.data[i].dimensions,c[n]=t.data[i].dimensions.slice()})),r(t,e,{width:h.w,height:h.h,margin:{t:h.t,r:h.r,b:h.b,l:h.l}},{filterChanged:function(e,r,i){var a=c[e][r],o=i.map((function(t){return t.slice()})),s="dimensions["+r+"].constraintrange",l=n._tracePreGUI[t._fullData[u[e]]._fullInput.uid];if(void 0===l[s]){var h=a.constraintrange;l[s]=h||null}var d=t._fullData[u[e]].dimensions[r];o.length?(1===o.length&&(o=o[0]),a.constraintrange=o,d.constraintrange=o.slice(),o=[o]):(delete a.constraintrange,delete d.constraintrange,o=null);var p={};p[s]=o,t.emit("plotly_restyle",[p,[f[e]]])},hover:function(e){t.emit("plotly_hover",e)},unhover:function(e){t.emit("plotly_unhover",e)},axesMoved:function(e,n){var r=function(t,e){return function(n,r){return s(t,e,n)-s(t,e,r)}}(n,c[e].filter(a));l[e].sort(r),c[e].filter((function(t){return!a(t)})).sort((function(t){return c[e].indexOf(t)})).forEach((function(t){l[e].splice(l[e].indexOf(t),1),l[e].splice(c[e].indexOf(t),0,t)})),t.emit("plotly_restyle",[{dimensions:[l[e]]},[f[e]]])}})}}).reglPrecompiled=o},34e3:function(t,e,n){"use strict";var r=n(9012),i=n(27670).Y,a=n(41940),o=n(22399),s=n(5386).f,l=n(5386).s,c=n(1426).extendFlat,u=a({editType:"plot",arrayOk:!0,colorEditType:"plot"});t.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:o.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},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:c({},r.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:s({},{keys:["label","color","value","percent","text"]}),texttemplate:l({editType:"plot"},{keys:["label","color","value","percent","text"]}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:c({},u,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:c({},u,{}),outsidetextfont:c({},u,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:c({},u,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:i({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:c({},u,{}),titleposition:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"calc"}}}},13584:function(t,e,n){"use strict";var r=n(74875);e.name="pie",e.plot=function(t,n,i,a){r.plotBasePlot(e.name,t,n,i,a)},e.clean=function(t,n,i,a){r.cleanBasePlot(e.name,t,n,i,a)}},32354:function(t,e,n){"use strict";var r=n(92770),i=n(84267),a=n(7901),o={};function s(t){return function(e,n){return!!e&&!!(e=i(e)).isValid()&&(e=a.addOpacity(e,e.getAlpha()),t[n]||(t[n]=e),e)}}function l(t,e){var n,r=JSON.stringify(t),a=e[r];if(!a){for(a=t.slice(),n=0;n=0})),("funnelarea"===e.type?m:e.sort)&&a.sort((function(t,e){return e.v-t.v})),a[0]&&(a[0].vTotal=v),a},crossTraceCalc:function(t,e){var n=(e||{}).type;n||(n="pie");var r=t._fullLayout,i=t.calcdata,a=r[n+"colorway"],s=r["_"+n+"colormap"];r["extend"+n+"colors"]&&(a=l(a,o));for(var c=0,u=0;u0){s=!0;break}}s||(o=0)}return{hasLabels:n,hasValues:a,len:o}}t.exports={handleLabelsAndValues:l,supplyDefaults:function(t,e,n,r){function c(n,r){return i.coerce(t,e,a,n,r)}var u=l(c("labels"),c("values")),f=u.len;if(e._hasLabels=u.hasLabels,e._hasValues=u.hasValues,!e._hasLabels&&e._hasValues&&(c("label0"),c("dlabel")),f){e._length=f,c("marker.line.width")&&c("marker.line.color"),c("marker.colors"),c("scalegroup");var h,d=c("text"),p=c("texttemplate");if(p||(h=c("textinfo",Array.isArray(d)?"text+percent":"percent")),c("hovertext"),c("hovertemplate"),p||h&&"none"!==h){var g=c("textposition");s(t,e,r,c,g,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),(Array.isArray(g)||"auto"===g||"outside"===g)&&c("automargin"),("inside"===g||"auto"===g||Array.isArray(g))&&c("insidetextorientation")}o(e,r,c);var v=c("hole");if(c("title.text")){var m=c("title.position",v?"middle center":"top center");v||"middle center"!==m||(e.title.position="top center"),i.coerceFont(c,"title.font",r.font)}c("sort"),c("direction"),c("rotation"),c("pull")}else e.visible=!1}}},20007:function(t,e,n){"use strict";var r=n(23469).appendArrayMultiPointValues;t.exports=function(t,e){var n={curveNumber:e.index,pointNumbers:t.pts,data:e._input,fullData:e,label:t.label,color:t.color,value:t.v,percent:t.percent,text:t.text,bbox:t.bbox,v:t.v};return 1===t.pts.length&&(n.pointNumber=n.i=t.pts[0]),r(n,e,t.pts),"funnelarea"===e.type&&(delete n.v,delete n.i),n}},53581:function(t,e,n){"use strict";var r=n(71828);function i(t){return-1!==t.indexOf("e")?t.replace(/[.]?0+e/,"e"):-1!==t.indexOf(".")?t.replace(/[.]?0+$/,""):t}e.formatPiePercent=function(t,e){var n=i((100*t).toPrecision(3));return r.numSeparate(n,e)+"%"},e.formatPieValue=function(t,e){var n=i(t.toPrecision(10));return r.numSeparate(n,e)},e.getFirstFilled=function(t,e){if(Array.isArray(t))for(var n=0;n"),name:f.hovertemplate||-1!==h.indexOf("name")?f.name:void 0,idealAlign:t.pxmid[0]<0?"left":"right",color:v.castOption(w.bgcolor,t.pts)||t.color,borderColor:v.castOption(w.bordercolor,t.pts),fontFamily:v.castOption(_.family,t.pts),fontSize:v.castOption(_.size,t.pts),fontColor:v.castOption(_.color,t.pts),nameLength:v.castOption(w.namelength,t.pts),textAlign:v.castOption(w.align,t.pts),hovertemplate:v.castOption(f.hovertemplate,t.pts),hovertemplateLabels:t,eventData:[m(t,f)]},{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:e,inOut_bbox:k}),t.bbox=k[0],c._hasHoverLabel=!0}c._hasHoverEvent=!0,e.emit("plotly_hover",{points:[m(t,f)],event:r.event})}})),t.on("mouseout",(function(t){var n=e._fullLayout,i=e._fullData[c.index],o=r.select(this).datum();c._hasHoverEvent&&(t.originalEvent=r.event,e.emit("plotly_unhover",{points:[m(o,i)],event:r.event}),c._hasHoverEvent=!1),c._hasHoverLabel&&(a.loneUnhover(n._hoverlayer.node()),c._hasHoverLabel=!1)})),t.on("click",(function(t){var n=e._fullLayout,i=e._fullData[c.index];e._dragging||!1===n.hovermode||(e._hoverdata=[m(t,i)],a.click(e,r.event))}))}function x(t,e,n){var r=v.castOption(t.insidetextfont.color,e.pts);!r&&t._input.textfont&&(r=v.castOption(t._input.textfont.color,e.pts));var i=v.castOption(t.insidetextfont.family,e.pts)||v.castOption(t.textfont.family,e.pts)||n.family,a=v.castOption(t.insidetextfont.size,e.pts)||v.castOption(t.textfont.size,e.pts)||n.size;return{color:r||o.contrast(e.color),family:i,size:a}}function w(t,e){for(var n,r,i=0;ie&&e>r||n=-4;v-=2)m(Math.PI*v,"tan");for(v=4;v>=-4;v-=2)m(Math.PI*(v+1),"tan")}if(f||d){for(v=4;v>=-4;v-=2)m(Math.PI*(v+1.5),"rad");for(v=4;v>=-4;v-=2)m(Math.PI*(v+.5),"rad")}}if(s||p||f){var y=Math.sqrt(t.width*t.width+t.height*t.height);if((a={scale:i*r*2/y,rCenter:1-i,rotate:0}).textPosAngle=(e.startangle+e.stopangle)/2,a.scale>=1)return a;g.push(a)}(p||d)&&((a=k(t,r,o,l,c)).textPosAngle=(e.startangle+e.stopangle)/2,g.push(a)),(p||h)&&((a=T(t,r,o,l,c)).textPosAngle=(e.startangle+e.stopangle)/2,g.push(a));for(var b=0,x=0,w=0;w=1)break}return g[b]}function k(t,e,n,r,i){e=Math.max(0,e-2*g);var a=t.width/t.height,o=S(a,r,e,n);return{scale:2*o/t.height,rCenter:M(a,o/e),rotate:A(i)}}function T(t,e,n,r,i){e=Math.max(0,e-2*g);var a=t.height/t.width,o=S(a,r,e,n);return{scale:2*o/t.width,rCenter:M(a,o/e),rotate:A(i+Math.PI/2)}}function M(t,e){return Math.cos(e)-t*e}function A(t){return(180/Math.PI*t+720)%180-90}function S(t,e,n,r){var i=t+1/(2*Math.tan(e));return n*Math.min(1/(Math.sqrt(i*i+.5)+i),r/(Math.sqrt(t*t+r/2)+t))}function E(t,e){return t.v!==e.vTotal||e.trace.hole?Math.min(1/(1+1/Math.sin(t.halfangle)),t.ring/2):1}function C(t,e){var n=e.pxmid[0],r=e.pxmid[1],i=t.width/2,a=t.height/2;return n<0&&(i*=-1),r<0&&(a*=-1),{scale:1,rCenter:1,rotate:0,x:i+Math.abs(a)*(i>0?1:-1)/2,y:a/(1+n*n/(r*r)),outside:!0}}function P(t,e){var n,r,i,a=t.trace,o={x:t.cx,y:t.cy},s={tx:0,ty:0};s.ty+=a.title.font.size,i=O(a),-1!==a.title.position.indexOf("top")?(o.y-=(1+i)*t.r,s.ty-=t.titleBox.height):-1!==a.title.position.indexOf("bottom")&&(o.y+=(1+i)*t.r);var l,c,u=(l=t.r,c=t.trace.aspectratio,l/(void 0===c?1:c)),f=e.w*(a.domain.x[1]-a.domain.x[0])/2;return-1!==a.title.position.indexOf("left")?(f+=u,o.x-=(1+i)*u,s.tx+=t.titleBox.width/2):-1!==a.title.position.indexOf("center")?f*=2:-1!==a.title.position.indexOf("right")&&(f+=u,o.x+=(1+i)*u,s.tx-=t.titleBox.width/2),n=f/t.titleBox.width,r=L(t,e)/t.titleBox.height,{x:o.x,y:o.y,scale:Math.min(n,r),tx:s.tx,ty:s.ty}}function L(t,e){var n=t.trace,r=e.h*(n.domain.y[1]-n.domain.y[0]);return Math.min(t.titleBox.height,r/2)}function O(t){var e,n=t.pull;if(!n)return 0;if(Array.isArray(n))for(n=0,e=0;en&&(n=t.pull[e]);return n}function I(t,e){for(var n=[],r=0;r1?u=(c=n.r)/i.aspectratio:c=(u=n.r)*i.aspectratio,l=(c*=(1+i.baseratio)/2)*u}o=Math.min(o,l/n.vTotal)}for(r=0;r")}if(a){var b=l.castOption(i,e.i,"texttemplate");if(b){var x=function(t){return{label:t.label,value:t.v,valueLabel:v.formatPieValue(t.v,r.separators),percent:t.v/n.vTotal,percentLabel:v.formatPiePercent(t.v/n.vTotal,r.separators),color:t.color,text:t.text,customdata:l.castOption(i,t.i,"customdata")}}(e),w=v.getFirstFilled(i.text,e.pts);(y(w)||""===w)&&(x.text=w),e.text=l.texttemplateString(b,x,t._fullLayout._d3locale,x,i._meta||{})}else e.text=""}}function z(t,e){var n=t.rotate*Math.PI/180,r=Math.cos(n),i=Math.sin(n),a=(e.left+e.right)/2,o=(e.top+e.bottom)/2;t.textX=a*r-o*i,t.textY=a*i+o*r,t.noCenter=!0}t.exports={plot:function(t,e){var n=t._context.staticPlot,a=t._fullLayout,h=a._size;p("pie",a),w(e,t),I(e,h);var g=l.makeTraceGroups(a._pielayer,e,"trace").each((function(e){var p=r.select(this),g=e[0],m=g.trace;!function(t){var e,n,r,i=t[0],a=i.r,o=i.trace,s=v.getRotationAngle(o.rotation),l=2*Math.PI/i.vTotal,c="px0",u="px1";if("counterclockwise"===o.direction){for(e=0;ei.vTotal/2?1:0,n.halfangle=Math.PI*Math.min(n.v/i.vTotal,.5),n.ring=1-o.hole,n.rInscribed=E(n,i))}(e),p.attr("stroke-linejoin","round"),p.each((function(){var y=r.select(this).selectAll("g.slice").data(e);y.enter().append("g").classed("slice",!0),y.exit().remove();var w=[[[],[]],[[],[]]],k=!1;y.each((function(i,o){if(i.hidden)r.select(this).selectAll("path,g").remove();else{i.pointNumber=i.i,i.curveNumber=m.index,w[i.pxmid[1]<0?0:1][i.pxmid[0]<0?0:1].push(i);var c=g.cx,u=g.cy,h=r.select(this),p=h.selectAll("path.surface").data([i]);if(p.enter().append("path").classed("surface",!0).style({"pointer-events":n?"none":"all"}),h.call(b,t,e),m.pull){var y=+v.castOption(m.pull,i.pts)||0;y>0&&(c+=y*i.pxmid[0],u+=y*i.pxmid[1])}i.cxFinal=c,i.cyFinal=u;var T=m.hole;if(i.v===g.vTotal){var M="M"+(c+i.px0[0])+","+(u+i.px0[1])+L(i.px0,i.pxmid,!0,1)+L(i.pxmid,i.px0,!0,1)+"Z";T?p.attr("d","M"+(c+T*i.px0[0])+","+(u+T*i.px0[1])+L(i.px0,i.pxmid,!1,T)+L(i.pxmid,i.px0,!1,T)+"Z"+M):p.attr("d",M)}else{var A=L(i.px0,i.px1,!0,1);if(T){var S=1-T;p.attr("d","M"+(c+T*i.px1[0])+","+(u+T*i.px1[1])+L(i.px1,i.px0,!1,T)+"l"+S*i.px0[0]+","+S*i.px0[1]+A+"Z")}else p.attr("d","M"+c+","+u+"l"+i.px0[0]+","+i.px0[1]+A+"Z")}R(t,i,g);var E=v.castOption(m.textposition,i.pts),P=h.selectAll("g.slicetext").data(i.text&&"none"!==E?[0]:[]);P.enter().append("g").classed("slicetext",!0),P.exit().remove(),P.each((function(){var n=l.ensureSingle(r.select(this),"text","",(function(t){t.attr("data-notex",1)})),h=l.ensureUniformFontSize(t,"outside"===E?function(t,e,n){var r=v.castOption(t.outsidetextfont.color,e.pts)||v.castOption(t.textfont.color,e.pts)||n.color,i=v.castOption(t.outsidetextfont.family,e.pts)||v.castOption(t.textfont.family,e.pts)||n.family,a=v.castOption(t.outsidetextfont.size,e.pts)||v.castOption(t.textfont.size,e.pts)||n.size;return{color:r,family:i,size:a}}(m,i,a.font):x(m,i,a.font));n.text(i.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(s.font,h).call(f.convertToTspans,t);var p,y=s.bBox(n.node());if("outside"===E)p=C(y,i);else if(p=_(y,i,g),"auto"===E&&p.scale<1){var b=l.ensureUniformFontSize(t,m.outsidetextfont);n.call(s.font,b),p=C(y=s.bBox(n.node()),i)}var w=p.textPosAngle,T=void 0===w?i.pxmid:D(g.r,w);if(p.targetX=c+T[0]*p.rCenter+(p.x||0),p.targetY=u+T[1]*p.rCenter+(p.y||0),z(p,y),p.outside){var M=p.targetY;i.yLabelMin=M-y.height/2,i.yLabelMid=M,i.yLabelMax=M+y.height/2,i.labelExtraX=0,i.labelExtraY=0,k=!0}p.fontSize=h.size,d(m.type,p,a),e[o].transform=p,l.setTransormAndDisplay(n,p)}))}function L(t,e,n,r){var a=r*(e[0]-t[0]),o=r*(e[1]-t[1]);return"a"+r*g.r+","+r*g.r+" 0 "+i.largeArc+(n?" 1 ":" 0 ")+a+","+o}}));var T=r.select(this).selectAll("g.titletext").data(m.title.text?[0]:[]);if(T.enter().append("g").classed("titletext",!0),T.exit().remove(),T.each((function(){var e,n=l.ensureSingle(r.select(this),"text","",(function(t){t.attr("data-notex",1)})),i=m.title.text;m._meta&&(i=l.templateString(i,m._meta)),n.text(i).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(s.font,m.title.font).call(f.convertToTspans,t),e="middle center"===m.title.position?function(t){var e=Math.sqrt(t.titleBox.width*t.titleBox.width+t.titleBox.height*t.titleBox.height);return{x:t.cx,y:t.cy,scale:t.trace.hole*t.r*2/e,tx:0,ty:-t.titleBox.height/2+t.trace.title.font.size}}(g):P(g,h),n.attr("transform",u(e.x,e.y)+c(Math.min(1,e.scale))+u(e.tx,e.ty))})),k&&function(t,e){var n,r,i,a,o,s,l,c,u,f,h,d,p;function g(t,e){return t.pxmid[1]-e.pxmid[1]}function m(t,e){return e.pxmid[1]-t.pxmid[1]}function y(t,n){n||(n={});var i,c,u,h,d=n.labelExtraY+(r?n.yLabelMax:n.yLabelMin),p=r?t.yLabelMin:t.yLabelMax,g=r?t.yLabelMax:t.yLabelMin,m=t.cyFinal+o(t.px0[1],t.px1[1]),y=d-p;if(y*l>0&&(t.labelExtraY=y),Array.isArray(e.pull))for(c=0;c=(v.castOption(e.pull,u.pts)||0)||((t.pxmid[1]-u.pxmid[1])*l>0?(y=u.cyFinal+o(u.px0[1],u.px1[1])-p-t.labelExtraY)*l>0&&(t.labelExtraY+=y):(g+t.labelExtraY-m)*l>0&&(i=3*s*Math.abs(c-f.indexOf(t)),(h=u.cxFinal+a(u.px0[0],u.px1[0])+i-(t.cxFinal+t.pxmid[0])-t.labelExtraX)*s>0&&(t.labelExtraX+=h)))}for(r=0;r<2;r++)for(i=r?g:m,o=r?Math.max:Math.min,l=r?1:-1,n=0;n<2;n++){for(a=n?Math.max:Math.min,s=n?1:-1,(c=t[r][n]).sort(i),u=t[1-r][n],f=u.concat(c),d=[],h=0;hMath.abs(f)?s+="l"+f*t.pxmid[0]/t.pxmid[1]+","+f+"H"+(a+t.labelExtraX+c):s+="l"+t.labelExtraX+","+u+"v"+(f-u)+"h"+c}else s+="V"+(t.yLabelMid+t.labelExtraY)+"h"+c;l.ensureSingle(n,"path","textline").call(o.stroke,e.outsidetextfont.color).attr({"stroke-width":Math.min(2,e.outsidetextfont.size/8),d:s,fill:"none"})}else n.select("path.textline").remove()}))}(y,m),k&&m.automargin){var M=s.bBox(p.node()),A=m.domain,S=h.w*(A.x[1]-A.x[0]),E=h.h*(A.y[1]-A.y[0]),L=(.5*S-g.r)/h.w,O=(.5*E-g.r)/h.h;i.autoMargin(t,"pie."+m.uid+".automargin",{xl:A.x[0]-L,xr:A.x[1]+L,yb:A.y[0]-O,yt:A.y[1]+O,l:Math.max(g.cx-g.r-M.left,0),r:Math.max(M.right-(g.cx+g.r),0),b:Math.max(M.bottom-(g.cy+g.r),0),t:Math.max(g.cy-g.r-M.top,0),pad:5})}}))}));setTimeout((function(){g.selectAll("tspan").each((function(){var t=r.select(this);t.attr("dy")&&t.attr("dy",t.attr("dy"))}))}),0)},formatSliceLabel:R,transformInsideText:_,determineInsideTextFont:x,positionTitleOutside:P,prerenderTitles:w,layoutAreas:I,attachFxHandlers:b,computeTransform:z}},68357:function(t,e,n){"use strict";var r=n(39898),i=n(63463),a=n(72597).resizeText;t.exports=function(t){var e=t._fullLayout._pielayer.selectAll(".trace");a(t,e,"pie"),e.each((function(t){var e=t[0].trace,n=r.select(this);n.style({opacity:e.opacity}),n.selectAll("path.surface").each((function(t){r.select(this).call(i,t,e)}))}))}},63463:function(t,e,n){"use strict";var r=n(7901),i=n(53581).castOption;t.exports=function(t,e,n){var a=n.marker.line,o=i(a.color,e.pts)||r.defaultLine,s=i(a.width,e.pts)||0;t.style("stroke-width",s).call(r.fill,e.color).call(r.stroke,o)}},10959:function(t,e,n){"use strict";var r=n(82196);t.exports={x:r.x,y:r.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:r.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(t,e,n){"use strict";var r=n(9330).gl_pointcloud2d,i=n(78614),a=n(71739).findExtremes,o=n(34603);function s(t,e){this.scene=t,this.uid=e,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=r(t.glplot,this.pointcloudOptions),this.pointcloud._trace=this}var l=s.prototype;l.handlePick=function(t){var e=this.idToIndex[t.pointId];return{trace:this,dataCoord:t.dataCoord,traceCoord:this.pickXYData?[this.pickXYData[2*e],this.pickXYData[2*e+1]]:[this.pickXData[e],this.pickYData[e]],textLabel:Array.isArray(this.textLabels)?this.textLabels[e]:this.textLabels,color:this.color,name:this.name,pointIndex:e,hoverinfo:this.hoverinfo}},l.update=function(t){this.index=t.index,this.textLabels=t.text,this.name=t.name,this.hoverinfo=t.hoverinfo,this.bounds=[1/0,1/0,-1/0,-1/0],this.updateFast(t),this.color=o(t,{})},l.updateFast=function(t){var e,n,r,o,s,l,c=this.xData=this.pickXData=t.x,u=this.yData=this.pickYData=t.y,f=this.pickXYData=t.xy,h=t.xbounds&&t.ybounds,d=t.indices,p=this.bounds;if(f){if(r=f,e=f.length>>>1,h)p[0]=t.xbounds[0],p[2]=t.xbounds[1],p[1]=t.ybounds[0],p[3]=t.ybounds[1];else for(l=0;lp[2]&&(p[2]=o),sp[3]&&(p[3]=s);if(d)n=d;else for(n=new Int32Array(e),l=0;lp[2]&&(p[2]=o),sp[3]&&(p[3]=s);this.idToIndex=n,this.pointcloudOptions.idToIndex=n,this.pointcloudOptions.positions=r;var g=i(t.marker.color),v=i(t.marker.border.color),m=t.opacity*t.marker.opacity;g[3]*=m,this.pointcloudOptions.color=g;var y=t.marker.blend;null===y&&(y=c.length<100||u.length<100),this.pointcloudOptions.blend=y,v[3]*=m,this.pointcloudOptions.borderColor=v;var b=t.marker.sizemin,x=Math.max(t.marker.sizemax,t.marker.sizemin);this.pointcloudOptions.sizeMin=b,this.pointcloudOptions.sizeMax=x,this.pointcloudOptions.areaRatio=t.marker.border.arearatio,this.pointcloud.update(this.pointcloudOptions);var w=this.scene.xaxis,_=this.scene.yaxis,k=x/2||.5;t._extremes[w._id]=a(w,[p[0],p[2]],{ppad:k}),t._extremes[_._id]=a(_,[p[1],p[3]],{ppad:k})},l.dispose=function(){this.pointcloud.dispose()},t.exports=function(t,e){var n=new s(t,e.uid);return n.update(e),n}},33876:function(t,e,n){"use strict";var r=n(71828),i=n(10959);t.exports=function(t,e,n){function a(n,a){return r.coerce(t,e,i,n,a)}a("x"),a("y"),a("xbounds"),a("ybounds"),t.xy&&t.xy instanceof Float32Array&&(e.xy=t.xy),t.indices&&t.indices instanceof Int32Array&&(e.indices=t.indices),a("text"),a("marker.color",n),a("marker.opacity"),a("marker.blend"),a("marker.sizemin"),a("marker.sizemax"),a("marker.border.color",n),a("marker.border.arearatio"),e._length=null}},20593:function(t,e,n){"use strict";["*pointcloud* trace is deprecated!","Please consider switching to the *scattergl* trace type."].join(" "),t.exports={attributes:n(10959),supplyDefaults:n(33876),calc:n(36563),plot:n(42743),moduleType:"trace",name:"pointcloud",basePlotModule:n(4796),categories:["gl","gl2d","showLegend"],meta:{}}},39953:function(t,e,n){"use strict";var r=n(41940),i=n(9012),a=n(22399),o=n(77914),s=n(27670).Y,l=n(5386).f,c=n(50693),u=n(44467).templatedArray,f=n(12663).descriptionOnlyNumbers,h=n(1426).extendFlat,d=n(30962).overrideAll;(t.exports=d({hoverinfo:h({},i.hoverinfo,{flags:[],arrayOk:!1}),hoverlabel:o.hoverlabel,domain:s({name:"sankey",trace:!0}),orientation:{valType:"enumerated",values:["v","h"],dflt:"h"},valueformat:{valType:"string",dflt:".3s",description:f("value")},valuesuffix:{valType:"string",dflt:""},arrangement:{valType:"enumerated",values:["snap","perpendicular","freeform","fixed"],dflt:"snap"},textfont:r({}),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:a.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:o.hoverlabel,hovertemplate:l({},{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:a.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:o.hoverlabel,hovertemplate:l({},{keys:["value","label"]}),colorscales:u("concentrationscales",{editType:"calc",label:{valType:"string",editType:"calc",dflt:""},cmax:{valType:"number",editType:"calc",dflt:1},cmin:{valType:"number",editType:"calc",dflt:0},colorscale:h(c().colorscale,{dflt:[[0,"white"],[1,"black"]]})})}},"calc","nested")).transforms=void 0},75536:function(t,e,n){"use strict";var r=n(30962).overrideAll,i=n(27659).a0,a=n(60436),o=n(528),s=n(6964),l=n(28569),c=n(47322).prepSelect,u=n(71828),f=n(73972),h="sankey";function d(t,e){var n=t._fullData[e],r=t._fullLayout,i=r.dragmode,a="pan"===r.dragmode?"move":"crosshair",o=n._bgRect;if(o&&"pan"!==i&&"zoom"!==i){s(o,a);var h={_id:"x",c2p:u.identity,_offset:n._sankey.translateX,_length:n._sankey.width},d={_id:"y",c2p:u.identity,_offset:n._sankey.translateY,_length:n._sankey.height},p={gd:t,element:o.node(),plotinfo:{id:e,xaxis:h,yaxis:d,fillRangeItems:u.noop},subplot:e,xaxes:[h],yaxes:[d],doneFnCompleted:function(n){var r,i=t._fullData[e],a=i.node.groups.slice(),o=[];function s(t){for(var e=i._sankey.graph.nodes,n=0;ny&&(y=a.source[e]),a.target[e]>y&&(y=a.target[e]);var b,x=y+1;t.node._count=x;var w=t.node.groups,_={};for(e=0;e0&&s(E,x)&&s(C,x)&&(!_.hasOwnProperty(E)||!_.hasOwnProperty(C)||_[E]!==_[C])){_.hasOwnProperty(C)&&(C=_[C]),_.hasOwnProperty(E)&&(E=_[E]),C=+C,h[E=+E]=h[C]=!0;var P="";a.label&&a.label[e]&&(P=a.label[e]);var L=null;P&&d.hasOwnProperty(P)&&(L=d[P]),c.push({pointNumber:e,label:P,color:u?a.color[e]:a.color,customdata:f?a.customdata[e]:a.customdata,concentrationscale:L,source:E,target:C,value:+S}),A.source.push(E),A.target.push(C)}}var O=x+w.length,I=o(n.color),D=o(n.customdata),R=[];for(e=0;ex-1,childrenNodes:[],pointNumber:e,label:z,color:I?n.color[e]:n.color,customdata:D?n.customdata[e]:n.customdata})}var N=!1;return function(t,e,n){for(var a=i.init2dArray(t,0),o=0;o1}))}(O,A.source,A.target)&&(N=!0),{circular:N,links:c,nodes:R,groups:w,groupLookup:_}}t.exports=function(t,e){var n=c(e);return a({circular:n.circular,_nodes:n.nodes,_links:n.links,_groups:n.groups,_groupLookup:n.groupLookup})}},85247:function(t){"use strict";t.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(t,e,n){"use strict";var r=n(71828),i=n(39953),a=n(7901),o=n(84267),s=n(27670).c,l=n(38048),c=n(44467),u=n(85501);function f(t,e){function n(n,a){return r.coerce(t,e,i.link.colorscales,n,a)}n("label"),n("cmin"),n("cmax"),n("colorscale")}t.exports=function(t,e,n,h){function d(n,a){return r.coerce(t,e,i,n,a)}var p=r.extendDeep(h.hoverlabel,t.hoverlabel),g=t.node,v=c.newContainer(e,"node");function m(t,e){return r.coerce(g,v,i.node,t,e)}m("label"),m("groups"),m("x"),m("y"),m("pad"),m("thickness"),m("line.color"),m("line.width"),m("hoverinfo",t.hoverinfo),l(g,v,m,p),m("hovertemplate");var y=h.colorway;m("color",v.label.map((function(t,e){return a.addOpacity(function(t){return y[t%y.length]}(e),.8)}))),m("customdata");var b=t.link||{},x=c.newContainer(e,"link");function w(t,e){return r.coerce(b,x,i.link,t,e)}w("label"),w("arrowlen"),w("source"),w("target"),w("value"),w("line.color"),w("line.width"),w("hoverinfo",t.hoverinfo),l(b,x,w,p),w("hovertemplate");var _,k=o(h.paper_bgcolor).getLuminance()<.333?"rgba(255, 255, 255, 0.6)":"rgba(0, 0, 0, 0.2)";w("color",r.repeat(k,x.value.length)),w("customdata"),u(b,x,{name:"colorscales",handleItemDefaults:f}),s(e,h,d),d("orientation"),d("valueformat"),d("valuesuffix"),v.x.length&&v.y.length&&(_="freeform"),d("arrangement",_),r.coerceFont(d,"textfont",r.extendFlat({},h.font)),e._length=null}},29396:function(t,e,n){"use strict";t.exports={attributes:n(39953),supplyDefaults:n(26857),calc:n(92930),plot:n(60436),moduleType:"trace",name:"sankey",basePlotModule:n(75536),selectPoints:n(84564),categories:["noOpacity"],meta:{}}},60436:function(t,e,n){"use strict";var r=n(39898),i=n(71828),a=i.numberFormat,o=n(3393),s=n(30211),l=n(7901),c=n(85247).cn,u=i._;function f(t){return""!==t}function h(t,e){return t.filter((function(t){return t.key===e.traceId}))}function d(t,e){r.select(t).select("path").style("fill-opacity",e),r.select(t).select("rect").style("fill-opacity",e)}function p(t){r.select(t).select("text.name").style("fill","black")}function g(t){return function(e){return-1!==t.node.sourceLinks.indexOf(e.link)||-1!==t.node.targetLinks.indexOf(e.link)}}function v(t){return function(e){return-1!==e.node.sourceLinks.indexOf(t.link)||-1!==e.node.targetLinks.indexOf(t.link)}}function m(t,e,n){e&&n&&h(n,e).selectAll("."+c.sankeyLink).filter(g(e)).call(b.bind(0,e,n,!1))}function y(t,e,n){e&&n&&h(n,e).selectAll("."+c.sankeyLink).filter(g(e)).call(x.bind(0,e,n,!1))}function b(t,e,n,r){var i=r.datum().link.label;r.style("fill-opacity",(function(t){if(!t.link.concentrationscale)return.4})),i&&h(e,t).selectAll("."+c.sankeyLink).filter((function(t){return t.link.label===i})).style("fill-opacity",(function(t){if(!t.link.concentrationscale)return.4})),n&&h(e,t).selectAll("."+c.sankeyNode).filter(v(t)).call(m)}function x(t,e,n,r){var i=r.datum().link.label;r.style("fill-opacity",(function(t){return t.tinyColorAlpha})),i&&h(e,t).selectAll("."+c.sankeyLink).filter((function(t){return t.link.label===i})).style("fill-opacity",(function(t){return t.tinyColorAlpha})),n&&h(e,t).selectAll(c.sankeyNode).filter(v(t)).call(y)}function w(t,e){var n=t.hoverlabel||{},r=i.nestedProperty(n,e).get();return!Array.isArray(r)&&r}t.exports=function(t,e){for(var n=t._fullLayout,i=n._paper,h=n._size,g=0;g"),color:w(o,"bgcolor")||l.addOpacity(g.color,1),borderColor:w(o,"bordercolor"),fontFamily:w(o,"font.family"),fontSize:w(o,"font.size"),fontColor:w(o,"font.color"),nameLength:w(o,"namelength"),textAlign:w(o,"align"),idealAlign:r.event.x"),color:w(o,"bgcolor")||i.tinyColorHue,borderColor:w(o,"bordercolor"),fontFamily:w(o,"font.family"),fontSize:w(o,"font.size"),fontColor:w(o,"font.color"),nameLength:w(o,"namelength"),textAlign:w(o,"align"),idealAlign:"left",hovertemplate:o.hovertemplate,hovertemplateLabels:y,eventData:[i.node]},{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:t});d(_,.85),p(_)}}},unhover:function(e,i,a){!1!==t._fullLayout.hovermode&&(r.select(e).call(y,i,a),"skip"!==i.node.trace.node.hoverinfo&&(i.node.fullData=i.node.trace,t.emit("plotly_unhover",{event:r.event,points:[i.node]})),s.loneUnhover(n._hoverlayer.node()))},select:function(e,n,i){var a=n.node;a.originalEvent=r.event,t._hoverdata=[a],r.select(e).call(y,n,i),s.click(t,{target:!0})}}})}},3393:function(t,e,n){"use strict";var r=n(49887),i=n(81684).k4,a=n(39898),o=n(30838),s=n(86781),l=n(85247),c=n(84267),u=n(7901),f=n(91424),h=n(71828),d=h.strTranslate,p=h.strRotate,g=n(28984),v=g.keyFun,m=g.repeat,y=g.unwrap,b=n(63893),x=n(73972),w=n(18783),_=w.CAP_SHIFT,k=w.LINE_SPACING;function T(t,e,n){var r,i=y(e),a=i.trace,u=a.domain,f="h"===a.orientation,d=a.node.pad,p=a.node.thickness,g=t.width*(u.x[1]-u.x[0]),v=t.height*(u.y[1]-u.y[0]),m=i._nodes,b=i._links,x=i.circular;(r=x?s.sankeyCircular().circularLinkGap(0):o.sankey()).iterations(l.sankeyIterations).size(f?[g,v]:[v,g]).nodeWidth(p).nodePadding(d).nodeId((function(t){return t.pointNumber})).nodes(m).links(b);var w,_,k,T=r();for(var M in r.nodePadding()=i||(n=i-e.y0)>1e-6&&(e.y0+=n,e.y1+=n),i=e.y1+d}))}(function(t){var e,n,r=t.map((function(t,e){return{x0:t.x0,index:e}})).sort((function(t,e){return t.x0-e.x0})),i=[],a=-1,o=-1/0;for(w=0;wo+p&&(a+=1,e=s.x0),o=s.x0,i[a]||(i[a]=[]),i[a].push(s),n=e-s.x0,s.x0+=n,s.x1+=n}return i}(m=T.nodes)),r.update(T)}return{circular:x,key:n,trace:a,guid:h.randstr(),horizontal:f,width:g,height:v,nodePad:a.node.pad,nodeLineColor:a.node.line.color,nodeLineWidth:a.node.line.width,linkLineColor:a.link.line.color,linkLineWidth:a.link.line.width,linkArrowLength:a.link.arrowlen,valueFormat:a.valueformat,valueSuffix:a.valuesuffix,textFont:a.textfont,translateX:u.x[0]*t.width+t.margin.l,translateY:t.height-u.y[1]*t.height+t.margin.t,dragParallel:f?v:g,dragPerpendicular:f?g:v,arrangement:a.arrangement,sankey:r,graph:T,forceLayouts:{},interactionState:{dragInProgress:!1,hovered:!1}}}function M(t,e,n){var r=c(e.color),i=e.source.label+"|"+e.target.label+"__"+n;return e.trace=t.trace,e.curveNumber=t.trace.index,{circular:t.circular,key:i,traceId:t.key,pointNumber:e.pointNumber,link:e,tinyColorHue:u.tinyRGB(r),tinyColorAlpha:r.getAlpha(),linkPath:A,linkLineColor:t.linkLineColor,linkLineWidth:t.linkLineWidth,linkArrowLength:t.linkArrowLength,valueFormat:t.valueFormat,valueSuffix:t.valueSuffix,sankey:t.sankey,parent:t,interactionState:t.interactionState,flow:e.flow}}function A(){var t=.5;return function(e){var n=e.linkArrowLength;if(e.link.circular)return function(t,e){var n=t.width/2,r=t.circularPathData;return"top"===t.circularLinkType?"M "+(r.targetX-e)+" "+(r.targetY+n)+" L"+(r.rightInnerExtent-e)+" "+(r.targetY+n)+"A"+(r.rightLargeArcRadius+n)+" "+(r.rightSmallArcRadius+n)+" 0 0 1 "+(r.rightFullExtent-n-e)+" "+(r.targetY-r.rightSmallArcRadius)+"L"+(r.rightFullExtent-n-e)+" "+r.verticalRightInnerExtent+"A"+(r.rightLargeArcRadius+n)+" "+(r.rightLargeArcRadius+n)+" 0 0 1 "+(r.rightInnerExtent-e)+" "+(r.verticalFullExtent-n)+"L"+r.leftInnerExtent+" "+(r.verticalFullExtent-n)+"A"+(r.leftLargeArcRadius+n)+" "+(r.leftLargeArcRadius+n)+" 0 0 1 "+(r.leftFullExtent+n)+" "+r.verticalLeftInnerExtent+"L"+(r.leftFullExtent+n)+" "+(r.sourceY-r.leftSmallArcRadius)+"A"+(r.leftLargeArcRadius+n)+" "+(r.leftSmallArcRadius+n)+" 0 0 1 "+r.leftInnerExtent+" "+(r.sourceY+n)+"L"+r.sourceX+" "+(r.sourceY+n)+"L"+r.sourceX+" "+(r.sourceY-n)+"L"+r.leftInnerExtent+" "+(r.sourceY-n)+"A"+(r.leftLargeArcRadius-n)+" "+(r.leftSmallArcRadius-n)+" 0 0 0 "+(r.leftFullExtent-n)+" "+(r.sourceY-r.leftSmallArcRadius)+"L"+(r.leftFullExtent-n)+" "+r.verticalLeftInnerExtent+"A"+(r.leftLargeArcRadius-n)+" "+(r.leftLargeArcRadius-n)+" 0 0 0 "+r.leftInnerExtent+" "+(r.verticalFullExtent+n)+"L"+(r.rightInnerExtent-e)+" "+(r.verticalFullExtent+n)+"A"+(r.rightLargeArcRadius-n)+" "+(r.rightLargeArcRadius-n)+" 0 0 0 "+(r.rightFullExtent+n-e)+" "+r.verticalRightInnerExtent+"L"+(r.rightFullExtent+n-e)+" "+(r.targetY-r.rightSmallArcRadius)+"A"+(r.rightLargeArcRadius-n)+" "+(r.rightSmallArcRadius-n)+" 0 0 0 "+(r.rightInnerExtent-e)+" "+(r.targetY-n)+"L"+(r.targetX-e)+" "+(r.targetY-n)+(e>0?"L"+r.targetX+" "+r.targetY:"")+"Z":"M "+(r.targetX-e)+" "+(r.targetY-n)+" L"+(r.rightInnerExtent-e)+" "+(r.targetY-n)+"A"+(r.rightLargeArcRadius+n)+" "+(r.rightSmallArcRadius+n)+" 0 0 0 "+(r.rightFullExtent-n-e)+" "+(r.targetY+r.rightSmallArcRadius)+"L"+(r.rightFullExtent-n-e)+" "+r.verticalRightInnerExtent+"A"+(r.rightLargeArcRadius+n)+" "+(r.rightLargeArcRadius+n)+" 0 0 0 "+(r.rightInnerExtent-e)+" "+(r.verticalFullExtent+n)+"L"+r.leftInnerExtent+" "+(r.verticalFullExtent+n)+"A"+(r.leftLargeArcRadius+n)+" "+(r.leftLargeArcRadius+n)+" 0 0 0 "+(r.leftFullExtent+n)+" "+r.verticalLeftInnerExtent+"L"+(r.leftFullExtent+n)+" "+(r.sourceY+r.leftSmallArcRadius)+"A"+(r.leftLargeArcRadius+n)+" "+(r.leftSmallArcRadius+n)+" 0 0 0 "+r.leftInnerExtent+" "+(r.sourceY-n)+"L"+r.sourceX+" "+(r.sourceY-n)+"L"+r.sourceX+" "+(r.sourceY+n)+"L"+r.leftInnerExtent+" "+(r.sourceY+n)+"A"+(r.leftLargeArcRadius-n)+" "+(r.leftSmallArcRadius-n)+" 0 0 1 "+(r.leftFullExtent-n)+" "+(r.sourceY+r.leftSmallArcRadius)+"L"+(r.leftFullExtent-n)+" "+r.verticalLeftInnerExtent+"A"+(r.leftLargeArcRadius-n)+" "+(r.leftLargeArcRadius-n)+" 0 0 1 "+r.leftInnerExtent+" "+(r.verticalFullExtent-n)+"L"+(r.rightInnerExtent-e)+" "+(r.verticalFullExtent-n)+"A"+(r.rightLargeArcRadius-n)+" "+(r.rightLargeArcRadius-n)+" 0 0 1 "+(r.rightFullExtent+n-e)+" "+r.verticalRightInnerExtent+"L"+(r.rightFullExtent+n-e)+" "+(r.targetY+r.rightSmallArcRadius)+"A"+(r.rightLargeArcRadius-n)+" "+(r.rightSmallArcRadius-n)+" 0 0 1 "+(r.rightInnerExtent-e)+" "+(r.targetY+n)+"L"+(r.targetX-e)+" "+(r.targetY+n)+(e>0?"L"+r.targetX+" "+r.targetY:"")+"Z"}(e.link,n);var r=Math.abs((e.link.target.x0-e.link.source.x1)/2);n>r&&(n=r);var a=e.link.source.x1,o=e.link.target.x0-n,s=i(a,o),l=s(t),c=s(1-t),u=e.link.y0-e.link.width/2,f=e.link.y0+e.link.width/2,h=e.link.y1-e.link.width/2,d=e.link.y1+e.link.width/2,p="M"+a+","+u,g="C"+l+","+u+" "+c+","+h+" "+o+","+h,v="C"+c+","+d+" "+l+","+f+" "+a+","+f,m=n>0?"L"+(o+n)+","+(h+e.link.width/2):"";return p+g+(m+="L"+o+","+d)+v+"Z"}}function S(t,e){var n=c(e.color),r=l.nodePadAcross,i=t.nodePad/2;e.dx=e.x1-e.x0,e.dy=e.y1-e.y0;var a=e.dx,o=Math.max(.5,e.dy),s="node_"+e.pointNumber;return e.group&&(s=h.randstr()),e.trace=t.trace,e.curveNumber=t.trace.index,{index:e.pointNumber,key:s,partOfGroup:e.partOfGroup||!1,group:e.group,traceId:t.key,trace:t.trace,node:e,nodePad:t.nodePad,nodeLineColor:t.nodeLineColor,nodeLineWidth:t.nodeLineWidth,textFont:t.textFont,size:t.horizontal?t.height:t.width,visibleWidth:Math.ceil(a),visibleHeight:o,zoneX:-r,zoneY:-i,zoneWidth:a+2*r,zoneHeight:o+2*i,labelY:t.horizontal?e.dy/2+1:e.dx/2+1,left:1===e.originalLayer,sizeAcross:t.width,forceLayouts:t.forceLayouts,horizontal:t.horizontal,darkBackground:n.getBrightness()<=128,tinyColorHue:u.tinyRGB(n),tinyColorAlpha:n.getAlpha(),valueFormat:t.valueFormat,valueSuffix:t.valueSuffix,sankey:t.sankey,graph:t.graph,arrangement:t.arrangement,uniqueNodeLabelPathId:[t.guid,t.key,s].join("_"),interactionState:t.interactionState,figure:t}}function E(t){t.attr("transform",(function(t){return d(t.node.x0.toFixed(3),t.node.y0.toFixed(3))}))}function C(t){t.call(E)}function P(t,e){t.call(C),e.attr("d",A())}function L(t){t.attr("width",(function(t){return t.node.x1-t.node.x0})).attr("height",(function(t){return t.visibleHeight}))}function O(t){return t.link.width>1||t.linkLineWidth>0}function I(t){return d(t.translateX,t.translateY)+(t.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function D(t,e,n){t.on(".basic",null).on("mouseover.basic",(function(t){t.interactionState.dragInProgress||t.partOfGroup||(n.hover(this,t,e),t.interactionState.hovered=[this,t])})).on("mousemove.basic",(function(t){t.interactionState.dragInProgress||t.partOfGroup||(n.follow(this,t),t.interactionState.hovered=[this,t])})).on("mouseout.basic",(function(t){t.interactionState.dragInProgress||t.partOfGroup||(n.unhover(this,t,e),t.interactionState.hovered=!1)})).on("click.basic",(function(t){t.interactionState.hovered&&(n.unhover(this,t,e),t.interactionState.hovered=!1),t.interactionState.dragInProgress||t.partOfGroup||n.select(this,t,e)}))}function R(t,e,n,i){var o=a.behavior.drag().origin((function(t){return{x:t.node.x0+t.visibleWidth/2,y:t.node.y0+t.visibleHeight/2}})).on("dragstart",(function(a){if("fixed"!==a.arrangement&&(h.ensureSingle(i._fullLayout._infolayer,"g","dragcover",(function(t){i._fullLayout._dragCover=t})),h.raiseToTop(this),a.interactionState.dragInProgress=a.node,N(a.node),a.interactionState.hovered&&(n.nodeEvents.unhover.apply(0,a.interactionState.hovered),a.interactionState.hovered=!1),"snap"===a.arrangement)){var o=a.traceId+"|"+a.key;a.forceLayouts[o]?a.forceLayouts[o].alpha(1):function(t,e,n,i){!function(t){for(var e=0;e0&&r.forceLayouts[e].alpha(0)}}(0,e,a,n)).stop()}(0,o,a),function(t,e,n,r,i){window.requestAnimationFrame((function a(){var o;for(o=0;o0)window.requestAnimationFrame(a);else{var s=n.node.originalX;n.node.x0=s-n.visibleWidth/2,n.node.x1=s+n.visibleWidth/2,z(n,i)}}))}(t,e,a,o,i)}})).on("drag",(function(n){if("fixed"!==n.arrangement){var r=a.event.x,i=a.event.y;"snap"===n.arrangement?(n.node.x0=r-n.visibleWidth/2,n.node.x1=r+n.visibleWidth/2,n.node.y0=i-n.visibleHeight/2,n.node.y1=i+n.visibleHeight/2):("freeform"===n.arrangement&&(n.node.x0=r-n.visibleWidth/2,n.node.x1=r+n.visibleWidth/2),i=Math.max(0,Math.min(n.size-n.visibleHeight/2,i)),n.node.y0=i-n.visibleHeight/2,n.node.y1=i+n.visibleHeight/2),N(n.node),"snap"!==n.arrangement&&(n.sankey.update(n.graph),P(t.filter(j(n)),e))}})).on("dragend",(function(t){if("fixed"!==t.arrangement){t.interactionState.dragInProgress=!1;for(var e=0;el&&P[m].gap;)m--;for(b=P[m].s,g=P.length-1;g>m;g--)P[g].s=b;for(;lS[f]&&f=0;f--){var h=t[f];if("scatter"===h.type&&h.xaxis===c.xaxis&&h.yaxis===c.yaxis){h.opacity=void 0;break}}}}}},17438:function(t,e,n){"use strict";var r=n(71828),i=n(73972),a=n(82196),o=n(47581),s=n(34098),l=n(67513),c=n(73927),u=n(565),f=n(49508),h=n(11058),d=n(94039),p=n(82410),g=n(28908),v=n(71828).coercePattern;t.exports=function(t,e,n,m){function y(n,i){return r.coerce(t,e,a,n,i)}var b=l(t,e,m,y);if(b||(e.visible=!1),e.visible){c(t,e,m,y),y("xhoverformat"),y("yhoverformat");var x=u(t,e,m,y);"group"===m.scattermode&&void 0===e.orientation&&y("orientation","v");var w=!x&&b=Math.min(e,n)&&p<=Math.max(e,n)?0:1/0}var r=Math.max(3,t.mrc||0),i=1-1/r,a=Math.abs(h.c2p(t.x)-p);return a=Math.min(e,n)&&g<=Math.max(e,n)?0:1/0}var r=Math.max(3,t.mrc||0),i=1-1/r,a=Math.abs(d.c2p(t.y)-g);return aY!==(F=D[O][1])>=Y&&(z=D[O-1][0],N=D[O][0],F-j&&(R=z+(N-z)*(Y-j)/(F-j),V=Math.min(V,R),q=Math.max(q,R)));V=Math.max(V,0),q=Math.min(q,h._length);var $=s.defaultLine;return s.opacity(f.fillcolor)?$=f.fillcolor:s.opacity((f.line||{}).color)&&($=f.line.color),r.extendFlat(t,{distance:t.maxHoverDistance,x0:V,x1:q,y0:Y,y1:Y,color:$,hovertemplate:!1}),delete t.index,f.text&&!Array.isArray(f.text)?t.text=String(f.text):t.text=f.name,[t]}}}},67368:function(t,e,n){"use strict";var r=n(34098);t.exports={hasLines:r.hasLines,hasMarkers:r.hasMarkers,hasText:r.hasText,isBubble:r.isBubble,attributes:n(82196),layoutAttributes:n(21479),supplyDefaults:n(17438),crossTraceDefaults:n(34936),supplyLayoutDefaults:n(79334),calc:n(47761).calc,crossTraceCalc:n(72626),arraysToCalcdata:n(75225),plot:n(32663),colorbar:n(4898),formatLabels:n(8225),style:n(16296).style,styleOnSelect:n(16296).styleOnSelect,hoverPoints:n(33720),selectPoints:n(98002),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:n(93612),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}},21479:function(t){"use strict";t.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}},79334:function(t,e,n){"use strict";var r=n(71828),i=n(21479);t.exports=function(t,e){var n,a,o="group"===e.barmode;"group"===e.scattermode&&(n="scattergap",a=o?e.bargap:.2,r.coerce(t,e,i,n,a))}},11058:function(t,e,n){"use strict";var r=n(71828).isArrayOrTypedArray,i=n(52075).hasColorscale,a=n(1586);t.exports=function(t,e,n,o,s,l){l||(l={});var c=(t.marker||{}).color;s("line.color",n),i(t,"line")?a(t,e,o,s,{prefix:"line.",cLetter:"c"}):s("line.color",!r(c)&&c||n),s("line.width"),l.noDash||s("line.dash"),l.backoff&&s("line.backoff")}},34621:function(t,e,n){"use strict";var r=n(91424),i=n(50606),a=i.BADNUM,o=i.LOG_CLIP,s=o+.5,l=o-.5,c=n(71828),u=c.segmentsIntersect,f=c.constrain,h=n(47581);t.exports=function(t,e){var n,i,o,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S,E=e.trace||{},C=e.xaxis,P=e.yaxis,L="log"===C.type,O="log"===P.type,I=C._length,D=P._length,R=e.backoff,z=E.marker,N=e.connectGaps,j=e.baseTolerance,F=e.shape,B="linear"===F,U=E.fill&&"none"!==E.fill,H=[],V=h.minTolerance,q=t.length,G=new Array(q),W=0;function Y(n){var r=t[n];if(!r)return!1;var i=e.linearized?C.l2p(r.x):C.c2p(r.x),o=e.linearized?P.l2p(r.y):P.c2p(r.y);if(i===a){if(L&&(i=C.c2p(r.x,!0)),i===a)return!1;O&&o===a&&(i*=Math.abs(C._m*D*(C._m>0?s:l)/(P._m*I*(P._m>0?s:l)))),i*=1e3}if(o===a){if(O&&(o=P.c2p(r.y,!0)),o===a)return!1;o*=1e3}return[i,o]}function $(t,e,n,r){var i=n-t,a=r-e,o=.5-t,s=.5-e,l=i*i+a*a,c=i*o+a*s;if(c>0&&cot||t[1]lt)return[f(t[0],at,ot),f(t[1],st,lt)]}function ft(t,e){return t[0]===e[0]&&(t[0]===at||t[0]===ot)||t[1]===e[1]&&(t[1]===st||t[1]===lt)||void 0}function ht(t,e,n){return function(r,i){var a=ut(r),o=ut(i),s=[];if(a&&o&&ft(a,o))return s;a&&s.push(a),o&&s.push(o);var l=2*c.constrain((r[t]+i[t])/2,e,n)-((a||r)[t]+(o||i)[t]);return l&&((a&&o?l>0===a[t]>o[t]?a:o:a||o)[t]+=l),s}}function dt(t){var e=t[0],n=t[1],r=e===G[W-1][0],i=n===G[W-1][1];if(!r||!i)if(W>1){var a=e===G[W-2][0],o=n===G[W-2][1];r&&(e===at||e===ot)&&a?o?W--:G[W-1]=t:i&&(n===st||n===lt)&&o?a?W--:G[W-1]=t:G[W++]=t}else G[W++]=t}function pt(t){G[W-1][0]!==t[0]&&G[W-1][1]!==t[1]&&dt([Q,tt]),dt(t),et=null,Q=tt=0}"linear"===F||"spline"===F?rt=function(t,e){for(var n=[],r=0,i=0;i<4;i++){var a=ct[i],o=u(t[0],t[1],e[0],e[1],a[0],a[1],a[2],a[3]);o&&(!r||Math.abs(o.x-n[0][0])>1||Math.abs(o.y-n[0][1])>1)&&(o=[o.x,o.y],r&&K(o,t)ot?ot:0,J=e[1]lt?lt:0,Z||J){if(W)if(et){var r=rt(et,e);r.length>1&&(pt(r[0]),G[W++]=r[1])}else nt=rt(G[W-1],e)[0],G[W++]=nt;else G[W++]=[Z||e[0],J||e[1]];var i=G[W-1];Z&&J&&(i[0]!==Z||i[1]!==J)?(et&&(Q!==Z&&tt!==J?dt(Q&&tt?function(t,e){var n=e[0]-t[0],r=(e[1]-t[1])/n;return(t[1]*e[0]-e[1]*t[0])/n>0?[r>0?at:ot,lt]:[r>0?ot:at,st]}(et,e):[Q||Z,tt||J]):Q&&tt&&dt([Q,tt])),dt([Z,J])):Q-Z&&tt-J&&dt([Z||Q,J||tt]),et=e,Q=Z,tt=J}else et&&pt(rt(et,e)[0]),G[W++]=e}for(n=0;nX(g,mt))break;o=g,(_=y[0]*m[0]+y[1]*m[1])>x?(x=_,d=g,v=!1):_=t.length||!g)break;vt(g),i=g}}else vt(d)}et&&dt([Q||et[0],tt||et[1]]),H.push(G.slice(0,W))}var yt=F.slice(F.length-1);if(R&&"h"!==yt&&"v"!==yt){for(var bt=!1,xt=-1,wt=[],_t=0;_t=0?l=d:(l=d=h,h++),l0?Math.max(n,a):0}}},4898:function(t){"use strict";t.exports={container:"marker",min:"cmin",max:"cmax"}},49508:function(t,e,n){"use strict";var r=n(7901),i=n(52075).hasColorscale,a=n(1586),o=n(34098);t.exports=function(t,e,n,s,l,c){var u=o.isBubble(t),f=(t.line||{}).color;c=c||{},f&&(n=f),l("marker.symbol"),l("marker.opacity",u?.7:1),l("marker.size"),c.noAngle||(l("marker.angle"),c.noAngleRef||l("marker.angleref"),c.noStandOff||l("marker.standoff")),l("marker.color",n),i(t,"marker")&&a(t,e,s,l,{prefix:"marker.",cLetter:"c"}),c.noSelect||(l("selected.marker.color"),l("unselected.marker.color"),l("selected.marker.size"),l("unselected.marker.size")),c.noLine||(l("marker.line.color",f&&!Array.isArray(f)&&e.marker.color!==f?f:u?r.background:r.defaultLine),i(t,"marker.line")&&a(t,e,s,l,{prefix:"marker.line.",cLetter:"c"}),l("marker.line.width",u?1:0)),u&&(l("marker.sizeref"),l("marker.sizemin"),l("marker.sizemode")),c.gradient&&"none"!==l("marker.gradient.type")&&l("marker.gradient.color")}},73927:function(t,e,n){"use strict";var r=n(71828).dateTick0,i=n(50606).ONEWEEK;function a(t,e){return r(e,t%i===0?1:0)}t.exports=function(t,e,n,r,i){if(i||(i={x:!0,y:!0}),i.x){var o=r("xperiod");o&&(r("xperiod0",a(o,e.xcalendar)),r("xperiodalignment"))}if(i.y){var s=r("yperiod");s&&(r("yperiod0",a(s,e.ycalendar)),r("yperiodalignment"))}}},32663:function(t,e,n){"use strict";var r=n(39898),i=n(73972),a=n(71828),o=a.ensureSingle,s=a.identity,l=n(91424),c=n(34098),u=n(34621),f=n(68687),h=n(61082).tester;function d(t,e,n,f,d,p,g){var v,m=t._context.staticPlot;!function(t,e,n,i,o){var s=n.xaxis,l=n.yaxis,u=r.extent(a.simpleMap(s.range,s.r2c)),f=r.extent(a.simpleMap(l.range,l.r2c)),h=i[0].trace;if(c.hasMarkers(h)){var d=h.marker.maxdisplayed;if(0!==d){var p=i.filter((function(t){return t.x>=u[0]&&t.x<=u[1]&&t.y>=f[0]&&t.y<=f[1]})),g=Math.ceil(p.length/d),v=0;o.forEach((function(t,n){var r=t[0].trace;c.hasMarkers(r)&&r.marker.maxdisplayed>0&&n0;function b(t){return y?t.transition():t}var x=n.xaxis,w=n.yaxis,_=f[0].trace,k=_.line,T=r.select(p),M=o(T,"g","errorbars"),A=o(T,"g","lines"),S=o(T,"g","points"),E=o(T,"g","text");if(i.getComponentMethod("errorbars","plot")(t,M,n,g),!0===_.visible){var C,P;b(T).style("opacity",_.opacity);var L=_.fill.charAt(_.fill.length-1);"x"!==L&&"y"!==L&&(L=""),f[0][n.isRangePlot?"nodeRangePlot3":"node3"]=T;var O,I,D="",R=[],z=_._prevtrace;z&&(D=z._prevRevpath||"",P=z._nextFill,R=z._polygons);var N,j,F,B,U,H,V,q="",G="",W=[],Y=a.noop;if(C=_._ownFill,c.hasLines(_)||"none"!==_.fill){for(P&&P.datum(f),-1!==["hv","vh","hvh","vhv"].indexOf(k.shape)?(N=l.steps(k.shape),j=l.steps(k.shape.split("").reverse().join(""))):N=j="spline"===k.shape?function(t){var e=t[t.length-1];return t.length>1&&t[0][0]===e[0]&&t[0][1]===e[1]?l.smoothclosed(t.slice(1),k.smoothing):l.smoothopen(t,k.smoothing)}:function(t){return"M"+t.join("L")},F=function(t){return j(t.reverse())},W=u(f,{xaxis:x,yaxis:w,trace:_,connectGaps:_.connectgaps,baseTolerance:Math.max(k.width||1,3)/4,shape:k.shape,backoff:k.backoff,simplify:k.simplify,fill:_.fill}),V=_._polygons=new Array(W.length),v=0;v0,v=f(t,e,n);(u=i.selectAll("g.trace").data(v,(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),u.order(),function(t,e,n){e.each((function(e){var i=o(r.select(this),"g","fills");l.setClipUrl(i,n.layerClipId,t);var a=e[0].trace,c=[];a._ownfill&&c.push("_ownFill"),a._nexttrace&&c.push("_nextFill");var u=i.selectAll("g").data(c,s);u.enter().append("g"),u.exit().each((function(t){a[t]=null})).remove(),u.order().each((function(t){a[t]=o(r.select(this),"path","js-fill")}))}))}(t,u,e),g?(c&&(h=c()),r.transition().duration(a.duration).ease(a.easing).each("end",(function(){h&&h()})).each("interrupt",(function(){h&&h()})).each((function(){i.selectAll("g.trace").each((function(n,r){d(t,r,e,n,v,this,a)}))}))):u.each((function(n,r){d(t,r,e,n,v,this,a)})),p&&u.exit().remove(),i.selectAll("path:not([d])").remove()}},98002:function(t,e,n){"use strict";var r=n(34098);t.exports=function(t,e){var n,i,a,o,s=t.cd,l=t.xaxis,c=t.yaxis,u=[],f=s[0].trace;if(!r.hasMarkers(f)&&!r.hasText(f))return[];if(!1===e)for(n=0;n0){var h=i.c2l(u);i._lowerLogErrorBound||(i._lowerLogErrorBound=h),i._lowerErrorBound=Math.min(i._lowerLogErrorBound,h)}}else o[s]=[-l[0]*n,l[1]*n]}return o}t.exports=function(t,e,n){var r=[i(t.x,t.error_x,e[0],n.xaxis),i(t.y,t.error_y,e[1],n.yaxis),i(t.z,t.error_z,e[2],n.zaxis)],a=function(t){for(var e=0;e-1?-1:t.indexOf("right")>-1?1:0}function x(t){return null===t||void 0===t?0:t.indexOf("top")>-1?-1:t.indexOf("bottom")>-1?1:0}function w(t,e){return e(4*t)}function _(t){return d[t]}function k(t,e,n,r,i){var a=null;if(l.isArrayOrTypedArray(t)){a=[];for(var o=0;o=0){var g=function(t,e,n){var r,i=(n+1)%3,a=(n+2)%3,o=[],l=[];for(r=0;r=0&&f("surfacecolor",d||p);for(var g=["x","y","z"],v=0;v<3;++v){var m="projection."+g[v];f(m+".show")&&(f(m+".opacity"),f(m+".scale"))}var y=r.getComponentMethod("errorbars","supplyDefaults");y(t,e,d||p||n,{axis:"z"}),y(t,e,d||p||n,{axis:"y",inherit:"z"}),y(t,e,d||p||n,{axis:"x",inherit:"z"})}else e.visible=!1}},13551:function(t,e,n){"use strict";t.exports={plot:n(58925),attributes:n(44542),markerSymbols:n(87381),supplyDefaults:n(21428),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:n(36563),moduleType:"trace",name:"scatter3d",basePlotModule:n(58547),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}},97001:function(t,e,n){"use strict";var r=n(82196),i=n(9012),a=n(5386).f,o=n(5386).s,s=n(50693),l=n(1426).extendFlat,c=r.marker,u=r.line,f=c.line;t.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:l({},r.mode,{dflt:"markers"}),text:l({},r.text,{}),texttemplate:o({editType:"plot"},{keys:["a","b","text"]}),hovertext:l({},r.hovertext,{}),line:{color:u.color,width:u.width,dash:u.dash,backoff:u.backoff,shape:l({},u.shape,{values:["linear","spline"]}),smoothing:u.smoothing,editType:"calc"},connectgaps:r.connectgaps,fill:l({},r.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:r.fillcolor,marker:l({symbol:c.symbol,opacity:c.opacity,maxdisplayed:c.maxdisplayed,angle:c.angle,angleref:c.angleref,standoff:c.standoff,size:c.size,sizeref:c.sizeref,sizemin:c.sizemin,sizemode:c.sizemode,line:l({width:f.width,editType:"calc"},s("marker.line")),gradient:c.gradient,editType:"calc"},s("marker")),textfont:r.textfont,textposition:r.textposition,selected:r.selected,unselected:r.unselected,hoverinfo:l({},i.hoverinfo,{flags:["a","b","text","name"]}),hoveron:r.hoveron,hovertemplate:a()}},34618:function(t,e,n){"use strict";var r=n(92770),i=n(36922),a=n(75225),o=n(66279),s=n(47761).calcMarkerSize,l=n(22882);t.exports=function(t,e){var n=e._carpetTrace=l(t,e);if(n&&n.visible&&"legendonly"!==n.visible){var c;e.xaxis=n.xaxis,e.yaxis=n.yaxis;var u,f,h=e._length,d=new Array(h),p=!1;for(c=0;c")}return o}function y(t,e){var n;n=t.labelprefix&&t.labelprefix.length>0?t.labelprefix.replace(/ = $/,""):t._hovertitle,v.push(n+": "+e.toFixed(3)+t.labelsuffix)}}},46858:function(t,e,n){"use strict";t.exports={attributes:n(97001),supplyDefaults:n(98965),colorbar:n(4898),formatLabels:n(48953),calc:n(34618),plot:n(1913),style:n(16296).style,styleOnSelect:n(16296).styleOnSelect,hoverPoints:n(22931),selectPoints:n(98002),eventData:n(16165),moduleType:"trace",name:"scattercarpet",basePlotModule:n(93612),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}},1913:function(t,e,n){"use strict";var r=n(32663),i=n(89298),a=n(91424);t.exports=function(t,e,n,o){var s,l,c,u=n[0][0].carpet,f=i.getFromId(t,u.xaxis||"x"),h=i.getFromId(t,u.yaxis||"y"),d={xaxis:f,yaxis:h,plot:e.plot};for(s=0;s")}function d(t){return t+"\xb0"}}(c,g,t,l[0].t.labels),t.hovertemplate=c.hovertemplate,[t]}}},17988:function(t,e,n){"use strict";t.exports={attributes:n(19316),supplyDefaults:n(10659),colorbar:n(4898),formatLabels:n(82719),calc:n(84622),calcGeoJSON:n(89171).calcGeoJSON,plot:n(89171).plot,style:n(33095),styleOnSelect:n(16296).styleOnSelect,hoverPoints:n(14977),eventData:n(84084),selectPoints:n(20548),moduleType:"trace",name:"scattergeo",basePlotModule:n(44622),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}},89171:function(t,e,n){"use strict";var r=n(39898),i=n(71828),a=n(90973).getTopojsonFeatures,o=n(18214),s=n(41327),l=n(71739).findExtremes,c=n(50606).BADNUM,u=n(47761).calcMarkerSize,f=n(34098),h=n(33095);t.exports={calcGeoJSON:function(t,e){var n,r,i=t[0].trace,o=e[i.geo],f=o._subplot,h=i._length;if(Array.isArray(i.locations)){var d=i.locationmode,p="geojson-id"===d?s.extractTraceFeature(t):a(i,f.topojson);for(n=0;n=v,_=2*x,k={},T=l.makeCalcdata(e,"x"),M=y.makeCalcdata(e,"y"),A=s(e,l,"x",T),S=s(e,y,"y",M),E=A.vals,C=S.vals;e._x=E,e._y=C,e.xperiodalignment&&(e._origX=T,e._xStarts=A.starts,e._xEnds=A.ends),e.yperiodalignment&&(e._origY=M,e._yStarts=S.starts,e._yEnds=S.ends);var P=new Array(_),L=new Array(x);for(n=0;n1&&i.extendFlat(s.line,d.linePositions(t,n,r)),s.errorX||s.errorY){var l=d.errorBarPositions(t,n,r,a,o);s.errorX&&i.extendFlat(s.errorX,l.x),s.errorY&&i.extendFlat(s.errorY,l.y)}return s.text&&(i.extendFlat(s.text,{positions:r},d.textPosition(t,n,s.text,s.marker)),i.extendFlat(s.textSel,{positions:r},d.textPosition(t,n,s.text,s.markerSel)),i.extendFlat(s.textUnsel,{positions:r},d.textPosition(t,n,s.text,s.markerUnsel))),s}(t,0,e,P,E,C),D=p(t,b);return f(o,e),w?I.marker&&(O=I.marker.sizeAvg||Math.max(I.marker.size,3)):O=c(e,x),u(t,e,l,y,E,C,O),I.errorX&&m(e,l,I.errorX),I.errorY&&m(e,y,I.errorY),I.fill&&!D.fill2d&&(D.fill2d=!0),I.marker&&!D.scatter2d&&(D.scatter2d=!0),I.line&&!D.line2d&&(D.line2d=!0),!I.errorX&&!I.errorY||D.error2d||(D.error2d=!0),I.text&&!D.glText&&(D.glText=!0),I.marker&&(I.marker.snap=x),D.lineOptions.push(I.line),D.errorXOptions.push(I.errorX),D.errorYOptions.push(I.errorY),D.fillOptions.push(I.fill),D.markerOptions.push(I.marker),D.markerSelectedOptions.push(I.markerSel),D.markerUnselectedOptions.push(I.markerUnsel),D.textOptions.push(I.text),D.textSelectedOptions.push(I.textSel),D.textUnselectedOptions.push(I.textUnsel),D.selectBatch.push([]),D.unselectBatch.push([]),k._scene=D,k.index=D.count,k.x=E,k.y=C,k.positions=P,D.count++,[{x:!1,y:!1,t:k,trace:e}]}},78232:function(t){"use strict";t.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(t,e,n){"use strict";var r=n(92770),i=n(82019),a=n(25075),o=n(73972),s=n(71828),l=n(91424),c=n(41675),u=n(81697).formatColor,f=n(34098),h=n(39984),d=n(68645),p=n(78232),g=n(37822).DESELECTDIM,v={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},m=n(23469).appendArrayPointValue;function y(t,e){var n,i=t._fullLayout,a=e._length,o=e.textfont,l=e.textposition,c=Array.isArray(l)?l:[l],u=o.color,f=o.size,h=o.family,d={},p=t._context.plotGlPixelRatio,g=e.texttemplate;if(g){d.text=[];var v=i._d3locale,y=Array.isArray(g),b=y?Math.min(g.length,a):a,x=y?function(t){return g[t]}:function(){return g};for(n=0;np.TOO_MANY_POINTS||f.hasMarkers(e)?"rect":"round";if(c&&e.connectgaps){var h=r[0],d=r[1];for(i=0;i1?l[i]:l[0]:l,p=Array.isArray(c)?c.length>1?c[i]:c[0]:c,g=v[d],m=v[p],y=u?u/.8+1:0,b=-m*y-.5*m;o.offset[i]=[g*y/h,b/h]}}return o}}},47148:function(t,e,n){"use strict";var r=n(71828),i=n(73972),a=n(68645),o=n(42341),s=n(47581),l=n(34098),c=n(67513),u=n(73927),f=n(49508),h=n(11058),d=n(28908),p=n(82410);t.exports=function(t,e,n,g){function v(n,i){return r.coerce(t,e,o,n,i)}var m=!!t.marker&&a.isOpenSymbol(t.marker.symbol),y=l.isBubble(t),b=c(t,e,g,v);if(b){u(t,e,g,v),v("xhoverformat"),v("yhoverformat");var x=b100},e.isDotSymbol=function(t){return"string"===typeof t?r.DOT_RE.test(t):t>200}},20794:function(t,e,n){"use strict";var r=n(73972),i=n(71828),a=n(34603);function o(t,e,n,o){var s=t.xa,l=t.ya,c=t.distance,u=t.dxy,f=t.index,h={pointNumber:f,x:e[f],y:n[f]};h.tx=Array.isArray(o.text)?o.text[f]:o.text,h.htx=Array.isArray(o.hovertext)?o.hovertext[f]:o.hovertext,h.data=Array.isArray(o.customdata)?o.customdata[f]:o.customdata,h.tp=Array.isArray(o.textposition)?o.textposition[f]:o.textposition;var d=o.textfont;d&&(h.ts=i.isArrayOrTypedArray(d.size)?d.size[f]:d.size,h.tc=Array.isArray(d.color)?d.color[f]:d.color,h.tf=Array.isArray(d.family)?d.family[f]:d.family);var p=o.marker;p&&(h.ms=i.isArrayOrTypedArray(p.size)?p.size[f]:p.size,h.mo=i.isArrayOrTypedArray(p.opacity)?p.opacity[f]:p.opacity,h.mx=i.isArrayOrTypedArray(p.symbol)?p.symbol[f]:p.symbol,h.ma=i.isArrayOrTypedArray(p.angle)?p.angle[f]:p.angle,h.mc=i.isArrayOrTypedArray(p.color)?p.color[f]:p.color);var g=p&&p.line;g&&(h.mlc=Array.isArray(g.color)?g.color[f]:g.color,h.mlw=i.isArrayOrTypedArray(g.width)?g.width[f]:g.width);var v=p&&p.gradient;v&&"none"!==v.type&&(h.mgt=Array.isArray(v.type)?v.type[f]:v.type,h.mgc=Array.isArray(v.color)?v.color[f]:v.color);var m=s.c2p(h.x,!0),y=l.c2p(h.y,!0),b=h.mrc||1,x=o.hoverlabel;x&&(h.hbg=Array.isArray(x.bgcolor)?x.bgcolor[f]:x.bgcolor,h.hbc=Array.isArray(x.bordercolor)?x.bordercolor[f]:x.bordercolor,h.hts=i.isArrayOrTypedArray(x.font.size)?x.font.size[f]:x.font.size,h.htc=Array.isArray(x.font.color)?x.font.color[f]:x.font.color,h.htf=Array.isArray(x.font.family)?x.font.family[f]:x.font.family,h.hnl=i.isArrayOrTypedArray(x.namelength)?x.namelength[f]:x.namelength);var w=o.hoverinfo;w&&(h.hi=Array.isArray(w)?w[f]:w);var _=o.hovertemplate;_&&(h.ht=Array.isArray(_)?_[f]:_);var k={};k[t.index]=h;var T=o._origX,M=o._origY,A=i.extendFlat({},t,{color:a(o,h),x0:m-b,x1:m+b,xLabelVal:T?T[f]:h.x,y0:y-b,y1:y+b,yLabelVal:M?M[f]:h.y,cd:k,distance:c,spikeDistance:u,hovertemplate:h.ht});return h.htx?A.text=h.htx:h.tx?A.text=h.tx:o.text&&(A.text=o.text),i.fillText(h,o,A),r.getComponentMethod("errorbars","hoverInfo")(h,o,A),A}t.exports={hoverPoints:function(t,e,n,r){var i,a,s,l,c,u,f,h,d,p,g=t.cd,v=g[0].t,m=g[0].trace,y=t.xa,b=t.ya,x=v.x,w=v.y,_=y.c2p(e),k=b.c2p(n),T=t.distance;if(v.tree){var M=y.p2c(_-T),A=y.p2c(_+T),S=b.p2c(k-T),E=b.p2c(k+T);i="x"===r?v.tree.range(Math.min(M,A),Math.min(b._rl[0],b._rl[1]),Math.max(M,A),Math.max(b._rl[0],b._rl[1])):v.tree.range(Math.min(M,A),Math.min(S,E),Math.max(M,A),Math.max(S,E))}else i=v.ids;var C=T;if("x"===r){var P=!!m.xperiodalignment,L=!!m.yperiodalignment;for(u=0;u=Math.min(O,I)&&_<=Math.max(O,I)?0:1/0}if(f=Math.min(D,R)&&k<=Math.max(D,R)?0:1/0}p=Math.sqrt(f*f+h*h),s=i[u]}}}else for(u=i.length-1;u>-1;u--)l=x[a=i[u]],c=w[a],f=y.c2p(l)-_,h=b.c2p(c)-k,(d=Math.sqrt(f*f+h*h))y.glText.length){var k=w-y.glText.length;for(g=0;gn&&(isNaN(e[r])||isNaN(e[r+1]));)r-=2;t.positions=e.slice(n,r+2)}return t})),y.line2d.update(y.lineOptions)),y.error2d){var M=(y.errorXOptions||[]).concat(y.errorYOptions||[]);y.error2d.update(M)}y.scatter2d&&y.scatter2d.update(y.markerOptions),y.fillOrder=s.repeat(null,w),y.fill2d&&(y.fillOptions=y.fillOptions.map((function(t,e){var r=n[e];if(t&&r&&r[0]&&r[0].trace){var i,a,o=r[0],s=o.trace,l=o.t,c=y.lineOptions[e],u=[];s._ownfill&&u.push(e),s._nexttrace&&u.push(e+1),u.length&&(y.fillOrder[e]=u);var f,h,d=[],p=c&&c.positions||l.positions;if("tozeroy"===s.fill){for(f=0;ff&&isNaN(p[h+1]);)h-=2;0!==p[f+1]&&(d=[p[f],0]),d=d.concat(p.slice(f,h+2)),0!==p[h+1]&&(d=d.concat([p[h],0]))}else if("tozerox"===s.fill){for(f=0;ff&&isNaN(p[h]);)h-=2;0!==p[f]&&(d=[0,p[f+1]]),d=d.concat(p.slice(f,h+2)),0!==p[h]&&(d=d.concat([0,p[h+1]]))}else if("toself"===s.fill||"tonext"===s.fill){for(d=[],i=0,t.splitNull=!0,a=0;a-1;for(g=0;g")}function u(t){return t+"\xb0"}}t.exports={hoverPoints:function(t,e,n){var o=t.cd,u=o[0].trace,f=t.xa,h=t.ya,d=t.subplot,p=[],g=l+u.uid+"-circle",v=u.cluster&&u.cluster.enabled;if(v){var m=d.map.queryRenderedFeatures(null,{layers:[g]});p=m.map((function(t){return t.id}))}var y=360*(e>=0?Math.floor((e+180)/360):Math.ceil((e-180)/360)),b=e-y;if(r.getClosest(o,(function(t){var e=t.lonlat;if(e[0]===s)return 1/0;if(v&&-1===p.indexOf(t.i+1))return 1/0;var r=i.modHalf(e[0],360),a=e[1],o=d.project([r,a]),l=o.x-f.c2p([b,a]),c=o.y-h.c2p([r,n]),u=Math.max(3,t.mrc||0);return Math.max(Math.sqrt(l*l+c*c)-u,1-3/u)}),t),!1!==t.index){var x=o[t.index],w=x.lonlat,_=[i.modHalf(w[0],360)+y,w[1]],k=f.c2p(_),T=h.c2p(_),M=x.mrc||1;t.x0=k-M,t.x1=k+M,t.y0=T-M,t.y1=T+M;var A={};A[u.subplot]={_subplot:d};var S=u._module.formatLabels(x,u,A);return t.lonLabel=S.lonLabel,t.latLabel=S.latLabel,t.color=a(u,x),t.extraText=c(u,x,o[0].t.labels),t.hovertemplate=u.hovertemplate,[t]}},getExtraText:c}},20467:function(t,e,n){"use strict";t.exports={attributes:n(99181),supplyDefaults:n(76645),colorbar:n(4898),formatLabels:n(15636),calc:n(84622),plot:n(86951),hoverPoints:n(28178).hoverPoints,eventData:n(53353),selectPoints:n(86387),styleOnSelect:function(t,e){e&&e[0].trace._glTrace.update(e)},moduleType:"trace",name:"scattermapbox",basePlotModule:n(50101),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}},86951:function(t,e,n){"use strict";var r=n(71828),i=n(15790),a=n(77734).traceLayerPrefix,o={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function s(t,e,n,r){this.type="scattermapbox",this.subplot=t,this.uid=e,this.clusterEnabled=n,this.isHidden=r,this.sourceIds={fill:"source-"+e+"-fill",line:"source-"+e+"-line",circle:"source-"+e+"-circle",symbol:"source-"+e+"-symbol",cluster:"source-"+e+"-circle",clusterCount:"source-"+e+"-circle"},this.layerIds={fill:a+e+"-fill",line:a+e+"-line",circle:a+e+"-circle",symbol:a+e+"-symbol",cluster:a+e+"-cluster",clusterCount:a+e+"-cluster-count"},this.below=null}var l=s.prototype;l.addSource=function(t,e,n){var i={type:"geojson",data:e.geojson};n&&n.enabled&&r.extendFlat(i,{cluster:!0,clusterMaxZoom:n.maxzoom}),this.subplot.map.addSource(this.sourceIds[t],i)},l.setSourceData=function(t,e){this.subplot.map.getSource(this.sourceIds[t]).setData(e.geojson)},l.addLayer=function(t,e,n){var r={type:e.type,id:this.layerIds[t],source:this.sourceIds[t],layout:e.layout,paint:e.paint};e.filter&&(r.filter=e.filter),this.subplot.addLayer(r,n)},l.update=function(t){var e=t[0].trace,n=this.subplot,r=n.map,a=i(n.gd,t),s=n.belowLookup["trace-"+this.uid],l=!(!e.cluster||!e.cluster.enabled),c=!!this.clusterEnabled,u=this;function f(t){c?function(t){for(var e=o.cluster,n=e.length-1;n>=0;n--){var i=e[n];r.removeLayer(u.layerIds[i])}t||r.removeSource(u.sourceIds.circle)}(t):function(t){for(var e=o.nonCluster,n=e.length-1;n>=0;n--){var i=e[n];r.removeLayer(u.layerIds[i]),t||r.removeSource(u.sourceIds[i])}}(t)}function h(t){l?function(t){t||u.addSource("circle",a.circle,e.cluster);for(var n=o.cluster,r=0;r=0;n--){var r=e[n];t.removeLayer(this.layerIds[r]),t.removeSource(this.sourceIds[r])}},t.exports=function(t,e){var n,r,a,l=e[0].trace,c=l.cluster&&l.cluster.enabled,u=!0!==l.visible,f=new s(t,l.uid,c,u),h=i(t.gd,e),d=f.below=t.belowLookup["trace-"+l.uid];if(c)for(f.addSource("circle",h.circle,l.cluster),n=0;n")}}t.exports={hoverPoints:function(t,e,n,a){var o=r(t,e,n,a);if(o&&!1!==o[0].index){var s=o[0];if(void 0===s.index)return o;var l=t.subplot,c=s.cd[s.index],u=s.trace;if(l.isPtInside(c))return s.xLabelVal=void 0,s.yLabelVal=void 0,i(c,u,l,s),s.hovertemplate=u.hovertemplate,o}},makeHoverPointText:i}},91271:function(t,e,n){"use strict";t.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:n(23580),categories:["polar","symbols","showLegend","scatter-like"],attributes:n(81245),supplyDefaults:n(22184).supplyDefaults,colorbar:n(4898),formatLabels:n(98608),calc:n(26442),plot:n(45162),style:n(16296).style,styleOnSelect:n(16296).styleOnSelect,hoverPoints:n(59150).hoverPoints,selectPoints:n(98002),meta:{}}},45162:function(t,e,n){"use strict";var r=n(32663),i=n(50606).BADNUM;t.exports=function(t,e,n){for(var a=e.layers.frontplot.select("g.scatterlayer"),o=e.xaxis,s=e.yaxis,l={xaxis:o,yaxis:s,plot:e.framework,layerClipId:e._hasClipOnAxisFalse?e.clipIds.forTraces:null},c=e.radialAxis,u=e.angularAxis,f=0;f=c&&(y.marker.cluster=p.tree),y.marker&&(y.markerSel.positions=y.markerUnsel.positions=y.marker.positions=w),y.line&&w.length>1&&l.extendFlat(y.line,s.linePositions(t,d,w)),y.text&&(l.extendFlat(y.text,{positions:w},s.textPosition(t,d,y.text,y.marker)),l.extendFlat(y.textSel,{positions:w},s.textPosition(t,d,y.text,y.markerSel)),l.extendFlat(y.textUnsel,{positions:w},s.textPosition(t,d,y.text,y.markerUnsel))),y.fill&&!h.fill2d&&(h.fill2d=!0),y.marker&&!h.scatter2d&&(h.scatter2d=!0),y.line&&!h.line2d&&(h.line2d=!0),y.text&&!h.glText&&(h.glText=!0),h.lineOptions.push(y.line),h.fillOptions.push(y.fill),h.markerOptions.push(y.marker),h.markerSelectedOptions.push(y.markerSel),h.markerUnselectedOptions.push(y.markerUnsel),h.textOptions.push(y.text),h.textSelectedOptions.push(y.textSel),h.textUnselectedOptions.push(y.textUnsel),h.selectBatch.push([]),h.unselectBatch.push([]),p.x=_,p.y=k,p.rawx=_,p.rawy=k,p.r=v,p.theta=m,p.positions=w,p._scene=h,p.index=h.count,h.count++}})),a(t,e,n)}},t.exports.reglPrecompiled={}},48300:function(t,e,n){"use strict";var r=n(5386).f,i=n(5386).s,a=n(1426).extendFlat,o=n(82196),s=n(9012),l=o.line;t.exports={mode:o.mode,real:{valType:"data_array",editType:"calc+clearAxisTypes"},imag:{valType:"data_array",editType:"calc+clearAxisTypes"},text:o.text,texttemplate:i({editType:"plot"},{keys:["real","imag","text"]}),hovertext:o.hovertext,line:{color:l.color,width:l.width,dash:l.dash,backoff:l.backoff,shape:a({},l.shape,{values:["linear","spline"]}),smoothing:l.smoothing,editType:"calc"},connectgaps:o.connectgaps,marker:o.marker,cliponaxis:a({},o.cliponaxis,{dflt:!1}),textposition:o.textposition,textfont:o.textfont,fill:a({},o.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:o.fillcolor,hoverinfo:a({},s.hoverinfo,{flags:["real","imag","text","name"]}),hoveron:o.hoveron,hovertemplate:r(),selected:o.selected,unselected:o.unselected}},30621:function(t,e,n){"use strict";var r=n(92770),i=n(50606).BADNUM,a=n(36922),o=n(75225),s=n(66279),l=n(47761).calcMarkerSize;t.exports=function(t,e){for(var n=t._fullLayout,c=e.subplot,u=n[c].realaxis,f=n[c].imaginaryaxis,h=u.makeCalcdata(e,"real"),d=f.makeCalcdata(e,"imag"),p=e._length,g=new Array(p),v=0;v")}}t.exports={hoverPoints:function(t,e,n,a){var o=r(t,e,n,a);if(o&&!1!==o[0].index){var s=o[0];if(void 0===s.index)return o;var l=t.subplot,c=s.cd[s.index],u=s.trace;if(l.isPtInside(c))return s.xLabelVal=void 0,s.yLabelVal=void 0,i(c,u,l,s),s.hovertemplate=u.hovertemplate,o}},makeHoverPointText:i}},85956:function(t,e,n){"use strict";t.exports={moduleType:"trace",name:"scattersmith",basePlotModule:n(7504),categories:["smith","symbols","showLegend","scatter-like"],attributes:n(48300),supplyDefaults:n(65269),colorbar:n(4898),formatLabels:n(62047),calc:n(30621),plot:n(12480),style:n(16296).style,styleOnSelect:n(16296).styleOnSelect,hoverPoints:n(11350).hoverPoints,selectPoints:n(98002),meta:{}}},12480:function(t,e,n){"use strict";var r=n(32663),i=n(50606).BADNUM,a=n(23893).smith;t.exports=function(t,e,n){for(var o=e.layers.frontplot.select("g.scatterlayer"),s=e.xaxis,l=e.yaxis,c={xaxis:s,yaxis:l,plot:e.framework,layerClipId:e._hasClipOnAxisFalse?e.clipIds.forTraces:null},u=0;u"),o.hovertemplate=h.hovertemplate,a}function b(t,e){m.push(t._hovertitle+": "+e)}}},52979:function(t,e,n){"use strict";t.exports={attributes:n(50413),supplyDefaults:n(46008),colorbar:n(4898),formatLabels:n(93645),calc:n(54337),plot:n(7507),style:n(16296).style,styleOnSelect:n(16296).styleOnSelect,hoverPoints:n(47250),selectPoints:n(98002),eventData:n(4524),moduleType:"trace",name:"scatterternary",basePlotModule:n(61639),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}},7507:function(t,e,n){"use strict";var r=n(32663);t.exports=function(t,e,n){var i=e.plotContainer;i.select(".scatterlayer").selectAll("*").remove();for(var a=e.xaxis,o=e.yaxis,s={xaxis:a,yaxis:o,plot:i,layerClipId:e._hasClipOnAxisFalse?e.clipIdRelative:null},l=e.layers.frontplot.select("g.scatterlayer"),c=0;ch?x.sizeAvg||Math.max(x.size,3):a(e,b),d=0;da&&l||i-1,L=!0;if(o(b)||d.selectedpoints||P){var O=d._length;if(d.selectedpoints){g.selectBatch=d.selectedpoints;var I=d.selectedpoints,D={};for(l=0;l1&&(u=g[y-1],h=v[y-1],p=m[y-1]),e=0;eu?"-":"+")+"x")).replace("y",(f>h?"-":"+")+"y")).replace("z",(d>p?"-":"+")+"z");var C=function(){y=0,A=[],S=[],E=[]};(!y||y2?t.slice(1,e-1):2===e?[(t[0]+t[1])/2]:t}function d(t){var e=t.length;return 1===e?[.5,.5]:[t[1]-t[0],t[e-1]-t[e-2]]}function p(t,e){var n=t.fullSceneLayout,i=t.dataScale,u=e._len,f={};function p(t,e){var r=n[e],o=i[c[e]];return a.simpleMap(t,(function(t){return r.d2l(t)*o}))}if(f.vectors=l(p(e._u,"xaxis"),p(e._v,"yaxis"),p(e._w,"zaxis"),u),!u)return{positions:[],cells:[]};var g=p(e._Xs,"xaxis"),v=p(e._Ys,"yaxis"),m=p(e._Zs,"zaxis");if(f.meshgrid=[g,v,m],f.gridFill=e._gridFill,e._slen)f.startingPositions=l(p(e._startsX,"xaxis"),p(e._startsY,"yaxis"),p(e._startsZ,"zaxis"));else{for(var y=v[0],b=h(g),x=h(m),w=new Array(b.length*x.length),_=0,k=0;k=0};y?(n=Math.min(m.length,x.length),l=function(t){return A(m[t])&&S(t)},f=function(t){return String(m[t])}):(n=Math.min(b.length,x.length),l=function(t){return A(b[t])&&S(t)},f=function(t){return String(b[t])}),_&&(n=Math.min(n,w.length));for(var E=0;E1){for(var O=a.randstr(),I=0;I"),name:M||D("name")?y.name:void 0,color:T("hoverlabel.bgcolor")||b.color,borderColor:T("hoverlabel.bordercolor"),fontFamily:T("hoverlabel.font.family"),fontSize:T("hoverlabel.font.size"),fontColor:T("hoverlabel.font.color"),nameLength:T("hoverlabel.namelength"),textAlign:T("hoverlabel.align"),hovertemplate:M,hovertemplateLabels:L,eventData:l};v&&(N.x0=E-i.rInscribed*i.rpx1,N.x1=E+i.rInscribed*i.rpx1,N.idealAlign=i.pxmid[0]<0?"left":"right"),m&&(N.x=E,N.idealAlign=E<0?"left":"right");var j=[];o.loneHover(N,{container:a._hoverlayer.node(),outerContainer:a._paper.node(),gd:n,inOut_bbox:j}),l[0].bbox=j[0],p._hasHoverLabel=!0}if(m){var F=t.select("path.surface");h.styleOne(F,i,y,{hovered:!0})}p._hasHoverEvent=!0,n.emit("plotly_hover",{points:l||[f(i,y,h.eventDataKeys)],event:r.event})}})),t.on("mouseout",(function(e){var i=n._fullLayout,a=n._fullData[p.index],s=r.select(this).datum();if(p._hasHoverEvent&&(e.originalEvent=r.event,n.emit("plotly_unhover",{points:[f(s,a,h.eventDataKeys)],event:r.event}),p._hasHoverEvent=!1),p._hasHoverLabel&&(o.loneUnhover(i._hoverlayer.node()),p._hasHoverLabel=!1),m){var l=t.select("path.surface");h.styleOne(l,s,a,{hovered:!1})}})),t.on("click",(function(t){var e=n._fullLayout,a=n._fullData[p.index],s=v&&(c.isHierarchyRoot(t)||c.isLeaf(t)),u=c.getPtId(t),d=c.isEntry(t)?c.findEntryWithChild(g,u):c.findEntryWithLevel(g,u),m=c.getPtId(d),y={points:[f(t,a,h.eventDataKeys)],event:r.event};s||(y.nextLevel=m);var b=l.triggerHandler(n,"plotly_"+p.type+"click",y);if(!1!==b&&e.hovermode&&(n._hoverdata=[f(t,a,h.eventDataKeys)],o.click(n,r.event)),!s&&!1!==b&&!n._dragging&&!n._transitioning){i.call("_storeDirectGUIEdit",a,e._tracePreGUI[a.uid],{level:a.level});var x={data:[{level:m}],traces:[p.index]},w={frame:{redraw:!1,duration:h.transitionTime},transition:{duration:h.transitionTime,easing:h.transitionEasing},mode:"immediate",fromcurrent:!0};o.loneUnhover(e._hoverlayer.node()),i.call("animate",n,x,w)}}))}},2791:function(t,e,n){"use strict";var r=n(71828),i=n(7901),a=n(6964),o=n(53581);function s(t){return t.data.data.pid}e.findEntryWithLevel=function(t,n){var r;return n&&t.eachAfter((function(t){if(e.getPtId(t)===n)return r=t.copy()})),r||t},e.findEntryWithChild=function(t,n){var r;return t.eachAfter((function(t){for(var i=t.children||[],a=0;a0)},e.getMaxDepth=function(t){return t.maxdepth>=0?t.maxdepth:1/0},e.isHeader=function(t,n){return!(e.isLeaf(t)||t.depth===n._maxDepth-1)},e.getParent=function(t,n){return e.findEntryWithLevel(t,s(n))},e.listPath=function(t,n){var r=t.parent;if(!r)return[];var i=n?[r.data[n]]:[r];return e.listPath(r,n).concat(i)},e.getPath=function(t){return e.listPath(t,"label").join("/")+"/"},e.formatValue=o.formatPieValue,e.formatPercent=function(t,e){var n=r.formatPercent(t,0);return"0%"===n&&(n=o.formatPiePercent(t,e)),n}},87619:function(t,e,n){"use strict";t.exports={moduleType:"trace",name:"sunburst",basePlotModule:n(66888),categories:[],animatable:!0,attributes:n(57564),layoutAttributes:n(2654),supplyDefaults:n(17094),supplyLayoutDefaults:n(57034),calc:n(52147).calc,crossTraceCalc:n(52147).crossTraceCalc,plot:n(24714).plot,style:n(29969).style,colorbar:n(4898),meta:{}}},2654:function(t){"use strict";t.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}},57034:function(t,e,n){"use strict";var r=n(71828),i=n(2654);t.exports=function(t,e){function n(n,a){return r.coerce(t,e,i,n,a)}n("sunburstcolorway",e.colorway),n("extendsunburstcolors")}},24714:function(t,e,n){"use strict";var r=n(39898),i=n(674),a=n(81684).sX,o=n(91424),s=n(71828),l=n(63893),c=n(72597),u=c.recordMinTextSize,f=c.clearMinTextSize,h=n(14575),d=n(53581).getRotationAngle,p=h.computeTransform,g=h.transformInsideText,v=n(29969).styleOne,m=n(16688).resizeText,y=n(83523),b=n(7055),x=n(2791);function w(t,n,c,f){var h=t._context.staticPlot,m=t._fullLayout,w=!m.uniformtext.mode&&x.hasTransition(f),k=r.select(c).selectAll("g.slice"),T=n[0],M=T.trace,A=T.hierarchy,S=x.findEntryWithLevel(A,M.level),E=x.getMaxDepth(M),C=m._size,P=M.domain,L=C.w*(P.x[1]-P.x[0]),O=C.h*(P.y[1]-P.y[0]),I=.5*Math.min(L,O),D=T.cx=C.l+C.w*(P.x[1]+P.x[0])/2,R=T.cy=C.t+C.h*(1-P.y[0])-O/2;if(!S)return k.remove();var z=null,N={};w&&k.each((function(t){N[x.getPtId(t)]={rpx0:t.rpx0,rpx1:t.rpx1,x0:t.x0,x1:t.x1,transform:t.transform},!z&&x.isEntry(t)&&(z=t)}));var j=function(t){return i.partition().size([2*Math.PI,t.height+1])(t)}(S).descendants(),F=S.height+1,B=0,U=E;T.hasMultipleRoots&&x.isHierarchyRoot(S)&&(j=j.slice(1),F-=1,B=1,U+=1),j=j.filter((function(t){return t.y1<=U}));var H=d(M.rotation);H&&j.forEach((function(t){t.x0+=H,t.x1+=H}));var V=Math.min(F,E),q=function(t){return(t-B)/V*I},G=function(t,e){return[t*Math.cos(e),-t*Math.sin(e)]},W=function(t){return s.pathAnnulus(t.rpx0,t.rpx1,t.x0,t.x1,D,R)},Y=function(t){return D+_(t)[0]*(t.transform.rCenter||0)+(t.transform.x||0)},$=function(t){return R+_(t)[1]*(t.transform.rCenter||0)+(t.transform.y||0)};(k=k.data(j,x.getPtId)).enter().append("g").classed("slice",!0),w?k.exit().transition().each((function(){var t=r.select(this);t.select("path.surface").transition().attrTween("d",(function(t){var e=function(t){var e,n=x.getPtId(t),r=N[n],i=N[x.getPtId(S)];if(i){var o=(t.x1>i.x1?2*Math.PI:0)+H;e=t.rpx1X?2*Math.PI:0)+H;e={x0:i,x1:i}}else e={rpx0:I,rpx1:I},s.extendFlat(e,J(t));else e={rpx0:0,rpx1:0};else e={x0:H,x1:H};return a(e,r)}(t);return function(t){return W(e(t))}})):f.attr("d",W),c.call(y,S,t,n,{eventDataKeys:b.eventDataKeys,transitionTime:b.CLICK_TRANSITION_TIME,transitionEasing:b.CLICK_TRANSITION_EASING}).call(x.setSliceCursor,t,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:t._transitioning}),f.call(v,i,M);var d=s.ensureSingle(c,"g","slicetext"),_=s.ensureSingle(d,"text","",(function(t){t.attr("data-notex",1)})),k=s.ensureUniformFontSize(t,x.determineTextFont(M,i,m.font));_.text(e.formatSliceLabel(i,S,M,n,m)).classed("slicetext",!0).attr("text-anchor","middle").call(o.font,k).call(l.convertToTspans,t);var A=o.bBox(_.node());i.transform=g(A,i,T),i.transform.targetX=Y(i),i.transform.targetY=$(i);var E=function(t,e){var n=t.transform;return p(n,e),n.fontSize=k.size,u(M.type,n,m),s.getTextTransform(n)};w?_.transition().attrTween("transform",(function(t){var e=function(t){var e,n=N[x.getPtId(t)],r=t.transform;if(n)e=n;else if(e={rpx1:t.rpx1,transform:{textPosAngle:r.textPosAngle,scale:0,rotate:r.rotate,rCenter:r.rCenter,x:r.x,y:r.y}},z)if(t.parent)if(X){var i=t.x1>X?2*Math.PI:0;e.x0=e.x1=i}else s.extendFlat(e,J(t));else e.x0=e.x1=H;else e.x0=e.x1=H;var o=a(e.transform.textPosAngle,t.transform.textPosAngle),l=a(e.rpx1,t.rpx1),c=a(e.x0,t.x0),f=a(e.x1,t.x1),h=a(e.transform.scale,r.scale),d=a(e.transform.rotate,r.rotate),p=0===r.rCenter?3:0===e.transform.rCenter?1/3:1,g=a(e.transform.rCenter,r.rCenter),v=function(t){return g(Math.pow(t,p))};return function(t){var e=l(t),n=c(t),i=f(t),a=v(t),s={pxmid:G(e,(n+i)/2),rpx1:e,transform:{textPosAngle:o(t),rCenter:a,x:r.x,y:r.y}};return u(M.type,r,m),{transform:{targetX:Y(s),targetY:$(s),scale:h(t),rotate:d(t),rCenter:a}}}}(t);return function(t){return E(e(t),A)}})):_.attr("transform",E(i,A))}))}function _(t){return e=t.rpx1,n=t.transform.textPosAngle,[e*Math.sin(n),-e*Math.cos(n)];var e,n}e.plot=function(t,e,n,i){var a,o,s=t._fullLayout,l=s._sunburstlayer,c=!n,u=!s.uniformtext.mode&&x.hasTransition(n);f("sunburst",s),(a=l.selectAll("g.trace.sunburst").data(e,(function(t){return t[0].trace.uid}))).enter().append("g").classed("trace",!0).classed("sunburst",!0).attr("stroke-linejoin","round"),a.order(),u?(i&&(o=i()),r.transition().duration(n.duration).ease(n.easing).each("end",(function(){o&&o()})).each("interrupt",(function(){o&&o()})).each((function(){l.selectAll("g.trace").each((function(e){w(t,e,this,n)}))}))):(a.each((function(e){w(t,e,this,n)})),s.uniformtext.mode&&m(t,s._sunburstlayer.selectAll(".trace"),"sunburst")),c&&a.exit().remove()},e.formatSliceLabel=function(t,e,n,r,i){var a=n.texttemplate,o=n.textinfo;if(!a&&(!o||"none"===o))return"";var l=i.separators,c=r[0],u=t.data.data,f=c.hierarchy,h=x.isHierarchyRoot(t),d=x.getParent(f,t),p=x.getValue(t);if(!a){var g,v=o.split("+"),m=function(t){return-1!==v.indexOf(t)},y=[];if(m("label")&&u.label&&y.push(u.label),u.hasOwnProperty("v")&&m("value")&&y.push(x.formatValue(u.v,l)),!h){m("current path")&&y.push(x.getPath(t.data));var b=0;m("percent parent")&&b++,m("percent entry")&&b++,m("percent root")&&b++;var w=b>1;if(b){var _,k=function(t){g=x.formatPercent(_,l),w&&(g+=" of "+t),y.push(g)};m("percent parent")&&!h&&(_=p/x.getValue(d),k("parent")),m("percent entry")&&(_=p/x.getValue(e),k("entry")),m("percent root")&&(_=p/x.getValue(f),k("root"))}}return m("text")&&(g=s.castOption(n,u.i,"text"),s.isValidTextValue(g)&&y.push(g)),y.join("
")}var T=s.castOption(n,u.i,"texttemplate");if(!T)return"";var M={};u.label&&(M.label=u.label),u.hasOwnProperty("v")&&(M.value=u.v,M.valueLabel=x.formatValue(u.v,l)),M.currentPath=x.getPath(t.data),h||(M.percentParent=p/x.getValue(d),M.percentParentLabel=x.formatPercent(M.percentParent,l),M.parent=x.getPtLabel(d)),M.percentEntry=p/x.getValue(e),M.percentEntryLabel=x.formatPercent(M.percentEntry,l),M.entry=x.getPtLabel(e),M.percentRoot=p/x.getValue(f),M.percentRootLabel=x.formatPercent(M.percentRoot,l),M.root=x.getPtLabel(f),u.hasOwnProperty("color")&&(M.color=u.color);var A=s.castOption(n,u.i,"text");return(s.isValidTextValue(A)||""===A)&&(M.text=A),M.customdata=s.castOption(n,u.i,"customdata"),s.texttemplateString(T,M,i._d3locale,M,n._meta||{})}},29969:function(t,e,n){"use strict";var r=n(39898),i=n(7901),a=n(71828),o=n(72597).resizeText;function s(t,e,n){var r=e.data.data,o=!e.children,s=r.i,l=a.castOption(n,s,"marker.line.color")||i.defaultLine,c=a.castOption(n,s,"marker.line.width")||0;t.style("stroke-width",c).call(i.fill,r.color).call(i.stroke,l).style("opacity",o?n.leaf.opacity:null)}t.exports={style:function(t){var e=t._fullLayout._sunburstlayer.selectAll(".trace");o(t,e,"sunburst"),e.each((function(t){var e=r.select(this),n=t[0].trace;e.style("opacity",n.opacity),e.selectAll("path.surface").each((function(t){r.select(this).call(s,t,n)}))}))},styleOne:s}},54532:function(t,e,n){"use strict";var r=n(7901),i=n(50693),a=n(12663).axisHoverFormat,o=n(5386).f,s=n(9012),l=n(1426).extendFlat,c=n(30962).overrideAll;function u(t){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:r.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:r.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var f=t.exports=c(l({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:o(),xhoverformat:a("x"),yhoverformat:a("y"),zhoverformat:a("z"),connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},surfacecolor:{valType:"data_array"}},i("",{colorAttr:"z or surfacecolor",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:"calc"}),{contours:{x:u(),y:u(),z:u()},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:l({},i.zauto,{}),zmin:l({},i.zmin,{}),zmax:l({},i.zmax,{})},hoverinfo:l({},s.hoverinfo),showlegend:l({},s.showlegend,{dflt:!1})}),"calc","nested");f.x.editType=f.y.editType=f.z.editType="calc+clearAxisTypes",f.transforms=void 0},18396:function(t,e,n){"use strict";var r=n(78803);t.exports=function(t,e){e.surfacecolor?r(t,e,{vals:e.surfacecolor,containerStr:"",cLetter:"c"}):r(t,e,{vals:e.z,containerStr:"",cLetter:"c"})}},43768:function(t,e,n){"use strict";var r=n(9330).gl_surface3d,i=n(9330).ndarray,a=n(9330).ndarray_linear_interpolate.d2,o=n(824),s=n(43907),l=n(71828).isArrayOrTypedArray,c=n(81697).parseColorScale,u=n(78614),f=n(21081).extractOpts;function h(t,e,n){this.scene=t,this.uid=n,this.surface=e,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 d=h.prototype;d.getXat=function(t,e,n,r){var i=l(this.data.x)?l(this.data.x[0])?this.data.x[e][t]:this.data.x[t]:t;return void 0===n?i:r.d2l(i,0,n)},d.getYat=function(t,e,n,r){var i=l(this.data.y)?l(this.data.y[0])?this.data.y[e][t]:this.data.y[e]:e;return void 0===n?i:r.d2l(i,0,n)},d.getZat=function(t,e,n,r){var i=this.data.z[e][t];return null===i&&this.data.connectgaps&&this.data._interpolatedZ&&(i=this.data._interpolatedZ[e][t]),void 0===n?i:r.d2l(i,0,n)},d.handlePick=function(t){if(t.object===this.surface){var e=(t.data.index[0]-1)/this.dataScaleX-1,n=(t.data.index[1]-1)/this.dataScaleY-1,r=Math.max(Math.min(Math.round(e),this.data.z[0].length-1),0),i=Math.max(Math.min(Math.round(n),this.data._ylength-1),0);t.index=[r,i],t.traceCoordinate=[this.getXat(r,i),this.getYat(r,i),this.getZat(r,i)],t.dataCoordinate=[this.getXat(r,i,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(r,i,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(r,i,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var a=0;a<3;a++){var o=t.dataCoordinate[a];null!==o&&void 0!==o&&(t.dataCoordinate[a]*=this.scene.dataScale[a])}var s=this.data.hovertext||this.data.text;return Array.isArray(s)&&s[i]&&void 0!==s[i][r]?t.textLabel=s[i][r]:t.textLabel=s||"",t.data.dataCoordinate=t.dataCoordinate.slice(),this.surface.highlight(t.data),this.scene.glplot.spikes.position=t.dataCoordinate,!0}};var p=[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 g(t,e){if(t0){n=p[r];break}return n}function y(t,e){if(!(t<1||e<1)){for(var n=v(t),r=v(e),i=1,a=0;aw;)n--,n/=m(n),++n1?r:1},d.refineCoords=function(t){for(var e=this.dataScaleX,n=this.dataScaleY,r=t[0].shape[0],a=t[0].shape[1],o=0|Math.floor(t[0].shape[0]*e+1),s=0|Math.floor(t[0].shape[1]*n+1),l=1+r+1,c=1+a+1,u=i(new Float32Array(l*c),[l,c]),f=[1/e,0,0,0,1/n,0,0,0,1],h=0;h0&&null!==this.contourStart[t]&&null!==this.contourEnd[t]&&this.contourEnd[t]>this.contourStart[t]))for(i[t]=!0,e=this.contourStart[t];ea&&(this.minValues[e]=a),this.maxValues[e]",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(t,e,n){"use strict";var r=n(49850),i=n(1426).extendFlat,a=n(92770);function o(t){if(Array.isArray(t)){for(var e=0,n=0;n=e||c===t.length-1)&&(r[i]=o,o.key=l++,o.firstRowIndex=s,o.lastRowIndex=c,o={firstRowIndex:null,lastRowIndex:null,rows:[]},i+=a,s=c+1,a=0);return r}t.exports=function(t,e){var n=l(e.cells.values),d=function(t){return t.slice(e.header.values.length,t.length)},p=l(e.header.values);p.length&&!p[0].length&&(p[0]=[""],p=l(p));var g=p.concat(d(n).map((function(){return c((p[0]||[""]).length)}))),v=e.domain,m=Math.floor(t._fullLayout._size.w*(v.x[1]-v.x[0])),y=Math.floor(t._fullLayout._size.h*(v.y[1]-v.y[0])),b=e.header.values.length?g[0].map((function(){return e.header.height})):[r.emptyHeaderHeight],x=n.length?n[0].map((function(){return e.cells.height})):[],w=b.reduce(s,0),_=h(x,y-w+r.uplift),k=f(h(b,w),[]),T=f(_,k),M={},A=e._fullInput.columnorder.concat(d(n.map((function(t,e){return e})))),S=g.map((function(t,n){var r=Array.isArray(e.columnwidth)?e.columnwidth[Math.min(n,e.columnwidth.length-1)]:e.columnwidth;return a(r)?Number(r):1})),E=S.reduce(s,0);S=S.map((function(t){return t/E*m}));var C=Math.max(o(e.header.line.width),o(e.cells.line.width)),P={key:e.uid+t._context.staticPlot,translateX:v.x[0]*t._fullLayout._size.w,translateY:t._fullLayout._size.h*(1-v.y[1]),size:t._fullLayout._size,width:m,maxLineWidth:C,height:y,columnOrder:A,groupHeight:y,rowBlocks:T,headerRowBlocks:k,scrollY:0,cells:i({},e.cells,{values:n}),headerCells:i({},e.header,{values:g}),gdColumns:g.map((function(t){return t[0]})),gdColumnsOriginalOrder:g.map((function(t){return t[0]})),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:g.map((function(t,e){var n=M[t];return M[t]=(n||0)+1,{key:t+"__"+M[t],label:t,specIndex:e,xIndex:A[e],xScale:u,x:void 0,calcdata:void 0,columnWidth:S[e]}}))};return P.columns.forEach((function(t){t.calcdata=P,t.x=u(t)})),P}},56269:function(t,e,n){"use strict";var r=n(1426).extendFlat;e.splitToPanels=function(t){var e=[0,0],n=r({},t,{key:"header",type:"header",page:0,prevPages:e,currentRepaint:[null,null],dragHandle:!0,values:t.calcdata.headerCells.values[t.specIndex],rowBlocks:t.calcdata.headerRowBlocks,calcdata:r({},t.calcdata,{cells:t.calcdata.headerCells})});return[r({},t,{key:"cells1",type:"cells",page:0,prevPages:e,currentRepaint:[null,null],dragHandle:!1,values:t.calcdata.cells.values[t.specIndex],rowBlocks:t.calcdata.rowBlocks}),r({},t,{key:"cells2",type:"cells",page:1,prevPages:e,currentRepaint:[null,null],dragHandle:!1,values:t.calcdata.cells.values[t.specIndex],rowBlocks:t.calcdata.rowBlocks}),n]},e.splitToCells=function(t){var e=function(t){var e=t.rowBlocks[t.page],n=e?e.rows[0].rowIndex:0,r=e?n+e.rows.length:0;return[n,r]}(t);return(t.values||[]).slice(e[0],e[1]).map((function(n,r){return{keyWithinBlock:r+("string"===typeof n&&n.match(/[<$&> ]/)?"_keybuster_"+Math.random():""),key:e[0]+r,column:t,calcdata:t.calcdata,page:t.page,rowBlocks:t.rowBlocks,value:n}}))}},39754:function(t,e,n){"use strict";var r=n(71828),i=n(44464),a=n(27670).c;t.exports=function(t,e,n,o){function s(n,a){return r.coerce(t,e,i,n,a)}a(e,o,s),s("columnwidth"),s("header.values"),s("header.format"),s("header.align"),s("header.prefix"),s("header.suffix"),s("header.height"),s("header.line.width"),s("header.line.color"),s("header.fill.color"),r.coerceFont(s,"header.font",r.extendFlat({},o.font)),function(t,e){for(var n=t.columnorder||[],r=t.header.values.length,i=n.slice(0,r),a=i.slice().sort((function(t,e){return t-e})),o=i.map((function(t){return a.indexOf(t)})),s=o.length;s/i),l=!o||s;t.mayHaveMarkup=o&&i.match(/[<&>]/);var c,u="string"===typeof(c=i)&&c.match(r.latexCheck);t.latex=u;var f,h,d=u?"":k(t.calcdata.cells.prefix,e,n)||"",p=u?"":k(t.calcdata.cells.suffix,e,n)||"",g=u?null:k(t.calcdata.cells.format,e,n)||null,v=d+(g?a(g)(t.value):t.value)+p;if(t.wrappingNeeded=!t.wrapped&&!l&&!u&&(f=_(v)),t.cellHeightMayIncrease=s||u||t.mayHaveMarkup||(void 0===f?_(v):f),t.needsConvertToTspans=t.mayHaveMarkup||t.wrappingNeeded||t.latex,t.wrappingNeeded){var m=(" "===r.wrapSplitCharacter?v.replace(/i&&r.push(a),i+=l}return r}(i,l,s);1===c.length&&(c[0]===i.length-1?c.unshift(c[0]-1):c.push(c[0]+1)),c[0]%2&&c.reverse(),e.each((function(t,e){t.page=c[e],t.scrollY=l})),e.attr("transform",(function(t){var e=R(t.rowBlocks,t.page)-t.scrollY;return u(0,e)})),t&&(P(t,n,e,c,r.prevPages,r,0),P(t,n,e,c,r.prevPages,r,1),b(n,t))}}function C(t,e,n,a){return function(o){var s=o.calcdata?o.calcdata:o,l=e.filter((function(t){return s.key===t.key})),c=n||s.scrollbarState.dragMultiplier,u=s.scrollY;s.scrollY=void 0===a?s.scrollY+c*i.event.dy:a;var f=l.selectAll("."+r.cn.yColumn).selectAll("."+r.cn.columnBlock).filter(M);return E(t,f,l),s.scrollY===u}}function P(t,e,n,r,i,a,o){r[o]!==i[o]&&(clearTimeout(a.currentRepaint[o]),a.currentRepaint[o]=setTimeout((function(){var a=n.filter((function(t,e){return e===o&&r[e]!==i[e]}));x(t,e,a,n),i[o]=r[o]})))}function L(t,e,n,a){return function(){var o=i.select(e.parentNode);o.each((function(t){var e=t.fragments;o.selectAll("tspan.line").each((function(t,n){e[n].width=this.getComputedTextLength()}));var n,i,a=e[e.length-1].width,s=e.slice(0,-1),l=[],c=0,u=t.column.columnWidth-2*r.cellPad;for(t.value="";s.length;)c+(i=(n=s.shift()).width+a)>u&&(t.value+=l.join(r.wrapSpacer)+r.lineBreaker,l=[],c=0),l.push(n.text),c+=i;c&&(t.value+=l.join(r.wrapSpacer)),t.wrapped=!0})),o.selectAll("tspan.line").remove(),w(o.select("."+r.cn.cellText),n,t,a),i.select(e.parentNode.parentNode).call(D)}}function O(t,e,n,a,o){return function(){if(!o.settledY){var s=i.select(e.parentNode),l=j(o),c=o.key-l.firstRowIndex,f=l.rows[c].rowHeight,h=o.cellHeightMayIncrease?e.parentNode.getBoundingClientRect().height+2*r.cellPad:f,d=Math.max(h,f);d-l.rows[c].rowHeight&&(l.rows[c].rowHeight=d,t.selectAll("."+r.cn.columnCell).call(D),E(null,t.filter(M),0),b(n,a,!0)),s.attr("transform",(function(){var t=this,e=t.parentNode.getBoundingClientRect(),n=i.select(t.parentNode).select("."+r.cn.cellRect).node().getBoundingClientRect(),a=t.transform.baseVal.consolidate(),s=n.top-e.top+(a?a.matrix.f:r.cellPad);return u(I(o,i.select(t.parentNode).select("."+r.cn.cellTextHolder).node().getBoundingClientRect().width),s)})),o.settledY=!0}}}function I(t,e){switch(t.align){case"left":default:return r.cellPad;case"right":return t.column.columnWidth-(e||0)-r.cellPad;case"center":return(t.column.columnWidth-(e||0))/2}}function D(t){t.attr("transform",(function(t){var e=t.rowBlocks[0].auxiliaryBlocks.reduce((function(t,e){return t+z(e,1/0)}),0),n=z(j(t),t.key);return u(0,n+e)})).selectAll("."+r.cn.cellRect).attr("height",(function(t){return(e=j(t),n=t.key,e.rows[n-e.firstRowIndex]).rowHeight;var e,n}))}function R(t,e){for(var n=0,r=e-1;r>=0;r--)n+=N(t[r]);return n}function z(t,e){for(var n=0,r=0;r","<","|","/","\\"],dflt:">",editType:"plot"},thickness:{valType:"number",min:12,editType:"plot"},textfont:u({},s.textfont,{}),editType:"calc"},text:s.text,textinfo:l.textinfo,texttemplate:i({editType:"plot"},{keys:c.eventDataKeys.concat(["label","value"])}),hovertext:s.hovertext,hoverinfo:l.hoverinfo,hovertemplate:r({},{keys:c.eventDataKeys}),textfont:s.textfont,insidetextfont:s.insidetextfont,outsidetextfont:u({},s.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:s.sort,root:l.root,domain:o({name:"treemap",trace:!0,editType:"calc"})}},78018:function(t,e,n){"use strict";var r=n(74875);e.name="treemap",e.plot=function(t,n,i,a){r.plotBasePlot(e.name,t,n,i,a)},e.clean=function(t,n,i,a){r.cleanBasePlot(e.name,t,n,i,a)}},65039:function(t,e,n){"use strict";var r=n(52147);e.y=function(t,e){return r.calc(t,e)},e.T=function(t){return r._runCrossTraceCalc("treemap",t)}},43473:function(t){"use strict";t.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}},91174:function(t,e,n){"use strict";var r=n(71828),i=n(45802),a=n(7901),o=n(27670).c,s=n(90769).handleText,l=n(97313).TEXTPAD,c=n(21081),u=c.hasColorscale,f=c.handleDefaults;t.exports=function(t,e,n,c){function h(n,a){return r.coerce(t,e,i,n,a)}var d=h("labels"),p=h("parents");if(d&&d.length&&p&&p.length){var g=h("values");g&&g.length?h("branchvalues"):h("count"),h("level"),h("maxdepth"),"squarify"===h("tiling.packing")&&h("tiling.squarifyratio"),h("tiling.flip"),h("tiling.pad");var v=h("text");h("texttemplate"),e.texttemplate||h("textinfo",Array.isArray(v)?"text+label":"label"),h("hovertext"),h("hovertemplate");var m=h("pathbar.visible");s(t,e,c,h,"auto",{hasPathbar:m,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),h("textposition");var y=-1!==e.textposition.indexOf("bottom");h("marker.line.width")&&h("marker.line.color",c.paper_bgcolor);var b=h("marker.colors");(e._hasColorscale=u(t,"marker","colors")||(t.marker||{}).coloraxis)?f(t,e,c,h,{prefix:"marker.",cLetter:"c"}):h("marker.depthfade",!(b||[]).length);var x=2*e.textfont.size;h("marker.pad.t",y?x/4:x),h("marker.pad.l",x/4),h("marker.pad.r",x/4),h("marker.pad.b",y?x:x/4),h("marker.cornerradius"),e._hovered={marker:{line:{width:2,color:a.contrast(c.paper_bgcolor)}}},m&&(h("pathbar.thickness",e.pathbar.textfont.size+2*l),h("pathbar.side"),h("pathbar.edgeshape")),h("sort"),h("root.color"),o(e,c,h),e._length=null}else e.visible=!1}},80694:function(t,e,n){"use strict";var r=n(39898),i=n(2791),a=n(72597).clearMinTextSize,o=n(16688).resizeText,s=n(46650);t.exports=function(t,e,n,l,c){var u,f,h=c.type,d=c.drawDescendants,p=t._fullLayout,g=p["_"+h+"layer"],v=!n;a(h,p),(u=g.selectAll("g.trace."+h).data(e,(function(t){return t[0].trace.uid}))).enter().append("g").classed("trace",!0).classed(h,!0),u.order(),!p.uniformtext.mode&&i.hasTransition(n)?(l&&(f=l()),r.transition().duration(n.duration).ease(n.easing).each("end",(function(){f&&f()})).each("interrupt",(function(){f&&f()})).each((function(){g.selectAll("g.trace").each((function(e){s(t,e,this,n,d)}))}))):(u.each((function(e){s(t,e,this,n,d)})),p.uniformtext.mode&&o(t,g.selectAll(".trace"),h)),v&&u.exit().remove()}},66209:function(t,e,n){"use strict";var r=n(39898),i=n(71828),a=n(91424),o=n(63893),s=n(37210),l=n(96362).styleOne,c=n(43473),u=n(2791),f=n(83523),h=!0;t.exports=function(t,e,n,d,p){var g=p.barDifY,v=p.width,m=p.height,y=p.viewX,b=p.viewY,x=p.pathSlice,w=p.toMoveInsideSlice,_=p.strTransform,k=p.hasTransition,T=p.handleSlicesExit,M=p.makeUpdateSliceInterpolator,A=p.makeUpdateTextInterpolator,S={},E=t._context.staticPlot,C=t._fullLayout,P=e[0],L=P.trace,O=P.hierarchy,I=v/L._entryDepth,D=u.listPath(n.data,"id"),R=s(O.copy(),[v,m],{packing:"dice",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();(R=R.filter((function(t){var e=D.indexOf(t.data.id);return-1!==e&&(t.x0=I*e,t.x1=I*(e+1),t.y0=g,t.y1=g+m,t.onPathbar=!0,!0)}))).reverse(),(d=d.data(R,u.getPtId)).enter().append("g").classed("pathbar",!0),T(d,h,S,[v,m],x),d.order();var z=d;k&&(z=z.transition().each("end",(function(){var e=r.select(this);u.setSliceCursor(e,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})}))),z.each((function(s){s._x0=y(s.x0),s._x1=y(s.x1),s._y0=b(s.y0),s._y1=b(s.y1),s._hoverX=y(s.x1-Math.min(v,m)/2),s._hoverY=b(s.y1-m/2);var d=r.select(this),p=i.ensureSingle(d,"path","surface",(function(t){t.style("pointer-events",E?"none":"all")}));k?p.transition().attrTween("d",(function(t){var e=M(t,h,S,[v,m]);return function(t){return x(e(t))}})):p.attr("d",x),d.call(f,n,t,e,{styleOne:l,eventDataKeys:c.eventDataKeys,transitionTime:c.CLICK_TRANSITION_TIME,transitionEasing:c.CLICK_TRANSITION_EASING}).call(u.setSliceCursor,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:t._transitioning}),p.call(l,s,L,{hovered:!1}),s._text=(u.getPtLabel(s)||"").split("
").join(" ")||"";var g=i.ensureSingle(d,"g","slicetext"),T=i.ensureSingle(g,"text","",(function(t){t.attr("data-notex",1)})),P=i.ensureUniformFontSize(t,u.determineTextFont(L,s,C.font,{onPathbar:!0}));T.text(s._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(a.font,P).call(o.convertToTspans,t),s.textBB=a.bBox(T.node()),s.transform=w(s,{fontSize:P.size,onPathbar:!0}),s.transform.fontSize=P.size,k?T.transition().attrTween("transform",(function(t){var e=A(t,h,S,[v,m]);return function(t){return _(e(t))}})):T.attr("transform",_(s))}))}},52583:function(t,e,n){"use strict";var r=n(39898),i=n(71828),a=n(91424),o=n(63893),s=n(37210),l=n(96362).styleOne,c=n(43473),u=n(2791),f=n(83523),h=n(24714).formatSliceLabel,d=!1;t.exports=function(t,e,n,p,g){var v=g.width,m=g.height,y=g.viewX,b=g.viewY,x=g.pathSlice,w=g.toMoveInsideSlice,_=g.strTransform,k=g.hasTransition,T=g.handleSlicesExit,M=g.makeUpdateSliceInterpolator,A=g.makeUpdateTextInterpolator,S=g.prevEntry,E=t._context.staticPlot,C=t._fullLayout,P=e[0].trace,L=-1!==P.textposition.indexOf("left"),O=-1!==P.textposition.indexOf("right"),I=-1!==P.textposition.indexOf("bottom"),D=!I&&!P.marker.pad.t||I&&!P.marker.pad.b,R=s(n,[v,m],{packing:P.tiling.packing,squarifyratio:P.tiling.squarifyratio,flipX:P.tiling.flip.indexOf("x")>-1,flipY:P.tiling.flip.indexOf("y")>-1,pad:{inner:P.tiling.pad,top:P.marker.pad.t,left:P.marker.pad.l,right:P.marker.pad.r,bottom:P.marker.pad.b}}).descendants(),z=1/0,N=-1/0;R.forEach((function(t){var e=t.depth;e>=P._maxDepth?(t.x0=t.x1=(t.x0+t.x1)/2,t.y0=t.y1=(t.y0+t.y1)/2):(z=Math.min(z,e),N=Math.max(N,e))})),p=p.data(R,u.getPtId),P._maxVisibleLayers=isFinite(N)?N-z+1:0,p.enter().append("g").classed("slice",!0),T(p,d,{},[v,m],x),p.order();var j=null;if(k&&S){var F=u.getPtId(S);p.each((function(t){null===j&&u.getPtId(t)===F&&(j={x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1})}))}var B=function(){return j||{x0:0,x1:v,y0:0,y1:m}},U=p;return k&&(U=U.transition().each("end",(function(){var e=r.select(this);u.setSliceCursor(e,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})}))),U.each((function(s){var p=u.isHeader(s,P);s._x0=y(s.x0),s._x1=y(s.x1),s._y0=b(s.y0),s._y1=b(s.y1),s._hoverX=y(s.x1-P.marker.pad.r),s._hoverY=b(I?s.y1-P.marker.pad.b/2:s.y0+P.marker.pad.t/2);var g=r.select(this),T=i.ensureSingle(g,"path","surface",(function(t){t.style("pointer-events",E?"none":"all")}));k?T.transition().attrTween("d",(function(t){var e=M(t,d,B(),[v,m]);return function(t){return x(e(t))}})):T.attr("d",x),g.call(f,n,t,e,{styleOne:l,eventDataKeys:c.eventDataKeys,transitionTime:c.CLICK_TRANSITION_TIME,transitionEasing:c.CLICK_TRANSITION_EASING}).call(u.setSliceCursor,t,{isTransitioning:t._transitioning}),T.call(l,s,P,{hovered:!1}),s.x0===s.x1||s.y0===s.y1?s._text="":s._text=p?D?"":u.getPtLabel(s)||"":h(s,n,P,e,C)||"";var S=i.ensureSingle(g,"g","slicetext"),R=i.ensureSingle(S,"text","",(function(t){t.attr("data-notex",1)})),z=i.ensureUniformFontSize(t,u.determineTextFont(P,s,C.font));R.text(s._text||" ").classed("slicetext",!0).attr("text-anchor",O?"end":L||p?"start":"middle").call(a.font,z).call(o.convertToTspans,t),s.textBB=a.bBox(R.node()),s.transform=w(s,{fontSize:z.size,isHeader:p}),s.transform.fontSize=z.size,k?R.transition().attrTween("transform",(function(t){var e=A(t,d,B(),[v,m]);return function(t){return _(e(t))}})):R.attr("transform",_(s))})),j}},14102:function(t){"use strict";t.exports=function t(e,n,r){var i;r.swapXY&&(i=e.x0,e.x0=e.y0,e.y0=i,i=e.x1,e.x1=e.y1,e.y1=i),r.flipX&&(i=e.x0,e.x0=n[0]-e.x1,e.x1=n[0]-i),r.flipY&&(i=e.y0,e.y0=n[1]-e.y1,e.y1=n[1]-i);var a=e.children;if(a)for(var o=0;o-1?P+I:-(O+I):0,R={x0:L,x1:L,y0:D,y1:D+O},z=function(t,e,n){var r=m.tiling.pad,i=function(t){return t-r<=e.x0},a=function(t){return t+r>=e.x1},o=function(t){return t-r<=e.y0},s=function(t){return t+r>=e.y1};return t.x0===e.x0&&t.x1===e.x1&&t.y0===e.y0&&t.y1===e.y1?{x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1}:{x0:i(t.x0-r)?0:a(t.x0-r)?n[0]:t.x0,x1:i(t.x1+r)?0:a(t.x1+r)?n[0]:t.x1,y0:o(t.y0-r)?0:s(t.y0-r)?n[1]:t.y0,y1:o(t.y1+r)?0:s(t.y1+r)?n[1]:t.y1}},N=null,j={},F={},B=null,U=function(t,e){return e?j[h(t)]:F[h(t)]},H=function(t,e,n,r){if(e)return j[h(b)]||R;var i=F[m.level]||n;return function(t){return t.data.depth-x.data.depth=(r-=(y?et:et.r)-s)){var d=(n+r)/2;n=d,r=d}var p;ot?i<(p=a-(y?et:et.b))&&p"===tt?(l.x-=a,c.x-=a,u.x-=a,f.x-=a):"/"===tt?(u.x-=a,f.x-=a,o.x-=a/2,s.x-=a/2):"\\"===tt?(l.x-=a,c.x-=a,o.x-=a/2,s.x-=a/2):"<"===tt&&(o.x-=a,s.x-=a),Q(l),Q(f),Q(o),Q(c),Q(u),Q(s),"M"+Z(l.x,l.y)+"L"+Z(c.x,c.y)+"L"+Z(s.x,s.y)+"L"+Z(u.x,u.y)+"L"+Z(f.x,f.y)+"L"+Z(o.x,o.y)+"Z"},toMoveInsideSlice:st,makeUpdateSliceInterpolator:ct,makeUpdateTextInterpolator:ut,handleSlicesExit:ft,hasTransition:M,strTransform:ht}):_.remove()}},96362:function(t,e,n){"use strict";var r=n(39898),i=n(7901),a=n(71828),o=n(2791),s=n(72597).resizeText;function l(t,e,n,r){var s,l,c=(r||{}).hovered,u=e.data.data,f=u.i,h=u.color,d=o.isHierarchyRoot(e),p=1;if(c)s=n._hovered.marker.line.color,l=n._hovered.marker.line.width;else if(d&&h===n.root.color)p=100,s="rgba(0,0,0,0)",l=0;else if(s=a.castOption(n,f,"marker.line.color")||i.defaultLine,l=a.castOption(n,f,"marker.line.width")||0,!n._hasColorscale&&!e.onPathbar){var g=n.marker.depthfade;if(g){var v,m=i.combine(i.addOpacity(n._backgroundColor,.75),h);if(!0===g){var y=o.getMaxDepth(n);v=isFinite(y)?o.isLeaf(e)?0:n._maxVisibleLayers-(e.data.depth-n._entryDepth):e.data.height+1}else v=e.data.depth-n._entryDepth,n._atRootLevel||v++;if(v>0)for(var b=0;b0){var x,w,_,k,T,M=t.xa,A=t.ya;"h"===p.orientation?(T=e,x="y",_=A,w="x",k=M):(T=n,x="x",_=M,w="y",k=A);var S=d[t.index];if(T>=S.span[0]&&T<=S.span[1]){var E=i.extendFlat({},t),C=k.c2p(T,!0),P=s.getKdeValue(S,p,T),L=s.getPositionOnKdePath(S,p,C),O=_._offset,I=_._length;E[x+"0"]=L[0],E[x+"1"]=L[1],E[w+"0"]=E[w+"1"]=C,E[w+"Label"]=w+": "+a.hoverLabelText(k,T,p[w+"hoverformat"])+", "+d[0].t.labels.kde+" "+P.toFixed(3);for(var D=0,R=0;R")),u.color=function(t,e){var n=t[e.dir].marker,r=n.color,a=n.line.color,o=n.line.width;return i(r)?r:i(a)&&o?a:void 0}(h,v),[u]}function T(t){return r(g,t,h[p+"hoverformat"])}}},19990:function(t,e,n){"use strict";t.exports={attributes:n(43037),layoutAttributes:n(13494),supplyDefaults:n(83266).supplyDefaults,crossTraceDefaults:n(83266).crossTraceDefaults,supplyLayoutDefaults:n(5176),calc:n(52752),crossTraceCalc:n(70766),plot:n(30436),style:n(55750).style,hoverPoints:n(61326),eventData:n(58593),selectPoints:n(81974),moduleType:"trace",name:"waterfall",basePlotModule:n(93612),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}},13494:function(t){"use strict";t.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(t,e,n){"use strict";var r=n(71828),i=n(13494);t.exports=function(t,e,n){var a=!1;function o(n,a){return r.coerce(t,e,i,n,a)}for(var s=0;s0&&(v+=h?"M"+f[0]+","+p[1]+"V"+p[0]:"M"+f[1]+","+p[0]+"H"+f[0]),"between"!==d&&(n.isSum||s path").each((function(t){if(!t.isBlank){var e=s[t.dir].marker;r.select(this).call(a.fill,e.color).call(a.stroke,e.line.color).call(i.dashLine,e.line.dash,e.line.width).style("opacity",s.selectedpoints&&!t.selected?o:1)}})),c(n,s,t),n.selectAll(".lines").each((function(){var t=s.connector.line;i.lineGroupStyle(r.select(this).selectAll("path"),t.width,t.color,t.dash)}))}))}}},82887:function(t,e,n){"use strict";var r=n(89298),i=n(71828),a=n(86281),o=n(79344).p,s=n(50606).BADNUM;e.moduleType="transform",e.name="aggregate";var l=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"},c=l.aggregations;function u(t,e,n,a){if(a.enabled){for(var o=a.target,l=i.nestedProperty(e,o),c=l.get(),u=function(t,e){var n=t.func,r=e.d2c,a=e.c2d;switch(n){case"count":return f;case"first":return h;case"last":return d;case"sum":return function(t,e){for(var n=0,i=0;ii&&(i=u,o=c)}}return i?a(o):s};case"rms":return function(t,e){for(var n=0,i=0,o=0;o":return function(t){return h(t)>s};case">=":return function(t){return h(t)>=s};case"[]":return function(t){var e=h(t);return e>=s[0]&&e<=s[1]};case"()":return function(t){var e=h(t);return e>s[0]&&e=s[0]&&es[0]&&e<=s[1]};case"][":return function(t){var e=h(t);return e<=s[0]||e>=s[1]};case")(":return function(t){var e=h(t);return es[1]};case"](":return function(t){var e=h(t);return e<=s[0]||e>s[1]};case")[":return function(t){var e=h(t);return e=s[1]};case"{}":return function(t){return-1!==s.indexOf(h(t))};case"}{":return function(t){return-1===s.indexOf(h(t))}}}(n,a.getDataToCoordFunc(t,e,s,i),h),b={},x={},w=0;p?(v=function(t){b[t.astr]=r.extendDeep([],t.get()),t.set(new Array(f))},m=function(t,e){var n=b[t.astr][e];t.get()[e]=n}):(v=function(t){b[t.astr]=r.extendDeep([],t.get()),t.set([])},m=function(t,e){var n=b[t.astr][e];t.get().push(n)}),T(v);for(var _=o(e.transforms,n),k=0;k1?"%{group} (%{trace})":"%{group}");var l=t.styles,c=o.styles=[];if(l)for(a=0;ah)throw new RangeError('The value "'+t+'" is invalid for option "size"');var e=new Uint8Array(t);return Object.setPrototypeOf(e,p.prototype),e}function p(t,e,n){if("number"===typeof t){if("string"===typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return m(t)}return g(t,e,n)}function g(t,e,n){if("string"===typeof t)return function(t,e){if("string"===typeof e&&""!==e||(e="utf8"),!p.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var n=0|w(t,e),r=d(n),i=r.write(t,e);return i!==n&&(r=r.slice(0,i)),r}(t,e);if(ArrayBuffer.isView(t))return function(t){if(et(t,Uint8Array)){var e=new Uint8Array(t);return b(e.buffer,e.byteOffset,e.byteLength)}return y(t)}(t);if(null==t)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(t));if(et(t,ArrayBuffer)||t&&et(t.buffer,ArrayBuffer))return b(t,e,n);if("undefined"!==typeof SharedArrayBuffer&&(et(t,SharedArrayBuffer)||t&&et(t.buffer,SharedArrayBuffer)))return b(t,e,n);if("number"===typeof t)throw new TypeError('The "value" argument must not be of type number. Received type number');var r=t.valueOf&&t.valueOf();if(null!=r&&r!==t)return p.from(r,e,n);var i=function(t){if(p.isBuffer(t)){var e=0|x(t.length),n=d(e);return 0===n.length||t.copy(n,0,0,e),n}return void 0!==t.length?"number"!==typeof t.length||nt(t.length)?d(0):y(t):"Buffer"===t.type&&Array.isArray(t.data)?y(t.data):void 0}(t);if(i)return i;if("undefined"!==typeof Symbol&&null!=Symbol.toPrimitive&&"function"===typeof t[Symbol.toPrimitive])return p.from(t[Symbol.toPrimitive]("string"),e,n);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(t))}function v(t){if("number"!==typeof t)throw new TypeError('"size" argument must be of type number');if(t<0)throw new RangeError('The value "'+t+'" is invalid for option "size"')}function m(t){return v(t),d(t<0?0:0|x(t))}function y(t){for(var e=t.length<0?0:0|x(t.length),n=d(e),r=0;r=h)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+h.toString(16)+" bytes");return 0|t}function w(t,e){if(p.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||et(t,ArrayBuffer))return t.byteLength;if("string"!==typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+l(t));var n=t.length,r=arguments.length>2&&!0===arguments[2];if(!r&&0===n)return 0;for(var i=!1;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return J(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return Q(t).length;default:if(i)return r?-1:J(t).length;e=(""+e).toLowerCase(),i=!0}}function _(t,e,n){var r=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return z(this,e,n);case"utf8":case"utf-8":return O(this,e,n);case"ascii":return D(this,e,n);case"latin1":case"binary":return R(this,e,n);case"base64":return L(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return N(this,e,n);default:if(r)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),r=!0}}function k(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function T(t,e,n,r,i){if(0===t.length)return-1;if("string"===typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),nt(n=+n)&&(n=i?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(i)return-1;n=t.length-1}else if(n<0){if(!i)return-1;n=0}if("string"===typeof e&&(e=p.from(e,r)),p.isBuffer(e))return 0===e.length?-1:M(t,e,n,r,i);if("number"===typeof e)return e&=255,"function"===typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):M(t,[e],n,r,i);throw new TypeError("val must be string, number or Buffer")}function M(t,e,n,r,i){var a,o=1,s=t.length,l=e.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(t.length<2||e.length<2)return-1;o=2,s/=2,l/=2,n/=2}function c(t,e){return 1===o?t[e]:t.readUInt16BE(e*o)}if(i){var u=-1;for(a=n;as&&(n=s-l),a=n;a>=0;a--){for(var f=!0,h=0;hi&&(r=i):r=i;var a,o=e.length;for(r>o/2&&(r=o/2),a=0;a>8,i=n%256,a.push(i),a.push(r);return a}(e,t.length-n),t,n,r)}function L(t,e,n){return 0===e&&n===t.length?c.fromByteArray(t):c.fromByteArray(t.slice(e,n))}function O(t,e,n){n=Math.min(t.length,n);for(var r=[],i=e;i239?4:a>223?3:a>191?2:1;if(i+s<=n){var l=void 0,c=void 0,u=void 0,f=void 0;switch(s){case 1:a<128&&(o=a);break;case 2:128===(192&(l=t[i+1]))&&(f=(31&a)<<6|63&l)>127&&(o=f);break;case 3:l=t[i+1],c=t[i+2],128===(192&l)&&128===(192&c)&&(f=(15&a)<<12|(63&l)<<6|63&c)>2047&&(f<55296||f>57343)&&(o=f);break;case 4:l=t[i+1],c=t[i+2],u=t[i+3],128===(192&l)&&128===(192&c)&&128===(192&u)&&(f=(15&a)<<18|(63&l)<<12|(63&c)<<6|63&u)>65535&&f<1114112&&(o=f)}}null===o?(o=65533,s=1):o>65535&&(o-=65536,r.push(o>>>10&1023|55296),o=56320|1023&o),r.push(o),i+=s}return function(t){var e=t.length;if(e<=I)return String.fromCharCode.apply(String,t);for(var n="",r=0;rr.length?(p.isBuffer(a)||(a=p.from(a)),a.copy(r,i)):Uint8Array.prototype.set.call(r,a,i);else{if(!p.isBuffer(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(r,i)}i+=a.length}return r},p.byteLength=w,p.prototype._isBuffer=!0,p.prototype.swap16=function(){var t=this.length;if(t%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var e=0;en&&(t+=" ... "),""},f&&(p.prototype[f]=p.prototype.inspect),p.prototype.compare=function(t,e,n,r,i){if(et(t,Uint8Array)&&(t=p.from(t,t.offset,t.byteLength)),!p.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+l(t));if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),e<0||n>t.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&e>=n)return 0;if(r>=i)return-1;if(e>=n)return 1;if(this===t)return 0;for(var a=(i>>>=0)-(r>>>=0),o=(n>>>=0)-(e>>>=0),s=Math.min(a,o),c=this.slice(r,i),u=t.slice(e,n),f=0;f>>=0,isFinite(n)?(n>>>=0,void 0===r&&(r="utf8")):(r=n,n=void 0)}var i=this.length-e;if((void 0===n||n>i)&&(n=i),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var a=!1;;)switch(r){case"hex":return A(this,t,e,n);case"utf8":case"utf-8":return S(this,t,e,n);case"ascii":case"latin1":case"binary":return E(this,t,e,n);case"base64":return C(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return P(this,t,e,n);default:if(a)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),a=!0}},p.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var I=4096;function D(t,e,n){var r="";n=Math.min(t.length,n);for(var i=e;ir)&&(n=r);for(var i="",a=e;an)throw new RangeError("Trying to access beyond buffer length")}function F(t,e,n,r,i,a){if(!p.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||et.length)throw new RangeError("Index out of range")}function B(t,e,n,r,i){$(e,r,i,t,n,7);var a=Number(e&BigInt(4294967295));t[n++]=a,a>>=8,t[n++]=a,a>>=8,t[n++]=a,a>>=8,t[n++]=a;var o=Number(e>>BigInt(32)&BigInt(4294967295));return t[n++]=o,o>>=8,t[n++]=o,o>>=8,t[n++]=o,o>>=8,t[n++]=o,n}function U(t,e,n,r,i){$(e,r,i,t,n,7);var a=Number(e&BigInt(4294967295));t[n+7]=a,a>>=8,t[n+6]=a,a>>=8,t[n+5]=a,a>>=8,t[n+4]=a;var o=Number(e>>BigInt(32)&BigInt(4294967295));return t[n+3]=o,o>>=8,t[n+2]=o,o>>=8,t[n+1]=o,o>>=8,t[n]=o,n+8}function H(t,e,n,r,i,a){if(n+r>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function V(t,e,n,r,i){return e=+e,n>>>=0,i||H(t,0,n,4),u.write(t,e,n,r,23,4),n+4}function q(t,e,n,r,i){return e=+e,n>>>=0,i||H(t,0,n,8),u.write(t,e,n,r,52,8),n+8}p.prototype.slice=function(t,e){var n=this.length;(t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e>>=0,e>>>=0,n||j(t,e,this.length);for(var r=this[t],i=1,a=0;++a>>=0,e>>>=0,n||j(t,e,this.length);for(var r=this[t+--e],i=1;e>0&&(i*=256);)r+=this[t+--e]*i;return r},p.prototype.readUint8=p.prototype.readUInt8=function(t,e){return t>>>=0,e||j(t,1,this.length),this[t]},p.prototype.readUint16LE=p.prototype.readUInt16LE=function(t,e){return t>>>=0,e||j(t,2,this.length),this[t]|this[t+1]<<8},p.prototype.readUint16BE=p.prototype.readUInt16BE=function(t,e){return t>>>=0,e||j(t,2,this.length),this[t]<<8|this[t+1]},p.prototype.readUint32LE=p.prototype.readUInt32LE=function(t,e){return t>>>=0,e||j(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},p.prototype.readUint32BE=p.prototype.readUInt32BE=function(t,e){return t>>>=0,e||j(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},p.prototype.readBigUInt64LE=it((function(t){X(t>>>=0,"offset");var e=this[t],n=this[t+7];void 0!==e&&void 0!==n||K(t,this.length-8);var r=e+this[++t]*Math.pow(2,8)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,24),i=this[++t]+this[++t]*Math.pow(2,8)+this[++t]*Math.pow(2,16)+n*Math.pow(2,24);return BigInt(r)+(BigInt(i)<>>=0,"offset");var e=this[t],n=this[t+7];void 0!==e&&void 0!==n||K(t,this.length-8);var r=e*Math.pow(2,24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+this[++t],i=this[++t]*Math.pow(2,24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+n;return(BigInt(r)<>>=0,e>>>=0,n||j(t,e,this.length);for(var r=this[t],i=1,a=0;++a=(i*=128)&&(r-=Math.pow(2,8*e)),r},p.prototype.readIntBE=function(t,e,n){t>>>=0,e>>>=0,n||j(t,e,this.length);for(var r=e,i=1,a=this[t+--r];r>0&&(i*=256);)a+=this[t+--r]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*e)),a},p.prototype.readInt8=function(t,e){return t>>>=0,e||j(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},p.prototype.readInt16LE=function(t,e){t>>>=0,e||j(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},p.prototype.readInt16BE=function(t,e){t>>>=0,e||j(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},p.prototype.readInt32LE=function(t,e){return t>>>=0,e||j(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},p.prototype.readInt32BE=function(t,e){return t>>>=0,e||j(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},p.prototype.readBigInt64LE=it((function(t){X(t>>>=0,"offset");var e=this[t],n=this[t+7];void 0!==e&&void 0!==n||K(t,this.length-8);var r=this[t+4]+this[t+5]*Math.pow(2,8)+this[t+6]*Math.pow(2,16)+(n<<24);return(BigInt(r)<>>=0,"offset");var e=this[t],n=this[t+7];void 0!==e&&void 0!==n||K(t,this.length-8);var r=(e<<24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+this[++t];return(BigInt(r)<>>=0,e||j(t,4,this.length),u.read(this,t,!0,23,4)},p.prototype.readFloatBE=function(t,e){return t>>>=0,e||j(t,4,this.length),u.read(this,t,!1,23,4)},p.prototype.readDoubleLE=function(t,e){return t>>>=0,e||j(t,8,this.length),u.read(this,t,!0,52,8)},p.prototype.readDoubleBE=function(t,e){return t>>>=0,e||j(t,8,this.length),u.read(this,t,!1,52,8)},p.prototype.writeUintLE=p.prototype.writeUIntLE=function(t,e,n,r){t=+t,e>>>=0,n>>>=0,r||F(this,t,e,n,Math.pow(2,8*n)-1,0);var i=1,a=0;for(this[e]=255&t;++a>>=0,n>>>=0,r||F(this,t,e,n,Math.pow(2,8*n)-1,0);var i=n-1,a=1;for(this[e+i]=255&t;--i>=0&&(a*=256);)this[e+i]=t/a&255;return e+n},p.prototype.writeUint8=p.prototype.writeUInt8=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,1,255,0),this[e]=255&t,e+1},p.prototype.writeUint16LE=p.prototype.writeUInt16LE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},p.prototype.writeUint16BE=p.prototype.writeUInt16BE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},p.prototype.writeUint32LE=p.prototype.writeUInt32LE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},p.prototype.writeUint32BE=p.prototype.writeUInt32BE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},p.prototype.writeBigUInt64LE=it((function(t){return B(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),p.prototype.writeBigUInt64BE=it((function(t){return U(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),p.prototype.writeIntLE=function(t,e,n,r){if(t=+t,e>>>=0,!r){var i=Math.pow(2,8*n-1);F(this,t,e,n,i-1,-i)}var a=0,o=1,s=0;for(this[e]=255&t;++a>0)-s&255;return e+n},p.prototype.writeIntBE=function(t,e,n,r){if(t=+t,e>>>=0,!r){var i=Math.pow(2,8*n-1);F(this,t,e,n,i-1,-i)}var a=n-1,o=1,s=0;for(this[e+a]=255&t;--a>=0&&(o*=256);)t<0&&0===s&&0!==this[e+a+1]&&(s=1),this[e+a]=(t/o>>0)-s&255;return e+n},p.prototype.writeInt8=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},p.prototype.writeInt16LE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},p.prototype.writeInt16BE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},p.prototype.writeInt32LE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},p.prototype.writeInt32BE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},p.prototype.writeBigInt64LE=it((function(t){return B(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),p.prototype.writeBigInt64BE=it((function(t){return U(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),p.prototype.writeFloatLE=function(t,e,n){return V(this,t,e,!0,n)},p.prototype.writeFloatBE=function(t,e,n){return V(this,t,e,!1,n)},p.prototype.writeDoubleLE=function(t,e,n){return q(this,t,e,!0,n)},p.prototype.writeDoubleBE=function(t,e,n){return q(this,t,e,!1,n)},p.prototype.copy=function(t,e,n,r){if(!p.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),r||0===r||(r=this.length),e>=t.length&&(e=t.length),e||(e=0),r>0&&r=this.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),t.length-e>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),"number"===typeof t)for(a=e;a=r+4;n-=3)e="_".concat(t.slice(n-3,n)).concat(e);return"".concat(t.slice(0,n)).concat(e)}function $(t,e,n,r,i,a){if(t>n||t3?0===e||e===BigInt(0)?">= 0".concat(s," and < 2").concat(s," ** ").concat(8*(a+1)).concat(s):">= -(2".concat(s," ** ").concat(8*(a+1)-1).concat(s,") and < 2 ** ")+"".concat(8*(a+1)-1).concat(s):">= ".concat(e).concat(s," and <= ").concat(n).concat(s),new G.ERR_OUT_OF_RANGE("value",o,t)}!function(t,e,n){X(e,"offset"),void 0!==t[e]&&void 0!==t[e+n]||K(e,t.length-(n+1))}(r,i,a)}function X(t,e){if("number"!==typeof t)throw new G.ERR_INVALID_ARG_TYPE(e,"number",t)}function K(t,e,n){if(Math.floor(t)!==t)throw X(t,n),new G.ERR_OUT_OF_RANGE(n||"offset","an integer",t);if(e<0)throw new G.ERR_BUFFER_OUT_OF_BOUNDS;throw new G.ERR_OUT_OF_RANGE(n||"offset",">= ".concat(n?1:0," and <= ").concat(e),t)}W("ERR_BUFFER_OUT_OF_BOUNDS",(function(t){return t?"".concat(t," is outside of buffer bounds"):"Attempt to access memory outside buffer bounds"}),RangeError),W("ERR_INVALID_ARG_TYPE",(function(t,e){return'The "'.concat(t,'" argument must be of type number. Received type ').concat(l(e))}),TypeError),W("ERR_OUT_OF_RANGE",(function(t,e,n){var r='The value of "'.concat(t,'" is out of range.'),i=n;return Number.isInteger(n)&&Math.abs(n)>Math.pow(2,32)?i=Y(String(n)):"bigint"===typeof n&&(i=String(n),(n>Math.pow(BigInt(2),BigInt(32))||n<-Math.pow(BigInt(2),BigInt(32)))&&(i=Y(i)),i+="n"),r+=" It must be ".concat(e,". Received ").concat(i)}),RangeError);var Z=/[^+/0-9A-Za-z-_]/g;function J(t,e){var n;e=e||1/0;for(var r=t.length,i=null,a=[],o=0;o55295&&n<57344){if(!i){if(n>56319){(e-=3)>-1&&a.push(239,191,189);continue}if(o+1===r){(e-=3)>-1&&a.push(239,191,189);continue}i=n;continue}if(n<56320){(e-=3)>-1&&a.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(e-=3)>-1&&a.push(239,191,189);if(i=null,n<128){if((e-=1)<0)break;a.push(n)}else if(n<2048){if((e-=2)<0)break;a.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;a.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return a}function Q(t){return c.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(Z,"")).length<2)return"";for(;t.length%4!==0;)t+="=";return t}(t))}function tt(t,e,n,r){var i;for(i=0;i=e.length||i>=t.length);++i)e[i+n]=t[i];return i}function et(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function nt(t){return t!==t}var rt=function(){for(var t="0123456789abcdef",e=new Array(256),n=0;n<16;++n)for(var r=16*n,i=0;i<16;++i)e[r+i]=t[n]+t[i];return e}();function it(t){return"undefined"===typeof BigInt?at:t}function at(){throw new Error("BigInt not supported")}},2321:function(t){"use strict";t.exports=i,t.exports.isMobile=i,t.exports.default=i;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,n=/CrOS/,r=/android|ipad|playbook|silk/i;function i(t){t||(t={});var i=t.ua;if(i||"undefined"===typeof navigator||(i=navigator.userAgent),i&&i.headers&&"string"===typeof i.headers["user-agent"]&&(i=i.headers["user-agent"]),"string"!==typeof i)return!1;var a=e.test(i)&&!n.test(i)||!!t.tablet&&r.test(i);return!a&&t.tablet&&t.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==i.indexOf("Macintosh")&&-1!==i.indexOf("Safari")&&(a=!0),a}},3910:function(t,e){"use strict";e.byteLength=function(t){var e=l(t),n=e[0],r=e[1];return 3*(n+r)/4-r},e.toByteArray=function(t){var e,n,a=l(t),o=a[0],s=a[1],c=new i(function(t,e,n){return 3*(e+n)/4-n}(0,o,s)),u=0,f=s>0?o-4:o;for(n=0;n>16&255,c[u++]=e>>8&255,c[u++]=255&e;return 2===s&&(e=r[t.charCodeAt(n)]<<2|r[t.charCodeAt(n+1)]>>4,c[u++]=255&e),1===s&&(e=r[t.charCodeAt(n)]<<10|r[t.charCodeAt(n+1)]<<4|r[t.charCodeAt(n+2)]>>2,c[u++]=e>>8&255,c[u++]=255&e),c},e.fromByteArray=function(t){for(var e,r=t.length,i=r%3,a=[],o=16383,s=0,l=r-i;sl?l:s+o));return 1===i?(e=t[r-1],a.push(n[e>>2]+n[e<<4&63]+"==")):2===i&&(e=(t[r-2]<<8)+t[r-1],a.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"=")),a.join("")};for(var n=[],r=[],i="undefined"!==typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0,s=a.length;o0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");return-1===n&&(n=e),[n,n===e?0:4-n%4]}function c(t,e,r){for(var i,a,o=[],s=e;s>18&63]+n[a>>12&63]+n[a>>6&63]+n[63&a]);return o.join("")}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63},3187:function(t,e){e.read=function(t,e,n,r,i){var a,o,s=8*i-r-1,l=(1<>1,u=-7,f=n?i-1:0,h=n?-1:1,d=t[e+f];for(f+=h,a=d&(1<<-u)-1,d>>=-u,u+=s;u>0;a=256*a+t[e+f],f+=h,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=r;u>0;o=256*o+t[e+f],f+=h,u-=8);if(0===a)a=1-c;else{if(a===l)return o?NaN:1/0*(d?-1:1);o+=Math.pow(2,r),a-=c}return(d?-1:1)*o*Math.pow(2,a-r)},e.write=function(t,e,n,r,i,a){var o,s,l,c=8*a-i-1,u=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:a-1,p=r?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+f>=1?h/l:h*Math.pow(2,1-f))*l>=2&&(o++,l/=2),o+f>=u?(s=0,o=u):o+f>=1?(s=(e*l-1)*Math.pow(2,i),o+=f):(s=e*Math.pow(2,f-1)*Math.pow(2,i),o=0));i>=8;t[n+d]=255&s,d+=p,s/=256,i-=8);for(o=o<0;t[n+d]=255&o,d+=p,o/=256,c-=8);t[n+d-p]|=128*g}},1152:function(t,e,n){"use strict";t.exports=function(t){var e=(t=t||{}).eye||[0,0,1],n=t.center||[0,0,0],s=t.up||[0,1,0],l=t.distanceLimits||[0,1/0],c=t.mode||"turntable",u=r(),f=i(),h=a();return u.setDistanceLimits(l[0],l[1]),u.lookAt(0,e,n,s),f.setDistanceLimits(l[0],l[1]),f.lookAt(0,e,n,s),h.setDistanceLimits(l[0],l[1]),h.lookAt(0,e,n,s),new o({turntable:u,orbit:f,matrix:h},c)};var r=n(3440),i=n(7774),a=n(9298);function o(t,e){this._controllerNames=Object.keys(t),this._controllerList=this._controllerNames.map((function(e){return t[e]})),this._mode=e,this._active=t[e],this._active||(this._mode="turntable",this._active=t.turntable),this.modes=this._controllerNames,this.computedMatrix=this._active.computedMatrix,this.computedEye=this._active.computedEye,this.computedUp=this._active.computedUp,this.computedCenter=this._active.computedCenter,this.computedRadius=this._active.computedRadius}var s=o.prototype;s.flush=function(t){for(var e=this._controllerList,n=0;n0?c=c.ushln(f):f<0&&(u=u.ushln(-f)),s(c,u)}},234:function(t,e,n){"use strict";var r=n(3218);t.exports=function(t){return Array.isArray(t)&&2===t.length&&r(t[0])&&r(t[1])}},4275:function(t,e,n){"use strict";var r=n(1928);t.exports=function(t){return t.cmp(new r(0))}},9958:function(t,e,n){"use strict";var r=n(4275);t.exports=function(t){var e=t.length,n=t.words,i=0;if(1===e)i=n[0];else if(2===e)i=n[0]+67108864*n[1];else for(var a=0;a20?52:n+32}},3218:function(t,e,n){"use strict";n(1928),t.exports=function(t){return t&&"object"===typeof t&&Boolean(t.words)}},5514:function(t,e,n){"use strict";var r=n(1928),i=n(8362);t.exports=function(t){var e=i.exponent(t);return e<52?new r(t):new r(t*Math.pow(2,52-e)).ushln(e-52)}},8524:function(t,e,n){"use strict";var r=n(5514),i=n(4275);t.exports=function(t,e){var n=i(t),a=i(e);if(0===n)return[r(0),r(1)];if(0===a)return[r(0),r(0)];a<0&&(t=t.neg(),e=e.neg());var o=t.gcd(e);return o.cmpn(1)?[t.div(o),e.div(o)]:[t,e]}},2813:function(t,e,n){"use strict";var r=n(1928);t.exports=function(t){return new r(t)}},3962:function(t,e,n){"use strict";var r=n(8524);t.exports=function(t,e){return r(t[0].mul(e[0]),t[1].mul(e[1]))}},4951:function(t,e,n){"use strict";var r=n(4275);t.exports=function(t){return r(t[0])*r(t[1])}},4354:function(t,e,n){"use strict";var r=n(8524);t.exports=function(t,e){return r(t[0].mul(e[1]).sub(t[1].mul(e[0])),t[1].mul(e[1]))}},7999:function(t,e,n){"use strict";var r=n(9958),i=n(1112);t.exports=function(t){var e=t[0],n=t[1];if(0===e.cmpn(0))return 0;var a=e.abs().divmod(n.abs()),o=a.div,s=r(o),l=a.mod,c=e.negative!==n.negative?-1:1;if(0===l.cmpn(0))return c*s;if(s){var u=i(s)+4;return c*(s+(h=r(l.ushln(u).divRound(n)))*Math.pow(2,-u))}var f=n.bitLength()-l.bitLength()+53,h=r(l.ushln(f).divRound(n));return f<1023?c*h*Math.pow(2,-f):c*(h*=Math.pow(2,-1023))*Math.pow(2,1023-f)}},5070:function(t){"use strict";function e(t,e,n,r,i){for(var a=i+1;r<=i;){var o=r+i>>>1,s=t[o];(void 0!==n?n(s,e):s-e)>=0?(a=o,i=o-1):r=o+1}return a}function n(t,e,n,r,i){for(var a=i+1;r<=i;){var o=r+i>>>1,s=t[o];(void 0!==n?n(s,e):s-e)>0?(a=o,i=o-1):r=o+1}return a}function r(t,e,n,r,i){for(var a=r-1;r<=i;){var o=r+i>>>1,s=t[o];(void 0!==n?n(s,e):s-e)<0?(a=o,r=o+1):i=o-1}return a}function i(t,e,n,r,i){for(var a=r-1;r<=i;){var o=r+i>>>1,s=t[o];(void 0!==n?n(s,e):s-e)<=0?(a=o,r=o+1):i=o-1}return a}function a(t,e,n,r,i){for(;r<=i;){var a=r+i>>>1,o=t[a],s=void 0!==n?n(o,e):o-e;if(0===s)return a;s<=0?r=a+1:i=a-1}return-1}function o(t,e,n,r,i,a){return"function"===typeof n?a(t,e,n,void 0===r?0:0|r,void 0===i?t.length-1:0|i):a(t,e,void 0,void 0===n?0:0|n,void 0===r?t.length-1:0|r)}t.exports={ge:function(t,n,r,i,a){return o(t,n,r,i,a,e)},gt:function(t,e,r,i,a){return o(t,e,r,i,a,n)},lt:function(t,e,n,i,a){return o(t,e,n,i,a,r)},le:function(t,e,n,r,a){return o(t,e,n,r,a,i)},eq:function(t,e,n,r,i){return o(t,e,n,r,i,a)}}},2288:function(t,e){"use strict";function n(t){var e=32;return(t&=-t)&&e--,65535&t&&(e-=16),16711935&t&&(e-=8),252645135&t&&(e-=4),858993459&t&&(e-=2),1431655765&t&&(e-=1),e}e.INT_BITS=32,e.INT_MAX=2147483647,e.INT_MIN=-1<<31,e.sign=function(t){return(t>0)-(t<0)},e.abs=function(t){var e=t>>31;return(t^e)-e},e.min=function(t,e){return e^(t^e)&-(t65535)<<4,e|=n=((t>>>=e)>255)<<3,e|=n=((t>>>=n)>15)<<2,(e|=n=((t>>>=n)>3)<<1)|(t>>>=n)>>1},e.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},e.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},e.countTrailingZeros=n,e.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,1+(t|=t>>>16)},e.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},e.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var r=new Array(256);!function(t){for(var e=0;e<256;++e){var n=e,r=e,i=7;for(n>>>=1;n;n>>>=1)r<<=1,r|=1&n,--i;t[e]=r<>>8&255]<<16|r[t>>>16&255]<<8|r[t>>>24&255]},e.interleave2=function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},e.deinterleave2=function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},e.interleave3=function(t,e,n){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(n=1227133513&((n=3272356035&((n=251719695&((n=4278190335&((n&=1023)|n<<16))|n<<8))|n<<4))|n<<2))<<2},e.deinterleave3=function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},e.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>n(t)+1}},1928:function(t,e,n){!function(t,e){"use strict";function r(t,e){if(!t)throw new Error(e||"Assertion failed")}function i(t,e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}function a(t,e,n){if(a.isBN(t))return t;this.negative=0,this.words=null,this.length=0,this.red=null,null!==t&&("le"!==e&&"be"!==e||(n=e,e=10),this._init(t||0,e||10,n||"be"))}var o;"object"===typeof t?t.exports=a:e.BN=a,a.BN=a,a.wordSize=26;try{o="undefined"!==typeof window&&"undefined"!==typeof window.Buffer?window.Buffer:n(6601).Buffer}catch(M){}function s(t,e){var n=t.charCodeAt(e);return n>=65&&n<=70?n-55:n>=97&&n<=102?n-87:n-48&15}function l(t,e,n){var r=s(t,n);return n-1>=e&&(r|=s(t,n-1)<<4),r}function c(t,e,n,r){for(var i=0,a=Math.min(t.length,n),o=e;o=49?s-49+10:s>=17?s-17+10:s}return i}a.isBN=function(t){return t instanceof a||null!==t&&"object"===typeof t&&t.constructor.wordSize===a.wordSize&&Array.isArray(t.words)},a.max=function(t,e){return t.cmp(e)>0?t:e},a.min=function(t,e){return t.cmp(e)<0?t:e},a.prototype._init=function(t,e,n){if("number"===typeof t)return this._initNumber(t,e,n);if("object"===typeof t)return this._initArray(t,e,n);"hex"===e&&(e=16),r(e===(0|e)&&e>=2&&e<=36);var i=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&(i++,this.negative=1),i=0;i-=3)o=t[i]|t[i-1]<<8|t[i-2]<<16,this.words[a]|=o<>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);else if("le"===n)for(i=0,a=0;i>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);return this.strip()},a.prototype._parseHex=function(t,e,n){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var r=0;r=e;r-=2)i=l(t,e,r)<=18?(a-=18,o+=1,this.words[o]|=i>>>26):a+=8;else for(r=(t.length-e)%2===0?e+1:e;r=18?(a-=18,o+=1,this.words[o]|=i>>>26):a+=8;this.strip()},a.prototype._parseBase=function(t,e,n){this.words=[0],this.length=1;for(var r=0,i=1;i<=67108863;i*=e)r++;r--,i=i/e|0;for(var a=t.length-n,o=a%r,s=Math.min(a,a-o)+n,l=0,u=n;u1&&0===this.words[this.length-1];)this.length--;return this._normSign()},a.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},a.prototype.inspect=function(){return(this.red?""};var u=["","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],h=[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 d(t,e,n){n.negative=e.negative^t.negative;var r=t.length+e.length|0;n.length=r,r=r-1|0;var i=0|t.words[0],a=0|e.words[0],o=i*a,s=67108863&o,l=o/67108864|0;n.words[0]=s;for(var c=1;c>>26,f=67108863&l,h=Math.min(c,e.length-1),d=Math.max(0,c-t.length+1);d<=h;d++){var p=c-d|0;u+=(o=(i=0|t.words[p])*(a=0|e.words[d])+f)/67108864|0,f=67108863&o}n.words[c]=0|f,l=0|u}return 0!==l?n.words[c]=0|l:n.length--,n.strip()}a.prototype.toString=function(t,e){var n;if(e=0|e||1,16===(t=t||10)||"hex"===t){n="";for(var i=0,a=0,o=0;o>>24-i&16777215)||o!==this.length-1?u[6-l.length]+l+n:l+n,(i+=2)>=26&&(i-=26,o--)}for(0!==a&&(n=a.toString(16)+n);n.length%e!==0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(t===(0|t)&&t>=2&&t<=36){var c=f[t],d=h[t];n="";var p=this.clone();for(p.negative=0;!p.isZero();){var g=p.modn(d).toString(t);n=(p=p.idivn(d)).isZero()?g+n:u[c-g.length]+g+n}for(this.isZero()&&(n="0"+n);n.length%e!==0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}r(!1,"Base should be between 2 and 36")},a.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},a.prototype.toJSON=function(){return this.toString(16)},a.prototype.toBuffer=function(t,e){return r("undefined"!==typeof o),this.toArrayLike(o,t,e)},a.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},a.prototype.toArrayLike=function(t,e,n){var i=this.byteLength(),a=n||Math.max(1,i);r(i<=a,"byte array longer than desired length"),r(a>0,"Requested array length <= 0"),this.strip();var o,s,l="le"===e,c=new t(a),u=this.clone();if(l){for(s=0;!u.isZero();s++)o=u.andln(255),u.iushrn(8),c[s]=o;for(;s=4096&&(n+=13,e>>>=13),e>=64&&(n+=7,e>>>=7),e>=8&&(n+=4,e>>>=4),e>=2&&(n+=2,e>>>=2),n+e},a.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,n=0;return 0===(8191&e)&&(n+=13,e>>>=13),0===(127&e)&&(n+=7,e>>>=7),0===(15&e)&&(n+=4,e>>>=4),0===(3&e)&&(n+=2,e>>>=2),0===(1&e)&&n++,n},a.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},a.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},a.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},a.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var n=0;nt.length?this.clone().iand(t):t.clone().iand(this)},a.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},a.prototype.iuxor=function(t){var e,n;this.length>t.length?(e=this,n=t):(e=t,n=this);for(var r=0;rt.length?this.clone().ixor(t):t.clone().ixor(this)},a.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},a.prototype.inotn=function(t){r("number"===typeof t&&t>=0);var e=0|Math.ceil(t/26),n=t%26;this._expand(e),n>0&&e--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-n),this.strip()},a.prototype.notn=function(t){return this.clone().inotn(t)},a.prototype.setn=function(t,e){r("number"===typeof t&&t>=0);var n=t/26|0,i=t%26;return this._expand(n+1),this.words[n]=e?this.words[n]|1<t.length?(n=this,r=t):(n=t,r=this);for(var i=0,a=0;a>>26;for(;0!==i&&a>>26;if(this.length=n.length,0!==i)this.words[this.length]=i,this.length++;else if(n!==this)for(;at.length?this.clone().iadd(t):t.clone().iadd(this)},a.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var n,r,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(n=this,r=t):(n=t,r=this);for(var a=0,o=0;o>26,this.words[o]=67108863&e;for(;0!==a&&o>26,this.words[o]=67108863&e;if(0===a&&o>>13,d=0|o[1],p=8191&d,g=d>>>13,v=0|o[2],m=8191&v,y=v>>>13,b=0|o[3],x=8191&b,w=b>>>13,_=0|o[4],k=8191&_,T=_>>>13,M=0|o[5],A=8191&M,S=M>>>13,E=0|o[6],C=8191&E,P=E>>>13,L=0|o[7],O=8191&L,I=L>>>13,D=0|o[8],R=8191&D,z=D>>>13,N=0|o[9],j=8191&N,F=N>>>13,B=0|s[0],U=8191&B,H=B>>>13,V=0|s[1],q=8191&V,G=V>>>13,W=0|s[2],Y=8191&W,$=W>>>13,X=0|s[3],K=8191&X,Z=X>>>13,J=0|s[4],Q=8191&J,tt=J>>>13,et=0|s[5],nt=8191&et,rt=et>>>13,it=0|s[6],at=8191&it,ot=it>>>13,st=0|s[7],lt=8191&st,ct=st>>>13,ut=0|s[8],ft=8191&ut,ht=ut>>>13,dt=0|s[9],pt=8191&dt,gt=dt>>>13;n.negative=t.negative^e.negative,n.length=19;var vt=(c+(r=Math.imul(f,U))|0)+((8191&(i=(i=Math.imul(f,H))+Math.imul(h,U)|0))<<13)|0;c=((a=Math.imul(h,H))+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,r=Math.imul(p,U),i=(i=Math.imul(p,H))+Math.imul(g,U)|0,a=Math.imul(g,H);var mt=(c+(r=r+Math.imul(f,q)|0)|0)+((8191&(i=(i=i+Math.imul(f,G)|0)+Math.imul(h,q)|0))<<13)|0;c=((a=a+Math.imul(h,G)|0)+(i>>>13)|0)+(mt>>>26)|0,mt&=67108863,r=Math.imul(m,U),i=(i=Math.imul(m,H))+Math.imul(y,U)|0,a=Math.imul(y,H),r=r+Math.imul(p,q)|0,i=(i=i+Math.imul(p,G)|0)+Math.imul(g,q)|0,a=a+Math.imul(g,G)|0;var yt=(c+(r=r+Math.imul(f,Y)|0)|0)+((8191&(i=(i=i+Math.imul(f,$)|0)+Math.imul(h,Y)|0))<<13)|0;c=((a=a+Math.imul(h,$)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,r=Math.imul(x,U),i=(i=Math.imul(x,H))+Math.imul(w,U)|0,a=Math.imul(w,H),r=r+Math.imul(m,q)|0,i=(i=i+Math.imul(m,G)|0)+Math.imul(y,q)|0,a=a+Math.imul(y,G)|0,r=r+Math.imul(p,Y)|0,i=(i=i+Math.imul(p,$)|0)+Math.imul(g,Y)|0,a=a+Math.imul(g,$)|0;var bt=(c+(r=r+Math.imul(f,K)|0)|0)+((8191&(i=(i=i+Math.imul(f,Z)|0)+Math.imul(h,K)|0))<<13)|0;c=((a=a+Math.imul(h,Z)|0)+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,r=Math.imul(k,U),i=(i=Math.imul(k,H))+Math.imul(T,U)|0,a=Math.imul(T,H),r=r+Math.imul(x,q)|0,i=(i=i+Math.imul(x,G)|0)+Math.imul(w,q)|0,a=a+Math.imul(w,G)|0,r=r+Math.imul(m,Y)|0,i=(i=i+Math.imul(m,$)|0)+Math.imul(y,Y)|0,a=a+Math.imul(y,$)|0,r=r+Math.imul(p,K)|0,i=(i=i+Math.imul(p,Z)|0)+Math.imul(g,K)|0,a=a+Math.imul(g,Z)|0;var xt=(c+(r=r+Math.imul(f,Q)|0)|0)+((8191&(i=(i=i+Math.imul(f,tt)|0)+Math.imul(h,Q)|0))<<13)|0;c=((a=a+Math.imul(h,tt)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,r=Math.imul(A,U),i=(i=Math.imul(A,H))+Math.imul(S,U)|0,a=Math.imul(S,H),r=r+Math.imul(k,q)|0,i=(i=i+Math.imul(k,G)|0)+Math.imul(T,q)|0,a=a+Math.imul(T,G)|0,r=r+Math.imul(x,Y)|0,i=(i=i+Math.imul(x,$)|0)+Math.imul(w,Y)|0,a=a+Math.imul(w,$)|0,r=r+Math.imul(m,K)|0,i=(i=i+Math.imul(m,Z)|0)+Math.imul(y,K)|0,a=a+Math.imul(y,Z)|0,r=r+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,tt)|0)+Math.imul(g,Q)|0,a=a+Math.imul(g,tt)|0;var wt=(c+(r=r+Math.imul(f,nt)|0)|0)+((8191&(i=(i=i+Math.imul(f,rt)|0)+Math.imul(h,nt)|0))<<13)|0;c=((a=a+Math.imul(h,rt)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,r=Math.imul(C,U),i=(i=Math.imul(C,H))+Math.imul(P,U)|0,a=Math.imul(P,H),r=r+Math.imul(A,q)|0,i=(i=i+Math.imul(A,G)|0)+Math.imul(S,q)|0,a=a+Math.imul(S,G)|0,r=r+Math.imul(k,Y)|0,i=(i=i+Math.imul(k,$)|0)+Math.imul(T,Y)|0,a=a+Math.imul(T,$)|0,r=r+Math.imul(x,K)|0,i=(i=i+Math.imul(x,Z)|0)+Math.imul(w,K)|0,a=a+Math.imul(w,Z)|0,r=r+Math.imul(m,Q)|0,i=(i=i+Math.imul(m,tt)|0)+Math.imul(y,Q)|0,a=a+Math.imul(y,tt)|0,r=r+Math.imul(p,nt)|0,i=(i=i+Math.imul(p,rt)|0)+Math.imul(g,nt)|0,a=a+Math.imul(g,rt)|0;var _t=(c+(r=r+Math.imul(f,at)|0)|0)+((8191&(i=(i=i+Math.imul(f,ot)|0)+Math.imul(h,at)|0))<<13)|0;c=((a=a+Math.imul(h,ot)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,r=Math.imul(O,U),i=(i=Math.imul(O,H))+Math.imul(I,U)|0,a=Math.imul(I,H),r=r+Math.imul(C,q)|0,i=(i=i+Math.imul(C,G)|0)+Math.imul(P,q)|0,a=a+Math.imul(P,G)|0,r=r+Math.imul(A,Y)|0,i=(i=i+Math.imul(A,$)|0)+Math.imul(S,Y)|0,a=a+Math.imul(S,$)|0,r=r+Math.imul(k,K)|0,i=(i=i+Math.imul(k,Z)|0)+Math.imul(T,K)|0,a=a+Math.imul(T,Z)|0,r=r+Math.imul(x,Q)|0,i=(i=i+Math.imul(x,tt)|0)+Math.imul(w,Q)|0,a=a+Math.imul(w,tt)|0,r=r+Math.imul(m,nt)|0,i=(i=i+Math.imul(m,rt)|0)+Math.imul(y,nt)|0,a=a+Math.imul(y,rt)|0,r=r+Math.imul(p,at)|0,i=(i=i+Math.imul(p,ot)|0)+Math.imul(g,at)|0,a=a+Math.imul(g,ot)|0;var kt=(c+(r=r+Math.imul(f,lt)|0)|0)+((8191&(i=(i=i+Math.imul(f,ct)|0)+Math.imul(h,lt)|0))<<13)|0;c=((a=a+Math.imul(h,ct)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,r=Math.imul(R,U),i=(i=Math.imul(R,H))+Math.imul(z,U)|0,a=Math.imul(z,H),r=r+Math.imul(O,q)|0,i=(i=i+Math.imul(O,G)|0)+Math.imul(I,q)|0,a=a+Math.imul(I,G)|0,r=r+Math.imul(C,Y)|0,i=(i=i+Math.imul(C,$)|0)+Math.imul(P,Y)|0,a=a+Math.imul(P,$)|0,r=r+Math.imul(A,K)|0,i=(i=i+Math.imul(A,Z)|0)+Math.imul(S,K)|0,a=a+Math.imul(S,Z)|0,r=r+Math.imul(k,Q)|0,i=(i=i+Math.imul(k,tt)|0)+Math.imul(T,Q)|0,a=a+Math.imul(T,tt)|0,r=r+Math.imul(x,nt)|0,i=(i=i+Math.imul(x,rt)|0)+Math.imul(w,nt)|0,a=a+Math.imul(w,rt)|0,r=r+Math.imul(m,at)|0,i=(i=i+Math.imul(m,ot)|0)+Math.imul(y,at)|0,a=a+Math.imul(y,ot)|0,r=r+Math.imul(p,lt)|0,i=(i=i+Math.imul(p,ct)|0)+Math.imul(g,lt)|0,a=a+Math.imul(g,ct)|0;var Tt=(c+(r=r+Math.imul(f,ft)|0)|0)+((8191&(i=(i=i+Math.imul(f,ht)|0)+Math.imul(h,ft)|0))<<13)|0;c=((a=a+Math.imul(h,ht)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,r=Math.imul(j,U),i=(i=Math.imul(j,H))+Math.imul(F,U)|0,a=Math.imul(F,H),r=r+Math.imul(R,q)|0,i=(i=i+Math.imul(R,G)|0)+Math.imul(z,q)|0,a=a+Math.imul(z,G)|0,r=r+Math.imul(O,Y)|0,i=(i=i+Math.imul(O,$)|0)+Math.imul(I,Y)|0,a=a+Math.imul(I,$)|0,r=r+Math.imul(C,K)|0,i=(i=i+Math.imul(C,Z)|0)+Math.imul(P,K)|0,a=a+Math.imul(P,Z)|0,r=r+Math.imul(A,Q)|0,i=(i=i+Math.imul(A,tt)|0)+Math.imul(S,Q)|0,a=a+Math.imul(S,tt)|0,r=r+Math.imul(k,nt)|0,i=(i=i+Math.imul(k,rt)|0)+Math.imul(T,nt)|0,a=a+Math.imul(T,rt)|0,r=r+Math.imul(x,at)|0,i=(i=i+Math.imul(x,ot)|0)+Math.imul(w,at)|0,a=a+Math.imul(w,ot)|0,r=r+Math.imul(m,lt)|0,i=(i=i+Math.imul(m,ct)|0)+Math.imul(y,lt)|0,a=a+Math.imul(y,ct)|0,r=r+Math.imul(p,ft)|0,i=(i=i+Math.imul(p,ht)|0)+Math.imul(g,ft)|0,a=a+Math.imul(g,ht)|0;var Mt=(c+(r=r+Math.imul(f,pt)|0)|0)+((8191&(i=(i=i+Math.imul(f,gt)|0)+Math.imul(h,pt)|0))<<13)|0;c=((a=a+Math.imul(h,gt)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,r=Math.imul(j,q),i=(i=Math.imul(j,G))+Math.imul(F,q)|0,a=Math.imul(F,G),r=r+Math.imul(R,Y)|0,i=(i=i+Math.imul(R,$)|0)+Math.imul(z,Y)|0,a=a+Math.imul(z,$)|0,r=r+Math.imul(O,K)|0,i=(i=i+Math.imul(O,Z)|0)+Math.imul(I,K)|0,a=a+Math.imul(I,Z)|0,r=r+Math.imul(C,Q)|0,i=(i=i+Math.imul(C,tt)|0)+Math.imul(P,Q)|0,a=a+Math.imul(P,tt)|0,r=r+Math.imul(A,nt)|0,i=(i=i+Math.imul(A,rt)|0)+Math.imul(S,nt)|0,a=a+Math.imul(S,rt)|0,r=r+Math.imul(k,at)|0,i=(i=i+Math.imul(k,ot)|0)+Math.imul(T,at)|0,a=a+Math.imul(T,ot)|0,r=r+Math.imul(x,lt)|0,i=(i=i+Math.imul(x,ct)|0)+Math.imul(w,lt)|0,a=a+Math.imul(w,ct)|0,r=r+Math.imul(m,ft)|0,i=(i=i+Math.imul(m,ht)|0)+Math.imul(y,ft)|0,a=a+Math.imul(y,ht)|0;var At=(c+(r=r+Math.imul(p,pt)|0)|0)+((8191&(i=(i=i+Math.imul(p,gt)|0)+Math.imul(g,pt)|0))<<13)|0;c=((a=a+Math.imul(g,gt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,r=Math.imul(j,Y),i=(i=Math.imul(j,$))+Math.imul(F,Y)|0,a=Math.imul(F,$),r=r+Math.imul(R,K)|0,i=(i=i+Math.imul(R,Z)|0)+Math.imul(z,K)|0,a=a+Math.imul(z,Z)|0,r=r+Math.imul(O,Q)|0,i=(i=i+Math.imul(O,tt)|0)+Math.imul(I,Q)|0,a=a+Math.imul(I,tt)|0,r=r+Math.imul(C,nt)|0,i=(i=i+Math.imul(C,rt)|0)+Math.imul(P,nt)|0,a=a+Math.imul(P,rt)|0,r=r+Math.imul(A,at)|0,i=(i=i+Math.imul(A,ot)|0)+Math.imul(S,at)|0,a=a+Math.imul(S,ot)|0,r=r+Math.imul(k,lt)|0,i=(i=i+Math.imul(k,ct)|0)+Math.imul(T,lt)|0,a=a+Math.imul(T,ct)|0,r=r+Math.imul(x,ft)|0,i=(i=i+Math.imul(x,ht)|0)+Math.imul(w,ft)|0,a=a+Math.imul(w,ht)|0;var St=(c+(r=r+Math.imul(m,pt)|0)|0)+((8191&(i=(i=i+Math.imul(m,gt)|0)+Math.imul(y,pt)|0))<<13)|0;c=((a=a+Math.imul(y,gt)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,r=Math.imul(j,K),i=(i=Math.imul(j,Z))+Math.imul(F,K)|0,a=Math.imul(F,Z),r=r+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,tt)|0)+Math.imul(z,Q)|0,a=a+Math.imul(z,tt)|0,r=r+Math.imul(O,nt)|0,i=(i=i+Math.imul(O,rt)|0)+Math.imul(I,nt)|0,a=a+Math.imul(I,rt)|0,r=r+Math.imul(C,at)|0,i=(i=i+Math.imul(C,ot)|0)+Math.imul(P,at)|0,a=a+Math.imul(P,ot)|0,r=r+Math.imul(A,lt)|0,i=(i=i+Math.imul(A,ct)|0)+Math.imul(S,lt)|0,a=a+Math.imul(S,ct)|0,r=r+Math.imul(k,ft)|0,i=(i=i+Math.imul(k,ht)|0)+Math.imul(T,ft)|0,a=a+Math.imul(T,ht)|0;var Et=(c+(r=r+Math.imul(x,pt)|0)|0)+((8191&(i=(i=i+Math.imul(x,gt)|0)+Math.imul(w,pt)|0))<<13)|0;c=((a=a+Math.imul(w,gt)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,r=Math.imul(j,Q),i=(i=Math.imul(j,tt))+Math.imul(F,Q)|0,a=Math.imul(F,tt),r=r+Math.imul(R,nt)|0,i=(i=i+Math.imul(R,rt)|0)+Math.imul(z,nt)|0,a=a+Math.imul(z,rt)|0,r=r+Math.imul(O,at)|0,i=(i=i+Math.imul(O,ot)|0)+Math.imul(I,at)|0,a=a+Math.imul(I,ot)|0,r=r+Math.imul(C,lt)|0,i=(i=i+Math.imul(C,ct)|0)+Math.imul(P,lt)|0,a=a+Math.imul(P,ct)|0,r=r+Math.imul(A,ft)|0,i=(i=i+Math.imul(A,ht)|0)+Math.imul(S,ft)|0,a=a+Math.imul(S,ht)|0;var Ct=(c+(r=r+Math.imul(k,pt)|0)|0)+((8191&(i=(i=i+Math.imul(k,gt)|0)+Math.imul(T,pt)|0))<<13)|0;c=((a=a+Math.imul(T,gt)|0)+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,r=Math.imul(j,nt),i=(i=Math.imul(j,rt))+Math.imul(F,nt)|0,a=Math.imul(F,rt),r=r+Math.imul(R,at)|0,i=(i=i+Math.imul(R,ot)|0)+Math.imul(z,at)|0,a=a+Math.imul(z,ot)|0,r=r+Math.imul(O,lt)|0,i=(i=i+Math.imul(O,ct)|0)+Math.imul(I,lt)|0,a=a+Math.imul(I,ct)|0,r=r+Math.imul(C,ft)|0,i=(i=i+Math.imul(C,ht)|0)+Math.imul(P,ft)|0,a=a+Math.imul(P,ht)|0;var Pt=(c+(r=r+Math.imul(A,pt)|0)|0)+((8191&(i=(i=i+Math.imul(A,gt)|0)+Math.imul(S,pt)|0))<<13)|0;c=((a=a+Math.imul(S,gt)|0)+(i>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,r=Math.imul(j,at),i=(i=Math.imul(j,ot))+Math.imul(F,at)|0,a=Math.imul(F,ot),r=r+Math.imul(R,lt)|0,i=(i=i+Math.imul(R,ct)|0)+Math.imul(z,lt)|0,a=a+Math.imul(z,ct)|0,r=r+Math.imul(O,ft)|0,i=(i=i+Math.imul(O,ht)|0)+Math.imul(I,ft)|0,a=a+Math.imul(I,ht)|0;var Lt=(c+(r=r+Math.imul(C,pt)|0)|0)+((8191&(i=(i=i+Math.imul(C,gt)|0)+Math.imul(P,pt)|0))<<13)|0;c=((a=a+Math.imul(P,gt)|0)+(i>>>13)|0)+(Lt>>>26)|0,Lt&=67108863,r=Math.imul(j,lt),i=(i=Math.imul(j,ct))+Math.imul(F,lt)|0,a=Math.imul(F,ct),r=r+Math.imul(R,ft)|0,i=(i=i+Math.imul(R,ht)|0)+Math.imul(z,ft)|0,a=a+Math.imul(z,ht)|0;var Ot=(c+(r=r+Math.imul(O,pt)|0)|0)+((8191&(i=(i=i+Math.imul(O,gt)|0)+Math.imul(I,pt)|0))<<13)|0;c=((a=a+Math.imul(I,gt)|0)+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,r=Math.imul(j,ft),i=(i=Math.imul(j,ht))+Math.imul(F,ft)|0,a=Math.imul(F,ht);var It=(c+(r=r+Math.imul(R,pt)|0)|0)+((8191&(i=(i=i+Math.imul(R,gt)|0)+Math.imul(z,pt)|0))<<13)|0;c=((a=a+Math.imul(z,gt)|0)+(i>>>13)|0)+(It>>>26)|0,It&=67108863;var Dt=(c+(r=Math.imul(j,pt))|0)+((8191&(i=(i=Math.imul(j,gt))+Math.imul(F,pt)|0))<<13)|0;return c=((a=Math.imul(F,gt))+(i>>>13)|0)+(Dt>>>26)|0,Dt&=67108863,l[0]=vt,l[1]=mt,l[2]=yt,l[3]=bt,l[4]=xt,l[5]=wt,l[6]=_t,l[7]=kt,l[8]=Tt,l[9]=Mt,l[10]=At,l[11]=St,l[12]=Et,l[13]=Ct,l[14]=Pt,l[15]=Lt,l[16]=Ot,l[17]=It,l[18]=Dt,0!==c&&(l[19]=c,n.length++),n};function g(t,e,n){return(new v).mulp(t,e,n)}function v(t,e){this.x=t,this.y=e}Math.imul||(p=d),a.prototype.mulTo=function(t,e){var n,r=this.length+t.length;return n=10===this.length&&10===t.length?p(this,t,e):r<63?d(this,t,e):r<1024?function(t,e,n){n.negative=e.negative^t.negative,n.length=t.length+e.length;for(var r=0,i=0,a=0;a>>26)|0)>>>26,o&=67108863}n.words[a]=s,r=o,o=i}return 0!==r?n.words[a]=r:n.length--,n.strip()}(this,t,e):g(this,t,e),n},v.prototype.makeRBT=function(t){for(var e=new Array(t),n=a.prototype._countBits(t)-1,r=0;r>=1;return r},v.prototype.permute=function(t,e,n,r,i,a){for(var o=0;o>>=1)i++;return 1<>>=13,n[2*o+1]=8191&a,a>>>=13;for(o=2*e;o>=26,e+=i/67108864|0,e+=a>>>26,this.words[n]=67108863&a}return 0!==e&&(this.words[n]=e,this.length++),this},a.prototype.muln=function(t){return this.clone().imuln(t)},a.prototype.sqr=function(){return this.mul(this)},a.prototype.isqr=function(){return this.imul(this.clone())},a.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),n=0;n>>i}return e}(t);if(0===e.length)return new a(1);for(var n=this,r=0;r=0);var e,n=t%26,i=(t-n)/26,a=67108863>>>26-n<<26-n;if(0!==n){var o=0;for(e=0;e>>26-n}o&&(this.words[e]=o,this.length++)}if(0!==i){for(e=this.length-1;e>=0;e--)this.words[e+i]=this.words[e];for(e=0;e=0),i=e?(e-e%26)/26:0;var a=t%26,o=Math.min((t-a)/26,this.length),s=67108863^67108863>>>a<o)for(this.length-=o,c=0;c=0&&(0!==u||c>=i);c--){var f=0|this.words[c];this.words[c]=u<<26-a|f>>>a,u=f&s}return l&&0!==u&&(l.words[l.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},a.prototype.ishrn=function(t,e,n){return r(0===this.negative),this.iushrn(t,e,n)},a.prototype.shln=function(t){return this.clone().ishln(t)},a.prototype.ushln=function(t){return this.clone().iushln(t)},a.prototype.shrn=function(t){return this.clone().ishrn(t)},a.prototype.ushrn=function(t){return this.clone().iushrn(t)},a.prototype.testn=function(t){r("number"===typeof t&&t>=0);var e=t%26,n=(t-e)/26,i=1<=0);var e=t%26,n=(t-e)/26;if(r(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==e&&n++,this.length=Math.min(n,this.length),0!==e){var i=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},a.prototype.isubn=function(t){if(r("number"===typeof t),r(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(l/67108864|0),this.words[i+n]=67108863&a}for(;i>26,this.words[i+n]=67108863&a;if(0===s)return this.strip();for(r(-1===s),s=0,i=0;i>26,this.words[i]=67108863&a;return this.negative=1,this.strip()},a.prototype._wordDiv=function(t,e){var n=(this.length,t.length),r=this.clone(),i=t,o=0|i.words[i.length-1];0!==(n=26-this._countBits(o))&&(i=i.ushln(n),r.iushln(n),o=0|i.words[i.length-1]);var s,l=r.length-i.length;if("mod"!==e){(s=new a(null)).length=l+1,s.words=new Array(s.length);for(var c=0;c=0;f--){var h=67108864*(0|r.words[i.length+f])+(0|r.words[i.length+f-1]);for(h=Math.min(h/o|0,67108863),r._ishlnsubmul(i,h,f);0!==r.negative;)h--,r.negative=0,r._ishlnsubmul(i,1,f),r.isZero()||(r.negative^=1);s&&(s.words[f]=h)}return s&&s.strip(),r.strip(),"div"!==e&&0!==n&&r.iushrn(n),{div:s||null,mod:r}},a.prototype.divmod=function(t,e,n){return r(!t.isZero()),this.isZero()?{div:new a(0),mod:new a(0)}:0!==this.negative&&0===t.negative?(s=this.neg().divmod(t,e),"mod"!==e&&(i=s.div.neg()),"div"!==e&&(o=s.mod.neg(),n&&0!==o.negative&&o.iadd(t)),{div:i,mod:o}):0===this.negative&&0!==t.negative?(s=this.divmod(t.neg(),e),"mod"!==e&&(i=s.div.neg()),{div:i,mod:s.mod}):0!==(this.negative&t.negative)?(s=this.neg().divmod(t.neg(),e),"div"!==e&&(o=s.mod.neg(),n&&0!==o.negative&&o.isub(t)),{div:s.div,mod:o}):t.length>this.length||this.cmp(t)<0?{div:new a(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new a(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new a(this.modn(t.words[0]))}:this._wordDiv(t,e);var i,o,s},a.prototype.div=function(t){return this.divmod(t,"div",!1).div},a.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},a.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},a.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var n=0!==e.div.negative?e.mod.isub(t):e.mod,r=t.ushrn(1),i=t.andln(1),a=n.cmp(r);return a<0||1===i&&0===a?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},a.prototype.modn=function(t){r(t<=67108863);for(var e=(1<<26)%t,n=0,i=this.length-1;i>=0;i--)n=(e*n+(0|this.words[i]))%t;return n},a.prototype.idivn=function(t){r(t<=67108863);for(var e=0,n=this.length-1;n>=0;n--){var i=(0|this.words[n])+67108864*e;this.words[n]=i/t|0,e=i%t}return this.strip()},a.prototype.divn=function(t){return this.clone().idivn(t)},a.prototype.egcd=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i=new a(1),o=new a(0),s=new a(0),l=new a(1),c=0;e.isEven()&&n.isEven();)e.iushrn(1),n.iushrn(1),++c;for(var u=n.clone(),f=e.clone();!e.isZero();){for(var h=0,d=1;0===(e.words[0]&d)&&h<26;++h,d<<=1);if(h>0)for(e.iushrn(h);h-- >0;)(i.isOdd()||o.isOdd())&&(i.iadd(u),o.isub(f)),i.iushrn(1),o.iushrn(1);for(var p=0,g=1;0===(n.words[0]&g)&&p<26;++p,g<<=1);if(p>0)for(n.iushrn(p);p-- >0;)(s.isOdd()||l.isOdd())&&(s.iadd(u),l.isub(f)),s.iushrn(1),l.iushrn(1);e.cmp(n)>=0?(e.isub(n),i.isub(s),o.isub(l)):(n.isub(e),s.isub(i),l.isub(o))}return{a:s,b:l,gcd:n.iushln(c)}},a.prototype._invmp=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i,o=new a(1),s=new a(0),l=n.clone();e.cmpn(1)>0&&n.cmpn(1)>0;){for(var c=0,u=1;0===(e.words[0]&u)&&c<26;++c,u<<=1);if(c>0)for(e.iushrn(c);c-- >0;)o.isOdd()&&o.iadd(l),o.iushrn(1);for(var f=0,h=1;0===(n.words[0]&h)&&f<26;++f,h<<=1);if(f>0)for(n.iushrn(f);f-- >0;)s.isOdd()&&s.iadd(l),s.iushrn(1);e.cmp(n)>=0?(e.isub(n),o.isub(s)):(n.isub(e),s.isub(o))}return(i=0===e.cmpn(1)?o:s).cmpn(0)<0&&i.iadd(t),i},a.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),n=t.clone();e.negative=0,n.negative=0;for(var r=0;e.isEven()&&n.isEven();r++)e.iushrn(1),n.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;n.isEven();)n.iushrn(1);var i=e.cmp(n);if(i<0){var a=e;e=n,n=a}else if(0===i||0===n.cmpn(1))break;e.isub(n)}return n.iushln(r)},a.prototype.invm=function(t){return this.egcd(t).a.umod(t)},a.prototype.isEven=function(){return 0===(1&this.words[0])},a.prototype.isOdd=function(){return 1===(1&this.words[0])},a.prototype.andln=function(t){return this.words[0]&t},a.prototype.bincn=function(t){r("number"===typeof t);var e=t%26,n=(t-e)/26,i=1<>>26,s&=67108863,this.words[o]=s}return 0!==a&&(this.words[o]=a,this.length++),this},a.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},a.prototype.cmpn=function(t){var e,n=t<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)e=1;else{n&&(t=-t),r(t<=67108863,"Number is too big");var i=0|this.words[0];e=i===t?0:it.length)return 1;if(this.length=0;n--){var r=0|this.words[n],i=0|t.words[n];if(r!==i){ri&&(e=1);break}}return e},a.prototype.gtn=function(t){return 1===this.cmpn(t)},a.prototype.gt=function(t){return 1===this.cmp(t)},a.prototype.gten=function(t){return this.cmpn(t)>=0},a.prototype.gte=function(t){return this.cmp(t)>=0},a.prototype.ltn=function(t){return-1===this.cmpn(t)},a.prototype.lt=function(t){return-1===this.cmp(t)},a.prototype.lten=function(t){return this.cmpn(t)<=0},a.prototype.lte=function(t){return this.cmp(t)<=0},a.prototype.eqn=function(t){return 0===this.cmpn(t)},a.prototype.eq=function(t){return 0===this.cmp(t)},a.red=function(t){return new k(t)},a.prototype.toRed=function(t){return r(!this.red,"Already a number in reduction context"),r(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},a.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},a.prototype._forceRed=function(t){return this.red=t,this},a.prototype.forceRed=function(t){return r(!this.red,"Already a number in reduction context"),this._forceRed(t)},a.prototype.redAdd=function(t){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},a.prototype.redIAdd=function(t){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},a.prototype.redSub=function(t){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},a.prototype.redISub=function(t){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},a.prototype.redShl=function(t){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},a.prototype.redMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},a.prototype.redIMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},a.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},a.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},a.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},a.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},a.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},a.prototype.redPow=function(t){return r(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var m={k256:null,p224:null,p192:null,p25519:null};function y(t,e){this.name=t,this.p=new a(e,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function b(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function x(){y.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function w(){y.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function _(){y.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function k(t){if("string"===typeof t){var e=a._prime(t);this.m=e.p,this.prime=e}else r(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function T(t){k.call(this,t),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new a(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)}y.prototype._tmp=function(){var t=new a(null);return t.words=new Array(Math.ceil(this.n/13)),t},y.prototype.ireduce=function(t){var e,n=t;do{this.split(n,this.tmp),e=(n=(n=this.imulK(n)).iadd(this.tmp)).bitLength()}while(e>this.n);var r=e0?n.isub(this.p):void 0!==n.strip?n.strip():n._strip(),n},y.prototype.split=function(t,e){t.iushrn(this.n,0,e)},y.prototype.imulK=function(t){return t.imul(this.k)},i(b,y),b.prototype.split=function(t,e){for(var n=4194303,r=Math.min(t.length,9),i=0;i>>22,a=o}a>>>=22,t.words[i-10]=a,0===a&&t.length>10?t.length-=10:t.length-=9},b.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,n=0;n>>=26,t.words[n]=i,e=r}return 0!==e&&(t.words[t.length++]=e),t},a._prime=function(t){if(m[t])return m[t];var e;if("k256"===t)e=new b;else if("p224"===t)e=new x;else if("p192"===t)e=new w;else{if("p25519"!==t)throw new Error("Unknown prime "+t);e=new _}return m[t]=e,e},k.prototype._verify1=function(t){r(0===t.negative,"red works only with positives"),r(t.red,"red works only with red numbers")},k.prototype._verify2=function(t,e){r(0===(t.negative|e.negative),"red works only with positives"),r(t.red&&t.red===e.red,"red works only with red numbers")},k.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},k.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},k.prototype.add=function(t,e){this._verify2(t,e);var n=t.add(e);return n.cmp(this.m)>=0&&n.isub(this.m),n._forceRed(this)},k.prototype.iadd=function(t,e){this._verify2(t,e);var n=t.iadd(e);return n.cmp(this.m)>=0&&n.isub(this.m),n},k.prototype.sub=function(t,e){this._verify2(t,e);var n=t.sub(e);return n.cmpn(0)<0&&n.iadd(this.m),n._forceRed(this)},k.prototype.isub=function(t,e){this._verify2(t,e);var n=t.isub(e);return n.cmpn(0)<0&&n.iadd(this.m),n},k.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},k.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},k.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},k.prototype.isqr=function(t){return this.imul(t,t.clone())},k.prototype.sqr=function(t){return this.mul(t,t)},k.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(r(e%2===1),3===e){var n=this.m.add(new a(1)).iushrn(2);return this.pow(t,n)}for(var i=this.m.subn(1),o=0;!i.isZero()&&0===i.andln(1);)o++,i.iushrn(1);r(!i.isZero());var s=new a(1).toRed(this),l=s.redNeg(),c=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new a(2*u*u).toRed(this);0!==this.pow(u,c).cmp(l);)u.redIAdd(l);for(var f=this.pow(u,i),h=this.pow(t,i.addn(1).iushrn(1)),d=this.pow(t,i),p=o;0!==d.cmp(s);){for(var g=d,v=0;0!==g.cmp(s);v++)g=g.redSqr();r(v=0;r--){for(var c=e.words[r],u=l-1;u>=0;u--){var f=c>>u&1;i!==n[0]&&(i=this.sqr(i)),0!==f||0!==o?(o<<=1,o|=f,(4===++s||0===r&&0===u)&&(i=this.mul(i,n[o]),s=0,o=0)):s=0}l=26}return i},k.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},k.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},a.mont=function(t){return new T(t)},i(T,k),T.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},T.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},T.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var n=t.imul(e),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},T.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new a(0)._forceRed(this);var n=t.mul(e),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},T.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t=n.nmd(t),this)},2692:function(t){"use strict";t.exports=function(t){var e,n,r,i=t.length,a=0;for(e=0;e>>1;if(!(u<=0)){var f,h=i.mallocDouble(2*u*s),d=i.mallocInt32(s);if((s=l(t,u,h,d))>0){if(1===u&&r)a.init(s),f=a.sweepComplete(u,n,0,s,h,d,0,s,h,d);else{var p=i.mallocDouble(2*u*c),g=i.mallocInt32(c);(c=l(e,u,p,g))>0&&(a.init(s+c),f=1===u?a.sweepBipartite(u,n,0,s,h,d,0,c,p,g):o(u,n,r,s,h,d,c,p,g),i.free(p),i.free(g))}i.free(h),i.free(d)}return f}}}function u(t,e){r.push([t,e])}},7333:function(t,e){"use strict";function n(t){return t?function(t,e,n,r,i,a,o,s,l,c,u){return i-r>l-s?function(t,e,n,r,i,a,o,s,l,c,u){for(var f=2*t,h=r,d=f*r;hc-l?r?function(t,e,n,r,i,a,o,s,l,c,u){for(var f=2*t,h=r,d=f*r;h0;){var D=(O-=1)*x,R=_[D],z=_[D+1],N=_[D+2],j=_[D+3],F=_[D+4],B=_[D+5],U=O*w,H=k[U],V=k[U+1],q=1&B,G=!!(16&B),W=u,Y=S,$=C,X=P;if(q&&(W=C,Y=P,$=u,X=S),!(2&B&&z>=(N=v(t,R,z,N,W,Y,V)))&&!(4&B&&(z=m(t,R,z,N,W,Y,H))>=N)){var K=N-z,Z=F-j;if(G){if(t*K*(K+Z)=p0)&&!(p1>=hi)"),g=u("lo===p0"),v=u("lo>>1,h=2*t,d=f,p=s[h*f+e];c=b?(d=y,p=b):m>=w?(d=v,p=m):(d=x,p=w):b>=w?(d=y,p=b):w>=m?(d=v,p=m):(d=x,p=w);for(var _=h*(u-1),k=h*d,T=0;Tn&&i[f+e]>c;--u,f-=o){for(var h=f,d=f+o,p=0;ph;++h,l+=s)if(i[l+f]===o)if(u===h)u+=1,c+=s;else{for(var d=0;s>d;++d){var p=i[l+d];i[l+d]=i[c],i[c++]=p}var g=a[h];a[h]=a[u],a[u++]=g}return u},"loh;++h,l+=s)if(i[l+f]d;++d){var p=i[l+d];i[l+d]=i[c],i[c++]=p}var g=a[h];a[h]=a[u],a[u++]=g}return u},"lo<=p0":function(t,e,n,r,i,a,o){for(var s=2*t,l=s*n,c=l,u=n,f=t+e,h=n;r>h;++h,l+=s)if(i[l+f]<=o)if(u===h)u+=1,c+=s;else{for(var d=0;s>d;++d){var p=i[l+d];i[l+d]=i[c],i[c++]=p}var g=a[h];a[h]=a[u],a[u++]=g}return u},"hi<=p0":function(t,e,n,r,i,a,o){for(var s=2*t,l=s*n,c=l,u=n,f=t+e,h=n;r>h;++h,l+=s)if(i[l+f]<=o)if(u===h)u+=1,c+=s;else{for(var d=0;s>d;++d){var p=i[l+d];i[l+d]=i[c],i[c++]=p}var g=a[h];a[h]=a[u],a[u++]=g}return u},"lod;++d,l+=s){var p=i[l+f],g=i[l+h];if(pv;++v){var m=i[l+v];i[l+v]=i[c],i[c++]=m}var y=a[d];a[d]=a[u],a[u++]=y}}return u},"lo<=p0&&p0<=hi":function(t,e,n,r,i,a,o){for(var s=2*t,l=s*n,c=l,u=n,f=e,h=t+e,d=n;r>d;++d,l+=s){var p=i[l+f],g=i[l+h];if(p<=o&&o<=g)if(u===d)u+=1,c+=s;else{for(var v=0;s>v;++v){var m=i[l+v];i[l+v]=i[c],i[c++]=m}var y=a[d];a[d]=a[u],a[u++]=y}}return u},"!(lo>=p0)&&!(p1>=hi)":function(t,e,n,r,i,a,o,s){for(var l=2*t,c=l*n,u=c,f=n,h=e,d=t+e,p=n;r>p;++p,c+=l){var g=i[c+h],v=i[c+d];if(!(g>=o)&&!(s>=v))if(f===p)f+=1,u+=l;else{for(var m=0;l>m;++m){var y=i[c+m];i[c+m]=i[u],i[u++]=y}var b=a[p];a[p]=a[f],a[f++]=b}}return f}}},309:function(t){"use strict";t.exports=function(t,r){r<=4*e?n(0,r-1,t):c(0,r-1,t)};var e=32;function n(t,e,n){for(var r=2*(t+1),i=t+1;i<=e;++i){for(var a=n[r++],o=n[r++],s=i,l=r-2;s-- >t;){var c=n[l-2],u=n[l-1];if(cn[e+1])}function l(t,e,n,r){var i=r[t*=2];return i>1,v=g-h,m=g+h,y=d,b=v,x=g,w=m,_=p,k=t+1,T=u-1,M=0;s(y,b,f)&&(M=y,y=b,b=M),s(w,_,f)&&(M=w,w=_,_=M),s(y,x,f)&&(M=y,y=x,x=M),s(b,x,f)&&(M=b,b=x,x=M),s(y,w,f)&&(M=y,y=w,w=M),s(x,w,f)&&(M=x,x=w,w=M),s(b,_,f)&&(M=b,b=_,_=M),s(b,x,f)&&(M=b,b=x,x=M),s(w,_,f)&&(M=w,w=_,_=M);for(var A=f[2*b],S=f[2*b+1],E=f[2*w],C=f[2*w+1],P=2*y,L=2*x,O=2*_,I=2*d,D=2*g,R=2*p,z=0;z<2;++z){var N=f[P+z],j=f[L+z],F=f[O+z];f[I+z]=N,f[D+z]=j,f[R+z]=F}i(v,t,f),i(m,u,f);for(var B=k;B<=T;++B)if(l(B,A,S,f))B!==k&&r(B,k,f),++k;else if(!l(B,E,C,f))for(;;){if(l(T,E,C,f)){l(T,A,S,f)?(a(B,k,T,f),++k,--T):(r(B,T,f),--T);break}if(--T>>1;a(p,S);var E=0,C=0;for(k=0;k=o)g(u,f,C--,P=P-o|0);else if(P>=0)g(l,c,E--,P);else if(P<=-o){P=-P-o|0;for(var L=0;L>>1;a(p,E);var C=0,P=0,L=0;for(T=0;T>1===p[2*T+3]>>1&&(I=2,T+=1),O<0){for(var D=-(O>>1)-1,R=0;R>1)-1,0===I?g(l,c,C--,D):1===I?g(u,f,P--,D):2===I&&g(h,d,L--,D)}},scanBipartite:function(t,e,n,r,i,s,u,f,h,d,m,y){var b=0,x=2*t,w=e,_=e+t,k=1,T=1;r?T=o:k=o;for(var M=i;M>>1;a(p,C);var P=0;for(M=0;M=o?(O=!r,A-=o):(O=!!r,A-=1),O)v(l,c,P++,A);else{var I=y[A],D=x*A,R=m[D+e+1],z=m[D+e+1+t];t:for(var N=0;N>>1;a(p,k);var T=0;for(b=0;b=o)l[T++]=x-o;else{var A=d[x-=1],S=v*x,E=h[S+e+1],C=h[S+e+1+t];t:for(var P=0;P=0;--P)if(l[P]===x){for(D=P+1;D0;){for(var d=n.pop(),p=(u=-1,f=-1,l=o[s=n.pop()],1);p=0||(e.flip(s,d),i(t,e,n,u,s,f),i(t,e,n,s,f,u),i(t,e,n,f,d,u),i(t,e,n,d,u,f))}}},7098:function(t,e,n){"use strict";var r=n(5070);function i(t,e,n,r,i,a,o){this.cells=t,this.neighbor=e,this.flags=r,this.constraint=n,this.active=i,this.next=a,this.boundary=o}function a(t,e){return t[0]-e[0]||t[1]-e[1]||t[2]-e[2]}t.exports=function(t,e,n){var r=function(t,e){for(var n=t.cells(),r=n.length,o=0;o0||l.length>0;){for(;s.length>0;){var d=s.pop();if(c[d]!==-o){c[d]=o,u[d];for(var p=0;p<3;++p){var g=h[3*d+p];g>=0&&0===c[g]&&(f[3*d+p]?l.push(g):(s.push(g),c[g]=o))}}}var v=l;l=s,s=v,l.length=0,o=-o}var m=function(t,e,n){for(var r=0,i=0;i1&&i(n[h[d-2]],n[h[d-1]],a)>0;)t.push([h[d-1],h[d-2],o]),d-=1;h.length=d,h.push(o);var p=u.upperIds;for(d=p.length;d>1&&i(n[p[d-2]],n[p[d-1]],a)<0;)t.push([p[d-2],p[d-1],o]),d-=1;p.length=d,p.push(o)}}function d(t,e){var n;return(n=t.a[0]m[0]&&i.push(new c(m,v,s,f),new c(v,m,o,f))}i.sort(u);for(var y=i[0].a[0]-(1+Math.abs(i[0].a[0]))*Math.pow(2,-52),b=[new l([y,1],[y,0],-1,[],[],[],[])],x=[],w=(f=0,i.length);f=0}}(),a.removeTriangle=function(t,e,n){var r=this.stars;o(r[t],e,n),o(r[e],n,t),o(r[n],t,e)},a.addTriangle=function(t,e,n){var r=this.stars;r[t].push(e,n),r[e].push(n,t),r[n].push(t,e)},a.opposite=function(t,e){for(var n=this.stars[e],r=1,i=n.length;re[2]?1:0)}function m(t,e,n){if(0!==t.length){if(e)for(var r=0;r=0;--a){var b=e[u=(S=r[a])[0]],x=b[0],w=b[1],_=t[x],k=t[w];if((_[0]-k[0]||_[1]-k[1])<0){var T=x;x=w,w=T}b[0]=x;var M,A=b[1]=S[1];for(i&&(M=b[2]);a>0&&r[a-1][0]===u;){var S,E=(S=r[--a])[1];i?e.push([A,E,M]):e.push([A,E]),A=E}i?e.push([A,w,M]):e.push([A,w])}return h}(t,e,h,v,n),b=p(t,y);return m(e,b,n),!!b||h.length>0||v.length>0}},5528:function(t,e,n){"use strict";t.exports=function(t,e,n,r){var a=s(e,t),f=s(r,n),h=u(a,f);if(0===o(h))return null;var d=s(t,n),p=u(f,d),g=i(p,h),v=c(a,g);return l(t,v)};var r=n(3962),i=n(9189),a=n(4354),o=n(4951),s=n(6695),l=n(7584),c=n(4469);function u(t,e){return a(r(t[0],e[1]),r(t[1],e[0]))}},5692:function(t){t.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(t,e,n){"use strict";var r=n(5692),i=n(3578);function a(t){return[t[0]/255,t[1]/255,t[2]/255,t[3]]}function o(t){for(var e,n="#",r=0;r<3;++r)n+=("00"+(e=(e=t[r]).toString(16))).substr(e.length);return n}function s(t){return"rgba("+t.join(",")+")"}t.exports=function(t){var e,n,l,c,u,f,h,d,p,g;if(t||(t={}),d=(t.nshades||72)-1,h=t.format||"hex",(f=t.colormap)||(f="jet"),"string"===typeof f){if(f=f.toLowerCase(),!r[f])throw Error(f+" not a supported colorscale");u=r[f]}else{if(!Array.isArray(f))throw Error("unsupported colormap option",f);u=f.slice()}if(u.length>d+1)throw new Error(f+" map requires nshades to be at least size "+u.length);p=Array.isArray(t.alpha)?2!==t.alpha.length?[1,1]:t.alpha.slice():"number"===typeof t.alpha?[t.alpha,t.alpha]:[1,1],e=u.map((function(t){return Math.round(t.index*d)})),p[0]=Math.min(Math.max(p[0],0),1),p[1]=Math.min(Math.max(p[1],0),1);var v=u.map((function(t,e){var n=u[e].index,r=u[e].rgb.slice();return 4===r.length&&r[3]>=0&&r[3]<=1||(r[3]=p[0]+(p[1]-p[0])*n),r})),m=[];for(g=0;g0||l(t,e,a)?-1:1:0===s?c>0||l(t,e,n)?1:-1:i(c-s)}var f=r(t,e,n);return f>0?o>0&&r(t,e,a)>0?1:-1:f<0?o>0||r(t,e,a)>0?1:-1:r(t,e,a)>0||l(t,e,n)?1:-1};var r=n(417),i=n(7538),a=n(87),o=n(2019),s=n(9662);function l(t,e,n){var r=a(t[0],-e[0]),i=a(t[1],-e[1]),l=a(n[0],-e[0]),c=a(n[1],-e[1]),u=s(o(r,l),o(i,c));return u[u.length-1]>=0}},7538:function(t){"use strict";t.exports=function(t){return t<0?-1:t>0?1:0}},9209:function(t){t.exports=function(t,r){var i=t.length,a=t.length-r.length;if(a)return a;switch(i){case 0:return 0;case 1:return t[0]-r[0];case 2:return t[0]+t[1]-r[0]-r[1]||e(t[0],t[1])-e(r[0],r[1]);case 3:var o=t[0]+t[1],s=r[0]+r[1];if(a=o+t[2]-(s+r[2]))return a;var l=e(t[0],t[1]),c=e(r[0],r[1]);return e(l,t[2])-e(c,r[2])||e(l+t[2],o)-e(c+r[2],s);case 4:var u=t[0],f=t[1],h=t[2],d=t[3],p=r[0],g=r[1],v=r[2],m=r[3];return u+f+h+d-(p+g+v+m)||e(u,f,h,d)-e(p,g,v,m,p)||e(u+f,u+h,u+d,f+h,f+d,h+d)-e(p+g,p+v,p+m,g+v,g+m,v+m)||e(u+f+h,u+f+d,u+h+d,f+h+d)-e(p+g+v,p+g+m,p+v+m,g+v+m);default:for(var y=t.slice().sort(n),b=r.slice().sort(n),x=0;xt[n][0]&&(n=r);return en?[[n],[e]]:[[e]]}},8722:function(t,e,n){"use strict";t.exports=function(t){var e=r(t),n=e.length;if(n<=2)return[];for(var i=new Array(n),a=e[n-1],o=0;o=e[l]&&(s+=1);a[o]=s}}return t}(r(a,!0),n)}};var r=n(2183),i=n(2153)},9680:function(t){"use strict";t.exports=function(t,e,n,r,i,a){var o=i-1,s=i*i,l=o*o,c=(1+2*i)*l,u=i*l,f=s*(3-2*i),h=s*o;if(t.length){a||(a=new Array(t.length));for(var d=t.length-1;d>=0;--d)a[d]=c*t[d]+u*e[d]+f*n[d]+h*r[d];return a}return c*t+u*e+f*n+h*r},t.exports.derivative=function(t,e,n,r,i,a){var o=6*i*i-6*i,s=3*i*i-4*i+1,l=-6*i*i+6*i,c=3*i*i-2*i;if(t.length){a||(a=new Array(t.length));for(var u=t.length-1;u>=0;--u)a[u]=o*t[u]+s*e[u]+l*n[u]+c*r[u];return a}return o*t+s*e+l*n[u]+c*r}},4419:function(t,e,n){"use strict";var r=n(2183),i=n(1215);function a(t,e){this.point=t,this.index=e}function o(t,e){for(var n=t.point,r=e.point,i=n.length,a=0;a=2)return!1;t[n]=r}return!0})):w.filter((function(t){for(var e=0;e<=s;++e){var n=m[t[e]];if(n<0)return!1;t[e]=n}return!0})),1&s)for(u=0;u>>31},t.exports.exponent=function(e){return(t.exports.hi(e)<<1>>>21)-1023},t.exports.fraction=function(e){var n=t.exports.lo(e),r=t.exports.hi(e),i=1048575&r;return 2146435072&r&&(i+=1<<20),[n,i]},t.exports.denormalized=function(e){return!(2146435072&t.exports.hi(e))}},3094:function(t){"use strict";function e(t,n,r){var i=0|t[r];if(i<=0)return[];var a,o=new Array(i);if(r===t.length-1)for(a=0;a0)return function(t,e){var n,r;for(n=new Array(t),r=0;r=n-1){h=l.length-1;var p=t-e[n-1];for(d=0;d=n-1)for(var u=s.length-1,f=(e[n-1],0);f=0;--n)if(t[--e])return!1;return!0},s.jump=function(t){var e=this.lastT(),n=this.dimension;if(!(t0;--f)r.push(a(l[f-1],c[f-1],arguments[f])),i.push(0)}},s.push=function(t){var e=this.lastT(),n=this.dimension;if(!(t1e-6?1/s:0;this._time.push(t);for(var h=n;h>0;--h){var d=a(c[h-1],u[h-1],arguments[h]);r.push(d),i.push((d-r[o++])*f)}}},s.set=function(t){var e=this.dimension;if(!(t0;--l)n.push(a(o[l-1],s[l-1],arguments[l])),r.push(0)}},s.move=function(t){var e=this.lastT(),n=this.dimension;if(!(t<=e||arguments.length!==n+1)){var r=this._state,i=this._velocity,o=r.length-this.dimension,s=this.bounds,l=s[0],c=s[1],u=t-e,f=u>1e-6?1/u:0;this._time.push(t);for(var h=n;h>0;--h){var d=arguments[h];r.push(a(l[h-1],c[h-1],r[o++]+d)),i.push(d*f)}}},s.idle=function(t){var e=this.lastT();if(!(t=0;--f)r.push(a(l[f],c[f],r[o]+u*i[o])),i.push(0),o+=1}}},7080:function(t){"use strict";t.exports=function(t){return new s(t||g,null)};var e=0,n=1;function r(t,e,n,r,i,a){this._color=t,this.key=e,this.value=n,this.left=r,this.right=i,this._count=a}function i(t){return new r(t._color,t.key,t.value,t.left,t.right,t._count)}function a(t,e){return new r(t,e.key,e.value,e.left,e.right,e._count)}function o(t){t._count=1+(t.left?t.left._count:0)+(t.right?t.right._count:0)}function s(t,e){this._compare=t,this.root=e}var l=s.prototype;function c(t,e){var n;return e.left&&(n=c(t,e.left))?n:(n=t(e.key,e.value))||(e.right?c(t,e.right):void 0)}function u(t,e,n,r){if(e(t,r.key)<=0){var i;if(r.left&&(i=u(t,e,n,r.left)))return i;if(i=n(r.key,r.value))return i}if(r.right)return u(t,e,n,r.right)}function f(t,e,n,r,i){var a,o=n(t,i.key),s=n(e,i.key);if(o<=0){if(i.left&&(a=f(t,e,n,r,i.left)))return a;if(s>0&&(a=r(i.key,i.value)))return a}if(s>0&&i.right)return f(t,e,n,r,i.right)}function h(t,e){this.tree=t,this._stack=e}Object.defineProperty(l,"keys",{get:function(){var t=[];return this.forEach((function(e,n){t.push(e)})),t}}),Object.defineProperty(l,"values",{get:function(){var t=[];return this.forEach((function(e,n){t.push(n)})),t}}),Object.defineProperty(l,"length",{get:function(){return this.root?this.root._count:0}}),l.insert=function(t,i){for(var l=this._compare,c=this.root,u=[],f=[];c;){var h=l(t,c.key);u.push(c),f.push(h),c=h<=0?c.left:c.right}u.push(new r(e,t,i,null,null,1));for(var d=u.length-2;d>=0;--d)c=u[d],f[d]<=0?u[d]=new r(c._color,c.key,c.value,u[d+1],c.right,c._count+1):u[d]=new r(c._color,c.key,c.value,c.left,u[d+1],c._count+1);for(d=u.length-1;d>1;--d){var p=u[d-1];if(c=u[d],p._color===n||c._color===n)break;var g=u[d-2];if(g.left===p)if(p.left===c){if(!(v=g.right)||v._color!==e){g._color=e,g.left=p.right,p._color=n,p.right=g,u[d-2]=p,u[d-1]=c,o(g),o(p),d>=3&&((m=u[d-3]).left===g?m.left=p:m.right=p);break}p._color=n,g.right=a(n,v),g._color=e,d-=1}else{if(!(v=g.right)||v._color!==e){p.right=c.left,g._color=e,g.left=c.right,c._color=n,c.left=p,c.right=g,u[d-2]=c,u[d-1]=p,o(g),o(p),o(c),d>=3&&((m=u[d-3]).left===g?m.left=c:m.right=c);break}p._color=n,g.right=a(n,v),g._color=e,d-=1}else if(p.right===c){if(!(v=g.left)||v._color!==e){g._color=e,g.right=p.left,p._color=n,p.left=g,u[d-2]=p,u[d-1]=c,o(g),o(p),d>=3&&((m=u[d-3]).right===g?m.right=p:m.left=p);break}p._color=n,g.left=a(n,v),g._color=e,d-=1}else{var v;if(!(v=g.left)||v._color!==e){var m;p.left=c.right,g._color=e,g.right=c.left,c._color=n,c.right=p,c.left=g,u[d-2]=c,u[d-1]=p,o(g),o(p),o(c),d>=3&&((m=u[d-3]).right===g?m.right=c:m.left=c);break}p._color=n,g.left=a(n,v),g._color=e,d-=1}}return u[0]._color=n,new s(l,u[0])},l.forEach=function(t,e,n){if(this.root)switch(arguments.length){case 1:return c(t,this.root);case 2:return u(e,this._compare,t,this.root);case 3:if(this._compare(e,n)>=0)return;return f(e,n,this._compare,t,this.root)}},Object.defineProperty(l,"begin",{get:function(){for(var t=[],e=this.root;e;)t.push(e),e=e.left;return new h(this,t)}}),Object.defineProperty(l,"end",{get:function(){for(var t=[],e=this.root;e;)t.push(e),e=e.right;return new h(this,t)}}),l.at=function(t){if(t<0)return new h(this,[]);for(var e=this.root,n=[];;){if(n.push(e),e.left){if(t=e.right._count)break;e=e.right}return new h(this,[])},l.ge=function(t){for(var e=this._compare,n=this.root,r=[],i=0;n;){var a=e(t,n.key);r.push(n),a<=0&&(i=r.length),n=a<=0?n.left:n.right}return r.length=i,new h(this,r)},l.gt=function(t){for(var e=this._compare,n=this.root,r=[],i=0;n;){var a=e(t,n.key);r.push(n),a<0&&(i=r.length),n=a<0?n.left:n.right}return r.length=i,new h(this,r)},l.lt=function(t){for(var e=this._compare,n=this.root,r=[],i=0;n;){var a=e(t,n.key);r.push(n),a>0&&(i=r.length),n=a<=0?n.left:n.right}return r.length=i,new h(this,r)},l.le=function(t){for(var e=this._compare,n=this.root,r=[],i=0;n;){var a=e(t,n.key);r.push(n),a>=0&&(i=r.length),n=a<0?n.left:n.right}return r.length=i,new h(this,r)},l.find=function(t){for(var e=this._compare,n=this.root,r=[];n;){var i=e(t,n.key);if(r.push(n),0===i)return new h(this,r);n=i<=0?n.left:n.right}return new h(this,[])},l.remove=function(t){var e=this.find(t);return e?e.remove():this},l.get=function(t){for(var e=this._compare,n=this.root;n;){var r=e(t,n.key);if(0===r)return n.value;n=r<=0?n.left:n.right}};var d=h.prototype;function p(t,e){t.key=e.key,t.value=e.value,t.left=e.left,t.right=e.right,t._color=e._color,t._count=e._count}function g(t,e){return te?1:0}Object.defineProperty(d,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(d,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),d.clone=function(){return new h(this.tree,this._stack.slice())},d.remove=function(){var t=this._stack;if(0===t.length)return this.tree;var l=new Array(t.length),c=t[t.length-1];l[l.length-1]=new r(c._color,c.key,c.value,c.left,c.right,c._count);for(var u=t.length-2;u>=0;--u)(c=t[u]).left===t[u+1]?l[u]=new r(c._color,c.key,c.value,l[u+1],c.right,c._count):l[u]=new r(c._color,c.key,c.value,c.left,l[u+1],c._count);if((c=l[l.length-1]).left&&c.right){var f=l.length;for(c=c.left;c.right;)l.push(c),c=c.right;var h=l[f-1];for(l.push(new r(c._color,h.key,h.value,c.left,c.right,c._count)),l[f-1].key=c.key,l[f-1].value=c.value,u=l.length-2;u>=f;--u)c=l[u],l[u]=new r(c._color,c.key,c.value,c.left,l[u+1],c._count);l[f-1].left=l[f]}if((c=l[l.length-1])._color===e){var d=l[l.length-2];for(d.left===c?d.left=null:d.right===c&&(d.right=null),l.pop(),u=0;u=0;--u){if(r=t[u],0===u)return void(r._color=n);if((s=t[u-1]).left===r){if((l=s.right).right&&l.right._color===e)return c=(l=s.right=i(l)).right=i(l.right),s.right=l.left,l.left=s,l.right=c,l._color=s._color,r._color=n,s._color=n,c._color=n,o(s),o(l),u>1&&((f=t[u-2]).left===s?f.left=l:f.right=l),void(t[u-1]=l);if(l.left&&l.left._color===e)return c=(l=s.right=i(l)).left=i(l.left),s.right=c.left,l.left=c.right,c.left=s,c.right=l,c._color=s._color,s._color=n,l._color=n,r._color=n,o(s),o(l),o(c),u>1&&((f=t[u-2]).left===s?f.left=c:f.right=c),void(t[u-1]=c);if(l._color===n){if(s._color===e)return s._color=n,void(s.right=a(e,l));s.right=a(e,l);continue}l=i(l),s.right=l.left,l.left=s,l._color=s._color,s._color=e,o(s),o(l),u>1&&((f=t[u-2]).left===s?f.left=l:f.right=l),t[u-1]=l,t[u]=s,u+11&&((f=t[u-2]).right===s?f.right=l:f.left=l),void(t[u-1]=l);if(l.right&&l.right._color===e)return c=(l=s.left=i(l)).right=i(l.right),s.left=c.right,l.right=c.left,c.right=s,c.left=l,c._color=s._color,s._color=n,l._color=n,r._color=n,o(s),o(l),o(c),u>1&&((f=t[u-2]).right===s?f.right=c:f.left=c),void(t[u-1]=c);if(l._color===n){if(s._color===e)return s._color=n,void(s.left=a(e,l));s.left=a(e,l);continue}var f;l=i(l),s.left=l.right,l.right=s,l._color=s._color,s._color=e,o(s),o(l),u>1&&((f=t[u-2]).right===s?f.right=l:f.left=l),t[u-1]=l,t[u]=s,u+10)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(d,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(d,"index",{get:function(){var t=0,e=this._stack;if(0===e.length){var n=this.tree.root;return n?n._count:0}e[e.length-1].left&&(t=e[e.length-1].left._count);for(var r=e.length-2;r>=0;--r)e[r+1]===e[r].right&&(++t,e[r].left&&(t+=e[r].left._count));return t},enumerable:!0}),d.next=function(){var t=this._stack;if(0!==t.length){var e=t[t.length-1];if(e.right)for(e=e.right;e;)t.push(e),e=e.left;else for(t.pop();t.length>0&&t[t.length-1].right===e;)e=t[t.length-1],t.pop()}},Object.defineProperty(d,"hasNext",{get:function(){var t=this._stack;if(0===t.length)return!1;if(t[t.length-1].right)return!0;for(var e=t.length-1;e>0;--e)if(t[e-1].left===t[e])return!0;return!1}}),d.update=function(t){var e=this._stack;if(0===e.length)throw new Error("Can't update empty node!");var n=new Array(e.length),i=e[e.length-1];n[n.length-1]=new r(i._color,i.key,t,i.left,i.right,i._count);for(var a=e.length-2;a>=0;--a)(i=e[a]).left===e[a+1]?n[a]=new r(i._color,i.key,i.value,n[a+1],i.right,i._count):n[a]=new r(i._color,i.key,i.value,i.left,n[a+1],i._count);return new s(this.tree._compare,n[0])},d.prev=function(){var t=this._stack;if(0!==t.length){var e=t[t.length-1];if(e.left)for(e=e.left;e;)t.push(e),e=e.right;else for(t.pop();t.length>0&&t[t.length-1].left===e;)e=t[t.length-1],t.pop()}},Object.defineProperty(d,"hasPrev",{get:function(){var t=this._stack;if(0===t.length)return!1;if(t[t.length-1].left)return!0;for(var e=t.length-1;e>0;--e)if(t[e-1].right===t[e])return!0;return!1}})},7453:function(t,e,n){"use strict";t.exports=function(t,e){var n=new u(t);return n.update(e),n};var r=n(9557),i=n(1681),a=n(1011),o=n(2864),s=n(8468),l=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]);function c(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function u(t){this.gl=t,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.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=a(t)}var f=u.prototype;function h(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}f.update=function(t){function e(e,n,r){if(r in t){var i,a=t[r],o=this[r];(e?Array.isArray(a)&&Array.isArray(a[0]):Array.isArray(a))?this[r]=i=[n(a[0]),n(a[1]),n(a[2])]:this[r]=i=[n(a),n(a),n(a)];for(var s=0;s<3;++s)if(i[s]!==o[s])return!0}return!1}t=t||{};var n,a=e.bind(this,!1,Number),o=e.bind(this,!1,Boolean),l=e.bind(this,!1,String),c=e.bind(this,!0,(function(t){if(Array.isArray(t)){if(3===t.length)return[+t[0],+t[1],+t[2],1];if(4===t.length)return[+t[0],+t[1],+t[2],+t[3]]}return[0,0,0,1]})),u=!1,f=!1;if("bounds"in t)for(var h=t.bounds,d=0;d<2;++d)for(var p=0;p<3;++p)h[d][p]!==this.bounds[d][p]&&(f=!0),this.bounds[d][p]=h[d][p];if("ticks"in t)for(n=t.ticks,u=!0,this.autoTicks=!1,d=0;d<3;++d)this.tickSpacing[d]=0;else a("tickSpacing")&&(this.autoTicks=!0,f=!0);if(this._firstInit&&("ticks"in t||"tickSpacing"in t||(this.autoTicks=!0),f=!0,u=!0,this._firstInit=!1),f&&this.autoTicks&&(n=s.create(this.bounds,this.tickSpacing),u=!0),u){for(d=0;d<3;++d)n[d].sort((function(t,e){return t.x-e.x}));s.equal(n,this.ticks)?u=!1:this.ticks=n}o("tickEnable"),l("tickFont")&&(u=!0),a("tickSize"),a("tickAngle"),a("tickPad"),c("tickColor");var g=l("labels");l("labelFont")&&(g=!0),o("labelEnable"),a("labelSize"),a("labelPad"),c("labelColor"),o("lineEnable"),o("lineMirror"),a("lineWidth"),c("lineColor"),o("lineTickEnable"),o("lineTickMirror"),a("lineTickLength"),a("lineTickWidth"),c("lineTickColor"),o("gridEnable"),a("gridWidth"),c("gridColor"),o("zeroEnable"),c("zeroLineColor"),a("zeroLineWidth"),o("backgroundEnable"),c("backgroundColor"),this._text?this._text&&(g||u)&&this._text.update(this.bounds,this.labels,this.labelFont,this.ticks,this.tickFont):this._text=r(this.gl,this.bounds,this.labels,this.labelFont,this.ticks,this.tickFont),this._lines&&u&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=i(this.gl,this.bounds,this.ticks))};var d=[new h,new h,new h];function p(t,e,n,r,i){for(var a=t.primalOffset,o=t.primalMinor,s=t.mirrorOffset,l=t.mirrorMinor,c=r[e],u=0;u<3;++u)if(e!==u){var f=a,h=s,d=o,p=l;c&1<0?(d[u]=-1,p[u]=0):(d[u]=0,p[u]=1)}}var g=[0,0,0],v={model:l,view:l,projection:l,_ortho:!1};f.isOpaque=function(){return!0},f.isTransparent=function(){return!1},f.drawTransparent=function(t){};var m=[0,0,0],y=[0,0,0],b=[0,0,0];f.draw=function(t){t=t||v;for(var e=this.gl,n=t.model||l,r=t.view||l,i=t.projection||l,a=this.bounds,s=t._ortho||!1,u=o(n,r,i,a,s),f=u.cubeEdges,h=u.axis,x=r[12],w=r[13],_=r[14],k=r[15],T=(s?2:1)*this.pixelRatio*(i[3]*x+i[7]*w+i[11]*_+i[15]*k)/e.drawingBufferHeight,M=0;M<3;++M)this.lastCubeProps.cubeEdges[M]=f[M],this.lastCubeProps.axis[M]=h[M];var A=d;for(M=0;M<3;++M)p(d[M],M,this.bounds,f,h);e=this.gl;var S,E,C,P=g;for(M=0;M<3;++M)this.backgroundEnable[M]?P[M]=h[M]:P[M]=0;for(this._background.draw(n,r,i,a,P,this.backgroundColor),this._lines.bind(n,r,i,this),M=0;M<3;++M){var L=[0,0,0];h[M]>0?L[M]=a[1][M]:L[M]=a[0][M];for(var O=0;O<2;++O){var I=(M+1+O)%3,D=(M+1+(1^O))%3;this.gridEnable[I]&&this._lines.drawGrid(I,D,this.bounds,L,this.gridColor[I],this.gridWidth[I]*this.pixelRatio)}for(O=0;O<2;++O)I=(M+1+O)%3,D=(M+1+(1^O))%3,this.zeroEnable[D]&&Math.min(a[0][D],a[1][D])<=0&&Math.max(a[0][D],a[1][D])>=0&&this._lines.drawZero(I,D,this.bounds,L,this.zeroLineColor[D],this.zeroLineWidth[D]*this.pixelRatio)}for(M=0;M<3;++M){this.lineEnable[M]&&this._lines.drawAxisLine(M,this.bounds,A[M].primalOffset,this.lineColor[M],this.lineWidth[M]*this.pixelRatio),this.lineMirror[M]&&this._lines.drawAxisLine(M,this.bounds,A[M].mirrorOffset,this.lineColor[M],this.lineWidth[M]*this.pixelRatio);var R=c(m,A[M].primalMinor),z=c(y,A[M].mirrorMinor),N=this.lineTickLength;for(O=0;O<3;++O){var j=T/n[5*O];R[O]*=N[O]*j,z[O]*=N[O]*j}this.lineTickEnable[M]&&this._lines.drawAxisTicks(M,A[M].primalOffset,R,this.lineTickColor[M],this.lineTickWidth[M]*this.pixelRatio),this.lineTickMirror[M]&&this._lines.drawAxisTicks(M,A[M].mirrorOffset,z,this.lineTickColor[M],this.lineTickWidth[M]*this.pixelRatio)}function F(t){(C=[0,0,0])[t]=1}function B(t,e,n){var r=(t+1)%3,i=(t+2)%3,a=e[r],o=e[i],s=n[r],l=n[i];a>0&&l>0||a>0&&l<0||a<0&&l>0||a<0&&l<0?F(r):(o>0&&s>0||o>0&&s<0||o<0&&s>0||o<0&&s<0)&&F(i)}for(this._lines.unbind(),this._text.bind(n,r,i,this.pixelRatio),M=0;M<3;++M){var U=A[M].primalMinor,H=A[M].mirrorMinor,V=c(b,A[M].primalOffset);for(O=0;O<3;++O)this.lineTickEnable[M]&&(V[O]+=T*U[O]*Math.max(this.lineTickLength[O],0)/n[5*O]);var q=[0,0,0];if(q[M]=1,this.tickEnable[M]){for(-3600===this.tickAngle[M]?(this.tickAngle[M]=0,this.tickAlign[M]="auto"):this.tickAlign[M]=-1,E=1,"auto"===(S=[this.tickAlign[M],.5,E])[0]?S[0]=0:S[0]=parseInt(""+S[0]),C=[0,0,0],B(M,U,H),O=0;O<3;++O)V[O]+=T*U[O]*this.tickPad[O]/n[5*O];this._text.drawTicks(M,this.tickSize[M],this.tickAngle[M],V,this.tickColor[M],q,C,S)}if(this.labelEnable[M]){for(E=0,C=[0,0,0],this.labels[M].length>4&&(F(M),E=1),"auto"===(S=[this.labelAlign[M],.5,E])[0]?S[0]=0:S[0]=parseInt(""+S[0]),O=0;O<3;++O)V[O]+=T*U[O]*this.labelPad[O]/n[5*O];V[M]+=.5*(a[0][M]+a[1][M]),this._text.drawLabel(M,this.labelSize[M],this.labelAngle[M],V,this.labelColor[M],[0,0,0],C,S)}}this._text.unbind()},f.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(t,e,n){"use strict";t.exports=function(t){for(var e=[],n=[],s=0,l=0;l<3;++l)for(var c=(l+1)%3,u=(l+2)%3,f=[0,0,0],h=[0,0,0],d=-1;d<=1;d+=2){n.push(s,s+2,s+1,s+1,s+2,s+3),f[l]=d,h[l]=d;for(var p=-1;p<=1;p+=2){f[c]=p;for(var g=-1;g<=1;g+=2)f[u]=g,e.push(f[0],f[1],f[2],h[0],h[1],h[2]),s+=1}var v=c;c=u,u=v}var m=r(t,new Float32Array(e)),y=r(t,new Uint16Array(n),t.ELEMENT_ARRAY_BUFFER),b=i(t,[{buffer:m,type:t.FLOAT,size:3,offset:0,stride:24},{buffer:m,type:t.FLOAT,size:3,offset:12,stride:24}],y),x=a(t);return x.attributes.position.location=0,x.attributes.normal.location=1,new o(t,m,b,x)};var r=n(5827),i=n(2944),a=n(1943).bg;function o(t,e,n,r){this.gl=t,this.buffer=e,this.vao=n,this.shader=r}var s=o.prototype;s.draw=function(t,e,n,r,i,a){for(var o=!1,s=0;s<3;++s)o=o||i[s];if(o){var l=this.gl;l.enable(l.POLYGON_OFFSET_FILL),l.polygonOffset(1,2),this.shader.bind(),this.shader.uniforms={model:t,view:e,projection:n,bounds:r,enable:i,colors:a},this.vao.bind(),this.vao.draw(this.gl.TRIANGLES,36),this.vao.unbind(),l.disable(l.POLYGON_OFFSET_FILL)}},s.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()}},2864:function(t,e,n){"use strict";t.exports=function(t,e,n,a,d){i(s,e,t),i(s,n,s);for(var y=0,b=0;b<2;++b){u[2]=a[b][2];for(var x=0;x<2;++x){u[1]=a[x][1];for(var w=0;w<2;++w)u[0]=a[w][0],h(l[y],u,s),y+=1}}var _=-1;for(b=0;b<8;++b){for(var k=l[b][3],T=0;T<3;++T)c[b][T]=l[b][T]/k;d&&(c[b][2]*=-1),k<0&&(_<0||c[b][2]E&&(_|=1<E&&(_|=1<c[b][1])&&(z=b);var N=-1;for(b=0;b<3;++b)(F=z^1<c[j][0]&&(j=F))}var B=g;B[0]=B[1]=B[2]=0,B[r.log2(N^z)]=z&N,B[r.log2(z^j)]=z&j;var U=7^j;U===_||U===R?(U=7^N,B[r.log2(j^U)]=U&j):B[r.log2(N^U)]=U&N;var H=v,V=_;for(M=0;M<3;++M)H[M]=V&1< HALF_PI) && (b <= ONE_AND_HALF_PI)) ?\n b - PI :\n b;\n}\n\nfloat look_horizontal_or_vertical(float a, float ratio) {\n // ratio controls the ratio between being horizontal to (vertical + horizontal)\n // if ratio is set to 0.5 then it is 50%, 50%.\n // when using a higher ratio e.g. 0.75 the result would\n // likely be more horizontal than vertical.\n\n float b = positive_angle(a);\n\n return\n (b < ( ratio) * HALF_PI) ? 0.0 :\n (b < (2.0 - ratio) * HALF_PI) ? -HALF_PI :\n (b < (2.0 + ratio) * HALF_PI) ? 0.0 :\n (b < (4.0 - ratio) * HALF_PI) ? HALF_PI :\n 0.0;\n}\n\nfloat roundTo(float a, float b) {\n return float(b * floor((a + 0.5 * b) / b));\n}\n\nfloat look_round_n_directions(float a, int n) {\n float b = positive_angle(a);\n float div = TWO_PI / float(n);\n float c = roundTo(b, div);\n return look_upwards(c);\n}\n\nfloat applyAlignOption(float rawAngle, float delta) {\n return\n (option > 2) ? look_round_n_directions(rawAngle + delta, option) : // option 3-n: round to n directions\n (option == 2) ? look_horizontal_or_vertical(rawAngle + delta, hv_ratio) : // horizontal or vertical\n (option == 1) ? rawAngle + delta : // use free angle, and flip to align with one direction of the axis\n (option == 0) ? look_upwards(rawAngle) : // use free angle, and stay upwards\n (option ==-1) ? 0.0 : // useful for backward compatibility, all texts remains horizontal\n rawAngle; // otherwise return back raw input angle\n}\n\nbool isAxisTitle = (axis.x == 0.0) &&\n (axis.y == 0.0) &&\n (axis.z == 0.0);\n\nvoid main() {\n //Compute world offset\n float axisDistance = position.z;\n vec3 dataPosition = axisDistance * axis + offset;\n\n float beta = angle; // i.e. user defined attributes for each tick\n\n float axisAngle;\n float clipAngle;\n float flip;\n\n if (enableAlign) {\n axisAngle = (isAxisTitle) ? HALF_PI :\n computeViewAngle(dataPosition, dataPosition + axis);\n clipAngle = computeViewAngle(dataPosition, dataPosition + alignDir);\n\n axisAngle += (sin(axisAngle) < 0.0) ? PI : 0.0;\n clipAngle += (sin(clipAngle) < 0.0) ? PI : 0.0;\n\n flip = (dot(vec2(cos(axisAngle), sin(axisAngle)),\n vec2(sin(clipAngle),-cos(clipAngle))) > 0.0) ? 1.0 : 0.0;\n\n beta += applyAlignOption(clipAngle, flip * PI);\n }\n\n //Compute plane offset\n vec2 planeCoord = position.xy * pixelScale;\n\n mat2 planeXform = scale * mat2(\n cos(beta), sin(beta),\n -sin(beta), cos(beta)\n );\n\n vec2 viewOffset = 2.0 * planeXform * planeCoord / resolution;\n\n //Compute clip position\n vec3 clipPosition = project(dataPosition);\n\n //Apply text offset in clip coordinates\n clipPosition += vec3(viewOffset, 0.0);\n\n //Done\n gl_Position = vec4(clipPosition, 1.0);\n}"]),l=r(["precision highp float;\n#define GLSLIFY 1\n\nuniform vec4 color;\nvoid main() {\n gl_FragColor = color;\n}"]);e.f=function(t){return i(t,s,l,null,[{name:"position",type:"vec3"}])};var c=r(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position;\nattribute vec3 normal;\n\nuniform mat4 model, view, projection;\nuniform vec3 enable;\nuniform vec3 bounds[2];\n\nvarying vec3 colorChannel;\n\nvoid main() {\n\n vec3 signAxis = sign(bounds[1] - bounds[0]);\n\n vec3 realNormal = signAxis * normal;\n\n if(dot(realNormal, enable) > 0.0) {\n vec3 minRange = min(bounds[0], bounds[1]);\n vec3 maxRange = max(bounds[0], bounds[1]);\n vec3 nPosition = mix(minRange, maxRange, 0.5 * (position + 1.0));\n gl_Position = projection * view * model * vec4(nPosition, 1.0);\n } else {\n gl_Position = vec4(0,0,0,0);\n }\n\n colorChannel = abs(realNormal);\n}"]),u=r(["precision highp float;\n#define GLSLIFY 1\n\nuniform vec4 colors[3];\n\nvarying vec3 colorChannel;\n\nvoid main() {\n gl_FragColor = colorChannel.x * colors[0] +\n colorChannel.y * colors[1] +\n colorChannel.z * colors[2];\n}"]);e.bg=function(t){return i(t,c,u,null,[{name:"position",type:"vec3"},{name:"normal",type:"vec3"}])}},9557:function(t,e,n){"use strict";t.exports=function(t,e,n,i,o,l){var c=r(t),f=a(t,[{buffer:c,size:3}]),h=s(t);h.attributes.position.location=0;var d=new u(t,h,c,f);return d.update(e,n,i,o,l),d};var r=n(5827),a=n(2944),o=n(875),s=n(1943).f,l=window||i.global||{},c=l.__TEXT_CACHE||{};function u(t,e,n,r){this.gl=t,this.shader=e,this.buffer=n,this.vao=r,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}l.__TEXT_CACHE={};var f=u.prototype,h=[0,0];f.bind=function(t,e,n,r){this.vao.bind(),this.shader.bind();var i=this.shader.uniforms;i.model=t,i.view=e,i.projection=n,i.pixelScale=r,h[0]=this.gl.drawingBufferWidth,h[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=h},f.unbind=function(){this.vao.unbind()},f.update=function(t,e,n,r,i){var a=[];function s(t,e,n,r,i,s){var l=c[n];l||(l=c[n]={});var u=l[e];u||(u=l[e]=function(t,e){try{return o(t,e)}catch(n){return console.warn('error vectorizing text:"'+t+'" error:',n),{cells:[],positions:[]}}}(e,{triangles:!0,font:n,textAlign:"center",textBaseline:"middle",lineSpacing:i,styletags:s}));for(var f=(r||12)/12,h=u.positions,d=u.cells,p=0,g=d.length;p=0;--m){var y=h[v[m]];a.push(f*y[0],-f*y[1],t)}}for(var l=[0,0,0],u=[0,0,0],f=[0,0,0],h=[0,0,0],d={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},p=0;p<3;++p){f[p]=a.length/3|0,s(.5*(t[0][p]+t[1][p]),e[p],n[p],12,1.25,d),h[p]=(a.length/3|0)-f[p],l[p]=a.length/3|0;for(var g=0;g=0&&(i=n.length-r-1);var a=Math.pow(10,i),o=Math.round(t*e*a),s=o+"";if(s.indexOf("e")>=0)return s;var l=o/a,c=o%a;o<0?(l=0|-Math.ceil(l),c=0|-c):(l=0|Math.floor(l),c|=0);var u=""+l;if(o<0&&(u="-"+u),i){for(var f=""+c;f.length=t[0][i];--o)a.push({x:o*e[i],text:n(e[i],o)});r.push(a)}return r},e.equal=function(t,e){for(var n=0;n<3;++n){if(t[n].length!==e[n].length)return!1;for(var r=0;rn)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return t.bufferSubData(e,a,i),n}function u(t,e){for(var n=r.malloc(t.length,e),i=t.length,a=0;a=0;--r){if(e[r]!==n)return!1;n*=t[r]}return!0}(t.shape,t.stride))0===t.offset&&t.data.length===t.shape[0]?this.length=c(this.gl,this.type,this.length,this.usage,t.data,e):this.length=c(this.gl,this.type,this.length,this.usage,t.data.subarray(t.offset,t.shape[0]),e);else{var s=r.malloc(t.size,n),l=a(s,t.shape);i.assign(l,t),this.length=c(this.gl,this.type,this.length,this.usage,e<0?s:s.subarray(0,t.size),e),r.free(s)}}else if(Array.isArray(t)){var f;f=this.type===this.gl.ELEMENT_ARRAY_BUFFER?u(t,"uint16"):u(t,"float32"),this.length=c(this.gl,this.type,this.length,this.usage,e<0?f:f.subarray(0,t.length),e),r.free(f)}else if("object"===typeof t&&"number"===typeof t.length)this.length=c(this.gl,this.type,this.length,this.usage,t,e);else{if("number"!==typeof t&&void 0!==t)throw new Error("gl-buffer: Invalid data type");if(e>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");(t|=0)<=0&&(t=1),this.gl.bufferData(this.type,0|t,this.usage),this.length=t}},t.exports=function(t,e,n,r){if(n=n||t.ARRAY_BUFFER,r=r||t.DYNAMIC_DRAW,n!==t.ARRAY_BUFFER&&n!==t.ELEMENT_ARRAY_BUFFER)throw new Error("gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER");if(r!==t.DYNAMIC_DRAW&&r!==t.STATIC_DRAW&&r!==t.STREAM_DRAW)throw new Error("gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW");var i=t.createBuffer(),a=new s(t,n,i,0,r);return a.update(e),a}},1140:function(t,e,n){"use strict";var r=n(2858);t.exports=function(t,e){var n=t.positions,i=t.vectors,a={positions:[],vertexIntensity:[],vertexIntensityBounds:t.vertexIntensityBounds,vectors:[],cells:[],coneOffset:t.coneOffset,colormap:t.colormap};if(0===t.positions.length)return e&&(e[0]=[0,0,0],e[1]=[0,0,0]),a;for(var o=0,s=1/0,l=-1/0,c=1/0,u=-1/0,f=1/0,h=-1/0,d=null,p=null,g=[],v=1/0,m=!1,y=0;yo&&(o=r.length(x)),y){var w=2*r.distance(d,b)/(r.length(p)+r.length(x));w?(v=Math.min(v,w),m=!1):m=!0}m||(d=b,p=x),g.push(x)}var _=[s,c,f],k=[l,u,h];e&&(e[0]=_,e[1]=k),0===o&&(o=1);var T=1/o;isFinite(v)||(v=1),a.vectorScale=v;var M=t.coneSize||.5;t.absoluteConeSize&&(M=t.absoluteConeSize*T),a.coneScale=M,y=0;for(var A=0;y=1},d.isTransparent=function(){return this.opacity<1},d.pickSlots=1,d.setPickBase=function(t){this.pickId=t},d.update=function(t){t=t||{};var e=this.gl;this.dirty=!0,"lightPosition"in t&&(this.lightPosition=t.lightPosition),"opacity"in t&&(this.opacity=t.opacity),"ambient"in t&&(this.ambientLight=t.ambient),"diffuse"in t&&(this.diffuseLight=t.diffuse),"specular"in t&&(this.specularLight=t.specular),"roughness"in t&&(this.roughness=t.roughness),"fresnel"in t&&(this.fresnel=t.fresnel),void 0!==t.tubeScale&&(this.tubeScale=t.tubeScale),void 0!==t.vectorScale&&(this.vectorScale=t.vectorScale),void 0!==t.coneScale&&(this.coneScale=t.coneScale),void 0!==t.coneOffset&&(this.coneOffset=t.coneOffset),t.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=e.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=e.LINEAR,this.texture.setPixels(function(t){for(var e=u({colormap:t,nshades:256,format:"rgba"}),n=new Uint8Array(1024),r=0;r<256;++r){for(var i=e[r],a=0;a<3;++a)n[4*r+a]=i[a];n[4*r+3]=255*i[3]}return c(n,[256,256,4],[4,0,1])}(t.colormap)),this.texture.generateMipmap());var n=t.cells,r=t.positions,i=t.vectors;if(r&&n&&i){var a=[],o=[],s=[],l=[],f=[];this.cells=n,this.positions=r,this.vectors=i;var h=t.meshColor||[1,1,1,1],d=t.vertexIntensity,p=1/0,g=-1/0;if(d)if(t.vertexIntensityBounds)p=+t.vertexIntensityBounds[0],g=+t.vertexIntensityBounds[1];else for(var v=0;v0){var g=this.triShader;g.bind(),g.uniforms=c,this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()}},d.drawPick=function(t){t=t||{};for(var e=this.gl,n=t.model||f,r=t.view||f,i=t.projection||f,a=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],o=0;o<3;++o)a[0][o]=Math.max(a[0][o],this.clipBounds[0][o]),a[1][o]=Math.min(a[1][o],this.clipBounds[1][o]);this._model=[].slice.call(n),this._view=[].slice.call(r),this._projection=[].slice.call(i),this._resolution=[e.drawingBufferWidth,e.drawingBufferHeight];var s={model:n,view:r,projection:i,clipBounds:a,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},l=this.pickShader;l.bind(),l.uniforms=s,this.triangleCount>0&&(this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind())},d.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;var e=t.value[0]+256*t.value[1]+65536*t.value[2],n=this.cells[e],r=this.positions[n[1]].slice(0,3),i={position:r,dataCoordinate:r,index:Math.floor(n[1]/48)};return"cone"===this.traceType?i.index=Math.floor(n[1]/48):"streamtube"===this.traceType&&(i.intensity=this.intensity[n[1]],i.velocity=this.vectors[n[1]].slice(0,3),i.divergence=this.vectors[n[1]][3],i.index=e),i},d.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()},t.exports=function(t,e,n){var s=n.shaders;1===arguments.length&&(t=(e=t).gl);var l=function(t,e){var n=r(t,e.meshShader.vertex,e.meshShader.fragment,null,e.meshShader.attributes);return n.attributes.position.location=0,n.attributes.color.location=2,n.attributes.uv.location=3,n.attributes.vector.location=4,n}(t,s),u=function(t,e){var n=r(t,e.pickShader.vertex,e.pickShader.fragment,null,e.pickShader.attributes);return n.attributes.position.location=0,n.attributes.id.location=1,n.attributes.vector.location=4,n}(t,s),f=o(t,c(new Uint8Array([255,255,255,255]),[1,1,4]));f.generateMipmap(),f.minFilter=t.LINEAR_MIPMAP_LINEAR,f.magFilter=t.LINEAR;var d=i(t),p=i(t),g=i(t),v=i(t),m=i(t),y=new h(t,f,l,u,d,p,m,g,v,a(t,[{buffer:d,type:t.FLOAT,size:4},{buffer:m,type:t.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:g,type:t.FLOAT,size:4},{buffer:v,type:t.FLOAT,size:2},{buffer:p,type:t.FLOAT,size:4}]),n.traceType||"cone");return y.update(e),y}},7234:function(t,e,n){var r=n(6832),i=r(["precision highp float;\n\nprecision highp float;\n#define GLSLIFY 1\n\nvec3 getOrthogonalVector(vec3 v) {\n // Return up-vector for only-z vector.\n // 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).\n // From the above if-statement we have ||a|| > 0 U ||b|| > 0.\n // Assign z = 0, x = -b, y = a:\n // a*-b + b*a + c*0 = -ba + ba + 0 = 0\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\n return normalize(vec3(-v.y, v.x, 0.0));\n } else {\n return normalize(vec3(0.0, v.z, -v.y));\n }\n}\n\n// Calculate the cone vertex and normal at the given index.\n//\n// The returned vertex is for a cone with its top at origin and height of 1.0,\n// pointing in the direction of the vector attribute.\n//\n// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.\n// These vertices are used to make up the triangles of the cone by the following:\n// segment + 0 top vertex\n// segment + 1 perimeter vertex a+1\n// segment + 2 perimeter vertex a\n// segment + 3 center base vertex\n// segment + 4 perimeter vertex a\n// segment + 5 perimeter vertex a+1\n// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.\n// To go from index to segment, floor(index / 6)\n// To go from segment to angle, 2*pi * (segment/segmentCount)\n// To go from index to segment index, index - (segment*6)\n//\nvec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {\n\n const float segmentCount = 8.0;\n\n float index = rawIndex - floor(rawIndex /\n (segmentCount * 6.0)) *\n (segmentCount * 6.0);\n\n float segment = floor(0.001 + index/6.0);\n float segmentIndex = index - (segment*6.0);\n\n normal = -normalize(d);\n\n if (segmentIndex > 2.99 && segmentIndex < 3.01) {\n return mix(vec3(0.0), -d, coneOffset);\n }\n\n float nextAngle = (\n (segmentIndex > 0.99 && segmentIndex < 1.01) ||\n (segmentIndex > 4.99 && segmentIndex < 5.01)\n ) ? 1.0 : 0.0;\n float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);\n\n vec3 v1 = mix(d, vec3(0.0), coneOffset);\n vec3 v2 = v1 - d;\n\n vec3 u = getOrthogonalVector(d);\n vec3 v = normalize(cross(u, d));\n\n vec3 x = u * cos(angle) * length(d)*0.25;\n vec3 y = v * sin(angle) * length(d)*0.25;\n vec3 v3 = v2 + x + y;\n if (segmentIndex < 3.0) {\n vec3 tx = u * sin(angle);\n vec3 ty = v * -cos(angle);\n vec3 tangent = tx + ty;\n normal = normalize(cross(v3 - v1, tangent));\n }\n\n if (segmentIndex == 0.0) {\n return mix(d, vec3(0.0), coneOffset);\n }\n return v3;\n}\n\nattribute vec3 vector;\nattribute vec4 color, position;\nattribute vec2 uv;\n\nuniform float vectorScale, coneScale, coneOffset;\nuniform mat4 model, view, projection, inverseModel;\nuniform vec3 eyePosition, lightPosition;\n\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n // Scale the vector magnitude to stay constant with\n // model & view changes.\n vec3 normal;\n vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector), position.w, coneOffset, normal);\n vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\n\n //Lighting geometry parameters\n vec4 cameraCoordinate = view * conePosition;\n cameraCoordinate.xyz /= cameraCoordinate.w;\n f_lightDirection = lightPosition - cameraCoordinate.xyz;\n f_eyeDirection = eyePosition - cameraCoordinate.xyz;\n f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);\n\n // vec4 m_position = model * vec4(conePosition, 1.0);\n vec4 t_position = view * conePosition;\n gl_Position = projection * t_position;\n\n f_color = color;\n f_data = conePosition.xyz;\n f_position = position.xyz;\n f_uv = uv;\n}\n"]),a=r(["#extension GL_OES_standard_derivatives : enable\n\nprecision highp float;\n#define GLSLIFY 1\n\nfloat beckmannDistribution(float x, float roughness) {\n float NdotH = max(x, 0.0001);\n float cos2Alpha = NdotH * NdotH;\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\n float roughness2 = roughness * roughness;\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\n return exp(tan2Alpha / roughness2) / denom;\n}\n\nfloat cookTorranceSpecular(\n vec3 lightDirection,\n vec3 viewDirection,\n vec3 surfaceNormal,\n float roughness,\n float fresnel) {\n\n float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);\n float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);\n\n //Half angle vector\n vec3 H = normalize(lightDirection + viewDirection);\n\n //Geometric term\n float NdotH = max(dot(surfaceNormal, H), 0.0);\n float VdotH = max(dot(viewDirection, H), 0.000001);\n float LdotH = max(dot(lightDirection, H), 0.000001);\n float G1 = (2.0 * NdotH * VdotN) / VdotH;\n float G2 = (2.0 * NdotH * LdotN) / LdotH;\n float G = min(1.0, min(G1, G2));\n \n //Distribution term\n float D = beckmannDistribution(NdotH, roughness);\n\n //Fresnel term\n float F = pow(1.0 - VdotN, fresnel);\n\n //Multiply terms and done\n return G * F * D / max(3.14159265 * VdotN, 0.000001);\n}\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\nuniform sampler2D texture;\n\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n vec3 N = normalize(f_normal);\n vec3 L = normalize(f_lightDirection);\n vec3 V = normalize(f_eyeDirection);\n\n if(gl_FrontFacing) {\n N = -N;\n }\n\n float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\n\n vec4 surfaceColor = f_color * texture2D(texture, f_uv);\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\n\n gl_FragColor = litColor * opacity;\n}\n"]),o=r(["precision highp float;\n\nprecision highp float;\n#define GLSLIFY 1\n\nvec3 getOrthogonalVector(vec3 v) {\n // Return up-vector for only-z vector.\n // 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).\n // From the above if-statement we have ||a|| > 0 U ||b|| > 0.\n // Assign z = 0, x = -b, y = a:\n // a*-b + b*a + c*0 = -ba + ba + 0 = 0\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\n return normalize(vec3(-v.y, v.x, 0.0));\n } else {\n return normalize(vec3(0.0, v.z, -v.y));\n }\n}\n\n// Calculate the cone vertex and normal at the given index.\n//\n// The returned vertex is for a cone with its top at origin and height of 1.0,\n// pointing in the direction of the vector attribute.\n//\n// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.\n// These vertices are used to make up the triangles of the cone by the following:\n// segment + 0 top vertex\n// segment + 1 perimeter vertex a+1\n// segment + 2 perimeter vertex a\n// segment + 3 center base vertex\n// segment + 4 perimeter vertex a\n// segment + 5 perimeter vertex a+1\n// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.\n// To go from index to segment, floor(index / 6)\n// To go from segment to angle, 2*pi * (segment/segmentCount)\n// To go from index to segment index, index - (segment*6)\n//\nvec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {\n\n const float segmentCount = 8.0;\n\n float index = rawIndex - floor(rawIndex /\n (segmentCount * 6.0)) *\n (segmentCount * 6.0);\n\n float segment = floor(0.001 + index/6.0);\n float segmentIndex = index - (segment*6.0);\n\n normal = -normalize(d);\n\n if (segmentIndex > 2.99 && segmentIndex < 3.01) {\n return mix(vec3(0.0), -d, coneOffset);\n }\n\n float nextAngle = (\n (segmentIndex > 0.99 && segmentIndex < 1.01) ||\n (segmentIndex > 4.99 && segmentIndex < 5.01)\n ) ? 1.0 : 0.0;\n float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);\n\n vec3 v1 = mix(d, vec3(0.0), coneOffset);\n vec3 v2 = v1 - d;\n\n vec3 u = getOrthogonalVector(d);\n vec3 v = normalize(cross(u, d));\n\n vec3 x = u * cos(angle) * length(d)*0.25;\n vec3 y = v * sin(angle) * length(d)*0.25;\n vec3 v3 = v2 + x + y;\n if (segmentIndex < 3.0) {\n vec3 tx = u * sin(angle);\n vec3 ty = v * -cos(angle);\n vec3 tangent = tx + ty;\n normal = normalize(cross(v3 - v1, tangent));\n }\n\n if (segmentIndex == 0.0) {\n return mix(d, vec3(0.0), coneOffset);\n }\n return v3;\n}\n\nattribute vec4 vector;\nattribute vec4 position;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\nuniform float vectorScale, coneScale, coneOffset;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n vec3 normal;\n vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector.xyz), position.w, coneOffset, normal);\n vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\n gl_Position = projection * view * conePosition;\n f_id = id;\n f_position = position.xyz;\n}\n"]),s=r(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float pickId;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n\n gl_FragColor = vec4(pickId, f_id.xyz);\n}"]);e.meshShader={vertex:i,fragment:a,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec3"}]},e.pickShader={vertex:o,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec3"}]}},1950:function(t){t.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(t,e,n){var r=n(1950);t.exports=function(t){return r[t]}},3110:function(t,e,n){"use strict";t.exports=function(t){var e=t.gl,n=r(e),o=i(e,[{buffer:n,type:e.FLOAT,size:3,offset:0,stride:40},{buffer:n,type:e.FLOAT,size:4,offset:12,stride:40},{buffer:n,type:e.FLOAT,size:3,offset:28,stride:40}]),l=a(e);l.attributes.position.location=0,l.attributes.color.location=1,l.attributes.offset.location=2;var c=new s(e,n,o,l);return c.update(t),c};var r=n(5827),i=n(2944),a=n(7667),o=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(t,e,n,r){this.gl=t,this.shader=r,this.buffer=e,this.vao=n,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 l=s.prototype;function c(t,e){for(var n=0;n<3;++n)t[0][n]=Math.min(t[0][n],e[n]),t[1][n]=Math.max(t[1][n],e[n])}l.isOpaque=function(){return!this.hasAlpha},l.isTransparent=function(){return this.hasAlpha},l.drawTransparent=l.draw=function(t){var e=this.gl,n=this.shader.uniforms;this.shader.bind();var r=n.view=t.view||o,i=n.projection=t.projection||o;n.model=t.model||o,n.clipBounds=this.clipBounds,n.opacity=this.opacity;var a=r[12],s=r[13],l=r[14],c=r[15],u=(t._ortho?2:1)*this.pixelRatio*(i[3]*a+i[7]*s+i[11]*l+i[15]*c)/e.drawingBufferHeight;this.vao.bind();for(var f=0;f<3;++f)e.lineWidth(this.lineWidth[f]*this.pixelRatio),n.capSize=this.capSize[f]*u,this.lineCount[f]&&e.drawArrays(e.LINES,this.lineOffset[f],this.lineCount[f]);this.vao.unbind()};var u=function(){for(var t=new Array(3),e=0;e<3;++e){for(var n=[],r=1;r<=2;++r)for(var i=-1;i<=1;i+=2){var a=[0,0,0];a[(r+e)%3]=i,n.push(a)}t[e]=n}return t}();function f(t,e,n,r){for(var i=u[r],a=0;a0&&((d=u.slice())[s]+=p[1][s],i.push(u[0],u[1],u[2],g[0],g[1],g[2],g[3],0,0,0,d[0],d[1],d[2],g[0],g[1],g[2],g[3],0,0,0),c(this.bounds,d),o+=2+f(i,d,g,s)))}this.lineCount[s]=o-this.lineOffset[s]}this.buffer.update(i)}},l.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()}},7667:function(t,e,n){"use strict";var r=n(6832),i=n(5158),a=r(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position, offset;\nattribute vec4 color;\nuniform mat4 model, view, projection;\nuniform float capSize;\nvarying vec4 fragColor;\nvarying vec3 fragPosition;\n\nvoid main() {\n vec4 worldPosition = model * vec4(position, 1.0);\n worldPosition = (worldPosition / worldPosition.w) + vec4(capSize * offset, 0.0);\n gl_Position = projection * view * worldPosition;\n fragColor = color;\n fragPosition = position;\n}"]),o=r(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float opacity;\nvarying vec3 fragPosition;\nvarying vec4 fragColor;\n\nvoid main() {\n if (\n outOfRange(clipBounds[0], clipBounds[1], fragPosition) ||\n fragColor.a * opacity == 0.\n ) discard;\n\n gl_FragColor = opacity * fragColor;\n}"]);t.exports=function(t){return i(t,a,o,null,[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"offset",type:"vec3"}])}},4234:function(t,e,n){"use strict";var r=n(8931);t.exports=function(t,e,n,r){i||(i=t.FRAMEBUFFER_UNSUPPORTED,a=t.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,o=t.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,s=t.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT);var c=t.getExtension("WEBGL_draw_buffers");if(!l&&c&&function(t,e){var n=t.getParameter(e.MAX_COLOR_ATTACHMENTS_WEBGL);l=new Array(n+1);for(var r=0;r<=n;++r){for(var i=new Array(n),a=0;au||n<0||n>u)throw new Error("gl-fbo: Parameters are too large for FBO");var f=1;if("color"in(r=r||{})){if((f=Math.max(0|r.color,0))<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(f>1){if(!c)throw new Error("gl-fbo: Multiple draw buffer extension not supported");if(f>t.getParameter(c.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+f+" draw buffers")}}var h=t.UNSIGNED_BYTE,d=t.getExtension("OES_texture_float");if(r.float&&f>0){if(!d)throw new Error("gl-fbo: Context does not support floating point textures");h=t.FLOAT}else r.preferFloat&&f>0&&d&&(h=t.FLOAT);var g=!0;"depth"in r&&(g=!!r.depth);var v=!1;return"stencil"in r&&(v=!!r.stencil),new p(t,e,n,h,f,g,v,c)};var i,a,o,s,l=null;function c(t){return[t.getParameter(t.FRAMEBUFFER_BINDING),t.getParameter(t.RENDERBUFFER_BINDING),t.getParameter(t.TEXTURE_BINDING_2D)]}function u(t,e){t.bindFramebuffer(t.FRAMEBUFFER,e[0]),t.bindRenderbuffer(t.RENDERBUFFER,e[1]),t.bindTexture(t.TEXTURE_2D,e[2])}function f(t){switch(t){case i:throw new Error("gl-fbo: Framebuffer unsupported");case a:throw new Error("gl-fbo: Framebuffer incomplete attachment");case o: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 h(t,e,n,i,a,o){if(!i)return null;var s=r(t,e,n,a,i);return s.magFilter=t.NEAREST,s.minFilter=t.NEAREST,s.mipSamples=1,s.bind(),t.framebufferTexture2D(t.FRAMEBUFFER,o,t.TEXTURE_2D,s.handle,0),s}function d(t,e,n,r,i){var a=t.createRenderbuffer();return t.bindRenderbuffer(t.RENDERBUFFER,a),t.renderbufferStorage(t.RENDERBUFFER,r,e,n),t.framebufferRenderbuffer(t.FRAMEBUFFER,i,t.RENDERBUFFER,a),a}function p(t,e,n,r,i,a,o,s){this.gl=t,this._shape=[0|e,0|n],this._destroyed=!1,this._ext=s,this.color=new Array(i);for(var p=0;p1&&s.drawBuffersWEBGL(l[o]);var y=n.getExtension("WEBGL_depth_texture");y?p?t.depth=h(n,i,a,y.UNSIGNED_INT_24_8_WEBGL,n.DEPTH_STENCIL,n.DEPTH_STENCIL_ATTACHMENT):g&&(t.depth=h(n,i,a,n.UNSIGNED_SHORT,n.DEPTH_COMPONENT,n.DEPTH_ATTACHMENT)):g&&p?t._depth_rb=d(n,i,a,n.DEPTH_STENCIL,n.DEPTH_STENCIL_ATTACHMENT):g?t._depth_rb=d(n,i,a,n.DEPTH_COMPONENT16,n.DEPTH_ATTACHMENT):p&&(t._depth_rb=d(n,i,a,n.STENCIL_INDEX,n.STENCIL_ATTACHMENT));var b=n.checkFramebufferStatus(n.FRAMEBUFFER);if(b!==n.FRAMEBUFFER_COMPLETE){for(t._destroyed=!0,n.bindFramebuffer(n.FRAMEBUFFER,null),n.deleteFramebuffer(t.handle),t.handle=null,t.depth&&(t.depth.dispose(),t.depth=null),t._depth_rb&&(n.deleteRenderbuffer(t._depth_rb),t._depth_rb=null),m=0;mi||n<0||n>i)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");t._shape[0]=e,t._shape[1]=n;for(var a=c(r),o=0;o>8*d&255;this.pickOffset=n,i.bind();var p=i.uniforms;p.viewTransform=t,p.pickOffset=e,p.shape=this.shape;var g=i.attributes;return this.positionBuffer.bind(),g.position.pointer(),this.weightBuffer.bind(),g.weight.pointer(s.UNSIGNED_BYTE,!1),this.idBuffer.bind(),g.pickId.pointer(s.UNSIGNED_BYTE,!1),s.drawArrays(s.TRIANGLES,0,o),n+this.shape[0]*this.shape[1]}}}(),u.pick=function(t,e,n){var r=this.pickOffset,i=this.shape[0]*this.shape[1];if(n=r+i)return null;var a=n-r,o=this.xData,s=this.yData;return{object:this,pointId:a,dataCoord:[o[a%this.shape[0]],s[a/this.shape[0]|0]]}},u.update=function(t){var e=(t=t||{}).shape||[0,0],n=t.x||i(e[0]),o=t.y||i(e[1]),s=t.z||new Float32Array(e[0]*e[1]),l=!1!==t.zsmooth;this.xData=n,this.yData=o;var c,u,h,d,p=t.colorLevels||[0],g=t.colorValues||[0,0,0,1],v=p.length,m=this.bounds;l?(c=m[0]=n[0],u=m[1]=o[0],h=m[2]=n[n.length-1],d=m[3]=o[o.length-1]):(c=m[0]=n[0]+(n[1]-n[0])/2,u=m[1]=o[0]+(o[1]-o[0])/2,h=m[2]=n[n.length-1]+(n[n.length-1]-n[n.length-2])/2,d=m[3]=o[o.length-1]+(o[o.length-1]-o[o.length-2])/2);var y=1/(h-c),b=1/(d-u),x=e[0],w=e[1];this.shape=[x,w];var _=(l?(x-1)*(w-1):x*w)*(f.length>>>1);this.numVertices=_;for(var k=a.mallocUint8(4*_),T=a.mallocFloat32(2*_),M=a.mallocUint8(2*_),A=a.mallocUint32(_),S=0,E=l?x-1:x,C=l?w-1:w,P=0;P max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform sampler2D dashTexture;\nuniform float dashScale;\nuniform float opacity;\n\nvarying vec3 worldPosition;\nvarying float pixelArcLength;\nvarying vec4 fragColor;\n\nvoid main() {\n if (\n outOfRange(clipBounds[0], clipBounds[1], worldPosition) ||\n fragColor.a * opacity == 0.\n ) discard;\n\n float dashWeight = texture2D(dashTexture, vec2(dashScale * pixelArcLength, 0)).r;\n if(dashWeight < 0.5) {\n discard;\n }\n gl_FragColor = fragColor * opacity;\n}\n"]),s=r(["precision highp float;\n#define GLSLIFY 1\n\n#define FLOAT_MAX 1.70141184e38\n#define FLOAT_MIN 1.17549435e-38\n\n// https://github.com/mikolalysenko/glsl-read-float/blob/master/index.glsl\nvec4 packFloat(float v) {\n float av = abs(v);\n\n //Handle special cases\n if(av < FLOAT_MIN) {\n return vec4(0.0, 0.0, 0.0, 0.0);\n } else if(v > FLOAT_MAX) {\n return vec4(127.0, 128.0, 0.0, 0.0) / 255.0;\n } else if(v < -FLOAT_MAX) {\n return vec4(255.0, 128.0, 0.0, 0.0) / 255.0;\n }\n\n vec4 c = vec4(0,0,0,0);\n\n //Compute exponent and mantissa\n float e = floor(log2(av));\n float m = av * pow(2.0, -e) - 1.0;\n\n //Unpack mantissa\n c[1] = floor(128.0 * m);\n m -= c[1] / 128.0;\n c[2] = floor(32768.0 * m);\n m -= c[2] / 32768.0;\n c[3] = floor(8388608.0 * m);\n\n //Unpack exponent\n float ebias = e + 127.0;\n c[0] = floor(ebias / 2.0);\n ebias -= c[0] * 2.0;\n c[1] += floor(ebias) * 128.0;\n\n //Unpack sign bit\n c[0] += 128.0 * step(0.0, -v);\n\n //Scale back to range\n return c / 255.0;\n}\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform float pickId;\nuniform vec3 clipBounds[2];\n\nvarying vec3 worldPosition;\nvarying float pixelArcLength;\nvarying vec4 fragColor;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], worldPosition)) discard;\n\n gl_FragColor = vec4(pickId/255.0, packFloat(pixelArcLength).xyz);\n}"]),l=[{name:"position",type:"vec3"},{name:"nextPosition",type:"vec3"},{name:"arcLength",type:"float"},{name:"lineWidth",type:"float"},{name:"color",type:"vec4"}];e.createShader=function(t){return i(t,a,o,null,l)},e.createPickShader=function(t){return i(t,a,s,null,l)}},6086:function(t,e,n){"use strict";t.exports=function(t){var e=t.gl||t.scene&&t.scene.gl,n=f(e);n.attributes.position.location=0,n.attributes.nextPosition.location=1,n.attributes.arcLength.location=2,n.attributes.lineWidth.location=3,n.attributes.color.location=4;var o=h(e);o.attributes.position.location=0,o.attributes.nextPosition.location=1,o.attributes.arcLength.location=2,o.attributes.lineWidth.location=3,o.attributes.color.location=4;for(var s=r(e),l=i(e,[{buffer:s,size:3,offset:0,stride:48},{buffer:s,size:3,offset:12,stride:48},{buffer:s,size:1,offset:24,stride:48},{buffer:s,size:1,offset:28,stride:48},{buffer:s,size:4,offset:32,stride:48}]),u=c(new Array(1024),[256,1,4]),d=0;d<1024;++d)u.data[d]=255;var p=a(e,u);p.wrap=e.REPEAT;var g=new m(e,n,o,s,l,p);return g.update(t),g};var r=n(5827),i=n(2944),a=n(8931),o=new Uint8Array(4),s=new Float32Array(o.buffer),l=n(5070),c=n(5050),u=n(248),f=u.createShader,h=u.createPickShader,d=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function p(t,e){for(var n=0,r=0;r<3;++r){var i=t[r]-e[r];n+=i*i}return Math.sqrt(n)}function g(t){for(var e=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],n=0;n<3;++n)e[0][n]=Math.max(t[0][n],e[0][n]),e[1][n]=Math.min(t[1][n],e[1][n]);return e}function v(t,e,n,r){this.arcLength=t,this.position=e,this.index=n,this.dataCoordinate=r}function m(t,e,n,r,i,a){this.gl=t,this.shader=e,this.pickShader=n,this.buffer=r,this.vao=i,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.points=[],this.arcLength=[],this.vertexCount=0,this.bounds=[[0,0,0],[0,0,0]],this.pickId=0,this.lineWidth=1,this.texture=a,this.dashScale=1,this.opacity=1,this.hasAlpha=!1,this.dirty=!0,this.pixelRatio=1}var y=m.prototype;y.isTransparent=function(){return this.hasAlpha},y.isOpaque=function(){return!this.hasAlpha},y.pickSlots=1,y.setPickBase=function(t){this.pickId=t},y.drawTransparent=y.draw=function(t){if(this.vertexCount){var e=this.gl,n=this.shader,r=this.vao;n.bind(),n.uniforms={model:t.model||d,view:t.view||d,projection:t.projection||d,clipBounds:g(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[e.drawingBufferWidth,e.drawingBufferHeight],pixelRatio:this.pixelRatio},r.bind(),r.draw(e.TRIANGLE_STRIP,this.vertexCount),r.unbind()}},y.drawPick=function(t){if(this.vertexCount){var e=this.gl,n=this.pickShader,r=this.vao;n.bind(),n.uniforms={model:t.model||d,view:t.view||d,projection:t.projection||d,pickId:this.pickId,clipBounds:g(this.clipBounds),screenShape:[e.drawingBufferWidth,e.drawingBufferHeight],pixelRatio:this.pixelRatio},r.bind(),r.draw(e.TRIANGLE_STRIP,this.vertexCount),r.unbind()}},y.update=function(t){var e,n;this.dirty=!0;var r=!!t.connectGaps;"dashScale"in t&&(this.dashScale=t.dashScale),this.hasAlpha=!1,"opacity"in t&&(this.opacity=+t.opacity,this.opacity<1&&(this.hasAlpha=!0));var i=[],a=[],o=[],s=0,u=0,f=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],h=t.position||t.positions;if(h){var d=t.color||t.colors||[0,0,0,1],g=t.lineWidth||1,v=!1;t:for(e=1;e0){for(var _=0;_<24;++_)i.push(i[i.length-12]);u+=2,v=!0}continue t}f[0][n]=Math.min(f[0][n],x[n],w[n]),f[1][n]=Math.max(f[1][n],x[n],w[n])}Array.isArray(d[0])?(m=d.length>e-1?d[e-1]:d.length>0?d[d.length-1]:[0,0,0,1],y=d.length>e?d[e]:d.length>0?d[d.length-1]:[0,0,0,1]):m=y=d,3===m.length&&(m=[m[0],m[1],m[2],1]),3===y.length&&(y=[y[0],y[1],y[2],1]),!this.hasAlpha&&m[3]<1&&(this.hasAlpha=!0),b=Array.isArray(g)?g.length>e-1?g[e-1]:g.length>0?g[g.length-1]:[0,0,0,1]:g;var k=s;if(s+=p(x,w),v){for(n=0;n<2;++n)i.push(x[0],x[1],x[2],w[0],w[1],w[2],k,b,m[0],m[1],m[2],m[3]);u+=2,v=!1}i.push(x[0],x[1],x[2],w[0],w[1],w[2],k,b,m[0],m[1],m[2],m[3],x[0],x[1],x[2],w[0],w[1],w[2],k,-b,m[0],m[1],m[2],m[3],w[0],w[1],w[2],x[0],x[1],x[2],s,-b,y[0],y[1],y[2],y[3],w[0],w[1],w[2],x[0],x[1],x[2],s,b,y[0],y[1],y[2],y[3]),u+=4}}if(this.buffer.update(i),a.push(s),o.push(h[h.length-1].slice()),this.bounds=f,this.vertexCount=u,this.points=o,this.arcLength=a,"dashes"in t){var T=t.dashes.slice();for(T.unshift(0),e=1;e1.0001)return null;m+=v[f]}return Math.abs(m-1)>.001?null:[h,s(t,v),v]}},2056:function(t,e,n){var r=n(6832),i=r(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position, normal;\nattribute vec4 color;\nattribute vec2 uv;\n\nuniform mat4 model\n , view\n , projection\n , inverseModel;\nuniform vec3 eyePosition\n , lightPosition;\n\nvarying vec3 f_normal\n , f_lightDirection\n , f_eyeDirection\n , f_data;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvec4 project(vec3 p) {\n return projection * view * model * vec4(p, 1.0);\n}\n\nvoid main() {\n gl_Position = project(position);\n\n //Lighting geometry parameters\n vec4 cameraCoordinate = view * vec4(position , 1.0);\n cameraCoordinate.xyz /= cameraCoordinate.w;\n f_lightDirection = lightPosition - cameraCoordinate.xyz;\n f_eyeDirection = eyePosition - cameraCoordinate.xyz;\n f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);\n\n f_color = color;\n f_data = position;\n f_uv = uv;\n}\n"]),a=r(["#extension GL_OES_standard_derivatives : enable\n\nprecision highp float;\n#define GLSLIFY 1\n\nfloat beckmannDistribution(float x, float roughness) {\n float NdotH = max(x, 0.0001);\n float cos2Alpha = NdotH * NdotH;\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\n float roughness2 = roughness * roughness;\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\n return exp(tan2Alpha / roughness2) / denom;\n}\n\nfloat cookTorranceSpecular(\n vec3 lightDirection,\n vec3 viewDirection,\n vec3 surfaceNormal,\n float roughness,\n float fresnel) {\n\n float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);\n float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);\n\n //Half angle vector\n vec3 H = normalize(lightDirection + viewDirection);\n\n //Geometric term\n float NdotH = max(dot(surfaceNormal, H), 0.0);\n float VdotH = max(dot(viewDirection, H), 0.000001);\n float LdotH = max(dot(lightDirection, H), 0.000001);\n float G1 = (2.0 * NdotH * VdotN) / VdotH;\n float G2 = (2.0 * NdotH * LdotN) / LdotH;\n float G = min(1.0, min(G1, G2));\n \n //Distribution term\n float D = beckmannDistribution(NdotH, roughness);\n\n //Fresnel term\n float F = pow(1.0 - VdotN, fresnel);\n\n //Multiply terms and done\n return G * F * D / max(3.14159265 * VdotN, 0.000001);\n}\n\n//#pragma glslify: beckmann = require(glsl-specular-beckmann) // used in gl-surface3d\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float roughness\n , fresnel\n , kambient\n , kdiffuse\n , kspecular;\nuniform sampler2D texture;\n\nvarying vec3 f_normal\n , f_lightDirection\n , f_eyeDirection\n , f_data;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n if (f_color.a == 0.0 ||\n outOfRange(clipBounds[0], clipBounds[1], f_data)\n ) discard;\n\n vec3 N = normalize(f_normal);\n vec3 L = normalize(f_lightDirection);\n vec3 V = normalize(f_eyeDirection);\n\n if(gl_FrontFacing) {\n N = -N;\n }\n\n float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));\n //float specular = max(0.0, beckmann(L, V, N, roughness)); // used in gl-surface3d\n\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\n\n vec4 surfaceColor = vec4(f_color.rgb, 1.0) * texture2D(texture, f_uv);\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\n\n gl_FragColor = litColor * f_color.a;\n}\n"]),o=r(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 uv;\n\nuniform mat4 model, view, projection;\n\nvarying vec4 f_color;\nvarying vec3 f_data;\nvarying vec2 f_uv;\n\nvoid main() {\n gl_Position = projection * view * model * vec4(position, 1.0);\n f_color = color;\n f_data = position;\n f_uv = uv;\n}"]),s=r(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform sampler2D texture;\nuniform float opacity;\n\nvarying vec4 f_color;\nvarying vec3 f_data;\nvarying vec2 f_uv;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_data)) discard;\n\n gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;\n}"]),l=r(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 uv;\nattribute float pointSize;\n\nuniform mat4 model, view, projection;\nuniform vec3 clipBounds[2];\n\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0.0, 0.0 ,0.0 ,0.0);\n } else {\n gl_Position = projection * view * model * vec4(position, 1.0);\n }\n gl_PointSize = pointSize;\n f_color = color;\n f_uv = uv;\n}"]),c=r(["precision highp float;\n#define GLSLIFY 1\n\nuniform sampler2D texture;\nuniform float opacity;\n\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n vec2 pointR = gl_PointCoord.xy - vec2(0.5, 0.5);\n if(dot(pointR, pointR) > 0.25) {\n discard;\n }\n gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;\n}"]),u=r(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n gl_Position = projection * view * model * vec4(position, 1.0);\n f_id = id;\n f_position = position;\n}"]),f=r(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float pickId;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n\n gl_FragColor = vec4(pickId, f_id.xyz);\n}"]),h=r(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute float pointSize;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\nuniform vec3 clipBounds[2];\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0.0, 0.0, 0.0, 0.0);\n } else {\n gl_Position = projection * view * model * vec4(position, 1.0);\n gl_PointSize = pointSize;\n }\n f_id = id;\n f_position = position;\n}"]),d=r(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position;\n\nuniform mat4 model, view, projection;\n\nvoid main() {\n gl_Position = projection * view * model * vec4(position, 1.0);\n}"]),p=r(["precision highp float;\n#define GLSLIFY 1\n\nuniform vec3 contourColor;\n\nvoid main() {\n gl_FragColor = vec4(contourColor, 1.0);\n}\n"]);e.meshShader={vertex:i,fragment:a,attributes:[{name:"position",type:"vec3"},{name:"normal",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},e.wireShader={vertex:o,fragment:s,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},e.pointShader={vertex:l,fragment:c,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"pointSize",type:"float"}]},e.pickShader={vertex:u,fragment:f,attributes:[{name:"position",type:"vec3"},{name:"id",type:"vec4"}]},e.pointPickShader={vertex:h,fragment:f,attributes:[{name:"position",type:"vec3"},{name:"pointSize",type:"float"},{name:"id",type:"vec4"}]},e.contourShader={vertex:d,fragment:p,attributes:[{name:"position",type:"vec3"}]}},8116:function(t,e,n){"use strict";var r=n(5158),i=n(5827),a=n(2944),o=n(8931),s=n(115),l=n(104),c=n(7437),u=n(5050),f=n(9156),h=n(7212),d=n(5306),p=n(2056),g=n(4340),v=p.meshShader,m=p.wireShader,y=p.pointShader,b=p.pickShader,x=p.pointPickShader,w=p.contourShader,_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function k(t,e,n,r,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,k,T,M,A,S){this.gl=t,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=e,this.dirty=!0,this.triShader=n,this.lineShader=r,this.pointShader=i,this.pickShader=a,this.pointPickShader=o,this.contourShader=s,this.trianglePositions=l,this.triangleColors=u,this.triangleNormals=h,this.triangleUVs=f,this.triangleIds=c,this.triangleVAO=d,this.triangleCount=0,this.lineWidth=1,this.edgePositions=p,this.edgeColors=v,this.edgeUVs=m,this.edgeIds=g,this.edgeVAO=y,this.edgeCount=0,this.pointPositions=b,this.pointColors=w,this.pointUVs=k,this.pointSizes=T,this.pointIds=x,this.pointVAO=M,this.pointCount=0,this.contourLineWidth=1,this.contourPositions=A,this.contourVAO=S,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=_,this._view=_,this._projection=_,this._resolution=[1,1]}var T=k.prototype;function M(t,e){if(!e)return 1;if(!e.length)return 1;for(var n=0;nt&&n>0){var r=(e[n][0]-t)/(e[n][0]-e[n-1][0]);return e[n][1]*(1-r)+r*e[n-1][1]}}return 1}function A(t){var e=r(t,y.vertex,y.fragment);return e.attributes.position.location=0,e.attributes.color.location=2,e.attributes.uv.location=3,e.attributes.pointSize.location=4,e}function S(t){var e=r(t,b.vertex,b.fragment);return e.attributes.position.location=0,e.attributes.id.location=1,e}function E(t){var e=r(t,x.vertex,x.fragment);return e.attributes.position.location=0,e.attributes.id.location=1,e.attributes.pointSize.location=4,e}function C(t){var e=r(t,w.vertex,w.fragment);return e.attributes.position.location=0,e}T.isOpaque=function(){return!this.hasAlpha},T.isTransparent=function(){return this.hasAlpha},T.pickSlots=1,T.setPickBase=function(t){this.pickId=t},T.highlight=function(t){if(t&&this.contourEnable){for(var e=h(this.cells,this.intensity,t.intensity),n=e.cells,r=e.vertexIds,i=e.vertexWeights,a=n.length,o=d.mallocFloat32(6*a),s=0,l=0;l0&&((f=this.triShader).bind(),f.uniforms=s,this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()),this.edgeCount>0&&this.lineWidth>0&&((f=this.lineShader).bind(),f.uniforms=s,this.edgeVAO.bind(),e.lineWidth(this.lineWidth*this.pixelRatio),e.drawArrays(e.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()),this.pointCount>0&&((f=this.pointShader).bind(),f.uniforms=s,this.pointVAO.bind(),e.drawArrays(e.POINTS,0,this.pointCount),this.pointVAO.unbind()),this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0&&((f=this.contourShader).bind(),f.uniforms=s,this.contourVAO.bind(),e.drawArrays(e.LINES,0,this.contourCount),this.contourVAO.unbind())},T.drawPick=function(t){t=t||{};for(var e=this.gl,n=t.model||_,r=t.view||_,i=t.projection||_,a=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],o=0;o<3;++o)a[0][o]=Math.max(a[0][o],this.clipBounds[0][o]),a[1][o]=Math.min(a[1][o],this.clipBounds[1][o]);this._model=[].slice.call(n),this._view=[].slice.call(r),this._projection=[].slice.call(i),this._resolution=[e.drawingBufferWidth,e.drawingBufferHeight];var s,l={model:n,view:r,projection:i,clipBounds:a,pickId:this.pickId/255};(s=this.pickShader).bind(),s.uniforms=l,this.triangleCount>0&&(this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),e.lineWidth(this.lineWidth*this.pixelRatio),e.drawArrays(e.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()),this.pointCount>0&&((s=this.pointPickShader).bind(),s.uniforms=l,this.pointVAO.bind(),e.drawArrays(e.POINTS,0,this.pointCount),this.pointVAO.unbind())},T.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;for(var e=t.value[0]+256*t.value[1]+65536*t.value[2],n=this.cells[e],r=this.positions,i=new Array(n.length),a=0;al[T]&&(a.uniforms.dataAxis=t,a.uniforms.screenOffset=e,a.uniforms.color=v[r],a.uniforms.angle=m[r],c.drawArrays(c.TRIANGLES,l[T],l[M]-l[T]))),y[r]&&k&&(e[1^r]-=A*d*b[r],a.uniforms.dataAxis=n,a.uniforms.screenOffset=e,a.uniforms.color=x[r],a.uniforms.angle=w[r],c.drawArrays(c.TRIANGLES,_,k)),e[1^r]=A*u[2+(1^r)]-1,p[r+2]&&(e[1^r]+=A*d*g[r+2],Tl[T]&&(a.uniforms.dataAxis=t,a.uniforms.screenOffset=e,a.uniforms.color=v[r+2],a.uniforms.angle=m[r+2],c.drawArrays(c.TRIANGLES,l[T],l[M]-l[T]))),y[r+2]&&k&&(e[1^r]+=A*d*b[r+2],a.uniforms.dataAxis=n,a.uniforms.screenOffset=e,a.uniforms.color=x[r+2],a.uniforms.angle=w[r+2],c.drawArrays(c.TRIANGLES,_,k))}}(),c.drawTitle=function(){var t=[0,0],e=[0,0];return function(){var n=this.plot,r=this.shader,i=n.gl,a=n.screenBox,o=n.titleCenter,s=n.titleAngle,l=n.titleColor,c=n.pixelRatio;if(this.titleCount){for(var u=0;u<2;++u)e[u]=2*(o[u]*c-a[u])/(a[2+u]-a[u])-1;r.bind(),r.uniforms.dataAxis=t,r.uniforms.screenOffset=e,r.uniforms.angle=s,r.uniforms.color=l,i.drawArrays(i.TRIANGLES,this.titleOffset,this.titleCount)}}}(),c.bind=function(){var t=[0,0],e=[0,0],n=[0,0];return function(){var r=this.plot,i=this.shader,a=r._tickBounds,o=r.dataBox,s=r.screenBox,l=r.viewBox;i.bind();for(var c=0;c<2;++c){var u=a[c],f=a[c+2]-u,h=.5*(o[c+2]+o[c]),d=o[c+2]-o[c],p=l[c],g=l[c+2]-p,v=s[c],m=s[c+2]-v;e[c]=2*f/d*g/m,t[c]=2*(u-h)/d*g/m}n[1]=2*r.pixelRatio/(s[3]-s[1]),n[0]=n[1]*(s[3]-s[1])/(s[2]-s[0]),i.uniforms.dataScale=e,i.uniforms.dataShift=t,i.uniforms.textScale=n,this.vbo.bind(),i.attributes.textCoordinate.pointer()}}(),c.update=function(t){var e,n,r,i,o,s=[],l=t.ticks,c=t.bounds;for(o=0;o<2;++o){var u=[Math.floor(s.length/3)],f=[-1/0],h=l[o];for(e=0;e=0){var g=e[p]-r[p]*(e[p+2]-e[p])/(r[p+2]-r[p]);0===p?o.drawLine(g,e[1],g,e[3],d[p],h[p]):o.drawLine(e[0],g,e[2],g,d[p],h[p])}}for(p=0;p=0;--t)this.objects[t].dispose();for(this.objects.length=0,t=this.overlays.length-1;t>=0;--t)this.overlays[t].dispose();this.overlays.length=0,this.gl=null},c.addObject=function(t){this.objects.indexOf(t)<0&&(this.objects.push(t),this.setDirty())},c.removeObject=function(t){for(var e=this.objects,n=0;nMath.abs(e))c.rotate(a,0,0,-t*n*Math.PI*p.rotateSpeed/window.innerWidth);else if(!p._ortho){var o=-p.zoomSpeed*i*e/window.innerHeight*(a-c.lastT())/20;c.pan(a,0,0,f*(Math.exp(o)-1))}}}),!0)},p.enableMouseListeners(),p};var r=n(8161),i=n(1152),a=n(6145),o=n(6475),s=n(2565),l=n(5233)},8245:function(t,e,n){var r=n(6832),i=n(5158),a=r(["precision mediump float;\n#define GLSLIFY 1\nattribute vec2 position;\nvarying vec2 uv;\nvoid main() {\n uv = position;\n gl_Position = vec4(position, 0, 1);\n}"]),o=r(["precision mediump float;\n#define GLSLIFY 1\n\nuniform sampler2D accumBuffer;\nvarying vec2 uv;\n\nvoid main() {\n vec4 accum = texture2D(accumBuffer, 0.5 * (uv + 1.0));\n gl_FragColor = min(vec4(1,1,1,1), accum);\n}"]);t.exports=function(t){return i(t,a,o,null,[{name:"position",type:"vec2"}])}},1059:function(t,e,n){"use strict";var r=n(4296),i=n(7453),a=n(2771),o=n(6496),s=n(2611),l=n(4234),c=n(8126),u=n(6145),f=n(1120),h=n(5268),d=n(8245),p=n(2321)({tablet:!0,featureDetect:!0});function g(){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 v(t){var e=Math.round(Math.log(Math.abs(t))/Math.log(10));if(e<0){var n=Math.round(Math.pow(10,-e));return Math.ceil(t*n)/n}return e>0?(n=Math.round(Math.pow(10,e)),Math.ceil(t/n)*n):Math.ceil(t)}function m(t){return"boolean"!==typeof t||t}t.exports={createScene:function(t){(t=t||{}).camera=t.camera||{};var e=t.canvas;e||(e=document.createElement("canvas"),t.container?t.container.appendChild(e):document.body.appendChild(e));var n=t.gl;if(n||(t.glOptions&&(p=!!t.glOptions.preserveDrawingBuffer),n=function(t,e){var n=null;try{(n=t.getContext("webgl",e))||(n=t.getContext("experimental-webgl",e))}catch(r){return null}return n}(e,t.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:p})),!n)throw new Error("webgl not supported");var y=t.bounds||[[-10,-10,-10],[10,10,10]],b=new g,x=l(n,n.drawingBufferWidth,n.drawingBufferHeight,{preferFloat:!p}),w=d(n),_=t.cameraObject&&!0===t.cameraObject._ortho||t.camera.projection&&"orthographic"===t.camera.projection.type||!1,k={eye:t.camera.eye||[2,0,0],center:t.camera.center||[0,0,0],up:t.camera.up||[0,1,0],zoomMin:t.camera.zoomMax||.1,zoomMax:t.camera.zoomMin||100,mode:t.camera.mode||"turntable",_ortho:_},T=t.axes||{},M=i(n,T);M.enable=!T.disable;var A=t.spikes||{},S=o(n,A),E=[],C=[],P=[],L=[],O=!0,I=!0,D=new Array(16),R=new Array(16),z={view:null,projection:D,model:R,_ortho:!1},N=(I=!0,[n.drawingBufferWidth,n.drawingBufferHeight]),j=t.cameraObject||r(e,k),F={gl:n,contextLost:!1,pixelRatio:t.pixelRatio||1,canvas:e,selection:b,camera:j,axes:M,axesPixels:null,spikes:S,bounds:y,objects:E,shape:N,aspect:t.aspectRatio||[1,1,1],pickRadius:t.pickRadius||10,zNear:t.zNear||.01,zFar:t.zFar||1e3,fovy:t.fovy||Math.PI/4,clearColor:t.clearColor||[0,0,0,0],autoResize:m(t.autoResize),autoBounds:m(t.autoBounds),autoScale:!!t.autoScale,autoCenter:m(t.autoCenter),clipToBounds:m(t.clipToBounds),snapToData:!!t.snapToData,onselect:t.onselect||null,onrender:t.onrender||null,onclick:t.onclick||null,cameraParams:z,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(t){this.aspect[0]=t.x,this.aspect[1]=t.y,this.aspect[2]=t.z,I=!0},setBounds:function(t,e){this.bounds[0][t]=e.min,this.bounds[1][t]=e.max},setClearColor:function(t){this.clearColor=t},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)}},B=[n.drawingBufferWidth/F.pixelRatio|0,n.drawingBufferHeight/F.pixelRatio|0];function U(){if(!F._stopped&&F.autoResize){var t=e.parentNode,n=1,r=1;t&&t!==document.body?(n=t.clientWidth,r=t.clientHeight):(n=window.innerWidth,r=window.innerHeight);var i=0|Math.ceil(n*F.pixelRatio),a=0|Math.ceil(r*F.pixelRatio);if(i!==e.width||a!==e.height){e.width=i,e.height=a;var o=e.style;o.position=o.position||"absolute",o.left="0px",o.top="0px",o.width=n+"px",o.height=r+"px",O=!0}}}function H(){for(var t=E.length,e=L.length,r=0;r0&&0===P[e-1];)P.pop(),L.pop().dispose()}function V(){if(F.contextLost)return!0;n.isContextLost()&&(F.contextLost=!0,F.mouseListener.enabled=!1,F.selection.object=null,F.oncontextloss&&F.oncontextloss())}F.autoResize&&U(),window.addEventListener("resize",U),F.update=function(t){F._stopped||(t=t||{},O=!0,I=!0)},F.add=function(t){F._stopped||(t.axes=M,E.push(t),C.push(-1),O=!0,I=!0,H())},F.remove=function(t){if(!F._stopped){var e=E.indexOf(t);e<0||(E.splice(e,1),C.pop(),O=!0,I=!0,H())}},F.dispose=function(){if(!F._stopped&&(F._stopped=!0,window.removeEventListener("resize",U),e.removeEventListener("webglcontextlost",V),F.mouseListener.enabled=!1,!F.contextLost)){M.dispose(),S.dispose();for(var t=0;tb.distance)continue;for(var c=0;c 1.0) {\n discard;\n }\n baseColor = mix(borderColor, color, step(radius, centerFraction));\n gl_FragColor = vec4(baseColor.rgb * baseColor.a, baseColor.a);\n }\n}\n"]),e.pickVertex=r(["precision mediump float;\n#define GLSLIFY 1\n\nattribute vec2 position;\nattribute vec4 pickId;\n\nuniform mat3 matrix;\nuniform float pointSize;\nuniform vec4 pickOffset;\n\nvarying vec4 fragId;\n\nvoid main() {\n vec3 hgPosition = matrix * vec3(position, 1);\n gl_Position = vec4(hgPosition.xy, 0, hgPosition.z);\n gl_PointSize = pointSize;\n\n vec4 id = pickId + pickOffset;\n id.y += floor(id.x / 256.0);\n id.x -= floor(id.x / 256.0) * 256.0;\n\n id.z += floor(id.y / 256.0);\n id.y -= floor(id.y / 256.0) * 256.0;\n\n id.w += floor(id.z / 256.0);\n id.z -= floor(id.z / 256.0) * 256.0;\n\n fragId = id;\n}\n"]),e.pickFragment=r(["precision mediump float;\n#define GLSLIFY 1\n\nvarying vec4 fragId;\n\nvoid main() {\n float radius = length(2.0 * gl_PointCoord.xy - 1.0);\n if(radius > 1.0) {\n discard;\n }\n gl_FragColor = fragId / 255.0;\n}\n"])},8271:function(t,e,n){"use strict";var r=n(5158),i=n(5827),a=n(5306),o=n(8023);function s(t,e,n,r,i){this.plot=t,this.offsetBuffer=e,this.pickBuffer=n,this.shader=r,this.pickShader=i,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}t.exports=function(t,e){var n=t.gl,a=i(n),l=i(n),c=r(n,o.pointVertex,o.pointFragment),u=r(n,o.pickVertex,o.pickFragment),f=new s(t,a,l,c,u);return f.update(e),t.addObject(f),f};var l=s.prototype;l.dispose=function(){this.shader.dispose(),this.pickShader.dispose(),this.offsetBuffer.dispose(),this.pickBuffer.dispose(),this.plot.removeObject(this)},l.update=function(t){var e;function n(e,n){return e in t?t[e]:n}t=t||{},this.sizeMin=n("sizeMin",.5),this.sizeMax=n("sizeMax",20),this.color=n("color",[1,0,0,1]).slice(),this.areaRatio=n("areaRatio",1),this.borderColor=n("borderColor",[0,0,0,1]).slice(),this.blend=n("blend",!1);var r=t.positions.length>>>1,i=t.positions instanceof Float32Array,o=t.idToIndex instanceof Int32Array&&t.idToIndex.length>=r,s=t.positions,l=i?s:a.mallocFloat32(s.length),c=o?t.idToIndex:a.mallocInt32(r);if(i||l.set(s),!o)for(l.set(s),e=0;e>>1;for(n=0;n=e[0]&&a<=e[2]&&o>=e[1]&&o<=e[3]&&r++}return r}(this.points,o),u=this.plot.pickPixelRatio*Math.max(Math.min(this.sizeMinCap,this.sizeMin),Math.min(this.sizeMax,this.sizeMax/Math.pow(c,.33333)));t[0]=2/s,t[4]=2/l,t[6]=-2*o[0]/s-1,t[7]=-2*o[1]/l-1,this.offsetBuffer.bind(),i.bind(),i.attributes.position.pointer(),i.uniforms.matrix=t,i.uniforms.color=this.color,i.uniforms.borderColor=this.borderColor,i.uniforms.pointCloud=u<5,i.uniforms.pointSize=u,i.uniforms.centerFraction=Math.min(1,Math.max(0,Math.sqrt(1-this.areaRatio))),r&&(e[0]=255&n,e[1]=n>>8&255,e[2]=n>>16&255,e[3]=n>>24&255,this.pickBuffer.bind(),i.attributes.pickId.pointer(a.UNSIGNED_BYTE),i.uniforms.pickOffset=e,this.pickOffset=n);var f=a.getParameter(a.BLEND),h=a.getParameter(a.DITHER);return f&&!this.blend&&a.disable(a.BLEND),h&&a.disable(a.DITHER),a.drawArrays(a.POINTS,0,this.pointCount),f&&!this.blend&&a.enable(a.BLEND),h&&a.enable(a.DITHER),n+this.pointCount}}(),l.draw=l.unifiedDraw,l.drawPick=l.unifiedDraw,l.pick=function(t,e,n){var r=this.pickOffset,i=this.pointCount;if(n=r+i)return null;var a=n-r,o=this.points;return{object:this,pointId:a,dataCoord:[o[2*a],o[2*a+1]]}}},6093:function(t){t.exports=function(t,e,n,r){var i,a,o,s,l,c=e[0],u=e[1],f=e[2],h=e[3],d=n[0],p=n[1],g=n[2],v=n[3];return(a=c*d+u*p+f*g+h*v)<0&&(a=-a,d=-d,p=-p,g=-g,v=-v),1-a>1e-6?(i=Math.acos(a),o=Math.sin(i),s=Math.sin((1-r)*i)/o,l=Math.sin(r*i)/o):(s=1-r,l=r),t[0]=s*c+l*d,t[1]=s*u+l*p,t[2]=s*f+l*g,t[3]=s*h+l*v,t}},8240:function(t){"use strict";t.exports=function(t){return t||0===t?t.toString():""}},4123:function(t,e,n){"use strict";var r=n(875);t.exports=function(t,e,n){var a=i[e];if(a||(a=i[e]={}),t in a)return a[t];var o={textAlign:"center",textBaseline:"middle",lineHeight:1,font:e,lineSpacing:1.25,styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},triangles:!0},s=r(t,o);o.triangles=!1;var l,c,u=r(t,o);if(n&&1!==n){for(l=0;l max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 glyph;\nattribute vec4 id;\n\nuniform vec4 highlightId;\nuniform float highlightScale;\nuniform mat4 model, view, projection;\nuniform vec3 clipBounds[2];\n\nvarying vec4 interpColor;\nvarying vec4 pickId;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0,0,0,0);\n } else {\n float scale = 1.0;\n if(distance(highlightId, id) < 0.0001) {\n scale = highlightScale;\n }\n\n vec4 worldPosition = model * vec4(position, 1);\n vec4 viewPosition = view * worldPosition;\n viewPosition = viewPosition / viewPosition.w;\n vec4 clipPosition = projection * (viewPosition + scale * vec4(glyph.x, -glyph.y, 0, 0));\n\n gl_Position = clipPosition;\n interpColor = color;\n pickId = id;\n dataCoordinate = position;\n }\n}"]),o=i(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 glyph;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\nuniform vec2 screenSize;\nuniform vec3 clipBounds[2];\nuniform float highlightScale, pixelRatio;\nuniform vec4 highlightId;\n\nvarying vec4 interpColor;\nvarying vec4 pickId;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0,0,0,0);\n } else {\n float scale = pixelRatio;\n if(distance(highlightId.bgr, id.bgr) < 0.001) {\n scale *= highlightScale;\n }\n\n vec4 worldPosition = model * vec4(position, 1.0);\n vec4 viewPosition = view * worldPosition;\n vec4 clipPosition = projection * viewPosition;\n clipPosition /= clipPosition.w;\n\n gl_Position = clipPosition + vec4(screenSize * scale * vec2(glyph.x, -glyph.y), 0.0, 0.0);\n interpColor = color;\n pickId = id;\n dataCoordinate = position;\n }\n}"]),s=i(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 glyph;\nattribute vec4 id;\n\nuniform float highlightScale;\nuniform vec4 highlightId;\nuniform vec3 axes[2];\nuniform mat4 model, view, projection;\nuniform vec2 screenSize;\nuniform vec3 clipBounds[2];\nuniform float scale, pixelRatio;\n\nvarying vec4 interpColor;\nvarying vec4 pickId;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0,0,0,0);\n } else {\n float lscale = pixelRatio * scale;\n if(distance(highlightId, id) < 0.0001) {\n lscale *= highlightScale;\n }\n\n vec4 clipCenter = projection * view * model * vec4(position, 1);\n vec3 dataPosition = position + 0.5*lscale*(axes[0] * glyph.x + axes[1] * glyph.y) * clipCenter.w * screenSize.y;\n vec4 clipPosition = projection * view * model * vec4(dataPosition, 1);\n\n gl_Position = clipPosition;\n interpColor = color;\n pickId = id;\n dataCoordinate = dataPosition;\n }\n}\n"]),l=i(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 fragClipBounds[2];\nuniform float opacity;\n\nvarying vec4 interpColor;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (\n outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate) ||\n interpColor.a * opacity == 0.\n ) discard;\n gl_FragColor = interpColor * opacity;\n}\n"]),c=i(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 fragClipBounds[2];\nuniform float pickGroup;\n\nvarying vec4 pickId;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate)) discard;\n\n gl_FragColor = vec4(pickGroup, pickId.bgr);\n}"]),u=[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"glyph",type:"vec2"},{name:"id",type:"vec4"}],f={vertex:a,fragment:l,attributes:u},h={vertex:o,fragment:l,attributes:u},d={vertex:s,fragment:l,attributes:u},p={vertex:a,fragment:c,attributes:u},g={vertex:o,fragment:c,attributes:u},v={vertex:s,fragment:c,attributes:u};function m(t,e){var n=r(t,e),i=n.attributes;return i.position.location=0,i.color.location=1,i.glyph.location=2,i.id.location=3,n}e.createPerspective=function(t){return m(t,f)},e.createOrtho=function(t){return m(t,h)},e.createProject=function(t){return m(t,d)},e.createPickPerspective=function(t){return m(t,p)},e.createPickOrtho=function(t){return m(t,g)},e.createPickProject=function(t){return m(t,v)}},2182:function(t,e,n){"use strict";var r=n(3596),i=n(5827),a=n(2944),o=n(5306),s=n(104),l=n(9282),c=n(4123),u=n(8240),f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function h(t,e){var n=t[0],r=t[1],i=t[2],a=t[3];return t[0]=e[0]*n+e[4]*r+e[8]*i+e[12]*a,t[1]=e[1]*n+e[5]*r+e[9]*i+e[13]*a,t[2]=e[2]*n+e[6]*r+e[10]*i+e[14]*a,t[3]=e[3]*n+e[7]*r+e[11]*i+e[15]*a,t}function d(t,e,n,r){return h(r,r),h(r,r),h(r,r)}function p(t,e){this.index=t,this.dataCoordinate=this.position=e}function g(t){return!0===t||t>1?1:t}function v(t,e,n,r,i,a,o,s,l,c,u,f){this.gl=t,this.pixelRatio=1,this.shader=e,this.orthoShader=n,this.projectShader=r,this.pointBuffer=i,this.colorBuffer=a,this.glyphBuffer=o,this.idBuffer=s,this.vao=l,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[2/3,2/3,2/3],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=c,this.pickOrthoShader=u,this.pickProjectShader=f,this.points=[],this._selectResult=new p(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}t.exports=function(t){var e=t.gl,n=l.createPerspective(e),r=l.createOrtho(e),o=l.createProject(e),s=l.createPickPerspective(e),c=l.createPickOrtho(e),u=l.createPickProject(e),f=i(e),h=i(e),d=i(e),p=i(e),g=a(e,[{buffer:f,size:3,type:e.FLOAT},{buffer:h,size:4,type:e.FLOAT},{buffer:d,size:2,type:e.FLOAT},{buffer:p,size:4,type:e.UNSIGNED_BYTE,normalized:!0}]),m=new v(e,n,r,o,f,h,d,p,g,s,c,u);return m.update(t),m};var m=v.prototype;m.pickSlots=1,m.setPickBase=function(t){this.pickId=t},m.isTransparent=function(){if(this.hasAlpha)return!0;for(var t=0;t<3;++t)if(this.axesProject[t]&&this.projectHasAlpha)return!0;return!1},m.isOpaque=function(){if(!this.hasAlpha)return!0;for(var t=0;t<3;++t)if(this.axesProject[t]&&!this.projectHasAlpha)return!0;return!1};var y=[0,0],b=[0,0,0],x=[0,0,0],w=[0,0,0,1],_=[0,0,0,1],k=f.slice(),T=[0,0,0],M=[[0,0,0],[0,0,0]];function A(t){return t[0]=t[1]=t[2]=0,t}function S(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=1,t}function E(t,e,n,r){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[n]=r,t}function C(t,e,n,r){var i,a=e.axesProject,o=e.gl,l=t.uniforms,c=n.model||f,u=n.view||f,h=n.projection||f,p=e.axesBounds,g=function(t){for(var e=M,n=0;n<2;++n)for(var r=0;r<3;++r)e[n][r]=Math.max(Math.min(t[n][r],1e8),-1e8);return e}(e.clipBounds);i=e.axes&&e.axes.lastCubeProps?e.axes.lastCubeProps.axis:[1,1,1],y[0]=2/o.drawingBufferWidth,y[1]=2/o.drawingBufferHeight,t.bind(),l.view=u,l.projection=h,l.screenSize=y,l.highlightId=e.highlightId,l.highlightScale=e.highlightScale,l.clipBounds=g,l.pickGroup=e.pickId/255,l.pixelRatio=r;for(var v=0;v<3;++v)if(a[v]){l.scale=e.projectScale[v],l.opacity=e.projectOpacity[v];for(var m=k,C=0;C<16;++C)m[C]=0;for(C=0;C<4;++C)m[5*C]=1;m[5*v]=0,i[v]<0?m[12+v]=p[0][v]:m[12+v]=p[1][v],s(m,c,m),l.model=m;var P=(v+1)%3,L=(v+2)%3,O=A(b),I=A(x);O[P]=1,I[L]=1;var D=d(0,0,0,S(w,O)),R=d(0,0,0,S(_,I));if(Math.abs(D[1])>Math.abs(R[1])){var z=D;D=R,R=z,z=O,O=I,I=z;var N=P;P=L,L=N}D[0]<0&&(O[P]=-1),R[1]>0&&(I[L]=-1);var j=0,F=0;for(C=0;C<4;++C)j+=Math.pow(c[4*P+C],2),F+=Math.pow(c[4*L+C],2);O[P]/=Math.sqrt(j),I[L]/=Math.sqrt(F),l.axes[0]=O,l.axes[1]=I,l.fragClipBounds[0]=E(T,g[0],v,-1e8),l.fragClipBounds[1]=E(T,g[1],v,1e8),e.vao.bind(),e.vao.draw(o.TRIANGLES,e.vertexCount),e.lineWidth>0&&(o.lineWidth(e.lineWidth*r),e.vao.draw(o.LINES,e.lineVertexCount,e.vertexCount)),e.vao.unbind()}}var P=[[-1e8,-1e8,-1e8],[1e8,1e8,1e8]];function L(t,e,n,r,i,a,o){var s=n.gl;if((a===n.projectHasAlpha||o)&&C(e,n,r,i),a===n.hasAlpha||o){t.bind();var l=t.uniforms;l.model=r.model||f,l.view=r.view||f,l.projection=r.projection||f,y[0]=2/s.drawingBufferWidth,y[1]=2/s.drawingBufferHeight,l.screenSize=y,l.highlightId=n.highlightId,l.highlightScale=n.highlightScale,l.fragClipBounds=P,l.clipBounds=n.axes.bounds,l.opacity=n.opacity,l.pickGroup=n.pickId/255,l.pixelRatio=i,n.vao.bind(),n.vao.draw(s.TRIANGLES,n.vertexCount),n.lineWidth>0&&(s.lineWidth(n.lineWidth*i),n.vao.draw(s.LINES,n.lineVertexCount,n.vertexCount)),n.vao.unbind()}}function O(t,e,n,i){var a;a=Array.isArray(t)?e=this.pointCount||e<0)return null;var n=this.points[e],r=this._selectResult;r.index=e;for(var i=0;i<3;++i)r.position[i]=r.dataCoordinate[i]=n[i];return r},m.highlight=function(t){if(t){var e=t.index,n=255&e,r=e>>8&255,i=e>>16&255;this.highlightId=[n/255,r/255,i/255,0]}else this.highlightId=[1,1,1,1]},m.update=function(t){if("perspective"in(t=t||{})&&(this.useOrtho=!t.perspective),"orthographic"in t&&(this.useOrtho=!!t.orthographic),"lineWidth"in t&&(this.lineWidth=t.lineWidth),"project"in t)if(Array.isArray(t.project))this.axesProject=t.project;else{var e=!!t.project;this.axesProject=[e,e,e]}if("projectScale"in t)if(Array.isArray(t.projectScale))this.projectScale=t.projectScale.slice();else{var n=+t.projectScale;this.projectScale=[n,n,n]}if(this.projectHasAlpha=!1,"projectOpacity"in t){Array.isArray(t.projectOpacity)?this.projectOpacity=t.projectOpacity.slice():(n=+t.projectOpacity,this.projectOpacity=[n,n,n]);for(var r=0;r<3;++r)this.projectOpacity[r]=g(this.projectOpacity[r]),this.projectOpacity[r]<1&&(this.projectHasAlpha=!0)}this.hasAlpha=!1,"opacity"in t&&(this.opacity=g(t.opacity),this.opacity<1&&(this.hasAlpha=!0)),this.dirty=!0;var i,a,s=t.position,l=t.font||"normal",c=t.alignment||[0,0];if(2===c.length)i=c[0],a=c[1];else for(i=[],a=[],r=0;r0){var I=0,D=b,R=[0,0,0,1],z=[0,0,0,1],N=Array.isArray(d)&&Array.isArray(d[0]),j=Array.isArray(m)&&Array.isArray(m[0]);t:for(r=0;r0?1-A[0][0]:W<0?1+A[1][0]:1,Y*=Y>0?1-A[0][1]:Y<0?1+A[1][1]:1],X=T.cells||[],K=T.positions||[];for(k=0;k0){var m=n*u;o.drawBox(f-m,h-m,d+m,h+m,a),o.drawBox(f-m,p-m,d+m,p+m,a),o.drawBox(f-m,h-m,f+m,p+m,a),o.drawBox(d-m,h-m,d+m,p+m,a)}}}},s.update=function(t){t=t||{},this.innerFill=!!t.innerFill,this.outerFill=!!t.outerFill,this.innerColor=(t.innerColor||[0,0,0,.5]).slice(),this.outerColor=(t.outerColor||[0,0,0,.5]).slice(),this.borderColor=(t.borderColor||[0,0,0,1]).slice(),this.borderWidth=t.borderWidth||0,this.selectBox=(t.selectBox||this.selectBox).slice()},s.dispose=function(){this.boxBuffer.dispose(),this.boxShader.dispose(),this.plot.removeOverlay(this)}},2611:function(t,e,n){"use strict";t.exports=function(t,e){var n=e[0],a=e[1],o=r(t,n,a,{}),s=i.mallocUint8(n*a*4);return new l(t,o,s)};var r=n(4234),i=n(5306),a=n(5050),o=n(2288).nextPow2;function s(t,e,n,r,i){this.coord=[t,e],this.id=n,this.value=r,this.distance=i}function l(t,e,n){this.gl=t,this.fbo=e,this.buffer=n,this._readTimeout=null;var r=this;this._readCallback=function(){r.gl&&(e.bind(),t.readPixels(0,0,e.shape[0],e.shape[1],t.RGBA,t.UNSIGNED_BYTE,r.buffer),r._readTimeout=null)}}var c=l.prototype;Object.defineProperty(c,"shape",{get:function(){return this.gl?this.fbo.shape.slice():[0,0]},set:function(t){if(this.gl){this.fbo.shape=t;var e=this.fbo.shape[0],n=this.fbo.shape[1];if(n*e*4>this.buffer.length){i.free(this.buffer);for(var r=this.buffer=i.mallocUint8(o(n*e*4)),a=0;an)for(t=n;te)for(t=e;t=0){for(var k=0|_.type.charAt(_.type.length-1),T=new Array(k),M=0;M=0;)A+=1;w[y]=A}var S=new Array(n.length);function E(){h.program=o.program(d,h._vref,h._fref,x,w);for(var t=0;t=0){if((p=h.charCodeAt(h.length-1)-48)<2||p>4)throw new r("","Invalid data type for attribute "+f+": "+h);s(t,e,d[0],i,p,a,f)}else{if(!(h.indexOf("mat")>=0))throw new r("","Unknown data type for attribute "+f+": "+h);var p;if((p=h.charCodeAt(h.length-1)-48)<2||p>4)throw new r("","Invalid data type for attribute "+f+": "+h);l(t,e,d,i,p,a,f)}}}return a};var r=n(9068);function i(t,e,n,r,i,a){this._gl=t,this._wrapper=e,this._index=n,this._locations=r,this._dimension=i,this._constFunc=a}var a=i.prototype;a.pointer=function(t,e,n,r){var i=this,a=i._gl,o=i._locations[i._index];a.vertexAttribPointer(o,i._dimension,t||a.FLOAT,!!e,n||0,r||0),a.enableVertexAttribArray(o)},a.set=function(t,e,n,r){return this._constFunc(this._locations[this._index],t,e,n,r)},Object.defineProperty(a,"location",{get:function(){return this._locations[this._index]},set:function(t){return t!==this._locations[this._index]&&(this._locations[this._index]=0|t,this._wrapper.program=null),0|t}});var o=[function(t,e,n){return void 0===n.length?t.vertexAttrib1f(e,n):t.vertexAttrib1fv(e,n)},function(t,e,n,r){return void 0===n.length?t.vertexAttrib2f(e,n,r):t.vertexAttrib2fv(e,n)},function(t,e,n,r,i){return void 0===n.length?t.vertexAttrib3f(e,n,r,i):t.vertexAttrib3fv(e,n)},function(t,e,n,r,i,a){return void 0===n.length?t.vertexAttrib4f(e,n,r,i,a):t.vertexAttrib4fv(e,n)}];function s(t,e,n,r,a,s,l){var c=o[a],u=new i(t,e,n,r,a,c);Object.defineProperty(s,l,{set:function(e){return t.disableVertexAttribArray(r[n]),c(t,r[n],e),e},get:function(){return u},enumerable:!0})}function l(t,e,n,r,i,a,o){for(var l=new Array(i),c=new Array(i),u=0;u4)throw new i("","Invalid uniform dimension type for matrix "+name+": "+y);t["uniformMatrix"+m+"fv"](s[f],!1,h);break}throw new i("","Unknown uniform data type for "+name+": "+y)}if((m=y.charCodeAt(y.length-1)-48)<2||m>4)throw new i("","Invalid data type");switch(y.charAt(0)){case"b":case"i":t["uniform"+m+"iv"](s[f],h);break;case"v":t["uniform"+m+"fv"](s[f],h);break;default:throw new i("","Unrecognized data type for vector "+name+": "+y)}}}}}}function c(t,e){if("object"!==typeof e)return[[t,e]];var n=[];for(var r in e){var i=e[r],a=t;parseInt(r)+""===r?a+="["+r+"]":a+="."+r,"object"===typeof i?n.push.apply(n,c(a,i)):n.push([a,i])}return n}function u(t,e,r){if("object"===typeof r){var c=f(r);Object.defineProperty(t,e,{get:a(c),set:l(r),enumerable:!0,configurable:!1})}else s[r]?Object.defineProperty(t,e,{get:(u=r,function(t,e,n){return t.getUniform(e.program,n[u])}),set:l(r),enumerable:!0,configurable:!1}):t[e]=function(t){switch(t){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":case"float":return 0;default:var e=t.indexOf("vec");if(0<=e&&e<=1&&t.length===4+e){if((n=t.charCodeAt(t.length-1)-48)<2||n>4)throw new i("","Invalid data type");return"b"===t.charAt(0)?o(n,!1):o(n,0)}if(0===t.indexOf("mat")&&4===t.length){var n;if((n=t.charCodeAt(t.length-1)-48)<2||n>4)throw new i("","Invalid uniform dimension type for matrix "+name+": "+t);return o(n*n,0)}throw new i("","Unknown uniform data type for "+name+": "+t)}}(n[r].type);var u}function f(t){var e;if(Array.isArray(t)){e=new Array(t.length);for(var n=0;n1){s[0]in a||(a[s[0]]=[]),a=a[s[0]];for(var l=1;l1)for(var l=0;l 0 U ||b|| > 0.\n // Assign z = 0, x = -b, y = a:\n // a*-b + b*a + c*0 = -ba + ba + 0 = 0\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\n return normalize(vec3(-v.y, v.x, 0.0));\n } else {\n return normalize(vec3(0.0, v.z, -v.y));\n }\n}\n\n// Calculate the tube vertex and normal at the given index.\n//\n// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.\n//\n// Each tube segment is made up of a ring of vertices.\n// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.\n// The indexes of tube segments run from 0 to 8.\n//\nvec3 getTubePosition(vec3 d, float index, out vec3 normal) {\n float segmentCount = 8.0;\n\n float angle = 2.0 * 3.14159 * (index / segmentCount);\n\n vec3 u = getOrthogonalVector(d);\n vec3 v = normalize(cross(u, d));\n\n vec3 x = u * cos(angle) * length(d);\n vec3 y = v * sin(angle) * length(d);\n vec3 v3 = x + y;\n\n normal = normalize(v3);\n\n return v3;\n}\n\nattribute vec4 vector;\nattribute vec4 color, position;\nattribute vec2 uv;\n\nuniform float vectorScale, tubeScale;\nuniform mat4 model, view, projection, inverseModel;\nuniform vec3 eyePosition, lightPosition;\n\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n // Scale the vector magnitude to stay constant with\n // model & view changes.\n vec3 normal;\n vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);\n vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\n\n //Lighting geometry parameters\n vec4 cameraCoordinate = view * tubePosition;\n cameraCoordinate.xyz /= cameraCoordinate.w;\n f_lightDirection = lightPosition - cameraCoordinate.xyz;\n f_eyeDirection = eyePosition - cameraCoordinate.xyz;\n f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);\n\n // vec4 m_position = model * vec4(tubePosition, 1.0);\n vec4 t_position = view * tubePosition;\n gl_Position = projection * t_position;\n\n f_color = color;\n f_data = tubePosition.xyz;\n f_position = position.xyz;\n f_uv = uv;\n}\n"]),a=r(["#extension GL_OES_standard_derivatives : enable\n\nprecision highp float;\n#define GLSLIFY 1\n\nfloat beckmannDistribution(float x, float roughness) {\n float NdotH = max(x, 0.0001);\n float cos2Alpha = NdotH * NdotH;\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\n float roughness2 = roughness * roughness;\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\n return exp(tan2Alpha / roughness2) / denom;\n}\n\nfloat cookTorranceSpecular(\n vec3 lightDirection,\n vec3 viewDirection,\n vec3 surfaceNormal,\n float roughness,\n float fresnel) {\n\n float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);\n float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);\n\n //Half angle vector\n vec3 H = normalize(lightDirection + viewDirection);\n\n //Geometric term\n float NdotH = max(dot(surfaceNormal, H), 0.0);\n float VdotH = max(dot(viewDirection, H), 0.000001);\n float LdotH = max(dot(lightDirection, H), 0.000001);\n float G1 = (2.0 * NdotH * VdotN) / VdotH;\n float G2 = (2.0 * NdotH * LdotN) / LdotH;\n float G = min(1.0, min(G1, G2));\n \n //Distribution term\n float D = beckmannDistribution(NdotH, roughness);\n\n //Fresnel term\n float F = pow(1.0 - VdotN, fresnel);\n\n //Multiply terms and done\n return G * F * D / max(3.14159265 * VdotN, 0.000001);\n}\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\nuniform sampler2D texture;\n\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n vec3 N = normalize(f_normal);\n vec3 L = normalize(f_lightDirection);\n vec3 V = normalize(f_eyeDirection);\n\n if(gl_FrontFacing) {\n N = -N;\n }\n\n float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\n\n vec4 surfaceColor = f_color * texture2D(texture, f_uv);\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\n\n gl_FragColor = litColor * opacity;\n}\n"]),o=r(["precision highp float;\n\nprecision highp float;\n#define GLSLIFY 1\n\nvec3 getOrthogonalVector(vec3 v) {\n // Return up-vector for only-z vector.\n // 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).\n // From the above if-statement we have ||a|| > 0 U ||b|| > 0.\n // Assign z = 0, x = -b, y = a:\n // a*-b + b*a + c*0 = -ba + ba + 0 = 0\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\n return normalize(vec3(-v.y, v.x, 0.0));\n } else {\n return normalize(vec3(0.0, v.z, -v.y));\n }\n}\n\n// Calculate the tube vertex and normal at the given index.\n//\n// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.\n//\n// Each tube segment is made up of a ring of vertices.\n// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.\n// The indexes of tube segments run from 0 to 8.\n//\nvec3 getTubePosition(vec3 d, float index, out vec3 normal) {\n float segmentCount = 8.0;\n\n float angle = 2.0 * 3.14159 * (index / segmentCount);\n\n vec3 u = getOrthogonalVector(d);\n vec3 v = normalize(cross(u, d));\n\n vec3 x = u * cos(angle) * length(d);\n vec3 y = v * sin(angle) * length(d);\n vec3 v3 = x + y;\n\n normal = normalize(v3);\n\n return v3;\n}\n\nattribute vec4 vector;\nattribute vec4 position;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\nuniform float tubeScale;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n vec3 normal;\n vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);\n vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\n\n gl_Position = projection * view * tubePosition;\n f_id = id;\n f_position = position.xyz;\n}\n"]),s=r(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float pickId;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n\n gl_FragColor = vec4(pickId, f_id.xyz);\n}"]);e.meshShader={vertex:i,fragment:a,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec4"}]},e.pickShader={vertex:o,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec4"}]}},7307:function(t,e,n){"use strict";var r=n(2858),i=n(4020),a=["xyz","xzy","yxz","yzx","zxy","zyx"],o=function(t,e,n,a){for(var o=0,s=0;s0)for(k=0;k<8;k++){var T=(k+1)%8;c.push(h[k],d[k],d[T],d[T],h[T],h[k]),f.push(y,m,m,m,y,y),p.push(g,v,v,v,g,g);var M=c.length;u.push([M-6,M-5,M-4],[M-3,M-2,M-1])}var A=h;h=d,d=A;var S=y;y=m,m=S;var E=g;g=v,v=E}return{positions:c,cells:u,vectors:f,vertexIntensity:p}}(t,n,a,o)})),f=[],h=[],d=[],p=[];for(s=0;se)return n-1}return n},l=function(t,e,n){return tn?n:t},c=function(t){var e=1/0;t.sort((function(t,e){return t-e}));for(var n=t.length,r=1;rf-1||y>h-1||b>d-1)return r.create();var x,w,_,k,T,M,A=a[0][p],S=a[0][m],E=a[1][g],C=a[1][y],P=a[2][v],L=(o-A)/(S-A),O=(c-E)/(C-E),I=(u-P)/(a[2][b]-P);switch(isFinite(L)||(L=.5),isFinite(O)||(O=.5),isFinite(I)||(I=.5),n.reversedX&&(p=f-1-p,m=f-1-m),n.reversedY&&(g=h-1-g,y=h-1-y),n.reversedZ&&(v=d-1-v,b=d-1-b),n.filled){case 5:T=v,M=b,_=g*d,k=y*d,x=p*d*h,w=m*d*h;break;case 4:T=v,M=b,x=p*d,w=m*d,_=g*d*f,k=y*d*f;break;case 3:_=g,k=y,T=v*h,M=b*h,x=p*h*d,w=m*h*d;break;case 2:_=g,k=y,x=p*h,w=m*h,T=v*h*f,M=b*h*f;break;case 1:x=p,w=m,T=v*f,M=b*f,_=g*f*d,k=y*f*d;break;default:x=p,w=m,_=g*f,k=y*f,T=v*f*h,M=b*f*h}var D=i[x+_+T],R=i[x+_+M],z=i[x+k+T],N=i[x+k+M],j=i[w+_+T],F=i[w+_+M],B=i[w+k+T],U=i[w+k+M],H=r.create(),V=r.create(),q=r.create(),G=r.create();r.lerp(H,D,j,L),r.lerp(V,R,F,L),r.lerp(q,z,B,L),r.lerp(G,N,U,L);var W=r.create(),Y=r.create();r.lerp(W,H,q,O),r.lerp(Y,V,G,O);var $=r.create();return r.lerp($,W,Y,I),$}(e,t,d)},g=t.getDivergence||function(t,e){var n=r.create(),i=1e-4;r.add(n,t,[i,0,0]);var a=p(n);r.subtract(a,a,e),r.scale(a,a,1/i),r.add(n,t,[0,i,0]);var o=p(n);r.subtract(o,o,e),r.scale(o,o,1/i),r.add(n,t,[0,0,i]);var s=p(n);return r.subtract(s,s,e),r.scale(s,s,1/i),r.add(n,a,o),r.add(n,n,s),n},v=[],m=e[0][0],y=e[0][1],b=e[0][2],x=e[1][0],w=e[1][1],_=e[1][2],k=function(t){var e=t[0],n=t[1],r=t[2];return!(ex||nw||r_)},T=10*r.distance(e[0],e[1])/i,M=T*T,A=1,S=0,E=n.length;E>1&&(A=function(t){for(var e=[],n=[],r=[],i={},a={},o={},s=t.length,l=0;lS&&(S=N),R.push(N),v.push({points:L,velocities:O,divergences:R});for(var j=0;j<100*i&&L.lengthM&&r.scale(F,F,T/Math.sqrt(B)),r.add(F,F,P),I=p(F),r.squaredDistance(D,F)-M>-1e-4*M&&(L.push(F),D=F,O.push(I),z=g(F,I),N=r.length(z),isFinite(N)&&N>S&&(S=N),R.push(N)),P=F}}var U=o(v,t.colormap,S,A);return f?U.tubeScale=f:(0===S&&(S=1),U.tubeScale=.5*u*A/S),U};var u=n(9578),f=n(1140).createMesh;t.exports.createTubeMesh=function(t,e){return f(t,e,{shaders:u,traceType:"streamtube"})}},9054:function(t,e,n){var r=n(5158),i=n(6832),a=i(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec4 uv;\nattribute vec3 f;\nattribute vec3 normal;\n\nuniform vec3 objectOffset;\nuniform mat4 model, view, projection, inverseModel;\nuniform vec3 lightPosition, eyePosition;\nuniform sampler2D colormap;\n\nvarying float value, kill;\nvarying vec3 worldCoordinate;\nvarying vec2 planeCoordinate;\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\nvarying vec4 vColor;\n\nvoid main() {\n vec3 localCoordinate = vec3(uv.zw, f.x);\n worldCoordinate = objectOffset + localCoordinate;\n vec4 worldPosition = model * vec4(worldCoordinate, 1.0);\n vec4 clipPosition = projection * view * worldPosition;\n gl_Position = clipPosition;\n kill = f.y;\n value = f.z;\n planeCoordinate = uv.xy;\n\n vColor = texture2D(colormap, vec2(value, value));\n\n //Lighting geometry parameters\n vec4 cameraCoordinate = view * worldPosition;\n cameraCoordinate.xyz /= cameraCoordinate.w;\n lightDirection = lightPosition - cameraCoordinate.xyz;\n eyeDirection = eyePosition - cameraCoordinate.xyz;\n surfaceNormal = normalize((vec4(normal,0) * inverseModel).xyz);\n}\n"]),o=i(["precision highp float;\n#define GLSLIFY 1\n\nfloat beckmannDistribution(float x, float roughness) {\n float NdotH = max(x, 0.0001);\n float cos2Alpha = NdotH * NdotH;\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\n float roughness2 = roughness * roughness;\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\n return exp(tan2Alpha / roughness2) / denom;\n}\n\nfloat beckmannSpecular(\n vec3 lightDirection,\n vec3 viewDirection,\n vec3 surfaceNormal,\n float roughness) {\n return beckmannDistribution(dot(surfaceNormal, normalize(lightDirection + viewDirection)), roughness);\n}\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 lowerBound, upperBound;\nuniform float contourTint;\nuniform vec4 contourColor;\nuniform sampler2D colormap;\nuniform vec3 clipBounds[2];\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\nuniform float vertexColor;\n\nvarying float value, kill;\nvarying vec3 worldCoordinate;\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\nvarying vec4 vColor;\n\nvoid main() {\n if (\n kill > 0.0 ||\n vColor.a == 0.0 ||\n outOfRange(clipBounds[0], clipBounds[1], worldCoordinate)\n ) discard;\n\n vec3 N = normalize(surfaceNormal);\n vec3 V = normalize(eyeDirection);\n vec3 L = normalize(lightDirection);\n\n if(gl_FrontFacing) {\n N = -N;\n }\n\n float specular = max(beckmannSpecular(L, V, N, roughness), 0.);\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\n\n //decide how to interpolate color \u2014 in vertex or in fragment\n vec4 surfaceColor =\n step(vertexColor, .5) * texture2D(colormap, vec2(value, value)) +\n step(.5, vertexColor) * vColor;\n\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\n\n gl_FragColor = mix(litColor, contourColor, contourTint) * opacity;\n}\n"]),s=i(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec4 uv;\nattribute float f;\n\nuniform vec3 objectOffset;\nuniform mat3 permutation;\nuniform mat4 model, view, projection;\nuniform float height, zOffset;\nuniform sampler2D colormap;\n\nvarying float value, kill;\nvarying vec3 worldCoordinate;\nvarying vec2 planeCoordinate;\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\nvarying vec4 vColor;\n\nvoid main() {\n vec3 dataCoordinate = permutation * vec3(uv.xy, height);\n worldCoordinate = objectOffset + dataCoordinate;\n vec4 worldPosition = model * vec4(worldCoordinate, 1.0);\n\n vec4 clipPosition = projection * view * worldPosition;\n clipPosition.z += zOffset;\n\n gl_Position = clipPosition;\n value = f + objectOffset.z;\n kill = -1.0;\n planeCoordinate = uv.zw;\n\n vColor = texture2D(colormap, vec2(value, value));\n\n //Don't do lighting for contours\n surfaceNormal = vec3(1,0,0);\n eyeDirection = vec3(0,1,0);\n lightDirection = vec3(0,0,1);\n}\n"]),l=i(["precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec2 shape;\nuniform vec3 clipBounds[2];\nuniform float pickId;\n\nvarying float value, kill;\nvarying vec3 worldCoordinate;\nvarying vec2 planeCoordinate;\nvarying vec3 surfaceNormal;\n\nvec2 splitFloat(float v) {\n float vh = 255.0 * v;\n float upper = floor(vh);\n float lower = fract(vh);\n return vec2(upper / 255.0, floor(lower * 16.0) / 16.0);\n}\n\nvoid main() {\n if ((kill > 0.0) ||\n (outOfRange(clipBounds[0], clipBounds[1], worldCoordinate))) discard;\n\n vec2 ux = splitFloat(planeCoordinate.x / shape.x);\n vec2 uy = splitFloat(planeCoordinate.y / shape.y);\n gl_FragColor = vec4(pickId, ux.x, uy.x, ux.y + (uy.y/16.0));\n}\n"]);e.createShader=function(t){var e=r(t,a,o,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e.attributes.normal.location=2,e},e.createPickShader=function(t){var e=r(t,a,l,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e.attributes.normal.location=2,e},e.createContourShader=function(t){var e=r(t,s,o,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e},e.createPickContourShader=function(t){var e=r(t,s,l,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e}},3754:function(t,e,n){"use strict";t.exports=function(t){var e=t.gl,n=y(e),r=x(e),s=b(e),l=w(e),c=i(e),u=a(e,[{buffer:c,size:4,stride:_,offset:0},{buffer:c,size:3,stride:_,offset:16},{buffer:c,size:3,stride:_,offset:28}]),f=i(e),h=a(e,[{buffer:f,size:4,stride:20,offset:0},{buffer:f,size:1,stride:20,offset:16}]),d=i(e),p=a(e,[{buffer:d,size:2,type:e.FLOAT}]),g=o(e,1,S,e.RGBA,e.UNSIGNED_BYTE);g.minFilter=e.LINEAR,g.magFilter=e.LINEAR;var v=new E(e,[0,0],[[0,0,0],[0,0,0]],n,r,c,u,g,s,l,f,h,d,p,[0,0,0]),m={levels:[[],[],[]]};for(var k in t)m[k]=t[k];return m.colormap=m.colormap||"jet",v.update(m),v};var r=n(2288),i=n(5827),a=n(2944),o=n(8931),s=n(5306),l=n(9156),c=n(7498),u=n(7382),f=n(5050),h=n(4162),d=n(104),p=n(7437),g=n(5070),v=n(9144),m=n(9054),y=m.createShader,b=m.createContourShader,x=m.createPickShader,w=m.createPickContourShader,_=40,k=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],T=[[0,0],[0,1],[1,0],[1,1],[1,0],[0,1]],M=[[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 A(t,e,n,r,i){this.position=t,this.index=e,this.uv=n,this.level=r,this.dataCoordinate=i}!function(){for(var t=0;t<3;++t){var e=M[t],n=(t+2)%3;e[(t+1)%3+0]=1,e[n+3]=1,e[t+6]=1}}();var S=256;function E(t,e,n,r,i,a,o,l,c,u,h,d,p,g,v){this.gl=t,this.shape=e,this.bounds=n,this.objectOffset=v,this.intensityBounds=[],this._shader=r,this._pickShader=i,this._coordinateBuffer=a,this._vao=o,this._colorMap=l,this._contourShader=c,this._contourPickShader=u,this._contourBuffer=h,this._contourVAO=d,this._contourOffsets=[[],[],[]],this._contourCounts=[[],[],[]],this._vertexCount=0,this._pickResult=new A([0,0,0],[0,0],[0,0],[0,0,0],[0,0,0]),this._dynamicBuffer=p,this._dynamicVAO=g,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=[f(s.mallocFloat(1024),[0,0]),f(s.mallocFloat(1024),[0,0]),f(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 C=E.prototype;C.genColormap=function(t,e){var n=!1,r=u([l({colormap:t,nshades:S,format:"rgba"}).map((function(t,r){var i=e?function(t,e){if(!e)return 1;if(!e.length)return 1;for(var n=0;nt&&n>0){var r=(e[n][0]-t)/(e[n][0]-e[n-1][0]);return e[n][1]*(1-r)+r*e[n-1][1]}}return 1}(r/255,e):t[3];return i<1&&(n=!0),[t[0],t[1],t[2],255*i]}))]);return c.divseq(r,255),this.hasAlphaScale=n,r},C.isTransparent=function(){return this.opacity<1||this.hasAlphaScale},C.isOpaque=function(){return!this.isTransparent()},C.pickSlots=1,C.setPickBase=function(t){this.pickId=t};var P=[0,0,0],L={showSurface:!1,showContour:!1,projections:[k.slice(),k.slice(),k.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function O(t,e){var n,r,i,a=e.axes&&e.axes.lastCubeProps.axis||P,o=e.showSurface,s=e.showContour;for(n=0;n<3;++n)for(o=o||e.surfaceProject[n],r=0;r<3;++r)s=s||e.contourProject[n][r];for(n=0;n<3;++n){var l=L.projections[n];for(r=0;r<16;++r)l[r]=0;for(r=0;r<4;++r)l[5*r]=1;l[5*n]=0,l[12+n]=e.axesBounds[+(a[n]>0)][n],d(l,t.model,l);var c=L.clipBounds[n];for(i=0;i<2;++i)for(r=0;r<3;++r)c[i][r]=t.clipBounds[i][r];c[0][n]=-1e8,c[1][n]=1e8}return L.showSurface=o,L.showContour=s,L}var I={model:k,view:k,projection:k,inverseModel:k.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},D=k.slice(),R=[1,0,0,0,1,0,0,0,1];function z(t,e){t=t||{};var n=this.gl;n.disable(n.CULL_FACE),this._colorMap.bind(0);var r=I;r.model=t.model||k,r.view=t.view||k,r.projection=t.projection||k,r.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],r.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],r.objectOffset=this.objectOffset,r.contourColor=this.contourColor[0],r.inverseModel=p(r.inverseModel,r.model);for(var i=0;i<2;++i)for(var a=r.clipBounds[i],o=0;o<3;++o)a[o]=Math.min(Math.max(this.clipBounds[i][o],-1e8),1e8);r.kambient=this.ambientLight,r.kdiffuse=this.diffuseLight,r.kspecular=this.specularLight,r.roughness=this.roughness,r.fresnel=this.fresnel,r.opacity=this.opacity,r.height=0,r.permutation=R,r.vertexColor=this.vertexColor;var s=D;for(d(s,r.view,r.model),d(s,r.projection,s),p(s,s),i=0;i<3;++i)r.eyePosition[i]=s[12+i]/s[15];var l=s[15];for(i=0;i<3;++i)l+=this.lightPosition[i]*s[4*i+3];for(i=0;i<3;++i){var c=s[12+i];for(o=0;o<3;++o)c+=s[4*o+i]*this.lightPosition[o];r.lightPosition[i]=c/l}var u=O(r,this);if(u.showSurface){for(this._shader.bind(),this._shader.uniforms=r,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(n.TRIANGLES,this._vertexCount),i=0;i<3;++i)this.surfaceProject[i]&&this.vertexCount&&(this._shader.uniforms.model=u.projections[i],this._shader.uniforms.clipBounds=u.clipBounds[i],this._vao.draw(n.TRIANGLES,this._vertexCount));this._vao.unbind()}if(u.showContour){var f=this._contourShader;r.kambient=1,r.kdiffuse=0,r.kspecular=0,r.opacity=1,f.bind(),f.uniforms=r;var h=this._contourVAO;for(h.bind(),i=0;i<3;++i)for(f.uniforms.permutation=M[i],n.lineWidth(this.contourWidth[i]*this.pixelRatio),o=0;o>4)/16)/255,i=Math.floor(r),a=r-i,o=e[1]*(t.value[1]+(15&t.value[2])/16)/255,s=Math.floor(o),l=o-s;i+=1,s+=1;var c=n.position;c[0]=c[1]=c[2]=0;for(var u=0;u<2;++u)for(var f=u?a:1-a,h=0;h<2;++h)for(var d=i+u,p=s+h,v=f*(h?l:1-l),m=0;m<3;++m)c[m]+=this._field[m].get(d,p)*v;for(var y=this._pickResult.level,b=0;b<3;++b)if(y[b]=g.le(this.contourLevels[b],c[b]),y[b]<0)this.contourLevels[b].length>0&&(y[b]=0);else if(y[b]Math.abs(w-c[b])&&(y[b]+=1)}for(n.index[0]=a<.5?i:i+1,n.index[1]=l<.5?s:s+1,n.uv[0]=r/e[0],n.uv[1]=o/e[1],m=0;m<3;++m)n.dataCoordinate[m]=this._field[m].get(n.index[0],n.index[1]);return n},C.padField=function(t,e){var n=e.shape.slice(),r=t.shape.slice();c.assign(t.lo(1,1).hi(n[0],n[1]),e),c.assign(t.lo(1).hi(n[0],1),e.hi(n[0],1)),c.assign(t.lo(1,r[1]-1).hi(n[0],1),e.lo(0,n[1]-1).hi(n[0],1)),c.assign(t.lo(0,1).hi(1,n[1]),e.hi(1)),c.assign(t.lo(r[0]-1,1).hi(1,n[1]),e.lo(n[0]-1)),t.set(0,0,e.get(0,0)),t.set(0,r[1]-1,e.get(0,n[1]-1)),t.set(r[0]-1,0,e.get(n[0]-1,0)),t.set(r[0]-1,r[1]-1,e.get(n[0]-1,n[1]-1))},C.update=function(t){t=t||{},this.objectOffset=t.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in t&&(this.contourWidth=j(t.contourWidth,Number)),"showContour"in t&&(this.showContour=j(t.showContour,Boolean)),"showSurface"in t&&(this.showSurface=!!t.showSurface),"contourTint"in t&&(this.contourTint=j(t.contourTint,Boolean)),"contourColor"in t&&(this.contourColor=B(t.contourColor)),"contourProject"in t&&(this.contourProject=j(t.contourProject,(function(t){return j(t,Boolean)}))),"surfaceProject"in t&&(this.surfaceProject=t.surfaceProject),"dynamicColor"in t&&(this.dynamicColor=B(t.dynamicColor)),"dynamicTint"in t&&(this.dynamicTint=j(t.dynamicTint,Number)),"dynamicWidth"in t&&(this.dynamicWidth=j(t.dynamicWidth,Number)),"opacity"in t&&(this.opacity=t.opacity),"opacityscale"in t&&(this.opacityscale=t.opacityscale),"colorBounds"in t&&(this.colorBounds=t.colorBounds),"vertexColor"in t&&(this.vertexColor=t.vertexColor?1:0),"colormap"in t&&this._colorMap.setPixels(this.genColormap(t.colormap,this.opacityscale));var e=t.field||t.coords&&t.coords[2]||null,n=!1;if(e||(e=this._field[2].shape[0]||this._field[2].shape[2]?this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):this._field[2].hi(0,0)),"field"in t||"coords"in t){var i=(e.shape[0]+2)*(e.shape[1]+2);i>this._field[2].data.length&&(s.freeFloat(this._field[2].data),this._field[2].data=s.mallocFloat(r.nextPow2(i))),this._field[2]=f(this._field[2].data,[e.shape[0]+2,e.shape[1]+2]),this.padField(this._field[2],e),this.shape=e.shape.slice();for(var a=this.shape,o=0;o<2;++o)this._field[2].size>this._field[o].data.length&&(s.freeFloat(this._field[o].data),this._field[o].data=s.mallocFloat(this._field[2].size)),this._field[o]=f(this._field[o].data,[a[0]+2,a[1]+2]);if(t.coords){var l=t.coords;if(!Array.isArray(l)||3!==l.length)throw new Error("gl-surface: invalid coordinates for x/y");for(o=0;o<2;++o){var c=l[o];for(m=0;m<2;++m)if(c.shape[m]!==a[m])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[o],c)}}else if(t.ticks){var u=t.ticks;if(!Array.isArray(u)||2!==u.length)throw new Error("gl-surface: invalid ticks");for(o=0;o<2;++o){var d=u[o];if((Array.isArray(d)||d.length)&&(d=f(d)),d.shape[0]!==a[o])throw new Error("gl-surface: invalid tick length");var p=f(d.data,a);p.stride[o]=d.stride[0],p.stride[1^o]=0,this.padField(this._field[o],p)}}else{for(o=0;o<2;++o){var g=[0,0];g[o]=1,this._field[o]=f(this._field[o].data,[a[0]+2,a[1]+2],g,0)}this._field[0].set(0,0,0);for(var m=0;m0){for(var bt=0;bt<5;++bt)J.pop();U-=1}continue t}J.push(rt[0],rt[1],ot[0],ot[1],rt[2]),U+=1}}nt.push(U)}this._contourOffsets[Q]=et,this._contourCounts[Q]=nt}var xt=s.mallocFloat(J.length);for(o=0;os||o[1]<0||o[1]>s)throw new Error("gl-texture2d: Invalid texture size");var l=p(o,e.stride.slice()),c=0;"float32"===n?c=t.FLOAT:"float64"===n?(c=t.FLOAT,l=!1,n="float32"):"uint8"===n?c=t.UNSIGNED_BYTE:(c=t.UNSIGNED_BYTE,l=!1,n="uint8");var f,d,v=0;if(2===o.length)v=t.LUMINANCE,o=[o[0],o[1],1],e=r(e.data,o,[e.stride[0],e.stride[1],1],e.offset);else{if(3!==o.length)throw new Error("gl-texture2d: Invalid shape for texture");if(1===o[2])v=t.ALPHA;else if(2===o[2])v=t.LUMINANCE_ALPHA;else if(3===o[2])v=t.RGB;else{if(4!==o[2])throw new Error("gl-texture2d: Invalid shape for pixel coords");v=t.RGBA}}c!==t.FLOAT||t.getExtension("OES_texture_float")||(c=t.UNSIGNED_BYTE,l=!1);var m=e.size;if(l)f=0===e.offset&&e.data.length===m?e.data:e.data.subarray(e.offset,e.offset+m);else{var y=[o[2],o[2]*o[0],1];d=a.malloc(m,n);var b=r(d,o,y,0);"float32"!==n&&"float64"!==n||c!==t.UNSIGNED_BYTE?i.assign(b,e):u(b,e),f=d.subarray(0,m)}var x=g(t);return t.texImage2D(t.TEXTURE_2D,0,v,o[0],o[1],0,v,c,f),l||a.free(d),new h(t,x,o[0],o[1],v,c)}(t,e)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")};var o=null,s=null,l=null;function c(t){return"undefined"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||"undefined"!=typeof HTMLImageElement&&t instanceof HTMLImageElement||"undefined"!=typeof HTMLVideoElement&&t instanceof HTMLVideoElement||"undefined"!=typeof ImageData&&t instanceof ImageData}var u=function(t,e){i.muls(t,e,255)};function f(t,e,n){var r=t.gl,i=r.getParameter(r.MAX_TEXTURE_SIZE);if(e<0||e>i||n<0||n>i)throw new Error("gl-texture2d: Invalid texture size");return t._shape=[e,n],t.bind(),r.texImage2D(r.TEXTURE_2D,0,t.format,e,n,0,t.format,t.type,null),t._mipLevels=[0],t}function h(t,e,n,r,i,a){this.gl=t,this.handle=e,this.format=i,this.type=a,this._shape=[n,r],this._mipLevels=[0],this._magFilter=t.NEAREST,this._minFilter=t.NEAREST,this._wrapS=t.CLAMP_TO_EDGE,this._wrapT=t.CLAMP_TO_EDGE,this._anisoSamples=1;var o=this,s=[this._wrapS,this._wrapT];Object.defineProperties(s,[{get:function(){return o._wrapS},set:function(t){return o.wrapS=t}},{get:function(){return o._wrapT},set:function(t){return o.wrapT=t}}]),this._wrapVector=s;var l=[this._shape[0],this._shape[1]];Object.defineProperties(l,[{get:function(){return o._shape[0]},set:function(t){return o.width=t}},{get:function(){return o._shape[1]},set:function(t){return o.height=t}}]),this._shapeVector=l}var d=h.prototype;function p(t,e){return 3===t.length?1===e[2]&&e[1]===t[0]*t[2]&&e[0]===t[2]:1===e[0]&&e[1]===t[0]}function g(t){var e=t.createTexture();return t.bindTexture(t.TEXTURE_2D,e),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),e}function v(t,e,n,r,i){var a=t.getParameter(t.MAX_TEXTURE_SIZE);if(e<0||e>a||n<0||n>a)throw new Error("gl-texture2d: Invalid texture shape");if(i===t.FLOAT&&!t.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var o=g(t);return t.texImage2D(t.TEXTURE_2D,0,r,e,n,0,r,i,null),new h(t,o,e,n,r,i)}Object.defineProperties(d,{minFilter:{get:function(){return this._minFilter},set:function(t){this.bind();var e=this.gl;if(this.type===e.FLOAT&&o.indexOf(t)>=0&&(e.getExtension("OES_texture_float_linear")||(t=e.NEAREST)),s.indexOf(t)<0)throw new Error("gl-texture2d: Unknown filter mode "+t);return e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,t),this._minFilter=t}},magFilter:{get:function(){return this._magFilter},set:function(t){this.bind();var e=this.gl;if(this.type===e.FLOAT&&o.indexOf(t)>=0&&(e.getExtension("OES_texture_float_linear")||(t=e.NEAREST)),s.indexOf(t)<0)throw new Error("gl-texture2d: Unknown filter mode "+t);return e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,t),this._magFilter=t}},mipSamples:{get:function(){return this._anisoSamples},set:function(t){var e=this._anisoSamples;if(this._anisoSamples=0|Math.max(t,1),e!==this._anisoSamples){var n=this.gl.getExtension("EXT_texture_filter_anisotropic");n&&this.gl.texParameterf(this.gl.TEXTURE_2D,n.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(t){if(this.bind(),l.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(),l.indexOf(t)<0)throw new Error("gl-texture2d: Unknown wrap mode "+t);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,t),this._wrapT=t}},wrap:{get:function(){return this._wrapVector},set:function(t){if(Array.isArray(t)||(t=[t,t]),2!==t.length)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var e=0;e<2;++e)if(l.indexOf(t[e])<0)throw new Error("gl-texture2d: Unknown wrap mode "+t);this._wrapS=t[0],this._wrapT=t[1];var n=this.gl;return this.bind(),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,this._wrapS),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,this._wrapT),t}},shape:{get:function(){return this._shapeVector},set:function(t){if(Array.isArray(t)){if(2!==t.length)throw new Error("gl-texture2d: Invalid texture shape")}else t=[0|t,0|t];return f(this,0|t[0],0|t[1]),[0|t[0],0|t[1]]}},width:{get:function(){return this._shape[0]},set:function(t){return f(this,t|=0,this._shape[1]),t}},height:{get:function(){return this._shape[1]},set:function(t){return t|=0,f(this,this._shape[0],t),t}}}),d.bind=function(t){var e=this.gl;return void 0!==t&&e.activeTexture(e.TEXTURE0+(0|t)),e.bindTexture(e.TEXTURE_2D,this.handle),void 0!==t?0|t:e.getParameter(e.ACTIVE_TEXTURE)-e.TEXTURE0},d.dispose=function(){this.gl.deleteTexture(this.handle)},d.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var t=Math.min(this._shape[0],this._shape[1]),e=0;t>0;++e,t>>>=1)this._mipLevels.indexOf(e)<0&&this._mipLevels.push(e)},d.setPixels=function(t,e,n,o){var s=this.gl;this.bind(),Array.isArray(e)?(o=n,n=0|e[1],e=0|e[0]):(e=e||0,n=n||0),o=o||0;var l=c(t)?t:t.raw;if(l)this._mipLevels.indexOf(o)<0?(s.texImage2D(s.TEXTURE_2D,0,this.format,this.format,this.type,l),this._mipLevels.push(o)):s.texSubImage2D(s.TEXTURE_2D,o,e,n,this.format,this.type,l);else{if(!(t.shape&&t.stride&&t.data))throw new Error("gl-texture2d: Unsupported data type");if(t.shape.length<2||e+t.shape[1]>this._shape[1]>>>o||n+t.shape[0]>this._shape[0]>>>o||e<0||n<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");!function(t,e,n,o,s,l,c,f){var h=f.dtype,d=f.shape.slice();if(d.length<2||d.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var g=0,v=0,m=p(d,f.stride.slice());if("float32"===h?g=t.FLOAT:"float64"===h?(g=t.FLOAT,m=!1,h="float32"):"uint8"===h?g=t.UNSIGNED_BYTE:(g=t.UNSIGNED_BYTE,m=!1,h="uint8"),2===d.length)v=t.LUMINANCE,d=[d[0],d[1],1],f=r(f.data,d,[f.stride[0],f.stride[1],1],f.offset);else{if(3!==d.length)throw new Error("gl-texture2d: Invalid shape for texture");if(1===d[2])v=t.ALPHA;else if(2===d[2])v=t.LUMINANCE_ALPHA;else if(3===d[2])v=t.RGB;else{if(4!==d[2])throw new Error("gl-texture2d: Invalid shape for pixel coords");v=t.RGBA}d[2]}if(v!==t.LUMINANCE&&v!==t.ALPHA||s!==t.LUMINANCE&&s!==t.ALPHA||(v=s),v!==s)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var y=f.size,b=c.indexOf(o)<0;if(b&&c.push(o),g===l&&m)0===f.offset&&f.data.length===y?b?t.texImage2D(t.TEXTURE_2D,o,s,d[0],d[1],0,s,l,f.data):t.texSubImage2D(t.TEXTURE_2D,o,e,n,d[0],d[1],s,l,f.data):b?t.texImage2D(t.TEXTURE_2D,o,s,d[0],d[1],0,s,l,f.data.subarray(f.offset,f.offset+y)):t.texSubImage2D(t.TEXTURE_2D,o,e,n,d[0],d[1],s,l,f.data.subarray(f.offset,f.offset+y));else{var x;x=l===t.FLOAT?a.mallocFloat32(y):a.mallocUint8(y);var w=r(x,d,[d[2],d[2]*d[0],1]);g===t.FLOAT&&l===t.UNSIGNED_BYTE?u(w,f):i.assign(w,f),b?t.texImage2D(t.TEXTURE_2D,o,s,d[0],d[1],0,s,l,x.subarray(0,y)):t.texSubImage2D(t.TEXTURE_2D,o,e,n,d[0],d[1],s,l,x.subarray(0,y)),l===t.FLOAT?a.freeFloat32(x):a.freeUint8(x)}}(s,e,n,o,this.format,this.type,this._mipLevels,t)}}},3056:function(t){"use strict";t.exports=function(t,e,n){e?e.bind():t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,null);var r=0|t.getParameter(t.MAX_VERTEX_ATTRIBS);if(n){if(n.length>r)throw new Error("gl-vao: Too many vertex attributes");for(var i=0;i1?0:Math.acos(s)};var r=n(5415),i=n(899),a=n(9305)},8827:function(t){t.exports=function(t,e){return t[0]=Math.ceil(e[0]),t[1]=Math.ceil(e[1]),t[2]=Math.ceil(e[2]),t}},7622:function(t){t.exports=function(t){var e=new Float32Array(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}},8782:function(t){t.exports=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}},8501:function(t){t.exports=function(){var t=new Float32Array(3);return t[0]=0,t[1]=0,t[2]=0,t}},903:function(t){t.exports=function(t,e,n){var r=e[0],i=e[1],a=e[2],o=n[0],s=n[1],l=n[2];return t[0]=i*l-a*s,t[1]=a*o-r*l,t[2]=r*s-i*o,t}},5981:function(t,e,n){t.exports=n(8288)},8288:function(t){t.exports=function(t,e){var n=e[0]-t[0],r=e[1]-t[1],i=e[2]-t[2];return Math.sqrt(n*n+r*r+i*i)}},8629:function(t,e,n){t.exports=n(7979)},7979:function(t){t.exports=function(t,e,n){return t[0]=e[0]/n[0],t[1]=e[1]/n[1],t[2]=e[2]/n[2],t}},9305:function(t){t.exports=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}},154:function(t){t.exports=1e-6},4932:function(t,e,n){t.exports=function(t,e){var n=t[0],i=t[1],a=t[2],o=e[0],s=e[1],l=e[2];return Math.abs(n-o)<=r*Math.max(1,Math.abs(n),Math.abs(o))&&Math.abs(i-s)<=r*Math.max(1,Math.abs(i),Math.abs(s))&&Math.abs(a-l)<=r*Math.max(1,Math.abs(a),Math.abs(l))};var r=n(154)},5777:function(t){t.exports=function(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]}},3306:function(t){t.exports=function(t,e){return t[0]=Math.floor(e[0]),t[1]=Math.floor(e[1]),t[2]=Math.floor(e[2]),t}},7447:function(t,e,n){t.exports=function(t,e,n,i,a,o){var s,l;for(e||(e=3),n||(n=0),l=i?Math.min(i*e+n,t.length):t.length,s=n;s0&&(a=1/Math.sqrt(a),t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a),t}},6660:function(t){t.exports=function(t,e){e=e||1;var n=2*Math.random()*Math.PI,r=2*Math.random()-1,i=Math.sqrt(1-r*r)*e;return t[0]=Math.cos(n)*i,t[1]=Math.sin(n)*i,t[2]=r*e,t}},392:function(t){t.exports=function(t,e,n,r){var i=n[1],a=n[2],o=e[1]-i,s=e[2]-a,l=Math.sin(r),c=Math.cos(r);return t[0]=e[0],t[1]=i+o*c-s*l,t[2]=a+o*l+s*c,t}},3222:function(t){t.exports=function(t,e,n,r){var i=n[0],a=n[2],o=e[0]-i,s=e[2]-a,l=Math.sin(r),c=Math.cos(r);return t[0]=i+s*l+o*c,t[1]=e[1],t[2]=a+s*c-o*l,t}},3388:function(t){t.exports=function(t,e,n,r){var i=n[0],a=n[1],o=e[0]-i,s=e[1]-a,l=Math.sin(r),c=Math.cos(r);return t[0]=i+o*c-s*l,t[1]=a+o*l+s*c,t[2]=e[2],t}},1624:function(t){t.exports=function(t,e){return t[0]=Math.round(e[0]),t[1]=Math.round(e[1]),t[2]=Math.round(e[2]),t}},5685:function(t){t.exports=function(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t}},6722:function(t){t.exports=function(t,e,n,r){return t[0]=e[0]+n[0]*r,t[1]=e[1]+n[1]*r,t[2]=e[2]+n[2]*r,t}},831:function(t){t.exports=function(t,e,n,r){return t[0]=e,t[1]=n,t[2]=r,t}},5294:function(t,e,n){t.exports=n(6403)},3303:function(t,e,n){t.exports=n(4337)},6403:function(t){t.exports=function(t,e){var n=e[0]-t[0],r=e[1]-t[1],i=e[2]-t[2];return n*n+r*r+i*i}},4337:function(t){t.exports=function(t){var e=t[0],n=t[1],r=t[2];return e*e+n*n+r*r}},8921:function(t,e,n){t.exports=n(911)},911:function(t){t.exports=function(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t[2]=e[2]-n[2],t}},9908:function(t){t.exports=function(t,e,n){var r=e[0],i=e[1],a=e[2];return t[0]=r*n[0]+i*n[3]+a*n[6],t[1]=r*n[1]+i*n[4]+a*n[7],t[2]=r*n[2]+i*n[5]+a*n[8],t}},3255:function(t){t.exports=function(t,e,n){var r=e[0],i=e[1],a=e[2],o=n[3]*r+n[7]*i+n[11]*a+n[15];return o=o||1,t[0]=(n[0]*r+n[4]*i+n[8]*a+n[12])/o,t[1]=(n[1]*r+n[5]*i+n[9]*a+n[13])/o,t[2]=(n[2]*r+n[6]*i+n[10]*a+n[14])/o,t}},6568:function(t){t.exports=function(t,e,n){var r=e[0],i=e[1],a=e[2],o=n[0],s=n[1],l=n[2],c=n[3],u=c*r+s*a-l*i,f=c*i+l*r-o*a,h=c*a+o*i-s*r,d=-o*r-s*i-l*a;return t[0]=u*c+d*-o+f*-l-h*-s,t[1]=f*c+d*-s+h*-o-u*-l,t[2]=h*c+d*-l+u*-s-f*-o,t}},3433:function(t){t.exports=function(t,e,n){return t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2],t[3]=e[3]+n[3],t}},1413:function(t){t.exports=function(t){var e=new Float32Array(4);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}},3470:function(t){t.exports=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}},5313:function(t){t.exports=function(){var t=new Float32Array(4);return t[0]=0,t[1]=0,t[2]=0,t[3]=0,t}},5446:function(t){t.exports=function(t,e){var n=e[0]-t[0],r=e[1]-t[1],i=e[2]-t[2],a=e[3]-t[3];return Math.sqrt(n*n+r*r+i*i+a*a)}},205:function(t){t.exports=function(t,e,n){return t[0]=e[0]/n[0],t[1]=e[1]/n[1],t[2]=e[2]/n[2],t[3]=e[3]/n[3],t}},4242:function(t){t.exports=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}},5680:function(t){t.exports=function(t,e,n,r){var i=new Float32Array(4);return i[0]=t,i[1]=e,i[2]=n,i[3]=r,i}},4020:function(t,e,n){t.exports={create:n(5313),clone:n(1413),fromValues:n(5680),copy:n(3470),set:n(6453),add:n(3433),subtract:n(2705),multiply:n(746),divide:n(205),min:n(2170),max:n(3030),scale:n(5510),scaleAndAdd:n(4224),distance:n(5446),squaredDistance:n(1542),length:n(8177),squaredLength:n(9037),negate:n(6459),inverse:n(8057),normalize:n(381),dot:n(4242),lerp:n(8746),random:n(3770),transformMat4:n(6342),transformQuat:n(5022)}},8057:function(t){t.exports=function(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t[3]=1/e[3],t}},8177:function(t){t.exports=function(t){var e=t[0],n=t[1],r=t[2],i=t[3];return Math.sqrt(e*e+n*n+r*r+i*i)}},8746:function(t){t.exports=function(t,e,n,r){var i=e[0],a=e[1],o=e[2],s=e[3];return t[0]=i+r*(n[0]-i),t[1]=a+r*(n[1]-a),t[2]=o+r*(n[2]-o),t[3]=s+r*(n[3]-s),t}},3030:function(t){t.exports=function(t,e,n){return t[0]=Math.max(e[0],n[0]),t[1]=Math.max(e[1],n[1]),t[2]=Math.max(e[2],n[2]),t[3]=Math.max(e[3],n[3]),t}},2170:function(t){t.exports=function(t,e,n){return t[0]=Math.min(e[0],n[0]),t[1]=Math.min(e[1],n[1]),t[2]=Math.min(e[2],n[2]),t[3]=Math.min(e[3],n[3]),t}},746:function(t){t.exports=function(t,e,n){return t[0]=e[0]*n[0],t[1]=e[1]*n[1],t[2]=e[2]*n[2],t[3]=e[3]*n[3],t}},6459:function(t){t.exports=function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=-e[3],t}},381:function(t){t.exports=function(t,e){var n=e[0],r=e[1],i=e[2],a=e[3],o=n*n+r*r+i*i+a*a;return o>0&&(o=1/Math.sqrt(o),t[0]=n*o,t[1]=r*o,t[2]=i*o,t[3]=a*o),t}},3770:function(t,e,n){var r=n(381),i=n(5510);t.exports=function(t,e){return e=e||1,t[0]=Math.random(),t[1]=Math.random(),t[2]=Math.random(),t[3]=Math.random(),r(t,t),i(t,t,e),t}},5510:function(t){t.exports=function(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t}},4224:function(t){t.exports=function(t,e,n,r){return t[0]=e[0]+n[0]*r,t[1]=e[1]+n[1]*r,t[2]=e[2]+n[2]*r,t[3]=e[3]+n[3]*r,t}},6453:function(t){t.exports=function(t,e,n,r,i){return t[0]=e,t[1]=n,t[2]=r,t[3]=i,t}},1542:function(t){t.exports=function(t,e){var n=e[0]-t[0],r=e[1]-t[1],i=e[2]-t[2],a=e[3]-t[3];return n*n+r*r+i*i+a*a}},9037:function(t){t.exports=function(t){var e=t[0],n=t[1],r=t[2],i=t[3];return e*e+n*n+r*r+i*i}},2705:function(t){t.exports=function(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t[2]=e[2]-n[2],t[3]=e[3]-n[3],t}},6342:function(t){t.exports=function(t,e,n){var r=e[0],i=e[1],a=e[2],o=e[3];return t[0]=n[0]*r+n[4]*i+n[8]*a+n[12]*o,t[1]=n[1]*r+n[5]*i+n[9]*a+n[13]*o,t[2]=n[2]*r+n[6]*i+n[10]*a+n[14]*o,t[3]=n[3]*r+n[7]*i+n[11]*a+n[15]*o,t}},5022:function(t){t.exports=function(t,e,n){var r=e[0],i=e[1],a=e[2],o=n[0],s=n[1],l=n[2],c=n[3],u=c*r+s*a-l*i,f=c*i+l*r-o*a,h=c*a+o*i-s*r,d=-o*r-s*i-l*a;return t[0]=u*c+d*-o+f*-l-h*-s,t[1]=f*c+d*-s+h*-o-u*-l,t[2]=h*c+d*-l+u*-s-f*-o,t[3]=e[3],t}},9365:function(t,e,n){var r=n(8096),i=n(7896);t.exports=function(t){for(var e=Array.isArray(t)?t:r(t),n=0;n0)continue;n=t.slice(0,1).join("")}return F(n),L+=n.length,(S=S.slice(n.length)).length}}function Y(){return/[^a-fA-F0-9]/.test(e)?(F(S.join("")),A=l,T):(S.push(e),n=e,T+1)}function $(){return"."===e||/[eE]/.test(e)?(S.push(e),A=g,n=e,T+1):"x"===e&&1===S.length&&"0"===S[0]?(A=w,S.push(e),n=e,T+1):/[^\d]/.test(e)?(F(S.join("")),A=l,T):(S.push(e),n=e,T+1)}function X(){return"f"===e&&(S.push(e),n=e,T+=1),/[eE]/.test(e)?(S.push(e),n=e,T+1):("-"!==e&&"+"!==e||!/[eE]/.test(n))&&/[^\d]/.test(e)?(F(S.join("")),A=l,T):(S.push(e),n=e,T+1)}function K(){if(/[^\d\w_]/.test(e)){var t=S.join("");return A=j[t]?y:N[t]?m:v,F(S.join("")),A=l,T}return S.push(e),n=e,T+1}};var r=n(399),i=n(9746),a=n(9525),o=n(9458),s=n(3585),l=999,c=9999,u=0,f=1,h=2,d=3,p=4,g=5,v=6,m=7,y=8,b=9,x=10,w=11,_=["block-comment","line-comment","preprocessor","operator","integer","float","ident","builtin","keyword","whitespace","eof","integer"]},3585:function(t,e,n){var r=n(9525);r=r.slice().filter((function(t){return!/^(gl\_|texture)/.test(t)})),t.exports=r.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(t){t.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(t,e,n){var r=n(399);t.exports=r.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(t){t.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(t){t.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},8096:function(t,e,n){var r=n(3193);t.exports=function(t,e){var n=r(e),i=[];return i=(i=i.concat(n(t))).concat(n(null))}},6832:function(t){t.exports=function(t){"string"===typeof t&&(t=[t]);for(var e=[].slice.call(arguments,1),n=[],r=0;r0;)for(var s=(t=o.pop()).adjacent,l=0;l<=n;++l){var c=s[l];if(c.boundary&&!(c.lastVisited<=-r)){for(var u=c.vertices,f=0;f<=n;++f){var h=u[f];i[f]=h<0?e:a[h]}var d=this.orient();if(d>0)return c;c.lastVisited=-r,0===d&&o.push(c)}}return null},u.walk=function(t,e){var n=this.vertices.length-1,r=this.dimension,i=this.vertices,a=this.tuple,o=e?this.interior.length*Math.random()|0:this.interior.length-1,s=this.interior[o];t:for(;!s.boundary;){for(var l=s.vertices,c=s.adjacent,u=0;u<=r;++u)a[u]=i[l[u]];for(s.lastVisited=n,u=0;u<=r;++u){var f=c[u];if(!(f.lastVisited>=n)){var h=a[u];a[u]=t;var d=this.orient();if(a[u]=h,d<0){s=f;continue t}f.boundary?f.lastVisited=-n:f.lastVisited=n}}return}return s},u.addPeaks=function(t,e){var n=this.vertices.length-1,r=this.dimension,i=this.vertices,l=this.tuple,c=this.interior,u=this.simplices,f=[e];e.lastVisited=n,e.vertices[e.vertices.indexOf(-1)]=n,e.boundary=!1,c.push(e);for(var h=[];f.length>0;){var d=(e=f.pop()).vertices,p=e.adjacent,g=d.indexOf(n);if(!(g<0))for(var v=0;v<=r;++v)if(v!==g){var m=p[v];if(m.boundary&&!(m.lastVisited>=n)){var y=m.vertices;if(m.lastVisited!==-n){for(var b=0,x=0;x<=r;++x)y[x]<0?(b=x,l[x]=t):l[x]=i[y[x]];if(this.orient()>0){y[b]=n,m.boundary=!1,c.push(m),f.push(m),m.lastVisited=n;continue}m.lastVisited=-n}var w=m.adjacent,_=d.slice(),k=p.slice(),T=new a(_,k,!0);u.push(T);var M=w.indexOf(e);if(!(M<0))for(w[M]=T,k[g]=m,_[v]=-1,k[v]=e,p[v]=T,T.flip(),x=0;x<=r;++x){var A=_[x];if(!(A<0||A===n)){for(var S=new Array(r-1),E=0,C=0;C<=r;++C){var P=_[C];P<0||C===x||(S[E++]=P)}h.push(new o(S,T,x))}}}}}for(h.sort(s),v=0;v+1=0?o[l++]=s[u]:c=1&u;if(c===(1&t)){var f=o[0];o[0]=o[1],o[1]=f}e.push(o)}}return e}},9014:function(t,e,n){"use strict";var r=n(5070),i=0,a=1;function o(t,e,n,r,i){this.mid=t,this.left=e,this.right=n,this.leftPoints=r,this.rightPoints=i,this.count=(e?e.count:0)+(n?n.count:0)+r.length}t.exports=function(t){return t&&0!==t.length?new b(y(t)):new b(null)};var s=o.prototype;function l(t,e){t.mid=e.mid,t.left=e.left,t.right=e.right,t.leftPoints=e.leftPoints,t.rightPoints=e.rightPoints,t.count=e.count}function c(t,e){var n=y(e);t.mid=n.mid,t.left=n.left,t.right=n.right,t.leftPoints=n.leftPoints,t.rightPoints=n.rightPoints,t.count=n.count}function u(t,e){var n=t.intervals([]);n.push(e),c(t,n)}function f(t,e){var n=t.intervals([]),r=n.indexOf(e);return r<0?i:(n.splice(r,1),c(t,n),a)}function h(t,e,n){for(var r=0;r=0&&t[r][1]>=e;--r){var i=n(t[r]);if(i)return i}}function p(t,e){for(var n=0;n>1],i=[],a=[],s=[];for(n=0;n3*(e+1)?u(this,t):this.left.insert(t):this.left=y([t]);else if(t[0]>this.mid)this.right?4*(this.right.count+1)>3*(e+1)?u(this,t):this.right.insert(t):this.right=y([t]);else{var n=r.ge(this.leftPoints,t,v),i=r.ge(this.rightPoints,t,m);this.leftPoints.splice(n,0,t),this.rightPoints.splice(i,0,t)}},s.remove=function(t){var e=this.count-this.leftPoints;if(t[1]3*(e-1)?f(this,t):2===(c=this.left.remove(t))?(this.left=null,this.count-=1,a):(c===a&&(this.count-=1),c):i;if(t[0]>this.mid)return this.right?4*(this.left?this.left.count:0)>3*(e-1)?f(this,t):2===(c=this.right.remove(t))?(this.right=null,this.count-=1,a):(c===a&&(this.count-=1),c):i;if(1===this.count)return this.leftPoints[0]===t?2:i;if(1===this.leftPoints.length&&this.leftPoints[0]===t){if(this.left&&this.right){for(var n=this,o=this.left;o.right;)n=o,o=o.right;if(n===this)o.right=this.right;else{var s=this.left,c=this.right;n.count-=o.count,n.right=o.left,o.left=s,o.right=c}l(this,o),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?l(this,this.left):l(this,this.right);return a}for(s=r.ge(this.leftPoints,t,v);sthis.mid?this.right&&(n=this.right.queryPoint(t,e))?n:d(this.rightPoints,t,e):p(this.leftPoints,e);var n},s.queryInterval=function(t,e,n){var r;return tthis.mid&&this.right&&(r=this.right.queryInterval(t,e,n))?r:ethis.mid?d(this.rightPoints,t,n):p(this.leftPoints,n)};var x=b.prototype;x.insert=function(t){this.root?this.root.insert(t):this.root=new o(t[0],null,null,[t],[t])},x.remove=function(t){if(this.root){var e=this.root.remove(t);return 2===e&&(this.root=null),e!==i}return!1},x.queryPoint=function(t,e){if(this.root)return this.root.queryPoint(t,e)},x.queryInterval=function(t,e,n){if(t<=e&&this.root)return this.root.queryInterval(t,e,n)},Object.defineProperty(x,"count",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(x,"intervals",{get:function(){return this.root?this.root.intervals([]):[]}})},9560:function(t){"use strict";t.exports=function(t){for(var e=new Array(t),n=0;n13)&&32!==e&&133!==e&&160!==e&&5760!==e&&6158!==e&&(e<8192||e>8205)&&8232!==e&&8233!==e&&8239!==e&&8287!==e&&8288!==e&&12288!==e&&65279!==e)return!1;return!0}},3578:function(t){t.exports=function(t,e,n){return t*(1-n)+e*n}},7191:function(t,e,n){var r=n(4690),i=n(9823),a=n(7332),o=n(7787),s=n(7437),l=n(2142),c={length:n(4693),normalize:n(899),dot:n(9305),cross:n(903)},u=i(),f=i(),h=[0,0,0,0],d=[[0,0,0],[0,0,0],[0,0,0]],p=[0,0,0];function g(t,e,n,r,i){t[0]=e[0]*r+n[0]*i,t[1]=e[1]*r+n[1]*i,t[2]=e[2]*r+n[2]*i}t.exports=function(t,e,n,i,v,m){if(e||(e=[0,0,0]),n||(n=[0,0,0]),i||(i=[0,0,0]),v||(v=[0,0,0,1]),m||(m=[0,0,0,1]),!r(u,t))return!1;if(a(f,u),f[3]=0,f[7]=0,f[11]=0,f[15]=1,Math.abs(o(f)<1e-8))return!1;var y,b,x=u[3],w=u[7],_=u[11],k=u[12],T=u[13],M=u[14],A=u[15];if(0!==x||0!==w||0!==_){if(h[0]=x,h[1]=w,h[2]=_,h[3]=A,!s(f,f))return!1;l(f,f),function(t,e,n){var r=e[0],i=e[1],a=e[2],o=e[3];t[0]=n[0]*r+n[4]*i+n[8]*a+n[12]*o,t[1]=n[1]*r+n[5]*i+n[9]*a+n[13]*o,t[2]=n[2]*r+n[6]*i+n[10]*a+n[14]*o,t[3]=n[3]*r+n[7]*i+n[11]*a+n[15]*o}(v,h,f)}else v[0]=v[1]=v[2]=0,v[3]=1;if(e[0]=k,e[1]=T,e[2]=M,b=u,(y=d)[0][0]=b[0],y[0][1]=b[1],y[0][2]=b[2],y[1][0]=b[4],y[1][1]=b[5],y[1][2]=b[6],y[2][0]=b[8],y[2][1]=b[9],y[2][2]=b[10],n[0]=c.length(d[0]),c.normalize(d[0],d[0]),i[0]=c.dot(d[0],d[1]),g(d[1],d[1],d[0],1,-i[0]),n[1]=c.length(d[1]),c.normalize(d[1],d[1]),i[0]/=n[1],i[1]=c.dot(d[0],d[2]),g(d[2],d[2],d[0],1,-i[1]),i[2]=c.dot(d[1],d[2]),g(d[2],d[2],d[1],1,-i[2]),n[2]=c.length(d[2]),c.normalize(d[2],d[2]),i[1]/=n[2],i[2]/=n[2],c.cross(p,d[1],d[2]),c.dot(d[0],p)<0)for(var S=0;S<3;S++)n[S]*=-1,d[S][0]*=-1,d[S][1]*=-1,d[S][2]*=-1;return m[0]=.5*Math.sqrt(Math.max(1+d[0][0]-d[1][1]-d[2][2],0)),m[1]=.5*Math.sqrt(Math.max(1-d[0][0]+d[1][1]-d[2][2],0)),m[2]=.5*Math.sqrt(Math.max(1-d[0][0]-d[1][1]+d[2][2],0)),m[3]=.5*Math.sqrt(Math.max(1+d[0][0]+d[1][1]+d[2][2],0)),d[2][1]>d[1][2]&&(m[0]=-m[0]),d[0][2]>d[2][0]&&(m[1]=-m[1]),d[1][0]>d[0][1]&&(m[2]=-m[2]),!0}},4690:function(t){t.exports=function(t,e){var n=e[15];if(0===n)return!1;for(var r=1/n,i=0;i<16;i++)t[i]=e[i]*r;return!0}},7649:function(t,e,n){var r=n(1868),i=n(1102),a=n(7191),o=n(7787),s=n(1116),l=f(),c=f(),u=f();function f(){return{translate:h(),scale:h(1),skew:h(),perspective:[0,0,0,1],quaternion:[0,0,0,1]}}function h(t){return[t||0,t||0,t||0]}t.exports=function(t,e,n,f){if(0===o(e)||0===o(n))return!1;var h=a(e,l.translate,l.scale,l.skew,l.perspective,l.quaternion),d=a(n,c.translate,c.scale,c.skew,c.perspective,c.quaternion);return!(!h||!d)&&(r(u.translate,l.translate,c.translate,f),r(u.skew,l.skew,c.skew,f),r(u.scale,l.scale,c.scale,f),r(u.perspective,l.perspective,c.perspective,f),s(u.quaternion,l.quaternion,c.quaternion,f),i(t,u.translate,u.scale,u.skew,u.perspective,u.quaternion),!0)}},1102:function(t,e,n){var r={identity:n(9947),translate:n(998),multiply:n(104),create:n(9823),scale:n(3668),fromRotationTranslation:n(7280)},i=(r.create(),r.create());t.exports=function(t,e,n,a,o,s){return r.identity(t),r.fromRotationTranslation(t,s,e),t[3]=o[0],t[7]=o[1],t[11]=o[2],t[15]=o[3],r.identity(i),0!==a[2]&&(i[9]=a[2],r.multiply(t,t,i)),0!==a[1]&&(i[9]=0,i[8]=a[1],r.multiply(t,t,i)),0!==a[0]&&(i[8]=0,i[4]=a[0],r.multiply(t,t,i)),r.scale(t,t,n),t}},9298:function(t,e,n){"use strict";var r=n(5070),i=n(7649),a=n(7437),o=n(6109),s=n(7115),l=n(5240),c=n(3012),u=n(998),f=(n(3668),n(899)),h=[0,0,0];function d(t){this._components=t.slice(),this._time=[0],this.prevMatrix=t.slice(),this.nextMatrix=t.slice(),this.computedMatrix=t.slice(),this.computedInverse=t.slice(),this.computedEye=[0,0,0],this.computedUp=[0,0,0],this.computedCenter=[0,0,0],this.computedRadius=[0],this._limits=[-1/0,1/0]}t.exports=function(t){return new d((t=t||{}).matrix||[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])};var p=d.prototype;p.recalcMatrix=function(t){var e=this._time,n=r.le(e,t),o=this.computedMatrix;if(!(n<0)){var s=this._components;if(n===e.length-1)for(var l=16*n,c=0;c<16;++c)o[c]=s[l++];else{var u=e[n+1]-e[n],h=(l=16*n,this.prevMatrix),d=!0;for(c=0;c<16;++c)h[c]=s[l++];var p=this.nextMatrix;for(c=0;c<16;++c)p[c]=s[l++],d=d&&h[c]===p[c];if(u<1e-6||d)for(c=0;c<16;++c)o[c]=h[c];else i(o,h,p,(t-e[n])/u)}var g=this.computedUp;g[0]=o[1],g[1]=o[5],g[2]=o[9],f(g,g);var v=this.computedInverse;a(v,o);var m=this.computedEye,y=v[15];m[0]=v[12]/y,m[1]=v[13]/y,m[2]=v[14]/y;var b=this.computedCenter,x=Math.exp(this.computedRadius[0]);for(c=0;c<3;++c)b[c]=m[c]-o[2+4*c]*x}},p.idle=function(t){if(!(t1&&r(t[o[u-2]],t[o[u-1]],c)<=0;)u-=1,o.pop();for(o.push(l),u=s.length;u>1&&r(t[s[u-2]],t[s[u-1]],c)>=0;)u-=1,s.pop();s.push(l)}n=new Array(s.length+o.length-2);for(var f=0,h=(i=0,o.length);i0;--d)n[f++]=s[d];return n};var r=n(417)[3]},6145:function(t,e,n){"use strict";t.exports=function(t,e){e||(e=t,t=window);var n=0,i=0,a=0,o={shift:!1,alt:!1,control:!1,meta:!1},s=!1;function l(t){var e=!1;return"altKey"in t&&(e=e||t.altKey!==o.alt,o.alt=!!t.altKey),"shiftKey"in t&&(e=e||t.shiftKey!==o.shift,o.shift=!!t.shiftKey),"ctrlKey"in t&&(e=e||t.ctrlKey!==o.control,o.control=!!t.ctrlKey),"metaKey"in t&&(e=e||t.metaKey!==o.meta,o.meta=!!t.metaKey),e}function c(t,s){var c=r.x(s),u=r.y(s);"buttons"in s&&(t=0|s.buttons),(t!==n||c!==i||u!==a||l(s))&&(n=0|t,i=c||0,a=u||0,e&&e(n,i,a,o))}function u(t){c(0,t)}function f(){(n||i||a||o.shift||o.alt||o.meta||o.control)&&(i=a=0,n=0,o.shift=o.alt=o.control=o.meta=!1,e&&e(0,0,0,o))}function h(t){l(t)&&e&&e(n,i,a,o)}function d(t){0===r.buttons(t)?c(0,t):c(n,t)}function p(t){c(n|r.buttons(t),t)}function g(t){c(n&~r.buttons(t),t)}function v(){s||(s=!0,t.addEventListener("mousemove",d),t.addEventListener("mousedown",p),t.addEventListener("mouseup",g),t.addEventListener("mouseleave",u),t.addEventListener("mouseenter",u),t.addEventListener("mouseout",u),t.addEventListener("mouseover",u),t.addEventListener("blur",f),t.addEventListener("keyup",h),t.addEventListener("keydown",h),t.addEventListener("keypress",h),t!==window&&(window.addEventListener("blur",f),window.addEventListener("keyup",h),window.addEventListener("keydown",h),window.addEventListener("keypress",h)))}v();var m={element:t};return Object.defineProperties(m,{enabled:{get:function(){return s},set:function(e){e?v():s&&(s=!1,t.removeEventListener("mousemove",d),t.removeEventListener("mousedown",p),t.removeEventListener("mouseup",g),t.removeEventListener("mouseleave",u),t.removeEventListener("mouseenter",u),t.removeEventListener("mouseout",u),t.removeEventListener("mouseover",u),t.removeEventListener("blur",f),t.removeEventListener("keyup",h),t.removeEventListener("keydown",h),t.removeEventListener("keypress",h),t!==window&&(window.removeEventListener("blur",f),window.removeEventListener("keyup",h),window.removeEventListener("keydown",h),window.removeEventListener("keypress",h)))},enumerable:!0},buttons:{get:function(){return n},enumerable:!0},x:{get:function(){return i},enumerable:!0},y:{get:function(){return a},enumerable:!0},mods:{get:function(){return o},enumerable:!0}}),m};var r=n(4110)},2565:function(t){var e={left:0,top:0};t.exports=function(t,n,r){n=n||t.currentTarget||t.srcElement,Array.isArray(r)||(r=[0,0]);var i,a=t.clientX||0,o=t.clientY||0,s=(i=n)===window||i===document||i===document.body?e:i.getBoundingClientRect();return r[0]=a-s.left,r[1]=o-s.top,r}},4110:function(t,e){"use strict";function n(t){return t.target||t.srcElement||window}e.buttons=function(t){if("object"===typeof t){if("buttons"in t)return t.buttons;if("which"in t){if(2===(e=t.which))return 4;if(3===e)return 2;if(e>0)return 1<=0)return 1< 0"),"function"!==typeof t.vertex&&e("Must specify vertex creation function"),"function"!==typeof t.cell&&e("Must specify cell creation function"),"function"!==typeof t.phase&&e("Must specify phase function");for(var s=t.getters||[],l=new Array(a),c=0;c=0?l[c]=!0:l[c]=!1;return function(t,e,n,a,o,s){var l=[s,o].join(",");return(0,i[l])(t,e,n,r.mallocUint32,r.freeUint32)}(t.vertex,t.cell,t.phase,0,n,l)};var i={"false,0,1":function(t,e,n,r,i){return function(a,o,s,l){var c,u=0|a.shape[0],f=0|a.shape[1],h=a.data,d=0|a.offset,p=0|a.stride[0],g=0|a.stride[1],v=d,m=0|-p,y=0,b=0|-g,x=0,w=-p-g|0,_=0,k=0|p,T=g-p*u|0,M=0,A=0,S=0,E=2*u|0,C=r(E),P=r(E),L=0,O=0,I=-1,D=-1,R=0,z=0|-u,N=0|u,j=0,F=-u-1|0,B=u-1|0,U=0,H=0,V=0;for(M=0;M0){if(A=1,C[L++]=n(h[v],o,s,l),v+=k,u>0)for(M=1,c=h[v],O=C[L]=n(c,o,s,l),R=C[L+I],j=C[L+z],U=C[L+F],O===R&&O===j&&O===U||(y=h[v+m],x=h[v+b],_=h[v+w],t(M,A,c,y,x,_,O,R,j,U,o,s,l),H=P[L]=S++),L+=1,v+=k,M=2;M0)for(M=1,c=h[v],O=C[L]=n(c,o,s,l),R=C[L+I],j=C[L+z],U=C[L+F],O===R&&O===j&&O===U||(y=h[v+m],x=h[v+b],_=h[v+w],t(M,A,c,y,x,_,O,R,j,U,o,s,l),H=P[L]=S++,U!==j&&e(P[L+z],H,x,_,j,U,o,s,l)),L+=1,v+=k,M=2;M0){if(M=1,C[L++]=n(h[v],o,s,l),v+=k,f>0)for(A=1,c=h[v],O=C[L]=n(c,o,s,l),j=C[L+z],R=C[L+I],U=C[L+F],O===j&&O===R&&O===U||(y=h[v+m],x=h[v+b],_=h[v+w],t(M,A,c,y,x,_,O,j,R,U,o,s,l),H=P[L]=S++),L+=1,v+=k,A=2;A0)for(A=1,c=h[v],O=C[L]=n(c,o,s,l),j=C[L+z],R=C[L+I],U=C[L+F],O===j&&O===R&&O===U||(y=h[v+m],x=h[v+b],_=h[v+w],t(M,A,c,y,x,_,O,j,R,U,o,s,l),H=P[L]=S++,U!==j&&e(P[L+z],H,_,y,U,j,o,s,l)),L+=1,v+=k,A=2;A2&&a[1]>2&&r(i.pick(-1,-1).lo(1,1).hi(a[0]-2,a[1]-2),t.pick(-1,-1,0).lo(1,1).hi(a[0]-2,a[1]-2),t.pick(-1,-1,1).lo(1,1).hi(a[0]-2,a[1]-2)),a[1]>2&&(n(i.pick(0,-1).lo(1).hi(a[1]-2),t.pick(0,-1,1).lo(1).hi(a[1]-2)),e(t.pick(0,-1,0).lo(1).hi(a[1]-2))),a[1]>2&&(n(i.pick(a[0]-1,-1).lo(1).hi(a[1]-2),t.pick(a[0]-1,-1,1).lo(1).hi(a[1]-2)),e(t.pick(a[0]-1,-1,0).lo(1).hi(a[1]-2))),a[0]>2&&(n(i.pick(-1,0).lo(1).hi(a[0]-2),t.pick(-1,0,0).lo(1).hi(a[0]-2)),e(t.pick(-1,0,1).lo(1).hi(a[0]-2))),a[0]>2&&(n(i.pick(-1,a[1]-1).lo(1).hi(a[0]-2),t.pick(-1,a[1]-1,0).lo(1).hi(a[0]-2)),e(t.pick(-1,a[1]-1,1).lo(1).hi(a[0]-2))),t.set(0,0,0,0),t.set(0,0,1,0),t.set(a[0]-1,0,0,0),t.set(a[0]-1,0,1,0),t.set(0,a[1]-1,0,0),t.set(0,a[1]-1,1,0),t.set(a[0]-1,a[1]-1,0,0),t.set(a[0]-1,a[1]-1,1,0),t}}t.exports=function(t,e,n){return Array.isArray(n)||(n=r(e.dimension,"string"===typeof n?n:"clamp")),0===e.size?t:0===e.dimension?(t.set(0),t):function(t){var e=t.join();if(a=u[e])return a;for(var n=t.length,r=[f,h],i=1;i<=n;++i)r.push(d(i));var a=p.apply(void 0,r);return u[e]=a,a}(n)(t,e)}},3581:function(t){"use strict";function e(t,e){var n=Math.floor(e),r=e-n,i=0<=n&&n0;){b<64?(l=b,b=0):(l=64,b-=64);for(var x=0|t[1];x>0;){x<64?(c=x,x=0):(c=64,x-=64),r=m+b*f+x*h,o=y+b*p+x*g;var w=0,_=0,k=0,T=d,M=f-u*d,A=h-l*f,S=v,E=p-u*v,C=g-l*p;for(k=0;k0;){g<64?(l=g,g=0):(l=64,g-=64);for(var v=0|t[0];v>0;){v<64?(s=v,v=0):(s=64,v-=64),r=d+g*u+v*c,o=p+g*h+v*f;var m=0,y=0,b=u,x=c-l*u,w=h,_=f-l*h;for(y=0;y0;){y<64?(c=y,y=0):(c=64,y-=64);for(var b=0|t[0];b>0;){b<64?(s=b,b=0):(s=64,b-=64);for(var x=0|t[1];x>0;){x<64?(l=x,x=0):(l=64,x-=64),r=v+y*h+b*u+x*f,o=m+y*g+b*d+x*p;var w=0,_=0,k=0,T=h,M=u-c*h,A=f-s*u,S=g,E=d-c*g,C=p-s*d;for(k=0;kn;){m=0,y=g-o;e:for(v=0;vx)break e;y+=f,m+=h}for(m=g,y=g-o,v=0;v>1,q=V-B,G=V+B,W=U,Y=q,$=V,X=G,K=H,Z=i+1,J=a-1,Q=!0,tt=0,et=0,nt=0,rt=f,it=e(rt),at=e(rt);M=l*W,A=l*Y,F=s;t:for(T=0;T0){v=W,W=Y,Y=v;break t}if(nt<0)break t;F+=d}M=l*X,A=l*K,F=s;t:for(T=0;T0){v=X,X=K,K=v;break t}if(nt<0)break t;F+=d}M=l*W,A=l*$,F=s;t:for(T=0;T0){v=W,W=$,$=v;break t}if(nt<0)break t;F+=d}M=l*Y,A=l*$,F=s;t:for(T=0;T0){v=Y,Y=$,$=v;break t}if(nt<0)break t;F+=d}M=l*W,A=l*X,F=s;t:for(T=0;T0){v=W,W=X,X=v;break t}if(nt<0)break t;F+=d}M=l*$,A=l*X,F=s;t:for(T=0;T0){v=$,$=X,X=v;break t}if(nt<0)break t;F+=d}M=l*Y,A=l*K,F=s;t:for(T=0;T0){v=Y,Y=K,K=v;break t}if(nt<0)break t;F+=d}M=l*Y,A=l*$,F=s;t:for(T=0;T0){v=Y,Y=$,$=v;break t}if(nt<0)break t;F+=d}M=l*X,A=l*K,F=s;t:for(T=0;T0){v=X,X=K,K=v;break t}if(nt<0)break t;F+=d}for(M=l*W,A=l*Y,S=l*$,E=l*X,C=l*K,P=l*U,L=l*V,O=l*H,j=0,F=s,T=0;T0)){if(nt<0){for(M=l*x,A=l*Z,S=l*J,F=s,T=0;T0)for(;;){for(w=s+J*l,j=0,T=0;T0)){for(w=s+J*l,j=0,T=0;TH){t:for(;;){for(w=s+Z*l,j=0,F=s,T=0;T1&&r?s(n,r[0],r[1]):s(n)}(t,e,l);return r(l,c)}},8729:function(t,e,n){"use strict";var r=n(8139),i={};t.exports=function(t){var e=t.order,n=t.dtype,a=[e,n].join(":"),o=i[a];return o||(i[a]=o=r(e,n)),o(t),t}},5050:function(t,e,n){var r=n(4780),i="undefined"!==typeof Float64Array;function a(t,e){return t[0]-e[0]}function o(){var t,e=this.stride,n=new Array(e.length);for(t=0;t=0&&(e+=a*(n=0|t),i-=n),new r(this.data,i,a,e)},i.step=function(t){var e=this.shape[0],n=this.stride[0],i=this.offset,a=0,o=Math.ceil;return"number"===typeof t&&((a=0|t)<0?(i+=n*(e-1),e=o(-e/a)):e=o(e/a),n*=a),new r(this.data,e,n,i)},i.transpose=function(t){t=void 0===t?0:0|t;var e=this.shape,n=this.stride;return new r(this.data,e[t],n[t],this.offset)},i.pick=function(t){var n=[],r=[],i=this.offset;return"number"===typeof t&&t>=0?i=i+this.stride[0]*t|0:(n.push(this.shape[0]),r.push(this.stride[0])),(0,e[n.length+1])(this.data,n,r,i)},function(t,e,n,i){return new r(t,e[0],n[0],i)}},2:function(t,e,n){function r(t,e,n,r,i,a){this.data=t,this.shape=[e,n],this.stride=[r,i],this.offset=0|a}var i=r.prototype;return i.dtype=t,i.dimension=2,Object.defineProperty(i,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(i,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),i.set=function(e,n,r){return"generic"===t?this.data.set(this.offset+this.stride[0]*e+this.stride[1]*n,r):this.data[this.offset+this.stride[0]*e+this.stride[1]*n]=r},i.get=function(e,n){return"generic"===t?this.data.get(this.offset+this.stride[0]*e+this.stride[1]*n):this.data[this.offset+this.stride[0]*e+this.stride[1]*n]},i.index=function(t,e){return this.offset+this.stride[0]*t+this.stride[1]*e},i.hi=function(t,e){return new r(this.data,"number"!==typeof t||t<0?this.shape[0]:0|t,"number"!==typeof e||e<0?this.shape[1]:0|e,this.stride[0],this.stride[1],this.offset)},i.lo=function(t,e){var n=this.offset,i=0,a=this.shape[0],o=this.shape[1],s=this.stride[0],l=this.stride[1];return"number"===typeof t&&t>=0&&(n+=s*(i=0|t),a-=i),"number"===typeof e&&e>=0&&(n+=l*(i=0|e),o-=i),new r(this.data,a,o,s,l,n)},i.step=function(t,e){var n=this.shape[0],i=this.shape[1],a=this.stride[0],o=this.stride[1],s=this.offset,l=0,c=Math.ceil;return"number"===typeof t&&((l=0|t)<0?(s+=a*(n-1),n=c(-n/l)):n=c(n/l),a*=l),"number"===typeof e&&((l=0|e)<0?(s+=o*(i-1),i=c(-i/l)):i=c(i/l),o*=l),new r(this.data,n,i,a,o,s)},i.transpose=function(t,e){t=void 0===t?0:0|t,e=void 0===e?1:0|e;var n=this.shape,i=this.stride;return new r(this.data,n[t],n[e],i[t],i[e],this.offset)},i.pick=function(t,n){var r=[],i=[],a=this.offset;return"number"===typeof t&&t>=0?a=a+this.stride[0]*t|0:(r.push(this.shape[0]),i.push(this.stride[0])),"number"===typeof n&&n>=0?a=a+this.stride[1]*n|0:(r.push(this.shape[1]),i.push(this.stride[1])),(0,e[r.length+1])(this.data,r,i,a)},function(t,e,n,i){return new r(t,e[0],e[1],n[0],n[1],i)}},3:function(t,e,n){function r(t,e,n,r,i,a,o,s){this.data=t,this.shape=[e,n,r],this.stride=[i,a,o],this.offset=0|s}var i=r.prototype;return i.dtype=t,i.dimension=3,Object.defineProperty(i,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(i,"order",{get:function(){var t=Math.abs(this.stride[0]),e=Math.abs(this.stride[1]),n=Math.abs(this.stride[2]);return t>e?e>n?[2,1,0]:t>n?[1,2,0]:[1,0,2]:t>n?[2,0,1]:n>e?[0,1,2]:[0,2,1]}}),i.set=function(e,n,r,i){return"generic"===t?this.data.set(this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r,i):this.data[this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r]=i},i.get=function(e,n,r){return"generic"===t?this.data.get(this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r):this.data[this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r]},i.index=function(t,e,n){return this.offset+this.stride[0]*t+this.stride[1]*e+this.stride[2]*n},i.hi=function(t,e,n){return new r(this.data,"number"!==typeof t||t<0?this.shape[0]:0|t,"number"!==typeof e||e<0?this.shape[1]:0|e,"number"!==typeof n||n<0?this.shape[2]:0|n,this.stride[0],this.stride[1],this.stride[2],this.offset)},i.lo=function(t,e,n){var i=this.offset,a=0,o=this.shape[0],s=this.shape[1],l=this.shape[2],c=this.stride[0],u=this.stride[1],f=this.stride[2];return"number"===typeof t&&t>=0&&(i+=c*(a=0|t),o-=a),"number"===typeof e&&e>=0&&(i+=u*(a=0|e),s-=a),"number"===typeof n&&n>=0&&(i+=f*(a=0|n),l-=a),new r(this.data,o,s,l,c,u,f,i)},i.step=function(t,e,n){var i=this.shape[0],a=this.shape[1],o=this.shape[2],s=this.stride[0],l=this.stride[1],c=this.stride[2],u=this.offset,f=0,h=Math.ceil;return"number"===typeof t&&((f=0|t)<0?(u+=s*(i-1),i=h(-i/f)):i=h(i/f),s*=f),"number"===typeof e&&((f=0|e)<0?(u+=l*(a-1),a=h(-a/f)):a=h(a/f),l*=f),"number"===typeof n&&((f=0|n)<0?(u+=c*(o-1),o=h(-o/f)):o=h(o/f),c*=f),new r(this.data,i,a,o,s,l,c,u)},i.transpose=function(t,e,n){t=void 0===t?0:0|t,e=void 0===e?1:0|e,n=void 0===n?2:0|n;var i=this.shape,a=this.stride;return new r(this.data,i[t],i[e],i[n],a[t],a[e],a[n],this.offset)},i.pick=function(t,n,r){var i=[],a=[],o=this.offset;return"number"===typeof t&&t>=0?o=o+this.stride[0]*t|0:(i.push(this.shape[0]),a.push(this.stride[0])),"number"===typeof n&&n>=0?o=o+this.stride[1]*n|0:(i.push(this.shape[1]),a.push(this.stride[1])),"number"===typeof r&&r>=0?o=o+this.stride[2]*r|0:(i.push(this.shape[2]),a.push(this.stride[2])),(0,e[i.length+1])(this.data,i,a,o)},function(t,e,n,i){return new r(t,e[0],e[1],e[2],n[0],n[1],n[2],i)}},4:function(t,e,n){function r(t,e,n,r,i,a,o,s,l,c){this.data=t,this.shape=[e,n,r,i],this.stride=[a,o,s,l],this.offset=0|c}var i=r.prototype;return i.dtype=t,i.dimension=4,Object.defineProperty(i,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(i,"order",{get:n}),i.set=function(e,n,r,i,a){return"generic"===t?this.data.set(this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r+this.stride[3]*i,a):this.data[this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r+this.stride[3]*i]=a},i.get=function(e,n,r,i){return"generic"===t?this.data.get(this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r+this.stride[3]*i):this.data[this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r+this.stride[3]*i]},i.index=function(t,e,n,r){return this.offset+this.stride[0]*t+this.stride[1]*e+this.stride[2]*n+this.stride[3]*r},i.hi=function(t,e,n,i){return new r(this.data,"number"!==typeof t||t<0?this.shape[0]:0|t,"number"!==typeof e||e<0?this.shape[1]:0|e,"number"!==typeof n||n<0?this.shape[2]:0|n,"number"!==typeof i||i<0?this.shape[3]:0|i,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},i.lo=function(t,e,n,i){var a=this.offset,o=0,s=this.shape[0],l=this.shape[1],c=this.shape[2],u=this.shape[3],f=this.stride[0],h=this.stride[1],d=this.stride[2],p=this.stride[3];return"number"===typeof t&&t>=0&&(a+=f*(o=0|t),s-=o),"number"===typeof e&&e>=0&&(a+=h*(o=0|e),l-=o),"number"===typeof n&&n>=0&&(a+=d*(o=0|n),c-=o),"number"===typeof i&&i>=0&&(a+=p*(o=0|i),u-=o),new r(this.data,s,l,c,u,f,h,d,p,a)},i.step=function(t,e,n,i){var a=this.shape[0],o=this.shape[1],s=this.shape[2],l=this.shape[3],c=this.stride[0],u=this.stride[1],f=this.stride[2],h=this.stride[3],d=this.offset,p=0,g=Math.ceil;return"number"===typeof t&&((p=0|t)<0?(d+=c*(a-1),a=g(-a/p)):a=g(a/p),c*=p),"number"===typeof e&&((p=0|e)<0?(d+=u*(o-1),o=g(-o/p)):o=g(o/p),u*=p),"number"===typeof n&&((p=0|n)<0?(d+=f*(s-1),s=g(-s/p)):s=g(s/p),f*=p),"number"===typeof i&&((p=0|i)<0?(d+=h*(l-1),l=g(-l/p)):l=g(l/p),h*=p),new r(this.data,a,o,s,l,c,u,f,h,d)},i.transpose=function(t,e,n,i){t=void 0===t?0:0|t,e=void 0===e?1:0|e,n=void 0===n?2:0|n,i=void 0===i?3:0|i;var a=this.shape,o=this.stride;return new r(this.data,a[t],a[e],a[n],a[i],o[t],o[e],o[n],o[i],this.offset)},i.pick=function(t,n,r,i){var a=[],o=[],s=this.offset;return"number"===typeof t&&t>=0?s=s+this.stride[0]*t|0:(a.push(this.shape[0]),o.push(this.stride[0])),"number"===typeof n&&n>=0?s=s+this.stride[1]*n|0:(a.push(this.shape[1]),o.push(this.stride[1])),"number"===typeof r&&r>=0?s=s+this.stride[2]*r|0:(a.push(this.shape[2]),o.push(this.stride[2])),"number"===typeof i&&i>=0?s=s+this.stride[3]*i|0:(a.push(this.shape[3]),o.push(this.stride[3])),(0,e[a.length+1])(this.data,a,o,s)},function(t,e,n,i){return new r(t,e[0],e[1],e[2],e[3],n[0],n[1],n[2],n[3],i)}},5:function(t,e,n){function r(t,e,n,r,i,a,o,s,l,c,u,f){this.data=t,this.shape=[e,n,r,i,a],this.stride=[o,s,l,c,u],this.offset=0|f}var i=r.prototype;return i.dtype=t,i.dimension=5,Object.defineProperty(i,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(i,"order",{get:n}),i.set=function(e,n,r,i,a,o){return"generic"===t?this.data.set(this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r+this.stride[3]*i+this.stride[4]*a,o):this.data[this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r+this.stride[3]*i+this.stride[4]*a]=o},i.get=function(e,n,r,i,a){return"generic"===t?this.data.get(this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r+this.stride[3]*i+this.stride[4]*a):this.data[this.offset+this.stride[0]*e+this.stride[1]*n+this.stride[2]*r+this.stride[3]*i+this.stride[4]*a]},i.index=function(t,e,n,r,i){return this.offset+this.stride[0]*t+this.stride[1]*e+this.stride[2]*n+this.stride[3]*r+this.stride[4]*i},i.hi=function(t,e,n,i,a){return new r(this.data,"number"!==typeof t||t<0?this.shape[0]:0|t,"number"!==typeof e||e<0?this.shape[1]:0|e,"number"!==typeof n||n<0?this.shape[2]:0|n,"number"!==typeof i||i<0?this.shape[3]:0|i,"number"!==typeof a||a<0?this.shape[4]:0|a,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},i.lo=function(t,e,n,i,a){var o=this.offset,s=0,l=this.shape[0],c=this.shape[1],u=this.shape[2],f=this.shape[3],h=this.shape[4],d=this.stride[0],p=this.stride[1],g=this.stride[2],v=this.stride[3],m=this.stride[4];return"number"===typeof t&&t>=0&&(o+=d*(s=0|t),l-=s),"number"===typeof e&&e>=0&&(o+=p*(s=0|e),c-=s),"number"===typeof n&&n>=0&&(o+=g*(s=0|n),u-=s),"number"===typeof i&&i>=0&&(o+=v*(s=0|i),f-=s),"number"===typeof a&&a>=0&&(o+=m*(s=0|a),h-=s),new r(this.data,l,c,u,f,h,d,p,g,v,m,o)},i.step=function(t,e,n,i,a){var o=this.shape[0],s=this.shape[1],l=this.shape[2],c=this.shape[3],u=this.shape[4],f=this.stride[0],h=this.stride[1],d=this.stride[2],p=this.stride[3],g=this.stride[4],v=this.offset,m=0,y=Math.ceil;return"number"===typeof t&&((m=0|t)<0?(v+=f*(o-1),o=y(-o/m)):o=y(o/m),f*=m),"number"===typeof e&&((m=0|e)<0?(v+=h*(s-1),s=y(-s/m)):s=y(s/m),h*=m),"number"===typeof n&&((m=0|n)<0?(v+=d*(l-1),l=y(-l/m)):l=y(l/m),d*=m),"number"===typeof i&&((m=0|i)<0?(v+=p*(c-1),c=y(-c/m)):c=y(c/m),p*=m),"number"===typeof a&&((m=0|a)<0?(v+=g*(u-1),u=y(-u/m)):u=y(u/m),g*=m),new r(this.data,o,s,l,c,u,f,h,d,p,g,v)},i.transpose=function(t,e,n,i,a){t=void 0===t?0:0|t,e=void 0===e?1:0|e,n=void 0===n?2:0|n,i=void 0===i?3:0|i,a=void 0===a?4:0|a;var o=this.shape,s=this.stride;return new r(this.data,o[t],o[e],o[n],o[i],o[a],s[t],s[e],s[n],s[i],s[a],this.offset)},i.pick=function(t,n,r,i,a){var o=[],s=[],l=this.offset;return"number"===typeof t&&t>=0?l=l+this.stride[0]*t|0:(o.push(this.shape[0]),s.push(this.stride[0])),"number"===typeof n&&n>=0?l=l+this.stride[1]*n|0:(o.push(this.shape[1]),s.push(this.stride[1])),"number"===typeof r&&r>=0?l=l+this.stride[2]*r|0:(o.push(this.shape[2]),s.push(this.stride[2])),"number"===typeof i&&i>=0?l=l+this.stride[3]*i|0:(o.push(this.shape[3]),s.push(this.stride[3])),"number"===typeof a&&a>=0?l=l+this.stride[4]*a|0:(o.push(this.shape[4]),s.push(this.stride[4])),(0,e[o.length+1])(this.data,o,s,l)},function(t,e,n,i){return new r(t,e[0],e[1],e[2],e[3],e[4],n[0],n[1],n[2],n[3],n[4],i)}}};function l(t,e){var n=-1===e?"T":String(e),r=s[n];return-1===e?r(t):0===e?r(t,c[t][0]):r(t,c[t],o)}var c={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};t.exports=function(t,e,n,a){if(void 0===t)return(0,c.array[0])([]);"number"===typeof t&&(t=[t]),void 0===e&&(e=[t.length]);var o=e.length;if(void 0===n){n=new Array(o);for(var s=o-1,u=1;s>=0;--s)n[s]=u,u*=e[s]}if(void 0===a)for(a=0,s=0;s>>0;t.exports=function(t,e){if(isNaN(t)||isNaN(e))return NaN;if(t===e)return t;if(0===t)return e<0?-i:i;var n=r.hi(t),o=r.lo(t);return e>t===t>0?o===a?(n+=1,o=0):o+=1:0===o?(o=a,n-=1):o-=1,r.pack(o,n)}},115:function(t,e){e.vertexNormals=function(t,e,n){for(var r=e.length,i=new Array(r),a=void 0===n?1e-6:n,o=0;oa){var x=i[c],w=1/Math.sqrt(v*y);for(b=0;b<3;++b){var _=(b+1)%3,k=(b+2)%3;x[b]+=w*(m[_]*g[k]-m[k]*g[_])}}}for(o=0;oa)for(w=1/Math.sqrt(T),b=0;b<3;++b)x[b]*=w;else for(b=0;b<3;++b)x[b]=0}return i},e.faceNormals=function(t,e,n){for(var r=t.length,i=new Array(r),a=void 0===n?1e-6:n,o=0;oa?1/Math.sqrt(d):0,c=0;c<3;++c)h[c]*=d;i[o]=h}return i}},567:function(t){"use strict";t.exports=function(t,e,n,r,i,a,o,s,l,c){var u=e+a+c;if(f>0){var f=Math.sqrt(u+1);t[0]=.5*(o-l)/f,t[1]=.5*(s-r)/f,t[2]=.5*(n-a)/f,t[3]=.5*f}else{var h=Math.max(e,a,c);f=Math.sqrt(2*h-u+1),e>=h?(t[0]=.5*f,t[1]=.5*(i+n)/f,t[2]=.5*(s+r)/f,t[3]=.5*(o-l)/f):a>=h?(t[0]=.5*(n+i)/f,t[1]=.5*f,t[2]=.5*(l+o)/f,t[3]=.5*(s-r)/f):(t[0]=.5*(r+s)/f,t[1]=.5*(o+l)/f,t[2]=.5*f,t[3]=.5*(n-i)/f)}return t}},7774:function(t,e,n){"use strict";t.exports=function(t){var e=(t=t||{}).center||[0,0,0],n=t.rotation||[0,0,0,1],r=t.radius||1;e=[].slice.call(e,0,3),u(n=[].slice.call(n,0,4),n);var i=new f(n,e,Math.log(r));return i.setDistanceLimits(t.zoomMin,t.zoomMax),("eye"in t||"up"in t)&&i.lookAt(0,t.eye,t.center,t.up),i};var r=n(8444),i=n(3012),a=n(5950),o=n(7437),s=n(567);function l(t,e,n){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(n,2))}function c(t,e,n,r){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(n,2)+Math.pow(r,2))}function u(t,e){var n=e[0],r=e[1],i=e[2],a=e[3],o=c(n,r,i,a);o>1e-6?(t[0]=n/o,t[1]=r/o,t[2]=i/o,t[3]=a/o):(t[0]=t[1]=t[2]=0,t[3]=1)}function f(t,e,n){this.radius=r([n]),this.center=r(e),this.rotation=r(t),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var h=f.prototype;h.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},h.recalcMatrix=function(t){this.radius.curve(t),this.center.curve(t),this.rotation.curve(t);var e=this.computedRotation;u(e,e);var n=this.computedMatrix;a(n,e);var r=this.computedCenter,i=this.computedEye,o=this.computedUp,s=Math.exp(this.computedRadius[0]);i[0]=r[0]+s*n[2],i[1]=r[1]+s*n[6],i[2]=r[2]+s*n[10],o[0]=n[1],o[1]=n[5],o[2]=n[9];for(var l=0;l<3;++l){for(var c=0,f=0;f<3;++f)c+=n[l+4*f]*i[f];n[12+l]=-c}},h.getMatrix=function(t,e){this.recalcMatrix(t);var n=this.computedMatrix;if(e){for(var r=0;r<16;++r)e[r]=n[r];return e}return n},h.idle=function(t){this.center.idle(t),this.radius.idle(t),this.rotation.idle(t)},h.flush=function(t){this.center.flush(t),this.radius.flush(t),this.rotation.flush(t)},h.pan=function(t,e,n,r){e=e||0,n=n||0,r=r||0,this.recalcMatrix(t);var i=this.computedMatrix,a=i[1],o=i[5],s=i[9],c=l(a,o,s);a/=c,o/=c,s/=c;var u=i[0],f=i[4],h=i[8],d=u*a+f*o+h*s,p=l(u-=a*d,f-=o*d,h-=s*d);u/=p,f/=p,h/=p;var g=i[2],v=i[6],m=i[10],y=g*a+v*o+m*s,b=g*u+v*f+m*h,x=l(g-=y*a+b*u,v-=y*o+b*f,m-=y*s+b*h);g/=x,v/=x,m/=x;var w=u*e+a*n,_=f*e+o*n,k=h*e+s*n;this.center.move(t,w,_,k);var T=Math.exp(this.computedRadius[0]);T=Math.max(1e-4,T+r),this.radius.set(t,Math.log(T))},h.rotate=function(t,e,n,r){this.recalcMatrix(t),e=e||0,n=n||0;var i=this.computedMatrix,a=i[0],o=i[4],s=i[8],u=i[1],f=i[5],h=i[9],d=i[2],p=i[6],g=i[10],v=e*a+n*u,m=e*o+n*f,y=e*s+n*h,b=-(p*y-g*m),x=-(g*v-d*y),w=-(d*m-p*v),_=Math.sqrt(Math.max(0,1-Math.pow(b,2)-Math.pow(x,2)-Math.pow(w,2))),k=c(b,x,w,_);k>1e-6?(b/=k,x/=k,w/=k,_/=k):(b=x=w=0,_=1);var T=this.computedRotation,M=T[0],A=T[1],S=T[2],E=T[3],C=M*_+E*b+A*w-S*x,P=A*_+E*x+S*b-M*w,L=S*_+E*w+M*x-A*b,O=E*_-M*b-A*x-S*w;if(r){b=d,x=p,w=g;var I=Math.sin(r)/l(b,x,w);b*=I,x*=I,w*=I,O=O*(_=Math.cos(e))-(C=C*_+O*b+P*w-L*x)*b-(P=P*_+O*x+L*b-C*w)*x-(L=L*_+O*w+C*x-P*b)*w}var D=c(C,P,L,O);D>1e-6?(C/=D,P/=D,L/=D,O/=D):(C=P=L=0,O=1),this.rotation.set(t,C,P,L,O)},h.lookAt=function(t,e,n,r){this.recalcMatrix(t),n=n||this.computedCenter,e=e||this.computedEye,r=r||this.computedUp;var a=this.computedMatrix;i(a,e,n,r);var o=this.computedRotation;s(o,a[0],a[1],a[2],a[4],a[5],a[6],a[8],a[9],a[10]),u(o,o),this.rotation.set(t,o[0],o[1],o[2],o[3]);for(var l=0,c=0;c<3;++c)l+=Math.pow(n[c]-e[c],2);this.radius.set(t,.5*Math.log(Math.max(l,1e-6))),this.center.set(t,n[0],n[1],n[2])},h.translate=function(t,e,n,r){this.center.move(t,e||0,n||0,r||0)},h.setMatrix=function(t,e){var n=this.computedRotation;s(n,e[0],e[1],e[2],e[4],e[5],e[6],e[8],e[9],e[10]),u(n,n),this.rotation.set(t,n[0],n[1],n[2],n[3]);var r=this.computedMatrix;o(r,e);var i=r[15];if(Math.abs(i)>1e-6){var a=r[12]/i,l=r[13]/i,c=r[14]/i;this.recalcMatrix(t);var f=Math.exp(this.computedRadius[0]);this.center.set(t,a-r[2]*f,l-r[6]*f,c-r[10]*f),this.radius.idle(t)}else this.center.idle(t),this.radius.idle(t)},h.setDistance=function(t,e){e>0&&this.radius.set(t,Math.log(e))},h.setDistanceLimits=function(t,e){t=t>0?Math.log(t):-1/0,e=e>0?Math.log(e):1/0,e=Math.max(e,t),this.radius.bounds[0][0]=t,this.radius.bounds[1][0]=e},h.getDistanceLimits=function(t){var e=this.radius.bounds;return t?(t[0]=Math.exp(e[0][0]),t[1]=Math.exp(e[1][0]),t):[Math.exp(e[0][0]),Math.exp(e[1][0])]},h.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},h.fromJSON=function(t){var e=this.lastT(),n=t.center;n&&this.center.set(e,n[0],n[1],n[2]);var r=t.rotation;r&&this.rotation.set(e,r[0],r[1],r[2],r[3]);var i=t.distance;i&&i>0&&this.radius.set(e,Math.log(i)),this.setDistanceLimits(t.zoomMin,t.zoomMax)}},4930:function(t,e,n){"use strict";var r=n(6184);t.exports=function(t,e,n){return r(n="undefined"!==typeof n?n+"":" ",e)+t}},4405:function(t){t.exports=function(t,e){e||(e=[0,""]),t=String(t);var n=parseFloat(t,10);return e[0]=n,e[1]=t.match(/[\d.\-\+]*\s*(.*)/)[1]||"",e}},4166:function(t,e,n){"use strict";t.exports=function(t,e){for(var n=0|e.length,i=t.length,a=[new Array(n),new Array(n)],o=0;o0){o=a[u][n][0],l=u;break}s=o[1^l];for(var f=0;f<2;++f)for(var h=a[f][n],d=0;d0&&(o=p,s=g,l=f)}return i||o&&c(o,l),s}function f(t,n){var i=a[n][t][0],o=[t];c(i,n);for(var s=i[1^n];;){for(;s!==t;)o.push(s),s=u(o[o.length-2],s,!1);if(a[0][t].length+a[1][t].length===0)break;var l=o[o.length-1],f=t,h=o[1],d=u(l,f,!0);if(r(e[l],e[f],e[h],e[d])<0)break;o.push(t),s=u(l,f)}return o}function h(t,e){return e[1]===e[e.length-1]}for(o=0;o0;){a[0][o].length;var g=f(o,d);h(0,g)?p.push.apply(p,g):(p.length>0&&l.push(p),p=g)}p.length>0&&l.push(p)}return l};var r=n(9398)},3959:function(t,e,n){"use strict";t.exports=function(t,e){for(var n=r(t,e.length),i=new Array(e.length),a=new Array(e.length),o=[],s=0;s0;){i[d=o.pop()]=!1;var c=n[d];for(s=0;s0}))).length,v=new Array(g),m=new Array(g);for(d=0;d0;){var j=z.pop(),F=E[j];l(F,(function(t,e){return t-e}));var B,U=F.length,H=N[j];for(0===H&&(B=[V=p[j]]),d=0;d=0||(N[q]=1^H,z.push(q),0===H&&(R(V=p[q])||(V.reverse(),B.push(V))))}0===H&&n.push(B)}return n};var r=n(8348),i=n(4166),a=n(211),o=n(9660),s=n(9662),l=n(1215),c=n(3959);function u(t,e){for(var n=new Array(t),r=0;r0&&e[i]===n[0]))return 1;a=t[i-1]}for(var s=1;a;){var l=a.key,c=r(n,l[0],l[1]);if(l[0][0]0))return 0;s=-1,a=a.right}else if(c>0)a=a.left;else{if(!(c<0))return 0;s=1,a=a.right}}return s}}(m.slabs,m.coordinates);return 0===a.length?y:function(t,e){return function(n){return t(n[0],n[1])?0:e(n)}}(l(a),y)};var r=n(417)[3],i=n(4385),a=n(9014),o=n(5070);function s(){return!0}function l(t){for(var e={},n=0;n=c?(T=1,y=c+2*h+p):y=h*(T=-h/c)+p):(T=0,d>=0?(M=0,y=p):-d>=f?(M=1,y=f+2*d+p):y=d*(M=-d/f)+p);else if(M<0)M=0,h>=0?(T=0,y=p):-h>=c?(T=1,y=c+2*h+p):y=h*(T=-h/c)+p;else{var A=1/k;y=(T*=A)*(c*T+u*(M*=A)+2*h)+M*(u*T+f*M+2*d)+p}else T<0?(x=f+d)>(b=u+h)?(w=x-b)>=(_=c-2*u+f)?(T=1,M=0,y=c+2*h+p):y=(T=w/_)*(c*T+u*(M=1-T)+2*h)+M*(u*T+f*M+2*d)+p:(T=0,x<=0?(M=1,y=f+2*d+p):d>=0?(M=0,y=p):y=d*(M=-d/f)+p):M<0?(x=c+h)>(b=u+d)?(w=x-b)>=(_=c-2*u+f)?(M=1,T=0,y=f+2*d+p):y=(T=1-(M=w/_))*(c*T+u*M+2*h)+M*(u*T+f*M+2*d)+p:(M=0,x<=0?(T=1,y=c+2*h+p):h>=0?(T=0,y=p):y=h*(T=-h/c)+p):(w=f+d-u-h)<=0?(T=0,M=1,y=f+2*d+p):w>=(_=c-2*u+f)?(T=1,M=0,y=c+2*h+p):y=(T=w/_)*(c*T+u*(M=1-T)+2*h)+M*(u*T+f*M+2*d)+p;var S=1-T-M;for(l=0;l0){var c=t[n-1];if(0===r(s,c)&&a(c)!==l){n-=1;continue}}t[n++]=s}}return t.length=n,t}},6184:function(t){"use strict";var e,n="";t.exports=function(t,r){if("string"!==typeof t)throw new TypeError("expected a string");if(1===r)return t;if(2===r)return t+t;var i=t.length*r;if(e!==t||"undefined"===typeof e)e=t,n="";else if(n.length>=i)return n.substr(0,i);for(;i>n.length&&r>1;)1&r&&(n+=t),r>>=1,t+=t;return n=(n+=t).substr(0,i)}},8161:function(t,e,n){t.exports=n.g.performance&&n.g.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}},402:function(t){"use strict";t.exports=function(t){for(var e=t.length,n=t[t.length-1],r=e,i=e-2;i>=0;--i){var a=n;(l=(s=t[i])-((n=a+s)-a))&&(t[--r]=n,n=l)}var o=0;for(i=r;i0){if(a<=0)return o;r=i+a}else{if(!(i<0))return o;if(a>=0)return o;r=-(i+a)}var s=33306690738754716e-32*r;return o>=s||o<=-s?o:h(t,e,n)},function(t,e,n,r){var i=t[0]-r[0],a=e[0]-r[0],o=n[0]-r[0],s=t[1]-r[1],l=e[1]-r[1],c=n[1]-r[1],u=t[2]-r[2],f=e[2]-r[2],h=n[2]-r[2],p=a*c,g=o*l,v=o*s,m=i*c,y=i*l,b=a*s,x=u*(p-g)+f*(v-m)+h*(y-b),w=7771561172376103e-31*((Math.abs(p)+Math.abs(g))*Math.abs(u)+(Math.abs(v)+Math.abs(m))*Math.abs(f)+(Math.abs(y)+Math.abs(b))*Math.abs(h));return x>w||-x>w?x:d(t,e,n,r)}];function g(t){var e=p[t.length];return e||(e=p[t.length]=f(t.length)),e.apply(void 0,t)}function v(t,e,n,r,i,a,o){return function(e,n,s,l,c){switch(arguments.length){case 0:case 1:return 0;case 2:return r(e,n);case 3:return i(e,n,s);case 4:return a(e,n,s,l);case 5:return o(e,n,s,l,c)}for(var u=new Array(arguments.length),f=0;f0&&o>0||a<0&&o<0)return!1;var s=r(n,t,e),l=r(i,t,e);return!(s>0&&l>0||s<0&&l<0)&&(0!==a||0!==o||0!==s||0!==l||function(t,e,n,r){for(var i=0;i<2;++i){var a=t[i],o=e[i],s=Math.min(a,o),l=Math.max(a,o),c=n[i],u=r[i],f=Math.min(c,u);if(Math.max(c,u)=r?(i=f,(l+=1)=r?(i=f,(l+=1)>1,c=e[2*l+1];if(c===a)return l;a>1,c=e[2*l+1];if(c===a)return l;a>1,c=e[2*l+1];if(c===a)return l;a0)-(t<0)},e.abs=function(t){var e=t>>31;return(t^e)-e},e.min=function(t,e){return e^(t^e)&-(t65535)<<4,e|=n=((t>>>=e)>255)<<3,e|=n=((t>>>=n)>15)<<2,(e|=n=((t>>>=n)>3)<<1)|(t>>>=n)>>1},e.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},e.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},e.countTrailingZeros=n,e.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,1+(t|=t>>>16)},e.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},e.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var r=new Array(256);!function(t){for(var e=0;e<256;++e){var n=e,r=e,i=7;for(n>>>=1;n;n>>>=1)r<<=1,r|=1&n,--i;t[e]=r<>>8&255]<<16|r[t>>>16&255]<<8|r[t>>>24&255]},e.interleave2=function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},e.deinterleave2=function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},e.interleave3=function(t,e,n){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(n=1227133513&((n=3272356035&((n=251719695&((n=4278190335&((n&=1023)|n<<16))|n<<8))|n<<4))|n<<2))<<2},e.deinterleave3=function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},e.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>n(t)+1}},6656:function(t,e,n){"use strict";var r=n(9392),i=n(9521);function a(t,e){var n=t.length,r=t.length-e.length,i=Math.min;if(r)return r;switch(n){case 0:return 0;case 1:return t[0]-e[0];case 2:return(s=t[0]+t[1]-e[0]-e[1])||i(t[0],t[1])-i(e[0],e[1]);case 3:var a=t[0]+t[1],o=e[0]+e[1];if(s=a+t[2]-(o+e[2]))return s;var s,l=i(t[0],t[1]),c=i(e[0],e[1]);return(s=i(l,t[2])-i(c,e[2]))||i(l+t[2],a)-i(c+e[2],o);default:var u=t.slice(0);u.sort();var f=e.slice(0);f.sort();for(var h=0;h>1,s=a(t[o],e);s<=0?(0===s&&(i=o),n=o+1):s>0&&(r=o-1)}return i}function u(t,e){for(var n=new Array(t.length),i=0,o=n.length;i=t.length||0!==a(t[v],s)););}return n}function f(t,e){if(e<0)return[];for(var n=[],i=(1<>>u&1&&c.push(i[u]);e.push(c)}return s(e)},e.skeleton=f,e.boundary=function(t){for(var e=[],n=0,r=t.length;n>1:(t>>1)-1}function b(t){for(var e=m(t);;){var n=e,r=2*t+1,i=2*(t+1),a=t;if(r0;){var n=y(t);if(!(n>=0&&e0){var t=T[0];return v(0,A-1),A-=1,b(0),t}return-1}function _(t,e){var n=T[t];return c[n]===e?t:(c[n]=-1/0,x(t),w(),c[n]=e,x((A+=1)-1))}function k(t){if(!u[t]){u[t]=!0;var e=s[t],n=l[t];s[n]>=0&&(s[n]=e),l[e]>=0&&(l[e]=n),M[e]>=0&&_(M[e],g(e)),M[n]>=0&&_(M[n],g(n))}}var T=[],M=new Array(a);for(f=0;f>1;f>=0;--f)b(f);for(;;){var S=w();if(S<0||c[S]>n)break;k(S)}var E=[];for(f=0;f=0&&n>=0&&e!==n){var r=M[e],i=M[n];r!==i&&P.push([r,i])}})),i.unique(i.normalize(P)),{positions:E,edges:P}};var r=n(417),i=n(6656)},6638:function(t,e,n){"use strict";t.exports=function(t,e){var n,a,o,s;if(e[0][0]e[1][0]))return i(e,t);n=e[1],a=e[0]}if(t[0][0]t[1][0]))return-i(t,e);o=t[1],s=t[0]}var l=r(n,a,s),c=r(n,a,o);if(l<0){if(c<=0)return l}else if(l>0){if(c>=0)return l}else if(c)return c;if(l=r(s,o,a),c=r(s,o,n),l<0){if(c<=0)return l}else if(l>0){if(c>=0)return l}else if(c)return c;return a[0]-s[0]};var r=n(417);function i(t,e){var n,i,a,o;if(e[0][0]e[1][0])){var s=Math.min(t[0][1],t[1][1]),l=Math.max(t[0][1],t[1][1]),c=Math.min(e[0][1],e[1][1]),u=Math.max(e[0][1],e[1][1]);return lu?s-u:l-u}n=e[1],i=e[0]}t[0][1]0)if(e[0]!==o[1][0])n=t,t=t.right;else{if(l=c(t.right,e))return l;t=t.left}else{if(e[0]!==o[1][0])return t;var l;if(l=c(t.right,e))return l;t=t.left}}return n}function u(t,e,n,r){this.y=t,this.index=e,this.start=n,this.closed=r}function f(t,e,n,r){this.x=t,this.segment=e,this.create=n,this.index=r}s.prototype.castUp=function(t){var e=r.le(this.coordinates,t[0]);if(e<0)return-1;this.slabs[e];var n=c(this.slabs[e],t),i=-1;if(n&&(i=n.value),this.coordinates[e]===t[0]){var s=null;if(n&&(s=n.key),e>0){var u=c(this.slabs[e-1],t);u&&(s?o(u.key,s)>0&&(s=u.key,i=u.value):(i=u.value,s=u.key))}var f=this.horizontal[e];if(f.length>0){var h=r.ge(f,t[1],l);if(h=f.length)return i;d=f[h]}}if(d.start)if(s){var p=a(s[0],s[1],[t[0],d.y]);s[0][0]>s[1][0]&&(p=-p),p>0&&(i=d.index)}else i=d.index;else d.y!==t[1]&&(i=d.index)}}}return i}},4670:function(t,e,n){"use strict";var r=n(9130),i=n(9662);function a(t,e){var n=i(r(t,e),[e[e.length-1]]);return n[n.length-1]}function o(t,e,n,r){var i=-e/(r-e);i<0?i=0:i>1&&(i=1);for(var a=1-i,o=t.length,s=new Array(o),l=0;l0||i>0&&u<0){var f=o(s,u,l,i);n.push(f),r.push(f.slice())}u<0?r.push(l.slice()):u>0?n.push(l.slice()):(n.push(l.slice()),r.push(l.slice())),i=u}return{positive:n,negative:r}},t.exports.positive=function(t,e){for(var n=[],r=a(t[t.length-1],e),i=t[t.length-1],s=t[0],l=0;l0||r>0&&c<0)&&n.push(o(i,c,s,r)),c>=0&&n.push(s.slice()),r=c}return n},t.exports.negative=function(t,e){for(var n=[],r=a(t[t.length-1],e),i=t[t.length-1],s=t[0],l=0;l0||r>0&&c<0)&&n.push(o(i,c,s,r)),c<=0&&n.push(s.slice()),r=c}return n}},8974:function(t,e,n){var r;!function(){"use strict";var i={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 a(t){return function(t,e){var n,r,o,s,l,c,u,f,h,d=1,p=t.length,g="";for(r=0;r=0),s.type){case"b":n=parseInt(n,10).toString(2);break;case"c":n=String.fromCharCode(parseInt(n,10));break;case"d":case"i":n=parseInt(n,10);break;case"j":n=JSON.stringify(n,null,s.width?parseInt(s.width):0);break;case"e":n=s.precision?parseFloat(n).toExponential(s.precision):parseFloat(n).toExponential();break;case"f":n=s.precision?parseFloat(n).toFixed(s.precision):parseFloat(n);break;case"g":n=s.precision?String(Number(n.toPrecision(s.precision))):parseFloat(n);break;case"o":n=(parseInt(n,10)>>>0).toString(8);break;case"s":n=String(n),n=s.precision?n.substring(0,s.precision):n;break;case"t":n=String(!!n),n=s.precision?n.substring(0,s.precision):n;break;case"T":n=Object.prototype.toString.call(n).slice(8,-1).toLowerCase(),n=s.precision?n.substring(0,s.precision):n;break;case"u":n=parseInt(n,10)>>>0;break;case"v":n=n.valueOf(),n=s.precision?n.substring(0,s.precision):n;break;case"x":n=(parseInt(n,10)>>>0).toString(16);break;case"X":n=(parseInt(n,10)>>>0).toString(16).toUpperCase()}i.json.test(s.type)?g+=n:(!i.number.test(s.type)||f&&!s.sign?h="":(h=f?"+":"-",n=n.toString().replace(i.sign,"")),c=s.pad_char?"0"===s.pad_char?"0":s.pad_char.charAt(1):" ",u=s.width-(h+n).length,l=s.width&&u>0?c.repeat(u):"",g+=s.align?h+n+l:"0"===c?h+l+n:l+h+n)}return g}(function(t){if(s[t])return s[t];for(var e,n=t,r=[],a=0;n;){if(null!==(e=i.text.exec(n)))r.push(e[0]);else if(null!==(e=i.modulo.exec(n)))r.push("%");else{if(null===(e=i.placeholder.exec(n)))throw new SyntaxError("[sprintf] unexpected placeholder");if(e[2]){a|=1;var o=[],l=e[2],c=[];if(null===(c=i.key.exec(l)))throw new SyntaxError("[sprintf] failed to parse named argument key");for(o.push(c[1]);""!==(l=l.substring(c[0].length));)if(null!==(c=i.key_access.exec(l)))o.push(c[1]);else{if(null===(c=i.index_access.exec(l)))throw new SyntaxError("[sprintf] failed to parse named argument key");o.push(c[1])}e[2]=o}else a|=2;if(3===a)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");r.push({placeholder:e[0],param_no:e[1],keys:e[2],sign:e[3],pad_char:e[4],align:e[5],width:e[6],precision:e[7],type:e[8]})}n=n.substring(e[0].length)}return s[t]=r}(t),arguments)}function o(t,e){return a.apply(null,[t].concat(e||[]))}var s=Object.create(null);e.sprintf=a,e.vsprintf=o,"undefined"!==typeof window&&(window.sprintf=a,window.vsprintf=o,void 0===(r=function(){return{sprintf:a,vsprintf:o}}.call(e,n,e,t))||(t.exports=r))}()},4162:function(t,e,n){"use strict";t.exports=function(t,e){if(t.dimension<=0)return{positions:[],cells:[]};if(1===t.dimension)return function(t,e){for(var n=i(t,e),r=n.length,a=new Array(r),o=new Array(r),s=0;sr|0},vertex:function(t,e,n,r,i,a,o,s,l,c,u,f,h){var d=(o<<0)+(s<<1)+(l<<2)+(c<<3)|0;if(0!==d&&15!==d)switch(d){case 0:case 15:u.push([t-.5,e-.5]);break;case 1:u.push([t-.25-.25*(r+n-2*h)/(n-r),e-.25-.25*(i+n-2*h)/(n-i)]);break;case 2:u.push([t-.75-.25*(-r-n+2*h)/(r-n),e-.25-.25*(a+r-2*h)/(r-a)]);break;case 3:u.push([t-.5,e-.5-.5*(i+n+a+r-4*h)/(n-i+r-a)]);break;case 4:u.push([t-.25-.25*(a+i-2*h)/(i-a),e-.75-.25*(-i-n+2*h)/(i-n)]);break;case 5:u.push([t-.5-.5*(r+n+a+i-4*h)/(n-r+i-a),e-.5]);break;case 6:u.push([t-.5-.25*(-r-n+a+i)/(r-n+i-a),e-.5-.25*(-i-n+a+r)/(i-n+r-a)]);break;case 7:u.push([t-.75-.25*(a+i-2*h)/(i-a),e-.75-.25*(a+r-2*h)/(r-a)]);break;case 8:u.push([t-.75-.25*(-a-i+2*h)/(a-i),e-.75-.25*(-a-r+2*h)/(a-r)]);break;case 9:u.push([t-.5-.25*(r+n+-a-i)/(n-r+a-i),e-.5-.25*(i+n+-a-r)/(n-i+a-r)]);break;case 10:u.push([t-.5-.5*(-r-n-a-i+4*h)/(r-n+a-i),e-.5]);break;case 11:u.push([t-.25-.25*(-a-i+2*h)/(a-i),e-.75-.25*(i+n-2*h)/(n-i)]);break;case 12:u.push([t-.5,e-.5-.5*(-i-n-a-r+4*h)/(i-n+a-r)]);break;case 13:u.push([t-.75-.25*(r+n-2*h)/(n-r),e-.25-.25*(-a-r+2*h)/(a-r)]);break;case 14:u.push([t-.25-.25*(-r-n+2*h)/(r-n),e-.25-.25*(-i-n+2*h)/(i-n)])}},cell:function(t,e,n,r,i,a,o,s,l){i?s.push([t,e]):s.push([e,t])}});return function(t,e){var n=[],i=[];return r(t,n,i,e),{positions:n,cells:i}}}},o={}},6946:function(t,e,n){"use strict";t.exports=function t(e,n,i){i=i||{};var a=o[e];a||(a=o[e]={" ":{data:new Float32Array(0),shape:.2}});var s=a[n];if(!s)if(n.length<=1||!/\d/.test(n))s=a[n]=function(t){for(var e=t.cells,n=t.positions,r=new Float32Array(6*e.length),i=0,a=0,o=0;o0&&(f+=.02);var d=new Float32Array(u),p=0,g=-.5*f;for(h=0;hMath.max(n,r)?i[2]=1:n>Math.max(e,r)?i[0]=1:i[1]=1;for(var a=0,o=0,l=0;l<3;++l)a+=t[l]*t[l],o+=i[l]*t[l];for(l=0;l<3;++l)i[l]-=o/a*t[l];return s(i,i),i}function h(t,e,n,i,a,o,s,l){this.center=r(n),this.up=r(i),this.right=r(a),this.radius=r([o]),this.angle=r([s,l]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(t,e),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var c=0;c<16;++c)this.computedMatrix[c]=.5;this.recalcMatrix(0)}var d=h.prototype;d.setDistanceLimits=function(t,e){t=t>0?Math.log(t):-1/0,e=e>0?Math.log(e):1/0,e=Math.max(e,t),this.radius.bounds[0][0]=t,this.radius.bounds[1][0]=e},d.getDistanceLimits=function(t){var e=this.radius.bounds[0];return t?(t[0]=Math.exp(e[0][0]),t[1]=Math.exp(e[1][0]),t):[Math.exp(e[0][0]),Math.exp(e[1][0])]},d.recalcMatrix=function(t){this.center.curve(t),this.up.curve(t),this.right.curve(t),this.radius.curve(t),this.angle.curve(t);for(var e=this.computedUp,n=this.computedRight,r=0,i=0,a=0;a<3;++a)i+=e[a]*n[a],r+=e[a]*e[a];var l=Math.sqrt(r),u=0;for(a=0;a<3;++a)n[a]-=e[a]*i/r,u+=n[a]*n[a],e[a]/=l;var f=Math.sqrt(u);for(a=0;a<3;++a)n[a]/=f;var h=this.computedToward;o(h,e,n),s(h,h);var d=Math.exp(this.computedRadius[0]),p=this.computedAngle[0],g=this.computedAngle[1],v=Math.cos(p),m=Math.sin(p),y=Math.cos(g),b=Math.sin(g),x=this.computedCenter,w=v*y,_=m*y,k=b,T=-v*b,M=-m*b,A=y,S=this.computedEye,E=this.computedMatrix;for(a=0;a<3;++a){var C=w*n[a]+_*h[a]+k*e[a];E[4*a+1]=T*n[a]+M*h[a]+A*e[a],E[4*a+2]=C,E[4*a+3]=0}var P=E[1],L=E[5],O=E[9],I=E[2],D=E[6],R=E[10],z=L*R-O*D,N=O*I-P*R,j=P*D-L*I,F=c(z,N,j);for(z/=F,N/=F,j/=F,E[0]=z,E[4]=N,E[8]=j,a=0;a<3;++a)S[a]=x[a]+E[2+4*a]*d;for(a=0;a<3;++a){u=0;for(var B=0;B<3;++B)u+=E[a+4*B]*S[B];E[12+a]=-u}E[15]=1},d.getMatrix=function(t,e){this.recalcMatrix(t);var n=this.computedMatrix;if(e){for(var r=0;r<16;++r)e[r]=n[r];return e}return n};var p=[0,0,0];d.rotate=function(t,e,n,r){if(this.angle.move(t,e,n),r){this.recalcMatrix(t);var i=this.computedMatrix;p[0]=i[2],p[1]=i[6],p[2]=i[10];for(var o=this.computedUp,s=this.computedRight,l=this.computedToward,c=0;c<3;++c)i[4*c]=o[c],i[4*c+1]=s[c],i[4*c+2]=l[c];for(a(i,i,r,p),c=0;c<3;++c)o[c]=i[4*c],s[c]=i[4*c+1];this.up.set(t,o[0],o[1],o[2]),this.right.set(t,s[0],s[1],s[2])}},d.pan=function(t,e,n,r){e=e||0,n=n||0,r=r||0,this.recalcMatrix(t);var i=this.computedMatrix,a=(Math.exp(this.computedRadius[0]),i[1]),o=i[5],s=i[9],l=c(a,o,s);a/=l,o/=l,s/=l;var u=i[0],f=i[4],h=i[8],d=u*a+f*o+h*s,p=c(u-=a*d,f-=o*d,h-=s*d),g=(u/=p)*e+a*n,v=(f/=p)*e+o*n,m=(h/=p)*e+s*n;this.center.move(t,g,v,m);var y=Math.exp(this.computedRadius[0]);y=Math.max(1e-4,y+r),this.radius.set(t,Math.log(y))},d.translate=function(t,e,n,r){this.center.move(t,e||0,n||0,r||0)},d.setMatrix=function(t,e,n,r){var a=1;"number"===typeof n&&(a=0|n),(a<0||a>3)&&(a=1);var o=(a+2)%3;e||(this.recalcMatrix(t),e=this.computedMatrix);var s=e[a],l=e[a+4],f=e[a+8];if(r){var h=Math.abs(s),d=Math.abs(l),p=Math.abs(f),g=Math.max(h,d,p);h===g?(s=s<0?-1:1,l=f=0):p===g?(f=f<0?-1:1,s=l=0):(l=l<0?-1:1,s=f=0)}else{var v=c(s,l,f);s/=v,l/=v,f/=v}var m,y,b=e[o],x=e[o+4],w=e[o+8],_=b*s+x*l+w*f,k=c(b-=s*_,x-=l*_,w-=f*_),T=l*(w/=k)-f*(x/=k),M=f*(b/=k)-s*w,A=s*x-l*b,S=c(T,M,A);if(T/=S,M/=S,A/=S,this.center.jump(t,q,G,W),this.radius.idle(t),this.up.jump(t,s,l,f),this.right.jump(t,b,x,w),2===a){var E=e[1],C=e[5],P=e[9],L=E*b+C*x+P*w,O=E*T+C*M+P*A;m=z<0?-Math.PI/2:Math.PI/2,y=Math.atan2(O,L)}else{var I=e[2],D=e[6],R=e[10],z=I*s+D*l+R*f,N=I*b+D*x+R*w,j=I*T+D*M+R*A;m=Math.asin(u(z)),y=Math.atan2(j,N)}this.angle.jump(t,y,m),this.recalcMatrix(t);var F=e[2],B=e[6],U=e[10],H=this.computedMatrix;i(H,e);var V=H[15],q=H[12]/V,G=H[13]/V,W=H[14]/V,Y=Math.exp(this.computedRadius[0]);this.center.jump(t,q-F*Y,G-B*Y,W-U*Y)},d.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},d.idle=function(t){this.center.idle(t),this.up.idle(t),this.right.idle(t),this.radius.idle(t),this.angle.idle(t)},d.flush=function(t){this.center.flush(t),this.up.flush(t),this.right.flush(t),this.radius.flush(t),this.angle.flush(t)},d.setDistance=function(t,e){e>0&&this.radius.set(t,Math.log(e))},d.lookAt=function(t,e,n,r){this.recalcMatrix(t),e=e||this.computedEye,n=n||this.computedCenter;var i=(r=r||this.computedUp)[0],a=r[1],o=r[2],s=c(i,a,o);if(!(s<1e-6)){i/=s,a/=s,o/=s;var l=e[0]-n[0],f=e[1]-n[1],h=e[2]-n[2],d=c(l,f,h);if(!(d<1e-6)){l/=d,f/=d,h/=d;var p=this.computedRight,g=p[0],v=p[1],m=p[2],y=i*g+a*v+o*m,b=c(g-=y*i,v-=y*a,m-=y*o);if(!(b<.01&&(b=c(g=a*h-o*f,v=o*l-i*h,m=i*f-a*l))<1e-6)){g/=b,v/=b,m/=b,this.up.set(t,i,a,o),this.right.set(t,g,v,m),this.center.set(t,n[0],n[1],n[2]),this.radius.set(t,Math.log(d));var x=a*m-o*v,w=o*g-i*m,_=i*v-a*g,k=c(x,w,_),T=i*l+a*f+o*h,M=g*l+v*f+m*h,A=(x/=k)*l+(w/=k)*f+(_/=k)*h,S=Math.asin(u(T)),E=Math.atan2(A,M),C=this.angle._state,P=C[C.length-1],L=C[C.length-2];P%=2*Math.PI;var O=Math.abs(P+2*Math.PI-E),I=Math.abs(P-E),D=Math.abs(P-2*Math.PI-E);O0?n.pop():new ArrayBuffer(t)}function p(t){return new Uint8Array(d(t),0,t)}function g(t){return new Uint16Array(d(2*t),0,t)}function v(t){return new Uint32Array(d(4*t),0,t)}function m(t){return new Int8Array(d(t),0,t)}function y(t){return new Int16Array(d(2*t),0,t)}function b(t){return new Int32Array(d(4*t),0,t)}function x(t){return new Float32Array(d(4*t),0,t)}function w(t){return new Float64Array(d(8*t),0,t)}function _(t){return o?new Uint8ClampedArray(d(t),0,t):p(t)}function k(t){return s?new BigUint64Array(d(8*t),0,t):null}function T(t){return l?new BigInt64Array(d(8*t),0,t):null}function M(t){return new DataView(d(t),0,t)}function A(t){t=r.nextPow2(t);var e=r.log2(t),n=f[e];return n.length>0?n.pop():new a(t)}e.free=function(t){if(a.isBuffer(t))f[r.log2(t.length)].push(t);else{if("[object ArrayBuffer]"!==Object.prototype.toString.call(t)&&(t=t.buffer),!t)return;var e=t.length||t.byteLength,n=0|r.log2(e);u[n].push(t)}},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(t){h(t.buffer)},e.freeArrayBuffer=h,e.freeBuffer=function(t){f[r.log2(t.length)].push(t)},e.malloc=function(t,e){if(void 0===e||"arraybuffer"===e)return d(t);switch(e){case"uint8":return p(t);case"uint16":return g(t);case"uint32":return v(t);case"int8":return m(t);case"int16":return y(t);case"int32":return b(t);case"float":case"float32":return x(t);case"double":case"float64":return w(t);case"uint8_clamped":return _(t);case"bigint64":return T(t);case"biguint64":return k(t);case"buffer":return A(t);case"data":case"dataview":return M(t);default:return null}return null},e.mallocArrayBuffer=d,e.mallocUint8=p,e.mallocUint16=g,e.mallocUint32=v,e.mallocInt8=m,e.mallocInt16=y,e.mallocInt32=b,e.mallocFloat32=e.mallocFloat=x,e.mallocFloat64=e.mallocDouble=w,e.mallocUint8Clamped=_,e.mallocBigUint64=k,e.mallocBigInt64=T,e.mallocDataView=M,e.mallocBuffer=A,e.clearCache=function(){for(var t=0;t<32;++t)c.UINT8[t].length=0,c.UINT16[t].length=0,c.UINT32[t].length=0,c.INT8[t].length=0,c.INT16[t].length=0,c.INT32[t].length=0,c.FLOAT[t].length=0,c.DOUBLE[t].length=0,c.BIGUINT64[t].length=0,c.BIGINT64[t].length=0,c.UINT8C[t].length=0,u[t].length=0,f[t].length=0}},1731:function(t){"use strict";function e(t){this.roots=new Array(t),this.ranks=new Array(t);for(var e=0;e0&&(a=r.size),r.lineSpacing&&r.lineSpacing>0&&(o=r.lineSpacing),r.styletags&&r.styletags.breaklines&&(s.breaklines=!!r.styletags.breaklines),r.styletags&&r.styletags.bolds&&(s.bolds=!!r.styletags.bolds),r.styletags&&r.styletags.italics&&(s.italics=!!r.styletags.italics),r.styletags&&r.styletags.subscripts&&(s.subscripts=!!r.styletags.subscripts),r.styletags&&r.styletags.superscripts&&(s.superscripts=!!r.styletags.superscripts)),n.font=[r.fontStyle,r.fontVariant,r.fontWeight,a+"px",r.font].filter((function(t){return t})).join(" "),n.textAlign="start",n.textBaseline="alphabetic",n.direction="ltr",_(function(t,e,n,r,a,o){n=n.replace(/\n/g,""),n=!0===o.breaklines?n.replace(/\/g,"\n"):n.replace(/\/g," ");var s="",l=[];for(k=0;k-1?parseInt(t[1+i]):0,l=a>-1?parseInt(n[1+a]):0;s!==l&&(r=r.replace(N(),"?px "),A*=Math.pow(.75,l-s),r=r.replace("?px ",N())),M+=.25*C*(l-s)}if(!0===o.superscripts){var c=t.indexOf(p),f=n.indexOf(p),d=c>-1?parseInt(t[1+c]):0,g=f>-1?parseInt(n[1+f]):0;d!==g&&(r=r.replace(N(),"?px "),A*=Math.pow(.75,g-d),r=r.replace("?px ",N())),M-=.25*C*(g-d)}if(!0===o.bolds){var v=t.indexOf(u)>-1,y=n.indexOf(u)>-1;!v&&y&&(r=b?r.replace("italic ","italic bold "):"bold "+r),v&&!y&&(r=r.replace("bold ",""))}if(!0===o.italics){var b=t.indexOf(h)>-1,x=n.indexOf(h)>-1;!b&&x&&(r="italic "+r),b&&!x&&(r=r.replace("italic ",""))}e.font=r}for(_=0;_",a="",o=i.length,s=a.length,l=e[0]===p||e[0]===m,c=0,u=-s;c>-1&&-1!==(c=n.indexOf(i,c))&&-1!==(u=n.indexOf(a,c+o))&&!(u<=c);){for(var f=c;f=u)r[f]=null,n=n.substr(0,f)+" "+n.substr(f+1);else if(null!==r[f]){var h=r[f].indexOf(e[0]);-1===h?r[f]+=e:l&&(r[f]=r[f].substr(0,h+1)+(1+parseInt(r[f][h+1]))+r[f].substr(h+2))}var d=c+o,g=n.substr(d,u-d).indexOf(i);c=-1!==g?g:u+s}return r}function x(t,e){var n=r(t,128);return e?a(n.cells,n.positions,.25):{edges:n.cells,positions:n.positions}}function w(t,e,n,r){var i=x(t,r),a=function(t,e,n){for(var r=e.textAlign||"start",i=e.textBaseline||"alphabetic",a=[1<<30,1<<30],o=[0,0],s=t.length,l=0;l=0?n[a]:i}))},has___:{value:b((function(t){var n=y(t);return n?r in n:e.indexOf(t)>=0}))},set___:{value:b((function(t,i){var a,o=y(t);return o?o[r]=i:(a=e.indexOf(t))>=0?n[a]=i:(a=e.length,n[a]=i,e[a]=t),this}))},delete___:{value:b((function(t){var i,a,o=y(t);return o?r in o&&delete o[r]:!((i=e.indexOf(t))<0)&&(a=e.length-1,e[i]=void 0,n[i]=n[a],e[i]=e[a],e.length=a,n.length=a,!0)}))}})};g.prototype=Object.create(Object.prototype,{get:{value:function(t,e){return this.get___(t,e)},writable:!0,configurable:!0},has:{value:function(t){return this.has___(t)},writable:!0,configurable:!0},set:{value:function(t,e){return this.set___(t,e)},writable:!0,configurable:!0},delete:{value:function(t){return this.delete___(t)},writable:!0,configurable:!0}}),"function"===typeof n?function(){function r(){this instanceof g||x();var t,r=new n,i=void 0,a=!1;return t=e?function(t,e){return r.set(t,e),r.has(t)||(i||(i=new g),i.set(t,e)),this}:function(t,e){if(a)try{r.set(t,e)}catch(n){i||(i=new g),i.set___(t,e)}else r.set(t,e);return this},Object.create(g.prototype,{get___:{value:b((function(t,e){return i?r.has(t)?r.get(t):i.get___(t,e):r.get(t,e)}))},has___:{value:b((function(t){return r.has(t)||!!i&&i.has___(t)}))},set___:{value:b(t)},delete___:{value:b((function(t){var e=!!r.delete(t);return i&&i.delete___(t)||e}))},permitHostObjects___:{value:b((function(t){if(t!==v)throw new Error("bogus call to permitHostObjects___");a=!0}))}})}e&&"undefined"!==typeof Proxy&&(Proxy=void 0),r.prototype=g.prototype,t.exports=r,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():("undefined"!==typeof Proxy&&(Proxy=void 0),t.exports=g)}function v(t){t.permitHostObjects___&&t.permitHostObjects___(v)}function m(t){return!(t.substr(0,l.length)==l&&"___"===t.substr(t.length-3))}function y(t){if(t!==Object(t))throw new TypeError("Not an object: "+t);var e=t[c];if(e&&e.key===t)return e;if(s(t)){e={key:t};try{return o(t,c,{value:e,writable:!1,enumerable:!1,configurable:!1}),e}catch(n){return}}}function b(t){return t.prototype=null,Object.freeze(t)}function x(){d||"undefined"===typeof console||(d=!0,console.warn("WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future."))}}()},9222:function(t,e,n){var r=n(7178);t.exports=function(){var t={};return function(e){if(("object"!==typeof e||null===e)&&"function"!==typeof e)throw new Error("Weakmap-shim: Key must be object");var n=e.valueOf(t);return n&&n.identity===t?n:r(e,t)}}},7178:function(t){t.exports=function(t,e){var n={identity:e},r=t.valueOf;return Object.defineProperty(t,"valueOf",{value:function(t){return t!==e?r.apply(this,arguments):n},writable:!0}),n}},4037:function(t,e,n){var r=n(9222);t.exports=function(){var t=r();return{get:function(e,n){var r=t(e);return r.hasOwnProperty("value")?r.value:n},set:function(e,n){return t(e).value=n,this},has:function(e){return"value"in t(e)},delete:function(e){return delete t(e).value}}}},6183:function(t){"use strict";var e=function(){return function(t,e,n,r,i,a){var o=t[0],s=n[0],l=[0],c=s;r|=0;var u=0,f=s;for(u=0;u=0!==d>=0&&i.push(l[0]+.5+.5*(h+d)/(h-d)),r+=f,++l[0]}}};t.exports=function(t){return n={funcName:t.funcName},function(t){var e={};return function(n,r,i){var a=n.dtype,o=n.order,s=[a,o.join()].join(),l=e[s];return l||(e[s]=l=t([a,o])),l(n.shape.slice(0),n.data,n.stride,0|n.offset,r,i)}}(e.bind(void 0,n));var n}({funcName:"zeroCrossings"})},9584:function(t,e,n){"use strict";t.exports=function(t,e){var n=[];return e=+e||0,r(t.hi(t.shape[0]-1),n,e),n};var r=n(6183)},6601:function(){}},e={};function n(r){var i=e[r];if(void 0!==i)return i.exports;var a=e[r]={id:r,loaded:!1,exports:{}};return t[r].call(a.exports,a,a.exports,n),a.loaded=!0,a.exports}return n.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"===typeof window)return window}}(),n.nmd=function(t){return t.paths=[],t.children||(t.children=[]),t},n(7386)}()},t.exports=r()},12856:function(t,e,n){"use strict";function r(t,e){for(var n=0;nh)throw new RangeError('The value "'+t+'" is invalid for option "size"');var e=new Uint8Array(t);return Object.setPrototypeOf(e,p.prototype),e}function p(t,e,n){if("number"===typeof t){if("string"===typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return m(t)}return g(t,e,n)}function g(t,e,n){if("string"===typeof t)return function(t,e){if("string"===typeof e&&""!==e||(e="utf8"),!p.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var n=0|w(t,e),r=d(n),i=r.write(t,e);return i!==n&&(r=r.slice(0,i)),r}(t,e);if(ArrayBuffer.isView(t))return function(t){if(et(t,Uint8Array)){var e=new Uint8Array(t);return b(e.buffer,e.byteOffset,e.byteLength)}return y(t)}(t);if(null==t)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(t));if(et(t,ArrayBuffer)||t&&et(t.buffer,ArrayBuffer))return b(t,e,n);if("undefined"!==typeof SharedArrayBuffer&&(et(t,SharedArrayBuffer)||t&&et(t.buffer,SharedArrayBuffer)))return b(t,e,n);if("number"===typeof t)throw new TypeError('The "value" argument must not be of type number. Received type number');var r=t.valueOf&&t.valueOf();if(null!=r&&r!==t)return p.from(r,e,n);var i=function(t){if(p.isBuffer(t)){var e=0|x(t.length),n=d(e);return 0===n.length||t.copy(n,0,0,e),n}return void 0!==t.length?"number"!==typeof t.length||nt(t.length)?d(0):y(t):"Buffer"===t.type&&Array.isArray(t.data)?y(t.data):void 0}(t);if(i)return i;if("undefined"!==typeof Symbol&&null!=Symbol.toPrimitive&&"function"===typeof t[Symbol.toPrimitive])return p.from(t[Symbol.toPrimitive]("string"),e,n);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+l(t))}function v(t){if("number"!==typeof t)throw new TypeError('"size" argument must be of type number');if(t<0)throw new RangeError('The value "'+t+'" is invalid for option "size"')}function m(t){return v(t),d(t<0?0:0|x(t))}function y(t){for(var e=t.length<0?0:0|x(t.length),n=d(e),r=0;r=h)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+h.toString(16)+" bytes");return 0|t}function w(t,e){if(p.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||et(t,ArrayBuffer))return t.byteLength;if("string"!==typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+l(t));var n=t.length,r=arguments.length>2&&!0===arguments[2];if(!r&&0===n)return 0;for(var i=!1;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return J(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return Q(t).length;default:if(i)return r?-1:J(t).length;e=(""+e).toLowerCase(),i=!0}}function _(t,e,n){var r=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return z(this,e,n);case"utf8":case"utf-8":return O(this,e,n);case"ascii":return D(this,e,n);case"latin1":case"binary":return R(this,e,n);case"base64":return L(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return N(this,e,n);default:if(r)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),r=!0}}function k(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function T(t,e,n,r,i){if(0===t.length)return-1;if("string"===typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),nt(n=+n)&&(n=i?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(i)return-1;n=t.length-1}else if(n<0){if(!i)return-1;n=0}if("string"===typeof e&&(e=p.from(e,r)),p.isBuffer(e))return 0===e.length?-1:M(t,e,n,r,i);if("number"===typeof e)return e&=255,"function"===typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):M(t,[e],n,r,i);throw new TypeError("val must be string, number or Buffer")}function M(t,e,n,r,i){var a,o=1,s=t.length,l=e.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(t.length<2||e.length<2)return-1;o=2,s/=2,l/=2,n/=2}function c(t,e){return 1===o?t[e]:t.readUInt16BE(e*o)}if(i){var u=-1;for(a=n;as&&(n=s-l),a=n;a>=0;a--){for(var f=!0,h=0;hi&&(r=i):r=i;var a,o=e.length;for(r>o/2&&(r=o/2),a=0;a>8,i=n%256,a.push(i),a.push(r);return a}(e,t.length-n),t,n,r)}function L(t,e,n){return 0===e&&n===t.length?c.fromByteArray(t):c.fromByteArray(t.slice(e,n))}function O(t,e,n){n=Math.min(t.length,n);for(var r=[],i=e;i239?4:a>223?3:a>191?2:1;if(i+s<=n){var l=void 0,c=void 0,u=void 0,f=void 0;switch(s){case 1:a<128&&(o=a);break;case 2:128===(192&(l=t[i+1]))&&(f=(31&a)<<6|63&l)>127&&(o=f);break;case 3:l=t[i+1],c=t[i+2],128===(192&l)&&128===(192&c)&&(f=(15&a)<<12|(63&l)<<6|63&c)>2047&&(f<55296||f>57343)&&(o=f);break;case 4:l=t[i+1],c=t[i+2],u=t[i+3],128===(192&l)&&128===(192&c)&&128===(192&u)&&(f=(15&a)<<18|(63&l)<<12|(63&c)<<6|63&u)>65535&&f<1114112&&(o=f)}}null===o?(o=65533,s=1):o>65535&&(o-=65536,r.push(o>>>10&1023|55296),o=56320|1023&o),r.push(o),i+=s}return function(t){var e=t.length;if(e<=I)return String.fromCharCode.apply(String,t);for(var n="",r=0;rr.length?(p.isBuffer(a)||(a=p.from(a)),a.copy(r,i)):Uint8Array.prototype.set.call(r,a,i);else{if(!p.isBuffer(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(r,i)}i+=a.length}return r},p.byteLength=w,p.prototype._isBuffer=!0,p.prototype.swap16=function(){var t=this.length;if(t%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var e=0;en&&(t+=" ... "),""},f&&(p.prototype[f]=p.prototype.inspect),p.prototype.compare=function(t,e,n,r,i){if(et(t,Uint8Array)&&(t=p.from(t,t.offset,t.byteLength)),!p.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+l(t));if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),e<0||n>t.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&e>=n)return 0;if(r>=i)return-1;if(e>=n)return 1;if(this===t)return 0;for(var a=(i>>>=0)-(r>>>=0),o=(n>>>=0)-(e>>>=0),s=Math.min(a,o),c=this.slice(r,i),u=t.slice(e,n),f=0;f>>=0,isFinite(n)?(n>>>=0,void 0===r&&(r="utf8")):(r=n,n=void 0)}var i=this.length-e;if((void 0===n||n>i)&&(n=i),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var a=!1;;)switch(r){case"hex":return A(this,t,e,n);case"utf8":case"utf-8":return S(this,t,e,n);case"ascii":case"latin1":case"binary":return E(this,t,e,n);case"base64":return C(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return P(this,t,e,n);default:if(a)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),a=!0}},p.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var I=4096;function D(t,e,n){var r="";n=Math.min(t.length,n);for(var i=e;ir)&&(n=r);for(var i="",a=e;an)throw new RangeError("Trying to access beyond buffer length")}function F(t,e,n,r,i,a){if(!p.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||et.length)throw new RangeError("Index out of range")}function B(t,e,n,r,i){$(e,r,i,t,n,7);var a=Number(e&BigInt(4294967295));t[n++]=a,a>>=8,t[n++]=a,a>>=8,t[n++]=a,a>>=8,t[n++]=a;var o=Number(e>>BigInt(32)&BigInt(4294967295));return t[n++]=o,o>>=8,t[n++]=o,o>>=8,t[n++]=o,o>>=8,t[n++]=o,n}function U(t,e,n,r,i){$(e,r,i,t,n,7);var a=Number(e&BigInt(4294967295));t[n+7]=a,a>>=8,t[n+6]=a,a>>=8,t[n+5]=a,a>>=8,t[n+4]=a;var o=Number(e>>BigInt(32)&BigInt(4294967295));return t[n+3]=o,o>>=8,t[n+2]=o,o>>=8,t[n+1]=o,o>>=8,t[n]=o,n+8}function H(t,e,n,r,i,a){if(n+r>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function V(t,e,n,r,i){return e=+e,n>>>=0,i||H(t,0,n,4),u.write(t,e,n,r,23,4),n+4}function q(t,e,n,r,i){return e=+e,n>>>=0,i||H(t,0,n,8),u.write(t,e,n,r,52,8),n+8}p.prototype.slice=function(t,e){var n=this.length;(t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e>>=0,e>>>=0,n||j(t,e,this.length);for(var r=this[t],i=1,a=0;++a>>=0,e>>>=0,n||j(t,e,this.length);for(var r=this[t+--e],i=1;e>0&&(i*=256);)r+=this[t+--e]*i;return r},p.prototype.readUint8=p.prototype.readUInt8=function(t,e){return t>>>=0,e||j(t,1,this.length),this[t]},p.prototype.readUint16LE=p.prototype.readUInt16LE=function(t,e){return t>>>=0,e||j(t,2,this.length),this[t]|this[t+1]<<8},p.prototype.readUint16BE=p.prototype.readUInt16BE=function(t,e){return t>>>=0,e||j(t,2,this.length),this[t]<<8|this[t+1]},p.prototype.readUint32LE=p.prototype.readUInt32LE=function(t,e){return t>>>=0,e||j(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},p.prototype.readUint32BE=p.prototype.readUInt32BE=function(t,e){return t>>>=0,e||j(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},p.prototype.readBigUInt64LE=it((function(t){X(t>>>=0,"offset");var e=this[t],n=this[t+7];void 0!==e&&void 0!==n||K(t,this.length-8);var r=e+this[++t]*Math.pow(2,8)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,24),i=this[++t]+this[++t]*Math.pow(2,8)+this[++t]*Math.pow(2,16)+n*Math.pow(2,24);return BigInt(r)+(BigInt(i)<>>=0,"offset");var e=this[t],n=this[t+7];void 0!==e&&void 0!==n||K(t,this.length-8);var r=e*Math.pow(2,24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+this[++t],i=this[++t]*Math.pow(2,24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+n;return(BigInt(r)<>>=0,e>>>=0,n||j(t,e,this.length);for(var r=this[t],i=1,a=0;++a=(i*=128)&&(r-=Math.pow(2,8*e)),r},p.prototype.readIntBE=function(t,e,n){t>>>=0,e>>>=0,n||j(t,e,this.length);for(var r=e,i=1,a=this[t+--r];r>0&&(i*=256);)a+=this[t+--r]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*e)),a},p.prototype.readInt8=function(t,e){return t>>>=0,e||j(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},p.prototype.readInt16LE=function(t,e){t>>>=0,e||j(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},p.prototype.readInt16BE=function(t,e){t>>>=0,e||j(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},p.prototype.readInt32LE=function(t,e){return t>>>=0,e||j(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},p.prototype.readInt32BE=function(t,e){return t>>>=0,e||j(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},p.prototype.readBigInt64LE=it((function(t){X(t>>>=0,"offset");var e=this[t],n=this[t+7];void 0!==e&&void 0!==n||K(t,this.length-8);var r=this[t+4]+this[t+5]*Math.pow(2,8)+this[t+6]*Math.pow(2,16)+(n<<24);return(BigInt(r)<>>=0,"offset");var e=this[t],n=this[t+7];void 0!==e&&void 0!==n||K(t,this.length-8);var r=(e<<24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+this[++t];return(BigInt(r)<>>=0,e||j(t,4,this.length),u.read(this,t,!0,23,4)},p.prototype.readFloatBE=function(t,e){return t>>>=0,e||j(t,4,this.length),u.read(this,t,!1,23,4)},p.prototype.readDoubleLE=function(t,e){return t>>>=0,e||j(t,8,this.length),u.read(this,t,!0,52,8)},p.prototype.readDoubleBE=function(t,e){return t>>>=0,e||j(t,8,this.length),u.read(this,t,!1,52,8)},p.prototype.writeUintLE=p.prototype.writeUIntLE=function(t,e,n,r){t=+t,e>>>=0,n>>>=0,r||F(this,t,e,n,Math.pow(2,8*n)-1,0);var i=1,a=0;for(this[e]=255&t;++a>>=0,n>>>=0,r||F(this,t,e,n,Math.pow(2,8*n)-1,0);var i=n-1,a=1;for(this[e+i]=255&t;--i>=0&&(a*=256);)this[e+i]=t/a&255;return e+n},p.prototype.writeUint8=p.prototype.writeUInt8=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,1,255,0),this[e]=255&t,e+1},p.prototype.writeUint16LE=p.prototype.writeUInt16LE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},p.prototype.writeUint16BE=p.prototype.writeUInt16BE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},p.prototype.writeUint32LE=p.prototype.writeUInt32LE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},p.prototype.writeUint32BE=p.prototype.writeUInt32BE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},p.prototype.writeBigUInt64LE=it((function(t){return B(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),p.prototype.writeBigUInt64BE=it((function(t){return U(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))})),p.prototype.writeIntLE=function(t,e,n,r){if(t=+t,e>>>=0,!r){var i=Math.pow(2,8*n-1);F(this,t,e,n,i-1,-i)}var a=0,o=1,s=0;for(this[e]=255&t;++a>0)-s&255;return e+n},p.prototype.writeIntBE=function(t,e,n,r){if(t=+t,e>>>=0,!r){var i=Math.pow(2,8*n-1);F(this,t,e,n,i-1,-i)}var a=n-1,o=1,s=0;for(this[e+a]=255&t;--a>=0&&(o*=256);)t<0&&0===s&&0!==this[e+a+1]&&(s=1),this[e+a]=(t/o>>0)-s&255;return e+n},p.prototype.writeInt8=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},p.prototype.writeInt16LE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},p.prototype.writeInt16BE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},p.prototype.writeInt32LE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},p.prototype.writeInt32BE=function(t,e,n){return t=+t,e>>>=0,n||F(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},p.prototype.writeBigInt64LE=it((function(t){return B(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),p.prototype.writeBigInt64BE=it((function(t){return U(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),p.prototype.writeFloatLE=function(t,e,n){return V(this,t,e,!0,n)},p.prototype.writeFloatBE=function(t,e,n){return V(this,t,e,!1,n)},p.prototype.writeDoubleLE=function(t,e,n){return q(this,t,e,!0,n)},p.prototype.writeDoubleBE=function(t,e,n){return q(this,t,e,!1,n)},p.prototype.copy=function(t,e,n,r){if(!p.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),r||0===r||(r=this.length),e>=t.length&&(e=t.length),e||(e=0),r>0&&r=this.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),t.length-e>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),"number"===typeof t)for(a=e;a=r+4;n-=3)e="_".concat(t.slice(n-3,n)).concat(e);return"".concat(t.slice(0,n)).concat(e)}function $(t,e,n,r,i,a){if(t>n||t3?0===e||e===BigInt(0)?">= 0".concat(s," and < 2").concat(s," ** ").concat(8*(a+1)).concat(s):">= -(2".concat(s," ** ").concat(8*(a+1)-1).concat(s,") and < 2 ** ")+"".concat(8*(a+1)-1).concat(s):">= ".concat(e).concat(s," and <= ").concat(n).concat(s),new G.ERR_OUT_OF_RANGE("value",o,t)}!function(t,e,n){X(e,"offset"),void 0!==t[e]&&void 0!==t[e+n]||K(e,t.length-(n+1))}(r,i,a)}function X(t,e){if("number"!==typeof t)throw new G.ERR_INVALID_ARG_TYPE(e,"number",t)}function K(t,e,n){if(Math.floor(t)!==t)throw X(t,n),new G.ERR_OUT_OF_RANGE(n||"offset","an integer",t);if(e<0)throw new G.ERR_BUFFER_OUT_OF_BOUNDS;throw new G.ERR_OUT_OF_RANGE(n||"offset",">= ".concat(n?1:0," and <= ").concat(e),t)}W("ERR_BUFFER_OUT_OF_BOUNDS",(function(t){return t?"".concat(t," is outside of buffer bounds"):"Attempt to access memory outside buffer bounds"}),RangeError),W("ERR_INVALID_ARG_TYPE",(function(t,e){return'The "'.concat(t,'" argument must be of type number. Received type ').concat(l(e))}),TypeError),W("ERR_OUT_OF_RANGE",(function(t,e,n){var r='The value of "'.concat(t,'" is out of range.'),i=n;return Number.isInteger(n)&&Math.abs(n)>Math.pow(2,32)?i=Y(String(n)):"bigint"===typeof n&&(i=String(n),(n>Math.pow(BigInt(2),BigInt(32))||n<-Math.pow(BigInt(2),BigInt(32)))&&(i=Y(i)),i+="n"),r+=" It must be ".concat(e,". Received ").concat(i)}),RangeError);var Z=/[^+/0-9A-Za-z-_]/g;function J(t,e){var n;e=e||1/0;for(var r=t.length,i=null,a=[],o=0;o55295&&n<57344){if(!i){if(n>56319){(e-=3)>-1&&a.push(239,191,189);continue}if(o+1===r){(e-=3)>-1&&a.push(239,191,189);continue}i=n;continue}if(n<56320){(e-=3)>-1&&a.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(e-=3)>-1&&a.push(239,191,189);if(i=null,n<128){if((e-=1)<0)break;a.push(n)}else if(n<2048){if((e-=2)<0)break;a.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;a.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return a}function Q(t){return c.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(Z,"")).length<2)return"";for(;t.length%4!==0;)t+="=";return t}(t))}function tt(t,e,n,r){var i;for(i=0;i=e.length||i>=t.length);++i)e[i+n]=t[i];return i}function et(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function nt(t){return t!==t}var rt=function(){for(var t="0123456789abcdef",e=new Array(256),n=0;n<16;++n)for(var r=16*n,i=0;i<16;++i)e[r+i]=t[n]+t[i];return e}();function it(t){return"undefined"===typeof BigInt?at:t}function at(){throw new Error("BigInt not supported")}},35791:function(t){"use strict";t.exports=i,t.exports.isMobile=i,t.exports.default=i;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,n=/CrOS/,r=/android|ipad|playbook|silk/i;function i(t){t||(t={});var i=t.ua;if(i||"undefined"===typeof navigator||(i=navigator.userAgent),i&&i.headers&&"string"===typeof i.headers["user-agent"]&&(i=i.headers["user-agent"]),"string"!==typeof i)return!1;var a=e.test(i)&&!n.test(i)||!!t.tablet&&r.test(i);return!a&&t.tablet&&t.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==i.indexOf("Macintosh")&&-1!==i.indexOf("Safari")&&(a=!0),a}},86781:function(t,e,n){"use strict";n.r(e),n.d(e,{sankeyCenter:function(){return h},sankeyCircular:function(){return P},sankeyJustify:function(){return f},sankeyLeft:function(){return c},sankeyRight:function(){return u}});var r=n(33064),i=n(15140),a=n(45879),o=n(2502),s=n.n(o);function l(t){return t.target.depth}function c(t){return t.depth}function u(t,e){return e-1-t.height}function f(t,e){return t.sourceLinks.length?t.depth:e-1}function h(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?(0,r.VV)(t.sourceLinks,l)-1:0}function d(t){return function(){return t}}var p="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};function g(t,e){return m(t.source,e.source)||t.index-e.index}function v(t,e){return m(t.target,e.target)||t.index-e.index}function m(t,e){return t.partOfCycle===e.partOfCycle?t.y0-e.y0:"top"===t.circularLinkType||"bottom"===e.circularLinkType?-1:1}function y(t){return t.value}function b(t){return(t.y0+t.y1)/2}function x(t){return b(t.source)}function w(t){return b(t.target)}function _(t){return t.index}function k(t){return t.nodes}function T(t){return t.links}function M(t,e){var n=t.get(e);if(!n)throw new Error("missing: "+e);return n}function A(t,e){return e(t)}var S=25,E=10,C=.3;function P(){var t,e,n=0,a=0,o=1,l=1,c=24,u=_,h=f,A=k,P=T,O=32,D=2,R=null;function N(){var f={nodes:A.apply(null,arguments),links:P.apply(null,arguments)};!function(t){t.nodes.forEach((function(t,e){t.index=e,t.sourceLinks=[],t.targetLinks=[]}));var e=(0,i.UI)(t.nodes,u);t.links.forEach((function(t,n){t.index=n;var r=t.source,i=t.target;"object"!==("undefined"===typeof r?"undefined":p(r))&&(r=t.source=M(e,r)),"object"!==("undefined"===typeof i?"undefined":p(i))&&(i=t.target=M(e,i)),r.sourceLinks.push(t),i.targetLinks.push(t)}))}(f),function(t,e,n){var r=0;if(null===n){for(var i=[],a=0;a0;--p)v(d*=.99,f),_();function g(i){if(e){var u=1/0;h.forEach((function(t){var n=l*e/(t.length+1);u=n0?e+S+E:e,bottom:n=n>0?n+S+E:n,left:a=a>0?a+S+E:a,right:i=i>0?i+S+E:i}}(s),p=function(t,e){var i=(0,r.Fp)(t.nodes,(function(t){return t.column})),s=o-n,u=l-a,f=s+e.right+e.left,h=u+e.top+e.bottom,d=s/f,p=u/h;return n=n*d+e.left,o=0==e.right?o:o*d,a=a*p+e.top,l*=p,t.nodes.forEach((function(t){t.x0=n+t.column*((o-n-c)/i),t.x1=t.x0+c})),p}(s,d);f*=p,s.links.forEach((function(t){t.width=t.value*f})),h.forEach((function(t){var e=t.length;t.forEach((function(t,n){t.depth==h.length-1&&1==e||0==t.depth&&1==e?(t.y0=l/2-t.value*f,t.y1=t.y0+t.value*f):t.partOfCycle?0==I(t,i)?(t.y0=l/2+n,t.y1=t.y0+t.value*f):"top"==t.circularLinkType?(t.y0=a+n,t.y1=t.y0+t.value*f):(t.y0=l-t.value*f-n,t.y1=t.y0+t.value*f):0==d.top||0==d.bottom?(t.y0=(l-a)/e*n,t.y1=t.y0+t.value*f):(t.y0=(l-a)/2-e/2+n,t.y1=t.y0+t.value*f)}))}))}function v(t,e){var n=h.length;h.forEach((function(i){var a=i.length,o=i[0].depth;i.forEach((function(i){var s;if(i.sourceLinks.length||i.targetLinks.length)if(i.partOfCycle&&I(i,e)>0);else if(0==o&&1==a)s=i.y1-i.y0,i.y0=l/2-s/2,i.y1=l/2+s/2;else if(o==n-1&&1==a)s=i.y1-i.y0,i.y0=l/2-s/2,i.y1=l/2+s/2;else{var c=(0,r.J6)(i.sourceLinks,w),u=(0,r.J6)(i.targetLinks,x),f=((c&&u?(c+u)/2:c||u)-b(i))*t;i.y0+=f,i.y1+=f}}))}))}function _(){h.forEach((function(e){var n,r,i,o=a,s=e.length;for(e.sort(m),i=0;i0&&(n.y0+=r,n.y1+=r),o=n.y1+t;if((r=o-t-l)>0)for(o=n.y0-=r,n.y1-=r,i=s-2;i>=0;--i)(r=(n=e[i]).y1+t-o)>0&&(n.y0-=r,n.y1-=r),o=n.y0}))}}(f,O,u),j(f);for(var d=0;d<4;d++)$(f,l,u),X(f,0,u),W(f,a,l,u),$(f,l,u),X(f,0,u);return function(t,e,n){var i=t.nodes,a=t.links,o=!1,s=!1;if(a.forEach((function(t){"top"==t.circularLinkType?o=!0:"bottom"==t.circularLinkType&&(s=!0)})),0==o||0==s){var l=(0,r.VV)(i,(function(t){return t.y0})),c=(n-e)/((0,r.Fp)(i,(function(t){return t.y1}))-l);i.forEach((function(t){var e=(t.y1-t.y0)*c;t.y0=(t.y0-l)*c,t.y1=t.y0+e})),a.forEach((function(t){t.y0=(t.y0-l)*c,t.y1=(t.y1-l)*c,t.width=t.width*c}))}}(f,a,l),z(f,D,l,u),f}function j(t){t.nodes.forEach((function(t){t.sourceLinks.sort(v),t.targetLinks.sort(g)})),t.nodes.forEach((function(t){var e=t.y0,n=e,r=t.y1,i=r;t.sourceLinks.forEach((function(t){t.circular?(t.y0=r-t.width/2,r-=t.width):(t.y0=e+t.width/2,e+=t.width)})),t.targetLinks.forEach((function(t){t.circular?(t.y1=i-t.width/2,i-=t.width):(t.y1=n+t.width/2,n+=t.width)}))}))}return N.nodeId=function(t){return arguments.length?(u="function"===typeof t?t:d(t),N):u},N.nodeAlign=function(t){return arguments.length?(h="function"===typeof t?t:d(t),N):h},N.nodeWidth=function(t){return arguments.length?(c=+t,N):c},N.nodePadding=function(e){return arguments.length?(t=+e,N):t},N.nodes=function(t){return arguments.length?(A="function"===typeof t?t:d(t),N):A},N.links=function(t){return arguments.length?(P="function"===typeof t?t:d(t),N):P},N.size=function(t){return arguments.length?(n=a=0,o=+t[0],l=+t[1],N):[o-n,l-a]},N.extent=function(t){return arguments.length?(n=+t[0][0],o=+t[1][0],a=+t[0][1],l=+t[1][1],N):[[n,a],[o,l]]},N.iterations=function(t){return arguments.length?(O=+t,N):O},N.circularLinkGap=function(t){return arguments.length?(D=+t,N):D},N.nodePaddingRatio=function(t){return arguments.length?(e=+t,N):e},N.sortNodes=function(t){return arguments.length?(R=t,N):R},N.update=function(t){return L(t,u),j(t),t.links.forEach((function(t){t.circular&&(t.circularLinkType=t.y0+t.y11||i>1)}function R(t,e,n){return t.sort(N),t.forEach((function(r,i){var a,o,s=0;if(J(r,n)&&D(r))r.circularPathData.verticalBuffer=s+r.width/2;else{for(var l=0;lo.source.column)){var c=t[l].circularPathData.verticalBuffer+t[l].width/2+e;s=c>s?c:s}r.circularPathData.verticalBuffer=s+r.width/2}})),t}function z(t,e,n,i){var o=(0,r.VV)(t.links,(function(t){return t.source.y0}));t.links.forEach((function(t){t.circular&&(t.circularPathData={})})),R(t.links.filter((function(t){return"top"==t.circularLinkType})),e,i),R(t.links.filter((function(t){return"bottom"==t.circularLinkType})),e,i),t.links.forEach((function(r){if(r.circular){if(r.circularPathData.arcRadius=r.width+E,r.circularPathData.leftNodeBuffer=5,r.circularPathData.rightNodeBuffer=5,r.circularPathData.sourceWidth=r.source.x1-r.source.x0,r.circularPathData.sourceX=r.source.x0+r.circularPathData.sourceWidth,r.circularPathData.targetX=r.target.x0,r.circularPathData.sourceY=r.y0,r.circularPathData.targetY=r.y1,J(r,i)&&D(r))r.circularPathData.leftSmallArcRadius=E+r.width/2,r.circularPathData.leftLargeArcRadius=E+r.width/2,r.circularPathData.rightSmallArcRadius=E+r.width/2,r.circularPathData.rightLargeArcRadius=E+r.width/2,"bottom"==r.circularLinkType?(r.circularPathData.verticalFullExtent=r.source.y1+S+r.circularPathData.verticalBuffer,r.circularPathData.verticalLeftInnerExtent=r.circularPathData.verticalFullExtent-r.circularPathData.leftLargeArcRadius,r.circularPathData.verticalRightInnerExtent=r.circularPathData.verticalFullExtent-r.circularPathData.rightLargeArcRadius):(r.circularPathData.verticalFullExtent=r.source.y0-S-r.circularPathData.verticalBuffer,r.circularPathData.verticalLeftInnerExtent=r.circularPathData.verticalFullExtent+r.circularPathData.leftLargeArcRadius,r.circularPathData.verticalRightInnerExtent=r.circularPathData.verticalFullExtent+r.circularPathData.rightLargeArcRadius);else{var s=r.source.column,l=r.circularLinkType,c=t.links.filter((function(t){return t.source.column==s&&t.circularLinkType==l}));"bottom"==r.circularLinkType?c.sort(F):c.sort(j);var u=0;c.forEach((function(t,n){t.circularLinkID==r.circularLinkID&&(r.circularPathData.leftSmallArcRadius=E+r.width/2+u,r.circularPathData.leftLargeArcRadius=E+r.width/2+n*e+u),u+=t.width})),s=r.target.column,c=t.links.filter((function(t){return t.target.column==s&&t.circularLinkType==l})),"bottom"==r.circularLinkType?c.sort(U):c.sort(B),u=0,c.forEach((function(t,n){t.circularLinkID==r.circularLinkID&&(r.circularPathData.rightSmallArcRadius=E+r.width/2+u,r.circularPathData.rightLargeArcRadius=E+r.width/2+n*e+u),u+=t.width})),"bottom"==r.circularLinkType?(r.circularPathData.verticalFullExtent=Math.max(n,r.source.y1,r.target.y1)+S+r.circularPathData.verticalBuffer,r.circularPathData.verticalLeftInnerExtent=r.circularPathData.verticalFullExtent-r.circularPathData.leftLargeArcRadius,r.circularPathData.verticalRightInnerExtent=r.circularPathData.verticalFullExtent-r.circularPathData.rightLargeArcRadius):(r.circularPathData.verticalFullExtent=o-S-r.circularPathData.verticalBuffer,r.circularPathData.verticalLeftInnerExtent=r.circularPathData.verticalFullExtent+r.circularPathData.leftLargeArcRadius,r.circularPathData.verticalRightInnerExtent=r.circularPathData.verticalFullExtent+r.circularPathData.rightLargeArcRadius)}r.circularPathData.leftInnerExtent=r.circularPathData.sourceX+r.circularPathData.leftNodeBuffer,r.circularPathData.rightInnerExtent=r.circularPathData.targetX-r.circularPathData.rightNodeBuffer,r.circularPathData.leftFullExtent=r.circularPathData.sourceX+r.circularPathData.leftLargeArcRadius+r.circularPathData.leftNodeBuffer,r.circularPathData.rightFullExtent=r.circularPathData.targetX-r.circularPathData.rightLargeArcRadius-r.circularPathData.rightNodeBuffer}if(r.circular)r.path=function(t){return"top"==t.circularLinkType?"M"+t.circularPathData.sourceX+" "+t.circularPathData.sourceY+" L"+t.circularPathData.leftInnerExtent+" "+t.circularPathData.sourceY+" A"+t.circularPathData.leftLargeArcRadius+" "+t.circularPathData.leftSmallArcRadius+" 0 0 0 "+t.circularPathData.leftFullExtent+" "+(t.circularPathData.sourceY-t.circularPathData.leftSmallArcRadius)+" L"+t.circularPathData.leftFullExtent+" "+t.circularPathData.verticalLeftInnerExtent+" A"+t.circularPathData.leftLargeArcRadius+" "+t.circularPathData.leftLargeArcRadius+" 0 0 0 "+t.circularPathData.leftInnerExtent+" "+t.circularPathData.verticalFullExtent+" L"+t.circularPathData.rightInnerExtent+" "+t.circularPathData.verticalFullExtent+" A"+t.circularPathData.rightLargeArcRadius+" "+t.circularPathData.rightLargeArcRadius+" 0 0 0 "+t.circularPathData.rightFullExtent+" "+t.circularPathData.verticalRightInnerExtent+" L"+t.circularPathData.rightFullExtent+" "+(t.circularPathData.targetY-t.circularPathData.rightSmallArcRadius)+" A"+t.circularPathData.rightLargeArcRadius+" "+t.circularPathData.rightSmallArcRadius+" 0 0 0 "+t.circularPathData.rightInnerExtent+" "+t.circularPathData.targetY+" L"+t.circularPathData.targetX+" "+t.circularPathData.targetY:"M"+t.circularPathData.sourceX+" "+t.circularPathData.sourceY+" L"+t.circularPathData.leftInnerExtent+" "+t.circularPathData.sourceY+" A"+t.circularPathData.leftLargeArcRadius+" "+t.circularPathData.leftSmallArcRadius+" 0 0 1 "+t.circularPathData.leftFullExtent+" "+(t.circularPathData.sourceY+t.circularPathData.leftSmallArcRadius)+" L"+t.circularPathData.leftFullExtent+" "+t.circularPathData.verticalLeftInnerExtent+" A"+t.circularPathData.leftLargeArcRadius+" "+t.circularPathData.leftLargeArcRadius+" 0 0 1 "+t.circularPathData.leftInnerExtent+" "+t.circularPathData.verticalFullExtent+" L"+t.circularPathData.rightInnerExtent+" "+t.circularPathData.verticalFullExtent+" A"+t.circularPathData.rightLargeArcRadius+" "+t.circularPathData.rightLargeArcRadius+" 0 0 1 "+t.circularPathData.rightFullExtent+" "+t.circularPathData.verticalRightInnerExtent+" L"+t.circularPathData.rightFullExtent+" "+(t.circularPathData.targetY+t.circularPathData.rightSmallArcRadius)+" A"+t.circularPathData.rightLargeArcRadius+" "+t.circularPathData.rightSmallArcRadius+" 0 0 1 "+t.circularPathData.rightInnerExtent+" "+t.circularPathData.targetY+" L"+t.circularPathData.targetX+" "+t.circularPathData.targetY}(r);else{var f=(0,a.h5)().source((function(t){return[t.source.x0+(t.source.x1-t.source.x0),t.y0]})).target((function(t){return[t.target.x0,t.y1]}));r.path=f(r)}}))}function N(t,e){return H(t)==H(e)?"bottom"==t.circularLinkType?F(t,e):j(t,e):H(e)-H(t)}function j(t,e){return t.y0-e.y0}function F(t,e){return e.y0-t.y0}function B(t,e){return t.y1-e.y1}function U(t,e){return e.y1-t.y1}function H(t){return t.target.column-t.source.column}function V(t){return t.target.x0-t.source.x1}function q(t,e){var n=O(t),r=V(e)/Math.tan(n);return"up"==Z(t)?t.y1+r:t.y1-r}function G(t,e){var n=O(t),r=V(e)/Math.tan(n);return"up"==Z(t)?t.y1-r:t.y1+r}function W(t,e,n,r){t.links.forEach((function(i){if(!i.circular&&i.target.column-i.source.column>1){var a=i.source.column+1,o=i.target.column-1,s=1,l=o-a+1;for(s=1;a<=o;a++,s++)t.nodes.forEach((function(o){if(o.column==a){var c,u=s/(l+1),f=Math.pow(1-u,3),h=3*u*Math.pow(1-u,2),d=3*Math.pow(u,2)*(1-u),p=Math.pow(u,3),g=f*i.y0+h*i.y0+d*i.y1+p*i.y1,v=g-i.width/2,m=g+i.width/2;v>o.y0&&va.y0&&i.y0a.y0&&i.y1a.y1)&&Y(t,c,e,n)}))):(m>o.y0&&mo.y1)&&(c=m-o.y0+10,o=Y(o,c,e,n),t.nodes.forEach((function(t){A(t,r)!=A(o,r)&&t.column==o.column&&t.y0o.y1&&Y(t,c,e,n)})))}}))}}))}function Y(t,e,n,r){return t.y0+e>=n&&t.y1+e<=r&&(t.y0=t.y0+e,t.y1=t.y1+e,t.targetLinks.forEach((function(t){t.y1=t.y1+e})),t.sourceLinks.forEach((function(t){t.y0=t.y0+e}))),t}function $(t,e,n,r){t.nodes.forEach((function(i){r&&i.y+(i.y1-i.y0)>e&&(i.y=i.y-(i.y+(i.y1-i.y0)-e));var a=t.links.filter((function(t){return A(t.source,n)==A(i,n)})),o=a.length;o>1&&a.sort((function(t,e){if(!t.circular&&!e.circular){if(t.target.column==e.target.column)return t.y1-e.y1;if(!K(t,e))return t.y1-e.y1;if(t.target.column>e.target.column){var n=G(e,t);return t.y1-n}if(e.target.column>t.target.column)return G(t,e)-e.y1}return t.circular&&!e.circular?"top"==t.circularLinkType?-1:1:e.circular&&!t.circular?"top"==e.circularLinkType?1:-1:t.circular&&e.circular?t.circularLinkType===e.circularLinkType&&"top"==t.circularLinkType?t.target.column===e.target.column?t.target.y1-e.target.y1:e.target.column-t.target.column:t.circularLinkType===e.circularLinkType&&"bottom"==t.circularLinkType?t.target.column===e.target.column?e.target.y1-t.target.y1:t.target.column-e.target.column:"top"==t.circularLinkType?-1:1:void 0}));var s=i.y0;a.forEach((function(t){t.y0=s+t.width/2,s+=t.width})),a.forEach((function(t,e){if("bottom"==t.circularLinkType){for(var n=e+1,r=0;n1&&r.sort((function(t,e){if(!t.circular&&!e.circular){if(t.source.column==e.source.column)return t.y0-e.y0;if(!K(t,e))return t.y0-e.y0;if(e.source.column0?"up":"down"}function J(t,e){return A(t.source,e)==A(t.target,e)}},30838:function(t,e,n){"use strict";n.r(e),n.d(e,{sankey:function(){return _},sankeyCenter:function(){return c},sankeyJustify:function(){return l},sankeyLeft:function(){return o},sankeyLinkHorizontal:function(){return A},sankeyRight:function(){return s}});var r=n(33064),i=n(15140);function a(t){return t.target.depth}function o(t){return t.depth}function s(t,e){return e-1-t.height}function l(t,e){return t.sourceLinks.length?t.depth:e-1}function c(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?(0,r.VV)(t.sourceLinks,a)-1:0}function u(t){return function(){return t}}function f(t,e){return d(t.source,e.source)||t.index-e.index}function h(t,e){return d(t.target,e.target)||t.index-e.index}function d(t,e){return t.y0-e.y0}function p(t){return t.value}function g(t){return(t.y0+t.y1)/2}function v(t){return g(t.source)*t.value}function m(t){return g(t.target)*t.value}function y(t){return t.index}function b(t){return t.nodes}function x(t){return t.links}function w(t,e){var n=t.get(e);if(!n)throw new Error("missing: "+e);return n}function _(){var t=0,e=0,n=1,a=1,o=24,s=8,c=y,_=l,k=b,T=x,M=32,A=2/3;function S(){var l={nodes:k.apply(null,arguments),links:T.apply(null,arguments)};return function(t){t.nodes.forEach((function(t,e){t.index=e,t.sourceLinks=[],t.targetLinks=[]}));var e=(0,i.UI)(t.nodes,c);t.links.forEach((function(t,n){t.index=n;var r=t.source,i=t.target;"object"!==typeof r&&(r=t.source=w(e,r)),"object"!==typeof i&&(i=t.target=w(e,i)),r.sourceLinks.push(t),i.targetLinks.push(t)}))}(l),function(t){t.nodes.forEach((function(t){t.value=Math.max((0,r.Sm)(t.sourceLinks,p),(0,r.Sm)(t.targetLinks,p))}))}(l),function(e){var r,i,a;for(r=e.nodes,i=[],a=0;r.length;++a,r=i,i=[])r.forEach((function(t){t.depth=a,t.sourceLinks.forEach((function(t){i.indexOf(t.target)<0&&i.push(t.target)}))}));for(r=e.nodes,i=[],a=0;r.length;++a,r=i,i=[])r.forEach((function(t){t.height=a,t.targetLinks.forEach((function(t){i.indexOf(t.source)<0&&i.push(t.source)}))}));var s=(n-t-o)/(a-1);e.nodes.forEach((function(e){e.x1=(e.x0=t+Math.max(0,Math.min(a-1,Math.floor(_.call(null,e,a))))*s)+o}))}(l),function(t){var n=(0,i.b1)().key((function(t){return t.x0})).sortKeys(r.j2).entries(t.nodes).map((function(t){return t.values}));c(),h();for(var o=1,l=M;l>0;--l)f(o*=.99),h(),u(o),h();function c(){var i=(0,r.Fp)(n,(function(t){return t.length})),o=A*(a-e)/(i-1);s>o&&(s=o);var l=(0,r.VV)(n,(function(t){return(a-e-(t.length-1)*s)/(0,r.Sm)(t,p)}));n.forEach((function(t){t.forEach((function(t,e){t.y1=(t.y0=e)+t.value*l}))})),t.links.forEach((function(t){t.width=t.value*l}))}function u(t){n.forEach((function(e){e.forEach((function(e){if(e.targetLinks.length){var n=((0,r.Sm)(e.targetLinks,v)/(0,r.Sm)(e.targetLinks,p)-g(e))*t;e.y0+=n,e.y1+=n}}))}))}function f(t){n.slice().reverse().forEach((function(e){e.forEach((function(e){if(e.sourceLinks.length){var n=((0,r.Sm)(e.sourceLinks,m)/(0,r.Sm)(e.sourceLinks,p)-g(e))*t;e.y0+=n,e.y1+=n}}))}))}function h(){n.forEach((function(t){var n,r,i,o=e,l=t.length;for(t.sort(d),i=0;i0&&(n.y0+=r,n.y1+=r),o=n.y1+s;if((r=o-s-a)>0)for(o=n.y0-=r,n.y1-=r,i=l-2;i>=0;--i)(r=(n=t[i]).y1+s-o)>0&&(n.y0-=r,n.y1-=r),o=n.y0}))}}(l),E(l),l}function E(t){t.nodes.forEach((function(t){t.sourceLinks.sort(h),t.targetLinks.sort(f)})),t.nodes.forEach((function(t){var e=t.y0,n=e;t.sourceLinks.forEach((function(t){t.y0=e+t.width/2,e+=t.width})),t.targetLinks.forEach((function(t){t.y1=n+t.width/2,n+=t.width}))}))}return S.update=function(t){return E(t),t},S.nodeId=function(t){return arguments.length?(c="function"===typeof t?t:u(t),S):c},S.nodeAlign=function(t){return arguments.length?(_="function"===typeof t?t:u(t),S):_},S.nodeWidth=function(t){return arguments.length?(o=+t,S):o},S.nodePadding=function(t){return arguments.length?(s=+t,S):s},S.nodes=function(t){return arguments.length?(k="function"===typeof t?t:u(t),S):k},S.links=function(t){return arguments.length?(T="function"===typeof t?t:u(t),S):T},S.size=function(r){return arguments.length?(t=e=0,n=+r[0],a=+r[1],S):[n-t,a-e]},S.extent=function(r){return arguments.length?(t=+r[0][0],n=+r[1][0],e=+r[0][1],a=+r[1][1],S):[[t,e],[n,a]]},S.iterations=function(t){return arguments.length?(M=+t,S):M},S}var k=n(45879);function T(t){return[t.source.x1,t.y0]}function M(t){return[t.target.x0,t.y1]}function A(){return(0,k.h5)().source(T).target(M)}},39898:function(t,e,n){var r,i;(function(){var a={version:"3.8.0"},o=[].slice,s=function(t){return o.call(t)},l=self.document;function c(t){return t&&(t.ownerDocument||t.document||t).documentElement}function u(t){return t&&(t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView)}if(l)try{s(l.documentElement.childNodes)[0].nodeType}catch(ma){s=function(t){for(var e=t.length,n=new Array(e);e--;)n[e]=t[e];return n}}if(Date.now||(Date.now=function(){return+new Date}),l)try{l.createElement("DIV").style.setProperty("opacity",0,"")}catch(ya){var f=this.Element.prototype,h=f.setAttribute,d=f.setAttributeNS,p=this.CSSStyleDeclaration.prototype,g=p.setProperty;f.setAttribute=function(t,e){h.call(this,t,e+"")},f.setAttributeNS=function(t,e,n){d.call(this,t,e,n+"")},p.setProperty=function(t,e,n){g.call(this,t,e+"",n)}}function v(t,e){return te?1:t>=e?0:NaN}function m(t){return null===t?NaN:+t}function y(t){return!isNaN(t)}function b(t){return{left:function(e,n,r,i){for(arguments.length<3&&(r=0),arguments.length<4&&(i=e.length);r>>1;t(e[a],n)<0?r=a+1:i=a}return r},right:function(e,n,r,i){for(arguments.length<3&&(r=0),arguments.length<4&&(i=e.length);r>>1;t(e[a],n)>0?i=a:r=a+1}return r}}}a.ascending=v,a.descending=function(t,e){return et?1:e>=t?0:NaN},a.min=function(t,e){var n,r,i=-1,a=t.length;if(1===arguments.length){for(;++i=r){n=r;break}for(;++ir&&(n=r)}else{for(;++i=r){n=r;break}for(;++ir&&(n=r)}return n},a.max=function(t,e){var n,r,i=-1,a=t.length;if(1===arguments.length){for(;++i=r){n=r;break}for(;++in&&(n=r)}else{for(;++i=r){n=r;break}for(;++in&&(n=r)}return n},a.extent=function(t,e){var n,r,i,a=-1,o=t.length;if(1===arguments.length){for(;++a=r){n=i=r;break}for(;++ar&&(n=r),i=r){n=i=r;break}for(;++ar&&(n=r),i1)return o/(l-1)},a.deviation=function(){var t=a.variance.apply(this,arguments);return t?Math.sqrt(t):t};var x=b(v);function w(t){return t.length}a.bisectLeft=x.left,a.bisect=a.bisectRight=x.right,a.bisector=function(t){return b(1===t.length?function(e,n){return v(t(e),n)}:t)},a.shuffle=function(t,e,n){(a=arguments.length)<3&&(n=t.length,a<2&&(e=0));for(var r,i,a=n-e;a;)i=Math.random()*a--|0,r=t[a+e],t[a+e]=t[i+e],t[i+e]=r;return t},a.permute=function(t,e){for(var n=e.length,r=new Array(n);n--;)r[n]=t[e[n]];return r},a.pairs=function(t){for(var e=0,n=t.length-1,r=t[0],i=new Array(n<0?0:n);e=0;)for(e=(r=t[i]).length;--e>=0;)n[--o]=r[e];return n};var _=Math.abs;function k(t,e){for(var n in e)Object.defineProperty(t.prototype,n,{value:e[n],enumerable:!1})}function T(){this._=Object.create(null)}a.range=function(t,e,n){if(arguments.length<3&&(n=1,arguments.length<2&&(e=t,t=0)),(e-t)/n===1/0)throw new Error("infinite range");var r,i=[],a=function(t){for(var e=1;t*e%1;)e*=10;return e}(_(n)),o=-1;if(t*=a,e*=a,(n*=a)<0)for(;(r=t+n*++o)>e;)i.push(r/a);else for(;(r=t+n*++o)=r.length)return e?e.call(n,a):t?a.sort(t):a;for(var l,c,u,f,h=-1,d=a.length,p=r[s++],g=new T;++h=r.length)return t;var n=[],a=i[e++];return t.forEach((function(t,r){n.push({key:t,values:s(r,e)})})),a?n.sort((function(t,e){return a(t.key,e.key)})):n}return n.map=function(t,e){return o(e,t,0)},n.entries=function(t){return s(o(a.map,t,0),0)},n.key=function(t){return r.push(t),n},n.sortKeys=function(t){return i[r.length-1]=t,n},n.sortValues=function(e){return t=e,n},n.rollup=function(t){return e=t,n},n},a.set=function(t){var e=new D;if(t)for(var n=0,r=t.length;n=0&&(r=t.slice(n+1),t=t.slice(0,n)),t)return arguments.length<2?this[t].on(r):this[t].on(r,e);if(2===arguments.length){if(null==e)for(t in this)this.hasOwnProperty(t)&&this[t].on(r,null);return this}},a.event=null,a.requote=function(t){return t.replace(G,"\\$&")};var G=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g,W={}.__proto__?function(t,e){t.__proto__=e}:function(t,e){for(var n in e)t[n]=e[n]};function Y(t){return W(t,Z),t}var $=function(t,e){return e.querySelector(t)},X=function(t,e){return e.querySelectorAll(t)},K=function(t,e){var n=t.matches||t[N(t,"matchesSelector")];return K=function(t,e){return n.call(t,e)},K(t,e)};"function"===typeof Sizzle&&($=function(t,e){return Sizzle(t,e)[0]||null},X=Sizzle,K=Sizzle.matchesSelector),a.selection=function(){return a.select(l.documentElement)};var Z=a.selection.prototype=[];function J(t){return"function"===typeof t?t:function(){return $(t,this)}}function Q(t){return"function"===typeof t?t:function(){return X(t,this)}}Z.select=function(t){var e,n,r,i,a=[];t=J(t);for(var o=-1,s=this.length;++o=0&&"xmlns"!==(n=t.slice(0,e))&&(t=t.slice(e+1)),et.hasOwnProperty(n)?{space:et[n],local:t}:t}},Z.attr=function(t,e){if(arguments.length<2){if("string"===typeof t){var n=this.node();return(t=a.ns.qualify(t)).local?n.getAttributeNS(t.space,t.local):n.getAttribute(t)}for(e in t)this.each(nt(e,t[e]));return this}return this.each(nt(t,e))},Z.classed=function(t,e){if(arguments.length<2){if("string"===typeof t){var n=this.node(),r=(t=at(t)).length,i=-1;if(e=n.classList){for(;++i=0;)(n=r[i])&&(a&&a!==n.nextSibling&&a.parentNode.insertBefore(n,a),a=n);return this},Z.sort=function(t){t=pt.apply(this,arguments);for(var e=-1,n=this.length;++e0&&(t=t.slice(0,i));var l=bt.get(t);function c(){var e=this[r];e&&(this.removeEventListener(t,e,e.$),delete this[r])}return l&&(t=l,o=wt),i?e?function(){var i=o(e,s(arguments));c.call(this),this.addEventListener(t,this[r]=i,i.$=n),i._=e}:c:e?F:function(){var e,n=new RegExp("^__on([^.]+)"+a.requote(t)+"$");for(var r in this)if(e=r.match(n)){var i=this[r];this.removeEventListener(e[1],i,i.$),delete this[r]}}}a.selection.enter=vt,a.selection.enter.prototype=mt,mt.append=Z.append,mt.empty=Z.empty,mt.node=Z.node,mt.call=Z.call,mt.size=Z.size,mt.select=function(t){for(var e,n,r,i,a,o=[],s=-1,l=this.length;++s=e&&(e=i+1);!(o=s[e])&&++e1?It:t<-1?-It:Math.asin(t)}function Nt(t){return((t=Math.exp(t))+1/t)/2}var jt=Math.SQRT2;a.interpolateZoom=function(t,e){var n,r,i=t[0],a=t[1],o=t[2],s=e[0],l=e[1],c=e[2],u=s-i,f=l-a,h=u*u+f*f;if(h0&&(t=t.transition().duration(g)),t.call(_.event)}function S(){s&&s.domain(o.range().map((function(t){return(t-h.x)/h.k})).map(o.invert)),f&&f.domain(c.range().map((function(t){return(t-h.y)/h.k})).map(c.invert))}function E(t){v++||t({type:"zoomstart"})}function C(t){S(),t({type:"zoom",scale:h.k,translate:[h.x,h.y]})}function P(t){--v||(t({type:"zoomend"}),e=null)}function L(){var t=this,e=w.of(t,arguments),n=0,r=a.select(u(t)).on(y,(function(){n=1,M(a.mouse(t),i),C(e)})).on(b,(function(){r.on(y,null).on(b,null),o(n),P(e)})),i=k(a.mouse(t)),o=Tt(t);Ji.call(t),E(e)}function O(){var t,e=this,n=w.of(e,arguments),r={},o=0,s=".zoom-"+a.event.changedTouches[0].identifier,l="touchmove"+s,c="touchend"+s,u=[],f=a.select(e),d=Tt(e);function p(){var n=a.touches(e);return t=h.k,n.forEach((function(t){t.identifier in r&&(r[t.identifier]=k(t))})),n}function g(){var t=a.event.target;a.select(t).on(l,v).on(c,y),u.push(t);for(var n=a.event.changedTouches,s=0,f=n.length;s1){m=d[0];var b=d[1],x=m[0]-b[0],w=m[1]-b[1];o=x*x+w*w}}function v(){var s,l,c,u,f=a.touches(e);Ji.call(e);for(var h=0,d=f.length;h360?t-=360:t<0&&(t+=360),t<60?r+(i-r)*t/60:t<180?i:t<240?r+(i-r)*(240-t)/60:r}(t))}return t=isNaN(t)?0:(t%=360)<0?t+360:t,e=isNaN(e)||e<0?0:e>1?1:e,r=2*(n=n<0?0:n>1?1:n)-(i=n<=.5?n*(1+e):n+e-n*e),new oe(a(t+120),a(t),a(t-120))}function Wt(t,e,n){return this instanceof Wt?(this.h=+t,this.c=+e,void(this.l=+n)):arguments.length<2?t instanceof Wt?new Wt(t.h,t.c,t.l):ne(t instanceof Xt?t.l:(t=de((t=a.rgb(t)).r,t.g,t.b)).l,t.a,t.b):new Wt(t,e,n)}qt.brighter=function(t){return t=Math.pow(.7,arguments.length?t:1),new Vt(this.h,this.s,this.l/t)},qt.darker=function(t){return t=Math.pow(.7,arguments.length?t:1),new Vt(this.h,this.s,t*this.l)},qt.rgb=function(){return Gt(this.h,this.s,this.l)},a.hcl=Wt;var Yt=Wt.prototype=new Ht;function $t(t,e,n){return isNaN(t)&&(t=0),isNaN(e)&&(e=0),new Xt(n,Math.cos(t*=Dt)*e,Math.sin(t)*e)}function Xt(t,e,n){return this instanceof Xt?(this.l=+t,this.a=+e,void(this.b=+n)):arguments.length<2?t instanceof Xt?new Xt(t.l,t.a,t.b):t instanceof Wt?$t(t.h,t.c,t.l):de((t=oe(t)).r,t.g,t.b):new Xt(t,e,n)}Yt.brighter=function(t){return new Wt(this.h,this.c,Math.min(100,this.l+Kt*(arguments.length?t:1)))},Yt.darker=function(t){return new Wt(this.h,this.c,Math.max(0,this.l-Kt*(arguments.length?t:1)))},Yt.rgb=function(){return $t(this.h,this.c,this.l).rgb()},a.lab=Xt;var Kt=18,Zt=.95047,Jt=1,Qt=1.08883,te=Xt.prototype=new Ht;function ee(t,e,n){var r=(t+16)/116,i=r+e/500,a=r-n/200;return new oe(ae(3.2404542*(i=re(i)*Zt)-1.5371385*(r=re(r)*Jt)-.4985314*(a=re(a)*Qt)),ae(-.969266*i+1.8760108*r+.041556*a),ae(.0556434*i-.2040259*r+1.0572252*a))}function ne(t,e,n){return t>0?new Wt(Math.atan2(n,e)*Rt,Math.sqrt(e*e+n*n),t):new Wt(NaN,NaN,t)}function re(t){return t>.206893034?t*t*t:(t-4/29)/7.787037}function ie(t){return t>.008856?Math.pow(t,1/3):7.787037*t+4/29}function ae(t){return Math.round(255*(t<=.00304?12.92*t:1.055*Math.pow(t,1/2.4)-.055))}function oe(t,e,n){return this instanceof oe?(this.r=~~t,this.g=~~e,void(this.b=~~n)):arguments.length<2?t instanceof oe?new oe(t.r,t.g,t.b):fe(""+t,oe,Gt):new oe(t,e,n)}function se(t){return new oe(t>>16,t>>8&255,255&t)}function le(t){return se(t)+""}te.brighter=function(t){return new Xt(Math.min(100,this.l+Kt*(arguments.length?t:1)),this.a,this.b)},te.darker=function(t){return new Xt(Math.max(0,this.l-Kt*(arguments.length?t:1)),this.a,this.b)},te.rgb=function(){return ee(this.l,this.a,this.b)},a.rgb=oe;var ce=oe.prototype=new Ht;function ue(t){return t<16?"0"+Math.max(0,t).toString(16):Math.min(255,t).toString(16)}function fe(t,e,n){var r,i,a,o=0,s=0,l=0;if(r=/([a-z]+)\((.*)\)/.exec(t=t.toLowerCase()))switch(i=r[2].split(","),r[1]){case"hsl":return n(parseFloat(i[0]),parseFloat(i[1])/100,parseFloat(i[2])/100);case"rgb":return e(ge(i[0]),ge(i[1]),ge(i[2]))}return(a=ve.get(t))?e(a.r,a.g,a.b):(null==t||"#"!==t.charAt(0)||isNaN(a=parseInt(t.slice(1),16))||(4===t.length?(o=(3840&a)>>4,o|=o>>4,s=240&a,s|=s>>4,l=15&a,l|=l<<4):7===t.length&&(o=(16711680&a)>>16,s=(65280&a)>>8,l=255&a)),e(o,s,l))}function he(t,e,n){var r,i,a=Math.min(t/=255,e/=255,n/=255),o=Math.max(t,e,n),s=o-a,l=(o+a)/2;return s?(i=l<.5?s/(o+a):s/(2-o-a),r=t==o?(e-n)/s+(e0&&l<1?0:r),new Vt(r,i,l)}function de(t,e,n){var r=ie((.4124564*(t=pe(t))+.3575761*(e=pe(e))+.1804375*(n=pe(n)))/Zt),i=ie((.2126729*t+.7151522*e+.072175*n)/Jt);return Xt(116*i-16,500*(r-i),200*(i-ie((.0193339*t+.119192*e+.9503041*n)/Qt)))}function pe(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function ge(t){var e=parseFloat(t);return"%"===t.charAt(t.length-1)?Math.round(2.55*e):e}ce.brighter=function(t){t=Math.pow(.7,arguments.length?t:1);var e=this.r,n=this.g,r=this.b,i=30;return e||n||r?(e&&e=200&&e<300||304===e){try{t=n.call(i,c)}catch(ma){return void o.error.call(i,ma)}o.load.call(i,t)}else o.error.call(i,c)}return self.XDomainRequest&&!("withCredentials"in c)&&/^(http(s)?:)?\/\//.test(t)&&(c=new XDomainRequest),"onload"in c?c.onload=c.onerror=f:c.onreadystatechange=function(){c.readyState>3&&f()},c.onprogress=function(t){var e=a.event;a.event=t;try{o.progress.call(i,c)}finally{a.event=e}},i.header=function(t,e){return t=(t+"").toLowerCase(),arguments.length<2?l[t]:(null==e?delete l[t]:l[t]=e+"",i)},i.mimeType=function(t){return arguments.length?(e=null==t?null:t+"",i):e},i.responseType=function(t){return arguments.length?(u=t,i):u},i.response=function(t){return n=t,i},["get","post"].forEach((function(t){i[t]=function(){return i.send.apply(i,[t].concat(s(arguments)))}})),i.send=function(n,r,a){if(2===arguments.length&&"function"===typeof r&&(a=r,r=null),c.open(n,t,!0),null==e||"accept"in l||(l.accept=e+",*/*"),c.setRequestHeader)for(var s in l)c.setRequestHeader(s,l[s]);return null!=e&&c.overrideMimeType&&c.overrideMimeType(e),null!=u&&(c.responseType=u),null!=a&&i.on("error",a).on("load",(function(t){a(null,t)})),o.beforesend.call(i,c),c.send(null==r?null:r),i},i.abort=function(){return c.abort(),i},a.rebind(i,o,"on"),null==r?i:i.get(function(t){return 1===t.length?function(e,n){t(null==e?n:null)}:t}(r))}ve.forEach((function(t,e){ve.set(t,se(e))})),a.functor=me,a.xhr=ye(R),a.dsv=function(t,e){var n=new RegExp('["'+t+"\n]"),r=t.charCodeAt(0);function i(t,n,r){arguments.length<3&&(r=n,n=null);var i=be(t,e,null==n?a:o(n),r);return i.row=function(t){return arguments.length?i.response(null==(n=t)?a:o(t)):n},i}function a(t){return i.parse(t.responseText)}function o(t){return function(e){return i.parse(e.responseText,t)}}function s(e){return e.map(l).join(t)}function l(t){return n.test(t)?'"'+t.replace(/\"/g,'""')+'"':t}return i.parse=function(t,e){var n;return i.parseRows(t,(function(t,r){if(n)return n(t,r-1);var i=function(e){for(var n={},r=t.length,i=0;i=l)return o;if(i)return i=!1,a;var e=c;if(34===t.charCodeAt(e)){for(var n=e;n++24?(isFinite(e)&&(clearTimeout(ke),ke=setTimeout(Ae,e)),_e=0):(_e=1,Te(Ae))}function Se(){for(var t=Date.now(),e=xe;e;)t>=e.t&&e.c(t-e.t)&&(e.c=null),e=e.n;return t}function Ee(){for(var t,e=xe,n=1/0;e;)e.c?(e.t1&&(e=t[a[o-2]],n=t[a[o-1]],r=t[s],(n[0]-e[0])*(r[1]-e[1])-(n[1]-e[1])*(r[0]-e[0])<=0);)--o;a[o++]=s}return a.slice(0,o)}function Oe(t,e){return t[0]-e[0]||t[1]-e[1]}a.timer=function(){Me.apply(this,arguments)},a.timer.flush=function(){Se(),Ee()},a.round=function(t,e){return e?Math.round(t*(e=Math.pow(10,e)))/e:Math.round(t)},a.geom={},a.geom.hull=function(t){var e=Ce,n=Pe;if(arguments.length)return r(t);function r(t){if(t.length<3)return[];var r,i=me(e),a=me(n),o=t.length,s=[],l=[];for(r=0;r=0;--r)d.push(t[s[c[r]][2]]);for(r=+f;rEt)s=s.L;else{if(!((i=a-Ke(s,o))>Et)){r>-Et?(e=s.P,n=s):i>-Et?(e=s,n=s.N):e=n=s;break}if(!s.R){e=s;break}s=s.R}var l=Ge(t);if(Fe.insert(e,l),e||n){if(e===n)return en(e),n=Ge(e.site),Fe.insert(l,n),l.edge=n.edge=an(e.site,l.site),tn(e),void tn(n);if(n){en(e),en(n);var c=e.site,u=c.x,f=c.y,h=t.x-u,d=t.y-f,p=n.site,g=p.x-u,v=p.y-f,m=2*(h*v-d*g),y=h*h+d*d,b=g*g+v*v,x={x:(v*y-d*b)/m+u,y:(h*b-g*y)/m+f};sn(n.edge,c,p,x),l.edge=an(c,t,null,x),n.edge=an(t,p,null,x),tn(e),tn(n)}else l.edge=an(e.site,l.site)}}function Xe(t,e){var n=t.site,r=n.x,i=n.y,a=i-e;if(!a)return r;var o=t.P;if(!o)return-1/0;var s=(n=o.site).x,l=n.y,c=l-e;if(!c)return s;var u=s-r,f=1/a-1/c,h=u/c;return f?(-h+Math.sqrt(h*h-2*f*(u*u/(-2*c)-l+c/2+i-a/2)))/f+r:(r+s)/2}function Ke(t,e){var n=t.N;if(n)return Xe(n,e);var r=t.site;return r.y===e?r.x:1/0}function Ze(t){this.site=t,this.edges=[]}function Je(t,e){return e.angle-t.angle}function Qe(){un(this),this.x=this.y=this.arc=this.site=this.cy=null}function tn(t){var e=t.P,n=t.N;if(e&&n){var r=e.site,i=t.site,a=n.site;if(r!==a){var o=i.x,s=i.y,l=r.x-o,c=r.y-s,u=a.x-o,f=2*(l*(v=a.y-s)-c*u);if(!(f>=-Ct)){var h=l*l+c*c,d=u*u+v*v,p=(v*h-c*d)/f,g=(l*d-u*h)/f,v=g+s,m=Ve.pop()||new Qe;m.arc=t,m.site=i,m.x=p+o,m.y=v+Math.sqrt(p*p+g*g),m.cy=v,t.circle=m;for(var y=null,b=Ue._;b;)if(m.y=s)return;if(h>p){if(a){if(a.y>=c)return}else a={x:v,y:l};n={x:v,y:c}}else{if(a){if(a.y1)if(h>p){if(a){if(a.y>=c)return}else a={x:(l-i)/r,y:l};n={x:(c-i)/r,y:c}}else{if(a){if(a.y=s)return}else a={x:o,y:r*o+i};n={x:s,y:r*s+i}}else{if(a){if(a.x0)){if(e/=h,h<0){if(e0){if(e>f)return;e>u&&(u=e)}if(e=i-l,h||!(e<0)){if(e/=h,h<0){if(e>f)return;e>u&&(u=e)}else if(h>0){if(e0)){if(e/=d,d<0){if(e0){if(e>f)return;e>u&&(u=e)}if(e=a-c,d||!(e<0)){if(e/=d,d<0){if(e>f)return;e>u&&(u=e)}else if(d>0){if(e0&&(t.a={x:l+u*h,y:c+u*d}),f<1&&(t.b={x:l+f*h,y:c+f*d}),t}}}}}),l=o.length;l--;)(!nn(e=o[l],t)||!s(e)||_(e.a.x-e.b.x)Et||_(i-n)>Et)&&(s.splice(o,0,new ln(on(a.site,u,_(r-f)Et?{x:f,y:_(e-f)Et?{x:_(n-p)Et?{x:h,y:_(e-h)Et?{x:_(n-d)=n&&c.x<=i&&c.y>=r&&c.y<=o?[[n,o],[i,o],[i,r],[n,r]]:[]).point=t[s]})),e}function s(t){return t.map((function(t,e){return{x:Math.round(r(t,e)/Et)*Et,y:Math.round(i(t,e)/Et)*Et,i:e}}))}return o.links=function(t){return pn(s(t)).edges.filter((function(t){return t.l&&t.r})).map((function(e){return{source:t[e.l.i],target:t[e.r.i]}}))},o.triangles=function(t){var e=[];return pn(s(t)).cells.forEach((function(n,r){for(var i,a,o,s,l=n.site,c=n.edges.sort(Je),u=-1,f=c.length,h=c[f-1].edge,d=h.l===l?h.r:h.l;++ua&&(i=e.slice(a,i),s[o]?s[o]+=i:s[++o]=i),(n=n[0])===(r=r[0])?s[o]?s[o]+=r:s[++o]=r:(s[++o]=null,l.push({i:o,x:_n(n,r)})),a=Mn.lastIndex;return ag&&(g=l.x),l.y>v&&(v=l.y),c.push(l.x),u.push(l.y);else for(f=0;fg&&(g=b),x>v&&(v=x),c.push(b),u.push(x)}var w=g-d,k=v-p;function T(t,e,n,r,i,a,o,s){if(!isNaN(n)&&!isNaN(r))if(t.leaf){var l=t.x,c=t.y;if(null!=l)if(_(l-n)+_(c-r)<.01)M(t,e,n,r,i,a,o,s);else{var u=t.point;t.x=t.y=t.point=null,M(t,u,l,c,i,a,o,s),M(t,e,n,r,i,a,o,s)}else t.x=n,t.y=r,t.point=e}else M(t,e,n,r,i,a,o,s)}function M(t,e,n,r,i,a,o,s){var l=.5*(i+o),c=.5*(a+s),u=n>=l,f=r>=c,h=f<<1|u;t.leaf=!1,u?i=l:o=l,f?a=c:s=c,T(t=t.nodes[h]||(t.nodes[h]={leaf:!0,nodes:[],point:null,x:null,y:null}),e,n,r,i,a,o,s)}w>k?v=p+w:g=d+k;var A={leaf:!0,nodes:[],point:null,x:null,y:null,add:function(t){T(A,t,+m(t,++f),+y(t,f),d,p,g,v)},visit:function(t){bn(t,A,d,p,g,v)},find:function(t){return function(t,e,n,r,i,a,o){var s,l=1/0;return function t(c,u,f,h,d){if(!(u>a||f>o||h=w)<<1|e>=x,k=_+4;_=0&&!(n=a.interpolators[r](t,e)););return n}function Sn(t,e){var n,r=[],i=[],a=t.length,o=e.length,s=Math.min(t.length,e.length);for(n=0;n=1)return 1;var e=t*t,n=e*t;return 4*(t<.5?n:3*(t-e)+n-.75)}function zn(t){return 1-Math.cos(t*It)}function Nn(t){return Math.pow(2,10*(t-1))}function jn(t){return 1-Math.sqrt(1-t*t)}function Fn(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375}function Bn(t,e){return e-=t,function(n){return Math.round(t+e*n)}}function Un(t){var e,n,r,i=[t.a,t.b],a=[t.c,t.d],o=Vn(i),s=Hn(i,a),l=Vn(((e=a)[0]+=(r=-s)*(n=i)[0],e[1]+=r*n[1],e))||0;i[0]*a[1]=0?t.slice(0,n):t,i=n>=0?t.slice(n+1):"in";return r=Cn.get(r)||En,i=Pn.get(i)||R,e=i(r.apply(null,o.call(arguments,1))),function(t){return t<=0?0:t>=1?1:e(t)}},a.interpolateHcl=function(t,e){t=a.hcl(t),e=a.hcl(e);var n=t.h,r=t.c,i=t.l,o=e.h-n,s=e.c-r,l=e.l-i;return isNaN(s)&&(s=0,r=isNaN(r)?e.c:r),isNaN(o)?(o=0,n=isNaN(n)?e.h:n):o>180?o-=360:o<-180&&(o+=360),function(t){return $t(n+o*t,r+s*t,i+l*t)+""}},a.interpolateHsl=function(t,e){t=a.hsl(t),e=a.hsl(e);var n=t.h,r=t.s,i=t.l,o=e.h-n,s=e.s-r,l=e.l-i;return isNaN(s)&&(s=0,r=isNaN(r)?e.s:r),isNaN(o)?(o=0,n=isNaN(n)?e.h:n):o>180?o-=360:o<-180&&(o+=360),function(t){return Gt(n+o*t,r+s*t,i+l*t)+""}},a.interpolateLab=function(t,e){t=a.lab(t),e=a.lab(e);var n=t.l,r=t.a,i=t.b,o=e.l-n,s=e.a-r,l=e.b-i;return function(t){return ee(n+o*t,r+s*t,i+l*t)+""}},a.interpolateRound=Bn,a.transform=function(t){var e=l.createElementNS(a.ns.prefix.svg,"g");return(a.transform=function(t){if(null!=t){e.setAttribute("transform",t);var n=e.transform.baseVal.consolidate()}return new Un(n?n.matrix:qn)})(t)},Un.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};var qn={a:1,b:0,c:0,d:1,e:0,f:0};function Gn(t){return t.length?t.pop()+",":""}function Wn(t,e){var n=[],r=[];return t=a.transform(t),e=a.transform(e),function(t,e,n,r){if(t[0]!==e[0]||t[1]!==e[1]){var i=n.push("translate(",null,",",null,")");r.push({i:i-4,x:_n(t[0],e[0])},{i:i-2,x:_n(t[1],e[1])})}else(e[0]||e[1])&&n.push("translate("+e+")")}(t.translate,e.translate,n,r),function(t,e,n,r){t!==e?(t-e>180?e+=360:e-t>180&&(t+=360),r.push({i:n.push(Gn(n)+"rotate(",null,")")-2,x:_n(t,e)})):e&&n.push(Gn(n)+"rotate("+e+")")}(t.rotate,e.rotate,n,r),function(t,e,n,r){t!==e?r.push({i:n.push(Gn(n)+"skewX(",null,")")-2,x:_n(t,e)}):e&&n.push(Gn(n)+"skewX("+e+")")}(t.skew,e.skew,n,r),function(t,e,n,r){if(t[0]!==e[0]||t[1]!==e[1]){var i=n.push(Gn(n)+"scale(",null,",",null,")");r.push({i:i-4,x:_n(t[0],e[0])},{i:i-2,x:_n(t[1],e[1])})}else 1===e[0]&&1===e[1]||n.push(Gn(n)+"scale("+e+")")}(t.scale,e.scale,n,r),t=e=null,function(t){for(var e,i=-1,a=r.length;++i0?n=e:(t.c=null,t.t=NaN,t=null,l.end({type:"end",alpha:n=0})):e>0&&(l.start({type:"start",alpha:n=e}),t=Me(s.tick)),s):n},s.start=function(){var t,e,n,a=m.length,l=y.length,u=c[0],p=c[1];for(t=0;t=0;)n.push(i[r])}function sr(t,e){for(var n=[t],r=[];null!=(t=n.pop());)if(r.push(t),(a=t.children)&&(i=a.length))for(var i,a,o=-1;++o=0;)o.push(u=c[l]),u.parent=a,u.depth=a.depth+1;n&&(a.value=0),a.children=c}else n&&(a.value=+n.call(r,a,a.depth)||0),delete a.children;return sr(i,(function(e){var r,i;t&&(r=e.children)&&r.sort(t),n&&(i=e.parent)&&(i.value+=e.value)})),s}return r.sort=function(e){return arguments.length?(t=e,r):t},r.children=function(t){return arguments.length?(e=t,r):e},r.value=function(t){return arguments.length?(n=t,r):n},r.revalue=function(t){return n&&(or(t,(function(t){t.children&&(t.value=0)})),sr(t,(function(t){var e;t.children||(t.value=+n.call(r,t,t.depth)||0),(e=t.parent)&&(e.value+=t.value)}))),t},r},a.layout.partition=function(){var t=a.layout.hierarchy(),e=[1,1];function n(t,e,r,i){var a=t.children;if(t.x=e,t.y=t.depth*i,t.dx=r,t.dy=i,a&&(o=a.length)){var o,s,l,c=-1;for(r=t.value?r/t.value:0;++cs&&(s=r),o.push(r)}for(n=0;ni&&(r=n,i=e);return r}function wr(t){return t.reduce(_r,0)}function _r(t,e){return t+e[1]}function kr(t,e){return Tr(t,Math.ceil(Math.log(e.length)/Math.LN2+1))}function Tr(t,e){for(var n=-1,r=+t[0],i=(t[1]-r)/e,a=[];++n<=e;)a[n]=i*n+r;return a}function Mr(t){return[a.min(t),a.max(t)]}function Ar(t,e){return t.value-e.value}function Sr(t,e){var n=t._pack_next;t._pack_next=e,e._pack_prev=t,e._pack_next=n,n._pack_prev=e}function Er(t,e){t._pack_next=e,e._pack_prev=t}function Cr(t,e){var n=e.x-t.x,r=e.y-t.y,i=t.r+e.r;return.999*i*i>n*n+r*r}function Pr(t){if((e=t.children)&&(l=e.length)){var e,n,r,i,a,o,s,l,c=1/0,u=-1/0,f=1/0,h=-1/0;if(e.forEach(Lr),(n=e[0]).x=-n.r,n.y=0,b(n),l>1&&((r=e[1]).x=r.r,r.y=0,b(r),l>2))for(Dr(n,r,i=e[2]),b(i),Sr(n,i),n._pack_prev=i,Sr(i,r),r=n._pack_next,a=3;a0)for(o=-1;++o=f[0]&&l<=f[1]&&((s=c[a.bisect(h,l,1,p)-1]).y+=g,s.push(i[o]));return c}return i.value=function(t){return arguments.length?(e=t,i):e},i.range=function(t){return arguments.length?(n=me(t),i):n},i.bins=function(t){return arguments.length?(r="number"===typeof t?function(e){return Tr(e,t)}:me(t),i):r},i.frequency=function(e){return arguments.length?(t=!!e,i):t},i},a.layout.pack=function(){var t,e=a.layout.hierarchy().sort(Ar),n=0,r=[1,1];function i(i,a){var o=e.call(this,i,a),s=o[0],l=r[0],c=r[1],u=null==t?Math.sqrt:"function"===typeof t?t:function(){return t};if(s.x=s.y=0,sr(s,(function(t){t.r=+u(t.value)})),sr(s,Pr),n){var f=n*(t?1:Math.max(2*s.r/l,2*s.r/c))/2;sr(s,(function(t){t.r+=f})),sr(s,Pr),sr(s,(function(t){t.r-=f}))}return Ir(s,l/2,c/2,t?1:1/Math.max(2*s.r/l,2*s.r/c)),o}return i.size=function(t){return arguments.length?(r=t,i):r},i.radius=function(e){return arguments.length?(t=null==e||"function"===typeof e?e:+e,i):t},i.padding=function(t){return arguments.length?(n=+t,i):n},ar(i,e)},a.layout.tree=function(){var t=a.layout.hierarchy().sort(null).value(null),e=Rr,n=[1,1],r=null;function i(i,a){var c=t.call(this,i,a),u=c[0],f=function(t){for(var e,n={A:null,children:[t]},r=[n];null!=(e=r.pop());)for(var i,a=e.children,o=0,s=a.length;od.x&&(d=t),t.depth>p.depth&&(p=t)}));var g=e(h,d)/2-h.x,v=n[0]/(d.x+e(d,h)/2+g),m=n[1]/(p.depth||1);or(u,(function(t){t.x=(t.x+g)*v,t.y=t.depth*m}))}return c}function o(t){var n=t.children,r=t.parent.children,i=t.i?r[t.i-1]:null;if(n.length){!function(t){for(var e,n=0,r=0,i=t.children,a=i.length;--a>=0;)(e=i[a]).z+=n,e.m+=n,n+=e.s+(r+=e.c)}(t);var a=(n[0].z+n[n.length-1].z)/2;i?(t.z=i.z+e(t._,i._),t.m=t.z-a):t.z=a}else i&&(t.z=i.z+e(t._,i._));t.parent.A=function(t,n,r){if(n){for(var i,a=t,o=t,s=n,l=a.parent.children[0],c=a.m,u=o.m,f=s.m,h=l.m;s=Nr(s),a=zr(a),s&&a;)l=zr(l),(o=Nr(o)).a=t,(i=s.z+f-a.z-c+e(s._,a._))>0&&(jr(Fr(s,t,r),t,i),c+=i,u+=i),f+=s.m,c+=a.m,h+=l.m,u+=o.m;s&&!Nr(o)&&(o.t=s,o.m+=f-u),a&&!zr(l)&&(l.t=a,l.m+=c-h,r=t)}return r}(t,i,t.parent.A||r[0])}function s(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function l(t){t.x*=n[0],t.y=t.depth*n[1]}return i.separation=function(t){return arguments.length?(e=t,i):e},i.size=function(t){return arguments.length?(r=null==(n=t)?l:null,i):r?null:n},i.nodeSize=function(t){return arguments.length?(r=null==(n=t)?null:l,i):r?n:null},ar(i,t)},a.layout.cluster=function(){var t=a.layout.hierarchy().sort(null).value(null),e=Rr,n=[1,1],r=!1;function i(i,o){var s,l=t.call(this,i,o),c=l[0],u=0;sr(c,(function(t){var n=t.children;n&&n.length?(t.x=function(t){return t.reduce((function(t,e){return t+e.x}),0)/t.length}(n),t.y=function(t){return 1+a.max(t,(function(t){return t.y}))}(n)):(t.x=s?u+=e(t,s):0,t.y=0,s=t)}));var f=Br(c),h=Ur(c),d=f.x-e(f,h)/2,p=h.x+e(h,f)/2;return sr(c,r?function(t){t.x=(t.x-c.x)*n[0],t.y=(c.y-t.y)*n[1]}:function(t){t.x=(t.x-d)/(p-d)*n[0],t.y=(1-(c.y?t.y/c.y:1))*n[1]}),l}return i.separation=function(t){return arguments.length?(e=t,i):e},i.size=function(t){return arguments.length?(r=null==(n=t),i):r?null:n},i.nodeSize=function(t){return arguments.length?(r=null!=(n=t),i):r?n:null},ar(i,t)},a.layout.treemap=function(){var t,e=a.layout.hierarchy(),n=Math.round,r=[1,1],i=null,o=Hr,s=!1,l="squarify",c=.5*(1+Math.sqrt(5));function u(t,e){for(var n,r,i=-1,a=t.length;++i0;)s.push(n=c[i-1]),s.area+=n.area,"squarify"!==l||(r=d(s,g))<=h?(c.pop(),h=r):(s.area-=s.pop().area,p(s,g,a,!1),g=Math.min(a.dx,a.dy),s.length=s.area=0,h=1/0);s.length&&(p(s,g,a,!0),s.length=s.area=0),e.forEach(f)}}function h(t){var e=t.children;if(e&&e.length){var n,r=o(t),i=e.slice(),a=[];for(u(i,r.dx*r.dy/t.value),a.area=0;n=i.pop();)a.push(n),a.area+=n.area,null!=n.z&&(p(a,n.z?r.dx:r.dy,r,!i.length),a.length=a.area=0);e.forEach(h)}}function d(t,e){for(var n,r=t.area,i=0,a=1/0,o=-1,s=t.length;++oi&&(i=n));return e*=e,(r*=r)?Math.max(e*i*c/r,r/(e*a*c)):1/0}function p(t,e,r,i){var a,o=-1,s=t.length,l=r.x,c=r.y,u=e?n(t.area/e):0;if(e==r.dx){for((i||u>r.dy)&&(u=r.dy);++or.dx)&&(u=r.dx);++o1);return t+e*n*Math.sqrt(-2*Math.log(i)/i)}},logNormal:function(){var t=a.random.normal.apply(a,arguments);return function(){return Math.exp(t())}},bates:function(t){var e=a.random.irwinHall(t);return function(){return e()/t}},irwinHall:function(t){return function(){for(var e=0,n=0;n2?Kr:Wr,l=r?$n:Yn;return i=o(t,e,l,n),a=o(e,t,l,An),s}function s(t){return i(t)}return s.invert=function(t){return a(t)},s.domain=function(e){return arguments.length?(t=e.map(Number),o()):t},s.range=function(t){return arguments.length?(e=t,o()):e},s.rangeRound=function(t){return s.range(t).interpolate(Bn)},s.clamp=function(t){return arguments.length?(r=t,o()):r},s.interpolate=function(t){return arguments.length?(n=t,o()):n},s.ticks=function(e){return ei(t,e)},s.tickFormat=function(e,n){return d3_scale_linearTickFormat(t,e,n)},s.nice=function(e){return Qr(t,e),o()},s.copy=function(){return Zr(t,e,n,r)},o()}function Jr(t,e){return a.rebind(t,e,"range","rangeRound","interpolate","clamp")}function Qr(t,e){return Yr(t,$r(ti(t,e)[2])),Yr(t,$r(ti(t,e)[2])),t}function ti(t,e){null==e&&(e=10);var n=qr(t),r=n[1]-n[0],i=Math.pow(10,Math.floor(Math.log(r/e)/Math.LN10)),a=e/r*i;return a<=.15?i*=10:a<=.35?i*=5:a<=.75&&(i*=2),n[0]=Math.ceil(n[0]/i)*i,n[1]=Math.floor(n[1]/i)*i+.5*i,n[2]=i,n}function ei(t,e){return a.range.apply(a,ti(t,e))}function ni(t,e,n,r){function i(t){return(n?Math.log(t<0?0:t):-Math.log(t>0?0:-t))/Math.log(e)}function a(t){return n?Math.pow(e,t):-Math.pow(e,-t)}function o(e){return t(i(e))}return o.invert=function(e){return a(t.invert(e))},o.domain=function(e){return arguments.length?(n=e[0]>=0,t.domain((r=e.map(Number)).map(i)),o):r},o.base=function(n){return arguments.length?(e=+n,t.domain(r.map(i)),o):e},o.nice=function(){var e=Yr(r.map(i),n?Math:ri);return t.domain(e),r=e.map(a),o},o.ticks=function(){var t=qr(r),o=[],s=t[0],l=t[1],c=Math.floor(i(s)),u=Math.ceil(i(l)),f=e%1?2:e;if(isFinite(u-c)){if(n){for(;c0;h--)o.push(a(c)*h);for(c=0;o[c]l;u--);o=o.slice(c,u)}return o},o.copy=function(){return ni(t.copy(),e,n,r)},Jr(o,t)}a.scale.linear=function(){return Zr([0,1],[0,1],An,!1)},a.scale.log=function(){return ni(a.scale.linear().domain([0,1]),10,!0,[1,10])};var ri={floor:function(t){return-Math.ceil(-t)},ceil:function(t){return-Math.floor(-t)}};function ii(t,e,n){var r=ai(e),i=ai(1/e);function a(e){return t(r(e))}return a.invert=function(e){return i(t.invert(e))},a.domain=function(e){return arguments.length?(t.domain((n=e.map(Number)).map(r)),a):n},a.ticks=function(t){return ei(n,t)},a.tickFormat=function(t,e){return d3_scale_linearTickFormat(n,t,e)},a.nice=function(t){return a.domain(Qr(n,t))},a.exponent=function(o){return arguments.length?(r=ai(e=o),i=ai(1/e),t.domain(n.map(r)),a):e},a.copy=function(){return ii(t.copy(),e,n)},Jr(a,t)}function ai(t){return function(e){return e<0?-Math.pow(-e,t):Math.pow(e,t)}}function oi(t,e){var n,r,i;function o(i){return r[((n.get(i)||("range"===e.t?n.set(i,t.push(i)):NaN))-1)%r.length]}function s(e,n){return a.range(t.length).map((function(t){return e+n*t}))}return o.domain=function(r){if(!arguments.length)return t;t=[],n=new T;for(var i,a=-1,s=r.length;++a0?n[r-1]:t[0],rf?0:1;if(c=Ot)return l(c,d)+(s?l(s,1-d):"")+"Z";var p,g,v,m,y,b,x,w,_,k,T,M,A=0,S=0,E=[];if((m=(+o.apply(this,arguments)||0)/2)&&(v=r===vi?Math.sqrt(s*s+c*c):+r.apply(this,arguments),d||(S*=-1),c&&(S=zt(v/c*Math.sin(m))),s&&(A=zt(v/s*Math.sin(m)))),c){y=c*Math.cos(u+S),b=c*Math.sin(u+S),x=c*Math.cos(f-S),w=c*Math.sin(f-S);var C=Math.abs(f-u-2*S)<=Pt?0:1;if(S&&_i(y,b,x,w)===d^C){var P=(u+f)/2;y=c*Math.cos(P),b=c*Math.sin(P),x=w=null}}else y=b=0;if(s){_=s*Math.cos(f-A),k=s*Math.sin(f-A),T=s*Math.cos(u+A),M=s*Math.sin(u+A);var L=Math.abs(u-f+2*A)<=Pt?0:1;if(A&&_i(_,k,T,M)===1-d^L){var O=(u+f)/2;_=s*Math.cos(O),k=s*Math.sin(O),T=M=null}}else _=k=0;if(h>Et&&(p=Math.min(Math.abs(c-s)/2,+n.apply(this,arguments)))>.001){g=s0?0:1}function ki(t,e,n,r,i){var a=t[0]-e[0],o=t[1]-e[1],s=(i?r:-r)/Math.sqrt(a*a+o*o),l=s*o,c=-s*a,u=t[0]+l,f=t[1]+c,h=e[0]+l,d=e[1]+c,p=(u+h)/2,g=(f+d)/2,v=h-u,m=d-f,y=v*v+m*m,b=n-r,x=u*d-h*f,w=(m<0?-1:1)*Math.sqrt(Math.max(0,b*b*y-x*x)),_=(x*m-v*w)/y,k=(-x*v-m*w)/y,T=(x*m+v*w)/y,M=(-x*v+m*w)/y,A=_-p,S=k-g,E=T-p,C=M-g;return A*A+S*S>E*E+C*C&&(_=T,k=M),[[_-l,k-c],[_*n/b,k*n/b]]}function Ti(){return!0}function Mi(t){var e=Ce,n=Pe,r=Ti,i=Si,a=i.key,o=.7;function s(a){var s,l=[],c=[],u=-1,f=a.length,h=me(e),d=me(n);function p(){l.push("M",i(t(c),o))}for(;++u1&&i.push("H",r[0]),i.join("")},"step-before":Ci,"step-after":Pi,basis:Ii,"basis-open":function(t){if(t.length<4)return Si(t);for(var e,n=[],r=-1,i=t.length,a=[0],o=[0];++r<3;)e=t[r],a.push(e[0]),o.push(e[1]);for(n.push(Di(Ni,a)+","+Di(Ni,o)),--r;++r9&&(i=3*e/Math.sqrt(i),o[s]=i*n,o[s+1]=i*r);for(s=-1;++s<=l;)i=(t[Math.min(l,s+1)][0]-t[Math.max(0,s-1)][0])/(6*(1+o[s]*o[s])),a.push([i||0,o[s]*i||0]);return a}(t))}});function Si(t){return t.length>1?t.join("L"):t+"Z"}function Ei(t){return t.join("L")+"Z"}function Ci(t){for(var e=0,n=t.length,r=t[0],i=[r[0],",",r[1]];++e1){s=e[1],a=t[l],l++,r+="C"+(i[0]+o[0])+","+(i[1]+o[1])+","+(a[0]-s[0])+","+(a[1]-s[1])+","+a[0]+","+a[1];for(var c=2;cPt)+",1 "+e}function l(t,e,n,r){return"Q 0,0 "+r}return a.radius=function(t){return arguments.length?(n=me(t),a):n},a.source=function(e){return arguments.length?(t=me(e),a):t},a.target=function(t){return arguments.length?(e=me(t),a):e},a.startAngle=function(t){return arguments.length?(r=me(t),a):r},a.endAngle=function(t){return arguments.length?(i=me(t),a):i},a},a.svg.diagonal=function(){var t=Hi,e=Vi,n=Gi;function r(r,i){var a=t.call(this,r,i),o=e.call(this,r,i),s=(a.y+o.y)/2,l=[a,{x:a.x,y:s},{x:o.x,y:s},o];return"M"+(l=l.map(n))[0]+"C"+l[1]+" "+l[2]+" "+l[3]}return r.source=function(e){return arguments.length?(t=me(e),r):t},r.target=function(t){return arguments.length?(e=me(t),r):e},r.projection=function(t){return arguments.length?(n=t,r):n},r},a.svg.diagonal.radial=function(){var t=a.svg.diagonal(),e=Gi,n=t.projection;return t.projection=function(t){return arguments.length?n(function(t){return function(){var e=t.apply(this,arguments),n=e[0],r=e[1]-It;return[n*Math.cos(r),n*Math.sin(r)]}}(e=t)):e},t},a.svg.symbol=function(){var t=Yi,e=Wi;function n(n,r){return(Xi.get(t.call(this,n,r))||$i)(e.call(this,n,r))}return n.type=function(e){return arguments.length?(t=me(e),n):t},n.size=function(t){return arguments.length?(e=me(t),n):e},n};var Xi=a.map({circle:$i,cross:function(t){var e=Math.sqrt(t/5)/2;return"M"+-3*e+","+-e+"H"+-e+"V"+-3*e+"H"+e+"V"+-e+"H"+3*e+"V"+e+"H"+e+"V"+3*e+"H"+-e+"V"+e+"H"+-3*e+"Z"},diamond:function(t){var e=Math.sqrt(t/(2*Zi)),n=e*Zi;return"M0,"+-e+"L"+n+",0 0,"+e+" "+-n+",0Z"},square:function(t){var e=Math.sqrt(t)/2;return"M"+-e+","+-e+"L"+e+","+-e+" "+e+","+e+" "+-e+","+e+"Z"},"triangle-down":function(t){var e=Math.sqrt(t/Ki),n=e*Ki/2;return"M0,"+n+"L"+e+","+-n+" "+-e+","+-n+"Z"},"triangle-up":function(t){var e=Math.sqrt(t/Ki),n=e*Ki/2;return"M0,"+-n+"L"+e+","+n+" "+-e+","+n+"Z"}});a.svg.symbolTypes=Xi.keys();var Ki=Math.sqrt(3),Zi=Math.tan(30*Dt);Z.transition=function(t){for(var e,n,r=ea||++ia,i=sa(t),a=[],o=na||{time:Date.now(),ease:Rn,delay:0,duration:250},s=-1,l=this.length;++s0;)c[--h].call(t,o);if(a>=1)return f.event&&f.event.end.call(t,t.__data__,e),--u.count?delete u[r]:delete t[n],1}f||(a=i.time,o=Me((function(t){var e=f.delay;if(o.t=e+a,e<=t)return h(t-e);o.c=h}),0,a),f=u[r]={tween:new T,time:a,timer:o,delay:i.delay,duration:i.duration,ease:i.ease,index:e},i=null,++u.count)}ra.call=Z.call,ra.empty=Z.empty,ra.node=Z.node,ra.size=Z.size,a.transition=function(t,e){return t&&t.transition?ea?t.transition(e):t:a.selection().transition(t)},a.transition.prototype=ra,ra.select=function(t){var e,n,r,i=this.id,a=this.namespace,o=[];t=J(t);for(var s=-1,l=this.length;++srect,.s>rect").attr("width",o[1]-o[0])}function g(t){t.select(".extent").attr("y",s[0]),t.selectAll(".extent,.e>rect,.w>rect").attr("height",s[1]-s[0])}function v(){var f,v,m=this,y=a.select(a.event.target),b=n.of(m,arguments),x=a.select(m),w=y.datum(),_=!/^(n|s)$/.test(w)&&r,k=!/^(e|w)$/.test(w)&&i,T=y.classed("extent"),M=Tt(m),A=a.mouse(m),S=a.select(u(m)).on("keydown.brush",(function(){32==a.event.keyCode&&(T||(f=null,A[0]-=o[1],A[1]-=s[1],T=2),H())})).on("keyup.brush",(function(){32==a.event.keyCode&&2==T&&(A[0]+=o[1],A[1]+=s[1],T=0,H())}));if(a.event.changedTouches?S.on("touchmove.brush",P).on("touchend.brush",O):S.on("mousemove.brush",P).on("mouseup.brush",O),x.interrupt().selectAll("*").interrupt(),T)A[0]=o[0]-A[0],A[1]=s[0]-A[1];else if(w){var E=+/w$/.test(w),C=+/^n/.test(w);v=[o[1-E]-A[0],s[1-C]-A[1]],A[0]=o[E],A[1]=s[C]}else a.event.altKey&&(f=A.slice());function P(){var t=a.mouse(m),e=!1;v&&(t[0]+=v[0],t[1]+=v[1]),T||(a.event.altKey?(f||(f=[(o[0]+o[1])/2,(s[0]+s[1])/2]),A[0]=o[+(t[0]>>1;e.dtype||(e.dtype="array"),"string"===typeof e.dtype?p=new(f(e.dtype))(v):e.dtype&&(p=e.dtype,Array.isArray(p)&&(p.length=v));for(var m=0;mn||s>1073741824){for(var h=0;hn+i||A>r+i||S=P)&&o!==s){var l=y[a];void 0===s&&(s=l.length);for(var c=o;c=v&&f<=_&&h>=m&&h<=k&&L.push(u)}var d=b[a],p=d[4*o+0],g=d[4*o+1],x=d[4*o+2],w=d[4*o+3],T=function(t,e){for(var n=null,r=0;null===n;)if(n=t[4*e+r],++r>t.length)return null;return n}(d,o+1),E=.5*i,O=a+1;e(n,r,E,O,p,g||x||w||T),e(n,r+E,E,O,g,x||w||T),e(n+E,r,E,O,x,w||T),e(n+E,r+E,E,O,w,T)}}(0,0,1,0,0,1),L},p;function E(t,e,n){for(var r=1,i=.5,a=.5,o=.5,s=0;s0){e+=Math.abs(o(t[0]));for(var n=1;n2){for(l=0;l=0))throw new Error("precision must be a positive number");var n=Math.pow(10,e||0);return Math.round(t*n)/n},e.radiansToLength=u,e.lengthToRadians=f,e.lengthToDegrees=function(t,e){return h(f(t,e))},e.bearingToAzimuth=function(t){var e=t%360;return e<0&&(e+=360),e},e.radiansToDegrees=h,e.degreesToRadians=function(t){return t%360*Math.PI/180},e.convertLength=function(t,e,n){if(void 0===e&&(e="kilometers"),void 0===n&&(n="kilometers"),!(t>=0))throw new Error("length must be a positive number");return u(f(t,e),n)},e.convertArea=function(t,n,r){if(void 0===n&&(n="meters"),void 0===r&&(r="kilometers"),!(t>=0))throw new Error("area must be a positive number");var i=e.areaFactors[n];if(!i)throw new Error("invalid original units");var a=e.areaFactors[r];if(!a)throw new Error("invalid final units");return t/i*a},e.isNumber=d,e.isObject=function(t){return!!t&&t.constructor===Object},e.validateBBox=function(t){if(!t)throw new Error("bbox is required");if(!Array.isArray(t))throw new Error("bbox must be an Array");if(4!==t.length&&6!==t.length)throw new Error("bbox must be an Array of 4 or 6 numbers");t.forEach((function(t){if(!d(t))throw new Error("bbox must only contain numbers")}))},e.validateId=function(t){if(!t)throw new Error("id is required");if(-1===["string","number"].indexOf(typeof t))throw new Error("id must be a number or a string")}},60302:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(23132);function i(t,e,n){if(null!==t)for(var r,a,o,s,l,c,u,f,h=0,d=0,p=t.type,g="FeatureCollection"===p,v="Feature"===p,m=g?t.features.length:1,y=0;yc||d>u||p>f)return l=i,c=n,u=d,f=p,void(o=0);var g=r.lineString([l,i],t.properties);if(!1===e(g,n,a,p,o))return!1;o++,l=i}))&&void 0}}}))}function u(t,e){if(!t)throw new Error("geojson is required");l(t,(function(t,n,i){if(null!==t.geometry){var a=t.geometry.type,o=t.geometry.coordinates;switch(a){case"LineString":if(!1===e(t,n,i,0,0))return!1;break;case"Polygon":for(var s=0;st[0]&&(e[0]=t[0]),e[1]>t[1]&&(e[1]=t[1]),e[2]=0))throw new Error("precision must be a positive number");var n=Math.pow(10,e||0);return Math.round(t*n)/n},e.radiansToLength=u,e.lengthToRadians=f,e.lengthToDegrees=function(t,e){return h(f(t,e))},e.bearingToAzimuth=function(t){var e=t%360;return e<0&&(e+=360),e},e.radiansToDegrees=h,e.degreesToRadians=function(t){return t%360*Math.PI/180},e.convertLength=function(t,e,n){if(void 0===e&&(e="kilometers"),void 0===n&&(n="kilometers"),!(t>=0))throw new Error("length must be a positive number");return u(f(t,e),n)},e.convertArea=function(t,n,r){if(void 0===n&&(n="meters"),void 0===r&&(r="kilometers"),!(t>=0))throw new Error("area must be a positive number");var i=e.areaFactors[n];if(!i)throw new Error("invalid original units");var a=e.areaFactors[r];if(!a)throw new Error("invalid final units");return t/i*a},e.isNumber=d,e.isObject=function(t){return!!t&&t.constructor===Object},e.validateBBox=function(t){if(!t)throw new Error("bbox is required");if(!Array.isArray(t))throw new Error("bbox must be an Array");if(4!==t.length&&6!==t.length)throw new Error("bbox must be an Array of 4 or 6 numbers");t.forEach((function(t){if(!d(t))throw new Error("bbox must only contain numbers")}))},e.validateId=function(t){if(!t)throw new Error("id is required");if(-1===["string","number"].indexOf(typeof t))throw new Error("id must be a number or a string")}},27138:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(94228);function i(t,e,n){if(null!==t)for(var r,a,o,s,l,c,u,f,h=0,d=0,p=t.type,g="FeatureCollection"===p,v="Feature"===p,m=g?t.features.length:1,y=0;yc||d>u||p>f)return l=i,c=n,u=d,f=p,void(o=0);var g=r.lineString([l,i],t.properties);if(!1===e(g,n,a,p,o))return!1;o++,l=i}))&&void 0}}}))}function u(t,e){if(!t)throw new Error("geojson is required");l(t,(function(t,n,i){if(null!==t.geometry){var a=t.geometry.type,o=t.geometry.coordinates;switch(a){case"LineString":if(!1===e(t,n,i,0,0))return!1;break;case"Polygon":for(var s=0;s=0))throw new Error("precision must be a positive number");var n=Math.pow(10,e||0);return Math.round(t*n)/n},e.radiansToLength=u,e.lengthToRadians=f,e.lengthToDegrees=function(t,e){return h(f(t,e))},e.bearingToAzimuth=function(t){var e=t%360;return e<0&&(e+=360),e},e.radiansToDegrees=h,e.degreesToRadians=function(t){return t%360*Math.PI/180},e.convertLength=function(t,e,n){if(void 0===e&&(e="kilometers"),void 0===n&&(n="kilometers"),!(t>=0))throw new Error("length must be a positive number");return u(f(t,e),n)},e.convertArea=function(t,n,r){if(void 0===n&&(n="meters"),void 0===r&&(r="kilometers"),!(t>=0))throw new Error("area must be a positive number");var i=e.areaFactors[n];if(!i)throw new Error("invalid original units");var a=e.areaFactors[r];if(!a)throw new Error("invalid final units");return t/i*a},e.isNumber=d,e.isObject=function(t){return!!t&&t.constructor===Object},e.validateBBox=function(t){if(!t)throw new Error("bbox is required");if(!Array.isArray(t))throw new Error("bbox must be an Array");if(4!==t.length&&6!==t.length)throw new Error("bbox must be an Array of 4 or 6 numbers");t.forEach((function(t){if(!d(t))throw new Error("bbox must only contain numbers")}))},e.validateId=function(t){if(!t)throw new Error("id is required");if(-1===["string","number"].indexOf(typeof t))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(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(64182);function i(t,e,n){if(null!==t)for(var r,a,o,s,l,c,u,f,h=0,d=0,p=t.type,g="FeatureCollection"===p,v="Feature"===p,m=g?t.features.length:1,y=0;yc||d>u||p>f)return l=i,c=n,u=d,f=p,void(o=0);var g=r.lineString([l,i],t.properties);if(!1===e(g,n,a,p,o))return!1;o++,l=i}))&&void 0}}}))}function u(t,e){if(!t)throw new Error("geojson is required");l(t,(function(t,n,i){if(null!==t.geometry){var a=t.geometry.type,o=t.geometry.coordinates;switch(a){case"LineString":if(!1===e(t,n,i,0,0))return!1;break;case"Polygon":for(var s=0;si&&(i=t[o]),t[o]1?n-1:0),i=1;i1?n-1:0),i=1;i1?n-1:0),i=1;i1?n-1:0),i=1;it.length)&&(n=t.length),t.substring(n-e.length,n)===e}var v="",m="",y="",b="",x={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:"},w=10;function _(t){var e=Object.keys(t),n=Object.create(Object.getPrototypeOf(t));return e.forEach((function(e){n[e]=t[e]})),Object.defineProperty(n,"message",{value:t.message}),n}function k(t){return d(t,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function T(t,e,n){var i="",a="",o=0,s="",l=!1,c=k(t),u=c.split("\n"),f=k(e).split("\n"),d=0,p="";if("strictEqual"===n&&"object"===h(t)&&"object"===h(e)&&null!==t&&null!==e&&(n="strictEqualObject"),1===u.length&&1===f.length&&u[0]!==f[0]){var _=u[0].length+f[0].length;if(_<=w){if(("object"!==h(t)||null===t)&&("object"!==h(e)||null===e)&&(0!==t||0!==e))return"".concat(x[n],"\n\n")+"".concat(u[0]," !== ").concat(f[0],"\n")}else if("strictEqualObject"!==n&&_<(r.stderr&&r.stderr.isTTY?r.stderr.columns:80)){for(;u[0][d]===f[0][d];)d++;d>2&&(p="\n ".concat(function(t,e){if(e=Math.floor(e),0==t.length||0==e)return"";var n=t.length*e;for(e=Math.floor(Math.log(e)/Math.log(2));e;)t+=t,e--;return t+t.substring(0,n-t.length)}(" ",d),"^"),d=0)}}for(var T=u[u.length-1],M=f[f.length-1];T===M&&(d++<2?s="\n ".concat(T).concat(s):i=T,u.pop(),f.pop(),0!==u.length&&0!==f.length);)T=u[u.length-1],M=f[f.length-1];var A=Math.max(u.length,f.length);if(0===A){var S=c.split("\n");if(S.length>30)for(S[26]="".concat(v,"...").concat(b);S.length>27;)S.pop();return"".concat(x.notIdentical,"\n\n").concat(S.join("\n"),"\n")}d>3&&(s="\n".concat(v,"...").concat(b).concat(s),l=!0),""!==i&&(s="\n ".concat(i).concat(s),i="");var E=0,C=x[n]+"\n".concat(m,"+ actual").concat(b," ").concat(y,"- expected").concat(b),P=" ".concat(v,"...").concat(b," Lines skipped");for(d=0;d1&&d>2&&(L>4?(a+="\n".concat(v,"...").concat(b),l=!0):L>3&&(a+="\n ".concat(f[d-2]),E++),a+="\n ".concat(f[d-1]),E++),o=d,i+="\n".concat(y,"-").concat(b," ").concat(f[d]),E++;else if(f.length1&&d>2&&(L>4?(a+="\n".concat(v,"...").concat(b),l=!0):L>3&&(a+="\n ".concat(u[d-2]),E++),a+="\n ".concat(u[d-1]),E++),o=d,a+="\n".concat(m,"+").concat(b," ").concat(u[d]),E++;else{var O=f[d],I=u[d],D=I!==O&&(!g(I,",")||I.slice(0,-1)!==O);D&&g(O,",")&&O.slice(0,-1)===I&&(D=!1,I+=","),D?(L>1&&d>2&&(L>4?(a+="\n".concat(v,"...").concat(b),l=!0):L>3&&(a+="\n ".concat(u[d-2]),E++),a+="\n ".concat(u[d-1]),E++),o=d,a+="\n".concat(m,"+").concat(b," ").concat(I),i+="\n".concat(y,"-").concat(b," ").concat(O),E+=2):(a+=i,i="",1!==L&&0!==d||(a+="\n ".concat(I),E++))}if(E>20&&d30)for(w[26]="".concat(v,"...").concat(b);w.length>27;)w.pop();n=1===w.length?o(this,f(e).call(this,"".concat(g," ").concat(w[0]))):o(this,f(e).call(this,"".concat(g,"\n\n").concat(w.join("\n"),"\n")))}else{var M=k(c),A="",S=x[a];"notDeepEqual"===a||"notEqual"===a?(M="".concat(x[a],"\n\n").concat(M)).length>1024&&(M="".concat(M.slice(0,1021),"...")):(A="".concat(k(u)),M.length>512&&(M="".concat(M.slice(0,509),"...")),A.length>512&&(A="".concat(A.slice(0,509),"...")),"deepEqual"===a||"equal"===a?M="".concat(S,"\n\n").concat(M,"\n\nshould equal\n\n"):A=" ".concat(a," ").concat(A)),n=o(this,f(e).call(this,"".concat(M).concat(A)))}return Error.stackTraceLimit=d,n.generatedMessage=!i,Object.defineProperty(s(n),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),n.code="ERR_ASSERTION",n.actual=c,n.expected=u,n.operator=a,Error.captureStackTrace&&Error.captureStackTrace(s(n),l),n.stack,n.name="AssertionError",o(n)}var n,l,c;return function(t,e){if("function"!==typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&u(t,e)}(e,t),n=e,l=[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:d.custom,value:function(t,e){return d(this,function(t){for(var e=1;e2?"one of ".concat(e," ").concat(t.slice(0,n-1).join(", "),", or ")+t[n-1]:2===n?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}return"of ".concat(e," ").concat(String(t))}u("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError),u("ERR_INVALID_ARG_TYPE",(function(t,e,i){var a,o,l,c;if(void 0===s&&(s=n(32791)),s("string"===typeof t,"'name' must be a string"),"string"===typeof e&&(o="not ",e.substr(!l||l<0?0:+l,o.length)===o)?(a="must not be",e=e.replace(/^not /,"")):a="must be",function(t,e,n){return(void 0===n||n>t.length)&&(n=t.length),t.substring(n-e.length,n)===e}(t," argument"))c="The ".concat(t," ").concat(a," ").concat(f(e,"type"));else{var u=function(t,e,n){return"number"!==typeof n&&(n=0),!(n+e.length>t.length)&&-1!==t.indexOf(e,n)}(t,".")?"property":"argument";c='The "'.concat(t,'" ').concat(u," ").concat(a," ").concat(f(e,"type"))}return c+=". Received type ".concat(r(i))}),TypeError),u("ERR_INVALID_ARG_VALUE",(function(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"is invalid";void 0===l&&(l=n(43827));var i=l.inspect(e);return i.length>128&&(i="".concat(i.slice(0,128),"...")),"The argument '".concat(t,"' ").concat(r,". Received ").concat(i)}),TypeError,RangeError),u("ERR_INVALID_RETURN_VALUE",(function(t,e,n){var i;return i=n&&n.constructor&&n.constructor.name?"instance of ".concat(n.constructor.name):"type ".concat(r(n)),"Expected ".concat(t,' to be returned from the "').concat(e,'"')+" function but got ".concat(i,".")}),TypeError),u("ERR_MISSING_ARGS",(function(){for(var t=arguments.length,e=new Array(t),r=0;r0,"At least one arg needs to be specified");var i="The ",a=e.length;switch(e=e.map((function(t){return'"'.concat(t,'"')})),a){case 1:i+="".concat(e[0]," argument");break;case 2:i+="".concat(e[0]," and ").concat(e[1]," arguments");break;default:i+=e.slice(0,a-1).join(", "),i+=", and ".concat(e[a-1]," arguments")}return"".concat(i," must be specified")}),TypeError),t.exports.codes=c},74061:function(t,e,n){"use strict";function r(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=[],r=!0,i=!1,a=void 0;try{for(var o,s=t[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!e||n.length!==e);r=!0);}catch(l){i=!0,a=l}finally{try{r||null==s.return||s.return()}finally{if(i)throw a}}return n}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function i(t){return i="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i(t)}var a=void 0!==/a/g.flags,o=function(t){var e=[];return t.forEach((function(t){return e.push(t)})),e},s=function(t){var e=[];return t.forEach((function(t,n){return e.push([n,t])})),e},l=Object.is?Object.is:n(64003),c=Object.getOwnPropertySymbols?Object.getOwnPropertySymbols:function(){return[]},u=Number.isNaN?Number.isNaN:n(15567);function f(t){return t.call.bind(t)}var h=f(Object.prototype.hasOwnProperty),d=f(Object.prototype.propertyIsEnumerable),p=f(Object.prototype.toString),g=n(43827).types,v=g.isAnyArrayBuffer,m=g.isArrayBufferView,y=g.isDate,b=g.isMap,x=g.isRegExp,w=g.isSet,_=g.isNativeError,k=g.isBoxedPrimitive,T=g.isNumberObject,M=g.isStringObject,A=g.isBooleanObject,S=g.isBigIntObject,E=g.isSymbolObject,C=g.isFloat32Array,P=g.isFloat64Array;function L(t){if(0===t.length||t.length>10)return!0;for(var e=0;e57)return!0}return 10===t.length&&t>=Math.pow(2,32)}function O(t){return Object.keys(t).filter(L).concat(c(t).filter(Object.prototype.propertyIsEnumerable.bind(t)))}function I(t,e){if(t===e)return 0;for(var n=t.length,r=e.length,i=0,a=Math.min(n,r);i0?o-4:o;for(n=0;n>16&255,c[u++]=e>>8&255,c[u++]=255&e;return 2===s&&(e=r[t.charCodeAt(n)]<<2|r[t.charCodeAt(n+1)]>>4,c[u++]=255&e),1===s&&(e=r[t.charCodeAt(n)]<<10|r[t.charCodeAt(n+1)]<<4|r[t.charCodeAt(n+2)]>>2,c[u++]=e>>8&255,c[u++]=255&e),c},e.fromByteArray=function(t){for(var e,r=t.length,i=r%3,a=[],o=16383,s=0,l=r-i;sl?l:s+o));return 1===i?(e=t[r-1],a.push(n[e>>2]+n[e<<4&63]+"==")):2===i&&(e=(t[r-2]<<8)+t[r-1],a.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"=")),a.join("")};for(var n=[],r=[],i="undefined"!==typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0,s=a.length;o0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");return-1===n&&(n=e),[n,n===e?0:4-n%4]}function c(t,e,r){for(var i,a,o=[],s=e;s>18&63]+n[a>>12&63]+n[a>>6&63]+n[63&a]);return o.join("")}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63},91358:function(t){"use strict";function e(t,e,n,r,i){for(var a=i+1;r<=i;){var o=r+i>>>1,s=t[o];(void 0!==n?n(s,e):s-e)>=0?(a=o,i=o-1):r=o+1}return a}function n(t,e,n,r,i){for(var a=i+1;r<=i;){var o=r+i>>>1,s=t[o];(void 0!==n?n(s,e):s-e)>0?(a=o,i=o-1):r=o+1}return a}function r(t,e,n,r,i){for(var a=r-1;r<=i;){var o=r+i>>>1,s=t[o];(void 0!==n?n(s,e):s-e)<0?(a=o,r=o+1):i=o-1}return a}function i(t,e,n,r,i){for(var a=r-1;r<=i;){var o=r+i>>>1,s=t[o];(void 0!==n?n(s,e):s-e)<=0?(a=o,r=o+1):i=o-1}return a}function a(t,e,n,r,i){for(;r<=i;){var a=r+i>>>1,o=t[a],s=void 0!==n?n(o,e):o-e;if(0===s)return a;s<=0?r=a+1:i=a-1}return-1}function o(t,e,n,r,i,a){return"function"===typeof n?a(t,e,n,void 0===r?0:0|r,void 0===i?t.length-1:0|i):a(t,e,void 0,void 0===n?0:0|n,void 0===r?t.length-1:0|r)}t.exports={ge:function(t,n,r,i,a){return o(t,n,r,i,a,e)},gt:function(t,e,r,i,a){return o(t,e,r,i,a,n)},lt:function(t,e,n,i,a){return o(t,e,n,i,a,r)},le:function(t,e,n,r,a){return o(t,e,n,r,a,i)},eq:function(t,e,n,r,i){return o(t,e,n,r,i,a)}}},13547:function(t,e){"use strict";function n(t){var e=32;return(t&=-t)&&e--,65535&t&&(e-=16),16711935&t&&(e-=8),252645135&t&&(e-=4),858993459&t&&(e-=2),1431655765&t&&(e-=1),e}e.INT_BITS=32,e.INT_MAX=2147483647,e.INT_MIN=-1<<31,e.sign=function(t){return(t>0)-(t<0)},e.abs=function(t){var e=t>>31;return(t^e)-e},e.min=function(t,e){return e^(t^e)&-(t65535)<<4,e|=n=((t>>>=e)>255)<<3,e|=n=((t>>>=n)>15)<<2,(e|=n=((t>>>=n)>3)<<1)|(t>>>=n)>>1},e.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},e.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},e.countTrailingZeros=n,e.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,1+(t|=t>>>16)},e.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},e.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var r=new Array(256);!function(t){for(var e=0;e<256;++e){var n=e,r=e,i=7;for(n>>>=1;n;n>>>=1)r<<=1,r|=1&n,--i;t[e]=r<>>8&255]<<16|r[t>>>16&255]<<8|r[t>>>24&255]},e.interleave2=function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},e.deinterleave2=function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},e.interleave3=function(t,e,n){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(n=1227133513&((n=3272356035&((n=251719695&((n=4278190335&((n&=1023)|n<<16))|n<<8))|n<<4))|n<<2))<<2},e.deinterleave3=function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},e.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>n(t)+1}},44781:function(t,e,n){"use strict";var r=n(53435);t.exports=function(t,e){e||(e={});var n,o,s,l,c,u,f,h,d,p,g,v=null==e.cutoff?.25:e.cutoff,m=null==e.radius?8:e.radius,y=e.channel||0;if(ArrayBuffer.isView(t)||Array.isArray(t)){if(!e.width||!e.height)throw Error("For raw data width and height should be provided by options");n=e.width,o=e.height,l=t,u=e.stride?e.stride:Math.floor(t.length/n/o)}else window.HTMLCanvasElement&&t instanceof window.HTMLCanvasElement?(f=(h=t).getContext("2d"),n=h.width,o=h.height,l=(d=f.getImageData(0,0,n,o)).data,u=4):window.CanvasRenderingContext2D&&t instanceof window.CanvasRenderingContext2D?(f=t,n=(h=t.canvas).width,o=h.height,l=(d=f.getImageData(0,0,n,o)).data,u=4):window.ImageData&&t instanceof window.ImageData&&(d=t,n=t.width,o=t.height,l=d.data,u=4);if(s=Math.max(n,o),window.Uint8ClampedArray&&l instanceof window.Uint8ClampedArray||window.Uint8Array&&l instanceof window.Uint8Array)for(c=l,l=Array(n*o),p=0,g=c.length;p-1?i(n):n}},68222:function(t,e,n){"use strict";var r=n(77575),i=n(68318),a=i("%Function.prototype.apply%"),o=i("%Function.prototype.call%"),s=i("%Reflect.apply%",!0)||r.call(o,a),l=i("%Object.getOwnPropertyDescriptor%",!0),c=i("%Object.defineProperty%",!0),u=i("%Math.max%");if(c)try{c({},"a",{value:1})}catch(h){c=null}t.exports=function(t){var e=s(r,o,arguments);return l&&c&&l(e,"length").configurable&&c(e,"length",{value:1+u(0,t.length-(arguments.length-1))}),e};var f=function(){return s(r,a,arguments)};c?c(t.exports,"apply",{value:f}):t.exports.apply=f},53435:function(t){t.exports=function(t,e,n){return en?n:t:te?e:t}},6475:function(t,e,n){"use strict";var r=n(53435);function i(t,e){null==e&&(e=!0);var n=t[0],i=t[1],a=t[2],o=t[3];return null==o&&(o=e?1:255),e&&(n*=255,i*=255,a*=255,o*=255),16777216*(n=255&r(n,0,255))+((i=255&r(i,0,255))<<16)+((a=255&r(a,0,255))<<8)+(o=255&r(o,0,255))}t.exports=i,t.exports.to=i,t.exports.from=function(t,e){var n=(t=+t)>>>24,r=(16711680&t)>>>16,i=(65280&t)>>>8,a=255&t;return!1===e?[n,r,i,a]:[n/255,r/255,i/255,a/255]}},76857:function(t){"use strict";t.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(t,e,n){"use strict";var r=n(36652),i=n(53435),a=n(90660);t.exports=function(t,e){"float"!==e&&e||(e="array"),"uint"===e&&(e="uint8"),"uint_clamped"===e&&(e="uint8_clamped");var n=new(a(e))(4),o="uint8"!==e&&"uint8_clamped"!==e;return t.length&&"string"!==typeof t||((t=r(t))[0]/=255,t[1]/=255,t[2]/=255),function(t){return t instanceof Uint8Array||t instanceof Uint8ClampedArray||!!(Array.isArray(t)&&(t[0]>1||0===t[0])&&(t[1]>1||0===t[1])&&(t[2]>1||0===t[2])&&(!t[3]||t[3]>1))}(t)?(n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=null!=t[3]?t[3]:255,o&&(n[0]/=255,n[1]/=255,n[2]/=255,n[3]/=255),n):(o?(n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=null!=t[3]?t[3]:1):(n[0]=i(Math.floor(255*t[0]),0,255),n[1]=i(Math.floor(255*t[1]),0,255),n[2]=i(Math.floor(255*t[2]),0,255),n[3]=null==t[3]?255:i(Math.floor(255*t[3]),0,255)),n)}},90736:function(t,e,n){"use strict";var r=n(76857),i=n(10973),a=n(46775);t.exports=function(t){var e,s,l=[],c=1;if("string"===typeof t)if(r[t])l=r[t].slice(),s="rgb";else if("transparent"===t)c=0,s="rgb",l=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(t)){var u=t.slice(1);c=1,(d=u.length)<=4?(l=[parseInt(u[0]+u[0],16),parseInt(u[1]+u[1],16),parseInt(u[2]+u[2],16)],4===d&&(c=parseInt(u[3]+u[3],16)/255)):(l=[parseInt(u[0]+u[1],16),parseInt(u[2]+u[3],16),parseInt(u[4]+u[5],16)],8===d&&(c=parseInt(u[6]+u[7],16)/255)),l[0]||(l[0]=0),l[1]||(l[1]=0),l[2]||(l[2]=0),s="rgb"}else if(e=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(t)){var f=e[1],h="rgb"===f;s=u=f.replace(/a$/,"");var d="cmyk"===u?4:"gray"===u?1:3;l=e[2].trim().split(/\s*,\s*/).map((function(t,e){if(/%$/.test(t))return e===d?parseFloat(t)/100:"rgb"===u?255*parseFloat(t)/100:parseFloat(t);if("h"===u[e]){if(/deg$/.test(t))return parseFloat(t);if(void 0!==o[t])return o[t]}return parseFloat(t)})),f===u&&l.push(1),c=h||void 0===l[d]?1:l[d],l=l.slice(0,d)}else t.length>10&&/[0-9](?:\s|\/)/.test(t)&&(l=t.match(/([0-9]+)/g).map((function(t){return parseFloat(t)})),s=t.match(/([a-z])/gi).join("").toLowerCase());else if(isNaN(t))if(i(t)){var p=a(t.r,t.red,t.R,null);null!==p?(s="rgb",l=[p,a(t.g,t.green,t.G),a(t.b,t.blue,t.B)]):(s="hsl",l=[a(t.h,t.hue,t.H),a(t.s,t.saturation,t.S),a(t.l,t.lightness,t.L,t.b,t.brightness)]),c=a(t.a,t.alpha,t.opacity,1),null!=t.opacity&&(c/=100)}else(Array.isArray(t)||n.g.ArrayBuffer&&ArrayBuffer.isView&&ArrayBuffer.isView(t))&&(l=[t[0],t[1],t[2]],s="rgb",c=4===t.length?t[3]:1);else s="rgb",l=[t>>>16,(65280&t)>>>8,255&t];return{space:s,values:l,alpha:c}};var o={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}},36652:function(t,e,n){"use strict";var r=n(90736),i=n(80009),a=n(53435);t.exports=function(t){var e,n=r(t);return n.space?((e=Array(3))[0]=a(n.values[0],0,255),e[1]=a(n.values[1],0,255),e[2]=a(n.values[2],0,255),"h"===n.space[0]&&(e=i.rgb(e)),e.push(a(n.alpha,0,1)),e):[]}},80009:function(t,e,n){"use strict";var r=n(6866);t.exports={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(t){var e,n,r,i,a,o=t[0]/360,s=t[1]/100,l=t[2]/100;if(0===s)return[a=255*l,a,a];e=2*l-(n=l<.5?l*(1+s):l+s-l*s),i=[0,0,0];for(var c=0;c<3;c++)(r=o+1/3*-(c-1))<0?r++:r>1&&r--,a=6*r<1?e+6*(n-e)*r:2*r<1?n:3*r<2?e+(n-e)*(2/3-r)*6:e,i[c]=255*a;return i}},r.hsl=function(t){var e,n,r=t[0]/255,i=t[1]/255,a=t[2]/255,o=Math.min(r,i,a),s=Math.max(r,i,a),l=s-o;return s===o?e=0:r===s?e=(i-a)/l:i===s?e=2+(a-r)/l:a===s&&(e=4+(r-i)/l),(e=Math.min(60*e,360))<0&&(e+=360),n=(o+s)/2,[e,100*(s===o?0:n<=.5?l/(s+o):l/(2-s-o)),100*n]}},6866:function(t){"use strict";t.exports={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}},24138:function(t){t.exports={AFG:"afghan",ALA:"\\b\\wland",ALB:"albania",DZA:"algeria",ASM:"^(?=.*americ).*samoa",AND:"andorra",AGO:"angola",AIA:"anguill?a",ATA:"antarctica",ATG:"antigua",ARG:"argentin",ARM:"armenia",ABW:"^(?!.*bonaire).*\\baruba",AUS:"australia",AUT:"^(?!.*hungary).*austria|\\baustri.*\\bemp",AZE:"azerbaijan",BHS:"bahamas",BHR:"bahrain",BGD:"bangladesh|^(?=.*east).*paki?stan",BRB:"barbados",BLR:"belarus|byelo",BEL:"^(?!.*luxem).*belgium",BLZ:"belize|^(?=.*british).*honduras",BEN:"benin|dahome",BMU:"bermuda",BTN:"bhutan",BOL:"bolivia",BES:"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\bbes.?islands",BIH:"herzegovina|bosnia",BWA:"botswana|bechuana",BVT:"bouvet",BRA:"brazil",IOT:"british.?indian.?ocean",BRN:"brunei",BGR:"bulgaria",BFA:"burkina|\\bfaso|upper.?volta",BDI:"burundi",CPV:"verde",KHM:"cambodia|kampuchea|khmer",CMR:"cameroon",CAN:"canada",CYM:"cayman",CAF:"\\bcentral.african.republic",TCD:"\\bchad",CHL:"\\bchile",CHN:"^(?!.*\\bmac)(?!.*\\bhong)(?!.*\\btai)(?!.*\\brep).*china|^(?=.*peo)(?=.*rep).*china",CXR:"christmas",CCK:"\\bcocos|keeling",COL:"colombia",COM:"comoro",COG:"^(?!.*\\bdem)(?!.*\\bd[\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\bcongo",COK:"\\bcook",CRI:"costa.?rica",CIV:"ivoire|ivory",HRV:"croatia",CUB:"\\bcuba",CUW:"^(?!.*bonaire).*\\bcura(c|\xe7)ao",CYP:"cyprus",CSK:"czechoslovakia",CZE:"^(?=.*rep).*czech|czechia|bohemia",COD:"\\bdem.*congo|congo.*\\bdem|congo.*\\bd[\\.]?r|\\bd[\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc",DNK:"denmark",DJI:"djibouti",DMA:"dominica(?!n)",DOM:"dominican.rep",ECU:"ecuador",EGY:"egypt",SLV:"el.?salvador",GNQ:"guine.*eq|eq.*guine|^(?=.*span).*guinea",ERI:"eritrea",EST:"estonia",ETH:"ethiopia|abyssinia",FLK:"falkland|malvinas",FRO:"faroe|faeroe",FJI:"fiji",FIN:"finland",FRA:"^(?!.*\\bdep)(?!.*martinique).*france|french.?republic|\\bgaul",GUF:"^(?=.*french).*guiana",PYF:"french.?polynesia|tahiti",ATF:"french.?southern",GAB:"gabon",GMB:"gambia",GEO:"^(?!.*south).*georgia",DDR:"german.?democratic.?republic|democratic.?republic.*germany|east.germany",DEU:"^(?!.*east).*germany|^(?=.*\\bfed.*\\brep).*german",GHA:"ghana|gold.?coast",GIB:"gibraltar",GRC:"greece|hellenic|hellas",GRL:"greenland",GRD:"grenada",GLP:"guadeloupe",GUM:"\\bguam",GTM:"guatemala",GGY:"guernsey",GIN:"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea",GNB:"bissau|^(?=.*portu).*guinea",GUY:"guyana|british.?guiana",HTI:"haiti",HMD:"heard.*mcdonald",VAT:"holy.?see|vatican|papal.?st",HND:"^(?!.*brit).*honduras",HKG:"hong.?kong",HUN:"^(?!.*austr).*hungary",ISL:"iceland",IND:"india(?!.*ocea)",IDN:"indonesia",IRN:"\\biran|persia",IRQ:"\\biraq|mesopotamia",IRL:"(^ireland)|(^republic.*ireland)",IMN:"^(?=.*isle).*\\bman",ISR:"israel",ITA:"italy",JAM:"jamaica",JPN:"japan",JEY:"jersey",JOR:"jordan",KAZ:"kazak",KEN:"kenya|british.?east.?africa|east.?africa.?prot",KIR:"kiribati",PRK:"^(?=.*democrat|people|north|d.*p.*.r).*\\bkorea|dprk|korea.*(d.*p.*r)",KWT:"kuwait",KGZ:"kyrgyz|kirghiz",LAO:"\\blaos?\\b",LVA:"latvia",LBN:"lebanon",LSO:"lesotho|basuto",LBR:"liberia",LBY:"libya",LIE:"liechtenstein",LTU:"lithuania",LUX:"^(?!.*belg).*luxem",MAC:"maca(o|u)",MDG:"madagascar|malagasy",MWI:"malawi|nyasa",MYS:"malaysia",MDV:"maldive",MLI:"\\bmali\\b",MLT:"\\bmalta",MHL:"marshall",MTQ:"martinique",MRT:"mauritania",MUS:"mauritius",MYT:"\\bmayotte",MEX:"\\bmexic",FSM:"fed.*micronesia|micronesia.*fed",MCO:"monaco",MNG:"mongolia",MNE:"^(?!.*serbia).*montenegro",MSR:"montserrat",MAR:"morocco|\\bmaroc",MOZ:"mozambique",MMR:"myanmar|burma",NAM:"namibia",NRU:"nauru",NPL:"nepal",NLD:"^(?!.*\\bant)(?!.*\\bcarib).*netherlands",ANT:"^(?=.*\\bant).*(nether|dutch)",NCL:"new.?caledonia",NZL:"new.?zealand",NIC:"nicaragua",NER:"\\bniger(?!ia)",NGA:"nigeria",NIU:"niue",NFK:"norfolk",MNP:"mariana",NOR:"norway",OMN:"\\boman|trucial",PAK:"^(?!.*east).*paki?stan",PLW:"palau",PSE:"palestin|\\bgaza|west.?bank",PAN:"panama",PNG:"papua|new.?guinea",PRY:"paraguay",PER:"peru",PHL:"philippines",PCN:"pitcairn",POL:"poland",PRT:"portugal",PRI:"puerto.?rico",QAT:"qatar",KOR:"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\bkorea(?!.*d.*p.*r)",MDA:"moldov|b(a|e)ssarabia",REU:"r(e|\xe9)union",ROU:"r(o|u|ou)mania",RUS:"\\brussia|soviet.?union|u\\.?s\\.?s\\.?r|socialist.?republics",RWA:"rwanda",BLM:"barth(e|\xe9)lemy",SHN:"helena",KNA:"kitts|\\bnevis",LCA:"\\blucia",MAF:"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)",SPM:"miquelon",VCT:"vincent",WSM:"^(?!.*amer).*samoa",SMR:"san.?marino",STP:"\\bs(a|\xe3)o.?tom(e|\xe9)",SAU:"\\bsa\\w*.?arabia",SEN:"senegal",SRB:"^(?!.*monte).*serbia",SYC:"seychell",SLE:"sierra",SGP:"singapore",SXM:"^(?!.*martin)(?!.*saba).*maarten",SVK:"^(?!.*cze).*slovak",SVN:"slovenia",SLB:"solomon",SOM:"somali",ZAF:"south.africa|s\\\\..?africa",SGS:"south.?georgia|sandwich",SSD:"\\bs\\w*.?sudan",ESP:"spain",LKA:"sri.?lanka|ceylon",SDN:"^(?!.*\\bs(?!u)).*sudan",SUR:"surinam|dutch.?guiana",SJM:"svalbard",SWZ:"swaziland",SWE:"sweden",CHE:"switz|swiss",SYR:"syria",TWN:"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china",TJK:"tajik",THA:"thailand|\\bsiam",MKD:"macedonia|fyrom",TLS:"^(?=.*leste).*timor|^(?=.*east).*timor",TGO:"togo",TKL:"tokelau",TON:"tonga",TTO:"trinidad|tobago",TUN:"tunisia",TUR:"turkey",TKM:"turkmen",TCA:"turks",TUV:"tuvalu",UGA:"uganda",UKR:"ukrain",ARE:"emirates|^u\\.?a\\.?e\\.?$|united.?arab.?em",GBR:"united.?kingdom|britain|^u\\.?k\\.?$",TZA:"tanzania",USA:"united.?states\\b(?!.*islands)|\\bu\\.?s\\.?a\\.?\\b|^\\s*u\\.?s\\.?\\b(?!.*islands)",UMI:"minor.?outlying.?is",URY:"uruguay",UZB:"uzbek",VUT:"vanuatu|new.?hebrides",VEN:"venezuela",VNM:"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam",VGB:"^(?=.*\\bu\\.?\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin",VIR:"^(?=.*\\bu\\.?\\s?s).*virgin|^(?=.*states).*virgin",WLF:"futuna|wallis",ESH:"western.sahara",YEM:"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\bp\\.?d\\.?r).*yemen",YMD:"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\bp\\.?d\\.?r).*yemen",YUG:"yugoslavia",ZMB:"zambia|northern.?rhodesia",EAZ:"zanzibar",ZWE:"zimbabwe|^(?!.*northern).*rhodesia"}},72791:function(t,e,n){"use strict";t.exports={parse:n(41004),stringify:n(53313)}},63625:function(t,e,n){"use strict";var r=n(40402);t.exports={isSize:function(t){return/^[\d\.]/.test(t)||-1!==t.indexOf("/")||-1!==r.indexOf(t)}}},41004:function(t,e,n){"use strict";var r=n(90448),i=n(38732),a=n(41901),o=n(15659),s=n(96209),l=n(83794),c=n(99011),u=n(63625).isSize;t.exports=h;var f=h.cache={};function h(t){if("string"!==typeof t)throw new Error("Font argument must be a string.");if(f[t])return f[t];if(""===t)throw new Error("Cannot parse an empty string.");if(-1!==a.indexOf(t))return f[t]={system:t};for(var e,n={style:"normal",variant:"normal",weight:"normal",stretch:"normal",lineHeight:"normal",size:"1rem",family:["serif"]},h=c(t,/\s+/);e=h.shift();){if(-1!==i.indexOf(e))return["style","variant","weight","stretch"].forEach((function(t){n[t]=e})),f[t]=n;if(-1===s.indexOf(e))if("normal"!==e&&"small-caps"!==e)if(-1===l.indexOf(e)){if(-1===o.indexOf(e)){if(u(e)){var p=c(e,"/");if(n.size=p[0],null!=p[1]?n.lineHeight=d(p[1]):"/"===h[0]&&(h.shift(),n.lineHeight=d(h.shift())),!h.length)throw new Error("Missing required font-family.");return n.family=c(h.join(" "),/\s*,\s*/).map(r),f[t]=n}throw new Error("Unknown or unsupported font token: "+e)}n.weight=e}else n.stretch=e;else n.variant=e;else n.style=e}throw new Error("Missing required font-size.")}function d(t){var e=parseFloat(t);return e.toString()===t?e:t}},53313:function(t,e,n){"use strict";var r=n(71299),i=n(63625).isSize,a=g(n(38732)),o=g(n(41901)),s=g(n(15659)),l=g(n(96209)),c=g(n(83794)),u={normal:1,"small-caps":1},f={serif:1,"sans-serif":1,monospace:1,cursive:1,fantasy:1,"system-ui":1},h="1rem",d="serif";function p(t,e){if(t&&!e[t]&&!a[t])throw Error("Unknown keyword `"+t+"`");return t}function g(t){for(var e={},n=0;ne?1:t>=e?0:NaN}n.d(e,{j2:function(){return r},Fp:function(){return o},J6:function(){return l},TS:function(){return c},VV:function(){return u},w6:function(){return f},Sm:function(){return h}});var i=function(t){var e;return 1===t.length&&(e=t,t=function(t,n){return r(e(t),n)}),{left:function(e,n,r,i){for(null==r&&(r=0),null==i&&(i=e.length);r>>1;t(e[a],n)<0?r=a+1:i=a}return r},right:function(e,n,r,i){for(null==r&&(r=0),null==i&&(i=e.length);r>>1;t(e[a],n)>0?i=a:r=a+1}return r}}}(r),a=(i.right,i.left,Array.prototype);function o(t,e){var n,r,i=t.length,a=-1;if(null==e){for(;++a=n)for(r=n;++ar&&(r=n)}else for(;++a=n)for(r=n;++ar&&(r=n);return r}function s(t){return null===t?NaN:+t}function l(t,e){var n,r=t.length,i=r,a=-1,o=0;if(null==e)for(;++a=0;)for(e=(r=t[i]).length;--e>=0;)n[--o]=r[e];return n}function u(t,e){var n,r,i=t.length,a=-1;if(null==e){for(;++a=n)for(r=n;++an&&(r=n)}else for(;++a=n)for(r=n;++an&&(r=n);return r}function f(t,e,n){t=+t,e=+e,n=(i=arguments.length)<2?(e=t,t=0,1):i<3?1:+n;for(var r=-1,i=0|Math.max(0,Math.ceil((e-t)/n)),a=new Array(i);++r=r.length)return null!=t&&n.sort(t),null!=e?e(n):n;for(var c,u,f,h=-1,d=n.length,p=r[i++],g=o(),v=s();++hr.length)return t;var a,o=i[n-1];return null!=e&&n>=r.length?a=t.entries():(a=[],t.each((function(t,e){a.push({key:e,values:s(t,n)})}))),null!=o?a.sort((function(t,e){return o(t.key,e.key)})):a}return n={object:function(t){return a(t,0,l,c)},map:function(t){return a(t,0,u,f)},entries:function(t){return s(a(t,0,u,f),0)},key:function(t){return r.push(t),n},sortKeys:function(t){return i[r.length-1]=t,n},sortValues:function(e){return t=e,n},rollup:function(t){return e=t,n}}}function l(){return{}}function c(t,e,n){t[e]=n}function u(){return o()}function f(t,e,n){t.set(e,n)}function h(){}var d=o.prototype;h.prototype=function(t,e){var n=new h;if(t instanceof h)t.each((function(t){n.add(t)}));else if(t){var r=-1,i=t.length;if(null==e)for(;++r=(a=(g+m)/2))?g=a:m=a,(u=n>=(o=(v+y)/2))?v=o:y=o,i=d,!(d=d[f=u<<1|c]))return i[f]=p,t;if(s=+t._x.call(null,d.data),l=+t._y.call(null,d.data),e===s&&n===l)return p.next=d,i?i[f]=p:t._root=p,t;do{i=i?i[f]=new Array(4):t._root=new Array(4),(c=e>=(a=(g+m)/2))?g=a:m=a,(u=n>=(o=(v+y)/2))?v=o:y=o}while((f=u<<1|c)===(h=(l>=o)<<1|s>=a));return i[h]=d,i[f]=p,t}function s(t,e,n,r,i){this.node=t,this.x0=e,this.y0=n,this.x1=r,this.y1=i}function l(t){return t[0]}function c(t){return t[1]}function u(t,e,n){var r=new f(null==e?l:e,null==n?c:n,NaN,NaN,NaN,NaN);return null==t?r:r.addAll(t)}function f(t,e,n,r,i,a){this._x=t,this._y=e,this._x0=n,this._y0=r,this._x1=i,this._y1=a,this._root=void 0}function h(t){for(var e={data:t.data},n=e;t=t.next;)n=n.next={data:t.data};return e}n.r(e),n.d(e,{forceCenter:function(){return r},forceCollide:function(){return v},forceLink:function(){return x},forceManyBody:function(){return K},forceRadial:function(){return Z},forceSimulation:function(){return X},forceX:function(){return J},forceY:function(){return Q}});var d=u.prototype=f.prototype;function p(t){return t.x+t.vx}function g(t){return t.y+t.vy}function v(t){var e,n,r=1,o=1;function s(){for(var t,i,s,c,f,h,d,v=e.length,m=0;mc+p||if+p||os.index){var g=c-l.x-l.vx,v=f-l.y-l.vy,m=g*g+v*v;mt.r&&(t.r=t[e].r)}function c(){if(e){var r,i,a=e.length;for(n=new Array(a),r=0;rf&&(f=r),ih&&(h=i));if(c>f||u>h)return this;for(this.cover(c,u).cover(f,h),n=0;nt||t>=i||r>e||e>=a;)switch(s=(ed||(a=c.y0)>p||(o=c.x1)=y)<<1|t>=m)&&(c=g[g.length-1],g[g.length-1]=g[g.length-1-u],g[g.length-1-u]=c)}else{var b=t-+this._x.call(null,v.data),x=e-+this._y.call(null,v.data),w=b*b+x*x;if(w=(s=(p+v)/2))?p=s:v=s,(u=o>=(l=(g+m)/2))?g=l:m=l,e=d,!(d=d[f=u<<1|c]))return this;if(!d.length)break;(e[f+1&3]||e[f+2&3]||e[f+3&3])&&(n=e,h=f)}for(;d.data!==t;)if(r=d,!(d=d.next))return this;return(i=d.next)&&delete d.next,r?(i?r.next=i:delete r.next,this):e?(i?e[f]=i:delete e[f],(d=e[0]||e[1]||e[2]||e[3])&&d===(e[3]||e[2]||e[1]||e[0])&&!d.length&&(n?n[h]=d:this._root=d),this):(this._root=i,this)},d.removeAll=function(t){for(var e=0,n=t.length;e=0&&(e=t.slice(n+1),t=t.slice(0,n)),t&&!r.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:e}}))),o=-1,s=a.length;if(!(arguments.length<2)){if(null!=e&&"function"!==typeof e)throw new Error("invalid callback: "+e);for(;++o0)for(var n,r,i=new Array(n),a=0;a=0&&e._call.call(null,t),e=e._next;--C}()}finally{C=0,function(){for(var t,e,n=A,r=1/0;n;)n._call?(r>n._time&&(r=n._time),t=n,n=n._next):(e=n._next,n._next=null,n=t?t._next=e:A=e);S=t,q(r)}(),D=0}}function V(){var t=z.now(),e=t-I;e>O&&(R-=e,I=t)}function q(t){C||(P&&(P=clearTimeout(P)),t-D>24?(t<1/0&&(P=setTimeout(H,t-z.now()-R)),L&&(L=clearInterval(L))):(L||(I=z.now(),L=setInterval(V,O)),C=1,N(H)))}function G(t){return t.x}function W(t){return t.y}B.prototype=U.prototype={constructor:B,restart:function(t,e,n){if("function"!==typeof t)throw new TypeError("callback is not a function");n=(null==n?j():+n)+(null==e?0:+e),this._next||S===this||(S?S._next=this:A=this,S=this),this._call=t,this._time=n,q()},stop:function(){this._call&&(this._call=null,this._time=1/0,q())}};var Y=10,$=Math.PI*(3-Math.sqrt(5));function X(t){var e,n=1,r=.001,i=1-Math.pow(r,1/300),a=0,o=.6,s=(0,m.UI)(),l=U(u),c=E("tick","end");function u(){f(),c.call("tick",e),n1?(null==n?s.remove(t):s.set(t,d(n)),e):s.get(t)},find:function(e,n,r){var i,a,o,s,l,c=0,u=t.length;for(null==r?r=1/0:r*=r,c=0;c1?(c.on(t,n),e):c.on(t)}}}function K(){var t,e,n,r,o=i(-30),s=1,l=1/0,c=.81;function f(r){var i,a=t.length,o=u(t,G,W).visitAfter(d);for(n=r,i=0;i=l)){(t.data!==e||t.next)&&(0===f&&(p+=(f=a())*f),0===h&&(p+=(h=a())*h),p1?r[0]+r.slice(2):r,+t.slice(n+1)]}n.d(e,{WU:function(){return h},FF:function(){return g}});var i,a=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function o(t){if(!(e=a.exec(t)))throw new Error("invalid format: "+t);var e;return new s({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function s(t){this.fill=void 0===t.fill?" ":t.fill+"",this.align=void 0===t.align?">":t.align+"",this.sign=void 0===t.sign?"-":t.sign+"",this.symbol=void 0===t.symbol?"":t.symbol+"",this.zero=!!t.zero,this.width=void 0===t.width?void 0:+t.width,this.comma=!!t.comma,this.precision=void 0===t.precision?void 0:+t.precision,this.trim=!!t.trim,this.type=void 0===t.type?"":t.type+""}function l(t,e){var n=r(t,e);if(!n)return t+"";var i=n[0],a=n[1];return a<0?"0."+new Array(-a).join("0")+i:i.length>a+1?i.slice(0,a+1)+"."+i.slice(a+1):i+new Array(a-i.length+2).join("0")}o.prototype=s.prototype,s.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};var c={"%":function(t,e){return(100*t).toFixed(e)},b:function(t){return Math.round(t).toString(2)},c:function(t){return t+""},d:function(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)},e:function(t,e){return t.toExponential(e)},f:function(t,e){return t.toFixed(e)},g:function(t,e){return t.toPrecision(e)},o:function(t){return Math.round(t).toString(8)},p:function(t,e){return l(100*t,e)},r:l,s:function(t,e){var n=r(t,e);if(!n)return t+"";var a=n[0],o=n[1],s=o-(i=3*Math.max(-8,Math.min(8,Math.floor(o/3))))+1,l=a.length;return s===l?a:s>l?a+new Array(s-l+1).join("0"):s>0?a.slice(0,s)+"."+a.slice(s):"0."+new Array(1-s).join("0")+r(t,Math.max(0,e+s-1))[0]},X:function(t){return Math.round(t).toString(16).toUpperCase()},x:function(t){return Math.round(t).toString(16)}};function u(t){return t}var f,h,d=Array.prototype.map,p=["y","z","a","f","p","n","\xb5","m","","k","M","G","T","P","E","Z","Y"];function g(t){var e,n,a=void 0===t.grouping||void 0===t.thousands?u:(e=d.call(t.grouping,Number),n=t.thousands+"",function(t,r){for(var i=t.length,a=[],o=0,s=e[0],l=0;i>0&&s>0&&(l+s+1>r&&(s=Math.max(1,r-l)),a.push(t.substring(i-=s,i+s)),!((l+=s+1)>r));)s=e[o=(o+1)%e.length];return a.reverse().join(n)}),s=void 0===t.currency?"":t.currency[0]+"",l=void 0===t.currency?"":t.currency[1]+"",f=void 0===t.decimal?".":t.decimal+"",h=void 0===t.numerals?u:function(t){return function(e){return e.replace(/[0-9]/g,(function(e){return t[+e]}))}}(d.call(t.numerals,String)),g=void 0===t.percent?"%":t.percent+"",v=void 0===t.minus?"-":t.minus+"",m=void 0===t.nan?"NaN":t.nan+"";function y(t){var e=(t=o(t)).fill,n=t.align,r=t.sign,u=t.symbol,d=t.zero,y=t.width,b=t.comma,x=t.precision,w=t.trim,_=t.type;"n"===_?(b=!0,_="g"):c[_]||(void 0===x&&(x=12),w=!0,_="g"),(d||"0"===e&&"="===n)&&(d=!0,e="0",n="=");var k="$"===u?s:"#"===u&&/[boxX]/.test(_)?"0"+_.toLowerCase():"",T="$"===u?l:/[%p]/.test(_)?g:"",M=c[_],A=/[defgprs%]/.test(_);function S(t){var o,s,l,c=k,u=T;if("c"===_)u=M(t)+u,t="";else{var g=(t=+t)<0||1/t<0;if(t=isNaN(t)?m:M(Math.abs(t),x),w&&(t=function(t){t:for(var e,n=t.length,r=1,i=-1;r0&&(i=0)}return i>0?t.slice(0,i)+t.slice(e+1):t}(t)),g&&0===+t&&"+"!==r&&(g=!1),c=(g?"("===r?r:v:"-"===r||"("===r?"":r)+c,u=("s"===_?p[8+i/3]:"")+u+(g&&"("===r?")":""),A)for(o=-1,s=t.length;++o(l=t.charCodeAt(o))||l>57){u=(46===l?f+t.slice(o+1):t.slice(o))+u,t=t.slice(0,o);break}}b&&!d&&(t=a(t,1/0));var S=c.length+t.length+u.length,E=S>1)+c+t+u+E.slice(S);break;default:t=E+c+t+u}return h(t)}return x=void 0===x?6:/[gprs]/.test(_)?Math.max(1,Math.min(21,x)):Math.max(0,Math.min(20,x)),S.toString=function(){return t+""},S}return{format:y,formatPrefix:function(t,e){var n,i=y(((t=o(t)).type="f",t)),a=3*Math.max(-8,Math.min(8,Math.floor((n=e,((n=r(Math.abs(n)))?n[1]:NaN)/3)))),s=Math.pow(10,-a),l=p[8+a/3];return function(t){return i(s*t)+l}}}}f=g({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"}),h=f.format,f.formatPrefix},65704:function(t,e,n){"use strict";n.r(e),n.d(e,{geoAiry:function(){return R},geoAiryRaw:function(){return D},geoAitoff:function(){return N},geoAitoffRaw:function(){return z},geoArmadillo:function(){return F},geoArmadilloRaw:function(){return j},geoAugust:function(){return U},geoAugustRaw:function(){return B},geoBaker:function(){return G},geoBakerRaw:function(){return q},geoBerghaus:function(){return $},geoBerghausRaw:function(){return Y},geoBertin1953:function(){return nt},geoBertin1953Raw:function(){return et},geoBoggs:function(){return ut},geoBoggsRaw:function(){return ct},geoBonne:function(){return gt},geoBonneRaw:function(){return pt},geoBottomley:function(){return mt},geoBottomleyRaw:function(){return vt},geoBromley:function(){return bt},geoBromleyRaw:function(){return yt},geoChamberlin:function(){return Et},geoChamberlinAfrica:function(){return St},geoChamberlinRaw:function(){return Mt},geoCollignon:function(){return Pt},geoCollignonRaw:function(){return Ct},geoCraig:function(){return Ot},geoCraigRaw:function(){return Lt},geoCraster:function(){return Rt},geoCrasterRaw:function(){return Dt},geoCylindricalEqualArea:function(){return Nt},geoCylindricalEqualAreaRaw:function(){return zt},geoCylindricalStereographic:function(){return Ft},geoCylindricalStereographicRaw:function(){return jt},geoEckert1:function(){return Ut},geoEckert1Raw:function(){return Bt},geoEckert2:function(){return Vt},geoEckert2Raw:function(){return Ht},geoEckert3:function(){return Gt},geoEckert3Raw:function(){return qt},geoEckert4:function(){return Yt},geoEckert4Raw:function(){return Wt},geoEckert5:function(){return Xt},geoEckert5Raw:function(){return $t},geoEckert6:function(){return Zt},geoEckert6Raw:function(){return Kt},geoEisenlohr:function(){return te},geoEisenlohrRaw:function(){return Qt},geoFahey:function(){return re},geoFaheyRaw:function(){return ne},geoFoucaut:function(){return ae},geoFoucautRaw:function(){return ie},geoFoucautSinusoidal:function(){return se},geoFoucautSinusoidalRaw:function(){return oe},geoGilbert:function(){return he},geoGingery:function(){return ve},geoGingeryRaw:function(){return de},geoGinzburg4:function(){return be},geoGinzburg4Raw:function(){return ye},geoGinzburg5:function(){return we},geoGinzburg5Raw:function(){return xe},geoGinzburg6:function(){return ke},geoGinzburg6Raw:function(){return _e},geoGinzburg8:function(){return Me},geoGinzburg8Raw:function(){return Te},geoGinzburg9:function(){return Se},geoGinzburg9Raw:function(){return Ae},geoGringorten:function(){return Pe},geoGringortenQuincuncial:function(){return ai},geoGringortenRaw:function(){return Ce},geoGuyou:function(){return De},geoGuyouRaw:function(){return Ie},geoHammer:function(){return J},geoHammerRaw:function(){return K},geoHammerRetroazimuthal:function(){return je},geoHammerRetroazimuthalRaw:function(){return ze},geoHealpix:function(){return Ye},geoHealpixRaw:function(){return Ve},geoHill:function(){return Xe},geoHillRaw:function(){return $e},geoHomolosine:function(){return en},geoHomolosineRaw:function(){return tn},geoHufnagel:function(){return rn},geoHufnagelRaw:function(){return nn},geoHyperelliptical:function(){return ln},geoHyperellipticalRaw:function(){return sn},geoInterrupt:function(){return fn},geoInterruptedBoggs:function(){return dn},geoInterruptedHomolosine:function(){return gn},geoInterruptedMollweide:function(){return mn},geoInterruptedMollweideHemispheres:function(){return bn},geoInterruptedQuarticAuthalic:function(){return fr},geoInterruptedSinuMollweide:function(){return wn},geoInterruptedSinusoidal:function(){return kn},geoKavrayskiy7:function(){return Mn},geoKavrayskiy7Raw:function(){return Tn},geoLagrange:function(){return Sn},geoLagrangeRaw:function(){return An},geoLarrivee:function(){return Pn},geoLarriveeRaw:function(){return Cn},geoLaskowski:function(){return On},geoLaskowskiRaw:function(){return Ln},geoLittrow:function(){return Dn},geoLittrowRaw:function(){return In},geoLoximuthal:function(){return zn},geoLoximuthalRaw:function(){return Rn},geoMiller:function(){return jn},geoMillerRaw:function(){return Nn},geoModifiedStereographic:function(){return Kn},geoModifiedStereographicAlaska:function(){return Gn},geoModifiedStereographicGs48:function(){return Wn},geoModifiedStereographicGs50:function(){return Yn},geoModifiedStereographicLee:function(){return Xn},geoModifiedStereographicMiller:function(){return $n},geoModifiedStereographicRaw:function(){return Fn},geoMollweide:function(){return ot},geoMollweideRaw:function(){return at},geoMtFlatPolarParabolic:function(){return tr},geoMtFlatPolarParabolicRaw:function(){return Qn},geoMtFlatPolarQuartic:function(){return nr},geoMtFlatPolarQuarticRaw:function(){return er},geoMtFlatPolarSinusoidal:function(){return ir},geoMtFlatPolarSinusoidalRaw:function(){return rr},geoNaturalEarth:function(){return ar.Z},geoNaturalEarth2:function(){return sr},geoNaturalEarth2Raw:function(){return or},geoNaturalEarthRaw:function(){return ar.K},geoNellHammer:function(){return cr},geoNellHammerRaw:function(){return lr},geoNicolosi:function(){return dr},geoNicolosiRaw:function(){return hr},geoPatterson:function(){return Tr},geoPattersonRaw:function(){return kr},geoPeirceQuincuncial:function(){return oi},geoPierceQuincuncial:function(){return oi},geoPolyconic:function(){return Ar},geoPolyconicRaw:function(){return Mr},geoPolyhedral:function(){return Ir},geoPolyhedralButterfly:function(){return Br},geoPolyhedralCollignon:function(){return Vr},geoPolyhedralWaterman:function(){return qr},geoProject:function(){return Xr},geoQuantize:function(){return si},geoQuincuncial:function(){return ii},geoRectangularPolyconic:function(){return ci},geoRectangularPolyconicRaw:function(){return li},geoRobinson:function(){return hi},geoRobinsonRaw:function(){return fi},geoSatellite:function(){return pi},geoSatelliteRaw:function(){return di},geoSinuMollweide:function(){return Qe},geoSinuMollweideRaw:function(){return Je},geoSinusoidal:function(){return dt},geoSinusoidalRaw:function(){return ht},geoStitch:function(){return Ii},geoTimes:function(){return Ri},geoTimesRaw:function(){return Di},geoTwoPointAzimuthal:function(){return Fi},geoTwoPointAzimuthalRaw:function(){return Ni},geoTwoPointAzimuthalUsa:function(){return ji},geoTwoPointEquidistant:function(){return Hi},geoTwoPointEquidistantRaw:function(){return Bi},geoTwoPointEquidistantUsa:function(){return Ui},geoVanDerGrinten:function(){return qi},geoVanDerGrinten2:function(){return Wi},geoVanDerGrinten2Raw:function(){return Gi},geoVanDerGrinten3:function(){return $i},geoVanDerGrinten3Raw:function(){return Yi},geoVanDerGrinten4:function(){return Ki},geoVanDerGrinten4Raw:function(){return Xi},geoVanDerGrintenRaw:function(){return Vi},geoWagner:function(){return Ji},geoWagner4:function(){return ra},geoWagner4Raw:function(){return na},geoWagner6:function(){return aa},geoWagner6Raw:function(){return ia},geoWagner7:function(){return Qi},geoWagnerRaw:function(){return Zi},geoWiechel:function(){return sa},geoWiechelRaw:function(){return oa},geoWinkel3:function(){return ca},geoWinkel3Raw:function(){return la}});var r=n(15002),i=Math.abs,a=Math.atan,o=Math.atan2,s=(Math.ceil,Math.cos),l=Math.exp,c=Math.floor,u=Math.log,f=Math.max,h=Math.min,d=Math.pow,p=Math.round,g=Math.sign||function(t){return t>0?1:t<0?-1:0},v=Math.sin,m=Math.tan,y=1e-6,b=1e-12,x=Math.PI,w=x/2,_=x/4,k=Math.SQRT1_2,T=L(2),M=L(x),A=2*x,S=180/x,E=x/180;function C(t){return t>1?w:t<-1?-w:Math.asin(t)}function P(t){return t>1?0:t<-1?x:Math.acos(t)}function L(t){return t>0?Math.sqrt(t):0}function O(t){return(l(t)-l(-t))/2}function I(t){return(l(t)+l(-t))/2}function D(t){var e=m(t/2),n=2*u(s(t/2))/(e*e);function r(t,e){var r=s(t),i=s(e),a=v(e),o=i*r,l=-((1-o?u((1+o)/2)/(1-o):-.5)+n/(1+o));return[l*i*v(t),l*a]}return r.invert=function(e,r){var a,l=L(e*e+r*r),c=-t/2,f=50;if(!l)return[0,0];do{var h=c/2,d=s(h),p=v(h),g=p/d,m=-u(i(d));c-=a=(2/g*m-n*g-l)/(-m/(p*p)+1-n/(2*d*d))*(d<0?.7:1)}while(i(a)>y&&--f>0);var b=v(c);return[o(e*b,l*s(c)),C(r*b/l)]},r}function R(){var t=w,e=(0,r.r)(D),n=e(t);return n.radius=function(n){return arguments.length?e(t=n*E):t*S},n.scale(179.976).clipAngle(147)}function z(t,e){var n=s(e),r=function(t){return t?t/Math.sin(t):1}(P(n*s(t/=2)));return[2*n*v(t)*r,v(e)*r]}function N(){return(0,r.Z)(z).scale(152.63)}function j(t){var e=v(t),n=s(t),r=t>=0?1:-1,a=m(r*t),l=(1+e-n)/2;function c(t,i){var c=s(i),u=s(t/=2);return[(1+c)*v(t),(r*i>-o(u,a)-.001?0:10*-r)+l+v(i)*n-(1+c)*e*u]}return c.invert=function(t,c){var u=0,f=0,h=50;do{var d=s(u),p=v(u),g=s(f),m=v(f),b=1+g,x=b*p-t,w=l+m*n-b*e*d-c,_=b*d/2,k=-p*m,T=e*b*p/2,M=n*g+e*d*m,A=k*T-M*_,S=(w*k-x*M)/A/2,E=(x*T-w*_)/A;i(E)>2&&(E/=2),u-=S,f-=E}while((i(S)>y||i(E)>y)&&--h>0);return r*f>-o(s(u),a)-.001?[2*u,f]:null},c}function F(){var t=20*E,e=t>=0?1:-1,n=m(e*t),i=(0,r.r)(j),a=i(t),l=a.stream;return a.parallel=function(r){return arguments.length?(n=m((e=(t=r*E)>=0?1:-1)*t),i(t)):t*S},a.stream=function(r){var i=a.rotate(),c=l(r),u=(a.rotate([0,0]),l(r)),f=a.precision();return a.rotate(i),c.sphere=function(){u.polygonStart(),u.lineStart();for(var r=-180*e;e*r<180;r+=90*e)u.point(r,90*e);if(t)for(;e*(r-=3*e*f)>=-180;)u.point(r,e*-o(s(r*E/2),n)*S);u.lineEnd(),u.polygonEnd()},c},a.scale(218.695).center([0,28.0974])}function B(t,e){var n=m(e/2),r=L(1-n*n),i=1+r*s(t/=2),a=v(t)*r/i,o=n/i,l=a*a,c=o*o;return[4/3*a*(3+l-3*c),4/3*o*(3+3*l-c)]}function U(){return(0,r.Z)(B).scale(66.1603)}z.invert=function(t,e){if(!(t*t+4*e*e>x*x+y)){var n=t,r=e,a=25;do{var o,l=v(n),c=v(n/2),u=s(n/2),f=v(r),h=s(r),d=v(2*r),p=f*f,g=h*h,m=c*c,b=1-g*u*u,w=b?P(h*u)*L(o=1/b):o=0,_=2*w*h*c-t,k=w*f-e,T=o*(g*m+w*h*u*p),M=o*(.5*l*d-2*w*f*c),A=.25*o*(d*c-w*f*g*l),S=o*(p*u+w*m*h),E=M*A-S*T;if(!E)break;var C=(k*M-_*S)/E,O=(_*A-k*T)/E;n-=C,r-=O}while((i(C)>y||i(O)>y)&&--a>0);return[n,r]}},B.invert=function(t,e){if(e*=3/8,!(t*=3/8)&&i(e)>1)return null;var n=1+t*t+e*e,r=L((n-L(n*n-4*e*e))/2),a=C(r)/3,l=r?function(t){return u(t+L(t*t-1))}(i(e/r))/3:function(t){return u(t+L(t*t+1))}(i(t))/3,c=s(a),f=I(l),h=f*f-c*c;return[2*g(t)*o(O(l)*c,.25-h),2*g(e)*o(f*v(a),.25+h)]};var H=L(8),V=u(1+T);function q(t,e){var n=i(e);return n<_?[t,u(m(_+e/2))]:[t*s(n)*(2*T-1/v(n)),g(e)*(2*T*(n-_)-u(m(n/2)))]}function G(){return(0,r.Z)(q).scale(112.314)}q.invert=function(t,e){if((r=i(e))b&&--c>0);return[t/(s(o)*(H-1/v(o))),g(e)*o]};var W=n(17889);function Y(t){var e=2*x/t;function n(t,n){var r=(0,W.N)(t,n);if(i(t)>w){var a=o(r[1],r[0]),l=L(r[0]*r[0]+r[1]*r[1]),c=e*p((a-w)/e)+w,u=o(v(a-=c),2-s(a));a=c+C(x/l*v(u))-u,r[0]=l*s(a),r[1]=l*v(a)}return r}return n.invert=function(t,n){var r=L(t*t+n*n);if(r>w){var i=o(n,t),l=e*p((i-w)/e)+w,c=i>l?-1:1,u=r*s(l-i),f=1/m(c*P((u-x)/L(x*(x-2*u)+r*r)));i=l+2*a((f+c*L(f*f-3))/3),t=r*s(i),n=r*v(i)}return W.N.invert(t,n)},n}function $(){var t=5,e=(0,r.r)(Y),n=e(t),i=n.stream,a=.01,l=-s(a*E),c=v(a*E);return n.lobes=function(n){return arguments.length?e(t=+n):t},n.stream=function(e){var r=n.rotate(),u=i(e),f=(n.rotate([0,0]),i(e));return n.rotate(r),u.sphere=function(){f.polygonStart(),f.lineStart();for(var e=0,n=360/t,r=2*x/t,i=90-180/t,u=w;e0&&i(r)>y);return s<0?NaN:n}function tt(t,e,n){return void 0===e&&(e=40),void 0===n&&(n=b),function(r,a,o,s){var l,c,u;o=void 0===o?0:+o,s=void 0===s?0:+s;for(var f=0;fl)o-=c/=2,s-=u/=2;else{l=g;var v=(o>0?-1:1)*n,m=(s>0?-1:1)*n,y=t(o+v,s),b=t(o,s+m),x=(y[0]-h[0])/v,w=(y[1]-h[1])/v,_=(b[0]-h[0])/m,k=(b[1]-h[1])/m,T=k*x-w*_,M=(i(T)<.5?.5:1)/T;if(o+=c=(p*_-d*k)*M,s+=u=(d*w-p*x)*M,i(c)0&&(o[1]*=1+l/1.5*o[0]*o[0]),o}return r.invert=tt(r),r}function nt(){return(0,r.Z)(et()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function rt(t,e){var n,r=t*v(e),a=30;do{e-=n=(e+v(e)-r)/(1+s(e))}while(i(n)>y&&--a>0);return e/2}function it(t,e,n){function r(r,i){return[t*r*s(i=rt(n,i)),e*v(i)]}return r.invert=function(r,i){return i=C(i/e),[r/(t*s(i)),C((2*i+v(2*i))/n)]},r}Z.invert=function(t,e){var n=2*C(e/2);return[t*s(n/2)/s(n),n]};var at=it(T/w,T,x);function ot(){return(0,r.Z)(at).scale(169.529)}var st=2.00276,lt=1.11072;function ct(t,e){var n=rt(x,e);return[st*t/(1/s(e)+lt/s(n)),(e+T*v(n))/st]}function ut(){return(0,r.Z)(ct).scale(160.857)}function ft(t){var e=0,n=(0,r.r)(t),i=n(e);return i.parallel=function(t){return arguments.length?n(e=t*E):e*S},i}function ht(t,e){return[t*s(e),e]}function dt(){return(0,r.Z)(ht).scale(152.63)}function pt(t){if(!t)return ht;var e=1/m(t);function n(n,r){var i=e+t-r,a=i?n*s(r)/i:i;return[i*v(a),e-i*s(a)]}return n.invert=function(n,r){var i=L(n*n+(r=e-r)*r),a=e+t-i;return[i/s(a)*o(n,r),a]},n}function gt(){return ft(pt).scale(123.082).center([0,26.1441]).parallel(45)}function vt(t){function e(e,n){var r=w-n,i=r?e*t*v(r)/r:r;return[r*v(i)/t,w-r*s(i)]}return e.invert=function(e,n){var r=e*t,i=w-n,a=L(r*r+i*i),s=o(r,i);return[(a?a/v(a):1)*s/t,w-a]},e}function mt(){var t=.5,e=(0,r.r)(vt),n=e(t);return n.fraction=function(n){return arguments.length?e(t=+n):t},n.scale(158.837)}ct.invert=function(t,e){var n,r,a=st*e,o=e<0?-_:_,l=25;do{r=a-T*v(o),o-=n=(v(2*o)+2*o-x*v(r))/(2*s(2*o)+2+x*s(r)*T*s(o))}while(i(n)>y&&--l>0);return r=a-T*v(o),[t*(1/s(r)+lt/s(o))/st,r]},ht.invert=function(t,e){return[t/s(e),e]};var yt=it(1,4/x,x);function bt(){return(0,r.Z)(yt).scale(152.63)}var xt=n(66624),wt=n(49386);function _t(t,e,n,r,a,l){var c,u=s(l);if(i(t)>1||i(l)>1)c=P(n*a+e*r*u);else{var f=v(t/2),h=v(l/2);c=2*C(L(f*f+e*r*h*h))}return i(c)>y?[c,o(r*v(l),e*a-n*r*u)]:[0,0]}function kt(t,e,n){return P((t*t+e*e-n*n)/(2*t*e))}function Tt(t){return t-2*x*c((t+x)/(2*x))}function Mt(t,e,n){for(var r,i=[[t[0],t[1],v(t[1]),s(t[1])],[e[0],e[1],v(e[1]),s(e[1])],[n[0],n[1],v(n[1]),s(n[1])]],a=i[2],o=0;o<3;++o,a=r)r=i[o],a.v=_t(r[1]-a[1],a[3],a[2],r[3],r[2],r[0]-a[0]),a.point=[0,0];var l=kt(i[0].v[0],i[2].v[0],i[1].v[0]),c=kt(i[0].v[0],i[1].v[0],i[2].v[0]),u=x-l;i[2].point[1]=0,i[0].point[0]=-(i[1].point[0]=i[0].v[0]/2);var f=[i[2].point[0]=i[0].point[0]+i[2].v[0]*s(l),2*(i[0].point[1]=i[1].point[1]=i[2].v[0]*v(l))];return function(t,e){var n,r=v(e),a=s(e),o=new Array(3);for(n=0;n<3;++n){var l=i[n];if(o[n]=_t(e-l[1],l[3],l[2],a,r,t-l[0]),!o[n][0])return l.point;o[n][1]=Tt(o[n][1]-l.v[1])}var h=f.slice();for(n=0;n<3;++n){var d=2==n?0:n+1,p=kt(i[n].v[0],o[n][0],o[d][0]);o[n][1]<0&&(p=-p),n?1==n?(p=c-p,h[0]-=o[n][0]*s(p),h[1]-=o[n][0]*v(p)):(p=u-p,h[0]+=o[n][0]*s(p),h[1]+=o[n][0]*v(p)):(h[0]+=o[n][0]*s(p),h[1]-=o[n][0]*v(p))}return h[0]/=3,h[1]/=3,h}}function At(t){return t[0]*=E,t[1]*=E,t}function St(){return Et([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function Et(t,e,n){var i=(0,xt.Z)({type:"MultiPoint",coordinates:[t,e,n]}),a=[-i[0],-i[1]],o=(0,wt.Z)(a),s=Mt(At(o(t)),At(o(e)),At(o(n)));s.invert=tt(s);var l=(0,r.Z)(s).rotate(a),c=l.center;return delete l.rotate,l.center=function(t){return arguments.length?c(o(t)):o.invert(c())},l.clipAngle(90)}function Ct(t,e){var n=L(1-v(e));return[2/M*t*n,M*(1-n)]}function Pt(){return(0,r.Z)(Ct).scale(95.6464).center([0,30])}function Lt(t){var e=m(t);function n(t,n){return[t,(t?t/v(t):1)*(v(n)*s(t)-e*s(n))]}return n.invert=e?function(t,n){t&&(n*=v(t)/t);var r=s(t);return[t,2*o(L(r*r+e*e-n*n)-r,e-n)]}:function(t,e){return[t,C(t?e*m(t)/t:e)]},n}function Ot(){return ft(Lt).scale(249.828).clipAngle(90)}Ct.invert=function(t,e){var n=(n=e/M-1)*n;return[n>0?t*L(x/n)/2:0,C(1-n)]};var It=L(3);function Dt(t,e){return[It*t*(2*s(2*e/3)-1)/M,It*M*v(e/3)]}function Rt(){return(0,r.Z)(Dt).scale(156.19)}function zt(t){var e=s(t);function n(t,n){return[t*e,v(n)/e]}return n.invert=function(t,n){return[t/e,C(n*e)]},n}function Nt(){return ft(zt).parallel(38.58).scale(195.044)}function jt(t){var e=s(t);function n(t,n){return[t*e,(1+e)*m(n/2)]}return n.invert=function(t,n){return[t/e,2*a(n/(1+e))]},n}function Ft(){return ft(jt).scale(124.75)}function Bt(t,e){var n=L(8/(3*x));return[n*t*(1-i(e)/x),n*e]}function Ut(){return(0,r.Z)(Bt).scale(165.664)}function Ht(t,e){var n=L(4-3*v(i(e)));return[2/L(6*x)*t*n,g(e)*L(2*x/3)*(2-n)]}function Vt(){return(0,r.Z)(Ht).scale(165.664)}function qt(t,e){var n=L(x*(4+x));return[2/n*t*(1+L(1-4*e*e/(x*x))),4/n*e]}function Gt(){return(0,r.Z)(qt).scale(180.739)}function Wt(t,e){var n=(2+w)*v(e);e/=2;for(var r=0,a=1/0;r<10&&i(a)>y;r++){var o=s(e);e-=a=(e+v(e)*(o+2)-n)/(2*o*(1+o))}return[2/L(x*(4+x))*t*(1+s(e)),2*L(x/(4+x))*v(e)]}function Yt(){return(0,r.Z)(Wt).scale(180.739)}function $t(t,e){return[t*(1+s(e))/L(2+x),2*e/L(2+x)]}function Xt(){return(0,r.Z)($t).scale(173.044)}function Kt(t,e){for(var n=(1+w)*v(e),r=0,a=1/0;r<10&&i(a)>y;r++)e-=a=(e+v(e)-n)/(1+s(e));return n=L(2+x),[t*(1+s(e))/n,2*e/n]}function Zt(){return(0,r.Z)(Kt).scale(173.044)}Dt.invert=function(t,e){var n=3*C(e/(It*M));return[M*t/(It*(2*s(2*n/3)-1)),n]},Bt.invert=function(t,e){var n=L(8/(3*x)),r=e/n;return[t/(n*(1-i(r)/x)),r]},Ht.invert=function(t,e){var n=2-i(e)/L(2*x/3);return[t*L(6*x)/(2*n),g(e)*C((4-n*n)/3)]},qt.invert=function(t,e){var n=L(x*(4+x))/2;return[t*n/(1+L(1-e*e*(4+x)/(4*x))),e*n/2]},Wt.invert=function(t,e){var n=e*L((4+x)/x)/2,r=C(n),i=s(r);return[t/(2/L(x*(4+x))*(1+i)),C((r+n*(i+2))/(2+w))]},$t.invert=function(t,e){var n=L(2+x),r=e*n/2;return[n*t/(1+s(r)),r]},Kt.invert=function(t,e){var n=1+w,r=L(n/2);return[2*t*r/(1+s(e*=r)),C((e+v(e))/n)]};var Jt=3+2*T;function Qt(t,e){var n=v(t/=2),r=s(t),i=L(s(e)),o=s(e/=2),l=v(e)/(o+T*r*i),c=L(2/(1+l*l)),f=L((T*o+(r+n)*i)/(T*o+(r-n)*i));return[Jt*(c*(f-1/f)-2*u(f)),Jt*(c*l*(f+1/f)-2*a(l))]}function te(){return(0,r.Z)(Qt).scale(62.5271)}Qt.invert=function(t,e){if(!(n=B.invert(t/1.2,1.065*e)))return null;var n,r=n[0],o=n[1],l=20;t/=Jt,e/=Jt;do{var c=r/2,d=o/2,p=v(c),g=s(c),m=v(d),b=s(d),x=s(o),_=L(x),M=m/(b+T*g*_),A=M*M,S=L(2/(1+A)),E=(T*b+(g+p)*_)/(T*b+(g-p)*_),C=L(E),P=C-1/C,O=C+1/C,I=S*P-2*u(C)-t,D=S*M*O-2*a(M)-e,R=m&&k*_*p*A/m,z=(T*g*b+_)/(2*(b+T*g*_)*(b+T*g*_)*_),N=-.5*M*S*S*S,j=N*R,F=N*z,U=(U=2*b+T*_*(g-p))*U*C,H=(T*g*b*_+x)/U,V=-T*p*m/(_*U),q=P*j-2*H/C+S*(H+H/E),G=P*F-2*V/C+S*(V+V/E),W=M*O*j-2*R/(1+A)+S*O*R+S*M*(H-H/E),Y=M*O*F-2*z/(1+A)+S*O*z+S*M*(V-V/E),$=G*W-Y*q;if(!$)break;var X=(D*G-I*Y)/$,K=(I*W-D*q)/$;r-=X,o=f(-w,h(w,o-K))}while((i(X)>y||i(K)>y)&&--l>0);return i(i(o)-w)r){var h=L(f),d=o(u,c),g=n*p(d/n),m=d-g,b=t*s(m),_=(t*v(m)-m*v(b))/(w-b),k=pe(m,_),T=(x-t)/ge(k,b,x);c=h;var M,A=50;do{c-=M=(t+ge(k,b,c)*T-h)/(k(c)*T)}while(i(M)>y&&--A>0);u=m*v(c),cr){var c=L(l),u=o(a,e),f=n*p(u/n),h=u-f;e=c*s(h),a=c*v(h);for(var d=e-w,g=v(e),m=a/g,y=ey||i(d)>y)&&--m>0);return[p,g]},u}var ye=me(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function be(){return(0,r.Z)(ye).scale(149.995)}var xe=me(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function we(){return(0,r.Z)(xe).scale(153.93)}var _e=me(5/6*x,-.62636,-.0344,0,1.3493,-.05524,0,.045);function ke(){return(0,r.Z)(_e).scale(130.945)}function Te(t,e){var n=t*t,r=e*e;return[t*(1-.162388*r)*(.87-952426e-9*n*n),e*(1+r/12)]}function Me(){return(0,r.Z)(Te).scale(131.747)}Te.invert=function(t,e){var n,r=t,a=e,o=50;do{var s=a*a;a-=n=(a*(1+s/12)-e)/(1+s/4)}while(i(n)>y&&--o>0);o=50,t/=1-.162388*s;do{var l=(l=r*r)*l;r-=n=(r*(.87-952426e-9*l)-t)/(.87-.00476213*l)}while(i(n)>y&&--o>0);return[r,a]};var Ae=me(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function Se(){return(0,r.Z)(Ae).scale(131.087)}function Ee(t){var e=t(w,0)[0]-t(-w,0)[0];function n(n,r){var i=n>0?-.5:.5,a=t(n+i*x,r);return a[0]-=i*e,a}return t.invert&&(n.invert=function(n,r){var i=n>0?-.5:.5,a=t.invert(n+i*e,r),o=a[0]-i*x;return o<-x?o+=2*x:o>x&&(o-=2*x),a[0]=o,a}),n}function Ce(t,e){var n=g(t),r=g(e),a=s(e),l=s(t)*a,c=v(t)*a,u=v(r*e);t=i(o(c,u)),e=C(l),i(t-w)>y&&(t%=w);var f=function(t,e){if(e===w)return[0,0];var n,r,a=v(e),o=a*a,l=o*o,c=1+l,u=1+3*l,f=1-l,h=C(1/L(c)),d=f+o*c*h,p=(1-a)/d,g=L(p),m=p*c,b=L(m),_=g*f;if(0===t)return[0,-(_+o*b)];var k,T=s(e),M=1/T,A=2*a*T,S=(-3*o+h*u)*A,E=(-d*T-(1-a)*S)/(d*d),P=o*c*E+p*u*A,O=-M*A,I=-M*P,D=-2*M*(f*(.5*E/g)-2*o*g*A),R=4*t/x;if(t>.222*x||e.175*x){if(n=(_+o*L(m*(1+l)-_*_))/(1+l),t>x/4)return[n,n];var z=n,N=.5*n;n=.5*(N+z),r=50;do{var j=n*(D+O*L(m-n*n))+I*C(n/b)-R;if(!j)break;j<0?N=n:z=n,n=.5*(N+z)}while(i(z-N)>y&&--r>0)}else{n=y,r=25;do{var F=n*n,B=L(m-F),U=D+O*B,H=n*U+I*C(n/b)-R;n-=k=B?H/(U+(I-O*F)/B):0}while(i(k)>y&&--r>0)}return[n,-_-o*L(m-n*n)]}(t>x/4?w-t:t,e);return t>x/4&&(u=f[0],f[0]=-f[1],f[1]=-u),f[0]*=n,f[1]*=-r,f}function Pe(){return(0,r.Z)(Ee(Ce)).scale(239.75)}function Le(t,e){var n,r,o,c,u,f;if(e=1-y)return n=(1-e)/4,o=1/(r=I(t)),[(c=((f=l(2*(f=t)))-1)/(f+1))+n*((u=r*O(t))-t)/(r*r),o-n*c*o*(u-t),o+n*c*o*(u+t),2*a(l(t))-w+n*(u-t)/r];var h=[1,0,0,0,0,0,0,0,0],d=[L(e),0,0,0,0,0,0,0,0],p=0;for(r=L(1-e),u=1;i(d[p]/h[p])>y&&p<8;)n=h[p++],d[p]=(n-r)/2,h[p]=(n+r)/2,r=L(n*r),u*=2;o=u*h[p]*t;do{o=(C(c=d[p]*v(r=o)/h[p])+o)/2}while(--p);return[v(o),c=s(o),c/s(o-r),o]}function Oe(t,e){if(!e)return t;if(1===e)return u(m(t/2+_));for(var n=1,r=L(1-e),o=L(e),s=0;i(o)>y;s++){if(t%x){var l=a(r*m(t)/n);l<0&&(l+=x),t+=l+~~(t/x)*x}else t+=t;o=(n+r)/2,r=L(n*r),o=((n=o)-r)/2}return t/(d(2,s)*n)}function Ie(t,e){var n=(T-1)/(T+1),r=L(1-n*n),c=Oe(w,r*r),f=u(m(x/4+i(e)/2)),h=l(-1*f)/L(n),d=function(t,e){var n=t*t,r=e+1,i=1-n-e*e;return[.5*((t>=0?w:-w)-o(i,2*t)),-.25*u(i*i+4*n)+.5*u(r*r+n)]}(h*s(-1*t),h*v(-1*t)),p=function(t,e,n){var r=i(t),o=O(i(e));if(r){var s=1/v(r),l=1/(m(r)*m(r)),c=-(l+n*(o*o*s*s)-1+n),u=(-c+L(c*c-(n-1)*l*4))/2;return[Oe(a(1/L(u)),n)*g(t),Oe(a(L((u/l-1)/n)),1-n)*g(e)]}return[0,Oe(a(o),1-n)*g(e)]}(d[0],d[1],r*r);return[-p[1],(e>=0?1:-1)*(.5*c-p[0])]}function De(){return(0,r.Z)(Ee(Ie)).scale(151.496)}Ce.invert=function(t,e){i(t)>1&&(t=2*g(t)-t),i(e)>1&&(e=2*g(e)-e);var n=g(t),r=g(e),a=-n*t,l=-r*e,c=l/a<1,u=function(t,e){for(var n=0,r=1,a=.5,o=50;;){var l=a*a,c=L(a),u=C(1/L(1+l)),f=1-l+a*(1+l)*u,h=(1-c)/f,d=L(h),p=h*(1+l),g=d*(1-l),v=L(p-t*t),m=e+g+a*v;if(i(r-n)0?n=a:r=a,a=.5*(n+r)}if(!o)return null;var y=C(c),w=s(y),_=1/w,k=2*c*w,T=(-f*w-(-3*a+u*(1+3*l))*k*(1-c))/(f*f),M=.5*T/d,A=(1-l)*M-2*a*d*k;return[x/4*(t*(-2*_*A+-_*k*v)+-_*(a*(1+l)*T+h*(1+3*l)*k)*C(t/L(p))),y]}(c?l:a,c?a:l),f=u[0],h=u[1],d=s(h);return c&&(f=-w-f),[n*(o(v(f)*d,-v(h))+x),r*C(s(f)*d)]},Ie.invert=function(t,e){var n=(T-1)/(T+1),r=L(1-n*n),i=function(t,e,n){var r,i,a;return t?(r=Le(t,n),e?(a=(i=Le(e,1-n))[1]*i[1]+n*r[0]*r[0]*i[0]*i[0],[[r[0]*i[2]/a,r[1]*r[2]*i[0]*i[1]/a],[r[1]*i[1]/a,-r[0]*r[2]*i[0]*i[2]/a],[r[2]*i[1]*i[2]/a,-n*r[0]*r[1]*i[0]/a]]):[[r[0],0],[r[1],0],[r[2],0]]):[[0,(i=Le(e,1-n))[0]/i[1]],[1/i[1],0],[i[2]/i[1],0]]}(.5*Oe(w,r*r)-e,-t,r*r),s=function(t,e){var n=e[0]*e[0]+e[1]*e[1];return[(t[0]*e[0]+t[1]*e[1])/n,(t[1]*e[0]-t[0]*e[1])/n]}(i[0],i[1]);return[o(s[1],s[0])/-1,2*a(l(-.5*u(n*s[0]*s[0]+n*s[1]*s[1])))-w]};var Re=n(7613);function ze(t){var e=v(t),n=s(t),r=Ne(t);function a(t,a){var o=r(t,a);t=o[0],a=o[1];var l=v(a),c=s(a),u=s(t),f=P(e*l+n*c*u),h=v(f),d=i(h)>y?f/h:1;return[d*n*v(t),(i(t)>w?d:-d)*(e*c-n*l*u)]}return r.invert=Ne(-t),a.invert=function(t,n){var i=L(t*t+n*n),a=-v(i),l=s(i),c=i*l,u=-n*a,f=i*e,h=L(c*c+u*u-f*f),d=o(c*f+u*h,u*f-c*h),p=(i>w?-1:1)*o(t*a,i*s(d)*l+n*v(d)*a);return r.invert(p,d)},a}function Ne(t){var e=v(t),n=s(t);return function(t,r){var i=s(r),a=s(t)*i,l=v(t)*i,c=v(r);return[o(l,a*n-c*e),C(c*n+a*e)]}}function je(){var t=0,e=(0,r.r)(ze),n=e(t),i=n.rotate,a=n.stream,o=(0,Re.Z)();return n.parallel=function(r){if(!arguments.length)return t*S;var i=n.rotate();return e(t=r*E).rotate(i)},n.rotate=function(e){return arguments.length?(i.call(n,[e[0],e[1]-t*S]),o.center([-e[0],-e[1]]),n):((e=i.call(n))[1]+=t*S,e)},n.stream=function(t){return(t=a(t)).sphere=function(){t.polygonStart();var e,n=o.radius(89.99)().coordinates[0],r=n.length-1,i=-1;for(t.lineStart();++i=0;)t.point((e=n[i])[0],e[1]);t.lineEnd(),t.polygonEnd()},t},n.scale(79.4187).parallel(45).clipAngle(179.999)}var Fe=n(33064),Be=n(72736),Ue=C(1-1/3)*S,He=zt(0);function Ve(t){var e=Ue*E,n=Ct(x,e)[0]-Ct(-x,e)[0],r=He(0,e)[1],a=Ct(0,e)[1],o=M-a,s=A/t,l=4/A,u=r+o*o*4/A;function d(d,p){var g,v=i(p);if(v>e){var m=h(t-1,f(0,c((d+x)/s)));(g=Ct(d+=x*(t-1)/t-m*s,v))[0]=g[0]*A/n-A*(t-1)/(2*t)+m*A/t,g[1]=r+4*(g[1]-a)*o/A,p<0&&(g[1]=-g[1])}else g=He(d,p);return g[0]*=l,g[1]/=u,g}return d.invert=function(e,d){e/=l;var p=i(d*=u);if(p>r){var g=h(t-1,f(0,c((e+x)/s)));e=(e+x*(t-1)/t-g*s)*n/A;var v=Ct.invert(e,.25*(p-r)*A/o+a);return v[0]-=x*(t-1)/t-g*s,d<0&&(v[1]=-v[1]),v}return He.invert(e,d)},d}function qe(t,e){return[t,1&e?90-y:Ue]}function Ge(t,e){return[t,1&e?-90+y:-Ue]}function We(t){return[t[0]*(1-y),t[1]]}function Ye(){var t=4,e=(0,r.r)(Ve),n=e(t),i=n.stream;return n.lobes=function(n){return arguments.length?e(t=+n):t},n.stream=function(e){var r=n.rotate(),a=i(e),o=(n.rotate([0,0]),i(e));return n.rotate(r),a.sphere=function(){(0,Be.Z)(function(t){var e=[].concat((0,Fe.w6)(-180,180+t/2,t).map(qe),(0,Fe.w6)(180,-180-t/2,-t).map(Ge));return{type:"Polygon",coordinates:[180===t?e.map(We):e]}}(180/t),o)},a},n.scale(239.75)}function $e(t){var e,n=1+t,r=C(v(1/n)),a=2*L(x/(e=x+4*r*n)),l=.5*a*(n+L(t*(2+t))),c=t*t,u=n*n;function f(f,h){var d,p,g=1-v(h);if(g&&g<2){var m,y=w-h,_=25;do{var k=v(y),T=s(y),M=r+o(k,n-T),A=1+u-2*n*T;y-=m=(y-c*r-n*k+A*M-.5*g*e)/(2*n*k*M)}while(i(m)>b&&--_>0);d=a*L(A),p=f*M/x}else d=a*(t+g),p=f*r/x;return[d*v(p),l-d*s(p)]}return f.invert=function(t,i){var s=t*t+(i-=l)*i,f=(1+u-s/(a*a))/(2*n),h=P(f),d=v(h),p=r+o(d,n-f);return[C(t/L(s))*x/p,C(1-2*(h-c*r-n*d+(1+u-2*n*f)*p)/e)]},f}function Xe(){var t=1,e=(0,r.r)($e),n=e(t);return n.ratio=function(n){return arguments.length?e(t=+n):t},n.scale(167.774).center([0,18.67])}var Ke=.7109889596207567,Ze=.0528035274542;function Je(t,e){return e>-Ke?((t=at(t,e))[1]+=Ze,t):ht(t,e)}function Qe(){return(0,r.Z)(Je).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function tn(t,e){return i(e)>Ke?((t=at(t,e))[1]-=e>0?Ze:-Ze,t):ht(t,e)}function en(){return(0,r.Z)(tn).scale(152.63)}function nn(t,e,n,r){var i=L(4*x/(2*n+(1+t-e/2)*v(2*n)+(t+e)/2*v(4*n)+e/2*v(6*n))),a=L(r*v(n)*L((1+t*s(2*n)+e*s(4*n))/(1+t+e))),o=n*c(1);function l(n){return L(1+t*s(2*n)+e*s(4*n))}function c(r){var i=r*n;return(2*i+(1+t-e/2)*v(2*i)+(t+e)/2*v(4*i)+e/2*v(6*i))/n}function u(t){return l(t)*v(t)}var f=function(t,e){var r=n*Q(c,o*v(e)/n,e/x);isNaN(r)&&(r=n*g(e));var u=i*l(r);return[u*a*t/x*s(r),u/a*v(r)]};return f.invert=function(t,e){var r=Q(u,e*a/i);return[t*x/(s(r)*i*a*l(r)),C(n*c(r/n)/o)]},0===n&&(i=L(r/x),(f=function(t,e){return[t*i,v(e)/i]}).invert=function(t,e){return[t/i,C(e*i)]}),f}function rn(){var t=1,e=0,n=45*E,i=2,a=(0,r.r)(nn),o=a(t,e,n,i);return o.a=function(r){return arguments.length?a(t=+r,e,n,i):t},o.b=function(r){return arguments.length?a(t,e=+r,n,i):e},o.psiMax=function(r){return arguments.length?a(t,e,n=+r*E,i):n*S},o.ratio=function(r){return arguments.length?a(t,e,n,i=+r):i},o.scale(180.739)}function an(t,e,n,r,i,a,o,s,l,c,u){if(u.nanEncountered)return NaN;var f,h,d,p,g,v,m,y,b,x;if(h=t(e+.25*(f=n-e)),d=t(n-.25*f),isNaN(h))u.nanEncountered=!0;else{if(!isNaN(d))return x=((v=(p=f*(r+4*h+i)/12)+(g=f*(i+4*d+a)/12))-o)/15,c>l?(u.maxDepthCount++,v+x):Math.abs(x)>1;do{c[r]>t?n=r:e=r,r=e+n>>1}while(r>e);var i=c[r+1]-c[r];return i&&(i=(t-c[r+1])/i),(r+1+i)/s}var h=2*f(1)/x*o/n,p=function(t,e){var n=f(i(v(e))),a=r(n)*t;return n/=h,[a,e>=0?n:-n]};return p.invert=function(t,e){var n;return i(e*=h)<1&&(n=g(e)*C(a(i(e))*o)),[t/r(i(e)),n]},p}function ln(){var t=0,e=2.5,n=1.183136,i=(0,r.r)(sn),a=i(t,e,n);return a.alpha=function(r){return arguments.length?i(t=+r,e,n):t},a.k=function(r){return arguments.length?i(t,e=+r,n):e},a.gamma=function(r){return arguments.length?i(t,e,n=+r):n},a.scale(152.63)}function cn(t,e){return i(t[0]-e[0])a[o][2][0];++o);var l=t(n-a[o][1][0],r);return l[0]+=t(a[o][1][0],i*r>i*a[o][0][1]?a[o][0][1]:r)[0],l}n?o.invert=n(o):t.invert&&(o.invert=function(n,r){for(var i=a[+(r<0)],s=e[+(r<0)],l=0,c=i.length;l=0;--s)n=(e=t[1][s])[0][0],r=e[0][1],i=e[1][1],a=e[2][0],o=e[2][1],l.push(un([[a-y,o-y],[a-y,i+y],[n+y,i+y],[n+y,r-y]],30));return{type:"Polygon",coordinates:[(0,Fe.TS)(l)]}}(n),e=n.map((function(t){return t.map((function(t){return[[t[0][0]*E,t[0][1]*E],[t[1][0]*E,t[1][1]*E],[t[2][0]*E,t[2][1]*E]]}))})),a=e.map((function(e){return e.map((function(e){var n,r=t(e[0][0],e[0][1])[0],i=t(e[2][0],e[2][1])[0],a=t(e[1][0],e[0][1])[1],o=t(e[1][0],e[1][1])[1];return a>o&&(n=a,a=o,o=n),[[r,a],[i,o]]}))})),s):e.map((function(t){return t.map((function(t){return[[t[0][0]*S,t[0][1]*S],[t[1][0]*S,t[1][1]*S],[t[2][0]*S,t[2][1]*S]]}))}))},null!=e&&s.lobes(e),s}Je.invert=function(t,e){return e>-Ke?at.invert(t,e-Ze):ht.invert(t,e)},tn.invert=function(t,e){return i(e)>Ke?at.invert(t,e+(e>0?Ze:-Ze)):ht.invert(t,e)};var hn=[[[[-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 dn(){return fn(ct,hn).scale(160.857)}var pn=[[[[-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 gn(){return fn(tn,pn).scale(152.63)}var vn=[[[[-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 mn(){return fn(at,vn).scale(169.529)}var yn=[[[[-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 bn(){return fn(at,yn).scale(169.529).rotate([20,0])}var xn=[[[[-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 wn(){return fn(Je,xn,tt).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var _n=[[[[-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 kn(){return fn(ht,_n).scale(152.63).rotate([-20,0])}function Tn(t,e){return[3/A*t*L(x*x/3-e*e),e]}function Mn(){return(0,r.Z)(Tn).scale(158.837)}function An(t){function e(e,n){if(i(i(n)-w)2)return null;var a=(e/=2)*e,s=(n/=2)*n,l=2*n/(1+a+s);return l=d((1+l)/(1-l),1/t),[o(2*e,1-a-s)/t,C((l-1)/(l+1))]},e}function Sn(){var t=.5,e=(0,r.r)(An),n=e(t);return n.spacing=function(n){return arguments.length?e(t=+n):t},n.scale(124.75)}Tn.invert=function(t,e){return[A/3*t/L(x*x/3-e*e),e]};var En=x/T;function Cn(t,e){return[t*(1+L(s(e)))/2,e/(s(e/2)*s(t/6))]}function Pn(){return(0,r.Z)(Cn).scale(97.2672)}function Ln(t,e){var n=t*t,r=e*e;return[t*(.975534+r*(-.0143059*n-.119161+-.0547009*r)),e*(1.00384+n*(.0802894+-.02855*r+199025e-9*n)+r*(.0998909+-.0491032*r))]}function On(){return(0,r.Z)(Ln).scale(139.98)}function In(t,e){return[v(t)/s(e),m(e)*s(t)]}function Dn(){return(0,r.Z)(In).scale(144.049).clipAngle(89.999)}function Rn(t){var e=s(t),n=m(_+t/2);function r(r,a){var o=a-t,s=i(o)=0;)h=(f=t[u])[0]+l*(i=h)-c*d,d=f[1]+l*d+c*i;return[h=l*(i=h)-c*d,d=l*d+c*i]}return n.invert=function(n,r){var l=20,c=n,u=r;do{for(var f,h=e,d=t[h],p=d[0],g=d[1],m=0,b=0;--h>=0;)m=p+c*(f=m)-u*b,b=g+c*b+u*f,p=(d=t[h])[0]+c*(f=p)-u*g,g=d[1]+c*g+u*f;var x,w,_=(m=p+c*(f=m)-u*b)*m+(b=g+c*b+u*f)*b;c-=x=((p=c*(f=p)-u*g-n)*m+(g=c*g+u*f-r)*b)/_,u-=w=(g*m-p*b)/_}while(i(x)+i(w)>y*y&&--l>0);if(l){var k=L(c*c+u*u),T=2*a(.5*k),M=v(T);return[o(c*M,k*s(T)),k?C(u*M/k):0]}},n}Cn.invert=function(t,e){var n=i(t),r=i(e),a=y,o=w;ry||i(b)>y)&&--a>0);return a&&[n,r]},In.invert=function(t,e){var n=t*t,r=e*e+1,i=n+r,a=t?k*L((i-L(i*i-4*n))/n):1/L(r);return[C(t*a),g(e)*P(a)]},Nn.invert=function(t,e){return[t,2.5*a(l(.8*e))-.625*x]};var Bn=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],Un=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Hn=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],Vn=[[.9245,0],[0,0],[.01943,0]],qn=[[.721316,0],[0,0],[-.00881625,-.00617325]];function Gn(){return Kn(Bn,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function Wn(){return Kn(Un,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Yn(){return Kn(Hn,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function $n(){return Kn(Vn,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function Xn(){return Kn(qn,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function Kn(t,e){var n=(0,r.Z)(Fn(t)).rotate(e).clipAngle(90),i=(0,wt.Z)(e),a=n.center;return delete n.rotate,n.center=function(t){return arguments.length?a(i(t)):i.invert(a())},n}var Zn=L(6),Jn=L(7);function Qn(t,e){var n=C(7*v(e)/(3*Zn));return[Zn*t*(2*s(2*n/3)-1)/Jn,9*v(n/3)/Jn]}function tr(){return(0,r.Z)(Qn).scale(164.859)}function er(t,e){for(var n,r=(1+k)*v(e),a=e,o=0;o<25&&(a-=n=(v(a/2)+v(a)-r)/(.5*s(a/2)+s(a)),!(i(n)b&&--l>0);return[t/(.84719-.13063*(r=s*s)+(o=r*(a=r*r))*o*(.05494*r-.04515-.02326*a+.00331*o)),s]},lr.invert=function(t,e){for(var n=e/2,r=0,a=1/0;r<10&&i(a)>y;++r){var o=s(e/2);e-=a=(e-m(e/2)-n)/(1-.5/(o*o))}return[2*t/(1+s(e)),e]};var ur=[[[[-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 fr(){return fn(K(1/0),ur).rotate([20,0]).scale(152.63)}function hr(t,e){var n=v(e),r=s(e),a=g(t);if(0===t||i(e)===w)return[0,e];if(0===e)return[t,0];if(i(t)===w)return[t*r,w*n];var o=x/(2*t)-2*t/x,l=2*e/x,c=(1-l*l)/(n-l),u=o*o,f=c*c,h=1+u/f,d=1+f/u,p=(o*n/c-o/2)/h,m=(f*n/u+c/2)/d,y=m*m-(f*n*n/u+c*n-1)/d;return[w*(p+L(p*p+r*r/h)*a),w*(m+L(y<0?0:y)*g(-e*o)*a)]}function dr(){return(0,r.Z)(hr).scale(127.267)}hr.invert=function(t,e){var n=(t/=w)*t,r=n+(e/=w)*e,i=x*x;return[t?(r-1+L((1-r)*(1-r)+4*n))/(2*t)*w:0,Q((function(t){return r*(x*v(t)-2*t)*x+4*t*t*(e-v(t))+2*x*t-i*e}),0)]};var pr=1.0148,gr=.23185,vr=-.14499,mr=.02406,yr=pr,br=5*gr,xr=7*vr,wr=9*mr,_r=1.790857183;function kr(t,e){var n=e*e;return[t,e*(pr+n*n*(gr+n*(vr+mr*n)))]}function Tr(){return(0,r.Z)(kr).scale(139.319)}function Mr(t,e){if(i(e)_r?e=_r:e<-1.790857183&&(e=-1.790857183);var n,r=e;do{var a=r*r;r-=n=(r*(pr+a*a*(gr+a*(vr+mr*a)))-e)/(yr+a*a*(br+a*(xr+wr*a)))}while(i(n)>y);return[t,r]},Mr.invert=function(t,e){if(i(e)y&&--o>0);return l=m(a),[(i(e)=0;)if(r=e[s],n[0]===r[0]&&n[1]===r[1]){if(a)return[a,n];a=n}}}(e.face,n.face),i=Cr(r.map(n.project),r.map(e.project));e.transform=n.transform?Pr(n.transform,i):i;for(var a=n.edges,o=0,s=a.length;o0?[-e[0],0]:[180-e[0],180])};var e=Fr.map((function(e){return{face:e,project:t(e)}}));return[-1,0,0,1,0,1,4,5].forEach((function(t,n){var r=e[t];r&&(r.children||(r.children=[])).push(e[n])})),Ir(e[0],(function(t,n){return e[t<-x/2?n<0?6:4:t<0?n<0?2:0:tr^d>r&&n<(h-c)*(r-u)/(d-u)+c&&(i=!i)}return i}(t[0],n))return t.push(e),!0}))||t.push([e])})),ti=[],t.length?t.length>1?{type:"MultiPolygon",coordinates:t}:{type:"Polygon",coordinates:t[0]}:null}};function ii(t){var e=t(w,0)[0]-t(-w,0)[0];function n(n,r){var a=i(n)0?n-x:n+x,r),s=(o[0]-o[1])*k,l=(o[0]+o[1])*k;if(a)return[s,l];var c=e*k,u=s>0^l>0?-1:1;return[u*s-g(l)*c,u*l-g(s)*c]}return t.invert&&(n.invert=function(n,r){var a=(n+r)*k,o=(r-n)*k,s=i(a)<.5*e&&i(o)<.5*e;if(!s){var l=e*k,c=a>0^o>0?-1:1,u=-c*n+(o>0?1:-1)*l,f=-c*r+(a>0?1:-1)*l;a=(-u-f)*k,o=(u-f)*k}var h=t.invert(a,o);return s||(h[0]+=a>0?x:-x),h}),(0,r.Z)(n).rotate([-90,-90,45]).clipAngle(179.999)}function ai(){return ii(Ce).scale(176.423)}function oi(){return ii(Ie).scale(111.48)}function si(t,e){if(!(0<=(e=+e)&&e<=20))throw new Error("invalid digits");function n(t){var n=t.length,r=2,i=new Array(n);for(i[0]=+t[0].toFixed(e),i[1]=+t[1].toFixed(e);r2||a[0]!=e[0]||a[1]!=e[1])&&(r.push(a),e=a)}return 1===r.length&&t.length>1&&r.push(n(t[t.length-1])),r}function a(t){return t.map(i)}function o(t){if(null==t)return t;var e;switch(t.type){case"GeometryCollection":e={type:"GeometryCollection",geometries:t.geometries.map(o)};break;case"Point":e={type:"Point",coordinates:n(t.coordinates)};break;case"MultiPoint":e={type:t.type,coordinates:r(t.coordinates)};break;case"LineString":e={type:t.type,coordinates:i(t.coordinates)};break;case"MultiLineString":case"Polygon":e={type:t.type,coordinates:a(t.coordinates)};break;case"MultiPolygon":e={type:"MultiPolygon",coordinates:t.coordinates.map(a)};break;default:return t}return null!=t.bbox&&(e.bbox=t.bbox),e}function s(t){var e={type:"Feature",properties:t.properties,geometry:o(t.geometry)};return null!=t.id&&(e.id=t.id),null!=t.bbox&&(e.bbox=t.bbox),e}if(null!=t)switch(t.type){case"Feature":return s(t);case"FeatureCollection":var l={type:"FeatureCollection",features:t.features.map(s)};return null!=t.bbox&&(l.bbox=t.bbox),l;default:return o(t)}return t}function li(t){var e=v(t);function n(n,r){var i=e?m(n*e/2)/e:n/2;if(!r)return[2*i,-t];var o=2*a(i*v(r)),l=1/m(r);return[v(o)*l,r+(1-s(o))*l-t]}return n.invert=function(n,r){if(i(r+=t)y&&--u>0);var p=n*(f=m(c)),g=m(i(r)0?w:-w)*(f+o*(p-l)/2+o*o*(p-2*f+l)/2)]}function hi(){return(0,r.Z)(fi).scale(152.63)}function di(t,e){var n=function(t){function e(e,n){var r=s(n),i=(t-1)/(t-r*s(e));return[i*r*v(e),i*v(n)]}return e.invert=function(e,n){var r=e*e+n*n,i=L(r),a=(t-L(1-r*(t+1)/(t-1)))/((t-1)/i+i/(t-1));return[o(e*a,i*L(1-a*a)),i?C(n*a/i):0]},e}(t);if(!e)return n;var r=s(e),i=v(e);function a(e,a){var o=n(e,a),s=o[1],l=s*i/(t-1)+r;return[o[0]*r/l,s/l]}return a.invert=function(e,a){var o=(t-1)/(t-1-a*i);return n.invert(o*e,o*a*r)},a}function pi(){var t=2,e=0,n=(0,r.r)(di),i=n(t,e);return i.distance=function(r){return arguments.length?n(t=+r,e):t},i.tilt=function(r){return arguments.length?n(t,e=r*E):e*S},i.scale(432.147).clipAngle(P(1/t)*S-1e-6)}ui.forEach((function(t){t[1]*=1.0144})),fi.invert=function(t,e){var n=e/w,r=90*n,a=h(18,i(r/5)),o=f(0,c(a));do{var s=ui[o][1],l=ui[o+1][1],u=ui[h(19,o+2)][1],d=u-s,p=u-2*l+s,g=2*(i(n)-l)/d,v=p/d,m=g*(1-v*g*(1-2*v*g));if(m>=0||1===o){r=(e>=0?5:-5)*(m+a);var y,x=50;do{m=(a=h(18,i(r)/5))-(o=c(a)),s=ui[o][1],l=ui[o+1][1],u=ui[h(19,o+2)][1],r-=(y=(e>=0?w:-w)*(l+m*(u-s)/2+m*m*(u-2*l+s)/2)-e)*S}while(i(y)>b&&--x>0);break}}while(--o>=0);var _=ui[o][0],k=ui[o+1][0],T=ui[h(19,o+2)][0];return[t/(k+m*(T-_)/2+m*m*(T-2*k+_)/2),r*E]};var gi=1e-4,vi=1e4,mi=-180,yi=mi+gi,bi=180,xi=bi-gi,wi=-90,_i=wi+gi,ki=90,Ti=ki-gi;function Mi(t){return t.length>0}function Ai(t){return t===wi||t===ki?[0,t]:[mi,(e=t,Math.floor(e*vi)/vi)];var e}function Si(t){var e=t[0],n=t[1],r=!1;return e<=yi?(e=mi,r=!0):e>=xi&&(e=bi,r=!0),n<=_i?(n=wi,r=!0):n>=Ti&&(n=ki,r=!0),r?[e,n]:t}function Ei(t){return t.map(Si)}function Ci(t,e,n){for(var r=0,i=t.length;r=xi||u<=_i||u>=Ti){a[o]=Si(l);for(var f=o+1;fyi&&d_i&&p=s)break;n.push({index:-1,polygon:e,ring:a=a.slice(f-1)}),a[0]=Ai(a[0][1]),o=-1,s=a.length}}}}function Pi(t){var e,n,r,i,a,o,s=t.length,l={},c={};for(e=0;e0?x-l:l)*S],u=(0,r.Z)(t(s)).rotate(c),f=(0,wt.Z)(c),h=u.center;return delete u.rotate,u.center=function(t){return arguments.length?h(f(t)):f.invert(h())},u.clipAngle(90)}function Ni(t){var e=s(t);function n(t,n){var r=(0,Nr.M)(t,n);return r[0]*=e,r}return n.invert=function(t,n){return Nr.M.invert(t/e,n)},n}function ji(){return Fi([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function Fi(t,e){return zi(Ni,t,e)}function Bi(t){if(!(t*=2))return W.N;var e=-t/2,n=-e,r=t*t,i=m(n),a=.5/v(n);function l(i,a){var o=P(s(a)*s(i-e)),l=P(s(a)*s(i-n));return[((o*=o)-(l*=l))/(2*t),(a<0?-1:1)*L(4*r*l-(r-o+l)*(r-o+l))/(2*t)]}return l.invert=function(t,r){var l,c,u=r*r,f=s(L(u+(l=t+e)*l)),h=s(L(u+(l=t+n)*l));return[o(c=f-h,l=(f+h)*i),(r<0?-1:1)*P(L(l*l+c*c)*a)]},l}function Ui(){return Hi([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function Hi(t,e){return zi(Bi,t,e)}function Vi(t,e){if(i(e)y&&--l>0);return[g(t)*(L(a*a+4)+a)*x/4,w*s]};var ta=4*x+3*L(3),ea=2*L(2*x*L(3)/ta),na=it(ea*L(3)/x,ea,ta/6);function ra(){return(0,r.Z)(na).scale(176.84)}function ia(t,e){return[t*L(1-3*e*e/(x*x)),e]}function aa(){return(0,r.Z)(ia).scale(152.63)}function oa(t,e){var n=s(e),r=s(t)*n,i=1-r,a=s(t=o(v(t)*n,-v(e))),l=v(t);return[l*(n=L(1-r*r))-a*i,-a*n-l*i]}function sa(){return(0,r.Z)(oa).rotate([0,-90,45]).scale(124.75).clipAngle(179.999)}function la(t,e){var n=z(t,e);return[(n[0]+t/w)/2,(n[1]+e)/2]}function ca(){return(0,r.Z)(la).scale(158.837)}ia.invert=function(t,e){return[t/L(1-3*e*e/(x*x)),e]},oa.invert=function(t,e){var n=(t*t+e*e)/-2,r=L(-n*(2+n)),i=e*n+t*r,a=t*n-e*r,s=L(a*a+i*i);return[o(r*i,s*(1+n)),s?-C(r*a/s):0]},la.invert=function(t,e){var n=t,r=e,a=25;do{var o,l=s(r),c=v(r),u=v(2*r),f=c*c,h=l*l,d=v(n),p=s(n/2),g=v(n/2),m=g*g,b=1-h*p*p,x=b?P(l*p)*L(o=1/b):o=0,_=.5*(2*x*l*g+n/w)-t,k=.5*(x*c+r)-e,T=.5*o*(h*m+x*l*p*f)+.5/w,M=o*(d*u/4-x*c*g),A=.125*o*(u*g-x*c*h*d),S=.5*o*(f*p+x*m*l)+.5,E=M*A-S*T,C=(k*M-_*S)/E,O=(_*A-k*T)/E;n-=C,r-=O}while((i(C)>y||i(O)>y)&&--a>0);return[n,r]}},33940:function(t,e,n){"use strict";function r(){return new i}function i(){this.reset()}n.d(e,{Z:function(){return r}}),i.prototype={constructor:i,reset:function(){this.s=this.t=0},add:function(t){o(a,t,this.t),o(this,a.s,this.s),this.s?this.t+=a.t:this.s=a.t},valueOf:function(){return this.s}};var a=new i;function o(t,e,n){var r=t.s=e+n,i=r-e,a=r-i;t.t=e-a+(n-i)}},97860:function(t,e,n){"use strict";n.d(e,{L9:function(){return h},ZP:function(){return b},gL:function(){return p}});var r,i,a,o,s,l=n(33940),c=n(39695),u=n(73182),f=n(72736),h=(0,l.Z)(),d=(0,l.Z)(),p={point:u.Z,lineStart:u.Z,lineEnd:u.Z,polygonStart:function(){h.reset(),p.lineStart=g,p.lineEnd=v},polygonEnd:function(){var t=+h;d.add(t<0?c.BZ+t:t),this.lineStart=this.lineEnd=this.point=u.Z},sphere:function(){d.add(c.BZ)}};function g(){p.point=m}function v(){y(r,i)}function m(t,e){p.point=y,r=t,i=e,t*=c.uR,e*=c.uR,a=t,o=(0,c.mC)(e=e/2+c.pu),s=(0,c.O$)(e)}function y(t,e){t*=c.uR,e=(e*=c.uR)/2+c.pu;var n=t-a,r=n>=0?1:-1,i=r*n,l=(0,c.mC)(e),u=(0,c.O$)(e),f=s*u,d=o*l+f*(0,c.mC)(i),p=f*r*(0,c.O$)(i);h.add((0,c.fv)(p,d)),a=t,o=l,s=u}function b(t){return d.reset(),(0,f.Z)(t,p),2*d}},77338:function(t,e,n){"use strict";n.d(e,{Z:function(){return P}});var r,i,a,o,s,l,c,u,f,h,d=n(33940),p=n(97860),g=n(7620),v=n(39695),m=n(72736),y=(0,d.Z)(),b={point:x,lineStart:_,lineEnd:k,polygonStart:function(){b.point=T,b.lineStart=M,b.lineEnd=A,y.reset(),p.gL.polygonStart()},polygonEnd:function(){p.gL.polygonEnd(),b.point=x,b.lineStart=_,b.lineEnd=k,p.L9<0?(r=-(a=180),i=-(o=90)):y>v.Ho?o=90:y<-v.Ho&&(i=-90),h[0]=r,h[1]=a},sphere:function(){r=-(a=180),i=-(o=90)}};function x(t,e){f.push(h=[r=t,a=t]),eo&&(o=e)}function w(t,e){var n=(0,g.Og)([t*v.uR,e*v.uR]);if(u){var l=(0,g.T5)(u,n),c=[l[1],-l[0],0],d=(0,g.T5)(c,l);(0,g.iJ)(d),d=(0,g.Y1)(d);var p,m=t-s,y=m>0?1:-1,b=d[0]*v.RW*y,x=(0,v.Wn)(m)>180;x^(y*so&&(o=p):x^(y*s<(b=(b+360)%360-180)&&bo&&(o=e)),x?tS(r,a)&&(a=t):S(t,a)>S(r,a)&&(r=t):a>=r?(ta&&(a=t)):t>s?S(r,t)>S(r,a)&&(a=t):S(t,a)>S(r,a)&&(r=t)}else f.push(h=[r=t,a=t]);eo&&(o=e),u=n,s=t}function _(){b.point=w}function k(){h[0]=r,h[1]=a,b.point=x,u=null}function T(t,e){if(u){var n=t-s;y.add((0,v.Wn)(n)>180?n+(n>0?360:-360):n)}else l=t,c=e;p.gL.point(t,e),w(t,e)}function M(){p.gL.lineStart()}function A(){T(l,c),p.gL.lineEnd(),(0,v.Wn)(y)>v.Ho&&(r=-(a=180)),h[0]=r,h[1]=a,u=null}function S(t,e){return(e-=t)<0?e+360:e}function E(t,e){return t[0]-e[0]}function C(t,e){return t[0]<=t[1]?t[0]<=e&&e<=t[1]:eS(s[0],s[1])&&(s[1]=l[1]),S(l[0],s[1])>S(s[0],s[1])&&(s[0]=l[0])):c.push(s=l);for(u=-1/0,e=0,s=c[n=c.length-1];e<=n;s=l,++e)l=c[e],(d=S(s[1],l[0]))>u&&(u=d,r=l[0],a=s[1])}return f=h=null,r===1/0||i===1/0?[[NaN,NaN],[NaN,NaN]]:[[r,i],[a,o]]}},7620:function(t,e,n){"use strict";n.d(e,{Og:function(){return a},T:function(){return c},T5:function(){return s},Y1:function(){return i},iJ:function(){return u},j9:function(){return o},s0:function(){return l}});var r=n(39695);function i(t){return[(0,r.fv)(t[1],t[0]),(0,r.ZR)(t[2])]}function a(t){var e=t[0],n=t[1],i=(0,r.mC)(n);return[i*(0,r.mC)(e),i*(0,r.O$)(e),(0,r.O$)(n)]}function o(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function s(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}function l(t,e){t[0]+=e[0],t[1]+=e[1],t[2]+=e[2]}function c(t,e){return[t[0]*e,t[1]*e,t[2]*e]}function u(t){var e=(0,r._b)(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=e,t[1]/=e,t[2]/=e}},66624:function(t,e,n){"use strict";n.d(e,{Z:function(){return I}});var r,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b=n(39695),x=n(73182),w=n(72736),_={sphere:x.Z,point:k,lineStart:M,lineEnd:E,polygonStart:function(){_.lineStart=C,_.lineEnd=P},polygonEnd:function(){_.lineStart=M,_.lineEnd=E}};function k(t,e){t*=b.uR,e*=b.uR;var n=(0,b.mC)(e);T(n*(0,b.mC)(t),n*(0,b.O$)(t),(0,b.O$)(e))}function T(t,e,n){++r,a+=(t-a)/r,o+=(e-o)/r,s+=(n-s)/r}function M(){_.point=A}function A(t,e){t*=b.uR,e*=b.uR;var n=(0,b.mC)(e);v=n*(0,b.mC)(t),m=n*(0,b.O$)(t),y=(0,b.O$)(e),_.point=S,T(v,m,y)}function S(t,e){t*=b.uR,e*=b.uR;var n=(0,b.mC)(e),r=n*(0,b.mC)(t),a=n*(0,b.O$)(t),o=(0,b.O$)(e),s=(0,b.fv)((0,b._b)((s=m*o-y*a)*s+(s=y*r-v*o)*s+(s=v*a-m*r)*s),v*r+m*a+y*o);i+=s,l+=s*(v+(v=r)),c+=s*(m+(m=a)),u+=s*(y+(y=o)),T(v,m,y)}function E(){_.point=k}function C(){_.point=L}function P(){O(p,g),_.point=k}function L(t,e){p=t,g=e,t*=b.uR,e*=b.uR,_.point=O;var n=(0,b.mC)(e);v=n*(0,b.mC)(t),m=n*(0,b.O$)(t),y=(0,b.O$)(e),T(v,m,y)}function O(t,e){t*=b.uR,e*=b.uR;var n=(0,b.mC)(e),r=n*(0,b.mC)(t),a=n*(0,b.O$)(t),o=(0,b.O$)(e),s=m*o-y*a,p=y*r-v*o,g=v*a-m*r,x=(0,b._b)(s*s+p*p+g*g),w=(0,b.ZR)(x),_=x&&-w/x;f+=_*s,h+=_*p,d+=_*g,i+=w,l+=w*(v+(v=r)),c+=w*(m+(m=a)),u+=w*(y+(y=o)),T(v,m,y)}function I(t){r=i=a=o=s=l=c=u=f=h=d=0,(0,w.Z)(t,_);var e=f,n=h,p=d,g=e*e+n*n+p*p;return g0?os)&&(o+=i*a.BZ));for(var h,d=o;i>0?d>s:d0?i.pi:-i.pi,c=(0,i.Wn)(o-n);(0,i.Wn)(c-i.pi)0?i.ou:-i.ou),t.point(a,r),t.lineEnd(),t.lineStart(),t.point(l,r),t.point(o,r),e=0):a!==l&&c>=i.pi&&((0,i.Wn)(n-a)i.Ho?(0,i.z4)(((0,i.O$)(e)*(o=(0,i.mC)(r))*(0,i.O$)(n)-(0,i.O$)(r)*(a=(0,i.mC)(e))*(0,i.O$)(t))/(a*o*s)):(e+r)/2}(n,r,o,s),t.point(a,r),t.lineEnd(),t.lineStart(),t.point(l,r),e=0),t.point(n=o,r=s),a=l},lineEnd:function(){t.lineEnd(),n=r=NaN},clean:function(){return 2-e}}}),(function(t,e,n,r){var a;if(null==t)a=n*i.ou,r.point(-i.pi,a),r.point(0,a),r.point(i.pi,a),r.point(i.pi,0),r.point(i.pi,-a),r.point(0,-a),r.point(-i.pi,-a),r.point(-i.pi,0),r.point(-i.pi,a);else if((0,i.Wn)(t[0]-e[0])>i.Ho){var o=t[0]1&&e.push(e.pop().concat(e.shift()))},result:function(){var n=e;return e=[],t=null,n}}}},1457:function(t,e,n){"use strict";n.d(e,{Z:function(){return l}});var r=n(7620),i=n(7613),a=n(39695),o=n(67108),s=n(97023);function l(t){var e=(0,a.mC)(t),n=6*a.uR,l=e>0,c=(0,a.Wn)(e)>a.Ho;function u(t,n){return(0,a.mC)(t)*(0,a.mC)(n)>e}function f(t,n,i){var o=(0,r.Og)(t),s=(0,r.Og)(n),l=[1,0,0],c=(0,r.T5)(o,s),u=(0,r.j9)(c,c),f=c[0],h=u-f*f;if(!h)return!i&&t;var d=e*u/h,p=-e*f/h,g=(0,r.T5)(l,c),v=(0,r.T)(l,d),m=(0,r.T)(c,p);(0,r.s0)(v,m);var y=g,b=(0,r.j9)(v,y),x=(0,r.j9)(y,y),w=b*b-x*((0,r.j9)(v,v)-1);if(!(w<0)){var _=(0,a._b)(w),k=(0,r.T)(y,(-b-_)/x);if((0,r.s0)(k,v),k=(0,r.Y1)(k),!i)return k;var T,M=t[0],A=n[0],S=t[1],E=n[1];A0^k[1]<((0,a.Wn)(k[0]-M)a.pi^(M<=k[0]&&k[0]<=A)){var L=(0,r.T)(y,(-b+_)/x);return(0,r.s0)(L,v),[k,(0,r.Y1)(L)]}}}function h(e,n){var r=l?t:a.pi-t,i=0;return e<-r?i|=1:e>r&&(i|=2),n<-r?i|=4:n>r&&(i|=8),i}return(0,s.Z)(u,(function(t){var e,n,r,i,s;return{lineStart:function(){i=r=!1,s=1},point:function(d,p){var g,v=[d,p],m=u(d,p),y=l?m?0:h(d,p):m?h(d+(d<0?a.pi:-a.pi),p):0;if(!e&&(i=r=m)&&t.lineStart(),m!==r&&(!(g=f(e,v))||(0,o.Z)(e,g)||(0,o.Z)(v,g))&&(v[2]=1),m!==r)s=0,m?(t.lineStart(),g=f(v,e),t.point(g[0],g[1])):(g=f(e,v),t.point(g[0],g[1],2),t.lineEnd()),e=g;else if(c&&e&&l^m){var b;y&n||!(b=f(v,e,!0))||(s=0,l?(t.lineStart(),t.point(b[0][0],b[0][1]),t.point(b[1][0],b[1][1]),t.lineEnd()):(t.point(b[1][0],b[1][1]),t.lineEnd(),t.lineStart(),t.point(b[0][0],b[0][1],3)))}!m||e&&(0,o.Z)(e,v)||t.point(v[0],v[1]),e=v,r=m,n=y},lineEnd:function(){r&&t.lineEnd(),e=null},clean:function(){return s|(i&&r)<<1}}}),(function(e,r,a,o){(0,i.m)(o,t,n,a,e,r)}),l?[0,-t]:[-a.pi,t-a.pi])}},97023:function(t,e,n){"use strict";n.d(e,{Z:function(){return l}});var r=n(85272),i=n(46225),a=n(39695),o=n(23071),s=n(33064);function l(t,e,n,a){return function(l){var f,h,d,p=e(l),g=(0,r.Z)(),v=e(g),m=!1,y={point:b,lineStart:w,lineEnd:_,polygonStart:function(){y.point=k,y.lineStart=T,y.lineEnd=M,h=[],f=[]},polygonEnd:function(){y.point=b,y.lineStart=w,y.lineEnd=_,h=(0,s.TS)(h);var t=(0,o.Z)(f,a);h.length?(m||(l.polygonStart(),m=!0),(0,i.Z)(h,u,t,n,l)):t&&(m||(l.polygonStart(),m=!0),l.lineStart(),n(null,null,1,l),l.lineEnd()),m&&(l.polygonEnd(),m=!1),h=f=null},sphere:function(){l.polygonStart(),l.lineStart(),n(null,null,1,l),l.lineEnd(),l.polygonEnd()}};function b(e,n){t(e,n)&&l.point(e,n)}function x(t,e){p.point(t,e)}function w(){y.point=x,p.lineStart()}function _(){y.point=b,p.lineEnd()}function k(t,e){d.push([t,e]),v.point(t,e)}function T(){v.lineStart(),d=[]}function M(){k(d[0][0],d[0][1]),v.lineEnd();var t,e,n,r,i=v.clean(),a=g.result(),o=a.length;if(d.pop(),f.push(d),d=null,o)if(1&i){if((e=(n=a[0]).length-1)>0){for(m||(l.polygonStart(),m=!0),l.lineStart(),t=0;t1&&2&i&&a.push(a.pop().concat(a.shift())),h.push(a.filter(c))}return y}}function c(t){return t.length>1}function u(t,e){return((t=t.x)[0]<0?t[1]-a.ou-a.Ho:a.ou-t[1])-((e=e.x)[0]<0?e[1]-a.ou-a.Ho:a.ou-e[1])}},87605:function(t,e,n){"use strict";n.d(e,{Z:function(){return c}});var r=n(39695),i=n(85272),a=n(46225),o=n(33064),s=1e9,l=-s;function c(t,e,n,c){function u(r,i){return t<=r&&r<=n&&e<=i&&i<=c}function f(r,i,a,o){var s=0,l=0;if(null==r||(s=h(r,a))!==(l=h(i,a))||p(r,i)<0^a>0)do{o.point(0===s||3===s?t:n,s>1?c:e)}while((s=(s+a+4)%4)!==l);else o.point(i[0],i[1])}function h(i,a){return(0,r.Wn)(i[0]-t)0?0:3:(0,r.Wn)(i[0]-n)0?2:1:(0,r.Wn)(i[1]-e)0?1:0:a>0?3:2}function d(t,e){return p(t.x,e.x)}function p(t,e){var n=h(t,1),r=h(e,1);return n!==r?n-r:0===n?e[1]-t[1]:1===n?t[0]-e[0]:2===n?t[1]-e[1]:e[0]-t[0]}return function(r){var h,p,g,v,m,y,b,x,w,_,k,T=r,M=(0,i.Z)(),A={point:S,lineStart:function(){A.point=E,p&&p.push(g=[]),_=!0,w=!1,b=x=NaN},lineEnd:function(){h&&(E(v,m),y&&w&&M.rejoin(),h.push(M.result())),A.point=S,w&&T.lineEnd()},polygonStart:function(){T=M,h=[],p=[],k=!0},polygonEnd:function(){var e=function(){for(var e=0,n=0,r=p.length;nc&&(f-i)*(c-a)>(h-a)*(t-i)&&++e:h<=c&&(f-i)*(c-a)<(h-a)*(t-i)&&--e;return e}(),n=k&&e,i=(h=(0,o.TS)(h)).length;(n||i)&&(r.polygonStart(),n&&(r.lineStart(),f(null,null,1,r),r.lineEnd()),i&&(0,a.Z)(h,d,e,f,r),r.polygonEnd()),T=r,h=p=g=null}};function S(t,e){u(t,e)&&T.point(t,e)}function E(r,i){var a=u(r,i);if(p&&g.push([r,i]),_)v=r,m=i,y=a,_=!1,a&&(T.lineStart(),T.point(r,i));else if(a&&w)T.point(r,i);else{var o=[b=Math.max(l,Math.min(s,b)),x=Math.max(l,Math.min(s,x))],f=[r=Math.max(l,Math.min(s,r)),i=Math.max(l,Math.min(s,i))];!function(t,e,n,r,i,a){var o,s=t[0],l=t[1],c=0,u=1,f=e[0]-s,h=e[1]-l;if(o=n-s,f||!(o>0)){if(o/=f,f<0){if(o0){if(o>u)return;o>c&&(c=o)}if(o=i-s,f||!(o<0)){if(o/=f,f<0){if(o>u)return;o>c&&(c=o)}else if(f>0){if(o0)){if(o/=h,h<0){if(o0){if(o>u)return;o>c&&(c=o)}if(o=a-l,h||!(o<0)){if(o/=h,h<0){if(o>u)return;o>c&&(c=o)}else if(h>0){if(o0&&(t[0]=s+c*f,t[1]=l+c*h),u<1&&(e[0]=s+u*f,e[1]=l+u*h),!0}}}}}(o,f,t,e,n,c)?a&&(T.lineStart(),T.point(r,i),k=!1):(w||(T.lineStart(),T.point(o[0],o[1])),T.point(f[0],f[1]),a||T.lineEnd(),k=!1)}b=r,x=i,w=a}return A}}},46225:function(t,e,n){"use strict";n.d(e,{Z:function(){return o}});var r=n(67108),i=n(39695);function a(t,e,n,r){this.x=t,this.z=e,this.o=n,this.e=r,this.v=!1,this.n=this.p=null}function o(t,e,n,o,l){var c,u,f=[],h=[];if(t.forEach((function(t){if(!((e=t.length-1)<=0)){var e,n,o=t[0],s=t[e];if((0,r.Z)(o,s)){if(!o[2]&&!s[2]){for(l.lineStart(),c=0;c=0;--c)l.point((p=d[c])[0],p[1]);else o(v.x,v.p.x,-1,l);v=v.p}d=(v=v.o).z,m=!m}while(!v.v);l.lineEnd()}}}function s(t){if(e=t.length){for(var e,n,r=0,i=t[0];++r0&&(i=S(t[a],t[a-1]))>0&&n<=i&&r<=i&&(n+r-i)*(1-Math.pow((n-r)/i,2))v.Ho})).map(l)).concat((0,N.w6)((0,v.mD)(a/d)*d,i,d).filter((function(t){return(0,v.Wn)(t%g)>v.Ho})).map(c))}return y.lines=function(){return b().map((function(t){return{type:"LineString",coordinates:t}}))},y.outline=function(){return{type:"Polygon",coordinates:[u(r).concat(f(o).slice(1),u(n).reverse().slice(1),f(s).reverse().slice(1))]}},y.extent=function(t){return arguments.length?y.extentMajor(t).extentMinor(t):y.extentMinor()},y.extentMajor=function(t){return arguments.length?(r=+t[0][0],n=+t[1][0],s=+t[0][1],o=+t[1][1],r>n&&(t=r,r=n,n=t),s>o&&(t=s,s=o,o=t),y.precision(m)):[[r,s],[n,o]]},y.extentMinor=function(n){return arguments.length?(e=+n[0][0],t=+n[1][0],a=+n[0][1],i=+n[1][1],e>t&&(n=e,e=t,t=n),a>i&&(n=a,a=i,i=n),y.precision(m)):[[e,a],[t,i]]},y.step=function(t){return arguments.length?y.stepMajor(t).stepMinor(t):y.stepMinor()},y.stepMajor=function(t){return arguments.length?(p=+t[0],g=+t[1],y):[p,g]},y.stepMinor=function(t){return arguments.length?(h=+t[0],d=+t[1],y):[h,d]},y.precision=function(h){return arguments.length?(m=+h,l=j(a,i,90),c=F(e,t,m),u=j(s,o,90),f=F(r,n,m),y):m},y.extentMajor([[-180,-90+v.Ho],[180,90-v.Ho]]).extentMinor([[-180,-80-v.Ho],[180,80+v.Ho]])}function U(){return B()()}var H,V,q,G,W=n(83074),Y=n(8593),$=(0,g.Z)(),X=(0,g.Z)(),K={point:m.Z,lineStart:m.Z,lineEnd:m.Z,polygonStart:function(){K.lineStart=Z,K.lineEnd=tt},polygonEnd:function(){K.lineStart=K.lineEnd=K.point=m.Z,$.add((0,v.Wn)(X)),X.reset()},result:function(){var t=$/2;return $.reset(),t}};function Z(){K.point=J}function J(t,e){K.point=Q,H=q=t,V=G=e}function Q(t,e){X.add(G*t-q*e),q=t,G=e}function tt(){Q(H,V)}var et,nt,rt,it,at=K,ot=n(3559),st=0,lt=0,ct=0,ut=0,ft=0,ht=0,dt=0,pt=0,gt=0,vt={point:mt,lineStart:yt,lineEnd:wt,polygonStart:function(){vt.lineStart=_t,vt.lineEnd=kt},polygonEnd:function(){vt.point=mt,vt.lineStart=yt,vt.lineEnd=wt},result:function(){var t=gt?[dt/gt,pt/gt]:ht?[ut/ht,ft/ht]:ct?[st/ct,lt/ct]:[NaN,NaN];return st=lt=ct=ut=ft=ht=dt=pt=gt=0,t}};function mt(t,e){st+=t,lt+=e,++ct}function yt(){vt.point=bt}function bt(t,e){vt.point=xt,mt(rt=t,it=e)}function xt(t,e){var n=t-rt,r=e-it,i=(0,v._b)(n*n+r*r);ut+=i*(rt+t)/2,ft+=i*(it+e)/2,ht+=i,mt(rt=t,it=e)}function wt(){vt.point=mt}function _t(){vt.point=Tt}function kt(){Mt(et,nt)}function Tt(t,e){vt.point=Mt,mt(et=rt=t,nt=it=e)}function Mt(t,e){var n=t-rt,r=e-it,i=(0,v._b)(n*n+r*r);ut+=i*(rt+t)/2,ft+=i*(it+e)/2,ht+=i,dt+=(i=it*t-rt*e)*(rt+t),pt+=i*(it+e),gt+=3*i,mt(rt=t,it=e)}var At=vt;function St(t){this._context=t}St.prototype={_radius:4.5,pointRadius:function(t){return this._radius=t,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._context.closePath(),this._point=NaN},point:function(t,e){switch(this._point){case 0:this._context.moveTo(t,e),this._point=1;break;case 1:this._context.lineTo(t,e);break;default:this._context.moveTo(t+this._radius,e),this._context.arc(t,e,this._radius,0,v.BZ)}},result:m.Z};var Et,Ct,Pt,Lt,Ot,It=(0,g.Z)(),Dt={point:m.Z,lineStart:function(){Dt.point=Rt},lineEnd:function(){Et&&zt(Ct,Pt),Dt.point=m.Z},polygonStart:function(){Et=!0},polygonEnd:function(){Et=null},result:function(){var t=+It;return It.reset(),t}};function Rt(t,e){Dt.point=zt,Ct=Lt=t,Pt=Ot=e}function zt(t,e){Lt-=t,Ot-=e,It.add((0,v._b)(Lt*Lt+Ot*Ot)),Lt=t,Ot=e}var Nt=Dt;function jt(){this._string=[]}function Ft(t){return"m0,"+t+"a"+t+","+t+" 0 1,1 0,"+-2*t+"a"+t+","+t+" 0 1,1 0,"+2*t+"z"}function Bt(t,e){var n,r,i=4.5;function a(t){return t&&("function"===typeof i&&r.pointRadius(+i.apply(this,arguments)),(0,y.Z)(t,n(r))),r.result()}return a.area=function(t){return(0,y.Z)(t,n(at)),at.result()},a.measure=function(t){return(0,y.Z)(t,n(Nt)),Nt.result()},a.bounds=function(t){return(0,y.Z)(t,n(ot.Z)),ot.Z.result()},a.centroid=function(t){return(0,y.Z)(t,n(At)),At.result()},a.projection=function(e){return arguments.length?(n=null==e?(t=null,Y.Z):(t=e).stream,a):t},a.context=function(t){return arguments.length?(r=null==t?(e=null,new jt):new St(e=t),"function"!==typeof i&&r.pointRadius(i),a):e},a.pointRadius=function(t){return arguments.length?(i="function"===typeof t?t:(r.pointRadius(+t),+t),a):i},a.projection(t).context(e)}jt.prototype={_radius:4.5,_circle:Ft(4.5),pointRadius:function(t){return(t=+t)!==this._radius&&(this._radius=t,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._string.push("Z"),this._point=NaN},point:function(t,e){switch(this._point){case 0:this._string.push("M",t,",",e),this._point=1;break;case 1:this._string.push("L",t,",",e);break;default:null==this._circle&&(this._circle=Ft(this._radius)),this._string.push("M",t,",",e,this._circle)}},result:function(){if(this._string.length){var t=this._string.join("");return this._string=[],t}return null}};var Ut=n(15002);function Ht(t){var e=0,n=v.pi/3,r=(0,Ut.r)(t),i=r(e,n);return i.parallels=function(t){return arguments.length?r(e=t[0]*v.uR,n=t[1]*v.uR):[e*v.RW,n*v.RW]},i}function Vt(t,e){var n=(0,v.O$)(t),r=(n+(0,v.O$)(e))/2;if((0,v.Wn)(r)=.12&&i<.234&&r>=-.425&&r<-.214?s:i>=.166&&i<.234&&r>=-.214&&r<-.115?l:o).invert(t)},u.stream=function(n){return t&&e===n?t:t=function(t){var e=t.length;return{point:function(n,r){for(var i=-1;++i0?e<-v.ou+v.Ho&&(e=-v.ou+v.Ho):e>v.ou-v.Ho&&(e=v.ou-v.Ho);var n=i/(0,v.sQ)(te(e),r);return[n*(0,v.O$)(r*t),i-n*(0,v.mC)(r*t)]}return a.invert=function(t,e){var n=i-e,a=(0,v.Xx)(r)*(0,v._b)(t*t+n*n),o=(0,v.fv)(t,(0,v.Wn)(n))*(0,v.Xx)(n);return n*r<0&&(o-=v.pi*(0,v.Xx)(t)*(0,v.Xx)(n)),[o/r,2*(0,v.z4)((0,v.sQ)(i/a,1/r))-v.ou]},a}function ne(){return Ht(ee).scale(109.5).parallels([30,30])}Zt.invert=function(t,e){return[t,2*(0,v.z4)((0,v.Qq)(e))-v.ou]};var re=n(97492);function ie(t,e){var n=(0,v.mC)(t),r=t===e?(0,v.O$)(t):(n-(0,v.mC)(e))/(e-t),i=n/r+t;if((0,v.Wn)(r)2?t[2]+90:90]):[(t=n())[0],t[1],t[2]-90]},n([0,0,90]).scale(159.155)}be.invert=(0,ye.O)((function(t){return 2*(0,v.z4)(t)})),we.invert=function(t,e){return[-e,2*(0,v.z4)((0,v.Qq)(t))-v.ou]}},83074:function(t,e,n){"use strict";n.d(e,{Z:function(){return i}});var r=n(39695);function i(t,e){var n=t[0]*r.uR,i=t[1]*r.uR,a=e[0]*r.uR,o=e[1]*r.uR,s=(0,r.mC)(i),l=(0,r.O$)(i),c=(0,r.mC)(o),u=(0,r.O$)(o),f=s*(0,r.mC)(n),h=s*(0,r.O$)(n),d=c*(0,r.mC)(a),p=c*(0,r.O$)(a),g=2*(0,r.ZR)((0,r._b)((0,r.Jy)(o-i)+s*c*(0,r.Jy)(a-n))),v=(0,r.O$)(g),m=g?function(t){var e=(0,r.O$)(t*=g)/v,n=(0,r.O$)(g-t)/v,i=n*f+e*d,a=n*h+e*p,o=n*l+e*u;return[(0,r.fv)(a,i)*r.RW,(0,r.fv)(o,(0,r._b)(i*i+a*a))*r.RW]}:function(){return[n*r.RW,i*r.RW]};return m.distance=g,m}},39695:function(t,e,n){"use strict";n.d(e,{BZ:function(){return l},Ho:function(){return r},Jy:function(){return M},Kh:function(){return k},O$:function(){return b},OR:function(){return _},Qq:function(){return v},RW:function(){return c},Wn:function(){return f},Xx:function(){return x},ZR:function(){return T},_b:function(){return w},aW:function(){return i},cM:function(){return m},fv:function(){return d},mC:function(){return p},mD:function(){return g},ou:function(){return o},pi:function(){return a},pu:function(){return s},sQ:function(){return y},uR:function(){return u},z4:function(){return h}});var r=1e-6,i=1e-12,a=Math.PI,o=a/2,s=a/4,l=2*a,c=180/a,u=a/180,f=Math.abs,h=Math.atan,d=Math.atan2,p=Math.cos,g=Math.ceil,v=Math.exp,m=(Math.floor,Math.log),y=Math.pow,b=Math.sin,x=Math.sign||function(t){return t>0?1:t<0?-1:0},w=Math.sqrt,_=Math.tan;function k(t){return t>1?0:t<-1?a:Math.acos(t)}function T(t){return t>1?o:t<-1?-o:Math.asin(t)}function M(t){return(t=b(t/2))*t}},73182:function(t,e,n){"use strict";function r(){}n.d(e,{Z:function(){return r}})},3559:function(t,e,n){"use strict";var r=n(73182),i=1/0,a=i,o=-i,s=o,l={point:function(t,e){to&&(o=t),es&&(s=e)},lineStart:r.Z,lineEnd:r.Z,polygonStart:r.Z,polygonEnd:r.Z,result:function(){var t=[[i,a],[o,s]];return o=s=-(a=i=1/0),t}};e.Z=l},67108:function(t,e,n){"use strict";n.d(e,{Z:function(){return i}});var r=n(39695);function i(t,e){return(0,r.Wn)(t[0]-e[0])=0?1:-1,C=E*S,P=C>a.pi,L=b*M;if(o.add((0,a.fv)(L*E*(0,a.O$)(C),x*A+L*(0,a.mC)(C))),u+=P?S+E*a.BZ:S,P^m>=n^k>=n){var O=(0,i.T5)((0,i.Og)(v),(0,i.Og)(_));(0,i.iJ)(O);var I=(0,i.T5)(c,O);(0,i.iJ)(I);var D=(P^S>=0?-1:1)*(0,a.ZR)(I[2]);(r>D||r===D&&(O[0]||O[1]))&&(f+=P^S>=0?1:-1)}}return(u<-a.Ho||u4*e&&m--){var _=o+d,k=s+g,T=c+v,M=(0,l._b)(_*_+k*k+T*T),A=(0,l.ZR)(T/=M),S=(0,l.Wn)((0,l.Wn)(T)-1)e||(0,l.Wn)((b*L+x*O)/w-.5)>.3||o*d+s*g+c*v2?t[2]%360*l.uR:0,H()):[C*l.RW,P*l.RW,L*l.RW]},B.angle=function(t){return arguments.length?(O=t%360*l.uR,H()):O*l.RW},B.reflectX=function(t){return arguments.length?(I=t?-1:1,H()):I<0},B.reflectY=function(t){return arguments.length?(D=t?-1:1,H()):D<0},B.precision=function(t){return arguments.length?(b=g(x,F=t*t),V()):(0,l._b)(F)},B.fitExtent=function(t,e){return(0,f.qg)(B,t,e)},B.fitSize=function(t,e){return(0,f.mF)(B,t,e)},B.fitWidth=function(t,e){return(0,f.V6)(B,t,e)},B.fitHeight=function(t,e){return(0,f.rf)(B,t,e)},function(){return e=t.apply(this,arguments),B.invert=e.invert&&U,H()}}},26867:function(t,e,n){"use strict";n.d(e,{K:function(){return a},Z:function(){return o}});var r=n(15002),i=n(39695);function a(t,e){var n=e*e,r=n*n;return[t*(.8707-.131979*n+r*(r*(.003971*n-.001529*r)-.013791)),e*(1.007226+n*(.015085+r*(.028874*n-.044475-.005916*r)))]}function o(){return(0,r.Z)(a).scale(175.295)}a.invert=function(t,e){var n,r=e,a=25;do{var o=r*r,s=o*o;r-=n=(r*(1.007226+o*(.015085+s*(.028874*o-.044475-.005916*s)))-e)/(1.007226+o*(.045255+s*(.259866*o-.311325-.005916*11*s)))}while((0,i.Wn)(n)>i.Ho&&--a>0);return[t/(.8707+(o=r*r)*(o*(o*o*o*(.003971-.001529*o)-.013791)-.131979)),r]}},57962:function(t,e,n){"use strict";n.d(e,{I:function(){return o},Z:function(){return s}});var r=n(39695),i=n(25382),a=n(15002);function o(t,e){return[(0,r.mC)(e)*(0,r.O$)(t),(0,r.O$)(e)]}function s(){return(0,a.Z)(o).scale(249.5).clipAngle(90+r.Ho)}o.invert=(0,i.O)(r.ZR)},49386:function(t,e,n){"use strict";n.d(e,{I:function(){return o},Z:function(){return u}});var r=n(96059),i=n(39695);function a(t,e){return[(0,i.Wn)(t)>i.pi?t+Math.round(-t/i.BZ)*i.BZ:t,e]}function o(t,e,n){return(t%=i.BZ)?e||n?(0,r.Z)(l(t),c(e,n)):l(t):e||n?c(e,n):a}function s(t){return function(e,n){return[(e+=t)>i.pi?e-i.BZ:e<-i.pi?e+i.BZ:e,n]}}function l(t){var e=s(t);return e.invert=s(-t),e}function c(t,e){var n=(0,i.mC)(t),r=(0,i.O$)(t),a=(0,i.mC)(e),o=(0,i.O$)(e);function s(t,e){var s=(0,i.mC)(e),l=(0,i.mC)(t)*s,c=(0,i.O$)(t)*s,u=(0,i.O$)(e),f=u*n+l*r;return[(0,i.fv)(c*a-f*o,l*n-u*r),(0,i.ZR)(f*a+c*o)]}return s.invert=function(t,e){var s=(0,i.mC)(e),l=(0,i.mC)(t)*s,c=(0,i.O$)(t)*s,u=(0,i.O$)(e),f=u*a-c*o;return[(0,i.fv)(c*a+u*o,l*n+f*r),(0,i.ZR)(f*n-l*r)]},s}function u(t){function e(e){return(e=t(e[0]*i.uR,e[1]*i.uR))[0]*=i.RW,e[1]*=i.RW,e}return t=o(t[0]*i.uR,t[1]*i.uR,t.length>2?t[2]*i.uR:0),e.invert=function(e){return(e=t.invert(e[0]*i.uR,e[1]*i.uR))[0]*=i.RW,e[1]*=i.RW,e},e}a.invert=a},72736:function(t,e,n){"use strict";function r(t,e){t&&a.hasOwnProperty(t.type)&&a[t.type](t,e)}n.d(e,{Z:function(){return l}});var i={Feature:function(t,e){r(t.geometry,e)},FeatureCollection:function(t,e){for(var n=t.features,i=-1,a=n.length;++i=0;)e+=n[r].value;else e=1;t.value=e}function l(t,e){var n,r,i,a,o,s=new h(t),l=+t.value&&(s.value=t.value),u=[s];for(null==e&&(e=c);n=u.pop();)if(l&&(n.value=+n.data.value),(i=e(n.data))&&(o=i.length))for(n.children=new Array(o),a=o-1;a>=0;--a)u.push(r=n.children[a]=new h(i[a])),r.parent=n,r.depth=n.depth+1;return s.eachBefore(f)}function c(t){return t.children}function u(t){t.data=t.data.data}function f(t){var e=0;do{t.height=e}while((t=t.parent)&&t.height<++e)}function h(t){this.data=t,this.depth=this.height=0,this.parent=null}n.r(e),n.d(e,{cluster:function(){return o},hierarchy:function(){return l},pack:function(){return O},packEnclose:function(){return p},packSiblings:function(){return S},partition:function(){return j},stratify:function(){return q},tree:function(){return Z},treemap:function(){return nt},treemapBinary:function(){return rt},treemapDice:function(){return N},treemapResquarify:function(){return at},treemapSlice:function(){return J},treemapSliceDice:function(){return it},treemapSquarify:function(){return et}}),h.prototype=l.prototype={constructor:h,count:function(){return this.eachAfter(s)},each:function(t){var e,n,r,i,a=this,o=[a];do{for(e=o.reverse(),o=[];a=e.pop();)if(t(a),n=a.children)for(r=0,i=n.length;r=0;--n)i.push(e[n]);return this},sum:function(t){return this.eachAfter((function(e){for(var n=+t(e.data)||0,r=e.children,i=r&&r.length;--i>=0;)n+=r[i].value;e.value=n}))},sort:function(t){return this.eachBefore((function(e){e.children&&e.children.sort(t)}))},path:function(t){for(var e=this,n=function(t,e){if(t===e)return t;var n=t.ancestors(),r=e.ancestors(),i=null;for(t=n.pop(),e=r.pop();t===e;)i=t,t=n.pop(),e=r.pop();return i}(e,t),r=[e];e!==n;)e=e.parent,r.push(e);for(var i=r.length;t!==n;)r.splice(i,0,t),t=t.parent;return r},ancestors:function(){for(var t=this,e=[t];t=t.parent;)e.push(t);return e},descendants:function(){var t=[];return this.each((function(e){t.push(e)})),t},leaves:function(){var t=[];return this.eachBefore((function(e){e.children||t.push(e)})),t},links:function(){var t=this,e=[];return t.each((function(n){n!==t&&e.push({source:n.parent,target:n})})),e},copy:function(){return l(this).eachBefore(u)}};var d=Array.prototype.slice;function p(t){for(var e,n,r=0,i=(t=function(t){for(var e,n,r=t.length;r;)n=Math.random()*r--|0,e=t[r],t[r]=t[n],t[n]=e;return t}(d.call(t))).length,a=[];r0&&n*n>r*r+i*i}function y(t,e){for(var n=0;n(o*=o)?(r=(c+o-i)/(2*c),a=Math.sqrt(Math.max(0,o/c-r*r)),n.x=t.x-r*s-a*l,n.y=t.y-r*l+a*s):(r=(c+i-o)/(2*c),a=Math.sqrt(Math.max(0,i/c-r*r)),n.x=e.x+r*s-a*l,n.y=e.y+r*l+a*s)):(n.x=e.x+n.r,n.y=e.y)}function k(t,e){var n=t.r+e.r-1e-6,r=e.x-t.x,i=e.y-t.y;return n>0&&n*n>r*r+i*i}function T(t){var e=t._,n=t.next._,r=e.r+n.r,i=(e.x*n.r+n.x*e.r)/r,a=(e.y*n.r+n.y*e.r)/r;return i*i+a*a}function M(t){this._=t,this.next=null,this.previous=null}function A(t){if(!(i=t.length))return 0;var e,n,r,i,a,o,s,l,c,u,f;if((e=t[0]).x=0,e.y=0,!(i>1))return e.r;if(n=t[1],e.x=-n.r,n.x=e.r,n.y=0,!(i>2))return e.r+n.r;_(n,e,r=t[2]),e=new M(e),n=new M(n),r=new M(r),e.next=r.previous=n,n.next=e.previous=r,r.next=n.previous=e;t:for(s=3;s0)throw new Error("cycle");return a}return n.id=function(e){return arguments.length?(t=E(e),n):t},n.parentId=function(t){return arguments.length?(e=E(t),n):e},n}function G(t,e){return t.parent===e.parent?1:2}function W(t){var e=t.children;return e?e[0]:t.t}function Y(t){var e=t.children;return e?e[e.length-1]:t.t}function $(t,e,n){var r=n/(e.i-t.i);e.c-=r,e.s+=n,t.c+=r,e.z+=n,e.m+=n}function X(t,e,n){return t.a.parent===e.parent?t.a:n}function K(t,e){this._=t,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=e}function Z(){var t=G,e=1,n=1,r=null;function i(i){var l=function(t){for(var e,n,r,i,a,o=new K(t,0),s=[o];e=s.pop();)if(r=e._.children)for(e.children=new Array(a=r.length),i=a-1;i>=0;--i)s.push(n=e.children[i]=new K(r[i],i)),n.parent=e;return(o.parent=new K(null,0)).children=[o],o}(i);if(l.eachAfter(a),l.parent.m=-l.z,l.eachBefore(o),r)i.eachBefore(s);else{var c=i,u=i,f=i;i.eachBefore((function(t){t.xu.x&&(u=t),t.depth>f.depth&&(f=t)}));var h=c===u?1:t(c,u)/2,d=h-c.x,p=e/(u.x+h+d),g=n/(f.depth||1);i.eachBefore((function(t){t.x=(t.x+d)*p,t.y=t.depth*g}))}return i}function a(e){var n=e.children,r=e.parent.children,i=e.i?r[e.i-1]:null;if(n){!function(t){for(var e,n=0,r=0,i=t.children,a=i.length;--a>=0;)(e=i[a]).z+=n,e.m+=n,n+=e.s+(r+=e.c)}(e);var a=(n[0].z+n[n.length-1].z)/2;i?(e.z=i.z+t(e._,i._),e.m=e.z-a):e.z=a}else i&&(e.z=i.z+t(e._,i._));e.parent.A=function(e,n,r){if(n){for(var i,a=e,o=e,s=n,l=a.parent.children[0],c=a.m,u=o.m,f=s.m,h=l.m;s=Y(s),a=W(a),s&&a;)l=W(l),(o=Y(o)).a=e,(i=s.z+f-a.z-c+t(s._,a._))>0&&($(X(s,e,r),e,i),c+=i,u+=i),f+=s.m,c+=a.m,h+=l.m,u+=o.m;s&&!Y(o)&&(o.t=s,o.m+=f-u),a&&!W(l)&&(l.t=a,l.m+=c-h,r=e)}return r}(e,i,e.parent.A||r[0])}function o(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function s(t){t.x*=e,t.y=t.depth*n}return i.separation=function(e){return arguments.length?(t=e,i):t},i.size=function(t){return arguments.length?(r=!1,e=+t[0],n=+t[1],i):r?null:[e,n]},i.nodeSize=function(t){return arguments.length?(r=!0,e=+t[0],n=+t[1],i):r?[e,n]:null},i}function J(t,e,n,r,i){for(var a,o=t.children,s=-1,l=o.length,c=t.value&&(i-n)/t.value;++sh&&(h=s),v=u*u*g,(d=Math.max(h/v,v/f))>p){u-=s;break}p=d}m.push(o={value:u,dice:l1?e:1)},n}(Q);function nt(){var t=et,e=!1,n=1,r=1,i=[0],a=C,o=C,s=C,l=C,c=C;function u(t){return t.x0=t.y0=0,t.x1=n,t.y1=r,t.eachBefore(f),i=[0],e&&t.eachBefore(z),t}function f(e){var n=i[e.depth],r=e.x0+n,u=e.y0+n,f=e.x1-n,h=e.y1-n;f=n-1){var u=s[e];return u.x0=i,u.y0=a,u.x1=o,void(u.y1=l)}for(var f=c[e],h=r/2+f,d=e+1,p=n-1;d>>1;c[g]l-a){var y=(i*m+o*v)/r;t(e,d,v,i,a,y,l),t(d,n,m,y,a,o,l)}else{var b=(a*m+l*v)/r;t(e,d,v,i,a,o,b),t(d,n,m,i,b,o,l)}}(0,l,t.value,e,n,r,i)}function it(t,e,n,r,i){(1&t.depth?J:N)(t,e,n,r,i)}var at=function t(e){function n(t,n,r,i,a){if((o=t._squarify)&&o.ratio===e)for(var o,s,l,c,u,f=-1,h=o.length,d=t.value;++f1?e:1)},n}(Q)},45879:function(t,e,n){"use strict";n.d(e,{h5:function(){return y}});var r=Math.PI,i=2*r,a=1e-6,o=i-a;function s(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function l(){return new s}s.prototype=l.prototype={constructor:s,moveTo:function(t,e){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,e){this._+="L"+(this._x1=+t)+","+(this._y1=+e)},quadraticCurveTo:function(t,e,n,r){this._+="Q"+ +t+","+ +e+","+(this._x1=+n)+","+(this._y1=+r)},bezierCurveTo:function(t,e,n,r,i,a){this._+="C"+ +t+","+ +e+","+ +n+","+ +r+","+(this._x1=+i)+","+(this._y1=+a)},arcTo:function(t,e,n,i,o){t=+t,e=+e,n=+n,i=+i,o=+o;var s=this._x1,l=this._y1,c=n-t,u=i-e,f=s-t,h=l-e,d=f*f+h*h;if(o<0)throw new Error("negative radius: "+o);if(null===this._x1)this._+="M"+(this._x1=t)+","+(this._y1=e);else if(d>a)if(Math.abs(h*c-u*f)>a&&o){var p=n-s,g=i-l,v=c*c+u*u,m=p*p+g*g,y=Math.sqrt(v),b=Math.sqrt(d),x=o*Math.tan((r-Math.acos((v+d-m)/(2*y*b)))/2),w=x/b,_=x/y;Math.abs(w-1)>a&&(this._+="L"+(t+w*f)+","+(e+w*h)),this._+="A"+o+","+o+",0,0,"+ +(h*p>f*g)+","+(this._x1=t+_*c)+","+(this._y1=e+_*u)}else this._+="L"+(this._x1=t)+","+(this._y1=e)},arc:function(t,e,n,s,l,c){t=+t,e=+e,c=!!c;var u=(n=+n)*Math.cos(s),f=n*Math.sin(s),h=t+u,d=e+f,p=1^c,g=c?s-l:l-s;if(n<0)throw new Error("negative radius: "+n);null===this._x1?this._+="M"+h+","+d:(Math.abs(this._x1-h)>a||Math.abs(this._y1-d)>a)&&(this._+="L"+h+","+d),n&&(g<0&&(g=g%i+i),g>o?this._+="A"+n+","+n+",0,1,"+p+","+(t-u)+","+(e-f)+"A"+n+","+n+",0,1,"+p+","+(this._x1=h)+","+(this._y1=d):g>a&&(this._+="A"+n+","+n+",0,"+ +(g>=r)+","+p+","+(this._x1=t+n*Math.cos(l))+","+(this._y1=e+n*Math.sin(l))))},rect:function(t,e,n,r){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)+"h"+ +n+"v"+ +r+"h"+-n+"Z"},toString:function(){return this._}};var c=l,u=Array.prototype.slice;function f(t){return function(){return t}}function h(t){return t[0]}function d(t){return t[1]}function p(t){return t.source}function g(t){return t.target}function v(t){var e=p,n=g,r=h,i=d,a=null;function o(){var o,s=u.call(arguments),l=e.apply(this,s),f=n.apply(this,s);if(a||(a=o=c()),t(a,+r.apply(this,(s[0]=l,s)),+i.apply(this,s),+r.apply(this,(s[0]=f,s)),+i.apply(this,s)),o)return a=null,o+""||null}return o.source=function(t){return arguments.length?(e=t,o):e},o.target=function(t){return arguments.length?(n=t,o):n},o.x=function(t){return arguments.length?(r="function"===typeof t?t:f(+t),o):r},o.y=function(t){return arguments.length?(i="function"===typeof t?t:f(+t),o):i},o.context=function(t){return arguments.length?(a=null==t?null:t,o):a},o}function m(t,e,n,r,i){t.moveTo(e,n),t.bezierCurveTo(e=(e+r)/2,n,e,i,r,i)}function y(){return v(m)}},84096:function(t,e,n){"use strict";n.d(e,{i$:function(){return p},Dq:function(){return h},g0:function(){return g}});var r=n(58176),i=n(48480),a=n(59879),o=n(82301),s=n(34823),l=n(79791);function c(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function u(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function f(t,e,n){return{y:t,m:e,d:n,H:0,M:0,S:0,L:0}}function h(t){var e=t.dateTime,n=t.date,s=t.time,l=t.periods,h=t.days,d=t.shortDays,p=t.months,g=t.shortMonths,m=_(l),y=k(l),b=_(h),x=k(h),w=_(d),St=k(d),Et=_(p),Ct=k(p),Pt=_(g),Lt=k(g),Ot={a:function(t){return d[t.getDay()]},A:function(t){return h[t.getDay()]},b:function(t){return g[t.getMonth()]},B:function(t){return p[t.getMonth()]},c:null,d:q,e:q,f:X,H:G,I:W,j:Y,L:$,m:K,M:Z,p:function(t){return l[+(t.getHours()>=12)]},q:function(t){return 1+~~(t.getMonth()/3)},Q:Mt,s:At,S:J,u:Q,U:tt,V:et,w:nt,W:rt,x:null,X:null,y:it,Y:at,Z:ot,"%":Tt},It={a:function(t){return d[t.getUTCDay()]},A:function(t){return h[t.getUTCDay()]},b:function(t){return g[t.getUTCMonth()]},B:function(t){return p[t.getUTCMonth()]},c:null,d:st,e:st,f:ht,H:lt,I:ct,j:ut,L:ft,m:dt,M:pt,p:function(t){return l[+(t.getUTCHours()>=12)]},q:function(t){return 1+~~(t.getUTCMonth()/3)},Q:Mt,s:At,S:gt,u:vt,U:mt,V:yt,w:bt,W:xt,x:null,X:null,y:wt,Y:_t,Z:kt,"%":Tt},Dt={a:function(t,e,n){var r=w.exec(e.slice(n));return r?(t.w=St[r[0].toLowerCase()],n+r[0].length):-1},A:function(t,e,n){var r=b.exec(e.slice(n));return r?(t.w=x[r[0].toLowerCase()],n+r[0].length):-1},b:function(t,e,n){var r=Pt.exec(e.slice(n));return r?(t.m=Lt[r[0].toLowerCase()],n+r[0].length):-1},B:function(t,e,n){var r=Et.exec(e.slice(n));return r?(t.m=Ct[r[0].toLowerCase()],n+r[0].length):-1},c:function(t,n,r){return Nt(t,e,n,r)},d:D,e:D,f:B,H:z,I:z,j:R,L:F,m:I,M:N,p:function(t,e,n){var r=m.exec(e.slice(n));return r?(t.p=y[r[0].toLowerCase()],n+r[0].length):-1},q:O,Q:H,s:V,S:j,u:M,U:A,V:S,w:T,W:E,x:function(t,e,r){return Nt(t,n,e,r)},X:function(t,e,n){return Nt(t,s,e,n)},y:P,Y:C,Z:L,"%":U};function Rt(t,e){return function(n){var r,i,a,o=[],s=-1,l=0,c=t.length;for(n instanceof Date||(n=new Date(+n));++s53)return null;"w"in h||(h.w=1),"Z"in h?(l=(s=u(f(h.y,0,1))).getUTCDay(),s=l>4||0===l?r.l6.ceil(s):(0,r.l6)(s),s=i.Z.offset(s,7*(h.V-1)),h.y=s.getUTCFullYear(),h.m=s.getUTCMonth(),h.d=s.getUTCDate()+(h.w+6)%7):(l=(s=c(f(h.y,0,1))).getDay(),s=l>4||0===l?a.wA.ceil(s):(0,a.wA)(s),s=o.Z.offset(s,7*(h.V-1)),h.y=s.getFullYear(),h.m=s.getMonth(),h.d=s.getDate()+(h.w+6)%7)}else("W"in h||"U"in h)&&("w"in h||(h.w="u"in h?h.u%7:"W"in h?1:0),l="Z"in h?u(f(h.y,0,1)).getUTCDay():c(f(h.y,0,1)).getDay(),h.m=0,h.d="W"in h?(h.w+6)%7+7*h.W-(l+5)%7:h.w+7*h.U-(l+6)%7);return"Z"in h?(h.H+=h.Z/100|0,h.M+=h.Z%100,u(h)):c(h)}}function Nt(t,e,n,r){for(var i,a,o=0,s=e.length,l=n.length;o=l)return-1;if(37===(i=e.charCodeAt(o++))){if(i=e.charAt(o++),!(a=Dt[i in v?e.charAt(o++):i])||(r=a(t,n,r))<0)return-1}else if(i!=n.charCodeAt(r++))return-1}return r}return Ot.x=Rt(n,Ot),Ot.X=Rt(s,Ot),Ot.c=Rt(e,Ot),It.x=Rt(n,It),It.X=Rt(s,It),It.c=Rt(e,It),{format:function(t){var e=Rt(t+="",Ot);return e.toString=function(){return t},e},parse:function(t){var e=zt(t+="",!1);return e.toString=function(){return t},e},utcFormat:function(t){var e=Rt(t+="",It);return e.toString=function(){return t},e},utcParse:function(t){var e=zt(t+="",!0);return e.toString=function(){return t},e}}}var d,p,g,v={"-":"",_:" ",0:"0"},m=/^\s*\d+/,y=/^%/,b=/[\\^$*+?|[\]().{}]/g;function x(t,e,n){var r=t<0?"-":"",i=(r?-t:t)+"",a=i.length;return r+(a68?1900:2e3),n+r[0].length):-1}function L(t,e,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function O(t,e,n){var r=m.exec(e.slice(n,n+1));return r?(t.q=3*r[0]-3,n+r[0].length):-1}function I(t,e,n){var r=m.exec(e.slice(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function D(t,e,n){var r=m.exec(e.slice(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function R(t,e,n){var r=m.exec(e.slice(n,n+3));return r?(t.m=0,t.d=+r[0],n+r[0].length):-1}function z(t,e,n){var r=m.exec(e.slice(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function N(t,e,n){var r=m.exec(e.slice(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function j(t,e,n){var r=m.exec(e.slice(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function F(t,e,n){var r=m.exec(e.slice(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function B(t,e,n){var r=m.exec(e.slice(n,n+6));return r?(t.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function U(t,e,n){var r=y.exec(e.slice(n,n+1));return r?n+r[0].length:-1}function H(t,e,n){var r=m.exec(e.slice(n));return r?(t.Q=+r[0],n+r[0].length):-1}function V(t,e,n){var r=m.exec(e.slice(n));return r?(t.s=+r[0],n+r[0].length):-1}function q(t,e){return x(t.getDate(),e,2)}function G(t,e){return x(t.getHours(),e,2)}function W(t,e){return x(t.getHours()%12||12,e,2)}function Y(t,e){return x(1+o.Z.count((0,s.Z)(t),t),e,3)}function $(t,e){return x(t.getMilliseconds(),e,3)}function X(t,e){return $(t,e)+"000"}function K(t,e){return x(t.getMonth()+1,e,2)}function Z(t,e){return x(t.getMinutes(),e,2)}function J(t,e){return x(t.getSeconds(),e,2)}function Q(t){var e=t.getDay();return 0===e?7:e}function tt(t,e){return x(a.OM.count((0,s.Z)(t)-1,t),e,2)}function et(t,e){var n=t.getDay();return t=n>=4||0===n?(0,a.bL)(t):a.bL.ceil(t),x(a.bL.count((0,s.Z)(t),t)+(4===(0,s.Z)(t).getDay()),e,2)}function nt(t){return t.getDay()}function rt(t,e){return x(a.wA.count((0,s.Z)(t)-1,t),e,2)}function it(t,e){return x(t.getFullYear()%100,e,2)}function at(t,e){return x(t.getFullYear()%1e4,e,4)}function ot(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+x(e/60|0,"0",2)+x(e%60,"0",2)}function st(t,e){return x(t.getUTCDate(),e,2)}function lt(t,e){return x(t.getUTCHours(),e,2)}function ct(t,e){return x(t.getUTCHours()%12||12,e,2)}function ut(t,e){return x(1+i.Z.count((0,l.Z)(t),t),e,3)}function ft(t,e){return x(t.getUTCMilliseconds(),e,3)}function ht(t,e){return ft(t,e)+"000"}function dt(t,e){return x(t.getUTCMonth()+1,e,2)}function pt(t,e){return x(t.getUTCMinutes(),e,2)}function gt(t,e){return x(t.getUTCSeconds(),e,2)}function vt(t){var e=t.getUTCDay();return 0===e?7:e}function mt(t,e){return x(r.Ox.count((0,l.Z)(t)-1,t),e,2)}function yt(t,e){var n=t.getUTCDay();return t=n>=4||0===n?(0,r.hB)(t):r.hB.ceil(t),x(r.hB.count((0,l.Z)(t),t)+(4===(0,l.Z)(t).getUTCDay()),e,2)}function bt(t){return t.getUTCDay()}function xt(t,e){return x(r.l6.count((0,l.Z)(t)-1,t),e,2)}function wt(t,e){return x(t.getUTCFullYear()%100,e,2)}function _t(t,e){return x(t.getUTCFullYear()%1e4,e,4)}function kt(){return"+0000"}function Tt(){return"%"}function Mt(t){return+t}function At(t){return Math.floor(+t/1e3)}d=h({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"]}),p=d.format,d.parse,g=d.utcFormat,d.utcParse},82301:function(t,e,n){"use strict";n.d(e,{a:function(){return o}});var r=n(30052),i=n(54263),a=(0,r.Z)((function(t){t.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+e)}),(function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*i.yB)/i.UD}),(function(t){return t.getDate()-1}));e.Z=a;var o=a.range},54263:function(t,e,n){"use strict";n.d(e,{UD:function(){return o},Y2:function(){return a},Ym:function(){return r},iM:function(){return s},yB:function(){return i}});var r=1e3,i=6e4,a=36e5,o=864e5,s=6048e5},81041:function(t,e,n){"use strict";n.r(e),n.d(e,{timeDay:function(){return m.Z},timeDays:function(){return m.a},timeFriday:function(){return y.mC},timeFridays:function(){return y.b$},timeHour:function(){return g},timeHours:function(){return v},timeInterval:function(){return r.Z},timeMillisecond:function(){return a},timeMilliseconds:function(){return o},timeMinute:function(){return h},timeMinutes:function(){return d},timeMonday:function(){return y.wA},timeMondays:function(){return y.bJ},timeMonth:function(){return x},timeMonths:function(){return w},timeSaturday:function(){return y.EY},timeSaturdays:function(){return y.Ff},timeSecond:function(){return c},timeSeconds:function(){return u},timeSunday:function(){return y.OM},timeSundays:function(){return y.vm},timeThursday:function(){return y.bL},timeThursdays:function(){return y.$t},timeTuesday:function(){return y.sy},timeTuesdays:function(){return y.aU},timeWednesday:function(){return y.zg},timeWednesdays:function(){return y.Ld},timeWeek:function(){return y.OM},timeWeeks:function(){return y.vm},timeYear:function(){return _.Z},timeYears:function(){return _.g},utcDay:function(){return C.Z},utcDays:function(){return C.y},utcFriday:function(){return P.QQ},utcFridays:function(){return P.fz},utcHour:function(){return S},utcHours:function(){return E},utcMillisecond:function(){return a},utcMilliseconds:function(){return o},utcMinute:function(){return T},utcMinutes:function(){return M},utcMonday:function(){return P.l6},utcMondays:function(){return P.$3},utcMonth:function(){return O},utcMonths:function(){return I},utcSaturday:function(){return P.g4},utcSaturdays:function(){return P.Q_},utcSecond:function(){return c},utcSeconds:function(){return u},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 D.Z},utcYears:function(){return D.D}});var r=n(30052),i=(0,r.Z)((function(){}),(function(t,e){t.setTime(+t+e)}),(function(t,e){return e-t}));i.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?(0,r.Z)((function(e){e.setTime(Math.floor(e/t)*t)}),(function(e,n){e.setTime(+e+n*t)}),(function(e,n){return(n-e)/t})):i:null};var a=i,o=i.range,s=n(54263),l=(0,r.Z)((function(t){t.setTime(t-t.getMilliseconds())}),(function(t,e){t.setTime(+t+e*s.Ym)}),(function(t,e){return(e-t)/s.Ym}),(function(t){return t.getUTCSeconds()})),c=l,u=l.range,f=(0,r.Z)((function(t){t.setTime(t-t.getMilliseconds()-t.getSeconds()*s.Ym)}),(function(t,e){t.setTime(+t+e*s.yB)}),(function(t,e){return(e-t)/s.yB}),(function(t){return t.getMinutes()})),h=f,d=f.range,p=(0,r.Z)((function(t){t.setTime(t-t.getMilliseconds()-t.getSeconds()*s.Ym-t.getMinutes()*s.yB)}),(function(t,e){t.setTime(+t+e*s.Y2)}),(function(t,e){return(e-t)/s.Y2}),(function(t){return t.getHours()})),g=p,v=p.range,m=n(82301),y=n(59879),b=(0,r.Z)((function(t){t.setDate(1),t.setHours(0,0,0,0)}),(function(t,e){t.setMonth(t.getMonth()+e)}),(function(t,e){return e.getMonth()-t.getMonth()+12*(e.getFullYear()-t.getFullYear())}),(function(t){return t.getMonth()})),x=b,w=b.range,_=n(34823),k=(0,r.Z)((function(t){t.setUTCSeconds(0,0)}),(function(t,e){t.setTime(+t+e*s.yB)}),(function(t,e){return(e-t)/s.yB}),(function(t){return t.getUTCMinutes()})),T=k,M=k.range,A=(0,r.Z)((function(t){t.setUTCMinutes(0,0,0)}),(function(t,e){t.setTime(+t+e*s.Y2)}),(function(t,e){return(e-t)/s.Y2}),(function(t){return t.getUTCHours()})),S=A,E=A.range,C=n(48480),P=n(58176),L=(0,r.Z)((function(t){t.setUTCDate(1),t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCMonth(t.getUTCMonth()+e)}),(function(t,e){return e.getUTCMonth()-t.getUTCMonth()+12*(e.getUTCFullYear()-t.getUTCFullYear())}),(function(t){return t.getUTCMonth()})),O=L,I=L.range,D=n(79791)},30052:function(t,e,n){"use strict";n.d(e,{Z:function(){return a}});var r=new Date,i=new Date;function a(t,e,n,o){function s(e){return t(e=0===arguments.length?new Date:new Date(+e)),e}return s.floor=function(e){return t(e=new Date(+e)),e},s.ceil=function(n){return t(n=new Date(n-1)),e(n,1),t(n),n},s.round=function(t){var e=s(t),n=s.ceil(t);return t-e0))return o;do{o.push(a=new Date(+n)),e(n,i),t(n)}while(a=e)for(;t(e),!n(e);)e.setTime(e-1)}),(function(t,r){if(t>=t)if(r<0)for(;++r<=0;)for(;e(t,-1),!n(t););else for(;--r>=0;)for(;e(t,1),!n(t););}))},n&&(s.count=function(e,a){return r.setTime(+e),i.setTime(+a),t(r),t(i),Math.floor(n(r,i))},s.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?s.filter(o?function(e){return o(e)%t===0}:function(e){return s.count(0,e)%t===0}):s:null}),s}},48480:function(t,e,n){"use strict";n.d(e,{y:function(){return o}});var r=n(30052),i=n(54263),a=(0,r.Z)((function(t){t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+e)}),(function(t,e){return(e-t)/i.UD}),(function(t){return t.getUTCDate()-1}));e.Z=a;var o=a.range},58176:function(t,e,n){"use strict";n.d(e,{$3:function(){return p},DK:function(){return g},J1:function(){return l},Ox:function(){return o},QQ:function(){return f},Q_:function(){return b},SU:function(){return d},b3:function(){return c},fz:function(){return y},g4:function(){return h},hB:function(){return u},l6:function(){return s},uy:function(){return v},xj:function(){return m}});var r=n(30052),i=n(54263);function a(t){return(0,r.Z)((function(e){e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+7*e)}),(function(t,e){return(e-t)/i.iM}))}var o=a(0),s=a(1),l=a(2),c=a(3),u=a(4),f=a(5),h=a(6),d=o.range,p=s.range,g=l.range,v=c.range,m=u.range,y=f.range,b=h.range},79791:function(t,e,n){"use strict";n.d(e,{D:function(){return a}});var r=n(30052),i=(0,r.Z)((function(t){t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCFullYear(t.getUTCFullYear()+e)}),(function(t,e){return e.getUTCFullYear()-t.getUTCFullYear()}),(function(t){return t.getUTCFullYear()}));i.every=function(t){return isFinite(t=Math.floor(t))&&t>0?(0,r.Z)((function(e){e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),(function(e,n){e.setUTCFullYear(e.getUTCFullYear()+n*t)})):null},e.Z=i;var a=i.range},59879:function(t,e,n){"use strict";n.d(e,{$t:function(){return m},EY:function(){return h},Ff:function(){return b},Ld:function(){return v},OM:function(){return o},aU:function(){return g},b$:function(){return y},bJ:function(){return p},bL:function(){return u},mC:function(){return f},sy:function(){return l},vm:function(){return d},wA:function(){return s},zg:function(){return c}});var r=n(30052),i=n(54263);function a(t){return(0,r.Z)((function(e){e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+7*e)}),(function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*i.yB)/i.iM}))}var o=a(0),s=a(1),l=a(2),c=a(3),u=a(4),f=a(5),h=a(6),d=o.range,p=s.range,g=l.range,v=c.range,m=u.range,y=f.range,b=h.range},34823:function(t,e,n){"use strict";n.d(e,{g:function(){return a}});var r=n(30052),i=(0,r.Z)((function(t){t.setMonth(0,1),t.setHours(0,0,0,0)}),(function(t,e){t.setFullYear(t.getFullYear()+e)}),(function(t,e){return e.getFullYear()-t.getFullYear()}),(function(t){return t.getFullYear()}));i.every=function(t){return isFinite(t=Math.floor(t))&&t>0?(0,r.Z)((function(e){e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)}),(function(e,n){e.setFullYear(e.getFullYear()+n*t)})):null},e.Z=i;var a=i.range},17045:function(t,e,n){"use strict";var r=n(8709),i="function"===typeof Symbol&&"symbol"===typeof Symbol("foo"),a=Object.prototype.toString,o=Array.prototype.concat,s=Object.defineProperty,l=n(55622)(),c=s&&l,u=function(t,e,n,r){if(e in t)if(!0===r){if(t[e]===n)return}else if("function"!==typeof(i=r)||"[object Function]"!==a.call(i)||!r())return;var i;c?s(t,e,{configurable:!0,enumerable:!1,value:n,writable:!0}):t[e]=n},f=function(t,e){var n=arguments.length>2?arguments[2]:{},a=r(e);i&&(a=o.call(a,Object.getOwnPropertySymbols(e)));for(var s=0;ss*l){var d=(h-f)/s;o[u]=1e3*d}}return o}function i(t){for(var e=[],n=t[0];n<=t[1];n++)for(var r=String.fromCharCode(n),i=t[0];i0)return function(t,e){var n,r;for(n=new Array(t),r=0;r80*a){o=l=t[0],s=f=t[1];for(var x=a;xl&&(l=h),p>f&&(f=p);g=0!==(g=Math.max(l-o,f-s))?1/g:0}return i(y,b,a,o,s,g),b}function n(t,e,n,r,i){var a,o;if(i===A(t,e,n,r)>0)for(a=e;a=e;a-=r)o=k(a,t[a],t[a+1],o);return o&&m(o,o.next)&&(T(o),o=o.next),o}function r(t,e){if(!t)return t;e||(e=t);var n,r=t;do{if(n=!1,r.steiner||!m(r,r.next)&&0!==v(r.prev,r,r.next))r=r.next;else{if(T(r),(r=e=r.prev)===r.next)break;n=!0}}while(n||r!==e);return e}function i(t,e,n,c,u,f,d){if(t){!d&&f&&function(t,e,n,r){var i=t;do{null===i.z&&(i.z=h(i.x,i.y,e,n,r)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==t);i.prevZ.nextZ=null,i.prevZ=null,function(t){var e,n,r,i,a,o,s,l,c=1;do{for(n=t,t=null,a=null,o=0;n;){for(o++,r=n,s=0,e=0;e0||l>0&&r;)0!==s&&(0===l||!r||n.z<=r.z)?(i=n,n=n.nextZ,s--):(i=r,r=r.nextZ,l--),a?a.nextZ=i:t=i,i.prevZ=a,a=i;n=r}a.nextZ=null,c*=2}while(o>1)}(i)}(t,c,u,f);for(var p,g,v=t;t.prev!==t.next;)if(p=t.prev,g=t.next,f?o(t,c,u,f):a(t))e.push(p.i/n),e.push(t.i/n),e.push(g.i/n),T(t),t=g.next,v=g.next;else if((t=g)===v){d?1===d?i(t=s(r(t),e,n),e,n,c,u,f,2):2===d&&l(t,e,n,c,u,f):i(r(t),e,n,c,u,f,1);break}}}function a(t){var e=t.prev,n=t,r=t.next;if(v(e,n,r)>=0)return!1;for(var i=t.next.next;i!==t.prev;){if(p(e.x,e.y,n.x,n.y,r.x,r.y,i.x,i.y)&&v(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function o(t,e,n,r){var i=t.prev,a=t,o=t.next;if(v(i,a,o)>=0)return!1;for(var s=i.xa.x?i.x>o.x?i.x:o.x:a.x>o.x?a.x:o.x,u=i.y>a.y?i.y>o.y?i.y:o.y:a.y>o.y?a.y:o.y,f=h(s,l,e,n,r),d=h(c,u,e,n,r),g=t.prevZ,m=t.nextZ;g&&g.z>=f&&m&&m.z<=d;){if(g!==t.prev&&g!==t.next&&p(i.x,i.y,a.x,a.y,o.x,o.y,g.x,g.y)&&v(g.prev,g,g.next)>=0)return!1;if(g=g.prevZ,m!==t.prev&&m!==t.next&&p(i.x,i.y,a.x,a.y,o.x,o.y,m.x,m.y)&&v(m.prev,m,m.next)>=0)return!1;m=m.nextZ}for(;g&&g.z>=f;){if(g!==t.prev&&g!==t.next&&p(i.x,i.y,a.x,a.y,o.x,o.y,g.x,g.y)&&v(g.prev,g,g.next)>=0)return!1;g=g.prevZ}for(;m&&m.z<=d;){if(m!==t.prev&&m!==t.next&&p(i.x,i.y,a.x,a.y,o.x,o.y,m.x,m.y)&&v(m.prev,m,m.next)>=0)return!1;m=m.nextZ}return!0}function s(t,e,n){var i=t;do{var a=i.prev,o=i.next.next;!m(a,o)&&y(a,i,i.next,o)&&w(a,o)&&w(o,a)&&(e.push(a.i/n),e.push(i.i/n),e.push(o.i/n),T(i),T(i.next),i=t=o),i=i.next}while(i!==t);return r(i)}function l(t,e,n,a,o,s){var l=t;do{for(var c=l.next.next;c!==l.prev;){if(l.i!==c.i&&g(l,c)){var u=_(l,c);return l=r(l,l.next),u=r(u,u.next),i(l,e,n,a,o,s),void i(u,e,n,a,o,s)}c=c.next}l=l.next}while(l!==t)}function c(t,e){return t.x-e.x}function u(t,e){if(e=function(t,e){var n,r=e,i=t.x,a=t.y,o=-1/0;do{if(a<=r.y&&a>=r.next.y&&r.next.y!==r.y){var s=r.x+(a-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(s<=i&&s>o){if(o=s,s===i){if(a===r.y)return r;if(a===r.next.y)return r.next}n=r.x=r.x&&r.x>=u&&i!==r.x&&p(an.x||r.x===n.x&&f(n,r)))&&(n=r,d=l)),r=r.next}while(r!==c);return n}(t,e),e){var n=_(e,t);r(e,e.next),r(n,n.next)}}function f(t,e){return v(t.prev,t,e.prev)<0&&v(e.next,t,t.next)<0}function h(t,e,n,r,i){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-n)*i)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-r)*i)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function d(t){var e=t,n=t;do{(e.x=0&&(t-o)*(r-s)-(n-o)*(e-s)>=0&&(n-o)*(a-s)-(i-o)*(r-s)>=0}function g(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){var n=t;do{if(n.i!==t.i&&n.next.i!==t.i&&n.i!==e.i&&n.next.i!==e.i&&y(n,n.next,t,e))return!0;n=n.next}while(n!==t);return!1}(t,e)&&(w(t,e)&&w(e,t)&&function(t,e){var n=t,r=!1,i=(t.x+e.x)/2,a=(t.y+e.y)/2;do{n.y>a!==n.next.y>a&&n.next.y!==n.y&&i<(n.next.x-n.x)*(a-n.y)/(n.next.y-n.y)+n.x&&(r=!r),n=n.next}while(n!==t);return r}(t,e)&&(v(t.prev,t,e.prev)||v(t,e.prev,e))||m(t,e)&&v(t.prev,t,t.next)>0&&v(e.prev,e,e.next)>0)}function v(t,e,n){return(e.y-t.y)*(n.x-e.x)-(e.x-t.x)*(n.y-e.y)}function m(t,e){return t.x===e.x&&t.y===e.y}function y(t,e,n,r){var i=x(v(t,e,n)),a=x(v(t,e,r)),o=x(v(n,r,t)),s=x(v(n,r,e));return i!==a&&o!==s||!(0!==i||!b(t,n,e))||!(0!==a||!b(t,r,e))||!(0!==o||!b(n,t,r))||!(0!==s||!b(n,e,r))}function b(t,e,n){return e.x<=Math.max(t.x,n.x)&&e.x>=Math.min(t.x,n.x)&&e.y<=Math.max(t.y,n.y)&&e.y>=Math.min(t.y,n.y)}function x(t){return t>0?1:t<0?-1:0}function w(t,e){return v(t.prev,t,t.next)<0?v(t,e,t.next)>=0&&v(t,t.prev,e)>=0:v(t,e,t.prev)<0||v(t,t.next,e)<0}function _(t,e){var n=new M(t.i,t.x,t.y),r=new M(e.i,e.x,e.y),i=t.next,a=e.prev;return t.next=e,e.prev=t,n.next=i,i.prev=n,r.next=n,n.prev=r,a.next=r,r.prev=a,r}function k(t,e,n,r){var i=new M(t,e,n);return r?(i.next=r.next,i.prev=r,r.next.prev=i,r.next=i):(i.prev=i,i.next=i),i}function T(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function M(t,e,n){this.i=t,this.x=e,this.y=n,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function A(t,e,n,r){for(var i=0,a=e,o=n-r;a0&&(r+=t[i-1].length,n.holes.push(r))}return n}},2502:function(t,e,n){var r=n(68664);t.exports=function(t,e){var n,i=[],a=[],o=[],s={},l=[];function c(t){o[t]=!1,s.hasOwnProperty(t)&&Object.keys(s[t]).forEach((function(e){delete s[t][e],o[e]&&c(e)}))}function u(t){var e,r,i=!1;for(a.push(t),o[t]=!0,e=0;e=e}))}(e);for(var n,i=r(t).components.filter((function(t){return t.length>1})),a=1/0,o=0;o=55296&&y<=56319&&(_+=t[++n]),_=k?h.call(k,T,_,g):_,e?(d.value=_,p(v,g,d)):v[g]=_,++g;m=g}if(void 0===m)for(m=o(t.length),e&&(v=new e(m)),n=0;n0?1:-1}},56247:function(t,e,n){"use strict";var r=n(9953),i=Math.abs,a=Math.floor;t.exports=function(t){return isNaN(t)?0:0!==(t=Number(t))&&isFinite(t)?r(t)*a(i(t)):t}},35976:function(t,e,n){"use strict";var r=n(56247),i=Math.max;t.exports=function(t){return i(0,r(t))}},67260:function(t,e,n){"use strict";var r=n(78513),i=n(36672),a=Function.prototype.bind,o=Function.prototype.call,s=Object.keys,l=Object.prototype.propertyIsEnumerable;t.exports=function(t,e){return function(n,c){var u,f=arguments[2],h=arguments[3];return n=Object(i(n)),r(c),u=s(n),h&&u.sort("function"===typeof h?a.call(h,n):void 0),"function"!==typeof t&&(t=u[t]),o.call(t,u,(function(t,r){return l.call(n,t)?o.call(c,f,n[t],t,n,r):e}))}}},95879:function(t,e,n){"use strict";t.exports=n(73583)()?Object.assign:n(34205)},73583:function(t){"use strict";t.exports=function(){var t,e=Object.assign;return"function"===typeof e&&(e(t={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),t.foo+t.bar+t.trzy==="razdwatrzy")}},34205:function(t,e,n){"use strict";var r=n(68700),i=n(36672),a=Math.max;t.exports=function(t,e){var n,o,s,l=a(arguments.length,2);for(t=Object(i(t)),s=function(r){try{t[r]=e[r]}catch(i){n||(n=i)}},o=1;o-1}},87963:function(t){"use strict";var e=Object.prototype.toString,n=e.call("");t.exports=function(t){return"string"===typeof t||t&&"object"===typeof t&&(t instanceof String||e.call(t)===n)||!1}},43043:function(t){"use strict";var e=Object.create(null),n=Math.random;t.exports=function(){var t;do{t=n().toString(36).slice(2)}while(e[t]);return t}},32411:function(t,e,n){"use strict";var r,i=n(1496),a=n(66741),o=n(62072),s=n(8260),l=n(95426),c=Object.defineProperty;r=t.exports=function(t,e){if(!(this instanceof r))throw new TypeError("Constructor requires 'new'");l.call(this,t),e=e?a.call(e,"key+value")?"key+value":a.call(e,"key")?"key":"value":"value",c(this,"__kind__",o("",e))},i&&i(r,l),delete r.prototype.constructor,r.prototype=Object.create(l.prototype,{_resolve:o((function(t){return"value"===this.__kind__?this.__list__[t]:"key+value"===this.__kind__?[t,this.__list__[t]]:t}))}),c(r.prototype,s.toStringTag,o("c","Array Iterator"))},27515:function(t,e,n){"use strict";var r=n(73051),i=n(78513),a=n(87963),o=n(66661),s=Array.isArray,l=Function.prototype.call,c=Array.prototype.some;t.exports=function(t,e){var n,u,f,h,d,p,g,v,m=arguments[2];if(s(t)||r(t)?n="array":a(t)?n="string":t=o(t),i(e),f=function(){h=!0},"array"!==n)if("string"!==n)for(u=t.next();!u.done;){if(l.call(e,m,u.value,f),h)return;u=t.next()}else for(p=t.length,d=0;d=55296&&v<=56319&&(g+=t[++d]),l.call(e,m,g,f),!h);++d);else c.call(t,(function(t){return l.call(e,m,t,f),h}))}},66661:function(t,e,n){"use strict";var r=n(73051),i=n(87963),a=n(32411),o=n(259),s=n(58095),l=n(8260).iterator;t.exports=function(t){return"function"===typeof s(t)[l]?t[l]():r(t)?new a(t):i(t)?new o(t):new a(t)}},95426:function(t,e,n){"use strict";var r,i=n(16134),a=n(95879),o=n(78513),s=n(36672),l=n(62072),c=n(55174),u=n(8260),f=Object.defineProperty,h=Object.defineProperties;t.exports=r=function(t,e){if(!(this instanceof r))throw new TypeError("Constructor requires 'new'");h(this,{__list__:l("w",s(t)),__context__:l("w",e),__nextIndex__:l("w",0)}),e&&(o(e.on),e.on("_add",this._onAdd),e.on("_delete",this._onDelete),e.on("_clear",this._onClear))},delete r.prototype.constructor,h(r.prototype,a({_next:l((function(){var t;if(this.__list__)return this.__redo__&&void 0!==(t=this.__redo__.shift())?t:this.__nextIndex__=this.__nextIndex__||(++this.__nextIndex__,this.__redo__?(this.__redo__.forEach((function(e,n){e>=t&&(this.__redo__[n]=++e)}),this),this.__redo__.push(t)):f(this,"__redo__",l("c",[t])))})),_onDelete:l((function(t){var e;t>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(-1!==(e=this.__redo__.indexOf(t))&&this.__redo__.splice(e,1),this.__redo__.forEach((function(e,n){e>t&&(this.__redo__[n]=--e)}),this)))})),_onClear:l((function(){this.__redo__&&i.call(this.__redo__),this.__nextIndex__=0}))}))),f(r.prototype,u.iterator,l((function(){return this})))},35940:function(t,e,n){"use strict";var r=n(73051),i=n(95296),a=n(87963),o=n(8260).iterator,s=Array.isArray;t.exports=function(t){return!!i(t)&&(!!s(t)||!!a(t)||!!r(t)||"function"===typeof t[o])}},259:function(t,e,n){"use strict";var r,i=n(1496),a=n(62072),o=n(8260),s=n(95426),l=Object.defineProperty;r=t.exports=function(t){if(!(this instanceof r))throw new TypeError("Constructor requires 'new'");t=String(t),s.call(this,t),l(this,"__length__",a("",t.length))},i&&i(r,s),delete r.prototype.constructor,r.prototype=Object.create(s.prototype,{_next:a((function(){if(this.__list__)return this.__nextIndex__=55296&&e<=56319?n+this.__list__[this.__nextIndex__++]:n}))}),l(r.prototype,o.toStringTag,a("c","String Iterator"))},58095:function(t,e,n){"use strict";var r=n(35940);t.exports=function(t){if(!r(t))throw new TypeError(t+" is not iterable");return t}},73523:function(t){"use strict";function e(t,e){if(void 0===t||null===t)throw new TypeError("Cannot convert first argument to object");for(var n=Object(t),r=1;r0&&o.length>i&&!o.warned){o.warned=!0;var u=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");u.name="MaxListenersExceededWarning",u.emitter=t,u.type=e,u.count=o.length,c=u,console&&console.warn&&console.warn(c)}return t}function u(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function f(t,e,n){var r={fired:!1,wrapFn:void 0,target:t,type:e,listener:n},i=u.bind(r);return i.listener=n,r.wrapFn=i,i}function h(t,e,n){var r=t._events;if(void 0===r)return[];var i=r[e];return void 0===i?[]:"function"===typeof i?n?[i.listener||i]:[i]:n?function(t){for(var e=new Array(t.length),n=0;n0&&(o=e[0]),o instanceof Error)throw o;var s=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw s.context=o,s}var l=a[t];if(void 0===l)return!1;if("function"===typeof l)r(l,this,e);else{var c=l.length,u=p(l,c);for(n=0;n=0;a--)if(n[a]===e||n[a].listener===e){o=n[a].listener,i=a;break}if(i<0)return this;0===i?n.shift():function(t,e){for(;e+1=0;r--)this.removeListener(t,e[r]);return this},a.prototype.listeners=function(t){return h(this,t,!0)},a.prototype.rawListeners=function(t){return h(this,t,!1)},a.listenerCount=function(t,e){return"function"===typeof t.listenerCount?t.listenerCount(e):d.call(t,e)},a.prototype.listenerCount=d,a.prototype.eventNames=function(){return this._eventsCount>0?e(this._events):[]}},60774:function(t){var e=function(){if("object"===typeof self&&self)return self;if("object"===typeof window&&window)return window;throw new Error("Unable to resolve global `this`")};t.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch(t){return e()}try{return __global__||e()}finally{delete Object.prototype.__global__}}()},94908:function(t,e,n){"use strict";t.exports=n(51152)()?globalThis:n(60774)},51152:function(t){"use strict";t.exports=function(){return"object"===typeof globalThis&&!!globalThis&&globalThis.Array===Array}},92770:function(t,e,n){"use strict";var r=n(18546);t.exports=function(t){var e=typeof t;if("string"===e){var n=t;if(0===(t=+t)&&r(n))return!1}else if("number"!==e)return!1;return t-t<1}},30120:function(t,e,n){var r=n(90660);t.exports=function(t,e,n){if(!t)throw new TypeError("must specify data as first parameter");if(n=0|+(n||0),Array.isArray(t)&&t[0]&&"number"===typeof t[0][0]){var i,a,o,s,l=t[0].length,c=t.length*l;e&&"string"!==typeof e||(e=new(r(e||"float32"))(c+n));var u=e.length-n;if(c!==u)throw new Error("source length "+c+" ("+l+"x"+t.length+") does not match destination length "+u);for(i=0,o=n;ie[0]-o[0]/2&&(h=o[0]/2,d+=o[1]);return n}},32879:function(t){"use strict";function e(t,a){a||(a={}),("string"===typeof t||Array.isArray(t))&&(a.family=t);var o=Array.isArray(a.family)?a.family.join(", "):a.family;if(!o)throw Error("`family` must be defined");var s=a.size||a.fontSize||a.em||48,l=a.weight||a.fontWeight||"",c=(t=[a.style||a.fontStyle||"",l,s].join(" ")+"px "+o,a.origin||"top");if(e.cache[o]&&s<=e.cache[o].em)return n(e.cache[o],c);var u=a.canvas||e.canvas,f=u.getContext("2d"),h={upper:void 0!==a.upper?a.upper:"H",lower:void 0!==a.lower?a.lower:"x",descent:void 0!==a.descent?a.descent:"p",ascent:void 0!==a.ascent?a.ascent:"h",tittle:void 0!==a.tittle?a.tittle:"i",overshoot:void 0!==a.overshoot?a.overshoot:"O"},d=Math.ceil(1.5*s);u.height=d,u.width=.5*d,f.font=t;var p="H",g={top:0};f.clearRect(0,0,d,d),f.textBaseline="top",f.fillStyle="black",f.fillText(p,0,0);var v=r(f.getImageData(0,0,d,d));f.clearRect(0,0,d,d),f.textBaseline="bottom",f.fillText(p,0,d);var m=r(f.getImageData(0,0,d,d));g.lineHeight=g.bottom=d-m+v,f.clearRect(0,0,d,d),f.textBaseline="alphabetic",f.fillText(p,0,d);var y=d-r(f.getImageData(0,0,d,d))-1+v;g.baseline=g.alphabetic=y,f.clearRect(0,0,d,d),f.textBaseline="middle",f.fillText(p,0,.5*d);var b=r(f.getImageData(0,0,d,d));g.median=g.middle=d-b-1+v-.5*d,f.clearRect(0,0,d,d),f.textBaseline="hanging",f.fillText(p,0,.5*d);var x=r(f.getImageData(0,0,d,d));g.hanging=d-x-1+v-.5*d,f.clearRect(0,0,d,d),f.textBaseline="ideographic",f.fillText(p,0,d);var w=r(f.getImageData(0,0,d,d));if(g.ideographic=d-w-1+v,h.upper&&(f.clearRect(0,0,d,d),f.textBaseline="top",f.fillText(h.upper,0,0),g.upper=r(f.getImageData(0,0,d,d)),g.capHeight=g.baseline-g.upper),h.lower&&(f.clearRect(0,0,d,d),f.textBaseline="top",f.fillText(h.lower,0,0),g.lower=r(f.getImageData(0,0,d,d)),g.xHeight=g.baseline-g.lower),h.tittle&&(f.clearRect(0,0,d,d),f.textBaseline="top",f.fillText(h.tittle,0,0),g.tittle=r(f.getImageData(0,0,d,d))),h.ascent&&(f.clearRect(0,0,d,d),f.textBaseline="top",f.fillText(h.ascent,0,0),g.ascent=r(f.getImageData(0,0,d,d))),h.descent&&(f.clearRect(0,0,d,d),f.textBaseline="top",f.fillText(h.descent,0,0),g.descent=i(f.getImageData(0,0,d,d))),h.overshoot){f.clearRect(0,0,d,d),f.textBaseline="top",f.fillText(h.overshoot,0,0);var _=i(f.getImageData(0,0,d,d));g.overshoot=_-y}for(var k in g)g[k]/=s;return g.em=s,e.cache[o]=g,n(g,c)}function n(t,e){var n={};for(var r in"string"===typeof e&&(e=t[e]),t)"em"!==r&&(n[r]=t[r]-e);return n}function r(t){for(var e=t.height,n=t.data,r=3;r0;r-=4)if(0!==n[r])return Math.floor(.25*(r-3)/e)}t.exports=e,e.canvas=document.createElement("canvas"),e.cache={}},31353:function(t,e,n){"use strict";var r=n(85395),i=Object.prototype.toString,a=Object.prototype.hasOwnProperty;t.exports=function(t,e,n){if(!r(e))throw new TypeError("iterator must be a function");var o;arguments.length>=3&&(o=n),"[object Array]"===i.call(t)?function(t,e,n){for(var r=0,i=t.length;r1&&"boolean"!==typeof e)throw new o('"allowMissing" argument must be a boolean');if(null===M(/^%?[^%]*%?$/,t))throw new i("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=function(t){var e=T(t,0,1),n=T(t,-1);if("%"===e&&"%"!==n)throw new i("invalid intrinsic syntax, expected closing `%`");if("%"===n&&"%"!==e)throw new i("invalid intrinsic syntax, expected opening `%`");var r=[];return k(t,A,(function(t,e,n,i){r[r.length]=n?k(i,S,"$1"):e||t})),r}(t),r=n.length>0?n[0]:"",a=E("%"+r+"%",e),s=a.name,c=a.value,u=!1,f=a.alias;f&&(r=f[0],_(n,w([0,1],f)));for(var h=1,d=!0;h=n.length){var y=l(c,p);c=(d=!!y)&&"get"in y&&!("originalValue"in y.get)?y.get:c[p]}else d=x(c,p),c=c[p];d&&!u&&(g[s]=c)}}return c}},85400:function(t){t.exports=function(t,e){var n=e[0],r=e[1],i=e[2],a=e[3],o=e[4],s=e[5],l=e[6],c=e[7],u=e[8],f=e[9],h=e[10],d=e[11],p=e[12],g=e[13],v=e[14],m=e[15];return t[0]=s*(h*m-d*v)-f*(l*m-c*v)+g*(l*d-c*h),t[1]=-(r*(h*m-d*v)-f*(i*m-a*v)+g*(i*d-a*h)),t[2]=r*(l*m-c*v)-s*(i*m-a*v)+g*(i*c-a*l),t[3]=-(r*(l*d-c*h)-s*(i*d-a*h)+f*(i*c-a*l)),t[4]=-(o*(h*m-d*v)-u*(l*m-c*v)+p*(l*d-c*h)),t[5]=n*(h*m-d*v)-u*(i*m-a*v)+p*(i*d-a*h),t[6]=-(n*(l*m-c*v)-o*(i*m-a*v)+p*(i*c-a*l)),t[7]=n*(l*d-c*h)-o*(i*d-a*h)+u*(i*c-a*l),t[8]=o*(f*m-d*g)-u*(s*m-c*g)+p*(s*d-c*f),t[9]=-(n*(f*m-d*g)-u*(r*m-a*g)+p*(r*d-a*f)),t[10]=n*(s*m-c*g)-o*(r*m-a*g)+p*(r*c-a*s),t[11]=-(n*(s*d-c*f)-o*(r*d-a*f)+u*(r*c-a*s)),t[12]=-(o*(f*v-h*g)-u*(s*v-l*g)+p*(s*h-l*f)),t[13]=n*(f*v-h*g)-u*(r*v-i*g)+p*(r*h-i*f),t[14]=-(n*(s*v-l*g)-o*(r*v-i*g)+p*(r*l-i*s)),t[15]=n*(s*h-l*f)-o*(r*h-i*f)+u*(r*l-i*s),t}},42331:function(t){t.exports=function(t){var e=new Float32Array(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}},31042:function(t){t.exports=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}},11902:function(t){t.exports=function(){var t=new Float32Array(16);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},89887:function(t){t.exports=function(t){var e=t[0],n=t[1],r=t[2],i=t[3],a=t[4],o=t[5],s=t[6],l=t[7],c=t[8],u=t[9],f=t[10],h=t[11],d=t[12],p=t[13],g=t[14],v=t[15];return(e*o-n*a)*(f*v-h*g)-(e*s-r*a)*(u*v-h*p)+(e*l-i*a)*(u*g-f*p)+(n*s-r*o)*(c*v-h*d)-(n*l-i*o)*(c*g-f*d)+(r*l-i*s)*(c*p-u*d)}},27812:function(t){t.exports=function(t,e){var n=e[0],r=e[1],i=e[2],a=e[3],o=n+n,s=r+r,l=i+i,c=n*o,u=r*o,f=r*s,h=i*o,d=i*s,p=i*l,g=a*o,v=a*s,m=a*l;return t[0]=1-f-p,t[1]=u+m,t[2]=h-v,t[3]=0,t[4]=u-m,t[5]=1-c-p,t[6]=d+g,t[7]=0,t[8]=h+v,t[9]=d-g,t[10]=1-c-f,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},34045:function(t){t.exports=function(t,e,n){var r,i,a,o=n[0],s=n[1],l=n[2],c=Math.sqrt(o*o+s*s+l*l);return Math.abs(c)<1e-6?null:(o*=c=1/c,s*=c,l*=c,r=Math.sin(e),i=Math.cos(e),a=1-i,t[0]=o*o*a+i,t[1]=s*o*a+l*r,t[2]=l*o*a-s*r,t[3]=0,t[4]=o*s*a-l*r,t[5]=s*s*a+i,t[6]=l*s*a+o*r,t[7]=0,t[8]=o*l*a+s*r,t[9]=s*l*a-o*r,t[10]=l*l*a+i,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t)}},45973:function(t){t.exports=function(t,e,n){var r=e[0],i=e[1],a=e[2],o=e[3],s=r+r,l=i+i,c=a+a,u=r*s,f=r*l,h=r*c,d=i*l,p=i*c,g=a*c,v=o*s,m=o*l,y=o*c;return t[0]=1-(d+g),t[1]=f+y,t[2]=h-m,t[3]=0,t[4]=f-y,t[5]=1-(u+g),t[6]=p+v,t[7]=0,t[8]=h+m,t[9]=p-v,t[10]=1-(u+d),t[11]=0,t[12]=n[0],t[13]=n[1],t[14]=n[2],t[15]=1,t}},81472:function(t){t.exports=function(t,e){return t[0]=e[0],t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=e[1],t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=e[2],t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},14669:function(t){t.exports=function(t,e){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=e[0],t[13]=e[1],t[14]=e[2],t[15]=1,t}},75262:function(t){t.exports=function(t,e){var n=Math.sin(e),r=Math.cos(e);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=r,t[6]=n,t[7]=0,t[8]=0,t[9]=-n,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},331:function(t){t.exports=function(t,e){var n=Math.sin(e),r=Math.cos(e);return t[0]=r,t[1]=0,t[2]=-n,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=n,t[9]=0,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},11049:function(t){t.exports=function(t,e){var n=Math.sin(e),r=Math.cos(e);return t[0]=r,t[1]=n,t[2]=0,t[3]=0,t[4]=-n,t[5]=r,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},75195:function(t){t.exports=function(t,e,n,r,i,a,o){var s=1/(n-e),l=1/(i-r),c=1/(a-o);return t[0]=2*a*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=2*a*l,t[6]=0,t[7]=0,t[8]=(n+e)*s,t[9]=(i+r)*l,t[10]=(o+a)*c,t[11]=-1,t[12]=0,t[13]=0,t[14]=o*a*2*c,t[15]=0,t}},71551:function(t){t.exports=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},79576:function(t,e,n){t.exports={create:n(11902),clone:n(42331),copy:n(31042),identity:n(71551),transpose:n(88654),invert:n(95874),adjoint:n(85400),determinant:n(89887),multiply:n(91362),translate:n(31283),scale:n(10789),rotate:n(65074),rotateX:n(35545),rotateY:n(94918),rotateZ:n(15692),fromRotation:n(34045),fromRotationTranslation:n(45973),fromScaling:n(81472),fromTranslation:n(14669),fromXRotation:n(75262),fromYRotation:n(331),fromZRotation:n(11049),fromQuat:n(27812),frustum:n(75195),perspective:n(7864),perspectiveFromFieldOfView:n(35279),ortho:n(60378),lookAt:n(65551),str:n(6726)}},95874:function(t){t.exports=function(t,e){var n=e[0],r=e[1],i=e[2],a=e[3],o=e[4],s=e[5],l=e[6],c=e[7],u=e[8],f=e[9],h=e[10],d=e[11],p=e[12],g=e[13],v=e[14],m=e[15],y=n*s-r*o,b=n*l-i*o,x=n*c-a*o,w=r*l-i*s,_=r*c-a*s,k=i*c-a*l,T=u*g-f*p,M=u*v-h*p,A=u*m-d*p,S=f*v-h*g,E=f*m-d*g,C=h*m-d*v,P=y*C-b*E+x*S+w*A-_*M+k*T;return P?(P=1/P,t[0]=(s*C-l*E+c*S)*P,t[1]=(i*E-r*C-a*S)*P,t[2]=(g*k-v*_+m*w)*P,t[3]=(h*_-f*k-d*w)*P,t[4]=(l*A-o*C-c*M)*P,t[5]=(n*C-i*A+a*M)*P,t[6]=(v*x-p*k-m*b)*P,t[7]=(u*k-h*x+d*b)*P,t[8]=(o*E-s*A+c*T)*P,t[9]=(r*A-n*E-a*T)*P,t[10]=(p*_-g*x+m*y)*P,t[11]=(f*x-u*_-d*y)*P,t[12]=(s*M-o*S-l*T)*P,t[13]=(n*S-r*M+i*T)*P,t[14]=(g*b-p*w-v*y)*P,t[15]=(u*w-f*b+h*y)*P,t):null}},65551:function(t,e,n){var r=n(71551);t.exports=function(t,e,n,i){var a,o,s,l,c,u,f,h,d,p,g=e[0],v=e[1],m=e[2],y=i[0],b=i[1],x=i[2],w=n[0],_=n[1],k=n[2];return Math.abs(g-w)<1e-6&&Math.abs(v-_)<1e-6&&Math.abs(m-k)<1e-6?r(t):(f=g-w,h=v-_,d=m-k,p=1/Math.sqrt(f*f+h*h+d*d),a=b*(d*=p)-x*(h*=p),o=x*(f*=p)-y*d,s=y*h-b*f,(p=Math.sqrt(a*a+o*o+s*s))?(a*=p=1/p,o*=p,s*=p):(a=0,o=0,s=0),l=h*s-d*o,c=d*a-f*s,u=f*o-h*a,(p=Math.sqrt(l*l+c*c+u*u))?(l*=p=1/p,c*=p,u*=p):(l=0,c=0,u=0),t[0]=a,t[1]=l,t[2]=f,t[3]=0,t[4]=o,t[5]=c,t[6]=h,t[7]=0,t[8]=s,t[9]=u,t[10]=d,t[11]=0,t[12]=-(a*g+o*v+s*m),t[13]=-(l*g+c*v+u*m),t[14]=-(f*g+h*v+d*m),t[15]=1,t)}},91362:function(t){t.exports=function(t,e,n){var r=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],f=e[8],h=e[9],d=e[10],p=e[11],g=e[12],v=e[13],m=e[14],y=e[15],b=n[0],x=n[1],w=n[2],_=n[3];return t[0]=b*r+x*s+w*f+_*g,t[1]=b*i+x*l+w*h+_*v,t[2]=b*a+x*c+w*d+_*m,t[3]=b*o+x*u+w*p+_*y,b=n[4],x=n[5],w=n[6],_=n[7],t[4]=b*r+x*s+w*f+_*g,t[5]=b*i+x*l+w*h+_*v,t[6]=b*a+x*c+w*d+_*m,t[7]=b*o+x*u+w*p+_*y,b=n[8],x=n[9],w=n[10],_=n[11],t[8]=b*r+x*s+w*f+_*g,t[9]=b*i+x*l+w*h+_*v,t[10]=b*a+x*c+w*d+_*m,t[11]=b*o+x*u+w*p+_*y,b=n[12],x=n[13],w=n[14],_=n[15],t[12]=b*r+x*s+w*f+_*g,t[13]=b*i+x*l+w*h+_*v,t[14]=b*a+x*c+w*d+_*m,t[15]=b*o+x*u+w*p+_*y,t}},60378:function(t){t.exports=function(t,e,n,r,i,a,o){var s=1/(e-n),l=1/(r-i),c=1/(a-o);return t[0]=-2*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*c,t[11]=0,t[12]=(e+n)*s,t[13]=(i+r)*l,t[14]=(o+a)*c,t[15]=1,t}},7864:function(t){t.exports=function(t,e,n,r,i){var a=1/Math.tan(e/2),o=1/(r-i);return t[0]=a/n,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=a,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=(i+r)*o,t[11]=-1,t[12]=0,t[13]=0,t[14]=2*i*r*o,t[15]=0,t}},35279:function(t){t.exports=function(t,e,n,r){var i=Math.tan(e.upDegrees*Math.PI/180),a=Math.tan(e.downDegrees*Math.PI/180),o=Math.tan(e.leftDegrees*Math.PI/180),s=Math.tan(e.rightDegrees*Math.PI/180),l=2/(o+s),c=2/(i+a);return t[0]=l,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=c,t[6]=0,t[7]=0,t[8]=-(o-s)*l*.5,t[9]=(i-a)*c*.5,t[10]=r/(n-r),t[11]=-1,t[12]=0,t[13]=0,t[14]=r*n/(n-r),t[15]=0,t}},65074:function(t){t.exports=function(t,e,n,r){var i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S,E=r[0],C=r[1],P=r[2],L=Math.sqrt(E*E+C*C+P*P);return Math.abs(L)<1e-6?null:(E*=L=1/L,C*=L,P*=L,i=Math.sin(n),a=Math.cos(n),o=1-a,s=e[0],l=e[1],c=e[2],u=e[3],f=e[4],h=e[5],d=e[6],p=e[7],g=e[8],v=e[9],m=e[10],y=e[11],b=E*E*o+a,x=C*E*o+P*i,w=P*E*o-C*i,_=E*C*o-P*i,k=C*C*o+a,T=P*C*o+E*i,M=E*P*o+C*i,A=C*P*o-E*i,S=P*P*o+a,t[0]=s*b+f*x+g*w,t[1]=l*b+h*x+v*w,t[2]=c*b+d*x+m*w,t[3]=u*b+p*x+y*w,t[4]=s*_+f*k+g*T,t[5]=l*_+h*k+v*T,t[6]=c*_+d*k+m*T,t[7]=u*_+p*k+y*T,t[8]=s*M+f*A+g*S,t[9]=l*M+h*A+v*S,t[10]=c*M+d*A+m*S,t[11]=u*M+p*A+y*S,e!==t&&(t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t)}},35545:function(t){t.exports=function(t,e,n){var r=Math.sin(n),i=Math.cos(n),a=e[4],o=e[5],s=e[6],l=e[7],c=e[8],u=e[9],f=e[10],h=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=a*i+c*r,t[5]=o*i+u*r,t[6]=s*i+f*r,t[7]=l*i+h*r,t[8]=c*i-a*r,t[9]=u*i-o*r,t[10]=f*i-s*r,t[11]=h*i-l*r,t}},94918:function(t){t.exports=function(t,e,n){var r=Math.sin(n),i=Math.cos(n),a=e[0],o=e[1],s=e[2],l=e[3],c=e[8],u=e[9],f=e[10],h=e[11];return e!==t&&(t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=a*i-c*r,t[1]=o*i-u*r,t[2]=s*i-f*r,t[3]=l*i-h*r,t[8]=a*r+c*i,t[9]=o*r+u*i,t[10]=s*r+f*i,t[11]=l*r+h*i,t}},15692:function(t){t.exports=function(t,e,n){var r=Math.sin(n),i=Math.cos(n),a=e[0],o=e[1],s=e[2],l=e[3],c=e[4],u=e[5],f=e[6],h=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=a*i+c*r,t[1]=o*i+u*r,t[2]=s*i+f*r,t[3]=l*i+h*r,t[4]=c*i-a*r,t[5]=u*i-o*r,t[6]=f*i-s*r,t[7]=h*i-l*r,t}},10789:function(t){t.exports=function(t,e,n){var r=n[0],i=n[1],a=n[2];return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t[3]=e[3]*r,t[4]=e[4]*i,t[5]=e[5]*i,t[6]=e[6]*i,t[7]=e[7]*i,t[8]=e[8]*a,t[9]=e[9]*a,t[10]=e[10]*a,t[11]=e[11]*a,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}},6726:function(t){t.exports=function(t){return"mat4("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+", "+t[4]+", "+t[5]+", "+t[6]+", "+t[7]+", "+t[8]+", "+t[9]+", "+t[10]+", "+t[11]+", "+t[12]+", "+t[13]+", "+t[14]+", "+t[15]+")"}},31283:function(t){t.exports=function(t,e,n){var r,i,a,o,s,l,c,u,f,h,d,p,g=n[0],v=n[1],m=n[2];return e===t?(t[12]=e[0]*g+e[4]*v+e[8]*m+e[12],t[13]=e[1]*g+e[5]*v+e[9]*m+e[13],t[14]=e[2]*g+e[6]*v+e[10]*m+e[14],t[15]=e[3]*g+e[7]*v+e[11]*m+e[15]):(r=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],f=e[8],h=e[9],d=e[10],p=e[11],t[0]=r,t[1]=i,t[2]=a,t[3]=o,t[4]=s,t[5]=l,t[6]=c,t[7]=u,t[8]=f,t[9]=h,t[10]=d,t[11]=p,t[12]=r*g+s*v+f*m+e[12],t[13]=i*g+l*v+h*m+e[13],t[14]=a*g+c*v+d*m+e[14],t[15]=o*g+u*v+p*m+e[15]),t}},88654:function(t){t.exports=function(t,e){if(t===e){var n=e[1],r=e[2],i=e[3],a=e[6],o=e[7],s=e[11];t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=n,t[6]=e[9],t[7]=e[13],t[8]=r,t[9]=a,t[11]=e[14],t[12]=i,t[13]=o,t[14]=s}else t[0]=e[0],t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=e[1],t[5]=e[5],t[6]=e[9],t[7]=e[13],t[8]=e[2],t[9]=e[6],t[10]=e[10],t[11]=e[14],t[12]=e[3],t[13]=e[7],t[14]=e[11],t[15]=e[15];return t}},42505:function(t,e,n){"use strict";var r=n(72791),i=n(71299),a=n(98580),o=n(12018),s=n(83522),l=n(25075),c=n(68016),u=n(58404),f=n(18863),h=n(10973),d=n(25677),p=n(75686),g=n(53545),v=n(56131),m=n(32879),y=n(30120),b=n(13547).nextPow2,x=new s,w=!1;if(document.body){var _=document.body.appendChild(document.createElement("div"));_.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(_).fontStretch&&(w=!0),document.body.removeChild(_)}var k=function(t){!function(t){return"function"===typeof t&&t._gl&&t.prop&&t.texture&&t.buffer}(t)?this.gl=o(t):(t={regl:t},this.gl=t.regl._gl),this.shader=x.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=t.regl||a({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(),x.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(h(t)?t:{})};k.prototype.createShader=function(){var t=this.regl,e=t({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:t.prop("count"),offset:t.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:t.this("sizeBuffer")},width:{offset:0,stride:8,buffer:t.this("sizeBuffer")},char:t.this("charBuffer"),position:t.this("position")},uniforms:{atlasSize:function(t,e){return[e.atlas.width,e.atlas.height]},atlasDim:function(t,e){return[e.atlas.cols,e.atlas.rows]},atlas:function(t,e){return e.atlas.texture},charStep:function(t,e){return e.atlas.step},em:function(t,e){return e.atlas.em},color:t.prop("color"),opacity:t.prop("opacity"),viewport:t.this("viewportArray"),scale:t.this("scale"),align:t.prop("align"),baseline:t.prop("baseline"),translate:t.this("translate"),positionOffset:t.prop("positionOffset")},primitive:"points",viewport:t.this("viewport"),vert:"\n\t\t\tprecision highp float;\n\t\t\tattribute float width, charOffset, char;\n\t\t\tattribute vec2 position;\n\t\t\tuniform float fontSize, charStep, em, align, baseline;\n\t\t\tuniform vec4 viewport;\n\t\t\tuniform vec4 color;\n\t\t\tuniform vec2 atlasSize, atlasDim, scale, translate, positionOffset;\n\t\t\tvarying vec2 charCoord, charId;\n\t\t\tvarying float charWidth;\n\t\t\tvarying vec4 fontColor;\n\t\t\tvoid main () {\n\t\t\t\tvec2 offset = floor(em * (vec2(align + charOffset, baseline)\n\t\t\t\t\t+ vec2(positionOffset.x, -positionOffset.y)))\n\t\t\t\t\t/ (viewport.zw * scale.xy);\n\n\t\t\t\tvec2 position = (position + translate) * scale;\n\t\t\t\tposition += offset * scale;\n\n\t\t\t\tcharCoord = position * viewport.zw + viewport.xy;\n\n\t\t\t\tgl_Position = vec4(position * 2. - 1., 0, 1);\n\n\t\t\t\tgl_PointSize = charStep;\n\n\t\t\t\tcharId.x = mod(char, atlasDim.x);\n\t\t\t\tcharId.y = floor(char / atlasDim.x);\n\n\t\t\t\tcharWidth = width * em;\n\n\t\t\t\tfontColor = color / 255.;\n\t\t\t}",frag:"\n\t\t\tprecision highp float;\n\t\t\tuniform float fontSize, charStep, opacity;\n\t\t\tuniform vec2 atlasSize;\n\t\t\tuniform vec4 viewport;\n\t\t\tuniform sampler2D atlas;\n\t\t\tvarying vec4 fontColor;\n\t\t\tvarying vec2 charCoord, charId;\n\t\t\tvarying float charWidth;\n\n\t\t\tfloat lightness(vec4 color) {\n\t\t\t\treturn color.r * 0.299 + color.g * 0.587 + color.b * 0.114;\n\t\t\t}\n\n\t\t\tvoid main () {\n\t\t\t\tvec2 uv = gl_FragCoord.xy - charCoord + charStep * .5;\n\t\t\t\tfloat halfCharStep = floor(charStep * .5 + .5);\n\n\t\t\t\t// invert y and shift by 1px (FF expecially needs that)\n\t\t\t\tuv.y = charStep - uv.y;\n\n\t\t\t\t// ignore points outside of character bounding box\n\t\t\t\tfloat halfCharWidth = ceil(charWidth * .5);\n\t\t\t\tif (floor(uv.x) > halfCharStep + halfCharWidth ||\n\t\t\t\t\tfloor(uv.x) < halfCharStep - halfCharWidth) return;\n\n\t\t\t\tuv += charId * charStep;\n\t\t\t\tuv = uv / atlasSize;\n\n\t\t\t\tvec4 color = fontColor;\n\t\t\t\tvec4 mask = texture2D(atlas, uv);\n\n\t\t\t\tfloat maskY = lightness(mask);\n\t\t\t\t// float colorY = lightness(color);\n\t\t\t\tcolor.a *= maskY;\n\t\t\t\tcolor.a *= opacity;\n\n\t\t\t\t// color.a += .1;\n\n\t\t\t\t// antialiasing, see yiq color space y-channel formula\n\t\t\t\t// color.rgb += (1. - color.rgb) * (1. - mask.rgb);\n\n\t\t\t\tgl_FragColor = color;\n\t\t\t}"});return{regl:t,draw:e,atlas:{}}},k.prototype.update=function(t){var e=this;if("string"===typeof t)t={text:t};else if(!t)return;null!=(t=i(t,{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&&(Array.isArray(t.opacity)?this.opacity=t.opacity.map((function(t){return parseFloat(t)})):this.opacity=parseFloat(t.opacity)),null!=t.viewport&&(this.viewport=f(t.viewport),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),null==this.viewport&&(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]),null!=t.kerning&&(this.kerning=t.kerning),null!=t.offset&&("number"===typeof t.offset&&(t.offset=[t.offset,0]),this.positionOffset=y(t.offset)),t.direction&&(this.direction=t.direction),t.range&&(this.range=t.range,this.scale=[1/(t.range[2]-t.range[0]),1/(t.range[3]-t.range[1])],this.translate=[-t.range[0],-t.range[1]]),t.scale&&(this.scale=t.scale),t.translate&&(this.translate=t.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),this.font.length||t.font||(t.font=k.baseFontSize+"px sans-serif");var n,a=!1,o=!1;if(t.font&&(Array.isArray(t.font)?t.font:[t.font]).forEach((function(t,n){if("string"===typeof t)try{t=r.parse(t)}catch(f){t=r.parse(k.baseFontSize+"px "+t)}else t=r.parse(r.stringify(t));var i=r.stringify({size:k.baseFontSize,family:t.family,stretch:w?t.stretch:void 0,variant:t.variant,weight:t.weight,style:t.style}),s=d(t.size),l=Math.round(s[0]*p(s[1]));if(l!==e.fontSize[n]&&(o=!0,e.fontSize[n]=l),(!e.font[n]||i!=e.font[n].baseString)&&(a=!0,e.font[n]=k.fonts[i],!e.font[n])){var c=t.family.join(", "),u=[t.style];t.style!=t.variant&&u.push(t.variant),t.variant!=t.weight&&u.push(t.weight),w&&t.weight!=t.stretch&&u.push(t.stretch),e.font[n]={baseString:i,family:c,weight:t.weight,stretch:t.stretch,style:t.style,variant:t.variant,width:{},kerning:{},metrics:m(c,{origin:"top",fontSize:k.baseFontSize,fontStyle:u.join(" ")})},k.fonts[i]=e.font[n]}})),(a||o)&&this.font.forEach((function(n,i){var a=r.stringify({size:e.fontSize[i],family:n.family,stretch:w?n.stretch:void 0,variant:n.variant,weight:n.weight,style:n.style});if(e.fontAtlas[i]=e.shader.atlas[a],!e.fontAtlas[i]){var o=n.metrics;e.shader.atlas[a]=e.fontAtlas[i]={fontString:a,step:2*Math.ceil(e.fontSize[i]*o.bottom*.5),em:e.fontSize[i],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:e.regl.texture()}}null==t.text&&(t.text=e.text)})),"string"===typeof t.text&&t.position&&t.position.length>2){for(var s=Array(.5*t.position.length),h=0;h2){for(var _=!t.position[0].length,T=u.mallocFloat(2*this.count),M=0,A=0;M1?e.align[n]:e.align[0]:e.align;if("number"===typeof r)return r;switch(r){case"right":case"end":return-t;case"center":case"centre":case"middle":return.5*-t}return 0}))),null==this.baseline&&null==t.baseline&&(t.baseline=0),null!=t.baseline&&(this.baseline=t.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map((function(t,n){var r=(e.font[n]||e.font[0]).metrics,i=0;return i+=.5*r.bottom,i+="number"===typeof t?t-r.baseline:-r[t],i*=-1}))),null!=t.color)if(t.color||(t.color="transparent"),"string"!==typeof t.color&&isNaN(t.color)){var q;if("number"===typeof t.color[0]&&t.color.length>this.counts.length){var G=t.color.length;q=u.mallocUint8(G);for(var W=(t.color.subarray||t.color.slice).bind(t.color),Y=0;Y4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2){var K=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(K);for(var Z=0;Z1?this.counts[Z]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[Z]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(4*Z,4*Z+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[Z]:this.opacity,baseline:null!=this.baselineOffset[Z]?this.baselineOffset[Z]:this.baselineOffset[0],align:this.align?null!=this.alignOffset[Z]?this.alignOffset[Z]:this.alignOffset[0]:0,atlas:this.fontAtlas[Z]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(2*Z,2*Z+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=[]},k.prototype.destroy=function(){},k.prototype.kerning=!0,k.prototype.position={constant:new Float32Array(2)},k.prototype.translate=null,k.prototype.scale=null,k.prototype.font=null,k.prototype.text="",k.prototype.positionOffset=[0,0],k.prototype.opacity=1,k.prototype.color=new Uint8Array([0,0,0,255]),k.prototype.alignOffset=[0,0],k.maxAtlasSize=1024,k.atlasCanvas=document.createElement("canvas"),k.atlasContext=k.atlasCanvas.getContext("2d",{alpha:!1}),k.baseFontSize=64,k.fonts={},t.exports=k},12018:function(t,e,n){"use strict";var r=n(71299);function i(t){if(t.container)if(t.container==document.body)document.body.style.width||(t.canvas.width=t.width||t.pixelRatio*n.g.innerWidth),document.body.style.height||(t.canvas.height=t.height||t.pixelRatio*n.g.innerHeight);else{var e=t.container.getBoundingClientRect();t.canvas.width=t.width||e.right-e.left,t.canvas.height=t.height||e.bottom-e.top}}function a(t){return"function"===typeof t.getContext&&"width"in t&&"height"in t}function o(){var t=document.createElement("canvas");return t.style.position="absolute",t.style.top=0,t.style.left=0,t}t.exports=function(t){var e;if(t?"string"===typeof t&&(t={container:t}):t={},(t=a(t)||"string"===typeof(e=t).nodeName&&"function"===typeof e.appendChild&&"function"===typeof e.getBoundingClientRect?{container:t}:function(t){return"function"===typeof t.drawArrays||"function"===typeof t.drawElements}(t)?{gl:t}:r(t,{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||(t.pixelRatio=n.g.pixelRatio||1),t.gl)return t.gl;if(t.canvas&&(t.container=t.canvas.parentNode),t.container){if("string"===typeof t.container){var s=document.querySelector(t.container);if(!s)throw Error("Element "+t.container+" is not found");t.container=s}a(t.container)?(t.canvas=t.container,t.container=t.canvas.parentNode):t.canvas||(t.canvas=o(),t.container.appendChild(t.canvas),i(t))}else if(!t.canvas){if("undefined"===typeof document)throw Error("Not DOM environment. Use headless-gl.");t.container=document.body||document.documentElement,t.canvas=o(),t.container.appendChild(t.canvas),i(t)}return t.gl||["webgl","experimental-webgl","webgl-experimental"].some((function(n){try{t.gl=t.canvas.getContext(n,t.attrs)}catch(e){}return t.gl})),t.gl}},56068:function(t){t.exports=function(t){"string"===typeof t&&(t=[t]);for(var e=[].slice.call(arguments,1),n=[],r=0;r>1,u=-7,f=n?i-1:0,h=n?-1:1,d=t[e+f];for(f+=h,a=d&(1<<-u)-1,d>>=-u,u+=s;u>0;a=256*a+t[e+f],f+=h,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=r;u>0;o=256*o+t[e+f],f+=h,u-=8);if(0===a)a=1-c;else{if(a===l)return o?NaN:1/0*(d?-1:1);o+=Math.pow(2,r),a-=c}return(d?-1:1)*o*Math.pow(2,a-r)},e.write=function(t,e,n,r,i,a){var o,s,l,c=8*a-i-1,u=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:a-1,p=r?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+f>=1?h/l:h*Math.pow(2,1-f))*l>=2&&(o++,l/=2),o+f>=u?(s=0,o=u):o+f>=1?(s=(e*l-1)*Math.pow(2,i),o+=f):(s=e*Math.pow(2,f-1)*Math.pow(2,i),o=0));i>=8;t[n+d]=255&s,d+=p,s/=256,i-=8);for(o=o<0;t[n+d]=255&o,d+=p,o/=256,c-=8);t[n+d-p]|=128*g}},42018:function(t){"function"===typeof Object.create?t.exports=function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(t,e){if(e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}}},47216:function(t,e,n){"use strict";var r=n(84543)(),i=n(6614)("Object.prototype.toString"),a=function(t){return!(r&&t&&"object"===typeof t&&Symbol.toStringTag in t)&&"[object Arguments]"===i(t)},o=function(t){return!!a(t)||null!==t&&"object"===typeof t&&"number"===typeof t.length&&t.length>=0&&"[object Array]"!==i(t)&&"[object Function]"===i(t.callee)},s=function(){return a(arguments)}();a.isLegacyArguments=o,t.exports=s?a:o},54404:function(t){t.exports=!0},85395:function t(e){"use strict";var n,r,i=Function.prototype.toString,a="object"===typeof Reflect&&null!==Reflect&&Reflect.apply;if("function"===typeof a&&"function"===typeof Object.defineProperty)try{n=Object.defineProperty({},"length",{get:function(){throw r}}),r={},a((function(){throw 42}),null,n)}catch(t){t!==r&&(a=null)}else a=null;var o=/^\s*class\b/,s=function(t){try{var e=i.call(t);return o.test(e)}catch(n){return!1}},l=function(t){try{return!s(t)&&(i.call(t),!0)}catch(e){return!1}},c=Object.prototype.toString,u="function"===typeof Symbol&&!!Symbol.toStringTag,f=!(0 in[,]),h=function(){return!1};if("object"===typeof document){var d=document.all;c.call(d)===c.call(document.all)&&(h=function(t){if((f||!t)&&("undefined"===typeof t||"object"===typeof t))try{var e=c.call(t);return("[object HTMLAllCollection]"===e||"[object HTML document.all class]"===e||"[object HTMLCollection]"===e||"[object Object]"===e)&&null==t("")}catch(n){}return!1})}e.exports=a?function(t){if(h(t))return!0;if(!t)return!1;if("function"!==typeof t&&"object"!==typeof t)return!1;try{a(t,null,n)}catch(e){if(e!==r)return!1}return!s(t)&&l(t)}:function(t){if(h(t))return!0;if(!t)return!1;if("function"!==typeof t&&"object"!==typeof t)return!1;if(u)return l(t);if(s(t))return!1;var e=c.call(t);return!("[object Function]"!==e&&"[object GeneratorFunction]"!==e&&!/^\[object HTML/.test(e))&&l(t)}},65481:function(t,e,n){"use strict";var r,i=Object.prototype.toString,a=Function.prototype.toString,o=/^\s*(?:function)?\*/,s=n(84543)(),l=Object.getPrototypeOf;t.exports=function(t){if("function"!==typeof t)return!1;if(o.test(a.call(t)))return!0;if(!s)return"[object GeneratorFunction]"===i.call(t);if(!l)return!1;if("undefined"===typeof r){var e=function(){if(!s)return!1;try{return Function("return function*() {}")()}catch(t){}}();r=!!e&&l(e)}return l(t)===r}},62683:function(t){"use strict";t.exports="undefined"!==typeof navigator&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))},64274:function(t){"use strict";t.exports=function(t){return t!==t}},15567:function(t,e,n){"use strict";var r=n(68222),i=n(17045),a=n(64274),o=n(14922),s=n(22442),l=r(o(),Number);i(l,{getPolyfill:o,implementation:a,shim:s}),t.exports=l},14922:function(t,e,n){"use strict";var r=n(64274);t.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:r}},22442:function(t,e,n){"use strict";var r=n(17045),i=n(14922);t.exports=function(){var t=i();return r(Number,{isNaN:t},{isNaN:function(){return Number.isNaN!==t}}),t}},64941:function(t){"use strict";t.exports=function(t){var e=typeof t;return null!==t&&("object"===e||"function"===e)}},10973:function(t){"use strict";var e=Object.prototype.toString;t.exports=function(t){var n;return"[object Object]"===e.call(t)&&(null===(n=Object.getPrototypeOf(t))||n===Object.getPrototypeOf({}))}},18546:function(t){"use strict";t.exports=function(t){for(var e,n=t.length,r=0;r13)&&32!==e&&133!==e&&160!==e&&5760!==e&&6158!==e&&(e<8192||e>8205)&&8232!==e&&8233!==e&&8239!==e&&8287!==e&&8288!==e&&12288!==e&&65279!==e)return!1;return!0}},89546:function(t){"use strict";t.exports=function(t){return"string"===typeof t&&(t=t.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(t)&&/[\dz]$/i.test(t)&&t.length>4))}},9187:function(t,e,n){"use strict";var r=n(31353),i=n(72077),a=n(6614),o=a("Object.prototype.toString"),s=n(84543)(),l=n(40383),c="undefined"===typeof globalThis?n.g:globalThis,u=i(),f=a("Array.prototype.indexOf",!0)||function(t,e){for(var n=0;n-1}return!!l&&function(t){var e=!1;return r(d,(function(n,r){if(!e)try{e=n.call(t)===r}catch(i){}})),e}(t)}},44517:function(t){t.exports=function(){"use strict";var t,e,n;function r(r,i){if(t)if(e){var a="var sharedChunk = {}; ("+t+")(sharedChunk); ("+e+")(sharedChunk);",o={};t(o),(n=i(o)).workerUrl=window.URL.createObjectURL(new Blob([a],{type:"text/javascript"}))}else e=i;else t=i}return r(["exports"],(function(t){function e(t,e){return t(e={exports:{}},e.exports),e.exports}var n="1.10.1",r=i;function i(t,e,n,r){this.cx=3*t,this.bx=3*(n-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*e,this.by=3*(r-e)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=r,this.p2x=n,this.p2y=r}i.prototype.sampleCurveX=function(t){return((this.ax*t+this.bx)*t+this.cx)*t},i.prototype.sampleCurveY=function(t){return((this.ay*t+this.by)*t+this.cy)*t},i.prototype.sampleCurveDerivativeX=function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},i.prototype.solveCurveX=function(t,e){var n,r,i,a,o;for("undefined"===typeof e&&(e=1e-6),i=t,o=0;o<8;o++){if(a=this.sampleCurveX(i)-t,Math.abs(a)(r=1))return r;for(;na?n=i:r=i,i=.5*(r-n)+n}return i},i.prototype.solve=function(t,e){return this.sampleCurveY(this.solveCurveX(t,e))};var a=o;function o(t,e){this.x=t,this.y=e}function s(t,e){if(Array.isArray(t)){if(!Array.isArray(e)||t.length!==e.length)return!1;for(var n=0;n=1)return 1;var e=t*t,n=e*t;return 4*(t<.5?n:3*(t-e)+n-.75)}function c(t,e,n,i){var a=new r(t,e,n,i);return function(t){return a.solve(t)}}o.prototype={clone:function(){return new o(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(t)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,e){return this.clone()._rotateAround(t,e)},matMult:function(t){return this.clone()._matMult(t)},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(t){return this.x===t.x&&this.y===t.y},dist:function(t){return Math.sqrt(this.distSqr(t))},distSqr:function(t){var e=t.x-this.x,n=t.y-this.y;return e*e+n*n},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(t){return Math.atan2(this.y-t.y,this.x-t.x)},angleWith:function(t){return this.angleWithSep(t.x,t.y)},angleWithSep:function(t,e){return Math.atan2(this.x*e-this.y*t,this.x*t+this.y*e)},_matMult:function(t){var e=t[0]*this.x+t[1]*this.y,n=t[2]*this.x+t[3]*this.y;return this.x=e,this.y=n,this},_add:function(t){return this.x+=t.x,this.y+=t.y,this},_sub:function(t){return this.x-=t.x,this.y-=t.y,this},_mult:function(t){return this.x*=t,this.y*=t,this},_div:function(t){return this.x/=t,this.y/=t,this},_multByPoint:function(t){return this.x*=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var e=Math.cos(t),n=Math.sin(t),r=e*this.x-n*this.y,i=n*this.x+e*this.y;return this.x=r,this.y=i,this},_rotateAround:function(t,e){var n=Math.cos(t),r=Math.sin(t),i=e.x+n*(this.x-e.x)-r*(this.y-e.y),a=e.y+r*(this.x-e.x)+n*(this.y-e.y);return this.x=i,this.y=a,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},o.convert=function(t){return t instanceof o?t:Array.isArray(t)?new o(t[0],t[1]):t};var u=c(.25,.1,.25,1);function f(t,e,n){return Math.min(n,Math.max(e,t))}function h(t,e,n){var r=n-e,i=((t-e)%r+r)%r+e;return i===e?n:i}function d(t,e,n){if(!t.length)return n(null,[]);var r=t.length,i=new Array(t.length),a=null;t.forEach((function(t,o){e(t,(function(t,e){t&&(a=t),i[o]=e,0===--r&&n(a,i)}))}))}function p(t){var e=[];for(var n in t)e.push(t[n]);return e}function g(t,e){var n=[];for(var r in t)r in e||n.push(r);return n}function v(t){for(var e=[],n=arguments.length-1;n-- >0;)e[n]=arguments[n+1];for(var r=0,i=e;r>e/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,t)}return t()}function w(t){return!!t&&/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(t)}function _(t,e){t.forEach((function(t){e[t]&&(e[t]=e[t].bind(e))}))}function k(t,e){return-1!==t.indexOf(e,t.length-e.length)}function T(t,e,n){var r={};for(var i in t)r[i]=e.call(n||this,t[i],i,t);return r}function M(t,e,n){var r={};for(var i in t)e.call(n||this,t[i],i,t)&&(r[i]=t[i]);return r}function A(t){return Array.isArray(t)?t.map(A):"object"===typeof t&&t?T(t,A):t}function S(t,e){for(var n=0;n=0)return!0;return!1}var E={};function C(t){E[t]||("undefined"!==typeof console&&console.warn(t),E[t]=!0)}function P(t,e,n){return(n.y-t.y)*(e.x-t.x)>(e.y-t.y)*(n.x-t.x)}function L(t){for(var e=0,n=0,r=t.length,i=r-1,a=void 0,o=void 0;n@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,n={};if(t.replace(e,(function(t,e,r,i){var a=r||i;return n[e]=!a||a.toLowerCase(),""})),n["max-age"]){var r=parseInt(n["max-age"],10);isNaN(r)?delete n["max-age"]:n["max-age"]=r}return n}var R=null;function z(t){if(null==R){var e=t.navigator?t.navigator.userAgent:null;R=!!t.safari||!(!e||!(/\b(iPad|iPhone|iPod)\b/.test(e)||e.match("Safari")&&!e.match("Chrome")))}return R}function N(t){try{var e=self[t];return e.setItem("_mapbox_test_",1),e.removeItem("_mapbox_test_"),!0}catch(n){return!1}}function j(t){return self.btoa(encodeURIComponent(t).replace(/%([0-9A-F]{2})/g,(function(t,e){return String.fromCharCode(Number("0x"+e))})))}function F(t){return decodeURIComponent(self.atob(t).split("").map((function(t){return"%"+("00"+t.charCodeAt(0).toString(16)).slice(-2)})).join(""))}var B,U,H,V,q=self.performance&&self.performance.now?self.performance.now.bind(self.performance):Date.now.bind(Date),G=self.requestAnimationFrame||self.mozRequestAnimationFrame||self.webkitRequestAnimationFrame||self.msRequestAnimationFrame,W=self.cancelAnimationFrame||self.mozCancelAnimationFrame||self.webkitCancelAnimationFrame||self.msCancelAnimationFrame,Y={now:q,frame:function(t){var e=G(t);return{cancel:function(){return W(e)}}},getImageData:function(t,e){void 0===e&&(e=0);var n=self.document.createElement("canvas"),r=n.getContext("2d");if(!r)throw new Error("failed to create canvas 2d context");return n.width=t.width,n.height=t.height,r.drawImage(t,0,0,t.width,t.height),r.getImageData(-e,-e,t.width+2*e,t.height+2*e)},resolveURL:function(t){return B||(B=self.document.createElement("a")),B.href=t,B.href},hardwareConcurrency:self.navigator.hardwareConcurrency||4,get devicePixelRatio(){return self.devicePixelRatio},get prefersReducedMotion(){return!!self.matchMedia&&(null==U&&(U=self.matchMedia("(prefers-reduced-motion: reduce)")),U.matches)}},$={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?0===this.API_URL.indexOf("https://api.mapbox.cn")?"https://events.mapbox.cn/events/v2":0===this.API_URL.indexOf("https://api.mapbox.com")?"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:J},K=!1,Z=!1;function J(t){!K&&V&&(Z?Q(t):H=t)}function Q(t){var e=t.createTexture();t.bindTexture(t.TEXTURE_2D,e);try{if(t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,V),t.isContextLost())return;X.supported=!0}catch(n){}t.deleteTexture(e),K=!0}self.document&&((V=self.document.createElement("img")).onload=function(){H&&Q(H),H=null,Z=!0},V.onerror=function(){K=!0,H=null},V.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");var tt="01";function et(){for(var t="1",e="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",n="",r=0;r<10;r++)n+=e[Math.floor(62*Math.random())];var i=432e5;return{token:[t,tt,n].join(""),tokenExpiresAt:Date.now()+i}}var nt=function(t,e){this._transformRequestFn=t,this._customAccessToken=e,this._createSkuToken()};function rt(t){return 0===t.indexOf("mapbox:")}nt.prototype._createSkuToken=function(){var t=et();this._skuToken=t.token,this._skuTokenExpiresAt=t.tokenExpiresAt},nt.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},nt.prototype.transformRequest=function(t,e){return this._transformRequestFn&&this._transformRequestFn(t,e)||{url:t}},nt.prototype.normalizeStyleURL=function(t,e){if(!rt(t))return t;var n=ct(t);return n.path="/styles/v1"+n.path,this._makeAPIURL(n,this._customAccessToken||e)},nt.prototype.normalizeGlyphsURL=function(t,e){if(!rt(t))return t;var n=ct(t);return n.path="/fonts/v1"+n.path,this._makeAPIURL(n,this._customAccessToken||e)},nt.prototype.normalizeSourceURL=function(t,e){if(!rt(t))return t;var n=ct(t);return n.path="/v4/"+n.authority+".json",n.params.push("secure"),this._makeAPIURL(n,this._customAccessToken||e)},nt.prototype.normalizeSpriteURL=function(t,e,n,r){var i=ct(t);return rt(t)?(i.path="/styles/v1"+i.path+"/sprite"+e+n,this._makeAPIURL(i,this._customAccessToken||r)):(i.path+=""+e+n,ut(i))},nt.prototype.normalizeTileURL=function(t,e){if(this._isSkuTokenExpired()&&this._createSkuToken(),t&&!rt(t))return t;var n=ct(t),r=/(\.(png|jpg)\d*)(?=$)/,i=/^.+\/v4\//,a=Y.devicePixelRatio>=2||512===e?"@2x":"",o=X.supported?".webp":"$1";n.path=n.path.replace(r,""+a+o),n.path=n.path.replace(i,"/"),n.path="/v4"+n.path;var s=this._customAccessToken||st(n.params)||$.ACCESS_TOKEN;return $.REQUIRE_ACCESS_TOKEN&&s&&this._skuToken&&n.params.push("sku="+this._skuToken),this._makeAPIURL(n,s)},nt.prototype.canonicalizeTileURL=function(t,e){var n="/v4/",r=/\.[\w]+$/,i=ct(t);if(!i.path.match(/(^\/v4\/)/)||!i.path.match(r))return t;var a="mapbox://tiles/";a+=i.path.replace(n,"");var o=i.params;return e&&(o=o.filter((function(t){return!t.match(/^access_token=/)}))),o.length&&(a+="?"+o.join("&")),a},nt.prototype.canonicalizeTileset=function(t,e){for(var n=!!e&&rt(e),r=[],i=0,a=t.tiles||[];i=1&&self.localStorage.setItem(e,JSON.stringify(this.eventData))}catch(r){C("Unable to write to LocalStorage")}},dt.prototype.processRequests=function(t){},dt.prototype.postEvent=function(t,e,r,i){var a=this;if($.EVENTS_URL){var o=ct($.EVENTS_URL);o.params.push("access_token="+(i||$.ACCESS_TOKEN||""));var s={event:this.type,created:new Date(t).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:n,skuId:tt,userId:this.anonId},l=e?v(s,e):s,c={url:ut(o),headers:{"Content-Type":"text/plain"},body:JSON.stringify([l])};this.pendingRequest=$t(c,(function(t){a.pendingRequest=null,r(t),a.saveEventData(),a.processRequests(i)}))}},dt.prototype.queueRequest=function(t,e){this.queue.push(t),this.processRequests(e)};var pt,gt,vt=function(t){function e(){t.call(this,"map.load"),this.success={},this.skuToken=""}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.postMapLoadEvent=function(t,e,n,r){this.skuToken=n,($.EVENTS_URL&&r||$.ACCESS_TOKEN&&Array.isArray(t)&&t.some((function(t){return rt(t)||at(t)})))&&this.queueRequest({id:e,timestamp:Date.now()},r)},e.prototype.processRequests=function(t){var e=this;if(!this.pendingRequest&&0!==this.queue.length){var n=this.queue.shift(),r=n.id,i=n.timestamp;r&&this.success[r]||(this.anonId||this.fetchEventData(),w(this.anonId)||(this.anonId=x()),this.postEvent(i,{skuToken:this.skuToken},(function(t){t||r&&(e.success[r]=!0)}),t))}},e}(dt),mt=function(t){function e(e){t.call(this,"appUserTurnstile"),this._customAccessToken=e}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.postTurnstileEvent=function(t,e){$.EVENTS_URL&&$.ACCESS_TOKEN&&Array.isArray(t)&&t.some((function(t){return rt(t)||at(t)}))&&this.queueRequest(Date.now(),e)},e.prototype.processRequests=function(t){var e=this;if(!this.pendingRequest&&0!==this.queue.length){this.anonId&&this.eventData.lastSuccess&&this.eventData.tokenU||this.fetchEventData();var n=ht($.ACCESS_TOKEN),r=n?n.u:$.ACCESS_TOKEN,i=r!==this.eventData.tokenU;w(this.anonId)||(this.anonId=x(),i=!0);var a=this.queue.shift();if(this.eventData.lastSuccess){var o=new Date(this.eventData.lastSuccess),s=new Date(a),l=(a-this.eventData.lastSuccess)/864e5;i=i||l>=1||l<-1||o.getDate()!==s.getDate()}else i=!0;if(!i)return this.processRequests();this.postEvent(a,{"enabled.telemetry":!1},(function(t){t||(e.eventData.lastSuccess=a,e.eventData.tokenU=r)}),t)}},e}(dt),yt=new mt,bt=yt.postTurnstileEvent.bind(yt),xt=new vt,wt=xt.postMapLoadEvent.bind(xt),_t="mapbox-tiles",kt=500,Tt=50,Mt=42e4;function At(){self.caches&&!pt&&(pt=self.caches.open(_t))}function St(t,e){if(void 0===gt)try{new Response(new ReadableStream),gt=!0}catch(n){gt=!1}gt?e(t.body):t.blob().then(e)}function Et(t,e,n){if(At(),pt){var r={status:e.status,statusText:e.statusText,headers:new self.Headers};e.headers.forEach((function(t,e){return r.headers.set(e,t)}));var i=D(e.headers.get("Cache-Control")||"");i["no-store"]||(i["max-age"]&&r.headers.set("Expires",new Date(n+1e3*i["max-age"]).toUTCString()),new Date(r.headers.get("Expires")).getTime()-nDate.now()&&!n["no-cache"]}var Ot,It=1/0;function Dt(t){++It>Tt&&(t.getActor().send("enforceCacheSizeLimit",kt),It=0)}function Rt(t){At(),pt&&pt.then((function(e){e.keys().then((function(n){for(var r=0;r=200&&n.status<300||0===n.status)&&null!==n.response){var r=n.response;if("json"===t.type)try{r=JSON.parse(n.response)}catch(i){return e(i)}e(null,r,n.getResponseHeader("Cache-Control"),n.getResponseHeader("Expires"))}else e(new Bt(n.statusText,n.status,t.url))},n.send(t.body),{cancel:function(){return n.abort()}}}var Gt=function(t,e){if(!Ht(t.url)){if(self.fetch&&self.Request&&self.AbortController&&self.Request.prototype.hasOwnProperty("signal"))return Vt(t,e);if(I()&&self.worker&&self.worker.actor){var n=!0;return self.worker.actor.send("getResource",t,e,void 0,n)}}return qt(t,e)},Wt=function(t,e){return Gt(v(t,{type:"json"}),e)},Yt=function(t,e){return Gt(v(t,{type:"arrayBuffer"}),e)},$t=function(t,e){return Gt(v(t,{method:"POST"}),e)};function Xt(t){var e=self.document.createElement("a");return e.href=t,e.protocol===self.document.location.protocol&&e.host===self.document.location.host}var Kt,Zt,Jt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function Qt(t,e,n,r){var i=new self.Image,a=self.URL;i.onload=function(){e(null,i),a.revokeObjectURL(i.src)},i.onerror=function(){return e(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 o=new self.Blob([new Uint8Array(t)],{type:"image/png"});i.cacheControl=n,i.expires=r,i.src=t.byteLength?a.createObjectURL(o):Jt}function te(t,e){var n=new self.Blob([new Uint8Array(t)],{type:"image/png"});self.createImageBitmap(n).then((function(t){e(null,t)})).catch((function(t){e(new Error("Could not load image because of "+t.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))}))}Kt=[],Zt=0;var ee=function t(e,n){if(X.supported&&(e.headers||(e.headers={}),e.headers.accept="image/webp,*/*"),Zt>=$.MAX_PARALLEL_IMAGE_REQUESTS){var r={requestParameters:e,callback:n,cancelled:!1,cancel:function(){this.cancelled=!0}};return Kt.push(r),r}Zt++;var i=!1,a=function(){if(!i)for(i=!0,Zt--;Kt.length&&Zt<$.MAX_PARALLEL_IMAGE_REQUESTS;){var e=Kt.shift(),n=e.requestParameters,r=e.callback;e.cancelled||(e.cancel=t(n,r).cancel)}},o=Yt(e,(function(t,e,r,i){a(),t?n(t):e&&(jt()?te(e,n):Qt(e,n,r,i))}));return{cancel:function(){o.cancel(),a()}}},ne=function(t,e){var n=self.document.createElement("video");n.muted=!0,n.onloadstart=function(){e(null,n)};for(var r=0;r0||this._oneTimeListeners&&this._oneTimeListeners[t]&&this._oneTimeListeners[t].length>0||this._eventedParent&&this._eventedParent.listens(t)},se.prototype.setEventedParent=function(t,e){return this._eventedParent=t,this._eventedParentData=e,this};var le={$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"}}},ce=function(t,e,n,r){this.message=(t?t+": ":"")+n,r&&(this.identifier=r),null!==e&&void 0!==e&&e.__line__&&(this.line=e.__line__)};function ue(t){var e=t.key,n=t.value;return n?[new ce(e,n,"constants have been deprecated as of v8")]:[]}function fe(t){for(var e=[],n=arguments.length-1;n-- >0;)e[n]=arguments[n+1];for(var r=0,i=e;r":"value"===t.itemType.kind?"array":"array<"+e+">"}return t.kind}var Ce=[ve,me,ye,be,xe,Me,we,Se(_e),Ae];function Pe(t,e){if("error"===e.kind)return null;if("array"===t.kind){if("array"===e.kind&&(0===e.N&&"value"===e.itemType.kind||!Pe(t.itemType,e.itemType))&&("number"!==typeof t.N||t.N===e.N))return null}else{if(t.kind===e.kind)return null;if("value"===t.kind)for(var n=0,r=Ce;n255?255:t}function i(t){return t<0?0:t>1?1:t}function a(t){return"%"===t[t.length-1]?r(parseFloat(t)/100*255):r(parseInt(t))}function o(t){return"%"===t[t.length-1]?i(parseFloat(t)/100):i(parseFloat(t))}function s(t,e,n){return n<0?n+=1:n>1&&(n-=1),6*n<1?t+(e-t)*n*6:2*n<1?e:3*n<2?t+(e-t)*(2/3-n)*6:t}function l(t){var e,i=t.replace(/ /g,"").toLowerCase();if(i in n)return n[i].slice();if("#"===i[0])return 4===i.length?(e=parseInt(i.substr(1),16))>=0&&e<=4095?[(3840&e)>>4|(3840&e)>>8,240&e|(240&e)>>4,15&e|(15&e)<<4,1]:null:7===i.length&&(e=parseInt(i.substr(1),16))>=0&&e<=16777215?[(16711680&e)>>16,(65280&e)>>8,255&e,1]:null;var l=i.indexOf("("),c=i.indexOf(")");if(-1!==l&&c+1===i.length){var u=i.substr(0,l),f=i.substr(l+1,c-(l+1)).split(","),h=1;switch(u){case"rgba":if(4!==f.length)return null;h=o(f.pop());case"rgb":return 3!==f.length?null:[a(f[0]),a(f[1]),a(f[2]),h];case"hsla":if(4!==f.length)return null;h=o(f.pop());case"hsl":if(3!==f.length)return null;var d=(parseFloat(f[0])%360+360)%360/360,p=o(f[1]),g=o(f[2]),v=g<=.5?g*(p+1):g+p-g*p,m=2*g-v;return[r(255*s(m,v,d+1/3)),r(255*s(m,v,d)),r(255*s(m,v,d-1/3)),h];default:return null}}return null}try{e.parseCSSColor=l}catch(c){}})),De=Ie.parseCSSColor,Re=function(t,e,n,r){void 0===r&&(r=1),this.r=t,this.g=e,this.b=n,this.a=r};Re.parse=function(t){if(t){if(t instanceof Re)return t;if("string"===typeof t){var e=De(t);if(e)return new Re(e[0]/255*e[3],e[1]/255*e[3],e[2]/255*e[3],e[3])}}},Re.prototype.toString=function(){var t=this.toArray(),e=t[0],n=t[1],r=t[2],i=t[3];return"rgba("+Math.round(e)+","+Math.round(n)+","+Math.round(r)+","+i+")"},Re.prototype.toArray=function(){var t=this,e=t.r,n=t.g,r=t.b,i=t.a;return 0===i?[0,0,0,0]:[255*e/i,255*n/i,255*r/i,i]},Re.black=new Re(0,0,0,1),Re.white=new Re(1,1,1,1),Re.transparent=new Re(0,0,0,0),Re.red=new Re(1,0,0,1);var ze=function(t,e,n){this.sensitivity=t?e?"variant":"case":e?"accent":"base",this.locale=n,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};ze.prototype.compare=function(t,e){return this.collator.compare(t,e)},ze.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var Ne=function(t,e,n,r,i){this.text=t,this.image=e,this.scale=n,this.fontStack=r,this.textColor=i},je=function(t){this.sections=t};je.fromString=function(t){return new je([new Ne(t,null,null,null,null)])},je.prototype.isEmpty=function(){return 0===this.sections.length||!this.sections.some((function(t){return 0!==t.text.length||t.image&&0!==t.image.name.length}))},je.factory=function(t){return t instanceof je?t:je.fromString(t)},je.prototype.toString=function(){return 0===this.sections.length?"":this.sections.map((function(t){return t.text})).join("")},je.prototype.serialize=function(){for(var t=["format"],e=0,n=this.sections;e=0&&t<=255&&"number"===typeof e&&e>=0&&e<=255&&"number"===typeof n&&n>=0&&n<=255?"undefined"===typeof r||"number"===typeof r&&r>=0&&r<=1?null:"Invalid rgba value ["+[t,e,n,r].join(", ")+"]: 'a' must be between 0 and 1.":"Invalid rgba value ["+("number"===typeof r?[t,e,n,r]:[t,e,n]).join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}function Ue(t){if(null===t)return!0;if("string"===typeof t)return!0;if("boolean"===typeof t)return!0;if("number"===typeof t)return!0;if(t instanceof Re)return!0;if(t instanceof ze)return!0;if(t instanceof je)return!0;if(t instanceof Fe)return!0;if(Array.isArray(t)){for(var e=0,n=t;e2){var s=t[1];if("string"!==typeof s||!(s in We)||"object"===s)return e.error('The item type argument of "array" must be one of string, number, boolean',1);a=We[s],r++}else a=_e;if(t.length>3){if(null!==t[2]&&("number"!==typeof t[2]||t[2]<0||t[2]!==Math.floor(t[2])))return e.error('The length argument to "array" must be a positive integer literal',2);o=t[2],r++}n=Se(a,o)}else n=We[i];for(var l=[];r1)&&e.push(r)}}return e.concat(this.args.map((function(t){return t.serialize()})))};var $e=function(t){this.type=Me,this.sections=t};$e.parse=function(t,e){if(t.length<2)return e.error("Expected at least one argument.");var n=t[1];if(!Array.isArray(n)&&"object"===typeof n)return e.error("First argument must be an image or text section.");for(var r=[],i=!1,a=1;a<=t.length-1;++a){var o=t[a];if(i&&"object"===typeof o&&!Array.isArray(o)){i=!1;var s=null;if(o["font-scale"]&&!(s=e.parse(o["font-scale"],1,me)))return null;var l=null;if(o["text-font"]&&!(l=e.parse(o["text-font"],1,Se(ye))))return null;var c=null;if(o["text-color"]&&!(c=e.parse(o["text-color"],1,xe)))return null;var u=r[r.length-1];u.scale=s,u.font=l,u.textColor=c}else{var f=e.parse(t[a],1,_e);if(!f)return null;var h=f.type.kind;if("string"!==h&&"value"!==h&&"null"!==h&&"resolvedImage"!==h)return e.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");i=!0,r.push({content:f,scale:null,font:null,textColor:null})}}return new $e(r)},$e.prototype.evaluate=function(t){var e=function(e){var n=e.content.evaluate(t);return He(n)===Ae?new Ne("",n,null,null,null):new Ne(Ve(n),null,e.scale?e.scale.evaluate(t):null,e.font?e.font.evaluate(t).join(","):null,e.textColor?e.textColor.evaluate(t):null)};return new je(this.sections.map(e))},$e.prototype.eachChild=function(t){for(var e=0,n=this.sections;e-1),n},Xe.prototype.eachChild=function(t){t(this.input)},Xe.prototype.outputDefined=function(){return!1},Xe.prototype.serialize=function(){return["image",this.input.serialize()]};var Ke={"to-boolean":be,"to-color":xe,"to-number":me,"to-string":ye},Ze=function(t,e){this.type=t,this.args=e};Ze.parse=function(t,e){if(t.length<2)return e.error("Expected at least one argument.");var n=t[0];if(("to-boolean"===n||"to-string"===n)&&2!==t.length)return e.error("Expected one argument.");for(var r=Ke[n],i=[],a=1;a4?"Invalid rbga value "+JSON.stringify(e)+": expected an array containing either three or four numeric values.":Be(e[0],e[1],e[2],e[3])))return new Re(e[0]/255,e[1]/255,e[2]/255,e[3])}throw new Ge(n||"Could not parse color from value '"+("string"===typeof e?e:String(JSON.stringify(e)))+"'")}if("number"===this.type.kind){for(var o=null,s=0,l=this.args;s=e[2])&&!(t[1]<=e[1])&&!(t[3]>=e[3])}function cn(t,e){var n=on(t[0]),r=sn(t[1]),i=Math.pow(2,e.z);return[Math.round(n*i*rn),Math.round(r*i*rn)]}function un(t,e,n){var r=t[0]-e[0],i=t[1]-e[1],a=t[0]-n[0],o=t[1]-n[1];return r*o-a*i===0&&r*a<=0&&i*o<=0}function fn(t,e,n){return e[1]>t[1]!==n[1]>t[1]&&t[0]<(n[0]-e[0])*(t[1]-e[1])/(n[1]-e[1])+e[0]}function hn(t,e){for(var n=!1,r=0,i=e.length;r0&&f<0||u<0&&f>0}function vn(t,e,n,r){var i=[e[0]-t[0],e[1]-t[1]];return 0!==pn([r[0]-n[0],r[1]-n[1]],i)&&!(!gn(t,e,n,r)||!gn(n,r,t,e))}function mn(t,e,n){for(var r=0,i=n;rn[2]){var i=.5*r,a=t[0]-n[0]>i?-r:n[0]-t[0]>i?r:0;0===a&&(a=t[0]-n[2]>i?-r:n[2]-t[0]>i?r:0),t[0]+=a}an(e,t)}function kn(t){t[0]=t[1]=1/0,t[2]=t[3]=-1/0}function Tn(t,e,n,r){for(var i=Math.pow(2,r.z)*rn,a=[r.x*rn,r.y*rn],o=[],s=0,l=t;s=0)return!1;var n=!0;return t.eachChild((function(t){n&&!Ln(t,e)&&(n=!1)})),n}En.parse=function(t,e){if(2!==t.length)return e.error("'within' expression requires exactly one argument, but found "+(t.length-1)+" instead.");if(Ue(t[1])){var n=t[1];if("FeatureCollection"===n.type)for(var r=0;re))throw new Ge("Input is not a number.");o=s-1}return 0}In.prototype.parse=function(t,e,n,r,i){return void 0===i&&(i={}),e?this.concat(e,n,r)._parse(t,i):this._parse(t,i)},In.prototype._parse=function(t,e){function n(t,e,n){return"assert"===n?new Ye(e,[t]):"coerce"===n?new Ze(e,[t]):t}if(null!==t&&"string"!==typeof t&&"boolean"!==typeof t&&"number"!==typeof t||(t=["literal",t]),Array.isArray(t)){if(0===t.length)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var r=t[0];if("string"!==typeof r)return this.error("Expression name must be a string, but found "+typeof r+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var i=this.registry[r];if(i){var a=i.parse(t,this);if(!a)return null;if(this.expectedType){var o=this.expectedType,s=a.type;if("string"!==o.kind&&"number"!==o.kind&&"boolean"!==o.kind&&"object"!==o.kind&&"array"!==o.kind||"value"!==s.kind)if("color"!==o.kind&&"formatted"!==o.kind&&"resolvedImage"!==o.kind||"value"!==s.kind&&"string"!==s.kind){if(this.checkSubtype(o,s))return null}else a=n(a,o,e.typeAnnotation||"coerce");else a=n(a,o,e.typeAnnotation||"assert")}if(!(a instanceof qe)&&"resolvedImage"!==a.type.kind&&Dn(a)){var l=new Qe;try{a=new qe(a.type,a.evaluate(l))}catch(c){return this.error(c.message),null}}return a}return this.error('Unknown expression "'+r+'". If you wanted a literal array, use ["literal", [...]].',0)}return"undefined"===typeof t?this.error("'undefined' value invalid. Use null instead."):"object"===typeof t?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof t+" instead.")},In.prototype.concat=function(t,e,n){var r="number"===typeof t?this.path.concat(t):this.path,i=n?this.scope.concat(n):this.scope;return new In(this.registry,r,e||null,i,this.errors)},In.prototype.error=function(t){for(var e=[],n=arguments.length-1;n-- >0;)e[n]=arguments[n+1];var r=""+this.key+e.map((function(t){return"["+t+"]"})).join("");this.errors.push(new pe(r,t))},In.prototype.checkSubtype=function(t,e){var n=Pe(t,e);return n&&this.error(n),n};var zn=function(t,e,n){this.type=t,this.input=e,this.labels=[],this.outputs=[];for(var r=0,i=n;r=o)return e.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',l);var u=e.parse(s,c,i);if(!u)return null;i=i||u.type,r.push([o,u])}return new zn(i,n,r)},zn.prototype.evaluate=function(t){var e=this.labels,n=this.outputs;if(1===e.length)return n[0].evaluate(t);var r=this.input.evaluate(t);if(r<=e[0])return n[0].evaluate(t);var i=e.length;return r>=e[i-1]?n[i-1].evaluate(t):n[Rn(e,r)].evaluate(t)},zn.prototype.eachChild=function(t){t(this.input);for(var e=0,n=this.outputs;e0&&t.push(this.labels[e]),t.push(this.outputs[e].serialize());return t};var Bn=Object.freeze({__proto__:null,number:Nn,color:jn,array:Fn}),Un=.95047,Hn=1,Vn=1.08883,qn=4/29,Gn=6/29,Wn=3*Gn*Gn,Yn=Gn*Gn*Gn,$n=Math.PI/180,Xn=180/Math.PI;function Kn(t){return t>Yn?Math.pow(t,1/3):t/Wn+qn}function Zn(t){return t>Gn?t*t*t:Wn*(t-qn)}function Jn(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function Qn(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function tr(t){var e=Qn(t.r),n=Qn(t.g),r=Qn(t.b),i=Kn((.4124564*e+.3575761*n+.1804375*r)/Un),a=Kn((.2126729*e+.7151522*n+.072175*r)/Hn);return{l:116*a-16,a:500*(i-a),b:200*(a-Kn((.0193339*e+.119192*n+.9503041*r)/Vn)),alpha:t.a}}function er(t){var e=(t.l+16)/116,n=isNaN(t.a)?e:e+t.a/500,r=isNaN(t.b)?e:e-t.b/200;return e=Hn*Zn(e),n=Un*Zn(n),r=Vn*Zn(r),new Re(Jn(3.2404542*n-1.5371385*e-.4985314*r),Jn(-.969266*n+1.8760108*e+.041556*r),Jn(.0556434*n-.2040259*e+1.0572252*r),t.alpha)}function nr(t,e,n){return{l:Nn(t.l,e.l,n),a:Nn(t.a,e.a,n),b:Nn(t.b,e.b,n),alpha:Nn(t.alpha,e.alpha,n)}}function rr(t){var e=tr(t),n=e.l,r=e.a,i=e.b,a=Math.atan2(i,r)*Xn;return{h:a<0?a+360:a,c:Math.sqrt(r*r+i*i),l:n,alpha:t.a}}function ir(t){var e=t.h*$n,n=t.c;return er({l:t.l,a:Math.cos(e)*n,b:Math.sin(e)*n,alpha:t.alpha})}function ar(t,e,n){var r=e-t;return t+n*(r>180||r<-180?r-360*Math.round(r/360):r)}function or(t,e,n){return{h:ar(t.h,e.h,n),c:Nn(t.c,e.c,n),l:Nn(t.l,e.l,n),alpha:Nn(t.alpha,e.alpha,n)}}var sr={forward:tr,reverse:er,interpolate:nr},lr={forward:rr,reverse:ir,interpolate:or},cr=Object.freeze({__proto__:null,lab:sr,hcl:lr}),ur=function(t,e,n,r,i){this.type=t,this.operator=e,this.interpolation=n,this.input=r,this.labels=[],this.outputs=[];for(var a=0,o=i;a1})))return e.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);r={name:"cubic-bezier",controlPoints:s}}if(t.length-1<4)return e.error("Expected at least 4 arguments, but found only "+(t.length-1)+".");if((t.length-1)%2!==0)return e.error("Expected an even number of arguments.");if(!(i=e.parse(i,2,me)))return null;var l=[],c=null;"interpolate-hcl"===n||"interpolate-lab"===n?c=xe:e.expectedType&&"value"!==e.expectedType.kind&&(c=e.expectedType);for(var u=0;u=f)return e.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',d);var g=e.parse(h,p,c);if(!g)return null;c=c||g.type,l.push([f,g])}return"number"===c.kind||"color"===c.kind||"array"===c.kind&&"number"===c.itemType.kind&&"number"===typeof c.N?new ur(c,n,r,i,l):e.error("Type "+Ee(c)+" is not interpolatable.")},ur.prototype.evaluate=function(t){var e=this.labels,n=this.outputs;if(1===e.length)return n[0].evaluate(t);var r=this.input.evaluate(t);if(r<=e[0])return n[0].evaluate(t);var i=e.length;if(r>=e[i-1])return n[i-1].evaluate(t);var a=Rn(e,r),o=e[a],s=e[a+1],l=ur.interpolationFactor(this.interpolation,r,o,s),c=n[a].evaluate(t),u=n[a+1].evaluate(t);return"interpolate"===this.operator?Bn[this.type.kind.toLowerCase()](c,u,l):"interpolate-hcl"===this.operator?lr.reverse(lr.interpolate(lr.forward(c),lr.forward(u),l)):sr.reverse(sr.interpolate(sr.forward(c),sr.forward(u),l))},ur.prototype.eachChild=function(t){t(this.input);for(var e=0,n=this.outputs;e=n.length)throw new Ge("Array index out of bounds: "+e+" > "+(n.length-1)+".");if(e!==Math.floor(e))throw new Ge("Array index must be an integer, but found "+e+" instead.");return n[e]},pr.prototype.eachChild=function(t){t(this.index),t(this.input)},pr.prototype.outputDefined=function(){return!1},pr.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var gr=function(t,e){this.type=be,this.needle=t,this.haystack=e};gr.parse=function(t,e){if(3!==t.length)return e.error("Expected 2 arguments, but found "+(t.length-1)+" instead.");var n=e.parse(t[1],1,_e),r=e.parse(t[2],2,_e);return n&&r?Le(n.type,[be,ye,me,ve,_e])?new gr(n,r):e.error("Expected first argument to be of type boolean, string, number or null, but found "+Ee(n.type)+" instead"):null},gr.prototype.evaluate=function(t){var e=this.needle.evaluate(t),n=this.haystack.evaluate(t);if(!n)return!1;if(!Oe(e,["boolean","string","number","null"]))throw new Ge("Expected first argument to be of type boolean, string, number or null, but found "+Ee(He(e))+" instead.");if(!Oe(n,["string","array"]))throw new Ge("Expected second argument to be of type array or string, but found "+Ee(He(n))+" instead.");return n.indexOf(e)>=0},gr.prototype.eachChild=function(t){t(this.needle),t(this.haystack)},gr.prototype.outputDefined=function(){return!0},gr.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var vr=function(t,e,n){this.type=me,this.needle=t,this.haystack=e,this.fromIndex=n};vr.parse=function(t,e){if(t.length<=2||t.length>=5)return e.error("Expected 3 or 4 arguments, but found "+(t.length-1)+" instead.");var n=e.parse(t[1],1,_e),r=e.parse(t[2],2,_e);if(!n||!r)return null;if(!Le(n.type,[be,ye,me,ve,_e]))return e.error("Expected first argument to be of type boolean, string, number or null, but found "+Ee(n.type)+" instead");if(4===t.length){var i=e.parse(t[3],3,me);return i?new vr(n,r,i):null}return new vr(n,r)},vr.prototype.evaluate=function(t){var e=this.needle.evaluate(t),n=this.haystack.evaluate(t);if(!Oe(e,["boolean","string","number","null"]))throw new Ge("Expected first argument to be of type boolean, string, number or null, but found "+Ee(He(e))+" instead.");if(!Oe(n,["string","array"]))throw new Ge("Expected second argument to be of type array or string, but found "+Ee(He(n))+" instead.");if(this.fromIndex){var r=this.fromIndex.evaluate(t);return n.indexOf(e,r)}return n.indexOf(e)},vr.prototype.eachChild=function(t){t(this.needle),t(this.haystack),this.fromIndex&&t(this.fromIndex)},vr.prototype.outputDefined=function(){return!1},vr.prototype.serialize=function(){if(null!=this.fromIndex&&void 0!==this.fromIndex){var t=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),t]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var mr=function(t,e,n,r,i,a){this.inputType=t,this.type=e,this.input=n,this.cases=r,this.outputs=i,this.otherwise=a};mr.parse=function(t,e){if(t.length<5)return e.error("Expected at least 4 arguments, but found only "+(t.length-1)+".");if(t.length%2!==1)return e.error("Expected an even number of arguments.");var n,r;e.expectedType&&"value"!==e.expectedType.kind&&(r=e.expectedType);for(var i={},a=[],o=2;oNumber.MAX_SAFE_INTEGER)return c.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if("number"===typeof h&&Math.floor(h)!==h)return c.error("Numeric branch labels must be integer values.");if(n){if(c.checkSubtype(n,He(h)))return null}else n=He(h);if("undefined"!==typeof i[String(h)])return c.error("Branch labels must be unique.");i[String(h)]=a.length}var d=e.parse(l,o,r);if(!d)return null;r=r||d.type,a.push(d)}var p=e.parse(t[1],1,_e);if(!p)return null;var g=e.parse(t[t.length-1],t.length-1,r);return g?"value"!==p.type.kind&&e.concat(1).checkSubtype(n,p.type)?null:new mr(n,r,p,i,a,g):null},mr.prototype.evaluate=function(t){var e=this.input.evaluate(t);return(He(e)===this.inputType&&this.outputs[this.cases[e]]||this.otherwise).evaluate(t)},mr.prototype.eachChild=function(t){t(this.input),this.outputs.forEach(t),t(this.otherwise)},mr.prototype.outputDefined=function(){return this.outputs.every((function(t){return t.outputDefined()}))&&this.otherwise.outputDefined()},mr.prototype.serialize=function(){for(var t=this,e=["match",this.input.serialize()],n=[],r={},i=0,a=Object.keys(this.cases).sort();in}function Mr(t,e,n){return e<=n}function Ar(t,e,n){return e>=n}function Sr(t,e,n,r){return 0===r.compare(e,n)}function Er(t,e,n,r){return!Sr(t,e,n,r)}function Cr(t,e,n,r){return r.compare(e,n)<0}function Pr(t,e,n,r){return r.compare(e,n)>0}function Lr(t,e,n,r){return r.compare(e,n)<=0}function Or(t,e,n,r){return r.compare(e,n)>=0}function Ir(t,e,n){var r="=="!==t&&"!="!==t;return function(){function i(t,e,n){this.type=be,this.lhs=t,this.rhs=e,this.collator=n,this.hasUntypedArgument="value"===t.type.kind||"value"===e.type.kind}return i.parse=function(t,e){if(3!==t.length&&4!==t.length)return e.error("Expected two or three arguments.");var n=t[0],a=e.parse(t[1],1,_e);if(!a)return null;if(!xr(n,a.type))return e.concat(1).error('"'+n+"\" comparisons are not supported for type '"+Ee(a.type)+"'.");var o=e.parse(t[2],2,_e);if(!o)return null;if(!xr(n,o.type))return e.concat(2).error('"'+n+"\" comparisons are not supported for type '"+Ee(o.type)+"'.");if(a.type.kind!==o.type.kind&&"value"!==a.type.kind&&"value"!==o.type.kind)return e.error("Cannot compare types '"+Ee(a.type)+"' and '"+Ee(o.type)+"'.");r&&("value"===a.type.kind&&"value"!==o.type.kind?a=new Ye(o.type,[a]):"value"!==a.type.kind&&"value"===o.type.kind&&(o=new Ye(a.type,[o])));var s=null;if(4===t.length){if("string"!==a.type.kind&&"string"!==o.type.kind&&"value"!==a.type.kind&&"value"!==o.type.kind)return e.error("Cannot use collator to compare non-string types.");if(!(s=e.parse(t[3],3,Te)))return null}return new i(a,o,s)},i.prototype.evaluate=function(i){var a=this.lhs.evaluate(i),o=this.rhs.evaluate(i);if(r&&this.hasUntypedArgument){var s=He(a),l=He(o);if(s.kind!==l.kind||"string"!==s.kind&&"number"!==s.kind)throw new Ge('Expected arguments for "'+t+'" to be (string, string) or (number, number), but found ('+s.kind+", "+l.kind+") instead.")}if(this.collator&&!r&&this.hasUntypedArgument){var c=He(a),u=He(o);if("string"!==c.kind||"string"!==u.kind)return e(i,a,o)}return this.collator?n(i,a,o,this.collator.evaluate(i)):e(i,a,o)},i.prototype.eachChild=function(t){t(this.lhs),t(this.rhs),this.collator&&t(this.collator)},i.prototype.outputDefined=function(){return!0},i.prototype.serialize=function(){var e=[t];return this.eachChild((function(t){e.push(t.serialize())})),e},i}()}br.parse=function(t,e){if(t.length<=2||t.length>=5)return e.error("Expected 3 or 4 arguments, but found "+(t.length-1)+" instead.");var n=e.parse(t[1],1,_e),r=e.parse(t[2],2,me);if(!n||!r)return null;if(!Le(n.type,[Se(_e),ye,_e]))return e.error("Expected first argument to be of type array or string, but found "+Ee(n.type)+" instead");if(4===t.length){var i=e.parse(t[3],3,me);return i?new br(n.type,n,r,i):null}return new br(n.type,n,r)},br.prototype.evaluate=function(t){var e=this.input.evaluate(t),n=this.beginIndex.evaluate(t);if(!Oe(e,["string","array"]))throw new Ge("Expected first argument to be of type array or string, but found "+Ee(He(e))+" instead.");if(this.endIndex){var r=this.endIndex.evaluate(t);return e.slice(n,r)}return e.slice(n)},br.prototype.eachChild=function(t){t(this.input),t(this.beginIndex),this.endIndex&&t(this.endIndex)},br.prototype.outputDefined=function(){return!1},br.prototype.serialize=function(){if(null!=this.endIndex&&void 0!==this.endIndex){var t=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),t]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};var Dr=Ir("==",wr,Sr),Rr=Ir("!=",_r,Er),zr=Ir("<",kr,Cr),Nr=Ir(">",Tr,Pr),jr=Ir("<=",Mr,Lr),Fr=Ir(">=",Ar,Or),Br=function(t,e,n,r,i){this.type=ye,this.number=t,this.locale=e,this.currency=n,this.minFractionDigits=r,this.maxFractionDigits=i};Br.parse=function(t,e){if(3!==t.length)return e.error("Expected two arguments.");var n=e.parse(t[1],1,me);if(!n)return null;var r=t[2];if("object"!==typeof r||Array.isArray(r))return e.error("NumberFormat options argument must be an object.");var i=null;if(r.locale&&!(i=e.parse(r.locale,1,ye)))return null;var a=null;if(r.currency&&!(a=e.parse(r.currency,1,ye)))return null;var o=null;if(r["min-fraction-digits"]&&!(o=e.parse(r["min-fraction-digits"],1,me)))return null;var s=null;return r["max-fraction-digits"]&&!(s=e.parse(r["max-fraction-digits"],1,me))?null:new Br(n,i,a,o,s)},Br.prototype.evaluate=function(t){return new Intl.NumberFormat(this.locale?this.locale.evaluate(t):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(t):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(t):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(t):void 0}).format(this.number.evaluate(t))},Br.prototype.eachChild=function(t){t(this.number),this.locale&&t(this.locale),this.currency&&t(this.currency),this.minFractionDigits&&t(this.minFractionDigits),this.maxFractionDigits&&t(this.maxFractionDigits)},Br.prototype.outputDefined=function(){return!1},Br.prototype.serialize=function(){var t={};return this.locale&&(t.locale=this.locale.serialize()),this.currency&&(t.currency=this.currency.serialize()),this.minFractionDigits&&(t["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(t["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),t]};var Ur=function(t){this.type=me,this.input=t};Ur.parse=function(t,e){if(2!==t.length)return e.error("Expected 1 argument, but found "+(t.length-1)+" instead.");var n=e.parse(t[1],1);return n?"array"!==n.type.kind&&"string"!==n.type.kind&&"value"!==n.type.kind?e.error("Expected argument of type string or array, but found "+Ee(n.type)+" instead."):new Ur(n):null},Ur.prototype.evaluate=function(t){var e=this.input.evaluate(t);if("string"===typeof e)return e.length;if(Array.isArray(e))return e.length;throw new Ge("Expected value to be of type string or array, but found "+Ee(He(e))+" instead.")},Ur.prototype.eachChild=function(t){t(this.input)},Ur.prototype.outputDefined=function(){return!1},Ur.prototype.serialize=function(){var t=["length"];return this.eachChild((function(e){t.push(e.serialize())})),t};var Hr={"==":Dr,"!=":Rr,">":Nr,"<":zr,">=":Fr,"<=":jr,array:Ye,at:pr,boolean:Ye,case:yr,coalesce:hr,collator:nn,format:$e,image:Xe,in:gr,"index-of":vr,interpolate:ur,"interpolate-hcl":ur,"interpolate-lab":ur,length:Ur,let:dr,literal:qe,match:mr,number:Ye,"number-format":Br,object:Ye,slice:br,step:zn,string:Ye,"to-boolean":Ze,"to-color":Ze,"to-number":Ze,"to-string":Ze,var:On,within:En};function Vr(t,e){var n=e[0],r=e[1],i=e[2],a=e[3];n=n.evaluate(t),r=r.evaluate(t),i=i.evaluate(t);var o=a?a.evaluate(t):1,s=Be(n,r,i,o);if(s)throw new Ge(s);return new Re(n/255*o,r/255*o,i/255*o,o)}function qr(t,e){return t in e}function Gr(t,e){var n=e[t];return"undefined"===typeof n?null:n}function Wr(t,e,n,r){for(;n<=r;){var i=n+r>>1;if(e[i]===t)return!0;e[i]>t?r=i-1:n=i+1}return!1}function Yr(t){return{type:t}}function $r(t){return{result:"success",value:t}}function Xr(t){return{result:"error",value:t}}function Kr(t){return"data-driven"===t["property-type"]||"cross-faded-data-driven"===t["property-type"]}function Zr(t){return!!t.expression&&t.expression.parameters.indexOf("zoom")>-1}function Jr(t){return!!t.expression&&t.expression.interpolated}function Qr(t){return t instanceof Number?"number":t instanceof String?"string":t instanceof Boolean?"boolean":Array.isArray(t)?"array":null===t?"null":typeof t}function ti(t){return"object"===typeof t&&null!==t&&!Array.isArray(t)}function ei(t){return t}function ni(t,e){var n,r,i,a="color"===e.type,o=t.stops&&"object"===typeof t.stops[0][0],s=o||void 0!==t.property,l=o||!s,c=t.type||(Jr(e)?"exponential":"interval");if(a&&((t=fe({},t)).stops&&(t.stops=t.stops.map((function(t){return[t[0],Re.parse(t[1])]}))),t.default?t.default=Re.parse(t.default):t.default=Re.parse(e.default)),t.colorSpace&&"rgb"!==t.colorSpace&&!cr[t.colorSpace])throw new Error("Unknown color space: "+t.colorSpace);if("exponential"===c)n=oi;else if("interval"===c)n=ai;else if("categorical"===c){n=ii,r=Object.create(null);for(var u=0,f=t.stops;u=t.stops[r-1][0])return t.stops[r-1][1];var i=Rn(t.stops.map((function(t){return t[0]})),n);return t.stops[i][1]}function oi(t,e,n){var r=void 0!==t.base?t.base:1;if("number"!==Qr(n))return ri(t.default,e.default);var i=t.stops.length;if(1===i)return t.stops[0][1];if(n<=t.stops[0][0])return t.stops[0][1];if(n>=t.stops[i-1][0])return t.stops[i-1][1];var a=Rn(t.stops.map((function(t){return t[0]})),n),o=li(n,r,t.stops[a][0],t.stops[a+1][0]),s=t.stops[a][1],l=t.stops[a+1][1],c=Bn[e.type]||ei;if(t.colorSpace&&"rgb"!==t.colorSpace){var u=cr[t.colorSpace];c=function(t,e){return u.reverse(u.interpolate(u.forward(t),u.forward(e),o))}}return"function"===typeof s.evaluate?{evaluate:function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var n=s.evaluate.apply(void 0,t),r=l.evaluate.apply(void 0,t);if(void 0!==n&&void 0!==r)return c(n,r,o)}}:c(s,l,o)}function si(t,e,n){return"color"===e.type?n=Re.parse(n):"formatted"===e.type?n=je.fromString(n.toString()):"resolvedImage"===e.type?n=Fe.fromString(n.toString()):Qr(n)===e.type||"enum"===e.type&&e.values[n]||(n=void 0),ri(n,t.default,e.default)}function li(t,e,n,r){var i=r-n,a=t-n;return 0===i?0:1===e?a/i:(Math.pow(e,a)-1)/(Math.pow(e,i)-1)}tn.register(Hr,{error:[ke,[ye],function(t,e){var n=e[0];throw new Ge(n.evaluate(t))}],typeof:[ye,[_e],function(t,e){return Ee(He(e[0].evaluate(t)))}],"to-rgba":[Se(me,4),[xe],function(t,e){return e[0].evaluate(t).toArray()}],rgb:[xe,[me,me,me],Vr],rgba:[xe,[me,me,me,me],Vr],has:{type:be,overloads:[[[ye],function(t,e){return qr(e[0].evaluate(t),t.properties())}],[[ye,we],function(t,e){var n=e[0],r=e[1];return qr(n.evaluate(t),r.evaluate(t))}]]},get:{type:_e,overloads:[[[ye],function(t,e){return Gr(e[0].evaluate(t),t.properties())}],[[ye,we],function(t,e){var n=e[0],r=e[1];return Gr(n.evaluate(t),r.evaluate(t))}]]},"feature-state":[_e,[ye],function(t,e){return Gr(e[0].evaluate(t),t.featureState||{})}],properties:[we,[],function(t){return t.properties()}],"geometry-type":[ye,[],function(t){return t.geometryType()}],id:[_e,[],function(t){return t.id()}],zoom:[me,[],function(t){return t.globals.zoom}],"heatmap-density":[me,[],function(t){return t.globals.heatmapDensity||0}],"line-progress":[me,[],function(t){return t.globals.lineProgress||0}],accumulated:[_e,[],function(t){return void 0===t.globals.accumulated?null:t.globals.accumulated}],"+":[me,Yr(me),function(t,e){for(var n=0,r=0,i=e;r":[be,[ye,_e],function(t,e){var n=e[0],r=e[1],i=t.properties()[n.value],a=r.value;return typeof i===typeof a&&i>a}],"filter-id->":[be,[_e],function(t,e){var n=e[0],r=t.id(),i=n.value;return typeof r===typeof i&&r>i}],"filter-<=":[be,[ye,_e],function(t,e){var n=e[0],r=e[1],i=t.properties()[n.value],a=r.value;return typeof i===typeof a&&i<=a}],"filter-id-<=":[be,[_e],function(t,e){var n=e[0],r=t.id(),i=n.value;return typeof r===typeof i&&r<=i}],"filter->=":[be,[ye,_e],function(t,e){var n=e[0],r=e[1],i=t.properties()[n.value],a=r.value;return typeof i===typeof a&&i>=a}],"filter-id->=":[be,[_e],function(t,e){var n=e[0],r=t.id(),i=n.value;return typeof r===typeof i&&r>=i}],"filter-has":[be,[_e],function(t,e){return e[0].value in t.properties()}],"filter-has-id":[be,[],function(t){return null!==t.id()&&void 0!==t.id()}],"filter-type-in":[be,[Se(ye)],function(t,e){return e[0].value.indexOf(t.geometryType())>=0}],"filter-id-in":[be,[Se(_e)],function(t,e){return e[0].value.indexOf(t.id())>=0}],"filter-in-small":[be,[ye,Se(_e)],function(t,e){var n=e[0];return e[1].value.indexOf(t.properties()[n.value])>=0}],"filter-in-large":[be,[ye,Se(_e)],function(t,e){var n=e[0],r=e[1];return Wr(t.properties()[n.value],r.value,0,r.value.length-1)}],all:{type:be,overloads:[[[be,be],function(t,e){var n=e[0],r=e[1];return n.evaluate(t)&&r.evaluate(t)}],[Yr(be),function(t,e){for(var n=0,r=e;n0&&"string"===typeof t[0]&&t[0]in Hr}function fi(t,e){var n=new In(Hr,[],e?yi(e):void 0),r=n.parse(t,void 0,void 0,void 0,e&&"string"===e.type?{typeAnnotation:"coerce"}:void 0);return r?$r(new ci(r,e)):Xr(n.errors)}ci.prototype.evaluateWithoutErrorHandling=function(t,e,n,r,i,a){return this._evaluator.globals=t,this._evaluator.feature=e,this._evaluator.featureState=n,this._evaluator.canonical=r,this._evaluator.availableImages=i||null,this._evaluator.formattedSection=a,this.expression.evaluate(this._evaluator)},ci.prototype.evaluate=function(t,e,n,r,i,a){this._evaluator.globals=t,this._evaluator.feature=e||null,this._evaluator.featureState=n||null,this._evaluator.canonical=r,this._evaluator.availableImages=i||null,this._evaluator.formattedSection=a||null;try{var o=this.expression.evaluate(this._evaluator);if(null===o||void 0===o||"number"===typeof o&&o!==o)return this._defaultValue;if(this._enumValues&&!(o in this._enumValues))throw new Ge("Expected value to be one of "+Object.keys(this._enumValues).map((function(t){return JSON.stringify(t)})).join(", ")+", but found "+JSON.stringify(o)+" instead.");return o}catch(s){return this._warningHistory[s.message]||(this._warningHistory[s.message]=!0,"undefined"!==typeof console&&console.warn(s.message)),this._defaultValue}};var hi=function(t,e){this.kind=t,this._styleExpression=e,this.isStateDependent="constant"!==t&&!Pn(e.expression)};hi.prototype.evaluateWithoutErrorHandling=function(t,e,n,r,i,a){return this._styleExpression.evaluateWithoutErrorHandling(t,e,n,r,i,a)},hi.prototype.evaluate=function(t,e,n,r,i,a){return this._styleExpression.evaluate(t,e,n,r,i,a)};var di=function(t,e,n,r){this.kind=t,this.zoomStops=n,this._styleExpression=e,this.isStateDependent="camera"!==t&&!Pn(e.expression),this.interpolationType=r};function pi(t,e){if("error"===(t=fi(t,e)).result)return t;var n=t.value.expression,r=Cn(n);if(!r&&!Kr(e))return Xr([new pe("","data expressions not supported")]);var i=Ln(n,["zoom"]);if(!i&&!Zr(e))return Xr([new pe("","zoom expressions not supported")]);var a=mi(n);if(!a&&!i)return Xr([new pe("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(a instanceof pe)return Xr([a]);if(a instanceof ur&&!Jr(e))return Xr([new pe("",'"interpolate" expressions cannot be used with this property')]);if(!a)return $r(new hi(r?"constant":"source",t.value));var o=a instanceof ur?a.interpolation:void 0;return $r(new di(r?"camera":"composite",t.value,a.labels,o))}di.prototype.evaluateWithoutErrorHandling=function(t,e,n,r,i,a){return this._styleExpression.evaluateWithoutErrorHandling(t,e,n,r,i,a)},di.prototype.evaluate=function(t,e,n,r,i,a){return this._styleExpression.evaluate(t,e,n,r,i,a)},di.prototype.interpolationFactor=function(t,e,n){return this.interpolationType?ur.interpolationFactor(this.interpolationType,t,e,n):0};var gi=function(t,e){this._parameters=t,this._specification=e,fe(this,ni(this._parameters,this._specification))};function vi(t,e){if(ti(t))return new gi(t,e);if(ui(t)){var n=pi(t,e);if("error"===n.result)throw new Error(n.value.map((function(t){return t.key+": "+t.message})).join(", "));return n.value}var r=t;return"string"===typeof t&&"color"===e.type&&(r=Re.parse(t)),{kind:"constant",evaluate:function(){return r}}}function mi(t){var e=null;if(t instanceof dr)e=mi(t.result);else if(t instanceof hr)for(var n=0,r=t.args;nr.maximum?[new ce(e,n,n+" is greater than the maximum value "+r.maximum)]:[]}function ki(t){var e,n,r,i=t.valueSpec,a=he(t.value.type),o={},s="categorical"!==a&&void 0===t.value.property,l=!s,c="array"===Qr(t.value.stops)&&"array"===Qr(t.value.stops[0])&&"object"===Qr(t.value.stops[0][0]),u=xi({key:t.key,value:t.value,valueSpec:t.styleSpec.function,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{stops:f,default:p}});return"identity"===a&&s&&u.push(new ce(t.key,t.value,'missing required property "property"')),"identity"===a||t.value.stops||u.push(new ce(t.key,t.value,'missing required property "stops"')),"exponential"===a&&t.valueSpec.expression&&!Jr(t.valueSpec)&&u.push(new ce(t.key,t.value,"exponential functions not supported")),t.styleSpec.$version>=8&&(l&&!Kr(t.valueSpec)?u.push(new ce(t.key,t.value,"property functions not supported")):s&&!Zr(t.valueSpec)&&u.push(new ce(t.key,t.value,"zoom functions not supported"))),"categorical"!==a&&!c||void 0!==t.value.property||u.push(new ce(t.key,t.value,'"property" property is required')),u;function f(t){if("identity"===a)return[new ce(t.key,t.value,'identity function may not have a "stops" property')];var e=[],n=t.value;return e=e.concat(wi({key:t.key,value:n,valueSpec:t.valueSpec,style:t.style,styleSpec:t.styleSpec,arrayElementValidator:h})),"array"===Qr(n)&&0===n.length&&e.push(new ce(t.key,n,"array must have at least one stop")),e}function h(t){var e=[],a=t.value,s=t.key;if("array"!==Qr(a))return[new ce(s,a,"array expected, "+Qr(a)+" found")];if(2!==a.length)return[new ce(s,a,"array length 2 expected, length "+a.length+" found")];if(c){if("object"!==Qr(a[0]))return[new ce(s,a,"object expected, "+Qr(a[0])+" found")];if(void 0===a[0].zoom)return[new ce(s,a,"object stop key must have zoom")];if(void 0===a[0].value)return[new ce(s,a,"object stop key must have value")];if(r&&r>he(a[0].zoom))return[new ce(s,a[0].zoom,"stop zoom values must appear in ascending order")];he(a[0].zoom)!==r&&(r=he(a[0].zoom),n=void 0,o={}),e=e.concat(xi({key:s+"[0]",value:a[0],valueSpec:{zoom:{}},style:t.style,styleSpec:t.styleSpec,objectElementValidators:{zoom:_i,value:d}}))}else e=e.concat(d({key:s+"[0]",value:a[0],valueSpec:{},style:t.style,styleSpec:t.styleSpec},a));return ui(de(a[1]))?e.concat([new ce(s+"[1]",a[1],"expressions are not allowed in function stops.")]):e.concat(Qi({key:s+"[1]",value:a[1],valueSpec:i,style:t.style,styleSpec:t.styleSpec}))}function d(t,r){var s=Qr(t.value),l=he(t.value),c=null!==t.value?t.value:r;if(e){if(s!==e)return[new ce(t.key,c,s+" stop domain type must match previous stop domain type "+e)]}else e=s;if("number"!==s&&"string"!==s&&"boolean"!==s)return[new ce(t.key,c,"stop domain value must be a number, string, or boolean")];if("number"!==s&&"categorical"!==a){var u="number expected, "+s+" found";return Kr(i)&&void 0===a&&(u+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new ce(t.key,c,u)]}return"categorical"!==a||"number"!==s||isFinite(l)&&Math.floor(l)===l?"categorical"!==a&&"number"===s&&void 0!==n&&l=2&&"$id"!==t[1]&&"$type"!==t[1];case"in":return t.length>=3&&("string"!==typeof t[1]||Array.isArray(t[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return 3!==t.length||Array.isArray(t[1])||Array.isArray(t[2]);case"any":case"all":for(var e=0,n=t.slice(1);ee?1:0}function Oi(t){if(!Array.isArray(t))return!1;if("within"===t[0])return!0;for(var e=1;e"===e||"<="===e||">="===e?Di(t[1],t[2],e):"any"===e?Ri(t.slice(1)):"all"===e?["all"].concat(t.slice(1).map(Ii)):"none"===e?["all"].concat(t.slice(1).map(Ii).map(ji)):"in"===e?zi(t[1],t.slice(2)):"!in"===e?ji(zi(t[1],t.slice(2))):"has"===e?Ni(t[1]):"!has"===e?ji(Ni(t[1])):"within"!==e||t}function Di(t,e,n){switch(t){case"$type":return["filter-type-"+n,e];case"$id":return["filter-id-"+n,e];default:return["filter-"+n,t,e]}}function Ri(t){return["any"].concat(t.map(Ii))}function zi(t,e){if(0===e.length)return!1;switch(t){case"$type":return["filter-type-in",["literal",e]];case"$id":return["filter-id-in",["literal",e]];default:return e.length>200&&!e.some((function(t){return typeof t!==typeof e[0]}))?["filter-in-large",t,["literal",e.sort(Li)]]:["filter-in-small",t,["literal",e]]}}function Ni(t){switch(t){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",t]}}function ji(t){return["!",t]}function Fi(t){return Ei(de(t.value))?Ti(fe({},t,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Bi(t)}function Bi(t){var e=t.value,n=t.key;if("array"!==Qr(e))return[new ce(n,e,"array expected, "+Qr(e)+" found")];var r,i=t.styleSpec,a=[];if(e.length<1)return[new ce(n,e,"filter array must have at least 1 element")];switch(a=a.concat(Si({key:n+"[0]",value:e[0],valueSpec:i.filter_operator,style:t.style,styleSpec:t.styleSpec})),he(e[0])){case"<":case"<=":case">":case">=":e.length>=2&&"$type"===he(e[1])&&a.push(new ce(n,e,'"$type" cannot be use with operator "'+e[0]+'"'));case"==":case"!=":3!==e.length&&a.push(new ce(n,e,'filter array for operator "'+e[0]+'" must have 3 elements'));case"in":case"!in":e.length>=2&&"string"!==(r=Qr(e[1]))&&a.push(new ce(n+"[1]",e[1],"string expected, "+r+" found"));for(var o=2;o=u[d+0]&&r>=u[d+1])?(o[h]=!0,a.push(c[h])):o[h]=!1}}},fa.prototype._forEachCell=function(t,e,n,r,i,a,o,s){for(var l=this._convertToCellCoord(t),c=this._convertToCellCoord(e),u=this._convertToCellCoord(n),f=this._convertToCellCoord(r),h=l;h<=u;h++)for(var d=c;d<=f;d++){var p=this.d*d+h;if((!s||s(this._convertFromCellCoord(h),this._convertFromCellCoord(d),this._convertFromCellCoord(h+1),this._convertFromCellCoord(d+1)))&&i.call(this,t,e,n,r,p,a,o,s))return}},fa.prototype._convertFromCellCoord=function(t){return(t-this.padding)/this.scale},fa.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},fa.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,e=ua+this.cells.length+1+1,n=0,r=0;r=0)){var f=t[u];c[u]=pa[l].shallow.indexOf(u)>=0?f:ba(f,e)}t instanceof Error&&(c.message=t.message)}if(c.$name)throw new Error("$name property is reserved for worker serialization logic.");return"Object"!==l&&(c.$name=l),c}throw new Error("can't serialize object of type "+typeof t)}function xa(t){if(null===t||void 0===t||"boolean"===typeof t||"number"===typeof t||"string"===typeof t||t instanceof Boolean||t instanceof Number||t instanceof String||t instanceof Date||t instanceof RegExp||ma(t)||ya(t)||ArrayBuffer.isView(t)||t instanceof ha)return t;if(Array.isArray(t))return t.map(xa);if("object"===typeof t){var e=t.$name||"Object",n=pa[e].klass;if(!n)throw new Error("can't deserialize unregistered class "+e);if(n.deserialize)return n.deserialize(t);for(var r=Object.create(n.prototype),i=0,a=Object.keys(t);i=0?s:xa(s)}}return r}throw new Error("can't deserialize object of type "+typeof t)}var wa=function(){this.first=!0};wa.prototype.update=function(t,e){var n=Math.floor(t);return this.first?(this.first=!1,this.lastIntegerZoom=n,this.lastIntegerZoomTime=0,this.lastZoom=t,this.lastFloorZoom=n,!0):(this.lastFloorZoom>n?(this.lastIntegerZoom=n+1,this.lastIntegerZoomTime=e):this.lastFloorZoom=128&&t<=255},Arabic:function(t){return t>=1536&&t<=1791},"Arabic Supplement":function(t){return t>=1872&&t<=1919},"Arabic Extended-A":function(t){return t>=2208&&t<=2303},"Hangul Jamo":function(t){return t>=4352&&t<=4607},"Unified Canadian Aboriginal Syllabics":function(t){return t>=5120&&t<=5759},Khmer:function(t){return t>=6016&&t<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(t){return t>=6320&&t<=6399},"General Punctuation":function(t){return t>=8192&&t<=8303},"Letterlike Symbols":function(t){return t>=8448&&t<=8527},"Number Forms":function(t){return t>=8528&&t<=8591},"Miscellaneous Technical":function(t){return t>=8960&&t<=9215},"Control Pictures":function(t){return t>=9216&&t<=9279},"Optical Character Recognition":function(t){return t>=9280&&t<=9311},"Enclosed Alphanumerics":function(t){return t>=9312&&t<=9471},"Geometric Shapes":function(t){return t>=9632&&t<=9727},"Miscellaneous Symbols":function(t){return t>=9728&&t<=9983},"Miscellaneous Symbols and Arrows":function(t){return t>=11008&&t<=11263},"CJK Radicals Supplement":function(t){return t>=11904&&t<=12031},"Kangxi Radicals":function(t){return t>=12032&&t<=12255},"Ideographic Description Characters":function(t){return t>=12272&&t<=12287},"CJK Symbols and Punctuation":function(t){return t>=12288&&t<=12351},Hiragana:function(t){return t>=12352&&t<=12447},Katakana:function(t){return t>=12448&&t<=12543},Bopomofo:function(t){return t>=12544&&t<=12591},"Hangul Compatibility Jamo":function(t){return t>=12592&&t<=12687},Kanbun:function(t){return t>=12688&&t<=12703},"Bopomofo Extended":function(t){return t>=12704&&t<=12735},"CJK Strokes":function(t){return t>=12736&&t<=12783},"Katakana Phonetic Extensions":function(t){return t>=12784&&t<=12799},"Enclosed CJK Letters and Months":function(t){return t>=12800&&t<=13055},"CJK Compatibility":function(t){return t>=13056&&t<=13311},"CJK Unified Ideographs Extension A":function(t){return t>=13312&&t<=19903},"Yijing Hexagram Symbols":function(t){return t>=19904&&t<=19967},"CJK Unified Ideographs":function(t){return t>=19968&&t<=40959},"Yi Syllables":function(t){return t>=40960&&t<=42127},"Yi Radicals":function(t){return t>=42128&&t<=42191},"Hangul Jamo Extended-A":function(t){return t>=43360&&t<=43391},"Hangul Syllables":function(t){return t>=44032&&t<=55215},"Hangul Jamo Extended-B":function(t){return t>=55216&&t<=55295},"Private Use Area":function(t){return t>=57344&&t<=63743},"CJK Compatibility Ideographs":function(t){return t>=63744&&t<=64255},"Arabic Presentation Forms-A":function(t){return t>=64336&&t<=65023},"Vertical Forms":function(t){return t>=65040&&t<=65055},"CJK Compatibility Forms":function(t){return t>=65072&&t<=65103},"Small Form Variants":function(t){return t>=65104&&t<=65135},"Arabic Presentation Forms-B":function(t){return t>=65136&&t<=65279},"Halfwidth and Fullwidth Forms":function(t){return t>=65280&&t<=65519}};function ka(t){for(var e=0,n=t;e=65097&&t<=65103)||!!_a["CJK Compatibility Ideographs"](t)||!!_a["CJK Compatibility"](t)||!!_a["CJK Radicals Supplement"](t)||!!_a["CJK Strokes"](t)||!(!_a["CJK Symbols and Punctuation"](t)||t>=12296&&t<=12305||t>=12308&&t<=12319||12336===t)||!!_a["CJK Unified Ideographs Extension A"](t)||!!_a["CJK Unified Ideographs"](t)||!!_a["Enclosed CJK Letters and Months"](t)||!!_a["Hangul Compatibility Jamo"](t)||!!_a["Hangul Jamo Extended-A"](t)||!!_a["Hangul Jamo Extended-B"](t)||!!_a["Hangul Jamo"](t)||!!_a["Hangul Syllables"](t)||!!_a.Hiragana(t)||!!_a["Ideographic Description Characters"](t)||!!_a.Kanbun(t)||!!_a["Kangxi Radicals"](t)||!!_a["Katakana Phonetic Extensions"](t)||!(!_a.Katakana(t)||12540===t)||!(!_a["Halfwidth and Fullwidth Forms"](t)||65288===t||65289===t||65293===t||t>=65306&&t<=65310||65339===t||65341===t||65343===t||t>=65371&&t<=65503||65507===t||t>=65512&&t<=65519)||!(!_a["Small Form Variants"](t)||t>=65112&&t<=65118||t>=65123&&t<=65126)||!!_a["Unified Canadian Aboriginal Syllabics"](t)||!!_a["Unified Canadian Aboriginal Syllabics Extended"](t)||!!_a["Vertical Forms"](t)||!!_a["Yijing Hexagram Symbols"](t)||!!_a["Yi Syllables"](t)||!!_a["Yi Radicals"](t))}function Ea(t){return!(!_a["Latin-1 Supplement"](t)||167!==t&&169!==t&&174!==t&&177!==t&&188!==t&&189!==t&&190!==t&&215!==t&&247!==t)||!(!_a["General Punctuation"](t)||8214!==t&&8224!==t&&8225!==t&&8240!==t&&8241!==t&&8251!==t&&8252!==t&&8258!==t&&8263!==t&&8264!==t&&8265!==t&&8273!==t)||!!_a["Letterlike Symbols"](t)||!!_a["Number Forms"](t)||!(!_a["Miscellaneous Technical"](t)||!(t>=8960&&t<=8967||t>=8972&&t<=8991||t>=8996&&t<=9e3||9003===t||t>=9085&&t<=9114||t>=9150&&t<=9165||9167===t||t>=9169&&t<=9179||t>=9186&&t<=9215))||!(!_a["Control Pictures"](t)||9251===t)||!!_a["Optical Character Recognition"](t)||!!_a["Enclosed Alphanumerics"](t)||!!_a["Geometric Shapes"](t)||!(!_a["Miscellaneous Symbols"](t)||t>=9754&&t<=9759)||!(!_a["Miscellaneous Symbols and Arrows"](t)||!(t>=11026&&t<=11055||t>=11088&&t<=11097||t>=11192&&t<=11243))||!!_a["CJK Symbols and Punctuation"](t)||!!_a.Katakana(t)||!!_a["Private Use Area"](t)||!!_a["CJK Compatibility Forms"](t)||!!_a["Small Form Variants"](t)||!!_a["Halfwidth and Fullwidth Forms"](t)||8734===t||8756===t||8757===t||t>=9984&&t<=10087||t>=10102&&t<=10131||65532===t||65533===t}function Ca(t){return!(Sa(t)||Ea(t))}function Pa(t){return _a.Arabic(t)||_a["Arabic Supplement"](t)||_a["Arabic Extended-A"](t)||_a["Arabic Presentation Forms-A"](t)||_a["Arabic Presentation Forms-B"](t)}function La(t){return t>=1424&&t<=2303||_a["Arabic Presentation Forms-A"](t)||_a["Arabic Presentation Forms-B"](t)}function Oa(t,e){return!(!e&&La(t))&&!(t>=2304&&t<=3583||t>=3840&&t<=4255||_a.Khmer(t))}function Ia(t){for(var e=0,n=t;e-1&&(Na=Ra.error),za&&za(t)};function Ba(){Ua.fire(new ae("pluginStateChange",{pluginStatus:Na,pluginURL:ja}))}var Ua=new se,Ha=function(){return Na},Va=function(t){return t({pluginStatus:Na,pluginURL:ja}),Ua.on("pluginStateChange",t),t},qa=function(t,e,n){if(void 0===n&&(n=!1),Na===Ra.deferred||Na===Ra.loading||Na===Ra.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");ja=Y.resolveURL(t),Na=Ra.deferred,za=e,Ba(),n||Ga()},Ga=function(){if(Na!==Ra.deferred||!ja)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");Na=Ra.loading,Ba(),ja&&Yt({url:ja},(function(t){t?Fa(t):(Na=Ra.loaded,Ba())}))},Wa={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return Na===Ra.loaded||null!=Wa.applyArabicShaping},isLoading:function(){return Na===Ra.loading},setState:function(t){Na=t.pluginStatus,ja=t.pluginURL},isParsed:function(){return null!=Wa.applyArabicShaping&&null!=Wa.processBidirectionalText&&null!=Wa.processStyledBidirectionalText},getPluginURL:function(){return ja}},Ya=function(){Wa.isLoading()||Wa.isLoaded()||"deferred"!==Ha()||Ga()},$a=function(t,e){this.zoom=t,e?(this.now=e.now,this.fadeDuration=e.fadeDuration,this.zoomHistory=e.zoomHistory,this.transition=e.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new wa,this.transition={})};$a.prototype.isSupportedScript=function(t){return Da(t,Wa.isLoaded())},$a.prototype.crossFadingFactor=function(){return 0===this.fadeDuration?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},$a.prototype.getCrossfadeParameters=function(){var t=this.zoom,e=t-Math.floor(t),n=this.crossFadingFactor();return t>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:e+(1-e)*n}:{fromScale:.5,toScale:1,t:1-(1-n)*e}};var Xa=function(t,e){this.property=t,this.value=e,this.expression=vi(void 0===e?t.specification.default:e,t.specification)};Xa.prototype.isDataDriven=function(){return"source"===this.expression.kind||"composite"===this.expression.kind},Xa.prototype.possiblyEvaluate=function(t,e,n){return this.property.possiblyEvaluate(this,t,e,n)};var Ka=function(t){this.property=t,this.value=new Xa(t,void 0)};Ka.prototype.transitioned=function(t,e){return new Ja(this.property,this.value,e,v({},t.transition,this.transition),t.now)},Ka.prototype.untransitioned=function(){return new Ja(this.property,this.value,null,{},0)};var Za=function(t){this._properties=t,this._values=Object.create(t.defaultTransitionablePropertyValues)};Za.prototype.getValue=function(t){return A(this._values[t].value.value)},Za.prototype.setValue=function(t,e){this._values.hasOwnProperty(t)||(this._values[t]=new Ka(this._values[t].property)),this._values[t].value=new Xa(this._values[t].property,null===e?void 0:A(e))},Za.prototype.getTransition=function(t){return A(this._values[t].transition)},Za.prototype.setTransition=function(t,e){this._values.hasOwnProperty(t)||(this._values[t]=new Ka(this._values[t].property)),this._values[t].transition=A(e)||void 0},Za.prototype.serialize=function(){for(var t={},e=0,n=Object.keys(this._values);ethis.end)return this.prior=null,i;if(this.value.isDataDriven())return this.prior=null,i;if(rr.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:n,to:e}},e.prototype.interpolate=function(t){return t},e}(io),oo=function(t){this.specification=t};oo.prototype.possiblyEvaluate=function(t,e,n,r){if(void 0!==t.value){if("constant"===t.expression.kind){var i=t.expression.evaluate(e,null,{},n,r);return this._calculate(i,i,i,e)}return this._calculate(t.expression.evaluate(new $a(Math.floor(e.zoom-1),e)),t.expression.evaluate(new $a(Math.floor(e.zoom),e)),t.expression.evaluate(new $a(Math.floor(e.zoom+1),e)),e)}},oo.prototype._calculate=function(t,e,n,r){return r.zoom>r.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:n,to:e}},oo.prototype.interpolate=function(t){return t};var so=function(t){this.specification=t};so.prototype.possiblyEvaluate=function(t,e,n,r){return!!t.expression.evaluate(e,null,{},n,r)},so.prototype.interpolate=function(){return!1};var lo=function(t){for(var e in this.properties=t,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[],t){var n=t[e];n.specification.overridable&&this.overridableProperties.push(e);var r=this.defaultPropertyValues[e]=new Xa(n,void 0),i=this.defaultTransitionablePropertyValues[e]=new Ka(n);this.defaultTransitioningPropertyValues[e]=i.untransitioned(),this.defaultPossiblyEvaluatedValues[e]=r.possiblyEvaluate({})}};ga("DataDrivenProperty",io),ga("DataConstantProperty",ro),ga("CrossFadedDataDrivenProperty",ao),ga("CrossFadedProperty",oo),ga("ColorRampProperty",so);var co="-transition",uo=function(t){function e(e,n){if(t.call(this),this.id=e.id,this.type=e.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},"custom"!==e.type&&(this.metadata=e.metadata,this.minzoom=e.minzoom,this.maxzoom=e.maxzoom,"background"!==e.type&&(this.source=e.source,this.sourceLayer=e["source-layer"],this.filter=e.filter),n.layout&&(this._unevaluatedLayout=new to(n.layout)),n.paint)){for(var r in this._transitionablePaint=new Za(n.paint),e.paint)this.setPaintProperty(r,e.paint[r],{validate:!1});for(var i in e.layout)this.setLayoutProperty(i,e.layout[i],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new no(n.paint)}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},e.prototype.getLayoutProperty=function(t){return"visibility"===t?this.visibility:this._unevaluatedLayout.getValue(t)},e.prototype.setLayoutProperty=function(t,e,n){if(void 0===n&&(n={}),null!==e&&void 0!==e){var r="layers."+this.id+".layout."+t;if(this._validate(sa,r,t,e,n))return}"visibility"!==t?this._unevaluatedLayout.setValue(t,e):this.visibility=e},e.prototype.getPaintProperty=function(t){return k(t,co)?this._transitionablePaint.getTransition(t.slice(0,-co.length)):this._transitionablePaint.getValue(t)},e.prototype.setPaintProperty=function(t,e,n){if(void 0===n&&(n={}),null!==e&&void 0!==e){var r="layers."+this.id+".paint."+t;if(this._validate(oa,r,t,e,n))return!1}if(k(t,co))return this._transitionablePaint.setTransition(t.slice(0,-co.length),e||void 0),!1;var i=this._transitionablePaint._values[t],a="cross-faded-data-driven"===i.property.specification["property-type"],o=i.value.isDataDriven(),s=i.value;this._transitionablePaint.setValue(t,e),this._handleSpecialPaintPropertyUpdate(t);var l=this._transitionablePaint._values[t].value;return l.isDataDriven()||o||a||this._handleOverridablePaintPropertyUpdate(t,s,l)},e.prototype._handleSpecialPaintPropertyUpdate=function(t){},e.prototype._handleOverridablePaintPropertyUpdate=function(t,e,n){return!1},e.prototype.isHidden=function(t){return!!(this.minzoom&&t=this.maxzoom)||"none"===this.visibility},e.prototype.updateTransitions=function(t){this._transitioningPaint=this._transitionablePaint.transitioned(t,this._transitioningPaint)},e.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},e.prototype.recalculate=function(t,e){t.getCrossfadeParameters&&(this._crossfadeParameters=t.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(t,void 0,e)),this.paint=this._transitioningPaint.possiblyEvaluate(t,void 0,e)},e.prototype.serialize=function(){var t={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&&(t.layout=t.layout||{},t.layout.visibility=this.visibility),M(t,(function(t,e){return void 0!==t&&!("layout"===e&&!Object.keys(t).length)&&!("paint"===e&&!Object.keys(t).length)}))},e.prototype._validate=function(t,e,n,r,i){return void 0===i&&(i={}),(!i||!1!==i.validate)&&la(this,t.call(ia,{key:e,layerType:this.type,objectKey:n,value:r,styleSpec:le,style:{glyphs:!0,sprite:!0}}))},e.prototype.is3D=function(){return!1},e.prototype.isTileClipped=function(){return!1},e.prototype.hasOffscreenPass=function(){return!1},e.prototype.resize=function(){},e.prototype.isStateDependent=function(){for(var t in this.paint._values){var e=this.paint.get(t);if(e instanceof eo&&Kr(e.property.specification)&&("source"===e.value.kind||"composite"===e.value.kind)&&e.value.isStateDependent)return!0}return!1},e}(se),fo={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},ho=function(t,e){this._structArray=t,this._pos1=e*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},po=128,go=5,vo=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};function mo(t,e){void 0===e&&(e=1);var n=0,r=0;return{members:t.map((function(t){var i=yo(t.type),a=n=bo(n,Math.max(e,i)),o=t.components||1;return r=Math.max(r,i),n+=i*o,{name:t.name,type:t.type,components:o,offset:a}})),size:bo(n,Math.max(r,e)),alignment:e}}function yo(t){return fo[t].BYTES_PER_ELEMENT}function bo(t,e){return Math.ceil(t/e)*e}vo.serialize=function(t,e){return t._trim(),e&&(t.isTransferred=!0,e.push(t.arrayBuffer)),{length:t.length,arrayBuffer:t.arrayBuffer}},vo.deserialize=function(t){var e=Object.create(this.prototype);return e.arrayBuffer=t.arrayBuffer,e.length=t.length,e.capacity=t.arrayBuffer.byteLength/e.bytesPerElement,e._refreshViews(),e},vo.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},vo.prototype.clear=function(){this.length=0},vo.prototype.resize=function(t){this.reserve(t),this.length=t},vo.prototype.reserve=function(t){if(t>this.capacity){this.capacity=Math.max(t,Math.floor(this.capacity*go),po),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var e=this.uint8;this._refreshViews(),e&&this.uint8.set(e)}},vo.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};var xo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var n=this.length;return this.resize(n+1),this.emplace(n,t,e)},e.prototype.emplace=function(t,e,n){var r=2*t;return this.int16[r+0]=e,this.int16[r+1]=n,t},e}(vo);xo.prototype.bytesPerElement=4,ga("StructArrayLayout2i4",xo);var wo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r){var i=this.length;return this.resize(i+1),this.emplace(i,t,e,n,r)},e.prototype.emplace=function(t,e,n,r,i){var a=4*t;return this.int16[a+0]=e,this.int16[a+1]=n,this.int16[a+2]=r,this.int16[a+3]=i,t},e}(vo);wo.prototype.bytesPerElement=8,ga("StructArrayLayout4i8",wo);var _o=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,n,r,i,a)},e.prototype.emplace=function(t,e,n,r,i,a,o){var s=6*t;return this.int16[s+0]=e,this.int16[s+1]=n,this.int16[s+2]=r,this.int16[s+3]=i,this.int16[s+4]=a,this.int16[s+5]=o,t},e}(vo);_o.prototype.bytesPerElement=12,ga("StructArrayLayout2i4i12",_o);var ko=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,n,r,i,a)},e.prototype.emplace=function(t,e,n,r,i,a,o){var s=4*t,l=8*t;return this.int16[s+0]=e,this.int16[s+1]=n,this.uint8[l+4]=r,this.uint8[l+5]=i,this.uint8[l+6]=a,this.uint8[l+7]=o,t},e}(vo);ko.prototype.bytesPerElement=8,ga("StructArrayLayout2i4ub8",ko);var To=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r,i,a,o,s,l,c){var u=this.length;return this.resize(u+1),this.emplace(u,t,e,n,r,i,a,o,s,l,c)},e.prototype.emplace=function(t,e,n,r,i,a,o,s,l,c,u){var f=9*t,h=18*t;return this.uint16[f+0]=e,this.uint16[f+1]=n,this.uint16[f+2]=r,this.uint16[f+3]=i,this.uint16[f+4]=a,this.uint16[f+5]=o,this.uint16[f+6]=s,this.uint16[f+7]=l,this.uint8[h+16]=c,this.uint8[h+17]=u,t},e}(vo);To.prototype.bytesPerElement=18,ga("StructArrayLayout8ui2ub18",To);var Mo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r,i,a,o,s,l,c,u,f){var h=this.length;return this.resize(h+1),this.emplace(h,t,e,n,r,i,a,o,s,l,c,u,f)},e.prototype.emplace=function(t,e,n,r,i,a,o,s,l,c,u,f,h){var d=12*t;return this.int16[d+0]=e,this.int16[d+1]=n,this.int16[d+2]=r,this.int16[d+3]=i,this.uint16[d+4]=a,this.uint16[d+5]=o,this.uint16[d+6]=s,this.uint16[d+7]=l,this.int16[d+8]=c,this.int16[d+9]=u,this.int16[d+10]=f,this.int16[d+11]=h,t},e}(vo);Mo.prototype.bytesPerElement=24,ga("StructArrayLayout4i4ui4i24",Mo);var Ao=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n){var r=this.length;return this.resize(r+1),this.emplace(r,t,e,n)},e.prototype.emplace=function(t,e,n,r){var i=3*t;return this.float32[i+0]=e,this.float32[i+1]=n,this.float32[i+2]=r,t},e}(vo);Ao.prototype.bytesPerElement=12,ga("StructArrayLayout3f12",Ao);var So=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){var n=1*t;return this.uint32[n+0]=e,t},e}(vo);So.prototype.bytesPerElement=4,ga("StructArrayLayout1ul4",So);var Eo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.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)},e.prototype.emplaceBack=function(t,e,n,r,i,a,o,s,l){var c=this.length;return this.resize(c+1),this.emplace(c,t,e,n,r,i,a,o,s,l)},e.prototype.emplace=function(t,e,n,r,i,a,o,s,l,c){var u=10*t,f=5*t;return this.int16[u+0]=e,this.int16[u+1]=n,this.int16[u+2]=r,this.int16[u+3]=i,this.int16[u+4]=a,this.int16[u+5]=o,this.uint32[f+3]=s,this.uint16[u+8]=l,this.uint16[u+9]=c,t},e}(vo);Eo.prototype.bytesPerElement=20,ga("StructArrayLayout6i1ul2ui20",Eo);var Co=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,n,r,i,a)},e.prototype.emplace=function(t,e,n,r,i,a,o){var s=6*t;return this.int16[s+0]=e,this.int16[s+1]=n,this.int16[s+2]=r,this.int16[s+3]=i,this.int16[s+4]=a,this.int16[s+5]=o,t},e}(vo);Co.prototype.bytesPerElement=12,ga("StructArrayLayout2i2i2i12",Co);var Po=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r,i){var a=this.length;return this.resize(a+1),this.emplace(a,t,e,n,r,i)},e.prototype.emplace=function(t,e,n,r,i,a){var o=4*t,s=8*t;return this.float32[o+0]=e,this.float32[o+1]=n,this.float32[o+2]=r,this.int16[s+6]=i,this.int16[s+7]=a,t},e}(vo);Po.prototype.bytesPerElement=16,ga("StructArrayLayout2f1f2i16",Po);var Lo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r){var i=this.length;return this.resize(i+1),this.emplace(i,t,e,n,r)},e.prototype.emplace=function(t,e,n,r,i){var a=12*t,o=3*t;return this.uint8[a+0]=e,this.uint8[a+1]=n,this.float32[o+1]=r,this.float32[o+2]=i,t},e}(vo);Lo.prototype.bytesPerElement=12,ga("StructArrayLayout2ub2f12",Lo);var Oo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n){var r=this.length;return this.resize(r+1),this.emplace(r,t,e,n)},e.prototype.emplace=function(t,e,n,r){var i=3*t;return this.uint16[i+0]=e,this.uint16[i+1]=n,this.uint16[i+2]=r,t},e}(vo);Oo.prototype.bytesPerElement=6,ga("StructArrayLayout3ui6",Oo);var Io=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.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)},e.prototype.emplaceBack=function(t,e,n,r,i,a,o,s,l,c,u,f,h,d,p,g,v){var m=this.length;return this.resize(m+1),this.emplace(m,t,e,n,r,i,a,o,s,l,c,u,f,h,d,p,g,v)},e.prototype.emplace=function(t,e,n,r,i,a,o,s,l,c,u,f,h,d,p,g,v,m){var y=24*t,b=12*t,x=48*t;return this.int16[y+0]=e,this.int16[y+1]=n,this.uint16[y+2]=r,this.uint16[y+3]=i,this.uint32[b+2]=a,this.uint32[b+3]=o,this.uint32[b+4]=s,this.uint16[y+10]=l,this.uint16[y+11]=c,this.uint16[y+12]=u,this.float32[b+7]=f,this.float32[b+8]=h,this.uint8[x+36]=d,this.uint8[x+37]=p,this.uint8[x+38]=g,this.uint32[b+10]=v,this.int16[y+22]=m,t},e}(vo);Io.prototype.bytesPerElement=48,ga("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Io);var Do=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.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)},e.prototype.emplaceBack=function(t,e,n,r,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S){var E=this.length;return this.resize(E+1),this.emplace(E,t,e,n,r,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S)},e.prototype.emplace=function(t,e,n,r,i,a,o,s,l,c,u,f,h,d,p,g,v,m,y,b,x,w,_,k,T,M,A,S,E){var C=34*t,P=17*t;return this.int16[C+0]=e,this.int16[C+1]=n,this.int16[C+2]=r,this.int16[C+3]=i,this.int16[C+4]=a,this.int16[C+5]=o,this.int16[C+6]=s,this.int16[C+7]=l,this.uint16[C+8]=c,this.uint16[C+9]=u,this.uint16[C+10]=f,this.uint16[C+11]=h,this.uint16[C+12]=d,this.uint16[C+13]=p,this.uint16[C+14]=g,this.uint16[C+15]=v,this.uint16[C+16]=m,this.uint16[C+17]=y,this.uint16[C+18]=b,this.uint16[C+19]=x,this.uint16[C+20]=w,this.uint16[C+21]=_,this.uint16[C+22]=k,this.uint32[P+12]=T,this.float32[P+13]=M,this.float32[P+14]=A,this.float32[P+15]=S,this.float32[P+16]=E,t},e}(vo);Do.prototype.bytesPerElement=68,ga("StructArrayLayout8i15ui1ul4f68",Do);var Ro=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){var n=1*t;return this.float32[n+0]=e,t},e}(vo);Ro.prototype.bytesPerElement=4,ga("StructArrayLayout1f4",Ro);var zo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n){var r=this.length;return this.resize(r+1),this.emplace(r,t,e,n)},e.prototype.emplace=function(t,e,n,r){var i=3*t;return this.int16[i+0]=e,this.int16[i+1]=n,this.int16[i+2]=r,t},e}(vo);zo.prototype.bytesPerElement=6,ga("StructArrayLayout3i6",zo);var No=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n){var r=this.length;return this.resize(r+1),this.emplace(r,t,e,n)},e.prototype.emplace=function(t,e,n,r){var i=2*t,a=4*t;return this.uint32[i+0]=e,this.uint16[a+2]=n,this.uint16[a+3]=r,t},e}(vo);No.prototype.bytesPerElement=8,ga("StructArrayLayout1ul2ui8",No);var jo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var n=this.length;return this.resize(n+1),this.emplace(n,t,e)},e.prototype.emplace=function(t,e,n){var r=2*t;return this.uint16[r+0]=e,this.uint16[r+1]=n,t},e}(vo);jo.prototype.bytesPerElement=4,ga("StructArrayLayout2ui4",jo);var Fo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){var n=1*t;return this.uint16[n+0]=e,t},e}(vo);Fo.prototype.bytesPerElement=2,ga("StructArrayLayout1ui2",Fo);var Bo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var n=this.length;return this.resize(n+1),this.emplace(n,t,e)},e.prototype.emplace=function(t,e,n){var r=2*t;return this.float32[r+0]=e,this.float32[r+1]=n,t},e}(vo);Bo.prototype.bytesPerElement=8,ga("StructArrayLayout2f8",Bo);var Uo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,n,r){var i=this.length;return this.resize(i+1),this.emplace(i,t,e,n,r)},e.prototype.emplace=function(t,e,n,r,i){var a=4*t;return this.float32[a+0]=e,this.float32[a+1]=n,this.float32[a+2]=r,this.float32[a+3]=i,t},e}(vo);Uo.prototype.bytesPerElement=16,ga("StructArrayLayout4f16",Uo);var Ho=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var n={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 n.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},n.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},n.x1.get=function(){return this._structArray.int16[this._pos2+2]},n.y1.get=function(){return this._structArray.int16[this._pos2+3]},n.x2.get=function(){return this._structArray.int16[this._pos2+4]},n.y2.get=function(){return this._structArray.int16[this._pos2+5]},n.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},n.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},n.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},n.anchorPoint.get=function(){return new a(this.anchorPointX,this.anchorPointY)},Object.defineProperties(e.prototype,n),e}(ho);Ho.prototype.size=20;var Vo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.get=function(t){return new Ho(this,t)},e}(Eo);ga("CollisionBoxArray",Vo);var qo=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var n={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 n.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},n.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},n.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},n.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},n.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},n.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},n.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},n.segment.get=function(){return this._structArray.uint16[this._pos2+10]},n.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},n.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},n.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},n.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},n.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},n.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},n.placedOrientation.set=function(t){this._structArray.uint8[this._pos1+37]=t},n.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},n.hidden.set=function(t){this._structArray.uint8[this._pos1+38]=t},n.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},n.crossTileID.set=function(t){this._structArray.uint32[this._pos4+10]=t},n.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(e.prototype,n),e}(ho);qo.prototype.size=48;var Go=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.get=function(t){return new qo(this,t)},e}(Io);ga("PlacedSymbolArray",Go);var Wo=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var n={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 n.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},n.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},n.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},n.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},n.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},n.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},n.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},n.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},n.key.get=function(){return this._structArray.uint16[this._pos2+8]},n.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},n.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},n.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},n.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},n.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},n.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},n.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},n.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},n.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},n.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},n.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},n.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},n.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},n.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},n.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},n.crossTileID.set=function(t){this._structArray.uint32[this._pos4+12]=t},n.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},n.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},n.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},n.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(e.prototype,n),e}(ho);Wo.prototype.size=68;var Yo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.get=function(t){return new Wo(this,t)},e}(Do);ga("SymbolInstanceArray",Yo);var $o=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getoffsetX=function(t){return this.float32[1*t+0]},e}(Ro);ga("GlyphOffsetArray",$o);var Xo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getx=function(t){return this.int16[3*t+0]},e.prototype.gety=function(t){return this.int16[3*t+1]},e.prototype.gettileUnitDistanceFromAnchor=function(t){return this.int16[3*t+2]},e}(zo);ga("SymbolLineVertexArray",Xo);var Ko=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var n={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return n.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},n.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},n.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(e.prototype,n),e}(ho);Ko.prototype.size=8;var Zo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.get=function(t){return new Ko(this,t)},e}(No);ga("FeatureIndexArray",Zo);var Jo=mo([{name:"a_pos",components:2,type:"Int16"}],4).members,Qo=function(t){void 0===t&&(t=[]),this.segments=t};function ts(t,e){return 256*(t=f(Math.floor(t),0,255))+(e=f(Math.floor(e),0,255))}Qo.prototype.prepareSegment=function(t,e,n,r){var i=this.segments[this.segments.length-1];return t>Qo.MAX_VERTEX_ARRAY_LENGTH&&C("Max vertices per segment is "+Qo.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+t),(!i||i.vertexLength+t>Qo.MAX_VERTEX_ARRAY_LENGTH||i.sortKey!==r)&&(i={vertexOffset:e.length,primitiveOffset:n.length,vertexLength:0,primitiveLength:0},void 0!==r&&(i.sortKey=r),this.segments.push(i)),i},Qo.prototype.get=function(){return this.segments},Qo.prototype.destroy=function(){for(var t=0,e=this.segments;t>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)*s&65535)<<16)&4294967295)<<13|i>>>19))+((5*(i>>>16)&65535)<<16)&4294967295))+((58964+(a>>>16)&65535)<<16);switch(l=0,n){case 3:l^=(255&t.charCodeAt(c+2))<<16;case 2:l^=(255&t.charCodeAt(c+1))<<8;case 1:i^=l=(65535&(l=(l=(65535&(l^=255&t.charCodeAt(c)))*o+(((l>>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)*s&65535)<<16)&4294967295}return i^=t.length,i=2246822507*(65535&(i^=i>>>16))+((2246822507*(i>>>16)&65535)<<16)&4294967295,i=3266489909*(65535&(i^=i>>>13))+((3266489909*(i>>>16)&65535)<<16)&4294967295,(i^=i>>>16)>>>0}t.exports=e})),rs=e((function(t){function e(t,e){for(var n,r=t.length,i=e^r,a=0;r>=4;)n=1540483477*(65535&(n=255&t.charCodeAt(a)|(255&t.charCodeAt(++a))<<8|(255&t.charCodeAt(++a))<<16|(255&t.charCodeAt(++a))<<24))+((1540483477*(n>>>16)&65535)<<16),i=1540483477*(65535&i)+((1540483477*(i>>>16)&65535)<<16)^(n=1540483477*(65535&(n^=n>>>24))+((1540483477*(n>>>16)&65535)<<16)),r-=4,++a;switch(r){case 3:i^=(255&t.charCodeAt(a+2))<<16;case 2:i^=(255&t.charCodeAt(a+1))<<8;case 1:i=1540483477*(65535&(i^=255&t.charCodeAt(a)))+((1540483477*(i>>>16)&65535)<<16)}return i=1540483477*(65535&(i^=i>>>13))+((1540483477*(i>>>16)&65535)<<16),(i^=i>>>15)>>>0}t.exports=e})),is=ns,as=ns,os=rs;is.murmur3=as,is.murmur2=os;var ss=function(){this.ids=[],this.positions=[],this.indexed=!1};ss.prototype.add=function(t,e,n,r){this.ids.push(cs(t)),this.positions.push(e,n,r)},ss.prototype.getPositions=function(t){for(var e=cs(t),n=0,r=this.ids.length-1;n>1;this.ids[i]>=e?r=i:n=i+1}for(var a=[];this.ids[n]===e;){var o=this.positions[3*n],s=this.positions[3*n+1],l=this.positions[3*n+2];a.push({index:o,start:s,end:l}),n++}return a},ss.serialize=function(t,e){var n=new Float64Array(t.ids),r=new Uint32Array(t.positions);return us(n,r,0,n.length-1),e&&e.push(n.buffer,r.buffer),{ids:n,positions:r}},ss.deserialize=function(t){var e=new ss;return e.ids=t.ids,e.positions=t.positions,e.indexed=!0,e};var ls=Math.pow(2,53)-1;function cs(t){var e=+t;return!isNaN(e)&&e<=ls?e:is(String(t))}function us(t,e,n,r){for(;n>1],a=n-1,o=r+1;;){do{a++}while(t[a]i);if(a>=o)break;fs(t,a,o),fs(e,3*a,3*o),fs(e,3*a+1,3*o+1),fs(e,3*a+2,3*o+2)}o-nDs.max||o.yDs.max)&&(C("Geometry exceeds allowed extent, reduce your vector tile buffer size"),o.x=f(o.x,Ds.min,Ds.max),o.y=f(o.y,Ds.min,Ds.max))}return n}function zs(t,e,n,r,i){t.emplaceBack(2*e+(r+1)/2,2*n+(i+1)/2)}var Ns=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new xo,this.indexArray=new Oo,this.segments=new Qo,this.programConfigurations=new Es(Jo,t.layers,t.zoom),this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};function js(t,e){for(var n=0;n=3)for(var a=0;a1){if(Vs(t,e))return!0;for(var r=0;r1?t.distSqr(n):t.distSqr(n.sub(e)._mult(i)._add(e))}function Ys(t,e){for(var n,r,i,a=!1,o=0;oe.y!==i.y>e.y&&e.x<(i.x-r.x)*(e.y-r.y)/(i.y-r.y)+r.x&&(a=!a);return a}function $s(t,e){for(var n=!1,r=0,i=t.length-1;re.y!==o.y>e.y&&e.x<(o.x-a.x)*(e.y-a.y)/(o.y-a.y)+a.x&&(n=!n)}return n}function Xs(t,e,n,r,i){for(var o=0,s=t;o=l.x&&i>=l.y)return!0}var c=[new a(e,n),new a(e,i),new a(r,i),new a(r,n)];if(t.length>2)for(var u=0,f=c;ui.x&&e.x>i.x||t.yi.y&&e.y>i.y)return!1;var a=P(t,e,n[0]);return a!==P(t,e,n[1])||a!==P(t,e,n[2])||a!==P(t,e,n[3])}function Zs(t,e,n){var r=e.paint.get(t).value;return"constant"===r.kind?r.value:n.programConfigurations.get(e.id).getMaxValue(t)}function Js(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function Qs(t,e,n,r,i){if(!e[0]&&!e[1])return t;var o=a.convert(e)._mult(i);"viewport"===n&&o._rotate(-r);for(var s=[],l=0;l=Os||u<0||u>=Os)){var f=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,t.sortKey),h=f.vertexLength;zs(this.layoutVertexArray,c,u,-1,-1),zs(this.layoutVertexArray,c,u,1,-1),zs(this.layoutVertexArray,c,u,1,1),zs(this.layoutVertexArray,c,u,-1,1),this.indexArray.emplaceBack(h,h+1,h+2),this.indexArray.emplaceBack(h,h+3,h+2),f.vertexLength+=4,f.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,n,{},r)},ga("CircleBucket",Ns,{omit:["layers"]});var tl=new lo({"circle-sort-key":new io(le.layout_circle["circle-sort-key"])}),el={paint:new lo({"circle-radius":new io(le.paint_circle["circle-radius"]),"circle-color":new io(le.paint_circle["circle-color"]),"circle-blur":new io(le.paint_circle["circle-blur"]),"circle-opacity":new io(le.paint_circle["circle-opacity"]),"circle-translate":new ro(le.paint_circle["circle-translate"]),"circle-translate-anchor":new ro(le.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new ro(le.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new ro(le.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new io(le.paint_circle["circle-stroke-width"]),"circle-stroke-color":new io(le.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new io(le.paint_circle["circle-stroke-opacity"])}),layout:tl},nl="undefined"!==typeof Float32Array?Float32Array:Array;function rl(){var t=new nl(4);return nl!=Float32Array&&(t[1]=0,t[2]=0),t[0]=1,t[3]=1,t}function il(t,e,n){var r=e[0],i=e[1],a=e[2],o=e[3],s=Math.sin(n),l=Math.cos(n);return t[0]=r*l+a*s,t[1]=i*l+o*s,t[2]=r*-s+a*l,t[3]=i*-s+o*l,t}function al(){var t=new nl(9);return nl!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1,t}function ol(t,e){var n=Math.sin(e),r=Math.cos(e);return t[0]=r,t[1]=n,t[2]=0,t[3]=-n,t[4]=r,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t}function sl(){var t=new nl(16);return nl!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t}function ll(t){var e=new nl(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function cl(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function ul(t,e){var n=e[0],r=e[1],i=e[2],a=e[3],o=e[4],s=e[5],l=e[6],c=e[7],u=e[8],f=e[9],h=e[10],d=e[11],p=e[12],g=e[13],v=e[14],m=e[15],y=n*s-r*o,b=n*l-i*o,x=n*c-a*o,w=r*l-i*s,_=r*c-a*s,k=i*c-a*l,T=u*g-f*p,M=u*v-h*p,A=u*m-d*p,S=f*v-h*g,E=f*m-d*g,C=h*m-d*v,P=y*C-b*E+x*S+w*A-_*M+k*T;return P?(P=1/P,t[0]=(s*C-l*E+c*S)*P,t[1]=(i*E-r*C-a*S)*P,t[2]=(g*k-v*_+m*w)*P,t[3]=(h*_-f*k-d*w)*P,t[4]=(l*A-o*C-c*M)*P,t[5]=(n*C-i*A+a*M)*P,t[6]=(v*x-p*k-m*b)*P,t[7]=(u*k-h*x+d*b)*P,t[8]=(o*E-s*A+c*T)*P,t[9]=(r*A-n*E-a*T)*P,t[10]=(p*_-g*x+m*y)*P,t[11]=(f*x-u*_-d*y)*P,t[12]=(s*M-o*S-l*T)*P,t[13]=(n*S-r*M+i*T)*P,t[14]=(g*b-p*w-v*y)*P,t[15]=(u*w-f*b+h*y)*P,t):null}function fl(t,e,n){var r=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],f=e[8],h=e[9],d=e[10],p=e[11],g=e[12],v=e[13],m=e[14],y=e[15],b=n[0],x=n[1],w=n[2],_=n[3];return t[0]=b*r+x*s+w*f+_*g,t[1]=b*i+x*l+w*h+_*v,t[2]=b*a+x*c+w*d+_*m,t[3]=b*o+x*u+w*p+_*y,b=n[4],x=n[5],w=n[6],_=n[7],t[4]=b*r+x*s+w*f+_*g,t[5]=b*i+x*l+w*h+_*v,t[6]=b*a+x*c+w*d+_*m,t[7]=b*o+x*u+w*p+_*y,b=n[8],x=n[9],w=n[10],_=n[11],t[8]=b*r+x*s+w*f+_*g,t[9]=b*i+x*l+w*h+_*v,t[10]=b*a+x*c+w*d+_*m,t[11]=b*o+x*u+w*p+_*y,b=n[12],x=n[13],w=n[14],_=n[15],t[12]=b*r+x*s+w*f+_*g,t[13]=b*i+x*l+w*h+_*v,t[14]=b*a+x*c+w*d+_*m,t[15]=b*o+x*u+w*p+_*y,t}function hl(t,e,n){var r,i,a,o,s,l,c,u,f,h,d,p,g=n[0],v=n[1],m=n[2];return e===t?(t[12]=e[0]*g+e[4]*v+e[8]*m+e[12],t[13]=e[1]*g+e[5]*v+e[9]*m+e[13],t[14]=e[2]*g+e[6]*v+e[10]*m+e[14],t[15]=e[3]*g+e[7]*v+e[11]*m+e[15]):(r=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],f=e[8],h=e[9],d=e[10],p=e[11],t[0]=r,t[1]=i,t[2]=a,t[3]=o,t[4]=s,t[5]=l,t[6]=c,t[7]=u,t[8]=f,t[9]=h,t[10]=d,t[11]=p,t[12]=r*g+s*v+f*m+e[12],t[13]=i*g+l*v+h*m+e[13],t[14]=a*g+c*v+d*m+e[14],t[15]=o*g+u*v+p*m+e[15]),t}function dl(t,e,n){var r=n[0],i=n[1],a=n[2];return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t[3]=e[3]*r,t[4]=e[4]*i,t[5]=e[5]*i,t[6]=e[6]*i,t[7]=e[7]*i,t[8]=e[8]*a,t[9]=e[9]*a,t[10]=e[10]*a,t[11]=e[11]*a,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function pl(t,e,n){var r=Math.sin(n),i=Math.cos(n),a=e[4],o=e[5],s=e[6],l=e[7],c=e[8],u=e[9],f=e[10],h=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=a*i+c*r,t[5]=o*i+u*r,t[6]=s*i+f*r,t[7]=l*i+h*r,t[8]=c*i-a*r,t[9]=u*i-o*r,t[10]=f*i-s*r,t[11]=h*i-l*r,t}function gl(t,e,n){var r=Math.sin(n),i=Math.cos(n),a=e[0],o=e[1],s=e[2],l=e[3],c=e[4],u=e[5],f=e[6],h=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=a*i+c*r,t[1]=o*i+u*r,t[2]=s*i+f*r,t[3]=l*i+h*r,t[4]=c*i-a*r,t[5]=u*i-o*r,t[6]=f*i-s*r,t[7]=h*i-l*r,t}function vl(t,e,n,r,i){var a,o=1/Math.tan(e/2);return t[0]=o/n,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,null!=i&&i!==1/0?(a=1/(r-i),t[10]=(i+r)*a,t[14]=2*i*r*a):(t[10]=-1,t[14]=-2*r),t}function ml(t,e,n,r,i,a,o){var s=1/(e-n),l=1/(r-i),c=1/(a-o);return t[0]=-2*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*c,t[11]=0,t[12]=(e+n)*s,t[13]=(i+r)*l,t[14]=(o+a)*c,t[15]=1,t}Math.hypot||(Math.hypot=function(){for(var t=arguments,e=0,n=arguments.length;n--;)e+=t[n]*t[n];return Math.sqrt(e)});var yl=fl;function bl(){var t=new nl(3);return nl!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t}function xl(t){var e=new nl(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}function wl(t,e,n){return t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2],t}function _l(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t[2]=e[2]-n[2],t}function kl(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t}function Tl(t,e){var n=e[0],r=e[1],i=e[2],a=n*n+r*r+i*i;return a>0&&(a=1/Math.sqrt(a)),t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a,t}function Ml(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function Al(t,e,n){var r=e[0],i=e[1],a=e[2],o=n[0],s=n[1],l=n[2];return t[0]=i*l-a*s,t[1]=a*o-r*l,t[2]=r*s-i*o,t}function Sl(t,e,n){var r=e[0],i=e[1],a=e[2];return t[0]=r*n[0]+i*n[3]+a*n[6],t[1]=r*n[1]+i*n[4]+a*n[7],t[2]=r*n[2]+i*n[5]+a*n[8],t}var El=_l;function Cl(){var t=new nl(4);return nl!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0),t}function Pl(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t}function Ll(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}function Ol(t,e,n){var r=e[0],i=e[1],a=e[2],o=e[3];return t[0]=n[0]*r+n[4]*i+n[8]*a+n[12]*o,t[1]=n[1]*r+n[5]*i+n[9]*a+n[13]*o,t[2]=n[2]*r+n[6]*i+n[10]*a+n[14]*o,t[3]=n[3]*r+n[7]*i+n[11]*a+n[15]*o,t}function Il(){var t=new nl(2);return nl!=Float32Array&&(t[0]=0,t[1]=0),t}function Dl(t){var e=t[0],n=t[1];return e*e+n*n}bl(),Cl();var Rl=Dl,zl=(Il(),function(t){function e(e){t.call(this,e,el)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.createBucket=function(t){return new Ns(t)},e.prototype.queryRadius=function(t){var e=t;return Zs("circle-radius",this,e)+Zs("circle-stroke-width",this,e)+Js(this.paint.get("circle-translate"))},e.prototype.queryIntersectsFeature=function(t,e,n,r,i,a,o,s){for(var l=Qs(t,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),a.angle,o),c=this.paint.get("circle-radius").evaluate(e,n)+this.paint.get("circle-stroke-width").evaluate(e,n),u="map"===this.paint.get("circle-pitch-alignment"),f=u?l:jl(l,s),h=u?c*o:c,d=0,p=r;dt.width||i.height>t.height||n.x>t.width-i.width||n.y>t.height-i.height)throw new RangeError("out of range source coordinates for image copy");if(i.width>e.width||i.height>e.height||r.x>e.width-i.width||r.y>e.height-i.height)throw new RangeError("out of range destination coordinates for image copy");for(var o=t.data,s=e.data,l=0;l80*n){r=a=t[0],i=o=t[1];for(var p=n;pa&&(a=s),l>o&&(o=l);c=0!==(c=Math.max(a-r,o-i))?1/c:0}return nc(h,d,n,r,i,c),d}function tc(t,e,n,r,i){var a,o;if(i===Pc(t,e,n,r)>0)for(a=e;a=e;a-=r)o=Sc(a,t[a],t[a+1],o);return o&&bc(o,o.next)&&(Ec(o),o=o.next),o}function ec(t,e){if(!t)return t;e||(e=t);var n,r=t;do{if(n=!1,r.steiner||!bc(r,r.next)&&0!==yc(r.prev,r,r.next))r=r.next;else{if(Ec(r),(r=e=r.prev)===r.next)break;n=!0}}while(n||r!==e);return e}function nc(t,e,n,r,i,a,o){if(t){!o&&a&&hc(t,r,i,a);for(var s,l,c=t;t.prev!==t.next;)if(s=t.prev,l=t.next,a?ic(t,r,i,a):rc(t))e.push(s.i/n),e.push(t.i/n),e.push(l.i/n),Ec(t),t=l.next,c=l.next;else if((t=l)===c){o?1===o?nc(t=ac(ec(t),e,n),e,n,r,i,a,2):2===o&&oc(t,e,n,r,i,a):nc(ec(t),e,n,r,i,a,1);break}}}function rc(t){var e=t.prev,n=t,r=t.next;if(yc(e,n,r)>=0)return!1;for(var i=t.next.next;i!==t.prev;){if(vc(e.x,e.y,n.x,n.y,r.x,r.y,i.x,i.y)&&yc(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function ic(t,e,n,r){var i=t.prev,a=t,o=t.next;if(yc(i,a,o)>=0)return!1;for(var s=i.xa.x?i.x>o.x?i.x:o.x:a.x>o.x?a.x:o.x,u=i.y>a.y?i.y>o.y?i.y:o.y:a.y>o.y?a.y:o.y,f=pc(s,l,e,n,r),h=pc(c,u,e,n,r),d=t.prevZ,p=t.nextZ;d&&d.z>=f&&p&&p.z<=h;){if(d!==t.prev&&d!==t.next&&vc(i.x,i.y,a.x,a.y,o.x,o.y,d.x,d.y)&&yc(d.prev,d,d.next)>=0)return!1;if(d=d.prevZ,p!==t.prev&&p!==t.next&&vc(i.x,i.y,a.x,a.y,o.x,o.y,p.x,p.y)&&yc(p.prev,p,p.next)>=0)return!1;p=p.nextZ}for(;d&&d.z>=f;){if(d!==t.prev&&d!==t.next&&vc(i.x,i.y,a.x,a.y,o.x,o.y,d.x,d.y)&&yc(d.prev,d,d.next)>=0)return!1;d=d.prevZ}for(;p&&p.z<=h;){if(p!==t.prev&&p!==t.next&&vc(i.x,i.y,a.x,a.y,o.x,o.y,p.x,p.y)&&yc(p.prev,p,p.next)>=0)return!1;p=p.nextZ}return!0}function ac(t,e,n){var r=t;do{var i=r.prev,a=r.next.next;!bc(i,a)&&xc(i,r,r.next,a)&&Tc(i,a)&&Tc(a,i)&&(e.push(i.i/n),e.push(r.i/n),e.push(a.i/n),Ec(r),Ec(r.next),r=t=a),r=r.next}while(r!==t);return ec(r)}function oc(t,e,n,r,i,a){var o=t;do{for(var s=o.next.next;s!==o.prev;){if(o.i!==s.i&&mc(o,s)){var l=Ac(o,s);return o=ec(o,o.next),l=ec(l,l.next),nc(o,e,n,r,i,a),void nc(l,e,n,r,i,a)}s=s.next}o=o.next}while(o!==t)}function sc(t,e,n,r){var i,a,o,s=[];for(i=0,a=e.length;i=r.next.y&&r.next.y!==r.y){var s=r.x+(a-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(s<=i&&s>o){if(o=s,s===i){if(a===r.y)return r;if(a===r.next.y)return r.next}n=r.x=r.x&&r.x>=u&&i!==r.x&&vc(an.x||r.x===n.x&&fc(n,r)))&&(n=r,h=l)),r=r.next}while(r!==c);return n}function fc(t,e){return yc(t.prev,t,e.prev)<0&&yc(e.next,t,t.next)<0}function hc(t,e,n,r){var i=t;do{null===i.z&&(i.z=pc(i.x,i.y,e,n,r)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==t);i.prevZ.nextZ=null,i.prevZ=null,dc(i)}function dc(t){var e,n,r,i,a,o,s,l,c=1;do{for(n=t,t=null,a=null,o=0;n;){for(o++,r=n,s=0,e=0;e0||l>0&&r;)0!==s&&(0===l||!r||n.z<=r.z)?(i=n,n=n.nextZ,s--):(i=r,r=r.nextZ,l--),a?a.nextZ=i:t=i,i.prevZ=a,a=i;n=r}a.nextZ=null,c*=2}while(o>1);return t}function pc(t,e,n,r,i){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-n)*i)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-r)*i)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function gc(t){var e=t,n=t;do{(e.x=0&&(t-o)*(r-s)-(n-o)*(e-s)>=0&&(n-o)*(a-s)-(i-o)*(r-s)>=0}function mc(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!kc(t,e)&&(Tc(t,e)&&Tc(e,t)&&Mc(t,e)&&(yc(t.prev,t,e.prev)||yc(t,e.prev,e))||bc(t,e)&&yc(t.prev,t,t.next)>0&&yc(e.prev,e,e.next)>0)}function yc(t,e,n){return(e.y-t.y)*(n.x-e.x)-(e.x-t.x)*(n.y-e.y)}function bc(t,e){return t.x===e.x&&t.y===e.y}function xc(t,e,n,r){var i=_c(yc(t,e,n)),a=_c(yc(t,e,r)),o=_c(yc(n,r,t)),s=_c(yc(n,r,e));return i!==a&&o!==s||!(0!==i||!wc(t,n,e))||!(0!==a||!wc(t,r,e))||!(0!==o||!wc(n,t,r))||!(0!==s||!wc(n,e,r))}function wc(t,e,n){return e.x<=Math.max(t.x,n.x)&&e.x>=Math.min(t.x,n.x)&&e.y<=Math.max(t.y,n.y)&&e.y>=Math.min(t.y,n.y)}function _c(t){return t>0?1:t<0?-1:0}function kc(t,e){var n=t;do{if(n.i!==t.i&&n.next.i!==t.i&&n.i!==e.i&&n.next.i!==e.i&&xc(n,n.next,t,e))return!0;n=n.next}while(n!==t);return!1}function Tc(t,e){return yc(t.prev,t,t.next)<0?yc(t,e,t.next)>=0&&yc(t,t.prev,e)>=0:yc(t,e,t.prev)<0||yc(t,t.next,e)<0}function Mc(t,e){var n=t,r=!1,i=(t.x+e.x)/2,a=(t.y+e.y)/2;do{n.y>a!==n.next.y>a&&n.next.y!==n.y&&i<(n.next.x-n.x)*(a-n.y)/(n.next.y-n.y)+n.x&&(r=!r),n=n.next}while(n!==t);return r}function Ac(t,e){var n=new Cc(t.i,t.x,t.y),r=new Cc(e.i,e.x,e.y),i=t.next,a=e.prev;return t.next=e,e.prev=t,n.next=i,i.prev=n,r.next=n,n.prev=r,a.next=r,r.prev=a,r}function Sc(t,e,n,r){var i=new Cc(t,e,n);return r?(i.next=r.next,i.prev=r,r.next.prev=i,r.next=i):(i.prev=i,i.next=i),i}function Ec(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function Cc(t,e,n){this.i=t,this.x=e,this.y=n,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function Pc(t,e,n,r){for(var i=0,a=e,o=n-r;an;){if(r-n>600){var a=r-n+1,o=e-n+1,s=Math.log(a),l=.5*Math.exp(2*s/3),c=.5*Math.sqrt(s*l*(a-l)/a)*(o-a/2<0?-1:1);Oc(t,e,Math.max(n,Math.floor(e-o*l/a+c)),Math.min(r,Math.floor(e+(a-o)*l/a+c)),i)}var u=t[e],f=n,h=r;for(Ic(t,n,e),i(t[r],u)>0&&Ic(t,n,r);f0;)h--}0===i(t[n],u)?Ic(t,n,h):Ic(t,++h,r),h<=e&&(n=h+1),e<=h&&(r=h-1)}}function Ic(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function Dc(t,e){return te?1:0}function Rc(t,e){var n=t.length;if(n<=1)return[t];for(var r,i,a=[],o=0;o1)for(var l=0;l0&&(r+=t[i-1].length,n.holes.push(r))}return n},Zl.default=Jl;var Fc=500,Bc=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new xo,this.indexArray=new Oo,this.indexArray2=new jo,this.programConfigurations=new Es(Kl,t.layers,t.zoom),this.segments=new Qo,this.segments2=new Qo,this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};Bc.prototype.populate=function(t,e,n){this.hasPattern=Nc("fill",this.layers,e);for(var r=this.layers[0].layout.get("fill-sort-key"),i=[],a=0,o=t;a>3}if(i--,1===r||2===r)o+=t.readSVarint(),s+=t.readSVarint(),1===r&&(e&&l.push(e),e=[]),e.push(new a(o,s));else{if(7!==r)throw new Error("unknown command "+r);e&&e.push(e[0].clone())}}return e&&l.push(e),l},Wc.prototype.bbox=function(){var t=this._pbf;t.pos=this._geometry;for(var e=t.readVarint()+t.pos,n=1,r=0,i=0,a=0,o=1/0,s=-1/0,l=1/0,c=-1/0;t.pos>3}if(r--,1===n||2===n)(i+=t.readSVarint())s&&(s=i),(a+=t.readSVarint())c&&(c=a);else if(7!==n)throw new Error("unknown command "+n)}return[o,l,s,c]},Wc.prototype.toGeoJSON=function(t,e,n){var r,i,a=this.extent*Math.pow(2,n),o=this.extent*t,s=this.extent*e,l=this.loadGeometry(),c=Wc.types[this.type];function u(t){for(var e=0;e>3;e=1===r?t.readString():2===r?t.readFloat():3===r?t.readDouble():4===r?t.readVarint64():5===r?t.readVarint():6===r?t.readSVarint():7===r?t.readBoolean():null}return e}function eu(t,e){this.layers=t.readFields(nu,{},e)}function nu(t,e,n){if(3===t){var r=new Zc(n,n.readVarint()+n.pos);r.length&&(e[r.name]=r)}}Jc.prototype.feature=function(t){if(t<0||t>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[t];var e=this._pbf.readVarint()+this._pbf.pos;return new Gc(this._pbf,e,this.extent,this._keys,this._values)};var ru={VectorTile:eu,VectorTileFeature:Gc,VectorTileLayer:Zc},iu=ru.VectorTileFeature.types,au=500,ou=Math.pow(2,13);function su(t,e,n,r,i,a,o,s){t.emplaceBack(e,n,2*Math.floor(r*ou)+o,i*ou*2,a*ou*2,Math.round(s))}var lu=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new _o,this.indexArray=new Oo,this.programConfigurations=new Es(qc,t.layers,t.zoom),this.segments=new Qo,this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};function cu(t,e){return t.x===e.x&&(t.x<0||t.x>Os)||t.y===e.y&&(t.y<0||t.y>Os)}function uu(t){return t.every((function(t){return t.x<0}))||t.every((function(t){return t.x>Os}))||t.every((function(t){return t.y<0}))||t.every((function(t){return t.y>Os}))}lu.prototype.populate=function(t,e,n){this.features=[],this.hasPattern=Nc("fill-extrusion",this.layers,e);for(var r=0,i=t;r=1){var y=p[v-1];if(!cu(m,y)){f.vertexLength+4>Qo.MAX_VERTEX_ARRAY_LENGTH&&(f=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var b=m.sub(y)._perp()._unit(),x=y.dist(m);g+x>32768&&(g=0),su(this.layoutVertexArray,m.x,m.y,b.x,b.y,0,0,g),su(this.layoutVertexArray,m.x,m.y,b.x,b.y,0,1,g),g+=x,su(this.layoutVertexArray,y.x,y.y,b.x,b.y,0,0,g),su(this.layoutVertexArray,y.x,y.y,b.x,b.y,0,1,g);var w=f.vertexLength;this.indexArray.emplaceBack(w,w+2,w+1),this.indexArray.emplaceBack(w+1,w+2,w+3),f.vertexLength+=4,f.primitiveLength+=2}}}}if(f.vertexLength+l>Qo.MAX_VERTEX_ARRAY_LENGTH&&(f=this.segments.prepareSegment(l,this.layoutVertexArray,this.indexArray)),"Polygon"===iu[t.type]){for(var _=[],k=[],T=f.vertexLength,M=0,A=s;M=2&&t[l-1].equals(t[l-2]);)l--;for(var c=0;c0;if(k&&m>c){var M=u.dist(d);if(M>2*f){var A=u.sub(u.sub(d)._mult(f/M)._round());this.updateDistance(d,A),this.addCurrentVertex(A,g,0,0,h),d=A}}var S=d&&p,E=S?n:s?"butt":r;if(S&&"round"===E&&(wi&&(E="bevel"),"bevel"===E&&(w>2&&(E="flipbevel"),w100)y=v.mult(-1);else{var C=w*g.add(v).mag()/g.sub(v).mag();y._perp()._mult(C*(T?-1:1))}this.addCurrentVertex(u,y,0,0,h),this.addCurrentVertex(u,y.mult(-1),0,0,h)}else if("bevel"===E||"fakeround"===E){var P=-Math.sqrt(w*w-1),L=T?P:0,O=T?0:P;if(d&&this.addCurrentVertex(u,g,L,O,h),"fakeround"===E)for(var I=Math.round(180*_/Math.PI/ku),D=1;D2*f){var B=u.add(p.sub(u)._mult(f/F)._round());this.updateDistance(u,B),this.addCurrentVertex(B,v,0,0,h),u=B}}}}},Su.prototype.addCurrentVertex=function(t,e,n,r,i,a){void 0===a&&(a=!1);var o=e.x+e.y*n,s=e.y-e.x*n,l=-e.x+e.y*r,c=-e.y-e.x*r;this.addHalfVertex(t,o,s,a,!1,n,i),this.addHalfVertex(t,l,c,a,!0,-r,i),this.distance>Au/2&&0===this.totalDistance&&(this.distance=0,this.addCurrentVertex(t,e,n,r,i,a))},Su.prototype.addHalfVertex=function(t,e,n,r,i,a,o){var s=t.x,l=t.y,c=this.scaledDistance*Mu;this.layoutVertexArray.emplaceBack((s<<1)+(r?1:0),(l<<1)+(i?1:0),Math.round(xu*e)+128,Math.round(xu*n)+128,1+(0===a?0:a<0?-1:1)|(63&c)<<2,c>>6);var u=o.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,u),o.primitiveLength++),i?this.e2=u:this.e1=u},Su.prototype.updateScaledDistance=function(){this.scaledDistance=this.totalDistance>0?(this.clipStart+(this.clipEnd-this.clipStart)*this.distance/this.totalDistance)*(Au-1):this.distance},Su.prototype.updateDistance=function(t,e){this.distance+=t.dist(e),this.updateScaledDistance()},ga("LineBucket",Su,{omit:["layers","patternFeatures"]});var Eu=new lo({"line-cap":new ro(le.layout_line["line-cap"]),"line-join":new io(le.layout_line["line-join"]),"line-miter-limit":new ro(le.layout_line["line-miter-limit"]),"line-round-limit":new ro(le.layout_line["line-round-limit"]),"line-sort-key":new io(le.layout_line["line-sort-key"])}),Cu={paint:new lo({"line-opacity":new io(le.paint_line["line-opacity"]),"line-color":new io(le.paint_line["line-color"]),"line-translate":new ro(le.paint_line["line-translate"]),"line-translate-anchor":new ro(le.paint_line["line-translate-anchor"]),"line-width":new io(le.paint_line["line-width"]),"line-gap-width":new io(le.paint_line["line-gap-width"]),"line-offset":new io(le.paint_line["line-offset"]),"line-blur":new io(le.paint_line["line-blur"]),"line-dasharray":new oo(le.paint_line["line-dasharray"]),"line-pattern":new ao(le.paint_line["line-pattern"]),"line-gradient":new so(le.paint_line["line-gradient"])}),layout:Eu},Pu=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.possiblyEvaluate=function(e,n){return n=new $a(Math.floor(n.zoom),{now:n.now,fadeDuration:n.fadeDuration,zoomHistory:n.zoomHistory,transition:n.transition}),t.prototype.possiblyEvaluate.call(this,e,n)},e.prototype.evaluate=function(e,n,r,i){return n=v({},n,{zoom:Math.floor(n.zoom)}),t.prototype.evaluate.call(this,e,n,r,i)},e}(io),Lu=new Pu(Cu.paint.properties["line-width"].specification);Lu.useIntegerZoom=!0;var Ou=function(t){function e(e){t.call(this,e,Cu)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._handleSpecialPaintPropertyUpdate=function(t){"line-gradient"===t&&this._updateGradient()},e.prototype._updateGradient=function(){var t=this._transitionablePaint._values["line-gradient"].value.expression;this.gradient=Wl(t,"lineProgress"),this.gradientTexture=null},e.prototype.recalculate=function(e,n){t.prototype.recalculate.call(this,e,n),this.paint._values["line-floorwidth"]=Lu.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,e)},e.prototype.createBucket=function(t){return new Su(t)},e.prototype.queryRadius=function(t){var e=t,n=Iu(Zs("line-width",this,e),Zs("line-gap-width",this,e)),r=Zs("line-offset",this,e);return n/2+Math.abs(r)+Js(this.paint.get("line-translate"))},e.prototype.queryIntersectsFeature=function(t,e,n,r,i,a,o){var s=Qs(t,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),a.angle,o),l=o/2*Iu(this.paint.get("line-width").evaluate(e,n),this.paint.get("line-gap-width").evaluate(e,n)),c=this.paint.get("line-offset").evaluate(e,n);return c&&(r=Du(r,c*o)),Us(s,r,l)},e.prototype.isTileClipped=function(){return!0},e}(uo);function Iu(t,e){return e>0?e+2*t:t}function Du(t,e){for(var n=[],r=new a(0,0),i=0;i":"\ufe40","?":"\ufe16","@":"\uff20","[":"\ufe47","\\":"\uff3c","]":"\ufe48","^":"\uff3e",_:"\ufe33","`":"\uff40","{":"\ufe37","|":"\u2015","}":"\ufe38","~":"\uff5e","\xa2":"\uffe0","\xa3":"\uffe1","\xa5":"\uffe5","\xa6":"\uffe4","\xac":"\uffe2","\xaf":"\uffe3","\u2013":"\ufe32","\u2014":"\ufe31","\u2018":"\ufe43","\u2019":"\ufe44","\u201c":"\ufe41","\u201d":"\ufe42","\u2026":"\ufe19","\u2027":"\u30fb","\u20a9":"\uffe6","\u3001":"\ufe11","\u3002":"\ufe12","\u3008":"\ufe3f","\u3009":"\ufe40","\u300a":"\ufe3d","\u300b":"\ufe3e","\u300c":"\ufe41","\u300d":"\ufe42","\u300e":"\ufe43","\u300f":"\ufe44","\u3010":"\ufe3b","\u3011":"\ufe3c","\u3014":"\ufe39","\u3015":"\ufe3a","\u3016":"\ufe17","\u3017":"\ufe18","\uff01":"\ufe15","\uff08":"\ufe35","\uff09":"\ufe36","\uff0c":"\ufe10","\uff0d":"\ufe32","\uff0e":"\u30fb","\uff1a":"\ufe13","\uff1b":"\ufe14","\uff1c":"\ufe3f","\uff1e":"\ufe40","\uff1f":"\ufe16","\uff3b":"\ufe47","\uff3d":"\ufe48","\uff3f":"\ufe33","\uff5b":"\ufe37","\uff5c":"\u2015","\uff5d":"\ufe38","\uff5f":"\ufe35","\uff60":"\ufe36","\uff61":"\ufe12","\uff62":"\ufe41","\uff63":"\ufe42"};function qu(t){for(var e="",n=0;n>1,u=-7,f=n?i-1:0,h=n?-1:1,d=t[e+f];for(f+=h,a=d&(1<<-u)-1,d>>=-u,u+=s;u>0;a=256*a+t[e+f],f+=h,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=r;u>0;o=256*o+t[e+f],f+=h,u-=8);if(0===a)a=1-c;else{if(a===l)return o?NaN:1/0*(d?-1:1);o+=Math.pow(2,r),a-=c}return(d?-1:1)*o*Math.pow(2,a-r)},write:function(t,e,n,r,i,a){var o,s,l,c=8*a-i-1,u=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:a-1,p=r?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+f>=1?h/l:h*Math.pow(2,1-f))*l>=2&&(o++,l/=2),o+f>=u?(s=0,o=u):o+f>=1?(s=(e*l-1)*Math.pow(2,i),o+=f):(s=e*Math.pow(2,f-1)*Math.pow(2,i),o=0));i>=8;t[n+d]=255&s,d+=p,s/=256,i-=8);for(o=o<0;t[n+d]=255&o,d+=p,o/=256,c-=8);t[n+d-p]|=128*g}},Yu=$u;function $u(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}$u.Varint=0,$u.Fixed64=1,$u.Bytes=2,$u.Fixed32=5;var Xu=4294967296,Ku=1/Xu,Zu=12,Ju="undefined"===typeof TextDecoder?null:new TextDecoder("utf8");function Qu(t,e,n){var r,i,a=n.buf;if(r=(112&(i=a[n.pos++]))>>4,i<128)return ef(t,r,e);if(r|=(127&(i=a[n.pos++]))<<3,i<128)return ef(t,r,e);if(r|=(127&(i=a[n.pos++]))<<10,i<128)return ef(t,r,e);if(r|=(127&(i=a[n.pos++]))<<17,i<128)return ef(t,r,e);if(r|=(127&(i=a[n.pos++]))<<24,i<128)return ef(t,r,e);if(r|=(1&(i=a[n.pos++]))<<31,i<128)return ef(t,r,e);throw new Error("Expected varint not more than 10 bytes")}function tf(t){return t.type===$u.Bytes?t.readVarint()+t.pos:t.pos+1}function ef(t,e,n){return n?4294967296*e+(t>>>0):4294967296*(e>>>0)+(t>>>0)}function nf(t,e){var n,r;if(t>=0?(n=t%4294967296|0,r=t/4294967296|0):(r=~(-t/4294967296),4294967295^(n=~(-t%4294967296))?n=n+1|0:(n=0,r=r+1|0)),t>=0x10000000000000000||t<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");e.realloc(10),rf(n,r,e),af(r,e)}function rf(t,e,n){n.buf[n.pos++]=127&t|128,t>>>=7,n.buf[n.pos++]=127&t|128,t>>>=7,n.buf[n.pos++]=127&t|128,t>>>=7,n.buf[n.pos++]=127&t|128,t>>>=7,n.buf[n.pos]=127&t}function af(t,e){var n=(7&t)<<4;e.buf[e.pos++]|=n|((t>>>=3)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t)))))}function of(t,e,n){var r=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.floor(Math.log(e)/(7*Math.LN2));n.realloc(r);for(var i=n.pos-1;i>=t;i--)n.buf[i+r]=n.buf[i]}function sf(t,e){for(var n=0;n>>8,t[n+2]=e>>>16,t[n+3]=e>>>24}function yf(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+(t[e+3]<<24)}function bf(t,e,n){for(var r="",i=e;i239?4:l>223?3:l>191?2:1;if(i+u>n)break;1===u?l<128&&(c=l):2===u?128===(192&(a=t[i+1]))&&(c=(31&l)<<6|63&a)<=127&&(c=null):3===u?(a=t[i+1],o=t[i+2],128===(192&a)&&128===(192&o)&&((c=(15&l)<<12|(63&a)<<6|63&o)<=2047||c>=55296&&c<=57343)&&(c=null)):4===u&&(a=t[i+1],o=t[i+2],s=t[i+3],128===(192&a)&&128===(192&o)&&128===(192&s)&&((c=(15&l)<<18|(63&a)<<12|(63&o)<<6|63&s)<=65535||c>=1114112)&&(c=null)),null===c?(c=65533,u=1):c>65535&&(c-=65536,r+=String.fromCharCode(c>>>10&1023|55296),c=56320|1023&c),r+=String.fromCharCode(c),i+=u}return r}function xf(t,e,n){return Ju.decode(t.subarray(e,n))}function wf(t,e,n){for(var r,i,a=0;a55295&&r<57344){if(!i){r>56319||a+1===e.length?(t[n++]=239,t[n++]=191,t[n++]=189):i=r;continue}if(r<56320){t[n++]=239,t[n++]=191,t[n++]=189,i=r;continue}r=i-55296<<10|r-56320|65536,i=null}else i&&(t[n++]=239,t[n++]=191,t[n++]=189,i=null);r<128?t[n++]=r:(r<2048?t[n++]=r>>6|192:(r<65536?t[n++]=r>>12|224:(t[n++]=r>>18|240,t[n++]=r>>12&63|128),t[n++]=r>>6&63|128),t[n++]=63&r|128)}return n}$u.prototype={destroy:function(){this.buf=null},readFields:function(t,e,n){for(n=n||this.length;this.pos>3,a=this.pos;this.type=7&r,t(i,e,this),this.pos===a&&this.skip(r)}return e},readMessage:function(t,e){return this.readFields(t,e,this.readVarint()+this.pos)},readFixed32:function(){var t=vf(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=yf(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=vf(this.buf,this.pos)+vf(this.buf,this.pos+4)*Xu;return this.pos+=8,t},readSFixed64:function(){var t=vf(this.buf,this.pos)+yf(this.buf,this.pos+4)*Xu;return this.pos+=8,t},readFloat:function(){var t=Wu.read(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=Wu.read(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var e,n,r=this.buf;return e=127&(n=r[this.pos++]),n<128?e:(e|=(127&(n=r[this.pos++]))<<7,n<128?e:(e|=(127&(n=r[this.pos++]))<<14,n<128?e:(e|=(127&(n=r[this.pos++]))<<21,n<128?e:Qu(e|=(15&(n=r[this.pos]))<<28,t,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2===1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,e=this.pos;return this.pos=t,t-e>=Zu&&Ju?xf(this.buf,e,t):bf(this.buf,e,t)},readBytes:function(){var t=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,t);return this.pos=t,e},readPackedVarint:function(t,e){if(this.type!==$u.Bytes)return t.push(this.readVarint(e));var n=tf(this);for(t=t||[];this.pos127;);else if(e===$u.Bytes)this.pos=this.readVarint()+this.pos;else if(e===$u.Fixed32)this.pos+=4;else{if(e!==$u.Fixed64)throw new Error("Unimplemented type: "+e);this.pos+=8}},writeTag:function(t,e){this.writeVarint(t<<3|e)},realloc:function(t){for(var e=this.length||16;e268435455||t<0?nf(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127))))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(Boolean(t))},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var e=this.pos;this.pos=wf(this.buf,t,this.pos);var n=this.pos-e;n>=128&&of(e,n,this),this.pos=e-1,this.writeVarint(n),this.pos+=n},writeFloat:function(t){this.realloc(4),Wu.write(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),Wu.write(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var e=t.length;this.writeVarint(e),this.realloc(e);for(var n=0;n=128&&of(n,r,this),this.pos=n-1,this.writeVarint(r),this.pos+=r},writeMessage:function(t,e,n){this.writeTag(t,$u.Bytes),this.writeRawMessage(e,n)},writePackedVarint:function(t,e){e.length&&this.writeMessage(t,sf,e)},writePackedSVarint:function(t,e){e.length&&this.writeMessage(t,lf,e)},writePackedBoolean:function(t,e){e.length&&this.writeMessage(t,ff,e)},writePackedFloat:function(t,e){e.length&&this.writeMessage(t,cf,e)},writePackedDouble:function(t,e){e.length&&this.writeMessage(t,uf,e)},writePackedFixed32:function(t,e){e.length&&this.writeMessage(t,hf,e)},writePackedSFixed32:function(t,e){e.length&&this.writeMessage(t,df,e)},writePackedFixed64:function(t,e){e.length&&this.writeMessage(t,pf,e)},writePackedSFixed64:function(t,e){e.length&&this.writeMessage(t,gf,e)},writeBytesField:function(t,e){this.writeTag(t,$u.Bytes),this.writeBytes(e)},writeFixed32Field:function(t,e){this.writeTag(t,$u.Fixed32),this.writeFixed32(e)},writeSFixed32Field:function(t,e){this.writeTag(t,$u.Fixed32),this.writeSFixed32(e)},writeFixed64Field:function(t,e){this.writeTag(t,$u.Fixed64),this.writeFixed64(e)},writeSFixed64Field:function(t,e){this.writeTag(t,$u.Fixed64),this.writeSFixed64(e)},writeVarintField:function(t,e){this.writeTag(t,$u.Varint),this.writeVarint(e)},writeSVarintField:function(t,e){this.writeTag(t,$u.Varint),this.writeSVarint(e)},writeStringField:function(t,e){this.writeTag(t,$u.Bytes),this.writeString(e)},writeFloatField:function(t,e){this.writeTag(t,$u.Fixed32),this.writeFloat(e)},writeDoubleField:function(t,e){this.writeTag(t,$u.Fixed64),this.writeDouble(e)},writeBooleanField:function(t,e){this.writeVarintField(t,Boolean(e))}};var _f=3;function kf(t,e,n){1===t&&n.readMessage(Tf,e)}function Tf(t,e,n){if(3===t){var r=n.readMessage(Mf,{}),i=r.id,a=r.bitmap,o=r.width,s=r.height,l=r.left,c=r.top,u=r.advance;e.push({id:i,bitmap:new Vl({width:o+2*_f,height:s+2*_f},a),metrics:{width:o,height:s,left:l,top:c,advance:u}})}}function Mf(t,e,n){1===t?e.id=n.readVarint():2===t?e.bitmap=n.readBytes():3===t?e.width=n.readVarint():4===t?e.height=n.readVarint():5===t?e.left=n.readSVarint():6===t?e.top=n.readSVarint():7===t&&(e.advance=n.readVarint())}function Af(t){return new Yu(t).readFields(kf,[])}var Sf=_f;function Ef(t){for(var e=0,n=0,r=0,i=t;r=0;h--){var d=o[h];if(!(f.w>d.w||f.h>d.h)){if(f.x=d.x,f.y=d.y,l=Math.max(l,f.y+f.h),s=Math.max(s,f.x+f.w),f.w===d.w&&f.h===d.h){var p=o.pop();h=0&&r>=t&&Hf[this.text.charCodeAt(r)];r--)n--;this.text=this.text.substring(t,n),this.sectionIndex=this.sectionIndex.slice(t,n)},Ff.prototype.substring=function(t,e){var n=new Ff;return n.text=this.text.substring(t,e),n.sectionIndex=this.sectionIndex.slice(t,e),n.sections=this.sections,n},Ff.prototype.toString=function(){return this.text},Ff.prototype.getMaxScale=function(){var t=this;return this.sectionIndex.reduce((function(e,n){return Math.max(e,t.sections[n].scale)}),0)},Ff.prototype.addTextSection=function(t,e){this.text+=t.text,this.sections.push(jf.forText(t.scale,t.fontStack||e));for(var n=this.sections.length-1,r=0;r=Nf?null:++this.imageSectionID:(this.imageSectionID=zf,this.imageSectionID)};var Hf={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},Vf={};function qf(t,e,n,r,i,a){if(e.imageName){var o=r[e.imageName];return o?o.displaySize[0]*e.scale*Gu/a+i:0}var s=n[e.fontStack],l=s&&s[t];return l?l.metrics.advance*e.scale+i:0}function Gf(t,e,n,r,i,a){for(var o=0,s=0;s=0,u=0,f=0;f0&&j>M&&(M=j)}else{var F=n[S.fontStack],B=F&&F[C];if(B&&B.rect)O=B.rect,L=B.metrics;else{var U=e[S.fontStack],H=U&&U[C];if(!H)continue;L=H.metrics}P=(w-S.scale)*Gu}R?(t.verticalizable=!0,T.push({glyph:C,imageName:I,x:h,y:d+P,vertical:R,scale:S.scale,fontStack:S.fontStack,sectionIndex:E,metrics:L,rect:O}),h+=D*S.scale+c):(T.push({glyph:C,imageName:I,x:h,y:d+P,vertical:R,scale:S.scale,fontStack:S.fontStack,sectionIndex:E,metrics:L,rect:O}),h+=L.advance*S.scale+c)}if(0!==T.length){var V=h-c;p=Math.max(V,p),Qf(T,0,T.length-1,v,M)}h=0;var q=a*w+M;k.lineOffset=Math.max(M,_),d+=q,g=Math.max(q,g),++m}else d+=a,++m}var G=d-Df,W=Zf(o),Y=W.horizontalAlign,$=W.verticalAlign;th(t.positionedLines,v,Y,$,p,g,a,G,i.length),t.top+=-$*G,t.bottom=t.top+G,t.left+=-Y*p,t.right=t.left+p}function Qf(t,e,n,r,i){if(r||i)for(var a=t[n],o=a.metrics.advance*a.scale,s=(t[n].x+o)*r,l=e;l<=n;l++)t[l].x-=s,t[l].y+=i}function th(t,e,n,r,i,a,o,s,l){var c=(e-n)*i,u=0;u=a!==o?-s*r-Df:(-r*l+.5)*o;for(var f=0,h=t;f-n/2;){if(--o<0)return!1;s-=t[o].dist(a),a=t[o]}s+=t[o].dist(t[o+1]),o++;for(var l=[],c=0;sr;)c-=l.shift().angleDelta;if(c>i)return!1;o++,s+=f.dist(h)}return!0}function uh(t){for(var e=0,n=0;nc){var p=(c-l)/d,g=Nn(f.x,h.x,p),v=Nn(f.y,h.y,p),m=new rh(g,v,h.angleTo(f),u);return m._round(),!o||ch(t,m,s,o,e)?m:void 0}l+=d}}function ph(t,e,n,r,i,a,o,s,l){var c=fh(r,a,o),u=hh(r,i),f=u*o,h=0===t[0].x||t[0].x===l||0===t[0].y||t[0].y===l;return e-f=0&&x=0&&w=0&&h+c<=u){var _=new rh(x,w,y,p);_._round(),r&&!ch(t,_,a,r,i)||d.push(_)}}f+=m}return s||d.length||o||(d=gh(t,f/2,n,r,i,a,o,!0,l)),d}function vh(t,e,n,r,i){for(var o=[],s=0;s=r&&h.x>=r||(f.x>=r?f=new a(r,f.y+(h.y-f.y)*((r-f.x)/(h.x-f.x)))._round():h.x>=r&&(h=new a(r,f.y+(h.y-f.y)*((r-f.x)/(h.x-f.x)))._round()),f.y>=i&&h.y>=i||(f.y>=i?f=new a(f.x+(h.x-f.x)*((i-f.y)/(h.y-f.y)),i)._round():h.y>=i&&(h=new a(f.x+(h.x-f.x)*((i-f.y)/(h.y-f.y)),i)._round()),c&&f.equals(c[c.length-1])||(c=[f],o.push(c)),c.push(h)))))}return o}var mh=Cf;function yh(t,e,n,r){var i=[],o=t.image,s=o.pixelRatio,l=o.paddedRect.w-2*mh,c=o.paddedRect.h-2*mh,u=t.right-t.left,f=t.bottom-t.top,h=o.stretchX||[[0,l]],d=o.stretchY||[[0,c]],p=function(t,e){return t+e[1]-e[0]},g=h.reduce(p,0),v=d.reduce(p,0),m=l-g,y=c-v,b=0,x=g,w=0,_=v,k=0,T=m,M=0,A=y;if(o.content&&r){var S=o.content;b=bh(h,0,S[0]),w=bh(d,0,S[1]),x=bh(h,S[0],S[2]),_=bh(d,S[1],S[3]),k=S[0]-b,M=S[1]-w,T=S[2]-S[0]-x,A=S[3]-S[1]-_}var E=function(r,i,l,c){var h=wh(r.stretch-b,x,u,t.left),d=_h(r.fixed-k,T,r.stretch,g),p=wh(i.stretch-w,_,f,t.top),m=_h(i.fixed-M,A,i.stretch,v),y=wh(l.stretch-b,x,u,t.left),S=_h(l.fixed-k,T,l.stretch,g),E=wh(c.stretch-w,_,f,t.top),C=_h(c.fixed-M,A,c.stretch,v),P=new a(h,p),L=new a(y,p),O=new a(y,E),I=new a(h,E),D=new a(d/s,m/s),R=new a(S/s,C/s),z=e*Math.PI/180;if(z){var N=Math.sin(z),j=Math.cos(z),F=[j,-N,N,j];P._matMult(F),L._matMult(F),I._matMult(F),O._matMult(F)}var B=r.stretch+r.fixed,U=l.stretch+l.fixed,H=i.stretch+i.fixed,V=c.stretch+c.fixed;return{tl:P,tr:L,bl:I,br:O,tex:{x:o.paddedRect.x+mh+B,y:o.paddedRect.y+mh+H,w:U-B,h:V-H},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:D,pixelOffsetBR:R,minFontScaleX:T/s/u,minFontScaleY:A/s/f,isSDF:n}};if(r&&(o.stretchX||o.stretchY))for(var C=xh(h,m,g),P=xh(d,y,v),L=0;L0&&(p=Math.max(10,p),this.circleDiameter=p)}else{var g=o.top*s-l,v=o.bottom*s+l,m=o.left*s-l,y=o.right*s+l,b=o.collisionPadding;if(b&&(m-=b[0]*s,g-=b[1]*s,y+=b[2]*s,v+=b[3]*s),u){var x=new a(m,g),w=new a(y,g),_=new a(m,v),k=new a(y,v),T=u*Math.PI/180;x._rotate(T),w._rotate(T),_._rotate(T),k._rotate(T),m=Math.min(x.x,w.x,_.x,k.x),y=Math.max(x.x,w.x,_.x,k.x),g=Math.min(x.y,w.y,_.y,k.y),v=Math.max(x.y,w.y,_.y,k.y)}t.emplaceBack(e.x,e.y,m,g,y,v,n,r,i)}this.boxEndIndex=t.length},Mh=function(t,e){if(void 0===t&&(t=[]),void 0===e&&(e=Ah),this.data=t,this.length=this.data.length,this.compare=e,this.length>0)for(var n=(this.length>>1)-1;n>=0;n--)this._down(n)};function Ah(t,e){return te?1:0}function Sh(t,e,n){void 0===e&&(e=1),void 0===n&&(n=!1);for(var r=1/0,i=1/0,o=-1/0,s=-1/0,l=t[0],c=0;co)&&(o=u.x),(!c||u.y>s)&&(s=u.y)}var f=o-r,h=s-i,d=Math.min(f,h),p=d/2,g=new Mh([],Eh);if(0===d)return new a(r,i);for(var v=r;vy.d||!y.d)&&(y=x,n&&console.log("found best %d after %d probes",Math.round(1e4*x.d)/1e4,b)),x.max-y.d<=e||(p=x.h/2,g.push(new Ch(x.p.x-p,x.p.y-p,p,t)),g.push(new Ch(x.p.x+p,x.p.y-p,p,t)),g.push(new Ch(x.p.x-p,x.p.y+p,p,t)),g.push(new Ch(x.p.x+p,x.p.y+p,p,t)),b+=4)}return n&&(console.log("num probes: "+b),console.log("best distance: "+y.d)),y.p}function Eh(t,e){return e.max-t.max}function Ch(t,e,n,r){this.p=new a(t,e),this.h=n,this.d=Ph(this.p,r),this.max=this.d+this.h*Math.SQRT2}function Ph(t,e){for(var n=!1,r=1/0,i=0;it.y!==u.y>t.y&&t.x<(u.x-c.x)*(t.y-c.y)/(u.y-c.y)+c.x&&(n=!n),r=Math.min(r,Ws(t,c,u))}return(n?1:-1)*Math.sqrt(r)}function Lh(t){for(var e=0,n=0,r=0,i=t[0],a=0,o=i.length,s=o-1;a0&&(this.data[0]=e,this._down(0)),t}},Mh.prototype.peek=function(){return this.data[0]},Mh.prototype._up=function(t){for(var e=this,n=e.data,r=e.compare,i=n[t];t>0;){var a=t-1>>1,o=n[a];if(r(i,o)>=0)break;n[t]=o,t=a}n[t]=i},Mh.prototype._down=function(t){for(var e=this,n=e.data,r=e.compare,i=this.length>>1,a=n[t];t=0)break;n[t]=s,t=o}n[t]=a};var Oh=7,Ih=Number.POSITIVE_INFINITY;function Dh(t,e){function n(t,e){var n=0,r=0;e<0&&(e=0);var i=e/Math.sqrt(2);switch(t){case"top-right":case"top-left":r=i-Oh;break;case"bottom-right":case"bottom-left":r=-i+Oh;break;case"bottom":r=-e+Oh;break;case"top":r=e-Oh}switch(t){case"top-right":case"bottom-right":n=-i;break;case"top-left":case"bottom-left":n=i;break;case"left":n=e;break;case"right":n=-e}return[n,r]}function r(t,e,n){var r=0,i=0;switch(e=Math.abs(e),n=Math.abs(n),t){case"top-right":case"top-left":case"top":i=n-Oh;break;case"bottom-right":case"bottom-left":case"bottom":i=-n+Oh}switch(t){case"top-right":case"bottom-right":case"right":r=-e;break;case"top-left":case"bottom-left":case"left":r=e}return[r,i]}return e[1]!==Ih?r(t,e[0],e[1]):n(t,e[0])}function Rh(t,e,n,r,i,a,o){t.createArrays();var s=512*t.overscaling;t.tilePixelRatio=Os/s,t.compareText={},t.iconsNeedLinear=!1;var l=t.layers[0].layout,c=t.layers[0]._unevaluatedLayout._values,u={};if("composite"===t.textSizeData.kind){var f=t.textSizeData,h=f.minZoom,d=f.maxZoom;u.compositeTextSizes=[c["text-size"].possiblyEvaluate(new $a(h),o),c["text-size"].possiblyEvaluate(new $a(d),o)]}if("composite"===t.iconSizeData.kind){var p=t.iconSizeData,g=p.minZoom,v=p.maxZoom;u.compositeIconSizes=[c["icon-size"].possiblyEvaluate(new $a(g),o),c["icon-size"].possiblyEvaluate(new $a(v),o)]}u.layoutTextSize=c["text-size"].possiblyEvaluate(new $a(t.zoom+1),o),u.layoutIconSize=c["icon-size"].possiblyEvaluate(new $a(t.zoom+1),o),u.textMaxSize=c["text-size"].possiblyEvaluate(new $a(18));for(var m=l.get("text-line-height")*Gu,y="map"===l.get("text-rotation-alignment")&&"point"!==l.get("symbol-placement"),b=l.get("text-keep-upright"),x=l.get("text-size"),w=function(){var a=k[_],s=l.get("text-font").evaluate(a,{},o).join(","),c=x.evaluate(a,{},o),f=u.layoutTextSize.evaluate(a,{},o),h=u.layoutIconSize.evaluate(a,{},o),d={horizontal:{},vertical:void 0},p=a.text,g=[0,0];if(p){var v=p.toString(),w=l.get("text-letter-spacing").evaluate(a,{},o)*Gu,T=Ta(v)?w:0,M=l.get("text-anchor").evaluate(a,{},o),A=l.get("text-variable-anchor");if(!A){var S=l.get("text-radial-offset").evaluate(a,{},o);g=S?Dh(M,[S*Gu,Ih]):l.get("text-offset").evaluate(a,{},o).map((function(t){return t*Gu}))}var E=y?"center":l.get("text-justify").evaluate(a,{},o),P=l.get("symbol-placement"),L="point"===P?l.get("text-max-width").evaluate(a,{},o)*Gu:0,O=function(){t.allowVerticalPlacement&&ka(v)&&(d.vertical=Uf(p,e,n,i,s,L,m,M,"left",T,g,If.vertical,!0,P,f,c))};if(!y&&A){for(var I="auto"===E?A.map((function(t){return zh(t)})):[E],D=!1,R=0;R=Os||f.y<0||f.y>=Os||Hh(t,f,s,n,r,i,h,t.layers[0],t.collisionBoxArray,e.index,e.sourceLayerIndex,t.index,y,_,M,l,x,k,A,p,e,a,c,u,o)};if("line"===S)for(var L=0,O=vh(e.geometry,0,0,Os,Os);L1){var B=dh(F,T,n.vertical||g,r,v,b);B&&P(F,B)}}else if("Polygon"===e.type)for(var U=0,H=Rc(e.geometry,0);UFh&&C(t.layerIds[0]+': Value for "text-size" is >= '+jh+'. Reduce your "text-size".'):"composite"===v.kind&&((m=[ih*d.compositeTextSizes[0].evaluate(o,{},p),ih*d.compositeTextSizes[1].evaluate(o,{},p)])[0]>Fh||m[1]>Fh)&&C(t.layerIds[0]+': Value for "text-size" is >= '+jh+'. Reduce your "text-size".'),t.addSymbols(t.text,g,m,s,a,o,c,e,l.lineStartIndex,l.lineLength,h,p);for(var y=0,b=u;yFh&&C(t.layerIds[0]+': Value for "icon-size" is >= '+jh+'. Reduce your "icon-size".'):"composite"===$.kind&&((X=[ih*w.compositeIconSizes[0].evaluate(x,{},k),ih*w.compositeIconSizes[1].evaluate(x,{},k)])[0]>Fh||X[1]>Fh)&&C(t.layerIds[0]+': Value for "icon-size" is >= '+jh+'. Reduce your "icon-size".'),t.addSymbols(t.icon,W,X,b,y,x,!1,e,L.lineStartIndex,L.lineLength,-1,k),z=t.icon.placedSymbolArray.length-1,Y&&(I=4*Y.length,t.addSymbols(t.icon,Y,X,b,y,x,If.vertical,e,L.lineStartIndex,L.lineLength,-1,k),N=t.icon.placedSymbolArray.length-1)}for(var K in r.horizontal){var Z=r.horizontal[K];if(!A){F=is(Z.text);var J=s.layout.get("text-rotate").evaluate(x,{},k);A=new Th(l,e,c,u,f,Z,h,d,p,J)}var Q=1===Z.positionedLines.length;if(D+=Bh(t,e,Z,a,s,p,x,g,L,r.vertical?If.horizontal:If.horizontalOnly,Q?Object.keys(r.horizontal):[K],j,z,w,k),Q)break}r.vertical&&(R+=Bh(t,e,r.vertical,a,s,p,x,g,L,If.vertical,["vertical"],j,N,w,k));var tt=A?A.boxStartIndex:t.collisionBoxArray.length,et=A?A.boxEndIndex:t.collisionBoxArray.length,nt=E?E.boxStartIndex:t.collisionBoxArray.length,rt=E?E.boxEndIndex:t.collisionBoxArray.length,it=S?S.boxStartIndex:t.collisionBoxArray.length,at=S?S.boxEndIndex:t.collisionBoxArray.length,ot=P?P.boxStartIndex:t.collisionBoxArray.length,st=P?P.boxEndIndex:t.collisionBoxArray.length,lt=-1,ct=function(t,e){return t&&t.circleDiameter?Math.max(t.circleDiameter,e):e};lt=ct(A,lt),lt=ct(E,lt),lt=ct(S,lt);var ut=(lt=ct(P,lt))>-1?1:0;ut&&(lt*=T/Gu),t.glyphOffsetArray.length>=Zh.MAX_GLYPHS&&C("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),void 0!==x.sortKey&&t.addToSortKeyRanges(t.symbolInstances.length,x.sortKey),t.symbolInstances.emplaceBack(e.x,e.y,j.right>=0?j.right:-1,j.center>=0?j.center:-1,j.left>=0?j.left:-1,j.vertical||-1,z,N,F,tt,et,nt,rt,it,at,ot,st,c,D,R,O,I,ut,0,h,B,U,lt)}function Vh(t,e,n,r){var i=t.compareText;if(e in i){for(var a=i[e],o=a.length-1;o>=0;o--)if(r.dist(a[o])0)&&("constant"!==a.value.kind||a.value.value.length>0),c="constant"!==s.value.kind||!!s.value.value||Object.keys(s.parameters).length>0,u=i.get("symbol-sort-key");if(this.features=[],l||c){for(var f=e.iconDependencies,h=e.glyphDependencies,d=e.availableImages,p=new $a(this.zoom),g=0,v=t;g=0;for(var I=0,D=T.sections;I=0;s--)a[s]={x:e[s].x,y:e[s].y,tileUnitDistanceFromAnchor:i},s>0&&(i+=e[s-1].dist(e[s]));for(var l=0;l0},Zh.prototype.hasIconData=function(){return this.icon.segments.get().length>0},Zh.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},Zh.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},Zh.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},Zh.prototype.addIndicesForPlacedSymbol=function(t,e){for(var n=t.placedSymbolArray.get(e),r=n.vertexStartIndex+4*n.numGlyphs,i=n.vertexStartIndex;i1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(t),this.sortedAngle=t,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var n=0,r=this.symbolInstanceIndexes;n=0&&r.indexOf(t)===n&&e.addIndicesForPlacedSymbol(e.text,t)})),a.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,a.verticalPlacedTextSymbolIndex),a.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,a.placedIconSymbolIndex),a.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,a.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},ga("SymbolBucket",Zh,{omit:["layers","collisionBoxArray","features","compareText"]}),Zh.MAX_GLYPHS=65535,Zh.addDynamicAttributes=Yh;var Qh=new lo({"symbol-placement":new ro(le.layout_symbol["symbol-placement"]),"symbol-spacing":new ro(le.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new ro(le.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new io(le.layout_symbol["symbol-sort-key"]),"symbol-z-order":new ro(le.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new ro(le.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new ro(le.layout_symbol["icon-ignore-placement"]),"icon-optional":new ro(le.layout_symbol["icon-optional"]),"icon-rotation-alignment":new ro(le.layout_symbol["icon-rotation-alignment"]),"icon-size":new io(le.layout_symbol["icon-size"]),"icon-text-fit":new ro(le.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new ro(le.layout_symbol["icon-text-fit-padding"]),"icon-image":new io(le.layout_symbol["icon-image"]),"icon-rotate":new io(le.layout_symbol["icon-rotate"]),"icon-padding":new ro(le.layout_symbol["icon-padding"]),"icon-keep-upright":new ro(le.layout_symbol["icon-keep-upright"]),"icon-offset":new io(le.layout_symbol["icon-offset"]),"icon-anchor":new io(le.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new ro(le.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new ro(le.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new ro(le.layout_symbol["text-rotation-alignment"]),"text-field":new io(le.layout_symbol["text-field"]),"text-font":new io(le.layout_symbol["text-font"]),"text-size":new io(le.layout_symbol["text-size"]),"text-max-width":new io(le.layout_symbol["text-max-width"]),"text-line-height":new ro(le.layout_symbol["text-line-height"]),"text-letter-spacing":new io(le.layout_symbol["text-letter-spacing"]),"text-justify":new io(le.layout_symbol["text-justify"]),"text-radial-offset":new io(le.layout_symbol["text-radial-offset"]),"text-variable-anchor":new ro(le.layout_symbol["text-variable-anchor"]),"text-anchor":new io(le.layout_symbol["text-anchor"]),"text-max-angle":new ro(le.layout_symbol["text-max-angle"]),"text-writing-mode":new ro(le.layout_symbol["text-writing-mode"]),"text-rotate":new io(le.layout_symbol["text-rotate"]),"text-padding":new ro(le.layout_symbol["text-padding"]),"text-keep-upright":new ro(le.layout_symbol["text-keep-upright"]),"text-transform":new io(le.layout_symbol["text-transform"]),"text-offset":new io(le.layout_symbol["text-offset"]),"text-allow-overlap":new ro(le.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new ro(le.layout_symbol["text-ignore-placement"]),"text-optional":new ro(le.layout_symbol["text-optional"])}),td={paint:new lo({"icon-opacity":new io(le.paint_symbol["icon-opacity"]),"icon-color":new io(le.paint_symbol["icon-color"]),"icon-halo-color":new io(le.paint_symbol["icon-halo-color"]),"icon-halo-width":new io(le.paint_symbol["icon-halo-width"]),"icon-halo-blur":new io(le.paint_symbol["icon-halo-blur"]),"icon-translate":new ro(le.paint_symbol["icon-translate"]),"icon-translate-anchor":new ro(le.paint_symbol["icon-translate-anchor"]),"text-opacity":new io(le.paint_symbol["text-opacity"]),"text-color":new io(le.paint_symbol["text-color"],{runtimeType:xe,getOverride:function(t){return t.textColor},hasOverride:function(t){return!!t.textColor}}),"text-halo-color":new io(le.paint_symbol["text-halo-color"]),"text-halo-width":new io(le.paint_symbol["text-halo-width"]),"text-halo-blur":new io(le.paint_symbol["text-halo-blur"]),"text-translate":new ro(le.paint_symbol["text-translate"]),"text-translate-anchor":new ro(le.paint_symbol["text-translate-anchor"])}),layout:Qh},ed=function(t){this.type=t.property.overrides?t.property.overrides.runtimeType:ve,this.defaultValue=t};ed.prototype.evaluate=function(t){if(t.formattedSection){var e=this.defaultValue.property.overrides;if(e&&e.hasOverride(t.formattedSection))return e.getOverride(t.formattedSection)}return t.feature&&t.featureState?this.defaultValue.evaluate(t.feature,t.featureState):this.defaultValue.property.specification.default},ed.prototype.eachChild=function(t){this.defaultValue.isConstant()||t(this.defaultValue.value._styleExpression.expression)},ed.prototype.outputDefined=function(){return!1},ed.prototype.serialize=function(){return null},ga("FormatSectionOverride",ed,{omit:["defaultValue"]});var nd=function(t){function e(e){t.call(this,e,td)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.recalculate=function(e,n){if(t.prototype.recalculate.call(this,e,n),"auto"===this.layout.get("icon-rotation-alignment")&&("point"!==this.layout.get("symbol-placement")?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),"auto"===this.layout.get("text-rotation-alignment")&&("point"!==this.layout.get("symbol-placement")?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),"auto"===this.layout.get("text-pitch-alignment")&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),"auto"===this.layout.get("icon-pitch-alignment")&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),"point"===this.layout.get("symbol-placement")){var r=this.layout.get("text-writing-mode");if(r){for(var i=[],a=0,o=r;a",targetMapId:r,sourceMapId:a.mapId})}}},yd.prototype.receive=function(t){var e=t.data,n=e.id;if(n&&(!e.targetMapId||this.mapId===e.targetMapId))if(""===e.type){delete this.tasks[n];var r=this.cancelCallbacks[n];delete this.cancelCallbacks[n],r&&r()}else I()||e.mustQueue?(this.tasks[n]=e,this.taskQueue.push(n),this.invoker.trigger()):this.processTask(n,e)},yd.prototype.process=function(){if(this.taskQueue.length){var t=this.taskQueue.shift(),e=this.tasks[t];delete this.tasks[t],this.taskQueue.length&&this.invoker.trigger(),e&&this.processTask(t,e)}},yd.prototype.processTask=function(t,e){var n=this;if(""===e.type){var r=this.callbacks[t];delete this.callbacks[t],r&&(e.error?r(xa(e.error)):r(null,xa(e.data)))}else{var i=!1,a=z(this.globalScope)?void 0:[],o=e.hasCallback?function(e,r){i=!0,delete n.cancelCallbacks[t],n.target.postMessage({id:t,type:"",sourceMapId:n.mapId,error:e?ba(e):null,data:ba(r,a)},a)}:function(t){i=!0},s=null,l=xa(e.data);if(this.parent[e.type])s=this.parent[e.type](e.sourceMapId,l,o);else if(this.parent.getWorkerSource){var c=e.type.split(".");s=this.parent.getWorkerSource(e.sourceMapId,c[0],l.source)[c[1]](l,o)}else o(new Error("Could not find function "+e.type));!i&&s&&s.cancel&&(this.cancelCallbacks[t]=s.cancel)}},yd.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};var wd=function(t,e){t&&(e?this.setSouthWest(t).setNorthEast(e):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]))};wd.prototype.setNorthEast=function(t){return this._ne=t instanceof kd?new kd(t.lng,t.lat):kd.convert(t),this},wd.prototype.setSouthWest=function(t){return this._sw=t instanceof kd?new kd(t.lng,t.lat):kd.convert(t),this},wd.prototype.extend=function(t){var e,n,r=this._sw,i=this._ne;if(t instanceof kd)e=t,n=t;else{if(!(t instanceof wd)){if(Array.isArray(t)){if(4===t.length||t.every(Array.isArray)){var a=t;return this.extend(wd.convert(a))}var o=t;return this.extend(kd.convert(o))}return this}if(e=t._sw,n=t._ne,!e||!n)return this}return r||i?(r.lng=Math.min(e.lng,r.lng),r.lat=Math.min(e.lat,r.lat),i.lng=Math.max(n.lng,i.lng),i.lat=Math.max(n.lat,i.lat)):(this._sw=new kd(e.lng,e.lat),this._ne=new kd(n.lng,n.lat)),this},wd.prototype.getCenter=function(){return new kd((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},wd.prototype.getSouthWest=function(){return this._sw},wd.prototype.getNorthEast=function(){return this._ne},wd.prototype.getNorthWest=function(){return new kd(this.getWest(),this.getNorth())},wd.prototype.getSouthEast=function(){return new kd(this.getEast(),this.getSouth())},wd.prototype.getWest=function(){return this._sw.lng},wd.prototype.getSouth=function(){return this._sw.lat},wd.prototype.getEast=function(){return this._ne.lng},wd.prototype.getNorth=function(){return this._ne.lat},wd.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},wd.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},wd.prototype.isEmpty=function(){return!(this._sw&&this._ne)},wd.prototype.contains=function(t){var e=kd.convert(t),n=e.lng,r=e.lat,i=this._sw.lat<=r&&r<=this._ne.lat,a=this._sw.lng<=n&&n<=this._ne.lng;return this._sw.lng>this._ne.lng&&(a=this._sw.lng>=n&&n>=this._ne.lng),i&&a},wd.convert=function(t){return!t||t instanceof wd?t:new wd(t)};var _d=6371008.8,kd=function(t,e){if(isNaN(t)||isNaN(e))throw new Error("Invalid LngLat object: ("+t+", "+e+")");if(this.lng=+t,this.lat=+e,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};kd.prototype.wrap=function(){return new kd(h(this.lng,-180,180),this.lat)},kd.prototype.toArray=function(){return[this.lng,this.lat]},kd.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},kd.prototype.distanceTo=function(t){var e=Math.PI/180,n=this.lat*e,r=t.lat*e,i=Math.sin(n)*Math.sin(r)+Math.cos(n)*Math.cos(r)*Math.cos((t.lng-this.lng)*e);return _d*Math.acos(Math.min(i,1))},kd.prototype.toBounds=function(t){void 0===t&&(t=0);var e=360*t/40075017,n=e/Math.cos(Math.PI/180*this.lat);return new wd(new kd(this.lng-n,this.lat-e),new kd(this.lng+n,this.lat+e))},kd.convert=function(t){if(t instanceof kd)return t;if(Array.isArray(t)&&(2===t.length||3===t.length))return new kd(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&"object"===typeof t&&null!==t)return new kd(Number("lng"in t?t.lng:t.lon),Number(t.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")};var Td=2*Math.PI*_d;function Md(t){return Td*Math.cos(t*Math.PI/180)}function Ad(t){return(180+t)/360}function Sd(t){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))/360}function Ed(t,e){return t/Md(e)}function Cd(t){return 360*t-180}function Pd(t){var e=180-360*t;return 360/Math.PI*Math.atan(Math.exp(e*Math.PI/180))-90}function Ld(t,e){return t*Md(Pd(e))}function Od(t){return 1/Math.cos(t*Math.PI/180)}var Id=function(t,e,n){void 0===n&&(n=0),this.x=+t,this.y=+e,this.z=+n};Id.fromLngLat=function(t,e){void 0===e&&(e=0);var n=kd.convert(t);return new Id(Ad(n.lng),Sd(n.lat),Ed(e,n.lat))},Id.prototype.toLngLat=function(){return new kd(Cd(this.x),Pd(this.y))},Id.prototype.toAltitude=function(){return Ld(this.z,this.y)},Id.prototype.meterInMercatorCoordinateUnits=function(){return 1/Td*Od(Pd(this.y))};var Dd=function(t,e,n){this.z=t,this.x=e,this.y=n,this.key=Nd(0,t,t,e,n)};Dd.prototype.equals=function(t){return this.z===t.z&&this.x===t.x&&this.y===t.y},Dd.prototype.url=function(t,e){var n=bd(this.x,this.y,this.z),r=jd(this.z,this.x,this.y);return t[(this.x+this.y)%t.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("tms"===e?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",r).replace("{bbox-epsg-3857}",n)},Dd.prototype.getTilePoint=function(t){var e=Math.pow(2,this.z);return new a((t.x*e-this.x)*Os,(t.y*e-this.y)*Os)},Dd.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var Rd=function(t,e){this.wrap=t,this.canonical=e,this.key=Nd(t,e.z,e.z,e.x,e.y)},zd=function(t,e,n,r,i){this.overscaledZ=t,this.wrap=e,this.canonical=new Dd(n,+r,+i),this.key=Nd(e,t,n,r,i)};function Nd(t,e,n,r,i){(t*=2)<0&&(t=-1*t-1);var a=1<0;a--)i+=(e&(r=1<this.canonical.z?new zd(t,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new zd(t,this.wrap,t,this.canonical.x>>e,this.canonical.y>>e)},zd.prototype.calculateScaledKey=function(t,e){var n=this.canonical.z-t;return t>this.canonical.z?Nd(this.wrap*+e,t,this.canonical.z,this.canonical.x,this.canonical.y):Nd(this.wrap*+e,t,t,this.canonical.x>>n,this.canonical.y>>n)},zd.prototype.isChildOf=function(t){if(t.wrap!==this.wrap)return!1;var e=this.canonical.z-t.canonical.z;return 0===t.overscaledZ||t.overscaledZ>e&&t.canonical.y===this.canonical.y>>e},zd.prototype.children=function(t){if(this.overscaledZ>=t)return[new zd(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var e=this.canonical.z+1,n=2*this.canonical.x,r=2*this.canonical.y;return[new zd(e,this.wrap,e,n,r),new zd(e,this.wrap,e,n+1,r),new zd(e,this.wrap,e,n,r+1),new zd(e,this.wrap,e,n+1,r+1)]},zd.prototype.isLessThan=function(t){return this.wrapt.wrap)&&(this.overscaledZt.overscaledZ)&&(this.canonical.xt.canonical.x)&&this.canonical.y=this.dim+1||e<-1||e>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(e+1)*this.stride+(t+1)},Fd.prototype._unpackMapbox=function(t,e,n){return(256*t*256+256*e+n)/10-1e4},Fd.prototype._unpackTerrarium=function(t,e,n){return 256*t+e+n/256-32768},Fd.prototype.getPixels=function(){return new ql({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},Fd.prototype.backfillBorder=function(t,e,n){if(this.dim!==t.dim)throw new Error("dem dimension mismatch");var r=e*this.dim,i=e*this.dim+this.dim,a=n*this.dim,o=n*this.dim+this.dim;switch(e){case-1:r=i-1;break;case 1:i=r+1}switch(n){case-1:a=o-1;break;case 1:o=a+1}for(var s=-e*this.dim,l=-n*this.dim,c=a;c=0&&u[3]>=0&&s.insert(o,u[0],u[1],u[2],u[3])}},Gd.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new ru.VectorTile(new Yu(this.rawTileData)).layers,this.sourceLayerCoder=new Ud(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},Gd.prototype.query=function(t,e,n,r){var i=this;this.loadVTLayers();for(var a=t.params||{},o=Os/t.tileSize/t.scale,s=Pi(a.filter),l=t.queryGeometry,c=t.queryPadding*o,u=Yd(l),f=this.grid.query(u.minX-c,u.minY-c,u.maxX+c,u.maxY+c),h=Yd(t.cameraQueryGeometry),d=0,p=this.grid3D.query(h.minX-c,h.minY-c,h.maxX+c,h.maxY+c,(function(e,n,r,i){return Xs(t.cameraQueryGeometry,e-c,n-c,r+c,i+c)}));dr)i=!1;else if(e)if(this.expirationTime=E.maxzoom||"none"!==E.visibility&&(l(S,this.zoom,r),(g[E.id]=E.createBucket({index:u.bucketLayerIDs.length,layers:S,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:x,sourceID:this.source})).populate(w,v,this.tileID.canonical),u.bucketLayerIDs.push(S.map((function(t){return t.id}))))}}}var C=t.mapObject(v.glyphDependencies,(function(t){return Object.keys(t).map(Number)}));Object.keys(C).length?i.send("getGlyphs",{uid:this.uid,stacks:C},(function(t,e){f||(f=t,h=e,O.call(s))})):h={};var P=Object.keys(v.iconDependencies);P.length?i.send("getImages",{icons:P,source:this.source,tileID:this.tileID,type:"icons"},(function(t,e){f||(f=t,d=e,O.call(s))})):d={};var L=Object.keys(v.patternDependencies);function O(){if(f)return a(f);if(h&&d&&p){var e=new o(h),n=new t.ImageAtlas(d,p);for(var i in g){var s=g[i];s instanceof t.SymbolBucket?(l(s.layers,this.zoom,r),t.performSymbolLayout(s,h,e.positions,d,n.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):s.hasPattern&&(s instanceof t.LineBucket||s instanceof t.FillBucket||s instanceof t.FillExtrusionBucket)&&(l(s.layers,this.zoom,r),s.addFeatures(v,this.tileID.canonical,n.patternPositions))}this.status="done",a(null,{buckets:t.values(g).filter((function(t){return!t.isEmpty()})),featureIndex:u,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:e.image,imageAtlas:n,glyphMap:this.returnDependencies?h:null,iconMap:this.returnDependencies?d:null,glyphPositions:this.returnDependencies?e.positions:null})}}L.length?i.send("getImages",{icons:L,source:this.source,tileID:this.tileID,type:"patterns"},(function(t,e){f||(f=t,p=e,O.call(s))})):p={},O.call(this)};var u=function(t,e,n,r){this.actor=t,this.layerIndex=e,this.availableImages=n,this.loadVectorData=r||c,this.loading={},this.loaded={}};u.prototype.loadTile=function(e,n){var r=this,i=e.uid;this.loading||(this.loading={});var a=!!(e&&e.request&&e.request.collectResourceTiming)&&new t.RequestPerformance(e.request),o=this.loading[i]=new s(e);o.abort=this.loadVectorData(e,(function(e,s){if(delete r.loading[i],e||!s)return o.status="done",r.loaded[i]=o,n(e);var l=s.rawData,c={};s.expires&&(c.expires=s.expires),s.cacheControl&&(c.cacheControl=s.cacheControl);var u={};if(a){var f=a.finish();f&&(u.resourceTiming=JSON.parse(JSON.stringify(f)))}o.vectorTile=s.vectorTile,o.parse(s.vectorTile,r.layerIndex,r.availableImages,r.actor,(function(e,r){if(e||!r)return n(e);n(null,t.extend({rawTileData:l.slice(0)},r,c,u))})),r.loaded=r.loaded||{},r.loaded[i]=o}))},u.prototype.reloadTile=function(t,e){var n=this,r=this.loaded,i=t.uid,a=this;if(r&&r[i]){var o=r[i];o.showCollisionBoxes=t.showCollisionBoxes;var s=function(t,r){var i=o.reloadCallback;i&&(delete o.reloadCallback,o.parse(o.vectorTile,a.layerIndex,n.availableImages,a.actor,i)),e(t,r)};"parsing"===o.status?o.reloadCallback=s:"done"===o.status&&(o.vectorTile?o.parse(o.vectorTile,this.layerIndex,this.availableImages,this.actor,s):s())}},u.prototype.abortTile=function(t,e){var n=this.loading,r=t.uid;n&&n[r]&&n[r].abort&&(n[r].abort(),delete n[r]),e()},u.prototype.removeTile=function(t,e){var n=this.loaded,r=t.uid;n&&n[r]&&delete n[r],e()};var f=t.window.ImageBitmap,h=function(){this.loaded={}};h.prototype.loadTile=function(e,n){var r=e.uid,i=e.encoding,a=e.rawImageData,o=f&&a instanceof f?this.getImageData(a):a,s=new t.DEMData(r,o,i);this.loaded=this.loaded||{},this.loaded[r]=s,n(null,s)},h.prototype.getImageData=function(e){this.offscreenCanvas&&this.offscreenCanvasContext||(this.offscreenCanvas=new OffscreenCanvas(e.width,e.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d")),this.offscreenCanvas.width=e.width,this.offscreenCanvas.height=e.height,this.offscreenCanvasContext.drawImage(e,0,0,e.width,e.height);var n=this.offscreenCanvasContext.getImageData(-1,-1,e.width+2,e.height+2);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),new t.RGBAImage({width:n.width,height:n.height},n.data)},h.prototype.removeTile=function(t){var e=this.loaded,n=t.uid;e&&e[n]&&delete e[n]};var d=p;function p(t,e){var n,r=t&&t.type;if("FeatureCollection"===r)for(n=0;n=0!==!!e&&t.reverse()}var m=t.vectorTile.VectorTileFeature.prototype.toGeoJSON,y=function(e){this._feature=e,this.extent=t.EXTENT,this.type=e.type,this.properties=e.tags,"id"in e&&!isNaN(e.id)&&(this.id=parseInt(e.id,10))};y.prototype.loadGeometry=function(){if(1===this._feature.type){for(var e=[],n=0,r=this._feature.geometry;n>31}function z(t,e){for(var n=t.loadGeometry(),r=t.type,i=0,a=0,o=n.length,s=0;s>1;F(t,e,o,r,i,a%2),j(t,e,n,r,o-1,a+1),j(t,e,n,o+1,i,a+1)}}function F(t,e,n,r,i,a){for(;i>r;){if(i-r>600){var o=i-r+1,s=n-r+1,l=Math.log(o),c=.5*Math.exp(2*l/3),u=.5*Math.sqrt(l*c*(o-c)/o)*(s-o/2<0?-1:1);F(t,e,n,Math.max(r,Math.floor(n-s*c/o+u)),Math.min(i,Math.floor(n+(o-s)*c/o+u)),a)}var f=e[2*n+a],h=r,d=i;for(B(t,e,r,n),e[2*i+a]>f&&B(t,e,r,i);hf;)d--}e[2*r+a]===f?B(t,e,r,d):B(t,e,++d,i),d<=n&&(r=d+1),n<=d&&(i=d-1)}}function B(t,e,n,r){U(t,n,r),U(e,2*n,2*r),U(e,2*n+1,2*r+1)}function U(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function H(t,e,n,r,i,a,o){for(var s,l,c=[0,t.length-1,0],u=[];c.length;){var f=c.pop(),h=c.pop(),d=c.pop();if(h-d<=o)for(var p=d;p<=h;p++)s=e[2*p],l=e[2*p+1],s>=n&&s<=i&&l>=r&&l<=a&&u.push(t[p]);else{var g=Math.floor((d+h)/2);s=e[2*g],l=e[2*g+1],s>=n&&s<=i&&l>=r&&l<=a&&u.push(t[g]);var v=(f+1)%2;(0===f?n<=s:r<=l)&&(c.push(d),c.push(g-1),c.push(v)),(0===f?i>=s:a>=l)&&(c.push(g+1),c.push(h),c.push(v))}}return u}function V(t,e,n,r,i,a){for(var o=[0,t.length-1,0],s=[],l=i*i;o.length;){var c=o.pop(),u=o.pop(),f=o.pop();if(u-f<=a)for(var h=f;h<=u;h++)q(e[2*h],e[2*h+1],n,r)<=l&&s.push(t[h]);else{var d=Math.floor((f+u)/2),p=e[2*d],g=e[2*d+1];q(p,g,n,r)<=l&&s.push(t[d]);var v=(c+1)%2;(0===c?n-i<=p:r-i<=g)&&(o.push(f),o.push(d-1),o.push(v)),(0===c?n+i>=p:r+i>=g)&&(o.push(d+1),o.push(u),o.push(v))}}return s}function q(t,e,n,r){var i=t-n,a=e-r;return i*i+a*a}T.fromVectorTileJs=M,T.fromGeojsonVt=A,T.GeoJSONWrapper=S;var G=function(t){return t[0]},W=function(t){return t[1]},Y=function(t,e,n,r,i){void 0===e&&(e=G),void 0===n&&(n=W),void 0===r&&(r=64),void 0===i&&(i=Float64Array),this.nodeSize=r,this.points=t;for(var a=t.length<65536?Uint16Array:Uint32Array,o=this.ids=new a(t.length),s=this.coords=new i(2*t.length),l=0;l=1e4?Math.round(e/1e3)+"k":e>=1e3?Math.round(e/100)/10+"k":e;return it(it({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:n})}function tt(t){return t/360+.5}function et(t){var e=Math.sin(t*Math.PI/180),n=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return n<0?0:n>1?1:n}function nt(t){return 360*(t-.5)}function rt(t){var e=(180-360*t)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}function it(t,e){for(var n in e)t[n]=e[n];return t}function at(t){return t.x}function ot(t){return t.y}function st(t,e,n,r){for(var i,a=r,o=n-e>>1,s=n-e,l=t[e],c=t[e+1],u=t[n],f=t[n+1],h=e+3;ha)i=h,a=d;else if(d===a){var p=Math.abs(h-o);pr&&(i-e>3&&st(t,e,i,r),t[i+2]=a,n-i>3&&st(t,i,n,r))}function lt(t,e,n,r,i,a){var o=i-n,s=a-r;if(0!==o||0!==s){var l=((t-n)*o+(e-r)*s)/(o*o+s*s);l>1?(n=i,r=a):l>0&&(n+=o*l,r+=s*l)}return(o=t-n)*o+(s=e-r)*s}function ct(t,e,n,r){var i={id:"undefined"===typeof t?null:t,type:e,geometry:n,tags:r,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return ut(i),i}function ut(t){var e=t.geometry,n=t.type;if("Point"===n||"MultiPoint"===n||"LineString"===n)ft(t,e);else if("Polygon"===n||"MultiLineString"===n)for(var r=0;r0&&(o+=r?(i*c-l*a)/2:Math.sqrt(Math.pow(l-i,2)+Math.pow(c-a,2))),i=l,a=c}var u=e.length-3;e[2]=1,st(e,0,u,n),e[u+2]=1,e.size=Math.abs(o),e.start=0,e.end=e.size}function vt(t,e,n,r){for(var i=0;i1?1:n}function bt(t,e,n,r,i,a,o,s){if(r/=e,a>=(n/=e)&&o=r)return null;for(var l=[],c=0;c=n&&p=r)){var g=[];if("Point"===h||"MultiPoint"===h)xt(f,g,n,r,i);else if("LineString"===h)wt(f,g,n,r,i,!1,s.lineMetrics);else if("MultiLineString"===h)kt(f,g,n,r,i,!1);else if("Polygon"===h)kt(f,g,n,r,i,!0);else if("MultiPolygon"===h)for(var v=0;v=n&&o<=r&&(e.push(t[a]),e.push(t[a+1]),e.push(t[a+2]))}}function wt(t,e,n,r,i,a,o){for(var s,l,c=_t(t),u=0===i?Mt:At,f=t.start,h=0;hn&&(l=u(c,d,p,v,m,n),o&&(c.start=f+s*l)):y>r?b=n&&(l=u(c,d,p,v,m,n),x=!0),b>r&&y<=r&&(l=u(c,d,p,v,m,r),x=!0),!a&&x&&(o&&(c.end=f+s*l),e.push(c),c=_t(t)),o&&(f+=s)}var w=t.length-3;d=t[w],p=t[w+1],g=t[w+2],(y=0===i?d:p)>=n&&y<=r&&Tt(c,d,p,g),w=c.length-3,a&&w>=3&&(c[w]!==c[0]||c[w+1]!==c[1])&&Tt(c,c[0],c[1],c[2]),c.length&&e.push(c)}function _t(t){var e=[];return e.size=t.size,e.start=t.start,e.end=t.end,e}function kt(t,e,n,r,i,a){for(var o=0;oo.maxX&&(o.maxX=u),f>o.maxY&&(o.maxY=f)}return o}function It(t,e,n,r){var i=e.geometry,a=e.type,o=[];if("Point"===a||"MultiPoint"===a)for(var s=0;s0&&e.size<(i?o:r))n.numPoints+=e.length/3;else{for(var s=[],l=0;lo)&&(n.numSimplified++,s.push(e[l]),s.push(e[l+1])),n.numPoints++;i&&Rt(s,a),t.push(s)}}function Rt(t,e){for(var n=0,r=0,i=t.length,a=i-2;r0===e)for(r=0,i=t.length;r24)throw new Error("maxZoom should be in the 0-24 range");if(e.promoteId&&e.generateId)throw new Error("promoteId and generateId cannot be used together.");var r=ht(t,e);this.tiles={},this.tileCoords=[],n&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",e.indexMaxZoom,e.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),(r=St(r,e)).length&&this.splitTile(r,0,0,0),n&&(r.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 jt(t,e,n){return 32*((1<=r;c--){var u=+Date.now();s=this._cluster(s,c),this.trees[c]=new Y(s,at,ot,a,Float32Array),n&&console.log("z%d: %d clusters in %dms",c,s.length,+Date.now()-u)}return n&&console.timeEnd("total time"),this},X.prototype.getClusters=function(t,e){var n=((t[0]+180)%360+360)%360-180,r=Math.max(-90,Math.min(90,t[1])),i=180===t[2]?180:((t[2]+180)%360+360)%360-180,a=Math.max(-90,Math.min(90,t[3]));if(t[2]-t[0]>=360)n=-180,i=180;else if(n>i){var o=this.getClusters([n,r,180,a],e),s=this.getClusters([-180,r,i,a],e);return o.concat(s)}for(var l=this.trees[this._limitZoom(e)],c=[],u=0,f=l.range(tt(n),et(a),tt(i),et(r));u1?this._map(c,!0):null,v=(l<<5)+(e+1)+this.points.length,m=0,y=f;m>5},X.prototype._getOriginZoom=function(t){return(t-this.points.length)%32},X.prototype._map=function(t,e){if(t.numPoints)return e?it({},t.properties):t.properties;var n=this.points[t.index].properties,r=this.options.map(n);return e&&r===n?it({},r):r},Nt.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},Nt.prototype.splitTile=function(t,e,n,r,i,a,o){for(var s=[t,e,n,r],l=this.options,c=l.debug;s.length;){r=s.pop(),n=s.pop(),e=s.pop(),t=s.pop();var u=1<1&&console.time("creation"),h=this.tiles[f]=Ot(t,e,n,r,l),this.tileCoords.push({z:e,x:n,y:r}),c)){c>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",e,n,r,h.numFeatures,h.numPoints,h.numSimplified),console.timeEnd("creation"));var d="z"+e;this.stats[d]=(this.stats[d]||0)+1,this.total++}if(h.source=t,i){if(e===l.maxZoom||e===i)continue;var p=1<1&&console.time("clipping");var g,v,m,y,b,x,w=.5*l.buffer/l.extent,_=.5-w,k=.5+w,T=1+w;g=v=m=y=null,b=bt(t,u,n-w,n+k,0,h.minX,h.maxX,l),x=bt(t,u,n+_,n+T,0,h.minX,h.maxX,l),t=null,b&&(g=bt(b,u,r-w,r+k,1,h.minY,h.maxY,l),v=bt(b,u,r+_,r+T,1,h.minY,h.maxY,l),b=null),x&&(m=bt(x,u,r-w,r+k,1,h.minY,h.maxY,l),y=bt(x,u,r+_,r+T,1,h.minY,h.maxY,l),x=null),c>1&&console.timeEnd("clipping"),s.push(g||[],e+1,2*n,2*r),s.push(v||[],e+1,2*n,2*r+1),s.push(m||[],e+1,2*n+1,2*r),s.push(y||[],e+1,2*n+1,2*r+1)}}},Nt.prototype.getTile=function(t,e,n){var r=this.options,i=r.extent,a=r.debug;if(t<0||t>24)return null;var o=1<1&&console.log("drilling down to z%d-%d-%d",t,e,n);for(var l,c=t,u=e,f=n;!l&&c>0;)c--,u=Math.floor(u/2),f=Math.floor(f/2),l=this.tiles[jt(c,u,f)];return l&&l.source?(a>1&&console.log("found parent tile z%d-%d-%d",c,u,f),a>1&&console.time("drilling down"),this.splitTile(l.source,c,u,f,t,e,n),a>1&&console.timeEnd("drilling down"),this.tiles[s]?Pt(this.tiles[s],i):null):null};var Ut=function(e){function n(t,n,r,i){e.call(this,t,n,r,Bt),i&&(this.loadGeoJSON=i)}return e&&(n.__proto__=e),n.prototype=Object.create(e&&e.prototype),n.prototype.constructor=n,n.prototype.loadData=function(t,e){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),this._pendingCallback=e,this._pendingLoadDataParams=t,this._state&&"Idle"!==this._state?this._state="NeedsLoadData":(this._state="Coalescing",this._loadData())},n.prototype._loadData=function(){var e=this;if(this._pendingCallback&&this._pendingLoadDataParams){var n=this._pendingCallback,r=this._pendingLoadDataParams;delete this._pendingCallback,delete this._pendingLoadDataParams;var i=!!(r&&r.request&&r.request.collectResourceTiming)&&new t.RequestPerformance(r.request);this.loadGeoJSON(r,(function(t,a){if(t||!a)return n(t);if("object"!==typeof a)return n(new Error("Input data given to '"+r.source+"' is not a valid GeoJSON object."));d(a,!0);try{e._geoJSONIndex=r.cluster?new X(Ht(r)).load(a.features):zt(a,r.geojsonVtOptions)}catch(t){return n(t)}e.loaded={};var o={};if(i){var s=i.finish();s&&(o.resourceTiming={},o.resourceTiming[r.source]=JSON.parse(JSON.stringify(s)))}n(null,o)}))}},n.prototype.coalesce=function(){"Coalescing"===this._state?this._state="Idle":"NeedsLoadData"===this._state&&(this._state="Coalescing",this._loadData())},n.prototype.reloadTile=function(t,n){var r=this.loaded,i=t.uid;return r&&r[i]?e.prototype.reloadTile.call(this,t,n):this.loadTile(t,n)},n.prototype.loadGeoJSON=function(e,n){if(e.request)t.getJSON(e.request,n);else{if("string"!==typeof e.data)return n(new Error("Input data given to '"+e.source+"' is not a valid GeoJSON object."));try{return n(null,JSON.parse(e.data))}catch(r){return n(new Error("Input data given to '"+e.source+"' is not a valid GeoJSON object."))}}},n.prototype.removeSource=function(t,e){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),e()},n.prototype.getClusterExpansionZoom=function(t,e){try{e(null,this._geoJSONIndex.getClusterExpansionZoom(t.clusterId))}catch(n){e(n)}},n.prototype.getClusterChildren=function(t,e){try{e(null,this._geoJSONIndex.getChildren(t.clusterId))}catch(n){e(n)}},n.prototype.getClusterLeaves=function(t,e){try{e(null,this._geoJSONIndex.getLeaves(t.clusterId,t.limit,t.offset))}catch(n){e(n)}},n}(u);function Ht(e){var n=e.superclusterOptions,r=e.clusterProperties;if(!r||!n)return n;for(var i={},a={},o={accumulated:null,zoom:0},s={properties:null},l=Object.keys(r),c=0,u=l;c1?"@2x":"",l=t.getJSON(n.transformRequest(n.normalizeSpriteURL(e,s,".json"),t.ResourceType.SpriteJSON),(function(t,e){l=null,o||(o=t,i=e,u())})),c=t.getImage(n.transformRequest(n.normalizeSpriteURL(e,s,".png"),t.ResourceType.SpriteImage),(function(t,e){c=null,o||(o=t,a=e,u())}));function u(){if(o)r(o);else if(i&&a){var e=t.browser.getImageData(a),n={};for(var s in i){var l=i[s],c=l.width,u=l.height,f=l.x,h=l.y,d=l.sdf,p=l.pixelRatio,g=l.stretchX,v=l.stretchY,m=l.content,y=new t.RGBAImage({width:c,height:u});t.RGBAImage.copy(e,y,{x:f,y:h},{x:0,y:0},{width:c,height:u}),n[s]={data:y,pixelRatio:p,sdf:d,stretchX:g,stretchY:v,content:m}}r(null,n)}}return{cancel:function(){l&&(l.cancel(),l=null),c&&(c.cancel(),c=null)}}}function h(t){var e=t.userImage;return!!(e&&e.render&&e.render())&&(t.data.replace(new Uint8Array(e.data.buffer)),!0)}n.suppressClick=function(){t.window.addEventListener("click",u,!0),t.window.setTimeout((function(){t.window.removeEventListener("click",u,!0)}),0)},n.mousePos=function(e,n){var r=e.getBoundingClientRect();return new t.Point(n.clientX-r.left-e.clientLeft,n.clientY-r.top-e.clientTop)},n.touchPos=function(e,n){for(var r=e.getBoundingClientRect(),i=[],a=0;a=0?0:e.button},n.remove=function(t){t.parentNode&&t.parentNode.removeChild(t)};var d=1,p=function(e){function n(){e.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new t.RGBAImage({width:1,height:1}),this.dirty=!0}return e&&(n.__proto__=e),n.prototype=Object.create(e&&e.prototype),n.prototype.constructor=n,n.prototype.isLoaded=function(){return this.loaded},n.prototype.setLoaded=function(t){if(this.loaded!==t&&(this.loaded=t,t)){for(var e=0,n=this.requestors;e=0?1.2:1))}function x(t,e,n,r,i,a,o){for(var s=0;s65535)e(new Error("glyphs > 65535 not supported"));else if(a.ranges[s])e(null,{stack:n,id:i,glyph:o});else{var l=a.requests[s];l||(l=a.requests[s]=[],_.loadGlyphRange(n,s,r.url,r.requestManager,(function(t,e){if(e){for(var n in e)r._doesCharSupportLocalGlyph(+n)||(a.glyphs[+n]=e[+n]);a.ranges[s]=!0}for(var i=0,o=l;i1&&(l=t[++s]);var u=Math.abs(c-l.left),f=Math.abs(c-l.right),h=Math.min(u,f),d=void 0,p=i/n*(r+1);if(l.isDash){var g=r-Math.abs(p);d=Math.sqrt(h*h+g*g)}else d=r-Math.sqrt(h*h+p*p);this.data[o+c]=Math.max(0,Math.min(255,d+128))}},S.prototype.addRegularDash=function(t){for(var e=t.length-1;e>=0;--e){var n=t[e],r=t[e+1];n.zeroLength?t.splice(e,1):r&&r.isDash===n.isDash&&(r.left=n.left,t.splice(e,1))}var i=t[0],a=t[t.length-1];i.isDash===a.isDash&&(i.left=a.left-this.width,a.right=i.right+this.width);for(var o=this.width*this.nextRow,s=0,l=t[s],c=0;c1&&(l=t[++s]);var u=Math.abs(c-l.left),f=Math.abs(c-l.right),h=Math.min(u,f),d=l.isDash?h:-h;this.data[o+c]=Math.max(0,Math.min(255,d+128))}},S.prototype.addDash=function(e,n){var r=n?7:0,i=2*r+1;if(this.nextRow+i>this.height)return t.warnOnce("LineAtlas out of space"),null;for(var a=0,o=0;o=r.minX&&e.x=r.minY&&e.y0&&(l[new t.OverscaledTileID(e.overscaledZ,a,n.z,i,n.y-1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,e.wrap,n.z,n.x,n.y-1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,s,n.z,o,n.y-1).key]={backfilled:!1}),n.y+10&&(r.resourceTiming=e._resourceTiming,e._resourceTiming=[]),e.fire(new t.Event("data",r))}}))},n.prototype.onAdd=function(t){this.map=t,this.load()},n.prototype.setData=function(e){var n=this;return this._data=e,this.fire(new t.Event("dataloading",{dataType:"source"})),this._updateWorkerData((function(e){if(e)n.fire(new t.ErrorEvent(e));else{var r={dataType:"source",sourceDataType:"content"};n._collectResourceTiming&&n._resourceTiming&&n._resourceTiming.length>0&&(r.resourceTiming=n._resourceTiming,n._resourceTiming=[]),n.fire(new t.Event("data",r))}})),this},n.prototype.getClusterExpansionZoom=function(t,e){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:t,source:this.id},e),this},n.prototype.getClusterChildren=function(t,e){return this.actor.send("geojson.getClusterChildren",{clusterId:t,source:this.id},e),this},n.prototype.getClusterLeaves=function(t,e,n,r){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:t,limit:e,offset:n},r),this},n.prototype._updateWorkerData=function(e){var n=this;this._loaded=!1;var r=t.extend({},this.workerOptions),i=this._data;"string"===typeof i?(r.request=this.map._requestManager.transformRequest(t.browser.resolveURL(i),t.ResourceType.Source),r.request.collectResourceTiming=this._collectResourceTiming):r.data=JSON.stringify(i),this.actor.send(this.type+".loadData",r,(function(t,i){n._removed||i&&i.abandoned||(n._loaded=!0,i&&i.resourceTiming&&i.resourceTiming[n.id]&&(n._resourceTiming=i.resourceTiming[n.id].slice(0)),n.actor.send(n.type+".coalesce",{source:r.source},null),e(t))}))},n.prototype.loaded=function(){return this._loaded},n.prototype.loadTile=function(e,n){var r=this,i=e.actor?"reloadTile":"loadTile";e.actor=this.actor;var a={type:this.type,uid:e.uid,tileID:e.tileID,zoom:e.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:t.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};e.request=this.actor.send(i,a,(function(t,a){return delete e.request,e.unloadVectorData(),e.aborted?n(null):t?n(t):(e.loadVectorData(a,r.map.painter,"reloadTile"===i),n(null))}))},n.prototype.abortTile=function(t){t.request&&(t.request.cancel(),delete t.request),t.aborted=!0},n.prototype.unloadTile=function(t){t.unloadVectorData(),this.actor.send("removeTile",{uid:t.uid,type:this.type,source:this.id})},n.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},n.prototype.serialize=function(){return t.extend({},this._options,{type:this.type,data:this._data})},n.prototype.hasTransition=function(){return!1},n}(t.Evented),R=t.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),z=function(e){function n(t,n,r,i){e.call(this),this.id=t,this.dispatcher=r,this.coordinates=n.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(i),this.options=n}return e&&(n.__proto__=e),n.prototype=Object.create(e&&e.prototype),n.prototype.constructor=n,n.prototype.load=function(e,n){var r=this;this._loaded=!1,this.fire(new t.Event("dataloading",{dataType:"source"})),this.url=this.options.url,t.getImage(this.map._requestManager.transformRequest(this.url,t.ResourceType.Image),(function(i,a){r._loaded=!0,i?r.fire(new t.ErrorEvent(i)):a&&(r.image=a,e&&(r.coordinates=e),n&&n(),r._finishLoading())}))},n.prototype.loaded=function(){return this._loaded},n.prototype.updateImage=function(t){var e=this;return this.image&&t.url?(this.options.url=t.url,this.load(t.coordinates,(function(){e.texture=null})),this):this},n.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new t.Event("data",{dataType:"source",sourceDataType:"metadata"})))},n.prototype.onAdd=function(t){this.map=t,this.load()},n.prototype.setCoordinates=function(e){var n=this;this.coordinates=e;var r=e.map(t.MercatorCoordinate.fromLngLat);this.tileID=N(r),this.minzoom=this.maxzoom=this.tileID.z;var i=r.map((function(t){return n.tileID.getTilePoint(t)._round()}));return this._boundsArray=new t.StructArrayLayout4i8,this._boundsArray.emplaceBack(i[0].x,i[0].y,0,0),this._boundsArray.emplaceBack(i[1].x,i[1].y,t.EXTENT,0),this._boundsArray.emplaceBack(i[3].x,i[3].y,0,t.EXTENT),this._boundsArray.emplaceBack(i[2].x,i[2].y,t.EXTENT,t.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new t.Event("data",{dataType:"source",sourceDataType:"content"})),this},n.prototype.prepare=function(){if(0!==Object.keys(this.tiles).length&&this.image){var e=this.map.painter.context,n=e.gl;for(var r in this.boundsBuffer||(this.boundsBuffer=e.createVertexBuffer(this._boundsArray,R.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new t.Texture(e,this.image,n.RGBA),this.texture.bind(n.LINEAR,n.CLAMP_TO_EDGE)),this.tiles){var i=this.tiles[r];"loaded"!==i.state&&(i.state="loaded",i.texture=this.texture)}}},n.prototype.loadTile=function(t,e){this.tileID&&this.tileID.equals(t.tileID.canonical)?(this.tiles[String(t.tileID.wrap)]=t,t.buckets={},e(null)):(t.state="errored",e(null))},n.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},n.prototype.hasTransition=function(){return!1},n}(t.Evented);function N(e){for(var n=1/0,r=1/0,i=-1/0,a=-1/0,o=0,s=e;on.end(0)?this.fire(new t.ErrorEvent(new t.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+n.start(0)+" and "+n.end(0)+"-second mark."))):this.video.currentTime=e}},n.prototype.getVideo=function(){return this.video},n.prototype.onAdd=function(t){this.map||(this.map=t,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},n.prototype.prepare=function(){if(!(0===Object.keys(this.tiles).length||this.video.readyState<2)){var e=this.map.painter.context,n=e.gl;for(var r in this.boundsBuffer||(this.boundsBuffer=e.createVertexBuffer(this._boundsArray,R.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(n.LINEAR,n.CLAMP_TO_EDGE),n.texSubImage2D(n.TEXTURE_2D,0,0,0,n.RGBA,n.UNSIGNED_BYTE,this.video)):(this.texture=new t.Texture(e,this.video,n.RGBA),this.texture.bind(n.LINEAR,n.CLAMP_TO_EDGE)),this.tiles){var i=this.tiles[r];"loaded"!==i.state&&(i.state="loaded",i.texture=this.texture)}}},n.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},n.prototype.hasTransition=function(){return this.video&&!this.video.paused},n}(z),F=function(e){function n(n,r,i,a){e.call(this,n,r,i,a),r.coordinates?Array.isArray(r.coordinates)&&4===r.coordinates.length&&!r.coordinates.some((function(t){return!Array.isArray(t)||2!==t.length||t.some((function(t){return"number"!==typeof t}))}))||this.fire(new t.ErrorEvent(new t.ValidationError("sources."+n,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new t.ErrorEvent(new t.ValidationError("sources."+n,null,'missing required property "coordinates"'))),r.animate&&"boolean"!==typeof r.animate&&this.fire(new t.ErrorEvent(new t.ValidationError("sources."+n,null,'optional "animate" property must be a boolean value'))),r.canvas?"string"===typeof r.canvas||r.canvas instanceof t.window.HTMLCanvasElement||this.fire(new t.ErrorEvent(new t.ValidationError("sources."+n,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 t.ErrorEvent(new t.ValidationError("sources."+n,null,'missing required property "canvas"'))),this.options=r,this.animate=void 0===r.animate||r.animate}return e&&(n.__proto__=e),n.prototype=Object.create(e&&e.prototype),n.prototype.constructor=n,n.prototype.load=function(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof t.window.HTMLCanvasElement?this.options.canvas:t.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new t.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())},n.prototype.getCanvas=function(){return this.canvas},n.prototype.onAdd=function(t){this.map=t,this.load(),this.canvas&&this.animate&&this.play()},n.prototype.onRemove=function(){this.pause()},n.prototype.prepare=function(){var e=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,e=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,e=!0),!this._hasInvalidDimensions()&&0!==Object.keys(this.tiles).length){var n=this.map.painter.context,r=n.gl;for(var i in this.boundsBuffer||(this.boundsBuffer=n.createVertexBuffer(this._boundsArray,R.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(e||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new t.Texture(n,this.canvas,r.RGBA,{premultiply:!0}),this.tiles){var a=this.tiles[i];"loaded"!==a.state&&(a.state="loaded",a.texture=this.texture)}}},n.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},n.prototype.hasTransition=function(){return this._playing},n.prototype._hasInvalidDimensions=function(){for(var t=0,e=[this.canvas.width,this.canvas.height];tthis.max){var o=this._getAndRemoveByKey(this.order[0]);o&&this.onRemove(o)}return this},Z.prototype.has=function(t){return t.wrapped().key in this.data},Z.prototype.getAndRemove=function(t){return this.has(t)?this._getAndRemoveByKey(t.wrapped().key):null},Z.prototype._getAndRemoveByKey=function(t){var e=this.data[t].shift();return e.timeout&&clearTimeout(e.timeout),0===this.data[t].length&&delete this.data[t],this.order.splice(this.order.indexOf(t),1),e.value},Z.prototype.getByKey=function(t){var e=this.data[t];return e?e[0].value:null},Z.prototype.get=function(t){return this.has(t)?this.data[t.wrapped().key][0].value:null},Z.prototype.remove=function(t,e){if(!this.has(t))return this;var n=t.wrapped().key,r=void 0===e?0:this.data[n].indexOf(e),i=this.data[n][r];return this.data[n].splice(r,1),i.timeout&&clearTimeout(i.timeout),0===this.data[n].length&&delete this.data[n],this.onRemove(i.value),this.order.splice(this.order.indexOf(n),1),this},Z.prototype.setMaxSize=function(t){for(this.max=t;this.order.length>this.max;){var e=this._getAndRemoveByKey(this.order[0]);e&&this.onRemove(e)}return this},Z.prototype.filter=function(t){var e=[];for(var n in this.data)for(var r=0,i=this.data[n];r1||(Math.abs(n)>1&&(1===Math.abs(n+i)?n+=i:1===Math.abs(n-i)&&(n-=i)),e.dem&&t.dem&&(t.dem.backfillBorder(e.dem,n,r),t.neighboringTiles&&t.neighboringTiles[a]&&(t.neighboringTiles[a].backfilled=!0)))}},n.prototype.getTile=function(t){return this.getTileByID(t.key)},n.prototype.getTileByID=function(t){return this._tiles[t]},n.prototype._retainLoadedChildren=function(t,e,n,r){for(var i in this._tiles){var a=this._tiles[i];if(!(r[i]||!a.hasData()||a.tileID.overscaledZ<=e||a.tileID.overscaledZ>n)){for(var o=a.tileID;a&&a.tileID.overscaledZ>e+1;){var s=a.tileID.scaledTo(a.tileID.overscaledZ-1);(a=this._tiles[s.key])&&a.hasData()&&(o=s)}for(var l=o;l.overscaledZ>e;)if(t[(l=l.scaledTo(l.overscaledZ-1)).key]){r[o.key]=o;break}}}},n.prototype.findLoadedParent=function(t,e){if(t.key in this._loadedParentTiles){var n=this._loadedParentTiles[t.key];return n&&n.tileID.overscaledZ>=e?n:null}for(var r=t.overscaledZ-1;r>=e;r--){var i=t.scaledTo(r),a=this._getLoadedTile(i);if(a)return a}},n.prototype._getLoadedTile=function(t){var e=this._tiles[t.key];return e&&e.hasData()?e:this._cache.getByKey(t.wrapped().key)},n.prototype.updateCacheSize=function(t){var e=(Math.ceil(t.width/this._source.tileSize)+1)*(Math.ceil(t.height/this._source.tileSize)+1),n=5,r=Math.floor(e*n),i="number"===typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,r):r;this._cache.setMaxSize(i)},n.prototype.handleWrapJump=function(t){var e=(t-(void 0===this._prevLng?t:this._prevLng))/360,n=Math.round(e);if(this._prevLng=t,n){var r={};for(var i in this._tiles){var a=this._tiles[i];a.tileID=a.tileID.unwrapTo(a.tileID.wrap+n),r[a.tileID.key]=a}for(var o in this._tiles=r,this._timers)clearTimeout(this._timers[o]),delete this._timers[o];for(var s in this._tiles){var l=this._tiles[s];this._setTileReloadTimer(s,l)}}},n.prototype.update=function(e){var r=this;if(this.transform=e,this._sourceLoaded&&!this._paused){var i;this.updateCacheSize(e),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used?this._source.tileID?i=e.getVisibleUnwrappedCoordinates(this._source.tileID).map((function(e){return new t.OverscaledTileID(e.canonical.z,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y)})):(i=e.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(i=i.filter((function(t){return r._source.hasTile(t)})))):i=[];var a=e.coveringZoomLevel(this._source),o=Math.max(a-n.maxOverzooming,this._source.minzoom),s=Math.max(a+n.maxUnderzooming,this._source.minzoom),l=this._updateRetainedTiles(i,a);if(Jt(this._source.type)){for(var c={},u={},f=0,h=Object.keys(l);fthis._source.maxzoom){var v=p.children(this._source.maxzoom)[0],m=this.getTile(v);if(m&&m.hasData()){r[v.key]=v;continue}}else{var y=p.children(this._source.maxzoom);if(r[y[0].key]&&r[y[1].key]&&r[y[2].key]&&r[y[3].key])continue}for(var b=g.wasRequested(),x=p.overscaledZ-1;x>=a;--x){var w=p.scaledTo(x);if(i[w.key])break;if(i[w.key]=!0,!(g=this.getTile(w))&&b&&(g=this._addTile(w)),g&&(r[w.key]=w,b=g.wasRequested(),g.hasData()))break}}}return r},n.prototype._updateLoadedParentTileCache=function(){for(var t in this._loadedParentTiles={},this._tiles){for(var e=[],n=void 0,r=this._tiles[t].tileID;r.overscaledZ>0;){if(r.key in this._loadedParentTiles){n=this._loadedParentTiles[r.key];break}e.push(r.key);var i=r.scaledTo(r.overscaledZ-1);if(n=this._getLoadedTile(i))break;r=i}for(var a=0,o=e;a0||(e.hasData()&&"reloading"!==e.state?this._cache.add(e.tileID,e,e.getExpiryTimeout()):(e.aborted=!0,this._abortTile(e),this._unloadTile(e))))},n.prototype.clearTiles=function(){for(var t in this._shouldReloadOnResume=!1,this._paused=!1,this._tiles)this._removeTile(t);this._cache.reset()},n.prototype.tilesIn=function(e,n,r){var i=this,a=[],o=this.transform;if(!o)return a;for(var s=r?o.getCameraQueryGeometry(e):e,l=e.map((function(t){return o.pointCoordinate(t)})),c=s.map((function(t){return o.pointCoordinate(t)})),u=this.getIds(),f=1/0,h=1/0,d=-1/0,p=-1/0,g=0,v=c;g=0&&m[1].y+v>=0){var y=l.map((function(t){return s.getTilePoint(t)})),b=c.map((function(t){return s.getTilePoint(t)}));a.push({tile:r,tileID:s,queryGeometry:y,cameraQueryGeometry:b,scale:g})}}},b=0;b=t.browser.now())return!0}return!1},n.prototype.setFeatureState=function(t,e,n){t=t||"_geojsonTileLayer",this._state.updateState(t,e,n)},n.prototype.removeFeatureState=function(t,e,n){t=t||"_geojsonTileLayer",this._state.removeFeatureState(t,e,n)},n.prototype.getFeatureState=function(t,e){return t=t||"_geojsonTileLayer",this._state.getState(t,e)},n.prototype.setDependencies=function(t,e,n){var r=this._tiles[t];r&&r.setDependencies(e,n)},n.prototype.reloadTilesForDependencies=function(t,e){for(var n in this._tiles)this._tiles[n].hasDependency(t,e)&&this._reloadTile(n,"reloading");this._cache.filter((function(n){return!n.hasDependency(t,e)}))},n}(t.Evented);function Zt(t,e){var n=Math.abs(2*t.wrap)-+(t.wrap<0),r=Math.abs(2*e.wrap)-+(e.wrap<0);return t.overscaledZ-e.overscaledZ||r-n||e.canonical.y-t.canonical.y||e.canonical.x-t.canonical.x}function Jt(t){return"raster"===t||"image"===t||"video"===t}function Qt(){return new t.window.Worker(us.workerUrl)}Kt.maxOverzooming=10,Kt.maxUnderzooming=3;var te="mapboxgl_preloaded_worker_pool",ee=function(){this.active={}};ee.prototype.acquire=function(t){if(!this.workers)for(this.workers=[];this.workers.length0?(i-o)/s:0;return this.points[a].mult(1-l).add(this.points[n].mult(l))};var _e=function(t,e,n){var r=this.boxCells=[],i=this.circleCells=[];this.xCellCount=Math.ceil(t/n),this.yCellCount=Math.ceil(e/n);for(var a=0;a=-e[0]&&n<=e[0]&&r>=-e[1]&&r<=e[1]}function Ee(e,n,r,i,a,o,s,l){var c=i?e.textSizeData:e.iconSizeData,u=t.evaluateSizeForZoom(c,r.transform.zoom),f=[256/r.width*2+1,256/r.height*2+1],h=i?e.text.dynamicLayoutVertexArray:e.icon.dynamicLayoutVertexArray;h.clear();for(var d=e.lineVertexArray,p=i?e.text.placedSymbolArray:e.icon.placedSymbolArray,g=r.transform.width/r.transform.height,v=!1,m=0;mMath.abs(r.x-n.x)*i?{useVertical:!0}:(e===t.WritingMode.vertical?n.yr.x)?{needsFlipping:!0}:null}function Le(e,n,r,i,a,o,s,l,c,u,f,h,d,p){var g,v=n/24,m=e.lineOffsetX*v,y=e.lineOffsetY*v;if(e.numGlyphs>1){var b=e.glyphStartIndex+e.numGlyphs,x=e.lineStartIndex,w=e.lineStartIndex+e.lineLength,_=Ce(v,l,m,y,r,f,h,e,c,o,d);if(!_)return{notEnoughRoom:!0};var k=Me(_.first.point,s).point,T=Me(_.last.point,s).point;if(i&&!r){var M=Pe(e.writingMode,k,T,p);if(M)return M}g=[_.first];for(var A=e.glyphStartIndex+1;A0?P.point:Oe(h,C,S,1,a),O=Pe(e.writingMode,S,L,p);if(O)return O}var I=Ie(v*l.getoffsetX(e.glyphStartIndex),m,y,r,f,h,e.segment,e.lineStartIndex,e.lineStartIndex+e.lineLength,c,o,d);if(!I)return{notEnoughRoom:!0};g=[I]}for(var D=0,R=g;D0?1:-1,g=0;i&&(p*=-1,g=Math.PI),p<0&&(g+=Math.PI);for(var v=p>0?l+s:l+s+1,m=a,y=a,b=0,x=0,w=Math.abs(d),_=[];b+x<=w;){if((v+=p)=c)return null;if(y=m,_.push(m),void 0===(m=h[v])){var k=new t.Point(u.getx(v),u.gety(v)),T=Me(k,f);if(T.signedDistanceFromCamera>0)m=h[v]=T.point;else{var M=v-p;m=Oe(0===b?o:new t.Point(u.getx(M),u.gety(M)),k,y,w-b+1,f)}}b+=x,x=y.dist(m)}var A=(w-b)/x,S=m.sub(y),E=S.mult(A)._add(y);E._add(S._unit()._perp()._mult(r*p));var C=g+Math.atan2(m.y-y.y,m.x-y.x);return _.push(E),{point:E,angle:C,path:_}}_e.prototype.keysLength=function(){return this.boxKeys.length+this.circleKeys.length},_e.prototype.insert=function(t,e,n,r,i){this._forEachCell(e,n,r,i,this._insertBoxCell,this.boxUid++),this.boxKeys.push(t),this.bboxes.push(e),this.bboxes.push(n),this.bboxes.push(r),this.bboxes.push(i)},_e.prototype.insertCircle=function(t,e,n,r){this._forEachCell(e-r,n-r,e+r,n+r,this._insertCircleCell,this.circleUid++),this.circleKeys.push(t),this.circles.push(e),this.circles.push(n),this.circles.push(r)},_e.prototype._insertBoxCell=function(t,e,n,r,i,a){this.boxCells[i].push(a)},_e.prototype._insertCircleCell=function(t,e,n,r,i,a){this.circleCells[i].push(a)},_e.prototype._query=function(t,e,n,r,i,a){if(n<0||t>this.width||r<0||e>this.height)return!i&&[];var o=[];if(t<=0&&e<=0&&this.width<=n&&this.height<=r){if(i)return!0;for(var s=0;s0:o},_e.prototype._queryCircle=function(t,e,n,r,i){var a=t-n,o=t+n,s=e-n,l=e+n;if(o<0||a>this.width||l<0||s>this.height)return!r&&[];var c=[],u={hitTest:r,circle:{x:t,y:e,radius:n},seenUids:{box:{},circle:{}}};return this._forEachCell(a,s,o,l,this._queryCellCircle,c,u,i),r?c.length>0:c},_e.prototype.query=function(t,e,n,r,i){return this._query(t,e,n,r,!1,i)},_e.prototype.hitTest=function(t,e,n,r,i){return this._query(t,e,n,r,!0,i)},_e.prototype.hitTestCircle=function(t,e,n,r){return this._queryCircle(t,e,n,!0,r)},_e.prototype._queryCell=function(t,e,n,r,i,a,o,s){var l=o.seenUids,c=this.boxCells[i];if(null!==c)for(var u=this.bboxes,f=0,h=c;f=u[p+0]&&r>=u[p+1]&&(!s||s(this.boxKeys[d]))){if(o.hitTest)return a.push(!0),!0;a.push({key:this.boxKeys[d],x1:u[p],y1:u[p+1],x2:u[p+2],y2:u[p+3]})}}}var g=this.circleCells[i];if(null!==g)for(var v=this.circles,m=0,y=g;mo*o+s*s},_e.prototype._circleAndRectCollide=function(t,e,n,r,i,a,o){var s=(a-r)/2,l=Math.abs(t-(r+s));if(l>s+n)return!1;var c=(o-i)/2,u=Math.abs(e-(i+c));if(u>c+n)return!1;if(l<=s||u<=c)return!0;var f=l-s,h=u-c;return f*f+h*h<=n*n};var De=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function Re(t,e){for(var n=0;n=1;O--)L.push(C.path[O]);for(var I=1;I0){for(var N=L[0].clone(),j=L[0].clone(),F=1;F=A.x&&j.x<=S.x&&N.y>=A.y&&j.y<=S.y?[L]:j.xS.x||j.yS.y?[]:t.clipLine([L],A.x,A.y,S.x,S.y)}for(var B=0,U=z;B=this.screenRightBoundary||rthis.screenBottomBoundary},je.prototype.isInsideGrid=function(t,e,n,r){return n>=0&&t=0&&e0?(this.prevPlacement&&this.prevPlacement.variableOffsets[f.crossTileID]&&this.prevPlacement.placements[f.crossTileID]&&this.prevPlacement.placements[f.crossTileID].text&&(g=this.prevPlacement.variableOffsets[f.crossTileID].anchor),this.variableOffsets[f.crossTileID]={textOffset:v,width:n,height:r,anchor:t,textBoxScale:i,prevAnchor:g},this.markUsedJustification(h,t,f,d),h.allowVerticalPlacement&&(this.markUsedOrientation(h,d,f),this.placedOrientations[f.crossTileID]=d),{shift:m,placedGlyphBoxes:y}):void 0},$e.prototype.placeLayerBucketPart=function(e,n,r){var i=this,a=e.parameters,o=a.bucket,s=a.layout,l=a.posMatrix,c=a.textLabelPlaneMatrix,u=a.labelToScreenMatrix,f=a.textPixelRatio,h=a.holdingForFade,d=a.collisionBoxArray,p=a.partiallyEvaluatedTextSize,g=a.collisionGroup,v=s.get("text-optional"),m=s.get("icon-optional"),y=s.get("text-allow-overlap"),b=s.get("icon-allow-overlap"),x="map"===s.get("text-rotation-alignment"),w="map"===s.get("text-pitch-alignment"),_="none"!==s.get("icon-text-fit"),k="viewport-y"===s.get("symbol-z-order"),T=y&&(b||!o.hasIconData()||m),M=b&&(y||!o.hasTextData()||v);!o.collisionArrays&&d&&o.deserializeCollisionBoxes(d);var A=function(e,a){if(!n[e.crossTileID])if(h)i.placements[e.crossTileID]=new He(!1,!1,!1);else{var d=!1,k=!1,A=!0,S=null,E={box:null,offscreen:null},C={box:null,offscreen:null},P=null,L=null,O=null,I=0,D=0,R=0;a.textFeatureIndex?I=a.textFeatureIndex:e.useRuntimeCollisionCircles&&(I=e.featureIndex),a.verticalTextFeatureIndex&&(D=a.verticalTextFeatureIndex);var z=a.textBox;if(z){var N=function(n){var r=t.WritingMode.horizontal;if(o.allowVerticalPlacement&&!n&&i.prevPlacement){var a=i.prevPlacement.placedOrientations[e.crossTileID];a&&(i.placedOrientations[e.crossTileID]=a,r=a,i.markUsedOrientation(o,r,e))}return r},j=function(n,r){if(o.allowVerticalPlacement&&e.numVerticalGlyphVertices>0&&a.verticalTextBox)for(var i=0,s=o.writingModes;i0&&(F=F.filter((function(t){return t!==B.anchor}))).unshift(B.anchor)}var U=function(t,n,r){for(var a=t.x2-t.x1,s=t.y2-t.y1,c=e.textBoxScale,u=_&&!b?n:null,h={box:[],offscreen:!1},p=y?2*F.length:F.length,v=0;v=F.length,T=i.attemptAnchorPlacement(m,t,a,s,c,x,w,f,l,g,k,e,o,r,u);if(T&&(h=T.placedGlyphBoxes)&&h.box&&h.box.length){d=!0,S=T.shift;break}}return h};j((function(){return U(z,a.iconBox,t.WritingMode.horizontal)}),(function(){var n=a.verticalTextBox,r=E&&E.box&&E.box.length;return o.allowVerticalPlacement&&!r&&e.numVerticalGlyphVertices>0&&n?U(n,a.verticalIconBox,t.WritingMode.vertical):{box:null,offscreen:null}})),E&&(d=E.box,A=E.offscreen);var H=N(E&&E.box);if(!d&&i.prevPlacement){var V=i.prevPlacement.variableOffsets[e.crossTileID];V&&(i.variableOffsets[e.crossTileID]=V,i.markUsedJustification(o,V.anchor,e,H))}}else{var q=function(t,n){var r=i.collisionIndex.placeCollisionBox(t,y,f,l,g.predicate);return r&&r.box&&r.box.length&&(i.markUsedOrientation(o,n,e),i.placedOrientations[e.crossTileID]=n),r};j((function(){return q(z,t.WritingMode.horizontal)}),(function(){var n=a.verticalTextBox;return o.allowVerticalPlacement&&e.numVerticalGlyphVertices>0&&n?q(n,t.WritingMode.vertical):{box:null,offscreen:null}})),N(E&&E.box&&E.box.length)}}if(d=(P=E)&&P.box&&P.box.length>0,A=P&&P.offscreen,e.useRuntimeCollisionCircles){var G=o.text.placedSymbolArray.get(e.centerJustifiedTextSymbolIndex),W=t.evaluateSizeForFeature(o.textSizeData,p,G),Y=s.get("text-padding"),$=e.collisionCircleDiameter;L=i.collisionIndex.placeCollisionCircles(y,G,o.lineVertexArray,o.glyphOffsetArray,W,l,c,u,r,w,g.predicate,$,Y),d=y||L.circles.length>0&&!L.collisionDetected,A=A&&L.offscreen}if(a.iconFeatureIndex&&(R=a.iconFeatureIndex),a.iconBox){var X=function(t){var e=_&&S?Ye(t,S.x,S.y,x,w,i.transform.angle):t;return i.collisionIndex.placeCollisionBox(e,b,f,l,g.predicate)};k=C&&C.box&&C.box.length&&a.verticalIconBox?(O=X(a.verticalIconBox)).box.length>0:(O=X(a.iconBox)).box.length>0,A=A&&O.offscreen}var K=v||0===e.numHorizontalGlyphVertices&&0===e.numVerticalGlyphVertices,Z=m||0===e.numIconVertices;if(K||Z?Z?K||(k=k&&d):d=k&&d:k=d=k&&d,d&&P&&P.box&&(C&&C.box&&D?i.collisionIndex.insertCollisionBox(P.box,s.get("text-ignore-placement"),o.bucketInstanceId,D,g.ID):i.collisionIndex.insertCollisionBox(P.box,s.get("text-ignore-placement"),o.bucketInstanceId,I,g.ID)),k&&O&&i.collisionIndex.insertCollisionBox(O.box,s.get("icon-ignore-placement"),o.bucketInstanceId,R,g.ID),L&&(d&&i.collisionIndex.insertCollisionCircles(L.circles,s.get("text-ignore-placement"),o.bucketInstanceId,I,g.ID),r)){var J=o.bucketInstanceId,Q=i.collisionCircleArrays[J];void 0===Q&&(Q=i.collisionCircleArrays[J]=new Ve);for(var tt=0;tt=0;--E){var C=S[E];A(o.symbolInstances.get(C),o.collisionArrays[C])}else for(var P=e.symbolInstanceStart;P=0&&(e.text.placedSymbolArray.get(c).crossTileID=a>=0&&c!==a?0:r.crossTileID)}},$e.prototype.markUsedOrientation=function(e,n,r){for(var i=n===t.WritingMode.horizontal||n===t.WritingMode.horizontalOnly?n:0,a=n===t.WritingMode.vertical?n:0,o=0,s=[r.leftJustifiedTextSymbolIndex,r.centerJustifiedTextSymbolIndex,r.rightJustifiedTextSymbolIndex];o0||l>0,b=a.numIconVertices>0,x=i.placedOrientations[a.crossTileID],w=x===t.WritingMode.vertical,_=x===t.WritingMode.horizontal||x===t.WritingMode.horizontalOnly;if(y){var k=rn(m.text),T=w?an:k;p(e.text,s,T);var M=_?an:k;p(e.text,l,M);var A=m.text.isHidden();[a.rightJustifiedTextSymbolIndex,a.centerJustifiedTextSymbolIndex,a.leftJustifiedTextSymbolIndex].forEach((function(t){t>=0&&(e.text.placedSymbolArray.get(t).hidden=A||w?1:0)})),a.verticalPlacedTextSymbolIndex>=0&&(e.text.placedSymbolArray.get(a.verticalPlacedTextSymbolIndex).hidden=A||_?1:0);var S=i.variableOffsets[a.crossTileID];S&&i.markUsedJustification(e,S.anchor,a,x);var E=i.placedOrientations[a.crossTileID];E&&(i.markUsedJustification(e,"left",a,E),i.markUsedOrientation(e,E,a))}if(b){var C=rn(m.icon),P=!(h&&a.verticalPlacedIconSymbolIndex&&w);if(a.placedIconSymbolIndex>=0){var L=P?C:an;p(e.icon,a.numIconVertices,L),e.icon.placedSymbolArray.get(a.placedIconSymbolIndex).hidden=m.icon.isHidden()}if(a.verticalPlacedIconSymbolIndex>=0){var O=P?an:C;p(e.icon,a.numVerticalIconVertices,O),e.icon.placedSymbolArray.get(a.verticalPlacedIconSymbolIndex).hidden=m.icon.isHidden()}}if(e.hasIconCollisionBoxData()||e.hasTextCollisionBoxData()){var I=e.collisionArrays[r];if(I){var D=new t.Point(0,0);if(I.textBox||I.verticalTextBox){var R=!0;if(c){var z=i.variableOffsets[g];z?(D=We(z.anchor,z.width,z.height,z.textOffset,z.textBoxScale),u&&D._rotate(f?i.transform.angle:-i.transform.angle)):R=!1}I.textBox&&Xe(e.textCollisionBox.collisionVertexArray,m.text.placed,!R||w,D.x,D.y),I.verticalTextBox&&Xe(e.textCollisionBox.collisionVertexArray,m.text.placed,!R||_,D.x,D.y)}var N=Boolean(!_&&I.verticalIconBox);I.iconBox&&Xe(e.iconCollisionBox.collisionVertexArray,m.icon.placed,N,h?D.x:0,h?D.y:0),I.verticalIconBox&&Xe(e.iconCollisionBox.collisionVertexArray,m.icon.placed,!N,h?D.x:0,h?D.y:0)}}},v=0;vt},$e.prototype.setStale=function(){this.stale=!0};var Ke=Math.pow(2,25),Ze=Math.pow(2,24),Je=Math.pow(2,17),Qe=Math.pow(2,16),tn=Math.pow(2,9),en=Math.pow(2,8),nn=Math.pow(2,1);function rn(t){if(0===t.opacity&&!t.placed)return 0;if(1===t.opacity&&t.placed)return 4294967295;var e=t.placed?1:0,n=Math.floor(127*t.opacity);return n*Ke+e*Ze+n*Je+e*Qe+n*tn+e*en+n*nn+e}var an=0,on=function(t){this._sortAcrossTiles="viewport-y"!==t.layout.get("symbol-z-order")&&void 0!==t.layout.get("symbol-sort-key").constantOr(1),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};on.prototype.continuePlacement=function(t,e,n,r,i){for(var a=this._bucketParts;this._currentTileIndex2};this._currentPlacementIndex>=0;){var s=n[e[this._currentPlacementIndex]],l=this.placement.collisionIndex.transform.zoom;if("symbol"===s.type&&(!s.minzoom||s.minzoom<=l)&&(!s.maxzoom||s.maxzoom>l)){if(this._inProgressLayer||(this._inProgressLayer=new on(s)),this._inProgressLayer.continuePlacement(r[s.source],this.placement,this._showCollisionBoxes,s,o))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},sn.prototype.commit=function(t){return this.placement.commit(t),this.placement};var ln=512/t.EXTENT/2,cn=function(t,e,n){this.tileID=t,this.indexedSymbolInstances={},this.bucketInstanceId=n;for(var r=0;rt.overscaledZ)for(var s in o){var l=o[s];l.tileID.isChildOf(t)&&l.findMatches(e.symbolInstances,t,i)}else{var c=o[t.scaledTo(Number(a)).key];c&&c.findMatches(e.symbolInstances,t,i)}}for(var u=0;u0)throw new Error("Unimplemented: "+i.map((function(t){return t.command})).join(", ")+".");return r.forEach((function(t){"setTransition"!==t.command&&n[t.command].apply(n,t.args)})),this.stylesheet=e,!0},n.prototype.addImage=function(e,n){if(this.getImage(e))return this.fire(new t.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(e,n),this._availableImages=this.imageManager.listImages(),this._changedImages[e]=!0,this._changed=!0,this.fire(new t.Event("data",{dataType:"style"}))},n.prototype.updateImage=function(t,e){this.imageManager.updateImage(t,e)},n.prototype.getImage=function(t){return this.imageManager.getImage(t)},n.prototype.removeImage=function(e){if(!this.getImage(e))return this.fire(new t.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(e),this._availableImages=this.imageManager.listImages(),this._changedImages[e]=!0,this._changed=!0,this.fire(new t.Event("data",{dataType:"style"}))},n.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},n.prototype.addSource=function(e,n,r){var i=this;if(void 0===r&&(r={}),this._checkLoaded(),void 0!==this.sourceCaches[e])throw new Error("There is already a source with this ID");if(!n.type)throw new Error("The type property must be defined, but the only the following properties were given: "+Object.keys(n).join(", ")+".");if(!(["vector","raster","geojson","video","image"].indexOf(n.type)>=0)||!this._validate(t.validateStyle.source,"sources."+e,n,null,r)){this.map&&this.map._collectResourceTiming&&(n.collectResourceTiming=!0);var a=this.sourceCaches[e]=new Kt(e,n,this.dispatcher);a.style=this,a.setEventedParent(this,(function(){return{isSourceLoaded:i.loaded(),source:a.serialize(),sourceId:e}})),a.onAdd(this.map),this._changed=!0}},n.prototype.removeSource=function(e){if(this._checkLoaded(),void 0===this.sourceCaches[e])throw new Error("There is no source with this ID");for(var n in this._layers)if(this._layers[n].source===e)return this.fire(new t.ErrorEvent(new Error('Source "'+e+'" cannot be removed while layer "'+n+'" is using it.')));var r=this.sourceCaches[e];delete this.sourceCaches[e],delete this._updatedSources[e],r.fire(new t.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:e})),r.setEventedParent(null),r.clearTiles(),r.onRemove&&r.onRemove(this.map),this._changed=!0},n.prototype.setGeoJSONSourceData=function(t,e){this._checkLoaded(),this.sourceCaches[t].getSource().setData(e),this._changed=!0},n.prototype.getSource=function(t){return this.sourceCaches[t]&&this.sourceCaches[t].getSource()},n.prototype.addLayer=function(e,n,r){void 0===r&&(r={}),this._checkLoaded();var i=e.id;if(this.getLayer(i))this.fire(new t.ErrorEvent(new Error('Layer with id "'+i+'" already exists on this map')));else{var a;if("custom"===e.type){if(dn(this,t.validateCustomStyleLayer(e)))return;a=t.createStyleLayer(e)}else{if("object"===typeof e.source&&(this.addSource(i,e.source),e=t.clone$1(e),e=t.extend(e,{source:i})),this._validate(t.validateStyle.layer,"layers."+i,e,{arrayIndex:-1},r))return;a=t.createStyleLayer(e),this._validateLayer(a),a.setEventedParent(this,{layer:{id:i}}),this._serializedLayers[a.id]=a.serialize()}var o=n?this._order.indexOf(n):this._order.length;if(n&&-1===o)this.fire(new t.ErrorEvent(new Error('Layer with id "'+n+'" does not exist on this map.')));else{if(this._order.splice(o,0,i),this._layerOrderChanged=!0,this._layers[i]=a,this._removedLayers[i]&&a.source&&"custom"!==a.type){var s=this._removedLayers[i];delete this._removedLayers[i],s.type!==a.type?this._updatedSources[a.source]="clear":(this._updatedSources[a.source]="reload",this.sourceCaches[a.source].pause())}this._updateLayer(a),a.onAdd&&a.onAdd(this.map)}}},n.prototype.moveLayer=function(e,n){if(this._checkLoaded(),this._changed=!0,this._layers[e]){if(e!==n){var r=this._order.indexOf(e);this._order.splice(r,1);var i=n?this._order.indexOf(n):this._order.length;n&&-1===i?this.fire(new t.ErrorEvent(new Error('Layer with id "'+n+'" does not exist on this map.'))):(this._order.splice(i,0,e),this._layerOrderChanged=!0)}}else this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be moved.")))},n.prototype.removeLayer=function(e){this._checkLoaded();var n=this._layers[e];if(n){n.setEventedParent(null);var r=this._order.indexOf(e);this._order.splice(r,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[e]=n,delete this._layers[e],delete this._serializedLayers[e],delete this._updatedLayers[e],delete this._updatedPaintProps[e],n.onRemove&&n.onRemove(this.map)}else this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be removed.")))},n.prototype.getLayer=function(t){return this._layers[t]},n.prototype.hasLayer=function(t){return t in this._layers},n.prototype.setLayerZoomRange=function(e,n,r){this._checkLoaded();var i=this.getLayer(e);i?i.minzoom===n&&i.maxzoom===r||(null!=n&&(i.minzoom=n),null!=r&&(i.maxzoom=r),this._updateLayer(i)):this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot have zoom extent.")))},n.prototype.setFilter=function(e,n,r){void 0===r&&(r={}),this._checkLoaded();var i=this.getLayer(e);if(i){if(!t.deepEqual(i.filter,n))return null===n||void 0===n?(i.filter=void 0,void this._updateLayer(i)):void(this._validate(t.validateStyle.filter,"layers."+i.id+".filter",n,null,r)||(i.filter=t.clone$1(n),this._updateLayer(i)))}else this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be filtered.")))},n.prototype.getFilter=function(e){return t.clone$1(this.getLayer(e).filter)},n.prototype.setLayoutProperty=function(e,n,r,i){void 0===i&&(i={}),this._checkLoaded();var a=this.getLayer(e);a?t.deepEqual(a.getLayoutProperty(n),r)||(a.setLayoutProperty(n,r,i),this._updateLayer(a)):this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be styled.")))},n.prototype.getLayoutProperty=function(e,n){var r=this.getLayer(e);if(r)return r.getLayoutProperty(n);this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style.")))},n.prototype.setPaintProperty=function(e,n,r,i){void 0===i&&(i={}),this._checkLoaded();var a=this.getLayer(e);a?t.deepEqual(a.getPaintProperty(n),r)||(a.setPaintProperty(n,r,i)&&this._updateLayer(a),this._changed=!0,this._updatedPaintProps[e]=!0):this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be styled.")))},n.prototype.getPaintProperty=function(t,e){return this.getLayer(t).getPaintProperty(e)},n.prototype.setFeatureState=function(e,n){this._checkLoaded();var r=e.source,i=e.sourceLayer,a=this.sourceCaches[r];if(void 0!==a){var o=a.getSource().type;"geojson"===o&&i?this.fire(new t.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):"vector"!==o||i?(void 0===e.id&&this.fire(new t.ErrorEvent(new Error("The feature id parameter must be provided."))),a.setFeatureState(i,e.id,n)):this.fire(new t.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new t.ErrorEvent(new Error("The source '"+r+"' does not exist in the map's style.")))},n.prototype.removeFeatureState=function(e,n){this._checkLoaded();var r=e.source,i=this.sourceCaches[r];if(void 0!==i){var a=i.getSource().type,o="vector"===a?e.sourceLayer:void 0;"vector"!==a||o?n&&"string"!==typeof e.id&&"number"!==typeof e.id?this.fire(new t.ErrorEvent(new Error("A feature id is requred to remove its specific state property."))):i.removeFeatureState(o,e.id,n):this.fire(new t.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new t.ErrorEvent(new Error("The source '"+r+"' does not exist in the map's style.")))},n.prototype.getFeatureState=function(e){this._checkLoaded();var n=e.source,r=e.sourceLayer,i=this.sourceCaches[n];if(void 0!==i){if("vector"!==i.getSource().type||r)return void 0===e.id&&this.fire(new t.ErrorEvent(new Error("The feature id parameter must be provided."))),i.getFeatureState(r,e.id);this.fire(new t.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new t.ErrorEvent(new Error("The source '"+n+"' does not exist in the map's style.")))},n.prototype.getTransition=function(){return t.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},n.prototype.serialize=function(){return t.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:t.mapObject(this.sourceCaches,(function(t){return t.serialize()})),layers:this._serializeLayers(this._order)},(function(t){return void 0!==t}))},n.prototype._updateLayer=function(t){this._updatedLayers[t.id]=!0,t.source&&!this._updatedSources[t.source]&&"raster"!==this.sourceCaches[t.source].getSource().type&&(this._updatedSources[t.source]="reload",this.sourceCaches[t.source].pause()),this._changed=!0},n.prototype._flattenAndSortRenderedFeatures=function(t){for(var e=this,n=function(t){return"fill-extrusion"===e._layers[t].type},r={},i=[],a=this._order.length-1;a>=0;a--){var o=this._order[a];if(n(o)){r[o]=a;for(var s=0,l=t;s=0;p--){var g=this._order[p];if(n(g))for(var v=i.length-1;v>=0;v--){var m=i[v].feature;if(r[m.layer.id] 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}",On="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;}",In="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;}",Dn="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);}",Rn="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);}",zn="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);}",Nn="#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\ngl_FragColor=color*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",jn="attribute vec2 a_pos;uniform mat4 u_matrix;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);}",Fn="varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",Bn="attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}",Un="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;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\nvec2 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;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",Hn="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;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 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;}",Vn="uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\nvec2 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;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",qn="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;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 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);}",Gn="varying vec4 v_color;void main() {gl_FragColor=v_color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",Wn="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;\n#pragma mapbox: define highp float base\n#pragma mapbox: define highp float height\n#pragma mapbox: define highp vec4 color\nvoid main() {\n#pragma mapbox: initialize highp float base\n#pragma mapbox: initialize highp float height\n#pragma mapbox: initialize highp vec4 color\nvec3 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;}",Yn="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;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 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;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",$n="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;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 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\n? a_pos\n: 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;}",Xn="#ifdef GL_ES\nprecision highp float;\n#endif\nuniform 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);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",Kn="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;}",Zn="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;\n#define PI 3.141592653589793\nvoid 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;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",Jn="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;}",Qn="uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nfloat 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);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",tr="\n#define scale 0.015873016\nattribute 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;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\nfloat 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);}",er="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;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nfloat 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);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",nr="\n#define MAX_LINE_DISTANCE 32767.0\n#define scale 0.015873016\nattribute 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;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\nfloat 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);}",rr="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;\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nvec2 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;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",ir="\n#define scale 0.015873016\n#define LINE_DISTANCE_SCALE 2.0\nattribute 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;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nfloat 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;}",ar="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;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\nfloat 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);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",or="\n#define scale 0.015873016\n#define LINE_DISTANCE_SCALE 2.0\nattribute 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;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\nfloat 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);}",sr="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);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",lr="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;}",cr="uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nlowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",ur="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;\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nvec2 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 ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_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));}",fr="#define SDF_PX 8.0\nuniform 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;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat 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);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",hr="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;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 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 ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_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);}",dr="#define SDF_PX 8.0\n#define SDF 1.0\n#define ICON 0.0\nuniform 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;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat 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;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\nreturn;}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);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",pr="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;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 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 ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_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);}",gr=Ur("#ifdef GL_ES\nprecision mediump float;\n#else\n#if !defined(lowp)\n#define lowp\n#endif\n#if !defined(mediump)\n#define mediump\n#endif\n#if !defined(highp)\n#define highp\n#endif\n#endif","#ifdef GL_ES\nprecision highp float;\n#else\n#if !defined(lowp)\n#define lowp\n#endif\n#if !defined(mediump)\n#define mediump\n#endif\n#if !defined(highp)\n#define highp\n#endif\n#endif\nvec2 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\n);}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=Ur(bn,xn),mr=Ur(wn,_n),yr=Ur(kn,Tn),br=Ur(Mn,An),xr=Ur(Sn,En),wr=Ur(Cn,Pn),_r=Ur(Ln,On),kr=Ur(In,Dn),Tr=Ur(Rn,zn),Mr=Ur(Nn,jn),Ar=Ur(Fn,Bn),Sr=Ur(Un,Hn),Er=Ur(Vn,qn),Cr=Ur(Gn,Wn),Pr=Ur(Yn,$n),Lr=Ur(Xn,Kn),Or=Ur(Zn,Jn),Ir=Ur(Qn,tr),Dr=Ur(er,nr),Rr=Ur(rr,ir),zr=Ur(ar,or),Nr=Ur(sr,lr),jr=Ur(cr,ur),Fr=Ur(fr,hr),Br=Ur(dr,pr);function Ur(t,e){var n=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,r={};return{fragmentSource:t=t.replace(n,(function(t,e,n,i,a){return r[a]=!0,"define"===e?"\n#ifndef HAS_UNIFORM_u_"+a+"\nvarying "+n+" "+i+" "+a+";\n#else\nuniform "+n+" "+i+" u_"+a+";\n#endif\n":"\n#ifdef HAS_UNIFORM_u_"+a+"\n "+n+" "+i+" "+a+" = u_"+a+";\n#endif\n"})),vertexSource:e=e.replace(n,(function(t,e,n,i,a){var o="float"===i?"vec2":"vec4",s=a.match(/color/)?"color":o;return r[a]?"define"===e?"\n#ifndef HAS_UNIFORM_u_"+a+"\nuniform lowp float u_"+a+"_t;\nattribute "+n+" "+o+" a_"+a+";\nvarying "+n+" "+i+" "+a+";\n#else\nuniform "+n+" "+i+" u_"+a+";\n#endif\n":"vec4"===s?"\n#ifndef HAS_UNIFORM_u_"+a+"\n "+a+" = a_"+a+";\n#else\n "+n+" "+i+" "+a+" = u_"+a+";\n#endif\n":"\n#ifndef HAS_UNIFORM_u_"+a+"\n "+a+" = unpack_mix_"+s+"(a_"+a+", u_"+a+"_t);\n#else\n "+n+" "+i+" "+a+" = u_"+a+";\n#endif\n":"define"===e?"\n#ifndef HAS_UNIFORM_u_"+a+"\nuniform lowp float u_"+a+"_t;\nattribute "+n+" "+o+" a_"+a+";\n#else\nuniform "+n+" "+i+" u_"+a+";\n#endif\n":"vec4"===s?"\n#ifndef HAS_UNIFORM_u_"+a+"\n "+n+" "+i+" "+a+" = a_"+a+";\n#else\n "+n+" "+i+" "+a+" = u_"+a+";\n#endif\n":"\n#ifndef HAS_UNIFORM_u_"+a+"\n "+n+" "+i+" "+a+" = unpack_mix_"+s+"(a_"+a+", u_"+a+"_t);\n#else\n "+n+" "+i+" "+a+" = u_"+a+";\n#endif\n"}))}}var Hr=Object.freeze({__proto__:null,prelude:gr,background:vr,backgroundPattern:mr,circle:yr,clippingMask:br,heatmap:xr,heatmapTexture:wr,collisionBox:_r,collisionCircle:kr,debug:Tr,fill:Mr,fillOutline:Ar,fillOutlinePattern:Sr,fillPattern:Er,fillExtrusion:Cr,fillExtrusionPattern:Pr,hillshadePrepare:Lr,hillshade:Or,line:Ir,lineGradient:Dr,linePattern:Rr,lineSDF:zr,raster:Nr,symbolIcon:jr,symbolSDF:Fr,symbolTextAndIcon:Br}),Vr=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};Vr.prototype.bind=function(t,e,n,r,i,a,o,s){this.context=t;for(var l=this.boundPaintVertexBuffers.length!==r.length,c=0;!l&&c>16,s>>16],u_pixel_coord_lower:[65535&o,65535&s]}}function Wr(t,e,n,r){var i=n.imageManager.getPattern(t.from.toString()),a=n.imageManager.getPattern(t.to.toString()),o=n.imageManager.getPixelSize(),s=o.width,l=o.height,c=Math.pow(2,r.tileID.overscaledZ),u=r.tileSize*Math.pow(2,n.transform.tileZoom)/c,f=u*(r.tileID.canonical.x+r.tileID.wrap*c),h=u*r.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:i.tl,u_pattern_br_a:i.br,u_pattern_tl_b:a.tl,u_pattern_br_b:a.br,u_texsize:[s,l],u_mix:e.t,u_pattern_size_a:i.displaySize,u_pattern_size_b:a.displaySize,u_scale_a:e.fromScale,u_scale_b:e.toScale,u_tile_units_to_pixels:1/Fe(r,1,n.transform.tileZoom),u_pixel_coord_upper:[f>>16,h>>16],u_pixel_coord_lower:[65535&f,65535&h]}}qr.prototype.draw=function(t,e,n,r,i,a,o,s,l,c,u,f,h,d,p,g){var v,m=t.gl;if(!this.failedToCreate){for(var y in t.program.set(this.program),t.setDepthMode(n),t.setStencilMode(r),t.setColorMode(i),t.setCullFace(a),this.fixedUniforms)this.fixedUniforms[y].set(o[y]);d&&d.setUniforms(t,this.binderUniforms,f,{zoom:h});for(var b=(v={},v[m.LINES]=2,v[m.TRIANGLES]=3,v[m.LINE_STRIP]=1,v)[e],x=0,w=u.get();x0?1/(1-t):1+t}function yi(t){return t>0?1-1/(1.001-t):-t}var bi,xi=function(t,e,n,r,i,a,o,s,l,c){var u=i.transform;return{u_is_size_zoom_constant:+("constant"===t||"source"===t),u_is_size_feature_constant:+("constant"===t||"camera"===t),u_size_t:e?e.uSizeT:0,u_size:e?e.uSize:0,u_camera_to_center_distance:u.cameraToCenterDistance,u_pitch:u.pitch/360*2*Math.PI,u_rotate_symbol:+n,u_aspect_ratio:u.width/u.height,u_fade_change:i.options.fadeDuration?i.symbolFadeChange:1,u_matrix:a,u_label_plane_matrix:o,u_coord_matrix:s,u_is_text:+l,u_pitch_with_map:+r,u_texsize:c,u_texture:0}},wi=function(e,n,r,i,a,o,s,l,c,u,f){var h=a.transform;return t.extend(xi(e,n,r,i,a,o,s,l,c,u),{u_gamma_scale:i?Math.cos(h._pitch)*h.cameraToCenterDistance:1,u_device_pixel_ratio:t.browser.devicePixelRatio,u_is_halo:+f})},_i=function(e,n,r,i,a,o,s,l,c,u){return t.extend(wi(e,n,r,i,a,o,s,l,!0,c,!0),{u_texsize_icon:u,u_texture_icon:1})},ki=function(t,e,n){return{u_matrix:t,u_opacity:e,u_color:n}},Ti=function(e,n,r,i,a,o){return t.extend(Wr(i,o,r,a),{u_matrix:e,u_opacity:n})},Mi={fillExtrusion:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_lightpos:new t.Uniform3f(e,n.u_lightpos),u_lightintensity:new t.Uniform1f(e,n.u_lightintensity),u_lightcolor:new t.Uniform3f(e,n.u_lightcolor),u_vertical_gradient:new t.Uniform1f(e,n.u_vertical_gradient),u_opacity:new t.Uniform1f(e,n.u_opacity)}},fillExtrusionPattern:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_lightpos:new t.Uniform3f(e,n.u_lightpos),u_lightintensity:new t.Uniform1f(e,n.u_lightintensity),u_lightcolor:new t.Uniform3f(e,n.u_lightcolor),u_vertical_gradient:new t.Uniform1f(e,n.u_vertical_gradient),u_height_factor:new t.Uniform1f(e,n.u_height_factor),u_image:new t.Uniform1i(e,n.u_image),u_texsize:new t.Uniform2f(e,n.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,n.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,n.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,n.u_scale),u_fade:new t.Uniform1f(e,n.u_fade),u_opacity:new t.Uniform1f(e,n.u_opacity)}},fill:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix)}},fillPattern:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_image:new t.Uniform1i(e,n.u_image),u_texsize:new t.Uniform2f(e,n.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,n.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,n.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,n.u_scale),u_fade:new t.Uniform1f(e,n.u_fade)}},fillOutline:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_world:new t.Uniform2f(e,n.u_world)}},fillOutlinePattern:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_world:new t.Uniform2f(e,n.u_world),u_image:new t.Uniform1i(e,n.u_image),u_texsize:new t.Uniform2f(e,n.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,n.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,n.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,n.u_scale),u_fade:new t.Uniform1f(e,n.u_fade)}},circle:function(e,n){return{u_camera_to_center_distance:new t.Uniform1f(e,n.u_camera_to_center_distance),u_scale_with_map:new t.Uniform1i(e,n.u_scale_with_map),u_pitch_with_map:new t.Uniform1i(e,n.u_pitch_with_map),u_extrude_scale:new t.Uniform2f(e,n.u_extrude_scale),u_device_pixel_ratio:new t.Uniform1f(e,n.u_device_pixel_ratio),u_matrix:new t.UniformMatrix4f(e,n.u_matrix)}},collisionBox:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_camera_to_center_distance:new t.Uniform1f(e,n.u_camera_to_center_distance),u_pixels_to_tile_units:new t.Uniform1f(e,n.u_pixels_to_tile_units),u_extrude_scale:new t.Uniform2f(e,n.u_extrude_scale),u_overscale_factor:new t.Uniform1f(e,n.u_overscale_factor)}},collisionCircle:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_inv_matrix:new t.UniformMatrix4f(e,n.u_inv_matrix),u_camera_to_center_distance:new t.Uniform1f(e,n.u_camera_to_center_distance),u_viewport_size:new t.Uniform2f(e,n.u_viewport_size)}},debug:function(e,n){return{u_color:new t.UniformColor(e,n.u_color),u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_overlay:new t.Uniform1i(e,n.u_overlay),u_overlay_scale:new t.Uniform1f(e,n.u_overlay_scale)}},clippingMask:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix)}},heatmap:function(e,n){return{u_extrude_scale:new t.Uniform1f(e,n.u_extrude_scale),u_intensity:new t.Uniform1f(e,n.u_intensity),u_matrix:new t.UniformMatrix4f(e,n.u_matrix)}},heatmapTexture:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_world:new t.Uniform2f(e,n.u_world),u_image:new t.Uniform1i(e,n.u_image),u_color_ramp:new t.Uniform1i(e,n.u_color_ramp),u_opacity:new t.Uniform1f(e,n.u_opacity)}},hillshade:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_image:new t.Uniform1i(e,n.u_image),u_latrange:new t.Uniform2f(e,n.u_latrange),u_light:new t.Uniform2f(e,n.u_light),u_shadow:new t.UniformColor(e,n.u_shadow),u_highlight:new t.UniformColor(e,n.u_highlight),u_accent:new t.UniformColor(e,n.u_accent)}},hillshadePrepare:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_image:new t.Uniform1i(e,n.u_image),u_dimension:new t.Uniform2f(e,n.u_dimension),u_zoom:new t.Uniform1f(e,n.u_zoom),u_maxzoom:new t.Uniform1f(e,n.u_maxzoom),u_unpack:new t.Uniform4f(e,n.u_unpack)}},line:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_ratio:new t.Uniform1f(e,n.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,n.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,n.u_units_to_pixels)}},lineGradient:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_ratio:new t.Uniform1f(e,n.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,n.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,n.u_units_to_pixels),u_image:new t.Uniform1i(e,n.u_image)}},linePattern:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_texsize:new t.Uniform2f(e,n.u_texsize),u_ratio:new t.Uniform1f(e,n.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,n.u_device_pixel_ratio),u_image:new t.Uniform1i(e,n.u_image),u_units_to_pixels:new t.Uniform2f(e,n.u_units_to_pixels),u_scale:new t.Uniform3f(e,n.u_scale),u_fade:new t.Uniform1f(e,n.u_fade)}},lineSDF:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_ratio:new t.Uniform1f(e,n.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,n.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,n.u_units_to_pixels),u_patternscale_a:new t.Uniform2f(e,n.u_patternscale_a),u_patternscale_b:new t.Uniform2f(e,n.u_patternscale_b),u_sdfgamma:new t.Uniform1f(e,n.u_sdfgamma),u_image:new t.Uniform1i(e,n.u_image),u_tex_y_a:new t.Uniform1f(e,n.u_tex_y_a),u_tex_y_b:new t.Uniform1f(e,n.u_tex_y_b),u_mix:new t.Uniform1f(e,n.u_mix)}},raster:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_tl_parent:new t.Uniform2f(e,n.u_tl_parent),u_scale_parent:new t.Uniform1f(e,n.u_scale_parent),u_buffer_scale:new t.Uniform1f(e,n.u_buffer_scale),u_fade_t:new t.Uniform1f(e,n.u_fade_t),u_opacity:new t.Uniform1f(e,n.u_opacity),u_image0:new t.Uniform1i(e,n.u_image0),u_image1:new t.Uniform1i(e,n.u_image1),u_brightness_low:new t.Uniform1f(e,n.u_brightness_low),u_brightness_high:new t.Uniform1f(e,n.u_brightness_high),u_saturation_factor:new t.Uniform1f(e,n.u_saturation_factor),u_contrast_factor:new t.Uniform1f(e,n.u_contrast_factor),u_spin_weights:new t.Uniform3f(e,n.u_spin_weights)}},symbolIcon:function(e,n){return{u_is_size_zoom_constant:new t.Uniform1i(e,n.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,n.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,n.u_size_t),u_size:new t.Uniform1f(e,n.u_size),u_camera_to_center_distance:new t.Uniform1f(e,n.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,n.u_pitch),u_rotate_symbol:new t.Uniform1i(e,n.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,n.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,n.u_fade_change),u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,n.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,n.u_coord_matrix),u_is_text:new t.Uniform1i(e,n.u_is_text),u_pitch_with_map:new t.Uniform1i(e,n.u_pitch_with_map),u_texsize:new t.Uniform2f(e,n.u_texsize),u_texture:new t.Uniform1i(e,n.u_texture)}},symbolSDF:function(e,n){return{u_is_size_zoom_constant:new t.Uniform1i(e,n.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,n.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,n.u_size_t),u_size:new t.Uniform1f(e,n.u_size),u_camera_to_center_distance:new t.Uniform1f(e,n.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,n.u_pitch),u_rotate_symbol:new t.Uniform1i(e,n.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,n.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,n.u_fade_change),u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,n.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,n.u_coord_matrix),u_is_text:new t.Uniform1i(e,n.u_is_text),u_pitch_with_map:new t.Uniform1i(e,n.u_pitch_with_map),u_texsize:new t.Uniform2f(e,n.u_texsize),u_texture:new t.Uniform1i(e,n.u_texture),u_gamma_scale:new t.Uniform1f(e,n.u_gamma_scale),u_device_pixel_ratio:new t.Uniform1f(e,n.u_device_pixel_ratio),u_is_halo:new t.Uniform1i(e,n.u_is_halo)}},symbolTextAndIcon:function(e,n){return{u_is_size_zoom_constant:new t.Uniform1i(e,n.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,n.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,n.u_size_t),u_size:new t.Uniform1f(e,n.u_size),u_camera_to_center_distance:new t.Uniform1f(e,n.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,n.u_pitch),u_rotate_symbol:new t.Uniform1i(e,n.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,n.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,n.u_fade_change),u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,n.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,n.u_coord_matrix),u_is_text:new t.Uniform1i(e,n.u_is_text),u_pitch_with_map:new t.Uniform1i(e,n.u_pitch_with_map),u_texsize:new t.Uniform2f(e,n.u_texsize),u_texsize_icon:new t.Uniform2f(e,n.u_texsize_icon),u_texture:new t.Uniform1i(e,n.u_texture),u_texture_icon:new t.Uniform1i(e,n.u_texture_icon),u_gamma_scale:new t.Uniform1f(e,n.u_gamma_scale),u_device_pixel_ratio:new t.Uniform1f(e,n.u_device_pixel_ratio),u_is_halo:new t.Uniform1i(e,n.u_is_halo)}},background:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_opacity:new t.Uniform1f(e,n.u_opacity),u_color:new t.UniformColor(e,n.u_color)}},backgroundPattern:function(e,n){return{u_matrix:new t.UniformMatrix4f(e,n.u_matrix),u_opacity:new t.Uniform1f(e,n.u_opacity),u_image:new t.Uniform1i(e,n.u_image),u_pattern_tl_a:new t.Uniform2f(e,n.u_pattern_tl_a),u_pattern_br_a:new t.Uniform2f(e,n.u_pattern_br_a),u_pattern_tl_b:new t.Uniform2f(e,n.u_pattern_tl_b),u_pattern_br_b:new t.Uniform2f(e,n.u_pattern_br_b),u_texsize:new t.Uniform2f(e,n.u_texsize),u_mix:new t.Uniform1f(e,n.u_mix),u_pattern_size_a:new t.Uniform2f(e,n.u_pattern_size_a),u_pattern_size_b:new t.Uniform2f(e,n.u_pattern_size_b),u_scale_a:new t.Uniform1f(e,n.u_scale_a),u_scale_b:new t.Uniform1f(e,n.u_scale_b),u_pixel_coord_upper:new t.Uniform2f(e,n.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,n.u_pixel_coord_lower),u_tile_units_to_pixels:new t.Uniform1f(e,n.u_tile_units_to_pixels)}}};function Ai(e,n,r,i,a,o,s){for(var l=e.context,c=l.gl,u=e.useProgram("collisionBox"),f=[],h=0,d=0,p=0;p0){var w=t.create(),_=y;t.mul(w,m.placementInvProjMatrix,e.transform.glCoordMatrix),t.mul(w,w,m.placementViewportMatrix),f.push({circleArray:x,circleOffset:d,transform:_,invTransform:w}),d=h+=x.length/4}b&&u.draw(l,c.LINES,jt.disabled,Ut.disabled,e.colorModeForRenderPass(),$t.disabled,ti(y,e.transform,v),r.id,b.layoutVertexBuffer,b.indexBuffer,b.segments,null,e.transform.zoom,null,null,b.collisionVertexBuffer)}}if(s&&f.length){var k=e.useProgram("collisionCircle"),T=new t.StructArrayLayout2f1f2i16;T.resize(4*h),T._trim();for(var M=0,A=0,S=f;A=0&&(g[m.associatedIconIndex]={shiftedAnchor:S,angle:E})}else Re(m.numGlyphs,d)}if(f){p.clear();for(var P=e.icon.placedSymbolArray,L=0;L0){var s=t.browser.now(),l=(s-e.timeAdded)/o,c=n?(s-n.timeAdded)/o:-1,u=r.getSource(),f=a.coveringZoomLevel({tileSize:u.tileSize,roundZoom:u.roundZoom}),h=!n||Math.abs(n.tileID.overscaledZ-f)>Math.abs(e.tileID.overscaledZ-f),d=h&&e.refreshedUponExpiration?1:t.clamp(h?l:1-c,0,1);return e.refreshedUponExpiration&&l>=1&&(e.refreshedUponExpiration=!1),n?{opacity:1,mix:1-d}:{opacity:d,mix:0}}return{opacity:1,mix:0}}function Zi(t,e,n){var r=n.paint.get("background-color"),i=n.paint.get("background-opacity");if(0!==i){var a=t.context,o=a.gl,s=t.transform,l=s.tileSize,c=n.paint.get("background-pattern");if(!t.isPatternMissing(c)){var u=!c&&1===r.a&&1===i&&t.opaquePassEnabledForLayer()?"opaque":"translucent";if(t.renderPass===u){var f=Ut.disabled,h=t.depthModeForSublayer(0,"opaque"===u?jt.ReadWrite:jt.ReadOnly),d=t.colorModeForRenderPass(),p=t.useProgram(c?"backgroundPattern":"background"),g=s.coveringTiles({tileSize:l});c&&(a.activeTexture.set(o.TEXTURE0),t.imageManager.bind(t.context));for(var v=n.getCrossfadeParameters(),m=0,y=g;m "+r.overscaledZ),ua(e,m+" "+p+"kb"),s.draw(i,a.TRIANGLES,l,c,Gt.alphaBlended,$t.disabled,ni(o,t.Color.transparent,v),f,e.debugBuffer,e.quadTriangleIndexBuffer,e.debugSegments)}function ua(t,e){t.initDebugOverlayCanvas();var n=t.debugOverlayCanvas,r=t.context.gl,i=t.debugOverlayCanvas.getContext("2d");i.clearRect(0,0,n.width,n.height),i.shadowColor="white",i.shadowBlur=2,i.lineWidth=1.5,i.strokeStyle="white",i.textBaseline="top",i.font="bold 36px Open Sans, sans-serif",i.fillText(e,5,5),i.strokeText(e,5,5),t.debugOverlayTexture.update(n),t.debugOverlayTexture.bind(r.LINEAR,r.CLAMP_TO_EDGE)}function fa(t,e,n){var r=t.context,i=n.implementation;if("offscreen"===t.renderPass){var a=i.prerender;a&&(t.setCustomLayerDefaults(),r.setColorMode(t.colorModeForRenderPass()),a.call(i,r.gl,t.transform.customLayerMatrix()),r.setDirty(),t.setBaseState())}else if("translucent"===t.renderPass){t.setCustomLayerDefaults(),r.setColorMode(t.colorModeForRenderPass()),r.setStencilMode(Ut.disabled);var o="3d"===i.renderingMode?new jt(t.context.gl.LEQUAL,jt.ReadWrite,t.depthRangeFor3D):t.depthModeForSublayer(0,jt.ReadOnly);r.setDepthMode(o),i.render(r.gl,t.transform.customLayerMatrix()),r.setDirty(),t.setBaseState(),r.bindFramebuffer.set(null)}}var ha={symbol:Ci,circle:zi,heatmap:Ni,line:Ui,fill:Hi,"fill-extrusion":qi,hillshade:Wi,raster:Xi,background:Zi,debug:la,custom:fa},da=function(t,e){this.context=new Xt(t),this.transform=e,this._tileTextures={},this.setup(),this.numSublayers=Kt.maxUnderzooming+Kt.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new hn,this.gpuTimers={}};da.prototype.resize=function(e,n){if(this.width=e*t.browser.devicePixelRatio,this.height=n*t.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var r=0,i=this.style._order;r256&&this.clearStencil(),n.setColorMode(Gt.disabled),n.setDepthMode(jt.disabled);var i=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var a=0,o=e;a256&&this.clearStencil();var t=this.nextStencilID++,e=this.context.gl;return new Ut({func:e.NOTEQUAL,mask:255},t,255,e.KEEP,e.KEEP,e.REPLACE)},da.prototype.stencilModeForClipping=function(t){var e=this.context.gl;return new Ut({func:e.EQUAL,mask:255},this._tileClippingMaskIDs[t.key],0,e.KEEP,e.KEEP,e.REPLACE)},da.prototype.stencilConfigForOverlap=function(t){var e,n=this.context.gl,r=t.sort((function(t,e){return e.overscaledZ-t.overscaledZ})),i=r[r.length-1].overscaledZ,a=r[0].overscaledZ-i+1;if(a>1){this.currentStencilSource=void 0,this.nextStencilID+a>256&&this.clearStencil();for(var o={},s=0;s=0;this.currentLayer--){var _=this.style._layers[i[this.currentLayer]],k=a[_.source],T=u[_.source];this._renderTileClippingMasks(_,T),this.renderLayer(this,k,_,T)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer0?e.pop():null},da.prototype.isPatternMissing=function(t){if(!t)return!1;if(!t.from||!t.to)return!0;var e=this.imageManager.getPattern(t.from.toString()),n=this.imageManager.getPattern(t.to.toString());return!e||!n},da.prototype.useProgram=function(t,e){this.cache=this.cache||{};var n=""+t+(e?e.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[n]||(this.cache[n]=new qr(this.context,Hr[t],e,Mi[t],this._showOverdrawInspector)),this.cache[n]},da.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()},da.prototype.setBaseState=function(){var t=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(t.FUNC_ADD)},da.prototype.initDebugOverlayCanvas=function(){if(null==this.debugOverlayCanvas){this.debugOverlayCanvas=t.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var e=this.context.gl;this.debugOverlayTexture=new t.Texture(this.context,this.debugOverlayCanvas,e.RGBA)}},da.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var pa=function(t,e){this.points=t,this.planes=e};pa.fromInvProjectionMatrix=function(e,n,r){var i=[[-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]],a=Math.pow(2,r),o=i.map((function(n){return t.transformMat4([],n,e)})).map((function(e){return t.scale$1([],e,1/e[3]/n*a)})),s=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map((function(e){var n=t.sub([],o[e[0]],o[e[1]]),r=t.sub([],o[e[2]],o[e[1]]),i=t.normalize([],t.cross([],n,r)),a=-t.dot(i,o[e[1]]);return i.concat(a)}));return new pa(o,s)};var ga=function(e,n){this.min=e,this.max=n,this.center=t.scale$2([],t.add([],this.min,this.max),.5)};ga.prototype.quadrant=function(e){for(var n=[e%2===0,e<2],r=t.clone$2(this.min),i=t.clone$2(this.max),a=0;a=0;if(0===o)return 0;o!==n.length&&(r=!1)}if(r)return 2;for(var l=0;l<3;l++){for(var c=Number.MAX_VALUE,u=-Number.MAX_VALUE,f=0;fthis.max[l]-this.min[l])return 0}return 1};var va=function(t,e,n,r){if(void 0===t&&(t=0),void 0===e&&(e=0),void 0===n&&(n=0),void 0===r&&(r=0),isNaN(t)||t<0||isNaN(e)||e<0||isNaN(n)||n<0||isNaN(r)||r<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=t,this.bottom=e,this.left=n,this.right=r};va.prototype.interpolate=function(e,n,r){return null!=n.top&&null!=e.top&&(this.top=t.number(e.top,n.top,r)),null!=n.bottom&&null!=e.bottom&&(this.bottom=t.number(e.bottom,n.bottom,r)),null!=n.left&&null!=e.left&&(this.left=t.number(e.left,n.left,r)),null!=n.right&&null!=e.right&&(this.right=t.number(e.right,n.right,r)),this},va.prototype.getCenter=function(e,n){var r=t.clamp((this.left+e-this.right)/2,0,e),i=t.clamp((this.top+n-this.bottom)/2,0,n);return new t.Point(r,i)},va.prototype.equals=function(t){return this.top===t.top&&this.bottom===t.bottom&&this.left===t.left&&this.right===t.right},va.prototype.clone=function(){return new va(this.top,this.bottom,this.left,this.right)},va.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var ma=function(e,n,r,i,a){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=void 0===a||a,this._minZoom=e||0,this._maxZoom=n||22,this._minPitch=void 0===r||null===r?0:r,this._maxPitch=void 0===i||null===i?60:i,this.setMaxBounds(),this.width=0,this.height=0,this._center=new t.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new va,this._posMatrixCache={},this._alignedPosMatrixCache={}},ya={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}};function ba(t,e){var n=!1,r=null,i=function i(){r=null,n&&(t(),r=setTimeout(i,e),n=!1)};return function(){return n=!0,r||i(),r}}ma.prototype.clone=function(){var t=new ma(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return t.tileSize=this.tileSize,t.latRange=this.latRange,t.width=this.width,t.height=this.height,t._center=this._center,t.zoom=this.zoom,t.angle=this.angle,t._fov=this._fov,t._pitch=this._pitch,t._unmodified=this._unmodified,t._edgeInsets=this._edgeInsets.clone(),t._calcMatrices(),t},ya.minZoom.get=function(){return this._minZoom},ya.minZoom.set=function(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))},ya.maxZoom.get=function(){return this._maxZoom},ya.maxZoom.set=function(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))},ya.minPitch.get=function(){return this._minPitch},ya.minPitch.set=function(t){this._minPitch!==t&&(this._minPitch=t,this.pitch=Math.max(this.pitch,t))},ya.maxPitch.get=function(){return this._maxPitch},ya.maxPitch.set=function(t){this._maxPitch!==t&&(this._maxPitch=t,this.pitch=Math.min(this.pitch,t))},ya.renderWorldCopies.get=function(){return this._renderWorldCopies},ya.renderWorldCopies.set=function(t){void 0===t?t=!0:null===t&&(t=!1),this._renderWorldCopies=t},ya.worldSize.get=function(){return this.tileSize*this.scale},ya.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},ya.size.get=function(){return new t.Point(this.width,this.height)},ya.bearing.get=function(){return-this.angle/Math.PI*180},ya.bearing.set=function(e){var n=-t.wrap(e,-180,180)*Math.PI/180;this.angle!==n&&(this._unmodified=!1,this.angle=n,this._calcMatrices(),this.rotationMatrix=t.create$2(),t.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},ya.pitch.get=function(){return this._pitch/Math.PI*180},ya.pitch.set=function(e){var n=t.clamp(e,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==n&&(this._unmodified=!1,this._pitch=n,this._calcMatrices())},ya.fov.get=function(){return this._fov/Math.PI*180},ya.fov.set=function(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices())},ya.zoom.get=function(){return this._zoom},ya.zoom.set=function(t){var e=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==e&&(this._unmodified=!1,this._zoom=e,this.scale=this.zoomScale(e),this.tileZoom=Math.floor(e),this.zoomFraction=e-this.tileZoom,this._constrain(),this._calcMatrices())},ya.center.get=function(){return this._center},ya.center.set=function(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())},ya.padding.get=function(){return this._edgeInsets.toJSON()},ya.padding.set=function(t){this._edgeInsets.equals(t)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,t,1),this._calcMatrices())},ya.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},ma.prototype.isPaddingEqual=function(t){return this._edgeInsets.equals(t)},ma.prototype.interpolatePadding=function(t,e,n){this._unmodified=!1,this._edgeInsets.interpolate(t,e,n),this._constrain(),this._calcMatrices()},ma.prototype.coveringZoomLevel=function(t){var e=(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize));return Math.max(0,e)},ma.prototype.getVisibleUnwrappedCoordinates=function(e){var n=[new t.UnwrappedTileID(0,e)];if(this._renderWorldCopies)for(var r=this.pointCoordinate(new t.Point(0,0)),i=this.pointCoordinate(new t.Point(this.width,0)),a=this.pointCoordinate(new t.Point(this.width,this.height)),o=this.pointCoordinate(new t.Point(0,this.height)),s=Math.floor(Math.min(r.x,i.x,a.x,o.x)),l=Math.floor(Math.max(r.x,i.x,a.x,o.x)),c=1,u=s-c;u<=l+c;u++)0!==u&&n.push(new t.UnwrappedTileID(u,e));return n},ma.prototype.coveringTiles=function(e){var n=this.coveringZoomLevel(e),r=n;if(void 0!==e.minzoom&&ne.maxzoom&&(n=e.maxzoom);var i=t.MercatorCoordinate.fromLngLat(this.center),a=Math.pow(2,n),o=[a*i.x,a*i.y,0],s=pa.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,n),l=e.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(l=n);var c=3,u=function(t){return{aabb:new ga([t*a,0,0],[(t+1)*a,a,0]),zoom:0,x:0,y:0,wrap:t,fullyVisible:!1}},f=[],h=[],d=n,p=e.reparseOverscaled?r:n;if(this._renderWorldCopies)for(var g=1;g<=3;g++)f.push(u(-g)),f.push(u(g));for(f.push(u(0));f.length>0;){var v=f.pop(),m=v.x,y=v.y,b=v.fullyVisible;if(!b){var x=v.aabb.intersects(s);if(0===x)continue;b=2===x}var w=v.aabb.distanceX(o),_=v.aabb.distanceY(o),k=Math.max(Math.abs(w),Math.abs(_)),T=c+(1<T&&v.zoom>=l)h.push({tileID:new t.OverscaledTileID(v.zoom===d?p:v.zoom,v.wrap,v.zoom,m,y),distanceSq:t.sqrLen([o[0]-.5-m,o[1]-.5-y])});else for(var M=0;M<4;M++){var A=(m<<1)+M%2,S=(y<<1)+(M>>1);f.push({aabb:v.aabb.quadrant(M),zoom:v.zoom+1,x:A,y:S,wrap:v.wrap,fullyVisible:b})}}return h.sort((function(t,e){return t.distanceSq-e.distanceSq})).map((function(t){return t.tileID}))},ma.prototype.resize=function(t,e){this.width=t,this.height=e,this.pixelsToGLUnits=[2/t,-2/e],this._constrain(),this._calcMatrices()},ya.unmodified.get=function(){return this._unmodified},ma.prototype.zoomScale=function(t){return Math.pow(2,t)},ma.prototype.scaleZoom=function(t){return Math.log(t)/Math.LN2},ma.prototype.project=function(e){var n=t.clamp(e.lat,-this.maxValidLatitude,this.maxValidLatitude);return new t.Point(t.mercatorXfromLng(e.lng)*this.worldSize,t.mercatorYfromLat(n)*this.worldSize)},ma.prototype.unproject=function(e){return new t.MercatorCoordinate(e.x/this.worldSize,e.y/this.worldSize).toLngLat()},ya.point.get=function(){return this.project(this.center)},ma.prototype.setLocationAtPoint=function(e,n){var r=this.pointCoordinate(n),i=this.pointCoordinate(this.centerPoint),a=this.locationCoordinate(e),o=new t.MercatorCoordinate(a.x-(r.x-i.x),a.y-(r.y-i.y));this.center=this.coordinateLocation(o),this._renderWorldCopies&&(this.center=this.center.wrap())},ma.prototype.locationPoint=function(t){return this.coordinatePoint(this.locationCoordinate(t))},ma.prototype.pointLocation=function(t){return this.coordinateLocation(this.pointCoordinate(t))},ma.prototype.locationCoordinate=function(e){return t.MercatorCoordinate.fromLngLat(e)},ma.prototype.coordinateLocation=function(t){return t.toLngLat()},ma.prototype.pointCoordinate=function(e){var n=0,r=[e.x,e.y,0,1],i=[e.x,e.y,1,1];t.transformMat4(r,r,this.pixelMatrixInverse),t.transformMat4(i,i,this.pixelMatrixInverse);var a=r[3],o=i[3],s=r[0]/a,l=i[0]/o,c=r[1]/a,u=i[1]/o,f=r[2]/a,h=i[2]/o,d=f===h?0:(n-f)/(h-f);return new t.MercatorCoordinate(t.number(s,l,d)/this.worldSize,t.number(c,u,d)/this.worldSize)},ma.prototype.coordinatePoint=function(e){var n=[e.x*this.worldSize,e.y*this.worldSize,0,1];return t.transformMat4(n,n,this.pixelMatrix),new t.Point(n[0]/n[3],n[1]/n[3])},ma.prototype.getBounds=function(){return(new t.LngLatBounds).extend(this.pointLocation(new t.Point(0,0))).extend(this.pointLocation(new t.Point(this.width,0))).extend(this.pointLocation(new t.Point(this.width,this.height))).extend(this.pointLocation(new t.Point(0,this.height)))},ma.prototype.getMaxBounds=function(){return this.latRange&&2===this.latRange.length&&this.lngRange&&2===this.lngRange.length?new t.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null},ma.prototype.setMaxBounds=function(t){t?(this.lngRange=[t.getWest(),t.getEast()],this.latRange=[t.getSouth(),t.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},ma.prototype.calculatePosMatrix=function(e,n){void 0===n&&(n=!1);var r=e.key,i=n?this._alignedPosMatrixCache:this._posMatrixCache;if(i[r])return i[r];var a=e.canonical,o=this.worldSize/this.zoomScale(a.z),s=a.x+Math.pow(2,a.z)*e.wrap,l=t.identity(new Float64Array(16));return t.translate(l,l,[s*o,a.y*o,0]),t.scale(l,l,[o/t.EXTENT,o/t.EXTENT,1]),t.multiply(l,n?this.alignedProjMatrix:this.projMatrix,l),i[r]=new Float32Array(l),i[r]},ma.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},ma.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var e,n,r,i,a=-90,o=90,s=-180,l=180,c=this.size,u=this._unmodified;if(this.latRange){var f=this.latRange;a=t.mercatorYfromLat(f[1])*this.worldSize,e=(o=t.mercatorYfromLat(f[0])*this.worldSize)-ao&&(i=o-v)}if(this.lngRange){var m=d.x,y=c.x/2;m-yl&&(r=l-y)}void 0===r&&void 0===i||(this.center=this.unproject(new t.Point(void 0!==r?r:d.x,void 0!==i?i:d.y))),this._unmodified=u,this._constraining=!1}},ma.prototype._calcMatrices=function(){if(this.height){var e=this._fov/2,n=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(e)*this.height;var r=Math.PI/2+this._pitch,i=this._fov*(.5+n.y/this.height),a=Math.sin(i)*this.cameraToCenterDistance/Math.sin(t.clamp(Math.PI-r-i,.01,Math.PI-.01)),o=this.point,s=o.x,l=o.y,c=1.01*(Math.cos(Math.PI/2-this._pitch)*a+this.cameraToCenterDistance),u=this.height/50,f=new Float64Array(16);t.perspective(f,this._fov,this.width/this.height,u,c),f[8]=2*-n.x/this.width,f[9]=2*n.y/this.height,t.scale(f,f,[1,-1,1]),t.translate(f,f,[0,0,-this.cameraToCenterDistance]),t.rotateX(f,f,this._pitch),t.rotateZ(f,f,this.angle),t.translate(f,f,[-s,-l,0]),this.mercatorMatrix=t.scale([],f,[this.worldSize,this.worldSize,this.worldSize]),t.scale(f,f,[1,1,t.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=f,this.invProjMatrix=t.invert([],this.projMatrix);var h=this.width%2/2,d=this.height%2/2,p=Math.cos(this.angle),g=Math.sin(this.angle),v=s-Math.round(s)+p*h+g*d,m=l-Math.round(l)+p*d+g*h,y=new Float64Array(f);if(t.translate(y,y,[v>.5?v-1:v,m>.5?m-1:m,0]),this.alignedProjMatrix=y,f=t.create(),t.scale(f,f,[this.width/2,-this.height/2,1]),t.translate(f,f,[1,-1,0]),this.labelPlaneMatrix=f,f=t.create(),t.scale(f,f,[1,-1,1]),t.translate(f,f,[-1,-1,0]),t.scale(f,f,[2/this.width,2/this.height,1]),this.glCoordMatrix=f,this.pixelMatrix=t.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),!(f=t.invert(new Float64Array(16),this.pixelMatrix)))throw new Error("failed to invert matrix");this.pixelMatrixInverse=f,this._posMatrixCache={},this._alignedPosMatrixCache={}}},ma.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var e=this.pointCoordinate(new t.Point(0,0)),n=[e.x*this.worldSize,e.y*this.worldSize,0,1];return t.transformMat4(n,n,this.pixelMatrix)[3]/this.cameraToCenterDistance},ma.prototype.getCameraPoint=function(){var e=this._pitch,n=Math.tan(e)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new t.Point(0,n))},ma.prototype.getCameraQueryGeometry=function(e){var n=this.getCameraPoint();if(1===e.length)return[e[0],n];for(var r=n.x,i=n.y,a=n.x,o=n.y,s=0,l=e;s=3&&!t.some((function(t){return isNaN(t)}))){var e=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(t[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:e,pitch:+(t[4]||0)}),!0}return!1},xa.prototype._updateHashUnthrottled=function(){var e=this.getHashString();try{t.window.history.replaceState(t.window.history.state,"",e)}catch(n){}};var wa={linearity:.3,easing:t.bezier(0,0,.3,1)},_a=t.extend({deceleration:2500,maxSpeed:1400},wa),ka=t.extend({deceleration:20,maxSpeed:1400},wa),Ta=t.extend({deceleration:1e3,maxSpeed:360},wa),Ma=t.extend({deceleration:1e3,maxSpeed:90},wa),Aa=function(t){this._map=t,this.clear()};function Sa(t,e){(!t.duration||t.duration0&&n-e[0].time>r;)e.shift()},Aa.prototype._onMoveEnd=function(e){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var n={zoom:0,bearing:0,pitch:0,pan:new t.Point(0,0),pinchAround:void 0,around:void 0},r=0,i=this._inertiaBuffer;r=this._clickTolerance||this._map.fire(new Ca(t.type,this._map,t))},Oa.prototype.dblclick=function(t){return this._firePreventable(new Ca(t.type,this._map,t))},Oa.prototype.mouseover=function(t){this._map.fire(new Ca(t.type,this._map,t))},Oa.prototype.mouseout=function(t){this._map.fire(new Ca(t.type,this._map,t))},Oa.prototype.touchstart=function(t){return this._firePreventable(new Pa(t.type,this._map,t))},Oa.prototype.touchmove=function(t){this._map.fire(new Pa(t.type,this._map,t))},Oa.prototype.touchend=function(t){this._map.fire(new Pa(t.type,this._map,t))},Oa.prototype.touchcancel=function(t){this._map.fire(new Pa(t.type,this._map,t))},Oa.prototype._firePreventable=function(t){if(this._map.fire(t),t.defaultPrevented)return{}},Oa.prototype.isEnabled=function(){return!0},Oa.prototype.isActive=function(){return!1},Oa.prototype.enable=function(){},Oa.prototype.disable=function(){};var Ia=function(t){this._map=t};Ia.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},Ia.prototype.mousemove=function(t){this._map.fire(new Ca(t.type,this._map,t))},Ia.prototype.mousedown=function(){this._delayContextMenu=!0},Ia.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new Ca("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},Ia.prototype.contextmenu=function(t){this._delayContextMenu?this._contextMenuEvent=t:this._map.fire(new Ca(t.type,this._map,t)),this._map.listens("contextmenu")&&t.preventDefault()},Ia.prototype.isEnabled=function(){return!0},Ia.prototype.isActive=function(){return!1},Ia.prototype.enable=function(){},Ia.prototype.disable=function(){};var Da=function(t,e){this._map=t,this._el=t.getCanvasContainer(),this._container=t.getContainer(),this._clickTolerance=e.clickTolerance||1};function Ra(t,e){for(var n={},r=0;rthis.numTouches)&&(this.aborted=!0),this.aborted||(void 0===this.startTime&&(this.startTime=t.timeStamp),n.length===this.numTouches&&(this.centroid=za(e),this.touches=Ra(n,e)))},Ba.prototype.touchmove=function(t,e,n){if(!this.aborted&&this.centroid){var r=Ra(n,e);for(var i in this.touches){var a=this.touches[i],o=r[i];(!o||o.dist(a)>Fa)&&(this.aborted=!0)}}},Ba.prototype.touchend=function(t,e,n){if((!this.centroid||t.timeStamp-this.startTime>ja)&&(this.aborted=!0),0===n.length){var r=!this.aborted&&this.centroid;if(this.reset(),r)return r}};var Ua=function(t){this.singleTap=new Ba(t),this.numTaps=t.numTaps,this.reset()};Ua.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Ua.prototype.touchstart=function(t,e,n){this.singleTap.touchstart(t,e,n)},Ua.prototype.touchmove=function(t,e,n){this.singleTap.touchmove(t,e,n)},Ua.prototype.touchend=function(t,e,n){var r=this.singleTap.touchend(t,e,n);if(r){var i=t.timeStamp-this.lastTime0&&(this._active=!0);var i=Ra(r,n),a=new t.Point(0,0),o=new t.Point(0,0),s=0;for(var l in i){var c=i[l],u=this._touches[l];u&&(a._add(c),o._add(c.sub(u)),s++,i[l]=c)}if(this._touches=i,!(sMath.abs(t.x)}var ao=100,oo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.reset=function(){t.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},e.prototype._start=function(t){this._lastPoints=t,io(t[0].sub(t[1]))&&(this._valid=!1)},e.prototype._move=function(t,e,n){var r=t[0].sub(this._lastPoints[0]),i=t[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(r,i,n.timeStamp),this._valid)return this._lastPoints=t,this._active=!0,{pitchDelta:(r.y+i.y)/2*-.5}},e.prototype.gestureBeginsVertically=function(t,e,n){if(void 0!==this._valid)return this._valid;var r=2,i=t.mag()>=r,a=e.mag()>=r;if(i||a){if(!i||!a)return void 0===this._firstMove&&(this._firstMove=n),n-this._firstMove0===e.y>0;return io(t)&&io(e)&&o}},e}(Ka),so={panStep:100,bearingStep:15,pitchStep:10},lo=function(){var t=so;this._panStep=t.panStep,this._bearingStep=t.bearingStep,this._pitchStep=t.pitchStep};function co(t){return t*(2-t)}lo.prototype.reset=function(){this._active=!1},lo.prototype.keydown=function(t){var e=this;if(!(t.altKey||t.ctrlKey||t.metaKey)){var n=0,r=0,i=0,a=0,o=0;switch(t.keyCode){case 61:case 107:case 171:case 187:n=1;break;case 189:case 109:case 173:n=-1;break;case 37:t.shiftKey?r=-1:(t.preventDefault(),a=-1);break;case 39:t.shiftKey?r=1:(t.preventDefault(),a=1);break;case 38:t.shiftKey?i=1:(t.preventDefault(),o=-1);break;case 40:t.shiftKey?i=-1:(t.preventDefault(),o=1);break;default:return}return{cameraAnimation:function(s){var l=s.getZoom();s.easeTo({duration:300,easeId:"keyboardHandler",easing:co,zoom:n?Math.round(l)+n*(t.shiftKey?2:1):l,bearing:s.getBearing()+r*e._bearingStep,pitch:s.getPitch()+i*e._pitchStep,offset:[-a*e._panStep,-o*e._panStep],center:s.getCenter()},{originalEvent:t})}}}},lo.prototype.enable=function(){this._enabled=!0},lo.prototype.disable=function(){this._enabled=!1,this.reset()},lo.prototype.isEnabled=function(){return this._enabled},lo.prototype.isActive=function(){return this._active};var uo=4.000244140625,fo=.01,ho=1/450,po=2,go=function(e,n){this._map=e,this._el=e.getCanvasContainer(),this._handler=n,this._delta=0,this._defaultZoomRate=fo,this._wheelZoomRate=ho,t.bindAll(["_onWheel","_onTimeout","_onScrollFrame","_onScrollFinished"],this)};go.prototype.setZoomRate=function(t){this._defaultZoomRate=t},go.prototype.setWheelZoomRate=function(t){this._wheelZoomRate=t},go.prototype.isEnabled=function(){return!!this._enabled},go.prototype.isActive=function(){return!!this._active||void 0!==this._finishTimeout},go.prototype.isZooming=function(){return!!this._zooming},go.prototype.enable=function(t){this.isEnabled()||(this._enabled=!0,this._aroundCenter=t&&"center"===t.around)},go.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},go.prototype.wheel=function(e){if(this.isEnabled()){var n=e.deltaMode===t.window.WheelEvent.DOM_DELTA_LINE?40*e.deltaY:e.deltaY,r=t.browser.now(),i=r-(this._lastWheelEventTime||0);this._lastWheelEventTime=r,0!==n&&n%uo===0?this._type="wheel":0!==n&&Math.abs(n)<4?this._type="trackpad":i>400?(this._type=null,this._lastValue=n,this._timeout=setTimeout(this._onTimeout,40,e)):this._type||(this._type=Math.abs(i*n)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,n+=this._lastValue)),e.shiftKey&&n&&(n/=4),this._type&&(this._lastWheelEvent=e,this._delta-=n,this._active||this._start(e)),e.preventDefault()}},go.prototype._onTimeout=function(t){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(t)},go.prototype._start=function(e){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 r=n.mousePos(this._el,e);this._around=t.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(r)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},go.prototype.renderFrame=function(){return this._onScrollFrame()},go.prototype._onScrollFrame=function(){var e=this;if(this._frameId&&(this._frameId=null,this.isActive())){var n=this._map.transform;if(0!==this._delta){var r="wheel"===this._type&&Math.abs(this._delta)>uo?this._wheelZoomRate:this._defaultZoomRate,i=po/(1+Math.exp(-Math.abs(this._delta*r)));this._delta<0&&0!==i&&(i=1/i);var a="number"===typeof this._targetZoom?n.zoomScale(this._targetZoom):n.scale;this._targetZoom=Math.min(n.maxZoom,Math.max(n.minZoom,n.scaleZoom(a*i))),"wheel"===this._type&&(this._startZoom=n.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var o,s="number"===typeof this._targetZoom?this._targetZoom:n.zoom,l=this._startZoom,c=this._easing,u=!1;if("wheel"===this._type&&l&&c){var f=Math.min((t.browser.now()-this._lastWheelEventTime)/200,1),h=c(f);o=t.number(l,s,h),f<1?this._frameId||(this._frameId=!0):u=!0}else o=s,u=!0;return this._active=!0,u&&(this._active=!1,this._finishTimeout=setTimeout((function(){e._zooming=!1,e._handler._triggerRenderFrame(),delete e._targetZoom,delete e._finishTimeout}),200)),{noInertia:!0,needsRenderFrame:!u,zoomDelta:o-n.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},go.prototype._smoothOutEasing=function(e){var n=t.ease;if(this._prevEase){var r=this._prevEase,i=(t.browser.now()-r.start)/r.duration,a=r.easing(i+.01)-r.easing(i),o=.27/Math.sqrt(a*a+1e-4)*.01,s=Math.sqrt(.0729-o*o);n=t.bezier(o,s,.25,1)}return this._prevEase={start:t.browser.now(),duration:e,easing:n},n},go.prototype.reset=function(){this._active=!1};var vo=function(t,e){this._clickZoom=t,this._tapZoom=e};vo.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},vo.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},vo.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},vo.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var mo=function(){this.reset()};mo.prototype.reset=function(){this._active=!1},mo.prototype.dblclick=function(t,e){return t.preventDefault(),{cameraAnimation:function(n){n.easeTo({duration:300,zoom:n.getZoom()+(t.shiftKey?-1:1),around:n.unproject(e)},{originalEvent:t})}}},mo.prototype.enable=function(){this._enabled=!0},mo.prototype.disable=function(){this._enabled=!1,this.reset()},mo.prototype.isEnabled=function(){return this._enabled},mo.prototype.isActive=function(){return this._active};var yo=function(){this._tap=new Ua({numTouches:1,numTaps:1}),this.reset()};yo.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},yo.prototype.touchstart=function(t,e,n){this._swipePoint||(this._tapTime&&t.timeStamp-this._tapTime>Na&&this.reset(),this._tapTime?n.length>0&&(this._swipePoint=e[0],this._swipeTouch=n[0].identifier):this._tap.touchstart(t,e,n))},yo.prototype.touchmove=function(t,e,n){if(this._tapTime){if(this._swipePoint){if(n[0].identifier!==this._swipeTouch)return;var r=e[0],i=r.y-this._swipePoint.y;return this._swipePoint=r,t.preventDefault(),this._active=!0,{zoomDelta:i/128}}}else this._tap.touchmove(t,e,n)},yo.prototype.touchend=function(t,e,n){this._tapTime?this._swipePoint&&0===n.length&&this.reset():this._tap.touchend(t,e,n)&&(this._tapTime=t.timeStamp)},yo.prototype.touchcancel=function(){this.reset()},yo.prototype.enable=function(){this._enabled=!0},yo.prototype.disable=function(){this._enabled=!1,this.reset()},yo.prototype.isEnabled=function(){return this._enabled},yo.prototype.isActive=function(){return this._active};var bo=function(t,e,n){this._el=t,this._mousePan=e,this._touchPan=n};bo.prototype.enable=function(t){this._inertiaOptions=t||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},bo.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},bo.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},bo.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var xo=function(t,e,n){this._pitchWithRotate=t.pitchWithRotate,this._mouseRotate=e,this._mousePitch=n};xo.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},xo.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},xo.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},xo.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var wo=function(t,e,n,r){this._el=t,this._touchZoom=e,this._touchRotate=n,this._tapDragZoom=r,this._rotationDisabled=!1,this._enabled=!0};wo.prototype.enable=function(t){this._touchZoom.enable(t),this._rotationDisabled||this._touchRotate.enable(t),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},wo.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},wo.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},wo.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},wo.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},wo.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var _o=function(t){return t.zoom||t.drag||t.pitch||t.rotate},ko=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(t.Event);function To(t){return t.panDelta&&t.panDelta.mag()||t.zoomDelta||t.bearingDelta||t.pitchDelta}var Mo=function(e,r){this._map=e,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Aa(e),this._bearingSnap=r.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(r),t.bindAll(["handleEvent","handleWindowEvent"],this);var i=this._el;this._listeners=[[i,"touchstart",{passive:!1}],[i,"touchmove",{passive:!1}],[i,"touchend",void 0],[i,"touchcancel",void 0],[i,"mousedown",void 0],[i,"mousemove",void 0],[i,"mouseup",void 0],[t.window.document,"mousemove",{capture:!0}],[t.window.document,"mouseup",void 0],[i,"mouseover",void 0],[i,"mouseout",void 0],[i,"dblclick",void 0],[i,"click",void 0],[i,"keydown",{capture:!1}],[i,"keyup",void 0],[i,"wheel",{passive:!1}],[i,"contextmenu",void 0],[t.window,"blur",void 0]];for(var a=0,o=this._listeners;aa?Math.min(2,w):Math.max(.5,w),_=Math.pow(v,1-e),k=i.unproject(b.add(x.mult(e*_)).mult(g));i.setLocationAtPoint(i.renderWorldCopies?k.wrap():k,p)}r._fireMoveEvents(n)}),(function(t){r._afterEase(n,t)}),e),this},n.prototype._prepareEase=function(e,n,r){void 0===r&&(r={}),this._moving=!0,n||r.moving||this.fire(new t.Event("movestart",e)),this._zooming&&!r.zooming&&this.fire(new t.Event("zoomstart",e)),this._rotating&&!r.rotating&&this.fire(new t.Event("rotatestart",e)),this._pitching&&!r.pitching&&this.fire(new t.Event("pitchstart",e))},n.prototype._fireMoveEvents=function(e){this.fire(new t.Event("move",e)),this._zooming&&this.fire(new t.Event("zoom",e)),this._rotating&&this.fire(new t.Event("rotate",e)),this._pitching&&this.fire(new t.Event("pitch",e))},n.prototype._afterEase=function(e,n){if(!this._easeId||!n||this._easeId!==n){delete this._easeId;var r=this._zooming,i=this._rotating,a=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,r&&this.fire(new t.Event("zoomend",e)),i&&this.fire(new t.Event("rotateend",e)),a&&this.fire(new t.Event("pitchend",e)),this.fire(new t.Event("moveend",e))}},n.prototype.flyTo=function(e,n){var r=this;if(!e.essential&&t.browser.prefersReducedMotion){var i=t.pick(e,["center","zoom","bearing","pitch","around"]);return this.jumpTo(i,n)}this.stop(),e=t.extend({offset:[0,0],speed:1.2,curve:1.42,easing:t.ease},e);var a=this.transform,o=this.getZoom(),s=this.getBearing(),l=this.getPitch(),c=this.getPadding(),u="zoom"in e?t.clamp(+e.zoom,a.minZoom,a.maxZoom):o,f="bearing"in e?this._normalizeBearing(e.bearing,s):s,h="pitch"in e?+e.pitch:l,d="padding"in e?e.padding:a.padding,p=a.zoomScale(u-o),g=t.Point.convert(e.offset),v=a.centerPoint.add(g),m=a.pointLocation(v),y=t.LngLat.convert(e.center||m);this._normalizeCenter(y);var b=a.project(m),x=a.project(y).sub(b),w=e.curve,_=Math.max(a.width,a.height),k=_/p,T=x.mag();if("minZoom"in e){var M=t.clamp(Math.min(e.minZoom,o,u),a.minZoom,a.maxZoom),A=_/a.zoomScale(M-o);w=Math.sqrt(A/T*2)}var S=w*w;function E(t){var e=(k*k-_*_+(t?-1:1)*S*S*T*T)/(2*(t?k:_)*S*T);return Math.log(Math.sqrt(e*e+1)-e)}function C(t){return(Math.exp(t)-Math.exp(-t))/2}function P(t){return(Math.exp(t)+Math.exp(-t))/2}function L(t){return C(t)/P(t)}var O=E(0),I=function(t){return P(O)/P(O+w*t)},D=function(t){return _*((P(O)*L(O+w*t)-C(O))/S)/T},R=(E(1)-O)/w;if(Math.abs(T)<1e-6||!isFinite(R)){if(Math.abs(_-k)<1e-6)return this.easeTo(e,n);var z=k<_?-1:1;R=Math.abs(Math.log(k/_))/w,D=function(){return 0},I=function(t){return Math.exp(z*w*t)}}if("duration"in e)e.duration=+e.duration;else{var N="screenSpeed"in e?+e.screenSpeed/w:+e.speed;e.duration=1e3*R/N}return e.maxDuration&&e.duration>e.maxDuration&&(e.duration=0),this._zooming=!0,this._rotating=s!==f,this._pitching=h!==l,this._padding=!a.isPaddingEqual(d),this._prepareEase(n,!1),this._ease((function(e){var i=e*R,p=1/I(i);a.zoom=1===e?u:o+a.scaleZoom(p),r._rotating&&(a.bearing=t.number(s,f,e)),r._pitching&&(a.pitch=t.number(l,h,e)),r._padding&&(a.interpolatePadding(c,d,e),v=a.centerPoint.add(g));var m=1===e?y:a.unproject(b.add(x.mult(D(i))).mult(p));a.setLocationAtPoint(a.renderWorldCopies?m.wrap():m,v),r._fireMoveEvents(n)}),(function(){return r._afterEase(n)}),e),this},n.prototype.isEasing=function(){return!!this._easeFrameId},n.prototype.stop=function(){return this._stop()},n.prototype._stop=function(t,e){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var n=this._onEaseEnd;delete this._onEaseEnd,n.call(this,e)}if(!t){var r=this.handlers;r&&r.stop()}return this},n.prototype._ease=function(e,n,r){!1===r.animate||0===r.duration?(e(1),n()):(this._easeStart=t.browser.now(),this._easeOptions=r,this._onEaseFrame=e,this._onEaseEnd=n,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},n.prototype._renderFrameCallback=function(){var e=Math.min((t.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(e)),e<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},n.prototype._normalizeBearing=function(e,n){e=t.wrap(e,-180,180);var r=Math.abs(e-n);return Math.abs(e-360-n)180?-360:n<-180?360:0}},n}(t.Evented),So=function(e){void 0===e&&(e={}),this.options=e,t.bindAll(["_updateEditLink","_updateData","_updateCompact"],this)};So.prototype.getDefaultPosition=function(){return"bottom-right"},So.prototype.onAdd=function(t){var e=this.options&&this.options.compact;return this._map=t,this._container=n.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._innerContainer=n.create("div","mapboxgl-ctrl-attrib-inner",this._container),e&&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),void 0===e&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},So.prototype.onRemove=function(){n.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},So.prototype._updateEditLink=function(){var e=this._editLink;e||(e=this._editLink=this._container.querySelector(".mapbox-improve-map"));var n=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||t.config.ACCESS_TOKEN}];if(e){var r=n.reduce((function(t,e,r){return e.value&&(t+=e.key+"="+e.value+(r=0)return!1;return!0}))).join(" | ");o!==this._attribHTML&&(this._attribHTML=o,t.length?(this._innerContainer.innerHTML=o,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},So.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact")};var Eo=function(){t.bindAll(["_updateLogo"],this),t.bindAll(["_updateCompact"],this)};Eo.prototype.onAdd=function(t){this._map=t,this._container=n.create("div","mapboxgl-ctrl");var e=n.create("a","mapboxgl-ctrl-logo");return e.target="_blank",e.rel="noopener nofollow",e.href="https://www.mapbox.com/",e.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),e.setAttribute("rel","noopener nofollow"),this._container.appendChild(e),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},Eo.prototype.onRemove=function(){n.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},Eo.prototype.getDefaultPosition=function(){return"bottom-left"},Eo.prototype._updateLogo=function(t){t&&"metadata"!==t.sourceDataType||(this._container.style.display=this._logoRequired()?"block":"none")},Eo.prototype._logoRequired=function(){if(this._map.style){var t=this._map.style.sourceCaches;for(var e in t)if(t[e].getSource().mapbox_logo)return!0;return!1}},Eo.prototype._updateCompact=function(){var t=this._container.children;if(t.length){var e=t[0];this._map.getCanvasContainer().offsetWidth<250?e.classList.add("mapboxgl-compact"):e.classList.remove("mapboxgl-compact")}};var Co=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};Co.prototype.add=function(t){var e=++this._id;return this._queue.push({callback:t,id:e,cancelled:!1}),e},Co.prototype.remove=function(t){for(var e=this._currentlyRunning,n=0,r=e?this._queue.concat(e):this._queue;ne.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(null!=e.minPitch&&null!=e.maxPitch&&e.minPitch>e.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(null!=e.minPitch&&e.minPitchNo)throw new Error("maxPitch must be less than or equal to "+No);var i=new ma(e.minZoom,e.maxZoom,e.minPitch,e.maxPitch,e.renderWorldCopies);if(r.call(this,i,e),this._interactive=e.interactive,this._maxTileCacheSize=e.maxTileCacheSize,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._antialias=e.antialias,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles,this._fadeDuration=e.fadeDuration,this._crossSourceCollisions=e.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=e.collectResourceTiming,this._renderTaskQueue=new Co,this._controls=[],this._mapId=t.uniqueId(),this._locale=t.extend({},Po,e.locale),this._requestManager=new t.RequestManager(e.transformRequest,e.accessToken),"string"===typeof e.container){if(this._container=t.window.document.getElementById(e.container),!this._container)throw new Error("Container '"+e.container+"' not found.")}else{if(!(e.container instanceof Oo))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=e.container}if(e.maxBounds&&this.setMaxBounds(e.maxBounds),t.bindAll(["_onWindowOnline","_onWindowResize","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),void 0===this.painter)throw new Error("Failed to initialize WebGL.");this.on("move",(function(){return n._update(!1)})),this.on("moveend",(function(){return n._update(!1)})),this.on("zoom",(function(){return n._update(!0)})),"undefined"!==typeof t.window&&(t.window.addEventListener("online",this._onWindowOnline,!1),t.window.addEventListener("resize",this._onWindowResize,!1)),this.handlers=new Mo(this,e);var a="string"===typeof e.hash&&e.hash||void 0;this._hash=e.hash&&new xa(a).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:e.center,zoom:e.zoom,bearing:e.bearing,pitch:e.pitch}),e.bounds&&(this.resize(),this.fitBounds(e.bounds,t.extend({},e.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=e.localIdeographFontFamily,e.style&&this.setStyle(e.style,{localIdeographFontFamily:e.localIdeographFontFamily}),e.attributionControl&&this.addControl(new So({customAttribution:e.customAttribution})),this.addControl(new Eo,e.logoPosition),this.on("style.load",(function(){n.transform.unmodified&&n.jumpTo(n.style.stylesheet)})),this.on("data",(function(e){n._update("style"===e.dataType),n.fire(new t.Event(e.dataType+"data",e))})),this.on("dataloading",(function(e){n.fire(new t.Event(e.dataType+"dataloading",e))}))}r&&(i.__proto__=r),i.prototype=Object.create(r&&r.prototype),i.prototype.constructor=i;var a={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return i.prototype._getMapId=function(){return this._mapId},i.prototype.addControl=function(e,n){if(void 0===n&&e.getDefaultPosition&&(n=e.getDefaultPosition()),void 0===n&&(n="top-right"),!e||!e.onAdd)return this.fire(new t.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var r=e.onAdd(this);this._controls.push(e);var i=this._controlPositions[n];return-1!==n.indexOf("bottom")?i.insertBefore(r,i.firstChild):i.appendChild(r),this},i.prototype.removeControl=function(e){if(!e||!e.onRemove)return this.fire(new t.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var n=this._controls.indexOf(e);return n>-1&&this._controls.splice(n,1),e.onRemove(this),this},i.prototype.resize=function(e){var n=this._containerDimensions(),r=n[0],i=n[1];this._resizeCanvas(r,i),this.transform.resize(r,i),this.painter.resize(r,i);var a=!this._moving;return a&&(this.stop(),this.fire(new t.Event("movestart",e)).fire(new t.Event("move",e))),this.fire(new t.Event("resize",e)),a&&this.fire(new t.Event("moveend",e)),this},i.prototype.getBounds=function(){return this.transform.getBounds()},i.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},i.prototype.setMaxBounds=function(e){return this.transform.setMaxBounds(t.LngLatBounds.convert(e)),this._update()},i.prototype.setMinZoom=function(t){if((t=null===t||void 0===t?Do:t)>=Do&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=t,this._update(),this.getZoom()>t&&this.setZoom(t),this;throw new Error("maxZoom must be greater than the current minZoom")},i.prototype.getMaxZoom=function(){return this.transform.maxZoom},i.prototype.setMinPitch=function(t){if((t=null===t||void 0===t?zo:t)=zo&&t<=this.transform.maxPitch)return this.transform.minPitch=t,this._update(),this.getPitch()No)throw new Error("maxPitch must be less than or equal to "+No);if(t>=this.transform.minPitch)return this.transform.maxPitch=t,this._update(),this.getPitch()>t&&this.setPitch(t),this;throw new Error("maxPitch must be greater than the current minPitch")},i.prototype.getMaxPitch=function(){return this.transform.maxPitch},i.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},i.prototype.setRenderWorldCopies=function(t){return this.transform.renderWorldCopies=t,this._update()},i.prototype.project=function(e){return this.transform.locationPoint(t.LngLat.convert(e))},i.prototype.unproject=function(e){return this.transform.pointLocation(t.Point.convert(e))},i.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},i.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},i.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},i.prototype._createDelegatedListener=function(t,e,n){var r,i=this;if("mouseenter"===t||"mouseover"===t){var a=!1,o=function(r){var o=i.getLayer(e)?i.queryRenderedFeatures(r.point,{layers:[e]}):[];o.length?a||(a=!0,n.call(i,new Ca(t,i,r.originalEvent,{features:o}))):a=!1};return{layer:e,listener:n,delegates:{mousemove:o,mouseout:function(){a=!1}}}}if("mouseleave"===t||"mouseout"===t){var s=!1,l=function(r){(i.getLayer(e)?i.queryRenderedFeatures(r.point,{layers:[e]}):[]).length?s=!0:s&&(s=!1,n.call(i,new Ca(t,i,r.originalEvent)))},c=function(e){s&&(s=!1,n.call(i,new Ca(t,i,e.originalEvent)))};return{layer:e,listener:n,delegates:{mousemove:l,mouseout:c}}}var u=function(t){var r=i.getLayer(e)?i.queryRenderedFeatures(t.point,{layers:[e]}):[];r.length&&(t.features=r,n.call(i,t),delete t.features)};return{layer:e,listener:n,delegates:(r={},r[t]=u,r)}},i.prototype.on=function(t,e,n){if(void 0===n)return r.prototype.on.call(this,t,e);var i=this._createDelegatedListener(t,e,n);for(var a in this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[t]=this._delegatedListeners[t]||[],this._delegatedListeners[t].push(i),i.delegates)this.on(a,i.delegates[a]);return this},i.prototype.once=function(t,e,n){if(void 0===n)return r.prototype.once.call(this,t,e);var i=this._createDelegatedListener(t,e,n);for(var a in i.delegates)this.once(a,i.delegates[a]);return this},i.prototype.off=function(t,e,n){var i=this;if(void 0===n)return r.prototype.off.call(this,t,e);var a=function(r){for(var a=r[t],o=0;o180;){var s=r.locationPoint(e);if(s.x>=0&&s.y>=0&&s.x<=r.width&&s.y<=r.height)break;e.lng>r.center.lng?e.lng-=360:e.lng+=360}return e}Vo.prototype.down=function(t,e){this.mouseRotate.mousedown(t,e),this.mousePitch&&this.mousePitch.mousedown(t,e),n.disableDrag()},Vo.prototype.move=function(t,e){var n=this.map,r=this.mouseRotate.mousemoveWindow(t,e);if(r&&r.bearingDelta&&n.setBearing(n.getBearing()+r.bearingDelta),this.mousePitch){var i=this.mousePitch.mousemoveWindow(t,e);i&&i.pitchDelta&&n.setPitch(n.getPitch()+i.pitchDelta)}},Vo.prototype.off=function(){var t=this.element;n.removeEventListener(t,"mousedown",this.mousedown),n.removeEventListener(t,"touchstart",this.touchstart,{passive:!1}),n.removeEventListener(t,"touchmove",this.touchmove),n.removeEventListener(t,"touchend",this.touchend),n.removeEventListener(t,"touchcancel",this.reset),this.offTemp()},Vo.prototype.offTemp=function(){n.enableDrag(),n.removeEventListener(t.window,"mousemove",this.mousemove),n.removeEventListener(t.window,"mouseup",this.mouseup)},Vo.prototype.mousedown=function(e){this.down(t.extend({},e,{ctrlKey:!0,preventDefault:function(){return e.preventDefault()}}),n.mousePos(this.element,e)),n.addEventListener(t.window,"mousemove",this.mousemove),n.addEventListener(t.window,"mouseup",this.mouseup)},Vo.prototype.mousemove=function(t){this.move(t,n.mousePos(this.element,t))},Vo.prototype.mouseup=function(t){this.mouseRotate.mouseupWindow(t),this.mousePitch&&this.mousePitch.mouseupWindow(t),this.offTemp()},Vo.prototype.touchstart=function(t){1!==t.targetTouches.length?this.reset():(this._startPos=this._lastPos=n.touchPos(this.element,t.targetTouches)[0],this.down({type:"mousedown",button:0,ctrlKey:!0,preventDefault:function(){return t.preventDefault()}},this._startPos))},Vo.prototype.touchmove=function(t){1!==t.targetTouches.length?this.reset():(this._lastPos=n.touchPos(this.element,t.targetTouches)[0],this.move({preventDefault:function(){return t.preventDefault()}},this._lastPos))},Vo.prototype.touchend=function(t){0===t.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)e.getEast()||n.latitudee.getNorth())},r.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")}},r.prototype._onSuccess=function(e){if(this._map){if(this._isOutOfMapMaxBounds(e))return this._setErrorState(),this.fire(new t.Event("outofmaxbounds",e)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=e,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&&"OFF"!==this._watchState&&this._updateMarker(e),this.options.trackUserLocation&&"ACTIVE_LOCK"!==this._watchState||this._updateCamera(e),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new t.Event("geolocate",e)),this._finish()}},r.prototype._updateCamera=function(e){var n=new t.LngLat(e.coords.longitude,e.coords.latitude),r=e.coords.accuracy,i=this._map.getBearing(),a=t.extend({bearing:i},this.options.fitBoundsOptions);this._map.fitBounds(n.toBounds(r),a,{geolocateSource:!0})},r.prototype._updateMarker=function(e){if(e){var n=new t.LngLat(e.coords.longitude,e.coords.latitude);this._accuracyCircleMarker.setLngLat(n).addTo(this._map),this._userLocationDotMarker.setLngLat(n).addTo(this._map),this._accuracy=e.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},r.prototype._updateCircleRadius=function(){var t=this._map._container.clientHeight/2,e=this._map.unproject([0,t]),n=this._map.unproject([1,t]),r=e.distanceTo(n),i=Math.ceil(2*this._accuracy/r);this._circleElement.style.width=i+"px",this._circleElement.style.height=i+"px"},r.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},r.prototype._onError=function(e){if(this._map){if(this.options.trackUserLocation)if(1===e.code){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 n=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=n,this._geolocateButton.setAttribute("aria-label",n),void 0!==this._geolocationWatchID&&this._clearWatch()}else{if(3===e.code&&Jo)return;this._setErrorState()}"OFF"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new t.Event("error",e)),this._finish()}},r.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},r.prototype._setupUI=function(e){var r=this;if(this._container.addEventListener("contextmenu",(function(t){return t.preventDefault()})),this._geolocateButton=n.create("button","mapboxgl-ctrl-geolocate",this._container),n.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",!1===e){t.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var i=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=i,this._geolocateButton.setAttribute("aria-label",i)}else{var a=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=a,this._geolocateButton.setAttribute("aria-label",a)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=n.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new $o(this._dotElement),this._circleElement=n.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new $o({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(e){var n=e.originalEvent&&"resize"===e.originalEvent.type;e.geolocateSource||"ACTIVE_LOCK"!==r._watchState||n||(r._watchState="BACKGROUND",r._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),r._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),r.fire(new t.Event("trackuserlocationend")))}))},r.prototype.trigger=function(){if(!this._setup)return t.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 t.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":Zo--,Jo=!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 t.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 t.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("OFF"===this._watchState&&void 0!==this._geolocationWatchID)this._clearWatch();else if(void 0===this._geolocationWatchID){var e;this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),++Zo>1?(e={maximumAge:6e5,timeout:0},Jo=!0):(e=this.options.positionOptions,Jo=!1),this._geolocationWatchID=t.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,e)}}else t.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},r.prototype._clearWatch=function(){t.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)},r}(t.Evented),ts={maxWidth:100,unit:"metric"},es=function(e){this.options=t.extend({},ts,e),t.bindAll(["_onMove","setUnit"],this)};function ns(t,e,n){var r=n&&n.maxWidth||100,i=t._container.clientHeight/2,a=t.unproject([0,i]),o=t.unproject([r,i]),s=a.distanceTo(o);if(n&&"imperial"===n.unit){var l=3.2808*s;l>5280?rs(e,r,l/5280,t._getUIString("ScaleControl.Miles")):rs(e,r,l,t._getUIString("ScaleControl.Feet"))}else n&&"nautical"===n.unit?rs(e,r,s/1852,t._getUIString("ScaleControl.NauticalMiles")):s>=1e3?rs(e,r,s/1e3,t._getUIString("ScaleControl.Kilometers")):rs(e,r,s,t._getUIString("ScaleControl.Meters"))}function rs(t,e,n,r){var i=as(n),a=i/n;t.style.width=e*a+"px",t.innerHTML=i+" "+r}function is(t){var e=Math.pow(10,Math.ceil(-Math.log(t)/Math.LN10));return Math.round(t*e)/e}function as(t){var e=Math.pow(10,(""+Math.floor(t)).length-1),n=t/e;return e*(n=n>=10?10:n>=5?5:n>=3?3:n>=2?2:n>=1?1:is(n))}es.prototype.getDefaultPosition=function(){return"bottom-left"},es.prototype._onMove=function(){ns(this._map,this._container,this.options)},es.prototype.onAdd=function(t){return this._map=t,this._container=n.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",t.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},es.prototype.onRemove=function(){n.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},es.prototype.setUnit=function(t){this.options.unit=t,ns(this._map,this._container,this.options)};var os=function(e){this._fullscreen=!1,e&&e.container&&(e.container instanceof t.window.HTMLElement?this._container=e.container:t.warnOnce("Full screen control 'container' must be a DOM element.")),t.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in t.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in t.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in t.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in t.window.document&&(this._fullscreenchange="MSFullscreenChange")};os.prototype.onAdd=function(e){return this._map=e,this._container||(this._container=this._map.getContainer()),this._controlContainer=n.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",t.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},os.prototype.onRemove=function(){n.remove(this._controlContainer),this._map=null,t.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},os.prototype._checkFullscreenSupport=function(){return!!(t.window.document.fullscreenEnabled||t.window.document.mozFullScreenEnabled||t.window.document.msFullscreenEnabled||t.window.document.webkitFullscreenEnabled)},os.prototype._setupUI=function(){var e=this._fullscreenButton=n.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);n.create("span","mapboxgl-ctrl-icon",e).setAttribute("aria-hidden",!0),e.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),t.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},os.prototype._updateTitle=function(){var t=this._getTitle();this._fullscreenButton.setAttribute("aria-label",t),this._fullscreenButton.title=t},os.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},os.prototype._isFullscreen=function(){return this._fullscreen},os.prototype._changeIcon=function(){(t.window.document.fullscreenElement||t.window.document.mozFullScreenElement||t.window.document.webkitFullscreenElement||t.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())},os.prototype._onClickFullscreen=function(){this._isFullscreen()?t.window.document.exitFullscreen?t.window.document.exitFullscreen():t.window.document.mozCancelFullScreen?t.window.document.mozCancelFullScreen():t.window.document.msExitFullscreen?t.window.document.msExitFullscreen():t.window.document.webkitCancelFullScreen&&t.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 ss={closeButton:!0,closeOnClick:!0,className:"",maxWidth:"240px"},ls=function(e){function r(n){e.call(this),this.options=t.extend(Object.create(ss),n),t.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.addTo=function(e){return this._map&&this.remove(),this._map=e,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 t.Event("open")),this},r.prototype.isOpen=function(){return!!this._map},r.prototype.remove=function(){return this._content&&n.remove(this._content),this._container&&(n.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 t.Event("close")),this},r.prototype.getLngLat=function(){return this._lngLat},r.prototype.setLngLat=function(e){return this._lngLat=t.LngLat.convert(e),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},r.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},r.prototype.getElement=function(){return this._container},r.prototype.setText=function(e){return this.setDOMContent(t.window.document.createTextNode(e))},r.prototype.setHTML=function(e){var n,r=t.window.document.createDocumentFragment(),i=t.window.document.createElement("body");for(i.innerHTML=e;n=i.firstChild;)r.appendChild(n);return this.setDOMContent(r)},r.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},r.prototype.setMaxWidth=function(t){return this.options.maxWidth=t,this._update(),this},r.prototype.setDOMContent=function(t){return this._createContent(),this._content.appendChild(t),this._update(),this},r.prototype.addClassName=function(t){this._container&&this._container.classList.add(t)},r.prototype.removeClassName=function(t){this._container&&this._container.classList.remove(t)},r.prototype.toggleClassName=function(t){if(this._container)return this._container.classList.toggle(t)},r.prototype._createContent=function(){this._content&&n.remove(this._content),this._content=n.create("div","mapboxgl-popup-content",this._container),this.options.closeButton&&(this._closeButton=n.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))},r.prototype._onMouseUp=function(t){this._update(t.point)},r.prototype._onMouseMove=function(t){this._update(t.point)},r.prototype._onDrag=function(t){this._update(t.point)},r.prototype._update=function(t){var e=this,r=this._lngLat||this._trackPointer;if(this._map&&r&&this._content&&(this._container||(this._container=n.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=n.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach((function(t){return e._container.classList.add(t)})),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=qo(this._lngLat,this._pos,this._map.transform)),!this._trackPointer||t)){var i=this._pos=this._trackPointer&&t?t:this._map.project(this._lngLat),a=this.options.anchor,o=cs(this.options.offset);if(!a){var s,l=this._container.offsetWidth,c=this._container.offsetHeight;s=i.y+o.bottom.ythis._map.transform.height-c?["bottom"]:[],i.xthis._map.transform.width-l/2&&s.push("right"),a=0===s.length?"bottom":s.join("-")}var u=i.add(o[a]).round();n.setTransform(this._container,Go[a]+" translate("+u.x+"px,"+u.y+"px)"),Wo(this._container,a,"popup")}},r.prototype._onClose=function(){this.remove()},r}(t.Evented);function cs(e){if(e){if("number"===typeof e){var n=Math.round(Math.sqrt(.5*Math.pow(e,2)));return{center:new t.Point(0,0),top:new t.Point(0,e),"top-left":new t.Point(n,n),"top-right":new t.Point(-n,n),bottom:new t.Point(0,-e),"bottom-left":new t.Point(n,-n),"bottom-right":new t.Point(-n,-n),left:new t.Point(e,0),right:new t.Point(-e,0)}}if(e instanceof t.Point||Array.isArray(e)){var r=t.Point.convert(e);return{center:r,top:r,"top-left":r,"top-right":r,bottom:r,"bottom-left":r,"bottom-right":r,left:r,right:r}}return{center:t.Point.convert(e.center||[0,0]),top:t.Point.convert(e.top||[0,0]),"top-left":t.Point.convert(e["top-left"]||[0,0]),"top-right":t.Point.convert(e["top-right"]||[0,0]),bottom:t.Point.convert(e.bottom||[0,0]),"bottom-left":t.Point.convert(e["bottom-left"]||[0,0]),"bottom-right":t.Point.convert(e["bottom-right"]||[0,0]),left:t.Point.convert(e.left||[0,0]),right:t.Point.convert(e.right||[0,0])}}return cs(new t.Point(0,0))}var us={version:t.version,supported:e,setRTLTextPlugin:t.setRTLTextPlugin,getRTLTextPluginStatus:t.getRTLTextPluginStatus,Map:Fo,NavigationControl:Ho,GeolocateControl:Qo,AttributionControl:So,ScaleControl:es,FullscreenControl:os,Popup:ls,Marker:$o,Style:mn,LngLat:t.LngLat,LngLatBounds:t.LngLatBounds,Point:t.Point,MercatorCoordinate:t.MercatorCoordinate,Evented:t.Evented,config:t.config,prewarm:ae,clearPrewarmedResources:oe,get accessToken(){return t.config.ACCESS_TOKEN},set accessToken(e){t.config.ACCESS_TOKEN=e},get baseApiUrl(){return t.config.API_URL},set baseApiUrl(e){t.config.API_URL=e},get workerCount(){return ee.workerCount},set workerCount(t){ee.workerCount=t},get maxParallelImageRequests(){return t.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(e){t.config.MAX_PARALLEL_IMAGE_REQUESTS=e},clearStorage:function(e){t.clearTileCache(e)},workerUrl:""};return us})),n}()},27084:function(t){"use strict";t.exports=Math.log2||function(t){return Math.log(t)*Math.LOG2E}},16825:function(t,e,n){"use strict";t.exports=function(t,e){e||(e=t,t=window);var n=0,i=0,a=0,o={shift:!1,alt:!1,control:!1,meta:!1},s=!1;function l(t){var e=!1;return"altKey"in t&&(e=e||t.altKey!==o.alt,o.alt=!!t.altKey),"shiftKey"in t&&(e=e||t.shiftKey!==o.shift,o.shift=!!t.shiftKey),"ctrlKey"in t&&(e=e||t.ctrlKey!==o.control,o.control=!!t.ctrlKey),"metaKey"in t&&(e=e||t.metaKey!==o.meta,o.meta=!!t.metaKey),e}function c(t,s){var c=r.x(s),u=r.y(s);"buttons"in s&&(t=0|s.buttons),(t!==n||c!==i||u!==a||l(s))&&(n=0|t,i=c||0,a=u||0,e&&e(n,i,a,o))}function u(t){c(0,t)}function f(){(n||i||a||o.shift||o.alt||o.meta||o.control)&&(i=a=0,n=0,o.shift=o.alt=o.control=o.meta=!1,e&&e(0,0,0,o))}function h(t){l(t)&&e&&e(n,i,a,o)}function d(t){0===r.buttons(t)?c(0,t):c(n,t)}function p(t){c(n|r.buttons(t),t)}function g(t){c(n&~r.buttons(t),t)}function v(){s||(s=!0,t.addEventListener("mousemove",d),t.addEventListener("mousedown",p),t.addEventListener("mouseup",g),t.addEventListener("mouseleave",u),t.addEventListener("mouseenter",u),t.addEventListener("mouseout",u),t.addEventListener("mouseover",u),t.addEventListener("blur",f),t.addEventListener("keyup",h),t.addEventListener("keydown",h),t.addEventListener("keypress",h),t!==window&&(window.addEventListener("blur",f),window.addEventListener("keyup",h),window.addEventListener("keydown",h),window.addEventListener("keypress",h)))}v();var m={element:t};return Object.defineProperties(m,{enabled:{get:function(){return s},set:function(e){e?v():s&&(s=!1,t.removeEventListener("mousemove",d),t.removeEventListener("mousedown",p),t.removeEventListener("mouseup",g),t.removeEventListener("mouseleave",u),t.removeEventListener("mouseenter",u),t.removeEventListener("mouseout",u),t.removeEventListener("mouseover",u),t.removeEventListener("blur",f),t.removeEventListener("keyup",h),t.removeEventListener("keydown",h),t.removeEventListener("keypress",h),t!==window&&(window.removeEventListener("blur",f),window.removeEventListener("keyup",h),window.removeEventListener("keydown",h),window.removeEventListener("keypress",h)))},enumerable:!0},buttons:{get:function(){return n},enumerable:!0},x:{get:function(){return i},enumerable:!0},y:{get:function(){return a},enumerable:!0},mods:{get:function(){return o},enumerable:!0}}),m};var r=n(74311)},48956:function(t){var e={left:0,top:0};t.exports=function(t,n,r){n=n||t.currentTarget||t.srcElement,Array.isArray(r)||(r=[0,0]);var i,a=t.clientX||0,o=t.clientY||0,s=(i=n)===window||i===document||i===document.body?e:i.getBoundingClientRect();return r[0]=a-s.left,r[1]=o-s.top,r}},74311:function(t,e){"use strict";function n(t){return t.target||t.srcElement||window}e.buttons=function(t){if("object"===typeof t){if("buttons"in t)return t.buttons;if("which"in t){if(2===(e=t.which))return 4;if(3===e)return 2;if(e>0)return 1<=0)return 1<0&&a(s,n))}catch(v){u.call(new h(n),v)}}}function u(t){var e=this;e.triggered||(e.triggered=!0,e.def&&(e=e.def),e.msg=t,e.state=2,e.chain.length>0&&a(s,e))}function f(t,e,n,r){for(var i=0;i1&&(i*=m=Math.sqrt(m),s*=m);var y=i*i,b=s*s,x=(c==u?-1:1)*Math.sqrt(Math.abs((y*b-y*v*v-b*g*g)/(y*v*v+b*g*g)));x==1/0&&(x=1);var w=x*i*v/s+(t+f)/2,_=x*-s*g/i+(r+h)/2,k=Math.asin(((r-_)/s).toFixed(9)),T=Math.asin(((h-_)/s).toFixed(9));(k=tT&&(k-=2*e),!u&&T>k&&(T-=2*e)}if(Math.abs(T-k)>n){var M=T,A=f,S=h;T=k+n*(u&&T>k?1:-1);var E=a(f=w+i*Math.cos(T),h=_+s*Math.sin(T),i,s,l,0,u,A,S,[T,M,w,_])}var C=Math.tan((T-k)/4),P=4/3*i*C,L=4/3*s*C,O=[2*t-(t+P*Math.sin(k)),2*r-(r-L*Math.cos(k)),f+P*Math.sin(T),h-L*Math.cos(T),f,h];if(d)return O;E&&(O=O.concat(E));for(var I=0;I7&&(n.push(m.splice(0,7)),m.unshift("C"));break;case"S":var b=d,x=p;"C"!=e&&"S"!=e||(b+=b-o,x+=x-l),m=["C",b,x,m[1],m[2],m[3],m[4]];break;case"T":"Q"==e||"T"==e?(f=2*d-f,h=2*p-h):(f=d,h=p),m=i(d,p,f,h,m[1],m[2]);break;case"Q":f=m[1],h=m[2],m=i(d,p,m[1],m[2],m[3],m[4]);break;case"L":m=r(d,p,m[1],m[2]);break;case"H":m=r(d,p,m[1],p);break;case"V":m=r(d,p,d,m[1]);break;case"Z":m=r(d,p,c,u)}e=y,d=m[m.length-2],p=m[m.length-1],m.length>4?(o=m[m.length-4],l=m[m.length-3]):(o=d,l=p),n.push(m)}return n}},56131:function(t){"use strict";var e=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;t.exports=function(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de","5"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},n=0;n<10;n++)e["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(e).map((function(t){return e[t]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(t){r[t]=t})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(i){return!1}}()?Object.assign:function(t,i){for(var a,o,s=function(t){if(null===t||void 0===t)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}(t),l=1;l0&&!i.call(t,0))for(var g=0;g0)for(var v=0;v=0&&"[object Function]"===e.call(t.callee)),r}},88641:function(t){"use strict";function e(t,e){if("string"!==typeof t)return[t];var n=[t];"string"===typeof e||Array.isArray(e)?e={brackets:e}:e||(e={});var r=e.brackets?Array.isArray(e.brackets)?e.brackets:[e.brackets]:["{}","[]","()"],i=e.escape||"___",a=!!e.flat;r.forEach((function(t){var e=new RegExp(["\\",t[0],"[^\\",t[0],"\\",t[1],"]*\\",t[1]].join("")),r=[];function a(e,a,o){var s=n.push(e.slice(t[0].length,-t[1].length))-1;return r.push(s),i+s+i}n.forEach((function(t,r){for(var i,o=0;t!=i;)if(i=t,t=t.replace(e,a),o++>1e4)throw Error("References have circular dependency. Please, check them.");n[r]=t})),r=r.reverse(),n=n.map((function(e){return r.forEach((function(n){e=e.replace(new RegExp("(\\"+i+n+"\\"+i+")","g"),t[0]+"$1"+t[1])})),e}))}));var o=new RegExp("\\"+i+"([0-9]+)\\"+i);return a?n:function t(e,n,r){for(var i,a=[],s=0;i=o.exec(e);){if(s++>1e4)throw Error("Circular references in parenthesis");a.push(e.slice(0,i.index)),a.push(t(n[i[1]],n)),e=e.slice(i.index+i[0].length)}return a.push(e),a}(n[0],n)}function n(t,e){if(e&&e.flat){var n,r=e&&e.escape||"___",i=t[0];if(!i)return"";for(var a=new RegExp("\\"+r+"([0-9]+)\\"+r),o=0;i!=n;){if(o++>1e4)throw Error("Circular references in "+t);n=i,i=i.replace(a,s)}return i}return t.reduce((function t(e,n){return Array.isArray(n)&&(n=n.reduce(t,"")),e+n}),"");function s(e,n){if(null==t[n])throw Error("Reference "+n+"is undefined");return t[n]}}function r(t,r){return Array.isArray(t)?n(t,r):e(t,r)}r.parse=e,r.stringify=n,t.exports=r},18863:function(t,e,n){"use strict";var r=n(71299);t.exports=function(t){var e;return arguments.length>1&&(t=arguments),"string"===typeof t?t=t.split(/\s/).map(parseFloat):"number"===typeof t&&(t=[t]),t.length&&"number"===typeof t[0]?e=1===t.length?{width:t[0],height:t[0],x:0,y:0}:2===t.length?{width:t[0],height:t[1],x:0,y:0}:{x:t[0],y:t[1],width:t[2]-t[0]||0,height:t[3]-t[1]||0}:t&&(e={x:(t=r(t,{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:t.top||0},null==t.width?t.right?e.width=t.right-e.x:e.width=0:e.width=t.width,null==t.height?t.bottom?e.height=t.bottom-e.y:e.height=0:e.height=t.height),e}},95616:function(t){t.exports=function(t){var i=[];return t.replace(n,(function(t,n,a){var o=n.toLowerCase();for(a=function(t){var e=t.match(r);return e?e.map(Number):[]}(a),"m"==o&&a.length>2&&(i.push([n].concat(a.splice(0,2))),o="l",n="m"==n?"l":"L");;){if(a.length==e[o])return a.unshift(n),i.push(a);if(a.lengtha!==d>a&&i<(h-u)*(a-f)/(d-f)+u&&(o=!o)}return o}},52142:function(t,e,n){var r,i=n(69444),a=n(29023),o=n(87263),s=n(11328),l=n(55968),c=n(10670),u=!1,f=a();function h(t,e,n){var i=r.segments(t),a=r.segments(e),o=n(r.combine(i,a));return r.polygon(o)}r={buildLog:function(t){return!0===t?u=i():!1===t&&(u=!1),!1!==u&&u.list},epsilon:function(t){return f.epsilon(t)},segments:function(t){var e=o(!0,f,u);return t.regions.forEach(e.addRegion),{segments:e.calculate(t.inverted),inverted:t.inverted}},combine:function(t,e){return{combined:o(!1,f,u).calculate(t.segments,t.inverted,e.segments,e.inverted),inverted1:t.inverted,inverted2:e.inverted}},selectUnion:function(t){return{segments:l.union(t.combined,u),inverted:t.inverted1||t.inverted2}},selectIntersect:function(t){return{segments:l.intersect(t.combined,u),inverted:t.inverted1&&t.inverted2}},selectDifference:function(t){return{segments:l.difference(t.combined,u),inverted:t.inverted1&&!t.inverted2}},selectDifferenceRev:function(t){return{segments:l.differenceRev(t.combined,u),inverted:!t.inverted1&&t.inverted2}},selectXor:function(t){return{segments:l.xor(t.combined,u),inverted:t.inverted1!==t.inverted2}},polygon:function(t){return{regions:s(t.segments,f,u),inverted:t.inverted}},polygonFromGeoJSON:function(t){return c.toPolygon(r,t)},polygonToGeoJSON:function(t){return c.fromPolygon(r,f,t)},union:function(t,e){return h(t,e,r.selectUnion)},intersect:function(t,e){return h(t,e,r.selectIntersect)},difference:function(t,e){return h(t,e,r.selectDifference)},differenceRev:function(t,e){return h(t,e,r.selectDifferenceRev)},xor:function(t,e){return h(t,e,r.selectXor)}},"object"===typeof window&&(window.PolyBool=r),t.exports=r},69444:function(t){t.exports=function(){var t,e=0,n=!1;function r(e,n){return t.list.push({type:e,data:n?JSON.parse(JSON.stringify(n)):void 0}),t}return t={list:[],segmentId:function(){return e++},checkIntersection:function(t,e){return r("check",{seg1:t,seg2:e})},segmentChop:function(t,e){return r("div_seg",{seg:t,pt:e}),r("chop",{seg:t,pt:e})},statusRemove:function(t){return r("pop_seg",{seg:t})},segmentUpdate:function(t){return r("seg_update",{seg:t})},segmentNew:function(t,e){return r("new_seg",{seg:t,primary:e})},segmentRemove:function(t){return r("rem_seg",{seg:t})},tempStatus:function(t,e,n){return r("temp_status",{seg:t,above:e,below:n})},rewind:function(t){return r("rewind",{seg:t})},status:function(t,e,n){return r("status",{seg:t,above:e,below:n})},vert:function(e){return e===n?t:(n=e,r("vert",{x:e}))},log:function(t){return"string"!==typeof t&&(t=JSON.stringify(t,!1," ")),r("log",{txt:t})},reset:function(){return r("reset")},selected:function(t){return r("selected",{segs:t})},chainStart:function(t){return r("chain_start",{seg:t})},chainRemoveHead:function(t,e){return r("chain_rem_head",{index:t,pt:e})},chainRemoveTail:function(t,e){return r("chain_rem_tail",{index:t,pt:e})},chainNew:function(t,e){return r("chain_new",{pt1:t,pt2:e})},chainMatch:function(t){return r("chain_match",{index:t})},chainClose:function(t){return r("chain_close",{index:t})},chainAddHead:function(t,e){return r("chain_add_head",{index:t,pt:e})},chainAddTail:function(t,e){return r("chain_add_tail",{index:t,pt:e})},chainConnect:function(t,e){return r("chain_con",{index1:t,index2:e})},chainReverse:function(t){return r("chain_rev",{index:t})},chainJoin:function(t,e){return r("chain_join",{index1:t,index2:e})},done:function(){return r("done")}}}},29023:function(t){t.exports=function(t){"number"!==typeof t&&(t=1e-10);var e={epsilon:function(e){return"number"===typeof e&&(t=e),t},pointAboveOrOnLine:function(e,n,r){var i=n[0],a=n[1],o=r[0],s=r[1],l=e[0];return(o-i)*(e[1]-a)-(s-a)*(l-i)>=-t},pointBetween:function(e,n,r){var i=e[1]-n[1],a=r[0]-n[0],o=e[0]-n[0],s=r[1]-n[1],l=o*a+i*s;return!(l-t)},pointsSameX:function(e,n){return Math.abs(e[0]-n[0])t!=o-i>t&&(a-c)*(i-u)/(o-u)+c-r>t&&(s=!s),a=c,o=u}return s}};return e}},10670:function(t){var e={toPolygon:function(t,e){function n(e){if(e.length<=0)return t.segments({inverted:!1,regions:[]});function n(e){var n=e.slice(0,e.length-1);return t.segments({inverted:!1,regions:[n]})}for(var r=n(e[0]),i=1;i0}))}function u(t,r){var i=t.seg,a=r.seg,o=i.start,s=i.end,c=a.start,u=a.end;n&&n.checkIntersection(i,a);var f=e.linesIntersect(o,s,c,u);if(!1===f){if(!e.pointsCollinear(o,s,c))return!1;if(e.pointsSame(o,u)||e.pointsSame(s,c))return!1;var h=e.pointsSame(o,c),d=e.pointsSame(s,u);if(h&&d)return r;var p=!h&&e.pointBetween(o,c,u),g=!d&&e.pointBetween(s,c,u);if(h)return g?l(r,s):l(t,u),r;p&&(d||(g?l(r,s):l(t,u)),l(r,o))}else 0===f.alongA&&(-1===f.alongB?l(t,c):0===f.alongB?l(t,f.pt):1===f.alongB&&l(t,u)),0===f.alongB&&(-1===f.alongA?l(r,o):0===f.alongA?l(r,f.pt):1===f.alongA&&l(r,s));return!1}for(var f=[],h=function(){if(d=a.getHead(),n&&n.vert(d.pt[0]),d.isStart){if(n&&n.segmentNew(d.seg,d.primary),p=c(d),g=p.before?p.before.ev:null,v=p.after?p.after.ev:null,n&&n.tempStatus(d.seg,!!g&&g.seg,!!v&&v.seg),(m=function(){if(g){var t=u(d,g);if(t)return t}return!!v&&u(d,v)}())&&(t?(y=null===d.seg.myFill.below||d.seg.myFill.above!==d.seg.myFill.below)&&(m.seg.myFill.above=!m.seg.myFill.above):m.seg.otherFill=d.seg.myFill,n&&n.segmentUpdate(m.seg),d.other.remove(),d.remove()),a.getHead()!==d)return n&&n.rewind(d.seg),"continue";t?(y=null===d.seg.myFill.below||d.seg.myFill.above!==d.seg.myFill.below,d.seg.myFill.below=v?v.seg.myFill.above:i,d.seg.myFill.above=y?!d.seg.myFill.below:d.seg.myFill.below):null===d.seg.otherFill&&(b=v?d.primary===v.primary?v.seg.otherFill.above:v.seg.myFill.above:d.primary?o:i,d.seg.otherFill={above:b,below:b}),n&&n.status(d.seg,!!g&&g.seg,!!v&&v.seg),d.other.status=p.insert(r.node({ev:d}))}else{if(null===(x=d.status))throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");s.exists(x.prev)&&s.exists(x.next)&&u(x.prev.ev,x.next.ev),n&&n.statusRemove(x.ev.seg),x.remove(),d.primary||(w=d.seg.myFill,d.seg.myFill=d.seg.otherFill,d.seg.otherFill=w),f.push(d.seg)}a.getHead().remove()};!a.isEmpty();){var d,p,g,v,m,y,b,x,w;h()}return n&&n.done(),f}return t?{addRegion:function(t){for(var r,i,a,o=t[t.length-1],l=0;l0&&!this.aborted;){var n=this.ifds_to_read.shift();n.offset&&this.scan_ifd(n.id,n.offset,t)}},r.prototype.read_uint16=function(t){var n=this.input;if(t+2>n.length)throw e("unexpected EOF","EBADDATA");return this.big_endian?256*n[t]+n[t+1]:n[t]+256*n[t+1]},r.prototype.read_uint32=function(t){var n=this.input;if(t+4>n.length)throw e("unexpected EOF","EBADDATA");return this.big_endian?16777216*n[t]+65536*n[t+1]+256*n[t+2]+n[t+3]:n[t]+256*n[t+1]+65536*n[t+2]+16777216*n[t+3]},r.prototype.is_subifd_link=function(t,e){return 0===t&&34665===e||0===t&&34853===e||34665===t&&40965===e},r.prototype.exif_format_length=function(t){switch(t){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}},r.prototype.exif_format_read=function(t,e){var n;switch(t){case 1:case 2:return n=this.input[e];case 6:return(n=this.input[e])|33554430*(128&n);case 3:return n=this.read_uint16(e);case 8:return(n=this.read_uint16(e))|131070*(32768&n);case 4:return n=this.read_uint32(e);case 9:return 0|(n=this.read_uint32(e));default:return null}},r.prototype.scan_ifd=function(t,r,i){var a=this.read_uint16(r);r+=2;for(var o=0;othis.input.length)throw e("unexpected EOF","EBADDATA");for(var p=[],g=h,v=0;v0&&(this.ifds_to_read.push({id:s,offset:p[0]}),d=!0),!1===i({is_big_endian:this.big_endian,ifd:t,tag:s,format:l,count:c,entry_offset:r+this.start,data_length:f,data_offset:h+this.start,value:p,is_subifd_link:d}))return void(this.aborted=!0);r+=12}0===t&&this.ifds_to_read.push({id:1,offset:this.read_uint32(r)})},t.exports.ExifParser=r,t.exports.get_orientation=function(t){var e=0;try{return new r(t,0,t.length).each((function(t){if(0===t.ifd&&274===t.tag&&Array.isArray(t.value))return e=t.value[0],!1})),e}catch(n){return-1}}},76767:function(t,e,n){"use strict";var r=n(14847).n8,i=n(14847).Ag;function a(t,e){if(t.length<4+e)return null;var n=i(t,e);return t.length>4&15,i=15&t[4],a=t[5]>>4&15,o=r(t,6),l=8,c=0;ce.width||t.width===e.width&&t.height>e.height?t:e})),n=t.reduce((function(t,e){return t.height>e.height||t.height===e.height&&t.width>e.width?t:e}));return e.width>n.height||e.width===n.height&&e.height>n.width?e:n}(e.sizes),r=1;e.transforms.forEach((function(t){var e={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},n={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if("imir"===t.type&&(r=0===t.value?n[r]:e[r=e[r=n[r]]]),"irot"===t.type)for(var i=0;i1&&(h.variants=f.variants),f.orientation&&(h.orientation=f.orientation),f.exif_location&&f.exif_location.offset+f.exif_location.length<=t.length){var d=a(t,f.exif_location.offset),p=t.slice(f.exif_location.offset+d+4,f.exif_location.offset+f.exif_location.length),g=s.get_orientation(p);g>0&&(h.orientation=g)}return h}}}}}}},2504:function(t,e,n){"use strict";var r=n(14847).eG,i=n(14847).OF,a=n(14847).mP,o=r("BM");t.exports=function(t){if(!(t.length<26)&&i(t,0,o))return{width:a(t,18),height:a(t,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}},47342:function(t,e,n){"use strict";var r=n(14847).eG,i=n(14847).OF,a=n(14847).mP,o=r("GIF87a"),s=r("GIF89a");t.exports=function(t){if(!(t.length<10)&&(i(t,0,o)||i(t,0,s)))return{width:a(t,6),height:a(t,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}},31355:function(t,e,n){"use strict";var r=n(14847).mP;t.exports=function(t){var e=r(t,0),n=r(t,2),i=r(t,4);if(0===e&&1===n&&i){for(var a=[],o={width:0,height:0},s=0;so.width||c>o.height)&&(o=u)}return{width:o.width,height:o.height,variants:a,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}},54261:function(t,e,n){"use strict";var r=n(14847).n8,i=n(14847).eG,a=n(14847).OF,o=n(71371),s=i("Exif\0\0");t.exports=function(t){if(!(t.length<2)&&255===t[0]&&216===t[1]&&255===t[2])for(var e=2;;){for(;;){if(t.length-e<2)return;if(255===t[e++])break}for(var n,i,l=t[e++];255===l;)l=t[e++];if(208<=l&&l<=217||1===l)n=0;else{if(!(192<=l&&l<=254))return;if(t.length-e<2)return;n=r(t,e)-2,e+=2}if(217===l||218===l)return;if(225===l&&n>=10&&a(t,e,s)&&(i=o.get_orientation(t.slice(e+6,e+n))),n>=5&&192<=l&&l<=207&&196!==l&&200!==l&&204!==l){if(t.length-e0&&(c.orientation=i),c}e+=n}}},6303:function(t,e,n){"use strict";var r=n(14847).eG,i=n(14847).OF,a=n(14847).Ag,o=r("\x89PNG\r\n\x1a\n"),s=r("IHDR");t.exports=function(t){if(!(t.length<24)&&i(t,0,o)&&i(t,12,s))return{width:a(t,16),height:a(t,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}},38689:function(t,e,n){"use strict";var r=n(14847).eG,i=n(14847).OF,a=n(14847).Ag,o=r("8BPS\0\x01");t.exports=function(t){if(!(t.length<22)&&i(t,0,o))return{width:a(t,18),height:a(t,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}},6881:function(t){"use strict";function e(t){return"number"===typeof t&&isFinite(t)&&t>0}var n=/<[-_.:a-zA-Z0-9][^>]*>/,r=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,i=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,a=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,o=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,s=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function l(t){return s.test(t)?t.match(s)[0]:"px"}t.exports=function(t){if(function(t){var e,n=0,r=t.length;for(239===t[0]&&187===t[1]&&191===t[2]&&(n=3);n>14&16383),type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function h(t,e){return{width:1+(t[e+6]<<16|t[e+5]<<8|t[e+4]),height:1+(t[e+9]<t.length)){for(;e+8=10?n=n||u(t,e+8):"VP8L"===d&&p>=9?n=n||f(t,e+8):"VP8X"===d&&p>=10?n=n||h(t,e+8):"EXIF"===d&&(r=s.get_orientation(t.slice(e+8,e+8+p)),e=1/0),e+=8+p}else e++;if(n)return r>0&&(n.orientation=r),n}}}},91497:function(t,e,n){"use strict";t.exports={avif:n(24461),bmp:n(2504),gif:n(47342),ico:n(31355),jpeg:n(54261),png:n(6303),psd:n(38689),svg:n(6881),tiff:n(66278),webp:n(90784)}},33575:function(t,e,n){"use strict";var r=n(91497);t.exports=function(t){return function(t){for(var e=Object.keys(r),n=0;n1)for(var n=1;n1&&(t.scaleRatio=[t.scale[0]*t.viewport.width,t.scale[1]*t.viewport.height],n(t),t.after&&t.after(t))}function k(t){if(t){null!=t.length?"number"===typeof t[0]&&(t=[{positions:t}]):Array.isArray(t)||(t=[t]);var e=0,n=0;if(x.groups=b=t.map((function(t,c){var u=b[c];return t?("function"===typeof t?t={after:t}:"number"===typeof t[0]&&(t={positions:t}),t=o(t,{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"}),u||(b[c]=u={id:c,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},t=s({},y,t)),a(u,t,[{lineWidth:function(t){return.5*+t},capSize:function(t){return.5*+t},opacity:parseFloat,errors:function(t){return t=l(t),n+=t.length,t},positions:function(t,n){return t=l(t,"float64"),n.count=Math.floor(t.length/2),n.bounds=r(t,2),n.offset=e,e+=n.count,t}},{color:function(t,e){var n=e.count;if(t||(t="transparent"),!Array.isArray(t)||"number"===typeof t[0]){var r=t;t=Array(n);for(var a=0;a 0. && baClipping < length(normalWidth * endBotJoin)) {\n\t\t//handle miter clipping\n\t\tbTopCoord -= normalWidth * endTopJoin;\n\t\tbTopCoord += normalize(endTopJoin * normalWidth) * baClipping;\n\t}\n\n\tif (nextReverse) {\n\t\t//make join rectangular\n\t\tvec2 miterShift = normalWidth * endJoinDirection * miterLimit * .5;\n\t\tfloat normalAdjust = 1. - min(miterLimit / endMiterRatio, 1.);\n\t\tbBotCoord = bCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;\n\t\tbTopCoord = bCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;\n\t}\n\telse if (!prevReverse && abClipping > 0. && abClipping < length(normalWidth * startBotJoin)) {\n\t\t//handle miter clipping\n\t\taBotCoord -= normalWidth * startBotJoin;\n\t\taBotCoord += normalize(startBotJoin * normalWidth) * abClipping;\n\t}\n\n\tvec2 aTopPosition = (aTopCoord) * adjustedScale + translate;\n\tvec2 aBotPosition = (aBotCoord) * adjustedScale + translate;\n\n\tvec2 bTopPosition = (bTopCoord) * adjustedScale + translate;\n\tvec2 bBotPosition = (bBotCoord) * adjustedScale + translate;\n\n\t//position is normalized 0..1 coord on the screen\n\tvec2 position = (aTopPosition * lineTop + aBotPosition * lineBot) * lineStart + (bTopPosition * lineTop + bBotPosition * lineBot) * lineEnd;\n\n\tstartCoord = aCoord * scaleRatio + translate * viewport.zw + viewport.xy;\n\tendCoord = bCoord * scaleRatio + translate * viewport.zw + viewport.xy;\n\n\tgl_Position = vec4(position * 2.0 - 1.0, depth, 1);\n\n\tenableStartMiter = step(dot(currTangent, prevTangent), .5);\n\tenableEndMiter = step(dot(currTangent, nextTangent), .5);\n\n\t//bevel miter cutoffs\n\tif (miterMode == 1.) {\n\t\tif (enableStartMiter == 1.) {\n\t\t\tvec2 startMiterWidth = vec2(startJoinDirection) * thickness * miterLimit * .5;\n\t\t\tstartCutoff = vec4(aCoord, aCoord);\n\t\t\tstartCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;\n\t\t\tstartCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\n\t\t\tstartCutoff += viewport.xyxy;\n\t\t\tstartCutoff += startMiterWidth.xyxy;\n\t\t}\n\n\t\tif (enableEndMiter == 1.) {\n\t\t\tvec2 endMiterWidth = vec2(endJoinDirection) * thickness * miterLimit * .5;\n\t\t\tendCutoff = vec4(bCoord, bCoord);\n\t\t\tendCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;\n\t\t\tendCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\n\t\t\tendCutoff += viewport.xyxy;\n\t\t\tendCutoff += endMiterWidth.xyxy;\n\t\t}\n\t}\n\n\t//round miter cutoffs\n\telse if (miterMode == 2.) {\n\t\tif (enableStartMiter == 1.) {\n\t\t\tvec2 startMiterWidth = vec2(startJoinDirection) * thickness * abs(dot(startJoinDirection, currNormal)) * .5;\n\t\t\tstartCutoff = vec4(aCoord, aCoord);\n\t\t\tstartCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;\n\t\t\tstartCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\n\t\t\tstartCutoff += viewport.xyxy;\n\t\t\tstartCutoff += startMiterWidth.xyxy;\n\t\t}\n\n\t\tif (enableEndMiter == 1.) {\n\t\t\tvec2 endMiterWidth = vec2(endJoinDirection) * thickness * abs(dot(endJoinDirection, currNormal)) * .5;\n\t\t\tendCutoff = vec4(bCoord, bCoord);\n\t\t\tendCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;\n\t\t\tendCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\n\t\t\tendCutoff += viewport.xyxy;\n\t\t\tendCutoff += endMiterWidth.xyxy;\n\t\t}\n\t}\n}\n"]),frag:o(["precision highp float;\n#define GLSLIFY 1\n\nuniform float dashLength, pixelRatio, thickness, opacity, id, miterMode;\nuniform sampler2D dashTexture;\n\nvarying vec4 fragColor;\nvarying vec2 tangent;\nvarying vec4 startCutoff, endCutoff;\nvarying vec2 startCoord, endCoord;\nvarying float enableStartMiter, enableEndMiter;\n\nfloat distToLine(vec2 p, vec2 a, vec2 b) {\n\tvec2 diff = b - a;\n\tvec2 perp = normalize(vec2(-diff.y, diff.x));\n\treturn dot(p - a, perp);\n}\n\nvoid main() {\n\tfloat alpha = 1., distToStart, distToEnd;\n\tfloat cutoff = thickness * .5;\n\n\t//bevel miter\n\tif (miterMode == 1.) {\n\t\tif (enableStartMiter == 1.) {\n\t\t\tdistToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);\n\t\t\tif (distToStart < -1.) {\n\t\t\t\tdiscard;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\talpha *= min(max(distToStart + 1., 0.), 1.);\n\t\t}\n\n\t\tif (enableEndMiter == 1.) {\n\t\t\tdistToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);\n\t\t\tif (distToEnd < -1.) {\n\t\t\t\tdiscard;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\talpha *= min(max(distToEnd + 1., 0.), 1.);\n\t\t}\n\t}\n\n\t// round miter\n\telse if (miterMode == 2.) {\n\t\tif (enableStartMiter == 1.) {\n\t\t\tdistToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);\n\t\t\tif (distToStart < 0.) {\n\t\t\t\tfloat radius = length(gl_FragCoord.xy - startCoord);\n\n\t\t\t\tif(radius > cutoff + .5) {\n\t\t\t\t\tdiscard;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\talpha -= smoothstep(cutoff - .5, cutoff + .5, radius);\n\t\t\t}\n\t\t}\n\n\t\tif (enableEndMiter == 1.) {\n\t\t\tdistToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);\n\t\t\tif (distToEnd < 0.) {\n\t\t\t\tfloat radius = length(gl_FragCoord.xy - endCoord);\n\n\t\t\t\tif(radius > cutoff + .5) {\n\t\t\t\t\tdiscard;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\talpha -= smoothstep(cutoff - .5, cutoff + .5, radius);\n\t\t\t}\n\t\t}\n\t}\n\n\tfloat t = fract(dot(tangent, gl_FragCoord.xy) / dashLength) * .5 + .25;\n\tfloat dash = texture2D(dashTexture, vec2(t, .5)).r;\n\n\tgl_FragColor = fragColor;\n\tgl_FragColor.a *= alpha * opacity * dash;\n}\n"]),attributes:{lineEnd:{buffer:n,divisor:0,stride:8,offset:0},lineTop:{buffer:n,divisor:0,stride:8,offset:4},aColor:{buffer:t.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:t.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:t.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:t.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:t.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:t.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},r))}catch(s){e=i}return{fill:t({primitive:"triangle",elements:function(t,e){return e.triangles},offset:0,vert:o(["precision highp float;\n#define GLSLIFY 1\n\nattribute vec2 position, positionFract;\n\nuniform vec4 color;\nuniform vec2 scale, scaleFract, translate, translateFract;\nuniform float pixelRatio, id;\nuniform vec4 viewport;\nuniform float opacity;\n\nvarying vec4 fragColor;\n\nconst float MAX_LINES = 256.;\n\nvoid main() {\n\tfloat depth = (MAX_LINES - 4. - id) / (MAX_LINES);\n\n\tvec2 position = position * scale + translate\n + positionFract * scale + translateFract\n + position * scaleFract\n + positionFract * scaleFract;\n\n\tgl_Position = vec4(position * 2.0 - 1.0, depth, 1);\n\n\tfragColor = color / 255.;\n\tfragColor.a *= opacity;\n}\n"]),frag:o(["precision highp float;\n#define GLSLIFY 1\n\nvarying vec4 fragColor;\n\nvoid main() {\n\tgl_FragColor = fragColor;\n}\n"]),uniforms:{scale:t.prop("scale"),color:t.prop("fill"),scaleFract:t.prop("scaleFract"),translateFract:t.prop("translateFract"),translate:t.prop("translate"),opacity:t.prop("opacity"),pixelRatio:t.context("pixelRatio"),id:t.prop("id"),viewport:function(t,e){return[e.viewport.x,e.viewport.y,t.viewportWidth,t.viewportHeight]}},attributes:{position:{buffer:t.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:t.prop("positionFractBuffer"),stride:8,offset:8}},blend:r.blend,depth:{enable:!1},scissor:r.scissor,stencil:r.stencil,viewport:r.viewport}),rect:i,miter:e}},m.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},m.prototype.render=function(){for(var t,e=[],n=arguments.length;n--;)e[n]=arguments[n];e.length&&(t=this).update.apply(t,e),this.draw()},m.prototype.draw=function(){for(var t=this,e=[],n=arguments.length;n--;)e[n]=arguments[n];return(e.length?e:this.passes).forEach((function(e,n){var r;if(e&&Array.isArray(e))return(r=t).draw.apply(r,e);"number"===typeof e&&(e=t.passes[e]),e&&e.count>1&&e.opacity&&(t.regl._refresh(),e.fill&&e.triangles&&e.triangles.length>2&&t.shaders.fill(e),e.thickness&&(e.scale[0]*e.viewport.width>m.precisionThreshold||e.scale[1]*e.viewport.height>m.precisionThreshold||"rect"===e.join||!e.join&&(e.thickness<=2||e.count>=m.maxPoints)?t.shaders.rect(e):t.shaders.miter(e)))})),this},m.prototype.update=function(t){var e=this;if(t){null!=t.length?"number"===typeof t[0]&&(t=[{positions:t}]):Array.isArray(t)||(t=[t]);var n=this.regl,o=this.gl;if(t.forEach((function(t,f){var p=e.passes[f];if(void 0!==t)if(null!==t){if("number"===typeof t[0]&&(t={positions:t}),t=s(t,{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"}),p||(e.passes[f]=p={id:f,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:n.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:n.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:n.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:n.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},t=a({},m.defaults,t)),null!=t.thickness&&(p.thickness=parseFloat(t.thickness)),null!=t.opacity&&(p.opacity=parseFloat(t.opacity)),null!=t.miterLimit&&(p.miterLimit=parseFloat(t.miterLimit)),null!=t.overlay&&(p.overlay=!!t.overlay,f=R}));(O=O.slice(0,z)).push(R)}for(var N=function(t){var e=T.slice(2*D,2*O[t]).concat(R?T.slice(2*R):[]),n=(p.hole||[]).map((function(e){return e-R+(O[t]-D)})),r=c(e,n);r=r.map((function(e){return e+D+(e+Dt.length)&&(e=t.length);for(var n=0,r=new Array(e);n 1.0 + delta) {\n\t\tdiscard;\n\t}\n\n\talpha -= smoothstep(1.0 - delta, 1.0 + delta, radius);\n\n\tfloat borderRadius = fragBorderRadius;\n\tfloat ratio = smoothstep(borderRadius - delta, borderRadius + delta, radius);\n\tvec4 color = mix(fragColor, fragBorderColor, ratio);\n\tcolor.a *= alpha * opacity;\n\tgl_FragColor = color;\n}\n"]),c.vert=h(["precision highp float;\n#define GLSLIFY 1\n\nattribute float x, y, xFract, yFract;\nattribute float size, borderSize;\nattribute vec4 colorId, borderColorId;\nattribute float isActive;\n\nuniform bool constPointSize;\nuniform float pixelRatio;\nuniform vec2 paletteSize, scale, scaleFract, translate, translateFract;\nuniform sampler2D paletteTexture;\n\nconst float maxSize = 100.;\n\nvarying vec4 fragColor, fragBorderColor;\nvarying float fragBorderRadius, fragWidth;\n\nfloat pointSizeScale = (constPointSize) ? 2. : pixelRatio;\n\nbool isDirect = (paletteSize.x < 1.);\n\nvec4 getColor(vec4 id) {\n return isDirect ? id / 255. : texture2D(paletteTexture,\n vec2(\n (id.x + .5) / paletteSize.x,\n (id.y + .5) / paletteSize.y\n )\n );\n}\n\nvoid main() {\n // ignore inactive points\n if (isActive == 0.) return;\n\n vec2 position = vec2(x, y);\n vec2 positionFract = vec2(xFract, yFract);\n\n vec4 color = getColor(colorId);\n vec4 borderColor = getColor(borderColorId);\n\n float size = size * maxSize / 255.;\n float borderSize = borderSize * maxSize / 255.;\n\n gl_PointSize = (size + borderSize) * pointSizeScale;\n\n vec2 pos = (position + translate) * scale\n + (positionFract + translateFract) * scale\n + (position + translate) * scaleFract\n + (positionFract + translateFract) * scaleFract;\n\n gl_Position = vec4(pos * 2. - 1., 0., 1.);\n\n fragBorderRadius = 1. - 2. * borderSize / (size + borderSize);\n fragColor = color;\n fragBorderColor = borderColor.a == 0. || borderSize == 0. ? vec4(color.rgb, 0.) : borderColor;\n fragWidth = 1. / gl_PointSize;\n}\n"]),v&&(c.frag=c.frag.replace("smoothstep","smoothStep"),l.frag=l.frag.replace("smoothstep","smoothStep")),this.drawCircle=t(c)}x.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},x.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this},x.prototype.draw=function(){for(var t=this,e=arguments.length,n=new Array(e),r=0;rr)?e.tree=u(t,{bounds:f}):r&&r.length&&(e.tree=r),e.tree){var h={primitive:"points",usage:"static",data:e.tree,type:"uint32"};e.elements?e.elements(h):e.elements=o.elements(h)}var d=m.float32(t);return i({data:d,usage:"dynamic"}),a({data:m.fract32(t,d),usage:"dynamic"}),s({data:new Uint8Array(c),type:"uint8",usage:"stream"}),t}},{marker:function(e,n,r){var i=n.activation;if(i.forEach((function(t){return t&&t.destroy&&t.destroy()})),i.length=0,e&&"number"!==typeof e[0]){for(var a=[],s=0,l=Math.min(e.length,n.count);s=0)return a;if(t instanceof Uint8Array||t instanceof Uint8ClampedArray)e=t;else{e=new Uint8Array(t.length);for(var o=0,s=t.length;o4*r&&(this.tooManyColors=!0),this.updatePalette(n),1===i.length?i[0]:i},x.prototype.updatePalette=function(t){if(!this.tooManyColors){var e=this.maxColors,n=this.paletteTexture,r=Math.ceil(.25*t.length/e);if(r>1)for(var i=.25*(t=t.slice()).length%e;i2?(s[0],s[2],r=s[1],i=s[3]):s.length?(r=s[0],i=s[1]):(s.x,r=s.y,s.x,s.width,i=s.y+s.height),l.length>2?(a=l[0],o=l[2],l[1],l[3]):l.length?(a=l[0],o=l[1]):(a=l.x,l.y,o=l.x+l.width,l.y,l.height),[a,r,o,i]}function d(t){if("number"===typeof t)return[t,t,t,t];if(2===t.length)return[t[0],t[1],t[0],t[1]];var e=l(t);return[e.x,e.y,e.x+e.width,e.y+e.height]}t.exports=u,u.prototype.render=function(){for(var t,e=this,n=[],r=arguments.length;r--;)n[r]=arguments[r];return n.length&&(t=this).update.apply(t,n),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?null==this.planned&&(this.planned=o((function(){e.draw(),e.dirty=!0,e.planned=null}))):(this.draw(),this.dirty=!0,o((function(){e.dirty=!1}))),this)},u.prototype.update=function(){for(var t,e=[],n=arguments.length;n--;)e[n]=arguments[n];if(e.length){for(var r=0;rT))&&(s.lower||!(k>>=e))<<3,(e|=n=(15<(t>>>=n))<<2)|(n=(3<(t>>>=n))<<1)|t>>>n>>1}function d(){function t(t){t:{for(var e=16;268435456>=e;e*=16)if(t<=e){t=e;break t}t=0}return 0<(e=n[h(t)>>2]).length?e.pop():new ArrayBuffer(t)}function e(t){n[h(t.byteLength)>>2].push(t)}var n=f(8,(function(){return[]}));return{alloc:t,free:e,allocType:function(e,n){var r=null;switch(e){case 5120:r=new Int8Array(t(n),0,n);break;case 5121:r=new Uint8Array(t(n),0,n);break;case 5122:r=new Int16Array(t(2*n),0,n);break;case 5123:r=new Uint16Array(t(2*n),0,n);break;case 5124:r=new Int32Array(t(4*n),0,n);break;case 5125:r=new Uint32Array(t(4*n),0,n);break;case 5126:r=new Float32Array(t(4*n),0,n);break;default:return null}return r.length!==n?r.subarray(0,n):r},freeType:function(t){e(t.buffer)}}}function p(t){return!!t&&"object"===typeof t&&Array.isArray(t.shape)&&Array.isArray(t.stride)&&"number"===typeof t.offset&&t.shape.length===t.stride.length&&(Array.isArray(t.data)||ot(t.data))}function g(t,e,n,r,i,a){for(var o=0;o(i=s)&&(i=r.buffer.byteLength,5123===u?i>>=1:5125===u&&(i>>=2)),r.vertCount=i,i=o,0>o&&(i=4,1===(o=r.buffer.dimension)&&(i=0),2===o&&(i=1),3===o&&(i=4)),r.primType=i}function o(t){r.elementsCount--,delete s[t.id],t.buffer.destroy(),t.buffer=null}var s={},l=0,c={uint8:5121,uint16:5123};e.oes_element_index_uint&&(c.uint32=5125),i.prototype.bind=function(){this.buffer.bind()};var u=[];return{create:function(t,e){function s(t){if(t)if("number"===typeof t)l(t),u.primType=4,u.vertCount=0|t,u.type=5121;else{var e=null,n=35044,r=-1,i=-1,o=0,f=0;Array.isArray(t)||ot(t)||p(t)?e=t:("data"in t&&(e=t.data),"usage"in t&&(n=ft[t.usage]),"primitive"in t&&(r=gt[t.primitive]),"count"in t&&(i=0|t.count),"type"in t&&(f=c[t.type]),"length"in t?o=0|t.length:(o=i,5123===f||5122===f?o*=2:5125!==f&&5124!==f||(o*=4))),a(u,e,n,r,i,o,f)}else l(),u.primType=4,u.vertCount=0,u.type=5121;return s}var l=n.create(null,34963,!0),u=new i(l._buffer);return r.elementsCount++,s(t),s._reglType="elements",s._elements=u,s.subdata=function(t,e){return l.subdata(t,e),s},s.destroy=function(){o(u)},s},createStream:function(t){var e=u.pop();return e||(e=new i(n.create(null,34963,!0,!1)._buffer)),a(e,t,35040,-1,-1,0,0),e},destroyStream:function(t){u.push(t)},getElements:function(t){return"function"===typeof t&&t._elements instanceof i?t._elements:null},clear:function(){st(s).forEach(o)}}}function _(t){for(var e=it.allocType(5123,t.length),n=0;n>>31<<15,i=(a<<1>>>24)-127,a=a>>13&1023;e[n]=-24>i?r:-14>i?r+(a+1024>>-14-i):15>=i,n.height>>=i,h(n,r[i]),t.mipmask|=1<e;++e)t.images[e]=null;return t}function T(t){for(var e=t.images,n=0;ne){for(var n=0;n=--this.refCount&&N(this)}}),o.profile&&(a.getTotalTextureSize=function(){var t=0;return Object.keys(at).forEach((function(e){t+=at[e].stats.size})),t}),{create2D:function(e,n){function r(t,e){var n=i.texInfo;L.call(n);var a=w();return"number"===typeof t?y(a,0|t,"number"===typeof e?0|e:0|t):t?(O(n,t),b(a,t)):y(a,1,1),n.genMipmaps&&(a.mipmask=(a.width<<1)-1),i.mipmask=a.mipmask,l(i,a),i.internalformat=a.internalformat,r.width=a.width,r.height=a.height,R(i),x(a,3553),I(n,3553),z(),T(a),o.profile&&(i.stats.size=P(i.internalformat,i.type,a.width,a.height,n.genMipmaps,!1)),r.format=$[i.internalformat],r.type=X[i.type],r.mag=K[n.magFilter],r.min=Z[n.minFilter],r.wrapS=J[n.wrapS],r.wrapT=J[n.wrapT],r}var i=new D(3553);return at[i.id]=i,a.textureCount++,r(e,n),r.subimage=function(t,e,n,a){e|=0,n|=0,a|=0;var o=g();return l(o,i),o.width=0,o.height=0,h(o,t),o.width=o.width||(i.width>>a)-e,o.height=o.height||(i.height>>a)-n,R(i),d(o,3553,e,n,a),z(),v(o),r},r.resize=function(e,n){var a=0|e,s=0|n||a;if(a===i.width&&s===i.height)return r;r.width=i.width=a,r.height=i.height=s,R(i);for(var l=0;i.mipmask>>l;++l){var c=a>>l,u=s>>l;if(!c||!u)break;t.texImage2D(3553,l,i.format,c,u,0,i.format,i.type,null)}return z(),o.profile&&(i.stats.size=P(i.internalformat,i.type,a,s,!1,!1)),r},r._reglType="texture2d",r._texture=i,o.profile&&(r.stats=i.stats),r.destroy=function(){i.decRef()},r},createCube:function(e,n,r,i,s,u){function f(t,e,n,r,i,a){var s,u=p.texInfo;for(L.call(u),s=0;6>s;++s)m[s]=w();if("number"!==typeof t&&t){if("object"===typeof t)if(e)b(m[0],t),b(m[1],e),b(m[2],n),b(m[3],r),b(m[4],i),b(m[5],a);else if(O(u,t),c(p,t),"faces"in t)for(t=t.faces,s=0;6>s;++s)l(m[s],p),b(m[s],t[s]);else for(s=0;6>s;++s)b(m[s],t)}else for(t=0|t||1,s=0;6>s;++s)y(m[s],t,t);for(l(p,m[0]),p.mipmask=u.genMipmaps?(m[0].width<<1)-1:m[0].mipmask,p.internalformat=m[0].internalformat,f.width=m[0].width,f.height=m[0].height,R(p),s=0;6>s;++s)x(m[s],34069+s);for(I(u,34067),z(),o.profile&&(p.stats.size=P(p.internalformat,p.type,f.width,f.height,u.genMipmaps,!0)),f.format=$[p.internalformat],f.type=X[p.type],f.mag=K[u.magFilter],f.min=Z[u.minFilter],f.wrapS=J[u.wrapS],f.wrapT=J[u.wrapT],s=0;6>s;++s)T(m[s]);return f}var p=new D(34067);at[p.id]=p,a.cubeCount++;var m=Array(6);return f(e,n,r,i,s,u),f.subimage=function(t,e,n,r,i){n|=0,r|=0,i|=0;var a=g();return l(a,p),a.width=0,a.height=0,h(a,e),a.width=a.width||(p.width>>i)-n,a.height=a.height||(p.height>>i)-r,R(p),d(a,34069+t,n,r,i),z(),v(a),f},f.resize=function(e){if((e|=0)!==p.width){f.width=p.width=e,f.height=p.height=e,R(p);for(var n=0;6>n;++n)for(var r=0;p.mipmask>>r;++r)t.texImage2D(34069+n,r,p.format,e>>r,e>>r,0,p.format,p.type,null);return z(),o.profile&&(p.stats.size=P(p.internalformat,p.type,f.width,f.height,!1,!0)),f}},f._reglType="textureCube",f._texture=p,o.profile&&(f.stats=p.stats),f.destroy=function(){p.decRef()},f},clear:function(){for(var e=0;en;++n)if(0!==(e.mipmask&1<>n,e.height>>n,0,e.internalformat,e.type,null);else for(var r=0;6>r;++r)t.texImage2D(34069+r,n,e.internalformat,e.width>>n,e.height>>n,0,e.internalformat,e.type,null);I(e.texInfo,e.target)}))},refresh:function(){for(var e=0;ei;++i){for(c=0;ct;++t)n[t].resize(r);return e.width=e.height=r,e},_reglType:"framebufferCube",destroy:function(){n.forEach((function(t){t.destroy()}))}})},clear:function(){st(T).forEach(v)},restore:function(){b.cur=null,b.next=null,b.dirty=!0,st(T).forEach((function(e){e.framebuffer=t.createFramebuffer(),m(e)}))}})}function I(){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 D(t,e,n,r,i,a,o){function s(t){if(t!==m.currentVAO){var n=e.oes_vertex_array_object;t?n.bindVertexArrayOES(t.vao):n.bindVertexArrayOES(null),m.currentVAO=t}}function l(n){if(n!==m.currentVAO){if(n)n.bindAttrs();else{for(var r=e.angle_instanced_arrays,i=0;i=f.byteLength?l.subdata(f):(l.destroy(),n.buffers[s]=null)),n.buffers[s]||(l=n.buffers[s]=i.create(c,34962,!1,!0)),u.buffer=i.getBuffer(l),u.size=0|u.buffer.dimension,u.normalized=!1,u.type=u.buffer.dtype,u.offset=0,u.stride=0,u.divisor=0,u.state=1,t[s]=1):i.getBuffer(c)?(u.buffer=i.getBuffer(c),u.size=0|u.buffer.dimension,u.normalized=!1,u.type=u.buffer.dtype,u.offset=0,u.stride=0,u.divisor=0,u.state=1):i.getBuffer(c.buffer)?(u.buffer=i.getBuffer(c.buffer),u.size=0|(+c.size||u.buffer.dimension),u.normalized=!!c.normalized||!1,u.type="type"in c?ut[c.type]:u.buffer.dtype,u.offset=0|(c.offset||0),u.stride=0|(c.stride||0),u.divisor=0|(c.divisor||0),u.state=1):"x"in c&&(u.x=+c.x||0,u.y=+c.y||0,u.z=+c.z||0,u.w=+c.w||0,u.state=2)}for(l=0;lt&&(t=e.stats.uniformsCount)})),t},n.getMaxAttributesCount=function(){var t=0;return h.forEach((function(e){e.stats.attributesCount>t&&(t=e.stats.attributesCount)})),t}),{clear:function(){var e=t.deleteShader.bind(t);st(c).forEach(e),c={},st(u).forEach(e),u={},h.forEach((function(e){t.deleteProgram(e.program)})),h.length=0,f={},n.shaderCount=0},program:function(e,r,i,a){var o=f[r];o||(o=f[r]={});var d=o[e];if(d&&(d.refCount++,!a))return d;var p=new s(r,e);return n.shaderCount++,l(p,i,a),d||(o[e]=p),h.push(p),Q(p,{destroy:function(){if(p.refCount--,0>=p.refCount){t.deleteProgram(p.program);var e=h.indexOf(p);h.splice(e,1),n.shaderCount--}0>=o[p.vertId].refCount&&(t.deleteShader(u[p.vertId]),delete u[p.vertId],delete f[p.fragId][p.vertId]),Object.keys(f[p.fragId]).length||(t.deleteShader(c[p.fragId]),delete c[p.fragId],delete f[p.fragId])}})},restore:function(){c={},u={};for(var t=0;t>2),n=0;n>5]|=(255&t.charCodeAt(n/8))<<24-n%32;var r,i,a,o,s,l,c,u,f,h,d,p=8*t.length;for(t=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225],n=Array(64),e[p>>5]|=128<<24-p%32,e[15+(p+64>>9<<4)]=p,u=0;uf;f++){var g;16>f?n[f]=e[f+u]:(h=f,d=U(d=B(d=n[f-2],17)^B(d,19)^d>>>10,n[f-7]),g=B(g=n[f-15],7)^B(g,18)^g>>>3,n[h]=U(U(d,g),n[f-16])),h=U(U(U(U(c,h=B(h=o,6)^B(h,11)^B(h,25)),o&s^~o&l),Dt[f]),n[f]),d=U(c=B(c=p,2)^B(c,13)^B(c,22),p&r^p&i^r&i),c=l,l=s,s=o,o=U(a,h),a=i,i=r,r=p,p=U(h,d)}t[0]=U(p,t[0]),t[1]=U(r,t[1]),t[2]=U(i,t[2]),t[3]=U(a,t[3]),t[4]=U(o,t[4]),t[5]=U(s,t[5]),t[6]=U(l,t[6]),t[7]=U(c,t[7])}for(e="",n=0;n<32*t.length;n+=8)e+=String.fromCharCode(t[n>>5]>>>24-n%32&255);return e}function j(t){for(var e,n="",r=0;r>>4&15)+"0123456789abcdef".charAt(15&e);return n}function F(t){for(var e,n,r="",i=-1;++i=e&&56320<=n&&57343>=n&&(e=65536+((1023&e)<<10)+(1023&n),i++),127>=e?r+=String.fromCharCode(e):2047>=e?r+=String.fromCharCode(192|e>>>6&31,128|63&e):65535>=e?r+=String.fromCharCode(224|e>>>12&15,128|e>>>6&63,128|63&e):2097151>=e&&(r+=String.fromCharCode(240|e>>>18&7,128|e>>>12&63,128|e>>>6&63,128|63&e));return r}function B(t,e){return t>>>e|t<<32-e}function U(t,e){var n=(65535&t)+(65535&e);return(t>>16)+(e>>16)+(n>>16)<<16|65535&n}function H(t){return Array.prototype.slice.call(t)}function V(t){return H(t).join("")}function q(t){function e(){var t=[],e=[];return Q((function(){t.push.apply(t,H(arguments))}),{def:function(){var n="v"+i++;return e.push(n),0"+e+"?"+i+".constant["+e+"]:0;"})).join(""),"}}else{","if(",s,"(",i,".buffer)){",u,"=",a,".createStream(",34962,",",i,".buffer);","}else{",u,"=",a,".getBuffer(",i,".buffer);","}",f,'="type" in ',i,"?",o.glTypes,"[",i,".type]:",u,".dtype;",l.normalized,"=!!",i,".normalized;"),r("size"),r("offset"),r("stride"),r("divisor"),n("}}"),n.exit("if(",l.isStream,"){",a,".destroyStream(",u,");","}"),l}))})),o}function L(t){var e=t.static,n=t.dynamic,r={};return Object.keys(e).forEach((function(t){var n=e[t];r[t]=X((function(t,e){return"number"===typeof n||"boolean"===typeof n?""+n:t.link(n)}))})),Object.keys(n).forEach((function(t){var e=n[t];r[t]=K(e,(function(t,n){return t.invoke(n,e)}))})),r}function O(t,e,r,i,a){function o(t){var e=l[t];e&&(f[t]=e)}var s=M(t,e),l=T(t,d=_(t,a),a),u=S(t,a),f=E(t,a),h=A(t,a,s);o("viewport"),o(m("scissor.box"));var d,p=0>1)",s],");")}function e(){n(l,".drawArraysInstancedANGLE(",[p,g,v,s],");")}d&&"null"!==d?y?t():(n("if(",d,"){"),t(),n("}else{"),e(),n("}")):e()}function o(){function t(){n(u+".drawElements("+[p,v,m,g+"<<(("+m+"-5121)>>1)"]+");")}function e(){n(u+".drawArrays("+[p,g,v]+");")}d&&"null"!==d?y?t():(n("if(",d,"){"),t(),n("}else{"),e(),n("}")):e()}var s,l,c=t.shared,u=c.gl,f=c.draw,h=r.draw,d=function(){var i=h.elements,a=e;return i?((i.contextDep&&r.contextDynamic||i.propDep)&&(a=n),i=i.append(t,a),h.elementsActive&&a("if("+i+")"+u+".bindBuffer(34963,"+i+".buffer.buffer);")):(i=a.def(),a(i,"=",f,".","elements",";","if(",i,"){",u,".bindBuffer(",34963,",",i,".buffer.buffer);}","else if(",c.vao,".currentVAO){",i,"=",t.shared.elements+".getElements("+c.vao,".currentVAO.elements);",ft?"":"if("+i+")"+u+".bindBuffer(34963,"+i+".buffer.buffer);","}")),i}(),p=i("primitive"),g=i("offset"),v=function(){var i=h.count,a=e;return i?((i.contextDep&&r.contextDynamic||i.propDep)&&(a=n),i=i.append(t,a)):i=a.def(f,".","count"),i}();if("number"===typeof v){if(0===v)return}else n("if(",v,"){"),n.exit("}");lt&&(s=i("instances"),l=t.instancing);var m=d+".type",y=h.elements&&$(h.elements)&&!h.vaoActive;lt&&("number"!==typeof s||0<=s)?"string"===typeof s?(n("if(",s,">0){"),a(),n("}else if(",s,"<0){"),o(),n("}")):a():o()}function H(t,e,n,r,i){return i=(e=x()).proc("body",i),lt&&(e.instancing=i.def(e.shared.extensions,".angle_instanced_arrays")),t(e,i,n,r),e.compile().body}function V(t,e,n,r){N(t,e),n.useVAO?n.drawVAO?e(t.shared.vao,".setVAO(",n.drawVAO.append(t,e),");"):e(t.shared.vao,".setVAO(",t.shared.vao,".targetVAO);"):(e(t.shared.vao,".setVAO(null);"),F(t,e,n,r.attributes,(function(){return!0}))),B(t,e,n,r.uniforms,(function(){return!0}),!1),U(t,e,e,n)}function Z(t,e){var n=t.proc("draw",1);N(t,n),I(t,n,e.context),D(t,n,e.framebuffer),R(t,n,e),z(t,n,e.state),j(t,n,e,!1,!0);var r=e.shader.progVar.append(t,n);if(n(t.shared.gl,".useProgram(",r,".program);"),e.shader.program)V(t,n,e,e.shader.program);else{n(t.shared.vao,".setVAO(null);");var i=t.global.def("{}"),a=n.def(r,".id"),o=n.def(i,"[",a,"]");n(t.cond(o).then(o,".call(this,a0);").else(o,"=",i,"[",a,"]=",t.link((function(n){return H(V,t,e,n,1)})),"(",r,");",o,".call(this,a0);"))}0=--this.refCount&&o(this)},i.profile&&(r.getTotalRenderbufferSize=function(){var t=0;return Object.keys(u).forEach((function(e){t+=u[e].stats.size})),t}),{create:function(e,n){function o(e,n){var r=0,a=0,u=32854;if("object"===typeof e&&e?("shape"in e?(r=0|(a=e.shape)[0],a=0|a[1]):("radius"in e&&(r=a=0|e.radius),"width"in e&&(r=0|e.width),"height"in e&&(a=0|e.height)),"format"in e&&(u=s[e.format])):"number"===typeof e?(r=0|e,a="number"===typeof n?0|n:r):e||(r=a=1),r!==c.width||a!==c.height||u!==c.format)return o.width=c.width=r,o.height=c.height=a,c.format=u,t.bindRenderbuffer(36161,c.renderbuffer),t.renderbufferStorage(36161,u,r,a),i.profile&&(c.stats.size=Pt[c.format]*c.width*c.height),o.format=l[c.format],o}var c=new a(t.createRenderbuffer());return u[c.id]=c,r.renderbufferCount++,o(e,n),o.resize=function(e,n){var r=0|e,a=0|n||r;return r===c.width&&a===c.height||(o.width=c.width=r,o.height=c.height=a,t.bindRenderbuffer(36161,c.renderbuffer),t.renderbufferStorage(36161,c.format,r,a),i.profile&&(c.stats.size=Pt[c.format]*c.width*c.height)),o},o._reglType="renderbuffer",o._renderbuffer=c,i.profile&&(o.stats=c.stats),o.destroy=function(){c.decRef()},o},clear:function(){st(u).forEach(o)},restore:function(){st(u).forEach((function(e){e.renderbuffer=t.createRenderbuffer(),t.bindRenderbuffer(36161,e.renderbuffer),t.renderbufferStorage(36161,e.format,e.width,e.height)})),t.bindRenderbuffer(36161,null)}}},Ot=[];Ot[6408]=4,Ot[6407]=3;var It=[];It[5121]=1,It[5126]=4,It[36193]=2;var Dt=[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],Rt=["x","y","z","w"],zt="blend.func blend.equation stencil.func stencil.opFront stencil.opBack sample.coverage viewport scissor.box polygonOffset.offset".split(" "),Nt={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},jt={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},Ft={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Bt={cw:2304,ccw:2305},Ut=new Y(!1,!1,!1,(function(){})),Ht=function(t,e){function n(){this.endQueryIndex=this.startQueryIndex=-1,this.sum=0,this.stats=null}function r(t,e,r){var i=o.pop()||new n;i.startQueryIndex=t,i.endQueryIndex=e,i.sum=0,i.stats=r,s.push(i)}if(!e.ext_disjoint_timer_query)return null;var i=[],a=[],o=[],s=[],l=[],c=[];return{beginQuery:function(t){var n=i.pop()||e.ext_disjoint_timer_query.createQueryEXT();e.ext_disjoint_timer_query.beginQueryEXT(35007,n),a.push(n),r(a.length-1,a.length,t)},endQuery:function(){e.ext_disjoint_timer_query.endQueryEXT(35007)},pushScopeStats:r,update:function(){var t,n;if(0!==(t=a.length)){c.length=Math.max(c.length,t+1),l.length=Math.max(l.length,t+1),l[0]=0;var r=c[0]=0;for(n=t=0;n=W.length&&r()}var n=J(W,t);W[n]=e}}}function h(){var t=q.viewport,e=q.scissor_box;t[0]=t[1]=e[0]=e[1]=0,C.viewportWidth=C.framebufferWidth=C.drawingBufferWidth=t[2]=e[2]=v.drawingBufferWidth,C.viewportHeight=C.framebufferHeight=C.drawingBufferHeight=t[3]=e[3]=v.drawingBufferHeight}function d(){C.tick+=1,C.time=g(),h(),V.procs.poll()}function p(){B.refresh(),h(),V.procs.refresh(),M&&M.update()}function g(){return(rt()-A)/1e3}if(!(t=c(t)))return null;var v=t.gl,m=v.getContextAttributes();v.isContextLost();var y=u(v,t);if(!y)return null;var b=i(),_={vaoCount:0,bufferCount:0,elementsCount:0,framebufferCount:0,shaderCount:0,textureCount:0,cubeCount:0,renderbufferCount:0,maxTextureUnits:0},k=t.cachedCode||{},T=y.extensions,M=Ht(v,T),A=rt(),S=v.drawingBufferWidth,E=v.drawingBufferHeight,C={tick:0,time:0,viewportWidth:S,viewportHeight:E,framebufferWidth:S,framebufferHeight:E,drawingBufferWidth:S,drawingBufferHeight:E,pixelRatio:t.pixelRatio},P=(S={elements:null,primitive:4,count:-1,offset:0,instances:-1},at(v,T)),I=x(v,_,t,(function(t){return j.destroyBuffer(t)})),N=w(v,T,I,_),j=D(v,T,P,_,I,N,S),F=R(v,b,_,t),B=L(v,T,P,(function(){V.procs.poll()}),C,_,t),U=Lt(v,T,P,_,t),H=O(v,T,P,B,U,_),V=Z(v,b,T,P,I,N,B,H,{},j,F,S,C,M,k,t),q=(b=z(v,H,V.procs.poll,C,m,T,P),V.next),G=v.canvas,W=[],Y=[],$=[],X=[t.onDestroy],K=null;G&&(G.addEventListener("webglcontextlost",a,!1),G.addEventListener("webglcontextrestored",o,!1));var tt=H.setFBO=s({framebuffer:et.define.call(null,1,"framebuffer")});return p(),m=Q(s,{clear:function(t){if("framebuffer"in t)if(t.framebuffer&&"framebufferCube"===t.framebuffer_reglType)for(var e=0;6>e;++e)tt(Q({framebuffer:t.framebuffer.faces[e]},t),l);else tt(t,l);else l(null,t)},prop:et.define.bind(null,1),context:et.define.bind(null,2),this:et.define.bind(null,3),draw:s({}),buffer:function(t){return I.create(t,34962,!1,!1)},elements:function(t){return N.create(t,!1)},texture:B.create2D,cube:B.createCube,renderbuffer:U.create,framebuffer:H.create,framebufferCube:H.createCube,vao:j.createVAO,attributes:m,frame:f,on:function(t,e){var n;switch(t){case"frame":return f(e);case"lost":n=Y;break;case"restore":n=$;break;case"destroy":n=X}return n.push(e),{cancel:function(){for(var t=0;t2?"one of ".concat(e," ").concat(t.slice(0,n-1).join(", "),", or ")+t[n-1]:2===n?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}return"of ".concat(e," ").concat(String(t))}n("ERR_INVALID_OPT_VALUE",(function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'}),TypeError),n("ERR_INVALID_ARG_TYPE",(function(t,e,n){var i,a,o,s;if("string"===typeof e&&(a="not ",e.substr(!o||o<0?0:+o,a.length)===a)?(i="must not be",e=e.replace(/^not /,"")):i="must be",function(t,e,n){return(void 0===n||n>t.length)&&(n=t.length),t.substring(n-e.length,n)===e}(t," argument"))s="The ".concat(t," ").concat(i," ").concat(r(e,"type"));else{var l=function(t,e,n){return"number"!==typeof n&&(n=0),!(n+e.length>t.length)&&-1!==t.indexOf(e,n)}(t,".")?"property":"argument";s='The "'.concat(t,'" ').concat(l," ").concat(i," ").concat(r(e,"type"))}return s+=". Received type ".concat(typeof n)}),TypeError),n("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),n("ERR_METHOD_NOT_IMPLEMENTED",(function(t){return"The "+t+" method is not implemented"})),n("ERR_STREAM_PREMATURE_CLOSE","Premature close"),n("ERR_STREAM_DESTROYED",(function(t){return"Cannot call "+t+" after a stream was destroyed"})),n("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),n("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),n("ERR_STREAM_WRITE_AFTER_END","write after end"),n("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),n("ERR_UNKNOWN_ENCODING",(function(t){return"Unknown encoding: "+t}),TypeError),n("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),t.exports.q=e},37865:function(t,e,n){"use strict";var r=n(90386),i=Object.keys||function(t){var e=[];for(var n in t)e.push(n);return e};t.exports=u;var a=n(40410),o=n(37493);n(42018)(u,a);for(var s=i(o.prototype),l=0;l0)if("string"===typeof e||s.objectMode||Object.getPrototypeOf(e)===l.prototype||(e=function(t){return l.from(t)}(e)),r)s.endEmitted?_(t,new w):S(t,s,e,!0);else if(s.ended)_(t,new b);else{if(s.destroyed)return!1;s.reading=!1,s.decoder&&!n?(e=s.decoder.write(e),s.objectMode||0!==e.length?S(t,s,e,!1):O(t,s)):S(t,s,e,!1)}else r||(s.reading=!1,O(t,s));return!s.ended&&(s.lengthe.highWaterMark&&(e.highWaterMark=function(t){return t>=E?t=E:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function P(t){var e=t._readableState;a("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(a("emitReadable",e.flowing),e.emittedReadable=!0,i.nextTick(L,t))}function L(t){var e=t._readableState;a("emitReadable_",e.destroyed,e.length,e.ended),e.destroyed||!e.length&&!e.ended||(t.emit("readable"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,N(t)}function O(t,e){e.readingMore||(e.readingMore=!0,i.nextTick(I,t,e))}function I(t,e){for(;!e.reading&&!e.ended&&(e.length0,e.resumeScheduled&&!e.paused?e.flowing=!0:t.listenerCount("data")>0&&t.resume()}function R(t){a("readable nexttick read 0"),t.read(0)}function z(t,e){a("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),N(t),e.flowing&&!e.reading&&t.read(0)}function N(t){var e=t._readableState;for(a("flow",e.flowing);e.flowing&&null!==t.read(););}function j(t,e){return 0===e.length?null:(e.objectMode?n=e.buffer.shift():!t||t>=e.length?(n=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.first():e.buffer.concat(e.length),e.buffer.clear()):n=e.buffer.consume(t,e.decoder),n);var n}function F(t){var e=t._readableState;a("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,i.nextTick(B,e,t))}function B(t,e){if(a("endReadableNT",t.endEmitted,t.length),!t.endEmitted&&0===t.length&&(t.endEmitted=!0,e.readable=!1,e.emit("end"),t.autoDestroy)){var n=e._writableState;(!n||n.autoDestroy&&n.finished)&&e.destroy()}}function U(t,e){for(var n=0,r=t.length;n=e.highWaterMark:e.length>0)||e.ended))return a("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?F(this):P(this),null;if(0===(t=C(t,e))&&e.ended)return 0===e.length&&F(this),null;var r,i=e.needReadable;return a("need readable",i),(0===e.length||e.length-t0?j(t,e):null)?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.awaitDrain=0),0===e.length&&(e.ended||(e.needReadable=!0),n!==t&&e.ended&&F(this)),null!==r&&this.emit("data",r),r},M.prototype._read=function(t){_(this,new x("_read()"))},M.prototype.pipe=function(t,e){var n=this,r=this._readableState;switch(r.pipesCount){case 0:r.pipes=t;break;case 1:r.pipes=[r.pipes,t];break;default:r.pipes.push(t)}r.pipesCount+=1,a("pipe count=%d opts=%j",r.pipesCount,e);var s=e&&!1===e.end||t===i.stdout||t===i.stderr?v:c;function l(e,i){a("onunpipe"),e===n&&i&&!1===i.hasUnpiped&&(i.hasUnpiped=!0,a("cleanup"),t.removeListener("close",p),t.removeListener("finish",g),t.removeListener("drain",u),t.removeListener("error",d),t.removeListener("unpipe",l),n.removeListener("end",c),n.removeListener("end",v),n.removeListener("data",h),f=!0,!r.awaitDrain||t._writableState&&!t._writableState.needDrain||u())}function c(){a("onend"),t.end()}r.endEmitted?i.nextTick(s):n.once("end",s),t.on("unpipe",l);var u=function(t){return function(){var e=t._readableState;a("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&o(t,"data")&&(e.flowing=!0,N(t))}}(n);t.on("drain",u);var f=!1;function h(e){a("ondata");var i=t.write(e);a("dest.write",i),!1===i&&((1===r.pipesCount&&r.pipes===t||r.pipesCount>1&&-1!==U(r.pipes,t))&&!f&&(a("false write response, pause",r.awaitDrain),r.awaitDrain++),n.pause())}function d(e){a("onerror",e),v(),t.removeListener("error",d),0===o(t,"error")&&_(t,e)}function p(){t.removeListener("finish",g),v()}function g(){a("onfinish"),t.removeListener("close",p),v()}function v(){a("unpipe"),n.unpipe(t)}return n.on("data",h),function(t,e,n){if("function"===typeof t.prependListener)return t.prependListener(e,n);t._events&&t._events[e]?Array.isArray(t._events[e])?t._events[e].unshift(n):t._events[e]=[n,t._events[e]]:t.on(e,n)}(t,"error",d),t.once("close",p),t.once("finish",g),t.emit("pipe",n),r.flowing||(a("pipe resume"),n.resume()),t},M.prototype.unpipe=function(t){var e=this._readableState,n={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes||(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,n)),this;if(!t){var r=e.pipes,i=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var a=0;a0,!1!==r.flowing&&this.resume()):"readable"===t&&(r.endEmitted||r.readableListening||(r.readableListening=r.needReadable=!0,r.flowing=!1,r.emittedReadable=!1,a("on readable",r.length,r.reading),r.length?P(this):r.reading||i.nextTick(R,this))),n},M.prototype.addListener=M.prototype.on,M.prototype.removeListener=function(t,e){var n=s.prototype.removeListener.call(this,t,e);return"readable"===t&&i.nextTick(D,this),n},M.prototype.removeAllListeners=function(t){var e=s.prototype.removeAllListeners.apply(this,arguments);return"readable"!==t&&void 0!==t||i.nextTick(D,this),e},M.prototype.resume=function(){var t=this._readableState;return t.flowing||(a("resume"),t.flowing=!t.readableListening,function(t,e){e.resumeScheduled||(e.resumeScheduled=!0,i.nextTick(z,t,e))}(this,t)),t.paused=!1,this},M.prototype.pause=function(){return a("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(a("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},M.prototype.wrap=function(t){var e=this,n=this._readableState,r=!1;for(var i in t.on("end",(function(){if(a("wrapped end"),n.decoder&&!n.ended){var t=n.decoder.end();t&&t.length&&e.push(t)}e.push(null)})),t.on("data",(function(i){a("wrapped data"),n.decoder&&(i=n.decoder.write(i)),(!n.objectMode||null!==i&&void 0!==i)&&(n.objectMode||i&&i.length)&&(e.push(i)||(r=!0,t.pause()))})),t)void 0===this[i]&&"function"===typeof t[i]&&(this[i]=function(e){return function(){return t[e].apply(t,arguments)}}(i));for(var o=0;o-1))throw new w(t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(M.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(M.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),M.prototype._write=function(t,e,n){n(new g("_write()"))},M.prototype._writev=null,M.prototype.end=function(t,e,n){var r=this._writableState;return"function"===typeof t?(n=t,t=null,e=null):"function"===typeof e&&(n=e,e=null),null!==t&&void 0!==t&&this.write(t,e),r.corked&&(r.corked=1,this.uncork()),r.ending||function(t,e,n){e.ending=!0,L(t,e),n&&(e.finished?i.nextTick(n):t.once("finish",n)),e.ended=!0,t.writable=!1}(this,r,n),this},Object.defineProperty(M.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(M.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}}),M.prototype.destroy=f.destroy,M.prototype._undestroy=f.undestroy,M.prototype._destroy=function(t,e){e(t)}},68221:function(t,e,n){"use strict";var r,i=n(90386);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var o=n(12726),s=Symbol("lastResolve"),l=Symbol("lastReject"),c=Symbol("error"),u=Symbol("ended"),f=Symbol("lastPromise"),h=Symbol("handlePromise"),d=Symbol("stream");function p(t,e){return{value:t,done:e}}function g(t){var e=t[s];if(null!==e){var n=t[d].read();null!==n&&(t[f]=null,t[s]=null,t[l]=null,e(p(n,!1)))}}function v(t){i.nextTick(g,t)}var m=Object.getPrototypeOf((function(){})),y=Object.setPrototypeOf((a(r={get stream(){return this[d]},next:function(){var t=this,e=this[c];if(null!==e)return Promise.reject(e);if(this[u])return Promise.resolve(p(void 0,!0));if(this[d].destroyed)return new Promise((function(e,n){i.nextTick((function(){t[c]?n(t[c]):e(p(void 0,!0))}))}));var n,r=this[f];if(r)n=new Promise(function(t,e){return function(n,r){t.then((function(){e[u]?n(p(void 0,!0)):e[h](n,r)}),r)}}(r,this));else{var a=this[d].read();if(null!==a)return Promise.resolve(p(a,!1));n=new Promise(this[h])}return this[f]=n,n}},Symbol.asyncIterator,(function(){return this})),a(r,"return",(function(){var t=this;return new Promise((function(e,n){t[d].destroy(null,(function(t){t?n(t):e(p(void 0,!0))}))}))})),r),m);t.exports=function(t){var e,n=Object.create(y,(a(e={},d,{value:t,writable:!0}),a(e,s,{value:null,writable:!0}),a(e,l,{value:null,writable:!0}),a(e,c,{value:null,writable:!0}),a(e,u,{value:t._readableState.endEmitted,writable:!0}),a(e,h,{value:function(t,e){var r=n[d].read();r?(n[f]=null,n[s]=null,n[l]=null,t(p(r,!1))):(n[s]=t,n[l]=e)},writable:!0}),e));return n[f]=null,o(t,(function(t){if(t&&"ERR_STREAM_PREMATURE_CLOSE"!==t.code){var e=n[l];return null!==e&&(n[f]=null,n[s]=null,n[l]=null,e(t)),void(n[c]=t)}var r=n[s];null!==r&&(n[f]=null,n[s]=null,n[l]=null,r(p(void 0,!0))),n[u]=!0})),t.on("readable",v.bind(null,n)),n}},31125:function(t,e,n){"use strict";function r(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function i(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function a(t,e){for(var n=0;n0?this.tail.next=e:this.head=e,this.tail=e,++this.length}},{key:"unshift",value:function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length}},{key:"shift",value:function(){if(0!==this.length){var t=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,t}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(t){if(0===this.length)return"";for(var e=this.head,n=""+e.data;e=e.next;)n+=t+e.data;return n}},{key:"concat",value:function(t){if(0===this.length)return o.alloc(0);for(var e,n,r,i=o.allocUnsafe(t>>>0),a=this.head,s=0;a;)e=a.data,n=i,r=s,o.prototype.copy.call(e,n,r),s+=a.data.length,a=a.next;return i}},{key:"consume",value:function(t,e){var n;return ti.length?i.length:t;if(a===i.length?r+=i:r+=i.slice(0,t),0===(t-=a)){a===i.length?(++n,e.next?this.head=e.next:this.head=this.tail=null):(this.head=e,e.data=i.slice(a));break}++n}return this.length-=n,r}},{key:"_getBuffer",value:function(t){var e=o.allocUnsafe(t),n=this.head,r=1;for(n.data.copy(e),t-=n.data.length;n=n.next;){var i=n.data,a=t>i.length?i.length:t;if(i.copy(e,e.length-t,0,a),0===(t-=a)){a===i.length?(++r,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=i.slice(a));break}++r}return this.length-=r,e}},{key:l,value:function(t,e){return s(this,function(t){for(var e=1;e0,(function(t){u||(u=t),t&&h.forEach(l),a||(h.forEach(l),f(u))}))}));return e.reduce(c)}},56306:function(t,e,n){"use strict";var r=n(74322).q.ERR_INVALID_OPT_VALUE;t.exports={getHighWaterMark:function(t,e,n,i){var a=function(t,e,n){return null!=t.highWaterMark?t.highWaterMark:e?t[n]:null}(e,i,n);if(null!=a){if(!isFinite(a)||Math.floor(a)!==a||a<0)throw new r(i?n:"highWaterMark",a);return Math.floor(a)}return t.objectMode?16:16384}}},71405:function(t,e,n){t.exports=n(15398).EventEmitter},68019:function(t,e,n){"use strict";var r=n(71665).Buffer,i=r.isEncoding||function(t){switch((t=""+t)&&t.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 a(t){var e;switch(this.encoding=function(t){var e=function(t){if(!t)return"utf8";for(var e;;)switch(t){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 t;default:if(e)return;t=(""+t).toLowerCase(),e=!0}}(t);if("string"!==typeof e&&(r.isEncoding===i||!i(t)))throw new Error("Unknown encoding: "+t);return e||t}(t),this.encoding){case"utf16le":this.text=l,this.end=c,e=4;break;case"utf8":this.fillLast=s,e=4;break;case"base64":this.text=u,this.end=f,e=3;break;default:return this.write=h,void(this.end=d)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(e)}function o(t){return t<=127?0:t>>5===6?2:t>>4===14?3:t>>3===30?4:t>>6===2?-1:-2}function s(t){var e=this.lastTotal-this.lastNeed,n=function(t,e,n){if(128!==(192&e[0]))return t.lastNeed=0,"\ufffd";if(t.lastNeed>1&&e.length>1){if(128!==(192&e[1]))return t.lastNeed=1,"\ufffd";if(t.lastNeed>2&&e.length>2&&128!==(192&e[2]))return t.lastNeed=2,"\ufffd"}}(this,t);return void 0!==n?n:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function l(t,e){if((t.length-e)%2===0){var n=t.toString("utf16le",e);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function c(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,n)}return e}function u(t,e){var n=(t.length-e)%3;return 0===n?t.toString("base64",e):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-n))}function f(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function h(t){return t.toString(this.encoding)}function d(t){return t&&t.length?this.write(t):""}e.s=a,a.prototype.write=function(t){if(0===t.length)return"";var e,n;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0?(i>0&&(t.lastNeed=i-1),i):--r=0?(i>0&&(t.lastNeed=i-2),i):--r=0?(i>0&&(2===i?i=0:t.lastNeed=i-3),i):0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=n;var r=t.length-(n-this.lastNeed);return t.copy(this.lastChar,0,r),t.toString("utf8",e,r)},a.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},90715:function(t,e,n){var r=n(32791),i=n(41633)("stream-parser");t.exports=function(t){var e=t&&"function"==typeof t._transform,n=t&&"function"==typeof t._write;if(!e&&!n)throw new Error("must pass a Writable or Transform stream in");i("extending Parser into stream"),t._bytes=u,t._skipBytes=f,e&&(t._passthrough=h),e?t._transform=p:t._write=d};var a=-1,o=0,s=1,l=2;function c(t){i("initializing parser stream"),t._parserBytesLeft=0,t._parserBuffers=[],t._parserBuffered=0,t._parserState=a,t._parserCallback=null,"function"==typeof t.push&&(t._parserOutput=t.push.bind(t)),t._parserInit=!0}function u(t,e){r(!this._parserCallback,'there is already a "callback" set!'),r(isFinite(t)&&t>0,'can only buffer a finite number of bytes > 0, got "'+t+'"'),this._parserInit||c(this),i("buffering %o bytes",t),this._parserBytesLeft=t,this._parserCallback=e,this._parserState=o}function f(t,e){r(!this._parserCallback,'there is already a "callback" set!'),r(t>0,'can only skip > 0 bytes, got "'+t+'"'),this._parserInit||c(this),i("skipping %o bytes",t),this._parserBytesLeft=t,this._parserCallback=e,this._parserState=s}function h(t,e){r(!this._parserCallback,'There is already a "callback" set!'),r(t>0,'can only pass through > 0 bytes, got "'+t+'"'),this._parserInit||c(this),i("passing through %o bytes",t),this._parserBytesLeft=t,this._parserCallback=e,this._parserState=l}function d(t,e,n){this._parserInit||c(this),i("write(%o bytes)",t.length),"function"==typeof e&&(n=e),v(this,t,null,n)}function p(t,e,n){this._parserInit||c(this),i("transform(%o bytes)",t.length),"function"!=typeof e&&(e=this._parserOutput),v(this,t,e,n)}function g(t,e,n,r){if(t._parserBytesLeft-=e.length,i("%o bytes left for stream piece",t._parserBytesLeft),t._parserState===o?(t._parserBuffers.push(e),t._parserBuffered+=e.length):t._parserState===l&&n(e),0!==t._parserBytesLeft)return r;var s=t._parserCallback;if(s&&t._parserState===o&&t._parserBuffers.length>1&&(e=Buffer.concat(t._parserBuffers,t._parserBuffered)),t._parserState!==o&&(e=null),t._parserCallback=null,t._parserBuffered=0,t._parserState=a,t._parserBuffers.splice(0),s){var c=[];e&&c.push(e),n&&c.push(n);var u=s.length>c.length;u&&c.push(m(r));var f=s.apply(t,c);if(!u||r===f)return r}}var v=m((function t(e,n,r,i){return e._parserBytesLeft<=0?i(new Error("got data but not currently parsing anything")):n.length<=e._parserBytesLeft?function(){return g(e,n,r,i)}:function(){var a=n.slice(0,e._parserBytesLeft);return g(e,a,r,(function(o){return o?i(o):n.length>a.length?function(){return t(e,n.slice(a.length),r,i)}:void 0}))}}));function m(t){return function(){for(var e=t.apply(this,arguments);"function"==typeof e;)e=e();return e}}},41633:function(t,e,n){var r=n(90386);function i(){var t;try{t=e.storage.debug}catch(n){}return!t&&"undefined"!==typeof r&&"env"in r&&(t=r.env.DEBUG),t}(e=t.exports=n(74469)).log=function(){return"object"===typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)},e.formatArgs=function(t){var n=this.useColors;if(t[0]=(n?"%c":"")+this.namespace+(n?" %c":" ")+t[0]+(n?"%c ":" ")+"+"+e.humanize(this.diff),n){var r="color: "+this.color;t.splice(1,0,r,"color: inherit");var i=0,a=0;t[0].replace(/%[a-zA-Z%]/g,(function(t){"%%"!==t&&(i++,"%c"===t&&(a=i))})),t.splice(a,0,r)}},e.save=function(t){try{null==t?e.storage.removeItem("debug"):e.storage.debug=t}catch(n){}},e.load=i,e.useColors=function(){return!("undefined"===typeof window||!window.process||"renderer"!==window.process.type)||("undefined"!==typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!==typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!==typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!==typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},e.storage="undefined"!=typeof chrome&&"undefined"!=typeof chrome.storage?chrome.storage.local:function(){try{return window.localStorage}catch(t){}}(),e.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"],e.formatters.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}},e.enable(i())},74469:function(t,e,n){var r;function i(t){function n(){if(n.enabled){var t=n,i=+new Date,a=i-(r||i);t.diff=a,t.prev=r,t.curr=i,r=i;for(var o=new Array(arguments.length),s=0;s0)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 s=parseFloat(o[1]);switch((o[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return s*a;case"days":case"day":case"d":return s*i;case"hours":case"hour":case"hrs":case"hr":case"h":return s*r;case"minutes":case"minute":case"mins":case"min":case"m":return s*n;case"seconds":case"second":case"secs":case"sec":case"s":return s*e;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}}}(t);if("number"===c&&!1===isNaN(t))return s.long?o(l=t,i,"day")||o(l,r,"hour")||o(l,n,"minute")||o(l,e,"second")||l+" ms":function(t){return t>=i?Math.round(t/i)+"d":t>=r?Math.round(t/r)+"h":t>=n?Math.round(t/n)+"m":t>=e?Math.round(t/e)+"s":t+"ms"}(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))}},99011:function(t,e,n){"use strict";var r=n(88641);t.exports=function(t,e,n){if(null==t)throw Error("First argument should be a string");if(null==e)throw Error("Separator should be a string or a RegExp");n?("string"===typeof n||Array.isArray(n))&&(n={ignore:n}):n={},null==n.escape&&(n.escape=!0),null==n.ignore?n.ignore=["[]","()","{}","<>",'""',"''","``","\u201c\u201d","\xab\xbb"]:("string"===typeof n.ignore&&(n.ignore=[n.ignore]),n.ignore=n.ignore.map((function(t){return 1===t.length&&(t+=t),t})));var i=r.parse(t,{flat:!0,brackets:n.ignore}),a=i[0].split(e);if(n.escape){for(var o=[],s=0;s0;){e=c[c.length-1];var d=t[e];if(a[e]=0&&s[e].push(o[g])}a[e]=p}else{if(r[e]===n[e]){var v=[],m=[],y=0;for(p=l.length-1;p>=0;--p){var b=l[p];if(i[b]=!1,v.push(b),m.push(s[b]),y+=s[b].length,o[b]=f.length,b===e){l.length=p;break}}f.push(v);var x=new Array(y);for(p=0;p1&&(i=1),i<-1&&(i=-1),(t*r-e*n<0?-1:1)*Math.acos(i)};e.default=function(t){var e=t.px,n=t.py,l=t.cx,c=t.cy,u=t.rx,f=t.ry,h=t.xAxisRotation,d=void 0===h?0:h,p=t.largeArcFlag,g=void 0===p?0:p,v=t.sweepFlag,m=void 0===v?0:v,y=[];if(0===u||0===f)return[];var b=Math.sin(d*i/360),x=Math.cos(d*i/360),w=x*(e-l)/2+b*(n-c)/2,_=-b*(e-l)/2+x*(n-c)/2;if(0===w&&0===_)return[];u=Math.abs(u),f=Math.abs(f);var k=Math.pow(w,2)/Math.pow(u,2)+Math.pow(_,2)/Math.pow(f,2);k>1&&(u*=Math.sqrt(k),f*=Math.sqrt(k));var T=function(t,e,n,r,a,o,l,c,u,f,h,d){var p=Math.pow(a,2),g=Math.pow(o,2),v=Math.pow(h,2),m=Math.pow(d,2),y=p*g-p*m-g*v;y<0&&(y=0),y/=p*m+g*v;var b=(y=Math.sqrt(y)*(l===c?-1:1))*a/o*d,x=y*-o/a*h,w=f*b-u*x+(t+n)/2,_=u*b+f*x+(e+r)/2,k=(h-b)/a,T=(d-x)/o,M=(-h-b)/a,A=(-d-x)/o,S=s(1,0,k,T),E=s(k,T,M,A);return 0===c&&E>0&&(E-=i),1===c&&E<0&&(E+=i),[w,_,S,E]}(e,n,l,c,u,f,g,m,b,x,w,_),M=r(T,4),A=M[0],S=M[1],E=M[2],C=M[3],P=Math.abs(C)/(i/4);Math.abs(1-P)<1e-7&&(P=1);var L=Math.max(Math.ceil(P),1);C/=L;for(var O=0;Oe[2]&&(e[2]=c[u+0]),c[u+1]>e[3]&&(e[3]=c[u+1]);return e}},29988:function(t,e,n){"use strict";t.exports=function(t){for(var e,n=[],o=0,s=0,l=0,c=0,u=null,f=null,h=0,d=0,p=0,g=t.length;p4?(o=v[v.length-4],s=v[v.length-3]):(o=h,s=d),n.push(v)}return n};var r=n(7095);function i(t,e,n,r){return["C",t,e,n,r,n,r]}function a(t,e,n,r,i,a){return["C",t/3+2/3*n,e/3+2/3*r,i/3+2/3*n,a/3+2/3*r,i,a]}},82019:function(t,e,n){"use strict";var r,i=n(1750),a=n(95616),o=n(31457),s=n(89546),l=n(44781),c=document.createElement("canvas"),u=c.getContext("2d");t.exports=function(t,e){if(!s(t))throw Error("Argument should be valid svg path string");var n,f;e||(e={}),e.shape?(n=e.shape[0],f=e.shape[1]):(n=c.width=e.w||e.width||200,f=c.height=e.h||e.height||200);var h=Math.min(n,f),d=e.stroke||0,p=e.viewbox||e.viewBox||i(t),g=[n/(p[2]-p[0]),f/(p[3]-p[1])],v=Math.min(g[0]||0,g[1]||0)/2;if(u.fillStyle="black",u.fillRect(0,0,n,f),u.fillStyle="white",d&&("number"!=typeof d&&(d=1),u.strokeStyle=d>0?"white":"black",u.lineWidth=Math.abs(d)),u.translate(.5*n,.5*f),u.scale(v,v),function(){if(null!=r)return r;var t=document.createElement("canvas").getContext("2d");if(t.canvas.width=t.canvas.height=1,!window.Path2D)return r=!1;var e=new Path2D("M0,0h1v1h-1v-1Z");t.fillStyle="black",t.fill(e);var n=t.getImageData(0,0,1,1);return r=n&&n.data&&255===n.data[3]}()){var m=new Path2D(t);u.fill(m),d&&u.stroke(m)}else{var y=a(t);o(u,y),u.fill(),d&&u.stroke()}return u.setTransform(1,0,0,1,0,0),l(u,{cutoff:null!=e.cutoff?e.cutoff:.5,radius:null!=e.radius?e.radius:.5*h})}},84267:function(t,e,n){var r;!function(i){var a=/^\s+/,o=/\s+$/,s=0,l=i.round,c=i.min,u=i.max,f=i.random;function h(t,e){if(e=e||{},(t=t||"")instanceof h)return t;if(!(this instanceof h))return new h(t,e);var n=function(t){var e,n,r,s={r:0,g:0,b:0},l=1,f=null,h=null,d=null,p=!1,g=!1;return"string"==typeof t&&(t=function(t){t=t.replace(a,"").replace(o,"").toLowerCase();var e,n=!1;if(P[t])t=P[t],n=!0;else if("transparent"==t)return{r:0,g:0,b:0,a:0,format:"name"};return(e=B.rgb.exec(t))?{r:e[1],g:e[2],b:e[3]}:(e=B.rgba.exec(t))?{r:e[1],g:e[2],b:e[3],a:e[4]}:(e=B.hsl.exec(t))?{h:e[1],s:e[2],l:e[3]}:(e=B.hsla.exec(t))?{h:e[1],s:e[2],l:e[3],a:e[4]}:(e=B.hsv.exec(t))?{h:e[1],s:e[2],v:e[3]}:(e=B.hsva.exec(t))?{h:e[1],s:e[2],v:e[3],a:e[4]}:(e=B.hex8.exec(t))?{r:R(e[1]),g:R(e[2]),b:R(e[3]),a:F(e[4]),format:n?"name":"hex8"}:(e=B.hex6.exec(t))?{r:R(e[1]),g:R(e[2]),b:R(e[3]),format:n?"name":"hex"}:(e=B.hex4.exec(t))?{r:R(e[1]+""+e[1]),g:R(e[2]+""+e[2]),b:R(e[3]+""+e[3]),a:F(e[4]+""+e[4]),format:n?"name":"hex8"}:!!(e=B.hex3.exec(t))&&{r:R(e[1]+""+e[1]),g:R(e[2]+""+e[2]),b:R(e[3]+""+e[3]),format:n?"name":"hex"}}(t)),"object"==typeof t&&(U(t.r)&&U(t.g)&&U(t.b)?(e=t.r,n=t.g,r=t.b,s={r:255*I(e,255),g:255*I(n,255),b:255*I(r,255)},p=!0,g="%"===String(t.r).substr(-1)?"prgb":"rgb"):U(t.h)&&U(t.s)&&U(t.v)?(f=N(t.s),h=N(t.v),s=function(t,e,n){t=6*I(t,360),e=I(e,100),n=I(n,100);var r=i.floor(t),a=t-r,o=n*(1-e),s=n*(1-a*e),l=n*(1-(1-a)*e),c=r%6,u=[n,s,o,o,l,n][c],f=[l,n,n,s,o,o][c],h=[o,o,l,n,n,s][c];return{r:255*u,g:255*f,b:255*h}}(t.h,f,h),p=!0,g="hsv"):U(t.h)&&U(t.s)&&U(t.l)&&(f=N(t.s),d=N(t.l),s=function(t,e,n){var r,i,a;function o(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+6*(e-t)*n:n<.5?e:n<2/3?t+(e-t)*(2/3-n)*6:t}if(t=I(t,360),e=I(e,100),n=I(n,100),0===e)r=i=a=n;else{var s=n<.5?n*(1+e):n+e-n*e,l=2*n-s;r=o(l,s,t+1/3),i=o(l,s,t),a=o(l,s,t-1/3)}return{r:255*r,g:255*i,b:255*a}}(t.h,f,d),p=!0,g="hsl"),t.hasOwnProperty("a")&&(l=t.a)),l=O(l),{ok:p,format:t.format||g,r:c(255,u(s.r,0)),g:c(255,u(s.g,0)),b:c(255,u(s.b,0)),a:l}}(t);this._originalInput=t,this._r=n.r,this._g=n.g,this._b=n.b,this._a=n.a,this._roundA=l(100*this._a)/100,this._format=e.format||n.format,this._gradientType=e.gradientType,this._r<1&&(this._r=l(this._r)),this._g<1&&(this._g=l(this._g)),this._b<1&&(this._b=l(this._b)),this._ok=n.ok,this._tc_id=s++}function d(t,e,n){t=I(t,255),e=I(e,255),n=I(n,255);var r,i,a=u(t,e,n),o=c(t,e,n),s=(a+o)/2;if(a==o)r=i=0;else{var l=a-o;switch(i=s>.5?l/(2-a-o):l/(a+o),a){case t:r=(e-n)/l+(e>1)+720)%360;--e;)r.h=(r.h+i)%360,a.push(h(r));return a}function C(t,e){e=e||6;for(var n=h(t).toHsv(),r=n.h,i=n.s,a=n.v,o=[],s=1/e;e--;)o.push(h({h:r,s:i,v:a})),a=(a+s)%1;return o}h.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},getLuminance:function(){var t,e,n,r=this.toRgb();return t=r.r/255,e=r.g/255,n=r.b/255,.2126*(t<=.03928?t/12.92:i.pow((t+.055)/1.055,2.4))+.7152*(e<=.03928?e/12.92:i.pow((e+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:i.pow((n+.055)/1.055,2.4))},setAlpha:function(t){return this._a=O(t),this._roundA=l(100*this._a)/100,this},toHsv:function(){var t=p(this._r,this._g,this._b);return{h:360*t.h,s:t.s,v:t.v,a:this._a}},toHsvString:function(){var t=p(this._r,this._g,this._b),e=l(360*t.h),n=l(100*t.s),r=l(100*t.v);return 1==this._a?"hsv("+e+", "+n+"%, "+r+"%)":"hsva("+e+", "+n+"%, "+r+"%, "+this._roundA+")"},toHsl:function(){var t=d(this._r,this._g,this._b);return{h:360*t.h,s:t.s,l:t.l,a:this._a}},toHslString:function(){var t=d(this._r,this._g,this._b),e=l(360*t.h),n=l(100*t.s),r=l(100*t.l);return 1==this._a?"hsl("+e+", "+n+"%, "+r+"%)":"hsla("+e+", "+n+"%, "+r+"%, "+this._roundA+")"},toHex:function(t){return g(this._r,this._g,this._b,t)},toHexString:function(t){return"#"+this.toHex(t)},toHex8:function(t){return function(t,e,n,r,i){var a=[z(l(t).toString(16)),z(l(e).toString(16)),z(l(n).toString(16)),z(j(r))];return i&&a[0].charAt(0)==a[0].charAt(1)&&a[1].charAt(0)==a[1].charAt(1)&&a[2].charAt(0)==a[2].charAt(1)&&a[3].charAt(0)==a[3].charAt(1)?a[0].charAt(0)+a[1].charAt(0)+a[2].charAt(0)+a[3].charAt(0):a.join("")}(this._r,this._g,this._b,this._a,t)},toHex8String:function(t){return"#"+this.toHex8(t)},toRgb:function(){return{r:l(this._r),g:l(this._g),b:l(this._b),a:this._a}},toRgbString:function(){return 1==this._a?"rgb("+l(this._r)+", "+l(this._g)+", "+l(this._b)+")":"rgba("+l(this._r)+", "+l(this._g)+", "+l(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:l(100*I(this._r,255))+"%",g:l(100*I(this._g,255))+"%",b:l(100*I(this._b,255))+"%",a:this._a}},toPercentageRgbString:function(){return 1==this._a?"rgb("+l(100*I(this._r,255))+"%, "+l(100*I(this._g,255))+"%, "+l(100*I(this._b,255))+"%)":"rgba("+l(100*I(this._r,255))+"%, "+l(100*I(this._g,255))+"%, "+l(100*I(this._b,255))+"%, "+this._roundA+")"},toName:function(){return 0===this._a?"transparent":!(this._a<1)&&(L[g(this._r,this._g,this._b,!0)]||!1)},toFilter:function(t){var e="#"+v(this._r,this._g,this._b,this._a),n=e,r=this._gradientType?"GradientType = 1, ":"";if(t){var i=h(t);n="#"+v(i._r,i._g,i._b,i._a)}return"progid:DXImageTransform.Microsoft.gradient("+r+"startColorstr="+e+",endColorstr="+n+")"},toString:function(t){var e=!!t;t=t||this._format;var n=!1,r=this._a<1&&this._a>=0;return e||!r||"hex"!==t&&"hex6"!==t&&"hex3"!==t&&"hex4"!==t&&"hex8"!==t&&"name"!==t?("rgb"===t&&(n=this.toRgbString()),"prgb"===t&&(n=this.toPercentageRgbString()),"hex"!==t&&"hex6"!==t||(n=this.toHexString()),"hex3"===t&&(n=this.toHexString(!0)),"hex4"===t&&(n=this.toHex8String(!0)),"hex8"===t&&(n=this.toHex8String()),"name"===t&&(n=this.toName()),"hsl"===t&&(n=this.toHslString()),"hsv"===t&&(n=this.toHsvString()),n||this.toHexString()):"name"===t&&0===this._a?this.toName():this.toRgbString()},clone:function(){return h(this.toString())},_applyModification:function(t,e){var n=t.apply(null,[this].concat([].slice.call(e)));return this._r=n._r,this._g=n._g,this._b=n._b,this.setAlpha(n._a),this},lighten:function(){return this._applyModification(x,arguments)},brighten:function(){return this._applyModification(w,arguments)},darken:function(){return this._applyModification(_,arguments)},desaturate:function(){return this._applyModification(m,arguments)},saturate:function(){return this._applyModification(y,arguments)},greyscale:function(){return this._applyModification(b,arguments)},spin:function(){return this._applyModification(k,arguments)},_applyCombination:function(t,e){return t.apply(null,[this].concat([].slice.call(e)))},analogous:function(){return this._applyCombination(E,arguments)},complement:function(){return this._applyCombination(T,arguments)},monochromatic:function(){return this._applyCombination(C,arguments)},splitcomplement:function(){return this._applyCombination(S,arguments)},triad:function(){return this._applyCombination(M,arguments)},tetrad:function(){return this._applyCombination(A,arguments)}},h.fromRatio=function(t,e){if("object"==typeof t){var n={};for(var r in t)t.hasOwnProperty(r)&&(n[r]="a"===r?t[r]:N(t[r]));t=n}return h(t,e)},h.equals=function(t,e){return!(!t||!e)&&h(t).toRgbString()==h(e).toRgbString()},h.random=function(){return h.fromRatio({r:f(),g:f(),b:f()})},h.mix=function(t,e,n){n=0===n?0:n||50;var r=h(t).toRgb(),i=h(e).toRgb(),a=n/100;return h({r:(i.r-r.r)*a+r.r,g:(i.g-r.g)*a+r.g,b:(i.b-r.b)*a+r.b,a:(i.a-r.a)*a+r.a})},h.readability=function(t,e){var n=h(t),r=h(e);return(i.max(n.getLuminance(),r.getLuminance())+.05)/(i.min(n.getLuminance(),r.getLuminance())+.05)},h.isReadable=function(t,e,n){var r,i,a=h.readability(t,e);switch(i=!1,(r=function(t){var e,n;return e=((t=t||{level:"AA",size:"small"}).level||"AA").toUpperCase(),n=(t.size||"small").toLowerCase(),"AA"!==e&&"AAA"!==e&&(e="AA"),"small"!==n&&"large"!==n&&(n="small"),{level:e,size:n}}(n)).level+r.size){case"AAsmall":case"AAAlarge":i=a>=4.5;break;case"AAlarge":i=a>=3;break;case"AAAsmall":i=a>=7}return i},h.mostReadable=function(t,e,n){var r,i,a,o,s=null,l=0;i=(n=n||{}).includeFallbackColors,a=n.level,o=n.size;for(var c=0;cl&&(l=r,s=h(e[c]));return h.isReadable(t,s,{level:a,size:o})||!i?s:(n.includeFallbackColors=!1,h.mostReadable(t,["#fff","#000"],n))};var P=h.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"},L=h.hexNames=function(t){var e={};for(var n in t)t.hasOwnProperty(n)&&(e[t[n]]=n);return e}(P);function O(t){return t=parseFloat(t),(isNaN(t)||t<0||t>1)&&(t=1),t}function I(t,e){(function(t){return"string"==typeof t&&-1!=t.indexOf(".")&&1===parseFloat(t)})(t)&&(t="100%");var n=function(t){return"string"===typeof t&&-1!=t.indexOf("%")}(t);return t=c(e,u(0,parseFloat(t))),n&&(t=parseInt(t*e,10)/100),i.abs(t-e)<1e-6?1:t%e/parseFloat(e)}function D(t){return c(1,u(0,t))}function R(t){return parseInt(t,16)}function z(t){return 1==t.length?"0"+t:""+t}function N(t){return t<=1&&(t=100*t+"%"),t}function j(t){return i.round(255*parseFloat(t)).toString(16)}function F(t){return R(t)/255}var B=function(){var t="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)",e="[\\s|\\(]+("+t+")[,|\\s]+("+t+")[,|\\s]+("+t+")\\s*\\)?",n="[\\s|\\(]+("+t+")[,|\\s]+("+t+")[,|\\s]+("+t+")[,|\\s]+("+t+")\\s*\\)?";return{CSS_UNIT:new RegExp(t),rgb:new RegExp("rgb"+e),rgba:new RegExp("rgba"+n),hsl:new RegExp("hsl"+e),hsla:new RegExp("hsla"+n),hsv:new RegExp("hsv"+e),hsva:new RegExp("hsva"+n),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 U(t){return!!B.CSS_UNIT.exec(t)}t.exports?t.exports=h:void 0===(r=function(){return h}.call(e,n,e,t))||(t.exports=r)}(Math)},57060:function(t){"use strict";t.exports=n,t.exports.float32=t.exports.float=n,t.exports.fract32=t.exports.fract=function(t,e){if(t.length){if(t instanceof Float32Array)return new Float32Array(t.length);e instanceof Float32Array||(e=n(t));for(var r=0,i=e.length;r":(e.length>100&&(e=e.slice(0,99)+"\u2026"),e=e.replace(i,(function(t){switch(t){case"\n":return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}})))}},47403:function(t,e,n){"use strict";var r=n(24582),i={object:!0,function:!0,undefined:!0};t.exports=function(t){return!!r(t)&&hasOwnProperty.call(i,typeof t)}},82527:function(t,e,n){"use strict";var r=n(69190),i=n(84985);t.exports=function(t){return i(t)?t:r(t,"%v is not a plain function",arguments[1])}},84985:function(t,e,n){"use strict";var r=n(73116),i=/^\s*class[\s{/}]/,a=Function.prototype.toString;t.exports=function(t){return!!r(t)&&!i.test(a.call(t))}},24511:function(t,e,n){"use strict";var r=n(47403);t.exports=function(t){if(!r(t))return!1;try{return!!t.constructor&&t.constructor.prototype===t}catch(e){return!1}}},9234:function(t,e,n){"use strict";var r=n(24582),i=n(47403),a=Object.prototype.toString;t.exports=function(t){if(!r(t))return null;if(i(t)){var e=t.toString;if("function"!==typeof e)return null;if(e===a)return null}try{return""+t}catch(n){return null}}},10424:function(t,e,n){"use strict";var r=n(69190),i=n(24582);t.exports=function(t){return i(t)?t:r(t,"Cannot use %v",arguments[1])}},24582:function(t){"use strict";t.exports=function(t){return void 0!==t&&null!==t}},58404:function(t,e,n){"use strict";var r=n(13547),i=n(12129),a=n(12856).Buffer;n.g.__TYPEDARRAY_POOL||(n.g.__TYPEDARRAY_POOL={UINT8:i([32,0]),UINT16:i([32,0]),UINT32:i([32,0]),BIGUINT64:i([32,0]),INT8:i([32,0]),INT16:i([32,0]),INT32:i([32,0]),BIGINT64:i([32,0]),FLOAT:i([32,0]),DOUBLE:i([32,0]),DATA:i([32,0]),UINT8C:i([32,0]),BUFFER:i([32,0])});var o="undefined"!==typeof Uint8ClampedArray,s="undefined"!==typeof BigUint64Array,l="undefined"!==typeof BigInt64Array,c=n.g.__TYPEDARRAY_POOL;c.UINT8C||(c.UINT8C=i([32,0])),c.BIGUINT64||(c.BIGUINT64=i([32,0])),c.BIGINT64||(c.BIGINT64=i([32,0])),c.BUFFER||(c.BUFFER=i([32,0]));var u=c.DATA,f=c.BUFFER;function h(t){if(t){var e=t.length||t.byteLength,n=r.log2(e);u[n].push(t)}}function d(t){t=r.nextPow2(t);var e=r.log2(t),n=u[e];return n.length>0?n.pop():new ArrayBuffer(t)}function p(t){return new Uint8Array(d(t),0,t)}function g(t){return new Uint16Array(d(2*t),0,t)}function v(t){return new Uint32Array(d(4*t),0,t)}function m(t){return new Int8Array(d(t),0,t)}function y(t){return new Int16Array(d(2*t),0,t)}function b(t){return new Int32Array(d(4*t),0,t)}function x(t){return new Float32Array(d(4*t),0,t)}function w(t){return new Float64Array(d(8*t),0,t)}function _(t){return o?new Uint8ClampedArray(d(t),0,t):p(t)}function k(t){return s?new BigUint64Array(d(8*t),0,t):null}function T(t){return l?new BigInt64Array(d(8*t),0,t):null}function M(t){return new DataView(d(t),0,t)}function A(t){t=r.nextPow2(t);var e=r.log2(t),n=f[e];return n.length>0?n.pop():new a(t)}e.free=function(t){if(a.isBuffer(t))f[r.log2(t.length)].push(t);else{if("[object ArrayBuffer]"!==Object.prototype.toString.call(t)&&(t=t.buffer),!t)return;var e=t.length||t.byteLength,n=0|r.log2(e);u[n].push(t)}},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(t){h(t.buffer)},e.freeArrayBuffer=h,e.freeBuffer=function(t){f[r.log2(t.length)].push(t)},e.malloc=function(t,e){if(void 0===e||"arraybuffer"===e)return d(t);switch(e){case"uint8":return p(t);case"uint16":return g(t);case"uint32":return v(t);case"int8":return m(t);case"int16":return y(t);case"int32":return b(t);case"float":case"float32":return x(t);case"double":case"float64":return w(t);case"uint8_clamped":return _(t);case"bigint64":return T(t);case"biguint64":return k(t);case"buffer":return A(t);case"data":case"dataview":return M(t);default:return null}return null},e.mallocArrayBuffer=d,e.mallocUint8=p,e.mallocUint16=g,e.mallocUint32=v,e.mallocInt8=m,e.mallocInt16=y,e.mallocInt32=b,e.mallocFloat32=e.mallocFloat=x,e.mallocFloat64=e.mallocDouble=w,e.mallocUint8Clamped=_,e.mallocBigUint64=k,e.mallocBigInt64=T,e.mallocDataView=M,e.mallocBuffer=A,e.clearCache=function(){for(var t=0;t<32;++t)c.UINT8[t].length=0,c.UINT16[t].length=0,c.UINT32[t].length=0,c.INT8[t].length=0,c.INT16[t].length=0,c.INT32[t].length=0,c.FLOAT[t].length=0,c.DOUBLE[t].length=0,c.BIGUINT64[t].length=0,c.BIGINT64[t].length=0,c.UINT8C[t].length=0,u[t].length=0,f[t].length=0}},90448:function(t){var e=/[\'\"]/;t.exports=function(t){return t?(e.test(t.charAt(0))&&(t=t.substr(1)),e.test(t.charAt(t.length-1))&&(t=t.substr(0,t.length-1)),t):""}},93447:function(t){"use strict";t.exports=function(t,e,n){Array.isArray(n)||(n=[].slice.call(arguments,2));for(var r=0,i=n.length;r=i)return t;switch(t){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return t}})),s=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),v(n)?r.showHidden=n:n&&e._extend(r,n),x(r.showHidden)&&(r.showHidden=!1),x(r.depth)&&(r.depth=2),x(r.colors)&&(r.colors=!1),x(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=u),h(r,t,r.depth)}function u(t,e){var n=c.styles[e];return n?"\x1b["+c.colors[n][0]+"m"+t+"\x1b["+c.colors[n][1]+"m":t}function f(t,e){return t}function h(t,n,r){if(t.customInspect&&n&&M(n.inspect)&&n.inspect!==e.inspect&&(!n.constructor||n.constructor.prototype!==n)){var i=n.inspect(r,t);return b(i)||(i=h(t,i,r)),i}var a=function(t,e){if(x(e))return t.stylize("undefined","undefined");if(b(e)){var n="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(n,"string")}return y(e)?t.stylize(""+e,"number"):v(e)?t.stylize(""+e,"boolean"):m(e)?t.stylize("null","null"):void 0}(t,n);if(a)return a;var o=Object.keys(n),s=function(t){var e={};return t.forEach((function(t,n){e[t]=!0})),e}(o);if(t.showHidden&&(o=Object.getOwnPropertyNames(n)),T(n)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return d(n);if(0===o.length){if(M(n)){var l=n.name?": "+n.name:"";return t.stylize("[Function"+l+"]","special")}if(w(n))return t.stylize(RegExp.prototype.toString.call(n),"regexp");if(k(n))return t.stylize(Date.prototype.toString.call(n),"date");if(T(n))return d(n)}var c,u="",f=!1,_=["{","}"];return g(n)&&(f=!0,_=["[","]"]),M(n)&&(u=" [Function"+(n.name?": "+n.name:"")+"]"),w(n)&&(u=" "+RegExp.prototype.toString.call(n)),k(n)&&(u=" "+Date.prototype.toUTCString.call(n)),T(n)&&(u=" "+d(n)),0!==o.length||f&&0!=n.length?r<0?w(n)?t.stylize(RegExp.prototype.toString.call(n),"regexp"):t.stylize("[Object]","special"):(t.seen.push(n),c=f?function(t,e,n,r,i){for(var a=[],o=0,s=e.length;o60?n[0]+(""===e?"":e+"\n ")+" "+t.join(",\n ")+" "+n[1]:n[0]+e+" "+t.join(", ")+" "+n[1]}(c,u,_)):_[0]+u+_[1]}function d(t){return"["+Error.prototype.toString.call(t)+"]"}function p(t,e,n,r,i,a){var o,s,l;if((l=Object.getOwnPropertyDescriptor(e,i)||{value:e[i]}).get?s=l.set?t.stylize("[Getter/Setter]","special"):t.stylize("[Getter]","special"):l.set&&(s=t.stylize("[Setter]","special")),C(r,i)||(o="["+i+"]"),s||(t.seen.indexOf(l.value)<0?(s=m(n)?h(t,l.value,null):h(t,l.value,n-1)).indexOf("\n")>-1&&(s=a?s.split("\n").map((function(t){return" "+t})).join("\n").slice(2):"\n"+s.split("\n").map((function(t){return" "+t})).join("\n")):s=t.stylize("[Circular]","special")),x(o)){if(a&&i.match(/^\d+$/))return s;(o=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=t.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=t.stylize(o,"string"))}return o+": "+s}function g(t){return Array.isArray(t)}function v(t){return"boolean"===typeof t}function m(t){return null===t}function y(t){return"number"===typeof t}function b(t){return"string"===typeof t}function x(t){return void 0===t}function w(t){return _(t)&&"[object RegExp]"===A(t)}function _(t){return"object"===typeof t&&null!==t}function k(t){return _(t)&&"[object Date]"===A(t)}function T(t){return _(t)&&("[object Error]"===A(t)||t instanceof Error)}function M(t){return"function"===typeof t}function A(t){return Object.prototype.toString.call(t)}function S(t){return t<10?"0"+t.toString(10):t.toString(10)}e.debuglog=function(t){if(t=t.toUpperCase(),!o[t])if(s.test(t)){var n=r.pid;o[t]=function(){var r=e.format.apply(e,arguments);console.error("%s %d: %s",t,n,r)}}else o[t]=function(){};return o[t]},e.inspect=c,c.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]},c.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},e.types=n(4936),e.isArray=g,e.isBoolean=v,e.isNull=m,e.isNullOrUndefined=function(t){return null==t},e.isNumber=y,e.isString=b,e.isSymbol=function(t){return"symbol"===typeof t},e.isUndefined=x,e.isRegExp=w,e.types.isRegExp=w,e.isObject=_,e.isDate=k,e.types.isDate=k,e.isError=T,e.types.isNativeError=T,e.isFunction=M,e.isPrimitive=function(t){return null===t||"boolean"===typeof t||"number"===typeof t||"string"===typeof t||"symbol"===typeof t||"undefined"===typeof t},e.isBuffer=n(45920);var E=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function C(t,e){return Object.prototype.hasOwnProperty.call(t,e)}e.log=function(){console.log("%s - %s",function(){var t=new Date,e=[S(t.getHours()),S(t.getMinutes()),S(t.getSeconds())].join(":");return[t.getDate(),E[t.getMonth()],e].join(" ")}(),e.format.apply(e,arguments))},e.inherits=n(42018),e._extend=function(t,e){if(!e||!_(e))return t;for(var n=Object.keys(e),r=n.length;r--;)t[n[r]]=e[n[r]];return t};var P="undefined"!==typeof Symbol?Symbol("util.promisify.custom"):void 0;function L(t,e){if(!t){var n=new Error("Promise was rejected with a falsy value");n.reason=t,t=n}return e(t)}e.promisify=function(t){if("function"!==typeof t)throw new TypeError('The "original" argument must be of type Function');if(P&&t[P]){var e;if("function"!==typeof(e=t[P]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(e,P,{value:e,enumerable:!1,writable:!1,configurable:!0}),e}function e(){for(var e,n,r=new Promise((function(t,r){e=t,n=r})),i=[],a=0;a2111)throw e.replace(/\{0\}/,this.local.name);return t},toMonthIndex:function(t,e,n){var i=this.intercalaryMonth(t);if(n&&e!==i||e<1||e>12)throw r.local.invalidMonth.replace(/\{0\}/,this.local.name);return i?!n&&e<=i?e-1:e:e-1},toChineseMonth:function(t,e){t.year&&(e=(t=t.year()).month());var n=this.intercalaryMonth(t);if(e<0||e>(n?12:11))throw r.local.invalidMonth.replace(/\{0\}/,this.local.name);return n?e>13;return e},isIntercalaryMonth:function(t,e){t.year&&(e=(t=t.year()).month());var n=this.intercalaryMonth(t);return!!n&&n===e},leapYear:function(t){return 0!==this.intercalaryMonth(t)},weekOfYear:function(t,e,n){var i,o=this._validateYear(t,r.local.invalidyear),s=h[o-h[0]],l=s>>9&4095,c=s>>5&15,u=31&s;(i=a.newDate(l,c,u)).add(4-(i.dayOfWeek()||7),"d");var f=this.toJD(t,e,n)-i.toJD();return 1+Math.floor(f/7)},monthsInYear:function(t){return this.leapYear(t)?13:12},daysInMonth:function(t,e){t.year&&(e=t.month(),t=t.year()),t=this._validateYear(t);var n=f[t-f[0]];if(e>(n>>13?12:11))throw r.local.invalidMonth.replace(/\{0\}/,this.local.name);var i=n&1<<12-e?30:29;return i},weekDay:function(t,e,n){return(this.dayOfWeek(t,e,n)||7)<6},toJD:function(t,e,n){var i=this._validate(t,s,n,r.local.invalidDate);t=this._validateYear(i.year()),e=i.month(),n=i.day();var o=this.isIntercalaryMonth(t,e),s=this.toChineseMonth(t,e),l=function(t,e,n,r,i){var a,o,s;if("object"===typeof t)o=t,a=e||{};else{var l;if(!("number"===typeof t&&t>=1888&&t<=2111))throw new Error("Lunar year outside range 1888-2111");if(!("number"===typeof e&&e>=1&&e<=12))throw new Error("Lunar month outside range 1 - 12");if(!("number"===typeof n&&n>=1&&n<=30))throw new Error("Lunar day outside range 1 - 30");"object"===typeof r?(l=!1,a=r):(l=!!r,a=i||{}),o={year:t,month:e,day:n,isIntercalary:l}}s=o.day-1;var c,u=f[o.year-f[0]],d=u>>13;c=d&&(o.month>d||o.isIntercalary)?o.month:o.month-1;for(var p=0;p>9&4095,(g>>5&15)-1,(31&g)+s);return a.year=v.getFullYear(),a.month=1+v.getMonth(),a.day=v.getDate(),a}(t,s,n,o);return a.toJD(l.year,l.month,l.day)},fromJD:function(t){var e=a.fromJD(t),n=function(t,e,n,r){var i,a;if("object"===typeof t)i=t,a=e||{};else{if(!("number"===typeof t&&t>=1888&&t<=2111))throw new Error("Solar year outside range 1888-2111");if(!("number"===typeof e&&e>=1&&e<=12))throw new Error("Solar month outside range 1 - 12");if(!("number"===typeof n&&n>=1&&n<=31))throw new Error("Solar day outside range 1 - 31");i={year:t,month:e,day:n},a=r||{}}var o=h[i.year-h[0]],s=i.year<<9|i.month<<5|i.day;a.year=s>=o?i.year:i.year-1,o=h[a.year-h[0]];var l,c=new Date(o>>9&4095,(o>>5&15)-1,31&o),u=new Date(i.year,i.month-1,i.day);l=Math.round((u-c)/864e5);var d,p=f[a.year-f[0]];for(d=0;d<13;d++){var g=p&1<<12-d?30:29;if(l>13;return!v||d=2&&r<=6},extraInfo:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return{century:o[Math.floor((i.year()-1)/100)+1]||""}},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return t=i.year()+(i.year()<0?1:0),e=i.month(),(n=i.day())+(e>1?16:0)+(e>2?32*(e-2):0)+400*(t-1)+this.jdEpoch-1},fromJD:function(t){t=Math.floor(t+.5)-Math.floor(this.jdEpoch)-1;var e=Math.floor(t/400)+1;t-=400*(e-1),t+=t>15?16:0;var n=Math.floor(t/32)+1,r=t-32*(n-1)+1;return this.newDate(e<=0?e-1:e,n,r)}});var o={20:"Fruitbat",21:"Anchovy"};r.calendars.discworld=a},37715:function(t,e,n){var r=n(63489),i=n(56131);function a(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}a.prototype=new r.baseCalendar,i(a.prototype,{name:"Ethiopian",jdEpoch:1724220.5,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(t){var e=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear);return(t=e.year()+(e.year()<0?1:0))%4===3||t%4===-1},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear),13},weekOfYear:function(t,e,n){var r=this.newDate(t,e,n);return r.add(-r.dayOfWeek(),"d"),Math.floor((r.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var n=this._validate(t,e,this.minDay,r.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(13===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,n){return(this.dayOfWeek(t,e,n)||7)<6},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return(t=i.year())<0&&t++,i.day()+30*(i.month()-1)+365*(t-1)+Math.floor(t/4)+this.jdEpoch-1},fromJD:function(t){var e=Math.floor(t)+.5-this.jdEpoch,n=Math.floor((e-Math.floor((e+366)/1461))/365)+1;n<=0&&n--,e=Math.floor(t)+.5-this.newDate(n,1,1).toJD();var r=Math.floor(e/30)+1,i=e-30*(r-1)+1;return this.newDate(n,r,i)}}),r.calendars.ethiopian=a},99384:function(t,e,n){var r=n(63489),i=n(56131);function a(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}function o(t,e){return t-e*Math.floor(t/e)}a.prototype=new r.baseCalendar,i(a.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(t){var e=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear);return this._leapYear(e.year())},_leapYear:function(t){return o(7*(t=t<0?t+1:t)+1,19)<7},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,r.local.invalidYear),this._leapYear(t.year?t.year():t)?13:12},weekOfYear:function(t,e,n){var r=this.newDate(t,e,n);return r.add(-r.dayOfWeek(),"d"),Math.floor((r.dayOfYear()-1)/7)+1},daysInYear:function(t){return t=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear).year(),this.toJD(-1===t?1:t+1,7,1)-this.toJD(t,7,1)},daysInMonth:function(t,e){return t.year&&(e=t.month(),t=t.year()),this._validate(t,e,this.minDay,r.local.invalidMonth),12===e&&this.leapYear(t)||8===e&&5===o(this.daysInYear(t),10)?30:9===e&&3===o(this.daysInYear(t),10)?29:this.daysPerMonth[e-1]},weekDay:function(t,e,n){return 6!==this.dayOfWeek(t,e,n)},extraInfo:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return{yearType:(this.leapYear(i)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(i)%10-3]}},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);t=i.year(),e=i.month(),n=i.day();var a=t<=0?t+1:t,o=this.jdEpoch+this._delay1(a)+this._delay2(a)+n+1;if(e<7){for(var s=7;s<=this.monthsInYear(t);s++)o+=this.daysInMonth(t,s);for(s=1;s=this.toJD(-1===e?1:e+1,7,1);)e++;for(var n=tthis.toJD(e,n,this.daysInMonth(e,n));)n++;var r=t-this.toJD(e,n,1)+1;return this.newDate(e,n,r)}}),r.calendars.hebrew=a},43805:function(t,e,n){var r=n(63489),i=n(56131);function a(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}a.prototype=new r.baseCalendar,i(a.prototype,{name:"Islamic",jdEpoch:1948439.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(t){return(11*this._validate(t,this.minMonth,this.minDay,r.local.invalidYear).year()+14)%30<11},weekOfYear:function(t,e,n){var r=this.newDate(t,e,n);return r.add(-r.dayOfWeek(),"d"),Math.floor((r.dayOfYear()-1)/7)+1},daysInYear:function(t){return this.leapYear(t)?355:354},daysInMonth:function(t,e){var n=this._validate(t,e,this.minDay,r.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(12===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,n){return 5!==this.dayOfWeek(t,e,n)},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return t=i.year(),e=i.month(),t=t<=0?t+1:t,(n=i.day())+Math.ceil(29.5*(e-1))+354*(t-1)+Math.floor((3+11*t)/30)+this.jdEpoch-1},fromJD:function(t){t=Math.floor(t)+.5;var e=Math.floor((30*(t-this.jdEpoch)+10646)/10631);e=e<=0?e-1:e;var n=Math.min(12,Math.ceil((t-29-this.toJD(e,1,1))/29.5)+1),r=t-this.toJD(e,n,1)+1;return this.newDate(e,n,r)}}),r.calendars.islamic=a},88874:function(t,e,n){var r=n(63489),i=n(56131);function a(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}a.prototype=new r.baseCalendar,i(a.prototype,{name:"Julian",jdEpoch:1721423.5,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(t){var e=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear);return(t=e.year()<0?e.year()+1:e.year())%4===0},weekOfYear:function(t,e,n){var r=this.newDate(t,e,n);return r.add(4-(r.dayOfWeek()||7),"d"),Math.floor((r.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var n=this._validate(t,e,this.minDay,r.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(2===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,n){return(this.dayOfWeek(t,e,n)||7)<6},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return t=i.year(),e=i.month(),n=i.day(),t<0&&t++,e<=2&&(t--,e+=12),Math.floor(365.25*(t+4716))+Math.floor(30.6001*(e+1))+n-1524.5},fromJD:function(t){var e=Math.floor(t+.5)+1524,n=Math.floor((e-122.1)/365.25),r=Math.floor(365.25*n),i=Math.floor((e-r)/30.6001),a=i-Math.floor(i<14?1:13),o=n-Math.floor(a>2?4716:4715),s=e-r-Math.floor(30.6001*i);return o<=0&&o--,this.newDate(o,a,s)}}),r.calendars.julian=a},83290:function(t,e,n){var r=n(63489),i=n(56131);function a(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}function o(t,e){return t-e*Math.floor(t/e)}function s(t,e){return o(t-1,e)+1}a.prototype=new r.baseCalendar,i(a.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(t){return this._validate(t,this.minMonth,this.minDay,r.local.invalidYear),!1},formatYear:function(t){t=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear).year();var e=Math.floor(t/400);return t%=400,t+=t<0?400:0,e+"."+Math.floor(t/20)+"."+t%20},forYear:function(t){if((t=t.split(".")).length<3)throw"Invalid Mayan year";for(var e=0,n=0;n19||n>0&&r<0)throw"Invalid Mayan year";e=20*e+r}return e},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,r.local.invalidYear),18},weekOfYear:function(t,e,n){return this._validate(t,e,n,r.local.invalidDate),0},daysInYear:function(t){return this._validate(t,this.minMonth,this.minDay,r.local.invalidYear),360},daysInMonth:function(t,e){return this._validate(t,e,this.minDay,r.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(t,e,n){return this._validate(t,e,n,r.local.invalidDate).day()},weekDay:function(t,e,n){return this._validate(t,e,n,r.local.invalidDate),!0},extraInfo:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate).toJD(),a=this._toHaab(i),o=this._toTzolkin(i);return{haabMonthName:this.local.haabMonths[a[0]-1],haabMonth:a[0],haabDay:a[1],tzolkinDayName:this.local.tzolkinMonths[o[0]-1],tzolkinDay:o[0],tzolkinTrecena:o[1]}},_toHaab:function(t){var e=o(8+(t-=this.jdEpoch)+340,365);return[Math.floor(e/20)+1,o(e,20)]},_toTzolkin:function(t){return[s(20+(t-=this.jdEpoch),20),s(t+4,13)]},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return i.day()+20*i.month()+360*i.year()+this.jdEpoch},fromJD:function(t){t=Math.floor(t)+.5-this.jdEpoch;var e=Math.floor(t/360);t%=360,t+=t<0?360:0;var n=Math.floor(t/20),r=t%20;return this.newDate(e,n,r)}}),r.calendars.mayan=a},29108:function(t,e,n){var r=n(63489),i=n(56131);function a(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}a.prototype=new r.baseCalendar;var o=r.instance("gregorian");i(a.prototype,{name:"Nanakshahi",jdEpoch:2257673.5,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(t){var e=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear);return o.leapYear(e.year()+(e.year()<1?1:0)+1469)},weekOfYear:function(t,e,n){var r=this.newDate(t,e,n);return r.add(1-(r.dayOfWeek()||7),"d"),Math.floor((r.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var n=this._validate(t,e,this.minDay,r.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(12===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,n){return(this.dayOfWeek(t,e,n)||7)<6},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidMonth);(t=i.year())<0&&t++;for(var a=i.day(),s=1;s=this.toJD(e+1,1,1);)e++;for(var n=t-Math.floor(this.toJD(e,1,1)+.5)+1,r=1;n>this.daysInMonth(e,r);)n-=this.daysInMonth(e,r),r++;return this.newDate(e,r,n)}}),r.calendars.nanakshahi=a},55422:function(t,e,n){var r=n(63489),i=n(56131);function a(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}a.prototype=new r.baseCalendar,i(a.prototype,{name:"Nepali",jdEpoch:1700709.5,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(t){return this.daysInYear(t)!==this.daysPerYear},weekOfYear:function(t,e,n){var r=this.newDate(t,e,n);return r.add(-r.dayOfWeek(),"d"),Math.floor((r.dayOfYear()-1)/7)+1},daysInYear:function(t){if(t=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear).year(),"undefined"===typeof this.NEPALI_CALENDAR_DATA[t])return this.daysPerYear;for(var e=0,n=this.minMonth;n<=12;n++)e+=this.NEPALI_CALENDAR_DATA[t][n];return e},daysInMonth:function(t,e){return t.year&&(e=t.month(),t=t.year()),this._validate(t,e,this.minDay,r.local.invalidMonth),"undefined"===typeof this.NEPALI_CALENDAR_DATA[t]?this.daysPerMonth[e-1]:this.NEPALI_CALENDAR_DATA[t][e]},weekDay:function(t,e,n){return 6!==this.dayOfWeek(t,e,n)},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);t=i.year(),e=i.month(),n=i.day();var a=r.instance(),o=0,s=e,l=t;this._createMissingCalendarData(t);var c=t-(s>9||9===s&&n>=this.NEPALI_CALENDAR_DATA[l][0]?56:57);for(9!==e&&(o=n,s--);9!==s;)s<=0&&(s=12,l--),o+=this.NEPALI_CALENDAR_DATA[l][s],s--;return 9===e?(o+=n-this.NEPALI_CALENDAR_DATA[l][0])<0&&(o+=a.daysInYear(c)):o+=this.NEPALI_CALENDAR_DATA[l][9]-this.NEPALI_CALENDAR_DATA[l][0],a.newDate(c,1,1).add(o,"d").toJD()},fromJD:function(t){var e=r.instance().fromJD(t),n=e.year(),i=e.dayOfYear(),a=n+56;this._createMissingCalendarData(a);for(var o=9,s=this.NEPALI_CALENDAR_DATA[a][0],l=this.NEPALI_CALENDAR_DATA[a][o]-s+1;i>l;)++o>12&&(o=1,a++),l+=this.NEPALI_CALENDAR_DATA[a][o];var c=this.NEPALI_CALENDAR_DATA[a][o]-(l-i);return this.newDate(a,o,c)},_createMissingCalendarData:function(t){var e=this.daysPerMonth.slice(0);e.unshift(17);for(var n=t-1;n0?474:473))%2820+474+38)%2816<682},weekOfYear:function(t,e,n){var r=this.newDate(t,e,n);return r.add(-(r.dayOfWeek()+1)%7,"d"),Math.floor((r.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var n=this._validate(t,e,this.minDay,r.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(12===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,n){return 5!==this.dayOfWeek(t,e,n)},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);t=i.year(),e=i.month(),n=i.day();var a=t-(t>=0?474:473),s=474+o(a,2820);return n+(e<=7?31*(e-1):30*(e-1)+6)+Math.floor((682*s-110)/2816)+365*(s-1)+1029983*Math.floor(a/2820)+this.jdEpoch-1},fromJD:function(t){var e=(t=Math.floor(t)+.5)-this.toJD(475,1,1),n=Math.floor(e/1029983),r=o(e,1029983),i=2820;if(1029982!==r){var a=Math.floor(r/366),s=o(r,366);i=Math.floor((2134*a+2816*s+2815)/1028522)+a+1}var l=i+2820*n+474;l=l<=0?l-1:l;var c=t-this.toJD(l,1,1)+1,u=c<=186?Math.ceil(c/31):Math.ceil((c-6)/30),f=t-this.toJD(l,u,1)+1;return this.newDate(l,u,f)}}),r.calendars.persian=a,r.calendars.jalali=a},31320:function(t,e,n){var r=n(63489),i=n(56131),a=r.instance();function o(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}o.prototype=new r.baseCalendar,i(o.prototype,{name:"Taiwan",jdEpoch:2419402.5,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(t){var e=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear);return t=this._t2gYear(e.year()),a.leapYear(t)},weekOfYear:function(t,e,n){var i=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear);return t=this._t2gYear(i.year()),a.weekOfYear(t,i.month(),i.day())},daysInMonth:function(t,e){var n=this._validate(t,e,this.minDay,r.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(2===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,n){return(this.dayOfWeek(t,e,n)||7)<6},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return t=this._t2gYear(i.year()),a.toJD(t,i.month(),i.day())},fromJD:function(t){var e=a.fromJD(t),n=this._g2tYear(e.year());return this.newDate(n,e.month(),e.day())},_t2gYear:function(t){return t+this.yearsOffset+(t>=-this.yearsOffset&&t<=-1?1:0)},_g2tYear:function(t){return t-this.yearsOffset-(t>=1&&t<=this.yearsOffset?1:0)}}),r.calendars.taiwan=o},51367:function(t,e,n){var r=n(63489),i=n(56131),a=r.instance();function o(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}o.prototype=new r.baseCalendar,i(o.prototype,{name:"Thai",jdEpoch:1523098.5,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(t){var e=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear);return t=this._t2gYear(e.year()),a.leapYear(t)},weekOfYear:function(t,e,n){var i=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear);return t=this._t2gYear(i.year()),a.weekOfYear(t,i.month(),i.day())},daysInMonth:function(t,e){var n=this._validate(t,e,this.minDay,r.local.invalidMonth);return this.daysPerMonth[n.month()-1]+(2===n.month()&&this.leapYear(n.year())?1:0)},weekDay:function(t,e,n){return(this.dayOfWeek(t,e,n)||7)<6},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate);return t=this._t2gYear(i.year()),a.toJD(t,i.month(),i.day())},fromJD:function(t){var e=a.fromJD(t),n=this._g2tYear(e.year());return this.newDate(n,e.month(),e.day())},_t2gYear:function(t){return t-this.yearsOffset-(t>=1&&t<=this.yearsOffset?1:0)},_g2tYear:function(t){return t+this.yearsOffset+(t>=-this.yearsOffset&&t<=-1?1:0)}}),r.calendars.thai=o},21457:function(t,e,n){var r=n(63489),i=n(56131);function a(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}a.prototype=new r.baseCalendar,i(a.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,r.local.invalidYear);return 355===this.daysInYear(e.year())},weekOfYear:function(t,e,n){var r=this.newDate(t,e,n);return r.add(-r.dayOfWeek(),"d"),Math.floor((r.dayOfYear()-1)/7)+1},daysInYear:function(t){for(var e=0,n=1;n<=12;n++)e+=this.daysInMonth(t,n);return e},daysInMonth:function(t,e){for(var n=this._validate(t,e,this.minDay,r.local.invalidMonth).toJD()-24e5+.5,i=0,a=0;an)return o[i]-o[i-1];i++}return 30},weekDay:function(t,e,n){return 5!==this.dayOfWeek(t,e,n)},toJD:function(t,e,n){var i=this._validate(t,e,n,r.local.invalidDate),a=12*(i.year()-1)+i.month()-15292;return i.day()+o[a-1]-1+24e5-.5},fromJD:function(t){for(var e=t-24e5+.5,n=0,r=0;re);r++)n++;var i=n+15292,a=Math.floor((i-1)/12),s=a+1,l=i-12*a,c=e-o[n-1]+1;return this.newDate(s,l,c)},isValid:function(t,e,n){var i=r.baseCalendar.prototype.isValid.apply(this,arguments);return i&&(i=(t=null!=t.year?t.year:t)>=1276&&t<=1500),i},_validate:function(t,e,n,i){var a=r.baseCalendar.prototype._validate.apply(this,arguments);if(a.year<1276||a.year>1500)throw i.replace(/\{0\}/,this.local.name);return a}}),r.calendars.ummalqura=a;var o=[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(t,e,n){var r=n(56131);function i(){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 a(t,e,n,r){if(this._calendar=t,this._year=e,this._month=n,this._day=r,0===this._calendar._validateLevel&&!this._calendar.isValid(this._year,this._month,this._day))throw(c.local.invalidDate||c.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function o(t,e){return"000000".substring(0,e-(t=""+t).length)+t}function s(){this.shortYearCutoff="+10"}function l(t){this.local=this.regionalOptions[t]||this.regionalOptions[""]}r(i.prototype,{instance:function(t,e){t=(t||"gregorian").toLowerCase(),e=e||"";var n=this._localCals[t+"-"+e];if(!n&&this.calendars[t]&&(n=new this.calendars[t](e),this._localCals[t+"-"+e]=n),!n)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,t);return n},newDate:function(t,e,n,r,i){return(r=(null!=t&&t.year?t.calendar():"string"===typeof r?this.instance(r,i):r)||this.instance()).newDate(t,e,n)},substituteDigits:function(t){return function(e){return(e+"").replace(/[0-9]/g,(function(e){return t[e]}))}},substituteChineseDigits:function(t,e){return function(n){for(var r="",i=0;n>0;){var a=n%10;r=(0===a?"":t[a]+e[i])+r,i++,n=Math.floor(n/10)}return 0===r.indexOf(t[1]+e[1])&&(r=r.substr(1)),r||t[0]}}}),r(a.prototype,{newDate:function(t,e,n){return this._calendar.newDate(null==t?this:t,e,n)},year:function(t){return 0===arguments.length?this._year:this.set(t,"y")},month:function(t){return 0===arguments.length?this._month:this.set(t,"m")},day:function(t){return 0===arguments.length?this._day:this.set(t,"d")},date:function(t,e,n){if(!this._calendar.isValid(t,e,n))throw(c.local.invalidDate||c.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=t,this._month=e,this._day=n,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,e){return this._calendar.add(this,t,e)},set:function(t,e){return this._calendar.set(this,t,e)},compareTo:function(t){if(this._calendar.name!==t._calendar.name)throw(c.local.differentCalendars||c.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,t._calendar.local.name);var e=this._year!==t._year?this._year-t._year:this._month!==t._month?this.monthOfYear()-t.monthOfYear():this._day-t._day;return 0===e?0:e<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?"-":"")+o(Math.abs(this.year()),4)+"-"+o(this.month(),2)+"-"+o(this.day(),2)}}),r(s.prototype,{_validateLevel:0,newDate:function(t,e,n){return null==t?this.today():(t.year&&(this._validate(t,e,n,c.local.invalidDate||c.regionalOptions[""].invalidDate),n=t.day(),e=t.month(),t=t.year()),new a(this,t,e,n))},today:function(){return this.fromJSDate(new Date)},epoch:function(t){return this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[""].invalidYear).year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[""].invalidYear);return(e.year()<0?"-":"")+o(Math.abs(e.year()),4)},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[""].invalidYear),12},monthOfYear:function(t,e){var n=this._validate(t,e,this.minDay,c.local.invalidMonth||c.regionalOptions[""].invalidMonth);return(n.month()+this.monthsInYear(n)-this.firstMonth)%this.monthsInYear(n)+this.minMonth},fromMonthOfYear:function(t,e){var n=(e+this.firstMonth-2*this.minMonth)%this.monthsInYear(t)+this.minMonth;return this._validate(t,n,this.minDay,c.local.invalidMonth||c.regionalOptions[""].invalidMonth),n},daysInYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[""].invalidYear);return this.leapYear(e)?366:365},dayOfYear:function(t,e,n){var r=this._validate(t,e,n,c.local.invalidDate||c.regionalOptions[""].invalidDate);return r.toJD()-this.newDate(r.year(),this.fromMonthOfYear(r.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(t,e,n){var r=this._validate(t,e,n,c.local.invalidDate||c.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(r))+2)%this.daysInWeek()},extraInfo:function(t,e,n){return this._validate(t,e,n,c.local.invalidDate||c.regionalOptions[""].invalidDate),{}},add:function(t,e,n){return this._validate(t,this.minMonth,this.minDay,c.local.invalidDate||c.regionalOptions[""].invalidDate),this._correctAdd(t,this._add(t,e,n),e,n)},_add:function(t,e,n){if(this._validateLevel++,"d"===n||"w"===n){var r=t.toJD()+e*("w"===n?this.daysInWeek():1),i=t.calendar().fromJD(r);return this._validateLevel--,[i.year(),i.month(),i.day()]}try{var a=t.year()+("y"===n?e:0),o=t.monthOfYear()+("m"===n?e:0);i=t.day(),"y"===n?(t.month()!==this.fromMonthOfYear(a,o)&&(o=this.newDate(a,t.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(a)),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o)))):"m"===n&&(function(t){for(;oe-1+t.minMonth;)a++,o-=e,e=t.monthsInYear(a)}(this),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o))));var s=[a,this.fromMonthOfYear(a,o),i];return this._validateLevel--,s}catch(l){throw this._validateLevel--,l}},_correctAdd:function(t,e,n,r){if(!this.hasYearZero&&("y"===r||"m"===r)&&(0===e[0]||t.year()>0!==e[0]>0)){var i={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[r],a=n<0?-1:1;e=this._add(t,n*i[0]+a*i[1],i[2])}return t.date(e[0],e[1],e[2])},set:function(t,e,n){this._validate(t,this.minMonth,this.minDay,c.local.invalidDate||c.regionalOptions[""].invalidDate);var r="y"===n?e:t.year(),i="m"===n?e:t.month(),a="d"===n?e:t.day();return"y"!==n&&"m"!==n||(a=Math.min(a,this.daysInMonth(r,i))),t.date(r,i,a)},isValid:function(t,e,n){this._validateLevel++;var r=this.hasYearZero||0!==t;if(r){var i=this.newDate(t,e,this.minDay);r=e>=this.minMonth&&e-this.minMonth=this.minDay&&n-this.minDay13.5?13:1),c=i-(l>2.5?4716:4715);return c<=0&&c--,this.newDate(c,l,s)},toJSDate:function(t,e,n){var r=this._validate(t,e,n,c.local.invalidDate||c.regionalOptions[""].invalidDate),i=new Date(r.year(),r.month()-1,r.day());return i.setHours(0),i.setMinutes(0),i.setSeconds(0),i.setMilliseconds(0),i.setHours(i.getHours()>12?i.getHours()+2:0),i},fromJSDate:function(t){return this.newDate(t.getFullYear(),t.getMonth()+1,t.getDate())}});var c=t.exports=new i;c.cdate=a,c.baseCalendar=s,c.calendars.gregorian=l},94338:function(t,e,n){var r=n(56131),i=n(63489);r(i.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"}),i.local=i.regionalOptions[""],r(i.cdate.prototype,{formatDate:function(t,e){return"string"!==typeof t&&(e=t,t=""),this._calendar.formatDate(t||"",this,e)}}),r(i.baseCalendar.prototype,{UNIX_EPOCH:i.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:86400,TICKS_EPOCH:i.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(t,e,n){if("string"!==typeof t&&(n=e,e=t,t=""),!e)return"";if(e.calendar()!==this)throw i.local.invalidFormat||i.regionalOptions[""].invalidFormat;t=t||this.local.dateFormat;for(var r,a,o,s,l=(n=n||{}).dayNamesShort||this.local.dayNamesShort,c=n.dayNames||this.local.dayNames,u=n.monthNumbers||this.local.monthNumbers,f=n.monthNamesShort||this.local.monthNamesShort,h=n.monthNames||this.local.monthNames,d=(n.calculateWeek||this.local.calculateWeek,function(e,n){for(var r=1;_+r1}),p=function(t,e,n,r){var i=""+e;if(d(t,r))for(;i.length1},b=function(t,n){var r=y(t,n),a=[2,3,r?4:2,r?4:2,10,11,20]["oyYJ@!".indexOf(t)+1],o=new RegExp("^-?\\d{1,"+a+"}"),s=e.substring(M).match(o);if(!s)throw(i.local.missingNumberAt||i.regionalOptions[""].missingNumberAt).replace(/\{0\}/,M);return M+=s[0].length,parseInt(s[0],10)},x=this,w=function(){if("function"===typeof l){y("m");var t=l.call(x,e.substring(M));return M+=t.length,t}return b("m")},_=function(t,n,r,a){for(var o=y(t,a)?r:n,s=0;s-1){d=1,p=g;for(var E=this.daysInMonth(h,d);p>E;E=this.daysInMonth(h,d))d++,p-=E}return f>-1?this.fromJD(f):this.newDate(h,d,p)},determineDate:function(t,e,n,r,i){n&&"object"!==typeof n&&(i=r,r=n,n=null),"string"!==typeof r&&(i=r,r="");var a=this;return e=e?e.newDate():null,t=null==t?e:"string"===typeof t?function(t){try{return a.parseDate(r,t,i)}catch(l){}for(var e=((t=t.toLowerCase()).match(/^c/)&&n?n.newDate():null)||a.today(),o=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,s=o.exec(t);s;)e.add(parseInt(s[1],10),s[2]||"d"),s=o.exec(t);return e}(t):"number"===typeof t?isNaN(t)||t===1/0||t===-1/0?e:a.today().add(t,"d"):a.newDate(t)}})},69862:function(){},40964:function(){},72077:function(t,e,n){"use strict";var r=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],i="undefined"===typeof globalThis?n.g:globalThis;t.exports=function(){for(var t=[],e=0;e>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===n?k(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===n?k(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=h.exec(t))?new M(e[1],e[2],e[3],1):(e=d.exec(t))?new M(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=p.exec(t))?k(e[1],e[2],e[3],e[4]):(e=g.exec(t))?k(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=v.exec(t))?L(e[1],e[2]/100,e[3]/100,1):(e=m.exec(t))?L(e[1],e[2]/100,e[3]/100,e[4]):y.hasOwnProperty(t)?_(y[t]):"transparent"===t?new M(NaN,NaN,NaN,0):null}function _(t){return new M(t>>16&255,t>>8&255,255&t,1)}function k(t,e,n,r){return r<=0&&(t=e=n=NaN),new M(t,e,n,r)}function T(t,e,n,r){return 1===arguments.length?((i=t)instanceof a||(i=w(i)),i?new M((i=i.rgb()).r,i.g,i.b,i.opacity):new M):new M(t,e,n,null==r?1:r);var i}function M(t,e,n,r){this.r=+t,this.g=+e,this.b=+n,this.opacity=+r}function A(){return"#".concat(P(this.r)).concat(P(this.g)).concat(P(this.b))}function S(){var t=E(this.opacity);return"".concat(1===t?"rgb(":"rgba(").concat(C(this.r),", ").concat(C(this.g),", ").concat(C(this.b)).concat(1===t?")":", ".concat(t,")"))}function E(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function C(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function P(t){return((t=C(t))<16?"0":"")+t.toString(16)}function L(t,e,n,r){return r<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new I(t,e,n,r)}function O(t){if(t instanceof I)return new I(t.h,t.s,t.l,t.opacity);if(t instanceof a||(t=w(t)),!t)return new I;if(t instanceof I)return t;var e=(t=t.rgb()).r/255,n=t.g/255,r=t.b/255,i=Math.min(e,n,r),o=Math.max(e,n,r),s=NaN,l=o-i,c=(o+i)/2;return l?(s=e===o?(n-r)/l+6*(n0&&c<1?0:s,new I(s,l,c,t.opacity)}function I(t,e,n,r){this.h=+t,this.s=+e,this.l=+n,this.opacity=+r}function D(t){return(t=(t||0)%360)<0?t+360:t}function R(t){return Math.max(0,Math.min(1,t||0))}function z(t,e,n){return 255*(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)}function N(t,e,n,r,i){var a=t*t,o=a*t;return((1-3*t+3*a-o)*e+(4-6*a+3*o)*n+(1+3*t+3*a-3*o)*r+o*i)/6}r(a,w,{copy:function(t){return Object.assign(new this.constructor,this,t)},displayable:function(){return this.rgb().displayable()},hex:b,formatHex:b,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return O(this).formatHsl()},formatRgb:x,toString:x}),r(M,T,i(a,{brighter:function(t){return t=null==t?s:Math.pow(s,t),new M(this.r*t,this.g*t,this.b*t,this.opacity)},darker:function(t){return t=null==t?o:Math.pow(o,t),new M(this.r*t,this.g*t,this.b*t,this.opacity)},rgb:function(){return this},clamp:function(){return new M(C(this.r),C(this.g),C(this.b),E(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:A,formatHex:A,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:S,toString:S})),r(I,(function(t,e,n,r){return 1===arguments.length?O(t):new I(t,e,n,null==r?1:r)}),i(a,{brighter:function(t){return t=null==t?s:Math.pow(s,t),new I(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?o:Math.pow(o,t),new I(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*e,i=2*n-r;return new M(z(t>=240?t-240:t+120,i,r),z(t,i,r),z(t<120?t+240:t-120,i,r),this.opacity)},clamp:function(){return new I(D(this.h),R(this.s),R(this.l),E(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 t=E(this.opacity);return"".concat(1===t?"hsl(":"hsla(").concat(D(this.h),", ").concat(100*R(this.s),"%, ").concat(100*R(this.l),"%").concat(1===t?")":", ".concat(t,")"))}}));var j=function(t){return function(){return t}};function F(t,e){return function(n){return t+n*e}}function B(t){return 1===(t=+t)?U:function(e,n){return n-e?function(t,e,n){return t=Math.pow(t,n),e=Math.pow(e,n)-t,n=1/n,function(r){return Math.pow(t+r*e,n)}}(e,n,t):j(isNaN(e)?n:e)}}function U(t,e){var n=e-t;return n?F(t,n):j(isNaN(t)?e:t)}var H=function t(e){var n=B(e);function r(t,e){var r=n((t=T(t)).r,(e=T(e)).r),i=n(t.g,e.g),a=n(t.b,e.b),o=U(t.opacity,e.opacity);return function(e){return t.r=r(e),t.g=i(e),t.b=a(e),t.opacity=o(e),t+""}}return r.gamma=t,r}(1);function V(t){return function(e){var n,r,i=e.length,a=new Array(i),o=new Array(i),s=new Array(i);for(n=0;n=1?(n=1,e-1):Math.floor(n*e),i=t[r],a=t[r+1],o=r>0?t[r-1]:2*i-a,s=ra&&(i=e.slice(a,i),s[o]?s[o]+=i:s[++o]=i),(n=n[0])===(r=r[0])?s[o]?s[o]+=r:s[++o]=r:(s[++o]=null,l.push({i:o,x:W(n,r)})),a=K.lastIndex;return a
` component that covers a few A11y cases, ensuring that\n * cases where the `href` is missing or trivial like \"#\" are treated like buttons.\n */\nconst Anchor = /*#__PURE__*/React.forwardRef((_ref, ref) => {\n let {\n onKeyDown\n } = _ref,\n props = _objectWithoutPropertiesLoose(_ref, _excluded);\n const [buttonProps] = useButtonProps(Object.assign({\n tagName: 'a'\n }, props));\n const handleKeyDown = useEventCallback(e => {\n buttonProps.onKeyDown(e);\n onKeyDown == null ? void 0 : onKeyDown(e);\n });\n if (isTrivialHref(props.href) || props.role === 'button') {\n return /*#__PURE__*/_jsx(\"a\", Object.assign({\n ref: ref\n }, props, buttonProps, {\n onKeyDown: handleKeyDown\n }));\n }\n return /*#__PURE__*/_jsx(\"a\", Object.assign({\n ref: ref\n }, props, {\n onKeyDown: onKeyDown\n }));\n});\nAnchor.displayName = 'Anchor';\nexport default Anchor;","export default {\n disabled: false\n};","import React from 'react';\nexport default React.createContext(null);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport config from './config';\nimport { timeoutsShape } from './utils/PropTypes';\nimport TransitionGroupContext from './TransitionGroupContext';\nimport { forceReflow } from './utils/reflow';\nexport var UNMOUNTED = 'unmounted';\nexport var EXITED = 'exited';\nexport var ENTERING = 'entering';\nexport var ENTERED = 'entered';\nexport var EXITING = 'exiting';\n/**\n * The Transition component lets you describe a transition from one component\n * state to another _over time_ with a simple declarative API. Most commonly\n * it's used to animate the mounting and unmounting of a component, but can also\n * be used to describe in-place transition states as well.\n *\n * ---\n *\n * **Note**: `Transition` is a platform-agnostic base component. If you're using\n * transitions in CSS, you'll probably want to use\n * [`CSSTransition`](https://reactcommunity.org/react-transition-group/css-transition)\n * instead. It inherits all the features of `Transition`, but contains\n * additional features necessary to play nice with CSS transitions (hence the\n * name of the component).\n *\n * ---\n *\n * By default the `Transition` component does not alter the behavior of the\n * component it renders, it only tracks \"enter\" and \"exit\" states for the\n * components. It's up to you to give meaning and effect to those states. For\n * example we can add styles to a component when it enters or exits:\n *\n * ```jsx\n * import { Transition } from 'react-transition-group';\n *\n * const duration = 300;\n *\n * const defaultStyle = {\n * transition: `opacity ${duration}ms ease-in-out`,\n * opacity: 0,\n * }\n *\n * const transitionStyles = {\n * entering: { opacity: 1 },\n * entered: { opacity: 1 },\n * exiting: { opacity: 0 },\n * exited: { opacity: 0 },\n * };\n *\n * const Fade = ({ in: inProp }) => (\n * \n * {state => (\n *
\n * I'm a fade Transition!\n *
\n * )}\n *
\n * );\n * ```\n *\n * There are 4 main states a Transition can be in:\n * - `'entering'`\n * - `'entered'`\n * - `'exiting'`\n * - `'exited'`\n *\n * Transition state is toggled via the `in` prop. When `true` the component\n * begins the \"Enter\" stage. During this stage, the component will shift from\n * its current transition state, to `'entering'` for the duration of the\n * transition and then to the `'entered'` stage once it's complete. Let's take\n * the following example (we'll use the\n * [useState](https://reactjs.org/docs/hooks-reference.html#usestate) hook):\n *\n * ```jsx\n * function App() {\n * const [inProp, setInProp] = useState(false);\n * return (\n *
\n * \n * {state => (\n * // ...\n * )}\n * \n * \n *
\n * );\n * }\n * ```\n *\n * When the button is clicked the component will shift to the `'entering'` state\n * and stay there for 500ms (the value of `timeout`) before it finally switches\n * to `'entered'`.\n *\n * When `in` is `false` the same thing happens except the state moves from\n * `'exiting'` to `'exited'`.\n */\n\nvar Transition = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(Transition, _React$Component);\n\n function Transition(props, context) {\n var _this;\n\n _this = _React$Component.call(this, props, context) || this;\n var parentGroup = context; // In the context of a TransitionGroup all enters are really appears\n\n var appear = parentGroup && !parentGroup.isMounting ? props.enter : props.appear;\n var initialStatus;\n _this.appearStatus = null;\n\n if (props.in) {\n if (appear) {\n initialStatus = EXITED;\n _this.appearStatus = ENTERING;\n } else {\n initialStatus = ENTERED;\n }\n } else {\n if (props.unmountOnExit || props.mountOnEnter) {\n initialStatus = UNMOUNTED;\n } else {\n initialStatus = EXITED;\n }\n }\n\n _this.state = {\n status: initialStatus\n };\n _this.nextCallback = null;\n return _this;\n }\n\n Transition.getDerivedStateFromProps = function getDerivedStateFromProps(_ref, prevState) {\n var nextIn = _ref.in;\n\n if (nextIn && prevState.status === UNMOUNTED) {\n return {\n status: EXITED\n };\n }\n\n return null;\n } // getSnapshotBeforeUpdate(prevProps) {\n // let nextStatus = null\n // if (prevProps !== this.props) {\n // const { status } = this.state\n // if (this.props.in) {\n // if (status !== ENTERING && status !== ENTERED) {\n // nextStatus = ENTERING\n // }\n // } else {\n // if (status === ENTERING || status === ENTERED) {\n // nextStatus = EXITING\n // }\n // }\n // }\n // return { nextStatus }\n // }\n ;\n\n var _proto = Transition.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n this.updateStatus(true, this.appearStatus);\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var nextStatus = null;\n\n if (prevProps !== this.props) {\n var status = this.state.status;\n\n if (this.props.in) {\n if (status !== ENTERING && status !== ENTERED) {\n nextStatus = ENTERING;\n }\n } else {\n if (status === ENTERING || status === ENTERED) {\n nextStatus = EXITING;\n }\n }\n }\n\n this.updateStatus(false, nextStatus);\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.cancelNextCallback();\n };\n\n _proto.getTimeouts = function getTimeouts() {\n var timeout = this.props.timeout;\n var exit, enter, appear;\n exit = enter = appear = timeout;\n\n if (timeout != null && typeof timeout !== 'number') {\n exit = timeout.exit;\n enter = timeout.enter; // TODO: remove fallback for next major\n\n appear = timeout.appear !== undefined ? timeout.appear : enter;\n }\n\n return {\n exit: exit,\n enter: enter,\n appear: appear\n };\n };\n\n _proto.updateStatus = function updateStatus(mounting, nextStatus) {\n if (mounting === void 0) {\n mounting = false;\n }\n\n if (nextStatus !== null) {\n // nextStatus will always be ENTERING or EXITING.\n this.cancelNextCallback();\n\n if (nextStatus === ENTERING) {\n if (this.props.unmountOnExit || this.props.mountOnEnter) {\n var node = this.props.nodeRef ? this.props.nodeRef.current : ReactDOM.findDOMNode(this); // https://github.com/reactjs/react-transition-group/pull/749\n // With unmountOnExit or mountOnEnter, the enter animation should happen at the transition between `exited` and `entering`.\n // To make the animation happen, we have to separate each rendering and avoid being processed as batched.\n\n if (node) forceReflow(node);\n }\n\n this.performEnter(mounting);\n } else {\n this.performExit();\n }\n } else if (this.props.unmountOnExit && this.state.status === EXITED) {\n this.setState({\n status: UNMOUNTED\n });\n }\n };\n\n _proto.performEnter = function performEnter(mounting) {\n var _this2 = this;\n\n var enter = this.props.enter;\n var appearing = this.context ? this.context.isMounting : mounting;\n\n var _ref2 = this.props.nodeRef ? [appearing] : [ReactDOM.findDOMNode(this), appearing],\n maybeNode = _ref2[0],\n maybeAppearing = _ref2[1];\n\n var timeouts = this.getTimeouts();\n var enterTimeout = appearing ? timeouts.appear : timeouts.enter; // no enter animation skip right to ENTERED\n // if we are mounting and running this it means appear _must_ be set\n\n if (!mounting && !enter || config.disabled) {\n this.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(maybeNode);\n });\n return;\n }\n\n this.props.onEnter(maybeNode, maybeAppearing);\n this.safeSetState({\n status: ENTERING\n }, function () {\n _this2.props.onEntering(maybeNode, maybeAppearing);\n\n _this2.onTransitionEnd(enterTimeout, function () {\n _this2.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(maybeNode, maybeAppearing);\n });\n });\n });\n };\n\n _proto.performExit = function performExit() {\n var _this3 = this;\n\n var exit = this.props.exit;\n var timeouts = this.getTimeouts();\n var maybeNode = this.props.nodeRef ? undefined : ReactDOM.findDOMNode(this); // no exit animation skip right to EXITED\n\n if (!exit || config.disabled) {\n this.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(maybeNode);\n });\n return;\n }\n\n this.props.onExit(maybeNode);\n this.safeSetState({\n status: EXITING\n }, function () {\n _this3.props.onExiting(maybeNode);\n\n _this3.onTransitionEnd(timeouts.exit, function () {\n _this3.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(maybeNode);\n });\n });\n });\n };\n\n _proto.cancelNextCallback = function cancelNextCallback() {\n if (this.nextCallback !== null) {\n this.nextCallback.cancel();\n this.nextCallback = null;\n }\n };\n\n _proto.safeSetState = function safeSetState(nextState, callback) {\n // This shouldn't be necessary, but there are weird race conditions with\n // setState callbacks and unmounting in testing, so always make sure that\n // we can cancel any pending setState callbacks after we unmount.\n callback = this.setNextCallback(callback);\n this.setState(nextState, callback);\n };\n\n _proto.setNextCallback = function setNextCallback(callback) {\n var _this4 = this;\n\n var active = true;\n\n this.nextCallback = function (event) {\n if (active) {\n active = false;\n _this4.nextCallback = null;\n callback(event);\n }\n };\n\n this.nextCallback.cancel = function () {\n active = false;\n };\n\n return this.nextCallback;\n };\n\n _proto.onTransitionEnd = function onTransitionEnd(timeout, handler) {\n this.setNextCallback(handler);\n var node = this.props.nodeRef ? this.props.nodeRef.current : ReactDOM.findDOMNode(this);\n var doesNotHaveTimeoutOrListener = timeout == null && !this.props.addEndListener;\n\n if (!node || doesNotHaveTimeoutOrListener) {\n setTimeout(this.nextCallback, 0);\n return;\n }\n\n if (this.props.addEndListener) {\n var _ref3 = this.props.nodeRef ? [this.nextCallback] : [node, this.nextCallback],\n maybeNode = _ref3[0],\n maybeNextCallback = _ref3[1];\n\n this.props.addEndListener(maybeNode, maybeNextCallback);\n }\n\n if (timeout != null) {\n setTimeout(this.nextCallback, timeout);\n }\n };\n\n _proto.render = function render() {\n var status = this.state.status;\n\n if (status === UNMOUNTED) {\n return null;\n }\n\n var _this$props = this.props,\n children = _this$props.children,\n _in = _this$props.in,\n _mountOnEnter = _this$props.mountOnEnter,\n _unmountOnExit = _this$props.unmountOnExit,\n _appear = _this$props.appear,\n _enter = _this$props.enter,\n _exit = _this$props.exit,\n _timeout = _this$props.timeout,\n _addEndListener = _this$props.addEndListener,\n _onEnter = _this$props.onEnter,\n _onEntering = _this$props.onEntering,\n _onEntered = _this$props.onEntered,\n _onExit = _this$props.onExit,\n _onExiting = _this$props.onExiting,\n _onExited = _this$props.onExited,\n _nodeRef = _this$props.nodeRef,\n childProps = _objectWithoutPropertiesLoose(_this$props, [\"children\", \"in\", \"mountOnEnter\", \"unmountOnExit\", \"appear\", \"enter\", \"exit\", \"timeout\", \"addEndListener\", \"onEnter\", \"onEntering\", \"onEntered\", \"onExit\", \"onExiting\", \"onExited\", \"nodeRef\"]);\n\n return (\n /*#__PURE__*/\n // allows for nested Transitions\n React.createElement(TransitionGroupContext.Provider, {\n value: null\n }, typeof children === 'function' ? children(status, childProps) : React.cloneElement(React.Children.only(children), childProps))\n );\n };\n\n return Transition;\n}(React.Component);\n\nTransition.contextType = TransitionGroupContext;\nTransition.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * A React reference to DOM element that need to transition:\n * https://stackoverflow.com/a/51127130/4671932\n *\n * - When `nodeRef` prop is used, `node` is not passed to callback functions\n * (e.g. `onEnter`) because user already has direct access to the node.\n * - When changing `key` prop of `Transition` in a `TransitionGroup` a new\n * `nodeRef` need to be provided to `Transition` with changed `key` prop\n * (see\n * [test/CSSTransition-test.js](https://github.com/reactjs/react-transition-group/blob/13435f897b3ab71f6e19d724f145596f5910581c/test/CSSTransition-test.js#L362-L437)).\n */\n nodeRef: PropTypes.shape({\n current: typeof Element === 'undefined' ? PropTypes.any : function (propValue, key, componentName, location, propFullName, secret) {\n var value = propValue[key];\n return PropTypes.instanceOf(value && 'ownerDocument' in value ? value.ownerDocument.defaultView.Element : Element)(propValue, key, componentName, location, propFullName, secret);\n }\n }),\n\n /**\n * A `function` child can be used instead of a React element. This function is\n * called with the current transition status (`'entering'`, `'entered'`,\n * `'exiting'`, `'exited'`), which can be used to apply context\n * specific props to a component.\n *\n * ```jsx\n * \n * {state => (\n * \n * )}\n * \n * ```\n */\n children: PropTypes.oneOfType([PropTypes.func.isRequired, PropTypes.element.isRequired]).isRequired,\n\n /**\n * Show the component; triggers the enter or exit states\n */\n in: PropTypes.bool,\n\n /**\n * By default the child component is mounted immediately along with\n * the parent `Transition` component. If you want to \"lazy mount\" the component on the\n * first `in={true}` you can set `mountOnEnter`. After the first enter transition the component will stay\n * mounted, even on \"exited\", unless you also specify `unmountOnExit`.\n */\n mountOnEnter: PropTypes.bool,\n\n /**\n * By default the child component stays mounted after it reaches the `'exited'` state.\n * Set `unmountOnExit` if you'd prefer to unmount the component after it finishes exiting.\n */\n unmountOnExit: PropTypes.bool,\n\n /**\n * By default the child component does not perform the enter transition when\n * it first mounts, regardless of the value of `in`. If you want this\n * behavior, set both `appear` and `in` to `true`.\n *\n * > **Note**: there are no special appear states like `appearing`/`appeared`, this prop\n * > only adds an additional enter transition. However, in the\n * > `` component that first enter transition does result in\n * > additional `.appear-*` classes, that way you can choose to style it\n * > differently.\n */\n appear: PropTypes.bool,\n\n /**\n * Enable or disable enter transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * Enable or disable exit transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * The duration of the transition, in milliseconds.\n * Required unless `addEndListener` is provided.\n *\n * You may specify a single timeout for all transitions:\n *\n * ```jsx\n * timeout={500}\n * ```\n *\n * or individually:\n *\n * ```jsx\n * timeout={{\n * appear: 500,\n * enter: 300,\n * exit: 500,\n * }}\n * ```\n *\n * - `appear` defaults to the value of `enter`\n * - `enter` defaults to `0`\n * - `exit` defaults to `0`\n *\n * @type {number | { enter?: number, exit?: number, appear?: number }}\n */\n timeout: function timeout(props) {\n var pt = timeoutsShape;\n if (!props.addEndListener) pt = pt.isRequired;\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return pt.apply(void 0, [props].concat(args));\n },\n\n /**\n * Add a custom transition end trigger. Called with the transitioning\n * DOM node and a `done` callback. Allows for more fine grained transition end\n * logic. Timeouts are still used as a fallback if provided.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * ```jsx\n * addEndListener={(node, done) => {\n * // use the css transitionend event to mark the finish of a transition\n * node.addEventListener('transitionend', done, false);\n * }}\n * ```\n */\n addEndListener: PropTypes.func,\n\n /**\n * Callback fired before the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEnter: PropTypes.func,\n\n /**\n * Callback fired after the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntering: PropTypes.func,\n\n /**\n * Callback fired after the \"entered\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEntered: PropTypes.func,\n\n /**\n * Callback fired before the \"exiting\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExit: PropTypes.func,\n\n /**\n * Callback fired after the \"exiting\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExiting: PropTypes.func,\n\n /**\n * Callback fired after the \"exited\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExited: PropTypes.func\n} : {}; // Name the function so it is clearer in the documentation\n\nfunction noop() {}\n\nTransition.defaultProps = {\n in: false,\n mountOnEnter: false,\n unmountOnExit: false,\n appear: false,\n enter: true,\n exit: true,\n onEnter: noop,\n onEntering: noop,\n onEntered: noop,\n onExit: noop,\n onExiting: noop,\n onExited: noop\n};\nTransition.UNMOUNTED = UNMOUNTED;\nTransition.EXITED = EXITED;\nTransition.ENTERING = ENTERING;\nTransition.ENTERED = ENTERED;\nTransition.EXITING = EXITING;\nexport default Transition;","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}","export var forceReflow = function forceReflow(node) {\n return node.scrollTop;\n};","import ownerDocument from './ownerDocument';\n/**\n * Returns the owner window of a given element.\n * \n * @param node the element\n */\n\nexport default function ownerWindow(node) {\n var doc = ownerDocument(node);\n return doc && doc.defaultView || window;\n}","/**\n * Returns the owner document of a given element.\n * \n * @param node the element\n */\nexport default function ownerDocument(node) {\n return node && node.ownerDocument || document;\n}","var rUpper = /([A-Z])/g;\nexport default function hyphenate(string) {\n return string.replace(rUpper, '-$1').toLowerCase();\n}","/**\n * Copyright 2013-2014, Facebook, Inc.\n * All rights reserved.\n * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/hyphenateStyleName.js\n */\nimport hyphenate from './hyphenate';\nvar msPattern = /^ms-/;\nexport default function hyphenateStyleName(string) {\n return hyphenate(string).replace(msPattern, '-ms-');\n}","var supportedTransforms = /^((translate|rotate|scale)(X|Y|Z|3d)?|matrix(3d)?|perspective|skew(X|Y)?)$/i;\nexport default function isTransform(value) {\n return !!(value && supportedTransforms.test(value));\n}","import getComputedStyle from './getComputedStyle';\nimport hyphenate from './hyphenateStyle';\nimport isTransform from './isTransform';\n\nfunction style(node, property) {\n var css = '';\n var transforms = '';\n\n if (typeof property === 'string') {\n return node.style.getPropertyValue(hyphenate(property)) || getComputedStyle(node).getPropertyValue(hyphenate(property));\n }\n\n Object.keys(property).forEach(function (key) {\n var value = property[key];\n\n if (!value && value !== 0) {\n node.style.removeProperty(hyphenate(key));\n } else if (isTransform(key)) {\n transforms += key + \"(\" + value + \") \";\n } else {\n css += hyphenate(key) + \": \" + value + \";\";\n }\n });\n\n if (transforms) {\n css += \"transform: \" + transforms + \";\";\n }\n\n node.style.cssText += \";\" + css;\n}\n\nexport default style;","import ownerWindow from './ownerWindow';\n/**\n * Returns one or all computed style properties of an element.\n * \n * @param node the element\n * @param psuedoElement the style property\n */\n\nexport default function getComputedStyle(node, psuedoElement) {\n return ownerWindow(node).getComputedStyle(node, psuedoElement);\n}","export default !!(typeof window !== 'undefined' && window.document && window.document.createElement);","/* eslint-disable no-return-assign */\nimport canUseDOM from './canUseDOM';\nexport var optionsSupported = false;\nexport var onceSupported = false;\n\ntry {\n var options = {\n get passive() {\n return optionsSupported = true;\n },\n\n get once() {\n // eslint-disable-next-line no-multi-assign\n return onceSupported = optionsSupported = true;\n }\n\n };\n\n if (canUseDOM) {\n window.addEventListener('test', options, options);\n window.removeEventListener('test', options, true);\n }\n} catch (e) {\n /* */\n}\n\n/**\n * An `addEventListener` ponyfill, supports the `once` option\n * \n * @param node the element\n * @param eventName the event name\n * @param handle the handler\n * @param options event options\n */\nfunction addEventListener(node, eventName, handler, options) {\n if (options && typeof options !== 'boolean' && !onceSupported) {\n var once = options.once,\n capture = options.capture;\n var wrappedHandler = handler;\n\n if (!onceSupported && once) {\n wrappedHandler = handler.__once || function onceHandler(event) {\n this.removeEventListener(eventName, onceHandler, capture);\n handler.call(this, event);\n };\n\n handler.__once = wrappedHandler;\n }\n\n node.addEventListener(eventName, wrappedHandler, optionsSupported ? options : capture);\n }\n\n node.addEventListener(eventName, handler, options);\n}\n\nexport default addEventListener;","/**\n * A `removeEventListener` ponyfill\n * \n * @param node the element\n * @param eventName the event name\n * @param handle the handler\n * @param options event options\n */\nfunction removeEventListener(node, eventName, handler, options) {\n var capture = options && typeof options !== 'boolean' ? options.capture : options;\n node.removeEventListener(eventName, handler, capture);\n\n if (handler.__once) {\n node.removeEventListener(eventName, handler.__once, capture);\n }\n}\n\nexport default removeEventListener;","import addEventListener from './addEventListener';\nimport removeEventListener from './removeEventListener';\n\nfunction listen(node, eventName, handler, options) {\n addEventListener(node, eventName, handler, options);\n return function () {\n removeEventListener(node, eventName, handler, options);\n };\n}\n\nexport default listen;","import css from './css';\nimport listen from './listen';\nimport triggerEvent from './triggerEvent';\n\nfunction parseDuration(node) {\n var str = css(node, 'transitionDuration') || '';\n var mult = str.indexOf('ms') === -1 ? 1000 : 1;\n return parseFloat(str) * mult;\n}\n\nfunction emulateTransitionEnd(element, duration, padding) {\n if (padding === void 0) {\n padding = 5;\n }\n\n var called = false;\n var handle = setTimeout(function () {\n if (!called) triggerEvent(element, 'transitionend', true);\n }, duration + padding);\n var remove = listen(element, 'transitionend', function () {\n called = true;\n }, {\n once: true\n });\n return function () {\n clearTimeout(handle);\n remove();\n };\n}\n\nexport default function transitionEnd(element, handler, duration, padding) {\n if (duration == null) duration = parseDuration(element) || 0;\n var removeEmulate = emulateTransitionEnd(element, duration, padding);\n var remove = listen(element, 'transitionend', handler);\n return function () {\n removeEmulate();\n remove();\n };\n}","/**\n * Triggers an event on a given element.\n * \n * @param node the element\n * @param eventName the event name to trigger\n * @param bubbles whether the event should bubble up\n * @param cancelable whether the event should be cancelable\n */\nexport default function triggerEvent(node, eventName, bubbles, cancelable) {\n if (bubbles === void 0) {\n bubbles = false;\n }\n\n if (cancelable === void 0) {\n cancelable = true;\n }\n\n if (node) {\n var event = document.createEvent('HTMLEvents');\n event.initEvent(eventName, bubbles, cancelable);\n node.dispatchEvent(event);\n }\n}","import css from 'dom-helpers/css';\nimport transitionEnd from 'dom-helpers/transitionEnd';\nfunction parseDuration(node, property) {\n const str = css(node, property) || '';\n const mult = str.indexOf('ms') === -1 ? 1000 : 1;\n return parseFloat(str) * mult;\n}\nexport default function transitionEndListener(element, handler) {\n const duration = parseDuration(element, 'transitionDuration');\n const delay = parseDuration(element, 'transitionDelay');\n const remove = transitionEnd(element, e => {\n if (e.target === element) {\n remove();\n handler(e);\n }\n }, duration + delay);\n}","import { useMemo } from 'react';\n\nvar toFnRef = function toFnRef(ref) {\n return !ref || typeof ref === 'function' ? ref : function (value) {\n ref.current = value;\n };\n};\n\nexport function mergeRefs(refA, refB) {\n var a = toFnRef(refA);\n var b = toFnRef(refB);\n return function (value) {\n if (a) a(value);\n if (b) b(value);\n };\n}\n/**\n * Create and returns a single callback ref composed from two other Refs.\n *\n * ```tsx\n * const Button = React.forwardRef((props, ref) => {\n * const [element, attachRef] = useCallbackRef();\n * const mergedRef = useMergedRefs(ref, attachRef);\n *\n * return \n \n
\n )\n }\n}\n\nfunction AccuracyResults({ selectedWorkload }) {\n return (\n
\n \n \n \n \n \n \n \n \n \n
Accuracy
results
\n
{selectedWorkload.accuracy_data.baseline_accuracy * 100}%
\n
FP32
\n
\n
{selectedWorkload.accuracy_data.optimized_accuracy * 100}%
\n
INT8
\n
\n
{Math.round(selectedWorkload.accuracy_data.ratio * 100) / 100}
\n
Ratio
\n
\n
\n )\n}\n\nexport const getLabel = (label) => {\n if (label.includes('/')) {\n return label.replace(/^.*[\\\\\\/]/, '');\n } else {\n return label;\n }\n}\n\nexport const customColor = [\n '#5B69FF',\n '#FF848A',\n '#EDB200',\n '#1E2EB8',\n '#FF5662',\n '#C98F00',\n '#000F8A',\n '#C81326',\n '#000864',\n '#9D79BC',\n '#A14DA0',\n];\n\nexport default Diagnosis;\n","'use strict';\n\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n","'use strict';\n\nimport bind from './helpers/bind.js';\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst {toString} = Object.prototype;\nconst {getPrototypeOf} = Object;\n\nconst kindOf = (cache => thing => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type\n}\n\nconst typeOfTest = type => thing => typeof thing === type;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst {isArray} = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = thing => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nconst isFormData = (thing) => {\n const pattern = '[object FormData]';\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) ||\n toString.call(thing) === pattern ||\n (isFunction(thing.toString) && thing.toString() === pattern)\n );\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => str.trim ?\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Boolean} [allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n const {caseless} = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n }\n\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Boolean} [allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, {allOwnKeys});\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = (TypedArray => {\n // eslint-disable-next-line func-names\n return thing => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[Symbol.iterator];\n\n const iterator = generator.call(obj);\n\n let result;\n\n while ((result = iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n}\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n}\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = str => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n if (reducer(descriptor, name, obj) !== false) {\n reducedDescriptors[name] = descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n}\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n}\n\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach(value => {\n obj[value] = true;\n });\n }\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n}\n\nconst noop = () => {}\n\nconst toFiniteNumber = (value, defaultValue) => {\n value = +value;\n return Number.isFinite(value) ? value : defaultValue;\n}\n\nconst ALPHA = 'abcdefghijklmnopqrstuvwxyz'\n\nconst DIGIT = '0123456789';\n\nconst ALPHABET = {\n DIGIT,\n ALPHA,\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\n}\n\nconst generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {\n let str = '';\n const {length} = alphabet;\n while (size--) {\n str += alphabet[Math.random() * length|0]\n }\n\n return str;\n}\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\n\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n if(!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n }\n\n return visit(obj, 0);\n}\n\nexport default {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n ALPHABET,\n generateString,\n isSpecCompliantForm,\n toJSONObject\n};\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = (new Error()).stack;\n }\n\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n response && (this.response = response);\n}\n\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: utils.toJSONObject(this.config),\n code: this.code,\n status: this.response && this.response.status ? this.response.status : null\n };\n }\n});\n\nconst prototype = AxiosError.prototype;\nconst descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n// eslint-disable-next-line func-names\n].forEach(code => {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = (error, code, config, request, response, customProps) => {\n const axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, prop => {\n return prop !== 'isAxiosError';\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.cause = error;\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nexport default AxiosError;\n","// eslint-disable-next-line strict\nexport default null;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\nimport PlatformFormData from '../platform/node/classes/FormData.js';\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (PlatformFormData || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = utils.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !utils.isUndefined(source[option]);\n });\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\n\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (value && !path && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (utils.isArray(value) && isFlatArray(value)) ||\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))\n )) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n\n function build(value, path) {\n if (utils.isUndefined(value)) return;\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n utils.forEach(value, function each(el, key) {\n const result = !(utils.isUndefined(el) || el === null) && visitor.call(\n formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers\n );\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n\n stack.pop();\n }\n\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\nexport default toFormData;\n","'use strict';\n\nimport toFormData from './toFormData.js';\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object} params - The parameters to be converted to a FormData object.\n * @param {Object} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && toFormData(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode);\n } : encode;\n\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\n\nexport default AxiosURLSearchParams;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\n\n/**\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\n * URI encoded counterparts\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?object} options\n *\n * @returns {string} The formatted url\n */\nexport default function buildURL(url, params, options) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n \n const _encode = options && options.encode || encode;\n\n const serializeFn = options && options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils.isURLSearchParams(params) ?\n params.toString() :\n new AxiosURLSearchParams(params, options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\nexport default InterceptorManager;\n","'use strict';\n\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n","import URLSearchParams from './classes/URLSearchParams.js'\nimport FormData from './classes/FormData.js'\nimport Blob from './classes/Blob.js'\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst isStandardBrowserEnv = (() => {\n let product;\n if (typeof navigator !== 'undefined' && (\n (product = navigator.product) === 'ReactNative' ||\n product === 'NativeScript' ||\n product === 'NS')\n ) {\n return false;\n }\n\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n})();\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\n const isStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\n\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams,\n FormData,\n Blob\n },\n isStandardBrowserEnv,\n isStandardBrowserWebWorkerEnv,\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\n};\n","'use strict';\n\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\n","'use strict';\n\nexport default typeof FormData !== 'undefined' ? FormData : null;\n","'use strict'\n\nexport default typeof Blob !== 'undefined' ? Blob : null\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n const obj = {};\n\n utils.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\nexport default formDataToJSON;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\n\nconst DEFAULT_CONTENT_TYPE = {\n 'Content-Type': undefined\n};\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n\n transitional: transitionalDefaults,\n\n adapter: ['xhr', 'http'],\n\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = utils.isObject(data);\n\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = utils.isFormData(data);\n\n if (isFormData) {\n if (!hasJSONContentType) {\n return data;\n }\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n\n if (utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n const _FormData = this.env && this.env.FormData;\n\n return toFormData(\n isFileList ? {'files[]': data} : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType ) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n const transitional = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const JSONRequested = this.responseType === 'json';\n\n if (data && utils.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nexport default defaults;\n","'use strict';\n\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\n\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = utils.toObjectSet([\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\nexport default rawHeaders => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nfunction isValidHeaderName(str) {\n return /^[-_a-zA-Z]+$/.test(str.trim());\n}\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\nutils.freezeMethods(AxiosHeaders.prototype);\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n","'use strict';\n\nimport utils from './../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nexport default function transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n","'use strict';\n\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n","'use strict';\n\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\nfunction CanceledError(message, config, request) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nexport default CanceledError;\n","'use strict';\n\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.isStandardBrowserEnv ?\n\n// Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n const cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n// Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })();\n","'use strict';\n\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nexport default function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nexport default function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n","'use strict';\n\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.isStandardBrowserEnv ?\n\n// Standard browser envs have full support of the APIs needed to test\n// whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n const msie = /(msie|trident)/i.test(navigator.userAgent);\n const urlParsingNode = document.createElement('a');\n let originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n let href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n const parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })();\n","'use strict';\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\n\nexport default speedometer;\n","'use strict';\n\nimport utils from './../utils.js';\nimport settle from './../core/settle.js';\nimport cookies from './../helpers/cookies.js';\nimport buildURL from './../helpers/buildURL.js';\nimport buildFullPath from '../core/buildFullPath.js';\nimport isURLSameOrigin from './../helpers/isURLSameOrigin.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport speedometer from '../helpers/speedometer.js';\n\nfunction progressEventReducer(listener, isDownloadStream) {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n\n return e => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n\n bytesNotified = loaded;\n\n const data = {\n loaded,\n total,\n progress: total ? (loaded / total) : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e\n };\n\n data[isDownloadStream ? 'download' : 'upload'] = true;\n\n listener(data);\n };\n}\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\nexport default isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n let requestData = config.data;\n const requestHeaders = AxiosHeaders.from(config.headers).normalize();\n const responseType = config.responseType;\n let onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n\n if (utils.isFormData(requestData) && (platform.isStandardBrowserEnv || platform.isStandardBrowserWebWorkerEnv)) {\n requestHeaders.setContentType(false); // Let the browser set it\n }\n\n let request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n const username = config.auth.username || '';\n const password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.set('Authorization', 'Basic ' + btoa(username + ':' + password));\n }\n\n const fullPath = buildFullPath(config.baseURL, config.url);\n\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = AxiosHeaders.from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';\n const transitional = config.transitional || transitionalDefaults;\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (platform.isStandardBrowserEnv) {\n // Add xsrf header\n const xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath))\n && config.xsrfCookieName && cookies.read(config.xsrfCookieName);\n\n if (xsrfValue) {\n requestHeaders.set(config.xsrfHeaderName, xsrfValue);\n }\n }\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', progressEventReducer(config.onDownloadProgress, true));\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', progressEventReducer(config.onUploadProgress));\n }\n\n if (config.cancelToken || config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = cancel => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = parseProtocol(fullPath);\n\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData || null);\n });\n}\n","'use strict';\n\nimport AxiosError from './AxiosError.js';\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nexport default function settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\n","'use strict';\n\nexport default function parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}\n","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport AxiosError from \"../core/AxiosError.js\";\n\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter\n}\n\nutils.forEach(knownAdapters, (fn, value) => {\n if(fn) {\n try {\n Object.defineProperty(fn, 'name', {value});\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', {value});\n }\n});\n\nexport default {\n getAdapter: (adapters) => {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n\n const {length} = adapters;\n let nameOrAdapter;\n let adapter;\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n if((adapter = utils.isString(nameOrAdapter) ? knownAdapters[nameOrAdapter.toLowerCase()] : nameOrAdapter)) {\n break;\n }\n }\n\n if (!adapter) {\n if (adapter === false) {\n throw new AxiosError(\n `Adapter ${nameOrAdapter} is not supported by the environment`,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n throw new Error(\n utils.hasOwnProp(knownAdapters, nameOrAdapter) ?\n `Adapter '${nameOrAdapter}' is not available in the build` :\n `Unknown adapter '${nameOrAdapter}'`\n );\n }\n\n if (!utils.isFunction(adapter)) {\n throw new TypeError('adapter is not a function');\n }\n\n return adapter;\n },\n adapters: knownAdapters\n}\n","'use strict';\n\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from \"../adapters/adapters.js\";\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = AxiosHeaders.from(config.headers);\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.transformRequest\n );\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n config.transformResponse,\n response\n );\n\n response.headers = AxiosHeaders.from(response.headers);\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n });\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from \"./AxiosHeaders.js\";\n\nconst headersToObject = (thing) => thing instanceof AxiosHeaders ? thing.toJSON() : thing;\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nexport default function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n const config = {};\n\n function getMergedValue(target, source, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({caseless}, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(a, b, caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b) => mergeDeepProperties(headersToObject(a), headersToObject(b), true)\n };\n\n utils.forEach(Object.keys(config1).concat(Object.keys(config2)), function computeConfigValue(prop) {\n const merge = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge(config1[prop], config2[prop], prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n","export const VERSION = \"1.3.4\";","'use strict';\n\nimport {VERSION} from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator = schema[opt];\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nexport default {\n assertOptions,\n validators\n};\n","'use strict';\n\nimport utils from './../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst validators = validator.validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n const {transitional, paramsSerializer, headers} = config;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n if (paramsSerializer !== undefined) {\n validator.assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n let contextHeaders;\n\n // Flatten headers\n contextHeaders = headers && utils.merge(\n headers.common,\n headers[config.method]\n );\n\n contextHeaders && utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n (method) => {\n delete headers[method];\n }\n );\n\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), undefined];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n i = 0;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url,\n data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nexport default Axios;\n","'use strict';\n\nimport CanceledError from './CanceledError.js';\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(cancel => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = onfulfilled => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise(resolve => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\n\nexport default CancelToken;\n","const HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\nexport default HttpStatusCode;\n","'use strict';\n\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport {VERSION} from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from \"./core/AxiosHeaders.js\";\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context, {allOwnKeys: true});\n\n // Copy context to instance\n utils.extend(instance, context, null, {allOwnKeys: true});\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\n\n// Expose AxiosError class\naxios.AxiosError = AxiosError;\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = spread;\n\n// Expose isAxiosError\naxios.isAxiosError = isAxiosError;\n\n// Expose mergeConfig\naxios.mergeConfig = mergeConfig;\n\naxios.AxiosHeaders = AxiosHeaders;\n\naxios.formToJSON = thing => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.HttpStatusCode = HttpStatusCode;\n\naxios.default = axios;\n\n// this module should only have a default export\nexport default axios\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && (payload.isAxiosError === true);\n}\n","// -* - coding: utf - 8 -* -\n// Copyright(c) 2023 Intel Corporation\n//\n// Licensed under the Apache License, Version 2.0(the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport './App.scss';\nimport Diagnosis from './components/Diagnosis/Diagnosis';\nimport axios from 'axios';\n\nexport const api = axios.create({\n baseURL: `/`\n});\n\nfunction App() {\n document.body.style = 'background: #ececec;';\n return (\n
\n \n
\n );\n}\n\nexport default App;\n","// -* - coding: utf - 8 -* -\n// Copyright(c) 2023 Intel Corporation\n//\n// Licensed under the Apache License, Version 2.0(the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nconst reportWebVitals = onPerfEntry => {\n if (onPerfEntry && onPerfEntry instanceof Function) {\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\n getCLS(onPerfEntry);\n getFID(onPerfEntry);\n getFCP(onPerfEntry);\n getLCP(onPerfEntry);\n getTTFB(onPerfEntry);\n });\n }\n};\n\nexport default reportWebVitals;\n","// -* - coding: utf - 8 -* -\n// Copyright(c) 2023 Intel Corporation\n//\n// Licensed under the Apache License, Version 2.0(the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport React from 'react';\nimport ReactDOM from 'react-dom/client';\nimport './index.scss';\nimport App from './App';\nimport reportWebVitals from './reportWebVitals';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n\nconst root = ReactDOM.createRoot(document.getElementById('root'));\nroot.render(\n \n);\n\n// If you want to start measuring performance in your app, pass a function\n// to log results (for example: reportWebVitals(console.log))\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\nreportWebVitals();\n"],"names":["hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","argType","push","Array","isArray","inner","apply","toString","Object","prototype","includes","key","call","join","module","exports","default","factory","__WEBPACK_EXTERNAL_MODULE__245__","__webpack_modules__","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","obj","prop","__webpack_exports__","external_commonjs_elkjs_commonjs2_elkjs_amd_elkjs_root_ELK_","external_commonjs_elkjs_commonjs2_elkjs_amd_elkjs_root_ELK_default","src_assign","assign","bind","tgt","_len","srcs","_key","forEach","src","keys","k","src_defaults","nodeDimensionsIncludeLabels","fit","padding","animate","animateFilter","animationDuration","animationEasing","transform","node","pos","ready","stop","elk","algorithm","priority","_defineProperties","target","props","descriptor","configurable","writable","elkOverrides","makeNode","options","_cyEle","id","isParent","dims","layoutDimensions","p","position","x","w","y","h","width","height","scratch","makeEdge","edge","source","data","Layout","instance","Constructor","TypeError","_classCallCheck","this","elkOptions","cy","aspectRatio","protoProps","staticProps","value","layout","eles","nodes","edges","graph","elkNodes","elkEdges","elkEleLookup","children","_i","e","_k","_i2","_k2","_n","isChild","parentK","parent","_i3","_k3","makeGraph","then","filter","layoutPositions","ele","nonempty","kp","getPos","register","cytoscape","require","$$find","arr","predicate","thisArg","LabelElement","_a","params","_b","_c","updateParams","_node","initStyles","cssClass","updateData","updatePosition","tpl","_d","halign","_e","valign","_f","halignBox","_g","valignBox","_align","firstChild","removeChild","DOMParser","parseFromString","body","el","appendChild","getNode","_renderPosition","style","classList","add","prev","_position","val","toFixed","stl","webkitTransform","msTransform","LabelContainer","_elements","addOrUpdateElem","param","payload","cur","nodeElem","document","createElement","removeElemById","updateElemPosition","updatePanZoom","pan","zoom","origin","webkitTransformOrigin","msTransformOrigin","transformOrigin","cyNodeHtmlLabel","_cy","_params","_lc","_cyContainer","container","_titlesContainer","_cyCanvas","querySelector","parentNode","margin","border","outline","enablePointerEvents","createLabelContainer","one","elements","query","isNode","getNodePosition","createNodesCyHandler","wrapCyHandler","on","ev","slice","reverse","is","updateDataOrStyleCyHandler","setTimeout","removed","optArr","define","debounce","Heap","set","toPath","_interopDefaultLegacy","debounce__default","Heap__default","get__default","set__default","toPath__default","_typeof","Symbol","iterator","constructor","_createClass","_defineProperty","_slicedToArray","_arrayWithHoles","_s","_arr","next","done","err","_iterableToArrayLimit","minLen","_arrayLikeToArray","name","from","test","_unsupportedIterableToArray","_nonIterableRest","len","arr2","window$1","window","navigator","typeofstr","typeofobj","typeoffn","typeofhtmlele","HTMLElement","instanceStr","instanceString","fn$6","string","array","elementOrCollection","plainObject","number$1","isNaN","htmlElement","element","collection","_private","single","core","stylesheet","emptyString","match","promise","object","ms","userAgent","memoize","fn","keyFn","args","memoizedFn","ret","cache","camel2dash","str","replace","v","toLowerCase","dash2camel","toUpperCase","prependCamel","prefix","substring","capitalize","charAt","number","rgba","rgbaNoBackRefs","hsla","hslaNoBackRefs","ascending","b","extend","j","color2tuple","color","colors","colorname2tuple","hex","r","g","base","parseInt","hex2tuple","rgb","m","RegExp","exec","isPct","channel","parseFloat","Math","floor","atLeastOneIsPct","allArePct","alpha","rgb2tuple","hsl","s","l","hue2rgb","q","t","round","hsl2tuple","transparent","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","setMap","map","Error","getMap","performance","pnow","now","Date","raf","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","performanceNow","DEFAULT_HASH_SEED","DEFAULT_HASH_SEED_ALT","hashIterableInts","entry","hash","hashInt","num","hashIntAlt","seed","combineHashesArray","hashes","hashArrays","hashes1","hashes2","hashString","charCodeAt","hashStrings","hashStringsArray","strs","warningsEnabled","warnSupported","console","warn","traceSupported","trace","MAX_INT$1","Number","MAX_SAFE_INTEGER","trueify","falsify","zeroify","noop$1","error","msg","warnings","enabled","log","copy","clone","uuid","random","_staticEmptyObject","staticEmptyObject","defaults$g","_defaults","opts","filledOpts","optVal","removeFromArray","oneCopy","splice","clearArray","getPrefixedProperty","propName","setPrefixedProperty","Map$1","Map","ObjectMap","_obj","ObjectSet","arrayOrObjectSet","create","size","toArray","_this","has","callback","Set$1","Set","Element","restore","group","_p","autoWidth","autoHeight","autoPadding","compoundBoundsClean","listeners","rstyle","styleCxts","styleKeys","selected","selectable","locked","grabbed","grabbable","pannable","active","animation","current","queue","rscratch","traversalCache","backgrounding","bbCache","bbCacheShift","bodyBounds","overlayBounds","labelBounds","all","main","arrowBounds","renderedPosition","rpos","split","cls","createEmitter","bypass","css","defineSearch","bfs","dfs","roots","directed","root","visit","found","Q","connectedNodes","connectedBy","id2depth","V","_this$byGroup","byGroup","vi","viId","unshift","_loop","shift","pop","vId","depth","prevEdge","prevNode","same","vwEdges","connectedEdges","wId","_ret","connectedEles","path","elesfn$v","breadthFirstSearch","depthFirstSearch","dijkstraDefaults","weight","elesfn$u","dijkstra","_dijkstraDefaults","weightFn","dist","knownDist","unmergeBy","isLoop","getDist","setDist","updateItem","Infinity","distBetween","u","smallestEdge","uvs","edgesTo","edgesWith","intersect","smallestDistance","_weight","smalletsDist","uid","neighbors","neighborhood","vid","vDist","alt","distanceTo","pathTo","S","spawn","elesfn$t","kruskal","numNodes","forest","A","findSetIndex","sort","setUIndex","setVIndex","setU","setV","merge","aStarDefaults","goal","heuristic","elesfn$s","aStar","_aStarDefaults","cMin","cMinId","sid","tid","gScore","fScore","closedSetIds","openSet","openSetIds","cameFrom","cameFromEdge","addToOpenSet","steps","pathNode","pathNodeId","pathEdge","distance","hasElementWithId","wSrc","wTgt","wid","tempScore","floydWarshallDefaults","elesfn$r","floydWarshall","_floydWarshallDefault","N","Nsq","indexOf","atIndex","edgeNext","st","ts","ik","_j","ij","kj","indexOfArgEle","getArgEle","res","to","fromNode","bellmanFordDefaults","elesfn$q","bellmanFord","_bellmanFordDefaults","infoMap","hasNegativeWeightCycle","negativeWeightCycles","numEdges","getInfo","getNodeFromTo","$","info","pred","replacedEdge","checkForEdgeReplacement","node1","node2","info1","info2","srcInfo","tgtInfo","negativeWeightCycleIds","_edge","_src","_tgt","_weight2","srcDist","tgtDist","findNegativeWeightCycles","negativeNodes","numNegativeNodes","start","cycle","smallestId","smallestIndex","c","concat","cycleId","thisStart","_getInfo","sqrt2","sqrt","collapse","edgeIndex","nodeMap","remainingEdges","edgeInfo","sourceIn","targetIn","partition1","partition2","newEdges","contractUntil","metaNodeMap","sizeLimit","elesfn$p","kargerStein","numIter","ceil","pow","LN2","stopSize","edgeIndexes","minCutSize","minCutEdgeIndexes","minCutNodeMap","metaNodeMap2","copyNodesMap","iter","_i4","edgesState","edgesState2","res1","res2","cut","witnessNodePartition","_i5","partitionId","constructComponent","subset","component","contains","components","modelToRenderedPosition","renderedToModelPosition","array2point","getAngleFromDisp","dispX","dispY","atan2","PI","log2","signum","p1","p2","sqdist","dx","dy","inPlaceSumNormalize","total","qbezierAt","p0","qbezierPtAt","bound","min","max","makeBoundingBox","bb","x1","y1","x2","y2","expandBoundingBoxByPoint","expandBoundingBox","expandBoundingBoxSides","top","right","bottom","left","_padding","assignBoundingBox","bb1","bb2","boundingBoxesIntersect","inBoundingBox","boundingBoxInBoundingBox","roundRectangleIntersectLine","nodeX","nodeY","straightLineIntersections","cornerRadius","getRoundRectangleRadius","halfWidth","halfHeight","topStartY","finiteLinesIntersect","rightStartX","bottomStartY","arcIntersections","leftStartX","topLeftCenterX","topLeftCenterY","intersectLineCircle","topRightCenterX","topRightCenterY","bottomRightCenterX","bottomRightCenterY","bottomLeftCenterX","bottomLeftCenterY","inLineVicinity","lx1","ly1","lx2","ly2","tolerance","inBezierVicinity","x3","y3","sqdistToQuadraticBezier","result","discriminant","dum1","term1","r13","acos","cos","solveCubic","index","abs","curX","curY","distSquared","minDistanceSquared","sqdistToFiniteLine","offset","line","lineSq","hypSq","dotProduct","adjSq","pointInsidePolygonPoints","points","up","pointInsidePolygon","basePoints","centerX","centerY","direction","angle","transformedPoints","atan","sin","expandedLineSet","expandPolygon","joinLines","lineSet","currentLineStartX","currentLineStartY","currentLineEndX","currentLineEndY","nextLineStartX","nextLineStartY","nextLineEndX","nextLineEndY","vertices","intersection","pad","currentPointX","currentPointY","nextPointX","nextPointY","offsetX","offsetY","offsetLength","normalizedOffsetX","normalizedOffsetY","checkInEllipse","radius","f","t1","t2","tMin","tMax","inRangeParams","nearIntersectionX","nearIntersectionY","midOfThree","x4","y4","infiniteLines","dx13","dx21","dx43","dy13","dy21","dy43","ua_t","ub_t","u_b","ua","ub","_min","polygonIntersectLine","currentX","currentY","nextX","nextY","intersections","doTransform","shortenIntersection","amount","disp","lenRatio","generateUnitNgonPointsFitToSquare","sides","rotationRadians","generateUnitNgonPoints","fitPolygonToSquare","minX","minY","maxX","maxY","sx","sy","_i6","increment","startAngle","currentAngle","getRoundPolygonRadius","getBarrelCurveConstants","heightOffset","widthOffset","ctrlPtOffsetPct","pageRankDefaults","dampingFactor","precision","iterations","elesfn$o","pageRank","_pageRankDefaults","numNodesSqd","matrix","columnSum","additionalProb","srcId","tgtId","indexOfId","_n3","previous","eigenvector","temp","_j2","_n4","diff","_i7","delta","rank","defaults$f","elesfn$n","degreeCentralityNormalized","indegrees","outdegrees","maxIndegree","maxOutdegree","_currDegree","degreeCentrality","indegree","outdegree","degrees","maxDegree","currDegree","degree","callingEles","_options","incoming","outgoing","k_in","k_out","s_in","s_out","connEdges","dc","dcn","degreeCentralityNormalised","defaults$e","harmonic","elesfn$m","closenessCentralityNormalized","closenesses","maxCloseness","fw","currCloseness","node_i","closeness","closenessCentrality","_defaults2","totalDistance","cc","ccn","closenessCentralityNormalised","defaults$d","elesfn$l","betweennessCentrality","weighted","_C","C","outgoers","openNeighborhood","P","_vid","empty","_v","vEle","getElementById","edgeWeight","_w","_w2","_v2","betweenness","betweennessNormalized","betweennessNormalised","bc","defaults$c","expandFactor","inflateFactor","multFactor","maxIterations","attributes","getSimilarity$1","normalize","M","sum","col","row","_row","mmult","B","expand","_M","inflate","hasConverged","n2","roundFactor","isDuplicate","c1","c2","markovClustering","setOptions$3","id2position","sim","addLoops","isStillMoving","clusters","cluster","assign$2","removeDuplicates","markovClustering$1","mcl","identity","absDiff","addAbsDiff","addSquaredDiff","maxAbsDiff","currentMax","getDistance","getP","getQ","init","post","dim","distances","euclidean","squaredEuclidean","manhattan","clusteringDistance","method","nodeP","nodeQ","impl","defaults$b","sensitivityThreshold","testMode","testCentroids","setOptions$2","type","centroid","mode","randomCentroids","ndim","centroids","classify","buildCluster","assignment","haveMatricesConverged","v1","v2","seenBefore","medoids","randomMedoids","findCost","potentialNewMedoid","cost","updateCentroids","U","numerator","denominator","_n2","updateMembership","_U","fuzzyCMeans","_c2","_c3","assign$1","degreeOfMembership","kClustering","kMeans","newCentroid","kMedoids","curCost","minCosts","fcm","defaults$a","linkage","threshold","addDendrogram","dendrogramDepth","linkageAliases","mergeClosest","dists","mins","minKey","attrs","n1","_dist","merged","key1","key2","getAllChildren","buildDendrogram","leftStr","rightStr","buildClustersFromTree","leaves","hierarchicalClustering","preferredAlias","setOptions$1","retClusters","hierarchicalClustering$1","hca","defaults$9","preference","damping","minIterations","getSimilarity","attr","getPreference","begin","end","includeHoles","off","isFinite","mid","median","mean","assignClusters","exemplars","ei","_ei","affinityPropagation","R","dmp","pref","validPrefs","some","setOptions","old","Rp","se","_i8","max2","maxI","AS","_i9","_j3","_j4","K","_i10","E","_sum","_i11","_j5","exemplarsIndices","indices","findExemplars","clusterIndices","ii","maxSum","_i12","clusterIndex","affinityPropagation$1","ap","hierholzerDefaults","elesfn$k","hierholzer","oddIn","oddOut","startVertex","_hierholzerDefaults","dflag","ind","outd","d1","d2","isEdge","trail","walk","adj","adjTail","adjHead","currentNode","subtour","hopcroftTarjanBiconnected","edgeCount","stack","visitedEdges","biconnectedSearch","low","cutVertex","sourceId","targetId","otherNodeId","edgeId","cutset","nodeId","buildComponent","cutVertices","tarjanStronglyConnected","stronglyConnectedSearch","sourceNodeId","explored","targetNodeId","componentNodes","componentEdges","difference","elesfn$j","htbc","htb","hopcroftTarjanBiconnectedComponents","tsc","tscc","tarjanStronglyConnectedComponents","api","executor","state","fulfillValue","rejectReason","onFulfilled","onRejected","proxy","fulfill","reject","deliver","curr","resolver","execute","execute_handlers","handlers","func","setImmediate","cb","resolve","resolved","ps","resolveAll","rejectAll","vals","doneCount","Promise$1","Promise","Animation","opts2","isCore","isEle","duration","started","playing","hooked","applying","progress","completes","frames","complete","startPosition","startStyle","getAnimationStartStyle","startPan","startZoom","anifn","hook","tAni","addToAnimationPool","play","stopped","pause","rewind","fastforward","time","wasPlaying","completed","swap","_pa","startStyleProp","run","running","define$3","animated","self","styleEnabled","clearQueue","delay","delayAnimation","properties","selfIsArrayLike","isEles","getPropsList","panBy","cyPan","center","centre","centerPan","getCenterPan","fitVp","getFitViewport","boundingBox","vp","getZoomedViewport","zoomed","panned","jumpToEnd","anis","ani_p","notify","define$2","field","bindingEvent","allowBinding","allowSetting","allowGetting","settingEvent","settingTriggersEvent","triggerFnName","immutableKeys","updateStyle","beforeGet","beforeSet","onSet","canSet","change","_ele","removeData","event","triggerEvent","names","i_a","l_a","_i_a","_l_a","_privateFields","_keys","define$1","eventAliasesOn","proto","addListener","listen","unlisten","unbind","removeListener","trigger","emit","pon","promiseOn","events","selector","onArgs","offArgs","elesfn$i","elesfn$h","_classes","changed","classesSet","eleClasses","changedEle","addClass","toggleClass","hasClass","className","toggle","toggleUndefd","il","changedNow","removeClass","flashClass","tokens","metaChar","comparatorOp","boolOp","meta","separator","descendant","child","subject","directedEdge","undirectedEdge","variable","ops","op","Type","stateSelectors","matches","visible","isChildless","isOrphan","isSimple","descending","lookup","selToFn","stateSelectorRegex","cleanMetaChars","$1","replaceLastQuery","examiningQuery","replacementQuery","exprs","regex","populate","_ref","checks","_ref3","_ref5","_ref7","_ref9","_ref11","_ref12","operator","_ref13","_ref14","_ref15","_ref16","currentSubject","compoundCount","lastQ","edgeQuery","srcTgtQ","_source","_target","nhoodQ","neighbor","parentChildQuery","compound","_child","_parent","_parent2","_child2","pcQChecks","ancChQuery","ancestor","_descendant","_ancestor","_ancestor2","_descendant2","adQChecks","modifier","topChk","topType","regexObj","consumeExpr","remaining","expr","consumed","parse$1","parse","inputText","currentQuery","consumeWhitespace","exprInfo","toStringCache","clean","cleanVal","space","checkToString","check","_operator","_field","_operator2","queryToString","lhs","sub","rhs","reduce","chk","valCmp","fieldVal","fieldStr","valStr","isFieldStr","isFieldNum","isValStr","caseInsensitive","notExpr","isIneqCmp","data$1","matches$1","every","sel","stateSelectorMatches","boolCmp","qA","qB","incomers","ancestors","descendants","matching","selectorFunction","text","Selector","addQuery","invalid","selfn","eq","sameText","otherSel","elesfn$g","allAre","selObj","thisLength","anySame","allAreNeighbors","nhood","allAreNeighbours","equal","equals","fn$5","elesfn$e","arg1","arg2","arg3","arg4","selectorOrEles","tch","ch","cacheHit","elesfn$f","parents","commonAncestors","orphans","stdFilter","nonorphans","eleChildren","siblings","not","forEachCompound","includeSelf","recursiveStep","did","hasCompounds","hasCompoundNodes","addChildren","addParent","addParentAndChildren","forEachDown","forEachUp","forEachUpAndDown","removeScratch","removeRscratch","removeAttr","fn$4","elesfn$c","elesfn$d","defineDegreeFunction","includeLoops","defineDegreeBoundsFunction","degreeFn","minDegree","minIndegree","minOutdegree","totalDegree","beforePositionSet","newPos","silent","oldPos","dirtyBoundingBoxCache","positionDef","validKeys","updateCompoundBounds","dirtyCompoundBoundsCache","silentPosition","positions","_fn","startBatch","_pos","endBatch","silentPositions","silentShift","setting","relativePosition","ppos","_hasParent","_relativeToParent","_origin","_ele2","hasParent","relativeToParent","modelPosition","point","modelPositions","renderedPoint","relativePoint","fn$3","elesfn$b","renderedBoundingBox","emitAndNotify","force","batching","update","includeLabels","pstyle","pfValue","includeOverlays","useCache","leftVal","units","rightVal","topVal","bottomVal","widthBiasDiffs","computeBiasValues","diffLeft","biasDiff","diffRight","biasComplementDiff","heightBiasDiffs","diffTop","diffBottom","paddingObject","relativeTo","computePaddingValues","propDiff","propBias","propBiasComplement","biasTotal","noninf","updateBounds","updateBoundsFromBox","b2","prefixedProperty","updateBoundsFromArrow","bounds","headless","halfArW","arrowWidth","srcX","srcY","tgtX","tgtY","midX","midY","bbs","updateBoundsFromLabel","prefixDash","strValue","labelWidth","labelHeight","labelX","labelY","marginX","marginY","rotation","outlineWidth","halfBorderWidth","lh","lw","lw_2","lh_2","bbPrefix","isAutorotate","isPfValue","theta","xo","yo","rotate","px1y1","px1y2","px2y1","px2y2","bbPrefixRot","bbRot","getKey","tf","incudeNodes","includeEdges","includeMainLabels","includeSourceLabels","includeTargetLabels","getBoundingBoxPosKey","ints","hashIntsArray","cachedBoundingBoxImpl","usingDefOpts","defBbOptsKey","currPosKey","isPosKeySame","bbCachePosKey","isDirty","styleDirty","recalculateRenderedStyle","ex1","ex2","ey1","ey2","manualExpansion","isDisplayed","displayed","overlayPadding","underlayPadding","includeUnderlays","wHalf","includeNodes","halfW","outerWidth","halfH","outerHeight","curveStyle","hpts","haystackPts","_temp","pts","bezierPts","linePts","pt","n1pos","n2pos","_temp2","_temp3","gx","gy","bbBody","bbOverlay","bbLabels","boundingBoxImpl","defBbOpts","mainRot","sourceRot","targetRot","filledBbOpts","boundingBoxAt","bbAtOldPos","copyBoundingBox","boundingbox","renderedBoundingbox","fn$2","elesfn$a","defineDimFns","uppercaseName","autoName","labelName","outerName","uppercaseOuterName","paddedHeight","paddedWidth","widthHeight","controlPoints","renderer","getControlPoints","mult","segmentPoints","getSegmentPoints","sourceEndpoint","getSourceEndpoint","targetEndpoint","getTargetEndpoint","midpoint","getEdgeMidpoint","edgePoints","spec","rName","substr","renderedName","getValue","ifEdge","getPoints","ifEdgeRenderedPositions","getPoint","ifEdgeRenderedPosition","dimensions","Event","recycle","returnFalse","returnTrue","isImmediatePropagationStopped","isPropagationStopped","isDefaultPrevented","preventDefault","defaultPrevented","originalEvent","namespace","timeStamp","stopPropagation","stopImmediatePropagation","eventRegex","defaults$8","qualifierCompare","q1","q2","eventMatches","addEventFields","callbackContext","context","beforeEmit","afterEmit","bubble","defaultsKeys","emptyOpts","Emitter","emitting","forEachEvent","handler","qualifier","conf","confOverrides","eventList","evt","makeEventObj","forEachEventObj","listener","removeAllListeners","extraParams","manualCallback","numListenersBeforeEmit","eventObj","_loop2","otherArr","emitterOptions$1","selector1","selector2","once","onceCollection","argSelector$1","elesfn$9","emitter","argSel","elesfn$8","_filter","filterEles","toRemove","absoluteComplement","mutableElements","other","col2","col1Smaller","colS","colL","xor","both","retEles","toAdd","spawnSelf","toAddEle","unmergeAt","unmergedLastEle","lastEleI","lastEle","lastEleId","unmergeOne","unmerge","toRmFn","mapFn","initialValue","valFn","maxEle","minEle","fn$1","union","or","relativeComplement","subtract","and","symmetricDifference","symdiff","fnFilter","filterFn","complement","abscomp","zIndexSort","getDepth","zDepth","depthDiff","getEleDepth","eleDiff","zDiff","poolIndex","elesfn$6","thisSize","first","last","sortFn","sorted","sortByZIndex","srcDepth","tgtDepth","each","typeofUndef","defineSymbolIterator","getLayoutDimensionOptions","elesfn$5","takesUpSpace","bbDim","layoutEles","getMemoizeKey","fnMem","animations","useSpacingFactor","spacingFactor","spacingBb","getFinalPos","spacing","nodesBb","calculateSpacing","ani","easing","fitAni","zoomPanAni","makeLayout","styleCache","cacheStyleFunction","cachePrototypeStyleFunction","selfFn","createLayout","elesfn$4","dirtyStyleCache","dirty","notifyRenderer","batchStyleEles","updatedEles","changedEles","cleanStyle","parsedStyle","property","includeNonDefault","overriddenStyle","getDefaultProperty","numericStyle","numericStyleUnits","renderedStyle","getRenderedStyle","applyBypass","getStylePropertyValue","getRawStyle","removeStyle","removeAllBypasses","removeBypasses","show","hide","effectiveOpacity","parentOpacity","checkCompound","parentOk","defineDerivedStateFunction","specs","ok","edgeOkViaNode","eleTakesUpSpace","eleInteractive","parentInteractive","interactive","noninteractive","eleVisible","edgeVisibleViaNode","hidden","isBundledBezier","renderedCss","removeBypass","removeCss","elesfn$3","defineSwitchFunction","_handler","addlEvents","able","ableField","overrideAble","changedColl","defineSwitchSet","overrideField","autolock","autoungrabify","autounselectify","deselect","unselect","inactive","elesfn$2","defineDagExtremity","disqualified","noIncomingEdges","noOutgoingEdges","defineDagOneHop","oEles","defineDagAllHops","sEles","sElesIds","newNext","nid","defineSourceFunction","sources","defineEdgesWithFunction","otherNodes","edgeData","thisToOther","otherToThis","thisIsSrc","thisIsTgt","defineParallelEdgesFunction","codirected","edge1_p","src1","srcid1","tgtid1","srcEdges1","edge2","edge2data","tgtid2","srcid2","oppdirected","clearTraversalCache","successors","predecessors","otherNode","closedNeighborhood","neighbourhood","closedNeighbourhood","openNeighbourhood","targets","parallelEdges","codirectedEdges","visited","unvisited","visitInComponent","cmpt","componentsOf","Collection","unique","createdElements","elesIds","json","_data","_l","element$1","lazyMap","rebuildMap","elesfn$1","$id","_data2","move","newParentValSpecd","checkSwitch","trueFnName","falseFnName","obj_k","jsons","elesArr","addToPool","cy_p","removeFromElements","_data3","fields","fieldsLength","badSourceOrTarget","_data4","parentId","selfAsParent","restored","_ele3","inside","remove","removeFromPool","elesToRemove","elesToRemoveIds","alreadyAdded","addConnectedEdges","removeEdgeRef","removeParallelRef","pllEdge","alteredParents","removeChildRef","pid","ids","_ele4","pllEdges","elesStillInside","removedElements","_ele6","struct","modifyPool","srcExists","tgtExists","batch","_data5","pidToAssign","updated","_data6","corefn$9","elesByGroup","_jsons2","grs","elesArray","jl","generateCubicBezier","mX1","mY1","mX2","mY2","NEWTON_ITERATIONS","NEWTON_MIN_SLOPE","SUBDIVISION_PRECISION","SUBDIVISION_MAX_ITERATIONS","kSplineTableSize","kSampleStepSize","float32ArraySupported","Float32Array","mSampleValues","aA1","aA2","calcBezier","aT","getSlope","getTForX","aX","intervalStart","currentSample","lastSample","guessForT","initialSlope","aGuessT","currentSlope","newtonRaphsonIterate","aA","aB","currentT","binarySubdivide","_precomputed","precompute","calcSampleValues","generateSpringRK4","springAccelerationForState","tension","friction","springEvaluateStateWithDerivative","initialState","dt","derivative","dv","springIntegrateState","dxdt","dvdt","springRK4Factory","have_duration","last_state","initState","time_lapsed","percentComplete","cubicBezier","bezier","percent","easings","linear","spring","getEasedValue","easingFn","roundValue","ease","startProp","endProp","propSpec","easedArr","si","step$1","pEasing","startTime","easingImpl","easingVals","startPos","endPos","valid","endPan","animatingPan","endZoom","animatingZoom","minZoom","maxZoom","_name","easedVal","overrideBypass","startAnimation","stepAll","aniEles","doneEles","stepOne","ranAnis","callbacks","_callbacks","step","ranEleAni","handledThisEle","ranCoreAni","corefn$8","stopAnimationLoop","animationsRunning","startAnimationLoop","beforeRender","willDraw","beforeRenderPriorities","headlessStep","emitterOptions","argSelector","elesfn","corefn$7","png","jpg","bg","jpeg","corefn$6","extension","corefn$5","eventName","eventEles","batchNotifications","notificationsEnabled","destroyed","notifications","bool","noNotifications","batchCount","batchData","rendererDefaults","hideEdgesOnViewport","textureOnViewport","motionBlur","motionBlurOpacity","pixelRatio","desktopTapThreshold","touchTapThreshold","wheelSensitivity","debug","showFps","corefn$4","renderTo","pxRatio","forceRender","resize","invalidateSize","initRenderer","RendererProto","rOpts","destroyRenderer","domEle","_cyreg","childNodes","onRender","offRender","invalidateDimensions","corefn$3","styfn$8","TRUE","ie","cxtMeta","getContextMeta","cxtStyle","getContextStyle","app","applyContextStyle","appliedInitStyle","updateTransitions","diffProps","updateStyleHints","getPropertiesDiff","oldCxtKey","newCxtKey","propDiffs","dualCxtKey","cachedVal","addedProp","cxt","oldHasCxt","newHasCxt","cxtHasDiffed","cxtHasMappedProps","mappedProperties","laterCxtOverrides","laterCxt","cxtKey","prevKey","styleCxtKey","diffPropNames","cxtStyles","contextStyles","retDiffProps","types","diffPropName","cxtProp","eleProp","deleteBypassed","mapped","mapping","fnValue","prevFnValue","retDiffProp","applyParsedProperty","bypassed","propNames","propertyGroupNames","propGrKeys","propertyGroupKeys","propHash","seedKey","getPropertiesHash","oldStyleKey","styleKey","overriddenStyles","grKey","updateGrKey1","updateGrKey2","updateGrKey","updateGrKeyWStr","strVal","parsedProp","propInfo","_grKey","groupKey","normalizedNumberVal","hashOverride","numberVal","enums","haveNormNum","haveNum","multiple","hash1","hash2","_grKey2","grHash","sk","labelDimsKey","labelDimensions","labelKeys","labelKey","labelStyleKey","commonLabel","sourceLabelKeys","sourceLabelKey","sourceLabelStyleKey","targetLabelKeys","targetLabelKey","targetLabelStyleKey","_p$styleKeys","nodeBody","nodeBorder","backgroundImage","pie","nodeKeys","nodeKey","hasPie","clearStyleHints","flatProp","propIsBypass","origProp","origPropIsBypass","flatPropMapping","getVal","checkTriggers","fromVal","toVal","deleteBypass","printMappingErr","mapData","fieldWidth","fieldMax","fieldMin","r1","valueMin","r2","valueMax","g1","g2","b1","a1","a2","clr","calcValue","_fields","_fieldVal","fnRetVal","cleanElements","keepBypasses","anyPrev","styProp","diffProp","fromProp","toProp","initVal","initDt","transitioning","checkTrigger","fromValue","toValue","getTrigger","onTrigger","triggerCheck","checkZOrderTrigger","triggersZOrder","checkBoundsTrigger","triggersBounds","triggersBoundsOfParallelBeziers","styfn$7","_parsedProp","specifiedProps","_name2","_value","_parsedProp2","_prop","prevProp","isColor","isMulti","mutiple","oldValue","propertyNames","styfn$6","px","containerCss","domElement","getComputedStyle","getPropertyValue","styfn$5","isRenderedVal","subproperty","alias","pointsTo","styleProp","getRenderedValue","getValueStringWithUnits","isArrayValue","aniProps","propsObj","chVal","getNonDefaultPropertiesHash","styfn$4","resetToDefault","appendFromJson","defaultLength","styfn$3","selAndBlockStr","blockRem","propAndValStr","removeSelAndBlockFromRemaining","removePropAndValFromRem","selAndBlock","selectorStr","blockStr","invalidBlock","propAndVal","propStr","appendFromString","styfn$2","mapArg","urlRegexes","implicitUnits","percentages","zeroOneNumber","unitless","zeroOneNumbers","nOneOneNumber","nonNegativeInt","integer","nodeSize","numbers","positiveNumber","strictMin","bidirectionalSize","bidirectionalSizeMaybePercent","allowPercent","bidirectionalSizes","sizeMaybePercent","axisDirection","paddingRelativeTo","bgWH","bgPos","bgRelativeTo","bgRepeat","bgFit","bgCrossOrigin","bgClip","bgContainment","fill","bools","lineStyle","lineCap","borderStyle","fontFamily","fontStyle","fontWeight","textDecoration","textTransform","textWrap","textOverflowWrap","textBackgroundShape","nodeShape","overlayShape","compoundIncludeLabels","arrowShape","arrowFill","display","visibility","zCompoundDepth","zIndexCompare","justification","layoutData","mapLayoutData","mapScratch","url","regexes","singleRegexMatchValue","urls","propList","textRotation","polygonPointList","evenMultiple","edgeDistances","edgeEndpoint","singleEnum","validate","valArr","unitsArr","gradientDirection","boundsExpansion","zeroNonZero","val1","val2","any","emptyNonEmpty","str1","str2","empty1","empty2","mainLabel","sourceLabel","targetLabel","behavior","overlay","underlay","transition","nodeSizeHashOverride","edgeLine","ghost","pieBackgroundN","edgeArrow","arrowPrefixes","propGroups","propertyGroups","propGroupNames","aliases","pointsToProp","aliasProp","getDefaultProperties","defaultProperties","rawProps","parsedProps","addDefaultStylesheet","styfn$1","propIsFlat","parseImplWarn","argHash","propCache","parseImpl","passedValue","valueIsString","trim","_mapped","pfValArr","hasEnum","deg","checkEnums","unitsRegex","strictMax","getEmSizeInPixels","propsStr","propsSplit","tuple","enumProp","Style","coreStyle","styfn","clear","ele_p","mapVal","cssRule","append","appendToStyle","fromJson","fromString","corefn$2","newStyle","setStyle","generateStyle","corefn$1","selectionType","selType","panningEnabled","userPanningEnabled","zoomingEnabled","userZoomingEnabled","boxSelectionEnabled","arg0","viewportState","bbe","zoomRange","currentPan","currentZoom","bail","level","pan1","zoom1","zoom2","viewport","zoomDefd","panDefd","zoomFailed","panFailed","z","cancelOnFailedZoom","reset","sizeCache","clientWidth","clientHeight","extent","rb","renderedExtent","multiClickDebounceTime","_int","autolockNodes","autoungrabifyNodes","Core","reg","destroy","readies","head","defVal","def","altVal","rendererOptions","extData","loadExtData","thens","initStyle","initEles","onload","ondone","oldEles","layoutOpts","setElesAndLayout","corefn","isReady","isHeadless","mount","unmount","idInJson","updateEles","gr","toMod","_toMod$_i","_json","parentsToRemove","getFreshRef","defaults$7","circle","grid","avoidOverlap","maximal","depthSort","setInfo","BreadthFirstLayout","maximalAdjustments","rootsArray","comp","compRoots","depths","foundByBfs","addToDepth","pNode","orphanNodes","assignDepthsAt","assignDepths","adjustMaximally","shifted","eInfo","maxDepth","incmr","iInfo","newDepth","changeDepth","enqueue","didShift","minDistance","nbb","cachedWeightedPercent","getWeightedPercent","eleDepth","samples","bf","nDepth","orphanDepth","biggestDepthSize","maxDepthSize","_getInfo2","depthSize","distanceX","distanceY","radiusStepSize","defaults$6","sweep","clockwise","CircleLayout","counterclockwise","dTheta","dcos","dsin","rMin","rx","ry","DEBUG","defaults$5","equidistant","minNodeSpacing","concentric","levelWidth","ConcentricLayout","nodeValues","maxNodeSize","levels","currentLevel","minDist","firstLvlHasMulti","rStep","rDeltaMax","_r","rDelta","_level2","_level3","_dTheta","_r2","_val","defaults$4","animationThreshold","refresh","randomize","componentSpacing","nodeRepulsion","nodeOverlap","idealEdgeLength","edgeElasticity","nestingFactor","gravity","initialTemp","coolingFactor","minTemp","CoseLayout","layoutInfo","createLayoutInfo","printLayoutInfo","randomizePositions","refreshPositions","mainLoop","temperature","getScaledPos","getScaleInBoundsFn","loopRet","frame","separateComponents","thread","isCompound","layoutNodes","idToIndex","graphSet","indexToGraph","layoutEdges","edgeSize","id2cmptId","tempNode","isLocked","cmptId","positionX","positionY","padLeft","padRight","padTop","padBottom","tempGraph","p_id","node_id","node_ix","tempEdge","idealLength","elasticity","sourceIx","targetIx","lca","findLCA","lcaGraph","findLCA_aux","count","graphIx","nodeIx","coseBB","lnode","pctX","pctY","_step","calculateNodeForces","calculateEdgeForces","calculateGravityForces","propagateForces","updatePositions","randomDistance","directionX","directionY","overlap","nodesOverlap","forceX","forceY","point1","findClippingPoint","point2","distanceSqr","dX","dY","overlapX","overlapY","X","Y","H","W","dirSlope","nodeSlope","lx","ly","fx","fy","nodeIndex","offX","offY","childNode","tempForce","limitForce","updateAncestryBoundaries","flag","cid","totalA","usedW","rowH","maxRowW","defaults$3","avoidOverlapPadding","condense","rows","cols","GridLayout","cells","splits","small","large","oRows","oCols","columns","sm","lg","_sm","_lg","cellWidth","cellHeight","cellUsed","used","use","moveToNextCell","id2manPos","rcPos","defaults$2","NullLayout","defaults$1","PresetLayout","posIsFn","copyPosition","getPosition","defaults","RandomLayout","NullRenderer","noop","throwImgErr","BRp$f","arrowShapes","bbCollide","translation","edgeWidth","xRotated","yScaled","transformPoints","retPts","pointsToArr","standardGap","defineArrowShape","defn","collide","roughCollide","draw","arrowShapeImpl","gap","controlPoint","ptsTrans","ctrlPt","ctrlPtTrans","pointsTee","triPts","teePts","pointsTr","circleInside","getArrowWidth","baseCrossLinePts","crossLinePts","shiftFactor","BRp$e","clientX","clientY","offsets","findContainerClientCoords","offsetLeft","offsetTop","scale","containerBB","rect","getBoundingClientRect","styleValue","paddingHor","paddingVer","borderHor","unscaledW","unscaledH","interactiveElementsOnly","isTouch","findNearestElements","nearEdge","nearNode","getCachedZSortedEles","near","edgeThreshold","nodeThreshold","labelThreshold","minSqDist","addEle","sqDist","checkNode","hw","hh","nodeShapes","getNodeShape","checkPoint","checkEdge","rs","styleWidth","widthSq","width2","edgeType","allpts","arSize","arrows","arrowStartX","arrowStartY","srcArrowAngle","arrowEndX","arrowEndY","tgtArrowAngle","midsrcArrowAngle","midtgtArrowAngle","ar","shape","preprop","pre","checkLabel","th","ox","oy","box","x1c","x2c","y1c","y2c","boxBb","nodeBb","startX","startY","endX","endY","allInside","BRp$d","isHaystack","isBezier","isMultibezier","isSegments","isSelf","segpts","i1","i2","i3","bp0x","bp0y","bp1x","bp1y","ctrlpts","ic","midDispX","midDispY","getArrowHeight","arrowWidthCache","BRp$c","getPts","findHaystackPoints","haystack","srcPos","tgtPos","srcW","tgtW","srcH","tgtH","halfRadius","storeEdgeProjections","calculateArrowAngles","recalculateEdgeLabelProjections","calculateLabelAngles","findSegmentsPoints","pairInfo","posPts","intersectionPts","vectorNormInverse","segmentWs","segmentDs","segmentsN","w1","w2","midptPts","adjustedMidpt","findLoopPoints","edgeIsUnbundled","dirCounts","ctrlptDists","ctrlptDist","loopDir","loopSwp","stepSize","loopDist","loopAngle","outAngle","inAngle","String","findCompoundLoopPoints","loopaPos","loopbPos","loopPos","compoundStretchA","compoundStretchB","findStraightEdgePoints","findBezierPoints","edgeIsSwapped","ctrlptWs","bezierN","ctrlptWeight","multi","normctrlptDist","manctrlptDist","sign","distanceFromMidpoint","findTaxiPoints","VERTICAL","HORIZONTAL","LEFTWARD","RIGHTWARD","DOWNWARD","UPWARD","dIncludesNodeBody","taxiDir","rawTaxiDir","taxiTurn","turnIsPercent","taxiTurnPfVal","turnIsNegative","minD","dw","dh","pdx","pdy","subDWH","dxy","dwh","isExplicitDir","isVert","pl","sgnL","forcedDir","getIsTooClose","isTooCloseSrc","isTooCloseTgt","lShapeInsideSrc","lShapeInsideTgt","_lShapeInsideSrc","_lShapeInsideTgt","_y","_x","_x2","_x3","_y2","_y3","_y4","_x4","_x5","_x6","_y5","_y6","tryToCorrectInvalidPoints","srcShape","tgtShape","badStart","badAStart","badEnd","badAEnd","minCpADist","arrowShapeWidth","startACpDist","closeStartACp","endACpDist","closeEndACp","overlapping","cpD","cpL","cpM","cpProj","srcCtrlPtIntn","intersectLine","_cpD","_cpL","_cpM","_radius","_cpProj","tgtCtrlPtIntn","findEndpoints","storeAllpts","checkForInvalidEdgeWarning","loggedErr","findEdgeControlPoints","hashTable","pairId","map2","pairIds","haystackEdges","edgeIsBezier","tableEntry","hasUnbundled","hasBezier","swappedpairInfo","edge1","firstEdge","_curveStyle","_edgeIsUnbundled","calculatedIntersection","srcOutside","srcIntn","tgtOutside","tgtIntn","vector","vectorNorm","passedPairInfo","BRp$b","npos","p1_i","p2_i","tgtArShape","srcArShape","et","lines","segments","hasEndpts","overrideEndpts","srcManEndpt","srcManEndptVal","tgtManEndpt","tgtManEndptVal","cpStart","srcArrowFromPt","manualEndptToPx","trs","lw2","lh2","va","ha","labelIntersect","refPt","intSqdist","labIntSqdist","arrowEnd","edgeEnd","srs","_lw","_lh","_lx","_ly","_lw2","_lh2","_va","_ha","_labelIntersect","_refPt","_intSqdist","_labIntSqdist","_minSqDist","arrowStart","edgeStart","badLine","BRp$a","pushBezierPts","qbezierAt$1","p3","bpts","bezierProjPcts","lpts","recalculateEdgeProjections","BRp$9","content","textX","textY","nodeWidth","nodeHeight","nodePos","textHalign","textValign","applyLabelDimensions","lineAngleFromDelta","lineAngle","setRs","midAngle","createControlPointInfo","startDist","nProjs","addSegment","cp","t0","prevSegment","segment","prevCp","calculateEndProjection","isSrc","cps","totalDist","_cp","_seg","lastSeg","seg","tSegment","segDt","lp0","lp1","bezierAngle","di","d0","_t","vec","vecDist","normVec","lineAt","applyPrefixedLabelDimensions","getLabelText","labelDims","calculateLabelDimensions","lineHeight","numLines","normPerLineHeight","labelLineHeight","pfd","wrapStyle","maxW","overflowAny","wrappedLines","wordsRegex","wordSeparator","lineW","processedLine","words","subline","word","testLine","_maxW","ellipsized","incLastCh","getLabelJustification","cacheKey","labelDimCache","existingVal","fStyle","family","canvas","labelCalcCanvas","c2d","labelCalcCanvasContext","getContext","ds","zIndex","pointerEvents","font","metrics","measureText","calculateLabelAngle","rot","rotStr","labelAutoAngle","labelAngle","sourceLabelAngle","targetLabelAngle","BRp$8","warnedCutRect","makePolygon","BRp$7","elesToUpdate","dirtyStyleCaches","cleanConnected","binder","updateEleCalcs","fns","onUpdateEleCalcsFns","flushRenderedStyleQueue","eleCalcs","isCleanConnected","_rstyle","recalculateNodeLabelProjection","nodeW","nodeH","_p3","_rstyle2","BRp$6","cachedZSortedEles","drag","nondrag","grabTargets","inDragLayer","forceRecalc","updateCachedGrabbedEles","BRp$5","BRp$4","crossOrigin","onLoad","imageCache","image","addEventListener","Image","dataUriPrefix","BRp$3","useCapture","tgtIsDom","supportsPassiveEvents","supportsPassive","capture","passive","bindings","nodeIsDraggable","nodeIsGrabbable","load","isSelected","triggerEvents","isMultSelKeyDown","shiftKey","metaKey","ctrlKey","allowPanningPassthrough","down","downs","allowPassthrough","setInDragLayer","setGrabTarget","isGrabTarget","addToDragList","list","addToList","setGrabbed","addNodesToDrag","innerNodes","addDescendantsToDrag","updateAncestorsInDragLayer","addNodeToDrag","freeDraggedElements","grabbedEles","setFreed","setOutDragLayer","removeGrabTarget","blurActiveDomElement","activeElement","blur","haveMutationsApi","MutationObserver","haveResizeObserverApi","ResizeObserver","removeObserver","mutns","rNodes","removedNodes","observe","childList","registerBinding","onResize","styleObserver","resizeObserver","invalidateCoords","invalidateContainerClientCoordsCache","clickTimeout","didDoubleClick","prevClickTimeStamp","eventInContainer","containerPageCoords","touches","atLeastOnePosInside","tParent","containerIsTarget","hoverData","which","gpos","projectIntoViewport","select","selection","nears","draggedElements","dragData","possibleDragElements","mdownPos","mdownGPos","cxtStarted","cxtEvt","activate","downTime","getTime","cxtDragged","makeEvent","selectedNodes","redrawHint","bgActivePosistion","redraw","tapholdCancelled","clearTimeout","tapholdTimeout","tapholdDuration","draggingEles","dragging","selecting","findNearestElement","isOverThresholdDrag","dx2","dist2","desktopTapThreshold2","multSelKeyDown","goIntoBoxMode","cxtOver","deltaP","justStartedPan","mdPos","dragged","unactivate","didDrag","justStartedDrag","totalShift","dragDelta","updateDragDelta","cxtTap","getAllInBox","eleWouldBeSelected","downWasGrabbed","f1x1","f1y1","f2x1","f2y1","distance1","distance1Sq","center1","modelCenter1","containerWidth","containerHeight","twoFingersStartInside","wheelHandler","scrollingPage","wheelZooming","wheelTimeout","deltaY","wheelDeltaY","wheelDelta","deltaMode","newZoom","gestureStartZoom","scrollingPageTimeout","hasTouchStarted","touchstartHandler","touchmoveHandler","touchcancelHandler","touchendHandler","didDoubleTouch","touchTimeout","prevTouchTimeStamp","distanceSq","touchData","earlier","singleTouchMoved","touchDragEles","cxtDistThreshold","near1","near2","starts","draggedEles","singleTouchStartTime","pinching","sPos","touch0","startGPosition","startGPos","touchTapThreshold2","f1x2","f1y2","f2x2","f2y2","distance2Sq","factorThreshold","distThreshold","lastThreeTouch","didSelect","de_p","_start","distance2","factor","tx","ty","ctrx","ctry","pan2","swipePanning","ctxTapend","ctxTap","startWasGrabbed","rdist2","TouchEvent","pointers","makeTouch","identifier","pointerId","pageX","pageY","radiusX","radiusY","screenX","screenY","addPointer","touch","makePointer","removePointer","addTouchesToEvent","pointerIsMouse","pointerType","updatePointer","BRp$2","nodeShapeImpl","generateEllipse","ellipseWradius","ellipseHradius","newLength","lenProportion","intersectLineEllipse","generateRoundPolygon","allPoints","sourceIndex","destIndex","xDest","yDest","norm","destUv","sourceUv","py","cosTheta","cp0x","cp0y","cp1x","cp1y","orthx","orthy","lowestIntersection","lowestSquaredDistance","squaredDistance","roundPolygonIntersectLine","cutPolygonPoints","squaredCornerRadius","cx","pointInsideRoundPolygon","generateRoundRectangle","diam","generateCutRectangle","cornerLength","generateCutTrianglePts","cl","xBegin","xEnd","yBegin","yEnd","topLeft","topRight","bottomRight","bottomLeft","cPts","cutTrianglePts","generateBarrel","bPts","generateBarrelBezierPts","approximateBarrelCurvePts","m0","m1","m2","curveConstants","hOffset","wOffset","ctrlPtXOffset","isTop","isBottom","barrelCurvePts","getCurveT","curvePts","x0","y0","xMin","xMax","yMin","yMax","coeff","validRoots","sqrtR","denom","solveQuadratic","curveRegions","cornerPts","bezY","generateBottomRoundrectangle","topIntersections","registerNodeShapes","generatePolygon","diamondPoints","star5Points","outerPoints","innerPoints","innerRadius","tagPoints","BRp$1","redrawTotalTime","redrawCount","averageRedrawTime","lastRedrawTime","lastDrawTime","requestedFrame","renderOptions","cbs","beforeRenderCallbacks","startRenderLoop","renderLoopStarted","renderFn","requestTime","skipFrame","render","endTime","BR","BRp","clientFunctions","ctr","stylesheetId","stylesheetAlreadyExists","innerHTML","insertBefore","triggerMode","initialPan","redraws","motionBlurEnabled","forcedPixelRatio","motionBlurTransparency","motionBlurPxRatio","mbPxRBlurry","minMbLowQualFrames","fullQualityMb","clearedForMotionBlur","eleTxrDeq","lyrTxrDeq","lyrTxrSkip","registerArrowShapes","registerCalculationListeners","invalidateCachedZSortedEles","matchCanvasSize","removeEventListener","disconnect","labelCalcDiv","fullFpsTime","defs","dequeueingSetup","queueRedraw","deqRedrawThreshold","frameStartTime","avgRenderTime","renderTime","deqd","getPixelRatio","frameDuration","timeAvailable","deqFastCost","deqCost","deqAvgCost","deqNoDrawCost","thisDeqd","deq","onDeqd","shouldRedraw","ElementTextureCacheLookup","doesEleInvalidateKey","idsByKey","keyForId","cachesByLvl","lvls","getIdsFor","currKey","deleteIdForKey","addIdForKey","keyHasChangedFor","lvl","caches","getCachesAt","getCache","updateKeyMappingFor","hasCache","setCache","deleteCache","deleteKeyMappingFor","entireKeyInvalidated","invalidateKey","getNumberOfIdsForKey","getTxrReasons","dequeue","downscale","highQuality","initDefaults","drawElement","getBoundingBox","getRotationPoint","getRotationOffset","isVisible","allowEdgeTxrCaching","allowParentTxrCaching","ElementTextureCache","initOptions","onDequeues","setupDequeueing","ETCp","reasons","getTextureQueue","txrH","eleImgCaches","getRetiredTextureQueue","rtxtrQs","retired","getElementQueue","eleCacheQueue","reqs","getElementKeyToQueue","eleKeyToCacheQueue","getElement","reason","eleScaledH","eleScaledW","scaledLabelShown","eleTextBiggerThanMin","eleCache","invalidated","texture","invalidatedWidth","txrQ","txr","addNewTxr","recycleTexture","addTexture","usedWidth","higherCache","scalableFrom","otherCache","deqing","highQualityReq","downscaleReq","oneUpCache","drawImage","setTransform","clearRect","queueElement","lowerCache","_l2","translate","eleCaches","checkTextureFullness","invalidateElements","invalidateElement","isInvalid","getForCachedKey","invalidate","_cache","checkTextureUtility","removeFromQueue","retireTexture","fullnessChecks","minW","makeOffscreenCanvas","rtxtrQ","k2q","existingReq","req","dequeued","cacheExists","onDequeue","offDequeue","LayeredTextureCache","layersByLevel","firstGet","lastInvalidationTime","skipping","eleTxrDeqs","scheduleElementRefinement","refineElementTextures","layersQueue","LTCp","layerIdPool","MAX_INT","makeLayer","layer","elesQueue","getLayers","validateLayersElesOrdering","tmpLayers","layersByLvl","layers","levelIsComplete","canUseAsTmpLvl","checkLvls","dir","checkTempLevels","after","getBb","insert","maxElesPerLayer","allowLazyQueueing","imgLayerCaches","existingLayer","queueLayer","drawEleInLayer","getEleLevelForLayerLevel","setImgSmoothing","drawCachedElement","numElesInLayers","invalidateLayer","updateElementsInLayers","haveLayers","replacement","rLyr","replaces","enqueueElementRefinement","elesQ","hasId","eleDeqs","peek","applyLayerReplacement","requestRedraw","layersInLevel","replaced","CRp$a","polygon","lineTo","triangleBackcurve","firstPt","quadraticCurveTo","triangleTee","trianglePoints","teePoints","beginPath","firstTeePt","moveTo","closePath","circleTriangle","arc","firstTrPt","CRp$9","shiftToOriginWithBb","showLabel","showOverlay","showOpacity","drawNode","drawEdge","drawNodeOverlay","drawEdgeOverlay","drawNodeUnderlay","drawEdgeUnderlay","eleTxrCache","getRotation","getOpacity","opacity","smooth","oldGlobalAlpha","rotPt","getImgSmoothing","globalAlpha","getZeroRotation","getLabelRotation","getTextAngle","getSourceLabelRotation","getTargetLabelRotation","getTextOpacity","requestHighQuality","_r$data","lblTxrCache","slbTxrCache","tlbTxrCache","drawElementUnderlay","drawCachedElementPortion","drawElementOverlay","drawElements","drawCachedElements","drawCachedNodes","drawLayeredElements","lyrTxrCache","CRp$8","drawLabel","shouldDrawOverlay","shouldDrawOpacity","lineOpacity","effectiveLineOpacity","effectiveArrowOpacity","drawLine","strokeOpacity","eleStrokeStyle","drawEdgeTrianglePath","lineWidth","drawEdgePath","drawArrows","arrowOpacity","drawArrowheads","lineJoin","ghostOpacity","effectiveGhostOpacity","drawElementText","drawEdgeOverlayUnderlay","overlayOrUnderlay","usePaths","colorStrokeStyle","canvasCxt","pathCacheHit","lineDashPattern","lineDashOffset","pathCacheKey","pathCache","Path2D","setLineDash","stroke","fillStyle","strokeStyle","normal","triangleHead","drawArrowhead","arrowClearFill","edgeOpacity","gco","globalCompositeOperation","colorFillStyle","drawArrowShape","canvasContext","shapeImpl","arrowPathCache","cachedPath","matchEdgeWidth","CRp$7","img","ix","iy","iw","ih","nodeOpacity","styleObj","getIndexedStyle","repeat","paddingX2","nodeTW","nodeTH","shouldClip","imgOpacity","imgW","cachedW","imgH","cachedH","offsetWidth","offsetHeight","posXUnits","posXPfVal","offXUnits","offXPfVal","posYUnits","posYPfVal","offYUnits","offYPfVal","gAlpha","smoothingEnabled","isSmoothingSwitched","save","clip","safeDrawImage","pattern","createPattern","CRp$6","useEleOpacity","label","textAlign","textBaseline","_label","srcLabel","tgtLabel","applyRotation","drawText","getFontCache","fontCaches","setupTextStyle","labelStyle","labelSize","labelFamily","labelWeight","outlineOpacity","outlineColor","pdash","textAngle","orgTextX","orgTextY","textW","textH","backgroundOpacity","borderOpacity","textBorderWidth","backgroundPadding","bgX","bgY","bgW","bgH","textFill","textBackgroundColor","ctx","roundRect","fillRect","textStroke","textLineWidth","textBorderColor","textBorderStyle","strokeRect","whiteWidth","halfTextW","strokeText","fillText","CRp$5","eleOpacity","urlDefined","numImages","bgImgCrossOrigin","getCachedImage","backgroundTimestamp","darkness","borderWidth","bgOpacity","borderColor","setupShapeColor","bgOpy","eleFillStyle","setupBorderColor","bdrOpy","styleShape","shapePts","nodePathCache","drawShape","drawImages","prevBging","totalCompleted","drawInscribedImage","drawPie","redrawShape","pieOpacity","darken","drawBorder","effGhostOpacity","drawNodeOverlayUnderlay","cyStyle","pieSize","lastPercent","angleStart","angleEnd","CRp$4","contexts","backingStore","backingStorePixelRatio","webkitBackingStorePixelRatio","mozBackingStorePixelRatio","msBackingStorePixelRatio","oBackingStorePixelRatio","devicePixelRatio","paintCache","paintCaches","needToCreateCache","createGradientStyleFor","shapeStyleName","gradientStyle","createRadialGradient","_end","createLinearGradient","hasPositions","addColorStop","gradientFillStyle","backgroundFill","backgroundColor","gradientStrokeStyle","lineFill","lineColor","mbPxRatio","bufferCanvases","MOTIONBLUR_BUFFER_NODE","MOTIONBLUR_BUFFER_DRAG","canvasWidth","canvasHeight","canvasContainer","CANVAS_LAYERS","canvases","BUFFER_COUNT","textureMult","TEXTURE_BUFFER","forcedContext","forcedZoom","forcedPan","drawAllLayers","forcedPxRatio","drawOnlyNodeLayer","needDraw","canvasNeedsRedraw","textureDraw","inNodeDragGesture","inBoxSelection","motionBlurFadeEffect","prevPxRatio","motionBlurTimeout","mbFrames","clearingMotionBlur","textureDrawLastFrame","NODE","SELECT_BOX","effectiveZoom","effectivePan","prevVp","prevViewport","mbclear","setContextTransform","ePan","eZoom","bufferContexts","textureCache","mpan","DRAG","outsideBgColor","outsideBgOpacity","vpManip","hideEdges","needMbClear","useBuffer","drawDebugPoints","timeToRender","fps","cxtNode","txtNode","cxtDrag","txtDrag","drawMotionBlur","txt","needClear","pxr","motionBlurCleared","CRp$3","arcTo","barrelCurveConstants","sin0","cos0","ellipseStepSize","drawEllipsePath","ellipse","xPos","yPos","rw","rh","CRp$2","b64UriToB64","b64uri","output","mimeType","getB64Uri","toDataURL","quality","toBlob","blob","b64","bytes","atob","buff","ArrayBuffer","buffUint8","Uint8Array","Blob","b64ToBlob","createBuffer","buffer","bufferCanvasImage","ctrRect","full","specdMaxDims","maxWidth","maxHeight","maxScaleW","maxScaleH","buffCanvas","buffCxt","zsortedEles","CRp$1","drawPolygonPath","drawRoundPolygonPath","drawRoundRectanglePath","drawCutRectanglePath","drawBottomRoundRectanglePath","drawBarrelPath","CR","CanvasRenderer","CRp","tapHlOffAttr","tapHlOffStyle","containerStyle","overflow","styleMap","setAttribute","topCanvas","pathsEnabled","emptyBb","getCenterOffset","getElementBox","getLabelBox","getSourceLabelBox","getTargetLabelBox","isLabelVisibleAtScale","addTextMargin","getRsPt","oldBackgroundTimestamp","onUpdateEleCalcs","refineInLayers","pathsImpld","path2dEnabled","imageSmoothingEnabled","webkitImageSmoothingEnabled","mozImageSmoothingEnabled","msImageSmoothingEnabled","OffscreenCanvas","incExts","extensions","modules","setExtension","registrant","ext","overrideErr","layoutProto","optLayoutFns","fnName","regStop","getCy","emitterOpts","BaseRenderer","getExtension","bProto","RegistrantRenderer","rProto","Renderer","pName","pVal","_pName","setModule","moduleType","moduleName","getModule","Stylesheet","sheetfn","version","code","defineProperties","ELK","_ref$defaultLayoutOpt","defaultLayoutOptions","_ref$algorithms","algorithms","workerFactory","workerUrl","initialized","Worker","worker","postMessage","PromisedWorker","cmd","catch","_ref2","_ref2$layoutOptions","layoutOptions","_ref2$logging","logging","_ref2$measureExecutio","measureExecutionTime","terminate","_this2","resolvers","onmessage","answer","receive","convertGwtStyleError","javaException","cause","backingJsObject","$wnd","nb","xb","Fd","$g","yq","Sq","Es","Jw","Vw","VA","dA","MA","PA","PB","bx","vy","Nz","Yz","Ylb","Ymb","xmb","Fmb","Qmb","gcb","ccb","jcb","jtb","otb","qtb","_fb","bpb","kpb","ppb","Gpb","drb","dzb","fzb","fxb","Vxb","Ovb","byb","zyb","Zyb","_yb","hzb","jzb","lzb","nzb","rzb","zzb","Czb","Ezb","Gzb","Izb","Mzb","bBb","NBb","PBb","RBb","iCb","OCb","SCb","GDb","JDb","fEb","xEb","CEb","GEb","yFb","KGb","tIb","vIb","xIb","zIb","OIb","SIb","TJb","VJb","XJb","XKb","fKb","VKb","VLb","jLb","nLb","GLb","KLb","MLb","OLb","RLb","YLb","bMb","gMb","lMb","pMb","wMb","zMb","CMb","FMb","LMb","zNb","PNb","kOb","pOb","tOb","yOb","FOb","GPb","aQb","cQb","eQb","gQb","iQb","CQb","MQb","OQb","ASb","fTb","kTb","STb","fUb","DUb","VUb","YUb","_Ub","_Wb","QWb","XWb","jVb","DVb","VVb","$Vb","dXb","hXb","lXb","gYb","HYb","SYb","VYb","dZb","P$b","T$b","h1b","m1b","q1b","u1b","y1b","C1b","e2b","g2b","m2b","q2b","u2b","S2b","U2b","W2b","_2b","e3b","h3b","p3b","t3b","w3b","y3b","A3b","M3b","Q3b","U3b","Y3b","l4b","q4b","s4b","u4b","w4b","y4b","L4b","N4b","P4b","R4b","T4b","X4b","I5b","Q5b","T5b","Z5b","l6b","o6b","t6b","z6b","L6b","M6b","P6b","X6b","$6b","a7b","c7b","g7b","j7b","m7b","r7b","x7b","D7b","D9b","b9b","h9b","j9b","l9b","w9b","F9b","hac","jac","pac","uac","Iac","Kac","Sac","obc","rbc","vbc","Fbc","Jbc","Xbc","ccc","fcc","lcc","occ","tcc","ycc","Acc","Ccc","Ecc","Gcc","Zcc","_cc","bdc","fdc","jdc","pdc","sdc","ydc","Adc","Cdc","Edc","Idc","Ndc","Qdc","Sdc","Udc","Wdc","Ydc","aec","hec","jec","lec","nec","uec","wec","yec","Aec","Fec","Jec","Lec","Nec","Rec","Uec","Zec","Zfc","lfc","tfc","xfc","zfc","Ffc","Jfc","Nfc","Pfc","Vfc","_fc","fgc","jgc","lgc","Bgc","ehc","ghc","ihc","khc","mhc","ohc","qhc","yhc","Ahc","Ghc","Ihc","Khc","Mhc","Shc","Uhc","Whc","dic","dlc","blc","flc","hlc","jlc","Glc","Ilc","Klc","Mlc","Mjc","Qjc","Qlc","Ulc","Ylc","Lkc","Nkc","Pkc","Rkc","Xkc","_kc","gmc","kmc","zmc","Fmc","Wmc","$mc","anc","mnc","wnc","Hnc","Jnc","Lnc","Nnc","Pnc","Ync","eoc","Aoc","Coc","Eoc","Joc","Loc","Zoc","_oc","bpc","hpc","kpc","ppc","pFc","Ryc","QCc","PDc","xGc","HGc","JGc","NGc","GIc","iKc","mKc","wKc","yKc","AKc","EKc","KKc","OKc","QKc","SKc","UKc","YKc","aLc","fLc","hLc","nLc","pLc","tLc","vLc","zLc","BLc","DLc","FLc","sMc","JMc","hNc","RNc","ZNc","_Nc","bOc","dOc","fOc","hOc","hRc","jRc","KRc","NRc","NQc","LQc","_Qc","cPc","iPc","kPc","mPc","xPc","zPc","zSc","BSc","GSc","ISc","NSc","TSc","NTc","NVc","oVc","SVc","VVc","XVc","ZVc","bWc","bXc","CXc","FXc","IXc","MXc","UXc","bYc","fYc","oYc","qYc","uYc","pZc","G$c","h0c","N0c","k1c","I1c","Q1c","f2c","i2c","k2c","w2c","O2c","S2c","Z2c","v3c","x3c","R3c","U3c","e4c","w4c","x4c","z4c","B4c","D4c","F4c","H4c","J4c","L4c","N4c","P4c","R4c","T4c","V4c","X4c","Z4c","_4c","_7c","b5c","d5c","f5c","h5c","H5c","Hfd","Zfd","Zed","ged","Jed","Ned","Red","Ved","bbd","mdd","_fd","fgd","kgd","Mgd","Ahd","Ald","Tld","xkd","rmd","knd","Jod","JCd","Bpd","BFd","oFd","bqd","bvd","jvd","yud","Hxd","EBd","aDd","MGd","vHd","RHd","wNd","zNd","CNd","KNd","XNd","$Nd","HPd","lUd","XUd","DWd","GWd","JWd","MWd","PWd","SWd","VWd","YWd","_Wd","xYd","BYd","mZd","EZd","GZd","JZd","MZd","PZd","SZd","VZd","YZd","_Zd","c$d","f$d","i$d","l$d","o$d","r$d","u$d","x$d","A$d","D$d","G$d","J$d","M$d","P$d","S$d","V$d","Y$d","_$d","c_d","f_d","i_d","l_d","o_d","r_d","u_d","x_d","A_d","D_d","G_d","J_d","M_d","P_d","S_d","V_d","Y_d","h5d","U6d","U9d","_8d","fae","hae","kae","nae","qae","tae","wae","zae","Cae","Fae","Iae","Lae","Oae","Rae","Uae","Xae","$ae","ebe","hbe","kbe","nbe","qbe","tbe","wbe","zbe","Cbe","Fbe","Ibe","Lbe","Obe","Rbe","Ube","Xbe","$be","bce","ece","hce","kce","nce","qce","tce","wce","zce","Cce","Fce","Ice","Lce","Oce","Rce","Uce","Xce","ude","Vge","dhe","ol","wb","oPb","nPb","EPb","CPb","gFb","fFb","TRb","SRb","ySb","wSb","PSb","OSb","dTb","bTb","i4b","b4b","D2b","x2b","J6b","D6b","u9b","q9b","$9b","I9b","Umc","Imc","abc","Vac","ZCc","VCc","kCc","hCc","rCc","oCc","Tcc","Occ","xkc","gkc","xDc","rDc","iDc","cDc","kwc","jwc","tJc","jJc","dJc","aJc","Pyc","Nyc","VBc","SBc","CFc","yFc","CUc","wUc","lUc","fUc","sUc","pUc","IUc","GUc","IWc","HWc","_Wc","ZWc","fHc","dHc","f0c","d0c","B0c","A0c","L0c","J0c","LTc","JTc","sTc","rTc","KLc","ILc","wNc","tNc","PYc","OYc","nZc","lZc","q3c","p3c","Z7c","X7c","Z9c","Y9c","_ad","Zad","kdd","idd","$md","Smd","HGd","tGd","hLd","NKd","J6d","Uge","Mvb","uCb","Yb","cj","Dj","df","kf","ah","Ph","Ci","Fk","Ln","zp","Yp","qq","Dq","wr","Ir","sj","sw","xw","Cw","Qw","Rw","Xw","Xv","Sv","eu","Zx","xy","xB","HB","TB","fC","wB","MBb","ZGb","dRb","eRb","__b","njc","mjc","dFc","eFc","nOc","oOc","pOc","qOc","rOc","DVc","FVc","SZc","TZc","c$c","bJd","Cic","Dg","vib","eib","Pib","Vib","$ib","mcb","Mcb","Xcb","Ndb","_db","teb","Qeb","djb","Gjb","Njb","Bjb","lnb","Dnb","anb","Mob","Rob","iob","olb","qub","Tub","Vub","Xub","Zub","tpb","_pb","Wqb","nsb","Rxb","Txb","Xxb","bzb","tzb","vzb","xzb","Kzb","Ozb","iAb","kAb","mAb","BAb","hBb","jBb","nBb","TBb","XBb","QCb","WCb","_Cb","dEb","QGb","YGb","tKb","CLb","JMb","RNb","kQb","mQb","FQb","ETb","UTb","dUb","hUb","EZb","j$b","v$b","J0b","M0b","R0b","U0b","i2b","k2b","o2b","s2b","G2b","I2b","K2b","M2b","W3b","$3b","V4b","u5b","A7b","G7b","J7b","M7b","Mbc","Pbc","lac","nac","qcc","Gdc","$dc","cec","_ec","pfc","Bfc","Lfc","ygc","Dgc","shc","uhc","whc","Chc","Ehc","Ohc","Yhc","Tkc","Vkc","Olc","pnc","rnc","dpc","fpc","GCc","KCc","mDc","jEc","HEc","FEc","qoc","bFc","GFc","iGc","kGc","mGc","$Gc","hIc","lIc","pIc","tIc","xIc","zIc","CIc","LIc","CKc","IKc","MKc","$Kc","cLc","jLc","rLc","xLc","OMc","ZOc","ZRc","aSc","I$c","K$c","M$c","O$c","U$c","n1c","z1c","B1c","Q2c","U2c","z3c","med","Xed","_ed","Qfd","Bgd","$gd","lrd","urd","vrd","wrd","xrd","yrd","zrd","Ard","Brd","Crd","Ird","Krd","Lrd","Mrd","Nrd","Prd","Srd","Yrd","Zrd","_rd","asd","bsd","csd","dsd","msd","osd","qsd","ssd","Wsd","Lsd","thd","qtd","yBd","GBd","MBd","SBd","iCd","YMd","GNd","EPd","EQd","NTd","qOd","lVd","VVd","iYd","RYd","ZYd","z0d","O0d","s0d","W5d","cge","xfe","Tfd","jkb","Vjb","Rkb","Ckb","Lqb","Uhb","lEb","kEb","A_b","UQd","FQd","moc","yXb","Ji","vbb","DB","LB","ZB","lC","EC","wC","SB","j5b","g5b","PXc","ad","As","Zl","Ql","jq","sq","Fq","im","Sz","Rz","Qz","be","gz","Xy","xcb","pcb","tcb","Bdb","Vdb","Ydb","Geb","bgb","Apb","Jpb","utb","rQd","MPd","Bb","tTb","mt","fA","rcb","dCb","Tvb","Ekb","GLd","Uhd","d7d","D2d","Odb","Hcb","Pje","Qje","Tdb","Tqb","gyb","Wvb","KFb","PFb","FFb","pGb","MFb","ZQb","Gxb","Pwb","jUb","PTb","sDb","oDb","zDb","tDb","CWb","HXb","nYb","BYb","fLb","vYb","a2b","wZb","TCc","zJc","uMc","wdc","vKc","twb","oHb","$Gb","LXb","L_b","H_b","p0b","s0b","WMc","VMc","bNc","EPc","CPc","JPc","OPc","w1c","s1c","s7c","Psb","apd","ppd","lDd","YCd","NDd","mFd","vFd","GFd","KPd","OJd","hJd","aQd","SSd","FId","rUd","oUd","NYd","cZd","R8d","o9d","i9d","hee","Dd","yd","Hd","ph","Sh","Wc","oi","Ii","Zdd","QSc","D2c","QXc","e_c","d_c","$k","al","Lk","Kk","Mk","vb","hs","gs","Gp","xp","Lo","Ep","Tp","Wn","wx","un","ov","Mv","Br","Ov","Lw","hz","Yy","MB","eC","Ftb","Atb","zwb","LVb","BD","mlb","fad","gad","KVb","ZVb","KC","IP","Uhe","RVb","rXb","amb","OC","GC","bQ","MVb","NVb","lIb","vfd","nmd","Fyd","xMd","gc","ukd","Dyd","gmd","Dfd","Odc","Ajc","xjc","Ucd","zcd","yjc","Tcd","P6c","sjc","Acd","tjc","rjc","Wyc","Y1c","W1c","Ky","Edb","ED","Ksd","dzc","bzc","Xyc","td","Xr","tC","vC","yC","ocb","qcb","ucb","vcb","fGc","LFc","c0d","kzd","bhd","Rgd","dhd","Cdb","Wdb","Zdb","Feb","Heb","Ccb","Gdb","jfb","akb","Hwb","wVb","qVb","Blb","Glb","cgb","cqd","n8d","z2c","mde","pc","qc","Ki","Kz","Jz","jz","iz","KA","JA","OB","NB","jc","zh","Pi","Gb","GD","Qb","She","Bs","Td","Sd","scb","Oeb","Hfb","Ifb","Ufb","Vfb","Xfb","zob","Yob","Inb","Gob","Az","wrb","vrb","entries","Nhe","createObject","hke","getOwnPropertyNames","xrb","zrb","yrb","Mtb","Vtb","eCb","PC","rdb","_Db","$Db","HGb","IGb","JGb","dLb","zVb","KOb","SFc","M3c","L3c","N3c","O3c","P3c","Q3c","b4c","c4c","d4c","z5c","y5c","A5c","B5c","D5c","E5c","F5c","G5c","Vdd","T$c","Qqb","aDb","R$c","RGc","cEc","iHc","t7c","Qsb","aPb","_Ob","Ixd","zud","dCd","ZBd","fCd","p_b","q_b","d7c","aPc","NJd","DId","Oc","gdb","Vd","sn","Gv","hdb","fdb","Fhd","Ehd","mUd","yFd","xFd","yte","JD","ubb","uvd","h0d","ond","Hhd","Ghd","yod","nUd","Phb","Bod","Lnd","Qnd","Knd","Mnd","zod","pnd","cod","dod","Gnd","wtd","_Kd","Xnd","P3","Ile","Dnd","Hnd","Nnd","j5","Ond","PQd","Fnd","Ate","Bte","xId","Fi","End","Cte","Xse","_nd","qud","ZKd","Dte","C2","Zse","Vnd","_","Ete","G2","Fte","$je","Gte","D2","dte","Hte","Ite","z2","$se","E2","ete","Jte","Kte","F2","fte","B2","_se","Lte","Mte","Nte","Yse","A2","ate","Ote","Pte","Qte","Rte","Ste","CK","Wnd","Znd","Q3","SI","Rnd","Aod","Tnd","Shb","Cod","LFd","KFd","_ve","qZd","p8d","o8d","A9d","Ewe","Y9d","r8d","q8d","Z9d","rEd","Q9","S9","T9","U9","ZI","SD","wI","xI","BI","yK","FI","JI","MI","UI","eae","cae","fb","qb","D","F","G","J","I","L","T","Z","ab","db","eb","gb","hb","ib","jb","kb","lb","mb","ob","pb","aae","O","Qve","Jwe","bue","Kwe","Lwe","jxe","sbb","bJ","UD","Rwe","VD","WD","cJ","XD","Swe","axe","rbb","Vie","Bnd","Rve","nie","fue","Sve","xwe","Dwe","Fwe","Owe","vwe","Cwe","ywe","Khe","cwe","Eve","Gve","Pwe","Qwe","zwe","Hve","Twe","Ive","Uwe","Vwe","Wwe","Xwe","Jve","Ywe","Zwe","$we","_we","bxe","cxe","dxe","exe","Mhe","uwe","Kve","twe","fxe","gxe","hxe","ixe","wwe","Awe","Bwe","_9d","bae","Rhb","JFd","IFd","dae","mvd","lvd","n4c","Srb","enb","fnb","gnb","jnb","Cnb","Uqb","Mqb","tgb","lgb","BCb","Oje","qfb","Xhe","Icb","Rie","Ohe","QD","kgb","NaN","ugb","Mgb","heb","hhb","Mbb","Nbb","xbb","Yje","Sbb","Ibb","ogb","Ygb","bfb","ngb","Hxb","Qwb","_ub","ye","Sub","sd","Bfb","Cfb","Ffb","Lfb","WAb","Tzb","Wsb","pD","aIc","h2c","j4c","tg","cUd","Zod","uqb","N5c","K5c","L5c","I5c","M5c","J5c","c2c","cCb","WHb","VHb","XHb","jVc","ZUc","L2c","K$","tRc","h$","Q$c","J_","OCd","PCd","QCd","RCd","SCd","TCd","UCd","VCd","WCd","XCd","Rge","ege","Afb","aje","Xee","nde","rde","tvd","sue","Uvb","tue","ode","dge","Uee","Vee","Fhe","Ehe","dde","$ce","Iz","xz","zz","Ybb","Wbb","Yf","zf","$f","Hf","rk","ek","gk","pk","yk","Ak","Fj","dr","zr","So","qp","$q","$r","ne","Wo","bu","qu","qv","Px","mC","Lb","rf","Zv","$u","eB","Zfb","Yfb","Emb","Dmb","Vhb","hnb","Hc","inb","Ic","knb","Qc","Dob","dob","uc","Rqb","fob","jt","Mhb","Lp","Iie","sC","GB","FB","EB","Whb","yAb","Vzb","Gqb","Dqb","Csb","Osb","MAb","Nb","Myb","Gc","qDb","wDb","xDb","yDb","BFb","CFb","DFb","EFb","oGb","Ltb","Ktb","Otb","Utb","Ttb","Wtb","$xb","Zxb","$Yb","ZYb","cPb","bPb","dPb","EAb","DAb","a$b","_Zb","FDb","EDb","xUb","wUb","w2b","iVb","hVb","nVb","mVb","OVb","LWb","KWb","a4b","p9b","qgc","pgc","Hmc","FUc","j3c","i_c","h_c","k_c","s_c","r_c","t_c","R0c","Q0c","T0c","Vyc","Uyc","DCc","vCc","Une","r4c","Xrb","s4c","B3c","kKb","Xe","W8c","We","qJb","wJb","Jkb","pJb","uJb","sJb","UHb","Mpb","bIb","Npb","NC","CHb","Rcd","Scd","rJb","lKb","jKb","E3b","tN","ile","Ikb","D3b","N3b","F1","xqb","_Bb","G3b","rqb","K3b","F3b","yNb","wtc","Csc","J6c","H6c","L3b","J3b","e9b","vNb","tyc","uyc","ryc","I6c","d9b","rcd","ncd","Hsc","pcd","f9b","g3c","DQd","fB","getFullYear","nje","getMonth","getDate","nB","oje","uA","ofb","wA","dB","ZA","getHours","setMonth","YA","setHours","$A","setMinutes","_A","setSeconds","bB","cB","wbb","Abb","Cbb","_ie","Gbb","getDay","getTimezoneOffset","mB","pA","Pgd","Ogd","AFd","zFd","tFd","sFd","EFd","DFd","nRd","mRd","u4d","LRd","KRd","y4d","g5d","f5d","Q6d","P6d","pEd","oEd","tZd","rZd","Xge","Wge","jw","Lv","cd","sib","Lpb","tqb","Dbb","ybb","Crb","Vrb","Nvb","Rub","Kub","wcb","Zy","mxb","Gyb","zx","yx","zlb","Dlb","Alb","Flb","aCb","pjb","kqb","VBb","BEb","sBb","yBb","EBb","KBb","tMb","oOb","SOb","SMb","NEb","VEb","sFb","hHb","OHb","FIb","wLb","YRb","zTb","rUb","oWb","SXb","k0b","z5b","T8b","ibc","Cec","rfc","Rfc","Tfc","bgc","ngc","Qhc","$hc","Z0b","Dfc","dgc","Bmc","cWb","I$b","Unc","Oic","Bjc","Yjc","Gkc","Bpc","Jpc","Tpc","cqc","oqc","yqc","Hqc","Uqc","mrc","zrc","Prc","Yrc","fsc","nsc","nzc","zzc","Kzc","Xzc","Dtc","lAc","uAc","CAc","LAc","UAc","aBc","uBc","DBc","MBc","sGc","VIc","EIc","qKc","GKc","lLc","mMc","fMc","ZLc","ZMc","IOc","GQc","PQc","RQc","ARc","rSc","TTc","_Tc","RUc","uVc","hWc","rWc","kXc","uXc","AYc","l$c","Z$c","D_c","O_c","c1c","D3c","O5c","a6c","m2c","W2c","f7c","G7c","j8c","iad","rad","Bad","Nad","ibd","tbd","Ibd","Ubd","gcd","scd","Ycd","udd","Jdd","Eed","bfd","dfd","ffd","Kfd","Mfd","Ofd","vgd","qgd","jrd","krd","mrd","nrd","qrd","rrd","srd","trd","Drd","Frd","Hrd","Jrd","Ord","oo","Yqd","iqd","Ohb","jqd","hqd","Wpd","Rrd","Qrd","meb","Hhe","Dhe","cC","ikd","Q8c","hkd","reb","Upd","Mld","gqd","Xte","Fe","Xqd","BIc","FHc","gIc","Arb","CMc","wMc","NNc","FNc","eCc","ZBc","aCc","Dsd","Urd","Wrd","kGd","nGd","bUd","zVd","C1d","MLd","Wud","f7d","_zd","Y1d","c8d","$Id","_Id","hCd","qAd","e7d","R2d","Wd","dd","PD","KD","LD","Lhe","ND","Em","Xb","Kq","Ob","QNc","Pb","hr","Kc","Bbb","Kbb","Jdb","pfb","cg","ag","oVb","DD","Kb","pVb","RD","CCb","Dfb","Efb","Nfb","Pfb","Qfb","Mfb","Esb","Gsb","Fsb","setTime","fvb","bvb","jvb","nvb","Nqb","Ld","wmb","tCb","X6c","f3c","_Pb","QPb","Xod","jtd","ltd","VPb","yJb","xJb","as","Y8b","X8b","W8b","Cv","sl","vl","Nsd","Msd","$zd","Cyd","nNd","s4d","p4d","w4d","qRd","lcb","ww","hfb","Ny","kB","SC","TC","Hdb","NIb","beb","Fbb","G1b","lrb","Frb","swb","E2c","d3c","Nlb","Klb","zsb","$rb","I_b","B_b","g7c","aad","bad","dad","_9c","Jzc","Fzc","Ezc","fcd","bcd","ccd","oid","Lg","Mg","Gfd","Kkd","k3c","y2d","vkd","wkd","_kd","cld","ald","bld","dld","eld","hmd","imd","omd","pmd","iKd","$Jd","_Jd","_ud","Xg","Vg","Hgb","Zgb","rxb","wxb","MGb","Hkb","xf","xtb","tb","Vq","lr","Osd","q0b","HOb","LOb","IOb","lzd","mBc","Lge","wfe","fNc","eNc","Rpb","i0d","GA","FA","Iy","UVd","TVd","Gg","Bp","Okb","Mlb","llb","Eqb","Ntb","De","Deb","Ctb","hDb","dOb","n_b","txb","bUb","ZTb","zP","jBc","hBc","E6c","F6c","R6c","CQd","UA","RA","SA","TA","gB","vA","fromCharCode","hA","AOc","BOc","COc","RRd","a7d","Pp","mmb","Py","VI","JLd","Uxd","b7d","Oj","T6d","hi","F2d","Tje","R6d","Fc","Hwe","S6d","Tg","rl","ak","Gtd","ytd","t2d","Lq","Rb","rr","Sqb","Bc","pr","yfb","zfb","AD","Yrb","jsb","isb","RJc","V_b","OZb","Su","sCb","Bib","uib","SJc","Eub","kke","xHb","REc","aEc","tEc","OJc","Tbb","HAb","JAb","YAb","aKc","Y6c","mud","Ozd","Ajd","Wzd","otd","ytb","hue","Rld","y5d","atd","ul","KI","Rr","Qr","ntd","htd","gtd","ztb","Ivb","Hvb","pMd","BMd","K4d","N4d","X4d","_4d","C4d","k2d","G4d","I4d","c5d","aj","Jj","Rj","she","xl","Qo","Eb","Fb","Cb","ycb","Db","ur","Gr","Hs","Eg","Uk","Ub","ot","I6d","H6d","Bcb","zcb","Acb","Jfb","Wfb","Xnb","Zob","Ry","Qv","au","xu","kfb","lastIndexOf","ifb","xfb","fcb","Etb","Fxb","Jwb","FCb","$H","ECb","pDb","vDb","nGb","Btb","Asb","_rb","GUb","HUb","cxb","CKb","BKb","tle","NFb","OFb","Lkb","zXb","a1b","iBc","gBc","i3c","B2c","hhd","Sb","n5b","jm","Vp","Oyd","$yd","bzd","sgc","Pu","Xj","Jie","Skb","Vz","gfb","wfb","Pkb","ZBb","Zr","Hsb","Isb","Cmd","Gh","Wwb","tib","Ptb","Xtb","Trb","ksb","mkb","lCb","yCb","lsb","Cg","qg","wNb","St","Zc","O6c","Z6c","b7c","a7c","V6c","Dic","xed","u7c","n7c","AXb","xXb","mf","GRd","dSd","hSd","fSd","sId","dId","zXd","nXd","BXd","DXd","FXd","PXd","RXd","XXd","w1d","V1d","p1d","a3d","xid","ypb","$modCount","MUc","LUc","LCd","KCd","KVc","Hp","FUd","C9d","ade","TD","$ie","_ce","cde","G9d","hde","gde","jde","pe","qe","me","oe","ydb","vdb","Mf","Sf","Hg","bAb","vAb","sNb","pNb","dg","Yg","g4c","Wrb","i4c","wic","B6c","eLc","FJc","$Jb","ZJb","pqb","tdd","sdd","fOb","Axb","Ywb","bOb","gOb","qyb","lyb","_Hb","lle","Kld","_hd","bmd","kpd","Cvd","Atd","Avd","Hi","bRd","c7d","C2d","DAd","uVd","sYd","zyd","YOd","fTd","Xp","cq","LA","XMb","Opb","Sfb","ijb","trb","Aib","Vc","Urb","zc","HD","gRb","iTb","_Qb","sec","NIc","LDc","hSc","HRc","aHb","Zwb","lxb","hxb","J_b","Tod","c7c","PYd","gve","mue","gUd","Q4d","U4d","n5d","i5d","p5d","v5d","t5d","A5d","D5d","d6d","Y5d","tk","j6d","Aj","Nh","Kh","h6d","Ih","Fdb","dfb","Dxb","Cwb","Exb","Dwb","HBb","lfb","S_b","ecd","Zbd","_bd","$bd","zAd","Btd","ujb","Awb","czd","Pyd","fBb","rie","Avb","Bvb","bId","mk","Q2d","Rk","P2d","k3d","$j","H2d","M2d","Kj","zj","Ei","j3d","tn","Hv","Kcb","ke","Ldb","dIc","Nrb","$sb","Tkb","bCb","Pc","Xwb","Kwb","iyb","JCb","GCb","ICb","ntb","ltb","mtb","jzd","sGd","$Gd","ZGd","jmb","Mb","r0b","K_b","mKb","BZb","TNb","uOb","S3b","Z6b","n9b","x$b","LGb","iLb","B6b","C6b","Hgc","Fgc","Ggc","bPc","nYc","L1c","T1c","zCd","IVd","kWd","cWd","HXd","oXd","TXd","ZXd","JXd","LXd","NXd","VXd","_Xd","Nq","Wq","Nu","fr","Hx","Jq","Ru","YEc","WA","Yc","ed","pzb","qvb","fAb","$Bb","HVb","v_b","h5b","k5b","Lbb","zbb","Eje","Fje","iD","Rbb","DHc","EHc","DRb","vSb","aBb","C6c","Lsb","Nsb","Msb","rCb","mCb","dWb","Dnc","Cnc","_Gd","PNd","UNd","y1d","T0d","z1d","gFd","OEd","CEd","DEd","dFd","jFd","Sdd","Ydd","$6c","W6c","G6c","Dsb","Aq","Wm","Ed","vvb","Eeb","iYb","hYb","_Gb","YHb","ZHb","zfe","ige","X6d","W6d","ex","oeb","neb","d$c","e$c","B0b","D0b","Ojc","lHd","R7d","odb","ldb","Evd","Ti","e3c","Vte","Qpd","Spd","Yte","dmd","Tpd","kqd","emd","Kqd","Zj","rAb","pAb","oAb","Ie","IC","JC","Ucb","Tcb","Ceb","Beb","Yeb","Xeb","ddb","cdb","yI","IVb","my","ir","vc","fqb","Vqb","Bsb","Rfb","$lb","Bzb","Aeb","Qyb","vic","uNb","kmb","Xi","q$c","sEc","bVc","hVc","Voc","Toc","qed","pFd","KYd","jgd","MOb","Nr","ejc","djc","$ic","ju","bt","Bfe","rge","SEd","Qpb","oCb","Dkb","wCb","qqb","nmb","Oz","Wyb","Ayb","xL","Kie","Nyb","vqb","wqb","Aub","Cub","ike","jke","MC","$Nb","ZNb","BLb","SVb","oEb","uEb","$Jc","Qgd","s9c","Mr","Lr","mHb","nHb","c3c","Dod","JHd","JMd","UTd","eXd","nWd","lXd","MD","OD","ID","u1d","X1d","Hh","h1d","lse","AAd","jGd","fGd","x6","W1d","Qh","Ty","Sr","Yge","Id","Xm","Jd","Rl","fe","Dc","Ec","Ffe","Hge","Ubb","qD","a4d","kD","Obb","lD","Pbb","mD","Dcb","Ecb","Ddb","Kdb","Ad","QAb","TAb","RAb","g1b","z0b","l1b","Rnc","Zsc","Xsc","ltc","xc","Snc","koc","poc","Iub","_vb","n6c","i6c","m6c","tcd","D6c","oOd","kh","oie","gub","ipb","fpb","nHc","lHc","Pzd","Xzd","jUd","nSd","oSd","DSd","ESd","x0d","Lj","Dm","Cfe","Dge","Efe","nfb","Qhb","irb","Rrb","Vgb","amc","xJc","fkb","bkb","gkb","ckb","cv","ylb","Clb","Lyb","zjb","vCb","Goc","K2c","ese","Nkb","A2c","C2c","i2d","mfb","bKd","Hj","d1d","nlb","Kkb","zpb","Plb","oke","avb","Olb","Jhe","ueb","HMb","IMb","iq","Lub","Rzb","uB","tB","vB","ffb","Iwb","Vsb","d3d","gl","hkc","NAb","kkc","jkc","lOc","mOc","it","gKc","aRb","tPc","DPc","A6d","aLd","TKd","oRd","ote","w2d","t3d","lud","pSd","Qk","h3d","v2d","nk","uId","Dtd","Wh","mdb","zdb","jdb","Vi","ci","Uc","qo","Ix","by","qj","Dfe","zge","qCb","HC","__elementTypeId$","FC","bv","Kfb","ovb","ze","dVb","H1b","pRb","HA","gA","lA","nA","mA","sA","v4c","hm","ux","xx","lmb","NFd","MFd","sZd","b5","a5","c5","d5","f5","h5","g5","i5","k5","l5","m5","n5","o5","p5","q5","t5","v5","u5","$J","O4","T4","U4","O9","E9","AI","DK","v8","u8","X4","V4","CZd","AZd","Pnd","yZd","qve","nve","$nd","WKd","dwe","ewe","fwe","gwe","hwe","rve","vZd","iwe","jwe","kwe","kse","lwe","sve","bte","cte","Cnd","uve","mwe","vve","wve","pve","ove","tve","xve","zZd","BZd","PFd","xZd","bwe","wZd","YFd","QQd","DZd","pTb","NHc","MHc","THc","gCb","Bvd","dYd","f0d","mxd","ct","usb","$c","U6c","Hb","Q_b","LHd","LQd","Qzb","He","Qy","Szb","Uzb","Kpb","Ae","WHc","AYd","$1d","e2d","O6d","L6d","X0d","pdb","Qzd","Yzd","Ms","$o","jrb","umb","fod","vfb","tmb","ve","hpb","Vm","Um","zie","hob","Cc","eob","gob","ec","keb","wtb","kcb","OJb","MJb","QJb","vtb","xkb","Ynd","LPd","Yod","a2d","Gwe","g2d","a1d","b2d","h2d","b1d","Ah","Fg","Xx","Zeb","Zie","Mub","nqd","ctd","Xpd","Aqd","qBb","IBb","OAb","wBb","PAb","CBb","l$b","QIc","rKc","WKc","gPc","Blc","Ggd","pec","Jmc","Bkc","Rmc","Qmc","Omc","Mmc","Pmc","Wwc","_Ac","ZAc","Fqb","wjc","$lc","bmc","cmc","dmc","dle","knc","fnc","uOc","gnc","jnc","inc","uPc","jtc","dnc","ojc","cnc","lnc","enc","c_b","lyc","nyc","xyc","bne","Vje","vmc","smc","tmc","rmc","pmc","omc","Uf","wmc","ymc","xmc","Pid","QEd","KPb","NQd","RQd","JZb","$sc","O2b","P2b","Wod","pQb","prd","ord","JVd","ZVd","cXd","mWd","jXd","Ng","YBd","lBb","Sie","FD","p4b","Gkb","PPb","OPb","NPb","gpb","ODb","LDb","NDb","MDb","nd","POc","vPc","ooc","noc","FSd","U5d","QRc","Vod","Dx","Ex","rz","hashCode","Brb","Oq","mr","vmb","VDb","Ne","Gfb","fVb","pu","hOb","FYb","UZb","K6c","Ay","eod","bod","Gz","$Kd","wjd","Jsd","stackTraceLimit","Xz","Wy","gm","Eob","Fob","grb","hrb","O7d","Cxd","nxd","vyd","$Ec","OQ","kne","KVd","R5d","cIb","THb","kBc","nBc","lid","jh","Sg","hgd","$e","pNd","MKd","Dmd","eue","zUd","vud","qNd","bQc","$Pc","_Pc","FQc","DQc","jle","EQc","kle","YLc","XLc","WLc","aIb","$Cb","ahd","Gf","NGb","UGb","tlb","pCb","vlb","Ksb","Cx","QUb","zUb","Lwb","NJb","zid","sh","hvd","evd","dvd","cvd","g_c","VZc","b$c","setDate","no","Od","Fx","aC","rC","qC","xC","bC","mpd","fmd","Ind","Fod","Ve","Uud","t_b","A4b","BGc","SX","RHc","SHc","BHc","eMc","cMc","vle","dMc","STc","QTc","Yqe","RTc","hK","MHd","ZJd","WId","le","Drb","FLd","Tfb","bq","Wj","uu","vu","RZb","QZb","$_b","F0b","jDb","qXb","aOb","Ake","Bke","Ppb","qs","yG","RBc","qUb","pUb","S8b","J8b","YBc","nCc","_Ic","h8b","EJc","HLc","vMc","eUc","yRc","xRc","qSc","kSc","DOc","W3c","e7c","D1c","E1c","cJd","XMd","lKd","T2d","YId","XOd","eTd","yCc","Aw","UAb","VAb","nr","mie","Jib","xCb","Mkb","Rje","kkb","geb","A0b","l7c","o3d","b3d","wud","p3d","tMc","av","Z1d","S0d","d2d","l1d","U0d","_1d","f2d","q1d","r1d","i1d","e1d","j1d","s1d","m1d","Y0d","hEb","dD","jD","Vbb","rD","Mu","bjc","ajc","iSc","WRc","oRb","qz","dkd","Tdd","cIc","kxd","lxd","$fe","sSd","rSd","uSd","tSd","wSd","vSd","ySd","xSd","ASd","zSd","CSd","BSd","HSd","GSd","JSd","ISd","x$c","b2c","j2d","O1d","R0d","h9d","u3d","f3d","Q8d","I8d","$Tc","ZTc","YTc","Zb","Mc","Ofb","eLd","fLd","Ysb","Jgb","wwb","$i","k_b","Qkb","AQ","jne","l_b","kDb","Ke","iDb","pXb","Nwb","Owb","YXc","gVc","ZXc","o4c","p4c","i6d","s6d","tsb","Ij","y6d","xh","dl","z6d","H2c","h3c","tgc","Zw","Jc","Bh","hc","The","Vhe","Ib","Tb","Jb","eVb","Hke","xpb","$pb","dib","msb","eD","wD","vD","Hje","Ije","aD","hD","oD","tAb","Yzb","orb","Qu","Mie","Oy","m_b","aR","lne","SZb","a5b","e5b","ayc","mwc","F7c","A7c","E7c","G0b","$4b","Wxc","Jsb","Xsb","jxc","j0b","e0b","b5b","i5b","wxc","_4b","d5b","D7c","C7c","Z4b","c5b","f5b","Ypd","Zpd","$pd","_pd","aqd","Ez","sz","yz","Pz","Lz","Cz","Bz","Mz","Hz","Fz","C6d","Wg","Zh","jk","uEc","msc","ksc","gle","lsc","bDc","aDc","z_c","y_c","O_","q_c","p_c","N_","Z0c","Y0c","W_","hPb","gPb","GO","Smc","Tmc","rmb","Qq","ugc","Ko","Xjb","_jb","Wjb","rg","goc","DZc","Nj","Sj","yh","Uqd","ro","dtd","ri","$fb","qEd","wj","sr","nx","xd","E2d","q3d","xud","r3d","JJc","h0b","Nd","Rqd","Bfd","kt","wu","Yj","zb","ite","kVd","Mj","Ok","TOc","UOc","SOc","NOc","$Oc","YOc","OOc","sOc","tOc","HOc","FOc","pPc","XOc","mic","lic","kic","setFullYear","ee","VKd","Yjb","AQb","lge","lSd","mSd","LVd","nYd","Irb","mRb","uFd","FFd","Ucc","Dtb","Itb","Gx","GAb","SAb","Ee","Hub","zub","nke","REb","QEb","MEb","aN","LEb","KEb","ZEb","YEb","UEb","bN","SEb","TEb","aSb","_Rb","XRb","gP","VRb","WRb","D5b","C5b","y5b","ZR","x5b","w5b","Cqc","Bqc","xqc","JW","vqc","wqc","erc","drc","_qc","MW","$qc","Zqc","eBc","dBc","fX","$Ac","GAc","FAc","BAc","cX","zAc","AAc","Npc","Mpc","Ipc","FW","Gpc","Hpc","rsc","qsc","SW","MOc","LOc","DZ","GOc","ZIc","YIc","UIc","mY","TIc","SIc","bMc","aMc","fZ","jMc","iMc","gZ","KQc","JQc","YZ","dUc","cUc","F$","XUc","WUc","PUc","NUc","OUc","XTc","WTc","E$","lWc","kWc","fWc","X$","dWc","eWc","i1c","h1c","a1c","X_","_0c","$0c","H_c","G_c","C_c","P_","B_c","A_c","zHc","Cfd","fRb","FAb","pv","ko","PYb","MYb","NYb","jYb","wyb","oyb","jyb","kyb","nyb","myb","C3c","zUc","Lzd","Uzd","vtd","yUd","RC","Tc","Iv","$b","tjb","Qgb","ihb","lhb","Rgb","Yac","kZb","tNb","hid","uHb","rHb","vHb","sHb","oxd","qSd","CWd","AWd","_6d","qi","bi","oud","Ou","Iu","km","smb","cfb","Fpb","uwb","zhb","Qbb","Ahb","Thb","krb","Erb","b1b","kRb","Gjc","rd","qd","BQc","SRc","g6c","f6c","Uac","gbc","fbc","PHc","XHc","QHc","Psc","yc","VHc","AHc","gtc","KAb","xHc","OHc","JJd","pvb","QYd","UDc","Mi","Ugb","o5b","lHb","kHb","gHb","pN","dHb","eHb","fHb","SHb","RHb","NHb","sN","LHb","KHb","MHb","JIb","IIb","EIb","zN","DIb","CIb","BIb","Kyb","Jyb","Fyb","Cyb","Dyb","Eyb","DTb","CTb","yTb","oP","wTb","vTb","xTb","WXb","VXb","RXb","hQ","QXb","PXb","OXb","Zpc","Ypc","Rpc","GW","Ppc","Opc","Qpc","gqc","fqc","bqc","HW","$pc","aqc","_pc","Lqc","Kqc","Gqc","KW","Eqc","Dqc","Fqc","Kkc","Jkc","Fkc","vV","Ekc","Dkc","Ckc","jsc","isc","esc","RW","csc","dsc","bsc","asc","_rc","Xrc","QW","Vrc","Wrc","Urc","Dzc","Czc","xzc","ZW","uzc","vzc","wzc","YAc","XAc","TAc","eX","QAc","RAc","SAc","yAc","xAc","tAc","bX","rAc","qAc","sAc","PAc","OAc","KAc","JAc","HAc","IAc","QBc","PBc","LBc","jX","JBc","KBc","IBc","yBc","xBc","tBc","hX","qBc","rBc","sBc","HBc","GBc","CBc","iX","BBc","zBc","ABc","wGc","vGc","rGc","PX","oGc","pGc","qGc","zVc","yVc","tVc","O$","sVc","qVc","rVc","vWc","uWc","pWc","Y$","mWc","nWc","oWc","EYc","DYc","zYc","q_","xYc","yYc","wYc","yXc","xXc","sXc","b_","qXc","rXc","pXc","b_c","a_c","Y$c","V$c","W$c","X$c","mbd","lbd","hbd","z1","fbd","ebd","gbd","vad","uad","qad","u1","nad","oad","Thd","Qhd","S2","FAd","fi","uhb","vhb","LC","KNb","ACb","xke","zke","zCb","exb","dL","VRc","Ut","zGc","S6c","gCc","lUb","n8b","mib","kib","kSd","XKd","Yh","$Hb","Lfe","Kfe","bfe","Nfe","vXb","uXb","tXb","sXb","KZc","MZc","Jjc","Pjc","Byb","rj","v1d","gid","oUc","b3c","vRc","pSc","lSc","dBb","vr","m3c","o3c","w9c","b9c","n3c","yHc","nud","pOd","Itd","KLd","Ek","Bwb","ulb","Llb","bid","Pj","nDb","ixb","jxb","kxb","zxb","yxb","iL","uWb","tWb","lWb","SP","hWb","kWb","iWb","jWb","ALb","zLb","vLb","PN","uLb","rLb","sLb","tLb","WMb","VMb","RMb","jO","OMb","NMb","PMb","QMb","WOb","VOb","ROb","CO","OOb","NOb","POb","QOb","GRc","FRc","uRc","wRc","mbc","lbc","VS","dbc","ebc","cbc","oXc","nXc","iXc","a_","hXc","fXc","gXc","eXc","Fjc","Ejc","mV","zjc","Pzc","Ozc","Izc","$W","Gzc","Hzc","ugd","tgd","pgd","k2","mgd","ngd","lgd","ogd","xbd","wbd","rbd","A1","qbd","nbd","obd","pbd","Fad","Ead","Aad","zad","xad","wad","yad","Ied","Hed","Ded","O1","Ced","zed","Bed","Aed","ydd","xdd","I1","rdd","qdd","pdd","x9d","w9d","z9d","y9d","ane","Zrb","Jbb","Ygc","Tnc","zoc","Rwd","Ai","rFd","$d","dDb","ghd","t9c","MCd","Wxd","NCd","Oh","Rh","QSd","mle","sD","tD","Gje","uD","WDc","VDc","$Dc","TDc","rfb","Aid","bk","Pg","xjd","CD","yjd","iid","bLd","fid","vgc","omb","agd","Ac","INb","HNb","FNb","GNb","JNb","uud","gi","Ftd","Xc","Cj","Bve","LAb","__elementTypeCategory$","dub","fub","sgb","vgb","ghb","vge","EA","Scb","es","DCb","nCb","S9b","Ogb","Ggb","Dhb","Ehb","AWb","xWb","yWb","vWb","wWb","zWb","uqc","tqc","mqc","IW","iqc","hqc","kqc","lqc","jqc","bAc","aAc","Vzc","_W","Uzc","Rzc","Szc","Qzc","Tzc","bkc","akc","Xjc","uV","Tjc","Vjc","Wjc","Ujc","Sjc","Htc","Gtc","Ctc","TW","Btc","xtc","ytc","ztc","Atc","S_c","R_c","N_c","Q_","I_c","J_c","M_c","K_c","L_c","S5c","R5c","e1","p$c","o$c","k$c","y_","g$c","f$c","i$c","h$c","j$c","vUb","uUb","mUb","nUb","oUb","mad","lad","ead","cad","Ybd","Xbd","Tbd","C1","Qbd","Sbd","Obd","Pbd","Rbd","cdd","bdd","_1c","hoc","usc","ioc","Jub","Hie","dC","Emc","ple","sfb","toLocaleLowerCase","idb","VWb","mDb","Zsb","xac","Ssc","t9b","Zwc","iZb","Rc","Bid","YKd","lte","lo","vo","Eie","Fie","kcd","jcd","dcd","D1","acd","tHb","wed","aid","cKd","gZd","Qmd","Umd","li","Xcd","ZEc","q7c","lib","dcb","TLc","Qwd","OQd","ADb","My","Qie","Kv","uo","o0b","n0b","NQ","g0b","i0b","f0b","d0b","n8c","m8c","i8c","h8c","g8c","f8c","d8c","c8c","e8c","K7c","J7c","o1","z7c","B7c","Fpc","Epc","Apc","EW","wpc","ypc","vpc","xpc","zpc","upc","Drc","Crc","yrc","OW","wrc","trc","xrc","vrc","urc","rrc","qrc","prc","lrc","NW","irc","hrc","krc","grc","jrc","frc","tzc","szc","lzc","YW","jzc","hzc","fzc","gzc","kzc","izc","Yqc","Xqc","Sqc","LW","Nqc","Mqc","Pqc","Oqc","Rqc","Qqc","wSc","vSc","t$","nSc","mSc","oSc","ycd","xcd","E1","ocd","mcd","lcd","qcd","Rad","Qad","Mad","Kad","Iad","Lad","Gad","Jad","Had","qQd","AId","izd","xj","he","ftd","God","Hod","LLd","Bk","Xdd","ndb","rDb","Uz","Xie","_bb","tdb","RPb","s$c","wkb","hkb","ikb","ekb","pgb","fhb","f4c","l4c","m4c","C0","ole","Bne","Cne","ztd","JAd","LAd","yId","CId","BId","Bt","Nc","ieb","CUb","XZb","c6d","zte","qeb","peb","uCc","Z7b","w8b","v8b","UCc","qDc","xFc","z8b","p8b","y8b","Tne","RLc","Lkd","kmd","lmd","zpd","UUd","VUd","Apd","pQd","PHd","jKd","Rdd","g3d","_o","Fv","Kp","T6c","_Mb","DUd","jmd","$jb","eub","bub","M5b","Odd","Vxc","O5b","N5b","L5b","R_b","K5b","U_b","Fsc","P5b","Qdd","GOb","jfc","Swc","XGc","ku","UHc","nMc","$B","pRd","Jk","r$c","HSb","FSb","Ime","GSb","Jme","ESb","Kme","DSb","Lme","H9b","$Xc","Tqe","Sqe","cme","$Fc","oHc","ZFc","yb","ktb","Bx","Bnc","gKd","Poc","Soc","p7c","Zzb","$zb","uAb","zZb","AZb","aod","MJd","tJb","IJb","KKd","Mve","LKd","Nve","w0b","u0b","v0b","t0b","x0b","y0b","nfd","mfd","sfd","Udd","Wdd","Pdd","kUc","jUc","FTc","iUc","gUc","mTc","gTc","hUc","zic","CHc","tic","xic","Aud","D9","Fcb","wd","WZc","hKd","xk","KFc","cHc","xle","pAc","oAc","kAc","iAc","dAc","gAc","eAc","fAc","cAc","hAc","jAc","Flc","Elc","Alc","KV","tlc","wlc","slc","zlc","vlc","ulc","ylc","xlc","e6c","d6c","_5c","f1","$5c","T5c","X5c","Z5c","U5c","V5c","W5c","Y5c","Hsd","Gsd","Csd","O3","Bsd","ysd","zsd","xsd","Asd","vsd","usd","wsd","XNb","VNb","WNb","Xyb","hyb","dyb","uyb","eyb","T3c","h4c","jkd","F9c","M9b","_$b","stb","cId","HAd","IAd","Wb","crb","n3b","mxc","Bsc","o3b","m3b","l3b","tAd","sAd","aKb","Idd","Ddd","_Jb","phb","ohb","nhb","Hhb","xhb","dhb","Vb","Kje","ZC","fD","Yyb","Jg","ui","f_b","Si","pQc","zjd","Hkd","gNc","vQc","MRd","Ox","Ewb","xwb","xRb","eSb","uSb","qSb","Nbd","Mbd","Hbd","B1","zbd","ybd","Bbd","Gbd","Fbd","Ebd","Cbd","Dbd","Abd","wFb","vFb","rFb","dN","qFb","lFb","mFb","kFb","oFb","pFb","nFb","jFb","iFb","pTc","Zqe","qTc","nTc","$qe","oTc","TQc","PEc","QEc","urb","bZb","o7c","M_b","lBc","Gkd","Txd","ckd","Zqd","drd","lqd","KJd","Be","nD","bdb","__java$exception","lz","btd","gue","Zjb","vkb","yac","mEb","CDb","xyb","fyb","J2c","Etd","ki","Wi","p6c","A6c","Gne","Hne","V1c","URc","dVc","q1c","p1c","QLc","ZEd","pmb","etd","fkd","Cid","jEb","sbd","Zac","Trc","Src","Orc","PW","Frc","Hrc","Irc","Jrc","Krc","Lrc","Nrc","Erc","Grc","Mrc","Ndd","Mdd","J1","Bdd","Add","Edd","Fdd","Hdd","Gdd","Cdd","zdd","vUc","uC","_Ed","Jy","I4b","Uy","Tz","ce","xtd","Vh","xNb","TQb","mSb","VQb","_sd","Pld","lRb","UQb","Mic","Nic","nNb","YMb","aNb","rNd","hj","$C","EDc","Gwb","xVb","sVb","XDb","RDb","AUd","w6c","crd","grd","hrd","Dqd","qmb","WC","YC","QC","jRb","xld","Ykd","qic","nic","w7c","rVb","LCb","PH","j_c","Mre","S0c","ekd","yid","XRc","PZc","nib","Pr","bRc","Ife","dfe","Afe","ue","OYb","Esc","syb","qL","tke","Zmd","icb","Rmd","Qe","q4c","aub","Ss","BG","Gie","whb","nzd","$3","hve","JEd","NEd","oNb","Tt","Nhb","re","Hic","oic","pic","Gic","ai","b4d","c4d","ql","Xdb","jPb","Tle","kPb","iPb","Ule","lPb","Vle","mPb","Wle","Mcc","Ncc","Lcc","Kcc","Icc","Xad","Wad","f9c","Yad","C9c","Sad","s8c","Tad","Y8c","Vad","_8c","Uad","$8c","$Pd","nQd","Ly","Ebb","rwb","yke","j5c","Fkb","Hlb","eDc","HZb","w$c","_Zc","aRc","Rqe","pHb","Re","qHb","Se","Tgb","Bgb","Dgb","Sy","F$c","ss","LUb","JUb","KUb","VQc","Lcd","qtc","wZc","ZZc","$Zc","PVc","jid","And","IEd","PEd","Vk","Sc","mc","j7c","E_b","Ngb","Z1b","A9b","UDb","JDc","cVc","fVc","qKb","AJb","wf","bFd","Kic","Iic","jjc","Tmd","GQd","IQd","q6d","Xk","x6c","Jkd","Vn","Up","qr","Ck","KXb","gic","u4c","qnd","Eid","Jnd","sb","_ic","zId","o1d","vk","wk","kud","Fhb","Lhb","Ghb","c6b","_5b","i6b","Ekd","bkd","eid","jte","Vj","yZb","VOd","QHd","N7d","Gj","Og","Web","cTd","kue","Xh","$hd","lYb","jf","Osc","_Fc","bGc","Rf","loc","zGb","bLb","had","Vcd","Wcd","ej","fj","sud","Zi","vAd","KAd","xAd","ZId","dJd","eJd","Cve","fJd","Dve","k6d","l6d","ved","Efd","RUb","aJd","CUd","EUd","Tee","Uje","a_b","Lwc","owc","Mkd","ttb","CI","hDc","cD","gD","N_b","Gub","yub","lke","mke","O_b","n6d","o6d","aeb","Ev","ln","EZc","QZc","GZc","LFb","Ycc","yOc","t4c","Tj","xFb","GVb","Xkd","Ljc","JOb","t6c","o6c","Q9b","pyc","wyc","N9b","EHb","Htd","Q9c","XGb","MUb","JTb","Vme","qZb","ITb","Iwc","Cwc","aUb","itc","pf","LTb","Byc","zsc","aZb","Y$b","qme","utc","cZb","_Yb","ezc","h0","czc","I2c","Kf","Kgb","Lgb","Zcd","QUc","Dne","b1c","zg","Ug","zvd","Gxd","Di","pvd","lsd","cLb","_Kb","UKb","mKd","nm","wm","W_b","$kd","vyc","zqe","kyc","oyc","syc","zyc","myc","Y9b","U9b","tWd","uWd","vWd","wWd","xWd","yWd","zWd","BWd","FHb","oN","Sje","$Ed","Sxd","Lzc","Cxc","Dxc","pBc","qyc","Ze","wAd","B6d","Zg","Myd","mj","IA","Epb","Hbb","UC","p5b","r5b","t5b","s5b","q5b","m5b","Rwc","Tqc","rHc","yic","fdd","edd","hdd","T9c","gdd","E9c","ddd","r8c","tme","Ree","Ufe","OZc","jhb","Ofe","Zee","$ee","Qsc","gjc","LHc","Zic","cjc","Yic","JHc","fjc","bIc","ijc","hnc","mzd","wCc","vd","BDb","DDb","N9d","Qge","Q9d","R9d","ted","sed","sde","Kge","$l","Vpd","eh","Wje","fh","fvd","vg","uDc","Igb","Zcb","Ue","VOc","aAb","_zb","xM","ROc","QOc","Cjd","Bjd","vjd","EOb","bFb","_Eb","dFb","gNb","Ce","dNb","ELb","ENb","efb","_0d","FMc","gVb","Xgb","mIb","Kjc","Vbc","Wbc","q2c","J8c","OEc","TPb","tyb","ryb","yyb","pyb","xKb","zKb","vKb","AKb","wKb","b0d","xlb","dYb","HFb","umc","r2c","igd","Vqd","k4c","o5c","Ye","UEd","_lb","P9d","wte","fde","ide","Wgb","DN","nJb","mJb","oJb","eJb","dJb","fJb","iJb","hJb","gJb","lJb","kJb","jJb","bJb","aJb","cJb","$Ib","ZIb","_Ib","XIb","WIb","YIb","vjc","cYb","h4b","Dsc","c4b","gkd","nj","Roc","XEd","O9c","oQc","mse","ise","Y3","jse","L9d","ede","bde","Zyd","BPb","K9c","vPb","G8c","qPb","wPb","zPb","yPb","APb","xPb","$Eb","sPb","rPb","tPb","uPb","NWb","ued","JKb","DKb","a0b","P_b","kid","Qg","zld","Zje","tud","PJb","yle","zle","Ale","eVc","zD","yD","xD","u6d","mh","x6d","v6d","kCb","d4d","HLd","rud","Gk","mi","mYb","Nac","zHb","Bub","KCb","HCb","vZb","Qwc","nZb","Ksc","btc","pZb","Nsc","uZb","tXc","jre","FZc","JFb","IFb","AFb","GFb","uAd","jve","uj","BAd","m3d","wo","GF","b0b","Scc","Rcc","Pcc","Aqe","XDc","Y_b","HVc","BVc","FMd","QTd","UPc","Oqe","WPc","XPc","I0c","z0c","G0c","H0c","x0c","E0c","n0c","F0c","o0c","D0c","y8c","uld","JQd","yde","jIb","kIb","IZc","RZc","P1c","N1c","hNb","Gle","iNb","ZMb","jNb","$Mb","XZc","r6c","k6c","jud","Fwb","Dle","Ele","Fle","Nyd","rJc","otc","eyc","hJc","iJc","oJc","yJc","mJc","sY","Iqe","eme","sJc","nJc","Bxc","Ayc","lJc","pJc","kJc","qJc","ZOb","YOb","Vne","Wqd","rTb","TMc","qmc","Uoc","Qoc","s3d","Yxd","H9d","_I","PDb","Me","QDb","sRb","cRb","a$c","AHb","lNb","mNb","xxc","ikc","Kmc","Nmc","dKd","Fve","eKd","EXb","GXb","d_b","pHc","qHc","hQc","aKd","C0b","Ogc","uoc","voc","u$c","M6d","bD","UId","AGb","MSb","Mme","ISb","Nme","JSb","Ome","KSb","LSb","Pme","NSb","Qme","ric","HHc","KHc","gJc","UWc","XWc","NWc","OWc","PWc","MWc","QWc","e9c","TWc","x9c","KWc","wWc","LWc","xWc","RWc","zWc","SWc","BWc","VWc","CWc","WWc","DWc","YWc","FWc","ni","Z_b","p7b","rMc","yxc","bgd","yf","Vt","_tb","VSb","O8c","B8c","YSb","ZSb","$Sb","XSb","_Sb","aTb","USb","SSb","TSb","WSb","RSb","H6b","bd","Xec","ttc","Lhd","Eod","Nhd","lpd","Phd","mQd","VFd","KHd","OFd","Snd","cGd","ird","p6d","v$c","ere","Lld","Khd","Uod","Ohd","PSd","aGd","qUd","dGd","yHb","BHb","O9b","K9b","L9b","V9b","R9b","LZb","JNc","Yke","eFb","Zke","cFb","$ke","aFb","_ke","cfc","AZc","po","Ooc","Vsc","Wsc","l6c","WTb","m8b","q8b","x8b","a8b","YTb","S7b","b8b","XTb","d8b","E$c","t$c","j0d","l0d","oh","rEc","GHc","MVc","qWc","hg","vld","Fkd","wld","tj","t1d","OKd","DJb","MKb","q6c","h6c","dre","y6c","pud","woc","oEc","nEc","WOc","Rpd","Ute","T_b","ixc","Ikd","Zkd","Ui","Eyd","UZc","bEb","BVb","znc","yzc","NZc","HZc","$sd","XId","w6d","t6d","llc","Vwc","nlc","olc","mlc","KXc","LXc","gLd","SQd","E9d","I9d","KDc","Kd","LNb","ONb","WZb","eLb","H3b","C3b","sic","SEc","Rsc","CX","FX","tKc","rRc","F2c","vTc","sRc","HXc","Qlb","Wlb","Md","F6b","WNc","Xac","Fne","Wac","ctc","_ac","qhb","Jje","oQb","wub","xub","S1b","fxc","Qld","gxc","kjc","ujc","qjc","E3c","hsd","sg","rpc","qf","Qj","iud","oA","H1c","F1c","IVc","JVc","AVc","cub","bYb","P9b","Tsc","Dpb","Bpb","Cpb","fje","uke","hCb","wg","SUb","IWb","pWb","mWb","RVc","CVc","c0c","__c","v0c","$_c","t0c","Y_c","p0c","Z_c","r0c","X_c","W_c","a0c","b0c","T_c","k0c","U_c","m0c","V_c","U7c","T7c","W7c","V7c","D9c","O7c","I8c","Q7c","S7c","L7c","pse","P7c","R7c","M7c","t8c","N7c","w8c","iue","ktd","mtd","Dvd","lue","nue","Oi","m6d","Ymd","gh","MQd","HQd","ufb","dkc","ckc","ekc","fkc","oFc","oY","nY","KIc","IHc","jZb","XQc","Qqe","$Tb","dtc","qRc","sZc","yZc","s6c","qec","rec","Gcb","jfd","Vud","og","fld","Rlb","LRb","mme","MRb","KRb","nme","PRb","ome","QRb","pme","NRb","rme","RRb","ORb","NUb","vdc","mkc","lkc","rkc","tkc","skc","qkc","ukc","vkc","Yi","wkc","Znc","H0b","j3b","k3b","uic","VGc","UGc","WGc","TGc","MSc","kTc","lTc","JZc","LZc","ofd","Ax","Q6c","esd","fsd","gsd","zMc","ljc","Zjc","UQc","BGb","Iod","Z2d","Xxd","ffe","qde","ae","Z9b","fac","ktc","Wec","Vec","iCc","p5c","pjc","QVc","mte","nte","ORd","QRd","I2d","swe","K6d","N6d","sKc","cRc","eqd","fqd","dqd","rEb","Cxb","Bxb","sEb","FJb","KJb","JJb","KIb","OKb","SKb","RKb","cOb","JM","rQb","TBc","pCc","jOc","eg","fg","rfd","PKd","SKd","ESc","jTc","FSc","kFd","HEd","BEd","zEd","AEd","GEd","mve","eFd","fFd","hFd","VEd","iFd","aFd","lFd","NFc","YQc","a0d","wi","ti","Gac","Hac","GDc","rUc","qUc","Ffd","PRd","Ilb","Jlb","nEb","PM","tEb","qh","LEd","Wk","tfb","YUc","valueOf","RJb","gIb","fIb","hIb","iIb","SJb","Gqd","Hqd","Iqd","Jqd","TMd","Slb","Tlb","Ulb","Xlb","xGb","YNb","wOb","tpc","spc","MJc","MZb","uRb","d4b","qPc","X_b","Gsc","Spc","tDc","_Uc","Tqd","$od","brd","Fqd","Vlb","DGb","EKb","Idb","Bw","TZb","KZb","gne","zRc","LJd","tde","Fue","Gue","m5c","fs","ll","rA","LNc","$Pb","Lc","UPb","SPb","D$c","Jqe","z6c","xOb","hl","Pgb","Cgb","Sgb","Fgb","bhb","Jhb","CVb","u0d","KTb","gyc","KQ","cne","DYb","Hxc","twc","EYb","MTb","lf","CYb","Fxc","Ixc","Gxc","zwc","OTb","NTb","qYb","oQd","NRd","pi","Ri","vz","tz","wz","uz","cEb","m8d","k8d","h8d","i8d","j8d","l8d","If","Bf","IKb","Q1b","$xc","lfd","M1b","swd","bj","Bhb","Chb","Egb","K4b","DMc","qmd","EId","vyb","BOb","COb","MPb","DOb","eNb","$Ob","AOb","Y5b","Qxd","jj","ILd","dj","pkc","zCc","Rxd","rwd","l5c","ug","gvd","Rg","nTb","hbc","Wne","vNd","Nid","bcb","ecb","GGb","O3b","Ysc","a9b","Rs","XOb","Dac","zac","Xoc","Dyc","CTc","BTc","HTc","uTc","ETc","GTc","H9c","xTc","yTc","zTc","wTc","ATc","DTc","ITc","RBd","KYc","Bre","LYc","IYc","Cre","FYc","Dre","GYc","Ere","JYc","Fre","MYc","Gre","HYc","Hre","NYc","Ire","yld","At","Wzc","nqc","lre","mre","nre","yWc","ore","EWc","qre","GWc","rre","AWc","XXb","T6b","rPc","IAb","dme","Ju","kr","Aac","uKc","bfc","tQb","sGb","qTb","mTb","LSc","xSc","ySc","q$","fme","frd","cue","due","Eqd","Pqd","Qqd","aNc","NLc","OLc","PLc","SLc","f1d","g1d","Yfe","UUb","PFc","ync","TDb","TM","Jke","Kke","SDb","Le","ard","$qd","erd","mqd","xqd","YCc","XCc","YGc","FKb","Woc","RYc","VYc","gZc","fZc","jZc","SYc","_Yc","aZc","bZc","$Yc","cZc","hZc","eZc","ZYc","dZc","iZc","WYc","XYc","YYc","P8c","UYc","TYc","kZc","Ab","kNb","LPb","JPb","IQb","e4b","mzc","AQc","r9b","zbc","HNc","aWc","_Vc","aYb","WQb","jSb","pSb","XQb","YQb","fSb","LQb","tRb","SQb","KQb","yoc","PZb","Asc","Noc","xoc","Jyc","roc","soc","toc","KQd","_Fd","eRc","WSc","ml","AXc","gWc","jXc","zXc","ig","BXc","npd","UKd","mo","DWb","Y2b","vsc","mmd","ste","opd","Sld","VId","Ej","IJc","vQb","uQb","xQb","jcc","ftc","XNc","YNc","VNc","_od","u6c","x1d","wXb","LYb","YZc","Y7b","V7b","G8b","r8b","M8b","E8b","i8b","A8b","F8b","e8b","O8b","P7b","I8b","o8b","H8b","Q8b","C8b","Q7b","D8b","R8b","K8b","P8b","N8b","T7b","_7b","t8b","u8b","k8b","f8b","W7b","U7b","l8b","g8b","L8b","R7b","B8b","j8b","s8b","c8b","$7b","X7b","UWb","qWb","nWb","NHd","Ihb","yhb","thb","aGc","groupCollapsed","fCb","Yie","jCb","groupEnd","dGc","cGc","Jsc","mtc","Lmc","a6b","Txc","bcc","fN","jN","oPc","Rac","jQc","See","F5b","H5b","G5b","b_b","j_b","E5b","eec","QFc","N8d","v8d","t8d","u8d","s8d","Z6d","Tbc","Ubc","TFc","Dub","fFc","DNc","zNc","CNc","ENc","ANc","BNc","cQc","gQc","dQc","fQc","eQc","GNc","Qac","rMb","Igc","aQc","Pq","vGb","yGb","rGb","$doc","documentMode","Zd","Xd","suppressed","Yd","mhb","p2d","R1b","RFc","rQc","$wd","Swd","Twd","Uwd","Vwd","Wwd","Ywd","Xwd","Zwd","hxd","_wd","axd","bxd","cxd","dxd","fxd","exd","gxd","Usc","ybc","wbc","wHb","AYb","Xqe","bTc","bJc","atc","sQb","itd","wQb","V6b","Eac","Fac","o2c","L1b","PGb","o9c","p9c","n9c","q9c","l9c","OCc","vre","wre","xre","B9b","hTc","_Sc","iTc","aTc","D4b","jdd","Rse","ame","wme","yme","_le","QKd","uNd","tNd","eee","uue","Yue","G6b","rAd","e6b","g6b","h6b","htc","k6b","sPc","j6b","f6b","d6b","b6b","jnd","AUc","yUc","BUc","sbc","_D","hjc","hKb","Vgc","hic","Ngc","Xgc","Ugc","oSb","tSb","M9c","bSb","sSb","lSb","kSb","dSb","cSb","iSb","hSb","gSb","nSb","rSb","Qre","Vre","y0c","Rre","w0c","Sre","u0c","Tre","Ure","s0c","Wre","l0c","Xre","Yre","Zre","q0c","Lyc","Tf","p2c","HJb","LJb","QKb","TKb","gJd","x2d","l1","j1","DJ","xK","jK","uK","kL","Bj","YDb","yVb","cNb","qNb","rNb","fTc","cTc","kHc","g_b","N1b","OFc","ywc","uwc","vwc","SGb","gac","dac","eac","Owc","Anc","doc","Gyc","Vf","Iyc","boc","Hyc","coc","Wf","Myc","aoc","oqd","pqd","Zte","$te","rqd","qqd","_te","aue","_qd","CGb","ixd","$ad","Qse","uqe","Fme","Tme","bqe","E4b","ht","lastIndex","nOd","k1d","n1d","B2d","kme","af","cf","K0c","ase","Zpe","q2d","uVb","LP","tVb","ef","ff","JVb","Ijc","hfd","G9c","Mq","Rq","Bg","r9c","ULc","X9b","jg","kg","uGb","FGb","wGb","tGb","EGb","qGb","JQb","_Bc","cyc","LEc","MEc","NEc","JRc","Jh","vh","x6b","YDc","bEc","ZDc","nFc","vDc","dyc","oNc","qNc","rNc","nNc","sNc","pNc","lNc","mNc","fee","kee","nxe","oxe","pxe","qxe","rxe","mxe","wac","tA","Hjc","uh","Zk","Yk","YEd","YFc","axc","UFc","Lf","mHc","eGc","khb","ZJc","yyc","uZc","gRc","dRc","n$","Sqd","wqd","yqd","zqd","sqd","tqd","uqd","vqd","i_b","Msc","etc","X$b","_bc","ysc","BPc","fNb","Y7c","qse","vme","Jre","Eme","Ame","rse","lqe","W$b","VGb","C8c","mgb","Xje","Khb","Wcc","ine","tfd","Neb","Jeb","Keb","Leb","Meb","Tse","qfd","_Mc","qwd","wwd","rRb","iRb","Tge","w5","Axe","nh","W6b","U6b","S6b","WFc","XFc","X2d","Uxc","P1b","iKb","LIb","OGb","Kxc","_Nb","lQc","nQc","mQc","kQc","wQc","zQc","fKd","uk","Sse","_fe","Vfe","lxe","Pxd","gSc","fSc","$Sc","ZSc","XSc","VPc","Te","KMc","LMc","MMc","HQb","$O","e3d","ifd","UVc","eDb","GM","nvd","_Ec","odc","age","YPc","TPc","Bac","Zxd","lj","getMinutes","getSeconds","getMilliseconds","opc","npc","MFc","Fub","RKd","bh","ji","E6b","Oac","Mac","Lsc","Pac","U1b","Yxc","ELd","O1b","Y1b","Mxc","hyc","Jwc","Awc","xwc","Jxc","o8c","sne","$1b","X1b","xsc","V1b","T1b","oTb","xMc","$8b","Z8b","dDc","lde","kde","DPb","Yle","Zle","$le","Zbc","Pmd","c6","v6c","kMc","vZc","kYc","tYc","sYc","J2d","K2d","Xfe","TQd","$$b","uxc","exc","TUb","gf","e0c","Pre","$Mc","$Ic","Of","Pf","Qf","Nf","J4b","Xwc","swc","H4b","rtc","stc","B4b","ptc","bKc","oZb","vxc","Z$b","hZb","mZb","lZb","Mh","uEd","vEd","wEd","sEd","tEd","xEd","yEd","EEd","FEd","lve","xUc","Dbc","Cbc","sTb","UCb","Je","bm","Vvb","em","am","rhb","shb","egb","rgc","Pgc","pwc","Wgc","aEb","rwc","ZDb","Kgc","Lgc","Mgc","mYc","z_","o_","mg","lYc","ZQc","o7b","txc","Dk","zk","WGb","vwd","Gi","eed","fed","bed","aed","ced","Afd","h_b","_z","de","VC","XC","rid","kte","qid","Vcb","dTc","YSc","eTc","VSc","MNc","F8d","H8d","K8d","L8d","M8d","P8d","O8d","w8d","x8d","y8d","z8d","A8d","B8d","C8d","D8d","E8d","G8d","J8d","kKd","Lve","n5c","Jf","jxd","gj","Cyc","EJb","NKb","BUb","oqb","AUb","hf","oBc","wDc","sDc","OUb","Wfe","PUb","AVb","vVb","nc","yUb","sZb","W9b","J9b","T9b","AFc","_sc","Bbc","Abc","rxc","qxc","Ebc","wFc","qY","Ewc","AGc","gg","wPc","fyc","Axc","sxc","Exc","kNc","$wc","hxc","_wc","cxc","Hwc","Dwc","Bwc","cUb","Kyc","_Tb","y$c","KTc","are","bre","zme","Gme","Dme","Hme","Gcd","Bcd","Ocd","Qcd","Hcd","Ccd","Pcd","Ncd","Ecd","Dcd","Mcd","Kcd","Jcd","Vmd","tte","ute","bl","nse","cTb","Rme","Sme","ume","Cme","Zfe","Mwb","pEc","wlb","zQb","zfd","z8c","A9c","Elb","YJc","eYb","_Xb","wsc","_1b","F4b","G4b","j6c","yfd","Ag","y2b","C2b","CZc","xZc","tZc","BZc","zZc","lDb","Lke","Mke","cVb","Isc","IDc","CDc","DDc","ADc","HDc","BDc","FDc","rZb","tZb","ssc","oMc","UMc","pMc","qMc","Cf","vf","rKb","DHb","eKb","GJb","PKb","BJb","pKb","GKb","HKb","CJb","oKb","cKb","KKb","LKb","oc","Ff","dKb","uf","$2b","iyc","kfd","E0b","W1b","V$b","e_b","$Wc","sre","Cy","Df","M8c","ucd","z9c","Jbd","U8c","P9c","X9c","R9c","S9c","V9c","Jcb","yKb","Bmd","dgb","fgb","ggb","hgb","igb","jgb","z2b","w_b","z_b","x_b","y_b","A2b","B2b","xSb","xme","Bme","Fcd","Icd","LOG10E","Gwc","nxc","pje","qje","bje","cje","dje","eje","gje","hje","ije","jje","kje","lje","mje","BA","rje","sje","tje","uje","vje","wje","xje","AA","DA","yA","CA","iQc","Yfd","ded","$dd","Ioc","KJc","Af","Ef","bKb","lbb","_ee","Yee","wxe","afe","uxe","vxe","xxe","c3b","vtc","d3b","gDc","oxc","pxc","fDc","zd","Ctd","Vxd","fYb","$Xb","ZXb","BWb","JWb","SMc","u2c","d9c","N8c","s2c","v2c","_6c","_dd","e7b","DXb","FXb","WJc","xY","wY","VJc","HJc","UJc","TJc","GJc","lMc","Shd","Mhd","Rhd","Jhd","Ihd","Ml","Ol","Tl","Ul","yl","Dl","Kl","El","zl","Jl","Hl","Vl","Wl","Nl","Sl","Pl","efe","wl","tl","Fl","Al","Il","Bl","Gl","Cl","Iue","Hue","pde","Xl","Yl","Zue","bve","_ue","ave","$ue","dm","cm","$bc","NCb","mZc","Kre","xqe","Wmd","_Pd","vte","YXb","Kgd","I9c","jyc","J9c","L9c","N9c","U9c","Bvc","Cvc","Dvc","Evc","byc","yvc","zvc","Avc","awc","Hvc","Kvc","Svc","Eyc","Nvc","Fyc","Pvc","fwc","cwc","Yvc","Wvc","$vc","pvc","qvc","Auc","Ywc","Duc","Lxc","E8c","Twc","Kwc","p8c","Nwc","Xxc","Zxc","Oxc","Qxc","Rxc","Sxc","Pxc","Gvc","avc","$uc","Fvc","Suc","muc","kuc","Xtc","Ytc","buc","Ztc","iuc","cvc","dvc","Luc","uvc","zxc","hvc","Guc","nvc","wuc","yuc","evc","Mtc","Ktc","qwc","Jtc","Juc","bxc","Iuc","dxc","Kuc","Pwc","euc","v9c","v8c","L8c","h9c","Nxc","j9c","Vuc","Xuc","nwc","Itc","Zuc","suc","quc","S8c","kxc","Puc","kvc","Mwc","ouc","_xc","wvc","Uwc","uuc","lxc","Ruc","Fwc","guc","Uuc","huc","Vtc","wwc","Stc","Qtc","Rtc","Utc","Otc","Huc","z$c","vue","wue","xue","BCc","CCc","gee","Mue","Nue","Oue","Pue","Kue","Sue","HVd","BMc","AMc","te","yMc","EMc","IMc","kA","jA","iA","OA","NA","QA","sse","tse","$pe","q8c","x8c","cqe","A8c","ype","F8c","tpe","K8c","g9c","u9c","R8c","mqe","pqe","qqe","vse","T8c","vqe","Xpe","wse","xse","yse","zse","Ase","Bse","Cse","Dse","Ese","Fse","u8c","Lpe","Mpe","Npe","Ope","Ppe","Spe","Qpe","Rpe","Tpe","Upe","Vpe","W9c","wqe","tqe","sqe","i9c","V8c","dqe","X8c","gqe","m9c","hqe","iqe","jqe","kqe","Z8c","c9c","a9c","nqe","D8c","Gse","Hse","rqe","oqe","Ype","B9c","Wpe","y9c","eqe","fqe","_pe","aqe","Ise","H8c","k9c","ntc","Xne","Yne","puc","Zne","$ne","Muc","_ne","aoe","boe","coe","xvc","doe","eoe","foe","goe","nuc","hoe","bvc","ioe","Tuc","joe","koe","loe","moe","noe","_uc","ooe","poe","qoe","luc","roe","soe","toe","uoe","voe","woe","xoe","cuc","yoe","$tc","zoe","vvc","Aoe","Boe","fvc","Coe","ivc","Doe","Eoe","Foe","rvc","Goe","xuc","Hoe","zuc","Ioe","Buc","Joe","Koe","Loe","Moe","Noe","Ooe","Poe","Qoe","Roe","Soe","Toe","Ntc","Uoe","Ltc","Voe","Woe","Xoe","Yoe","bwc","Zoe","$oe","_oe","Tvc","ape","Qvc","bpe","cpe","gwc","dpe","epe","fpe","gpe","hpe","tuc","ipe","ruc","jpe","Wtc","kpe","lpe","Ptc","mpe","Ttc","npe","ope","Ouc","Nuc","Wuc","Yuc","Quc","fuc","juc","duc","_tc","auc","lvc","mvc","gvc","jvc","ovc","tvc","svc","Cuc","Euc","Fuc","vuc","Ivc","Jvc","Lvc","Mvc","Uvc","Vvc","Ovc","Rvc","hwc","iwc","dwc","ewc","Zvc","Xvc","_vc","hfe","ife","ofe","pfe","qfe","tfe","mfe","rfe","ufe","cfe","sfe","nfe","jfe","lfe","kfe","LK","QFd","SFd","RFd","TFd","UFd","WFd","ZFd","$Fd","bGd","eGd","gGd","hGd","XFd","iGd","Oyc","cee","dee","sxe","txe","yue","zue","Aue","Bue","Cue","Due","Eue","Jue","Lue","Que","Rue","Tue","Uue","Vue","Wue","Xue","global","Phe","Qhe","Rhe","Whe","Yhe","Zhe","$he","_he","aie","bie","cie","die","eie","fie","gie","hie","iie","jie","kie","lie","qie","sie","tie","uie","vie","wie","xie","yie","Aie","Bie","Cie","Die","Lie","Nie","Oie","Pie","Tie","Uie","Wie","yje","zje","Aje","Bje","Cje","Dje","Lje","Mje","Nje","_je","ake","bke","cke","dke","eke","fke","gke","pke","qke","rke","ske","vke","wke","Cke","Dke","Eke","Fke","Gke","Ike","Nke","Oke","Pke","Qke","Rke","Ske","Tke","Uke","Vke","Wke","Xke","ale","ble","cle","fle","hle","nle","qle","rle","sle","ule","wle","Ble","Cle","Hle","Jle","Kle","Lle","Mle","Nle","Ole","Ple","Qle","Rle","Sle","Xle","bme","gme","hme","ime","jme","lme","sme","Ume","Wme","Xme","Yme","Zme","$me","_me","dne","ene","fne","hne","mne","nne","pne","qne","rne","tne","une","vne","wne","xne","yne","zne","Ane","Ene","Ine","Jne","Kne","Lne","Mne","Nne","One","Pne","Qne","Rne","Sne","ppe","qpe","rpe","spe","upe","vpe","wpe","xpe","zpe","Ape","Bpe","Cpe","Dpe","Epe","Fpe","Gpe","Hpe","Ipe","Jpe","Kpe","yqe","Bqe","Cqe","Dqe","Eqe","Fqe","Gqe","Hqe","Kqe","Lqe","Mqe","Nqe","Pqe","Uqe","Vqe","Wqe","_qe","cre","fre","gre","hre","ire","kre","tre","ure","yre","zre","Are","Lre","Nre","Ore","$re","_re","bse","cse","dse","fse","gse","hse","ose","Jse","Kse","Lse","Mse","Nse","Ose","Pse","Use","Vse","Wse","gte","hte","pte","qte","rte","xte","Tte","Wte","jue","oue","pue","que","rue","cve","dve","eve","fve","ive","kve","yve","zve","Ave","Ove","Pve","Tve","Uve","Vve","Wve","Xve","Yve","Zve","$ve","awe","nwe","owe","pwe","qwe","rwe","Iwe","Mwe","Nwe","kxe","yxe","zxe","Bxe","Cxe","Dxe","Exe","Fxe","Gxe","Hxe","goog","ac","kc","lc","fc","rc","sc","wc","tc","fd","$w","ax","gd","hd","jd","kd","zy","Qi","ld","md","od","xe","ud","tr","Bd","Cd","Gd","Ku","Lu","Dv","Ym","Jv","pd","so","hp","Pd","jr","Zq","Qd","Gs","Rd","Qs","Ud","lt","Tw","Uw","uy","XAb","nz","message","mz","kz","callee","caller","Wz","XA","ge","je","_B","Lcb","Wcb","Mdb","$db","seb","Peb","dkb","Function","jpb","opb","we","uvb","zvb","Pxb","Qxb","vwb","Oyb","Pyb","Ryb","Syb","Tyb","Vyb","Uyb","eAb","gAb","dAb","qAb","eBb","pBb","vBb","uBb","BBb","Ge","ABb","GBb","$Ab","_Ab","Xzb","VCb","Oe","Pe","WDb","wEb","qEb","pIb","qIb","sf","MIb","zJb","sKb","WKb","gLb","hLb","aLb","FLb","QLb","XLb","aMb","fMb","kMb","sMb","vMb","yMb","BMb","EMb","MNb","NNb","jOb","eOb","yQb","qQb","WPb","XPb","YPb","ZPb","Ig","BQb","EQb","NQb","yRb","CRb","JRb","ERb","uTb","QTb","RTb","WUb","XUb","QVb","UVb","PVb","TP","MWb","PWb","EWb","FWb","GWb","HWb","nf","of","GYb","UYb","DZb","O$b","o_b","Old","b2b","Nld","c2b","d2b","E2b","F2b","Q2b","R2b","Z2b","b3b","g3b","r3b","u3b","s3b","I3b","f4b","k4b","g4b","C4b","l5b","S5b","X5b","n6b","s6b","y6b","I6b","f7b","i7b","TGb","l7b","zS","q7b","s7b","t7b","u7b","v7b","_8b","g9b","s9b","C9b","_9b","aac","bac","tac","Cac","$ac","nbc","qbc","ubc","Gbc","Hbc","Sbc","acc","dcc","kcc","mcc","scc","wcc","vcc","xcc","Qcc","Vcc","ndc","rdc","udc","Kdc","Ldc","Mdc","gec","fec","Eec","Gec","Hec","Tec","dfc","efc","ffc","gfc","hfc","ifc","fBc","iEb","wgc","Zgc","$gc","_gc","ahc","bhc","Qgc","Rgc","chc","Jgc","Sgc","dhc","Tgc","cic","bic","aic","fic","Bic","Jic","Lic","ykc","zkc","Akc","nkc","okc","plc","qlc","rlc","emc","fmc","Dmc","Vmc","nnc","onc","vnc","Hoc","Yoc","Xf","C5c","UBc","Zf","$Bc","jCc","qCc","xCc","ACc","PCc","WCc","lDc","ODc","_Dc","qEc","mFc","zFc","BFc","FFc","VFc","eHc","YHc","ZHc","$Hc","_Hc","eIc","fIc","MIc","PIc","cJc","wJc","dKc","LJc","NJc","eKc","fKc","PJc","QJc","cKc","XJc","NZb","JLc","NMc","uNc","vNc","INc","KNc","kOc","_Oc","qQc","uQc","sQc","tQc","WQc","iRc","pRc","oRc","fRc","nRc","PSc","SSc","HUc","aVc","iVc","nVc","EVc","GVc","SXc","jYc","cYc","dYc","A$c","B$c","C$c","c_c","j1c","ng","r1c","G1c","O1c","a2c","$1c","pg","d2c","M2c","G2c","Y2c","r3c","s3c","t3c","E0","S3c","k5c","jeb","r7c","h1","led","hed","ied","jed","Yyc","Zyc","$yc","azc","_yc","ufd","wfd","xfd","Sfd","cgd","Lgd","ehd","fhd","shd","xg","yg","zhd","Kg","ck","dk","fk","hk","kk","wh","Uj","Ch","Dh","Eh","Fh","yj","Lh","Und","J4","Uh","Th","Bqd","Cqd","Lqd","Mqd","Nqd","Oqd","isd","jsd","ksd","Isd","Vsd","ptd","$h","_h","Nk","sqb","_3","Li","Ni","xi","yi","zi","Bi","oj","pj","ozd","oAd","pAd","GAd","MAd","vBd","wBd","xBd","I4","vj","TEd","KEd","Did","OHd","_Hd","lk","aId","qk","dLd","SMd","GMd","HMd","IMd","UMd","Hk","FNd","NNd","ONd","SNd","TNd","twd","uwd","TOd","UOd","WOd","Ik","aTd","bTd","dTd","RTd","STd","TTd","BUd","SUd","WUd","TUd","Pk","sVd","tVd","nl","fl","kl","Sk","Tk","bYd","cYd","IYd","JYd","iZd","fZd","Xmd","jZd","kZd","lZd","__d","k0d","t0d","W0d","V0d","Z0d","$0d","c1d","o2d","r2d","N2d","O2d","W2d","_2d","c3d","i3d","l3d","CAd","Y6d","s2d","u2d","A2d","G2d","L2d","V2d","Y2d","$2d","n3d","Z8d","$8d","g9d","qgb","D9d","F9d","J9d","B9d","M9d","O9d","S9d","Ll","gfe","Jfe","fm","Wee","_ge","ahe","bhe","che","ohe","phe","qhe","rhe","Ihe","gwtOnLoad","Xbb","dispatch","svd","Z1c","rvd","t2c","Ghe","qvd","saveDispatch","dispatcher","ovd","ELKNode","_ELK","optionsClone","workerThreadsExist","_Worker","ReferenceError","_possibleConstructorReturn","__proto__","getPrototypeOf","subClass","superClass","setPrototypeOf","_inherits","defaultCmp","heapify","heappop","heappush","heappushpop","heapreplace","insort","nlargest","nsmallest","_siftdown","_siftup","cmp","item","lastelt","returnitem","_ref1","_results","_results1","elem","los","startpos","newitem","parentpos","childpos","endpos","rightpos","pushpop","heap","front","condition","format","argIndex","framesToPop","hashClear","hashDelete","hashGet","hashHas","hashSet","Hash","listCacheClear","listCacheDelete","listCacheGet","listCacheHas","listCacheSet","ListCache","getNative","mapCacheClear","mapCacheDelete","mapCacheGet","mapCacheHas","mapCacheSet","MapCache","iteratee","baseAssignValue","objValue","castPath","toKey","getRawTag","objectToString","nullTag","undefinedTag","symToStringTag","toStringTag","isFunction","isMasked","isObject","toSource","reIsHostCtor","funcProto","objectProto","funcToString","reIsNative","assignValue","isIndex","customizer","nested","newValue","arrayMap","isSymbol","INFINITY","symbolProto","symbolToString","baseToString","trimmedEndIndex","reTrimStart","isKey","stringToPath","coreJsData","freeGlobal","isKeyable","__data__","baseIsNative","nativeObjectToString","isOwn","tag","unmasked","nativeCreate","HASH_UNDEFINED","reIsUint","reIsDeepProp","reIsPlainProp","maskSrcKey","IE_PROTO","assocIndexOf","getMapData","MAX_MEMOIZE_SIZE","freeSelf","memoizeCapped","rePropName","reEscapeChar","quote","subString","reWhitespace","toNumber","FUNC_ERROR_TEXT","nativeMax","nativeMin","wait","lastArgs","lastThis","maxWait","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","invokeFunc","shouldInvoke","timeSinceLastCall","timerExpired","trailingEdge","timeWaiting","remainingWait","debounced","isInvoking","leadingEdge","cancel","flush","baseGet","defaultValue","baseGetTag","asyncTag","funcTag","genTag","proxyTag","isObjectLike","symbolTag","memoized","Cache","baseSet","baseTrim","NAN","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","isBinary","copyArray","hookCallback","hooks","setHookCallback","input","hasOwnProp","isObjectEmpty","isUndefined","isNumber","isDate","arrLen","createUTC","locale","strict","createLocalOrUTC","defaultParsingFlags","unusedTokens","unusedInput","charsLeftOver","nullInput","invalidEra","invalidMonth","invalidFormat","userInvalidated","iso","parsedDateParts","era","meridiem","rfc2822","weekdayMismatch","getParsingFlags","_pf","isValid","_isValid","flags","parsedParts","isNowValid","invalidWeekday","_strict","bigHour","isFrozen","createInvalid","fun","momentProperties","updateInProgress","copyConfig","momentPropertiesLen","_isAMomentObject","_tzm","_isUTC","_offset","_locale","Moment","config","updateOffset","isMoment","suppressDeprecationWarnings","deprecate","firstTime","deprecationHandler","argLen","deprecations","deprecateSimple","_config","_dayOfMonthOrdinalParseLenient","_dayOfMonthOrdinalParse","_ordinalParse","mergeConfigs","parentConfig","childConfig","Locale","defaultCalendar","sameDay","nextDay","nextWeek","lastDay","lastWeek","sameElse","calendar","mom","_calendar","zeroFill","targetLength","forceSign","absNumber","zerosToFill","formattingTokens","localFormattingTokens","formatFunctions","formatTokenFunctions","addFormatToken","token","padded","ordinal","localeData","removeFormattingTokens","makeFormatFunction","formatMoment","expandFormat","invalidDate","replaceLongDateFormatTokens","longDateFormat","defaultLongDateFormat","LTS","LT","LL","LLL","LLLL","_longDateFormat","formatUpper","tok","defaultInvalidDate","_invalidDate","defaultOrdinal","defaultDayOfMonthOrdinalParse","_ordinal","defaultRelativeTime","future","past","mm","MM","yy","relativeTime","withoutSuffix","isFuture","_relativeTime","pastFuture","addUnitAlias","unit","shorthand","lowerCase","normalizeUnits","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","priorities","addUnitPriority","getPrioritizedUnits","unitsObj","isLeapYear","year","absFloor","toInt","argumentForCoercion","coercedNumber","makeGetSet","keepTime","set$1","month","date","daysInMonth","stringGet","stringSet","prioritized","prioritizedLen","match1","match2","match3","match4","match6","match1to2","match3to4","match5to6","match1to3","match1to4","match1to6","matchUnsigned","matchSigned","matchOffset","matchShortOffset","matchTimestamp","matchWord","addRegexToken","strictRegex","isStrict","getParseRegexForToken","unescapeFormat","regexEscape","matched","p4","addParseToken","tokenLen","addWeekParseToken","addTimeToArrayFromToken","YEAR","MONTH","DATE","HOUR","MINUTE","SECOND","MILLISECOND","WEEK","WEEKDAY","mod","modMonth","monthsShort","months","monthsShortRegex","monthsRegex","monthsParse","defaultLocaleMonths","defaultLocaleMonthsShort","MONTHS_IN_FORMAT","defaultMonthsShortRegex","defaultMonthsRegex","localeMonths","_months","isFormat","localeMonthsShort","_monthsShort","handleStrictParse","monthName","_monthsParse","_longMonthsParse","_shortMonthsParse","localeMonthsParse","_monthsParseExact","dayOfMonth","getSetMonth","getDaysInMonth","computeMonthsParse","_monthsShortStrictRegex","_monthsShortRegex","_monthsStrictRegex","_monthsRegex","cmpLenRev","shortPieces","longPieces","mixedPieces","daysInYear","parseTwoDigitYear","getSetYear","getIsLeapYear","createDate","createUTCDate","UTC","getUTCFullYear","setUTCFullYear","firstWeekOffset","dow","doy","fwd","getUTCDay","dayOfYearFromWeeks","week","weekday","resYear","resDayOfYear","dayOfYear","weekOfYear","resWeek","weekOffset","weeksInYear","weekOffsetNext","localeWeek","_week","defaultLocaleWeek","localeFirstDayOfWeek","localeFirstDayOfYear","getSetWeek","getSetISOWeek","parseWeekday","weekdaysParse","parseIsoWeekday","shiftWeekdays","ws","weekdaysMin","weekdaysShort","weekdays","weekdaysMinRegex","weekdaysShortRegex","weekdaysRegex","defaultLocaleWeekdays","defaultLocaleWeekdaysShort","defaultLocaleWeekdaysMin","defaultWeekdaysRegex","defaultWeekdaysShortRegex","defaultWeekdaysMinRegex","localeWeekdays","_weekdays","day","localeWeekdaysShort","_weekdaysShort","localeWeekdaysMin","_weekdaysMin","handleStrictParse$1","weekdayName","_weekdaysParse","_shortWeekdaysParse","_minWeekdaysParse","localeWeekdaysParse","_weekdaysParseExact","_fullWeekdaysParse","getSetDayOfWeek","getSetLocaleDayOfWeek","getSetISODayOfWeek","computeWeekdaysParse","_weekdaysStrictRegex","_weekdaysRegex","_weekdaysShortStrictRegex","_weekdaysShortRegex","_weekdaysMinStrictRegex","_weekdaysMinRegex","minp","shortp","longp","minPieces","hFormat","hours","kFormat","lowercase","minutes","matchMeridiem","_meridiemParse","localeIsPM","seconds","kInput","_isPm","isPM","_meridiem","pos1","pos2","defaultLocaleMeridiemParse","getSetHour","localeMeridiem","isLower","globalLocale","baseConfig","dayOfMonthOrdinalParse","meridiemParse","locales","localeFamilies","commonPrefix","arr1","minl","normalizeLocale","chooseLocale","loadLocale","isLocaleNameSane","oldLocale","_abbr","aliasedRequire","getSetGlobalLocale","values","getLocale","defineLocale","abbr","parentLocale","updateLocale","tmpLocale","listLocales","checkOverflow","_overflowDayOfYear","_overflowWeeks","_overflowWeekday","extendedIsoRegex","basicIsoRegex","tzRegex","isoDates","isoTimes","aspNetJsonRegex","obsOffsets","UT","GMT","EDT","EST","CDT","CST","MDT","MST","PDT","PST","configFromISO","allowTime","dateFormat","timeFormat","tzFormat","isoDatesLen","isoTimesLen","configFromStringAndFormat","extractFromRFC2822Strings","yearStr","monthStr","dayStr","hourStr","minuteStr","secondStr","untruncateYear","preprocessRFC2822","checkWeekday","weekdayStr","parsedInput","calculateOffset","obsOffset","militaryOffset","numOffset","configFromRFC2822","parsedArray","setUTCMinutes","getUTCMinutes","configFromString","createFromInputFallback","currentDateArray","nowValue","_useUTC","getUTCMonth","getUTCDate","configFromArray","currentDate","expectedWeekday","yearToUse","dayOfYearFromWeekInfo","_dayOfYear","_nextDay","weekYear","weekdayOverflow","curWeek","GG","createLocal","ISO_8601","RFC_2822","skipped","stringLength","totalParsedInputLength","meridiemFixWrap","erasConvertYear","hour","isPm","meridiemHour","configFromStringAndArray","tempConfig","bestMoment","scoreToBeat","currentScore","validFormatFound","bestFormatIsValid","configfLen","score","configFromObject","dayOrDate","minute","second","millisecond","createFromConfig","prepareConfig","preparse","configFromInput","isUTC","prototypeMin","prototypeMax","pickBy","moments","ordering","isDurationValid","unitHasDecimal","orderLen","isValid$1","createInvalid$1","createDuration","Duration","years","quarters","quarter","weeks","isoWeek","days","milliseconds","_milliseconds","_days","_bubble","isDuration","absRound","compareArrays","array1","array2","dontConvert","lengthDiff","diffs","utcOffset","offsetFromString","chunkOffset","matcher","parts","cloneWithOffset","model","local","getDateOffset","getSetOffset","keepLocalTime","keepMinutes","localAdjust","_changeInProgress","addSubtract","getSetZone","setOffsetToUTC","setOffsetToLocal","setOffsetToParsedOffset","tZone","hasAlignedHourOffset","isDaylightSavingTime","isDaylightSavingTimeShifted","_isDSTShifted","isLocal","isUtcOffset","isUtc","aspNetRegex","isoRegex","diffRes","parseIso","momentsDifference","inp","positiveMomentsDifference","isAfter","isBefore","createAdder","period","tmp","isAdding","isString","isMomentInput","isNumberOrStringArray","isMomentInputObject","objectTest","propertyTest","propertyLen","arrayTest","dataTypeTest","isCalendarSpec","getCalendarFormat","myMoment","calendar$1","formats","sod","startOf","calendarFormat","localInput","endOf","isBetween","inclusivity","localFrom","localTo","isSame","inputMs","isSameOrAfter","isSameOrBefore","asFloat","that","zoneDelta","monthDiff","wholeMonthDiff","anchor","toISOString","keepOffset","toDate","inspect","datetime","suffix","zone","inputString","defaultFormatUtc","defaultFormat","postformat","humanize","fromNow","toNow","newLocaleData","lang","MS_PER_SECOND","MS_PER_MINUTE","MS_PER_HOUR","MS_PER_400_YEARS","mod$1","dividend","divisor","localStartOfDate","utcStartOfDate","startOfDate","isoWeekday","unix","toObject","toJSON","isValid$2","parsingFlags","invalidAt","creationData","localeEras","eras","_eras","since","until","localeErasParse","eraName","narrow","localeErasConvertYear","getEraName","getEraNarrow","getEraAbbr","getEraYear","erasNameRegex","computeErasParse","_erasNameRegex","_erasRegex","erasAbbrRegex","_erasAbbrRegex","erasNarrowRegex","_erasNarrowRegex","matchEraAbbr","matchEraName","matchEraNarrow","matchEraYearOrdinal","_eraYearOrdinalRegex","abbrPieces","namePieces","narrowPieces","addWeekYearFormatToken","getSetWeekYear","getSetWeekYearHelper","getSetISOWeekYear","getISOWeeksInYear","getISOWeeksInISOWeekYear","isoWeekYear","getWeeksInYear","weekInfo","getWeeksInWeekYear","weeksTarget","setWeekAll","dayOfYearData","getSetQuarter","erasParse","eraYearOrdinalParse","getSetDayOfMonth","getSetDayOfYear","getSetMinute","getSetMillisecond","getSetSecond","parseMs","getZoneAbbr","getZoneName","createUnix","createInZone","parseZone","preParsePostFormat","for","eraNarrow","eraAbbr","eraYear","isoWeeks","weeksInWeekYear","isoWeeksInYear","isoWeeksInISOWeekYear","isDST","zoneAbbr","zoneName","dates","isDSTShifted","proto$1","get$1","setter","listMonthsImpl","out","listWeekdaysImpl","localeSorted","listMonths","listMonthsShort","listWeekdays","listWeekdaysShort","listWeekdaysMin","firstDayOfYear","firstDayOfWeek","langData","mathAbs","addSubtract$1","add$1","subtract$1","absCeil","monthsFromDays","monthsToDays","daysToMonths","valueOf$1","makeAs","asMilliseconds","asSeconds","asMinutes","asHours","asDays","asWeeks","asMonths","asQuarters","asYears","clone$1","get$2","makeGetter","thresholds","substituteTimeAgo","relativeTime$1","posNegDuration","getSetRelativeTimeRounding","roundingFunction","getSetRelativeTimeThreshold","limit","argWithSuffix","argThresholds","withSuffix","abs$1","toISOString$1","totalSign","ymSign","daysSign","hmsSign","proto$2","toIsoString","relativeTimeRounding","relativeTimeThreshold","HTML5_FMT","DATETIME_LOCAL","DATETIME_LOCAL_SECONDS","DATETIME_LOCAL_MS","TIME","TIME_SECONDS","TIME_MS","__unused_webpack_module","__unused_webpack_exports","Lib","rules","fullSelector","addStyleRule","Plotly","ReactPropTypesSecret","emptyFunction","emptyFunctionWithReset","resetWarningCache","shim","componentName","location","propFullName","secret","getShim","isRequired","ReactPropTypes","bigint","symbol","arrayOf","elementType","instanceOf","objectOf","oneOf","oneOfType","exact","checkPropTypes","PropTypes","aa","ca","encodeURIComponent","da","ea","fa","ia","ja","ka","la","ma","acceptsBooleans","attributeName","attributeNamespace","mustUseProperty","propertyName","sanitizeURL","removeEmptyString","ra","sa","ta","pa","qa","oa","removeAttribute","setAttributeNS","xlinkHref","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","wa","ya","za","Aa","Ba","Ca","Da","Ea","Fa","Ga","Ha","Ia","Ja","Ka","La","Ma","Na","Oa","prepareStackTrace","Reflect","construct","displayName","Pa","Qa","$$typeof","_context","_payload","_init","Ra","Sa","Ta","nodeName","Va","_valueTracker","getOwnPropertyDescriptor","setValue","stopTracking","Ua","Wa","checked","Xa","Ya","defaultChecked","_wrapperState","initialChecked","Za","controlled","ownerDocument","defaultSelected","disabled","dangerouslySetInnerHTML","textContent","namespaceURI","MSApp","execUnsafeLocalFunction","lastChild","nodeType","nodeValue","animationIterationCount","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridArea","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","lineClamp","order","tabSize","widows","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeWidth","setProperty","menuitem","area","br","embed","keygen","link","track","wbr","srcElement","correspondingUseElement","stateNode","onError","alternate","return","memoizedState","dehydrated","sibling","unstable_scheduleCallback","unstable_cancelCallback","unstable_shouldYield","unstable_requestPaint","unstable_now","unstable_getCurrentPriorityLevel","unstable_ImmediatePriority","unstable_UserBlockingPriority","unstable_NormalPriority","unstable_LowPriority","unstable_IdlePriority","clz32","pendingLanes","suspendedLanes","pingedLanes","entangledLanes","entanglements","eventTimes","delete","nativeEvent","blockedOn","domEventName","eventSystemFlags","targetContainers","isDehydrated","containerInfo","dispatchEvent","ReactCurrentBatchConfig","keyCode","charCode","_reactName","_targetInst","currentTarget","returnValue","cancelBubble","persist","isPersistent","eventPhase","bubbles","cancelable","isTrusted","view","detail","altKey","getModifierState","button","buttons","relatedTarget","fromElement","toElement","movementX","movementY","dataTransfer","animationName","elapsedTime","pseudoElement","clipboardData","Spacebar","Left","Right","Down","Del","Win","Menu","Apps","Scroll","MozPrintableKey","Alt","Control","Meta","Shift","pressure","tangentialPressure","tiltX","tiltY","twist","isPrimary","targetTouches","changedTouches","deltaX","wheelDeltaX","deltaZ","email","password","range","search","tel","oninput","detachEvent","attachEvent","nextSibling","compareDocumentPosition","HTMLIFrameElement","contentWindow","href","contentEditable","focusedElem","selectionRange","documentElement","selectionStart","selectionEnd","defaultView","getSelection","rangeCount","anchorNode","anchorOffset","focusNode","focusOffset","createRange","setStart","removeAllRanges","addRange","setEnd","scrollLeft","scrollTop","focus","animationend","animationiteration","animationstart","transitionend","parentWindow","na","xa","$a","ba","char","__html","queueMicrotask","previousSibling","contextTypes","__reactInternalMemoizedUnmaskedChildContext","__reactInternalMemoizedMaskedChildContext","childContextTypes","getChildContext","__reactInternalMemoizedMergedChildContext","deletions","pendingProps","treeContext","retryLane","memoizedProps","defaultProps","_currentValue","childLanes","dependencies","firstContext","lanes","memoizedValue","interleaved","updateQueue","baseState","firstBaseUpdate","lastBaseUpdate","shared","pending","effects","eventTime","lane","Component","refs","isMounted","_reactInternals","enqueueSetState","enqueueReplaceState","enqueueForceUpdate","shouldComponentUpdate","isPureReactComponent","contextType","updater","componentWillReceiveProps","UNSAFE_componentWillReceiveProps","getDerivedStateFromProps","getSnapshotBeforeUpdate","UNSAFE_componentWillMount","componentWillMount","componentDidMount","ref","_owner","_stringRef","implementation","tagName","revealOrder","_workInProgressVersionPrimary","ReactCurrentDispatcher","baseQueue","lastRenderedReducer","action","hasEagerState","eagerState","lastRenderedState","getSnapshot","lastEffect","stores","deps","readContext","useCallback","useContext","useEffect","useImperativeHandle","useInsertionEffect","useLayoutEffect","useMemo","useReducer","useRef","useState","useDebugValue","useDeferredValue","useTransition","useMutableSource","useSyncExternalStore","useId","unstable_isNewReconciler","identifierPrefix","digest","WeakMap","getDerivedStateFromError","componentDidCatch","componentStack","pingCache","ReactCurrentOwner","compare","baseLanes","cachePool","transitions","UNSAFE_componentWillUpdate","componentWillUpdate","componentDidUpdate","pendingContext","fallback","dataset","dgst","_reactRetry","subtreeFlags","isBackwards","rendering","renderingStartTime","tail","tailMode","wasMultiple","suppressHydrationWarning","onClick","onclick","createElementNS","autoFocus","createTextNode","WeakSet","_reactRootContainer","onCommitFiberUnmount","componentWillUnmount","isHidden","__reactInternalSnapshotBeforeUpdate","callbackNode","expirationTimes","expiredLanes","callbackPriority","finishedWork","finishedLanes","timeoutHandle","mutableReadLanes","onCommitFiberRoot","onRecoverableError","onPostCommitFiberRoot","isReactComponent","pendingChildren","mutableSourceEagerHydrationData","pendingSuspenseBoundaries","reportError","_internalRoot","unstable_scheduleHydration","querySelectorAll","JSON","stringify","form","usingClientEntryPoint","Events","findFiberByHostInstance","bundleType","rendererPackageName","rendererConfig","overrideHookState","overrideHookStateDeletePath","overrideHookStateRenamePath","overrideProps","overridePropsDeletePath","overridePropsRenamePath","setErrorHandler","setSuspenseHandler","scheduleUpdate","currentDispatcherRef","findHostInstanceByFiber","findHostInstancesForRefresh","scheduleRefresh","scheduleRoot","setRefreshHandler","getCurrentFiber","reconcilerVersion","__REACT_DEVTOOLS_GLOBAL_HOOK__","isDisabled","supportsFiber","inject","createPortal","createRoot","unstable_strictMode","findDOMNode","flushSync","hydrate","hydrateRoot","hydratedSources","_getVersion","unmountComponentAtNode","unstable_batchedUpdates","unstable_renderSubtreeIntoContainer","checkDCE","PlotlyComponent","_Component","_super","_createSuper","resizeHandler","syncWindowResize","_assertThisInitialized","syncEventHandlers","attachUpdateEvents","getRef","handleUpdate","figureCallback","updatePlotly","shouldInvokeResizeHandler","figureCallbackFunction","shouldAttachUpdateEvents","unmounting","react","onInitialized","prevProps","numPrevFrames","numNextFrames","figureChanged","revisionDefined","revision","revisionChanged","onUpdate","onPurge","isBrowser","removeUpdateEvents","purge","_this3","updateEvents","updateEvent","_this4","_this$el","_transitionData","_frames","invoke","_this5","useResizeHandler","Plots","_this6","eventNames","hasHandler","Boolean","addEventHandler","removeEventHandler","getPlotlyEventName","_react","divId","propTypes","_propTypes","_interopRequireWildcard","_factory","_interopRequireDefault","_plotly","__self","__source","Fragment","jsx","jsxs","setState","forceUpdate","escape","_status","_result","Children","only","Profiler","PureComponent","StrictMode","Suspense","cloneElement","createContext","_currentValue2","_threadCount","Provider","Consumer","_defaultValue","_globalName","createFactory","createRef","forwardRef","isValidElement","lazy","memo","startTransition","unstable_act","sortIndex","expirationTime","priorityLevel","scheduling","isInputPending","MessageChannel","port2","port1","unstable_Profiling","unstable_continueExecution","unstable_forceFrameRate","unstable_getFirstCallbackNode","unstable_next","unstable_pauseExecution","unstable_runWithPriority","unstable_wrapCallback","warning","loaded","chunkId","promises","miniCssF","globalThis","inProgress","dataWebpackPrefix","script","needAttach","scripts","getElementsByTagName","getAttribute","charset","timeout","onScriptComplete","onerror","doneFns","paths","installedChunks","installedChunkData","errorType","realSrc","request","webpackJsonpCallback","parentChunkLoadingFunction","chunkIds","moreModules","runtime","chunkLoadingGlobal","_toPropertyKey","hint","prim","toPrimitive","_setPrototypeOf","_getPrototypeOf","_isNativeReflectConstruct","sham","Proxy","Derived","hasNativeReflectConstruct","Super","NewTarget","_toConsumableArray","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","sym","_objectSpread2","getOwnPropertyDescriptors","excluded","sourceKeys","_objectWithoutProperties","sourceSymbolKeys","propertyIsEnumerable","_excluded","useButtonProps","rel","role","_ref2$tabIndex","tabIndex","handleClick","isTrivialHref","onKeyDown","Button","React","asProp","_objectWithoutPropertiesLoose","_useButtonProps2","buttonProps","_jsx","DEFAULT_BREAKPOINTS","DEFAULT_MIN_BREAKPOINT","ThemeContext","prefixes","breakpoints","minBreakpoint","useBootstrapPrefix","defaultPrefix","bsPrefix","variant","_objectSpread","nodeHtmlLabel","Graph","setSelectedNode","selectedWorkload","selectedOp","selectedPattern","setWarningText","_useState2","setGraph","_useState4","groupNode","setGroupNode","groupNodeOpList","workload_id","model_path","response","op_name","groups","CytoGraph","_React$Component","handleCallback","childData","renderCytoscapeElement","getElements","node_type","newExpandedNodes","_jsxs","GraphButtons","parentCallback","collapseNode","tooltip","_React$Component2","_super2","getLabel","highlight","border_color","customColor","getHash","OpDetails","setHistogramType","setSelectedPattern","opDetails","setOpDetails","Pattern","sequence","colSpan","Weights","dtype","granularity","Activation","Table","striped","bordered","borderless","hover","responsive","decoratedBsPrefix","table","responsiveClass","OpList","setSelectedOp","opList","setOpList","_error$response","tableContent","opData","scrollIntoView","toExponential","Spinner","_ref$animation","_ref$as","bsSpinnerPrefix","Histogram","histogramType","histogramData","setHistogramData","Plot","getHistogramData","colorPalette","generateColor","histograms","series","orientation","side","fillcolor","hoverinfo","yaxis","autorange","showgrid","legend","tracegroupgap","violinmode","_get","receiver","desc","_construct","Parent","Class","_wrapNativeSuper","Wrapper","PACKET_TYPES","PACKET_TYPES_REVERSE","ERROR_PACKET","withNativeBlob","withNativeArrayBuffer","encodeBlobAsBase64","fileReader","FileReader","readAsDataURL","supportsBinary","isView","chars","decodeBase64Packet","binaryType","decoded","base64","encoded1","encoded2","encoded3","encoded4","bufferLength","arraybuffer","decode","mapBinary","encodedPacket","SEPARATOR","mixin","emitReserved","hasListeners","globalThisShim","pick","NATIVE_SET_TIMEOUT","NATIVE_CLEAR_TIMEOUT","installTimerFunctions","useNativeTimers","setTimeoutFn","clearTimeoutFn","BASE64_OVERHEAD","TransportError","_Error","description","Transport","_Emitter","socket","readyState","doOpen","doClose","onClose","packets","write","packet","decodePacket","onPacket","details","onPause","alphabet","encode","encoded","yeast","XMLHttpRequest","hasCORS","XHR","xdomain","hasXHR2","responseType","Polling","_Transport","polling","isSSL","protocol","port","hostname","xs","secure","forceBase64","poll","doPoll","encodedPayload","encodedPackets","decodedPacket","decodePayload","onOpen","close","encodePacket","encodePayload","doWrite","schema","timestampRequests","timestampParam","encodedQuery","Request","uri","xhrStatus","_this7","onData","pollXhr","_this8","async","_this9","xscheme","xhr","open","extraHeaders","setDisableHeaderCheck","setRequestHeader","withCredentials","requestTimeout","onreadystatechange","status","send","requestsCount","requests","cleanup","fromError","abort","responseText","unloadHandler","nextTick","WebSocket","isReactNative","product","WS","protocols","headers","addEventListeners","onopen","autoUnref","_socket","unref","onclose","closeEvent","lastPacket","transports","websocket","host","authority","ipv6uri","pathNames","regx","queryKey","$0","$2","Socket","writeBuffer","prevBufferLen","agent","upgrade","rememberUpgrade","addTrailingSlash","rejectUnauthorized","perMessageDeflate","transportOptions","closeOnBeforeunload","qry","pairs","pair","decodeURIComponent","upgrades","pingInterval","pingTimeout","pingTimeoutTimer","beforeunloadEventListener","transport","offlineEventListener","EIO","priorWebsocketSuccess","createTransport","setTransport","onDrain","failed","onTransportOpen","upgrading","freezeTransport","onTransportClose","onupgrade","probe","onHandshake","resetPingTimeout","sendPacket","filterUpgrades","maxPayload","getWritablePackets","payloadSize","utf8Length","byteLength","compress","cleanupAndClose","waitForUpgrade","filteredUpgrades","_createForOfIteratorHelper","allowArrayLike","normalCompletion","didErr","_e2","withNativeFile","File","hasBinary","deconstructPacket","buffers","packetData","pack","_deconstructPacket","attachments","placeholder","_placeholder","newData","reconstructPacket","_reconstructPacket","PacketType","Encoder","replacer","EVENT","ACK","encodeAsString","encodeAsBinary","BINARY_EVENT","BINARY_ACK","nsp","deconstruction","Decoder","reviver","reconstructor","isBinaryEvent","decodeString","BinaryReconstructor","takeBinaryData","buf","tryParse","isPayloadValid","finishedReconstruction","CONNECT","DISCONNECT","CONNECT_ERROR","reconPack","binData","RESERVED_EVENTS","freeze","connect","connect_error","disconnecting","newListener","io","connected","recovered","receiveBuffer","sendBuffer","_queue","_queueSeq","acks","auth","_opts","_autoConnect","subs","onpacket","subEvents","_readyState","_len2","_key2","retries","fromQueue","volatile","_addToQueue","ack","_registerAckCallback","isTransportWritable","engine","notifyOutgoingListeners","ackTimeout","timer","_len3","_key3","_len4","_key4","withErr","tryCount","_len5","responseArgs","_key5","_drainQueue","_packet","_sendConnectPacket","_pid","_lastOffset","onconnect","onevent","onack","ondisconnect","emitEvent","_anyListeners","_iterator","sent","_len6","_key6","emitBuffered","subDestroy","_anyOutgoingListeners","_step2","_iterator2","Backoff","jitter","attempts","rand","deviation","setMin","setMax","setJitter","Manager","nsps","reconnection","reconnectionAttempts","reconnectionDelay","reconnectionDelayMax","randomizationFactor","backoff","_parser","parser","encoder","decoder","autoConnect","_reconnection","_reconnectionAttempts","_reconnectionDelay","_randomizationFactor","_reconnectionDelayMax","_timeout","_reconnecting","reconnect","Engine","skipReconnect","openSubDestroy","errorSub","maybeReconnectOnOpen","onping","ondata","ondecoded","_nsps","_close","onreconnect","attempt","parsed","sameNamespace","forceNew","multiplex","Workloads","setSelectedWorkload","workloads","setWorkloads","spinner","setSpinner","getWorkloads","workloadsList","workload","moment","creation_time","framework","Profiling","profilingTable","setProfilingTable","profilingChartData","setProfilingChartData","ProfilingChart","ProfilingTable","_useState6","setChecked","_useState8","sorting","setSorting","showOnChart","chartData","node_name","sortedProfiling","sortedTable","requestSorting","getSortingClass","profiling","accelerator_execution_time","cpu_execution_time","op_defined","op_run","total_execution_time","chartCheck","newProfilingChartData","requestChartCheck","getChartData","profilingData","marker","xaxis","title","showticklabels","defaultKey","_toPrimitive","useUncontrolled","fieldName","_extends2","Utils","propsValue","rest","handlerName","_useUncontrolledProp","propValue","wasPropRef","_useState","stateValue","isProp","wasProp","useUncontrolledProp","_extends","nextProps","prevState","nextState","__reactInternalSnapshotFlag","__reactInternalSnapshot","__suppressDeprecationWarning","useEventCallback","useCommittedRef","Anchor","handleKeyDown","UNMOUNTED","EXITED","ENTERING","ENTERED","EXITING","Transition","initialStatus","appear","isMounting","enter","appearStatus","in","unmountOnExit","mountOnEnter","nextCallback","_proto","updateStatus","nextStatus","cancelNextCallback","getTimeouts","exit","mounting","nodeRef","ReactDOM","forceReflow","performEnter","performExit","appearing","maybeNode","maybeAppearing","timeouts","enterTimeout","safeSetState","onEntered","onEnter","onEntering","onTransitionEnd","onExit","onExiting","onExited","setNextCallback","doesNotHaveTimeoutOrListener","addEndListener","maybeNextCallback","_this$props","childProps","TransitionGroupContext","ownerWindow","rUpper","msPattern","hyphenateStyleName","hyphenate","supportedTransforms","transforms","psuedoElement","isTransform","removeProperty","cssText","optionsSupported","onceSupported","canUseDOM","wrappedHandler","__once","onceHandler","emulateTransitionEnd","called","handle","createEvent","initEvent","transitionEnd","parseDuration","removeEmulate","transitionEndListener","toFnRef","refA","refB","mergeRefs","childRef","mergedRef","useMergedRefs","attachRef","componentOrElement","handleEnter","handleEntering","handleEntered","handleExit","handleExiting","handleExited","handleAddEndListener","innerProps","fadeStyles","_fadeStyles","Fade","_ref$transitionClasse","transitionClasses","isAppearing","triggerBrowserReflow","TransitionWrapper","CloseButton","rHyphen","pascalCase","chr","createWithBsPrefix","_ref$displayName","BsComponent","_ref2$as","Tag","resolvedPrefix","DivStyledAsH4","AlertHeading","AlertLink","closeLabel","Alert","uncontrolledProps","_useUncontrolled","closeVariant","dismissible","handleClose","alert","Link","Heading","Warning","warningText","Feedback","_ref$type","_ref$tooltip","FormCheckInput","_ref$isValid","_ref$isInvalid","controlId","FormContext","FormCheckLabel","htmlFor","FormCheck","bsSwitchPrefix","_ref$inline","inline","_ref$reverse","_ref$disabled","_ref$feedbackTooltip","feedbackTooltip","feedback","feedbackType","_ref$title","innerFormContext","hasLabel","hasChildOfType","_Fragment","Input","Label","FormControl","_classes2","htmlSize","plaintext","readOnly","FormGroup","useCol","spans","brkPoint","span","infix","Col","_useCol2","_useCol2$","colProps","_excluded2","_useCol2$2","_useCol2$2$as","FormLabel","column","visuallyHidden","columnClass","FormRange","FormSelect","FormText","muted","Switch","FloatingLabel","validated","Form","Group","Floating","FormFloating","Check","Text","Range","Select","InputGroupText","InputGroup","hasValidation","contextValue","InputGroupContext","Radio","Checkbox","NodeProperties","selectedNode","_selectedNode$attribu","propertyList","attributeList","attribute","AccuracyResults","_ref4","accuracy_data","baseline_accuracy","optimized_accuracy","ratio","_useState10","_useState12","kindOf","thing","kindOfTest","typeOfTest","isArrayBuffer","isPlainObject","isFile","isBlob","isFileList","isURLSearchParams","_ref$allOwnKeys","allOwnKeys","findKey","_global","isContextDefined","TypedArray","isTypedArray","isHTMLForm","isRegExp","reduceDescriptors","reducer","descriptors","reducedDescriptors","ALPHA","DIGIT","ALPHABET","ALPHA_DIGIT","isBuffer","isFormData","FormData","isArrayBufferView","isBoolean","isStream","pipe","caseless","targetKey","stripBOM","inherits","superConstructor","toFlatObject","sourceObj","destObj","propFilter","endsWith","searchString","forEachEntry","matchAll","regExp","freezeMethods","toObjectSet","arrayOrString","delimiter","toCamelCase","toFiniteNumber","generateString","isSpecCompliantForm","toJSONObject","reducedValue","AxiosError","captureStackTrace","utils","fileName","lineNumber","columnNumber","customProps","axiosError","isVisitable","removeBrackets","renderKey","dots","predicates","formData","PlatformFormData","metaTokens","indexes","option","visitor","defaultVisitor","useBlob","convertValue","Buffer","isFlatArray","exposedHelpers","build","charMap","AxiosURLSearchParams","_pairs","toFormData","_encode","buildURL","serializedParams","serializeFn","serialize","hashmarkIndex","InterceptorManager","fulfilled","rejected","synchronous","runWhen","silentJSONParsing","forcedJSONParsing","clarifyTimeoutError","URLSearchParams","isStandardBrowserEnv","isStandardBrowserWebWorkerEnv","WorkerGlobalScope","importScripts","buildPath","isNumericKey","isLast","arrayToObject","parsePropPath","DEFAULT_CONTENT_TYPE","transitional","transitionalDefaults","adapter","transformRequest","contentType","getContentType","hasJSONContentType","isObjectPayload","formDataToJSON","setContentType","platform","helpers","toURLEncodedForm","formSerializer","_FormData","env","rawValue","stringifySafely","transformResponse","JSONRequested","strictJSONParsing","xsrfCookieName","xsrfHeaderName","maxContentLength","maxBodyLength","validateStatus","common","ignoreDuplicateOf","$internals","normalizeHeader","header","normalizeValue","matchHeaderValue","isHeaderNameFilter","AxiosHeaders","_Symbol$iterator","_Symbol$toStringTag","valueOrRewrite","rewrite","setHeader","_header","_rewrite","lHeader","setHeaders","rawHeaders","parseHeaders","tokensRE","parseTokens","deleted","deleteHeader","normalized","formatHeader","_this$constructor","asStrings","computed","accessors","defineAccessor","accessorName","methodName","buildAccessors","accessor","transformData","isCancel","__CANCEL__","CanceledError","expires","domain","cookie","toGMTString","read","buildFullPath","baseURL","requestedURL","isAbsoluteURL","relativeURL","combineURLs","originURL","msie","urlParsingNode","resolveURL","pathname","requestURL","samplesCount","firstSampleTS","timestamps","chunkLength","startedAt","bytesCount","passed","progressEventReducer","isDownloadStream","bytesNotified","_speedometer","speedometer","lengthComputable","progressBytes","rate","estimated","onCanceled","requestData","requestHeaders","cancelToken","unsubscribe","signal","username","unescape","btoa","fullPath","onloadend","responseHeaders","getAllResponseHeaders","settle","statusText","paramsSerializer","responseURL","onabort","ontimeout","timeoutErrorMessage","xsrfValue","isURLSameOrigin","cookies","onDownloadProgress","onUploadProgress","upload","subscribe","aborted","parseProtocol","knownAdapters","http","httpAdapter","xhrAdapter","getAdapter","adapters","nameOrAdapter","throwIfCancellationRequested","throwIfRequested","dispatchRequest","headersToObject","mergeConfig","config1","config2","getMergedValue","mergeDeepProperties","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","timeoutMessage","decompress","beforeRedirect","httpAgent","httpsAgent","socketPath","responseEncoding","configValue","VERSION","validators","deprecatedWarnings","validator","formatMessage","opt","assertOptions","allowUnknown","Axios","instanceConfig","interceptors","configOrUrl","contextHeaders","boolean","function","requestInterceptorChain","synchronousRequestInterceptors","interceptor","responseInterceptorChain","chain","newConfig","generateHTTPMethod","isForm","CancelToken","resolvePromise","_listeners","onfulfilled","_resolve","HttpStatusCode","Continue","SwitchingProtocols","Processing","EarlyHints","Created","Accepted","NonAuthoritativeInformation","NoContent","ResetContent","PartialContent","MultiStatus","AlreadyReported","ImUsed","MultipleChoices","MovedPermanently","Found","SeeOther","NotModified","UseProxy","Unused","TemporaryRedirect","PermanentRedirect","BadRequest","Unauthorized","PaymentRequired","Forbidden","NotFound","MethodNotAllowed","NotAcceptable","ProxyAuthenticationRequired","RequestTimeout","Conflict","Gone","LengthRequired","PreconditionFailed","PayloadTooLarge","UriTooLong","UnsupportedMediaType","RangeNotSatisfiable","ExpectationFailed","ImATeapot","MisdirectedRequest","UnprocessableEntity","Locked","FailedDependency","TooEarly","UpgradeRequired","PreconditionRequired","TooManyRequests","RequestHeaderFieldsTooLarge","UnavailableForLegalReasons","InternalServerError","NotImplemented","BadGateway","ServiceUnavailable","GatewayTimeout","HttpVersionNotSupported","VariantAlsoNegotiates","InsufficientStorage","LoopDetected","NotExtended","NetworkAuthenticationRequired","axios","createInstance","defaultConfig","Cancel","spread","isAxiosError","formToJSON","Diagnosis","onPerfEntry","getCLS","getFID","getFCP","getLCP","getTTFB","App","reportWebVitals"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"static/js/main.38959c1a.js","mappings":"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C,MAAMC,gBAChC1uI,KAAKuuI,qBAAqB7kI,EAAI+kI,eAEzB/kI,EAAsB,iBAb/B,CAeF,KAGK6jI,CACT,CArFqB,EAsFrB,EAAE,CAAC,GAAG,EAAE,CAAC,SAASlrI,EAAQ1H,EAAOC,GACjC,aAUA,IAAIgyI,EAAMvqI,EAAQ,gBAAgBxH,QAElCR,OAAOwB,eAAelB,EAAOC,QAAS,aAAc,CAClD0F,OAAO,IAET3F,EAAOC,QAAUgyI,EACjBA,EAAI/xI,QAAU+xI,CACd,EAAE,CAAC,eAAe,KAAK,CAAC,EAAE,CAAC,GA9NiV,CA8N7U,sCC3N/B,IAAI+B,EAeJ,SAASC,IAAK,CACd,SAASC,IAAK,CACd,SAASC,IAAK,CACd,SAASC,IAAK,CACd,SAASvwH,IAAK,CACd,SAASwwH,IAAK,CACd,SAASC,IAAK,CACd,SAASC,IAAK,CACd,SAASC,IAAK,CACd,SAASC,IAAK,CACd,SAASC,IAAK,CACd,SAASC,IAAK,CACd,SAASC,IAAK,CACd,SAASC,IAAK,CACd,SAASC,IAAK,CACd,SAASC,IAAK,CACd,SAAS9uB,IAAK,CACd,SAAS+uB,IAAK,CACd,SAASC,IAAK,CACd,SAASC,IAAK,CACd,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,IAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASjwE,KAAM,CACf,SAASkwE,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CACf,SAASC,KAAM,CAGf,SAASC,KAAKC,IAAI,CAClB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,IAAK,CACpB,SAASC,KAAMC,KAAK,CACpB,SAASC,GAAI5gK,GAAG6gK,GAAI7gK,EAAE,CACtB,SAAS8gK,GAAG9gK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASqiC,GAAGriC,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAAS+gK,GAAG/gK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAAS6sB,GAAG7sB,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASghK,GAAGhhK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASihK,GAAGjhK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASkhK,GAAGlhK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASmhK,GAAGnhK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAAS+sD,GAAG/sD,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAAS++F,GAAG/+F,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASohK,GAAGphK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASkmB,GAAGlmB,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASqhK,GAAGrhK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASshK,GAAGthK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASuhK,GAAGvhK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASgvC,GAAGhvC,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASwhK,GAAGxhK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASyhK,GAAGzhK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAAS0hK,GAAG1hK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAAS2hK,GAAG3hK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAAS4hK,GAAG5hK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAAS6hK,GAAG7hK,GAAGsE,KAAK4N,EAAElS,CAAC,CACvB,SAAS8hK,GAAG9hK,GAAGsE,KAAKirB,EAAEvvB,CAAC,CACvB,SAAS+hK,GAAG/hK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAAS8hC,GAAG9hC,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASgiK,GAAGhiK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASiiK,GAAGjiK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASkiK,GAAGliK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASmiK,GAAGniK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASoiK,GAAGpiK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASqiK,GAAGriK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASsiK,GAAGtiK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASuiK,GAAGviK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASwiK,GAAGxiK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAAS8mG,GAAG9mG,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAASyiK,GAAGziK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAAS0iK,GAAG1iK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAAS2iK,GAAG3iK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAAS4iK,GAAG5iK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAAS6iK,GAAG7iK,GAAGsE,KAAKtE,EAAEA,CAAC,CACvB,SAAS8iK,KAAKx+J,KAAKtE,EAAE,EAAE,CACvB,SAAS+iK,GAAI/iK,EAAEkS,GAAGlS,EAAEA,EAAEkS,CAAC,CAKvB,SAAS8wJ,GAAIhjK,EAAEkS,GAAGlS,EAAEoS,EAAEF,CAAC,CAGvB,SAAS+wJ,GAAIjjK,EAAEkS,GAAGlS,EAAEuvB,EAAErd,CAAC,CACvB,SAASgxJ,GAAIljK,EAAEkS,GAAGlS,EAAED,EAAEmS,CAAC,CAGvB,SAASixJ,GAAInjK,EAAEkS,GAAGlS,EAAEqB,EAAE6Q,CAAC,CAEvB,SAASkxJ,GAAIpjK,EAAEkS,GAAGlS,EAAEuvB,EAAErd,CAAC,CACvB,SAASmxJ,GAAIrjK,EAAEkS,GAAGlS,EAAEA,EAAEkS,CAAC,CACvB,SAASoxJ,GAAItjK,EAAEkS,GAAGlS,EAAEA,EAAEkS,CAAC,CACvB,SAASqxJ,GAAIvjK,EAAEkS,GAAGlS,EAAE86B,EAAE5oB,CAAC,CACvB,SAASsxJ,GAAIxjK,EAAEkS,GAAGlS,EAAEA,EAAEkS,CAAC,CACvB,SAASuxJ,GAAIzjK,EAAEkS,GAAGlS,EAAEkS,EAAEA,CAAC,CACvB,SAASwxJ,GAAI1jK,EAAEkS,GAAGlS,EAAED,EAAEmS,CAAC,CACvB,SAASyxJ,GAAI3jK,EAAEkS,GAAGlS,EAAEhC,EAAEkU,CAAC,CACvB,SAAS0xJ,GAAI5jK,EAAEkS,GAAGlS,EAAEE,EAAEgS,CAAC,CAIvB,SAAS2xJ,GAAI7jK,EAAEkS,GAAGlS,EAAEuF,EAAE2M,CAAC,CAEvB,SAAS4xJ,GAAI9jK,EAAEkS,GAAGlS,EAAE2S,EAAET,CAAC,CACvB,SAAS6xJ,GAAI/jK,EAAEkS,GAAGlS,EAAEuF,EAAE2M,CAAC,CACvB,SAAS8xJ,GAAIhkK,EAAEkS,GAAGlS,EAAE86B,EAAE5oB,CAAC,CACvB,SAAS+xJ,GAAIjkK,EAAEkS,GAAGlS,EAAE86B,EAAE5oB,CAAC,CACvB,SAASgyJ,GAAIlkK,EAAEkS,GAAGlS,EAAEJ,EAAEsS,CAAC,CAiBvB,SAASiyJ,GAAInkK,GAAGA,EAAEkS,EAAElS,EAAEA,CAAC,CACvB,SAASokK,GAAGpkK,GAAGA,EAAEuvB,EAAEvvB,EAAED,EAAEA,CAAC,CACxB,SAASskK,GAAIrkK,GAAGsE,KAAKvE,EAAEC,CAAC,CACxB,SAASskK,GAAItkK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASukK,GAAIvkK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASwkK,GAAIxkK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASykK,GAAIzkK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS0kK,GAAI1kK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS2kK,GAAI3kK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS4kK,GAAI5kK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS6kK,GAAI7kK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS8kK,GAAI9kK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS+kK,GAAI/kK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASglK,GAAIhlK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASilK,GAAIjlK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASklK,GAAIllK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASmlK,GAAInlK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASolK,GAAIplK,GAAGsE,KAAK4N,EAAElS,CAAC,CACxB,SAASqlK,GAAIrlK,GAAGsE,KAAK4N,EAAElS,CAAC,CACxB,SAASslK,GAAItlK,GAAGsE,KAAK4N,EAAElS,CAAC,CACxB,SAASulK,GAAIvlK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASwlK,GAAIxlK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASylK,GAAIzlK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS0lK,GAAI1lK,GAAGsE,KAAKirB,EAAEvvB,CAAC,CACxB,SAAS2lK,GAAI3lK,GAAGsE,KAAKirB,EAAEvvB,CAAC,CACxB,SAAS4lK,GAAI5lK,GAAGsE,KAAKirB,EAAEvvB,CAAC,CACxB,SAAS6lK,GAAI7lK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS8lK,GAAI9lK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS+lK,GAAI/lK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASgmK,GAAIhmK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASimK,GAAIjmK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASkmK,GAAIlmK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASmmK,GAAInmK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASomK,GAAIpmK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASqmK,GAAIrmK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASsmK,GAAItmK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASumK,GAAIvmK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASwmK,GAAIxmK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASymK,GAAIzmK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS0mK,GAAI1mK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS2mK,GAAI3mK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS4mK,GAAI5mK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS6mK,GAAI7mK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS8mK,GAAI9mK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS+mK,GAAI/mK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASgnK,GAAIhnK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASinK,GAAIjnK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASknK,GAAIlnK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASmnK,GAAInnK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASonK,GAAIpnK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASqnK,GAAIrnK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASsnK,GAAItnK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASunK,GAAIvnK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASwnK,GAAIxnK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASynK,GAAIznK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS0nK,GAAI1nK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS2nK,GAAI3nK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS4nK,GAAI5nK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS6nK,GAAI7nK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS8nK,GAAI9nK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS+nK,GAAI/nK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASgoK,GAAIhoK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASioK,GAAIjoK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASkoK,GAAIloK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASmoK,GAAInoK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASooK,GAAIpoK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASqoK,GAAIroK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASsoK,GAAItoK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASuoK,GAAIvoK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASwoK,GAAIxoK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASyoK,GAAIzoK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS0oK,GAAI1oK,GAAGsE,KAAKiB,EAAEvF,CAAC,CACxB,SAAS2oK,GAAI3oK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS4oK,GAAI5oK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS6oK,GAAI7oK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS8oK,GAAI9oK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS+oK,GAAI/oK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASgpK,GAAIhpK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASipK,GAAIjpK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASkpK,GAAIlpK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASmpK,GAAInpK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASopK,GAAIppK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASqpK,GAAIrpK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASspK,GAAItpK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASupK,GAAIvpK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASwpK,GAAIxpK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASypK,GAAIzpK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS0pK,GAAI1pK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS2pK,GAAI3pK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS4pK,GAAI5pK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS6pK,GAAI7pK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS8pK,GAAI9pK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS+pK,GAAI/pK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASgqK,GAAIhqK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASiqK,GAAIjqK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASkqK,GAAIlqK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASmqK,GAAInqK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASoqK,GAAIpqK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASqqK,GAAIrqK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASsqK,GAAItqK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASuqK,GAAIvqK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASwqK,GAAIxqK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASyqK,GAAIzqK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS0qK,GAAI1qK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS2qK,GAAI3qK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS4qK,GAAI5qK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS6qK,GAAI7qK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS8qK,GAAI9qK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS+qK,GAAI/qK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASgrK,GAAIhrK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASirK,GAAIjrK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASkrK,GAAIlrK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASmrK,GAAInrK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASorK,GAAIprK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASqrK,GAAIrrK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASsrK,GAAItrK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASurK,GAAIvrK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASwrK,GAAIxrK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASyrK,GAAIzrK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS0rK,GAAI1rK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS2rK,GAAI3rK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS4rK,GAAI5rK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS6rK,GAAI7rK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS8rK,GAAI9rK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS+rK,GAAI/rK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASgsK,GAAIhsK,GAAGsE,KAAKirB,EAAEvvB,CAAC,CACxB,SAASisK,GAAIjsK,GAAGsE,KAAK4N,EAAElS,CAAC,CACxB,SAASksK,GAAIlsK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASmsK,GAAInsK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASosK,GAAIpsK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASqsK,GAAIrsK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASssK,GAAItsK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASusK,GAAIvsK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASwsK,GAAIxsK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASysK,GAAIzsK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS0sK,GAAI1sK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS2sK,GAAI3sK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS4sK,GAAI5sK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS6sK,GAAI7sK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS8sK,GAAI9sK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS+sK,GAAI/sK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASgtK,GAAIhtK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASitK,GAAIjtK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASktK,GAAIltK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASmtK,GAAIntK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASotK,GAAIptK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASqtK,GAAIrtK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASstK,GAAIttK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASutK,GAAIvtK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASwtK,GAAIxtK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASytK,GAAIztK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS0tK,GAAI1tK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS2tK,GAAI3tK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS4tK,GAAI5tK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS6tK,GAAI7tK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS8tK,GAAI9tK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS+tK,GAAI/tK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASguK,GAAIhuK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASiuK,GAAIjuK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASkuK,GAAIluK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASmuK,GAAInuK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASouK,GAAIpuK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASquK,GAAIruK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASsuK,GAAItuK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASuuK,GAAIvuK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASwuK,GAAIxuK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASyuK,GAAIzuK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS0uK,GAAI1uK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS2uK,GAAI3uK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS4uK,GAAI5uK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS6uK,GAAI7uK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS8uK,GAAI9uK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS+uK,GAAI/uK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASgvK,GAAIhvK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASivK,GAAIjvK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASkvK,GAAIlvK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASmvK,GAAInvK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASovK,GAAIpvK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASqvK,GAAIrvK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASsvK,GAAItvK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASuvK,GAAIvvK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASwvK,GAAIxvK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASyvK,GAAIzvK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS0vK,GAAI1vK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS2vK,GAAI3vK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS4vK,GAAI5vK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS6vK,GAAI7vK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS8vK,GAAI9vK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS+vK,GAAI/vK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASgwK,GAAIhwK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASiwK,GAAIjwK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASkwK,GAAIlwK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASmwK,GAAInwK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASowK,GAAIpwK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASqwK,GAAIrwK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASswK,GAAItwK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASuwK,GAAIvwK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASwwK,GAAIxwK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASywK,GAAIzwK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS0wK,GAAI1wK,GAAGsE,KAAK4N,EAAElS,CAAC,CACxB,SAAS2wK,GAAI3wK,GAAGsE,KAAKw2B,EAAE96B,CAAC,CACxB,SAAS4wK,GAAI5wK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS6wK,GAAI7wK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS8wK,GAAI9wK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS+wK,GAAI/wK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASgxK,GAAIhxK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASixK,GAAIjxK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASkxK,GAAIlxK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASmxK,GAAInxK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASoxK,GAAIpxK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASqxK,GAAIrxK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASsxK,GAAItxK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASuxK,GAAIvxK,GAAGsE,KAAK4N,EAAElS,CAAC,CACxB,SAASwxK,GAAIxxK,GAAGsE,KAAKirB,EAAEvvB,CAAC,CACxB,SAASyxK,GAAIzxK,GAAGsE,KAAKiB,EAAEvF,CAAC,CACxB,SAAS0xK,GAAI1xK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS2xK,GAAI3xK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS4xK,GAAI5xK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS6xK,GAAI7xK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS8xK,GAAI9xK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAAS+xK,GAAI/xK,GAAGsE,KAAKvE,EAAEC,CAAC,CACxB,SAASgyK,GAAIhyK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASiyK,GAAIjyK,GAAGsE,KAAKtE,EAAEA,CAAC,CACxB,SAASkyK,GAAIlyK,GAAGsE,KAAKiB,EAAEvF,CAAC,CACxB,SAASmyK,KAAM7tK,KAAKtE,EAAE,CAAC,CACvB,SAASoyK,KAAMC,GAAI/tK,KAAK,CACxB,SAASguK,KAAMC,GAAIjuK,KAAK,CACxB,SAASkuK,KAAMC,GAAInuK,KAAK,CACxB,SAASouK,KAAMC,GAAIruK,KAAK,CACxB,SAASsuK,KAAe,CACxB,SAASC,KAAMvuK,KAAKirB,EAAEujJ,GAAG,CAEzB,SAASC,GAAI/yK,EAAEkS,GAAGlS,EAAEkS,GAAGA,CAAC,CACxB,SAAS8gK,GAAIhzK,GAAGA,EAAEkS,EAAE,IAAI+gK,EAAE,CAC1B,SAASC,GAAIlzK,GAAG,OAAOA,EAAEuF,CAAC,CAC1B,SAAS4tK,GAAGnzK,GAAG,OAAOA,EAAEA,CAAC,CACzB,SAASozK,GAAGpzK,GAAG,OAAOA,EAAEA,CAAC,CACzB,SAASqzK,GAAGrzK,GAAG,OAAOA,EAAEA,CAAC,CACzB,SAASszK,GAAGtzK,GAAG,OAAOA,EAAEA,CAAC,CACzB,SAASuzK,GAAGvzK,GAAG,OAAOA,EAAEA,CAAC,CACzB,SAASwzK,KAAK,OAAO,IAAI,CACzB,SAASC,KAAK,OAAO,IAAI,CAGzB,SAASC,GAAI1zK,EAAEkS,GAAGlS,EAAEkS,EAAEA,EAAElS,EAAEkS,CAAC,CAC3B,SAASyhK,GAAI3zK,EAAEkS,GAAGlS,EAAEA,EAAEkS,EAAElS,EAAEA,CAAC,CAC3B,SAAS4zK,GAAI5zK,EAAEkS,GAAGA,EAAE2hK,GAAG7zK,EAAEA,EAAE,CAG3B,SAAS8zK,GAAG9zK,EAAEkS,GAAGlS,EAAEuF,EAAE2M,EAAEA,EAAEA,EAAElS,CAAC,CAC5B,SAAS+zK,GAAG/zK,GAAGg0K,KAAK1vK,KAAKtE,EAAEA,CAAC,CAC5B,SAASi0K,GAAGj0K,GAAGg0K,KAAK1vK,KAAKtE,EAAEA,CAAC,CAC5B,SAASk0K,GAAGl0K,GAAGg0K,KAAK1vK,KAAKtE,EAAEA,CAAC,CAC5B,SAASm0K,GAAGn0K,GAAGo0K,KAAK9vK,KAAKtE,EAAEA,CAAC,CAC5B,SAASq0K,GAAGr0K,GAAGs0K,KAAKC,IAAGC,GAAGx0K,EAAE,CAC5B,SAASy0K,KAAKC,GAAG31K,KAAKuF,KAAK,CAC3B,SAASqwK,KAAMD,GAAG31K,KAAKuF,KAAK,CAC5B,SAASswK,KAAMH,GAAG11K,KAAKuF,KAAK,CAC5B,SAASuwK,KAAMJ,GAAG11K,KAAKuF,KAAK,CAC5B,SAASwwK,KAAML,GAAG11K,KAAKuF,KAAK,CAC5B,SAASywK,KAAMN,GAAG11K,KAAKuF,KAAK,CAC5B,SAAS0wK,KAAMP,GAAG11K,KAAKuF,KAAK,CAC5B,SAAS2wK,KAAMR,GAAG11K,KAAKuF,KAAK,CAC5B,SAAS4wK,KAAMT,GAAG11K,KAAKuF,KAAK,CAC5B,SAAS6wK,KAAMV,GAAG11K,KAAKuF,KAAK,CAC5B,SAAS8wK,KAAMX,GAAG11K,KAAKuF,KAAK,CAC5B,SAAS+wK,KAAMZ,GAAG11K,KAAKuF,KAAK,CAC5B,SAAS86F,KAAMq1E,GAAG11K,KAAKuF,KAAK,CAC5B,SAASgxK,KAAMhxK,KAAKtE,EAAEsE,IAAI,CAC1B,SAASixK,KAAMjxK,KAAKkxK,IAAI,GAAG,CAC3B,SAASC,KAAMnxK,KAAK4N,EAAE,IAAIwjK,EAAE,CAC5B,SAASC,KAAKA,GAAGjhC,EAAI,IAAI89B,EAAG,CAC5B,SAASoD,KAAMhB,GAAI71K,KAAKuF,KAAK,CAC7B,SAASuxK,GAAI71K,EAAEkS,GAAGlS,EAAE9B,OAAOgU,CAAC,CAC5B,SAAS4jK,GAAI91K,EAAEkS,GAAG6jK,GAAI/1K,EAAEA,EAAEkS,EAAE,CAK5B,SAAS8jK,GAAIh2K,EAAEkS,GAAG+jK,GAAIj2K,EAAEuF,EAAE2M,EAAE,CAC5B,SAASgkK,GAAIl2K,GAAGm2K,IAAIn2K,EAAEuvB,EAAEvvB,EAAEkS,EAAE,CAE5B,SAASkkK,GAAIp2K,GAAGsE,KAAKtE,EA+lGrB,SAAaA,GAAG,IAAIkS,EAAW,IAATA,EAAEmkK,IAAIr2K,IAAQ,qBAAuB,OAAOs2K,IAAS,GAAGpkK,GAAG,qBAAuB,OAAOqkK,IAAI,OAAOrkK,CAAC,CA/lGpGskK,CAAIx2K,EAAE,CAC7B,SAASy2K,KAAMnyK,KAAKtE,EAAE,IAAIwyK,EAAG,CAC7B,SAASkE,KAAMpyK,KAAKtE,EAAE,IAAIwyK,EAAG,CAC7B,SAASmE,KAAMryK,KAAKtE,EAAE,IAAIsyK,EAAG,CAC7B,SAASsE,KAAMtyK,KAAKtE,EAAE,IAAIsyK,EAAG,CAC7B,SAASuE,KAAMvyK,KAAKtE,EAAE,IAAIsyK,EAAG,CAC7B,SAASwE,KAAMxyK,KAAKtE,EAAE,IAAIs3I,EAAG,CAC7B,SAASy/B,KAAMzyK,KAAKtE,EAAE,IAAIg3K,EAAG,CAC7B,SAASC,KAAM3yK,KAAKtE,EAAE,IAAIo6I,EAAG,CAC7B,SAAS88B,KAAM5yK,KAAKtE,EAAE,IAAIm3K,EAAG,CAC7B,SAASC,KAAM9yK,KAAKtE,EAAE,IAAIq3K,EAAG,CAC7B,SAASC,KAAMhzK,KAAKtE,EAAE,IAAIu3K,EAAG,CAC7B,SAASC,KAAMlzK,KAAKtE,EAAE,IAAIy3K,EAAG,CAC7B,SAASC,KAAMpzK,KAAKtE,EAAE,IAAIsyK,EAAG,CAC7B,SAASqF,KAAMrzK,KAAKtE,EAAE,IAAIsyK,EAAG,CAC7B,SAASsF,KAAMtzK,KAAKtE,EAAE,IAAIsyK,EAAG,CAC7B,SAASuF,KAAMvzK,KAAKtE,EAAE,IAAIsyK,EAAG,CAC7B,SAASwF,KAAMxzK,KAAKvE,EAAE,IAAIuyK,EAAG,CAC7B,SAASyF,KAAMzzK,KAAKtE,EAAE,IAAIy2K,EAAG,CAC7B,SAASuB,KAAM1zK,KAAKtE,EAAE,IAAIwyK,EAAG,CAC7B,SAASyF,KAAM3zK,KAAK4N,EAAE,IAAIsgK,EAAG,CAC7B,SAAS0F,KAAM5zK,KAAK4N,EAAE,IAAIogK,EAAG,CAC7B,SAAS6F,KAAM7zK,KAAKiB,EAAE,IAAI+sK,EAAG,CAC7B,SAAS8F,KAAM9zK,KAAKvE,EAAE,IAAIuyK,EAAG,CAC7B,SAAS+F,KAAM/zK,KAAKtE,EAAE,IAAIw8J,EAAG,CAC7B,SAAS8b,KAAMhG,GAAIvzK,KAAKuF,KAAK,CAC7B,SAASi0K,KAAM5B,GAAI53K,KAAKuF,KAAK,CAC7B,SAASk0K,KAAMC,GAAI15K,KAAKuF,KAAK,CAC7B,SAASo0K,KAAMf,GAAI54K,KAAKuF,KAAK,CAC7B,SAASq0K,KAAMC,GAAI75K,KAAKuF,KAAK,CAC7B,SAASs0K,KAAMhG,GAAI7zK,KAAKuF,KAAK,CAC7B,SAASu0K,KAAMjG,GAAI7zK,KAAKuF,KAAK,CAC7B,SAASw0K,KAAMD,GAAI95K,KAAKuF,KAAK,CAC7B,SAASy0K,KAAMC,GAAIj6K,KAAKuF,KAAK,CAC7B,SAAS20K,KAAMD,GAAIj6K,KAAKuF,KAAK,CAC7B,SAAS40K,KAAMC,GAAIp6K,KAAKuF,KAAK,CAC7B,SAAS80K,KAAMD,GAAIp6K,KAAKuF,KAAK,CAC7B,SAAS+0K,KAAMF,GAAIp6K,KAAKuF,KAAK,CAC7B,SAASg1K,KAAMC,GAAIx6K,KAAKuF,KAAK,CAC7B,SAASk1K,KAAMC,GAAI16K,KAAKuF,KAAK,CAC7B,SAASo1K,KAAMvoB,GAAIpyJ,KAAKuF,KAAK,CAC7B,SAASq1K,KAAMxoB,GAAIpyJ,KAAKuF,KAAK,CAC7B,SAASs1K,KAAMC,GAAI96K,KAAKuF,KAAK,CAC7B,SAASw1K,KAAMD,GAAI96K,KAAKuF,KAAK,CAC7B,SAASy1K,KAAMvH,GAAIzzK,KAAKuF,KAAK,CAC7B,SAAS01K,KAAMxH,GAAIzzK,KAAKuF,KAAK,CAC7B,SAAS21K,KAAMzH,GAAIzzK,KAAKuF,KAAK,CAC7B,SAAS41K,KAAMzD,GAAI13K,KAAKuF,KAAK,CAC7B,SAAS61K,KAAMC,GAAIr7K,KAAKuF,KAAK,CAC7B,SAAS+1K,KAAM9E,GAAIx2K,KAAKuF,KAAK,CAC7B,SAASg2K,KAAMC,GAAIx7K,KAAKuF,KAAK,CAC7B,SAASk2K,KAAMD,GAAIx7K,KAAKuF,KAAK,CAC7B,SAASm2K,KAAMjI,GAAIzzK,KAAKuF,KAAK,CAC7B,SAASo2K,KAAMlI,GAAIzzK,KAAKuF,KAAK,CAC7B,SAASq2K,KAAMnI,GAAIzzK,KAAKuF,KAAK,CAC7B,SAASs2K,KAAMxoB,GAAIrzJ,KAAKuF,KAAK,CAC7B,SAASu2K,KAAMzoB,GAAIrzJ,KAAKuF,KAAK,CAC7B,SAASw2K,KAAMF,GAAI77K,KAAKuF,KAAK,CAC7B,SAASy2K,KAAMhhB,GAAIh7J,KAAKuF,KAAK,CAC7B,SAAS02K,GAAGh7K,GAAGi7K,GAAGl8K,KAAKuF,KAAKtE,EAAE,CAC9B,SAASk7K,GAAGl7K,GAAGi7K,GAAGl8K,KAAKuF,KAAKtE,EAAE,CAC9B,SAASm7K,GAAGn7K,GAAG+sD,GAAGhuD,KAAKuF,KAAKtE,EAAE,CAC9B,SAASo7K,GAAGp7K,GAAGq7K,GAAGt8K,KAAKuF,KAAKtE,EAAE,CAC9B,SAASs7K,GAAGt7K,GAAGo7K,GAAGr8K,KAAKuF,KAAKtE,EAAE,CAC9B,SAASu7K,GAAGv7K,GAAGq7K,GAAGt8K,KAAKuF,KAAKtE,EAAE,CAC9B,SAASw7K,KAAMl3K,KAAKtE,EAAE,IAAIy5K,EAAG,CAC7B,SAASN,KAAM70K,KAAKtE,EAAE,IAAIy2K,EAAG,CAC7B,SAAS8C,KAAMj1K,KAAKtE,EAAE,IAAIwyK,EAAG,CAC7B,SAASiJ,KAAMn3K,KAAKtE,EAAE,IAAIsyK,EAAG,CAC7B,SAASoJ,KAAMp3K,KAAK8N,EAAE,IAAIkgK,EAAG,CAC7B,SAASqJ,KAAMr3K,KAAKtE,EAAE,IAAIotJ,EAAG,CAC7B,SAASwuB,KAAMt3K,KAAKtE,EAAE,IAAI67K,EAAG,CAC7B,SAAShC,KAAMv1K,KAAKtE,EAAE,IAAImyJ,EAAG,CAC7B,SAAS3sJ,KAAKA,GAAGkvI,EAAIonC,IAAG,IAAIC,EAAE,CAC9B,SAASC,KAAKA,GAAGtnC,EAAIunC,IAAG,IAAIC,EAAE,CAC9B,SAAS/hB,KAAKA,GAAGzlB,EAAIynC,IAAG,IAAIhpC,CAAE,CAC9B,SAASipC,KAAKA,GAAG1nC,EAAI2nC,IAAG,IAAIjwK,EAAE,CAC9B,SAASsxF,GAAG19F,GAAGo7K,GAAGr8K,KAAKuF,KAAKtE,EAAE,CAC9B,SAASs8K,GAAGt8K,GAAGo7K,GAAGr8K,KAAKuF,KAAKtE,EAAE,CAC9B,SAASu8K,GAAGv8K,GAAGw8K,GAAGz9K,KAAKuF,KAAKtE,EAAE,CAC9B,SAASy8K,GAAGz8K,GAAGw8K,GAAGz9K,KAAKuF,KAAKtE,EAAE,CAC9B,SAAS08K,GAAG18K,GAAG28K,GAAG59K,KAAKuF,KAAKtE,EAAE,CAC9B,SAAS48K,GAAG58K,GAAG68K,IAAG99K,KAAKuF,KAAKtE,EAAE,CAC9B,SAAS88K,GAAG98K,GAAG8qE,GAAG/rE,KAAKuF,KAAKtE,EAAE,CAC9B,SAAS+8K,GAAG/8K,GAAGg9K,GAAGj+K,KAAKuF,KAAKtE,EAAE,CAC9B,SAASi9K,GAAGj9K,GAAGg9K,GAAGj+K,KAAKuF,KAAKtE,EAAE,CAC9B,SAASk9K,GAAGl9K,GAAGg9K,GAAGj+K,KAAKuF,KAAKtE,EAAE,CAC9B,SAASm9K,GAAGn9K,GAAGo9K,GAAGr+K,KAAKuF,KAAKtE,EAAE,CAC9B,SAASq9K,GAAGr9K,GAAGm9K,GAAGp+K,KAAKuF,KAAKtE,EAAE,CAC9B,SAASs9K,KAAKza,GAAG9jK,KAAKuF,KAAK,CAAC,EAAE,CAC9B,SAASi5K,GAAIv9K,GAAGw9K,KAAMl5K,KAAKtE,EAAEA,CAAC,CAC9B,SAASy9K,GAAIz9K,GAAGA,EAAEkS,EAAE,KAAKlS,EAAEuvB,EAAE,CAAC,CAE9B,SAASmuJ,GAAI19K,EAAEkS,GAAGlS,EAAEA,EAAEkS,EAsyHtB,SAAalS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAmB,IAyP3C,SAAaC,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,IAAIwvB,EAAE,IAAIo2I,GAAI3lK,EAAEA,EAAEA,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,IAAOsxI,GAAI,IAAP9gK,EAAU,GAAQ,MAAK89K,GAAI79K,EAAEA,EAAEuvB,KAAIrd,EAAEtS,EAAEG,MAAM+9K,GAAI99K,EAAEA,EAAEuvB,KAAIrd,EAAEtS,EAAEsS,KAAKA,EAAES,EAAE5S,GAAGkzI,EAAK3/H,KAAKugB,IAAI,EAAE9zB,EAAE,EAAE,OAAQ89K,GAAI79K,EAAEA,EAAEuvB,KAAIrd,EAAEtS,EAAEI,MAAM89K,GAAI99K,EAAEA,EAAEuvB,KAAIrd,EAAEtS,EAAE2vB,KAAKrd,EAAES,EAAE3S,GAAGizI,EAAK3/H,KAAKugB,IAAI,EAAE9zB,EAAE,IAAK,CAzPxOg+K,CAAI/9K,GAAGD,EAAE,IAAIuyK,GAAQ/iJ,EAAE,IAAIo2I,GAAI3lK,EAAEA,EAAEA,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAyB63K,GAAIh2K,EAAE,IAAIi+K,GAA1B9rK,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAoB,IAAOwmJ,GAAIh2K,EAAE,IAAIi+K,GAAI9rK,GAAE,KA/e5I,SAAalS,GAAG,IAAIkS,EAAInS,EAA0D,IAAxD09K,GAAIz9K,EAAEkS,EAAElS,GAAGA,EAAEA,EAAEi+K,GAAGC,IAAGC,IAAI,GAAGn+K,EAAEuvB,EAAEvvB,EAAEA,EAAEkS,EAAEqd,EAAErxB,OAAO,EAAE,GAAGgU,EAAE,EAAMnS,EAAE,IAAI4lK,GAAI3lK,EAAEuvB,EAAEvvB,EAAEA,EAAEkS,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAI79K,GAAG,IAAM/B,EAAEkU,GAAI,EA+eFksK,CAAIp+K,EAAEuvB,GAAG8uJ,GAAIt+K,EAAEC,EAAEkS,EAAE,IAAIosK,GAAIC,GAAGC,GAAGC,IAAG,GAAGN,IAAI,IAAI,EAAE,CAACn+K,EAAEuvB,MA8KxM,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,IAAIwvB,EAAE,IAAIo2I,GAAI3lK,EAAEA,EAAEA,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,IAAOsxI,GAAI,IAAP9gK,EAAU,GAAQ,MAAK89K,GAAI79K,EAAEA,EAAEuvB,KAAIrd,EAAEtS,EAAEG,MAAM+9K,GAAI99K,EAAEA,EAAEuvB,KAAIrd,EAAEtS,EAAEsS,KAAKA,EAAES,EAAE5S,GAAGkzI,EAAK3/H,KAAKugB,IAAI,EAAE9zB,EAAE,EAAE,OAAQ89K,GAAI79K,EAAEA,EAAEuvB,KAAIrd,EAAEtS,EAAEI,MAAM89K,GAAI99K,EAAEA,EAAEuvB,KAAIrd,EAAEtS,EAAE2vB,KAAKrd,EAAES,EAAE3S,GAAGD,EAAE,GAAI,CA9KnC2+K,CAAI1+K,EAAE,CAtyH5L2+K,CAAI3+K,EAAE,CAC9B,SAAS4+K,GAAI5+K,EAAEkS,EAAEqd,GAAGvvB,EAAEA,EAAEkS,EAAES,GAAG4c,CAAC,CAC9B,SAASsvJ,GAAI7+K,EAAEkS,EAAEqd,IAq+GjB,SAAavvB,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAqB,IAAnBu5K,GAAI9+K,EAAEA,EAAEoS,EAAEF,EAAElS,EAAEqB,EAAEkuB,GAAOhqB,EAAE,IAAIw5K,KAAM/+K,EAAEA,IAAIA,EAAEA,EAAE,IAAIg/K,GAAI7qJ,IAAGn0B,EAAE,IAAIA,EAAEA,IAAIuF,EAAEA,GAAGA,EAAEvH,EAAEihL,MAAwBC,GAAjBn/K,EAAE49K,GAAGwB,IAAI55K,GAAG,KAAWxF,EAAEC,EAAEkS,EAAEnS,EAAEmS,EAAEqd,GAAG6vJ,GAAIp/K,EAAEA,EAAEkS,EAAEA,EAAElS,EAAEuvB,EAAEA,EAAE,CAr+GlJ8vJ,CAAI9vJ,EAAEvvB,EAAEkS,EAAE,CAC9B,SAASotK,GAAIt/K,EAAEkS,IAm7Bf,SAAalS,EAAEkS,GAAG2rK,GAAI79K,EAAE86B,GAukGxB,SAAa96B,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAkB,IAAhBmoB,EAAE96B,EAAE2S,EAAE3S,EAAE2S,EAAE3S,EAAE2S,EAAET,EAAMnS,EAAE,IAAI4lK,GAAI3lK,EAAED,GAAGA,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyBqH,GAAhBgqB,EAAEouJ,GAAGC,GAAI79K,GAAG,KAAQH,EAAEI,EAAEA,IAAIu/K,KAAMC,MAAMx/K,EAAEhC,IAAIyhL,MAAMC,KAAMn6K,EAAEvF,EAAE86B,EAAG96B,EAAEA,GAAG2/K,KAAK3/K,EAAEhC,IAAIyhL,MAAMG,KAAMr6K,EAAEvF,EAAE86B,EAAE96B,EAAEoS,EAAEpS,EAAEuvB,EAAErvB,EAAEF,EAAIuF,EAAEvF,EAAE86B,GAAG96B,EAAEoS,EAAEpS,EAAEuvB,EAAErvB,EAAEF,GAAG,EAAGuF,EAAE2M,EAAES,EAAEktK,GAAIt6K,EAAE2M,GAAGS,GAAG4c,EAAErvB,EAAEgS,EAAElS,EAAEuF,CAAE,CAvkG/Nu6K,CAAI9/K,EAAEkS,GA8qFjC,SAAalS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAkB,IAAhBmoB,EAAE96B,EAAE2S,EAAE3S,EAAE2S,EAAE3S,EAAE2S,EAAET,EAAMnS,EAAE,IAAI4lK,GAAI3lK,EAAED,GAAGA,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,SAAyBqH,GAAhBgqB,EAAEouJ,GAAGC,GAAI79K,GAAG,KAAQH,GAAII,EAAE86B,EAAE96B,EAAEhC,IAAIyhL,MAAMM,KAAMx6K,EAAE2M,EAAES,EAAE3S,EAAEoS,EAAEF,EAAEqd,EAAErvB,EAAEgS,EAAI3M,EAAE2M,EAAES,EAAGktK,GAAIt6K,EAAE2M,GAAG4oB,GAAGvL,EAAErvB,EAAEF,EAAEA,EAAEuF,CAAE,CA9qFjJy6K,CAAIhgL,EAAEkS,EAAE,CAn7B1B+tK,CAAI/tK,EAAElU,EAAEgC,EAAEJ,EAAE,CAC9B,SAASsgL,GAAIlgL,EAAEkS,IA+xFf,SAAalS,GAAwB,GAArB+1K,GAAI/1K,EAAEuvB,GAAG4wJ,KAAMC,MAASC,GAAGrgL,EAAEA,EAAEsgL,GAAIC,GAAGC,KAAKC,MAAMC,SAAU,OAAO,IAAIpwB,GAAI,OAAO,IAAIme,GAAIzuK,EAAE,EA/xFzF2gL,CAAI3gL,GAAG4gL,GAAG1uK,EAAE,CAE9B,SAAS2uK,GAAG7gL,EAAEkS,GAAG,OAAOlS,EAAE2S,EAAET,EAAES,CAAC,CAC/B,SAASmuK,GAAG9gL,GAAG,OAAO,IAAI4iK,GAAG5iK,EAAE,CAC/B,SAAS+gL,GAAG/gL,GAAG,OAAO,IAAIghL,GAAGhhL,EAAE,CAC/B,SAASihL,GAAIjhL,GAAGm9K,GAAGp+K,KAAKuF,KAAKtE,EAAE,CAC/B,SAASkhL,GAAIlhL,GAAGm9K,GAAGp+K,KAAKuF,KAAKtE,EAAE,CAC/B,SAASmhL,GAAInhL,GAAGm9K,GAAGp+K,KAAKuF,KAAKtE,EAAE,CAC/B,SAASohL,GAAIphL,GAAGo9K,GAAGr+K,KAAKuF,KAAKtE,EAAE,CAC/B,SAASqhL,GAAIrhL,GAAGshL,KAAMh9K,KAAKtE,EAAEA,CAAC,CAC9B,SAASuhL,GAAIvhL,GAAGwhL,KAAMl9K,KAAKtE,EAAEA,CAAC,CAC9B,SAASyhL,GAAIzhL,GAAG0hL,KAAMp9K,KAAKw2B,EAAE96B,CAAC,CAC9B,SAAS2hL,GAAI3hL,GAAG0hL,KAAMp9K,KAAKw2B,EAAE96B,CAAC,CAC9B,SAAS4hL,GAAI5hL,GAAGm9K,GAAGp+K,KAAKuF,KAAKtE,EAAE,CAC/B,SAAS6hL,GAAI7hL,GAAGm9K,GAAGp+K,KAAKuF,KAAKtE,EAAE,CAC/B,SAAS8hL,GAAI9hL,GAAGm9K,GAAGp+K,KAAKuF,KAAKtE,EAAE,CAC/B,SAAS+hL,GAAI/hL,GAAGm9K,GAAGp+K,KAAKuF,KAAKtE,EAAE,CAC/B,SAASgiL,GAAIhiL,GAAGm9K,GAAGp+K,KAAKuF,KAAKtE,EAAE,CAC/B,SAASiiL,GAAIjiL,GAAG,OAAO6gK,GAAI7gK,GAAGA,CAAC,CAC/B,SAASsgL,GAAItgL,GAAG,OAAO6gK,GAAI7gK,GAAGA,CAAC,CAC/B,SAASkiL,GAAIliL,GAAG,OAAO6gK,GAAI7gK,GAAGA,CAAC,CAC/B,SAASmiL,GAAIniL,GAAG,OAAO6gK,GAAI7gK,GAAGA,CAAC,CAE/B,SAASoiL,GAAIpiL,GAAG,OAAOA,EAAEkS,GAAGlS,EAAEuvB,CAAC,CAC/B,SAAS8yJ,GAAIriL,GAAG,QAASA,GAAGA,EAAEkS,CAAC,CAG/B,SAASosK,GAAIt+K,GAAG6gK,GAAI7gK,GAAGsE,KAAKtE,EAAEA,CAAC,CAC/B,SAASsiL,GAAItiL,GAAU,OAAPuiL,GAAIviL,GAAUA,CAAC,CAC/B,SAASwiL,GAAIxiL,GAAGyiL,GAAIziL,EAAEA,EAAE9B,OAAO,CAC/B,SAASwkL,GAAI1iL,GAAGm9K,GAAGp+K,KAAKuF,KAAKtE,EAAE,CAC/B,SAAS2iL,GAAI3iL,GAAGm9K,GAAGp+K,KAAKuF,KAAKtE,EAAE,CAC/B,SAAS4iL,GAAI5iL,GAAGm9K,GAAGp+K,KAAKuF,KAAKtE,EAAE,CAC/B,SAASs/F,GAAIt/F,GAAGm9K,GAAGp+K,KAAKuF,KAAKtE,EAAE,CAC/B,SAAS6iL,GAAI7iL,GAAGm9K,GAAGp+K,KAAKuF,KAAKtE,EAAE,CAC/B,SAAS8iL,GAAI9iL,GAAGm9K,GAAGp+K,KAAKuF,KAAKtE,EAAE,CAC/B,SAAS+iL,GAAG/iL,GAAGgjL,GAAGjkL,KAAKuF,KAAKtE,EAAE,EAAE,CAChC,SAASizK,KAAKgQ,GAAGlkL,KAAKuF,KAAK,GAAG,EAAE,CAChC,SAAS4+K,KAAKA,GAAGxuC,EAAIyuC,IAAG,IAAIjvC,CAAE,CAC9B,SAASkvC,KAAKA,GAAG1uC,EAAI2uC,IAAG,IAAInwC,CAAE,CAC9B,SAASowC,KAAKA,GAAG5uC,EAAI6uC,IAAG,IAAI1vC,CAAE,CAC9B,SAAS2vC,KAAKA,GAAG9uC,EAAI+uC,IAAG,IAAI1vC,CAAE,CAC9B,SAAS2vC,KAAK,MAAMxQ,GAAI,IAAIgC,GAAI,CAChC,SAASyO,KAAK,MAAMzQ,GAAI,IAAIgC,GAAI,CAChC,SAAS0O,KAAK,MAAM1Q,GAAI,IAAIgC,GAAI,CAIhC,SAAS2O,KAAKv/K,KAAKtE,EAAE8jL,GAAGC,GAAGC,KAAK,CAChC,SAAS/kF,GAAGj/F,GAAGg0K,KAAK1vK,KAAKtE,EAAE+jL,GAAG/jL,EAAE,CAChC,SAASikL,GAAGjkL,EAAEkS,GAAGlS,EAAEkkL,GAAGhyK,GAAGA,EAAEiyK,GAAGnkL,EAAE,CAGhC,SAASokL,GAAIpkL,GAAGkhL,GAAIniL,KAAKuF,KAAKtE,EAAE,CAChC,SAASqkL,GAAIrkL,GAAG6hL,GAAI9iL,KAAKuF,KAAKtE,EAAE,CAChC,SAASskL,KAAM5f,GAAI3lK,KAAKuF,KAAK,GAAG,CAChC,SAASigL,KAAM7f,GAAI3lK,KAAKuF,KAAK,GAAG,CAChC,SAASkgL,KAAM9f,GAAI3lK,KAAKuF,KAAK,GAAG,CAChC,SAASmgL,KAAM/f,GAAI3lK,KAAKuF,KAAK,GAAG,CAChC,SAASogL,GAAI1kL,GAAGkhL,GAAIniL,KAAKuF,KAAKtE,EAAE,CAChC,SAAS2kL,GAAI3kL,GAAGqlK,GAAItmK,KAAKuF,KAAKtE,EAAE,CAChC,SAAS4kL,GAAI5kL,GAAG6kL,GAAI9lL,KAAKuF,KAAKtE,EAAE,CAChC,SAAS8kL,GAAI9kL,GAAG2kL,GAAI5lL,KAAKuF,KAAKtE,EAAE,CAChC,SAASk8K,KAAK5a,GAAGviK,KAAKuF,KAAK,KAAK,CAChC,SAASy3K,KAAKza,GAAGviK,KAAKuF,KAAK,KAAK,CAChC,SAASygL,KAAKA,GAAGrwC,EAAO4/B,IAAQ,CAChC,SAAS0Q,KAAMA,GAAItwC,EAAIuwC,IA69GvB,WAAe,SAAS/yK,IAAI,IAAI,OAAQ,IAAI4P,KAAKojK,UAAUp3K,OAAOC,IAAI,CAAC,MAAM/N,KAAG,OAAO,CAAK,CAAC,CAC7F,cAAU8hB,MAAMqjK,KAAKrjK,IAAIljB,UAAUsmL,SAAShzK,IAAY4P,IAqtCxD,WAAe,SAASvc,IAAIjB,KAAKhE,IAAIgE,KAAK8gL,cAAc,CACvD7/K,EAAE3G,UAAUwmL,aAAa,SAASplL,GAAG,OAAOrB,OAAOwjB,OAAO,KAAK,EAAE5c,EAAE3G,UAAUyB,IAAI,SAASL,GAAG,OAAOsE,KAAKhE,IAAIN,EAAE,EAAEuF,EAAE3G,UAAUgO,IAAI,SAAS5M,EAAEkS,GAAG5N,KAAKhE,IAAIN,GAAGkS,CAAC,EAAE3M,EAAE3G,UAAUymL,KAAK,SAASrlL,UAAUsE,KAAKhE,IAAIN,EAAE,EAAEuF,EAAE3G,UAAUwC,KAAK,WAAW,OAAOzC,OAAO2mL,oBAAoBhhL,KAAKhE,IAAI,EAAEiF,EAAE3G,UAAUsmL,QAAQ,WAAW,IAAIhzK,EAAE5N,KAAKlD,OAAWmuB,EAAEjrB,KAASvE,EAAE,EAAE,MAAO,CAAC+N,KAAK,WAAW,GAAG/N,GAAGmS,EAAEhU,OAAO,MAAO,CAAC6P,MAAK,GAAM,IAAI/N,EAAEkS,EAAEnS,KAAK,MAAO,CAAC6E,MAAM,CAAC5E,EAAEuvB,EAAElvB,IAAIL,IAAI+N,MAAK,EAAM,EAAE,EA7f5c,WAAe,IAAIpP,OAAOwjB,SAASxjB,OAAO2mL,oBAAqB,OAAO,EAAM,IAAItlL,EAAE,YAAgBkS,EAAEvT,OAAOwjB,OAAO,MAAM,QAAUxiB,IAAPuS,EAAElS,GAAgB,OAAO,EAAM,IAAIuvB,EAAE5wB,OAAO2mL,oBAAoBpzK,GAAG,GAAa,GAAVqd,EAAErxB,OAAW,OAAO,EAAc,GAARgU,EAAElS,GAAG,GAAa,KAAPkS,EAAElS,GAAS,OAAO,EAAM,GAAyC,GAAtCrB,OAAO2mL,oBAAoBpzK,GAAGhU,OAAW,OAAO,EAAM,OAAO,CAAI,CA6fgJqnL,KAAOhgL,EAAE3G,UAAUwmL,aAAa,WAAW,MAAO,CAAC,CAAC,EAAE7/K,EAAE3G,UAAUyB,IAAI,SAASL,GAAG,OAAOsE,KAAKhE,IAAI,IAAIN,EAAE,EAAEuF,EAAE3G,UAAUgO,IAAI,SAAS5M,EAAEkS,GAAG5N,KAAKhE,IAAI,IAAIN,GAAGkS,CAAC,EAAE3M,EAAE3G,UAAUymL,KAAK,SAASrlL,UAAUsE,KAAKhE,IAAI,IAAIN,EAAE,EAAEuF,EAAE3G,UAAUwC,KAAK,WAAW,IAAIpB,EAAE,GAAG,IAAI,IAAIkS,KAAK5N,KAAKhE,IAAsB,IAAjB4R,EAAEmN,WAAW,IAAQrf,EAAE3B,KAAK6T,EAAET,UAAU,IAAI,OAAOzR,CAAC,GAAE,OAAOuF,CAAC,CAttCptBigL,EAAM,CA99GnDC,EAAK,CAChC,SAASC,GAAI1lL,GAAG,OAAOA,EAAEA,EAAEA,EAAEkS,EAAE,CAAC,CAChC,SAASyzK,GAAI3lL,GAAG,OAAOA,EAAEA,EAAEA,EAAEkS,EAAE,CAAC,CAIhC,SAAS0zK,GAAI5lL,EAAEkS,GAAG,OAAO2zK,GAAG7lL,EAAEkS,EAAE,CAChC,SAASssK,GAAGx+K,EAAEkS,GAAG,OAAO4zK,GAAI9lL,EAAEkS,EAAE,CAEhC,SAAS6zK,GAAI/lL,EAAEkS,GAAS,OAANlS,EAAE86B,EAAE5oB,EAASlS,CAAC,CAEhC,SAASgmL,GAAIhmL,EAAEkS,GAAS,OAANlS,EAAEuvB,EAAErd,EAASlS,CAAC,CAEhC,SAASimL,GAAIjmL,EAAEkS,GAAS,OAANlS,EAAEA,EAAEkS,EAASlS,CAAC,CAChC,SAASkmL,GAAIlmL,EAAEkS,GAAS,OAANlS,EAAE86B,EAAE5oB,EAASlS,CAAC,CAChC,SAASmmL,GAAInmL,EAAEkS,GAAS,OAANlS,EAAEqB,EAAE6Q,EAASlS,CAAC,CAChC,SAASomL,GAAIpmL,EAAEkS,GAAS,OAANlS,EAAEA,EAAEkS,EAASlS,CAAC,CAEhC,SAASqmL,GAAIrmL,EAAEkS,GAAS,OAANlS,EAAEuF,EAAE2M,EAASlS,CAAC,CAEhC,SAASsmL,GAAItmL,EAAEkS,GAAGlS,EAAEkS,GAAE,EAAKlS,EAAED,EAAEmS,CAAC,CAQhC,SAASq0K,GAAIvmL,EAAEkS,GAAG,OAAOlS,EAAE,EAAEkS,EAAE,CAAC,CAGhC,SAASs0K,GAAIxmL,EAAEkS,GAAS,OAANlS,EAAEkS,EAAEA,EAASlS,CAAC,CAChC,SAASymL,GAAIzmL,EAAEkS,GAAS,OAANlS,EAAEA,EAAEkS,EAASlS,CAAC,CAChC,SAAS0mL,GAAI1mL,EAAEkS,GAAS,OAANlS,EAAEuvB,EAAErd,EAASlS,CAAC,CAChC,SAAS2mL,GAAI3mL,EAAEkS,GAAS,OAANlS,EAAED,EAAEmS,EAASlS,CAAC,CAChC,SAAS4mL,GAAI5mL,EAAEkS,GAAS,OAANlS,EAAEuF,EAAE2M,EAASlS,CAAC,CAChC,SAAS6mL,GAAI7mL,EAAEkS,GAAS,OAANlS,EAAE86B,EAAE5oB,EAASlS,CAAC,CAChC,SAAS8mL,GAAI9mL,EAAEkS,GAAS,OAANlS,EAAEA,EAAEkS,EAASlS,CAAC,CAChC,SAAS+mL,GAAI/mL,EAAEkS,GAAS,OAANlS,EAAEkS,EAAEA,EAASlS,CAAC,CAChC,SAASgnL,GAAIhnL,EAAEkS,GAAS,OAANlS,EAAEuvB,EAAErd,EAASlS,CAAC,CAChC,SAASinL,GAAIjnL,EAAEkS,GAAS,OAANlS,EAAEuvB,EAAErd,EAASlS,CAAC,CAChC,SAASknL,GAAIlnL,EAAEkS,GAAS,OAANlS,EAAEkS,EAAEA,EAASlS,CAAC,CAChC,SAASmnL,GAAInnL,EAAEkS,GAAS,OAANlS,EAAED,EAAEmS,EAASlS,CAAC,CAChC,SAASonL,GAAIpnL,EAAEkS,GAAS,OAANlS,EAAEuF,EAAE2M,EAASlS,CAAC,CAEhC,SAASqnL,GAAIrnL,EAAEkS,GAAS,OAANlS,EAAE2S,EAAET,EAASlS,CAAC,CAChC,SAASsnL,GAAItnL,EAAEkS,GAAS,OAANlS,EAAEA,EAAEkS,EAASlS,CAAC,CAChC,SAASunL,GAAIvnL,EAAEkS,GAAS,OAANlS,EAAEhC,EAAEkU,EAASlS,CAAC,CAChC,SAASwnL,GAAIxnL,EAAEkS,GAAS,OAANlS,EAAEoS,EAAEF,EAASlS,CAAC,CAChC,SAASynL,GAAIznL,EAAEkS,GAAS,OAANlS,EAAEqB,EAAE6Q,EAASlS,CAAC,CAGhC,SAAS0nL,GAAI1nL,EAAEkS,EAAEqd,IA6qCjB,SAAavvB,EAAEkS,EAAEqd,GAAUo4J,GAAI3nL,EAAE,IAAI4nL,GAAI11K,EAAElS,EAAEuvB,EAAEvvB,GAAG,CA7qC9B6nL,CAAI7nL,EAAEA,EAAEkS,EAAEqd,EAAE,CAChC,SAASu4J,GAAI9nL,GAAG+nL,GAAIhpL,KAAKuF,KAAKtE,EAAE,CAChC,SAASgoL,GAAIhoL,GAAG+nL,GAAIhpL,KAAKuF,KAAKtE,EAAE,CAChC,SAASioL,GAAIjoL,GAAGkoL,GAAInpL,KAAKuF,KAAKtE,EAAE,CAChC,SAASmoL,GAAInoL,GAAGooL,GAAIrpL,KAAKuF,KAAKtE,EAAE,CAChC,SAASqoL,GAAIroL,GAAGsoL,GAAIvpL,KAAKuF,KAAKtE,EAAE,CAChC,SAASuoL,GAAIvoL,GAAGwoL,GAAIzpL,KAAKuF,KAAKtE,EAAE,CAChC,SAASyoL,GAAIzoL,GAAGwoL,GAAIzpL,KAAKuF,KAAKtE,EAAE,CAChC,SAAS0oL,KAAMC,GAAI5pL,KAAKuF,KAAK,GAAG,CAChC,SAASskL,KAAMtkL,KAAKtE,EAAE,EAAEsE,KAAK4N,EAAE,CAAC,CAChC,SAAS22K,KAAMvkL,KAAK4N,EAAE,EAAE5N,KAAKtE,EAAE,CAAC,CAChC,SAAS8oL,GAAI9oL,EAAEkS,GAAGlS,EAAEkS,EAAE,EAAE62K,GAAI/oL,EAAEkS,EAAE,CAEhC,SAAS82K,GAAGhpL,EAAEkS,GAAG,OAAOlS,EAAEuvB,EAAEpoB,GAAG+K,EAAE,CACjC,SAAS+2K,GAAIjpL,GAAG,OAAOA,EAAEuF,GAAGvF,EAAEuF,GAAG,CACjC,SAAS2jL,GAAGlpL,GAAG,OAAQA,EAAOA,EAAED,EAAP,IAAQ,CACjC,SAASopL,GAAGnpL,EAAEkS,GAAG,OAAOk3K,GAAGppL,EAAEkS,EAAEA,EAAE,CAGjC,SAASm3K,GAAIrpL,GAAU,OAAPspL,GAAItpL,GAAUA,EAAEE,CAAC,CACjC,SAASqpL,KAAMA,GAAI70C,EAAI80C,IAo0GvB,WAAqB,IAAIt3K,EAAEqd,EAAZ8wI,MAAc,IAAoC,GAAhC9wI,EAAEouJ,GAAG8L,KAAKC,KAAMC,KAAKC,KAAK,MAAY,OAAOr6J,CAAE,CAAC,MAAMvvB,KAAY,IAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAA8B,MAAMkzK,GAAIlzK,KAAlCkS,EAAElS,IAAE+pL,IAAKC,KAAM93K,GAAqB,CAAC,OAAO,IAAIq/I,EAAG,CAp0GzI04B,EAAK,CAChC,SAASC,KAAMA,GAAIx1C,EAAIy1C,IAg8GvB,WAAe,IAAInqL,EAAE,OAAGoqL,IAAWzM,GAAG0M,KAAKX,KAAMC,KAAKC,KAAK,OAAM5pL,EAAE29K,GAAGkM,GAAGS,IAAKZ,KAAMC,KAAKC,KAAK,KAAKU,GAAIX,IAAIC,KAAK,IAAIW,IAAI,KAAKH,KAAI,EAwlCjI,SAAapqL,GAAG,GAAGA,EAAEgU,EAAE,OAAOhU,EAAEgU,GAAE,EAAKhU,EAAEoD,EAAEonL,GAAIxqL,EAAE,GAAGA,EAAEA,EAAEwqL,GAAIxqL,EAAE,GAAGyqL,GAAIzqL,EAAEA,EAAE,GAAGA,EAAE86B,EAAE0vJ,GAAIxqL,EAAE,GAAGyqL,GAAIzqL,EAAE86B,EAAE,GAAG4vJ,GAAI1qL,EAAE86B,EAAE,GAAG96B,EAAEJ,EAAE4qL,GAAIxqL,EAAE,GAAG0qL,GAAI1qL,EAAEJ,EAAE,GAAG8qL,GAAI1qL,EAAEJ,EAAE,GAAG8qL,GAAI1qL,EAAEJ,EAAE,GAAG8qL,GAAI1qL,EAAEJ,EAAE,GAAGI,EAAE2S,EAAE63K,GAAIxqL,EAAE,GAAGyqL,GAAIzqL,EAAE2S,EAAE,GAAG+3K,GAAI1qL,EAAE2S,EAAE,GAAG3S,EAAEuvB,EAAEi7J,GAAIxqL,EAAE,GAAGyqL,GAAIzqL,EAAEuvB,EAAE,GAAGk7J,GAAIzqL,EAAEuvB,EAAE,GAAGvvB,EAAEhC,EAAEwsL,GAAIxqL,EAAE,GAAGyqL,GAAIzqL,EAAEhC,EAAE,GAAGysL,GAAIzqL,EAAEhC,EAAE,IAAIysL,GAAIzqL,EAAEhC,EAAE,IAAIysL,GAAIzqL,EAAEhC,EAAE,IAAI0sL,GAAI1qL,EAAEhC,EAAE,IAAIgC,EAAEoS,EAAEo4K,GAAIxqL,EAAE,GAAGyqL,GAAIzqL,EAAEoS,EAAE,GAAGpS,EAAED,EAAEyqL,GAAIxqL,EAAE,GAAGyqL,GAAIzqL,EAAED,EAAE,GAAG0qL,GAAIzqL,EAAED,EAAE,GAAG0qL,GAAIzqL,EAAED,EAAE,GAAG0qL,GAAIzqL,EAAED,EAAE,GAAG2qL,GAAI1qL,EAAED,EAAE,GAAG2qL,GAAI1qL,EAAED,EAAE,GAAG2qL,GAAI1qL,EAAED,EAAE,GAAG2qL,GAAI1qL,EAAED,EAAE,IAAIC,EAAEkS,EAAEs4K,GAAIxqL,EAAE,GAAG0qL,GAAI1qL,EAAEkS,EAAE,GAAGw4K,GAAI1qL,EAAEkS,EAAE,GAAGlS,EAAEuF,EAAEilL,GAAIxqL,EAAE,IAAI0qL,GAAI1qL,EAAEuF,EAAE,GAAGmlL,GAAI1qL,EAAEuF,EAAE,GAAGmlL,GAAI1qL,EAAEuF,EAAE,GAAGmlL,GAAI1qL,EAAEuF,EAAE,GAAGklL,GAAIzqL,EAAEuF,EAAE,GAAGklL,GAAIzqL,EAAEuF,EAAE,GAAGklL,GAAIzqL,EAAEuF,EAAE,GAAGklL,GAAIzqL,EAAEuF,EAAE,GAAGklL,GAAIzqL,EAAEuF,EAAE,GAAGklL,GAAIzqL,EAAEuF,EAAE,IAAImlL,GAAI1qL,EAAEuF,EAAE,IAAIvF,EAAEqB,EAAEmpL,GAAIxqL,EAAE,IAAI0qL,GAAI1qL,EAAEqB,EAAE,GAAGqpL,GAAI1qL,EAAEqB,EAAE,GAAGrB,EAAEE,EAAEyqL,GAAI3qL,EAAE,IAAIA,EAAE6T,EAAE82K,GAAI3qL,EAAE,GAAG,CAxlCzhB4qL,CAAI5qL,GAkyC1I,SAAaA,GAAG,IAAc2S,EAAI3U,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE,GAAGpD,EAAE0S,EAAE,OAAO1S,EAAE0S,GAAE,EAAKm4K,GAAI7qL,EAAE,SAAS8qL,GAAI9qL,EAAE,SAAS+qL,GAAI/qL,EAAE4pL,KAAKoB,GAAIhrL,EAAEE,EAAE,KAAK+qL,GAAIC,GAAIlrL,EAAEA,GAAGA,EAAEoD,GAAG6nL,GAAIC,GAAIlrL,EAAE86B,GAAG96B,EAAEA,GAAGirL,GAAIC,GAAIlrL,EAAEJ,GAAGI,EAAE86B,GAAGmwJ,GAAIC,GAAIlrL,EAAE2S,GAAG3S,EAAEJ,GAAGqrL,GAAIC,GAAIlrL,EAAEuvB,GAAGvvB,EAAEJ,GAAGqrL,GAAIC,GAAIlrL,EAAEhC,GAAGgC,EAAEuvB,GAAG07J,GAAIC,GAAIlrL,EAAEoS,GAAGpS,EAAEuvB,GAAG07J,GAAIC,GAAIlrL,EAAED,GAAGC,EAAE86B,GAAGmwJ,GAAIC,GAAIlrL,EAAEuF,GAAGvF,EAAEA,GAAGmrL,GAAInrL,EAAEoD,EAAEgoL,IAAGC,KAAI,GAAK,GAAK,GAAOnrL,EAAEorL,GAAItrL,EAAEoD,EAAEpD,EAAEoD,EAAE,eAAeA,EAAEmoL,GAAIrrL,GAAGkS,EAAEo5K,GAAIxrL,EAAEE,GAAGmB,EAAQ,IAAIwxK,GAAUoY,KAAM74K,EAAErS,IAAIqS,EAAErS,EAAE,IAAIi/K,GAAIyM,IAAGr5K,EAAE,IAAIA,EAAErS,GAAGsB,GAAGyS,EAAE43K,GAAItoL,GAAGuoL,IAAItqL,EAAEyS,GAAG83K,IAAI1rL,EAAEkS,EAAEy5K,KAAKz5K,EAAEs5K,GAAItoL,GAAGwoL,IAAI1rL,EAAEkS,EAAE05K,KAAK5rL,EAAEorL,GAAItrL,EAAEoD,EAAE,KAAK,eAAeA,EAAEmoL,GAAIrrL,GAAGkS,EAAEo5K,GAAIxrL,EAAEE,GAAGmB,EAAEqqL,GAAItoL,GAAG6nL,KAAM74K,EAAErS,IAAIqS,EAAErS,EAAE,IAAIi/K,GAAIyM,IAAGr5K,EAAE,IAAIA,EAAErS,GAAGsB,GAAGuqL,IAAI1rL,EAAEkS,EAAEy5K,KAAKz5K,EAAEs5K,GAAItoL,GAAGxD,EAAEmsL,IAAI7rL,EAAEkS,EAAE,QAAQxS,GAAGA,EAAEosL,KAAK9rL,EAAEorL,GAAItrL,EAAEoD,EAAEpD,EAAEm6J,GAAG50J,EAAE,eAAe6M,EAAEo5K,GAAIxrL,EAAEE,GAAGmB,EAAQ,IAAIwxK,GAAUoY,KAAM74K,EAAErS,IAAIqS,EAAErS,EAAE,IAAIi/K,GAAIyM,IAAGr5K,EAAE,IAAIA,EAAErS,GAAGsB,GAAGuqL,IAAI1rL,EAAEkS,EAAEy5K,KAAK3rL,EAAEorL,GAAItrL,EAAEoD,EAAEpD,EAAEoD,EAAE,kBAAkB6oL,IAAI/rL,EAAEF,EAAEoD,EAAE8oL,KAAKhsL,EAAEorL,GAAItrL,EAAEoD,EAAE,KAAK,oBAAoBgP,EAAEo5K,GAAIxrL,EAAEm6J,GAAGn3H,GAAG3hC,EAAEmqL,GAAIxrL,EAAEE,GAAG+qL,KAAM74K,EAAErS,IAAIqS,EAAErS,EAAE,IAAIi/K,GAAIyM,IAAGr5K,EAAE,IAAIA,EAAErS,GAAGsB,GAAMsR,EAAK,IAAIkgK,GAAZ/+J,EAAmBnB,EAAGs4K,KAAM5pL,EAAEtB,IAAIsB,EAAEtB,EAAE,IAAIi/K,GAAIyM,IAAGpqL,EAAE,IAAIA,EAAEtB,GAAG+T,GAAGzS,EAAEmqL,GAAIxrL,EAAEm6J,GAAG71H,GAAG2mJ,KAAM74K,EAAErS,IAAIqS,EAAErS,EAAE,IAAIi/K,GAAIyM,IAAGr5K,EAAE,IAAIA,EAAErS,GAAGsB,GAAG2R,EAAE+4K,IAAI7rL,EAAEkS,EAAE,QAAQY,GAAGA,EAAEg5K,KAAKb,GAAInrL,EAAEA,EAAEk0B,IAAGi4J,KAAI,GAAK,GAAM,GAAMC,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEA,GAAG,GAAG,IAAIA,EAAEqB,EAAE,KAAKkrL,IAAI,GAAG,EAAEr4J,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAAOi3J,GAAInrL,EAAE86B,EAAE0xJ,IAAGC,KAAI,GAAK,GAAM,GAAML,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE86B,GAAG,GAAG,IAAI96B,EAAE2S,EAAEgrK,GAAG0O,GAAIC,GAAItsL,EAAE2S,GAAG,GAAG,IAAI,SAAS,GAAG,EAAE65K,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAAOE,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE86B,GAAG,GAAG,IAAI96B,EAAEm6J,GAAGwyB,EAAEC,IAAI,KAAK,EAAE,EAAEJ,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOrB,GAAInrL,EAAEJ,EAAEitL,IAAG,YAAW,GAAK,GAAM,GAAMH,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEJ,GAAG,GAAG,IAAII,EAAEm6J,GAAGlmJ,EAAE64K,IAAIC,IAAI,EAAE,EAAEF,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOH,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEJ,GAAG,GAAG,IAAII,EAAEm6J,GAAGlmJ,EAAE+4K,IAAID,IAAI,EAAE,EAAEF,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOH,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEJ,GAAG,GAAG,IAAII,EAAEm6J,GAAGlmJ,EAAE,IAAI84K,IAAI,EAAE,EAAEF,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOH,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEJ,GAAG,GAAG,IAAII,EAAEm6J,GAAGlmJ,EAAE,IAAI84K,IAAI,EAAE,EAAEF,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAO3sL,EAAEorL,GAAItrL,EAAEJ,EAAE,KAAK,iBAAiBqsL,IAAI/rL,EAAEF,EAAEm6J,GAAGlmJ,EAAE+4K,KAAKf,IAAI/rL,EAAEF,EAAEm6J,GAAGlmJ,EAAE64K,KAAK5sL,EAAEorL,GAAItrL,EAAEJ,EAAE,KAAK,eAAeqsL,IAAI/rL,EAAEF,EAAEm6J,GAAGlmJ,EAAE,KAAKg4K,IAAI/rL,EAAEF,EAAEm6J,GAAGlmJ,EAAE,KAAKk3K,GAAInrL,EAAE2S,EAAEs6K,IAAGC,KAAI,GAAM,GAAM,GAAMd,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE2S,GAAG,GAAG,IAAI3S,EAAE86B,EAAE6iJ,GAAG0O,GAAIC,GAAItsL,EAAE86B,GAAG,GAAG,IAAIqyJ,IAAI,EAAE,EAAEF,KAAG,GAAM,GAAM,GAAK,GAAM,GAAM,GAAM,GAAOP,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE2S,GAAG,GAAG,IAAI3S,EAAEm6J,GAAGwyB,EAAES,IAAI,GAAG,EAAE,EAAEH,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAO9B,GAAInrL,EAAEuvB,EAAE89J,IAAGC,KAAI,GAAK,GAAM,GAAMlB,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEuvB,GAAG,GAAG,IAAIvvB,EAAED,EAAE49K,GAAG0O,GAAIC,GAAItsL,EAAED,GAAG,GAAG,IAAI,gBAAgB,GAAG,EAAEstL,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAM,GAAOjB,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEuvB,GAAG,GAAG,IAAIvvB,EAAED,EAAE49K,GAAG0O,GAAIC,GAAItsL,EAAED,GAAG,GAAG,IAAI,gBAAgB,GAAG,EAAEstL,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAM,GAAOlC,GAAInrL,EAAEhC,EAAEuvL,IAAGC,KAAI,GAAM,GAAM,GAAMpB,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEhC,GAAG,GAAG,IAAIgC,EAAEoS,EAAEurK,GAAG0O,GAAIC,GAAItsL,EAAEoS,GAAG,GAAG,IAAI,QAAQ,GAAG,EAAEm7K,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAAOnB,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEhC,GAAG,GAAG,IAAIgC,EAAEhC,EAAE2/K,GAAG0O,GAAIC,GAAItsL,EAAEhC,GAAG,GAAG,IAAIyvL,IAAI,GAAG,EAAEF,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAAOnB,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEhC,GAAG,GAAG,IAAIgC,EAAEhC,EAAE2/K,GAAG0O,GAAIC,GAAItsL,EAAEhC,GAAG,GAAG,IAAImvL,IAAI,EAAE,EAAEI,KAAG,GAAM,GAAM,GAAK,GAAM,GAAM,GAAM,GAAOnB,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEhC,GAAG,GAAG,IAAIgC,EAAED,EAAE49K,GAAG0O,GAAIC,GAAItsL,EAAED,GAAG,GAAG,IAAI,iBAAiB,GAAG,EAAEwtL,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAAOb,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEhC,GAAG,GAAG,IAAIgC,EAAEm6J,GAAG50J,EAAEmoL,IAAI,KAAK,EAAE,EAAEH,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAMpC,GAAInrL,EAAEoS,EAAEu7K,IAAGC,KAAI,GAAM,GAAM,GAAMxB,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEoS,GAAG,GAAG,IAAIpS,EAAEhC,EAAE2/K,GAAG0O,GAAIC,GAAItsL,EAAEhC,GAAG,GAAG,IAAImvL,IAAI,EAAE,EAAEQ,KAAG,GAAM,GAAM,GAAK,GAAM,GAAM,GAAM,GAAOxC,GAAInrL,EAAED,EAAE8tL,IAAGC,KAAI,GAAM,GAAM,GAAM1B,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAED,GAAG,GAAG,IAAIC,EAAEhC,EAAE2/K,GAAG0O,GAAIC,GAAItsL,EAAEhC,GAAG,GAAG,IAAI,iBAAiB,EAAE,EAAE6vL,KAAG,GAAM,GAAM,GAAK,GAAM,GAAM,GAAM,GAAOzB,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAED,GAAG,GAAG,IAAIC,EAAEuvB,EAAEouJ,GAAG0O,GAAIC,GAAItsL,EAAEuvB,GAAG,GAAG,IAAIw+J,IAAI,GAAG,EAAEF,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAM,GAAOzB,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAED,GAAG,GAAG,IAAIC,EAAEuvB,EAAEouJ,GAAG0O,GAAIC,GAAItsL,EAAEuvB,GAAG,GAAG,IAAIy+J,IAAI,GAAG,EAAEH,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAM,GAAOzB,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAED,GAAG,GAAG,IAAIC,EAAEuF,EAAEo4K,GAAG0O,GAAIC,GAAItsL,EAAEuF,GAAG,GAAG,IAAI0oL,IAAI,GAAG,EAAEJ,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAAOnB,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAED,GAAG,GAAG,IAAIC,EAAEm6J,GAAG50J,EAAE,YAAY,KAAK,EAAE,EAAEsoL,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAMnB,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAED,GAAG,GAAG,IAAIC,EAAEm6J,GAAG50J,EAAEmoL,IAAI,KAAK,EAAE,EAAEG,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAMnB,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAED,GAAG,GAAG,IAAIC,EAAEm6J,GAAG50J,EAAE,WAAW,KAAK,EAAE,EAAEsoL,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAMnB,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAED,GAAG,GAAG,IAAIC,EAAEm6J,GAAG50J,EAAE,YAAY,KAAK,EAAE,EAAEsoL,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAM1C,GAAInrL,EAAEkS,EAAEiiB,IAAG+5J,KAAI,GAAM,GAAM,GAAMxB,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEkS,GAAG,GAAG,IAAIlS,EAAEm6J,GAAGlmJ,EAAE,IAAI84K,IAAI,EAAE,EAAE54J,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOu4J,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEkS,GAAG,GAAG,IAAIlS,EAAEm6J,GAAGlmJ,EAAE,IAAI84K,IAAI,EAAE,EAAE54J,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOj0B,EAAEorL,GAAItrL,EAAEkS,EAAE,KAAK,OAAO+5K,IAAI/rL,EAAEF,EAAEm6J,GAAGlmJ,EAAE,KAAKg4K,IAAI/rL,EAAEF,EAAEm6J,GAAGlmJ,EAAE,KAAKk3K,GAAInrL,EAAEuF,EAAE4oL,IAAGC,KAAI,GAAM,GAAM,GAAM1B,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEuF,GAAG,GAAG,IAAIvF,EAAEm6J,GAAGlmJ,EAAE,SAAS,KAAK,EAAE,EAAEk6K,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOzB,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEuF,GAAG,GAAG,IAAIvF,EAAEm6J,GAAGlmJ,EAAE,SAAS,KAAK,EAAE,EAAEk6K,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOzB,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEuF,GAAG,GAAG,IAAIvF,EAAEm6J,GAAGlmJ,EAAE,OAAO,KAAK,EAAE,EAAEk6K,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOzB,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEuF,GAAG,GAAG,IAAIvF,EAAEm6J,GAAGlmJ,EAAE,OAAO,KAAK,EAAE,EAAEk6K,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAO/B,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEuF,GAAG,GAAG,IAAIvF,EAAEkS,EAAE,KAAKm8K,IAAI,GAAG,EAAEF,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAAO/B,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEuF,GAAG,GAAG,IAAIvF,EAAED,EAAE49K,GAAG0O,GAAIC,GAAItsL,EAAED,GAAG,GAAG,IAAIotL,IAAI,EAAE,EAAEgB,KAAG,GAAM,GAAM,GAAK,GAAM,GAAM,GAAM,GAAO/B,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEuF,GAAG,GAAG,IAAIvF,EAAEuvB,EAAE,KAAK++J,IAAI,EAAE,EAAEH,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAM,GAAO/B,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEuF,GAAG,GAAG,IAAIvF,EAAEuvB,EAAE,KAAKg/J,IAAI,EAAE,EAAEJ,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAM,GAAO/B,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEuF,GAAG,GAAG,IAAIvF,EAAEuF,EAAEo4K,GAAG0O,GAAIC,GAAItsL,EAAEuF,GAAG,GAAG,IAAIipL,IAAI,GAAG,EAAEL,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAM,GAAO/B,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEuF,GAAG,GAAG,IAAIvF,EAAEuF,EAAEo4K,GAAG0O,GAAIC,GAAItsL,EAAEuF,GAAG,GAAG,IAAIkpL,IAAI,GAAG,EAAEN,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAM,GAAOzB,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEuF,GAAG,IAAI,IAAIvF,EAAEm6J,GAAGwyB,EAAEC,IAAI,KAAK,EAAE,EAAEuB,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOjuL,EAAEorL,GAAItrL,EAAEuF,EAAE,KAAK,oBAAoB0mL,IAAI/rL,EAAEF,EAAEm6J,GAAGlmJ,EAAE,KAAKg4K,IAAI/rL,EAAEF,EAAEm6J,GAAGlmJ,EAAE,KAAK/T,EAAEorL,GAAItrL,EAAEuF,EAAE,KAAK,kBAAkB0mL,IAAI/rL,EAAEF,EAAEm6J,GAAGlmJ,EAAE,KAAKg4K,IAAI/rL,EAAEF,EAAEm6J,GAAGlmJ,EAAE,KAAKk3K,GAAInrL,EAAEqB,EAAEqtL,IAAG,8BAA6B,GAAM,GAAM,GAAOt8K,EAAEo5K,GAAIxrL,EAAEE,GAAMlC,EAAK,IAAI60K,GAAZxxK,EAAmBrD,EAAGitL,KAAM74K,EAAErS,IAAIqS,EAAErS,EAAE,IAAIi/K,GAAIyM,IAAGr5K,EAAE,IAAIA,EAAErS,GAAGsB,GAAGstL,IAAIhR,GAAG0O,GAAIC,GAAItsL,EAAEqB,GAAG,GAAG,IAAI+Q,EAAE,MAAMs8K,KAAG,GAAM,GAAM,GAAK,GAAOhC,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEqB,GAAG,GAAG,IAAIrB,EAAE6T,EAAEi4K,IAAI,KAAK,EAAE,EAAE4C,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOE,GAAI5uL,EAAEE,EAAE2uL,IAAG,aAAY,GAAMD,GAAI5uL,EAAE6T,EAAEi7K,IAAG,iBAAgB,GAAMC,GAAI/uL,EAAE4pL,IAAI,CAlyC/9KoF,CAAIhvL,GAAGivL,IAAIjvL,GAAGkvL,GAAIvF,IAAIC,IAAI5pL,GAAUA,EAAC,CAh8GvJmvL,EAAK,CAChC,SAASC,KAAMA,GAAI16C,EAAI26C,IAo0GvB,WAAqB,IAAIn9K,EAAEqd,EAAZ8wI,MAAc,IAAoC,GAAhC9wI,EAAEouJ,GAAG8L,KAAKC,KAAMC,KAAK2F,KAAK,MAAY,OAAO//J,CAAE,CAAC,MAAMvvB,KAAY,IAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAA8B,MAAMkzK,GAAIlzK,KAAlCkS,EAAElS,IAAE+pL,IAAKC,KAAM93K,GAAqB,CAAC,OAAO,IAAIyhJ,EAAG,CAp0GzI47B,EAAK,CAChC,SAASC,KAAMA,GAAI96C,EAAI+6C,IAk0GvB,WAAqB,IAAIv9K,EAAEqd,EAAZmgK,KAAc,IAAoC,GAAhCngK,EAAEouJ,GAAG8L,KAAKC,KAAMC,KAAKgG,KAAK,MAAY,OAAOpgK,CAAE,CAAC,MAAMvvB,KAAY,IAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAA8B,MAAMkzK,GAAIlzK,KAAlCkS,EAAElS,IAAE+pL,IAAKC,KAAM93K,GAAqB,CAAC,OAAO,IAAIwkJ,EAAG,CAl0GzIk5B,EAAK,CAChC,SAASC,KAAMA,GAAIn7C,EAAIo7C,IAipHvB,WAAe,IAAI9vL,EAAE,OAAG+vL,IAAWpS,GAAG0M,KAAKX,KAAMC,KAAKgG,KAAK,OAk9B3D,WAAeK,GAAIC,IAAG,IAAI14B,IAAKy4B,GAAIE,IAAG,IAAIj4B,IAAK+3B,GAAIG,IAAG,IAAIv3B,IAAKo3B,GAAII,IAAG,IAAI72B,IAAKy2B,GAAIK,IAAG,IAAI12B,IAAKq2B,GAAIxR,GAAG8R,IAAG,GAAG,IAAI12B,IAAKo2B,GAAIO,IAAG,IAAI12B,IAAKm2B,GAAIQ,IAAG,IAAI12B,IAAKk2B,GAAIK,IAAG,IAAIx5B,IAAKm5B,GAAIK,IAAG,IAAIv5B,IAAKk5B,GAAIK,IAAG,IAAIt5B,IAAKi5B,GAAIS,IAAG,IAAIz5B,IAAKg5B,GAAIK,IAAG,IAAIp5B,IAAK+4B,GAAIU,IAAG,IAAIx5B,IAAK84B,GAAIU,IAAG,IAAIv5B,IAAK64B,GAAIK,IAAG,IAAIj5B,IAAK44B,GAAIW,IAAG,IAAIt5B,IAAK24B,GAAIK,IAAG,IAAI/4B,IAAK04B,GAAIK,IAAG,IAAI74B,IAAKw4B,GAAIK,IAAG,IAAI54B,IAAKu4B,GAAIK,IAAG,IAAI34B,IAAKs4B,GAAIK,IAAG,IAAI14B,IAAKq4B,GAAIxR,GAAG8R,IAAG,GAAG,IAAI14B,IAAKo4B,GAAIK,IAAG,IAAI1oG,IAAKqoG,GAAIK,IAAG,IAAIx4B,IAAKm4B,GAAIU,IAAG,IAAI54B,IAAKk4B,GAAIU,IAAG,IAAI34B,IAAKi4B,GAAIK,IAAG,IAAIr4B,IAAKg4B,GAAIY,IAAG,IAAI14B,IAAK83B,GAAIK,IAAG,IAAIl4B,IAAK63B,GAAIa,IAAG,IAAIz4B,IAAK43B,GAAIK,IAAG,IAAIh4B,IAAK23B,GAAIK,IAAG,IAAI/3B,IAAK03B,GAAIK,IAAG,IAAI93B,IAAKy3B,GAAIK,IAAG,IAAI73B,IAAKw3B,GAAIU,IAAG,IAAIj4B,IAAKu3B,GAAIU,IAAG,IAAIh4B,IAAKs3B,GAAIK,IAAG,IAAI13B,IAAKq3B,GAAIK,IAAG,IAAIx3B,IAAKm3B,GAAIK,IAAG,IAAIv3B,IAAKk3B,GAAIK,IAAG,IAAIt3B,IAAKi3B,GAAIK,IAAG,IAAIr3B,IAAKg3B,GAAIK,IAAG,IAAIp3B,IAAK+2B,GAAIc,IAAG,IAAI53B,IAAK82B,GAAIK,IAAG,IAAIl3B,IAAK62B,GAAIK,IAAG,IAAIj3B,IAAK42B,GAAIK,IAAG,IAAIh3B,IAAK22B,GAAIc,IAAG,IAAIx3B,IAAK02B,GAAIa,IAAG,IAAIr3B,IAAKw2B,GAAIK,IAAG,IAAI52B,IAAKu2B,GAAIY,IAAG,IAAIl3B,GAAI,CAl9BzwBq3B,GAAM/wL,EAAE29K,GAAGkM,GAAGS,IAAKZ,KAAMC,KAAKgG,KAAK,KAAKrF,GAAIX,IAAIgG,KAAK,IAAIqB,GAAI,KAAKjB,KAAI,EAkhCvI,SAAa/vL,GAAG,GAAGA,EAAEosB,EAAE,OAAOpsB,EAAEosB,GAAE,EAAKpsB,EAAEkS,EAAEs4K,GAAIxqL,EAAE,GAAG0qL,GAAI1qL,EAAEkS,EAAE,GAAGw4K,GAAI1qL,EAAEkS,EAAE,GAAGw4K,GAAI1qL,EAAEkS,EAAE,GAAGlS,EAAE+zB,GAAGy2J,GAAIxqL,EAAE,GAAG0qL,GAAI1qL,EAAE+zB,GAAG,GAAG22J,GAAI1qL,EAAE+zB,GAAG,GAAG/zB,EAAEixL,GAAGzG,GAAIxqL,EAAE,GAAG0qL,GAAI1qL,EAAEixL,GAAG,GAAGvG,GAAI1qL,EAAEixL,GAAG,GAAGxG,GAAIzqL,EAAEixL,GAAG,GAAGjxL,EAAEkxL,GAAG1G,GAAIxqL,EAAE,GAAG0qL,GAAI1qL,EAAEkxL,GAAG,GAAGzG,GAAIzqL,EAAEkxL,GAAG,GAAGzG,GAAIzqL,EAAEkxL,GAAG,GAAGxG,GAAI1qL,EAAEkxL,GAAG,GAAGxG,GAAI1qL,EAAEkxL,GAAG,GAAGzG,GAAIzqL,EAAEkxL,GAAG,GAAGxG,GAAI1qL,EAAEkxL,GAAG,GAAGlxL,EAAEA,EAAE2qL,GAAI3qL,EAAE,GAAGA,EAAEuvB,EAAEo7J,GAAI3qL,EAAE,GAAGA,EAAED,EAAE4qL,GAAI3qL,EAAE,GAAGA,EAAEuF,EAAEolL,GAAI3qL,EAAE,GAAGA,EAAE86B,EAAE6vJ,GAAI3qL,EAAE,GAAGA,EAAE2S,EAAEg4K,GAAI3qL,EAAE,GAAGA,EAAEhC,EAAE2sL,GAAI3qL,EAAE,IAAIA,EAAEoS,EAAEu4K,GAAI3qL,EAAE,IAAIA,EAAEqB,EAAEspL,GAAI3qL,EAAE,IAAIA,EAAEJ,EAAE+qL,GAAI3qL,EAAE,IAAIA,EAAEE,EAAEyqL,GAAI3qL,EAAE,IAAIA,EAAEoD,EAAEunL,GAAI3qL,EAAE,IAAIA,EAAEgU,EAAE22K,GAAI3qL,EAAE,IAAIA,EAAE6T,EAAE82K,GAAI3qL,EAAE,IAAIA,EAAE0S,EAAEi4K,GAAI3qL,EAAE,IAAIA,EAAEiU,EAAE02K,GAAI3qL,EAAE,IAAIA,EAAEqoB,EAAEsiK,GAAI3qL,EAAE,IAAIA,EAAEmR,EAAEw5K,GAAI3qL,EAAE,IAAIA,EAAEuD,EAAEonL,GAAI3qL,EAAE,IAAIA,EAAE4kC,EAAE+lJ,GAAI3qL,EAAE,IAAIA,EAAE4pB,EAAE+gK,GAAI3qL,EAAE,IAAIA,EAAE6iC,EAAE8nJ,GAAI3qL,EAAE,IAAIA,EAAEmxL,EAAExG,GAAI3qL,EAAE,IAAIA,EAAEoxL,EAAEzG,GAAI3qL,EAAE,IAAIA,EAAEqxL,EAAE1G,GAAI3qL,EAAE,IAAIA,EAAE41F,EAAE+0F,GAAI3qL,EAAE,IAAIA,EAAEsxL,EAAE3G,GAAI3qL,EAAE,IAAIA,EAAEuxL,EAAE5G,GAAI3qL,EAAE,IAAIA,EAAEiuC,EAAE08I,GAAI3qL,EAAE,IAAIA,EAAEskC,EAAEqmJ,GAAI3qL,EAAE,IAAIA,EAAEwxL,EAAE7G,GAAI3qL,EAAE,IAAIA,EAAEgjC,EAAE2nJ,GAAI3qL,EAAE,IAAIA,EAAE2lB,EAAEglK,GAAI3qL,EAAE,IAAIA,EAAEitC,EAAE09I,GAAI3qL,EAAE,IAAIA,EAAEspB,EAAEqhK,GAAI3qL,EAAE,IAAIA,EAAEyxL,EAAE9G,GAAI3qL,EAAE,IAAIA,EAAE+oC,EAAE4hJ,GAAI3qL,EAAE,IAAIA,EAAE+lB,EAAE4kK,GAAI3qL,EAAE,IAAIA,EAAE01F,EAAEi1F,GAAI3qL,EAAE,IAAIA,EAAE61F,EAAE80F,GAAI3qL,EAAE,IAAIA,EAAE21F,EAAEg1F,GAAI3qL,EAAE,IAAIA,EAAE0xL,EAAE/G,GAAI3qL,EAAE,IAAIA,EAAE8tB,EAAE68J,GAAI3qL,EAAE,IAAIA,EAAE2sL,EAAEhC,GAAI3qL,EAAE,IAAIA,EAAE2xL,GAAGhH,GAAI3qL,EAAE,IAAIA,EAAEqzC,GAAGs3I,GAAI3qL,EAAE,IAAIA,EAAE4xL,GAAGjH,GAAI3qL,EAAE,IAAIA,EAAE6xL,GAAGlH,GAAI3qL,EAAE,IAAIA,EAAE8xL,GAAGnH,GAAI3qL,EAAE,IAAIA,EAAE+xL,GAAGpH,GAAI3qL,EAAE,IAAIA,EAAEgyL,GAAGrH,GAAI3qL,EAAE,IAAIA,EAAEiyL,GAAGtH,GAAI3qL,EAAE,IAAIA,EAAEkyL,GAAGvH,GAAI3qL,EAAE,IAAIA,EAAEmyL,GAAGxH,GAAI3qL,EAAE,IAAIA,EAAEoyL,GAAGzH,GAAI3qL,EAAE,IAAIA,EAAEkzI,GAAGy3C,GAAI3qL,EAAE,IAAIA,EAAEqyL,GAAG1H,GAAI3qL,EAAE,IAAIA,EAAEsyL,GAAG3H,GAAI3qL,EAAE,GAAG,CAlhCt7BuyL,CAAIvyL,GAykChJ,SAAaA,GAAG,IAAIkS,EAAE,GAAGlS,EAAEwyL,EAAE,OAAOxyL,EAAEwyL,GAAE,EAAK3H,GAAI7qL,EAAE,QAAQ8qL,GAAI9qL,EAAE,kBAAkB+qL,GAAI/qL,EAAE2vL,KAAKz9K,EAAEyrK,GAAG0M,KAAKX,KAAMC,KAAKgG,KAAK,MAAM1E,GAAIC,GAAIlrL,EAAEixL,IAAIjxL,EAAEkS,GAAGi5K,GAAInrL,EAAEkS,EAAE+9K,IAAG,WAAU,GAAM,GAAM,GAAMvD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEkS,GAAG,GAAG,IAAIlS,EAAEm6J,GAAGg3B,EAAEsB,IAAI,KAAK,GAAG,EAAExC,KAAG,GAAM,GAAM,GAAK,GAAM,GAAM,GAAOvD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEkS,GAAG,GAAG,IAAIlS,EAAEm6J,GAAGg3B,EAAE,MAAM,KAAK,GAAG,EAAElB,KAAG,GAAK,GAAK,GAAK,GAAM,GAAM,GAAMvD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEkS,GAAG,GAAG,IAAIlS,EAAEm6J,GAAGg3B,EAAE,eAAe,KAAK,GAAG,EAAElB,KAAG,GAAM,GAAM,GAAK,GAAM,GAAM,GAAO9E,GAAInrL,EAAE+zB,GAAGm8J,IAAGwC,KAAI,GAAM,GAAM,GAAMhG,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE+zB,IAAI,GAAG,IAAI/zB,EAAE8xL,GAAG,OAAO,KAAK,EAAE,EAAE5B,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOxD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE+zB,IAAI,GAAG,IAAI/zB,EAAE8xL,GAAGa,IAAI,KAAK,EAAE,EAAEzC,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAO/E,GAAInrL,EAAEixL,GAAGd,IAAGyC,KAAI,GAAM,GAAM,GAAMlG,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEixL,IAAI,GAAG,IAAI/+K,EAAE4/K,GAAG,WAAW,KAAK,EAAE,EAAE3B,KAAG,GAAK,GAAK,GAAK,GAAM,GAAK,GAAMzD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEixL,IAAI,GAAG,IAAI/+K,EAAElS,EAAE8rL,IAAI,KAAK,EAAE,EAAEqE,KAAG,GAAK,GAAK,GAAK,GAAM,GAAK,GAAM/D,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEixL,IAAI,GAAG,IAAIjxL,EAAEm6J,GAAGnmJ,EAAE,KAAK,eAAe,EAAE,EAAEm8K,KAAG,GAAM,GAAM,GAAK,GAAM,GAAM,GAAM,GAAOhF,GAAInrL,EAAEkxL,GAAGd,IAAGyC,KAAI,GAAM,GAAM,GAAMnG,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEkxL,IAAI,GAAG,IAAIlxL,EAAEm6J,GAAGg3B,EAAEsB,IAAI,KAAK,GAAG,EAAE,MAAK,GAAM,GAAM,GAAK,GAAM,GAAM,GAAOrG,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEkxL,IAAI,GAAG,IAAIlxL,EAAEm6J,GAAGw3B,GAAG,KAAK,iBAAiB,GAAG,EAAE,MAAK,GAAK,GAAM,GAAK,GAAK,GAAM,GAAM,GAAOvF,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEkxL,IAAI,GAAG,IAAIlxL,EAAEm6J,GAAGw3B,GAAG,KAAK,oBAAoB,GAAG,EAAE,MAAK,GAAK,GAAM,GAAK,GAAK,GAAM,GAAM,GAAOjF,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEkxL,IAAI,GAAG,IAAIlxL,EAAE8xL,GAAG,QAAQ,KAAK,GAAG,EAAE,MAAK,GAAK,GAAK,GAAK,GAAM,GAAM,GAAMpF,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEkxL,IAAI,GAAG,IAAIlxL,EAAE8xL,GAAG,UAAU,KAAK,GAAG,EAAE,MAAK,GAAK,GAAK,GAAK,GAAM,GAAM,GAAM1F,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEkxL,IAAI,GAAG,IAAIlxL,EAAE+zB,GAAG,KAAK++J,IAAI,GAAG,EAAE,MAAK,GAAK,GAAK,GAAK,GAAK,GAAM,GAAM,GAAMpG,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEkxL,IAAI,GAAG,IAAIlxL,EAAE8xL,GAAG1E,IAAI,KAAK,GAAG,EAAE,MAAK,GAAK,GAAK,GAAK,GAAM,GAAM,GAAMwB,GAAI5uL,EAAEA,EAAE8uL,IAAG,iBAAgB,GAAMF,GAAI5uL,EAAEuvB,EAAE8gK,IAAG,UAAS,GAAMzB,GAAI5uL,EAAED,EAAEy+K,GAAG8R,IAAG,GAAG,gBAAe,GAAM1B,GAAI5uL,EAAEuF,EAAEwtL,IAAI,WAAU,GAAMnE,GAAI5uL,EAAE86B,EAAEy1J,IAAG,iBAAgB,GAAM3B,GAAI5uL,EAAE2S,EAAE29K,IAAG,QAAO,GAAM1B,GAAI5uL,EAAEhC,EAAEwyL,IAAG,cAAa,GAAM5B,GAAI5uL,EAAEoS,EAAEi+K,IAAG,QAAO,GAAMzB,GAAI5uL,EAAEqB,EAAEgvL,IAAG,YAAW,GAAMzB,GAAI5uL,EAAEJ,EAAEozL,IAAG,WAAU,GAAMpE,GAAI5uL,EAAEE,EAAE+yL,IAAG,UAAS,GAAMrE,GAAI5uL,EAAEoD,EAAEqtL,IAAG,gBAAe,GAAM7B,GAAI5uL,EAAEgU,EAAEq8K,IAAG,YAAW,GAAMzB,GAAI5uL,EAAE6T,EAAE68K,IAAG,YAAW,GAAM9B,GAAI5uL,EAAE0S,EAAEg+K,IAAG,gBAAe,GAAM9B,GAAI5uL,EAAEiU,EAAEo8K,IAAG6C,KAAI,GAAMtE,GAAI5uL,EAAEqoB,EAAE8qK,IAAG,SAAQ,GAAMvE,GAAI5uL,EAAEmR,EAAEw/K,IAAG,eAAc,GAAM/B,GAAI5uL,EAAEuD,EAAE8sL,IAAG,QAAO,GAAMzB,GAAI5uL,EAAE4kC,EAAEyrJ,IAAG,UAAS,GAAMzB,GAAI5uL,EAAE4pB,EAAEymK,IAAG,aAAY,GAAMzB,GAAI5uL,EAAE6iC,EAAEwtJ,IAAG,SAAQ,GAAMzB,GAAI5uL,EAAEmxL,EAAEd,IAAG,cAAa,GAAMzB,GAAI5uL,EAAEoxL,EAAE5S,GAAG8R,IAAG,GAAG,aAAY,GAAM1B,GAAI5uL,EAAEqxL,EAAEhB,IAAG,MAAK,GAAMzB,GAAI5uL,EAAE41F,EAAEy6F,IAAG,SAAQ,GAAMzB,GAAI5uL,EAAEsxL,EAAEZ,IAAG,UAAS,GAAM9B,GAAI5uL,EAAEuxL,EAAEb,IAAG,cAAa,GAAM9B,GAAI5uL,EAAEiuC,EAAEmlJ,IAAG,OAAM,GAAMxE,GAAI5uL,EAAEskC,EAAE+uJ,IAAG,WAAU,GAAMzE,GAAI5uL,EAAEwxL,EAAEZ,IAAG,aAAY,GAAMhC,GAAI5uL,EAAEgjC,EAAEqtJ,IAAG,YAAW,GAAMzB,GAAI5uL,EAAE2lB,EAAE2tK,IAAG,QAAO,GAAM1E,GAAI5uL,EAAEitC,EAAE4jJ,IAAG,cAAa,GAAMjC,GAAI5uL,EAAEspB,EAAE+mK,IAAG,QAAO,GAAMzB,GAAI5uL,EAAEyxL,EAAEpB,IAAGkD,KAAI,GAAM3E,GAAI5uL,EAAE+oC,EAAEsqJ,IAAG,mBAAkB,GAAMzE,GAAI5uL,EAAE+lB,EAAEsqK,IAAGmD,KAAI,GAAM5E,GAAI5uL,EAAE01F,EAAEg7F,IAAG,YAAW,GAAM9B,GAAI5uL,EAAE61F,EAAE66F,IAAG,gBAAe,GAAM9B,GAAI5uL,EAAE21F,EAAE09F,IAAG,sBAAqB,GAAMzE,GAAI5uL,EAAE0xL,EAAE2B,IAAG,sBAAqB,GAAMzE,GAAI5uL,EAAE8tB,EAAEuiK,IAAG,oBAAmB,GAAMzB,GAAI5uL,EAAE2sL,EAAE0D,IAAG,YAAW,GAAMzB,GAAI5uL,EAAE2xL,GAAGtB,IAAG,mBAAkB,GAAMzB,GAAI5uL,EAAEqzC,GAAGg9I,IAAG,SAAQ,GAAMzB,GAAI5uL,EAAE4xL,GAAG6B,IAAI,SAAQ,GAAM7E,GAAI5uL,EAAE6xL,GAAGf,IAAG,eAAc,GAAMlC,GAAI5uL,EAAE8xL,GAAGzB,IAAGqD,KAAI,GAAM9E,GAAI5uL,EAAE+xL,GAAG1B,IAAG,QAAO,GAAMzB,GAAI5uL,EAAEgyL,GAAG3B,IAAG,SAAQ,GAAMzB,GAAI5uL,EAAEiyL,GAAGwB,IAAI,gBAAe,GAAM7E,GAAI5uL,EAAEkyL,GAAGpB,IAAG,sBAAqB,GAAMlC,GAAI5uL,EAAEmyL,GAAGmB,IAAG,eAAc,GAAM1E,GAAI5uL,EAAEoyL,GAAGvB,IAAG,qBAAoB,GAAMjC,GAAI5uL,EAAEkzI,GAAGmgD,IAAG,gBAAe,GAAMzE,GAAI5uL,EAAEqyL,GAAGe,IAAG,iBAAgB,GAAMxE,GAAI5uL,EAAEsyL,GAAG1B,IAAG,uBAAsB,GAAM7B,GAAI/uL,EAAE2vL,KAGlyG,SAAa3vL,GAAG2zL,IAAI3zL,EAAEA,EAAE4zL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,mBAAmBH,IAAI3zL,EAAEkS,EAAE0hL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,UAAUC,IAAItB,OAAOkB,IAAIhW,GAAG0O,GAAIC,GAAItsL,EAAEkS,GAAG,GAAG,IAAI0hL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACE,IAAIC,IAAIF,IAAI,YAAYH,IAAIhW,GAAG0O,GAAIC,GAAItsL,EAAEkS,GAAG,GAAG,IAAI0hL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACE,IAAIC,IAAIC,IAAIC,IAAIJ,IAAI,KAAKK,IAAI,SAASR,IAAIhW,GAAG0O,GAAIC,GAAItsL,EAAEkS,GAAG,GAAG,IAAI0hL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACE,IAAIK,IAAIH,IAAIC,IAAIJ,IAAI,KAAKK,IAAI,SAASR,IAAI3zL,EAAEuvB,EAAEqkK,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,SAASO,IAAIC,OAAOX,IAAI3zL,EAAED,EAAE6zL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,eAAeO,IAAIC,OAAOX,IAAI3zL,EAAEuF,EAAEquL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAIS,IAAIF,IAAIC,OAAOX,IAAI3zL,EAAE86B,EAAE84J,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,iBAAiBU,IAAID,OAAOZ,IAAI3zL,EAAE2S,EAAEihL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAIW,OAAOd,IAAI3zL,EAAEhC,EAAE41L,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,cAAcU,IAAIC,OAAOd,IAAI3zL,EAAEoS,EAAEwhL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,OAAOO,IAAIC,OAAOX,IAAI3zL,EAAEqB,EAAEuyL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,WAAWO,IAAIC,OAAOX,IAAI3zL,EAAEJ,EAAEg0L,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,UAAUO,IAAIC,OAAOX,IAAI3zL,EAAEE,EAAE0zL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAIY,IAAIL,IAAIC,OAAOX,IAAI3zL,EAAEoD,EAAEwwL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,gBAAgBU,IAAIE,OAAOf,IAAI3zL,EAAEgU,EAAE4/K,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,WAAWO,IAAIC,OAAOX,IAAI3zL,EAAE6T,EAAE+/K,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,WAAWU,IAAIG,IAAIC,IAAI,OAAOjB,IAAI3zL,EAAE0S,EAAEkhL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAIa,IAAIE,IAAI3B,OAAOS,IAAI3zL,EAAEiU,EAAE2/K,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAIZ,IAAIsB,IAAIjB,OAAOI,IAAI3zL,EAAEqoB,EAAEurK,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAIgB,IAAIT,IAAIC,OAAOX,IAAI3zL,EAAEmR,EAAEyiL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,eAAeU,IAAIM,OAAOnB,IAAI3zL,EAAEuD,EAAEqwL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,OAAOO,IAAIC,OAAOX,IAAI3zL,EAAE4kC,EAAEgvJ,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,SAASO,IAAIC,OAAOX,IAAI3zL,EAAE4pB,EAAEgqK,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,YAAYO,IAAIC,OAAOX,IAAI3zL,EAAE6iC,EAAE+wJ,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,QAAQO,IAAIC,OAAOX,IAAI3zL,EAAEmxL,EAAEyC,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,aAAaO,IAAIC,OAAOX,IAAI3zL,EAAEoxL,EAAEwC,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,YAAYO,IAAIC,OAAOX,IAAI3zL,EAAEqxL,EAAEuC,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,KAAKU,IAAIjB,OAAOI,IAAI3zL,EAAE41F,EAAEg+F,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,QAAQU,IAAIjB,OAAOI,IAAI3zL,EAAEsxL,EAAEsC,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,SAASU,IAAIO,IAAIH,IAAI,OAAOjB,IAAI3zL,EAAEuxL,EAAEqC,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAIiB,IAAIF,IAAI,WAAWlB,IAAI3zL,EAAEiuC,EAAE2lJ,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAIkB,OAAOrB,IAAI3zL,EAAEskC,EAAEsvJ,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAImB,OAAOtB,IAAI3zL,EAAEwxL,EAAEoC,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,aAAaU,IAAIQ,OAAOrB,IAAI3zL,EAAEgjC,EAAE4wJ,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,WAAWU,IAAIU,IAAIC,IAAIC,OAAOzB,IAAI3zL,EAAE2lB,EAAEiuK,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAIuB,OAAO1B,IAAI3zL,EAAEitC,EAAE2mJ,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,cAAcU,IAAIa,OAAO1B,IAAI3zL,EAAEspB,EAAEsqK,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,OAAOU,IAAIU,IAAIC,IAAIG,OAAO3B,IAAI3zL,EAAEyxL,EAAEmC,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAIP,IAAIiB,IAAI,OAAOW,IAAII,OAAO5B,IAAI3zL,EAAE+oC,EAAE6qJ,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,kBAAkBU,IAAIgB,IAAIC,IAAI,QAAQ9B,IAAI3zL,EAAE+lB,EAAE6tK,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAIN,IAAIgB,IAAIU,IAAIC,IAAI,UAAUxB,IAAI3zL,EAAE01F,EAAEk+F,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,WAAWU,IAAIkB,IAAId,IAAI,OAAOjB,IAAI3zL,EAAE61F,EAAE+9F,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI4B,IAAIb,IAAIrB,OAAOG,IAAI3zL,EAAE21F,EAAEi+F,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI6B,IAAInB,IAAIS,IAAIW,IAAI,OAAOjC,IAAI3zL,EAAE0xL,EAAEkC,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI0B,IAAIhB,IAAIS,IAAIQ,IAAI,OAAO9B,IAAI3zL,EAAE8tB,EAAE8lK,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI+B,IAAIrB,IAAIsB,IAAIzB,IAAI,aAAaV,IAAI3zL,EAAE2sL,EAAEiH,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,WAAWO,IAAIC,OAAOX,IAAI3zL,EAAE2xL,GAAGiC,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,kBAAkBU,IAAImB,IAAIC,IAAI,OAAOjC,IAAI3zL,EAAE+zB,GAAG6/J,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,+BAA+BC,IAAI,WAAWJ,IAAIhW,GAAG0O,GAAIC,GAAItsL,EAAE+zB,IAAI,GAAG,IAAI6/J,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACE,IAAIgC,IAAIjC,IAAI,UAAUH,IAAIhW,GAAG0O,GAAIC,GAAItsL,EAAE+zB,IAAI,GAAG,IAAI6/J,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACE,IAAIgC,IAAIjC,IAAInB,OAAOgB,IAAI3zL,EAAEqzC,GAAGugJ,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,QAAQO,IAAIC,OAAOX,IAAI3zL,EAAE4xL,GAAGgC,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAIkC,OAAOrC,IAAI3zL,EAAE6xL,GAAG+B,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,eAAeU,IAAIwB,OAAOrC,IAAI3zL,EAAEixL,GAAG2C,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,gBAAgBC,IAAIkC,OAAOtC,IAAIhW,GAAG0O,GAAIC,GAAItsL,EAAEixL,IAAI,GAAG,IAAI2C,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,KAAKC,IAAIkC,OAAOtC,IAAIhW,GAAG0O,GAAIC,GAAItsL,EAAEixL,IAAI,GAAG,IAAI2C,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,KAAKC,IAAIkC,OAAOtC,IAAIhW,GAAG0O,GAAIC,GAAItsL,EAAEixL,IAAI,GAAG,IAAI2C,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,KAAKC,IAAIkC,OAAOtC,IAAI3zL,EAAE8xL,GAAG8B,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAIgC,IAAIzB,IAAI,cAAcV,IAAI3zL,EAAE+xL,GAAG6B,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,OAAOO,IAAIC,OAAOX,IAAI3zL,EAAEgyL,GAAG4B,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAIoB,IAAIV,IAAIqB,IAAIxB,IAAIC,OAAOX,IAAI3zL,EAAEiyL,GAAG2B,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAIoC,IAAIT,IAAI,MAAMG,IAAI,OAAOjC,IAAI3zL,EAAEkyL,GAAG0B,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,sBAAsBU,IAAI0B,OAAOvC,IAAI3zL,EAAEmyL,GAAGyB,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAIqC,IAAIV,IAAI,aAAaG,IAAI,OAAOjC,IAAI3zL,EAAEoyL,GAAGwB,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,qBAAqBU,IAAI2B,OAAOxC,IAAI3zL,EAAEkzI,GAAG0gD,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,eAAeU,IAAImB,IAAIF,IAAIW,IAAIR,IAAI,OAAOjC,IAAI3zL,EAAEqyL,GAAGuB,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAIuC,IAAIZ,IAAI,QAAQG,IAAI,OAAOjC,IAAI3zL,EAAEsyL,GAAGsB,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,uBAAuBU,IAAI6B,OAAO1C,IAAI3zL,EAAEkxL,GAAG0C,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACC,IAAI,GAAGC,IAAItB,OAAOkB,IAAIhW,GAAG0O,GAAIC,GAAItsL,EAAEkxL,IAAI,GAAG,IAAI0C,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACE,IAAIC,IAAIF,IAAI,YAAYH,IAAIhW,GAAG0O,GAAIC,GAAItsL,EAAEkxL,IAAI,GAAG,IAAI0C,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACE,IAAIgC,IAAIjC,IAAI,kBAAkBH,IAAIhW,GAAG0O,GAAIC,GAAItsL,EAAEkxL,IAAI,GAAG,IAAI0C,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACE,IAAIgC,IAAIjC,IAAI,wBAAwBH,IAAIhW,GAAG0O,GAAIC,GAAItsL,EAAEkxL,IAAI,GAAG,IAAI0C,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACE,IAAIuC,IAAIxC,IAAI,QAAQyC,IAAIC,OAAO7C,IAAIhW,GAAG0O,GAAIC,GAAItsL,EAAEkxL,IAAI,GAAG,IAAI0C,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACE,IAAIuC,IAAIxC,IAAI,UAAUyC,IAAIC,OAAO7C,IAAIhW,GAAG0O,GAAIC,GAAItsL,EAAEkxL,IAAI,GAAG,IAAI0C,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACE,IAAIuC,IAAIxC,IAAIhB,IAAIyD,IAAIC,OAAO7C,IAAIhW,GAAG0O,GAAIC,GAAItsL,EAAEkxL,IAAI,GAAG,IAAI0C,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACE,IAAIuC,IAAIxC,IAAI1G,IAAImJ,IAAIC,MAAM,CAH1iDC,CAAIz2L,EAAE,CAzkC1pG02L,CAAI12L,GAAG22L,IAAKC,KAAMC,KAAK72L,EAAE,IAAI42J,IAAKq4B,IAAIjvL,GAAGkvL,GAAIvF,IAAIgG,IAAI3vL,GAAUA,EAAC,CAjpHxL82L,EAAK,CAChC,SAASC,KAAMA,GAAIriD,EAAIsiD,IAAIC,IAAK,CAChC,SAASC,KAAM,MAAMhkB,GAAI,IAAIgC,GAAI,CACjC,SAASiiB,KAAM,MAAMjkB,GAAI,IAAIgC,GAAI,CACjC,SAASkiB,KAAM,MAAMlkB,GAAI,IAAIgC,GAAI,CACjC,SAASmiB,KAAM,MAAMnkB,GAAI,IAAIgC,GAAI,CACjC,SAASoiB,KAAM,MAAMpkB,GAAI,IAAIgC,GAAI,CACjC,SAASqiB,KAAM,MAAMrkB,GAAI,IAAIgC,GAAI,CACjC,SAASsiB,GAAIx3L,GAAGsE,KAAKtE,EAAE,IAAIy3L,GAAIz3L,EAAE,CACjC,SAAS03L,GAAI13L,GAAG23L,MA8qJhB,SAAa33L,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAsC,GAApCmd,EAAE,EAAE5c,EAAE,EAAEmoB,EAAE5oB,EAAEhU,OAAOuF,EAAE,KAAK2O,EAAE,IAAIqyK,GAAO9xK,EAAEmoB,IAAI88J,GAAIjlL,EAAET,EAAEhU,QAAyB,IAAjBgU,EAAEmN,WAAW1M,QAAe4c,IAAJ5c,EAAWmoB,IAAI88J,GAAIjlL,EAAET,EAAEhU,QAAyB,IAAjBgU,EAAEmN,WAAW1M,KAASilL,GAAIjlL,EAAET,EAAEhU,QAAyB,IAAjBgU,EAAEmN,WAAW1M,MAAU,MAAMugK,GAAI,IAAImR,GAAIwT,IAAI3lL,EAAE,MAAO,KAAMS,EAAEmoB,IAAI88J,GAAIjlL,EAAET,EAAEhU,QAAyB,IAAjBgU,EAAEmN,WAAW1M,MAAUilL,GAAIjlL,EAAET,EAAEhU,QAAyB,KAAjBgU,EAAEmN,WAAW1M,MAAWilL,GAAIjlL,EAAET,EAAEhU,QAAyB,IAAjBgU,EAAEmN,WAAW1M,OAAWA,EAA0C,GAAxCP,EAAEpS,GAAG,GAAG83L,GAAO,MAAH5lL,EAAQ6lL,KAAKl3B,GAAI3uJ,GAAGA,GAAGqd,EAAE5c,GAAMA,EAAEmoB,IAAI88J,GAAIjlL,EAAET,EAAEhU,QAAyB,IAAjBgU,EAAEmN,WAAW1M,IAAQ,CAAS,IAAJ4c,IAAF5c,EAAYA,EAAEmoB,IAAI88J,GAAIjlL,EAAET,EAAEhU,QAAyB,KAAjBgU,EAAEmN,WAAW1M,MAAWilL,GAAIjlL,EAAET,EAAEhU,QAAyB,IAAjBgU,EAAEmN,WAAW1M,OAAWA,EAAE3S,EAAEuF,EAAEoN,EAAE4c,EAAEnd,EAAEpS,GAAG,GAAG83L,GAAO,MAAH5lL,EAAQ6lL,KAAKl3B,GAAI3uJ,GAAGA,GAAGqd,EAAE5c,EAAE,MAAM3S,EAAEuF,EAAE,EAAE,GAAGoN,EAAEmoB,IAAI88J,GAAIjlL,EAAET,EAAEhU,QAAyB,KAAjBgU,EAAEmN,WAAW1M,KAAUilL,GAAIjlL,EAAET,EAAEhU,QAAyB,IAAjBgU,EAAEmN,WAAW1M,OAAc4c,IAAF5c,EAASA,EAAEmoB,IAAI88J,GAAIjlL,EAAET,EAAEhU,QAAyB,IAAjBgU,EAAEmN,WAAW1M,OAAWA,EAAImoB,IAAI88J,GAAIjlL,EAAET,EAAEhU,QAAyB,IAAjBgU,EAAEmN,WAAW1M,OAAW4c,EAAE9rB,EAAEyO,EAAEuhD,OAAOlkC,EAAEuL,EAAEvL,GAAGvvB,EAAEuF,EAAEvF,EAAEuF,EAAEyyL,IAAIv0L,EAAEw0L,IAAIC,KAAQl4L,EAAEuF,GAAG4yL,GAAGn4L,EAAEuF,IAAI,MAAM2tK,GAAI,IAAImR,GAAI,wBAA+B,GAANrmL,EAAEoU,EAAEpS,EAAKhC,EAAEE,OAAO,GAAG,CAAqF,GAApF8B,EAAE86B,GAAQ,MAALs9J,MAAYA,IAAI,IAAInlL,OAAO,cAAc,MAAMmlL,IAAI9pL,KAAKtQ,GAAG6U,SAAS7U,EAAE,IAAIq6L,KAAQ1oL,MAAM3P,EAAE86B,GAAI,MAAMo4I,GAAI,IAAImR,GAAIwT,IAAI3lL,EAAE,MAAMlS,EAAEA,EAAEs4L,IAAIt4L,EAAE86B,EAAE,MA/tD7jC,SAAa96B,EAAEkS,GAAG,IAAIqd,EAAEvvB,EAAEuvB,EAAErd,EAAElS,EAAEA,EAjDhC,SAAaA,GAAG,IAAIkS,EAAEqd,EAAI,GAAQ,GAALvvB,EAAEuF,EAAM,OAAO,EAAE2M,EAAElS,EAAED,GAAG,EAAEwvB,EAAEvvB,EAAEA,EAAEA,EAAED,EAAE,GAAMC,EAAEuF,EAAE,GAAKgzL,GAAIv4L,IAASA,EAAED,EAAE,MAAKwvB,EAAEA,GAAI,GAAa,OAAVrd,GAAGsmL,IAAIjpK,GAAUrd,CAAC,CAiD/FumL,CAAIvmL,GAAGlS,EAAEA,EAAE,KAAKA,EAAE86B,GAAGvL,EAAErd,EAAEnS,EAAE,EAAE24L,GAAIC,GAAIzmL,EAAElS,EAAE,GAAG,IAAI44L,GAAI1mL,EAAElS,EAAE,GAAG64L,MAAMD,GAAI1mL,EAAElS,EAAE,GAAG64L,KAAKC,GAAIC,GAAI7mL,EAAE3M,EAAEgqB,KAAK,CA+tD+7BypK,CAAIh5L,EAAE,IAAIi5L,GAAIj7L,IAAmB,IAAfgC,EAAED,EAAEqS,EAAEpS,EAAE9B,OAAWqH,EAAE,EAAEA,EAAE6M,EAAEpS,EAAE9B,SAA+B,KAAnB6B,EAAEm5L,GAAI9mL,EAAEpS,EAAEuF,KAAgB,IAAHxF,KAA1BwF,IAAyCvF,EAAED,EAAO,GAALC,EAAED,IAAOC,EAAED,EAAE,EAAE,CA9qJjqCo5L,CAAI70L,KAAKtE,EAAE,CACjC,SAASo5L,GAAIp5L,GAAGsE,KAAKtE,EAAE,IAAIq5L,GAAIr5L,EAAE,CACjC,SAASs5L,GAAIt5L,EAAEkS,GAAG,KAAMlS,EAAEu5L,GAAGrnL,KAAI,CACjC,SAASsnL,GAAIx5L,EAAEkS,GAAG,KAAMlS,EAAEy5L,GAAGvnL,KAAI,CACjC,SAASwnL,GAAI15L,EAAEkS,GAAU,OAAPlS,EAAEA,GAAGkS,EAASlS,CAAC,CACjC,SAAS25L,GAAI35L,EAAEkS,GAAU,OAAPlS,EAAEA,GAAGkS,EAASlS,CAAC,CACjC,SAAS45L,GAAI55L,EAAEkS,GAAU,OAAPlS,EAAEA,GAAGkS,EAASlS,CAAC,CACjC,SAAS65L,GAAI75L,EAAEkS,GAAU,OAAPlS,EAAEA,GAAGkS,EAASlS,CAAC,CACjC,SAAS85L,GAAI95L,GAAU,OAAP+5L,GAAI/5L,GAAUA,EAAEA,CAAC,CACjC,SAASg6L,GAAIh6L,GAAG,OAAOA,EAAEkS,GAAGlS,EAAED,EAAEwvB,CAAC,CACjC,SAAS0qK,GAAGj6L,GAAG,OAAOA,EAAE8T,EAAE9T,EAAEgT,GAAG,EAAE,CACjC,SAASknL,GAAIl6L,EAAEkS,GAAG,OAAOlS,EAAED,EAAEmS,EAAE9O,EAAE,CACjC,SAAS+2L,GAAIn6L,EAAEkS,GAAG,OA6gIlB,SAAalS,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAsB,GAAlCogL,KAAc5wJ,EAAE6qK,GAAInD,KAAM/kL,EAAEmoL,MAAS9qK,EAAE,CAAO,GAANxvB,EAAEwvB,EAAEnd,EAAKy3K,GAAG7pL,EAAE,KAAM,OA98E9E,SAAaA,GAAG,OAAQA,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAI/M,IAAGvtL,EAAE,GAAG,KAAKA,EAAEA,EAAEhC,EAAE,CAAC,CA88EuBu8L,CAAI5c,GAAG39K,EAAE,KAAKw6L,GAAIz6L,GAAG06L,MAAMC,OAAOF,GAAIz6L,EAAE46L,KAAKH,GAAIz6L,GAAG06L,MAAMC,MAAW,GAAG7Q,GAAG7pL,EAAE,KAAM,OAAOw6L,GAAIz6L,GAAG06L,MAAMG,MAAW,GAAG/Q,GAAG7pL,EAAE,KAAM,OAAOw6L,GAAIz6L,GAAG06L,MAAMI,MAAW,GAAGhR,GAAG7pL,EAAE,KAAM,OAAOw6L,GAAIz6L,GAAG06L,MAAMK,KAAM,CAAC,OAAO,CAAI,CA7gI/QC,CAAI/6L,EAAEkS,EAAE,CACjC,SAAS8oL,GAAIh7L,EAAEkS,EAAEqd,GAAGvvB,EAAEwhB,OAAOtP,EAAEqd,EAAE,CACjC,SAAS0rK,GAAIj7L,GAAGA,EAAEuvB,EAAE2rK,IAAIl7L,GAAGm7L,IAAIn7L,EAAE,CACjC,SAASo7L,GAAIp7L,GAAGsE,KAAKtE,EAAE,EAAEsE,KAAK4N,EAAElS,CAAC,CACjC,SAASq7L,KAAM/2L,KAAKtE,EAAE,IAAIs7L,IAAIC,IAAG,CACjC,SAASC,KAAMl3L,KAAK4N,EAAE,IAAIopL,IAAIG,IAAG,CACjC,SAASC,KAAMp3L,KAAK4N,EAAE,IAAIopL,IAAIK,IAAG,CACjC,SAAS9f,KAAMv3K,KAAK4N,EAAE,IAAIopL,IAAIK,IAAG,CACjC,SAASC,KAAM,MAAM1oB,GAAI,IAAIgC,GAAI,CACjC,SAAS2mB,KAAM,MAAM3oB,GAAI,IAAIgC,GAAI,CACjC,SAAS4mB,KAAM,MAAM5oB,GAAI,IAAIgC,GAAI,CACjC,SAAS6mB,KAAM,MAAM7oB,GAAI,IAAIgC,GAAI,CACjC,SAAS8mB,KAAM,MAAM9oB,GAAI,IAAIgC,GAAI,CACjC,SAAS+mB,KAAM,MAAM/oB,GAAI,IAAIgC,GAAI,CACjC,SAASgnB,KAAM,MAAMhpB,GAAI,IAAIgC,GAAI,CACjC,SAASinB,KAAM,MAAMjpB,GAAI,IAAIgC,GAAI,CACjC,SAASknB,KAAM,MAAMlpB,GAAI,IAAIgC,GAAI,CACjC,SAASmnB,KAAM,MAAMnpB,GAAI,IAAIgC,GAAI,CAGjC,SAASonB,GAAIt8L,GAAGsE,KAAKtE,EAAE,IAAIu8L,GAAIv8L,EAAE,CACjC,SAASu8L,GAAIv8L,IAs0Eb,SAAaA,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEC,EAAEkS,EAAEA,EAAElS,EAAEA,EAAEuvB,EAAExvB,EAAa,MAAN,IAAJC,EAAEA,GAAY,IAAI+6K,GAAI,IAAIhhB,GAAI/5J,EAAEuvB,EAuuDzE,SAAavvB,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAA4F,GAA1F96B,EAAEuF,EAAEgqB,EAAEvvB,EAAED,EAAE,EAAEC,EAAEkS,EAAE,EAAElS,EAAE86B,EAAE,EAAE96B,EAAEhC,EAAEkU,EAAY,KAAL,GAAJlS,EAAEuF,KAAYvF,EAAEhC,EAoG7E,SAAagC,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAE/6B,EAAEC,EAAE9B,OAAOgU,EAAE,IAAIqyK,GAAIzpJ,EAAE,EAAE,KAAMA,EAAE/6B,GAAgB,GAAM,IAAnBwvB,EAAE2pK,GAAIl5L,EAAE86B,OAAiB,IAAHvL,GAAU,IAAHA,GAAU,IAAHA,GAAU,IAAHA,EAAe,GAAM,IAAHA,EAAoE,IAAHA,GAAOuL,EAAE/6B,EAA6C,KAAnC63L,GAAI98J,EAAE96B,EAAE9B,QAAXqH,EAAmBvF,EAAEqf,WAAWyb,KAAa,GAAHv1B,GAAS,IAAHA,GAAU,IAAHA,GAAU,IAAHA,GAAU,IAAHA,GAAOi3L,GAAItqL,EAAE3M,EAAEk3L,OAAO3hK,IAAO5oB,EAAElS,GAAG,KAAKw8L,GAAItqL,EAAE3M,EAAEk3L,OAAO3hK,GAAQ0hK,GAAItqL,EAAEqd,EAAEktK,UAArN,KAAM3hK,EAAE/6B,GAAsB,KAAnBwvB,EAAE2pK,GAAIl5L,EAAE86B,OAAkB,IAAHvL,IAAwL,OAAOrd,EAAElS,CAAC,CApG3R08L,CAAI18L,EAAEhC,IAAIgC,EAAEoS,EAAEpS,EAAEhC,EAAEE,OAAOy+L,IAAI38L,GAAG86B,EAAE8hK,IAAI58L,GAAMA,EAAED,GAAGC,EAAEoS,EAAE,MAAM8gK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAM8S,QAAQ,GAAG98L,EAAE2S,EAAE,CAAC,IAAI5S,EAAE,EAAEA,EAAEC,EAAE2S,EAAE3S,EAAEuvB,EAAErxB,OAAO6B,IAA0B,GAArBwF,EAAEo4K,GAAGof,GAAI/8L,EAAE2S,EAAE5S,GAAG,KAAQC,EAAE86B,GAAGv1B,EAAEvF,EAAE,MAAMkzK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMgT,QAAQh9L,EAAE2S,EAAE3S,EAAEuvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,OAAOrjJ,CAAC,CAvuD7OmiK,CAAIl9L,EAAEC,EAAEkS,EAAElS,EAAEA,EAAE,CAt0EzEk9L,CAAI54L,KAAKtE,EAm3GzB,WAAe,IAAIA,EAAEkS,EAAEqd,EAAM,IAAJrd,EAAE,EAAMlS,EAAE,EAAEA,EAAE,IAAI9B,OAAO8B,IAAI,CAA8C,GAAM,IAAnDuvB,EAAE4tK,KAAKvF,GAAI53L,EAAE,IAAI9B,QAAQ,IAAImhB,WAAWrf,MAAa,MAAMkzK,GAAI,IAAI4P,GAAI,mBAAmB,IAAIrvH,OAAOzzD,KAAKkS,GAAGqd,CAAC,CAAC,OAAOrd,CAAC,CAn3GnJkrL,GAAM,CACjC,SAASC,GAAIr9L,GAAG,OAAQA,GAAGs9L,GAAIt9L,EAAE,CACjC,SAASu9L,GAAIv9L,GAAG,OAAgB,GAATw9L,IAAIx9L,EAAM,CACjC,SAASy9L,KAAS,GAAJC,MAAQA,IAAG,GAAGC,KAAI,CAAC,CACjC,SAASC,KAAW,MAALC,MAAYA,IAAI,GAAG,CAGlC,SAASC,GAAG99L,EAAEkS,GAAG6rL,GAAGh/L,KAAKuF,KAAKtE,EAAEkS,EAAE,CAClC,SAAS8rL,GAAGh+L,EAAEkS,GAAG4rL,GAAG/+L,KAAKuF,KAAKtE,EAAEkS,EAAE,CAClC,SAAS+rL,GAAGj+L,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKirB,EAAErd,CAAC,CAClC,SAASgsL,GAAGl+L,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CAClC,SAASisL,GAAGn+L,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CAClC,SAASksL,GAAGp+L,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CAClC,SAASmsL,GAAGr+L,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CAClC,SAASosL,GAAGt+L,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CAClC,SAASqsL,GAAGv+L,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CAClC,SAASssL,GAAGx+L,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CAClC,SAAS0a,GAAG5sB,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CAClC,SAASusL,GAAGz+L,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CAClC,SAASwsL,GAAG1+L,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CAClC,SAASysL,GAAG3+L,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CAClC,SAAS0sL,GAAG5+L,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CAClC,SAAS2sL,GAAG7+L,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CAClC,SAAS4sL,GAAG9+L,EAAEkS,GAAG5N,KAAKw2B,EAAE96B,EAAEsE,KAAKqO,EAAET,CAAC,CAClC,SAAS6sL,GAAG/+L,EAAEkS,GAAG5N,KAAKiB,EAAEvF,EAAEsE,KAAKvE,EAAEmS,CAAC,CAClC,SAAS8sL,GAAGh/L,EAAEkS,GAAG5N,KAAKqO,EAAE3S,EAAEsE,KAAKtG,EAAEkU,CAAC,CAClC,SAAS+sL,GAAGj/L,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CAClC,SAASgtL,GAAGl/L,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAKw2B,EAAE5oB,CAAC,CAClC,SAASitL,GAAGn/L,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKirB,EAAErd,CAAC,CAClC,SAAS8sF,GAAGh/F,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CAClC,SAASktL,GAAGp/L,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CAClC,SAASmtL,GAAGr/L,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CAClC,SAASmpK,GAAGr7K,GAAGs/L,GAAGt/L,EAAEqhC,MAAM/8B,KAAKirB,EAAEvvB,CAAC,CAClC,SAASu/L,GAAGv/L,GAAGsE,KAAK4N,EAAEyrK,GAAGoG,GAAG/jL,GAAG,GAAG,CAClC,SAASw/L,GAAGx/L,GAAGsE,KAAKtE,EAAE29K,GAAGoG,GAAG/jL,GAAG,GAAG,CAClC,SAAS8qE,GAAG9qE,GAAGsE,KAAKtE,EAAE29K,GAAGoG,GAAG/jL,GAAG,GAAG,CAClC,SAASy/L,GAAGz/L,GAAGsE,KAAKtE,EAAE29K,GAAGoG,GAAG/jL,GAAG,GAAG,CAClC,SAASg9K,GAAGh9K,GAAGsE,KAAK4N,EAAEyrK,GAAGoG,GAAG/jL,GAAG,GAAG,CAClC,SAAS0/L,KAAKp7L,KAAK0P,EAAE,IAAIi/H,EAAKl1H,IAAI,CAClC,SAAS4hL,KAAMA,GAAIjrD,EAAIkrD,IAAI,IAAIjrD,CAAG,CAClC,SAASkrD,KAAMA,GAAInrD,EAAIorD,IAAI,IAAIvrD,CAAG,CAClC,SAASwrD,GAAI//L,GAAG,OAAOA,EAAE86B,EAAEvL,EAAEvvB,EAAE2S,EAAE4c,CAAC,CAClC,SAASywK,GAAIhgM,EAAEkS,GAAG,OAAOlS,EAAEkS,EAAE+tL,GAAG/tL,EAAE,CAClC,SAASguL,GAAIlgM,EAAEkS,GAAG,OAAOlS,EAAEkS,EAAEiuL,GAAGjuL,EAAE,CAClC,SAASkuL,GAAIpgM,EAAEkS,GAAG,OAAOlS,EAAEkS,EAAEmuL,GAAGnuL,EAAE,CAClC,SAASouL,GAAItgM,EAAEkS,GAAG,OAAOlS,EAAEkS,EAAE+tL,GAAG/tL,EAAE,CAClC,SAASquL,GAAIvgM,EAAEkS,GAAG,OAAOlS,EAAEuvB,EAAEixK,GAAGtuL,EAAE,CAClC,SAASuuL,GAAIzgM,EAAEkS,GAAG,OAAOlS,EAAEA,EAAEmH,GAAG+K,EAAE,CAClC,SAASwuL,GAAI1gM,EAAEkS,GAAG,OAAOogL,GAAGtyL,EAAEuvB,EAAErd,EAAE,CAClC,SAASyuL,GAAG3gM,EAAEkS,GAAG,OAAO0uL,GAAI5gM,EAAEkS,EAAEA,EAAE,CAClC,SAAS2uL,GAAG7gM,EAAEkS,GAAG,OAAOlS,EAAEkS,GAAGA,EAAE4uL,GAAG,CAGlC,SAASC,GAAG/gM,GAAG,OAAOghM,KAAKhhM,EAAEihM,IAAGC,GAAE,CAClC,SAASzJ,GAAIz3L,GAAGmhM,GAAIpiM,KAAKuF,KAAKtE,EAAE,EAAE,CAClC,SAASm3K,KAAMkiB,GAAIt6L,KAAKuF,KAAK,KAAK,CAClC,SAAS88L,KAAMC,GAAItiM,KAAKuF,KAAK,KAAK,CAClC,SAASg9L,GAAIthM,GAAGsE,KAAKirB,EAAEvvB,EAAEuhM,GAAIj9L,KAAK,CAClC,SAASm1K,KAAM+nB,GAAIl9L,MAAMm9L,GAAIn9L,KAAK,CAClC,SAASo9L,GAAI1hM,EAAEkS,GAAG6nL,GAAI/5L,GAAGA,EAAEA,EAAE2hM,GAAGzvL,EAAE,CAClC,SAAS0vL,GAAI5hM,EAAEkS,GAAW,OAARlS,EAAE6hM,GAAG3vL,GAAUlS,CAAC,CAClC,SAAS8hM,GAAI9hM,EAAEkS,GAAW,OAARlS,EAAEA,EAAE86B,EAAE5oB,EAASlS,CAAC,CAClC,SAAS+hM,GAAI/hM,EAAEkS,GAAW,OAARlS,EAAEA,EAAED,EAAEmS,EAASlS,CAAC,CAClC,SAASgiM,GAAIhiM,EAAEkS,GAAW,OAARlS,EAAEA,EAAE2S,EAAET,EAASlS,CAAC,CAClC,SAASiiM,GAAIjiM,EAAEkS,GAAW,OAARlS,EAAEA,EAAEoS,EAAEF,EAASlS,CAAC,CAClC,SAASkiM,GAAIliM,EAAEkS,GAAW,OAARlS,EAAEA,EAAEA,EAAEkS,EAASlS,CAAC,CAClC,SAASmiM,GAAIniM,EAAEkS,GAAW,OAARlS,EAAEA,EAAED,EAAEmS,EAASlS,CAAC,CAClC,SAASoiM,GAAIpiM,EAAEkS,GAAW,OAARlS,EAAEA,EAAEuF,EAAE2M,EAASlS,CAAC,CAClC,SAASqiM,GAAIriM,EAAEkS,GAAW,OAARlS,EAAEA,EAAE2S,EAAET,EAASlS,CAAC,CAClC,SAASsiM,GAAItiM,EAAEkS,GAAW,OAARlS,EAAEA,EAAE86B,EAAE5oB,EAASlS,CAAC,CAElC,SAASuiM,KAAMA,GAAI7tD,EAAI8tD,IAAI,IAAIC,EAAG,CAClC,SAASC,KAAMA,GAAIhuD,EAAIiuD,IAAI,IAAIC,EAAG,CAClC,SAASC,KAAMA,GAAInuD,EAAIouD,IAAI,IAAIptD,CAAG,CAClC,SAASqtD,KAAMA,GAAIruD,EAAIsuD,IAAI,IAAInnD,EAAG,CAClC,SAASonD,KAAMA,GAAIvuD,EAAIwuD,IAAI,IAAIC,EAAG,CAClC,SAASC,KAAMA,GAAI1uD,EAAI2uD,IAAI,IAAI1sD,EAAG,CAClC,SAAS2sD,KAAMA,GAAI5uD,EAAI6uD,IAAI,IAAIznD,EAAG,CAClC,SAAS0nD,KAAMA,GAAI9uD,EAAI+uD,IAAI,IAAIzsD,EAAG,CAClC,SAAS0sD,KAAMA,GAAIhvD,EAAIivD,IAAI,IAAIhpD,EAAG,CAClC,SAAS0gB,KAAMA,GAAI3mB,EAAIkvD,IAAI,IAAIhb,EAAG,CAClC,SAASib,KAAMA,GAAInvD,EAAIovD,IAAI,IAAI5oD,EAAG,CAClC,SAAS6oD,KAAMA,GAAIrvD,EAAIsvD,IAAI,IAAIC,EAAG,CAClC,SAASC,KAAMA,GAAIxvD,EAAIyvD,IAAI,IAAInpD,EAAG,CAClC,SAASmgB,KAAMA,GAAIzmB,EAAI0vD,IAAI,IAAI1mD,EAAG,CAClC,SAAS+d,KAAMA,GAAI/mB,EAAI2vD,IAAI,IAAIrkD,EAAG,CAClC,SAASskD,KAAMA,GAAI5vD,EAAI6vD,IAAI,IAAI7+C,EAAG,CAClC,SAASmW,KAAMA,GAAInnB,EAAI8vD,IAAI,IAAIr9C,EAAG,CAClC,SAAS8W,KAAMA,GAAIvpB,EAAI+vD,IAAI,IAAIC,EAAG,CAClC,SAASC,KAAMA,GAAIjwD,EAAIkwD,IAAI,IAAIC,EAAG,CAClC,SAASC,KAAMA,GAAIpwD,EAAIqwD,IAAI,IAAIC,EAAG,CAClC,SAASC,KAAMA,GAAIvwD,EAAIwwD,IAAI,IAAIC,EAAG,CAClC,SAASC,KAAMA,GAAI1wD,EAAI2wD,IAAI,IAAI10C,EAAG,CAClC,SAAS20C,KAAMC,KAAMjhM,KAAKirB,EAAE,IAAI0jJ,EAAE,CAClC,SAAS4xB,KAAM/F,GAAG//L,KAAKuF,KAAKkhM,IAAI,EAAE,CAClC,SAASC,GAAIzlM,EAAEkS,GAAGwzL,IAAI1lM,EAAEuvB,EAAErd,EAAEA,EAAEqd,EAAErd,EAAE,CAClC,SAASyzL,GAAI3lM,EAAEkS,GAAGwzL,IAAI1lM,EAAEuvB,EAAEA,EAAErd,EAAEA,EAAEA,EAAE,CAClC,SAAS0zL,GAAI5lM,EAAEkS,EAAEqd,GAAG2/J,GAAIlvL,EAAED,EAAEmS,EAAE4oB,EAAEvL,EAAE,CAClC,SAASs2K,GAAI7lM,EAAEkS,EAAEqd,EAAExvB,IAi+FnB,SAAaC,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAoD,GAAlDA,EAAE5oB,EAAE4zL,IAAI/lC,MAAMgmC,MAAMpoB,GAAGzrK,EAAE8zL,GAAGD,KAAK,IAAI/lM,EAAEoS,EAAE7M,EA1UvE,SAAavF,GAAS,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAE,IAAlB0gM,MAAsB12K,EAAE22K,MAAMnmM,EAAE,EAAEwF,EAAEgqB,EAAErxB,OAAO6B,EAAEwF,IAAIxF,EAAU,IAAkB,GAAfomM,IAAVj0L,EAAEqd,EAAExvB,IAAYC,EAAEA,EAAE,GAAQ,OAAOkS,EAAG,OAAOk0L,GAAG,CA0U7CC,CAAIvrK,GAAMv1B,IAAI0gM,MAAMG,KAAM,OAAO,GAAG72K,IAAI+2K,IAAI/gM,GAAI,OAAOghM,IA2xBhI,SAAavmM,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAuB,GAArBv1B,EAAEo4K,GAAG6oB,GAAIxmM,EAAEhC,EAAEkU,GAAG,MAAS3M,EAAmC,GAAhCA,EAAE,IAAIkhM,GAAIzmM,EAAED,EAAEmS,EAAEqd,GAAGm3K,GAAI1mM,EAAEhC,EAAEkU,EAAE3M,GAAM+gM,IAAIp0L,IA11GjG,SAAalS,EAAEkS,EAAEqd,EAAExvB,GAAG4mM,GAAG3mM,EAAEA,EAAEkS,EAAES,GAAG4c,EAAE5c,EAAE5S,EAAE,CA01G6D6mM,CAAI5mM,EAAEA,EAAEkS,EAAEqd,EAAErd,EAAEA,EAAE3M,QAAsC,OAA9Bu1B,EA/Q7H,SAAa96B,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO8sK,MAAMM,IAAI,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAON,MAAMonB,IAAI,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAOpnB,MAAMG,IAAI,KAAK,EAAE,KAAK,GAAG,KAAK,GAAG,OAAOH,MAAMC,IAAI,QAAQ,OAAOD,MAAMqnB,IAAK,CA+QjFC,CAAI70L,GAAGnS,EAAE49K,GAAG6oB,GAAIxmM,EAAEoD,EAAE03B,GAAG,KAAYA,EAAEnoB,GAAG,KAAK,EAAE,KAAK,EAAEpN,EAAE6M,GAAE,EAAKwsK,GAAI7+K,EAAEmS,EAAEA,EAAE3M,GAAG,MAAM,KAAK,EAAE,KAAK,EAAEA,EAAElE,GAAE,EAAKu9K,GAAI7+K,EAAEmS,EAAEqd,EAAEhqB,GAAM,OAAOA,CAAC,CA3xB5HyhM,CAAIhnM,EAAEuF,EAAExF,GAAGmS,EAAE,CAj+F3H+0L,CAAIjnM,EAAED,EAAEmS,EAAEqd,EAAE,CAClC,SAAS23K,GAAIlnM,EAAEkS,EAAEqd,EAAExvB,IA40HnB,SAAaC,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAwC,IAAtCO,EAAE3S,EAAEoS,EAAEmd,EAAErxB,OAAOF,EAAEigL,GAAGkpB,IAAGC,IAAI,IAAIz0L,EAAE,EAAE,GAAOlP,EAAE,EAAEA,EAAEkP,EAAElP,KAAKq3B,EAAE6iJ,GAAG0pB,GAAIrnM,EAAEoS,EAAE3O,GAAG,KAAML,EAAEK,EAAEzF,EAAEyF,GAAG6jM,IAAIC,IAAIzsK,GAAGvL,EAAExvB,GAA4B,IA0CrK,SAAaC,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAyD,IAApD88B,EAAE6iJ,GAAGsL,GAAIue,KAAI,GAAhBxpM,EAAmB,IAAIypM,GAAI3sK,EAAE6iJ,GAAG+pB,GAAI5sK,EAAEA,EAAE58B,QAAQ,GAAG,GAAQuF,EAAE,IAAIkiK,GAAI3lK,EAAEoS,GAAG3O,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAA4BgU,GAAnBS,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAAWL,KAAIukM,IAAIh1L,EAAET,EAAES,EAAEvP,GAAGrD,GAAG6nM,GAAI5pM,EAAE2U,EAAEP,IAAO7M,GAAGsiM,IAAI7nM,EAAEkS,GAAGutK,MAAMC,KAAK,EAAEnwJ,EAAExvB,GAAG8nM,IAAI7nM,EAAEkS,EAAE0tK,IAAI,EAAErwJ,EAAExvB,KAAQ8nM,IAAI7nM,EAAEkS,GAAGutK,MAAMM,KAAK,EAAExwJ,EAAExvB,GAAG8nM,IAAI7nM,EAAEkS,EAAE20L,IAAI,EAAEt3K,EAAExvB,GAAG,CA1CnJ+nM,CAAI9nM,EAAEhC,EAAEuxB,EAAErd,EAAEnS,GAAGqS,EAAE,IAAIogK,GAAQjtK,EAAE,EAAEA,EAAEvH,EAAEE,OAAOqH,IAAOvH,EAAEuH,IAAIoxL,GAAIvkL,EAAEurK,GAAG0pB,GAAIrnM,EAAEoS,EAAE7M,GAAG,IAAIvH,EAAEuH,IAAO6M,EAAE0oB,EAAEvL,EAAEnd,EAAEO,EAAE4c,GAAG,IAAGw4K,GAAI/nM,GAAGgoM,MAAMC,KAAK71L,GAxZxQ,SAAapS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAA2D,IAAzD2U,EAAE3S,EAAED,EAAE/B,EAAEgC,EAAEE,EAAEuD,EAAE,IAAIykM,IAAKv1L,EAAET,GAAGS,EAAE5S,EAAE4S,EAAET,EAAElU,EAAEgC,EAAE2S,EAAE4c,EAAE5c,EAAE5S,EAAE/B,EAAEkU,EAAES,EAAE3S,GAAWuF,EAAE,EAAEu1B,GAAR/6B,EAAEmS,GAAUhU,OAAOqH,EAAEu1B,IAAIv1B,GAAGgqB,EAAExvB,EAAEwF,KAAQ4iM,IAAI1kM,EAAE8rB,EAAEvxB,GAAG2U,EAAET,GAAGzO,EAAE8rB,EAAE5c,EAAE5S,GAAG0D,EAAE1D,EAAE4S,EAAE4c,EAAE9rB,EAAEyO,EAAES,EAAET,EAAElU,EAAEgC,EAAE2S,EAAE3S,EAAEyD,EAAEzD,EAAE2S,EAAE5S,EAAE/B,EAAEkU,CAAC,CAwZsEk2L,CAAIpoM,EAAEhC,GAAG,CA50H9PqqM,CAAItoM,EAAEC,EAAEkS,EAAEqd,EAAE,CAClC,SAAS+4K,GAAItoM,EAAEkS,EAAEqd,EAAExvB,IAo9InB,SAAaC,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAuH,GAArH4P,EAAEstK,GAAIC,GAAGgoB,IAAIvoM,GAAGq9J,MAAMmrC,QAAQ5oM,EAAE0gL,GAAIC,GAAGgoB,IAAIvoM,EAAEyoM,OAAO30L,EAAEwsK,GAAIC,GAAGgoB,IAAIvoM,EAAE0oM,OAAOjlM,EAAEzD,EAAEE,EAAE46B,EAAE6iJ,GAAG0pB,GAAIrnM,EAAEoS,EAAE,GAAG,IAAIO,EAAEmoB,EAAEl7B,EAAEwD,EAl/B5J,SAAapD,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAE,GAAiB,GAAd96B,EAAE86B,EAAEvL,EAAErxB,OAAW,OAAO,KAAoB,IAAV48B,EAAE,IAAI6tK,GAAQ5oM,EAAE,IAAI4lK,GAAI3lK,EAAE86B,GAAG/6B,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyBqH,EAAdo4K,GAAGC,GAAI79K,GAAG,IAAQG,EAAE46B,EAAE5oB,EAAE+gI,EAAK3/H,KAAKugB,IAAIiH,EAAE5oB,EAAE3M,EAAEvF,GAAG86B,EAAE96B,GAAGuF,EAAE2M,EAA0B,OAAxB4oB,EAAE96B,IAAIA,EAAE86B,EAAEvL,EAAErxB,OAAO,GAAGgU,EAAS4oB,CAAE,CAk/BhD8tK,CAAI9tK,EAAEhnB,IAAO1Q,EAAG,OAAO,GAAG8O,EAAE+tL,IAAI4I,MAAMC,MAAO,OAAOnrB,GAAG4qB,IAAIvoM,GAAGgoM,MAAMe,MAAM,IAAIp2L,GAAG,KAAK,EAAEvP,EAAEmsB,GAAG9rB,EAAEzD,EAAEoD,EAAE8O,GAAG,EAAES,EAAE3S,EAAEoD,EAAErD,EAAEH,EAAE,MAAM,KAAK,EAAEwD,EAAEmsB,GAAG9rB,EAAEzD,EAAEoD,EAAE8O,GAAG,EAAES,EAAE3S,EAAEoD,EAAErD,GAAGH,EAAEwD,EAAEpD,EAAE,MAAM,KAAK,EAAKuvB,GAAiB,GAAduL,EAAEv1B,EAAEgqB,EAAErxB,QAAyB,GAAd48B,EAAEnoB,EAAE4c,EAAErxB,QAAWmD,EAAEtB,EAAEqD,EAAEpD,EAAE29K,GAAG0pB,GAAIvsK,EAAEA,EAAE,GAAG,IAAI56B,EAAEgS,EAAE9O,EAAErD,GAAG0D,EAAEyO,EAAE7Q,GAAG,EAAEsR,EAAET,GAAO9O,EAAErD,EAAE0D,EAAEyO,EAAEtS,EAAE+S,EAAET,EAAE9O,EAAEmsB,GAAGvc,EAAE5P,EAAE8O,EAAE,MAAM,KAAK,EAAKqd,GAAiB,GAAduL,EAAEv1B,EAAEgqB,EAAErxB,QAAyB,GAAd48B,EAAEnoB,EAAE4c,EAAErxB,QAAWmD,EAAEtB,EAAEqD,EAAEpD,EAAE29K,GAAG0pB,GAAIvsK,EAAEA,EAAE,GAAG,IAAI56B,EAAEgS,EAAE9O,EAAErD,GAAG0D,EAAEyO,EAAE7Q,GAAG,EAAEsR,EAAET,GAAO9O,EAAErD,EAAE0D,EAAEyO,EAAEtS,EAAE+S,EAAET,EAAE9O,EAAEmsB,EAAEvc,OAAS,GAAGd,EAAE+tL,GAAG+I,KAAM,OAAOrrB,GAAG4qB,IAAIvoM,GAAGgoM,MAAMe,MAAM,IAAIp2L,GAAG,KAAK,EAAE,KAAK,EAAEvP,EAAEmsB,EAAE5c,EAAE3S,EAAEgT,EAAE,MAAM,KAAK,EAAE,KAAK,EAAKuc,IAAIuL,EAAEvL,GAAGluB,EAAEtB,EAAEqD,EAAEpD,EAAE29K,GAAG0pB,GAAIvsK,EAAEA,EAAE,GAAG,IAAI56B,EAAEgS,EAAE9O,EAAErD,GAAG0D,EAAEyO,EAAE7Q,GAAG,EAAEsR,EAAET,GAAO9O,EAAErD,EAAE4S,EAAET,EAAEtS,EAAU,IAAN2F,EAAEnC,EAAErD,EAAMqS,EAAE,IAAIuzJ,GAAI7qI,EAAEA,GAAG1oB,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,SAAyBgC,GAAhBlC,EAAE2/K,GAAGC,GAAIxrK,GAAG,KAAQxS,GAAII,EAAEoD,EAAEmsB,EAAErvB,EAAEgS,EAAE3M,EAAEA,GAAGvH,EAAEkC,EAAEgS,EAAE4B,CAAE,CAp9IpzBm1L,CAAIlpM,EAAEC,EAAEkS,EAAEqd,EAAE,CAClC,SAAS25K,GAAIlpM,EAAEkS,GAAW,OAARlS,EAAEA,EAAEkS,EAAES,EAAS3S,CAAC,CAClC,SAASmpM,GAAInpM,EAAEkS,GAAG,OAmoGlB,SAAYlS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAoF,GAAlFxF,EAAE,IAAI2/L,GAAGn6L,EAAE,IAAI6jM,GAAGrpM,EAAEiU,EAAEq1L,cAAcC,IAAIvpM,EAAEiU,EAAEu1L,WAAWxpM,EAAEiU,EAAEw1L,WAAWj6K,EA6lCjG,SAAYvvB,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAqD,IAAnDnB,EAAE,IAAI82L,IAAGr3L,EAAEmsK,GAAGC,GAAG4U,IAAG,GAAGsW,IAAI,GAAG,GAAG,CAAC,IAAInkM,GAAG,EAAEu1B,EAAE,EAAE/6B,EAAE,EAAM/B,EAAE,EAAEA,EAAEgC,EAAEkS,EAAEqd,EAAErxB,SAASF,EAAE,CAAsB,MAArBqD,EAAEs8K,GAAG0pB,GAAIrnM,EAAEkS,EAAElU,GAAG,MAAUkU,EAAE,GAAuK,CAAM,GAAL3M,GAAG,EAAiB,IAAZ2zL,GAAI73L,EAAEkuB,EAAE,IAAuB,GAAfzb,EAAE1B,EAAE,GAAGu3L,GAAGz3L,EAAEE,GAAMA,EAAE,GAAG0B,EAAG,cAAe,GAAG81L,GAAI13L,EAAE7Q,EAAEkuB,EAAEnd,EAAE,IAAI,CAACA,EAAE,IAAI/Q,EAAEkuB,EAAErxB,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAhQ,GAAzBqH,EAAE,GAAGlE,EAAErB,IAAGuF,EAAEvH,EAAE88B,EAAE1oB,EAAE,GAAGrS,EAAE,GAAKwF,GAAG,EAAE,CAAO,GAAN9B,EAAEpC,EAAE6Q,EAAKlU,GAAGuH,GAAgB,IAAb9B,GAAG1D,KAAa,OAAO,EAAG,IAAI8pM,IAAG33L,EAAEE,EAAE/Q,EAAEoC,EAAEkP,GAAG,CAAC3U,EAAEuH,EAAE,EAAE6M,EAAE,GAAG0oB,EAAE,QAAQ,CAAC,MAAW,GAALv1B,GAAG,GAAMskM,IAAG33L,EAAEE,EAAE/Q,EAAE,EAAEsR,GAAI,OAAO,CAAiI,CAAC,IA0Prb,SAAY3S,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAS,GAALzD,EAAEuF,GAAMvF,EAAEoD,EAAE,IAAIpD,EAAEoD,IAAIpD,EAAEoD,EAAE,IAAIpD,EAAEoD,EAAE60L,KAAK6R,GAAG53L,EAAElS,EAAEoD,EAAEkmM,KAAK32L,EAAET,EAAE8B,EAAEw1L,UAAUO,GAAG73L,EAAE,GAAGlS,EAAEqB,GAAG,GAxgGrH,SAAYrB,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEgU,EAAEg2L,WAAWhqM,EAAEgU,EAAEi2L,SAAS/3L,GAAGg4L,IAAGlqM,EAAEuvB,EAAE,CAwgGyDy6C,CAAG93D,EAAElS,EAAEqB,GAAMrB,EAAEuvB,GAAG,EAAGw6K,GAAG73L,EAAElS,EAAEuvB,GAAWvvB,EAAEqB,GAAG,GAAqDtB,EAAE,GAAlD,IAAIqpM,GAAGl3L,EAAE8B,EAAEq1L,cAAcC,IAAIp3L,EAAE8B,EAAEu1L,WAAW,IAAWv1L,EAAEw1L,UAAUO,GAAG73L,EAAE+gI,EAAK3/H,KAAKsgB,IAAI7zB,EAAE4S,KAASo3L,GAAG73L,EAAES,GAAG3S,EAAE86B,EAAE,IAAI96B,EAAE86B,EAAE5oB,EAAE8B,EAAEg2L,YAAYhqM,EAAEkS,EAAE,GAAGlS,EAAE86B,EAAE,KAAK96B,EAAE86B,GAAG,IA7kInU,SAAY96B,EAAEkS,GAAGlS,EAAEgU,EAAEm2L,SAASj4L,GAAGg4L,IAAGlqM,EAAEkS,EAAE,CA6kI+Rk4L,CAAGl4L,EAAO,IAALlS,EAAE86B,GAAO96B,EAAE2S,EAAE,EAAE3S,EAAE86B,GAAG96B,EAAEoS,GAAG,GAhpFrW,SAAYpS,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEgU,EAAEg2L,YAAY93L,EAAE,GAAG,GAAGlS,EAAEgU,EAAEq2L,WAAWn4L,GAAGg4L,IAAGlqM,EAAEuvB,EAAE,CAgpF8R+6K,CAAGp4L,EAAElS,EAAEoS,GAAGpS,EAAEJ,GAAG,GA5jFvX,SAAYI,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEgU,EAAEg2L,YAAY93L,EAAE,KAAK,GAAGlS,EAAEgU,EAAEu2L,WAAWr4L,GAAGg4L,IAAGlqM,EAAEuvB,EAAE,CA4jF8Si7K,CAAGt4L,EAAElS,EAAEJ,GAAGI,EAAEhC,GAAG,GAAGysM,GAAGv4L,EAAEw4L,GAAI3R,GAAI4R,IAAIC,GAAI14L,EAAE8B,EAAEsnG,WAAWuvF,KAAKA,KAAK7qM,EAAEhC,IAAOgC,EAAEA,IAAY8pM,GAATvkM,EAAE,IAAIm6L,GAAQn6L,EAAEyO,EAAEq1L,cAAcC,IAAI,IAAIwB,GAAIF,GAAI14L,EAAE8B,EAAEsnG,WAAWsvF,GAAIrlM,EAAEyO,EAAEsnG,aAAawuF,GAAG53L,EAAE3M,EAAEyO,EAAEq1L,cAAcC,IAAI,MAAK,GAAGtpM,EAAED,GAAG,EAAG,IAAS,GAANC,EAAEuvB,GAAOA,GAAG,EAAEvvB,EAAED,EAAEmS,EAAE8B,EAAE+2L,UAAU,GAAI,IAAIx7K,GAAG,GAAG9rB,EAAEyO,EAAE8B,EAAEu1L,WAAWQ,GAAG73L,EAAEA,EAAE8B,EAAEw1L,UAAUj6K,GAAGrd,EAAE8B,EAAEu1L,YAAY9lM,GAAGsmM,GAAG73L,EAAEA,EAAE8B,EAAEw1L,WAAWj6K,EAAE,GAAG,EAAE,SAAS,GAAGrd,EAAE8B,EAAE+2L,UAAU/qM,EAAED,EAAG,OAAO,EAAWC,EAAEE,EAAE+3L,MAAKn9J,EAAE5oB,EAAE8B,EAAEg3L,oBAAoBP,GAAGv4L,EAAEw4L,GAAIE,GAAI14L,EAAE8B,EAAEsnG,WAAmB,IAAPt7G,EAAEE,EAAE46B,GAAM+vK,OAAM,OAAO,CAAI,CA1PhaI,CAAGt4L,EAAE4c,GAAI,OAAO,EAAE,OAAOnd,EAAE,EAAE,CA7lCnX84L,CAAGlrM,EAAEkS,EAAE3M,GAAS,GAAHgqB,GAAMA,EAAErd,EAAEhU,OAAQ,MAAMg1K,GAAI,IAAI2O,GAAI3vK,IAAI,OAAO3M,CAAC,CAnoGvIq9C,CAAG5iD,EAAEA,EAAEkS,EAAE,CAGlC,SAASi5L,KAAMA,GAAIz2D,EAAI02D,IAAI,IAAIl6C,EAAG,CAClC,SAASm6C,KAAMA,GAAI32D,EAAI42D,IAAI,IAAI35C,EAAG,CAClC,SAAS45C,KAAMA,GAAI72D,EAAI82D,IAAI,IAAIxxB,EAAG,CAClC,SAASyxB,KAAMA,GAAI/2D,EAAIg3D,IAAI,IAAIzxB,EAAG,CAClC,SAASyP,KAAMA,GAAIh1C,EAAIi1C,IAAI,IAAIlP,EAAG,CAClC,SAASmc,KAAMA,GAAIliD,EAAImiD,IAAI,IAAIlc,EAAG,CAClC,SAASgxB,KAAMA,GAAIj3D,EAAIk3D,IAAI,IAAIC,EAAG,CAClC,SAASC,KAAMA,GAAIp3D,EAAIq3D,IAAI,IAAIC,EAAG,CAClC,SAASC,KAAMA,GAAIv3D,EAAIw3D,IAAI,IAAI11C,EAAG,CAClC,SAAS21C,KAAMA,GAAIz3D,EAAI03D,IAAI,IAAI31C,EAAG,CAClC,SAAS41C,KAAMA,GAAI33D,EAAI43D,IAAI,IAAI95B,EAAG,CAClC,SAAS+5B,KAAMA,GAAI73D,EAAI83D,IAAI,IAAIl6B,EAAG,CAClC,SAASm6B,KAAMA,GAAI/3D,EAAIg4D,IAAI,IAAIzyC,EAAG,CAElC,SAAS0yC,GAAG3sM,GAAGsE,KAAKtE,EAAE29K,GAAGoG,GAAG/jL,GAAG,IAAI,CACnC,SAAS4sM,GAAG5sM,GAAG,OAAO29K,GAAG39K,EAAE,IAAI6sM,IAAI,CACnC,SAASC,GAAI9sM,GAAG,OAAOA,EAAEkS,EAAElS,EAAED,EAAEk/K,IAAI,CACnC,SAAS8tB,GAAI/sM,EAAEkS,GAAG,OAAO86L,GAAIhtM,EAAEA,EAAEkS,EAAE,CACnC,SAAS+6L,GAAIjtM,EAAEkS,GAAG,OAAOg7L,GAAIltM,EAAEkS,GAAG,CAAC,CACnC,SAAS44L,GAAI9qM,EAAEkS,GAAG,OAAOg7L,GAAIltM,EAAEkS,GAAG,CAAC,CACnC,SAASi7L,GAAIntM,EAAEkS,GAAG,OAAOlS,EAAEA,EAAEK,IAAI6R,EAAE,CAEnC,SAASk7L,GAAIptM,EAAEkS,GAAG,OAAO0uL,GAAI5gM,EAAEuF,EAAE2M,EAAE,CACnC,SAASm7L,GAAIrtM,GAAG,OAAO6gK,GAAI7gK,IAAG,CAAK,CACnC,SAASstM,GAAIttM,GAAGutM,GAAIxuM,KAAKuF,KAAKtE,EAAE,GAAG,CACnC,SAASwtM,GAAIxtM,EAAEkS,GAAGu7L,GAAG1uM,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASw7L,GAAI1tM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASy7L,GAAI3tM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS07L,GAAG5tM,GAAG6tM,KAAKlxB,GAAG59K,KAAKuF,KAAKtE,EAAE,CACnC,SAAS8tM,GAAI9tM,EAAEkS,GAAG67L,GAAI/tM,EAAEA,EAAE9B,OAAOgU,EAAE,CACnC,SAAS87L,GAAIhuM,EAAEkS,GAAG+7L,GAAIjuM,EAAEA,EAAE9B,OAAOgU,EAAE,CAKnC,SAASg8L,GAAIluM,EAAEkS,EAAEqd,GAAGvvB,EAAEwhB,OAAOtP,EAAE,EAAEqd,EAAE,CAEnC,SAAS4+K,GAAInuM,EAAEkS,GAAG5N,KAAKvE,EAAEC,EAAEsE,KAAKiB,EAAE2M,CAAC,CACnC,SAASk8L,GAAIpuM,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CACnC,SAASm8L,GAAIruM,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CACnC,SAASo8L,GAAItuM,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CACnC,SAASq8L,GAAIvuM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASs8L,GAAIxuM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASu8L,GAAIzuM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASw8L,GAAI1uM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS01K,GAAI5nL,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASy8L,GAAI3uM,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CACnC,SAAS08L,GAAI5uM,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CACnC,SAAS28L,GAAI7uM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS48L,GAAI9uM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS68L,GAAI/uM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS88L,GAAIhvM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS+8L,GAAIjvM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASg9L,GAAIlvM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASi9L,GAAInvM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASk9L,GAAIpvM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASm9L,GAAIrvM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASo9L,GAAItvM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASq9L,GAAIvvM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASs9L,GAAIxvM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASu9L,GAAIzvM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASw9L,GAAI1vM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASy9L,GAAI3vM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS09L,GAAI5vM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS29L,GAAI7vM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS49L,GAAI9vM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS69L,GAAI/vM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS89L,GAAIhwM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS+9L,GAAIjwM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASg+L,GAAIlwM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASi+L,GAAInwM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASk+L,GAAIpwM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASm+L,GAAIrwM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASo+L,GAAItwM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASq+L,GAAIvwM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS8rK,GAAIh+K,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CACnC,SAASs+L,GAAIxwM,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CACnC,SAASu+L,GAAIzwM,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CACnC,SAASw+L,GAAI1wM,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CACnC,SAASy+L,GAAI3wM,EAAEkS,GAAG5N,KAAKirB,EAAEvvB,EAAEsE,KAAKvE,EAAEmS,CAAC,CACnC,SAAS0+L,GAAI5wM,EAAEkS,GAAG5N,KAAKiB,EAAEvF,EAAEsE,KAAKvE,EAAEmS,CAAC,CACnC,SAAS2+L,GAAI7wM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS4+L,GAAI9wM,EAAEkS,GAAG5N,KAAK4N,EAAEA,EAAE5N,KAAKirB,EAAEvvB,CAAC,CACnC,SAAS+wM,GAAI/wM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS8+L,GAAIhxM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS++L,GAAIjxM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASg/L,GAAIlxM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASi/L,GAAInxM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASk/L,GAAIpxM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASm/L,GAAIrxM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASo/L,GAAItxM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASq/L,GAAIvxM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASs/L,GAAIxxM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASu/L,GAAIzxM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASulH,GAAIz3H,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASw/L,GAAI1xM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASy/L,GAAI3xM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS0/L,GAAI5xM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS2/L,GAAI7xM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS4/L,GAAI9xM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS6/L,GAAI/xM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS8/L,GAAIhyM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS+/L,GAAIjyM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASggM,GAAIlyM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASigM,GAAInyM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASkgM,GAAIpyM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASmgM,GAAIryM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASogM,GAAItyM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASqgM,GAAIvyM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASsgM,GAAIxyM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASugM,GAAIzyM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASwgM,GAAI1yM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASygM,GAAI3yM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS0gM,GAAI5yM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS2gM,GAAI7yM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS4gM,GAAI9yM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS6gM,GAAI/yM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS8gM,GAAIhzM,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CACnC,SAAS+gM,GAAIjzM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASghM,GAAIlzM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASihM,GAAInzM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASkhM,GAAIpzM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASmhM,GAAIrzM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASohM,GAAItzM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASqhM,GAAIvzM,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKvE,EAAEmS,CAAC,CACnC,SAASshM,GAAIxzM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASuhM,GAAIzzM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASwhM,GAAI1zM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASyhM,GAAI3zM,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS0hM,GAAI5zM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS2hM,GAAI7zM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS4hM,GAAI9zM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS6hM,GAAI/zM,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS8hM,GAAIh0M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS+hM,GAAIj0M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASgiM,GAAIl0M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASiiM,GAAIn0M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASkiM,GAAIp0M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASmiM,GAAIr0M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASoiM,GAAIt0M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASqiM,GAAIv0M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASsiM,GAAIx0M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASuiM,GAAIz0M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASwiM,GAAI10M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASyiM,GAAI30M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CAInC,SAAS0iM,GAAI50M,EAAEkS,GAAG,OAAOsoL,GAAIx6L,EAAE2S,EAAET,EAAE,CACnC,SAAS2iM,GAAI70M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS4iM,GAAI90M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS6iM,GAAI/0M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS8iM,GAAIh1M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS+iM,GAAIj1M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASgjM,GAAIl1M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASijM,GAAIn1M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASkjM,GAAIp1M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASmjM,GAAIr1M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASojM,GAAIt1M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASqjM,GAAIv1M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASsjM,GAAIx1M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASujM,GAAIz1M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASwjM,GAAI11M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASyjM,GAAI31M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS0jM,GAAI51M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS2jM,GAAI71M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS4jM,GAAI91M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS6jM,GAAI/1M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS8jM,GAAIh2M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAAS+jM,GAAIj2M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASgkM,GAAIl2M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASikM,GAAIn2M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASkkM,GAAIp2M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASmkM,GAAIr2M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASokM,GAAIt2M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASqkM,GAAIv2M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASskM,GAAIx2M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASukM,GAAIz2M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASwkM,GAAI12M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASykM,GAAI32M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS0kM,GAAI52M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS2kM,GAAI72M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS4kM,GAAI92M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS6kM,GAAI/2M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS8kM,GAAIh3M,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CACnC,SAAS+kM,GAAIj3M,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CACnC,SAASglM,GAAIl3M,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CACnC,SAASilM,GAAIn3M,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,CAAC,CACnC,SAASklM,GAAIp3M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASmlM,GAAIr3M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASolM,GAAIt3M,EAAEkS,IA+nHf,SAAalS,EAAEkS,GAAG,GAAG23K,GAAG33K,EAAE,KAAM,OA5pChC,SAAalS,EAAEkS,GAAG,IAAIqd,EAAc,GAAZA,EAAEgoL,GAAGv3M,EAAEhC,EAAEkU,GAAS,MAAHqd,EAAS,MAAM2jJ,GAAI,IAAIyP,GAAI,iCAA0C,OAAT60B,GAAItlM,EAAEqd,GAAU,IAAI,CA4pChFkoL,CAAIz3M,EAAE29K,GAAGzrK,EAAE,KAAU,GAAG23K,GAAG33K,EAAE,KAAM,OAloC1E,SAAalS,EAAEkS,GAAG,IAAIqd,EAAe,GAAbA,EAAEmoL,GAAI13M,EAAEqB,EAAE6Q,GAAS,MAAHqd,EAAS,MAAM2jJ,GAAI,IAAIyP,GAAI,iCAA0C,OAAT60B,GAAItlM,EAAEqd,GAAU,IAAI,CAkoCvCooL,CAAI33M,EAAE29K,GAAGzrK,EAAE,MAAW,GAAG23K,GAAG33K,EAAE,KAAM,OAliFrH,SAAalS,EAAEkS,GAAG,IAAIqd,EAAwB,OAAtBA,EAAEmoL,GAAI13M,EAAE86B,EAAE5oB,GAAGslM,GAAItlM,EAAEqd,GAAU,IAAI,CAkiFmEqoL,CAAI53M,EAAE29K,GAAGzrK,EAAE,MAAW,GAAG23K,GAAG33K,EAAE,KAAM,OA0XhK,SAAalS,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAEu1B,EAAQ1oB,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAuB,GAArBoT,EAAE2qK,GAAG+5B,GAAI13M,EAAEuvB,EAAErd,GAAG,MAASc,EAAG,MAAMkgK,GAAI,IAAIyP,GAAI,iCAAiCvwK,EAAEylM,IAAI7kM,GAAG8nB,EAAEuiK,KAAMnrL,EAAElS,IAAIkS,EAAElS,EAAE,IAAIs6L,GAAInM,IAAGj8K,EAAE,EAAE,IAAIA,EAAElS,KAAO86B,IAAiBvL,EAAE,IAAIuoL,GAAI93M,EAAEoS,EAArBxS,EAAE,IAAIkjK,IAv8HlM,SAAa9iK,EAAEkS,IAuzDf,SAAalS,EAAEkS,GAAG,IAAIqd,EAAEA,EAAE,EAAE,KAAMvvB,EAAEuF,GAAGvF,EAAEhC,EAAEihL,MAAM84B,GAAI7lM,EAAEitK,IAAIn/K,GAAGg4M,GAAIzoL,IAAIA,GAAG2oK,OAAO3oK,CAAE,CAvzDhE0oL,CAAI,IAAIl5B,GAAI/+K,GAAGkS,EAAE,CAu8HmLgmM,GAAMhmM,EAAElS,IAAIkS,EAAElS,EAAE,IAAIs6L,GAAInM,IAAGj8K,EAAE,EAAE,IAAIA,EAAElS,GAAGuvB,GAAG4oL,GAAGnlM,EAAEi7K,IAAIruL,IAAG2F,EAAE6yM,GAAIlmM,GAAG6tJ,MAAMs4C,MAAS9yM,OAAGlE,EAAEs8K,GAAG26B,IAAIpmM,EAAEmmM,KAAK,MAAU/a,GAAIj8L,MAAoCk3M,GAAIl3M,EAAf,IAAI0uK,GAAfj8J,EAAE,IAAIgvJ,KAAyBq1C,GAAGnlM,EAAE,iBAAiBc,IAAgC,OAA5B0kM,GAAIxlM,EAAE,YAAYylM,GAAIvmM,GAAG7Q,GAAU,IAAI,CA1X7Qq3M,CAAI14M,EAAE29K,GAAGzrK,EAAE,KAAU,GAAGA,EAAG,OAAO,KAAU,MAAMghK,GAAI,IAAI2O,GAAI82B,IAAIC,IAAG,IAAIt6B,GAAIC,GAAGC,GAAGsQ,IAAG,GAAG3Q,IAAI,EAAE,EAAE,CAACjsK,OAAQ,CA/nH/P2mM,CAAI74M,EAAEA,EAAE29K,GAAGzrK,EAAE,IAAI,CACnC,SAAS4mM,GAAI94M,EAAEkS,IA4yDf,SAAalS,EAAEkS,GAAG6mM,KAAahjC,GAAI/1K,EAAE,IAAIw2M,GAAItkM,EAAE8lM,GAAI9lM,EAAE3M,EAAEgqB,EAAErxB,OAAOgU,EAAES,EAAE4c,EAAErxB,SAAS,CA5yD7D86M,CAAIh5M,EAAEA,EAAE29K,GAAGzrK,EAAE,IAAI,CAEnC,SAAS+mM,KAAY,OAANj0B,KAAa,IAAIC,GAAG,CACnC,SAASi0B,KAAMC,KAAM70M,KAAK4N,EAAE,IAAIukK,EAAG,CACnC,SAAS2iC,KAAMC,MAAM/0M,KAAKtE,EAAE,IAAIy2K,EAAG,CACnC,SAAS6iC,KAAMC,KAAMC,GAAIz6M,KAAKuF,KAAK,CACnC,SAASm1M,GAAIz5M,EAAEkS,GAAG4sL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,EAAE,CACnC,SAASwnM,GAAI15M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASynM,GAAI35M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS0nM,GAAI55M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS2nM,GAAI75M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS4nM,GAAI95M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS6nM,GAAI/5M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS8nM,GAAIh6M,EAAEkS,GAAG5N,KAAKvE,EAAEC,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAAS+nM,GAAIj6M,EAAEkS,GAAG5N,KAAKvE,EAAEC,EAAEsE,KAAKiB,EAAE2M,CAAC,CACnC,SAASgoM,GAAIl6M,EAAEkS,GAAG5N,KAAKw2B,EAAE96B,EAAEsE,KAAKirB,EAAErd,CAAC,CACnC,SAASioM,GAAIn6M,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKirB,EAAErd,CAAC,CACnC,SAASkoM,GAAIp6M,EAAEkS,GAAG5N,KAAKtG,EAAEgC,EAAEsE,KAAKqO,EAAET,CAAC,CACnC,SAASmoM,GAAIr6M,EAAEkS,GAAG5N,KAAKiB,EAAEvF,EAAEsE,KAAKtE,EAAEkS,CAAC,CACnC,SAASooM,GAAIt6M,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACnC,SAASqoM,GAAIv6M,EAAEkS,GAAGlS,EAAEhC,EAAE,KAAKw8M,GAAIx6M,EAAEkS,EAAE,CAEnC,SAASuoM,GAAIz6M,EAAEkS,GAAG,OAAOwoM,IAAI16M,EAAEA,EAAEkS,EAAE,CACnC,SAASyoM,GAAI36M,GAAG,OAAO46M,IAAI56M,EAAEuvB,EAAEvvB,EAAEkS,EAAE,CACnC,SAAS2oM,GAAG76M,GAAG,OAAQA,EAAOA,EAAE86M,KAAP,IAAW,CACpC,SAASC,GAAG/6M,GAAG,OAAU,MAAHA,EAAQ,KAAKA,CAAC,CACpC,SAASg7M,GAAGh7M,GAAG,cAAcA,IAAIu0L,GAAG,CACpC,SAAS0mB,GAAGj7M,GAAG,cAAcA,IAAIk7M,GAAG,CACpC,SAASC,GAAGn7M,GAAG,cAAcA,IAAI81L,GAAG,CACpC,SAASslB,GAAGp7M,EAAEkS,GAAG,OAAOlS,EAAEk7K,KAAKmgC,GAAGnpM,EAAE,CACpC,SAASopM,GAAGt7M,EAAEkS,GAAG,OAknEjB,SAAYlS,EAAEkS,GAAS6xK,GAAG7xK,GAAG,KAAMlS,EAAEu7M,MAAe,IAAIC,GAAI79B,GAAf39K,EAAEy7M,KAAkB,KAAM,OAAO,EAAO,OAAO,CAAI,CAlnExEC,CAAG17M,EAAE27M,KAAKzpM,EAAE,CACpC,SAAS0pM,GAAI57M,EAAEkS,GAAG,OAAiB,GAAVg7L,GAAIltM,EAAEkS,EAAK,CAEpC,SAAS2pM,GAAI77M,EAAEkS,GAAG,OAAiB,GAAVg7L,GAAIltM,EAAEkS,EAAK,CACpC,SAAS4pM,GAAI97M,GAAG,MAAO,IAAI6gK,GAAI7gK,GAAGA,EAAE,CACpC,SAAS+7M,GAAI/7M,EAAEkS,GAAG,OAAOlS,EAAEyzD,OAAOvhD,EAAE,CACpC,SAAS8pM,GAAGh8M,GAAS,OAANi8M,GAAGj8M,GAAUA,EAAED,EAAEk/K,IAAI,CACpC,SAASi9B,GAAIl8M,GAAc,OAg7G3B,SAAaA,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAE,IAAI/6B,EAAE,IAAI4lK,GAAI3lK,EAAEA,EAAEA,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAI79K,GAAG,KAAO4S,GAAE,EAAK,IAAImoB,EAAE,IAAI6qI,GAAI3lK,EAAEA,EAAEkS,GAAG4oB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,SAASqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAMz5B,EAAE4gL,GAAIk6B,GAAGn8M,EAAEuF,EAAE62M,GAAG,IAAI5F,GAAIjxM,EAAE2M,MAAM3M,EAAExF,EAAE4S,EAAEpN,EAAExF,EAAE4S,EAAEsvK,GAAIk6B,GAAGn8M,EAAEuF,EAAE62M,GAAG,IAAI5F,GAAIjxM,EAAE2M,KAAc,CAh7G5NmqM,CAAIr8M,EAAEA,EAAEuvB,GAAUvvB,CAAC,CACnC,SAASs8M,GAAGt8M,GAAgB,OAAbu8M,GAAO,MAAHv8M,GAAgBA,CAAC,CACpC,SAASw8M,GAAIx8M,EAAEkS,GAAa,OAAVlS,EAAEA,GAAG,GAAGkS,EAASlS,CAAC,CACpC,SAASy8M,GAAIz8M,EAAEkS,GAAa,OAAVlS,EAAEA,GAAG,GAAGkS,EAASlS,CAAC,CACpC,SAAS08M,GAAI18M,EAAEkS,GAAa,OAAVlS,EAAEA,GAAG,GAAGkS,EAASlS,CAAC,CACpC,SAAS28M,GAAI38M,EAAEkS,GAAa,OAAVlS,EAAEA,GAAG,GAAGkS,EAASlS,CAAC,CACpC,SAAS48M,GAAI58M,EAAEkS,GAAa,OAAVlS,EAAEA,GAAG,GAAGkS,EAASlS,CAAC,CACpC,SAAS68M,GAAI78M,EAAEkS,GAAG,OAAOlS,EAAEA,GAAG,GAAGkS,EAAElS,CAAC,CACpC,SAAS88M,GAAI98M,EAAEkS,GAAG6qM,GAAI/8M,EAAEkS,EAAElS,EAAEA,EAAEA,EAAEA,EAAEA,EAAE,CACpC,SAASg9M,GAAIh9M,EAAEkS,GAAG6qM,GAAI/8M,EAAEkS,EAAElS,EAAEuvB,EAAErd,EAAElS,EAAEuvB,EAAE,CAIpC,SAASk7K,GAAGzqM,EAAEkS,GAAGlS,EAAEgU,EAAEipM,QAAQnkB,GAAI5mL,GAAG,CACpC,SAASgrM,GAAIl9M,EAAEkS,GAAGirM,GAAIp+M,KAAKuF,KAAKtE,EAAEkS,EAAE,CACpC,SAASkrM,GAAIp9M,EAAEkS,GAAGirM,GAAIp+M,KAAKuF,KAAKtE,EAAEkS,EAAE,CACpC,SAASmrM,GAAIr9M,EAAEkS,GAAGirM,GAAIp+M,KAAKuF,KAAKtE,EAAEkS,EAAE,CACpC,SAASorM,GAAIt9M,GAAGyyK,GAAInuK,MAAMi5M,GAAGj5M,KAAKtE,EAAE,CACpC,SAASw9M,GAAIx9M,GAAY,OAATy9M,GAAIz9M,EAAE,GAAU,IAAI,CACpC,SAAS09M,GAAI19M,GAAe,OAAZA,EAAEA,EAAE,EAAEA,EAAEkS,EAAE,EAASlS,CAAC,CACpC,SAAS29M,GAAI39M,EAAEkS,GAAa,OAAVlS,EAAEA,EAAEkS,EAAES,EAAE,EAAS3S,CAAC,CAEpC,SAAS49M,GAAI59M,GAAG,OAu4BhB,SAAaA,GAAS,OAAN69M,KAAaC,GAAIC,IAAI/9M,KAAK89M,GAAIE,IAAIh+M,GAAG,CAv4B9Bi+M,CAAItgC,GAAG39K,EAAE,IAAI,CACpC,SAASk+M,KAAMA,GAAIxpE,EAAIypE,IAAIC,GAAGlY,MAAM,CACpC,SAASmY,KAAMA,GAAI3pE,EAAI4pE,IAAIF,GAAGG,MAAM,CACpC,SAAS7oC,KAAKpxK,KAAK4N,EAAE,IAAIulL,GAAI+mB,GAAG,IAAI,CACpC,SAAS/b,KAAMn+L,KAAK4N,EAAE,EAAE5N,KAAKtE,GAAE,CAAK,CACpC,SAAS4iM,KAAMt+L,KAAK4N,EAAE,EAAE5N,KAAKtE,GAAE,CAAK,CACpC,SAASy+M,GAAGz+M,GAAGsE,KAAKtE,EAAEA,EAAEk6J,GAAGn7J,KAAKuF,KAAK,CACrC,SAASo6M,GAAG1+M,GAAGsE,KAAKtE,EAAEA,EAAEk6J,GAAGn7J,KAAKuF,KAAK,CACrC,SAASq6M,GAAI3+M,EAAEkS,GAAG0sM,GAAI7/M,KAAKuF,KAAKtE,EAAEkS,EAAE,CACpC,SAAS2sM,GAAI7+M,EAAEkS,GAAG4sM,GAAI//M,KAAKuF,KAAKtE,EAAEkS,EAAE,CACpC,SAAS6sM,GAAI/+M,EAAEkS,GAAGkoM,GAAIr7M,KAAKuF,KAAKtE,EAAEkS,EAAE,CACpC,SAAS8sM,GAAIh/M,EAAEkS,GAAG+sM,GAAIlgN,KAAKuF,KAAKtE,EAAEkS,EAAE,CACpC,SAASgtM,GAAIl/M,EAAEkS,GAAGitM,GAAIpgN,KAAKuF,KAAKtE,EAAEkS,EAAE,CACpC,SAAS89K,GAAIhwL,EAAEkS,GAAGm6L,KAAM1V,GAAI2V,IAAItsM,EAAEkS,EAAE,CACpC,SAASktM,GAAIp/M,EAAEkS,GAAG,OAAO4lL,GAAI93L,EAAEA,EAAE,EAAEkS,EAAE,CACrC,SAASmtM,GAAGr/M,EAAEkS,GAAG,OAAOlS,EAAEA,EAAEA,EAAEA,EAAEqiC,GAAGnwB,EAAE,CACrC,SAASkgL,GAAGpyL,EAAEkS,GAAG,OAAO6oM,GAAG/6M,KAAK+6M,GAAG7oM,EAAE,CAIrC,SAASotM,GAAIt/M,EAAEkS,GAAG,OAAOlS,EAAEssB,QAAQpa,EAAE,CACrC,SAASqtM,GAAGv/M,EAAEkS,GAAG,OAAOlS,GAAGkS,EAAE,EAAElS,EAAE,GAAG,CAAC,CACrC,SAASw/M,GAAGx/M,GAAG,OAAOA,EAAE,GAAG,IAAIA,EAAE,GAAGA,CAAC,CAErC,SAASy/M,GAAGz/M,GAAG,OAAO0/M,GAAG1/M,EAAE8T,EAAE9T,EAAEgT,EAAEhT,EAAEyD,EAAE,CACrC,SAASk8M,GAAI3/M,GAAG,OAAOm4L,IAAIt3B,GAAI7gK,GAAGA,GAAG,CAErC,SAAS4/M,GAAI5/M,EAAEkS,GAAG,OAAO2tM,GAAI7/M,EAAE2S,EAAET,EAAES,EAAE,CACrC,SAASmtM,GAAI9/M,GAAG,cAAcA,IAAIk7M,GAAG,CAGrC,SAAS6E,GAAI//M,GAAG,OAAOmmM,GAAInmM,EAAEkS,EAAEA,EAAElS,EAAE,EAAE,CACrC,SAASggN,GAAIhgN,GAAGsE,KAAKtE,EAAEi5M,KAAM30M,KAAK4N,EAAElS,CAAC,CACrC,SAASigN,GAAIjgN,GAAGsE,KAAKtE,EAAEi5M,KAAM30M,KAAK4N,EAAElS,CAAC,CACrC,SAASkgN,GAAIlgN,EAAEkS,GAAc,OAAX6jK,GAAI/1K,EAAEA,EAAEkS,GAAUA,CAAC,CAErC,SAASiuM,GAAIngN,EAAEkS,GAAc,OAAXkuM,GAAIpgN,EAAEA,EAAEkS,GAAUlS,CAAC,CAIrC,SAASqgN,GAAIrgN,EAAEkS,GAAGouM,GAAItgN,EAAE,EAAEA,EAAE9B,OAAOgU,EAAE,CACrC,SAASquM,KAAMp6C,GAAIpnK,KAAKuF,KAAK,IAAIk8M,GAAI,CACrC,SAASC,KAAMC,GAAI3hN,KAAKuF,KAAK,EAAE,EAAE,EAAE,EAAE,CACrC,SAASqkM,KAAMT,GAAInpM,KAAKuF,KAAK,EAAE,EAAE,EAAE,EAAE,CACrC,SAASq8M,GAAI3gN,GAAGsE,KAAKtE,EAAEA,EAAEA,EAAEsE,KAAK4N,EAAElS,EAAEkS,CAAC,CACrC,SAAS2rK,GAAI79K,GAAG,OAAOA,GAAG4gN,KAAK5gN,GAAG6gN,GAAG,CACrC,SAAS/iC,GAAI99K,GAAG,OAAOA,GAAG8gN,KAAK9gN,GAAG+gN,GAAG,CACrC,SAASC,GAAIhhN,GAAG,OAAOA,GAAGihN,KAAKjhN,GAAGkhN,GAAG,CACrC,SAASC,GAAInhN,GAAG,OAAOA,GAAGohN,KAAKphN,GAAGqhN,GAAG,CACrC,SAASC,GAAIthN,GAAG,OAAOA,EAAEuhN,MAAMvhN,EAAEwhN,IAAI,CACrC,SAASC,GAAIzhN,GAAG,OAAO0hN,GAAI/jC,GAAG39K,EAAE,KAAK,CACrC,SAAS2hN,GAAI3hN,GAAG,OAAOogN,GAAI,IAAI1b,GAAI1kM,EAAE,CACrC,SAAS4hN,GAAI5hN,EAAEkS,GAAG,OAAO,IAAI+sM,GAAI/sM,EAAElS,EAAE,CAErC,SAASk/K,GAAIl/K,EAAEkS,EAAEqd,GAAGsyL,GAAI7hN,EAAEkS,GAAG4vM,GAAI9hN,EAAEuvB,EAAE,CACrC,SAASwyL,GAAI/hN,EAAEkS,EAAEqd,GAAGyyL,GAAIhiN,EAAEkS,GAAG+vM,GAAIjiN,EAAEuvB,EAAE,CACrC,SAAS2yL,GAAIliN,EAAEkS,EAAEqd,GAAG4yL,GAAIniN,EAAEkS,GAAGkwM,GAAIpiN,EAAEuvB,EAAE,CACrC,SAAS6vJ,GAAIp/K,EAAEkS,EAAEqd,GAAG8yL,GAAIriN,EAAEkS,GAAGowM,GAAItiN,EAAEuvB,EAAE,CACrC,SAASuvJ,GAAI9+K,EAAEkS,EAAEqd,GAAGgzL,GAAIviN,EAAEkS,GAAGswM,GAAIxiN,EAAEuvB,EAAE,CACrC,SAASkzL,GAAIziN,EAAEkS,GAAGwwM,GAAI1iN,EAAEkS,GAAGywM,GAAI3iN,EAAEA,EAAEmxL,EAAE,CACrC,SAASyxB,GAAI5iN,GAAGk6M,GAAIn7M,KAAKuF,KAAKtE,GAAE,EAAK,CACrC,SAAS6iN,GAAG7iN,EAAEkS,EAAEqd,GAAGuzL,GAAG/jN,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CACtC,SAAS0pK,GAAIj5L,GAAG+iN,MAAMC,GAAIjkN,KAAKuF,KAAKtE,EAAE,CACtC,SAASijN,KAAMvV,GAAI3uM,KAAKuF,KAAK,OAAO,EAAE,CACtC,SAAS4+M,KAAMxV,GAAI3uM,KAAKuF,KAAK,OAAO,EAAE,CACtC,SAASiuK,GAAIvyK,GAAGA,EAAEuvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,EAAE,CACtC,SAAS9L,GAAIryK,GAAGA,EAAEA,EAAEi+K,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,EAAE,CACtC,SAASglC,GAAInjN,GAAGojN,GAAIpjN,EAAEqjN,KAAK,IAAI17C,GAAI3nK,GAAG,CACtC,SAASsjN,GAAItjN,GAAG,OAAU,MAAHA,EAAQujN,GAAGvjN,GAAG,CAAC,CAKtC,SAASwjN,GAAGxjN,GAAG,OAyhBf,SAAYA,EAAEkS,GAAe,OAAZ6xK,GAAG/jL,GAAG+jL,GAAG7xK,GAAU,IAAIwsL,GAAG1+L,EAAEkS,EAAE,CAzhBzBuxM,CAAGzjN,EAAEkS,EAAEypM,KAAK37M,EAAEA,EAAE,CAItC,SAAS0jN,GAAI1jN,EAAEkS,GAAG0sM,GAAI7/M,KAAKuF,KAAKtE,EAAEkS,EAAEA,EAAE,CACtC,SAASyxM,GAAI3jN,GAAG0gN,GAAI3hN,KAAKuF,KAAKtE,EAAEA,EAAEA,EAAEA,EAAE,CACtC,SAAS4jN,GAAI5jN,GAAe,OAAZA,EAAEkS,GAAG2xM,IAAI7jN,GAAUA,EAAEA,CAAC,CACtC,SAAS8jN,GAAI9jN,GAAe,OAAZA,EAAEkS,GAAG2xM,IAAI7jN,GAAUA,EAAEuvB,CAAC,CAEtC,SAASw0L,GAAI/jN,EAAEkS,EAAEqd,GAAa,OAAVo3K,GAAG3mM,EAAEkS,EAAEqd,GAAUA,CAAC,CACtC,SAASy0L,GAAIhkN,EAAEkS,EAAEqd,GAAGo3K,GAAG3mM,EAAEuvB,EAAErd,EAAES,GAAGT,EAAES,EAAE4c,EAAE,CAKtC,SAAS00L,GAAIjkN,GAAGkkN,MAAMhyC,GAAInzK,KAAKuF,KAAKtE,EAAE,CAEtC,SAASmkN,KAAMA,GAAIzvE,EAAI0vE,IAAI,IAAIC,GAAI/7K,IAAG,CACtC,SAAS0hJ,KAAMA,GAAIt1C,EAAI,IAAI4vE,GAAI,IAAIhyC,EAAG,CACtC,SAASgyC,KAAM,IAAI9xC,GAAI,IAAIA,GAAI,IAAIA,EAAG,CACtC,SAAS+xC,KAAKA,GAAG7vE,EAAIihC,KAAK6uC,IAAG,IAAIhyC,EAAG,CACpC,SAASiyC,KAAKA,GAAG/vE,EAAIzB,EAAK3/H,KAAKoN,IAAI,EAAE,CACrC,SAASgkM,KAAMA,GAAIhwE,EAAS22D,KAALsZ,IAAWrZ,GAAI,CAKtC,SAASkW,GAAGxhN,GAAGsE,KAAKtE,EAAEA,EAAE4kN,GAAG7lN,KAAKuF,KAAKtE,EAAE,CACvC,SAAS04B,GAAG14B,GAAGsE,KAAKtE,EAAEA,EAAEu/L,GAAGxgM,KAAKuF,KAAKtE,EAAE,CACvC,SAAS6kN,GAAG7kN,GAAGsE,KAAKtE,EAAEA,EAAEu/L,GAAGxgM,KAAKuF,KAAKtE,EAAE,CACvC,SAAS8kN,GAAI9kN,EAAEkS,GAAG6yM,GAAI/kN,EAAEuvB,EAAEvvB,EAAEuvB,EAAErxB,OAAOgU,EAAE,CACvC,SAAS8yM,GAAIhlN,GAAG,OAAOA,EAAEA,EAAEA,EAAEuvB,EAAEA,EAAErxB,MAAM,CACvC,SAAS+mN,GAAIjlN,GAAG,OAAOA,EAAEA,EAAEA,EAAEuvB,EAAEvvB,EAAE9B,MAAM,CACvC,SAASgnN,GAAIllN,EAAEkS,GAAG,OAAOlS,EAAEA,EAAEA,EAAEkS,EAAEA,EAAEizM,IAAI,CACvC,SAAStF,GAAI7/M,EAAEkS,GAAG,OAAOlS,EAAEkS,GAAG,EAAElS,EAAEkS,EAAE,EAAE,CAAC,CACvC,SAASkzM,GAAIplN,EAAEkS,GAAG,OAAOg7L,GAAIltM,EAAEkS,GAAG,EAAElS,EAAEkS,CAAC,CACvC,SAASwtM,GAAG1/M,EAAEkS,EAAEqd,GAAG,MAAO,CAACzb,EAAE9T,EAAEgT,EAAEd,EAAEzO,EAAE8rB,EAAE,CACvC,SAAS81L,GAAIrlN,EAAEkS,GAAQ,MAALlS,EAAEA,GAAS84M,GAAI5mM,EAAElS,EAAEA,EAAE,CACvC,SAASwhM,GAAIxhM,GAAGA,EAAEA,EAAE,IAAI40I,EAAI50I,EAAEuvB,EAAE,IAAIqlH,CAAG,CACvC,SAAS0wE,GAAItlN,GAAGsE,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAE,IAAIsyK,EAAG,CACvC,SAASizC,GAAIvlN,GAAGsE,KAAK4N,EAAE,IAAIunI,GAAIn1I,KAAKtE,EAAEA,CAAC,CACvC,SAAS2oL,GAAI3oL,GAAGwlN,GAAIzmN,KAAKuF,MAAMA,KAAKtE,EAAEA,CAAC,CACvC,SAASylN,KAAM/X,GAAI3uM,KAAKuF,KAAK,QAAQ,EAAE,CACvC,SAASohN,KAAMC,MAAMrhN,KAAKtE,EAAE,IAAIs7L,IAAIsqB,IAAG,CAMvC,SAASC,GAAI7lN,EAAEkS,EAAEqd,GAAG,OAAOu2L,IAAI5zM,EAAEqd,EAAEvvB,EAAEuvB,EAAE,CACvC,SAASw2L,GAAI/lN,GAAG,OAAO,IAAIi1M,GAAIj1M,EAAEuvB,EAAEvvB,EAAED,EAAE,CACvC,SAASimN,GAAIhmN,GAAG,OAAO,IAAIi1M,GAAIj1M,EAAEuvB,EAAEvvB,EAAED,EAAE,CACvC,SAASkmN,GAAIjmN,GAAG,OAAO,IAAIi1M,GAAIj1M,EAAEA,EAAEA,EAAEkS,EAAE,CACvC,SAASg0M,GAAIlmN,EAAEkS,GAAG,OA0hIlB,SAAYlS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,GAAGyb,IAAIA,EA79D9C,SAAYvvB,GAAG,IAAIkS,EAA4E,OAA1EA,EAAE,IAAI4hI,EAAG5hI,EAAElS,EAAEA,EAAEkS,EAAEA,EA8BtC,SAAYlS,GAAG,IAAIkS,EAAE,GAAM,GAAHlS,EAAM,MAAO,UAAaA,EAAE,GAAGA,GAAGA,EAAEkS,EAAE,YAAgBA,EAAE,WAAW,OAAOA,EAAEi0M,GAAGnmN,EAAE,CA9BjEomN,CAAGpmN,GAAGkS,EAAEqd,EAAE0uJ,GAAGoS,IAAGwD,IAAI,EAAE,EAAE,EAAE,GAAG3hL,EAAEqd,EAAE,GAAG82L,GAAGrmN,GAAGkS,EAAEqd,EAAE,GAAG82L,GAAGrmN,GAAUkS,CAAC,CA69DvDo0M,CAAGp0M,EAAE8B,EAAEg3L,sBAAsBzlM,EAAgC,KAA7B2M,EAAE8B,EAAEg3L,oBAAoBz7K,EAAEvvB,GAASyD,EAAE,IAAI8iN,GAAG7b,GAAIE,GAAI14L,EAAE8B,EAAEsnG,WAAW/1G,IAAIvH,EAAEyF,EAAKA,EAAEuQ,EAAEg3L,qBAAqB94L,EAAE8B,EAAEg3L,sBAAqBzlM,EAAE,EAAGA,GAAG,MAAWA,GAAG,MAAUvH,EAAE,IAAIuoN,GAAG7b,GAAIE,GAAI14L,EAAE8B,EAAEsnG,WAAW/1G,KAA2B,IAAvBlE,EAAE,IAAIojL,GAAIryK,EAAEpS,EAAEA,EAAE9B,OAAW48B,EAAE,EAAEA,EAAE1oB,GAAiB,IAAbrS,EAAEm5L,GAAIl5L,EAAEA,EAAE86B,KAAS,IAAI/6B,GAAG,KAAKA,GAAG,IAAIA,GAAG,GAAG,CAAC,IAAI4S,EAAEmoB,EAAE,EAAEnoB,EAAEP,GAAG8mL,GAAIl5L,EAAEA,EAAE2S,IAAI5S,IAAI4S,GAAG6zM,IAAGnlN,EAAEtB,EAAE4S,EAAEmoB,EAAEr3B,EAAEzF,EAAEuxB,GAAGuL,EAAEnoB,CAAC,MAAM,GAAM,IAAH5S,EAAM,CAAK,KAAF+6B,EAAO1oB,GAAe,IAAZ8mL,GAAIl5L,EAAEA,EAAE86B,GAAO,CAACz5B,EAAErB,GAAG,MAAM86B,EAAE,QAAQ,CAAS,IAARhnB,GAAE,GAAaA,GAAE,CAAK,IAAJnB,EAAEmoB,EAAQnoB,EAAEP,GAAe,IAAZ8mL,GAAIl5L,EAAEA,EAAE2S,MAAUA,EAAE,GAAGA,GAAGP,EAAG,MAAM8gK,GAAI,IAAI2O,GAAI,uBAAuBlvK,EAAE,EAAEP,GAAiB,IAAd8mL,GAAIl5L,EAAEA,EAAE2S,EAAE,KAASA,EAAGmB,GAAE,EAAM8oM,GAAIv7M,EAAEy2L,GAAI93L,EAAEA,EAAE86B,EAAEnoB,IAAImoB,EAAEnoB,EAAE,CAAC,CAAC,MAAMtR,EAAErB,GAAGyjG,OAAOgjH,aAAa1mN,KAAK+6B,EAAG,OAAOz5B,EAAErB,CAAC,CA1hI7pB0mN,CAAG1mN,EAAEA,EAAEkS,EAAE,KAAK,CAEvC,SAASy0M,GAAI3mN,GAAG4mN,GAAI5mN,EAAE,MAAM6mN,GAAI7mN,EAAE,KAAK,CACvC,SAAS6rM,KAAMsT,GAAIpgN,KAAKuF,KAAK,KAAK,KAAK,CACvC,SAAS0nM,KAAM8a,GAAI/nN,KAAKuF,KAAK,KAAK,KAAK,CACvC,SAASyiN,GAAI/mN,GAAGsE,KAAKtE,EAAEA,EAAEwyK,GAAIzzK,KAAKuF,KAAK,CACvC,SAAS0iN,GAAGhnN,GAAGsE,KAAK4N,GAAG+0M,KAAM,IAAIvhD,GAAI1lK,GAAG,CACxC,SAASknN,GAAGlnN,GAAGA,EAAEoS,EAAE6rK,GAAGkpC,IAAGtzB,IAAI,IAAI,EAAE,EAAE,EAAE,CAGvC,SAASuzB,GAAIpnN,EAAEkS,GAAGm1M,IAAIrnN,GAAGA,EAAE6hM,GAAGlkB,GAAGzrK,EAAE,IAAI,CACvC,SAASo1M,GAAItnN,EAAEkS,GAAG,OA28HlB,SAAalS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAE,GAAW,GAARkuB,EAAE0vJ,KAAS,OAAO,EAAoD,GAA3CktB,KAAH1oM,EAASk6K,GAAGzrK,EAAE,IAAIq1M,KAAMzsL,EAAEr3B,EAAE8rB,EAAE,IAAI+4J,GAAI/4J,EAAE0vJ,MAASuoC,IAAIxnN,EAAEuF,EAAE2M,IAAI,GAAGA,EAAEu1M,KAAM,IAAIr1M,EAAEmd,EAAEosL,KAAKvpM,EAAEmpM,MAAoBmM,IAAI1nN,EAAEkS,EAAnBlU,EAAEoU,EAAEqpM,KAAmB5xB,GAAG33K,EAAE,KAAwB,IAAlByrK,GAAGzrK,EAAE,IAAIsjK,GAAGmyC,QAAUpiN,EAAEqiN,GAAI11M,EAAElU,GAAG88B,EAAEmlK,GAAG16L,IAAIu1B,EAAE+sL,GAAGtiN,SAAU,IAAI9B,EAAG,IAAI2O,EAAEmd,EAAEosL,KAAKvpM,EAAEmpM,MAAgBh2M,EAAEqiN,GAAI11M,EAAflU,EAAEoU,EAAEqpM,MAAgB3gL,EAAE+sL,GAAGtiN,OAAS,CAAC,GAAGgqB,EAAE0vJ,KAAK,EAAG,MAAM/L,GAAI,IAAI2O,GAAIimC,MAAsC,IAAhCzmN,EAAE0mN,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAGnS,EAAE49K,GAAG39K,EAAE2S,EAAE,KAASA,EAAE,EAAEA,EAAE3S,EAAEhC,IAAI2U,EAAU,GAAPpN,EAAExF,EAAE4S,GAAMtR,EAAE4mN,GAAG1iN,EAAE2iN,MAAM,CAAC,GAAG34L,EAAE0wK,GAAGx8L,EAAE8B,EAAEA,EAAEu1M,MAAO,OAAO,EAAW,IAAI1oM,EAAEmd,EAAEosL,KAAKvpM,EAAEmpM,MAAOv9M,EAAEoU,EAAEqpM,KAAK99B,GAAGwqC,IAAInoN,EAAE2S,EAAElP,EAAEk6K,GAAG3/K,EAAE,IAAI4pN,GAAI11M,EAAElU,IAAI,IAAI,OAAO,CAAK,CAAMyF,IAAG8B,EAAEqiN,GAAI11M,EAAEqd,EAAEosL,KAAKF,MAAM3gL,EAAE+sL,GAAGtiN,GAAG,CAAC,OAAO6iN,GAAIpoN,EAAE86B,EAAE,CA38H/jButL,CAAIroN,EAAEuvB,EAAEvvB,EAAEkS,EAAEA,EAAE,CAEvC,SAASo2M,GAAGtoN,EAAEkS,GAAG,OAAsB,GA4iEvC,SAAYlS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAoB,IAAlBwoN,GAAGr2M,EAAE,aAAiBnS,EAAE,EAAEC,EAAEu7M,KAAKx7M,IAAc,GAATwvB,EAAEvvB,EAAEy7M,KAAQvpM,EAAEotL,GAAG/vK,GAAI,OAAOxvB,EAAG,OAAQ,CAAC,CA5iE/EyoN,CAAGxoN,EAAE27M,KAAKzpM,EAAM,CACxC,SAASu2M,GAAIzoN,EAAEkS,GAAG,OAAkB,MAAXlS,EAAEA,EAAE0oN,GAAGx2M,EAAQ,CACxC,SAASy2M,GAAG3oN,GAAG,OAAOA,EAAEu7M,KAAKv7M,EAAEy7M,KAAK,IAAI,CACxC,SAASmN,GAAI5oN,GAAG,OAAO6oN,IAAI7oN,EAAE,EAAEA,EAAE9B,OAAO,CACxC,SAAS2rL,GAAG7pL,EAAEkS,GAAG,OAAU,MAAHlS,GAAS8oN,IAAG9oN,EAAEkS,EAAE,CAExC,SAAS62M,GAAI/oN,EAAEkS,GAAMlS,EAAEuvB,IAAGy5L,GAAI92M,GAAG+2M,GAAI/2M,GAAG,CAExC,SAASg3M,GAAIlpN,EAAEkS,EAAEqd,GAAc,OAw/H/B,SAAavvB,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAIr3B,EAAEzF,EAAEoU,EAAE/Q,EAAI2R,EAAY,IAAVZ,EAAE,IAAIkgK,GAAQt0K,EAAE,IAAI2nK,GAAIzzJ,EAAElS,GAAGhC,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAyB,IAAI8U,EAAEm2M,GAApBxrC,GAAGC,GAAI5/K,GAAG,KAAiByhL,MAAMC,MAAMi8B,KAAK3oM,EAAEuoM,MAAuB,IAAIh2M,EAAE,IAAIogK,GAAxBgY,GAAG3qK,EAAEyoM,KAAK,IAAoB9oM,GAAGpN,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,SAA6BkrN,GAApBrpN,EAAE49K,GAAGC,GAAIr4K,GAAG,MAAgBxF,EAAEwvB,EAAEvxB,EAAEuxB,GAAGxvB,EAAEA,EAAE/B,EAAEuxB,GAAG65L,GAAIrpN,IAAIA,EAAEA,EAAE/B,EAAEuxB,GAAGA,IAAYnd,EAAEmd,EAAEnd,EAAEmd,EAAErxB,QAAQ6B,GAAI,IAAI0D,EAAE4lN,GAAG95L,EAAEvvB,GAAG27M,KAAKl4M,EAAE83M,MAAuB,IAAIvoM,EAAEm2M,GAApBxrC,GAAGl6K,EAAEg4M,KAAK,KAAiBh8B,MAAMG,MAAM+7B,KAAK3oM,EAAEuoM,MAAuB,IAAIh2M,EAAE,IAAIogK,GAAxBgY,GAAG3qK,EAAEyoM,KAAK,IAAoBl2M,GAAGA,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAyB,IAAIkrN,GAApBrpN,EAAE49K,GAAGC,GAAIr4K,GAAG,MAAgBxF,EAAEwvB,EAAEvxB,EAAEuxB,GAAGxvB,EAAEA,EAAE/B,EAAEuxB,KAAG65L,GAAIrpN,IAAIA,EAAEwvB,EAAEvxB,EAAEuxB,GAAGrd,EAA/C,CAA2H,IAArCo3M,IAA3BjoN,EAAE,IAAIkoN,GAAIn3M,EAAEA,EAAEmd,EAAErxB,SAAiBgU,EAAE,GAAX4oB,EAAc6iJ,GAAGt8K,EAAErB,EAAEq7M,GAAGh6M,EAAEkuB,IAAIluB,EAAE6Q,GAAG,IAAW4oB,GAAG/6B,GAAGsB,EAAE6Q,EAAE,GAAGlS,EAAEA,EAAE86B,EAAE13B,IAAG,EAAKpD,EAAEA,EAAED,EAAEqD,IAAG,EAAQkmN,GAAIjoN,EAAE6Q,EAAE,GAAX4oB,EAAc6iJ,GAAGt8K,EAAErB,EAAEq7M,GAAGh6M,EAAEkuB,IAAIluB,EAAE6Q,GAAG,IAAK7Q,EAAE6Q,EAAE,GAAGs3M,GAAInoN,EAAnK,CAAwK,CAx/H/oBooN,CAAIzpN,EAAEkS,EAAEqd,GAAUA,CAAC,CACvC,SAASm6L,GAAI1pN,EAAEkS,EAAEqd,GAAGvvB,EAAEA,EAAI,KAAFkS,EAAOlS,EAAEkS,EAAEqd,EAAEo6L,GAAG,CACxC,SAASC,GAAI5pN,EAAEkS,EAAEqd,GAAG,OAAOvvB,EAAEA,EAAEkS,EAAES,GAAG4c,EAAE5c,EAAE,CACxC,SAASk3M,GAAI7pN,EAAEkS,GAAG,OAAOlS,EAAEA,EAAEkS,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,EAAE,CACxC,SAAS0mN,GAAI9pN,EAAEkS,GAAG,OAAOlS,EAAEuF,EAAE2M,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,EAAE,CACxC,SAAS2mN,GAAI/pN,EAAEkS,GAAG,OAAOlS,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,EAAE,CACxC,SAAS4mN,GAAIhqN,EAAEkS,GAAG,OAAOlS,EAAEoS,EAAEF,EAAE9O,GAu4G/B,SAAapD,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAU,IAAR2M,EAAE,EAAEqd,EAAE,EAAMhqB,EAAE,IAAIogK,GAAI3lK,EAAEoS,GAAG7M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAqJ,GAA5HgU,EAAE+3M,GAAIvf,GAAIx4L,EAAEg4M,GAAIC,GAAI,IAAIC,GAAI,KAAK,IAAI7c,IAArDxtM,EAAE49K,GAAGC,GAAIr4K,GAAG,KAA+CA,EAAE,KAAK,IAAI2kJ,OAAQ36H,EAAE06L,GAAIvf,GAAIn7K,EAAE26L,GAAIC,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAIxtM,EAAE4S,EAAE,KAAK,IAAIw3I,OAAWj4I,EAAE,GAAGqd,EAAE,EAAG,OAAO,EAAG,GAAGrd,EAAEqd,GAAG,EAAG,OAAO,EAAE,OAAO,CAAC,CAv4GvO86L,CAAIn4M,EAAE,CAMxC,SAASo4M,GAAItqN,EAAEkS,GAAiB,OAAdlS,EAAEA,GAAGkS,EAAElS,EAAEkS,GAAGA,EAASlS,CAAC,CACxC,SAASuqN,GAAIvqN,EAAEkS,EAAEqd,GAAe,OAAZo3K,GAAG3mM,EAAE2S,EAAET,EAAEqd,GAAUA,CAAC,CAGxC,SAASi7L,GAAIxqN,GAAGA,EAAEA,EAAE29K,GAAG8sC,GAAIzqN,EAAEkS,EAAElS,EAAE,GAAG,IAAI,CACxC,SAAS0qN,GAAI1qN,GAAGA,EAAEA,EAAE29K,GAAG8sC,GAAIzqN,EAAEkS,EAAElS,EAAE,GAAG,IAAI,CACxC,SAAS2qN,GAAI3qN,GAAG4qN,GAAI5qN,EAAE6qN,KAAKC,IAAI9qN,EAskI/B,SAAaA,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAa,OAAX8vL,GAAI5qN,EAAE6qN,OAAc7qN,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,GAAGlU,IAAIgC,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,GAAGvxB,GAAG,KAAK,EAAE,MAAMk1K,GAAI,IAAI2O,GAAI,sDAAsD,KAAK,EAAE,OAA8C,KAArC7hL,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,GAAGlU,EAAK8/M,GAAIkN,IAAIrtC,GAAG0O,KAAMrsL,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,GAAG,GAAG,MAAMuuL,GAAIkN,IAAIrtC,GAAG0O,KAAMrsL,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,GAAG,GAAG,MAAO,GAA0C,KAArClS,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,GAAGlU,GAA6C,KAArCgC,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,GAAGvxB,EAAK,CAAmH,GAAlHuH,EAAEylN,IAAIrtC,GAAG0O,KAAMrsL,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,GAAG,GAAG,KAAK4oB,EAAEkwL,IAAIrtC,GAAG0O,KAAMrsL,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,GAAG,GAAG,KAAQuuL,GAAIv4M,IAAIu4M,GAAIhjL,GAAI,OAAOgjL,GAAIv4M,GAAQ,GAAGA,GAAGu4M,GAAIhjL,GAAI,OAAOv1B,EAAO,GAAGu1B,GAAGgjL,GAAIv4M,GAAI,OAAOu1B,CAAE,CAAC/6B,EAAEkrN,GAAG9kH,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,GAAGn+K,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,KAAKlS,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,OAAOrd,EAAE84M,IAAIrtC,GAAGwtC,GAAGprN,GAAG,KAAK,KAAMqrN,IAAGrrN,IAAwB,IAApBwvB,EAAEy7L,IAAIrtC,GAAGwtC,GAAGprN,GAAG,OAAWmS,IAAIm5M,GAAI97L,EAAErd,GAAI,GAAG4rM,GAAIvuL,IAAIuuL,GAAI5rM,GAAIA,EAAE4rM,GAAIvuL,QAAmB,KAAXrd,EAAEo5M,IAAIp5M,EAAEqd,IAAU,OAAO,KAAQ,OAAOrd,CAAC,CAtkI33Bq5M,CAAIvrN,GAAG,CACxC,SAASw9K,KAAMA,GAAI9oC,EAAI82E,IAAI,IAAIjuC,GAAI,KAAK,CACxC,SAASkuC,MAAMA,GAAI/2E,KAAUg3E,IAAI,IAAIj2E,CAAG,CACxC,SAAS8kC,KAAMj2K,KAAKkxK,IAAI,IAAIlxK,KAAKkxK,IAAI,GAAG,CACxC,SAASuJ,GAAI/+K,GAAGsE,KAAKtG,EAAEgC,EAAEsE,KAAKw2B,EAAEx2B,KAAKtG,EAAEoU,CAAC,CACxC,SAAS4sK,GAAIh/K,EAAEkS,EAAEqd,GAAGo8L,GAAI5sN,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CACxC,SAASq8L,GAAI5rN,EAAEkS,EAAEqd,GAAGyvJ,GAAIjgL,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CACxC,SAASs8L,GAAI7rN,EAAEkS,EAAEqd,GAAGyvJ,GAAIjgL,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CACxC,SAASu8L,GAAI9rN,EAAEkS,EAAEqd,GAAGq8L,GAAI7sN,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CACxC,SAASw8L,GAAI/rN,EAAEkS,EAAEqd,GAAGo8L,GAAI5sN,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CACxC,SAASy8L,GAAIhsN,EAAEkS,EAAEqd,GAAGo8L,GAAI5sN,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CACxC,SAAS08L,GAAIjsN,EAAEkS,EAAEqd,GAAG28L,GAAIntN,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CACxC,SAAS48L,GAAInsN,EAAEkS,EAAEqd,GAAG28L,GAAIntN,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CACxC,SAAS68L,GAAIpsN,EAAEkS,EAAEqd,GAAG08L,GAAIltN,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CACxC,SAAS88L,GAAIrsN,EAAEkS,EAAEqd,GAAGw8L,GAAIhtN,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CACxC,SAASwuK,GAAG/9L,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEu/L,GAAGxgM,KAAKuF,KAAK4N,EAAE,CACzC,SAASo6M,GAAGtsN,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAE+iL,GAAGhkL,KAAKuF,KAAK4N,EAAE,CACzC,SAAS4a,GAAG9sB,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAE+iL,GAAGhkL,KAAKuF,KAAK4N,EAAE,CACzC,SAASq6M,GAAGvsN,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAE+iL,GAAGhkL,KAAKuF,KAAK4N,EAAE,CACzC,SAASs6M,GAAGxsN,GAAGsE,KAAKtE,EAAEA,EAAE8hK,GAAG/iK,KAAKuF,KAAKtE,EAAED,EAAE,CACzC,SAAS0sN,GAAIzsN,GAAGsE,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAEsE,KAAKirB,EAAEvvB,CAAC,CACxC,SAAS0sN,GAAG1sN,EAAEkS,GAAG5N,KAAKtE,EAAEkS,EAAE6wK,GAAGhkL,KAAKuF,KAAKtE,EAAE,CACzC,SAAS2sN,GAAG3sN,EAAEkS,GAAG5N,KAAKtE,EAAEkS,EAAEsqK,GAAGz9K,KAAKuF,KAAKtE,EAAE,CACzC,SAASu8C,GAAGv8C,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEw8K,GAAGz9K,KAAKuF,KAAK4N,EAAE,CAEzC,SAAS06M,GAAG5sN,EAAEkS,GAAG,OAuxEjB,SAAYA,EAAEqd,EAAExvB,GAAS,KAzOzB,SAAYC,EAAEkS,EAAEqd,GAAS,GAANw0J,GAAG7xK,GAAMqd,EAAEgsL,KAAwB,IAAlBsB,GAAI3qM,EAAE26M,GAAGt9L,EAAEksL,OAAalsL,EAAEgsL,MAAMsB,GAAI3qM,EAAElS,EAAEA,GAAG68M,GAAI3qM,EAAE26M,GAAGt9L,EAAEksL,MAAgB,CAyO7EqR,CAAG56M,EAAEqd,EAAExvB,EAAE,CAAC,MAAMC,GAAY,MAAG6pL,GAAZ7pL,EAAE8pL,GAAI9pL,GAAW,KAAgBkzK,GAAI,IAAI65C,GAAhB/sN,IAAmCkzK,GAAIlzK,EAAE,CAAC,OAAOuvB,CAAC,CAvxEnGy9L,CAAGhtN,EAAE,IAAIwkL,GAAItyK,GAAGlS,CAAC,CACzC,SAASitN,GAAGjtN,EAAEkS,GAAS,OAAN6xK,GAAG7xK,GAAU,IAAIg7M,GAAGltN,EAAEkS,EAAE,CACzC,SAASg7M,GAAGltN,EAAEkS,GAAG5N,KAAKtE,EAAEkS,EAAE8qK,GAAGj+K,KAAKuF,KAAKtE,EAAE,CACzC,SAASmtN,GAAGntN,GAAGsE,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEsE,KAAK4N,EAAElS,EAAEuF,CAAC,CACzC,SAAS6nN,GAAGptN,GAAGA,EAAEkS,EAAE6xK,OAAO/jL,EAAED,EAAE+6B,EAAE/6B,EAAEmvE,GAAGlvE,EAAED,EAAE,CACzC,SAASstN,GAAGrtN,GAAGshK,GAAGviK,KAAKuF,KAAKq5K,GAAGoG,GAAG/jL,GAAG,IAAI,CACzC,SAASs7C,GAAGt7C,GAAGshK,GAAGviK,KAAKuF,KAAKq5K,GAAGoG,GAAG/jL,GAAG,IAAI,CACzC,SAASoM,KAAK0yL,GAAG//L,KAAKuF,KAAK,WAAW,EAAE,CACxC,SAASg7L,GAAGt/L,GAAG,IAAIA,EAAG,MAAMkzK,GAAI,IAAI6B,GAAK,CACzC,SAASu4C,GAAGttN,GAAG,IAAIA,EAAG,MAAMkzK,GAAI,IAAI8B,GAAK,CACzC,SAASu4C,GAAGvtN,GAAG,IAAIA,EAAG,MAAMkzK,GAAI,IAAImC,GAAK,CACzC,SAASm4C,KAAMA,GAAI94E,EAAIu3D,KAAMwhB,IAAI,IAAI/sD,EAAG,CACxC,SAASgtD,KAAMA,GAAIh5E,EAAIi5E,KAAI,EAAMC,KAAI,CAAI,CACzC,SAASC,GAAI7tN,GAAG0kK,GAAI3lK,KAAKuF,MAAMu8J,GAAI7gK,GAAGA,GAAG,CACzC,SAAS8tN,GAAI9tN,GAAG0kK,GAAI3lK,KAAKuF,MAAMu8J,GAAI7gK,GAAGA,GAAG,CACzC,SAAS6kL,GAAI7kL,GAAGqlK,GAAItmK,KAAKuF,KAAKtE,GAAGsE,KAAKtE,EAAEA,CAAC,CACzC,SAAS+tN,GAAI/tN,GAAGslK,GAAIvmK,KAAKuF,KAAKtE,GAAGsE,KAAKtE,EAAEA,CAAC,CACzC,SAASguN,GAAIhuN,GAAG2kL,GAAI5lL,KAAKuF,KAAKtE,GAAGsE,KAAKtE,EAAEA,CAAC,CACzC,SAAS00K,KAAKwyC,GAAG5iN,MAAM2pN,GAAG3pN,MAAMA,KAAKsD,IAAI,CACzC,SAASsmN,GAAGluN,EAAEkS,GAAG5N,KAAKtE,EAAEkS,EAAE8qK,GAAGj+K,KAAKuF,KAAKtE,EAAE,CACzC,SAASmuN,GAAGnuN,EAAEkS,GAAG,OAAO,IAAIk8M,IAAGpuN,EAAEA,EAAEA,EAAEkS,EAAEA,EAAE,CACzC,SAASm8M,GAAIruN,EAAEkS,GAAG,OAAOlS,EAAEsuN,YAAYp8M,EAAE,CACzC,SAASq8M,GAAIvuN,EAAEkS,EAAEqd,GAAG,OAAOvvB,EAAEssB,QAAQpa,EAAEqd,EAAE,CACzC,SAASi/L,GAAIxuN,GAAG,OAAU,MAAHA,EAAQ+3L,IAAI02B,GAAIzuN,EAAE,CAEzC,SAAS0uN,GAAI1uN,GAAG,OAAY,MAALA,EAAEA,EAAQA,EAAEA,EAAE,IAAI,CAEzC,SAAS2uN,GAAI3uN,EAAEkS,GAAG,OAAmB,MAAZ08M,GAAI5uN,EAAEA,EAAEkS,EAAQ,CACzC,SAASsoL,GAAIx6L,EAAEkS,GAAG,QAASA,GAAGlS,EAAEkS,EAAEA,EAAES,IAAIT,CAAC,CACzC,SAAS28M,GAAI7uN,GAAG,OAAOA,EAAE8uN,KAAK9uN,EAAE8uN,KAAKC,IAAI,CAEzC,SAASC,GAAIhvN,EAAEkS,GAAgB,OAAb6jK,GAAI7jK,EAAElS,EAAEA,EAAEA,GAAUA,EAAEA,CAAC,CACzC,SAASivN,GAAIjvN,EAAEkS,GAAgB,OAAb6jK,GAAI7jK,EAAEA,EAAElS,EAAEA,GAAUA,EAAEA,CAAC,CACzC,SAASkvN,GAAIlvN,EAAEkS,GAAgB,OAAb6jK,GAAI7jK,EAAElS,EAAEA,EAAEA,GAAUA,EAAEA,CAAC,CACzC,SAASmvN,GAAInvN,GAAkB,OAAfspN,GAAS,MAALtpN,EAAEA,GAAgBA,EAAEA,CAAC,CACzC,SAASovN,GAAIpvN,GAAGmmK,GAAIpnK,KAAKuF,KAAK,IAAI+qN,GAAIrvN,GAAG,CACzC,SAASsvN,GAAItvN,EAAEkS,GAAGq9M,IAAIxwN,KAAKuF,KAAKtE,EAAEkS,EAAE,KAAK,CACzC,SAASs9M,GAAIxvN,GAAGsE,KAAKtE,EAAEA,EAAEolK,GAAIrmK,KAAKuF,KAAKtE,EAAE,CACzC,SAASyvN,KAAMA,GAAI/6E,EAAIg7E,IAAI,IAAI9Q,GAAI+Q,IAAI,EAAE,CACzC,SAASC,GAAI5vN,EAAEkS,GAAS,QAAJlS,EAAEkS,EAAS6jK,GAAI/1K,EAAEA,EAAEkS,EAAE,CACzC,SAAS29M,GAAI7vN,EAAEkS,GAAS,QAAJlS,EAAEkS,EAAS49M,GAAI9vN,EAAEA,EAAEkS,EAAE,CAIzC,SAAS69M,GAAI/vN,EAAEkS,GAAG,OAAOyrK,GAAG0iB,GAAGrgM,EAAEkS,EAAEA,GAAG,GAAG,CAGzC,SAAS89M,GAAIhwN,GAAG,OAAOglN,GAAIhlN,EAAEA,IAAIglN,GAAIhlN,EAAEkS,EAAE,CAEzC,SAAS+9M,GAAIjwN,EAAEkS,EAAEqd,GAAG,OAAO2gM,GAAIlwN,EAAEkS,EAAEqd,EAAEvvB,EAAEuvB,EAAE,CACzC,SAAS4gM,GAAInwN,EAAEkS,EAAEqd,GAAGouJ,GAAGyyC,GAAIpwN,EAAEkS,GAAG,IAAI21M,GAAGt4L,EAAE,CAEzC,SAAS4vL,GAAIn/M,EAAEkS,GAAGy5L,KAAMrnM,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACzC,SAAS40M,GAAI9mN,EAAEkS,GAAG45L,KAAMxnM,KAAK4N,EAAElS,EAAEsE,KAAKirB,EAAErd,CAAC,CACzC,SAASm+M,GAAIrwN,EAAEkS,GAAGwvK,KAAMp9K,KAAKw2B,EAAE5oB,EAAE5N,KAAKvE,EAAEC,CAAC,CACzC,SAASgjL,GAAGhjL,EAAEkS,GAAGo+M,GAAGp+M,EAAElS,GAAGsE,KAAKvE,EAAEC,EAAEsE,KAAKirB,EAAErd,CAAC,CAC1C,SAASq+M,GAAIvwN,GAAG,IAAIkS,EAAEA,EAAElS,EAAEA,EAAEA,EAAEA,EAAEA,EAAEkS,EAAElS,EAAEkS,EAAEA,CAAC,CAGzC,SAASs+M,GAAGxwN,EAAEkS,GAAG,OAAO,IAAIu+M,GAAGzwN,EAAEA,EAAEi/K,KAAK/sK,EAAE,CAE1C,SAASw+M,GAAI1wN,GAAGsE,KAAKvE,EAAEC,EAAE++K,GAAIhgL,KAAKuF,KAAKtE,EAAE,CACzC,SAAS2wN,GAAI3wN,GAAGsE,KAAKirB,EAAEvvB,EAAE++K,GAAIhgL,KAAKuF,KAAKtE,EAAE,CACzC,SAAS4wN,GAAI5wN,GAAGsE,KAAKirB,EAAEvvB,EAAE0wN,GAAI3xN,KAAKuF,KAAKtE,EAAE,CACzC,SAAS6wN,KAAMvsB,KAAMhgM,KAAK4N,EAAE,IAAIy4J,GAAIrmK,KAAK,CACzC,SAASwsN,GAAG9wN,GAAa,OAAV+wN,GAAG/wN,EAAEgxN,KAAY,IAAIC,GAAIjxN,EAAE,CAC1C,SAASkxN,GAAGlxN,GAAQ,OAALs0K,KAAYzhK,SAAS7S,KAAK,CAAC,CAC1C,SAAS83L,GAAI93L,EAAEkS,EAAEqd,GAAG,OAAOvvB,EAAEyzD,OAAOvhD,EAAEqd,EAAErd,EAAE,CAC1C,SAASi/M,GAAInxN,EAAEkS,EAAEqd,GAAG,OAAOg/L,GAAIvuN,EAAEoxN,IAAIl/M,GAAGqd,EAAE,CAC1C,SAAS8hM,GAAIrxN,GAAG,OAAOsxN,GAAItxN,EAAEuvB,EAAEvvB,EAAEuvB,EAAErxB,OAAO,CAE1C,SAASqzN,GAAGvxN,GAAG,OAAY,MAALA,EAAE86B,EAAQ96B,EAAE86B,EAAE,GAAG96B,EAAE2S,CAAC,CAC1C,SAAS6+M,GAAIxxN,GAAe,OAAZspN,GAAS,GAALtpN,EAAEkS,GAAalS,EAAEA,EAAEA,EAAEuvB,CAAC,CAC1C,SAASkiM,GAAIzxN,GAAe,OAAZspN,GAAS,GAALtpN,EAAEkS,GAAalS,EAAEuvB,EAAErd,EAAEqd,CAAC,CAC1C,SAASmiM,GAAI1xN,GAAG6pL,GAAG7pL,EAAE,MAAM29K,GAAG39K,EAAE,KAAK2xN,IAAI,CACzC,SAASC,GAAI5xN,GAAG,OAAOA,EAAEkS,EAAEyrK,GAAGk0C,GAAI7xN,EAAEA,GAAG,GAAG,CAC1C,SAAS8xN,GAAI9xN,GAAGuiM,KAAMj+L,KAAK4N,EAAElS,EAAEsE,KAAKtE,GAAE,CAAI,CAC1C,SAAS+xN,GAAI/xN,GAAG0iM,KAAMp+L,KAAK4N,EAAElS,EAAEsE,KAAKtE,GAAE,CAAI,CAC1C,SAASgyN,GAAIhyN,GAAGA,EAAED,EAAE,IAAIkyN,GAAIjyN,GAAGA,EAAEuF,EAAE,IAAIitK,EAAG,CAC1C,SAAS0/C,GAAIlyN,GAAG,IAAIA,EAAG,MAAMkzK,GAAI,IAAIiC,GAAK,CAC1C,SAASg9C,GAAInyN,GAAG,IAAIA,EAAG,MAAMkzK,GAAI,IAAI6B,GAAK,CAC1C,SAASq9C,GAAIpyN,GAAG,IAAIA,EAAG,MAAMkzK,GAAI,IAAI8B,GAAK,CAE1C,SAASs0C,GAAItpN,GAAG,IAAIA,EAAG,MAAMkzK,GAAI,IAAImC,GAAK,CAC1C,SAAS48C,GAAIjyN,GAAGqyN,GAAItzN,KAAKuF,KAAKtE,EAAE,KAAK,KAAK,CAC1C,SAASmjM,KAAMrE,GAAG//L,KAAKuF,KAAK,YAAY,EAAE,CAC1C,SAASguN,GAAGtyN,EAAEkS,EAAEqd,EAAExvB,GAAGwyN,GAAGxzN,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,CAG1C,SAASyyN,GAAIxyN,EAAEkS,GAAG,QAASlS,EAAEgU,GAAG4sL,GAAI5gM,EAAEgU,EAAE9B,EAAE,CAK1C,SAASugN,GAAGzyN,EAAEkS,EAAEqd,GAAWvvB,EAAE0yN,GAAGxgN,GAAKq2M,GAAGh5L,EAAE,CAC1C,SAASojM,GAAI3yN,EAAEkS,EAAEqd,GAAiB,OAAdvvB,EAAEA,GAAGkS,EAAElS,EAAEkS,GAAGqd,EAASvvB,CAAC,CAC1C,SAAS4yN,GAAI5yN,EAAEkS,EAAEqd,GAAiB,OAAdvvB,EAAEA,GAAGkS,EAAElS,EAAEkS,GAAGqd,EAASvvB,CAAC,CAC1C,SAAS6yN,GAAI7yN,EAAEkS,EAAEqd,GAAiB,OAAdvvB,EAAEA,GAAGkS,EAAElS,EAAEkS,GAAGqd,EAASvvB,CAAC,CAC1C,SAAS8yN,GAAI9yN,EAAEkS,GAAmB,OAAhBlS,EAAEA,EAAEkS,EAAElS,EAAEA,EAAEkS,EAAEA,EAAEA,EAASlS,CAAC,CAC1C,SAAS+yN,GAAI/yN,GAAqB,OAAlBA,EAAEA,GAAGA,EAAEA,EAAEA,EAAEkS,GAAGlS,EAAEkS,EAASlS,CAAC,CAC1C,SAASgzN,GAAIhzN,GAAGsE,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAE,EAAEsE,KAAK4N,EAAE,CAAC,CAC1C,SAAS+gN,GAAIjzN,GAAGsE,KAAKirB,EAAEvvB,EAAEmiN,GAAIniN,EAAE,GAAGoiN,GAAIpiN,EAAE,EAAE,CAC1C,SAASkzN,GAAIlzN,GAAGy5K,GAAI16K,KAAKuF,MAAM6uN,GAAI7uN,KAAKtE,EAAE,CAC1C,SAASozN,GAAIpzN,GAAGqzN,MAAMrgD,GAAI1uK,MAAMA,KAAKgvN,GAAGtzN,EAAE,CAC1C,SAASuzN,GAAIvzN,EAAEkS,GAAGy5L,KAAMwT,GAAIpgN,KAAKuF,KAAKtE,EAAEkS,EAAE,CAC1C,SAASshN,GAAIxzN,EAAEkS,GAAG45L,KAAMgb,GAAI/nN,KAAKuF,KAAKtE,EAAEkS,EAAE,CAC1C,SAASuhN,GAAIzzN,EAAEkS,GAAG45L,KAAMgb,GAAI/nN,KAAKuF,KAAKtE,EAAEkS,EAAE,CAC1C,SAASwhN,GAAI1zN,EAAEkS,GAAG45L,KAAM0nB,GAAIz0N,KAAKuF,KAAKtE,EAAEkS,EAAE,CAC1C,SAASyhN,GAAI3zN,EAAEkS,EAAEqd,GAAGqkM,GAAI70N,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,EAAE,CAC1C,SAASskM,GAAI7zN,EAAEkS,GAAGwyM,KAAMoP,GAAI/0N,KAAKuF,KAAKtE,EAAEkS,EAAE,CAC1C,SAAS6hN,GAAI/zN,EAAEkS,GAAGwyM,KAAMmP,GAAI90N,KAAKuF,KAAKtE,EAAEkS,EAAE,CAC1C,SAAS8hN,GAAIh0N,EAAEkS,GAAGwyM,KAAMmP,GAAI90N,KAAKuF,KAAKtE,EAAEkS,EAAE,CAC1C,SAAS+hN,GAAIj0N,EAAEkS,GAAGwyM,KAAMsP,GAAIj1N,KAAKuF,KAAKtE,EAAEkS,EAAE,CAC1C,SAASgiN,GAAIl0N,EAAEkS,GAAGwyM,KAAMoP,GAAI/0N,KAAKuF,KAAKtE,EAAEkS,EAAE,CAC1C,SAASiiN,GAAIn0N,EAAEkS,GAAGwyM,KAAMwP,GAAIn1N,KAAKuF,KAAKtE,EAAEkS,EAAE,CAC1C,SAASkiN,GAAIp0N,EAAEkS,GAAGwyM,KAAMoP,GAAI/0N,KAAKuF,KAAKtE,EAAEkS,EAAE,CAE1C,SAASmiN,GAAIr0N,EAAEkS,EAAEqd,GAAG,OAAO+kM,IAAIC,GAAIv0N,EAAEkS,GAAGqd,EAAE,CAG1C,SAASilM,GAAIx0N,EAAEkS,GAAG,OAAOuiN,GAAIz0N,EAAEuF,EAAEo4K,GAAGzrK,EAAE,IAAI,CAG1C,SAASwiN,GAAI10N,EAAEkS,GAAGA,EAAEyiN,UAAU30N,EAAE20N,SAAS,CACzC,SAASC,KAAMA,GAAIlgF,EAAImgF,IAAI,IAAInkD,GAAI,OAAO,CAC1C,SAASokD,KAAMA,GAAIpgF,EAAIqgF,IAAI,IAAIn7C,GAAI,IAAIE,EAAG,CAC1C,SAASk7C,KAAM1wN,KAAKtE,EAAE,IAAIi1N,GAAG3wN,KAAK4N,EAAE,IAAI+iN,EAAE,CAC1C,SAASC,KAAM96C,GAAIr7K,KAAKuF,MAAMA,KAAKkxK,IAAImyC,GAAG,CAC1C,SAAS3iB,KAAMlG,GAAG//L,KAAKuF,KAAK,YAAY,EAAE,CAC1C,SAAS6wN,GAAIn1N,GAAG,OAAU,MAAHA,EAAQ,KA65H/B,SAAaA,GAAS,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAIlU,EAAEM,EAAEkD,EAAE4Q,EAAE,GAA1CohN,MAAgD,MAAHp1N,EAAQ,OAAO,KAAkB,GAAb8T,EAAW,EAAT9T,EAAE9B,OAAe,GAAH4V,EAAM,MAAO,GAA4F,IAAlFlU,EAAEkU,EAAE,GAAG,EAAegnB,EAAE,KAAKA,EAAEmjJ,GAAGo3C,IAAGC,IAAI,GAAK,GAAhC,IAArB7xN,EAAEqQ,EAAE,IAAmBlU,EAAE,EAAEA,GAA4B,GAAG,GAAGwS,EAAE,EAAE/Q,EAAE,EAAE6Q,EAAE,EAAEqd,EAAE,EAAExvB,EAAE,EAAE4S,EAAE,EAAEpN,EAAE,EAAMvH,EAAE,EAAEA,EAAE4B,EAAE5B,IAAKkU,EAAElS,EAAEuF,KAAuBlE,GAAK,IAAvBkuB,EAAEvvB,EAAEuF,QAAwB,IAAI,GAAG6M,GAAK,EAAFF,IAAM,IAAI,GAAGhS,EAAY,KAAN,IAAHgS,GAAWA,GAAG,GAAG,IAAI,IAAIA,GAAG,EAAE,MAAM,IAAI,GAAG9O,EAAY,KAAN,IAAHmsB,GAAWA,GAAG,GAAG,IAAI,IAAIA,GAAG,EAAE,MAAM,IAAI,GAAGvb,EAAY,KAAN,KAA5IjU,EAAEC,EAAEuF,OAAgJxF,GAAG,GAAG,IAAI,IAAIA,GAAG,EAAE,MAAM,IAAI,GAAG+6B,EAAEnoB,KAAK4iN,IAAIr1N,GAAG46B,EAAEnoB,KAAK4iN,IAAInyN,EAAEgP,GAAG,GAAG0oB,EAAEnoB,KAAK4iN,IAAIl0N,GAAG,EAAE2S,GAAG8mB,EAAEnoB,KAAK4iN,IAAM,GAAFx1N,GAAY,GAAH0D,GAAa2O,GAAK,GAAZF,EAAElS,EAAEuF,MAAY,IAAI,GAAGrF,EAAY,KAAN,IAAHgS,GAAWA,GAAG,GAAG,IAAI,IAAIA,GAAG,EAAE,MAAM,IAAI,GAAG4oB,EAAEnoB,KAAK4iN,IAAIr1N,GAAG46B,EAAEnoB,KAAK4iN,IAAInjN,GAAG,GAAG0oB,EAAEnoB,KAAK,GAAGmoB,EAAEnoB,KAAK,IAAc,IAAHlP,IAAOyO,EAAElS,EAAEuF,GAAYlE,GAAK,IAAdkuB,EAAEvvB,EAAEuF,EAAE,MAAa,IAAI,GAAG6M,GAAK,EAAFF,IAAM,IAAI,GAAGhS,EAAY,KAAN,IAAHgS,GAAWA,GAAG,GAAG,IAAI,IAAIA,GAAG,EAAE,MAAM,IAAI,GAAG9O,EAAY,KAAN,IAAHmsB,GAAWA,GAAG,GAAG,IAAI,IAAIA,GAAG,EAAE,MAAM,IAAI,GAAGuL,EAAEnoB,KAAK4iN,IAAIr1N,GAAG46B,EAAEnoB,KAAK4iN,IAAInyN,EAAEgP,GAAG,GAAG0oB,EAAEnoB,KAAK4iN,IAAIl0N,GAAG,GAAGy5B,EAAEnoB,KAAK,IAAG,OAAOk2M,IAAI/tL,EAAE,EAAEA,EAAE58B,OAAO,CA75HnzBs3N,CAAIx1N,EAAE,CAC1C,SAASy1N,GAAIz1N,GAAG,OAAU,MAAHA,EAAQ,KAs3F/B,SAAaA,GAAS,IAAIkS,EAAEqd,EAAExvB,EAAI+6B,EAAE,GAApB46L,MAA0B,MAAH11N,EAAQ,OAAO,KAA6C,IAAxCD,EAAEC,EAAE9B,OAAagU,EAAE+rK,GAAGo3C,IAAGC,IAAI,GAAd,EAAFv1N,EAAqB,GAAG,GAAOwvB,EAAE,EAAEA,EAAExvB,EAAEwvB,KAAKuL,EAAE96B,EAAEuvB,IAAK,IAAIuL,GAAG,KAAK5oB,EAAI,EAAFqd,GAAKomM,IAAI76L,GAAG,GAAG5oB,EAAI,EAAFqd,EAAI,GAAGomM,IAAM,GAAF76L,GAAM,OAAO+tL,IAAI32M,EAAE,EAAEA,EAAEhU,OAAO,CAt3FjK03N,CAAI51N,EAAE,CAG1C,SAASspL,GAAItpL,GAAW,MAALA,EAAEE,GAsqGrB,SAAaF,GAAG,GAAGA,EAAE61N,KAAK,CAAC,IAAI3jN,EAAElS,EAAEuvB,EAAsG,OAApGrd,EAAE4jN,KAAM91N,EAAEE,EAAE,IAAIgS,EAAEtS,EAAIsS,EAAE2jN,KAA4B71N,EAAEE,EAAE,IAAIgS,EAAE6sL,KAAhC/+L,EAAEE,EAAE,KAAKgS,EAAE6sL,KAAK,IAAsB/+L,EAAEkS,EAAEA,EAAE6jN,KAAK,UAAK/1N,EAAEqB,EAAE6Q,EAAE8jN,KAAK,KAAW,CAAC,IAAIzmM,EAAEvvB,EAAEoS,EAAMrS,EAAEC,EAAED,EAAEA,EAAEA,EAAE+kB,MAAM,KAAK9kB,EAAEE,EAAE+1N,IAAI,IAAI,CAAC1mM,EAAE0mM,IAAI,IAAIl2N,KAAKC,EAAEkS,EAAE+jN,IAAI,IAAI,CAAC1mM,EAAE0mM,IAAI,IAAIl2N,KAAKC,EAAEqB,EAAEtB,EAAEA,EAAE7B,OAAO,EAAE,CAtqGvNg4N,CAAIl2N,EAAE,CAC3C,SAASm8M,GAAGn8M,GAAuB,OAApBu8M,GAAO,MAAHv8M,GAASg7M,GAAGh7M,IAAWA,CAAC,CAC3C,SAASugL,GAAGvgL,GAAuB,OAApBu8M,GAAO,MAAHv8M,GAASi7M,GAAGj7M,IAAWA,CAAC,CAC3C,SAAS8jL,GAAG9jL,GAAuB,OAApBu8M,GAAO,MAAHv8M,GAASm7M,GAAGn7M,IAAWA,CAAC,CAC3C,SAASumN,GAAGvmN,GAAGsE,KAAK0P,EAAE,IAAIi/H,EAAKl1H,KAAK+6K,GAAI94L,GAAG,CAC3C,SAASm2N,GAAGn2N,EAAEkS,GAAG5N,KAAKirB,EAAEvvB,EAAE++L,GAAGhgM,KAAKuF,KAAKtE,EAAEkS,EAAE,CAC3C,SAASkkN,GAAGp2N,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEm2N,GAAGp3N,KAAKuF,KAAKtE,EAAEkS,EAAE,CAC3C,SAASmkN,GAAGr2N,EAAEkS,GAAG5N,KAAKvE,EAAEC,EAAEokK,GAAG9/J,MAAMA,KAAK4N,EAAEA,CAAC,CAC3C,SAASokN,GAAIt2N,EAAEkS,GAAGmvL,GAAItiM,KAAKuF,KAAKtE,GAAGsE,KAAKtE,EAAEkS,CAAC,CAC3C,SAASqkN,GAAIv2N,EAAEkS,GAAGmvL,GAAItiM,KAAKuF,KAAKtE,GAAGsE,KAAKtE,EAAEkS,CAAC,CAC3C,SAASskN,GAAIx2N,GAAGy2N,IAAI13N,KAAKuF,KAAK,EAAE,GAAGA,KAAKw2B,EAAE96B,CAAC,CAC3C,SAAS8iN,GAAG9iN,EAAEkS,EAAEqd,GAAGmnM,GAAG33N,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,KAAK,CAC3C,SAASonM,GAAG32N,EAAEkS,EAAEqd,GAAGmnM,GAAG33N,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,KAAK,CAG3C,SAASqnM,GAAI52N,EAAEkS,GAAG,OAAOyrK,GAAGk5C,GAAI72N,EAAEkS,EAAEA,GAAG,IAAI,CAC3C,SAAS4kN,GAAI92N,EAAEkS,GAAG,OAAOyrK,GAAGk5C,GAAI72N,EAAEuvB,EAAErd,GAAG,IAAI,CAC3C,SAAS6kN,GAAI/2N,GAAG,OAAO29K,GAAG0pB,GAAIrnM,EAAEA,EAAEA,EAAEkS,GAAG,IAAI,CAC3C,SAAS8kN,GAAIh3N,GAAG,OAAO,IAAIi1M,GAAIj1M,EAAEuvB,EAAEvvB,EAAED,EAAEC,EAAEA,EAAE,CAC3C,SAASi3N,GAAIj3N,GAAG,OAAOk3N,KAAMlW,GAAIrjC,GAAG39K,EAAE,KAAK,CAC3C,SAASm3N,KAAMA,GAAIziF,EAAI0iF,IAAIC,IAAKC,MAAMC,KAAK,CAC3C,SAASC,GAAIx3N,EAAEkS,GAAGA,EAAElS,EA20GpB,SAAaA,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAiB,GAAfA,EAAEg0N,GAAIz3N,EAAEA,EAAEkS,EAAEA,IAAOzO,EAAG,MAAMyvK,GAAI,IAAI4O,GAAI,uDAA+D,IAARnvK,GAAE,EAAa5S,EAAE,IAAI23N,GAAK,IAAIlI,GAAK,IAAItqD,GAAIllK,EAAEA,EAAEA,GAAIA,GAAIkS,GAA3C4oB,EAA8C,IAAIqqI,GAAIplK,GAAI+sM,GAAIhyK,EAAE96B,EAAEA,IAAkC,GAA7BuF,EAAco4K,GAATi0C,GAAI92L,EAAE96B,GAAQ6sM,KAAK,IAAQ8qB,GAAIzlN,EAAEA,EAAE3M,GAAImiL,GAAI1nL,EAAEkS,EAAElS,EAAEkS,EAAEA,EAAE3M,GAAGoN,GAAE,OAAU,GAAGA,EAAG,KAAQ,CA30GrRilN,CAAI53N,EAAEkS,GAAGy8M,GAAI3uN,EAAEA,EAAEkS,EAAEA,EAAE,CAC3C,SAAS2lN,GAAI73N,EAAEkS,GAAM4lN,KAAY/hD,GAAI/1K,EAAEA,EAAEkS,EAAE,CAG3C,SAAS6lN,GAAI/3N,EAAEkS,GAAoB,OAAjB04M,GAAI14M,EAAE8lN,KAAKh4N,EAAE86B,EAAE5oB,EAASlS,CAAC,CAC3C,SAASi4N,GAAIj4N,EAAEkS,EAAEqd,GAAkB,OAAfA,EAAE2oM,IAAIl4N,EAAEkS,EAAE,EAAEqd,EAAW,CAC3C,SAAS4oM,GAAIn4N,EAAEkS,EAAEqd,GAAkB,OAAfA,EAAE2oM,IAAIl4N,EAAEkS,EAAE,EAAEqd,EAAW,CAC3C,SAAS6oM,GAAIp4N,EAAEkS,EAAEqd,GAAkB,OAAfA,EAAE2oM,IAAIl4N,EAAEkS,EAAE,EAAEqd,EAAW,CAC3C,SAAS8oM,GAAIr4N,EAAEkS,EAAEqd,KAAKvvB,EAAEoS,EAAEpS,EAAEijL,KAAKq1C,GAAIt4N,EAAEkS,EAAEqd,EAAE,CAC3C,SAASgpM,GAAIv4N,EAAEkS,EAAEqd,KAAKvvB,EAAEoS,EAAEpS,EAAEw4N,GAAGtmN,EAAElS,EAAEs7K,GAAGppK,EAAEqd,GAAG,CAC3C,SAASkpM,GAAIz4N,EAAEkS,EAAEqd,GAAWvvB,EAAE0yN,GAAGxgN,GAAKq2M,GAAGh5L,EAAE,CAC3C,SAASmpM,GAAI14N,EAAEkS,EAAEqd,GAAG,OAAOopM,IAAI34N,EAAEuvB,EAAEvvB,EAAEkS,EAAEA,EAAEqd,EAAE,CAC3C,SAASqpM,GAAI54N,EAAEkS,GAAG,OAAQA,EAAEgmL,KAAKl4L,EAAED,EAAE7B,MAAM,CAC3C,SAAS0gN,GAAI5+M,EAAEkS,GAAGw+J,GAAI3xK,KAAKuF,KAAKtE,GAAGsE,KAAKtE,EAAEkS,CAAC,CAC3C,SAAS2mN,GAAI74N,EAAEkS,GAAGs/J,GAAIzyK,KAAKuF,KAAKtE,GAAGsE,KAAKtE,EAAEkS,CAAC,CAC3C,SAAS4mN,GAAI94N,EAAEkS,GAAGs/J,GAAIzyK,KAAKuF,KAAKtE,GAAGsE,KAAKtE,EAAEkS,CAAC,CAC3C,SAAS6mN,GAAI/4N,EAAEkS,GAAG5N,KAAKirB,EAAEvvB,EAAEsoL,GAAIvpL,KAAKuF,KAAK4N,EAAE,CAC3C,SAAS8mN,GAAIh5N,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEuxK,GAAIxyK,KAAKuF,KAAK4N,EAAE,CAC3C,SAAS+mN,GAAIj5N,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEuxK,GAAIxyK,KAAKuF,KAAK4N,EAAE,CAC3C,SAASgnN,GAAGl5N,GAAGsE,KAAKtE,GAAG+wN,GAAG/wN,EAAEgxN,KAAK,IAAIC,GAAIjxN,GAAG,CAC5C,SAASm5N,GAAGn5N,GAAGsE,KAAKtE,GAAG+wN,GAAG/wN,EAAEgxN,KAAK,IAAIC,GAAIjxN,GAAG,CAC5C,SAASo5N,GAAGp5N,GAAsB,OAAlBA,EAAEA,IAAIA,EAAEA,EAAE,IAAI2zI,GAAW3zI,EAAEA,CAAC,CAC5C,SAASq5N,GAAIr5N,GAAG,OAAGA,EAAE,EAAU,EAASA,EAAE,CAAC,CAE3C,SAASs5N,GAAIt5N,EAAEkS,EAAEqd,GAAG,OAAOm3K,GAAI1mM,EAAE29K,GAAGzrK,EAAE,IAAIqd,EAAE,CAE5C,SAASgqM,GAAIv5N,EAAEkS,EAAEqd,GAAmB,OAAhBvvB,EAAEA,GAAG6oN,IAAI32M,EAAE,EAAEqd,GAAUvvB,CAAC,CAC5C,SAASw5N,GAAIx5N,EAAEkS,GAAG,IAAIqd,EAAc,OAAZA,EAAEvvB,EAAEuF,EAAEvF,EAAEuF,EAAE2M,EAASqd,CAAC,CAC5C,SAASkqM,GAAIz5N,EAAEkS,GAAWlS,EAAEqlL,KAAOtmL,KAAKiB,EAAEkS,EAAE,CAE5C,SAASwnN,GAAI15N,EAAEkS,GAAGlS,EAAEA,EAAE25N,GAAG35N,EAAEkS,EAAEA,KAAKlS,EAAEkS,EAAElS,EAAEuvB,GAAG,CAAC,CAC5C,SAASqqM,GAAI55N,GAAGyyK,GAAIzyK,EAAEuF,GAAGvF,EAAED,EAAEmS,EAAElS,EAAED,EAAEC,EAAED,EAAEC,EAAEA,EAAED,CAAC,CAC5C,SAASiI,GAAGhI,GAAGA,EAAEkS,EAAElK,GAAGhI,EAAEkS,GAAGlS,EAAE86B,EAAEvL,EAAEsqM,GAAG75N,EAAEuF,EAAEvF,EAAED,EAAE,CAI5C,SAAS2nM,GAAI1nM,EAAEkS,GAAG,OAAO0zK,GAAI,IAAItnL,MAAM4T,GAAGlS,EAAE,CAC5C,SAAS85N,GAAG95N,GAAG,OAAOyjG,OAAOgjH,aAAazmN,EAAE,CAE5C,SAAS+5N,KAAMz1N,KAAKtE,EAAE,IAAIsyK,GAAIhuK,KAAK4N,EAAE,IAAIogK,EAAG,CAC5C,SAAS0nD,KAAM11N,KAAKtE,EAAE,IAAIo6I,GAAI91I,KAAK4N,EAAE,IAAIujK,EAAG,CAC5C,SAASgC,KAAMnzK,KAAK4N,EAAE,IAAI02K,GAAItkL,KAAKirB,EAAE,IAAI+iJ,EAAG,CAC5C,SAAS2nD,KAAM31N,KAAKvE,EAAE,IAAI6oL,GAAItkL,KAAKiB,EAAE,IAAIqjL,EAAG,CAC5C,SAAS48B,KAAMlhN,KAAK1E,EAAE,IAAIgpL,GAAItkL,KAAKpE,EAAE,IAAI0oL,EAAG,CAC5C,SAASnQ,KAAMn0K,KAAK1E,EAAE,IAAIi5K,GAAIv0K,KAAKtG,EAAE,IAAI2qM,EAAG,CAC5C,SAASuxB,KAAM51N,KAAKtE,EAAE,IAAI47J,GAAIt3J,KAAK4N,EAAE,IAAIo1I,EAAG,CAC5C,SAAS6yE,KAAM71N,KAAKtE,EAAE,IAAIsyK,GAAIhuK,KAAKvE,EAAE,IAAIuyK,EAAG,CAC5C,SAAS8nD,KAAM91N,KAAK4N,EAAE,IAAIukK,GAAInyK,KAAKtE,EAAE,IAAIy2K,EAAG,CAC5C,SAAS4jD,KAAM/1N,KAAK4N,EAAE,IAAIsgK,GAAIluK,KAAKtE,EAAE,IAAIwyK,EAAG,CAC5C,SAAS8nD,KAAMh2N,KAAK4N,EAAE,IAAIspL,GAAIl3L,KAAKtE,EAAE,IAAIorJ,EAAG,CAC5C,SAASmvE,KAAM9hD,GAAI15K,KAAKuF,MAAMA,KAAKtE,EAAE,IAAI4oL,EAAG,CAC5C,SAAS8uC,GAAI13N,GAAGw6N,GAAIz7N,KAAKuF,KAAKtE,GAAGy6N,KAAMC,KAAK,CAC5C,SAASC,GAAI36N,EAAEkS,EAAEqd,EAAExvB,GAAG2gN,GAAI3hN,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,CAG5C,SAAS66N,GAAI56N,EAAEkS,EAAEqd,GAAmB,OAAhBA,EAAE2oM,IAAIl4N,EAAEkS,EAAE,GAAGqd,EAAW,CAC5C,SAASswJ,GAAI7/K,EAAEkS,GAAqB,OAAlBlS,EAAEA,GAAGkS,EAAElS,EAAEA,EAAEkS,GAAGA,EAAEA,EAASlS,CAAC,CAC5C,SAAS66N,GAAI76N,EAAEkS,GAAqB,OAAlBlS,EAAEA,GAAGkS,EAAElS,EAAEA,EAAEkS,GAAGA,EAAEA,EAASlS,CAAC,CAI5C,SAAS86N,GAAI96N,EAAEkS,GAAG,OAAsB,MAAfykL,GAAI32L,EAAEA,EAAEkS,EAAE,GAAS,CAI5C,SAAS4sM,GAAI9+M,EAAEkS,GAAGgvK,GAAIniL,KAAKuF,KAAKy2N,IAAI/6N,EAAEg7N,IAAI9oN,EAAE,CAC5C,SAAS+oN,GAAIj7N,EAAEkS,EAAEqd,EAAExvB,GAAGu6L,GAAIv7L,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,CAC5C,SAASm7N,GAAIl7N,EAAEkS,EAAEqd,EAAExvB,GAAGu6L,GAAIv7L,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,CAC5C,SAASo7N,GAAIn7N,EAAEkS,EAAEqd,EAAExvB,GAAGm7N,GAAIn8N,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,CAC5C,SAASq7N,GAAIp7N,EAAEkS,EAAEqd,EAAExvB,GAAGs7N,GAAIt8N,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,CAC5C,SAASu7N,GAAIt7N,EAAEkS,EAAEqd,EAAExvB,GAAGs7N,GAAIt8N,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,CAC5C,SAASw7N,GAAIv7N,EAAEkS,EAAEqd,EAAExvB,GAAGs7N,GAAIt8N,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,CAC5C,SAASy7N,GAAIx7N,EAAEkS,EAAEqd,EAAExvB,GAAGu7N,GAAIv8N,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,CAC5C,SAAS07N,GAAIz7N,EAAEkS,EAAEqd,EAAExvB,GAAGu7N,GAAIv8N,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,CAC5C,SAASgrN,GAAI/qN,EAAEkS,EAAEqd,EAAExvB,GAAGw7N,GAAIx8N,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,CAC5C,SAAS27N,GAAI17N,EAAEkS,EAAEqd,EAAExvB,GAAG07N,GAAI18N,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,CAC5C,SAAS47N,GAAI37N,EAAEkS,EAAEqd,EAAExvB,GAAG67N,GAAI78N,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,CAC5C,SAAS0wN,GAAGzwN,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEgjL,GAAGjkL,KAAKuF,KAAK4N,EAAEqd,EAAE,CAC7C,SAASssM,GAAG77N,EAAEkS,EAAEqd,GAAGjrB,KAAKirB,EAAErd,EAAE5N,KAAK4N,EAAEqd,EAAEjrB,KAAKtE,EAAEA,CAAC,CAE7C,SAAS87N,GAAI97N,EAAEkS,GAAG,OAAOlS,EAAE+7N,KAAKC,KAAKC,GAAGj8N,EAAEkS,EAAE,CAC5C,SAASgqN,GAAIl8N,EAAEkS,GAAG,OAAOlS,EAAE+7N,KAAKC,KAAKG,GAAGn8N,EAAEkS,EAAE,CAC5C,SAASkqN,GAAIp8N,EAAEkS,GAAG,OAAO2uJ,GAAI7gK,GAAG+6M,GAAG/6M,KAAK+6M,GAAG7oM,EAAE,CAC7C,SAASmqN,GAAIr8N,EAAEkS,GAAG,OAAO2uJ,GAAI7gK,GAAG+6M,GAAG/6M,KAAK+6M,GAAG7oM,EAAE,CAC7C,SAASoqN,GAAIt8N,EAAEkS,GAAG,OAAOg3K,GAAGqzC,IAAIv8N,EAAEA,EAAEkS,GAAE,GAAO,CAC7C,SAASsqN,GAAIx8N,EAAEkS,GAAG,OAAOg3K,GAAGuzC,IAAIz8N,EAAEA,EAAEkS,GAAE,GAAO,CAG7C,SAASwqN,GAAI18N,EAAEkS,GAAG,OAAOlS,EAAEkS,EAAEunL,GAAG,IAAIiV,GAAI1uM,EAAEkS,GAAG,CAC7C,SAASyqN,GAAI38N,EAAEkS,EAAEqd,GAAG,OAAOvvB,EAAEsuN,YAAYp8M,EAAEqd,EAAE,CAM7C,SAASqtM,GAAI58N,GAAG,OAAQA,EAAEuvB,EAAK42K,GAAInmM,EAAEuvB,EAAEvvB,EAAEA,EAAE,IAAd,CAAgB,CAE7C,SAAS68N,GAAI78N,GAAG,OAAOA,GAAG88N,KAAK98N,GAAG+8N,KAAK/8N,GAAGg9N,GAAG,CAC7C,SAASC,GAAIj9N,EAAEkS,GAAG,OAAO23K,GAAG33K,EAAE,KAAKgrN,IAAIl9N,EAAEuvB,EAAErd,EAAE,CAE7C,SAASirN,GAAIn9N,EAAEkS,GAAa,QAASkrN,GAAIp9N,EAAfkS,EAAmB,CAC7C,SAASmrN,GAAIr9N,EAAEkS,GAAG5N,KAAKirB,EAAEvvB,EAAEs9N,GAAIv+N,KAAKuF,KAAKtE,EAAEkS,EAAE,CAC7C,SAASqrN,GAAIv9N,GAAGsE,KAAKirB,EAAEvvB,EAAEq9M,GAAIt+M,KAAKuF,KAAKk5N,IAAI,EAAE,CAC7C,SAASC,GAAIz9N,EAAEkS,GAAGwrN,GAAI3+N,KAAKuF,KAAKtE,EAAEA,EAAE9B,OAAOgU,EAAE,CAE7C,SAASyrN,GAAI39N,EAAEkS,EAAEqd,GAAG,OAAOouJ,GAAG39K,EAAEuvB,EAAE,IAAIquM,GAAG1rN,EAAEqd,EAAE,CAE7C,SAASsuM,GAAI79N,EAAEkS,EAAEqd,GAAG,OA9IpB,SAAavvB,EAAEkS,EAAEqd,GAAG,OAAOrd,EAAE4rN,GAAG99N,EAAEuF,EAAEvF,EAAEuvB,EAAEA,EAAE,CA8IfwuM,CAAI/9N,EAAE29K,GAAGzrK,EAAE,KAAKqd,EAAE,CAE7C,SAASyuM,GAAIh+N,EAAEkS,EAAEqd,GAAG,OAqpFpB,SAAavvB,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAmJ,OAAjJ/6B,EAAEmS,EAAEg2M,KAAKptL,EAAE5oB,EAAE4oM,KAAKv1M,EAAExF,EAAEk+N,KAAKC,GAAIl+N,EAAE,EAAED,EAAE+6B,EAAE,KAAKqjM,IAAIn+N,EAAED,EAAE+6B,EAAE+uJ,GAAG9pL,EAAE,KAAwB,IAAlB49K,GAAG59K,EAAE,IAAIy1K,GAAGmyC,OAAS,GAAMuW,GAAIl+N,EAAED,EAAEq+N,KAAK,EAAE,EAAEr+N,EAAE+6B,EAAE/6B,EAAEs+N,MAAM,GAAE,GAAM9uM,EAAEA,EAAE+uM,GAAG/4N,GAAIgqB,EAAEhqB,EAAUgqB,CAAC,CArpF5JgvM,CAAIv+N,EAAE29K,GAAGzrK,EAAE,KAAKqd,EAAE,CAC7C,SAASivM,GAAGx+N,EAAEkS,GAAG,OAAU,MAAHA,EAAQ,KAAKusN,GAAGz+N,EAAEkS,EAAEA,EAAE,CAC9C,SAASwsN,GAAI1+N,GAAG,OAAOi7M,GAAGj7M,IAAI6gK,GAAI7gK,GAAGA,GAAGA,EAAE2+N,IAAI,CAC9C,SAASC,GAAI5+N,GAAG,OAAQ2P,MAAM3P,KAAKwsC,SAASxsC,EAAE,CAC9C,SAAS28K,GAAG38K,GAAGg0K,KAAK1vK,KAAKtE,GAAGinN,KAAM,IAAItiC,GAAI3kL,GAAG,CAC7C,SAAS6+N,GAAI7+N,GAAG+4M,KAAMz0M,KAAKvE,EAAEC,EAAEsE,KAAKtE,EAAE,IAAIoyK,EAAG,CAC7C,SAASq1B,GAAIznM,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKirB,EAAEA,CAAC,CAC9C,SAASuvM,GAAI9+N,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKirB,EAAEA,CAAC,CAC9C,SAASwvM,GAAI/+N,EAAEkS,EAAEqd,GAAGjrB,KAAKvE,EAAEC,EAAEsE,KAAK4N,EAAEqd,EAAEjrB,KAAKtE,EAAEkS,CAAC,CAC9C,SAASg2K,GAAIloL,GAAGwhM,GAAIl9L,MAAMm9L,GAAIn9L,MAAMi1L,GAAGj1L,KAAKtE,EAAE,CAC9C,SAASg/N,GAAIh/N,GAAGuyK,GAAIjuK,MAAM26N,GAAI36N,KAAKirB,EAAE,EAAEvvB,EAAEk/N,KAAK,CAC9C,SAASC,GAAIn/N,GAAGwpN,GAAIxpN,EAAEA,GAAGo/N,GAAIp/N,EAAEuvB,EAAEvvB,EAAEkS,GAAGlS,EAAEkS,EAAE,IAAI,CAC9C,SAASmtN,GAAIr/N,GAAGsE,KAAKtE,EAAEA,EAAE2/L,KAAMiL,GAAI7sL,KAAKD,MAAM,CAC9C,SAASwhN,KAAMA,GAAI5qF,EAAI6qF,IAAI,IAAIrsF,EAAGssF,IAAI,IAAItsF,CAAE,CAC5C,SAASusF,KAAMA,GAAI/qF,EAAIgrF,IAAI,IAAI7qF,EAAI8qF,IAAI,IAAI7qF,CAAG,CAC9C,SAAS0sC,KAAMA,GAAI9sC,EAAIkrF,IAAI3hD,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,EAAE,CAC7C,SAAS5d,KAAMA,GAAI7rB,EAAImrF,IAAI5hD,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,EAAE,CAC7C,SAAS2hD,KAAMA,GAAIprF,EAAIqrF,IAAI9hD,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,EAAE,CAC7C,SAASnK,KAAKA,GAAGt/B,EAAI,IAAIq/B,IAAIkzC,KAAMA,KAAM+Y,KAAK,CAmB9C,SAASC,GAAGjgO,EAAEkS,GAAG,IAAIlS,EAAG,MAAMkzK,GAAI,IAAI2O,GAAI3vK,GAAI,CAE9C,SAASguN,GAAIlgO,GAAG0gN,GAAI3hN,KAAKuF,KAAKtE,EAAED,EAAEC,EAAEuvB,EAAEvvB,EAAEA,EAAEA,EAAEkS,EAAE,CAC9C,SAASiuN,GAAIngO,GAAG0gN,GAAI3hN,KAAKuF,KAAKtE,EAAED,EAAEC,EAAEuvB,EAAEvvB,EAAEA,EAAEA,EAAEkS,EAAE,CAC9C,SAASkuN,GAAIpgO,EAAEkS,EAAEqd,GAAGjrB,KAAK4N,EAAElS,EAAEsE,KAAKirB,EAAErd,EAAE5N,KAAKtE,EAAEuvB,CAAC,CAC9C,SAAS8wM,GAAIrgO,EAAEkS,EAAEqd,GAAGjrB,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,EAAE5N,KAAKirB,EAAEA,CAAC,CAC9C,SAAS+wM,GAAItgO,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKirB,EAAEA,CAAC,CAC9C,SAASgxM,GAAIvgO,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKirB,EAAEA,CAAC,CAC9C,SAASixM,GAAIxgO,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKirB,EAAEA,CAAC,CAC9C,SAASkxM,GAAIzgO,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKirB,EAAEA,CAAC,CAC9C,SAASmxM,GAAI1gO,EAAEkS,EAAEqd,GAAGjrB,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,EAAE5N,KAAKirB,EAAEA,CAAC,CAC9C,SAASoxM,GAAI3gO,EAAEkS,EAAEqd,GAAGjrB,KAAKiB,EAAE2M,EAAE5N,KAAK4N,EAAElS,EAAEsE,KAAKvE,EAAEwvB,CAAC,CAE9C,SAASqxM,GAAI5gO,GAAG,IAAIkS,EAAkB,OAAhBA,EAAE,IAAIqlI,IAAMhyI,EAAEvF,EAASkS,CAAC,CAC9C,SAAS2uN,GAAI7gO,GAAG,IAAIkS,EAAkB,OAAhBA,EAAE,IAAI4lK,IAAM5lK,EAAElS,EAASkS,CAAC,CAC9C,SAASqpJ,KAAMA,GAAI7mB,EAAIosF,IAAI,IAAI/hF,GAAIgiF,IAAI,IAAI/hF,EAAG,CAC9C,SAASgiF,KAAMA,GAAItsF,EAAIusF,IAAI,IAAIt8E,GAAIu8E,IAAI,IAAIt8E,EAAG,CAqF9C,SAASu8E,GAAInhO,EAAEkS,GAAG5N,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAEkS,EAAE5N,KAAK4N,EAAEA,EAAElS,CAAC,CAC9C,SAASohO,GAAIphO,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKirB,EAAEA,CAAC,CAC9C,SAAS8xM,GAAIrhO,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKirB,EAAEA,CAAC,CAC9C,SAAS+xM,GAAIthO,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKirB,EAAEA,CAAC,CAC9C,SAASuoL,GAAI93M,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKirB,EAAEA,CAAC,CAC9C,SAASgyM,GAAIvhO,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKirB,EAAEA,CAAC,CAC9C,SAASiyM,GAAIxhO,EAAEkS,EAAEqd,GAAGjrB,KAAKiB,EAAEvF,EAAEsE,KAAKtE,EAAEkS,EAAE5N,KAAKirB,EAAEA,CAAC,CAC9C,SAASkyM,GAAIzhO,EAAEkS,EAAEqd,GAAGm1L,KAAMgd,GAAI3iO,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CAC9C,SAASoyM,GAAI3hO,EAAEkS,EAAEqd,GAAGm1L,KAAMkd,GAAI7iO,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CAC9C,SAASsyM,GAAI7hO,EAAEkS,EAAEqd,GAAGm1L,KAAMkd,GAAI7iO,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CAC9C,SAASuyM,GAAI9hO,EAAEkS,EAAEqd,GAAGm1L,KAAMkd,GAAI7iO,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CAC9C,SAASwyM,GAAI/hO,EAAEkS,EAAEqd,GAAGm1L,KAAMid,GAAI5iO,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CAC9C,SAASyyM,GAAIhiO,EAAEkS,EAAEqd,GAAGm1L,KAAMid,GAAI5iO,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CAC9C,SAAS0yM,GAAIjiO,EAAEkS,EAAEqd,GAAGm1L,KAAMsd,GAAIjjO,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CAC9C,SAAS2yM,GAAIliO,EAAEkS,EAAEqd,GAAGm1L,KAAMmd,GAAI9iO,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CAC9C,SAAS4yM,GAAIniO,EAAEkS,EAAEqd,GAAGm1L,KAAMod,GAAI/iO,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAE,CAC9C,SAAS0uM,GAAGj+N,EAAEkS,GAAe,OAAZ6xK,GAAG/jL,GAAG+jL,GAAG7xK,GAAU,IAAI0a,GAAG5sB,EAAEkS,EAAE,CAC/C,SAASkwN,GAAGpiO,EAAEkS,GAAe,OAAZ6xK,GAAG/jL,GAAG+jL,GAAG7xK,GAAU,IAAImwN,GAAGriO,EAAEkS,EAAE,CAG/C,SAASyrK,GAAG39K,EAAEkS,GAAyB,OAAtBqqM,GAAO,MAAHv8M,GAAS8oN,IAAG9oN,EAAEkS,IAAWlS,CAAC,CAC/C,SAASsiO,GAAGtiO,GAAG,IAAIkS,EAAoB,OAARqwN,GAAVrwN,EAAE,IAAIogK,GAAStyK,GAAUkS,CAAC,CAE/C,SAASswN,GAAGxiO,GAAG,IAAIkS,EAAoB,OAARuwN,GAAVvwN,EAAE,IAAIglK,GAASl3K,GAAUkS,CAAC,CAC/C,SAASwwN,GAAG1iO,GAAG,IAAIkS,EAAoB,OAARuwN,GAAVvwN,EAAE,IAAIunK,GAASz5K,GAAUkS,CAAC,CAC/C,SAASywN,GAAI3iO,GAAuB,OAAnBA,EAAEuF,IAAIvF,EAAEuF,EAAE,IAAI+sK,IAAYtyK,EAAEuF,CAAC,CAE9C,SAASwwK,GAAI/1K,EAAEkS,GAAqB,OAAlBlS,EAAEuvB,EAAEvvB,EAAEuvB,EAAErxB,QAAQgU,GAAS,CAAI,CAC/C,SAAS0wN,GAAG5iO,EAAEkS,GAAG5N,KAAKirB,EAAEvvB,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKtE,GAAE,CAAK,CAC/C,SAAS4kN,GAAG5kN,GAAGsE,KAAKvE,EAAEC,EAAEokK,GAAG9/J,MAAMA,KAAK4N,EA0KtC,SAAYlS,GAAG,OAAO6pL,GAAG7pL,EAAE,IAAI29K,GAAG39K,EAAE,IAAI6iO,KAAK7iO,EAAE27M,IAAI,CA1KXmnB,CAAG9iO,EAAED,EAAE,CAC/C,SAASgjO,KAAMz+N,KAAKtE,EAAE,MAAMsE,KAAK4N,EAAE,GAAG5N,KAAKirB,EAAE,EAAE,CAC/C,SAASmuM,GAAI19N,EAAEkS,EAAEqd,GAAGyzM,GAAIjkO,KAAKuF,KAAK4N,EAAEqd,GAAGjrB,KAAKtE,EAAEA,CAAC,CAC/C,SAASijO,GAAIjjO,EAAEkS,EAAEqd,GAAGjrB,KAAK4N,EAAElS,EAAEk9M,GAAIn+M,KAAKuF,KAAK4N,EAAEqd,EAAE,CAC/C,SAAS8iM,GAAIryN,EAAEkS,EAAEqd,GAAGjrB,KAAKirB,EAAEvvB,EAAEmuM,GAAIpvM,KAAKuF,KAAK4N,EAAEqd,EAAE,CAC/C,SAAS0vM,GAAIj/N,EAAEkS,EAAEqd,GAAG2zM,IAAI3zM,EAAE,EAAEvvB,EAAEkS,EAAEqd,EAAErxB,QAAO,EAAM,CAC/C,SAASilO,GAAInjO,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGvF,EAAEkS,EAAEA,EAAElS,EAAEuvB,EAAEA,EAAEvvB,EAAED,EAAEA,EAAEC,EAAEA,EAAEuF,CAAC,CAE/C,SAAS69N,GAAIpjO,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGvF,EAAED,EAAEmS,EAAElS,EAAEuvB,EAAEA,EAAEvvB,EAAEA,EAAED,EAAEC,EAAEkS,EAAE3M,CAAC,CAC/C,SAAS89N,GAAIrjO,GAAG,IAAIkS,EAAEqd,EAAErd,EAAElS,EAAEkS,EAAEqd,EAAEvvB,EAAEuvB,EAAEvvB,EAAEkS,EAAEqd,EAAEvvB,EAAEuvB,EAAErd,CAAC,CAC/C,SAASoxN,GAAItjO,GAAG,IAAIkS,EAAEqd,EAAEA,EAAEvvB,EAAED,EAAEmS,EAAElS,EAAEA,EAAEA,EAAED,EAAEmS,EAAElS,EAAEA,EAAEuvB,CAAC,CAC/C,SAASg0M,GAAIvjO,GAAG,OAAOwjO,GAoPvB,SAAYxjO,GAAG,OAAO0/M,IAAI1/M,EAAE8T,EAAE2vN,KAAKzjO,EAAEgT,EAAEywN,KAAKzjO,EAAEyD,EAAEigO,IAAI,CApPzBC,CAAG7jB,GAAI9/M,GAAG4jO,GAAI5jO,GAAGA,GAAG,CAG/C,SAAS+4M,KAAMA,GAAIrkE,EAAS+qC,MAALokD,IAAWjkD,IAAKkkD,IAAIpkD,GAAG,CAC9C,SAASqkD,KAAMz/N,KAAK4N,EAAEouK,GAAIC,GAAGC,KAAK3lB,MAAMmpE,OAAO,CAC/C,SAASC,GAAIjkO,GAAG,OAAOojM,KAAMnlB,GAAG6Q,IAAG3Q,IAAI,EAAEn+K,EAAE,EAAE,EAAE,CAC/C,SAASkkO,GAAIlkO,GAAG,OAAO,IAAIi1M,GAAIj1M,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,EAAED,EAAEC,EAAEA,EAAE,CAE/C,SAASmkO,GAAInkO,GAAe,OAAZspN,GAAS,GAALtpN,EAAEkS,GAAakyN,GAAIpkO,EAAEA,EAAEA,EAAEA,EAAE,CAC/C,SAASqkO,GAAIrkO,GAAe,OAAZspN,GAAS,GAALtpN,EAAEkS,GAAakyN,GAAIpkO,EAAEA,EAAEuvB,EAAErd,EAAE,CAC/C,SAASoyN,GAAItkO,EAAEkS,GAAG,IAAIlS,EAAG,MAAMkzK,GAAI,IAAIiO,GAAIjvK,GAAI,CAC/C,SAASqyN,GAAIvkO,EAAEkS,GAAG,IAAIlS,EAAG,MAAMkzK,GAAI,IAAI2O,GAAI3vK,GAAI,CAC/C,SAASsyN,GAAIxkO,EAAEkS,EAAEqd,GAAGohL,GAAI5xM,KAAKuF,KAAKtE,EAAEkS,GAAG5N,KAAK4N,EAAEqd,CAAC,CAC/C,SAASo8L,GAAI3rN,EAAEkS,EAAEqd,GAAG0qL,GAAIl7M,KAAKuF,KAAKtE,EAAEkS,GAAG5N,KAAKirB,EAAEA,CAAC,CAC/C,SAASk1M,GAAIzkO,EAAEkS,EAAEqd,GAAGm1M,GAAI3lO,KAAKuF,KAAK4N,EAAEqd,GAAGjrB,KAAKvE,EAAEC,CAAC,CAC/C,SAAS2kO,GAAI3kO,GAAG8/N,KAAM1tE,GAAIrzJ,KAAKuF,MAAMA,KAAKy6F,GAAG/+F,EAAE,CAC/C,SAAS4kO,GAAI5kO,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAE++M,GAAIhgN,KAAKuF,KAAK4N,EAAEqd,EAAE,CAC/C,SAASs1M,GAAI7kO,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAE++M,GAAIhgN,KAAKuF,KAAK4N,EAAEqd,EAAE,CAC/C,SAAS28L,GAAIlsN,EAAEkS,EAAEqd,GAAG0qL,GAAIl7M,KAAKuF,KAAKtE,EAAEkS,GAAG5N,KAAKirB,EAAEA,CAAC,CAC/C,SAASu1M,KAAMC,KAAMC,GAAIjmO,KAAKuF,MAAMolL,KAAMC,KAAK,CAC/C,SAASs7C,GAAIjlO,GAAG,OAAU,MAAHA,IAAUklO,GAAIllO,EAAEmlO,IAAIC,IAAI,CAC/C,SAASC,GAAIrlO,EAAEkS,GAAG,OAAQozN,GAAItlO,IAAI,EAAEslO,GAAIpzN,IAAIuqL,GAAG,CAE/C,SAAS8oC,GAAIvlO,EAAEkS,GAAG,IAAIqd,EAAKvvB,EAAEJ,IAAG2vB,EAAErd,EAAE6jK,GAAI/1K,EAAE86B,EAAEvL,GAAG,CAC/C,SAASipL,GAAIx4M,EAAEkS,EAAEqd,GAAqB4oL,GAAGn4M,EAAEkS,EAAf,IAAI8uK,GAAGzxJ,GAAY,CAE/C,SAASi2M,GAAIxlO,EAAEkS,GAAwB,OAAhBlS,EAAE2S,EAAPT,EAAE,GAAQ,EAAQA,EAAUlS,CAAC,CAC/C,SAASylO,GAAIzlO,EAAEkS,GAAwB,OAsuCvC,SAAalS,GAAG,IAAIkS,EAAEA,EAAE+gI,EAAK3/H,KAAKuc,KAAK7vB,EAAEA,EAAEA,EAAEA,EAAEA,EAAEkS,EAAElS,EAAEkS,GAAMA,EAAE,IAAGlS,EAAEA,GAAGkS,EAAElS,EAAEkS,GAAGA,EAAU,CAtuCpEwzN,CAAI1lO,GAAGA,EAAEA,GAAGkS,EAAElS,EAAEkS,GAAGA,EAASlS,CAAC,CAC/C,SAAS2lO,GAAI3lO,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGvF,EAAEuvB,EAAErd,EAAElS,EAAED,EAAEwvB,EAAEvvB,EAAEkS,EAAEnS,EAAEC,EAAEA,EAAEuF,CAAC,CAC/C,SAASqgO,GAAI5lO,EAAEkS,GAAsB,OAAnB6qM,GAAI/8M,EAAEkS,EAAElS,EAAEuvB,EAAErd,EAAElS,EAAEuvB,IAAU,CAAI,CAChD,SAASy5L,GAAIhpN,GAAGA,EAAEA,EAAEkS,EAAElS,EAAEkS,EAAElS,EAAEkS,EAAElS,EAAEA,EAAEA,EAAEA,EAAEA,EAAEA,EAAEkS,EAAE,IAAI,CAChD,SAAS2zN,GAAG7lO,GAAGsE,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAE8lO,GAAGxhO,KAAK4N,EAAElS,GAAG+lO,IAAI,CAChD,SAAS1D,GAAGriO,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,EAAEgoJ,GAAGn7J,KAAKuF,KAAK,CAChD,SAASo6F,GAAG1+F,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAEgoJ,GAAGn7J,KAAKuF,KAAK,CAChD,SAAS0hO,GAAIhmO,EAAEkS,GAAG8wN,GAAIjkO,KAAKuF,KAAK4N,EAAE,MAAM5N,KAAKtE,EAAEA,CAAC,CAChD,SAASimO,GAAIjmO,GAAG,OAAU,GAAHA,GAAM2P,MAAM3P,GAAGA,EAAEA,EAAE,GAAG,EAAE,CAAC,CAGhD,SAASkmO,GAAIlmO,EAAEkS,GAAG,OAAOi0N,IAAInmO,EAAE,IAAI2wM,GAAIz+L,EAAElS,EAAEkS,EAAEA,GAAG,CAEhD,SAASk0N,GAAIpmO,GAAG,IAAIkS,EAAQ,OAANA,EAAElS,EAAEJ,EAASI,EAAEA,EAAEkS,EAAEA,EAAEnS,EAAEmS,EAAElS,CAAC,CAChD,SAASqmO,GAAIrmO,GAAG,IAAIkS,EAAQ,OAANA,EAAElS,EAAEJ,EAASI,EAAEuF,EAAE2M,EAAEA,EAAEnS,EAAEmS,EAAElS,CAAC,CAChD,SAASsmO,GAAItmO,GAAG,IAAIkS,EAAQ,OAANA,EAAElS,EAAEJ,EAASI,EAAEuF,EAAEvF,EAAEkS,EAAEA,EAAEA,EAAEqd,CAAC,CAChD,SAASg3M,GAAIvmO,GAAe,OAAZkkN,MAAmB,IAAIsiB,GAAI,EAAExmO,EAAE,CAE/C,SAASu8M,GAAIv8M,GAAG,IAAIA,EAAG,MAAMkzK,GAAI,IAAI0O,GAAI,MAAO,CAChD,SAAS6kD,KAAMA,GAAI/xF,EAASuyE,KAALyf,IAAW,IAAInhE,GAAI2uB,IAAK,CAC/C,SAASyyC,KAAKA,GAAGjyF,EAAI,IAAI3jF,KAAIvrD,KAAKs2K,MAAKE,KAAKC,KAAI,CAChD,SAAS2qD,KAAMA,GAAIlyF,EAAImyF,IAAI5oD,GAAG2S,IAAGiD,IAAI,GAAG,IAAI,EAAE,EAAE,CAChD,SAASizC,GAAI9mO,EAAEkS,EAAEqd,EAAExvB,GAAGgnO,GAAIhoO,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,EAAE,EAAE,CAKhD,SAASinO,GAAIhnO,GAAG,OAAOA,EAAEuF,EAAEgqB,EAAErxB,OAAO8B,EAAE2S,EAAE4c,EAAErxB,MAAM,CAChD,SAAS+oO,GAAIjnO,GAAG,OAAOA,EAAEuF,EAAEgqB,EAAErxB,OAAO8B,EAAE2S,EAAE4c,EAAErxB,MAAM,CAChD,SAASgpO,GAAIlnO,GAAG,OAAOA,EAAEkS,EAAEqd,EAAErxB,OAAO8B,EAAEuF,EAAEgqB,EAAErxB,MAAM,CAEhD,SAASipO,GAAInnO,GAAG8/N,KAAM6E,GAAI5lO,KAAKuF,KAAKtE,GAAGsE,KAAKtE,GAAG,CAAC,CAChD,SAASonO,GAAIpnO,EAAEkS,GAAGioM,GAAIp7M,KAAKuF,KAAKtE,EAAEkS,GAAG5N,KAAKtE,EAAEsE,IAAI,CAChD,SAAS+iO,GAAIrnO,EAAEkS,GAAG,IAAIqd,EAAmB,OAAjBA,EAAE+3M,GAAItnO,EAAEkS,IAAKlU,EAAE,EAASuxB,CAAC,CACjD,SAASg4M,GAAIvnO,EAAEkS,GAAyB,QAAdlS,EAAEoS,EAAIpS,EAAEwnO,GAAGt1N,EAAW,CAChD,SAASu1N,GAAIznO,EAAEkS,EAAEqd,GAAuB,OAApBvvB,EAAEA,GAAG,EAAEmwN,GAAInwN,EAAEkS,EAAES,EAAE4c,GAAUvvB,CAAC,CAChD,SAAS+3M,GAAI/3M,EAAEkS,EAAEqd,IAugHjB,SAAavvB,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAMwS,EAAM2V,EAAI9kB,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAEC,EAAEC,EAAEF,EAAEumB,GAAI13M,EAAEuF,EAAExF,GAAS,MAAHoxL,IAAkBvxL,EAAE+9K,GAAXwT,EAAE,IAAI7T,GAAU,KAAoBtqK,EAAE,IAAIguK,GAAnB9uK,EAAE,KAAS3M,GAAc4yM,GAAGv4M,EAAE8nO,IAAI10N,IAAG6vB,EAAE86I,GAAGwT,EAAE,KAAKw2C,GAAIp4M,EAAEsT,GAAY+kM,GAATv2C,EAAE,IAAI/T,GAAS,IAAIv9K,EAAEqS,GAAGw1N,GAAIv2C,EAAE,IAAItxL,EAAEsB,GAAG82M,GAAGt1K,EAAEglM,IAAIx2C,GAAYu2C,GAATh+M,EAAE,IAAI0zJ,GAAS,IAAIv9K,EAAEmS,GAAG01N,GAAIh+M,EAAE,IAAI7pB,EAAEwvB,GAAG4oL,GAAGt1K,EAAE,WAAWjZ,GAAG9V,EAAEupL,KAAMt9L,EAAEC,IAAID,EAAEC,EAAE,IAAIg/K,GAAI7qJ,IAAGp0B,EAAE,IAAIA,EAAEC,IAAIE,GAAG4T,EAAK5T,IAAY46B,EAAE,IAAI+0I,GAAftsK,EAAE,IAAIu/J,IAAgBy1C,KAAMx4M,EAAEC,IAAID,EAAEC,EAAE,IAAIg/K,GAAI7qJ,IAAGp0B,EAAE,IAAIA,EAAEC,GAAG86B,GAAGq9K,GAAGt1K,EAAEwrJ,IAAI9qL,IAAGvF,EAAE8pO,IAAI/nO,GAAGsoB,IAAIrqB,EAAEqqB,GAAG0/M,IAAI/nO,EAAEA,EAAE6iC,EAAE0rJ,IAAIy5C,IAAIhoO,EAAE8nO,IAAI/nO,KAAK2S,EAAEu1N,IAAIloO,KAAO2S,GAAKq1N,IAAI/nO,EAAEA,EAAE6iC,EAAEyrJ,IAAI05C,IAAIhoO,EAAEioO,IAAIloO,KAAKqS,EAA0C,KAAtCrS,EAAEwF,IAAIxF,EAAEwF,EAAE,IAAIwlN,GAAI58B,IAAGpuL,EAAE,GAAG,IAAIA,EAAEwF,GAAGvH,GAAQoU,IAAiBO,EAAE,IAAI+mM,GAAI15M,EAAnB4kC,EAAE,IAAIk+H,IAAkBy1C,KAAMx4M,EAAEwF,IAAIxF,EAAEwF,EAAE,IAAIwlN,GAAI58B,IAAGpuL,EAAE,GAAG,IAAIA,EAAEwF,GAAGoN,GAAGwlM,GAAGt1K,EAAE4rJ,IAAI7pJ,IAAGvjC,EAA0C,KAAtCtB,EAAE4S,IAAI5S,EAAE4S,EAAE,IAAIo4M,GAAI58B,IAAGpuL,EAAE,EAAE,KAAKA,EAAE4S,GAAG3U,GAAQqD,IAAiBoC,EAAE,IAAIk2M,GAAI35M,EAAnBoxL,EAAE,IAAItuB,IAAkBy1C,KAAMx4M,EAAE4S,IAAI5S,EAAE4S,EAAE,IAAIo4M,GAAI58B,IAAGpuL,EAAE,EAAE,KAAKA,EAAE4S,GAAGlP,GAAG00M,GAAGt1K,EAAE2rJ,IAAI4C,GAAG,CAvgH1vB82C,CAAIloO,EAAEA,EAAEA,EAAEkS,EAAElS,EAAEuvB,EAAEouJ,GAAGzrK,EAAE,KAAKqd,EAAE,CAIhD,SAAS44M,GAAGnoO,EAAEkS,EAAEqd,GAAG,OAAO,IAAIssM,GAyQ9B,SAAa77N,GAAG,GAAG,GAAGA,EAAG,OAAO,IAAIohM,GAAI,OAoiCxC,SAAaphM,GAAG,IAAIkS,EAAEqd,EAAE,GAAG,EAAEvvB,EAAG,OAAO,IAAIohM,GAAyB,OAArBlvL,EAAElS,EAAE,EAAEuvB,EAAE,IAAI64M,GAAIl2N,EAAElS,GAAU,IAAIu2N,GAAI,KAAKhnM,EAAE,CApiC3C84M,CAAIroO,EAAE,EAAE,CAzQtBsoO,CAAItoO,GAAGuoO,KAAKh5M,EAAErd,EAAE,CACjD,SAASs2N,GAAGxoO,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,OAAO2tM,IAAGzoO,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAE,EAAEu1B,EAAE,CACjD,SAAS4tM,KAAMA,GAAIh0F,EAAIi0F,IAAI1qD,GAAGuS,IAAGqD,IAAI,IAAI,IAAI,EAAE,EAAE,CACjD,SAAS+0C,KAAMA,GAAIl0F,EAAIm0F,IAAI5qD,GAAG4S,IAAGgD,IAAI,IAAI,IAAI,EAAE,EAAE,CACjD,SAASi1C,KAAMA,GAAIp0F,EAAIq0F,IAAI9qD,GAAG6S,IAAG+C,IAAI,IAAI,IAAI,EAAE,EAAE,CACjD,SAASm1C,KAAMA,GAAIt0F,EAAIu0F,IAAIhrD,GAAGirD,IAAGr1C,IAAI,IAAI,IAAI,EAAE,EAAE,CACjD,SAASs1C,KAAMhG,GAAI7+N,MAAK,GAAM,GAAM,GAAM,EAAM,CAChD,SAAS8kO,GAAGppO,GAAGo0K,KAAK9vK,KAAKtE,GAAGinN,KAAM,IAAI1hD,GAAIwe,GAAG/jL,IAAI,CACjD,SAASqpO,GAAGrpO,GAAS,IAAN+jL,GAAG/jL,GAASA,EAAEu7M,MAAMv7M,EAAEy7M,KAAKz7M,EAAE+jL,IAAK,CAEjD,SAASuvC,GAAGtzN,GAAGsE,KAAKirB,EAAEvvB,EAAEsE,KAAK4N,EAAE5N,KAAKirB,EAAExvB,EAAEupO,KAAK3tB,IAAI,CACjD,SAAS4tB,GAAIvpO,GAAGsE,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAE,IAAIshM,GAAIh9L,KAAKirB,EAAEvvB,EAAE,CACjD,SAASwpO,GAAIxpO,GAAGsE,KAAKtE,EAAE,IAAIy3L,GAAIz3L,EAAEi/K,MAAMsa,GAAGj1L,KAAKtE,EAAE,CACjD,SAASypO,GAAIzpO,GAAGmmK,GAAIpnK,KAAKuF,KAAK,IAAIk8M,IAAKjnB,GAAGj1L,KAAKtE,EAAE,CACjD,SAAS0pO,GAAI1pO,EAAEkS,GAA0B,OAAvBlS,EAAEA,GAAG6oN,IAAI32M,EAAE,EAAEA,EAAEhU,QAAe8B,CAAC,CACjD,SAASqnM,GAAIrnM,EAAEkS,GAAqB,OAAlBurM,GAAIvrM,EAAElS,EAAEuvB,EAAErxB,QAAe8B,EAAEuvB,EAAErd,EAAE,CACjD,SAASy3N,GAAI3pO,EAAEkS,GAAqB,OAAlBurM,GAAIvrM,EAAElS,EAAEA,EAAE9B,QAAe8B,EAAEA,EAAEkS,EAAE,CACjD,SAASk4M,GAAIpqN,EAAEkS,GAAGkxL,KAAM/B,GAAItiM,KAAKuF,KAAKtE,GAAGsE,KAAKtE,EAAEkS,CAAC,CAKjD,SAAS03N,GAAI5pO,EAAEkS,GAAG,OAJlB,SAAalS,EAAEkS,GAAG,OAAO23N,IAAIn/B,GAAIm/B,IAAI7pO,EAAEA,GAAGA,EAAEkS,EAAElS,GAAG,CAIxB8pO,CAAInsD,GAAG39K,EAAE,KAAK29K,GAAGzrK,EAAE,KAAK,CACjD,SAAS63N,GAAI/pO,GAAG,OAAOA,EAAEuvB,EAAEouJ,GAAG0pB,GAAIrnM,EAAEA,EAAEA,EAAEkS,GAAG,KAAKA,CAAC,CACjD,SAAS83N,GAAIhqO,GAAG,OAAQA,EAAEgU,EAAoBhU,EAAEgU,GAAnBizM,KAAMA,KAAMgjB,IAAQ,CACjD,SAASC,GAAGlqO,GAAG,OAAOA,EAAEuF,EAAE21K,KAAK+D,KAAKj/K,EAAEuvB,EAAE2rJ,KAAK+D,IAAI,CAMjD,SAASkrD,GAAInqO,EAAEkS,EAAEqd,GAAG,OAAO0jH,EAAK3/H,KAAKsgB,IAAIrE,EAAEvvB,EAAE,EAAEkS,EAAE,CACjD,SAASk4N,GAAIpqO,EAAEkS,GAAG,OAAOlS,EAAE,EAAEizI,EAAK3/H,KAAKugB,IAAI,EAAE3hB,EAAE,EAAE,CAEjD,SAASm4N,GAAIrqO,GAAG,IAAIkS,EAAW,OAATA,EAAEo4N,IAAItqO,IAAeqqO,GAAIn4N,GAANlS,CAAQ,CACjD,SAASuqO,GAAIvqO,EAAEkS,GAAqB,OAAb,MAALlS,EAAEA,GAASwqO,IAAIxqO,GAAUA,EAAEA,EAAEkS,EAAE,CACjD,SAASu4N,GAAIzqO,GAAG,OAAGA,EAAEuvB,EAAUvvB,EAAEuvB,EAAEuL,EAAS96B,EAAEuF,EAAE2M,CAAC,CACjD,SAAS0J,GAAI5b,GAAG,OAAGA,EAAEuvB,EAAUvvB,EAAEuvB,EAAE5c,EAAS3S,EAAEuF,EAAEvF,CAAC,CACjD,SAAS0qO,GAAI1qO,GAAGsoL,GAAIvpL,KAAKuF,KAAKtE,EAAEi/K,MAAMmpC,GAAI9jN,KAAKtE,EAAE,CACjD,SAAS8zN,GAAI9zN,EAAEkS,GAAGwyM,KAAMjzC,GAAI1yK,KAAKuF,KAAK4N,GAAG5N,KAAKtE,EAAEA,CAAC,CACjD,SAAS2qO,GAAI3qO,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEg/K,GAAIjgL,KAAKuF,KAAK4N,EAAEqd,EAAE,EAAE,CACjD,SAASmxL,GAAI1gN,EAAEkS,EAAEqd,EAAExvB,GAAaqjO,GAAI9+N,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,CACjD,SAASymO,GAAIxmO,EAAEkS,GAAGgyM,MAAMhyC,GAAInzK,KAAKuF,KAAKtE,GAAGsE,KAAKtE,EAAEkS,CAAC,CACjD,SAAS04N,GAAI5qO,GAAGsE,KAAK4N,EAAE,IAAIunK,GAAIn1K,KAAKtE,EAAEA,EAAEsE,KAAKirB,GAAG,CAAC,CACjD,SAASs7M,KAAMvmO,KAAKvE,EAAE,IAAIk1M,GAAI,EAAE,GAAG3wM,KAAKiB,EAAE,IAAIkxK,EAAG,CACjD,SAASq0D,GAAG9qO,GAAGgjL,GAAGjkL,KAAKuF,KAAK,EAAE,GAAGA,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAE,CAAC,CAClD,SAAS64N,GAAI/qO,GAAGsE,KAAKtE,EAAEA,EAAEsE,KAAKirB,EAAE,IAAIijJ,GAi+CpC,SAAaxyK,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAE,IAAIgqB,EAAEvvB,EAAEA,EAAED,EAAE,EAAEwF,EAAEgqB,EAAErxB,OAAO6B,EAAEwF,IAAIxF,EAAUirO,GAAIhrO,EAAXkS,EAAEqd,EAAExvB,IAAY0/K,MAAMonB,MAAMmkC,GAAIhrO,EAAEkS,EAAE6tK,IAAK,CAj+C/DkrD,CAAI3mO,KAAK,CACjD,SAAS4mO,GAAGlrO,GAAG,GAAGA,EAAEuF,EAAEgqB,GAAGvvB,EAAEkS,EAAG,MAAMghK,GAAI,IAAIiC,GAAK,CACjD,SAASg2D,GAAGnrO,GAAG,GAAGA,EAAEuvB,EAAEhqB,GAAGvF,EAAEA,EAAG,MAAMkzK,GAAI,IAAIiC,GAAK,CACjD,SAAS80C,GAAIjqN,GAAG,OAAG8/M,GAAI9/M,GAAa,EAAFA,EAAWi6L,GAAGj6L,EAAE,CAClD,SAASorO,GAAIprO,EAAEkS,GAAe,OAAZgyM,MAAmB,IAAImnB,GAAIrrO,EAAEkS,EAAE,CACjD,SAASo5N,GAAItrO,EAAEkS,GAAG,OAAU,MAAHlS,EAAW,MAAHkS,EAAQmqN,GAAIr8N,EAAEkS,EAAE,CAEjD,SAASw0L,GAAI1mM,EAAEkS,EAAEqd,GAAc,OAAXq4K,GAAI5nM,EAAEA,EAAEkS,GAAUq5N,GAAIvrO,EAAEkS,EAAES,EAAE4c,EAAE,CAClD,SAASw1L,GAAI/kN,EAAEkS,EAAEqd,GAAGi8M,GAAI,EAAEt5N,EAAElS,EAAE9B,QAAQoiN,GAAItgN,EAAE,EAAEkS,EAAEqd,EAAE,CAClD,SAASk8M,GAAIzrO,EAAEkS,EAAEqd,GAAGm8M,GAAIx5N,EAAElS,EAAEuvB,EAAErxB,QAAQgwM,GAAIluM,EAAEuvB,EAAErd,EAAEqd,EAAE,CAClD,SAASw+K,GAAI/tM,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAE,IAAIA,EAAE,EAAEA,EAAEmS,IAAInS,EAAGC,EAAED,GAAGwvB,CAAE,CAClD,SAASo8M,GAAI3rO,EAAEkS,GAAG,IAAIqd,EAAoB,OAATq8M,GAATr8M,EAAE8nM,GAAIr3N,GAASkS,GAAUqd,CAAC,CAClD,SAASs8M,GAAG7rO,EAAEkS,GAA4B,OAAxBlS,IAAIA,EAAE,IAAIA,EAAEA,EAAE9B,QAAQgU,EAASlS,CAAC,CAElD,SAAS8rO,GAAI9rO,EAAEkS,GAAG,OAgvClB,SAAalS,EAAEkS,EAAEqd,GAAG,OAAOw8M,GAAI/rO,EAAE,IAAI4mK,GAAI10J,GAAG,IAAIskI,GAAI,IAAIqwB,GAAIt3I,GAAGgvJ,GAAGC,GAAGwtD,IAAG,GAAGC,IAAI,IAAI,EAAE,IAAI,CAhvChEC,CAAI,IAAIh2F,GAAI,IAAIswB,GAAIxmK,GAAGkS,EAAE,CAElD,SAAS86L,GAAIhtM,EAAEkS,GAAG,OAAO23K,GAAG33K,EAAE,KAAKsoL,GAAIx6L,EAAE29K,GAAGzrK,EAAE,IAAI,CAClD,SAASi6N,GAAInsO,EAAEkS,GAAG,OAAO23K,GAAG33K,EAAE,KAknC9B,SAAalS,EAAEkS,GAAG,GAAKA,GAAGlS,EAAEkS,EAAEA,EAAES,IAAIT,EAA0B,OAAvBy0L,GAAG3mM,EAAEkS,EAAEA,EAAES,EAAE,QAAQ3S,EAAEuvB,GAAS,EAAK,OAAO,CAAK,CAlnCnD68M,CAAIpsO,EAAE29K,GAAGzrK,EAAE,IAAI,CAClD,SAASm6N,GAAIrsO,GAAG,OAAOssO,IAAItsO,EAAE,IAAIusO,IAAID,IAAItsO,EAAE,IAAIwsO,GAAG,CAClD,SAASC,GAAGzsO,GAAG,OAAO1B,MAAMC,QAAQyB,IAAIA,EAAEo0K,KAAK3/B,CAAG,CAClD,SAASvlE,GAAGlvE,GAAGA,EAAEkS,EAAEg9D,GAAGlvE,EAAEkS,GAAGlS,EAAED,EAAEshC,MAAMrhC,EAAE86B,EAAEvL,EAAEm5L,GAAG1oN,EAAEuF,EAAE,CAClD,SAASmnO,GAAI1sO,EAAEkS,GAAG2tK,GAAI7/K,EAAEuvB,EAAErd,GAAGlS,EAAEkS,EAAEqd,GAAGrd,EAAElS,EAAEA,EAAEkS,EAAEnS,GAAGmS,EAAEA,CAAC,CAClD,SAASy6N,GAAI3sO,EAAEkS,GAAGw6N,GAAI1sO,EAAE66N,GAAI,IAAI5lB,GAAI/iM,EAAElS,EAAEkS,EAAEA,GAAGlS,EAAEuvB,GAAG,CAClD,SAASq9M,GAAI5sO,EAAEkS,GAAG5N,KAAK4N,EAAE,IAAIunK,GAAIn1K,KAAKtE,EAAEA,EAAEsE,KAAKirB,EAAErd,CAAC,CAClD,SAAS+xL,KAAM3/L,KAAK4N,EAAE,IAAImpI,GAAI/2I,KAAKirB,EAAE,IAAIs9M,GAAIvoO,KAAK,CAClD,SAASwoO,KAAMxoO,KAAKvE,EAAE,IAAIq3I,GAAI9yI,KAAKiB,EAAE,IAAIwnO,GAAIzoO,KAAK,CAClD,SAASk1M,KAAMD,KAAMj1M,KAAKw2B,EAAE,IAAI2+I,GAAIn1K,KAAKiB,EAAE,IAAIk0K,EAAG,CAClD,SAASuzD,KAAM9V,KAAM5yN,KAAKjD,EAAE,IAAImxK,GAAIluK,KAAKvE,EAAE,IAAI02K,EAAG,CAClD,SAASiL,KAAMA,GAAIhtC,EAAIu4F,IAAI,IAAIvpB,IAAK3jD,MAAMmtE,KAAK,EAAE,CACjD,SAASC,KAAKA,GAAGz4F,EAAI04F,IAAG,IAAItC,GAAG7sD,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAG,CAKlD,SAASkvD,GAAIrtO,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAKC,KAAGD,EAAEC,EAAEhC,GAAIuxB,EAAErd,EAAEnS,EAAEmS,EAAEqd,EAAE,CAClD,SAAS+9M,GAAIttO,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAKC,KAAGD,EAAEC,EAAEhC,GAAI+B,EAAEmS,EAAEnS,EAAEC,EAAEuvB,EAAE,CAClD,SAASg+M,GAAIvtO,EAAEkS,EAAEqd,GAAyB,OAAtBvvB,EAAEA,GAAG,EAAEmwN,GAAInwN,EAAEkS,EAAES,EAAE,EAAE4c,GAAUvvB,CAAC,CAClD,SAASwtO,GAAIxtO,EAAEkS,EAAEqd,GAAyB,OAAtBA,EAAE2oM,IAAIl4N,EAAE29K,GAAGzrK,EAAE,IAAI,EAAEqd,EAAW,CAClD,SAASk+M,GAAIztO,EAAEkS,EAAEqd,GAAyB,OAAtBA,EAAE2oM,IAAIl4N,EAAE29K,GAAGzrK,EAAE,IAAI,EAAEqd,EAAW,CAClD,SAASm+M,GAAI1tO,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAE4rN,GAAI7sN,KAAKuF,KAAK4N,EAAEqd,EAAE,GAAG,CAClD,SAASo+M,GAAI3tO,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAE4rN,GAAI7sN,KAAKuF,KAAK4N,EAAEqd,EAAE,GAAG,CAClD,SAASq+M,GAAI5tO,EAAEkS,EAAEqd,EAAExvB,GAAG2kN,KAAMmpB,GAAI9uO,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,CAClD,SAAS+tO,GAAI9tO,EAAEkS,EAAEqd,EAAExvB,GAAG2kN,KAAMmpB,GAAI9uO,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,CAElD,SAASguO,GAAG/tO,GAAG,OAAU,MAAHA,GAASguO,GAAGhuO,MAAMA,EAAEo0K,KAAK3/B,EAAI,CACnD,SAASw5F,GAAGjuO,GAAG,OAAQ1B,MAAMC,QAAQyB,IAAIA,EAAEo0K,KAAK3/B,CAAG,CAEnD,SAAS0wE,GAAGnlN,GAAG,OAAOA,EAAEqgM,GAAGpiB,GAAG6Q,IAAG3Q,IAAI,EAAEn+K,EAAEi/K,KAAK,EAAE,GAAG,CACnD,SAASivD,GAAIluO,EAAEkS,GAAG,OA02DlB,SAAalS,GAAG,IAAIkS,EAA0G,OAAxGlS,EAAEkS,GA3hGxB,SAAalS,EAAEkS,GAAGlS,EAAEuvB,EAAErd,EAAElS,EAAEkS,GAAE,CAAI,CA2hGLi8N,CAAInuO,GAAGkS,EA1uElC,SAAalS,EAAEkS,GAAqB,OAAVA,EAAEk8N,GAAGpuO,EAAEA,EAAW,CA0uERquO,CAAIruO,EAAEuF,EAAEvF,EAAEA,IAAIkS,IAAImqN,GAAIiS,IAAIC,MAAMr8N,EAAEA,IAAIA,EAAEA,EAAE,IAAIyhN,IAAK6a,MAAMC,KAAKC,IAAGx8N,IAAIA,EAAEA,GAAG,gBAAuBlS,EAAEuvB,CAAC,CA12D/Go/M,CAAIpa,GAAIv0N,EAAEkS,IAAIA,EAAE08N,KAAK,IAAI,CAClD,SAAS7kD,GAAI/pL,GAAGA,EAAE6uO,IAAG7uO,GAAG2/L,KAAMC,KAAK,IAAKD,IAAU,CAClD,SAASmvC,GAAG9uO,GAAGsE,KAAKtE,GAAGmtO,KAAKC,KAAI9oO,KAAKvE,EAAE49K,GAAGoG,GAAG/jL,GAAG,GAAG,CACnD,SAASuyN,GAAGvyN,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKtE,EAAEA,EAAE02N,GAAG33N,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAE,CACnD,SAASgvO,GAAI/uO,GAAGysM,KAAMnoM,KAAKtE,EAAE,EAAEsE,KAAK4N,EAAElS,EAAE,EAAEsE,KAAKirB,EAAE,CAAC,CAClD,SAAS6tJ,GAAGp9K,GAAGknN,GAAG5iN,MAAMA,KAAKqO,EAAE3S,EAAEiuN,GAAG3pN,MAAMA,KAAKsD,IAAI,CACnD,SAASk+N,GAAG9lO,GAAG,OAAGA,EAAEuvB,EAAUvvB,EAAEuvB,EAASvvB,EAAEuvB,EAAEvvB,EAAEgvO,IAAI,CACnD,SAASC,GAAGjvO,GAAG,OAAGA,EAAED,EAAUC,EAAED,EAASC,EAAED,EAAEC,EAAEkvO,IAAI,CACnD,SAASC,GAAGnvO,GAAe,OAAJA,EAAEuvB,IAAavvB,EAAEuvB,EAAEvvB,EAAEg7K,KAAO,CACnD,SAASo0D,GAAGpvO,GAAe,OAAJA,EAAE86B,IAAa96B,EAAE86B,EAAE96B,EAAEqvO,KAAO,CACnD,SAASC,GAAGtvO,GAAe,OAAJA,EAAEhC,IAAagC,EAAEhC,EAAEgC,EAAE6jC,KAAO,CACnD,SAAS0rM,GAAIvvO,GAAe,OAAZkkN,MAAmB,IAAIsrB,GAAI,GAAGxvO,EAAE,EAAE,CAClD,SAASyvO,GAAIzvO,GAAG,OAAG8/M,GAAI9/M,GAAW,GAAGA,EAAS0vO,IAAG1vO,EAAE,CACnD,SAAS2vO,GAAI3vO,GAAG,GAAGA,EAAEuF,EAAE6M,GAAGpS,EAAED,EAAG,MAAMmzK,GAAI,IAAIiC,GAAK,CAClD,SAASwjB,GAAI34L,EAAEkS,GAAG,OAAOsxN,GAAIoM,IAAG9vB,GAAI9/M,GAAG4jO,GAAI5jO,GAAGA,EAAEkS,GAAG,CACnD,SAAS29N,GAAI7vO,EAAEkS,GAAG,OAAOsxN,GAAIsM,IAAGhwB,GAAI9/M,GAAG4jO,GAAI5jO,GAAGA,EAAEkS,GAAG,CACnD,SAAS69N,GAAI/vO,EAAEkS,GAAG,OAAOsxN,GAi6EzB,SAAYxjO,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAE5oB,GAAG,GAAGqd,EAAEvvB,EAAEyD,EAAEigO,IAAOxxN,EAAE,IAAI4oB,EAAEvL,IAAIrd,EAAE3M,EAAEvF,EAAEgT,GAAGd,EAAEqd,GAAG,GAAGrd,EAAEnS,EAAEC,EAAE8T,GAAG5B,EAAElS,EAAEgT,GAAG,GAAGd,GAAUA,EAAE,IAAI4oB,EAAE,EAAEv1B,EAAEgqB,IAAIrd,EAAE,GAAGnS,EAAEC,EAAEgT,GAAGd,EAAE,GAAGlS,EAAEyD,GAAG,GAAGyO,IAAO4oB,EAAE,EAAEv1B,EAAE,EAAExF,EAAEwvB,IAAIrd,EAAE,IAAG,OAAOwtM,GAAG3/M,EAAE0jO,IAAIl+N,EAAEk+N,IAAI3oM,EAAE4oM,IAAI,CAj6E5KsM,CAAGlwB,GAAI9/M,GAAG4jO,GAAI5jO,GAAGA,EAAEkS,GAAG,CACnD,SAAS+9N,GAAIjwO,EAAEkS,GAAG,OA1blB,SAAalS,EAAEkS,GAAS,OAANw7M,KAAa1tN,GAAGkS,EAAE,EAAElS,EAAE,GAAG,CAAC,CA0bnBkwO,EAAKrvE,GAAI7gK,GAAGA,IAAI6gK,GAAI3uJ,GAAGA,GAAG,CACnD,SAASi+N,GAAInwO,EAAEkS,GAAG,OAAOk+N,IAAKvvE,GAAI7gK,GAAGA,IAAI6gK,GAAI3uJ,GAAGA,GAAG,CACnD,SAASgkF,GAAGl2F,EAAEkS,GAAG,OAAO6xK,GAAG7xK,GAAGlS,EAAEA,EAAEqwO,GAAGn+N,KAAKlS,EAAEkS,EAAEm+N,GAAGn+N,EAAE,CAInD,SAASo+N,GAAItwO,EAAEkS,GAAG,OAAOq+N,GAAIvwO,GAAG6gK,GAAI3uJ,GAAG,IAAIm0J,GAAIn0J,IAAI,CACnD,SAASs+N,GAAIxwO,EAAEkS,GAAG,OAAOq+N,GAAIvwO,GAAG6gK,GAAI3uJ,GAAG,IAAIo0J,GAAIp0J,IAAI,CACnD,SAASu+N,GAAIzwO,GAAG,OAAO0wO,KAA2B,GAArB/yD,GAAG39K,EAAE,IAAIuF,EAAEgqB,EAAErxB,MAAS,CACnD,SAASyyO,GAAI3wO,GAAG,OAAO0wO,KAA2B,GAArB/yD,GAAG39K,EAAE,IAAI2S,EAAE4c,EAAErxB,MAAS,CAEnD,SAAS0yO,GAAI5wO,EAAEkS,EAAEqd,GAAG,OAk7GpB,SAAavvB,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAE,GAAiB,GAAdd,EAAE3M,EAAEgqB,EAAErxB,QAAyB,GAAdqxB,EAAEhqB,EAAEgqB,EAAErxB,OAAU,CAAiD,IAAhD6B,EAAE49K,GAAG0pB,GAAIn1L,EAAE3M,EAAE,GAAG,IAAIgqB,EAAEvxB,KAAE2U,EAAEgrK,GAAG0pB,GAAI93K,EAAEhqB,EAAE,GAAG,IAAIgqB,EAAEvxB,GAAW,OAAO6hN,GAAIliC,GAAG4qB,IAAI5qB,GAAG0pB,GAAIn1L,EAAE3M,EAAE,GAAG,KAAKyiM,MAAM6oC,MAAM,IAAI7wO,EAAE29K,GAAG4qB,IAAI5qB,GAAG0pB,GAAI93K,EAAEhqB,EAAE,GAAG,IAAIsrO,KAAK,IAAI7wO,GAAG,IAAU8T,EAAE,EAAEd,GAAV3R,EAAErB,EAAEA,GAAU9B,OAAO4V,EAAEd,IAAIc,EAAE,CAAQ,IAAP1B,EAAE/Q,EAAEyS,KAAS/T,EAAG,OAAO,EAAO,GAAGqS,GAAGO,EAAG,OAAQ,CAAE,CAAC,CAAC,GAAiB,GAAdT,EAAES,EAAE4c,EAAErxB,QAAyB,GAAdqxB,EAAE5c,EAAE4c,EAAErxB,OAA2M,OAAhM48B,EAAE6iJ,GAAG4qB,IAAIr2L,GAAG81L,MAAM8oC,MAAM,IAAI9yO,EAAE2/K,GAAG4qB,IAAIh5K,EAAEuhN,KAAK,IAAIvrO,EAAE,EAAE9B,EAAE,EAAE+uN,GAAI70C,GAAG0pB,GAAIn1L,EAAES,EAAE,GAAG,IAAIk+N,OAAOtrO,EAAEo4K,GAAG4qB,IAAI5qB,GAAG0pB,GAAIn1L,EAAES,EAAE,GAAG,IAAIk+N,KAAK,IAAI7wO,GAAGwyN,GAAI70C,GAAG0pB,GAAI93K,EAAE5c,EAAE,GAAG,IAAIk+N,OAAOptO,EAAEk6K,GAAG4qB,IAAI5qB,GAAG0pB,GAAIn1L,EAAES,EAAE,GAAG,IAAIk+N,KAAK,IAAI7wO,GAAQ86B,GAAGA,GAAG98B,EAAMikL,GAAIk6B,GAAG5T,IAAI5qB,GAAG0pB,GAAIn1L,EAAES,EAAE,GAAG,IAAIo+N,SAAS9uD,GAAIk6B,GAAG5T,IAAI5qB,GAAG0pB,GAAI93K,EAAE5c,EAAE,GAAG,IAAIo+N,OAAe,GAAW9uD,GAAIk6B,GAAG5T,IAAI5qB,GAAG0pB,GAAIn1L,EAAES,EAAE,GAAG,IAAIo+N,QAAQ9uD,GAAIk6B,GAAG5T,IAAI5qB,GAAG0pB,GAAI93K,EAAE5c,EAAE,GAAG,IAAIo+N,QAAyBxrO,EAAE9B,GAAX,EAAgB8B,EAAE9B,EAAE,EAAE,GAAKzD,EAAEkS,IAAGlS,EAAEkS,EAAE/K,GAAG2zB,KAAKv1B,EAAEo4K,GAAG39K,EAAEkS,EAAE8+N,GAAGl2M,GAAG,IAAI96B,GAAGA,EAAEkS,EAAE/K,GAAGnJ,KAAKyF,EAAEk6K,GAAG39K,EAAEkS,EAAE8+N,GAAGhzO,GAAG,IAAIgC,IAAUuF,EAAE9B,GAAG,EAAE8B,EAAE9B,EAAE,EAAE,GAAE,OAAqB,GAAdyO,EAAE3M,EAAEgqB,EAAErxB,QAAyB,GAAdqxB,EAAE5c,EAAE4c,EAAErxB,OAAU,GAAG,CAAC,CAl7G32B+yO,CAAIjxO,EAAE29K,GAAGzrK,EAAE,IAAIyrK,GAAGpuJ,EAAE,IAAI,CACnD,SAAS2hN,GAAIlxO,GAAG,OAAGA,EAAEuF,EAAU4rO,GAAInxO,EAAEuF,GAAU,IAAI,CACnD,SAAS6rO,GAAIpxO,GAAOA,EAAED,IAAGC,EAAED,EAAEC,EAAEkS,EAAEypM,KAAK37M,EAAEuvB,EAAEvvB,EAAEkS,EAAE+sK,KAAK,CAEnD,SAASoyD,GAAIrxO,EAAEkS,GAAG,GAAGlS,EAAE,GAAGA,GAAGkS,EAAG,MAAMghK,GAAI,IAAI0C,GAAK,CAGnD,SAAS07D,GAAItxO,EAAEkS,EAAEqd,GAAS,OAANgiN,MAAaC,GAAIxxO,EAAEkS,IAAIs/N,GAAIxxO,EAAEuvB,EAAE,CACnD,SAASkiN,GAAIzxO,GAAS,OAAN6oM,OAAc7oM,EAAEigM,GAAG6I,OAAO9oM,EAAEigM,GAAG+I,IAAI,CACnD,SAAS0oC,GAAI1xO,GAAG,OAAO,IAAIi1M,GAAIj1M,EAAEuvB,EAAEvvB,EAAEkS,EAAE,EAAElS,EAAED,EAAEC,EAAEA,EAAE,EAAE,CACnD,SAAS2xO,GAAI3xO,EAAEkS,GAAG,OAAOA,EAAE0/N,KAAKnd,GAAIz0N,EAAEkS,EAAEyrK,GAAGzrK,EAAE,KAAKA,CAAC,CACnD,SAASirM,GAAIn9M,EAAEkS,GAAG5N,KAAKiB,EAAEvF,EAAEsE,KAAKvE,EAAU,IAAL,GAAFmS,GAASA,EAAE2/N,IAAI3/N,CAAC,CACnD,SAAS8wN,GAAIhjO,EAAEkS,GAAG5N,KAAKirB,EAAE,EAAEjrB,KAAKvE,EAAEC,EAAEsE,KAAK4N,EAAI,GAAFA,EAAK2/N,GAAG,CACnD,SAASC,GAAI9xO,GAAGsE,KAAK4N,EAAE,IAAI++M,GAAI,IAAI3sN,KAAKtE,GAAG+xO,KAAM/xO,EAAE,CACnD,SAASq5L,GAAIr5L,GAAGsE,KAAK4N,EAAE,KAAK5N,KAAKtE,GAAG+xO,KAAO/xO,GAAEgyO,IAAM,CACnD,SAASC,GAAIjyO,GAAGsE,KAAKtE,EAAEkyO,IAAIlyO,EAAEA,GAAGsE,KAAK4N,EAAE,IAAI8sN,GAAIh/N,EAAEkS,EAAE,CACnD,SAASigO,GAAInyO,GAAGsE,KAAK4N,EAAElS,EAAE0wN,GAAI3xN,KAAKuF,KAAKtE,GAAGwqN,GAAIlmN,KAAK,CACnD,SAAS8tO,GAAIpyO,GAAGsE,KAAK4N,EAAElS,EAAE4wN,GAAI7xN,KAAKuF,KAAKtE,GAAG0qN,GAAIpmN,KAAK,CACnD,SAAS+tO,GAAIryO,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEi7N,GAAIl8N,KAAKuF,KAAK4N,EAAEqd,EAAE,EAAE,EAAE,CACnD,SAASqsM,GAAI57N,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAK4N,EAAElS,EAAEg/K,GAAIjgL,KAAKuF,KAAK4N,EAAEqd,EAAExvB,EAAE,CACnD,SAASuyO,GAAItyO,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGgtO,GAAIxzO,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,EAAE,CACnD,SAASitO,GAAIxyO,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGktO,GAAI1zO,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,EAAE,CACnD,SAAS+0L,GAAIt6L,EAAEkS,EAAEqd,EAAExvB,GAAGi/K,GAAIjgL,KAAKuF,KAAKtE,EAAEkS,EAAEqd,GAAGjrB,KAAK4N,EAAEnS,CAAC,CACnD,SAASs7N,GAAIr7N,EAAEkS,EAAEqd,EAAExvB,GAAG4rN,GAAI5sN,KAAKuF,KAAKtE,EAAEkS,EAAEqd,GAAGjrB,KAAK4N,EAAEnS,CAAC,CACnD,SAAS2yO,GAAI1yO,GAAGk6M,GAAIn7M,KAAKuF,KAAKtE,GAAE,GAAOsE,KAAKtE,GAAE,CAAK,CACnD,SAAS2yO,GAAG3yO,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAE8hK,GAAG/iK,KAAKuF,KAAKtE,EAAEkS,GAAG5N,KAAKtE,EAAEkS,CAAC,CACpD,SAAS+pE,GAAGj8E,EAAEkS,GAAGkiK,KAAKp1E,GAAGjgG,KAAKuF,KAAKtE,EAAE4yO,GAAG,IAAIt0D,GAAIpsK,IAAI,CACpD,SAAS2gO,GAAI7yO,EAAEkS,GAAe,OAAZgyM,MAAmB,IAAI4uB,GAAI9yO,EAAEkS,EAAE,EAAE,CACnD,SAAS6gO,GAAI/yO,EAAEkS,GAAe,OAAZgyM,MAAmB,IAAI4uB,GAAI,EAAE9yO,EAAEkS,EAAE,CACnD,SAAS8gO,GAAIhzO,EAAEkS,GAAG,OAAOmqN,GAAIr8N,EAAEyzD,OAAO,EAAEvhD,EAAEhU,QAAQgU,EAAE,CACpD,SAAS0uL,GAAI5gM,EAAEkS,GAAG,OAAOipM,GAAGjpM,GAAG+gO,GAAIjzO,EAAEkS,KAAKghO,GAAIlzO,EAAE86B,EAAE5oB,EAAE,CACpD,SAASihO,GAAInzO,EAAEkS,GAAU,IAAP2uJ,GAAI3uJ,GAASlS,EAAEu7M,MAAMrpM,EAAE0uK,GAAG5gL,EAAEy7M,KAAM,CACpD,SAAS23B,GAAIpzO,EAAEkS,EAAEqd,GAAGwzL,MAAMz+M,KAAKiB,EAAEvF,EAAEsE,KAAKvE,EAAEmS,EAAE5N,KAAKtE,EAAEuvB,CAAC,CACpD,SAAS8jN,GAAIrzO,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,GAAEA,EAAEvF,EAAEhC,GAAIA,EAAEkU,EAAE3M,EAAEvF,EAAEuvB,EAAEhqB,EAAE2M,EAAEnS,CAAC,CACnD,SAASuzO,GAAItzO,GAAG,IAAIkS,EAAM,IAAJA,EAAElS,EAAQkS,EAAE4oB,GAAG5oB,EAAEA,EAAE4oB,EAAE,OAAO5oB,CAAC,CACnD,SAASqhO,GAAIvzO,GAAG,IAAIkS,EAAwB,OAAbo3M,GAAO,OAAhBp3M,EAAEshO,GAAIxzO,KAAuBkS,CAAC,CACpD,SAASuhO,GAAIzzO,GAAG,IAAIkS,EAAwB,OAAtBA,EAwlDtB,SAAalS,GAAG,IAAIkS,EAA4B,GAA1BA,EAAElS,EAAEA,EAAEA,EAAEuvB,EAAE,EAAEvvB,EAAEA,EAAE9B,OAAO,GAAS,MAAHgU,EAAS,OAAO,KAA6C,OAAxClS,EAAEuvB,EAAEvvB,EAAEuvB,EAAE,EAAEvvB,EAAEA,EAAE9B,OAAO,EAAEyoM,GAAG3mM,EAAEA,EAAEA,EAAEuvB,EAAE,MAAard,CAAC,CAxlDhGwhO,CAAI1zO,GAAGspN,GAAO,MAAHp3M,GAAgBA,CAAC,CACpD,SAASyhO,GAAG3zO,EAAEkS,GAAG,IAAIqd,EAAqB,OAAR+gM,GAAGp+M,EAAdqd,EAAEvvB,EAAEA,EAAEi/K,MAAoB1vJ,EAAErd,CAAC,CACpD,SAASuwK,GAAIziL,EAAEkS,GAAG,IAAIqd,EAAE,IAAIA,EAAE,EAAEA,EAAErd,IAAIqd,EAAGvvB,EAAEuvB,IAAG,CAAM,CAEpD,SAASqkN,GAAI5zO,EAAEkS,EAAEqd,EAAExvB,GAAGyrO,GAAIt5N,EAAEqd,EAAEvvB,EAAE9B,QADhC,SAAa8B,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAE,IAAIA,EAAE2M,EAAE3M,EAAEgqB,IAAIhqB,EAAGvF,EAAEuF,GAAGxF,CAAE,CACZ8zO,CAAI7zO,EAAEkS,EAAEqd,EAAExvB,EAAE,CAEpD,SAAS+zO,GAAI9zO,EAAEkS,EAAEqd,GAAGjrB,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAEkS,EAAE+0M,KAAM3iN,KAAK4N,EAAEqd,CAAC,CACpD,SAASg8M,GAAIvrO,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAoB,OAAlBA,EAAEC,EAAEkS,EAAEA,GAAGlS,EAAEkS,EAAEA,GAAGqd,EAASxvB,CAAC,CACpD,SAAS4nL,GAAI3nL,EAAEkS,GAAuB,OAAU,MAAtBlS,EAAEA,EAAE65N,GAAG3nN,EAAElS,EAAiB,CACpD,SAAS+zO,GAAI/zO,GAAG,IAAIA,EAAG,MAAMkzK,GAAI,IAAImC,IAAK,OAAOr1K,EAAED,CAAC,CACpD,SAASi0O,GAAIh0O,EAAEkS,GAAG,GAAM,MAAHlS,EAAS,MAAMkzK,GAAI,IAAI8O,GAAI9vK,GAAI,CACpD,SAAS+hO,GAAIj0O,EAAEkS,GAAG,QAAIA,GAAuBqnL,GAAGv5L,EAAEkS,EAAE,CACpD,SAASgiO,GAAIl0O,EAAEkS,EAAEqd,GAA2B,OA+8C5C,SAAavvB,EAAEkS,EAAEqd,GAAG,GAAGrd,EAAE,EAAG,MAAMghK,GAAI,IAAIgO,GAAIizD,IAAIjiO,IAAOA,EAAElS,EAAEoS,EAAEmd,EAAErxB,OAAQk2O,GAAIp0O,EAAEoS,EAAEF,EAAEqd,IAAQ8kN,GAAIr0O,EAAEkS,GAAG6jK,GAAI/1K,EAAEoS,EAAEmd,GAAG,CA/8C3F+kN,CAAIt0O,EAAEkS,EAAES,EAAE4c,GAAGq4K,GAAI5nM,EAAEuvB,EAAErd,GAAUlS,CAAC,CAEpD,SAAS+yG,GAAI/yG,GAA6B,OAAzBA,EAAEoS,GAhwDnB,SAAapS,EAAEkS,GAAGlS,EAAEoS,EAAEF,CAAC,CAgwDDqiO,CAAIv0O,EA+9F1B,SAAaA,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAc,GAAZuxB,EAAErd,EAAEk8N,GAAGpuO,EAAEA,GAAMuvB,GAAoE,OAAjEvxB,EAAE8lL,GAAGyqD,MAAMh/M,EAAErd,IAAIqd,EAAErd,EAAE,IAAIyhN,IAAK6a,MAAMC,KAAKC,IAAGn/M,IAAIA,EAAErd,GAAG+hL,OAAiB,CAAW,IAAVl0L,EAAE,IAAIuyK,GAAuB3/J,EAAE,EAAElP,GAAnBq3B,EAAE05M,IAAIx2O,EAAE,QAAeE,OAAOyU,EAAElP,IAAIkP,EAAU0pN,GAAP92N,EAAEu1B,EAAEnoB,GAAS,WAAWojK,GAAIh2K,EAAE,MAAMmuO,GAAIluO,EAAEy0O,GAAIviO,EAAEwiO,QAAQrY,GAAI92N,EAAE,WAAYxF,EAAEwvB,EAAExvB,EAAEwvB,EAAErxB,QAAQ,KAAWm+N,GAAI92N,EAAEixL,KAAKzgB,GAAIh2K,EAAEmuO,GAAIluO,EAAEy0O,GAAIviO,EAAEwiO,QAAS30O,EAAEwvB,EAAExvB,EAAEwvB,EAAErxB,QAAQqH,EAAQ,OAAOxF,CAAC,CAAE,OAAOknN,KAAMA,KAAM+Y,GAAG,CA/9FzV2U,CAAI30O,EAAE2S,EAAE3S,EAAEkS,IAAWlS,EAAEoS,CAAC,CACpD,SAASwiO,GAAI50O,GAAGoyN,IAAU,GAANpyN,EAAEkS,GAAO2iO,GAAI70O,EAAEuvB,EAAEvvB,EAAEA,EAAEA,EAAEkS,GAAGlS,EAAEkS,GAAG,CAAC,CACpD,SAASugK,GAAIzyK,GAAGA,EAAE86B,EAAE,IAAIklL,GAAIhgN,GAAGA,EAAE2S,EAAE,IAAIstM,GAAIjgN,GAAG80O,GAAI90O,EAAE,CACpD,SAAS+0O,GAAI/0O,GAAG,OAAO,IAAIoqN,GAAI,KAU/B,SAAapqN,EAAEkS,GAAG,OAy+BlB,SAAalS,EAAEkS,GAAG,GAAG,EAAElS,GAAGA,EAAEkS,EAAG,MAAMghK,GAAI,IAAIkR,GAAI,0BAA0BpkL,EAAEg1O,IAAI9iO,GAAI,CAz+B5D+iO,CAAI/iO,EAAElS,EAAE9B,QAAQ,IAAI8nO,GAAIhmO,EAAEkS,EAAE,CAVjBgjO,CAAIl1O,EAAEA,EAAE9B,QAAQ,CACpD,SAAS+sN,GAAGjrN,GAAG,OAAO,IAAI8uO,GAAG,IAAIpiB,GAAG1sN,EAAEA,EAAE9B,OAAO8B,EAAEA,GAAG,CAEpD,SAASguO,GAAGhuO,GAAG,cAAcA,IAAIm1O,YAAYn1O,IAAImlL,GAAG,CAIpD,SAASiwD,GAAIp1O,EAAEkS,GAAG,OAAOg7L,GAAIltM,EAAEkS,GAAG,GAAG,EAAEg7L,GAAIltM,EAAEkS,GAAG,EAAE,EAAE,CAAC,CACrD,SAASmjO,GAAIr1O,EAAEkS,EAAEqd,GAAG,OAAO+lN,IAAIt1O,EAAE29K,GAAGzrK,EAAE,IAAIyrK,GAAGpuJ,EAAE,KAAK,CACpD,SAASgmN,GAAGv1O,EAAEkS,GAAG,OAAOyrK,GAAGwxD,GAAGrJ,GAAG9lO,EAAEA,IAAIq7M,GAAGnpM,GAAG,IAAI26L,IAAI,CAErD,SAASywB,GAAIt9N,EAAEkS,GAAG5N,KAAKvE,EAAEC,EAAE++K,GAAIhgL,KAAKuF,KAAKtE,GAAGsE,KAAKiB,EAAE2M,CAAC,CACpD,SAASsjO,GAAIx1O,GAAGsE,KAAKvE,GAAG8gK,GAAI7gK,GAAGA,GAAGsE,KAAKtE,EAAE,EAAEsE,KAAKirB,EAAEiuM,GAAG,CACrD,SAAS6N,GAAIrrO,EAAEkS,GAAGggK,GAAInzK,KAAKuF,KAAK,GAAGA,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CACpD,SAASujO,GAAIz1O,EAAEkS,GAA8B,OAA1BlS,EAAEuvB,EAAakmN,GAAIz1O,EAAEuvB,EAAErd,GAAnB6jK,GAAI/1K,EAAEkS,EAAEA,GAAqBlS,CAAC,CACrD,SAAS01O,GAAG11O,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAsB,OAApBA,EAAE41O,GAAG31O,EAAEkS,GAAG0jO,GAAG51O,EAAEkS,EAAEqd,GAAUxvB,CAAC,CACrD,SAASuxN,GAAItxN,EAAEkS,GAAwB,OAAO2zK,GAApB7lL,EAAEkM,MAAM,EAAEgG,GAAelS,EAAE,CACrD,SAASiuM,GAAIjuM,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAE,IAAIA,EAAE,EAAEA,EAAEmS,IAAInS,EAAG4mM,GAAG3mM,EAAED,EAAEwvB,EAAG,CACrD,SAASsmN,GAAI71O,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,KAAM2M,EAAEqd,GAAGxvB,EAAEwF,KAAK2zL,GAAIl5L,EAAEkS,IAAK,CAErD,SAASulN,GAAIz3N,EAAEkS,GAAG,OAA+B,MAAxB4jO,GAAI91O,EAAEA,EAAEkS,GAAGw7M,KAAMC,KAAW,CACrD,SAASooB,GAAI/1O,EAAEkS,GAAG6qM,GAAI/8M,EAAED,EAAEmS,EAAElS,EAAEkS,EAAEA,EAAElS,EAAEkS,KAAKlS,EAAEA,EAAEA,EAAEuvB,EAAE,IAAI,CACrD,SAASymN,GAAIh2O,EAAEkS,GAAGk1M,GAAIpnN,EAAE6pL,GAAG33K,EAAE,KAAKA,EAAEyrK,GAAGzrK,EAAE,MAAM+jO,KAAK,CACpD,SAASC,GAAIl2O,EAAEkS,GAAGwvL,GAAIy0C,GAAIn2O,EAAEgpL,KAAK,IAAIpiC,IAAK,IAAIwkB,GAAIl5J,GAAG,CACrD,SAASkkO,GAAIp2O,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG8wO,IAAIr2O,EAAE29K,GAAG0iB,GAAGnuL,EAAE7Q,EAAEkuB,GAAG,IAAIA,EAAExvB,EAAEwF,EAAE,CACrD,SAAS+wO,GAAIt2O,GAAGA,EAAE6T,EAAEwkL,IAAIr4L,EAAEuvB,EAAE8oK,IAAIk+C,IAAIv2O,EAAEA,EAAEuF,GAAGgxO,IAAIv2O,EAAEA,EAAEoS,EAAE,CACrD,SAASokO,GAAGx2O,GAAGA,EAAEA,EAAE,KAAKA,EAAEuF,EAAE,KAAKktK,GAAIzyK,EAAEkS,GAAGlS,EAAED,EAAE,IAAIC,EAAEuvB,CAAC,CACrD,SAASknN,GAAIz2O,GAAG,OAAOizI,EAAK3/H,KAAKskB,IAAI53B,EAAED,EAAEwF,EAAEvF,EAAEuF,EAAEA,GAAGvF,EAAEA,CAAC,CAIrD,SAAS02O,GAAI12O,GAAGi6N,GAAIl7N,KAAKuF,MAAMA,KAAKtE,EAAEA,EAAE+1K,GAAI/1K,EAAEA,EAAEsE,KAAK,CACrD,SAASqyO,GAAI32O,EAAEkS,GAAG5N,KAAKvE,EA8iDvB,SAAaC,GAAG,OAAOA,GAAG,KAAK,EAAE,OAAO,IAAIq5K,GAAI,KAAK,EAAE,OAAO,IAAIH,GAAI,KAAK,EAAE,OAAO,IAAIE,GAAI,QAAQ,MAAMlG,GAAI,IAAI6B,IAAM,CA9iD/F6hE,CAAI52O,GAAGsE,KAAKirB,EAAErd,EAAE5N,KAAKtE,EAAE,GAAIkS,CAAC,CACrD,SAAS2kO,KAAMr2B,GAAIzhN,KAAKuF,MAAMA,KAAKtE,GAAE,EAAKsE,KAAK4N,GAAE,CAAI,CACrD,SAAS4kO,GAAI92O,GAAG,OAAa,MAALA,EAAEhC,GAAS+4O,IAAI/2O,GAAGA,EAAEhC,GAAGE,MAAM,CACrD,SAAS84O,GAAIh3O,GAAG,OAAO6pL,GAAG7pL,EAAE,KAAwB,IAAlB29K,GAAG39K,EAAE,IAAIw1K,GAAGyhE,IAAO,CACrD,SAASC,GAAIl3O,EAAEkS,KAAKlS,EAAEoS,EAAE+kO,IAAIn3O,EAAEA,EAAEhC,EAAEkU,GAu9ElC,SAAalS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAE96B,EAAEoS,GAAG,EAAKkvM,GAAIthN,EAAEuF,IAAIgqB,EAAEvvB,EAAEhC,EAAE88B,EAAO,GAAL96B,EAAEhC,EAAKo5O,GAAIp3O,EAAEkS,GAAGnS,EAAE,IAAIs3O,GAAIr3O,EAAEuF,EAAE,EAAEvF,EAAEuvB,EAAE,KAAKrd,EAAEqd,EAAEuL,GAAGv1B,EAAE2M,EAAEolO,GAAGt3O,EAAEuF,EAAEvF,EAAEuvB,EAAE,OAAMhqB,EAAEgyO,IAAIv3O,EAAEkS,EAAE3M,KAA0BA,EAAE+4N,GAAGv+N,GAAGwF,EAAEymL,MAA1B/V,GAAIj2K,EAAEuF,EAAExF,KAA6Bq3O,GAAIp3O,EAAEkS,IAAG3M,EAAE2M,EAAEolO,GAAGt3O,EAAEuF,EAAEvF,EAAEuvB,EAAE,QAAWhqB,EAAEymL,KAAK,CAv9E7LwrD,CAAIx3O,EAAE29K,GAAGzrK,EAAE,KAAK,CACrD,SAASsU,GAAIxmB,EAAEkS,GAAkB,OAAfA,EAAElS,EAAEy3O,GAAG,KAAKvlO,GAAUwlO,IAAI13O,EAAE,KAAKkS,EAAE,CACrD,SAASk2M,GAAIpoN,EAAEkS,GAAwB,OAArBlS,EAAEynN,OAAOv1M,EAAEylO,GAAI33O,EAAEkS,IAAWlS,EAAE43O,GAAG1lO,EAAE,CACrD,SAAS2lO,GAAI73O,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAsB,OAAT+3O,GAAIvoN,EAAfxvB,EAAEunO,GAAItnO,EAAEkS,IAAmBnS,CAAC,CACtD,SAASunO,GAAItnO,EAAEkS,GAAG,IAAIqd,EAAwB,OAAtBA,EAAE,IAAIwoN,IAAM3lO,EAAEpS,EAAEuvB,EAAExvB,EAAEmS,EAASqd,CAAC,CACtD,SAASw0J,GAAG/jL,GAAG,GAAM,MAAHA,EAAS,MAAMkzK,GAAI,IAAI+B,IAAK,OAAOj1K,CAAC,CACtD,SAAS6nN,GAAG7nN,GAAe,OAAJA,EAAEoS,IAAapS,EAAEoS,EAAE,IAAI6vJ,GAAGjiK,GAAK,CACtD,SAASg4O,GAAGh4O,GAAe,OAAJA,EAAE86B,IAAa96B,EAAE86B,EAAE,IAAI0xL,GAAGxsN,GAAK,CACtD,SAASi4O,GAAGj4O,GAAS,OAASA,EAAEqB,IAAMrB,EAAEqB,EAAE,IAAI09F,GAAG/+F,GAAK,CACtD,SAASk4O,GAAGl4O,GAAS,OAASA,EAAEqB,IAAMrB,EAAEqB,EAAE,IAAI09F,GAAG/+F,GAAK,CACtD,SAASk/N,GAAGl/N,GAAS,OAASA,EAAE2S,IAAM3S,EAAE2S,EAAE,IAAIo6C,GAAG/sD,GAAK,CAEtD,SAASm4O,GAAGn4O,GAAe,OAAJA,EAAED,IAAaC,EAAED,EAAE,IAAIivC,GAAGhvC,GAAK,CACtD,SAAS6sN,GAAG7sN,GAAS,OAAN+jL,GAAG/jL,GAAU6pL,GAAG7pL,EAAE,KAAK29K,GAAG39K,EAAE,KAAKyuN,GAAIzuN,EAAE,CACtD,SAASo4O,GAAGp4O,GAAG,OAAG6pL,GAAG7pL,EAAE,KAAaA,EAAS,IAAIq4O,GAAGr4O,EAAE,CACtD,SAASs4O,GAAGt4O,EAAEkS,GAAsB,OAAnBupM,GAAGvpM,EAAElS,EAAEuvB,EAAErd,EAAEqd,EAAE0vJ,MAAa,IAAIuf,GAAGx+L,EAAEkS,EAAE,CACtD,SAASqmO,GAAIv4O,EAAEkS,EAAEqd,GAAe,OAAZ20L,MAAmB,IAAIs0B,GAAIx4O,EAAEkS,EAAEqd,EAAE,CACrD,SAASo3K,GAAG3mM,EAAEkS,EAAEqd,GAAyB,OA9oBzC,SAAavvB,GAAG,IAAIA,EAAG,MAAMkzK,GAAI,IAAI2B,GAAK,CA8oBvB4jE,CAAO,MAAHlpN,GAu+FvB,SAAYvvB,EAAEkS,GAAG,IAAIqd,EAAE,OAAOmpN,GAAG14O,IAAI,KAAK,EAAE,OAAOm7M,GAAGjpM,GAAG,KAAK,EAAE,OAAO+oM,GAAG/oM,GAAG,KAAK,EAAE,OAAO8oM,GAAG9oM,GAAG,KAAK,EAAE,OAAO5T,MAAMC,QAAQ2T,OAAKqd,EAAEmpN,GAAGxmO,KAAQ,IAAIqd,GAAG,IAAK,KAAK,GAAG,OAAU,MAAHrd,UAAgBA,IAAIizK,IAAI,KAAK,GAAG,OAAU,MAAHjzK,WAAiBA,IAAIijO,YAAYjjO,GAAGizK,KAAK,KAAK,EAAE,OAAO2jC,IAAG52M,EAAElS,EAAE24O,kBAAkB,KAAK,EAAE,OAAO3K,GAAG97N,MAAMA,EAAEkiK,KAAK3/B,GAAK,KAAK,EAAE,OAAOu5F,GAAG97N,MAAMA,EAAEkiK,KAAK3/B,IAAMq0E,IAAG52M,EAAElS,EAAE24O,kBAAkB,QAAQ,OAAO,EAAM,CAv+FtXC,CAAG54O,EAAEuvB,IAAWvvB,EAAEkS,GAAGqd,CAAC,CACtD,SAASspN,GAAG74O,EAAEkS,GAAG,IAAIqd,EAAqB,OAARksL,GAAGvpM,EAAdqd,EAAEvvB,EAAEA,EAAEi/K,MAAoB1vJ,EAAE,EAAErd,CAAC,CACtD,SAASsqL,GAAIx8L,EAAEkS,GAA+B,OAA5BlS,EAAEA,GAAGyjG,OAAOgjH,aAAav0M,GAAUlS,CAAC,CACtD,SAAS84O,GAAI94O,EAAEkS,GAA+B,OAA5BlS,EAAEA,GAAGyjG,OAAOgjH,aAAav0M,GAAUlS,CAAC,CACtD,SAAS+4O,GAAI/4O,EAAEkS,GAAU,IAAP2uJ,GAAI3uJ,GAASlS,EAAEuvB,EAAEvvB,EAAED,GAAGC,EAAEg5O,GAAG9mO,EAAElS,EAAEuvB,IAAK,CACtD,SAASmoL,GAAI13M,EAAEkS,GAAG,OAAOipM,GAAGjpM,GAAGo4K,GAAItqL,EAAEkS,GAAG2oM,GAAGq4B,GAAIlzO,EAAE86B,EAAE5oB,GAAG,CAItD,SAAS+mO,GAAIj5O,GAAGsE,KAAK4N,EAAE,IAAIogK,GAAIhuK,KAAKtE,EAAE,IAAIsyK,GAAIhuK,KAAKirB,EAAEvvB,CAAC,CACtD,SAASk5O,GAAIl5O,GAAGsE,KAAKirB,EAAE,IAAIq5J,GAAItkL,KAAKtE,EAAE,IAAIsyK,GAAIhuK,KAAK4N,EAAElS,CAAC,CACtD,SAASm5O,GAAIn5O,GAAGi6N,GAAIl7N,KAAKuF,MAAMA,KAAKtE,EAAE,IAAI4oL,GAAItkL,KAAKirB,EAAEvvB,CAAC,CACtD,SAASghL,GAAGhhL,GAAG,GAAM,MAAHA,EAAS,MAAMkzK,GAAI,IAAI+B,IAAK3wK,KAAKtE,EAAEA,CAAC,CACtD,SAASo5O,GAAGp5O,GAAG21K,KAAKrxK,KAAK4N,EAAE,IAAIogK,GAAIhuK,KAAKtE,EAAEA,EAwsG1C,SAAYA,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAoB,IAAlB4c,EAAE,IAAIk1J,GAAI9xK,GAAE,EAAUmoB,EAAE,EAAEA,EAAE5oB,EAAEhU,OAAO48B,IAAyC,GAAjC88J,GAAI98J,EAAE5oB,EAAEhU,QAA+B,KAA1C6B,EAAmBmS,EAAEmN,WAAWyb,IAA0HnoB,EAAS,IAAH5S,EAAU+6B,EAAE,EAAE5oB,EAAEhU,SAAS05L,GAAI98J,EAAE,EAAE5oB,EAAEhU,QAA2B,IAAnBgU,EAAEmN,WAAWyb,EAAE,KAASvL,EAAEvvB,GAAGyjG,OAAOgjH,aAAa1mN,KAAK+6B,GAAOnoB,GAAE,EAAY4c,EAAEvvB,GAAGyjG,OAAOgjH,aAAa1mN,GAAeu/M,GAAI,sBAAsB8R,IAAIrxN,IAAI,GAAGs5O,IAAGr5O,EAAEuvB,EAAE,GAAGA,EAAEvvB,GAAGyjG,OAAOgjH,aAAa1mN,GAAas5O,IAAGr5O,EAAEuvB,EAAfhqB,EAAE+zO,IAAGpnO,EAAE4oB,IAAaA,GAAGv1B,EAAE,GAAiB,IAAHxF,EAAU+6B,EAAE,EAAE5oB,EAAEhU,SAAS05L,GAAI98J,EAAE,EAAE5oB,EAAEhU,QAA2B,IAAnBgU,EAAEmN,WAAWyb,EAAE,KAASvL,EAAEvvB,GAAG,MAAM86B,GAAOnoB,GAAE,EAAW4c,EAAEvvB,GAAGyjG,OAAOgjH,aAAa1mN,QAAhe,IAA7Bs5O,IAAGr5O,EAAEuvB,EAAE,GAAGA,EAAEvvB,GAAG,IAAIq5O,IAAGr5O,EAAEuvB,EAAE,GAASuL,EAAE,EAAE5oB,EAAEhU,SAAS05L,GAAI98J,EAAE,EAAE5oB,EAAEhU,QAA2B,IAAnBgU,EAAEmN,WAAWyb,EAAE,OAAWA,EAAmau+M,IAAGr5O,EAAEuvB,EAAE,GA1jC/nB,SAAYvvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAyB,IAAvBmS,GAAE,EAAMnS,EAAEC,EAAEkS,EAAEqd,EAAErxB,OAAWqxB,EAAE,EAAEA,EAAExvB,EAAEwvB,IAAQgqN,GAAG57D,GAAG0pB,GAAIrnM,EAAEkS,EAAEqd,GAAG,OAAWrd,GAAGqd,EAAE,EAAExvB,GAAGw5O,GAAG57D,GAAG0pB,GAAIrnM,EAAEkS,EAAEqd,EAAE,GAAG,QAAOrd,GAAE,EAAKyrK,GAAG0pB,GAAIrnM,EAAEkS,EAAEqd,GAAG,KAAKvvB,GAAE,GAAWkS,GAAE,CAAO,CA0jC8csnO,CAAGx5O,EAAE,CAxsG3lBy5O,CAAGn1O,KAAKtE,EAAE,CACtD,SAAS05O,GAAI15O,GAAGsE,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAE,IAAIy5K,GAAIn1K,KAAK4N,EAAE,IAAIunK,EAAG,CACtD,SAASunB,KAAKA,GAAGtsD,EAAIwsD,IAAG,IAAIv+B,IAAG,GAAOs+B,IAAG,IAAIt+B,IAAG,EAAK,CACrD,SAASyR,KAAKA,GAAG1/B,EAAIs/B,KAAK2lE,IAAG,IAAIC,IAAI3yB,KAAMA,KAAM+Y,KAAK,CACtD,SAASnyB,KAAKA,GAAGn5D,EAAIs/B,KAAK6lE,IAAG,IAAIjsC,IAAIqZ,KAAMA,KAAM6yB,KAAK,CACtD,SAASC,KAAMA,GAAIrlG,EAAIslG,IAm7EvB,WAAqB,IAAIh6O,EAAE,OAAZusM,KAAe0tC,IAAWt8D,GAAG0M,KAAKX,KAAMC,KAAK2F,KAAK,OAAMU,GAAItB,IAAG,IAAIx4B,IAozBlF,WAAe85B,GAAIkqD,IAAG,IAAI3lF,IAAKy7B,GAAImqD,IAAG,IAAIjlF,IAAK86B,GAAIoqD,IAAG,IAAIvkF,IAAKm6B,GAAIqqD,IAAG,IAAIlkF,IAAK65B,GAAIsqD,IAAG,IAAIlkF,IAAK45B,GAAIuqD,IAAG,IAAIlkF,IAAK25B,GAAIwqD,IAAG,IAAIlkF,IAAK05B,GAAIyqD,IAAG,IAAIlkF,IAAKy5B,GAAI0qD,IAAG,IAAI7mF,IAAKm8B,GAAI2qD,IAAG,IAAI7mF,IAAKk8B,GAAI4qD,IAAG,IAAI7mF,IAAKi8B,GAAI6qD,IAAG,IAAI7mF,IAAKg8B,GAAI8qD,IAAG,IAAI7mF,IAAK+7B,GAAI+qD,IAAG,IAAI7mF,IAAK87B,GAAIgrD,IAAG,IAAI7mF,IAAK67B,GAAIirD,IAAG,IAAI7mF,IAAK47B,GAAIkrD,IAAG,IAAI7mF,IAAK27B,GAAI0+C,IAAG,IAAIp6E,IAAK07B,GAAIvE,IAAG,IAAIj3B,IAAKw7B,GAAImrD,IAAG,IAAI1mF,IAAKu7B,GAAIO,IAAG,IAAI77B,IAAKs7B,GAAIxR,GAAG8R,IAAG,GAAG,IAAI37B,IAAKq7B,GAAIQ,IAAG,IAAI57B,IAAKo7B,GAAIk5C,IAAG,IAAIr0E,IAAKm7B,GAAIorD,IAAG,IAAItmF,IAAKk7B,GAAIqrD,IAAG,IAAItmF,IAAKi7B,GAAIS,IAAG,IAAIz7B,IAAKg7B,GAAIsrD,IAAG,IAAIrmF,IAAK+6B,GAAIurD,IAAG,IAAIpmF,IAAK66B,GAAIwrD,IAAG,IAAIpmF,IAAK46B,GAAIyrD,IAAG,IAAIpmF,IAAK26B,GAAIW,IAAG,IAAIr7B,IAAK06B,GAAIY,IAAG,IAAIr7B,IAAKy6B,GAAI0rD,IAAG,IAAIlmF,IAAKw6B,GAAIa,IAAG,IAAIp7B,IAAKu6B,GAAI2rD,IAAG,IAAIjmF,IAAKs6B,GAAI4rD,IAAG,IAAIjmF,IAAKq6B,GAAI6rD,IAAG,IAAIjmF,IAAKo6B,GAAIc,IAAG,IAAIh7B,IAAKk6B,GAAIK,IAAG,IAAIt6B,IAAKi6B,GAAI8rD,IAAG,IAAI9lF,IAAKg6B,GAAI+rD,IAAG,IAAI9lF,GAAI,CApzB7lB+lF,GAAMh8O,EAAE29K,GAAGkM,GAAGS,IAAKZ,KAAMC,KAAK2F,KAAK,KAAKhF,GAAIX,IAAI2F,KAAK,IAAI2sD,GAAI,KAAKhC,KAAI,EAi+B7J,SAAaj6O,GAAG,GAAGA,EAAE8xL,GAAG,OAAO9xL,EAAE8xL,IAAG,EAAK9xL,EAAEkS,EAAEs4K,GAAIxqL,EAAE,GAAG0qL,GAAI1qL,EAAEkS,EAAE,IAAIu4K,GAAIzqL,EAAEkS,EAAE,IAAIlS,EAAEA,EAAEwqL,GAAIxqL,EAAE,GAAG0qL,GAAI1qL,EAAEA,EAAE,GAAGyqL,GAAIzqL,EAAEA,EAAE,GAAGyqL,GAAIzqL,EAAEA,EAAE,GAAGyqL,GAAIzqL,EAAEA,EAAE,GAAGyqL,GAAIzqL,EAAEA,EAAE,GAAGA,EAAEE,EAAEsqL,GAAIxqL,EAAE,GAAG0qL,GAAI1qL,EAAEE,EAAE,GAAGwqL,GAAI1qL,EAAEE,EAAE,GAAGuqL,GAAIzqL,EAAEE,EAAE,IAAIuqL,GAAIzqL,EAAEE,EAAE,IAAIuqL,GAAIzqL,EAAEE,EAAE,IAAIuqL,GAAIzqL,EAAEE,EAAE,IAAIuqL,GAAIzqL,EAAEE,EAAE,IAAIuqL,GAAIzqL,EAAEE,EAAE,IAAIuqL,GAAIzqL,EAAEE,EAAE,IAAIuqL,GAAIzqL,EAAEE,EAAE,IAAIuqL,GAAIzqL,EAAEE,EAAE,IAAIuqL,GAAIzqL,EAAEE,EAAE,IAAIuqL,GAAIzqL,EAAEE,EAAE,IAAIuqL,GAAIzqL,EAAEE,EAAE,IAAIuqL,GAAIzqL,EAAEE,EAAE,IAAIuqL,GAAIzqL,EAAEE,EAAE,IAAIg8O,GAAIl8O,EAAEE,GAAGg8O,GAAIl8O,EAAEE,GAAGg8O,GAAIl8O,EAAEE,GAAGg8O,GAAIl8O,EAAEE,GAAGg8O,GAAIl8O,EAAEE,GAAGg8O,GAAIl8O,EAAEE,GAAGg8O,GAAIl8O,EAAEE,GAAGg8O,GAAIl8O,EAAEE,GAAGg8O,GAAIl8O,EAAEE,GAAGg8O,GAAIl8O,EAAEE,GAAGF,EAAEoD,EAAEonL,GAAIxqL,EAAE,GAAG0qL,GAAI1qL,EAAEoD,EAAE,GAAGsnL,GAAI1qL,EAAEoD,EAAE,GAAGsnL,GAAI1qL,EAAEoD,EAAE,GAAGsnL,GAAI1qL,EAAEoD,EAAE,GAAGqnL,GAAIzqL,EAAEoD,EAAE,GAAGqnL,GAAIzqL,EAAEoD,EAAE,GAAG84O,GAAIl8O,EAAEoD,GAAG84O,GAAIl8O,EAAEoD,GAAGpD,EAAEgU,EAAEw2K,GAAIxqL,EAAE,GAAG0qL,GAAI1qL,EAAEgU,EAAE,GAAGhU,EAAEmR,EAAEq5K,GAAIxqL,EAAE,GAAGyqL,GAAIzqL,EAAEmR,EAAE,GAAG+qO,GAAIl8O,EAAEmR,GAAG+qO,GAAIl8O,EAAEmR,GAAG+qO,GAAIl8O,EAAEmR,GAAGnR,EAAEuD,EAAEinL,GAAIxqL,EAAE,GAAG0qL,GAAI1qL,EAAEuD,EAAE,GAAGmnL,GAAI1qL,EAAEuD,EAAE,GAAGmnL,GAAI1qL,EAAEuD,EAAE,GAAGknL,GAAIzqL,EAAEuD,EAAE,GAAGvD,EAAE4kC,EAAE4lJ,GAAIxqL,EAAE,GAAGyqL,GAAIzqL,EAAE4kC,EAAE,GAAGs3M,GAAIl8O,EAAE4kC,GAAGs3M,GAAIl8O,EAAE4kC,GAAGs3M,GAAIl8O,EAAE4kC,GAAG5kC,EAAE2lB,EAAE6kK,GAAIxqL,EAAE,GAAGyqL,GAAIzqL,EAAE2lB,EAAE,GAAGu2N,GAAIl8O,EAAE2lB,GAAG3lB,EAAEitC,EAAEu9I,GAAIxqL,EAAE,GAAG0qL,GAAI1qL,EAAEitC,EAAE,GAAGjtC,EAAEspB,EAAEkhK,GAAIxqL,EAAE,IAAIk8O,GAAIl8O,EAAEspB,GAAG4yN,GAAIl8O,EAAEspB,GAAG4yN,GAAIl8O,EAAEspB,GAAG4yN,GAAIl8O,EAAEspB,GAAG4yN,GAAIl8O,EAAEspB,GAAG4yN,GAAIl8O,EAAEspB,GAAG4yN,GAAIl8O,EAAEspB,GAAG4yN,GAAIl8O,EAAEspB,GAAG4yN,GAAIl8O,EAAEspB,GAAG4yN,GAAIl8O,EAAEspB,GAAG4yN,GAAIl8O,EAAEspB,GAAG4yN,GAAIl8O,EAAEspB,GAAG4yN,GAAIl8O,EAAEspB,GAAG4yN,GAAIl8O,EAAEspB,GAAG4yN,GAAIl8O,EAAEspB,GAAGtpB,EAAEyxL,EAAEjH,GAAIxqL,EAAE,IAAIyqL,GAAIzqL,EAAEyxL,EAAE,IAAIhH,GAAIzqL,EAAEyxL,EAAE,IAAIhH,GAAIzqL,EAAEyxL,EAAE,IAAIhH,GAAIzqL,EAAEyxL,EAAE,IAAIhH,GAAIzqL,EAAEyxL,EAAE,IAAIyqD,GAAIl8O,EAAEyxL,GAAGyqD,GAAIl8O,EAAEyxL,GAAGzxL,EAAE+oC,EAAEyhJ,GAAIxqL,EAAE,IAAI0qL,GAAI1qL,EAAE+oC,EAAE,GAAG2hJ,GAAI1qL,EAAE+oC,EAAE,GAAG0hJ,GAAIzqL,EAAE+oC,EAAE,GAAG0hJ,GAAIzqL,EAAE+oC,EAAE,GAAG0hJ,GAAIzqL,EAAE+oC,EAAE,GAAG0hJ,GAAIzqL,EAAE+oC,EAAE,GAAGmzM,GAAIl8O,EAAE+oC,GAAG/oC,EAAE+lB,EAAEykK,GAAIxqL,EAAE,IAAIyqL,GAAIzqL,EAAE+lB,EAAE,IAAI/lB,EAAE61F,EAAE20F,GAAIxqL,EAAE,IAAI0qL,GAAI1qL,EAAE61F,EAAE,IAAI60F,GAAI1qL,EAAE61F,EAAE,IAAI60F,GAAI1qL,EAAE61F,EAAE,IAAI40F,GAAIzqL,EAAE61F,EAAE,IAAI40F,GAAIzqL,EAAE61F,EAAE,IAAI40F,GAAIzqL,EAAE61F,EAAE,IAAI71F,EAAE+zB,GAAGy2J,GAAIxqL,EAAE,IAAI0qL,GAAI1qL,EAAE+zB,GAAG,IAAI22J,GAAI1qL,EAAE+zB,GAAG,IAAI22J,GAAI1qL,EAAE+zB,GAAG,IAAI22J,GAAI1qL,EAAE+zB,GAAG,IAAI22J,GAAI1qL,EAAE+zB,GAAG,IAAI22J,GAAI1qL,EAAE+zB,GAAG,IAAI22J,GAAI1qL,EAAE+zB,GAAG,IAAI02J,GAAIzqL,EAAE+zB,GAAG,IAAImoN,GAAIl8O,EAAE+zB,IAAImoN,GAAIl8O,EAAE+zB,IAAI/zB,EAAE6xL,GAAGrH,GAAIxqL,EAAE,IAAI0qL,GAAI1qL,EAAE6xL,GAAG,GAAGnH,GAAI1qL,EAAE6xL,GAAG,GAAGnH,GAAI1qL,EAAE6xL,GAAG,GAAGnH,GAAI1qL,EAAE6xL,GAAG,GAAGnH,GAAI1qL,EAAE6xL,GAAG,GAAGnH,GAAI1qL,EAAE6xL,GAAG,GAAGpH,GAAIzqL,EAAE6xL,GAAG,GAAGpH,GAAIzqL,EAAE6xL,GAAG,GAAG7xL,EAAE2xL,GAAGnH,GAAIxqL,EAAE,IAAI0qL,GAAI1qL,EAAE2xL,GAAG,GAAGjH,GAAI1qL,EAAE2xL,GAAG,GAAG3xL,EAAE41F,EAAE40F,GAAIxqL,EAAE,IAAIyqL,GAAIzqL,EAAE41F,EAAE,GAAG60F,GAAIzqL,EAAE41F,EAAE,GAAG60F,GAAIzqL,EAAE41F,EAAE,GAAG60F,GAAIzqL,EAAE41F,EAAE,GAAG60F,GAAIzqL,EAAE41F,EAAE,GAAG60F,GAAIzqL,EAAE41F,EAAE,GAAGsmJ,GAAIl8O,EAAE41F,GAAG51F,EAAE4xL,GAAGpH,GAAIxqL,EAAE,IAAIyqL,GAAIzqL,EAAE4xL,GAAG,GAAG5xL,EAAEuvB,EAAEo7J,GAAI3qL,EAAE,IAAIA,EAAED,EAAE4qL,GAAI3qL,EAAE,IAAIA,EAAEuF,EAAEolL,GAAI3qL,EAAE,IAAIA,EAAE86B,EAAE6vJ,GAAI3qL,EAAE,IAAIA,EAAEhC,EAAE2sL,GAAI3qL,EAAE,IAAIA,EAAE2S,EAAEg4K,GAAI3qL,EAAE,IAAIA,EAAEoS,EAAEu4K,GAAI3qL,EAAE,IAAIA,EAAEqB,EAAEspL,GAAI3qL,EAAE,IAAIA,EAAEJ,EAAE+qL,GAAI3qL,EAAE,IAAIA,EAAE0S,EAAEi4K,GAAI3qL,EAAE,IAAIA,EAAE6T,EAAE82K,GAAI3qL,EAAE,IAAIA,EAAEiU,EAAE02K,GAAI3qL,EAAE,IAAIA,EAAEqoB,EAAEsiK,GAAI3qL,EAAE,IAAIA,EAAEixL,GAAGtG,GAAI3qL,EAAE,IAAIA,EAAE4pB,EAAE+gK,GAAI3qL,EAAE,IAAIA,EAAE6iC,EAAE8nJ,GAAI3qL,EAAE,IAAIA,EAAEmxL,EAAExG,GAAI3qL,EAAE,IAAIA,EAAEoxL,EAAEzG,GAAI3qL,EAAE,IAAIA,EAAEqxL,EAAE1G,GAAI3qL,EAAE,IAAIA,EAAEuxL,EAAE5G,GAAI3qL,EAAE,IAAIA,EAAEsxL,EAAE3G,GAAI3qL,EAAE,IAAIA,EAAEwxL,EAAE7G,GAAI3qL,EAAE,IAAIA,EAAEskC,EAAEqmJ,GAAI3qL,EAAE,IAAIA,EAAEosB,EAAEu+J,GAAI3qL,EAAE,IAAIA,EAAEwyL,EAAE7H,GAAI3qL,EAAE,IAAIA,EAAEgjC,EAAE2nJ,GAAI3qL,EAAE,IAAIA,EAAE01F,EAAEi1F,GAAI3qL,EAAE,IAAIA,EAAE21F,EAAEg1F,GAAI3qL,EAAE,IAAIA,EAAE0xL,EAAE/G,GAAI3qL,EAAE,IAAIA,EAAE8tB,EAAE68J,GAAI3qL,EAAE,IAAIA,EAAE2sL,EAAEhC,GAAI3qL,EAAE,IAAIA,EAAEqzC,GAAGs3I,GAAI3qL,EAAE,IAAIA,EAAEiuC,EAAE08I,GAAI3qL,EAAE,GAAG,CAj+Bp4Dm8O,CAAIn8O,GAi/BtK,SAAaA,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAE,GAAGzD,EAAE+xL,GAAG,OAAO/xL,EAAE+xL,IAAG,EAAKlH,GAAI7qL,EAAE,SAAS8qL,GAAI9qL,EAAE,SAAS+qL,GAAI/qL,EAAEsvL,KAAKtE,GAAIhrL,EAAEixL,GAAG,KAAKjG,GAAIhrL,EAAEwxL,EAAE,KAAKxG,GAAIhrL,EAAEgjC,EAAE,KAAKgoJ,GAAIhrL,EAAEgjC,EAAE,KAAKgoJ,GAAIhrL,EAAEqzC,GAAG,KAAK43I,GAAIC,GAAIlrL,EAAEkS,GAAGlS,EAAE+zB,IAAIk3J,GAAIC,GAAIlrL,EAAEA,GAAGA,EAAE2lB,GAAGslK,GAAIC,GAAIlrL,EAAEE,GAAGF,EAAEoD,GAAG6nL,GAAIC,GAAIlrL,EAAEoD,GAAGpD,EAAEitC,GAAGg+I,GAAIC,GAAIlrL,EAAEgU,GAAGhU,EAAEoD,GAAG6nL,GAAIC,GAAIlrL,EAAEmR,GAAGnR,EAAEgU,GAAGi3K,GAAIC,GAAIlrL,EAAEuD,GAAGvD,EAAEitC,GAAGg+I,GAAIC,GAAIlrL,EAAE4kC,GAAG5kC,EAAE2lB,GAAGslK,GAAIC,GAAIlrL,EAAEitC,GAAGjtC,EAAE2lB,GAAGslK,GAAIC,GAAIlrL,EAAEyxL,GAAGzxL,EAAE6xL,IAAI5G,GAAIC,GAAIlrL,EAAE+oC,GAAG/oC,EAAEitC,GAAGg+I,GAAIC,GAAIlrL,EAAE+lB,GAAG/lB,EAAE6xL,IAAI5G,GAAIC,GAAIlrL,EAAE61F,GAAG71F,EAAE+zB,IAAIk3J,GAAIC,GAAIlrL,EAAE+zB,IAAI/zB,EAAE6xL,IAAI5G,GAAIC,GAAIlrL,EAAE6xL,IAAI7xL,EAAEitC,GAAGg+I,GAAIC,GAAIlrL,EAAE4xL,IAAI5xL,EAAEitC,GAAGk+I,GAAInrL,EAAEkS,EAAEgoO,IAAGkC,KAAI,GAAM,GAAM,GAAM1vD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEkS,GAAG,GAAG,IAAIlS,EAAEuF,EAAE,KAAK,KAAK,EAAE,EAAE20O,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAO9tD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEkS,GAAG,GAAG,IAAIlS,EAAEgU,EAAE,KAAK,iBAAiB,EAAE,EAAEkmO,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAM,GAAM/uD,GAAInrL,EAAEA,EAAEm6O,IAAGkC,KAAI,GAAM,GAAM,GAAM3vD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEA,GAAG,GAAG,IAAIA,EAAE2sL,EAAET,IAAI,KAAK,EAAE,EAAEiuD,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAO/tD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEA,GAAG,GAAG,IAAIA,EAAE2xL,GAAG,KAAK,UAAU,GAAG,EAAEwoD,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAAO/tD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEA,GAAG,GAAG,IAAIA,EAAE2lB,EAAEg4J,GAAG0O,GAAIC,GAAItsL,EAAE2lB,GAAG,GAAG,IAAI,gBAAgB,EAAE,EAAEw0N,KAAG,GAAK,GAAM,GAAK,GAAM,GAAM,GAAM,GAAO/tD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEA,GAAG,GAAG,IAAIA,EAAEspB,EAAE,KAAK,WAAW,GAAG,EAAE6wN,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAAO/tD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEA,GAAG,GAAG,IAAIA,EAAEspB,EAAE,KAAK,aAAa,GAAG,EAAE6wN,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAM,GAAOhvD,GAAInrL,EAAEE,EAAEk6O,IAAG,UAAS,GAAM,GAAM,GAAM1tD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,GAAG,IAAIF,EAAEuF,EAAE,WAAW,KAAK,EAAE,EAAE60O,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAO1tD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,GAAG,IAAIF,EAAEuF,EAAE,YAAY,KAAK,EAAE,EAAE60O,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOhuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,GAAG,IAAIF,EAAEE,EAAE,KAAK,cAAc,GAAG,EAAEk6O,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAK,GAAOhuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,GAAG,IAAIF,EAAEyxL,EAAE9T,GAAG0O,GAAIC,GAAItsL,EAAEyxL,GAAG,GAAG,IAAI,cAAc,GAAG,EAAE2oD,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAAOhuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,GAAG,IAAIF,EAAEkS,EAAE,KAAK,iBAAiB,GAAG,EAAEkoO,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAM,GAAMhuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,GAAG,IAAIF,EAAE61F,EAAE,KAAK,iBAAiB,GAAG,EAAEukJ,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAM,GAAMhuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,GAAG,IAAIF,EAAE61F,EAAE,KAAK,cAAc,GAAG,EAAEukJ,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAM,GAAMhuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,GAAG,IAAIF,EAAEkS,EAAE,KAAK,cAAc,GAAG,EAAEkoO,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAM,GAAMhuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,GAAG,IAAIF,EAAE61F,EAAE,KAAK,mBAAmB,GAAG,EAAEukJ,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAM,GAAMhuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,GAAG,IAAIF,EAAEyxL,EAAE,KAAK,iBAAiB,GAAG,EAAE2oD,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAM,GAAMhuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,IAAI,IAAIF,EAAE+zB,GAAG,KAAK,yBAAyB,GAAG,EAAEqmN,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAM,GAAMhuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,IAAI,IAAIF,EAAEE,EAAE,KAAK,iBAAiB,GAAG,EAAEk6O,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAM,GAAMhuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,IAAI,IAAIF,EAAEkS,EAAE,KAAK,eAAe,EAAE,EAAEkoO,KAAG,GAAK,GAAK,GAAM,GAAM,GAAM,GAAM,GAAMhuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,IAAI,IAAIF,EAAE+zB,GAAG4pJ,GAAG0O,GAAIC,GAAItsL,EAAE+zB,IAAI,GAAG,IAAI,sBAAsB,GAAG,EAAEqmN,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAAOhuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,IAAI,IAAIF,EAAE41F,EAAE,KAAK,qBAAqB,GAAG,EAAEwkJ,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAK,GAAOhuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,IAAI,IAAIF,EAAE41F,EAAE,KAAK,wBAAwB,GAAG,EAAEwkJ,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAM,GAAwDnuD,IAAlDxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEE,GAAG,GAAG,IAAIF,EAAEuF,EAAE,iBAAuBvF,EAAEE,EAAE,aAAao8O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEE,GAAG,GAAG,IAAIF,EAAEuxL,EAAE,mBAA0DtF,IAAvCxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEE,GAAG,GAAG,IAAIF,EAAE+zB,GAAGyoN,KAAWx8O,EAAEuxL,EAAE,aAAmDtF,IAAtCxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEE,GAAG,GAAG,IAAIF,EAAEuxL,EAAEkrD,KAAWz8O,EAAE+zB,GAAG2oN,KAA4CzwD,IAAvCxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEE,GAAG,GAAG,IAAIF,EAAE+zB,GAAGyoN,KAAWx8O,EAAE2sL,EAAE,eAAe2vD,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEE,GAAG,GAAG,IAAIF,EAAEuxL,EAAE,qBAAuEtF,IAAlDxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEE,GAAG,GAAG,IAAIF,EAAEyxL,EAAE,iBAAuBzxL,EAAEuxL,EAAE,eAAqDtF,IAAtCxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEE,GAAG,GAAG,IAAIF,EAAEuxL,EAAEorD,KAAW38O,EAAEyxL,EAAEmrD,KAAqD3wD,IAAhDxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEE,GAAG,GAAG,IAAIF,EAAEyxL,EAAE,eAAqBzxL,EAAEyxL,EAAEmrD,KAAwD3wD,IAAnDxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEE,GAAG,GAAG,IAAIF,EAAE41F,EAAE,kBAAwB51F,EAAE+zB,GAAG2oN,KAAKvxD,GAAInrL,EAAEoD,EAAEi3O,IAAGwC,KAAI,GAAK,GAAM,GAAMnwD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEoD,GAAG,GAAG,IAAIpD,EAAE2sL,EAAE,oBAAoB,KAAK,EAAE,EAAE0tD,KAAG,GAAM,GAAK,GAAK,GAAK,GAAK,GAAOnoO,EAAEs5K,GAAIxrL,EAAEwxL,GAAGjiK,EAAEutN,KAAM7xD,KAAM/4K,EAAEnS,IAAImS,EAAEnS,EAAE,IAAIi/K,GAAIyM,IAAGv5K,EAAE,IAAIA,EAAEnS,GAAGwvB,GAAGo/J,IAAIhR,GAAG0O,GAAIC,GAAItsL,EAAEoD,GAAG,GAAG,IAAI8O,EAAE,gBAAgBmoO,KAAG,GAAK,GAAK,GAAM,GAAM3tD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEoD,GAAG,GAAG,IAAIpD,EAAEskC,EAAEy4M,IAAI,KAAK,EAAE,EAAE1C,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAM3tD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEoD,GAAG,GAAG,IAAIpD,EAAE2sL,EAAE,mBAAmB,KAAK,EAAE,EAAE0tD,KAAG,GAAM,GAAK,GAAK,GAAK,GAAK,GAAOjuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEoD,GAAG,GAAG,IAAIpD,EAAE+oC,EAAE40I,GAAG0O,GAAIC,GAAItsL,EAAE+oC,GAAG,GAAG,IAAI,WAAW,EAAE,EAAEsxM,KAAG,GAAK,GAAM,GAAM,GAAM,GAAK,GAAM,GAAOjuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEoD,GAAG,GAAG,IAAIpD,EAAE4xL,GAAG,KAAKorD,IAAI,GAAG,EAAE3C,KAAG,GAAM,GAAM,GAAK,GAAK,GAAK,GAAM,GAA6CpuD,IAAtCxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEoD,GAAG,GAAG,IAAIpD,EAAEuF,EAAE03O,KAAWj9O,EAAEskC,EAAE6wM,KAAKmH,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEoD,GAAG,GAAG,IAAIpD,EAAEuxL,EAAE,mBAAmBpG,GAAInrL,EAAEgU,EAAEsmO,IAAG,aAAY,GAAM,GAAM,GAAM5tD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEgU,GAAG,GAAG,IAAIhU,EAAEuF,EAAE,eAAe23O,IAAI,EAAE,EAAE5C,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOnvD,GAAInrL,EAAEmR,EAAEopO,IAAG,SAAQ,GAAM,GAAM,GAAMnuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEmR,GAAG,GAAG,IAAInR,EAAEuD,EAAEo6K,GAAG0O,GAAIC,GAAItsL,EAAEuD,GAAG,GAAG,IAAI,YAAY,GAAG,EAAEg3O,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAA6CtuD,IAAtCxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEmR,GAAG,GAAG,IAAInR,EAAEuD,EAAE45O,KAAWn9O,EAAE2sL,EAAEmH,KAA2C7H,IAAtCxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEmR,GAAG,GAAG,IAAInR,EAAEuD,EAAE45O,KAAWn9O,EAAEuxL,EAAEzF,KAAkEG,IAA7DxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEmR,GAAG,GAAG,IAAInR,EAAEuD,EAAE,4BAAkCvD,EAAE2sL,EAAE,WAAWxB,GAAInrL,EAAEuD,EAAEi3O,IAAG4C,KAAI,GAAM,GAAM,GAAM1wD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEuD,GAAG,GAAG,IAAIvD,EAAEuxL,EAAEzF,IAAI,KAAK,EAAE,EAAE0uD,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAO9tD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEuD,GAAG,GAAG,IAAIvD,EAAE4pB,EAAE,WAAW,KAAK,EAAE,EAAE4wN,KAAG,GAAK,GAAM,GAAK,GAAM,GAAK,GAAO9tD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEuD,GAAG,GAAG,IAAIvD,EAAE2sL,EAAE,UAAU,KAAK,EAAE,EAAE6tD,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOpuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEuD,GAAG,GAAG,IAAIvD,EAAEmR,EAAEwsK,GAAG0O,GAAIC,GAAItsL,EAAEmR,GAAG,GAAG,IAAI,QAAQ,EAAE,EAAEqpO,KAAG,GAAK,GAAM,GAAM,GAAM,GAAM,GAAM,GAAOrvD,GAAInrL,EAAE4kC,EAAE61M,IAAG,YAAW,GAAM,GAAM,GAAMruD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE4kC,GAAG,GAAG,IAAI5kC,EAAE+oC,EAAE40I,GAAG0O,GAAIC,GAAItsL,EAAE+oC,GAAG,GAAG,IAAI,WAAW,EAAE,EAAE0xM,KAAG,GAAK,GAAM,GAAK,GAAM,GAAM,GAAM,GAAkDxuD,IAA3CxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAE4kC,GAAG,GAAG,IAAI5kC,EAAEspB,EAAE,UAAgBtpB,EAAEE,EAAE,UAA+D+rL,IAArDxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAE4kC,GAAG,GAAG,IAAI5kC,EAAEskC,EAAE,oBAA0BtkC,EAAEgU,EAAE,aAAai4K,IAAIxoL,EAAEzD,EAAE2sL,EAAE,gBAAoEV,IAApDxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAE4kC,GAAG,GAAG,IAAI5kC,EAAE2sL,EAAE,mBAAyB3sL,EAAEgU,EAAE,aAAai4K,IAAIxoL,EAAEzD,EAAEskC,EAAE,iBAAiB6mJ,GAAInrL,EAAE2lB,EAAE+0N,IAAG2C,KAAI,GAAK,GAAM,GAAMjxD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE2lB,GAAG,GAAG,IAAI3lB,EAAEA,EAAE29K,GAAG0O,GAAIC,GAAItsL,EAAEA,GAAG,GAAG,IAAI,eAAe,GAAG,EAAE06O,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAA0DzuD,IAAnDxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAE2lB,GAAG,GAAG,IAAI3lB,EAAEA,EAAE,kBAAwBA,EAAE2sL,EAAET,KAAKf,GAAInrL,EAAEitC,EAAE0tM,IAAG2C,KAAI,GAAK,GAAM,GAAM5wD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAEitC,GAAG,GAAG,IAAIjtC,EAAE2sL,EAAEmH,IAAI,KAAK,EAAE,EAAE6mD,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOxvD,GAAInrL,EAAEspB,EAAEsxN,IAAG,WAAU,GAAM,GAAM,GAAM0B,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEspB,GAAG,GAAG,IAAItpB,EAAEE,EAAE,UAAUo8O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEspB,GAAG,GAAG,IAAItpB,EAAEuF,EAAE,YAAY+2O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEspB,GAAG,GAAG,IAAItpB,EAAE01F,EAAE,aAAa4mJ,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEspB,GAAG,GAAG,IAAItpB,EAAEspB,EAAE,cAAcgzN,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEspB,GAAG,GAAG,IAAItpB,EAAE+zB,GAAG,sBAAsBuoN,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEspB,GAAG,GAAG,IAAItpB,EAAE61F,EAAE,uBAAuBpyF,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEspB,GAAG,GAAG,IAAI,KAAK,aAAapX,EAAEs5K,GAAIxrL,EAAEixL,IAAI1hK,EAAEi8J,GAAIxrL,EAAEspB,GAAG2hK,KAAM/4K,EAAEnS,IAAImS,EAAEnS,EAAE,IAAIi/K,GAAIyM,IAAGv5K,EAAE,IAAIA,EAAEnS,GAAGwvB,MAAGhqB,EAAEwmL,IAAItoL,EAAEyO,EAAE,QAAW3M,EAAEymL,KAAKvoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEspB,GAAG,GAAG,IAAI,KAAK,gBAAgBpX,EAAEs5K,GAAIxrL,EAAEqzC,IAAI9jB,EAAEi8J,GAAIxrL,EAAEspB,GAAG2hK,KAAM/4K,EAAEnS,IAAImS,EAAEnS,EAAE,IAAIi/K,GAAIyM,IAAGv5K,EAAE,IAAIA,EAAEnS,GAAGwvB,MAAGuL,EAAEixJ,IAAItoL,EAAEyO,EAAE,QAAW4oB,EAAEkxJ,KAAKvoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEspB,GAAG,GAAG,IAAI,KAAK,oBAAoBpX,EAAEs5K,GAAIxrL,EAAEixL,IAAI1hK,EAAEi8J,GAAIxrL,EAAEspB,GAAG2hK,KAAM/4K,EAAEnS,IAAImS,EAAEnS,EAAE,IAAIi/K,GAAIyM,IAAGv5K,EAAE,IAAIA,EAAEnS,GAAGwvB,GAAG5c,EAAEo5K,IAAItoL,EAAEyO,EAAE,QAAQS,GAAGA,EAAEq5K,KAA8CC,IAAzCxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEspB,GAAG,GAAG,IAAItpB,EAAEskC,EAAE,QAActkC,EAAE+zB,GAAG2oN,KAA+CzwD,IAA1CxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEspB,GAAG,IAAI,IAAItpB,EAAEskC,EAAE,QAActkC,EAAE+zB,GAAG2oN,KAAKzwD,IAAIxoL,EAAEzD,EAAEuF,EAAE,WAAsD0mL,IAA3CxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEspB,GAAG,IAAI,IAAI,KAAK,QAActpB,EAAE+zB,GAAG2oN,KAAKzwD,IAAIxoL,EAAEzD,EAAEskC,EAAE,YAAwD2nJ,IAA5CxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEspB,GAAG,IAAI,IAAItpB,EAAEuF,EAAE,UAAgBvF,EAAE+zB,GAAG2oN,KAAkDzwD,IAA7CxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEspB,GAAG,IAAI,IAAI,KAAK,UAAgBtpB,EAAE+zB,GAAG2oN,KAAkDzwD,IAA7CxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEspB,GAAG,IAAI,IAAItpB,EAAEskC,EAAE,WAAiBtkC,EAAEyxL,EAAEmrD,KAAK1qO,EAAEs5K,GAAIxrL,EAAEixL,IAAI1hK,EAAEutN,KAAM7xD,KAAM/4K,EAAEnS,IAAImS,EAAEnS,EAAE,IAAIi/K,GAAIyM,IAAGv5K,EAAE,IAAIA,EAAEnS,GAAGwvB,GAAGq8J,IAAInoL,EAAEyO,EAAE,aAz3G/5N,SAAalS,EAAEkS,GAAG+4K,KAAMjrL,EAAEA,IAAIA,EAAEA,EAAE,IAAIi5N,GAAIj5N,EAAEA,IAAIA,EAAEA,GAAGkS,EAAE,CAy3Gq3NqrO,CAAI95O,EAAEzD,EAAEiuC,GAAGk9I,GAAInrL,EAAEyxL,EAAEopD,IAAG2C,KAAI,GAAM,GAAM,GAAMpxD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEyxL,GAAG,GAAG,IAAIzxL,EAAEE,EAAEy9K,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,GAAG,IAAIu9O,IAAI,EAAE,EAAE5C,KAAG,GAAK,GAAM,GAAM,GAAM,GAAM,GAAM,GAAOzuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEyxL,GAAG,GAAG,IAAIzxL,EAAE4xL,GAAG,KAAKorD,IAAI,GAAG,EAAEnC,KAAG,GAAM,GAAM,GAAK,GAAK,GAAK,GAAM,GAAOzuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEyxL,GAAG,GAAG,IAAIzxL,EAAE+lB,EAAE43J,GAAG0O,GAAIC,GAAItsL,EAAE+lB,GAAG,GAAG,IAAI,cAAc,GAAG,EAAE80N,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAAOzuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEyxL,GAAG,GAAG,IAAIzxL,EAAEoD,EAAE,KAAK,cAAc,GAAG,EAAEy3O,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAK,GAAOzuD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAEyxL,GAAG,GAAG,IAAIzxL,EAAE41F,EAAE,KAAK,qBAAqB,GAAG,EAAEilJ,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAK,GAAOyB,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEyxL,GAAG,GAAG,IAAIzxL,EAAEuxL,EAAEorD,KAAsD1wD,IAAjDxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAEyxL,GAAG,GAAG,IAAIzxL,EAAEuF,EAAE,gBAAsBvF,EAAEyxL,EAAE,iBAAiBtG,GAAInrL,EAAE+oC,EAAE+xM,IAAG,YAAW,GAAM,GAAM,GAAMpuD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE+oC,GAAG,GAAG,IAAI/oC,EAAE2sL,EAAE,QAAQ,KAAK,EAAE,EAAEmuD,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOpuD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE+oC,GAAG,GAAG,IAAI/oC,EAAE2sL,EAAE,WAAW,KAAK,EAAE,EAAEmuD,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAO1uD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE+oC,GAAG,GAAG,IAAI/oC,EAAE4kC,EAAE+4I,GAAG0O,GAAIC,GAAItsL,EAAE4kC,GAAG,GAAG,IAAI,mBAAmB,EAAE,EAAEk2M,KAAG,GAAK,GAAM,GAAK,GAAM,GAAM,GAAM,GAAO1uD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE+oC,GAAG,GAAG,IAAI/oC,EAAEoD,EAAEu6K,GAAG0O,GAAIC,GAAItsL,EAAEoD,GAAG,GAAG,IAAI,eAAe,GAAG,EAAE03O,KAAG,GAAM,GAAM,GAAK,GAAK,GAAK,GAAM,GAAO1uD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE+oC,GAAG,GAAG,IAAI/oC,EAAE+oC,EAAE40I,GAAG0O,GAAIC,GAAItsL,EAAE+oC,GAAG,GAAG,IAAI,eAAe,GAAG,EAAE+xM,KAAG,GAAM,GAAM,GAAK,GAAK,GAAK,GAAM,GAAO1uD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE+oC,GAAG,GAAG,IAAI/oC,EAAE+oC,EAAE40I,GAAG0O,GAAIC,GAAItsL,EAAE+oC,GAAG,GAAG,IAAI,gBAAgB,EAAE,EAAE+xM,KAAG,GAAK,GAAM,GAAM,GAAM,GAAK,GAAM,GAA0D7uD,IAAnDxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAE+oC,GAAG,GAAG,IAAI/oC,EAAEoD,EAAE,kBAAwBpD,EAAE2sL,EAAEmH,KAAK3I,GAAInrL,EAAE+lB,EAAEg1N,IAAG2C,KAAI,GAAM,GAAM,GAAMtxD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE+lB,GAAG,GAAG,IAAI/lB,EAAEyxL,EAAE9T,GAAG0O,GAAIC,GAAItsL,EAAEyxL,GAAG,GAAG,IAAI,aAAa,EAAE,EAAEspD,KAAG,GAAK,GAAM,GAAM,GAAM,GAAM,GAAM,GAAO5vD,GAAInrL,EAAE61F,EAAEmlJ,IAAG2C,KAAI,GAAM,GAAM,GAAMjxD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE61F,GAAG,GAAG,IAAI71F,EAAEuF,EAAE,cAAc,KAAK,EAAE,EAAEy1O,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOtuD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE61F,GAAG,GAAG,IAAI71F,EAAEuF,EAAE,YAAY,KAAK,EAAE,EAAEy1O,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAMtuD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE61F,GAAG,GAAG,IAAI71F,EAAEuF,EAAE,iBAAiB23O,IAAI,EAAE,EAAElC,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAO5uD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE61F,GAAG,GAAG,IAAI71F,EAAE61F,EAAE,KAAK,YAAY,EAAE,EAAEmlJ,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAM,GAAO5uD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE61F,GAAG,GAAG,IAAI71F,EAAEE,EAAE,KAAK,iBAAiB,EAAE,EAAE86O,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAM,GAAM5uD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE61F,GAAG,GAAG,IAAI71F,EAAEkS,EAAE,KAAK,QAAQ,GAAG,EAAE8oO,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAM,GAAO7vD,GAAInrL,EAAE+zB,GAAGknN,IAAG2C,KAAI,GAAK,GAAM,GAAMlxD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE+zB,IAAI,GAAG,IAAI/zB,EAAEuF,EAAE,aAAa23O,IAAI,EAAE,EAAEjC,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOvuD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE+zB,IAAI,GAAG,IAAI/zB,EAAEuF,EAAE,WAAW,KAAK,EAAE,EAAE01O,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOvuD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE+zB,IAAI,GAAG,IAAI/zB,EAAEuF,EAAE,YAAY,KAAK,EAAE,EAAE01O,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOvuD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE+zB,IAAI,GAAG,IAAI/zB,EAAE2sL,EAAE,sBAAsB,KAAK,EAAE,EAAEsuD,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOvuD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE+zB,IAAI,GAAG,IAAI/zB,EAAEskC,EAAEy4M,IAAI,KAAK,EAAE,EAAE9B,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAMvuD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE+zB,IAAI,GAAG,IAAI/zB,EAAEuF,EAAE,aAAa,KAAK,EAAE,EAAE01O,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOvuD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE+zB,IAAI,GAAG,IAAI/zB,EAAEuF,EAAE,UAAU,KAAK,EAAE,EAAE01O,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAO7uD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE+zB,IAAI,GAAG,IAAI/zB,EAAEE,EAAEy9K,GAAG0O,GAAIC,GAAItsL,EAAEE,GAAG,IAAI,IAAIu9O,IAAI,EAAE,EAAExC,KAAG,GAAK,GAAM,GAAM,GAAM,GAAM,GAAM,GAAOqB,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAE+zB,IAAI,GAAG,IAAI/zB,EAAEuxL,EAAEkrD,KAAKh5O,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAE+zB,IAAI,GAAG,IAAI,KAAK,qBAAqB7hB,EAAEs5K,GAAIxrL,EAAEwxL,GAAGjiK,EAAEutN,KAAM7xD,KAAM/4K,EAAEnS,IAAImS,EAAEnS,EAAE,IAAIi/K,GAAIyM,IAAGv5K,EAAE,IAAIA,EAAEnS,GAAGwvB,MAAGxvB,EAAEgsL,IAAItoL,EAAEyO,EAAE,QAAWnS,EAAEisL,KAAKb,GAAInrL,EAAE6xL,GAAGqpD,IAAG2C,KAAI,GAAK,GAAM,GAAMnxD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE6xL,IAAI,GAAG,IAAI7xL,EAAEuF,EAAE,UAAU23O,IAAI,EAAE,EAAEhC,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOxuD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE6xL,IAAI,GAAG,IAAI7xL,EAAEuF,EAAE,SAAS23O,IAAI,EAAE,EAAEhC,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOxuD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE6xL,IAAI,GAAG,IAAI7xL,EAAEuxL,EAAE,aAAa,KAAK,EAAE,EAAE2pD,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOxuD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE6xL,IAAI,GAAG,IAAI7xL,EAAEuxL,EAAE,aAAa,IAAI,EAAE,EAAE2pD,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOxuD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE6xL,IAAI,GAAG,IAAI7xL,EAAEuF,EAAE,OAAO,KAAK,EAAE,EAAE21O,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAMxuD,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE6xL,IAAI,GAAG,IAAI7xL,EAAEuF,EAAE,WAAW,KAAK,EAAE,EAAE21O,KAAG,GAAK,GAAK,GAAM,GAAM,GAAK,GAAM9uD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE6xL,IAAI,GAAG,IAAI7xL,EAAEoD,EAAE,KAAK,QAAQ,EAAE,EAAE83O,KAAG,GAAM,GAAK,GAAK,GAAM,GAAK,GAAK,GAAO9uD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE6xL,IAAI,GAAG,IAAI7xL,EAAE41F,EAAE,KAAK,eAAe,EAAE,EAAEslJ,KAAG,GAAM,GAAK,GAAK,GAAK,GAAM,GAAK,GAAO/vD,GAAInrL,EAAE2xL,GAAGjD,IAAG,2BAA0B,GAAM,GAAM,GAAOhC,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE2xL,IAAI,GAAG,IAAI3xL,EAAE2sL,EAAE,MAAM,KAAK,EAAE,EAAE+B,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOhC,GAAI/O,GAAG0O,GAAIC,GAAItsL,EAAE2xL,IAAI,GAAG,IAAI3xL,EAAE2sL,EAAEb,IAAI,KAAK,EAAE,EAAE4C,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAOvD,GAAInrL,EAAE41F,EAAE61F,IAAGqyD,KAAI,GAAM,GAAM,GAAM1xD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE41F,GAAG,GAAG,IAAI51F,EAAE41F,EAAE,KAAK,cAAc,EAAE,EAAE61F,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAAOW,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE41F,GAAG,GAAG,IAAI51F,EAAE41F,EAAE,KAAK,iBAAiB,GAAG,EAAE61F,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAAOW,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE41F,GAAG,GAAG,IAAI51F,EAAEoD,EAAE,KAAK,WAAW,EAAE,EAAEqoL,KAAG,GAAK,GAAM,GAAM,GAAM,GAAK,GAAM,GAAMW,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE41F,GAAG,GAAG,IAAI51F,EAAE41F,EAAE,KAAK,cAAc,EAAE,EAAE61F,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAAOW,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE41F,GAAG,GAAG,IAAI51F,EAAE4xL,GAAG,KAAK,iBAAiB,EAAE,EAAEnG,KAAG,GAAM,GAAM,GAAK,GAAM,GAAM,GAAM,GAAOW,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE41F,GAAG,GAAG,IAAI51F,EAAEoD,EAAE,KAAK,cAAc,EAAE,EAAEqoL,KAAG,GAAM,GAAM,GAAK,GAAM,GAAK,GAAM,GAA6CQ,IAAtCxoL,EAAE64O,GAAI3+D,GAAG0O,GAAIkwD,GAAIv8O,EAAE41F,GAAG,GAAG,IAAI51F,EAAEuF,EAAE03O,KAAWj9O,EAAEskC,EAAE6wM,KAAKhqD,GAAInrL,EAAE4xL,GAAGupD,IAAG4C,KAAI,GAAM,GAAM,GAAM3xD,IAAIzO,GAAG0O,GAAIC,GAAItsL,EAAE4xL,IAAI,GAAG,IAAI5xL,EAAE41F,EAAE,KAAK,UAAU,GAAG,EAAEulJ,KAAG,GAAM,GAAM,GAAK,GAAK,GAAM,GAAM,GAAOvsD,GAAI5uL,EAAEuvB,EAAEyjK,IAAG,eAAc,GAAMpE,GAAI5uL,EAAED,EAAEszL,IAAG,eAAc,GAAMzE,GAAI5uL,EAAEuF,EAAEwtL,IAAI,YAAW,GAAMnE,GAAI5uL,EAAE86B,EAAEy1J,IAAG,kBAAiB,GAAM3B,GAAI5uL,EAAEhC,EAAEsyL,IAAG,SAAQ,GAAM1B,GAAI5uL,EAAE2S,EAAE6rK,GAAG8R,IAAG,GAAG,cAAa,GAAM1B,GAAI5uL,EAAEoS,EAAEo+K,IAAG,eAAc,GAAM5B,GAAI5uL,EAAEqB,EAAEg0N,IAAG,SAAQ,GAAMzmC,GAAI5uL,EAAEJ,EAAEspO,IAAG,oBAAmB,GAAMt6C,GAAI5uL,EAAE0S,EAAE0oO,IAAG,SAAQ,GAAMxsD,GAAI5uL,EAAE6T,EAAEwnO,IAAG,oBAAmB,GAAOzsD,GAAI5uL,EAAEiU,EAAEg/K,IAAG,WAAU,GAAMrE,GAAI5uL,EAAEqoB,EAAEooK,IAAG,iBAAgB,GAAM7B,GAAI5uL,EAAEixL,GAAGqqD,IAAG,UAAS,GAAO1sD,GAAI5uL,EAAE4pB,EAAE2xN,IAAG,eAAc,GAAO3sD,GAAI5uL,EAAE6iC,EAAE24M,IAAG,eAAc,GAAO5sD,GAAI5uL,EAAEmxL,EAAEsqD,IAAG,oBAAmB,GAAO7sD,GAAI5uL,EAAEoxL,EAAE+B,IAAG,UAAS,GAAMvE,GAAI5uL,EAAEqxL,EAAEV,IAAG,gBAAe,GAAM/B,GAAI5uL,EAAEuxL,EAAE6B,IAAG,QAAO,GAAMxE,GAAI5uL,EAAEsxL,EAAEV,IAAG,kBAAiB,GAAMhC,GAAI5uL,EAAEwxL,EAAEkqD,IAAG,cAAa,GAAM9sD,GAAI5uL,EAAEskC,EAAEwqJ,IAAG,eAAc,GAAMF,GAAI5uL,EAAEosB,EAAEknK,IAAG,SAAQ,GAAM1E,GAAI5uL,EAAEwyL,EAAE3B,IAAG,eAAc,GAAMjC,GAAI5uL,EAAEgjC,EAAE24M,IAAG,QAAO,GAAO/sD,GAAI5uL,EAAE01F,EAAEkmJ,IAAG,aAAY,GAAOhtD,GAAI5uL,EAAE21F,EAAEkmJ,IAAG,gBAAe,GAAOjtD,GAAI5uL,EAAE0xL,EAAE+B,IAAI,UAAS,GAAM7E,GAAI5uL,EAAE8tB,EAAEgjK,IAAG,gBAAe,GAAMlC,GAAI5uL,EAAE2sL,EAAE0D,IAAG,WAAU,GAAMzB,GAAI5uL,EAAEqzC,GAAGyoM,IAAG,iBAAgB,GAAOltD,GAAI5uL,EAAEiuC,EAAE8tM,IAAG,8BAA6B,GAAOhtD,GAAI/uL,EAAEsvL,IAAI,CAj/BzjZ0uD,CAAIh+O,GAAG22L,IAAKC,KAAMC,KAAK72L,EAAE,IAAI4zJ,IAAKs7B,GAAIvF,IAAI2F,IAAItvL,GAAUA,EAAC,CAn7EvMi+O,GAASzP,MAAM0P,KAy/D1C,WAAqB,IAAMhsO,EAAqD,IAAjEq6L,KAm5Cf,SAAavsM,GAAG2zL,IAAI3zL,EAAEuvB,EAAEqkK,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,8CAA8Cb,IAAI3zL,EAAED,EAAE6zL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,8CAA8Cb,IAAI3zL,EAAEuF,EAAEquL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,8CAA8Cb,IAAI3zL,EAAE86B,EAAE84J,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,WAAWV,IAAI,qBAAqBH,IAAI3zL,EAAEhC,EAAE41L,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,2CAA2Cb,IAAI3zL,EAAE2S,EAAEihL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,gDAAgDb,IAAI3zL,EAAEoS,EAAEwhL,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,QAAQV,IAAI,kBAAkBH,IAAI3zL,EAAEJ,EAAEg0L,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,QAAQV,IAAI,kBAAkBH,IAAI3zL,EAAEiU,EAAE2/K,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,6CAA6Cb,IAAI3zL,EAAEqoB,EAAEurK,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,UAAUV,IAAI,oBAAoBH,IAAI3zL,EAAEoxL,EAAEwC,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,4CAA4Cb,IAAI3zL,EAAEqxL,EAAEuC,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,SAASV,IAAI,mBAAmBH,IAAI3zL,EAAEuxL,EAAEqC,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,0CAA0Cb,IAAI3zL,EAAEsxL,EAAEsC,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,OAAOV,IAAI,iBAAiBH,IAAI3zL,EAAEosB,EAAEwnK,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,2CAA2Cb,IAAI3zL,EAAEwyL,EAAEoB,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,QAAQV,IAAI,kBAAkBH,IAAI3zL,EAAE0xL,EAAEkC,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,4CAA4Cb,IAAI3zL,EAAE8tB,EAAE8lK,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,SAASV,IAAI,mBAAmBH,IAAI3zL,EAAE2sL,EAAEiH,IAAIrV,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACW,IAAI,4CAA4C,CAn5Cz5C2pD,EAAKpE,KAAMC,MAo4CxC,SAAah6O,GAAG2zL,IAAI3zL,EAAEkS,EAAEo9K,IAAI/Q,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACuqD,IAAI,yBAAyBzqD,IAAI3zL,EAAEA,EAAEsvL,IAAI/Q,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACuqD,IAAI,yBAAyBzqD,IAAI3zL,EAAEE,EAAEovL,IAAI/Q,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACuqD,IAAI,0LAA0LzqD,IAAI3zL,EAAEoD,EAAEksL,IAAI/Q,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACuqD,IAAI,yDAAyDzqD,IAAI3zL,EAAEmR,EAAEm+K,IAAI/Q,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACuqD,IAAI,oDAAoDzqD,IAAI3zL,EAAEitC,EAAEqiJ,IAAI/Q,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACuqD,IAAI,oBAAoBzqD,IAAI3zL,EAAEyxL,EAAEnC,IAAI/Q,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACuqD,IAAI,mEAAmEzqD,IAAI3zL,EAAE+oC,EAAEumJ,IAAI/Q,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACuqD,IAAI,iGAAiGzqD,IAAI3zL,EAAE61F,EAAEy5F,IAAI/Q,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACuqD,IAAI,4FAA4FzqD,IAAI3zL,EAAE+zB,GAAGu7J,IAAI/Q,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACuqD,IAAI,8BAA8BzqD,IAAI3zL,EAAE6xL,GAAGvC,IAAI/Q,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACuqD,IAAI,gEAAgEzqD,IAAI3zL,EAAE41F,EAAE05F,IAAI/Q,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACuqD,IAAI,wDAAwD,CAp4CnqCC,CAAIrE,KAAK/qD,IAAI+qD,KAAUxL,MAAL17D,IAAWwrE,IAASpsO,EAAE,IAAIyzJ,GAAI6mC,KAAKt6L,EAAElS,EAAEkS,EAAEqd,EAAEA,EAAErxB,QAA0BqgP,IAAf5gE,GAAGC,GAAI1rK,GAAG,KAAWosO,IAAI,KAAiB,CAz/DlHE,EAAK,CAErD,SAASC,GAAIz+O,EAAEkS,EAAEqd,EAAExvB,GAAG,OAAU,GAAHwvB,IAAOA,EAAExvB,GAAGwvB,EAAEvvB,EAAEuF,GAAG2M,GAAGlS,EAAE2S,CAAC,CACtD,SAAS+rO,GAAI1+O,EAAEkS,EAAEqd,GAAsB,OAAOovN,IAAI3+O,EAAtB4+O,GAAI5+O,EAAEkS,EAAEqd,GAAkB,CACtD,SAASo4M,GAAI3nO,EAAEkS,GAAG,IAAIqd,EAAeomN,GAAG31O,EAAhBuvB,EAAEvvB,EAAEA,EAAE9B,QAAe03O,GAAG51O,EAAEuvB,EAAErd,EAAE,CACtD,SAAS2sO,GAAI7+O,EAAEkS,GAAWyN,QAAQ3f,GAAKjB,KAAK4gB,QAAQzN,EAAE,CACtD,SAAS4sO,GAAI9+O,EAAEkS,GAAG,IAAIqd,IAAIvvB,EAAEoS,EAAEmd,EAAEvvB,EAAEg4O,KAAKh4O,EAAEu7K,GAAGv7K,EAAEs7K,GAAG/rJ,EAAErd,GAAG,CAEtD,SAAS0vN,GAAI5hO,EAAEkS,EAAEqd,GAAGkiJ,GAAI1yK,KAAKuF,KAAK4N,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEqd,CAAC,CACtD,SAASujN,GAAI9yO,EAAEkS,EAAEqd,GAAG2iJ,GAAInzK,KAAKuF,KAAKtE,GAAGsE,KAAKtE,EAAEkS,EAAE5N,KAAK4N,EAAEqd,CAAC,CACtD,SAASwvN,GAAI/+O,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEwxK,GAAIzyK,KAAKuF,KAAK4N,GAAG5N,KAAK4N,EAAEqd,CAAC,CACtD,SAASyvN,GAAIh/O,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEi/O,GAAIlgP,KAAKuF,KAAK,EAAE4N,EAAE,KAAKqd,EAAE,CACtD,SAASy1M,GAAIhlO,GAAGsE,KAAKtE,GAAG6gK,GAAI+yB,KAAKA,KAAKtvL,KAAK4N,EAAElS,EAAE,IAAIy6K,EAAG,CACtD,SAASykE,GAAGl/O,GAAGsE,KAAKirB,EAAEvvB,EAAEsE,KAAK4N,EAAE5N,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAEsE,KAAKirB,EAAEhqB,CAAC,CACvD,SAAS45O,GAAIn/O,GAAGsE,KAAKirB,EAAEvvB,EAAEsE,KAAK4N,EAAElS,EAAEA,EAAED,EAAEC,EAAE00N,GAAI10N,EAAEA,EAAEuF,EAAEjB,KAAK,CACvD,SAASklN,GAAIxpN,GAAGoyN,IAAU,GAANpyN,EAAEuvB,GAAOvvB,EAAED,EAAEq/O,GAAGp/O,EAAEuvB,GAAGvvB,EAAEkS,EAAElS,EAAEuvB,EAAEvvB,EAAEuvB,GAAG,CAAC,CACvD,SAAS8vN,GAAIr/O,GAAG,OAAOizI,EAAK3/H,KAAKuc,KAAK7vB,EAAEA,EAAEA,EAAEA,EAAEA,EAAEkS,EAAElS,EAAEkS,EAAE,CACtD,SAAS6qL,GAAI/8L,EAAEkS,GAAG,OAAOm/N,GAAIn/N,EAAElS,EAAEA,EAAEuvB,EAAErxB,QAAQmpM,GAAIrnM,EAAEA,EAAEkS,EAAE,CACvD,SAASotO,GAAGt/O,EAAEkS,GAAG,OAAO6oM,GAAG/6M,KAAK+6M,GAAG7oM,IAAO,MAAHlS,GAASsyL,GAAGtyL,EAAEkS,EAAE,CAGvD,SAASorL,GAAIt9L,GAAG,OAAGA,EAASA,EAAEqhC,MAAarhC,EAAE27M,KAAKJ,IAAI,CACtD,SAASgkC,GAAIv/O,GAAG,OAAIA,EAAEA,GAAKA,EAAEuvB,EAAUvvB,EAAEuvB,EAAErd,EAASlS,EAAEA,CAAC,CACvD,SAASw/O,GAAIx/O,GAA+B,OAA3BA,EAAEA,IAAIA,EAAEA,EAAE,IAAIg/K,GAAI47D,IAAG56O,EAAE,IAAWA,EAAEA,CAAC,CACtD,SAASy/O,GAAIz/O,GAA+B,OAA3BA,EAAED,IAAIC,EAAED,EAAE,IAAIi/K,GAAIyM,IAAGzrL,EAAE,IAAWA,EAAED,CAAC,CACtD,SAAS8gK,GAAI7gK,GAAG,GAAM,MAAHA,EAAS,MAAMkzK,GAAI,IAAI+B,IAAK,OAAOj1K,CAAC,CACvD,SAAS0/O,GAAI1/O,GAAOA,EAAEuvB,EAAwBvvB,EAAEuvB,EAAEowN,MAAzB3/O,EAAED,GAAE,EA6qF7B,SAAaC,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAyD,GAAvDA,EAAE,IAAIw3I,GAAI8wC,GAAIpjN,EAAEkS,EAAE,IAAIo1J,GAAIxsI,IAAI96B,EAAEkS,EAAEqd,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAkB,GAAZrjJ,EAAEvL,EAAErxB,OAAU,CAAqC,IAAjCu/M,GAAI,EAAE3iL,EAAEvL,EAAErxB,QAAbgU,EAAqByrK,GAAG7iJ,EAAEvL,EAAE,GAAG,IAASA,EAAE,EAAExvB,EAAE+6B,EAAEvL,EAAErxB,OAAOqxB,EAAExvB,IAAIwvB,EAAMkuL,GAAIluL,EAAEuL,EAAEvL,EAAErxB,SAAbqH,EAAqBo4K,GAAG7iJ,EAAEvL,EAAEA,GAAG,MAAQrd,GAAG0tO,IAAG1tO,EAAE3M,GAAG,GAAGskL,GAAG33K,EAAE,IAAK,MAAMghK,GAAIyK,GAAGzrK,EAAE,KAAK,GAAG23K,GAAG33K,EAAE,KAAM,MAAMghK,GAAIyK,GAAGzrK,EAAE,KAAM,CAAC,CA7qF9P2tO,CAAI7/O,GAAiB,CACvD,SAAS+5L,GAAI/5L,GAAOA,EAAEuvB,EAAwBwqK,GAAI/5L,EAAEuvB,IAA3BuwN,GAAI9/O,GAAGA,EAAED,GAAE,EAAmB,CACvD,SAASggP,GAAI//O,GAAGggP,GAAGhgP,EAAEA,GAAGA,EAAEkS,EAAE+rK,GAAG6Q,IAAG3Q,IAAI,EAAEn+K,EAAEkS,EAAEhU,OAAO,EAAE,EAAE,CAIvD,SAAS+hP,GAAIjgP,GAA+B,OAAlBA,EAAEuvB,EAAEvxB,EAAEuxB,GAAIvvB,EAAED,EAAE/B,EAAEuxB,CAAa,CAOvD,SAAS2wN,GAAIlgP,GAAgC,OAA5BA,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAIy/J,GAAI,IAAI+I,KAAa16K,EAAEkS,CAAC,CACvD,SAASiuO,GAAIngP,GAAgC,OAAvB,GAANA,EAAEuvB,GAt3DlB,SAAavvB,EAAEkS,GAAGlS,EAAEuvB,EAAErd,CAAC,CAs3DEkuO,CAAIpgP,EA6oE7B,SAAaA,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAc,GAAZgqB,EAAErd,EAAEk8N,GAAGpuO,EAAEA,GAAMuvB,GAAgE,OAA7DhqB,EAAEgpO,MAAMh/M,EAAErd,IAAIqd,EAAErd,EAAE,IAAIyhN,IAAK6a,MAAMC,KAAKC,IAAGn/M,IAAIA,EAAErd,GAAG6hL,MAAiB,IAAIh0L,EAAE,EAAEA,GAAGsgP,MAAMC,KAAKpiP,SAAS6B,EAAG,GAAGs8N,GAAIikB,IAAIvgP,GAAGwF,GAAI,OAAOxF,EAAK,OAAO,CAAC,CA7oE1JwgP,CAAIvgP,EAAE2S,EAAE3S,EAAEkS,IAAWlS,EAAEuvB,CAAC,CACvD,SAASixN,GAAIxgP,EAAEkS,GAAG,IAAIqd,EAA0B,OAAxBA,EAAE+3M,GAAI,GAAGtnO,IAAKJ,EAAEsS,EAAEqd,EAAEvxB,EAAE,EAASuxB,CAAC,CAGxD,SAASkxN,GAAIzgP,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEs9N,GAAIv+N,KAAKuF,KAAKtE,EAAEkS,GAAGs4M,GAAIlmN,KAAK,CACvD,SAASo8O,GAAI1gP,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEq9N,GAAIt+N,KAAKuF,KAAKtE,EAAEkS,GAAGw4M,GAAIpmN,KAAK,CACvD,SAASq8O,GAAG3gP,EAAEkS,EAAEqd,EAAExvB,GAAGi/L,GAAGjgM,KAAKuF,KAAKtE,EAAEkS,GAAG5N,KAAKvE,EAAEwvB,EAAEjrB,KAAKtE,EAAED,CAAC,CACxD,SAAS6gP,GAAG5gP,EAAEkS,EAAEqd,EAAExvB,GAAGi/L,GAAGjgM,KAAKuF,KAAKtE,EAAEuvB,GAAGjrB,KAAKtE,EAAEkS,EAAE5N,KAAKw2B,EAAE/6B,CAAC,CACxD,SAASu9H,GAAGt9H,EAAEkS,GAAG80M,GAAGjoN,KAAKuF,KAwgCzB,SAAatE,EAAEkS,GAAS,IAAIqd,EAA6C,OAAvD03L,KAAY13L,EAAE,IAAIkoK,GAAI,GAAG0jB,GAAGn7M,GAAGkvL,GAAI3/J,EAAEvvB,EAAEkS,GAAG2uO,IAAItxN,EAAEuL,EAAE96B,EAAEkS,GAAU,IAAIwzJ,GAAIn2I,EAAE,CAxgC5DuxN,CAAI/8D,GAAG/jL,GAAG+jL,GAAG7xK,KAAK5N,KAAKtE,EAAEkS,CAAC,CACxD,SAAS8+K,KA0nGT,IAAahxL,EA1nGE+gP,IAAIhiP,KAAKuF,KAAKqrL,KAAKH,KAAMC,OA0nG3BzvL,EA1nGqCsE,MA0nGhC4N,EAAE,KAAKlS,EAAE+zB,GAAG,KAAK/zB,EAAEixL,GAAG,KAAKjxL,EAAEkxL,GAAG,KAAKlxL,EAAEA,EAAE,KAAKA,EAAEuvB,EAAE,KAAKvvB,EAAED,EAAE,KAAKC,EAAEuF,EAAE,KAAKvF,EAAE86B,EAAE,KAAK96B,EAAEJ,EAAE,KAAKI,EAAEskC,EAAE,KAAKtkC,EAAEwxL,EAAE,KAAKxxL,EAAE2lB,EAAE,KAAK3lB,EAAEitC,EAAE,KAAKjtC,EAAEiuC,EAAE,KAAKjuC,EAAE4xL,GAAG,KAAK5xL,EAAE6xL,GAAG,KAAK7xL,EAAE2S,EAAE,KAAK3S,EAAEhC,EAAE,KAAKgC,EAAEoS,EAAE,KAAKpS,EAAEqB,EAAE,KAAKrB,EAAE8xL,GAAG,KAAK9xL,EAAEE,EAAE,KAAKF,EAAEoD,EAAE,KAAKpD,EAAEgU,EAAE,KAAKhU,EAAE0S,EAAE,KAAK1S,EAAE8tB,EAAE,KAAK9tB,EAAEgyL,GAAG,KAAKhyL,EAAEspB,EAAE,KAAKtpB,EAAEyxL,EAAE,KAAKzxL,EAAEiU,EAAE,KAAKjU,EAAE6T,EAAE,KAAK7T,EAAEqoB,EAAE,KAAKroB,EAAEmR,EAAE,KAAKnR,EAAEuD,EAAE,KAAKvD,EAAE4kC,EAAE,KAAK5kC,EAAE4pB,EAAE,KAAK5pB,EAAE6iC,EAAE,KAAK7iC,EAAEmxL,EAAE,KAAKnxL,EAAEoxL,EAAE,KAAKpxL,EAAEqxL,EAAE,KAAKrxL,EAAE41F,EAAE,KAAK51F,EAAEuxL,EAAE,KAAKvxL,EAAEsxL,EAAE,KAAKtxL,EAAEgjC,EAAE,KAAKhjC,EAAE0xL,EAAE,KAAK1xL,EAAE+oC,EAAE,KAAK/oC,EAAE+lB,EAAE,KAAK/lB,EAAE61F,EAAE,KAAK71F,EAAE01F,EAAE,KAAK11F,EAAE21F,EAAE,KAAK31F,EAAE2sL,EAAE,KAAK3sL,EAAE2xL,GAAG,KAAK3xL,EAAEqzC,GAAG,KAAKrzC,EAAE+xL,GAAG,KAAK/xL,EAAEkzI,GAAG,KAAKlzI,EAAEmyL,GAAG,KAAKnyL,EAAEoyL,GAAG,KAAKpyL,EAAEqyL,GAAG,KAAKryL,EAAEsyL,GAAG,KAAKtyL,EAAEiyL,GAAG,KAAKjyL,EAAEkyL,GAAG,KAAKlyL,EAAEosB,GAAE,EAAMpsB,EAAEwyL,GAAE,CA1nGtiB,CACvD,SAASypD,KAijGT,IAAaj8O,EAjjGE+gP,IAAIhiP,KAAKuF,KAAKgrL,KAAKF,KAAMC,OAijG3BrvL,EAjjGqCsE,MAijGhC4N,EAAE,KAAKlS,EAAEA,EAAE,KAAKA,EAAEE,EAAE,KAAKF,EAAEgU,EAAE,KAAKhU,EAAEmR,EAAE,KAAKnR,EAAEuD,EAAE,KAAKvD,EAAE4kC,EAAE,KAAK5kC,EAAEoD,EAAE,KAAKpD,EAAE2lB,EAAE,KAAK3lB,EAAEitC,EAAE,KAAKjtC,EAAEspB,EAAE,KAAKtpB,EAAEyxL,EAAE,KAAKzxL,EAAE+oC,EAAE,KAAK/oC,EAAE+lB,EAAE,KAAK/lB,EAAE61F,EAAE,KAAK71F,EAAE+zB,GAAG,KAAK/zB,EAAE6xL,GAAG,KAAK7xL,EAAE2xL,GAAG,KAAK3xL,EAAE41F,EAAE,KAAK51F,EAAE4xL,GAAG,KAAK5xL,EAAEuvB,EAAE,KAAKvvB,EAAED,EAAE,KAAKC,EAAE86B,EAAE,KAAK96B,EAAEJ,EAAE,KAAKI,EAAE0S,EAAE,KAAK1S,EAAE6T,EAAE,KAAK7T,EAAEqoB,EAAE,KAAKroB,EAAEqxL,EAAE,KAAKrxL,EAAEsxL,EAAE,KAAKtxL,EAAEuF,EAAE,KAAKvF,EAAEoS,EAAE,KAAKpS,EAAEhC,EAAE,KAAKgC,EAAE2S,EAAE,KAAK3S,EAAEqB,EAAE,KAAKrB,EAAEiU,EAAE,KAAKjU,EAAEoxL,EAAE,KAAKpxL,EAAEuxL,EAAE,KAAKvxL,EAAEwxL,EAAE,KAAKxxL,EAAEskC,EAAE,KAAKtkC,EAAEwyL,EAAE,KAAKxyL,EAAEgjC,EAAE,KAAKhjC,EAAE8tB,EAAE,KAAK9tB,EAAEosB,EAAE,KAAKpsB,EAAE0xL,EAAE,KAAK1xL,EAAEqzC,GAAG,KAAKrzC,EAAEiuC,EAAE,KAAKjuC,EAAEmxL,EAAE,KAAKnxL,EAAE4pB,EAAE,KAAK5pB,EAAE6iC,EAAE,KAAK7iC,EAAE2sL,EAAE,KAAK3sL,EAAEixL,GAAG,KAAKjxL,EAAE01F,EAAE,KAAK11F,EAAE21F,EAAE,KAAK31F,EAAE8xL,IAAG,EAAM9xL,EAAE+xL,IAAG,CAjjG5c,CACvD,SAASoT,KAAMrG,GAAG//L,KAAKuF,KAAK,yBAAyB,EAAE,CACvD,SAAS08O,GAAIhhP,GAAG,OAAOyjG,OAAOgjH,aAAahoN,MAAM,KAAKuB,EAAE,CACxD,SAAS22L,GAAI32L,EAAEkS,EAAEqd,GAAG,OAAO4rL,GAAGjpM,GAAGg9K,GAAIlvL,EAAEkS,EAAEqd,GAAGsxN,IAAI7gP,EAAE86B,EAAE5oB,EAAEqd,EAAE,CACxD,SAAS0xN,GAAIjhP,GAAS,OAANinN,KAAcjnN,EAAoBA,EAAEkhP,MAAnBnP,KAAMA,KAAMoP,IAAW,CAExD,SAAS9jH,GAAGr9H,EAAEkS,GAAQ,OAALy0N,KAAY,IAAI51K,IAAG,IAAIzV,GAAGt7C,GAAG,IAAIqtN,GAAGn7M,GAAG,CAExD,SAASkvO,KAAKA,GAAG1sG,EAAI2sG,IAAG,IAAIzkE,GAAG2B,GAAGC,GAAGkQ,IAAG,GAAG4yD,IAAI,GAAG,EAAE,IAAI,CACxD,SAASC,GAAIvhP,GAAiC,OAA7BA,EAAED,IAAIC,EAAED,EAAE,IAAIslK,GAAIrlK,EAAEuvB,EAAEiyN,OAAcxhP,EAAED,CAAC,CACxD,SAAS0hP,GAAIzhP,GAAiC,OAA7BA,EAAEA,IAAIA,EAAEA,EAAE,IAAI8kL,GAAI9kL,EAAEuvB,EAAE+5M,OAActpO,EAAEA,CAAC,CACxD,SAAS0hP,GAAI1hP,GAAiC,OAA7BA,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAIyyK,GAAI3kL,EAAEuvB,EAAEoyN,OAAc3hP,EAAEkS,CAAC,CACxD,SAAS0vO,GAAI5hP,EAAEkS,GAAG,KAAMA,KAAI,GAAGlS,EAAEA,GAAG,GAAGA,EAAE,EAAE,EAAE,GAAG,OAAOA,CAAC,CACxD,SAAS6hP,GAAI7hP,EAAEkS,GAAG,OAAO6oM,GAAG/6M,KAAK+6M,GAAG7oM,IAAO,MAAHlS,GAASsyL,GAAGtyL,EAAEkS,EAAE,CAGxD,SAASs0L,GAAIxmM,EAAEkS,GAAG,OAAO86L,GAAIhtM,EAAEA,EAAEkS,GAAGlS,EAAEkS,EAAEyrK,GAAGzrK,EAAE,IAAIS,GAAG,IAAI,CACxD,SAASmvO,GAAI9hP,EAAEkS,EAAEqd,EAAExvB,GAAGC,EAAEA,EAAE83L,GAAI93L,EAAEA,EAAE,EAAEkS,GAAI,GAAGnS,EAAGg8M,GAAI/7M,EAAEA,EAAEuvB,EAAE,CACxD,SAASwyN,GAAI/hP,EAAEkS,GAAGlS,EAAEqoB,EAAE43K,IAAI4I,MAAMC,OA81EhC,SAAa9oM,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAA6B,IAA3BA,EAAE6iJ,GAAG6oB,GAAIxmM,EAAEkS,EAAEA,GAAG,KAAKqd,EAAEuL,EAAE96B,EAAMuF,EAAEo4K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAIypM,KAAKp2M,EAAEg2M,OAAOx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,MAASlsL,IAAIA,EAAEvvB,EAAEizI,EAAK3/H,KAAKugB,IAAItE,EAAEvvB,EAAEsmO,GAAIvmO,EAAEwvB,KAAK,GAAGA,EAAEvvB,EAAE,EAAG,OAAOkS,EAAES,GAAG,KAAK,EAAEmoB,EAAEl7B,EAAE2vB,EAAEvvB,EAAE6T,EAAE,MAAM,KAAK,EAAEinB,EAAEl7B,EAAEsS,EAAElS,EAAE6T,EAAI,CA91ExLmuO,CAAIhiP,EAAEkS,GAsnB7C,SAAalS,EAAEkS,GAAG,IAAIqd,EAAKvvB,EAAE6iC,KAAGtT,EAAEouJ,GAAG6oB,GAAIxmM,EAAEkS,EAAEA,GAAG,KAAKtS,GAAIG,EAAEC,EAAE6iC,EAAE9iC,EAAEwvB,EAAEvvB,EAAEA,EAAE6iC,EAAE7iC,EAAE,CAtnB3BiiP,CAAIjiP,EAAEkS,EAAE,CACxD,SAASgnL,GAAIl5L,EAAEkS,GAAmB,OAAhB0lL,GAAI1lL,EAAElS,EAAE9B,QAAe8B,EAAEqf,WAAWnN,EAAE,CACxD,SAASgwO,KAAM/kE,GAAGp+K,KAAKuF,KAAK,4BAA4B,CACxD,SAAS69O,GAAIniP,GAAGsE,KAAKvE,EAAEC,EAAEsE,KAAKtE,EAAEsE,KAAKvE,EAAEmS,EAAE5N,KAAK4N,EAAE5N,KAAKvE,EAAEwvB,CAAC,CACxD,SAASojJ,GAAI3yK,GAAGA,EAAEkS,GAAE,EAAMlS,EAAEuvB,GAAE,EAAMvvB,EAAED,GAAE,EAAMC,EAAEA,GAAE,CAAK,CACvD,SAAS4uL,GAAI5uL,EAAEkS,EAAEqd,EAAExvB,GAA6B,OAA1BqiP,GAAIpiP,EAAEkS,EAAEqd,GAAE,GAAO8yN,GAAIriP,EAAED,GAAUC,CAAC,CAIxD,SAAS0hN,GAAI1hN,GAAiC,OAA7BA,EAAEJ,IAAII,EAAEJ,EAAE,IAAI06L,GAAIrN,IAAGjtL,EAAE,EAAE,IAAWA,EAAEJ,CAAC,CACxD,SAAS0iP,GAAItiP,GAAiC,OAA7BA,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAI+qK,GAAI3M,IAAG3tL,EAAE,EAAE,IAAWA,EAAEuvB,CAAC,CACxD,SAASgzN,GAAIviP,GAAiC,OAA9BA,EAAEuF,GAAGi9O,KA35DrB,SAAaxiP,EAAEkS,GAAGlS,EAAEuF,EAAE2M,CAAC,CA25DGuwO,CAAIziP,EA+oD9B,SAAaA,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAc,GAAZwvB,EAAErd,EAAEk8N,GAAGpuO,EAAEA,GAAMuvB,GAAoE,OAAjExvB,EAAE+jL,GAAGyqD,MAAMh/M,EAAErd,IAAIqd,EAAErd,EAAE,IAAIyhN,IAAK6a,MAAMC,KAAKC,IAAGn/M,IAAIA,EAAErd,GAAG4hL,OAAkB,OAAO/zL,EAAG,OAAOmS,EAAE6sL,IAAI,CA/oD1G2jD,CAAI1iP,EAAE2S,EAAE3S,EAAEkS,IAAWlS,EAAEuF,CAAC,CACxD,SAASo9O,GAAI3iP,GAAiC,OAA9BA,EAAE86B,GAAG0nN,KA35DrB,SAAaxiP,EAAEkS,GAAGlS,EAAE86B,EAAE5oB,CAAC,CA25DG0wO,CAAI5iP,EAq5D9B,SAAaA,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAc,OAAZwvB,EAAErd,EAAEk8N,GAAGpuO,EAAEA,GAAOuvB,GAAoBxvB,EAAE+jL,GAAGyqD,MAAMh/M,EAAErd,IAAIqd,EAAErd,EAAE,IAAIyhN,IAAK6a,MAAMC,KAAKC,IAAGn/M,IAAIA,EAAErd,GAAGqkL,MAAa8lC,GAAI7lC,IAAIz2L,GAAGmuO,GAAIluO,EAAEy0O,GAAIviO,EAAEwiO,OAAO30O,GAA1G,IAA4G,CAr5DhI8iP,CAAI7iP,EAAE2S,EAAE3S,EAAEkS,IAAWlS,EAAE86B,CAAC,CACxD,SAASgoN,GAAG9iP,GAAG,IAAIkS,EAA8B,QAA5BA,EAAElS,EAAEkS,KAAOlS,EAAEkS,EAAEA,EAAE,IAAIkvJ,GAAGphK,IAAWkS,CAAC,CACzD,SAAS8tO,GAAGhgP,GAAG,IAAIkS,EAAE,IAAIA,EAAElS,EAAE27M,KAAKzpM,EAAEqpM,MAAOrpM,EAAEupM,KAAKvpM,EAAE6xK,IAAK,CACzD,SAASg/D,GAAG/iP,GAAW,GAARi8M,GAAGj8M,EAAED,GAAMC,EAAED,EAAEA,GAAGC,EAAEuvB,EAAG,MAAM2jJ,GAAI,IAAIiC,GAAK,CACzD,SAAS6tE,GAAGhjP,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKirB,EAAErd,EAAE5N,KAAKtE,EAAE,IAAIshM,GAAIh9L,KAAK4N,EAAE,CACzD,SAAS+wO,GAAIjjP,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEkjP,IAAI5+O,KAAKvE,EAAEC,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKirB,EAAEA,CAAC,CACzD,SAAS4zN,GAAInjP,EAAEkS,GAAG5N,KAAKvE,GAAG8gK,GAAI7gK,GAAGA,GAAGsE,KAAKtE,EAAE,MAAMsE,KAAKirB,EAAErd,CAAC,CACzD,SAASkxO,GAAIpjP,EAAEkS,GAAGmxO,GAAIrjP,EAAEsgL,GAAIgjE,GAAIpxO,EAAE,MAAMouK,GAAIgjE,GAAIpxO,EAAE,MAAM,CACxD,SAASqxO,GAAIvjP,EAAEkS,GAAGmxO,GAAIrjP,EAAEsgL,GAAIgjE,GAAIpxO,EAAE,MAAMouK,GAAIgjE,GAAIpxO,EAAE,MAAM,CACxD,SAASi4M,GAAInqN,EAAEkS,GAAU,OAAP4tO,GAAI9/O,GAAU,IAAIoqN,GAAIpqN,EAAE,IAAIwjP,GAAItxO,EAAElS,EAAEA,GAAG,CACzD,SAASm2O,GAAIn2O,EAAEkS,GAAU,OAAP4tO,GAAI9/O,GAAU,IAAIoqN,GAAIpqN,EAAE,IAAIyjP,GAAIvxO,EAAElS,EAAEA,GAAG,CACzD,SAAS0jP,GAAI1jP,EAAEkS,GAAU,OAAP4tO,GAAI9/O,GAAU,IAAIs2N,GAAIt2N,EAAE,IAAI2jP,GAAIzxO,EAAElS,EAAEA,GAAG,CACzD,SAAS4jP,GAAI5jP,EAAEkS,GAAU,OAAP4tO,GAAI9/O,GAAU,IAAIu2N,GAAIv2N,EAAE,IAAI6jP,GAAI3xO,EAAElS,EAAEA,GAAG,CAOzD,SAAS+nL,GAAI/nL,GAAGsE,KAAKtE,EAAE,IAAIsyK,GAAIhuK,KAAKiB,EAAE04K,GAAGmV,IAAGS,IAAI,GAAG7zL,EAAE,EAAE,EAAE,CACzD,SAAS8jP,GAAI9jP,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKtE,EAAEA,EAAEsE,KAAKiB,EAAE2M,EAAE5N,KAAKvE,EAAEwvB,EAAEjrB,KAAKirB,EAAExvB,CAAC,CACzD,SAASgkP,GAAI/jP,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKtE,EAAEA,EAAEsE,KAAKirB,EAAErd,EAAE5N,KAAK4N,EAAEqd,EAAEjrB,KAAKvE,EAAEA,CAAC,CACzD,SAASikP,GAAIhkP,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKirB,EAAEvvB,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKtE,EAAEuvB,EAAEjrB,KAAKvE,EAAEA,CAAC,CACzD,SAASkkP,GAAIjkP,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKirB,EAAEvvB,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKvE,EAAEwvB,EAAEjrB,KAAKtE,EAAED,CAAC,CACzD,SAASmoM,GAAIloM,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKirB,EAAEvvB,EAAEsE,KAAKvE,EAAEmS,EAAE5N,KAAK4N,EAAEqd,EAAEjrB,KAAKtE,EAAED,CAAC,CACzD,SAASmkP,GAAIlkP,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKtE,EAAEA,EAAEsE,KAAKvE,EAAEmS,EAAE5N,KAAKirB,EAAEA,EAAEjrB,KAAK4N,EAAEnS,CAAC,CACzD,SAASokP,GAAInkP,EAAEkS,EAAEqd,EAAExvB,GAAG++L,GAAG//L,KAAKuF,KAAKtE,EAAEkS,GAAG5N,KAAKtE,EAAEuvB,EAAEjrB,KAAK4N,EAAEnS,CAAC,CACzD,SAASqkP,GAAIpkP,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKtE,EAAEA,EAAEsE,KAAKirB,EAAErd,EAAE5N,KAAKvE,EAAEwvB,EAAEjrB,KAAK4N,EAAEnS,CAAC,CACzD,SAASskP,GAAIrkP,EAAEkS,EAAEqd,IAg/FjB,SAAavvB,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAqE,IA/oEjG,SAAa96B,GAAG,IAAIkS,EAAE,IAAIA,EAAE,EAAEA,EAAElS,EAAEuvB,EAAErxB,OAAOgU,KAAMurM,GAAIvrM,EAAElS,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAErd,GAAG,KAAK9O,EAAE8O,CAAE,CA+oExDoyO,CAAIpyO,EAAEA,EAAEE,GAAGsvL,GAAIy0C,GAAI,IAAI/rB,GAAI,KAAK,IAAI7c,GAAIr7L,EAAEnS,EAAE,KAAK,IAAIqnJ,IAAK,IAAIC,IAASvsH,EAAE,IAAI6qI,GAAIzzJ,EAAEnS,GAAG+6B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAQ,CAAkB,QAAjBqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,MAAcv1B,EAAEoN,GAAG,KAAK,EAAE4c,EAAEouJ,GAAG0pB,GAAI9hM,EAAE6M,EAAE,GAAG,KAAKrS,EAAEqS,EAAEixJ,GAAI99J,EAAEo4K,GAAGwxC,GAAIqhB,GAAI7yD,GAAG0iB,GAAG96L,EAAElE,EAAEkuB,GAAG,IAAIy5J,KAAKwb,MAAM,MAAMphC,GAAI79J,EAAEo4K,GAAGwxC,GAAImhB,GAAI3yD,GAAG0iB,GAAG96L,EAAElE,EAAEkuB,GAAG,IAAIy5J,KAAKwb,MAAM,MAAM,MAAM,KAAK,EAAEzkM,EAAEwkP,IAAIh/O,GAAG89J,GAAI99J,EAAEo4K,GAAGwxC,GAAIqhB,GAAI7yD,GAAG0iB,GAAG96L,EAAElE,EAAEtB,EAAE,IAAI,IAAIipL,KAAKwb,MAAM,MAAMphC,GAAI79J,EAAEo4K,GAAGwxC,GAAImhB,GAAI3yD,GAAG0iB,GAAG96L,EAAElE,EAAEtB,EAAE,IAAI,IAAIipL,KAAKwb,MAAM,MAAM,MAAM,KAAK,EAAEggD,IAAIxkP,EAAEuF,GAAG,MAAM,KAAK,EAAEk/O,IAAIl/O,GAAG,MAAM,KAAK,EAAEm/O,IAAI1kP,EAAEuF,GAAIo/O,GAAIp/O,EAAE,CAACvF,EAAEA,EAAE,IAAI,CAh/F1e4kP,CAAI5kP,EAAEA,EAAEuvB,GAmnC5B,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAS,IA0lE/B,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEuc,EAAE,KAAKvxB,EAAE,KAAKuH,EAAEo4K,GAAG4qB,IAAIvoM,EAAEkS,GAAGmrJ,MAAMwnF,MAAM,KAAQt/O,IAAIu/O,KAAMC,OAAMx1N,EAAE,IAAI+iJ,GAAIt0K,EAAE,IAAIs0K,IAAI,IAAI7uK,EAAE,IAAIkiK,GAAI3lK,EAAED,GAAG0D,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAgC,IAAvByU,EAAEgrK,GAAGC,GAAIn6K,GAAG,MAASzF,EAAkB,OAAO2U,EAAEpN,EAAEoN,GAAG,KAAK,EAAET,EAAEyrK,GAAGqnE,GAAI,IAAI1jD,GAAI3uL,EAAET,IAAI,IAAI3M,GAAGw/O,KAAK7yO,IAAIutK,MAAMM,KAAMxwJ,EAAEA,EAAEA,EAAEA,EAAErxB,QAAQyU,EAAQpN,GAAGw/O,KAAK7yO,IAAIutK,MAAMonB,KAAM7oM,EAAEuxB,EAAEvxB,EAAEuxB,EAAErxB,QAAQyU,EAAQ9H,IAAI8H,EAAET,GAAG,MAAM,KAAK,EAAEE,EAAEO,EAAE3S,EAAED,EAAEqS,EAAE/Q,EAAEsR,EAAE4c,EAAExvB,EAAEqS,EAAEA,IAAIqtK,MAAMM,KAAKszD,GAAI1gO,EAAEotK,KAAKR,KAAMC,KAAK7sK,EAAE3S,GAAGqB,GAAG0+K,IAAIszD,GAAI1gO,EAAEotK,KAAKR,KAAMI,KAAKhtK,EAAE4c,GAAGnd,GAAGy0L,IAAIwsC,GAAI1gO,EAAEk0L,KAAKtnB,KAAMI,KAAKhtK,EAAE3S,GAAGqB,GAAGwlM,KAAKwsC,GAAI1gO,EAAEk0L,KAAKtnB,KAAMC,KAAK7sK,EAAE4c,GAAG,MAAM,KAAK,EAAE,KAAK,EAAQirK,GAANz6L,EAAE4S,EAAET,GAASutK,MAAMM,MAAMya,GAAIz6L,EAAE8mM,KAAKrM,GAAIz6L,EAAE6/K,KAAK4a,GAAIz6L,EAAE2/K,MAAM2zD,GAAI1gO,EAAEotK,KAAKR,KAAMI,KAAKhtK,EAAE4c,GAAG8jN,GAAI1gO,EAAEotK,KAAKR,KAAMC,KAAK7sK,EAAE3S,GAAGqzO,GAAI1gO,EAAEotK,KAAKR,KAAM0lE,KAAK,MAAM5R,GAAI1gO,EAAEk0L,KAAKtnB,KAAM0lE,KAAK,MAAM,MAAM,KAAK,EAAEnxO,EAAEnB,EAAE3S,EAAED,EAAEqS,EAAEY,EAAEL,EAAE3S,EAAED,EAAEqS,EAAE0B,IAAI2rK,MAAMM,MAAM/sK,GAAG+sK,IAAIszD,GAAI1gO,EAAEk0L,KAAKtnB,KAAM0lE,KAAK,MAAM5R,GAAI1gO,EAAEotK,KAAKR,KAAM0lE,KAAK,MAAW11N,IAAe,GAAZA,EAAEA,EAAErxB,QAAWgnP,IAAI31N,GAAGkwJ,MAAMM,MAAkB,GAAZ/hL,EAAEuxB,EAAErxB,QAAWgnP,IAAIlnP,GAAGyhL,MAAMonB,MAAM,CA1lEz3Bs+C,CAAInlP,GAAOuvB,EAAE,IAAIo2I,GAAI3lK,EAAED,GAAGwvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,SAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,MAASvxB,GAAGonP,IAAIlzO,EAAG,CAnnCrEmzO,CAAI91N,GAs6EnC,SAAavvB,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwvB,EA8W1B,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAM,IAAJkuB,EAAE,EAAM9rB,EAAE,IAAIkiK,GAAI3lK,EAAED,GAAG0D,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,SAASyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,MAASzF,IAAI2U,EAAE3U,EAAEuxB,EAAEA,KAAmD,IAA9Crd,EAAEs2N,GAAGz1C,IAAI,CAACc,IAAIyxD,KAAK,CAAC,IAAI,IAAI,GAAG,CAAC/1N,EAAEA,GAAG,GAAGluB,EAAErB,EAAED,EAAMwF,EAAE,EAAEA,EAAElE,EAAEkuB,EAAErxB,OAAOqH,IAA0C,GAAlCk4M,GAAIl4M,EAAElE,EAAEkuB,EAAErxB,SAAbF,EAAqB2/K,GAAGt8K,EAAEkuB,EAAEhqB,GAAG,MAAWvH,EAAG,IAAI88B,EAAEv1B,EAAE,EAAEu1B,EAAEz5B,EAAEkuB,EAAErxB,OAAO48B,IAAQ2iL,GAAI3iL,EAAEz5B,EAAEkuB,EAAErxB,SAAbkU,EAAqBurK,GAAGt8K,EAAEkuB,EAAEuL,GAAG,MAAW98B,IAAG+B,EAAEwlP,IAAIvnP,EAAEoU,GAAGF,EAAElU,EAAEA,EAAEuxB,GAAGnd,EAAEpU,EAAEuxB,GAAGxvB,EAAEmS,EAAEE,EAAEpU,EAAEuxB,GAAGvxB,EAAEA,EAAEuxB,GAAGxvB,GAAK,OAAOmS,CAAC,CA9WlVszO,CAAItzO,GA6OhC,SAAalS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAA4C,IAA1CA,EAAEF,EAAEnS,EAAEC,EAAEA,EAAE,IAAIixN,GAAI7+M,EAAEmd,EAAErxB,QAAQ8B,EAAEuvB,EAAE,IAAIijJ,GAAQ/uK,EAAE,IAAIkiK,GAAIvzJ,GAAG3O,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAASyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAAKq3B,EAAE,IAAI2qN,GAAI,MAAM1vE,GAAI/1K,EAAEA,EAAE86B,GAAG67J,GAAI32L,EAAEuvB,EAAE5c,EAAEmoB,GAAwB,IAArB96B,EAAEkS,EAAE,IAAIsgK,GA5ZrL,SAAaxyK,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAgB,IAAdA,EAAEkU,EAAEnS,EAAEwF,EAAE2M,EAAEA,EAAEE,EAAM3O,EAAE,IAAIkiK,GAAI3nK,GAAGyF,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAA8F,IAArFyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAAKq3B,EAAEmjJ,GAAG8U,IAAIuyD,IAAI,GAAG//O,EAAEgqB,EAAErxB,OAAO,GAAG,GAAGy4L,GAAI32L,EAAEkS,EAAES,EAAEmoB,GAAGvL,EAAE5c,EAAE3S,EAAED,EAAEqD,EAAE,EAAErD,EAAE4S,EAAE4c,EAAExvB,EAAEqD,EAAQmsB,GAAGxvB,GAAsB+6B,EAAnBvL,GAAGA,EAAE,GAAGhqB,EAAEgqB,EAAErxB,SAAY,CAAM,CA4Z5BwnP,CAAI1lP,EAAEkS,GAAOnS,EAAE,EAAEA,EAAEqS,EAAEmd,EAAErxB,OAAO,EAAE6B,IAA0B,IAArB/B,EAAE2/K,GAAG0pB,GAAIn1L,EAAEnS,EAAEA,GAAG,KAASwF,EAAExF,EAAE,EAAEwF,EAAE6M,EAAEmd,EAAErxB,OAAOqH,IAAKogP,IAAI3lP,EAAEhC,EAAE2/K,GAAG0pB,GAAIn1L,EAAEnS,EAAEwF,GAAG,KAAKgqB,EAAI,CA7O3Qq2N,CAAI5lP,EAAEkS,EAAEqd,GAAGs2N,IAAI7lP,EAAEA,EAAE29K,GAAG4qB,IAAIg3C,GAAIrtO,EAAEA,IAAI81L,MAAM89C,MAAM,MA8ZnF,SAAa9lP,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAY,IAAVkP,EAAE,IAAI8mK,GAAQ3+I,EAAE,IAAI6qI,GAAI3lK,EAAEA,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAA0BwlK,GAAjBn+J,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAWv1B,EAAEu1B,EAAEvL,EAAErxB,QAAQylK,GAAIp+J,EAAEA,EAAElE,EAAEkuB,EAAErxB,QAAgB,GAALqH,EAAEvH,IAAMuH,EAAErF,EAAE,EAAE68M,GAAIpqM,EAAEpN,EAAEoN,EAAE4c,EAAErd,EAAES,EAAE4c,IAAI,KAAW,GAAL5c,EAAET,GAA+D,IAARnS,GAAjDwF,EAAEo4K,GAAQ,GAALhrK,EAAET,EAAK,MAAMo3M,GAAS,GAAL32M,EAAET,GAAMkyN,GAAIzxN,EAAEA,EAAE3S,EAAEA,IAAI,MAASE,EAAE,EAAMqvB,EAAE,IAAIo2I,GAAIpgK,EAAEu1B,GAAGvL,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAgC0lK,GAANngK,EAAfk6K,GAAGC,GAAIruJ,GAAG,KAASvvB,EAAQizI,EAAK3/H,KAAKugB,IAAIpwB,EAAEvD,EAAEH,IAAI4jK,GAAIlgK,EAAEA,EAAEzF,EAAE,GAAQ,GAALyF,EAAEzF,GAAO++M,GAAIpqM,EAAElP,EAAEkP,EAAE4c,EAAErd,EAAES,EAAE4c,EAAU,CA9ZvSw2N,CAAI/lP,GA5a7F,SAAaA,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAEnoB,EAAE,IAAImoB,EAAE,IAAI6qI,GAAIzzJ,EAAEnS,GAAG+6B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAiD,IAAxCqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAKnoB,EAAEgrK,GAAG+5B,GAAI13M,EAAEuvB,EAAEhqB,GAAG,KAAKrF,EAAMH,EAAE,IAAIuhM,GAAI/7L,EAAE2M,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEvvB,EAAE9B,QAAyB8nP,GAAIzgP,EAAlBo4K,GAAGqnE,GAAIjlP,GAAG,IAAY4S,EAAI,CA4ahFszO,CAAIjmP,EAAEkS,GAAGnS,EAAEk+K,GAAGmV,IAAGsW,IAAI,GAAGx3L,EAAEA,EAAEE,EAAEmd,EAAErxB,OAAO,GAAG,GAAGgoP,IAAIlmP,EAAEkS,GAAGutK,MAAMM,KAAKhgL,EAAEwvB,GAAG22N,IAAIlmP,EAAEkS,EAAEwtK,IAAI3/K,EAAEwvB,GAAG22N,IAAIlmP,EAAEkS,EAAE20L,IAAI9mM,EAAEwvB,GAAG22N,IAAIlmP,EAAEkS,EAAE0tK,IAAI7/K,EAAEwvB,GAAGvvB,EAAEA,EAAE,KAAKA,EAAEuvB,EAAE,KAAKvvB,EAAEkS,EAAE,IAAI,CAt6E7Mi0O,CAAInmP,EAAEkS,EAAEqd,GAmhG9C,SAAavvB,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAA8I,IAA5ItB,EAAET,EAAEA,EAAE7Q,EAAEsR,EAAEzS,EAAElC,EAAE2U,EAAE5S,EAAEA,EAAEugL,GAAIC,GAAG6lE,IAAIzzO,GAAG0qJ,MAAMgpF,QAAQ9gP,EAAE+6K,GAAIC,GAAG6lE,IAAIzzO,EAAE2zO,OAAOl0O,EAAEkuK,GAAIC,GAAG6lE,IAAIzzO,EAAE4zO,OAAiBnjB,GAAV3/N,EAAE,IAAIk1K,GAAU36K,EAAE+B,EAAE/B,EAAEuxB,EAAEvxB,EAAEgC,EAAEhC,EAAEkU,GAAGc,EA/SvL,SAAahT,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAkF,IAAhFA,EAAEigL,GAAGgV,IAAGY,IAAI,KAAKpU,MAAMlB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC1/C,IAAI/mB,IAAIL,IAAImnB,IAAIjnB,OAAO1hL,OAAO,EAAE,GAAO48B,EAAEyjJ,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC1/C,IAAI/mB,IAAIL,IAAImnB,IAAIjnB,MAAMjtK,EAAE,EAAElP,EAAEq3B,EAAE58B,OAAOyU,EAAElP,IAAIkP,EAAU3U,GAAPuH,EAAEu1B,EAAEnoB,IAAOA,GAAGsrK,GAAGgV,IAAGwzD,IAAI,GAAGzmP,EAAEuvB,EAAEhqB,EAAEoN,GAAG,GAAG,GAAyG,OAAtG+zO,IAAI1oP,EAAEgC,EAAE+/K,KAAK2mE,IAAI1oP,EAAEgC,EAAE6mM,KAAK8/C,IAAI3oP,EAAEgC,EAAE+/K,IAAI7tK,EAAEqd,EAAExvB,GAAG4mP,IAAI3oP,EAAEgC,EAAE0/K,IAAIxtK,EAAEqd,EAAExvB,GAAG4mP,IAAI3oP,EAAEgC,EAAE6mM,IAAI30L,EAAEqd,EAAExvB,GAAG4mP,IAAI3oP,EAAEgC,EAAE4/K,IAAI1tK,EAAEqd,EAAExvB,GAAU/B,CAAC,CA+S7J4oP,CAAI10O,EAAEnS,EAAEwF,EAAE6M,GAAOM,EAAE,IAAIizJ,GAAIzzJ,EAAEnS,GAAG2S,EAAE1S,EAAE0S,EAAE6c,EAAEA,EAAErxB,QAAQ,CAAkB,IAAIgC,GAArB8T,EAAE2pK,GAAGC,GAAIlrK,GAAG,MAAaooB,EAAE96B,EAAE2hP,KAAKhmC,KAAKz7M,EAAEq7M,MAAwBzgL,GAAjBl7B,EAAE+9K,GAAGz9K,EAAEu7M,KAAK,MAASz7M,EAAE8T,EAAE+yO,IAAIjnP,GAAMiU,EAAE,IAAI2lK,GAAIstE,IAAIlnP,EAAEA,EAAE2vB,EAAEvc,EAAEa,GAAGkzO,IAAInnP,EAAEkU,EAAEd,EAAEa,GAAGizO,IAAIlnP,EAAEA,EAAEG,EAAEiT,EAAEa,GAArD0b,EAAwD1b,EAAG0b,EAAEvvB,EAAEgnP,GAAGpnP,EAAEkU,EAAEyb,GAAGkyK,GAAI3mK,EAAE96B,GAAGu5L,GAAGz+J,EAAE96B,EAAEuvB,GAAGmyK,GAAI,IAAI0oB,GAAI,KAAK,IAAI7c,GAAIh+K,EAAE,KAAK,IAAImhL,GAAIrvM,EAAEoC,KAAIL,EAAE4Q,EAAEhW,KAAQipP,IAAIjzO,EAAE5Q,EAAE4P,EAAEzN,GAAkB2hP,IAAI7lP,EAAEoC,EAArBwQ,EAAE,IAAI0sM,GAAIv9M,EAAEuP,IAAcktK,GAAI5rK,EAAE7Q,EAAEgP,GAAG80O,IAAI7lP,EAAEoC,EAAEwQ,GAAG,CAACmvN,GAAIplO,EAAEyF,EAAE1D,EAAE0D,EAAE8rB,EAAE9rB,EAAEzD,EAAEyD,EAAEyO,EAAE,CAnhGrfi1O,CAAIj1O,EAAEqd,EAAE,CACzD,SAAS63N,GAAIpnP,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAyB,OAArBA,EAAEsnP,IAAIrnP,GAAKkS,EAAE+pN,GAAG1sM,EAAExvB,EAAW,CACzD,SAASunP,GAAItnP,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAyB,OAAvBwvB,EAAEvvB,EAAEkS,IAAEnS,EAAEo4L,GAAG5oK,OAAUxvB,EAASA,CAAC,CACzD,SAASyrL,GAAIxrL,GAAG,IAAMuvB,EAA2B,OAATg4N,GAAhBh4N,EAAK,IAAIsjJ,GAAa7yK,GAAUuvB,CAAC,CACzD,SAASm8J,GAAI1rL,GAAG,IAAMuvB,EAA2B,OAATi4N,IAAhBj4N,EAAK,IAAIsjJ,GAAa7yK,GAAUuvB,CAAC,CAEzD,SAASk4N,GAAIznP,GAAG,IAAIkS,EAAW,OAATA,EAw8BtB,SAAalS,GAAG,IAAIkS,EAAuB,GAArBA,EAAEq2L,IAAIvoM,GAAGgoM,MAAM0/C,MAAS79D,GAAG33K,EAAE,KAAM,OAAOy1O,GAAIhqE,GAAGzrK,EAAE,MAAM,OAAO,IAAI,CAx8BlE01O,CAAI5nP,GAAMkS,GAAmB,IAAI,CACzD,SAAS21O,GAAI7nP,GAAkC,OAA9BA,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAIooL,GAAIzM,IAAG7tL,EAAE,GAAG,IAAWA,EAAEkS,CAAC,CAMzD,SAAS41O,GAAI9nP,EAAEkS,EAAEqd,GAAGA,EAAEvvB,EAAEoiN,GAAIpiN,EAAEkS,EAAEA,EAAElS,EAAE86B,EAAE,GAAGqnL,GAAIniN,EAAEkS,EAAElS,EAAEA,EAAE2S,EAAE,EAAE,CACzD,SAASo1O,GAAI/nP,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKirB,EAAEA,EAAEjrB,KAAKvE,EAAEA,CAAC,CACzD,SAASioP,GAAIhoP,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKirB,EAAEA,EAAEjrB,KAAKvE,EAAEA,CAAC,CACzD,SAASkoP,GAAIjoP,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKiB,EAAEvF,EAAEsE,KAAKtE,EAAEkS,EAAE5N,KAAKirB,EAAEA,EAAEjrB,KAAKvE,EAAEA,CAAC,CACzD,SAASmoP,GAAIloP,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKtE,EAAEA,EAAEsE,KAAKirB,EAAErd,EAAE5N,KAAKvE,EAAEwvB,EAAEjrB,KAAK4N,EAAEnS,CAAC,CACzD,SAASooP,GAAInoP,EAAEkS,EAAEqd,EAAExvB,GAAG2kN,KAAM0jC,GAAIrpP,KAAKuF,KAAK4N,EAAEqd,EAAExvB,GAAGuE,KAAKtE,EAAEA,CAAC,CACzD,SAASqoP,GAAIroP,EAAEkS,EAAEqd,EAAExvB,GAAG2kN,KAAM0jC,GAAIrpP,KAAKuF,KAAK4N,EAAEqd,EAAExvB,GAAGuE,KAAKtE,EAAEA,CAAC,CACzD,SAASsoP,GAAGtoP,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEq2N,GAAGt3N,KAAKuF,KAAKtE,EAAE29K,GAAG39K,EAAED,EAAE,IAAI2yN,GAAGxgN,GAAG,CAC1D,SAASs2K,GAAIxoL,GAAGsE,KAAKw2B,EAAE96B,EAAEsE,KAAKirB,EAAEjrB,KAAKw2B,EAAEv1B,EAAEvF,EAAE86B,EAAE,GAAGytN,IAAIjkP,KAAK,CACzD,SAASkkP,GAAIxoP,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAK4N,EAAElS,EAAEsE,KAAKirB,EAAExvB,EAAEs9M,GAAIt+M,KAAKuF,KAAK4N,EAAEqd,EAAE,CAC1D,SAASsiM,GAAI7xN,GAAqB,OAAlBspN,GAAItpN,EAAEkS,EAAElS,EAAED,EAAEk/K,MAAaj/K,EAAED,EAAEs7M,GAAGr7M,EAAEuvB,EAAEvvB,EAAEkS,IAAI,CAC1D,SAASuvL,GAAIzhM,GAAGA,EAAEA,EAAEA,EAAEA,EAAEuvB,EAAEvvB,EAAEuvB,EAAErd,EAAElS,EAAEA,EAAEA,EAAEA,EAAEkS,EAAElS,EAAEuvB,EAAEvvB,EAAE,KAAKA,EAAEkS,EAAE,CAAC,CAC1D,SAASgqB,GAAIl8B,EAAEkS,GAAmC,OAAhClS,EAAEkS,EAAEA,EAAEA,EAAElS,EAAEuvB,EAAErd,EAAEqd,EAAEvvB,EAAED,EAAEmS,EAAEnS,EAAEC,EAAEA,EAAEkS,EAAElS,EAASA,CAAC,CAC1D,SAASiuN,GAAGjuN,GAAsC,OAAhCA,EAAEJ,IAAGI,EAAEuF,IAAIkjP,KAAKzoP,EAAE4H,KAAK5H,EAAEoS,EAAE,MAAYpS,CAAC,CAC1D,SAAS0oP,GAAG1oP,GAAsC,OAAnCu8M,GAAO,MAAHv8M,GAASguO,GAAGhuO,MAAMA,EAAEo0K,KAAK3/B,IAAaz0I,CAAC,CAC1D,SAAS2oP,GAAI3oP,GAAGsE,KAAK4N,EAAE,IAAIogK,GAAIs2E,GAAItkP,KAAK4N,EAAE5N,KAAK4N,GAAG5N,KAAKtE,EAAEA,CAAC,CAC1D,SAAS69M,KAAMA,GAAInpE,EAAIm0G,IAAI,IAAIv2E,GAAIw2E,IAAI,IAAIt2E,GAAIu2E,IAAI,IAAIz2E,EAAG,CAC1D,SAAS20C,KAAMA,GAAIvyE,EAAIsrF,IAAI,IAAI1rF,EAAI21F,IAAI,IAAIz1F,EAAIslG,IAAI,IAAIzlG,CAAG,CAC1D,SAAS09F,KAAMA,GAAIr9F,EAAIs9F,IAAI,IAAI/8F,EAAI+zG,IAAI,IAAI/zG,EAAIksG,IAAI,IAAIjsG,CAAG,CAC1D,SAAS+zG,KAAMA,GAAIv0G,EAAIw0G,IAAI,IAAIjyG,GAAIkyG,IAAI,IAAIrc,GAAIsc,IAAI,IAAIlyG,EAAG,CAE1D,SAASmyG,GAAGrpP,GAAS,OAASA,EAAE86B,IAAM96B,EAAE86B,EAAE,IAAIikK,GAAG/+L,EAAEA,EAAEuvB,GAAK,CAG1D,SAAS+5N,GAAItpP,EAAEkS,GAAG,OAAOq3O,GAAIvpP,EAAEoS,EAAEF,EAAE2B,EAAE3B,EAAEqd,GAAGg6N,GAAIr3O,EAAE3M,EAAEvF,EAAE6T,EAAE7T,EAAEuvB,EAAE,CAC1D,SAASi6N,GAAIxpP,EAAEkS,GAAQlS,EAAEuF,IAAIvF,EAAEuF,EAAEvF,IAAG+yK,GAAI/yK,EAAEuF,EAAE2M,GAAGs3O,GAAIxpP,EAAEuF,EAAE2M,GAAG,CAC1D,SAASu3O,GAAIzpP,EAAEkS,GAAQlS,EAAED,IAAIC,EAAED,EAAEC,IAAG+yK,GAAI/yK,EAAED,EAAEmS,GAAGu3O,GAAIzpP,EAAED,EAAEmS,GAAG,CAQ1D,SAAS01N,GAAI5nO,EAAEkS,EAAEqd,GAAgC4oL,GAAGn4M,EAAEkS,EAAf,IAAI0wJ,GAAb87D,GAAInvM,IAAwB,CAC1D,SAASm6N,GAAI1pP,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG23M,GAAI1zO,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,GAAG,EAAE,CAC1D,SAAS6uN,GAAI3pP,EAAEkS,EAAEqd,EAAExvB,GAAGk6M,GAAIl7M,KAAKuF,KAAK4N,EAAEqd,GAAGjrB,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAED,CAAC,CAC1D,SAAS6pP,GAAI5pP,EAAEkS,GAAG,IAAIunK,GAAIn1K,KAAKtE,EAAE,IAAIw5K,GAAIl1K,KAAK4N,EAAElS,EAAEsE,KAAKirB,EAAErd,CAAC,CAE1D,SAASq2M,GAAGvoN,EAAEkS,GAAG,GAAM,MAAHlS,EAAS,MAAMkzK,GAAI,IAAI8O,GAAI9vK,IAAI,OAAOlS,CAAC,CAC3D,SAASu8O,GAAIv8O,GAAmC,OAA/BA,EAAEgU,IAAIhU,EAAEgU,EAAE,IAAIsmL,GAAIugD,IAAG76O,EAAE,GAAG,KAAYA,EAAEgU,CAAC,CAC1D,SAASs4K,GAAItsL,GAAmC,OAA/BA,EAAE6T,IAAI7T,EAAE6T,EAAE,IAAIymL,GAAI2gD,IAAGj7O,EAAE,GAAG,KAAYA,EAAE6T,CAAC,CAC1D,SAASg2O,GAAI7pP,GAAmC,OAA/BA,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAI/M,IAAGvtL,EAAE,GAAG,KAAYA,EAAEA,CAAC,CAC1D,SAAS8pP,GAAG9pP,GAAG,OAAO6pL,GAAG7pL,EAAE,IAAI,IAAIwpO,GAAI7rD,GAAG39K,EAAE,KA/e5C,SAAYA,GAAG,IAAIkS,EAAoB,OAARqwN,GAAVrwN,EAAE,IAAIukK,GAASz2K,GAAUkS,CAAC,CA+eE63O,CAAG/pP,EAAE27M,KAAK,CAG3D,SAASquC,GAAGhqP,GAAG,OAASA,GAAKA,EAAEiqP,SAASjqP,EAAEiqP,WAAWp7B,GAAI7uN,EAAE,CAC3D,SAASizO,GAAIjzO,EAAEkS,GAAG,OAAU,MAAHA,IAAUghO,GAAIlzO,EAAE86B,EAAE,MAnW3C,SAAa96B,EAAEkS,GAAG,aAAsBvS,IAAbK,EAAEA,EAAEK,IAAI6R,GAAe,CAmWDg4O,CAAIlqP,EAAE2S,EAAET,EAAE,CAC3D,SAASi4O,GAAGnqP,GAAS,OAAN+jL,GAAG/jL,GAAUoqP,IAAG,IAAItb,GAAG7hB,GAAGjtN,EAAEA,EAAE27M,KAAK,IAAIpoE,IAAK,CAC3D,SAAS82G,GAAIrqP,GAAS,OAANinN,KAAap9B,GAAG7pL,EAAE,IAAI,IAAI4kL,GAAI5kL,GAAG,IAAI6kL,GAAI7kL,EAAE,CAC3D,SAASsqP,GAAItqP,EAAEkS,EAAEqd,GAAG,QAAGvvB,EAAE86B,GAAU96B,EAAE86B,EAAEyvN,GAAGr4O,EAAEqd,EAAe,CAC3D,SAASi7N,GAAIxqP,EAAEkS,GAAoC,OAAjClS,EAAEA,EAAE83L,GAAI93L,EAAEA,EAAE,EAAEkS,GAAG,GAAG6pM,GAAI/7M,EAAEA,EAAEkS,EAAE,GAAUlS,CAAC,CAC3D,SAASyqP,GAAIzqP,EAAEkS,GAAG,IAAIqd,EAA6B,OAA3BA,EAAEk5L,GAAIzoN,EAAEA,EAAEkS,MAAOA,EAAEnS,EAAE,MAAawvB,CAAC,CAC3D,SAASulN,GAAI90O,GAAG,IAAIkS,EAAEqd,EAAMrd,EAAc,GAAlBqd,EAAEvvB,GAAM20N,UAAYplM,EAAEolM,UAAUziN,EAAE,CAAC,CAC3D,SAASw4O,GAAG1qP,GAAGsE,KAAK4N,EAAElS,EAAEsE,KAAKirB,EAAEvvB,EAAEA,EAAEuF,EAAE,KAAKvF,EAAEuvB,EAAE,KAAKjrB,KAAKtE,EAAE,CAAC,CAC3D,SAAS2qP,GAAI3qP,GAAGsE,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAE,IAAIo5L,GAAIzb,GAAGoG,GAAG,IAAIvqC,IAAK,IAAI,CAC3D,SAASuzF,GAAI/sO,GAAGsE,KAAKirB,EAAEvvB,EAAEsE,KAAK4N,EAAE,IAAIknL,GAAIzb,GAAGoG,GAAG,IAAI5sC,IAAK,IAAI,CAC3D,SAAS01F,GAAI7sO,GAAGsE,KAAKirB,EAAEvvB,EAAEsE,KAAK4N,EAAE,IAAIknL,GAAIzb,GAAGoG,GAAG,IAAI3oC,IAAK,IAAI,CAC3D,SAASwvG,KAAMtmP,KAAKtE,EAAE,IAAI23K,GAAIrzK,KAAK4N,EAAE,IAAIwmK,GAAIp0K,KAAKvE,EAAE,IAAI47I,EAAG,CAC3D,SAASkvG,KAAMvmP,KAAKtE,EAAE,IAAIw5K,GAAIl1K,KAAK4N,GAAG6+M,GAAG,EAAEC,KAAK,IAAIC,GAAI,GAAG,CAC3D,SAASj4C,KAAM10K,KAAK4N,EAAE,IAAIukK,GAAInyK,KAAKvE,EAAE,IAAI05K,GAAIn1K,KAAKiB,EAAE,IAAIgzK,EAAG,CAC3D,SAASuyE,GAAI9qP,GAAGsE,KAAKirB,EAAEvvB,EAAEuvB,EAAEjrB,KAAKvE,EAAEC,EAAED,EAAEuE,KAAK4N,EAAElS,EAAEkS,EAAE5N,KAAKtE,EAAEA,EAAEA,CAAC,CAC3D,SAAS+qP,GAAG/qP,EAAEkS,GAAGopK,GAAGv8K,KAAKuF,KAAK,IAAI+0L,GAAIr5L,IAAIsE,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CAC3D,SAAS84O,KAAMC,IAAI3mP,KAAK,IAAI87J,IAAK97J,KAAK61J,IAAI4/E,KAAMC,KAAK5qD,IAAK,CAE1D,SAAS87D,GAAGlrP,GAAG+kL,KAAK9xC,EAAK3mI,YAAW,WAAW,MAAMtM,CAAC,GAAE,EAAE,CAC1D,SAASkrL,GAAIlrL,GAAoC,OAA7BA,EAAEqoB,IAAG8iO,GAAInrP,GAAGA,EAAEqoB,EAAE,IAAI2wM,GAAIh5N,EAAEA,IAAUA,EAAEqoB,CAAC,CAC3D,SAAS+iO,GAAIprP,GAA4B,OAAjB29K,GAAG8sC,GAAIzqN,EAAE,IAAI,KAAcA,EAAE2jL,IAAM,CAC3D,SAAS0nE,GAAIrrP,EAAEkS,GAAG,OAAO23K,GAAG33K,EAAE,MAAMmqN,GAAIr8N,EAAEkS,EAAEyrK,GAAGzrK,EAAE,KAAKmoL,KAAK,CAG3D,SAASu/C,GAAG55O,GAAGsE,KAAKtE,GAAGinN,KAAMp9B,GAAG7pL,EAAE,IAAI,IAAI4kL,GAAI5kL,GAAG,IAAI6kL,GAAI7kL,GAAG,CAC5D,SAASs0K,KAAY,IAAIt0K,EAAEkS,EAAboiK,GAAG5/B,EAAYxiI,GAm/C7B,WAAc,GAAGwL,MAAM4tO,gBAAgB,EAAuD,OAApDr4G,EAAKv1H,MAAM4tO,gBAAgB5tO,MAAM4tO,gBAAgB,IAAU,EAAK,MAAO,UAAW,IAAI5tO,KAAK,CAn/CrG6tO,GAAKvrP,EAAE,IAAI4zI,EAAG2gC,IAAGriK,EAAE,IAAIiiI,EAAGn0I,CAAC,CAC3D,SAASwrP,GAAGxrP,EAAEkS,GAAG,IAAIqd,EAAc,OAAZA,EAAE85J,GAAIrpL,EAAEyrP,IAAc,MAAHv5O,EAAQqd,EAAEA,EAAE,KAAKrd,CAAC,CAC5D,SAASw5O,GAAI1rP,EAAEkS,GAAG,IAAIqd,EAA8B,OAAhBo8N,GAAZp8N,EAAEvvB,EAAEkS,EAAEmuL,GAAGnuL,GAASlS,EAAEkS,EAAE+sK,MAAa1vJ,CAAC,CAC5D,SAASq7L,GAAI5qN,EAAEkS,GAAG,GAAM,MAAHlS,EAAS,MAAMkzK,GAAI,IAAI8O,GAAI9vK,IAAI,OAAOlS,CAAC,CAC5D,SAASkzO,GAAIlzO,EAAEkS,GAAG,OAAO05O,GAAI5rP,EAAEkS,EA+F/B,SAAalS,EAAEkS,GAAG,IAAIqd,EAAe,OAAbA,EAAEvvB,EAAEA,EAAEK,IAAI6R,GAAa,MAAHqd,EAAQ,IAAIjxB,MAAMixB,CAAC,CA/F9Bs8N,CAAI7rP,EAAK,MAAHkS,EAAQ,EAAElS,EAAEkS,EAAEu7B,GAAGv7B,IAAI,CAC5D,SAAS03L,GAAI5pM,EAAEkS,EAAEqd,GAAG,OAAOA,GAAG,GAAG8sM,GAAIr8N,EAAEyzD,OAAOlkC,EAAErd,EAAEhU,QAAQgU,EAAE,CAC5D,SAASgsN,GAAIl+N,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,GAAG,OAAO,IAAIm5O,GAAI9rP,EAAEuF,EAAE2M,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,CAC3D,SAASo5O,GAAI/rP,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAGx2B,KAAKtE,EAAEA,EAAEgsP,GAAIjtP,KAAKuF,KAAK4N,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,CAC3D,SAASmxN,GAAIjsP,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAGx2B,KAAKtE,EAAEA,EAAEgsP,GAAIjtP,KAAKuF,KAAK4N,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,CAC3D,SAASoxN,GAAIlsP,EAAEkS,GAAG5N,KAAKqO,EAAE3S,EAAEsE,KAAKvE,EAAEw+K,GAAGC,GAAG2tE,IAAG,GAAGC,IAAI,GAAG,EAAE,CAACl6O,GAAG,CAC3D,SAASm6O,GAAIrsP,EAAEkS,GAAG5N,KAAKiB,EAAEvF,EAAEsE,KAAKtE,EAAE8uL,IAAGxqL,KAAK4N,EAAEo6O,IAAIp6O,GAAG5N,KAAKirB,EAAErd,CAAC,CAC3D,SAASq6O,GAAIvsP,EAAEkS,GAAGumK,GAAI15K,KAAKuF,MAAMkoP,GAAIloP,MAAMA,KAAKtE,EAAEA,EAAEsE,KAAKirB,EAAErd,CAAC,CAC5D,SAASu6O,GAAIzsP,EAAEkS,EAAEqd,EAAExvB,GAAG4mM,GAAG3mM,EAAEuvB,EAAErd,EAAES,GAAG4c,EAAE5c,EAAE5S,GAAG4mM,GAAG3mM,EAAEuvB,EAAEA,EAAE5c,GAAGT,EAAES,EAAE5S,EAAE,CAC3D,SAAS2sP,GAAI1sP,EAAEkS,EAAEqd,EAAExvB,GAAG4mM,GAAG3mM,EAAEuvB,EAAErd,EAAES,GAAGT,EAAES,EAAE4c,GAAGo3K,GAAG3mM,EAAEkS,EAAEA,EAAES,GAAGT,EAAES,EAAE5S,EAAE,CAsB3D,SAAS4sP,GAAI3sP,EAAEkS,EAAEqd,EAAExvB,GAAG,OAAOwvB,GAAG,EAAEvvB,EAAE4sP,GAAG16O,EAAEqd,EAAExvB,GAAGC,EAAE6sP,GAAG,KAAKt9N,EAAExvB,EAAE,CAC5D,SAAS+sP,GAAI9sP,GAAG,OAAU,GAAPA,EAAEkS,EAAEA,EAAalS,EAAEA,EAAE+sP,KAAY5oB,GAAInkO,EAAEkS,EAAE,CAG5D,SAAS86O,GAAIhtP,GAAqC,OAAlC+6M,GAAG/6M,EAAEA,KAAK+6M,IAAIt6C,KAAMwsF,OAw7FpC,SAAajtP,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAmH,IAAjH6Q,EAAE,IAAIsgJ,GAAIjjI,EAAE,IAAIijI,GAAIpgJ,EAAEiqN,GAAI5pC,KAAKltL,EAAE2nP,IAAIltP,EAAEkS,EAAE0hL,MAAa9P,GAAGyqD,MAAMhpO,EAAE2M,IAAI3M,EAAE2M,EAAE,IAAIyhN,IAAK6a,MAAMC,KAAKC,IAAGnpO,IAAIA,EAAE2M,GAAG6hL,MAAxD,MAAoE/1L,EAAE,EAAEA,EAAEgC,EAAEhC,IAAIA,EAAuB6rL,GAApBpmL,EAAEk6K,GAAG39K,EAAE2S,EAAE3U,GAAG,KAAa,IAA4B,KAAvB2U,EAAEgrK,GAAGl6K,EAAE,KAAO+xK,GAAGyhE,MAAqB,IAAXtkO,EAAE6iK,GAAGq8D,OAAUz/N,GAAqF,QAAjF0oB,EAAEoyN,IAAIv6O,EAAEihL,MAAc9P,GAAGyqD,MAAMzzM,EAAE5oB,IAAI4oB,EAAE5oB,EAAE,IAAIyhN,IAAK6a,MAAMC,KAAKC,IAAG5zM,IAAIA,EAAE5oB,GAAGi7O,MAAxD,QAAwEliE,GAAI/4K,EAAES,IAAItR,EAAE+rP,IAAIz6O,KAAoB,IAAXtR,EAAEm0K,GAAGyhE,OAAsB,IAAXtkO,EAAE6iK,GAAGq8D,OAAUz/N,GAAqF,QAAjFrS,EAAEmtP,IAAIv6O,EAAEihL,MAAc9P,GAAGyqD,MAAMxuO,EAAEmS,IAAInS,EAAEmS,EAAE,IAAIyhN,IAAK6a,MAAMC,KAAKC,IAAG3uO,IAAIA,EAAEmS,GAAGi7O,MAAxD,QAAwEliE,GAAI17J,EAAE5c,IAASw5L,KAASxuB,GAAGl6K,EAAE,IAAI8jN,OAAU9jN,EAAE8oN,OAAMthC,GAAI/4K,EAAEzO,GAAGwnL,GAAI17J,EAAE9rB,MAAM4pP,GAAIn7O,GAAGm7O,GAAI99N,GAAGvvB,EAAEA,EAAE29K,GAAGzrK,EAAES,EAAE,KAAKgrK,GAAGpuJ,EAAE5c,EAAE,IAAI,CAx7F5iB26O,CAAIttP,GAAUA,EAAEA,CAAC,CAC5D,SAASq4O,GAAGr4O,GAAGsE,KAAKtE,EAAE29K,GAAGoG,GAAG/jL,GAAG,KAAKsE,KAAK4N,GAAG+0M,KAAM,IAAI+G,GAAIhuN,GAAG,CAC7D,SAASutP,GAAIvtP,EAAEkS,IAzkEf,SAAalS,EAAEkS,GAAGlS,EAAEA,EAAEkS,CAAC,CAykELs7O,CAAIlpP,KAAK,IAAI2wM,GAAIj1M,EAAEA,EAAEA,EAAEkS,IAxkEzC,SAAalS,EAAEkS,GAAGlS,EAAEkS,EAAEA,CAAC,CAwkEsBu7O,CAAInpP,KAAKo+N,GAAGxwN,GAAG,CAC5D,SAASw7O,KAAMA,GAAIh5G,EAAIi5G,IAAI,IAAIl6C,GAAIm6C,IAAI,GAAGC,IAAI,IAAIp6C,GAAIq6C,IAAI,EAAE,CAC5D,SAASC,KAAMA,GAAIr5G,EAAIs5G,IAAI,IAAI16C,GAAIw6C,IAAI,GAAGG,IAAI,IAAI36C,GAAIs6C,IAAI,EAAE,CAC5D,SAAS34B,KAAK34C,GAAGv9K,KAAKuF,KAAK,IAAImzL,GAAI+mB,GAAG,MAAMlf,IAAG,GAAMh7L,KAAKtE,EAAE,CAAC,CAC7D,SAASwvO,GAAIxvO,EAAEkS,EAAEqd,GAAG20L,MAAMhyC,GAAInzK,KAAKuF,KAAKtE,GAAGsE,KAAK4N,EAAEA,EAAE5N,KAAKtE,EAAEuvB,CAAC,CAC5D,SAASmyM,GAAI1hO,EAAEkS,EAAEqd,GAAGm1L,KAAMjzC,GAAI1yK,KAAKuF,KAAK4N,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEqd,CAAC,CAC5D,SAAS2+N,GAAIluP,GAAGy4K,GAAI15K,KAAKuF,MAAMkoP,GAAIloP,MAAMA,KAAKtE,EAAEA,EAAEsE,KAAKirB,GAAE,CAAI,CAC7D,SAAS05L,GAAIjpN,GAAG,IAAIkS,EAAEA,EAAElS,EAAEuvB,EAAExvB,EAAEmS,EAAElS,EAAEkS,EAAEA,EAAElS,EAAEA,EAAEA,EAAEuvB,EAAExvB,EAAEmS,EAAElS,EAAEA,EAAEuvB,EAAExvB,EAAEmS,EAAElS,CAAC,CAC7D,SAASmuP,GAAInuP,IAsyBb,SAAaA,GAAG,IAAMuvB,EAAE,IAAIA,EAAE,IAAIo2I,GAAIyoF,IAAIpuP,IAAIuvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAIruJ,GAAG,KAAO8+N,IAAK,CAtyBnEC,CAAItuP,EAAEA,GAAGmjN,GAAInjN,EAAEA,GAAkBuuP,GAAb,IAAI3mF,GAAI5nK,EAAEA,GAAS,CAE7D,SAASwuP,GAAIxuP,EAAEkS,GAAU,OAAPu8O,GAAIv8O,GAgxBtB,SAAalS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAsD,OAApDA,EAAEvF,EAAE9B,OAAO6B,EAAEkzI,EAAK3/H,KAAKsgB,IAAIrE,EAAEhqB,GAAG29N,IAAIljO,EAAE,EAAEkS,EAAE,EAAEnS,GAAE,GAAamS,CAAC,CAhxBxDw8O,CAAI1uP,EAAEi+K,GAAGmV,IAAGsW,IAAI,GAAGx3L,EAAE,GAAG,GAAGA,EAAE,CAE7D,SAASo4K,GAAItqL,EAAEkS,GAAG,OAAU,MAAHA,EAAQ2oM,GAAGq4B,GAAIlzO,EAAE86B,EAAE,OAAOqyK,GAAIntM,EAAE2S,EAAET,EAAE,CAC7D,SAASy8O,GAAI3uP,GAAG,OAAY,GAALA,EAAEkS,EAAK,MAAMo3M,GAAS,GAALtpN,EAAEkS,GAAMkyN,GAAIpkO,EAAEA,EAAEA,EAAEA,GAAG,CAC7D,SAASm4L,GAAGn4L,GAAG,OAA6C,EAAtCsT,KAAKugB,IAAIvgB,KAAKsgB,IAAI5zB,EAAEk4L,MAAM,WAAa,CAE7D,SAAS02D,GAAG5uP,EAAEkS,GAA6B,OAA1Bq2M,GAAGvoN,EAAE,QAAQuoN,GAAGr2M,EAAE,QAAe,IAAIktL,GAAGp/L,EAAEkS,EAAE,CAC7D,SAAS28O,GAAI7uP,EAAEkS,GAAG,IAAIqd,EAAe,OAAbA,EAstBxB,SAAavvB,EAAEkS,GAAG,IAAIqd,EAAyD,OAAvDA,EAAEsrM,GAAI5U,GAAItoC,GAAG+5B,GAAI13M,EAAE2S,EAAET,GAAG,IAAI6zM,GAAIpoC,GAAG+5B,GAAI13M,EAAE86B,EAAE5oB,GAAG,KAAKA,IAAWqd,CAAC,CAttB7Du/N,CAAI9uP,EAAE86B,EAAE5oB,GAAU2tK,GAAIkzC,GAAIxjM,GAAGvvB,EAAE86B,EAAE/6B,EAAE,CAC7D,SAAS6uN,GAAI5uN,EAAEkS,GAAG,IAAMnS,EAA2B,OAAXgvP,IAAI/uP,EAAhBkS,EAAEnS,EAAE,IAAIw1I,GAAsBx1I,EAAEA,CAAC,CAC7D,SAASivP,GAAIhvP,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEA,EAAE,IAAIg1N,GAAIroN,EAAElS,EAAEuvB,EAAE5c,GAAGpN,EAAEmhM,GAAI1mM,EAAEkS,EAAEnS,EAAEwF,EAAE,CAC7D,SAAS0pP,GAAIjvP,EAAEkS,EAAEqd,GAAG,IAAIxvB,GAAEA,EAAEC,EAAE22N,GAAGzkN,KAAM,EAAElS,EAAEkvP,GAAGnvP,EAAEwvB,GAAGzG,IAAI9oB,EAAEkS,EAAEqd,EAAE,CAC7D,SAAS4/N,GAAInvP,EAAEkS,EAAEqd,GAAG6/N,KAAQpvP,GAAG22L,GAAI04D,IAAIrvP,EAAEkS,GAAKlS,GAAG22L,GAAI24D,IAAItvP,EAAEuvB,EAAE,CAC7D,SAASggO,GAAIvvP,EAAEkS,EAAEqd,GAAGjrB,KAAKtG,EAAE,IAAIs0K,GAAIhuK,KAAK4N,EAAElS,EAAEsE,KAAKqO,EAAET,EAAE5N,KAAKtE,EAAEuvB,CAAC,CAC7D,SAASigO,GAAIxvP,EAAEkS,EAAEqd,GAAGjrB,KAAKirB,EAAE,IAAI+iJ,GAAIhuK,KAAKiB,EAAEvF,EAAEsE,KAAKw2B,EAAE5oB,EAAE5N,KAAK4N,EAAEqd,CAAC,CAC7D,SAASkgO,GAAIzvP,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAE,IAAIsyK,GAAIhuK,KAAKiB,EAAEvF,EAAEsE,KAAKw2B,EAAE5oB,EAAE5N,KAAKirB,EAAEA,CAAC,CAC7D,SAASk+K,GAAGztM,EAAEkS,GAAGg1M,GAAG5iN,MAAMA,KAAKw2B,EAAE5oB,EAAE5N,KAAKqO,EAAE3S,EAAEiuN,GAAG3pN,MAAMA,KAAKsD,IAAI,CAC9D,SAASmiM,GAAG/pM,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEgU,EAAEg2L,WAAWhqM,EAAEgU,EAAE07O,QAAQx9O,GAAGg4L,IAAGlqM,EAAEuvB,EAAE,CAC9D,SAASogO,GAAG3vP,EAAEkS,GAAG,IAAIqd,EAAQ,IAANw0J,GAAG7xK,GAAOqd,EAAEvvB,EAAEA,EAAEuvB,EAAEA,EAAEA,EAAEA,EAAGrd,EAAE09O,GAAGrgO,EAAE5c,EAAE4c,EAAEvxB,EAAG,CAC9D,SAAS6xP,GAAG7vP,GAAG,IAAIkS,EAAmC,OAAT05N,GAAxB15N,EAAE,IAAIslL,GAAIgnB,GAAGx+M,EAAE9B,SAAe8B,GAAUkS,CAAC,CAI9D,SAAS49O,GAAG9vP,EAAEkS,GAAG,GAAM,MAAHA,EAAS,MAAMghK,GAAI,IAAI+B,IAAK,OAm8ChD,SAAYn6I,EAAE96B,GAAG,IAAcuvB,EAAVrd,EAAE4oB,EAAE96B,EAAQA,EAAEyjG,OAAOzjG,GAAGkS,EAAErU,eAAemC,KAAKuvB,EAAErd,EAAElS,IAAI,IAAID,GAAGgwP,KAAKC,YAAWzgO,GAA6B,OAApBxvB,EAAEA,EAAEwvB,GAAG0gO,UAAU1gO,EAAW,CAn8ChF2gO,CAAGlwP,EAAEkS,EAAE,CAE9D,SAASumM,GAAIz4M,GAAG,OAAGA,EAAEgtN,IAAI,IAAI,EAAS,KAAYrvC,GAAG39K,EAAE8sN,GAAG,GAAG,CAC7D,SAASqjC,GAAInwP,GAAG,OAAGA,EAAEgtN,IAAI,IAAI,EAAS,KAAYrvC,GAAG39K,EAAE8sN,GAAG,GAAG,CAC7D,SAASsjC,GAAIpwP,GAAG,OAAGA,EAAEgtN,IAAI,IAAI,EAAS,KAAYrvC,GAAG39K,EAAE8sN,GAAG,GAAG,CAC7D,SAASujC,GAAIrwP,GAAG,OAAGA,EAAEgtN,IAAI,IAAI,EAAS,KAAYrvC,GAAG39K,EAAE8sN,GAAG,IAAI,CAC9D,SAASwjC,GAAItwP,GAAG,OAAGA,EAAEgtN,IAAI,IAAI,EAAS,KAAYrvC,GAAG39K,EAAE8sN,GAAG,IAAI,CAC9D,SAAShP,GAAI99M,GAAG,OAAGA,EAAEgtN,IAAI,IAAI,GAAU,KAAYrvC,GAAG39K,EAAE8sN,GAAG,GAAG,CAC9D,SAASrrJ,GAAIzhE,EAAEkS,GAAG,IAAIqd,EAAY,OAAVA,EAAEvvB,EAAE22N,GAAGzkN,KAAa,EAAElS,EAAE+sD,GAAGx9B,GAAG1E,IAAI7qB,EAAEkS,EAAE,CAC9D,SAASylO,GAAI33O,EAAEkS,GAAG,IAAIqd,EAAuB,OAARghO,IAAbhhO,EAAE,IAAIk6M,GAAIv3N,GAAQlS,GAAU,IAAIg/N,GAAIzvM,EAAE,CAC9D,SAASihO,GAAIxwP,GAAG,IAAIkS,EAA6B,OAA3BA,EAAElS,EAAED,EAAEmS,EAAElS,EAAEssE,GAAGtsE,EAAE86B,GAAGmwJ,GAAIjrL,EAAEkS,GAAUA,EAAEqpM,IAAI,CAC9D,SAASk1C,GAAIzwP,EAAEkS,GAAuC,OAApClS,EAAEkS,GAAGA,EAAEA,EAAElS,EAAEuvB,GAAGrd,EAAEqd,EAAEvvB,EAAED,GAAGmS,EAAEnS,EAAEC,EAAEA,GAAGkS,EAAElS,EAASA,CAAC,CAC9D,SAAS0wP,GAAI1wP,EAAEkS,GAAG,OAAO+gI,EAAK3/H,KAAKskB,IAAI53B,GAAGizI,EAAK3/H,KAAKskB,IAAI1lB,GAAGlS,EAAEkS,CAAC,CAE9D,SAASqlK,KAAMjzK,KAAKtE,EAAE,IAAIugN,GAAIj8M,KAAKiB,EAAE,IAAIkxK,GAAInyK,KAAKqO,EAAE,EAAErO,KAAKtG,EAAE,CAAC,CAC9D,SAAS2yP,GAAI3wP,GAAGsE,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAE+rK,GAAG2yE,IAAG/8D,IAAI,KAAK7zL,EAAEuF,EAAErH,OAAO,EAAE,EAAE,CAC9D,SAAS2yP,GAAI7wP,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEA,EAAE+wP,GAAI9wP,EAAEkS,EAAEqd,GAAGvvB,EAAEkS,EAAE,IAAI6+O,GAAIhxP,EAAEwvB,EAAErxB,OAAO,CAC9D,SAAS8yP,KAAMA,GAAIt8G,EAAIu8G,IAAI,IAAI59C,GAAI69C,IAAI,GAAGC,IAAI,IAAI99C,GAAI,KAAK,EAAE,CAC7D,SAAS+9C,KAAMA,GAAI18G,EAAI28G,IAAI,IAAIv9C,GAAIw9C,IAAI,GAAGC,IAAI,IAAIz9C,GAAI,MAAM,EAAE,CAC9D,SAASs7C,KAnvCT,IAAapvP,EAAEkS,EAmvCAk9O,GAAI16G,EAAI26G,IAAI,IAAI78E,GAAI88E,IAAI,IAAI98E,GAnvC9BxyK,EAmvCsCwxP,IAnvCpCt/O,EAmvCuC,IAAI6/I,GAnvCtC/xJ,GAAG22L,GAAI24D,IAAItvP,EAAEkS,EAmvC6B,CAG9D,SAASu/O,GAAIzxP,GAAG,OAAGA,EAAEgtN,IAAI,IAAI,EAAS,KAAYrvC,GAAG39K,EAAE8sN,GAAG,IAAI,CAC9D,SAAS4kC,GAAI1xP,GAAG,OAAGA,EAAEgtN,IAAI,IAAI,EAAS,KAAYrvC,GAAG39K,EAAE8sN,GAAG,IAAI,CAC9D,SAAS6kC,GAAI3xP,GAAG,OAAGA,EAAEgtN,IAAI,IAAI,GAAU,KAAYrvC,GAAG39K,EAAE8sN,GAAG,GAAG,CAC9D,SAAShnC,GAAI9lL,EAAEkS,GAAG,IAAIqd,EAAEvvB,EAAEA,EAAEA,EAAEA,GAAG,GAAG,OAAOuvB,EAAErd,KAAKqd,EAAErd,GAAGlS,EAAE4xP,GAAG1/O,GAAG,CAG/D,SAASg9K,GAAIlvL,EAAEkS,EAAEqd,GAAG,OAAU,MAAHrd,EAAQ2uO,IAAI7gP,EAAE86B,EAAE,KAAKvL,GAAGsiO,GAAI7xP,EAAE2S,EAAET,EAAEqd,EAAE,CAC/D,SAASuiO,GAAI9xP,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,OAAO,IAAIu8M,GAAIr3O,EAAEuF,EAAE2M,EAAElS,EAAEssN,KAAK/8L,EAAExvB,EAAEwF,EAAEu1B,EAAE,CAC9D,SAASi3N,GAAI/xP,EAAEkS,EAAEqd,GAAsC,OAAnCvvB,EAAEA,EAAE83L,GAAI93L,EAAEA,EAAE,EAAEkS,GAAI,GAAGqd,EAAGwsL,GAAI/7M,EAAEA,EAAEkS,GAAUlS,CAAC,CAC/D,SAASgyP,GAAGhyP,EAAEkS,EAAEqd,GAAuC,OAApCwmJ,GAAI/1K,EAAEA,GAAGohP,KAAK6Q,IAAG//O,EAAEqd,GAAG,IAAIyvK,GAAG9sL,EAAEqd,KAAYvvB,CAAC,CAC/D,SAASkyP,GAAGlyP,GAAuC,OAApCutN,GAAGvtN,EAAEuvB,GAAGvvB,EAAEuF,EAAEvF,EAAEA,EAAEA,EAAEuvB,EAAEvvB,EAAEuvB,EAAEvvB,EAAEuvB,EAAEA,IAAIvvB,EAAED,EAASC,EAAEA,EAAE86B,CAAC,CAC/D,SAASq3N,GAAGnyP,GAAuC,OAApCutN,GAAGvtN,EAAEuF,GAAGvF,EAAEuvB,EAAEvvB,EAAEA,EAAEA,EAAEuF,EAAEvF,EAAEuF,EAAEvF,EAAEuF,EAAEA,IAAIvF,EAAED,EAASC,EAAEA,EAAE86B,CAAC,CAC/D,SAASs3N,GAAIpyP,EAAEkS,GAAKlS,EAAED,GAAG+vN,GAAI9vN,EAAED,EAAEwF,EAAEvF,GAAGA,EAAED,EAAEmS,EAAIlS,EAAED,GAAGg2K,GAAI/1K,EAAED,EAAEwF,EAAEvF,EAAE,CAC/D,SAASqyP,GAAIryP,EAAEkS,GAAKlS,EAAEuvB,GAAGugM,GAAI9vN,EAAEuvB,EAAE5c,EAAE3S,GAAGA,EAAEuvB,EAAErd,EAAIlS,EAAEuvB,GAAGwmJ,GAAI/1K,EAAEuvB,EAAE5c,EAAE3S,EAAE,CAC/D,SAASsyP,GAAItyP,EAAEkS,GAAKlS,EAAEuvB,GAAGugM,GAAI9vN,EAAEuvB,EAAEvvB,EAAEA,GAAGA,EAAEuvB,EAAErd,EAAIlS,EAAEuvB,GAAGwmJ,GAAI/1K,EAAEuvB,EAAEvvB,EAAEA,EAAE,CAC/D,SAASuyP,GAAIvyP,EAAEkS,GAAKlS,EAAEhC,GAAG8xN,GAAI9vN,EAAEhC,EAAEoU,EAAEpS,GAAGA,EAAEhC,EAAEkU,EAAIlS,EAAEhC,GAAG+3K,GAAI/1K,EAAEhC,EAAEoU,EAAEpS,EAAE,CAC/D,SAASwyP,GAAIxyP,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEkS,EAAE5N,KAAKirB,EAAEvvB,EAAEsE,KAAK4N,GAAG6xK,GAAGx0J,GAAG,IAAIyvM,GAAIzvM,GAAG,CAC/D,SAASkjO,GAAIzyP,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEkS,EAAE5N,KAAKirB,EAAEvvB,EAAEsE,KAAK4N,GAAG6xK,GAAGx0J,GAAG,IAAIyvM,GAAIzvM,GAAG,CAC/D,SAASmjO,GAAI1yP,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEsE,KAAKirB,EAAE02L,GAAI3hN,KAAKtE,GAAGsE,KAAK4N,EAAE,IAAI44O,GAAI54O,EAAE,CAE/D,SAASw5N,GAAI1rO,EAAEkS,GAAG,GAAGlS,EAAE,GAAGA,EAAEkS,EAAG,MAAMghK,GAAI,IAAIgO,GAAIyxE,IAAI3yP,EAAE4yP,IAAI1gP,GAAI,CAC/D,SAAS2gP,GAAI7yP,EAAEkS,GAAG,OAAOi6N,GAAInsO,EAAEA,EAAEkS,GAAGq5N,GAAIvrO,EAAE29K,GAAGzrK,EAAE,IAAIS,EAAE,MAAM,IAAI,CAE/D,SAASmgP,KAAKA,GAAGp+G,EAAIlhG,IAAG4qK,IAAIhiC,KAAKmC,GAAGC,GAAGu0E,IAAG,GAAG9mB,IAAI,IAAI,EAAE,CAAC5vD,OAAM,CAC9D,SAAS9e,KAAMA,GAAI7oB,EAAIs+G,IAAIzlB,GAAI,IAAI7oC,IAAKuuD,MAAMC,MAAMC,MAAMC,KAAK,CAC/D,SAAS75C,KAAMA,GAAI7kE,EAAI2+G,IAAI9lB,GAAI,IAAI7oC,IAAKuuD,MAAMC,MAAMC,MAAMC,KAAK,CAC/D,SAAS/2F,KAAMA,GAAI3nB,EAAI4+G,IAAI/lB,GAAI,IAAI7oC,IAAKuuD,MAAMC,MAAMC,MAAMC,KAAK,CAC/D,SAASj2F,KAAMA,GAAIzoB,EAAI6+G,IAAI9rB,GAAI,IAAI/iC,IAAKuuD,MAAMC,MAAMC,MAAMK,KAAK,CAC/D,SAASt8B,KAAMA,GAAIxiF,EAAI++G,IAAIhsB,GAAI,IAAI/iC,IAAKuuD,MAAMC,MAAMC,MAAMK,KAAK,CAC/D,SAASr0F,KAAMA,GAAIzqB,EAAIg/G,IAAIjsB,GAAI,IAAI/iC,IAAKuuD,MAAMC,MAAMC,MAAMK,KAAK,CAC/D,SAASr6C,KAAMA,GAAIzkE,EAAIi/G,IAAIlsB,GAAI,IAAI/iC,IAAKuuD,MAAMC,MAAMC,MAAMK,KAAK,CAC/D,SAAS31F,KAAMA,GAAInpB,EAAIk/G,IAAIrmB,GAAI,IAAI7oC,IAAKmvD,MAAMC,MAAMC,MAAMC,KAAK,CAC/D,SAASC,GAAIj0P,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKirB,EAAEvvB,EAAEsE,KAAKvE,EAAEA,EAAE6mN,GAAItiN,KAAK4N,GAAG20M,GAAIviN,KAAKirB,EAAE,CAC/D,SAAS2kO,GAAIl0P,GAAGsE,KAAKirB,EAAE,IAAIkqJ,GAAIn1K,KAAK4N,EAAElS,EAAEkS,EAAE5N,KAAKvE,EAAEC,EAAEuvB,EAAEjrB,KAAKtE,EAAEA,EAAEA,CAAC,CAC/D,SAASm0P,GAAIn0P,GAAGsE,KAAKtE,EAAEizI,EAAK3/H,KAAKmkB,IAAIz3B,GAAGsE,KAAK4N,EAAE+gI,EAAK3/H,KAAK6lB,IAAIn5B,EAAE,CAC/D,SAAS4mN,GAAI5mN,EAAEkS,GAAKlS,EAAEA,GAAG8vN,GAAI9vN,EAAEA,EAAEqB,EAAErB,GAAGA,EAAEA,EAAEkS,EAAIlS,EAAEA,GAAG+1K,GAAI/1K,EAAEA,EAAEqB,EAAErB,EAAE,CAC/D,SAAS6mN,GAAI7mN,EAAEkS,GAAKlS,EAAEkS,GAAG49M,GAAI9vN,EAAEkS,EAAE4oB,EAAE96B,GAAGA,EAAEkS,EAAEA,EAAIlS,EAAEkS,GAAG6jK,GAAI/1K,EAAEkS,EAAE4oB,EAAE96B,EAAE,CAC/D,SAASo0P,GAAIp0P,EAAEkS,IA9Tf,SAAalS,EAAEkS,EAAEqd,GAAGouJ,GAAGzrK,EAAEA,EAAE,IAAIkxM,GAAIlxM,EAAElS,EAAE,IAAIqhO,GAAIrhO,EAAEuvB,EAAErd,GAAG,CA8TpCmiP,CAAIr0P,EAAEA,EAAEkS,EAAElS,EAAEuvB,GAAGouJ,GAAG39K,EAAEkS,EAAEA,EAAE,IAAMA,GAAGyrK,GAAGzrK,EAAEA,EAAE,IAAIA,CAAC,CAE/D,SAASoiP,GAAIt0P,EAAEkS,GAAG23K,GAAG7pL,EAAE8sN,GAAG,KAAKynC,IAAIpJ,GAAIxtE,GAAG39K,EAAE8sN,GAAG,KAAK,GAAGjiC,GAAI7qL,EAAEkS,EAAE,CAC/D,SAASsiP,GAAIx0P,EAAEkS,GAAG23K,GAAG7pL,EAAE8sN,GAAG,OAAOnvC,GAAG39K,EAAE8sN,GAAG,KAAKvJ,GAAG,MAAM14B,GAAI7qL,EAAEkS,EAAE,CAC/D,SAASuiP,GAAIz0P,EAAEkS,GAAG,OAAOi6L,KAAMuoD,GAAIxiP,GAAG,IAAIk1N,GAAIl1N,EAAElS,GAAG,IAAIm6M,GAAIjoM,EAAElS,EAAE,CAE/D,SAAS20P,GAAI30P,GAAG,IAAMuvB,EAAiC,OAA5B6/J,KAAmBm4D,GAAtBh4N,EAAW,IAAIsjJ,GAAa7yK,GAAUuvB,CAAC,CAC/D,SAASqlO,GAAI50P,GAAG,IAAMuvB,EAAiC,OAA5B6/J,KAAmBm4D,GAAtBh4N,EAAW,IAAIsjJ,GAAa7yK,GAAUuvB,CAAC,CAC/D,SAASslO,GAAI70P,EAAEkS,GAAG,IAAIqd,EAAiC,OAA/BA,EAAE,IAAI2pN,GAAIl5O,GAAGkS,EAAEqd,EAAErd,EAAEqd,EAAErxB,QAAQqxB,EAASA,CAAC,CAC/D,SAASulO,GAAG90P,EAAEkS,GAAG,IAAIqd,EAAyB,OAAvBA,EAAEouJ,GAAG8gD,GAAG4qB,GAAGrpP,EAAEA,GAAGkS,GAAG,KAAgBqd,EAAE0vJ,KAAJ,CAAQ,CAChE,SAAS81E,GAAI/0P,GAAoC,OAA3B8/O,GAAI9/O,GAAM+xO,KAAMA,KAAkBijB,GAAIh1P,EAAhBgpP,IAAoB,CAChE,SAASiM,GAAGj1P,GAAS,IAAN,IAAIkS,IAAuB,GAATA,EAAElS,EAAEy7M,MAASz7M,EAAEu7M,KAAM,OAAOrpM,CAAG,CAChE,SAAS+wK,GAAGjjL,EAAEkS,GAAGqpK,GAAGx8K,KAAKuF,KAAK,IAAImzL,GAAI+mB,GAAGx+M,KAAK+wN,GAAG7+M,EAAEgjP,KAAK5wP,KAAKtE,EAAEkS,CAAC,CAChE,SAASijP,GAAIn1P,EAAEkS,EAAEqd,GAAG6lO,GAAIljP,EAAEqd,EAAEvvB,EAAEi/K,MAAM36K,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAEkS,EAAE5N,KAAK4N,EAAEqd,EAAErd,CAAC,CAChE,SAASmjP,GAAIr1P,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEq1P,GAAIljP,EAAEqd,EAAEvvB,EAAEuvB,EAAErxB,QAAQ6B,EAAEwvB,EAAErd,EAAE8oL,GAAIh7L,EAAEuvB,EAAErd,EAAEnS,EAAE,CAEhE,SAAS09M,GAAIz9M,EAAEkS,GAAG,GAAGlS,EAAE,GAAGA,GAAGkS,EAAG,MAAMghK,GAAI,IAAIgO,GAAIyxE,IAAI3yP,EAAE4yP,IAAI1gP,GAAI,CAChE,SAAS0lL,GAAI53L,EAAEkS,GAAG,GAAGlS,EAAE,GAAGA,GAAGkS,EAAG,MAAMghK,GAAI,IAAIwR,GAAIiuE,IAAI3yP,EAAE4yP,IAAI1gP,GAAI,CAChE,SAASq7L,GAAIvtM,EAAEkS,GAAG5N,KAAK4N,GAAG2uJ,GAAI7gK,GAAGA,GAAGsE,KAAKtE,EAAW,IAARkS,EAAEojP,KAAU,GAAFpjP,EAAK2/N,IAAI3/N,CAAC,CAChE,SAASqjP,GAAIv1P,GAAGqyK,GAAI/tK,MAAMuxK,GAAIvxK,KAAKtE,EAAEw1P,GAAIviH,EAAK3/H,KAAKugB,IAAI,EAAE7zB,KAAK,EAAE,CAChE,SAASy1P,GAAIz1P,GAAG,OAAO01P,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC7zL,EAAEhC,EAAE4B,EAAEI,EAAEJ,EAAEI,EAAEA,IAAI,CA4BhE,SAAS21P,GAAI31P,EAAEkS,GAAG,OAysElB,SAAalS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAkD,GAAhD2U,EAAE,IAAIq/I,GAAIvuJ,EAAEskN,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAGnS,EAAE49K,GAAG39K,EAAE2S,EAAE,KAAKw5L,KAASxuB,GAAGzrK,EAAE,IAAIq1M,KAAM,IAAIzsL,EAAE,EAAEA,EAAE96B,EAAEhC,IAAI88B,EAAGv1B,EAAExF,EAAE+6B,GAAGr3B,EAAEwkN,GAAG1iN,EAAE2iN,OAAOj9B,GAAIt4K,EAAEpN,QAAS,IAAIu1B,EAAE,EAAEA,EAAE96B,EAAEhC,IAAI88B,EAAGv1B,EAAExF,EAAE+6B,GAAMr3B,EAAEwkN,GAAG1iN,EAAE2iN,QAAOlqN,EAAEuH,EAAEu1M,KAAK7vB,GAAIt4K,EAAE4c,EAAEqmO,IAAI51P,EAAEkS,EAAE4oB,EAAEnoB,EAAE3U,EAAEA,GAAGA,IAAK,OAAO63P,GAAIljP,EAAE,CAzsEnOmjP,CAAI91P,EAAEkS,EAAE23K,GAAG33K,EAAE,KAAwB,IAAlByrK,GAAGzrK,EAAE,IAAIsjK,GAAGmyC,KAAQ,CAEhE,SAASouC,GAAI/1P,EAAEkS,EAAEqd,GAAG,IAAIxvB,GAAEA,EAAE,IAAI2qJ,IAAMx4I,EAAEA,EAAEnS,EAAEC,EAAEuvB,IAAIrd,EAAEA,EAAE6jK,GAAI/1K,EAAED,EAAEA,EAAE,CAEhE,SAASi2P,GAAGh2P,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAwB,OAAtBA,EAAE4zO,GAAG3zO,EAAEkS,GAAGqd,EAAEvvB,EAAEA,EAAE0yN,GAAG3yN,GAAU,IAAIo/L,GAAGn/L,EAAEuvB,EAAE,CAIjE,SAAS0mO,GAAIj2P,GAAyC,OAAtCA,EAAEA,IAAI+kO,KAAMmxB,MA5sE5B,SAAal2P,EAAEkS,GAAGlS,EAAEA,EAAEkS,CAAC,CA4sEWikP,CAAIn2P,EAouEtC,SAAaA,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAc,GAAZgqB,EAAErd,EAAEk8N,GAAGpuO,EAAEA,GAAMuvB,GAA8E,OAA3EhqB,EAAEu+K,GAAGyqD,MAAMh/M,EAAErd,IAAIqd,EAAErd,EAAE,IAAIyhN,IAAK6a,MAAMC,KAAKC,IAAGn/M,IAAIA,EAAErd,GAAG,iBAA6C,OAAW,IAA5BnS,EAAEsuN,GAAI9oN,EAAE6rN,IAAI,MAAkBglC,GAAIp2P,EAAEkuO,GAAIluO,EAAEy0O,GAAIviO,EAAEwiO,OAAOnvO,GAAM,GAAHxF,EAAKq2P,GAAIp2P,EAAE,KAAKuF,EAAEkuD,OAAO,IAAI2iM,GAAIp2P,EAAEuF,EAAEkuD,OAAO,EAAE1zD,GAAGwF,EAAEkuD,OAAO1zD,EAAE,IAAK,OAAO,IAAI,CApuE7Ns2P,CAAIr2P,EAAE2S,EAAE3S,EAAEkS,IAAWlS,EAAEA,CAAC,CAChE,SAASs2P,GAAIt2P,GAAyC,OAAtCA,EAAED,IAAIglO,KAAMmxB,MA3sE5B,SAAal2P,EAAEkS,GAAGlS,EAAED,EAAEmS,CAAC,CA2sEWqkP,CAAIv2P,EAihFtC,SAAaA,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAc,GAAZ8rB,EAAErd,EAAEk8N,GAAGpuO,EAAEA,GAAMuvB,GAAoE,OAAjE9rB,EAAEqgL,GAAGyqD,MAAMh/M,EAAErd,IAAIqd,EAAErd,EAAE,IAAIyhN,IAAK6a,MAAMC,KAAKC,IAAGn/M,IAAIA,EAAErd,GAAGi7O,OAAkJ,OAAhI5nP,EAAE8oN,GAAI5qN,EAAE2tN,IAAI,KAAKrxN,EAAEmS,EAAEwiO,MAAY,GAAJnvO,GAAOoN,EAAEu7N,GAAIluO,EAAEy0O,GAAI10O,IAAI+6B,EAAEr3B,GAAa,GAAH8B,GAAMoN,EAAE,KAAKmoB,EAAEr3B,EAAEgwD,OAAO,KAAQ9gD,EAAElP,EAAEgwD,OAAO,EAAEluD,GAAGu1B,EAAEr3B,EAAEgwD,OAAOluD,EAAE,IAAU46O,GAAIqW,GAAIx2P,EAAEkS,KAAK,KAAK,EAAE,KAAK,EAAG,OAtlDhS,SAAalS,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAiB,GAAfA,EAAEkxP,IAAIz2P,EAAEkS,EAAEqd,EAAExvB,IAAOwF,IAAGA,EA0LlD,SAAavF,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAqB,GAAhBv1B,EAAE8kL,IAAIrqL,EAAEkS,EAAEA,GAAb4oB,EAAgBv1B,EAAMu1B,IAAG/6B,EAAE49K,GAAG22C,IAAIC,GAAIv0N,EAAE86B,GAAG,IAAI,KAAU,OAAO27N,IAAIz2P,EAAED,EAAEmS,EAAEqd,GAAI,OAAO,IAAI,CA1LnEmnO,CAAI12P,EAAEuvB,EAAExvB,GAAQwF,IAAIoxP,IAAI32P,EAAEkS,EAAE3M,IAAI,OAAO,KAAM,OAAOA,CAAC,CAslD8LqxP,CAAI52P,EAAED,EAAE4S,EAAEmoB,GAAG,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAG,OArlDjV,SAAa96B,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAiB,GAAfA,EAAEsxP,IAAI72P,EAAEkS,EAAEqd,EAAExvB,IAAOwF,IAAGA,EAAE6wP,GAAIp2P,EAAEuvB,EAAExvB,MAAY42P,IAAI32P,EAAEkS,EAAE3M,GAAI,OAAO,KAAM,OAAOA,CAAC,CAqlD+OuxP,CAAI92P,EAAED,EAAE4S,EAAEmoB,GAAM,OAAO,IAAI,CAjhF3Ui8N,CAAI/2P,EAAE2S,EAAE3S,EAAEkS,IAAWlS,EAAED,CAAC,CAChE,SAAS69K,GAAI59K,GAAmC,OAAhCspN,GAAItpN,EAAEA,EAAEA,EAAEuvB,EAAEA,EAAErxB,QAAQ8B,EAAEkS,EAAElS,EAAEA,IAAWA,EAAEuvB,EAAEA,EAAEvvB,EAAEkS,EAAE,CACjE,SAAS8kP,GAAIh3P,EAAEkS,GAAGlS,EAAEkS,EAAElS,EAAEkS,EAAEA,EAAEA,EAAElS,EAAEuvB,EAAEvvB,EAAEuvB,EAAErd,EAAEqd,EAAEvvB,EAAED,EAAEC,EAAED,EAAEmS,EAAEnS,EAAEC,EAAEA,EAAEA,EAAEA,EAAEkS,EAAElS,CAAC,CACjE,SAAS44L,GAAI54L,EAAEkS,GAAG,OAAOsxN,GArgBzB,SAAYxjO,EAAEkS,GAAG,OAAOwtM,GAAG1/M,EAAE8T,EAAE5B,EAAE4B,EAAE9T,EAAEgT,EAAEd,EAAEc,EAAEhT,EAAEyD,EAAEyO,EAAEzO,EAAE,CAqgBtBwzP,CAAGn3C,GAAI9/M,GAAG4jO,GAAI5jO,GAAGA,EAAE8/M,GAAI5tM,GAAG0xN,GAAI1xN,GAAGA,GAAG,CACjE,SAASwmL,GAAI14L,EAAEkS,GAAG,OAAOsxN,GArgBzB,SAAYxjO,EAAEkS,GAAG,OAAOwtM,GAAG1/M,EAAE8T,EAAE5B,EAAE4B,EAAE9T,EAAEgT,EAAEd,EAAEc,EAAEhT,EAAEyD,EAAEyO,EAAEzO,EAAE,CAqgBtByzP,CAAGp3C,GAAI9/M,GAAG4jO,GAAI5jO,GAAGA,EAAE8/M,GAAI5tM,GAAG0xN,GAAI1xN,GAAGA,GAAG,CACjE,SAASilP,GAAIn3P,EAAEkS,GAAG,OAAOsxN,GArgBzB,SAAYxjO,EAAEkS,GAAG,OAAOwtM,GAAG1/M,EAAE8T,EAAE5B,EAAE4B,EAAE9T,EAAEgT,EAAEd,EAAEc,EAAEhT,EAAEyD,EAAEyO,EAAEzO,EAAE,CAqgBtB2zP,CAAGt3C,GAAI9/M,GAAG4jO,GAAI5jO,GAAGA,EAAE8/M,GAAI5tM,GAAG0xN,GAAI1xN,GAAGA,GAAG,CAEjE,SAASmlP,GAAGr3P,GAAS,OAAN+jL,GAAG/jL,GAAU6pL,GAAG7pL,EAAE,IAAI,IAAIg/N,GAAIrhD,GAAG39K,EAAE,KAAKsiO,GAAGtiO,EAAE27M,KAAK,CAQjE,SAAS27C,GAAIt3P,EAAEkS,GAAG,IAAMnS,EAAe,OAAJA,EAAPw3P,GAAIrlP,GAAcyrK,GAAG+5B,GAAI13M,EAAEuvB,EAAExvB,GAAG,IAAIC,CAAC,CACjE,SAASw3P,GAAIx3P,EAAEkS,GAAG,IAAIqd,EAAS,IAAPA,EAAEvvB,EAAE,GAASuvB,EAAErxB,OAAOgU,GAAGqd,EAAE,IAAIA,EAAE,OAAOA,CAAC,CACjE,SAASkoO,GAAIz3P,GAAG,OAAY,MAALA,EAAEuvB,GAAqB,GAAZvvB,EAAEuvB,EAAErxB,OAAU,KAAK8B,EAAE2S,EAAE,KAAK3S,EAAEuvB,CAAC,CACjE,SAASmoO,GAAI13P,GAAG,OAAY,MAALA,EAAEuvB,GAAqB,GAAZvvB,EAAEuvB,EAAErxB,OAAU,KAAK8B,EAAEkS,EAAE,KAAKlS,EAAEuvB,CAAC,CACjE,SAASooO,GAAG33P,EAAEkS,GAAG,OAASlS,GAAKA,EAAEokD,OAAOpkD,EAAEokD,OAAOlyC,GAAG6oM,GAAG/6M,KAAK+6M,GAAG7oM,EAAE,CACjE,SAAS0lP,GAAI53P,EAAEkS,GAAG,OAAM,GAAHA,IAAelS,EAAEE,GAAU,GAAPF,EAAEE,EAAE46B,EAAY2R,IAAIzsC,EAAEkS,EAAE,CACjE,SAAS2lP,GAAI73P,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAKC,EAAEJ,GAAKsS,GAAKqd,IAAGxvB,EAAE,IAAIixJ,GAAI+kB,GAAI/1K,EAAEuF,EAAExF,GAAG,CACjE,SAAS+3P,GAAI93P,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEA,EAAEC,EAAED,EAAEmS,EAAE9O,GAAGpD,EAAED,EAAEmS,EAAE9O,GAAGpD,EAAED,EAAEwvB,EAAEnsB,GAAGpD,EAAED,EAAEwvB,EAAEnsB,GAAGrD,CAAC,CACjE,SAASg4P,GAAI/3P,EAAEkS,EAAEqd,GAAGjrB,KAAKvE,EAAEC,EAAEsE,KAAK8N,EAAEF,EAAE5N,KAAKiB,EAAEgqB,EAAEjrB,KAAKpE,GAAG,EAAEoE,KAAKlB,EAAE,CAAC,CACjE,SAAS40P,GAAIh4P,EAAEkS,EAAEqd,GAAGjrB,KAAKvE,EAAEC,EAAEsE,KAAKjD,EAAE6Q,EAAE5N,KAAKw2B,EAAEvL,EAAEjrB,KAAKpE,GAAG,EAAEoE,KAAKlB,EAAE,CAAC,CACjE,SAASo1O,GAAIx4O,EAAEkS,EAAEqd,GAAG2iJ,GAAInzK,KAAKuF,KAAK,IAAIA,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEkS,EAAE5N,KAAKirB,EAAEA,CAAC,CAChE,SAAS0oO,GAAIj4P,GAAGkkN,MAAMhyC,GAAInzK,KAAKuF,KAAKtE,GAAGsE,KAAKirB,GAAE,EAAMjrB,KAAKtE,GAAE,CAAK,CAChE,SAASk4P,GAAIl4P,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAGq9N,GAAIp5P,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGu1B,IAAIx2B,KAAKpE,GAAG,EAAE,CACjE,SAASk4P,GAAIp4P,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAGu9N,GAAIt5P,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGu1B,IAAIx2B,KAAKpE,GAAG,EAAE,CACjE,SAASo4P,GAAIt4P,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAGy9N,GAAIx5P,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGu1B,IAAIx2B,KAAKpE,GAAG,EAAE,CACjE,SAASs4P,GAAIx4P,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG29N,GAAI15P,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGu1B,IAAIx2B,KAAKpE,GAAG,EAAE,CACjE,SAASw4P,GAAI14P,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG69N,GAAI55P,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGu1B,IAAIx2B,KAAKpE,GAAG,EAAE,CACjE,SAAS04P,GAAI54P,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG+9N,GAAI95P,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGu1B,IAAIx2B,KAAKpE,GAAG,EAAE,CACjE,SAAS44P,GAAI94P,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAGi+N,GAAIh6P,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGu1B,IAAIx2B,KAAKpE,GAAG,EAAE,CACjE,SAAS84P,GAAIh5P,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAGm+N,GAAIl6P,KAAKuF,KAAKtE,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGu1B,IAAIx2B,KAAKpE,GAAG,EAAE,CACjE,SAAS2tO,GAAI7tO,EAAEkS,EAAEqd,EAAExvB,GAAG0xK,GAAI1yK,KAAKuF,KAAKirB,GAAGjrB,KAAK4N,EAAElS,EAAEsE,KAAKirB,EAAErd,EAAE5N,KAAKvE,EAAEA,CAAC,CACjE,SAASm5P,GAAIl5P,EAAEkS,GAAG5N,KAAKtE,EAAE,IAAIsyK,GAAIhuK,KAAKvE,EAAE,IAAIuyK,GAAIhuK,KAAKw2B,EAAE96B,EAAEsE,KAAKirB,EAAErd,CAAC,CACjE,SAASmlK,KAAM/yK,KAAKirB,EAAE,IAAIm2L,GAAIphN,KAAKtE,EAAE,IAAI4qP,GAAItmP,KAAK4N,EAAE,IAAI+lK,GAAI8qB,IAAK,CACjE,SAASo2D,KAAMh5E,KAAM77K,KAAK4N,EAAE,IAAIsgK,GAAIluK,KAAKtE,EAAE,IAAIwyK,GAAIluK,KAAKirB,EAAE,IAAI+iJ,EAAG,CACjE,SAAS8mF,GAAIp5P,EAAEkS,GAAG5N,KAAKqO,EAAE3S,EAAEsE,KAAKvE,GAAGglO,KAAMmxB,KAAK5xP,KAAKtE,EAAEk2P,IAAI5xP,KAAK4N,EAAEA,CAAC,CACjE,SAASmnP,GAAIr5P,EAAEkS,GAAG5N,KAAKw2B,EAAE96B,EAAEsE,KAAKtE,GAAG+kO,KAAMu0B,KAAKh1P,KAAKirB,EAAE+pO,IAAIh1P,KAAK4N,EAAEA,CAAC,CACjE,SAASqnP,GAAIv5P,EAAEkS,IAAIlS,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIiqO,GAAIx5P,EAAE,IAAIy5P,IAAIz5P,EAAEuvB,GAAGmqO,MAAMC,KAAKznP,EAAE,CACjE,SAAS0nP,KAAMA,GAAIllH,EAAImlH,IAAI,IAAI9lD,GAAI,MAAM,GAAG+lD,IAAI,IAAI/lD,GAAI,MAAM,EAAE,CAEhE,SAASlS,GAAG7hM,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAwB,SAAtBA,EAAE49K,GAAG39K,EAAE+5P,KAAK/oB,GAAG9+N,GAAG,MAAgBnS,EAAEi6P,GAAGzqO,EAAE,CAClE,SAAS0qO,GAAIj6P,EAAEkS,EAAEqd,EAAExvB,GAAuC,OAApCC,EAAEA,GAAG,GAAG83L,GAAO,MAAH5lL,EAAQ6lL,IAAI02B,GAAIv8M,GAAGqd,EAAExvB,GAAUC,CAAC,CAClE,SAASmrL,GAAInrL,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAkC,OAA/BsnN,GAAIpiP,EAAEkS,EAAEqd,EAAEuL,GAAGo/N,GAAIl6P,EAAED,GAAGo6P,GAAIn6P,EAAEuF,GAAUvF,CAAC,CACjE,SAASo6P,GAAIp6P,GAAyC,OAAtCspN,GAAItpN,EAAEkS,EAAEA,GAAGlS,EAAED,EAAEC,GAAGA,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,EAAEkS,EAAEA,IAAIlS,EAAEA,EAASA,EAAEuvB,EAAEA,CAAC,CAClE,SAAS8qO,GAAIr6P,GAAG,KAAMA,EAAED,EAAE,GAAe,GAAZC,EAAEA,IAAIA,EAAED,KAAmB,GAAZC,EAAEA,EAAEA,EAAED,OAAUC,EAAEuF,EAAE,EAAE,CAClE,SAAS+0P,GAAIt6P,GAAG,OAAQA,EAAEA,EAAkB,GAAZA,EAAEuF,EAAErH,OAAU8B,EAAEA,EAAEA,EAAEA,EAAEA,EAAEA,EAAG,GAAGA,EAAEuF,EAApCvF,EAAEuvB,CAAoC,CAGlE,SAASgrO,GAAGv6P,GAAG,OAAOmoO,GAAGnoO,EAAEuF,EAAE21K,KAAK+D,KAAKj/K,EAAEuvB,EAAE2rJ,KAAK+D,KAAK,GAAG,IAAIpyJ,GAAG7sB,GAAG,CAElE,SAASw6P,GAAIx6P,GAAG,OAAO29K,GAAG88E,IAAIz6P,EAAEi+K,GAAGy8E,IAAGC,IAAI,GAAG36P,EAAEuvB,EAAErxB,OAAO,EAAE,IAAI,IAAI,CAClE,SAAS08P,GAAI56P,GAAG,OAAO29K,GAAG88E,IAAIz6P,EAAEi+K,GAAGkuE,IAAGC,IAAI,GAAGpsP,EAAEuvB,EAAErxB,OAAO,EAAE,IAAI,IAAI,CAElE,SAAS28P,GAAI76P,EAAEkS,EAAEqd,GAAYw0J,GAAG/jL,GA0gDhC,SAAaA,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAqB,IAAnB0hN,KAAMnC,GAAI9kN,EAAEuvB,EAAEvvB,EAAEA,GAAOuF,EAAE,IAAIogK,GAAI3lK,EAAEuvB,GAAGhqB,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAkB,IAAT6B,EAAE69K,GAAIr4K,GAAOgqB,EAAE,IAAIo2I,GAAI3lK,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAIruJ,GAAG,KAAOurO,GAAG/6P,EAAI,CA1gD/Gg7P,CAAI,IAAIvI,GAApB,IAAIxzB,GAAIh/N,GAAkBkS,EAAEqd,GAAG,CAClE,SAAS8uJ,GAAIr+K,EAAEkS,EAAEqd,GAAYw0J,GAAG/jL,GA0gDhC,SAAaA,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAqB,IAAnB0hN,KAAMnC,GAAI9kN,EAAEuvB,EAAEvvB,EAAEA,GAAOuF,EAAE,IAAIogK,GAAI3lK,EAAEuvB,GAAGhqB,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAkB,IAAT6B,EAAE69K,GAAIr4K,GAAOgqB,EAAE,IAAIo2I,GAAI3lK,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAIruJ,GAAG,KAAOurO,GAAG/6P,EAAI,CA1gD/Gi7P,CAAI,IAAIvI,GAApB,IAAIzzB,GAAIh/N,GAAkBkS,EAAEqd,GAAG,CAClE,SAAS0rO,GAAIj7P,EAAEkS,GAAG,IAAIqd,EAA6B,OAA3BA,EAAE,EAAErd,EAAElS,EAAEA,EAAEuvB,GAAG2rO,GAAIl7P,EAAEA,EAAEuvB,GAAGA,GAAU2rO,GAAIl7P,EAAEkS,EAAE,CAClE,SAASipP,GAAIn7P,EAAEkS,GAAG,IAAIqd,EAAEvvB,EAAEuF,EAAE,IAAIo2K,GAAampC,GAATv1L,EAAE6rO,IAAIlpP,GAASlS,EAAEuvB,GAAG8rO,IAAIr7P,EAAEuvB,EAAE,EAAE,CAClE,SAAS+rO,GAAIt7P,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,GAAEA,EAAE,IAAIspJ,IAAM7uJ,EAAEkS,EAAE3M,EAAE2M,EAAEqd,EAAEhqB,EAAEgqB,EAAExvB,EAAE6lO,GAAI5lO,EAAEA,EAAEuF,EAAE,CAClE,SAASg2P,GAAIv7P,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,GAAEA,EAAE,IAAIspJ,IAAM7uJ,EAAEkS,EAAE3M,EAAE2M,EAAEqd,EAAEhqB,EAAEgqB,EAAExvB,EAAE6lO,GAAI5lO,EAAEkS,EAAE3M,EAAE,CAClE,SAASi2P,GAAIx7P,GAAG,IAAIkS,EAAEqd,EAAoC,OAAtBA,EAAEksO,IAAZvpP,EAAE,IAAI2kO,GAAY72O,GA8zF5C,SAAaA,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAE,IAAIuQ,EAAE,IAAIqrO,GAAI,IAAI/4E,GAAIpmK,IAAI8T,EAAE5B,GAAG4B,EAAEyb,EAAEvvB,EAAED,GAAgD,IAAnC0D,EAAEk6K,IAAXt8K,EAAEq6P,GAAI5nP,IAAU/T,EAAE,IAAImS,EAAEyrK,GAAGt8K,EAAEkE,EAAE,IAAiBnC,EAAE,EAAEilB,GAAQ,OAAzB1V,EAAElP,EAAEukN,MAAkBhqN,GAAS+4O,IAAIpkO,GAAGA,EAAE3U,GAAGE,OAAOkF,EAAEilB,IAAIjlB,EAA4D,GAA9C,MAALuP,EAAE3U,GAAS+4O,IAAIpkO,GAAlBmoB,EAAqBnoB,EAAE3U,GAA1BoU,EAA6BhP,GAAG,GAAGA,EAAE03B,EAAE58B,OAAO48B,EAAE13B,GAAG,MAAWu4P,OAAOvpP,EAAEm6M,KAAM,GAAG1iC,GAAGz3K,EAAE,IAA4B,KAAvBpU,EAAE2/K,GAAGvrK,EAAE,KAAOojK,GAAGyhE,SAAU1zO,EAAE6pP,IAAIpvP,KAAsB,IAAXuF,EAAEiyK,GAAGyhE,OAAW2kB,IAAI57P,EAAEhC,EAAEyF,EAAEyO,QAAc,GAANi6L,KAASxuB,GAAGvrK,EAAE,IAAIm1M,OAAMh4L,EAAOouJ,IAAJxsK,EAAEiB,GAAaurK,GAAGzrK,EAAE,IAAI2pP,GAAG1qP,GAAjB,KAAoB,MAAuC,IAA3BvR,EAAE+9K,GAAGl6K,EAAE09J,GAAG/uJ,GAAG,KAAKrS,EAAEwvB,EAAE0vJ,KAASjrK,EAAE,EAAE9T,EAAEN,EAAEq/K,KAAKjrK,EAAE9T,IAAI8T,EAAa,GAAG61K,GAAb72K,EAAEpT,EAAE07C,GAAGtnC,GAAW,IAAI,CAAsB,GAAM,OAAjBzO,EAAEsxN,GAAI72N,EAAhBiU,EAAErU,EAAEqoE,GAAGj0D,MAA6B,MAAHC,EAAQ,CAAY,GAAXJ,EAAE8pK,GAAG3qK,EAAE,KAAQhT,EAAEkS,GAAe,IAAX2B,EAAE2hK,GAAGyhE,MAAWmW,IAAIv5O,GAAI,SAAStO,EAAE0O,CAAC,CAAC,IAAIsb,EAAEusO,GAAG9oP,EAAEzN,GAAI,IAAImN,EAAE,EAAEA,EAAE3S,IAAI2S,EAAG,GAAG6c,EAAE+rB,GAAG5oC,IAAIM,GAAG+nM,GAAGxrL,EAAE04C,GAAGv1D,MAAMqoM,GAAGx1M,GAAG,CAACgqB,EAAEof,GAAGpf,EAAE0vJ,KAAK,EAAEvsK,KAAK3S,EAAE,KAAK,CAAG,MAAMwvB,EAAEusO,GAAGl8P,EAAE07C,GAAGtnC,GAAGpU,EAAEqoE,GAAGj0D,GAAW,CA9zFzrB+nP,CAAI7pP,GAAKqd,CAAU,CAClE,SAASutN,KAAM,IAAI98O,EAAEkS,EAAqC,OAA3BlS,EAAE,IAAI6yK,GAAUkD,GAAIy2B,IAA1Bt6L,EAAgBlS,GAAwBkS,CAAC,CAClE,SAAS8pP,GAAIh8P,GAA6C,OAA1CA,EAAEoS,EAAEmd,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAG6hE,GAAGhgP,EAAEuvB,GArX9C,SAAavvB,GAAGA,EAAEoS,EAAEmd,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGn+K,EAAEA,GAAG,CAAU,CAqXPi8P,CAAIj8P,EAAEA,GAAUA,CAAC,CAClE,SAASk8P,GAAIl8P,GAAS,OAANskM,KAASza,GAAG7pL,EAAE2S,EAAE,IAAYgrK,GAAG39K,EAAE2S,EAAE,IAAW,IAAI,CAClE,SAASwpP,GAAGn8P,GAAG,OAAG8iP,GAAG9iP,GAAGqhC,OA5vCxB,SAAYrhC,EAAEkS,GAAG6xK,GAAG7xK,GAAG4wO,GAAG9iP,GAAGo8P,GAAG,IAAI1oH,EAAG,CA4vCI2oH,CAAGr8P,EAAE,IAAIg0I,IAAW,EAAI,CAEnE,SAASynE,GAAGz7M,EAAEkS,GAAG,GAAGlS,EAAE,GAAGA,GAAGkS,EAAG,MAAMghK,GAAI,IAAIgO,GA+6D7C,SAAYlhL,EAAEkS,GAAG,GAAGlS,EAAE,EAAG,OAAOs8P,IAAGC,IAAIh+E,GAAGC,GAAGsQ,IAAG,GAAG3Q,IAAI,EAAE,EAAE,CAAC,QAAQ65B,GAAIh4M,MAAW,GAAGkS,EAAE,EAAG,MAAMghK,GAAI,IAAI2O,GAAI26E,IAAItqP,IAAS,OAAOoqP,IAAG,sCAAsC/9E,GAAGC,GAAGsQ,IAAG,GAAG3Q,IAAI,EAAE,EAAE,CAAC,QAAQ65B,GAAIh4M,GAAGg4M,GAAI9lM,KAAM,CA/6DvKuqP,CAAGz8P,EAAEkS,KAAK,OAAOlS,CAAC,CACnE,SAAS08P,GAAG18P,EAAEkS,EAAEqd,GAAG,GAAGvvB,EAAE,GAAGkS,EAAElS,GAAGkS,EAAEqd,EAAG,MAAM2jJ,GAAI,IAAIgO,GA+1DnD,SAAYlhL,EAAEkS,EAAEqd,GAAG,GAAGvvB,EAAE,GAAGA,EAAEuvB,EAAG,OAAOotO,IAAG38P,EAAEuvB,EAAE,eAAe,GAAGrd,EAAE,GAAGA,EAAEqd,EAAG,OAAOotO,IAAGzqP,EAAEqd,EAAE,aAAa,OAAO+sO,IAAG,wDAAwD/9E,GAAGC,GAAGsQ,IAAG,GAAG3Q,IAAI,EAAE,EAAE,CAAC65B,GAAI9lM,GAAG8lM,GAAIh4M,KAAK,CA/1DrJo8M,CAAGp8M,EAAEkS,EAAEqd,IAAK,CACnE,SAASqtO,GAAI58P,EAAEkS,GAAc,GAAXy1K,GAAI3nL,EAAEA,EAAEkS,GAAMA,EAAEnS,EAAG,MAAMmzK,GAAI,IAAIiK,GAAG0/E,MAAM3qP,EAAEnS,EAAEC,CAAC,CACjE,SAAS88P,GAAI98P,EAAEkS,GAAG,GAAGA,EAAEyiN,WAAW30N,EAAE20N,UAAW,MAAMzhD,GAAI,IAAIiC,GAAK,CAClE,SAAS4nF,GAAI/8P,EAAEkS,GAAG,QAAG23K,GAAG33K,EAAE,KAAYg9N,IAAGlvO,EAAEA,EAAE29K,GAAGzrK,EAAE,IAAiB,CACnE,SAAS8qP,GAAIh9P,EAAEkS,GAAG,QAAG23K,GAAG33K,EAAE,KAAYg9N,IAAGlvO,EAAEA,EAAE29K,GAAGzrK,EAAE,IAAiB,CACnE,SAAS+qP,GAAIj9P,EAAEkS,GAAG,QAAG23K,GAAG33K,EAAE,KAAYg9N,IAAGlvO,EAAEA,EAAE29K,GAAGzrK,EAAE,IAAiB,CAEnE,SAAS4mL,GAAI94L,GAAG,IAAIkS,EAAE,OAAG4tM,GAAI9/M,IAAmB,IAAfkS,EAAElS,GAAgB,EAAEkS,EA2arD,SAAYlS,GAAG,GAAGk9P,IAAGl9P,GAAGm9P,KAAKC,MAAK,EAAG,OA1kDrC,SAAYp9P,GAAG,OAAOA,EAAE8T,EAAE9T,EAAEgT,EAAEqqP,IAAIr9P,EAAEyD,EAAE65P,GAAG,CA0kDIC,CAAGC,GAAGx9P,IAAI,OAAOA,EAAE8T,EAAE9T,EAAEgT,EAAEqqP,IAAIr9P,EAAEyD,EAAE65P,GAAG,CA3anBG,CAAGz9P,EAAE,CACnE,SAAS09P,GAAI19P,GAAG,IAAIkS,EAAuC,OAArC6nL,GAAI/5L,GAAGkS,EAAE,IAAIkjI,EAAIkkD,GAAIt5L,EAAEA,EAAE,IAAIinK,GAAI/0J,IAAWA,CAAC,CACnE,SAASyrP,GAAI39P,GAAG,IAAIkS,EAAuC,OAArC6nL,GAAI/5L,GAAGkS,EAAE,IAAIijI,EAAImkD,GAAIt5L,EAAEA,EAAE,IAAIgnK,GAAI90J,IAAWA,CAAC,CACnE,SAASq3M,GAAIvpN,EAAEkS,GAAG5N,KAAKtE,EAAEA,EAAEqkK,GAAItlK,KAAKuF,KAAKtE,GAAG0rO,GAAIx5N,EAAElS,EAAEi/K,MAAM36K,KAAK4N,EAAEA,CAAC,CAClE,SAAS0rP,GAAI59P,GAAGsE,KAAKiB,EAAEvF,EAAEsE,KAAK4N,EAAE5N,KAAKiB,EAAEvF,EAAEklL,UAAU5gL,KAAKtE,EAAE,IAAI1B,KAAK,CAEnE,SAASu/P,GAAG79P,GAAG,OAAO,IAAIixN,IAAKF,GAAG/wN,EAAE89P,KAAKC,GAAGrzD,GAAIA,GAAI,EAAE1qM,GAAGA,EAAE,GAAG,KAAK,CACnE,SAASg+P,GAAIh+P,GAAG,OAAO29K,GAAG88E,IAAIz6P,EAAEi+K,GAAGggF,IAAGC,IAAI,GAAGl+P,EAAEuvB,EAAErxB,OAAO,EAAE,IAAI,KAAK,CAEnE,SAASigQ,GAAIn+P,EAAEkS,EAAEqd,GAAKvvB,EAAED,GAAG+vN,GAAI9vN,EAAED,EAAEwF,EAAEvF,GAAGA,EAAED,EAAEmS,EAAIlS,EAAED,GAAG0rO,GAAIzrO,EAAED,EAAEwF,EAAEgqB,EAAEvvB,EAAE,CACnE,SAASo+P,GAAIp+P,EAAEkS,IAm5Ff,SAAalS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAM,GAAJxU,EAAE,EAAY,GAAP3B,EAAE4oB,EAAE5oB,EAAM,IAAI8B,EAAE,IAAI2xJ,GAAI3lK,GAAGgU,EAAEhU,EAAEgU,EAAEub,EAAEA,EAAErxB,QAASgC,EAAEy9K,GAAGC,GAAI5pK,GAAG,IAAIH,EAAEo/H,EAAK3/H,KAAKugB,IAAIhgB,EAAE3T,EAAEN,EAAEsS,EAAEhS,EAAEA,EAAEgS,EAAEhS,EAAEH,EAAEC,QAAS6T,EAAE3B,EAAE4oB,EAAE5oB,EAAEA,EAAEqd,EAAErd,EAAW,IAAT2B,GAAG3B,EAAEqd,EAAErd,EAAM9O,EAAE,IAAIuiK,GAAI3lK,GAAGoD,EAAEpD,EAAEoD,EAAEmsB,EAAEA,EAAErxB,QAAQ,CAA8H,OAA7Gw1K,IAAhBxzK,EAAEy9K,GAAGC,GAAIx6K,GAAG,KAAUxD,EAAEiU,EAAE3T,EAAEA,EAAEgS,GAAGoxN,GAAIpjO,EAAE46B,GAAGujO,IAAIn+P,IAAKA,EAAE8T,EAAoB9T,EAAE8T,GAAnBizM,KAAMA,KAAMgjB,MAAU9iO,IAAIk2J,MAAMihG,OAAO5qF,GAAIiK,GAAG4qB,IAAIroM,EAAEo+P,KAAK,GAAGzqP,EAAE3T,EAAEA,EAAEgS,GAAUyrK,GAAG4qB,IAAIroM,EAAEq+P,KAAK,KAAK5rP,GAAG,KAAK,EAAEo1L,GAAI7nM,EAAEq+P,KAAKC,MAAMC,MAAM,MAAM,KAAK,EAAE12D,GAAI7nM,EAAEq+P,KAAKC,MAAME,MAAa,IAANhsP,EAAExS,EAAEA,EAAMmoB,EAAE,IAAIs9I,GAAIzlK,EAAEkS,GAAGiW,EAAEroB,EAAEqoB,EAAEkH,EAAEA,EAAErxB,QAAQ,CAAiH,IAAhGw1K,IAAhBz/J,EAAE0pK,GAAGC,GAAIv1J,GAAG,KAAUzoB,EAAE8S,EAAER,EAAE+B,EAAE/T,EAAEgS,GAAGwhK,GAAIz/J,EAAEjU,EAAEiU,EAAE/T,EAAEgS,GAAGysP,IAAI1qP,EAAE2qP,GAAI3qP,EAAE7B,KAAIO,EAAEgrK,GAAG4qB,IAAIt0L,EAAE4qP,KAAK,MAAS92D,GAAI9zL,EAAE4qP,IAAI7mD,IAAKrlM,EAAE3S,IAAQ86B,EAAE,IAAI6qI,GAAI1xJ,EAAEtB,GAAGmoB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAQ,CAAiB,IAAI6B,EAAE++P,KAAtBv5P,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAgB96B,EAAE,GAAGD,EAAEmS,GAAGnS,EAAEA,EAAEwvB,IAAIA,EAAEouJ,GAAGohF,GAAIh/P,GAAG,IAAKmS,EAAE2B,EAAE0b,EAAErd,EAAsB,GAApBE,EAAEurK,GAAG4qB,IAAIhjM,EAAEy5P,KAAK,IAAU,IAAIhhQ,EAAE8gQ,IAAI1sP,EAAE,GAAGpU,EAAEkU,GAAGlU,EAAE+B,EAAEwvB,IAAI9rB,EAAEk6K,GAAGohF,GAAI/gQ,GAAG,IAAKkU,EAAE2B,EAAEpQ,EAAEyO,EAAG,IAAIc,EAAE,IAAI2yJ,GAAIpgK,EAAE2M,GAAGc,EAAEhT,EAAEgT,EAAEuc,EAAEA,EAAErxB,QAAyBw1K,IAAhBryK,EAAEs8K,GAAGC,GAAI5qK,GAAG,KAAUpT,EAAEiU,EAAExS,EAAEnB,EAAEgS,EAAG,CAAC,IAAItS,EAAE,IAAI+lK,GAAI1xJ,EAAE6mB,GAAGl7B,EAAEI,EAAEJ,EAAE2vB,EAAEA,EAAErxB,QAAyBw1K,IAAhBryK,EAAEs8K,GAAGC,GAAIh+K,GAAG,KAAUA,EAAEqU,EAAE/T,EAAEgS,EAAE7Q,EAAEnB,EAAEgS,EAAG,CAAuE,IAAnEhS,EAAEmB,IAAI49P,MAAMC,OAAMn3D,GAAI7nM,GAAG8nM,MAAMe,KAAK61D,GAAIjhF,GAAG4qB,IAAIroM,EAAE6oM,KAAK,MAAMo2D,GAAIj/P,IAAO4T,EAAE,IAAI6xJ,GAAIzlK,EAAEgS,GAAG4B,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAAyBmgQ,IAAhBh9P,EAAEs8K,GAAGC,GAAI9pK,GAAG,KAAW4/J,GAAIryK,EAAEzB,EAAE8S,EAAER,EAAE7Q,EAAEnB,EAAEgS,EAAG,CAAC,CAn5FtjCktP,CAAIltP,EAAElS,GAAGsjO,GAAItjO,EAAED,GAAGujO,GAAI3lD,GAAG4qB,IAAIvoM,GAAGq9J,MAAMgiG,MAAM,KAAK,CACnE,SAASC,GAAIt/P,EAAEkS,IAi5Ff,SAAalS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAM,GAAJxU,EAAE,EAAY,GAAP3B,EAAE4oB,EAAE96B,EAAM,IAAIgU,EAAE,IAAI2xJ,GAAI3lK,GAAGgU,EAAEhU,EAAEgU,EAAEub,EAAEA,EAAErxB,QAASgC,EAAEy9K,GAAGC,GAAI5pK,GAAG,IAAIH,EAAEo/H,EAAK3/H,KAAKugB,IAAIhgB,EAAE3T,EAAEN,EAAEI,EAAEE,EAAEA,EAAEF,EAAEE,EAAEH,EAAEwvB,QAAS1b,EAAE3B,EAAE4oB,EAAE96B,EAAEkS,EAAEqd,EAAEvvB,EAAW,IAAT6T,GAAG3B,EAAEqd,EAAEvvB,EAAMoD,EAAE,IAAIuiK,GAAI3lK,GAAGoD,EAAEpD,EAAEoD,EAAEmsB,EAAEA,EAAErxB,QAAQ,CAA8H,OAA7Gy1K,IAAhBzzK,EAAEy9K,GAAGC,GAAIx6K,GAAG,KAAUxD,EAAEiU,EAAE3T,EAAEA,EAAEF,GAAGqjO,GAAInjO,EAAE46B,GAAGykO,IAAIr/P,IAAKA,EAAE8T,EAAoB9T,EAAE8T,GAAnBizM,KAAMA,KAAMgjB,MAAU9iO,IAAIk2J,MAAMihG,OAAO3qF,GAAIgK,GAAG4qB,IAAIroM,EAAEo+P,KAAK,GAAGzqP,EAAE3T,EAAEA,EAAEF,GAAU29K,GAAG4qB,IAAIroM,EAAEq+P,KAAK,KAAK5rP,GAAG,KAAK,EAAEo1L,GAAI7nM,EAAEq+P,KAAKC,MAAMgB,MAAM,MAAM,KAAK,EAAEz3D,GAAI7nM,EAAEq+P,KAAKC,MAAMiB,MAAa,IAAN/sP,EAAExS,EAAEA,EAAMmoB,EAAE,IAAIs9I,GAAIzlK,EAAEkS,GAAGiW,EAAEroB,EAAEqoB,EAAEkH,EAAEA,EAAErxB,QAAQ,CAAiH,IAAhGy1K,IAAhB1/J,EAAE0pK,GAAGC,GAAIv1J,GAAG,KAAUzoB,EAAE8S,EAAE1S,EAAEiU,EAAE/T,EAAEF,GAAG2zK,GAAI1/J,EAAEjU,EAAEiU,EAAE/T,EAAEF,GAAG2+P,IAAI1qP,EAAEyrP,GAAIzrP,EAAE7B,KAAIO,EAAEgrK,GAAG4qB,IAAIt0L,EAAE4qP,KAAK,MAAS92D,GAAI9zL,EAAE4qP,IAAI7mD,IAAKrlM,EAAE3S,IAAQ86B,EAAE,IAAI6qI,GAAI1xJ,EAAEtB,GAAGmoB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAQ,CAAiB,IAAI6B,EAAE++P,KAAtBv5P,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAgB96B,EAAE,GAAGD,EAAEmS,GAAGnS,EAAEA,EAAEwvB,IAAIA,EAAEouJ,GAAGohF,GAAIh/P,GAAG,IAAKC,EAAE6T,EAAE0b,EAAEvvB,EAAsB,GAApBoS,EAAEurK,GAAG4qB,IAAIhjM,EAAEy5P,KAAK,IAAU,IAAIhhQ,EAAE8gQ,IAAI1sP,EAAE,GAAGpU,EAAEkU,GAAGlU,EAAE+B,EAAEwvB,IAAI9rB,EAAEk6K,GAAGohF,GAAI/gQ,GAAG,IAAKgC,EAAE6T,EAAEpQ,EAAEzD,EAAG,IAAIgT,EAAE,IAAI2yJ,GAAIpgK,EAAE2M,GAAGc,EAAEhT,EAAEgT,EAAEuc,EAAEA,EAAErxB,QAAyBy1K,IAAhBtyK,EAAEs8K,GAAGC,GAAI5qK,GAAG,KAAUpT,EAAEiU,EAAExS,EAAEnB,EAAEF,EAAG,CAAC,IAAIJ,EAAE,IAAI+lK,GAAI1xJ,EAAE6mB,GAAGl7B,EAAEI,EAAEJ,EAAE2vB,EAAEA,EAAErxB,QAAyBy1K,IAAhBtyK,EAAEs8K,GAAGC,GAAIh+K,GAAG,KAAUA,EAAEqU,EAAE/T,EAAEF,EAAEqB,EAAEnB,EAAEF,EAAG,CAAuE,IAAnEE,EAAEmB,IAAI49P,MAAMC,OAAMn3D,GAAI7nM,GAAG8nM,MAAMe,KAAK22D,GAAI/hF,GAAG4qB,IAAIroM,EAAE6oM,KAAK,MAAM42D,IAAIz/P,IAAO4T,EAAE,IAAI6xJ,GAAIzlK,EAAEgS,GAAG4B,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAAyBqhQ,IAAhBl+P,EAAEs8K,GAAGC,GAAI9pK,GAAG,KAAW6/J,GAAItyK,EAAEzB,EAAE8S,EAAE1S,EAAEqB,EAAEnB,EAAEF,EAAG,CAAC,CAj5FtjC4/P,CAAI1tP,EAAElS,GAAGqjO,GAAIrjO,EAAED,GAAGsjO,GAAI1lD,GAAG4qB,IAAIvoM,GAAGq9J,MAAMgiG,MAAM,KAAK,CACnE,SAASQ,GAAI7/P,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAmC,OAAvBA,EAAE,MAAZwvB,EAAEugO,GAAG9vP,EAAEkS,MAAgBnS,EAAEwvB,EAAE6/M,MAAarvO,CAAC,CACnE,SAAS+/P,GAAI9/P,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAmC,OAAvBA,EAAE,MAAZwvB,EAAEomN,GAAG31O,EAAEkS,MAAgBnS,EAAEwvB,EAAEwiD,MAAahyE,CAAC,CACnE,SAASggQ,GAAI//P,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAmC,OAAvBA,EAAE,MAAZwvB,EAAEugO,GAAG9vP,EAAEkS,MAAgBnS,EAAEwvB,EAAEwiD,MAAahyE,CAAC,CACnE,SAASigQ,GAAIhgQ,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAmC,OAAvBA,EAAE,MAAZwvB,EAAEugO,GAAG9vP,EAAEkS,MAAgBnS,EAAEkgQ,IAAI1wO,IAAWxvB,CAAC,CAEnE,SAASmgQ,GAAGlgQ,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEA,EAqtCzB,WAAc,IAAIC,EAAS,GAAJ09L,MAAO19L,EA9kC9B,WAAc,GAAG+d,KAAKD,IAAK,OAAOC,KAAKD,MAAM,OAAQ,IAAIC,MAAMu9F,SAAS,CA8kCxC6kJ,IAAUC,IAAG,MAAMA,IAAGpgQ,EAAE29L,IAAG1qD,EAAK3mI,WAAWmxL,GAAG,KAAK,GAAS,GAANC,MAAuB,OA9yB7G,SAAY19L,GAAG,IAAIkS,EAAEqd,EAAE,GAAGvvB,EAAEA,EAAE,CAACuvB,EAAE,KAAK,GAAGrd,EAAElS,EAAEA,EAAEA,EAAEA,EAAE,KAAKuvB,EAAE8wO,IAAGnuP,EAAEqd,SAASvvB,EAAEA,GAAGA,EAAEA,EAAEuvB,CAAC,CAAC,CA8yBY+wO,EAAIp9E,KAAKC,OAAY,EAAK,OAAO,CAAK,CArtC1Go9E,GAAK,IAAI,OA3hCpC,SAAYvgQ,EAAEkS,EAAEqd,GAAG,OAAOvvB,EAAEvB,MAAMyT,EAAEqd,EAAQ,CA2hCDixO,CAAGxgQ,EAAEkS,EAAEqd,EAAE,CAAC,SAmCrD,SAAYvvB,GAAGA,GAmYf,SAAYA,GAAG,IAAIkS,EAAEqd,EAAE,GAAGvvB,EAAEkS,EAAE,CAACqd,EAAE,KAAK,GAAGrd,EAAElS,EAAEkS,EAAElS,EAAEkS,EAAE,KAAKqd,EAAE8wO,IAAGnuP,EAAEqd,SAASvvB,EAAEkS,GAAGlS,EAAEkS,EAAEqd,CAAC,CAAC,CAnYjEkxO,EAAIv9E,KAAKC,QAAOua,IAAM19L,IAAW,GAAL29L,OA5pD9C,SAAY39L,GAAGizI,EAAKn3B,aAAa97G,EAAE,CA4pDmB0gQ,CAAG/iE,KAAIA,KAAI,EAAG,CAnCPgjE,CAAG5gQ,EAAE,CAAC,CACnE,SAAS6gQ,GAAI5gQ,GAAG,IAAIkS,EAAEA,EAAElS,EAAE6gQ,KAAKv8P,KAAKtE,EAAE6pL,GAAG33K,EAAE,IAAIyrK,GAAGzrK,EAAE,IAAI4uP,KAAK5uP,EAAEypM,IAAI,CACnE,SAASjX,KAAMhpB,GAAI38K,KAAKuF,MAAMA,KAAK8N,EAAEmd,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAG75K,KAAKtE,GAAG,CAAC,CACnE,SAASi/O,GAAIj/O,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKvE,EAAEC,EAAEsE,KAAK1E,EAAEsS,EAAE5N,KAAKqO,EAAE4c,EAAEjrB,KAAKpE,EAAEH,EAAEuE,KAAKlB,GAAG,CAAC,CACnE,SAAS29P,GAAG/gQ,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKiB,EAAExF,EAAEuE,KAAKvE,EAAE,KAAKuE,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAEkS,EAAE5N,KAAK4N,EAAEqd,CAAC,CACpE,SAASyxO,GAAIhhQ,EAAEkS,EAAEqd,GAAGjrB,KAAKvE,EAAE,IAAIgsK,GAAIznK,MAAMA,KAAKiB,EAAEvF,EAAEsE,KAAKtG,EAAEkU,EAAE5N,KAAKw2B,EAAEvL,CAAC,CACnE,SAAS0xO,KAAMA,GAAIvsH,EAAIwsH,IAAI,IAAInvD,GAAIovD,IAAI,GAAGC,IAAI,IAAIrvD,GAAI,WAAW,EAAE,CACnE,SAASl1C,KAAMA,GAAInoB,EAAI2sH,IAAIhkI,GAAG26E,GAAI,GAAGA,GAAI,IAAIspD,IAAIjkI,GAAG26E,GAAI,GAAGA,GAAI,GAAG,CAClE,SAASupD,KAAMA,GAAI7sH,EAAI8sH,IAAIpjD,IAAItZ,KAAMvmB,GAAGC,GAAGijF,IAAG,GAAGx1B,IAAI,IAAI,EAAE,CAAClnC,OAAO,CACnE,SAAS28D,KAAMA,GAAIhtH,EAAIitH,IAAIvjD,IAAIzZ,KAAMpmB,GAAGC,GAAGojF,IAAG,GAAG31B,IAAI,IAAI,EAAE,CAACrnC,OAAO,CACnE,SAASi9D,KAAMA,GAAIntH,EAAIotH,IAAI1jD,IAAInZ,KAAM1mB,GAAGC,GAAGujF,IAAG,GAAG91B,IAAI,IAAI,EAAE,CAAC/mC,OAAO,CACnE,SAAS88D,KAAMA,GAAIttH,EAAIutH,IAAI7jD,IAAInb,KAAM1kB,GAAGC,GAAG0jF,IAAG,GAAGj2B,IAAI,IAAI,EAAE,CAAC/oC,OAAO,CAOnE,SAASy2B,GAAG35N,EAAEkS,EAAEqd,EAAExvB,GAAG,OAAO8pL,GAAGt6J,EAAE,IAAI,IAAI+iM,GAAGtyN,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwyN,GAAGvyN,EAAEkS,EAAEqd,EAAExvB,EAAE,CAIpE,SAASoiQ,GAAIniQ,EAAEkS,GAAG,OAAOyrK,GAAGwxC,GAAImhB,GAAI3yD,GAAG0iB,GAAGrgM,EAAEqB,EAAE6Q,GAAG,IAAI82K,KAAKwb,MAAM,IAAI,CACpE,SAAS49D,GAAIpiQ,EAAEkS,GAAG,OAAOyrK,GAAGwxC,GAAIqhB,GAAI7yD,GAAG0iB,GAAGrgM,EAAEqB,EAAE6Q,GAAG,IAAI82K,KAAKwb,MAAM,IAAI,CACpE,SAASjhK,GAAGvjC,GAAG,OAAO,IAAIutM,GAgoB1B,SAAavtM,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAY,IAAxBknN,KAAclnN,EAAE,IAAIuyK,GAAQ/iJ,EAAE,EAAEA,EAAEvvB,IAAIuvB,EAAGxvB,EAAEwvB,EAAExvB,EAAEwvB,EAAErxB,QAAQgU,EAAE,OAAO,IAAI0yK,GAAI7kL,EAAE,CAhoBhEsiQ,CAAI1kF,GAAG39K,EAAEA,EAAE86M,KAAK,IAAI77B,KAAKj/K,EAAEA,EAAE6sM,MAAM,GAAG,CACpE,SAASy1D,GAAGtiQ,GAAG,OAAG6pL,GAAG7pL,EAAE,IAAY29K,GAAG39K,EAAE,IAAIqhC,MAAarhC,EAAE27M,KAAKJ,IAAI,CACpE,SAASgnD,GAAIviQ,GAAS,OAANskM,KAASza,GAAG7pL,EAAE2S,EAAE,KAAagrK,GAAG39K,EAAE2S,EAAE,KAAY,IAAI,CACpE,SAAS6vP,GAAGxiQ,GAAG,GAAGA,EAAEuF,EAAEoN,GAAG3S,EAAEkS,EAAG,MAAMghK,GAAI,IAAIiC,IAAK,QAASn1K,EAAEuvB,GAAGvvB,EAAED,EAAE,CAAC,CACpE,SAASg/P,GAAI/+P,GAA2C,OAAxCspN,GAAItpN,EAAEkS,GAAGlS,EAAED,EAAEwvB,GAAGvvB,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,EAAEkS,EAAElS,EAAEkS,EAAElS,IAAIA,EAAEA,EAASA,EAAEuvB,EAAEA,CAAC,CACpE,SAASkzO,GAAIziQ,EAAEkS,GAAG2uJ,GAAI3uJ,GAAGy0L,GAAG3mM,EAAEA,EAAEA,EAAEuvB,EAAErd,GAAGlS,EAAEuvB,EAAEvvB,EAAEuvB,EAAE,EAAEvvB,EAAEA,EAAE9B,OAAO,EAAEwkQ,IAAI1iQ,EAAE,CACpE,SAAS2iQ,GAAI3iQ,EAAEkS,GAAG2uJ,GAAI3uJ,GAAGlS,EAAEkS,EAAElS,EAAEkS,EAAE,EAAElS,EAAEA,EAAE9B,OAAO,EAAEyoM,GAAG3mM,EAAEA,EAAEA,EAAEkS,EAAEA,GAAGwwP,IAAI1iQ,EAAE,CACpE,SAASq0O,GAAIr0O,EAAEkS,GAAG,IAAIqd,EAAE,IAAIA,EAAEvvB,EAAEoS,EAAEmd,EAAErxB,OAAOqxB,EAAErd,EAAEqd,IAAKwmJ,GAAI/1K,EAAEoS,EAAEpS,EAAE4iQ,KAAM,CACpE,SAAS1yC,GAAIlwN,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAgB,OAAdA,EAAExF,EAAEmS,EAAES,GAAG4c,EAAE5c,GAAU2tK,GAAIC,GAAGgoB,IAAIvoM,EAAEA,EAAEuF,IAAI,CACpE,SAASs9P,GAAI7iQ,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGjB,KAAKtG,EAAEgC,EAAEsE,KAAKtE,EAAEkS,EAAE5N,KAAKiB,EAAEgqB,EAAEjrB,KAAK8N,EAAErS,EAAEuE,KAAKw2B,EAAEv1B,CAAC,CACpE,SAASu9P,GAAI9iQ,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGjB,KAAKtE,EAAEA,EAAEsE,KAAKiB,EAAE2M,EAAE5N,KAAKw2B,EAAEvL,EAAEjrB,KAAK4N,EAAEnS,EAAEuE,KAAKqO,EAAEpN,CAAC,CAWpE,SAASqxF,GAAI52F,EAAEkS,EAAEqd,GAAG,OAAOrd,EAAE,EAAE2Y,IAAI7qB,EAAEuvB,GAAGouJ,GAAGpuJ,EAAE,IAAIwzO,KAAKC,GAAGhjQ,EAAEA,EAAEijQ,KAAK/wP,EAAE,CAEpE,SAASgxP,GAAIljQ,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAoC,OAAlCA,EAAE83M,IAAItoL,GAAG4zO,IAAGnjQ,EAAEoS,EAAErS,EAAEmS,GAAGykL,GAAI32L,EAAEqB,EAAE6Q,EAAEqd,GAAUrd,CAAC,CACpE,SAASkxP,GAAIpjQ,GAAG,IAAIkS,EAAwC,OAAjCq3K,KAAHr3K,EAAW,IAAIk/I,GAASpxJ,GAAG8qN,IAAI54M,EAAElS,GAAUkS,CAAC,CACpE,SAAS2jP,GAAI71P,GAAG,IAAIkS,EAAwC,OAAtCA,EAAElS,EAAEqjQ,GAAGrjQ,EAAEhC,GAAGgC,EAAEhC,EAAE,GAAGslQ,IAAItjQ,EAAE2S,EAAE,EAAET,EAAE,EAAElS,EAAEhC,GAAUkU,CAAC,CACpE,SAASqxP,GAAIvjQ,EAAEkS,GAAS,IAAIqd,EAAsB,OAAhC88K,OAAY98K,EAAEouJ,GAAG+5B,GAAIpL,IAAItsM,GAAG,MAAeuvB,EAAEi0O,GAAGtxP,EAAE,CAKpE,SAASuxP,GAAGzjQ,GAAG,IAAIkS,EAAM,IAAJA,EAAE,EAAQlS,EAAEu7M,MAAMv7M,EAAEy7M,KAAKvpM,EAAEw4L,GAAIx4L,EAAE,GAAG,OAAO6rP,GAAG7rP,EAAE,CACrE,SAASwxP,GAAG1jQ,EAAEkS,GAAG,IAAIqd,EAAsC,OAApCA,EAAE,IAAIk1J,GAAIzkL,EAAE2jQ,GAAGp0O,GAAGA,EAAEvvB,GAAG,KAAKkS,EAAE+oK,GAAG1rJ,GAAUA,EAAEvvB,CAAC,CAGrE,SAAS4jQ,GAAI5jQ,EAAEkS,EAAEqd,GAAG,OAAOm4L,IAAI1nN,EAAEkS,EAAEqd,EAAEs6J,GAAG33K,EAAE,KAAwB,IAAlByrK,GAAGzrK,EAAE,IAAIsjK,GAAGmyC,KAAQ,CAEpE,SAASk8C,GAAI7jQ,EAAEkS,EAAEqd,GAAG,OAmjEpB,SAAavvB,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAkD,GAAhD3O,EAAE,IAAIuuJ,GAAIh0J,EAAE+pN,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAG3M,EAAEo4K,GAAG39K,EAAE2S,EAAE,KAAKw5L,KAASxuB,GAAGzrK,EAAE,IAAIq1M,KAAM,IAAI50M,EAAE,EAAEA,EAAE3S,EAAEhC,IAAI2U,EAAGmoB,EAAEv1B,EAAEoN,GAAG3U,EAAEiqN,GAAGntL,EAAEotL,OAAOj9B,GAAIxnL,EAAEq3B,QAAS,IAAInoB,EAAE,EAAEA,EAAE3S,EAAEhC,IAAI2U,EAAGmoB,EAAEv1B,EAAEoN,GAAM3U,EAAEiqN,GAAGntL,EAAEotL,QAAO91M,EAAE0oB,EAAEggL,KAAK7vB,GAAIxnL,EAAE1D,EAAE61P,IAAI51P,EAAEkS,EAAES,EAAElP,EAAEzF,EAAEoU,GAAGA,IAAK,OAAO0xP,IAAIrgQ,EAAE8rB,EAAE,CAnjErOw0O,CAAI/jQ,EAAEkS,EAAEqd,EAAEs6J,GAAG33K,EAAE,KAAwB,IAAlByrK,GAAGzrK,EAAE,IAAIsjK,GAAGmyC,KAAQ,CACpE,SAASq8C,GAAIhkQ,EAAEkS,GAAG,OAAOlS,IAAIi/P,MAAMgF,MAAM/xP,GAAG+xP,IAAI,EAAEjkQ,GAAGikQ,KAAK/xP,GAAG+xP,IAAI,EAAE,EAAE,CACrE,SAASC,GAAGlkQ,EAAEkS,GAAG,OAAO6oM,GAAG7oM,KAAK6oM,GAAG/6M,GAAG,aAAgB,MAAHkS,EAAQ6lL,IAAI02B,GAAIv8M,EAAE,CAErE,SAASiyP,GAAInkQ,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAqC,OAAnCA,EAAE83M,IAAItoL,GAAGonK,GAAI32L,EAAEkS,EAAEnS,EAAEmS,GAAGykL,GAAI32L,EAAEuvB,EAAErd,EAAEqd,GAAUrd,CAAC,CACrE,SAASkyP,GAAIpkQ,EAAEkS,GAAG,IAAIqd,EAAM,IAAJA,EAAErd,EAAQqd,GAAGojM,GAAI3yN,EAAEuvB,EAAEvxB,EAAEuxB,EAAEnd,GAAGmd,EAAEuuL,GAAIvuL,GAAG,OAAOvvB,CAAC,CACrE,SAASqkQ,GAAGrkQ,EAAEkS,GAAG,IAAIqd,EAAyC,OAAvCA,EAAE86N,GAAI/nB,GAAG,IAAIgiC,GAAGtkQ,EAAEkS,KAAKm3N,GAAG,IAAIi7B,GAAGtkQ,EAAEkS,IAAWqd,CAAC,CACtE,SAASq4L,GAAI5nN,EAAEkS,GAAS,IAAIqd,EAA2B,OAArC48K,KA6tDlB,SAAansM,EAAEkS,GAAG,IAAIqd,EAAE,GAAM,MAAHrd,IAAUlS,EAAEuvB,EAAEg1O,KAAKf,GAAGtxP,GAA2C,MAAvCqd,EAAEs6J,GAAG33K,EAAE,IAAIyrK,GAAGzrK,EAAE,IAAI81M,KAAKw8C,GAAGn7E,GAAIrgG,GAAG92E,IAAUghK,GAAI,IAAI0O,GAAI6iF,IAAIzkQ,EAAEuvB,EAAEwvK,KAAK,YAAY/+L,EAAEuvB,EAAEg1O,KAAKxlE,KAAK,sCAAsCxvK,EAAE,KAAM,CA7tDrJm1O,CAAhBn1O,EAAEouJ,GAAG39K,EAAE,IAAI2kQ,KAAWzyP,GAAUqd,EAAEq1O,GAAG1yP,EAAE,CACrE,SAAS2yP,GAAI7kQ,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEA,EAujE9B,SAAa96B,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAY,IAAV88B,GAAG,EAAEr3B,GAAG,EAAMkP,EAAE,EAAEA,EAAET,EAAEqd,EAAErxB,SAAeu/M,GAAI9qM,EAAET,EAAEqd,EAAErxB,WAAbqH,EAAqBo4K,GAAGzrK,EAAEqd,EAAE5c,GAAG,MAAW4c,EAAEvvB,EAAEuvB,IAAnD5c,IAAoEpN,EAAEvF,GAAGA,EAAE6T,IAAGinB,EAAE,IAAIA,EAAEnoB,GAAGlP,EAAEkP,GAAG3U,GAAGgC,EAAE6T,EAAE7T,EAAEuvB,GAAG,EAAKuL,GAAG,IAAG/6B,EAkRxL,SAAaC,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAM,GAAJ46B,EAAEvL,EAAKA,EAAExvB,EAA4L,IAAtLH,EAAE,IAAI6lP,GAAIzlP,EAAEoD,GAAGlD,EAAE,IAAIulP,GAAIzlP,EAAEoD,GAAGm2L,GAAG35L,EAAE2F,EAAEvF,EAAEuF,GAAG3F,EAAEoU,EAAEhU,EAAEgU,EAAEpU,EAAE8S,EAAExS,EAAEo2O,GAAI12O,GAAG25L,GAAGr5L,EAAEkS,EAAEpS,EAAEoS,GAAGlS,EAAEwS,EAAE9S,EAAE02O,GAAIp2O,GAAiB4T,EAAE6pK,IAA3G3qK,EAA2F,IAAIwjM,GAAI52M,EAAEM,IAAWF,EAAE,KAAKqB,EAAEs8K,GAAG3qK,EAAEd,EAAE,KAAQurM,GAAI3iL,EAAE5oB,EAAEqd,EAAErxB,QAAwByU,EAAEmyP,IAAI9kQ,EAAE8T,EAAEzS,EAA/CkE,EAAqBo4K,GAAGzrK,EAAEqd,EAAEuL,GAAG,MAAyB1oB,EAAEmd,EAAE,EAAEnd,GAAGrS,EAAEqS,IAAQqrM,GAAIrrM,EAAEF,EAAEqd,EAAErxB,QAA0C6mQ,IAAvDthQ,EAAqBk6K,GAAGzrK,EAAEqd,EAAEnd,GAAG,KAAMpU,EAAE8mQ,IAAI9kQ,EAAE8T,EAAEzS,EAAEoC,GAAc8B,EAAEoN,KAAIpN,EAAE9B,EAAEkP,EAAE3U,GAAI,OAAO88B,CAAC,CAlRtKkqO,CAAIhlQ,EAAEkS,EAAE4oB,EAAEr3B,GAAGzF,EAnwHvM,SAAagC,GAAG,OAAQA,EAAEuvB,EAAEvvB,EAAEA,GAAG,CAAC,CAmwHuKilQ,EAAKxnD,GAAI19M,EAAEmS,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAExvB,GAAG,OA/I1O,SAAaC,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAI+6B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAKqrM,GAAIvrM,EAAElS,EAAEuvB,EAAErxB,QAAbF,EAAqB2/K,GAAG39K,EAAEuvB,EAAErd,GAAG,KAAM2iO,GAAI70O,EAAEkS,GAAMlU,EAAEkU,EAAE,GAAGqd,IAAGxvB,EAAEmS,EAAgBS,GAAdP,GAAGpU,EAAEuxB,EAAEvxB,EAAEgC,GAAG,GAAMuvB,EAAKvxB,EAAEuxB,GAAGnd,EAAEmd,GAAoBk8M,GAAIzrO,EAAED,IAArB,IAAIohO,GAAInjO,EAAEuxB,EAAE5c,KAAgBlP,EAAE2O,EAAEmd,IAAQvxB,EAAEgC,IAAG86B,EAAE,IAAIqmM,GAAI19N,EAAEzF,EAAEgC,GAAG0rO,GAAI3rO,EAAEC,EAAEuvB,EAAErxB,QAAQgwM,GAAIluM,EAAEuvB,EAAExvB,EAAE+6B,IAAI,CA+IWoqO,CAAIhzP,EAAEnS,EAAEwvB,IAAG,OAAOvxB,CAAC,CAvjEpOmnQ,CAAI5/P,EAAEgqB,EAAExvB,GAAGg2K,GAAI7jK,EAm0D/C,SAAalS,EAAEkS,GAAGlS,EAAE0S,EAAE,IAAI+yO,GAAIzlP,EAAEoD,GApsIhC,SAAapD,EAAEkS,GAAGlS,EAAE0S,EAAER,CAAC,CAosIYkzP,CAAIplQ,EAAE0S,EAAE1S,GAAGu5L,GAAGv5L,EAAE0S,EAAEN,EAAEpS,EAAEoS,GAAGqvL,GAAIzhM,EAAEoS,GAAGwzN,GAAI5lO,EAAEoS,EAAEF,GAAG0zN,GAAI5lO,EAAE0S,EAAEnN,EAAE2M,GAAGokO,GAAIt2O,GAAGs2O,GAAIt2O,EAAE0S,GAAG,KAAoB,GAAd1S,EAAE86B,EAAEvL,EAAErxB,QAAWyoN,GAAIhpC,GAAG0pB,GAAIrnM,EAAE86B,EAAE,GAAG,MAAM,KAAoB,GAAd96B,EAAEqB,EAAEkuB,EAAErxB,QAAWyoN,GAAIhpC,GAAG0pB,GAAIrnM,EAAEqB,EAAE,GAAG,MAAM,OAAOrB,EAAE0S,CAAC,CAn0DpK2yP,CAAI9/P,EAAEu1B,IA2rDvD,SAAa96B,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAA4D,IAA1DmoB,EAAE5oB,EAAE8B,EAAErB,EAAET,EAAEQ,EAAE,IAAIuhP,IAAKqR,KAAMC,KAAKrzP,EAAE4oB,EAAE,GAAG,IAAIm5N,GAAIsR,IAAIzqO,EAAEnoB,EAAE,GAAOpN,EAAE,IAAIogK,GAAIp2I,GAAGhqB,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,SAAS6B,EAAE49K,GAAGC,GAAIr4K,GAAG,OAAWu1B,GAAG/6B,GAAGmS,GAAGnS,GAAG4S,IAAG6yP,IAAIxlQ,EAAEA,EAAED,EAAEmS,GAAGszP,IAAIxlQ,EAAEA,EAAED,EAAE4S,GAAI,CA3rDpI8yP,CAAIzlQ,EAAEuF,EAAE2M,EAAE,CACrE,SAASwzP,GAAI1lQ,EAAEkS,EAAEqd,GAAGvvB,EAAEhC,EAAE,EAAEgC,EAAEuF,EAAE,EAAK2M,GAAGqd,IAAUo2O,GAAI3lQ,EAAEkS,EAAEqd,GAAGq2O,GAAI5lQ,EAAEkS,EAAEqd,GAAE,CACrE,SAASu6K,GAAG9pM,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEgU,EAAEg2L,WAAWhqM,EAAEgU,EAAE6xP,YAAY3zP,EAAEo3L,KAAKY,IAAGlqM,EAAEuvB,EAAE,CAEtE,SAASqmN,GAAG71O,EAAEC,EAAEkS,GAAG,GAAGA,EAAE,CAAC,IAAIqd,EAAErd,EAAE4zP,KAAK5zP,EAAEqd,EAAErd,EAAE,MAAMA,OAAEvS,EAAUI,EAAEC,EAAEA,GAAGkS,CAAC,CACtE,SAASu8O,GAAIzuP,GAAG,GAAGA,EAAE,EAAG,MAAMkzK,GAAI,IAAI6O,GAAI,wBAAwB/hL,GAAI,CACtE,SAAS+lQ,GAAI/lQ,GAA8C,OAAvCA,EAAEJ,IAAGurP,GAAInrP,GAAGA,EAAEJ,EAAE,IAAI8tO,GAAI1tO,EAAEyrL,IAAGzrL,GAAGkrL,GAAIlrL,IAAUA,EAAEJ,CAAC,CACrE,SAASolP,GAAIhlP,GAAwC,OAArCspN,GAAItpN,EAAEA,EAAEA,EAAEuvB,EAAEvvB,EAAE9B,QAAQ8B,EAAEkS,EAAElS,EAAEA,EAAEuhM,GAAIvhM,GAAUA,EAAEuvB,EAAErd,EAAElS,EAAEkS,EAAE,CACtE,SAAS8zP,GAAIhmQ,GAAMA,EAAEkS,GAAGlS,EAAEuvB,IAAUvvB,EAAEA,EAAEi+K,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGn+K,EAAEkS,EAAE,EAAElS,EAAEuvB,EAAE,EAAC,CACtE,SAAS02O,GAAIjmQ,GAAGsE,KAAK4N,EAAE,IAAIsgK,GAAIluK,KAAKirB,EAAE,IAAIijJ,GAAIluK,KAAKvE,EAAE,IAAIyyK,GAAIluK,KAAKtE,EAAEA,CAAC,CACrE,SAASkmQ,GAAIlmQ,EAAEkS,GAAGgyM,MAAMhyC,GAAInzK,KAAKuF,KAAKtE,GAAGsE,KAAKtE,EAAEkS,EAAE5N,KAAKirB,GAAG,EAAEjrB,KAAK4N,GAAG,CAAC,CACrE,SAASi0P,GAAInmQ,EAAEkS,EAAEqd,EAAExvB,GAAGg4P,GAAIh5P,KAAKuF,KAAK,EAAEirB,EAAExvB,GAAauE,KAAKirB,EAAEvvB,EAAEsE,KAAK4N,EAAEA,CAAC,CACtE,SAASk0P,GAAIpmQ,EAAEkS,EAAEqd,EAAExvB,GAAGi4P,GAAIj5P,KAAKuF,KAAK,EAAEirB,EAAExvB,GAAauE,KAAKirB,EAAEvvB,EAAEsE,KAAK4N,EAAEA,CAAC,CACtE,SAAS45O,GAAI9rP,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,GAAGq5O,GAAIjtP,KAAKuF,KAAK4N,EAAEnS,EAAEwF,EAAEu1B,EAAEnoB,GAAGrO,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAEuvB,CAAC,CACtE,SAAS82O,GAAIrmQ,EAAEkS,EAAEqd,GAAGjrB,KAAKiB,EAAEvF,EAAEsE,KAAKtE,EAAE8uL,IAAGxqL,KAAK4N,EAAEo6O,IAAIp6O,GAAG5N,KAAKirB,EAAErd,EAAE5N,KAAKvE,EAAEwvB,CAAC,CACtE,SAASitJ,GAAGx8K,GAAGsE,KAAKiB,EAAEvF,EAAEsE,KAAKirB,EAAEjrB,KAAKiB,EAAEvF,EAAEsE,KAAK4N,EAAE5N,KAAKiB,EAAEoN,EAAErO,KAAKvE,EAAEuE,KAAKiB,EAAEvH,CAAC,CACvE,SAASsoQ,GAAItmQ,GAAGsE,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAE29K,GAAG52J,IAAI/mB,GAAG,KAAKsE,KAAK4N,EAAE5N,KAAKtE,EAAE+7N,KAAKC,IAAI,CACtE,SAASuqC,GAAIvmQ,GAAGsE,KAAKvE,EAAEC,EAAEsE,KAAK4N,EAAE5N,KAAKvE,EAAEC,EAAEklL,UAAU5gL,KAAKtE,EAAEsE,KAAK4N,EAAEpE,MAAM,CACvE,SAAS0yM,KAAMhuC,GAAIzzK,KAAKuF,MAAM0tN,GAAI1tN,MAAMA,KAAKvE,EAAEmS,EAAE5N,KAAKvE,EAAEuE,KAAKvE,EAAEC,EAAEsE,KAAKvE,CAAC,CACvE,SAASymQ,GAAIxmQ,EAAEkS,GAAG+nN,GAAIl7N,KAAKuF,MAAMA,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAE6jK,GAAIzxK,KAAKtE,EAAEkS,EAAE5N,KAAK,CACrE,SAASmiQ,GAAIzmQ,EAAEkS,GAAS,OAAyCoqM,GAA7B,MAAHpqM,EAAQo4K,GAAItqL,EAAEkS,GAAG2oM,GAAGq4B,GAAIlzO,EAAE86B,EAAE5oB,IAAS,CACtE,SAASw0P,GAAI1mQ,EAAEkS,GAAS,OAAyCoqM,GAA7B,MAAHpqM,EAAQo4K,GAAItqL,EAAEkS,GAAG2oM,GAAGq4B,GAAIlzO,EAAE86B,EAAE5oB,IAAS,CACtE,SAASy5O,GAAI3rP,EAAEkS,GAAG,IAAIqd,EAAE,IAAIA,EAAE,EAAEA,EAAErd,IAAIqd,EAAGo3K,GAAG3mM,EAAEuvB,EAAE,IAAIk2I,GAAIkY,GAAG39K,EAAEuvB,GAAG,KAAM,CAEtE,SAASo3O,GAAI3mQ,EAAEkS,GAAS,IAAIqd,EAAgB,OAA1BgtI,KAAgC,IAApBhtI,EAAEvvB,EAAEoS,EAAEO,EAAET,EAAEE,EAAEO,GAAkB4c,EAAS,CAAC,CACtE,SAASq3O,GAAI5mQ,EAAEkS,GAAU,OAAP2uJ,GAAI3uJ,GAAW,MAALlS,EAAEA,EAnvB9B,SAAaA,GAAG,OAAU,MAAHA,EAAQwrN,IAAI,IAAIjuC,GAAI1c,GAAI7gK,GAAG,CAmvBJ6mQ,CAAI30P,EAAEkqM,GAAGp8M,EAAEA,IAAWwrN,GAAG,CACvE,SAASs7C,GAAG9mQ,GAAG,IAAIkS,EAAE,OAAGlS,EAAU,IAAIypO,GAAIzpO,IAAayiO,GAAVvwN,EAAE,IAAIquM,GAASvgN,GAAUkS,EAAC,CACvE,SAAS60P,GAAI/mQ,EAAEkS,GAAS,OAAOA,EAAEA,EAAEkqM,GAAG4qD,GAAIhnQ,EAAEkS,EAAEqd,EAAE03O,KAAQ,IAAI5/F,GAAIn1J,IAAO,CACvE,SAASg1P,GAAIlnQ,GAAGmnQ,MAAMz9C,GAAIplN,KAAK2lN,GAAIrxB,GAAIi3C,GAAI7vO,EAAE,IAAIonQ,MAAMn9C,GAAIrxB,GAAI54L,EAAEonQ,MAAM,CACvE,SAASC,KAAMA,GAAI3yH,EAAI4yH,IAAIlpD,IAAImpD,MAAMhpF,GAAGC,GAAGgpF,IAAG,GAAGv7B,IAAI,IAAI,EAAE,CAACw7B,IAAIC,OAAO,CACvE,SAASC,KAAMA,GAAIjzH,EAAIkzH,IAAIxpD,IAAIypD,KAAMtpF,GAAGC,GAAGspF,IAAG,GAAG77B,IAAI,IAAI,EAAE,CAAC87B,IAAIC,OAAO,CACvE,SAASC,KAAMA,GAAIvzH,EAAIwzH,IAAI9pD,IAAI+pD,KAAM5pF,GAAGC,GAAG4pF,IAAG,GAAGn8B,IAAI,IAAI,EAAE,CAACo8B,IAAIC,OAAO,CACvE,SAASC,KAAMA,GAAI7zH,EAAI8zH,IAAIpqD,IAAIqqD,KAAMlqF,GAAGC,GAAGkqF,IAAG,GAAGz8B,IAAI,IAAI,EAAE,CAAC08B,IAAIC,OAAO,CACvE,SAASC,KAAMA,GAAIn0H,EAAIo0H,IAAI1qD,IAAI2qD,KAAMxqF,GAAGC,GAAGwqF,IAAG,GAAG/8B,IAAI,IAAI,EAAE,CAACg9B,IAAIC,OAAO,CACvE,SAASC,KAAMA,GAAIz0H,EAAI00H,IAAIhrD,IAAIirD,KAAM9qF,GAAGC,GAAG8qF,IAAG,GAAGr9B,IAAI,IAAI,EAAE,CAACs9B,IAAIC,OAAO,CACvE,SAASC,KAAMA,GAAI/0H,EAAIg1H,IAAItrD,IAAI0mC,KAAMvmE,GAAGC,GAAGmrF,IAAG,GAAG19B,IAAI,IAAI,EAAE,CAAC29B,IAAI7kB,OAAO,CACvE,SAAS8kB,KAAMA,GAAIn1H,EAAIo1H,IAAI1rD,IAAI2rD,KAAMxrF,GAAGC,GAAGwrF,IAAG,GAAG/9B,IAAI,IAAI,EAAE,CAACg+B,IAAIC,OAAO,CACvE,SAASC,KAAMA,GAAIz1H,EAAI01H,IAAIhsD,IAAIisD,KAAM9rF,GAAGC,GAAG8rF,IAAG,GAAGr+B,IAAI,IAAI,EAAE,CAACs+B,IAAIC,OAAO,CACvE,SAASC,KAAMA,GAAI/1H,EAAIg2H,IAAItsD,IAAI6iD,KAAM1iF,GAAGC,GAAGmsF,IAAG,GAAG1+B,IAAI,IAAI,EAAE,CAACi1B,IAAIE,OAAO,CACvE,SAASwJ,KAAMA,GAAIl2H,EAAIm2H,IAAIzsD,IAAIknD,KAAM/mF,GAAGC,GAAGssF,IAAG,GAAG7+B,IAAI,IAAI,EAAE,CAAC8+B,IAAIxF,OAAO,CACvE,SAASyF,KAAMA,GAAIt2H,EAAIu2H,IAAI7sD,IAAI8sD,KAAM3sF,GAAGC,GAAG2sF,IAAG,GAAGl/B,IAAI,IAAI,EAAE,CAACm/B,IAAIC,OAAO,CACvE,SAASC,KAAMA,GAAI52H,EAAI62H,IAAIntD,IAAI2vC,KAAMxvE,GAAGC,GAAGgtF,IAAG,GAAGv/B,IAAI,IAAI,EAAE,CAAC+hB,IAAIC,OAAO,CACvE,SAASwd,KAAMA,GAAI/2H,EAAIg3H,IAAIttD,IAAI4yC,KAAMzyE,GAAGC,GAAGmtF,IAAG,GAAG1/B,IAAI,IAAI,EAAE,CAACglB,IAAIE,OAAO,CACvE,SAASya,KAAMA,GAAIl3H,EAAIm3H,IAAIztD,IAAIsvC,KAAMnvE,GAAGC,GAAGstF,IAAG,GAAG7/B,IAAI,IAAI,EAAE,CAAC0hB,IAAIE,OAAO,CACvE,SAASke,KAAMA,GAAIr3H,EAAIs3H,IAAI5tD,IAAIw7C,KAAMr7E,GAAGC,GAAGytF,IAAG,GAAGhgC,IAAI,IAAI,EAAE,CAAC4tB,IAAIC,OAAO,CACvE,SAASoS,KAAMA,GAAIx3H,EAAIy3H,IAAI/tD,IAAIguD,KAAM7tF,GAAGC,GAAG+c,IAAG,GAAG0wC,IAAI,IAAI,EAAE,CAACogC,IAAIC,OAAO,CACvE,SAASC,KAAMA,GAAI73H,EAAI83H,IAAIpuD,IAAIgzC,KAAM7yE,GAAGC,GAAGiuF,IAAG,GAAGxgC,IAAI,IAAI,EAAE,CAAColB,IAAIE,OAAO,CACvE,SAASmb,KAAMA,GAAIh4H,EAAIi4H,IAAIvuD,IAAIwuD,KAAMruF,GAAGC,GAAGquF,IAAG,GAAG5gC,IAAI,IAAI,EAAE,CAAC6gC,IAAIC,OAAO,CACvE,SAASC,KAAMA,GAAIt4H,EAAIu4H,IAAI7uD,IAAI8uD,KAAM3uF,GAAGC,GAAG2uF,IAAG,GAAGlhC,IAAI,IAAI,EAAE,CAACmhC,IAAIC,OAAO,CACvE,SAASC,KAAMA,GAAI54H,EAAI64H,IAAInvD,IAAIovD,KAAMjvF,GAAGC,GAAGivF,IAAG,GAAGxhC,IAAI,IAAI,EAAE,CAACyhC,IAAIC,OAAO,CACvE,SAASzC,KAAMA,GAAIx2H,EAAI02H,IAAI,IAAIr4D,GAAI,QAAQ,GAAGs4D,IAAI,IAAIt4D,GAAI,QAAQ,EAAE,CAIpE,SAAS66D,GAAI5tQ,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAU,IAARwvB,EAAErd,EAAEnS,EAAE,EAAQwvB,EAAE,GAAGxvB,GAAGC,EAAEA,EAAEuvB,GAAGA,GAAGA,GAAGA,EAAE,OAAOxvB,CAAC,CACvE,SAAS8tQ,GAAI7tQ,EAAEkS,GAAG,IAAIqd,EAAM,IAAJA,EAAErd,EAAQqd,GAAGojM,GAAI3yN,GAAGuvB,EAAEvxB,GAAGuxB,EAAEnd,GAAGmd,EAAEuuL,GAAIvuL,GAAG,OAAOvvB,CAAC,CACvE,SAASu4M,GAAIv4M,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAS,IAAP8gK,GAAI3uJ,GAAOnS,EAAEC,EAAE27M,KAAK57M,EAAEw7M,MAAOhsL,EAAExvB,EAAE07M,KAAKvpM,EAAE0uK,GAAGrxJ,EAAG,CACxE,SAASwmM,GAAG/1N,EAAEkS,GAAG,IAAIqd,EAAW,OAAO,IAAIyvK,GAApBzvK,EAAErd,EAAE26L,KAAqB7sM,EAAEuF,EAAEw9K,GAAGxzJ,EAAEouJ,GAAGzrK,EAAE4oM,KAAK,KAAK,CACxE,SAASiC,GAAI/8M,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,GAAEA,EAAE,IAAIqvI,GAAMrlH,EAAErd,EAAE3M,EAAE2M,EAAEqd,EAAEhqB,EAAEvF,EAAED,EAAEA,EAAEmS,EAAEqd,EAAEvvB,EAAEuF,IAAIvF,EAAEkS,CAAC,CACvE,SAASkiO,GAAIp0O,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAwC,OAAnC09M,GAAIvrM,EAAElS,EAAEuvB,EAAErxB,QAAb6B,EAAqBC,EAAEuvB,EAAErd,GAAIlS,EAAEuvB,EAAErd,GAAGqd,EAASxvB,CAAC,CAExE,SAAS+tQ,GAAI9tQ,GAAG,OAASA,EAAEuvB,GAAKvvB,EAAED,EAAE23P,GAAI13P,EAAEuvB,GAAG,KAAKmoO,GAAI13P,EAAED,GAAG,KAAK8uN,GAAI7uN,EAAE,CACtE,SAAS+tQ,GAAI/tQ,EAAEkS,GAAG,OAAQ4tO,GAAI9/O,GAAG85L,GAAI,IAAIswB,GAAIpqN,EAAE,IAAIwjP,GAAItxO,EAAElS,EAAEA,MAAMy5L,GAAG4J,IAAI,CAKxE,SAAS+lB,GAAIppN,GAAG,SAAIA,EAAEuvB,IAAIvvB,EAAED,OAAyBC,EAAEuvB,EAAEvxB,GAAGgC,EAAEuvB,EAAEvxB,GAAGgC,EAAED,EAAE/B,EAAC,CACxE,SAASgwQ,GAAGhuQ,GAAG,IAAIA,EAAEuvB,EAAE+gM,KAAM,MAAMp9C,GAAI,IAAImC,IAAc,OAATr1K,EAAEA,GAAE,EAAYA,EAAEuvB,EAAE+9L,IAAI,CACxE,SAAS2gD,GAAGjuQ,GAAGA,EAAEhC,EAAE,EAAEgwM,GAAIhuM,EAAEkS,EAAE,MAAM87L,GAAIhuM,EAAEuvB,EAAE,MAAMvvB,EAAEA,EAAE,KAAKA,EAAEuF,EAAE,OAAOvF,EAAE2S,CAAC,CACxE,SAASo6M,GAAI/sN,GAAGwtM,GAAIzuM,KAAKuF,KAAQ,MAAHtE,EAAQ+3L,IAAI02B,GAAIzuN,GAAG6pL,GAAG7pL,EAAE,IAAI29K,GAAG39K,EAAE,IAAI,KAAK,CACxE,SAASkuQ,GAAIluQ,GAAGmuQ,MAAMn7F,GAAI1uK,MAAMA,KAAKtE,EAAE,IAAIy5K,GAAI20F,GAAI9pQ,KAAKtE,GAAG4lO,GAAIthO,KAAKtE,EAAEA,EAAE,CACxE,SAASquQ,KAAM97F,GAAIjuK,MAAMA,KAAK4N,EAAE,IAAI+iM,GAAI3+B,IAAIA,KAAKhyK,KAAKtE,EAAE,IAAIi1M,GAAI1+B,IAAIA,IAAI,CACxE,SAAS6xD,GAAIpoO,EAAEkS,GAAG5N,KAAKirB,EAAE,EAAEjrB,KAAK4N,EAAEA,EAAEkrM,GAAIr+M,KAAKuF,KAAKtE,EAAE,OAAOsE,KAAKtE,EAAEsE,KAAKirB,CAAC,CACxE,SAAS++O,GAAItuQ,GAAGuuQ,KAASz2C,MAAYxzN,KAAKirB,EAAEvvB,EAAEsE,KAAKiB,GAAE,EAAKjB,KAAKtE,EAAE,IAAIsyK,GAAG,CACxE,SAASi8F,KAAMA,GAAI75H,EAAIojF,KAAI,EAAK02C,KAAI,EAAMC,KAAI,EAAMC,KAAI,EAAMC,KAAI,CAAK,CACvE,SAASC,GAAI5uQ,EAAEkS,GAAG,QAAG23K,GAAG33K,EAAE,MAAamqN,GAAIr8N,EAAEuvB,EAAEouJ,GAAGzrK,EAAE,KAAKqd,EAAe,CACxE,SAASs/O,GAAI7uQ,EAAEkS,GAAG,IAAIqd,EAA0C,OAAxCA,EAAE,EAAIvvB,IAAIuvB,GAAGvvB,EAAE86B,EAAE96B,EAAE,GAAKkS,IAAIqd,GAAGrd,EAAE4oB,EAAE96B,EAAE,GAAUuvB,CAAC,CACxE,SAAS6qK,GAAIp6L,EAAEkS,GAA6B,OAAlByrK,GAAGk5C,GAAI72N,EAAED,EAAEmS,GAAG,KAAeyrK,GAAGk5C,GAAI72N,EAAEuF,EAAE2M,GAAG,GAAG,CACxE,SAAS48P,GAAI9uQ,GAAGsE,KAAK4N,EAAElS,EAAE++K,GAAIhgL,KAAKuF,KAAKtE,GAAGsE,KAAKtE,EAAE29K,GAAG8sC,GAAInmN,KAAK4N,EAAElS,EAAE,GAAG,IAAI,CACxE,SAAS+uQ,GAAI/uQ,GAAGsE,KAAK4N,EAAElS,EAAE2wN,GAAI5xN,KAAKuF,KAAKtE,GAAGsE,KAAKtE,EAAE29K,GAAG8sC,GAAInmN,KAAK4N,EAAElS,EAAE,GAAG,IAAI,CACxE,SAASmrP,GAAInrP,GAAiD,OAA1CA,EAAEiU,IAAGjU,EAAEiU,EAAE,IAAIi9J,GAAIlxK,GAAGgvQ,GAAI,IAAIztF,GAAIvhL,GAAG,EAAEA,EAAEiU,IAAUjU,EAAEiU,CAAC,CAUxE,SAAS8wN,KAAc,IAAI/kO,EAAEkS,EAAd6yN,GAAIrwF,EAAiB06C,KAAMl9K,EAAE,IAAIqjK,GAAjB+jF,IAAqBpnP,EAAQlS,EAAE,IAAIm6K,GAAX+7E,IAAel2P,CAAE,CACxE,SAASivQ,GAAIjvQ,GAAG,IAAIkS,EAA0C,OAApClS,EAAEuvB,GAASs6J,GAAN33K,EAAElS,EAAE0S,EAAO,MAAM1S,EAAEuvB,EAAEouJ,GAAGzrK,EAAE,KAAYlS,EAAEuvB,CAAC,CAExE,SAAS2/O,GAAGlvQ,GAA6C,OAAO0/M,GAArC1/M,EAAEyjO,IAAMzjO,GAAG,GAAGyjO,IAAMzjO,EAAE,EAAE0jO,IAAI,EAAkB,CAEzE,SAASyrC,GAAGnvQ,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwvB,EAAEouJ,GAm0B3B,SAAYzrK,EAAEqd,GAAGw0J,GAAG7xK,GAAG,IAAI,OAAOA,EAAEw2M,GAAGn5L,EAAE,CAAC,MAAMvvB,GAAY,GAAG6pL,GAAZ7pL,EAAE8pL,GAAI9pL,GAAW,MAAM6pL,GAAG7pL,EAAE,KAAM,OAAO,KAAU,MAAMkzK,GAAIlzK,EAAE,CAAC,CAn0BrFovQ,CAAGpvQ,EAAEuvB,EAAErd,GAAG,IAAOqd,IAAGxvB,EAAEwvB,EAAE0vJ,KAAK1vJ,EAAE8/O,KAAKrvQ,EAAED,GAAGA,EAAE,CACzE,SAASuvQ,GAAItvQ,EAAEkS,GAAG,IAAMnS,EAAsB,SAAXA,EAAEq9N,GAAIp9N,EAAbkS,EAAE26L,QAA4Bg1C,GAAI9hP,EAAEwF,EAAE2M,EAAE4oM,KAAK,CACzE,SAASy0D,GAAIvvQ,EAAEkS,GAAG,OAAM,GAAHA,GAAW,GAALlS,EAAEuF,EAAavF,EAASkS,EAAE,EAAEs9P,IAAIxvQ,EAAEkS,GAAGu9P,IAAIzvQ,GAAGkS,EAAE,CACzE,SAASw9P,GAAI1vQ,EAAEkS,GAAG,OAAM,GAAHA,GAAW,GAALlS,EAAEuF,EAAavF,EAASkS,EAAE,EAAEu9P,IAAIzvQ,EAAEkS,GAAGs9P,IAAIxvQ,GAAGkS,EAAE,CACzE,SAASi5M,GAAGnrN,GAAG,GAAGorN,IAAGprN,GAAY,OAARA,EAAEuvB,EAAEvvB,EAAEA,EAASA,EAAEA,EAAEy7M,KAAU,MAAMvoC,GAAI,IAAImC,GAAK,CACzE,SAASs6F,GAAI3vQ,GAAG,IAAIkS,EAAEqd,EAAkB,OAAhBrd,EAAElS,EAAEuvB,EAAEvxB,EAAEuxB,EAAEvvB,EAAED,EAAE/B,EAASkU,EAAE7Q,IAAI49P,MAAMC,MAAM3vO,EAAEluB,GAAG69P,GAAG,CACzE,SAAS0Q,GAAI5vQ,GAAG,IAAIkS,EAA6C,OAAjC29P,GAAV39P,EAAE,IAAI24O,GAAU7qP,GAAG+nM,GAAI71L,GAAGmrJ,MAAM2hG,KAAK,MAAa9sP,CAAC,CACzE,SAAS49P,GAAI9vQ,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAE,OAAOA,EAAEC,EAAE22N,GAAGzkN,KAAM,EAAElS,EAAEkI,GAAGnI,EAAEwvB,GAAE,GAAM3E,IAAI5qB,EAAEkS,EAAEqd,EAAE,CACzE,SAASwgP,GAAI/vQ,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAE,IAAIA,EAAE,EAAEA,EAAEyqQ,IAAIzqQ,IAAK+nO,GAAIttO,EAAEA,EAAEkS,EAAES,GAAGpN,GAAGgqB,EAAExvB,EAAEmS,EAAES,GAAI,CACzE,SAASs9P,GAAIjwQ,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAE,IAAIA,EAAE,EAAEA,EAAE2qQ,IAAI3qQ,IAAK8nO,GAAIrtO,EAAEA,EAAEuF,GAAG2M,EAAES,GAAG4c,EAAExvB,EAAEmS,EAAES,GAAI,CACzE,SAAS4lP,GAAIv4P,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGwyP,GAAIh5P,KAAKuF,KAAK4N,EAAEnS,EAAEwF,GAAajB,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAEuvB,CAAC,CACxE,SAASopO,GAAI34P,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGyyP,GAAIj5P,KAAKuF,KAAK4N,EAAEnS,EAAEwF,GAAajB,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAEuvB,CAAC,CACxE,SAAS0pO,GAAIj5P,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG4qQ,GAAIpxQ,KAAKuF,KAAK4N,EAAEnS,EAAEwF,GAAajB,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAEuvB,CAAC,CACxE,SAAS6gP,GAAIpwQ,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG4qQ,GAAIpxQ,KAAKuF,KAAK4N,EAAEnS,EAAEwF,GAAajB,KAAKirB,EAAEvvB,EAAEsE,KAAK4N,EAAEqd,CAAC,CACxE,SAAS64N,GAAIpoP,EAAEkS,EAAEqd,GAAGkiJ,GAAI1yK,KAAKuF,KAAKirB,GAAGjrB,KAAK4N,EAAElS,EAAEsE,KAAKirB,EAAErd,EAAE5N,KAAKvE,GAAGswQ,MAAMC,IAAI,CACzE,SAASH,GAAInwQ,EAAEkS,EAAEqd,GAAGjrB,KAAKvE,EAAEC,EAAEsE,KAAKjD,EAAE6Q,EAAE,EAAE,EAAE5N,KAAKw2B,EAAEvL,EAAE,EAAE,EAAEjrB,KAAKpE,GAAG,EAAEoE,KAAKlB,EAAE,CAAC,CACzE,SAASmtQ,GAAIvwQ,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAiBw9M,GAAfx9M,EAAE,IAAIgnN,GAAI/mN,EAAEA,GAAQA,EAAEA,EAAEA,GAAG6gP,IAAI9gP,EAAE+6B,EAAE5oB,EAAEqd,GAAGvvB,EAAEA,EAAEA,EAAED,CAAC,CACzE,SAASq3O,GAAIp3O,EAAEkS,GAAGlS,EAAEwwQ,GAAGxwQ,EAAEhC,EAAE,GAAGusN,GAAIvqN,EAAEA,EAAEhC,EAAEgC,EAAEs7K,GAAGt7K,EAAEhC,EAAEkU,IAAIlS,EAAEywQ,GAAGzwQ,EAAEhC,IAAIkU,GAAGlS,EAAEi4O,IAAI,CACzE,SAASy4B,GAAI1wQ,GAAG,IAAIkS,EAAEqd,IAAIvvB,EAAEoS,EAAEF,EAAElS,EAAE2S,EAAE4c,EAAEvvB,EAAEhC,EAAEgC,EAAE2S,EAAE,KAAK3S,EAAEhC,EAAE,EAAEgC,EAAEwwG,GAAGjhF,EAAErd,GAAGlS,EAAEi4O,IAAI,CACzE,SAAS04B,GAAG3wQ,GAAG,IAAIkS,EAAEqd,EAA6C,OAA3Cw0J,GAAG/jL,GAAGkS,EA3lB7B,SAAYlS,GAAa,OAAV+wN,GAAG/wN,EAAE89P,KAAYC,GAAGrzD,GAAIA,GAAI,EAAE1qM,GAAGA,EAAE,GAAG,GAAG,CA2lBzB4wQ,CAAG5wQ,EAAE9B,QAAqB0tO,GAAbr8M,EAAE,IAAI0hM,GAAI/+M,GAASlS,GAAUuvB,CAAC,CAC1E,SAASshP,GAAG7wQ,GAAG,IAAIkS,EAA2C,OAAtC6xK,GAAG/jL,GAA4B8wQ,IAAlC5+P,EAASlS,EAAE,IAAIg/N,GAAIh/N,GAAGsiO,GAAGtiO,EAAE27M,OAAqBi3B,GAAG1gO,EAAE,CAC1E,SAAS2iO,GAAI70O,EAAEkS,GAAG,IAAIqd,EAA4C,OAAvCkuL,GAAIvrM,EAAElS,EAAEuvB,EAAErxB,QAAbqxB,EAAqBvvB,EAAEuvB,EAAErd,GAAI8oL,GAAIh7L,EAAEuvB,EAAErd,EAAE,GAAUqd,CAAC,CAC1E,SAAS8wK,GAAGrgM,EAAEkS,GAAG,IAAIqd,EAAqC,QAAnCA,EAAEouJ,GAAG39K,EAAEuvB,EAAEyhN,GAAG9+N,GAAG,OAASqd,EAAEvvB,EAAE6gG,GAAG3uF,IAAWlS,EAAE+iL,GAAG7wK,EAAEqd,EAAE,CAC1E,SAASwhP,GAAI/wQ,EAAEkS,GAAG,IAAIqd,EAAExvB,EAA4B,OAAvB8gK,GAAI7gK,GAAPuvB,EAAUvvB,EAAM6gK,GAAI3uJ,GAAaqd,IAApBxvB,EAAUmS,GAAe,EAAEqd,EAAExvB,GAAG,EAAE,CAAC,CAC1E,SAASixQ,GAAIhxQ,GAAG,IAAIkS,EAAY,OAAVA,EAAElS,EAAEuF,EAAEvF,EAAE86B,EAAKnrB,MAAMuC,IAAI0sN,GAAI5+N,EAAED,GAAWC,EAAED,EAASmS,CAAC,CAC1E,SAAS++P,GAAIjxQ,EAAEkS,GAAmD,OAA/ClS,EAAEA,EAAqB48M,GAAI58M,EAAEA,EAAEA,EAAEkS,GAA5BlS,EAAEA,EAAE,IAAI8tN,GAAI9tN,EAAED,GAAiB28M,GAAI18M,EAAEA,EAAEkS,GAAUlS,CAAC,CAC1E,SAASswN,GAAGtwN,EAAEkS,GAAG,GAAGlS,EAAE,GAAGA,EAAEkS,EAAG,MAAMghK,GAAI,IAAIgO,GAAIy7E,IAAG38P,EAAEkS,EAAE,WAAW,OAAOlS,CAAC,CAC1E,SAASkxQ,GAAIlxQ,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAwC,OA8+ClE,SAAavF,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAM,IAAJmoB,EAAE,EAAMnoB,EAAE,EAAEA,EAAEpN,EAAEoN,IAAKmoB,EAAE4vK,GAAI5vK,EAAEq2O,GAAIv4E,GAAI1mL,EAAES,GAAGkmL,KAAKD,GAAI74L,EAAE4S,GAAGkmL,OAAO74L,EAAE2S,GAAGs3M,GAAInvL,GAAGA,EAAE+0M,GAAI/0M,EAAE,IAAI,KAAKnoB,EAAE4c,EAAE5c,IAAKmoB,EAAE4vK,GAAI5vK,EAAE89J,GAAI1mL,EAAES,GAAGkmL,MAAM74L,EAAE2S,GAAGs3M,GAAInvL,GAAGA,EAAE+0M,GAAI/0M,EAAE,GAAI,CA9+CjIs2O,CAAvB7rQ,EAAE04K,GAAGmV,IAAGsW,IAAI,GAAGx3L,EAAE,GAAG,GAASlS,EAAEkS,EAAEqd,EAAExvB,GAAUwF,CAAC,CAG1E,SAAS8rQ,GAAIrxQ,EAAEkS,GAAG,OAAOipM,GAAGjpM,GAAM,MAAHA,EAAQo/P,IAAItxQ,EAAE86B,EAAE,MAAMy2O,GAAIvxQ,EAAE2S,EAAET,GAAGo/P,IAAItxQ,EAAE86B,EAAE5oB,EAAE,CAC1E,SAASs/P,GAAIxxQ,GAAGsE,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAE,IAAI2lK,GAAIrhK,KAAKirB,EAAEvvB,GAAGsE,KAAK4N,EAAE,IAAIyzJ,GAAIrhK,KAAKirB,EAAErd,EAAE,CAC1E,SAASu/P,KAAMntQ,KAAKiB,EAAE,IAAI+sK,GAAIhuK,KAAKirB,EAAE,IAAI+iJ,GAAIhuK,KAAKvE,EAAE,IAAIuyK,GAAIhuK,KAAK4N,EAAE,IAAIogK,EAAG,CAC1E,SAAS0E,KAAM1yK,KAAKqO,EAAE,IAAIkkK,GAAIvyK,KAAK4N,EAAE,IAAI2kK,GAAIvyK,KAAKtE,EAAE,IAAIsyK,GAAIhuK,KAAKjD,EAAE,IAAIixK,EAAG,CAC1E,SAASo/F,GAAI1xQ,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEsE,KAAKirB,EAAErd,EAAE5N,KAAKvE,EAAEwvB,EAAEwmJ,GAAI7jK,EAAE3M,EAAEjB,MAAMyxK,GAAIxmJ,EAAErd,EAAE5N,KAAK,CAC1E,SAASq/O,GAAI3jP,EAAEkS,GAAGgrM,GAAIn+M,KAAKuF,KAAK4N,EAAEy/P,MAAa,EAARz/P,EAAE0/P,MAAS/wG,GAAI7gK,GAAGsE,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CAC1E,SAAS2xO,GAAI7jP,EAAEkS,GAAGkrM,GAAIr+M,KAAKuF,KAAK4N,EAAEy/P,MAAa,EAARz/P,EAAE0/P,MAAS/wG,GAAI7gK,GAAGsE,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CAC1E,SAASuxO,GAAIzjP,EAAEkS,GAAGmrM,GAAIt+M,KAAKuF,KAAK4N,EAAEy/P,MAAa,EAARz/P,EAAE0/P,MAAS/wG,GAAI7gK,GAAGsE,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,CAAC,CAC1E,SAAS2/P,GAAI7xQ,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKirB,EAAEA,EAAEwmJ,GAAI/1K,EAAEiU,EAAE3P,MAAMyxK,GAAI7jK,EAAElU,EAAEsG,KAAK,CAC1E,SAASwtQ,KAAMxtQ,KAAK4N,EAAE,IAAIunK,GAAIn1K,KAAKtE,EAAE,IAAIy5K,GAAIn1K,KAAK4N,EAAE,IAAIunK,GAAIn1K,KAAKtE,EAAE,IAAIy5K,EAAG,CAC1E,SAASs4F,KAAMA,GAAIr9H,EAAIs9H,IAAI,IAAIthG,GAAI,sCAAsC,CACzE,SAAS3U,KAAMA,GAAIrnB,EAAIu9H,IAAI,IAAIrzD,GAAI,4BAA4BszD,KAAMC,KAAK,CAC1E,SAAS7M,KAAMA,GAAI5wH,EAAIq2H,IAAI,IAAIv3D,GAAI,UAAU,GAAG+xD,IAAI,IAAI/xD,GAAI,WAAW,EAAE,CACzE,SAASsxC,KAAMA,GAAIpwG,EAAIk1H,IAAI,IAAIl3D,GAAI,UAAU,GAAGqyC,IAAI,IAAIryC,GAAI,YAAY,EAAE,CAC1E,SAAS86D,KAAMA,GAAI94H,EAAIg5H,IAAI,IAAIj5D,GAAI,QAAQ,GAAGk5D,IAAI,IAAIl5D,GAAI,cAAc,EAAE,CAC1E,SAAS29D,GAAIpyQ,EAAEkS,GAAG,IAAIqd,EAAqC,OAAnCA,EAsiFxB,SAAavvB,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAiC,IAA/BzS,EAAE,IAAIixK,GAAIx+J,EAAE,IAAIs+J,GAAIt3I,EAAE,KAAKv1B,EAAE,EAAMxF,EAAE,EAAEA,EAAEmS,EAAEhU,SAAS6B,EAAmF,OAAzEsyQ,GAAIv3O,EAAXvL,EAAErd,EAAEnS,MAAcwF,EAAE+sQ,IAAItyQ,EAAE8T,EAAEzS,EAAEyiO,IAAIv+N,IAAIitN,GAAIjjM,GAAGy4K,MAAMuqE,QAAQz3O,EAAE6iJ,GAAG4qB,IAAIh5K,EAAEgjP,KAAK,KAAYhjP,EAAEluB,EAAEsR,GAAG,KAAK,EAAE,IAAI3U,EAAEwlN,GAAG4e,GAAGjZ,GAAI55L,GAAGkwJ,MAAMM,MAAM,IAAI72B,KAAM8nF,GAAGhzO,IAAK2U,EAAEgrK,GAAG60F,GAAGx0Q,GAAG,IAAIgC,EAAED,EAAE4S,EAAEvP,GAAGmC,IAAIlE,EAAEkuB,EAAEluB,EAAEkuB,EAAErxB,QAAQyU,EAAqB,IAAnBpN,EAAE+sQ,IAAItyQ,EAAE8T,EAAEzS,EAAEyiO,IAAIv+N,GAAO6M,EAAEoxM,GAAG4e,GAAGjZ,GAAI55L,EAAEs3K,KAAK,IAAI39C,KAAM8nF,GAAG5+N,IAAKO,EAAEgrK,GAAG60F,GAAGpgQ,GAAG,IAAIpS,EAAED,EAAE4S,EAAEvP,GAAGmC,IAAIlE,EAAEkuB,EAAEluB,EAAEkuB,EAAErxB,QAAQyU,EAAE,MAAM,KAAK,EAAMw2M,GAAI55L,EAAEs0M,KAAKxiM,OAAM1uB,EAAEgrK,GAAGwrC,GAAI55L,EAAEs0M,KAAKxoB,GAAG,GAAG,IAAIr7M,EAAED,EAAE4S,EAAEvP,GAAGmC,IAAIlE,EAAEkuB,EAAEluB,EAAEkuB,EAAErxB,QAAQyU,GAAEw2M,GAAI55L,EAAEu0M,KAAKziM,MAAMshO,GAAI7uP,EAAEyb,GAAG,MAAM,KAAK,EAAE,IAAI9rB,EAAE0lN,GAAI55L,GAAGkwJ,MAAMG,MAAM+7B,KAAKl4M,EAAE83M,MAAO5oM,EAAEgrK,GAAGl6K,EAAEg4M,KAAK,IAAIz7M,EAAED,EAAE4S,EAAEvP,GAAGmC,IAAIlE,EAAEkuB,EAAEluB,EAAEkuB,EAAErxB,QAAQyU,EAAEw2M,GAAI55L,EAAEmwJ,KAAK08E,GAAG,IAAIppD,GAAIl/L,EAAEyb,IAAuB,OAAjB+iP,IAAItyQ,EAAE8T,EAAEzS,EAAEyiO,IAAIv+N,GAAUlE,CAAC,CAtiFpoBoxQ,CAAIzyQ,EAAEkS,GAAGlS,EAAEkS,EAAE,IAAI6+O,GAAIxhO,EAAEA,EAAErxB,QAi+EnD,SAAa8B,EAAEkS,GAAG,IAAIqd,EAAMuL,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAgB,IAAdkuB,EAAE,EAAEluB,EAAE,IAAIixK,GAAQ7uK,EAAE,IAAIkiK,GAAIzzJ,GAAGzO,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAQ,CAA0D,OAAzDyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,IAAIivQ,GAAI1yQ,EAAEkS,EAAElS,EAAED,EAAE4S,EAAEvP,IAAI/B,EAAEkuB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAUxrK,EAAE3U,EAAEqD,EAAEsR,GAAG,KAAK,EAA8BywM,GAA1BzlC,GAAG4qB,IAAI51L,GAAGq1L,MAAM2qE,MAAM,IAAUvgQ,EAAE,IAAIw6J,GAAIvrK,IAAI,MAAM,KAAK,EAAEgkN,GAAIutD,GAAIzoD,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAI56L,EAAE3U,EAAEoU,EAAE,KAAK,IAAIy6J,GAAIl6J,KAAK,IAAIm6J,GAAIzrK,IAAI,MAAM,KAAK,EAA8B00K,GAAI10K,EAAE,IAAIm1M,GAApC74B,GAAG4qB,IAAI51L,GAAGq1L,MAAM0/C,MAAM,IAAoB1vC,GAAIrlM,EAAEpN,EAAEgqB,EAAErxB,OAAOyU,EAAEA,EAAE4c,EAAErxB,UAAW,IAAIkU,EAAE,IAAIuzJ,GAAItkK,GAAG+Q,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAASF,EAAE2/K,GAAGC,GAAIxrK,GAAG,KAAI0oB,EAAEo/J,GAAIl6L,EAAE29K,GAAG3/K,EAAEgC,EAAE,MAAUA,EAAED,EAAE4S,EAAEvP,KAAImsB,GAAGq+O,GAAI5tQ,EAAEkS,EAAE4oB,GAAG6iJ,GAAG3/K,EAAEkU,EAAE,IAAIlS,EAAE2iQ,GAAI3iQ,EAAEA,EAAEg4M,GAAIl9K,KAAK,MAAOsnJ,GAAIpiL,EAAEA,IAAI6yQ,GAAI7yQ,EAAEkS,EAAEyrK,GAAG41D,GAAIvzO,EAAEA,GAAG,IAAIA,EAAG,CAAC,OAAOuvB,CAAC,CAj+E7fujP,CAAI9yQ,EAAEuvB,EAAE,CAE1E,SAASwjP,GAAI/yQ,GAAG,IAAIkS,EAA4C,OAAtClS,EAAEA,GAAS6pL,GAAN33K,EAAElS,EAAE0S,EAAO,OAAO1S,EAAEA,EAAE29K,GAAGzrK,EAAE,MAAalS,EAAEA,CAAC,CAC1E,SAASmxO,GAAInxO,GAAG,OAAGA,EAAEA,EAAMA,EAAEuF,EAAU4rO,GAAInxO,EAAEuF,GAAyB,KAATvF,CAAa,CAE1E,SAASgzQ,GAAIhzQ,EAAEkS,GAAU,OAAP2uJ,GAAI3uJ,GAAMlS,EAAEuvB,EAAEvvB,EAAED,IAAGC,EAAEg5O,GAAG9mO,EAAElS,EAAEuvB,MAAY,EAAiB,CAC3E,SAAS0jP,GAAIjzQ,EAAEkS,GAAG,QAAG0uL,GAAI5gM,EAAEA,EAAEkS,KAAIm/P,GAAIrxQ,EAAEA,EAAEkS,IAAU,EAAuB,CAI1E,SAASg4M,GAAIlqN,GAAG,IAAIkS,EAAa,IAAX6nL,GAAI/5L,GAAGkS,EAAE,EAAQlS,EAAEA,EAAEy5L,GAAG,IAAI7iD,KAAM1kI,EAAEw4L,GAAIx4L,EAAE,GAAG,OAAOA,CAAC,CAC3E,SAASghQ,GAAIlzQ,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAM,IAAJxF,EAAE,EAAMwF,EAAE,EAAEA,EAAE2M,EAAEhU,OAAOqH,IAAKxF,GAAGC,EAAEg+L,GAAG9rL,EAAE3M,GAAGxF,EAAEwvB,EAAG,CAE1E,SAAS4jP,GAAGnzQ,EAAEkS,EAAEqd,GAA2C,OAAxCksL,GAAGvpM,EAAElS,EAAEuF,EAAE21K,KAAK+D,MAAMw8B,GAAGlsL,EAAEvvB,EAAEuvB,EAAE2rJ,KAAK+D,MAAaj/K,EAAEA,EAAEkS,GAAGqd,EAAE,CAC3E,SAAS6jP,GAAIpzQ,EAAEkS,GAAG6wM,MAAMz+M,KAAKiB,EAAEvF,EAAEsE,KAAKvE,EAAE,EAAEuE,KAAKtE,EAAEu+K,GAAGC,GAAG4U,IAAG,GAAGsW,IAAI,GAAG,GAAG,CAACx3L,GAAG,CAC3E,SAASwkN,GAAG12N,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKw2B,EAAE96B,EAAEsE,KAAKiB,EAAE2M,EAAE5N,KAAKvE,EAAEwvB,EAAEjrB,KAAK4N,EAAEnS,EAAEuE,KAAKirB,EAAGxvB,EAAOA,EAAEA,EAAP,IAAQ,CAC3E,SAASszQ,GAAIrzQ,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEA,EAAEvF,EAAED,EAAEmS,EAAElS,EAAEA,EAAEuvB,EAAEvvB,EAAEkS,EAAEnS,EAAEC,EAAEuvB,EAAEvvB,EAAED,EAAEwvB,EAAEvvB,EAAEA,EAAED,EAAEC,EAAEkS,EAAE3M,EAAEvF,EAAEuvB,EAAErd,CAAC,CAG3E,SAAS++M,GAAIjxN,GAAGuyK,GAAIjuK,MAAMigO,GAAIvkO,GAAG,EAAE,wCAAwC,CAC3E,SAASszQ,KAAMA,GAAI5+H,EAAI6+H,IAAIn1D,IAAIo1D,KAAMj1F,GAAGC,GAAGi1F,IAAG,GAAGxnC,IAAI,IAAI,EAAE,CAACynC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAIn/H,EAAIo/H,IAAI11D,IAAI21D,KAAMx1F,GAAGC,GAAGw1F,IAAG,GAAG/nC,IAAI,IAAI,EAAE,CAACgoC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAI1/H,EAAI2/H,IAAIj2D,IAAIk2D,KAAM/1F,GAAGC,GAAG+1F,IAAG,GAAGtoC,IAAI,IAAI,EAAE,CAACuoC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAIjgI,EAAIkgI,IAAIx2D,IAAIy2D,KAAMt2F,GAAGC,GAAGwtD,IAAG,GAAGC,IAAI,IAAI,EAAE,CAAC6oC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAIvgI,EAAIwgI,IAAI92D,IAAI+2D,KAAM52F,GAAGC,GAAG42F,IAAG,GAAGnpC,IAAI,IAAI,EAAE,CAACopC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAI9gI,EAAI+gI,IAAIr3D,IAAIs3D,KAAMn3F,GAAGC,GAAGm3F,IAAG,GAAG1pC,IAAI,IAAI,EAAE,CAAC2pC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAIrhI,EAAIshI,IAAI53D,IAAI63D,KAAM13F,GAAGC,GAAG03F,IAAG,GAAGjqC,IAAI,IAAI,EAAE,CAACkqC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAI5hI,EAAI6hI,IAAIn4D,IAAIo4D,KAAMj4F,GAAGC,GAAGi4F,IAAG,GAAGxqC,IAAI,IAAI,EAAE,CAACyqC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAIniI,EAAIoiI,IAAI14D,IAAI24D,KAAMx4F,GAAGC,GAAGw4F,IAAG,GAAG/qC,IAAI,IAAI,EAAE,CAACgrC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAI1iI,EAAI2iI,IAAIj5D,IAAIk5D,KAAM/4F,GAAGC,GAAG+4F,IAAG,GAAGtrC,IAAI,IAAI,EAAE,CAACurC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAIjjI,EAAIkjI,IAAIx5D,IAAIy5D,KAAMt5F,GAAGC,GAAGs5F,IAAG,GAAG7rC,IAAI,IAAI,EAAE,CAAC8rC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAIxjI,EAAIyjI,IAAI/5D,IAAIg6D,KAAM75F,GAAGC,GAAG65F,IAAG,GAAGpsC,IAAI,IAAI,EAAE,CAACqsC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAI/jI,EAAIgkI,IAAIt6D,IAAIu6D,KAAMp6F,GAAGC,GAAGo6F,IAAG,GAAG3sC,IAAI,IAAI,EAAE,CAAC4sC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAItkI,EAAIukI,IAAI76D,IAAI86D,KAAM36F,GAAGC,GAAG26F,IAAG,GAAGltC,IAAI,IAAI,EAAE,CAACmtC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAI7kI,EAAI8kI,IAAIp7D,IAAIq7D,KAAMl7F,GAAGC,GAAGk7F,IAAG,GAAGztC,IAAI,IAAI,EAAE,CAAC0tC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAIplI,EAAIqlI,IAAI37D,IAAI47D,KAAMz7F,GAAGC,GAAGlpF,IAAG,GAAG22I,IAAI,IAAI,EAAE,CAACguC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAI1lI,EAAI2lI,IAAIj8D,IAAIk8D,KAAM/7F,GAAGC,GAAG+7F,IAAG,GAAGtuC,IAAI,IAAI,EAAE,CAACuuC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAIjmI,EAAIkmI,IAAIx8D,IAAIy8D,KAAMt8F,GAAGC,GAAGs8F,IAAG,GAAG7uC,IAAI,IAAI,EAAE,CAAC8uC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAIxmI,EAAIymI,IAAI/8D,IAAIg9D,KAAM78F,GAAGC,GAAG68F,IAAG,GAAGpvC,IAAI,IAAI,EAAE,CAACqvC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAI/mI,EAAIgnI,IAAIt9D,IAAIu9D,KAAMp9F,GAAGC,GAAGo9F,IAAG,GAAG3vC,IAAI,IAAI,EAAE,CAAC4vC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAItnI,EAAIunI,IAAI79D,IAAI89D,KAAM39F,GAAGC,GAAG29F,IAAG,GAAGlwC,IAAI,IAAI,EAAE,CAACmwC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAI7nI,EAAI8nI,IAAIp+D,IAAIq+D,KAAMl+F,GAAGC,GAAGk+F,IAAG,GAAGzwC,IAAI,IAAI,EAAE,CAAC0wC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAIpoI,EAAIqoI,IAAI3+D,IAAI4+D,KAAMz+F,GAAGC,GAAGy+F,IAAG,GAAGhxC,IAAI,IAAI,EAAE,CAACixC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAI3oI,EAAI4oI,IAAIl/D,IAAIm/D,KAAMh/F,GAAGC,GAAGg/F,IAAG,GAAGvxC,IAAI,IAAI,EAAE,CAACwxC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAIlpI,EAAImpI,IAAIz/D,IAAI0/D,KAAMv/F,GAAGC,GAAGmd,IAAG,GAAGswC,IAAI,IAAI,EAAE,CAAC8xC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAIxpI,EAAIypI,IAAI//D,IAAIggE,KAAM7/F,GAAGC,GAAG6/F,IAAG,GAAGpyC,IAAI,IAAI,EAAE,CAACqyC,IAAIC,IAAIC,OAAO,CAC3E,SAASC,KAAMA,GAAI/pI,EAAIgqI,IAAItgE,IAAIugE,KAAMpgG,GAAGC,GAAGogG,IAAG,GAAG3yC,IAAI,IAAI,EAAE,CAAC4yC,IAAIC,IAAI5kP,OAAO,CAE3E,SAASk+K,GAAIp4M,EAAEkS,GAAG,OAAQlS,EAAEE,IAAIF,EAAEE,EAAE,IAAI0zN,IAAKmrD,MAAMC,KAAKC,IAAGj/Q,EAAE,IAAI06M,IAAI16M,EAAEE,EAAEgS,EAAE,CAI3E,SAASgtQ,GAAIl/Q,GAAkD,OAA9CA,EAAE2S,IAAI3S,EAAE2S,EAAE,IAAI8+I,KAAMzxJ,EAAE2S,EAAE4c,IAAIvvB,EAAE2S,EAAE4c,EAAE,IAAI0hJ,GAAIjxK,IAAWA,EAAE2S,EAAE4c,CAAC,CAE3E,SAAS+oM,GAAIt4N,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAE,GAAM,MAAHgqB,EAAS,IAAIxvB,EAAE,EAAEA,EAAEmS,IAAInS,EAAGwF,EAAEgqB,EAAExvB,GAAGC,EAAEm/Q,GAAGp/Q,EAAEwF,EAAI,CAC3E,SAAS65Q,GAAIp/Q,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAA0C,OAmxEpE,SAAavF,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAA6D,GAA3DmoB,EAAE4vK,GAAI9R,GAAI1mL,EAAE,GAAG2mL,KAAKD,GAAI74L,EAAE,GAAG84L,MAAM74L,EAAE,GAAGiqN,GAAInvL,GAAGA,EAAE+0M,GAAI/0M,EAAE,IAAOvL,GAAGhqB,EAAE,CAAC,IAAIoN,EAAE,EAAEA,EAAEpN,EAAEoN,IAAKmoB,EAAE4vK,GAAI5vK,EAAE4vK,GAAI9R,GAAI1mL,EAAES,GAAGkmL,KAAKD,GAAI74L,EAAE4S,GAAGkmL,OAAO74L,EAAE2S,GAAGs3M,GAAInvL,GAAGA,EAAE+0M,GAAI/0M,EAAE,IAAI,KAAKnoB,EAAE4c,EAAE5c,IAAKmoB,EAAE4vK,GAAI5vK,EAAE89J,GAAI1mL,EAAES,GAAGkmL,MAAM74L,EAAE2S,GAAGs3M,GAAInvL,GAAGA,EAAE+0M,GAAI/0M,EAAE,GAAI,KAAK,CAAC,IAAInoB,EAAE,EAAEA,EAAE4c,EAAE5c,IAAKmoB,EAAE4vK,GAAI5vK,EAAE4vK,GAAI9R,GAAI1mL,EAAES,GAAGkmL,KAAKD,GAAI74L,EAAE4S,GAAGkmL,OAAO74L,EAAE2S,GAAGs3M,GAAInvL,GAAGA,EAAE+0M,GAAI/0M,EAAE,IAAI,KAAKnoB,EAAEpN,EAAEoN,IAAKmoB,EAAE4vK,GAAI5vK,EAAE89J,GAAI74L,EAAE4S,GAAGkmL,MAAM74L,EAAE2S,GAAGs3M,GAAInvL,GAAGA,EAAE+0M,GAAI/0M,EAAE,GAAI,CAAW,GAAVoyK,GAAIpyK,EAAE,KAAQ96B,EAAE2S,GAAGs3M,GAAInvL,GAAG,CAnxEhXukP,CAAzB95Q,EAAE04K,GAAGmV,IAAGsW,IAAI,GAAGx3L,EAAE,EAAE,GAAG,GAASlS,EAAEkS,EAAEqd,EAAExvB,GAAUwF,CAAC,CAC5E,SAAS04K,GAAGj+K,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAInoB,EAAuC,OAArCA,EAAE2sQ,IAAG/5Q,EAAExF,GAAM,IAAHwF,GAAOg5K,GAAGC,GAAGx+K,EAAE86B,GAAG5oB,EAAEqd,EAAEhqB,EAAEoN,GAAUA,CAAC,CAG5E,SAAS4sQ,GAAIv/Q,EAAEkS,EAAEqd,GAAGouJ,GAAG39K,EAAEkS,EAAE,IAAIyrK,GAAG39K,EAAEkS,EAAE,IAAIyrK,GAAG39K,EAAEkS,EAAE,IAAIkxM,GAAIpjN,EAAEA,EAAE,IAAIsgO,GAAI/wM,EAAErd,EAAElS,GAAG,CAC5E,SAASw/Q,GAAIx/Q,EAAEkS,EAAEqd,GAAG,GAAGvvB,EAAE,GAAGkS,EAAEqd,GAAGrd,EAAElS,EAAG,MAAMkzK,GAAI,IAAIwR,GAAI+6F,IAAIz/Q,EAAE0/Q,IAAIxtQ,EAAE8iO,IAAIzlN,GAAI,CAC5E,SAASowP,GAAI3/Q,GAAG,IAAIA,EAAG,MAAMkzK,GAAI,IAAI4O,GAAI,kCAAmC,CAC5E,SAASuf,GAAIrhM,GAAOA,GAAmCsE,KAAKirB,EAAEvvB,EAAEsE,KAAK4N,EAAE,OAAhD5N,KAAKirB,EAAE,KAAKjrB,KAAK4N,EAAE,IAAIogK,GAA8B,CAC5E,SAASstG,GAAI5/Q,EAAEkS,GAAGi8L,GAAIpvM,KAAKuF,KAAKtE,EAAEkS,GAAG5N,KAAKtE,EAAEi+K,GAAG4hG,IAAGv+B,IAAI,IAAI,EAAE,EAAE,GAAGh9O,KAAK4N,GAAE,CAAI,CAC5E,SAASm9M,GAAIrvN,GAAGmhM,GAAIpiM,KAAKuF,KAAKtE,EAAE,GAAGgyN,GAAI1tN,MAAMA,KAAKvE,EAAEmS,EAAE5N,KAAKvE,EAAEuE,KAAKvE,EAAEC,EAAEsE,KAAKvE,CAAC,CAC5E,SAAS+/Q,GAAI9/Q,GAAG,IAAIkS,EAAQ,OAAQ,IAAdA,EAAElS,EAAEkS,GAAOA,EAAa,KAAYyrK,GAAGoiG,IAAG7tQ,EAAE,GAAG,KAAKA,CAAC,CAC3E,SAASktN,GAAIp/N,EAAEkS,GAAG,IAAIqd,EAAgC,OAA9BA,EAAE,IAAIgmH,GAAMhmH,GAAE,EAAKA,EAAExvB,EAAEmS,EAAE4oM,KAAYi0C,IAAI/uP,EAAEkS,EAAE26L,KAAKt9K,EAAE,CAE5E,SAASywP,GAAIhgR,EAAEkS,EAAEqd,GAAG,IAAIxvB,GAAEA,EAAEC,EAAEkS,EAAEqd,EAAEA,EAAEnsB,GAAGmsB,EAAEnsB,IAAK8O,GAAGA,EAAEA,EAAEnS,EAAEwvB,GAAGrd,EAAEqd,EAAExvB,EAAEC,GAAGkS,EAAElS,IAAID,EAAEC,CAAC,CAC5E,SAASigR,GAAIjgR,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAsB,OAApBwvB,EAAEvvB,EAAEA,EAAEkS,EAAElS,EAAED,EAAEC,EAAEkS,EAAEA,EAAEA,EAAS+gI,EAAK3/H,KAAKuc,KAAKN,EAAEA,EAAExvB,EAAEA,EAAE,CAC5E,SAASsqQ,KAAMA,GAAI31H,EAAI61H,IAAI,IAAIp5D,GAAI,YAAY,GAAGq5D,IAAI,IAAIr5D,GAAI,WAAW,EAAE,CAC3E,SAASh1C,KAAMA,GAAIznB,EAAIwrI,IAAI3yC,GAAI9F,GAAI,IAAI/iC,IAAKuuD,MAAMktB,MAAMhtB,MAAMitB,MAAMltB,IAAIE,IAAI,CAY5E,SAASitB,GAAIrgR,GAAGoyN,KAAMpyN,EAAEuvB,GAAGutO,GAAI98P,EAAEuF,EAAEvF,GAAGA,EAAEuvB,EAAEw0J,KAAK/jL,EAAEuvB,EAAE,KAAKvvB,EAAEkS,EAAEouQ,GAAItgR,GAAG00N,GAAI10N,EAAEuF,EAAEvF,EAAE,CAC7E,SAAS07P,GAAI17P,GAAsD,OAAnD88P,GAAI98P,EAAEuvB,EAAEvvB,EAAEuF,EAAEvF,GAAGspN,GAAItpN,EAAEkS,GAAGlS,EAAEuvB,EAAEvvB,EAAED,GAAGC,EAAEA,EAAEA,EAAEkS,EAAElS,EAAEkS,EAAElS,EAAEkS,EAAElS,EAASA,EAAEA,CAAC,CAC7E,SAASugR,GAAIvgR,GAAG,IAAIkS,EAA8C,OAAxClS,EAAEA,IAAS,GAANA,EAAEkS,IAAOA,EAAElS,EAAEuvB,EAAEy4L,KAAKhoN,EAAEA,EAAEwgR,GAAItuQ,EAAElS,EAAEkS,IAAUlS,EAAEA,CAAC,CAC5E,SAASirL,GAAIjrL,EAAEkS,GAAG,QAAGlS,EAAEynN,OAAMznN,EAAEigM,GAAG/tL,MAAsBlS,EAAEygR,GAAGvuQ,IAAU,EAAK,CAC5E,SAASwuQ,GAAI1gR,EAAEkS,GAAsD,OAAnD04M,GAAI14M,EAAE,uCAAuClS,EAAEkS,EAAEA,EAASlS,CAAC,CAC7E,SAAS2gR,GAAI3gR,EAAEkS,EAAEqd,GAAS,IAAIxvB,EAAsC,OAAhDmkN,MAAYnkN,EAAE6gR,IAAI5gR,EAAEkS,GAAGqd,GAAKxvB,GAlvBhD,SAAaC,GAAG,QAAI6gR,KAAwB5tC,GAAI4tC,IAAI7gR,EAAE,CAkvBH8gR,CAAI9gR,KAAKD,EAAE,MAAaA,CAAC,CAC5E,SAASghR,GAAI/gR,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAE,IAAIA,EAAEvF,EAAE27M,KAAKp2M,EAAEg2M,MAAuBylE,IAAdrjG,GAAGp4K,EAAEk2M,KAAK,IAAUvpM,EAAEqd,EAAG,CAC7E,SAAS0xP,GAAIjhR,EAAEkS,GAAG,IAAMnS,EAAE,IAAIA,EAAEmS,EAAEypM,KAAK57M,EAAEw7M,MAAuB2lE,IAAIlhR,EAAlB29K,GAAG59K,EAAE07M,KAAK,IAAY,EAAE,EAAG,CAC7E,SAASuqC,GAAIhmP,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEC,EAAED,EAAEmS,EAAES,GAAG4c,GAAExvB,EAAEC,EAAE2S,EAAE4c,GAAIrd,EAAES,GAAGsgI,EAAK3/H,KAAKugB,IAAI9zB,EAAEmS,EAAES,GAAG4c,EAAE,EAAE,CAC7E,SAAS4xP,GAAInhR,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAA8B,OAA5BA,EAAEvF,EAAE0S,EAAE3S,EAAEC,EAAED,GAAEwvB,EAAE6xP,IAAIphR,EAAEkS,GAAE,IAAeA,GAAG3M,GAAGgqB,EAAEvvB,GAAGD,CAAC,CAC7E,SAASshR,GAAIrhR,EAAEkS,GAAqC,OAAlCk7L,GAAIptM,EAAEuF,EAAE2M,IAAIwzL,IAAI1lM,EAAEuF,EAAE2M,EAAE,IAAIovQ,IAAIpvQ,IAAWyrK,GAAGk5C,GAAI72N,EAAEuF,EAAE2M,GAAG,IAAI,CAC7E,SAASqvQ,GAAIvhR,EAAEkS,EAAEqd,EAAExvB,GAA+B,OAA5B8gK,GAAI7gK,GAAG6gK,GAAI3uJ,GAAG2uJ,GAAItxI,GAAGsxI,GAAI9gK,GAAU,IAAI+zO,GAAI9zO,EAAEkS,EAAE,IAAIsjI,EAAI,CAC7E,SAASo+E,GAAI5zN,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKk9Q,KAAKl9Q,KAAKtE,EAAEkS,EAAE5N,KAAK4N,EAAElS,EAAEsE,KAAKirB,EAAE,IAAIqsM,GAAIt3N,KAAK4N,EAAEqd,EAAExvB,EAAE,CAC5E,SAASwyO,GAAIvyO,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAGmkN,GAAIlgP,KAAKuF,KAAK4N,EAAEnS,EAAEwF,EAAEu1B,GAAax2B,KAAKirB,EAAEvvB,EAAEsE,KAAK4N,EAAEqd,CAAC,CAC5E,SAASkjN,GAAIzyO,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAGmkN,GAAIlgP,KAAKuF,KAAK4N,EAAEnS,EAAEwF,EAAEu1B,GAAax2B,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAEuvB,CAAC,CAG5E,SAASkyP,GAAIzhR,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAqB,OAAnBA,EAAK8kL,IAAIrqL,EAAEkS,EAAEA,IAAqBoiN,IAAIC,GAAIv0N,EAAEuF,GAAGgqB,GAAlB,IAAoB,CAC7E,SAASmyP,GAAI1hR,EAAEkS,GAAG,IAAIqd,EAAE,OAAOA,EAAEvvB,EAAE22N,GAAGzkN,KAAM,EAAElS,EAAEkI,GAAGqnB,GAAE,GAAK,GAAM3E,IAAI5qB,EAAEkS,GAAE,EAAK,CAE7E,SAAS6rJ,KAAMA,GAAIrpB,EAAIitI,IAAIC,IAAIA,IAAI14E,GAAI,IAAIxE,IAAKmvD,MAAMguB,OAAO9tB,MAAM+tB,MAAMC,IAAI,CAI7E,SAASC,GAAIhiR,GAAG,MAAOA,EAAEA,GAAG,IAAI08N,GAAI18N,EAAEuvB,EAAE,IAAI23I,GAAIlnK,IAAK,OAAO,EAAO,OAAO,CAAI,CAC9E,SAASiiR,GAAGjiR,GAAe,OAAN+jL,GAAG/jL,GAAM6pL,GAAG7pL,EAAE,KAAQ29K,GAAG39K,EAAE,KAAqB,IAAI4hK,GAAG5hK,EAAE,CAE9E,SAAS2/J,KAikBT,IAAY3/J,EAAEkS,EAAEqd,EAAExvB,EAjkBH4/J,GAAIjrB,EAAIwtI,IAAI,IAAI1zH,GAAI2zH,IAAI,IAAI1zH,GAAYsR,MAikB3C//J,EAjkBiDoiR,IAikB/ClwQ,EAjkBoDgwQ,IAikBlD3yP,EAjkBsD8yP,IAikBpDtiR,EAjkBwDoiR,IAikBrD/gC,KAjkB0BkhC,IAikBd,IAAI1lG,GAAG2B,GAAGC,GAAGkQ,IAAG,GAAG4yD,IAAI,GAAG,EAAE,EAAE2Q,IAAGjyP,EAAEkS,GAAG,IAAI8sL,GAAGh/L,EAAEkS,KAAK+/O,IAAG1iO,EAAExvB,GAAG,IAAIi/L,GAAGzvK,EAAExvB,MAjkBxB,CAC9E,SAAS6sQ,KAAMA,GAAIl4H,EAAIo4H,IAAI,IAAI54D,GAAI,cAAc,GAAG64D,IAAI,IAAI74D,GAAI,YAAY,EAAE,CAE9E,SAASquE,GAAIviR,GAAGA,EAAEA,EAAEi+K,GAAGmV,IAAGsW,IAAI,GAAG1pM,EAAEkS,EAAE,EAAE,GAAG,GAAGlS,EAAEuvB,EAAE0uJ,GAAGmV,IAAGsW,IAAI,GAAG1pM,EAAEkS,EAAE,GAAG,GAAGlS,EAAED,EAAE,CAAC,CAE7E,SAASyiR,GAAIxiR,EAAEkS,GAAG,GAAQ,MAALlS,EAAE2S,GAAST,GAAGlS,EAAEhC,EAAE,MAAMk1K,GAAI,IAAI2rC,GAAI3sM,EAAElS,EAAEhC,IAAI,OAAOgC,EAAE2S,EAAET,EAAE,CAC9E,SAASuwQ,GAAIziR,EAAEkS,EAAEqd,GAAY,GAATmzP,GAAI1iR,EAAEuvB,GAAS,MAAHA,IAAUvvB,EAAEwjQ,GAAGj0O,GAAI,MAAM2jJ,GAAI,IAAI2B,IAAK,OAAOtlJ,CAAC,CAC9E,SAASozP,GAAI3iR,GAAG,IAAIkS,EAAE,GAAGlS,EAAE4iR,KAAM,IAAI1wQ,EAAElS,EAAEhC,EAAE,EAAEkU,GAAG,IAAIA,EAAGm6K,GAAIrsL,EAAEkS,GAAI,OAAO2jP,GAAI71P,EAAE,CAC9E,SAAS6iR,GAAI7iR,GAAG,IAAIkS,EAAEqd,EAAE,IAAIvvB,EAAEkS,EAAG,OAAO,KAAW,IAANqd,EAAEvvB,EAAEkS,EAAQA,EAAEqd,EAAEvvB,EAAE,IAAIuvB,EAAErd,EAAE,OAAOqd,CAAC,CAC/E,SAASuzP,GAAI9iR,EAAEkS,GAAG,IAAIqd,EAAW,OAAPk/N,GAAIv8O,IAAUqd,EAAkBs2J,GAAb7lL,EAAEkM,MAAM,EAAEgG,GAAQlS,IAAM9B,OAAOgU,EAAEqd,CAAC,CAC/E,SAAS+wL,GAAItgN,EAAEkS,EAAEqd,EAAExvB,GAAYgyO,KAAHhyO,EAAUA,GAAEiyO,IAAsB+wC,IAAb/iR,EAAEkM,MAAMgG,EAAEqd,GAASvvB,EAAEkS,EAAEqd,GAAGrd,EAAEnS,EAAE,CAC/E,SAASijR,GAAIhjR,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,OAAO2M,EAAE,EAAE0Y,IAAI5qB,EAAEuvB,EAAExvB,GAAG49K,GAAGpuJ,EAAE,IAAIwzO,KAAKkgB,GAAGjjR,EAAEA,EAAEijQ,KAAK/wP,EAAEnS,EAAEwF,EAAE,CAG9E,SAAS29Q,GAAIljR,EAAEkS,GAAG,GAAGA,EAAElS,EAAG,MAAMkzK,GAAI,IAAIiK,GAAG0/E,MAAMl1E,GAAI3nL,EAAEA,EAAEkS,GAAGA,EAAElS,EAAEA,GAAGA,EAAEoS,IAAIpS,EAAEoS,EAAEF,EAAE,CAC/E,SAASsxO,GAAIxjP,EAAEkS,GAAGmrM,GAAIt+M,KAAKuF,KAAK4N,EAAEy/P,MAAa,MAARz/P,EAAE0/P,MAAa/wG,GAAI7gK,GAAGsE,KAAKtE,EAAEA,EAAEsE,KAAKirB,EAAErd,CAAC,CAC9E,SAASs1N,GAAGxnO,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAwC,OAAtCA,EAAEmS,EAAElS,EAAEuvB,EAAE2rJ,KAAK+D,KAAK,EAAE1vJ,EAAErd,EAAElS,EAAEuvB,EAAE2rJ,KAAK+D,KAAYk0F,GAAGnzQ,EAAED,EAAEwvB,EAAE,CAC/E,SAASwkP,KAAMA,GAAIr/H,EAAIu/H,IAAI,IAAI9kE,GAAIy+C,IAAI,GAAGsmB,IAAI,IAAI/kE,GAAIgyD,IAAI,GAAGgT,IAAI,IAAIhlE,GAAI2+C,IAAI,EAAE,CAC/E,SAASrzB,KAAMA,GAAI/lF,EAAIgmF,IAAI,IAAIhtB,GAAI,MAAM,GAAGy1E,IAAI,IAAIlgE,GAAImgE,IAAI,IAAI39D,GAAI49D,IAAI,IAAIngE,EAAG,CAC/E,SAASogE,KAAMA,GAAI5uI,EAAI6uI,IAAInlE,IAAIqc,KAAMl8C,GAAGC,GAAGglG,IAAG,GAAGv3C,IAAI,IAAI,EAAE,CAACvR,IAAIyoD,IAAIC,IAAIC,OAAO,CAC/E,SAASI,KAAMA,GAAI/uI,EAAIgvI,IAAItlE,IAAIulE,KAAMplG,GAAGC,GAAGolG,IAAG,GAAG33C,IAAI,IAAI,EAAE,CAAC43C,IAAIC,IAAIC,IAAIC,OAAO,CAC/E,SAASC,KAAMA,GAAIvvI,EAAIwvI,IAAI9lE,IAAI+lE,KAAM5lG,GAAGC,GAAG4lG,IAAG,GAAGn4C,IAAI,IAAI,EAAE,CAACo4C,IAAIC,IAAIC,IAAIC,OAAO,CAC/E,SAASC,KAAMA,GAAI/vI,EAAIgwI,IAAItmE,IAAIumE,MAAMpmG,GAAGC,GAAGomG,IAAG,GAAG34C,IAAI,IAAI,EAAE,CAAC44C,IAAIC,IAAIC,IAAIC,OAAO,CAC/E,SAASC,KAAMA,GAAIvwI,EAAIwwI,IAAI9mE,IAAI+mE,MAAM5mG,GAAGC,GAAG4mG,IAAG,GAAGn5C,IAAI,IAAI,EAAE,CAACo5C,IAAIC,IAAIC,IAAIC,OAAO,CAC/E,SAASC,KAAMA,GAAI/wI,EAAIgxI,IAAItnE,IAAIy1C,MAAMt1E,GAAGC,GAAGid,IAAG,GAAGwwC,IAAI,IAAI,EAAE,CAAC05C,IAAI9D,IAAI+D,IAAI9xB,OAAO,CAC/E,SAAS+xB,KAAMA,GAAInxI,EAAIoxI,IAAI1nE,IAAI8zD,KAAM3zF,GAAGC,GAAGunG,IAAG,GAAG95C,IAAI,IAAI,EAAE,CAACkmC,IAAI6T,IAAIC,IAAIC,OAAO,CAC/E,SAASC,KAAMA,GAAIzxI,EAAI0xI,IAAIhoE,IAAIioE,MAAM9nG,GAAGC,GAAG8nG,IAAG,GAAGr6C,IAAI,IAAI,EAAE,CAACs6C,IAAIC,IAAIC,IAAIC,OAAO,CAC/E,SAASC,KAAMA,GAAIjyI,EAAIkyI,IAAIxoE,IAAI7+B,KAAMhB,GAAGC,GAAGqoG,IAAG,GAAG56C,IAAI,IAAI,EAAE,CAACgZ,IAAIzlE,IAAIG,IAAImnG,OAAO,CAC/E,SAASC,KAAMA,GAAIryI,EAAIsyI,IAAI5oE,IAAI6oE,MAAM1oG,GAAGC,GAAG0oG,IAAG,GAAGj7C,IAAI,IAAI,EAAE,CAACk7C,IAAIC,IAAInmE,IAAIC,OAAO,CAC/E,SAASmmE,KAAMA,GAAI3yI,EAAI4yI,IAAIlpE,IAAImpE,KAAMhpG,GAAGC,GAAGgpG,IAAG,GAAGv7C,IAAI,IAAI,EAAE,CAACw7C,IAAIC,IAAIC,IAAIC,OAAO,CAC/E,SAASC,KAAMA,GAAInzI,EAAIozI,IAAI1pE,IAAI2pE,MAAMxpG,GAAGC,GAAGwpG,IAAG,GAAG/7C,IAAI,IAAI,EAAE,CAACg8C,IAAIC,IAAIC,IAAIC,OAAO,CAC/E,SAASC,KAAMA,GAAI3zI,EAAI4zI,IAAIlqE,IAAImqE,KAAMhqG,GAAGC,GAAGl2I,IAAG,GAAG2jM,IAAI,IAAI,EAAE,CAACu8C,IAAIC,IAAIC,IAAIC,OAAO,CAC/E,SAASC,KAAMA,GAAIl0I,EAAIm0I,IAAIzqE,IAAI0qE,MAAMvqG,GAAGC,GAAGuqG,IAAG,GAAG98C,IAAI,IAAI,EAAE,CAAC+8C,IAAIC,IAAIC,IAAIC,OAAO,CAC/E,SAASC,KAAMA,GAAI10I,EAAI20I,IAAIjrE,IAAIkZ,MAAM/4C,GAAGC,GAAG8qG,IAAG,GAAGr9C,IAAI,IAAI,EAAE,CAACs9C,IAAIhyD,IAAIiyD,IAAIC,OAAO,CAC/E,SAAS/5F,KAAMA,GAAIh7C,EAAI2rB,MAAMqpH,IAAIpzG,IAAIqzG,IAAIpzG,IAAIqzG,IAAI,IAAI/kH,GAAIyR,KAAKuzG,IAAI,IAAIhlH,GAAI0R,IAAI,CAC9E,SAAS8yF,KAAMA,GAAI30H,EAAI60H,IAAI,IAAI9xI,GAAIqyJ,IAAI,GAAGtgB,IAAI,IAAI/xI,GAAI,uBAAuB,EAAE,CAG/E,SAASouD,GAAG7lL,EAAEkS,GAAwD,OAA9C,IAAPwmO,GAAGxmO,IAAQqsK,GAAGv1F,GAAG92E,GAAGA,EAAEynO,GAAGznO,EAAEymO,iBAAiBD,GAAGxmO,GAAGlS,GAAUA,CAAC,CAC9E,SAAS8vN,GAAI9vN,EAAEkS,GAAG,IAAIqd,EAAe,OAAO,IAApBA,EAAE42K,GAAInmM,EAAEkS,EAAE,MAA0B2iO,GAAI70O,EAAEuvB,IAAU,EAAI,CAChF,SAASw6P,GAAI/pR,EAAEkS,GAAG,IAAIqd,EAAuB,OAArBA,EAAEouJ,GAAG0zF,GAAIrxQ,EAAEuF,EAAE2M,GAAG,OAAW82M,GAAIz5L,GAAUA,EAAEhqB,GAAS,IAAI,CAChF,SAASykR,GAAIhqR,GAAG,IAAIkS,EAAE,OAAG4tM,GAAI9/M,KAAIkS,EAAE,EAAElS,GAAM2P,MAAMuC,IAAWA,EAAUsxN,GAAIg6B,GAAGx9P,GAAG,CAChF,SAASmmM,GAAInmM,EAAEkS,EAAEqd,GAAG,KAAKA,EAAEvvB,EAAEuvB,EAAErxB,SAASqxB,EAAG,GAAGsyN,GAAI3vO,EAAElS,EAAEuvB,EAAEA,IAAK,OAAOA,EAAG,OAAQ,CAAC,CAChF,SAASy3O,GAAIhnQ,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAA8C,OAA5Cg6L,GAAI/5L,IAAGD,EAAE,IAAI22I,IAAM12I,EAAEkS,EAAElS,EAAEA,EAAE2hM,GAAG,IAAI0M,GAAItuM,EAAEwvB,IAAWxvB,EAAEC,CAAC,CAEhF,SAASu3P,GAAIv3P,GAAG,IAAMuvB,EAAkD,OAAhDA,EAAEouJ,GAAG0pB,GAAIrnM,EAAEoS,EAAE,GAAG,IAAMurK,GAAG4qB,IAAIh5K,GAAGy4K,MAAM0/C,MAAM,GAAY,CAChF,SAAS8qB,GAAGxyQ,GAAG,IAAIkS,EAAE,IAAI8+N,GAAGhxO,GAAI,MAAMkzK,GAAI,IAAImC,IAA0B,OAArBr1K,EAAEuF,EAAE,EAAE2M,EAAElS,EAAED,EAAEC,EAAED,EAAE,KAAYmS,CAAC,CAChF,SAASoyP,GAAGtkQ,EAAEkS,GAAG,IAAIqd,EAAEjrB,KAAKw2B,EAAE96B,EAAEsE,KAAK4N,EAAEA,EAAEqd,EAAEouJ,GAAG+5B,GAAI13M,EAAEkS,EAAEA,GAAG,KAAK5N,KAAKirB,EAAGA,EAAOA,EAAErd,EAAP,IAAQ,CAChF,SAAS+3Q,KAAMjpD,KAAM18N,KAAK4N,EAAE,IAAIsgK,GAAIluK,KAAKw2B,EAAE,IAAI03I,GAAIluK,KAAKqO,EAAE,IAAI6/J,GAAIluK,KAAKiB,EAAE,IAAIitK,EAAG,CAChF,SAAS03G,GAAIlqR,EAAEkS,GAAG5N,KAAKtE,EAAEi+K,GAAGkuE,IAAGC,IAAI,GAAGpsP,EAAEA,EAAEuvB,EAAErxB,OAAO,EAAE,GAAGu8P,IAAIz6P,EAAEA,EAAEsE,KAAKtE,GAAGsE,KAAK4N,EAAEA,CAAC,CAChF,SAASi4Q,GAAInqR,GAAG,IAAIkS,EAAE,IAAIA,EAAElS,EAAEoD,EAAE,EAAE8O,EAAElS,EAAEuvB,EAAEvvB,EAAEuvB,EAAErxB,SAASgU,IAAKyrK,GAAG0pB,GAAIrnM,EAAEuvB,EAAEvvB,EAAEkS,GAAG,IAAI9O,CAAE,CAChF,SAASgnR,GAAIpqR,GAAG,IAAIkS,EAAc,OAAZA,EAAElS,EAAEqqR,QAAoB,GAANrqR,EAAED,GAAO49K,GAAGzrK,EAAE,IAAIo2O,GAAGtoP,GAAKA,EAAEhC,GAAGgC,EAAEhC,EAAEguL,IAAI,CAC/E,SAASs+F,GAAItqR,GAAGknN,GAAG5iN,MAAMA,KAAKqO,EAAG3S,EAAOwrP,GAAGxrP,EAAEA,EAAEuqR,MAAZ,KAAkBjmR,KAAKw2B,EAAE96B,EAAEiuN,GAAG3pN,MAAMA,KAAKsD,IAAI,CAChF,SAASyvO,GAAIr3O,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,GAAGq5O,GAAIjtP,KAAKuF,KAAK4N,EAAEnS,EAAEwF,EAAEu1B,EAAEnoB,GAAarO,KAAKirB,EAAEvvB,EAAEsE,KAAK4N,EAAEqd,CAAC,CAChF,SAASw8M,GAAI/rO,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAsC,OAAnCs7J,GAAI7gK,GAAG6gK,GAAI3uJ,GAAG2uJ,GAAItxI,GAAGsxI,GAAI9gK,GAAG8gK,GAAIt7J,GAAU,IAAIuuO,GAAI9zO,EAAEkS,EAAEnS,EAAE,CAChF,SAASqwN,GAAIpwN,EAAEkS,GAAG,GAAGA,EAAE,EAAG,MAAMghK,GAAI,IAAIgO,GAAIizD,IAAIjiO,IAAe,OAAXmiO,GAAIr0O,EAAEkS,EAAE,GAAUm1L,GAAIrnM,EAAEoS,EAAEF,EAAE,CAChF,SAASqpM,GAAGv7M,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIC,EAAG,MAAMkzK,GAAI,IAAI2O,GAAIy6E,IAAGpqP,EAAEqsK,GAAGC,GAAGsQ,IAAG,GAAG3Q,IAAI,EAAE,EAAE,CAAC5uJ,EAAExvB,MAAO,CACjF,SAASyqR,GAAIxqR,EAAEkS,GAAG,OAAO2vO,GAAI3vO,EAAEm1L,GAAIrnM,EAAE86B,EAAE,KAAK+mN,GAAI3vO,EAAEm1L,GAAIrnM,EAAE86B,EAAE,KAAK+mN,GAAI3vO,EAAEm1L,GAAIrnM,EAAE86B,EAAE,GAAG,CAChF,SAAS2vP,GAAIzqR,EAAEkS,GAAG2qN,GAAIl/C,GAAGA,GAAG39K,EAAE86B,EAAE,IAAIkrK,IAAIjmC,MAAM2qH,MAAM,MA+vBpD,SAAa1qR,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAmC,IAAnDg6L,KAAkB/0N,EAAE4iR,GAAI3iR,GAAGuF,EAAE2M,EAAEouM,GAAIvgN,EAAE,EAAEA,EAAE7B,OAAOqH,GAAOgqB,EAAE,EAAEA,EAAExvB,EAAE7B,OAAOqxB,IAAqBA,IAAhBuL,EAAE6vP,IAAI3qR,EAAED,EAAEwvB,GAAGA,KAASq7P,GAAI5qR,EAAEuvB,EAAEuL,EAAG,CA/vBpE+vP,CAAIvoC,GAAI3kE,GAAG39K,EAAE86B,EAAE,KAAK5oB,EAAE,CAChF,SAASqiN,GAAIv0N,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAgD,QAAlCA,GAAZwvB,EAAEouJ,GAAGzrK,EAAE,MAAS44Q,OAASv7P,EAAEw7P,GAAGhrR,EAAE,IAAIs6M,GAAIr6M,EAAEkS,IAAWnS,CAAC,CAChF,SAASy2P,GAAIx2P,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAgD,QAAlCA,GAAZwvB,EAAEouJ,GAAGzrK,EAAE,MAASmsL,OAAS9uK,EAAEssM,GAAG97N,EAAE,IAAIq5P,GAAIp5P,EAAEkS,IAAWnS,CAAC,CAChF,SAASirR,GAAIhrR,GAAyD,OAAlDA,EAAEkS,IAAGlS,EAAEkS,EAAE,IAAIy7N,GAAI3tO,EAAEyrL,IAAGzrL,IAAIA,EAAEA,IAAIA,EAAEA,EAAE,IAAIi5N,GAAIj5N,EAAEA,KAAWA,EAAEkS,CAAC,CAChF,SAASijQ,KAAMA,GAAIzgI,EAAI2gI,IAAI,IAAI9lE,GAAI,KAAK,GAAG+lE,IAAI,IAAI/lE,GAAI,IAAI,GAAGgmE,IAAI,IAAIhmE,GAAI,IAAI,EAAE,CAChF,SAAS+kE,KAAMA,GAAI5/H,EAAI8/H,IAAI,IAAIplE,GAAI,MAAM,GAAGqlE,IAAI,IAAIrlE,GAAI+xD,IAAI,GAAGuT,IAAI,IAAItlE,GAAI67E,IAAI,EAAE,CACjF,SAASpT,KAAMA,GAAInjI,EAAIqjI,IAAI,IAAIjmE,GAAIg4E,IAAI,GAAG9R,IAAI,IAAIlmE,GAAI,MAAM,GAAGmmE,IAAI,IAAInmE,GAAIm5E,IAAI,EAAE,CACjF,SAASlhB,KAAMA,GAAIr1H,EAAIu1H,IAAI,IAAI13D,GAAI,cAAc,GAAG23D,IAAI,IAAI33D,GAAI,cAAc,EAAE,CAChF,SAAS4qD,KAAKA,GAAGzoH,EAAIw2I,IAAGxrE,GAAG+jB,IAAIA,IAAI,QAAQ0nD,IAAGzrE,GAAG,EAAE,EAAE0rE,KAAKC,IAAGnc,GAAG,GAAGA,GAAG,GAAG9R,IAAG8R,GAAG,EAAE,CACjF,SAASoc,GAAItrR,EAAEkS,EAAEqd,GAAGvvB,EAAEA,EAAEuvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GA20E1C,SAAan+K,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAIoN,EAAElP,EAAI2O,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEI,EAAEuvB,EAAE,EAAEvvB,EAAEkS,EAAE,EAAEnS,EAAE,EAAEmS,EAAEqd,EAAEvvB,EAAEuvB,EAAErxB,OAAO,EAAEgC,EAAE,IAAI4T,EAAEyb,EAAEosL,KAAK7nM,EAAEynM,MAAM,CAAkD,GAAJ37M,EAAE,EAA/B6D,GAAhBpC,EAAEs8K,GAAG7pK,EAAE2nM,KAAK,KAAQrpM,IAAIqtK,MAAMM,MAAM1+K,EAAE+Q,GAAGy0L,IAAa,CAA6B,KAA5B7zL,EAAE2qK,GAAG4qB,IAAIlnM,GAAG2mM,MAAM2qE,MAAM,KAAW,SAAS/yQ,GAAG2rR,IAAIvrR,EAAED,EAAEsB,EAAE2R,EAAE,KAAK,CAAC,IAAIZ,EAAE,IAAIuzJ,GAAItkK,EAAEsR,GAAGP,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAQ,CAAuB,IAANqH,EAAdo4K,GAAGC,GAAIxrK,GAAG,IAAQrS,GAAO/B,EAAEuxB,GAAGrd,EAAEqd,EAAE,CAACwmJ,GAAI/1K,EAAEA,EAAEqB,GAAG,SAASnB,CAAC,CAAMN,GAAGI,EAAE2S,EAAEpN,EAAEnC,EAAG,CAAC,IAAIuP,EAAE,IAAIgzJ,GAAItkK,EAAEkE,GAAGoN,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAQ,CAAuB,IAANqH,EAAdo4K,GAAGC,GAAIjrK,GAAG,IAAQ4c,GAAOvxB,EAAEuxB,GAAGrd,EAAEqd,EAAE,CAACwmJ,GAAI/1K,EAAEA,EAAEqB,GAAG,SAASnB,CAAC,CAAMN,GAAGI,EAAE2S,EAAEpN,EAAEnC,EAAG,CAAC,CAAI/B,EAAEkE,EAAEgqB,EAAErxB,OAAOmD,EAAEsR,EAAE4c,EAAErxB,OAAO,GAAG8B,EAAE86B,EAAEz5B,EAAE+B,GAAGxD,GAAGyB,EAAEkE,EAAEgqB,EAAErxB,OAAOmD,EAAEsR,EAAE4c,EAAErxB,QAAQ8B,EAAEuvB,EAAE0jH,EAAK3/H,KAAKsgB,IAAI5zB,EAAEuvB,EAAEvvB,EAAE86B,EAAEz5B,EAAE+B,IAAIpD,EAAEkS,EAAE+gI,EAAK3/H,KAAKugB,IAAI7zB,EAAEkS,EAAElS,EAAE86B,EAAEz5B,EAAE+B,KAASK,IAAIzD,EAAE86B,EAAEz5B,EAAE+B,GAAGxD,EAAE,CAAC,CA30ErjB4rR,CAAIxrR,EAAEkS,EAAEqd,GAAiB,GAAdvvB,EAAEA,EAAEuvB,EAAErxB,QA+kE9D,SAAa8B,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAyC,IAAvC1B,EAAEpS,EAAEuF,EAAE2M,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAG,EAAEpF,EAAEkU,EAAEqd,EAAEvvB,EAAEuvB,EAAErxB,OAAO,EAAMuF,EAAE,IAAIkiK,GAAI3lK,EAAEA,GAAGyD,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAQ,CAAyB,IAAxByU,EAAEgrK,GAAGC,GAAIn6K,GAAG,IAAIqQ,EAAE,EAAEgnB,EAAE,EAAMv1B,EAAE0lN,GAAG9kH,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,CAAC,IAAIxV,GAAIh2J,GAAG,IAAIk2J,GAAIl2J,OAAOy4M,IAAG7lN,KAAKxF,EAAE49K,GAAGwtC,GAAG5lN,GAAG,KAASvH,EAAEuxB,GAAGrd,EAAEqd,IAAGzb,GAAGg2M,GAAI9pN,EAAED,EAAE/B,GAAG,IAAI88B,GAAGvL,EAAEzb,EAAEgnB,GAAEz5B,EAAEsR,EAAEP,KAAMqtK,MAAMC,KAAU1/K,EAAE86B,EAAEnoB,EAAEvP,GAAXmsB,EAAEnd,EAAYpS,EAAEuvB,EAAEA,EAAavvB,EAAEkS,GAAGlU,EAAEuxB,GAAIluB,GAAGu+K,MAAW5/K,EAAE86B,EAAEnoB,EAAEvP,GAAXmsB,EAAEnd,EAAYpS,EAAEkS,EAAEqd,EAAavvB,EAAEuvB,GAAGvxB,EAAEuxB,GAAI,CAAC,CA/kEtTk8P,CAAIzrR,EAAEkS,EAAE,CACjF,SAASw5Q,GAAI1rR,GAAG,IAAIkS,EAAEqd,EAAmD,OAAfsmN,GAAI71O,EAAE,EAAxCuvB,EAAEvvB,EAAE9B,OAAOgU,EAAE+rK,GAAGo3C,IAAGC,IAAI,GAAG/lM,EAAE,GAAG,GAAe,GAAUrd,CAAC,CACjF,SAASy5Q,GAAI3rR,GAAG,IAAIkS,EAAgD,OAA1ClS,EAAE2lG,OAAMzzF,EAAE4kO,GAAI92O,EAAEgoN,MAAMhoN,EAAE8iP,KAAK9iP,EAAEm7K,KAAKywG,GAAG15Q,IAAUlS,EAAE6rR,IAAI,CACjF,SAASC,GAAI9rR,GAAG,IAAIkS,EAAqD,OAA7B,OAAtBA,EAAE65Q,GAAGthE,GAAIzqN,EAAE,QAAiBgsR,IAAIhsR,GAAGkS,EAAE65Q,GAAGthE,GAAIzqN,EAAE,MAAYkS,CAAC,CACjF,SAAS+5Q,GAAIjsR,EAAEkS,GAAG,IAAIqd,EAAe,OAAbA,EAAE28P,IAAIlsR,EAAED,EAAEmS,KAAa,EAAEi6Q,IAAInsR,EAAEuvB,GAAE,GAAK,GAAM3E,IAAI5qB,EAAEkS,GAAE,EAAK,CACjF,SAASk6Q,GAAIpsR,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAoB,OAAhCukM,KAAc/0K,EAAEgzO,GAAIviQ,GAAGD,EAAEwiQ,GAAIrwP,KAAYqd,KAAKxvB,IAAIssR,IAAI98P,EAAEluB,EAAEtB,EAAEsB,EAAE,CAKhF,SAASirR,GAAItsR,IAAKsE,KAAK0P,EAAoB1P,KAAK0P,GAAtBizM,KAAMA,KAAMgjB,MAAasiD,GAAIvsR,EAAEgU,EAAoBhU,EAAEgU,GAAnBizM,KAAMA,KAAMgjB,KAAS,CAGjF,SAASuiD,GAAIxsR,EAAEkS,GAAGu6Q,IAAI,IAAI/yI,GAAIgzI,IAAIx6Q,EAAQyrK,IAANgvG,IAAI3sR,GAASkS,EAAE,IAAIqtQ,GAAIoN,IAAIF,IAAI,MAAMG,IAAID,IAAI,CACjF,SAASE,GAAI7sR,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAiD,OAA/CA,EAAEC,EAAE2S,EAAET,GAAGq4M,GAAIvqN,EAAEkS,EAAElS,EAAEs7K,GAAGppK,EAAEqd,IAAIvvB,EAAE8sR,GAAG56Q,EAAEqd,EAAExvB,GAAGC,EAAEi4O,KAAYl4O,CAAC,CACjF,SAASgtR,GAAI/sR,EAAEkS,GAAG,IAAIqd,EAAY,OAAVA,EAAEvvB,EAAEgtR,GAAG96Q,KAAS,IAAGlS,EAAEo/O,GAAG7vN,IAAU,EAAuB,CACjF,SAASmlO,GAAI10P,GAAG,IAAIkS,EAAmD,OAA9ClS,EAAED,GAAGC,EAAE0S,IAAGR,EAAE6U,IAAI/mB,GAAGA,EAAEuF,IAAI2M,GAAGA,EAAE+6Q,MAAMC,IAAIltR,EAAED,EAAEmS,GAASlS,EAAEuF,CAAC,CACjF,SAASg9N,GAAGviO,EAAEkS,GAAG,IAAIqd,EAAsB,IAApBw0J,GAAG/jL,GAAG+jL,GAAG7xK,GAAGqd,GAAE,EAAYrd,EAAEqpM,MAAMhsL,GAAIvvB,EAAE6nN,GAAG31M,EAAEupM,MAAM,OAAOlsL,CAAC,CAClF,SAASsnM,GAAI72N,EAAEkS,GAAG,IAAIqd,EAAuB,OAArBA,EAAEouJ,GAAG+5B,GAAI13M,EAAEuF,EAAE2M,GAAG,OAAW62M,GAAI/oN,EAAEuvB,GAAUA,EAAEhqB,GAAS,IAAI,CAClF,SAAS4gN,GAAGnmN,GAAG,IAAIkS,EAAEqd,EAAkB,OAAhBrd,EAAElS,EAAE,GAAG,EAAe,IAAbuvB,EAAEvvB,EAAE,IAAmB,GAAGkS,EAAYA,EAAE,IAAQqd,CAAE,CAClF,SAAS49P,GAAIntR,EAAEkS,GAAgD,OAArC4tO,GAAI9/O,GAAwC,IAAIoqN,GAAIpqN,EAA1B,IAAIu9N,GAArB,IAAIkmB,GAAIvxO,EAAElS,EAAEA,IAAmC,CAClF,SAAS21O,GAAG51O,EAAEC,GAAG,IAAIkS,EAAEnS,EAAEC,EAAEA,GAAOuvB,GAAGwgO,KAAKC,YAAW99O,GAAG,OAAOqd,EAAEA,EAAErd,GAAG+9O,UAAU/9O,EAAE,CAGlF,SAASwmO,GAAG14O,GAAG,OAAiC,MAA1BA,EAAEotR,uBAA6B,GAAGptR,EAAEotR,sBAAsB,CAChF,SAASC,GAAIrtR,GAAG,IAAIkS,EAAsD,OAAf,OAArCA,EAAgB,GAAdlS,EAAEkS,EAAEqd,EAAErxB,OAAU,KAAKmpM,GAAIrnM,EAAEkS,EAAE,KAAYo7Q,GAAIttR,EAAE,GAAUkS,CAAC,CAClF,SAASy3L,GAAG3pM,EAAEkS,GAAG,KAAMA,EAAE,GAAGlS,EAAE9B,QAAQohN,GAAI,UAAU8R,IAAIl4B,GAAIl5L,EAAEkS,EAAE,OAAO,KAAKA,EAAE,EAAG,CACjF,SAASq7Q,GAAIvtR,EAAEkS,GAAG5N,KAAKiB,EAAE2M,EAAE5N,KAAKtE,EAAEwtR,GAAIxtR,GAAGsE,KAAKtE,EAAE,GAAIsE,KAAKw2B,EAAEg+J,GAAI94L,GAAKsE,KAAKirB,EAAEk+P,IAAIztR,EAAG,CAClF,SAAS0tR,GAAI1tR,EAAEkS,EAAEqd,EAAExvB,GAAGmkN,MAAMhyC,GAAInzK,KAAKuF,KAAK,IAAIA,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAEkS,EAAE5N,KAAKvE,EAAEwvB,EAAEjrB,KAAK4N,EAAEnS,CAAC,CACjF,SAAS4tR,GAAG3tR,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAO,IAALxF,EAAE,GAAOwF,EAAE,EAAEA,EAAEgqB,EAAE,EAAEhqB,IAAK2M,EAAEnS,IAAIC,EAAEA,GAAG,KAAOD,GAAG,GAAGC,EAAEA,GAAGkS,CAAC,CAEjF,SAAS2gQ,GAAI7yQ,EAAEkS,GAAG,IAAIqd,EAAuB,MAAnBvvB,EAAED,IAAIC,EAAEuvB,EAAErd,GAAGqd,EAAErd,EAAE,EAAQqd,EAAEvvB,EAAEA,EAAE9B,UAAU8B,EAAEA,EAAEuvB,GAAGA,GAAGA,GAAGA,CAAE,CAElF,SAASq+P,GAAI5tR,GAAG,IAAIkS,EAAEqd,EAAqD,OAAnDrd,EAAElS,EAAE,MAAIuvB,GAAGm5M,KAAMC,KAAKz2N,MAAQqd,EAAEo5M,IAAIz2N,GAAG,IAAIyyJ,GAAI3kK,IAAWuvB,CAAC,CACnF,SAASs+P,GAAG7tR,EAAEkS,GAAG,IAAIqd,EAAsD,OAApDsxI,GAAI3uJ,GAO3B,SAAalS,EAAEkS,GAAG,IAAIlS,EAAG,MAAMkzK,GAAI,IAAI2O,GAg0DvC,SAAa7hL,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAE96B,EAAK,MAAHA,EAAQ+3L,KAAKl3B,GAAI7gK,GAAGA,GAAGuvB,EAAE,IAAIk1J,GAAI3pJ,EAAE,EAAE/6B,EAAE,EAAE,KAAMA,EAAEmS,EAAEhU,SAAmC,IAA3BqH,EAAEvF,EAAEssB,QAAQ,KAAKwO,KAAmB8hL,GAAIrtL,EAAEvvB,EAAEyzD,OAAO34B,EAAEv1B,EAAEu1B,IAAI6hL,GAAIptL,EAAErd,EAAEnS,MAAM+6B,EAAEv1B,EAAE,EAAqB,GAAnBq3M,GAAIrtL,EAAEvvB,EAAEyzD,OAAO34B,IAAO/6B,EAAEmS,EAAEhU,OAAO,CAAyB,IAAxBqxB,EAAEvvB,GAAG,KAAK28M,GAAIptL,EAAErd,EAAEnS,MAAYA,EAAEmS,EAAEhU,QAAQqxB,EAAEvvB,GAAGgkL,IAAI24B,GAAIptL,EAAErd,EAAEnS,MAAMwvB,EAAEvvB,GAAG,GAAG,CAAC,OAAOuvB,EAAEvvB,CAAC,CAh0DrP8tR,CAAI,8BAA8B57Q,IAAK,CAPzC67Q,IAAXx+P,EAAEvvB,EAAE,IAAIkS,IAAWqsK,GAAGC,GAAGsQ,IAAG,GAAG3Q,IAAI,EAAE,EAAE,CAACjsK,KAAYqd,CAAC,CAGnF,SAASgyK,GAAIvhM,GAAG,IAAIkS,EAAQ,MAAJlS,EAAEA,EAAMkS,EAAElS,EAAEuvB,EAAEvvB,EAAE9B,OAAO8B,EAAEA,EAAEkS,IAAIlS,EAAEA,EAAG,GAAGA,EAAEuvB,EAAErd,EAAElS,EAAEA,GAAI,MAAQ,CACnF,SAASguR,GAAIhuR,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAQ,IAAIwvB,GAAVxvB,EAAEmS,EAAEqd,GAAU,EAAEA,GAAGrd,EAAE4oB,EAAEvL,IAAKvvB,EAAEA,EAAEuvB,GAAGvvB,EAAEA,EAAED,KAAKA,EAAEwvB,GAAG,OAAOxvB,CAAC,CAEnF,SAASkuR,GAAIjuR,EAAEkS,GAAG,OAAQ,GAALA,EAAE3M,GAAyB,GAALvF,EAAEuF,EAAT2oR,KAAiCC,MAAMC,IAAIpuR,EAAEkS,GAAE,CAEnF,SAASm8Q,KAAMA,GAAI35I,EAAI45I,IAAI,IAAIrzI,GAAIszI,IAAI,IAAIxzI,GAAIyzI,IAAI,IAAIlzI,GAAImzI,IAAI,IAAIlzI,GAAImzI,IAAI,IAAIlzI,EAAG,CAClF,SAASqsH,KAAMA,GAAInzH,EAAIqzH,IAAI,IAAI/4D,GAAI,UAAU,GAAGg5D,IAAI,IAAIh5D,GAAI,oBAAoB,EAAE,CAClF,SAASm5D,KAAMA,GAAIzzH,EAAI2zH,IAAI,IAAI/4D,GAAI,QAAQ,GAAGg5D,IAAI,IAAIh5D,GAAI,uBAAuB,EAAE,CACnF,SAASy5D,KAAMA,GAAIr0H,EAAIu0H,IAAI,IAAI13D,GAAI,oBAAoB,GAAG23D,IAAI,IAAI33D,GAAI,WAAW,EAAE,CACnF,SAASo9E,KAAMA,GAAIj6I,EAAIk6I,IAAIxwE,IAAIywE,MAAMtwG,GAAGC,GAAGswG,IAAG,GAAG7iD,IAAI,IAAI,EAAE,CAAC8iD,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CACnF,SAASC,KAAMA,GAAI16I,EAAI26I,IAAIjxE,IAAIkxE,MAAM/wG,GAAGC,GAAG+wG,IAAG,GAAGtjD,IAAI,IAAI,EAAE,CAACujD,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CACnF,SAASC,KAAMA,GAAIn7I,EAAIo7I,IAAI1xE,IAAI2xE,MAAMxxG,GAAGC,GAAGwxG,IAAG,GAAG/jD,IAAI,IAAI,EAAE,CAACgkD,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CACnF,SAASC,KAAMA,GAAI57I,EAAI67I,IAAInyE,IAAIoyE,KAAMjyG,GAAGC,GAAGiyG,IAAG,GAAGxkD,IAAI,IAAI,EAAE,CAACykD,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CACnF,SAASC,KAAMA,GAAIr8I,EAAIs8I,IAAI5yE,IAAI6yE,MAAM1yG,GAAGC,GAAG0yG,IAAG,GAAGjlD,IAAI,IAAI,EAAE,CAACklD,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CACnF,SAASC,KAAMA,GAAI98I,EAAI+8I,IAAIrzE,IAAI3jB,MAAMlc,GAAGC,GAAGkzG,IAAG,GAAGzlD,IAAI,IAAI,EAAE,CAACtxC,IAAID,IAAIE,IAAIC,IAAIC,OAAO,CACnF,SAAS62F,KAAMA,GAAIj9I,EAAIk9I,IAAIxzE,IAAIyzE,MAAMtzG,GAAGC,GAAGszG,IAAG,GAAG7lD,IAAI,IAAI,EAAE,CAAC8lD,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CACnF,SAASC,KAAMA,GAAI19I,EAAI29I,IAAIj0E,IAAI60C,MAAM10E,GAAGC,GAAGonC,IAAG,GAAGqmB,IAAI,IAAI,EAAE,CAACk0C,IAAImS,IAAIC,IAAIC,IAAIt/B,OAAO,CACnF,SAASu/B,KAAMA,GAAI/9I,EAAIg+I,IAAIt0E,IAAIu0E,KAAMp0G,GAAGC,GAAGzjJ,IAAG,GAAGkxM,IAAI,IAAI,EAAE,CAAC2mD,IAAI/xE,IAAID,IAAIG,IAAID,OAAO,CACnF,SAAS+xE,KAAMA,GAAIn+I,EAAIo+I,IAAI10E,IAAI20E,MAAMx0G,GAAGC,GAAGw0G,IAAG,GAAG/mD,IAAI,IAAI,EAAE,CAACgnD,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CACnF,SAASC,KAAMA,GAAI5+I,EAAI6+I,IAAIn1E,IAAI3+B,MAAMlB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC1/C,IAAI/mB,IAAIL,IAAImnB,IAAIjnB,OAAO,CAClF,SAAS4zG,GAAIxzR,EAAEkS,GAAG,IAAIqd,EAAqD,OAAnDA,EAAEouJ,GAAG+5B,GAAI13M,EAAEA,EAAEkS,GAAG,QAAYqd,EAAE,IAAI+pH,GAAIq9C,GAAI32L,EAAEA,EAAEkS,EAAEqd,IAAUA,CAAC,CACnF,SAASkkQ,GAAIzzR,GAAG,IAAIkS,EAA+B,SAA7BA,EAAEyrK,GAAG4qB,IAAIvoM,GAAGgoM,MAAM0rF,MAAM,OAAkBxhR,EAAElS,GAAGA,CAAc,CACnF,SAAS2zR,GAAI3zR,GAAG,IAAIkS,EAA+B,SAA7BA,EAAEyrK,GAAG4qB,IAAIvoM,GAAGgoM,MAAM0rF,MAAM,OAAkBxhR,EAAElU,GAAGgC,CAAc,CACnF,SAAS4zR,GAAI5zR,EAAEkS,GAAiB,OAAd2uJ,GAAI3uJ,GAAGk/N,GAAIpxO,KAAMA,EAAED,EAAEw7M,OAAMrpM,EAAE0uK,GAAG5gL,EAAED,EAAE07M,OAAa,EAAiB,CACpF,SAASsiD,GAAG/9P,GAAG,OAAGktM,GAAIltM,EAAEk4L,KAAK,EAAUA,IAAOgV,GAAIltM,EAAEi4L,KAAK,EAAUA,IAAWgyB,GAAIjqN,EAAE,CACpF,SAASw+M,GAAGx+M,GAAG,OAAGA,EAAE,GAAG+wN,GAAG/wN,EAAE6zR,KAAY7zR,EAAE,GAAKA,EAAE8gM,IAAY3I,GAAGn4L,EAAE,IAAK,GAAUk4L,GAAG,CACpF,SAASsoF,GAAIxgR,EAAEkS,GAAG,IAAIqd,EAA4B,OAAlB,MAALvvB,EAAEhC,GAAS+4O,IAAI/2O,GAAlBuvB,EAAqBvvB,EAAEhC,EAAUkU,GAAG,GAAGA,EAAEqd,EAAErxB,OAAOqxB,EAAErd,GAAG,IAAI,CACnF,SAASimM,GAAGn4M,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAE,GAAM,MAAHmS,EAAS,MAAMghK,GAAI,IAAI+B,IAAyB,OAApBl1K,EAAE+vP,GAAG9vP,EAAEkS,GA3X/D,SAAYnS,EAAEC,EAAEkS,GAAG,GAAGA,EAAE,CAAC,IAAIqd,EAAErd,EAAE4zP,KAAK/lQ,EAAEC,EAAEA,GAAGuvB,EAAErd,EAAE,aAAanS,EAAEC,EAAEA,EAAG,CA2XH8zR,CAAG9zR,EAAEkS,EAAEqd,GAAUxvB,CAAC,CACpF,SAASg0R,GAAI/zR,GAA+D,OAA5DA,EAAEA,IAAI,KAAMA,EAAEA,GAAGg0R,MAAMh0R,EAAEA,EAAE,GAAGA,EAAEkS,IAAI,KAAMlS,EAAEkS,GAAG8hR,MAAMh0R,EAAEkS,EAAE,GAAUlS,CAAC,CACpF,SAASi0R,GAAIj0R,EAAEkS,GAAG,OAAOA,IAAIutN,KAAMA,KAAME,KAAK3/N,EAAEk0R,oBAAoBl0R,EAAEoR,aAAa,CACnF,SAAS+iR,GAAIn0R,GAAG,OAAiB,IAAJ,EAAJA,EAAEhC,GAAQ,aAAsB,IAAJ,EAAJgC,EAAEhC,GAAQ,GAAG,WAAWsrL,GAAItpL,GAAGA,EAAEE,EAAE,CACpF,SAASg8O,GAAIl8O,GAAG,IAAMuvB,EAAEA,EAAK,IAAI+qJ,GAAO2Q,KAAMjrL,EAAEgU,IAAIhU,EAAEgU,EAAE,IAAIsmL,GAAIugD,IAAG76O,EAAE,GAAG,KAAKA,EAAEgU,GAAGub,EAAE,CAGpF,SAAS6kQ,GAAIp0R,GAAGsE,KAAKqO,EAAE3S,EAAEsE,KAAKw2B,EAAE,IAAIw3I,GAAIhuK,KAAKtE,EAAEizI,EAAK3/H,KAAKsgB,IAAItvB,KAAKqO,EAAE4c,EAAEA,EAAEjrB,KAAKqO,EAAE5S,EAAEwvB,EAAE,CACnF,SAAS8kQ,GAAIr0R,GAAGsE,KAAK4N,EAAE,IAAIogK,GAAIhuK,KAAKtE,EAAE,IAAIsyK,GAAIhuK,KAAKirB,EAAE,IAAI+iJ,GAAIhuK,KAAKvE,EAAE,IAAIuyK,GAAIhuK,KAAKiB,EAAEvF,CAAC,CACpF,SAAS0kO,GAAI1kO,EAAEkS,GAAG5N,KAAKtE,EAAE,IAAIwyK,GAAIluK,KAAKiB,EAAE,IAAIitK,GAAIluK,KAAK4N,GAAGymQ,KAAMI,KAAKz0Q,KAAKirB,EAAEvvB,EAAEsE,KAAK4N,EAAEA,CAAC,CACpF,SAASu0L,GAAIzmM,EAAEkS,EAAEqd,GAAGkpJ,GAAI15K,KAAKuF,MAAMkoP,GAAIloP,MAAMA,KAAKtE,EAAEA,EAAEsE,KAAKirB,EAAEA,EAAEjrB,KAAK4N,EAAEA,EAAEnS,EAAEuE,KAAKw2B,EAAE5oB,EAAE3M,CAAC,CACpF,SAAS01K,GAAGj7K,GAAGsE,KAAKvE,EAAEC,EAAEsE,KAAKirB,EAAEvvB,EAAEuvB,EAAE+5M,KAAK3tB,KAAKr3M,KAAK4N,EAAE,KAAK5N,KAAKtE,EAAE,KAAKsE,KAAKiB,GAAG62K,KAAKC,IAAG,CACrF,SAASiM,GAAItoL,GAAG,GAAGA,EAAE,EAAG,MAAMkzK,GAAI,IAAI2O,GAAI,qBAAqB7hL,IAAIsE,KAAKqO,EAAErO,KAAK++P,GAAGrjQ,EAAE,CAGpF,SAASs0R,GAAIt0R,GAAG,IAAIkS,EAAEkgN,KAAMpyN,EAAEuvB,GAAGrd,EAAElS,EAAEuvB,EAAEvvB,EAAEokO,GAAIpkO,EAAED,EAAEC,EAAEuvB,GAAGvvB,EAAEkS,GAAGlS,EAAEuvB,EAAGvvB,EAAEkS,EAAEA,IAAKlS,EAAEA,EAAEA,EAAEuvB,EAAE,IAAI,CACrF,SAASylO,GAAIh1P,EAAEkS,GAAG,IAAIqd,EAA4C,OAA1CuwN,GAAI9/O,GAAGuvB,EAAE,IAAIi5N,GAAIxoP,EAAEA,EAAEA,EAAE2xQ,KAAc,EAAT3xQ,EAAEA,EAAE4xQ,KAAO1/P,GAAU,IAAIk4M,GAAIpqN,EAAEuvB,EAAE,CAErF,SAASglQ,GAAIv0R,EAAEkS,GAAG,IAAMnS,EAAE,IAAIA,EAAEC,EAAE27M,KAAK57M,EAAEw7M,MAAuBxT,GAAdpqB,GAAG59K,EAAE07M,KAAK,KAAWzT,MAAMwsF,KAAKtiR,EAAG,CACrF,SAASuiR,GAAIz0R,GAAG,IAAIkS,EAAyD,OAAvDA,EAAEouK,GAAIC,GAAGgoB,IAAIvoM,GAAGq9J,MAAMq3H,SAAa,GAAO3sF,GAAI/nM,EAAE00R,IAAVxiR,EAAE,GAAsBA,CAAC,CAGrF,SAASyiR,GAAI30R,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAInoB,EAAW0/O,GAAT1/O,EAAEi9P,GAAI7vQ,GAASwF,GAAG6sP,GAAIz/O,EAAEmoB,GAAG85P,IAAG50R,EAAEA,EAAED,EAAE,IAAIsgO,GAAI1tN,EAAET,EAAEqd,EAAEuL,GAAG,CACrF,SAAS+5P,GAAI70R,EAAEkS,GAAG,IAAIqd,EAAkB,KAAhBA,EAAEulQ,IAAI90R,EAAEgoN,KAAK91M,IAAU,MAAMghK,GAAI,IAAI2O,GAAI4iF,IAAIvyP,EAAE6iR,MAAM,OAAOxlQ,CAAC,CACrF,SAAS87L,GAAIrrN,EAAEkS,GAAG,IAAIqd,EAAM,IAAJA,EAAEvvB,EAAQ89M,GAAIvuL,IAAa,IAATA,EAAEuuL,GAAIvuL,KAASrd,EAAG,OAAO,EAAM,OAAO,CAAK,CAErF,SAASkxM,GAAIpjN,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAS,IAAP+lI,GAAI3uJ,GAAa3M,EAAE,EAAEu1B,GAAV/6B,EAAEC,EAAEuvB,GAAUrxB,OAAOqH,EAAEu1B,IAAIv1B,EAAGgqB,EAAExvB,EAAEwF,GAAG2M,EAAE0uK,GAAGrxJ,EAAG,CACtF,SAAS60M,GAAIpkO,EAAEkS,GAAG,IAAIqd,EAAwD,OAAtDA,EAAErd,EAAEqd,EAAErd,EAAElS,EAAEkS,EAAEA,EAAEA,EAAEA,EAAEA,EAAElS,EAAEkS,EAAElS,EAAEkS,EAAElS,EAAEkS,EAAEA,EAAE,KAAKA,EAAEqd,EAAE,OAAOvvB,EAAEkS,EAASqd,CAAC,CAEtF,SAASylQ,GAAGh1R,EAAEkS,GAAG,QAAS+iR,GAAGj1R,EAAEkS,EAAE+3M,GAAIlxB,GAAIm8F,IAAItzC,GAAI33B,GAAIlxB,GAAO,MAAH7mL,EAAQ,EAAEqxM,GAAGrxM,GAAGijR,MAAM,MAAM,CAErF,SAAS3oC,GAAIxsP,GAAGA,EAAEkS,GAAG6hQ,KAAMG,KAAKl0Q,EAAE86B,GAAGw5O,KAAMG,KAAKz0Q,EAAED,GAAGgxN,GAAG,EAAEC,KAAK,IAAIC,GAAI,IAAIjxN,EAAEuF,EAAE,IAAIqjL,EAAG,CACtF,SAAS4qF,KAAMA,GAAI9+H,EAAIg/H,IAAI,IAAIxkE,GAAI,QAAQ,GAAGykE,IAAI,IAAIzkE,GAAIiyD,IAAI,GAAGyS,IAAI,IAAI1kE,GAAI,MAAM,EAAE,CACrF,SAASyvE,KAAMA,GAAIjqI,EAAImqI,IAAI,IAAIxpE,GAAI8rD,IAAI,GAAG2d,IAAI,IAAIzpE,GAAI,OAAO,GAAGn7K,IAAI,IAAIm7K,GAAI,OAAO,EAAE,CAKrF,SAAS+/E,KAAMA,GAAI1gJ,EAAI2gJ,IAAIj3E,IAAIk3E,MAAM/2G,GAAGC,GAAG+2G,IAAG,GAAGtpD,IAAI,GAAG,EAAE,CAAC5qB,IAAID,IAAIo0E,IAAI14D,IAAIC,IAAIC,OAAO,CACtF,SAASy4D,KAAMA,GAAI/gJ,EAAIw7H,KAAKsD,KAAMj1F,GAAGC,GAAGi1F,IAAG,GAAGxnC,IAAI,IAAI,EAAE,CAACynC,IAAIC,IAAIC,OAAO11Q,OAAO8xQ,IAAIE,GAAG,CACtF,SAASwlB,GAAI11R,GAAGsE,KAAK4N,GAAG6xK,GAAG/jL,GAAG,IAAIg/N,GAAIh/N,IAAIsE,KAAKtE,EAAE,IAAIsyK,GAAIhuK,KAAKvE,EAAE,IAAIuyK,GAAIhuK,KAAKiB,EAAE,IAAIqjL,EAAG,CAEtF,SAAS6rD,GAAIz0O,GAAG,IAAIkS,EAAE,OAAGlS,EAAEuD,EAAUvD,EAAEuD,GAAO2O,EA/kB9C,SAAalS,GAAG,OAAGA,EAAEgtN,IAAI,IAAI,EAAS,KAAYrvC,GAAGg4G,IAAI31R,GAAG,IAAI,CA+kBhB41R,CAAI51R,GAAKkS,IAAIA,EAAE0/N,OAAO5xO,EAAEuD,EAAE2O,GAAUA,EAAE,CACtF,SAAS2jR,GAAI71R,GAAG,IAAIkS,EAAE,OAAM,MAAHlS,EAAgB,KA+tCzC,SAAaA,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,GAAM,MAAH3S,EAAS,OAAO,KAAmC,IAAzB2S,EAAEsrK,GAAGo3C,IAAGC,IAAI,GAAG,EAAEpjN,EAAE,GAAG,GAAOnS,EAAE,EAAEwF,EAAE,EAAExF,EAAEmS,IAAInS,EAAGwvB,EAAEvvB,EAAED,IAAI,EAAE,GAAG+6B,EAAO,GAAL96B,EAAED,GAAM4S,EAAEpN,KAAKuwR,IAAIvmQ,GAAG5c,EAAEpN,KAAKuwR,IAAIh7P,GAAG,OAAO+tL,IAAIl2M,EAAE,EAAEA,EAAEzU,OAAQ,CA/tCjH63R,CAAnB7jR,EAAEyrK,GAAG39K,EAAE,KAAkBkS,EAAEhU,OAAQ,CACtF,SAASmuL,GAAIrsL,EAAEkS,GAAG,GAAQ,MAALlS,EAAE2S,GAAST,GAAGlS,EAAEhC,EAAE,MAAMk1K,GAAI,IAAI2rC,GAAI3sM,EAAElS,EAAEhC,IAAI,OAAOgC,EAAEg2R,GAAG9jR,EAAElS,EAAE2S,EAAET,GAAG,CACtF,SAASyyO,GAAI3kP,GAAG,IAAIkS,EAAEqd,EAAsB,IAApBrd,EAAElS,EAAEA,EAAED,EAAEqS,EAAEmd,EAAEvvB,EAAEuvB,EAAExvB,EAAEqS,EAAQF,GAAGqd,GAAGq4K,GAAI5nM,EAAEkS,EAAEA,GAAGA,EAAE+jR,GAAI/jR,GAAG01L,GAAI5nM,EAAEkS,EAAEA,EAAE,CAGtF,SAASgkR,GAAIl2R,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,IAAUv1B,EAAE,EAAEu1B,GAAV/6B,EAAEC,EAAED,GAAU7B,OAAOqH,EAAEu1B,IAAIv1B,EAAGgqB,EAAExvB,EAAEwF,GAAGskN,GAAI7pN,EAAE2S,EAAE4c,GAAGvvB,EAAEkS,CAAE,CACtF,SAASikR,GAAIn2R,EAAEkS,GAAG,IAAMnS,EAAE,IAAIA,EAAE++P,IAAI9+P,EAAE,GAAGD,EAAEmS,GAAGnS,EAAEA,EAAEwvB,GAAmBswJ,GAAblC,GAAGohF,GAAIh/P,GAAG,GAASmS,GAAG,OAAOlS,CAAC,CAEtF,SAASo2R,GAAIp2R,GAAG,IAAIkS,EAA2D,OAAzD4qP,GAAI98P,EAAEuF,EAAEvF,GAAGspN,GAAItpN,EAAEkS,GAAGlS,EAAEuvB,EAAEvvB,EAAEA,EAAEkS,EAAEyrK,GAAG39K,EAAEA,EAAEy7M,KAAK,IAAIz7M,EAAEkS,EAAEouQ,GAAItgR,GAAUkS,CAAC,CACvF,SAAS65Q,GAAG/rR,GAAG,IAAIkS,EAA4D,OAA1DqqM,GAAO,MAAHv8M,GAAS1B,MAAMC,QAAQyB,OAAKkS,EAAEwmO,GAAG14O,KAAQ,IAAIkS,GAAG,KAAalS,CAAC,CACvF,SAASq2R,GAAIr2R,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAE,SAAFA,IAAa,OAAOC,EAAEvB,MAAMsB,EAAE9B,UAAU,EAAe,OAAbiU,EAAEzT,MAAMsB,EAAEwvB,GAAUxvB,CAAC,CACvF,SAASu2R,GAAIt2R,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAExF,EAAEmS,EAAE,GAAG3M,EAAE+6K,GAAItgL,EAAEoD,EAAErD,EAAEqD,IAAImsB,EAAEvvB,EAAEoD,EAAErD,EAAEqD,GAAGmC,EAAExF,EAAEC,EAAEA,EAAED,EAAEqD,SAASrD,GAAGmS,EAAE,CACtF,SAASq1O,GAAIvnP,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEA,EAAEC,EAAEA,EAAEuvB,EAmhBhC,SAAavvB,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEA,EAAEvF,EAAEA,EAAEA,EAAEA,EAAEkS,EAAe,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,MAAUjtN,EAAE,IAAIuyO,GAAItyO,EAAE,EAAE,EAAEuF,EAAEvF,EAAEA,GAAIuvB,EAAQgnQ,IAAIhnQ,EAAExvB,GAAXwvB,EAAExvB,GAAY,OAAOwvB,CAAC,CAnhBpFinQ,CAAIx2R,EAAEkS,EAAE,MAAMnS,GAAGmS,IAAIlS,EAAEuF,IAAIgqB,EAAEgvN,IAAIv+O,EAAEkS,EAAEqd,IAAMA,GAAGA,EAAEy8J,IAAI,CACtF,SAASyqG,GAAIz2R,EAAEkS,GAAG,OAAOuyM,KAAKiyE,GAAGC,KAAK1jJ,EAAK3/H,KAAKskB,IAAI53B,EAAEkS,IAAIykR,KAAK32R,GAAGkS,GAAGvC,MAAM3P,IAAI2P,MAAMuC,EAAE,CACvF,SAASmuK,GAAGrgL,EAAEkS,GAAgB,OAAbuyM,KAAKiyE,GAAGC,KAAY1jJ,EAAK3/H,KAAKskB,IAAI53B,EAAEkS,IAAIykR,KAAK32R,GAAGkS,GAAGvC,MAAM3P,IAAI2P,MAAMuC,EAAE,CAEtF,SAASqlM,GAAGv3M,EAAEkS,GAAG,OA7xEjB,SAAYlS,GAAG,OAAQA,EAAOA,EAAEhC,EAAP,IAAQ,CA6xET44R,CAAGC,GAAG72R,EAAEkS,EAAE+3M,GAAIlxB,GAAIm8F,IAAItzC,GAAI33B,GAAIlxB,GAAO,MAAH7mL,EAAQ,EAAEqxM,GAAGrxM,GAAGijR,MAAM,OAAO,CACvF,SAAS2B,KAAMA,GAAIpiJ,EAAIqiJ,IAAI34E,IAAI6gD,MAAM1gF,GAAGC,GAAGw4G,IAAG,GAAG/qD,IAAI,IAAI,EAAE,CAACg4B,IAAIgzB,IAAI/3B,IAAIg4B,IAAIC,IAAIC,OAAO,CACvF,SAASC,KAAMA,GAAI3iJ,EAAI4iJ,IAAIl5E,IAAIm5E,MAAMh5G,GAAGC,GAAGxlG,IAAG,GAAGizJ,IAAI,IAAI,EAAE,CAACurD,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CACvF,SAASC,KAAMA,GAAIpjJ,EAAIqjJ,IAAI35E,IAAIogD,MAAMjgF,GAAGC,GAAGw5G,IAAG,GAAG/rD,IAAI,IAAI,EAAE,CAACgsD,IAAIx4B,IAAID,IAAId,IAAID,IAAIy5B,OAAO,CACvF,SAASC,KAAMA,GAAIzjJ,EAAI0jJ,IAAIh6E,IAAIi6E,MAAM95G,GAAGC,GAAG85G,IAAG,GAAGrsD,IAAI,IAAI,EAAE,CAACssD,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CACvF,SAASC,KAAMA,GAAInkJ,EAAIokJ,IAAI16E,IAAI26E,MAAMx6G,GAAGC,GAAGw6G,IAAG,GAAG/sD,IAAI,IAAI,EAAE,CAACgtD,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CACvF,SAASC,KAAMA,GAAI7kJ,EAAI8kJ,IAAIp7E,IAAIq7E,MAAMl7G,GAAGC,GAAGk7G,IAAG,GAAGztD,IAAI,IAAI,EAAE,CAAC0tD,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CACvF,SAASC,KAAMA,GAAIvlJ,EAAIwlJ,IAAI97E,IAAI+7E,MAAM57G,GAAGC,GAAG47G,IAAG,GAAGnuD,IAAI,IAAI,EAAE,CAACouD,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CACvF,SAASC,KAAMA,GAAIjmJ,EAAIkmJ,IAAIx8E,IAAIy8E,MAAMt8G,GAAGC,GAAGs8G,IAAG,GAAG7uD,IAAI,IAAI,EAAE,CAAC8uD,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CACvF,SAASC,KAAMA,GAAI3mJ,EAAI4mJ,IAAIl9E,IAAI21C,MAAMx1E,GAAGC,GAAG+8G,IAAG,GAAGtvD,IAAI,IAAI,EAAE,CAAC61C,IAAIC,IAAIyZ,IAAIC,IAAIC,IAAI1nC,OAAO,CACvF,SAAS2nC,KAAMA,GAAIjnJ,EAAIknJ,IAAIx9E,IAAIvV,MAAMtqB,GAAGC,GAAGq9G,IAAG,GAAG5vD,IAAI,IAAI,EAAE,CAACjjC,IAAIF,IAAIgzF,IAAIC,IAAIC,IAAIC,OAAO,CACvF,SAASC,KAAMA,GAAIxnJ,EAAIynJ,IAAI/9E,IAAIg+E,MAAM79G,GAAGC,GAAG/7E,IAAG,GAAGwpI,IAAI,IAAI,EAAE,CAACowD,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CAEvF,SAAS76E,GAAI7hN,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEA,EAAEA,EAAEA,EAAEkS,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAImmQ,GAAInmQ,EAAE,EAAEuvB,EAAEvvB,EAAEA,GAAG,CACvF,SAAS8hN,GAAI9hN,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEkS,EAAElS,EAAEkS,EAAEA,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAImmQ,GAAInmQ,EAAE,EAAEuvB,EAAEvvB,EAAEkS,GAAG,CACvF,SAASmwM,GAAIriN,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEkS,EAAElS,EAAEkS,EAAEA,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAImmQ,GAAInmQ,EAAE,EAAEuvB,EAAEvvB,EAAEkS,GAAG,CACvF,SAAS+vM,GAAIjiN,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAE86B,EAAE96B,EAAE86B,EAAE5oB,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAImmQ,GAAInmQ,EAAE,EAAEuvB,EAAEvvB,EAAE86B,GAAG,CACvF,SAASknL,GAAIhiN,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAE2S,EAAE3S,EAAE2S,EAAET,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAImmQ,GAAInmQ,EAAE,EAAEuvB,EAAEvvB,EAAE2S,GAAG,CACvF,SAASwvM,GAAIniN,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEhC,EAAEgC,EAAEhC,EAAEkU,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAImmQ,GAAInmQ,EAAE,EAAEuvB,EAAEvvB,EAAEhC,GAAG,CACvF,SAASokN,GAAIpiN,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEoS,EAAEpS,EAAEoS,EAAEF,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAImmQ,GAAInmQ,EAAE,EAAEuvB,EAAEvvB,EAAEoS,GAAG,CACvF,SAASmwM,GAAIviN,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEoS,EAAEpS,EAAEoS,EAAEF,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAImmQ,GAAInmQ,EAAE,EAAEuvB,EAAEvvB,EAAEoS,GAAG,CACvF,SAASkwM,GAAItiN,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEuvB,EAAEvvB,EAAEuvB,EAAErd,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAImmQ,GAAInmQ,EAAE,EAAEuvB,EAAEvvB,EAAEuvB,GAAG,CACvF,SAASizL,GAAIxiN,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEqB,EAAErB,EAAEqB,EAAE6Q,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAImmQ,GAAInmQ,EAAE,EAAEuvB,EAAEvvB,EAAEqB,GAAG,CACvF,SAASs7R,GAAI38R,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAED,EAAEC,EAAED,EAAEmS,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIomQ,GAAIpmQ,EAAE,EAAEuvB,EAAEvvB,EAAED,GAAG,CACvF,SAAS68R,GAAI58R,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAE6T,EAAE7T,EAAE6T,EAAE3B,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIomQ,GAAIpmQ,EAAE,EAAEuvB,EAAEvvB,EAAE6T,GAAG,CACvF,SAASk1K,GAAI/oL,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEiU,EAAEjU,EAAEiU,EAAE/B,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIomQ,GAAIpmQ,EAAE,EAAEuvB,EAAEvvB,EAAEiU,GAAG,CACvF,SAAS0uM,GAAI3iN,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEoxL,EAAEpxL,EAAEoxL,EAAEl/K,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEuvB,EAAErd,GAAG,CACvF,SAAS2qR,GAAI78R,EAAEkS,GAAG,IAAIqd,EAA8B,OAA5BA,EAAEouJ,GAAG+5B,IAAKrL,KAAMC,KAAKtsM,GAAG,KAAauvB,EAAEutQ,GAAG5qR,GAAG+rK,GAAG6Q,IAAG3Q,IAAI,EAAEjsK,EAAE,EAAE,EAAE,CACvF,SAASoxO,GAAItjP,EAAEkS,GAAG,IAAMnS,EAAa,OAATmS,KAAKlS,EAAEA,IAAQD,EAAE+vP,GAAG9vP,EAAEkS,GAAG6qR,MAAkBh9R,EAAEC,EAAU,IAAI,CACvF,SAASg9R,GAAIh9R,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAuD,OAA7CwpL,KAAHxpL,EAAW,IAAIyxJ,KAASt/I,GAAG+qR,IAAIl9R,EAAEmS,GAAMgrR,GAA1C3tQ,EAAuCxvB,EAASC,GAAUuvB,CAAC,CACvF,SAAS4tQ,GAAIn9R,EAAEkS,EAAEqd,GAAY,GAATmzP,GAAI1iR,EAAEuvB,IAAOvvB,EAAEo9R,MAAS,MAAH7tQ,IAAUvvB,EAAEwjQ,GAAGj0O,GAAI,MAAM2jJ,GAAI,IAAI2B,IAAK,OAAOtlJ,CAAC,CACvF,SAAS8tQ,GAAIr9R,EAAEkS,GAAgE,OAA7DlS,EAAEJ,EAAEsS,EAAKlS,EAAEJ,GAAGI,EAAE86B,EAAE,IAAIw3I,GAAItyK,EAAEuF,EAAE,IAAI+sK,KAAStyK,EAAE86B,EAAE,KAAK96B,EAAEuF,EAAE,MAAYvF,CAAC,CACvF,SAASs9R,GAAIt9R,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAInoB,EAAkD,OAArCmlO,GAAIvoN,EAAf5c,EAAE20N,GAAItnO,EAAEkS,IAAYS,EAAE3U,EAAEuH,EAAE,EAAE,EAAEoN,EAAEmoB,EAAE/6B,EAAE4S,EAAEpN,EAAEA,EAAEoN,EAAEA,EAAEmoB,EAASnoB,CAAC,CACxF,SAASwlP,GAAIn4P,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGjB,KAAKvE,EAAEmS,EAAE5N,KAAKjD,EAAEtB,EAAEuE,KAAKw2B,EAAEv1B,EAAEjB,KAAKpE,GAAG,EAAEoE,KAAKlB,EAAE,EAAEkB,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAEuvB,CAAC,CACvF,SAAS8oO,GAAIr4P,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGjB,KAAKvE,EAAEmS,EAAE5N,KAAKjD,EAAEtB,EAAEuE,KAAKw2B,EAAEv1B,EAAEjB,KAAKpE,GAAG,EAAEoE,KAAKlB,EAAE,EAAEkB,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAEuvB,CAAC,CACvF,SAASspO,GAAI74P,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGjB,KAAKvE,EAAEmS,EAAE5N,KAAKjD,EAAEtB,EAAEuE,KAAKw2B,EAAEv1B,EAAEjB,KAAKpE,GAAG,EAAEoE,KAAKlB,EAAE,EAAEkB,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAEuvB,CAAC,CACvF,SAASwpO,GAAI/4P,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGjB,KAAKvE,EAAEmS,EAAE5N,KAAKjD,EAAEtB,EAAEuE,KAAKw2B,EAAEv1B,EAAEjB,KAAKpE,GAAG,EAAEoE,KAAKlB,EAAE,EAAEkB,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAEuvB,CAAC,CACvF,SAASkpO,GAAIz4P,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGjB,KAAKvE,EAAEmS,EAAE5N,KAAK8N,EAAErS,EAAEuE,KAAKiB,EAAEA,EAAEjB,KAAKpE,GAAG,EAAEoE,KAAKlB,EAAE,EAAEkB,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,EAAEuvB,CAAC,CACvF,SAASguQ,GAAIv9R,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,IAAQv1B,EAAE,EAAEu1B,GAAR/6B,EAAEmS,GAAUhU,OAAOqH,EAAEu1B,IAAIv1B,EAAGgqB,EAAExvB,EAAEwF,GAAG29Q,GAAIljR,EAAEA,EAAEuvB,GAAG,OAAOvvB,CAAC,CACxF,SAASmmG,GAAGnmG,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAE,IAAQxF,EAAE,EAAEwF,GAARgqB,EAAEvvB,GAAU9B,OAAO6B,EAAEwF,IAAIxF,EAAUgkL,GAALx0J,EAAExvB,IAAS,OAAO,IAAI2+M,GAAG1+M,EAAE,CACxF,SAASw9R,GAAGx9R,GAAG,IAA0CuvB,EAApC,gCAAwCrc,KAAKlT,GAAG,OAAOuvB,GAAGA,EAAE,IAAIkuQ,GAAG,CACxF,SAAS3lD,GAAI93O,EAAEkS,GAAS,GAAIlS,EAAJ,CAAckS,EAAEtS,EAAEI,EAAE,IAAID,EAxvBhD,SAAaC,GAAG,GAAGA,EAAE81N,KAAM,OAAO,KAAK,IAAI5jN,EAAElS,EAAEJ,EAAE,OAAO89R,IAAIxrR,EAAE,CAwvBZyrR,CAAIzrR,GAAOnS,EAAqBA,EAAE0rP,GAAGv5O,EAAvBwrR,IAAI19R,GAAG,CAACkS,EAAnC,CAAmD,CAExF,SAAS0rR,GAAI59R,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAE,IAAIA,EAAE2M,EAAEypM,KAAKp2M,EAAEg2M,MAAOx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,IAAI9zB,GAAI3nL,EAAE29K,GAAGpuJ,EAAE6sL,GAAGr8M,GAAG,IAAK,CAExF,SAASozN,GAAInzN,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAE,IAAQv1B,EAAE,EAAEu1B,GAAR/6B,EAAEmS,GAAUhU,OAAOqH,EAAEu1B,IAAIv1B,EAAUw3M,GAAI/8M,EAATD,EAAEwF,GAAWvF,EAAEuvB,EAAErd,EAAElS,EAAEuvB,EAAG,CACxF,SAASsuQ,GAAI79R,EAAEkS,GAAGlS,EAAEkS,EAAE+gI,EAAK3/H,KAAKugB,IAAI7zB,EAAEkS,EAAEA,EAAEnS,GAAGC,EAAEuF,GAAG2M,EAAEQ,GAAiB,GAAd1S,EAAEA,EAAEuvB,EAAErxB,OAAU,EAAE8B,EAAEuvB,GAAGwmJ,GAAI/1K,EAAEA,EAAEkS,EAAE,CACxF,SAAS4rR,GAAI99R,GAAGoyN,GAAIpyN,EAAEuvB,GAAG,GAisBzB,SAAavvB,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAA0D,OAAxD/6B,EAAEC,EAAEA,EAAE9B,OAAO,EAAEqxB,EAAErd,EAAElS,EAAEkS,EAAEnS,EAAE+6B,EAAE96B,EAAEuvB,EAAErd,EAAEnS,EAAEwF,EAAEvF,EAAEuvB,EAAEvvB,EAAEkS,EAAEnS,EAAEmyN,GAAI3iM,EAAEhqB,GAAMgqB,GAAGuL,GAnU5F,SAAa96B,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwvB,EAAEvvB,EAAEA,EAAE9B,OAAO,EAAE8B,EAAEuvB,EAAEvvB,EAAEuvB,EAAE,EAAEA,EAAE,KAAMrd,GAAGlS,EAAEuvB,GAAGxvB,EAAEmS,EAAE,EAAEqd,EAAEo3K,GAAG3mM,EAAEA,EAAEkS,EAAElS,EAAEA,EAAED,IAAImS,EAAEnS,EAAE4mM,GAAG3mM,EAAEA,EAAEA,EAAEuvB,EAAE,KAAK,CAmUjBwuQ,CAAI/9R,EAAEkS,IAAW,IAlUhH,SAAalS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwvB,EAAEvvB,EAAEA,EAAE9B,OAAO,EAAE,KAAMgU,GAAGlS,EAAEkS,GAAGnS,EAAEmS,EAAE,EAAEqd,EAAEo3K,GAAG3mM,EAAEA,EAAEkS,EAAElS,EAAEA,EAAED,IAAImS,EAAEnS,EAAE4mM,GAAG3mM,EAAEA,EAAEA,EAAEkS,EAAE,MAAMlS,EAAEkS,EAAElS,EAAEkS,EAAE,EAAEqd,CAAC,CAkUOyuQ,CAAIh+R,EAAEkS,GAAU,EAAE,CAjsB1G+rR,CAAIj+R,EAAED,EAAEC,EAAEuvB,GAAG,IAAGvvB,EAAEA,EAAEA,EAAEA,EAAE,EAAEA,EAAED,EAAEC,EAAE9B,OAAO,EAAE8B,EAAEkS,EAAElS,EAAED,EAAEwvB,GAAEvvB,EAAEuvB,GAAG,CAAC,CACxF,SAAS2uQ,GAAIl+R,GAAG,OAAGA,EAAEA,EAAE,GAAWA,EAAE86B,EAAE,GAAG,EAAE96B,EAAE86B,EAAE,EAAE,EAAE,IAAW96B,EAAEuvB,IAAIvvB,EAAEuvB,EAAE4uQ,GAAIn+R,EAAE86B,IAAI96B,EAAEuvB,GAAGhqB,CAAC,CACxF,SAASmxR,GAAG12R,GAAG,KAAKA,GAAG,GAAI,MAAMkzK,GAAI,IAAI2O,GAAI,cAAc7hL,EAAE,mBAAmB,OAAOA,CAAC,CACxF,SAASi3L,KAAqE,OAA3DmnG,KAAiBC,GAAZD,IAAI,IAAIE,IAAY//G,GAAGC,GAAG+/G,IAAG,GAAGpgH,IAAI,IAAI,EAAE,CAAC,IAAIre,MAAcs+H,GAAG,CACxF,SAASpkB,KAAMA,GAAItlI,EAAIulI,IAAI,IAAIznE,GAAIgsF,IAAI,GAAGtkB,IAAI,IAAI1nE,GAAI,QAAQ,GAAG2nE,IAAI,IAAI3nE,GAAI,SAAS,EAAE,CACxF,SAASgkE,KAAMA,GAAI9hI,EAAIgiI,IAAI,IAAIrlE,GAAI,MAAM,GAAGslE,IAAI,IAAItlE,GAAI,MAAM,GAAGulE,IAAI,IAAIvlE,GAAI,SAAS,EAAE,CACxF,SAASsqE,KAAMA,GAAIjnI,EAAImnI,IAAI,IAAI/oE,GAAI,aAAa,GAAGgpE,IAAI,IAAIhpE,GAAI2rF,IAAI,GAAG1iB,IAAI,IAAIjpE,GAAI4rF,IAAI,EAAE,CACxF,SAASC,GAAI3+R,EAAEkS,GAAG,IAAIqd,EAAW,GAATA,EAAEvvB,EAAEi/K,KAAQ/sK,EAAE,GAAGA,EAAEqd,EAAE,MAAM2jJ,GAAI,IAAI4rC,GAAI5sM,EAAEqd,IAAI,OAAO,IAAI8tM,GAAIr9N,EAAEkS,EAAE,CACxF,SAAS0sR,GAAI5+R,EAAEkS,GAAG,IAAIqd,EAAE,OAAGs6J,GAAG33K,EAAE,IAAYlS,EAAEuvB,EAAEyqO,GAAG9nP,IAAQqd,EAAEmrL,IAAI16M,EAAEkS,GAAG2sR,IAAI7+R,EAAEkS,GAAUqd,EAAE,CACxF,SAAS+sN,GAAIt8O,EAAEkS,EAAEqd,GAA+D,OAA5DuvQ,GAAI9+R,EAAEkS,GAAG24K,GAAI7qL,EAAEuvB,GAAGqtQ,GAAI58R,EAAE,GAAG+oL,GAAI/oL,EAAE,GAAG++R,GAAI/+R,GAAE,GAAMg/R,GAAIh/R,GAAE,GAAaA,CAAC,CACxF,SAAS+wN,GAAG/wN,EAAEkS,GAAG,GAAGlS,EAAE,EAAG,MAAMkzK,GAAI,IAAI2O,GAAI3vK,EAAE,gCAAgClS,IAAI,OAAOA,CAAC,CACzF,SAASi/R,GAAGj/R,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,IAAIwvB,EAAE,EAAExvB,EAAEC,EAAEi/K,KAAK1vJ,EAAExvB,IAAIwvB,EAAG,GAAGsyN,GAAI3vO,EAAElS,EAAEq7M,GAAG9rL,IAAK,OAAOA,EAAG,OAAQ,CAAC,CACzF,SAAS2vQ,GAAGl/R,GAAG,IAAMuvB,EAAE,IAAIA,EAAEvvB,EAAEuvB,EAAEiyN,KAAK7lC,KAAKpsL,EAAEgsL,MAAS59B,GAAGpuJ,EAAEksL,KAAK,IAAM4zD,KAAKrvQ,EAAEuvB,EAAE8/O,KAAKrvQ,EAAED,EAAE,CAAC,CAEzF,SAASo/R,GAAIn/R,GAAG,IAAIkS,EAAEqd,EAAE,GAAM,GAAHvvB,EAAM,OAAO,GAAY,IAAJuvB,EAAE,EAAMrd,EAAE,EAAS,IAANA,EAAElS,GAAMkS,IAAI,IAAKqd,EAAE,OAAOA,CAAE,CAEzF,SAAS6vQ,GAAIp/R,GAAG0jM,KAAMp/L,KAAKqO,EAAE,IAAI6/J,GAAIluK,KAAKw2B,EAAE,IAAI03I,GAAIluK,KAAK4N,EAAE,IAAIsgK,GAAIluK,KAAKirB,EAAE,IAAI0lM,GAAG3wN,KAAKtG,EAAEgC,CAAC,CACzF,SAASq/R,KAAM/6R,KAAKw2B,EAAE,IAAI8tJ,GAAItkL,KAAKvE,EAAE,IAAI+4K,GAAIx0K,KAAKirB,EAAE,IAAIq5J,GAAItkL,KAAKtE,EAAE,IAAIsyK,GAAIhuK,KAAK4N,EAAE,IAAIogK,EAAG,CACzF,SAASgtH,GAAIt/R,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKk9Q,KAAKl9Q,KAAKtE,EAAEkS,EAAE5N,KAAK4N,EAAElS,EAAEsE,KAAKirB,EAAE,KAAKjrB,KAAKirB,EAAE,IAAIosM,GAAIr3N,KAAK4N,EAAEqd,EAAExvB,EAAE,CACxF,SAASisP,GAAIhsP,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGjB,KAAKvE,EAAEC,EAAEsE,KAAK1E,EAAEsS,EAAE5N,KAAKqO,EAAE4c,EAAEjrB,KAAKpE,EAAEH,EAAEuE,KAAKlB,GAAG,EAAEmC,IAAIjB,KAAKpE,GAAG,EAAEH,EAAE,EAAE,CACxF,SAASq6K,KAAMG,GAAIx7K,KAAKuF,MAAMA,KAAK1E,GAAG,EAAE0E,KAAKqO,EAAE,KAAKrO,KAAKtG,EAAE,KAAKsG,KAAK8N,EAAE,KAAK9N,KAAKkxK,IAAI+pH,GAAG,CAGxF,SAASC,KAAMA,GAAI9qJ,EAAI+qJ,IAAIlhH,GAAGC,GAAG4U,IAAG,GAAGsW,IAAI,GAAG,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CACzF,SAASnE,KAAMA,GAAI7wD,EAAIgrJ,IAAIj4D,GAAIA,GAAIA,GAAI,IAAI/iC,IAAKuuD,MAAMktB,MAAMhtB,MAAMwsC,MAAMrN,IAAIsN,KAAKrN,IAAIsN,IAAI,CACzF,SAAS5jI,KAAMA,GAAIvnB,EAAIorJ,IAAIr4D,GAAIA,GAAIA,GAAI,IAAI/iC,IAAKuuD,MAAMktB,MAAMhtB,MAAMwsC,MAAMrN,IAAIsN,KAAKrN,IAAIsN,IAAI,CACzF,SAASljI,KAAMA,GAAIjoB,EAAIqrJ,IAAIt4D,GAAIA,GAAIA,GAAI,IAAI/iC,IAAKuuD,MAAMktB,MAAMhtB,MAAMwsC,MAAMrN,IAAIsN,KAAKrN,IAAIsN,IAAI,CACzF,SAASpiI,KAAMA,GAAI/oB,EAAIsrJ,IAAIzyD,GAAI9F,GAAIA,GAAI,IAAI/iC,IAAKuuD,MAAMs/B,MAAMp/B,MAAM8sC,MAAMzN,IAAI0N,KAAKhtC,IAAIitC,IAAI,CACzF,SAASlqB,KAAMA,GAAIvhI,EAAIyhI,IAAI,IAAI/kE,GAAI,cAAc,GAAGglE,IAAI,IAAIhlE,GAAIgvF,IAAI,GAAG/pB,IAAI,IAAIjlE,GAAI04E,IAAI,EAAE,CACzF,SAASuW,GAAIrgS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAmB,OAAjBwvB,EAAEvvB,EAAEuvB,GAAExvB,EAAEmS,EAAE3M,EAAEvF,EAAEoD,IAAQ,EAAUu6K,GAAG0pB,GAAI93K,EAAEvvB,EAAED,EAAE,GAAG,IAAW,IAAI,CACzF,SAASugS,GAAItgS,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEqB,EAAErB,EAAEqB,EAAE6Q,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEuvB,EAAEvvB,EAAEqB,GAAG,CACzF,SAASk/R,GAAIvgS,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAE86B,EAAE96B,EAAE86B,EAAE5oB,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEuvB,EAAEvvB,EAAE86B,GAAG,CACzF,SAAS0lQ,GAAIxgS,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEhC,EAAEgC,EAAEhC,EAAEkU,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEuvB,EAAEvvB,EAAEhC,GAAG,CACzF,SAASk/R,GAAIl9R,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEA,EAAEA,EAAEA,EAAEkS,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEuvB,EAAEvvB,EAAEA,GAAG,CACzF,SAASygS,GAAIzgS,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEkS,EAAElS,EAAEkS,EAAEA,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEuvB,EAAEvvB,EAAEkS,GAAG,CACzF,SAASwuR,GAAI1gS,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEkS,EAAElS,EAAEkS,EAAEA,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEuvB,EAAEvvB,EAAEkS,GAAG,CACzF,SAASyuR,GAAI3gS,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEuvB,EAAEvvB,EAAEuvB,EAAErd,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEuvB,EAAEvvB,EAAEuvB,GAAG,CACzF,SAASqxQ,GAAI5gS,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEuvB,EAAEvvB,EAAEuvB,EAAErd,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEuvB,EAAEvvB,EAAEuvB,GAAG,CACzF,SAASsxQ,GAAI7gS,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEuvB,EAAEvvB,EAAEuvB,EAAErd,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEuvB,EAAEvvB,EAAEuvB,GAAG,CACzF,SAASuxQ,GAAI9gS,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAED,EAAEC,EAAED,EAAEmS,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEuvB,EAAEvvB,EAAED,GAAG,CACzF,SAASghS,GAAI/gS,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEmxL,EAAEnxL,EAAEmxL,EAAEj/K,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEuvB,EAAEvvB,EAAEmxL,GAAG,CACzF,SAAS6vG,GAAIhhS,EAAEkS,GAAMlS,EAAE0S,EAAE,GAAG1S,EAAEuvB,EAAEvvB,EAAE0S,IAAG1S,EAAEuvB,GAAGrd,EAAIlS,EAAEhC,GAAGgC,EAAEhC,EAAE+B,EAAE,GAAQ,GAALC,EAAE2S,GAAMquR,GAAIhhS,EAAEhC,EAAEkU,EAAElS,EAAE0S,EAAE1S,EAAEhC,EAAE+B,GAAG,CAEzF,SAASkhS,GAAIjhS,EAAEkS,GAAG,OAAOs1M,IAAIxnN,EAAEuF,EAAE2M,IAAIi6L,KAAMuoD,GAAIxiP,GAAG,IAAIk1N,GAAIl1N,EAAElS,GAAG,IAAIm6M,GAAIjoM,EAAElS,IAAI,IAAIs6M,GAAIpoM,EAAElS,EAAE,CACzF,SAASkhS,GAAGlhS,EAAEkS,GAAG,OAz3EjB,SAAYlS,GAAG,OAAQA,EAAOA,EAAE2S,EAAP,IAAQ,CAy3ETwuR,CAAGlM,GAAGj1R,EAAEA,EAAEkS,EAAE+3M,GAAIlxB,GAAIm8F,IAAItzC,GAAI33B,GAAIlxB,GAAO,MAAH7mL,EAAQ,EAAEqxM,GAAGrxM,GAAGijR,MAAM,OAAO,CAMzF,SAASiM,GAAGphS,GAAG,IAAIkS,EAAgC,OAA9BlS,EAAEizI,EAAK3/H,KAAKugB,IAAI7zB,EAAE,KAAGkS,EAAEsjP,GAAIx1P,KAAWkS,IAAI,GAAW,EAAEA,EAAE4uL,IAAW5uL,CAAC,CAC1F,SAAS8+N,GAAGhxO,GAAc,OAAXstN,GAAQ,GAALttN,EAAEuF,GAAavF,EAAEuF,GAAG,KAAK,EAAE,OAAO,EAAM,KAAK,EAAE,OAAO,EAAM,OA9b9E,SAAYvF,GAAoB,OAAjBA,EAAEuF,EAAE,EAAEvF,EAAED,EAAEC,EAAE8gK,KAAa,GAAL9gK,EAAEuF,IAAMvF,EAAEuF,EAAE,GAAS,EAAiB,CA8bYs0N,CAAG75N,EAAE,CAC1F,SAASqhS,GAAIrhS,EAAEkS,GAAG,IAAIqd,EAAE,QAAGs6J,GAAG33K,EAAE,KAAIqd,EAAEouJ,GAAGzrK,EAAE,GAAUlS,EAAEA,GAAGuvB,EAAEvvB,GAAGA,EAAEkS,GAAGqd,EAAErd,EAAoB,CAC1F,SAASovR,GAAIthS,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAEu1B,EAAsD,OAApDA,EAAE5oB,GAAG,EAAE3M,EAAI,GAAF2M,EAAO0mL,GAAIm3C,GAAI/vO,EAAEJ,EAAE2vB,GAAGuL,GAAGmvL,GAAItxB,GAAIpzL,EAAE,KAAK,EAAW,CAG1F,SAASg8R,GAAIvhS,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEkS,EAAElS,EAAEkS,EAAEA,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,GAAGuvB,EAAEvvB,EAAEkS,GAAG,CAC1F,SAASsvR,GAAIxhS,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAED,EAAEC,EAAED,EAAEmS,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,GAAGuvB,EAAEvvB,EAAED,GAAG,CAC1F,SAASy6M,GAAIx6M,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEoS,EAAEpS,EAAEoS,EAAEF,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,GAAGuvB,EAAEvvB,EAAEoS,GAAG,CAC1F,SAASqvR,GAAIzhS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAiB,IAAfA,EAAE96B,EAAEA,EAAE9B,OAAO,EAAMqH,EAAEvF,EAAEkS,EAAEnS,EAAE,EAAEA,EAAEwvB,EAAEhqB,EAAEA,EAAE,EAAEu1B,IAAI/6B,EAAG4mM,GAAGz0L,EAAEnS,EAAEC,EAAEA,EAAEuF,GAAI,CAC3F,SAASqiM,GAAI5nM,EAAEkS,GAAG,IAAIqd,EAAe,OAAbsxI,GAAI3uJ,GAAGqd,EAAErd,EAAES,GAAM3S,EAAEkS,EAAEqd,KAAIo3K,GAAG3mM,EAAEkS,EAAEqd,EAAErd,KAAKlS,EAAEuvB,GAAS,EAAiB,CAC3F,SAASmyQ,GAAI1hS,EAAEkS,GAAG,IAAIqd,EAA4B,SAA1BA,EAAK,MAAHrd,GAAS,EAAEi0L,GAAInmM,EAAEkS,EAAEA,EAAE,IAAQ,KAAgBo7Q,GAAIttR,EAAEuvB,IAAU,EAAI,CAC3F,SAAS+9P,GAAIttR,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEslN,GAAI70O,EAAEkS,EAAElS,EAAEkS,EAAEqd,EAAErxB,OAAO,GAAMgU,EAAElS,EAAEkS,EAAEqd,EAAErxB,SAAQk2O,GAAIp0O,EAAEkS,EAAEA,EAAEqd,GAAGoyQ,IAAI3hS,EAAEkS,GAAG,CAE3F,SAAS0vR,GAAI5hS,EAAEkS,GAAG2vR,IAAI3vR,EAAE,0CAA0C,GAgsBlE,SAAalS,GAAG,IAAIkS,EAAE,IAAI2qN,GAAIl/C,GAAG4qB,IAAIvoM,GAAGq9J,MAAMykI,MAAM,KAAM,OAAO5vR,EAAElS,EAAEkS,EAAE6vR,KAAKtkF,GAAI,EAAEvrM,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAE,GAAG,MAAMwyQ,IAAIpkH,GAAG0pB,GAAIn1L,EAAEA,EAAEqd,EAAErxB,OAAO,GAAG,IAAI,CAhsBxE8jS,CAAIhiS,GAg0EzE,SAAaA,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAI9C,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAEC,EAAEC,EAA8B,GAA5BznK,EAAE+zJ,GAAG4qB,IAAIvoM,GAAGq9J,MAAMykI,MAAM,MAASl4Q,IAAI0rQ,MAAMl0E,MAAMx3L,GAAGy3L,KAAM,OAAgN,IAAzMnhN,EAAEF,EAAEkS,EAAEtS,EAAEM,EAAEqvB,EAAErxB,OAAOmD,EAAE,IAAI4vN,IAAKF,GAAGnxN,EAAE,EAAEk+P,KAAKC,GAAGrzD,GAAIA,GAAI,EAAE9qM,EAAE,IAAIA,EAAE,GAAG,GAAG,MAAMwD,EAAE,IAAI6tN,IAAKF,GAAGnxN,EAAE,EAAEk+P,KAAKC,GAAGrzD,GAAIA,GAAI,EAAE9qM,EAAE,IAAIA,EAAE,GAAG,GAAG,MAAMm2K,GAAI10K,EAAE,IAAImxK,IAAKuD,GAAI10K,EAAE,IAAImxK,IAAKuD,GAAI3yK,EAAE,IAAIkvK,IAAKyD,GAAI3yK,EAAE,IAAIkvK,IAAK/uK,EAAE,IAAI+uK,GAAQpgK,EAAE,EAAEA,EAAEtS,EAAEsS,IAAyK,IAAjKurM,GAAIvrM,EAAEhS,EAAEqvB,EAAErxB,QAAbqxB,EAAqBouJ,GAAGz9K,EAAEqvB,EAAErd,GAAG,IAAQurM,GAAIvrM,EAAE7Q,EAAEkuB,EAAErxB,QAAb0mC,EAAqB+4I,GAAGt8K,EAAEkuB,EAAErd,GAAG,IAAK8B,EAAE,IAAIw+J,GAAInxK,EAAEkuB,EAAEluB,EAAEkuB,EAAErxB,QAAQ8V,EAAKypM,GAAIvrM,EAAE9O,EAAEmsB,EAAErxB,QAAbizL,EAAqBxT,GAAGv6K,EAAEmsB,EAAErd,GAAG,IAAK2B,EAAE,IAAIy+J,GAAIlvK,EAAEmsB,EAAEnsB,EAAEmsB,EAAErxB,QAAQ2V,EAAMtO,EAAE,IAAIogK,GAAIp2I,EAAEvvB,GAAGuF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAyB,GAAG+jS,GAAnBliS,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAehC,EAAEgsB,EAAEhsB,EAAEgsB,EAAErxB,QAAQ6B,MAA3B,CAAsC,IAAIqS,EAAE,IAAI08N,GAAG7hB,GAAGi1E,GAAIniS,GAAGC,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGh5M,IAAgC6vR,GAAZ7wG,GAAf3tL,EAAEk6K,GAAGwtC,GAAG/4M,GAAG,KAAQmd,EAAEvxB,MAAuB6kC,EAAE86I,GAAG/4I,EAAEosM,GAAGzoC,IAAInX,GAAG4W,MAAM0/C,OAAO,OAAW7kN,EAAEs/P,IAAIniS,EAAEoxL,GAAGxsJ,EAAEi1L,GAAGtxB,IAAInX,EAAEs2D,KAAK7kN,GAAGsuJ,EAAE02B,GAAGhlL,IAAGwvN,GAAI5uP,EAAEk6K,GAAG0pB,GAAIxkK,EAAEzwB,EAAE,GAAG,MAAK,IAAIpU,EAAE,IAAI8wO,GAAG7hB,GAAGm1E,GAAIriS,GAAGC,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGptN,IAAgCikS,GAAZ5wG,GAAf5tL,EAAEk6K,GAAGwtC,GAAGntN,GAAG,KAAQ+B,EAAE/B,MAAuB0U,EAAEirK,GAAG+5B,GAAI1jM,EAAEu0L,IAAIlX,GAAG2W,MAAM0/C,OAAO,OAAWh1O,EAAEyvR,IAAIniS,EAAEqxL,GAAGsF,GAAI3iL,EAAEu0L,IAAIlX,EAAEq2D,KAAKh1O,GAAGmB,EAAE0b,EAAE1b,EAAE0b,EAAErxB,QAAQwU,GAAE0/O,GAAI3uP,EAAEk6K,GAAG0pB,GAAI30L,EAAEN,EAAE,GAAG,KAA9Y,CAAqZ,IAAI0B,EAAE,EAAEA,EAAE1Q,EAAEmsB,EAAErxB,OAAO4V,IAAyC,GAAjC2pM,GAAI3pM,EAAE1Q,EAAEmsB,EAAErxB,UAAb+V,EAAqB0pK,GAAGv6K,EAAEmsB,EAAEzb,GAAG,KAAUutB,KAAgL,IAAjKruB,EAAE,KAAW,GAAHc,GAAMd,EAAE,IAAIkmO,GAAIl5O,GAAG0rO,GAAI,EAAExrO,EAAEqvB,EAAErxB,QAAQgwM,GAAIhuM,EAAEqvB,EAAE,EAAEvc,IAAWc,GAAGzS,EAAEkuB,EAAErxB,OAAO,GAAG8U,EAAE,IAAIkmO,GAAIl5O,GAAGE,EAAEqvB,EAAErvB,EAAEqvB,EAAErxB,QAAQ8U,IAAUyqM,GAAI3pM,EAAE,EAAE5T,EAAEqvB,EAAErxB,QAAf8U,EAAuB2qK,GAAGz9K,EAAEqvB,EAAEzb,EAAE,GAAG,KAASnB,EAAEsB,EAAE0nM,KAAKhpM,EAAE4oM,MAAuB+2C,GAAd30E,GAAGhrK,EAAE8oM,KAAK,IAAUzoM,GAAI,IAAI7B,EAAE,IAAIw0J,GAAIpiK,GAAG4N,EAAEnR,EAAEmR,EAAEoe,EAAEA,EAAErxB,QAAyBo0P,GAAd30E,GAAGC,GAAIzsK,GAAG,IAAU,MAAM42L,GAAI/nM,GAAGgoM,MAAMq6F,KAAK9+R,EAAE,CAh0EtyC++R,CAAItiS,GAAGuiS,IAAIrwR,EAAE,CACzF,SAASswR,GAAIxiS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,IAAIA,EAAEmS,EAAEypM,KAAK57M,EAAEw7M,MAAOhsL,EAAEouJ,GAAG59K,EAAE07M,KAAK,KAAKz7M,EAAEkS,GAAE,EAAKy1K,GAAI3nL,EAAEuF,EAAEgqB,GAAGA,EAAErd,EAAElS,CAAE,CAC3F,SAASk7P,GAAIl7P,EAAEkS,GAAG,IAAIqd,EAAExvB,EAA2D,OAAzDwvB,EAAE,EAAErd,EAAEnS,EAAEC,EAAEA,EAAEuvB,GAAGvvB,EAAEA,EAAEuvB,GAAGxvB,EAAEC,EAAEkS,GAAGnS,EAAEC,EAAEkS,GAAGlS,EAAEA,EAAEkS,GAAE,EAAKnS,EAAEmS,GAAE,EAAanS,CAAC,CAE3F,SAAS0iS,GAAIziS,GAAG8sO,GAAI/tO,KAAKuF,MAAMA,KAAK4N,EAAEouK,GAAIC,GAAGgoB,IAAIvoM,GAAGq9J,MAAMgpF,QAAQ/hP,KAAKtE,EAAE29K,GAAG4qB,IAAIvoM,EAAE0iS,KAAK,IAAI,CAC3F,SAASC,GAAI3iS,EAAEkS,EAAEqd,GAAGyxO,GAAIjiQ,KAAKuF,KAAKtE,EAAEkS,EAAEqd,GAAGjrB,KAAKtE,EAAE,IAAIwyK,GAAIluK,KAAK4N,EAAE,IAAIsgK,GAAIluK,KAAKvE,EAAE,IAAIwsK,GAAIjoK,KAAK,CAC3F,SAASs+R,GAAG5iS,GAAGsE,KAAKiB,EAAEvF,EAAEsE,KAAKvE,EAAE,IAAIy3L,GAAIgnB,GAAG8wB,GAAGhrO,KAAKiB,GAAG05K,OAAO36K,KAAKirB,EAAEjrB,KAAKiB,EAAEvF,EAAEsE,KAAK4N,EAAE5N,KAAKiB,EAAEgqB,CAAC,CAC3F,SAASwhO,GAAI/wP,GAAGsE,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAEi+K,GAAGmV,IAAGsW,IAAI,GAAG1pM,EAAE,EAAE,GAAG,GAAGsE,KAAKirB,EAAE0uJ,GAAGmV,IAAGsW,IAAI,GAAG1pM,EAAE,GAAG,GAAGsE,KAAKvE,EAAE,CAAC,CAC3F,SAAS6+O,GAAI5+O,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAA2D,OAA/C8iS,IAAI7iS,EAAEkS,EAAhBnS,EAAE,IAAIuyK,GAAc/iJ,GAAE,GAAK,GAAMvvB,EAAEkS,EAAE,IAAI6+O,GAAIhxP,EAAEwvB,EAAErxB,QAAe6B,CAAC,CAC3F,SAAS+iS,GAAI9iS,EAAEkS,GAAG,IAAIqd,EAA6D,OAA3DA,EAAEouJ,GAAG+5B,GAAI13M,EAAEuvB,EAAErd,GAAG,SAAYqd,EAAE,IAAI6oJ,IAAM7oJ,EAAErd,EAAEykL,GAAI32L,EAAEuvB,EAAEA,EAAEA,EAAEA,IAAUA,CAAC,CAC3F,SAASwzQ,GAAGx9R,EAAEvF,GAAG,IAAIkS,EAAE3M,EAAEvF,EAAMuvB,EAAE,EAAE,IAAI,IAAIxvB,KAAKmS,EAAGA,EAAErU,eAAekC,KAAKC,EAAEuvB,KAAKxvB,GAAG,OAAOC,CAAC,CAC3F,SAASgjS,GAAIhjS,GAAS,OAAQ,MAALA,EAAEkS,GAAgB45L,KAAMA,KAAMC,KAAM/rM,EAAEg8K,KAAKh8K,EAAEi8K,KAAKj8K,EAAEijS,IAAa,CAC1F,SAASC,GAAIljS,GAAG,IAAIkS,EAAEqd,EAAE,IAAIA,EAAE,IAAIwvJ,GAAI/+K,GAAGuvB,EAAEhqB,GAAGgqB,EAAEvxB,EAAEihL,MAAuBkjC,GAAhBjwM,EAAEyrK,GAAGwB,IAAI5vJ,GAAG,IAAU,GAAG6yL,GAAIlwM,EAAE,EAAG,CAC3F,SAASixR,KAAMA,GAAIzuJ,EAAI0uJ,IAAI,IAAI1yH,GAAI2yH,KAAKC,IAAI,IAAI5yH,GAAI6yH,KAAKC,IAAI,IAAI9yH,GAAI+yH,KAAKC,IAAI,IAAIhzH,GAAIizH,IAAI,CAC1F,SAASl7B,KAAMA,GAAI/zH,EAAIi0H,IAAI,IAAI/4D,GAAI,kBAAkB,GAAGg5D,IAAI,IAAIh5D,GAAI,qBAAqB,EAAE,CAC3F,SAASw8D,KAAMA,GAAI13H,EAAI23H,IAAI,IAAIr4D,GAAI,oBAAoB,GAAGs4D,IAAI,IAAIt4D,GAAI,kBAAkB,EAAE,CAC1F,SAASsjE,KAAMA,GAAI5iI,EAAI8iI,IAAI,IAAIvmE,GAAI,QAAQ,GAAGwmE,IAAI,IAAIxmE,GAAI,SAAS,GAAGymE,IAAI,IAAIzmE,GAAI,MAAM,EAAE,CAC1F,SAASt1C,KAAMA,GAAIjnB,EAAIkvJ,IAAI,IAAIhlF,GAAI,8CAA8C8O,KAAMC,KAAK,CAE5F,SAASk2E,KAAMv/R,KAAKirB,EAAE,IAAI6rK,GAAI,GAAG92L,KAAK4N,EAAE,IAAIkpL,GAAI0oG,KAAKx/R,KAAKvE,EAAE,IAAIq7L,GAAI2oG,KAAKz/R,KAAKtE,EAAE,IAAIo7L,GAAI4oG,IAAI,CAC5F,SAASC,GAAIjkS,GAAG,IAAIkS,EAAEqd,EAAE,IAAIA,EAAEvvB,EAAEuvB,EAAEvvB,EAAE2hP,KAAKhmC,KAAKpsL,EAAEgsL,MAAwBh4C,GAAjBrxJ,EAAEyrK,GAAGpuJ,EAAEksL,KAAK,KAAW,IAAIyoF,IAAIhyR,EAAE3M,GAAI,CAC5F,SAAS4+R,GAAInkS,GAAG,IAAIkS,EAAEqd,EAAE,IAAIA,EAAEvvB,EAAEuvB,EAAEvvB,EAAE2hP,KAAKhmC,KAAKpsL,EAAEgsL,MAAwBj4C,GAAjBpxJ,EAAEyrK,GAAGpuJ,EAAEksL,KAAK,KAAW,IAAIw2B,GAAI//N,EAAE4oB,GAAI,CAC5F,SAAS+vJ,GAAI7qL,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEwkQ,GAAGxkQ,EAAEwkQ,GAAGtyP,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEuvB,EAAEvvB,EAAEwkQ,IAAI,CAC5F,SAAS15E,GAAI9qL,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEmzI,GAAGnzI,EAAEmzI,GAAGjhI,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEuvB,EAAEvvB,EAAEmzI,IAAI,CAC5F,SAAS43C,GAAI/qL,EAAEkS,GAAG,IAAIqd,EAAEA,EAAEvvB,EAAEokS,GAAGpkS,EAAEokS,GAAGlyR,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEuvB,EAAEvvB,EAAEokS,IAAI,CAC5F,SAAS15G,GAAI1qL,EAAEkS,GAAG,IAAIqd,GAAIA,EAAK,IAAI4qJ,IAASv6K,EAAEsS,EAAE+4K,KAAMjrL,EAAE6T,IAAI7T,EAAE6T,EAAE,IAAIymL,GAAI2gD,IAAGj7O,EAAE,GAAG,KAAKA,EAAE6T,GAAG0b,EAAE,CAC5F,SAASk7J,GAAIzqL,EAAEkS,GAAG,IAAMnS,GAAEA,EAAK,IAAIm1N,IAASt1N,EAAEsS,EAAE+4K,KAAMjrL,EAAE6T,IAAI7T,EAAE6T,EAAE,IAAIymL,GAAI2gD,IAAGj7O,EAAE,GAAG,KAAKA,EAAE6T,GAAG9T,EAAE,CAC5F,SAASskS,GAAIrkS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAA+B,IAApBugN,GAAT/wL,EAAEvvB,EAAEk/N,KAAW,EAAE3vM,EAAErxB,OAAOgU,GAAOnS,EAAE,EAAEA,EAAEwvB,EAAErxB,OAAO6B,IAAKC,EAAEoH,GAAGrH,EAAEwvB,EAAExvB,GAAI,CAC5F,SAASw5L,GAAGv5L,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAiB,IAAfs7J,GAAI3uJ,GAAGqd,GAAE,EAAUhqB,EAAE2M,EAAEypM,KAAKp2M,EAAEg2M,MAAOx7M,EAAEwF,EAAEk2M,KAAKlsL,GAAIvvB,EAAE6nN,GAAG9nN,GAAG,OAAOwvB,CAAC,CAC7F,SAAS+0Q,GAAGtkS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAM,IAAJmS,EAAE,EAAMnS,EAAEC,EAAE27M,KAAK57M,EAAEw7M,MAAmCrpM,KAAnBA,GAAM,OAAfqd,EAAExvB,EAAE07M,MAAgB8H,GAAGh0L,GAAG,GAAQ,OAAOrd,CAAC,CAC7F,SAASm0M,GAAGrmN,GAAG,IAAIkS,EAAE,OAAM,GAAHlS,EAAa,OAASA,EAAE,GAAGA,GAAGA,EAAEkS,EAAE,QAAYA,EAAE,OAAcA,EAAEi0M,GAAGnmN,GAAE,CAC7F,SAASyiO,GAAGziO,EAAEkS,GAAG,IAAIqd,EAAE,OAAGs6J,GAAG33K,EAAE,KAAKqd,EAAEouJ,GAAGzrK,EAAE,IAAWlS,EAAE6hM,GAAGtyK,IAAUgzM,GAAGviO,EAAE29K,GAAGoG,GAAG7xK,GAAG,IAAIypM,KAAK,CAC5F,SAAS4oF,GAAIvkS,EAAEkS,EAAEqd,GAAGm1M,GAAI3lO,KAAKuF,KAAK4N,EAAEqd,GAAGjrB,KAAKvE,EAAEk+K,GAAGkuE,IAAGC,IAAI,GAAGpsP,EAAEA,EAAEuvB,EAAErxB,OAAO,EAAE,GAAGu8P,IAAIz6P,EAAEA,EAAEsE,KAAKvE,EAAE,CAE5F,SAASykS,GAAIxkS,EAAEkS,GAAMA,EAAW,MAALlS,EAAE4kC,IAAS5kC,EAAE4kC,EAAE5kC,EAAEmxL,EAAEnxL,EAAEmxL,EAAE,MAAmB,MAALnxL,EAAE4kC,IAAS5kC,EAAEmxL,EAAEnxL,EAAE4kC,EAAE5kC,EAAE4kC,EAAE,KAAK,CAC5F,SAAS6/P,GAAIzkS,EAAEkS,GAAG,OAAOouK,GAAIC,GAAG4uC,GAAIohB,GAAI4F,GAAI,IAAI/rB,GAAI,KAAK,IAAI7c,GAAIvtM,EAAEuvB,EAAErd,EAAE,KAAK,IAAIw5J,GAAI1rK,IAAIkS,KAAK,CAC7F,SAASwyR,GAAI1kS,EAAEkS,GAAG,OAAOouK,GAAIC,GAAG4uC,GAAIohB,GAAI4F,GAAI,IAAI/rB,GAAI,KAAK,IAAI7c,GAAIvtM,EAAEuvB,EAAErd,EAAE,KAAK,IAAIu5J,GAAIzrK,IAAIkS,KAAK,CAG7F,SAASyyR,GAAI3kS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAE,IAAIA,EAAEu5P,IAAI9+P,EAAE,GAAGuF,EAAE2M,GAAG3M,EAAExF,EAAEwvB,IAAIxvB,EAAE49K,GAAGohF,GAAIx5P,GAAG,IAAKvF,GAAGkS,EAAEnS,EAAEmS,GAAGqd,EAAE,OAAOvvB,CAAC,CAC7F,SAAS62R,GAAG72R,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAE,IAAIA,EAAEC,EAAEkS,EAAEqd,EAAEvvB,EAAE86B,GAAG/6B,EAAEA,EAAEA,EAAEmS,EAAG,GAAGqd,GAAGxvB,EAAEC,GAAGs/O,GAAGptO,EAAEnS,EAAE4S,GAAI,OAAO5S,EAAG,OAAO,IAAI,CAC9F,SAASk1R,GAAGj1R,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAE,IAAIA,EAAEC,EAAEuvB,EAAEA,EAAEvvB,EAAE86B,GAAG/6B,EAAEA,EAAEA,EAAEA,EAAG,GAAGwvB,GAAGxvB,EAAE+6B,GAAGwkN,GAAGptO,EAAEnS,EAAE/B,GAAI,OAAO+B,EAAG,OAAO,IAAI,CAG9F,SAAS6kS,GAAI5kS,GAAG,IAAIkS,EAAW,OAAG0pM,IAAZ1pM,EAAEyrP,GAAI39P,IAAYA,EAAE,IAAWuiM,KAAMA,KAAMC,MAAWD,KAAM,IAAIuvB,GAAI5/M,EAAEA,GAAE,CAC9F,SAAS2yR,GAAI7kS,GAAG,IAAIkS,EAAW,OAAG0pM,IAAZ1pM,EAAEyrP,GAAI39P,IAAYA,EAAE,IAAWuiM,KAAMA,KAAMC,MAAWD,KAAM,IAAIuvB,GAAI5/M,EAAEqd,GAAE,CAC9F,SAASu1Q,GAAI9kS,GAAG,IAAIkS,EAAW,OAAG0pM,IAAZ1pM,EAAEwrP,GAAI19P,IAAYA,EAAE,IAAW0iM,KAAMA,KAAMC,MAAWD,KAAM,IAAIqvB,GAAI7/M,EAAEA,GAAE,CAC9F,SAAS6yR,GAAI/kS,GAAG,OAAGA,EAAEkS,EAAEqd,EAAEvxB,EAAEqD,IAAI49P,MAAMC,KAAavhF,GAAG4qB,IAAIvoM,EAAEkS,EAAEqd,EAAEvxB,GAAGgqM,MAAM0/C,MAAM,IAAW1nP,EAAEkS,EAAEqd,CAAC,CAC9F,SAASy1Q,GAAIhlS,GAAG,OAAGA,EAAEkS,EAAEnS,EAAE/B,EAAEqD,IAAI49P,MAAMC,KAAavhF,GAAG4qB,IAAIvoM,EAAEkS,EAAEnS,EAAE/B,GAAGgqM,MAAM0/C,MAAM,IAAW1nP,EAAEkS,EAAEnS,CAAC,CAC9F,SAAS2sL,GAAI1sL,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,GAA+C,OAA5CiyR,IAAIjlS,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,GAAGkyR,GAAIllS,GAAE,GAAcA,CAAC,CAC5F,SAASmlS,GAAInlS,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,GAAGmsL,GAAG//L,KAAKuF,KAAKtE,EAAEkS,GAAG5N,KAAKvE,EAAEwvB,EAAEjrB,KAAKiB,EAAExF,EAAEuE,KAAKirB,EAAEhqB,EAAEjB,KAAK4N,EAAE4oB,EAAEx2B,KAAKtE,EAAE2wQ,GAAGh+P,EAAE,CAI9F,SAASyyR,GAAIplS,EAAEkS,GAAG,OAAOuyM,KAAKiyE,GAAG1C,KAAK/gJ,EAAK3/H,KAAKskB,IAAI,EAAE1lB,IAAI8hR,KAAK,GAAG9hR,GAAGvC,MAAM,IAAIA,MAAMuC,GAAG,EAAElS,EAAEkS,CAAC,CAE7F,SAASuuJ,KAAMA,GAAI/rB,EAAI2wJ,IAAI,IAAInrH,GAAI+yE,IAAI1uE,GAAGC,GAAGy8D,IAAG,GAAGqqD,IAAI,IAAI,EAAE,IAAIC,IAAIhnH,GAAGC,GAAGq8D,IAAG,GAAG2qD,IAAI,GAAG,EAAE,GAAG,CAC7F,SAASpqB,KAAMA,GAAI1mI,EAAI4mI,IAAI,IAAI1oE,GAAI,KAAK,GAAG2oE,IAAI,IAAI3oE,GAAI,SAAS,GAAG4oE,IAAI,IAAI5oE,GAAI,YAAY,EAAE,CAC7F,SAAS89B,KAAMA,GAAIh8F,EAAI+wJ,IAAI,IAAIxpJ,GAAIypJ,IAAI,IAAI1pJ,GAAI2pJ,IAAI,IAAIzpJ,GAAI0pJ,IAAI,IAAIzpJ,GAAI0pJ,IAAI,IAAIzpJ,GAAI0pJ,IAAI,IAAIzpJ,EAAG,CAE9F,SAAS0pJ,GAAI/lS,EAAEkS,GAAG,IAAIqd,EAAW,OAAOy2Q,IAAI,IAAI/wF,IAAxB1lL,EAAE02Q,IAAIjmS,IAAwBuvB,EAAEA,EAAExvB,GAAG,IAAIk1M,GAAI1lL,EAAErd,EAAEqd,EAAEvvB,GAAGA,EAAEu/L,KAAKrtL,EAAElS,EAAEi+L,KAAK,CAC9F,SAASioG,GAAIlmS,EAAEkS,GAAG,IAAIqd,EAAE,OAAGvvB,EAAEkS,EAAU,MAAUqd,EAlOjD,SAAavvB,EAAEkS,GAAG,IAAIqd,EAAc,OAAZA,EAAErd,EAAE,EAAEA,EAAE,EAAEA,EAASu1K,GA3vE3C,SAAaznL,EAAEkS,GAAS,OAANlS,EAAEoS,EAAEF,EAASlS,CAAC,CA2vEemmS,CAAI9I,GAAI73D,GAAI,IAAIhqD,GAAIjsJ,GAAGvvB,EAAEJ,GAAGI,EAAEoS,GAAGpS,EAAEqB,EAAE,CAkOjC+kS,CAAIpmS,EAAEA,EAAE2S,GAAGizN,GAAI5lO,EAAEA,EAAEuvB,GAAGA,EAAEvxB,EAAEgC,EAAEA,EAAED,EAAEmS,EAASqd,EAAE,CAC9F,SAAS82Q,GAAIrmS,EAAEkS,EAAEqd,GAAGsyQ,IAAItyQ,EAAE,uBAAuB,GA+hBjD,SAAavvB,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAEu1B,EAAmD,IAAjDA,EAAE5oB,EAAEA,EAAEA,EAAElS,EAAEA,EAAE,IAAIy5K,GAAIz5K,EAAEkS,EAAE+rK,GAAGmV,IAAGsW,IAAI,GAAG5uK,EAAE,GAAG,GAAGvL,EAAE,EAAMhqB,EAAEu5P,IAAI5sP,EAAEA,EAAE,GAAG3M,EAAE2M,GAAG3M,EAAExF,EAAEwvB,GAAMouJ,GAAGohF,GAAIx5P,GAAG,IAAMoN,EAAE4c,GAAI,CA/hBjF+2Q,CAAItmS,EAAEkS,GAykD1D,SAAalS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAA+B,IAA7BA,EAAEgrK,GAAG4qB,IAAIr2L,GAAG6sJ,MAAMwnI,MAAM,KAASzrQ,EAAEgkO,IAAI5sP,EAAEA,EAAE,GAAG4oB,EAAE5oB,GAAG4oB,EAAE/6B,EAAEwvB,GAAoB,GAAhBhqB,EAAEo4K,GAAGohF,GAAIjkO,GAAG,IAAiB,GAAV96B,EAAEkS,EAAE3M,EAAEoN,GAAM,CAAC,OAAOA,EAAEA,GAAG,KAAK,EAAE6zR,IAAIxmS,EAAEuF,GAAG,MAAM,KAAK,EAAEkhS,IAAIzmS,EAAEuF,GAAIvF,EAAEkS,EAAE3M,EAAEoN,GAAG,CAAC,CAAE,IAAI5S,EAAE++P,IAAI9+P,EAAEA,EAAE,GAAGD,EAAEmS,GAAGnS,EAAEA,EAAEwvB,GAAqBypN,IAAjBzpN,EAAEouJ,GAAGohF,GAAIh/P,GAAG,MAAUmS,EAAEnS,EAAEwvB,GAAE,GAAMypN,GAAGzpN,EAAEA,EAAErd,EAAEqd,GAAE,GAAMw4K,GAAI71L,GAAGw0R,MAAMC,KAAK3mS,EAAEA,EAAE,CAzkDpO4mS,CAAI5mS,EAAEkS,GAAGlS,EAAEA,EAAE,KAAKA,EAAEkS,EAAE,KAAKqwR,IAAIhzQ,EAAE,CAC9F,SAASs3Q,GAAI7mS,EAAEkS,EAAEqd,GAAGjrB,KAAKqO,EAAE3S,EAAEsE,KAAKvE,EAAEmS,EAAE5N,KAAKiB,EAAEgqB,EAAEjrB,KAAKtE,EAAE,IAAIsyK,GAuvC1D,SAAatyK,GAAG,IAAIkS,EAAEqd,EAAIhqB,EAAEu1B,EAAEnoB,EAAiB,IAAfA,EAAEm0R,GAAI9mS,EAAED,EAAEC,EAAEuF,GAAOu1B,EAAEnoB,EAAEgpM,KAAK7gL,EAAEygL,MAAkD,IAA3Ch2M,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,IAAmClsL,EAAE,IAAIo2I,GAAnC3lK,EAAEuF,IAAIk6K,MAAMG,KAAKr6K,EAAEA,EAAEA,EAAEoN,GAAmB4c,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAA6BkrN,GAApBl3M,EAAEyrK,GAAGC,GAAIruJ,GAAG,MAAgBrd,EAAEqd,EAAEvxB,EAAEuxB,GAAGrd,EAAEnS,EAAE/B,EAAEuxB,IAAGw3Q,IAAI/mS,EAAEkS,KAAKlS,EAAE86B,IAAI96B,EAAEuvB,EAAI,CAvvC3Jy3Q,CAAI1iS,MAAM2iN,KAAMnC,GAAIxgN,KAAKtE,EAAE,KAAK,CAC9F,SAASinS,GAAIjnS,GAAGsE,KAAKtG,EAAEgC,EAAEi/K,KAAQ36K,KAAKtG,EAAE,IAAGsG,KAAKqO,EAAErO,KAAK++P,GAAG/+P,KAAKtG,GAAGsG,KAAKtG,EAAE,EAAE,GAAG,GAAGgC,EAAEqgM,GAAG/7L,KAAKqO,GAAG,CAC9F,SAAS6mP,GAAIx5P,EAAEkS,GAAGg6M,GAAIntN,KAAKuF,KAAK4iS,IAAGlnS,EAAEkS,GAAG5N,KAAK4N,EAAE5N,KAAKA,KAAKtE,EAAE+nN,IAAI/nN,EAAEgoN,KAAKw4D,GAAIl8Q,KAAKiB,EAAEyiN,KAAK1jN,KAAKirB,GAAG,CAC9F,SAASguL,GAAGv9M,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAS,IAAP8gK,GAAI3uJ,GAAOnS,EAAEmS,EAAEo3N,KAAK3tB,KAAK57M,EAAEw7M,MAAOhsL,EAAEouJ,GAAG59K,EAAE07M,KAAK,IAAIz7M,EAAE65N,GAAGtqM,EAAEs9K,KAAKt9K,EAAEurL,KAAM,CAI/F,SAASviB,GAAIv4L,GAAG,IAAIkS,EAAE,IAAS,GAANlS,EAAEkS,EAAM,CAAC,GAAQ,GAALlS,EAAEuF,EAAM2M,GAAG,OAAO,IAAIA,EAAE,EAAU,GAARlS,EAAEA,EAAEkS,GAAMA,KAAMlS,EAAEkS,EAAEA,CAAC,CAAC,OAAOlS,EAAEkS,CAAC,CAC/F,SAASwtP,GAAI1/P,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAO8sK,MAAMG,IAAI,KAAK,EAAE,OAAOH,MAAMC,IAAI,QAAQ,OAAO1/K,EAAG,CAC9F,SAAS4+P,GAAI5+P,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAO8sK,MAAMonB,IAAI,KAAK,EAAE,OAAOpnB,MAAMM,IAAI,QAAQ,OAAO//K,EAAG,CAI9F,SAASmnS,GAAInnS,EAAEkS,GAAS,OAANw7M,KAAavS,GAAGn7M,GAAG+wQ,GAAI/wQ,EAAE8jL,GAAG5xK,IAAI+oM,GAAGj7M,GAAGmwO,GAAInwO,EAAEugL,GAAGruK,IAAI8oM,GAAGh7M,GAAGiwO,GAAIjwO,EAAEm8M,GAAGjqM,IAAIlS,EAAEonS,GAAGl1R,EAAE,CAC/F,SAASm1R,GAAIrnS,EAAEkS,GAAGA,EAAE8B,EAAEhU,EAAEA,EAAED,EAAEkzI,EAAK3/H,KAAKugB,IAAI7zB,EAAED,EAAEmS,EAAEQ,GAAG1S,EAAEkS,GAAGA,EAAEnS,GAAiB,GAAdC,EAAEA,EAAEuvB,EAAErxB,OAAU,EAAE8B,EAAEuvB,GAAGwmJ,GAAI/1K,EAAEA,EAAEkS,EAAE,CAC9F,SAASs/N,GAAIxxO,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAkC,OAAhCv1B,EAAEvF,EAAEuvB,EAAEA,EAAEvvB,EAAEuvB,EAAEvvB,EAAEkS,EAAE4oB,EAAE96B,EAAED,EAAEA,EAAEC,EAAED,EAAEC,EAAEA,EAASkS,EAAElS,EAAEuF,GAAG2M,EAAElS,EAAEuvB,GAAGrd,EAAEA,EAAE4oB,GAAG5oB,EAAEA,EAAEnS,CAAC,CAC/F,SAASqiP,GAAIpiP,EAAEkS,EAAEqd,EAAExvB,GAAG8pL,GAAG7pL,EAAE8sN,GAAG,OAAOnvC,GAAG39K,EAAE8sN,GAAG,KAAKvJ,GAAG,MAAM14B,GAAI7qL,EAAEuvB,GAAKrd,GAsxCtE,SAAalS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAE,GAAI2M,EAAgC,GAAY,IAAJ,EAAJA,EAAElU,GAAgB,IAAP+B,EAAE,KAASwvB,EAAErd,EAAEqd,GAAGA,EAAEA,EAAEA,EAAE,CAAC,GAAY,IAAJ,EAAJA,EAAEvxB,GAAQ,CAAuB+iS,GAAI/gS,EAA1BuF,EAAE48K,IAAKmH,GAAI/5J,GAAGA,EAAErvB,EAAEH,KAAa4iN,GAAI3iN,EAAEuF,GAAG,KAAK,CAACxF,GAAG,IAAI,MAA2BghS,GAAI/gS,EAAxBuF,EAAE48K,IAAKmH,GAAIp3K,GAAGA,EAAEhS,KAAayiN,GAAI3iN,EAAEuF,QAAnLw7R,GAAI/gS,EAAE,MAAM2iN,GAAI3iN,EAAE,MAAoKA,EAAEs+L,GAAGpsL,EAAE,CAtxCvJo1R,CAAItnS,EAAEkS,GAAGnS,GAAGC,EAAEunS,IAAG,EAAK,CAC/F,SAAS/vF,GAAIx3M,EAAEkS,GAAG,IAAIqd,EAAcq4M,GAAZr4M,EAAEouJ,GAAGzrK,EAAE,KAAW,IAAIlS,EAAEhC,GAAG4pO,GAAIr4M,EAAE,IAAIvvB,EAAEoS,GAAGw1N,GAAIr4M,EAAEy9J,IAAIhtL,EAAE2S,GAAGi1N,GAAIr4M,EAAEu9J,IAAI9sL,EAAE86B,EAAE,CAC/F,SAASwmJ,KAAMA,GAAI5sC,EAAI8yJ,IAAI5lB,IAAIjkE,GAAI8pB,GAAIA,GAAI,IAAI/iC,IAAKuuD,MAAMs/B,MAAMp/B,MAAM8sC,MAAMzN,IAAI0N,KAAKhtC,KAAKitC,IAAI,CAC9F,SAAS5hI,KAAMA,GAAI7pB,EAAI+yJ,IAAI7lB,IAAIjkE,GAAI8pB,GAAIA,GAAI,IAAI/iC,IAAKuuD,MAAMs/B,MAAMp/B,MAAM8sC,MAAMzN,IAAI0N,KAAKhtC,KAAKitC,IAAI,CAC9F,SAAS5iB,KAAMA,GAAI7oI,EAAI+oI,IAAI,IAAIppE,GAAIy1E,IAAI,GAAGpM,IAAI,IAAIrpE,GAAI,mBAAmB,GAAGspE,IAAI,IAAItpE,GAAI,KAAK,EAAE,CAC/F,SAAS6kE,KAAMA,GAAIxkI,EAAI0kI,IAAI,IAAI3mE,GAAI,UAAU,GAAG4mE,IAAI,IAAI5mE,GAAIi1F,IAAI,GAAGpuB,IAAI,IAAI7mE,GAAI,cAAc,EAAE,CAC/F,SAASk1F,KAAMA,GAAIjzJ,EAAIkzJ,IAAIxpF,IAAIypF,MAAMtpH,GAAGC,GAAGl1G,IAAG,GAAG2iK,IAAI,IAAI,EAAE,CAAC67D,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CAC/F,SAASC,KAAMA,GAAI5zJ,EAAI6zJ,IAAInqF,IAAIoqF,MAAMjqH,GAAGC,GAAGiqH,IAAG,GAAGx8D,IAAI,IAAI,EAAE,CAACy8D,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CAC/F,SAASC,KAAMA,GAAIx0J,EAAIy0J,IAAI/qF,IAAIgrF,MAAM7qH,GAAGC,GAAG6qH,IAAG,GAAGp9D,IAAI,IAAI,EAAE,CAACq9D,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CAC/F,SAASC,KAAMA,GAAIp1J,EAAIq1J,IAAI3rF,IAAI4rF,MAAMzrH,GAAGC,GAAGyrH,IAAG,GAAGh+D,IAAI,IAAI,EAAE,CAACi+D,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CAC/F,SAASC,KAAMA,GAAIh2J,EAAIi2J,IAAI,IAAI/rF,GAAI,YAAY8O,MAAM,IAAQk9E,IAAI,IAAIhsF,GAAI,mBAAkB,EAAK,CAChG,SAASisF,GAAI7qS,EAAEkS,GAAG,OAAO65N,GAAI,IAAItlE,GAAIzmK,GAAG,IAAI0mK,GAAIx0J,GAAG,IAAIy0J,GAAIz0J,GAAG,IAAIikI,GAAIooC,GAAGC,GAAGwtD,IAAG,GAAGC,IAAI,IAAI,EAAE,IAAI,CAChG,SAAS6+D,KAAM,IAAI9qS,EAAmE,OAA7D+qS,MAAKA,IAAI,IAAIr0H,GAngEtC,SAAa12K,EAAEkS,GAAM4lN,MAAY93N,EAAEkS,EAAEA,EAAC,CAmgEkB84R,CAAdhrS,EAAE,IAAIsuQ,GAAI,KAAWzrE,KAAMC,MA5FrE,SAAa9iM,EAAEkS,GAAkC,IAA7Bq8P,KAAMz2C,IAAK,KAAK5lN,EAAEqd,GAAGrxB,QAAW25N,GAAI3lN,EAAE,IAAIyjI,GAAKu5C,GAAIlvL,EAAEA,EAAE83N,IAAI,KAAK5lN,EAAEqd,EAAErd,EAAE,CA4Ff+4R,CAAIF,IAAI/qS,IAAU+qS,GAAG,CAEhG,SAASG,GAAIlrS,EAAEkS,GAAG,IAAIqd,EAAiB,SAAfA,EAAE47Q,IAAIl0G,KAAMj3L,MAASorS,IAAIl5R,GAAG6tJ,MAAMsrI,KAAK97Q,IAAU,EAAuB,CAChG,SAAS6wL,GAAIpgN,EAAEkS,GAAG,IAAIqd,EAAE,IAAIA,EAAE,EAAEA,EAAErd,EAAEE,EAAEmd,EAAErxB,OAAOqxB,IAAKouJ,GAAGyyC,GAAIpwN,EAAEuvB,GAAG,IAAIsyK,GAAGlkB,GAAGyyC,GAAIl+M,EAAEqd,GAAG,KAAK,OAAOvvB,CAAC,CAChG,SAASsrS,GAAItrS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,IAAIA,EAAE,IAAI4lK,GAAIzzJ,EAAEA,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,IAAIC,EAAEA,EAAEuvB,EAAEnsB,GAAGmoS,IAAIh8Q,EAAG,CAChG,SAASi8Q,GAAIxrS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAS,IAAP8gK,GAAI3uJ,GAAOnS,EAAEC,EAAEspO,KAAK3tB,KAAK57M,EAAEw7M,MAAOhsL,EAAEouJ,GAAG59K,EAAE07M,KAAK,IAAIvpM,EAAE09O,GAAGrgO,EAAEs9K,KAAKt9K,EAAEurL,KAAM,CAChG,SAAS2wF,GAAIzrS,EAAEkS,GAAY23K,GAAG33K,EAAE,KAAKyrK,GAAG39K,EAAEuvB,EAAE,IAAIwhM,KA3GhD,SAAa/wN,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,IAAIA,EAAEmS,EAAEo3N,KAAK3tB,KAAK57M,EAAEw7M,MAAuBmwF,IAAI1rS,GAApBuvB,EAAEouJ,GAAG59K,EAAE07M,KAAK,KAAY5O,KAAKt9K,EAAEurL,KAAM,CA2G1B6wF,CAAI3rS,EAAb29K,GAAGzrK,EAAE,MAAkByrK,GAAG39K,EAAEuvB,EAAE,IAAIq8Q,GAAG15R,EAAG,CAC/F,SAASm3M,GAAGrpN,GAAG,OAAO6pL,GAAG7pL,EAAE,KAAK6wQ,GAAGlzF,GAAG39K,EAAE,MAAM6pL,GAAG7pL,EAAE,KAAK29K,GAAG39K,EAAE,KAAKA,EAAE6pL,GAAG7pL,EAAE,IAAI,IAAI88K,GAAG98K,GAAG,IAAI8qE,GAAG9qE,EAAE,CAEhG,SAAS6rS,GAAI7rS,EAAEkS,GAAGlS,EAAEA,EAAE0qM,GAAI1qM,EAAEA,EAAE,GAAGA,EAAEuvB,EAAE0jH,EAAK3/H,KAAKsgB,IAAI5zB,EAAEuvB,EAAErd,GAAGlS,EAAEkS,EAAE+gI,EAAK3/H,KAAKugB,IAAI7zB,EAAEkS,EAAEA,GAAGlS,EAAED,EAAE2qM,GAAI1qM,EAAED,EAAEmS,EAAE,CACjG,SAAS45R,GAAI9rS,EAAEkS,GAAG,IAAIqd,EAAEsyQ,IAAI3vR,EAAE,0CAA0C,GAAGqd,EA0qD3E,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAA0B,IAAxBA,EAAE,IAAIm2L,GAAIjxN,EAAEA,EAAEuvB,EAAErxB,QAAYqH,EAAE,IAAIogK,GAAI3lK,EAAEA,GAAGuF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAQ,CAAqD,OAApD6B,EAAE49K,GAAGC,GAAIr4K,GAAG,IAAiC2M,EAAE,MAA/Bqd,EAAEouJ,GAAG4qB,IAAIxoM,GAAGs9J,MAAM0uI,MAAM,MAAqBp5R,GAAG,KAAK,EAAE,KAAK,EAAKokQ,KAAH7kQ,EAASilQ,IAAK,MAAM,KAAK,EAAE,KAAK,EAAKJ,KAAH7kQ,EAASglQ,IAAShlQ,GAAG61L,GAAIhoM,GAAGioM,MAAMgkG,MAAMj1B,KAAMI,MAAMjlQ,GAAGglQ,IAAI+0B,IAAIlsS,EAAEwvB,GAAGyqP,KAAME,MAAMhoQ,GAAGilQ,KAAK80B,IAAIlsS,EAAEwvB,GAAGyqP,KAAMG,OAAWr/O,EAAEvL,EAAEuL,EAAEvL,EAAErxB,QAAQ6B,CAAE,CAAC,OAAO+6B,CAAC,CA1qD5QoxQ,CAAIlsS,GAimEjF,SAAaA,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAE,IAAI1B,EAAE,IAAIuzJ,GAAI3lK,GAAGoS,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAQ,CAAqD,OAApDF,EAAE2/K,GAAGC,GAAIxrK,GAAG,IAAiC0oB,EAAE,MAA/BnoB,EAAEgrK,GAAG4qB,IAAIvqM,GAAGq/J,MAAM0uI,MAAM,MAAqBp5R,GAAG,KAAK,EAAE,KAAK,EAAKokQ,KAAHj8O,EAASq8O,IAAK,MAAM,KAAK,EAAE,KAAK,EAAKJ,KAAHj8O,EAASo8O,IAAM,GAAGp8O,EAAGitK,GAAI/pM,GAAGgqM,MAAMgkG,MAAMj1B,KAAMI,MAAMr8O,GAAGo8O,IAAI+0B,IAAIjuS,EAAE2U,GAAGqnQ,KAAME,MAAMp/O,GAAGq8O,KAAK80B,IAAIjuS,EAAE2U,GAAGqnQ,KAAMG,WAAW,GAAGh5D,GAAIxjC,GAAG4qB,IAAIvqM,EAAE8jS,KAAK,MAAoB,GAAd9jS,EAAEoU,EAAEmd,EAAErxB,OAAU,CAAQ,IAAPgU,GAAE,EAAS4B,EAAE,IAAI6xJ,GAAI3nK,EAAEoU,GAAG0B,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAAQ,CAAiB,MAAhBmD,EAAEs8K,GAAGC,GAAI9pK,GAAG,KAAW1B,IAAIqtK,MAAMC,MAAMr+K,EAAEkE,EAAEgqB,EAAErxB,OAAOmD,EAAEsR,EAAE4c,EAAErxB,OAAO,GAAGmD,EAAE+Q,GAAGwtK,KAAKv+K,EAAEkE,EAAEgqB,EAAErxB,OAAOmD,EAAEsR,EAAE4c,EAAErxB,OAAO,GAAG,CAACgU,GAAE,EAAM,KAAK,CAAC,IAAI3M,EAAE,IAAIogK,GAAItkK,EAAEsR,GAAGpN,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAkD,GAAzCqxB,EAAEouJ,GAAGC,GAAIr4K,GAAG,KAAI9B,EAAEk6K,GAAG4qB,IAAIh5K,EAAExvB,EAAE/B,EAAE+tS,KAAK,QAAYvb,KAAMK,MAAMptR,GAAGqtR,IAAI,CAAC5+Q,GAAE,EAAM,KAAK,CAAE,IAAInS,EAAE,IAAI4lK,GAAItkK,EAAEkE,GAAGxF,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAkD,GAAzCqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,KAAI0D,EAAEk6K,GAAG4qB,IAAIh5K,EAAEA,EAAEvxB,EAAE+tS,KAAK,QAAYvb,KAAMG,MAAMltR,GAAGmtR,IAAI,CAAC1+Q,GAAE,EAAM,KAAK,CAAE,CAACA,GAAG+5R,IAAIjuS,EAAE2U,GAAGqnQ,KAAMC,KAAK,CAAE,CAAC,CAjmE5rBkyB,CAAI58Q,GAAGgzQ,IAAIrwR,EAAE,CACjG,SAASk6R,GAAIpsS,GAAG,IAAIkS,EAAU,MAALlS,EAAED,KAAWC,EAAEuF,EAAEvF,EAAE86B,EAAE,EAAEuxQ,GAAI,UAAarsS,EAAEuF,EAAE2M,EAAElS,EAAED,EAAEC,EAAED,EAAE,KAAKC,EAAE86B,EAAE,EAAEuxQ,GAAIn6R,GAAG,CACjG,SAASsxN,GAAIxjO,GAAG,IAAIkS,EAAQ,OAAM,IAAZA,EAAElS,EAAEyD,GAAkBzD,EAAE8T,EAAE9T,EAAEgT,EAAEqqP,IAAOnrP,GAAGwxN,IAAY1jO,EAAE8T,EAAE9T,EAAEgT,EAAEqqP,IAAIC,IAAWt9P,CAAC,CAClG,SAASssS,GAAItsS,GAAS,OAANm3N,KAASn3N,EAAE4pB,EAAEq2K,IAAIq3B,MAAMmyD,QAAWzpR,EAAE4kC,EAAEq7J,IAAIssG,MAAMC,MAAcC,IAAIzsS,GAAW,IAAI,CACjG,SAASgjN,GAAIhjN,GAAU,GAAP6gK,GAAI7gK,GAAgB,GAAVA,EAAE9B,OAAW,MAAMg1K,GAAI,IAAImR,GAAI,4BA8rDzD,SAAarkL,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEpU,EAAEsS,EAAEhU,OAAOF,EAAE4B,EAAEg4L,GAAI,EAAE1lL,EAAEhU,QAA4B,IAAjBgU,EAAEmN,WAAW,IAAQvL,GAAG,EAAEd,EAAE,IAAIpT,IAAOkU,EAAE,EAAEd,EAAE,GAA+F,IAA7F8nB,GAAG4xQ,MAAMC,KAAK,IAAIpnS,EAAE3F,EAAEk7B,EAAE,EAAW,IAAT9mB,EAAEpU,EAAEk7B,MAAUv1B,EAAE9B,EAAEw6K,GAAGmV,IAAGsW,IAAI,GAAGnkM,EAAE,GAAG,GAAGgqB,EAAEq9Q,IAAI,GAAGj6R,EAAE,EAAEzS,EAAE8S,GAAM,GAAHgB,EAAK8mB,EAAE9mB,GAAO5Q,EAAE4P,EAAE5P,EAAEpF,EAAMkC,GAAJkD,EAAElD,GAAM46B,EAAG/6B,EAAEi4L,IAAI9lL,EAAEuhD,OAAOrwD,EAAElD,EAAEkD,GAAG60L,IAAIC,KAAQi2F,MAAH/7Q,EAASy6R,IAAIppS,EAAEA,EAAEkP,EAAE4c,GAAInd,GAAG06R,IAAIrpS,EAAEkP,EAAE5S,GAAG0D,EAAEkP,KAAKP,EAAE/Q,EAAEsR,EAAE3S,EAAEuF,EAAEuO,EAAE9T,EAAED,EAAEsB,EAAErB,EAAEA,EAAEyD,EAAE42P,GAAIr6P,EAAE,CA9rD9Q+sS,CAAIzoS,KAAKtE,EAAE,CAC/F,SAASgtS,GAAGhtS,GAAG,IAAIA,EAAG,MAAMkzK,GAAI,IAAI4O,GAAI,sDAAuD,CAC/F,SAAS8oB,GAAI5qM,GAAG,OAAGitS,IAAIjtS,GAAGA,EAAEs9P,IAAYt9P,EAAE,EAAEizI,EAAK3/H,KAAKwd,KAAK9wB,GAAGizI,EAAK3/H,KAAKC,MAAMvT,GAAUwjO,GAi/CxF,SAAYxjO,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,GAAGnrB,MAAM3P,GAAI,OAAOm9P,KAAKC,IAAG,GAAGp9P,GAAG,mBAAqB,OAAOm9P,KAAKguB,IAAG,GAAGnrR,GAAG,mBAAqB,OAAOm9P,KAAK+tB,IAAG3lR,GAAE,EAASvF,EAAE,IAAGuF,GAAE,EAAKvF,GAAGA,GAAED,EAAE,EAAKC,GAAGs9P,MAAiBt9P,IAAZD,EAAEo4L,GAAGn4L,EAAEs9P,MAAUA,KAAI/tO,EAAE,EAAKvvB,GAAGq9P,MAAiBr9P,IAAZuvB,EAAE4oK,GAAGn4L,EAAEq9P,MAAUA,KAAiC,OAA7BnrP,EAAEimL,GAAGn4L,GAAG86B,EAAE4kL,GAAGxtM,EAAEqd,EAAExvB,GAAGwF,GAAG2nS,GAAGpyQ,GAAUA,CAAC,CAj/C1LqyQ,CAAGntS,GAAG,CAClG,SAASotS,GAAIptS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAa,IAAXgqB,EAAEvvB,EAAEuvB,EAAE03O,KAAS1hQ,EAAE2M,EAAEypM,KAAKp2M,EAAEg2M,MAAOx7M,EAAEwF,EAAEk2M,KAAKz7M,EAAEA,EAAE4vP,GAAGrgO,EAAExvB,GAAG,OAAOC,EAAEkS,EAAEkqM,GAAG7sL,EAAE,CAClG,SAAS0mJ,GAAIj2K,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAW,GAAM,OAAfgqB,EAAEvvB,EAAEqtS,OAAiBrtS,EAAEwhN,KAAM,IAAIzhN,EAAE,EAAEwF,EAAEgqB,EAAErxB,OAAO6B,EAAEwF,IAAIxF,EAAGwvB,EAAExvB,GAAGutS,GAAGp7R,EAAI,CACjG,SAASq7R,GAAIvtS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAiB,IAAXA,EAAEw/O,GAANhwN,EAAEvvB,GAAWuF,EAAQxF,GAAE,CAAK,IAAJwvB,EAAExvB,IAAQmS,EAAG,OAAO,EAAKnS,EAAEw/O,GAAIhwN,GAAGhqB,CAAC,CAAC,OAAO,CAAK,CAElG,SAASioS,GAAGxtS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAwC,OAAtCA,EAAEo4K,GAAG6gD,GAAGx+N,EAAED,EAAEmS,GAAG,IAAInS,EAAE49K,GAAG6gD,GAAGx+N,EAAEkS,EAAEqd,GAAG,IAAYhqB,GAAIxF,EAAOozQ,GAAGnzQ,EAAEuF,EAAEvF,EAAED,EAAEC,GAAhB,IAAkB,CAGjG,SAASytS,GAAIztS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEA,EAAE,IAAIuyK,GAAI/iJ,EAAErd,EAAE,GAAGnS,EAAEwvB,EAAExvB,EAAEwvB,EAAErxB,QAAQqxB,EAAEA,EAAEouJ,GAAG+5B,GAAI13M,EAAEqB,EAAEkuB,GAAG,UAAUA,GAAG,OAAOxvB,CAAC,CAClG,SAAS0qN,GAAIzqN,EAAEkS,GAAG,IAAIqd,EAAE,OAAa,IAATvvB,EAAEgtN,GAAG96M,IAA6B,IAAtBqd,EAAEm+Q,IAAI1tS,EAAEkS,IAAgBlS,EAAE4sN,GAAGm/D,GAAG/rR,EAAE4sN,IAAIr9L,GAAe,IAAK,CAClG,SAASi7J,GAAIxqL,EAAEkS,GAAG,IAAIqd,EAAoE,OAAhEA,EAAK,IAAIixI,IAAS6wB,EAAEn/K,GAAGlS,EAAEgpF,KAAKhpF,EAAEgpF,GAAG,IAAIqpJ,GAAIryO,EAAEq6O,IAAGr6O,IAAIirL,GAAIjrL,EAAEgpF,GAAGz5D,GAAUA,CAAC,CAClG,SAASo7J,GAAI3qL,EAAEkS,GAAG,IAAIqd,EAAoE,OAAhEA,EAAK,IAAIgmJ,IAAS8b,EAAEn/K,GAAGlS,EAAEgpF,KAAKhpF,EAAEgpF,GAAG,IAAIqpJ,GAAIryO,EAAEq6O,IAAGr6O,IAAIirL,GAAIjrL,EAAEgpF,GAAGz5D,GAAUA,CAAC,CAClG,SAASo+Q,GAAI3tS,EAAEkS,GAAG,OAAOA,GAAG,KAAK,EAAE,QAASlS,EAAEJ,GAAU,GAAPI,EAAEJ,EAAE5B,EAAK,KAAK,EAAE,OAAY,MAALgC,EAAEqB,EAAS,OAAOu2P,GAAI53P,EAAEkS,EAAE,CAClG,SAAS07R,GAAI5tS,GAAG,OAAOA,EAAEA,EAAE2S,GAAG,KAAK,EAAE,OAAO,IAAIymM,GAAI,KAAK,EAAE,OAAO,IAAIy0F,IAAI,QAAQ,OAAO,IAAIzuI,GAAK,CAClG,SAAS0uI,GAAI9tS,GAAG,IAAIkS,EAAE,GAAGlS,EAAE2S,EAAE,GAAG3S,EAAEu7M,KAA+B,QAAvBv7M,EAAEA,EAAEA,EAAE2S,EAAE,EAAET,EAAElS,EAAEhC,EAAEgC,EAAEu7M,KAAYrpM,EAAO,MAAMghK,GAAI,IAAImC,GAAK,CAElG,SAASuuD,GAAI5jO,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAyD,OAAnDxF,EAAE,GAANwF,EAAEvF,GAAW,IAAGuF,GAAG+3P,IAAIv9P,EAAE2jO,KAAIn0M,EAAE4oK,GAAG5yL,EAAE83P,KAA0B39C,GAAnBvnB,GAAG5yL,EAAEgqB,EAAE8tO,KAAiB9tO,EAAExvB,EAAE,CACnG,SAASguS,GAAG/tS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAM,IAAJA,EAAE,EAAMwvB,EAAE,IAAI+xK,GAAIthM,EAAEA,GAAGuvB,EAAEvvB,EAAEuvB,EAAEA,EAAEvvB,EAAE9B,QAASgU,EAAE8yO,GAAIz1N,GAAGvvB,EAAEkS,EAAE+tL,GAAG/tL,MAAMnS,EAAE,OAAOA,CAAC,CAEnG,SAASy6N,GAAIx6N,EAAEkS,GAAG,IAAIqd,EAAEjrB,KAAKirB,EAAEvvB,EAAYguS,IAAIhuS,EAAduvB,EAAE,IAAI+iJ,GAAYpgK,EAAElS,EAAEkS,EAAE,MAAK,EAAM,MAAK,GAAO5N,KAAKtE,EAAE,IAAIupN,GAAIh6L,EAAE,EAAE,CACnG,SAAS0vL,GAAIj/M,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAEsE,KAAKiB,EAAE2M,EAAE5N,KAAKvE,EAAEmS,EAAEE,EAAE9N,KAAKw2B,GAAGqxK,KAAMxuB,GAAG39K,EAAE,IAAIunN,MAAMjjN,KAAKjD,EAAE0mN,IAAI71M,EAAE3M,EAAEyiN,KAAKhoN,EAAE,CAClG,SAASiuS,GAAIjuS,EAAEkS,EAAEqd,GAAGjrB,KAAK4N,GAAG2uJ,GAAI7gK,GAAGA,GAAGsE,KAAKvE,GAAG8gK,GAAI3uJ,GAAGA,GAAG5N,KAAKiB,GAAGs7J,GAAItxI,GAAGA,GAAGjrB,KAAKirB,EAAEjrB,KAAKvE,EAAG,GAAGuE,KAAKiB,CAAE,CACnG,SAAS2oS,KAAM5pS,KAAKtE,EAAE29K,GAAG6C,KAAK3lB,MAAMszI,MAAM,IAAInuS,EAAEsE,KAAKirB,EAAE+wJ,GAAIC,GAAGC,IAAI4tH,OAAO9pS,KAAK4N,EAAEouK,GAAIC,GAAGC,IAAI6tH,MAAM,CACjG,SAASC,KAAMA,GAAI55J,EAAI65J,IAAInwF,IAAIowF,MAAMjwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAACyiE,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CAClG,SAASC,KAAMA,GAAIz6J,EAAI06J,IAAIhxF,IAAIixF,MAAM9wH,GAAGC,GAAG8wH,IAAG,GAAGrjE,IAAI,IAAI,EAAE,CAACsjE,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CACnG,SAAS5rB,KAAMA,GAAIzvI,EAAI2vI,IAAI,IAAIh1E,GAAI,KAAK,GAAGi1E,IAAI,IAAIj1E,GAAI6hD,IAAI,GAAGqzB,IAAI,IAAIl1E,GAAIu+C,IAAI,GAAG42B,IAAI,IAAIn1E,GAAIy+C,IAAI,EAAE,CACnG,SAAS7uF,KAAMA,GAAIvqB,EAAS08G,KAAW4+C,IAAI,IAAIrxF,GAAIsxF,IAA5BC,IAAW7+C,KAA+BuI,KAAWu2C,IAAI,IAAIxxF,GAAIyxF,IAA5BC,IAAWx2C,IAAyB,CAChG,SAASue,KAAMA,GAAI1jI,EAAI4jI,IAAI,IAAIzmE,GAAI,YAAY,GAAG0mE,IAAI,IAAI1mE,GAAI,YAAY,GAAG2mE,IAAI,IAAI3mE,GAAI,MAAM,EAAE,CACjG,SAASy+F,GAAItwS,GAAGA,EAAE0S,EAAE,IAAI+jK,GAAIz2K,EAAEuD,EAAE,IAAIkzK,GAAIz2K,EAAEiU,EAAE,IAAIq+J,GAAItyK,EAAEhC,EAAE,IAAIs0K,GAAItyK,EAAED,EAAE,IAAI02K,GAAIz2K,EAAEA,EAAE,IAAI2oM,GAAI3oM,EAAEuvB,EAAE,IAAIijJ,EAAG,CACnG,SAASizE,GAAIzlP,GAAGsE,KAAK1E,EAAE,IAAI0yK,GAAIhuK,KAAKiB,EAAE,IAAIk0K,GAAIn1K,KAAK8N,EAAE,IAAIqnK,GAAIn1K,KAAKjD,EAAE,IAAIixK,GAAIhuK,KAAKw2B,EAAE,IAAIw3I,GAAIhuK,KAAKlB,EAAEpD,CAAC,CACnG,SAASuwS,GAAIvwS,EAAEkS,GAAMlS,EAAEuvB,IAAGihR,IAAIxwS,EAAEkS,GAAE,GAAMwvL,GAAI,IAAI0oB,GAAI,KAAK,IAAI7c,GAAIr7L,EAAE,KAAK,IAAIg6J,GAAIlsK,KAAIwwS,IAAIxwS,EAAEkS,GAAE,EAAM,CAElG,SAAS29P,GAAI7vQ,EAAEkS,GAAG,IAAIqd,EAAE,OAAIrd,IAAYqd,EAAErd,EAAEq+O,MAAOlvN,OAAQrhC,EAAEgU,EAAmBupM,GAAGv9M,EAAEgU,EAAEub,GAAvBvvB,EAAEgU,EAAE,IAAIspM,GAAI/tL,IAAsBvvB,GAA5DA,CAA6D,CACnG,SAASuxQ,GAAIvxQ,EAAEkS,GAAG,IAAIqd,EAAsE,YAAhD5vB,KAApB4vB,EAAEvvB,EAAEA,EAAEK,IAAI6R,MAAuBlS,EAAED,IAhxD3D,SAAaC,EAAEkS,GAAWlS,EAAEqlL,KAAOtmL,KAAKiB,EAAEkS,EAAE,CAgxDsBu+R,CAAIzwS,EAAEA,EAAEkS,KAAKlS,EAAEuvB,EAAEulN,GAAI90O,EAAEkS,IAAUqd,CAAC,CAKpG,SAASi+P,GAAIxtR,GAAG,IAAIkS,EAAyB,OAAvBg7L,GAAIltM,EAAE,GAAG,IAAIA,EAAEujO,GAAIvjO,IAA4B,IAAO,IAAxBkS,EAAE+3M,GAAI4lB,GAAI7vO,EAAE,MAAcw4L,IAAItmL,GAAGsmL,IAAIyxB,GAAIjqN,IAAI,GAAG,CACpG,SAASw7M,GAAIx7M,GAAG,IAAIkS,EAA8B,OAA5BA,EAAEyrK,GAAG4qB,IAAIvoM,GAAGgoM,MAAMe,MAAM,IAAW/oM,EAAEqB,IAAI49P,MAAMC,OAAOhtP,IAAIutK,MAAMG,MAAM1tK,GAAGwtK,IAAI,CACnG,SAASgxH,GAAI1wS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,GAAEA,EAAEo4K,GAAG4qB,IAAIvoM,GAAGq9J,MAAM2hG,MAAM,OAAoB2xC,GAAV5wS,EAAE,IAAIy5K,GAAU,EAAEj0K,GAAG4wR,GAAIp2R,EAAEwvB,GAAGgqK,GAAGrnL,EAAEnS,GAAG,CACpG,SAAS6wS,GAAI5wS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAW5S,GAAT4S,EAAE4sO,GAAIv/O,IAAOD,EAAEwF,EAAEoN,EAAE4c,EAAEuL,EAAE96B,EAAEJ,EAAEsS,IAAI4oB,EAAE96B,EAAE86B,EAAE96B,EAAED,EAAEmS,EAAE3M,EAAEvF,GAAGuvB,IAAIuL,EAAE5oB,EAAE4oB,EAAE5oB,EAAEnS,EAAEA,EAAEwF,EAAE2M,EAAE,CAGpG,SAAS2+R,GAAI7wS,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGohM,GAAG3mM,EAAEuvB,EAAErd,EAAES,GAAG4c,EAAE5c,EAAE5S,GAAG4mM,GAAG3mM,EAAEuvB,EAAEA,EAAE5c,GAAGT,EAAES,EAAE5S,GAAG4mM,GAAG3mM,EAAEkS,EAAEA,EAAES,GAAG4c,EAAE5c,EAAEpN,GAAGohM,GAAG3mM,EAAEkS,EAAEqd,EAAE5c,GAAGT,EAAES,EAAEpN,EAAE,CAGnG,SAASurS,GAAI9wS,EAAEkS,EAAEqd,EAAExvB,GAAG,OAAM,GAAHwvB,IAAcvvB,EAAEJ,IAAII,EAAEJ,EAAE,IAAI06L,GAAIrN,IAAGjtL,EAAE,EAAE,IAAI+wS,IAAI/wS,EAAEJ,EAAEsS,EAAEnS,IAAUixS,IAAIhxS,EAAEkS,EAAEqd,EAAExvB,EAAE,CACpG,SAASirL,GAAIhrL,EAAEkS,GAAG,IAAMnS,EAAoE,OAAlD8qL,GAAhB9qL,EAAK,IAAI2zJ,GAAaxhJ,GAAG+4K,KAAMjrL,EAAE4pB,IAAI5pB,EAAE4pB,EAAE,IAAIiiM,GAAIsvB,IAAGn7O,EAAE,IAAIA,EAAE4pB,GAAG7pB,GAAUA,CAAC,CACpG,SAASkxS,GAAIjxS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAkE,OAA1D,KAASA,EAAEs6P,GAAJ3tP,EAAUu7K,KAszBnD,SAAaztL,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAM9B,EAAE,GAAG8rB,EAA6B,IAAI9rB,IAAjB1D,EAAE,IAAIgvO,GAAjBx/M,EAAEvvB,EAAE9B,SAA6BgU,EAAEnS,EAAEC,GAAGD,EAAEwvB,EAAE,GAAGk9K,KAAMC,KAAK,IAAI+f,GAAI1sN,GAAG0D,EAAE83M,OAAuBh2M,EAAEu6P,GAAIvwO,EAApBouJ,GAAGl6K,EAAEg4M,KAAK,IAAcz7M,KAAQkxS,IAAIlxS,EAAEuF,EAAE2M,EAAI,CAtzB5Fi/R,EAAlBpxS,EAAE,IAAI22M,GAAI12M,EAAEuvB,IAAYvvB,EAAED,EAAEmS,EAAE3M,GAAGA,CAAW,CACpG,SAAS6rS,GAAIpxS,GAAG,IAAIkS,EAAsE,QAAhElS,EAAEA,GAAa,IAAJ,EAALA,EAAEw1K,KAAUx1K,EAAEA,EAAE4xO,OAAe/nD,GAAT33K,EAAE6U,IAAI/mB,GAAQ,OAAOA,EAAEA,EAAE29K,GAAGzrK,EAAE,MAAalS,EAAEA,CAAC,CACpG,SAASqxS,GAAGrxS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAS,IAAP8gK,GAAI3uJ,GAAOnS,EAAEmS,EAAEypM,KAAK57M,EAAEw7M,MAAgB,GAAThsL,EAAExvB,EAAE07M,MAASz7M,EAAEigM,GAAG1wK,GAAI,OAAO,EAAO,OAAO,CAAI,CAErG,SAAS+hR,GAAGtxS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAgD,OAA9CgqB,EAAEvvB,EAAE8T,EAAE5B,EAAE4B,EAAE/T,EAAEC,EAAEgT,EAAEd,EAAEc,GAAGuc,GAAG,IAAIhqB,EAAEvF,EAAEyD,EAAEyO,EAAEzO,GAAG1D,GAAG,IAAW2/M,GAAGnwL,EAAEk0M,IAAI1jO,EAAE0jO,IAAIl+N,EAAEm+N,IAAI,CACrG,SAAS6tE,GAAIvxS,GAAG,IAAIkS,EAAE,OAAGlS,EAAE,OAAKkS,GAAG82N,KAAMC,KAAKjpO,MAAQkS,EAAE+2N,IAAIjpO,GAAG,IAAI4kK,GAAI5kK,IAAWkS,GAAS,IAAI0yJ,GAAI5kK,EAAE,CACrG,SAAS8pL,GAAI9pL,GAAG,IAAIkS,EAAE,OAAG23K,GAAG7pL,EAAE,IAAYA,IAAEkS,EAAElS,GAAGA,EAAEwxS,mBAAoCn9H,GAAZniK,EAAE,IAAIu/R,GAAGzxS,IAAgBkS,EAAC,CACrG,SAASw/R,GAAI1xS,GAAG,GAAG6pL,GAAG7pL,EAAE,KAAM,OAAO29K,GAAG39K,EAAE,KAAU,GAAIA,EAAgC,OAAO,KAApC,MAAMkzK,GAAI,IAAI8O,GAAI2vH,KAAuB,CACpG,SAASC,GAAI5xS,EAAEkS,GAAG,GAAM,MAAHA,EAAS,OAAO,EAAM,KAAMlS,EAAEA,GAAGA,EAAEkS,GAAG,GAAGogL,GAAGpgL,EAAE2/R,GAAI7xS,IAAK,OAAO,EAAM,OAAO,CAAK,CACrG,SAASsgR,GAAItgR,GAAG,QAAGA,EAAEA,EAAEu7M,MAAqBv7M,EAAEA,GAAGA,EAAED,IAAgBC,EAAEA,EAAE,IAAI49P,GAAI59P,EAAEuF,EAAEu1B,GAAU96B,EAAEA,EAAEu7M,KAAI,CACrG,SAASqtC,GAAI5oP,EAAEkS,GAAG,IAAIqd,EAAwB,OAAM,IAA1BA,EAAErd,EAAEgtN,MAAShhO,SAA6B+gO,GAAIj/N,EAAEuvB,EAAEvvB,EAAEuvB,EAAErxB,OAAOqxB,IAAU,EAAI,CAErG,SAASuiR,GAAI9xS,EAAEkS,GAAG,IAAMnS,EAAE,IAAIA,EAAE,IAAI4lK,GAAI3lK,EAAEkS,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyB6pM,GAAdpqB,GAAGC,GAAI79K,GAAG,KAAWioM,MAAMwsF,KAAKtiR,EAAG,CAErG,SAASyvL,GAAG3hM,EAAEkS,GAAG,IAAIlS,EAAG,MAAMkzK,GAAI,IAAI2O,GAAIy6E,IAAG,4BAA4B/9E,GAAGC,GAAGsQ,IAAG,GAAG3Q,IAAI,EAAE,EAAE,CAACjsK,MAAO,CACrG,SAAS6/R,GAAI/xS,EAAEkS,GAAG,SAAIlS,IAAIkS,GAAGlS,GAAGkS,KAAuB8/R,IAAIhyS,EAAED,EAAEwvB,EAAErd,EAAEnS,EAAEwvB,EAAErd,EAAEnS,EAAEmS,IAAI8/R,IAAI9/R,EAAEnS,EAAEwvB,EAAEvvB,EAAED,EAAEwvB,EAAEvvB,EAAED,EAAEmS,GAAE,CACrG,SAAS+/R,KAAY,OAAN1jC,KAASz2C,IAAY,IAAIw2C,GAAI,MAAa4jC,IAAIpH,KAAM,iCAAiC,CACpG,SAASqH,GAAInyS,EAAEkS,GAAG,IAAIqd,EAAuE,OAArEA,EAAEuhM,GAAG5+M,EAAElS,EAAEi/K,MAAMyiB,GAAIszD,GAAI,IAAI5qC,GAAI,KAAK,IAAI7c,GAAIr7L,EAAE,IAAIlS,EAAEhC,GAAG,IAAIg3M,GAAIh1M,EAAEuvB,IAAWA,CAAC,CACrG,SAASg8J,GAAIvrL,GAAG,IAAMuvB,EAAuE,OAArDs7J,GAAhBt7J,EAAK,IAAImkI,GAAa,KAAKu3B,KAAMjrL,EAAED,IAAIC,EAAED,EAAE,IAAI8rN,GAAIsvB,IAAGn7O,EAAE,KAAKA,EAAED,GAAGwvB,GAAUA,CAAC,CACrG,SAAS6iR,GAAIpyS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAM,IAAJ2M,EAAE,EAAMqd,EAAE,EAAEhqB,EAAEvF,EAAEi/K,KAAK1vJ,EAAEhqB,IAAIgqB,EAAard,EAAE,GAAGA,GAAM,OAArBnS,EAAEC,EAAEqyS,GAAG9iR,IAAmB,EAAEg0L,GAAGxjN,IAAI,OAAOmS,CAAC,CACrG,SAASogS,GAAGtyS,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAqE,OAAnEk2M,GAAGvpM,EAAElS,EAAEuF,EAAE21K,KAAK+D,MAAMw8B,GAAGlsL,EAAEvvB,EAAEuvB,EAAE2rJ,KAAK+D,MAAM15K,EAAEvF,EAAEA,EAAEkS,GAAGqd,GAAGo3K,GAAG3mM,EAAEA,EAAEkS,GAAGqd,EAAExvB,GAAUwF,CAAC,CACtG,SAASg5K,GAAGv+K,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAA0E,OAAvEA,EAAEkmP,GAAGzrP,EAAEuF,EAAEo0O,GAAGznO,EAAE3M,EAAE6uK,GAAG3/B,EAAIlvI,EAAEozO,iBAAiBppN,EAAEhqB,EAAE6nR,uBAAuBrtR,EAASwF,CAAC,CACtG,SAASgtS,GAAIvyS,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAS,OAANgsO,MAAat+F,EAAK3/H,KAAKsgB,IAAI4+Q,IAAIxyS,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAGitS,IAAIjjR,EAAExvB,EAAEC,EAAEkS,EAAE6gN,GAAI,IAAI9d,GAAI1vM,EAAEvF,EAAEuF,EAAE2M,KAAK,CACrG,SAASggQ,KAAMA,GAAIx9H,EAAIy9H,IAAI,IAAIriE,GAAIg6E,IAAI,GAAG9D,IAAI,IAAIl2E,GAAI2iG,IAAI,GAAGxsB,IAAI,IAAIn2E,GAAI4iG,IAAI,GAAGxsB,IAAI,IAAIp2E,GAAI,OAAO,EAAE,CACrG,SAASvwB,KAAMA,GAAI7qC,EAAIuwG,IAAI,IAAIl0C,GAAIowD,IAAI,GAAG3hF,IAAI,IAAIuxB,GAAI68C,IAAI,GAAGjuE,IAAI,IAAIoxB,GAAI+8C,IAAI,GAAGg5B,IAAI,IAAI/1E,GAAI,MAAM,EAAE,CACpG,SAAS4yE,KAAMA,GAAIjvI,EAAImvI,IAAI,IAAIp0E,GAAI,KAAK,GAAGq0E,IAAI,IAAIr0E,GAAI,KAAK,GAAGs0E,IAAI,IAAIt0E,GAAI,KAAK,GAAGu0E,IAAI,IAAIv0E,GAAI,KAAK,EAAE,CACtG,SAAS6qE,KAAMA,GAAI5lI,EAAI8lI,IAAI,IAAI3nE,GAAI,MAAM,GAAG4nE,IAAI,IAAI5nE,GAAI,cAAc,GAAG6nE,IAAI,IAAI7nE,GAAI,aAAa,EAAE,CACpG,SAASq6D,KAAMA,GAAIx4H,EAAI04H,IAAI,IAAIz4D,GAAI,wBAAwB,GAAG04D,IAAI,IAAI14D,GAAI,wBAAwB,EAAE,CACpG,SAASx0B,KAAMA,GAAIzrC,EAAI,IAAIg8B,GAAI,mCAAmC0P,IAAI,IAAIjyB,GAAIwkJ,IAAI,IAAI1kJ,GAAQ,IAAIC,EAAG,CACrG,SAAS0kJ,GAAI5yS,GAAG,IAAIkS,EAAInS,EAAY,IAAVmS,EAAE,IAAIunK,GAAQ15K,EAAE++P,IAAI9+P,EAAED,EAAE,GAAGA,EAAEmS,GAAGnS,EAAEA,EAAEwvB,GAAqBq2M,GAAI1zN,EAAnByrK,GAAGohF,GAAIh/P,GAAG,KAAawvB,GAAG,OAAOrd,CAAC,CACtG,SAAS2gS,GAAI7yS,GAAG,IAAQD,EAAEwF,EAAY,IAAVA,EAAE,IAAI+sK,GAAQvyK,EAAEC,EAAE27M,KAAK57M,EAAEw7M,MAAgCqtC,GAAIrjP,EAAX61P,IAAhBz9E,GAAG59K,EAAE07M,KAAK,MAAsB,OAAOl2M,CAAC,CAEtG,SAASutS,GAAI9yS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAE0yK,GAAIzyK,EAAEA,GAAGojN,GAAI7zL,EAAEvxB,EAAE,IAAImwK,GAAInuK,IAAmC+yS,IAAI/yS,EAAnCD,EAAE,IAAIulN,GAAI3nC,GAAG+5B,GAAI13M,EAAEA,EAAEkS,EAAEA,GAAG,KAAaA,GAAGqd,EAAEuL,EAAE/6B,CAAC,CACtG,SAASizS,GAAIhzS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAmB,OAAjBwvB,EAAEvvB,EAAEuvB,GAAExvB,EAAEmS,EAAE3M,EAAEvF,EAAEoD,IAAQmsB,EAAEvvB,EAAEuvB,EAAErxB,OAAO,EAAUy/K,GAAG0pB,GAAI93K,EAAEvvB,EAAED,EAAE,GAAG,IAAW,IAAI,CAEtG,SAASkzS,GAAIjzS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAM,GAAJA,EAAE,EAAKC,EAAE,IAAIA,GAAGkS,EAAe,IAAZA,EAAEA,EAAE,GAAGA,EAAE,GAAOqd,EAAEvvB,EAAEuvB,GAAGrd,EAAEqd,IAAKxvB,EAAE24L,GAAI34L,EAAE44L,GAAI,EAAEppK,IAAK,OAAOxvB,CAAC,CACtG,SAASmzS,GAAIlzS,GAAS,IAAIkS,EAAEqd,EAAExvB,EAAM,IAApBknN,KAAgBlnN,EAAE,EAAMwvB,EAAEvvB,EAAE27M,KAAKpsL,EAAEgsL,MAAgBx7M,GAAQ,OAAjBmS,EAAEqd,EAAEksL,MAAkB8H,GAAGrxM,GAAG,EAAGnS,GAAI,EAAE,OAAOA,CAAC,CACvG,SAASozS,GAAInzS,GAAG,IAAMuvB,EAAwE,OAAnEg6J,KAAHh6J,EAAW,IAAI+hI,GAAStxJ,GAAGirL,KAAMjrL,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,GAAGuvB,GAAUA,CAAC,CAEtG,SAAS6jR,GAAIpzS,EAAEkS,GAAG,GAAe,IAARA,EAA6D,OAAlDlS,EAAEE,IAAIF,EAAEE,EAAE,IAAI0zN,IAAKmrD,MAAMC,KAAKC,IAAGj/Q,EAAE,SAAIA,EAAEE,EAAEqvB,EAAE8/O,KAAagkC,IAAIrzS,EAAEkS,EAAE,CACtG,SAASohS,GAAItzS,EAAEkS,EAAEqd,GAAG,OAAOA,EAAE5c,GAAG,KAAK,EAAE3S,EAAEkS,EAAEA,EAAE,MAAM,KAAK,EAAElS,EAAEuvB,EAAErd,EAAE,MAAM,KAAK,EAAElS,EAAED,EAAEmS,EAAE,MAAM,KAAK,EAAElS,EAAEA,EAAEkS,EAAG,CACvG,SAASqhS,GAAIvzS,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAOw1Q,IAAI,KAAK,EAAE,OAAOD,IAAI,KAAK,EAAE,OAAOE,IAAI,QAAQ,OAAOH,IAAK,CACtG,SAASurB,GAAIxzS,GAAG,OAAO29K,GAAG4qB,IAAIvoM,GAAGq9J,MAAM0uI,MAAM,KAAKp5R,GAAG,KAAK,EAAE,KAAK,EAAE,OAAO,EAAK,QAAQ,OAAO,EAAO,CACrG,SAAS8gS,KAAMA,GAAI/+J,EAAIg/J,IAAIt1F,IAAIu1F,MAAMp1H,GAAGC,GAAGo1H,IAAG,GAAG3nE,IAAI,IAAI,EAAE,CAAC4nE,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CACvG,SAASC,KAAMA,GAAI7/J,EAAI8/J,IAAIp2F,IAAImuF,MAAMhuH,GAAGC,GAAGi2H,IAAG,GAAGxoE,IAAI,IAAI,EAAE,CAACyoE,IAAIlI,IAAImI,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAO,CACnG,SAASt3I,KAAMA,GAAIjpB,EAAIwgK,IAAIztE,GAAIm6C,IAAIA,IAAI14E,GAAIu+B,GAAI,IAAI/iC,IAAKmvD,MAAMguB,MAAM9tB,MAAM+tB,MAAM8D,KAAK6V,KAAKD,KAAK1nC,IAAI4nC,IAAI,CACvG,SAAS3kB,KAAMA,GAAIriI,EAAIuiI,IAAI,IAAIzlE,GAAIs4E,IAAI,GAAG5S,IAAI,IAAI1lE,GAAI,gBAAgB,GAAG2lE,IAAI,IAAI3lE,GAAI,gBAAgB,EAAE,CACvG,SAASu+C,KAAKA,GAAGr7G,EAAIs7G,IAAG,CAAC,QAAUjvD,GAAG,OAASjgB,GAAG,OAASC,GAAG,OAASo0H,IAAG,SAAWA,IAAG,UAAY3hI,GAAG,CACvG,SAAS2tB,GAAInhM,EAAEkS,GAAGqyN,GAAIvkO,GAAG,EAAE,6BAA6BukO,GAAIryN,GAAG,EAAE,4BAA4BugK,GAAInuK,KAAK,CACtG,SAAS8wS,GAAIp1S,EAAEkS,EAAEqd,GAAG,QAAGvvB,GAAG,MAA6B67M,GAAL77M,EAAE,GAAO44L,GAAID,GAAI,EAAE34L,GAAGuvB,GAAUqpK,GAAID,GAAI,EAAE34L,EAAE,IAAIkS,GAAvB,EAA4B,CACvG,SAASylN,GAAI33N,EAAEkS,GAAG,SAAIlS,IAAIkS,GAAGlS,GAAGkS,KAAuBmjS,GAAGr1S,EAAEkS,EAAEqd,EAAErd,EAAEA,EAAEqd,EAAErd,EAAEA,EAAEA,GAAG,GAAGmjS,GAAGnjS,EAAEA,EAAEqd,EAAEvvB,EAAEkS,EAAEqd,EAAEvvB,EAAEkS,EAAEA,GAAG,EAAC,CACvG,SAASojS,GAAIt1S,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAoB,OAAlBwvB,EAAEvvB,EAAEJ,EAAEG,EAAEC,EAAEE,EAAEgS,EAAElS,EAAED,EAAS,IAAImoM,GAAI34K,EAAEvvB,EAAEkS,EAAEA,EAAEqd,EAAErd,EAAEA,EAAEnS,EAAEA,EAAEC,GAAGkS,EAAEA,EAAEA,EAAEqd,GAAGxvB,EAAEmS,GAAGA,EAAEnS,EAAEmS,EAAElS,GAAG,CAEvG,SAASu1S,GAAGv1S,GAAG,IAAMuvB,EAAExvB,EAAI,IAAY,MAALC,EAAEoS,IAAUpS,EAAEoS,GAAGkiK,KA6wBnD,SAAYt0K,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAA4C,IAA1C2M,EAAE,KAAKqd,EAAE,KAAKhqB,EAAE0tI,EAAK3/H,KAAKsgB,IAAI5zB,EAAE9B,OAAO,GAAO6B,EAAEwF,EAAE,EAAExF,GAAG,EAAEA,IAAK,GAAGs8N,GAAIr8N,EAAED,GAAGA,EAAEmS,IAAImqN,GAAIr8N,EAAED,GAAGA,EAAEwvB,GAAG,CAACvvB,EAAE9B,QAAQ6B,EAAE,GAAGC,EAAEwhB,OAAO,EAAEzhB,EAAE,GAAG,KAAK,CAAE,OAAOC,CAAC,CA7wBrGw1S,CAATjhI,IAAGkhI,GAAGz1S,MAAgBuvB,EAAE,EAAExvB,EAATC,EAAEoS,EAAWlU,OAAOqxB,EAAExvB,IAAIwvB,GAAG,CACxG,SAASiuO,GAAGx9P,GAAG,IAAIkS,EAAEqd,EAAmE,OAAOmwL,GAAtExtM,EAAO,GAAJlS,EAAE8T,EAAI2vN,IAAIl0M,GAAGvvB,EAAEgT,GAAM,GAAHd,EAAK,EAAE,GAAGuxN,KAAOzjO,EAAEyD,GAAM,GAAHyO,GAAS,GAAHqd,EAAK,EAAE,GAAGm0M,IAAoB,CAExG,SAASgyE,GAAI11S,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAW,GAAGmS,GAAZnS,EAAEC,EAAEi/K,MAAY,MAAM/L,GAAI,IAAI4rC,GAAI5sM,EAAEnS,IAAyB,OAArBC,EAAEynN,OAAOl4L,EAAEooN,GAAI33O,EAAEuvB,IAAWvvB,EAAE21S,GAAGzjS,EAAEqd,EAAE,CACvG,SAASqmR,GAAI51S,EAAEkS,EAAEqd,GAAG,OAAU,MAAHA,IAAUvvB,EAAEgU,IAAIhU,EAAEgU,EAAE,IAAIw+J,IAAK6+F,GAAIrxQ,EAAEgU,EAAE9B,MAAMlS,EAAEgU,IAAIhU,EAAEgU,EAAE,IAAIw+J,IAAKmkB,GAAI32L,EAAEgU,EAAE9B,EAAEqd,IAAIvvB,CAAC,CACxG,SAAS+nM,GAAI/nM,EAAEkS,EAAEqd,GAA+E,OAAzE,MAAHA,IAAUvvB,EAAEgU,IAAIhU,EAAEgU,EAAE,IAAIw+J,IAAK6+F,GAAIrxQ,EAAEgU,EAAE9B,MAAMlS,EAAEgU,IAAIhU,EAAEgU,EAAE,IAAIw+J,IAAKmkB,GAAI32L,EAAEgU,EAAE9B,EAAEqd,IAAWvvB,CAAC,CACxG,SAAS61S,GAAI71S,GAAG,IAAIkS,EAAEqd,EAA0E,OAA9DsgP,GAAVtgP,EAAE,IAAIkiP,GAAUzxQ,GAAG+nM,GAAIx4K,GAAG4zQ,KAAMC,KAAKpjS,GAivD7D,SAAaA,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAQ,IAAJ1D,EAAE,EAAM+6B,EAAE,IAAIikJ,KAAM/+K,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAI/M,IAAGvtL,EAAE,GAAG,KAAKA,EAAEA,IAAI86B,EAAEv1B,GAAGu1B,EAAE98B,EAAEihL,MAAuBtsK,EAAE,GAA0C,MAA5DpN,EAAEo4K,GAAGwB,IAAIrkJ,GAAG,KAAal7B,IAAI2F,EAAE3F,EAAE,IAAI06L,GAAIrN,IAAG1nL,EAAE,EAAE,IAAIA,EAAE3F,GAAG5B,IAAO2U,EAAEgrK,GAAG0O,KAAM9mL,EAAE3F,IAAI2F,EAAE3F,EAAE,IAAI06L,GAAIrN,IAAG1nL,EAAE,EAAE,IAAIA,EAAE3F,GAAG,GAAG,KAAKI,GAAgB6vQ,GAAbpsQ,EAAE,IAAI01O,GAAIxmO,GAASpN,GAAGwiM,GAAItkM,GAAG0/R,KAAMC,KAAK79R,GAAG9B,EAAEyO,EAAEnS,IAAI0D,EAAE1D,EAAEC,EAAEuF,EAAEvH,EAAEuH,EAAEoN,EAAE,EAAElP,EAAE1D,EAAEmS,EAAE3M,EAAE6M,EAAE7M,EAAEu1B,EAAE,EAAEr3B,EAAE8B,EAAEvF,EAAEizI,EAAK3/H,KAAKugB,IAAItuB,EAAEoN,EAAE,GAAGlP,EAAE8B,EAAE2M,EAAE+gI,EAAK3/H,KAAKugB,IAAItuB,EAAEu1B,EAAE,GAAGi7I,GAAI7jK,EAAE3M,EAAE9B,GAAGo9O,IAAItxN,EAAEuL,EAAEv1B,EAAE9B,GAAKk6K,GAAG26B,IAAI/yM,GAAGs1J,MAAMi7I,MAAM,MAAQxgB,MAAMj0E,MAASD,GAAK,CAjvDhX20F,CAAI/1S,EAAEuvB,EAAhBrd,EAAE,IAAIsgK,IAi+DtE,SAAaxyK,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAE,IAAIrD,EAAE,IAAI+gL,KAAM/+K,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAI/M,IAAGvtL,EAAE,GAAG,KAAKA,EAAEA,IAAIhC,EAAEuH,GAAGvH,EAAEA,EAAEihL,MAAuB,IAAI15K,EAAE,IAAIupO,GAAG7hB,GAAG+oF,IAAhCvyS,EAAEk6K,GAAGwB,IAAInhL,GAAG,KAA2BgC,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG7lN,IAAI,CAA8C,KAA7CxF,EAAE49K,GAAGwtC,GAAG5lN,GAAG,KAAO2M,IAAInS,EAAEmS,EAAE,IAAI64M,GAAI19B,IAAGttL,EAAE,EAAE,MAASA,EAAEmS,EAAElU,GAAG,KAAK+B,EAAEwvB,IAAIxvB,EAAEwvB,EAAE,IAAIw7L,GAAI19B,IAAGttL,EAAE,EAAE,IAAIA,EAAEwvB,EAAEvxB,GAAG,IAAK,MAAMk1K,GAAI,IAAI2P,GAAI,uCAAuC,IAAIozH,IAAIl2S,IAAI0D,GAAGunN,IAAIrtC,GAAG0O,KAAMtsL,EAAEwvB,IAAIxvB,EAAEwvB,EAAE,IAAIw7L,GAAI19B,IAAGttL,EAAE,EAAE,IAAIA,EAAEwvB,GAAG,GAAG,KAAoK,IAApJsgP,GAAVz9P,EAAE,IAAI2nN,GAAUh6N,GAAGgoM,GAAI31L,GAAG+wR,KAAMC,KAAKrjS,GAAGkjK,GAAI7wJ,EAAEurK,GAAGk9B,GAAGq4B,GAAI3jN,EAAEuL,EAAEr3B,IAAI,MAAMy/J,GAAI9wJ,EAAEurK,GAAG+5B,GAAInoL,EAAEy7L,IAAIrtC,GAAG0O,KAAMtsL,EAAEwvB,IAAIxvB,EAAEwvB,EAAE,IAAIw7L,GAAI19B,IAAGttL,EAAE,EAAE,IAAIA,EAAEwvB,GAAG,GAAG,MAAM,MAAMwmJ,GAAI7jK,EAAEqd,EAAEnd,GAAOO,EAAE,IAAIosK,KAAMh/K,EAAEH,IAAIG,EAAEH,EAAE,IAAI06L,GAAIrN,IAAGltL,EAAE,EAAE,IAAIA,EAAEH,IAAI+S,EAAEpN,GAAGoN,EAAE3U,EAAEihL,MAAyC4wF,GAAjBxuQ,EAAE,IAAImlQ,GAAIp0P,GAA3B0oB,EAAE6iJ,GAAGwB,IAAIxsK,GAAG,MAAmB3S,GAAS86B,GAAGitK,GAAI1mM,EAAE+hS,IAAItoQ,GAAGz5B,EAAEkE,EAAEvF,EAAEizI,EAAK3/H,KAAKugB,IAAIiH,EAAEnoB,EAAE,GAAGtR,EAAEkE,EAAE2M,EAAE+gI,EAAK3/H,KAAKugB,IAAIiH,EAAEA,EAAE,GAAGo7Q,IAAI70S,GAAG00K,GAAI7jK,EAAEnS,EAAEsB,EAAI,CAAE,CAj+DlqB80S,CAAIn2S,EAAEuvB,EAAErd,GAAUqd,CAAC,CAExG,SAAS6mR,GAAIp2S,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAI+6B,EAA0B,IAAxBvL,GAAE,EAAMxvB,EAAEC,EAAEA,EAAEkS,GAAGhU,OAAW48B,EAAE,EAAEA,EAAE/6B,EAAE,EAAE+6B,IAAWvL,GAAI8mR,IAAIr2S,EAAEkS,EAAE4oB,EAAhBA,EAAE,GAAmB,OAAOvL,CAAC,CACxG,SAAS+mR,GAAIt2S,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAE,IAAIA,EAAE4c,EAAE5c,GAAGpN,EAAEoN,IAAK,IAAImoB,EAAE5oB,EAAE4oB,GAAG/6B,EAAE+6B,IAAKy7Q,IAAIv2S,EAAE86B,EAAEnoB,IAAI6jS,IAAIx2S,EAAE86B,EAAEnoB,GAAE,GAAK,EAAQ,CACvG,SAAS8jS,GAAIz2S,EAAEkS,GAAG5N,KAAK4N,EAAElS,EAAE++M,GAAIhgN,KAAKuF,MAAMq5K,GAAG0O,GAAIC,IAAKytD,KAAMC,KAAK95O,GAAG,IAAI,IAAIgS,EAAElU,GAAGkU,EAAES,GAAGrO,KAAKtE,GAAGygK,KAAMwsF,IAAI,CACxG,SAASypD,GAAG12S,EAAEkS,GAAG5N,KAAKirB,EAAEvvB,EAAEsE,KAAKvE,EAAEmS,EAAE5N,KAAK4N,EAAE5N,KAAKvE,EAAEuE,KAAKirB,EAAEA,EAAE2rJ,KAAK+D,KAAK,EAAE36K,KAAKtE,EAAEsE,KAAKvE,EAAEuE,KAAKirB,EAAEA,EAAE2rJ,KAAK+D,IAAI,CACtG,SAAS84D,KAAYzzO,KAAKpE,EAAE,KAAKoE,KAAKjD,EAAE,KAAKiD,KAAK8N,EAAE,KAAK9N,KAAKvE,EAAE,KAAKuE,KAAK4N,EAAE,KAAK5N,KAAK1E,EAAE,KAAK0E,KAAKtE,EAAE,IAAI,CACxG,SAASopM,GAAGppM,EAAEkS,EAAEqd,GAAGjrB,KAAK0P,EAAE,IAAIi/H,EAAKl1H,KAAKzZ,KAAK0P,EAAE6xP,YAAY7lQ,EAAEspM,IAAIp3L,EAAEqd,GAAGjrB,KAAK0P,EAAEm2L,SAAS,EAAE,EAAE,EAAE,GAAGD,IAAG5lM,KAAK,EAAE,CACzG,SAASm1Q,KAAMA,GAAI/kI,EAAIilI,IAAI,IAAIrnE,GAAIw3E,IAAI,GAAGlQ,IAAI,IAAItnE,GAAI,kBAAkB,GAAGunE,IAAI,IAAIvnE,GAAI,eAAe,EAAE,CAExG,SAASkjD,GAAIx1P,GAAG,IAAIkS,EAAE,GAAGlS,EAAE,EAAG,OAAOi4L,IAAS,GAAM,GAAHj4L,EAAM,OAAO,EAAO,IAAIkS,EAAE4uL,IAAW,IAAN5uL,EAAElS,GAAMkS,IAAI,GAAG,OAAOA,CAAE,CACxG,SAASykS,GAAG32S,GAAG,IAAIkS,EAAEqd,EAAa,OAAM,KAAjBA,EAAEipK,IAAIx4L,EAAEyD,IAAkC,KAArByO,EAAEsmL,IAAIx4L,EAAEgT,IAAgBwlL,IAAIx4L,EAAE8T,GAAG,GAAG5B,EAAE,GAAG,GAAeqd,EAAE,EAAG,CACzG,SAASikN,GAAIxzO,GAAG,IAAIkS,EAAa,OAAM,OAAjBA,EAAElS,EAAEA,EAAEA,EAAEkS,IAAsB,MAAKy0L,GAAG3mM,EAAEA,EAAEA,EAAEkS,EAAE,MAAMlS,EAAEkS,EAAElS,EAAEkS,EAAE,EAAElS,EAAEA,EAAE9B,OAAO,EAASgU,EAAC,CACzG,SAAS0kS,GAAI52S,GAAG,IAAIkS,EAAEqd,EAAuE,OAArErd,EAAElS,EAAEiU,EAAEjU,EAAEqB,EAAErB,EAAEE,EAAEkD,GAAGpD,EAAED,EAAEC,EAAEoS,EAAEpS,EAAEE,EAAEkD,GAAGpD,EAAE86B,EAAEvL,EAAEvvB,EAAEqoB,EAAEroB,EAAEuF,EAAEvF,EAAEE,EAAEkD,GAAGpD,EAAED,EAAEC,EAAE86B,EAAE96B,EAAE6T,EAAE7T,EAAED,EAASmS,GAAGqd,CAAC,CACxG,SAASumN,GAAI91O,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAqE,OAAnExF,EAAE,IAAI6/Q,GAAI1tQ,EAAEqd,GAAGhqB,EAAE,IAAIgwI,EAAIv1I,EAAEkS,EAAE2kS,IAAI72S,EAAEA,EAAEkS,EAAEnS,EAAEwF,GAAGA,EAAE2M,KAAKlS,EAAEuvB,EAAEvvB,EAAEkS,EAAEA,GAAE,EAAa3M,EAAExF,CAAC,CACzG,SAASirO,GAAIhrO,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAmB,IAAJA,EAAE,EAAMv1B,EAAjBuhS,GAAI50R,EAAEqd,GAAeosL,KAAKp2M,EAAEg2M,MAAOx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,IAAI9kB,GAAI32L,EAAEuvB,EAAExvB,EAAEi4M,GAAIl9K,KAAM,CACzG,SAASg8Q,GAAI92S,GAAG,IAAIkS,EAAEqd,EAAE,IAAIA,EAAE,IAAIo2I,GAAI3lK,EAAEA,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,SAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAM5c,EAAE4c,GAAGrd,EAAES,EAAE4c,EAAErd,EAAES,EAAET,EAAE6kS,IAAI/2S,EAAE,CACzG,SAASg3S,GAAIh3S,GAAG,IAAIkS,EAAEqd,EAAE,IAAIA,EAAE,IAAIo2I,GAAI3lK,EAAEA,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,SAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAMxvB,EAAEwvB,GAAGrd,EAAEnS,EAAEwvB,EAAErd,EAAEnS,EAAEmS,EAAE+kS,IAAIj3S,EAAE,CACzG,SAASk3S,GAAIl3S,GAAG,IAAIkS,EAA0E,QAApElS,EAAEuvB,GAAa,IAAJ,EAALvvB,EAAEw1K,KAAuB,IAAL,GAAPx1K,EAAEuvB,EAAEy9L,MAAoBnjC,GAAT33K,EAAE6U,IAAI/mB,GAAQ,MAAMA,EAAEuvB,EAAEouJ,GAAGzrK,EAAE,KAAYlS,EAAEuvB,CAAC,CACxG,SAAS29Q,GAAGltS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEmS,EAAO,GAAJlS,EAAE8T,EAAI2vN,IAAIl0M,GAAGvvB,EAAEgT,GAAM,GAAHd,EAAK,EAAE,GAAGuxN,IAAI1jO,GAAGC,EAAEyD,GAAM,GAAHyO,GAAS,GAAHqd,EAAK,EAAE,GAAGm0M,IAAI1jO,EAAE8T,EAAE5B,EAAElS,EAAEgT,EAAEuc,EAAEvvB,EAAEyD,EAAE1D,CAAC,CACzG,SAAS21P,GAAI11P,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAY,IAAV5oB,EAAE,IAAI02K,GAAYrjL,EAAE,EAAEu1B,GAAR/6B,EAAEC,GAAU9B,OAAOqH,EAAEu1B,IAAIv1B,EAAGgqB,EAAExvB,EAAEwF,GAAG2M,EAAElS,GAAGuvB,EAAEvvB,EAAEkS,EAAEA,GAAGqd,EAAErd,EAAE,OAAOA,CAAC,CACzG,SAAS05N,GAAI5rO,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAU,IAA5Bs0M,KAAoBt0M,GAAE,EAAcpN,EAAE,EAAEu1B,GAAR/6B,EAAEmS,GAAUhU,OAAOqH,EAAEu1B,IAAIv1B,EAAGgqB,EAAExvB,EAAEwF,GAAGoN,GAAI3S,EAAE6nN,GAAGt4L,GAAG,OAAO5c,CAAC,CACzG,SAASwkS,GAAIn3S,GAAS,IAAIkS,EAAEqd,EAA4B,IAAxCgiN,MAAchiN,GAAG,sBAA2Brd,EAAE,EAAEA,EAAElS,EAAE9B,OAAOgU,IAAKlS,EAAEkS,GAAGqd,IAAIA,EAAEvvB,EAAEkS,IAAI,OAAOqd,CAAC,CACzG,SAASuhO,GAAI9wP,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAyE,OAA7D8iS,IAAI7iS,EAAEkS,EAAhBnS,EAAE,IAAIuyK,IAAemN,MAAMC,MAAK,GAAK,GAAOmjH,IAAI7iS,EAAEuvB,EAAExvB,EAAE6/K,KAAI,GAAM,GAAc7/K,CAAC,CACzG,SAASq3S,GAAIp3S,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAuE,OAA/D,KAASA,EAAEs6P,GAAJ3tP,EAAU,UA0uCnD,SAAalS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAQ0D,EAAEzF,EAAEoU,EAAE,GAAGmd,EAA6B,IAAI9rB,IAAjB1D,EAAE,IAAIgvO,GAAjBx/M,EAAEvvB,EAAE9B,SAA6BgU,EAAEnS,EAAEC,GAAGD,EAAEwvB,EAAE,GAAGk9K,KAAMC,KAAK,IAAI+f,GAAI1sN,GAAG0D,EAAE83M,OAAuBv9M,EAAE8hQ,GAAIvwO,EAApBouJ,GAAGl6K,EAAEg4M,KAAK,IAAcz7M,MAASoS,EAAE4qR,GAAIh9B,GAAIhiQ,EAAEovL,KAAKl7K,GAAGykL,GAAI32L,EAAE86B,EAAE1oB,EAAEpU,GAAK0pO,OAAO1pO,EAAEgC,GAAKsgS,GAAIluR,EAAE4tP,GAAIhiQ,EAAE0pO,MAAM2vE,IAAIr5S,EAAEoU,GAAGklS,IAAIt5S,EAAEoU,GAAK,CA1uCvKmlS,EAAlBx3S,EAAE,IAAIq3M,GAAIp3M,EAAEuvB,IAAYvvB,EAAED,EAAEmS,EAAE3M,GAAGA,CAAW,CAGzG,SAAS81M,GAAGr7M,EAAEkS,GAAG,IAAIqd,EAAE,IAAIA,EAAE,EAAEA,EAAEvvB,EAAEA,EAAEA,EAAE9B,OAAOqxB,IAAK,IAAIouJ,GAAGgsD,GAAI3pO,EAAEA,EAAEuvB,GAAG,KAAK+vK,GAAGptL,GAAI,OAAO,EAAO,OAAO,CAAI,CAE1G,SAASslS,GAAIx3S,GAAS,IAAIkS,EAAEqd,EAAExvB,EAAM,IAApBknN,KAAgBlnN,EAAE,EAAMwvB,EAAEvvB,EAAE27M,KAAKpsL,EAAEgsL,MAAgBx7M,EAAE,GAAGA,GAAM,OAApBmS,EAAEqd,EAAEksL,MAAqB8H,GAAGrxM,GAAG,GAAGnS,GAAI,EAAE,OAAOA,CAAC,CAC1G,SAAS03S,GAAGz3S,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAuE,OAArEA,EAAEg1M,IAAG9vO,EAAEkS,GAAGqd,GAAG29Q,GAAGpyQ,GAAMv1B,IAAGvF,EAokBtD,SAAYA,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAK2M,GAAG,IAAIqd,EAAEvvB,EAAE8T,GAAG,GAAG5B,GAAG,EAAEnS,EAAEwF,EAAE,GAAU2M,GAAG,IAAIqd,EAAEvvB,EAAE8T,EAAE/T,EAAEC,EAAEgT,GAAG,GAAGd,EAAE,IAAI,EAAE3M,EAAE,IAAOgqB,EAAEvvB,EAAE8T,EAAE/T,EAAEC,EAAEgT,EAAEzN,EAAEvF,EAAEyD,GAAG,GAAGyO,EAAE,IAAI,GAAE,OAAOwtM,GAAGnwL,EAAExvB,EAAEwF,EAAE,CApkBhGmyS,CAAG13S,EAAEkS,GAAMylS,IAAH53S,EAAMy9P,GAAGx9P,GAAQ0/M,GAAG1/M,EAAE8T,EAAE9T,EAAEgT,EAAEhT,EAAEyD,IAAWq3B,CAAC,CAE1G,SAAS88Q,GAAI53S,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAE,OAAGskL,GAAG33K,EAAE,MAAQqd,GAAGxvB,EAAE49K,GAAGzrK,EAAE,KAAK3M,EAAEgqB,EAASvvB,EAAEA,EAAED,EAAEmS,GAAG3M,EAAE2M,GAAGlS,EAAEA,EAAEuF,EAAE2M,GAAGnS,EAAEmS,IAAU,CAAC,CAC1G,SAAS2lS,GAAI73S,EAAEkS,GAAG,OAAOA,GAAG,KAAK,EAAE,QAASlS,EAAEuF,GAAU,GAAPvF,EAAEuF,EAAEvH,EAAK,KAAK,EAAE,QAASgC,EAAED,GAAU,GAAPC,EAAED,EAAE/B,EAAM,OAAO85S,GAAI93S,EAAEkS,EAAE,CAGxG,SAAS0zP,GAAI5lQ,EAAEkS,EAAEqd,GAAGvvB,EAAE2S,EAAEolS,IAAI/3S,EAAEkS,GAAGutK,MAAMC,KAAK1/K,EAAEkS,GAAGlS,EAAED,EAAEg4S,IAAI/3S,EAAEuvB,EAAEmwJ,IAAI1/K,EAAEkS,GAAa,GAAPlS,EAAE2S,EAAE4c,GAAa,GAAPvvB,EAAED,EAAEwvB,GAAayoR,IAAIh4S,EAAE,CAC1G,SAAS2lQ,GAAI3lQ,EAAEkS,EAAEqd,GAAGvvB,EAAE2S,EAAEolS,IAAI/3S,EAAEkS,GAAGutK,MAAMG,KAAK5/K,EAAEoS,GAAGpS,EAAED,EAAEg4S,IAAI/3S,EAAEuvB,EAAEqwJ,IAAI5/K,EAAEoS,GAAa,GAAPpS,EAAE2S,EAAE4c,GAAa,GAAPvvB,EAAED,EAAEwvB,GAAayoR,IAAIh4S,EAAE,CAE1G,SAAS4yQ,GAAI5yQ,GAAG,IAAIkS,EAAmB,OAAjB6nL,GAAI/5L,GAAGkS,EAAE,IAAIwkI,GAAO12I,EAAEA,EAAEy5L,GAAGvnL,IAAWsrK,KAAM,IAAID,GAAI1c,GAAI3uJ,EAAElS,MAAWw9K,KAAMA,KAAMguC,IAAG,CAC1G,SAAS+tB,GAAGv5O,GAAG,IAAIkS,EAAE,QAAGlS,EAAEkS,GAAG,MAAgBA,EAAEotM,GAAI,eAAe8R,IAAIl4B,GAAIl5L,EAAEuvB,EAAE,MAAc,GAAGrd,GAAG,GAAGlS,EAAEkS,EAAE,EAAC,CAC1G,SAAS+lS,GAAIj4S,GAAG,IAAIkS,EAAInS,EAAY,IAAVmS,EAAE,IAAIsnK,GAAQz5K,EAAE++P,IAAI9+P,EAAE,GAAGD,EAAEmS,GAAGnS,EAAEA,EAAEwvB,GAAmBkjM,GAAGvgN,EAAE,EAAE,IAAIyuM,GAAxBhjC,GAAGohF,GAAIh/P,GAAG,KAAsB,OAAOmS,CAAC,CAC1G,SAASqwK,GAAIviL,GAAG,IAAMuvB,EAAE,IAAIA,EAAE,IAAIo2I,GAAI3lK,EAAEA,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAIruJ,GAAG,IAAMuL,EAAEu0O,KAAK3xF,GAAI19K,EAAEkS,EAAElS,GAAGk4S,IAAIl4S,EAAE,CAC1G,SAASujN,GAAGvjN,GAAG,OAAOm7M,GAAGn7M,GAAGm4S,IAAIn4S,GAAGi7M,GAAGj7M,GAAG2/M,GAAI3/M,GAAGg7M,GAAGh7M,IAAI6gK,GAAI7gK,GAAGA,EAAG,KAAK,MAAKiuO,GAAGjuO,GAAGA,EAAEs/O,KAAK7S,GAAGzsO,GAAG6uN,GAAI7uN,GAAGgqP,GAAGhqP,EAAE,CAC1G,SAASgpF,GAAGhpF,GAAG,OAAOm7M,GAAGn7M,GAAGqwL,IAAG4qB,GAAGj7M,GAAGywL,IAAGuqB,GAAGh7M,GAAGuwL,IAAG09C,GAAGjuO,IAAQysO,GAAGzsO,GAARA,EAAEyrP,GAAczrP,EAAEyrP,IAAIntP,MAAMC,QAAQyB,IAAIw+K,GAAG45H,IAAG,IAAIA,GAAE,CAC3G,SAASC,GAAIr4S,GAAG,GAAiB,IAAVA,EAAE2S,EAAU,OAAO,IAAIq7I,GAAY,MAAMklB,GAAI,IAAI2O,GAAIy2H,KAAU,MAALt4S,EAAE86B,EAAQ96B,EAAE86B,EAAE,GAAG96B,EAAE2S,IAAM,CAC1G,SAAS4lS,GAAIv4S,GAAG,GAAiB,IAAVA,EAAE2S,EAAU,OAAO,IAAIm7I,GAAY,MAAMolB,GAAI,IAAI2O,GAAIy2H,KAAU,MAALt4S,EAAE86B,EAAQ96B,EAAE86B,EAAE,GAAG96B,EAAE2S,IAAM,CAC1G,SAAS6lS,GAAIx4S,EAAEkS,EAAEqd,GAAG,GAAe,IAARrd,EAA6D,OAAlDlS,EAAEE,IAAIF,EAAEE,EAAE,IAAI0zN,IAAKmrD,MAAMC,KAAKC,IAAGj/Q,EAAE,SAAIyrS,GAAIzrS,EAAEE,EAAEqvB,GAAWkpR,IAAIz4S,EAAEkS,EAAEqd,EAAE,CAC1G,SAASmpR,GAAI14S,EAAEkS,EAAEqd,GAAGjrB,KAAKqO,EAAE3S,EAAEsE,KAAKiB,EAAE,IAAIqjL,GAAItkL,KAAKw2B,EAAE,IAAI8tJ,GAAItkL,KAAKvE,EAAE,IAAI05K,GAAIn1K,KAAK4N,EAAE,IAAIunK,GAAIn1K,KAAKtE,EAAEkS,EAAE5N,KAAKirB,EAAEA,CAAC,CAC1G,SAASopR,GAAI34S,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAK4N,EAAE,IAAIogK,GAAIhuK,KAAK1E,EAAE,IAAI0yK,GAAIhuK,KAAKtG,EAAE+B,EAAEuE,KAAK8N,EAAEmd,EAAEjrB,KAAKuP,EAAE7T,EAAEsE,KAAK2P,EAAE/B,EAAE5N,KAAKoO,EAAE,EAAEpO,KAAKvE,EAAE,CAAC,CACzG,SAAS64S,GAAI54S,GAAGsE,KAAKiB,EAAEvF,EAAEsE,KAAKvE,EAAE,IAAIwmQ,GAAIjiQ,KAAKiB,EAAEoN,GAAGrO,KAAKtE,EAAEsE,KAAKvE,EAAEuE,KAAK4N,EAAEouQ,GAAIh8Q,MAAMA,KAAKqwN,UAAU30N,EAAE20N,SAAS,CAC3G,SAASkkF,GAAG74S,GAAG,MAAOA,EAAED,IAAIC,EAAED,EAAEw7M,MAAK,CAAC,IAAKv7M,EAAEkS,GAAIkwK,GAAIpiL,EAAEkS,GAA6B,OAAO,KAAhClS,EAAED,EAAE49K,GAAG41D,GAAIvzO,EAAEkS,GAAG,GAAqB,CAAC,OAAOlS,EAAED,CAAC,CAE3G,SAAS+4S,GAAI94S,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAOoxR,IAAI,QAAQ,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAOC,IAAI,KAAK,EAAE,OAAOF,IAAK,CAC3G,SAASiV,KAAY,IAAI/4S,EAAE,OAAZkkN,MAAe80F,MAAeh5S,EA9gE7C,SAAaA,GAAS,OAAO,IAAIkmQ,GAAI,EAAElmQ,EAAE,CA8gEMi5S,CAAIr4B,IAAI,KAAI,IAAO5gR,EAAEorO,GAAIw1C,IAAI,KAAI,GAAO5gR,GAAGg5S,IAAIh5S,EAAY,CAC1G,SAASo9N,GAAIp9N,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAQ,IAANA,EAAEvF,EAAEkS,EAAQ3M,GAAE,CAAiB,GAAM,IAAtBgqB,EAAEvvB,EAAEA,EAAEk5S,GAAGhnS,EAAE3M,EAAExF,IAAY,OAAOwF,EAAExF,EAAEwvB,EAAE,EAAE,EAAE,EAAEhqB,EAAEA,EAAEvF,EAAED,EAAE,CAAC,OAAO,IAAI,CAG3G,SAASquQ,GAAIpuQ,EAAEkS,GAAG,QAAGinS,IAAIn5S,EAAEkS,KAAI0iR,IAAG50R,EAAEkS,EAAEyrK,GAAG4qB,IAAIr2L,GAAG81L,MAAMoxG,MAAM,IAAIlnS,GAAG0zN,GAAI5lO,EAAEA,EAAEkS,IAAU,EAAuB,CAE5G,SAASmnS,GAAIr5S,GAAG,OAAG83N,IAAY75C,GAAGq7H,IAAGC,IAAI,IAAI,EAAE,EAAE,GAAU57H,GAAG88E,IAAIz6P,EAAEA,EAAEi+K,GAAGq7H,IAAGC,IAAI,IAAIv5S,EAAEA,EAAEuvB,EAAErxB,OAAO,EAAE,IAAI,IAAI,CAE3G,SAASotL,GAAItrL,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAA0E,OAAxD+2O,GAAhB/2O,EAAK,IAAI+0K,GAAapoK,EAAEqd,GAAG07J,KAAMjrL,EAAEgU,IAAIhU,EAAEgU,EAAE,IAAIsmL,GAAIugD,IAAG76O,EAAE,GAAG,KAAKA,EAAEgU,GAAGzO,GAAUA,CAAC,CAC5G,SAASi0S,GAAIx5S,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAA+C,IAA7CA,EAp/E5B,SAAa2M,EAAElS,GAAG,OAAOA,EAAE8kB,MAAM5S,EAAE,CAo/ELunS,CAAIC,IAAI15S,GAAGuvB,EAAEhqB,EAAErH,OAAO6B,EAAEk+K,GAAGoS,IAAGwD,IAAI,EAAEtkK,EAAE,EAAE,GAAOrd,EAAE,EAAEA,EAAEqd,IAAIrd,EAAGnS,EAAEmS,GAAG3M,EAAE2M,GAAG,OAAOnS,CAAC,CAC5G,SAASs+R,GAAIr+R,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,IAAQpN,EAAE,EAAEu1B,GAAR/6B,EAAEmS,GAAUhU,OAAOqH,EAAEu1B,IAAIv1B,EAAGgqB,EAAExvB,EAAEwF,GAAGoN,EAAE,IAAI+mO,GAAI15O,GAAGuvB,EAAEoqR,GAAGhnS,GAAGinS,IAAIjnS,GAAG8/J,GAAIzyK,EAAE86B,EAAE,CAC3G,SAASsiE,GAAGp9F,EAAEkS,GAAG,IAAIqd,EAAE,OAAGrd,IAAIlS,KAAkB6pL,GAAG33K,EAAE,OAAMqd,EAAEouJ,GAAGzrK,EAAE,KAAYogL,GAAGtyL,EAAE+5P,KAAKxqO,EAAEwqO,MAAkB,CAC5G,SAAS8/C,GAAI75S,EAAEkS,GAAG,IAAIqd,EAAO,EAAFrd,EAAI,GAAGlS,EAAEkS,EAAEqd,EAAErxB,SAAe27S,GAAI75S,EAAE,EAAEkS,EAAE,IAAGqd,EAAE,EAAErd,EAAE,GAAIlS,EAAEkS,EAAEqd,EAAErxB,QAAQ27S,GAAI75S,EAAEuvB,GAAGoyQ,IAAI3hS,EAAEkS,GAAE,CAC7G,SAAS4nS,GAAG95S,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEjB,KAAKqO,EAAE3S,EAAEsE,KAAKirB,EAAErd,EAAE5N,KAAKtE,EAAEsE,KAAKA,KAAKvE,EAAEuE,KAAKiB,EAAE67R,GAAG7xQ,GAAGxvB,EAAEk+K,GAAG87H,IAAGC,IAAI,IAAIz0S,EAAE,EAAE,GAAGjB,KAAK4N,EAAEnS,CAAC,CAC5G,SAASk6S,GAAIj6S,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAE,IAAIA,EAAEwvB,EAAE,EAAExvB,GAAG,GAAGC,EAAED,KAAKmS,EAAEnS,GAAGA,KAAK,OAAOA,EAAE,EAAE,EAAE+qM,GAAIlS,GAAI54L,EAAED,GAAG84L,KAAKD,GAAI1mL,EAAEnS,GAAG84L,OAAO,EAAE,CAAC,CAE7G,SAASqhH,GAAIl6S,EAAEkS,GAAG,IAAIqd,EAAExvB,EAA6E,OAA3EA,EAAE49K,GAAG8sC,GAAIzqN,EAAEA,EAAE,GAAG,KAAKuvB,EAAE0uJ,GAAGk8H,IAAGC,IAAI,IAAIloS,EAAE,EAAE,GAAM,MAAHnS,GAASujQ,IAAIvjQ,EAAE,EAAEwvB,EAAE,EAAExvB,EAAE7B,QAAeqxB,CAAC,CAC7G,SAAS8qR,GAAIr6S,EAAEkS,GAAG,IAAIqd,EAA+E,OAA7EA,EAAE,IAAI+qR,IAAe,IAAN,IAAJt6S,EAAE86B,GAAU96B,EAAEhC,EAAEgC,EAAEA,EAAEA,EAAED,EAAY,IAAL,GAAJC,EAAE86B,GAAS96B,EAAEoS,EAAEpS,EAAE2S,EAAET,GAAQ,MAALlS,EAAEuF,IAAUgqB,EAAEA,EAAEvvB,GAAUuvB,CAAC,CAE7G,SAASgrR,GAAIv6S,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAE,IAAIA,EAAE4c,EAAE5c,GAAGpN,EAAEoN,IAAK,IAAImoB,EAAE5oB,EAAE4oB,GAAG/6B,EAAE+6B,IAAK,GAAGy7Q,IAAIv2S,EAAE86B,EAAEnoB,GAAI,OAAO,EAAO,OAAO,CAAK,CAC7G,SAAS6nS,GAAGx6S,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAA2B,IAAzBkuJ,GAAItxI,GAAG5c,GAAE,EAAMmoB,EAAE96B,EAAE0yN,GAAGxgN,GAAO3M,EAAEgqB,EAAEosL,KAAKp2M,EAAEg2M,MAAOx7M,EAAEwF,EAAEk2M,KAAK3gL,EAAEytL,GAAGxoN,GAAG4S,GAAE,EAAK,OAAOA,CAAC,CAE9G,SAAS8nS,GAAIz6S,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAE,IAAIA,EAAEgqB,EAAEosL,KAAKp2M,EAAEg2M,MAAuB,GAAhBx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,IAAOz7M,EAAE06S,GAAGxoS,EAAEnS,EAAE+6M,MAAO,OAAO,EAAM,OAAO,CAAK,CAC9G,SAAS6/F,GAAI36S,EAAEkS,EAAEqd,GAAuE,OAAhEvvB,EAAED,EAAEmS,EAAE9O,GAAGmsB,EAAEnsB,MAwcnC,SAAapD,EAAEkS,EAAEqd,GAAG,GAAGvvB,EAAEuF,EAAG,OAAOvF,EAAEkS,GAAG,KAAK,GA5pD7C,SAAalS,EAAEkS,EAAEqd,GAAGvvB,EAAEhC,EAAE,EAAEgC,EAAEuF,EAAE,EAAK2M,GAAGqd,GAAUq2O,GAAI5lQ,EAAEkS,EAAEqd,EAAE,CA4pDXqrR,CAAI56S,EAAEuvB,EAAErd,EAAEqd,GAAG,MAAM,KAAK,GA3pDvE,SAAavvB,EAAEkS,EAAEqd,GAAGvvB,EAAEhC,EAAE,EAAEgC,EAAEuF,EAAE,EAAK2M,GAAGqd,GAAUo2O,GAAI3lQ,EAAEkS,EAAEqd,EAAE,CA2pDesrR,CAAI76S,EAAEuvB,EAAErd,EAAEqd,QAAUm2O,GAAI1lQ,EAAEuvB,EAAErd,EAAEqd,GAAGvvB,EAAEA,EAAEkS,EAAE9O,GAAGmsB,EAAEnsB,GAAGpD,EAAEuvB,EAAEvxB,EAAEgC,EAAEA,EAAEuvB,EAAEnsB,GAAG8O,EAAE9O,GAAGpD,EAAEuvB,EAAEhqB,CAAC,CAxc1Gu1S,CAAI96S,EAAEkS,EAAEqd,GAAGvvB,EAAED,EAAEmS,EAAE9O,GAAGmsB,EAAEnsB,IAAG,EAAKpD,EAAED,EAAEwvB,EAAEnsB,GAAG8O,EAAE9O,IAAG,GAAYpD,EAAEA,EAAEkS,EAAE9O,GAAGmsB,EAAEnsB,EAAE,CAC5G,SAASs/Q,GAAI1iR,EAAEkS,GAAG,IAAIlS,EAAE+6S,MAAS,MAAH7oS,EAAS,MAAMghK,GAAI,IAAI2O,GAAI,yCAAyC,OAAO3vK,CAAC,CAC1G,SAASwwM,GAAI1iN,EAAEkS,GAAW,MAALlS,EAAEmxL,GAAc,MAALnxL,EAAE4kC,IAAS5kC,EAAEmxL,EAAEnxL,EAAE4kC,EAAE5kC,EAAE4kC,EAAE,MAAKm8P,GAAI/gS,EAAK,MAAHkS,EAAQ,MAAM2uJ,GAAI3uJ,GAAGA,IAAMlS,EAAE6iC,GAAG7iC,EAAEs+L,GAAG,KAAK,CAC5G,SAAS+zE,GAAIryQ,EAAEkS,GAAS,SAAIlS,GAAGA,GAAGkS,IAAIsgN,GAAItgN,GAAG81L,MAAMuqE,QAAsB50F,GAAG4qB,IAAIr2L,GAAG81L,MAAMuqE,MAAM,KAAcvyQ,CAAC,CAC9G,SAASg7S,GAAIh7S,GAAG,OAAOA,EAAEhC,GAAG,KAAK,EAAG,OAAO,EAAK,KAAK,EAAG,OAAO,EAAM,KAAM,IAAKgC,EAAEuvB,EAAE,QAAS,OAAOvvB,EAAEmmG,KAAM,CAC5G,SAAS80M,GAAIj7S,GAAG,OAAOA,EAAEhC,GAAG,KAAM,EAAG,OAAO,EAAK,KAAM,EAAG,OAAO,EAAM,KAAK,IAAKgC,EAAEuvB,EAAE,QAAS,OAAOvvB,EAAEk7S,KAAM,CAC7G,SAASC,GAAIn7S,GAAGytM,GAAG1uM,KAAKuF,KAAK,+EAA+EtE,EAAE,CAC9G,SAASunR,KAAMA,GAAI7yI,EAAI+yI,IAAI,IAAIhxE,GAAI,MAAM,GAAGixE,IAAI,IAAIjxE,GAAI,OAAO,GAAGkxE,IAAI,IAAIlxE,GAAI,MAAM,GAAGmxE,IAAI,IAAInxE,GAAI,MAAM,EAAE,CAC3G,SAASgmE,KAAMA,GAAI/nI,EAAIioI,IAAI,IAAIxoE,GAAI21E,IAAI,GAAGlN,IAAI,IAAIzoE,GAAI,oBAAoB,GAAG0oE,IAAI,IAAI1oE,GAAI,mBAAmB,EAAE,CAC9G,SAAS0gE,KAAMA,GAAIngI,EAAIogI,IAAI,IAAInnE,GAAI,aAAa,GAAGonE,IAAI,IAAIpnE,GAAI,kBAAkB,GAAGqnE,IAAI,IAAIrnE,GAAI,YAAY,EAAE,CAC9G,SAAStzC,KAAMA,GAAI3lB,EAASuuD,KAAWm4G,IAAI,IAAIz8F,GAAI08F,IAA5BC,IAAWp4G,KAA0Bq4G,IAAI,IAAI7qI,GAAI8qI,KAAKC,IAAI,IAAI/qI,GAAIgrI,KAAKC,IAAI,IAAIjrI,GAAIkrI,IAAI,CAC9G,SAASr/I,KAAMA,GAAI7nB,EAAImnK,IAAI,IAAIp6J,GAAIq6J,IAAI,IAAIp6J,GAAIq6J,IAAI,IAAIp6J,GAAIq6J,IAAI,IAAIp6J,GAAqBif,GAAb,IAAIhf,IAAIo6J,IAAc,IAAIjnK,CAAI,CACzG,SAAS6lI,KAAMA,GAAInmI,EAAIqmI,IAAI,IAAIpoE,GAAI,eAAe,GAAGqoE,IAAI,IAAIroE,GAAI,oBAAoB,GAAGsoE,IAAI,IAAItoE,GAAI,SAAS,EAAE,CAC/G,SAAS1yC,KAAMA,GAAIvrB,EAAIwnK,IAAI,IAAIv4F,GAAI,IAAIw4F,IAAI,IAAIz4F,IAAK3jD,MAAMq8I,KAAKF,KAAKG,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,GAAG,CAC3G,SAASnM,GAAI3wS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAI+6B,EAAY,IAAV/6B,EAAE,IAAI05K,GAAQ3+I,EAAEgkO,IAAIvvO,EAAE,GAAGuL,EAAE5oB,GAAG4oB,EAAE/6B,EAAEwvB,GAAmBq2M,GAAI7lO,EAAE,IAAI4gN,GAAvBhjC,GAAGohF,GAAIjkO,GAAG,KAAqB0/Q,GAAGx6S,EAAEkS,EAAEnS,EAAE,CAE9G,SAASg9S,GAAI/8S,GAAG,IAAIkS,EAAwC,OAAlClS,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAIkgD,IAAGx6O,EAAE,EAAE,IAAiB,IAA9CkS,EAAiClS,EAAEA,GAAQhC,EAziFjE,SAAagC,GAAG,OAAOA,EAAEkS,EAAElS,EAAEkS,EAAElS,EAAEA,CAAC,CAyiF4Cg9S,CAAIr/H,GAAG0O,GAAIn6K,EAAE,GAAG,MAAa,IAAI,CAC/G,SAAS+qS,GAAGj9S,EAAEkS,GAAG,IAAIqd,EAAa,OAAXA,EAAEm7K,GAAI1qM,EAAEkS,GAAM44L,GAAIqsD,GAAIn3P,EAAEkS,GAAG,GAz0ElD,SAAalS,EAAEkS,GAAG,OAAOg7L,GAAIltM,EAAEkS,IAAI,CAAC,CAy0EiBgrS,CAAI/lD,GAAIn3P,EAAEuvB,GAAG,GAAWA,EAASm7K,GAAI8yB,IAAI25B,GAAIpnB,GAAIxgN,EAAE,IAAI,GAAG,CAG/G,SAASmjP,GAAI1yQ,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAW,GAAM,IAAfA,EAAEC,EAAEuvB,EAAErd,IAAyC,IAAtBlS,EAAEuvB,EAAErd,GAAG,EAAElS,EAAED,GAAGA,EAAEwvB,EAAErd,EAAE,EAAQqd,EAAEvvB,EAAEA,EAAE9B,QAAQ8B,EAAEA,EAAEuvB,IAAIxvB,EAAEwvB,GAAGA,GAAGA,CAAE,CAC/G,SAAS4tR,GAAIn9S,GAAG,IAAIkS,EAAiB,IAAfA,EAAElS,EAAEA,EAAEuvB,EAAErxB,QAAY,EAAG,OAAOmzO,GAAIn/N,EAAE,EAAElS,EAAEA,EAAEuvB,EAAErxB,QAAQ22O,GAAI70O,EAAEA,EAAEkS,EAAE,GAAQ,MAAMghK,GAAI,IAAIkC,GAAK,CAE/G,SAASo2D,GAAIxrO,EAAEkS,EAAEqd,GAAG,GAAGvvB,EAAEkS,EAAG,MAAMghK,GAAI,IAAI2O,GAAI49F,IAAIz/Q,EAAEo9S,IAAIlrS,IAAI,GAAGlS,EAAE,GAAGkS,EAAEqd,EAAG,MAAM2jJ,GAAI,IAAIkR,GAAIq7F,IAAIz/Q,EAAE0/Q,IAAIxtQ,EAAE8iO,IAAIzlN,GAAI,CAC/G,SAAS8tR,GAAIr9S,GAAG,IAAIA,EAAEA,GAAc,IAAJ,EAANA,EAAEA,EAAEhC,GAAS,MAAMk1K,GAAI,IAAI4O,GAAI,gDAAgD9hL,EAAE86B,GAAI,CAC/G,SAASuyN,GAAIrtP,GAAG,IAAIkS,IAAIlS,EAAEoS,EAAU,GAALpS,EAAEhC,EAAMgC,EAAE2S,EAAE,KAAa3S,EAAEhC,EAAEgC,EAAE2S,EAAEzU,SAAQgU,EAAElS,EAAE2S,EAAE3S,EAAE2S,EAAE3S,EAAEqjQ,GAAGrjQ,EAAEhC,GAAGslQ,IAAIpxP,EAAE,EAAElS,EAAE2S,EAAE,EAAE3S,EAAEhC,GAAG,CAG/G,SAASs/S,GAAIt9S,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAA0C,OAAtC2rO,GAAIx5N,EAAElS,EAAEuvB,EAAErxB,QAAkC,IAA1B6B,EAAEwvB,EAAE2vM,MAAShhO,SAA6B+gO,GAAIj/N,EAAEuvB,EAAErd,EAAEnS,IAAU,EAAI,CAEhH,SAAS6rP,GAAI5rP,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,IAAQmoB,EAAE,EAAEnoB,GAARpN,EAAEgqB,GAAUrxB,OAAO48B,EAAEnoB,IAAImoB,EAAU,GAAP/6B,EAAEwF,EAAEu1B,GAAM96B,EAAEkS,EAAEwoS,GAAGxoS,EAAEnS,EAAE8sM,MAAO,OAAO9sM,EAAG,OAAO,IAAI,CACjH,SAASw9S,GAAIv9S,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAM,IAAJA,EAAE,EAAU/6B,EAAE,EAAEwF,GAARgqB,EAAEvvB,GAAU9B,OAAO6B,EAAEwF,IAAIxF,EAAU+6B,EAAE,GAAGA,GAAM,OAAlB5oB,EAAEqd,EAAExvB,IAAmBwjN,GAAGrxM,GAAG,GAAG4oB,GAAI,EAAE,OAAOA,CAAC,CAChH,SAASsjL,GAAGp+M,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAO,IAAL5oB,EAAE,CAAC,EAAU3M,EAAE,EAAEu1B,GAAR/6B,EAAEC,GAAU9B,OAAOqH,EAAEu1B,IAAIv1B,EAAU2M,EAAE,KAAU,OAAnBqd,EAAExvB,EAAEwF,IAAYu1B,EAAQvL,EAAEuL,EAAE,GAAGvL,EAAE5c,IAAI4c,EAAE,OAAOrd,CAAC,CAEjH,SAASsrS,GAAIx9S,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAM,IAAJA,EAAE,EAAMwvB,EAAE,IAAIu/M,GAAG7hB,GAAGjtN,EAAEA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG77L,KAAKrd,EAAEyrK,GAAGwtC,GAAG57L,GAAG,KAAMA,EAAEvxB,GAAGkU,EAAEnS,EAAE/B,KAAK+B,EAAE,OAAOA,CAAC,CACjH,SAAS09S,GAAIz9S,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAU,IAARgqB,EAAEvvB,EAAEuF,EAAE,IAAI,CAAC,GAAGgqB,GAAGrd,EAAG,OAAO3M,EAAQ,KAANxF,EAAEwvB,EAAEhqB,GAAS,MAAM2tK,GAAI,IAAI6B,IAAKxlJ,EAAEgwN,GAAIx/O,KAAKwF,CAAC,CAAY,CACjH,SAASm4S,GAAI19S,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAU,IAARA,EAAE2M,EAAElS,EAAE86B,EAAM/6B,EAAE,IAAI4lK,GAAI3lK,EAAED,GAAGA,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAA0By/S,IAAjBpuR,EAAEouJ,GAAGC,GAAI79K,GAAG,KAAWwvB,EAAEhqB,EAAEgqB,EAAEuL,EAAEv1B,GAAGvF,EAAE86B,EAAE5oB,CAAC,CACjH,SAAS0rS,GAAI59S,EAAEkS,EAAEqd,GAAG,OAAG0jH,EAAK3/H,KAAKskB,IAAI1lB,EAAElS,GAAG69S,KAAK5qK,EAAK3/H,KAAKskB,IAAIrI,EAAEvvB,GAAG69S,MAAwB3rS,EAAElS,EAAE69S,IAAI79S,EAAEuvB,EAAEsuR,IAAItuR,EAAEvvB,EAAE69S,IAAG,CACjH,SAASC,GAAI99S,EAAEkS,GAAG,OAAIlS,EAAekS,IAAIlS,EAAEoS,GAAey3K,GAAG7pL,EAAE,MAAwB,GAAf29K,GAAG39K,EAAE,KAAKA,EAAEkS,EAA/B,EAAsDlS,EAAE+9S,KAA7E,CAAiF,CACjH,SAASC,GAAIh+S,EAAEkS,GAAG,OAAIlS,EAAekS,IAAIlS,EAAEqB,GAAewoL,GAAG7pL,EAAE,MAAwB,GAAf29K,GAAG39K,EAAE,KAAKA,EAAEA,EAA/B,EAAsDA,EAAEi+S,KAA7E,CAAiF,CACjH,SAAS9f,GAAIn+R,GAAS,OAAN+iN,MAAS/iN,EAAE,GAAU,GAAJA,EAAc,IAAIk+S,KAAK,GAAGl+S,GAAUm+S,IAAgBn+S,GAAG,GAAGo+S,IAAIjmH,GAAGn4L,IAAI,IAAIk+S,IAAI,EAAEl+S,EAAE,CAClH,SAASiwP,GAAGjwP,GAAQ,MAAL+vP,KAAW78E,GAAI,IAAImK,GAAG,6BAA6Br9K,EAAE,6CAA6C,CACjH,SAASyxS,GAAGzxS,GAAGojL,KAAK8jC,GAAG5iN,MAAM2pN,GAAG3pN,MAAMA,KAAKiB,EAAEvF,EAAEq+S,IAAG/5S,KAAKtE,GAAGsE,KAAKqO,EAAK,MAAH3S,EAAQ+3L,IAAI02B,GAAIzuN,GAAGsE,KAAKtE,EAAE,GAAGsE,KAAK4N,EAAElS,EAAEsE,KAAKtE,EAAE,EAAE,CAChH,SAASs+S,KAAMh6S,KAAKtE,EAAE,IAAI2tJ,GAAIrpJ,KAAKw2B,EAAE,IAAI8yI,GAAItpK,MAAMA,KAAK4N,EAAE,IAAI27J,GAAIvpK,MAAMA,KAAKtG,EAAE,IAAI8vK,GAAIxpK,MAAMA,KAAKiB,EAAE,IAAIwoK,GAAIzpK,KAAK,CACjH,SAASi6S,KAAK7gN,GAAG3+F,KAAKuF,KAAK,IAAI+qN,GAAI7Q,GAAG,MAAMuS,GAAG,EAAEmkC,KAAK5wP,KAAK4N,EAAE,EAAE5N,KAAKtE,EAAE,IAAI2gP,GAAG,KAAK,KAAK,EAAE,MAAM7sE,GAAGxvK,KAAKtE,EAAEsE,KAAKtE,EAAE,CAChH,SAAS24Q,KAAMA,GAAIjkI,EAAImkI,IAAI,IAAI5mE,GAAI,kBAAkB,GAAG6mE,IAAI,IAAI7mE,GAAI,mBAAmB,GAAG8mE,IAAI,IAAI9mE,GAAI,QAAQ,EAAE,CAChH,SAASusG,KAAMA,GAAI9pK,EAAI+pK,IAAI5uD,GAAGtxE,GAAGC,GAAGzjJ,IAAG,GAAGkxM,IAAI,IAAI,EAAE,EAAE0mD,KAAM/xE,KAAKC,OAAO69F,IAAI7uD,GAAGtxE,GAAGC,GAAGzjJ,IAAG,GAAGkxM,IAAI,IAAI,EAAE,CAACnrB,IAAIC,MAAM,CAChH,SAAS49F,GAAI3+S,GAAG,OAAQy/K,MAAMm/H,KAAK3+G,GAAGjgM,EAAEoS,GAAGkuK,GAAIC,GAAGgoB,IAAIvoM,GAAGgoM,MAAM62G,QAAQnpD,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC7zL,EAAEhC,EAAE4B,EAAEI,EAAEJ,EAAEI,EAAEA,KAAKkS,CAAC,CAElH,SAAS4sR,GAAI9+R,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAExF,EAAEC,EAAEy3O,GAAGvlO,EAAE,MAAM3M,EAAE,KAAQ2M,IAAMk9K,KAAmBm4D,GAAtBhiP,EAAW,IAAIstK,GAAa7yK,EAAE0S,KAAG3S,EAAEgsL,IAAI/rL,EAAEuF,EAAExF,KAAQA,EAAEisL,IAAI,CAEjH,SAAS8yH,GAAI9+S,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAgF,OAA9ExF,GAAE,EAAMwvB,EAAErd,EAAE8B,EAAEjU,EAAKmS,EAAEnS,EAAEC,EAAEkS,IAAG3M,EAAEw5S,IAAI7sS,EAAE8B,EAAEhU,EAAEkS,GAAMA,EAAE8B,EAAEjU,EAAEwF,IAAGy5S,IAAI9sS,EAAE8B,EAAEzO,GAAGxF,EAAEwvB,GAAGrd,EAAE8B,EAAEjU,IAAUA,CAAC,CAClH,SAASk/S,GAAIj/S,EAAEkS,GAAG,IAAMnS,EAAM4S,EAAElP,EAAEzF,EAAEoU,EAAsE,OAApEpU,EAAEkU,EAAElU,EAAEoU,EAAEF,EAAEE,EAAoBO,EAAE3U,GAApB+B,EAAEC,EAAE86B,GAAM98B,EAAcyF,EAAE2O,EAAZrS,EAAEqS,EAAgB6gI,EAAK3/H,KAAKuc,KAAKld,EAAEA,EAAElP,EAAEA,EAAW,CAClH,SAASsrL,GAAI/uL,EAAEkS,GAAG,IAAMnS,EAAkF,OAAhFA,EAAEm/S,IAAIl/S,OAAWm/S,MAAMA,IAAI,IAAIrsJ,IAAQssJ,MAA2Bn0H,IAAblrL,EAAE,IAAIgyK,GAAdstI,IAAIntS,KAAuBotS,KAAKt/S,IAAUD,CAAC,CAClH,SAASw/S,GAAGv/S,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAqB,OAAnBwvB,EAAEouJ,GAAG39K,EAAEuvB,EAAEm5L,GAAGx2M,GAAG,OAAyBnS,EAAEC,EAAEs8P,MAAOz6D,GAAGtyK,GAAGvvB,EAAED,GAAGwvB,EAAE0vJ,KAAK1vJ,EAAE8/O,KAAYrvQ,EAAEw/S,GAAGz/S,IAAvDC,EAAE0jL,IAAuD,CACnH,SAAS+7H,GAAIz/S,EAAEkS,GAAG,IAAIqd,EAAE,IAAIA,EAAE,EAAEA,EAAErd,EAAEhU,OAAOqxB,IAAK,GAAGvvB,IAAI43L,GAAIroK,EAAErd,EAAEhU,QAAQgU,EAAEmN,WAAWkQ,IAAK,OAAO,EAAM,OAAO,CAAK,CAClH,SAASmwR,GAAI1/S,EAAEkS,GAAG,IAAIqd,EAAE,IAAIA,EAAE,EAAEA,EAAErd,EAAEhU,OAAOqxB,IAAK,GAAGvvB,IAAI43L,GAAIroK,EAAErd,EAAEhU,QAAQgU,EAAEmN,WAAWkQ,IAAK,OAAO,EAAM,OAAO,CAAK,CAElH,SAASowR,GAAI3/S,GAAG,IAAIkS,EAAE,GAAQ,GAALlS,EAAEuvB,EAAM,OAAOvvB,EAAEuvB,EAAE,IAAIrd,EAAE,EAAEA,EAAElS,EAAEA,EAAE9B,OAAOgU,IAAKlS,EAAEuvB,EAAM,GAAJvvB,EAAEuvB,IAAc,EAARvvB,EAAEA,EAAEkS,IAAmB,OAAZlS,EAAEuvB,EAAEvvB,EAAEuvB,EAAEvvB,EAAEuF,EAASvF,EAAEuvB,CAAC,CACnH,SAASsiR,GAAI7xS,GAAG,IAAIkS,EAAuF,OAArFo3M,GAAItpN,EAAEA,GAAGA,EAAEkS,GAAGA,EAAElS,EAAED,EAAEC,EAAEA,EAAEA,GAAGkyN,GAAIlyN,EAAEkS,GAAGlS,EAAED,EAAEwvB,GAAM,MAAHrd,GAASlS,EAAEuvB,EAAEvvB,EAAEA,EAAEA,EAAEA,EAAEA,EAAEA,EAAE,EAAEA,EAAED,EAAEC,EAAE9B,OAAO,EAASgU,CAAC,CAGnH,SAAS0tS,GAAI5/S,GAAG,IAAIkS,EAAuF,OAAtE29P,GAAf39P,EAAE,IAAIy2K,GAAI3oL,EAAEA,GAASA,GAAG+nM,GAAI71L,GAAG81L,MAAM0/C,KAAK1nP,GAAGkS,EAAEhS,EAAEF,EAAEA,EAAE2S,EAAET,EAAEhS,EAAEgS,EAAElS,EAAE86B,EAAE5oB,EAAEtS,EAAEI,EAAEA,EAAEhC,EAAEkU,EAAEtS,EAAEsS,EAAElS,EAAEoS,EAASF,CAAC,CACnH,SAAS2tS,GAAI7/S,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAE,IAAIA,EAAE96B,EAAE27M,KAAK7gL,EAAEygL,OAAOh2M,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,KAAM77M,EAAEI,EAAEkS,EAAElS,GAAGD,EAAEC,EAAEuF,EAAErF,EAAEF,GAAG,EAAEuF,EAAE3F,EAAEsS,EAAEA,EAAEA,EAAEA,EAAEA,GAAG3M,EAAErF,EAAEgS,EAAEqd,CAAE,CACnH,SAASuwR,GAAI9/S,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAE,IAAIA,EAAE2M,EAAElS,EAAEA,EAAE2hP,KAAKhmC,KAAKp2M,EAAEg2M,MAAuB,GAAG+uC,GAAItqP,EAArB29K,GAAGp4K,EAAEk2M,KAAK,IAAelsL,GAAI,OAAO,EAAM,OAAO,CAAK,CACnH,SAASwwR,GAAI//S,GAAG,IAAIkS,EAAEqd,EAAE,IAAIA,EAAE,IAAIo2I,GAAI3lK,EAAE0S,GAAG6c,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAyB,GAAhBgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,IAAOvvB,EAAEJ,EAAEsS,EAAE9O,IAAI,EAAG,OAAO8O,EAAG,OAAO,IAAI,CACnH,SAAS8tS,GAAIhgT,GAAG,IAAQD,EAAEwF,EAAY,IAAVA,EAAE,IAAIkxK,GAAQ12K,EAAE,IAAI4lK,GAAI3lK,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAkCq7L,GAAGh0L,EAAV06S,IAAhBtiI,GAAGC,GAAI79K,GAAG,MAAqB,OAAOwF,CAAC,CAEnH,SAAS26S,GAAIlgT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEA,EAAE,IAAIogT,IAAIngT,EAAEkS,GAAG0iR,IAAG50R,EAAE0S,EAAER,EAAE+rL,KAAKl+L,GAAMwvB,IAAIkiN,GAAIzxO,EAAEqoB,KAAItoB,EAAEwvB,EAAE,IAAI2+N,GAAIluP,EAAED,GAAGqjN,GAAIlxM,EAAEkuS,KAAK,IAAIv4I,GAAI9nK,IAAI,CACnH,SAASmtM,GAAIltM,EAAEkS,GAAG,IAAIqd,EAAE,OAAGuwL,GAAI9/M,IAAI8/M,GAAI5tM,KAAIqd,EAAEvvB,EAAEkS,GAAMvC,MAAM4f,IAAWA,EAAU2tO,IAAGp9C,GAAI9/M,GAAG4jO,GAAI5jO,GAAGA,EAAE8/M,GAAI5tM,GAAG0xN,GAAI1xN,GAAGA,EAAE,CACnH,SAASmuS,GAAIrgT,EAAEkS,GAAG,OAAOA,EAAElS,EAAE9B,SAAS05L,GAAI1lL,EAAElS,EAAE9B,QAAyB,IAAjB8B,EAAEqf,WAAWnN,MAAU0lL,GAAI1lL,EAAElS,EAAE9B,QAAyB,IAAjB8B,EAAEqf,WAAWnN,GAAO,CACjH,SAASouS,GAAItgT,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAE96B,EAAEA,EAAEkS,EAAE4oB,EAAE/6B,EAAE,EAAE,EAAEC,EAAE86B,GAAGv1B,EAAE,IAAIg7S,IAAIvgT,EAAEuvB,EAAEvvB,EAAEA,EAAEuvB,EAAEuL,GAAG,IAAI0lR,IAAIjxR,EAAEvvB,EAAEA,EAAEuF,EAAEvF,EAAEuF,EAAEvF,EAAEkS,EAAElS,EAAEuvB,IAAIosP,KAAMG,MAAM,CAClH,SAAS2kC,GAAIzgT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAiF,OAA/EA,EAAEvF,EAAEA,EAAEA,EAAEA,EAAEkS,EAAe,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,MAAUjtN,EAAE,IAAIuyO,GAAItyO,EAAE,EAAE,EAAEuF,EAAE2M,GAAIqd,EAAQA,EAAE+uM,GAAGv+N,GAAVwvB,EAAExvB,GAAkBwvB,CAAC,CACnH,SAASmxR,GAAI1gT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAiF,OAA/EA,EAAEvF,EAAEkS,EAAElS,EAAEkS,EAAEA,EAAe,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,MAAUjtN,EAAE,IAAIuyO,GAAItyO,EAAE,EAAE,EAAEuF,EAAE2M,GAAIqd,EAAQA,EAAE+uM,GAAGv+N,GAAVwvB,EAAExvB,GAAkBwvB,CAAC,CACnH,SAASoxR,GAAI3gT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAiF,OAA/EA,EAAEvF,EAAE86B,EAAE96B,EAAE86B,EAAE5oB,EAAe,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,MAAUjtN,EAAE,IAAIuyO,GAAItyO,EAAE,EAAE,EAAEuF,EAAE2M,GAAIqd,EAAQA,EAAE+uM,GAAGv+N,GAAVwvB,EAAExvB,GAAkBwvB,CAAC,CACnH,SAASklM,GAAIz0N,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAA+E,OAA7EA,EAAmB8lR,KAAK7gT,EAAEmS,GAAvB3M,EAAEvF,EAAEk/S,IAAIl/S,GAAG,OAAgBuF,EAAEs7S,KAAU9gT,MAAWmS,IAAGqd,EAAE2vR,IAAIl/S,KAAQuvB,EAAEsxR,KAAY/lR,CAAC,CACnH,SAASgmR,GAAI9gT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAsB,IAApBA,EAAE,EAAEgqB,EAAEvvB,EAAED,EAAEmS,GAAG,EAAEA,GAAGA,EAAQnS,EAAE,GAAMA,EAAE,GAAG,GAAGwvB,GAAGA,EAAExvB,EAAEA,EAAE,EAAE,IAAOwF,GAAGgqB,EAAExvB,GAAG,GAAG,OAAOmS,EAAE,EAAE,EAAE3M,EAAEA,CAAC,CAEnH,SAAS8mS,GAAIrsS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAE,GAAM,MAAHvF,EAAS,IAAIuvB,EAAE,EAAEA,EAAEvvB,EAAE9B,SAASqxB,EAAU,GAAPrd,EAAElS,EAAEuvB,GAA2B,IAAlBouJ,GAAGzrK,EAAES,EAAE,KAAKpN,EAAE2M,EAAElU,EAAM+B,EAAE,EAAEA,EAAEwF,IAAIxF,GAAM,CAGnH,SAASq+Q,KAAMA,GAAI1pI,EAAI4pI,IAAI,IAAI9oE,GAAI,UAAU,GAAG+oE,IAAI,IAAI/oE,GAAI,mBAAmB,GAAGgpE,IAAI,IAAIhpE,GAAI,oBAAoB,EAAE,CACpH,SAASurG,GAAI/gT,EAAEkS,GAAG,OAAOA,GAAG,KAAK,EAAyC,OAAtClS,EAAEJ,IAAII,EAAEJ,EAAE,IAAI06L,GAAIrN,IAAGjtL,EAAE,EAAE,SAAIqnN,IAAIrnN,EAAEJ,GAAU,KAAK,EAAc,YAAZ0gS,GAAItgS,EAAE,MAAcozS,GAAIpzS,EAAEkS,EAAE,CACpH,SAAS0gO,GAAG5yO,GAAS,OAAOA,EAAEi/K,MAAM,KAAK,EAAE,OAAO06D,IAAG,KAAK,EAAE,OAAO,IAAIvQ,GAAGrlD,GAAG/jL,EAAEq7M,GAAG,KAAK,QAAY,OAAO,IAAIu+B,GAAb55O,GAAoB,CACrH,SAASghT,GAAGhhT,GAAQ,OAALg0K,KAAYh0K,EAAEi/K,MAAM,KAAK,EAAE,OAAO4uB,KAAKgsC,IAAG,KAAK,EAAE,OAAO,IAAI56I,GAAGj/F,EAAE27M,KAAKF,MAAM,QAAQ,OAAO,IAAI7N,GAAG5tM,GAAI,CACrH,SAASihT,GAAGjhT,GAAQ,OAALg0K,KAAYh0K,EAAEuvB,GAAG,KAAK,EAAE,OAAOs+K,KAAKgsC,IAAG,KAAK,EAAE,OAAO,IAAI56I,GAAGiiN,IAAG,IAAI5/G,GAAIthM,KAAK,QAAQ,OAAO,IAAI08K,GAAG18K,GAAI,CACrH,SAASy+N,GAAGvsN,EAAEqd,GAAGw0J,GAAG7xK,GAAG,IAAI,OAAOA,EAAE8+N,GAAGzhN,EAAE,CAAC,MAAMvvB,KAAY,GAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,MAAM6pL,GAAG7pL,IAAE,KAAM,OAAO,KAAU,MAAMkzK,GAAIlzK,IAAE,CAAC,CAEnH,SAASmhT,GAAGjvS,EAAEqd,GAAGw0J,GAAG7xK,GAAG,IAAI,OAAOA,EAAE+tL,GAAG1wK,EAAE,CAAC,MAAMvvB,KAAY,GAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,MAAM6pL,GAAG7pL,IAAE,KAAM,OAAO,EAAW,MAAMkzK,GAAIlzK,IAAE,CAAC,CAEpH,SAASopL,GAAGl3K,EAAEqd,GAAGw0J,GAAG7xK,GAAG,IAAI,OAAOA,EAAE/K,GAAGooB,EAAE,CAAC,MAAMvvB,KAAY,GAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,MAAM6pL,GAAG7pL,IAAE,KAAM,OAAO,EAAW,MAAMkzK,GAAIlzK,IAAE,CAAC,CACpH,SAASohT,GAAIphT,EAAEkS,GAAYlS,EAAEA,EAAEuvB,EAAErxB,OAAO,GAAwCkwQ,GAAnCzwF,GAAG0pB,GAAIrnM,EAAEA,EAAEA,EAAEA,EAAEuvB,EAAErxB,OAAO,GAAG,KAAcgU,IAAY6jK,GAAI/1K,EAAEA,EAAE,IAAIkuQ,GAAIh8P,GAAG,CAErH,SAASmvS,GAAIrhT,GAAG,IAAIkS,EAAuF,OAArFA,EAAE,IAAIsyK,IAAMxkL,GAAG,mBAAmB28M,GAAIzqM,EAAElS,EAAEuF,GAAG2M,EAAElS,GAAG,IAAI48M,GAAI1qM,EAAE06M,GAAG,IAAI/oC,GAAG,IAAIle,GAAI3lK,EAAEqB,KAAY6Q,EAAElS,CAAC,CACrH,SAASshT,GAAIthT,GAAG,IAAIkS,EAAyF,OAAvFA,EAAEyrK,GAAGk5C,GAAI72N,EAAEuvB,EAAEA,EAAE,IAAI,QAAYrd,EAAE,IAAIgiP,GAAIltE,GAAID,GAAI,IAAIn4B,GAAI,IAAI,UAAU82C,IAAI1lM,EAAEuvB,EAAEA,EAAE,GAAGrd,IAAUA,CAAC,CACrH,SAASqvS,GAAIvhT,GAAG,IAAIkS,EAAE,OAAc,IAAL,GAALlS,EAAEgtN,IAAiBw0F,IAAIxhT,KAAGkS,EAAE,IAAI27M,GAAI2zF,IAAIxhT,KAAMA,GAAG,WAAWy8M,GAAIvqM,EAAElS,EAAEwkQ,IAAItyP,EAAElS,GAAG,IAAWkS,EAAElS,EAAC,CACrH,SAASyhT,GAAIzhT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAmF,OAAjFA,EAAEvF,EAAE0hT,GAAG1hT,EAAE0hT,GAAGxvS,EAAe,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,MAAUjtN,EAAE,IAAIuyO,GAAItyO,EAAE,EAAE,EAAEuF,EAAE2M,GAAIqd,EAAQA,EAAE+uM,GAAGv+N,GAAVwvB,EAAExvB,GAAkBwvB,CAAC,CACrH,SAASoyR,GAAI3hT,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAM,IAAJgqB,EAAE,EAAMhqB,EAAE4jN,GAAInpN,EAAEkS,GAAGypM,KAAKp2M,EAAEg2M,MAAuBhsL,GAAuB,MAApBg5K,IAAjB5qB,GAAGp4K,EAAEk2M,KAAK,KAAczT,MAAM2qE,MAAY,EAAE,EAAE,OAAOpjP,CAAC,CACrH,SAASg6N,GAAIvpP,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAM,IAAJ/6B,EAAE,EAAM+6B,EAAEgkO,IAAI9+P,EAAE,GAAG86B,EAAE5oB,GAAG4oB,EAAE/6B,EAAEwvB,MAAIhqB,EAAE+6K,GAAIC,GAAGw+E,GAAIjkO,MAAUvL,IAAchqB,GAAG2M,KAAKnS,EAAE,OAAOA,CAAC,CAGrH,SAAS6hT,GAAI5hT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAmF,OAAjFA,EAAEvF,EAAE0S,EAAE1S,EAAE0S,EAAER,EAAe,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,MAAUjtN,EAAE,IAAIuyO,GAAItyO,EAAE,EAAE,EAAEuF,EAAEvF,EAAE0S,GAAI6c,EAAQA,EAAE+uM,GAAGv+N,GAAVwvB,EAAExvB,GAAkBwvB,CAAC,CACrH,SAASsyR,GAAI7hT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAqF,QAAvEA,GAAZwvB,EAAEouJ,GAAGzrK,EAAE,MAAS4vS,OAASvyR,EAAEwyR,GAAGhiT,EAAE8pL,GAAG33K,EAAE,IAAI,IAAI8nM,GAAIh6M,EAAE29K,GAAGzrK,EAAE,KAAK,IAAImnP,GAAIr5P,EAAE29K,GAAGzrK,EAAE,OAAcnS,CAAC,CACrH,SAASiiT,GAAIhiT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEC,EAAEwwQ,GAAGxwQ,EAAEhC,EAAE,GAAG+B,EAAEC,EAAEs7K,GAAGppK,EAAEqd,GAAGrd,GAAGlS,EAAEhC,GAAGslQ,IAAItjQ,EAAE2S,EAAET,EAAElS,EAAE2S,EAAET,EAAE,EAAElS,EAAEhC,EAAEkU,GAAGy0L,GAAG3mM,EAAE2S,EAAET,EAAEnS,KAAKC,EAAEhC,EAAEgC,EAAEywQ,GAAGv+P,EAAEqd,GAAGvvB,EAAEi4O,IAAI,CAGrH,SAAS1H,GAAIvwO,EAAEkS,GAAG,IAAIqd,EAAY,OAAVA,EAAE,IAAImnH,GAAQ12I,EAAEA,EAAEy5L,GAAGlqK,IAAyCiuJ,KAAM,IAAID,GAAI1c,GAAImmG,GAAIhnQ,EAAEuvB,EAAEvvB,EAAEkS,OAAjE6nL,GAAI/5L,GAAUw9K,KAAMA,KAAMguC,IAA2C,CACtH,SAASs7E,GAAI9mS,EAAEkS,GAAG,OAAOA,EAAES,GAAG,KAAK,EAAE,KAAK,EAAE,OAAOw2M,GAAInpN,EAAEkS,GAAG,KAAK,EAAE,KAAK,EAAE,OAAOm3M,GAAGF,GAAInpN,EAAEkS,IAAK,OAAO+0M,KAAMA,KAAM+Y,GAAG,CACrH,SAAS1tC,GAAGtyL,EAAEkS,GAAG,OAAOipM,GAAGn7M,GAAGq8N,GAAIr8N,EAAEkS,GAAG+oM,GAAGj7M,GAAGo8N,GAAIp8N,EAAEkS,GAAG8oM,GAAGh7M,IAAI6gK,GAAI7gK,GAAG+6M,GAAG/6M,KAAK+6M,GAAG7oM,IAAI+7N,GAAGjuO,GAAGA,EAAE6sN,GAAG36M,GAAGu6N,GAAGzsO,GAAGoyL,GAAGpyL,EAAEkS,GAAGylP,GAAG33P,EAAEkS,EAAE,CAEtH,SAAS+vS,GAAIjiT,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAS,GAAH2M,GAAS,GAAHnS,IAAgB,GAAHmS,EAAM3M,EAAExF,GAAG8sS,IAAItnS,EAAEgqB,EAAExvB,EAAEC,EAAE,IAAQ,GAAHD,EAAMwF,EAAE2M,GAAG26R,IAAItnS,EAAEvF,EAAEkS,EAAEqd,EAAE,IAqhCjG,SAAavvB,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,GAAG+8M,GAAG/6M,KAAK+6M,GAAG7oM,IAAInS,GAAGwF,EAAc,YAAX28S,IAAIliT,EAAED,EAAEwvB,GAAU,IAAI9rB,EAAE,EAAEA,EAAE1D,EAAE0D,IAAI,CAAY,IAAXkP,EAAE,EAAEmoB,EAAE96B,EAAEyD,GAAOzF,EAAE,EAAEA,EAAEuH,EAAEvH,IAAK2U,EAAE+3L,GAAIA,GAAI3R,GAAIH,GAAI99J,EAAE+9J,KAAKD,GAAI1mL,EAAElU,GAAG66L,MAAMD,GAAIrpK,EAAE9rB,EAAEzF,GAAG66L,MAAMD,GAAIqxB,GAAIt3M,GAAGkmL,MAAMtpK,EAAE9rB,EAAEzF,GAAGisN,GAAIt3M,GAAGA,EAAEo9N,GAAIp9N,EAAE,IAAI4c,EAAE9rB,EAAE8B,GAAG0kN,GAAIt3M,EAAE,CAAC,CArhCvIwvS,CAAIniT,EAAEuvB,EAAEhqB,EAAE2M,EAAEnS,GAAE,CACpH,SAASqiT,GAAIpiT,EAAEkS,GAAG,IAAIqd,EAAiB,GAAZvvB,EAAEuvB,EAAErxB,SAAgEmiN,GAA9C9wL,EAAEouJ,GAAG88E,IAAIz6P,EAAEi+K,GAAGkuE,IAAGC,IAAI,GAAGpsP,EAAEuvB,EAAErxB,OAAO,EAAE,IAAI,KAAW,IAAIygJ,IAAK0jK,IAAI9yR,EAAErd,GAAE,CACtH,SAASowS,GAAItiT,EAAEkS,GAAG,IAAIqd,EAAiB,GAAZvvB,EAAEuvB,EAAErxB,SAAgEmiN,GAA9C9wL,EAAEouJ,GAAG88E,IAAIz6P,EAAEi+K,GAAGkuE,IAAGC,IAAI,GAAGpsP,EAAEuvB,EAAErxB,OAAO,EAAE,IAAI,KAAW,IAAI0gJ,IAAKyjK,IAAI9yR,EAAErd,GAAE,CACtH,SAASqwS,GAAIviT,EAAEkS,EAAEqd,EAAExvB,GAAG,OAAOmS,GAAG,KAAK,EAAE,OAAQlS,EAAEJ,IAAII,EAAEJ,EAAE,IAAI06L,GAAIrN,IAAGjtL,EAAE,EAAE,IAAIA,EAAEJ,EAAE,KAAK,EAAE,OAAOI,EAAEqB,EAAG,OAAOmhT,IAAIxiT,EAAEkS,EAAEqd,EAAExvB,EAAE,CACtH,SAAS4yR,KAAMA,GAAIj+I,EAAIk+I,IAAI,IAAIx9E,GAAIopF,IAAI,GAAG39E,IAAI,IAAIzL,GAAI04C,IAAI,GAAGltC,IAAI,IAAIxL,GAAIw4C,IAAI,GAAG7sC,IAAI,IAAI3L,GAAI87C,IAAI,GAAGpwC,IAAI,IAAI1L,GAAI,KAAK,EAAE,CACtH,SAASsgE,KAAMA,GAAIhhI,EAAIkhI,IAAI,IAAIlmE,GAAIo6E,IAAI,GAAGjU,IAAI,IAAInmE,GAAI,0BAA0B,GAAGomE,IAAI,IAAIpmE,GAAI,oBAAoB,EAAE,CACrH,SAAS0lD,GAAIp1P,EAAEkS,EAAEqd,GAAG,GAAGvvB,EAAE,GAAGkS,EAAEqd,EAAG,MAAM2jJ,GAAI,IAAIgO,GAAIu+F,IAAIz/Q,EAAE0/Q,IAAIxtQ,EAAE,WAAWqd,IAAI,GAAGvvB,EAAEkS,EAAG,MAAMghK,GAAI,IAAI2O,GAAI49F,IAAIz/Q,EAAEo9S,IAAIlrS,GAAI,CACtH,SAASuwS,GAAIziT,EAAEkS,EAAEqd,GAAG,GAAGrd,EAAE,EAAG+W,IAAIjpB,EAAEuvB,OAAO,CAAC,IAAIA,EAAEosO,KAAM,MAAMzoF,GAAI,IAAI2O,GAAI4iF,IAAIl1O,EAAEwvK,KAAK2jH,MAAM/kI,GAAGpuJ,EAAE,IAAIwzO,KAAK4/C,GAAG3iT,EAAEA,EAAEijQ,KAAK/wP,EAAE,CAAC,CAEtH,SAAS0wS,GAAI5iT,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAGx2B,KAAKiB,EAAE,IAAI+sK,GAAIhuK,KAAKw2B,GAAGk/O,KAAMC,KAAKlkG,GAAIzxK,KAAKiB,EAAEvF,GAAGsE,KAAKvE,EAAEmS,EAAE5N,KAAKtE,EAAEuvB,EAAEjrB,KAAK4N,EAAEnS,EAAEuE,KAAKw2B,EAAEv1B,EAAEjB,KAAKirB,EAAEuL,CAAC,CACtH,SAAS+nR,GAAI7iT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,IAAIA,EAAE,IAAIg/K,GAAI/+K,GAAGD,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAuB,GAAhB1vJ,EAAEouJ,GAAGwB,IAAIp/K,GAAG,IAAOg7M,GAAG7oM,KAAK6oM,GAAGxrL,GAAI,OAAO,EAAM,OAAO,CAAK,CAEtH,SAAS+1M,GAAItlO,GAAG,OAAGA,GAAG,IAAIA,GAAG,GAAWA,EAAE,GAAG,GAAMA,GAAG,IAAIA,GAAG,IAAYA,EAAE,GAAG,GAAMA,GAAG,IAAIA,GAAG,GAAWA,EAAE,GAAU,CAAC,CACtH,SAAS8iT,GAAI9iT,GAAG,IAAIkS,EAAE,OAAc,IAAL,GAALlS,EAAEgtN,IAAiBw0F,IAAIxhT,KAAGkS,EAAE,IAAI27M,GAAI2zF,IAAIxhT,KAAMA,GAAG,aAAay8M,GAAIvqM,EAAElS,EAAED,GAAGmS,EAAElS,GAAG,IAAWkS,EAAElS,EAAC,CAEtH,SAASg/R,GAAIh/R,EAAEkS,GAAG,IAAIqd,EAAEA,EAAc,IAAN,IAALvvB,EAAEw1K,IAAWtjK,EAAGlS,EAAEw1K,IAAI,IAAMx1K,EAAEw1K,KAAK,IAAe,IAAJ,EAALx1K,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIowQ,GAAIpwQ,EAAE,EAAE,EAAEuvB,EAAErd,GAAG,CACtH,SAASgoP,GAAIl6P,EAAEkS,GAAG,IAAIqd,EAAEA,EAAc,IAAN,IAALvvB,EAAEw1K,IAAWtjK,EAAGlS,EAAEw1K,IAAI,IAAMx1K,EAAEw1K,KAAK,IAAe,IAAJ,EAALx1K,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIowQ,GAAIpwQ,EAAE,EAAE,EAAEuvB,EAAErd,GAAG,CACtH,SAASmwO,GAAIriP,EAAEkS,GAAG,IAAIqd,EAAEA,EAAc,IAAN,IAALvvB,EAAEw1K,IAAWtjK,EAAGlS,EAAEw1K,IAAI,IAAMx1K,EAAEw1K,KAAK,IAAe,IAAJ,EAALx1K,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIowQ,GAAIpwQ,EAAE,EAAE,EAAEuvB,EAAErd,GAAG,CACtH,SAAS6sR,GAAI/+R,EAAEkS,GAAG,IAAIqd,EAAEA,EAAc,IAAN,IAALvvB,EAAEw1K,IAAWtjK,EAAGlS,EAAEw1K,IAAI,IAAMx1K,EAAEw1K,KAAK,IAAe,IAAJ,EAALx1K,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIowQ,GAAIpwQ,EAAE,EAAE,EAAEuvB,EAAErd,GAAG,CACtH,SAASioP,GAAIn6P,EAAEkS,GAAG,IAAIqd,EAAEA,EAAc,IAAN,IAALvvB,EAAEw1K,IAAWtjK,EAAGlS,EAAEw1K,IAAI,IAAMx1K,EAAEw1K,KAAK,IAAe,IAAJ,EAALx1K,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIowQ,GAAIpwQ,EAAE,EAAE,EAAEuvB,EAAErd,GAAG,CACtH,SAAS6wS,GAAI/iT,EAAEkS,GAAG,IAAIqd,EAA4E,OAAjE,GAANvvB,EAAEkS,GAASlS,EAAEA,IAAGuvB,EAAEvvB,EAAEA,EAAEgjT,KAAKhjT,EAAEkS,EAAGqd,EAAoBvvB,EAAEuvB,EAAEszL,GAAG7iN,EAAEA,EAAEssN,KAAK/8L,GAAlC28P,IAAIlsR,EAAEuvB,EAAEy4L,KAAKhoN,EAAEA,IAA6BA,EAAEuvB,EAAE0zR,GAAGjjT,EAAEkS,EAAEA,EAAE,CACtH,SAAS8lM,GAAIh4M,GAAG,IAAIkS,EAAEqd,EAAE,OAAGvvB,GAAG,KAAKA,EAAE,KAAKkS,EAAElS,EAAE,MAAIuvB,GAAGq3M,KAAMC,KAAK30N,MAAQqd,EAAEs3M,IAAI30N,GAAG,IAAI4yJ,GAAI9kK,IAAWuvB,GAAS,IAAIu1I,GAAI9kK,EAAE,CACvH,SAASkjT,GAAIljT,GAAG,IAAIkS,EAAEqd,EAAE,OAAGvvB,GAAG,KAAKA,EAAE,KAAKkS,EAAElS,EAAE,MAAIuvB,GAAGu5M,KAAMC,KAAK72N,MAAQqd,EAAEw5M,IAAI72N,GAAG,IAAI8yJ,GAAIhlK,IAAWuvB,GAAS,IAAIy1I,GAAIhlK,EAAE,CACvH,SAASiiS,GAAIjiS,GAAG,IAAMuvB,EAAQ,OAAJvvB,EAAEqB,IAAS49P,MAAMC,QAAM3vO,EAAEouJ,GAAG4qB,IAAIvoM,GAAGgoM,MAAMe,MAAM,OAAetpB,MAAMM,MAAMxwJ,GAAGs3K,IAAgB,CAEvH,SAASuvD,GAAIp2P,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAI+6B,EAAqB,OAAnBA,EAAKuvJ,IAAIrqL,EAAEkS,EAAEA,MAAYnS,EAAE49K,GAAG22C,IAAIC,GAAIv0N,EAAE86B,GAAG,IAAI,KAAiB+7N,IAAI72P,EAAED,EAAEmS,EAAEqd,GAAW,IAAI,CACvH,SAAS4zR,GAAInjT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,IAAIA,EAAE,IAAIg/K,GAAI/+K,GAAGD,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAwB,GAAjB1vJ,EAAEouJ,GAAGwB,IAAIp/K,GAAG,KAAQg7M,GAAG7oM,KAAK6oM,GAAGxrL,GAAI,OAAO,EAAM,OAAO,CAAK,CACvH,SAASy/O,GAAIhvQ,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAW,GAAGmS,GAAZnS,EAAEC,EAAEi/K,MAAY,MAAM/L,GAAI,IAAI4rC,GAAI5sM,EAAEnS,IAAI,GAAGC,EAAEynN,MAAMznN,EAAEigM,GAAG1wK,GAAI,MAAM2jJ,GAAI,IAAI2O,GAAIuhI,MAAMpjT,EAAEqjT,GAAGnxS,EAAEqd,EAAE,CAEvH,SAAS+zR,GAAItjT,EAAEkS,GAAG,IAAIqd,EAAa,GAAGs6J,GAAdt6J,EAAEulQ,IAAI90R,EAAEkS,GAAW,KAAM,OAAOyrK,GAAGpuJ,EAAE,IAAI,MAAM2jJ,GAAI,IAAI2O,GAAI4iF,IAAIvyP,EAAE,8BAA8B,CAGvH,SAASqxS,GAAIvjT,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAY,IAAVmS,EAAE,IAAIogK,GAAQvyK,EAAE,IAAI4lK,GAAI3lK,EAAEkS,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,KAAK6oP,GAAI12O,EAAEyrK,GAAGpuJ,EAAEi0R,KAAK,KAAK,OAAOtxS,CAAC,CAExH,SAASitP,GAAIn/P,GAAG,OAAO29K,GAAG4qB,IAAIvoM,GAAGgoM,MAAMy7G,MAAM,KAAK9wS,GAAG,KAAK,EAAEo1L,GAAI/nM,EAAEyjT,KAAK5rC,KAAMI,MAAM,MAAM,KAAK,EAAElwE,GAAI/nM,EAAEyjT,KAAK5rC,KAAMG,MAAO,CACxH,SAAS0rC,GAAI1jT,GAAG,IAAIkS,EAAKlS,EAAE2S,IAAsBgxS,KAAnBzxS,EAAElS,EAAEuvB,EAAEq0R,KAAK5jT,EAAE86B,EAAE96B,EAAEA,GAAQA,EAAEA,EAAEE,GAAE,GAAMyjT,IAAIzxS,EAAElS,EAAEA,EAAEE,GAAE,GAAO6nM,GAAI/nM,EAAEE,GAAGm9J,MAAMykI,MAAMxM,MAAMx4D,MAAM,CACvH,SAAS+mF,GAAI7jT,GAAG,IAAIkS,EAAE,IAAIlS,EAAEA,EAAG,MAAMkzK,GAAI,IAAI4O,GAAI,qCAAqC5vK,EAAElS,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,EAAEkS,GAAGA,EAAEu3O,GAAIzpP,EAAEkS,GAAGs3O,GAAIxpP,EAAEkS,EAAE,CAExH,SAAS4xS,GAAI9jT,GAAG,IAAIkS,EAAEqd,EAAE,IAAIA,EAAEvvB,EAAEoD,EAAEpD,EAAE2hP,KAAKhmC,KAAKpsL,EAAEgsL,MAAwB,IAAjBrpM,EAAEyrK,GAAGpuJ,EAAEksL,KAAK,MAAU3gL,GAAG96B,EAAEkS,EAAEA,EAAEqd,IAAI,MAAS,OAAOrd,EAAG,OAAO,IAAI,CACxH,SAAS6xS,GAAI/jT,EAAEkS,GAAG,OAAOlS,EAAEkS,EAAES,GAAG,KAAK,EAAE,KAAK,EAAE,OAAOT,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,IAAIg2L,GAAIh2L,EAAEnS,EAAE,EAAEmS,EAAElS,EAAEkS,EAAEA,GAAG,QAAQ,OAAO,KAAM,CACxH,SAAS8xS,GAAIhkT,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAOkuM,IAAI,KAAK,EAAE,OAAOD,IAAI,KAAK,EAAE,OAAOG,IAAI,KAAK,EAAE,OAAOD,IAAI,QAAQ,OAAO8xE,IAAK,CACxH,SAASqxB,GAAIjkT,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAOitK,IAAI,KAAK,EAAE,OAAOG,IAAI,KAAK,EAAE,OAAOL,IAAI,KAAK,EAAE,OAAOmnB,IAAI,QAAQ,OAAOC,IAAK,CACxH,SAASo9G,GAAIlkT,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAOk0L,IAAI,KAAK,EAAE,OAAOjnB,IAAI,KAAK,EAAE,OAAOG,IAAI,KAAK,EAAE,OAAOL,IAAI,QAAQ,OAAOonB,IAAK,CACxH,SAASmvF,GAAIj2R,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAO+sK,IAAI,KAAK,EAAE,OAAOmnB,IAAI,KAAK,EAAE,OAAOjnB,IAAI,KAAK,EAAE,OAAOG,IAAI,QAAQ,OAAO+mB,IAAK,CAExH,SAASspC,GAAIpwO,EAAEkS,GAAG,OAAGlS,EAAEkS,GAAW,EAAKlS,EAAEkS,EAAU,EAAKlS,GAAGkS,EAAa,GAAHlS,EAAKowO,GAAI,EAAEpwO,EAAE,EAAEkS,GAAG,EAASvC,MAAM3P,GAAG2P,MAAMuC,GAAG,EAAE,GAAG,CAAC,CAExH,SAAS04Q,GAAI5qR,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAE,OAAGvF,EAAEmkT,MAAM5+S,EAAEvF,EAAEokT,KAAKrkT,EAAEskT,IAAIrkT,EAAEkS,EAAEqd,GAAGvvB,EAAEu6P,GAAGv6P,EAAEskT,GAAG,EAAEtsG,GAAIzoL,GAAGxvB,EAAEmS,EAAE3M,IAAWxF,GAAcskT,IAAIrkT,EAAEkS,EAAEqd,EAAG,CACxH,SAASg1R,GAAIvkT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAU,MAALvF,EAAED,KAAWC,EAAEuF,IAAIvF,EAAE86B,IAAOv1B,EAAE2M,EAAE26L,KA51B/D,SAAa7sM,EAAEkS,EAAEqd,KAAWvvB,EAAEuF,IAAIvF,EAAE86B,EAAI6iJ,GAAG39K,EAAED,EAAEmS,GAAGktO,GAAG7vN,GAAG,KAAcurL,IAAI,CA41BwB0pG,CAAIxkT,EAAzBD,IAATwvB,EAAErd,EAAEkpK,MAAU8c,KAAKl4L,EAAED,EAAE7B,OAAeumT,IAAIzkT,EAAED,EAAEwvB,EAAEhqB,IAAI,CACxH,SAASm/S,GAAI1kT,EAAEkS,GAAG,IAAIqd,EAAEA,EAAc,IAAXvvB,EAAEw1K,GAAG+pH,KAAQrtR,EAAGlS,EAAEw1K,IAAI+pH,IAAMv/R,EAAEw1K,KAAK,KAAgB,IAAJ,EAALx1K,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIowQ,GAAIpwQ,EAAE,EAAE,GAAGuvB,EAAErd,GAAG,CACxH,SAASyyS,GAAI3kT,EAAEkS,GAAG,IAAIqd,EAAEA,EAAc,IAAXvvB,EAAEw1K,GAAG8/E,KAAQpjP,EAAGlS,EAAEw1K,IAAI8/E,IAAMt1P,EAAEw1K,KAAK,KAAgB,IAAJ,EAALx1K,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIowQ,GAAIpwQ,EAAE,EAAE,GAAGuvB,EAAErd,GAAG,CACxH,SAAS0yS,GAAI5kT,EAAEkS,GAAG,IAAIqd,EAAEA,EAAc,IAAXvvB,EAAEw1K,GAAGqvI,KAAQ3yS,EAAGlS,EAAEw1K,IAAIqvI,IAAM7kT,EAAEw1K,KAAK,KAAgB,IAAJ,EAALx1K,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIowQ,GAAIpwQ,EAAE,EAAE,GAAGuvB,EAAErd,GAAG,CACxH,SAAS4yS,GAAI9kT,EAAEkS,GAAG,IAAIqd,EAAEA,EAAc,IAAXvvB,EAAEw1K,GAAGuvI,KAAQ7yS,EAAGlS,EAAEw1K,IAAIuvI,IAAM/kT,EAAEw1K,KAAK,KAAgB,IAAJ,EAALx1K,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIowQ,GAAIpwQ,EAAE,EAAE,GAAGuvB,EAAErd,GAAG,CAGxH,SAAS8yS,GAAIhlT,GAAG,IAAIkS,EAAEqd,EAAE,IAAIA,EAAE01R,IAAIxwE,GAAIz0O,IAAI27M,KAAKpsL,EAAEgsL,MAAoB,GAAG2xC,IAAIltP,EAApBkS,EAAE4xK,GAAGv0J,EAAEksL,OAAmB,OAAOgrD,IAAKl7D,KAAMC,KAAKt5L,GAAI,OAAO,IAAI,CAGxH,SAASgzS,GAAIllT,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAE,GAAGvF,EAAEuvB,EAAG41R,IAAInlT,EAAEuvB,EAAErd,EAAEqd,QAAQ,IAAIhqB,EAAE,IAAIogK,GAAI3lK,EAAEkS,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA0BgnT,GAAfvnI,GAAGC,GAAIr4K,GAAG,KAAW2M,EAAEqd,EAAI,CACzH,SAAS61R,GAAIplT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,IAAIA,EAAE,IAAI4lK,GAAIzzJ,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,IAAI+vN,GAAI9vN,EAAEkS,EAAEA,EAAEqd,EAAErd,GAAGu4O,GAAI9sE,GAAGpuJ,EAAEvvB,EAAE,KAAK29K,GAAGpuJ,EAAErd,EAAE,IAAK,CAEzH,SAASmzS,GAAIrlT,EAAEkS,GAAG,IAAIqd,EAAEA,EAAc,IAAXvvB,EAAEw1K,GAAGq8D,KAAQ3/N,EAAGlS,EAAEw1K,IAAIq8D,IAAM7xO,EAAEw1K,KAAK,MAAiB,IAAJ,EAALx1K,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIowQ,GAAIpwQ,EAAE,EAAE,GAAGuvB,EAAErd,GAAG,CACzH,SAASgzR,GAAIllS,EAAEkS,GAAG,IAAIqd,EAAEA,EAAc,IAAXvvB,EAAEw1K,GAAGyhE,KAAQ/kO,EAAGlS,EAAEw1K,IAAIyhE,IAAMj3O,EAAEw1K,KAAK,MAAiB,IAAJ,EAALx1K,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIowQ,GAAIpwQ,EAAE,EAAE,GAAGuvB,EAAErd,GAAG,CACzH,SAASozS,GAAItlT,EAAEkS,GAAG,IAAIqd,EAAEA,EAAc,IAAXvvB,EAAEw1K,GAAGyhE,KAAQ/kO,EAAGlS,EAAEw1K,IAAIyhE,IAAMj3O,EAAEw1K,KAAK,MAAiB,IAAJ,EAALx1K,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIowQ,GAAIpwQ,EAAE,EAAE,GAAGuvB,EAAErd,GAAG,CACzH,SAASqzS,GAAIvlT,EAAEkS,GAAG,IAAIqd,EAAEA,EAAc,IAAXvvB,EAAEw1K,GAAGmyC,KAAQz1M,EAAGlS,EAAEw1K,IAAImyC,IAAM3nN,EAAEw1K,KAAK,MAAiB,IAAJ,EAALx1K,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIowQ,GAAIpwQ,EAAE,EAAE,GAAGuvB,EAAErd,GAAG,CACzH,SAASszS,GAAIxlT,GAAG,IAAIkS,EAA6E,OAA3EA,EAAE+rK,GAAGo3C,IAAGC,IAAI,GAAG,EAAE,GAAG,GAAGt1N,GAAG2nN,IAAIz1M,EAAE,IAAIlS,GAAG,IAAIylT,IAAIhpH,IAAIvqL,EAAE,GAAY,OAAN,KAAFlS,GAAcy8L,IAAWosB,IAAI32M,EAAE,EAAEA,EAAEhU,OAAO,CACzH,SAASwnT,GAAI1lT,GAAG,IAAMuvB,EAA+B,OAA7BA,EAAEouJ,GAAG4qB,IAAIvoM,GAAGq9J,MAAMsoJ,MAAM,QAAYhzB,KAAMC,KAAQtyG,GAAIC,GAAGgoB,IAAIvoM,EAAE4lT,QAAiB,EAAE/kG,IAAIE,IAAWxxL,CAAC,CAE1H,SAASuwN,GAAI9/O,GAAG,GAAGA,EAAEuvB,EAAGuwN,GAAI9/O,EAAEuvB,QAAQ,GAAGvvB,EAAED,EAAG,MAAMmzK,GAAI,IAAI4O,GAAI,wDAAyD,CACzH,SAAS+jI,GAAI7lT,GAAG,IAAIkS,EAAE,OAAc,IAAL,GAALlS,EAAEgtN,IAAiBw0F,IAAIxhT,KAAGkS,EAAE,IAAI27M,GAAI2zF,IAAIxhT,KAAMA,GAAG,iBAAiBy8M,GAAIvqM,EAAElS,EAAEqB,GAAG6Q,EAAElS,GAAG,IAAWkS,EAAElS,EAAC,CAC1H,SAASqjP,GAAIrjP,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAA0F,OAAnFwpL,KAAmBs4B,GAAtB9hN,EAAW,IAAIsxJ,GAAan/I,GAAG4vM,GAAI/hN,EAAEwvB,GAAKvvB,GAAGirL,KAAMjrL,EAAEA,IAAIA,EAAEA,EAAE,IAAIg/K,GAAI7qJ,IAAGn0B,EAAE,IAAIA,EAAEA,GAAGD,GAAUA,CAAC,CAC1H,SAAS+lT,GAAI9lT,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAuF,OAArF+lI,GAAI9gK,GAAG8gK,GAAItxI,GAAmD,OAAtCuL,EAAK,OAAfv1B,EAAEvF,EAAEgxO,GAAG9+N,IAAaqd,EAAEqyK,GAAIjkB,GAAGp4K,EAAE,IAAIo4K,GAAGpuJ,EAAE,MAAavvB,EAAE0oN,GAAGx2M,GAAGlS,EAAE65N,GAAG3nN,EAAE4oB,GAAUA,CAAC,CAC3H,SAASu8L,GAAIr3N,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAwF,OAATqiM,GAA7Er4K,EAAyC,IAAIk4K,GAA1Cv1L,EAAEyrK,GAAGsL,IAAY1jL,GAAPxF,EAAEC,EAAEyrP,IAAO3wN,IAAKirR,IAAGhmT,EAAEwF,GAAI,GAAao4K,GAAG+pB,GAAIx1L,EAAEA,EAAEhU,QAAQ,GAAG,GAAU8B,GAAUuvB,CAAC,CAC1H,SAASy2R,GAAIhmT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAE,IAAIA,EAAEvF,EAAEA,EAAE2hP,KAAKhmC,KAAKp2M,EAAEg2M,MAAuB,GAAhBx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,IAAO41F,GAAG9hR,EAAEouJ,GAAG0pB,GAAIn1L,EAAEnS,EAAEqD,GAAG,KAAM,OAAOrD,EAAG,OAAO,IAAI,CAE1H,SAASoxQ,GAAInxQ,EAAEkS,GAAG,IAAIqd,EAAE,OAAGuwL,GAAI9/M,IAAI8/M,GAAI5tM,IAAa+6R,KAAT19Q,EAAEvvB,EAAEkS,IAAYqd,EAAE+tO,IAAY/tO,EAAUi0M,GAAI8tE,GAAGxxF,GAAI9/M,GAAG4jO,GAAI5jO,GAAGA,EAAE8/M,GAAI5tM,GAAG0xN,GAAI1xN,GAAGA,GAAG,CAC3H,SAASw4L,GAAI1qM,EAAEkS,GAAG,IAAIqd,EAAE,OAAGuwL,GAAI9/M,IAAI8/M,GAAI5tM,IAAa+6R,KAAT19Q,EAAEvvB,EAAEkS,IAAYqd,EAAE+tO,IAAY/tO,EAAUi0M,GA/TnF,SAAYxjO,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAgD,OAA9CgqB,EAAEvvB,EAAE8T,EAAE5B,EAAE4B,EAAE/T,EAAEC,EAAEgT,EAAEd,EAAEc,GAAGuc,GAAG,IAAIhqB,EAAEvF,EAAEyD,EAAEyO,EAAEzO,GAAG1D,GAAG,IAAW2/M,GAAGnwL,EAAEk0M,IAAI1jO,EAAE0jO,IAAIl+N,EAAEm+N,IAAI,CA+TduiF,CAAGnmG,GAAI9/M,GAAG4jO,GAAI5jO,GAAGA,EAAE8/M,GAAI5tM,GAAG0xN,GAAI1xN,GAAGA,GAAG,CAC3H,SAAS6mL,GAAI/4L,EAAEkS,GAAG,IAAIqd,EAAE,OAAGuwL,GAAI9/M,IAAI8/M,GAAI5tM,IAAa+6R,KAAT19Q,EAAEvvB,EAAEkS,IAAYqd,EAAE+tO,IAAY/tO,EAAUi0M,GA8lDnF,SAAYxjO,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAI9S,EAAEkD,EAAUilB,EAAQuc,EAAE/B,EAAEsuJ,EAAEC,EAAEC,EAAE9hK,EAAM,KAAJvvB,EAAE8T,EAAO/T,EAAEC,EAAE8T,GAAG,IAAQ,GAAJ9T,EAAEgT,IAAO,EAAEzN,EAAEvF,EAAEgT,GAAG,EAAE,KAAK8nB,EAAE96B,EAAEgT,GAAG,IAAQ,IAAJhT,EAAEyD,IAAQ,EAAEkP,GAAO,QAAJ3S,EAAEyD,IAAY,EAAEA,EAAM,KAAJyO,EAAE4B,EAAO9V,EAAEkU,EAAE4B,GAAG,IAAQ,GAAJ5B,EAAEc,IAAO,EAAEZ,EAAEF,EAAEc,GAAG,EAAE,KAAK3R,EAAE6Q,EAAEc,GAAG,IAAQ,IAAJd,EAAEzO,IAAQ,EAAEqQ,GAAO,QAAJ5B,EAAEzO,IAAY,EAAEmhC,EAAErV,EAAE9rB,EAAEo/B,EAAE9iC,EAAE0D,EAAE0tL,EAAE5rL,EAAE9B,EAAE2tL,EAAEt2J,EAAEr3B,EAAE4tL,EAAE1+K,EAAElP,EAAQ,GAAHzF,IAAM6kC,GAAGtT,EAAEvxB,EAAEmzL,GAAGpxL,EAAE/B,EAAEozL,GAAG7rL,EAAEvH,EAAEqzL,GAAGv2J,EAAE98B,GAAQ,GAAHoU,IAAM++K,GAAG5hK,EAAEnd,EAAEg/K,GAAGrxL,EAAEqS,EAAEi/K,GAAG9rL,EAAE6M,GAAQ,GAAH/Q,IAAM+vL,GAAG7hK,EAAEluB,EAAEgwL,GAAGtxL,EAAEsB,GAA+K,OAA1K,GAAHyS,IAAOu9K,GAAG9hK,EAAEzb,GAAW5T,GAAK,IAAF2iC,IAAQ,GAAG7vB,GAApB4xB,EAAE6+L,KAAsBvjO,EAA8CkD,GAA1CwhC,GAAG,KAAK/B,GAAG,KAAO,OAAFsuJ,IAAW,KAAO,GAAFC,IAAO,IAA0C/oK,GAA3B8oK,GAAG,KAAKC,GAAG,KAAO,KAAFC,IAAS,GAA0BhpK,IAAhBjlB,GAAG4P,GAAG,KAAgB,GAAwB0sM,GAArC1sM,GAAGywN,IAAargO,GAAGqgO,IAAIp7M,GAAGq7M,IAAoB,CA9lD3dwiF,CAAGpmG,GAAI9/M,GAAG4jO,GAAI5jO,GAAGA,EAAE8/M,GAAI5tM,GAAG0xN,GAAI1xN,GAAGA,GAAG,CAC3H,SAASi3M,GAAInpN,EAAEkS,GAAG,IAAIqd,EAAkC,OAAhCvvB,EAAEhC,GAAGmoT,IAAInmT,IAAGuvB,EAAEouJ,GAAG6oB,GAAIxmM,EAAE2S,EAAET,GAAG,KAAgC,IAAIijP,GAAIn1P,EAAEoS,EAAEurK,GAAGpuJ,EAAEvvB,EAAE,IAAIA,EAAE29K,GAAGpuJ,EAAErd,EAAE,IAAIlS,IAArDinN,KAAMA,KAAM+Y,IAA2C,CAC1H,SAAS6xB,GAAI7xP,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAA2F,OAAzFA,EAAEC,EAAEA,EAAEK,IAAI6R,GAAGlS,EAAEA,EAAE4M,IAAIsF,OAAMvS,IAAJ4vB,EAAc,KAAKA,QAAU5vB,IAAJI,KAAiBC,EAAEuvB,EAAEulN,GAAI90O,EAAEkS,MAAUlS,EAAED,EAASA,CAAC,CAE3H,SAASqmT,KAAY,IAAIpmT,EAAEkS,EAAEqd,EAAd43O,MAAgB53O,EAAE82R,MAAMtoS,KAAKD,MAAM9d,EAAEm4L,GAAGllD,EAAK3/H,KAAKC,MAAMgc,EAAE+2R,MAAMl/C,IAAIl1P,EAAEimL,GAAG5oK,EAAEvvB,EAAEumT,KAAKjiT,KAAKtE,EAAI,KAAFA,EAAOsE,KAAK4N,EAAEA,EAAEy3M,GAAG,CAC3H,SAAS68F,GAAIxmT,GAAG,IAAIkS,EAAInS,EAAY,IAAVmS,EAAE,IAAIogK,GAAQvyK,EAAE,IAAI4lK,GAAI3lK,EAAEoS,GAAGrS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyB63K,GAAI7jK,EAAlByrK,GAAGC,GAAI79K,GAAG,IAAYmS,GAAG,OAAO6xK,GAAG7xK,GAAG,IAAIusM,GAAGvsM,EAAE,CAC3H,SAASgwR,GAAIliS,GAAG,IAAIkS,EAAInS,EAAY,IAAVmS,EAAE,IAAIogK,GAAQvyK,EAAE,IAAI4lK,GAAI3lK,EAAEoS,GAAGrS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyB63K,GAAI7jK,EAAlByrK,GAAGC,GAAI79K,GAAG,IAAYwF,GAAG,OAAOw+K,GAAG7xK,GAAG,IAAIusM,GAAGvsM,EAAE,CAC3H,SAASkwR,GAAIpiS,GAAG,IAAIkS,EAAInS,EAAY,IAAVmS,EAAE,IAAIogK,GAAQvyK,EAAE,IAAI4lK,GAAI3lK,EAAEoS,GAAGrS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyB63K,GAAI7jK,EAAlByrK,GAAGC,GAAI79K,GAAG,IAAY4S,GAAG,OAAOoxK,GAAG7xK,GAAG,IAAIusM,GAAGvsM,EAAE,CAC3H,SAASu0S,GAAIzmT,GAAG,IAAIkS,EAAEqd,EAAE,IAAIA,EA0/B5B,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAc,GAAZyO,EAAElS,EAAEouO,GAAG9+C,KAAQp9K,GAAmF,OAAhFzO,EAAEqgL,GAAGyqD,MAAMr8N,EAAEA,IAAIA,EAAEA,EAAE,IAAIyhN,IAAK6a,MAAMC,KAAKC,IAAGx8N,IAAIA,EAAEA,GAAG,sBAAgC,CAAW,IAAVqd,EAAE,IAAI+iJ,GAAwBx3I,EAAE,EAAEnoB,GAApBpN,EAAEivO,IAAI/wO,EAAE,SAAgBvF,OAAO48B,EAAEnoB,IAAImoB,EAAG/6B,EAAEwF,EAAEu1B,GAAGvL,EAAEA,EAAEA,EAAEA,EAAErxB,QAAQ6B,EAAE,OAAOwvB,CAAC,CAAE,OAAO03L,KAAMA,KAAM+Y,GAAG,CA1/B3N0mF,CAAIjyE,GAAIkd,GAAI3xP,KAAK27M,KAAKpsL,EAAEgsL,MAAoB,GAAG2xC,IAAIltP,EAApBkS,EAAE4xK,GAAGv0J,EAAEksL,OAAkB,OAAOirD,IAAKj7D,KAAMC,KAAKx5L,GAAG,OAAO,IAAI,CAI3H,SAASy0S,GAAI3mT,GAA6F,OAAtCA,IAAjCA,IAAnBA,GAAGA,GAAG,EAAE,aAAiB,EAAE,YAAc,UAAFA,KAAmB,GAAGA,EAAE,UAAUA,GAAGA,GAAG,EAAoB,IAAlBA,GAAGA,GAAG,GAAc,CACrH,SAAS4mT,GAAG5mT,GAAG,IAAIkS,EAAInS,EAAEwF,EAA4B,IAA1B2M,EAAE,IAAIinN,GAAGn5N,EAAEk7K,KAAK+D,MAAM15K,EAAE,EAAMxF,EAAEkiR,GAAGjiR,EAAEk7K,KAAKygC,MAAM57M,EAAEw7M,MAAgBy2C,GAAG9/O,EAAVnS,EAAE07M,KAAYzD,GAAIzyM,MAAM,OAktB9G,SAAYvF,GAAQ,IAAIkS,EAAmB,OAA5BkvO,KAAiBphP,EAAEuvB,EAAErxB,QAAiB,KAAK,EAAE,OAAOmjP,IAAG,KAAK,EAA0B,OA1iFrG,SAAYrhP,EAAEkS,GAAG,OAAOkvO,KAAK6Q,IAAGjyP,EAAEkS,GAAG,IAAIorH,GAAGt9H,EAAEkS,EAAE,CA0iF4D20S,EAA/B30S,EAAEyrK,GAAGujI,IAAG,IAAIv7I,GAAI3lK,IAAI,KAAgB6sM,KAAK36L,EAAE4oM,MAAM,QAAsD,OAAO,IAAIl+B,GAAvDe,GAAG88E,IAAIz6P,EAAEi+K,GAAGyQ,IAAG4yD,IAAI,GAAGthP,EAAEuvB,EAAErxB,OAAO,EAAE,IAAI,MAAuB,CAltBjFwS,CAAGwB,EAAElS,EAAE,CAE5H,SAAS8mT,GAAI9mT,EAAEkS,GAAiB,GAAdlS,EAAEJ,EAAE2vB,EAAErxB,QAAW63K,GAAI/1K,EAAEJ,EAAE,IAAI4vP,GAAIxvP,EAAE6T,EAAE7T,EAAEiU,EAAEjU,EAAEhC,IAAI+3K,GAAI/1K,EAAEkS,EAAEA,GAAG60S,IAAIppI,GAAG0pB,GAAIrnM,EAAEJ,EAAEI,EAAEJ,EAAE2vB,EAAErxB,OAAO,GAAG,KAAKgU,GAAG80S,IAAIhnT,EAAEkS,EAAE,CAC3H,SAAS+0S,GAAIjnT,GAAqG,OAA/FA,EAAEuvB,GAAGvvB,EAAEkS,EAAEA,GAAGlS,EAAEhC,GAAGgC,EAAE2S,EAAET,IAAGlS,EAAEA,EAAEuvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGyqE,GAAI5oP,EAAEA,EAAEA,EAAEkS,GAAG02O,GAAI5oP,EAAEA,EAAEA,EAAE2S,GAAG3S,EAAEuvB,EAAEvvB,EAAEkS,EAAEA,EAAElS,EAAEhC,EAAEgC,EAAE2S,EAAET,GAASlS,EAAEA,CAAC,CAC5H,SAASknT,GAAIlnT,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAM,IAAJA,EAAE,EAAMxF,EAAE49K,GAAGzrK,EAAEkqM,GAAGp8M,GAAG,IAAI27M,KAAK57M,EAAEw7M,MAAuBt5B,GAAIk6B,GAAG5T,IAArB5qB,GAAG59K,EAAE07M,KAAK,KAAkBzT,MAAM+oC,WAAWxrO,EAAE,OAAOA,CAAC,CAE5H,SAASirR,KAAMA,GAAI97I,EAAIg8I,IAAI,IAAIt+E,GAAI03E,IAAI,GAAG6G,IAAI,IAAIv+E,GAAI,QAAQ,GAAGw+E,IAAI,IAAIx+E,GAAIqgG,IAAI,GAAG5hB,IAAI,IAAIz+E,GAAI,OAAO,GAAG0+E,IAAI,IAAI1+E,GAAIsgG,IAAI,EAAE,CAC5H,SAASnqB,KAAMA,GAAI7zI,EAAI8zI,IAAI,IAAIlzE,GAAIkpF,IAAI,GAAG/V,IAAI,IAAInzE,GAAI,WAAW,GAAGozE,IAAI,IAAIpzE,GAAI,aAAa,GAAGqzE,IAAI,IAAIrzE,GAAI,UAAU,EAAE,CACxH,SAAS0nE,KAAMA,GAAItoI,EAAIwoI,IAAI,IAAI5oE,GAAI,sBAAsB,GAAG6oE,IAAI,IAAI7oE,GAAI,mBAAmB,GAAG8oE,IAAI,IAAI9oE,GAAI,cAAc,EAAE,CAC1H,SAASwpE,KAAMA,GAAIppI,EAAIqpI,IAAI,IAAIvpE,GAAI,eAAe,GAAGwpE,IAAI,IAAIxpE,GAAI,sBAAsB,GAAGypE,IAAI,IAAIzpE,GAAI,eAAe,EAAE,CACvH,SAAS0nE,KAAMA,GAAIxnI,EAAI0nI,IAAI,IAAInoE,GAAI,kBAAkB,GAAGooE,IAAI,IAAIpoE,GAAI,aAAa,GAAGqoE,IAAI,IAAIroE,GAAI,yBAAyB,EAAE,CAC3H,SAASohG,GAAGr1S,EAAEkS,GAAQ,OAALuyM,KAAYiyE,GAAGC,KAAK1jJ,EAAK3/H,KAAKskB,IAAI53B,EAAEkS,IAAIykR,KAAK32R,GAAGkS,GAAGvC,MAAM3P,IAAI2P,MAAMuC,GAAG,EAAElS,EAAEkS,GAAG,EAAElS,EAAEkS,EAAE,EAAEqtM,GAAG5vM,MAAM3P,GAAG2P,MAAMuC,GAAG,CAC3H,SAASi1S,GAAInnT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAa,IAAXwvB,EAAEuvO,IAAI9+P,EAAE,GAASuvB,EAAErd,GAAGqd,EAAExvB,EAAEwvB,GAAE,CAAmB,IAAlBxvB,EAAEmiL,GAAI3B,GAAGw+E,GAAIxvO,OAAWrd,EAAG,OAAY,GAAGnS,EAAEmS,EAAE,CAACkoP,GAAI7qO,GAAG,KAAK,CAAC,CAACwmN,GAAIxmN,EAAErd,EAAE,CAC5H,SAASk1S,GAAIpnT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAuB,GAArB4c,EAAErd,EAAE4oB,EAAE4qK,IAAI1lM,EAAEuvB,EAAExvB,EAAEwvB,EAAErd,GAAW,MAALA,EAAES,EAAS,IAAUmoB,EAAE,EAAEnoB,GAAVpN,EAAE2M,EAAES,GAAUzU,OAAO48B,EAAEnoB,IAAImoB,EAAG/6B,EAAEwF,EAAEu1B,GAAG4qK,IAAI1lM,EAAEuvB,EAAEhqB,EAAExF,EAAEmS,EAAI,CAE5H,SAASyzC,GAAI3lD,EAAEkS,EAAEqd,EAAExvB,GAAG,GAAGmS,EAAE,EAAG4W,IAAI9oB,EAAEuvB,EAAExvB,OAAO,CAAC,IAAIwvB,EAAEosO,KAAM,MAAMzoF,GAAI,IAAI2O,GAAI4iF,IAAIl1O,EAAEwvK,KAAK2jH,MAAM/kI,GAAGpuJ,EAAE,IAAIwzO,KAAKskD,GAAGrnT,EAAEA,EAAEijQ,KAAK/wP,EAAEnS,EAAE,CAAC,CAC5H,SAASunT,GAAItnT,EAAEkS,GAAG,GAAGA,GAAGlS,EAAED,EAAG,OAAOC,EAAEuF,EAAO,GAAG2M,GAAGlS,EAAEuF,EAAG,OAAOvF,EAAED,EAAO,MAAMmzK,GAAI,IAAI2O,GAAI,QAAQ3vK,EAAE,qBAAqBlS,GAAI,CAE7H,SAASunT,GAAIvnT,EAAEkS,GAAG,OAAOA,EAAES,GAAG,KAAK,EAAE,OAAO3S,EAAEkS,EAAE,KAAK,EAAE,OAAOlS,EAAEuvB,EAAE,KAAK,EAAE,OAAOvvB,EAAED,EAAE,KAAK,EAAE,OAAOC,EAAEA,EAAE,QAAQ,OAAO,EAAO,CAC5H,SAASwnT,GAAIxnT,EAAEkS,EAAEqd,EAAExvB,GAAG,OAAOmS,GAAG,KAAK,EAAE,OAAOlS,EAAE86B,EAAE,KAAK,EAAE,OAAO96B,EAAE2S,EAAE,KAAK,EAAE,OAAO3S,EAAEhC,EAAE,KAAK,EAAE,OAAOgC,EAAEoS,EAAG,OAAOmwS,GAAIviT,EAAEkS,EAAEqd,EAAExvB,EAAE,CAC5H,SAAS0nT,GAAIznT,GAAG,OAAGA,EAAEqB,IAAI49P,MAAMgF,MAA0B8J,GAAI,IAAI3jD,GAAI,KAAK,IAAIorB,GAAI,IAAI1G,GAAG7hB,GAAGm1E,GAAIpiS,GAAGA,EAAE27M,KAAK,IAAIpoE,MAAO,IAAI6S,GAAI,CAG7H,SAASqoE,GAAIzuN,GAAS,OAAG1B,MAAMC,QAAQyB,IAAIA,EAAEo0K,KAAK3/B,EAAY40C,GAAIrgG,GAAGhpF,IAAI,KAAOujN,GAAGvjN,KAAK,GAAItB,SAAS,IAAYsB,EAAEtB,UAAU,CAC7H,SAAS2lN,GAAIrkN,GAAG,IAAIkS,EAAE5N,KAAKtE,EAAsB,IAAIynM,GAAvBv1L,EAAEyrK,GAAG39K,EAAEuF,GAAGvF,EAAEuF,IAAI,GAAao4K,GAAG+pB,GAAIx1L,EAAEA,EAAEhU,QAAQ,GAAG,GAAIoG,KAAK4N,EAAE+rK,GAAG6Q,IAAG3Q,IAAI,EAAE75K,KAAKtE,EAAEA,EAAE9B,OAAO,EAAE,EAAE,CAC5H,SAASkqL,GAAIpoL,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAiB,IAAfuE,KAAKtE,EAAE,IAAIugN,GAAQxgN,EAAE,IAAI4lK,GAAI3lK,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,IAAcyiS,GAAVtwR,EAAE,IAAI24N,GAAUt7M,GAAGo4J,GAAIrjL,KAAKtE,EAAEkS,EAAG,CAE9H,SAAS+pM,GAAGj8M,GAAG,IAAIkS,EAAE,GAAGlS,EAAEkS,GAAW,GAAR+pM,GAAGj8M,EAAEkS,GAAMlS,EAAEkS,EAAEnS,GAAGC,EAAEuvB,EAAG,MAAM2jJ,GAAI,IAAIiC,SAAcn1K,EAAED,EAAEshC,OAAMnvB,EAAEyrK,GAAG39K,EAAE86B,EAAEvL,EAAEyhN,GAAGhxO,EAAEuF,GAAG,OAAUvF,EAAED,EAAEmS,EAAG,CAE9H,SAASgzN,GAAIllO,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAE,IAAIxF,EAAE,EAAEwF,EAAEvF,EAAE9B,OAAO6B,EAAEwF,EAAExF,IAAK,GAAGq1S,IAAKx9G,GAAI73L,EAAEC,EAAE9B,QAAQ8B,EAAEqf,WAAWtf,IAAImS,EAAEqd,GAAG,OAAO,EAAK,OAAO,CAAK,CAC9H,SAASm4R,GAAI1nT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,IAAIA,EAAEC,EAAEuF,EAAEvF,EAAE2hP,KAAKhmC,KAAK57M,EAAEw7M,MAAwB,GAAGosG,IAAIz1S,GAAxBqd,EAAEouJ,GAAG59K,EAAE07M,KAAK,MAAgB17M,IAAI6nT,IAAI11S,EAAEqd,EAAExvB,GAAI,OAAO,EAAM,OAAO,CAAK,CAC9H,SAAS8nT,GAAI7nT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAA+B,IAA7BxF,EA6wC5B,SAAaC,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAgI,IAA9HhV,EAAEuhP,GAAIrtO,EAAElS,GAAGuF,EAA8B,EAA5B+6K,GAAIC,GAAGgoB,IAAIvqM,GAAGq/J,MAAMyqJ,QAAUzmT,EAAEi/K,GAAIC,GAAGgoB,IAAIvqM,EAAE+pT,OAAO31S,EAAE6gI,EAAK3/H,KAAKugB,IAAItuB,EAAElE,GAAGy5B,EAAEmjJ,GAAGgV,IAAGwzD,IAAI,GAAGv0O,EAAE4oB,EAAE5oB,EAAEqd,EAAE,EAAE,GAAG,GAAGxvB,GAAGqS,EAAEmd,EAAE,EAAM9rB,EAAEyO,EAAEA,EAAEypM,KAAKl4M,EAAE83M,MAAO5oM,EAAEgrK,GAAGl6K,EAAEg4M,KAAK,IAAI17M,GAAGC,EAAEA,EAAE2S,EAAE4c,EAAEnsB,GAAGgP,EAAE0oB,EAAEvL,KAAKxvB,EAA6B,IAA3BA,GAAGC,EAAEA,EAAEkS,EAAElS,EAAEuvB,EAAEnsB,GAAGgP,EAAE0oB,EAAEvL,KAAKxvB,EAAMiT,EAAE,IAAI2yJ,GAAIzzJ,EAAE3M,GAAGyN,EAAEhT,EAAEgT,EAAEuc,EAAEA,EAAErxB,QAAS4V,EAAE6pK,GAAGC,GAAI5qK,GAAG,IAAIjT,GAAGC,EAAEA,EAAE8T,EAAEyb,EAAEnsB,GAAGgP,EAAE0oB,EAAEvL,KAAKxvB,EAAE,OAAO+6B,CAAC,CA7wC/TktR,CAAIhoT,EAAEkS,GAAG3M,EAAExF,EAAEA,EAAE7B,OAAO,GAAG,EAAMqxB,EAAE,EAAEA,EAAExvB,EAAE7B,OAAOqxB,IAAK,GAAGxvB,EAAEwvB,IAAIhqB,EAAG,OAAO2M,EAAEqd,EAAEA,EAAG,OAAOrd,EAAEqd,EAAErd,EAAEA,EAAE+sK,IAAI,CAE9H,SAASgpI,GAAIjoT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAU,IAAR1D,EAAE,EAAEwvB,EAAE,EAAU5c,EAAE,EAAElP,GAARq3B,EAAE5oB,GAAUhU,OAAOyU,EAAElP,IAAIkP,GAAGpN,EAAEu1B,EAAEnoB,IAAQ,IAAG5S,GAAGwF,IAAIgqB,GAAuB,OAApBA,EAAE,IAAIxvB,GAAGC,EAAED,GAAGwvB,EAAE,IAAWxvB,CAAC,CAC/H,SAASmoT,GAAIloT,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAqB,KAAnBA,EAAE,IAAIukL,IAAMtkL,GAAG,IAAQkS,EAAE,EAAEqd,EAAEvvB,EAAEi/K,KAAK/sK,EAAEqd,GAAIktL,GAAI18M,EAAEyuN,GAAIxuN,EAAEqyS,GAAGngS,OAAOA,EAAEqd,IAAIxvB,EAAEC,GAAGgkL,KAAgB,OAATjkL,EAAEC,GAAG,IAAWD,EAAEC,CAAC,CAG/H,SAASuuP,GAAIvuP,GAAG,IAAMuvB,EAAExvB,EAAiC,IAA/BA,EAAEugL,GAAIC,GAAGvgL,EAAEA,EAAEgmM,IAAIjmC,MAAMooJ,QAAY54R,EAAE,IAAIo2I,GAAI3lK,EAAEA,EAAEqjN,MAAM9zL,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAA0BkqT,IAAIpoT,EAAnB29K,GAAGC,GAAIruJ,GAAG,KAAaxvB,EAAG,CAChI,SAASsoT,GAAIroT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,IAAIA,EAAE,IAAI4lK,GAAIzzJ,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,IAAIg2K,GAAI/1K,EAAEkS,EAAEA,EAAEyrK,GAAGpuJ,EAAErd,EAAE,KAAK0qP,GAAIj/E,GAAGpuJ,EAAEvvB,EAAE,KAAK29K,GAAGpuJ,EAAErd,EAAE,IAAK,CAEhI,SAASo2S,GAAItoT,EAAEkS,EAAEqd,GAAG,IAAIxvB,IAAEA,EAAEwvB,KAAOxvB,EAAEylO,GAAI,IAAIhqD,GAAI,IAAIqmH,IAAI9hS,EAAEwoT,IAAI,GAAGC,IAAIxoT,EAAEkS,EAAEA,EAAEg0R,GAAInmS,EAAE,IAokDlF,SAAaC,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAIwD,EAAIsP,EAA4H,IAA1HN,EAz5BtD,SAAapS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAI+6B,EAAEnoB,EAAET,EAAE,IAAIkgK,GAAI7iJ,EAAE,IAAI6iJ,GAAIuwF,GAAIzwP,EAAElS,GAAG2iQ,GAAIpzO,EAAEvvB,GAAG,KAAMuvB,EAAErd,GAAGqd,EAAEA,GAAmB,IAAI5c,EAAE,IAAIgzJ,GAAxBgY,GAAG41D,GAAIhkN,GAAG,IAAoBvvB,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,SAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAASpN,IAASo9P,GAAIzwP,EAAVnS,EAAE+6B,EAAEv1B,GAAWo9P,GAAIpzO,EAAExvB,IAAK,OAAOmS,CAAC,CAy5B9Iu2S,CAAIv2S,GAAKyrK,GAAG4qB,IAAIr2L,GAAGmrJ,MAAMqrJ,MAAM,OAASzyC,KAAME,MAAM59D,GAAInmM,EAAE,IAAIqoI,IAAK/nI,EAAEirK,GAAG4qB,IAAIr2L,EAAEy2S,KAAK,KAAKpwG,GAAInmM,EAAE,IAAIi2J,GAAI31J,IAAItP,EAAE,EAAE/B,EAAE,IAAIixK,GAAQx3I,EAAE,IAAIqnN,GAAI/vO,GAAG0oB,EAAE96B,GAAG86B,EAAE5oB,GAAI3M,EAAEo4K,GAAGk0H,GAAI/2Q,GAAG,IAAI8tR,IAAI5oT,EAAEuvB,EAAEhqB,GAA+BnC,IAA5B4P,EAAE2qK,GAAG4qB,IAAIhjM,GAAGyiM,MAAM6gH,MAAM,KAAS5pI,KAAclJ,GAAI10K,EAAE,IAAIm1M,GAAIjxM,EAArByN,EAAE2oM,OAAyBkmF,IAAItyQ,EAAE,gCAAgCnsB,GAAK,EAAExD,EAAE+9K,GAAGA,GAAG0pB,GAAIhmM,EAAEA,EAAEkuB,EAAErxB,OAAO,GAAG,IAAIgU,EAAE,IAAI,KAAMtS,EAAE27M,MAAM,IAAIv9M,EAAE,IAAI2nK,GAAItkK,GAAGrD,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAmD,IAA1CuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,IAAIgV,EAAE2qK,GAAGl6K,EAAEyO,EAAE,IAAIS,EAAEgrK,GAAGl6K,EAAEzD,EAAE,IAAUgT,EAAEuoM,MAAK,CAAiB,GAAG1xB,GAAnB/1K,EAAE6pK,GAAG3qK,EAAEyoM,KAAK,IAAY,KAAK,CAAC,GAAI9oM,EAAEpN,EAAmC,MAAhCuO,EAAEg1S,GAAGn2S,EAAEuzR,GAAI32Q,EAAE,IAAQ,KAAiB,CAAMzb,EAAEg1S,GAAGn2S,EAAEuzR,GAAI32Q,EAAE,GAAQ,CAAGgzQ,IAAIhzQ,EAAE,CApkDlgBw5R,CAAI/oT,EAAEkS,EAAEg0R,GAAInmS,EAAE,IA4uDpG,SAAaC,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAA+G,IAA7Gg/P,IAAI3vR,EAAE,+BAA+B,GAAGqd,EAAE0yJ,GAAIk6B,GAAG5T,IAAIvoM,GAAGq9J,MAAM2rJ,QAAQvlT,EAAEk6K,GAAG4qB,IAAIvoM,GAAGgoM,MAAMihH,MAAM,KAAK5nT,EAAE,IAAIo1K,GAAQ/jK,EAAEjP,EAAEk+O,KAAKhmC,KAAKjpM,EAAE6oM,MAAM,CAAwM,IAAvMvnM,EAAE2pK,GAAGjrK,EAAE+oM,KAAK,IAAI9oM,EAAE,IAAIqsN,GAAIv7N,EAAE4+B,GAAGruB,IAAIizM,KAAMnC,GAAInyM,EAAE,IAAI61J,GAAIxoK,IAAImR,EAAE4zR,IAAKtnF,GAAI,EAAE9qM,EAAE4c,EAAErxB,QAAQy/K,GAAGhrK,EAAE4c,EAAE,GAAG,OAAO3F,EAAEo7Q,GAAIrnH,GAAG0pB,GAAI10L,EAAEA,EAAE4c,EAAErxB,OAAO,GAAG,MAAM+V,EAAE9C,EAAEnT,EAAc6V,EAAZ05R,GAAI3jR,EAAE5rB,EAAEiW,GAAMA,EAAE1O,EAAMg6O,GAAItrO,GAAIH,EAAEo1S,IAAIl1S,EAAErB,GAAG8uL,GAAIztL,EAAEhU,GAAGgT,EAAE,KAAS8nB,EAAE,IAAI6qI,GAAIhzJ,GAAGmoB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAASqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAequR,IAAV/lT,EAAE,IAAIwlL,GAAUrjL,EAAEvF,EAAE6T,GAAGjU,EAAE2F,EAAE2M,EAAYy+R,GAAV5wS,EAAE,IAAIy5K,GAAU,EAAE55K,EAAEI,GAAGm2R,GAAIp2R,EAAEqD,GAAGilB,EAAE,IAAIs4L,GAAI80C,GAAI71P,EAAE2vB,IAAIhsB,EAAE,IAAIo9M,GAAI80C,GAAI71P,EAAEG,IAAI8/K,GAAIx3J,EAAEjlB,GAAGy8K,GAAIt8K,EAAEH,GAAM4P,IAAQ,GAALjT,EAAEmS,EAAMhS,EAAEqD,GAAO+lN,GAAS,GAALvpN,EAAEmS,GAAThS,EAAey9K,GAAG59K,EAAEC,EAAEA,EAAEuvB,EAAE,IAAKqV,EAAEquG,EAAK3/H,KAAKskB,IAAI5kB,EAAEhT,EAAEE,EAAEF,GAAGopT,IAAIvmR,EAAEowG,EAAK3/H,KAAKskB,IAAI5kB,EAAEd,EAAEhS,EAAEgS,GAAGk3S,MAAM75R,GAAGqV,GAAG/B,GAAGtT,IAAIqV,GAAG/B,KAAK+iM,GAAI5xN,EAAEhU,EAAEqoB,IAAGkxK,GAAGvlL,EAAEhU,EAAED,GAAQ,GAALA,EAAEmS,EAAMc,EAAEqV,GAAOihM,GAAS,GAALvpN,EAAEmS,GAATc,EAAe2qK,GAAG59K,EAAEwvB,EAAErd,EAAEqd,EAAE,IAAKmhR,GAAI9wS,EAAEkU,EAAE1Q,GAAM4hS,GAAIz/R,IAAIqkB,IAAM21N,GAAI31N,EAAE5rB,IAAIuH,EAAEvF,GAAampT,IAAV/lT,EAAE,IAAIwlL,GAAU22D,GAAI31N,EAAE5rB,GAAG6V,GAAGk0L,GAAI/zL,EAAEq1S,IAAIjmT,IAAGkmT,IAAI1pT,EAAEoU,EAAEH,GAAGxS,EAAErB,EAAE65N,GAAGj6N,EAAEyB,GAAGgxP,GAAIr+O,EAAE7C,GAAGihP,GAAIp+O,EAAE4V,EAAE,CAAC,IAAIxX,EAAE/Q,EAAErB,EAAE2hP,KAAKhmC,KAAKvpM,EAAEmpM,MAAuB82C,GAAhBr0P,EAAE2/K,GAAGvrK,EAAEqpM,KAAK,IAAU,MAAM22C,GAAIp0P,EAAE,MAAMukS,IAAIrwR,EAAE,CA5uDv2Bq3S,CAAIr3S,EAAEg0R,GAAInmS,EAAE,IAAIwiS,IAAIxiS,EAAE,CAE9H,SAASgnO,GAAI/mO,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAGx2B,KAAKtE,EAAEA,EAAEsE,KAAKirB,EAAErd,EAAE5N,KAAK4N,EAAEqd,EAAEjrB,KAAKw2B,EAAE/6B,EAAEuE,KAAKvE,EAAEwF,EAAEjB,KAAKiB,EAAEu1B,EAAEx2B,KAAKirB,EAAE,GAAGjrB,KAAK4N,EAAE,GAAGi4N,GAAI7lO,KAAKirB,EAAEjrB,KAAK4N,EAAE5N,KAAKtE,EAAE,CAC7H,SAASwpT,GAAIxpT,GAAGygL,MAAMn8K,KAAKirB,EAAEohP,GAAGpyF,GAAGC,GAAGirI,IAAG,GAAGtrI,IAAI,IAAI,EAAE,CAACknB,OAAO/gM,KAAK4N,EAAE,IAAIsgK,GAAIluK,KAAKtE,EAAEA,EAAE22L,GAAIryL,KAAK4N,EAAEwuK,IAAI,GAAG0iC,GAAIsmG,IAAI,IAAIl7I,GAAIlqK,MAAM,CAC9H,SAASqlT,GAAI3pT,EAAEkS,GAAG,IAAIqd,EAAE,OAAGvvB,EAAED,EAAM6gM,GAAI5gM,EAAEkS,EAAEA,GAAWyrK,GAAG+5B,GAAI13M,EAAEkS,EAAEA,GAAG,KAASqd,EAAErd,EAAE03S,KAAKjzH,GAAI32L,EAAEkS,EAAEA,EAAEqd,GAAUA,GAAerd,EAAE03S,IAAK,CAChI,SAASC,GAAI7pT,EAAEkS,GAAG,IAAIqd,EAAE,OAAGwrL,GAAG/6M,KAAK+6M,GAAG7oM,MAAmB23K,GAAG33K,EAAE,MAAKqd,EAAEouJ,GAAGzrK,EAAE,IAAWlS,EAAEuF,GAAGgqB,EAAEhqB,GAAGvF,EAAED,GAAGwvB,EAAExvB,GA1iCtG,SAAaC,EAAEkS,GAAG,IAAIqd,EAAE,IAAIA,EAAEvvB,EAAED,EAAE,EAAEwvB,GAAG,GAAGvvB,EAAEA,EAAEuvB,KAAKrd,EAAEqd,GAAGA,KAAK,OAAOA,EAAE,CAAC,CA0iCkCu6R,CAAI9pT,EAAEuvB,EAAEvvB,GAAe,CAChI,SAAS+pT,GAAI/pT,GAAS,OAANy/K,MAAaz/K,EAAE2S,GAAG,KAAK,EAAE,OAAOotK,IAAI,KAAK,EAAE,OAAOL,IAAI,KAAK,EAAE,OAAOmnB,IAAI,KAAK,EAAE,OAAOjnB,IAAI,QAAQ,OAAOknB,IAAK,CAC9H,SAASgxG,GAAI93S,EAAEkS,GAAG,OAAOA,GAAG,KAAK,EAAE,OAAY,GAALlS,EAAE86B,EAAK,KAAK,EAAE,OAAY,GAAL96B,EAAE2S,EAAK,KAAK,EAAE,OAAY,GAAL3S,EAAEhC,EAAK,KAAK,EAAE,OAAY,GAALgC,EAAEoS,EAAM,OAAOu7R,GAAI3tS,EAAEkS,EAAE,CAEhI,SAAS83S,GAAIhqT,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAO,IAAIq6I,GAAI,KAAK,EAAE,OAAO,IAAIG,GAAI,QAAQ,MAAM+lB,GAAI,IAAI2O,GAAIooI,KAAU,MAALjqT,EAAE86B,EAAQ96B,EAAE86B,EAAE,GAAG96B,EAAE2S,KAAM,CAChI,SAASu3S,GAAIlqT,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAO,IAAI4mK,GAAI,KAAK,EAAE,OAAO,IAAID,GAAI,QAAQ,MAAMpG,GAAI,IAAI2O,GAAIy2H,KAAU,MAALt4S,EAAE86B,EAAQ96B,EAAE86B,EAAE,GAAG96B,EAAE2S,KAAM,CAKhI,SAASg1O,GAAI3nP,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAW,OAATwvB,EAAEvvB,EAAEmqT,MAAuBtgI,GAAZ33K,EAAElS,EAAEoqT,KAAa,MAA6B,OAAvBrqT,EAAE4nP,GAAIhqE,GAAGzrK,EAAE,OAAyBnS,EAAE,IAAIwvB,EAAUA,EAAS,IAAI,CACjI,SAASypN,GAAGh5O,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAE,IAAIA,EAAEvF,EAAE27M,KAAKp2M,EAAEg2M,MAAgB,GAATx7M,EAAEwF,EAAEk2M,KAAQV,GAAG7oM,KAAK6oM,GAAGh7M,IAAO,MAAHmS,GAASogL,GAAGpgL,EAAEnS,GAAc,OAAVwvB,GAAGhqB,EAAEw+K,MAAY,EAAM,OAAO,CAAK,CACjI,SAASsmI,GAAIrqT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAQ,KAAJvF,EAAEoS,EAAKmd,EAAE8R,KAAM,OAAO,EAAW,IAAI97B,EAAEgqB,EAAEosL,KAAKp2M,EAAEg2M,MAAOx7M,EAAEwF,EAAEk2M,KAAKz7M,EAAEw4N,GAAGtmN,EAAElS,EAAEs7K,GAAGppK,EAAEnS,MAAMmS,EAAE,OAAO,CAAK,CAIhI,SAASo4S,GAAItqT,EAAEkS,GAAG,IAAIqd,EAAI,GAAIrd,EAAoB,CAAC,IAAIqd,EAAE,EAAEA,EAAEvvB,EAAEhC,IAAIuxB,EAAoB,GAAfouJ,GAAG39K,EAAE2S,EAAE4c,GAAG,KAAUg7R,GAAGr4S,GAAI,OAAO,EAAO,OAAO+4K,GAAIjrL,EAAEkS,EAAE,CAA/F,OAAO,CAAyF,CACjI,SAASs4S,GAAIxqT,GAAG,IAAIkS,EAAEqd,EAAIhqB,EAAW,IAAT2M,EAAE,IAAI4wJ,GAAOv9J,EAAE,IAAI+/J,GAAItlK,EAAEkS,EAAEypM,MAAMp2M,EAAE2M,EAAEqpM,MAA0BhsL,EAAEk7R,IAAnB9sI,GAAGp4K,EAAE2M,EAAEupM,KAAK,MAAci6B,GAAGxjO,EAAEA,EAAElS,EAAE9B,OAAOqxB,GAAG,OAAOrd,EAAElS,CAAC,CACjI,SAAS0qT,GAAI1qT,GAAG,IAAIkS,EAAqG,OAAlGlS,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAI4oH,IAAK2sE,GAAI9kN,EAAED,EAAE,IAAIs4I,IA4yCtD,SAAar4I,GAAG,IAAIkS,EAAEqd,EAAMuL,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAsC,IAApC3O,EAAE,IAAI21L,GAAIzb,GAAGoG,GAAG,IAAIzrC,IAAK,KAAKlmI,EAAEmkK,IAAQhnJ,EAAE,IAAIo2I,GAAI3lK,EAAED,GAAGwvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAQ,CAA0B,IAARkU,GAAjBF,EAAEyrK,GAAGC,GAAIruJ,GAAG,MAASA,EAAEA,EAAe,GAAP9rB,EAAEzD,EAAEuvB,IAAMvxB,EAAE2/K,GAAGo2D,GAAI8uC,GAAIp/Q,EAAEzD,IAAI,MAAUuvB,EAAEA,EAAEvxB,EAAEuxB,EAAErd,EAAEE,GAAGw8M,GAAInrN,EAAEzD,EAAEhC,GAAqB,IAAI2U,EAA4C,IAAIwyJ,GAA3C,IAAIuyD,GAAK,IAAIlI,GAAK,IAAItqD,GAAIzhK,EAAEzD,GAAIA,GAAIkS,IAAe46L,GAAIn6L,EAAE3S,EAAEA,IAAmC4lO,IAA9B9qM,EAAc6iJ,GAATi0C,GAAIj/M,EAAE3S,GAAQ6sM,KAAK,MAAY36L,EAAEA,GAAG0zN,GAAI1zN,EAAEA,EAAE4oB,GAAGg7M,GAAIryO,EAAEzD,EAAEkS,GAAGw7M,KAAMC,KAAW,CAAC,CA5yC/Tg9F,CAAI3qT,GAAGkS,EAypClE,SAAalS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAsB,IAApB+Q,EAAEpS,EAAEA,EAAEkS,EAAE,IAAIukK,GAAIz4K,EAAE,EAAM+B,EAAE,IAAI4lK,GAAI3lK,EAAED,GAAGA,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAQ,CAAuC,IAArBmD,EAAE,EAAEgjS,IAArB90Q,EAAEouJ,GAAGC,GAAI79K,GAAG,MAAemS,EAAE,IAAI+lI,IAAStlI,EAAEmsP,IAAIvvO,EAAErd,EAAE,GAAGS,EAAET,GAAGS,EAAE5S,EAAEwvB,GAAIuL,EAAE6iJ,GAAGohF,GAAIpsP,GAAG,KAAQT,EAAElS,EAAEmH,GAAG2zB,KAAIv1B,EAAEgqB,EAAEA,EAAQluB,GAANoC,EAAEq3B,EAAEvL,GAAMxvB,EAAE0D,EAAEzD,EAAEoS,GAAG/Q,EAAEkE,EAAEvF,EAAEoS,EAAE3O,EAAE1D,IAAIsB,EAAEoC,EAAE1D,EAAE0D,EAAEzD,EAAEoS,IAAImd,EAAEA,EAAExvB,EAAEsB,EAAE6Q,EAAElS,EAAE65N,GAAGtqM,EAAErd,GAAGlU,EAAEi1I,EAAK3/H,KAAKugB,IAAI71B,EAAEuxB,EAAEA,EAAExvB,EAAEwvB,EAAEA,EAAEvvB,EAAE,CAAC,OAAOhC,CAAC,CAzpCjP4sT,CAAI5qT,GAAG0hM,GAAI,IAAI0oB,GAAI,KAAK,IAAI7c,GAAIvtM,EAAED,EAAE,KAAK,IAAI+nK,GAAI9nK,IAAWkS,CAAC,CACjI,SAAS24S,IAAI7qT,GAAG,IAAIkS,EAAE,OAAc,IAAL,GAALlS,EAAEgtN,IAAiBu0F,GAAIvhT,KAAGkS,EAAE,IAAI27M,GAAI0zF,GAAIvhT,KAAMA,GAAG,wBAAwBy8M,GAAIvqM,EAAElS,EAAEmxL,GAAGj/K,EAAElS,GAAG,IAAWkS,EAAElS,EAAC,CAGjI,SAASksR,IAAIlsR,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAqC,GAA3B,MAALvF,EAAEhC,GAAS+4O,IAAI/2O,GAAlBuvB,EAAqBvvB,EAAEhC,GAAmB,IAAhB+B,EAAEmS,EAAEo6M,MAAe,IAAI/mN,EAAEgqB,EAAErxB,OAAO6B,EAAEwF,IAAIxF,EAAG,GAAGwvB,EAAExvB,IAAImS,EAAG,OAAOnS,EAAI,OAAQ,CAAC,CAIjI,SAAS+qT,IAAG9qT,GAAQ,IAAIkS,EAAW,OAApBkiK,MAAWliK,EAAElS,EAAEk/N,MAAchhO,QAAQ,KAAK,EAAE,OAAOy7O,IAAG,KAAK,EAAE,OAAO,IAAIvQ,GAAGrlD,GAAG7xK,EAAE,KAAK,QAAQ,OAAO,IAAI0nO,GA3EvH,SAAY55O,GAAG,IAAMuvB,EAAExvB,EAAE,IAAIwvB,EAAE,EAAExvB,EAAEC,EAAE9B,OAAOqxB,EAAExvB,EAAEwvB,IAAK,GAAS,MAANvvB,EAAEuvB,GAAU,MAAM2jJ,GAAI,IAAI8O,GAAI,YAAYzyJ,IAAS,OAAO,IAAI+uJ,GAAbt+K,EAAmB,CA2EF+qT,CAAG74S,IAAK,CAClI,SAAS84S,IAAIhrT,EAAEkS,GAAG,OAAOA,EAAES,GAAG,KAAK,EAAE,OAAOyvN,GAAGpiO,EAAEoS,GAAGs+N,KAAMg1D,MAAM,KAAK,EAAE,OAAOtjE,GAAGpiO,EAAEoS,GAAGs+N,KAAM+0D,MAAM,QAAQ,OAAOx+E,KAAMA,KAAM+Y,IAAK,CAClI,SAASirF,IAAIjrT,EAAEkS,GAAG,OAAOA,GAAG,KAAK,EAAW,YAAT+vM,GAAIjiN,EAAE,GAAU,KAAK,EAAW,YAATgiN,GAAIhiN,EAAE,GAAU,KAAK,EAAW,YAATmiN,GAAIniN,EAAE,GAAU,KAAK,EAAW,YAAToiN,GAAIpiN,EAAE,GAAW+gT,GAAI/gT,EAAEkS,EAAE,CACjI,SAASuuK,MAAMA,IAAI/rC,EAAI0wD,KAAW/nC,MAALqjB,IAAWwqI,IAAKxB,IAAI/4C,GAAGpyF,GAAGC,GAAGqQ,IAAG,GAAGs8H,IAAI,IAAI,EAAE,CAACC,IAAI/kE,IAAIC,IAAI+kE,IAAI3iH,IAAI4iH,IAAI9iH,IAAIC,IAAI89C,IAAIglE,IAAIC,IAAI1D,IAAIC,MAAM,CACjI,SAAS0D,IAAIzrT,GAAG,IAAIkS,EAAEqd,EAAErd,EAAElS,EAAED,IAAIs4R,MAAMI,KAAKlpQ,EAAEm8R,IAAI1rT,GAAgB+nM,GAAI/nM,EAAEA,GAAGq9J,MAAMkhG,KAA5BrsP,IAAIqd,IAAIrd,GAAGqd,GAAuBivO,MAAMgB,MAA2BhB,MAAMiB,KAAK,CAElI,SAASqpB,MAAMA,IAAIp0I,EAAIs0I,IAAI,IAAI/yE,GAAI,SAAS,GAAGgzE,IAAI,IAAIhzE,GAAI,YAAY,GAAGizE,IAAI,IAAIjzE,GAAI,cAAc,GAAGkzE,IAAI,IAAIlzE,GAAI,YAAY,EAAE,CACjI,SAASo6D,MAAMA,IAAI37H,EAAI47H,IAAI,IAAIt9G,GAAI24J,IAAI,IAAI14J,GAAI24J,IAAI,IAAI14J,GAAI24J,IAAI,IAAI14J,GAAI24J,IAAI,IAAI14J,GAAI24J,IAAI,IAAI14J,GAAI24J,IAAI,IAAI14J,GAAI24J,IAAI,IAAI14J,GAAI24J,IAAI,IAAI14J,EAAG,CAClI,SAAS24J,IAAInsT,EAAEkS,EAAEqd,GAAGkmQ,KAAMj9G,GAAIz5K,KAAKuF,MAAMA,KAAKtE,EAAEwoO,GAAG4jF,IAAG,CAACv4H,IAAIuT,KAAK,CAAC,IAAI,KAAK,EAAE,CAAC8oE,IAAIF,KAAK,GAAG1rQ,KAAKirB,EAAE,IAAIo5K,GAAIrkM,KAAKqO,EAAE3S,EAAEsE,KAAKw2B,EAAE5oB,EAAE5N,KAAKvE,EAAEwvB,CAAC,CAClI,SAASknM,IAAIz2N,EAAEkS,GAAG5N,KAAK1E,EAAE4oO,GAAGl1C,IAAG,CAACO,IAAIw4H,KAAK,CAAC,IAAI,IAAI,GAAG,CAACn6S,EAAEimL,GAAGllD,EAAK3/H,KAAKwd,KAAK9wB,EAAE,MAAM,GAAGsE,KAAKpE,EAAEF,EAAEsE,KAAKlB,EAAE8O,EAAE5N,KAAK8N,EAAEpS,EAAE,GAAG,EAAEsE,KAAKjD,EAAE6Q,EAAE,GAAG,CAAC,CAGlI,SAAS46R,IAAI9sS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAe,IAAbxF,EAAE64L,GAAIrpK,EAAEspK,KAAStzL,EAAE,EAAY,GAAV2nM,GAAIntM,EAAE,IAAOwF,EAAE2M,EAAE3M,IAAKxF,EAAE2qM,GAAI3qM,EAAE64L,GAAI54L,EAAEuF,GAAGszL,MAAM74L,EAAEuF,GAAG0kN,GAAIlqN,GAAGA,EAAE8vO,GAAI9vO,EAAE,IAAI,OAAOkqN,GAAIlqN,EAAE,CACnI,SAASusT,IAAItsT,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAM,IAAJA,EAAE,EAAMgqB,EAAE,EAAExvB,EAAEC,EAAE9B,OAAOqxB,EAAExvB,EAAEwvB,IAAQqoK,GAAIroK,EAAEvvB,EAAE9B,SAAXgU,EAAmBlS,EAAEqf,WAAWkQ,IAAM,KAAKhqB,EAAEmzL,GAAInzL,EAAEozL,GAAI,EAAEzmL,KAAK,OAAO3M,CAAC,CAGlI,SAASu+P,IAAI9jQ,EAAEkS,GAA2G,OAA/FlS,EAAEhC,EAAE,IAAMkU,EAAEhU,OAAO8B,EAAEhC,IAAsBkU,EAAjB2qR,GAAI7zM,GAAG92E,GAAGqd,EAAEvvB,EAAEhC,IAAOslQ,IAAItjQ,EAAE2S,EAAE,EAAET,EAAE,EAAElS,EAAEhC,IAAGkU,EAAEhU,OAAO8B,EAAEhC,GAAG2oM,GAAGz0L,EAAElS,EAAEhC,EAAE,MAAakU,CAAC,CAClI,SAASq6S,IAAIvsT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAA+F,OAA1F96B,EAAEmkT,MAAMpkT,EAAEC,EAAEhC,EAAE88B,EAAE96B,EAAEokT,KAAKpC,GAAIhiT,EAAED,EAAEmS,GAAG3M,EAAEvF,EAAEskT,GAAG,EAAE,KAAKpyS,EAAEnS,EAAE+6B,GAAIvL,EAAQA,EAAE+uM,GAAG/4N,GAAVgqB,EAAEhqB,GAAgBy8S,GAAIhiT,EAAEA,EAAEhC,EAAEkU,GAAUqd,CAAC,CAGnI,SAASk9Q,IAAIzsS,GAAS,IAAIkS,EAAiG,OAA3GilN,KAAYjlN,EAAE,IAAIyuM,GAAIhjC,GAAG39K,EAAEuF,EAAEygM,IAAIjmC,MAAM68I,MAAM,IAAO58S,EAAE4kC,EAAEq7J,IAAIssG,MAAMmI,QAAOxiS,EAAElS,GAAG,IAAIkS,EAAElS,EAAE,IAAIkS,EAAEA,GAAG,IAAIA,EAAEA,EAAE,KAAWA,CAAC,CACnI,SAASs6S,IAAIxsT,GAA+G,OAA5GinR,OAAcjnR,EAAEgU,EAAoBhU,EAAEgU,GAAnBizM,KAAMA,KAAMgjB,MAAU9iO,IAAIk2J,MAAMovJ,MAAS9uI,GAAG4qB,IAAIvoM,EAAEysT,KAAK,KAAS9uI,GAAG4qB,IAAIg3C,GAAIv/O,GAAG0sT,KAAK,IAAc,CACpI,SAASC,IAAI3sT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAoG,OAAlGA,EAAE,KAAQyyN,GAAIxyN,GAAGq9J,MAAMuvJ,QAAOr9R,EAAEouJ,GAAG4qB,IAAIvoM,EAAE4sT,KAAK,KAAM9mH,GAAG5zL,KAAKnS,EAAEwvB,EAAEy2K,GAAG9zL,IAAO,MAAHnS,IAAUA,EAAEwoM,IAAIg3C,GAAIv/O,GAAGkS,IAAWnS,CAAC,CACpI,SAAS8sT,IAAG7sT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAE,QAAGskL,GAAG33K,EAAE,MAAgBnS,GAAXwvB,EAAEouJ,GAAGzrK,EAAE,KAAQ26L,KAA2ByyC,GAAtB/5O,EAAEk5N,GAAGz+N,EAAE40R,KAAK70R,GAAewvB,EAAEurL,QAAW,MAAHv1M,GAASvF,EAAE40R,KAAKztR,GAAGpH,IAAgB,CACpI,SAAS26M,IAAI16M,EAAEkS,GAAG,IAAMnS,EAAI,OAAGC,EAAE86B,EAAE,IAAG96B,EAAEs4O,MAAsE,GAAxBmsE,IAAIzkT,IAA7CD,EAAK,MAAHmS,EAAQ,EAAEqxM,GAAGrxM,IAAQgmL,KAAKl4L,EAAED,EAAE7B,OAAiB6B,EAAEmS,GAAkC,CAClI,SAASq8N,IAAIvuO,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAI,OAAGC,EAAE86B,EAAE,IAAG96B,EAAEs4O,KAA4C/oN,EAAEu9R,IAAI9sT,IAA7CD,EAAK,MAAHmS,EAAQ,EAAEqxM,GAAGrxM,IAAQgmL,KAAKl4L,EAAED,EAAE7B,OAAiB6B,EAAEmS,IAAgBqd,EAAEurL,KAAa,IAAI,CACnI,SAASF,IAAI56M,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAkC,IAAhCA,EAAEitL,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAGqd,EAAEouJ,GAAG39K,EAAE2S,EAAE,KAASpN,EAAE,EAAEA,EAAEvF,EAAEhC,IAAIuH,EAAU,GAAPxF,EAAEwvB,EAAEhqB,GAAMu1B,EAAEmtL,GAAGloN,EAAEmoN,MAAO,OAAO,EAAO,OAAO,CAAI,CAClI,SAAS6kG,IAAI/sT,GAAG,GAAQ,MAALA,EAAEkS,EAAQ,CAAC,KAAMlS,EAAEA,EAAEu7M,MAAmB,GAAbv7M,EAAEkS,EAAElS,EAAEA,EAAEy7M,MAAS99B,GAAG39K,EAAEkS,EAAE,IAAI86S,KAAM,OAAO,EAAe,OAAThtT,EAAEkS,EAAE,MAAY,CAAK,CAAM,OAAO,CAAK,CACpI,SAAS+6S,IAAI/6S,EAAEqd,GAAGrd,EAAEg7S,KAAK,IAAIh7S,EAAEnS,EAAE45N,GAAGznN,EAAE3M,IAAIgqB,GAAGrd,EAAE4oB,EAAE5oB,EAAEnS,EAAEqS,EAAEF,EAAES,GAAG,CAAC,CAAC,MAAM3S,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,IAAWkzK,GAAI,IAAIiC,IAAgBjC,GAAIlzK,IAAE,CAAC,CAClI,SAASmtT,IAAGntT,EAAEkS,GAAQ,IAAIqd,EAAExvB,EAA+F,OAA1GwkN,KAAkCxkN,EAAE,KAAKmS,IAA5Bqd,EAAE6pM,IAAI91C,KAAKA,KAAKC,SAAmBxjL,EAAE49K,GAAG2M,GAAIk6B,IAAGxkN,GAAG,MAAUD,IAAGA,EAAE,IAAIq5O,GAAGp5O,GAAGkS,GAAGqd,GAAG2/J,GAAIs1B,IAAGxkN,EAAED,IAAUA,CAAC,CACnI,SAASqtT,IAAIptT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEC,EAAEA,EAAE0qM,GAAI1qM,EAAEA,EAAE,GAAGA,EAAEuvB,EAAE0jH,EAAK3/H,KAAKsgB,IAAI5zB,EAAEuvB,EAAErd,GAAGlS,EAAEkS,EAAE+gI,EAAK3/H,KAAKugB,IAAI7zB,EAAEkS,EAAEA,GAAGlS,EAAED,GAAGmS,EAAEqd,EAAErd,EAAElS,EAAE86B,EAAE/6B,EAAEC,EAAEuF,EAAEgqB,EAAEvvB,EAAE86B,EAAE/6B,EAAEC,EAAEuF,EAAEgqB,EAAEvvB,EAAEuF,EAAExF,CAAC,CAEnI,SAASstT,IAAIrtT,EAAEkS,GAAG,IAAIqd,EAAE,OAAGuwL,GAAI9/M,IAAI8/M,GAAI5tM,IAAa+6R,KAAT19Q,EAAEvvB,EAAEkS,IAAYqd,EAAE+tO,IAAY/tO,EAAUi0M,IAAK8pF,IAAGxtG,GAAI9/M,GAAG4jO,GAAI5jO,GAAGA,EAAE8/M,GAAI5tM,GAAG0xN,GAAI1xN,GAAGA,GAAE,GAAMylS,KAAI,CACrI,SAAS4V,IAAIvtT,EAAEkS,GAAG,IAAIqd,GA8mDtB,SAAavvB,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAIr3B,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAE,IAAI9T,EAAE,IAAIylK,GAAI3lK,GAAGE,EAAEF,EAAEE,EAAEqvB,EAAEA,EAAErxB,QAAQ,CAA0D,IAAzCqyN,IAAhB3wN,EAAE+9K,GAAGC,GAAI19K,GAAG,KAAUN,GAAG2wN,GAAI3wN,EAAEM,GAAGmzQ,GAAIzzQ,EAAEk7B,GAAG0yR,IAAI5tT,GAAG6tT,IAAI7tT,GAAOoU,EAAE,IAAI2xJ,GAAI/lK,EAAEwS,GAAG4B,EAAEhU,EAAEgU,EAAEub,EAAEA,EAAErxB,QAAQ,CAAkH,IAAjGqyN,IAAhBntN,EAAEu6K,GAAGC,GAAI5pK,GAAG,KAAUpU,GAAG2wN,GAAIntN,EAAEpD,GAAGuwN,GAAIntN,EAAElD,GAAGy+P,IAAIv7P,EAAEsqT,IAAItqT,EAAEgP,KAAI0oB,EAAE6iJ,GAAG4qB,IAAInlM,GAAGi6J,MAAMwhG,MAAM,MAAS92D,GAAI3kM,EAAEy7P,IAAI7mD,IAAKl9K,EAAE96B,IAAQuF,EAAE,IAAIogK,GAAIviK,EAAEuP,GAAGpN,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAQ,CAAiB,IAAIqxB,EAAEuvO,KAAtB/+P,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAgBvF,EAAE,GAAGuvB,EAAErd,GAAGqd,EAAExvB,EAAEwvB,GAAmBghM,GAAb5yC,GAAGohF,GAAIxvO,GAAG,IAA8B,GAApBvxB,EAAE2/K,GAAG4qB,IAAIxoM,EAAEi/P,KAAK,IAAU,IAAIv7P,EAAEq7P,IAAI9gQ,EAAE,GAAGyF,EAAEyO,GAAGzO,EAAE1D,EAAEwvB,GAAmBghM,GAAb5yC,GAAGohF,GAAIt7P,GAAG,IAAW,IAAIqQ,EAAE,IAAI6xJ,GAAI5lK,EAAEmS,GAAG4B,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAAyBqyN,IAAhBn+M,EAAEurK,GAAGC,GAAI9pK,GAAG,KAAUlU,GAAG2wN,GAAIn+M,EAAElS,EAAG,CAAC,IAAI8S,EAAE,IAAI2yJ,GAAIviK,EAAE03B,GAAG9nB,EAAEhT,EAAEgT,EAAEuc,EAAEA,EAAErxB,QAAyBqyN,IAAhBn+M,EAAEurK,GAAGC,GAAI5qK,GAAG,KAAUpT,GAAG2wN,GAAIn+M,EAAElS,EAAG,CAAuE,IAAnEN,EAAEyB,IAAI49P,MAAMC,OAAMn3D,GAAInoM,GAAGooM,MAAMe,KAAK2kH,IAAI/vI,GAAG4qB,IAAI3oM,EAAEmpM,KAAK,MAAM4kH,IAAI/tT,IAAOyB,EAAE,IAAIskK,GAAI/lK,EAAEsS,GAAG7Q,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAAyBsvT,IAAhBp7S,EAAEurK,GAAGC,GAAIv8K,GAAG,KAAWkvN,GAAIn+M,EAAElS,GAAGqwN,GAAIn+M,EAAExS,EAAG,CAAC,CA9mD/uBguT,CAAI17S,IAAGqd,EAAEouJ,GAAG4qB,IAAIvoM,GAAGq9J,MAAMwwJ,MAAM,OAAU9lH,GAAI/nM,EAAE6tT,IAgSvE,SAAa7tT,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAOqoR,IAAI,KAAK,EAAE,OAAOD,IAAI,KAAK,EAAE,OAAOG,IAAI,KAAK,EAAE,OAAOD,IAAI,KAAK,EAAE,OAAOG,IAAI,KAAK,EAAE,OAAOD,IAAI,QAAQ,OAAO,KAAM,CAhSlF2yB,CAAIv+R,IAAIghM,GAAIvwN,EAAEuvB,GAAGghM,GAAIvwN,EAAE86B,GAAGu4O,GAAIrzQ,EAAED,GAAGszQ,GAAI11F,GAAG4qB,IAAIvoM,EAAEq/P,KAAK,KAAK,CACrI,SAAS0uD,IAAI/tT,GAAGsE,KAAKiB,EAAE04K,GAAGmV,IAAGsW,IAAI,GAAG1pM,EAAE9B,OAAO,GAAG,GAAGoG,KAAKirB,EAAE0uJ,GAAG8U,IAAIuyD,IAAI,GAAGtlP,EAAE9B,OAAO,GAAG,GAAGoG,KAAK4N,EAAE+rK,GAAG8U,IAAIuyD,IAAI,GAAGtlP,EAAE9B,OAAO,GAAG,GAAGoG,KAAKw2B,EAAE,CAAC,CAEnI,SAASkzR,IAAIhuT,GAAG,IAAIkS,EAAU,GAALlS,EAAEuvB,IAAyC,IAA5Brd,EAAEyrK,GAAG0pB,GAAIrnM,EAAEA,EAAEA,EAAEkS,GAAG,MAAOA,KAAQlS,EAAEkS,EAAElS,EAAEkS,EAAElS,EAAEA,EAAEuvB,EAAErxB,QAAQimK,GAAIwZ,GAAG0pB,GAAIrnM,EAAEA,EAAEA,EAAEkS,GAAG,SAASA,EAAEA,IAAIlS,EAAEuvB,EAAC,CAErI,SAAS4wI,MAAMA,IAAIzrB,EAAIu5K,IAAI,IAAItqG,GAAI,IAAIuqG,IAAI,IAAIxqG,IAAK3jD,MAAMq8I,KAAK6R,KAAKE,IAAI,IAAIzqG,GAAI0qG,IAAI,IAAIC,IAAI,IAAI3qG,GAAI4qG,IAAIt2G,GAAI,IAAIu2G,IAAI,IAAI7qG,GAAI8qG,IAAIC,IAAI,CACpI,SAASn3F,MAAMA,IAAI5iF,EAAI60I,IAAI,IAAIxzE,GAAI,QAAQ,GAAGwhB,IAAI,IAAIxhB,GAAI,cAAc,GAAGyzE,IAAI,IAAIzzE,GAAI,cAAc,GAAG0zE,IAAI,IAAI1zE,GAAI,eAAe,EAAE,CACrI,SAAS24G,IAAI1uT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAa,IAAXA,EAAEmS,EAAEhU,OAAWqxB,EAAE,EAAEA,EAAExvB,EAAEwvB,GAAG,EAAEo/R,IAAI3uT,GAAG43L,GAAIroK,EAAErd,EAAEhU,QAAQgU,EAAEmN,WAAWkQ,KAAKqoK,GAAIroK,EAAE,EAAErd,EAAEhU,QAAQgU,EAAEmN,WAAWkQ,EAAE,IAAI,CACpI,SAASouR,IAAI39S,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAkB,IAAhBmoB,EAAE5oB,EAAElS,EAAEuF,EAAEoN,EAAE4c,EAAEvvB,EAAE86B,EAAMv1B,EAAE,IAAIogK,GAAI3lK,EAAEA,GAAGuF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA0B0wT,IAAjB7uT,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAWxF,EAAE8T,EAAEinB,EAAE/6B,EAAEkU,EAAEtB,GAAG3S,EAAEuF,EAAE2M,EAAElS,EAAE86B,EAAEvL,CAAC,CAErI,SAASigP,IAAIxvQ,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAkG,OAAhGvL,EAAErd,GAAG,EAAEA,GAAG,GAAG3M,EAAEvF,EAAED,EAAEwvB,GAAM,GAAHrd,EAAK,EAAE,GAof3D,SAAalS,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAE,GAAM,GAAH5S,EAAMujQ,IAAIpxP,EAAE,EAAElS,EAAEuvB,EAAEvvB,EAAE9B,OAAOqxB,QAA+B,IAAvB5c,EAAE,GAAG5S,EAAEC,EAAEA,EAAE9B,OAAO,GAAG,EAAM48B,EAAE96B,EAAE9B,OAAO,EAAE48B,EAAEvL,EAAEuL,IAAK96B,EAAE86B,IAAI5oB,EAAE4oB,EAAEvL,EAAE,KAAK5c,EAAE3S,EAAE86B,EAAE,GAAG5oB,EAAE4oB,EAAEvL,EAAE,IAAIxvB,EAAG,IAAIwF,EAAE,EAAEA,EAAEgqB,EAAEhqB,IAAKvF,EAAEuF,GAAG,CAAE,CApfjGspT,CAAvB9uT,EAAEk+K,GAAGmV,IAAGsW,IAAI,GAAGnkM,EAAE,GAAG,GAASvF,EAAEA,EAAEuvB,EAAErd,GAAsBmoP,GAAnBv/N,EAAE,IAAIs4M,GAAIpzO,EAAEuF,EAAEA,EAAExF,IAAiB+6B,CAAC,CACtI,SAASg0R,IAAI9uT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAExF,EAAE49K,GAAG2M,GAAIykI,IAAI78S,GAAG,KAAK3M,EAAEo4K,GAAG2M,GAAI0kI,IAAI98S,GAAG,KAAQqd,GAAG2/J,GAAI6/H,IAAI/uT,EAAED,GAAGmvL,GAAI8/H,IAAIhvT,EAAEuF,KAAQ2pL,GAAI8/H,IAAIhvT,EAAED,GAAGmvL,GAAI6/H,IAAI/uT,EAAEuF,GAAG,CACrI,SAASg3N,IAAIv8N,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAe,IAAbv1B,EAAE,KAAKu1B,EAAE96B,EAAEkS,EAAQ4oB,GAAE,CAAiB,GAAhB/6B,EAAEC,EAAEA,EAAEk5S,GAAGhnS,EAAE4oB,EAAE/6B,GAAMwvB,GAAM,GAAHxvB,EAAM,OAAO+6B,EAAK/6B,GAAG,EAAG+6B,EAAEA,EAAE96B,EAAE,IAAQuF,EAAEu1B,EAAEA,EAAEA,EAAE96B,EAAE,GAAG,CAAC,OAAOuF,CAAC,CACtI,SAASk3N,IAAIz8N,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAe,IAAbv1B,EAAE,KAAKu1B,EAAE96B,EAAEkS,EAAQ4oB,GAAE,CAAiB,GAAhB/6B,EAAEC,EAAEA,EAAEk5S,GAAGhnS,EAAE4oB,EAAE/6B,GAAMwvB,GAAM,GAAHxvB,EAAM,OAAO+6B,EAAK/6B,GAAG,EAAG+6B,EAAEA,EAAE96B,EAAE,IAAQuF,EAAEu1B,EAAEA,EAAEA,EAAE96B,EAAE,GAAG,CAAC,OAAOuF,CAAC,CACtI,SAAS8wS,IAAIr2S,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAgG,OAA9FpN,GAAE,EAuiDlC,SAAavF,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAE,GAAGyP,EAAEhT,EAAEuvB,EAAErd,GAAGtS,EAAEI,EAAEuvB,EAAEA,GAAIrvB,EAAEy9K,GAAG4qB,IAAIv1L,GAAGg1L,MAAMinH,MAAM,IAAM/uT,GAAW,GAARA,EAAE++K,MAAS/+K,EAAE+/L,GAAGrgM,KAAMwD,EAAE4P,EAAE3R,IAAI49P,MAAMg4B,MAAMr3R,EAAEyB,GAAG41R,IAAIjjR,EAAE2pK,GAAG4qB,IAAIv1L,EAAEu/P,KAAK,IAAI7/P,EAAEirK,GAAG4qB,IAAI3oM,EAAE2yQ,KAAK,IAAI1+P,EAAEG,GAAGtB,EAAEuB,IAAID,GAAGA,GAAGhB,KAAKN,GAAGA,GAAG9S,EAAEyoB,EAAE6mS,IAAIl8S,GAAGysK,MAAMM,MAAM5uK,EAAE+9S,IAAItvT,EAAEinM,KAAK5yL,GAAKi7S,IAAIl8S,EAAE6zL,MAAMqoH,IAAItvT,EAAEmgL,KAAMx8K,EAAE0Q,GAAGJ,GAAGwU,GAAGlX,EAAE/N,GAAGG,IAAIyP,EAAE3R,IAAI49P,MAAMi4B,MAAMt3R,EAAEyB,GAAG4iQ,KAAKrkQ,EAAEyB,IAAI49P,MAAMi4B,MAAMlkR,EAAE3R,GAAG4iQ,IAAK,OAAO,EAAM5iQ,EAAErB,EAAEuvB,EAAErd,GAAG4oB,EAAE96B,EAAEuvB,EAAEA,GAAGhqB,EAAE4pT,IAAInvT,EAAEuF,EAAElE,EAAEy5B,GAAG2kJ,MAAMG,MAAM5hL,EAAEmxT,IAAInvT,EAAEhC,EAAEqD,EAAEy5B,EAAE4kJ,KAriBnc,SAAa1/K,EAAEkS,EAAEqd,GAAGvvB,EAAED,EAAE,EAAEC,EAAEkS,EAAE,EAAEA,EAAE7Q,IAAI49P,MAAMi4B,MAAM3nQ,EAAEluB,GAAG61R,KAAKv5G,GAAG4qB,IAAIr2L,GAAG81L,MAAM0/C,MAAM,KAAK/pE,GAAG4qB,IAAIh5K,EAAEm4N,KAAK,MAAM6P,GAAIrlP,GAAGE,IAAIqtK,MAAMM,KAAKqvI,IAAIpvT,EAAEkS,EAAEqd,GAAG6/R,IAAIpvT,EAAEuvB,EAAErd,IAAIA,EAAE7Q,GAAG61R,KAAK3nQ,EAAEluB,GAAG41R,IAAI1/B,GAAIrlP,GAAGE,IAAIqtK,MAAMM,KAAM//K,EAAED,EAAE,EAAIC,EAAEkS,EAAE,EAAGqd,EAAEluB,GAAG61R,KAAKhlR,EAAE7Q,GAAG41R,MAAM1/B,GAAIhoO,GAAGnd,IAAIqtK,MAAMM,KAAM//K,EAAEkS,EAAE,EAAIlS,EAAED,EAAE,GA9zBzQ,SAAaC,EAAEkS,EAAEqd,GAAMrd,EAAE7Q,IAAI49P,MAAMgF,MAAM10O,EAAEluB,GAAG41R,MAAKj3R,EAAED,EAAE4hT,GAAIzvS,GAAGutK,MAAMonB,MAAM7mM,EAAEkS,EAAEyvS,GAAIzvS,EAAE6tK,MAAQxwJ,EAAEluB,GAAG4iQ,KAAK/xP,EAAE7Q,GAAG41R,MAAKj3R,EAAED,EAAE4hT,GAAIpyR,GAAGkwJ,MAAMM,MAAM//K,EAAEkS,EAAEyvS,GAAIpyR,EAAEs3K,KAAK,CA8zBuHwoH,CAAIrvT,EAAEkS,EAAEqd,EAAE,CAqiBiL+/R,CAAItvT,EAAE86B,EAAEz5B,EAAEy5B,GAAG1oB,EAAEuoS,GAAI36S,EAAEkS,EAAE7Q,EAAEy5B,GAAG6iJ,GAAGp4K,EAAEvF,EAAE,IAAIA,EAAE29K,GAAG3/K,EAAEgC,EAAE,IAAIA,EAAEA,EAAE86B,EAAE/6B,EAAE0D,EAAEk3S,GAAI36S,EAAEkS,EAAE4oB,EAAEz5B,GAAGs8K,GAAGp4K,EAAE2M,EAAE,IAAIlS,EAAE29K,GAAG3/K,EAAEkU,EAAE,IAAIlS,EAAEA,EAAE86B,EAAE5oB,EAAKlS,EAAEA,IAAG8T,EAAE6pK,GAAG4qB,IAAIlnM,EAAEqmP,KAAK,IAAI/0O,EAAEgrK,GAAG4qB,IAAIztK,EAAE4sN,KAAK,IAAmBt1O,GAAGurK,IAAlB59K,EAAEwvT,IAAIvvT,EAAE2S,EAAEmB,EAAEnB,IAAW3S,EAAE,IAAIA,EAAEyD,GAAGk6K,GAAG59K,EAAEmS,EAAE,IAAIlS,GAAE,OAAOoS,EAAE3O,CAAC,CAviDjnB+rT,CAAIxvT,EAAE86B,EAAEvL,EAAExvB,MA8DrD,SAAaC,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEkqT,IAAIzvT,EAAEuF,EAAE2M,EAAEqd,GAAGkwJ,MAAMG,MAAM6vI,IAAIzvT,EAAEhC,EAAEkU,EAAEqd,EAAEmwJ,KAAQ1/K,EAAEA,IAAGuF,EAAEo4K,GAAG4qB,IAAIr2L,GAAG81L,MAAM0/C,MAAM,IAAI3nP,EAAE49K,GAAG4qB,IAAIh5K,EAAEm4N,KAAK,IAAIoQ,GAAI93P,EAAE2S,EAAEpN,EAAExF,GAAG,CA9DlF2vT,CAAI1vT,EAAE86B,EAAE96B,EAAEA,EAAEkS,GAAGqd,GAAGvvB,EAAEA,EAAEkS,GAAGnS,IAAa4S,GAATmoB,EAAE96B,EAAEA,EAAEkS,IAAOnS,GAAG+6B,EAAE/6B,GAAG+6B,EAAEvL,GAAGuL,EAAEvL,GAAG5c,EAAEpN,GAAE,GAAYA,CAAC,CACtI,SAAS+sQ,IAAItyQ,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAM,IAAJkP,EAAEpN,EAAQ2M,EAAEA,GAAGA,EAAEqd,GAAGuL,EAAE6iJ,GAAG41D,GAAIrhO,GAAG,IAAIzO,EAAEk6K,GAAGwrC,GAAIruL,EAAE/6B,GAAGs7M,GAAG,GAAG,IAAIr7M,EAAED,EAAE0D,EAAEL,GAAGuP,IAAI4c,EAAEA,EAAEA,EAAEA,EAAErxB,QAAQuF,EAAE,OAAOkP,CAAC,CACrI,SAASmzM,IAAI9lN,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAA0D,OAAxDkP,EAAE3S,EAAEqB,EAAEoC,EAAEyO,EAAE7Q,EAAgBkE,EAAEg7K,GAAGosI,IAAI3sT,EAAvBD,EAAEwvB,EAAE5c,EAAEA,GAAGlP,EAAEkP,KAAkBmoB,EAAEylJ,GAAGosI,IAAIz6S,EAAEnS,IAAWkzI,EAAK3/H,KAAKugB,KAAKgtI,GAAIt7J,GAAGA,IAAIs7J,GAAI/lI,GAAGA,GAAG,CAErI,SAAS60R,IAAI3vT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAIoN,EAA2B,IAAzBpN,EAAEo4K,GAAG+5B,GAAI13M,EAAEkS,EAAEqd,GAAG,KAAKxvB,EAAE,EAAM4S,EAAE,IAAIgzJ,GAAIzzJ,EAAEE,GAAGO,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAA0BqH,EAAfo4K,GAAGC,GAAIjrK,GAAG,KAAS5S,EAAEqD,MAAMrD,EAAE,OAAOA,CAAC,CACtI,SAAS6vT,IAAI5vT,GAAG,IAAIkS,EAAEqd,EAAuB,OAAM,OAA3Brd,EAAEyrK,GAAG8sC,GAAIzqN,EAAEA,EAAE,GAAG,OAA+CsjQ,IAAIpxP,EAAE,EAApCqd,EAAE0uJ,GAAGk8H,IAAGC,IAAI,IAAIloS,EAAEhU,OAAO,EAAE,GAAa,EAAEgU,EAAEhU,QAAeqxB,GAAcqwM,GAAI,CAEtI,SAASiwF,IAAI7vT,EAAEkS,GAAG,IAAMnS,EAAI,IAAIA,EAAE,IAAI+uO,GAAG7hB,GAAGm1E,GAAIpiS,GAAGA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAA4B,GAArB49K,GAAGwtC,GAAGprN,GAAG,IAAQA,EAAE/B,EAAOuxB,GAAGrd,EAAG,OAAO,EAAO,OAAO,CAAI,CACtI,SAAS0wQ,IAAG1wQ,EAAEqd,GAAG,IAAMhqB,EAAE,GAAGskL,GAAGt6J,EAAE,KAAK,CAAChqB,EAAEo4K,GAAGpuJ,EAAE,KAAK,IAAc,OAAU,GAAlBrd,EAAE49S,GAAGvqT,EAAc,CAAC,MAAMvF,KAAY,IAAI6pL,GAAb7pL,IAAE8pL,GAAI9pL,KAAY,KAAK,MAAMkzK,GAAIlzK,IAAE,CAAC,CAAC,OAAO,CAAK,CAEvI,SAAS+vT,IAAI/vT,EAAEkS,GAAG,OAAOuyM,KAAKA,KAAKiyE,GAAGC,MAAM1jJ,EAAK3/H,KAAKskB,IAAI53B,EAAEkS,IAAIykR,KAAK32R,GAAGkS,GAAGvC,MAAM3P,IAAI2P,MAAMuC,GAAG,EAAElS,EAAEkS,GAAG,EAAElS,EAAEkS,EAAE,EAAEqtM,GAAG5vM,MAAM3P,GAAG2P,MAAMuC,KAAK,CAAC,CACrI,SAAS89S,IAAIhwT,EAAEkS,GAAG,OAAOuyM,KAAKA,KAAKiyE,GAAGC,MAAM1jJ,EAAK3/H,KAAKskB,IAAI53B,EAAEkS,IAAIykR,KAAK32R,GAAGkS,GAAGvC,MAAM3P,IAAI2P,MAAMuC,GAAG,EAAElS,EAAEkS,GAAG,EAAElS,EAAEkS,EAAE,EAAEqtM,GAAG5vM,MAAM3P,GAAG2P,MAAMuC,KAAK,CAAC,CACrI,SAAS8/R,IAAIhyS,EAAEkS,GAAG,OAAOuyM,KAAKA,KAAKiyE,GAAGC,MAAM1jJ,EAAK3/H,KAAKskB,IAAI53B,EAAEkS,IAAIykR,KAAK32R,GAAGkS,GAAGvC,MAAM3P,IAAI2P,MAAMuC,GAAG,EAAElS,EAAEkS,GAAG,EAAElS,EAAEkS,EAAE,EAAEqtM,GAAG5vM,MAAM3P,GAAG2P,MAAMuC,MAAM,CAAC,CACtI,SAAS+jN,IAAIj2N,EAAEkS,GAAW,IAAR,IAAIqd,EAAE,GAASrd,EAAEqd,IAAU,IAANrd,EAAEqd,IAAQA,IAAiB,IAAb,IAAIxvB,EAAEmS,EAAEqd,KAAUA,EAAErd,EAAEhU,OAAOqxB,IAASrd,EAAEqd,IAAU,IAANrd,EAAEqd,KAAiBxvB,GAAGC,EAAEkS,EAAEqd,IAAG,OAAOxvB,CAAC,CACtI,SAAS8oN,IAAI7oN,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAA+B,IAAvB6sQ,GAAIttQ,EAAV4oB,EAAE5oB,EAAEqd,EAAUvvB,EAAE9B,QAAQyU,EAAE,GAAOpN,EAAE2M,EAAE3M,EAAEu1B,GAAI/6B,EAAEkzI,EAAK3/H,KAAKsgB,IAAIruB,EAAE,IAAMu1B,GAAGnoB,GAAGquO,GAAIhhP,EAAEkM,MAAM3G,EAAExF,IAAIwF,EAAExF,EAAE,OAAO4S,CAAC,CACvI,SAASs9S,IAAIjwT,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAE,GAAM,MAAH96B,EAAQ,OAAO,KAAe,IAAV86B,EAAE,IAAIw3I,GAAiBvyK,EAAE,EAAEwF,GAAbgqB,EAAEiqR,GAAIx5S,IAAW9B,OAAO6B,EAAEwF,IAAIxF,EAAUg2K,GAAIj7I,EAAEo1R,IAAX3gS,EAAExvB,IAAe,IAAO,OAAO+6B,CAAC,CACtI,SAASq1R,IAAInwT,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAE,GAAM,MAAH96B,EAAQ,OAAO,KAAe,IAAV86B,EAAE,IAAIw3I,GAAiBvyK,EAAE,EAAEwF,GAAbgqB,EAAEiqR,GAAIx5S,IAAW9B,OAAO6B,EAAEwF,IAAIxF,EAAUg2K,GAAIj7I,EAAEo1R,IAAX3gS,EAAExvB,IAAe,IAAO,OAAO+6B,CAAC,CACtI,SAASs1R,IAAIpwT,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAE,GAAM,MAAH96B,EAAQ,OAAO,KAAe,IAAV86B,EAAE,IAAIw3I,GAAiBvyK,EAAE,EAAEwF,GAAbgqB,EAAEiqR,GAAIx5S,IAAW9B,OAAO6B,EAAEwF,IAAIxF,EAAUg2K,GAAIj7I,EAAEo1R,IAAX3gS,EAAExvB,IAAe,IAAO,OAAO+6B,CAAC,CACtI,SAASu1R,IAAIrwT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAE,GAAGvF,EAAEuvB,EAAGyyL,GAAIhiN,EAAEuvB,EAAErd,QAAmB,IAAXqd,EAAErd,EAAE0J,GAAI5b,GAAOuF,EAAE,IAAIogK,GAAI3lK,EAAED,GAAGwF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA0BmyT,IAAjBtwT,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAWqW,GAAI7b,GAAGwvB,EAAI,CACvI,SAAS+gS,IAAItwT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAE,GAAGvF,EAAEuvB,EAAG0yL,GAAIjiN,EAAEuvB,EAAErd,QAAmB,IAAXqd,EAAErd,EAAEu4N,GAAIzqO,GAAOuF,EAAE,IAAIogK,GAAI3lK,EAAEA,GAAGuF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA0BoyT,IAAjBvwT,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAWklO,GAAI1qO,GAAGwvB,EAAI,CAEvI,SAASsvQ,IAAI7+R,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAiE,OAA7DC,EAAEs4O,MAA4C/oN,EAAEu9R,IAAI9sT,IAA7CD,EAAK,MAAHmS,EAAQ,EAAEqxM,GAAGrxM,IAAQgmL,KAAKl4L,EAAED,EAAE7B,OAAiB6B,EAAEmS,KAAS0sR,GAAI5+R,EAAEuvB,GAAUA,EAAEurL,MAAiB,IAAK,CACvI,SAASle,IAAI58L,GAAG,IAAIkS,EAAEqd,EAAkB,IAAhBA,EAAEghS,IAAIvwT,GAAGkS,EAAE,KAAgB,GAALlS,EAAEuvB,GAAMotK,IAAI38L,GAAOkS,IAAMgyM,MAAMA,MAAwBssG,IAAjCt+S,EAAqB,IAAI+xM,GAAI,GAAU10L,GAAGA,EAAErd,GAAEqd,EAAEkhS,GAAGF,IAAIvwT,IAAI,OAAOuvB,CAAC,CACvI,SAASsoL,IAAI73M,GAAsC,GAAvB,OAAO0nO,OAAO1nO,EAAEA,GAAa,MAAMkzK,GAAI,IAAIyP,GAAI,mCAAoD,OAAf+tI,IAAI5gE,GAAG9vP,EAAE0nO,KAAc,CACvI,SAASw3E,IAAIl/S,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAW,KAATA,EAAEC,EAAEgtT,MAAgB,IAAJ96S,EAAE,EAAMqd,EAAEvvB,EAAE2wT,KAAKphS,EAAEA,EAAEA,EAAEohS,KAAK,CAAC,KAAKz+S,EAAE0+S,IAAK,OAAOrhS,EAAEshS,KAAc,IAAT9wT,EAAEwvB,EAAEy9R,OAAaz9R,GAAGvvB,EAAG,KAAM,CAAE,OAAOD,CAAC,CACxI,SAAS+wT,IAAI9wT,GAAS,OAANovP,KAASvlE,GAAG7pL,EAAE,KAAa29K,GAAG+5B,GAAI43C,IAAIkC,KAAI,KAAKu/D,GAAG/wT,GAAM4gM,GAAI0uD,IAAItmK,GAAGhpF,IAAY29K,GAAG+5B,GAAI43C,IAAItmK,GAAGhpF,IAAI,KAAK+wT,GAAG/wT,GAAU,IAAI,CAEvI,SAASgxT,IAAIhxT,EAAEkS,GAAG,GAAGA,EAAEqd,GAAGvvB,EAAG,OAAOkS,EAAEnS,EAAO,GAAGmS,EAAEnS,GAAGC,EAAG,OAAOkS,EAAEqd,EAAE,MAAM2jJ,GAAI,IAAI2O,GAAI,kDAAkD,CACvI,SAASovI,IAAIjxT,EAAEkS,GAAG,OAAGlS,EAAEuF,EAAE2M,EAAE3M,EAAU,EAAKvF,EAAEuF,EAAE2M,EAAE3M,GAAW,EAAKvF,EAAED,EAAEmS,EAAEnS,EAAUC,EAAEuF,EAAKvF,EAAED,EAAEmS,EAAEnS,GAAWmS,EAAE3M,EAASvF,EAAEuF,EAAE00S,GAAIj6S,EAAEA,EAAEkS,EAAElS,EAAEA,EAAED,EAAE,CACvI,SAASmxT,IAAIlxT,GAAG,OAAGA,GAAG,IAAIA,EAAE,GAAGizI,EAAK3/H,KAAKsgB,IAAI,GAAG,IAAY5zB,EAAE,GAAMA,GAAG,IAAIA,EAAE,GAAWA,EAAE,GAAG,GAAMA,GAAG,IAAIA,EAAE,GAAWA,EAAE,GAAG,IAAW,CAAC,CACxI,SAASmxT,IAAGnxT,EAAEkS,GAAG,IAAIqd,EAAE,OAAGwrL,GAAG7oM,KAAK6oM,GAAG/6M,MAAoB6pL,GAAG33K,EAAE,OAAkBqd,EAAEouJ,GAAGzrK,EAAE,KAAS+sK,MAAMj/K,EAAEi/K,MAA0Bj/K,EAAEmgM,GAAG5wK,GAAE,CAEzI,SAAS+pN,IAAGt5O,EAAEkS,GAAG,IAAIqd,EAAExvB,EAA4C,IAAvC63L,GAAI1lL,EAAElS,EAAE9B,QAAXqxB,EAAmBvvB,EAAEqf,WAAWnN,GAAInS,EAAEmS,EAAE,EAAQnS,EAAEC,EAAE9B,SAAS05L,GAAI73L,EAAEC,EAAE9B,QAAQ8B,EAAEqf,WAAWtf,IAAIwvB,MAAMxvB,EAAE,OAAOA,EAAEmS,CAAC,CACzI,SAASo0L,IAAItmM,GAAG,OAAOA,EAAE2S,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,EAAK,QAAQ,OAAO,EAAO,CAEtI,SAASivQ,IAAI5hR,EAAEkS,GAAG,GAAGlS,EAAEA,EAAE,EAAG,MAAMkzK,GAAI,IAAI4O,GAAI,oEAAiF,OAAbquC,GAAInwN,EAAEA,EAAEA,EAAEkS,GAAUlS,CAAC,CACvI,SAASoxT,IAAIpxT,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAiB,GAAZ5oB,EAAEqd,EAAErxB,SAAkBqH,EAy6BvD,SAAavF,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAA4J,IAA1J4c,EAAE,IAAI+iJ,GAAI/sK,EAAE4nR,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAIvtM,EAAE,KAAK,IAAI4rJ,IAAK9wH,EAAEqyP,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAIvtM,EAAE,KAAK,IAAI6rJ,IAAKl5I,EAhzDhI,SAAa3S,GAAG,IAAIkS,EAAoD,OAAlD6nL,GAAI/5L,GAAGkS,EAAE+rK,GAAGgV,IAAGwzD,IAAI,GAAG,EAAE,GAAG,GAAGntD,GAAIt5L,EAAEA,EAAE,IAAI+mK,GAAI70J,IAAWA,CAAC,CAgzDkDm/S,CAj8DlI,SAAarxT,GAA2C,OAAlC8/O,GAAI9/O,GAAqC,IAAIs2N,GAAIt2N,EAAxC,IAAIijO,GAAIjjO,EAAEA,EAAEA,EAAEuF,EAAQ,EAANvF,EAAEA,EAAED,GAAwB,CAi8D2DuxT,CAAI5tE,GAuD1I,SAAY1jP,GAAG,IAAIkS,EAAEqd,EAAIhqB,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAuC,KAAnC,EAAMF,EAAE,IAAIqd,EAAE,EAAEuL,EAAE,IAAIo+L,GAAGl5N,EAAE9B,QAAgBF,EAAE,EAAEoU,GAAR3O,EAAEzD,GAAU9B,OAAOF,EAAEoU,IAAIpU,EAAe8hP,GAAZntO,EAAElP,EAAEzF,KAAe,EAAU+7L,GAAIpnL,GAAPpN,EAAUoN,EAAE3S,EAAG+1K,GAAIj7I,EAAE96B,EAAE+jL,GAAGx+K,IAAI2M,GAAG3M,EAAEqsQ,KAAKriP,EAAE0tR,GAAG1tR,EAAEhqB,EAAEosQ,MAAM,OAAOh0F,GAAGA,GAAG83D,GAAI,IAAIrrB,GAAI,KAAKm6C,IAAG,IAAIh3D,IAAKn5B,KAAK02I,IAAGhwR,EAAE96B,IAAI,IAAI,IAAIi0I,EAAG/hI,EAAEqd,IAAI,IAAIkzI,GAAGziK,IAAI,KAAK,IAAI,CAvD1IuhH,CAAGg9D,GAAGC,GAAG+yI,IAAG,GAAGpzI,IAAI,IAAI,EAAE,CAAC54K,EAAEu1B,KAAK,IAAIgxH,MAAW/rJ,EAAE,EAAEA,EAAE4S,EAAEzU,OAAO6B,IAAK4S,EAAE5S,GAAG4S,EAAE5S,EAAE,IAAI,EAAEmS,GAAG6jK,GAAIxmJ,EAAE,IAAI4xM,GAAIxuN,EAAE5S,EAAE,GAAGmS,EAAES,EAAE5S,GAAGmS,IAAI,OAAOqd,CAAC,CAz6BnNiiS,CAAIjiS,EAAExvB,GAAG+6B,EA+rBlE,SAAa96B,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAY,IAAVq3B,EAAE,IAAIylL,GAAQhxL,EAAE,IAAIo2I,GAAI3lK,GAAGuvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAA0ByU,GAAjBT,EAAEyrK,GAAGC,GAAIruJ,GAAG,MAASvvB,EAAEyD,EAAEyO,EAAEA,EAAK4oB,EAAE96B,EAAEmH,GAAGwL,IAAImoB,EAAE96B,EAAEmH,GAAG1D,KAAa8B,EAAEoN,EAAE5S,EAAE0D,EAAKkP,EAAEpN,EAAE2M,EAAES,EAAEP,EAAEF,EAAE,GAAGzO,EAAE8B,EAAE2M,EAAEzO,EAAE2O,EAAEF,GAAG,IAAG3M,EAAE9B,EAAE1D,EAAE4S,GAAEmoB,EAAE96B,EAAE65N,GAAGt0N,EAAEu1B,GAAGv1B,EAAEyO,EAAEjU,GAAE,OAAO+6B,CAAC,CA/rBvJ22R,CAAIv/S,GAAGwvL,GAAIszD,GAAI,IAAI5qC,GAAI,KAAK,IAAI7c,GAAIzyK,EAAE,IAAI,IAAI6wH,IAAK,IAAIu4F,GAAIlkP,EAAEuvB,EAAEhqB,EAAExF,IAAG,CACxI,SAAS2xT,IAAI1xT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAe,IAATC,EAAEgtN,GAAG96M,GAAa,MAAHqd,EA6xB7C,SAAavvB,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAkB,GAAhB+B,EAAE4mT,GAAS,IAAL3mT,EAAEgtN,IAAc,GAAHjtN,EAAMC,EAAE4sN,GAAG,UAAqB,GAAX9xL,EAAEixP,GAAG/rR,EAAE4sN,IAAU,GAAH7sN,EAAMwF,EAAEmoS,IAAI1tS,EAAEkS,GAAGlS,EAAE4sN,GAAG9xL,EAAK,GAAHv1B,EAAK,EAAE,OAAO,CAAwB,IAAvBoN,EAAEsrK,GAAG6Q,IAAG3Q,IAAI,EAAEp+K,EAAE,EAAE,EAAE,GAAOwvB,EAAE,EAAE9rB,EAAE,EAAEzF,EAAE,EAAEuxB,GAAG,IAAIA,IAAI,EAAGA,GAAGrd,IAAIzO,EAAY,IAATzD,EAAEgtN,GAAGz9L,KAAQ5c,EAAE3U,KAAK88B,EAAEr3B,MAAMzD,EAAE4sN,GAAGj6M,CAAC,CAAE3S,EAAEgtN,KAAK96M,CAAC,CA7xBtLy/S,CAAI3xT,EAAEkS,IAAuB,IAAfnS,EAAE2tS,IAAI1tS,EAAEkS,IAAUlS,EAAE4sN,GAAGr9L,EAAGo3K,GAAGolF,GAAG/rR,EAAE4sN,IAAI7sN,EAAEwvB,GAAY,MAAHA,GA8gCrH,SAAavvB,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAkB,GAAhB7M,EAAEohT,GAAS,IAAL3mT,EAAEgtN,IAAc,GAAHznN,EAAMvF,EAAE4sN,GAAGr9L,MAAM,CAAC,GAAM,GAAHhqB,EAAM9B,EAAEw6K,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAoB,GAAfuvH,IAAI1tS,EAAEkS,IAAYzO,EAAE,GAAG8rB,EAAE9rB,EAAE,GAAGzD,EAAE4sN,KAAQnpN,EAAE,GAAGzD,EAAE4sN,GAAGnpN,EAAE,GAAG8rB,QAA0C,IAAlC9rB,EAAEw6K,GAAG6Q,IAAG3Q,IAAI,EAAE54K,EAAE,EAAE,EAAE,GAAGoN,EAAEo5Q,GAAG/rR,EAAE4sN,IAAQ7sN,EAAE,EAAE/B,EAAE,EAAEoU,EAAE,EAAErS,GAAG,IAAIA,IAAI,EAAGA,GAAGmS,EAAGzO,EAAE2O,KAAKmd,EAAa,IAATvvB,EAAEgtN,GAAGjtN,KAAQ0D,EAAE2O,KAAKO,EAAE3U,MAAOgC,EAAE4sN,GAAGnpN,CAAC,CAACzD,EAAEgtN,IAAI96M,CAAC,CA9gCxK0/S,CAAI5xT,EAAEkS,EAAEqd,EAAE,CACxI,SAASy8P,IAAIhsR,GAAG,IAAMuvB,EAA0G,OAA1F,IAAL,GAALvvB,EAAEgtN,KAAkE,IAAvDz9L,EAAsBunN,GAAjBn5D,GAAG8sC,GAAIzqN,EAAE,IAAI,KAAWA,EAAE2jL,MAAQmzD,GAAI92O,EAAE2jL,QAAa+tI,IAAI1xT,EAAE,GAAGi+K,GAAG6Q,IAAG3Q,IAAI,EAAE5uJ,EAAE,EAAE,IAAWvvB,CAAC,CAKxI,SAAS6xT,IAAI7xT,GAAG,IAAMuvB,EAAExvB,EAAM,IAAF,EAAMwvB,EAAE,IAAIo2I,GAAI3lK,EAAE2S,GAAG4c,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAASy/K,GAAGC,GAAIruJ,GAAG,MA8jD9E,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAc,GAA0C,KAAtDyF,EAAEzD,EAAEkS,EAAEA,EAAElS,EAAEA,EAAS29K,GAAG4qB,IAAIvoM,GAAGy6J,MAAMq3J,MAAM,KAAKn/S,GAAUmyM,GAAIrhN,EAAE,IAAIwiK,GAAI,IAAIptB,UAA2BisE,GAAIrhN,EAAE,IAAIwiK,GAAI,IAAIntB,KAAO,GAAkC,IAA3B6kC,GAAG4qB,IAAIvoM,EAAE+xT,KAAK,KAAKp/S,EAAUmyM,GAAIrhN,EAAE,IAAIm1I,IAAKksE,GAAIrhN,EAAE,IAAIs1I,IAAK+rE,GAAIrhN,EAAE,IAAI80I,SAA0BusE,GAAIrhN,EAAE,IAAIm1I,IAAKksE,GAAIrhN,EAAE,IAAIk1I,IAAM,OAAOglC,GAAG4qB,IAAIvoM,EAAEgyT,KAAK,KAAKr/S,GAAG,KAAK,EAAE3U,EAAE,IAAIo7I,GAAI,MAAM,KAAK,EAAEp7I,EAAE,IAAIk7I,GAAI,MAAM,KAAK,EAAEl7I,EAAE,IAAIm7I,GAAI,MAAM,KAAK,EAAEn7I,EAAE,IAAIi7I,GAAI,MAAM,KAAK,EAAEj7I,EAAE,IAAI+pK,GAAI,IAAI5uB,IAAK,MAAM,KAAK,EAAEn7I,EAAE,IAAI+pK,GAAI,IAAI7uB,IAAK,MAAM,KAAK,EAAEl7I,EAAE,IAAI2wM,GAAI,IAAI5mC,GAAI,IAAI7uB,IAAK,IAAI6uB,GAAI,IAAI5uB,KAAM,MAAM,KAAK,EAAEn7I,EAAE,IAAI2wM,GAAI,IAAI5mC,GAAI,IAAI9uB,IAAK,IAAI8uB,GAAI,IAAI5uB,KAAM,MAAa,QAAQn7I,EAAE,IAAI+pK,GAAI,IAAI9uB,IAAM,IAAItmI,EAAE,IAAIgzJ,GAAIliK,GAAGkP,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAQ,CAAmD,IAAlD48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAASpN,EAAE,EAAEgqB,EAAE,IAAIinL,GAAIwB,GAAlBj4M,EAAE,GAAuBi4M,GAAIzyM,IAAU0sT,IAAI//S,EAAE4oB,EAAE/6B,EAAEwF,IAAIgqB,EAAEouJ,GAAG3/K,EAAEk0T,GAAG3iS,EAAEuL,GAAG,IAAI/6B,EAAE49K,GAAGpuJ,EAAEvvB,EAAE,IAAIA,EAAEuF,EAAEo4K,GAAGpuJ,EAAErd,EAAE,IAAIlS,EAAEmyT,IAAIjgT,EAAE4oB,EAAE/6B,EAAEwF,EAAE,CAAC,EA9jD5qB6sT,CAA5BryT,EAAE,IAAIsyT,IAAIryT,EAAE2S,EAAE2tK,GAAItgL,EAAEA,GAAGA,EAAEuvB,IAAUvvB,EAAE2S,EAAE5S,EAAEmS,EAAElS,EAAED,EAAEA,EAAEC,CAAC,CACzI,SAASknP,IAAIlnP,EAAEkS,EAAEqd,GAAGrd,EAAEA,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAEA,GAAGqd,EAAEvvB,GAAGkS,EAAEqd,EAAE0jH,EAAK3/H,KAAKugB,IAAI3hB,EAAEqd,EAAEA,EAAEvvB,EAAEA,EAAEA,GAAGkS,EAAEnS,EAAEkzI,EAAK3/H,KAAKugB,IAAI3hB,EAAEnS,GAAGwvB,EAAErd,GAAGA,EAAElS,EAAEizI,EAAK3/H,KAAKugB,IAAI3hB,EAAElS,EAAEuvB,EAAErd,EAAElS,EAAEkS,EAAE,CAEzI,SAASogT,IAAItyT,EAAEkS,GAAU,OAAP2uJ,GAAI7gK,GAAS,MAAHkS,MAAyBmqN,GAAIr8N,EAAEkS,IAAuBlS,EAAE9B,QAAQgU,EAAEhU,QAAQm+N,GAAIr8N,EAAEoR,cAAcc,EAAEd,eAAc,CAE1I,SAAS2hS,IAAI/yS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAE,IAAIA,EAAE,IAAI6qI,GAAIp2I,EAAEvvB,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAASqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAK/6B,EAAE,IAAIulN,GAAI3nC,GAAG+5B,GAAI13M,EAAEA,EAAEuF,EAAE2M,GAAG,KAAK6jK,GAAI7jK,EAAElS,EAAED,GAAGgzS,IAAI/yS,EAAED,EAAEwF,EAAG,CAC1I,SAASskO,IAAI7pO,GAAG,IAAIkS,EAAEqd,EAAE,OAAG29K,GAAIltM,GAAG,KAAK,GAAGktM,GAAIltM,EAAE,KAAK,GAAGkS,EAAE+3M,GAAIjqN,GAAG,MAAIuvB,GAAGq5M,KAAMC,KAAK32N,MAAQqd,EAAEs5M,IAAI32N,GAAG,IAAI6yJ,GAAI/kK,IAAWuvB,GAAS,IAAIw1I,GAAI/kK,EAAE,CAC1I,SAASuyT,IAAIvyT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAc,OAAZwvB,EAAErd,EAAEk8N,GAAGpuO,EAAEA,KAA0E,OAAjED,EAAE+jL,GAAGyqD,MAAMh/M,EAAErd,IAAIqd,EAAErd,EAAE,IAAIyhN,IAAK6a,MAAMC,KAAKC,IAAGn/M,IAAIA,EAAErd,GAAG4hL,OAAyB/zL,EAAUmS,EAAE6sL,IAAI,CAE1I,SAASyzH,IAAIxyT,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAE,IAAdo5M,KAAkBp5M,EAAE,IAAI+uO,GAAG7hB,GAAGu5F,GAAIxmT,GAAGA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAAoB,IAAfwvB,EAAEouJ,GAAGwtC,GAAGprN,GAAG,KAASA,EAAE/B,GAAGkU,GAAGqd,EAAEA,EAAEvxB,GAAGkU,EAAG,OAAOqd,EAAG,OAAO,IAAI,CAC1I,SAASggM,IAAIvvN,EAAEkS,EAAEqd,GAAGjrB,KAAKirB,EAAEvvB,EAAEsE,KAAKw2B,EAAE,IAAIw3I,GAAIhuK,KAAKiB,EAAE,IAAIqjL,GAAItkL,KAAK8N,EAAE,IAAI+2N,GAAI7kO,KAAK1E,EAAE,IAAIupO,GAAI7kO,KAAK4N,EAAEA,EAAE5N,KAAKqO,EAAE,IAAIu1L,GAAIh2L,EAAEqd,EAAErd,EAAEnS,EAAEmS,EAAEA,EAAEA,EAAElS,GAAGsE,KAAKtE,EAAEuvB,CAAC,CAC1I,SAASkjS,IAAIzyT,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAyC,IAAvCjB,KAAKtE,EAAE,IAAIugN,GAAIj8M,KAAKvE,EAAE,IAAI02K,GAAInyK,KAAKiB,EAAE,EAAUxF,EAAE,EAAEwF,GAARgqB,EAAEvvB,GAAU9B,OAAO6B,EAAEwF,IAAIxF,EAAGmS,EAAEqd,EAAExvB,IAAIuE,KAAKw2B,IAAIx2B,KAAKw2B,EAAE5oB,GAAG0qP,GAAIt4P,KAAK4N,EAAG,CAC1I,SAASwgT,IAAI1yT,GAAG+iN,MAAmB,GAAV/iN,EAAE9B,QAAWoG,KAAKiB,EAAE,EAAEjB,KAAKvE,EAAE,EAAEuE,KAAKtE,EAAEu+K,GAAGC,GAAG4U,IAAG,GAAGsW,IAAI,GAAG,GAAG,CAAC,MAASplM,KAAKiB,EAAE,EAAEjB,KAAKvE,EAAEC,EAAE9B,OAAOoG,KAAKtE,EAAEA,EAAEq6P,GAAI/1P,MAAM,CAC3I,SAASquT,IAAI3yT,EAAEkS,EAAEqd,GAAGipJ,GAAIz5K,KAAKuF,MAAMA,KAAKtE,EAAEi+K,GAAGmuI,IAAGhlH,IAAI,KAAKosE,KAAMj1F,GAAGC,GAAGi1F,IAAG,GAAGxnC,IAAI,IAAI,EAAE,CAACynC,IAAIC,IAAIC,OAAO11Q,OAAO,EAAE,GAAGoG,KAAK4N,EAAElS,EAAEsE,KAAKvE,EAAEmS,EAAE5N,KAAKirB,EAAEA,CAAC,CAC3I,SAASqjS,IAAI5yT,GAAGsE,KAAKvE,EAAE,IAAIuyK,GAAIhuK,KAAKiB,EAAE,IAAIi7M,GAAIl8M,KAAKirB,EAAE0uJ,GAAGmV,IAAGsW,IAAI,IAAIjqB,MAAMlB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC1/C,IAAI/mB,IAAIL,IAAImnB,IAAIjnB,OAAO1hL,OAAO,GAAG,GAAGoG,KAAK4N,EAAElS,CAAC,CAC3I,SAAS6yT,IAAI7yT,GAAG,IAAQD,EAAEwF,EAAEu1B,EAAEnoB,EAA4D,IAA9Bo1L,GAA5Bp1L,EAAEgrK,GAAG4qB,IAAIvoM,GAAGgoM,MAAM0/C,MAAM,IAAUm3D,IAAI7+S,EAAEhC,EAAE4B,EAAEsS,GAAsB3M,EAAE,EAAEu1B,GAAR/6B,EAAby6P,GAAIx6P,EAAEuF,IAAmBrH,OAAOqH,EAAEu1B,IAAIv1B,EAAU6sP,GAALryP,EAAEwF,GAASoN,EAAG,CAC1I,SAASmgT,IAAI9yT,GAAG,IAAMuvB,EAAIhqB,EAAEu1B,EAAEnoB,EAA4D,IAA9Bo1L,GAA5Bx4K,EAAEouJ,GAAG4qB,IAAIvoM,GAAGgoM,MAAM0/C,MAAM,IAAUm3D,IAAI7+S,EAAEhC,EAAE4B,EAAEsS,GAAsB4oB,EAAE,EAAEnoB,GAARpN,EAAbi1P,GAAIx6P,EAAE2S,IAAmBzU,OAAO48B,EAAEnoB,IAAImoB,EAAUu3N,GAAL9sP,EAAEu1B,GAASvL,EAAG,CAE1I,SAASwjS,IAAI/yT,GAAG,IAAIkS,EAAK6oM,GAAGzC,IAAIt4M,GAAG+/J,MAAMizJ,SAASj4G,IAAIqjE,KAAME,QAAWxgE,GAAI99M,IAAwBkS,EAAEyrK,GAAG26B,IAAIwF,GAAI99M,GAAGgzT,KAAK,KAAK5nB,IAAIprS,EAAEgzT,IAAI9gT,IAAxDk5R,IAAIprS,EAAEgzT,IAAIx0C,KAAkD,CAE3I,SAASy0C,IAAIjzT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAE/6B,EAAEmS,EAAEqd,EAAEnsB,EAAE03B,EAAE5oB,EAAE9O,EAAEpD,EAAEkS,EAAEnS,GAAG+6B,GAAG,IAAIoxN,GAAIlsP,EAAEkS,GAAMqd,IAAGvvB,EAAEA,EAAED,GAAG+6B,GAAG,IAAIkxI,GAAI95J,IAAG3M,EAAEo4K,GAAG4qB,IAAIr2L,GAAG81L,MAAMuqE,MAAM,MAASqiB,IAAG50R,EAAED,EAAEwF,EAAE2M,GAAG,CAC3I,SAASghT,IAAIlzT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAyC,GAAvCwwK,GAAI8yE,IAAI7oP,GAAGkS,EAAE21M,GAAG7nN,GAAGuvB,EAAEouJ,GAAG+5B,GAAIoxC,IAAI9oP,GAAG,IAAU,IAAIuF,EAAEgqB,EAAEosL,KAAKp2M,EAAEg2M,MAAOx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,KAAmB,GAAftV,GAAI0iD,IAAI9oP,EAAE,IAAQmzT,IAAInzT,EAAEmS,EAAI,CAC3I,SAASihT,IAAInzT,EAAEkS,EAAEqd,GAAG,IAAIxvB,GAAGyuQ,KAnI3B,SAAaxuQ,GAAG,IAAIkS,EAAEqd,EAAE,GAAGvvB,EAAEkS,EAAG,OAAOlS,EAAEkS,EAAiB,IAAfqd,EAAEuoM,IAAI,KAAK93N,EAAED,EAAQwvB,GAAE,CAAgB,GAAfrd,EAAE4lN,IAAI,KAAKvoM,EAAErd,EAAQ,OAAOA,EAAEqd,EAAEuoM,IAAI,KAAKvoM,EAAExvB,CAAC,CAAQ8iM,IAAS,CAmIhGuwH,CAAIpzT,GAAG,GAAMyuQ,KAAiBC,KAAZ7rE,KAAM,GAAuB8rE,MAAM9rE,KAAM,OAAU9iM,EAAE,IAAIs/N,GAAIntN,IAAKA,EAAEqd,EA+ftH,SAAavvB,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,IAAI+B,EAAEs5S,GAAIr5S,GAAG86B,EAAE,EAAEr3B,EAAE1D,EAAE7B,OAAO48B,EAAEr3B,IAAIq3B,EAAGu4R,IAAInhT,GAAGlU,GAAG85N,KAAK93N,EAAEuF,EAAEuyN,IAAI,KAAK93N,EAAED,EAAE,KAAK,KAAM/B,GAAE,CAAC,IAAauH,EAAE,EAAEoN,EAAX0mS,GAAIr7S,GAAWE,OAAOqH,EAAEoN,IAAIpN,EAAG8tT,IAAInhT,GAAGlU,GAAG85N,KAAK95N,EAAEuH,EAAEuyN,IAAI,KAAK95N,EAAE+B,EAAE,IAAI,CAAC,CA/fzEuzT,CAAItzT,EAAED,GAAa,CAC3I,SAASwzT,IAAIvzT,EAAEkS,GAAG,IAAIqd,EAAEA,GAAGvvB,EAAE4pB,EAAEq2K,IAAIq3B,MAAMC,OAAOv3N,EAAEgU,IAAIshR,MAAMt4D,KAAKh9N,EAAEqoB,EAAE43K,IAAI4I,MAAMC,MAAMv5K,EAmlDrF,SAAavvB,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAA4B,GAA1ByP,EAAE2qK,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAOA,IAAIutK,MAAMC,MAAMxtK,GAAG0tK,IAAc,YAAT4zI,IAAIxzT,EAAEkS,GAAsP,IAA5O4oB,EAAE5oB,GAAG6tK,KAAKokG,KAAMG,MAAMH,KAAME,KAAKh8P,EAAEnW,GAAG6tK,KAAKu0F,KAAME,MAAMF,KAAMI,KAAKnlP,EAAEouJ,GAAG6oB,GAAIxmM,EAAEkS,EAAEA,GAAG,KAAKnS,EAAEwvB,EAAEvxB,EAAEuH,EAAExF,EAAEwvB,EAAE4nR,GAAI54H,GAAGC,GAAGyU,IAAG,GAAGwzD,IAAI,GAAG,GAAG,CAACl3N,EAAE3vB,EAAEsS,EAAElS,EAAE6iC,EAAE3wB,EAAElS,EAAEqB,KAAKqR,EAAE3S,EAAEwvB,EAAExvB,EAAEmS,EAAEilS,GAAI54H,GAAGC,GAAGyU,IAAG,GAAGwzD,IAAI,GAAG,GAAG,CAACl3N,EAAE3vB,EAAE2vB,EAAEvvB,EAAE6iC,EAAEtT,EAAEvvB,EAAEqB,KAAKsR,EAAEyzK,GAAIy6C,GAAI/lM,GAAG96B,EAAEiU,GAAGJ,EAAE3B,GAAG6tK,IAAIxJ,IAAID,IAAQxiK,EAAEd,EAAE2oM,KAAK7nM,EAAEynM,QAAOnpM,EAAEurK,GAAG7pK,EAAE2nM,KAAK,MAAWlsL,GAAGnd,EAAEmd,EAAExvB,EAAEwvB,EAAErxB,QAAQ,IAAY8V,EAAE5B,EAAEF,EAAEqtL,KAAKn8L,EAAEgP,EAAE7M,GAAQrF,GAANN,EAAEwS,EAAEmd,GAAMvxB,GAAIkU,GAAGlU,EAAE4B,EAAEA,EAAEA,EAAE2F,EAAEvF,EAAEhC,EAAEkU,EAAElU,EAAEuxB,GAAGrvB,EAAEF,GAAGyD,EAAE7D,EAAEA,EAAEA,EAAE2F,EAAE2M,EAAEzO,EAAE1D,EAAE0D,EAAEzD,GAAG4qN,GAAIviM,EAAE2vM,KAAKp4N,EAAEk7B,EAAEzS,EAAEq4P,GAAI9gR,GAAGm0Q,KAAMI,MAAMj0Q,EAAEqvB,EAAEnsB,EAAEpD,GAAGE,EAAEgS,EAAE8B,EAAEhU,GAAG,EAAEmR,EAAE8hI,EAAK3/H,KAAKsgB,IAAIruB,EAAEnC,EAAEpD,GAAGuD,EAAE0vI,EAAK3/H,KAAKugB,IAAInhB,EAAEtP,EAAEpD,EAAEgU,EAAEhU,GAAGE,EAAEqvB,EAAEpe,EAAGjR,EAAEqvB,EAAEpe,EAAGjR,EAAEqvB,EAAErvB,EAAEgS,EAAE3O,IAAIrD,EAAEqvB,EAAEhsB,EAAErD,EAAEgS,GAAG6jK,GAAIpjK,EAAE5S,EAAE,IAAI6sO,GAAI1sO,EAAE6jT,GAAIpxS,EAAEzS,KAAK2T,EAAE3B,GAAG6tK,IAAI9sC,EAAK3/H,KAAKugB,IAAIhgB,EAAEzQ,EAAE8O,EAAEE,EAAEF,EAAEqtL,KAAKrtL,GAAG+gI,EAAK3/H,KAAKsgB,IAAI/f,EAAEzQ,EAAE8O,IAAuE,IAApE2B,GAAG3B,GAAG6tK,IAAI//K,EAAEiU,GAAGjU,EAAEiU,GAAEA,EAAEy2S,IAAK/3S,EAAEpN,EAAEsO,EAAElB,KAAM,IAAIgrK,GAAG6oB,GAAIxmM,EAAEkS,EAAEA,GAAG,KAAKlS,EAAEkS,EAAE+B,GAAO5S,EAAE2R,EAAE2oM,KAAKt6M,EAAEk6M,QAAOnpM,EAAEurK,GAAGt8K,EAAEo6M,KAAK,MAAWlsL,GAAGnd,EAAEmd,EAAExvB,EAAEwvB,EAAErxB,QAAQ,KAAYgC,EAAEkS,EAAEmd,EAAEvxB,GAAIuxB,GAAGnd,EAAE7M,EAAEvF,EAAEE,EAAEH,GAAGqS,EAAE7M,EAAE2M,EAAE,CAnlD/0BuhT,CAAIzzT,EAAEkS,GAAGshT,IAAIxzT,EAAEkS,GAAGlS,EAAEqoB,EAAE43K,GAAG+I,OAAOz5K,EAyhDvH,SAAavvB,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAA4B,GAA1BrR,EAAEs8K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAO7Q,EAAE49K,MAAM,GAAG/sK,IAAIutK,MAAMC,MAAMxtK,IAAIutK,MAAMG,KAAe,YAAT8zI,IAAI1zT,EAAEkS,GAA6I,IAAnI9O,EAAEpD,EAAEqoB,EAAE43K,IAAI4I,MAAMozF,MAAM1sQ,EAAErd,IAAIutK,MAAMM,MAAMokG,KAAME,MAAMF,KAAMG,KAAK5xQ,EAAER,GAAG6tK,KAAKu0F,KAAMI,MAAMJ,KAAME,KAAKz0Q,EAAEqmL,GAAIy6C,GAAItxM,GAAGvvB,EAAE6T,GAAGG,EAAE9B,GAAG6tK,IAAIzJ,IAAIC,IAAQnkK,EAAE/Q,EAAEs6M,KAAKvpM,EAAEmpM,QAAO93M,EAAEk6K,GAAGvrK,EAAEqpM,KAAK,MAAWlsL,GAAG9rB,EAAE8rB,EAAExvB,EAAEwvB,EAAErxB,QAAQ,IAAYgC,EAAEuD,EAAEyO,EAAEqtL,KAAK3/L,EAAE6D,EAAE8B,GAAQyN,GAANc,EAAErQ,EAAE8rB,GAAMvxB,GAAIkU,GAAG4oB,EAAEhnB,EAAElU,EAAEkU,EAAEvO,EAAEvF,EAAE86B,EAAE5oB,EAAE4oB,EAAEvL,GAAGvc,EAAEhT,GAAG2S,EAAEmB,EAAElU,EAAEkU,EAAEvO,EAAE2M,EAAES,EAAE5S,EAAE4S,EAAE3S,GAAMoD,GAAG4P,EAAEuc,EAAE3vB,EAAEI,GAAGuF,EAAEuO,EAAElU,EAAEkU,EAAEvO,EAAEvF,EAAEuF,EAAE2M,EAAE3M,EAAEgqB,GAAGvvB,EAAE6T,EAAEzQ,GAAE,GAAW4P,EAAEuc,EAAE3vB,EAAEI,EAAEE,EAAEF,EAAEA,EAAE6T,EAAE+2M,GAAIl4M,EAAEslN,KAAKlkN,EAAEgnB,EAAEpoB,EAAEguQ,GAAI5sQ,GAAGigQ,KAAMI,MAAMp+F,GAAIh2K,EAAEA,EAAE,IAAI6sO,GAAI55N,EAAE+wS,GAAIhkT,EAAEiT,KAAKgB,EAAE9B,GAAG6tK,IAAI9sC,EAAK3/H,KAAKsgB,IAAI5f,EAAEpU,EAAEsS,GAAG+gI,EAAK3/H,KAAKugB,IAAI7f,EAAEpU,EAAEsS,EAAEzO,EAAEyO,EAAEqtL,KAAKrtL,IAAqC,IAAlC8B,GAAG9B,GAAG6tK,KAAK//K,EAAEiU,EAAEjU,EAAEiU,EAAEy2S,IAAK3qT,EAAEwF,EAAEyO,EAAEjU,IAAQ/B,EAAEqD,EAAEs6M,KAAK39M,EAAEu9M,QAAO93M,EAAEk6K,GAAG3/K,EAAEy9M,KAAK,MAAWlsL,GAAG9rB,EAAE8rB,EAAExvB,EAAEwvB,EAAErxB,QAAQ,KAAY8U,EAAEvP,EAAE8rB,EAAEvxB,GAAIuxB,GAAG9rB,EAAE8B,EAAEvF,EAAEgT,EAAEjT,GAAG0D,EAAE8B,EAAE2M,EAAE,CAzhDroByhT,CAAI3zT,EAAEkS,GAAGwhT,IAAI1zT,EAAEkS,GAAG,CAC3I,SAAS0hT,IAAI5zT,EAAEkS,GAAG,IAAIqd,EAAExvB,IAAIC,EAAEoS,EAAQ,MAAHF,GAutBnC,SAAalS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAE,GAAGw1M,GAAG/6M,KAAK+6M,GAAG7oM,GAAI,OAAO,EAAK,GAAM,MAAHlS,GAAY,MAAHkS,EAAS,OAAO,EAAM,GAAGlS,EAAE9B,QAAQgU,EAAEhU,OAAQ,OAAO,EAAM,IAAIqxB,EAAE,EAAEA,EAAEvvB,EAAE9B,SAASqxB,EAAiB,GAAdxvB,EAAEC,EAAEuvB,GAAGhqB,EAAE2M,EAAEqd,KAAQwrL,GAAGh7M,KAAKg7M,GAAGx1M,IAAO,MAAHxF,GAASuyL,GAAGvyL,EAAEwF,IAAK,OAAO,EAAO,OAAO,CAAI,CAvtB9IsuT,CAAI3hT,EAAhDqd,EAAYs6J,GAAT9pL,EAAEC,EAAEA,EAAE8sN,GAAQ,IAAInvC,GAAG59K,EAAE,IAAIstS,KAAK,MAAmBqkB,IAAI1xT,EAAEA,EAAE,EAAEuvB,GAAWmiS,IAAI1xT,EAAEA,EAAE,EAAE29K,GAAGzrK,EAAE,KAAK,CAC3I,SAAS4hT,IAAI9zT,EAAEkS,EAAEqd,GAAG,OAAO,IAAI24K,GAAIj1D,EAAK3/H,KAAKsgB,IAAI5zB,EAAEA,EAAEkS,EAAElS,GAAGuvB,EAAE,EAAE0jH,EAAK3/H,KAAKsgB,IAAI5zB,EAAEkS,EAAEA,EAAEA,GAAGqd,EAAE,EAAE0jH,EAAK3/H,KAAKskB,IAAI53B,EAAEA,EAAEkS,EAAElS,GAAGuvB,EAAE0jH,EAAK3/H,KAAKskB,IAAI53B,EAAEkS,EAAEA,EAAEA,GAAGqd,EAAE,CAG3I,SAASwkS,IAAI/zT,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAI,IAAGgqB,EAAErd,EAAEnS,GAAuB,IAAZwvB,EAAErd,EAAEnS,IAAG,EAASwF,EAAE,IAAIogK,GAAIshJ,GAAI/0S,IAAI3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAqC61T,IAAI/zT,EAAbsnT,GAAjB3pI,GAAGC,GAAIr4K,GAAG,KAAa2M,GAAWqd,EAAG,CAC5I,SAASykS,IAAIh0T,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAc,OAAZA,EAAEwvB,EAAEvvB,EAAE2S,GAAGT,GAAUlS,EAAE2S,GAAG,KAAK,EAAE,KAAK,EAAE,OAAO,IAAIsiM,GAAI,EAAEl1M,GAAG,KAAK,EAAE,KAAK,EAAE,OAAO,IAAIk1M,GAAIl1M,EAAE,GAAG,QAAQ,OAAO,KAAM,CAC3I,SAASk0T,IAAI/hT,EAAEqd,EAAExvB,GAAG,IAAM+6B,EAAEA,EAAE6iJ,GAAGmvE,GAAIv9N,EAAEuL,GAAG,KAAK,IAAIA,EAAE+xR,GAAG36S,EAAEnS,GAttD1D,SAAaC,EAAEkS,GAAGlS,EAAEuvB,EAAE,GAAGvvB,EAAEkS,EAAEA,EAAElS,EAAEuvB,EAAEytL,GAAIh9M,EAAEkS,EAAEA,GAAGlS,EAAEA,EAAE8H,GAAGoK,EAAE,CAstDMgiT,CAAI3kS,EAAEuL,EAAEA,EAAE,CAAC,MAAM96B,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAAgBkzK,GAARlzK,KAA0BkzK,GAAIlzK,IAAE,CAAC,CAC3I,SAASm0T,IAAIn0T,EAAEkS,EAAEqd,GAAG,IAAQuL,EAAEnoB,EAAElP,EAAEzF,EAAiG,OAA7F,KAAoB88B,EAAE,MAAjBr3B,EAAE2wT,IAAIn9H,KAAM/kL,MAAkB,KAAgBS,EAAE,KAAQ,OAArB3U,EAAEq2T,IAAI5wT,EAAE8rB,MAAoB5c,EAAE3S,EAAEs0T,GAAG7wT,EAAEzF,IAAQ88B,EAAFnoB,GAAQmoB,CAAU,CAE3I,SAASy5R,IAAIv0T,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAa,GAAG2M,IAAd3M,EAAEvF,EAAE9B,QAAe,OAAOqH,EAAE,IAAI2M,EAAEA,EAAE,EAAEA,EAAE,EAAEA,EAAE3M,IAAU6vS,IAAKx9G,GAAI1lL,EAAElS,EAAE9B,QAAQ8B,EAAEqf,WAAWnN,IAAIqd,EAAExvB,GAAhDmS,KAAyD,OAAOA,CAAC,CAC3I,SAASuoP,IAAIz6P,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAmD,IAAjDA,EAAEC,EAAEuvB,EAAErxB,OAAOgU,EAAEhU,OAAO6B,IAAImS,EAAE0zK,GAAI,IAAItnL,MAAMyB,GAAGmS,IAAQqd,EAAE,EAAEA,EAAExvB,IAAIwvB,EAAGo3K,GAAGz0L,EAAEqd,EAAEvvB,EAAEuvB,EAAEA,IAA6B,OAAzBrd,EAAEhU,OAAO6B,GAAG4mM,GAAGz0L,EAAEnS,EAAE,MAAamS,CAAC,CAC5I,SAASsiT,IAAIx0T,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAmD,IAAjDA,EAAEC,EAAEA,EAAE9B,OAAOgU,EAAEhU,OAAO6B,IAAImS,EAAE0zK,GAAI,IAAItnL,MAAMyB,GAAGmS,IAAQqd,EAAE,EAAEA,EAAExvB,IAAIwvB,EAAGo3K,GAAGz0L,EAAEqd,EAAEvvB,EAAEA,EAAEuvB,IAA6B,OAAzBrd,EAAEhU,OAAO6B,GAAG4mM,GAAGz0L,EAAEnS,EAAE,MAAamS,CAAC,CAC5I,SAASwzL,IAAI1lM,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAuB,OAArBv1B,EAAEo4K,GAAG+5B,GAAI13M,EAAEuF,EAAE2M,GAAG,OAAkE4oB,EAAE0+L,GAAIj0N,EAAEgqB,GAAGw5L,GAAI/oN,EAAEuF,GAAUu1B,IAAjF/6B,EAAE,IAAIsyN,GAAIryN,EAAEkS,EAAEqd,GAAGonK,GAAI32L,EAAEuF,EAAE2M,EAAEnS,GAAGkpN,GAAIlpN,GAAU,KAAuC,CAC7I,SAAS00T,IAAIz0T,GAAG,IAAIkS,EAAE,GAAM,MAAHlS,EAAQ,OAAO,KAAwB,GAAnBkS,EA+0B7C,SAAalS,GAAS,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAE,GAAxBiyN,MAA8B,MAAH11N,EAAQ,OAAO,KAAgB,GAAXuF,EAAEvF,EAAE9B,OAAUqH,EAAE,GAAG,EAAE,OAAO,KAA6C,IAAxC2M,EAAEw5Q,GAAI1rR,GAAWuvB,EAAE0uJ,GAAGqS,IAAGokI,IAAI,GAApB55R,EAAEv1B,EAAE,EAAE,EAAmB,GAAG,GAAOxF,EAAE,EAAEA,EAAE+6B,EAAE/6B,IAAI,CAAe,IAAO,IAArB4S,EAAEgiT,IAAIziT,EAAI,EAAFnS,KAAe,OAAO,KAAqB,IAAO,IAAvB0D,EAAEkxT,IAAIziT,EAAI,EAAFnS,EAAI,KAAa,OAAO,KAAKwvB,EAAExvB,IAAI4S,GAAG,EAAElP,IAAI,IAAI,EAAE,CAAC,OAAO8rB,CAAC,CA/0BhNqlS,CAAI1E,IAAIlwT,GAAE,IAAa,MAAHkS,EAAS,MAAMghK,GAAI,IAAI0P,GAAI,6BAA6B5iL,EAAE,MAAM,OAAOkS,CAAC,CAC3I,SAASu7Q,IAAIztR,GAAS,OAAN+iN,MAAS7V,GAAIltM,EAAE,GAAG,EAAiB,GAAXktM,GAAIltM,GAAG,GAAc,IAAI60T,KAAK,EAAE7qC,GAAIhqR,IAAWm+S,IAAgBjxG,GAAIltM,EAAE,KAAK,EAAEo+S,IAAIn0F,GAAIjqN,IAAI,IAAI60T,IAAI,EAAE70T,EAAE,CAC5I,SAASkmM,MAAY,OAAND,MAAa1nB,GAAGC,GAAGs2I,IAAG,GAAG7oF,IAAI,IAAI,EAAE,CAAC8oF,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAI/vH,KAAK,CAC5I,SAASgwH,IAAIp2T,GAAG,IAAIkS,EAAE5N,KAAKvE,EAAE,IAAIuyK,GAAIhuK,KAAK8N,EAAE,IAAIw2K,GAAItkL,KAAKqO,EAAE,IAAIi2K,GAAI12K,EAAElS,EAAE2S,EAAET,EAAE5N,KAAKw2B,EAAE6iJ,GAAG4qB,IAAIg3C,GAAIrtO,IAAImrJ,MAAMsoJ,MAAM,KAAKrhT,KAAKiB,EAAE+6K,GAAIC,GAAG6lE,IAAIl0O,EAAEw2L,MAAM,CAC5I,SAAS44E,IAAIthR,GAAGsE,KAAK4N,EAAE,IAAIogK,GAAIhuK,KAAKiB,EAAE,IAAI+sK,GAAIhuK,KAAKvE,EAAEC,EAAEsE,KAAKtE,GAAG85L,GAAIqwB,GAAI,IAAIC,GAAI,KAAK,IAAIorB,GAAI,IAAIg8B,GAAIxxQ,EAAEkS,KAAK,IAAIq0J,GAAI,IAAIlgB,MAAOozC,IAAI2J,KAAMC,KAAK,CAC7I,SAAS5I,MAAMA,IAAI/lD,EAAIimD,IAAI,IAAIka,GAAI,UAAU,GAAGna,IAAI,IAAIma,GAAI,QAAQ,GAAGja,IAAI,IAAIia,GAAI,QAAQ,GAAGha,IAAI,IAAIga,GAAI,QAAQ,GAAG/Z,IAAI,IAAI+Z,GAAI,SAAS,EAAE,CAC5I,SAASk+E,MAAMA,IAAIr+I,EAAIu+I,IAAI,IAAIt9E,GAAI,cAAc,GAAGu9E,IAAI,IAAIv9E,GAAI,YAAY,GAAGw9E,IAAI,IAAIx9E,GAAI,QAAQ,GAAGy9E,IAAI,IAAIz9E,GAAIwrD,IAAI,GAAGkyB,IAAI,IAAI19E,GAAI,MAAM,EAAE,CAE7I,SAAS0gH,IAAIr2T,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAOggR,KAAM7xE,IAAI,KAAK,EAAE,OAAO6xE,KAAM/xE,IAAI,KAAK,EAAE,OAAO+xE,KAAM9xE,IAAI,KAAK,EAAE,OAAO8xE,KAAM5xE,IAAK,OAAO4xE,KAAMC,GAAG,CAE7I,SAAS9zB,IAAI9+P,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAa,GAAX2rO,GAAIx5N,EAAElS,EAAEkS,GAAMA,GAAGlS,EAAEkS,GAAG,EAAS,IAANnS,EAAEC,EAAEuvB,EAAMA,EAAEvvB,EAAEkS,EAAEqd,EAAErd,IAAIqd,EAAGxvB,EAAEA,EAAEmS,OAAgB,IAARnS,EAAEC,EAAEA,EAAEA,EAAMuvB,EAAE,EAAEA,EAAErd,IAAIqd,EAAGxvB,EAAEA,EAAEC,EAAG,OAAO,IAAI++N,GAAI/+N,EAAEkS,EAAEnS,EAAE,CAC7I,SAASwnQ,MAAMA,IAAI7yH,EAAI+yH,IAAI,IAAI14D,GAAI,oDAAoD,GAAG24D,IAAI,IAAI34D,GAAI,qCAAqC,EAAE,CAC7I,SAASunH,IAAIt2T,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAmD,IAAjDxF,EAilB5B,SAAaC,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAY,IAAVgqB,EAAE,IAAIijJ,GAAQjtK,EAAE,IAAIogK,GAAI3lK,EAAED,GAAGwF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAS6B,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAK2M,EAAEyrK,GAAG59K,EAAEimM,IAAIgC,MAAMuuH,MAAM,IAAMrjF,GAAI3jN,EAAEuL,EAAE5oB,IAAIykL,GAAIpnK,EAAErd,EAAE,IAAIy2O,GAAIz2O,IAAI6jK,GAAI4H,GAAGk9B,GAAGq4B,GAAI3jN,EAAEuL,EAAE5oB,IAAI,KAAKA,EAAEnS,GAAG,OAAO,IAAIi/N,GAAI,IAAIv6D,GAAIl1I,GAAG,CAjlBtLinS,CAAIx2T,GAAG8kN,GAAI/kN,EAAEqkM,MAAK7+L,EAAEvF,EAAED,GAAIwvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAO5uJ,EAAE,IAAIo2I,GAAI5lK,GAAGwvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAA0B0qP,GAAIrjP,EAAnBo4K,GAAGC,GAAIruJ,GAAG,KAAard,EAAG,CAC7I,SAASukT,IAAIz2T,GAAG,IAAMuvB,EAAExvB,EAAkD,KAA5CC,EAAEE,IAAIF,EAAEE,EAAE,IAAI0zN,IAAKmrD,MAAMC,KAAKC,IAAGj/Q,EAAE,IAAauvB,GAApDxvB,EAA2CC,EAAEE,GAAWqvB,EAAEosL,KAAKpsL,EAAEhqB,GAAGgqB,EAAEvxB,EAAEihL,MAAStB,GAAGpuJ,EAAEmnS,KAAK,IAAM57G,KAAK,OAAOokE,GAAIn/Q,EAAE,CAE7I,SAAS42T,IAAI32T,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAM,IAAJvL,EAAE,EAAMhqB,EAAE,IAAIogK,GAAIzzJ,EAAElS,GAAGuF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAyB48B,GAAhB/6B,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAQrF,EAAEF,EAAED,EAAEA,EAAEwvB,EAAExvB,EAAEA,EAAEmS,EAAElS,EAAEoS,EAAEmd,EAAE0jH,EAAK3/H,KAAKugB,IAAItE,EAAEuL,GAAG,OAAOvL,CAAC,CAC7I,SAASqnS,IAAI52T,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAM,IAAJA,EAAE,EAAMgqB,EAAE,EAAExvB,EAAEC,EAAE9B,OAAOqxB,EAAExvB,EAAEwvB,IAAQqoK,GAAIroK,EAAEvvB,EAAE9B,SAAXgU,EAAmBlS,EAAEqf,WAAWkQ,KAAO,IAAIrd,EAAE,MAAM3M,EAAEmzL,GAAInzL,EAAEozL,GAAI,EAAEzmL,EAAE,MAAM,OAAO3M,CAAC,CAC7I,SAAS6gP,IAAIpmP,EAAEkS,GAAG,IAAIqd,EAAExvB,EAA8G,OAA5GA,EAAE,KAAQyyN,GAAIxyN,GAAG+/J,MAAM82J,QAAOtnS,EAAEouJ,GAAG4qB,IAAIvoM,EAAE62T,KAAK,KAAM/wH,GAAG5zL,KAAKnS,EAAEwvB,EAAEy2K,GAAG9zL,IAAO,MAAHnS,GAAWw/O,GAAIv/O,KAAKD,EAAEwoM,IAAIg3C,GAAIv/O,GAAGkS,IAAWnS,CAAC,CAC9I,SAAS+2T,IAAI92T,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,GAAUxF,GAARwF,EAAE2M,EAAEnS,EAAE/B,GAAMqD,KAAS49P,MAAMgF,MAAMlkQ,GAAGq3R,KAA+ChsE,IAAnC77L,EAAE,IAAIu/M,GAAG7hB,GAAGm1E,GAAI78R,GAAGvF,EAAE27M,KAAK,IAAIpoE,MAAYojD,GAAI32L,EAAEqB,EAAE6Q,EAAEyrK,GAAGwtC,GAAG57L,GAAG,IAAI,CAC7I,SAASkd,IAAIzsC,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAA6B,OAA3BxF,EAAEygR,GAAIxgR,EAAEgoN,KAAK91M,IAAGqd,EAAErd,EAAElS,EAAE8iP,MAAc,GAAGv9O,EAAEvF,EAAE22N,GAAG52N,KAAM,EAAEC,EAAE+sD,GAAGxnD,GAAGslB,IAAI7qB,EAAED,GAAIwvB,EAAE,EAAE1E,IAAI7qB,EAAED,GAAG49K,GAAG59K,EAAE,IAAIgjQ,KAAKC,GAAGhjQ,EAAEA,EAAEijQ,KAAK1zO,EAAE,CAC7I,SAASixJ,IAAIxgL,GAAG,IAAIkS,EAAE,GAAG23K,GAAG7pL,EAAEA,EAAE,GAAG,CAAY,GAAM,OAAjBkS,EAAE4+S,IAAI9wT,EAAEA,IAAe,MAAMkzK,GAAI,IAAI4O,GAAIi1I,IAAI/2T,EAAEkS,EAAE,MAAM8kT,KAAK1tI,GAAI2tI,KAAIA,IAAG51T,GAAG61T,MAAM,OAAOhlT,CAAC,CAAM,OAAOlS,EAAEA,CAAE,CAC7I,SAASm3T,IAAIn3T,GAAG,IAAIkS,EAAE,GAAM,MAAHlS,EAAQ,OAAO,KAAwB,GAAnBkS,EA4jD7C,SAAalS,GAAS,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAE,GAA1CohN,MAAgD,MAAHp1N,EAAQ,OAAO,KAAuB,GAAlB86B,EAAE4wP,GAAI1rR,GAAGE,EAl1D1F,SAAaF,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAiB,IAAfA,EAAE,EAAEwvB,EAAEvvB,EAAE9B,OAAWgU,EAAE,EAAEA,EAAEqd,EAAErd,IAAW,IAANlS,EAAEkS,IAAc,IAANlS,EAAEkS,IAAc,IAANlS,EAAEkS,IAAc,GAANlS,EAAEkS,KAAQlS,EAAED,KAAKC,EAAEkS,IAAI,OAAOnS,CAAC,CAk1D3Bq3T,CAAIt8R,GAAM56B,EAAE,GAAG,EAAG,OAAO,KAAa,GAARkD,EAAElD,EAAE,EAAE,EAAQ,GAAHkD,EAAK,OAAO66K,GAAGqS,IAAGokI,IAAI,GAAG,EAAE,GAAG,GAA+E,IAA5E5gT,EAAE,KAAK5B,EAAE,EAAEqd,EAAE,EAAExvB,EAAE,EAAEwF,EAAE,EAAEoN,EAAE,EAAElP,EAAE,EAAEzF,EAAE,EAAEoU,EAAE,EAAExS,EAAE,EAAEoT,EAAE,EAAE3R,EAAE,EAAEyS,EAAEmqK,GAAGqS,IAAGokI,IAAI,GAAK,EAAFtxT,EAAI,GAAG,GAAQxD,EAAEwD,EAAE,EAAExD,IAAI,CAAC,IAAI29L,GAAI5qL,EAAEmoB,EAAEz5B,QAAQk8L,GAAI95L,EAAEq3B,EAAEz5B,QAAQk8L,GAAIv/L,EAAE88B,EAAEz5B,QAAQk8L,GAAInrL,EAAE0oB,EAAEz5B,MAAM,OAAO,KAAK6Q,EAAEsrL,IAAI7qL,GAAG4c,EAAEiuK,IAAI/5L,GAAG1D,EAAEy9L,IAAIx/L,GAAGuH,EAAEi4L,IAAIprL,GAAG0B,EAAEd,MAAMd,GAAG,EAAEqd,GAAG,IAAI,IAAI,GAAGzb,EAAEd,OAAS,GAAFuc,IAAO,EAAExvB,GAAG,EAAE,KAAK,IAAI,GAAG+T,EAAEd,MAAMjT,GAAG,EAAEwF,IAAI,IAAI,EAAE,CAAC,IAAIg4L,GAAI5qL,EAAEmoB,EAAEz5B,QAAQk8L,GAAI95L,EAAEq3B,EAAEz5B,MAAO,OAAO,KAAyC,GAApC6Q,EAAEsrL,IAAI7qL,GAAG4c,EAAEiuK,IAAI/5L,GAAGzF,EAAE88B,EAAEz5B,KAAK+Q,EAAE0oB,EAAEz5B,MAAiB,GAATm8L,IAAIx/L,KAAiB,GAATw/L,IAAIprL,GAAQ,OAAM,IAAHpU,GAAU,IAAHoU,EAAkB,IAAL,GAAFmd,GAAgB,MAAgC+zO,IAAIxvP,EAAE,EAAjCE,EAAEiqK,GAAGqS,IAAGokI,IAAI,GAAK,EAAF90T,EAAI,EAAE,GAAG,GAAa,EAAI,EAAFA,GAAKoU,EAAEhB,IAAId,GAAG,EAAEqd,GAAG,IAAI,IAAI,GAAUvb,GAAa,IAAHhW,GAAU,IAAHoU,EAA0B,IAAJ,GAAfrS,EAAEy9L,IAAIx/L,KAAsB,MAAgCslQ,IAAIxvP,EAAE,EAAjCE,EAAEiqK,GAAGqS,IAAGokI,IAAI,GAAK,EAAF90T,EAAI,EAAE,GAAG,GAAa,EAAI,EAAFA,GAAKoU,EAAEhB,MAAMd,GAAG,EAAEqd,GAAG,IAAI,IAAI,GAAGvb,EAAEhB,KAAO,GAAFuc,IAAO,EAAExvB,GAAG,EAAE,KAAK,IAAI,GAAUiU,GAAc,KAAWjU,EAAEy9L,IAAIx/L,GAAGuH,EAAEi4L,IAAIprL,GAAG0B,EAAEd,MAAMd,GAAG,EAAEqd,GAAG,IAAI,IAAI,GAAGzb,EAAEd,OAAS,GAAFuc,IAAO,EAAExvB,GAAG,EAAE,KAAK,IAAI,GAAG+T,EAAEd,MAAMjT,GAAG,EAAEwF,IAAI,IAAI,GAAG,OAAOuO,CAAC,CA5jDh7BujT,CAAInH,IAAIlwT,GAAE,IAAa,MAAHkS,EAAS,MAAMghK,GAAI,IAAI0P,GAAI,gCAAgC5iL,EAAE,MAAM,OAAOkS,CAAC,CAC9I,SAASitK,IAAIjtK,GAAG,IAAIqd,EAAE,IAAmC,OAA/BA,EAAErd,EAAElU,EAAEq9M,GAAGnpM,EAAE3M,GAAG2M,EAAEg7S,KAAKh7S,EAAES,EAAET,EAAE3M,IAAWgqB,CAAC,CAAC,MAAMvvB,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAAKkS,EAAEg7S,KAAWh6I,GAAI,IAAImC,KAAgBnC,GAAIlzK,IAAE,CAAC,CAC7I,SAASs3T,IAAIplT,GAAG,IAAIqd,EAAE,IAAmC,OAA/BA,EAAErd,EAAEqd,EAAE8iR,GAAGngS,EAAE3M,GAAG2M,EAAEg7S,KAAKh7S,EAAES,EAAET,EAAE3M,IAAWgqB,CAAC,CAAC,MAAMvvB,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAAKkS,EAAEg7S,KAAWh6I,GAAI,IAAImC,KAAgBnC,GAAIlzK,IAAE,CAAC,CAC7I,SAASu6J,MAAMA,IAAI7lB,EAASqrB,MAALw3J,IAAWC,IAAKC,IAAIC,IAAIC,IAAInJ,IAAIoJ,IAAIxb,IAAS3hJ,MAALo9J,IAAW/F,IAAKgG,IAAI/F,IAAIgG,IAAI/F,IAAIgG,IAAIC,IAAS59J,KAAL69J,IAAW9c,IAAK+c,IAAI5c,IAAI6c,IAAI3c,IAAI4c,IAAI1c,GAAG,CAC9I,SAAS2c,IAAIt4T,GAAiC,OAA9BkkM,KAAM5/L,KAAKirB,EAAE,IAAI+iJ,GAAIhuK,KAAKvE,EAAEC,EAASA,EAAE2S,GAAG,KAAK,EAAE,KAAK,EAAErO,KAAKtE,EAAEihP,GAAI98C,KAAK7/L,KAAK4N,EAAEokK,IAAI,MAAM,KAAK,EAAE,KAAK,EAAEhyK,KAAKtE,EAAEmkM,IAAI7/L,KAAK4N,EAAEqkK,IAAK,CAC9I,SAASgiJ,IAAIv4T,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAE,GAAGvF,EAAEuvB,EAAG4yL,GAAIniN,EAAEuvB,EAAEvvB,EAAEuvB,EAAEvxB,EAAEkU,GAAGkwM,GAAIpiN,EAAEuvB,EAAEvvB,EAAEuvB,EAAEnd,EAAEmd,QAAQ,IAAIhqB,EAAE,IAAIogK,GAAI3lK,EAAEkS,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA0Bq6T,IAAf56I,GAAGC,GAAIr4K,GAAG,KAAW2M,EAAEqd,EAAI,CAE9I,SAAS8pN,IAAGr5O,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAKmS,EAAElS,EAAE9B,OAAO,IAAG63K,GAAI/1K,EAAEkS,EAAE,IAAI0wN,GAAG1wN,EAAElS,EAAEuvB,IAAiB,GAAbxvB,EAAEmS,EAAElS,EAAE9B,QAAYgU,EAAElS,EAAEkS,EAAElS,EAAEyzD,OAAO,EAAE,GAAI,EAAE1zD,IAAImS,EAAElS,GAAG4oN,GAAI3qC,GAAGo3C,IAAGC,IAAI,IAAIv1N,EAAE,GAAG,KAAK,CAC/I,SAASy4T,IAAIx4T,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAQ,IAANgqB,EAAEvvB,EAAEE,EAAMqF,EAAEo4K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAIypM,KAAKp2M,EAAEg2M,OAAOx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,MAAOl2M,EAAEvF,EAAEy4T,IAAI14T,EAAEwvB,EAAEvvB,GAAGD,EAAEwF,EAAE2M,EAAEqd,EAAErd,EAAEouK,GAAIC,GAAGxgL,EAAEmS,EAAE8zL,GAAG0pB,MAAO,CAG/I,SAASw5F,IAAIlpT,EAAEkS,GAAG,IAAIqd,EAAiH,OAA/GA,EAAEouJ,GAAG4qB,IAAIvoM,GAAGq9J,MAAM2hG,MAAM,IAAO12C,GAAGp2M,EAAE8wL,KAAUzzK,EAA+BkyK,GAAIlyK,IAAhCA,EAAE,IAAIiqJ,GAAIuuB,GAAI/nM,EAAEg/P,IAAIzvO,IAAuBA,GAAGw4K,GAAI/nM,EAAEg/P,IAAI,MAAazvO,CAAC,CAC/I,SAASmpS,IAAI14T,GAAG,IAAIkS,EAAiH,OAA/GA,EAAE,IAAIsyK,IAAMxkL,GAAG,IAAIA,EAAEqB,IAAI49P,MAAMgF,MAAMrnD,GAAIA,IAAK1qM,EAAElS,GAAG,IAAIkS,GAAGq/M,GAAGvxN,EAAEqB,GAAG+P,eAAe,KAAKwrM,IAAK1qM,EAAElS,GAAG,IAAIkS,GAAGymT,IAAI34T,IAAWkS,EAAElS,CAAC,CAE/I,SAAS44T,IAAI54T,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAE,OAAGgqB,GAAG,EAAUvvB,EAAEq9F,GAAGnrF,EAAEqd,EAAExvB,IAAUC,EAAE2wT,OAAO5wT,GAAGwF,EAAEvF,EAAE8iN,OAAQ,EAAE9iN,EAAE64T,GAAG94T,GAAGC,EAAE2wT,KAAKnzL,GAAGx9H,GAAG,EAAEuF,EAAE,KAAKxF,IAAYC,EAAE6sP,GAAG36O,EAAEqd,EAAExvB,GAAG,CAC/I,SAAS+4T,IAAI94T,EAAEkS,GAAG,OAAOA,GAAG,KAAK,EAAyC,OAAtClS,EAAEuF,IAAIvF,EAAEuF,EAAE,IAAIwlN,GAAIl9B,IAAG7tL,EAAE,EAAE,SAAIqnN,IAAIrnN,EAAEuF,GAAU,KAAK,EAAyC,OAAtCvF,EAAED,IAAIC,EAAED,EAAE,IAAIgrN,GAAIl9B,IAAG7tL,EAAE,EAAE,SAAIqnN,IAAIrnN,EAAED,GAAWkrT,IAAIjrT,EAAEkS,EAAE,CAC/I,SAAS6tQ,IAAG7tQ,EAAEqd,GAAG,IAAIxvB,EAAEA,EAAEmS,EAAEwgN,GAAGnjM,GAAG,IAAI,OAAOxvB,EAAE07M,IAAI,CAAC,MAAMz7M,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAAYkzK,GAAI,IAAIgO,GAAI,qBAAqB3xJ,IAAe2jJ,GAAIlzK,IAAE,CAAC,CAChJ,SAASk+S,IAAIl+S,EAAEkS,GAAG5N,KAAKiB,EAAEvF,EAAKkS,EAAE6mT,KAAKz0T,KAAKvE,EAAE,EAAEuE,KAAKtE,EAAEu+K,GAAGC,GAAG4U,IAAG,GAAGsW,IAAI,GAAG,GAAG,CAAG,EAAFx3L,MAAW5N,KAAKvE,EAAE,EAAEuE,KAAKtE,EAAEu+K,GAAGC,GAAG4U,IAAG,GAAGsW,IAAI,GAAG,GAAG,CAACx3L,EAAE6mT,IAAI,EAAE7mT,EAAE6mT,IAAI,IAAI,CAChJ,SAAS1sC,IAAIrsR,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAA0C,IAA1DmsL,KAAkB13L,EAAEvvB,EAAE86B,EAAE5oB,EAAK23K,GAAG7pL,EAAE,MAAM6pL,GAAG33K,EAAE,MAAKqd,EAAErd,EAAE4oB,EAAE96B,GAAMuF,EAAEgqB,EAAEosL,KAAKp2M,EAAEg2M,MAAgB,GAATx7M,EAAEwF,EAAEk2M,KAAQ3gL,EAAEmlK,GAAGlgM,GAAI,OAAO,EAAO,OAAO,CAAI,CAChJ,SAASgxS,IAAI/wS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAA0G,OAAvF,IAAjB5S,EAAEC,EAAEgtR,GAAG96Q,MAAgBlS,EAAEmkT,MAAMrpR,EAAE96B,EAAEokT,KAAKzxS,EAAEqmT,IAAIh5T,EAAED,GAAGwF,EAAEvF,EAAEskT,GAAG,EAAE3xS,EAAE,KAAK5S,EAAE+6B,GAAIvL,EAAQA,EAAE+uM,GAAG/4N,GAAVgqB,EAAEhqB,GAAgByzT,IAAIh5T,EAAED,IAAWwvB,CAAC,CAEhJ,SAAS0pS,IAAIj5T,EAAEkS,GAAG,IAAIqd,EAAyB,OAAvBA,EAAEouJ,GAAG6oB,GAAIxmM,EAAEkS,EAAEA,GAAG,KAAKtS,EAASsS,EAAES,GAAG,KAAK,EAAE3S,EAAEiU,GAAG,IAAIsb,EAAExvB,EAAEC,EAAEiU,GAAG,MAAM,KAAK,EAAEjU,EAAEiU,GAAG,IAAIsb,EAAEvvB,EAAEA,EAAEiU,GAAOjU,EAAE6iC,IAAGtT,EAAErd,EAAElS,EAAE6iC,EAAE3wB,EAAEqd,EAAEA,EAAEvvB,EAAE6iC,EAAEtT,EAAE,CAChJ,SAASo1P,MAAMA,IAAIjwI,EAAImwI,IAAI,IAAI/1E,GAAI44F,IAAI,GAAG5iB,IAAI,IAAIh2E,GAAIoqH,IAAI,GAAGn0C,IAAI,IAAIj2E,GAAIqqH,IAAI,GAAGn0C,IAAI,IAAIl2E,GAAIsqH,IAAI,GAAGv0C,IAAI7kR,GAAE,EAAM8kR,IAAI9kR,GAAE,EAAK+kR,IAAI/kR,GAAE,EAAMglR,IAAIhlR,GAAE,CAAI,CAChJ,SAASmlR,MAAMA,IAAIzwI,EAAI2wI,IAAI,IAAIx2E,GAAI64F,IAAI,GAAGpiB,IAAI,IAAIz2E,GAAIqqH,IAAI,GAAG3zC,IAAI,IAAI12E,GAAIsqH,IAAI,GAAG3zC,IAAI,IAAI32E,GAAIuqH,IAAI,GAAG/zC,IAAIrlR,GAAE,EAAMslR,IAAItlR,GAAE,EAAKulR,IAAIvlR,GAAE,EAAMwlR,IAAIxlR,GAAE,CAAI,CAGhJ,SAASq5T,IAAIr5T,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAe,GAAbxF,EAAE,EAA0B,IAAxBwF,EAAE61P,IAAIp7P,IAAQuvB,EAAErxB,OAAW,OAAO,EAAO,IAAIqxB,EAAE,IAAIo2I,GAAIpgK,GAAGgqB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAyB6B,GAAGs5T,IAAjB17I,GAAGC,GAAIruJ,GAAG,KAAe,OAAOxvB,CAAC,CAGhJ,SAASglQ,IAAI/kQ,EAAEkS,EAAEqd,EAAExvB,GAAG,GAAGmS,EAAElS,EAAED,EAAEC,EAAG,OAAO,EAAU,GAAGkS,EAAElS,GAAGD,EAAEC,EAAE,CAAC,GAAGkS,EAAEA,EAAEnS,EAAEmS,EAAG,OAAO,EAAU,GAAGA,EAAEA,GAAGnS,EAAEmS,GAAMlS,EAAEkS,EAAEqd,EAAErd,EAAG,OAAO,CAAM,CAAC,OAAO,CAAK,CAChJ,SAAS42M,IAAG9oN,EAAEkS,GAAG,OAAGipM,GAAGn7M,KAAas5T,IAAGpnT,GAAWlS,EAAE25O,KAAa35O,EAAE25O,GAAGznO,GAAW+oM,GAAGj7M,KAAau5T,IAAGrnT,KAAW8oM,GAAGh7M,MAAaw5T,IAAGtnT,EAAe,CACjJ,SAASk5R,IAAIprS,EAAEkS,EAAEqd,GAAuH,OAAjH,MAAHA,IAAUvvB,EAAEE,IAAIF,EAAEE,EAAE,IAAI0zN,IAAKmrD,MAAMC,KAAKC,IAAGj/Q,EAAE,IAAI6+R,IAAI7+R,EAAEE,EAAEgS,MAAMlS,EAAEE,IAAIF,EAAEE,EAAE,IAAI0zN,IAAKmrD,MAAMC,KAAKC,IAAGj/Q,EAAE,IAAI0rS,IAAI1rS,EAAEE,EAAEgS,EAAEqd,IAAWvvB,CAAC,CAEhJ,SAASmsR,IAAInsR,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAA6B,OAA3BmoB,EAAE0lP,GAAIxgR,EAAEgoN,KAAK91M,IAAG3M,EAAE2M,EAAElS,EAAE8iP,MAAc,GAAGnwO,EAAE3S,EAAE22N,GAAG77L,KAAM,EAAE96B,EAAEkI,GAAGyK,EAAE4c,GAAE,GAAM3E,IAAI5qB,EAAE86B,EAAEvL,GAAIouJ,GAAG7iJ,EAAE,IAAIioO,KAAKkgB,GAAGjjR,EAAEA,EAAEijQ,KAAK19P,EAAEgqB,EAAExvB,EAAE,CACjJ,SAAS05T,IAAIz5T,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAM+6B,EAAEnoB,EAAK4c,EAAEmqS,GAAGxnT,KAAIi6L,KAASuoD,GAAIxiP,GAxFzD,SAAalS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,IAAI/6B,EAAE,EAAEwF,EAAE2M,EAAE+sK,KAAKl/K,EAAEwF,IAAIxF,EAAgB8pL,GAAbt6J,EAAErd,EAAEopC,GAAGv7C,GAAW,KAAwB,IAAlB49K,GAAGpuJ,EAAE,IAAIimJ,GAAGyhE,MAAsB,OAAbn8M,EAAE5oB,EAAE+1D,GAAGloE,KAAY07P,IAAIz7P,EAAE29K,GAAG7iJ,EAAE,IAAM,CAwF1D6+R,CAAI35T,EAApB29K,GAAGpuJ,EAAE4xI,GAAGjvJ,GAAG,OAAmB4oB,GAAGnoB,EAAET,GAAUyrK,GAAG59K,EAAE,IAAI87P,GAAGlpP,GAAjB,OAj5GvG,SAAa3S,EAAEkS,GAAGA,EAAE05R,GAAG5rS,EAAE,CAi5GwG45T,CAAIrqS,EAAE4xI,GAAGjvJ,GAAG4oB,GAAI,CAEjJ,SAAS++R,IAAI75T,GAAG,cAAcA,GAAI,KAAK81L,IAAI,OAAOqiH,IAAIn4S,GAAG,KAAKk7M,IAAI,OAAO/iB,GAAGn4L,GAAG,KAAKu0L,IAAI,OAAOm5B,KAAM1tN,EAAE,KAAK,KAAK,QAAQ,OAAU,MAAHA,EAAQ,EAAE6uN,GAAI7uN,GAAI,CAElJ,SAASkyO,IAAIlyO,GAAG,IAAIkS,EAAEqd,EAAE,GAAM,MAAHvvB,EAAS,OAAO,KAAmC,IAA9BuvB,EAAE0uJ,GAAGkuE,IAAGt4D,IAAI,IAAI7zL,EAAE9B,OAAO,EAAE,GAAOgU,EAAE,EAAEA,EAAEqd,EAAErxB,OAAOgU,IAAKqd,EAAErd,GAAGyrK,GAAGmlG,GAAI9iR,EAAEkS,GAAGlS,EAAEkS,GAAGhU,QAAQ,KAAK,OAAOqxB,CAAC,CACjJ,SAASuqS,IAAI95T,GAAG,IAAIkS,EAAE,GAAG8oS,GAAIh7S,GAAiF,OAA7E2vO,GAAI3vO,GAAMA,EAAEg8K,OAAM9pK,EAAE0jP,IAAI51P,EAAEuF,EAAEvF,EAAEkS,EAAElS,EAAEuvB,EAAEvvB,EAAEA,EAAEA,EAAEoS,GAAGpS,EAAEoS,EAAEF,GAAElS,EAAE2S,EAAE3S,EAAEA,IAAIA,EAAEA,IAAIA,EAAEuvB,EAAEvvB,EAAEhC,EAAE,EAASgC,EAAEoS,EAAO,MAAM8gK,GAAI,IAAImC,GAAK,CAEjJ,SAAS0kJ,IAAI/5T,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAa,IAAXA,EAAEy0T,IAAIh6T,EAAEkS,KAAS,EAAE,OAAO3M,EAAE,GAAGvF,EAAEshK,KAAM,IAAIvhK,EAAE,EAAEA,EAAEC,EAAEhC,IAAI+B,EAAyB,GAAGg7M,GAAvB/6M,EAAEi6T,GAAGt8I,GAAG39K,EAAE2S,EAAE5S,GAAG,QAAgBg7M,GAAG7oM,GAAI,OAAOnS,EAAI,OAAQ,CAAC,CAClJ,SAASooN,IAAInoN,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAW,GAAG2M,IAAZ3M,EAAEvF,EAAEi/K,MAAa,MAAM/L,GAAI,IAAI4rC,GAAI5sM,EAAE3M,IAAI,GAAGvF,EAAEynN,OAAM1nN,EAAEC,EAAEgtR,GAAGz9P,KAAS,GAAGxvB,GAAGmS,EAAG,MAAMghK,GAAI,IAAI2O,GAAIuhI,MAAO,OAAOpjT,EAAEk6T,GAAGhoT,EAAEqd,EAAE,CAClJ,SAASwhC,IAAG/wD,EAAEkS,GAA6C,GAA1C5N,KAAKtE,EAAE29K,GAAGoG,GAAG/jL,GAAG,KAAKsE,KAAK4N,EAAEyrK,GAAGoG,GAAG7xK,GAAG,KAAQlS,EAAE8vT,GAAG59S,GAAG,GAAGlS,IAAIg8K,KAAKC,MAAK/pK,IAAI1M,KAAKs2K,KAAK,MAAM5I,GAAI,IAAI2O,GAAI,kBAAkB6hF,GAAG1jQ,EAAEkS,IAAK,CACnJ,SAASioT,IAAIn6T,GAAG,IAAIkS,EAAEqd,EAAuC,IAArCjrB,KAAK4N,EAAE,IAAIogK,GAAIhuK,KAAKirB,EAAEvvB,EAAEsE,KAAKtE,GAAE,EAAUuvB,EAAE,IAAIo2I,GAAI3lK,EAAEA,GAAGuvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,IAAIjrB,KAAKtE,EAAEsE,KAAKtE,EAAEkS,EAAE7Q,IAAI49P,MAAMgF,IAAK,CAElJ,SAASm2D,IAAIp6T,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAE,IAAIv1B,EAAE,IAAIupO,GAAG7hB,IAAI/6M,EAAEgwR,GAAIliS,GAAGoiS,GAAIpiS,IAAIA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG7lN,IAAKxF,EAAE49K,GAAGwtC,GAAG5lN,GAAG,KAAIu1B,EAAE5oB,EAAEnS,EAAEwvB,EAAEvxB,EAAE+B,EAAEA,EAAE/B,GAAIqD,IAAI49P,MAAMk4B,MAAM7kC,GAAIx3N,EAAEvL,EAAG,CAClJ,SAAS03P,MAAMA,IAAIvyI,EAAIyyI,IAAI,IAAIj1E,GAAI43E,IAAI,GAAG1C,IAAI,IAAIl1E,GAAI,gBAAgB,GAAG+O,IAAI,IAAI/O,GAAI,gCAAgC,GAAGgP,IAAI,IAAIhP,GAAI,YAAY,EAAE,CAClJ,SAASssD,MAAMA,IAAI9pH,EAAIujJ,IAAI,IAAI/iF,GAAI,YAAY,GAAGuqD,IAAI,IAAIvqD,GAAI04C,IAAI,GAAG4R,IAAI,IAAItqD,GAAI44C,IAAI,GAAG4Q,IAAI,IAAIxpD,GAAI,MAAM,GAAGupD,IAAI,IAAIvpD,GAAI+1E,IAAI,GAAGiN,IAAI,IAAIhjF,GAAIisD,IAAI,EAAE,CAClJ,SAAS0rC,IAAI7sS,EAAEkS,EAAEqd,EAAExvB,GAAS,IAAIwF,EAAEu1B,EAAM,IAAlBqzP,MAAc5oR,EAAE,EAAMu1B,EAAE,EAAEA,EAAEvL,EAAEuL,IAAKv1B,EAAEmlM,GAAI3R,GAAIH,GAAI1mL,EAAE4oB,GAAG+9J,KAAKD,GAAI74L,EAAE84L,MAAMD,GAAIqxB,GAAI1kN,GAAGszL,MAAM74L,EAAE86B,GAAGmvL,GAAI1kN,GAAGA,EAAEwqO,GAAIxqO,EAAE,IAAI,OAAO0kN,GAAI1kN,EAAE,CACnJ,SAAS80T,IAAIr6T,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAM,IAAJA,EAAE,EAAMxF,EAAE,EAAEA,EAAEiwQ,IAAIjwQ,IAAKwF,EAAE0tI,EAAK3/H,KAAKugB,IAAItuB,EAAEu4S,GAAI99S,EAAEA,EAAEkS,EAAES,GAAG5S,GAAGwvB,IAAsD,OAAlDrd,IAAIshQ,KAAMG,MAAQ3zQ,EAAEkS,IAAI3M,EAAE0tI,EAAK3/H,KAAKugB,IAAItuB,EAAEvF,EAAEkS,EAAEA,IAAW3M,CAAC,CACnJ,SAAS+0T,IAAIt6T,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAW,GAAToyN,GAAIjgN,EAAE,IAAOA,GAAGA,IAAIA,EAAG,OAAOimL,GAAGjmL,EAAEo6N,IAAItsO,EAAE,IAAI,uBAAwB,GAAeD,GAAZwvB,EAAE+8M,IAAItsO,EAAE,KAAQkS,QAAQqd,EAAExvB,GAAGmS,EAAE,GAAG,GAAG,OAAOimL,GAAGp4L,EAAE,CACnJ,SAASo4S,IAAIn4S,GAAS,IAAIkS,EAAEqd,EAAExvB,EAAmB,OAAjCu/N,KAAuC,OAAfv/N,EAAEy/N,IAAVjwM,EAAE,IAAIvvB,IAA8Bm4L,IAAIt3B,GAAI9gK,GAAGA,KAAamS,EAAK,OAAdnS,EAAEw/N,IAAIhwM,IAq4BzF,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAE2M,EAAE,EAAEnS,EAAEC,EAAE9B,OAAOqH,EAAExF,EAAE,EAAEwvB,EAAE,EAAE,KAAMA,EAAEhqB,GAAMqyL,GAAIroK,EAAE,EAAEvvB,EAAE9B,QAAbgU,EAAqBlS,EAAEqf,WAAWkQ,EAAE,IAAIqoK,GAAIroK,EAAE,EAAEvvB,EAAE9B,QAAQ,IAAI8B,EAAEqf,WAAWkQ,EAAE,IAAIqoK,GAAIroK,EAAE,EAAEvvB,EAAE9B,QAAQ,IAAI8B,EAAEqf,WAAWkQ,EAAE,IAAIqoK,GAAIroK,EAAEvvB,EAAE9B,QAAQ,IAAI8B,EAAEqf,WAAWkQ,GAAG,GAAGrd,QAASA,GAAI,EAAEqd,GAAG,EAAE,KAAMA,EAAExvB,GAAGmS,EAAI,GAAFA,EAAKgnL,GAAIl5L,EAAEuvB,KAAW,OAANrd,GAAI,EAASA,CAAC,CAr4B1LqoT,CAAIv6T,GAAGm4L,IAAIt3B,GAAI9gK,GAAGA,IAvrDjG,KAALy6T,MAAUj7F,IAAIC,IAAIA,IAAI,IAAItsF,EAAGsnL,IAAI,KAAIA,IAurD2Eh7F,IAAIjwM,GAAGrd,EAASA,EAAC,CACnJ,SAASs2S,IAAIxoT,EAAEkS,EAAEqd,GAAGsyQ,IAAItyQ,EAAE,8BAA8B,GAAGvvB,EAAEA,EAAE,IAAIi1N,GAAGwlG,IAAIz6T,EAAEkS,EAAE,MA4yC9E,SAAalS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,IAAI2U,EAAE28N,GAAGtvO,EAAEA,GAAG27M,KAAKhpM,EAAE4oM,MAAM,CAAiB,IAAhBzgL,EAAE6iJ,GAAGhrK,EAAE8oM,KAAK,KAASvpM,EAAEqd,EAAErxB,OAAO,EAAwE,IAArE6B,EAAE,IAAIi/N,GAAIrhD,GAAG0iB,GAAGrgM,EAAEA,EAAE86B,GAAG,KAAKmsL,KAAMnC,GAAI/kN,EAAE,IAAIyoK,GAAIt2J,IAAI3M,EAAE,IAAIgkN,GAAIzuL,EAAE5oB,EAAE,GAAS3M,EAAE2M,EAAE3M,EAAExF,EAAEk/K,MAAK,CAAqD,OAAjDqqC,GAAI/jN,EAAE2M,EAAE3M,EAAExF,EAAEk/K,MAAf1vJ,EAAqBouJ,GAAGp4K,EAAExF,EAAEs7M,GAAG91M,EAAEgqB,EAAEhqB,EAAE2M,KAAK,IAAKzO,GAAG,EAASk6K,GAAG4qB,IAAIh5K,GAAG8tI,MAAMq9J,MAAM,KAAK/nT,GAAG,KAAK,EAAElP,EAAE1D,EAAEwvB,EAAErxB,OAAO,EAAE,MAAM,KAAK,EAAEuF,EAAEk3T,IAAI56T,GAAG,MAAM,KAAK,EAAE0D,EAAE,GAAU,GAAJA,IAAUg6M,GAAIh6M,EAAE1D,EAAEwvB,EAAErxB,QAAwB63K,IAArC/3K,EAAqB2/K,GAAG59K,EAAEwvB,EAAE9rB,GAAG,MAAYyO,EAAEA,EAAEqd,GAAGouJ,GAAG4qB,IAAIg3C,GAAIvhP,EAAEkU,EAAEqd,EAAEvxB,IAAIgqM,MAAM4yH,MAAM,IAAI/yG,IAAI8rF,MAAMU,MAAM12H,GAAG4qB,IAAIg3C,GAAIvhP,EAAEkU,EAAEqd,EAAEvxB,GAAG48T,KAAK,IAAI/yG,GAAGusF,KAAK5qF,GAAIjkN,GAAGwiM,GAAIx4K,EAAEsrS,IAAI//R,GAAG,CAAEu3N,GAAIv3N,EAAE,MAAMs3N,GAAIt3N,EAAE,KAAK,CAAC,CA5yCncggS,CAAI96T,EAAEkS,GAi1B1F,SAAalS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAE,IAAIxF,EAAE,IAAI64S,GAAK,IAAIt0I,GAAItkK,EAAEkS,GAAIlS,GAAGD,EAAEmS,GAAa3M,EAAEo4K,IAAXpuJ,EAAE6mQ,GAAIr2R,IAAU8sM,KAAK,IAAoB9E,GAAhB71L,EAAEyrK,GAAGpuJ,EAAEurL,KAAK,KAAW9S,MAAM0/C,KAAKniP,GAAGwiM,GAAIxiM,EAAEotQ,IAAIzgQ,GAAG61L,GAAIxiM,EAAEw1T,KAAKrtG,MAAM,IAAOixC,IAAIp5P,EAAEo4K,GAAG4qB,IAAIr2L,EAAE62L,KAAK,KAAKR,IAAIr2L,EAAE62L,KAAKhB,GAAIxiM,EAAEvH,GAAGq/J,MAAMykI,MAAMxM,MAAME,MAAM73G,GAAG4qB,IAAIg3C,GAAIh6O,EAAEvH,GAAG48T,KAAK,IAAI/yG,IAAI8rF,MAAMM,KAAM,CAj1BtL+mB,CAAIh7T,GAAG+nM,GAAI71L,GAAG81L,MAAMihH,KAAKjpT,EAAEA,GAAGA,EAAEA,EAAE,KAAKyyK,GAAIzyK,EAAEkS,GAAGqwR,IAAIhzQ,EAAE,CAInJ,SAAS0rS,IAAIj7T,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAO,KAAK,KAAK,EAAE,OAAO,IAAIkxR,GAAI,KAAK,EAAE,OAAO,IAAIloH,GAAI,QAAQ,MAAMzI,GAAI,IAAI2O,GAAIq5I,KAAU,MAALl7T,EAAE86B,EAAQ96B,EAAE86B,EAAE,GAAG96B,EAAE2S,KAAM,CACnJ,SAASi8S,IAAI5uT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAqB,IAxlB/C,SAAavF,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAE,IAAIA,EAAE,IAAIogK,GAAI3lK,EAAEkS,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAyBgkN,GAAhBniN,EAAE49K,GAAGC,GAAIr4K,GAAG,IAAUxF,EAAE/B,EAAEkU,EAAEnS,EAAEqS,EAAEmd,EAAG,CAwlBzE4rS,CAAIn7T,EAAEkS,EAAElS,EAAE6T,EAAE0b,EAAEvvB,EAAEiU,GAAO1O,EAAE,IAAIogK,GAAI3lK,EAAEJ,GAAG2F,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA0B6lK,GAAjBhkK,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAWxF,EAAEwF,EAAE2M,EAAElS,EAAE6T,GAAGmwJ,GAAIjkK,EAAEA,EAAE+6B,EAAEvL,EAAEvvB,EAAEiU,GAAGjU,EAAE6T,EAAE3B,EAAElS,EAAEiU,EAAEsb,CAAC,CACnJ,SAAS6rS,IAAIp7T,GAAG,IAAIkS,EAAEqd,EAAIhqB,EAAEu1B,EAAM,IAAJvL,EAAE,EAAMhqB,EAAE,IAAIogK,GAAI3lK,EAAEA,GAAGuF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAIr4K,GAAG,KAAOxF,EAAEwvB,IAA+C,OAA3Crd,EAwajG,SAAalS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAA+D,IAA7D2M,EAAE,IAAIogK,GAAuCmQ,GAAnClzJ,EAAE0uJ,GAAG8U,IAAIuyD,IAAI,GAAGtlP,EAAEA,EAAEuvB,EAAErxB,OAAO,GAAG,GAASqxB,EAAErxB,QAAYqH,EAAE,IAAIogK,GAAI3lK,EAAEA,GAAGuF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA8BqxB,GAArBxvB,EAAE49K,GAAGC,GAAIr4K,GAAG,MAAaxF,KAAImS,EAAEqd,EAAErd,EAAEqd,EAAErxB,QAAQ6B,EAAEg0T,IAAI/zT,EAAED,EAAEwvB,IAAI,OAAOrd,CAAC,CAxa/FmpT,CAAIr7T,GAAG86B,EAAE,KAAK5oB,EAAEqd,EAAErxB,OAAO,IAAI48B,EAdhI,SAAa96B,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAmB,IAAjBgqB,EAAE2/L,GAAI,IAAIn4C,GAAI/2K,GAAOuF,EAAE,IAAIogK,GAAIzzJ,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAS6B,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAK+1T,IAAIl5H,GAAID,GAAIE,GAAIH,GAAI,IAAIprB,GAAI,GAAG,GAAGvnJ,GAAGxvB,IAAI,OAAOwvB,CAAC,CAcjBgsS,CAAIv7T,EAAEkS,IAAW4oB,CAAC,CACpJ,SAASgtM,IAAI9nO,GAAG,IAAIkS,EAAqH,OAA9GlS,EAAE86B,GAAG96B,EAAE86B,EAAE82M,OAAM1/N,EAAEyrK,GAAG39K,EAAE86B,EAAE,IAAI96B,EAAE86B,EAAE6iJ,GAAG82C,GAAIz0N,EAAEkS,GAAG,IAAIlS,EAAE86B,GAAG5oB,GAAa,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEkS,EAAElS,EAAE86B,KAAW96B,EAAE86B,CAAC,CACnJ,SAASmtM,IAAIjoO,GAAG,IAAIkS,EAAqH,OAA9GlS,EAAEhC,GAAGgC,EAAEhC,EAAE4zO,OAAM1/N,EAAEyrK,GAAG39K,EAAEhC,EAAE,IAAIgC,EAAEhC,EAAE2/K,GAAG82C,GAAIz0N,EAAEkS,GAAG,IAAIlS,EAAEhC,GAAGkU,GAAa,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEkS,EAAElS,EAAEhC,KAAWgC,EAAEhC,CAAC,CACnJ,SAASovP,IAAIptP,GAAG,IAAIkS,EAAqH,OAA9GlS,EAAEkS,GAAgB,IAAL,GAAPlS,EAAEkS,EAAE86M,MAAW96M,EAAElS,EAAEkS,EAAElS,EAAEkS,EAAEyrK,GAAG82C,GAAIz0N,EAAEkS,GAAG,IAAIlS,EAAEkS,GAAGA,GAAa,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,GAAGkS,EAAElS,EAAEkS,KAAWlS,EAAEkS,CAAC,CACnJ,SAASspT,IAAIx7T,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAU,MAALvF,EAAED,KAAWC,EAAEuF,IAAIvF,EAAE86B,IAAO/6B,EAAEmS,EAAEkpK,KAi1B/D,SAAap7K,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAiC,KAA7B9T,EAAEuF,EAA8B2M,GAA5BlU,EAAO,MAALgC,EAAED,EAAQ,EAAEC,EAAED,EAAE7B,QAAc,CAAmC,IAAlCmD,EAAErB,EAAED,EAAEC,EAAED,EAAEk+K,GAAGziJ,IAAGigS,IAAI,GAAG,EAAEz9T,EAAE,EAAE,EAAE,GAAO88B,EAAE,EAAEA,EAAE98B,IAAI88B,EAAU,GAAP1oB,EAAE/Q,EAAEy5B,GAAqB,IAAZ/6B,EAAEqS,EAAEO,EAAEmB,EAAE1B,EAAEpU,EAAMyF,EAAE,EAAEA,EAAEqQ,IAAIrQ,EAAkBkP,EAAEimN,GAAI54N,GAArBuF,EAAEo4K,GAAG59K,EAAE0D,GAAG,MAAe23K,QAAM7rJ,EAAEvvB,EAAED,EAAE4S,MAAQ4c,EAAEvvB,EAAED,EAAE4S,GAAG3S,EAAE07T,MAAMnsS,EAAEs4L,GAAGtiN,GAAK,OAAO,CAAI,CAAmB,CAj1BhNo2T,CAAI37T,EAAEA,EAAE86B,EAAE,GAAGv1B,GAAGxF,EAAEm4L,KAAKl4L,EAAED,EAAE7B,SAAOqxB,EAAEvvB,EAAED,EAAEwF,MAAQgqB,EAAEvvB,EAAED,EAAEwF,GAAGvF,EAAE07T,MAAMnsS,EAAEs4L,GAAG31M,KAAKlS,EAAE86B,EAAE,CACnJ,SAAS8gS,IAAI57T,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAE,OAAGmS,EAAEksN,QAAoC,GAATlsN,EAAEi2N,KAA6B,OAAnBpoO,EAAEmS,EAAEmsN,MAAuB,MAAH9uM,EAAQ+iK,GAAGvyL,EAAEwvB,GAAerd,EAAEwiO,MAAM10O,EAAEuF,EAAEyiN,MAAS,MAAHz4L,EAAO,CACnJ,SAASssS,MAAK,IAAI77T,EAAE+wN,GAAG,GAAG8iE,KAAK7zR,EAAEohS,GAAG,IAAI98R,KAAK4N,EAAE+rK,GAAG69I,IAAG9hB,IAAI,IAAIh6S,EAAE,EAAE,GAAGsE,KAAKirB,EAAE0uJ,GAAG69I,IAAG9hB,IAAI,IAAIh6S,EAAE,EAAE,GAAGsE,KAAKtE,EAAE,KAAKsE,KAAKiB,EAAE,KAAKjB,KAAKtG,EAAE,EAAEsG,KAAKw2B,EAAE96B,EAAE,EAAEsE,KAAKqO,EAAE,CAAC,CACpJ,SAASopT,IAAI/7T,GAAGwlN,GAAIzmN,KAAKuF,MAAMA,KAAKjD,GAAG49P,MAAMgF,KAAK3/P,KAAK8N,GAAG2+M,GAAG,EAAEC,KAAK,IAAIC,GAAI,IAAI3sN,KAAK4N,GAAG6+M,GAAG,EAAEC,KAAK,IAAIC,GAAI,IAAI3sN,KAAKvE,EAAE,IAAI44K,GAAIr0K,KAAKw2B,EAAE,IAAIg+I,GAAIx0K,KAAKtE,EAAEA,CAAC,CACpJ,SAASg8T,IAAIh8T,GAAG,IAAIkS,EAAEqd,EAAKvvB,EAAEuvB,EAAErxB,QAAQ,IAA+B+9T,IAAIj8T,EAAE29K,IAA3BzrK,EAAEgqT,IAAIl8T,GAAGy/K,MAAMonB,OAAiB7mM,EAAE,IAAIA,EAAE29K,GAAGzrK,EAAEA,EAAE,IAAIlS,GAAgBi8T,IAAIj8T,EAAE29K,IAAnBpuJ,EAAE2sS,IAAIl8T,EAAE4/K,MAAgB5/K,EAAE,IAAIA,EAAE29K,GAAGpuJ,EAAErd,EAAE,IAAIlS,GAAE,CACpJ,SAASsvR,MAAMA,IAAI56I,EAAI86I,IAAI,IAAIr9E,GAAI,SAAS,GAAGs9E,IAAI,IAAIt9E,GAAIiuF,IAAI,GAAG1Q,IAAI,IAAIv9E,GAAI,kBAAkB,GAAGw9E,IAAI,IAAIx9E,GAAI,gBAAgB,GAAGy9E,IAAI,IAAIz9E,GAAIgqH,IAAI,EAAE,CACpJ,SAASC,IAAIp8T,EAAEkS,EAAEqd,GAAOstM,GAAIl/C,GAAG4qB,IAAIr2L,GAAGmrJ,MAAMykI,MAAM,OAAMxW,GAAItrR,EAAEkS,EAAEmqT,IAAInqT,EAAEqd,IAAI+7P,GAAItrR,EAAEkS,EAAEmqT,IAAInqT,GAAGutK,MAAMonB,OAAOykF,GAAItrR,EAAEkS,EAAEmqT,IAAInqT,EAAE6tK,MAAMknC,KAAMnC,GAAI5yM,EAAEE,EAAE,IAAI05J,GAAI9rK,IAAI,CACpJ,SAASs8T,IAAIt8T,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAQ4S,EAAwC,IAAIA,EAAtCgrK,GAAG0iB,GAALtgM,EAAQC,EAAEA,EAAeA,EAAEkS,EAAfA,GAAG,IAA6BypM,KAAKhpM,EAAE4oM,MAAuB,GAAGghH,IAAIv8T,EAAEuvB,EAAvBouJ,GAAGhrK,EAAE8oM,KAAK,KAAmB,OAAO,EAAM,OAAO,CAAK,CACpJ,SAAS+gH,IAAIx8T,GAAG,IAAIkS,EAAEqd,EAAE,IAAIA,EAAE,IAAIwvJ,GAAI/+K,GAAGuvB,EAAEhqB,GAAGgqB,EAAEvxB,EAAEihL,MAAuB,IAAhB/sK,EAAEyrK,GAAGwB,IAAI5vJ,GAAG,KAAWhqB,GAAwC,KAAnC2M,EAAEnS,IAAImS,EAAEnS,EAAE,IAAIi/K,GAAIyM,IAAGv5K,EAAE,IAAIA,EAAEnS,GAAG/B,EAAM,OAAO,EAAM,OAAO,CAAK,CACpJ,SAASy+T,IAAIz8T,GAAG,IAAIkS,EAAEqd,EAAE,IAAIA,EAAE,IAAIwvJ,GAAI/+K,GAAGuvB,EAAEhqB,GAAGgqB,EAAEvxB,EAAEihL,MAAuB,IAAhB/sK,EAAEyrK,GAAGwB,IAAI5vJ,GAAG,KAAWhqB,GAAwC,KAAnC2M,EAAEnS,IAAImS,EAAEnS,EAAE,IAAIi/K,GAAIyM,IAAGv5K,EAAE,IAAIA,EAAEnS,GAAG/B,EAAM,OAAO,EAAM,OAAO,CAAK,CAEpJ,SAAS0+T,IAAI18T,GAAG,IAAIkS,EAAEqd,EAA8C,IAA5CvvB,EAAEuvB,GA80C1B,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAoC,GAAlCpN,EAAE,IAAIgkN,GAAIvpN,EAAEuF,EAAE,GAAGxF,EAAE,IAAIwpN,GAAIvpN,EAAEA,EAAE,GAAMA,EAAED,EAAG,IAAIwvB,EAAE,EAAEA,EAAEvvB,EAAEkS,EAAEqd,IAAK+5L,GAAI/jN,EAAE2M,EAAE3M,EAAExF,EAAEk/K,MAAM15K,EAAExF,EAAEs7M,GAAG91M,EAAEgqB,EAAEhqB,EAAE2M,UAAW,IAAIqd,EAAE,EAAEA,EAAEvvB,EAAEkS,EAAE,EAAEqd,IAAK+5L,GAAI/jN,EAAE2M,EAAE3M,EAAExF,EAAEk/K,MAAM15K,EAAExF,EAAEs7M,GAAG91M,EAAEgqB,EAAEhqB,EAAE2M,KAAKs3M,GAAIjkN,GAAI2M,EAAEouK,IAAKgpC,GAAI/jN,EAAE2M,EAAE3M,EAAExF,EAAEk/K,MAAMsB,GAAGh7K,EAAExF,EAAEs7M,GAAG91M,EAAEgqB,EAAEhqB,EAAE2M,QAAQ,KAAMlS,EAAE86B,EAAE5oB,EAAEyqT,KAAI,CAAS,IAAR7hS,EAAE5oB,EAAES,EAAE,EAAQsgI,EAAK3/H,KAAKskB,IAAI1lB,EAAE4oB,GAAG6hS,OAAOhqT,EAAET,EAAEouK,IAAKgpC,GAAI/jN,EAAE2M,EAAE3M,EAAExF,EAAEk/K,MAAMsB,GAAGh7K,EAAExF,EAAEs7M,GAAG91M,EAAEgqB,EAAEhqB,EAAE2M,QAAQo3M,GAAIvpN,EAAEmS,EAAEnS,EAAEA,EAAEk/K,MAAMl/K,EAAEA,EAAEs7M,GAAGt7M,EAAEwvB,EAAExvB,EAAEmS,KAAQS,EAAE3S,EAAEkS,IAAGo3M,GAAI/jN,EAAE2M,EAAE,GAAG3M,EAAEvF,EAAEq7M,GAAG91M,EAAEgqB,IAAIhqB,EAAE2M,GAAG0qT,IAAI58T,EAAEA,EAAEkS,EAAES,EAAEmoB,EAAE/6B,EAAEwF,GAAG+jN,GAAI/jN,EAAE2M,EAAE3M,EAAExF,EAAEk/K,MAAM15K,EAAExF,EAAEs7M,GAAG91M,EAAEgqB,EAAEhqB,EAAE2M,MAAKo3M,GAAIvpN,EAAEmS,EAAE,GAAGnS,EAAEC,EAAEq7M,GAAGt7M,EAAEwvB,IAAIxvB,EAAEmS,EAAE,CAAC,IAAIlS,EAAED,EAAG,IAAIwvB,EAAE,EAAEA,EAAEvvB,EAAEkS,EAAE,EAAEqd,IAAK+5L,GAAI/jN,EAAE2M,EAAE3M,EAAExF,EAAEk/K,MAAM15K,EAAExF,EAAEs7M,GAAG91M,EAAEgqB,EAAEhqB,EAAE2M,KAAKs3M,GAAIjkN,GAAIvF,EAAED,GAAE,EAAKC,EAAEuvB,GAAE,CAAI,CA90ClkBstS,CAAI78T,GAAGuvB,EAAE,IAAIiqJ,GAAmBoE,GAAf1rK,EAAE,IAAIyzJ,GAAI3lK,EAAEA,IAAgBkS,EAAElS,EAAEkS,EAAEqd,EAAEA,EAAErxB,QAAQ0nO,GAAIr2M,EAAEouJ,GAAGC,GAAI1rK,GAAG,KAAKlS,GAA4B,OAAzBspN,GAAS,GAAL/5L,EAAErd,GAAMkyN,GAAI70M,EAAEA,EAAEA,EAAErd,GAAUqd,CAAC,CACrJ,SAASsvI,MAAMA,IAAInqB,EAASiqB,MAALm+J,IAAWC,IAAKC,IAAI,IAAIr5G,GAAI,GAAG,IAAID,IAAK3jD,MAAMq8I,KAAK4gB,KAAK,IAAIt5G,GAAI0qG,IAAI,GAAG6O,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAI,IAAI75G,GAAI85G,KAAK9vG,MAAM,GAAO,CACpJ,SAAS+vG,IAAIz9T,EAAEkS,EAAEqd,EAAExvB,GAAG,OAAOmS,GAAG,KAAK,EAAE,OAAQlS,EAAEuF,IAAIvF,EAAEuF,EAAE,IAAIwlN,GAAIl9B,IAAG7tL,EAAE,EAAE,IAAIA,EAAEuF,EAAE,KAAK,EAAE,OAAQvF,EAAED,IAAIC,EAAED,EAAE,IAAIgrN,GAAIl9B,IAAG7tL,EAAE,EAAE,IAAIA,EAAED,EAAG,OAAOynT,GAAIxnT,EAAEkS,EAAEqd,EAAExvB,EAAE,CACpJ,SAAS29T,IAAI19T,GAAG,IAAIkS,EAAsH,OAA/GlS,EAAEA,GAAGA,EAAEA,EAAE4xO,OAAM1/N,EAAEyrK,GAAG39K,EAAEA,EAAE,IAAIA,EAAEA,EAAE29K,GAAG82C,GAAIz0N,EAAEkS,GAAG,KAAKlS,EAAEA,GAAGkS,GAAa,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEkS,EAAElS,EAAEA,KAAWA,EAAEA,CAAC,CACpJ,SAAS29T,IAAI39T,GAAG,OAAGA,EAAE,IAAgBA,EAAE,KAAP,EAAwBA,GAAG,GAAUA,EAAE,GAAMA,EAAE,IAAW,EAAKA,GAAG,GAAUA,EAAE,GAAG,GAAMA,EAAE,IAAW,EAASA,EAAE,GAAG,EAAE,CACpJ,SAASiyP,IAAGjyP,EAAEkS,GAAG,GAAM,MAAHlS,EAAS,MAAMkzK,GAAI,IAAI8O,GAAI,2BAA2B9vK,IAAS,GAAM,MAAHA,EAAS,MAAMghK,GAAI,IAAI8O,GAAI,wBAAwBhiL,EAAE,SAAU,CAErJ,SAAS49T,IAAI59T,EAAEkS,GAAG,IAAIqd,EAAuH,OAArHA,EAAEgvJ,GAAGC,GAAGyU,IAAG,GAAGwzD,IAAI,GAAG,GAAG,CAACq3D,GAAI99S,EAAEA,EAAE,GAAGkS,GAAG4rS,GAAI99S,EAAEA,EAAE,GAAGkS,GAAG4rS,GAAI99S,EAAEA,EAAE,GAAGkS,KAAQlS,EAAED,IAAGwvB,EAAE,GAAG0jH,EAAK3/H,KAAKugB,IAAItE,EAAE,GAAGA,EAAE,IAAIA,EAAE,GAAGA,EAAE,IAAUA,CAAC,CACrJ,SAASsuS,IAAI79T,EAAEkS,GAAG,IAAIqd,EAAuH,OAArHA,EAAEgvJ,GAAGC,GAAGyU,IAAG,GAAGwzD,IAAI,GAAG,GAAG,CAACu3D,GAAIh+S,EAAEA,EAAE,GAAGkS,GAAG8rS,GAAIh+S,EAAEA,EAAE,GAAGkS,GAAG8rS,GAAIh+S,EAAEA,EAAE,GAAGkS,KAAQlS,EAAED,IAAGwvB,EAAE,GAAG0jH,EAAK3/H,KAAKugB,IAAItE,EAAE,GAAGA,EAAE,IAAIA,EAAE,GAAGA,EAAE,IAAUA,CAAC,CACrJ,SAASs/P,MAAMA,IAAIn6I,EAAIq6I,IAAI,IAAIz9E,GAAI,SAAS,GAAG09E,IAAI,IAAI19E,GAAI9L,IAAI,GAAGypF,IAAI,IAAI39E,GAAI8uF,IAAI,GAAGlR,IAAI,IAAI59E,GAAI,cAAc,GAAG69E,IAAI,IAAI79E,GAAI,qBAAqB,EAAE,CACrJ,SAASk1F,IAAIxmS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAa,IAAXvF,EAAEkS,EAAEA,EAAES,GAAG,EAAM5S,EAAE++P,IAAI5sP,EAAEnS,EAAE,GAAGA,EAAEmS,GAAGnS,EAAEA,EAAEwvB,GAAqBhqB,GAAjBgqB,EAAEouJ,GAAGohF,GAAIh/P,GAAG,MAASwvB,EAAY,GAAVvvB,EAAEkS,EAAE3M,EAAEoN,GAAMizN,GAAI5lO,EAAEA,EAAEuvB,GAAa,GAAVvvB,EAAEkS,EAAE3M,EAAEoN,GAAO3S,EAAEkS,EAAE3M,EAAEoN,GAAG,EAAG6zR,IAAIxmS,EAAEuF,EAAG,CAErJ,SAASu4T,IAAI99T,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAIoN,EAAElP,EAA6C,IAA3CA,EAAEzD,EAAE0S,EAAER,EAAElS,EAAE0S,GAAGR,EAAElS,EAAED,GAAGwvB,EAAExvB,EAAEwvB,EAAEvvB,EAAEJ,EAAE2vB,EAAErxB,OAAOqH,EAAE,EAAMoN,EAAE,IAAIgzJ,GAAI3lK,EAAEJ,GAAG+S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAA0B6/T,IAAfpgJ,GAAGC,GAAIjrK,GAAG,KAAWlP,EAAE1D,EAAEwF,KAAKA,CAAE,CAGrJ,SAASy4T,IAAIh+T,EAAEkS,EAAEqd,GAASsyQ,IAAItyQ,EAAE,4BAA4B,GAAM0yJ,GAAIk6B,GAAG5T,IAAIr2L,GAAGw4R,KAAMC,UAzyBtF,SAAa3qS,EAAEkS,GAAG,IAAIqd,EAAEA,EAAE,IAAImqH,GAAIikC,GAAGzrK,EAAEA,EAAE,IAAIyrK,GAAGzrK,EAAEA,EAAE,IAAIyrK,GAAGzrK,EAAEA,EAAE,IAAIkxM,GAAIlxM,EAAElS,EAAE,IAAIshO,GAAIthO,EAAEuvB,EAAErd,GAAG,CAyyBK+rT,CAAIj+T,EAAEkS,EAAE4oB,GAAG0xP,GAAIt6Q,EAAE4oB,EAAK5oB,EAAEqd,IAAWi9P,GAAIt6Q,EAAE4oB,EAAE5oB,EAAEqd,GAAGgzQ,IAAIhzQ,EAAE,CACrJ,SAAS66N,IAAGpqP,GAAG,IAAIkS,EAAU,GAARA,EA5drB,SAAYlS,GAAG,IAAIkS,EAAuD,IAArD6xK,GAAG/jL,GAAGigO,IAAG,EAAK,uCAA2C/tN,EAAE,EAAEA,EAAE,GAAGk5M,IAAGprN,GAAGkS,IAAKi5M,GAAGnrN,GAAG,OAAOkS,CAAC,CA4dzF84E,CAAGhrF,IAAOorN,IAAGprN,GAAI,MAAMkzK,GAAI,IAAIgO,GAAI,wEAAwEhvK,EAAE,MAAM,OAAOi5M,GAAGnrN,EAAE,CACtJ,SAASk+T,IAAIhsT,EAAEqd,EAAExvB,GAAS,IAAI,OAAOw2S,IAAIrkS,EAAEqd,EAAErd,EAAEE,EAAErS,EAAEmS,EAAE7Q,EAAE,CAAC,MAAMrB,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,IAAekzK,GAAI,IAAIgO,GAAhBlhL,IAAsB2S,EAAEwrT,IAAI5uS,EAAEy0J,IAAIjkL,EAAE,OAAkBmzK,GAAIlzK,IAAE,CAAC,CACtJ,SAASo+T,IAAIlsT,EAAEqd,EAAExvB,GAAS,IAAI,OAAOs+T,IAAInsT,EAAEqd,EAAErd,EAAEE,EAAErS,EAAEmS,EAAE7Q,EAAE,CAAC,MAAMrB,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,IAAekzK,GAAI,IAAIgO,GAAhBlhL,IAAsB2S,EAAEwrT,IAAI5uS,EAAEy0J,IAAIjkL,EAAE,OAAkBmzK,GAAIlzK,IAAE,CAAC,CACtJ,SAASs+T,IAAIpsT,EAAEqd,EAAExvB,GAAS,IAAI,OAAOw+T,IAAIrsT,EAAEqd,EAAErd,EAAEE,EAAErS,EAAEmS,EAAE7Q,EAAE,CAAC,MAAMrB,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,IAAekzK,GAAI,IAAIgO,GAAhBlhL,IAAsB2S,EAAEwrT,IAAI5uS,EAAEy0J,IAAIjkL,EAAE,OAAkBmzK,GAAIlzK,IAAE,CAAC,CACtJ,SAAS0tT,IAAI1tT,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAO8sK,MAAMG,IAAI,KAAK,EAAE,OAAOH,MAAMM,IAAI,KAAK,EAAE,OAAON,MAAMC,IAAI,KAAK,EAAE,OAAOD,MAAMonB,IAAI,QAAQ,OAAOpnB,MAAMqnB,IAAK,CAEtJ,SAASooH,IAAIlvT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAe,IAAIA,EAAbopN,GAAInpN,EAAEkS,GAAWypM,KAAK57M,EAAEw7M,MAAuB,GAAuB,MAApBhT,IAAnBh5K,EAAEouJ,GAAG59K,EAAE07M,KAAK,KAAczT,MAAM2qE,OAAa3iD,GAAI,IAAIwhD,GAAIjiP,EAAErd,IAAK,OAAO,EAAM,OAAO,CAAK,CACtJ,SAAS60S,IAAI/mT,EAAEkS,GAA4H,OAAzHiwM,GAAIjwM,EAAElS,EAAEuF,EAAEvF,EAAED,GAAiB,GAAdC,EAAEuvB,EAAEA,EAAErxB,OAAU,EAAE8B,EAAEkS,IAAIkwM,GAAIlwM,EAAElS,EAAE86B,GAAG96B,EAAEA,EAAEizI,EAAK3/H,KAAKugB,IAAI7zB,EAAEA,EAAEkS,EAAE4oB,GAAG96B,EAAED,GAAGmS,EAAES,GAAiB,GAAd3S,EAAEuvB,EAAEA,EAAErxB,OAAU,EAAE8B,EAAEkS,GAAG6jK,GAAI/1K,EAAEuvB,EAAErd,IAAU,CAAI,CACtJ,SAASssT,IAAIx+T,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAuB,IAArBA,EAAE,EAAE5S,EAAEwvB,EAAEvvB,EAAEA,EAAEuvB,EAAErxB,OAAW48B,EAAE,IAAI6qI,GAAI3lK,EAAEA,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAA0B0wT,IAAjBrpT,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAWv1B,EAAEsO,EAAEtO,EAAE0O,EAAEtB,EAAE5S,GAAG+9T,IAAIv4T,EAAEvF,EAAED,EAAEwF,EAAEmN,EAAER,EAAEnS,KAAK4S,CAAE,CAEtJ,SAAS8rT,IAAIz+T,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAuB,IAArB8B,EAAE2M,EAAEhU,OAAO,EAAEyU,EAAE,EAAElP,EAAE,EAAM1D,EAAE,EAAEA,GAAGwF,EAAExF,IAAK+6B,EAAE5oB,EAAEnS,GAAGwvB,EAAEmvS,IAAIn5T,EAAExF,GAAG+gT,GAAI,EAAE9gT,EAAEuF,EAAExF,GAAG+gT,GAAI9gT,EAAED,GAAG4S,GAAGmoB,EAAE96B,EAAEuvB,EAAE9rB,GAAGq3B,EAAE5oB,EAAEqd,EAAE,OAAO,IAAI0lL,GAAItiM,EAAElP,EAAE,CACtJ,SAASk7T,IAAI3+T,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAA6C,IAA3C4c,EAAErd,EAAE+sK,KAAKj/K,EAAEwwQ,GAAGxwQ,EAAEhC,EAAEuxB,GAAGuL,EAAE5oB,EAAEypM,KAAKhpM,EAAE3S,EAAEhC,EAAEgC,EAAEhC,GAAGuxB,EAAMxvB,EAAE4S,EAAE5S,EAAEC,EAAEhC,IAAI+B,EAAGwF,EAAEu1B,EAAE2gL,KAAK8O,GAAIvqN,EAAED,EAAEC,EAAEs7K,GAAGv7K,EAAEwF,IAAIvF,EAAEywQ,GAAG1wQ,EAAEwF,GAAGvF,EAAEi4O,KAAK,OAAU,GAAH1oN,CAAI,CAGtJ,SAASy+Q,IAAIhuS,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,GAAG,IAAIzF,EAAEoU,EAAMrS,KAAU/B,EAAE+B,EAAEC,EAAE,KAAQguS,IAAIhuS,EAAEkS,EAAEqd,EAAEvxB,EAAEuH,EAAEu1B,EAAEnoB,EAAElP,GAmEpF,SAAazD,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,GAAG,IAAIlP,EAAEzF,EAAE,GAAGkU,EAAE8tO,OAAOhiP,EAAEgC,EAAEA,EAAEk5S,GAAG3pR,EAAExvB,GAAG/B,EAAE,IAAIuH,GAAM,GAAHvH,GAAO,OAAO,EAAM,GAAGkU,EAAEm/R,OAAO5tS,EAAEzD,EAAEA,EAAEk5S,GAAG3pR,EAAEuL,GAAGr3B,EAAE,IAAIkP,GAAM,GAAHlP,GAAO,OAAO,EAAM,OAAO,CAAI,CAnEtEm7T,CAAI5+T,EAAEuvB,EAAExvB,EAAEA,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,IAAIyO,EAAE21M,GAAG9nN,IAAGqS,EAAErS,EAAEC,EAAE,KAAQguS,IAAIhuS,EAAEkS,EAAEqd,EAAEnd,EAAE7M,EAAEu1B,EAAEnoB,EAAElP,GAAE,CAEvJ,SAAS8yS,IAAIrkS,EAAEqd,EAAExvB,GAAG,IAAI,OAAO67M,GAAI0lF,GAAIpvR,EAAEqd,EAAExvB,GAAG,EAAE,CAAC,MAAMC,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAAYkzK,GAAI,IAAIgO,GAAI29I,IAAI3sT,EAAEhS,EAAE,IAAIgS,EAAE9O,EAAE07T,IAAIvvS,EAAEy0J,IAAIjkL,EAAEg/T,MAAiB7rJ,GAAIlzK,IAAE,CAAC,CACvJ,SAASq+T,IAAInsT,EAAEqd,EAAExvB,GAAG,IAAI,OAAO67M,GAAI0lF,GAAIpvR,EAAEqd,EAAExvB,GAAG,EAAE,CAAC,MAAMC,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAAYkzK,GAAI,IAAIgO,GAAI29I,IAAI3sT,EAAEhS,EAAE,IAAIgS,EAAE9O,EAAE07T,IAAIvvS,EAAEy0J,IAAIjkL,EAAEg/T,MAAiB7rJ,GAAIlzK,IAAE,CAAC,CACvJ,SAASu+T,IAAIrsT,EAAEqd,EAAExvB,GAAG,IAAI,OAAO67M,GAAI0lF,GAAIpvR,EAAEqd,EAAExvB,GAAG,EAAE,CAAC,MAAMC,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAAYkzK,GAAI,IAAIgO,GAAI29I,IAAI3sT,EAAEhS,EAAE,IAAIgS,EAAE9O,EAAE07T,IAAIvvS,EAAEy0J,IAAIjkL,EAAEg/T,MAAiB7rJ,GAAIlzK,IAAE,CAAC,CACvJ,SAASg/T,IAAI9sT,EAAEqd,GAAG,IAAS,GAANrd,EAAES,EAAO,MAAMugK,GAAI,IAAI8B,IAAK9iK,EAAEg7S,KAAK,IAAIh7S,EAAEnS,EAAEqH,GAAG8K,EAAES,EAAE4c,GAAGrd,EAAE4oB,EAAE5oB,EAAEnS,EAAEqS,CAAC,CAAC,MAAMpS,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,IAAWkzK,GAAI,IAAIiC,IAAgBjC,GAAIlzK,IAAE,CAAC,CACxJ,SAASi/T,IAAIj/T,EAAEkS,EAAEqd,GAAGsyQ,IAAItyQ,EAAE,iCAAiC,GAAGvvB,EAAEkS,EAAEyrK,GAAG4qB,IAAIr2L,GAAG81L,MAAMk3H,MAAM,KAygDxF,SAAal/T,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAIlU,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAEC,EAAEC,EAAEz7F,EAAE27F,EAAED,EAAErjJ,EAAY,IAAVsjJ,EAAE,IAAIjf,GAAQpyK,EAAE,IAAIylK,GAAIzzJ,EAAEA,GAAGhS,EAAEF,EAAEE,EAAEqvB,EAAEA,EAAErxB,QAAyB,IAAIiT,EAAE,IAAIw0J,GAAxBgY,GAAGC,GAAI19K,GAAG,IAAoBF,GAAGmR,EAAEnR,EAAEmR,EAAEoe,EAAEA,EAAErxB,QAAQ,CAAoC,KAAnCmqB,EAAEs1J,GAAGC,GAAIzsK,GAAG,KAAM/N,GAAG,EAAE0Q,EAAEmkL,IAAIrzJ,EAAEqzJ,IAAQ9G,EAAE,IAAIxrB,GAAIt9I,EAAEjW,GAAG++K,EAAEnxL,EAAEmxL,EAAE5hK,EAAEA,EAAErxB,QAAQ,CAAiB,IAAIqH,EAAE,IAAIogK,IAA1B9iI,EAAE86I,GAAGC,GAAIuT,GAAG,KAAoB5rL,GAAGA,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAIr4K,GAAG,IAAI6rL,EAAEzT,GAAG4qB,IAAIh5K,GAAG8tI,MAAM8hK,MAAM,IAAIn/T,EAAE8T,EAAEm/H,EAAK3/H,KAAKugB,IAAI/f,EAAEs9K,GAAG,IAAIrxL,EAAE,IAAI4lK,GAAI9iI,EAAElwB,GAAG5S,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,IAAIqxL,EAAEzT,GAAG4qB,IAAIh5K,GAAG8tI,MAAM8hK,MAAM,IAAIn/T,EAAE4kC,EAAEquG,EAAK3/H,KAAKugB,IAAI+Q,EAAEwsJ,EAAG,CAAC2W,GAAI1/K,EAAE+2S,IAAIpnH,GAAIlkM,IAAIi0L,GAAI1/K,EAAEg3S,IAAIrnH,GAAIpzK,GAAG,CAAM,IAAJlyB,EAAE,EAAM9S,EAAE,IAAI+lK,GAAIzzJ,EAAEA,GAAGtS,EAAEI,EAAEJ,EAAE2vB,EAAEA,EAAErxB,QAAyB,IAAIiT,EAAE,IAAIw0J,GAAxBgY,GAAGC,GAAIh+K,GAAG,IAAoBI,GAAGmR,EAAEnR,EAAEmR,EAAEoe,EAAEA,EAAErxB,SAASmqB,EAAEs1J,GAAGC,GAAIzsK,GAAG,KAAS/N,EAAE,KAAGwyF,EAAE,IAAIuiF,IAAMjmK,EAAEQ,IAAI4sT,IAAIt/T,EAAEqoB,EAAEutE,GAAG27F,EAAEhiK,EAAEgiK,EAAEhiK,EAAErxB,QAAQ03F,GAAsC,IAAlChsE,EAAEknM,GAAGv/B,EAAEhiK,EAAErxB,QAAQmD,EAAEyvN,GAAGv/B,EAAEhiK,EAAErxB,QAAYyU,EAAE,EAAEA,EAAE4+K,EAAEhiK,EAAErxB,OAAOyU,IAAKojK,GAAInsJ,EAAE,IAAI0oJ,IAAKyD,GAAI10K,EAAE22M,GAAI,IAA8I,IA9Iz5B,SAAah4M,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAmB,IAAjBjU,EAAEsS,EAAEqd,EAAErxB,OAAO8U,EAAE,EAAMc,EAAE,IAAI6xJ,GAAI3lK,EAAEkS,GAAG4B,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAA+B,GAAe,IAArBwU,GAAhBrR,EAAEs8K,GAAGC,GAAI9pK,GAAG,KAAQ9T,GAAOuvB,EAAErxB,OAAP,CAA0E,IAAlCkU,EAAE,EAAEyB,EAAE,KAAKtO,EAAEo4K,GAAGC,GAA7B5pK,EAAE,IAAI2xJ,GAAIjzJ,IAA0B,IAAIooB,EAAE,KAAWv1B,GAAE,CAAsB,IAArBu1B,EAAE6iJ,GAAG0pB,GAAIn1L,EAAE3M,EAAEnC,GAAG,MAAUmsB,GAAG,EAAE,CAA2B,IAA1BvxB,EAAE,KAAKyF,EAAE,IAAI8lN,GAAIloN,EAAErB,EAAEoS,EAAE,GAAS3O,EAAEyO,EAAEzO,EAAE1D,EAAEk/K,OAASqqC,GAAI7lN,EAAEyO,EAAEzO,EAAE1D,EAAEk/K,MAAftsK,EAAqBgrK,GAAGl6K,EAAE1D,EAAEs7M,GAAG53M,EAAE8rB,EAAE9rB,EAAEyO,KAAK,OAAKlU,EAAE2/K,GAAG0pB,GAAIn1L,EAAES,EAAEvP,GAAG,MAAUrD,GAAG+6B,EAAE/6B,GAAG/B,EAAEuxB,EAAEuL,EAAEvL,KAAcvxB,EAAE,KAASA,IAAM6V,IAAGugO,GAAIr0O,EAAEwF,EAAEnC,EAAE40M,GAAIr6B,GAAG0pB,GAAItnM,EAAEwF,EAAEnC,GAAG,IAAIpD,EAAE,IAAI29K,GAAG0pB,GAAI93K,EAAE1b,EAAEzQ,GAAG,IAAI42P,GAAGl/N,IAAGA,EAAEykS,IAAIzkS,EAAEv1B,EAAE3F,KAAKsS,EAAEqd,EAAErd,EAAEqd,EAAErxB,QAAQ48B,EAAEi7I,GAAIxmJ,EAAE,IAAI+iJ,IAAQz+J,GAAG8pK,GAAG0pB,GAAI93K,EAAE1b,EAAEzQ,GAAG,IAAIykN,GAAG/sL,GAAGi7I,GAAIh2K,EAAEi4M,GAAI,KAASjiC,GAAIh2K,EAAEi4M,GAAI,IAAK,CAAC93M,EAAE,KAAQ8T,EAAEhU,EAAEgU,EAAEub,EAAEA,EAAErxB,SAAQgC,EAAEy9K,GAAGC,GAAI5pK,GAAG,IAAI5Q,EAAEu6K,GAAG0pB,GAAIn1L,EAAEhS,EAAEkD,GAAG,KAAKu6K,GAAG0pB,GAAI93K,EAAEhqB,EAAEnC,GAAG,IAAIykN,GAAGzkN,GAAGgxO,GAAIr0O,EAAEG,EAAEkD,EAAE40M,GAAIr6B,GAAG0pB,GAAItnM,EAAEG,EAAEkD,GAAG,IAAIpD,EAAE,KAAI86B,EAAE/6B,EAAEiT,EAAE8nB,EAAEvL,EAAEnd,IAAIyB,EAAEtO,EAAEA,EAAErF,CAAC,GAAG8S,CAAtkB,CAAwkB,CA8IwCwsT,CAAIttT,EAAEq/K,EAAE3nK,EAAEvoB,GAAGiwL,EAAE3T,GAAG88E,IAAIlpE,EAAEtT,GAAGwhJ,IAAGC,IAAI,IAAInuI,EAAEhiK,EAAErxB,OAAO,EAAE,IAAI,KAAKqF,EAAEo6K,GAAG88E,IAAI7wO,EAAEq0J,GAAGyS,IAAGivI,IAAI,GAAG/1S,EAAE2F,EAAErxB,OAAO,EAAE,IAAI,KAAKkU,EAAE6rK,GAAGmV,IAAGsW,IAAI,GAAGroM,EAAEkuB,EAAErxB,OAAO,GAAG,GAAOuF,EAAE,EAAEA,EAAE2O,EAAElU,OAAOuF,IAAK2O,EAAE3O,IAAIg6M,GAAIh6M,EAAEpC,EAAEkuB,EAAErxB,QAAQy/K,GAAGt8K,EAAEkuB,EAAE9rB,GAAG,KAAKzD,EAAgB,IAAd6T,EAAE,EAAEI,EAAE,IAAIq+J,GAAQt0K,EAAE,EAAEA,EAAEszL,EAAEpzL,OAAOF,IAAW,GAANoU,EAAEpU,IAAO+3K,GAAI9hK,EAAEq9K,EAAEtzL,IAAIgW,EAAEiqK,GAAGmV,IAAGsW,IAAI,GAAGpY,EAAEpzL,OAAO,GAAG,GAAG,KAAkB,GAAZ+V,EAAEsb,EAAErxB,QAAyC,IAAX8V,GAAnB4hF,EAAE+nF,GAAGk3D,GAAI5gO,EAAE,GAAG,MAAS/B,GAAG2B,KAAWtQ,EAAEqyF,EAAE1jF,GAAGmvB,QAA+BjvB,GAAzB67B,EAAE0vI,GAAGp6K,EAAEqyF,EAAE1jF,GAAGktO,GAAG,GAAG,MAAWltO,GAAW,GAARE,EAAE67B,EAAE/7B,KAAQ+B,EAAEsb,EAAEtb,EAAEsb,EAAErxB,QAAQ+vC,GAAyC,IAAhCjuC,EAAEA,EAAEi+K,GAAGwhJ,IAAGC,IAAI,IAAIpuI,EAAEpzL,OAAO,EAAE,GAAO48B,EAAE,EAAEA,EAAEw2J,EAAEpzL,OAAO48B,IAAkC,IAA7B13B,EAAEkuL,EAAEx2J,GAAGu2J,EAAEr9K,EAAE8mB,GAAG96B,EAAEA,EAAEqxL,GAAGjuL,EAAEA,EAAE8O,EAAEm/K,EAAMlgL,EAAE,IAAIw0J,GAAIviK,EAAEmC,GAAG4L,EAAEnR,EAAEmR,EAAEoe,EAAEA,EAAErxB,SAASmqB,EAAEs1J,GAAGC,GAAIzsK,GAAG,KAAM/N,EAAEiuL,EAAUrxL,EAAEA,CAAC,CAzgD9vC4/T,CAAI5/T,EAAEkS,GAytCnG,SAAalS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAuG,IAArGK,EAAEw6K,GAAGmV,IAAGsW,IAAI,GAAGx3L,EAAEA,EAAEqd,EAAErxB,OAAO,GAAG,GAAGkU,EAAE6rK,GAAG+4G,IAAG/qD,IAAI,IAAI/5N,EAAEA,EAAEqd,EAAErxB,OAAO,EAAE,GAAGF,EAAEigL,GAAGkuE,IAAGC,IAAI,GAAGl6O,EAAEA,EAAEqd,EAAErxB,OAAO,EAAE,GAAO4V,EAAE9T,EAAEA,EAAEgT,EAAE,EAAEpT,EAAEkU,EAAE5V,OAAO8U,EAAEpT,IAAIoT,EAAE,CAAY,IAAJ5P,EAAE,EAAMuP,EAAE,IAAIgzJ,IAArBtkK,EAAEyS,EAAEd,IAAuBzN,GAAGoN,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,UAAsCuF,EAAb1D,EAAEggN,IAAlBx6M,EAAEo4K,GAAGC,GAAIjrK,GAAG,KAAY4c,IAAUrvB,EAAEogL,GAAIC,GAAGgoB,IAAIr2L,GAAGmrJ,MAAMgpF,QAAQ5iP,EAAE1D,GAAG,GAAK/B,EAAE+B,KAAKG,EAAE2lN,GAAI7lN,EAAEkS,EAAElU,EAAE+B,GAAGwF,IAAInC,EAAE6vI,EAAK3/H,KAAKugB,IAAIzwB,EAAEmC,EAAEgqB,EAAEA,EAAErd,EAAEhS,GAAG,IAAI46B,EAAE,IAAI6qI,GAAItkK,EAAEkE,GAAGu1B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,SAASqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAMl7B,EAAEsS,EAAE9O,EAAEmC,EAAExF,EAAEA,GAAEwvB,EAAEhqB,EAAEgqB,GAAIA,EAAErd,EAAE9O,EAAEmC,EAAExF,EAAEA,EAAEwF,EAAErF,EAAEgS,EAAE3M,EAAExF,EAAEC,EAAEoS,EAAE+zL,GAAI52K,EAAErd,EAAEA,EAAEqd,EAAE,IAAIhqB,EAAElE,EAAErD,EAAEmoM,GAAI52K,EAAErd,EAAEA,EAAEqd,EAAE,IAAIhqB,CAAE,CAAC,CAztCpZs6T,CAAI7/T,EAAEkS,GAyvC5G,SAAalS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAIqD,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAE7pB,EAAEugL,GAAIC,GAAGgoB,IAAIr2L,GAAGmrJ,MAAMyiK,QAAQ3uT,EAAEwsK,GAAG4qB,IAAIr2L,EAAE6tT,KAAK,IAAI//T,EAAEgT,EAAE,EAAEzN,EAAE,EAAEhC,EAAE,GAAG4N,EAAEvR,GAAE,EAAM5B,EAAE,EAAE2U,EAAEulL,IAAI,EAAE,CAAmB,IAAlBp9J,EAAK,GAAH98B,EAAK8V,EAAK,GAAH9V,EAAK4rB,EAAE,EAAY/V,EAAE,EAAEwU,GAAVrU,EAAEhU,EAAEA,GAAU9B,OAAO2V,EAAEwU,IAAIxU,GAAG3T,EAAE8T,EAAEH,IAAKinB,EAAE,KAAKklS,IAAIhgU,EAAEE,EAAE46B,EAAEhnB,EAAE/T,GAAG6pB,GAAGqpH,EAAK3/H,KAAKskB,IAAI13B,EAAEF,GAAG,GAAGyD,EAAEw8T,IAAIjgU,EAAEkS,SAASzO,GAAG,IAAUiP,EAAE,EAAEuB,GAAV7Q,EAAEpD,EAAEA,GAAU9B,OAAOwU,EAAEuB,IAAIvB,EAAqB,GAAM,IAAjB6c,EAAE+jN,GAATpzO,EAAEkD,EAAEsP,IAAY1S,GAAW,IAAIqB,EAAE,IAAIskK,GAAIzlK,EAAEqF,GAAGlE,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAIv8K,GAAG,IAAMzB,EAAEsS,GAAGqd,EAAU,GAAHvxB,GAAS,GAAHA,IAAQgV,GAAQ,IAAI4W,EAAEjX,IAAIK,EAAE7B,IAAInT,EAAE,EAAE2U,EAAEulL,KAAe,GAAHl6L,GAAMA,EAAE,EAAE2U,EAAEiX,IAAO5rB,EAAE,EAAE2U,EAAEiX,IAAQhqB,EAAEgqB,GAAGjX,GAAGA,EAAEiX,EAAErmB,EAAEoP,EAAEiX,EAAEhqB,KAAK2F,EAAE,SAAS3F,GAAG2F,GAAG,GAAG,CAzvChb26T,CAAIlgU,EAAEkS,GAg+CrH,SAAalS,GAAG,IAAIkS,EAAInS,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAE,IAAIl9K,EAAEjU,EAAEA,EAAEqoB,EAAE,EAAElX,EAAE8C,EAAE/V,OAAOmqB,EAAElX,IAAIkX,EAAE,CAAoB,IAAnBxU,EAAEI,EAAEoU,GAAGjW,EAAE8lL,IAAI72L,EAAE62L,IAAQh4L,EAAE,IAAIylK,GAAI9xJ,EAAEtO,GAAGrF,EAAEF,EAAEE,EAAEqvB,EAAEA,EAAErxB,SAAyByU,GAAhBK,EAAE2qK,GAAGC,GAAI19K,GAAG,KAASqvB,EAAK42K,GAAInzL,EAAEuc,EAAEvvB,EAAEgT,EAAE,IAAd,GAAsB,GAAGc,EAAE6pK,GAAG0pB,GAAIr0L,EAAEuc,EAAEvvB,EAAE2S,EAAE,GAAG,IAAIiyB,EAAEihL,GAAI7lN,EAAEkS,EAAEc,EAAEc,GAAGE,EAAEhB,EAAEpT,EAAEsS,EAAEc,EAAEjT,EAAEA,GAAG+T,EAAElU,EAAEsS,EAAE4B,EAAE5T,EAAEgS,EAAE4B,EAAE/T,EAAEC,EAAE4kC,IAAQ5wB,EAAEhB,EAAEpT,EAAEsS,EAAEc,EAAEjT,EAAEA,EAAEqS,EAAE6gI,EAAK3/H,KAAKsgB,IAAI5f,EAAE5B,GAAMO,EAAEK,EAAEuc,EAAEvvB,EAAEuvB,EAAErxB,OAAO,GAAG4V,EAAE6pK,GAAG0pB,GAAIr0L,EAAEuc,EAAEvvB,EAAE2S,EAAE,GAAG,IAAIiyB,EAAEihL,GAAI7lN,EAAEkS,EAAEc,EAAEc,GAAGpB,EAAEoB,EAAElU,EAAEsS,EAAE4B,EAAE/T,EAAEA,GAAGiT,EAAEpT,EAAEsS,EAAEc,EAAE9S,EAAEgS,EAAEc,EAAEjT,EAAEC,EAAE4kC,IAAQlyB,EAAE,EAAEM,EAAEpT,EAAEsS,EAAE7Q,EAAE4xI,EAAK3/H,KAAKsgB,IAAIlhB,EAAErR,GAAqC,IAAlCrD,EAAEk6L,IAAIp9J,GAAE,EAA8Bq2J,EAAE,IAAIxrB,IAA9BpgK,EAAEo4K,GAAG0pB,GAAIxzL,EAAEtO,EAAE,GAAG,KAAoB6M,GAAG++K,EAAEnxL,EAAEmxL,EAAE5hK,EAAEA,EAAErxB,QAA6C,IAApC2kC,EAAE86I,GAAGC,GAAIuT,GAAG,IAAI/tL,EAAEmC,EAAE3F,EAAEsS,EAAE2wB,EAAEjjC,EAAEsS,EAAE2wB,EAAE7iC,EAAEkS,EAAMnS,EAAE,IAAI4lK,GAAI9iI,EAAEt9B,GAAGxF,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAA+BgU,GAAN3O,EAAdo6K,GAAGC,GAAI79K,GAAG,IAAQwvB,GAAMvxB,EAAE4B,EAAEsS,EAAE3O,EAAE3D,EAAEsS,EAAE3O,EAAEvD,EAAEkS,EAAE9O,EAAK6vI,EAAK3/H,KAAKskB,IAAI1lB,GAAG+gI,EAAK3/H,KAAKskB,IAAI55B,IAAIi1I,EAAK3/H,KAAKskB,IAAI1lB,IAAIA,EAAE,EAAEE,EAAE/Q,KAAIrD,EAAEkU,EAAE4oB,GAAE,GAAwC,IAAIlR,EAAE,IAAI+7I,IAA3CliK,EAAEk6K,GAAG0pB,GAAIxzL,EAAEtO,EAAEsO,EAAEtO,EAAEgqB,EAAErxB,OAAO,GAAG,KAAoBkU,GAAGwX,EAAE5pB,EAAE4pB,EAAE2F,EAAEA,EAAErxB,QAA6C,IAApCqF,EAAEo6K,GAAGC,GAAIh0J,GAAG,IAAIxmB,EAAEK,EAAE7D,EAAEsS,EAAE3O,EAAE3D,EAAEsS,EAAE3O,EAAEvD,EAAEkS,EAAMnS,EAAE,IAAI4lK,GAAIpiK,EAAEoP,GAAG5S,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAA+BgU,GAAN2wB,EAAd86I,GAAGC,GAAI79K,GAAG,IAAQA,GAAM/B,EAAE4B,EAAEsS,EAAE2wB,EAAEjjC,EAAEsS,EAAE2wB,EAAE7iC,EAAEkS,EAAE9O,EAAK6vI,EAAK3/H,KAAKskB,IAAI1lB,GAAG+gI,EAAK3/H,KAAKskB,IAAI55B,IAAIi1I,EAAK3/H,KAAKskB,IAAI1lB,IAAIA,EAAE,EAAEE,EAAE/Q,KAAIrD,EAAEkU,EAAE4oB,GAAE,GAAO,GAAGA,GAAM,GAAH98B,EAAM,IAAI4B,EAAE,IAAI+lK,GAAI9xJ,EAAEtO,GAAG3F,EAAEI,EAAEJ,EAAE2vB,EAAEA,EAAErxB,SAAS8U,EAAE2qK,GAAGC,GAAIh+K,GAAG,KAAMA,EAAEsS,GAAGlU,CAAG,CAAC,CAh+C/7BmiU,CAAIngU,GAAGA,EAAEA,EAAE,KAAKA,EAAEkS,EAAE,KAAKqwR,IAAIhzQ,EAAE,CACvJ,SAAS03O,IAAGjnQ,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAA4D,IAA1DA,EAAE96B,EAAEi/K,KAAK/sK,EAAEhU,OAAO48B,IAAI5oB,EAAE0zK,GAAI,IAAItnL,MAAMw8B,GAAG5oB,IAAI3M,EAAE2M,EAAEnS,EAAEC,EAAE27M,KAASpsL,EAAE,EAAEA,EAAEuL,IAAIvL,EAAGo3K,GAAGphM,EAAEgqB,EAAExvB,EAAE07M,MAA+B,OAAzBvpM,EAAEhU,OAAO48B,GAAG6rK,GAAGz0L,EAAE4oB,EAAE,MAAa5oB,CAAC,CAExJ,SAASg9N,IAAGlvO,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAA8B,OAA5BgqB,EAAErd,EAAE26L,KAAKtnM,EAAE2M,EAAE4oM,KAAK/6M,EAAEC,EAAEgxO,GAAGzhN,MAAQwrL,GAAGx1M,KAAKw1M,GAAGh7M,IAAO,MAAHwF,GAAS+sL,GAAG/sL,EAAExF,OAAwB,MAAHA,IAAUC,EAAEmH,GAAGooB,GAA4B,CAIzJ,SAAS6wS,IAAIpgU,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEx2B,KAAKtE,EAAEkS,EAAE5N,KAAKirB,EAAExvB,EAzvH9C,SAAaC,EAAEkS,GAAGlS,EAAEkS,EAAEA,CAAC,CAyvH+BmuT,CAAI/7T,KAAK,IAAI2wM,KAAnB1vM,EAAEvF,EAAEA,GAAsBuvB,GAAGhqB,EAAExF,IAAI8/K,GAAIv7K,KAAK4N,EAAEqd,GAAGuL,EAAE/6B,EAAE,EAAEmS,EAAElS,EAAE6yN,GAAIvuN,KAAK4N,EAAE,EAAE4oB,GAAG+3L,GAAIvuN,KAAK4N,EAAE4oB,EAAE,GAAGi7I,GAAI/1K,EAAEuvB,EAAEjrB,KAAK,CACxJ,SAAS+hR,MAAMA,IAAI3xI,EAAI6xI,IAAI,IAAInyE,GAAI01E,IAAI,GAAGtD,IAAI,IAAIpyE,GAAIksH,IAAI,GAAG75C,IAAI,IAAIryE,GAAI,0BAA0B,GAAGsyE,IAAI,IAAItyE,GAAI,oCAAoC,EAAE,CACxJ,SAASmsH,IAAIvgU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAqB,GAAnBwvB,EAAEouJ,GAAG45B,GAAGv3M,EAAE2S,EAAET,GAAG,IAAU,OAAOqd,EAAsB,GAApBxvB,EAAE49K,GAAG45B,GAAGv3M,EAAEoS,EAAEF,GAAG,KAAW,OAAOnS,EAAE,MAAMmzK,GAAI,IAAIyP,GAAI,oCAAoCzwK,GAAG,CACxJ,SAASsuT,IAAIxgU,EAAEkS,GAAG,GAAGlS,EAAEuvB,GAAGrd,EAAG,OAAOlS,EAAED,EAAO,GAAGC,EAAED,GAAGmS,EAAG,OAAOlS,EAAEuvB,EAAO,MAAM2jJ,GAAI,IAAI2O,GAAI,8DAA+D,CACzJ,SAAS4+I,IAAIzgU,EAAEkS,GAAG,GAAGlS,EAAEuvB,EAAEvxB,GAAGkU,EAAG,OAAOlS,EAAED,EAAE/B,EAAO,GAAGgC,EAAED,EAAE/B,GAAGkU,EAAG,OAAOlS,EAAEuvB,EAAEvxB,EAAO,MAAMk1K,GAAI,IAAI2O,GAAI,QAAQ3vK,EAAE,yCAAyClS,GAAI,CACzJ,SAAS6K,IAAI7K,EAAEkS,GAAG,IAAIqd,EAAE,OAAOrd,EAAES,GAAG,KAAK,EAAE,KAAK,EAAE4c,EAAEvvB,EAAEA,EAAEA,EAAEuvB,EAAExvB,EAAEH,EAAEsS,EAAEqd,EAAExvB,EAAEH,EAAEsS,IAAIqd,EAAEvvB,EAAEuvB,GAAG8jN,GAAIrzO,EAAEkS,GAAGqtK,KAAMunG,KAAKv3P,GAAG,MAAM,KAAK,EAAE,KAAK,EAAE8jN,GAAIrzO,EAAEkS,GAAGqtK,KAAM0lE,KAAK,MAAO,CACzJ,SAAS0B,IAAI3mP,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAInoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAsD,IAApDsR,EAkIxC,SAAa3S,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAc,OAAZA,EAAEvF,EAAEkS,EAAEnS,EAAEwF,EAAExF,EAASmS,EAAES,GAAG,KAAK,EAAE,OAAQ5S,EAAEA,EAAEwvB,EAAE,KAAK,EAAE,OAAOhqB,EAAErF,EAAEF,EAAED,EAAEwvB,EAAEA,EAAE,KAAK,EAAE,OAAOhqB,EAAErF,EAAEgS,EAAEnS,EAAEC,EAAEuvB,EAAE,KAAK,EAAE,OAAQxvB,EAAEmS,EAAEqd,EAAE,QAAQ,OAAQ,EAAG,CAlI3HmxS,CAAIxuT,EAAEqd,EAAEuL,GAAGr3B,EAAE8rB,IAAIkwJ,MAAMM,MAAMxwJ,GAAGqwJ,KAAK,EAAE,EAAExtK,EAAEpS,EAAEuvB,EAAE5c,GAAOtR,EAAE,EAAEA,EAAE+Q,EAAElU,OAAOmD,KAAKrD,EAAEoU,EAAE/Q,IAAK,IAAIrD,GAAGuH,GAAG6M,EAAE/Q,GAAGsR,EAAEA,GAAGlP,GAAGzF,EAAE+B,EAAG,CACzJ,SAAS4gU,IAAI3gU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAA0D,IAAxDA,EAAEC,EAAE86B,EAAE96B,EAAEJ,EAAEq+K,GAAGgV,IAAGwzD,IAAI,GAAG1mP,EAAE,GAAG,GAAGC,EAAED,EAAEk+K,GAAGgV,IAAGwzD,IAAI,GAAG1mP,EAAE,GAAG,GAAOmS,EAAE,EAAEA,EAAEnS,EAAEmS,IAAKqd,EAAEouJ,GAAG0pB,GAAIrnM,EAAEuvB,EAAErd,EAAEA,GAAG,IAAIlS,EAAEJ,EAAEsS,GAAGykT,IAAI32T,EAAEuvB,GAAGvvB,EAAED,EAAEmS,GAAG0uT,IAAI5gU,EAAEuvB,EAAG,CACzJ,SAASm+Q,IAAI1tS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAM,IAAJA,EAAE,EAAMxF,EAAE,EAAEA,EAAEmS,EAAEnS,IAAI,EAAa,IAATC,EAAEgtN,GAAGjtN,MAASwF,EAAE,GAAM,GAAHA,EAAK,CAAC,IAAIgqB,EAAErd,IAAI,EAAEqd,GAAG,IAAIA,IAAI,EAAG,GAAa,IAATvvB,EAAEgtN,GAAGz9L,GAAO,OAAO,EAAG,OAAQ,CAAC,CAAM,OAAOhqB,CAAE,CACzJ,SAASs7T,IAAI7gU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAyC,IAAvCA,EAAEo1M,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAG4oB,EAAE,KAAKvL,EAAEouJ,GAAG39K,EAAE2S,EAAE,KAASpN,EAAE,EAAEA,EAAEvF,EAAEhC,IAAIuH,EAAGxF,EAAEwvB,EAAEhqB,GAAMoN,EAAEs1M,GAAGloN,EAAEmoN,SAAQptL,IAAIA,EAAE,IAAIk3H,IAAKi5B,GAAInwJ,EAAE/6B,IAAM+6B,GAAGgmS,IAAI9gU,EAAE86B,EAAE,CACzJ,SAASimS,IAAI/gU,GAAG,IAAMuvB,EAAExvB,EAAE,IAAIC,EAAE,OAAO,KAAK,GAAGA,EAAEqhC,KAAK,MAAO,GAAa,IAAVthC,EAAE,IAAIukL,GAAQ/0J,EAAEvvB,EAAE27M,KAAKpsL,EAAEgsL,MAAgBkB,GAAI18M,EAAE+jL,GAAbv0J,EAAEksL,OAAkB17M,EAAEC,GAAG,IAAI,OAAOo/M,GAAIr/M,EAAEA,EAAEC,EAAE9B,OAAO,EAAE,CACzJ,SAAS2wO,IAAG7uO,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAEu1B,EAAEnoB,EAAElP,EAAQ,IAAN8xS,GAAGv1S,GAAe,MAALA,EAAEqB,IAAUrB,EAAEqB,EAAE48K,GAAG+iJ,IAAGntI,IAAI,GAAG,EAAE,EAAE,IAAS/4J,EAAE,EAAEnoB,GAAjDpN,EAAwCvF,EAAEqB,GAAWnD,OAAO48B,EAAEnoB,IAAImoB,EAAU+zM,IAALtpO,EAAEu1B,GAAQ5oB,EAAE,KAAKqd,IAAG9rB,EAAEzD,EAAE86B,IAAO+zM,IAAGprO,EAAEyO,EAAEqd,EAAE,CAC1J,SAAS+vP,IAAGt/Q,EAAEkS,GAAG,IAAuBnS,EAAnBwvB,EAAE,IAAIjxB,MAAM4T,GAAS,OAAOlS,GAAG,KAAK,GAAG,KAAK,GAAGD,EAAE,EAAE,MAAM,KAAK,GAAGA,GAAE,EAAM,MAAM,QAAQ,OAAOwvB,EAAG,IAAI,IAAIhqB,EAAE,EAAEA,EAAE2M,IAAI3M,EAAGgqB,EAAEhqB,GAAGxF,EAAE,OAAOwvB,CAAC,CAC1J,SAAS0xS,IAAIjhU,GAAG,IAAMuvB,EAAI,IAAIA,EAAE,IAAIo2I,GAAI3lK,EAAEA,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAIruJ,GAAG,IAAMA,EAAE8/O,KAAkCjsD,GAA7BvlC,GAAI79K,EAAED,GAAMC,EAAEA,EAAEuvB,EAAMvvB,EAAEA,EAAED,EAAS,IAAI2nK,GAAI1nK,IAAIA,EAAEuvB,EAAE2xS,GAAGlhU,GAAGmhU,IAAInhU,EAAE,CAC1J,SAASohU,IAAIphU,GAAG,IAAIkS,EAAEqd,EAAIhqB,EAAE,IAAIgqB,EAAE,IAAIo2I,GAAI3lK,EAAEuF,EAAEgqB,GAAGA,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAQ,CAAkB,IAAIqH,EAAE,IAAIogK,IAA3BzzJ,EAAEyrK,GAAGC,GAAIruJ,GAAG,MAAqBrd,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA0Bg4S,IAAfv4H,GAAGC,GAAIr4K,GAAG,MAAY87T,IAAInvT,EAAE,CAAC,CAC1J,SAASovT,IAAIthU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAc,IAAZ/6B,EAAE,EAAE+6B,EAAE,EAAEv1B,EAAE,EAAMgqB,EAAE,IAAIo2I,GAAI3lK,EAAEA,GAAGuvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAKuL,EAAEm4G,EAAK3/H,KAAKugB,IAAIiH,EAAE5oB,EAAEQ,GAAG3S,GAAGmS,EAAEnS,GAAGwF,EAAE,EAAEvF,EAAEuvB,EAAE,KAAKhqB,EAAEvF,EAAEkS,EAAEnS,EAAEC,EAAED,EAAE+6B,CAAC,CAE1J,SAASymS,IAAIvhU,EAAEkS,GAAG,IAAIqd,EAA4H,OAA1HA,EAAEgvJ,GAAGC,GAAGyU,IAAG,GAAGwzD,IAAI,GAAG,GAAG,CAAC4zE,IAAIr6T,GAAGwzQ,KAAME,KAAKxhQ,GAAGmoT,IAAIr6T,EAAE2zQ,IAAIzhQ,GAAGmoT,IAAIr6T,EAAE4zQ,IAAI1hQ,KAAQlS,EAAE86B,IAAGvL,EAAE,GAAG0jH,EAAK3/H,KAAKugB,IAAItE,EAAE,GAAGA,EAAE,IAAIA,EAAE,GAAGA,EAAE,IAAUA,CAAC,CAC1J,SAASiyS,IAAItvT,EAAEqd,EAAExvB,GAAS,IAAIy2S,IAAItkS,EAAEqd,EAAErd,EAAEE,EAAErS,EAAEmS,EAAE7Q,GAAE,GAAM,EAAK,CAAC,MAAMrB,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,IAAekzK,GAAI,IAAIgO,GAAhBlhL,IAAsB2S,EAAEwrT,IAAI5uS,EAAEy0J,IAAIjkL,EAAE,OAAkBmzK,GAAIlzK,IAAE,CAAC,CAC1J,SAASyhU,IAAIvvT,EAAEqd,EAAExvB,GAAS,IAAIy2S,IAAItkS,EAAEqd,EAAErd,EAAEE,EAAErS,EAAEmS,EAAE7Q,GAAE,GAAK,EAAM,CAAC,MAAMrB,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,IAAekzK,GAAI,IAAIgO,GAAhBlhL,IAAsB2S,EAAEwrT,IAAI5uS,EAAEy0J,IAAIjkL,EAAE,OAAkBmzK,GAAIlzK,IAAE,CAAC,CAC1J,SAASu/P,IAAIv/P,GAAG,IAAIkS,EAAMsgN,GAAIxyN,GAAGq9J,MAAMqkK,SAAcxvT,EAAEyrK,GAAG4qB,IAAIvoM,EAAE0hU,KAAK,KAASzhI,IAAIuuG,MAAME,OAAOx8R,EAAE8nP,GAAG00C,KAAKx8R,EAAE21M,GAAG+mF,MAAa18R,EAAE+tL,GAAG2uG,OAAM18R,EAAE8nP,GAAG40C,KAAK18R,EAAE21M,GAAG6mF,MAAK,CAC1J,SAASrwC,IAAIr+P,GAAG,IAAIkS,EAAMsgN,GAAIxyN,GAAGq9J,MAAMqkK,SAAcxvT,EAAEyrK,GAAG4qB,IAAIvoM,EAAE0hU,KAAK,KAASzhI,IAAIuuG,MAAMK,OAAO38R,EAAE8nP,GAAG60C,KAAK38R,EAAE21M,GAAGknF,MAAa78R,EAAE+tL,GAAG8uG,OAAM78R,EAAE8nP,GAAG+0C,KAAK78R,EAAE21M,GAAGgnF,MAAK,CAE1J,SAAS8yB,IAAI3hU,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAE,IAAIv1B,EAAE2M,EAAE3M,EAAEvF,EAAEuvB,EAAErxB,OAAOqH,IAAI,CAAqC,GAAjCk4M,GAAIl4M,EAAEvF,EAAEuvB,EAAErxB,QAAb48B,EAAqB6iJ,GAAG39K,EAAEuvB,EAAEhqB,GAAG,KAAQgqB,EAAE0wM,GAAGnlM,GAA2B,OAAOv1B,EAA9BxF,EAAEwvB,EAAExvB,EAAEwvB,EAAErxB,QAAQ48B,CAAgB,CAAC,OAAO96B,EAAEuvB,EAAErxB,MAAM,CAC1J,SAAS0jU,IAAI5hU,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAA4E,OAAnE,MAAL3S,EAAEA,GAuVpC,SAAaA,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAgD,IAA9CA,EAAE5oB,EAAEA,EAAEE,EAAEpS,EAAEA,EAAEi+K,GAAGmV,IAAGsW,IAAI,GAAG5uK,EAAEvL,EAAErxB,OAAO,GAAG,GAAGqH,EAAE,EAAMxF,EAAE,EAAEA,EAAE+6B,EAAEvL,EAAErxB,OAAO6B,IAAQ09M,GAAI19M,EAAE+6B,EAAEvL,EAAErxB,QAAqC,IAAlDqxB,EAAqBouJ,GAAG7iJ,EAAEvL,EAAExvB,GAAG,KAAOwF,EAAEgqB,EAAErxB,QAAyB,GAAdqxB,EAAE5c,EAAE4c,EAAErxB,OAAWqH,GAAG,EAAIA,GAAG,EAAGvF,EAAEA,EAAED,GAAGwF,CAAE,CAvVrJs8T,CAAI7hU,EAAEkS,GAAGS,EAAET,EAAEA,EAAEE,EAAEmd,EAAErxB,OAAO48B,EAAEvL,EAAExvB,EAAEqD,GAAUmC,EAANxF,EAAEA,EAAEqD,EAAM,GAAI,IAAImC,EAAEoN,EAAE,GAAUmoB,GAAGv1B,EAAEvF,EAAEA,EAAEuF,GAAGvF,EAAEA,EAAE86B,GAAG96B,EAAEA,EAAE2S,EAAE,GAAG3S,EAAEA,EAAE86B,GAAG96B,EAAEA,EAAEuF,EAAE,CAG1J,SAAS6oP,IAAIpuP,GAAG,IAAIkS,EAAEqd,EAAE,IAAIvvB,EAAEA,EAA6B,IAA1BA,EAAEA,EAAE69P,GAAGhU,GAAIlsE,GAAG39K,EAAE86B,EAAE,KAAK98B,GAAOuxB,EAAE,IAAIwvJ,GAAI8qE,GAAIlsE,GAAG39K,EAAE86B,EAAE,MAAMvL,EAAEhqB,GAAGgqB,EAAEvxB,EAAEihL,MAAO/sK,EAAEyrK,GAAGwB,IAAI5vJ,GAAG,IAAIwmJ,GAAI/1K,EAAEA,EAAE,IAAIqwN,GAAIrwN,EAAEkS,IAAK,OAAOlS,EAAEA,CAAC,CAC3J,SAAS8hU,IAAI5vT,GAAG,IAAIqd,EAAE,IAAIrd,EAAE2wB,IAAS,MAAL3wB,EAAEi/K,GAAc,MAALj/K,EAAE0yB,GAAmB,GAATrV,EAm1CvD,SAAard,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAuC,GAArC/6B,EAAO,MAALmS,EAAEi/K,EAAQj/K,EAAEi/K,EAAEj/K,EAAE0yB,EAAErV,EAAE+vL,GAAIv/M,EAAEqxN,IAAI,MAAY,GAAJ7hM,EAAM,CAAChqB,EAAExF,EAAE0zD,OAAO,EAAElkC,GAAGuL,EAAE,IAAIwpJ,GAAI,GAAGxpJ,EAAE96B,GAAG,WAA8B,IAAnBuvB,EAAE4hM,GAAIpxN,EAAE,KAAKwvB,KAAY8sM,GAAI92N,EAAEgvL,KAAKz5J,EAAE96B,GAAG,IAAYq8N,GAAI92N,EAAEkvL,KAAK35J,EAAE96B,GAAG,IAAYq8N,GAAI92N,EAAEw8T,KAAKjnS,EAAE96B,GAAG,IAAYq8N,GAAI92N,EAAEmvL,KAAK55J,EAAE96B,GAAG,IAAYq8N,GAAI92N,EAAEuvL,KAAKh6J,EAAE96B,GAAG,IAAYq8N,GAAI92N,EAAEyvL,KAAKl6J,EAAE96B,GAAG,IAAYq8N,GAAI92N,EAAE8vL,KAAKv6J,EAAE96B,GAAG,IAAYq8N,GAAI92N,EAAEywL,KAAKl7J,EAAE96B,GAAG,KAAS86B,EAAE96B,GAAG,IAAI86B,EAAE96B,GAAG,GAAGuF,EAAEu1B,EAAE96B,GAAG,KAAI,IAAI,OAAO,IAAI,CAAC,MAAMA,KAAY,IAAI6pL,GAAb7pL,IAAE8pL,GAAI9pL,KAAY,IAAI,MAAMkzK,GAAIlzK,IAAE,CAAC,MAAM,IAAoB,GAAjBs/M,GAAIv/M,EAAEqxN,IAAI,KAAS,CAAC,GAAGiL,GAAIt8N,EAAEw0L,KAAK,OAAOxB,IAAS,GAAGspC,GAAIt8N,EAAE00L,KAAK,OAAOnE,IAAQ,GAAG+rC,GAAIt8N,EAAEgiU,KAAK,OAAO1sG,IAAQ,GAAGgH,GAAIt8N,EAAE20L,KAAK,OAAOzB,IAAQ,GAAGopC,GAAIt8N,EAAE+0L,KAAK,OAAO3B,IAAQ,GAAGkpC,GAAIt8N,EAAEi1L,KAAK,OAAO5B,IAAQ,GAAGipC,GAAIt8N,EAAEs1L,KAAK,OAAO/B,IAAQ,GAAG+oC,GAAIt8N,EAAEi2L,KAAK,OAAOvC,GAAG,CAAC,OAAO,IAAI,CAn1C1pBuuI,CAAI9vT,GAAMqd,EAAGrd,EAAEosL,GAAG/uK,QAAQ,IAAIrd,EAAEosL,GAAG,KAAK,CAAC,MAAMt+L,KAAY,IAAI6pL,GAAb7pL,IAAE8pL,GAAI9pL,KAAY,IAAI,MAAMkzK,GAAIlzK,IAAE,CAAG,OAAOkS,EAAE2wB,CAAC,CAG1J,SAASo/R,IAAIjiU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAY,IAAVA,EAAE,IAAIqjL,GAAQ7oL,EAAEC,EAAE27M,KAAK57M,EAAEw7M,MAAuBylE,IAAhBzxP,EAAEouJ,GAAG59K,EAAE07M,KAAK,IAAUl2M,EAAEvF,EAAE,GAAGuF,EAAEvF,GAAGuvB,EAAEuL,EAAE96B,EAAEkS,EAAE3M,EAAE2M,EAAE+gI,EAAK3/H,KAAKugB,IAAItuB,EAAE2M,EAAEqd,EAAEuL,EAAE5oB,GAAmB,OAAhB3M,EAAE2M,EAAE,IAAI3M,EAAE2M,GAAGA,GAAU3M,CAAC,CAC3J,SAAS28T,IAAIliU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAY,IAAVA,EAAE,IAAIqjL,GAAQ7oL,EAAEC,EAAE27M,KAAK57M,EAAEw7M,MAAuBylE,IAAhBzxP,EAAEouJ,GAAG59K,EAAE07M,KAAK,IAAU,EAAEl2M,EAAE2M,GAAG3M,EAAE2M,GAAGqd,EAAEuL,EAAE5oB,EAAEA,EAAE3M,EAAEvF,EAAEizI,EAAK3/H,KAAKugB,IAAItuB,EAAEvF,EAAEuvB,EAAEuL,EAAE96B,GAAmB,OAAhBuF,EAAEvF,EAAE,IAAIuF,EAAEvF,GAAGkS,GAAU3M,CAAC,CAC3J,SAAS48T,IAAIniU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAQ,IAANA,EAAEm4L,IAAQ3oK,EAAE,IAAIo2I,GAAI3lK,EAAEA,GAAGuvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAyBs0N,GAAhBtgN,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAWy4K,MAAM6oC,QAAQ9wO,EAAEkzI,EAAK3/H,KAAKsgB,IAAI7zB,EAAE49K,GAAG4qB,IAAIr2L,EAAE2+N,KAAK,IAAI7wO,IAAI,OAAOD,CAAC,CAC3J,SAASqiU,IAAIpiU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,GAAa,GAAVmS,EAAEhU,OAAW,OAAO,EAA4D,IAA1DqxB,EAAEmvN,GAAI1+O,EAAEA,EAAEkS,EAAE,IAAIutK,MAAMG,MAAMrwJ,GAAGmvN,GAAI1+O,EAAEA,EAAEkS,EAAEA,EAAEhU,OAAO,GAAGwhL,KAAS3/K,EAAE,EAAEA,EAAEmS,EAAEhU,OAAO6B,IAAKwvB,GAAG8yS,IAAIriU,EAAED,EAAEmS,GAAG,OAAOqd,CAAC,CAC3J,SAASs+Q,MAAMy0B,MAAMh+T,KAAKirB,EAAE,IAAI+iJ,GAAIhuK,KAAKtG,EAAE,IAAIs0K,GAAIhuK,KAAKiB,EAAE,IAAIg7M,GAAIj8M,KAAKw2B,EAAE,IAAIylL,GAAIj8M,KAAKqO,EAAE,IAAI4tM,GAAIj8M,KAAK8N,EAAE,IAAIkgK,GAAIhuK,KAAKtE,EAAE,IAAIsyK,GAAIhuK,KAAK4N,EAAE,IAAIsgK,GAAIluK,KAAKjD,EAAE,IAAImxK,EAAG,CAC3J,SAAS+vJ,IAAIviU,EAAEkS,GAAG,IAAMnS,EAAE,OAAGC,EAAEgtN,IAAI,IAAI,EAAUhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAE,EAAE86O,IAAG5oO,IAAUnS,EAAEqtP,IAAIzvE,GAAG6iG,GAAO7iG,GAAG8sC,GAAIzqN,EAAE,IAAI,KAAOA,EAAE2jL,KAAQ3jL,EAAEgtN,IAAI,IAAI,KAAKhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAED,EAAEH,EAAEG,EAAE+6B,EAAE5oB,GAAE,CAG3J,SAASwwP,IAAI1iQ,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAKC,EAAEkS,GAAGlS,EAAEuvB,IAAUxvB,EAAEC,EAAEA,EAAE9B,OAAOqxB,EAAEimO,GAAIviH,EAAK3/H,KAAKugB,IAAI,EAAE9zB,KAAK,EAAU,GAALC,EAAEkS,GAAmBuvR,GAAIzhS,EAAjBkS,EAAEw1L,GAAI1nM,EAAEA,EAAEuvB,GAAWxvB,GAAGC,EAAEA,EAAEkS,EAAElS,EAAEkS,EAAE,GAAO2jK,GAAI71K,EAAEA,EAAEuvB,GAAGvvB,EAAEuvB,EAAExvB,EAAC,CAC5J,SAAS04T,IAAIz4T,EAAEkS,GAAG,IAAIqd,EAAQ,OAANA,EAAEvvB,EAAEkS,GAAW4zL,IAAI/lC,MAAMmtE,MAAM39M,EAAE0uK,OAAOxe,MAAMG,MAAMrwJ,EAAEgwK,KAAKv/L,EAAEsgL,GAAIC,GAAGhxJ,EAAEy2K,GAAGknC,OAAOh7N,EAAEouK,GAAIC,GAAGhxJ,EAAEy2K,GAAGknC,OAAO39M,EAAE0uK,OAAOxe,MAAMG,MAAMrwJ,EAAEgwK,KAAKv/L,EAAEkS,CAAC,CAC5J,SAASymT,IAAI34T,GAAG,IAAIkS,EAAE,OAAiB,GAAdlS,EAAEkS,EAAEqd,EAAErxB,QAAay/K,GAAG0pB,GAAIrnM,EAAEkS,EAAE,GAAG,IAAIlS,EAAU29K,GAAG0pB,GAAIrnM,EAAEkS,EAAE,GAAG,IAAIlS,EAAiB,OAAfkS,EAAEu1O,GAAIznP,IAAsBkS,EAAS,IAAKlS,EAAEuvB,EAAK42K,GAAInmM,EAAEuvB,EAAEvvB,EAAEA,EAAE,IAAd,EAAiB,CAC5J,SAASwiU,IAAIxiU,GAAG,IAAIkS,EAAE,OAAiB,GAAdlS,EAAE86B,EAAEvL,EAAErxB,QAAay/K,GAAG0pB,GAAIrnM,EAAE86B,EAAE,GAAG,IAAI96B,EAAU29K,GAAG0pB,GAAIrnM,EAAE86B,EAAE,GAAG,IAAI96B,EAAiB,OAAfkS,EAAEu1O,GAAIznP,IAAsBkS,EAAS,IAAKlS,EAAEhC,EAAKmoM,GAAInmM,EAAEhC,EAAEoU,EAAEpS,EAAE,IAAd,EAAiB,CAC5J,SAASyiU,IAAIziU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,GAAGmS,EAAE,GAAGA,GAAGlS,EAAEi/K,KAAM,OAAO,KAAK,IAAI1vJ,EAAErd,EAAEqd,EAAEvvB,EAAEi/K,OAAO1vJ,EAAqB,GAAlBxvB,EAAE49K,GAAG39K,EAAEq7M,GAAG9rL,GAAG,KAAQA,GAAGvvB,EAAEi/K,KAAK,IAAIl/K,EAAEG,EAAG,OAAO,IAAIs2M,GAAIwB,GAAIzoL,GAAGxvB,GAAI,OAAO,IAAI,CAC5J,SAAS2iU,IAAI1iU,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAA0B,IAAtBmoB,EAAE96B,EAAEuvB,EAAUxvB,EAAEwvB,EAAEvvB,EAAEkS,EAAM3M,GAAlBgqB,EAAErd,EAAElS,GAAkBoD,EAAE,EAAEmC,EAAExF,EAAEqD,IAAImC,EAAuB,IAApBoN,EAAEgrK,GAAG0pB,GAAIvsK,EAAE96B,EAAEuF,GAAG,KAAWlE,IAAI49P,MAAMm4B,OAAMurC,IAAIhwT,GAAK,OAAO,EAAO,OAAO,CAAI,CAC5J,SAASiwT,IAAI5iU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAgB,IAAdA,EAAE,EAAEv1B,EAAEgxK,IAAIx2K,EAAE,EAAMwvB,EAAE,IAAIo2I,GAAI3lK,EAAEA,GAAGuvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAA0B48B,IAAjB5oB,EAAEyrK,GAAGC,GAAIruJ,GAAG,MAAU7c,GAAG3S,EAAE,EAAEC,EAAEuvB,EAAE,GAAGhqB,EAAE0tI,EAAK3/H,KAAKugB,IAAItuB,EAAE2M,EAAEnS,KAAKA,EAAEC,EAAEuF,EAAEu1B,EAAE96B,EAAEkS,EAAE3M,CAAC,CAG5J,SAASi9S,IAAIxiT,EAAEkS,EAAEqd,EAAExvB,GAAG,OAAM,GAAHmS,EAAanS,IAAIC,EAAEE,IAAIF,EAAEE,EAAE,IAAI0zN,IAAKmrD,MAAMC,KAAKC,IAAGj/Q,EAAE,IAAIA,EAAEE,KAAKF,EAAEE,IAAIF,EAAEE,EAAE,IAAI0zN,IAAKmrD,MAAMC,KAAKC,IAAGj/Q,EAAE,IAAIk/Q,GAAIl/Q,EAAEE,IAAWisR,IAAInsR,EAAEkS,EAAEqd,EAAExvB,EAAE,CAC5J,SAASkvL,IAAIjvL,GAAG,IAAIkS,EAAEqd,EAAE,GAAGvvB,EAAEgpF,GAAI,IAAI92E,EAAE,EAAEqd,EAAEvvB,EAAEgpF,GAAGhrF,EAAEkU,EAAEqd,IAAIrd,EAAGw/M,GAAIrlC,GAAIrsL,EAAEgpF,GAAG92E,IAAK,GAAGlS,EAAEm8K,GAAI,IAAIjqK,EAAE,EAAEqd,EAAEvvB,EAAEm8K,GAAGn+K,EAAEkU,EAAEqd,IAAIrd,EAAGw/M,GAAIrlC,GAAIrsL,EAAEm8K,GAAGjqK,IAAKg8N,IAAKmS,MAAMwiF,KAAK7iU,GAAGA,EAAEw1K,IAAI,CAAC,CAC5J,SAAS4W,IAAIpsL,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,GAA6G,OAA1GqlS,IAAIjlS,EAAEkS,EAAEnS,EAAE,KAAKwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAEY,GAAE,EAAKpT,GAAG0lT,GAAItlT,EAAEqB,GAAGwoL,GAAG7pL,EAAE8sN,GAAG,KAAKynC,IAAIpJ,GAAIxtE,GAAG39K,EAAE8sN,GAAG,KAAK,GAAKv9L,GAAGgyQ,GAAIvhS,EAAEuvB,GAAGg2R,GAAIvlT,EAAE8T,GAAU9T,CAAC,CAG5J,SAAS8iU,IAAG9iU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAY,SAAVA,EAAEvF,EAAEyD,EAAEyO,EAAEzO,GAAO,KAAgB8rB,EAAEvvB,EAAE8T,EAAE5B,EAAE4B,KAAoBvO,IAAlBxF,EAAEC,EAAEgT,EAAEd,EAAEc,GAAGuc,GAAG,MAAU,IAAQ,KAAgBvvB,EAAE8T,EAAEyb,EAAEk0M,IAAIzjO,EAAEgT,EAAEjT,EAAE0jO,IAAIzjO,EAAEyD,EAAE8B,EAAEm+N,KAAW,GAAI,CAI7J,SAASz3C,IAAIjsL,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAA2H,OAA5Gu5R,GAAVv5R,EAAE,IAAIi1K,GAAUtoK,GAAG24K,GAAItlL,EAAEgqB,GAAG07J,KAAMjrL,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAI+qK,GAAIygD,IAAG/6O,EAAE,GAAG,KAAKA,EAAEuvB,GAAGhqB,GAAMq3R,GAA/E78R,EAA4EwF,EAAS,GAAGwjL,GAAIhpL,EAAE,GAAGg/R,GAAIh/R,GAAE,GAAMi/R,GAAIj/R,GAAE,GAAaA,CAAC,CAC7J,SAASi5T,IAAIh5T,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,GAAGmS,GAAGlS,EAAEhC,EAAE,MAAMk1K,GAAI,IAAI2rC,GAAI3sM,EAAElS,EAAEhC,IAA2F,QAArFgC,EAAEoS,EAAEmd,EAAEvvB,EAAE2S,EAAET,IAAGnS,EAAEC,EAAEhC,EAAEkU,EAAE,GAAI,GAAGoxP,IAAItjQ,EAAE2S,EAAET,EAAE,EAAElS,EAAE2S,EAAET,EAAEnS,GAAG4mM,GAAG3mM,EAAE2S,IAAI3S,EAAEhC,EAAE,MAAMgC,EAAEm/Q,GAAGjtQ,EAAEqd,GAAGvvB,EAAEi4O,KAAY1oN,CAAC,CAC7J,SAASwzS,IAAI/iU,EAAEkS,GAAG,IAAMnS,EAAE,OAAGC,EAAEgtN,IAAI,IAAI,GAAWhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAE,GAAGo6O,IAAGloO,IAAUnS,EAAEqtP,IAAIzvE,GAAG6iG,GAAO7iG,GAAG8sC,GAAIzqN,EAAE,IAAI,KAAOA,EAAE2jL,KAAQ3jL,EAAEgtN,IAAI,IAAI,KAAKhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAED,EAAEH,EAAEG,EAAE+6B,EAAE5oB,GAAE,CAG7J,SAAS8wT,IAAIhjU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAe,IAAbv1B,EAAE2yL,IAAIp9J,EAAE,KAAS/6B,EAAE,IAAI4lK,GAAI3lK,EAAED,GAAGA,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,SAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,MAAUA,EAAEqS,EAAEmd,EAAEhqB,EAAE6M,IAAGF,EAAEqd,EAAEhqB,EAAEA,EAAEgqB,EAAExvB,EAAEwF,EAAEgqB,EAAEvvB,GAAOuF,IAAGA,EAAE2M,EAAE4oB,EAAEvL,GAAI,OAAOuL,CAAC,CAC9J,SAASigI,MAAMA,IAAIrmB,EAAIuuL,IAAI,IAAItkH,GAAIukH,KAAKx1G,MAAM,IAAQy1G,IAAI,IAAIxkH,GAAIykH,IAAI,KAAUjuD,KAAWkuD,IAAI,IAAI1kH,GAAI2kH,IAA5BC,IAAWluD,KAA0BmuD,IAAI,IAAI7kH,GAAI8kH,IAAIra,KAAKsa,IAAI,IAAI/kH,GAAIglH,IAAI3rH,GAAI9f,KAAK,CAC9J,SAAS0rI,IAAI5jU,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAQ,IAAJA,EAAE,EAAe0oB,EAAE,EAAEnoB,GAAbpN,EAAEvF,EAAEA,EAAEkS,IAAWhU,OAAO48B,EAAEnoB,IAAImoB,EAAqB,IAAI98B,EAAb8oS,GAAPvhS,EAAEu1B,GAAWvL,GAAWosL,KAAK39M,EAAEu9M,MAAO93M,EAAEk6K,GAAG3/K,EAAEy9M,KAAK,IAAI9kB,GAAI32L,EAAE86B,EAAEr3B,EAAEu0M,GAAI5lM,KAAO,CAG9J,SAASmyO,IAAIvkP,GAAS,IAAIkS,EAA4H,OAAtIuqJ,MAAsD6jD,GAA1CpuM,EAAEyrK,GAAGspF,IAAG33B,GAAGtvO,EAAEqB,GAAG48K,GAAGupB,IAAGg/C,IAAI,GAAG,EAAE,EAAE,IAAI,KAAW,EAAEt0O,EAAEhU,OAAO,MAASgU,EAAE,KAAKutK,MAAMM,MAAM7tK,EAAE,IAAI0tK,MAAK+mB,GAAGz0L,EAAE,EAAE0tK,KAAK+mB,GAAGz0L,EAAE,EAAE6tK,MAAY7tK,CAAC,CAC9J,SAASq9S,IAAIvvT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAqG,OAAnGv1B,EA2vB9B,SAAavF,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAwB,IAAtBA,EAAE,IAAIgnL,GAAI,IAAIzsB,GAAI3sK,IAAQ2S,EAAE4rK,GAAGC,GAAGy/E,IAAG,GAAGC,IAAI,GAAG,EAAE,CAAChsP,EAAEqd,IAAI9rB,EAAE,EAAEzF,EAAE2U,EAAEzU,OAAOuF,EAAEzF,IAAIyF,EAAuC,IAApCq3B,EAAEnoB,EAAElP,GAAGqyO,GAAI1jO,EAAEpS,EAAE86B,GAAG4yL,KAAMC,MAAgBpoN,EAAE,IAAIisQ,GAAI12O,EAAE5oB,GAAG8yM,GAAIz/M,EAAEvF,IAAIglN,GAAIz/M,EAAE2M,KAAKnS,EAAE49K,GAAGqnC,GAAIz/M,EAAEvF,GAAG49K,GAAIr4K,EAAEvF,GAAG49K,GAAIr4K,EAAE2M,GAAG,KAAMqd,GAAGxvB,EAAEA,GAAG03N,GAAIrlN,EAAE0oB,GAAG/6B,EAAEwvB,EAAExvB,EAAEA,EAAEA,EAAEwvB,GAAI,OAAOw0J,GAAG3xK,GAAG,IAAI4sN,GAAI5sN,EAAE,CA3vB9PyxT,CAAI7jU,EAAEkS,EAAEqd,GAAGuL,EAAEgpS,IAAI9jU,EAAEuF,GAAGg9Q,GAAIviR,EAAEkS,GAAG4lP,GAAI93P,EAAEkS,EAAEqd,GAAG03L,KAAMnC,GAAIv/M,EAAE,IAAIinK,GAAIxsK,IAAID,EAAE+jU,IAAI9jU,EAAEuF,GAAGg9Q,GAAIviR,EAAEkS,GAAG4lP,GAAI93P,EAAEuvB,EAAErd,GAAU,IAAIskM,GAAIwB,GAAIl9K,GAAGk9K,GAAIj4M,GAAG,CAC9J,SAASk9J,MAAMA,IAAIvoB,EAAIqvL,IAAIt8F,GAAI,IAAI/iC,IAAKuuD,MAAMC,MAAMC,MAAMK,MAAM4rE,IAAI,IAAIxgH,GAAI,2BAA2B5G,GAAI,IAAIqnH,IAAI,IAAIzgH,GAAI,4BAA4B5G,GAAI,GAAG,CAC9J,SAAS67C,MAAMA,IAAIn/G,EAAIixI,IAAI,IAAI/xE,GAAI,mBAAmB,GAAGiuE,IAAI,IAAIjuE,GAAI,mBAAmB,GAAGgyE,IAAI,IAAIhyE,GAAI,oBAAoB,GAAGkgD,IAAI,IAAIlgD,GAAI,kBAAkB,EAAE,CAC9J,SAASv1C,MAAMA,IAAI3pB,EAASqrB,MAALikK,IAAW1nB,IAAK2nB,IAAI7V,IAAI8V,IAAIxnB,IAAIynB,IAAIvnB,IAAIwnB,IAAI/hD,IAAIgiD,IAAIt+H,IAAIu+H,IAAIC,IAAIC,IAAIC,IAAStmK,MAALumK,IAAWC,IAAKC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,GAAG,CAC9J,SAASx9C,MAAMA,IAAIrzI,EAAIuzI,IAAI,IAAIxyE,GAAI,UAAU,GAAGyyE,IAAI,IAAIzyE,GAAI,QAAQ,GAAG0yE,IAAI,IAAI1yE,GAAI,QAAQ,GAAG2yE,IAAI,IAAI3yE,GAAI,SAAS,GAAG,IAAImJ,GAAI,4BAA4BqpE,IAAI,CAC9J,SAAS+xC,IAAIh6T,EAAEkS,GAAG,IAAIqd,EAAE,GAAGvvB,EAAEwlU,MAAS,MAAHtzT,GAAS,IAAIqd,EAAE,EAAEA,EAAEvvB,EAAEhC,IAAIuxB,EAAG,GAAG+iK,GAAGpgL,EAAElS,EAAE2S,EAAE4c,IAAK,OAAOA,OAAS,IAAIA,EAAE,EAAEA,EAAEvvB,EAAEhC,IAAIuxB,EAAG,GAAGwrL,GAAG/6M,EAAE2S,EAAE4c,MAAMwrL,GAAG7oM,GAAI,OAAOqd,EAAI,OAAQ,CAAC,CAE9J,SAASk2S,IAAIzlU,EAAEkS,EAAEqd,GAAG,GAAKA,IAAIrd,EAAE,GAAGA,EAAEqd,EAAEvvB,EAAEuvB,EAAErxB,QAAS,MAAMg1K,GAAI,IAAI2O,GAAI,+CAAiD7hL,EAAEuvB,GAAGugM,GAAI9vN,EAAEuvB,EAAEvvB,EAAEA,GAAGA,EAAEuvB,EAAEA,EAAIA,GAAGk8M,GAAIl8M,EAAEvvB,EAAEkS,EAAElS,EAAE,CAC/J,SAAS0lU,IAAI1lU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAE,IAAIxF,EAAE,IAAI+uO,GAAG7hB,GAAGu5F,GAAIxmT,GAAGA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAAqC,OAAhCwvB,EAAEouJ,GAAGwtC,GAAGprN,GAAG,IAA4B,IAAIsiC,GAAG0hJ,IAA/Bx+K,EAAEo4K,GAAGzrK,EAAEkqM,GAAG7sL,GAAG,KAAuB3vB,EAAEsS,EAAE3M,EAAErF,EAAEgS,EAAE,IAAI,OAAOioJ,KAAKA,KAAKgiB,GAAE,CAC/J,SAASwpJ,IAAI3lU,EAAEkS,GAAG5N,KAAKirB,EAAE,IAAIijJ,GAAIluK,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKvE,EAAE49K,GAAG4qB,IAAIvoM,GAAGgoM,MAAMk3H,MAAM,KAAKnkH,GAAGxS,IAAIvoM,GAAGq9J,MAAMuoK,SAAS7qH,IAAIsuD,KAAMG,MAAOllQ,KAAKiB,EAAE,IAAI0zK,GAAM30K,KAAKiB,EAAE,IAAIwzK,EAAI,CAE/J,SAAS8sJ,IAAI7lU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAA+H,OAA7HA,EAAE,KAAQC,EAAE8lM,IAAI/lC,MAAM82J,QAAOtnS,EAAEouJ,GAAG39K,EAAEgmM,GAAG6wH,KAAK,KAAM/wH,GAAG5zL,KAAKnS,EAAEwvB,EAAEy2K,GAAG9zL,IAAO,MAAHnS,GAAWC,EAAE8lU,OAAO/lU,EAAEC,EAAE8lU,KAAK9/H,GAAG9zL,IAAO,MAAHnS,IAAUA,EAAEygL,IAAItuK,IAAWnS,CAAC,CAC/J,SAASgmU,IAAG7zT,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAExF,EAAEmS,EAAEwgN,GAAGnjM,GAAG,IAAoB,OAAhBhqB,EAAExF,EAAE07M,KAAK17M,EAAEgkL,KAAYx+K,CAAC,CAAC,MAAMvF,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAAYkzK,GAAI,IAAIgO,GAAI,wBAAwB3xJ,IAAe2jJ,GAAIlzK,IAAE,CAAC,CAEhK,SAASgmU,IAAIhmU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAkC,IAAhCs7J,GAAI3uJ,GAAGigN,GAAIjgN,GAAGlS,GAAGuF,EAAEvF,EAAEkS,EAAEqd,EAAErxB,OAAW6B,EAAEmS,EAAEypM,KAAK57M,EAAEw7M,MAAOhsL,EAAExvB,EAAE07M,KAAK1lC,GAAI/1K,EAAEkS,EAAE2uJ,GAAItxI,IAAI,OAAGhqB,GAAGvF,EAAEkS,EAAEqd,EAAErxB,SAAQ27S,GAAI75S,EAAE,IAAU,EAAiB,CAChK,SAASi7J,MAAMA,IAAIvmB,EAASqrB,MAALkmK,IAAWC,IAAK,IAAIxiH,GAAIyiH,KAAKz4G,MAAM,IAAO04G,IAAI1pB,IAAI2pB,IAAIzpB,IAAI0pB,IAAIjkD,IAAIkkD,IAAIxgI,IAAIygI,IAAIjC,IAAIkC,IAAIhC,IAAS1pK,MAAL2rK,IAAWzD,IAAK0D,IAAItD,IAAIuD,IAAIpD,IAAIqD,IAAInD,IAAIoD,IAAI3D,GAAG,CAGhK,SAAS4D,IAAI/mU,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAIr3B,EAAyC,IAAvC6uP,GAAIpgP,EAAEyrK,GAAG59K,EAAEs7M,GAAG,GAAG,KAAK53M,EAAE1D,EAAEinU,GAAG,EAAEjnU,EAAEk/K,MAAUnkJ,EAAE6iJ,GAAGpuJ,EAAE6sL,GAAGlqM,GAAG,IAAIypM,KAAK7gL,EAAEygL,MAA8CwrH,IAAI/mU,GAA3CuF,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,KAAQlsL,EAAEvxB,GAAGkU,EAAE3M,EAAExF,EAAE/B,EAAEuH,EAAEgqB,EAAEvxB,EAAUuxB,EAAE9rB,EAAG,CAChK,SAASwjU,IAAIjnU,GAAG,IAAIkS,EAAY,OAAVA,EAAE,IAAIsgK,GAAOggD,GAAIxyN,GAAGgoM,MAAMk/H,MAAcvpJ,GAAG4qB,IAAIvoM,EAAEknU,KAAK,KAAIxlI,GAAIyoB,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAIvtM,EAAEoS,EAAE,KAAK,IAAIsxI,IAAK,IAAI6mB,GAAIr4J,IAAI61L,GAAI/nM,EAAEknU,IAAIh1T,GAAUA,EAAC,CAChK,SAAS4/H,IAAI9xI,EAAEkS,GAAG,IAAMnS,EAAE,OAAGC,EAAEgtN,IAAI,IAAI,EAAUhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAE,EAAE6tL,IAAG37K,IAAUnS,EAAEqtP,IAAIzvE,GAAG6iG,GAAO7iG,GAAG8sC,GAAIzqN,EAAE,IAAI,MAAQ++Q,MAAMooD,KAAQnnU,EAAEgtN,IAAI,IAAI,KAAKhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAED,EAAEH,EAAEG,EAAE+6B,EAAE5oB,GAAE,CAChK,SAASk1T,IAAIpnU,EAAEkS,GAAG,IAAMnS,EAAE,OAAGC,EAAEgtN,IAAI,IAAI,EAAUhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAE,EAAEwsL,IAAGt6K,IAAUnS,EAAEqtP,IAAIzvE,GAAG6iG,GAAO7iG,GAAG8sC,GAAIzqN,EAAE,IAAI,MAAQ++Q,MAAMsoD,KAAQrnU,EAAEgtN,IAAI,IAAI,KAAKhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAED,EAAEH,EAAEG,EAAE+6B,EAAE5oB,GAAE,CAChK,SAASo1T,IAAItnU,EAAEkS,GAAG,IAAMnS,EAAE,OAAGC,EAAEgtN,IAAI,IAAI,EAAUhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAE,EAAEutL,IAAGr7K,IAAUnS,EAAEqtP,IAAIzvE,GAAG6iG,GAAO7iG,GAAG8sC,GAAIzqN,EAAE,IAAI,MAAQ++Q,MAAMwoD,KAAQvnU,EAAEgtN,IAAI,IAAI,KAAKhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAED,EAAEH,EAAEG,EAAE+6B,EAAE5oB,GAAE,CAChK,SAASs1T,IAAIxnU,EAAEkS,GAAG,IAAMnS,EAAE,OAAGC,EAAEgtN,IAAI,IAAI,EAAUhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAE,EAAEu6O,IAAGroO,IAAUnS,EAAEqtP,IAAIzvE,GAAG6iG,GAAO7iG,GAAG8sC,GAAIzqN,EAAE,IAAI,MAAQwuO,MAAMi5F,KAAQznU,EAAEgtN,IAAI,IAAI,KAAKhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAED,EAAEH,EAAEG,EAAE+6B,EAAE5oB,GAAE,CAChK,SAASw1T,IAAI1nU,EAAEkS,GAAG,IAAMnS,EAAE,OAAGC,EAAEgtN,IAAI,IAAI,EAAUhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAE,EAAE06O,IAAGxoO,IAAUnS,EAAEqtP,IAAIzvE,GAAG6iG,GAAO7iG,GAAG8sC,GAAIzqN,EAAE,IAAI,MAAQwuO,MAAMm5F,KAAQ3nU,EAAEgtN,IAAI,IAAI,KAAKhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAED,EAAEH,EAAEG,EAAE+6B,EAAE5oB,GAAE,CAChK,SAAS01T,IAAI5nU,EAAEkS,GAAG,IAAMnS,EAAE,OAAGC,EAAEgtN,IAAI,IAAI,EAAUhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAE,EAAE86O,IAAG5oO,IAAUnS,EAAEqtP,IAAIzvE,GAAG6iG,GAAO7iG,GAAG8sC,GAAIzqN,EAAE,IAAI,MAAQwuO,MAAMq5F,KAAQ7nU,EAAEgtN,IAAI,IAAI,KAAKhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAED,EAAEH,EAAEG,EAAE+6B,EAAE5oB,GAAE,CAChK,SAAS41T,MAAMxjU,KAAKtE,EAAE,IAAI6xJ,GAAIvtJ,KAAKqO,EAAE,IAAIkpT,IAAGv3T,KAAK8N,EAAE,IAAIypT,IAAGv3T,KAAK4N,EAAE,IAAIsgK,GAAIluK,KAAKvE,EAAE,IAAI87T,IAAGv3T,KAAKtG,EAAE,IAAI69T,IAAGv3T,KAAKjD,EAAE,IAAImxK,GAAIluK,KAAKirB,EAAE,IAAIijJ,GAAIluK,KAAKiB,EAAE,IAAIitK,GAAIluK,KAAKw2B,EAAE,IAAI03I,EAAG,CAChK,SAASm4G,IAAI3qR,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAmB,IAAjBvL,EAAE,IAAIA,EAAE,GAAGuL,EAAE96B,EAAEhC,EAAMuH,EAAEgqB,EAAEhqB,EAAEu1B,EAAEv1B,IAAgB,GAAXxF,EAAEssL,GAAIrsL,EAAEuF,GAAS,MAAH2M,GAAS,GAAM,MAAHnS,EAAS,OAAOwF,OAAQ,GAAGw1M,GAAG7oM,KAAK6oM,GAAGh7M,IAAIuyL,GAAGpgL,EAAEnS,GAAI,OAAOwF,EAAG,OAAQ,CAAC,CAEhK,SAASwiU,IAAI/nU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,GAAGmS,EAAE,CAAC,GAAGA,GAAGlS,EAAG,OAAO,EAAS,IAAJuvB,EAAE,EAAMxvB,EAAE49K,GAAGzrK,EAAE,IAAIy+S,KAAO5wT,GAAGA,GAAGmS,EAAEnS,EAAEA,EAAE4wT,KAAK,CAAC,KAAKphS,EAAEqhS,IAAK,OAAOmX,IAAI/nU,EAAED,GAAG,GAAGA,GAAGC,EAAG,OAAO,CAAK,CAAC,CAAC,OAAO,CAAK,CAMhK,SAASgoU,IAAIhoU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAoD,IAAlDuqN,GAAI9vN,EAAEA,EAAEkS,GAAGlS,EAAEuF,GAAG2M,EAAEQ,GAAiB,GAAd1S,EAAEA,EAAEuvB,EAAErxB,OAAU,EAAE8B,EAAEuvB,GAAGhqB,EAAE0iU,IAAQloU,EAAE,IAAI4lK,GAAI3lK,EAAEA,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,KAAKwF,EAAE0tI,EAAK3/H,KAAKugB,IAAItuB,EAAEgqB,EAAExvB,GAAGC,EAAEkS,EAAE3M,CAAC,CACjK,SAAS2iU,IAAIloU,EAAEkS,GAAG,IAAMnS,EAAE,OAAGC,EAAEgtN,IAAI,IAAI,EAAUhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAE,GAAGutL,IAAGr7K,IAAUnS,EAAEqtP,IAAIzvE,GAAG6iG,GAAO7iG,GAAG8sC,GAAIzqN,EAAE,IAAI,MAAQ++Q,MAAMopD,KAAQnoU,EAAEgtN,IAAI,IAAI,KAAKhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAED,EAAEH,EAAEG,EAAE+6B,EAAE5oB,GAAE,CACjK,SAASk2T,IAAIpoU,EAAEkS,GAAG,IAAMnS,EAAE,OAAGC,EAAEgtN,IAAI,IAAI,GAAWhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAE,GAAGutL,IAAGr7K,IAAUnS,EAAEqtP,IAAIzvE,GAAG6iG,GAAO7iG,GAAG8sC,GAAIzqN,EAAE,IAAI,MAAQ++Q,MAAMspD,KAAQroU,EAAEgtN,IAAI,IAAI,KAAKhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAED,EAAEH,EAAEG,EAAE+6B,EAAE5oB,GAAE,CAClK,SAASo2T,IAAItoU,EAAEkS,GAAG,IAAMnS,EAAE,OAAGC,EAAEgtN,IAAI,IAAI,GAAWhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAE,GAAGo6O,IAAGloO,IAAUnS,EAAEqtP,IAAIzvE,GAAG6iG,GAAO7iG,GAAG8sC,GAAIzqN,EAAE,IAAI,MAAQwuO,MAAM+5F,KAAQvoU,EAAEgtN,IAAI,IAAI,KAAKhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAED,EAAEH,EAAEG,EAAE+6B,EAAE5oB,GAAE,CAClK,SAASs2T,IAAIxoU,EAAEkS,GAAG,IAAMnS,EAAE,OAAGC,EAAEgtN,IAAI,IAAI,GAAWhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAE,GAAG66O,IAAG3oO,IAAUnS,EAAEqtP,IAAIzvE,GAAG6iG,GAAO7iG,GAAG8sC,GAAIzqN,EAAE,IAAI,MAAQwuO,MAAMi6F,KAAQzoU,EAAEgtN,IAAI,IAAI,KAAKhtN,EAAE8sN,GAAGtvF,GAAGx9H,EAAED,EAAEH,EAAEG,EAAE+6B,EAAE5oB,GAAE,CAClK,SAAS6U,IAAI/mB,GAAG,IAAIkS,EAAmI,OAApH,IAAJ,EAALlS,EAAEw1K,KAAYx1K,EAAE0S,GAAG1S,EAAE0S,EAAEk/N,OAAM1/N,EAAEyrK,GAAG39K,EAAE0S,EAAE,IAAI1S,EAAE0S,EAAEirK,GAAG82C,GAAIz0N,EAAEkS,GAAG,KAAKlS,EAAE0S,GAAGR,GAAa,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEkS,EAAElS,EAAE0S,KAAW1S,EAAE0S,CAAC,CACjK,SAASg2T,IAAI1oU,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAkI,OAAhIA,EAAEw+K,GAAGC,GAAGyU,IAAG,GAAGwzD,IAAI,GAAG,GAAG,CAACkiF,IAAI3oU,GAAGwzQ,KAAME,KAAKxhQ,EAAEqd,GAAGo5S,IAAI3oU,EAAE2zQ,IAAIzhQ,EAAEqd,GAAGo5S,IAAI3oU,EAAE4zQ,IAAI1hQ,EAAEqd,KAAQvvB,EAAE86B,IAAG/6B,EAAE,GAAGkzI,EAAK3/H,KAAKugB,IAAI9zB,EAAE,GAAGA,EAAE,IAAIA,EAAE,GAAGA,EAAE,IAAUA,CAAC,CAClK,SAAS6oU,IAAI5oU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAa,GAAXA,EA9I5B,SAAavF,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAoB,IAAlBA,EAAE,IAAI0rN,GAAI/+M,EAAE+sK,MAAUl/K,EAAEmS,EAAEypM,KAAK57M,EAAEw7M,OAAOhsL,EAAEouJ,GAAG59K,EAAE07M,KAAK,MAAOlsL,GAAGA,EAAEuL,EAAE+tS,IAAI7oU,EAAEuvB,EAAEA,EAAEA,GAAGu5S,IAAI9oU,EAAEuvB,KAAKhqB,EAAEgqB,EAAEhqB,EAAEgqB,EAAErxB,QAAQqxB,GAAQ,OAAOhqB,CAAC,CA8IxHwjU,CAAI/oU,EAAEkS,GAAkB,GAAZ3M,EAAEgqB,EAAErxB,OAA8C,IAA5B4mN,GAAIv/M,EAAE,IAAI66I,IAAK7wH,EAAEhqB,EAAEgqB,EAAErxB,OAAW6B,EAAE,EAAEA,EAAEwvB,EAAExvB,IAAK8oU,IAAI7oU,GAAGy9M,GAAI19M,EAAEwF,EAAEgqB,EAAErxB,QAAQy/K,GAAGp4K,EAAEgqB,EAAExvB,GAAG,MAAMipU,IAAIhpU,EAAEuF,EAAExF,GAAI,CAElK,SAAS4iU,IAAI3iU,GAAG,IAAIkS,EAAEqd,EAAE,GAAGvvB,EAAEqB,IAAI49P,MAAMg4B,KAAM,IAAI1nQ,EAAE,IAAIu/M,GAAG7hB,GAAGu5F,GAAIxmT,GAAGA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG77L,IAAoB,IAAI65L,GAAnBl3M,EAAEyrK,GAAGwtC,GAAG57L,GAAG,MAAgBvvB,EAAEuvB,GAAG05S,IAAI/2T,EAAElS,GAAGuvB,EAAG,OAAO,EAAO,OAAO,CAAK,CAClK,SAAS25S,IAAIlpU,GAAG,IAAIkS,EAAEqd,EAAE,GAAGvvB,EAAEqB,IAAI49P,MAAMg4B,KAAM,IAAI1nQ,EAAE,IAAIu/M,GAAG7hB,GAAGu5F,GAAIxmT,GAAGA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG77L,IAAoB,IAAI65L,GAAnBl3M,EAAEyrK,GAAGwtC,GAAG57L,GAAG,MAAgBrd,EAAEqd,EAAEvxB,EAAEuxB,GAAGrd,EAAEnS,EAAE/B,EAAEuxB,EAAG,OAAO,EAAO,OAAO,CAAK,CAInK,SAAS2tO,IAAGl9P,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAsB,OAApBpU,EAAEgC,EAAEyD,GAAG,MAAG2O,EAAEF,EAAEzO,GAAG,IAAmB2O,EAAEpU,GAAEuH,EAAEvF,EAAEyD,KAAEA,EAAEyO,EAAEzO,GAAkB8B,EAAE9B,GAAE1D,EAAEC,EAAEgT,KAAEL,EAAET,EAAEc,GAAkBjT,EAAE4S,EAAI3S,EAAE8T,EAAI5B,EAAE4B,CAAY,CACnK,SAAS2mJ,MAAMA,IAAI/lB,EAAS26J,MAAW2iB,IAAI,IAAIrzG,GAAIwqH,IAA5BC,IAAWz5B,KAA+B9nC,KAAWiqD,IAAI,IAAInzG,GAAI0qH,IAA5BC,IAAWthE,KAA+BT,MAAWwqD,IAAI,IAAIpzG,GAAI4qH,IAA5BC,IAAW/hE,KAA0BwwD,IAAI,IAAIt5G,GAAI8qH,KAAK/7G,MAAM,GAAM,CACnK,SAASg8G,IAAI1pU,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAExF,EAAEmS,EAAEqd,EAAKs6J,GAAG7pL,EAAE2S,EAAE,MAAMpN,EAAEg9P,GAAIviQ,IAAQ86B,EAAE/6B,EAAGwF,EAAEu1B,EAAE96B,IAAIA,EAAED,EAAEC,GAAGD,EAAEi0R,MAAUh0R,EAAED,EAAEA,GAAGA,EAAEi0R,IAAIh0R,EAAED,EAAEC,GAAGD,EAAEi0R,KAAanqG,GAAG7pL,EAAE2S,EAAE,MAAK3S,EAAED,EAAEA,GAAGA,EAAEC,EAAED,EAAEC,GAAG,EAAED,EAAE,CACnK,SAAS2mP,IAAI1mP,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAW,IAAT8B,EAAEvF,EAAEuvB,EAAE5c,GAAOlP,EAAE,IAAIkiK,GAAIzzJ,EAAEnS,GAAG0D,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,SAA0B48B,GAAjBnoB,EAAEgrK,GAAGC,GAAIn6K,GAAG,MAASzF,IAAU88B,EAAE98B,GAAGuxB,IAAchqB,EAAXxF,EAAE4S,EAAE5S,EAAEwvB,EAAE5c,IAAQsgI,EAAK3/H,KAAKugB,IAAItuB,EAAExF,GAAG+6B,EAAE1oB,EAAEF,GAAI,CACnK,SAASy3T,IAAI3pU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAc,IAAZ5S,EAAE,EAAEwF,EAAE,EAAEgqB,EAAE,EAAM5c,EAAE,IAAIgzJ,GAAIzzJ,EAAEnS,GAAG4S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAA0BojU,IAAjBxmS,EAAE6iJ,GAAGC,GAAIjrK,GAAG,MAAY5S,EAAEkzI,EAAK3/H,KAAKugB,IAAI9zB,EAAE+6B,EAAE5oB,GAAG3M,GAAGu1B,EAAE/6B,GAAGwvB,EAAE,EAAEvvB,EAAE2S,EAAE,KAAK4c,EAAErd,EAAEA,EAAEnS,EAAEmS,EAAE3M,EAAEA,CAAC,CACnK,SAAS2nB,IAAGltB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAQ,GAANA,EAAEC,EAAEkS,EAAK2uL,GAAG7gM,EAAEhC,EAAE+B,EAAE7B,QAAQ,CAA8E,IAA7EqxB,EAAW,EAATxvB,EAAE7B,OAAS8B,EAAEkS,EAAE+rK,GAAG69I,IAAG9hB,IAAI,IAAIzqR,EAAE,EAAE,GAAGvvB,EAAEuvB,EAAE0uJ,GAAG69I,IAAG9hB,IAAI,IAAIzqR,EAAE,EAAE,GAAGvvB,EAAE86B,EAAEvL,EAAE,EAAEvvB,EAAEhC,EAAE,EAAMkU,EAAElS,EAAEA,EAAEkS,EAAEA,EAAEA,EAAEqd,EAAGq6S,IAAG5pU,EAAEkS,EAAEA,KAAKlS,EAAE2S,CAAC,CAAC,CAEpK,SAASk3T,IAAI7pU,EAAEkS,EAAEqd,GAAG,IAAIxvB,GAAEA,EAAEmS,EAAEqd,EAAEvxB,GAAOqD,IAAI49P,MAAMg4B,MAAMlvF,GAAI/nM,GAAGgoM,MAAM8hI,KAAKnsJ,GAAG4qB,IAAIxoM,EAAE+pU,KAAK,KAAK/hI,GAAI/nM,EAAE+pU,IAAIpsJ,GAAG4qB,IAAIxoM,EAAEgqU,KAAK,OAAUhiI,GAAI/nM,GAAGgoM,MAAM8hI,KAAK53T,EAAEqd,GAAGw4K,GAAI/nM,EAAE+pU,IAAIx6S,EAAExvB,GAAG,CACpK,SAASiqU,IAAIhqU,EAAEkS,EAAEqd,GAAS,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAoH,OAAxIuzO,MAAsB5+N,EAAET,EAAE,EAAE4oB,EAAEvL,EAAE,EAA4C9rB,EAAE,EAAEzF,EAAE,GAAhD+B,EAAEkzI,EAAK3/H,KAAKskB,IAAI53B,EAAEA,IAAkC2S,IAAIlP,EAAEkP,EAAE5S,IAAvCwF,EAAE0tI,EAAK3/H,KAAKskB,IAAI53B,EAAEkS,IAA0B4oB,IAAI98B,EAAE88B,EAAEv1B,GAAG+kN,GAAItqN,EAAEizI,EAAK3/H,KAAKsgB,IAAInwB,EAAEzF,IAAWgC,CAAC,CAKpK,SAASypM,MAAK/J,GAAG3gM,KAAKuF,MAAMA,KAAKiB,GAAG,EAAEjB,KAAKtE,GAAE,EAAMsE,KAAKlB,EAAE60L,IAAI3zL,KAAKjD,GAAG,EAAEiD,KAAKirB,GAAG,EAAEjrB,KAAK4N,GAAG,EAAE5N,KAAKqO,GAAE,EAAMrO,KAAKw2B,GAAG,EAAEx2B,KAAK8N,GAAG,EAAE9N,KAAK1E,GAAG,EAAE0E,KAAKtG,GAAG,EAAEsG,KAAKvE,GAAG,EAAEuE,KAAKpE,EAAE+3L,GAAG,CAIrK,SAAS0tB,MAAMA,IAAIjxE,EAAIu1L,IAAI18F,GAAI9F,GAAIA,GAAIA,GAAI,IAAI/iC,IAAKuuD,MAAMu/B,MAAMr/B,MAAM+2E,MAAM13C,IAAI23C,KAAKj3E,IAAIk3E,KAAKl3E,IAAIm3E,KAAKC,IAAI7iG,GAAIA,GAAI,IAAI/iC,GAAI8tF,IAAI+3C,KAAK/3C,IAAIg4C,KAAKC,IAAIl9F,GAAI,IAAI7oC,GAAIwuD,IAAIw3E,IAAI,CAIrK,SAASC,IAAI3qU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAA8B,IAA5BA,EAAE,IAAI03I,GAAItgK,EAAE3M,EAAE,KAAK2M,EAAE4oB,EAAE,KAAS/6B,EAAE,IAAI4lK,GAAIzzJ,EAAElU,GAAG+B,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,IAAIwF,EAAEo4K,GAAG+5B,GAAI13M,EAAE2S,EAAE4c,EAAEvvB,GAAG,IAAIuvB,EAAEvvB,EAAE0xO,GAAIniN,EAAErd,GAAGykL,GAAI77J,EAAEvL,EAAEvvB,EAAEuF,GAAGvF,EAAE2S,EAAEmoB,CAAC,CACrK,SAAS8vS,IAAI5qU,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAI+6B,EAAEnoB,EAAElP,EAAEzF,EAA+B,IAArB88B,GAAN5oB,EAAElS,EAAEuF,GAAMvF,EAAED,EAAEwvB,EAAErxB,OAAOyU,EAAE,EAAM3U,EAAE,IAAI2nK,GAAI3lK,EAAED,GAAG/B,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAASuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,KAAK+B,EAAEC,EAAEkS,EAAEzO,EAAEyO,EAAEqd,EAAEouR,IAAIl6S,EAAEA,EAAE8B,EAAEoN,EAAEmoB,EAAEr3B,EAAEq3B,GAAG0jS,IAAI/6T,EAAEq3B,EAAE/6B,KAAK4S,CAAE,CACtK,SAAS41O,IAAIvoP,GAAG,IAAIkS,EAAW,GAATlS,EAAE86B,EAAEw9M,MAAc,GAANt4O,EAAEkS,EAAM,CAAoB,KAAjBlS,EAAEkS,EAAEA,EAAElS,EAAE86B,EAAE/6B,EAAEC,EAAEA,GAAMA,EAAEkS,EAAEA,EAAElU,EAAG,SAASgC,EAAEA,CAAC,CAAC,KAAKA,EAAEA,EAAEA,EAAE86B,EAAE/6B,EAAE7B,SAAS8B,EAAEA,EAAgB,IAAbkS,EAAElS,EAAE86B,EAAE/6B,EAAEC,EAAEA,KAAgB,GAALkS,EAAElU,EAAY,YAANgC,EAAEkS,EAAE,GAAUlS,EAAEkS,GAAG,CAAC,CACrK,SAAS24T,IAAI7qU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAA+D,IAAhDgqB,EA+VzC,SAAard,EAAEqd,GAAG,IAAIxvB,EAAI+6B,EAAM,GAAJA,EAAE,EAAKvL,EAAErxB,OAAO,EAAG,IAAI48B,EAAEk9J,IAAIzoK,EAAE0oK,IAAIC,IAAI,CAAC,MAAMl4L,GAAY,MAAG6pL,GAAZ7pL,EAAE8pL,GAAI9pL,GAAW,KAAgBkzK,GAAI,IAAIo3G,GAAhBtqR,IAAmCkzK,GAAIlzK,EAAE,CAAiC,OAA3BkS,EAAElS,IAAIkS,EAAElS,EAAE,IAAI6xK,GAAI3/J,IAAtBnS,EAA0BmS,EAAElS,EAAU86B,EAAE/6B,EAAE/B,GAAG88B,GAAG,EAAE6iJ,GAAG0O,GAAItsL,EAAE+6B,GAAG,IAAI,IAAI,CA/V5KgwS,CAAI9qU,EAAK,IAAxBuF,EAAE2M,EAAEqd,EAAErxB,QAAoB,IAAIu/M,GAAI,EAAEvrM,EAAEqd,EAAErxB,QAAQ4lL,GAAG5xK,EAAEqd,EAAE,MAAUxvB,EAAE,EAAEA,EAAEwF,GAAKgqB,IAAIxvB,EAAGwvB,EAAEouJ,GAAGpuJ,EAAE,IAAIw7S,IAAIttH,GAAI19M,EAAEmS,EAAEqd,EAAErxB,QAAQ4lL,GAAG5xK,EAAEqd,EAAExvB,MAAM,OAAOwvB,CAAC,CACrK,SAASy7S,IAAIhrU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,IAAIA,EAAE,IAAI4lK,GAAIzzJ,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,IAAIC,EAAEuvB,EAAEA,EAAEA,EAAEnsB,GAAGmsB,EAAEnsB,GAAGpD,EAAEqsO,GAAIrsO,EAAEhC,GAAGgC,EAAEuvB,EAAEA,EAAEA,EAAEnsB,GAAGmsB,EAAEnsB,GAAGrD,EAAEugL,GAAItgL,EAAEuvB,EAAEA,EAAEA,EAAEnsB,GAAGmsB,EAAEnsB,GAAGpD,GAAGA,EAAEuvB,EAAEA,EAAEA,EAAEnsB,GAAGmsB,EAAEnsB,GAAG8O,EAAE,CAAE,CAEtK,SAASi9S,IAAInvT,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAA2G,OAAzGmoB,EA60BhC,SAAa96B,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAIr3B,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAwB,IAAtBA,EAAE,IAAIomL,GAAI,IAAI1sB,GAAI1sK,IAAQyD,EAAE86K,GAAGC,GAAG2tE,IAAG,GAAGC,IAAI,GAAG,EAAE,CAACl6O,EAAEqd,IAAIvxB,EAAE,EAAEoU,EAAE3O,EAAEvF,OAAOF,EAAEoU,IAAIpU,EAAU,IAAI8V,EAAEgzR,GAAXrjS,EAAEzF,GAAe+B,GAAG47M,KAAK7nM,EAAEynM,MAAuB,IAAIzgL,EAAE,IAAI02O,IAA1BnwQ,EAAEs8K,GAAG7pK,EAAE2nM,KAAK,KAAoBvpM,GAAG8yM,GAAIlqL,EAAE96B,IAAIglN,GAAIlqL,EAAE5oB,IAA6Ck3M,GAAxC7jN,EAAEo4K,GAAGqnC,GAAIlqL,EAAE96B,GAAG49K,GAAI9iJ,EAAE96B,GAAG49K,GAAI9iJ,EAAE5oB,GAAG,OAAgB4jO,GAAI9iO,EAAEhT,EAAEqB,GAAGqsN,KAAMC,MAAYsyB,GAAI16O,IAAIkyN,GAAIzkN,EAAE3R,GAAGkE,EAAEgqB,EAAEhqB,EAAExF,EAAEwF,EAAEgqB,IAAM,OAAOw0J,GAAG/wK,GAAG,IAAIgsN,GAAIhsN,EAAE,CA70B3Ti4T,CAAIjrU,EAAEkS,EAAEqd,EAAExvB,GAAG4S,EAAEgsO,IAAI3+O,EAAE86B,GAAG20R,IAAIzvT,EAAEkS,EAAEqd,EAAExvB,GAAGwiR,GAAIviR,EAAEkS,GAAG+0M,KAAMnC,GAAIhqL,EAAE,IAAI2xI,GAAIzsK,IAAIuF,EAAEo5O,IAAI3+O,EAAE86B,GAAG20R,IAAIzvT,EAAEuvB,EAAErd,EAAEnS,GAAGwiR,GAAIviR,EAAEkS,GAAU,IAAIskM,GAAIwB,GAAIrlM,GAAGqlM,GAAIzyM,GAAG,CAEtK,SAAS2lU,IAAIlrU,EAAEkS,GAAG,IAAIqd,EAAEsyQ,IAAI3vR,EAAE,oBAAoB,GAAGA,EAAEtS,GAAKI,GAAG63P,GAAI3lP,EAAEspP,GAAIx7P,IAAIunR,KAAME,MAAMl4P,EA/azF,SAAavvB,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAO,IAAI+5I,GAAI,KAAK,EAAE,OAAO,IAAIsoE,GAAI,QAAQ,MAAM9hD,GAAI,IAAI2O,GAAIq5I,KAAU,MAALl7T,EAAE86B,EAAQ96B,EAAE86B,EAAE,GAAG96B,EAAE2S,KAAM,CA+arCw4T,CAAIxtJ,GAAG26B,IAAIt4M,GAAGq+J,MAAMumK,MAAM,MAAMr1S,EAAE67S,GAAGprU,GAAGkS,EAAEtS,GAAKI,GAAG63P,GAAI3lP,EAAEspP,GAAIx7P,IAAIunR,KAAME,KAAK,CAEtK,SAAS4jD,IAAIrrU,EAAEkS,EAAEqd,EAAExvB,GAAG,OAAOwvB,GAAG,KAAK,EAAE,OAAQvvB,EAAEuF,IAAIvF,EAAEuF,EAAE,IAAIwlN,GAAIl9B,IAAG7tL,EAAE,EAAE,IAAIusT,IAAIvsT,EAAEuF,EAAE2M,EAAEnS,GAAG,KAAK,EAAE,OAAQC,EAAED,IAAIC,EAAED,EAAE,IAAIgrN,GAAIl9B,IAAG7tL,EAAE,EAAE,IAAIusT,IAAIvsT,EAAED,EAAEmS,EAAEnS,GAAI,OAAOurU,IAAItrU,EAAEkS,EAAEqd,EAAExvB,EAAE,CACtK,SAASwrU,IAAIvrU,EAAEkS,EAAEqd,EAAExvB,GAAG,OAAOwvB,GAAG,KAAK,EAAE,OAAQvvB,EAAEuF,IAAIvF,EAAEuF,EAAE,IAAIwlN,GAAIl9B,IAAG7tL,EAAE,EAAE,IAAI+wS,IAAI/wS,EAAEuF,EAAE2M,EAAEnS,GAAG,KAAK,EAAE,OAAQC,EAAED,IAAIC,EAAED,EAAE,IAAIgrN,GAAIl9B,IAAG7tL,EAAE,EAAE,IAAI+wS,IAAI/wS,EAAED,EAAEmS,EAAEnS,GAAI,OAAO+wS,GAAI9wS,EAAEkS,EAAEqd,EAAExvB,EAAE,CAEtK,SAAS2rS,IAAI1rS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAA+B,OAAzB96B,EAAEs4O,KAAKx9M,EAAK,MAAH5oB,EAAQ,EAAEqxM,GAAGrxM,GAAMlS,EAAE86B,EAAE,IAAwBv1B,EAAEunT,IAAI9sT,GAAxB86B,EAAEo9J,KAAKl4L,EAAED,EAAE7B,OAAiB48B,EAAE5oB,IAAW3M,EAAEu9N,GAAGvzM,IAAaxvB,EAAEC,EAAEwrU,GAAG1wS,EAAE5oB,EAAEqd,GAAGvvB,EAAEuvB,EAAEs4L,GAAG9nN,GAAU,KAAI,CACtK,SAAS0rU,IAAIzrU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,OAAO+mR,GAAI7hT,EAAEkS,GAAG1M,MAAM,KAAK,EAAE,KAAK,EAAY,IAAID,EAAE,EAAEu1B,GAAjBvL,EAAEm8S,IAAIx5T,IAAelU,EAAEuH,EAAEu1B,IAAIv1B,EAAqB,GAAkB,GAAf46O,GAAIqW,GAAIx2P,EAA7BD,EAAE49K,GAAG0O,GAAI98J,EAAEhqB,GAAG,MAAyB,OAAOxF,EAAU,OAAO,IAAI,CAEtK,SAAS4rU,IAAI3rU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAM,IAAJA,EAAE,EAAMv1B,EAAEo4K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAIypM,KAAKp2M,EAAEg2M,MAAOx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,KAAK3gL,EAAEm4G,EAAK3/H,KAAKugB,IAAIiH,EAAE/6B,EAAEwF,EAAEvF,EAAED,EAAEmS,EAAEqtL,KAAKv/L,IAAGuvB,EAAEouJ,GAAG6oB,GAAIxmM,EAAEkS,EAAEA,GAAG,MAAOtS,EAAEsS,EAAE,EAAEqd,EAAEvvB,EAAEA,EAAE86B,CAAC,CACvK,SAAS8wS,IAAI5rU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAM,IAAJvL,EAAE,EAAMuL,EAAE6iJ,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAIypM,KAAK7gL,EAAEygL,MAAOh2M,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,KAAKlsL,EAAE0jH,EAAK3/H,KAAKugB,IAAItE,EAAEhqB,EAAEA,EAAE2M,EAAE3M,EAAE2M,EAAEqtL,KAAKrtL,IAAGnS,EAAE49K,GAAG6oB,GAAIxmM,EAAEkS,EAAEA,GAAG,MAAOtS,EAAEG,EAAE,EAAEA,EAAEC,EAAEkS,EAAEqd,CAAC,CAGvK,SAASs8S,IAAI7rU,GAAG,GAAGA,EAAE,EAAG,MAAMkzK,GAAI,IAAI2O,GAAI,+BAAoC,OAAO7hL,EAAE8rU,IAAI5tU,OAAO46L,GAAIgzI,IAAI9rU,IAAIizI,EAAK3/H,KAAKuc,KAAKk8S,IAAI/rU,IAzmBjI,SAAaA,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAsB,IAApBA,EAAE,EAAEgqB,EAAEvvB,EAAED,EAAEmS,GAAG,EAAEA,GAAGA,EAAQnS,EAAE,GAAMA,EAAE,GAAG,GAAGwvB,GAAGA,EAAExvB,EAAEA,EAAE,EAAE,IAAOwF,GAAGgqB,EAAExvB,GAAG,GAAG,OAAOmS,EAAE,EAAE,EAAE3M,EAAEA,CAAC,CAymBkBymU,CAAIhsU,EAAEA,GAAG8gT,GAAI,kBAAkB9gT,GAAG,CACvK,SAASisU,IAAIjsU,EAAEkS,GAAG,IAAIqd,EAAE,GAAGvvB,EAAEwlU,MAAS,MAAHtzT,GAAS,IAAIqd,EAAE,EAAEA,EAAEvvB,EAAEhC,IAAIuxB,EAAG,GAAG+iK,GAAGpgL,EAAElS,EAAE2S,EAAE4c,IAAK,OAAO,OAAY,IAAIA,EAAE,EAAEA,EAAEvvB,EAAEhC,IAAIuxB,EAAG,GAAGwrL,GAAG/6M,EAAE2S,EAAE4c,MAAMwrL,GAAG7oM,GAAI,OAAO,EAAO,OAAO,CAAK,CAIvK,SAASy4L,IAAI3qM,EAAEkS,GAAG,IAAIqd,EAAE,OAAGuwL,GAAI9/M,IAAI8/M,GAAI5tM,IAAa+6R,KAAT19Q,EAAEvvB,EAAEkS,IAAYqd,EAAE+tO,IAAY/tO,EAAE,EAAE0jH,EAAK3/H,KAAKwd,KAAKvB,GAAG0jH,EAAK3/H,KAAKC,MAAMgc,GAAWi0M,GAAI8pF,IAAGxtG,GAAI9/M,GAAG4jO,GAAI5jO,GAAGA,EAAE8/M,GAAI5tM,GAAG0xN,GAAI1xN,GAAGA,GAAE,GAAO,CACxK,SAAS+2T,IAAIjpU,EAAEkS,GAAG,GAAGA,GAAGlS,EAAEuvB,EAAEvxB,EAAG,OAAOgC,EAAED,EAAE/B,EAAO,GAAGkU,GAAGlS,EAAED,EAAE/B,EAAG,OAAOgC,EAAEuvB,EAAEvxB,EAAO,MAAMk1K,GAAI,IAAI2O,GAAI,qEAAsE,CAGxK,SAASqqJ,IAAIlsU,EAAEkS,GAAG,IAAMnS,EAAI+6B,EAAoB,IAAI/6B,EAAE,IAAI+uO,GAAG7hB,IAA7B/6M,EAAEkwR,GAAIpiS,GAAGkiS,GAAIliS,IAAqBA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAA+B,IAAX+6B,EAAEmuS,IAAftrJ,GAAGwtC,GAAGprN,GAAG,IAAYC,IAAQqB,IAAI49P,MAAMg4B,MAAMn8P,EAAEvL,GAAGvvB,EAAEuvB,EAAG,OAAOuL,EAAG,OAAO,IAAI,CAExK,SAASqxS,IAAInsU,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAE,IAAIA,EAAE,IAAI6qI,GAAIzzJ,GAAG4oB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAS6B,EAAE49K,GAAGC,GAAI9iJ,GAAG,IAAI96B,EAAEuvB,EAAExvB,EAAEwvB,EAAEnsB,GAAGrD,EAAEqD,GAAGmC,GAAE,EAAM,IAAIA,EAAE,IAAIogK,GAAIzzJ,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAyBkuU,IAAIpsU,EAApBD,EAAE49K,GAAGC,GAAIr4K,GAAG,IAAYgqB,EAAG,CACzK,SAAS88S,IAAIrsU,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,GAAExF,EAAEwpP,GAAIr3O,EAAEE,EAAEmd,EAAE1b,EAAE0b,EAAEA,GAAGg6N,GAAIh6N,EAAEhqB,EAAE2M,EAAE2B,EAAE3B,EAAEqd,MAAGhqB,EAAEgkP,GAAIh6N,EAAEnd,EAAEF,EAAE2B,EAAE3B,EAAEqd,GAAGg6N,GAAIr3O,EAAE3M,EAAEgqB,EAAE1b,EAAE0b,EAAEA,IAAexvB,EAAE,IAAGC,EAAEkS,GAAG,EAAElS,EAAEA,GAAGD,IAAQC,EAAEkS,GAAG,EAAElS,EAAEA,GAAGizI,EAAK3/H,KAAKsgB,IAAI7zB,EAAEwF,GAAG,CACxK,SAAS+mU,IAAItsU,EAAEkS,GAAG,IAAMnS,EAAiH,GAA/GA,GAAE,EAASo7M,GAAGjpM,KAAInS,GAAE,EAAK4nO,GAAI3nO,EAAE,IAAIghL,GAAG8C,GAAG5xK,MAASnS,GAAM8pL,GAAG33K,EAAE,OAAMnS,GAAE,EAAK4nO,GAAI3nO,EAAoB,IAAI4iK,GAAnB87D,GAAI/gD,GAAGzrK,EAAE,UAAuBnS,EAAG,MAAMmzK,GAAI,IAAIkO,GAAImrJ,KAAM,CAExK,SAASC,IAAIxsU,GAAG,IAAIkS,EAAEqd,EAAE,OAAOouJ,GAAG4qB,IAAIg3C,GAAIv/O,IAAIq9J,MAAMovK,MAAM,KAAK95T,GAAG,KAAK,EAAc,OAAZT,EAAElS,EAAEJ,EAAE2vB,EAAEvvB,EAAEE,EAAS,IAAI+0M,GAAI/iM,EAAElS,EAAEuvB,EAAEvvB,EAAE,EAAEkS,EAAEA,EAAEqd,EAAErd,EAAE,GAAG,KAAK,EAAE,OAAO,IAAIyuM,GAAI3gN,EAAEJ,GAAG,QAAQ,OAAO,KAAM,CACzK,SAAS65R,MAAMA,IAAI/kJ,EAAIilJ,IAAI,IAAIjoF,GAAIo4E,IAAI,GAAG8P,IAAI,IAAIloF,GAAI,SAAS,GAAGmoF,IAAI,IAAInoF,GAAI,UAAU,GAAGooF,IAAI,IAAIpoF,GAAI,WAAW,GAAGqoF,IAAI,IAAIroF,GAAI,YAAY,GAAGsoF,IAAI,IAAItoF,GAAI,WAAW,EAAE,CAGzK,SAASg7H,IAAI1sU,EAAEkS,EAAEqd,GAAG,OAAOrd,GAAG,KAAK,EAAyF,OAAtFlS,EAAEJ,IAAII,EAAEJ,EAAE,IAAI06L,GAAIrN,IAAGjtL,EAAE,EAAE,IAAIqnN,IAAIrnN,EAAEJ,IAAII,EAAEJ,IAAII,EAAEJ,EAAE,IAAI06L,GAAIrN,IAAGjtL,EAAE,EAAE,SAAIooN,GAAIpoN,EAAEJ,EAAE+9K,GAAGpuJ,EAAE,KAAY,KAAK,EAAe,YAAb+wQ,GAAItgS,EAAE8jL,GAAGv0J,IAAYipR,GAAIx4S,EAAEkS,EAAEqd,EAAE,CACzK,SAASo9S,IAAI3sU,EAAEkS,EAAEqd,GAAG,OAAOrd,GAAG,KAAK,EAAoB,YAAlB+vM,GAAIjiN,EAAEsgL,GAAIC,GAAGhxJ,KAAY,KAAK,EAAoB,YAAlByyL,GAAIhiN,EAAEsgL,GAAIC,GAAGhxJ,KAAY,KAAK,EAAoB,YAAlB4yL,GAAIniN,EAAEsgL,GAAIC,GAAGhxJ,KAAY,KAAK,EAAoB,YAAlB6yL,GAAIpiN,EAAEsgL,GAAIC,GAAGhxJ,KAAam9S,IAAI1sU,EAAEkS,EAAEqd,EAAE,CACzK,SAASq8J,IAAI5rL,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAEu1B,GAAkBv1B,EAAEwmL,IAAlBjxJ,EAAK,IAAI0/I,GAAetoK,EAAE,QAAW3M,EAAEymL,KAAKnB,GAAI/vJ,EAAEvL,GAAG07J,KAAMjrL,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAI+qK,GAAIygD,IAAG/6O,EAAE,GAAG,KAAKA,EAAEuvB,GAAGuL,GAAG8hQ,GAAI9hQ,EAAE,GAAGiuJ,GAAIjuJ,EAAE,GAAGikQ,GAAIjkQ,GAAE,GAAMkkQ,GAAIlkQ,GAAE,EAAK,CACzK,SAAS2uJ,IAAIzpL,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAe,OAAGskL,GAAhBt6J,EAAE49K,GAAIntM,EAAE2S,EAAET,GAAW,OAAM3M,EAAEo4K,GAAGpuJ,EAAE,MAAOq/M,KAA6BrpO,EAAEy2N,MAAanyC,GAAGt6J,EAAE,KAAmBhqB,EAAXo4K,GAAGpuJ,EAAE,MAAUrd,EAAuB,IAAK,CACzK,SAAS06T,IAAG5sU,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAyH,OAAvHipJ,GAAG7xK,GAAG6xK,GAAGx0J,GAAsBgsL,MAAnBzgL,EAAE6iJ,GAAG6gD,GAAGx+N,EAAED,EAAEmS,GAAG,KAAW,mBAAmBA,EAAElS,EAAEuF,GAAsBg2M,MAAnBh2M,EAAEo4K,GAAG6gD,GAAGx+N,EAAEkS,EAAEqd,GAAG,KAAW,sBAAsBA,EAAEvvB,EAAEuvB,GAAU+iR,GAAGtyS,EAAE86B,EAAE96B,EAAEuF,EAAEvF,EAAED,EAAE,CAC1K,SAAS0oO,IAAGzoO,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,GAAG,IAAIlP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAuE,GAA7CA,EAAEwrQ,IAAV77Q,GAAT2O,EAAE0oB,GAAGnoB,EAAE,GAAM5S,EAAE,EAAtBsB,EAAEkE,EAAEu1B,IAAiC,IAAH/6B,GAAOw+K,GAAGC,GAAGx+K,EAAE2S,EAAEmoB,GAAG5oB,EAAE4oB,GAAGvL,EAAEuL,GAAGr3B,EAAEqQ,IAAO1B,EAAO,MAAF0oB,EAAM98B,EAAE,EAAEA,EAAEqD,IAAIrD,EAAG8V,EAAE9V,GAAGyqO,IAAGzoO,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,GAAI,OAAOmB,CAAC,CAC1K,SAAS+4T,IAAI36T,GAAG,IAAS,GAANA,EAAES,EAAO,MAAMugK,GAAI,IAAI8B,IAAK9iK,EAAEg7S,KAAK,IAAIh7S,EAAElU,EAAEohP,GAAGltO,EAAES,GAAGT,EAAE4oB,EAAE5oB,EAAElU,EAAEoU,EAAEF,EAAES,EAAET,EAAE3M,KAAK2M,EAAE3M,EAAE2M,EAAES,GAAG,CAAC,CAAC,MAAM3S,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,IAAWkzK,GAAI,IAAIiC,IAAgBjC,GAAIlzK,IAAE,CAAC,CAC1K,SAASmmO,IAAInmO,EAAEkS,GAA+H,OAA5HlS,EAAEkS,EAAElS,EAAEizI,EAAK3/H,KAAKsgB,IAAI5zB,EAAEkS,EAAElS,EAAEkS,EAAEqd,GAAGvvB,EAAEkS,EAAEA,EAAE+gI,EAAK3/H,KAAKsgB,IAAI5zB,EAAEkS,EAAEA,EAAEA,EAAEnS,GAAGC,EAAEA,EAAEA,EAAEizI,EAAK3/H,KAAKugB,IAAI7zB,EAAEA,EAAEA,EAAEkS,EAAEqd,GAAGvvB,EAAEA,EAAEkS,EAAE+gI,EAAK3/H,KAAKugB,IAAI7zB,EAAEA,EAAEkS,EAAEA,EAAEnS,GAAUC,EAAEuvB,EAAEvvB,EAAEuvB,EAAErxB,QAAQgU,GAAE,CAAI,CAC3K,SAASyoT,IAAI36T,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAW,IAATA,GAAG,EAAExF,EAAE,EAAMwvB,EAAE,IAAIo2I,GAAI3lK,GAAGuvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAQ,CAAkB,GAAfy/K,GAAGC,GAAIruJ,GAAG,KAAUA,IAAIyqP,KAAME,KAAK,CAAC30Q,EAAK,GAAHxF,EAAK,EAAEA,EAAE,EAAE,KAAK,CAAMA,GAAGC,EAAEuvB,EAAErxB,OAAO,IAAIqH,EAAExF,GAAGA,GAAG,CAAC,CAAC,OAAOwF,CAAC,CAC3K,SAASunU,IAAI9sU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAU,IAARA,EAAE,EAAE2M,EAAE,EAAMnS,EAAE,IAAI4lK,GAAI3lK,EAAEuvB,GAAGxvB,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyBikN,GAAhB5yL,EAAEouJ,GAAGC,GAAI79K,GAAG,IAAUC,EAAEuF,EAAEA,GAAG68M,GAAI7yL,EAAEvvB,EAAE86B,GAAGv1B,GAAGgqB,EAAE5c,EAAE3S,EAAEkS,EAAEA,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAEqd,EAAEuL,EAAE96B,EAAEkS,GAAGlS,EAAED,EAAEwF,EAAEvF,EAAEkS,EAAElS,EAAEA,EAAEkS,EAAElS,EAAEkS,CAAC,CAC3K,SAAS66T,IAAI/sU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,IAAIwvB,EAAE,IAAIo2I,GAAI3lK,EAAEA,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAyB6B,GAAhBmS,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAQxvB,EAAEwvB,EAAErd,EAAEnS,EAAEwvB,EAAErd,EAAEnS,EAAEA,EAAEmS,EAAEnS,EAAEA,EAAEA,EAAEA,EAAEmS,EAAEnS,EAAEmS,EAAEA,EAAEnS,EAAEmS,EAAEA,EAAEnS,EAAEC,EAAEkS,EAAEnS,EAAEC,EAAED,EAAEA,EAAEmS,EAAEA,EAAElS,EAAEkS,EAAEA,EAAElS,EAAEkS,EAAEA,EAAEA,EAAEA,EAAEA,EAAEA,EAAEnS,EAAEk3S,IAAIj3S,EAAE,CAC5K,SAASgtU,IAAIhtU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,IAAIwvB,EAAE,IAAIo2I,GAAI3lK,EAAEA,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAyB6B,GAAhBmS,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAQ5c,EAAE4c,EAAErd,EAAES,EAAE4c,EAAErd,EAAES,EAAE5S,EAAEmS,EAAES,EAAE5S,EAAEA,EAAEA,EAAEmS,EAAES,EAAET,EAAEA,EAAES,EAAET,EAAEA,EAAES,EAAE3S,EAAEkS,EAAES,EAAE3S,EAAED,EAAEA,EAAEmS,EAAE3M,EAAEvF,EAAEkS,EAAE3M,EAAEvF,EAAEkS,EAAE3M,EAAE2M,EAAEA,EAAE3M,EAAE2M,EAAEnS,EAAEg3S,IAAI/2S,EAAE,CAE5K,SAASitU,IAAIjtU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAgE,OAA9DA,EAAE49K,GAAG+wC,GAAIkkD,GAAIzoD,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAIr7L,EAAEE,EAAE,KAAK,IAAIw1I,MAAO,OAAUr4H,EAAEouJ,GAAG0pB,GAAItnM,EAAEwF,EAAE,GAAG,KAAiBo4K,GAAG4qB,IAAIh5K,GAAGy4K,MAAM6oC,MAAM,IAAI7wO,EA9sCzJ,SAAaA,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAOulL,IAAI,KAAK,EAAE,OAAQ,EAAE,QAAQ,OAAO,EAAG,CA8sCkFg1I,CAAIltU,EAAEkS,EAAE,CAE3K,SAASi7T,IAAIntU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAa,IAAX+vN,GAAI9vN,EAAEkS,EAAEA,GAAOnS,EAAE,IAAI4lK,GAAI3lK,EAAEJ,GAAGG,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAA0B,IAAkB,GAAfioM,IAApB52K,EAAEouJ,GAAGC,GAAI79K,GAAG,MAAcwvB,EAAErd,EAAE,GAAO,CAAC49M,GAAIvgM,EAAEA,EAAErd,GAAG46T,IAAIv9S,GAAiB,GAAdA,EAAEA,EAAEA,EAAErxB,QAAW4xN,GAAI9vN,EAAEJ,EAAE2vB,GAAG,KAAK,EA2gCpK,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAwB,IAAtB+B,EAAE,EAAEwvB,EAAE,EAAEvxB,EAAE,IAAIy7K,GAAIvnK,EAAE,EAAMzO,EAAE,IAAIkiK,GAAI3lK,EAAEJ,GAAG6D,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAA2C,IAAlCyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,MAAU8rB,EAAEA,EAAErxB,OAAW6+M,GAAI/+M,EAAE2U,EAAE3U,EAAEuxB,EAAErd,EAAElU,EAAEuxB,IAAQxvB,EAAEkzI,EAAK3/H,KAAKugB,IAAI9zB,EAAE4S,EAAE5S,GAAGwvB,GAAG5c,EAAE3S,GAAGkS,EAAE,EAAElS,EAAEhC,EAAE,MAAKkU,EAA0D,IAv/CnQ,SAAYlS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAmB,IAAf8gK,GAAI3uJ,GAAGqd,GAAE,EAAUxvB,EAAE,IAAI4lK,GAAI3lK,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAqB86O,GAAG9mO,EAAb0rK,GAAI79K,IAAa,KAAQ60O,GAAI70O,GAAGwvB,GAAE,EAAc,CAu/C2E2iS,CAAGlyT,EAAEJ,EAAE5B,GAAGgC,EAAED,EAAEwvB,EAAEvvB,EAAE0S,EAAE3S,EAAEC,EAAE2S,EAAE,EAAE3S,EAAE86B,EAAE,EAAE96B,EAAEuF,EAAE,EAAEvF,EAAEE,EAAEo2K,IAAIt2K,EAAEoD,EAAEkzK,IAAQx7I,EAAE,IAAI6qI,GAAI3lK,EAAEkS,GAAG4oB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAASqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,IAAI96B,EAAEoD,EAAE6vI,EAAK3/H,KAAKsgB,IAAI5zB,EAAEoD,EAAEmC,EAAEoN,GAAG3S,EAAE2S,EAAEsgI,EAAK3/H,KAAKugB,IAAI7zB,EAAE2S,EAAEpN,EAAEoN,GAAG3S,EAAE86B,EAAEm4G,EAAK3/H,KAAKugB,IAAI7zB,EAAE86B,EAAEv1B,EAAEu1B,GAAG96B,EAAEE,EAAE+yI,EAAK3/H,KAAKsgB,IAAI5zB,EAAEE,EAAEqF,EAAEu1B,GAAG96B,EAAEuF,GAAGA,EAAEu1B,EAAE96B,EAAEhC,EAAEgC,EAAEA,EAAEA,EAAEuF,EAAEvF,EAAEkS,EAAEqd,EAAErxB,OAAO8B,EAAEhC,IAAIgC,EAAEkS,EAAEqd,EAAErxB,OAAO,GAAG8B,EAAEkS,EAAEqd,EAAErxB,QAAQ0kU,IAAI5iU,EAAEoS,EAAE,CA3gC7Ug7T,CAAIptU,EAAE,CAC5K,SAASg/S,IAAIh/S,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAgB,IAAdA,EAAE3S,EAAE86B,EAAEv1B,EAAE,EAAEu1B,EAAE,EAAM/6B,EAAE,IAAI4lK,GAAI3lK,EAAEA,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAA0B0wT,IAAjBr/R,EAAEouJ,GAAGC,GAAI79K,GAAG,KAAWC,EAAEuF,EAAEoN,GAAGwuQ,GAAI5xP,EAAErd,GAAG4oB,EAAEm4G,EAAK3/H,KAAKugB,IAAIiH,EAAEvL,EAAE7c,GAAcnN,EAAXoN,GAAG4c,EAAExvB,EAAEC,EAAEuvB,EAAMvvB,EAAED,EAAE+6B,EAAE96B,EAAEkS,EAAE3M,CAAC,CAC5K,SAAS+kO,IAAItqO,GAAG,IAAIkS,EAAEqd,EAAW,OAAG+yO,GAAZ/yO,EAAE89S,IAAIrtU,IAAoB,MAAa+jL,GAAGx0J,GAANrd,EAASyrK,GAAGysE,IAAG,IAAItb,GAAG7hB,GAAG19L,EAAEvvB,EAAE27M,KAAK,IAAIpoE,KAAM,IAAYy3E,IAAIrtC,GAAG0O,KAAMn6K,EAAEA,IAAIA,EAAEA,EAAE,IAAI64M,GAAI19B,IAAGn7K,EAAE,EAAE,IAAIA,EAAEA,GAAG,GAAG,KAAK,CAC3K,SAASo7T,IAAIttU,GAAoJ,OAAvIA,EAAEE,IAAKF,EAAE2yO,KAAQ3yO,EAAEE,EAAE,IAAI6+O,GAAI/+O,EAAEA,EAAE,MAAOA,EAAEk+L,KAAMl+L,EAAEE,EAAE,IAAI24N,GAAI74N,EAAE,MAAgC,GAAzBmgP,GAAIqW,IAAKnW,MAAMwiF,KAAK7iU,IAAQA,EAAEE,EAAE,IAAIomQ,GAAItmQ,GAAKA,EAAEE,EAAE,IAAI44N,GAAI94N,EAAE,OAAcA,EAAEE,CAAC,CAC3K,SAASqtU,IAAIvtU,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAKuxB,EAAEmqS,GAAGxnT,KAAI3M,GAAGoN,EAAET,GAAUyrK,GAAG59K,EAAE,IAAI87P,GAAGlpP,GAAjB,QAA2B3U,EAAEuxB,EAAE4xI,GAAGjvJ,IAAGzO,EAAEyO,EAAE+B,GAAO,IAAO,GAAJxQ,GAAOq3B,EAAE6iJ,GAAG3/K,EAAE,IAAIuH,EAAEqmS,GA1YjI,SAAa5rS,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAoB,IAAlBv1B,EAAE,IAAI0rN,GAAI/+M,EAAE+sK,MAAUl/K,EAAEmS,EAAEypM,KAAK57M,EAAEw7M,OAAgBzgL,EAAE2gO,IAAIz7P,EAAE29K,GAAf59K,EAAE07M,KAAkB,QAAWl2M,EAAEgqB,EAAEhqB,EAAEgqB,EAAErxB,QAAQ48B,GAAQ,OAAOv1B,CAAC,CA0YHioU,CAAIxtU,EAAE86B,KAASv1B,EAAEqmS,GAAGnwC,IAAIz7P,EAAE29K,GAAG3/K,EAAE,MAAQ,CAI3K,SAASyvU,IAAIztU,GAAG,OAAO29K,GAAG4qB,IAAIvoM,EAAEkS,GAAGmrJ,MAAMqwK,MAAM,KAAK/6T,GAAG,KAAK,EAAE+uL,GAAIy0C,GAAIg3C,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAIvtM,EAAED,EAAE,KAAK,IAAIimJ,IAAK,IAAIC,IAAK,IAAIC,IAAK,MAAM,KAAK,GA4vB9I,SAAalmJ,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAU,IAAR1D,EAAE,EAAE0D,EAAE,EAAMkP,EAAE,IAAIgzJ,GAAI3lK,EAAED,GAAG4S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAKpN,EAAEo4K,GAAGopF,GAAI58C,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAIzyK,EAAE1oB,EAAE,KAAK,IAAIo0I,IAAK+6H,GAAI,IAAIjsI,EAAI,IAAID,EAAI,IAAIgB,GAAIkoC,GAAGC,GAAGwtD,IAAG,GAAGC,IAAI,IAAI,EAAE,EAAE4oC,KAAME,SAAS,IAAIxlP,EAAE,KAAQxvB,GAAG0D,GAAMg8K,MAAHlwJ,EAASwwJ,IAAKhgL,GAAGwF,EAAE05K,MAAax7K,EAAE1D,IAAM0/K,MAAHlwJ,EAASs3K,IAAKpjM,GAAG8B,EAAE05K,MAAK/sK,EAAEqd,EAAEmyK,GAAIy0C,GAAI5wO,EAAEyjL,KAAK,IAAI7iC,IAAK,IAAImlB,GAAIp5J,GAAI,CA5vBjMy7T,CAAI3tU,GAAG,MAAM,KAAK,GAgSlK,SAAaA,GAAG,IAAIkS,EAAEqd,EAAMuL,EAAEnoB,EAAuG,IAAtFmyM,GAAfnyM,EAAE,IAAIqsN,GAAIh/N,EAAED,GAAS,IAAIumJ,IAAQkiJ,MAAHt2R,EAASqsK,GAAGC,GAAGiqH,IAAG,GAAGx8D,IAAI,IAAI,EAAE,CAACy8D,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,MAAO15Q,EAAE,EAAMuL,EAAE,IAAI6qI,GAAIhzJ,GAAGmoB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAA0C0vU,IAA/BjwJ,GAAGC,GAAI9iJ,GAAG,KAAO5oB,EAAEqd,EAAErd,EAAEhU,WAAmBqxB,CAAE,CAhSnDs+S,CAAI7tU,GAAI,CAC5K,SAAS8tU,IAAI9tU,EAAEkS,EAAEqd,GAASsyQ,IAAItyQ,EAAE,6BAA6B,GAAGA,EAAE3vB,GAAKsS,GAAG2lP,GAAItoO,EAAEisO,GAAItpP,IAAIq1Q,KAAME,MAAkCsmD,IAAI/tU,EAA9B29K,GAAG26B,IAAIpmM,GAAG0iN,KAAMC,MAAM,KAAatlM,EAAE3vB,GAAKsS,GAAG2lP,GAAItoO,EAAEisO,GAAItpP,IAAIq1Q,KAAME,KAAK,CAC5K,SAAS8P,MAAMA,IAAI7iJ,EAAI8iJ,IAAI,IAAIriF,GAAI,QAAQ,GAAGsiF,IAAI,IAAItiF,GAAI,WAAW,GAAGuiF,IAAI,IAAIviF,GAAI,WAAW,GAAGwiF,IAAI,IAAIxiF,GAAI,SAAS,GAAGyiF,IAAI,IAAIziF,GAAI,WAAW,GAAG0iF,IAAI,IAAI1iF,GAAI,UAAU,EAAE,CAC5K,SAAS64H,IAAIhuU,GAAG,IAAIkS,EAAE,OAAc,IAAL,GAALlS,EAAEgtN,IAAiB69F,IAAI7qT,KAAGkS,EAAE,IAAI27M,GAAIg9F,IAAI7qT,KAAMA,GAAG,eAAe45L,GAAI1nL,EAAc,IAAN,IAALlS,EAAEw1K,KAAYtjK,EAAElS,GAAG,gBAAgB45L,GAAI1nL,EAAc,IAAN,IAALlS,EAAEw1K,KAAYtjK,EAAElS,GAAG,IAAWkS,EAAElS,EAAC,CAG5K,SAAS60T,IAAI70T,EAAEkS,GAAG5N,KAAKiB,EAAEvF,EAAK47M,GAAIhjB,GAAI1mL,GAAG,YAAY,IAAI5N,KAAKvE,EAAE,EAAEuE,KAAKtE,EAAEu+K,GAAGC,GAAG4U,IAAG,GAAGsW,IAAI,GAAG,GAAG,CAACugB,GAAI/3M,OAAU5N,KAAKvE,EAAE,EAAEuE,KAAKtE,EAAEu+K,GAAGC,GAAG4U,IAAG,GAAGsW,IAAI,GAAG,GAAG,CAACugB,GAAI/3M,GAAG+3M,GAAI4lB,GAAI39N,EAAE,OAAO,CAI7K,SAASy5K,IAAI3rL,EAAEkS,GAAG,IAAIqd,EAAKrd,GAAGlS,EAAEkS,GAAGqd,EAAE,KAAOvvB,EAAEkS,IAAIqd,EAAEo9N,GAAI3sP,EAAEkS,EAAElS,GAAG,EAAEuvB,IAAMrd,IAAIqd,EAAEqpS,IAAI1mT,EAAElS,GAAG,EAAEuvB,KAAIA,EAAEmxR,GAAI1gT,EAAEkS,EAAEqd,KAAQA,EAAEy8J,MAAoB,IAAJ,EAALhsL,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEkS,EAAEA,GAAG,CAC7K,SAAS+7T,IAAIjuU,EAAEkS,GAAG,IAAIqd,EAAKrd,GAAGlS,EAAE86B,GAAGvL,EAAE,KAAOvvB,EAAE86B,IAAIvL,EAAEo9N,GAAI3sP,EAAE86B,EAAE96B,GAAG,EAAEuvB,IAAMrd,IAAIqd,EAAEqpS,IAAI1mT,EAAElS,GAAG,EAAEuvB,KAAIA,EAAEoxR,GAAI3gT,EAAEkS,EAAEqd,KAAQA,EAAEy8J,MAAoB,IAAJ,EAALhsL,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEkS,EAAEA,GAAG,CAC7K,SAASg8T,IAAIluU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,GAAM,MAAHC,EAAQ,OAAO,KAAgB,IAAXuvB,EAAEouJ,GAAG39K,EAAE,KAASqhC,KAAK,MAAO,GAAa,IAAVthC,EAAE,IAAIukL,GAAQpyK,EAAEqd,EAAEosL,KAAKzpM,EAAEqpM,MAAOkB,GAAI18M,GAAG25P,MAAM51E,GAAG5xK,EAAEupM,QAAQ17M,EAAEC,GAAG,IAAI,OAAOo/M,GAAIr/M,EAAEA,EAAEC,EAAE9B,OAAO,EAAE,CAC7K,SAASiwU,IAAInuU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,GAAM,MAAHC,EAAQ,OAAO,KAAgB,IAAXuvB,EAAEouJ,GAAG39K,EAAE,KAASqhC,KAAK,MAAO,GAAa,IAAVthC,EAAE,IAAIukL,GAAQpyK,EAAEqd,EAAEosL,KAAKzpM,EAAEqpM,MAAOkB,GAAI18M,GAAG25P,MAAM51E,GAAG5xK,EAAEupM,QAAQ17M,EAAEC,GAAG,IAAI,OAAOo/M,GAAIr/M,EAAEA,EAAEC,EAAE9B,OAAO,EAAE,CAK7K,SAASq5O,IAAIv3O,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAA0I,OAAxI/6B,EAAEmS,EAAEg2M,KAAKptL,EAAE5oB,EAAE4oM,KAAKv1M,EAAExF,EAAEk+N,KAAKC,GAAIl+N,EAAE,EAAED,EAAE,KAAK+6B,EAAEqjM,IAAIn+N,EAAED,EAAE+6B,EAAE+uJ,GAAG9pL,EAAE,KAAwB,IAAlB49K,GAAG59K,EAAE,IAAIy1K,GAAGmyC,OAAS,GAAMuW,GAAIl+N,EAAE,EAAED,EAAEA,EAAEs+N,KAAKvjM,GAAG,GAAE,GAAMvL,EAAEA,EAAE+uM,GAAG/4N,GAAIgqB,EAAEhqB,EAAUgqB,CAAC,CAG9K,SAASm8R,IAAI1rT,GAAG,IAAIkS,EAAEqd,EAAkG,OAAhGrd,EAAEyrK,GAAGwtC,GAAG,IAAI2jB,GAAG7hB,GAAGi1E,GAAIliS,EAAEA,GAAGA,EAAE27M,KAAK,IAAIpoE,KAAM,IAAIhkH,EAAEouJ,GAAGwtC,GAAG,IAAI2jB,GAAG7hB,GAAGm1E,GAAIpiS,EAAEA,GAAGA,EAAE27M,KAAK,IAAIpoE,KAAM,IAAW0uC,GAAIk6B,GAAG5T,IAAIr2L,GAAG81L,MAAM+oC,SAAS9uD,GAAIk6B,GAAG5T,IAAIh5K,EAAEwhN,MAAM,CAC/K,SAASg/C,MAAMA,IAAIr7I,EAAIu7I,IAAI,IAAIj/E,GAAI,WAAW,GAAGk/E,IAAI,IAAIl/E,GAAI,mBAAmB,GAAGm/E,IAAI,IAAIn/E,GAAI,qBAAqB,GAAGo/E,IAAI,IAAIp/E,GAAI,cAAc,GAAGq/E,IAAI,IAAIr/E,GAAI,aAAa,EAAE,CAC/K,SAASqlC,IAAIr2O,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAEmoB,EAAE6iJ,GAAGopF,GAAI58C,GAAIj4M,EAAE82K,KAAK,IAAIliC,IAAKy6H,GAAI,IAAIjsI,EAAI,IAAID,EAAI,IAAIgB,GAAIkoC,GAAGC,GAAGwtD,IAAG,GAAGC,IAAI,IAAI,EAAE,EAAE4oC,KAAME,SAAS,IAAIpiQ,EAAEgrK,GAAG6vH,GAAGxtS,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAO,GAAHwF,EAAKoN,EAAE0oK,GAAG,EAAEvgJ,GAAGnoB,EAAEkvL,GAAG/mK,EAAE,CAC/K,SAASszS,IAAIpuU,EAAEkS,GAAG,IAAMnS,EAAI+6B,EAAEnoB,EAAE,IAAImoB,EAAE,IAAI6qI,GAAIzzJ,EAAElS,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAyB,IAAI6B,EAAE,IAAI+uO,GAAG7hB,GAAGi1E,GAA9BvkH,GAAGC,GAAI9iJ,GAAG,KAA2B96B,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAAoB4S,EAAbgrK,GAAGwtC,GAAGprN,GAAG,IAAQwvB,EAAEvxB,EAAEoF,EAAEpD,EAAEJ,EAAE+S,GAAG3S,EAAEJ,EAAE+S,GAAG,CAAG,CAG/K,SAAS4jR,IAAIv2R,EAAEkS,GAAG,QAAIA,KAAwBlS,EAAEuqT,GAAGr4S,KAAqBlS,EAAEhC,EAA0FgC,EAAEhC,EAAEsgO,GAAGpsN,GAA3F23K,GAAG33K,EAAE,MAAMlS,EAAEhC,EAAE2/K,GAAGzrK,EAAE,MAAY,IAAUlS,EAAEhC,EAAE,IAAIi0J,GAAWjyJ,EAAEhC,EAAEsgO,GAAGpsN,KAA2B,CAE/K,SAASm8T,IAAGruU,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAE,IAAIv1B,EAAEvF,EAAEspO,KAAK3tB,KAAKp2M,EAAEg2M,MAAgC,GAATzgL,GAAhB/6B,EAAE49K,GAAGp4K,EAAEk2M,KAAK,KAAQ5O,KAAQkO,GAAG7oM,KAAK6oM,GAAGjgL,IAAO,MAAH5oB,GAASogL,GAAGpgL,EAAE4oB,GAA0C,OAAnCvL,IAAGxvB,EAAE,IAAIouM,GAAIpuM,EAAE8sM,KAAK9sM,EAAE+6M,MAAMv1M,EAAEw+K,MAAYhkL,EAAG,OAAO,IAAI,CAEhL,SAASuuU,IAAItuU,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAA2C,IAAzCA,EAAEsgI,EAAK3/H,KAAKsgB,IAAIrE,EAAEg/S,IAAI5wJ,GAAG39K,EAAEkS,EAAE,IAAIA,EAAEqd,EAAExvB,IAAQ+6B,EAAE,IAAI6qI,GAAI3lK,EAAEA,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,SAASqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,OAAQ5oB,IAAIS,EAAEsgI,EAAK3/H,KAAKsgB,IAAIjhB,EAAE27T,IAAI/oU,EAAE2M,EAAES,EAAE5S,KAAK,OAAO4S,CAAC,CAChL,SAAS67T,IAAIxuU,GAAG,IAAIkS,EAAInS,EAAEwF,EAAqD,IAAnDA,EAAE04K,GAAGkuE,IAAGt4D,IAAI,IAAI7zL,EAAEkS,EAAEqd,EAAErxB,OAAO,EAAE,GAAG6B,EAAE,IAAIwpN,GAAIvpN,EAAEkS,EAAE,GAASnS,EAAEmS,EAAEnS,EAAEA,EAAEk/K,MAASqqC,GAAIvpN,EAAEmS,EAAEnS,EAAEA,EAAEk/K,MAAf/sK,EAAqByrK,GAAG59K,EAAEA,EAAEs7M,GAAGt7M,EAAEwvB,EAAExvB,EAAEmS,KAAK,IAAa3M,EAANxF,EAAEmS,EAAE,GAAO0oP,GAAI1oP,EAAElS,GAAG,OAAOuF,CAAC,CAChL,SAASsiM,IAAI7nM,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAuC,IAArC2U,EAt+GpC,SAAa3S,EAAEkS,GAAS,OAANlS,EAAEuF,EAAE2M,EAASlS,CAAC,CAs+GMyuU,CAAIroJ,GAAIy6C,GA3T9C,SAAa7gO,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAOwxQ,KAAME,IAAI,KAAK,EAAE,OAAOF,KAAMG,IAAI,KAAK,EAAE,OAAOH,KAAMK,IAAI,KAAK,EAAE,OAAOL,KAAMI,IAAI,QAAQ,OAAO,KAAM,CA2T/FmqD,CAAIn/S,IAAIxvB,GApJ1D,SAAaC,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAc,OAAZA,EAAEvF,EAAEE,EAAEH,EAAEC,EAAED,EAASmS,EAAES,GAAG,KAAK,EAAE,OAAQ5S,EAAEA,EAAEwvB,EAAE,KAAK,EAAE,OAAOhqB,EAAE2M,EAAEnS,EAAEC,EAAEuvB,EAAE,KAAK,EAAE,OAAOhqB,EAAEvF,EAAED,EAAEwvB,EAAEA,EAAE,KAAK,EAAE,OAAQxvB,EAAEmS,EAAEqd,EAAE,QAAQ,OAAO,EAAG,CAoJnGo/S,CAAI3uU,EAAEuvB,EAAEhqB,IAAQvH,EAAEq+T,IAAIr8T,EAAEuvB,GAAGosL,KAAK39M,EAAEu9M,MAA0BrpM,GAAnBzO,EAAEk6K,GAAG3/K,EAAEy9M,KAAK,KAAWr4M,KAAI03B,EAAE5oB,EAAEzO,EAAEL,GAAGpF,EAAE+3K,GAAIpjK,EAAE5S,EAAE,IAAI6sO,GAAI9xM,EAAEipR,GAAIpxS,EAAEmoB,MAAM4vR,GAAI/3S,EAAE,CAChL,SAASi8T,IAAI5uU,EAAEkS,GAAG5N,KAAKw2B,EAAE,IAAI03I,GAAIluK,KAAK4N,EAAE,IAAIsgK,GAAIluK,KAAK8N,EAAE,IAAIogK,GAAIluK,KAAKtE,EAAEA,EAAEsE,KAAKirB,EAAErd,EAAE5N,KAAKirB,EAAE,GAAGq0S,IAAIt/T,KAAKA,KAAKirB,EAAE,GAAGkwJ,MAAMC,MAAMp7K,KAAKirB,EAAEjrB,KAAKtE,EAAE9B,OAAO,GAAG0lU,IAAIt/T,KAAKA,KAAKirB,EAAE,GAAGkwJ,MAAMG,KAAK,CAChL,SAASivJ,IAAI7uU,GAAGA,EAAE9B,OAAO,GAAG8B,EAAE,GAAG9B,OAAO,IAAIoG,KAAKirB,EAAE0yJ,GAAIk6B,GAAG5T,IAAIg3C,GAAIv/O,EAAE,GAAG,KAAKgoM,MAAM8mI,SAASxqU,KAAKtE,EAAEi+K,GAAG8wJ,IAAGl7I,IAAI,KAAK7zL,EAAE9B,OAAO,EAAE,GAAGoG,KAAK4N,EAAE+rK,GAAG+wJ,IAAGn7I,IAAI,KAAK7zL,EAAE9B,OAAO,EAAE,GAAGoG,KAAKvE,EAAE,IAAIw+S,EAAE,CAChL,SAAS0wB,IAAIjvU,GAAG,OAAe,GAAZA,EAAEuvB,EAAErxB,UAA4Bu/M,GAAI,EAAEz9M,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAE,GAAG,KAAKA,EAAEvxB,EAAEqD,IAAI49P,MAAMg4B,MAAyBlpB,GAAI53B,GAAI,IAAI/rB,GAAI,KAAK,IAAI7c,GAAIvtM,EAAE,KAAK,IAAIqpJ,IAAK,IAAIC,IAAI,CAChL,SAAS4lL,IAAIlvU,EAAEkS,EAAEqd,GAAuJ,OAApJsyQ,IAAItyQ,EAAE,cAAc,GAAGysO,GAAIh8P,EAAEkS,GAAGgiO,GAAIl0O,EAAEkS,GAAG2hP,MAAM8xB,KAAKA,KAAKzxC,GAAIl0O,EAAEkS,EAAE2vQ,IAAIA,KAAK3tC,GAAIl0O,EAAEkS,EAAE0zQ,IAAIA,KAAK1xC,GAAIl0O,EAAEkS,EAAE4hP,IAAIA,KAAK9zP,EAAEA,EAAEmvU,IAAInvU,EAAEkS,EAAEA,GAqmB5I,SAAalS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAIoN,EAAqD,GAAjDpN,EAAEgqB,GAAGhqB,IAAIA,EAAE,IAAIi2K,IAAKqmH,IAAIt8R,EAAE,SAASvF,EAAEA,EAAEuvB,EAAErxB,QAAW+jL,GAAIk6B,GAAG5T,IAAIr2L,GAAG6sJ,MAAMqwK,QAAe,IAANzvI,KAAU5/L,EAAE,EAAEA,EAAEC,EAAEA,EAAEuvB,EAAErxB,OAAO6B,KAAQA,EAAE,GAAG,IAAI,IAAIA,IAAsBspL,GAAIrgG,GAAG20F,GAAG0pB,GAAIrnM,EAAEA,EAAED,GAAG,MAAO,IAAI4S,EAAE,IAAIgzJ,GAAI3lK,EAAEA,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAIjrK,GAAG,IAAMm2S,GAAG52S,EAAEg0R,GAAI3gS,EAAE,IAAIg9R,IAAIh9R,EAAE,CArmBrJ8pU,CAAIrvU,EAAEkS,EAAEg0R,GAAI32Q,EAAE,IAAIgzQ,IAAIhzQ,GAAUrd,CAAC,CAChL,SAASo9T,IAAItvU,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAqD,IAAnDyF,EAAE23P,IAAIlpP,GAAG4oB,EAAE5oB,EAAE4oB,EAAE98B,EAAEkU,EAAES,EAAEA,EAAEsgI,EAAK3/H,KAAKuc,KAAKiL,EAAEA,EAAE98B,EAAEA,GAAGuH,EAAE,EAAMxF,EAAE,IAAI4lK,GAAIliK,GAAG1D,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyBqH,GAAG+pU,IAAItvU,EAArB29K,GAAGC,GAAI79K,GAAG,KAAgB,OAAOkzI,EAAK3/H,KAAKugB,IAAItuB,EAAEoN,EAAE,CAChL,SAAS2iR,MAAMA,IAAI5gJ,EAAI2sE,IAAI,IAAIzL,GAAI4oF,IAAI,GAAGp9E,IAAI,IAAIxL,GAAI,OAAO,GAAG4/E,IAAI,IAAI5/E,GAAI,aAAa,GAAGknB,IAAI,IAAIlnB,GAAI,cAAc,GAAGmnB,IAAI,IAAInnB,GAAI,cAAc,GAAGonB,IAAI,IAAIpnB,GAAI,YAAY,EAAE,CAEhL,SAAS25H,IAAIvvU,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAE,GAAM,MAAH96B,EAAS,OAAO+3L,IAA2B,IAAvBj9J,EAAE,IAAImzQ,GAAIjqH,IAAI,IAAI,KAAajkL,EAAE,EAAEwF,GAARgqB,EAAEvvB,GAAU9B,OAAO6B,EAAEwF,IAAIxF,EAAUkxQ,GAAIn2O,EAAE,GAAXvL,EAAExvB,IAAe,OAAQ+6B,EAAE96B,EAAkB,GAAZ86B,EAAEv1B,EAAErH,OAAU48B,EAAE96B,EAAEA,EAAE86B,EAAE96B,EAAEA,EAAG,GAAG86B,EAAEv1B,EAApCu1B,EAAEvL,CAAoC,CACjL,SAASigT,IAAIxvU,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAE,GAAM,MAAH96B,EAAS,OAAO+3L,IAA2B,IAAvBj9J,EAAE,IAAImzQ,GAAIjqH,IAAI,IAAI,KAAajkL,EAAE,EAAEwF,GAARgqB,EAAEvvB,GAAU9B,OAAO6B,EAAEwF,IAAIxF,EAAUkxQ,GAAIn2O,EAAE,GAAXvL,EAAExvB,IAAe,OAAQ+6B,EAAE96B,EAAkB,GAAZ86B,EAAEv1B,EAAErH,OAAU48B,EAAE96B,EAAEA,EAAE86B,EAAE96B,EAAEA,EAAG,GAAG86B,EAAEv1B,EAApCu1B,EAAEvL,CAAoC,CACjL,SAASkgT,IAAGzvU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAyB,IAAvBA,EAAE,IAAIkuS,GAAIjqH,IAAI,IAAI,KAASz0J,EAAEvvB,EAAEspO,KAAK3tB,KAAKpsL,EAAEgsL,MAAuB01D,GAAIlxQ,EAAEmkQ,GAAGlkQ,GAAzBkS,EAAEyrK,GAAGpuJ,EAAEksL,KAAK,KAAiB5O,MAAM,IAAIq3D,GAAGlkQ,EAAEkS,EAAE4oM,OAAO,OAAQ/6M,EAAEC,EAAkB,GAAZD,EAAEwF,EAAErH,OAAU6B,EAAEC,EAAEA,EAAED,EAAEC,EAAEA,EAAG,GAAGD,EAAEwF,EAApCxF,EAAEwvB,CAAoC,CAElL,SAASmgT,IAAI1vU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAS,IAAPgqB,EAAE,KAAShqB,EAAEo4K,GAAGzrK,EAAEkqM,GAAGp8M,GAAG,IAAI27M,KAAKp2M,EAAEg2M,MAAuB,GAAhBx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,IAAQlsL,GAA+B,IAAIxvB,EAAEwvB,EAAEvxB,GAAGgC,EAAED,EAAEA,EAAE/B,EAAE+B,EAAEwvB,EAAEvxB,IAAIuxB,EAAG,OAAO,OAAjEA,EAAExvB,EAAEwvB,EAAEvxB,GAAGgC,EAAED,EAAEA,EAAE/B,EAAE+B,EAAEwvB,EAAEvxB,EAAoD,OAAO,CAAI,CACjL,SAAS6nP,IAAI7lP,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAqB,IAAIv1B,EAAE,IAAIogK,GAAzBgqK,IAAI3vU,GAAE,EAAMkS,IAAoB3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA+B,IAAtB6B,EAAE49K,GAAGC,GAAIr4K,GAAG,MAAOxF,GAAM6mN,GAAI7mN,EAAE,MAAM8mN,GAAI9mN,EAAE,QAAQ+6B,EAAE/6B,EAAEC,EAAQ4mN,GAAI7mN,EAARA,EAAEmS,GAAW20M,GAAI9mN,EAAE+6B,GAAc,CAEjL,SAAS80S,IAAI5vU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAS,IAwhCnC,SAAavF,GAAG,IAAMuvB,EAAExvB,EAAI+6B,EAA+B,GAA7B/6B,EAAE49K,GAAG4qB,IAAIvoM,GAAGq9J,MAAM0uI,MAAM,KAAQhsS,IAAIywR,KAAMI,MAAM,IAAIrhQ,EAAE,IAAIu/M,GAAG7hB,GAAGi1E,GAAIliS,GAAGA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG77L,IAAoB,IAAIogP,GAAjBhyF,GAAGwtC,GAAG57L,GAAG,KAAgB,MAAM2jJ,GAAI,IAAI5zE,GAAIuwO,IAAIlX,IAAI34T,GAAR6vU,kJAAkK,GAAG9vU,GAAG+wR,IAAK,IAAIh2P,EAAE,IAAIg0M,GAAG7hB,GAAGm1E,GAAIpiS,GAAGA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGtwL,IAAoB,IAAI60O,GAAjBhyF,GAAGwtC,GAAGrwL,GAAG,KAAgB,MAAMo4I,GAAI,IAAI5zE,GAAIuwO,IAAIlX,IAAI34T,GAAR6vU,0IAA2J,CAxhCljBC,CAAI9vU,GAAOuvB,EAAE,IAAIu/M,GAAG7hB,GAAGu5F,GAAIxmT,GAAGA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG77L,IAA+BhqB,GAAXxF,GAAfmS,EAAEyrK,GAAGwtC,GAAG57L,GAAG,KAAQA,EAAEvxB,GAAGgC,GAAMkS,EAAEnS,EAAEmS,EAAEqd,EAAExvB,EAAEqyP,GAAIlgP,EAAE,MAAMmgP,GAAIngP,EAAE,MAAM61L,GAAI71L,GAAG81L,MAAM+nI,KAAKxqU,GAAGyqU,IAAIhwU,EAAEuF,EAAEvH,EAAG,CAClL,SAASipP,IAAIjnP,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAA2B,OAAnBv1B,EAAEgqB,GAARuL,EAAE5oB,EAAElU,GAAQ2U,GAAG3S,EAAED,EAAE+6B,EAAEnoB,IAAWmoB,EAAEnoB,GAAG,KAAK,EAAEpN,GAAGxF,EAAEmS,EAAEE,EAAEF,EAAEA,EAAES,EAAET,EAAE3M,EAAE,MAAM,KAAK,EAAEA,GAAGxF,EAAEmS,EAAES,EAAET,EAAE3M,EAAE,MAAM,KAAK,EAAEA,GAAGxF,EAAEmS,EAAEE,EAAEpS,EAAEkS,EAAES,EAAE3S,EAAEuF,EAAE,MAAM,KAAK,EAAEA,GAAGxF,EAAEmS,EAAES,EAAE3S,EAAEuF,EAAG,CAGlL,SAAS4xO,IAAIn3O,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAE,GAAQ,GAALvF,EAAEoS,EAAK,OAAOmd,EAA+B,GAA7BhqB,EAAEo4K,GAAGw/G,GAAIn9R,EAAEkS,EAAEqd,GAAG,MAAIxvB,EAAEwvB,EAAE24L,MAAWyzC,OAAO37P,EAAEA,EAAEioN,GAAGloN,GAAI,MAAMmzK,GAAI,IAAIiK,GAAG,0BAA0Bp9K,EAAE20O,KAAK8vB,GAAG,IAAIzkQ,EAAEg/L,KAAK,MAAM,OAAOx5L,CAAC,CAElL,SAAS0qU,IAAIjwU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAA2H,OAAtHmtM,GAAIltM,EAAE,IAAI,GAAGuvB,EAAEo7K,IAAI3qM,EAAEkwU,KAAKnwU,EAAEstT,IAAIrtT,EAAEkwU,OAAqB3gT,EAAEo7K,IAAbz4L,EAAE69N,GAAI/vO,EAAE,GAAW,KAA8BD,EAAE2qM,GAAI/R,GAAzB54L,EAAEstT,IAAIn7S,EAAE,KAAuB,GAAG0mL,GAAI54L,EAAE,KAAW04L,GAAIC,GAAI54L,EAAE,IAAI64L,GAAIrpK,EAAEspK,KAAK,CACnL,SAASs3I,IAAInwU,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAuC,OAAhCupN,GAAS,GAALp3M,EAAEA,GAATnS,EAAe49K,GAAGymD,GAAIlyN,EAAEA,EAAElS,EAAEA,GAAG,GAAWuvB,EAAE5c,GAAG,KAAK,EAAE5S,EAAEmS,EAAE,EAAE,MAAM,KAAK,EAAEnS,EAAEmS,EAAElS,EAAE86B,EAAE,MAAM,KAAK,EAAE/6B,EAAEC,EAAE,EAAE,MAAM,QAAQD,EAAEC,EAAEA,EAAE2S,EAAuB,OAATojO,GAAT+oB,IAAI5sP,EAAE,GAASnS,GAAUmS,CAAC,CACnL,SAAS40O,IAAI9mP,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAA4D,OAA1DA,EAAEgC,EAAEkS,EAAczO,EAAEuwT,IAARrhT,GAANmoB,EAAE5oB,EAAEnS,GAAMqS,EAAUpU,EAAE+B,EAAE4S,EAAEA,GAAG4c,GAAGhqB,EAAEs6K,GAAIomC,GAAInrL,EAAEl7B,GAAGk7B,EAAE96B,GAAU86B,EAAE1oB,EAAEO,GAAG,KAAK,EAAE,KAAK,EAAElP,EAAEzD,GAAGuF,EAAEvF,EAAE,MAAM,KAAK,EAAE,KAAK,EAAEyD,EAAEyO,GAAG3M,EAAE2M,EAAG6qM,GAAIh9M,EAAE0D,EAAE1D,EAAEwvB,EAAErd,EAAEnS,EAAEwvB,EAAE,CACnL,SAASgwS,IAAIv/T,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAkD,IAAhDA,EAAEwzL,GAAInmM,EAAEuF,EAAE2M,EAAE,IAAG4oB,EAAE,IAAIq9I,IAAMjmK,EAAEqd,EAAExvB,EAAE,IAAIwpN,GAAIvpN,EAAEuF,EAAEoN,GAAS5S,EAAEmS,EAAEnS,EAAEA,EAAEk/K,MAASqqC,GAAIvpN,EAAEmS,EAAEnS,EAAEA,EAAEk/K,OAAf15K,EAAqBo4K,GAAG59K,EAAEA,EAAEs7M,GAAGt7M,EAAEwvB,EAAExvB,EAAEmS,KAAK,KAAO9O,EAAEmsB,EAAEwmJ,GAAIj7I,EAAEv1B,EAAEA,GAAGikN,GAAIzpN,GAAG,OAAO+6B,CAAC,CAMnL,SAASqsO,MAAc,IAAInnQ,EAAEkS,EAAEqd,EAAExvB,EAAyE,IAA3FonQ,IAAIzyH,EAAgB07L,IAAInyJ,GAAGgV,IAAGwzD,IAAI,GAAG,GAAG,GAAG,GAAG4pF,IAAIpyJ,GAAGgV,IAAGwzD,IAAI,GAAG,GAAG,GAAG,GAAG1mP,EAAE,iBAAqBmS,EAAE,GAAGA,GAAG,EAAEA,IAAKm+T,IAAIn+T,GAAGnS,EAAEA,GAAG,GAAQ,IAAJwvB,EAAE,EAAMvvB,EAAE,GAAGA,GAAG,EAAEA,IAAKowU,IAAIpwU,GAAGuvB,EAAEA,GAAG,EAAI,CACpL,SAAS+gT,IAAItwU,GAAG,IAAIkS,EAAEqd,EAAE,GAAG0yJ,GAAIk6B,GAAG7D,IAAIt4M,GAAGq9J,MAAMkzK,QAAS,IAAIhhT,EAAE,IAAIu/M,GAAG7hB,GAAG+oF,IAAIh2S,GAAGA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG77L,IAAoB,GAAGihT,IAAlBt+T,EAAEyrK,GAAGwtC,GAAG57L,GAAG,MAAkB0yJ,GAAIk6B,GAAG7D,IAAIpmM,EAAEu+T,OAAQ,OAAO,EAAQ,OAAO,CAAK,CACpL,SAASC,IAAI1wU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAKoiL,GAAI3nL,EAAE86B,EAAE5oB,KAAIA,EAAEA,EAAElS,EAAED,EAAEmS,EAAEqd,GAAiB,GAAf42K,GAAInmM,EAAEoS,EAAErS,EAAE,IAAQg2K,GAAI/1K,EAAEoS,EAAErS,GAAGwF,EAAE2M,EAAEnS,GAAiB,GAAfomM,GAAInmM,EAAEoS,EAAE7M,EAAE,IAAQwwK,GAAI/1K,EAAEoS,EAAE7M,GAA0B,IAAvBgqB,EAAErd,EAAElS,EAAEkS,GAAOqd,EAAErxB,UAAY8B,EAAEhC,IAAIgC,EAAEhC,EAAE,IAAIo4T,IAAIp2T,IAn9BpK,SAAaA,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,IAAIA,EAAE,IAAI4lK,GAAIzzJ,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,IAAIg2K,GAAI/1K,EAAED,EAAEwvB,GAAGohT,IAAI3wU,EAAEuvB,EAAG,CAm9BsEqhT,CAAI5wU,EAAEhC,EAAEuxB,IAAI,CACpL,SAASs3N,IAAI7mP,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAA8B,OAApB/6B,GAARwvB,EAAEvvB,EAAEuvB,EAAExvB,GAAMqS,KAAU0oB,GAARv1B,EAAEvF,EAAED,EAAEA,GAAMqS,GAAkBmd,EAAEnsB,EAAEmC,EAAEnC,EAAE,EAAE,EAAU6yR,GAAIl2R,IAAI+6B,EAAU,EAAUmpR,GAAIlkT,IAAI+6B,EAAU,EAAoB0/J,GAAXx6L,EAAEkS,EAAeA,EAAE+jR,GAAIl2R,IAAI,EAAE,CAAE,CACpL,SAASo6R,MAAMA,IAAIzlJ,EAAI2lJ,IAAI,IAAIroF,GAAImqH,IAAI,GAAG7hC,IAAI,IAAItoF,GAAI,eAAe,GAAGuoF,IAAI,IAAIvoF,GAAI,iBAAiB,GAAGwoF,IAAI,IAAIxoF,GAAIouF,IAAI,GAAG3F,IAAI,IAAIzoF,GAAI,gBAAgB,GAAG0oF,IAAI,IAAI1oF,GAAI,YAAY,EAAE,CACpL,SAAS6+H,IAAI7wU,GAAG,IAAIkS,EAAE5N,KAAKvE,EAAE,IAAIyyK,GAAIluK,KAAKirB,EAAEvvB,EAAEuvB,EAAEjrB,KAAKiB,EAAEvF,EAAED,EAAEuE,KAAK4N,EAAElS,EAAEkS,EAAE5N,KAAKw2B,EAAE,IAAI8vM,GAAI5qO,EAAEuF,GAAGjB,KAAKtE,EAAEA,EAAEA,EAAGA,EAAE86B,EAAiEx2B,KAAKqO,EAAE3S,EAAE86B,EAAvEx2B,KAAKqO,EAAmB,IAAI80L,GAApBv1L,EAAEyrK,GAAGsL,GAAIghH,KAAI,GAAatsH,GAAG+pB,GAAIx1L,EAAEA,EAAEhU,QAAQ,GAAG,EAAiB,CACpL,SAASm5S,IAAIr3S,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAIoN,EAAElP,IAAMkP,EAAEotP,GAANx6P,EAAEvF,EAAU,oBAAsB2S,EAAEotP,GAAIx6P,EAAEgnL,MAAS55K,IAAO5S,EAAE,MAAN0D,EAAEkP,KAAe5S,EAA8B,IAAIs/L,GAAG57L,EAAhCs/R,GAAGt/R,EAAEw6K,GAAGoS,IAAGwD,IAAI,EAAE,EAAE,EAAE,MAAqB9zL,GAAkBw4M,GAAIx4M,EAAjB,IAAIm3M,GAAIzzM,EAAEyO,IAAa,CACpL,SAAS84M,IAAIhrN,GAAG,GAAG6pL,GAAG7pL,EAAE,KAAM,OAAO29K,GAAG39K,EAAE,IAAS,GAAG6pL,GAAG7pL,EAAE,KAAM,OAAOmwP,GAAIxyE,GAAG39K,EAAE,MAAW,MAA0CkzK,GAAtClzK,EAA0C,IAAI0iL,GAAI,iCAArC,IAAIV,GAAI2vH,KAA+D,CAGpL,SAAS9P,IAAI7hS,EAAEkS,EAAEqd,GAAG,GAAGvvB,EAAEkS,EAAG,MAAMghK,GAAI,IAAI4O,GAAI,8BAAmC,OAAQ,MAAL9hL,EAAEoD,IAA2BpD,EAAEoD,EAAE8O,EAAElS,EAAE0S,EAAE6c,EAAEvvB,EAAEqB,IAAIrB,EAAEE,GAAGy/L,KAAM5G,GAAI6R,GAAI7sL,KAAKD,OAAO+sL,QAAc,EAAK,CACrL,SAASimI,IAAI9wU,GAAG,IAAgByD,EAA6I,OAA3IA,EAAE,IAAI65K,GAAiB,MAAZt9K,EAAEq6L,MAAkBme,GAAI/0M,EAAEikO,IAAI1nO,EAAEq6L,MAAoB,MAAZr6L,EAAE++L,MAAkByZ,GAAI/0M,EAAEqwL,IAAI9zL,EAAE++L,MAAoB,MAAZ/+L,EAAE+wU,MAAkBv4H,GAAI/0M,EAAE,cAAczD,EAAE+wU,MAAattU,CAAC,CACrL,SAASi0O,IAAI13O,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAiJ,OAA/IA,EAAE96B,EAAEgU,EAAEhU,EAAEgU,EAAE9B,EAAe,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,MAAUznN,EAAE,IAAI+sO,GAAItyO,EAAE,EAAE,EAAE86B,EAAE5oB,GAAIqd,EAAQA,EAAE+uM,GAAG/4N,GAAVgqB,EAAEhqB,GAAe2M,GAAgCnS,EAAEmS,EAAEqd,IAAKvvB,EAAE0S,IAAI6c,EAAEvvB,EAAEy3O,GAAG13O,EAAEwvB,IAAnDvvB,EAAE0S,IAAI6c,EAAEvvB,EAAEy3O,GAAG,KAAKloN,IAA4CA,CAAC,CAMrL,SAASyhT,IAAIhxU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAyB,IAAvBA,EAAE,IAAIw3I,GAAI/sK,EAAE,EAAExF,EAAEmS,EAAEypM,KAAW57M,EAAEw7M,MAAK,CAA0B,IAAzBhsL,EAAEyoL,GAAIr6B,GAAG59K,EAAE07M,KAAK,IAAIz7M,EAAEuF,GAASgqB,EAAEvvB,EAAEA,EAAE86B,IAAIyvM,GAAIvqO,EAAEuvB,EAAEvvB,IAAIuvB,EAAEyoL,GAAIzoL,EAAEvvB,EAAE,KAAKuF,EAAE,GAAGgqB,EAAEvvB,GAAGA,EAAE86B,EAAG,MAAMA,EAAEvL,EAAEuL,EAAEvL,EAAErxB,QAAQqxB,CAAC,CAAC,OAAOuL,CAAC,CACtL,SAASmrQ,IAAIjmS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAS,IAAP2M,EAAE,KAAS3M,EAAE,IAAIogK,GAAI3lK,EAAEogT,MAAM76S,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA0BqxB,EAAE,IAAI24K,IAAvBnoM,EAAE49K,GAAGC,GAAIr4K,GAAG,MAAiB0rU,KAAKjxU,EAAED,EAAEkxU,KAAK/+T,EAAEnS,EAAEw/L,KAAKv/L,EAAED,EAAEw/L,KAAKrtL,GAAIA,EAAQi2L,IAAIj2L,EAAEqd,GAAXrd,EAAEqd,EAA4B,OAAfrd,IAAIA,EAAE,IAAIy2L,IAAYz2L,CAAC,CACtL,SAASo5T,IAAItrU,EAAEkS,EAAEqd,EAAExvB,GAAW,OAAM,GAAHwvB,IAAcvvB,EAAEJ,IAAII,EAAEJ,EAAE,IAAI06L,GAAIrN,IAAGjtL,EAAE,EAAE,IAAIusT,IAAIvsT,EAAEJ,EAAEsS,EAAEnS,IAAY49K,GAAG6iG,GAAO7iG,GAAG8sC,GAAIzqN,EAAE,IAAI,KAAOA,EAAE2jL,KAAQp0J,GAAG,IAAMwzO,KAAKmuE,GAAGlxU,EAAEgsR,IAAIhsR,GAAGuvB,EAAEunN,GAAI92O,EAAE2jL,MAAMzxK,EAAEnS,EAAE,CACtL,SAASoxU,IAAInxU,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAyE,IAAvE1D,EAAEwvB,EAAE0vJ,KAAKj/K,EAAEwwQ,GAAGxwQ,EAAEhC,EAAE+B,IAAG0D,EAAEzD,EAAEhC,EAAEkU,GAAI,GAAGoxP,IAAItjQ,EAAE2S,EAAET,EAAElS,EAAE2S,EAAET,EAAEnS,EAAE0D,GAAGkP,EAAE4c,EAAEosL,KAAK37M,EAAEhC,GAAG+B,EAAMwF,EAAE,EAAEA,EAAExF,IAAIwF,EAAGu1B,EAAEnoB,EAAE8oM,KAAK8O,GAAIvqN,EAAEkS,EAAElS,EAAEs7K,GAAGppK,EAAE4oB,IAAI96B,EAAEywQ,GAAGv+P,EAAE4oB,GAAG96B,EAAEi4O,OAAO/lO,EAAE,OAAU,GAAHnS,CAAI,CACtL,SAASgsL,IAAI/rL,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAsJ,OAAjJmS,GAAGlS,EAAEgU,GAAKhU,EAAEgU,IAAIub,EAAEo9N,GAAI3sP,EAAEgU,EAAEhU,GAAG,GAAGuvB,IAAMrd,IAAIqd,EAAEqpS,IAAI1mT,EAAElS,GAAG,GAAGuvB,IAAIA,EAAEmoN,IAAI13O,EAAEkS,EAAEqd,IAAqB,IAAJ,EAALvvB,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,MAAUjtN,EAAE,IAAIuyO,GAAItyO,EAAE,EAAE,EAAEkS,EAAEA,GAAIqd,EAAQA,EAAE+uM,GAAGv+N,GAAVwvB,EAAExvB,GAAkBwvB,CAAC,CACtL,SAASg1O,IAAGvkQ,EAAEkS,EAAEqd,EAAExvB,GAA+I,OAA5IkgO,GAAY,IAAR1wM,EAAEsiN,KAAQ,oDAAoD5R,GAAU,IAAJ,EAAF1wM,GAAQ,kDAAkDw0J,GAAG/jL,GAAG+jL,GAAG7xK,GAAU,IAAI6uP,GAAG/gQ,EAAEuvB,EAAExvB,EAAEmS,EAAE,CACvL,SAAS0tO,IAAG5/O,EAAEkS,GAAG8hO,GAAI9hO,EAAE,qCAAqCqyN,GAAIryN,GAAGlS,EAAE,sCAAyCA,EAAEhC,IAAe,MAALgC,EAAEqB,EAASrB,EAAEqB,EAAEk9K,GAAGC,GAAGwiJ,IAAG,GAAGntI,IAAI,GAAG,EAAE,CAAC3hL,IAAMlS,EAAEqB,EAAErB,EAAEqB,EAAEnD,QAAQgU,EAAE,CACvL,SAASk/T,IAAGpxU,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAqD,IAAnDO,EAAE4c,EAAErxB,OAAO48B,EAAE,EAAEv1B,GAAG,EAAE6M,EAAE6hR,GAAIj0R,EAAEyzD,OAAOvhD,IAAIutN,KAAMC,MAAUj8N,EAAE,EAAEA,EAAEkP,IAAIlP,GAAGzF,EAAEuxB,EAAE9rB,GAAGvF,QAAY48B,GAAGk4M,GAAI5gO,EAAE6hR,GAAI1kQ,EAAE9rB,GAAGi8N,QAAOn6N,EAAE9B,EAAEq3B,EAAE98B,GAAoB,OAAjBuH,GAAG,IAAIxF,EAAE,GAAGmS,EAAE4oB,GAAUv1B,CAAC,CAGvL,SAAS8rU,IAAIrxU,EAAEkS,EAAEqd,GAAGsyQ,IAAItyQ,EAAE,YAAY,GAAGvvB,EAAEkS,EAAEA,EAAE4oB,EAAKmnJ,GAAIk6B,GAAG5T,IAAIr2L,GAAGw4R,KAAMC,SAAS3qS,EAAEuvB,EAAE,IAAImqH,GAAI06G,GAAIp0P,EAAE,OAAWA,EAAEuvB,EAAE,IAAImqH,GAAI15I,EAAEA,GAAE,EAAMsxU,IAAItxU,EAAEkS,EAAE4oB,GAAGitK,GAAI71L,EAAE04R,KAAKl9E,OAAM1tN,EAAEA,IAAeuiS,IAAIhzQ,EAAE,CAGvL,SAAS6hM,IAAIpxN,GAAG,IAAIkS,EAAEqd,EAAE,OAAGvvB,GAAG2nN,KAAKz1M,EAAEuzS,KAAKzlT,EAAE2nN,KAAK,GAAG,MAAMlrB,IAAIltK,EAAE,OAAOvvB,EAAE2nN,IAAI,MAAMlrB,IAAWh5F,OAAOgjH,aAAav0M,GAAI,GAAGuxF,OAAOgjH,aAAal3L,IAAgBk0E,OAAOgjH,aAAazmN,EAAEy8L,IAAK,CAExL,SAAS80I,IAAIvxU,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAA2B,IAAzBq3B,EAAE02S,IAAIxxU,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG9B,GAAE,GAAaq3B,GAAG22S,IAAIzxU,EAAEuF,GAAE,GAAM9B,GAAE,EAAKq3B,EAAE02S,IAAIxxU,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG9B,GAAGguU,IAAIzxU,EAAEuF,GAAE,GAA+B,IAAxBoN,EAAEkgS,GAAIttS,IAAQgqB,EAAErxB,SAAa8B,EAAED,GAAGC,EAAED,EAAEg4F,GAAGplF,GAAG4+T,IAAIvxU,EAAEuF,EAAEgqB,EAAExvB,EAAE4S,GAAG,CACxL,SAASypR,MAAMA,IAAI1nJ,EAAI2nJ,IAAI,IAAI9mF,GAAIu0E,IAAI,GAAGwS,IAAI,IAAI/mF,GAAI,WAAW,GAAGgnF,IAAI,IAAIhnF,GAAI,aAAa,GAAGinF,IAAI,IAAIjnF,GAAI,cAAc,GAAGknF,IAAI,IAAIlnF,GAAI,iBAAiB,GAAGmnF,IAAI,IAAInnF,GAAI,aAAa,EAAE,CAExL,SAASm8H,IAAI1xU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAmC,IAAjC8gK,GAAI3uJ,GAAGnS,EAAEC,EAAEkS,EAAEqd,EAAErxB,OAAO63K,GAAI/1K,EAAEkS,EAAEA,GAASnS,EAAE,GAAE,CAAiB,GAAhBwvB,EAAExvB,EAAEA,GAAGA,EAAE,GAAG,EAAE,EAAKC,EAAEA,EAAEk5S,GAAG7xG,GAAIrnM,EAAEkS,EAAEnS,GAAGmS,IAAI,EAAgB,OAAbkiO,GAAIp0O,EAAEkS,EAAEqd,EAAErd,IAAU,EAAKkiO,GAAIp0O,EAAEkS,EAAEqd,EAAE83K,GAAIrnM,EAAEkS,EAAEnS,GAAG,CAAc,OAAbq0O,GAAIp0O,EAAEkS,EAAEnS,EAAEmS,IAAU,CAAI,CACzL,SAASy2T,IAAI3oU,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAM,GAAJv1B,EAAE,EAAMgqB,EAAkEhqB,EAAEy4S,GAAIh+S,EAAEA,EAAEuvB,EAAE5c,GAAGT,EAAES,GAAG5S,QAAnF,IAAI+6B,EAAE,EAAEA,EAAEo1O,IAAIp1O,IAAKv1B,EAAE0tI,EAAK3/H,KAAKugB,IAAItuB,EAAEy4S,GAAIh+S,EAAEA,EAAE86B,GAAG5oB,EAAES,GAAG5S,IAAmF,OAAlDmS,IAAIshQ,KAAMG,MAAQ3zQ,EAAEkS,IAAI3M,EAAE0tI,EAAK3/H,KAAKugB,IAAItuB,EAAEvF,EAAEkS,EAAElS,IAAWuF,CAAC,CACzL,SAASggP,IAAIvlP,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAEu1B,EAAEnoB,EAAElP,EAAc,OAAZ8B,EAAEvF,EAAEhC,EAAE88B,EAAE5oB,EAAElU,KAAMuH,IAAIu1B,KAAmBv1B,EAAEvH,GAAG88B,EAAE98B,GAAGuH,EAAEvH,IAAIyhL,MAAMC,MAAMn6K,EAAEvH,IAAIyhL,MAAMG,OAA2BrwJ,GAAR5c,EAAEpN,EAAEoN,EAAE3S,GAAMuF,EAAE6M,EAAEpS,EAA2B2S,IAAzBlP,EAAEq3B,EAAEnoB,EAAE3S,GAAM86B,EAAE1oB,EAAEpS,GAAeuvB,GAAG9rB,GAAC,CACzL,SAASskO,IAAI/nO,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAgI,GAA9HA,GAAE,EAAS41M,GAAGp7M,KAAIwF,GAAE,EAAKizM,GAAItmM,EAAEqd,EAAEu0J,GAAG/jL,KAAQwF,GAAMy1M,GAAGj7M,KAAIwF,GAAE,EAAKwiO,IAAI/nO,EAAEkS,EAAEqd,EAAExvB,IAAQwF,GAAMskL,GAAG9pL,EAAE,OAAMwF,GAAE,EAAKqiO,GAAI11N,EAAEqd,EAAEouJ,GAAG59K,EAAE,QAAWwF,EAAG,MAAM2tK,GAAI,IAAIkO,GAAImrJ,KAAM,CAGzL,SAASh8E,IAAGvwP,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAoB,GAAlB+lI,GAAI3uJ,IAAG4oB,EAAE96B,EAAEA,EAAEi/K,MAAU/sK,EAAE+sK,KAAM,IAAI1vJ,EAAEvvB,EAAEA,EAAE2hP,KAAKhmC,KAAKpsL,EAAEgsL,MAAOx7M,EAAEwvB,EAAEksL,KAAKvpM,EAAE+tL,GAAGlgM,IAAIwvB,EAAEw0J,UAAW,IAAIx+K,EAAE2M,EAAEypM,KAAKp2M,EAAEg2M,MAAOx7M,EAAEwF,EAAEk2M,KAAKz7M,EAAEA,EAAE0oN,GAAG3oN,GAAU,OAAO+6B,GAAG96B,EAAEA,EAAEi/K,IAAI,CAC1L,SAAS0yJ,IAAI3xU,GAAG,IAAIkS,EAAEqd,EAA2D,OAAzDA,EAAE02L,GAAIyvC,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC7zL,EAAEhC,EAAE4B,EAAEI,EAAEJ,EAAEI,EAAEA,MAAMkS,EAAElS,EAAEhC,EAAE+B,EAASC,EAAEoS,EAAEO,GAAG,KAAK,EAAE4c,EAAErd,GAAGA,EAAEnS,EAAE,MAAM,KAAK,EAAEwvB,EAAEvvB,GAAGkS,EAAEqd,EAAE,MAAM,KAAK,EAAEA,EAAErd,GAAGA,EAAElS,EAAE,MAAM,KAAK,EAAEuvB,EAAEvvB,GAAGkS,EAAEA,EAAG,OAAOqd,CAAC,CAC1L,SAASqiT,IAAI5xU,GAAG,IAAIkS,EAA4D,IAAvDypJ,KAAHzpJ,EAASyrK,GAAGwtC,GAAG,IAAI2jB,GAAG7hB,GAAGi1E,GAAIliS,GAAGA,EAAE27M,KAAK,IAAIpoE,KAAM,IAAIhkH,EAAEvxB,EAASkU,EAAE7Q,IAAI49P,MAAMg4B,MAAMlvF,GAAI71L,GAAG81L,MAAM6pI,MAAMnkH,MAAM,IAAOx7M,EAAEyrK,GAAGwtC,GAAG,IAAI2jB,GAAG7hB,GAAGi1E,GAAIhwR,GAAGlS,EAAE27M,KAAK,IAAIpoE,KAAM,IAAIhkH,EAAEvxB,CAAE,CAC1L,SAASyxT,IAAIzvT,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAe,IAAIA,EAAbm0R,GAAI50R,EAAEnS,GAAW47M,KAAKhpM,EAAE4oM,MAAOh2M,EAAEo4K,GAAGhrK,EAAE8oM,KAAK,IAAIz7M,EAAED,EAAEwF,EAAEnC,GAAGpD,EAAED,EAAEwF,EAAEnC,GAAGpD,EAAEuvB,EAAEA,EAAEnsB,GAAc,IAAI03B,EAAbgsQ,GAAIv3Q,EAAExvB,GAAW47M,KAAK7gL,EAAEygL,MAAOh2M,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,IAAIz7M,EAAED,EAAEwF,EAAEnC,GAAGpD,EAAED,EAAEwF,EAAEnC,GAAGpD,EAAEuvB,EAAErd,EAAE9O,EAAG,CAC1L,SAAS+hT,IAAInlT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAE,IAAIA,EAAE,IAAIw5K,KAAM/+K,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAI/M,IAAGvtL,EAAE,GAAG,KAAKA,EAAEA,IAAIuF,EAAEA,GAAGA,EAAEvH,EAAEihL,MAAuBijC,GAAhBniN,EAAE49K,GAAGwB,IAAI55K,GAAG,IAAUxF,EAAE/B,EAAEkU,EAAEnS,EAAEqS,EAAEmd,GAAGgpL,KAAMv4M,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAIooL,GAAIzM,IAAG7tL,EAAE,GAAG,IAAIA,EAAEkS,GAAG,IAAImkM,GAAInkM,EAAEqd,GAAG,CAG1L,SAASwxN,IAAI/gP,EAAEkS,GAA8B23K,GAAnBS,IAAKZ,KAAMC,KAAK3pL,GAAQ,KAAKkvL,GAAIvF,IAAI3pL,EAAE,IAAI85M,GAAIx1M,KAAK4N,IAAIg9K,GAAIvF,IAAI3pL,EAAEsE,MAAM2mP,IAAI3mP,KAAK4N,GAAMA,IAAIk9K,KAAMC,MAAM/qL,KAAK61J,GAAGwjB,GAAGr5K,KAAK,MAAMq5K,GAAGzrK,EAAE,OAAW5N,KAAK61J,IAAI4/E,KAAMC,IAAK,CAE3L,SAAS83F,MAAMA,IAAIp9L,EAAIq9L,IAAIxzJ,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,QAAQm+I,IAAIzzJ,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,MAAM,MAAM,MAAM,MAAMo+I,IAAI,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,OAAO,CAC5L,SAAS5e,IAAIrzT,GAAG,IAAIkS,EAAEqd,GAAIrd,EAAEmqN,UAAWnqN,EAAGggU,KAAK,KAAK,IAAIr7L,MAAkBgsD,KAAW,IAAsDg8C,GAA3DtvN,EAAK,KAAOs7K,IAAI,QAAe,OAAkC7qM,EAAEA,GAAKA,EAAEkS,GAAGigU,IAAIjgU,EAAEqd,EAAEvvB,EAAEkS,EAAE,eAAc,GAAK,CAC5L,SAASq2L,IAAIvoM,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAqC,OAA/BC,EAAEgU,IAAIhU,EAAEgU,EAAE,IAAIw+J,IAAuB,OAAzCzyK,EAAuB23M,GAAI13M,EAAEgU,EAAE9B,IAAuBnS,GAAW8pL,GAATt6J,EAAErd,EAAEkgU,KAAU,KAAQ,MAAH7iT,IAAUvvB,EAAEgU,IAAIhU,EAAEgU,EAAE,IAAIw+J,IAAK6+F,GAAIrxQ,EAAEgU,EAAE9B,MAAMlS,EAAEgU,IAAIhU,EAAEgU,EAAE,IAAIw+J,IAAKmkB,GAAI32L,EAAEgU,EAAE9B,EAAEqd,KAAcA,EAAC,CAC5L,SAAS0jO,MAAMA,IAAIv+G,EAAIyrI,IAAI,IAAI3wE,GAAI,oBAAoB,GAAG8iF,IAAI,IAAI9iF,GAAI,cAAc,GAAG+iF,IAAI,IAAI/iF,GAAI,mBAAmB,GAAGgjF,IAAI,IAAIhjF,GAAI,oBAAoB,GAAG0jD,IAAI,IAAI1jD,GAAI,kBAAkB,EAAE,CAC5L,SAAS6iI,IAAIryU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAI+6B,EAAEnoB,EAAiB,IAAI5S,GAAd,GAAHmS,EAAKwsS,IAAID,KAAYz+S,EAAE2hP,KAAKhmC,KAAK57M,EAAEw7M,MAAwB,IAAjBhsL,EAAEouJ,GAAG59K,EAAE07M,KAAK,KAAS9oM,EAAEgrK,GAAG0iB,GAAGrgM,EAAE86B,EAAEvL,EAAEA,GAAG,IAAIosL,KAAKhpM,EAAE4oM,MAAOzgL,EAAE6iJ,GAAGhrK,EAAE8oM,KAAK,IAAIqU,GAAI9vN,EAAEkS,EAAEA,EAAE4oB,EAAE5oB,GAAG49M,GAAI9vN,EAAEkS,EAAElS,EAAE29K,GAAG7iJ,EAAE5oB,EAAE,IAAInS,EAAI,CAC5L,SAASuyU,IAAItyU,EAAEkS,GAAS,IAAIqd,EAAE,GAAZ8+P,KAAeruR,EAAEuvB,GAAGrd,EAAEqd,EAAE,CAAC,GAAGvvB,EAAEkS,GAAGA,EAAEA,GAvkCrD,SAAalS,EAAEkS,GAAS,OAANyxQ,KAAa3jR,GAAG6jR,KAAK3xQ,GAAG4xQ,KAAK9jR,GAAG8jR,KAAK5xQ,GAAG2xQ,KAAK7jR,GAAGgkR,KAAK9xQ,GAAG6xQ,KAAK/jR,GAAG+jR,KAAK7xQ,GAAG8xQ,GAAG,CAukCrCuuD,CAAIvyU,EAAEkS,EAAEA,EAAEA,GAAG,CAAiB,GAAhBqd,EAvlGtE,SAAavvB,GAAG,OAAOA,GAAG6jR,KAAK7jR,GAAG8jR,GAAG,CAulGmC0uD,CAAIxyU,EAAEkS,GAAG,GAAG,EAAKlS,EAAEA,IAAIkS,EAAElS,EAAG,OAAOuvB,EAAO,IAAIvvB,EAAEA,GAAGkS,EAAElS,EAAG,OAAQuvB,CAAE,CAAC,OAAOswL,GAAI7/M,EAAEkS,EAAES,EAAET,EAAEA,EAAES,EAAE,CAAM,OAAOy9N,GAAIpwO,EAAEuvB,EAAErd,EAAEqd,EAAG,CAE5L,SAASkjT,IAAIzyU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAI,GAAG2yU,IAAI1yU,EAAEkS,GAAI,OAAO,EAAK,IAAInS,EAAE,IAAI4lK,GAAIzzJ,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAQ,CAA0B,GAAGq+T,IAAIv8T,EAAhCuvB,EAAEouJ,GAAGC,GAAI79K,GAAG,IAAMuqO,IAAI/6M,IAAkB,OAAO,EAAK,GAAG0vR,GAAIj/S,EAAEuvB,GAAGvvB,EAAE2S,GAAG3S,EAAEA,EAAG,OAAO,CAAK,CAAC,OAAO,CAAK,CAC5L,SAASy+J,MAAMA,IAAI/pB,EAASiqB,MAALg0K,IAAW5V,IAAK6V,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAI,IAAIzvH,GAAI,GAAG0vH,IAAI,IAAI3vH,IAAK3jD,MAAMq8I,KAAKg3B,KAAKE,IAAI,IAAI5vH,GAAI0qG,IAAI,GAAGmlB,IAAIrW,IAAIsW,IAAIC,IAAIC,IAAIC,IAAIC,IAAI,IAAIlwH,GAAI85G,KAAK9vG,MAAM,GAAO,CAC5L,SAAS7tD,MAAMA,IAAInrB,EAAIm/L,IAAI,IAAIlwH,GAAI,IAAImwH,IAAI,IAAIpwH,IAAK3jD,MAAMq8I,KAAKy3B,KAAKE,IAAI,IAAIrwH,GAAI0qG,IAAI,IAAI4lB,IAAI,IAAItwH,GAAIuwH,IAAIj8H,GAAI,IAAIk8H,IAAIC,IAAIC,IAAI13B,IAAI23B,IAAIhyD,IAAIiyD,IAAI,IAAI5wH,GAAI8qG,IAAI+lB,KAAKC,IAAItO,IAAIuO,IAAI73B,IAAI83B,IAAIC,IAAIC,IAAIC,GAAG,CAC5L,SAAS92H,IAAI/9M,GAAG,GAA0C,KAArCA,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,GAAGlU,GAA6C,KAArCgC,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,GAAGvxB,EAAM,MAAMk1K,GAAI,IAAI2O,GAAIizJ,MAAM,OAAO9pH,IAAIrtC,GAAG0O,KAAMrsL,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,GAAG,GAAG,IAAI,CAC5L,SAAS6iU,IAAI/0U,GAAG,GAA0C,KAArCA,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,GAAGlU,GAA6C,KAArCgC,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,GAAGvxB,EAAM,MAAMk1K,GAAI,IAAI2O,GAAIizJ,MAAM,OAAOpjC,GAAI/zH,GAAG0O,KAAMrsL,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,GAAG,GAAG,IAAI,CAC5L,SAAS8iU,IAAIh1U,GAAG,GAA0C,KAArCA,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,GAAGlU,GAA6C,KAArCgC,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,GAAGvxB,EAAM,MAAMk1K,GAAI,IAAI2O,GAAIizJ,MAAM,OAAOpjC,GAAI/zH,GAAG0O,KAAMrsL,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,GAAG,GAAG,IAAI,CAC5L,SAASyuL,IAAIh+M,GAAG,GAA0C,KAArCA,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,GAAGlU,GAA6C,KAArCgC,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,GAAGvxB,EAAM,MAAMk1K,GAAI,IAAI2O,GAAIizJ,MAAM,OAAO9pH,IAAIrtC,GAAG0O,KAAMrsL,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,GAAG,GAAG,IAAI,CAC5L,SAAS0lT,IAAIj1U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAiB,KAAb96B,EAAEoS,EAAcF,IAAZ3M,EAAEvF,EAAEg4O,OAAc9lO,EAAE,EAAE,MAAMghK,GAAI,IAAIgO,GAAIg0J,IAAIhjU,EAAE8oN,IAAIz1N,IAAI,GAAGgqB,GAAGhqB,GAAGgqB,EAAE,EAAE,MAAM2jJ,GAAI,IAAIgO,GAAIi0J,IAAI5lT,EAAEyrM,IAAIz1N,IAAiD,OAA7C2M,GAAGqd,GAAMuL,EAAE96B,EAAEwnO,GAAGj4M,GAAGvvB,EAAEw4N,GAAGtmN,EAAE4oB,GAApB/6B,EAAuB+6B,GAAK/6B,EAAEC,EAAEo1U,GAAG7lT,GAAWxvB,CAAC,CAC5L,SAASs1U,IAAIr1U,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAM,GAAJA,EAAEC,EAAKA,EAAO,IAAJkS,EAAE,EAAMqd,EAAEvvB,EAAEoqT,KAAK76R,EAAEA,EAAEA,EAAE66R,KAAK,CAAC,KAAKl4S,EAAE0+S,IAAK,OAAOykB,IAAI9lT,GAAO,GAAJxvB,EAAEwvB,EAAKA,GAAGvvB,EAAG,MAAMkzK,GAAI,IAAI4O,GAAI,oDAAoD9hL,GAAI,CAAE,OAAOD,CAAC,CAC5L,SAAS64M,IAAG54M,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAyB,IAAvBA,EAAE,IAAIkuS,GAAIjqH,IAAI,IAAI,KAASz0J,EAAEvvB,EAAE27M,KAAKpsL,EAAEgsL,MAAgB01D,GAAIlxQ,EAAEg7M,GAAf7oM,EAAEqd,EAAEksL,QAAmBV,GAAG/6M,GAAG,oBAAuB,MAAHkS,EAAQ6lL,IAAI02B,GAAIv8M,IAAI,OAAQnS,EAAEC,EAAkB,GAAZD,EAAEwF,EAAErH,OAAU6B,EAAEC,EAAEA,EAAED,EAAEC,EAAEA,EAAG,GAAGD,EAAEwF,EAApCxF,EAAEwvB,CAAoC,CAC7L,SAASmjT,IAAI1yU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAU,GAARA,GAAE,EAASmS,EAAE+sK,KAAK,EAAG,OAAO,EAAM,IAAI1vJ,EAAE,EAAEA,EAAErd,EAAE+sK,KAAK1vJ,IAAKA,EAAErd,EAAE+sK,KAAK,EAAGl/K,GAAIw8T,IAAIv8T,EAAE29K,GAAGzrK,EAAEmpM,GAAG9rL,GAAG,IAAIouJ,GAAGzrK,EAAEmpM,GAAG9rL,EAAE,GAAG,KAAOxvB,GAAIw8T,IAAIv8T,EAAE29K,GAAGzrK,EAAEmpM,GAAG9rL,GAAG,IAAIouJ,GAAGzrK,EAAEmpM,GAAG,GAAG,KAAM,OAAOt7M,CAAC,CAC7L,SAASu1U,IAAIt1U,EAAEkS,GAAG,IAAIqd,EAAKrd,GAAGlS,EAAEA,GAAGuvB,EAAE,KAAOvvB,EAAEA,IAAIuvB,EAAEouJ,GAAG39K,EAAEA,EAAE,IAAIw9H,GAAGx9H,EAAE,EAAE86O,IAAGvrN,IAAMrd,IAAIqd,EAAEouJ,GAAGzrK,EAAE,IAAIqjU,GAAGv1U,EAAE,EAAE86O,IAAGvrN,KAAIA,EAAEkxR,GAAIzgT,EAAEkS,EAAEqd,KAAQA,EAAEy8J,MAAoB,IAAJ,EAALhsL,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEkS,EAAEA,GAAG,CAC7L,SAASs1O,IAAIxnP,EAAEkS,GAAG,IAAIqd,EAAKrd,GAAGlS,EAAEuF,GAAKvF,EAAEuF,GAAG0tQ,GAAI/yB,GAAIlgP,EAAEuF,GAAGvF,GAAKkS,KAAKA,EAAEA,IAAIA,EAAEA,EAAE,IAAIy/J,GAAI,IAAI+I,KAAMogD,GAAI5oN,EAAEA,EAAElS,IAAIuvB,EA5MzG,SAAavvB,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAkI,OAAhIA,EAAEvF,EAAEuF,EAAEvF,EAAEuF,EAAE2M,EAAe,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,MAAUjtN,EAAE,IAAIuyO,GAAItyO,EAAE,EAAE,EAAEuF,EAAE2M,GAAIqd,EAAQA,EAAE+uM,GAAGv+N,GAAVwvB,EAAExvB,GAAWwF,GAAG2M,IAAOqd,EAAEgvN,IAAIv+O,EAATkS,EAAWsjU,IAAIx1U,EAAEkS,GAAgBlS,EAAEA,EAAfuvB,IAA6BA,CAAC,CA4MzDkmT,CAAIz1U,EAAEkS,EAAE,MAAQqd,GAAGA,EAAEy8J,MAAoB,IAAJ,EAALhsL,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEkS,EAAEA,GAAG,CAC7L,SAASwjU,IAAI11U,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAiB,IAAfwvB,EAAEvvB,EAAE9B,OAAO6B,EAAE,EAAQA,EAAEwvB,IAAIqoK,GAAI73L,EAAEC,EAAE9B,QAAQ8B,EAAEqf,WAAWtf,IAAI,OAAOA,EAAM,IAAJmS,EAAEqd,EAAQrd,EAAEnS,IAAI63L,GAAI1lL,EAAE,EAAElS,EAAE9B,QAAQ8B,EAAEqf,WAAWnN,EAAE,IAAI,OAAOA,EAAE,OAAOnS,EAAE,GAAGmS,EAAEqd,EAAEvvB,EAAEyzD,OAAO1zD,EAAEmS,EAAEnS,GAAGC,CAAC,CAC9L,SAAS2wU,IAAI3wU,EAAEkS,GAAG,IAAIqd,EAAEA,EAAErd,EAAEhS,EAAK29K,GAAI79K,EAAE86B,IAAI96B,EAAEoS,EAAEpS,EAAEizI,EAAK3/H,KAAKugB,IAAI7zB,EAAEoS,EAAEpS,EAAEuvB,EAAEvvB,GAAGA,EAAEoS,EAAEF,GAAGqd,EAAErd,EAAElS,EAAED,EAAEwvB,EAAErxB,OAAO,IAAI8B,EAAEoS,EAAEF,GAAGlS,EAAEuF,KAAQvF,EAAEoS,EAAEpS,GAAGuvB,EAAEvvB,EAAEA,EAAEoS,EAAEF,EAAE+gI,EAAK3/H,KAAKugB,IAAI7zB,EAAEoS,EAAEF,EAAEqd,EAAErd,GAAGlS,EAAED,EAAEwvB,EAAErxB,OAAO,IAAI8B,EAAEoS,EAAEpS,GAAGA,EAAEuF,GAAG,CAC9L,SAASk3J,MAAMA,IAAI/nB,EAAIihM,IAAIp3J,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,EAAE/mE,MAAMM,KAAKL,IAAImnB,MAAM+uI,IAAIr3J,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC9mE,IAAImnB,IAAIjnB,MAAMi2J,IAAIt3J,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC3/C,IAAIjnB,IAAIG,MAAM+1J,IAAIv3J,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC5mE,IAAIG,IAAIL,KAAK,CAC9L,SAASqnE,IAAI/mP,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAIoN,EAAElP,EAAEzF,EAAIqD,EAAkB,GAAhBsR,EAAE3S,EAAEuvB,EAAExvB,EAAE0D,EAAEzD,EAAED,EAAEA,EAAK4S,EAAEP,GAAG3O,EAAE2O,EAA6B,IAAnB/Q,EAAErB,EAAEkS,EAAE3M,EAAEoN,EAAEP,EAAEpU,EAAE,KAAWuH,GAAG9B,EAAE2O,GAAGpU,EAAK,GAAHkU,EAAK+jR,GAAI1wR,GAAG0+S,GAAI1+S,GAA2CqgO,GAAI7lO,EAAE8/K,GAA5Cm0I,IAAIzuT,EAAElE,EAAEtB,EAAEwF,EAAEoN,GAAG4c,GAAKykS,IAAIh2T,EAAEqD,EAAEtB,EAAE/B,EAAE2U,GAAG4c,KAAmBhqB,EAAEvH,CAAE,CAC9L,SAAS+3U,IAAI/1U,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAkJ,OAAjIyF,EAAEk6K,IAAjBhrK,EAAE48S,IAAIvvT,EAAEA,EAAEkS,EAAEqd,IAAUvvB,EAAE,IAAIA,EAAE86B,EAAE6iJ,GAAGhrK,EAAET,EAAE,IAAIlS,EAAKD,IAAG/B,EAAE2/K,GAAG4qB,IAAIr2L,GAAG81L,MAAM2qE,MAAM,IAAIptQ,EAAEo4K,GAAG4qB,IAAIh5K,EAAEojP,KAAK,IAAS30Q,GAAKuH,IAAGmgQ,GAAI1lQ,EAAEkS,EAAElU,EAAEuH,GAAG9B,GAAGzD,EAAEkS,EAAElU,EAAE88B,GAAG96B,EAAEkS,EAAE3M,IAAU9B,EAAEq3B,CAAC,CAC9L,SAASopQ,IAAIlkS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAIr3B,EAAEzF,EAAEoU,EAA+B,IAA7B9N,KAAKtE,EAAEkyO,IAAIlyO,GAAGsE,KAAK4N,EAAE,IAAIogK,GAAYvyK,EAAE,EAAEwF,GAARgqB,EAAEvvB,GAAU9B,OAAO6B,EAAEwF,IAAIxF,EAAkC,IAA/BmS,EAAEqd,EAAExvB,GAAG+6B,EAAE,IAAIw3I,GAAIyD,GAAIzxK,KAAK4N,EAAE4oB,GAAW98B,EAAE,EAAEoU,GAAR3O,EAAEyO,GAAUhU,OAAOF,EAAEoU,IAAIpU,EAAU+3K,GAAIj7I,EAAE,IAAIkkM,GAAfv7N,EAAEzF,GAAmBoU,GAAK,CAC9L,SAASiwT,IAAIriU,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAA0J,OAAxJA,EAAE,EAAE/6B,EAAEwvB,EAAErd,GAAMA,EAAEqd,EAAErxB,OAAO,IAAGqH,EAAEgqB,EAAErd,EAAE,GAAMlS,EAAEkS,EAAEA,IAAI4oB,EAgsC9E,SAAa96B,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAEC,EAAEC,EAAEz7F,EAAE27F,EAAED,EAAErjJ,EAAEujJ,EAAEltJ,EAAElY,EAAEomK,EAAExvJ,EAAErd,EAAEsnB,EAAE3jB,EAAEmoK,EAAE1oJ,EAAEhjB,EAAE8vE,EAAEH,EAAEC,EAAE+7F,EAAE5jK,EAAE6jK,EAAG59J,EAAGsf,EAAGu+I,EAAGC,GAAGZ,GAAGa,GAAGC,GAAGC,GAAGC,GAAGC,GAAGC,GAAQ,IAAL9+I,EAAG,EAAUpF,EAAE,EAAE7hB,GAARwpE,EAAE1jF,GAAUhU,OAAO+vC,EAAE7hB,IAAI6hB,EAAU,IAAIloB,EAAE,IAAI4/I,IAAjByrB,EAAEx7F,EAAE3nD,IAAmB77B,GAAG2T,EAAE/lB,EAAE+lB,EAAEwJ,EAAEA,EAAErxB,QAAQ,CAAqB,IAAJw3F,EAAE,EAAMjyF,EAAE,IAAIkiK,IAA9B58H,EAAE40I,GAAGC,GAAI73J,GAAG,KAAwBpT,GAAGlP,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAASyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,IAAI2tL,EAAE7hK,GAAG5c,EAAE5S,EAAE/B,EAAEuxB,KAAKmmE,EAAEA,EAAE,IAAI11F,EAAEA,EAAE+oC,EAAE3lC,GAAGiwC,IAAK,CAAO,IAAL0+I,GAAG,EAAUP,EAAE,EAAEgB,GAARjB,EAAEhiK,GAAUrxB,OAAOszL,EAAEgB,IAAIhB,EAAE,CAAY,IAAJxuJ,EAAE,EAAMjd,EAAE,IAAI4/I,IAArByrB,EAAEG,EAAEC,IAAuBp/K,GAAG2T,EAAE/lB,EAAE+lB,EAAEwJ,EAAEA,EAAErxB,SAAS6qC,EAAE40I,GAAGC,GAAI73J,GAAG,KAAS3T,IAAIqtK,MAAMM,MAAM,IAAIt8K,EAAE,IAAIkiK,GAAI58H,EAAExjC,GAAG9B,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAyB,GAAhByU,EAAEgrK,GAAGC,GAAIn6K,GAAG,IAAO2tL,EAAE7hK,GAAG5c,EAAE4c,EAAEvxB,EAAEuxB,EAAE,GAAGyT,EAAE,KAAK,CAA+C,IAAhCiK,EAAE,EAAE0oD,EAAE,IAAI4zH,GAAIn4B,EAAEh/K,EAAEg/K,EAAEh/K,EAAEmd,EAAErxB,QAAcy3F,EAAEzjF,EAAE,GAAE,CAA6C,IAAzCo3M,GAAI3zH,EAAEzjF,EAAE,GAA6BwjF,EAAE,EAAMjyF,EAAE,IAAIkiK,IAAtD58H,EAAc40I,GAAGhoF,EAAE31F,EAAEq7M,GAAG1lH,EAAEpmE,IAAIomE,EAAEzjF,GAAG,KAAyB3M,GAAG9B,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAASyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,IAAI2tL,EAAE7hK,GAAG5c,EAAE4c,EAAEvxB,EAAEuxB,KAAKmmE,EAAKA,EAAE,IAAM3sD,EAAE32B,IAAIqtK,MAAMM,MAAM//K,EAAEA,EAAE+oC,EAAE3lC,GAAG2uL,KAAKA,KAAQ/xL,EAAEA,EAAE+oC,EAAE3lC,GAAG2uL,GAAG/uJ,EAAEiK,IAAIA,GAAG,CAAC8kJ,IAAI9kJ,CAAC,CAAqB,IAApB4oD,EAAE,IAAI28E,GAAItyK,EAAE,IAAIqgN,GAAYjvB,EAAE,EAAEhtJ,GAAR+sJ,EAAEn/K,GAAUhU,OAAOozL,EAAEhtJ,IAAIgtJ,EAAU,IAAIL,GAAG,IAAItrB,IAAlByrB,EAAEC,EAAEC,IAAoBl/K,GAAG6+K,GAAGjxL,EAAEixL,GAAG1hK,EAAEA,EAAErxB,QAA2B,IAAIuF,EAAE,IAAIkiK,IAA5BksB,GAAGlU,GAAGC,GAAIqT,IAAI,KAAqBt+K,GAAGlP,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAgC,GAAP+zL,IAAhBt/K,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAAS1D,EAAKqxL,EAAE7hK,GAAG0iK,GAAGj0L,EAAEuxB,EAAyD,GAAtDqiK,EAAGjU,GAAGk9B,GAAGq4B,GAAIr9I,EAAE/6D,EAAE+2J,KAAK,KAAKG,GAAGrU,GAAGk9B,GAAGq4B,GAAIr9I,EAAE/6D,EAAEm3J,KAAK,KAASL,GAAKI,GAA8F,GAAIJ,EAAiD,GAAII,GAAiD,GAAGJ,GAAII,GAAIjc,GAAI6b,EAAG5xL,EAAE2S,OAAO,CAAa,IAAZojK,GAAI6b,EAAG5xL,EAAE2S,GAAO8+K,EAAE,IAAI9rB,GAAIqsB,GAAGjyL,GAAG0xL,EAAEzxL,EAAEyxL,EAAEliK,EAAEA,EAAErxB,QAASorB,EAAEq0J,GAAGC,GAAI6T,GAAG,IAAIovD,IAAIhrJ,EAAE/6D,EAAExR,EAAEsoK,GAAIg3D,GAAIh3D,EAAG5xL,EAAEgyL,GAAGhyL,GAAG4oP,GAAIh3D,EAAG7xL,EAAEiyL,GAAGjyL,GAAGG,EAAEF,EAAE0oN,GAAG12B,GAAS,MAAxMjc,GAAI6b,EAAG5xL,EAAE2S,GAAGojK,GAAI6b,EAAG7xL,EAAEkyL,IAAI4uD,IAAIhrJ,EAAE/6D,EAAEm3J,GAAGL,QAAzF7b,GAAIic,GAAGhyL,EAAE2S,GAAGojK,GAAIic,GAAGjyL,EAAE8xL,IAAIgvD,IAAIhrJ,EAAE/6D,EAAE+2J,GAAGG,SAAtIpyL,EAAE,IAAIu6N,GAAIj6N,EAAEF,EAAE65N,GAAGj6N,EAAEM,GAAG61K,GAAIn2K,EAAEI,EAAE2S,GAAGojK,GAAIn2K,EAAEG,EAAE8xL,IAAIgvD,IAAIhrJ,EAAE/6D,EAAE+2J,GAAGjyL,GAAGm2K,GAAIn2K,EAAEG,EAAEkyL,IAAI4uD,IAAIhrJ,EAAE/6D,EAAEm3J,GAAGryL,GAAmW,IAAjFwD,EAAEu6K,GAAGspF,IAAG/mQ,EAAE+9K,GAAG+3J,IAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,GAAG,IAAI91U,EAAEF,EAAEi/K,KAAK,EAAE,IAAI,MAAMkS,EAAEj/K,EAAE,GAAGqd,EAAEwE,EAAGxE,EAAE,GAAGA,EAAUzb,EAAE,EAAEd,GAAR3R,EAAE+B,GAAUlF,OAAO4V,EAAEd,IAAIc,EAAwB,KAArB1B,EAAE/Q,EAAEyS,IAAKvO,EAAE8tC,EAAGjhC,EAAE0oB,EAAEi3J,GAAOhsK,EAAE,IAAI4/I,GAAIvzJ,EAAErS,GAAGgmB,EAAE/lB,EAAE+lB,EAAEwJ,EAAEA,EAAErxB,QAAS6qC,EAAE40I,GAAGC,GAAI73J,GAAG,IAAI2rK,EAAE1xL,EAAEA,EAAE+oC,EAAE3lC,GAAM2lC,EAAE/qC,EAAEuxB,GAAG4hK,GAAGO,EAAEt/K,EAAE7M,IAAI6M,EAAE7M,EAAEmsL,GAAGA,EAAEt/K,EAAEF,IAAIE,EAAEF,EAAEw/K,IAAW3oJ,EAAE/qC,EAAEuxB,GAAGwE,IAAI29J,EAAEt/K,EAAE0oB,IAAI1oB,EAAE0oB,EAAE42J,GAAGA,EAAEt/K,EAAEmd,IAAInd,EAAEmd,EAAEmiK,IAAqF,IAAhF4uB,GAAIl9M,EAAE,EAAEA,EAAElF,OAAO,MAAM4zL,GAAG7T,GAAGmV,IAAGsW,IAAI,GAAGtmM,EAAElF,OAAO,GAAG,GAAG6B,EAAEk+K,GAAGmV,IAAGsW,IAAI,GAAG3X,GAAG,EAAE,GAAG,GAAOr/K,EAAE,EAAEA,EAAEtP,EAAElF,OAAOwU,IAAKo/K,GAAGp/K,GAAGtP,EAAEsP,GAAGooB,EAAE/6B,EAAE+xL,GAAGp/K,IAAI,EAAM,IAAJooB,EAAE,EAAMjnB,EAAE,EAAEA,EAAE9T,EAAE7B,OAAO2V,IAAW,GAAN9T,EAAE8T,GAAO9T,EAAE8T,GAAGinB,IAAKA,EAAM,IAAJhN,EAAE,EAAM7Z,EAAE,EAAEA,EAAE69K,GAAG5zL,OAAO+V,IAAK69K,GAAG79K,IAAIlU,EAAE+xL,GAAG79K,IAAI6Z,EAAEmlH,EAAK3/H,KAAKugB,IAAI/F,EAAEgkK,GAAG79K,GAAG,GAAGjW,EAAE,EAAE,KAAMA,EAAE8vB,GAAG9vB,GAAG,EAA6C,IAA3Cm0L,GAAG,EAAEn0L,EAAE,EAAEA,GAAG,EAAEk0L,GAAGjU,GAAGmV,IAAGsW,IAAI,GAAGvX,GAAG,GAAG,GAAG5sL,EAAE,EAAMq/B,EAAE,EAAEA,EAAEktJ,GAAG5zL,OAAO0mC,IAAuB,MAANstJ,GAAZtoK,EAAEkoK,GAAGltJ,GAAG5mC,GAAgB4rB,EAAE,GAAGA,EAAE,EAAE,IAAIrkB,GAAG2sL,GAAGtoK,EAAE,MAAkBsoK,GAAdtoK,GAAGA,EAAE,GAAG,EAAE,GAA2C,IAAhCiZ,EAAEo7I,GAAGg4J,IAAG93J,IAAI,IAAa,EAAT/6K,EAAElF,OAAS,EAAE,GAAOmqB,EAAE,EAAEA,EAAEjlB,EAAElF,OAAOmqB,IAAKwa,EAAE,EAAExa,GAAG,IAAI07N,GAAI3gP,EAAEilB,GAAGjlB,EAAEilB,GAAG9iB,EAAEnC,EAAEilB,GAAGnW,GAAGg5P,KAAME,MAAMvoO,EAAE,EAAExa,EAAE,GAAG,IAAI07N,GAAI3gP,EAAEilB,GAAGjlB,EAAEilB,GAAGnW,EAAE9O,EAAEilB,GAAG9iB,EAAE8lQ,KAAgC,IAA3B/qD,GAAIz9K,EAAE,EAAEA,EAAE3kC,OAAO,MAAMynB,EAAE,EAAMxU,EAAE,EAAEA,EAAE0xB,EAAE3kC,OAAOiT,IAAK,OAAO0xB,EAAE1xB,GAAGpR,EAAE4S,GAAG,KAAK,IAAIgT,EAAE,MAAM,KAAK,EAAMpgB,KAAFogB,EAA0C,IAAjCgsK,EAAG1T,GAAGg4J,IAAG93J,IAAI,IAAa,EAAT/6K,EAAElF,OAAS,EAAE,GAAOqF,EAAE,EAAEA,EAAEH,EAAElF,OAAOqF,IAAKouL,EAAG,EAAEpuL,GAAG,IAAIwgP,GAAI3gP,EAAEG,GAAGH,EAAEG,GAAGu3B,EAAE13B,EAAEG,GAAGgsB,GAAG27O,KAAME,MAAMz5E,EAAG,EAAEpuL,EAAE,GAAG,IAAIwgP,GAAI3gP,EAAEG,GAAGH,EAAEG,GAAGgsB,EAAEnsB,EAAEG,GAAGu3B,EAAEuwO,KAAkC,IAA7B/qD,GAAI3uB,EAAG,EAAEA,EAAGzzL,OAAO,MAAMynB,EAAE,EAAM3R,EAAE,EAAEA,EAAE29K,EAAGzzL,OAAO8V,IAAK,OAAO29K,EAAG39K,GAAGjU,EAAE4S,GAAG,KAAK,IAAIgT,EAAE,MAAM,KAAK,EAAMpgB,KAAFogB,EAAS,OAAOpgB,CAAC,CAhsC1/E2wU,CAAIl2U,EAAED,EAAEA,EAAEwF,GAAGu1B,GAAG4jN,GAAI1+O,EAAEA,EAAED,GAAG0/K,MAAMC,MAAM5kJ,GAAG4jN,GAAI1+O,EAAEA,EAAEuF,EAAEq6K,MAAU9kJ,EAn8C9I,SAAa96B,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAuC,OAArCA,EAAE+wP,GAAI9wP,EAAEkS,EAAEqd,GAAGvvB,EAAEkS,EAAE,IAAI6+O,GAAIhxP,EAAEwvB,EAAErxB,QAAe4lU,IAAI9jU,EAAED,EAAE,CAm8CkEo2U,CAAIn2U,EAAEA,EAAED,EAAEwF,IAAIvF,EAAEuvB,EAAErd,KAAK4oB,GAAGs3O,GAAIpyQ,EAAEA,EAAED,IAAW+6B,CAAC,CAC9L,SAASs7S,IAAIp2U,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAS,IAAPA,EAAE,KAASyF,EAAE,IAAIkiK,GAAI5lK,GAAG0D,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAA0B,IAAjByU,EAAEgrK,GAAGC,GAAIn6K,GAAG,OAAW8rB,IAAkB,GAAf42K,GAAIxzL,EAAEpN,EAAEA,EAAE,GAAO,CAACvH,EAAE2U,EAAE,KAAK,CAAW0/O,GAATv3N,EAAE80O,GAAIrqQ,GAASgqB,EAAErd,GAAGkgP,GAAIt3N,EAAE98B,EAAEkU,GAAG0iR,IAAG50R,EAAEA,EAAEuF,EAAE,IAAI86N,GAAIvlM,EAAE5oB,EAAEqd,EAAEuL,GAAG,CAC/L,SAASk9Q,IAAIh4S,GAAG,KAAa,GAAPA,EAAE2S,EAAE4c,GAAa,GAAPvvB,EAAED,EAAEwvB,GAASwnM,GAAI/2N,EAAE2S,GAAG4c,EAAEwnM,GAAI/2N,EAAED,GAAGwvB,GAAGvvB,EAAEhC,GAAGgC,EAAE2S,EAAE4c,EAAEy+R,IAAIhuT,EAAED,IAAWg3N,GAAI/2N,EAAED,GAAGwvB,EAAEwnM,GAAI/2N,EAAE2S,GAAG4c,GAAGvvB,EAAEuF,GAAGvF,EAAED,EAAEwvB,EAAEy+R,IAAIhuT,EAAE2S,KAAQ3S,EAAEhC,GAAG+rO,GAAI/pO,EAAE2S,GAAG3S,EAAEuF,GAAGwkO,GAAI/pO,EAAED,GAAGiuT,IAAIhuT,EAAE2S,GAAGq7S,IAAIhuT,EAAED,GAAI,CAE/L,SAASs2U,IAAIr2U,EAAEkS,EAAEqd,EAAExvB,GAAGC,EAAEA,EAAED,EAAEkzI,EAAK3/H,KAAKsgB,IAAI1hB,EAAEqd,GAAGvvB,EAAEA,EAAEA,EAAEizI,EAAK3/H,KAAKugB,IAAI3hB,EAAEnS,GAAGC,EAAEA,EAAED,EAAKmS,EAAEqd,GAAGvvB,EAAEkS,EAAE,IAAKA,EAAEqd,GAAGvvB,EAAE2S,EAAE2jU,IAAIt2U,EAAEkS,EAAE,GAAIA,EAAElS,EAAE86B,EAAEw7S,IAAIt2U,EAAEkS,EAAE,GAAIqd,IAAOvvB,EAAEkS,EAAE,IAAKA,EAAEnS,GAAGC,EAAE2S,EAAE2jU,IAAIt2U,EAAEkS,EAAE,GAAInS,EAAEC,EAAE86B,EAAEw7S,IAAIt2U,EAAEkS,EAAE,GAAIA,EAAE,CAG/L,SAASqkU,IAAIv2U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEA,EAAE49K,GAAG4qB,IAAIr2L,GAAGmrJ,MAAMykI,MAAM,IAAI/5F,GAAI71L,GAAG81L,MAAMwuI,KAAKz2U,IAAGwvB,EAAErd,EAAE3M,KAAQm8L,GAAI,IAAI0oB,GAAI,KAAK,IAAI7c,GAAIh+K,EAAEvvB,EAAE,KAAK,IAAIsoK,GAAItoK,IAAI0hM,GAAIyrF,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAIh+K,EAAErd,EAAE,KAAK,IAAIwoI,IAAK,IAAI6tB,GAAIvoK,IAAI,CAChM,SAASurS,IAAIvrS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAE,GAAGu4K,GAAIH,GAAG4qB,IAAIvoM,EAAEkS,GAAGmrJ,MAAMsoJ,MAAM,MAAO,OAAO,EAAM,IAAJzzS,EAAE,EAAMnS,EAAE,IAAI4lK,GAAI3lK,EAAEA,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,SAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,KAASsB,IAAI49P,MAAMgF,OAAM1+P,EAAEgqB,EAAErvB,EAAEF,EAAEkS,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAE3M,IAAI,OAAO2M,CAAC,CAChM,SAASytP,IAAI3/P,GAAG,OAAO29K,GAAG4qB,IAAIvoM,GAAGq9J,MAAM0uI,MAAM,KAAKp5R,GAAG,KAAK,EAAEo1L,GAAI/nM,EAAE+rS,KAAKvb,KAAMK,MAAM,MAAM,KAAK,EAAE9oF,GAAI/nM,EAAE+rS,KAAKvb,KAAMM,MAAM,MAAM,KAAK,EAAE/oF,GAAI/nM,EAAE+rS,KAAKvb,KAAMG,MAAM,MAAM,KAAK,EAAE5oF,GAAI/nM,EAAE+rS,KAAKvb,KAAMI,MAAO,CAChM,SAASmI,MAAMA,IAAIrkJ,EAAIukJ,IAAI,IAAItnF,GAAIm4E,IAAI,GAAGoP,IAAI,IAAIvnF,GAAIi8C,IAAI,GAAGurC,IAAI,IAAIxnF,GAAIm8C,IAAI,GAAGsrC,IAAI,IAAIznF,GAAI,gCAAgC,GAAG0nF,IAAI,IAAI1nF,GAAI,gCAAgC,GAAG2nF,IAAI,IAAI3nF,GAAI2uH,IAAI,EAAE,CAChM,SAASmW,IAAIz2U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE3O,EAAE8rB,EAAEvvB,EAAE,EAAE86B,EAAEvL,EAAErd,EAAE,EAAoDlU,EAAE,EAAEoU,EAAE,GAAxDrS,EAAEkzI,EAAK3/H,KAAKskB,IAAI1lB,EAAElS,EAAEA,EAAEA,IAAsCyD,IAAIzF,EAAEyF,EAAE1D,IAA3CwF,EAAE0tI,EAAK3/H,KAAKskB,IAAI1lB,EAAEA,EAAElS,EAAEkS,IAA0B4oB,IAAI1oB,EAAE0oB,EAAEv1B,GAAGoN,EAAEsgI,EAAK3/H,KAAKsgB,IAAI51B,EAAEoU,GAAGpS,EAAEA,GAAG2S,GAAGT,EAAElS,EAAEA,EAAEA,GAAGA,EAAEkS,GAAGS,GAAGT,EAAEA,EAAElS,EAAEkS,EAAE,CAChM,SAASwkU,IAAI12U,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAA8B,IAA5BA,GAAE,EAAMmoB,EAAE6iJ,GAAG0pB,GAAI93K,EAAErd,EAAE,GAAG,IAAUykU,IAAI32U,EAAEkS,EAAE4oB,EAAE/6B,EAAEwF,KAAIoN,GAAE,EAAKw6T,IAAI59S,EAAEuL,GAAoB,GAAdvL,EAAErd,EAAEqd,EAAErxB,SAAiB48B,EAAE6iJ,GAAG0pB,GAAI93K,EAAErd,EAAE,GAAG,IAA4C,OAA1B,GAAdqd,EAAErd,EAAEqd,EAAErxB,QAAW8pU,IAAIz4S,EAAEnd,EAAEmd,GAAG5c,GAAG2uT,IAAIpvT,EAAE8B,GAAUrB,CAAC,CAChM,SAASg1S,IAAI3nT,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,GAAlBy2M,MAAqBr/N,EAAEA,EAAE,EAAG,OAAO,EAAoC,IAAJnS,EAAfwvB,EAAEouJ,GAAGohF,GAAhBjkO,EAAEgkO,IAAI5sP,EAAE,IAAe,GAAa4oB,EAAE5oB,GAAG4oB,EAAE/6B,EAAEwvB,GAAE,CAAgB,GAAGqnT,IAAI52U,EAAED,EAAxBwF,EAAEo4K,GAAGohF,GAAIjkO,GAAG,IAAkB,OAAO,EAAK/6B,EAAEwF,CAAC,CAAC,QAAGqxU,IAAI52U,EAAED,EAAEwvB,EAA4B,CAChM,SAASyhR,IAAIhxS,EAAEkS,EAAEqd,EAAExvB,GAAW,OAAM,GAAHwvB,IAAcvvB,EAAEE,IAAIF,EAAEE,EAAE,IAAI0zN,IAAKmrD,MAAMC,KAAKC,IAAGj/Q,EAAE,IAAI29N,GAAI39N,EAAEE,EAAEgS,EAAEnS,IAAY49K,GAAG6iG,GAAO7iG,GAAG8sC,GAAIzqN,EAAE,IAAI,KAAOA,EAAE2jL,KAAQp0J,GAAG,IAAMwzO,KAAKv2C,GAAGxsN,EAAEgsR,IAAIhsR,GAAGuvB,EAAEunN,GAAI92O,EAAE2jL,MAAMzxK,EAAEnS,EAAE,CAChM,SAASkrP,IAAIjrP,EAAEkS,GAAG,IAAIqd,EAAKrd,GAAGlS,EAAE0hT,IAAInyR,EAAE,KAAOvvB,EAAE0hT,KAAKnyR,EAAEouJ,GAAG39K,EAAE0hT,GAAG,IAAIlkL,GAAGx9H,EAAE,EAAEy6O,IAAGlrN,IAAMrd,IAAIqd,EAAEouJ,GAAGzrK,EAAE,IAAIqjU,GAAGv1U,EAAE,EAAEy6O,IAAGlrN,KAAIA,EAAEkyR,GAAIzhT,EAAEkS,EAAEqd,KAAQA,EAAEy8J,MAAoB,IAAJ,EAALhsL,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEkS,EAAEA,GAAG,CAIhM,SAAS+sP,MAAMA,IAAIvqH,EAAIuvH,IAAI,IAAIt0D,GAAI,SAAS,GAAGsnF,IAAI,IAAItnF,GAAI,YAAY,GAAGuvD,IAAI,IAAIvvD,GAAI,gBAAgB,GAAGunF,IAAI,IAAIvnF,GAAI,mBAAmB,GAAGwnF,IAAI,IAAIxnF,GAAI,QAAQ,GAAGynF,IAAI,IAAIznF,GAAI,iBAAiB,EAAE,CAEjM,SAASknI,IAAI72U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAE8hS,IAAItyQ,EAAE,oBAAoB,GAAGxvB,EAhtBvD,SAAaC,GAAG,OAAO29K,GAAG4qB,IAAIvoM,GAAGq9J,MAAMqlI,MAAM,KAAK/vR,GAAG,KAAK,EAAE,OAAO,IAAIu0I,GAAI,KAAK,EAAE,OAAO,IAAIK,GAAI,QAAQ,OAAO,IAAIN,GAAK,CAgtBhE6vL,CAAI5kU,GAAGoqM,GAAG/T,IAAIr2L,GAAG6/P,KAAMC,OAAOtwE,GAAIy0C,GAAIhsB,GAAIA,GAAIgjE,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAIr7L,EAAEA,EAAE,KAAK,IAAI8wI,IAAK,IAAIC,IAAK,IAAIC,IAAK,IAAIC,IAAK,IAAI4sD,GAAI/vM,EAAED,IAAIwiS,IAAIhzQ,EAAE,CAGjM,SAASqgN,IAAG5vO,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAA6I,OAA3I2M,GAAG,IAAQ,IAAIqd,EAAEvvB,EAAE8T,GAAG5B,EAAEnS,EAAEC,EAAEgT,GAAGd,EAAElS,EAAE8T,GAAG,GAAG5B,EAAE3M,EAAEvF,EAAEyD,GAAGyO,EAAElS,EAAEgT,GAAG,GAAGd,GAAUA,EAAE,IAAIqd,EAAE,EAAExvB,EAAEC,EAAE8T,GAAG5B,EAAE,GAAG3M,EAAEvF,EAAEgT,GAAGd,EAAE,GAAGlS,EAAE8T,GAAG,GAAG5B,IAAOqd,EAAE,EAAExvB,EAAE,EAAEwF,EAAEvF,EAAE8T,GAAG5B,EAAE,IAAUwtM,GAAGnwL,EAAEk0M,IAAI1jO,EAAE0jO,IAAIl+N,EAAEm+N,IAAI,CAClM,SAASrtD,IAAIr2K,GAAkH,GAA1G,MAAL+2U,MAAYA,IAAI,IAAI9jU,OAAO,qFAAwF8jU,IAAIzoU,KAAKtO,GAAI,MAAMkzK,GAAI,IAAImR,GAAIwT,IAAI73L,EAAE,MAAM,OAAOqT,WAAWrT,EAAE,CAGlM,SAAS66R,MAAMA,IAAInmJ,EAAIqmJ,IAAI,IAAItpF,GAAI,YAAY,GAAGupF,IAAI,IAAIvpF,GAAI,cAAc,GAAGwpF,IAAI,IAAIxpF,GAAI,eAAe,GAAGypF,IAAI,IAAIzpF,GAAI,iBAAiB,GAAG0pF,IAAI,IAAI1pF,GAAI,WAAW,GAAG2pF,IAAI,IAAI3pF,GAAI,aAAa,EAAE,CAClM,SAASitH,IAAI1+T,EAAEkS,GAAG,GAAGlS,EAAE,GAAGkS,EAAE,EAAG,MAAMghK,GAAI,IAAI2O,GAAI,6BAAkC,GAAG3vK,EAAElS,EAAG,MAAMkzK,GAAI,IAAI2O,GAAI,6BAAkC,OAAU,GAAH3vK,GAAMA,GAAGlS,EAAE,EAAK,GAAHA,EAAK,EAAE6rU,IAAI7rU,IAAI6rU,IAAI35T,GAAG25T,IAAI7rU,EAAEkS,GAAG,CAClM,SAAS8kU,IAAIh3U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAe,IAAbvL,EAAE,IAAIqzL,GAAI5iN,GAAc,MAALuvB,EAAE5c,GAAU4c,EAAEA,EAAc,MAALA,EAAE5c,GAAc,GAAL4c,EAAEvxB,GAAM2/K,GAAGpuJ,EAAE5c,EAAE4c,EAAEvxB,EAAE,GAAG,IAAIu9M,KAA5Ci1C,GAAIjhO,IAA8D,GAAGs6J,GAAnB/uJ,EAAE6iJ,GAAGs5J,IAAI1nT,GAAG,IAAY,KAAkB,IAAZxvB,EAAE49K,GAAG7iJ,EAAE,KAASv1B,EAAE,EAAEA,EAAE2M,EAAEhU,OAAOqH,IAAK2M,EAAE3M,GAAG2xU,GAAGn3U,EAAK,CAClM,SAASo3U,IAAIn3U,GAAG,IAAIkS,EAAE,OAAc,IAAL,GAALlS,EAAEgtN,IAAiB64F,GAAI7lT,KAAGkS,EAAE,IAAI27M,GAAIg4F,GAAI7lT,KAAMA,GAAG,aAAa05L,GAAIxnL,EAAElS,EAAE86B,GAAG5oB,EAAElS,GAAG,YAAY05L,GAAIxnL,EAAElS,EAAE2S,GAAGT,EAAElS,GAAG,QAAQ05L,GAAIxnL,EAAElS,EAAEhC,GAAGkU,EAAElS,GAAG,QAAQ05L,GAAIxnL,EAAElS,EAAEoS,GAAGF,EAAElS,GAAG,IAAWkS,EAAElS,EAAC,CAClM,SAAS68K,IAAG78K,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAc,IAAVT,EAAE,IAAIsuM,GAAYj7M,EAAE,EAAEu1B,GAAR/6B,EAAEC,GAAU9B,OAAOqH,EAAEu1B,IAAIv1B,EAA6C,GAAM,MAA1BmgM,IAAIxzL,EAAnBS,EAAEoxK,IAATx0J,EAAExvB,EAAEwF,IAAUsnM,MAAgB9oB,GAAGx0J,EAAEurL,OAAmB,MAAM5nC,GAAI,IAAI2O,GAAI,kBAAkBlvK,IAAKrO,KAAK4N,GAAG+0M,KAAM,IAAIvhD,GAAIxzJ,GAAG,CACnM,SAASklU,IAAIp3U,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,GAAM,MAAH96B,EAAS,OAAO+3L,IAA2B,IAAvBj9J,EAAE,IAAImzQ,GAAIjqH,IAAI,IAAI,KAAajkL,EAAE,EAAEwF,GAARgqB,EAAEvvB,GAAU9B,OAAO6B,EAAEwF,IAAIxF,EAAGmS,EAAEqd,EAAExvB,GAAGkxQ,GAAIn2O,EAAE2oE,OAAOgjH,aAAav0M,IAAI,OAAQ4oB,EAAE96B,EAAkB,GAAZ86B,EAAEv1B,EAAErH,OAAU48B,EAAE96B,EAAEA,EAAE86B,EAAE96B,EAAEA,EAAG,GAAG86B,EAAEv1B,EAApCu1B,EAAEvL,CAAoC,CACnM,SAASorI,MAAMA,IAAIjmB,EAASyzH,KAAWkvE,IAAI,IAAI14H,GAAI24H,IAA5BC,IAAWjvE,KAA0BtwD,GAAI,GAAGw/H,IAAI,IAAI74H,GAAI84H,IAAIz/H,GAAI,MAAMA,GAAI,GAAG0/H,IAAI,IAAI/4H,GAAIg5H,IAAI3/H,GAAI,IAAI,IAAI7lC,GAAIylK,IAAI,IAAIj5H,GAAIk5H,IAAIzuB,KAAK,IAAIj3I,GAAI2lK,IAAI,IAAIn5H,GAAIo5H,IAAI,GAAGC,IAAI1vE,IAAI2vE,IAAI5vE,GAAG,CACnM,SAAS6vE,IAAIl4U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAI+6B,EAAEnoB,EAAiB,IAAI5S,GAAd,GAAHmS,EAAKwsS,IAAID,KAAYz+S,EAAE2hP,KAAKhmC,KAAK57M,EAAEw7M,MAAwB,IAAjBhsL,EAAEouJ,GAAG59K,EAAE07M,KAAK,KAAS9oM,EAAEgrK,GAAG0iB,GAAGrgM,EAAE86B,EAAEvL,EAAEA,GAAG,IAAIosL,KAAKhpM,EAAE4oM,MAAOzgL,EAAE6iJ,GAAGhrK,EAAE8oM,KAAK,IAAI1lC,GAAI/1K,EAAEkS,EAAEA,EAAEyrK,GAAG7iJ,EAAE5oB,EAAE,KAAK6jK,GAAI/1K,EAAEkS,EAAElS,EAAE29K,GAAG7iJ,EAAE5oB,EAAE,IAAInS,EAAI,CAEnM,SAASupT,IAAItpT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAmB,IAAjBA,EAAE,IAAIgkN,GAAIvpN,EAAEkS,EAAE,GAAS3M,EAAE2M,EAAE3M,EAAExF,EAAEk/K,MAASqqC,GAAI/jN,EAAE2M,EAAE3M,EAAExF,EAAEk/K,MAAmC87B,GAAGxS,IAArDxoM,EAAqB49K,GAAGp4K,EAAExF,EAAEs7M,GAAG91M,EAAEgqB,EAAEhqB,EAAE2M,KAAK,KAAkB81L,MAAM6yH,SAAS9/G,GAAG7oM,KAAai3S,IAAIppT,EAAEH,EAAE2/O,GAAIv/O,EAAEuvB,EAAEvxB,GAAGuxB,GAAGi6L,GAAIjkN,GAAGwwK,GAAI7jK,EAAEA,EAAEnS,GAAG,CACpM,SAASo4U,IAAIn4U,EAAEkS,GAAG,GAAGA,EAAElS,EAAG,OAAO29K,GAAG4qB,IAAIr2L,EAAEA,GAAG81L,MAAMwuI,MAAM,IAAI7jU,GAAG,KAAK,EAAE,KAAK,EAAE86T,IAAIv7T,GAAG,KAAK,EAAEwvL,GAAI,IAAI0oB,GAAI,KAAK,IAAI7c,GAAIr7L,EAAEnS,EAAE,KAAK,IAAIqiJ,IA4PlI,SAAapiJ,EAAEkS,GAAG,IAAIqd,GA+UtB,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAiI,IAA/HgC,EAAEkS,EAAE,IAAI5M,IAAG,IAAIg5K,IAAKmB,MAAMlB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC1/C,IAAI/mB,IAAIL,IAAImnB,IAAIjnB,QAAQ,IAAItB,IAAKg5F,KAAM/4F,GAAGC,GAAG+4F,IAAG,GAAGtrC,IAAI,IAAI,EAAE,CAACurC,IAAIC,IAAIC,SAAa/kQ,EAAE4rK,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC1/C,IAAI/mB,IAAIL,IAAImnB,IAAIjnB,MAAMn8K,EAAE,EAAEzF,EAAE2U,EAAEzU,OAAOuF,EAAEzF,IAAIyF,EAAU,IAAPq3B,EAAEnoB,EAAElP,GAA8C1D,EAAE,EAAEwF,GAA3CgqB,EAAEgvJ,GAAGC,GAAG+4F,IAAG,GAAGtrC,IAAI,IAAI,EAAE,CAACurC,IAAIC,IAAIC,OAAcx5Q,OAAO6B,EAAEwF,IAAIxF,EAAGmS,EAAEqd,EAAExvB,GAAG6sU,IAAG5sU,EAAEkS,EAAE4oB,EAAE5oB,EAAE,IAAIogK,GAAM,EA/U3T8lK,CAAIp4U,GAAGA,EAAEA,GAAGuvB,EAAE,IAAI0jJ,GAAGyuB,GAAI,IAAI0oB,GAAI,KAAK,IAAI7c,GAAIr7L,EAAEnS,EAAE,KAAK,IAAIsrK,GAAI97I,IAAIA,GAyO3F,SAAavvB,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,IAAIpN,EAAEo4K,GAAG0iB,GAAGrgM,EAAEA,GAAG+vR,MAAME,MAAM,IAAIt0E,KAAKp2M,EAAEg2M,MAA+E,OAAxEx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,KAAKlsL,EAAEouJ,GAAG0pB,GAAItnM,EAAEqS,EAAE,GAAG,KAAKrS,EAAEqS,EAAiB0yM,GAAfhqL,EAAE,IAAIkkM,GAAIj/N,EAAEqS,GAAS,IAAIy0I,IAAY30I,EAAES,GAAG,KAAK,EAAE0jO,IAAIr2O,EAAE86B,EAAEvL,GAAG+nP,KAAMG,KAAK,GAAG,MAAM,KAAK,EAAWphC,IAAIr2O,EAAE,IAAIm1P,GAAIr6N,EAAE,EAAzBnoB,EAAE0lU,IAAIv9S,IAAwBvL,GAAG+nP,KAAMG,KAAK,GAAGphC,IAAIr2O,EAAE,IAAIm1P,GAAIr6N,EAAEnoB,EAAEmoB,EAAEvL,EAAErxB,QAAQqxB,EAAEkoP,IAAI,GAAK,CAzO1M6gE,CAAIt4U,EAAE29K,GAAG4qB,IAAIr2L,EAAEA,GAAGmrJ,MAAMwnF,MAAM,MAprB5H,SAAa7kP,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,IAAIA,EAAE49K,GAAG0iB,GAAGrgM,EAAEA,GAAG+vR,MAAMG,MAAM,IAAIv0E,KAAK57M,EAAEw7M,MAAiC66B,GAAIp2O,EAA9BuvB,EAAEouJ,GAAG59K,EAAE07M,KAAK,MAAKvpM,EAAEqyO,IAAIh1N,IAAa,IAAI+nP,KAAMI,KAAK,GAAGthC,GAAIp2O,EAAEuvB,EAAErd,EAAE,GAAGslQ,IAAI,EAAG,CAorBjB+gE,CAAIv4U,GAsBtI,SAAaA,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAE,IAAIA,EAAEo4K,GAAG0iB,GAAGrgM,EAAEA,GAAG+vR,MAAMK,MAAM,IAAIz0E,KAAKp2M,EAAEg2M,MAA2G66B,GAAIp2O,EAAxGD,EAAE49K,GAAGp4K,EAAEk2M,KAAK,MAAKlsL,GAAGrd,EAAEo9N,GAAGvvO,EAAEsB,IAAK4+L,IAAIxgB,MAAMM,MAAM7tK,EAAE+tL,GAAGvgB,KAAKxtK,EAAE+tL,GAAG4G,KAAK30L,EAAE+tL,GAAGrgB,KAAK,KAAK+1J,IAAIG,IAAID,IAAID,KAAe,IAAIt+D,KAAMI,KAAK,GAAGthC,GAAIp2O,EAAED,EAAEwvB,EAAE,GAAGkoP,IAAI,GAAGrhC,GAAIp2O,EAAED,EAAEwvB,EAAE,GAAGioP,IAAI,EAAG,CAtB1GghE,CAAIx4U,GAvgB7I,SAAaA,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAE,IAAIA,EAAEo4K,GAAG0iB,GAAGrgM,EAAEA,GAAG+vR,MAAMM,MAAM,IAAI10E,KAAKp2M,EAAEg2M,MAAwB,IAAIhsL,EAAE+/M,IAAvBvvO,EAAE49K,GAAGp4K,EAAEk2M,KAAK,MAAgBp6M,GAAGs6M,KAAKpsL,EAAEgsL,MAAuB66B,GAAIp2O,EAAED,EAApB49K,GAAGpuJ,EAAEksL,KAAK,KAAe67D,KAAMG,KAAK,EAAI,CAugBlBghE,CAAIz4U,GAnrBpJ,SAAaA,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,IAAIA,EAAE49K,GAAG0iB,GAAGrgM,EAAEA,GAAG+vR,MAAMI,MAAM,IAAIx0E,KAAK57M,EAAEw7M,MAAiC66B,GAAIp2O,EAA9BuvB,EAAEouJ,GAAG59K,EAAE07M,KAAK,MAAKvpM,EAAEqyO,IAAIh1N,IAAa,IAAI+nP,KAAMI,KAAK,GAAGthC,GAAIp2O,EAAEuvB,EAAErd,EAAE,GAAGslQ,IAAI,EAAG,CAmrBIkhE,CAAI14U,GAspB3J,SAAaA,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEvL,EAAErd,EAAEA,EAAE4oB,EAAE,IAAIkkM,GAAIzvM,EAAEnd,GAAG7M,EAAE,EAAExF,EAAEwvB,EAAEnd,EAAErS,EAAEwvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAG+3D,GAAIv4D,GAAG6vH,GAAGxtS,EAAEkS,GAAGutK,MAAMM,MAAMu3F,KAAME,MAAM,IAAIjoP,GAAGhqB,EAAEo8T,IAAI7mS,EAAEv1B,EAAE,IAAIqgJ,GAAI7lJ,GAAGm2O,GAAIv4D,GAAG6vH,GAAGxtS,EAAEkS,EAAE6tK,IAAI03F,KAAK,IAAIloP,GAAGhqB,EAAEo8T,IAAI7mS,EAAEv1B,EAAE,IAAIogJ,GAAI5lJ,GAAGm2O,GAAIv4D,GAAG6vH,GAAGxtS,EAAEkS,EAAE6tK,IAAI23F,KAAK,IAAInoP,GAAG2mN,GAAIv4D,GAAG6vH,GAAGxtS,EAAEkS,EAAEwtK,IAAI83F,KAAK,IAAIjoP,GAAG2mN,GAAIv4D,GAAG6vH,GAAGxtS,EAAEkS,EAAEwtK,IAAI+3F,KAAK,IAAIloP,GAAGhqB,EAAEo8T,IAAI7mS,EAAEv1B,EAAE,IAAIsgJ,GAAI9lJ,GAAGm2O,GAAIv4D,GAAG6vH,GAAGxtS,EAAEkS,EAAEwtK,IAAIg4F,KAAK,IAAInoP,GAAG2mN,GAAIv4D,GAAG6vH,GAAGxtS,EAAEkS,EAAE20L,IAAI2wE,KAAK,IAAIjoP,GAAGhqB,EAAEo8T,IAAI7mS,EAAEv1B,EAAE,IAAIugJ,GAAI/lJ,GAAGm2O,GAAIv4D,GAAG6vH,GAAGxtS,EAAEkS,EAAE20L,IAAI4wE,KAAK,IAAIloP,GAAGhqB,EAAEo8T,IAAI7mS,EAAEv1B,EAAE,IAAIwgJ,GAAIhmJ,GAAGm2O,GAAIv4D,GAAG6vH,GAAGxtS,EAAEkS,EAAE20L,IAAI6wE,KAAK,IAAInoP,GAAG2mN,GAAIv4D,GAAG6vH,GAAGxtS,EAAEkS,EAAE0tK,IAAI43F,KAAK,IAAIjoP,GAAGhqB,EAAEo8T,IAAI7mS,EAAEv1B,EAAE,IAAIohJ,GAAI5mJ,GAAGm2O,GAAIv4D,GAAG6vH,GAAGxtS,EAAEkS,EAAE0tK,IAAI63F,KAAK,IAAIloP,GAAG2mN,GAAIv4D,GAAG6vH,GAAGxtS,EAAEkS,EAAE0tK,IAAI83F,KAAK,IAAInoP,EAAE,CAtpB3aopT,CAAI34U,EAAEkS,GAAGwvL,GAAIyrF,GAAI,IAAI/iE,GAAI,KAAKmwC,GAnhF5L,SAAYv6P,GAAS,OAASA,EAAEhC,IAAMgC,EAAEhC,EAAE,IAAIqjK,GAAGrhK,GAAK,CAmhFyI44U,CAAG54U,EAAEkS,GAAGlS,IAAI,IAAIymJ,IAAK,IAAIC,IAAKx0I,EAAElS,GAAE,EAAMA,EAAEA,EAAE,IAAI,CA5PxG64U,CAAI74U,EAAEA,EAAEkS,QAAUwvL,GAAI,IAAI0oB,GAAI,KAAK,IAAI7c,GAAIr7L,EAAEnS,EAAE,KAAK,IAAIqiJ,GAAK,CACpM,SAAS02L,IAAI94U,GAAG,IAAIkS,EAAEqd,EAAsK,OAApKA,EAAE0jH,EAAK3/H,KAAKuc,MAAW,MAAL7vB,EAAEqB,IAAUrB,EAAEqB,EAAEqjS,GAAI1kS,EAAE,IAAIsoJ,KAAMg4B,GAAItgL,EAAEqB,IAAIrB,EAAEkS,GAAQ,MAALlS,EAAE2S,IAAU3S,EAAE2S,EAAE8xR,GAAIzkS,EAAE,IAAIqoJ,KAAMi4B,GAAItgL,EAAE2S,OAAOT,EAAE+3M,GAAIrf,GAAI33D,EAAK3/H,KAAKY,MAAMqb,KAAKrd,EAAE+gI,EAAK3/H,KAAKsgB,IAAI1hB,EAAElS,EAAE86B,EAAW,CACpM,SAASi+S,MAAMroG,KAAMlrB,GAAIzmN,KAAKuF,MAAMA,KAAK8N,GAAGqtK,MAAMqnB,KAAKxiM,KAAKtE,EAAE,IAAI4oL,GAAI,IAAIjQ,GAAIr0K,KAAKw2B,GAAGi2L,GAAG,EAAEC,KAAK,IAAIC,GAAI,IAAI3sN,KAAKiB,GAAGwrN,GAAG,EAAEC,KAAK,IAAIC,GAAI,IAAI3sN,KAAKqO,GAAGo+M,GAAG,EAAEC,KAAK,IAAIC,GAAI,IAAI3sN,KAAK4N,EAAE,IAAIq+L,GAAIjsM,KAAKiB,EAAEjB,KAAKqO,EAAE,CACrM,SAASqmU,IAAIh5U,EAAEkS,GAAG,IAAMnS,EAAE,OAAGkiL,GAAIk6B,GAAG5T,IAAIr2L,GAAG81L,MAAM+oC,UAAsBhxO,EAAEmS,EAAEqd,EAAEvxB,GAAKgC,IAAIwwR,KAAMG,MAAS5wR,EAAEsB,IAAI49P,MAAMk4B,OAAsBx5G,GAAG4qB,IAAIxoM,GAAGs9J,MAAM0uI,MAAM,MAAWnb,IAA6B,CACrM,SAASqoD,IAAIj5U,EAAEkS,GAAG,IAAMnS,EAAE,OAAGkiL,GAAIk6B,GAAG5T,IAAIr2L,GAAG81L,MAAM+oC,UAAsBhxO,EAAEmS,EAAEnS,EAAE/B,GAAKgC,IAAIwwR,KAAMK,MAAS9wR,EAAEsB,IAAI49P,MAAMk4B,OAAsBx5G,GAAG4qB,IAAIxoM,GAAGs9J,MAAM0uI,MAAM,MAAWjb,IAA6B,CAErM,SAASG,MAAMA,IAAIv8I,EAAIy8I,IAAI,IAAIz8E,GAAI,kBAAkB,GAAG08E,IAAI,IAAI18E,GAAI,kBAAkB,GAAG28E,IAAI,IAAI38E,GAAI,qBAAqB,GAAG48E,IAAI,IAAI58E,GAAI,mBAAmB,GAAG68E,IAAI,IAAI78E,GAAI,wBAAwB,EAAE,CAIrM,SAAS2nH,IAAIr8T,EAAEkS,GAAG,OAAOA,EAAES,GAAG,KAAK,EAAE,OAAOyvN,GAAGpiO,EAAEoS,GAAGs+N,KAAMi1D,MAAM,KAAK,EAAE,OAAOvjE,GAAGpiO,EAAEoS,GAAGs+N,KAAMk1D,MAAM,KAAK,EAAE,OAAOxjE,GAAGpiO,EAAEoS,GAAGs+N,KAAMm1D,MAAM,KAAK,EAAE,OAAOzjE,GAAGpiO,EAAEoS,GAAGs+N,KAAMo1D,MAAM,QAAQ,OAAO7+E,KAAMA,KAAM+Y,IAAK,CACtM,SAAS+mE,IAAI/mS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEgqB,EAjkF5B,SAAavvB,EAAEkS,GAAG,OAAOA,IAAIutK,MAAMG,KAAK5/K,EAAEuvB,EAAEvvB,EAAED,CAAC,CAikFjBm5U,CAAIhnU,EAAElS,EAAEuF,GAAGxF,EAAE49K,GAAG+5B,GAAI13M,EAAE2S,EAAEmoB,EAAEvL,GAAG,IAAIvvB,EAAEuF,EAAEvF,EAAEA,EAAEuvB,EAAErxB,OAAO,EAAmB,GAAd8B,EAAEA,EAAEuvB,EAAErxB,QAAWy/K,GAAG0pB,GAAIrnM,EAAEA,EAAEuF,GAAG,KAAKgqB,GAAGxvB,KAAK49K,GAAG0pB,GAAIrnM,EAAEA,EAAEuF,GAAG,KAAKvF,IAAI29K,GAAG0pB,GAAIrnM,EAAEA,EAAEuF,GAAG,KAAK2M,GAAO6jK,GAAI/1K,EAAEA,EAAE,IAAIgzN,GAAIjzN,GAAI,CACtM,SAASo5U,IAAIn5U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAe,OAAbxF,EAskB5B,SAAaC,EAAEkS,EAAEqd,GAAG,GAAGqxK,GAAI5gM,EAAEA,EAAEkS,IAAI,GAAGuuL,GAAI9iB,GAAG+5B,GAAI13M,EAAEA,EAAEkS,GAAG,IAAIqd,GAAI,OAAO,OAAQonK,GAAI32L,EAAEA,EAAEkS,EAAE,IAAIukK,IAAK,GAAGmqB,GAAI5gM,EAAEA,EAAEuvB,IAAI,GAAGkxK,GAAI9iB,GAAG+5B,GAAI13M,EAAEA,EAAEuvB,GAAG,IAAIrd,GAAI,OAAQ,OAAQykL,GAAI32L,EAAEA,EAAEuvB,EAAE,IAAIknJ,IAAK,GAAGmqB,GAAI5gM,EAAEkS,EAAEA,IAAI,GAAGuuL,GAAI9iB,GAAG+5B,GAAI13M,EAAEkS,EAAEA,GAAG,IAAIqd,GAAI,OAAQ,OAAQonK,GAAI32L,EAAEkS,EAAEA,EAAE,IAAIukK,IAAK,GAAGmqB,GAAI5gM,EAAEkS,EAAEqd,IAAI,GAAGkxK,GAAI9iB,GAAG+5B,GAAI13M,EAAEkS,EAAEqd,GAAG,IAAIrd,GAAI,OAAO,OAAQykL,GAAI32L,EAAEkS,EAAEqd,EAAE,IAAIknJ,IAAK,OAAO,CAAC,CAtkBxT2iK,CAAIp5U,EAAEkS,EAAEqd,GAAS,GAAHxvB,EAAaA,EAAKyyN,GAAItgN,GAAG81L,MAAM6oC,OAAOre,GAAIjjM,EAAEshN,OAAMtrO,EAAEs6M,GAAIliC,GAAG4qB,IAAIr2L,EAAE2+N,KAAK,IAAI7wO,EAAE29K,GAAG4qB,IAAIh5K,EAAEshN,KAAK,IAAI7wO,IAAK,EAAEq5U,IAAIr5U,EAAEkS,EAAEqd,GAAGhqB,EAAE,GAAG8zU,IAAIr5U,EAAEuvB,EAAErd,GAAU3M,GA+MnL,SAAavF,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAsC,GAApC/6B,EAAEC,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAGmC,EAAEvF,EAAEuvB,EAAEA,EAAEA,EAAEnsB,GAAGmsB,EAAEnsB,GAAW,MAALrD,EAAEC,GAAc,MAALuF,EAAEvF,EAAuD,OAA9C86B,EAAEq1M,GAAIpwO,EAAEC,EAAEuF,EAAEvF,IAAK,EAAEq5U,IAAIr5U,EAAEkS,EAAEqd,GAAGuL,EAAE,GAAGu+S,IAAIr5U,EAAEuvB,EAAErd,GAAU4oB,EAAO,GAAQ,MAAL/6B,EAAEC,EAAoB,OAAXq5U,IAAIr5U,EAAEkS,EAAEqd,IAAW,EAAO,GAAQ,MAALhqB,EAAEvF,EAAoB,OAAXq5U,IAAIr5U,EAAEuvB,EAAErd,GAAU,EAAE,OAAO,CAAC,CA/M7ConU,CAAIt5U,EAAEkS,EAAEqd,EAAE,CACtM,SAASgqT,IAAIv5U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,GAAQ,GAALT,EAAEA,EAAK,CAAW,IAAVnS,EAAE,IAAI05K,GAAQ9mK,EAAEmsP,IAAI5sP,EAAE,GAAGS,EAAET,GAAGS,EAAE5S,EAAEwvB,GAAoBgqK,GAAGx5L,EAAE6yS,GAArB93Q,EAAE6iJ,GAAGohF,GAAIpsP,GAAG,OAAiBpN,EAAEu1B,EAAEv1B,GAAIvF,EAAE29K,GAAG4qB,IAAIztK,GAAG4rQ,MAAM8yC,MAAM,IAAIx5U,EAAEuF,EAAE2M,EAAEyrK,GAAG4qB,IAAIztK,EAAE2+S,KAAK,IAAIz5U,EAAEu5U,IAAIv5U,EAAED,EAAEmmS,GAAI32Q,EAAExvB,EAAEmS,EAAElS,EAAEA,EAAE,GAAG,CAAC,CACtM,SAAS05U,IAAI15U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,GAAG3S,EAAEuF,GAAG2M,EAAG,OAAOlS,EAAE2S,EAAE,GAv5DtD,SAAa3S,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAmB,OAAjBA,EAAEqhR,IAAIphR,EAAEkS,GAAE,IAAgBA,GAAGA,GAAGnS,EAAEC,GAAGuvB,CAAC,CAu5DPoqT,CAAI35U,EAAEA,EAAE2S,EAAET,GAAI,OAAOlS,EAAE2S,EAAgC,IAA9BmoB,EAAE96B,EAAE0S,EAAE3S,EAAEC,EAAE2S,EAAEA,EAAE3S,EAAE0S,EAAEnN,GAAGu1B,EAAE/6B,GAAG,EAAEA,EAAQA,EAAE,EAAE+6B,IAAGvL,EAAE6xP,IAAIphR,EAAEuF,GAAE,IAAY2M,GAAG3M,GAAGgqB,EAAEvvB,GAAGkS,GAAGS,EAAEpN,EAAEu1B,EAAEv1B,GAAOxF,EAAEwF,EAAEA,GAAGu1B,EAAE/6B,GAAG,EAAEA,EAAE,OAAO4S,CAAC,CAEtM,SAAS4vR,IAAIviS,GAAG,IAAIkS,EAAE,GAAQ,MAALlS,EAAEoD,EAAS,MAAM8vK,GAAI,IAAI4O,GAAI,gCAAoC9hL,EAAEkS,IAAMlS,EAAEqB,IAAMs+L,KAAHztL,EAAS6mL,GAAI6R,GAAI7sL,KAAKD,OAAO+sL,KAAM7qM,EAAEgU,EAAkB,KAAhB8kL,GAAIq4E,GAAIj/P,EAAElS,EAAEE,KAAWF,EAAEuvB,EAAEvvB,EAAE0S,GAAGsuR,GAAIhhS,EAAEA,EAAE0S,EAAE1S,EAAEuvB,GAAGvvB,EAAEkS,GAAE,EAAK,CACtM,SAAS0nU,IAAI55U,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAoC,IAAxB6lO,GAAV7lO,EAAE,IAAIy5K,GAAU,IAAIy7B,GAAIj1M,EAAEoS,EAAEpS,EAAEqB,IAAQkuB,EAAE,IAAIwvJ,KAAM/+K,EAAEA,IAAIA,EAAEA,EAAE,IAAIg/K,GAAI7qJ,IAAGn0B,EAAE,IAAIA,EAAEA,IAAIuvB,EAAEhqB,GAAGgqB,EAAEvxB,EAAEihL,MAAwB2mD,GAAI7lO,EAAE,IAAIk1M,IAA3B/iM,EAAEyrK,GAAGwB,IAAI5vJ,GAAG,MAAqBvvB,EAAEkS,EAAEA,IAA4B,OAAxB0zN,GAAI7lO,EAAE,IAAIk1M,GAAIj1M,EAAEkS,EAAElS,EAAEuvB,IAAWxvB,CAAC,CAEtM,SAAS85U,IAAG3nU,EAAEqd,GAAG,IAAIxvB,EAAE,GAAGg7M,GAAG7oM,KAAK6oM,GAAGxrL,GAAI,OAAO,EAAK,GAAGs6J,GAAGt6J,EAAE,IAAI,CAACxvB,EAAE49K,GAAGpuJ,EAAE,IAAI,IAAI,OAAOrd,EAAE+sK,MAAMl/K,EAAEk/K,MAAM/sK,EAAEiuL,GAAGpgM,EAAE,CAAC,MAAMC,KAAY,GAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,MAAM6pL,GAAG7pL,IAAE,KAAM,OAAO,EAAW,MAAMkzK,GAAIlzK,IAAE,CAAC,CAAC,OAAO,CAAK,CACvM,SAASumM,IAAIvmM,EAAEkS,GAAG,IAAIqd,EAAEwmJ,GAAI/1K,EAAED,EAAEmS,GAAGqd,EAAErd,EAAEqtL,KAAQv/L,EAAEuvB,GAAGvvB,EAAEuF,EAAEvF,EAAEizI,EAAK3/H,KAAKugB,IAAI7zB,EAAEuF,EAAEvF,EAAEuvB,EAAEvvB,GAAGA,EAAEuF,EAAE2M,GAAGqd,EAAErd,EAAElS,EAAED,EAAEwvB,EAAErxB,OAAO,IAAI8B,EAAEuF,EAAE2M,GAAGlS,EAAEA,KAAQA,EAAEuF,EAAEvF,GAAGuvB,EAAEvvB,EAAEA,EAAEuF,EAAE2M,EAAE+gI,EAAK3/H,KAAKugB,IAAI7zB,EAAEuF,EAAE2M,EAAEqd,EAAErd,GAAGlS,EAAED,EAAEwvB,EAAErxB,OAAO,IAAI8B,EAAEuF,EAAEvF,GAAGA,EAAEA,GAAG,CACvM,SAASolP,IAAIplP,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAA0B,OAAlB2M,GAAN3M,EAAEvF,EAAEhC,GAAMkU,EAAEnS,EAAEwF,EAAE6M,EAAEmd,EAAEhqB,EAAEoN,EAASpN,EAAEvF,EAAE2S,GAAG,KAAK,EAAE4c,EAAEvvB,GAAGA,EAAE2S,EAAET,EAAEhS,EAAEF,EAAED,EAAEC,GAAG,EAAE,MAAM,KAAK,EAAEuvB,EAAEvvB,EAAEkS,EAAEnS,EAAEH,EAAEI,EAAEkS,EAAEnS,EAAEC,EAAEA,EAAE,MAAM,KAAK,EAAEuvB,EAAEvvB,EAAEkS,EAAEnS,EAAEH,EAAEI,EAAEkS,EAAEnS,EAAEC,EAAEA,EAAED,EAAEC,EAAE,MAAM,KAAK,EAAEuvB,EAAErd,EAAEA,EAAEnS,EAAEH,EAAEsS,EAAEA,EAAEnS,EAAEC,EAAEkS,EAAG,CACvM,SAAS4nU,IAAI95U,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,GAAGxF,EAAEmS,GAAG3M,EAAEgqB,EAAG,MAAM2jJ,GAAI,IAAI2O,GAAI,8EAAwI,OAA1D7hL,EAAEA,EAAEkS,EAAGlS,EAAEA,EAAEkS,EAAGlS,EAAEA,EAAED,IAAIC,EAAEA,EAAED,GAAGC,EAAEkS,EAAEqd,EAAGvvB,EAAEkS,EAAEqd,EAAGvvB,EAAEkS,EAAE3M,IAAIvF,EAAEkS,EAAE3M,GAAUvF,CAAC,CACvM,SAASyqT,IAAIzqT,GAAG,GAAG6pL,GAAG7pL,EAAE,KAAM,OAwZ9B,SAAaA,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAI3U,EAAEoU,EAAE/Q,EAAEyS,EAAEA,EAAEg9T,IAAI9wU,GAAGkS,EAAElS,EAAEA,EAAEhC,EAAK,MAAHkU,EAAQlU,GAAGw6M,GAAI1kM,EAAE,WAAW9T,EAAEA,GAAGuF,EAAE83L,GAAI,IAAI94B,GAAIvkK,EAAED,IAAI4S,GAAGpN,EAAKoN,IAAYwlM,GAAGrkM,EAAE,eAAd1B,EAAE,IAAI0wJ,IAA0BvzI,EAAE,IAAI8gJ,GAAIj+J,GAAGmmM,GAAI,IAAIh0C,GAAIvkK,EAAED,GAAGwvB,IAAGuL,EAAEuiK,GAAIr9L,EAAE2S,IAAMmoB,IAAiBq9K,GAAGrkM,EAAE,oBAAdzS,EAAE,IAAIyhK,IAA+B/iK,EAAE,IAAIuwK,GAAIjvK,GAAGk3M,GAAIv4M,EAAE2S,EAAE5S,IAAG,OAAO+T,CAAC,CAxZlPimU,CAAIp8J,GAAG39K,EAAE,MAAW,GAAG6pL,GAAG7pL,EAAE,KAAM,OA9rBvE,SAAaA,GAAG,IAAIkS,EAAM3M,EAAEu1B,EAA2F,OAAzFA,EAAEg2S,IAAI9wU,IAAKq9L,GAAIr9L,EAAEuvB,KAAuB4oL,GAAGr9K,EAAE,iBAAdv1B,EAAE,IAAIu9J,IAA4B5wJ,EAAE,IAAIq+J,GAAIhrK,GAAGgzM,GAAIv4M,EAAEuvB,EAAErd,IAAU4oB,CAAC,CA8rBjDk/S,CAAIr8J,GAAG39K,EAAE,MAAW,GAAG6pL,GAAG7pL,EAAE,IAAK,OAvC/G,SAAaA,GAAG,IAAIkS,EAAclU,EAAEoU,EAAqJ,OAAnJA,EAAE0+T,IAAI9wU,GAAc,MAATA,EAAEuF,GAAeizM,GAAIpmM,EAAE+6O,IAAIntP,EAAEuF,KAAKvF,EAAEqB,GAAWm3M,GAAIpmM,EAAE,OAAOm/M,GAAGvxN,EAAEqB,KAAMg8L,GAAIr9L,EAAEoS,KAAcpU,EAAE,IAAI8kK,GAAGq1C,GAAG/lM,EAAE47K,IAAIhwL,GAAGkU,EAAE,IAAIs+J,GAAIxyK,GAAGu6M,GAAIv4M,EAAEoS,EAAEF,IAAUE,CAAC,CAuC3E6nU,CAAIt8J,GAAG39K,EAAE,KAAU,MAAMkzK,GAAI,IAAI2O,GAAI82B,IAAIC,IAAG,IAAIt6B,GAAIC,GAAGC,GAAGsQ,IAAG,GAAG3Q,IAAI,EAAE,EAAE,CAACn+K,OAAQ,CAEvM,SAASk6U,IAAIl6U,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAI,GAAG5oB,EAAE7Q,IAAI49P,MAAMg4B,KAAM,IAAIn8P,EAAE,IAAIg0M,GAAG7hB,GAAGi1E,GAAIhwR,GAAGlS,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGtwL,IAA8B,IAAzBv1B,EAAEo4K,GAAGwtC,GAAGrwL,GAAG,KAAQvL,EAAEvxB,EAAEqD,GAAQ41R,KAAKj3R,EAAEuvB,EAAEvvB,EAAEuF,EAAEgqB,EAAEvxB,EAAEuxB,EAAEnsB,IAAIrD,GAAGC,EAAEuvB,EAAEvvB,EAAEkS,EAAEqd,EAAEnsB,IAAImsB,EAAG,OAAO,EAAO,OAAO,CAAK,CAExM,SAASgxR,IAAIvgT,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEjB,KAAK4N,EAAEnS,EAAEuE,KAAKiB,EAAEvF,IAAI27Q,KAAMG,KAAKv2Q,EAAE2M,EAAEqd,GAAGjrB,KAAKvE,EAAEyoO,GAAGz1C,IAAI,CAACc,IAAIyxD,KAAK,CAAC,IAAI,IAAI,GAAG,CAAC//O,EAAErH,OAAOqH,EAAErH,QAAQ,GAAGoG,KAAKtE,EAAEwoO,GAAGp1C,IAAG,CAACS,IAAI6V,KAAK,CAAC,GAAG,IAAI,GAAG,CAACnkM,EAAErH,OAAOqH,EAAErH,QAAQ,GAAGoG,KAAKirB,EAAE,IAAIq/S,IAAI18T,EAAEqd,EAAE,CACzM,SAAS4qT,IAAIn6U,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAsF,IAApFC,EAAEqB,EAAE,IAAI4hL,IAAIxD,MAAMlB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC1/C,IAAI/mB,IAAIL,IAAImnB,IAAIjnB,OAAO1hL,OAAO8B,EAAEoS,EAAEmd,EAAErxB,QAAY6B,EAAE,IAAI4lK,GAAI3lK,EAAEoS,GAAGrS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAA0BgU,GAAjBqd,EAAEouJ,GAAGC,GAAI79K,GAAG,MAASA,EAAEqS,EAAEwiR,IAAG50R,EAAEqB,EAAE6Q,EAAEqd,GAAGvvB,EAAEuF,EA6X3L,SAAavF,GAAS,IAAIkS,EAAEqd,EAAE,GAAdwgQ,MAAiB/vR,EAAEigM,IAAIxgB,MAAMqnB,MAAO,MAAM5zB,GAAI,IAAI2O,GAAI,0CAA0C,OAAO7hL,EAAEi/K,MAAM,KAAK,EAAE,OAAOgxG,IAAI,KAAK,EAAgD,OAA9C/9Q,EAAElS,EAAEigM,GAAGvgB,MAAM1/K,EAAEigM,GAAGrgB,KAAKrwJ,EAAEvvB,EAAEigM,GAAGlgB,MAAM//K,EAAEigM,GAAG4G,KAAY30L,GAAGqd,EAAE4gQ,IAAID,IAAI,KAAK,EAAE,OAAOE,IAAI,KAAK,EAAE,OAAOC,IAAI,QAAQ,OAAO,KAAM,CA7XtF+pD,CAAI9qG,GAAGtvO,EAAEqB,GAAG,CACzM,SAASg5U,IAAIr6U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEoiL,GAAI3nL,EAAED,EAAEmS,GAAGqd,EAAE,IAAIm8H,GAAIirC,GAAI32L,EAAEuvB,EAAErd,EAAEqd,GAAGA,EAAEuL,EAAE6jR,GAAIzsS,EAAEqd,GAAGA,EAAEvvB,EAAE2+S,GAAIzsS,EAAEnS,GAAGwvB,EAAExvB,GAAGuiU,OAAM/8T,EAAE2M,EAAEqd,EAAEvxB,EAAEqD,KAAM49P,MAAMgF,MAAM1+P,GAAG6xR,KAAK7nQ,EAAEhqB,GAAGxF,EAAEmS,EAAEnS,EAAE/B,EAAEqD,IAAK4iQ,KAAKlkQ,GAAGq3R,IAAK7nQ,EAAErd,EAAEA,EAAEqd,EAAEnd,IAAIqtK,MAAMG,KAAKrwJ,EAAEA,EAAErd,EAAEnS,EAAEqS,GAAGstK,GAAG,CACzM,SAAS46J,IAAIt6U,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAc,IAAZA,EAAEo9J,IAAI3yL,EAAE2yL,IAAQn4L,EAAE,IAAI4lK,GAAIshJ,GAAIjnT,IAAID,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAA0BgU,GAAjBqd,EAAEouJ,GAAGC,GAAI79K,GAAG,MAASwF,EAAEA,EAAEgqB,EAAExvB,EAAEwF,EAAEgqB,EAAEhqB,GAAGvF,GAAGkS,EAAE3M,EAAGA,EAAE2M,EAAGA,EAAE4oB,IAAIA,EAAE5oB,GAAiC,OAA9B3M,GAAG2yL,MAAM3yL,GAAG,GAAGu1B,GAAGo9J,MAAMp9J,GAAG,GAAU,IAAI07K,GAAIwB,GAAIzyM,GAAGyyM,GAAIl9K,GAAG,CAE1M,SAASguS,IAAI9oU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAA8C,IAA1CgqB,EAAErd,EAAElS,EAAEE,EAAEF,EAAsCuF,EAAE,IAAI8+J,GAAxC,IAAI8wF,GAAI5V,GAAIrtO,EAAElS,GAAGkS,EAAEA,EAAEqd,EAAErd,EAAE4oB,EAAE,IAAoBv1B,EAAE2M,EAAE3M,EAAExF,EAAEk/K,MAAsD,GAA5CqqC,GAAI/jN,EAAE2M,EAAE3M,EAAExF,EAAEk/K,OAAfl/K,EAAqB49K,GAAGp4K,EAAExF,EAAEs7M,GAAG91M,EAAEgqB,EAAEhqB,EAAE2M,KAAK,KAAUqd,EAAEvvB,GAAGuvB,EAAgB,OAAbs5S,IAAI7oU,EAAEkS,EAAEnS,EAAEqD,IAAU,EAAM,OAAO,CAAK,CAC1M,SAASm3U,IAAIv6U,GAAG,IAAIkS,EAAE,OAAc,IAAL,GAALlS,EAAEgtN,IAAiBmqH,IAAIn3U,IAAGkS,EAAE,IAAI47M,GAAI5gC,MAAMltL,EAAEA,GAAG48M,GAAIA,IAAK1qM,EAAElS,GAAG,KAAKkS,GAAGlS,EAAEA,GAAG,KAAK48M,GAAI/iB,GAAI+iB,GAAI/iB,GAAI+iB,GAAI/iB,GAAI+iB,GAAI/iB,IAAK3nL,EAAElS,GAAG,KAAKkS,GAAGlS,EAAEhC,GAAG,KAAKgC,EAAEoS,GAAG,OAAOpS,EAAE2S,GAAG,KAAK3S,EAAE86B,GAAG,KAAY5oB,EAAElS,EAAC,CAC3M,SAASw6U,IAAIx6U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAsC,IAApCA,EAAEskN,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAG3M,EAAEo4K,GAAG39K,EAAE2S,EAAE,KAAK5S,EAAE,EAAM4S,EAAE,EAAEA,EAAE3S,EAAEhC,IAAI2U,EAAU,GAAPmoB,EAAEv1B,EAAEoN,GAAMlP,EAAEwkN,GAAGntL,EAAEotL,MAAM,CAAC,GAAGnoN,GAAGwvB,EAAY,OAATkrT,IAAIz6U,EAAE2S,GAAUw5L,KAAMxuB,GAAGzrK,EAAE,IAAIq1M,KAAKzsL,EAAEA,EAAEggL,OAAO/6M,CAAC,CAAE,MAAMmzK,GAAI,IAAIgO,GAAI65C,IAAIxrM,EAAEyrM,IAAIj7N,GAAG,CAC3M,SAASwwT,IAAIvwT,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAQ,GAAM,IAAZmS,EAAElS,EAAEuvB,IAAc,GAAHrd,GAAS,GAAHA,EAAM,OAAOgyM,MAAMA,MAAMw2H,IAAyB,IAAhB36U,EAAE46U,IAAI36U,GAAGuvB,EAAE,KAAoB,IAARrd,EAAElS,EAAEuvB,IAAU,GAAHrd,GAAS,GAAHA,GAAUqd,IAAM20L,MAAMA,MAAwBssG,IAAjCjhS,EAAqB,IAAI00L,GAAI,GAAUlkN,GAAGA,EAAEwvB,GAAEihS,IAAIjhS,EAAEorT,IAAI36U,IAAI,OAAOD,CAAE,CAE3M,SAASsgQ,IAAGnuP,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,IAAIpN,EAAE,EAAEu1B,EAAE5oB,EAAEhU,OAAOqH,EAAEu1B,EAAEv1B,IAAI,CAACoN,EAAET,EAAE3M,GAAG,IAAIoN,EAAE,GAAGA,EAAE,GAAG69M,OAAOjhM,EAAEs8M,GAAGt8M,EAAE5c,IAAIA,EAAE,GAAG69M,IAAI,CAAC,MAAMxwN,KAAY,IAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,IAAkD,MAAMkzK,GAAIlzK,KAAvDD,EAAEC,IAAE+kL,KAAKmmE,GAAGrhE,GAAG9pL,EAAE,KAAK49K,GAAG59K,EAAE,KAAK66U,KAAK76U,EAAoB,CAAC,CAAC,OAAOwvB,CAAC,CAC5M,SAASs5S,IAAI7oU,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAEu1B,EAAwF,IAAtFvL,GAAGrd,EAAEqd,EAAErd,EAAEA,EAAE+sK,MA8yBzC,SAAaj/K,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAI+6B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAmO,IAAjOhgL,EAAEnR,EAAEuvB,EAAEhsB,EAAE2O,EAAEqd,EAAEA,EAAE42K,GAAIh1L,EAAEnR,EAAEA,EAAE,GAAGD,EAAEomM,GAAI5iM,EAAEvD,EAAEkS,EAAE,GAAG+B,EAAE0pK,GAAGqtI,IAAIhrT,GAAGg6Q,KAAME,MAAMv+D,KAAKF,KAAK,IAAI54K,EAAE86I,GAAGqtI,IAAIhrT,EAAEm6Q,KAAKx+D,KAAKF,KAAK,IAAIpzL,EAAEs1J,GAAGqtI,IAAI94S,EAAEgoQ,KAAKv+D,KAAKF,KAAK,IAAItqB,EAAExT,GAAGqtI,IAAI94S,EAAEioQ,KAAKx+D,KAAKF,KAAK,IAAI/oM,EAAE8nP,GAAIvmP,EAAE1O,GAAGqkB,EAAE4wO,GAAI33N,EAAElwB,GAAGkB,EAAE2mP,GAAInyO,EAAE9iB,GAAGq/B,EAAE41N,GAAIrpE,EAAEx+K,GAAG8yT,IAAIzlU,EAAED,EAAEwD,GAAWlC,EAAE,EAAEnB,GAARyS,EAAEkB,GAAU3V,OAAOmD,EAAEnB,IAAImB,EAAU+wP,GAALz/O,EAAEtR,GAAS4S,GAAG,IAAQH,EAAE,EAAE1Q,GAARK,EAAEmhC,GAAU1mC,OAAO4V,EAAE1Q,IAAI0Q,EAAUu+O,GAAL5uP,EAAEqQ,GAAS+uB,GAAc,IAAX4iS,IAAIvzT,EAAEqd,EAAEpe,GAAW6B,EAAE,EAAEgB,GAARhW,EAAE0U,GAAUxU,OAAO8U,EAAEgB,IAAIhB,EAAUo/O,GAALp0P,EAAEgV,GAASqV,GAAG,IAAQjW,EAAE,EAAExS,GAARk7B,EAAElR,GAAU1rB,OAAOkU,EAAExS,IAAIwS,EAAUigP,GAALv3N,EAAE1oB,GAAS++K,EAAG,CA9yBrc0pJ,CAAI3oU,EAAElS,EAznCrD,SAAaA,EAAEkS,GAAG,OAAOA,EAAElS,EAAEkS,EAAE+sK,KAAKtB,GAAG39K,EAAEkS,EAAEmpM,GAAGnpM,GAAG,IAAIA,GAAGlS,EAAEkS,EAAE+sK,KAAKj/K,EAAEA,EAAE29K,GAAG0pB,GAAIrnM,EAAEuF,EAAE2M,EAAElS,EAAEkS,EAAE+sK,KAAK,GAAG,GAAG,CAynC1C67J,CAAI5oU,EAAEqd,EAAErd,EAAEqd,IAAIuL,EAAE5oB,EAAElS,EAAEuvB,EAAEnsB,EAAEpD,EAAEA,EAAE86B,GAAGm4G,EAAK3/H,KAAKugB,IAAI7zB,EAAEA,EAAE86B,GAAG5oB,EAAElS,EAAEE,EAAEF,GAAOuF,EAAEo4K,GAAG4qB,IAAIr2L,EAAElS,GAAGgoM,MAAM+yI,MAAM,IAAIp/H,KAAKp2M,EAAEg2M,MAAuBxT,GAAdpqB,GAAGp4K,EAAEk2M,KAAK,IAAUmoF,KAAKl2E,MAAM,GAAO,CAC5M,SAASstH,IAAIh7U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEA,EA0Z5B,SAAavF,GAAG,IAAIkS,EAAEqd,EAAEA,EAAE,KAAKrd,EAAEyrK,GAAG0pB,GAAIrnM,EAAE2S,EAAE,GAAG,IAAI,EAAE,CAAS,GAAG6/M,GAAXjjM,EAAErd,EAAEnS,EAAE/B,GAAYgqM,MAAM+hI,MAAO,OAAOpsJ,GAAG4qB,IAAIh5K,EAAEw6S,KAAK,IAAI/rU,EAAE,GAAGuxB,EAAEluB,IAAI49P,MAAMgF,MAAM74C,IAAG,IAAI0jB,GAAG7hB,GAAGm1E,GAAI7yQ,GAAGvvB,EAAE27M,KAAK,IAAIpoE,KAAOrhI,EAAEyrK,GAAGwtC,GAAG,IAAI2jB,GAAG7hB,GAAGm1E,GAAI7yQ,GAAGvvB,EAAE27M,KAAK,IAAIpoE,KAAM,SAAS,GAAGhkH,EAAEluB,GAAG4iQ,IAAK,OAAO,IAAK,OAAS10O,GAAGA,EAAEluB,IAAI49P,MAAMgF,MAAM,OAAO10O,CAAC,CA1Z/P0rT,CAAI/oU,GAAG61L,GAAI71L,GAAG81L,MAAM8oC,KAAKvrO,GAAMA,IAAGxF,EAAEm4L,IAAMg7C,GAAIlzO,EAAE86B,EAAEv1B,KAAKxF,EAAE49K,GAAGk9B,GAAGq4B,GAAIlzO,EAAE86B,EAAEv1B,IAAI,IAAIvF,GAAuBiiL,GAAIk6B,GAAG5T,IAA3Bh5K,EAAEouJ,GAAG0pB,GAAIn1L,EAAES,EAAE,GAAG,IAAiBo+N,QAAQp6C,GAAI32L,EAAEuF,EAAEyyM,GAAI/kE,EAAK3/H,KAAKsgB,IAAI+pJ,GAAG4qB,IAAIh5K,EAAEshN,KAAK,IAAI7wO,EAAED,KAAK,CAC5M,SAASm7U,IAAIl7U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAIr3B,EAAS,IAAPyO,EAAE9O,GAAG,EAAMK,EAAEunT,IAAI94S,GAAG8nQ,KAAMG,MAAMx+D,KAAKl4M,EAAE83M,MAAuB,IAAIh2M,EAAE,IAAIogK,GAAxBgY,GAAGl6K,EAAEg4M,KAAK,IAAoB9oM,GAAGpN,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAiCgU,IAAR4oB,GAAhB/6B,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAQxF,EAAE/B,KAAS88B,EAAE13B,EAAE,EAAEmsB,EAAEs4L,GAAG9nN,GAAG+6B,EAAE13B,EAAE,GAAG83U,IAAIl7U,EAAE86B,EAAEvL,IAAKrd,EAAE9O,EAAE,CAAC,CAC5M,SAAS+3U,IAAIn7U,GAAG,IAAIkS,EAAE5N,KAAKirB,EAAE,IAAIkqJ,GAAIn1K,KAAKw2B,EAAE96B,EAAEuF,EAAEjB,KAAKiB,EAAEvF,EAAED,EAAEuE,KAAKtG,EAAEgC,EAAE2S,EAAErO,KAAKvE,EAAEC,EAAEuvB,EAAEjrB,KAAK4N,EAAElS,EAAEkS,EAAE5N,KAAKjD,EAAErB,EAAEoS,EAAE9N,KAAKtE,EAAEA,EAAEA,EAAGA,EAAEhC,EAAiEsG,KAAK8N,EAAEpS,EAAEhC,EAAvEsG,KAAK8N,EAAmB,IAAIq1L,GAApBv1L,EAAEyrK,GAAGsL,GAAIyoG,KAAI,GAAa/zG,GAAG+pB,GAAIx1L,EAAEA,EAAEhU,QAAQ,GAAG,GAAkBoG,KAAKqO,EAAE3S,EAAE86B,CAAC,CAE5M,SAASmhS,IAAIj8T,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAE,KAAGvL,GAAGrd,EAAE,GAAsB,IAAZ3M,GAAGgqB,EAAErd,GAAG,EAAE,EAAMnS,EAAE,EAAEA,EAAEwF,IAAIxF,EAAM09M,GAAIvrM,EAAEnS,EAAEC,EAAEuvB,EAAErxB,QAAf48B,EAAuB6iJ,GAAG39K,EAAEuvB,EAAErd,EAAEnS,GAAG,IAAKq0O,GAAIp0O,EAAEkS,EAAEnS,GAAG09M,GAAIluL,EAAExvB,EAAE,EAAEC,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAEA,EAAExvB,EAAE,GAAG,MAAM09M,GAAIluL,EAAExvB,EAAE,EAAEC,EAAEuvB,EAAErxB,QAAQ8B,EAAEuvB,EAAEA,EAAExvB,EAAE,GAAG+6B,CAAE,CAE7M,SAASsgT,IAAIp7U,GAAG,IAAIkS,EAAE5N,KAAK8N,EAAE,IAAIkgK,GAAIhuK,KAAKw2B,EAAE,IAAI27I,GAAInyK,KAAK4N,EAAmB,IAAIu1L,GAApBv1L,EAAEyrK,GAAGsL,GAAIue,KAAI,GAAa7pB,GAAG+pB,GAAIx1L,EAAEA,EAAEhU,QAAQ,GAAG,GAAIoG,KAAKvE,EAAEk+K,GAAGmV,IAAGsW,IAAI,IAAIjqB,MAAMlB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC1/C,IAAI/mB,IAAIL,IAAImnB,IAAIjnB,OAAO1hL,OAAO,GAAG,GAAGoG,KAAKqO,EAAE3S,CAAC,CAC7M,SAASq7U,IAAIr7U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAE,GAAe,GAAZ2M,EAAEqd,EAAErxB,OAAU,CAAoB,IAAnBqxB,EAAEkjT,IAAIzyU,EAAEkS,GAAG3M,GAAE,GAAagqB,GAAGkiT,IAAIzxU,EAAEkS,GAAE,GAAM3M,GAAE,EAAKgqB,EAAEkjT,IAAIzyU,EAAEkS,GAAG3M,GAAGksU,IAAIzxU,EAAEkS,GAAE,GAAOnS,EAAE8yS,GAAI3gS,GAAKlS,EAAEkS,GAAGlS,EAAEkS,EAAE6lF,GAAGh4F,GAAGC,EAAEA,EAAEi/S,GAAIj/S,GAAGy9M,GAAI,EAAEvrM,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAE,GAAG,MAAM8rT,IAAIr7U,EAAED,EAAE,CAAC,CAC7M,SAASszS,IAAIrzS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAA6B,GAA3BxF,EAAEygR,GAAIxgR,EAAEgoN,KAAK91M,IAAGqd,EAAErd,EAAElS,EAAE8iP,MAAU,EAAE,CAAC,IAAI/iP,EAAG,MAAMmzK,GAAI,IAAI2O,GAAIy5J,IAAIppU,EAAEqpU,MAAW,IAAGx7U,EAAE47P,KAA2C,MAAMzoF,GAAI,IAAI2O,GAAI4iF,IAAI1kQ,EAAEg/L,KAAK2jH,OAAlEn9S,EAAEvF,EAAE22N,GAAG52N,KAAM,EAAEC,EAAEq8P,GAAG92P,GAAG0jB,IAAIjpB,EAAED,EAA2C,MAAM0iT,GAAIziT,EAAEuvB,EAAExvB,EAAG,CAC7M,SAASkgQ,IAAIjgQ,GAAG,IAAIkS,EAAEqd,EAAgJ,GAA9IA,EAAE,KAAKrd,GAAE,EAAS23K,GAAG7pL,EAAE,OAAMkS,GAAE,EAAKqd,EAAEouJ,GAAG39K,EAAE,KAAKA,GAAMkS,GAAM23K,GAAG7pL,EAAE,OAAMkS,GAAE,EAAKqd,EAAE,GAAGouJ,GAAG39K,EAAE,KAAKA,GAAOkS,GAAM23K,GAAG7pL,EAAE,OAAMkS,GAAE,EAAKqd,EAAE,GAAGouJ,GAAG39K,EAAE,KAAKA,IAAOkS,EAAG,MAAMghK,GAAI,IAAIkO,GAAImrJ,MAAM,OAAOh9S,CAAC,CAC7M,SAASisT,IAAIx7U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,GAAGC,EAAE86B,EAAE,CAAC,KAAM5oB,EAAEqpM,MAA+B,GAAG1xB,GAAZ9pL,GAAhBwvB,EAAEouJ,GAAGzrK,EAAEupM,KAAK,KAAQyM,KAAa,KAAwB,IAAlBvqC,GAAG59K,EAAE,IAAIy1K,GAAGyhE,QAAWj3O,EAAEuF,GAAGxF,EAAEijT,MAAM9uR,KAAY,GAARn0B,EAAEusN,OAAkB,MAAR/8L,EAAEurL,KAAmB,OAAP5oM,EAAEo7M,MAAY,EAAM,OAAO,CAAK,CAAM,OAAOp7M,EAAEqpM,IAAK,CAC7M,SAASkgI,IAAIz7U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,GAAGC,EAAE86B,EAAE,CAAC,KAAM5oB,EAAEo+M,MAA+B,GAAGzmC,GAAZ9pL,GAAhBwvB,EAAEouJ,GAAGzrK,EAAEo7M,KAAK,KAAQpF,KAAa,KAAwB,IAAlBvqC,GAAG59K,EAAE,IAAIy1K,GAAGyhE,QAAWj3O,EAAEuF,GAAGxF,EAAEijT,MAAM9uR,KAAY,GAARn0B,EAAEusN,OAAkB,MAAR/8L,EAAEurL,KAAmB,OAAP5oM,EAAEupM,MAAY,EAAM,OAAO,CAAK,CAAM,OAAOvpM,EAAEo+M,IAAK,CAC7M,SAASorH,IAAI17U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAA4C,IAA1CA,EAAE+pN,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAGnS,EAAE,EAAE0D,EAAEzD,EAAEhC,EAAEuH,EAAEo4K,GAAG39K,EAAE2S,EAAE,KAASA,EAAE,EAAEA,EAAE3S,EAAEhC,IAAI2U,EAAU,GAAPmoB,EAAEv1B,EAAEoN,GAAM3U,EAAEiqN,GAAGntL,EAAEotL,MAAM,CAAC,GAAG34L,GAAGxvB,EAAG,OAAO4S,IAAI5S,EAAE0D,EAAEkP,EAAE,CAAC,CAAE,GAAG4c,GAAGxvB,EAAG,OAAO0D,EAAO,MAAMyvK,GAAI,IAAIgO,GAAI65C,IAAIxrM,EAAEyrM,IAAIj7N,GAAI,CAI7M,SAASqpS,MAAMA,IAAI10J,EAAI40J,IAAI,IAAIx0F,GAAI0pF,IAAI,GAAG+K,IAAI,IAAIz0F,GAAI,UAAU,GAAG00F,IAAI,IAAI10F,GAAI,MAAM,GAAG20F,IAAI,IAAI30F,GAAI,SAAS,GAAG40F,IAAI,IAAI50F,GAAI,SAAS,GAAG60F,IAAI,IAAI70F,GAAI,OAAO,GAAG80F,IAAI,IAAI90F,GAAI,UAAU,GAAG+0F,IAAI,IAAI/0F,GAAI,SAAS,EAAE,CAC9M,SAAS3M,IAAInoM,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE5S,EAAEkzI,EAAK3/H,KAAKsgB,IAAI5zB,EAAEuvB,EAAErd,EAAEqd,GAAGuL,EAAEm4G,EAAK3/H,KAAKsgB,IAAI5zB,EAAED,EAAEmS,EAAEnS,IAAGwF,EAAE0tI,EAAK3/H,KAAKugB,IAAI7zB,EAAEuvB,EAAEvvB,EAAEkS,EAAEA,EAAEqd,EAAErd,EAAEA,IAAyCnS,IAAGwvB,EAAExvB,EAAEA,EAAEwF,EAAEA,EAAEgqB,IAAnD5c,EAAEsgI,EAAK3/H,KAAKugB,IAAI7zB,EAAED,EAAEC,EAAEA,EAAEkS,EAAEnS,EAAEmS,EAAElS,IAA4B86B,IAAGvL,EAAEuL,EAAEA,EAAEnoB,EAAEA,EAAE4c,GAAEo2M,GAAI3lO,EAAED,EAAE+6B,EAAEv1B,EAAExF,EAAE4S,EAAEmoB,EAAE,CAC9M,SAASulN,MAAMA,IAAI3rG,EAAI4rG,IAAI/hE,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC8nJ,IAAI1lJ,IAAIF,IAAI3B,IAAIkC,IAAItC,IAAIm5D,MAAMyuF,IAAIr9J,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC8nJ,IAAI,QAAQ1lJ,IAAIxD,IAAI,gBAAgBopJ,IAAIt9J,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC8nJ,IAAI,WAAW,UAAUrnJ,MAAMuuI,IAAI,IAAI/9F,EAAG,CAC9M,SAASqkF,IAAInpT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAE,GAAG5oB,GAAGqd,EAAN,CAAgBxvB,EAAEmS,EAAE,GAAG2tK,GAAI7/K,EAAED,EAAEwvB,IAAGhqB,EAAExF,EAAEwF,KAAcotN,GAAI3yN,GAAV86B,EAAE/6B,EAAEA,GAAUmS,EAAE4oB,EAAE/6B,GAAG8/K,GAAI7/K,EAAEuF,EAAE3F,GAAGG,EAAEw/O,GAAIh6O,UAAUA,GAAGxF,EAAEwvB,EAAE,GAAGsrM,GAAI76N,EAAED,EAAEwvB,IAAGhqB,EAAExF,EAAEwF,KAAcstN,GAAI7yN,GAAV86B,EAAE/6B,EAAEA,GAAUmS,EAAE4oB,EAAE/6B,GAAG86N,GAAI76N,EAAEuF,EAAE3F,GAAGG,EAAEw/O,GAAIh6O,UAAUA,EAAhK,CAAkK,CAC/M,SAASwyS,IAAI/3S,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,GAAG+B,EAAE+6B,EAAEvL,EAAExvB,EAAE4S,EAAE4c,GAAG,EAAG,IAAe9rB,EAAE,EAAEzF,GAAf2U,EAAE3S,EAAEA,EAAEA,EAAEuvB,IAAWrxB,OAAOuF,EAAEzF,IAAIyF,EAAUkzL,GAAI52L,EAAX+6B,EAAEnoB,EAAElP,GAAW,IAAIojS,GAAI7mS,EAAE86B,EAAEvL,IAA8E,OAAzEhqB,EAAEo4K,GAAGk9B,GAAGq4B,GAAInzO,EAAE+6B,EAAE5oB,IAAI,MAAOA,EAAE,EAAE3M,EAAEgqB,EAAEhqB,EAAEu1B,EAAO,GAALv1B,EAAEgqB,GAAM40I,GAAIwZ,GAAG0pB,GAAI9hM,EAAEvF,EAAEuF,EAAE2M,GAAG,MAAa3M,CAAC,CAC/M,SAAS8yR,MAAMA,IAAI3jJ,EAAI6jJ,IAAI,IAAIrnF,GAAI,eAAe,GAAGsnF,IAAI,IAAItnF,GAAI,aAAa,GAAGunF,IAAI,IAAIvnF,GAAI,aAAa,GAAGwnF,IAAI,IAAIxnF,GAAI,wBAAwB,GAAGynF,IAAI,IAAIznF,GAAI,eAAe,GAAG0nF,IAAI,IAAI1nF,GAAI,eAAe,EAAE,CAE/M,SAAS4qI,IAAI97U,EAAEkS,GAAG,IAAIqd,EAAE,OAAe,GAAZvvB,EAAEuvB,EAAErxB,SAAwBqxB,EAAEi9R,KAAK/uG,GAAI,EAAEz9M,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAE,GAAG,KAAKA,EAAEvxB,GAAGk5N,KAAS3nM,IAAI03P,MAAMhmE,MAAM1xL,GAAG2xL,KAAwB6sD,GAAI53B,GAAI,IAAI/rB,GAAI,KAAK,IAAI7c,GAAIvtM,EAAE,KAAK,IAAIupJ,IAAK,IAAIyjB,GAAI96J,IAAG,CAChN,SAAS6pU,IAAI/7U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAE,IAAI96B,EAAEkS,EAAEA,EAAES,GAAG,CAA8C,IAA7C3S,EAAEkS,EAAEA,EAAES,IAAG,IAAK5S,EAAEwvB,KAAOxvB,EAAE,IAAI+xQ,IAAKlsC,GAAI7lO,EAAEmS,EAAEA,GAAO4oB,EAAE96B,EAAEA,EAAEkS,EAAES,GAAGgpM,KAAK7gL,EAAEygL,OAAOh2M,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,MAAOvpM,GAAGA,GAAG6pU,IAAI/7U,EAAEuF,EAAE2M,EAAEnS,GAAGwF,EAAEgqB,GAAGrd,GAAG6pU,IAAI/7U,EAAEuF,EAAEgqB,EAAExvB,GAAG6lO,GAAI7lO,EAAEC,EAAEuF,GAAG,OAAOxF,CAAC,CAAC,OAAO,IAAI,CAChN,SAASg0P,MAAMA,IAAIr/G,EAAIotI,IAAI,IAAIjuE,GAAI,YAAY,GAAGkuE,IAAI,IAAIluE,GAAI,WAAW,GAAG2nF,IAAI,IAAI3nF,GAAI,iBAAiB,GAAG4nF,IAAI,IAAI5nF,GAAI,eAAe,GAAG6nF,IAAI,IAAI7nF,GAAI,qBAAqB,GAAGmgD,IAAI,IAAIngD,GAAI,oBAAoB,EAAE,CAChN,SAASm0B,IAAIhoO,EAAEkS,GAAG,GAAG23K,GAAG33K,EAAE,KAAM,OArqGhC,SAAalS,EAAEkS,GAAG,OAAOgvR,GAAG/oD,GAAGn4O,EAAE2S,GAAGT,EAAE,CAqqGC8pU,CAAIh8U,EAAE29K,GAAGzrK,EAAE,KAAU,GAAG23K,GAAG33K,EAAE,KAAM,OApqG1E,SAAalS,EAAEkS,GAAG,OAAOgvR,GAAG/oD,GAAGn4O,EAAEoS,GAAGF,EAAE,CAoqG2C+pU,CAAIj8U,EAAE29K,GAAGzrK,EAAE,MAAW,GAAG23K,GAAG33K,EAAE,KAAM,OAtqGrH,SAAalS,EAAEkS,GAAG,OAAOgvR,GAAG/oD,GAAGn4O,EAAED,GAAGmS,EAAE,CAsqGsFgqU,CAAIl8U,EAAE29K,GAAGzrK,EAAE,MAAW,MAAMghK,GAAI,IAAI2O,GAAI82B,IAAIC,IAAG,IAAIt6B,GAAIC,GAAGC,GAAGsQ,IAAG,GAAG3Q,IAAI,EAAE,EAAE,CAACjsK,OAAQ,CAChN,SAASk8M,IAAGpuN,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAmD,GAAjDjB,KAAKw2B,EAAE96B,EAAkCswN,GAAG/gM,EAAdhqB,GAArBxF,EAAE49K,GAAG+5B,GAAI13M,EAAEkS,EAAEA,GAAG,MAAYnS,EAAEC,EAAJ,GAAiBuvB,IAAIhqB,EAAE,EAAE,GAAgC,IAA5BjB,KAAKiB,EAAGxF,EAAOA,EAAEwvB,EAAP,KAASjrB,KAAKvE,EAAEwF,EAAQgqB,IAAIhqB,GAAG4sP,GAAG7tP,WAA+B,IAAnBA,KAAKirB,EAAGxvB,EAAOA,EAAEmS,EAAP,KAAeqd,KAAI,GAAG2iO,GAAG5tP,MAAOA,KAAK4N,EAAEA,EAAE5N,KAAKtE,EAAE,IAAI,CACjN,SAASm8U,IAAIn8U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEmS,EAAElS,EAgY5B,SAAaA,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAiB,GAAfA,EAAE03N,GAAIz3N,EAAEkS,EAAEA,EAAEA,IAAOnS,EAAG,MAAMmzK,GAAI,IAAI4O,GAAI,2DAA2DiwH,GAAI7/R,EAAEA,EAAEyrK,GAvvGrI,SAAa39K,EAAEkS,GAAG,OAAOg3K,GAAGuzC,IAAIz8N,EAAEA,EAAEkS,GAAE,GAAM,CAuvG4FkqU,CAAIp8U,EAAEkS,EAAEA,EAAEA,GAAG,MAAM6/R,GAAI7/R,EAAEA,EAAEyrK,GAxvGnK,SAAa39K,EAAEkS,GAAG,OAAOg3K,GAAGqzC,IAAIv8N,EAAEA,EAAEkS,GAAE,GAAM,CAwvG0HmqU,CAAIr8U,EAAEkS,EAAEA,EAAEA,GAAG,QAAQytL,KAAMztL,EAAEA,GAAmBlS,EAAEA,EAAEkS,EAAEA,EAAE4oB,GAAG6iJ,GAAG6+C,GAAIx8N,EAAEkS,EAAEA,EAAEA,GAAG,IAAIqd,EAAEouJ,GAAG2+C,GAAIt8N,EAAEkS,EAAEA,EAAEA,GAAG,IAAMqd,IAAIvvB,EAAEA,EAAEuvB,EAAEuL,GAAG5oB,EAAEA,EAAE,CAhYhQoqU,CAAIt8U,EAAEkS,OAAIqd,EAAEouJ,GAAG6+C,GAAIx8N,EAAEkS,EAAEA,EAAEA,GAAG,MAASqd,GAAGvvB,EAAEA,EAAEkS,EAAEA,EAAE4oB,MAAMvL,EAAEvvB,GAAGuvB,EAAEvvB,GAAGkS,EAAEA,EAAElS,GAAGuvB,EAAEA,EAAEs4L,GAAG31M,EAAEA,MAAGnS,EAAE49K,GAAG2+C,GAAIt8N,EAAEkS,EAAEA,EAAEA,GAAG,MAASlS,EAAEA,EAAED,EAAE+6B,IAAI5oB,EAAEA,KAAKnS,EAAEC,GAAGD,EAAEC,GAAGkS,EAAEA,EAAElS,GAAGkS,EAAEA,EAAEqd,EAAEs4L,GAAG9nN,GAAG4uN,GAAI3uN,EAAEkS,EAAEA,EAAEA,GAAa,CACjN,SAASqqU,IAAIv8U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAuB,GAArBwvB,EAAEouJ,GAAG6oB,GAAIxmM,EAAEkS,EAAEA,GAAG,KAAQyrK,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAImvB,KAAsB,OAAhB9R,EAAE3vB,EAAEsS,EAAE,OAAEqd,EAAE3vB,EAAE2vB,EAAE,GAASA,EAAE3vB,EAAEsS,EAAElS,EAAE6iC,EAAE3wB,EAAEqd,EAAE3vB,EAAE2vB,EAAEvvB,EAAE6iC,EAAEtT,EAAEvvB,EAAE4pB,EAAEq2K,IAAIq3B,MAAMC,OAAOilH,IAAIx8U,EAAEkS,GAAGnS,EAxhB7J,SAAaC,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAqC,IAAnCA,EAAE,EAAExF,EAAE49K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAIypM,KAAW57M,EAAEw7M,MAAuBh2M,IAAjBgqB,EAAEouJ,GAAG59K,EAAE07M,KAAK,MAAU17M,EAAEmS,EAAEqd,EAAErd,EAAEqtL,KAAKv/L,EAAEuvB,EAAExvB,EAAEwvB,EAAExvB,EAAEw7M,OAAOh2M,GAAGvF,EAAEuD,GAAG,OAAOgC,CAAC,CAwhBck3U,CAAIz8U,EAAEkS,GAAGwqU,IAAI18U,EAAEkS,KAAK6gR,MAAME,OAAOlzR,GAAG,EAAEC,EAAEuD,GAAGgsB,EAAEvvB,EAAEA,EAAED,CAAC,CACjN,SAAS48U,IAAI38U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAuB,GAArBwvB,EAAEouJ,GAAG6oB,GAAIxmM,EAAEkS,EAAEA,GAAG,KAAQyrK,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAImvB,KAAsB,OAAhB9R,EAAE3vB,EAAEG,EAAE,OAAEwvB,EAAE3vB,EAAEI,EAAE,GAASuvB,EAAE3vB,EAAEG,EAAEC,EAAE6iC,EAAE9iC,EAAEwvB,EAAE3vB,EAAEI,EAAEA,EAAE6iC,EAAE7iC,EAAEA,EAAE4pB,EAAEq2K,IAAIq3B,MAAMC,OAAOqlH,IAAI58U,EAAEkS,GAAGnS,EAxhB7J,SAAaC,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAqC,IAAnCA,EAAE,EAAExF,EAAE49K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAIypM,KAAW57M,EAAEw7M,MAAuBh2M,IAAjBgqB,EAAEouJ,GAAG59K,EAAE07M,KAAK,MAAU17M,EAAEA,EAAEwvB,EAAErd,EAAEqtL,KAAKrtL,EAAEqd,EAAExvB,EAAEC,EAAED,EAAEw7M,OAAOh2M,GAAGvF,EAAEuD,GAAG,OAAOgC,CAAC,CAwhBcs3U,CAAI78U,EAAEkS,GAAGwqU,IAAI18U,EAAEkS,KAAK6gR,MAAME,OAAOlzR,GAAG,EAAEC,EAAEuD,GAAGgsB,EAAEvvB,EAAEkS,EAAEnS,CAAC,CACjN,SAAS+8U,IAAI98U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAY,IAAVA,EAAE,IAAIw3I,GAAQvyK,EAAE,IAAI4lK,GAAIzzJ,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyB63K,GAAIj7I,EAAE,IAAI8zK,GAA1Br/K,EAAEouJ,GAAGC,GAAI79K,GAAG,KAAoB,IAAOg2K,GAAIj7I,EAAE,IAAI8zK,GAAIr/K,GAAE,IAAqBkuJ,IAAbl4K,EAAE,IAAIolP,GAAI3qP,IAASA,EAAEA,GAAG66P,GAAI//N,EAAE96B,EAAEkS,EAAE,IAAIosK,GAAIC,GAAGC,GAAGu+J,IAAG,GAAG5+J,IAAI,IAAI,EAAE,CAAC54K,KAAK,CACjN,SAASy3U,IAAIh9U,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAI3U,EAAEoU,EAAE/Q,EAAEyS,EAAIlU,EAAEM,EAAEkD,EAAE4Q,EAA4I,OAA1IhW,EAAEgC,EAAEA,EAAEJ,EAAEI,EAAEkS,EAAEE,EAAEF,EAAElS,EAAEE,EAAEgS,EAAEA,EAAE7Q,EAAEkuB,EAAEvvB,EAAEoD,EAAEmsB,EAAErd,EAA+G,IAAI+iM,KAArGn6K,EAAE98B,EAAEkC,EAAEN,EAAEwS,IAA4C/Q,GAAhEyS,EAAE/T,EAAEC,KAAkB2S,EAAEtR,GAAlB2S,EAAEjU,EAAEmS,GAAkB9O,EAAE0Q,IAA0C9V,EAAEoU,KAA1C7M,GAAGvH,EAAEoU,IAAIhP,EAAE4Q,IAAIpU,EAAEM,IAAImB,EAAEyS,KAA4BgnB,GAAG13B,EAAE4Q,GAAGrB,GAAG/S,EAAEM,IAAIqF,EAAqB,CACjN,SAAS03U,IAAIj9U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAE,IAAGvF,EAAED,EAAEmS,EAAE9O,GAAT,CAAgD,IAA5BpD,EAAED,EAAEmS,EAAE9O,IAAG,EAAKpD,EAAEA,EAAEkS,EAAE9O,IAAG,EAASrD,EAAE,IAAI+uO,GAAG7hB,GAAGm1E,GAAIlwR,GAAGlS,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAAuBqpN,GAAlB75L,EAAEouJ,GAAGwtC,GAAGprN,GAAG,OAAwBwF,EAAEgqB,EAAExvB,EAAE/B,EAAEgC,EAAEA,EAAEuF,EAAEnC,GAAG2yK,GAAI/1K,EAAEkS,EAAEqd,GAAG0tT,IAAIj9U,EAAEuF,IAAGvF,EAAEA,EAAEkS,EAAE9O,IAAG,CAA7J,CAAkK,CACjN,SAAS85U,IAAIl9U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAM,OAAJA,EAAE,EAAS49K,GAAG4qB,IAAIr2L,GAAGmrJ,MAAM0uI,MAAM,KAAKp5R,GAAG,KAAK,EAAE5S,EAAE,GAAGwvB,EAAEvvB,EAAEA,IAAIA,EAAEA,EAAE,MAAM,KAAK,EAAED,GAAGwvB,EAAE,MAAM,KAAK,EAAExvB,EAAEwvB,EAAE,MAAM,KAAK,EAAExvB,EAAE,EAAEwvB,EAAEvvB,EAAEkS,IAAIlS,EAAEkS,EAAgD,OAA7CsgN,GAAItgN,GAAG81L,MAAM6oC,QAAQ9wO,GAAG49K,GAAG4qB,IAAIr2L,EAAE2+N,KAAK,IAAI7wO,GAAUD,CAAC,CACjN,SAASo9U,IAAIn9U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAA8E,IAA5EvL,EAAEsqM,GAAG3nN,EAAElS,GAAG+1K,GAAI/1K,EAAEJ,EAAEsS,GAAG4oB,EAAE96B,EAAEoD,EAAEg6U,GAAGlrU,GAAGA,EAAEE,GAAGpS,EAAEoD,EAAEi6U,KAAKl2B,GAAInnT,EAAEuF,EAAEu1B,GAAGqsR,GAAInnT,EAAEoS,EAAE0oB,GAAGw7M,GAAIt2O,GAAOuF,EAAE0lN,GAAG9kH,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,CAAC,IAAIxV,GAAIz2J,GAAG,IAAI22J,GAAI32J,OAAOk5M,IAAG7lN,IAAKxF,EAAE49K,GAAGwtC,GAAG5lN,GAAG,IAAIgqB,EAAEpoB,GAAGpH,IAAIo9U,IAAIn9U,EAAED,EAAEwvB,EAAG,CACjN,SAAS+tT,IAAIt9U,GAAG,IAAIkS,EAAInS,EAA8B,OAA1B49K,GAAG26B,IAAIt4M,GAAG+/J,MAAM28I,MAAM,IAASz8G,IAAIq3B,MAAMmyD,OAAO1pR,EAAE49K,GAAG26B,IAAIt4M,EAAEqiR,KAAK,IAAInwQ,EAAE,IAAIyuM,GAAIhjC,GAAG26B,IAAIt4M,EAAE48S,KAAK,IAAO78S,EAAEkgM,IAAIssG,MAAMmI,QAAOxiS,EAAElS,GAAG,IAAIkS,EAAElS,EAAE,IAAIkS,EAAEA,GAAG,IAAIA,EAAEA,EAAE,KAAWA,GAAc,IAAI02K,EAAI,CACjN,SAAS20J,IAAIv9U,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,IAAIC,EAAEkS,EAAE,CAAW,IAAVnS,EAAE,IAAI6yJ,GAAQrjI,EAAE,IAAIohM,GAAI6sH,IAAIx9U,IAAIuvB,EAAEhqB,GAAGgqB,EAAEvxB,EAAEihL,MAAmC,KAA5B/sK,EAAEyrK,GAAG25I,IAAI/nS,GAAG,KAAOimJ,GAAGyhE,MAAShsD,GAAIlrL,EAAEmS,GAAGm7O,GAAIttP,GAAGC,EAAEkS,EAAE,IAAI6sM,IAAKphC,GAAG0O,GAAIC,IAAKytD,KAAMC,KAAK95O,GAAG,GAAG,IAAIH,EAAE/B,GAAG+B,EAAE4S,GAAGw4O,GAAInrP,GAAGkS,IAAI,CAAC,CAAC,OAAOlS,EAAEkS,CAAC,CACjN,SAASsyO,IAAIxkP,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAEu1B,EAAIr3B,EAAEzF,EAAEoU,EAAEpU,EAAE2/K,GAAGspF,IAAG33B,GAAGp9N,EAAE7Q,GAAG48K,GAAGupB,IAAGg/C,IAAI,GAAG,EAAE,EAAE,IAAI,KAAyCo7E,IAAI5hU,EAAxCoS,EAAEF,EAAES,EAAE4c,EAAE6yO,GAAIlwP,EAAElU,EAAE,IAAIuH,EAAE48P,GAAIjwP,EAAElU,EAAE,MAAiD4jU,IAAI5hU,EAAEoS,EAApC0oB,EAAEsnO,GAAIlwP,EAAElU,EAAE,IAAIyF,EAAE0+P,GAAIjwP,EAAElU,EAAE,MAA4BkU,EAAElS,EAAEuvB,EAAErd,EAAEqd,EAAEhqB,IAAO2M,EAAElS,EAAE86B,EAAE5oB,EAAEqd,EAAE9rB,EAAE,CAClN,SAASg6U,IAAIz9U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAA8E,IAA5E+mQ,IAAItyQ,EAAE,0BAA0B,GAAGvvB,EAAEA,EAAS,GAAPkS,EAAEA,EAAEA,EAAK,EAAEA,EAAEA,EAAEA,EAAE3M,EAAE,KAAKxF,EAAE++P,IAAI5sP,EAAEA,EAAE,IAAU3M,GAAGxF,EAAEmS,GAAGnS,EAAEA,EAAEwvB,GAAmB0yJ,GAAIk6B,GAAG5T,IAAvBztK,EAAE6iJ,GAAGohF,GAAIh/P,GAAG,KAAkB2mS,MAAMg3C,UAAUn4U,EAAEu1B,GAAKv1B,GAAGo4U,IAAI39U,EAAE,IAAI0tK,GAAInoK,GAAGgqB,GAAGgzQ,IAAIhzQ,EAAE,CAClN,SAAS8vR,IAAIr/S,GAAS,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAA0K,OAA1L65S,MAAmCltS,GAAM,IAAvBnS,EAAEu/M,GAAIt/M,EAAEoxN,IAAI,MAAapxN,EAAEA,EAAEyzD,OAAO,EAAE1zD,GAAGwvB,GAAM,GAAJxvB,EAAM,KAAKC,EAAEyzD,OAAO1zD,EAAE,GAAGwF,EAlzDtG,SAAavF,EAAEkS,GAAG,OAAOyrK,GAAM,MAAHzrK,EAAQ2oM,GAAGq4B,GAAIlzO,EAAE86B,EAAE,OAAOqyK,GAAIntM,EAAE2S,EAAET,GAAG,IAAI,CAkzDmC0rU,CAAIC,IAAI3rU,GAAO3M,EAAuD,MAAHgqB,IAAUhqB,EAAE80S,GAAI90S,GAAGs7J,GAAItxI,GAAGA,MAA3EhqB,EAwjC1H,SAAavF,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAE+S,GAAE,EAAKmB,EAAE,KAAK/T,EAAE,KAAKwF,EAAE,KAAK2M,GAAE,EAAMtS,EAAEk+U,IAAI1rU,EAAE,KAAK0oB,EAAE,KAAS98B,EAAEu2T,IAAIv0T,EAAVyD,EAAE,EAAYs6U,IAAIC,KAAQhgV,EAAEgC,EAAE9B,SAAS05L,GAAI55L,EAAEgC,EAAE9B,QAAyB,IAAjB8B,EAAEqf,WAAWrhB,MAAS8V,EAAE9T,EAAEyzD,OAAOhwD,EAAEzF,EAAEyF,GAAGA,EAAEzF,EAAE,GAAsC,GAApCuxB,EAAK,MAAHzb,GAASksL,GAAIi+I,IAAInqU,EAAE1C,eAAkBme,EAAE,CAAuB,IAAO,IAA7BvxB,EAAEgC,EAAEsuN,YAAY,OAAgB,MAAMp7C,GAAI,IAAI2O,GAAI,yBAAyBlvK,GAAE,EAAK5S,EAAE+3L,GAAI93L,EAAEyD,IAAIzF,GAAGyF,EAAEzF,CAAC,MAASyF,GAAG,GAAG44N,GAAIr8N,EAAEyzD,OAAOhwD,EAAE,KAAKvF,QAAQ,OAAYF,EAAEu2T,IAAIv0T,EAAXyD,GAAG,EAAY0hO,IAAIC,KAAKrlO,EAAEC,EAAEyzD,OAAOhwD,EAAEzF,EAAEyF,GAAGA,EAAEzF,GAAa,MAAH8V,GAAUrQ,GAAGzD,EAAE9B,SAAS05L,GAAIn0L,EAAEzD,EAAE9B,QAAyB,IAAjB8B,EAAEqf,WAAW5b,MAAUkP,GAAE,GAA6B,IAAvB3U,EAAEuwN,GAAIvuN,EAAEoxN,IAAI,IAAI3tN,MAAWzF,EAAEgC,EAAE9B,QAAQ6B,EAAEC,EAAEyzD,OAAOhwD,EAAEzF,EAAEyF,GAAGA,EAAEzF,IAAMuxB,GAAG9rB,EAAEzD,EAAE9B,SAAS05L,GAAIn0L,EAAEzD,EAAE9B,QAAyB,IAAjB8B,EAAEqf,WAAW5b,MAASzF,EAAEu2T,IAAIv0T,EAAEyD,EAAE,EAAE0hO,IAAIC,MAAK/jO,EAAErB,EAAEyzD,OAAOhwD,EAAE,EAAEzF,GAAGyF,EAAE,KAASvF,OAAO,GAAsB,IAAnBg7L,GAAI73L,EAAEA,EAAEnD,OAAO,KAAQqH,EAAElE,EAAEoC,EAAEzF,IAAMyF,EAAEzD,EAAE9B,SAAS05L,GAAIn0L,EAAEzD,EAAE9B,QAAyB,IAAjB8B,EAAEqf,WAAW5b,QAAWA,EAAEyO,GAAE,GAAK,GAAGzO,EAAEzD,EAAE9B,SAAS05L,GAAIn0L,EAAEzD,EAAE9B,QAAyB,IAAjB8B,EAAEqf,WAAW5b,MAAUm0L,GAAIn0L,EAAEzD,EAAE9B,QAAyB,IAAjB8B,EAAEqf,WAAW5b,IAAQ,CAAW,IAAVuP,EAAE,IAAIs/J,GAAU7uK,EAAEzD,EAAE9B,SAAS05L,GAAIn0L,EAAEzD,EAAE9B,QAAyB,IAAjB8B,EAAEqf,WAAW5b,MAAUm0L,GAAIn0L,EAAEzD,EAAE9B,QAAyB,IAAjB8B,EAAEqf,WAAW5b,KAASzF,EAAEu2T,IAAIv0T,EAAEyD,EAAE0hO,IAAIC,KAAKrvD,GAAI/iK,EAAEhT,EAAEyzD,OAAOhwD,EAAEzF,EAAEyF,KAAIA,EAAEzF,GAAIgC,EAAE9B,SAAS05L,GAAIn0L,EAAEzD,EAAE9B,QAAyB,IAAjB8B,EAAEqf,WAAW5b,MAAU48S,GAAIrgT,IAAIyD,KAAKuP,EAAEuc,EAAEvc,EAAEuc,EAAErxB,QAAQ,KAAwCu8P,IAAIznP,EAAlCpT,EAAEq+K,GAAGoS,IAAGwD,IAAI,EAAE7gL,EAAEuc,EAAErxB,OAAO,EAAE,GAAW,CAAIuF,EAAEzD,EAAE9B,SAAS05L,GAAIn0L,EAAEzD,EAAE9B,QAAyB,IAAjB8B,EAAEqf,WAAW5b,OAA6B,IAApBzF,EAAEmzN,GAAInxN,EAAE,KAAKyD,MAAWzF,EAAEgC,EAAE9B,QAAQkU,EAAEpS,EAAEyzD,OAAOhwD,EAAEzF,EAAEyF,GAAGA,EAAEzF,GAA8C,OAA5CyF,EAAEzD,EAAE9B,SAAS48B,EAAEihL,GAAI/7M,IAAIyD,IAvM1xC,SAAazD,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAInoB,EAAE,GAAQ,MAAHT,GAAUgzN,GAAIhzN,EAAE6rU,IAAIC,KAAO,MAAM9qK,GAAI,IAAI2O,GAAI,mBAAmB3vK,IAAI,IAAIlS,KAAQ,MAAHuvB,IAA0B,GAAjB+vL,GAAI/vL,EAAE6hM,IAAI,MAAU7hM,EAAErxB,OAAO,IAAI05L,GAAI,EAAEroK,EAAErxB,QAAyB,IAAjBqxB,EAAElQ,WAAW,KAAU,MAAM6zJ,GAAI,IAAI2O,GAAI,uBAAuBtyJ,IAAI,GAAGvvB,IAAQ,MAAHkS,IAAS8tL,GAAIi+I,IAAI/rU,EAAEd,iBAAsB,MAAHme,GAAU21M,GAAI31M,EAAE41M,IAAIC,KAAO,MAAMlyD,GAAI,IAAI2O,GAAIq8J,IAAI3uT,IAAI,GAAGvvB,GAAM,MAAHkS,GAAS8tL,GAAIi+I,IAAI/rU,EAAEd,iBAjmC5W,SAAac,GAAS,GAAM,MAAHA,GAASA,EAAEhU,OAAO,GAAsB,IAAnBg7L,GAAIhnL,EAAEA,EAAEhU,OAAO,GAAQ,IAA+B,OAAY,MAArCmhT,IAAIvnH,GAAI5lL,EAAE,EAAEA,EAAEhU,OAAO,IAAaqH,CAAO,CAAC,MAAMvF,GAAY,IAAI6pL,GAAb7pL,EAAE8pL,GAAI9pL,GAAY,IAAI,MAAMkzK,GAAIlzK,EAAE,CAAE,OAAO,CAAK,CAimC+Mm+U,CAAI5uT,GAAI,MAAM2jJ,GAAI,IAAI2O,GAAIq8J,IAAI3uT,IAAI,IA9mD/Z,SAAavvB,GAAG,IAAIkS,EAAE,OAAM,MAAHlS,IAAoBkS,EAAElS,EAAE9B,QAAgB,IAAI05L,GAAI1lL,EAAE,EAAElS,EAAE9B,QAA2B,IAAnB8B,EAAEqf,WAAWnN,EAAE,MAAUgzN,GAAIllO,EAAEmlO,IAAIC,IAAI,CA8mDqSg5G,CAAIr+U,GAAI,MAAMmzK,GAAI,IAAI2O,GAAI,mBAAmB9hL,IAAI,IAzxDpd,SAAaC,GAAG,IAAIkS,EAAEqd,EAAE,GAAM,MAAHvvB,EAAQ,OAAO,EAAM,IAAIkS,EAAE,EAAEqd,EAAEvvB,EAAE9B,OAAOgU,EAAEqd,EAAErd,IAAK,IAAI+yN,GAAIjlO,EAAEkS,IAAI,OAAO,EAAM,OAAO,CAAI,CAyxDsWmsU,CAAI94U,GAAkE,MAA9DoN,EAAK,MAAHpN,EAAQ,yBAAyB,oBArzDngB,SAAavF,GAAG,IAAIkS,EAAEqd,EAAE,GAAM,MAAHvvB,EAAQ,OAAO,KAAK,IAAIkS,EAAE,EAAEqd,EAAEvvB,EAAE9B,OAAOgU,EAAEqd,EAAErd,IAAK,IAAI+yN,GAAIjlO,EAAEkS,IAAI,OAAOlS,EAAEkS,GAAG,OAAO,IAAI,CAqzDuaosU,CAAI/4U,GAAS2tK,GAAI,IAAI2O,GAAIlvK,IAAI,GAAQ,MAAHmoB,IAA0B,GAAjBwkL,GAAIxkL,EAAEs2L,IAAI,KAAW,MAAMl+C,GAAI,IAAI2O,GAAI,kBAAkB/mJ,GAAI,CAuM+pByjT,CAAI5rU,EAAEmB,EAAE/T,EAAEwF,EAAE3F,EAAEwS,GAAU,IAAIkoS,IAAI3nS,EAAEmB,EAAE/T,EAAEwF,EAAE2M,EAAEtS,EAAEwS,EAAE0oB,EAAE,CAxjCltC0jT,CAAItsU,GAjvDhI,SAAalS,EAAEkS,EAAEqd,GAAUouJ,GAAM,MAAHzrK,EAAQ2uO,IAAI7gP,EAAE86B,EAAE,KAAKvL,GAAGsiO,GAAI7xP,EAAE2S,EAAET,EAAEqd,GAAG,IAAI,CAivD4DkvT,CAAIZ,IAAI3rU,EAAE3M,GAAM,MAAHgqB,IAAUhqB,EAAE80S,GAAI90S,EAAEgqB,KAA+ChqB,CAAC,CAClN,SAASurQ,IAAI9wQ,GAAG,IAAIyD,EAAYyO,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,GAAtBs0M,KAAyBp9B,GAAG7pL,EAAE,IAAK,IAAIuF,EAAE,EAAExF,EAAEC,EAAEi/K,KAAK,EAAE15K,EAAExF,IAAIwF,IAAIxF,EAAG0D,EAAEzD,EAAEq7M,GAAG91M,GAAGvF,EAAEoH,GAAG7B,EAAEvF,EAAEq7M,GAAGt7M,IAAIC,EAAEoH,GAAGrH,EAAE0D,QAAiC,IAAxByO,EAAElS,EAAE6iO,KAAK/nM,EAAE96B,EAAE0yN,GAAG1yN,EAAEi/K,MAAY/sK,EAAEwqP,KAAK5hO,EAAEkyQ,MAAMz9Q,EAAErd,EAAEupM,KAAK9oM,EAAEmoB,EAAEwyL,KAAKp7M,EAAE05R,GAAGj5R,GAAGmoB,EAAE8wQ,GAAGr8Q,EAAI,CAEnN,SAASmvT,IAAI1+U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAyB,IAAvBA,EAAE,EAAYk/P,GAAV7nO,EAAE,IAAIs3I,GAAUlgK,GAAS4oB,EAAE5oB,GAAG4oB,EAAEvL,GAAoC,IAAhB9rB,GAAG2+T,KAApBzvT,EAAEgrK,GAAG41D,GAAIz4M,GAAG,MAAc/6B,EAAE4S,EAAEpN,GAAOA,EAAE,IAAIogK,GAAIhzJ,EAAET,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAS6B,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAIgqB,EAAEouJ,GAAG0pB,GAAIrnM,EAAEkS,EAAEnS,EAAEqD,GAAG,MAAOyQ,IAAIpQ,GAAGi7U,IAAI1+U,EAAEuvB,IAAK,OAAO9rB,CAAC,CACnN,SAASk7U,IAAI3+U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAE+qS,GAAIhsS,MAAM4N,IAAIw7O,KAAMC,KAAKhmE,GAAIrjL,KAAKoO,EAAE1S,EAAEuvB,GAAGo4J,GAAIrjL,KAAKf,EAAEvD,EAAEuvB,GAAUo4J,GAAPp4J,GAAGo+N,IAAQrpP,KAAKoO,EAAWpO,KAAKf,EAAdvD,EAAED,GAAmBs6U,IAAI/1U,KAAKtE,GAAyBq2U,IAAI/xU,KAA1BvE,EAAE4+S,GAAI3+S,EAAEuvB,GAAGhqB,EAAEo5S,GAAI3+S,EAAED,GAAgBwF,GAAGjB,KAAKpE,GAAGoiU,MAAMrvL,EAAK3/H,KAAKskB,IAAI73B,EAAEwF,GAAG,GAAI,CACnN,SAASq5U,IAAI5+U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAI+6B,EAAEnoB,EAAElP,EAAEzF,EAAwB,GAAM,OAA5ByF,EAAEk6K,GAAG8sC,GAAIzqN,EAAEA,EAAE,GAAG,OAAkB,IAAQ86B,EAAE,EAAEnoB,EAANlP,EAAUvF,OAAO48B,EAAEnoB,IAAImoB,EAAG,KAAK01L,KAAMzwN,EAAEwvB,EAAiB,IAAJ,EAAPvvB,EAAEA,EAAEgtN,MAAUhvN,EAAE,IAAIghP,GAAIh/O,EAAEuvB,EAAErd,GAAGnS,EAAEutS,GAAGtvS,IAAG6rL,GAAG9pL,EAAE,KAAK49K,GAAG59K,EAAE,KAAK8+U,GAAG7+U,EAAEA,GAAGD,EAAE++U,MAAM9+U,EAAEA,GAAGD,EAAEmmB,GAAG,KAAK,CAMnN,SAAS64T,IAAI/+U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAiC,IAA/B5S,EAAE,IAAIw1P,GAAIv1P,EAAEoS,EAAEmd,EAAErxB,QAAQqxB,EAAE,KAASuL,EAAE,IAAI6qI,GAAI3lK,EAAEoS,GAAG0oB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,SAASqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAS1oB,GAAGmd,IAAGxvB,EAAEmS,GAAGnS,EAAEwvB,GAAGyvT,IAAIj/U,EAAEwvB,EAAErd,GAAG8zP,GAAIjmQ,GAAGwvB,EAAEhqB,EAAE6M,IAAEO,EAAE40L,IAAIhiM,KAASk9P,GAAI1iQ,EAAE4S,GAAS5S,EAAEmS,GAAGnS,EAAEwvB,GAAGyvT,IAAIj/U,EAAEwvB,EAAErd,EAAE,CAEpN,SAAS+sU,IAAIj/U,GAAG,IAAIkS,EAAM3M,EAAEu1B,EAAyC,IAAvC5oB,EAAEuxP,GAAG,IAAI30B,GAAG7hB,GAAGm1E,GAAIpiS,GAAGA,EAAE27M,KAAK,IAAIpoE,KAAUhuI,EAAE,IAAIupO,GAAG7hB,GAAGi1E,GAAIliS,GAAGA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG7lN,IAA4Bu1B,EAAE2oO,GAAG,IAAI30B,GAAG7hB,GAAGm1E,GAApCzkH,GAAGwtC,GAAG5lN,GAAG,IAAQgqB,EAAEvxB,GAAwBgC,EAAE27M,KAAK,IAAIpoE,KAAMrhI,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAE4oB,GAAG,OAAOk9K,GAAI9lM,EAAE,CACpN,SAASgtU,IAAIl/U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAkE,IAAhEkvR,IAAItyQ,EAAE,yBAAyB,GAAGhqB,EAAE,KAAKu1B,EAAE,IAAI2+I,GAAI15K,EAAE++P,IAAI5sP,EAAEA,EAAE,IAAU3M,GAAGxF,EAAEmS,GAAGnS,EAAEA,EAAEwvB,GAAmB0yJ,GAAIk6B,GAAG5T,IAAvB51L,EAAEgrK,GAAGohF,GAAIh/P,GAAG,KAAkB2mS,MAAMg3C,UAAUn4U,EAAEoN,GAAGoqM,GAAIjiL,EAAEv1B,EAAEu1B,EAAEvL,EAAErd,EAAE4oB,EAAEvL,GAAG4vT,IAAIn/U,EAAE86B,EAAEorQ,GAAI32Q,EAAE,IAAIgzQ,IAAIhzQ,EAAE,CACpN,SAAS6vT,IAAIp/U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAE/6B,EAAE49K,GAAG26B,IAAIt4M,GAAG+/J,MAAM80K,MAAM,IAAItvU,EAAE,EAAEu1B,EAAE,EAAE5oB,EAAElS,EAAEuvB,EAAEvvB,IAAID,EAAEkgM,IAAIs3F,MAAMK,MAAOryR,GAAG2M,EAAElS,EAAEuvB,EAAEvvB,GAAG,EAAGD,EAAEkgM,GAAG43F,OAAOtyR,EAAE2M,EAAElS,EAAEuvB,EAAEvvB,IAAIkS,EAAEA,EAAEqd,EAAErd,IAAInS,EAAEkgM,IAAIs3F,MAAME,MAAO38P,GAAG5oB,EAAEA,EAAEqd,EAAErd,GAAG,EAAGnS,EAAEkgM,GAAGy3F,OAAO58P,EAAE5oB,EAAEA,EAAEqd,EAAErd,IAAIizS,IAAInlT,EAAEuF,EAAEu1B,EAAE,CACpN,SAASmqQ,IAAIjlS,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,GAAG62K,GAAG7pL,EAAE8sN,GAAG,KAAKynC,IAAIpJ,GAAIxtE,GAAG39K,EAAE8sN,GAAG,KAAK,GAAGjiC,GAAI7qL,EAAEuvB,GAAGvvB,EAAE86B,EAAEnoB,EAAEgyS,GAAI3kT,EAAEyD,GAAGqhT,GAAI9kT,EAAEhC,GAAG0mT,GAAI1kT,EAAEoS,GAAGwyS,GAAI5kT,EAAEqB,GAAG09R,GAAI/+R,EAAE8T,GAAGuxS,GAAIrlT,EAAEgT,GAAGgsR,GAAIh/R,GAAE,GAAM48R,GAAI58R,EAAEuF,GAAGvF,EAAEg/D,GAAGlkC,GAAGgkQ,GAAI9+R,EAAEkS,GAAM,MAAHnS,IAAUC,EAAEhC,EAAE,KAAKw8M,GAAIx6M,EAAED,GAAG,CACpN,SAASs/U,IAAIr/U,GAAG,IAAIkS,EAAEqd,EAAE,GAAGvvB,EAAE86B,EAAE,CAAC,KAAM96B,EAAEJ,EAAE,GAAE,CAAiC,GAAGiqL,GAAZt6J,GAAvBrd,EAAEyrK,GAAG39K,EAAEqB,EAAEg6M,GAAGr7M,EAAEJ,EAAE,GAAG,KAAQsoN,KAAa,KAAwB,IAAlBvqC,GAAGpuJ,EAAE,IAAIimJ,GAAGyhE,QAAWj3O,EAAEuF,GAAGgqB,EAAEyzR,MAAM9uR,KAAY,GAAR3E,EAAE+8L,OAAkB,MAARp6M,EAAE4oM,KAAY,OAAO,IAAY96M,EAAEJ,CAAE,CAAC,OAAO,CAAK,CAAM,OAAOI,EAAEJ,EAAE,CAAE,CACpN,SAAS+8P,IAAG38P,EAAEkS,EAAEqd,GAAG,GAAGvvB,EAAE,EAAG,OAAOs8P,IAAGC,IAAIh+E,GAAGC,GAAGsQ,IAAG,GAAG3Q,IAAI,EAAE,EAAE,CAAC5uJ,EAAEyoL,GAAIh4M,MAAW,GAAGkS,EAAE,EAAG,MAAMghK,GAAI,IAAI2O,GAAI26E,IAAItqP,IAAS,OAAOoqP,IAAG,6CAA6C/9E,GAAGC,GAAGsQ,IAAG,GAAG3Q,IAAI,EAAE,EAAE,CAAC5uJ,EAAEyoL,GAAIh4M,GAAGg4M,GAAI9lM,KAAM,CACrN,SAAS6wQ,IAAI/iR,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAMr3B,EAAEzF,EAAEoU,EAAQ,GAAJrS,EAAEwvB,EAAO,GA9xBjD,SAAavvB,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAE,IAAIpN,EAAE2M,EAAE,EAAE3M,EAAEgqB,IAAIhqB,EAAG,IAAIu1B,EAAEv1B,EAAEu1B,EAAE5oB,GAAGnS,EAAEm5S,GAAGl5S,EAAE86B,EAAE,GAAG96B,EAAE86B,IAAI,IAAIA,EAAGnoB,EAAE3S,EAAE86B,GAAG6rK,GAAG3mM,EAAE86B,EAAE96B,EAAE86B,EAAE,IAAI6rK,GAAG3mM,EAAE86B,EAAE,EAAEnoB,EAAI,CA8xBxE2sU,CAAIptU,EAAEqd,EAAExvB,EAAE+6B,QAAuE,GAApCioP,IAAI7wQ,EAAElS,EAA/BhC,EAAEuxB,EAAEhqB,EAAQ6M,EAAEpU,IAARyF,EAAE1D,EAAEwF,GAASvH,GAAG,IAAgBuH,EAAEu1B,GAAGioP,IAAI7wQ,EAAElS,EAAEoS,EAAE3O,GAAG8B,EAAEu1B,GAAMA,EAAEo+Q,GAAGl5S,EAAEoS,EAAE,GAAGpS,EAAEoS,KAAK,EAAG,KAAMmd,EAAExvB,GAAG4mM,GAAGz0L,EAAEqd,IAAIvvB,EAAEhC,WA93BpL,SAAagC,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,GAAG,IAAIzF,EAAM,IAAJA,EAAEuxB,EAAQuL,EAAEnoB,GAAG3U,GAAG+B,GAAGmS,EAAEqd,GAAG9rB,EAAEy1S,GAAGl5S,EAAEkS,GAAGlS,EAAEhC,KAAK,EAAE2oM,GAAGphM,EAAEu1B,IAAI96B,EAAEkS,MAAMy0L,GAAGphM,EAAEu1B,IAAI96B,EAAEhC,KAAM,CA83B8EuhV,CAAIv/U,EAAEhC,EAAEoU,EAAE3O,EAAEyO,EAAEqd,EAAExvB,EAAE+6B,EAAE,CACrN,SAAS0kT,IAAIx/U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAY,IAAVA,EAAE,IAAI+sK,GAAQvyK,EAAE,IAAI4lK,GAAI3lK,EAAEuvB,EAAEvvB,EAAEkS,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,IAAOmS,EAAEotL,GAAG/vK,KAAIwmJ,GAAIxwK,EAAE,IAAI+oM,GAAI/+K,GAAE,IAAOwmJ,GAAIxwK,EAAE,IAAI+oM,GAAI/+K,GAAE,MA3fnJ,SAAavvB,GAAG,IAAIkS,EAAInS,EAA0D,IAAxD09K,GAAIz9K,EAAEkS,EAAElS,GAAGA,EAAEA,EAAEi+K,GAAGwhK,IAAGthK,IAAI,GAAGn+K,EAAEuvB,EAAEA,EAAEvvB,EAAEkS,EAAEqd,EAAErxB,OAAO,EAAE,GAAGgU,EAAE,EAAMnS,EAAE,IAAI4lK,GAAI3lK,EAAEuvB,EAAEA,EAAEvvB,EAAEkS,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAI79K,GAAG,IAAM+6B,EAAE5oB,GAAI,CA2fMwtU,CAAI1/U,EAAEuF,GAAGs1P,GAAIt1P,EAAEvF,EAAED,EAAE,IAAIu+K,GAAIC,GAAGC,GAAGu+J,IAAG,GAAG5+J,IAAI,IAAI,EAAE,CAACn+K,EAAEuF,KAAK,CAGrN,SAASkzS,IAAIz4S,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAA6B,GAA3Bv1B,EAAEi7Q,GAAIxgR,EAAEgoN,KAAK91M,IAAGnS,EAAEmS,EAAElS,EAAE8iP,MAAU,EAAE,CAAC,IAAIv9O,EAAG,MAAM2tK,GAAI,IAAI2O,GAAIy5J,IAAIppU,EAAEqpU,MAAW,IAAGh2U,EAAEo2P,KAA+C,MAAMzoF,GAAI,IAAI2O,GAAI4iF,IAAIl/P,EAAEw5L,KAAK2jH,OAAtE5nR,EAAE96B,EAAE22N,GAAGpxN,KAAM,EAAEvF,EAAEkvP,GAAGp0N,EAAEvL,GAAGzG,IAAI9oB,EAAEuF,EAAEgqB,EAA2C,MAAMo2B,GAAI3lD,EAAED,EAAEwF,EAAEgqB,EAAG,CACrN,SAASqxR,IAAI1uS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EA5xBb96B,EA4xB+B,GAAhBD,EAAE49K,GAAGzrK,EAAE,IAAIytU,KAAW,IAAiF,GAA7Ep6U,EAAE,MAAKgqB,EAAE86J,KAAKX,KAAMC,KAAKi2J,IA5xBvD,OAAX5/U,EA4xB0ED,GA5xBlEwF,EAAgBvF,IAAQA,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAI+qR,IAAe,IAAN,IAAJt6S,EAAE86B,GAAU96B,EAAEhC,EAAEgC,EAAEA,EAAEA,EAAED,EAAY,IAAL,GAAJC,EAAE86B,GAAS96B,EAAEoS,EAAEpS,EAAE2S,EAAE,OAAc3S,EAAEuvB,QA4xB1BuL,EAAEvL,EAAEs7G,QAAWtlI,EAAEu1B,EAAE+kT,GA3xHrH,SAAa7/U,GAAG,OAAO6gK,GAAI7gK,GAAGA,CAAC,CA2xHyF8/U,CAAI//U,EAAEwF,KAAUA,GAAGA,GAAG2M,EAAG,OAAO0uS,IAAIr7S,EAAG,CAAC,MAAMvF,GAAY,IAAI6pL,GAAb7pL,EAAE8pL,GAAI9pL,GAAY,IAAI,MAAMkzK,GAAIlzK,EAAE,CAAE,OAAOkS,CAAC,CACrN,SAAS2uO,IAAI7gP,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAA6D,GAA3DA,EAAK,MAAHT,EAAQ,EAAElS,EAAEkS,EAAEu7B,GAAGv7B,GAAqD,IAAlD3M,EAAmB,OAAhBxF,EAAEC,EAAEA,EAAEK,IAAIsS,IAAW,IAAIrU,MAAMyB,GAAQ7B,OAAW8B,EAAEA,EAAE4M,IAAI+F,EAAEpN,QAAqB,GAAbu1B,EAAE8wN,GAAI5rP,EAAEkS,EAAE3M,GAAS,OAAOu1B,EAAEgoM,GAAGvzM,GAA+C,OAA3Co3K,GAAGphM,EAAEA,EAAErH,OAAO,IAAIiwM,GAAIj8L,EAAEqd,MAAMvvB,EAAEuvB,EAAEulN,GAAI90O,EAAEkS,GAAU,IAAI,CACtN,SAAS6tU,IAAI//U,EAAEkS,GAAG,IAAMnS,EAAsL,OAApLi8P,GAAIh8P,EAAEA,GAAGk0O,GAAIl0O,EAAEA,GAAGosQ,KAAMC,KAAKA,KAAKn4B,GAAIl0O,EAAEA,EAAEssQ,IAAIA,KAAe7kC,GAAV1nO,EAAE,IAAI2kM,GAAU4nE,KAAK4P,KAAME,MAAMrhE,GAAGzC,IAAIpmM,GAAGmsJ,MAAMumK,SAAS7pH,IAAI0hE,KAAME,OAAOl1C,GAAI1nO,EAAEusQ,IAAI+P,KAAK50C,GAAI1nO,EAAEusQ,IAAIgQ,KAAKn8D,GAAIngN,EAAEA,EAAED,GAAKovU,IAAInvU,EAAEA,EAAEkS,EAAW,CACtN,SAASijS,IAAGn1S,GAAG,IAAIA,EAAG,OAAOwjL,KAAKC,IAAG,IAAIvxK,EAAElS,EAAEggV,QAAQhgV,EAAEggV,UAAUhgV,EAAE,GAAGkS,IAAIlS,EAAE,CAAC,IAAIuvB,EAAEygO,WAAU99O,GAAG,OAAOqd,EAAEA,EAAErd,GAAG+9O,UAAU/9O,EAAE,CAAM,OAAGlS,aAAa1B,OAAO0B,aAAaizI,EAAK30I,MAAc,IAAIokK,GAAG1iK,GAAe,IAAI6iK,GAAG7iK,EAAG,CACvN,SAASigV,IAAIjgV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAA4H,OAA1HA,EAAE96B,EAAEE,GAAuBqF,GAArBxF,EAAE49K,GAAG6oB,GAAIxmM,EAAEoD,EAAEmsB,GAAG,MAASvxB,GAAIkU,EAAEguU,IAAIngV,GAAGwF,EAAEvF,EAAEmgV,IAAIpgV,GAAGwF,EAAE2M,EAAE+gI,EAAK3/H,KAAKugB,IAAItuB,EAAE2M,EAAE4oB,EAAE96B,GAAGuF,EAAE2M,EAAE4oB,EAAE96B,IAAIkS,IAAI3M,EAAE2M,EAAE4oB,EAAE96B,GAAGuF,EAAEgqB,IAAIhqB,EAAE2M,EAAE4oB,EAAE96B,GAAG,EAASuvB,EAAE5c,GAAG,KAAK,EAAEpN,EAAExF,GAAGwF,EAAEvF,EAAE,MAAM,KAAK,EAAEuF,EAAExF,EAAE+6B,EAAE5oB,EAAGkuU,IAAIrgV,GAAGsgV,IAAItgV,EAAE,CACvN,SAASugV,IAAItgV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAA4H,OAA1HA,EAAE96B,EAAEE,GAAuBqF,GAArBxF,EAAE49K,GAAG6oB,GAAIxmM,EAAEoD,EAAEmsB,GAAG,MAASvxB,GAAIkU,EAAEguU,IAAIngV,GAAGwF,EAAEvF,EAAEmgV,IAAIpgV,GAAGwF,EAAEvF,EAAEizI,EAAK3/H,KAAKugB,IAAItuB,EAAEvF,EAAE86B,EAAE5oB,GAAG3M,EAAEvF,EAAE86B,EAAE5oB,IAAIA,IAAI3M,EAAEvF,EAAE86B,EAAE5oB,GAAG3M,EAAExF,IAAIwF,EAAEvF,EAAE86B,EAAE5oB,GAAG,EAASqd,EAAE5c,GAAG,KAAK,EAAEpN,EAAEgqB,GAAGhqB,EAAE2M,EAAE,MAAM,KAAK,EAAE3M,EAAEgqB,EAAEuL,EAAE96B,EAAGogV,IAAIrgV,GAAGsgV,IAAItgV,EAAE,CAGvN,SAAS6nT,IAAI5nT,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,GAAlBy2M,MAAqBr/N,EAAEA,EAAE,EAAG,OAAO,EAAoC,IAAJnS,EAAfwvB,EAAEouJ,GAAGohF,GAAhBjkO,EAAEgkO,IAAI5sP,EAAE,IAAe,GAAa4oB,EAAE5oB,GAAG4oB,EAAE/6B,EAAEwvB,GAAE,CAAgB,GAAfhqB,EAAEo4K,GAAGohF,GAAIjkO,GAAG,IAAQ02M,GAAIxxO,EAAED,KAAIyxO,GAAIxxO,EAAEuF,GAAK,OAAO,EAAMxF,EAAEwF,CAAC,CAAC,SAAKisO,GAAIxxO,EAAED,KAAIyxO,GAAIxxO,EAAEuvB,GAA6B,CACvN,SAAS+nR,IAAIt3S,EAAEkS,GAAG,IAAYS,EAAElP,EAAEzF,EAAEoU,EAAI0B,EAAuK,OAAnK,KAASnB,EAAE2wO,GAANxvO,EAAE9T,EAAU,KA1gD7D,SAAaA,EAAEkS,GAAGiwM,GAAIniN,EAAK,MAAHkS,GAAS0sN,IAAK/9D,GAAI3uJ,GAAGA,KAAKvC,OAAOkxJ,GAAI3uJ,GAAGA,IAAI,GAAG2uJ,GAAI3uJ,GAAGA,GAAG,CA0gDFquU,CAAX,IAAI/wK,GAAIt9J,GAASlS,EAAE2S,GAAGlP,EAAE6/O,GAAIxvO,EAAE,KAzgDlG,SAAa9T,EAAEkS,GAAGkwM,GAAIpiN,EAAK,MAAHkS,GAAS0sN,IAAK/9D,GAAI3uJ,GAAGA,KAAKvC,OAAOkxJ,GAAI3uJ,GAAGA,IAAI,GAAG2uJ,GAAI3uJ,GAAGA,GAAG,CAygDmCsuU,CAAX,IAAI/wK,GAAIv9J,GAASlS,EAAEyD,GAAGzF,EAAEslP,GAAIxvO,EAAEk5K,KAxgDvI,SAAahtL,EAAEkS,GAAG8vM,GAAIhiN,EAAK,MAAHkS,GAAS0sN,IAAK/9D,GAAI3uJ,GAAGA,KAAKvC,OAAOkxJ,GAAI3uJ,GAAGA,IAAI,GAAG2uJ,GAAI3uJ,GAAGA,GAAG,CAwgDwEuuU,CAAX,IAAI/wK,GAAIx9J,GAASlS,EAAEhC,GAAGoU,EAAEkxO,GAAIxvO,EAAEg5K,KAvgD5K,SAAa9sL,EAAEkS,GAAG+vM,GAAIjiN,EAAK,MAAHkS,GAAS0sN,IAAK/9D,GAAI3uJ,GAAGA,KAAKvC,OAAOkxJ,GAAI3uJ,GAAGA,IAAI,GAAG2uJ,GAAI3uJ,GAAGA,GAAG,CAugDgHwuU,CAAd,IAAI/wK,GAAIz9J,GAAYlS,EAAEoS,GAAGA,CAAW,CACvN,SAASmiP,IAAIv0P,EAAEkS,GAAGyuU,IAAI3gV,EAAEkS,GAAY,IAAJ,EAAJlS,EAAEkS,KAAUlS,EAAEA,EAAEA,EAAE,MAAe,IAAJ,EAAJA,EAAEkS,KAAUlS,EAAEA,EAAE86B,EAAE,MAAkB,IAAJ,EAAJ96B,EAAEkS,KAASlS,EAAEA,EAAE2S,EAAE,KAAK3S,EAAEA,EAAEhC,EAAE,MAAkB,IAAL,GAAJgC,EAAEkS,KAAUlS,EAAEA,EAAED,EAAE,KAAKC,EAAEA,EAAEuF,EAAE,MAAc,IAAJ,EAAJvF,EAAEkS,KAAUlS,EAAEA,EAAEkS,EAAE,MAAmB,IAAL,GAAJlS,EAAEkS,KAAUlS,EAAEA,EAAEoS,EAAE,KAAKpS,EAAEA,EAAEuvB,EAAE,KAAK,CAGvN,SAASqxT,IAAI5gV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,GAAM,MAAH96B,EAAS,OAAO+3L,IAA2B,IAAvBj9J,EAAE,IAAImzQ,GAAIjqH,IAAI,IAAI,KAAajkL,EAAE,EAAEwF,GAARgqB,EAAEvvB,GAAU9B,OAAO6B,EAAEwF,IAAIxF,EAAGmS,EAAEqd,EAAExvB,GAAI+6B,EAAE96B,EAAqB48M,GAAI9hL,EAAE96B,EAAE86B,EAAE5oB,GAA5B4oB,EAAE96B,EAAE,IAAI8tN,GAAIhzL,EAAE/6B,GAAiB28M,GAAI5hL,EAAE96B,EAAE,GAAGkS,GAAG,OAAQ4oB,EAAE96B,EAAkB,GAAZ86B,EAAEv1B,EAAErH,OAAU48B,EAAE96B,EAAEA,EAAE86B,EAAE96B,EAAEA,EAAG,GAAG86B,EAAEv1B,EAApCu1B,EAAEvL,CAAoC,CACxN,SAASsxT,IAAI7gV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,GAAM,MAAH96B,EAAS,OAAO+3L,IAA2B,IAAvBj9J,EAAE,IAAImzQ,GAAIjqH,IAAI,IAAI,KAAajkL,EAAE,EAAEwF,GAARgqB,EAAEvvB,GAAU9B,OAAO6B,EAAEwF,IAAIxF,EAAGmS,EAAEqd,EAAExvB,GAAI+6B,EAAE96B,EAAqB48M,GAAI9hL,EAAE96B,EAAE86B,EAAE5oB,GAA5B4oB,EAAE96B,EAAE,IAAI8tN,GAAIhzL,EAAE/6B,GAAiB28M,GAAI5hL,EAAE96B,EAAE,GAAGkS,GAAG,OAAQ4oB,EAAE96B,EAAkB,GAAZ86B,EAAEv1B,EAAErH,OAAU48B,EAAE96B,EAAEA,EAAE86B,EAAE96B,EAAEA,EAAG,GAAG86B,EAAEv1B,EAApCu1B,EAAEvL,CAAoC,CACxN,SAASuxT,IAAI9gV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,GAAM,MAAH96B,EAAS,OAAO+3L,IAA2B,IAAvBj9J,EAAE,IAAImzQ,GAAIjqH,IAAI,IAAI,KAAajkL,EAAE,EAAEwF,GAARgqB,EAAEvvB,GAAU9B,OAAO6B,EAAEwF,IAAIxF,EAAGmS,EAAEqd,EAAExvB,GAAI+6B,EAAE96B,EAAqB48M,GAAI9hL,EAAE96B,EAAE86B,EAAE5oB,GAA5B4oB,EAAE96B,EAAE,IAAI8tN,GAAIhzL,EAAE/6B,GAAiB28M,GAAI5hL,EAAE96B,EAAE,GAAGkS,GAAG,OAAQ4oB,EAAE96B,EAAkB,GAAZ86B,EAAEv1B,EAAErH,OAAU48B,EAAE96B,EAAEA,EAAE86B,EAAE96B,EAAEA,EAAG,GAAG86B,EAAEv1B,EAApCu1B,EAAEvL,CAAoC,CACxN,SAASwxT,IAAI/gV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,GAAM,MAAH96B,EAAS,OAAO+3L,IAA2B,IAAvBj9J,EAAE,IAAImzQ,GAAIjqH,IAAI,IAAI,KAAajkL,EAAE,EAAEwF,GAARgqB,EAAEvvB,GAAU9B,OAAO6B,EAAEwF,IAAIxF,EAAGmS,EAAEqd,EAAExvB,GAAI+6B,EAAE96B,EAAqB48M,GAAI9hL,EAAE96B,EAAE86B,EAAE5oB,GAA5B4oB,EAAE96B,EAAE,IAAI8tN,GAAIhzL,EAAE/6B,GAAiB28M,GAAI5hL,EAAE96B,EAAE,GAAGkS,GAAG,OAAQ4oB,EAAE96B,EAAkB,GAAZ86B,EAAEv1B,EAAErH,OAAU48B,EAAE96B,EAAEA,EAAE86B,EAAE96B,EAAEA,EAAG,GAAG86B,EAAEv1B,EAApCu1B,EAAEvL,CAAoC,CACxN,SAASoyQ,IAAI3hS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAA8B,IAA5B8rB,EAAEvvB,EAAEkS,EAAEqd,EAAErxB,OAAOqH,EAAE8hM,GAAIrnM,EAAEkS,EAAEA,GAAW,EAAFA,EAAI,EAAEqd,IAAoB9rB,EAAdq3B,EAAE,EAAE5oB,EAAE,GAAES,EAAEmoB,EAAE,GAAQvL,GAAGvvB,EAAEA,EAAEk5S,GAAG7xG,GAAIrnM,EAAEkS,EAAES,GAAG00L,GAAIrnM,EAAEkS,EAAE4oB,IAAI,IAAIr3B,EAAEkP,GAA9D5S,EAAiE0D,IAAMzD,EAAEA,EAAEk5S,GAAG3zS,EAAE8hM,GAAIrnM,EAAEkS,EAAEnS,IAAI,KAASq0O,GAAIp0O,EAAEkS,EAAEA,EAAEm1L,GAAIrnM,EAAEkS,EAAEnS,IAAImS,EAAEnS,EAAEq0O,GAAIp0O,EAAEkS,EAAEA,EAAE3M,EAAE,CACxN,SAAS29N,IAAIljO,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAInoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAA6C,IAAxC05M,GAAG/6M,KAAK+6M,GAAGxrL,KAAIvvB,EAAEA,EAAEkM,MAAMgG,EAAEA,EAAE3M,GAAG2M,EAAE,GAAElU,EAAEuxB,EAAM9rB,EAAEyO,EAAEE,EAAEF,EAAE3M,EAAE9B,EAAE2O,GAA+B7M,GAA3BoN,EAAEsgI,EAAK3/H,KAAKsgB,IAAInwB,EAAE,IAAM2O,IAAO3O,GAAEpC,EAAErB,EAAEkM,MAAMzI,EAAEkP,IAAK6O,OAAO,EAAE,EAAEzhB,EAAE+6B,EAAEv1B,EAAE,GAAGjH,MAAMM,UAAU4iB,OAAO/iB,MAAMT,EAAEqD,GAAGoC,EAAEkP,EAAE5S,GAAGwF,CAAE,CACxN,SAASy7U,IAAIhhV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAc,OAAZxF,EAAEwvB,EAAExvB,EAAEwF,EAAEgqB,EAAEhqB,EAAKvF,EAAE2S,EAAE5S,EAAEA,IAAIC,EAAEhC,EAAEkU,EAAEnS,IAAIC,EAAEhC,EAAEkU,EAAEnS,IAAIC,EAAEhC,EAAE+B,EAAEA,IAAIC,EAAE2S,EAAEpN,EAAExF,IAAIC,EAAEhC,EAAEkU,EAAEnS,IAAIC,EAAEhC,EAAEkU,EAAEnS,IAAIC,EAAEhC,EAAEuH,EAAExF,KAAOC,EAAEhC,EAAE+B,EAAEA,GAAGC,EAAEhC,EAAEuH,EAAExF,IAAgCC,EAAEhC,EAAE+B,EAAEA,GAAGC,EAAEhC,EAAEuH,EAAExF,EAA4B,CACxN,SAASshU,IAAIrhU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAiB,IAAf1D,EAAEC,EAAEA,EAAEuvB,EAAErxB,QAAY,EAA6E,IAA1EyU,EAAE3S,EAAEuvB,EAAExvB,EAAUwF,EAAE+kN,GAAIuQ,GAAI,IAAI5lB,IAAtBxxM,EAAEzD,EAAED,EAAEA,GAAsBC,EAAEyD,EAAEyO,GAAGS,GAAG,GAAG5S,EAAE,IAAI+6B,EAAE,IAAIm6K,GAAItiM,EAAE3S,EAAE2S,EAAET,GAAOqd,EAAE,IAAIo2I,GAAI3lK,EAAEA,GAAGuvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,SAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,MAAOxvB,EAAEC,EAAE86B,EAAE96B,EAAEkS,EAAEnS,EAAEmS,EAAE4oB,EAAE5oB,EAAE2tK,GAAI/kJ,EAAEv1B,EAAI,CACxN,SAAS07U,IAAIjhV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAQ,IAANA,EAAEs4K,IAAQx7I,EAAE,IAAI6qI,GAAIu7K,IAAIlhV,EAAEkS,IAAI4oB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAA0B,IAAjBqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAASr3B,EAAE,IAAIkiK,GAAIu7K,IAAIhvU,EAAEA,IAAIzO,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAASyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAAK1D,EAAEwyS,GAAIhtS,EAAEvF,EAAEuF,EAAE2M,EAAES,EAAE3S,EAAE2S,EAAET,EAAEqd,GAAGvxB,EAAEi1I,EAAK3/H,KAAKsgB,IAAI51B,EAAE+B,GAAI,OAAO/B,CAAC,CACzN,SAAS2gQ,IAAI3+P,EAAEkS,GAAG,IAAIA,EAAG,MAAMghK,GAAI,IAAI+B,IAAW,GAANj1K,EAAEoS,EAAEF,GAAMlS,EAAED,EAAG,OAAOC,EAAEoS,EAAEO,GAAG,KAAK,EAAE3S,EAAEA,EAAEA,EAAEA,EAAEE,EAAEF,EAAE,EAAEA,EAAEA,EAAEkS,EAAE,EAAE,MAAM,KAAK,EAAElS,EAAEA,EAAEA,EAAEA,EAAEE,EAAEF,EAAEA,EAAEA,EAAEkS,EAAElS,EAAEE,EAAEgS,EAAE,EAAE,MAAM,KAAK,EAAElS,EAAEA,EAAEA,EAAEA,EAAEE,EAAEF,EAAE,EAAEA,EAAEA,EAAEkS,EAAElS,EAAEE,EAAEgS,EAAE,MAAM,KAAK,EAAElS,EAAEA,EAAEA,EAAE,EAAEA,EAAEA,EAAEkS,EAAElS,EAAEE,EAAEgS,EAAE,EAAI,CAIzN,SAASivU,IAAInhV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,GAAGmS,EAAEmvB,KAAM,OAAO4lL,KAAMA,KAAM+Y,IAA8B,IAAhBjqD,GAAVh2K,EAAE,IAAIuyK,GAAU0lC,GAAI/f,MAAU1oK,EAAE,EAAEA,EAAEvvB,EAAE86B,IAAIvL,EAAQ,MAALvvB,EAAEA,GAASwqO,IAAIxqO,GAAGA,EAAEA,EAAEuvB,IAAIwmJ,GAAIh2K,EAAEi4M,GAAIzoL,IAAI,OAAe,GAAZxvB,EAAEwvB,EAAErxB,QAAkB+oN,KAAMA,KAAM+Y,MAAIjqD,GAAIh2K,EAAEi4M,GAAI9f,MA8pBpM,SAAal4L,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAM4S,EAAElP,EAAEzF,EAAEoU,EAAEO,EAAE,IAAI2/J,GAAI7uK,EAAE,EAAE8rB,EAAE,EAAEvxB,EAAE,EAAE,KAAMyF,EAAEyO,EAAEqd,EAAErxB,OAAO,GAAGqxB,EAAEvvB,EAAEi/K,MAAK,CAAsB,IAArBl/K,EAAE49K,GAAG39K,EAAEq7M,GAAG9rL,GAAG,IAAIvvB,EAAEhC,GAASy/M,GAAIh6M,EAAE,EAAEyO,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAE9rB,EAAE,GAAG,KAAKzD,EAAED,KAAK0D,EAAiM,IAA/L2O,EAAE,EAAIrS,GAAG09M,GAAIh6M,EAAEyO,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAE9rB,GAAG,KAAKzD,GAAKy9M,GAAIh6M,EAAE,EAAEyO,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAE9rB,EAAE,GAAG,KAAKzD,EAAED,KAASqS,EAAE2jK,GAAIpjK,GAAG8qM,GAAIh6M,EAAE2O,EAAEF,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAE9rB,EAAE2O,GAAG,MAAMpU,IAAIy/M,GAAIh6M,EAAE2O,EAAEF,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAE9rB,EAAE2O,GAAG,KAAKpS,EAAED,IAAIwvB,EAAQA,EAAEvvB,EAAEi/K,MAAMtB,GAAG39K,EAAEq7M,GAAG9rL,GAAG,IAAIvvB,EAAEhC,IAAIy/M,GAAIh6M,EAAE2O,EAAEF,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAE9rB,EAAE2O,GAAG,KAAKpS,KAAKuvB,EAAE9rB,GAAG,EAAE2O,CAAC,CAAC,OAAOO,CAAC,CA9pBpPyuU,CAAIlvU,EAAEnS,GAAE,CACzN,SAASshV,IAAIrhV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAIr3B,EAAEzF,EAAqCuxB,EAxavE,SAAavvB,EAAEkS,GAAG,GAAGA,GAAGlS,EAAEuvB,EAAG,OAAOvvB,EAAED,EAAO,GAAGmS,GAAGlS,EAAED,EAAG,OAAOC,EAAEuvB,EAAO,MAAM2jJ,GAAI,IAAI2O,GAAI,qEAAsE,CAwavFy/J,CAAIpvU,EAAlBlU,EAArBkU,EAAEqd,EAAEvxB,EAAEqD,IAAI49P,MAAMgF,KAAS/xP,EAAEnS,EAAEmS,EAAEqd,GAAavxB,EAAEuH,EAAEo4K,GAAG+5B,GAAI13M,EAAEqB,EAAErD,GAAG,KAAK+B,EAAEC,EAAEhC,EAAEuxB,EAAEnsB,GAAGpD,EAAK48N,GAAI5+N,EAAEA,IAAKuxB,EAAEA,EAAK42K,GAAI52K,EAAEA,EAAEvvB,EAAEuvB,EAAE,IAAd,IAAmBuL,EAAEv1B,EAAE9B,EAAE1D,IAAO+6B,EAAE/6B,EAAE0D,EAAE8B,GAAE+1T,IAAIl5H,GAAID,GAAIE,GAAIH,GAAI,IAAIprB,GAAI,GAAG,GAAGh8I,GAAGr3B,GAAG,CAGzN,SAASmmU,IAAG5pU,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAExF,EAAEmS,EAAElS,EAAEA,EAAE86B,EAAE5oB,EAAEA,EAAElS,EAAEkS,EAAEnS,GAAGC,EAAEkS,EAAEnS,GAAGmS,EAAE3M,EAAE2M,EAAE4oB,EAAE96B,EAAE86B,EAAE5oB,EAAEnS,EAAEC,EAAEuvB,EAAEhqB,GAAGvF,EAAEuvB,EAAEhqB,GAAG2M,EAAMqd,GAAsDrd,EAAE3M,EAAEgqB,EAAEhqB,EAAG2M,EAAE3M,EAAW2M,EAAE3M,EAAEgqB,EAAErd,EAAdlS,EAAEA,EAAEkS,EAAaA,EAAEqd,EAAEA,EAAEA,EAAGrd,EAAEqd,EAAWrd,EAAEqd,EAAEhqB,EAAE2M,EAAdlS,EAAEuF,EAAE2M,IAApGA,EAAE3M,EAAEvF,EAAEuF,EAAE2M,EAAEqd,EAAE,KAAMvvB,EAAEuF,EAAWvF,EAAEuF,EAAEgqB,EAAErd,EAAdlS,EAAEA,EAAEkS,EAAalS,EAAEuF,EAAE2M,KAAuElS,EAAEhC,IAAIgC,EAAE2S,CAAC,CAC1N,SAASuuS,IAAGlhT,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAW,GAATmS,EAAElS,EAAEy7M,MAASz7M,EAAEu7M,KAAM,OAAOrpM,EAA0D,IAAxDnS,EAAE48M,GAAIC,GAAI,IAAIp4B,GAAI,mCAAmCtyK,GAAOqd,EAAE,EAAEA,EAAE,GAAGvvB,EAAEu7M,KAAKhsL,IAAKotL,IAAK58M,EAAEC,GAAGgkL,IAAIjkL,GAAGC,EAAEy7M,MAAwC,MAAlCz7M,EAAEu7M,OAAOx7M,EAAEC,GAAG,SAAWD,EAAEC,GAAG,IAAUkzK,GAAI,IAAI2O,GAAI9hL,EAAEC,GAAG,CAG1N,SAASuhV,IAAIvhV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAc,IAAZxF,EAAEmS,EAAEnS,EAAEwF,EAAEgqB,EAAExvB,EAAQA,EAAEC,EAAEuF,EAAEvF,GAAG,GAAGD,EAAEmS,EAAE3M,EAAE2M,GAAG,GAAGnS,EAAEC,GAAGssO,IAAItsO,EAAE,IAAIusO,IAAID,IAAItsO,EAAE,IAAIwsO,IAAI,GAAIzsO,EAAEmS,GAAGo6N,IAAItsO,EAAE,IAAIusO,IAAID,IAAItsO,EAAE,IAAIwsO,IAAI,GAAIjnO,EAAEvF,GAAGssO,IAAItsO,EAAE,IAAIusO,IAAID,IAAItsO,EAAE,IAAIwsO,IAAI,GAAIjnO,EAAE2M,GAAGo6N,IAAItsO,EAAE,IAAIusO,IAAID,IAAItsO,EAAE,IAAIwsO,IAAI,EAAI,CAC1N,SAAS25E,IAAInmT,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAoD,IAAlDvF,EAAE2S,EAAE,IAAI0xM,GAAI1mC,GAAGoG,GAAGyjB,KAAI,MAAMznM,EAAE,EAAK0/K,MAAHlwJ,EAASwwJ,IAAK7tK,EAAE,EAAOA,EAAElS,EAAEoS,EAAEmd,EAAErxB,OAAOgU,KAAK3M,EAAEo4K,GAAG0pB,GAAIrnM,EAAEoS,EAAEF,GAAG,KAASE,GAAGmd,IAAGxvB,GAAGmS,GAAGw0L,GAAI1mM,EAAE2S,EAAE4c,EAAE,IAAIinL,GAAIwB,GAAIj4M,GAAGi4M,GAAI9lM,KAAKqd,EAAEhqB,EAAE6M,EAAErS,EAAEmS,GAAGw0L,GAAI1mM,EAAE2S,EAAE4c,EAAE,IAAIinL,GAAIwB,GAAIj4M,GAAGi4M,GAAI9lM,IAAI,CAC1N,SAASsvU,IAAIxhV,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAIr3B,EAAM,IAAJ1D,EAAE,EAAMwvB,EAAE,IAAIo2I,GAAI3lK,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAyB,IAAI48B,EAAE,IAAI6qI,GAAxBgY,GAAGC,GAAIruJ,GAAG,IAAoBvvB,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAiC,KAAxBqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAM13B,EAAErD,IAAQ0D,EAAE,IAAIkiK,GAAIpgK,EAAE6M,GAAG3O,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAIn6K,GAAG,IAAML,EAAErD,GAAM,CAC1N,SAAS0hV,IAAIzhV,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAIr3B,EAAEzF,EAAEoU,EAAE,GAAGF,EAAG,IAAIzO,EAAEyO,EAAEypM,KAAKl4M,EAAE83M,MAAuB,IAAInpM,EAAEsvU,IAApB/jK,GAAGl6K,EAAEg4M,KAAK,KAAiBu+D,KAAMG,KAAK5qP,GAAGosL,KAAKvpM,EAAEmpM,MAAOv9M,EAAE2/K,GAAGvrK,EAAEqpM,KAAK,KAAI3gL,EAAE6iJ,GAAGk9B,GAAGq4B,GAAI3tO,EAAEu1B,EAAE98B,IAAI,QAAY88B,EAAE,IAAI2qN,GAAIzlP,EAAED,GAAGA,EAAEwvB,EAAExvB,EAAEwvB,EAAErxB,QAAQ48B,EAAEqiT,IAAIriT,EAAE98B,EAAEuH,GAAM,CAC1N,SAAS0jB,IAAIjpB,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAA8B,KAA5BA,EAAEoxP,KAAKtW,MAAMwiF,KAAK7iU,EAAEgoN,KAAK91M,IAAkI,MAAMghK,GAAI,IAAI2O,GAAI4iF,IAAIvyP,EAAE6sL,KAAK2jH,MAAtJv2G,KAAMxuB,GAAGp4K,EAAE,IAAIgiN,OAAOhiN,EAAE+wP,GAAIE,GAAIqsE,IAAIt9T,KAAKxF,EAAa49K,IAAVpuJ,EAAEvvB,EAAE22N,GAAGpxN,KAAS,EAAEvF,EAAEkI,GAAGqnB,GAAE,GAAK,GAAM3E,IAAI5qB,EAAEuF,GAAE,GAAM,KAAMo4K,GAAG59K,EAAE,KAAKm6J,GAAGhoJ,EAA2C,CAC1N,SAASomL,IAAIt4L,GAAG,IAAIkS,EAAEqd,EAAE,OAAGvvB,GAAG,gBAAiBA,EAAE,eAAuB,GAAHA,EAAa,IAAEkS,EAAElS,EAAE,KAAMA,GAAGA,GAAGuvB,EAAE4oK,GAAGllD,EAAK3/H,KAAKC,MAAM0/H,EAAK3/H,KAAKoN,IAAI1gB,GAAG,sBAAuBkS,GAAGlS,GAAGizI,EAAK3/H,KAAKyd,IAAI,EAAExB,OAAOA,EAASA,GAASi+P,GAAI5iF,GAAI5qM,GAAG,CAE3N,SAASmiS,IAAIniS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAA0L,OAA3KsqQ,GAAb9vQ,EAAE,IAAIg8T,IAAI/7T,GAASkS,GAAG61L,GAAIhoM,GAAGioM,MAAM25I,KAAKzvU,GAAG61L,GAAIhoM,GAAGs9J,MAAMykI,MAAMxM,MAAMt4D,MAAMj1B,GAAIhoM,EAAEw+P,KAAKC,MAAM05B,MAAM/0H,GAAIpjK,GAAGk/P,MAAMC,MAAgB3M,GAAVhjO,EAAE,IAAIwpT,IAAUh5U,GAAG4+P,IAAIpvO,GAAGkwJ,MAAMG,MAAgB2yE,GAAVhtP,EAAE,IAAIwzU,IAAUh5U,GAAG4+P,IAAIp5P,EAAEm6K,KAAY3/K,CAAC,CAC5N,SAAS6hV,IAAI5hV,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAO,IAAI0uK,IAAKs6F,KAAME,MAAM,KAAK,EAAE,OAAO,IAAIr+G,GAAI,KAAK,EAAE,OAAO,IAAIc,GAAI,QAAQ,MAAM4U,GAAI,IAAI2O,GAAI,8DAAmE,MAAL7hL,EAAE86B,EAAQ96B,EAAE86B,EAAE,GAAG96B,EAAE2S,KAAM,CAC5N,SAASkvU,IAAI7hV,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAEnoB,EAA2B,IAAzB3S,EAAEuvB,EAAErd,EAAE9O,IAAG,EAAK2yK,GAAI/1K,EAAEA,EAAEkS,GAAOS,EAAE,IAAIgzJ,GAAIzzJ,EAAEE,GAAGO,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAyB,IAAI6B,EAAE,IAAIyxQ,IAA1B12O,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAoBT,GAAG8yM,GAAIjlN,EAAEC,IAAIglN,GAAIjlN,EAAEmS,IAAyC3M,EAAEyrT,IAAIl2R,EAAxC6iJ,GAAGqnC,GAAIjlN,EAAEC,GAAG49K,GAAI79K,EAAEC,GAAG49K,GAAI79K,EAAEmS,GAAG,KAAelU,EAAEgC,EAAEuvB,EAAEhqB,EAAEnC,IAAIy+U,IAAI7hV,EAAEuF,EAAI,CAC5N,SAASu8U,IAAI9hV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAM,IAAJkP,EAAE,EAAM4c,EAAE,IAAIwvJ,KAAM/+K,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAI/M,IAAGvtL,EAAE,GAAG,KAAKA,EAAEA,IAAIuvB,EAAEhqB,GAAGgqB,EAAEvxB,EAAEihL,MAAuBx7K,GAAhByO,EAAEyrK,GAAGwB,IAAI5vJ,GAAG,KAAQ5c,EAAEpN,EAAE2M,EAAE4oB,EAAE/6B,EAAEkzI,EAAK3/H,KAAKuc,KAAKpsB,EAAEA,EAAE8B,EAAEA,GAAGoN,EAAEsgI,EAAK3/H,KAAKugB,IAAI9zB,EAAE4S,GAAGmoB,EAAEgnT,IAAI5vU,GAAGS,EAAEsgI,EAAK3/H,KAAKugB,IAAIiH,EAAEnoB,GAAG,OAAOA,CAAC,CAC5N,SAASk2L,MAAMA,IAAIn0D,EAAIs0D,IAAI,IAAI6M,GAAI,UAAU,GAAG/M,IAAI,IAAI+M,GAAI,SAAS,GAAGimF,IAAI,IAAIjmF,GAAI,2BAA2B,GAAGkmF,IAAI,IAAIlmF,GAAI,mBAAmB,GAAGmmF,IAAI,IAAInmF,GAAI,yBAAyB,GAAGomF,IAAI,IAAIpmF,GAAI,kBAAkB,EAAE,CAC5N,SAASq7F,IAAIlxS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAMvH,EAAEoU,EAAkL,OAAhLrS,EAz7DpC,SAAaC,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAmC,OAAjCA,EAAE83M,IAAItoL,GAAG4zO,IAAGnjQ,EAAE2S,EAAE5S,EAAEmS,GAAGixP,IAAGnjQ,EAAEhC,EAAEkU,EAAEqd,GAAUrd,CAAC,CAy7D7B6vU,CAAI/hV,GAAMupL,KAAHhkL,EAAW,IAAIm0K,KAASnqJ,GAAGyyT,IAAIz8U,EAAEgqB,GAAGhqB,GAAG2M,GAAGouR,GAAIvgS,EAAEigQ,GAAI9tP,EAAEw1N,MAAM2vE,IAAInlS,EAAEnS,GA6J/G,SAAaC,EAAEkS,GAAG,IAAQ3M,EAAEu1B,EAAIr3B,EAAEzF,EAAEoU,EAAI0B,EAAE1B,EAAEpS,EAAEhC,EAAE+hQ,GAAI3tP,EAAE,sBAAyBpU,KAAKo6M,GAAIlmM,GAAG6tJ,MAAM82J,QAAiBtxT,EAAE,IAAIurJ,GAAIs6I,IAAIl5R,EAAE2kT,IAAItxT,IAAG9B,EAAEk6K,GAAG26B,IAAIpmM,EAAE2kT,KAAK,KAAS/7R,EAAE,MAANhnB,EAAE9V,KAAe88B,EAA8B,IAAIukK,GAAGvrL,EAAhCivR,GAAGjvR,EAAEmqK,GAAGoS,IAAGwD,IAAI,EAAE,EAAE,EAAE,MAAqB/4J,GAAkBy9K,GAAIz9K,EAAjB,IAAIq8K,GAAIrjM,EAAErQ,IAAa,CA7JxIw+U,CAAI/vU,EAAEnS,GAAGu3S,IAAIplS,EAAEnS,GAAK,KAAS/B,EAAE6hQ,GAAJ3tP,EAAU,SAAwBgwU,KAAf9vU,EAAE,IAAIilM,GAAIr3M,EAAED,IAASC,EAAEoS,EAAEF,EAAElU,GAAGo5S,GAAIp3S,EAAEkS,EAAEnS,GAAGkxS,GAAIjxS,EAAEkS,EAAEnS,GAAUA,CAAC,CAG5N,SAASoiV,IAAIniV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,GAAM,MAAH96B,EAAS,OAAO+3L,IAA2B,IAAvBj9J,EAAE,IAAImzQ,GAAIjqH,IAAI,IAAI,KAAajkL,EAAE,EAAEwF,GAARgqB,EAAEvvB,GAAU9B,OAAO6B,EAAEwF,IAAIxF,EAAGmS,EAAEqd,EAAExvB,GAAI+6B,EAAE96B,EAAqB48M,GAAI9hL,EAAE96B,EAAE86B,EAAE5oB,GAA5B4oB,EAAE96B,EAAE,IAAI8tN,GAAIhzL,EAAE/6B,GAAiB28M,GAAI5hL,EAAE96B,EAAE,GAAGyvO,GAAIv9N,IAAI,OAAQ4oB,EAAE96B,EAAkB,GAAZ86B,EAAEv1B,EAAErH,OAAU48B,EAAE96B,EAAEA,EAAE86B,EAAE96B,EAAEA,EAAG,GAAG86B,EAAEv1B,EAApCu1B,EAAEvL,CAAoC,CAC7N,SAAS6yT,IAAIpiV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAQ,IAANA,EAAE2yL,IAAQn4L,EAAE,IAAI4lK,GAAIshJ,GAAI/0S,IAAInS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,SAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,MAAU+6B,IAAI96B,EAAEuvB,EAAEA,EAAEA,KAAIvvB,EAAEuvB,EAAEA,EAAEA,IAAG,EAAKhqB,EAAE0tI,EAAK3/H,KAAKsgB,IAAIruB,EAAE68U,IAAIpiV,EAAEsnT,GAAI/3R,EAAErd,MAAmD,OAA7ClS,EAAEhC,EAAEkU,EAAEnS,GAAGC,EAAEoS,EAAEpS,EAAE2S,EAAET,EAAEnS,GAAGkzI,EAAK3/H,KAAKsgB,IAAIruB,EAAEvF,EAAEoS,KAAYpS,EAAE2S,EAAET,EAAEnS,EAAE,CAC7N,SAASsiV,IAAIriV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAE,IAAIA,EAAEo4K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAIypM,KAAKp2M,EAAEg2M,OAAOx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,MAAOl2M,EAAE2M,GAAGqd,EAAExvB,EAAEmS,GAAI4zL,IAAI/lC,MAAMmtE,MAAM39M,EAAE0uK,OAAOxe,MAAMM,MAAMxwJ,EAAEgwK,KAAKrtL,EAAEouK,GAAIC,GAAGhxJ,EAAEy2K,GAAGknC,OAAO5sD,GAAIC,GAAGhxJ,EAAEy2K,GAAGknC,OAAO39M,EAAE0uK,OAAOxe,MAAMM,MAAMxwJ,EAAEgwK,KAAKrtL,EAAE,CAAG,CAG7N,SAASw+S,IAAI1wT,GAAG,IAAMuvB,EAAU,GAARA,GAAE,EAASs6J,GAAG7pL,EAAE,KAAa,OAAPuvB,GAAE,EAAYouJ,GAAG39K,EAAE,KAAKA,EAAE,IAAIuvB,GAAMs6J,GAAG7pL,EAAE,MAAQ29K,GAAG39K,EAAE,KAAKA,EAAE,GAAG,EAAe,OAAPuvB,GAAE,EAAYyoL,GAlzGpI,SAAah4M,GAAG,OAAOm4L,IAAIt3B,GAAI7gK,GAAGA,GAAG,CAkzGmGsiV,CAAI3kK,GAAG39K,EAAE,KAAKA,IAAM,MAAMkzK,GAAI,IAAIyP,GAAI,uCAAuC3iL,EAAE,MAAM,CAE7N,SAASuiV,IAAGviV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAsB,GAApBstN,GAAGxhM,EAAE,eAAqB,GAAHA,EAAM,OAAO9rB,EAAEk6K,GAAG8gD,GAAG4qB,GAAGrpP,EAAEA,GAAGkS,GAAG,KAASzO,EAAEw7K,KAAJ,EAAgC,KAAvBtsK,EAAEgrK,GAAG8gD,GAAG4qB,GAAGrpP,EAAEA,GAAGkS,GAAG,KAAW,OAAO,EAAW,GAAGqd,IAAZuL,EAAEnoB,EAAEssK,MAActsK,EAAE08P,UAAmB,IAAT9pQ,EAAEoN,EAAEgpM,KAAS57M,EAAE,EAAEA,EAAEwvB,EAAExvB,IAAKwF,EAAEk2M,KAAKl2M,EAAEw+K,KAAM,OAAOjpJ,CAAC,CAE9N,SAASqlT,IAAIngV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAIr3B,EAAM,GAAJA,EAAE,EAAU,GAALzD,EAAEkS,EAAK,CAAmB,IAAJA,EAAE,EAAU3M,EAAE,EAAEu1B,GAAR/6B,EAApB69T,IAAI59T,GAAE,IAA0B9B,OAAOqH,EAAEu1B,IAAIv1B,GAAGgqB,EAAExvB,EAAEwF,IAAQ,IAAG9B,GAAG8rB,IAAIrd,GAAGA,EAAE,IAAIzO,GAAGzD,EAAEuvB,GAAGrd,EAAE,GAAG,MAAMzO,EAAEiiL,GAAIk/G,GAAIlhD,GAAIv5B,GAAI4qB,GAAI/0O,EAAEA,GAAG,IAAI03I,IAAK,IAAIC,MAAO,OAAOl0I,EAAE,EAAEA,EAAEzD,EAAEJ,EAAEG,EAAEC,EAAEJ,EAAEI,EAAE,CAAC,CAC9N,SAASkgV,IAAIlgV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAIr3B,EAAM,GAAJA,EAAE,EAAU,GAALzD,EAAEkS,EAAMzO,EAAEiiL,GAAIk/G,GAAIlhD,GAAIv5B,GAAI4qB,GAAI/0O,EAAEA,GAAG,IAAIw3I,IAAK,IAAIC,UAAW,CAAmB,IAAJvlI,EAAE,EAAU3M,EAAE,EAAEu1B,GAAR/6B,EAApB89T,IAAI79T,GAAE,IAA0B9B,OAAOqH,EAAEu1B,IAAIv1B,GAAGgqB,EAAExvB,EAAEwF,IAAQ,IAAG9B,GAAG8rB,IAAIrd,GAAGA,EAAE,IAAIzO,GAAGzD,EAAEuvB,GAAGrd,EAAE,GAAG,CAAC,OAAOzO,EAAE,EAAEA,EAAEzD,EAAEJ,EAAEsS,EAAElS,EAAEJ,EAAE2vB,EAAE,CAAC,CAI9N,SAASizT,IAAIxiV,GAAG,IAAIkS,EAAEqd,EAA+L,OAA7LA,EAAE,IAAIi1J,IAAMxkL,GAAG,KAAKkS,EA7sC5C,SAAalS,GAAG,OAAiB,GAAdA,EAAEkS,EAAEqd,EAAErxB,QAAay/K,GAAG0pB,GAAIrnM,EAAEkS,EAAE,GAAG,IAAIlS,EAAU29K,GAAG0pB,GAAIrnM,EAAEkS,EAAE,GAAG,IAAIlS,EAASynP,GAAIznP,EAAE,CA6sCrDyiV,CAAIziV,GAAM,MAAHkS,IAAUqd,EAAEvvB,GAAG,GAAGkS,GAAUlS,EAAEuvB,GAAKvvB,EAAED,IAAG68M,IAAKrtL,EAAEvvB,GAAG,IAAIuvB,GAAGizS,IAAIxiU,EAAEuvB,IAAIqtL,GAAID,IAAKptL,EAAEvvB,GAAG,IAAIuvB,GAAGvvB,EAAEuvB,EAAEvxB,GAAG,KAAK4+M,IAAKrtL,EAAEvvB,GAAG0iV,IAAInzT,GAAGizS,IAAIxiU,EAAED,IAAI68M,GAAID,IAAKptL,EAAEvvB,GAAG,IAAIuvB,GAAGvvB,EAAED,EAAE/B,GAAG,MAAYuxB,EAAEvvB,CAAC,CAC/N,SAAS2iV,IAAI3iV,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAO,IAAIirJ,GAAI,KAAK,EAAE,OAAO,IAAIE,GAAI,KAAK,EAAE,OAAO,IAAIJ,GAAI,KAAK,EAAE,OAAO,IAAIM,GAAI,QAAQ,MAAMkV,GAAI,IAAI2O,GAAI,wDAA6D,MAAL7hL,EAAE86B,EAAQ96B,EAAE86B,EAAE,GAAG96B,EAAE2S,KAAM,CAC/N,SAASqzR,IAAIhmS,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAM,OAAJA,EAAE,EAASv1B,EAAEoN,GAAG,KAAK,EAAEmoB,EAAEm4G,EAAK3/H,KAAKugB,IAAI,EAAE3hB,EAAEA,EAAElS,EAAEkS,GAAGqd,EAAErd,EAAEnS,IAAI,MAAM,KAAK,EAAE+6B,EAAEm4G,EAAK3/H,KAAKugB,IAAI,GAAG7zB,EAAEkS,EAAEnS,GAAG,MAAM,KAAK,EAAE+6B,EAAEm4G,EAAK3/H,KAAKugB,IAAI,GAAG7zB,EAAEA,EAAED,GAAG,MAAM,KAAK,EAAE+6B,EAAEm4G,EAAK3/H,KAAKugB,IAAI,EAAE3hB,EAAElS,EAAEA,EAAEA,GAAGuvB,EAAEvvB,EAAED,IAAK,OAAO+6B,CAAC,CAE/N,SAAS8nT,IAAI5iV,GAAG,IAAIkS,EAAEqd,EAAE,OAAOvvB,EAAEkS,GAAG,KAAM,EAAG,OAAO,EAAK,KAAK,EAAS,OAANqd,EAAEvvB,EAAEiU,GAAO,IAAO,GAAJsb,IAA+Brd,EAAE6U,IAAI/mB,MAAYmsM,KAAMj6L,EAAE+6Q,MAAMC,MAAxDltR,EAAEkS,GAAG,GAAS,IAAwElS,EAAEkS,EAAE,GAAS,GAAQ,QAAgB,OAAO,EAAO,CAE/N,SAAS2wU,IAAI7iV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAS,GAAP6hK,IAAI38L,GAAW,GAALA,EAAEuvB,GAAW,KAALvvB,EAAEA,EAAO,MAAMkzK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAM84J,QAAwC,GAAhChoT,EAAK,KAAH5oB,EAAOnS,EAAEC,EAAED,GAAEwvB,EAAE4hM,GAAInxN,EAAEhC,EAAE,IAAI+B,IAAQ,EAAE,MAAMmzK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAM+4J,QAA+B,OAAvBx9U,EAAEuyL,GAAI93L,EAAEhC,EAAE+B,EAAEwvB,GAAGvvB,EAAED,EAAEwvB,EAAE,EAASoxP,GAAIp7Q,EAAEu1B,EAAa,MAAN,IAAJ96B,EAAEuF,GAAY,CAI/N,SAASqwP,IAAI51P,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAoB,OAAG+8M,GAArB/8M,EAAEw2N,GAAIx0N,EAAE29K,GAAGp4K,EAAE,QAAgBw1M,GAAGx1M,IAAI9B,EAAEk6K,GAAG39K,EAAE2S,EAAE4c,GAAG,IAAeg7L,GAAIvqN,EAAEuvB,EAAE4nN,IAAIn3O,EAAEuvB,EAAzBuL,EAAE8sL,GAAI11M,EAAElU,KAA0BsjN,GAAIthN,EAAEuF,KAAkCgxR,IAA9B5jR,EAAEurN,GAAIl+N,EAAE,EAAE86B,EAAEotL,KAAK3iN,EAAEvH,EAAE+B,GAAE,GAAa,IAAIs3O,GAAIr3O,EAAEuF,EAAE,EAAEvF,EAAEuvB,EAAE9rB,EAAEq3B,EAAE/6B,GAAE,IAAQqqR,GAAIz3Q,IAAU3U,GAASuH,CAAC,CAEhO,SAASy9U,IAAIzzT,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAE,IAAgB,OAAZA,EAzjEhC,SAAY3S,EAAEkS,GAAG,IAAIqd,EAAiC,OAAhB4iM,MAAf5iM,GAAGsxI,GAAI7gK,GAAGA,GAAG2S,IAAWkuJ,GAAI3uJ,GAAUqd,EAAErd,EAAE,CAyjE/B+wU,CAAG1zT,EAAEvvB,EAAED,GAAU4S,CAAC,CAAC,MAAMT,KAAY,GAAG23K,GAAZ33K,IAAE43K,GAAI53K,KAAW,IAAI,CAAC,IAAgC,GAA5B4oB,EAAEk9J,IAAIj4L,EAAEk4L,IAAIC,KAAK3yL,EAAE0jL,GAAI15J,EAAEvvB,GAAM86B,GAAG,GAAGA,EAAEv1B,EAAErH,OAAQ,OAAOqH,EAAEu1B,EAAG,CAAC,MAAM96B,KAAY,IAAI6pL,GAAb7pL,IAAE8pL,GAAI9pL,KAAY,KAAK,MAAMkzK,GAAIlzK,IAAE,CAAC,OAAO,IAAI,CAAM,MAAMkzK,GAAIhhK,IAAE,CAAC,CACjO,SAAS2Y,IAAI7qB,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAA8B,GAA5BA,EAAEoxP,KAAKtW,MAAMwiF,KAAK7iU,EAAEgoN,KAAK91M,GAA6G,OAApGi6L,KAAMxuB,GAAGp4K,EAAE,IAAIgiN,OAAOhiN,EAAE+wP,GAAIE,GAAIqsE,IAAIt9T,KAAKxF,EAAa49K,IAAVpuJ,EAAEvvB,EAAE22N,GAAGpxN,KAAS,EAAEvF,EAAEkI,GAAGqnB,GAAE,GAAK,GAAM3E,IAAI5qB,EAAEuF,GAAE,GAAM,KAAao4K,GAAG59K,EAAE,KAAKmjV,GAAGhxU,GAAQ,MAAMghK,GAAI,IAAI2O,GAAI4iF,IAAIvyP,EAAE6sL,KAAKg2F,KAAM,CAGjO,SAASouD,IAAGnjV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAa,GAAXA,EAAE,GAAExF,EAAEmS,EAAE,KAASlS,EAAE9B,OAAQ,OAAQ,EAAsC,IAAjC05L,GAAI73L,EAAEC,EAAE9B,QAAXqxB,EAAmBvvB,EAAEqf,WAAWtf,GAAUwvB,GAAG,IAAIA,GAAG,KAAIhqB,EAAI,GAAFA,GAAMgqB,EAAE,QAAMxvB,GAAQC,EAAE9B,UAAiB05L,GAAI73L,EAAEC,EAAE9B,QAAXqxB,EAAmBvvB,EAAEqf,WAAWtf,GAA2B,OAAvBA,EAAEmS,EAAE,GAAIA,EAAE,GAAGnS,EAAIwF,GAAG,EAAUA,CAAC,CAGnO,SAAS69U,IAAIpjV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAIoN,EAAElP,EAAEkP,EAAE3S,EAAEuvB,EAAE9rB,EAAEzD,EAAED,EAAgDwF,GAA5CmwP,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAClhL,EAAE3U,EAAE4B,EAAE+S,EAAE/S,EAAE+S,EAAE3S,KAAKkS,EAAOwjP,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACpwL,EAAEzF,EAAE4B,EAAE6D,EAAE7D,EAAE6D,EAAEzD,KAAKkS,GAAG,EAAEnS,EAAE,KAAuBA,EAAlB4S,EAAEP,IAAIqtK,MAAMC,KAAQ,IAAIu1B,GAAI/iM,EAAES,EAAE3U,EAAEuxB,EAAEA,EAAEvvB,EAAEuvB,EAAEhqB,GAAO,IAAI0vM,GAAI/iM,EAAEqd,EAAEhqB,GAAIktN,GAAGzyN,EAAEA,EAAE,EAAED,EAAE,CACnO,SAASywU,IAAIxwU,GAAG,IAAIkS,EAAInS,EAAEwF,EAAS,IAAP2M,EAAE,KAASnS,EAAEkrN,GAAG9kH,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,GAAGn+K,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,KAAKlS,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,OAAO67L,IAAGrrN,IAA6B,GAATwF,EAAEylN,IAAfrtC,GAAGwtC,GAAGprN,GAAG,KAAiBmS,GAAY,GAAGA,GAAG3M,EAAG,OAAO,OAAzB2M,EAAE3M,EAA8B,OAAO,CAAI,CACnO,SAAS8+S,IAAIrkT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAQ,KAAJC,EAAEoS,EAAKF,GAAGlS,EAAEhC,EAAE,MAAMk1K,GAAI,IAAIgO,GAAIg0J,IAAIhjU,EAAE8oN,IAAIh7N,EAAEhC,IAAI,GAAGuxB,GAAGvvB,EAAEhC,EAAE,MAAMk1K,GAAI,IAAIgO,GAAIi0J,IAAI5lT,EAAEyrM,IAAIh7N,EAAEhC,IAAuG,OAAnG+B,EAAEC,EAAE2S,EAAE4c,GAAMrd,GAAGqd,IAAGrd,EAAEqd,EAAE+zO,IAAItjQ,EAAE2S,EAAET,EAAElS,EAAE2S,EAAET,EAAE,EAAEqd,EAAErd,GAAGoxP,IAAItjQ,EAAE2S,EAAE4c,EAAE,EAAEvvB,EAAE2S,EAAE4c,EAAErd,EAAEqd,GAAGo3K,GAAG3mM,EAAE2S,EAAET,EAAEnS,GAAGC,EAAE8sC,GAAG56B,EAAEnS,EAAEwvB,GAAGvvB,EAAEi4O,MAAYl4O,CAAC,CACnO,SAAS60R,IAAG50R,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAqB,GAAnBA,EAAE49K,GAAG39K,EAAEuvB,EAAEyhN,GAAG9+N,GAAG,IAA4I,QAAGnS,EAAE8nN,GAAGt4L,OAAMvvB,EAAED,GAAS,GAAhJ,IAAVA,EAAEC,EAAE6gG,GAAG3uF,IAAQ21M,GAAGt4L,GAAsB,QAAhBvvB,EAAED,EAAEC,EAAEuvB,EAAEsqM,GAAG3nN,EAAEnS,IAAU,EAAU,MAAMmzK,GAAI,IAAI65C,GAAI,+CAAsG,CACpO,SAASv0B,IAAIx4L,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,OAAGC,EAAE,EAAU,EAAa,GAAHA,EAAa,IAA8BuvB,EAAE,IAAbrd,GAAXnS,IAAIC,GAAG,MAAS,GAAG,IAAmCuvB,GAAVrd,GAARnS,GAAPC,IAAKkS,GAAM,MAAS,GAAG,EAA+Bqd,GAAVrd,GAARnS,GAANC,IAAIkS,GAAMojP,MAAS,GAAG,GAA+B/lO,GAAVrd,GAARnS,GAANC,IAAIkS,GAAM2/N,MAAS,GAAG,GAA0C,GAArB3/N,GAARnS,GAANC,IAAIkS,IAAO,MAASnS,GAAG,IAAgB,CACpO,SAASsjV,IAAIrjV,GAAS,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAqF,IAArGs4M,KAAkBgrC,IAAI,IAAIv2E,GAAIw2E,IAAI,IAAIt2E,GAAIu2E,IAAI,IAAIz2E,IAAQtyK,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAI/M,IAAGvtL,EAAE,GAAG,KAo4BpG,SAAaA,GAAG,IAAIkS,EAAEqd,EAAIhqB,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAI0B,EAAEd,EAAEpT,EAAY,IAAVsS,EAAE,IAAIsgK,GAAQx0K,EAAE,IAAI+gL,GAAI/+K,GAAGhC,EAAEuH,GAAGvH,EAAEA,EAAEihL,MAAM,CAAuV,IAAtVx7K,EAAEk6K,GAAGwB,IAAInhL,GAAG,IAAIuxB,EAAE,IAAIknJ,GAAIkgB,GAAImyD,IAAIrlP,EAAE8rB,GAAG3vB,EAAE,IAAIk6I,GAAIv0I,EAAEo4K,GAAGopF,GAAI,IAAI38C,GAAI,KAAK,IAAIorB,GAAI,IAAI1G,GAAG7hB,GAAGogH,IAAI5pU,GAAGzD,EAAE27M,KAAK,IAAIpoE,MAAOu4F,GAAIlsO,EAAE2hR,GAAI,IAAIjsI,EAAI,IAAID,EAAI,IAAIgB,GAAIkoC,GAAGC,GAAGwtD,IAAG,GAAGC,IAAI,IAAI,EAAE,EAAE4oC,KAAME,UAAU,IAAI6oB,GAAIruQ,EAAEouJ,GAAGp4K,EAAEyrO,IAAItjB,MAAM,IAAO,IAAI,IAAI3zE,IAAsHpnI,EAA/GgrK,GAAGopF,GAAI58C,GAAIxsC,GAAGp4K,EAAEyrO,IAAG,GAAO,IAAIsyG,KAAK,IAAItpM,IAAKunI,GAAI,IAAIjsI,EAAI,IAAID,EAAI,IAAIgB,GAAIkoC,GAAGC,GAAGwtD,IAAG,GAAGC,IAAI,IAAI,EAAE,CAAC8oC,QAAQ,IAAYp5D,KAAKhpM,EAAE4oM,OAAuBvoM,EAAE+hU,IAAhBp3J,GAAGhrK,EAAE8oM,KAAK,SAAmBrpM,EAAEurK,GAAGk9B,GAAGq4B,GAAIhhO,EAAE4oB,EAAE9nB,IAAI,OAAWZ,EAAEmxU,IAAIvwU,GAAG6tO,IAAI3uO,EAAE4oB,EAAE9nB,EAAEZ,IAAGmnL,GAAGhqK,EAAEnd,IAAyR,IAArR7M,EAAEo4K,GAAGopF,GAAI,IAAI38C,GAAI,KAAK,IAAIorB,GAAI,IAAI1G,GAAG7hB,GAAG+oF,IAAIvyS,GAAGzD,EAAE27M,KAAK,IAAIpoE,MAAOu4F,GAAIlsO,EAAE2hR,GAAI,IAAIjsI,EAAI,IAAID,EAAI,IAAIgB,GAAIkoC,GAAGC,GAAGwtD,IAAG,GAAGC,IAAI,IAAI,EAAE,CAAC8oC,SAAS,IAAI6oB,GAAIruQ,EAAEouJ,GAAGp4K,EAAEyrO,IAAG,GAAM,IAAI,IAAI/2F,IAAsHnmI,EAA/G6pK,GAAGopF,GAAI58C,GAAIxsC,GAAGp4K,EAAEyrO,IAAG,GAAO,IAAIsyG,KAAK,IAAIppM,IAAKqnI,GAAI,IAAIjsI,EAAI,IAAID,EAAI,IAAIgB,GAAIkoC,GAAGC,GAAGwtD,IAAG,GAAGC,IAAI,IAAI,EAAE,CAAC8oC,QAAQ,IAAYp5D,KAAK7nM,EAAEynM,OAAuBvoM,EAAEgiU,IAAhBr3J,GAAG7pK,EAAE2nM,KAAK,SAAmBrpM,EAAEurK,GAAGk9B,GAAGq4B,GAAIhhO,EAAE4oB,EAAE9nB,IAAI,OAAWZ,EAAEmxU,IAAIvwU,GAAG6tO,IAAI3uO,EAAE4oB,EAAE9nB,EAAEZ,IAAGmnL,GAAGhqK,EAAEnd,GAAI,CAAC,CAp4B7zBoxU,CAAxCtxU,EAAmClS,EAAEA,GAAcuF,EAAE,IAAIw5K,GAAI7sK,GAAG3M,EAAEA,GAAGA,EAAEvH,EAAEihL,MAAOl/K,EAAE49K,GAAGwB,IAAI55K,GAAG,KAAsB,GAAf4gM,GAAI0iD,IAAI9oP,EAAE,KAAQwvB,EAAE,IAAI+iJ,GAAIyD,GAAIgzE,IAAIx5N,GAAG2jS,IAAInzT,EAAEwvB,IAAI,OAAOw5N,GAAG,CAEpO,SAASs5D,IAAIriT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAA+D,IAA7DA,EAAEkuK,GAAIC,GAAGgoB,IAAIr2L,GAAGmrJ,MAAMkuJ,QAAQvtT,EAAEgC,EAAE,GAAGJ,EAAEI,EAAEA,EAAE,GAAGE,EAAEF,EAAEA,EAAE,GAAGD,EAAEwvB,EAAEnd,EAAM3O,EAAE,EAAEA,EAAEzD,EAAE9B,OAAOuF,IAAK1D,EAAEC,EAAEyD,GAAG7D,EAAE2F,EAAEvF,EAAEyD,GAAGvD,EAAEqvB,EAAEvvB,EAAEyD,GAAG1D,GAAE+6B,EAAE/6B,EAAEC,EAAEuvB,EAAErd,EAAElU,GAAI,IAAI+B,EAAEC,GAAG86B,IAAGnoB,EAAET,EAAE4oB,GAAI96B,EAAEizI,EAAK3/H,KAAKugB,IAAIlhB,EAAE3S,EAAED,EAAEC,EAAEuF,EAAEvF,GAAGhC,EAAE+B,EAAEC,EAAEuF,EAAEvF,EAAEuvB,EAAEA,EAAEnd,CAAE,CACrO,SAASqxU,IAAIzjV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAuF,OAArF1D,EAAE49K,GAAGA,GAAG+5B,GAAI13M,EAAE2S,EAAET,EAAElS,GAAG,IAAIA,EAAE,IAAIuF,EAAEo4K,GAAGA,GAAG+5B,GAAI13M,EAAE2S,EAAET,EAAEA,GAAG,IAAIlS,EAAE,IAAgBuvB,EA2rB5G,SAAavvB,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAyH,GAA7I8tO,MAAsBz2M,EAAE5oB,EAAEqd,GAAGvvB,EAAEuvB,EAAEvvB,EAAEkS,GAAG3M,EAAEvF,EAAEuvB,GAAGrd,EAAEqd,EAAErd,EAAEA,GAAGS,EAAE3S,EAAED,GAAGmS,EAAEnS,EAAEmS,EAAElS,GAAGuvB,EAAErd,EAAEnS,GAAGC,EAAED,EAAEC,EAAEA,GAAGD,EAAEkzI,EAAK3/H,KAAKugB,IAAItuB,EAAEu1B,GAAGr3B,EAAEwvI,EAAK3/H,KAAKugB,IAAIlhB,EAAE4c,GAAGk1L,KAAKiyE,GAAGgtD,MAASzwM,EAAK3/H,KAAKskB,IAAI73B,IAAI2jV,KAAQ,GAAH3jV,GAAM4P,MAAM5P,IAAI4P,MAAM,GAAG,EAAE5P,EAAE,GAAG,EAAEA,EAAE,EAAE,EAAEw/M,GAAG5vM,MAAM5P,GAAG4P,MAAM,MAAM,GAAQ+mR,GAAGgtD,MAAMzwM,EAAK3/H,KAAKskB,IAAIn0B,IAAIigV,KAAQ,GAAHjgV,GAAMkM,MAAMlM,IAAIkM,MAAM,GAAG,EAAElM,EAAE,GAAG,EAAEA,EAAE,EAAE,EAAE87M,GAAG5vM,MAAMlM,GAAGkM,MAAM,MAAM,GAAI,OAAOsjI,EAAK3/H,KAAKugB,IAAIpwB,EAAE1D,GAAW,GAAR22R,GAAGgtD,MAASzwM,EAAK3/H,KAAKskB,IAAI73B,IAAI2jV,KAAQ,GAAH3jV,GAAM4P,MAAM5P,IAAI4P,MAAM,GAAG,EAAE5P,EAAE,GAAG,EAAEA,EAAE,EAAE,EAAEw/M,GAAG5vM,MAAM5P,GAAG4P,MAAM,KAAK,EAAG,OAAOsjI,EAAK3/H,KAAKuc,KAAKpsB,EAAEA,EAAE1D,EAAEA,GAAG,OAAQkzI,EAAK3/H,KAAKuc,KAAKpsB,EAAEA,EAAE1D,EAAEA,EAAE,CA3rBrb4jV,CAAd7oT,EAAE/6B,EAAEmS,EAAES,EAAEpN,EAAE2M,GAAgBqd,GAAG,EAAUA,GAAE9rB,EAAE47O,GAAIxkB,GAAI,IAAI5lB,GAAItiM,EAAE4c,EAAE5c,EAAET,EAAE,EAAES,EAAE5S,EAAE4S,EAAE3S,EAAE,GAAG,IAAIi1M,GAAIn6K,EAAEvL,EAAEuL,EAAE5oB,EAAE,EAAE4oB,EAAE/6B,EAAE+6B,EAAE96B,EAAE,OAAc4jV,IAAI9oT,EAAEnoB,GAAG,GAAGlP,EAAC,CAErO,SAASmnB,IAAI5qB,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAA8B,GAA5BA,EAAE67N,KAAKtW,MAAMwiF,KAAK7iU,EAAEgoN,KAAK91M,GAA6G,OAApGi6L,KAAMxuB,GAAG7iJ,EAAE,IAAIysL,OAAOzsL,EAAEw7N,GAAIE,GAAIqsE,IAAI/nS,KAAKv1B,EAAao4K,IAAV59K,EAAEC,EAAE22N,GAAG77L,KAAS,EAAE96B,EAAEkI,GAAGnI,GAAE,GAAK,GAAM6qB,IAAI5qB,EAAE86B,GAAE,GAAM,KAAa6iJ,GAAGp4K,EAAE,KAAKs+U,GAAG3xU,EAAEqd,GAAQ,MAAM2jJ,GAAI,IAAI2O,GAAI4iF,IAAIvyP,EAAE6sL,KAAKg2F,KAAM,CACrO,SAAS+3B,IAAI9sT,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAW,GAATuH,EAAEvF,EAAED,EAAEmS,GAAqB,GAAZ4oB,EAAEv1B,EAAEoN,EAAE3U,EAAEuH,EAAEvH,EAAQ,MAAH+B,GAAS,IAAI0D,EAAE,EAAEA,EAAEzF,IAAIyF,EAAkB,IAAfkP,EAAEgrK,GAAG7iJ,EAAEr3B,GAAG,MAAU23K,MAAM7rJ,GAAG+iK,GAAGvyL,EAAE4S,EAAEk6L,MAAO,OAAOl6L,OAAS,IAAIlP,EAAE,EAAEA,EAAEzF,IAAIyF,EAAkB,GAAGs3M,IAAlBpoM,EAAEgrK,GAAG7iJ,EAAEr3B,GAAG,MAAaopM,QAAQkO,GAAGh7M,GAAI,OAAO4S,EAAK,OAAO,IAAI,CACrO,SAASmxU,IAAI9jV,EAAEkS,GAAG,IAAIqd,EAAE,GAAGrd,EAAE,EAAG,MAAMghK,GAAI,IAAI+N,GAAI,sBAAsB,GAAM,GAAH/uK,EAAM,OAAO6xU,IAAS,GAAM,GAAH7xU,GAAM23S,GAAI7pT,EAAE+jV,MAAMl6B,GAAI7pT,EAAEkuR,KAAM,OAAOluR,EAAE,IAAIgkV,IAAIhkV,EAAE,GAAG,CAAK,IAAJuvB,EAAE,GAASy0T,IAAIhkV,EAAEuvB,MAAMA,EAAE,OAAO0+P,GAz1BzL,SAAajuR,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,OAAGC,EAAEikV,IAAI/lV,OAAe+lV,IAAIjkV,IAAUkS,EAAI,GAAFlS,GAAKD,EAAEk+K,GAAGmV,IAAGsW,IAAI,GAAK,GAA/Bn6K,EAAEvvB,GAAG,GAA4B,GAAG,IAAKuvB,GAAG,GAAGrd,EAAS,IAAIkhO,GAAI,EAAE7jN,EAAE,EAAExvB,GAAE,CAy1B4DmkV,CAAI30T,EAAErd,GAAG4xU,IAAIp0E,GAAI1vQ,EAAEuvB,GAAGrd,GAAG,CAAC,OAzTvN,SAAalS,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAoB,IAAhCouR,MAAiBprE,MAAHhjN,EAASgkV,IAAKx0T,EAAEvvB,EAAOkS,EAAE,EAAEA,IAAI,EAAU,IAAJ,EAAFA,KAAUnS,EAAEkuR,GAAIluR,EAAEwvB,IAAYA,EAAH,GAALA,EAAExvB,EAAQkuR,GAAI1+P,EAAEA,GAAO,IAAImjS,IAAIxQ,IAAI3yR,EAAEvvB,EAAEuvB,EAAExvB,EAAEk+K,GAAGmV,IAAGsW,IAAI,GAAGn6K,EAAExvB,GAAG,EAAE,GAAG,KAAiB,OAATkuR,GAAIluR,EAAEwvB,EAAW,CAyT0C40T,CAAInkV,EAAEkS,EAAE,CAEtO,SAASkyU,IAAIpkV,GAAS,IAAIkS,EAAEqd,EAAExvB,EAAwF,IAAtGgkM,KAAgBz/L,KAAK4N,EAAE8xL,IAAI1/L,KAAKirB,GAAGojQ,KAAMC,KAAKtuR,KAAKw2B,GAAG+oK,KAAMC,KAAKx/L,KAAKtE,EAAEA,EAAEqmL,GAAI/hL,KAAK,IAAI62I,IAAK47J,IAAIzyS,MAAUvE,EAAE,IAAI4lK,GAAI3lK,EAAEkS,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,SAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,KAAUA,IAAGmS,EAAE,IAAIugT,IAAIl0I,GAAGC,GAAGN,IAAG,GAAGC,IAAI,GAAG,EAAE,CAAC5uJ,KAAKwmJ,GAAI/1K,EAAEA,EAAEkS,GAAI,CACtO,SAASo1L,IAAItnM,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,IAAIgC,GAAe,GAAZA,EAAEuvB,EAAErxB,OAAW,OAAO,KAAqB,IAAhB48B,EAAE,IAAIyxN,GAAIr6O,GAAGqd,GAAOhqB,EAAE,IAAIogK,GAAI3lK,GAAGuF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAS6B,EAAE49K,GAAGC,GAAIr4K,GAAG,IAAIghM,IAAIzrK,GAAGwoK,KAAM,IAAI56B,GAAI3oK,KAA+D,OAA1D4S,EAAEmoB,EAAE98B,GAAIgC,GAAGhC,EAAE88B,EAAEl7B,EAAEk7B,EAAEv1B,EAAE2M,EAAElU,EAAE+B,EAAE/B,EAAEgC,GAAG2S,EAAET,GAAGzO,EAAEq3B,EAAEl7B,EAAEk7B,EAAEv1B,EAAEvF,EAAEyD,EAAEyO,EAAEzO,EAAE8rB,GAAUuL,CAAC,CACtO,SAASinQ,IAAI/hS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAmC,IAAtB48M,GAAX58M,EAAEm3P,GAAI56P,EAAEA,GAAS,IAAIw+I,IAAKjvH,EAAE,KAAauL,EAAE,EAAEnoB,GAARpN,EAAE9B,GAAUvF,OAAO48B,EAAEnoB,IAAO5S,EAAEwF,EAAEu1B,IAAQz5B,IAAI49P,MAAMC,OAAzBpkO,GAAqC5oB,EAAEyrK,GAAG4qB,IAAIxoM,GAAGioM,MAAMe,MAAM,OAAWtpB,MAAMG,MAAM1tK,GAAGwtK,MAAgBnwJ,GAAGouJ,GAAG4qB,IAAIh5K,EAAE0/R,KAAK,IAAIpnG,GAAG9nN,GAAGwvB,EAAExvB,EAAE,CAEtO,SAASskV,IAAIrkV,GAAG,IAAIkS,EAAE,GAAIlS,EAAEuvB,GAAQ,MAALvvB,EAAE2S,EAA4C,CAAC,GAAQ,MAAL3S,EAAE2S,EAAS,OAAO,EAAU,GAAQ,GAAL3S,EAAEhC,EAAM,OAAO,EAAWkU,EAAEyrK,GAAG39K,EAAE2S,EAAE3S,EAAEhC,EAAE,GAAG,GAAI,MAApHgC,EAAED,EAAEC,EAAEssE,GAAGtsE,EAAE86B,GAAGmwJ,GAAIjrL,EAAEA,EAAED,GAAGmS,EAAElS,EAAED,EAAwF,OAAGmS,GAAGlS,EAAEkS,GAAG,KAAK2+P,IAAI,KAAKrgD,MAAMymH,IAAIj3U,GAAUqkV,IAAIrkV,IAAekS,EAAEqpM,IAAK,CACtO,SAAS+oI,IAAItkV,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAEu1B,EAAEnoB,EAAElP,EAAkE,KAAhEA,EAAE8rB,KAAO9rB,EAAE+hO,GAAI,IAAIhqD,GAAI,IAAIqmH,IAAIp+R,EAAE8kT,IAAI,GAAGK,IAAI5oT,EAAEuvB,EAAErd,GAAGS,EA2wBrF,SAAa3S,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAIqD,EAAEyS,EAAEd,EAAEpT,EAAEM,EAA6J,GAA3JF,EAAEuvB,EAAEvvB,EAAED,EAAEG,EAAEi8M,GAAG5T,IAAIr2L,GAAGmrJ,MAAMknL,OAAO3kV,EAAK,MAAHM,IAAU2gK,GAAI3gK,GAAGA,GAAG46B,EAAE6iJ,GAAG4qB,IAAIr2L,GAAG81L,MAAM4yH,MAAM,IAAI36H,IAAI0zG,MAAMG,MAAMvuS,EAAEo4K,GAAG4qB,IAAIr2L,EAAE4vR,KAAK,IAAIvyQ,IAAIhqB,IAAI+vR,MAAMx4D,MAAMv3N,GAAGw3N,KAAKx3N,GAAGy3N,MAAQp9N,IAAI2vB,GAAIuL,EAAoW9nB,EAAE,IAAIsrK,GAAIC,GAAGC,GAAGgmK,IAAG,GAAGC,IAAI,GAAG,EAAE,CAACvyU,SAAjY,CAAC,IAAI4B,EAAE,IAAI6xJ,GAAIzzJ,EAAElS,GAAG8T,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAI9pK,GAAG,IAAM1Q,EAAE,EAAY,IAAV4P,EAAE,IAAIs/J,GAAQjxK,EAAE,IAAIskK,GAAIzzJ,EAAElS,GAAGqB,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAAyC,GAAhB6B,EAAE2kV,IAAI1kV,EAApB29K,GAAGC,GAAIv8K,GAAG,IAAc,MAAW,CAAuE,IAA5DwuQ,GAAV7xQ,EAAE,IAAIqhS,GAAUntR,GAAG61L,GAAI/pM,EAAEo7S,IAAIz7H,GAAG59K,EAAEmS,EAAE,KAAKgqB,GAAIl+B,EAAE+B,EAAEmS,EAAEnS,GAAGgoM,GAAI/pM,EAAE2mV,IAAI,MAAUlhV,EAAEk6K,GAAG59K,EAAEC,EAAE,IAAI27M,KAAKl4M,EAAE83M,MAAO5oM,EAAEgrK,GAAGl6K,EAAEg4M,KAAK,IAAI1lC,GAAI/3K,EAAEgC,EAAE2S,GAAGA,EAAE3S,EAAEhC,EAAEgV,EAAE60M,GAAG7pN,EAAE,CAAE88B,IAAIigL,GAAGxS,IAAIr2L,EAAE0yU,QAAQ7pI,IAAI26D,KAAMI,MAAO91Q,EAAEuvB,EAAEvvB,EAAEkS,EAAIlS,EAAEuvB,EAAEvvB,EAAEA,EAAG,CAAmG,OAAxD+6M,GAAGxS,IAAIr2L,EAAE0yU,QAAQ7pI,IAAI26D,KAAME,QAAQ3uD,KAAMj0M,EAAE6gK,GAAG,IAAIn4B,KAAa1oI,CAAC,CA3wBxkB6xU,CAAI7kV,EAAEA,EAAEkS,GAAc,GAARS,EAAEssK,KAAS6lK,IAAInnK,GAAGhrK,EAAE0oM,GAAG,GAAG,IAAI53M,QAAmB,IAAXq3B,EAAE,EAAEnoB,EAAEssK,KAAS15K,EAAEoN,EAAEgpM,KAAKp2M,EAAEg2M,MAAuBupI,IAAdnnK,GAAGp4K,EAAEk2M,KAAK,IAAUyqF,GAAIziS,EAAEq3B,KAl2HxM,SAAa96B,EAAEkS,EAAEqd,GAAGvvB,EAAEuvB,EAAEw1T,GAAG7yU,EAAEqd,EAAE,CAk2H8Ky1T,CAAIhlV,EAAEA,EAAE2S,EAAET,GA8VvN,SAAalS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEv1B,EAAEo4K,GAAG4qB,IAAIvoM,GAAGq9J,MAAM4nL,MAAM,IAAInqT,EAAE6iJ,GAAG4qB,IAAIvoM,EAAEklV,KAAK,IAAI31T,EAAE,IAAI0lL,GAAIj1M,EAAE86B,EAAE96B,EAAEA,EAAED,EAAEmS,EAAElS,EAAED,EAAEwvB,EAAEvvB,EAAE86B,EAAE5oB,EAAElS,EAAED,EAAEA,EAAEC,EAAED,EAAEC,GAAGkS,EAAE,IAAIyuM,GAAIpxL,GAAMhqB,EAAE06L,IAAIq3B,MAAMmyD,QAAO1pR,EAAE49K,GAAG4qB,IAAIvoM,EAAE2kV,KAAK,GAAM7pT,EAAEmlK,IAAIssG,MAAMmI,QAAO30S,EAAEC,GAAG,IAAID,EAAEC,EAAE,IAAID,EAAEmS,GAAG,IAAInS,EAAEmS,EAAE,KAAIA,EAAElS,EAAEizI,EAAK3/H,KAAKugB,IAAItE,EAAEvvB,EAAED,EAAEC,GAAGkS,EAAEA,EAAE+gI,EAAK3/H,KAAKugB,IAAItE,EAAErd,EAAEnS,EAAEmS,IAAG+vK,GAAIk6B,GAAG5T,IAAIvoM,EAAEmlV,QAoR9S,SAAanlV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAA0L,GAAxL1D,EAAE49K,GAAG4qB,IAAIvoM,GAAGq9J,MAAM+nL,MAAM,IAAI71T,EAAEvvB,EAAEkS,EAAElS,IAAID,EAAEkgM,IAAIs3F,MAAMK,MAAO53R,EAAEuvB,EAAEvvB,IAAIuvB,EAAEvvB,EAAEkS,EAAElS,GAAG,EAAGD,EAAEkgM,GAAG43F,OAAO73R,EAAEuvB,EAAEvvB,GAAGuvB,EAAEvvB,EAAEkS,EAAElS,IAAIuvB,EAAErd,EAAEA,EAAEA,IAAInS,EAAEkgM,IAAIs3F,MAAME,MAAOz3R,EAAEuvB,EAAErd,IAAIqd,EAAErd,EAAEA,EAAEA,GAAG,EAAGnS,EAAEkgM,GAAGy3F,OAAO13R,EAAEuvB,EAAErd,GAAGqd,EAAErd,EAAEA,EAAEA,IAAOyrK,GAAG4qB,IAAIvoM,GAAGgoM,MAAM4yH,MAAM,IAAI36H,IAAI0zG,MAAMG,QAAQvkR,EAAEvvB,EAAEkS,EAAElS,GAAGuvB,EAAErd,EAAEA,EAAEA,GAAI,IAAIzO,EAAE,IAAIkiK,GAAI3lK,EAAEA,GAAGyD,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,SAASyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAASpC,IAAI49P,MAAMC,QAAM35P,EAAEo4K,GAAG4qB,IAAI51L,EAAEo2L,KAAK,OAAQtpB,MAAMC,KAAM/sK,EAAE/S,EAAEI,GAAGuvB,EAAEvvB,EAAEkS,EAAElS,EAAGuF,GAAGshM,MAAMl0L,EAAE/S,EAAEsS,GAAGqd,EAAErd,EAAEA,EAAEA,IAAK4oB,EAAE96B,EAAED,EAAEC,EAAE86B,EAAE96B,EAAEuvB,EAAEvvB,EAAE86B,EAAE5oB,EAAE4oB,EAAEvL,EAAEvvB,EAAE86B,EAAE5oB,EAAEqd,EAAErd,EAAE4oB,EAAE/6B,EAAE+6B,EAAE96B,CAAC,CApRzKqlV,CAAIrlV,EAAEuvB,EAAErd,EAAE,CA9VtGozU,CAAIpzU,GAAGqwR,IAAI9+R,EAAE,CACvO,SAAS8hV,IAAIvlV,GAAY,GAATsE,KAAKtE,EAAEA,EAAKA,EAAEuvB,EAAEvxB,EAAEqD,IAAI49P,MAAMC,KAAM56P,KAAKirB,EAAEvvB,EAAEuvB,EAAEjrB,KAAKvE,EAAE49K,GAAG4qB,IAAIvoM,EAAEuvB,EAAEvxB,GAAGgqM,MAAMe,MAAM,QAAS,IAAG/oM,EAAED,EAAE/B,EAAEqD,GAAG69P,IAA0D,MAAMhsF,GAAI,IAAI2O,GAAI,QAAQ7hL,EAAE,8BAAjFsE,KAAKirB,EAAEvvB,EAAED,EAAEuE,KAAKvE,EAAE49K,GAAG4qB,IAAIvoM,EAAED,EAAE/B,GAAGgqM,MAAMe,MAAM,GAAkE,CAAC,CACvO,SAASy8I,IAAIxlV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEA,EAAEvF,EAAEkS,EAAElS,EAAEkS,EAAEA,EAAY,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEuF,EAAEvF,EAAEkS,IAAQA,EAA4CA,GAAGlS,IAAG6qL,GAAI7qL,EAAEkS,EAAEsyP,IAAIm4B,GAAI38R,EAAEkS,EAAEnS,GAA4B8gS,GAAI7gS,EAAK,OAAlCuvB,EAAY,OAATxvB,EAAEmS,EAAEqd,GAAUrd,EAAEsyP,GAAGzkQ,IAAkBs8N,GAAI9sM,EAAErd,EAAEsyP,IAAI,KAAKj1O,KAA/Hs7J,GAAI7qL,EAAE,MAAM28R,GAAI38R,EAAE,GAAG6gS,GAAI7gS,EAAE,MAAuG,CACvO,SAASylV,IAAIzlV,GAAG,IAAIkS,EAAEqd,EAAE,GAAGvvB,EAAE86B,EAAE,CAAC,KAAM96B,EAAEJ,EAAEI,EAAEE,GAAE,CAAgD,GAAG2pL,GAAZt6J,GAAtCrd,EAAEyrK,GAAI39K,EAAEoS,EAAcpS,EAAEoS,EAAEszU,GAAG1lV,EAAEJ,GAArBI,EAAEqB,EAAEg6M,GAAGr7M,EAAEJ,GAAe,KAAQsoN,KAAa,KAAwB,IAAlBvqC,GAAGpuJ,EAAE,IAAIimJ,GAAGyhE,QAAWj3O,EAAEuF,GAAGgqB,EAAEyzR,MAAM9uR,KAAY,GAAR3E,EAAE+8L,OAAkB,MAARp6M,EAAE4oM,KAAY,OAAO,IAAY96M,EAAEJ,CAAE,CAAC,OAAO,CAAK,CAAM,OAAOI,EAAEJ,EAAEI,EAAEE,CAAE,CACvO,SAASoF,IAAGtF,EAAEkS,GAAG,IAAIqd,EAAEjrB,KAAKiB,GAAG6uK,KAAK2P,GAAG/jL,GAAGo0K,KAAK02I,IAAG9qT,IAAIsE,KAAKirB,GAAGw0J,GAAG7xK,GAAG44S,IAAG54S,IAAIotL,GAAGh7L,KAAKiB,EAAE21K,KAAK75I,MAAM/8B,KAAKirB,EAAE2rJ,KAAK75I,MAAM/8B,KAAKvE,EAAE6mT,GAAGtiT,KAAKiB,GAAGjB,KAAK4N,EAAE00S,GAAGtiT,KAAKirB,GAAGA,EAAEi5M,GAAG15C,IAAG,CAAC+E,IAAI1V,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC75K,KAAKiB,EAAE21K,KAAK+D,KAAK36K,KAAKirB,EAAE2rJ,KAAK+D,MAAM,GAAG36K,KAAKtE,EAAEuvB,EAz7C9N,SAAYvvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAE,IAAUxF,EAAE,EAAEwF,GAAVgqB,EAAEvvB,EAAEA,GAAU9B,OAAO6B,EAAEwF,IAAIxF,EAAUkuM,GAAP/7L,EAAEqd,EAAExvB,GAASmS,EAAEhU,OAAO,KAAM,CAy7CuIynV,CAAGrhV,KAAK,CACxO,SAASshV,IAAG1zU,IAAW2zU,MAAKA,IAg4B5B,WAAc,IAAI7lV,EAAE,CAAC,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,MAAM,MAAM,MAAM,UAAU,MAAM,MAAM,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,WAA+qB,OAApqBA,EAAE,IAAI,MAAMA,EAAE,IAAI,OAAOA,EAAE,KAAK,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,MAAM,UAAUA,EAAE,OAAO,UAAUA,EAAE,OAAO,UAAUA,EAAE,OAAO,UAAUA,EAAE,OAAO,UAAiBA,CAAC,CAh4B/8B8lV,IAAhB,IAA8B/lV,EAAEmS,EAAEhB,QAAQ,mIAAkI,SAASlR,GAAG,OAvtEvM,SAAYA,EAAEkS,GAAG,IAAIqd,EAAEs2T,IAAG7lV,EAAEqf,WAAW,IAAI,OAAU,MAAHkQ,EAAQvvB,EAAEuvB,CAAC,CAutEiJw2T,CAAG/lV,EAAI,IAAG,MAAO,IAAID,EAAE,GAAG,CACxO,SAASimV,IAAIhmV,GAAS,IAAIkS,EAAEqd,EAAiF,IAA7F05N,KAAc3kP,KAAK4N,EAAEg3O,IAAI5kP,KAAKirB,EAAE45N,IAAI7kP,KAAKqO,GAAG6wL,KAAMC,KAAKn/L,KAAKvE,GAAG4yR,KAAMC,KAAKtuR,KAAKtE,EAAEA,EAAEi3S,IAAI3yS,MAAUirB,EAAE,IAAIo2I,GAAI3lK,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,UAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAOvvB,GAAGgvN,GAAIuuE,GAAI,IAAIjmH,GAAIiH,GAAGC,GAAGihK,IAAG,GAAGthK,IAAI,GAAG,EAAE,CAACjsK,KAAKlS,GAAGkS,EAAE3M,EAAE,IAAIulP,GAAI54O,EAAEnS,EAAG,CAIxO,SAASkmV,MAAMA,IAAIvxM,EAAIwxM,IAAIvoK,GAAG0O,GAAIC,IAAKuD,KAAMC,KAAKoB,IAAI,GAAG,IAAIi1J,IAAIxoK,GAAG0O,GAAIC,GAAIwD,IAAIoB,IAAI,GAAG,IAAIk1J,IAAIzoK,GAAG0O,GAAIC,GAAIwD,IAAIoB,IAAI,GAAG,IAAIm1J,IAAI1oK,GAAG0O,GAAIC,GAAIwD,IAAIoB,IAAI,GAAG,IAAIo8I,IAAI4Y,KAAK5Y,IAAI6Y,KAAK7Y,IAAI8Y,KAAK9Y,IAAI+Y,KAAKC,IAAI,IAAIhoK,GAAIC,GAAGC,GAAGy8D,IAAG,GAAGqqD,IAAI,IAAI,EAAE,CAAC4gD,IAAIC,MAAM,CACxO,SAAShmC,IAAIngT,EAAEkS,GAAG,IAAIqd,EAAEjrB,KAAKvE,EAAE,IAAI64K,GAAIt0K,KAAK4N,EAAEA,EAAE5N,KAAKiB,EAAE,IAAIo7M,GAAIzuM,EAAE++T,MAAM1hT,EAAEvvB,EAAEqoB,EAAE43K,IAAI4I,MAAMizF,MAAM97R,EAAEqoB,EAAE43K,GAAG6I,KAAK9oM,EAAEmxL,EAAG7sL,KAAKtE,EAAEuvB,IAAIrd,EAAEq0U,KAAOjiV,KAAKtE,GAAE,EAAMA,EAAEqoB,EAAE43K,GAAG+I,KAAQ1kM,KAAKtE,IAARuvB,KAAYrd,EAAE6rL,KAAK4d,KAAKJ,MAAMrpM,EAAEs0U,KAAK7qI,KAAKJ,MAAuBj3M,KAAKtE,GAAE,CAAM,CACzO,SAASymV,IAAIzmV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAU,IAARvL,EAAEvvB,EAAEE,EAAEF,EAAM86B,EAAE6iJ,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAIypM,KAAK7gL,EAAEygL,OAAOh2M,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,MAAOl2M,EAAEvF,GAAGD,EAAEwF,EAAE2M,GAAI4zL,IAAI/lC,MAAMmtE,MAAMntO,EAAEk+L,OAAOxe,MAAMG,MAAM7/K,EAAEw/L,KAAKv/L,EAAEsgL,GAAIC,GAAGxgL,EAAEimM,GAAGknC,OAAO39M,EAAE+wJ,GAAIC,GAAGxgL,EAAEimM,GAAGknC,OAAOntO,EAAEk+L,OAAOxe,MAAMG,MAAM7/K,EAAEw/L,KAAKv/L,EAAEuvB,CAAG,CACzO,SAASm3T,IAAI1mV,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAEu1B,EAAEvL,EAAEouJ,GAAG4qB,IAAIvoM,GAAGq9J,MAAMsoJ,MAAM,KAAK7qR,EAAE6iJ,GAAG26B,IAAIpmM,EAAEy0U,KAAK,KAAIphV,EAAEo4K,GAAG4qB,IAAIvoM,EAAE8hS,KAAK,OAAWxM,MAAMl0E,MAAM77M,GAAG87M,IAAQvmL,IAAI2kJ,MAAMqnB,OAAMhsK,EAAE8rT,IAAI10U,EAAEqd,KAAMu3K,MAAMhsK,EAAEivR,GAAIx6R,IAAwBuL,EAAZ+rT,IAAI30U,GAAK,EAAK63S,GAAIx6R,GAAO20R,GAAI6F,GAAIx6R,IAAK67Q,IAAIl5R,EAAEy0U,IAAI7rT,EAAE,CACzO,SAAS8yS,IAAI5tU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAkD,IAAhDA,EAAE3S,EAAEoS,EAAEF,EAAElS,GAAGkS,EAAEA,GAAG4yM,GAAInyM,EAAE,IAAI4zI,IAAKhhJ,EAAEoN,EAAE4c,EAAErxB,OAAO,EAAE,EAAM6B,EAAE,EAAEA,EAAEwF,EAAExF,IAAQ09M,GAAI19M,EAAE4S,EAAE4c,EAAErxB,SAAb48B,EAAqB6iJ,GAAGhrK,EAAE4c,EAAExvB,GAAG,MAAQwvB,GAAGovO,IAAI7jO,EAAE/6B,EAAEmS,EAAElS,GAAG,IAAIuvB,EAAEhqB,EAAEgqB,EAAE5c,EAAE4c,EAAErxB,OAAOqxB,IAAQkuL,GAAIluL,EAAE5c,EAAE4c,EAAErxB,SAAb48B,EAAqB6iJ,GAAGhrK,EAAE4c,EAAEA,GAAG,MAAQA,GAAGovO,IAAI7jO,EAAE/6B,EAAEmS,EAAEA,EAAG,CAEzO,SAAS40U,IAAI9mV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAK96B,EAAEmkT,MAAM50R,EAAEvvB,EAAEg4O,KAAKl9M,EAAE96B,EAAEokT,OAAOpkT,EAAEoS,EAAEpS,EAAEw4N,GAAGjpM,EAAEvvB,EAAEs7K,GAAG/rJ,EAAErd,IAAInS,EAAEC,EAAEskT,GAAG,EAAE,KAAKpyS,EAAEqd,EAAEuL,GAAM96B,EAAE+mV,OAAMxhV,EAAEvF,EAAE+gK,GAAG7uJ,EAAE,QAA0B3M,EAAE+4N,GAAGv+N,GAAGwF,EAAEymL,MAAWhsL,EAAEu6P,GAAGx6P,KAAS++O,GAAI9+O,EAAEkS,GAAMlS,EAAE+mV,OAAMxhV,EAAEvF,EAAE+gK,GAAG7uJ,EAAE,QAAW3M,EAAEymL,KAAM,CACzO,SAAS7V,IAAIn2K,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAA4C,IAA1CA,EAAEo1M,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAG3M,EAAE,IAAIysJ,GAAIziI,EAAEouJ,GAAG39K,EAAE2S,EAAE,KAASmoB,EAAE96B,EAAEhC,IAAI88B,GAAG,GAAI/6B,EAAEwvB,EAAEuL,GAAGnoB,EAAEs1M,GAAGloN,EAAEmoN,OAAOj9B,GAAI1lL,EAAExF,IAAI+gU,IAAI9gU,EAAEuF,IAAI+7M,GAAIthN,EAAEuF,IAAIywK,GAAIh2K,EAAEkS,EAAE+rN,KAAKC,GAAIl+N,EAAE,EAAEkS,GAAG+0M,KAAM+Y,KAAK,MAAM,GAAE,GAAO9B,GAAIl+N,EAAEkS,EAAEksN,KAAK,EAAE,EAAElsN,EAAE,KAAK,MAAM,GAAE,GAAO,CACzO,SAASi8Q,MAAc,IAAInuR,EAAEkS,EAAwD,IAAtEi8Q,IAAIz5I,EAAYsyM,IAAI/oK,GAAGoV,IAAGQ,IAAI,GAAG,GAAG,EAAE,GAAGozJ,IAAIhpK,GAAGoV,IAAGQ,IAAI,GAAG,GAAG,EAAE,GAAG7zL,EAAE,EAAMkS,EAAE,EAAEA,GAAG,GAAGA,IAAK80U,IAAI90U,GAAGu7Q,IAAIztR,GAAGinV,IAAI/0U,GAAGu7Q,IAAI90F,GAAI34L,EAAEkS,IAAIlS,EAAE+4L,GAAI/4L,EAAE,GAAG,KAAKkS,EAAE+0U,IAAI/oV,OAAOgU,IAAK80U,IAAI90U,GAAG+7Q,GAAI+4D,IAAI90U,EAAE,GAAG80U,IAAI,IAAIC,IAAI/0U,GAAG+7Q,GAAIg5D,IAAI/0U,EAAE,IAAI6wM,MAAMmkI,KAAM,CAC1O,SAASC,IAAInnV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAI+6B,EAAEnoB,EAAE,OAAG3S,EAAEA,IAAI+4R,MAAME,OAAkBn+P,EAAE5oB,EAAElS,EAAEuvB,EAAEA,EAAErd,EAAElS,EAAEuvB,EAAErd,EAAElS,EAAEkS,IAAKA,EAAEE,IAASO,GAAN5S,EAAEmS,EAAE0X,GAAM2F,EAAEA,EAAEvvB,EAAED,EAAEG,EAAEF,EAAE,EAAI86B,GAAG/6B,EAAEH,EAAEI,EAAED,EAAEG,EAAEF,GAAQ2S,OAAoBT,EAAE8B,IAASrB,GAAN5S,EAAEmS,EAAE2wB,GAAMtT,EAAEA,EAAEvvB,EAAED,EAAEG,EAAEF,EAAE,EAAID,EAAEH,EAAEI,EAAEuvB,EAAO5c,IAA4B,CAE1O,SAASy0U,IAAIpnV,GAAS,IAAIkS,EAAEqd,EAAIhqB,EAAEu1B,EAAEnoB,EAAElP,EAAY,IAAlC01M,KAAwB5pL,EAAE,IAAIixL,GAAQj7M,EAAE,IAAIogK,GAAI3lK,EAAEuF,EAAE2M,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAyB,IAAIyU,EAAE,IAAIgzJ,GAAxBgY,GAAGC,GAAIr4K,GAAG,IAAoBvF,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAeT,EAAEyrK,GAAGk5C,GAAItnM,EAApB9rB,EAAEzD,EAAE2S,EAAEmoB,EAAE13B,IAAiB,MAAqBsiM,IAAIn2K,EAAE9rB,EAAhByO,EAAE,IAAIogK,IAAepgK,EAAE21M,GAAG/sL,GAAI,OAAOvL,CAAC,CAE1O,SAAS83T,IAAIrnV,GAAG,IAAIkS,EAAE,OAAc,IAAL,GAALlS,EAAEgtN,IAAiBw0F,IAAIxhT,KAAGkS,EAAE,IAAI27M,GAAI2zF,IAAIxhT,KAAMA,GAAG,aAAa05L,GAAIxnL,EAAElS,EAAEoS,GAAGF,EAAElS,GAAG,aAAa05L,GAAIxnL,EAAElS,EAAEqB,GAAG6Q,EAAElS,GAAG,WAAW05L,GAAIxnL,EAAElS,EAAEkS,GAAGA,EAAElS,GAAG,WAAW05L,GAAIxnL,EAAElS,EAAEuvB,GAAGrd,EAAElS,GAAG,iBAAiBy8M,GAAIvqM,EAAElS,EAAED,GAAGmS,EAAElS,GAAG,IAAWkS,EAAElS,EAAC,CAC1O,SAASsnV,IAAItnV,GAAG,IAAIkS,EAAE,OAAc,IAAL,GAALlS,EAAEgtN,IAAiBu0F,GAAIvhT,KAAGkS,EAAE,IAAI27M,GAAI0zF,GAAIvhT,KAAMA,GAAG,cAAc45L,GAAI1nL,EAAc,IAAN,IAALlS,EAAEw1K,KAAYtjK,EAAElS,GAAG,aAAa45L,GAAI1nL,EAAc,IAAN,IAALlS,EAAEw1K,KAAYtjK,EAAElS,GAAG,iBAAiB25L,GAAIznL,EAAElS,EAAE6T,GAAG3B,EAAElS,GAAG,iBAAiB25L,GAAIznL,EAAElS,EAAEiU,GAAG/B,EAAElS,GAAG,IAAWkS,EAAElS,EAAC,CAC1O,SAAS2uL,IAAI3uL,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,GAAG,IAAIzF,EAAgM,OAA9L6rL,GAAG7pL,EAAE8sN,GAAG,KAAKynC,IAAIpJ,GAAIxtE,GAAG39K,EAAE8sN,GAAG,KAAK,GAAGjiC,GAAI7qL,EAAEuvB,GAAGvvB,EAAE86B,EAAE/6B,EAAE4kT,GAAI3kT,EAAEuF,GAAGu/S,GAAI9kT,EAAE86B,GAAG4pR,GAAI1kT,EAAE2S,GAAGiyS,GAAI5kT,GAAE,GAAO++R,GAAI/+R,GAAE,GAAMqlT,GAAIrlT,EAAEyD,GAAGu7R,GAAIh/R,GAAE,GAAM48R,GAAI58R,EAAE,GAAGA,EAAEkS,EAAE,EAAE62K,GAAI/oL,EAAE,IAAGhC,EAAE+tL,IAAI/rL,EAAEkS,EAAE,QAAWlU,EAAEguL,KAAKk5G,GAAIllS,GAAE,GAAcA,CAAC,CAC1O,SAASkyS,IAAIlyS,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAyB,OAAnBo4K,GAAG2M,GAAItqL,EAAEA,EAAEkS,GAAG,OAAYnS,EAAE,IAAIuuQ,GAAIp8P,GAAMq8P,KA19F1E,SAAavuQ,EAAEkS,GAAM4lN,KAAc5lN,IAAIlS,EAAED,EAAEmS,EAAE,CA09F4Fq1U,CAAIxnV,EAAEmyS,IAAIlyS,EAAnD83L,GAAzBvyL,EAASuyN,IAAK,KAAK/3N,EAAEwvB,EAAU,EAAE0jH,EAAK3/H,KAAKugB,IAAI,EAAEw6L,GAAI9oN,EAAE6rN,IAAI,SAA8C,IAAtB0G,IAAI,KAAK/3N,EAAEwvB,GAAGrxB,QAAW25N,GAAI93N,EAAE,IAAI41I,GAAKu5C,GAAIlvL,EAAEA,EAAE83N,IAAI,KAAK/3N,EAAEwvB,EAAExvB,GAAUA,EAAU,CAC3O,SAASynV,IAAIxnV,EAAEkS,GAAG,IAAIqd,EAAEvvB,EAAEkS,EAAEA,EAAElS,EAAE2S,EAAE,IAAI2/J,GAAI/iJ,EAW1C,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAA2B,IAAzBzS,EAAE,EAAE+Q,EAAE,EAAE7M,EAAEvF,EAAEA,EAAEyD,EAAE8B,EAAEvF,EAAEi/K,KAASl/K,EAAEwF,EAAEvF,EAAE2hP,KAAKhmC,KAAK57M,EAAEw7M,OAAOhsL,EAAEouJ,GAAG59K,EAAE07M,KAAK,MAAUvpM,GAAG2xM,IAAIt0L,GAAoBluB,IAAZyS,GAApB5B,EAAeqd,EAAEvvB,GAAOA,IAAE2S,EAAET,EAAEA,GAASE,GAAG0B,EAAEnB,EAAoD,GAAlD3U,EAAEi1I,EAAK3/H,KAAKuc,KAAK,IAAIpsB,EAAE2O,EAAE,EAAEA,EAAE/Q,EAAEA,GAAGA,EAAsB,IAApBy5B,EAAE,GAAG,IAAIr3B,EAAE,IAAY,OAAOzF,EAAE,OAAOA,EAAE88B,CAAC,CAXjM2sT,CAAIznV,EAAEkS,GAAGlS,EAAEuF,EAAEgqB,EAAEvvB,EAAE86B,EAAEvL,EAAEvvB,EAAEuvB,EAAE0yJ,GAAIk6B,GAAG5T,IAAIvoM,EAAEkS,GAAGuoJ,MAAMw9J,QAAQj4T,EAAEA,EAAEugL,GAAGgoB,IAAIvoM,EAAEkS,GAAG6tJ,MAAMyuJ,OAAY,MAALxuT,EAAEA,IAAUA,EAAEA,EAAE,GAAGsgL,GAAItgL,EAAEA,GAAG,EAAGA,EAAEuF,GAAG+6K,GAAItgL,EAAEA,GAAKA,EAAE86B,GAAGwlJ,GAAItgL,EAAEA,GAzkC1L,SAAaA,GAAG,IAAMuvB,EAAIhqB,EAAU,IAAIgqB,EAAVvvB,EAAEkS,EAAElS,EAAUA,EAAE2hP,KAAKhmC,KAAKpsL,EAAEgsL,MAAwBh2M,EAAE,IAAImiV,IAArB/pK,GAAGpuJ,EAAEksL,KAAK,KAAiBz7M,EAAEuF,EAAEvF,EAAE86B,GAAGi7I,GAAI/1K,EAAE2S,EAAEpN,EAAG,CAykC4EoiV,CAAI3nV,GAAG6xT,IAAI7xT,GAyWzM,SAAaA,GAAG,IAAQD,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAkH,IAAhHzN,EA9M5C,SAAavF,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAsC,IAApCkuB,EAAEvvB,EAAEE,EAAEgS,EAAElS,EAAEoD,EAAEuP,EAAEulL,IAAI3yL,EAAE0yL,IAAIx0L,EAAEy0L,IAAIp9J,EAAEm9J,IAAQ7lL,EAAE,EAAEA,EAAEmd,IAAInd,EAAG,IAAI/Q,EAAE,EAAEA,EAAE6Q,IAAI7Q,EAAMk1S,IAAIv2S,EAAEoS,EAAE/Q,KAAIsR,EAAEsgI,EAAK3/H,KAAKsgB,IAAIjhB,EAAEP,GAAG7M,EAAE0tI,EAAK3/H,KAAKugB,IAAItuB,EAAE6M,GAAG3O,EAAEwvI,EAAK3/H,KAAKsgB,IAAInwB,EAAEpC,GAAGy5B,EAAEm4G,EAAK3/H,KAAKugB,IAAIiH,EAAEz5B,IAAqB,OAAhBrD,EAAEuH,EAAEoN,EAAE,EAAE5S,EAAE+6B,EAAEr3B,EAAE,EAAS,IAAI2gP,GAAIpsC,GAAIrlM,GAAGqlM,GAAIv0M,GAAGu0M,GAAIh6M,GAAGg6M,GAAIj4M,GAAG,CA8MhO6nV,CAAI5nV,EAAED,GAAG4S,EAAEgrK,GAAG4qB,IAAIvoM,EAAEkS,GAAGqoJ,MAAMq9J,MAAM,KAAKn0T,EAAEkP,EAAET,EAAES,EAAE4c,EAAEvxB,EAAE2U,EAAE5S,EAAE4S,EAAE3S,EAAEqB,EAAEkE,EAAExF,EAAEC,EAAEA,EAAEuF,EAAE9B,EAAE2O,EAAE7M,EAAE2M,EAAElS,EAAEA,EAAE86B,EAAE98B,EAlsJpI,SAAagC,EAAEkS,GAAGlS,EAAEkS,EAAEA,CAAC,CAksJ+G21U,CAAI7nV,EAAEkS,EAAE,IAAI+iM,GAAI5zM,EAAE+Q,IAAQY,EAAE,IAAI2yJ,GAAI3lK,EAAE2S,GAAGK,EAAEhT,EAAEgT,EAAEuc,EAAEA,EAAErxB,QAAkD6B,EAAE8/K,GAAI+yC,GAAI,IAAI3d,IAAvDnhM,EAAE6pK,GAAGC,GAAI5qK,GAAG,MAASL,EAAEpN,EAAEvF,EAAEA,EAAI8T,EAAE9V,EAAEuH,EAAEgqB,EAAEvvB,GAAyB8T,EAAE9T,EAAE8T,EAAE5B,GAAGo4M,GAAIuI,GAAI5M,GAAIrC,GAAI9vM,EAAEvO,IAAIuO,EAAE/T,EAAE+T,EAAE9T,EAAE8T,EAAEyb,EAAEzb,EAAE5B,IAAI,KAAM4oB,EAAEgpL,GAAIhwM,EAAEvO,GAAG+gL,GAAIxyK,EAAEvO,EAAEs1N,GAAI96N,EAAE+6B,GAAI,CAzW1IgtT,CAAI9nV,GAAG+nM,GAAI/nM,EAAEkS,GAAGqoJ,MAAM89J,KAAKr4T,EAAE2S,EAAE,CAC3O,SAASo1U,IAAI/nV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAIr3B,EAAEzF,EAA0C,IAAxC+B,EAAE,EAAE/B,EAAEuxB,EAAMrd,IAAGnS,EAAEwvB,GAAGvvB,EAAEuvB,EAAErxB,OAAO,GAAGF,IAAI,GAAM88B,EAAE,IAAI6qI,GAAI3lK,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAQ,CAAwD,IAAvC6pM,GAAhBxiM,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAWuiI,MAAMkhG,MAAMC,MAAM05B,MAAM3yR,EAAErF,EAAEF,EAAED,EAAM0D,EAAE44T,IAAI92T,GAAGk6K,MAAMC,MAAMi8B,KAAKl4M,EAAE83M,MAAS59B,GAAGl6K,EAAEg4M,KAAK,IAAM77M,EAAEI,EAAED,EAAEA,GAAG/B,CAAC,CAAC,CAC3O,SAASgqV,IAAIhoV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAK96B,EAAEmkT,MAAMrpR,EAAE96B,EAAEokT,KAAKpC,GAAIhiT,EAAEkS,EAAEqd,GAAGxvB,EAAEC,EAAEskT,GAAG,EAAE,KAAK/0R,EAAErd,EAAE4oB,GAAM96B,EAAE+mV,MAAMxhV,EAAEvF,EAAE+gK,GAAGxxI,EAAE,MAAMvvB,EAAE6sB,OAAOtnB,EAAEvF,EAAEioV,GAAG14T,EAAEhqB,IAAQA,GAAgBA,EAAE+4N,GAAGv+N,GAAGwF,EAAEymL,MAAvBhsL,EAAEu6P,GAAGx6P,IAA6BC,EAAEu6P,GAAGx6P,KAASiiT,GAAIhiT,EAAEkS,EAAEqd,GAAMvvB,EAAE+mV,OAAMxhV,EAAEvF,EAAE+gK,GAAGxxI,EAAE,QAAWhqB,EAAEymL,KAAM,CAC3O,SAASk8J,IAAIloV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAY,OAAVyF,EAAEzD,EAAEi6T,GAAG1qS,KAASA,GAAG5c,EAAE3S,EAAE2S,EAAET,GAAGlU,EAAEyF,EAAE8mN,GAAIvqN,EAAEkS,EAAElS,EAAEs7K,GAAGppK,EAAElU,IAAI88B,EAAEnoB,EAAE3S,EAAE8sR,GAAG56Q,EAAElU,EAAE88B,GAAM96B,EAAEk+L,OAAMn+L,EAAEwvB,EAAEhqB,EAAEvF,EAAEmoV,GAAGpoV,EAAE,OAAO49K,GAAGl6K,EAAE,IAAIktT,OAAOprT,EAAEvF,EAAE+gK,GAAG/iK,EAAEuH,IAAMA,GAAGA,EAAEymL,MAAKs1B,GAAIthN,EAAEuF,IAAIywK,GAAIh2K,EAAEA,EAAEskT,GAAG,EAAE/0R,EAAE9rB,EAAEyO,GAAE,IAAezO,GAAc8rB,CAAE,CAE3O,SAAS64T,IAAIpoV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAqF,GAAnFvL,EAAmB,IAAIk4K,GAApBv1L,EAAEyrK,GAAGsL,GAAIue,KAAI,GAAa7pB,GAAG+pB,GAAIx1L,EAAEA,EAAEhU,QAAQ,GAAG,GAAI48B,EAAE6iJ,GAAG4qB,IAAIvoM,GAAGgoM,MAAM2qE,MAAM,IAAU,IAAIptQ,EAAE,IAAIogK,GAAI7qI,EAAE1oB,GAAG7M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAyB68M,GAAGxS,IAAnBxoM,EAAE49K,GAAGC,GAAIr4K,GAAG,IAAamiP,QAAQ3sC,GAAG/6M,IAAIgwN,GAAI,IAAIwhD,GAAIzxQ,EAAEmS,KAAK01L,GAAIr4K,EAAExvB,EAAEqS,GAAI,OAAOmd,CAAC,CAC5O,SAAS84T,IAAIroV,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAEu1B,EAAEnoB,EAAElP,EAAE,IAAGzD,EAAED,EAAEwvB,EAAEnsB,GAAT,CAAoB,IAAImC,EAAE,IAAIupO,GAAG7hB,GAAGm1E,GAAI7yQ,GAAGvvB,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG7lN,IAAI,CAAwB,IAAIoN,EAAE,IAAIm8N,GAAG7hB,GAAGi1E,GAAxBz+R,EAAbk6K,GAAGwtC,GAAG5lN,GAAG,IAAQxF,EAAE/B,GAAyBgC,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGz4M,KAAKmoB,EAAE6iJ,GAAGwtC,GAAGx4M,GAAG,KAAM4c,EAAEvxB,GAAGkU,IAAIlS,EAAEA,EAAE86B,EAAE13B,IAAG,GAAMilV,IAAIroV,EAAEkS,EAAEzO,EAAE,CAACzD,EAAED,EAAEwvB,EAAEnsB,IAAG,CAAnL,CAAuL,CAG5O,SAAS+5L,IAAIn9L,GAAG,IAAIkS,EAAM,OAAJA,EAAE,EAASlS,GAAG,KAAK,IAAIkS,EAAE,EAAE,MAAM,KAAK,IAAIA,EAAE,EAAE,MAAM,KAAK,IAAIA,EAAE,EAAE,MAAM,KAAK,IAAIA,EAAE,GAAG,MAAM,KAAK,IAAIA,EAAE,GAAG,MAAM,KAAK,IAAIA,EAAE,GAAG,MAAM,KAAK,GAAGA,EAAE,IAAI,MAAM,KAAK,GAAGA,EAAE,IAAI,MAAM,KAAK,GAAGA,EAAE,IAAI,MAAM,KAAK,GAAGA,EAAEqtR,IAAK,OAAOrtR,CAAC,CAG5O,SAASqkO,IAAIv2O,EAAEkS,GAAW,GAALA,EAAEA,IAAMvC,MAAM3P,EAAE6T,GAAI7T,EAAE6T,EAAEysK,IAAKgpC,GAAS,GAALp3M,EAAEA,GAAMquK,GAAGruK,EAAElS,EAAEA,EAAEuvB,KAAOvvB,EAAE6T,EAAEo/H,EAAK3/H,KAAKsgB,IAAI5zB,EAAE6T,EAAEysK,IAAKgpC,GAAS,GAALp3M,EAAEA,GAAMquK,GAAGruK,EAAElS,EAAEA,EAAEuvB,MAAO5f,MAAM3P,EAAEuvB,GAAIvvB,EAAEuvB,EAAE+wJ,IAAKgpC,GAAS,GAALp3M,EAAEA,GAAMquK,GAAGruK,EAAEqd,EAAErd,EAAEqd,KAAOvvB,EAAEuvB,EAAE0jH,EAAK3/H,KAAKugB,IAAI7zB,EAAEuvB,EAAE+wJ,IAAKgpC,GAAS,GAALp3M,EAAEA,GAAMquK,GAAGruK,EAAEqd,EAAErd,EAAEqd,MAAO,CAC7O,SAAS0mR,IAAIj2S,GAAG,IAAIkS,EAAInS,EAAEwF,EAAS,IAAP2M,EAAE,KAASnS,EAAEkrN,GAAG9kH,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,GAAGn+K,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,KAAKlS,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,OAAO67L,IAAGrrN,IAA6B,GAATwF,EAAEylN,IAAfrtC,GAAGwtC,GAAGprN,GAAG,KAAiBmS,GAAiB,GAAGA,GAAG4rM,GAAIv4M,GAAI,OAAO,OAAnC2M,EAAE4rM,GAAIv4M,GAAmC,OAAO,CAAK,CAC7O,SAAS+iV,IAAItoV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAK96B,EAAEmkT,MAAM50R,EAAEvvB,EAAEhC,EAAE88B,EAAE96B,EAAEokT,KAAKhtE,GAAIp3O,EAAEkS,GAAGnS,EAAEC,EAAEskT,GAAG,EAAE,KAAKpyS,EAAEqd,EAAEuL,GAAM96B,EAAE+mV,MAAMxhV,EAAEvF,EAAE+gK,GAAG7uJ,EAAE,MAAMlS,EAAE6sB,OAAOtnB,EAAEvF,EAAEioV,GAAG/1U,EAAE3M,IAAQA,GAAgBA,EAAE+4N,GAAGv+N,GAAGwF,EAAEymL,MAAvBhsL,EAAEu6P,GAAGx6P,IAA6BC,EAAEu6P,GAAGx6P,KAASq3O,GAAIp3O,EAAEkS,GAAMlS,EAAE+mV,OAAMxhV,EAAEvF,EAAE+gK,GAAG7uJ,EAAE,QAAW3M,EAAEymL,KAAM,CAC7O,SAASu8J,IAAIvoV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAK96B,EAAEmkT,MAAMrpR,EAAE96B,EAAEokT,OAAOpkT,EAAEoS,EAAEpS,EAAEw4N,GAAGtmN,EAAElS,EAAEs7K,GAAGppK,EAAEqd,IAAIxvB,EAAEC,EAAEskT,GAAG,EAAE,KAAK/0R,EAAErd,EAAE4oB,GAAM96B,EAAE+mV,OAAMxhV,EAAEvF,EAAE+gK,GAAGxxI,EAAE,QAA0BhqB,EAAE+4N,GAAGv+N,GAAGwF,EAAEymL,MAAWhsL,EAAEu6P,GAAGx6P,OAAWC,EAAEoS,EAAEpS,EAAEw4N,GAAGtmN,EAAElS,EAAEs7K,GAAGppK,EAAEqd,IAAOvvB,EAAE+mV,OAAMxhV,EAAEvF,EAAE+gK,GAAGxxI,EAAE,QAAWhqB,EAAEymL,KAAM,CAE/O,SAASw8J,IAAIxoV,GAAG,IAAIkS,EAAE,IAAIlS,EAAEA,EAAG,MAAMkzK,GAAI,IAAI4O,GAAI,8CAA8C9hL,EAAE86B,IAAe,GAAX5oB,EA/+DrG,SAAalS,GAAS,OAANovP,KAAaxuD,GAAIyuD,IAAIrvP,GAAG29K,GAAG+5B,GAAI23C,IAAIrvP,GAAG,KAAKyoV,KAAK,IAAI,CA++DmCC,CAAI1oV,EAAEA,GAAS,MAAHkS,EAAS,MAAMghK,GAAI,IAAI4O,GAAI,6CAA6C9hL,EAAE86B,EAAE,MAAMk8R,KAAK1tI,GAAI2tI,KAAIA,IAAG51T,GAAG61T,MAAM,OAAOv5I,GAAGzrK,EAAE,IAAI,CAC9O,SAASyjR,IAAI31R,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAW,OAATA,EAAE96B,EAAE2wT,OAAc71R,EAAE82M,OAAMrsO,EAAEkvN,GAAIz0N,EAAE86B,KAASA,GAAGvL,EAAEvvB,EAAE8iN,KAAK/iN,GAAGmS,EAAElS,EAAE8iN,OAAQ,EAAE9iN,EAAE64T,GAAG,MAAM74T,EAAE2wT,KAAKnzL,GAAGx9H,GAAG,EAAEkS,EAAE,KAAK,MAAOlS,EAAE2oV,GAAGhrK,GAAGp4K,EAAE,IAAIgqB,GAAKxvB,GAAGA,EAAEisL,KAAKhsL,EAAEuhN,MAAMvhN,EAAEwhN,MAAMjyL,GAAG,GAAG0mJ,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAEuvB,EAAEuL,EAAEv1B,IAAWA,GAAWu1B,CAAC,CAC9O,SAAS8tT,IAAI5oV,GAAG,IAAIkS,EAAInS,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAc,IAAZ2U,EAAE,EAAEmoB,EAAE96B,EAAE86B,EAAEv1B,EAAMxF,EAAE,EAAEA,EAAE+6B,EAAEvL,EAAErxB,SAAS6B,EAAwC,IAAlC09M,GAAI19M,EAAE+6B,EAAEvL,EAAErxB,QAAbuF,EAAqBk6K,GAAG7iJ,EAAEvL,EAAExvB,GAAG,KAAUwF,EAAExF,EAAE,EAAEwF,EAAEu1B,EAAEvL,EAAErxB,SAASqH,EAAMk4M,GAAIl4M,EAAEu1B,EAAEvL,EAAErxB,QAAbF,EAAqB2/K,GAAG7iJ,EAAEvL,EAAEhqB,GAAG,KAAqB2M,EAAb+tQ,GAAIx8Q,EAAE1D,EAAE/B,EAAE+B,GAAOC,EAAEA,EAAEyD,EAAEyO,GAAGlU,EAAEkU,GAAGS,GAAG3S,EAAEhC,EAAEyF,EAAEyO,GAAGlU,EAAEkU,GAAGA,EAAEA,EAAG,OAAOS,CAAC,CAC/O,SAASq9T,IAAIhwU,EAAEkS,GAAG,IAAIqd,EAAE,IAAGijM,GAAItgN,GAAGmrJ,MAAM0uI,QAAcx8Q,EA/gBtD,SAAavvB,EAAEkS,GAAG,OAAOlS,EAAE2S,GAAG,KAAK,EAAE,OAAOT,IAAIs+Q,KAAMI,KAAK5K,IAAIC,IAAI,KAAK,EAAE,OAAO/zQ,IAAIs+Q,KAAMI,KAAK5K,IAAIE,IAAI,KAAK,EAAE,OAAOh0Q,IAAIs+Q,KAAMI,KAAK1K,IAAID,IAAI,QAAQ,OAAOC,IAAK,CA+gBzG2iE,CAAIlrK,GAAG4qB,IAAIr2L,EAAE+/P,KAAK,KAAKt0F,GAAG4qB,IAAIvoM,EAAE+rS,KAAK,MAAMhkG,GAAI71L,EAAE+/P,IAAI1iP,IAAM67L,IAAG,IAAI0jB,GAAG7hB,GAAGu5F,GAAIt0S,GAAGlS,EAAE27M,KAAK,IAAIpoE,MAAc,OAAOhkH,EAAE5c,GAAG,KAAK,EAAEo1L,GAAI71L,EAAE65R,KAAKvb,KAAMG,MAAM,MAAM,KAAK,EAAE5oF,GAAI71L,EAAE65R,KAAKvb,KAAMK,MAAO,CAE/O,SAAStmG,MAAMw2D,IAAIhiP,KAAKuF,KAAKslL,KAAKL,KAAMC,MAAMllL,KAAKlB,EAAE,KAAKkB,KAAKtE,EAAE,KAAKsE,KAAKw2B,EAAE,KAAKx2B,KAAK1E,EAAE,KAAK0E,KAAKqO,EAAE,KAAKrO,KAAKirB,EAAE,KAAKjrB,KAAKtG,EAAE,KAAKsG,KAAK8N,EAAE,KAAK9N,KAAKvE,EAAE,KAAKuE,KAAK4N,EAAE,KAAK5N,KAAKiB,EAAE,KAAKjB,KAAKjD,EAAE,KAAKiD,KAAKpE,EAAE,KAAKoE,KAAKuP,EAAE,KAAKvP,KAAK0P,GAAE,EAAM1P,KAAKoO,GAAE,CAAK,CAC/O,SAASs3R,MAAMA,IAAIt1J,EAAIw1J,IAAI,IAAIzwF,GAAIqvI,IAAI,GAAG3+C,IAAI,IAAI1wF,GAAI,oBAAoB,GAAG2wF,IAAI,IAAI3wF,GAAI,cAAc,GAAG4wF,IAAI,IAAI5wF,GAAI,cAAc,GAAG6wF,IAAI,IAAI7wF,GAAI,QAAQ,GAAG8wF,IAAI,IAAI9wF,GAAI,WAAW,GAAG+wF,IAAI,IAAI/wF,GAAI,WAAW,GAAGgxF,IAAI,IAAIhxF,GAAI,eAAe,EAAE,CAC/O,SAASuqI,IAAIhkV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAE,GAAM,GAAH2M,EAAM,OAAmB,IAAJ,EAAPlS,EAAEA,EAAE,IAAS,GAAGkS,EAAE,EAAG,MAAMghK,GAAI,IAAI+N,GAAI,yBAAgC,IAAP17K,EAAE2M,GAAG,IAAQlS,EAAED,EAAG,OAAOC,EAAEuF,EAAE,EAAuB,GAArBgqB,EAAEvvB,EAAEA,EAAEuF,GAAG2M,EAAE,IAAM,GAAFA,GAASlS,EAAEuF,EAAE,EAAE,CAAU,GAAGA,GAAZxF,EAAEw4L,GAAIv4L,IAAW,OAAO,EAAiBuvB,EAANxvB,GAAGwF,GAAMgqB,GAAOA,CAAE,CAAC,OAAc,IAANA,EAAErd,EAAK,CAEhP,SAAS62U,IAAI/oV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAQ,GAAN88B,EAAE5oB,EAAE3M,EAA+B,IAAvBgqB,EAAEomQ,IAAI76P,GAAG/6B,EAAE49K,GAAG39K,EAAE2S,EAAE,KAASA,EAAE,EAAEA,EAAE3S,EAAEhC,IAAI2U,EAAU,GAAG+qT,IAAV1/T,EAAE+B,EAAE4S,KAAc4c,KAAOvxB,EAAE+B,IAAI/B,EAAE+B,EAAE,IAAIi/K,GAAIyM,IAAGztL,EAAE,IAA3BuH,EAA+BvH,EAAE+B,GAAG0D,EAAEk6K,GAAGpuJ,EAAE4xI,GAAG6nL,IAAIluT,EAAEA,EAAEgyL,GAAGhyL,EAAEkyL,IAAI,KAAK,IAAIggE,GAAGlyP,IAAQv1B,EAAEvH,GAAG,OAAO+qV,IAAI/oV,EAAE29K,GAAG0O,GAAI9mL,EAAE9B,GAAG,KAAQ,OAAOyO,CAAC,CAChP,SAAS+2U,IAAIjpV,EAAEkS,EAAEqd,GAAG,IAAU9rB,EAAN1D,EAAE29R,IAAUn4R,EAAExF,EAAEC,GAAO86B,EAAEv1B,aAAajH,MAAMiH,EAAE,GAAG,KAAQA,IAAIu1B,EAAG6xJ,IAAEpnL,KAAU9B,EAAEyO,GAAGA,EAAEtT,aAAe6E,EAAEi6R,IAAIxrR,IAA/By6K,IA1vEjG,SAAa3sL,GAAG,SAASkS,IAAI,CACV,OAAlBA,EAAEtT,UAAUoB,GAAG,CAAC,EAAS,IAAIkS,CAAC,CAyvEqGg3U,CAAIzlV,GAAIkpL,IAAEgtD,GAAGpqN,GAAGrd,IAAIy6K,IAAEvY,GAAG3/B,GAAK10I,EAAEC,GAAG2sL,KAAE,IAAI,IAAIh6K,EAAE,EAAEA,EAAE1U,UAAUC,SAASyU,EAAG1U,UAAU0U,GAAG/T,UAAU+tL,IAAE7xJ,IAAI6xJ,IAAE8+D,GAAG3wN,EAAE,CACjP,SAASswL,IAAGprN,GAAS,IAAN,IAAIkS,GAASyrK,GAAGoG,GAAG/jL,EAAEA,GAAG,IAAIu7M,MAAK,CAAW,GAAVv7M,EAAED,EAAE84S,GAAG74S,IAAOA,EAAED,EAAG,OAAO,EAA0B,GAApBC,EAAEA,EAAE29K,GAAG39K,EAAED,EAAE07M,KAAK,IAAO5xB,GAAG7pL,EAAEA,EAAE,IAAI,CAAuD,GAAtDkS,EAAEyrK,GAAG39K,EAAEA,EAAE,IAAIA,EAAEA,EAAEkS,EAAElS,GAAGA,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAIkgK,IAAKuwF,GAAI3iQ,EAAEkS,EAAElS,EAAED,GAAMmS,EAAEA,EAAG,MAAOkwK,GAAIlwK,EAAEA,IAAIywP,GAAI3iQ,EAAEkS,EAAEyrK,GAAG81D,GAAIvhO,EAAEA,GAAG,KAAMlS,EAAED,EAAEmS,EAAEnS,CAAC,CAAC,CAAC,OAAO,CAAI,CACjP,SAASuxQ,IAAItxQ,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAA6D,IAA3DmoB,EAAK,MAAH5oB,EAAQ,EAAElS,EAAEkS,EAAEu7B,GAAGv7B,GAAGnS,EAAmB,OAAhBwvB,EAAEvvB,EAAEA,EAAEK,IAAIy6B,IAAW,IAAIx8B,MAAMixB,EAAO5c,EAAE,EAAEA,EAAE5S,EAAE7B,OAAOyU,IAAY,GAAPpN,EAAExF,EAAE4S,GAAM3S,EAAEkS,EAAEwoS,GAAGxoS,EAAE3M,EAAEsnM,MAA+E,OAA3D,GAAV9sM,EAAE7B,QAAW6B,EAAE7B,OAAO,EAAEu7N,GAAIz5N,EAAEA,EAAE86B,IAAQ/6B,EAAEyhB,OAAO7O,EAAE,KAAK3S,EAAEuvB,EAAEulN,GAAI90O,EAAEkS,GAAU3M,EAAEu1M,KAAM,OAAO,IAAI,CACjP,SAASquI,IAAInpV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAsB,IAApBv1B,EAAE,EAAE2M,EAAEE,GAAE,EAAK0oB,EAAE,KAAS/6B,EAAE,IAAI4lK,GAAIshJ,GAAI/0S,IAAInS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,KAASC,EAAEuvB,EAAEA,EAAEA,KAAIvvB,EAAEuvB,EAAEA,EAAEA,IAAG,EAAKuL,EAAEwsR,GAAI/3R,EAAErd,GAAMqd,EAAEuL,EAAGv1B,GAAG4jV,IAAInpV,EAAE86B,GAAYA,EAAE1oB,GAAGmd,EAAEvvB,GAAGuvB,EAAEhqB,EAAEA,EAAEgqB,EAAExvB,EAAEwF,IAAGgqB,EAAEuL,GAAE,EAAK6sJ,GAAI3nL,EAAEoD,EAAEmsB,GAAGhqB,GAAG4jV,IAAInpV,EAAE86B,KAAK,OAAOv1B,CAAC,CAEjP,SAASgiM,IAAIvnM,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAmD,GAAvCA,EAAEsuT,IAAIppV,EAAhBuF,EAAE,IAAI+sK,IAAepgK,EAAEyrK,GAAG4qB,IAAIvoM,GAAGgoM,MAAM2qE,MAAM,IAAU,IAAI5yQ,EAAE,IAAI4lK,GAAIzzJ,EAAEE,GAAGrS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyB68M,GAAGxS,IAAnBh5K,EAAEouJ,GAAGC,GAAI79K,GAAG,IAAa2nP,QAAQ3sC,GAAG/6M,KAAK86B,EAAEm4G,EAAK3/H,KAAKugB,IAAIiH,EAAEsuT,IAAI75T,EAAEhqB,KAAkC,OAAhB,GAAZA,EAAEgqB,EAAErxB,QAAW6pM,GAAI/nM,EAAEqpV,IAAIvuT,IAAc,GAAJA,EAAMv1B,EAAE,IAAI,CACjP,SAAS+jV,IAAItpV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAA8BuH,GAANxF,GAAtB+6B,EAAE6iJ,GAAG0pB,GAAIn1L,EAAE3M,EAAE,GAAG,IAAIgqB,GAAMvxB,GAAMqD,EAA8BoC,GAANkP,GAAtB3U,EAAE2/K,GAAG0pB,GAAI93K,EAAE5c,EAAE,GAAG,IAAI5S,GAAM/B,GAAMqD,EAAEkE,IAAI05P,MAAMg4B,KAAKlvF,GAAI/nM,GAAGgoM,MAAM8hI,KAAKnsJ,GAAG4qB,IAAIxoM,EAAE+pU,KAAK,KAAK/hI,GAAI/nM,GAAGgoM,MAAM8hI,KAAKhvS,GAAUitK,GAAI/nM,GAAGgoM,MAAM+hI,KAApBtmU,GAAGwzR,IAAsBt5G,GAAG4qB,IAAI51L,EAAEo3T,KAAK,IAAuB/rU,EAAE,CACjP,SAASurV,IAAGvpV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAgF,IAAxBvL,GAAtDuL,EAAEmvL,GAAIlxB,GAAIm8F,IAAItzC,GAAI33B,GAAIlxB,GAAO,MAAH7mL,EAAQ,EAAEqxM,GAAGrxM,GAAGijR,MAAM,OAAUn1R,EAAEkS,EAAEhU,OAAO,EAAEqH,EAAE,KAASxF,EAAEC,EAAEkS,EAAEqd,GAAGxvB,EAAEwF,EAAExF,EAAEA,EAAEA,EAAEC,EAAG,GAAGD,EAAEA,GAAG+6B,GAAGwkN,GAAGv/O,EAAE/B,EAAEkU,GAAkE,OAA7D3M,EAAgBA,EAAEvF,EAAED,EAAEC,EAAnBA,EAAEkS,EAAEqd,GAAGxvB,EAAEC,EAAaikL,GAAGlkL,EAAEwvB,EAAExvB,EAAE+6B,GAAGg5I,GAAG/zK,EAAEmS,EAAEnS,EAAEwF,KAAKvF,EAAE86B,IAAI96B,EAAEuF,GAAS,EAAM,OAAO,CAAK,CAClP,SAASuqO,IAAG9vO,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAyL,OAAvLT,GAAG,IAASnS,EAAW,KAAjBwvB,EAAEvvB,EAAEyD,GAAO2nR,QAAY77P,IAAI,SAAYrd,EAAE,IAAIS,EAAE4c,GAAGrd,EAAE4oB,EAAE96B,EAAEgT,GAAGd,EAAEqd,GAAG,GAAGrd,EAAE3M,EAAEvF,EAAE8T,GAAG5B,EAAElS,EAAEgT,GAAG,GAAGd,GAAUA,EAAE,IAAIS,EAAE5S,EAAE2jO,IAAI,EAAE5oM,EAAEvL,GAAGrd,EAAE,GAAG3M,EAAEvF,EAAEgT,GAAGd,EAAE,GAAGqd,GAAG,GAAGrd,IAAOS,EAAE5S,EAAE2jO,IAAI,EAAE5oM,EAAE/6B,EAAE0jO,IAAI,EAAEl+N,EAAEgqB,GAAGrd,EAAE,IAAUwtM,GAAGn6M,EAAEk+N,IAAI3oM,EAAE2oM,IAAI9wN,EAAE+wN,IAAI,CAClP,SAAS8lH,IAAIxpV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAkD,IAAhDrO,KAAKirB,EAAE,IAAI+iJ,GAAIhuK,KAAKvE,EAAEC,EAAED,EAAEu2K,IAAI/wK,EAAE+wK,IAAIpkK,EAAEqkK,IAAIhnJ,EAAEgnJ,IAAQ5jK,EAAEmsP,IAAI9+P,EAAE,GAAG2S,EAAET,GAAGS,EAAE5S,EAAEwvB,GAAIuL,EAAE6iJ,GAAGohF,GAAIpsP,GAAG,GAAG5S,EAAEkzI,EAAK3/H,KAAKsgB,IAAI7zB,EAAE+6B,EAAE96B,GAAGuF,EAAE0tI,EAAK3/H,KAAKsgB,IAAIruB,EAAEu1B,EAAE5oB,GAAGA,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAE4oB,EAAE96B,GAAGuvB,EAAE0jH,EAAK3/H,KAAKugB,IAAItE,EAAEuL,EAAE5oB,GAAG5N,KAAKtE,EAAE,IAAIkoM,GAAInoM,EAAEwF,EAAE2M,EAAEnS,EAAEwvB,EAAEhqB,EAAE,CAClP,SAASkkV,IAAIzpV,EAAEkS,GAAG,IAAMnS,EAAI+6B,EAAEnoB,EAAElP,EAAE,IAAIq3B,EAAE,IAAI6qI,GAAI3lK,EAAEkS,GAAG4oB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAyB,IAAIuF,EAAE,IAAIkiK,GAAxBgY,GAAGC,GAAI9iJ,GAAG,IAAoB96B,GAAGyD,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAoD,KAA3CyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAAMpC,IAAI49P,MAAMk4B,MAAMuyD,IAAI/2U,EAAET,GAAOnS,EAAE,IAAI+uO,GAAG7hB,GAAGm1E,GAAIzvR,GAAG3S,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAAoB+xS,GAAbn0H,GAAGwtC,GAAGprN,GAAG,IAAUmS,EAAK,CAClP,SAASy3U,IAAI3pV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEuE,KAAKirB,EAAEvvB,EAAED,EAAE49K,GAAG4qB,IAAIvoM,GAAGq9J,MAAMsoJ,MAAM,KAAKzzS,EAAEouK,GAAIC,GAAGgoB,IAAIvoM,EAAE4lT,OAAOr2R,EAAE+wJ,GAAIC,GAAGgoB,IAAIvoM,EAAE4pV,OAAO7pV,IAAI4yR,KAAM/xE,MAAM7gN,GAAG8gN,KAAK9gN,GAAG6yR,IAAKtuR,KAAK4N,EAAEA,EAAEqd,EAAIjrB,KAAK4N,EAAE,GAAGA,EAAEqd,GAAIjrB,KAAK8N,EAAEkuK,GAAIC,GAAGgoB,IAAIvoM,EAAE+nT,OAAOzjT,KAAKiB,EAAE+6K,GAAIC,GAAGgoB,IAAIvoM,EAAEkrT,OAAO5mT,KAAKw2B,EAAE96B,EAAEkS,EAAEqd,EAAErxB,MAAM,CAGlP,SAAS6gK,MAAMA,IAAIrqB,EAAIm1M,IAAI,IAAIlmI,GAAI,IAAImmI,IAAI,IAAIpmI,IAAK3jD,MAAMq8I,KAAKytC,KAAKE,IAAI,IAAIrmI,GAAI0qG,IAAI,IAAI47B,IAAI,IAAItmI,GAAI8qG,IAAIC,KAAKw7B,IAAI,IAAIvmI,GAAIuwH,IAAIj8H,GAAI,IAAIkyI,IAAI,IAAIxmI,GAAIymI,KAAKz8H,MAAM,IAAO0hH,IAAI5R,IAAI4sB,IAAI1tC,IAAI2tC,IAAIztC,IAAI0tC,IAAIjoE,IAAIkoE,IAAIxkJ,IAAIykJ,IAAIjmB,IAAIkmB,IAAIhmB,IAASxlK,KAALyrL,IAAW16C,IAAKzJ,IAAI4J,GAAG,CAClP,SAASw6C,IAAI3qV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAE,GAAGrB,EAAEA,EAAE86B,EAAE,GAAG+uJ,GAAG33K,EAAE,MAAKlS,EAAEA,EAAEs4O,KAAyBx9M,EAAK,OAAd98B,GAAXoU,EAAEurK,GAAGzrK,EAAE,KAAQ26L,MAAe,EAAE0W,GAAGvlN,GAAG2U,EAAEimN,GAAI54N,EAAEA,EAAE86B,GAAGvL,EAAEvvB,EAAEA,EAAED,EAAE4S,IAA6B,IAApB5S,EAAE49K,GAAGpuJ,EAAE5c,EAAE,KAAKtR,EAAEkuB,EAAEvxB,EAAMyF,EAAE,EAAEA,EAAEpC,IAAIoC,EAAU,IAAP8B,EAAExF,EAAE0D,IAAQ23K,MAAMtgJ,GAAGv1B,EAAEsnN,GAAGz6M,GAAa,OAATu4U,IAAI3qV,EAAEoS,IAAU,EAAQ,OAAO,CAAK,CAGlP,SAASmtJ,MAAMA,IAAI7qB,EAASsoI,KAAW4tE,IAAI,IAAIjsI,GAAIksI,IAA5BC,IAAW3tE,KAA0B4tE,IAAI,IAAIpsI,GAAIqsI,KAAKt9H,MAAM,IAAO1V,IAAK,GAAGizI,IAAI,IAAItsI,GAAIusI,IAAIlzI,IAAK,IAAIA,IAAK,GAAGmzI,IAAI,IAAIxsI,GAAIysI,IAAIpzI,IAAK,IAAIqzI,IAAI,IAAI1sI,GAAI2sI,KAAI,GAAOC,IAAI,IAAI5sI,GAAI6sI,KAAI,GAAMC,IAAI,IAAI9sI,GAAI+sI,KAAI,GAAOC,IAAI,IAAIhtI,GAAIitI,KAAK,EAAE,CACnP,SAASC,IAAI7rV,EAAEkS,EAAEqd,GAAG,OAAOrd,GAAG,KAAK,EAAyF,OAAtFlS,EAAEuF,IAAIvF,EAAEuF,EAAE,IAAIwlN,GAAIl9B,IAAG7tL,EAAE,EAAE,IAAIqnN,IAAIrnN,EAAEuF,IAAIvF,EAAEuF,IAAIvF,EAAEuF,EAAE,IAAIwlN,GAAIl9B,IAAG7tL,EAAE,EAAE,SAAIooN,GAAIpoN,EAAEuF,EAAEo4K,GAAGpuJ,EAAE,KAAY,KAAK,EAAyF,OAAtFvvB,EAAED,IAAIC,EAAED,EAAE,IAAIgrN,GAAIl9B,IAAG7tL,EAAE,EAAE,IAAIqnN,IAAIrnN,EAAED,IAAIC,EAAED,IAAIC,EAAED,EAAE,IAAIgrN,GAAIl9B,IAAG7tL,EAAE,EAAE,SAAIooN,GAAIpoN,EAAED,EAAE49K,GAAGpuJ,EAAE,KAAao9S,IAAI3sU,EAAEkS,EAAEqd,EAAE,CACnP,SAASu8T,IAAG9rV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,GAAGooM,GAAG7oM,KAAK6oM,GAAG/6M,GAAI,OAAO,EAAK,IAAI6pL,GAAG33K,EAAE,IAAK,OAAO,EAAiB,GAAXS,EAAEgrK,GAAGzrK,EAAE,IAAOlS,EAAEi/K,MAAMtsK,EAAEssK,KAAM,OAAO,EAAe,IAATnkJ,EAAEnoB,EAAEgpM,KAAS57M,EAAEC,EAAE27M,KAAK57M,EAAEw7M,MAAyB,GAAlBhsL,EAAExvB,EAAE07M,KAAKl2M,EAAEu1B,EAAE2gL,OAAUV,GAAGxrL,KAAKwrL,GAAGx1M,IAAO,MAAHgqB,GAAS+iK,GAAG/iK,EAAEhqB,IAAK,OAAO,EAAO,OAAO,CAAI,CAEpP,SAASwmV,IAAI/rV,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAO,IAAIusJ,GAAI,KAAK,EAAE,OAAO,IAAIhC,GAAI,KAAK,EAAE,OAAO,IAAIF,GAAI,KAAK,EAAE,OAAO,IAAIk8C,GAAI,KAAK,EAAE,OAAO,IAAI8zB,GAAI,QAAQ,MAAM95D,GAAI,IAAI2O,GAAI,uDAA4D,MAAL7hL,EAAE86B,EAAQ96B,EAAE86B,EAAE,GAAG96B,EAAE2S,KAAM,CACpP,SAASq5U,IAAIhsV,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAO,IAAI6mM,GAAI,KAAK,EAAE,OAAO,IAAIl8C,GAAI,KAAK,EAAE,OAAO,IAAIpB,GAAI,KAAK,EAAE,OAAO,IAAIE,GAAI,KAAK,EAAE,OAAO,IAAIk9C,GAAI,QAAQ,MAAMpmC,GAAI,IAAI2O,GAAI,yDAA8D,MAAL7hL,EAAE86B,EAAQ96B,EAAE86B,EAAE,GAAG96B,EAAE2S,KAAM,CACtP,SAASwrJ,MAAMA,IAAIzpB,EAAIuwL,IAAI,IAAItmH,GAAIstI,IAAIj0I,GAAI,IAAImtH,IAAI,IAAIxmH,GAAIutI,IAAI,GAAQzvE,KAAWooD,IAAI,IAAIlmH,GAAIwtI,IAA5BC,IAAWzvE,KAA0B3kE,GAAI,GAAG2sH,IAAI,IAAIhmH,GAAI0tI,IAAIr0I,GAAI,IAASulE,KAAW8nD,IAAI,IAAI1mH,GAAI9/G,IAA5BytP,IAAW7uE,KAA+B7Q,KAAW24D,IAAI,IAAI5mH,GAAI4tI,IAA5BC,IAAWz/E,KAA+BsZ,MAAW0+C,IAAI,IAAIpmH,GAAI8tI,IAA5BC,IAAWnmE,IAAyB,CACpP,SAASomE,IAAI3sV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEA,EAAE,KAAOmS,IAAInS,EAAEmS,EAAEnS,GAAGomO,IAAInmO,EAAE,IAAI2wM,GAAIz+L,EAAEtS,EAAEI,EAAED,EAAEmS,EAAEqd,EAAEvvB,EAAEkS,EAAEtS,EAAEsS,EAAEnS,EAAEA,EAAEwvB,EAAErd,IAAIi0N,IAAInmO,EAAE,IAAI2wM,GAAIz+L,EAAEtS,EAAEI,EAAED,EAAEmS,EAAEqd,EAAEvvB,EAAEkS,EAAEtS,EAAEsS,EAAEA,EAAEhS,EAAEgS,EAAEnS,EAAEC,EAAEuvB,EAAErd,IAAIi0N,IAAInmO,EAAE,IAAI2wM,GAAIz+L,EAAEtS,EAAEI,EAAEkS,EAAEhS,EAAEF,EAAED,EAAEwvB,EAAEA,EAAEvvB,EAAEkS,EAAEtS,EAAEsS,EAAEnS,EAAEA,EAAEwvB,EAAErd,IAAIi0N,IAAInmO,EAAE,IAAI2wM,GAAIz+L,EAAEtS,EAAEI,EAAEkS,EAAEhS,EAAEF,EAAED,EAAEwvB,EAAEA,EAAEvvB,EAAEkS,EAAEtS,EAAEsS,EAAEA,EAAEhS,EAAEgS,EAAEnS,EAAEC,EAAEuvB,EAAErd,GAAG,CACrP,SAAS06U,IAAI5sV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAQ,IAAN5oB,EAAE9O,EAAEmsB,EAAMuL,EAAEmwL,GAAG9kH,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,CAAC,IAAIxV,GAAIz2J,GAAG,IAAI22J,GAAI32J,OAAOk5M,IAAGtwL,KAA0B,IAArB/6B,EAAE49K,GAAGwtC,GAAGrwL,GAAG,KAAM13B,GAAOwpV,IAAI5sV,EAAED,EAAEwvB,GAAG,GAAGrd,EAAElU,EAAEqD,IAAI49P,MAAMg4B,KAAM,IAAI1xR,EAAE,IAAIogK,GAAIzzJ,EAAElU,EAAEoU,GAAG7M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,SAAS6B,EAAE49K,GAAGC,GAAIr4K,GAAG,MAAO2M,IAAS,GAANnS,EAAEqD,GAAOwpV,IAAI5sV,EAAED,EAAEwvB,EAAI,CACrP,SAASs9T,IAAI7sV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAoG,GAAlGv1B,EAAEo4K,GAAGopF,GAzuEnC,SAAa/mQ,GAA0B,OAAjB8/O,GAAI9/O,GAAoBmqN,GAAInqN,EAAE,IAAImnK,GAAzB,IAAIsP,IAA4B,CAyuExBq2K,CAAI/3F,GAAI/0P,IAAIuhR,GAAI,IAAIjsI,EAAI,IAAID,EAAI,IAAIgB,GAAIkoC,GAAGC,GAAGwtD,IAAG,GAAGC,IAAI,IAAI,EAAE,EAAE4oC,KAAME,SAAS,IAAIh1Q,EAAEgtV,IAAOxnV,EAAE05K,MAAM,EAAyB,IAAb/sK,EAAEquK,IAAXhxJ,EAAEhqB,EAAEo2M,MAAYF,MAAYlsL,EAAEgsL,MAAMzgL,EAAE5oB,EAAEA,EAAEquK,GAAGhxJ,EAAEksL,MAAM17M,EAAEkzI,EAAK3/H,KAAKsgB,IAAI7zB,GAAG8gK,GAAI3uJ,GAAGA,GAAI2uJ,GAAI/lI,GAAGA,KAAK,OAAO/6B,CAAC,CACrP,SAAS0mS,IAAIzmS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAYoqM,GAAVh9M,EAAE,IAAI05K,GAAUvnK,EAAEnS,EAAEwvB,EAAErd,EAAEnS,EAAEwvB,GAAG,GAAkD,IAA5C+5L,GAAS,GAALvpN,EAAEmS,GAATqd,EAAeouJ,GAAGymD,GAAIrkO,EAAEA,EAAEC,EAAEA,GAAG,IAAKA,EAAEkS,EAAEqd,EAAE5c,GAAG,EAAMmoB,EAAEgkO,IAAIvvO,EAAExvB,EAAE,GAAG+6B,EAAE5oB,GAAG4oB,EAAE/6B,EAAEwvB,GAAqB5c,GAAjBpN,EAAEo4K,GAAGohF,GAAIjkO,GAAG,MAASvL,EAAY,GAAVvvB,EAAEkS,EAAES,EAAEA,GAAMizN,GAAI5lO,EAAEA,EAAEuF,GAAa,GAAVvF,EAAEkS,EAAES,EAAEA,GAAO3S,EAAEkS,EAAES,EAAEA,GAAG,EAAGoqM,GAAIh9M,EAAE4S,EAAE5S,EAAEwvB,EAAErd,EAAEnS,EAAEwvB,SAAe,GAALxvB,EAAEmS,EAAK,CACrP,SAAS86U,IAAGhtV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAE,GAAGw1M,GAAG7oM,KAAK6oM,GAAGh3B,GAAG/jL,IAAK,OAAO,EAAK,IAAI6pL,GAAG33K,EAAE,IAAK,OAAO,EAA0B,GAApBnS,EAAE49K,GAAGzrK,EAAE,KAAI3M,EAAEvF,EAAEi/K,OAAWl/K,EAAEk/K,KAAM,OAAO,EAAM,GAAG4K,GAAG9pL,EAAE,IAAI,CAAC,IAAIwvB,EAAE,EAAEA,EAAEhqB,EAAEgqB,IAAK,IAAI+vN,GAAGt/O,EAAEq7M,GAAG9rL,GAAGxvB,EAAEs7M,GAAG9rL,IAAK,OAAO,EAAO,OAAO,CAAI,CAAM,OA9rB7N,SAAYvvB,EAAEkS,GAAW,IAAR,IAAIqd,EAAExvB,EAAQC,EAAEu7M,MAAK,CAAC,IAAIrpM,EAAEqpM,KAAM,OAAO,EAAwB,GAAlBhsL,EAAEvvB,EAAEy7M,KAAK17M,EAAEmS,EAAEupM,OAAUV,GAAGxrL,KAAKwrL,GAAGh7M,IAAO,MAAHwvB,GAAS+iK,GAAG/iK,EAAExvB,IAAK,OAAO,CAAM,CAAC,OAAQmS,EAAEqpM,IAAI,CA8rB+E0xI,CAAGjtV,EAAE27M,KAAK57M,EAAE47M,KAAM,CACtP,SAASuxI,IAAIltV,EAAEkS,GAAG,IAAMnS,EAAE,GAAe,GAAZC,EAAEuvB,EAAErxB,OAAU,CAAC,GAAe,GAAZ8B,EAAEuvB,EAAErxB,OAAWwrV,KAAKjsI,GAAI,EAAEz9M,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAE,GAAG,MAAMw4P,MAAMG,MAAMwhE,KAAKjsI,GAAI,EAAEz9M,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAE,GAAG,KAAK44P,UAAU,IAAIpoR,EAAE,IAAI4lK,GAAI3lK,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyBwrV,IAAd/rK,GAAGC,GAAI79K,GAAG,IAAUmS,GAAIlS,EAAEuvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CACtP,SAASgvK,IAAIntV,GAAG,IAAIkS,EAAEqd,EAAE,GAAe,GAAZvvB,EAAEuvB,EAAErxB,OAAW,MAAMg1K,GAAI,IAAI4O,GAAI,sCAAyC27B,GAAI,EAAEz9M,EAAEuvB,EAAErxB,QAAbgU,EAAqByrK,GAAG39K,EAAEuvB,EAAE,GAAG,IAAQkuL,GAAI,EAAEz9M,EAAEuvB,EAAErxB,QAAbqxB,EAAqBouJ,GAAG39K,EAAEuvB,EAAE,GAAG,IAAQrd,EAAEnS,EAAE/B,GAAGuxB,EAAEA,EAAEvxB,IAAGgC,EAAEuvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGn+K,EAAEuvB,EAAEvvB,EAAEuvB,EAAErxB,QAAQqxB,EAAEvvB,EAAEuvB,EAAEvvB,EAAEuvB,EAAErxB,QAAQgU,EAAE,CAItP,SAASk7U,IAAIptV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAuD,KAArD8B,EAAEvF,EAAE86B,KAAOv1B,EAAEo4K,GAAG39K,EAAEA,EAAEA,EAAE2hP,KAAKhmC,KAAKF,KAAK,KAAKiuH,IAAInkU,EAAE2M,EAAEqd,GAAkB,GAAZvvB,EAAEA,EAAEA,EAAEi/K,KAAsB,IAANl/K,EAAEmS,EAAEqd,EAAM5c,EAAE3S,EAAEA,EAAEA,EAAE2hP,KAAKhmC,KAAKhpM,EAAE4oM,OAAOzgL,EAAE6iJ,GAAGhrK,EAAE8oM,KAAK,MAAUl2M,KAAG9B,EAAE8+P,GAAIznO,IAAQA,EAAE/6B,GAAG+6B,EAAE/6B,EAAEA,GAAGA,EAAEi0R,IAAIl5P,EAAE/6B,EAAEC,GAAGD,EAAEi0R,KAASvwR,EAAEq3B,EAAE96B,IAAI86B,EAAE/6B,EAAEC,GAAGD,EAAEi0R,KAAM,CACvP,SAASq5D,IAAIrtV,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAiJ,OAA/I+S,EAAE4c,EAAEvvB,EAAEyD,EAAE1D,EAAEmS,EAAyBlU,GAAvB88B,EAAEm4G,EAAK3/H,KAAKuf,MAAMlgB,EAAElP,IAAOugS,IAAI5xR,EAAE0oB,EAAEkpQ,IAAI3iS,EAAEkE,EAAE0tI,EAAK3/H,KAAK6lB,IAAIn7B,GAAGgC,EAAEgT,EAAEzN,EAAE0tI,EAAK3/H,KAAKmkB,IAAIz5B,GAAGkU,EAAE4B,EAAEvO,EAAE0tI,EAAK3/H,KAAK6lB,IAAI/mB,GAAGpS,EAAEJ,EAAE2F,EAAE0tI,EAAK3/H,KAAKmkB,IAAIrlB,GAAGF,EAASy+P,GAAGpyF,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC,IAAIohB,GAAI5zM,EAAE2R,GAAG,IAAIiiM,GAAInhM,EAAElU,KAAK,CAGxP,SAAS04M,IAAIt4M,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAyD,OAAnDC,EAAEE,IAAIF,EAAEE,EAAE,IAAI0zN,IAAKmrD,MAAMC,KAAKC,IAAGj/Q,EAAE,IAAsB,OAA7DD,EAA2CwuO,IAAIvuO,EAAEE,EAAEgS,IAAuBnS,GAAW8pL,GAATt6J,EAAErd,EAAEkgU,KAAU,KAAQ,MAAH7iT,IAAUvvB,EAAEE,IAAIF,EAAEE,EAAE,IAAI0zN,IAAKmrD,MAAMC,KAAKC,IAAGj/Q,EAAE,IAAI6+R,IAAI7+R,EAAEE,EAAEgS,MAAMlS,EAAEE,IAAIF,EAAEE,EAAE,IAAI0zN,IAAKmrD,MAAMC,KAAKC,IAAGj/Q,EAAE,IAAI0rS,IAAI1rS,EAAEE,EAAEgS,EAAEqd,KAAcA,EAAC,CACxP,SAASi/Q,MAAMA,IAAI95J,EAAIg6J,IAAI,IAAIh5F,GAAI,SAAS,GAAGi5F,IAAI,IAAIj5F,GAAI,WAAW,GAAGk5F,IAAI,IAAIl5F,GAAI,UAAU,GAAGm5F,IAAI,IAAIn5F,GAAI,QAAQ,GAAGo5F,IAAI,IAAIp5F,GAAI,WAAW,GAAGq5F,IAAI,IAAIr5F,GAAI,WAAW,GAAGs5F,IAAI,IAAIt5F,GAAI,SAAS,GAAGu5F,IAAI,IAAIv5F,GAAI,UAAU,GAAGw5F,IAAI,IAAIx5F,GAAI,aAAa,EAAE,CAEzP,SAAS43I,IAAIttV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,IAAIkU,EAAE4oB,EAAG,MAAMo4I,GAAI,IAAI2O,GAAI,uCAAoD,IAAb/mJ,EAAE,KAAKv1B,EAAE2yL,IAAQn4L,EAAE,IAAI4lK,GAAI3lK,EAAED,GAAGA,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAA0BuF,GAAjB8rB,EAAEouJ,GAAGC,GAAI79K,GAAG,MAASA,EAAE/B,EAAEuxB,EAAEhqB,EAAKy7U,IAAIhhV,EAAEyD,EAAEyO,KAAK8uU,IAAIhhV,EAAEhC,EAAEkU,KAAIS,EAAE3U,EAAEuH,EAAE9B,EAAE8B,EAAEgqB,EAAEvvB,GAAOuF,IAAGA,EAAEoN,EAAEmoB,EAAEvL,GAAI,OAAOuL,CAAC,CAC1P,SAASyyT,IAAIvtV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,KAAG3S,EAAE86B,EAAEv1B,EAAEgqB,EAAErxB,QAAQ,GAAnB,CAA6BgU,EAAE,EAAE3M,EAAEqjV,IAAI5oV,GAAGuvB,EAAE+mJ,IAAI,EAAE,CAAY,IAAXpkK,EAAE,IAAI3M,EAAEgqB,GAAO5c,EAAE,IAAIgzJ,GAAI3lK,EAAE86B,EAAEv1B,GAAGoN,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAA6B+jL,GAAIk6B,GAAG5T,IAA3BztK,EAAE6iJ,GAAGC,GAAIjrK,GAAG,MAAsBsoJ,MAAMyrK,UAAkB3mU,EAAEytV,IAAIxtV,EAAE86B,GAAG+kJ,GAAI69B,GAAI5iL,EAAE/6B,GAAGA,IAAGwvB,EAAEq5T,IAAI5oV,EAAE,QAAQy+O,GAAIz+O,EAAEkS,IAAI3M,EAAEgqB,GAA3L,CAA8L,CAG1P,SAASk+T,IAAIztV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAgF,IAA9EkvR,IAAItyQ,EAAE,4BAA4B,GAAGvvB,EAAEA,EAAS,GAAPkS,EAAEA,EAAEA,EAAK,EAAEA,EAAEA,EAAEA,EAAE4oB,EAAE,KAAK/6B,EAAE++P,IAAI5sP,EAAEA,EAAE,IAAU4oB,GAAG/6B,EAAEmS,GAAGnS,EAAEA,EAAEwvB,GAAsB0yJ,GAAIk6B,GAAG5T,IAA1B51L,EAAEgrK,GAAGohF,GAAIh/P,GAAG,KAAqB2mS,MAAMg3C,UAAS5iT,EAAEnoB,GAAEpN,EAAEoN,EAAEpN,GAAIvF,EAAE29K,GAAG4qB,IAAI51L,EAAE6mU,KAAK,IAAIx5U,EAAEuF,EAAE2M,EAAE,GAAGqnU,IAAIv5U,EAAE4yS,GAAI93Q,GAAGorQ,GAAI32Q,EAAE,IAAIgzQ,IAAIhzQ,EAAE,CAC1P,SAASm+T,IAAI1tV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAoG,IAAlG+mQ,IAAItyQ,EAAE,gDAAgD,GAAGvvB,EAAEA,EAAS,GAAPkS,EAAEA,EAAEA,EAAK,EAAEA,EAAEA,EAAEA,EAAE3M,EAAE,KAAKxF,EAAE++P,IAAI5sP,EAAEA,EAAE,IAAU3M,GAAGxF,EAAEmS,GAAGnS,EAAEA,EAAEwvB,GAAmB0yJ,GAAIk6B,GAAG5T,IAAvBztK,EAAE6iJ,GAAGohF,GAAIh/P,GAAG,KAAkB2mS,MAAMg3C,UAAUn4U,EAAEu1B,GAAKv1B,GAAGooV,IAAI3tV,EAAE2wQ,GAAGpyF,GAAGC,GAAGovK,IAAG,GAAGC,IAAI,GAAG,EAAE,CAACtoV,KAAKgqB,GAAGgzQ,IAAIhzQ,EAAE,CAE3P,SAASu+T,IAAI9tV,EAAEkS,GAAG,IAAU4oB,EAAEnoB,EAAElP,EAAMpC,EAAEyS,EAAEd,EAAwM,OAApM,KAAS3R,EAAE,MAAQ0sV,OAAdj6U,EAAE9T,GAAqBA,GAAGguV,OAAOl6U,EAAE9T,GAAGquL,OAAOv6K,EAAE9T,KAAK,KAAKgT,EAAEmgS,GAAIjhS,GAAGS,EAAEotP,GAAIjsP,EAAEi6U,KA37B7H,SAAa/tV,EAAEkS,GAAG,IAAQ3M,EAAEu1B,EAAK5oB,IAAG3M,EAAE+9O,GAAIpxO,EAAE,KAAkBqwM,GAAX,IAAIzyC,GAAI9vK,GAASA,GAAG6gK,GAAIt7J,GAAGA,IAAIu1B,EAAEwoN,GAAIpxO,EAAE,KAAkBswM,GAAX,IAAIxyC,GAAIhwK,GAASA,GAAG6gK,GAAI/lI,GAAGA,IAAI,CA27BemzT,CAAX,IAAI1+K,GAAIv8J,GAAShT,EAAE2S,GAAGlP,EAAEs8P,GAAIjsP,EAAEk6U,KA57BlK,SAAahuV,EAAEkS,GAAG,IAAQ3M,EAAEu1B,EAAK5oB,IAAG3M,EAAE+9O,GAAIpxO,EAAE,KAAkBmwM,GAAX,IAAInyC,GAAIlwK,GAASA,GAAG6gK,GAAIt7J,GAAGA,IAAIu1B,EAAEwoN,GAAIpxO,EAAE,KAAkBowM,GAAX,IAAInyC,GAAInwK,GAASA,GAAG6gK,GAAI/lI,GAAGA,IAAI,CA47BoDozT,CAAX,IAAIj+K,GAAIj9J,GAAShT,EAAEyD,GAAGq3B,EAAE+kO,GAAI/rP,EAAEu6K,KArdvM,SAAaruL,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAM9B,EAAE,GAAGyO,EAA6B,IAAIzO,IAAjB8rB,EAAE,IAAIw/M,GAAjB78N,EAAElS,EAAE9B,SAA6BgU,EAAEqd,EAAEvvB,GAAGuvB,EAAEA,EAAE,GAAGk9K,KAAMC,KAAK,IAAI+f,GAAIl9L,GAAG9rB,EAAE83M,MAAuBh2M,EAAEu6P,GAAI5tP,EAApByrK,GAAGl6K,EAAEg4M,KAAK,IAAcz7M,GAAgBojP,GAAX,IAAIv0E,GAAI7uK,GAASA,EAAEuF,EAAI,CAqd8C4oV,CAAd,IAAI/9K,GAAIp9J,GAAYhT,EAAE86B,GAAMz5B,EAAHy5B,GAASz5B,CAAU,CAI1P,SAAS+sV,IAAIpuV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAA6E,OAAzDA,GAAlBmoB,EAAE5oB,EAAElS,GAAIuvB,EAAEvxB,GAAGkU,EAAEA,EAAK4oB,EAAE/6B,EAAM+6B,EAAEvL,EAAexvB,EAAZ+6B,EAAEvL,EAAEvxB,GAAGkU,EAAEA,EAAK4oB,EAAEvL,EAAMuL,EAAE/6B,EAAGwF,EA/6B5F,SAAavF,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAgG,OAA5FA,EAAEugL,GAAItgL,EAAEoD,EAAE8O,EAAElU,EAAEoF,IAAIk9K,GAAItgL,EAAED,EAAEmS,EAAElU,EAAEoF,IAAI8O,EAAEtS,EAAEsS,EAAEA,EAAElS,EAAEkS,EAAIouK,GAAItgL,EAAEoD,EAAEmsB,EAAEvxB,EAAEoF,IAAIk9K,GAAItgL,EAAED,EAAEwvB,EAAEvxB,EAAEoF,IAAImsB,EAAE3vB,EAAEsS,EAAEqd,EAAEvvB,EAAEkS,EAAWnS,CAAC,CA+6BpCsuV,CAAIruV,EAAEA,EAAE2S,EAAE5S,GAAMwF,EAAE,GAAGA,EAAEwnV,KAAKx9T,EAhB1H,SAAavvB,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEvO,EAAEgqB,EAAMuL,EAAJz5B,EAAE6Q,EAAM,GAAG4oB,EAAE96B,EAAEA,EAAE86B,EAAE13B,GAAM0Q,EAAE9T,EAAE2S,EAAEmoB,EAAE13B,GAAXK,EAAc68K,GAAItgL,EAAEoD,EAAE0Q,EAAE1Q,IAAIk9K,GAAItgL,EAAED,EAAE+6B,EAAE13B,IAAI03B,EAAE/6B,EAAEA,GAAG/B,EAAEqiS,GAAIvlQ,EAAE/6B,MAAYqS,EAAEpS,EAAE2S,EAAE3U,EAAEoF,GAAXuP,EAAc2tK,GAAItgL,EAAEoD,EAAEgP,EAAEhP,IAAIk9K,GAAItgL,EAAED,EAAE/B,EAAEoF,IAAIpF,EAAEkC,EAAEgS,EAAElU,EAAE+B,EAAEC,EAAGuF,EAAE0tI,EAAK3/H,KAAKsgB,IAAIruB,EAAE9B,GAAGkP,EAAEkzM,GAAI7lN,EAAEqB,EAAEy5B,EAAE98B,YAAYqD,GAAGy5B,GAAG,OAAOv1B,CAAC,CAgB5H+oV,CAAItuV,EAAEA,EAAED,EAAE/B,EAAEuH,EAAEvF,EAAEuvB,GAAG+mQ,GAAIt2R,EAAEA,EAAED,EAAE/B,GAAGuxB,GAAUA,EAAE,GAAUhqB,EAAE,IAAIA,EAAEwnV,MAAKx9T,EAf/L,SAAavvB,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEvO,EAAEgqB,EAAMuL,EAAJz5B,EAAE6Q,EAAM,GAAG4oB,EAAE96B,EAAEA,EAAE86B,EAAE13B,GAAM0Q,EAAE9T,EAAE2S,EAAEmoB,EAAE13B,GAAXuP,EAAc2tK,GAAItgL,EAAEoD,EAAE0Q,EAAE1Q,IAAIk9K,GAAItgL,EAAED,EAAE+6B,EAAE13B,IAAI03B,EAAE56B,EAAEgS,EAAE4oB,EAAE/6B,EAAEC,GAAGhC,EAAEg1S,GAAIl4Q,EAAE/6B,MAAYqS,EAAEpS,EAAE2S,EAAE3U,EAAEoF,GAAXK,EAAc68K,GAAItgL,EAAEoD,EAAEgP,EAAEhP,IAAIk9K,GAAItgL,EAAED,EAAE/B,EAAEoF,IAAIpF,EAAE+B,EAAEA,EAAGwF,EAAE0tI,EAAK3/H,KAAKsgB,IAAIruB,EAAE9B,GAAGkP,EAAEkzM,GAAI7lN,EAAEqB,EAAEy5B,EAAE98B,YAAYqD,GAAGy5B,GAAG,OAAOv1B,CAAC,CAevDgpV,CAAIvuV,EAAEA,EAAED,EAAE/B,GAAGuH,EAAEvF,EAAEuvB,GAAG+mQ,GAAIt2R,EAAEA,EAAED,EAAE/B,EAAEuxB,GAAUA,EAAE,EAAc,CAC3P,SAASwuS,IAAI/9T,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAM98B,EAAEoU,EAAE/Q,EAAEyS,EAA0C,IAAxCvO,GAAG2M,EAAElS,EAAED,GAAGC,EAAEuvB,EAAEA,EAAErxB,OAAO48B,EAAE,EAAE96B,EAAEA,GAAGuvB,EAAEvvB,EAAED,EAAEmS,EAAM4B,EAAE,IAAI6xJ,GAAI3lK,EAAEuvB,GAAGzb,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAAyBkU,GAAhB/Q,EAAEs8K,GAAGC,GAAI9pK,GAAG,KAAQnB,EAAE3U,EAAEqD,EAAEy5B,EAAEqnL,GAAI9gN,EAAEA,EAAErD,EAAE88B,EAAEv1B,GAAG68M,GAAI/gN,EAAEA,EAAE+Q,EAAErS,EAAEwvB,GAAGyyL,GAAI3gN,EAAEA,EAAEsR,EAAEpN,GAAG08M,GAAI5gN,EAAErB,EAAEA,KAAK86B,EAAcskT,IAAI/9U,EAAE,IAAI4zM,GAApB5zM,EAAEsR,EAAItR,EAAEy5B,GAAqB,IAAIm6K,GAAI7iM,EAAEpU,GAAI,CAI3P,SAASwwV,IAAIxuV,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAc,IAAZuH,EAAE+wK,IAAIv2K,EAAEw2K,IAAQhnJ,EAAE,IAAIo2I,GAAI3lK,EAAEuF,EAAE2M,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAyB,IAAIyU,EAAE,IAAIgzJ,GAAxBgY,GAAGC,GAAIruJ,GAAG,IAAoBvvB,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,IAAoBlP,GAAhBzF,EAAEsiL,GAAItgL,EAAEoD,EAAE03B,EAAE13B,KAAQk9K,GAAItgL,EAAEkS,EAAElS,EAAE2S,EAAEmoB,EAAE13B,GAAGA,IAAImC,EAAE0tI,EAAK3/H,KAAKsgB,IAAIruB,EAAEvH,GAAG+B,EAAEkzI,EAAK3/H,KAAKugB,IAAI9zB,EAAE0D,GAAI,OAAO1D,EAAEwF,CAAC,CAC5P,SAASkxP,IAAIz2P,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAoB,IAAlBpU,EAAE,KAAoByF,EAAE,EAAE2O,GAAnB7M,EAAEkpV,IAAIzuV,EAAEkS,IAAe+sK,KAAKx7K,EAAE2O,IAAI3O,EAAqB,GAAG44N,GAAIt8N,EAAEwiP,GAAIiU,GAAIx2P,EAAnC86B,EAAE6iJ,GAAGp4K,EAAE81M,GAAG53M,GAAG,QAA8C,GAAhBkP,EAAEgwO,GAAI6T,GAAIx2P,EAAE86B,IAAU,MAAHvL,EAAQ,CAAC,GAAM,MAAH5c,EAAS,OAAOmoB,GAAQ98B,IAAIA,EAAE88B,EAAE,KAAM,IAAGuhM,GAAI9sM,EAAE5c,GAAI,OAAOmoB,EAAU,MAAHnoB,IAAU3U,IAAIA,EAAE88B,EAAE,CAAE,OAAO,IAAI,CAC5P,SAAS+7N,IAAI72P,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAoB,IAAlBpU,EAAE,KAAoByF,EAAE,EAAE2O,GAAnB7M,EAAEmpV,IAAI1uV,EAAEkS,IAAe+sK,KAAKx7K,EAAE2O,IAAI3O,EAAqB,GAAG44N,GAAIt8N,EAAEwiP,GAAIiU,GAAIx2P,EAAnC86B,EAAE6iJ,GAAGp4K,EAAE81M,GAAG53M,GAAG,QAA8C,GAAhBkP,EAAEgwO,GAAI6T,GAAIx2P,EAAE86B,IAAU,MAAHvL,EAAQ,CAAC,GAAM,MAAH5c,EAAS,OAAOmoB,GAAQ98B,IAAIA,EAAE88B,EAAE,KAAM,IAAGuhM,GAAI9sM,EAAE5c,GAAI,OAAOmoB,EAAU,MAAHnoB,IAAU3U,IAAIA,EAAE88B,EAAE,CAAE,OAAO,IAAI,CAG5P,SAAS22S,IAAIzxU,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAM98B,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAE,IAAI8nB,EAAE5oB,EAAEypM,KAAK7gL,EAAEygL,MAAuBl6M,GAAhBkE,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,KAAQz9M,EAAEuH,EAAEoN,EAAE,EAAEK,EAAEzN,EAAE6M,EAAE7M,EAAEu1B,EAAE,EAAgC1oB,EAAE/Q,IAAhCrD,EAAEgC,EAAE86B,GAAM98B,EAAEA,EAAE2U,EAAE,GAAoBmB,EAAEd,GAAlBhV,EAAEoU,EAAEpU,EAAE88B,EAAE,GAAc/6B,EAAEkzI,EAAK3/H,KAAKuc,KAAKzd,EAAEA,EAAE0B,EAAEA,GAAG1B,GAAGpS,EAAEuF,EAAExF,EAAE+T,GAAG9T,EAAEuF,EAAExF,EAAKwvB,GAAGluB,GAAG+Q,EAAEY,GAAGc,IAAOzS,GAAG+Q,EAAEY,GAAGc,GAAEquM,GAAI58M,EAAElE,EAAEkE,EAAEoN,EAAE,GAAGyvM,GAAI78M,EAAEyN,EAAEzN,EAAEu1B,EAAE,EAAG,CAC7P,SAAS6zT,IAAI3uV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,IAAGC,EAAEuvB,GAAiB,MAALvvB,EAAEkS,EAAL,CAAoB,IAAIA,EAAElS,EAAEkS,EAAEhU,OAAO,EAAEgU,GAAG,EAAEA,GAAG,EAAG,IAAIqd,EAAE,EAAEA,GAAGrd,EAAEqd,GAAG,GAAMvvB,EAAEkS,EAAEqd,GAAGvvB,EAAEkS,EAAEqd,EAAE,IAAIvvB,EAAEkS,EAAEqd,KAAKvvB,EAAEkS,EAAEqd,EAAE,IAAIvvB,EAAEkS,EAAEqd,EAAE,GAAGvvB,EAAEkS,EAAEqd,EAAE,MAAIxvB,EAAEC,EAAEkS,EAAEqd,EAAE,GAAGvvB,EAAEkS,EAAEqd,EAAE,GAAGvvB,EAAEkS,EAAEqd,GAAGvvB,EAAEkS,EAAEqd,GAAGxvB,EAAEA,EAAEC,EAAEkS,EAAEqd,EAAE,GAAGvvB,EAAEkS,EAAEqd,EAAE,GAAGvvB,EAAEkS,EAAEqd,EAAE,GAAGvvB,EAAEkS,EAAEqd,EAAE,GAAGxvB,GAAIC,EAAEuvB,GAAE,CAA9L,CAAkM,CAC7P,SAASq/T,IAAI5uV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAIr3B,EAAEzF,EAAmB,IAAI88B,GAAd,GAAH5oB,EAAKwsS,IAAID,KAAYz+S,EAAE2hP,KAAKhmC,KAAK7gL,EAAEygL,MAAwB,IAAjBh2M,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,KAASz9M,EAAE2/K,GAAG0iB,GAAGrgM,EAAE86B,EAAEvL,EAAEhqB,GAAG,IAAIo2M,KAAK39M,EAAEu9M,MAAwD,OAAjD93M,EAAEk6K,GAAG3/K,EAAEy9M,KAAK,IAAI17M,EAAE49K,GAAGl6K,EAAEyO,EAAE,IAAkBqd,EAAZouJ,GAAGl6K,EAAEzD,EAAE,KAASuvB,EAAShqB,EAAEoN,GAAG,KAAK,EAAE,KAAK,EAAE5S,EAAE4S,EAAE5S,GAAGwvB,EAAE,MAAM,KAAK,EAAE,KAAK,EAAExvB,EAAE4S,EAAE4c,GAAGA,EAAK,CAC9P,SAASs/T,IAAI7uV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAW,IAAT+Q,GAAG,EAAE/Q,EAAE,EAAUoC,EAAE,EAAEzF,GAAR2U,EAAE3S,GAAU9B,OAAOuF,EAAEzF,IAAIyF,EAAE,CAAiD,IAAhDq3B,EAAEnoB,EAAElP,GAAG8rB,EAAE,IAAIk1M,IAAQ,GAAJryN,EAAMpS,EAAE,GAAGA,EAAEoS,GAAGF,GAAGymQ,KAAMI,MAAUh5Q,EAAE,EAAEA,EAAE+6B,EAAE58B,OAAO6B,IAAK,IAAIwF,EAAExF,EAAE,EAAEwF,EAAEu1B,EAAE58B,OAAOqH,IAAKitN,GAAI13L,EAAE/6B,IAAIioM,MAAM6oC,OAAOre,GAAI13L,EAAEv1B,GAAGsrO,MAAMi+G,IAAIv/T,EAAEuL,EAAE/6B,GAAG+6B,EAAEv1B,IAAI,KAAKlE,IAAK+Q,CAAC,CAAC,OAAO/Q,CAAC,CAC9P,SAASmgT,IAAIxhT,GAAG,IAAMuvB,EAA8N,OAA5NA,EAAE,IAAIu+L,GAAIzkC,GAAIrpL,EAAEyrP,MAAOzrP,GAAG,IAAI48M,GAAIrtL,GAAKg0L,GAAGvjN,KAAK,GAAItB,SAAS,KAASsB,EAAE4xO,MAAMriN,EAAEvvB,GAAG,gBAAgB28M,GAAIptL,EAAEvvB,EAAE2/U,MAAS3/U,EAAEqzI,OAAM9jH,EAAEvvB,GAAG,YAAY28M,GAAIptL,EAAEvvB,EAAEqzI,OAAM9jH,EAAEvvB,GAAG,KAAYA,EAAEqzI,OAAM9jH,EAAEvvB,GAAG,aAAa28M,GAAIptL,EAAEvvB,EAAEqzI,MAAM9jH,EAAEvvB,GAAG,KAAWuvB,EAAEvvB,CAAC,CAC9P,SAAS+uV,IAAI/uV,GAAG,IAAIkS,EAAEqd,EAAIhqB,EAAE,GAAGvF,EAAEuF,EAAG,MAAM2tK,GAAI,IAAI4O,IAAKwH,GAAI0lK,KAAIC,IAAID,IAAG3tV,EAAE6tV,OAAoC,IAA7BlvV,EAAED,IAAI4yR,KAAMC,MAAMu8D,IAAInvV,EAAE4gN,KAASrxL,EAAE,IAAIo2I,GAAI3lK,EAAEA,EAAEA,GAAGuvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,SAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,MAAO5c,EAAET,EAAElU,EAAE,IAAIuH,EAAE,IAAIogK,GAAI3lK,EAAEA,EAAEkS,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAIr4K,GAAG,IAAMvH,EAAEu4K,IAAc,OAAVv2K,EAAEkS,EAAEk9U,GAAGpvV,GAAUA,CAAC,CAE/P,SAASqvV,IAAIrvV,EAAEkS,GAAG,IAAIqd,EAAMuL,EAAEnoB,EAAMP,EAAE/Q,EAA6B,GAA3B+Q,EAAEF,IAAE7Q,EAAEs8K,GAAGujH,GAAG/oD,GAAGn4O,EAAEhC,GAAGoU,GAAG,KAAuF,MAAM8gK,GAAI,IAAIyP,GAA3E,4CAAbq9E,GAAI5tP,EAAEs1N,KAAyD,aAAiC5sM,EAAE+kO,GAAIztP,EAAE,SA/JpL,SAAapS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAI+6B,EAAIr3B,EAAE,GAAG8rB,EAA6B,IAAI9rB,IAAjB1D,EAAE,IAAIgvO,GAAjBx/M,EAAEvvB,EAAE9B,SAA6BgU,EAAEnS,EAAEC,GAAGD,EAAEwvB,EAAE,GAAGk9K,KAAMC,KAAK,IAAI+f,GAAI1sN,GAAG0D,EAAE83M,MAAuBzgL,EAAEglO,GAAIvwO,EAApBouJ,GAAGl6K,EAAEg4M,KAAK,IAAcz7M,GAAG+tL,OAAOjzJ,EAAE96B,GAAGguL,OAAOlzJ,EAAE96B,EAAEsvV,IAAItvV,EAAE86B,EAAE5oB,GAAGq9U,IAAIvvV,EAAE86B,EAAE5oB,GAAGy4M,GAAIhtC,GAAG+5B,GAAI13M,EAAEkS,EAAE2lM,IAAI/8K,IAAI,IAAM,CA+JnB00T,EAAfjgU,EAAE,IAAIonL,GAAI32M,EAAEqB,IAASrB,EAAEuvB,EAAErd,EAAE4oB,GAAGnoB,EAAEktP,GAAIztP,EAAEq7K,KA/kBnO,SAAaztL,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAM4S,EAAE,GAAGT,EAA6B,IAAIS,IAAjB4c,EAAE,IAAIw/M,GAAjB78N,EAAElS,EAAE9B,SAA6BgU,EAAEqd,EAAEvvB,GAAGuvB,EAAEA,EAAE,GAAGk9K,KAAMC,KAAK,IAAI+f,GAAIl9L,GAAG5c,EAAE4oM,OAAuBx7M,EAAE+/P,GAAI5tP,EAApByrK,GAAGhrK,EAAE8oM,KAAK,IAAcz7M,KAAQqvV,IAAIrvV,EAAED,EAAI,CA+kBmF0vV,CAAX,IAAI1gL,GAAI/uK,GAASA,EAAE2S,EAAE,CAC/P,SAAS8xS,IAAIzkT,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,GAAM,MAAH+B,GAAkB,GAATwF,EAAEvF,EAAED,EAAEmS,GAAqB,IAAZ4oB,EAAEv1B,EAAEoN,EAAE3U,EAAEuH,EAAEvH,EAAMyF,EAAE,EAAEA,EAAEzF,IAAIyF,EAAkB,IAAfkP,EAAEgrK,GAAG7iJ,EAAEr3B,GAAG,MAAU23K,MAAM7rJ,GAAG+iK,GAAGvyL,EAAE4S,EAAEk6L,MAAO,OAAOppM,OAAmB,GAAT8B,EAAEvF,EAAED,EAAEmS,GAAqB,IAAZ4oB,EAAEv1B,EAAEoN,EAAE3U,EAAEuH,EAAEvH,EAAMyF,EAAE,EAAEA,EAAEzF,IAAIyF,EAAkB,GAAGs3M,IAAlBpoM,EAAEgrK,GAAG7iJ,EAAEr3B,GAAG,MAAaopM,QAAQkO,GAAGh7M,GAAI,OAAO0D,EAAK,OAAQ,CAAC,CAC/P,SAAS4mL,IAAIrqL,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAyC,OAAGskL,GAA1Ct6J,EAAK,MAAHrd,EAAQ2oM,GAAGq4B,GAAIlzO,EAAE86B,EAAE,OAAOqyK,GAAIntM,EAAE2S,EAAET,GAAW,OAAM3M,EAAEo4K,GAAGpuJ,EAAE,MAAOq/M,KAA6BrpO,GAAUskL,GAAGt6J,EAAE,OAAmBhqB,EAAXo4K,GAAGpuJ,EAAE,MAAUvvB,KAAc,MAANuF,EAAE6+R,KAAsB,MAAHlyR,EAAQ2uO,IAAI7gP,EAAE86B,EAAE,KAAKv1B,GAAGssP,GAAI7xP,EAAE2S,EAAET,EAAE3M,KAAWA,GAAc,IAAK,CAI/P,SAASmqV,IAAI1vV,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAIr3B,EAAEzF,EAAEoU,EAAa,IAAX7M,EAAEvF,EAAEkS,EAAEA,EAAE9O,KAAS,EAAG,OAAOmC,EAAW,IAAJu1B,EAAE,EAAMr3B,EAAE,IAAIkiK,GAAIzzJ,EAAEE,GAAG3O,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAyB,IAAI6B,EAAE,IAAI4lK,GAAxBgY,GAAGC,GAAIn6K,GAAG,IAAoBkP,GAAG5S,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAoCgU,IAAXE,EAAdurK,GAAGC,GAAI79K,GAAG,IAAQA,EAAE/B,KAAWA,EAAE0xV,IAAI1vV,EAAEoS,GAAG0oB,EAAEm4G,EAAK3/H,KAAKugB,IAAIiH,EAAE98B,EAAE,IAAgB,OAj/BxP,SAAagC,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAU,IAAIxF,GAAZwF,EAAEvF,EAAEA,EAAEkS,GAAUqd,EAAErxB,OAAO6B,EAAEwvB,EAAExvB,IAAK0rO,GAAIlmO,EAAE,EAAE,IAAI2zO,GAAIl5O,EAAEA,IAAIsyP,GAAIpgP,EAAEyrK,GAAG0pB,GAAI9hM,EAAEA,EAAEgqB,EAAErxB,OAAOqxB,GAAG,KAAKvvB,EAAEkS,EAAEA,EAAE9O,GAAGmsB,CAAC,CAi/B6GogU,CAAI3vV,EAAEkS,EAAE4oB,GAAUA,CAAE,CACjQ,SAAS80T,IAAI5vV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAE,IAAI/6B,EAAE,EAAEA,EAAEC,EAAEuvB,EAAErxB,OAAO6B,IAAI,CAAyC,IAArC09M,GAAI19M,EAAEC,EAAEuvB,EAAErxB,QAAb48B,EAAqB6iJ,GAAG39K,EAAEuvB,EAAExvB,GAAG,IAAKwF,EAAExF,EAAQwF,EAAE,GAAG2M,EAAEgnS,IAAIz7F,GAAIl4M,EAAE,EAAEvF,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAEhqB,EAAE,GAAG,KAAKu1B,GAAG,GAAGs5M,GAAIp0O,EAAEuF,GAAGk4M,GAAIl4M,EAAE,EAAEvF,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAEhqB,EAAE,GAAG,QAAQA,EAAEk4M,GAAIl4M,EAAEvF,EAAEuvB,EAAErxB,QAAQ8B,EAAEuvB,EAAEhqB,GAAGu1B,CAAC,CAACvL,EAAEvvB,EAAE,IAAIwyK,GAAIjjJ,EAAErd,EAAE,IAAIsgK,EAAG,CAGjQ,SAASwsK,IAAIh/U,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAE,GAA2B,IAAvBvF,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,EAAEA,EAAE9B,OAAO,GAAUgU,IAAIutK,MAAMM,MAAM7tK,GAAGwtK,KAAK60G,GAAI52G,GAAG61D,GAAIxzO,GAAG,KAAK+nR,MAAMG,MAAMqM,GAAI52G,GAAG61D,GAAIxzO,GAAG,IAAImoR,OAAUoM,GAAI52G,GAAG61D,GAAIxzO,GAAG,KAAK+nR,MAAMI,MAAMoM,GAAI52G,GAAG61D,GAAIxzO,GAAG,IAAIkoR,WAAW,IAAI3iR,EAAE,IAAI48O,GAAIniP,GAAGuF,EAAEvF,GAAGuF,EAAE2M,GAAoBqiR,GAAd52G,GAAGk0H,GAAItsS,GAAG,IAAUgqB,EAAI,CAClQ,SAAS+7L,IAAItrN,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAA2F,IAAxEyF,EAAE,IAAI8lN,GAAvBhkN,EAAE+8N,GAAG,IAAI1xD,GAAI5wK,IAAgBuF,EAAEgqB,EAAErxB,QAAyBF,EAAE,IAAIurN,GAAvBzuL,EAAEwnM,GAAG,IAAI1xD,GAAI1+J,IAAgB4oB,EAAEvL,EAAErxB,QAAQyU,EAAE,KAAWlP,EAAEyO,EAAE,GAAGlU,EAAEkU,EAAE,IAAMo3M,GAAI7lN,EAAEyO,EAAE,GAAXqd,EAAcouJ,GAAGl6K,EAAEzD,EAAEq7M,GAAG53M,EAAE8rB,IAAI9rB,EAAEyO,GAAG,IAAQo3M,GAAItrN,EAAEkU,EAAE,GAAgCqd,GAA7BouJ,GAAG3/K,EAAEgC,EAAEq7M,GAAGr9M,EAAEuxB,IAAIvxB,EAAEkU,GAAG,MAAcS,EAAE4c,EAAc,OAAO5c,CAAC,CAClQ,SAAS25N,IAAItsO,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAI+6B,EAAIr3B,EAA4F,OAA1Fq3B,EAAE96B,EAAEA,EAAE2pN,IAAQ,KAAJ3pN,EAAEkS,EAAOzO,EAAEzD,EAAEkS,EAAEy3M,IAAI,GAA4B7uL,GAAzBvL,EAAE0jH,EAAK3/H,KAAKC,MAAM9P,EAAE6iT,KAAU7iT,GAAG8rB,EAAEg3R,IAAIzrR,GAAGyrR,IAAIvmT,EAAEA,EAAE86B,EAAE96B,EAAEkS,EAAEzO,EAAKyO,GAAG,GAAW+gI,EAAK3/H,KAAKC,MAAMvT,EAAEA,EAAEowU,IAAIl+T,MAAuDnS,EAA5CC,EAAEA,GAAG,GAAGkS,EAAE,IAAM+gI,EAAK3/H,KAAKC,MAAMvT,EAAEkS,EAAEm+T,IAAIn+T,MAAa,aAAanS,GAAGg5T,KAAYh5T,EAAE,CACnQ,SAASqvT,IAAIpvT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAK2kP,GAAIt3P,EAAEkS,GAAGolP,GAAIt3P,EAAEuvB,IAAIxvB,EAAEopN,GAAI55L,GAAGkwJ,MAAMC,MAAM1/K,EAAED,EAAEA,EAAEshC,KAAK,EAAE2lM,GAAIrpD,GAAG59K,EAAEs7M,GAAG,GAAG,KAAK1oM,EAAEw2M,GAAIj3M,EAAE0tK,KAAK5/K,EAAEkS,EAAES,EAAE0uB,KAAK,EAAE2lM,GAAIrpD,GAAGhrK,EAAE0oM,GAAG,GAAG,OAAU91M,EAAE4jN,GAAI55L,GAAGkwJ,MAAMG,MAAM5/K,EAAED,EAAEwF,EAAE87B,KAAK,EAAE2lM,GAAIrpD,GAAGp4K,EAAE81M,GAAG,GAAG,KAAKvgL,EAAEquL,GAAIj3M,EAAEwtK,KAAK1/K,EAAEkS,EAAE4oB,EAAEuG,KAAK,EAAE2lM,GAAIrpD,GAAG7iJ,EAAEugL,GAAG,GAAG,KAAK,CACnQ,SAAS4pG,IAAIjlT,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAE,GAAGzD,IAAGkS,EAAElS,EAAEouO,GAAG9+C,OAA8F,OAAnF38K,EAAEmxK,GAAGyqD,MAAMr8N,EAAEA,IAAIA,EAAEA,EAAE,IAAIyhN,IAAK6a,MAAMC,KAAKC,IAAGx8N,IAAIA,EAAEA,GAAG,yBAAmC,CAAW,IAAVzO,EAAE,IAAI6uK,GAAwB/sK,EAAE,EAAEu1B,GAApB/6B,EAAEy0O,IAAI7hO,EAAE,SAAgBzU,OAAOqH,EAAEu1B,IAAIv1B,EAAGgqB,EAAExvB,EAAEwF,GAAG9B,EAAE8rB,EAAE9rB,EAAE8rB,EAAErxB,QAAQqxB,EAAE,OAAO9rB,CAAC,CAAG,OAAOwjN,KAAMA,KAAM+Y,GAAG,CACnQ,SAAS6vH,IAAI7vV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAU,IAARvL,EAAEvvB,EAAEE,EAAEF,EAAM86B,EAAE6iJ,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAIypM,KAAK7gL,EAAEygL,OAAOh2M,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,MAAOl2M,EAAEvF,EAAEuvB,EAAE+wJ,GAAIC,GAAGh7K,EAAE2M,EAAE8zL,GAAG0pB,OAAOnqN,EAAEA,EAAE2M,GAAGnS,EAAEwF,EAAE2M,GAAI4zL,IAAI/lC,MAAMmtE,MAAMntO,EAAEk+L,OAAOxe,MAAMM,MAAMhgL,EAAEw/L,KAAKrtL,EAAEouK,GAAIC,GAAGxgL,EAAEimM,GAAGknC,OAAO5sD,GAAIC,GAAGxgL,EAAEimM,GAAGknC,OAAOntO,EAAEk+L,OAAOxe,MAAMM,MAAMhgL,EAAEw/L,KAAKrtL,EAAE,CAAG,CACpQ,SAAS49U,IAAI9vV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEkU,GAAE,EAAK3M,EAAE,KAAKu1B,EAAE,KAAK1oB,EAAE,IAAIpU,EAAE,IAAI2nK,GAAI3lK,EAAEA,GAAGhC,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAyB,IAAI6B,EAAE,IAAI+uO,GAAG7hB,GAAGi1E,GAAhCz+R,EAAEk6K,GAAGC,GAAI5/K,GAAG,KAA2BgC,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAAI,CAAgB,GAAfwvB,EAAEouJ,GAAGwtC,GAAGprN,GAAG,IAASwF,GAAGA,GAAG9B,EAAE,CAACyO,GAAE,EAAM,MAAME,CAAC,CAAa,GAAZ7M,EAAE9B,EAAEkP,EAAE4c,EAAEA,EAAEvxB,EAAO88B,GAAGA,GAAGnoB,EAAE,CAACT,GAAE,EAAM,MAAME,CAAC,CAAC0oB,EAAEnoB,CAAC,CAAE,OAAOT,CAAC,CAEpQ,SAASutJ,MAAMA,IAAI/qB,EAAIq7M,IAAI,IAAIrsI,IAAK3jD,MAAMyuJ,KAAK,KAAKwhC,IAAI7b,IAAI8b,IAAI,IAAItsI,GAAI,IAAIusI,IAAI,IAAIxsI,GAAI04F,IAAI6zC,KAAKE,IAAI,IAAIzsI,GAAI0qG,IAAI,IAAIgiC,IAAIvb,IAAIwb,IAAI3zC,IAAI4zC,IAAI1zC,IAAI2zC,IAAIluE,IAAImuE,IAAIzqJ,IAAI0qJ,IAAIlsB,IAAImsB,IAAIjsB,IAASllK,MAALoxL,IAAW/F,IAAKgG,IAAI7F,IAAI8F,IAAIxF,IAAIyF,IAAIvF,IAAIwF,IAAItF,IAAIuF,IAAI9qB,IAAI+qB,IAAIC,IAAIC,IAAIhG,IAAIiG,IAAInG,IAAIoG,IAAI1F,GAAG,CACpQ,SAASh4J,IAAI3zL,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAM4S,EAAElP,EAAEzF,EAAEoU,EAAkF,IAAhE0uR,GAAhBnuR,EAAK,IAAI2/I,IAAcuO,GAAI3uJ,GAAGA,KAAQS,EAAET,IAAIS,EAAET,EAAE,IAAIyhN,IAAK6a,MAAMC,KAAKC,IAAG/7N,IAArCP,EAAyCO,EAAET,EAAOlU,EAAE,EAAEA,EAAEuxB,EAAErxB,OAAOF,GAAG,EAAG0tS,IAAIt5R,EAAEmd,EAAEvxB,EAAE,GAAGuxB,EAAEvxB,IAA6C,KAArCgC,EAAEsxV,KAAKtxV,EAAEsxV,GAAG,IAAIh3J,GAAI6/C,IAAGn6O,EAAE,EAAE,IAA/BD,EAAmCC,EAAEsxV,GAAQ7tV,EAAE,EAAEA,EAAE,IAAIA,EAA+B1D,EAA1By/O,GAAI7hE,GAAG0O,GAAItsL,EAAEA,EAAE/B,EAAE,GAAG,MAAUitL,GAAIlrL,EAAE4S,EAAE,CACpQ,SAAS+0U,IAAI1nV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAwJ,IAAtJ07L,GAAIz3N,KAAKuF,KAAK,IAAIguK,IAAKhuK,KAAKtE,EAAEkS,EAAE5N,KAAK4N,EAAEqd,EAAEjrB,KAAKiB,EAAEvF,EAAKA,EAAEkS,GAAG2xM,IAAI7jN,GAAZD,EAAeC,EAAEA,EAAGsE,KAAKvE,EAAEunP,GAAIvnP,EAAEC,EAAEsE,KAAKtE,GAAGsE,KAAKirB,EAAE+3N,GAAIvnP,EAAEmS,EAAE5N,KAAK4N,GAhjC/I,SAAalS,EAAEkS,EAAEqd,GAAGvvB,EAAEJ,EAAE4oO,GAAGl1C,IAAG,CAACO,IAAIw4H,KAAK,CAAC,IAAI,IAAI,GAAG,CAAC98R,EAAE4oK,GAAGllD,EAAK3/H,KAAKwd,KAAK5e,EAAE,MAAM,GAAGlS,EAAEE,EAAEgS,EAAElS,EAAEoD,EAAEmsB,EAAEvvB,EAAEoS,EAAEF,EAAE,GAAG,EAAElS,EAAEqB,EAAEkuB,EAAE,GAAG,CAAC,CAgjC6BgiU,CAAIjtV,KAAKA,KAAKvE,EAAEuE,KAAKirB,GAjMvK,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAgF,IAA9E8rB,EAAEu0L,GAAI9jN,EAAEuF,GAAGu1B,EAAEwvL,GAAIuI,GAAI5M,GAAIrC,GAAI5jN,EAAEuF,IAAIvF,EAAED,EAAEC,EAAEA,EAAEA,EAAEuvB,EAAEvvB,EAAEkS,IAAI,IAAKA,EAAEqd,EAAEvvB,EAAE86B,EAAE96B,EAAEuF,EAAEgqB,EAAErd,EAAE4oB,EAAE5oB,EAAMzO,EAAE,EAAEA,EAAEzD,EAAEuvB,EAAE9rB,IAAI,CAAK,IAAJ1D,EAAEmS,EAAMS,EAAE,EAAEA,EAAE3S,EAAED,EAAE4S,IAAK+0S,GAAI1nT,EAAEuF,EAAE,IAAI2iM,GAAInoM,EAAEwF,EAAEvF,EAAEA,EAAEA,EAAEkS,KAAKskS,IAAIx2S,EAAE2S,EAAElP,GAAE,GAAM,GAAM1D,GAAGC,EAAEA,EAAEuF,GAAGvF,EAAEkS,CAAC,CAAC,CAiMnDs/U,CAAIltV,MAAUw2B,EAAEx2B,KAAKiB,EAAEA,EAAEvF,EAAE2hP,KAAKhmC,KAAK7gL,EAAEygL,OAAOh2M,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,MAAOlsL,EAAEA,EAAErxB,OAAO,GAAGuzV,IAAIntV,KAAKiB,EAAG,CACrQ,SAASmsV,IAAI1xV,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAInoB,EAAElP,EAAEzF,EAAE,IAAIuH,EAAE2M,EAAEA,GAAG,CAA4C,IAA3C3M,EAAE2M,EAAEA,IAAG,IAAKS,EAAE5S,KAAO4S,EAAE,IAAI8+P,IAAK17F,GAAIpjK,EAAEpN,EAAE2M,GAAOlU,EAAE88B,EAAE5oB,EAAEA,GAAGypM,KAAK39M,EAAEu9M,OAAO93M,EAAEk6K,GAAG3/K,EAAEy9M,KAAK,MAAU17M,GAAGwvB,GAAG9rB,EAAE8rB,GAAGA,IAAY9rB,EAAE8rB,GAAGrd,GAAGw/U,IAAI1xV,EAAEyD,EAAE8rB,EAAErd,EAAES,EAAEpN,EAAEu1B,GAAGr3B,EAAE1D,GAAGmS,GAAGw/U,IAAI1xV,EAAEyD,EAAE1D,EAAEmS,EAAES,EAAEpN,EAAEu1B,GAAGi7I,GAAIpjK,EAAE4c,EAAE9rB,GAAGmlP,GAAIj2O,EAAE5S,EAAE0D,EAAEyO,IAAG,OAAOS,CAAC,CAAC,OAAO,IAAI,CACrQ,SAASg/U,IAAI3xV,GAAG,IAAIkS,EAAM3M,EAAIoN,EAAQ,IAAJT,EAAE,EAAM3M,EAAE,IAAIogK,GAAI3lK,EAAEuF,GAAGA,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA2B6vQ,GAAI,IAAI3jD,GAAI,KAAK,IAAI7c,GAArC5vB,GAAGC,GAAIr4K,GAAG,IAAiC2M,EAAE,KAAK,IAAI4rI,OAAU5rI,EAAE,IAAIS,EAAE,IAAIgzJ,GAAI3lK,EAAE2S,GAAGA,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAA2B6vQ,GAAI,IAAI3jD,GAAI,KAAK,IAAI7c,GAArC5vB,GAAGC,GAAIjrK,GAAG,IAAiCT,EAAE,KAAK,IAAI6rI,OAAU7rI,EAAE,OAAOA,GAAG,CAAC,CAKrQ,SAAS2uF,IAAG3uF,GAAG,IAAIqd,EAAIhqB,EAAE,IAAI,OAAU,MAAH2M,EAAQ6lL,IAAI02B,GAAIv8M,EAAE,CAAC,MAAMlS,KAAY,GAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAA8H,OAAxHuvB,EAAEvvB,IAAEuF,EAAE8jL,GAAIrgG,GAAG92E,IAAI,KAAQytL,MAAMk6H,IAAI3nT,KAAM,GAAIxT,SAAS,KAAKy0T,IAAIlhB,MAAOpvG,KAAM,sCAAsCt9L,GAAGgqB,GAAU,IAAIhqB,EAAE,UAAU8jL,GAAI95J,EAAEk8N,IAAI,IAAS,MAAMv4E,GAAIlzK,IAAE,CAAC,CACtQ,SAAS4xV,IAAI5xV,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAO,IAAI+pJ,GAAI,KAAK,EAAE,OAAO,IAAIV,GAAI,KAAK,EAAE,OAAO,IAAIspC,GAAI,KAAK,EAAE,OAAO,IAAI18C,GAAI,KAAK,EAAE,OAAO,IAAIwxE,GAAI,KAAK,EAAE,OAAO,IAAIx9D,GAAI,QAAQ,MAAMsW,GAAI,IAAI2O,GAAI,mDAAwD,MAAL7hL,EAAE86B,EAAQ96B,EAAE86B,EAAE,GAAG96B,EAAE2S,KAAM,CACtQ,SAASk/U,IAAI7xV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAE,IAAIA,EAAE,IAAI6qI,GAAI3lK,EAAEiU,GAAG6mB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,SAAS6B,EAAE49K,GAAGC,GAAI9iJ,GAAG,MAAU5oB,EAAE2B,EAAE,GAAG9T,EAAEwvB,EAAE,IAAGxvB,EAAEmS,EAAEtS,GAAGG,EAAEwvB,EAAExvB,EAAEmS,EAAEtS,GAAG,GAAGG,EAAEmS,EAAEmW,EAAE,GAAGu9M,GAAI1zN,EAAEnS,EAAEmS,IAAI,IAAI3M,EAAE,IAAIogK,GAAI3lK,EAAEhC,GAAGuH,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,SAAS6B,EAAE49K,GAAGC,GAAIr4K,GAAG,MAAUvF,EAAE6T,EAAE,GAAG9T,EAAEwvB,EAAE,IAAGxvB,EAAEC,EAAEqoB,GAAGtoB,EAAEwvB,EAAExvB,EAAEC,EAAEqoB,GAAG,GAAGtoB,EAAEC,EAAEJ,EAAE,GAAGgmO,GAAIr2M,EAAExvB,EAAEC,GAAI,CACtQ,SAASi3U,IAAIj3U,GAAG,IAAIkS,EAAEqd,EAAIhqB,EAAI,GAAQ,MAALvF,EAAE2S,IAAS3S,EAAED,EAAEC,EAAEssE,GAAGtsE,EAAE86B,GAAGmwJ,GAAIjrL,EAAEA,EAAED,GAAMC,EAAEuvB,GAAS,OAAJvvB,EAAE86B,EAAyD,GAAzBv1B,GAApB2M,EAAEyrK,GAAG39K,EAAE2S,EAAE3S,EAAEhC,EAAE,GAAG,KAAQy9M,KAAKz7M,EAAEuF,EAAE2M,GAAEqd,EAAEvvB,EAAEssE,GAAG/mE,IAAQg2M,KAAMv7M,EAAED,EAAEwvB,EAAE07J,GAAIjrL,EAAEuvB,QAAiB,IAATvvB,EAAED,EAAE,MAAYmS,EAAEqpM,OAAM5U,GAAG3mM,EAAE2S,IAAI3S,EAAEhC,EAAE,MAAc,GAALgC,EAAEhC,IAAgCkU,EAAlByrK,GAAG39K,EAAE2S,EAAE3S,EAAEhC,EAAE,GAAG,IAAS,OAAOuH,CAAC,CAEtQ,SAASusV,IAAI9xV,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAIoN,EAAElP,EAAiK,IAAlJ0/J,GAAb59J,EAAE,IAAIw2T,IAAI/7T,IAAUi/P,MAAMk4B,MAAMpvF,GAAIxiM,GAAGyiM,MAAM0/C,KAAKx1O,GAAG61L,GAAIxiM,EAAEw1U,IAAIh7U,GAAGgoM,GAAIxiM,GAAG83J,MAAMykI,MAAMxM,MAAMt4D,MAAMj1B,GAAIxiM,EAAEukU,IAAI53T,EAAEqd,GAAGw4K,GAAIxiM,EAAEwkU,IAAI73T,EAAEnS,GAAGgyV,IAAI7/U,EAAE3M,GAAG9B,EAAEwvI,EAAK3/H,KAAKC,MAAMgc,EAAE,GAAO5c,EAAE,IAAIgzJ,GAAIpgK,EAAE6M,GAAGO,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAIjrK,GAAG,IAAM/S,EAAEsS,EAAEzO,EAAE,OAAO8B,CAAC,CAEvQ,SAASysV,IAAIhyV,GAAG,IAAIkS,EAAInS,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAM,IAAJyO,EAAE,EAAMnS,EAAE,IAAI4lK,GAAI3lK,EAAEA,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyB,IAAI48B,EAAE,IAAIg0M,GAAG7hB,GAAGm1E,GAA9BzkH,GAAGC,GAAI79K,GAAG,KAA2BC,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGtwL,IAAuB96B,IAAlBuF,EAAEo4K,GAAGwtC,GAAGrwL,GAAG,KAAY/6B,EAAE/B,EAAEuxB,GAAGhqB,EAAEgqB,EAAEnd,IAAIqtK,MAAMG,OAAMjtK,EAAE8iP,GAAIlwP,EAAEgqB,GAAGrd,EAAEzO,EAAEgyP,GAAIlwP,EAAExF,GAAGmS,EAAEA,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAE+gI,EAAK3/H,KAAKskB,IAAIn0B,EAAEkP,KAAM,OAAOT,CAAC,CACvQ,SAAS+/U,IAAIjyV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAIs8R,IAAItyQ,EAAE,kBAAkB,GAAGA,EAAE3vB,GAAKsS,GAAG2lP,GAAItoO,EAAEisO,GAAItpP,IAAIq1Q,KAAME,MAAM1nR,EAAE49K,GAAG26B,IAAIpmM,GAAG0iN,KAAMC,MAAM,IAAI70N,EAAE86B,EAAE/6B,EAAEC,EAAEA,EAAEi7T,IAAIt9I,GAAG26B,IAAIpmM,GAAGmsJ,MAAM+mK,MAAM,MAA+BthK,GAAI9jK,GAAG6gK,GAAhCt7J,EAAEg7K,GAAG+3B,IAAIpmM,GAAG6tJ,MAAMquJ,QAAqB7oT,IAAa2sV,IAAIlyV,EAAEkS,EAAbkpP,IAAIr7P,GAAawvB,GAAGA,EAAE3vB,GAAKsS,GAAG2lP,GAAItoO,EAAEisO,GAAItpP,IAAIq1Q,KAAME,KAAK,CACvQ,SAAS0qE,IAAInyV,EAAEkS,EAAEqd,GAAG,OAAOA,EAAE5c,GAAG,KAAK,EAAE,OAAO,IAAIsiM,GAAI/iM,EAAElS,EAAEizI,EAAK3/H,KAAKsgB,IAAI5zB,EAAED,EAAEmS,EAAEA,EAAEA,IAAI,KAAK,EAAE,OAAO,IAAI+iM,GAAIhiE,EAAK3/H,KAAKugB,IAAI7zB,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,GAAGkS,EAAEA,GAAG,KAAK,EAAE,OAAO,IAAI+iM,GAAI/iM,EAAElS,EAAEizI,EAAK3/H,KAAKugB,IAAI7zB,EAAEuvB,EAAErd,EAAEA,EAAEA,IAAI,KAAK,EAAE,OAAO,IAAI+iM,GAAIhiE,EAAK3/H,KAAKsgB,IAAI1hB,EAAElS,EAAEA,EAAED,EAAEC,GAAGkS,EAAEA,GAAI,OAAO,IAAI+iM,GAAI/iM,EAAElS,EAAEkS,EAAEA,EAAE,CAExQ,SAASm7T,IAAIrtU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAA2F,IAA3Cg2K,GAA9C7jK,EAAE4+M,GAAG,IAAI9wN,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAI+qK,GAAI3M,IAAG3tL,EAAE,EAAE,IAAIA,EAAEuvB,GAAGvxB,KAAWgC,EAAED,IAAIC,EAAED,EAAE,IAAIgrN,GAAIl9B,IAAG7tL,EAAE,EAAE,IAAIA,EAAED,IAAQA,EAAE,IAAIg/K,KAAM/+K,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAI+qK,GAAI3M,IAAG3tL,EAAE,EAAE,IAAIA,EAAEuvB,IAAIxvB,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAwBlJ,GAAI7jK,KAArBqd,EAAEouJ,GAAGwB,IAAIp/K,GAAG,MAAeA,IAAIwvB,EAAExvB,EAAE,IAAIgrN,GAAIl9B,IAAGt+J,EAAE,EAAE,IAAIA,EAAExvB,IAAI,OAAOgkL,GAAG7xK,GAAG,IAAIusM,GAAGvsM,EAAE,CACxQ,SAAS8jS,IAAIh2S,GAAG,IAAIkS,EAAEqd,EAAExvB,EAA2F,IAA3Cg2K,GAA9C7jK,EAAE4+M,GAAG,IAAI9wN,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAI+qK,GAAI3M,IAAG3tL,EAAE,EAAE,IAAIA,EAAEuvB,GAAGvxB,KAAWgC,EAAEuF,IAAIvF,EAAEuF,EAAE,IAAIwlN,GAAIl9B,IAAG7tL,EAAE,EAAE,IAAIA,EAAEuF,IAAQxF,EAAE,IAAIg/K,KAAM/+K,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAI+qK,GAAI3M,IAAG3tL,EAAE,EAAE,IAAIA,EAAEuvB,IAAIxvB,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAwBlJ,GAAI7jK,KAArBqd,EAAEouJ,GAAGwB,IAAIp/K,GAAG,MAAewF,IAAIgqB,EAAEhqB,EAAE,IAAIwlN,GAAIl9B,IAAGt+J,EAAE,EAAE,IAAIA,EAAEhqB,IAAI,OAAOw+K,GAAG7xK,GAAG,IAAIusM,GAAGvsM,EAAE,CAGxQ,SAASkgV,IAAIpyV,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAEu1B,EAAEnoB,EAAElP,EAAkJ,IAAhJo+R,IAAItyQ,EAAE,YAAY,GAAG0yJ,GAAIk6B,GAAG7D,IAAIpmM,GAAG2oJ,MAAMw3L,SAASlkG,GAAO,IAAI1mF,IAAK0jC,KAAM,IAAI1pB,GAAIvvK,MAxoBlH,SAAalS,GAAG,IAAIkS,EAAEqd,GAAErd,EAAEyrK,GAAG4qB,IAAIvoM,GAAG66J,MAAMy3L,MAAM,MAAU/iU,EAAErd,EAAElS,EAAO+nM,GAAI/nM,GAAGmjS,KAAMG,KAAf,GAAH/zQ,EAAuB,IAAI62R,GAAuB,IAAIl/C,GAAI33O,KAASw4K,GAAI/nM,GAAGmjS,KAAMG,KAAK,IAAIp8B,GAAI,GAAI,CAwoB7BqrF,CAAT9uV,EAAEoyS,GAAI3jS,IA/yCjI,SAAalS,EAAEkS,GAAG,OAAOA,EAAES,GAAG,KAAK,EAAEk3K,GAAG7pL,EAAEkS,EAAE,OAAOlS,EAAEkS,EAAE,IAAIg8R,IAAK,MAAM,KAAK,EAAErkH,GAAG7pL,EAAEkS,EAAE,OAAOlS,EAAEkS,EAAE,IAAI6xN,IAAM,CA+yCkCyuH,CAAIxyV,EAAE29K,GAAG4qB,IAAI9kM,EAAEgvV,KAAK,MAAuB33T,GAAjBnoB,EAAE+/U,IAAI1yV,EAAEA,EAAEyD,IAAWk4M,KAAK7gL,EAAEygL,MAAOh2M,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,KAAKk3I,IAAI3yV,EAAEkS,EAAE3M,EAAE2gS,GAAI32Q,EAAE,EAAE5c,EAAEssK,OAAgB2zK,IAATnvV,EAAEovV,IAAIlgV,IAAU4vR,IAAIhzQ,EAAE,CAC1Q,SAASujU,IAAI9yV,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAIoN,EAA6C,GAA3CkvR,IAAI3vR,EAAE,2BAA2B,GAmpBjE,SAAalS,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAI2O,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEH,EAAE9T,EAAEkS,EAAiBwnN,GAAfr4N,EAAE,IAAIkoN,GAAIz1M,EAAE,GAAS,IAAIolO,GAAIl5O,IAAI6T,GAAE,EAAMlB,EAAE,EAAE,KAAMtR,EAAE6Q,EAAE7Q,EAAEtB,EAAEk/K,MAAK,CAA2G,IAAvGqqC,GAAIjoN,EAAE6Q,EAAE7Q,EAAEtB,EAAEk/K,MAAf7sK,EAAqBurK,GAAGt8K,EAAEtB,EAAEs7M,GAAGh6M,EAAEkuB,EAAEluB,EAAE6Q,KAAK,IAAQurM,GAAI9qM,EAAEmB,EAAEyb,EAAErxB,QAAbkF,EAAqBu6K,GAAG7pK,EAAEyb,EAAE5c,GAAG,IAAeD,GAAVsB,EAAEqjP,GAAGjlP,EAAEpS,IAAOuvB,EAAErxB,OAAWgC,EAAE,IAAIylK,GAAI3xJ,GAAG9T,EAAEF,EAAEE,EAAEqvB,EAAEA,EAAErxB,QAAyBo0P,GAAhBt/O,EAAE2qK,GAAGC,GAAI19K,GAAG,IAAUkD,GAAG,GAAGyQ,EAAE,CAAC,IAAIjU,EAAEo2P,GAAG,IAAIl5E,GAAG9oK,GAAG,GAAGpU,EAAE2vB,EAAE+gM,MAAsB,IAAIx1L,EAAE,IAAI6qI,GAAI0xF,GAAG6qC,GAAhClvR,EAAE2qK,GAAGqwF,GAAGpuQ,GAAG,OAA8Bk7B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAyB60V,IAAhBxtV,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAU,GAAMitK,GAAI/nM,GAAGgoM,MAAMgrJ,MAAMtlI,MAAM,IAAO3tN,EAAEkzV,IAAIjzV,EAAEuF,EAAEmN,GAAG6c,EAAEouJ,GAAG4qB,IAAIv1L,EAAE0gR,KAAK,KAAKz/Q,EAAE0pK,GAAG0pB,GAAItnM,EAAEA,EAAEwvB,EAAErxB,OAAO,GAAG,IAAIqxB,EAAEluB,EAAE4S,EAAEsb,EAAEvxB,EAAEuxB,EAAE3vB,EAAEqU,EAAEsb,EAAErd,EAAE3M,EAAExF,EAAE/B,EAAEuxB,EAAEA,EAAEhqB,EAAGsO,GAAE,CAAK,MAAqB,GAAZG,EAAEub,EAAErxB,SAAcu/M,GAAI,EAAEzpM,EAAEub,EAAErxB,QAAQy/K,GAAG3pK,EAAEub,EAAE,GAAG,IAAUluB,IAAI49P,MAAMm4B,OAAMvjR,GAAE,EAAKlB,GAAG,MAAMA,CAAC,CAAClP,EAAE,IAAI8lN,GAAIvpN,EAAEkS,EAAE,GAAG,KAAMzO,EAAEyO,EAAEzO,EAAE1D,EAAEk/K,MAASqqC,GAAI7lN,EAAEyO,EAAEzO,EAAE1D,EAAEk/K,MAA8C,GAAxCtB,GAAGl6K,EAAE1D,EAAEs7M,GAAG53M,EAAE8rB,EAAE9rB,EAAEyO,KAAK,IAAOlS,EAAEuvB,EAAErxB,QAAWsrN,GAAI/lN,EAAG,CAnpBzrByvV,CAAIlzV,GAAMiiL,GAAIk6B,GAAG5T,IAAIvoM,GAAGq9J,MAAM81L,QAAQ,CAAC,IAAI5tV,EAAE,IAAIogK,GAAI3lK,EAAEkS,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA6B,IAAJqxB,EAAE,EAAM5c,EAAE,IAAIgzJ,GAA5BgY,GAAGC,GAAIr4K,GAAG,IAAwBvF,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAIjrK,GAAG,IAAMvP,EAAEmsB,KA2d/N,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAIhqB,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,IAAIuH,EAAE,IAAIogK,GAAI3lK,EAAEkS,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAyB,IAAIyU,EAAE,IAAIgzJ,GAAI0xF,GAA5B15E,GAAGC,GAAIr4K,GAAG,IAAuBvF,IAAI2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAyB,GAAGy1R,GAAnB74P,EAAE6iJ,GAAGC,GAAIjrK,GAAG,QAAe4c,EAAEouJ,GAAG4qB,IAAIztK,GAAGktK,MAAM0rF,MAAM,MAAW/gR,GAAK4c,EAAExvB,EAAa,IAAVmS,EAAEqd,EAAEvxB,EAAEuxB,EAAExvB,EAAQ/B,GAAGo1V,IAAIp1V,EAAEA,EAAEA,EAAEqD,GAAE,GAAM,GAAM8oR,GAAIj4Q,EAAElS,GAAGmqR,GAAInsR,EAAEA,GAAGmsR,GAAInsR,EAAEqD,GAAG8oR,GAAInsR,EAAEkU,GAAGkgP,GAAIp0P,EAAEuxB,EAAErd,EAAEqd,EAAExvB,GAAGqyP,GAAIlgP,EAAEqd,EAAE,MAAM+iO,GAAIpgP,EAAElS,EAAE,MAAMsyP,GAAIt0P,EAAEA,EAAE,MAAMs0P,GAAIt0P,EAAEqD,EAAE,MAAMixP,GAAIt0P,EAAEkU,EAAE,OAAMzO,EAAE,IAAIo/P,GAAI3wP,EAAElU,EAAEA,EAAEgC,EAAEkS,EAAE3M,EAAEvH,EAAEoU,EAAEpU,EAAE88B,IAAKz5B,EAAE6Q,EAAE7Q,EAAEoC,EAAE7D,EAAEsS,EAAEtS,EAAE6D,EAAEyO,EAAEA,EAAEA,EAAEzO,EAAE8rB,EAAEvxB,EAAEuxB,EAAE9rB,EAAEkP,EAAET,EAAES,EAAElP,EAAE1D,EAAE/B,EAAE+B,EAAEgoM,GAAI71L,EAAElU,EAAE01R,IAAIjwR,GAAGskM,GAAI/pM,EAAEgC,EAAE0zR,IAAIjwR,GAAGzF,EAAEA,EAAE+B,EAAEmS,EAAEzO,CAAM,CA3dvQ4vV,CAAIrzV,GAAGszV,IAAItzV,GAAE,GAAMszV,IAAItzV,GAAE,EAAM,CAACuiS,IAAIrwR,EAAE,CAE1Q,SAASsjU,IAAIx1U,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAEnoB,EAAE,GAAIT,EAAmB,CAA+C,IAAnBS,IAA3BmoB,EAAE+uJ,GAAG7pL,EAAE8sN,GAAG,KAAKjjC,GAAG7pL,EAAE8sN,GAAG,MAAUjjC,GAAG7pL,EAAE8sN,GAAG,KAAS/sN,EAAE,IAAIg/K,KAAM7sK,EAAElS,IAAIkS,EAAElS,EAAE,IAAI2qO,GAAIz4N,EAAEu5K,IAAGv5K,IAAIA,EAAElS,IAAID,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAgC,GAAT15K,EAAEguV,IAAhB51K,GAAGwB,IAAIp/K,GAAG,KAAgB+6B,EAAE+uJ,GAAGtkL,EAAE,IAAIoN,EAAEk3K,GAAGtkL,EAAE,KAAOA,EAAG,OAAOA,EAAG,OAAOu1B,GAAG0zM,MAAMglH,MAAMhlH,MAAM8P,IAAI,CAAlO,OAAO,IAA4N,CAE1Q,SAASm1G,IAAIzzV,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAM+6B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAiD,IAAhCw5N,GAAf78N,EAAE,IAAIi3M,GAAI1lL,EAAExvB,GAAS49K,GAAG4qB,IAAIr2L,GAAGw0R,MAAMgtD,MAAM,IAAQryV,EAAEy9P,IAAI5sP,EAAEA,EAAE,GAAG7Q,EAAE6Q,GAAG7Q,EAAEtB,EAAEwvB,GAAoBswJ,IAAhBztK,EAAEurK,GAAGohF,GAAI19P,GAAG,KAAUkE,EAAEvH,GAAG4nO,GAAI5lO,EAAEkS,EAAEE,GAAG,IAAI3O,EAAEq7P,IAAI5sP,EAAElS,EAAE,GAAGyD,EAAEyO,GAAGzO,EAAE1D,EAAEwvB,GAAG,CAAkB,IAAIuL,EAAEgkO,KAAvBnsP,EAAEgrK,GAAGohF,GAAIt7P,GAAG,MAAiBzD,EAAE,GAAG86B,EAAE5oB,GAAG4oB,EAAE/6B,EAAEwvB,GAAmBswJ,GAAblC,GAAGohF,GAAIjkO,GAAG,GAAS98B,GAAG4nO,GAAI5lO,EAAEA,EAAE2S,EAAE,CAAC,CAC3Q,SAASmW,IAAI9oB,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAA8B,KAA5BA,EAAE67N,KAAKtW,MAAMwiF,KAAK7iU,EAAEgoN,KAAK91M,IAAiL,MAAMghK,GAAI,IAAI2O,GAAI4iF,IAAIvyP,EAAE6sL,KAAK2jH,MAA/L,GAANv2G,MAAUxuB,GAAG7iJ,EAAE,IAAIysL,QAAMzsL,EAAEw7N,GAAIE,GAAIqsE,IAAI/nS,KAAW,MAAMo4I,GAAI,IAAI2O,GAAI4iF,IAAIvyP,EAAE6sL,KAAK2jH,MAAOn9S,EAAao4K,IAAV59K,EAAEC,EAAE22N,GAAG77L,KAAS,EAAE96B,EAAEkI,GAAGnI,GAAE,GAAK,GAAM6qB,IAAI5qB,EAAE86B,GAAE,GAAM,KAAM6iJ,GAAGp4K,EAAE,KAAKouV,GAAGzhV,EAAEqd,EAA2C,CAE3Q,SAASqkU,IAAI5zV,EAAEkS,EAAEqd,GAAGsyQ,IAAItyQ,EAAE,eAAe,GAAGA,EAAE3vB,GAAKsS,GAAG2lP,GAAItoO,EAAEisO,GAAItpP,IAAIq1Q,KAAME,MAAMznR,EAAED,EAAE49K,GAAG26B,IAAIpmM,GAAG0iN,KAAMC,MAAM,IAAI70N,EAAEuvB,EAAE+wJ,GAAIC,GAAG+3B,IAAIpmM,GAAGmsJ,MAAM6mK,QAAQllU,EAAEuF,EAAE01T,IAAIt9I,GAAG26B,IAAIpmM,EAAEkzT,KAAK,MAAMplU,EAAEA,EAphC5K,SAAaA,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAO,IAAIs6I,GAAI,KAAK,EAAE,OAAO,IAAIC,GAAI,QAAQ,MAAMgmB,GAAI,IAAI2O,GAAIq5I,KAAU,MAALl7T,EAAE86B,EAAQ96B,EAAE86B,EAAE,GAAG96B,EAAE2S,KAAM,CAohC8CkhV,CAAIl2K,GAAG26B,IAAIpmM,EAAEozT,KAAK,MAAMtlU,EAAEkS,EApkBxM,SAAalS,GAAG,OAAOA,EAAE2S,GAAG,KAAK,EAAE,OAAO,IAAIi6I,GAAI,KAAK,EAAE,OAAO,IAAIC,GAAI,KAAK,EAAE,OAAO,IAAIF,GAAI,KAAK,EAAE,OAAO,KAAK,QAAQ,MAAMumB,GAAI,IAAI2O,GAAIq5I,KAAU,MAALl7T,EAAE86B,EAAQ96B,EAAE86B,EAAE,GAAG96B,EAAE2S,KAAM,CAokBiCmhV,CAAIn2K,GAAG26B,IAAIpmM,EAAE4yT,KAAK,MA3mB5N,SAAa9kU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAY,GAAV/6B,EAAE,EAAEwF,EAAEwnV,IAAO/sV,EAAEkS,EAAG,IAAIA,EAAE,EAAEA,EAAE,IAAIA,IAAKqd,EAAI,oBAAFrd,EAAuB6hV,IAAI/zV,EAAEA,EAAED,EAAE,EAAE,EAAEgsU,IAAIx8S,IAAGuL,EAAE96B,EAAEkS,EAAE8hV,GAAGh0V,EAAED,IAAQwF,IAAGxF,EAAEwvB,EAAEhqB,EAAEu1B,GAAIi5T,IAAI/zV,EAAEA,EAAED,EAAE,EAAE,EAAEgsU,IAAIhsU,EAAE,CA2mB6Dk0V,CAAIj0V,GAAGuvB,EAAE3vB,GAAKsS,GAAG2lP,GAAItoO,EAAEisO,GAAItpP,IAAIq1Q,KAAME,KAAK,CAC5Q,SAASy6D,IAAIliV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAM9B,EAAE2O,EAAE/Q,EAAI,GAAGkuB,EAA6B,IAAI9rB,IAAjB1D,EAAE,IAAIgvO,GAAjBx/M,EAAEvvB,EAAE9B,SAA6BgU,EAAEnS,EAAEC,GAAGD,EAAEwvB,EAAE,GAAGk9K,KAAMC,KAAK,IAAI+f,GAAI1sN,GAAG0D,EAAE83M,OAAuBh2M,EAAEu6P,GAAIvwO,EAApBouJ,GAAGl6K,EAAEg4M,KAAK,IAAcz7M,MAAW,KAAwDsgS,GAAnDluR,EAAE8wP,GAAIljQ,GAAMupL,KAAHloL,EAAW,IAAIs4K,KAASznK,GAAGgiV,IAAI7yV,EAAE6Q,GAAG7Q,GAAGkE,GAASy6P,GAAIz6P,EAAEmiO,MAAM2vE,IAAI9xS,EAAE6M,GAAGklS,IAAI/xS,EAAE6M,GAAGglS,GAAIp3S,EAAEuF,EAAE6M,GAAK,CAC5Q,SAAS+hV,IAAIn0V,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAM4S,EAAE,IAAI3S,EAAEoS,EAAE,CAA+B,GAA9BO,EAAE,IAAIkgJ,GAA8B,OAA1B3gJ,EAAEmzR,KAAQrlS,EAAE65N,GAAG75N,EAAEkS,GAAc,CAAC,IAAInS,EAAE,IAAIg/K,GAAImM,GAAIlrL,IAAID,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAgCmpC,GAAIz1M,EAAXwhV,IAAlB5kU,EAAEouJ,GAAGwB,IAAIp/K,GAAG,MAAsBkrL,GAAIt4K,EAAE4c,GAAGrd,EAAElS,EAAE0oN,GAAG1oN,EAAQ,CAACqtP,GAAI16O,GAAG3S,EAAEoS,EAAE,IAAI2sM,IAAKphC,GAAG0O,GAAIC,IAAKytD,KAAMC,KAAK95O,GAAG,IAAI,IAAIyS,EAAE3U,GAAG2U,EAAEA,GAAGw4O,GAAInrP,GAAGkS,IAAI,EAAE,CAAC,OAAOlS,EAAEoS,CAAC,CAK5Q,SAASgiV,IAAGp0V,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAmB,IAAjBpN,EAAE2M,EAAElS,EAAEA,EAAE86B,EAAEA,EAAE,KAAS/6B,EAAEC,EAAEkS,EAAE3M,IAAQxF,EAAEA,EAAEmS,EAAE,CAAC,GAAGnS,GAAGmS,EAAE,CAAE4oB,EAAgBA,EAAE5oB,EAAEA,EAAEA,EAAnBlS,EAAEkS,EAAE3M,GAAG2M,EAAEA,EAAa,KAAK,CAAC4oB,EAAE/6B,CAAC,CAAkB,IAAjB4S,EAAET,EAAE4oB,EAAE96B,EAAE86B,EAAEA,EAAE,KAASvL,EAAEvvB,EAAEuvB,EAAE5c,IAAQ4c,EAAEA,EAAExvB,EAAE,CAAC,GAAGwvB,GAAGrd,EAAE,CAAE4oB,EAAgBA,EAAE/6B,EAAEmS,EAAEnS,EAAnBC,EAAEuvB,EAAE5c,GAAGT,EAAEnS,EAAa,KAAK,CAAC+6B,EAAEvL,CAAC,CAAErd,EAAE3M,EAAa2M,EAAE3M,EAAEgqB,EAAErd,EAAEqd,EAAlBvvB,EAAEA,EAAEkS,EAAEqd,EAAgBrd,EAAEqd,EAAard,EAAEqd,EAAEhqB,EAAE2M,EAAE3M,EAAlBvF,EAAEuF,EAAE2M,EAAE3M,IAAiBvF,EAAEhC,IAAIgC,EAAE2S,CAAC,CAE9Q,SAAS0hV,IAAIr0V,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAiE,IAA7CwuL,IAAlBxuL,EAAE,IAAIyuL,GAAIvpN,EAAE,IAAYkS,EAAE4oB,EAAE/6B,EAAEk/K,MAAf1vJ,EAAqBouJ,GAAG7iJ,EAAE/6B,EAAEs7M,GAAGvgL,EAAEvL,EAAEuL,EAAE5oB,KAAK,KAAY4oB,EAAE5oB,EAAE4oB,EAAE/6B,EAAEk/K,MAASqqC,GAAIxuL,EAAE5oB,EAAE4oB,EAAE/6B,EAAEk/K,MAAiC15K,EAAE,IAAIi/N,IAAtDzkO,EAAqB49K,GAAG7iJ,EAAE/6B,EAAEs7M,GAAGvgL,EAAEvL,EAAEuL,EAAE5oB,KAAK,MAAkBqd,EAAEA,EAAExvB,EAAEmS,GAAGo3M,GAAIxuL,EAAE5oB,EAAE,GAAG4oB,EAAE96B,EAAEq7M,GAAGvgL,EAAEvL,IAAIuL,EAAE5oB,GAAGwnN,GAAI5+L,EAAEv1B,GAAG+jN,GAAIxuL,EAAE5oB,EAAE4oB,EAAE/6B,EAAEk/K,MAAMnkJ,EAAE/6B,EAAEs7M,GAAGvgL,EAAEvL,EAAEuL,EAAE5oB,KAAK3M,EAAEvF,GAAE,EAAMuvB,EAAExvB,CAAE,CAC9Q,SAASu0V,IAAIt0V,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAA8B,IAA5BpN,EAAEo4K,GAAG4qB,IAAIvoM,GAAGgoM,MAAMusJ,MAAM,IAAQ5hV,EAAE,IAAIgzJ,GAAI3lK,EAAEoS,GAAGO,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAQ,CAAiB,IAAI6B,EAAE,IAAI4lK,IAA1B7qI,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAoBA,GAAG5S,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAkC,OAATk0P,GAAdz0E,GAAGC,GAAI79K,GAAG,IAAUwF,GAAUu1B,EAAE,IAAIvL,EAAE,IAAIo2I,GAAI7qI,EAAEv1B,GAAGgqB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAkC,OAATm0P,GAAd10E,GAAGC,GAAIruJ,GAAG,IAAUhqB,GAAUu1B,CAAE,CAAC,OAAO,IAAI,CAG9Q,SAASu9S,IAAIr4U,GAAG,IAAIkS,EAAEqd,EAAM,IAAJA,EAAE,EAAOA,EAAEvvB,EAAEuvB,EAAErxB,UAAegpO,IAAKzpB,GAAIluL,EAAEvvB,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAEA,GAAG,OAAO,GAAhDA,KAA0D,GAAGA,EAAE,GAAGA,EAAEvvB,EAAEuvB,EAAErxB,OAAO,EAAG,OAAOqxB,EAAM,IAAJrd,EAAE,EAAOA,EAAElS,EAAEuvB,EAAErxB,UAAegpO,IAAKzpB,GAAIvrM,EAAElS,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAErd,GAAG,OAAO,GAAhDA,KAA0D,OAAGA,EAAE,GAAGqd,EAAEvvB,EAAEuvB,EAAErxB,OAAO,EAAUgU,EAASlS,EAAEuvB,EAAErxB,OAAO,EAAE,CAAC,CAC/Q,SAASs2V,IAAIx0V,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,GAAGmS,GAAGlS,EAAE8sN,IAAI9sN,EAAEgtN,IAAI,IAAI,GAAK96M,EAAE,CAAC,GAAG61T,IAAI/nU,EAAEkS,GAAG,MAAMghK,GAAI,IAAI2O,GAAI4yK,IAAIpN,IAAIrnV,KAAKD,EAAE,KAAOC,EAAE8sN,KAAK/sN,GAAGwvB,EAAEvvB,EAAEgtN,IAAI,KAAM,EAAEl7E,IAAI9xI,EAAED,GAAGC,EAAE8sN,GAAGtvF,GAAGx9H,GAAG,EAAEuvB,EAAE,KAAKxvB,IAAOmS,IAAInS,EAAE64T,IAAI1mT,EAAElS,EAAE,EAAED,KAAIA,EAAEo4N,GAAIn4N,EAAEkS,EAAEnS,KAAQA,EAAEisL,IAAI,MAAgB,IAAJ,EAALhsL,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEkS,EAAEA,GAAG,CAC/Q,SAASgiV,IAAIl0V,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,GAAGmS,GAAGlS,EAAE8sN,IAAI9sN,EAAEgtN,IAAI,IAAI,GAAK96M,EAAE,CAAC,GAAG61T,IAAI/nU,EAAEkS,GAAG,MAAMghK,GAAI,IAAI2O,GAAI4yK,IAAIC,IAAI10V,KAAKD,EAAE,KAAOC,EAAE8sN,KAAK/sN,GAAGwvB,EAAEvvB,EAAEgtN,IAAI,KAAM,EAAEs6G,IAAItnU,EAAED,GAAGC,EAAE8sN,GAAGtvF,GAAGx9H,GAAG,EAAEuvB,EAAE,KAAKxvB,IAAOmS,IAAInS,EAAE64T,IAAI1mT,EAAElS,EAAE,EAAED,KAAIA,EAAEq4N,GAAIp4N,EAAEkS,EAAEnS,KAAQA,EAAEisL,IAAI,MAAgB,IAAJ,EAALhsL,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEkS,EAAEA,GAAG,CAC/Q,SAAS44M,IAAI9qN,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,GAAGmS,GAAGlS,EAAE8sN,IAAI9sN,EAAEgtN,IAAI,IAAI,GAAK96M,EAAE,CAAC,GAAG61T,IAAI/nU,EAAEkS,GAAG,MAAMghK,GAAI,IAAI2O,GAAI4yK,IAAIE,IAAI30V,KAAKD,EAAE,KAAOC,EAAE8sN,KAAK/sN,GAAGwvB,EAAEvvB,EAAEgtN,IAAI,KAAM,EAAEk7G,IAAIloU,EAAED,GAAGC,EAAE8sN,GAAGtvF,GAAGx9H,GAAG,EAAEuvB,EAAE,KAAKxvB,IAAOmS,IAAInS,EAAE64T,IAAI1mT,EAAElS,EAAE,GAAGD,KAAIA,EAAEk4N,GAAIj4N,EAAEkS,EAAEnS,KAAQA,EAAEisL,IAAI,MAAgB,IAAJ,EAALhsL,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEkS,EAAEA,GAAG,CAChR,SAAS0iV,IAAI1iV,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAiB,GAAfpN,EAAEwhB,IAAI7U,GAAe,OAAZS,EAAET,EAAEE,IAAgB7M,EAAG,OAAO2M,EAAE+rN,KAAK,KAAK14N,EAAE84N,KAAU,GAAGx0C,GAAGtkL,EAAE,KAAK,CAAU,IAATxF,EAAEwF,EAAEw2N,QAAWjhM,EAAE/6B,EAAEi8N,OAAW9pN,EAAElU,EAAE,CAAa,IAAZuxB,EAAEouJ,GAAGp4K,EAAE,MAAUsvV,KAAM,IAAI3iV,EAAES,EAAEmoB,EAAEmhM,GAAG1sM,EAAE5c,EAAE,CAAC,MAAM3S,KAAY,IAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,IAAmB,MAAMkzK,GAAIlzK,KAAxBkS,EAAES,EAAE,IAAsB,CAAET,EAAElU,EAAE88B,CAAC,CAAE,OAAO5oB,EAAES,CAAC,CAAC,OAAO,IAAI,CAC/Q,SAASuuU,IAAIlhV,GAAG,IAAIkS,EAAoP,OAAxO6jK,GAAV7jK,EAAE,IAAIogK,GAAU,IAAIsV,GAAI,IAAIqtB,GAAIj1M,EAAEuvB,EAAEvvB,EAAED,GAAG,IAAIk1M,GAAIj1M,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,EAAED,KAAKg2K,GAAI7jK,EAAE,IAAI01K,GAAI,IAAIqtB,GAAIj1M,EAAEuvB,EAAEvvB,EAAED,GAAG,IAAIk1M,GAAIj1M,EAAEuvB,EAAEvvB,EAAED,EAAEC,EAAEA,KAAK+1K,GAAI7jK,EAAE,IAAI01K,GAAI,IAAIqtB,GAAIj1M,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,EAAED,EAAEC,EAAEA,GAAG,IAAIi1M,GAAIj1M,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,EAAED,KAAKg2K,GAAI7jK,EAAE,IAAI01K,GAAI,IAAIqtB,GAAIj1M,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,EAAED,EAAEC,EAAEA,GAAG,IAAIi1M,GAAIj1M,EAAEuvB,EAAEvvB,EAAED,EAAEC,EAAEA,KAAYkS,CAAC,CAChR,SAAS4iV,IAAI90V,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAA+B,GAA7BA,EAAEs2T,IAAI/2T,EAAEqd,GAAGxvB,EAAEwvB,EAAExvB,EAAEwvB,EAAErxB,QAAQgU,GAAgB,GAAXlS,EAAEoS,EAAEO,EAAEvP,IAAkB,GAAVpD,EAAEoS,EAAEO,EAAEvP,IAAOpD,EAAEA,EAAEkS,EAAE9O,GAAI,OAAOrD,EAAc,IAAZC,EAAEoS,EAAEO,EAAEvP,IAAI,EAAM03B,EAAE,IAAIg0M,GAAG7hB,GAAGu5F,GAAI7zS,GAAG3S,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGtwL,IAAoB,IAAMsuL,GAArB7jN,EAAEo4K,GAAGwtC,GAAGrwL,GAAG,OAAqBsuL,GAAI7jN,IAAIA,EAAEgqB,EAAEvxB,EAAEuxB,GAAGhqB,EAAExF,EAAE/B,EAAEuxB,IAAKhqB,GAAG2M,EAAY,OAAO4iV,IAAI90V,EAAEuF,EAAEoN,EAAE5S,GAAG,OAAOA,CAAC,CAChR,SAASg1V,IAAI/0V,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAEu1B,EAAE,IAAIA,EAAE5oB,EAAElS,EAAE2hP,KAAKhmC,KAAK7gL,EAAEygL,MAAOh2M,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,KAAM99B,GAAG+5B,GAAI13M,EAAEkS,EAAE3M,GAAG,OAAUu4M,GAAIC,IAAIx4M,KAAKu4M,GAAIE,IAAIz4M,IAAIyvV,IAAIh1V,EAAEuF,EAAEgqB,GAAGwuL,IAAIx4M,IAAIu4M,GAAIE,IAAIz4M,IAAgB,MAAZmyM,GAAI13M,EAAEuvB,EAAEhqB,IAA2B,MAAjBmyM,GAAI13M,EAAEkS,EAAE8rM,IAAIz4M,KAAW0vV,IAAIj1V,EAAEuF,EAAEgqB,GAAE,GAAmB,MAAZmoL,GAAI13M,EAAED,EAAEwF,IAA2B,MAAjBmyM,GAAI13M,EAAEkS,EAAE6rM,IAAIx4M,KAAW0vV,IAAIj1V,EAAEuF,EAAEgqB,GAAE,GAAO,CACjR,SAAS2lU,IAAIl1V,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,IAAIuH,EAAEvF,EAAE27M,KAAKp2M,EAAEg2M,MAA6F,IAAtFx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,IAAc82C,GAAV9uP,EAAE,IAAIs1U,IAAUh5U,GAAG4+P,IAAIl7P,GAAGg8K,MAAMC,MAAMqoB,GAAItkM,GAAGukM,MAAMmtJ,MAAMznI,MAAM,IAAW/6M,EAAET,EAAEypM,KAAKhpM,EAAE4oM,MAAOzgL,EAAE6iJ,GAAGhrK,EAAE8oM,KAAK,IAAc82C,GAAVv0P,EAAE,IAAI+6U,IAAUj+S,GAAG6jO,IAAI3gQ,EAAE4hL,KAAKmoB,GAAI/pM,EAAEm3V,KAAI,GAAgBptJ,GAAVx4K,EAAE,IAAIs7N,GAAUsqG,KAAI,GAAM9iG,GAAI9iO,EAAE9rB,GAAG2uP,GAAI7iO,EAAEvxB,EAAI,CACjR,SAAS2nP,IAAI3lP,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAE8B,EAAEoqT,IAAI3vT,EAAEkS,EAAEqd,GAAGuL,EAAE60R,IAAI3vT,EAAEuvB,EAAErd,GAAGS,EAAEgrK,GAAG+5B,GAAI13M,EAAEuvB,EAAErd,GAAG,KAAKzO,EAAEk6K,GAAG+5B,GAAI13M,EAAEuvB,EAAEA,GAAG,KAAQhqB,EAAEu1B,EAAG,IAAIm5N,IAAKqR,KAAMyF,KAAKp4P,EAAElP,EAAEq3B,EAAEv1B,GAAWu1B,EAAEv1B,EAAG,IAAI0uP,IAAKqR,KAAMyF,KAAKtnQ,EAAEkP,EAAEpN,EAAEu1B,IAAc,GAAHv1B,GAAS2M,EAAElU,GAAIuxB,EAAEvxB,GAAI+B,EAAEmS,EAAElU,EAAEuxB,GAAGA,EAAEvxB,EAAEuxB,MAAI,IAAI0kO,IAAKqR,KAAMyF,KAAKp4P,EAAElP,EAAE,GAAG,IAAIwwP,GAAI8W,IAAItnQ,EAAEkP,EAAE,GAAG,CACjR,SAASiuT,IAAI5gU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAQ,IAAJ8B,EAAE,EAAMoN,EAAE,IAAIgzJ,GAAIzzJ,EAAElS,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAkD,IAAzBqH,IAAhBu1B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAASzS,EAAEgS,EAAE4oB,EAAE/6B,EAAEC,EAAE86B,EAAE/6B,EAAEA,EAAEC,EAAEuF,EAAMxF,EAAE,IAAI+uO,GAAG7hB,GAAGi1E,GAAIpnQ,GAAG96B,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,KAAKwvB,EAAEouJ,GAAGwtC,GAAGprN,GAAG,KAASwvB,EAAEvxB,EAAEqD,IAAI49P,MAAMi4B,OAA0C3xR,IAA5B9B,EAAEk6K,GAAG4qB,IAAXh5K,EAAEA,EAAEvxB,GAAcgqM,MAAM0/C,MAAM,KAASxnP,EAAEgS,EAAEzO,EAAE1D,EAAEC,EAAEyD,EAAE1D,EAAEA,GAAI,OAAOwF,CAAC,CACjR,SAASoqU,IAAI3vU,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAA4D,IAA1D0oB,EAAE,IAAIw3I,GA4Z5C,SAAatyK,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAO,IAALoC,GAAG,EAAMpC,EAAE,IAAIskK,GAAI3lK,GAAGqB,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,SAASkU,EAAEurK,GAAGC,GAAIv8K,GAAG,MAAOsR,EAAElP,IAAgJkP,EAA5IpN,EAAE0kN,GAAIyzC,GAAI9Z,GAAIz5B,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAIn7L,EAAE0oB,EAAE,KAAK,IAAIgwH,IAAK,IAAIC,KAAMhrJ,GAA6E/B,EAA1E88B,EAAEmvL,GAAIyzC,GAAI9Z,GAAIz5B,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAIn7L,EAAE/Q,EAAE,KAAK,IAAI2pJ,IAAK,IAAIC,KAAMlrJ,GAAeA,IAAG4S,EAAEs3M,GAAIyzC,GAAI9Z,GAAI,IAAIx5B,GAAI,KAAK,IAAI7c,GAAIn7L,EAAE0oB,EAAE,KAAK,IAAIowH,KAAMnrJ,GAAG/B,EAAEisN,GAAIyzC,GAAI9Z,GAAI,IAAIx5B,GAAI,KAAK,IAAI7c,GAAIn7L,EAAE/Q,EAAE,KAAK,IAAI8pJ,KAAMprJ,IAAGqS,EAAErS,EAAE4S,EAAEP,EAAEpS,EAAEuF,EAAE6M,EAAEpU,EAAEA,EAAEoU,EAAEF,EAAE4oB,EAAK,GAAH98B,EAAM++M,GAAIxtL,EAAEnd,EAAEmd,EAAEA,EAAErd,EAAEqd,EAAEA,GAAY,GAAH5c,GAAOoqM,GAAI7qM,EAAEE,EAAEF,EAAEqd,EAAErd,EAAEA,EAAEqd,EAAS,CA5Z1Y6lU,CAAIp1V,EAAxBoS,EAAE,IAAIqnK,GAAI9mK,EAAE,IAAI8mK,GAAcvnK,GA6mB9E,SAAalS,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAQ9B,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAEA,EAAEqxN,GAAGxiO,GAAGqB,EAAE,IAAIixK,GAAI7uK,EAAEzD,EAAEuvB,EAAErxB,OAAO4V,EAAErQ,EAAE,EAAEuP,EAAEvP,EAAE,EAAE,KAAa,GAAP0N,EAAEnR,EAAEuvB,GAAK,CAAC,KAAW,GAALA,EAAErd,GAASo3M,GAAS,GAAL/5L,EAAErd,GAAT+B,EAAe0pK,GAAGymD,GAAI70M,EAAEA,EAAEvvB,EAAEA,GAAG,KAAM4uN,GAAIz9M,EAAEnR,EAAEiU,GAASA,EAAEtB,EAAEmB,IAAIuhV,IAAIphV,EAAE/B,EAAEqd,EAAExvB,GAAG,KAAW,GAALmS,EAAEA,GAASo3M,GAAS,GAALp3M,EAAEA,GAATmW,EAAes1J,GAAGymD,GAAIlyN,EAAEA,EAAElS,EAAEA,GAAG,KAAM4uN,GAAIz9M,EAAEnR,EAAEqoB,GAASA,EAAE1V,EAAEK,IAAIqiV,IAAIhtU,EAAEnW,EAAEqd,EAAExvB,GAAS,IAANqS,EAAE6lL,IAAQvlL,EAA4C,IAAIyyJ,GAA3C,IAAIuyD,GAAK,IAAIlI,GAAK,IAAItqD,GAAI/zJ,EAAEnR,GAAIA,GAAIkS,IAAe46L,GAAIp6L,EAAE1S,EAAEA,IAAI,CAA+B,GAA9BgU,EAAc2pK,GAATi0C,GAAIl/M,EAAE1S,GAAQ6sM,KAAK,MAAU9sM,GAAGiU,EAAE9B,EAAE,GAAG8B,EAAEhU,GAAG,EAAE,CAACqB,EAAEkuB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAG98K,EAAEkuB,EAAEluB,EAAEkuB,EAAErxB,QAAQ8V,EAAE,KAAK,EAAC5Q,EAAE4Q,EAAEhW,EAAEgW,EAAEjU,IAAQqS,IAAMhP,EAAEgP,IAAG/Q,EAAEkuB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAG/rK,EAAEhP,GAAE/B,EAAEkuB,EAAEluB,EAAEkuB,EAAErxB,QAAQ8V,EAAE,CAAgB,GAAZ3S,EAAEkuB,EAAErxB,SAAWF,EAAE2/K,GAAG0pB,GAAIhmM,EAAEi5T,IAAI/0T,EAAElE,EAAEkuB,EAAErxB,SAAS,KAAK0wN,GAAIz9M,EAAEnR,EAAEhC,GAASA,EAAE2U,EAAEK,IAAIqiV,IAAIr3V,EAAEkU,EAAEqd,EAAExvB,GAAGsB,EAAEkuB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAG,CAAgB,IAAftqK,EAAE7T,EAAEuvB,EAAErxB,OAAO,EAAMgC,EAAE,IAAIylK,GAAI3lK,GAAGE,EAAEF,EAAEE,EAAEqvB,EAAEA,EAAErxB,SAAS0B,EAAE+9K,GAAGC,GAAI19K,GAAG,MAAOyS,EAAElP,IAAI7D,EAAE+S,EAAE/S,EAAE+S,EAAEkB,EAAG,CA7mB/pByhV,CAAIt1V,EAAEoS,EAAEO,EAAET,EAAEqd,GAAOvxB,EAAE,IAAI2nK,GAAI3lK,GAAGhC,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAA0B,IAAIqH,EAAE,IAAIogK,IAA3BliK,EAAEk6K,GAAGC,GAAI5/K,GAAG,MAAqBqD,GAAGkE,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAS6B,EAAE49K,GAAGC,GAAIr4K,GAAG,OAAO2M,GAAGnS,EAAEwvB,IAAI+1O,KAAMC,OAAO9hQ,EAAEkP,EAAE5S,EAAEmS,EAAES,IAAImoB,EAAEvL,EAAEuL,EAAEvL,EAAErxB,QAAQ6B,GAAS,OAAO+6B,CAAC,CACjR,SAAS+2P,MAAMA,IAAIn9I,EAAIq9I,IAAI,IAAIx9E,GAAI,uCAAuC,GAAGy9E,IAAI,IAAIz9E,GAAI,uCAAuC,GAAG09E,IAAI,IAAI19E,GAAI,yCAAyC,GAAG29E,IAAI,IAAI39E,GAAI,yCAAyC,GAAG49E,IAAI,IAAI59E,GAAI,gBAAgB,EAAE,CAGjR,SAASytI,IAAIhiV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,GAAGmS,GAAGlS,EAAE8sN,IAAI9sN,EAAEgtN,IAAI,IAAI,IAAM96M,EAAE,CAAC,GAAG61T,IAAI/nU,EAAEkS,GAAG,MAAMghK,GAAI,IAAI2O,GAAI4yK,IAAIc,IAAIv1V,KAAKD,EAAE,KAAOC,EAAE8sN,KAAK/sN,GAAGwvB,EAAEvvB,EAAEgtN,IAAI,KAAM,EAAEo7G,IAAIpoU,EAAED,GAAGC,EAAE8sN,GAAGtvF,GAAGx9H,GAAG,EAAEuvB,EAAE,KAAKxvB,IAAOmS,IAAInS,EAAE64T,IAAI1mT,EAAElS,EAAE,GAAGD,KAAIA,EAAE66N,GAAI56N,EAAEkS,EAAEnS,KAAQA,EAAEisL,IAAI,MAAgB,IAAJ,EAALhsL,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,GAAGkS,EAAEA,GAAG,CAKlR,SAAS0kU,IAAI52U,EAAEkS,EAAEqd,GAAS,OAANgiN,QAASC,GAAIxxO,EAAEkS,KAAIs/N,GAAIxxO,EAAEuvB,MAAwBimU,IAAI,IAAIvgJ,GAAIj1M,EAAEuvB,EAAEvvB,EAAED,GAAG,IAAIk1M,GAAIj1M,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,EAAED,GAAGmS,EAAEqd,IAAIimU,IAAI,IAAIvgJ,GAAIj1M,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,EAAED,GAAG,IAAIk1M,GAAIj1M,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,EAAED,EAAEC,EAAEA,GAAGkS,EAAEqd,IAAIimU,IAAI,IAAIvgJ,GAAIj1M,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,EAAED,EAAEC,EAAEA,GAAG,IAAIi1M,GAAIj1M,EAAEuvB,EAAEvvB,EAAED,EAAEC,EAAEA,GAAGkS,EAAEqd,IAAIimU,IAAI,IAAIvgJ,GAAIj1M,EAAEuvB,EAAEvvB,EAAED,EAAEC,EAAEA,GAAG,IAAIi1M,GAAIj1M,EAAEuvB,EAAEvvB,EAAED,GAAGmS,EAAEqd,GAAE,CACnR,SAASkmU,IAAIz1V,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,IAAI96B,EAAEqhC,KAAM,IAAI9R,EAAE,EAAExvB,EAAEC,EAAEi/K,KAAK1vJ,EAAExvB,IAAIwvB,EAAiB,GAAM,OAApBuL,EAAEgpJ,GAAG9jL,EAAEq7M,GAAG9rL,KAAkB,MAAHrd,EAAQmqN,GAAIvhM,EAAE24B,OAAO,EAAE,GAAG,OAAU,MAAHvhD,IAAU3M,EAAE2M,EAAEhU,QAAQm+N,GAAIvhM,EAAE24B,OAAO34B,EAAE58B,OAAOqH,EAAEA,GAAG2M,IAAI4oB,EAAE58B,QAAQgU,EAAEhU,OAAO,KAAKm+N,GAAI1sC,IAAIz9K,GAAGmqN,GAAIvhM,EAAEo5J,OAAOmoC,GAAI1sC,IAAIz9K,IAAImqN,GAAIvhM,EAAE5oB,GAAI,OAAO,EAAO,OAAO,CAAK,CAGnR,SAAS21R,MAAMA,IAAInzJ,EAAIozJ,IAAI,IAAIz1F,GAAIy3E,IAAI,GAAGie,IAAI,IAAI11F,GAAI,UAAU,GAAG21F,IAAI,IAAI31F,GAAI,gBAAgB,GAAG41F,IAAI,IAAI51F,GAAI,mBAAmB,GAAG61F,IAAI,IAAI71F,GAAI,yBAAyB,GAAG81F,IAAI,IAAI91F,GAAI,uBAAuB,GAAG+1F,IAAI,IAAI/1F,GAAI,uBAAuB,GAAGg2F,IAAI,IAAIh2F,GAAI,cAAc,EAAE,CAIpR,SAAS8mG,IAAIn5S,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAA4E,IAA1E8rB,EAAEouJ,GAAG4qB,IAAIr2L,GAAG81L,MAAMoxG,MAAM,IAAIzmS,EAAEgrK,GAAG0iB,IAAIgzB,MAAMqiI,KAAKnmU,GAAG,IAAI9rB,EAAEk6K,GAAG0iB,GAAGs1J,IAAIpmU,GAAG,IAAQuL,EAAEnoB,EAAEgpM,KAAK7gL,EAAEygL,MAAuB,GAAhBx7M,EAAE49K,GAAG7iJ,EAAE2gL,KAAK,KAAQ99B,GAAG0iB,GAAGrgM,EAAEkS,EAAEnS,GAAG,IAAIshC,KAAM,OAAO,EAAO,IAAI97B,EAAE9B,EAAEk4M,KAAKp2M,EAAEg2M,MAAuB,GAAhBx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,KAAQ99B,GAAG0iB,GAAGrgM,EAAEkS,EAAEnS,GAAG,IAAIshC,KAAM,OAAO,EAAO,OAAO,CAAI,CAErR,SAAS09Q,IAAI/+S,EAAEkS,GAAG,IAAMnS,EAAI+6B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAE,GAAiB,GAAdrB,EAAEA,EAAEuvB,EAAErxB,OAAW,OAAOw7U,IAAI/7J,GAAG0pB,GAAIrnM,EAAEA,EAAE,GAAG,KAAKkS,GAA4C,IAAzCS,EAxuC7F,SAAa3S,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAM,IAAJA,EAAE,EAAMwvB,EAAE,IAAIo2I,GAAI3lK,EAAEA,GAAGuvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAKxvB,EAAEkzI,EAAK3/H,KAAKugB,IAAI9zB,EAAEmS,EAAES,GAAG,OAAO5S,CAAC,CAwuCrB61V,CAAI51V,GAAGhC,EAAE,EAAEoU,EAAEpS,EAAED,EAAE+6B,EAAEnoB,EAAEtR,EAAErB,EAAED,EAAE0D,GAAG2O,EAAE0oB,GAAG,EAAEA,EAAQA,EAAE,EAAE1oB,GAAE,CAAK,IAAJpU,EAAE,EAAM+B,EAAE,IAAI4lK,GAAI3lK,EAAEA,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAA0BF,GAAMojR,IAArBzjG,GAAGC,GAAI79K,GAAG,KAAiB0D,GAAE,GAASzD,EAAMhC,EAAEkU,GAAG7Q,EAAEoC,EAAE2O,EAAE3O,GAAOq3B,EAAEr3B,EAAEA,GAAG2O,EAAE0oB,GAAG,EAAEA,CAAC,CAAC,OAAOz5B,CAAC,CAKrR,SAAS41S,IAAIj3S,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,IAAIvL,EAAE,IAAIo2I,GAAI3lK,EAAEA,EAAEA,GAAGuvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAQ,CAA2B,KAA1BgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,MAAOnd,EAAE,KAAS0oB,EAAE5oB,EAAElS,EAAEA,EAAE2hP,KAAKhmC,KAAK7gL,EAAEygL,MAAuBmC,IAAhB39M,EAAE49K,GAAG7iJ,EAAE2gL,KAAK,KAAUvpM,KAAKA,EAAEE,GAAGrS,EAAEA,EAAEwvB,EAAErd,EAAEE,EAAErS,EAAEwvB,KAAKrd,EAAEE,EAAErS,GAAG,IAAIwF,EAAE2M,EAAElS,EAAEA,EAAE2hP,KAAKhmC,KAAKp2M,EAAEg2M,OAAOx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,KAAMvpM,EAAElS,EAAED,EAAEA,EAAEwvB,EAAErd,EAAEE,EAAErS,EAAEwvB,EAAExvB,EAAEmS,EAAEA,EAAEnS,EAAEA,EAAEA,EAAEmS,EAAEE,EAAErS,EAAEA,CAAE,CAAC,OAAOC,CAAC,CACvR,SAAS+2S,IAAI/2S,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,IAAIvL,EAAE,IAAIo2I,GAAI3lK,EAAEA,EAAEA,GAAGuvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAQ,CAA2B,KAA1BgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,MAAOuL,EAAE,KAASA,EAAE5oB,EAAElS,EAAEA,EAAE2hP,KAAKhmC,KAAK7gL,EAAEygL,MAAuBmC,IAAhB39M,EAAE49K,GAAG7iJ,EAAE2gL,KAAK,KAAUl2M,KAAK2M,EAAE4oB,GAAG/6B,EAAE4S,EAAE4c,EAAErd,EAAE4oB,EAAEnoB,EAAE4c,KAAKrd,EAAE4oB,EAAE/6B,GAAG,IAAIwF,EAAE2M,EAAElS,EAAEA,EAAE2hP,KAAKhmC,KAAKp2M,EAAEg2M,OAAOx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,KAAMl2M,EAAEvF,EAAED,EAAE4S,EAAE4c,EAAErd,EAAE4oB,EAAEnoB,EAAE4c,EAAExvB,EAAEwF,EAAE2M,EAAEnS,EAAE4S,EAAE5S,EAAEmS,EAAE4oB,EAAEnoB,EAAE5S,CAAE,CAAC,OAAOC,CAAC,CAEvR,SAASu+M,MAAY,OAAN40C,MAAa50E,GAAGC,GAAG3wI,IAAG,GAAGo+L,IAAI,GAAG,EAAE,CAAC4pH,IAAIC,IAAIn2D,IAAIvf,IAAI21E,IAAIC,IAAIC,IAAIr2D,IAAIs2D,IAAIC,IAAIC,IAAIv2D,IAAIw2D,IAAIC,IAAIC,IAAIC,IAAIv2D,IAAIw2D,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIh3D,IAAIsqC,IAAIL,IAAID,IAAIitB,IAAIC,IAAIC,IAAIC,IAAI/sB,IAAIgtB,IAAIC,IAAIC,IAAIrtB,IAAI52E,IAAIkkG,IAAIC,IAAIC,IAAIC,IAAI13D,IAAI23D,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAI9tB,IAAIj3E,IAAIglG,IAAI1tB,IAAI2tB,KAAK,CAIvR,SAASC,IAAIt4V,EAAEkS,GAAG,IAAIqd,EAAOvvB,EAAED,IAAImS,EAAEqd,GAAGvvB,EAAEuF,EAAEgqB,GAljD5C,SAAavvB,EAAEkS,GAAS,OAANyxQ,KAAa3jR,GAAG6jR,KAAK3xQ,GAAG6xQ,KAAK/jR,GAAG6jR,KAAK3xQ,GAAG8xQ,KAAKhkR,GAAG8jR,KAAK5xQ,GAAG8xQ,KAAKhkR,GAAG8jR,KAAK5xQ,GAAG6xQ,GAAG,CAkjD9Cw0E,CAAIv4V,EAAEuF,EAAE2M,EAAEA,EAAEA,MAAK6jK,GAAI/1K,EAAE86B,EAAE96B,EAAED,GAAGC,EAAEA,EAAEA,EAAED,EAAEwvB,EAAEvvB,EAAED,EAAEmS,EAAElS,EAAED,EAAE,KAAKC,EAAEuF,EAAE,OAlkH1G,SAAavF,GAAG,OAAOA,GAAG6jR,KAAK7jR,GAAG+jR,GAAG,CAkkH0Ey0E,CAAItmV,EAAEA,GAAYlS,EAAEkS,EAAEA,EAAZlS,EAAEuvB,EAAErd,GAAcA,EAAEA,IAAIyxQ,KAAME,OAAO3xQ,EAAElS,GAAGkS,EAAEA,GAAG6xQ,KAAK7xQ,EAAElS,GAAGkS,EAAEA,GAAG8xQ,KAAK9xQ,EAAElS,GAAGkS,EAAEA,GAAG4xQ,MAAM5xQ,EAAElS,IAAQA,EAAEuvB,GAAKvvB,EAAEkS,IAAGqd,EAAE,IAAI24K,GAAIloM,EAAEA,EAAEA,EAAEuvB,EAAExvB,EAAEmS,EAAEqd,EAAEvvB,EAAEA,EAAEA,EAAEkS,EAAEnS,EAAEC,EAAEuvB,EAAExvB,GAAGC,EAAED,EAAEwvB,EAAEvvB,EAAEuF,EAAE2M,EAAG,CACxR,SAASopL,IAAIt7L,GAAG,IAAIkS,EAAwE,GAAtEwpK,GAAI38K,KAAKuF,MAAMA,KAAKtG,EAAE,IAAIuwJ,GAAIjqJ,KAAKqO,EAAE3S,EAAEsE,KAAKw2B,EAAE6iJ,GAAG39K,EAAEuF,GAAGvF,EAAEuF,IAAI,GAAGrH,OAAkB,GAARoG,KAAKw2B,EAAM,MAAMo4I,GAAI,IAAI2O,GAAI,+DAA+Dv9K,KAAKirB,EAAuB,IAAIk4K,GAAxBv1L,EAAEyrK,GAAGsL,GAAI3kL,KAAKqO,GAAG,GAAagrK,GAAG+pB,GAAIx1L,EAAEA,EAAEhU,QAAQ,GAAG,GAAIoG,KAAKtE,EAAE,IAAI0kM,GAAIpgM,KAAK4N,EAAE,IAAIsgK,EAAG,CACxR,SAASyqH,IAAIj9R,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,GAAGmS,GAAGlS,EAAE8sN,IAAI9sN,EAAEgtN,IAAI,IAAI,GAAK96M,EAAE,CAAC,GAAG61T,IAAI/nU,EAAEkS,GAAG,MAAMghK,GAAI,IAAI2O,GAAI4yK,IAAIla,IAAIv6U,KAAKD,EAAE,KAAOC,EAAE8sN,KAAK/sN,GAAGwvB,EAAEvvB,EAAEgtN,IAAI,KAAM,EAAEo6G,IAAIpnU,EAAED,GAAGC,EAAE8sN,GAAGtvF,GAAGx9H,GAAG,EAAEuvB,EAAE,KAAKxvB,IAAOmS,IAAInS,EAAE49K,GAAGzrK,EAAE,IAAIqjU,GAAGv1U,EAAE,EAAEwsL,IAAGzsL,KAAIA,EAAEytO,GAAIxtO,EAAEkS,EAAEnS,KAAQA,EAAEisL,IAAI,MAAgB,IAAJ,EAALhsL,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEkS,EAAEA,GAAG,CACxR,SAASumV,IAAIz4V,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,GAAGmS,GAAGlS,EAAE8sN,IAAI9sN,EAAEgtN,IAAI,IAAI,GAAK96M,EAAE,CAAC,GAAG61T,IAAI/nU,EAAEkS,GAAG,MAAMghK,GAAI,IAAI2O,GAAI4yK,IAAI3xC,GAAI9iT,KAAKD,EAAE,KAAOC,EAAE8sN,KAAK/sN,GAAGwvB,EAAEvvB,EAAEgtN,IAAI,KAAM,EAAE06G,IAAI1nU,EAAED,GAAGC,EAAE8sN,GAAGtvF,GAAGx9H,GAAG,EAAEuvB,EAAE,KAAKxvB,IAAOmS,IAAInS,EAAE49K,GAAGzrK,EAAE,IAAIqjU,GAAGv1U,EAAE,EAAE06O,IAAG36O,KAAIA,EAAE0tO,GAAIztO,EAAEkS,EAAEnS,KAAQA,EAAEisL,IAAI,MAAgB,IAAJ,EAALhsL,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEkS,EAAEA,GAAG,CACxR,SAASk8Q,IAAIpuR,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAA0B,OAApD8sR,MAA+Bj8Q,EAAEnS,EAAEC,EAAED,IAAG0D,EAAEzD,EAAEA,EAAEkS,EAAEA,EAAEzO,GAAKyO,EAAEnS,EAAE,GAsE7E,SAAaC,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAoC,GAAlCjT,EAAEC,EAAED,EAAE+6B,EAAE5oB,EAAEnS,EAAE0D,EAAE1D,EAAE+6B,EAAE98B,EAAEgC,EAAEuF,GAAG2M,EAAE3M,GAAG,EAAE,EAAQ,GAAH9B,EAAuE,OAA1BuP,EAAEi3M,GAAzC5oN,EAAE03L,GAAIH,GAAI54L,EAAEA,EAAE,GAAG64L,KAAKD,GAAI1mL,EAAElS,EAAE,GAAG64L,OAA0C,IAA3B/kL,EAAEm2M,GAAI8lB,GAAI1uO,EAAE,MAAiB,IAAI+xQ,GAAIp1Q,EAAEgV,GAAG,IAAIogO,GAAIp1O,EAAE,EAAEugL,GAAGC,GAAG4U,IAAG,GAAGsW,IAAI,GAAG,GAAG,CAAC12L,EAAEc,KAA+E,OAA1Eyb,EAAEvvB,EAAEA,EAAEuF,EAAE2M,EAAElS,EAAE2S,EAAEsrK,GAAGmV,IAAGsW,IAAI,GAAGjmM,EAAE,GAAG,GAAGw+S,GAAI1yR,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,GAAGP,EAAE,IAAIghO,GAAIp1O,EAAEyF,EAAEkP,GAAG0nP,GAAIjoP,GAAUA,CAAC,CAtErNsmV,CAAI14V,EAAEkS,IAAiBE,EAAEs9P,GAAI1vQ,EAApB2S,IAAQ,EAAL3S,EAAED,IAAO,GAAasB,EAAEquQ,GAAIx9P,EAAES,GAAG5S,EAAE44V,IAAI34V,EAAEuvQ,GAAIn9P,EAAEO,IAAIpN,EAAEozV,IAAIzmV,EAAEq9P,GAAIluQ,EAAEsR,IAAI3U,EAAEowR,IAAIh8Q,EAAE/Q,GAAGkuB,EAAE6+P,IAAIruR,EAAEwF,GAA8Cu1B,EAAEy0O,GAApBz0O,EAAE89T,IAAIA,IAA/B99T,EAAEszP,IAAIuqE,IAAIvmV,EAAErS,GAAG44V,IAAIpzV,EAAElE,IAAgBrD,GAAGuxB,GAAW5c,GAAwBimV,IAAIA,IAAzB56V,EAAEuxQ,GAAIvxQ,EAAE2U,GAAG,GAAoBmoB,GAAGvL,GAAE,CACzR,SAASspU,IAAI74V,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAA8C,IAA5CkP,EAAEm0R,GAAI9mS,EAAEuvB,GAAG9rB,EAAEw6K,GAAGkuE,IAAGC,IAAI,GAAGl6O,EAAEhU,OAAO,EAAE,GAAG6B,EAAE,EAAM+6B,EAAEnoB,EAAEgpM,KAAK7gL,EAAEygL,MAAuBt5B,GAAIk6B,GAAG5T,IAAvBhjM,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,KAAkBzT,MAAM+yH,UAAUt3T,EAAE1D,KAAK49K,GAAG4qB,IAAIhjM,EAAEotQ,KAAK,KAAK,GAAG5yQ,EAAEmS,EAAEhU,OAAQ,MAAMg1K,GAAI,IAAI4O,GAAI,YAAY5vK,EAAEhU,OAAO,uCAAuC6B,EAAE,MAAM,OAAO0D,CAAC,CAEzR,SAASqxR,IAAI90R,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAiC,IAAzB,MAAL3S,EAAEhC,GAAS+4O,IAAI/2O,GAAGA,EAAEhC,GAAGE,QAAW8B,EAAEoD,EAAE,CAA4B,IAA3BuP,EAAE,IAAI8kL,GAAkB,GAAb,EAAEz3L,EAAE2S,EAAE3U,EAAE,EAAE,IAAUuH,EAAE,IAAIorN,GAAI3wN,EAAE2S,GAAGpN,EAAEA,GAAGA,EAAEvH,EAAEihL,MAAOl/K,EAAE49K,GAAG25I,IAAI/xT,GAAG,MAAcgqB,EAAEouJ,GAAM,OAAjB7iJ,EAAE/6B,EAAEg/L,MAAkB8hD,IAAIluO,EAAEmoB,EAAE,KAAK/6B,GAAG8xP,GAAIl/O,EAAEA,EAAEmoB,EAAE/6B,GAAG,QAAc,MAAH+6B,EAAQ+lN,IAAIluO,EAAEmoB,EAAE,KAAKvL,GAAGsiO,GAAIl/O,EAAEA,EAAEmoB,EAAEvL,IAAIvvB,EAAEoD,EAAEuP,CAAC,CAAC,OAAOgrK,GAAG2M,GAAItqL,EAAEoD,EAAE8O,GAAG,IAAI,CAC1R,SAASigU,IAAInyU,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAIr3B,EAAEzF,EAAEoU,EAAgF,IAp+BpH,SAAapS,EAAEkS,IAAKA,GAA2B,MAAxByN,QAAQm5U,eAA2D,MAAfn5U,QAAQkD,MAAYlD,QAAQkD,MAAMlD,QAAQe,IAAjEf,QAAQm5U,gBAA8D/5V,KAAK4gB,QAAQ3f,EAAE,CAo+BnG+4V,CAAIh5V,EAAEyrP,GAAGj8N,EAAEA,EAAEg7P,MAAMhlR,GAAGs5O,GAAI3sO,EA9jChE,SAAaA,GAAG,IAAqBlS,EAAjBuvB,EAAErd,EAAE3M,EACxB,OAAOgqB,IAAIA,EAAEghB,SADwBvwC,EACfkS,EAAE8mV,OADiC,GAAVh5V,EAAE9B,OAA4B,KAAK8B,EAAEhB,KAAK,QAAtB,IACrC,CA6jCoCi6V,CAAI1pU,KAAIuL,EAAEvL,EAAEuL,IAAOq3S,IAAInyU,EAAEkS,EAAE4oB,EAAE,eAAc,GAAmB,MAALvL,EAAEluB,IAAUkuB,EAAEluB,EAAE48K,GAAG+iJ,IAAGntI,IAAI,GAAG,EAAE,EAAE,IAAS71L,EAAE,EAAEoU,GAAjD3O,EAAwC8rB,EAAEluB,GAAWnD,OAAOF,EAAEoU,IAAIpU,EAAUm0U,IAAInyU,EAAEkS,EAAXzO,EAAEzF,GAAa,gBAAe,GAAyB,MAAlB2hB,QAAQu5U,UAAgBv5U,QAAQu5U,SAASn6V,KAAK4gB,QAAQ,CAC1R,SAASw5U,IAAIn5V,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAM+6B,EAAEnoB,EAAElP,EAAEzF,EAAuE,IAA/DyF,GAANzF,EAAEkU,EAAE3M,GAAMrH,OAAOyU,EAAET,EAAE8B,EAAEhM,GAAGhK,EAAEuxB,EAAE,EAAE9rB,EAAE,EAAE8rB,GAAgB5c,GAAIymV,IAAIp5V,EAAnBhC,EAAEuxB,EAAE,EAAE9rB,EAAE,GAAe8rB,EAAExvB,GAAO+6B,EAAEvL,EAAE,EAAE9rB,EAAE,EAAE8rB,EAAEuL,EAAEr3B,EAAEq3B,GAAG,EAAEA,GAAGvL,EAAE,GAAG,EAAG5c,GAAIT,EAAEqd,EAAE6mM,GAAGp4N,EAAE88B,EAAEvL,EAAExvB,IAAIkiL,GAAIk6B,GAAG5T,IAAIr2L,EAAEE,GAAG41L,MAAMqxJ,UAAUp3K,GAAIk6B,GAAG5T,IAAIr2L,EAAEE,GAAG41L,MAAMsxJ,SAAS3mV,GAAIT,EAAE8B,EAAEhM,GAAGhK,EAAE88B,EAAEvL,GAAG5c,GAAIymV,IAAIp5V,EAAEhC,EAAE88B,GAAGvL,EAAExvB,GAAc,OAAX4nL,GAAI3nL,EAAEuvB,EAAErd,GAAUS,CAAC,CAC1R,SAASs5R,IAAIjsS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAMP,EAAE/Q,EAAEyS,EAAEd,EAAE,IAAec,EAAE,EAAEd,GAAf3R,EAAE28P,GAAIh+P,EAAEoS,IAAWlU,OAAO4V,EAAEd,IAAIc,EAAE,CAAQ,GAAP1B,EAAE/Q,EAAEyS,GAAMyb,IAAIyqP,KAAME,MAAM3qP,GAAG0qP,IAAgB,IAAQn/O,EAAE,EAAEnoB,GAARpN,EAAbi1P,GAAIpoP,EAAEO,IAAmBzU,OAAO48B,EAAEnoB,IAAImoB,EAAUm+S,IAAI/mU,EAAXnS,EAAEwF,EAAEu1B,KAAai4T,IAAIhzV,GAAE,GAAO,GAAGwvB,GAAG4qP,KAAK5qP,GAAG0qP,IAAgB,IAAQn/O,EAAE,EAAEnoB,GAARpN,EAAbi1P,GAAIpoP,EAAE7M,IAAmBrH,OAAO48B,EAAEnoB,IAAImoB,EAAUk+S,IAAI9mU,EAAXnS,EAAEwF,EAAEu1B,KAAai4T,IAAIhzV,GAAE,EAAO,CAAC,CAC3R,SAAS0kP,IAAIzkP,GAAG,IAAIkS,EAAEqd,EAAgB,OAAdrd,EAAE,KAAKqd,EAAE,KAznBjC,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAY,IAAVA,EAAEw0M,GAAGtvO,EAAEqB,GAAUo+K,MAAmD1/K,EAAE,EAAEwF,GAA1DgqB,EAASgvJ,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC1/C,IAAI/mB,IAAIL,IAAImnB,IAAIjnB,OAAe1hL,OAAO6B,EAAEwF,IAAIxF,EAAU,IAAPmS,EAAEqd,EAAExvB,KAAS+mM,MAAMhsK,EAAEmlK,GAAG/tL,GAAI,OAAOA,EAAG,OAAO,IAAI,CAynB9HqnV,CAAIv5V,GAAG2S,GAAG,KAAK,EAAK8sK,MAAHvtK,EAASwtK,IAAKnwJ,EAAEqwJ,IAAI,MAAM,KAAK,EAAKH,MAAHvtK,EAAS20L,IAAKt3K,EAAEwwJ,IAAI,MAAM,KAAK,EAAKN,MAAHvtK,EAAS0tK,IAAKrwJ,EAAEmwJ,IAAI,MAAM,KAAK,EAAKD,MAAHvtK,EAAS6tK,IAAKxwJ,EAAEs3K,IAAKxjC,GAAIrjK,EAAE29K,GAAGwxC,GAAIqhB,GAAI7yD,GAAG0iB,GAAGrgM,EAAEqB,EAAE6Q,GAAG,IAAI82K,KAAKwb,MAAM,MAAMphC,GAAIpjK,EAAE29K,GAAGwxC,GAAImhB,GAAI3yD,GAAG0iB,GAAGrgM,EAAEqB,EAAEkuB,GAAG,IAAIy5J,KAAKwb,MAAM,KAAK,CAC3R,SAASg1J,IAAIx5V,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAsB,IAApBpN,EAAEo4K,GAAG0pB,GAAIrnM,EAAEoS,EAAE,GAAG,KAAS7M,EAAEgqB,EAAErxB,OAAOqH,EAAEoN,EAAE4c,EAAErxB,QAAQ,EAAG8B,EAAEJ,EAAEI,EAAE,MAAM,CAAK,IAAJ2S,EAAE,EAAM5S,EAAEkrN,GAAG9kH,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,CAAC,IAAIxV,GAAIpjK,GAAG,IAAIsjK,GAAItjK,OAAO6lN,IAAGrrN,IAAoB4S,IAAf4c,EAAEouJ,GAAGwtC,GAAGprN,GAAG,KAAS/B,EAAE4B,EAAEI,EAAEuvB,EAAE3vB,EAAEI,EAAEuvB,EAAEvvB,EAAEA,EAA6B86B,GAA3B5oB,EAAEyrK,GAAG4qB,IAAIvoM,GAAGq9J,MAAMo8L,MAAM,IAAUvnV,EAAElS,EAAJ,EAAMA,EAAEJ,EAAEI,EAAE2S,GAAGpN,EAAEA,EAAEgqB,EAAErxB,OAAOqH,EAAEoN,EAAE4c,EAAErxB,QAAQ48B,CAAC,CAAC,CAC5R,SAASw2S,IAAItxU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAE,IAAIxF,EAAE,IAAI4lK,GAAIzzJ,EAAElS,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,KAAK2sO,GAAI/uD,GAAGpuJ,EAAErd,EAAE,IAAI2oN,GAAI5U,GAAItoC,GAAGzrK,EAAEA,EAAE,IAAIqd,GAAGouJ,GAAGzrK,EAAEA,EAAE,IAAIlS,KAAIuF,EAAEq+U,IAAIjmK,GAAGzrK,EAAEA,EAAE,IAAIA,EAAEyrK,GAAGpuJ,EAAErd,EAAE,IAAIA,IAAK,IAAIlS,EAAEA,GAAE,GAAM2sO,GAAIhvD,GAAGpuJ,EAAErd,EAAE,IAAI2tK,GAAIomC,GAAItoC,GAAGzrK,EAAEA,EAAE,IAAIqd,GAAG+6L,GAAIuQ,GAAI5U,GAAItoC,GAAGpuJ,EAAErd,EAAE,IAAIlS,GAAG29K,GAAGzrK,EAAEA,EAAE,IAAIlS,GAAGuF,KAAK6uP,GAAIp0P,EAAEkS,GAAGo/T,IAAItxU,EAAEuvB,EAAG,CAC5R,SAAS2oR,IAAIl4S,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAE,IAAIq3B,EAAE,IAAI6qI,GAAI3lK,EAAEA,EAAEA,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,SAAS6B,EAAE49K,GAAGC,GAAI9iJ,GAAG,MAAOv1B,EAAE,EAAExF,EAAEA,EAAEC,EAAEqvQ,KAAK,IAAI9pQ,EAAE,IAAIogK,GAAI3lK,EAAEA,EAAEA,GAAGuF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA0B,IAAIqxB,GAArBxvB,EAAE49K,GAAGC,GAAIr4K,GAAG,MAAavF,EAAEA,EAAE2hP,KAAKhmC,KAAKpsL,EAAEgsL,MAAuB,IAAI93M,EAAlBk6K,GAAGpuJ,EAAEksL,KAAK,IAAY3gL,EAAE6gL,KAAKl4M,EAAE83M,OAAO5oM,EAAEgrK,GAAGl6K,EAAEg4M,KAAK,KAAS17M,GAAGA,IAAG4nL,GAAI5nL,EAAEA,EAAE4S,KAAKA,EAAE5S,EAAEwF,EAAK,CAC7R,SAASm0V,IAAI15V,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAA+B,IAAduxB,EAAE,EAAErd,EAAnBlU,EAAEgC,EAAEoS,EAAEmd,EAAErxB,OAAeqH,EAAE,EAAEvH,EAAMyF,EAAE,IAAIkiK,GAAI3lK,EAAEoS,GAAG3O,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAyB,QAAhByU,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAAa2O,EAAEO,GAAG,KAAK,EAAE,KAAK,EAAEA,EAAEvP,GAAG,EAAE,MAAM,KAAK,EAAE,KAAK,EAAErD,EAAE4S,EAAEpN,EAAEgqB,EAAErxB,OAAO48B,EAAEnoB,EAAEA,EAAE4c,EAAErxB,OAAiByU,EAAEvP,EAAZrD,EAAE,GAAG+6B,EAAE,EAAO5oB,IAAKnS,EAAE,EAAOwvB,IAAKuL,EAAE,EAAOv1B,IAAUgqB,IAAO03L,KAAMnC,GAAI9kN,EAAEoS,EAAE,IAAI4uI,GAAI,CAE7R,SAAS0jG,IAAI1kP,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAgG,IAA9FoC,EAAEyO,EAAEE,EAAEO,EAAET,EAAES,EAAE3U,EAAE2/K,GAAG0pB,GAAI5jM,EAAEA,EAAE8rB,EAAErxB,OAAO,GAAG,KAAQu/M,GAAI,EAAEh6M,EAAE8rB,EAAErxB,QAAwBkU,EAAEwvT,IAAI5hU,EAAE2S,EAAE3U,EAA/CqD,EAAqBs8K,GAAGl6K,EAAE8rB,EAAE,GAAG,MAAyBuL,EAAE,EAAEA,EAAEr3B,EAAE8rB,EAAErxB,OAAO48B,IAAQ2iL,GAAI3iL,EAAE,EAAEr3B,EAAE8rB,EAAErxB,QAAfqxB,EAAuBouJ,GAAGl6K,EAAE8rB,EAAEuL,EAAE,GAAG,KAAS2iL,GAAI3iL,EAAEr3B,EAAE8rB,EAAErxB,SAAwB6B,EAAE6hU,IAAI5hU,EAAE2S,EAAE4c,EAA/ChqB,EAAqBo4K,GAAGl6K,EAAE8rB,EAAEuL,GAAG,OAA0B1oB,IAAGpU,EAAEuxB,EAAEluB,EAAEkE,EAAE6M,EAAErS,GAAGmS,EAAElS,EAAEqB,EAAE6Q,EAAEqd,EAAEvxB,CAAC,CAE7R,SAASs9T,IAAIt7T,GAAG,IAAIA,EAAEA,EAAED,IAAIC,EAAEA,EAAEuF,EAAG,MAAM2tK,GAAI,IAAI4O,IAAKwH,GAAIqwK,KAAIA,IAAGt4V,EAAE,mCAAmCioL,GAAIswK,KAAIA,IAAGv4V,EAAG,kBAAiB,GAAGrB,EAAEA,EAAED,GAAGC,EAAEA,EAAEuF,EAAG,MAAM2tK,GAAI,IAAI4O,GAAI,gDAAgD9hL,EAAEA,EAAE,IAAIA,EAAEA,EAAED,EAAE,IAAIC,EAAEA,EAAEuF,IAAsC,OAAlCqqN,GAAI5vN,EAAEA,EAAED,EAAE4S,EAAE3S,EAAEA,GAAG4vN,GAAI5vN,EAAEA,EAAEuF,EAAE2M,EAAElS,EAAEA,GAAUA,EAAEA,CAAC,CAE9R,SAAS65V,IAAI75V,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAM,GAAJ+B,EAAE,EAAU,GAALmS,EAAEA,GAAW,GAALqd,EAAErd,EAAK,CAAC4oB,EAAEgkO,IAAI5sP,EAAE,GAAGS,EAAEmsP,IAAIvvO,EAAE,GAAG9rB,EAAE68K,GAAIC,GAAGw+E,GAAIjkO,KAAK98B,EAAEsiL,GAAIC,GAAGw+E,GAAIpsP,KAAKpN,GAAE,EAAK,EAAE,CAAC,GAAG9B,EAAEzF,EAAEgC,EAAEkS,GAAGzO,EAAEzF,EAAEgC,EAAEkS,EAAG,OAAQ,EAAOzO,EAAEzF,EAAEgC,EAAEA,GAAGyD,EAAEzF,EAAEgC,EAAEA,KAAKD,EAAE0D,GAAGzF,GAAG88B,EAAE5oB,GAAG4oB,EAAE/6B,EAAEwvB,EAAG9rB,EAAE68K,GAAIC,GAAGw+E,GAAIjkO,KAAM98B,GAAGyF,GAAGkP,EAAET,GAAGS,EAAE5S,EAAEwvB,EAAGvxB,EAAEsiL,GAAIC,GAAGw+E,GAAIpsP,KAAOpN,GAAE,CAAM,OAAOA,EAAE,CAAC,OAAOxF,CAAC,CAK9R,SAAS+5V,IAAI95V,GAAG,IAAMuvB,EAAE,IAAIA,EAAE,IAAIu/M,GAAG7hB,GAAGm1E,GAAIpiS,GAAGA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG77L,IAAoB,GAAbouJ,GAAGwtC,GAAG57L,GAAG,IAASxvB,EAAE/B,EAAEqD,IAAI49P,MAAMk4B,KAAM,MAAMjkH,GAAI,IAAI5zE,GAAIuwO,IAAIlX,IAAI34T,GAAR6vU,+IAA+J,CAChS,SAASkqB,IAAI/5V,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAIr3B,EAAEzF,EAAIqD,EAAEyS,EAAEd,EAAM,IAAJhV,EAAE,EAAMqD,EAAE,IAAIskK,GAAI3lK,EAAEA,GAAGqB,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAAQ,CAAqB,IAAJuF,EAAE,EAAMq3B,EAAE,IAAIg0M,GAAG7hB,GAAGi1E,GAAlCvkH,GAAGC,GAAIv8K,GAAG,KAA+BrB,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGtwL,IAAoBhnB,EAAE2hP,IAAjBlwP,EAAEo4K,GAAGwtC,GAAGrwL,GAAG,KAAYvL,GAAGrd,EAAEc,EAAEyiP,GAAIlwP,EAAExF,GAAGmS,EAAEzO,EAAEwvI,EAAK3/H,KAAKugB,IAAIpwB,EAAEwvI,EAAK3/H,KAAKskB,IAAI5kB,EAAEc,IAAI9V,EAAEi1I,EAAK3/H,KAAKugB,IAAI71B,EAAEyF,EAAE,CAA4B,OAAzB1D,EAAEkzI,EAAK3/H,KAAKsgB,IAAI,EAAE1hB,EAAEqd,GAAGvxB,CAAU,CAChS,SAASg8V,IAAIh6V,GAAG,IAAIkS,EAA6P,OAA3PA,EAAE,IAAIqyK,GAAa,IAAN,IAAFvkL,KAAYkS,EAAElS,GAAG,KAAgB,IAAN,IAAFA,KAAYkS,EAAElS,GAAG,KAAgB,IAAN,IAAFA,KAAYkS,EAAElS,GAAG,KAAc,IAAJ,EAAFA,KAAUkS,EAAElS,GAAG,KAAc,IAAJ,EAAFA,KAAUkS,EAAElS,GAAG,KAAc,IAAJ,EAAFA,KAAUkS,EAAElS,GAAG,KAAe,IAAL,GAAFA,KAAWkS,EAAElS,GAAG,KAAe,IAAL,GAAFA,KAAWkS,EAAElS,GAAG,KAAe,IAAL,GAAFA,KAAWkS,EAAElS,GAAG,KAAgB,IAARA,EAAEu/R,OAAUrtR,EAAElS,GAAG,KAAcmiL,GAAIjwK,EAAElS,EAAE,CAChS,SAASi6V,IAAIj6V,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAI+6B,EAA+C,IAA7C+mQ,IAAI3vR,EAAE,oCAAoC,GAAOnS,EAAE,IAAI4lK,GAAI3lK,EAAEkS,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,IAAI6oP,GAAI5oP,EAAEA,EAAEuvB,EAAEvvB,GAAGuvB,EAAEvvB,EAAEuvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAG,IAAIrjJ,EAAE,IAAI6qI,GAAI3lK,EAAEA,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAyBo0P,GAAd30E,GAAGC,GAAI9iJ,GAAG,IAAU,MAAM96B,EAAEkS,EAAEqd,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAuC/P,SAAan+K,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEv1B,EAAEo4K,GAAG4qB,IAAIvoM,GAAGq9J,MAAM4nL,MAAM,IAAInqT,EAAE6iJ,GAAG4qB,IAAIvoM,EAAEklV,KAAK,IAAI31T,EAAE,IAAI0lL,GAAIj1M,EAAE86B,EAAE96B,EAAEA,EAAED,EAAEmS,EAAElS,EAAED,EAAEwvB,EAAEvvB,EAAE86B,EAAE5oB,EAAElS,EAAED,EAAEA,EAAEC,EAAED,EAAEC,GAAGkS,EAAE,IAAIyuM,GAAIpxL,GAAMhqB,EAAE06L,IAAIq3B,MAAMmyD,QAAO1pR,EAAE49K,GAAG4qB,IAAIvoM,EAAE2kV,KAAK,GAAM7pT,EAAEmlK,IAAIssG,MAAMmI,QAAO30S,EAAEC,GAAG,IAAID,EAAEC,EAAE,IAAID,EAAEmS,GAAG,IAAInS,EAAEmS,EAAE,KAAIA,EAAElS,EAAEizI,EAAK3/H,KAAKugB,IAAItE,EAAEvvB,EAAED,EAAEC,GAAGkS,EAAEA,EAAE+gI,EAAK3/H,KAAKugB,IAAItE,EAAErd,EAAEnS,EAAEmS,KA0U9R,SAAalS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAA0L,GAAxL1D,EAAE49K,GAAG4qB,IAAIvoM,GAAGq9J,MAAM+nL,MAAM,IAAI71T,EAAEvvB,EAAEkS,EAAElS,IAAID,EAAEkgM,IAAIs3F,MAAMK,MAAO53R,EAAEuvB,EAAEvvB,IAAIuvB,EAAEvvB,EAAEkS,EAAElS,GAAG,EAAGD,EAAEkgM,GAAG43F,OAAO73R,EAAEuvB,EAAEvvB,GAAGuvB,EAAEvvB,EAAEkS,EAAElS,IAAIuvB,EAAErd,EAAEA,EAAEA,IAAInS,EAAEkgM,IAAIs3F,MAAME,MAAOz3R,EAAEuvB,EAAErd,IAAIqd,EAAErd,EAAEA,EAAEA,GAAG,EAAGnS,EAAEkgM,GAAGy3F,OAAO13R,EAAEuvB,EAAErd,GAAGqd,EAAErd,EAAEA,EAAEA,IAAOyrK,GAAG4qB,IAAIvoM,GAAGgoM,MAAM4yH,MAAM,IAAI36H,IAAI0zG,MAAMG,QAAQvkR,EAAEvvB,EAAEkS,EAAElS,GAAGuvB,EAAErd,EAAEA,EAAEA,GAAI,IAAIS,EAAE,IAAIgzJ,GAAI3lK,EAAEA,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,SAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAStR,IAAI49P,MAAMC,QAAM35P,EAAEo4K,GAAG4qB,IAAIztK,EAAEiuK,KAAK,OAAQtpB,MAAMC,KAAM5kJ,EAAEl7B,EAAEI,GAAGuvB,EAAEvvB,EAAEkS,EAAElS,EAAGuF,GAAGshM,MAAM/rK,EAAEl7B,EAAEsS,GAAGqd,EAAErd,EAAEA,EAAEA,IAAKzO,EAAEzD,EAAED,EAAEC,EAAE86B,EAAE96B,EAAEuvB,EAAEvvB,EAAEyD,EAAEyO,EAAEzO,EAAE8rB,EAAEvvB,EAAE86B,EAAE5oB,EAAEqd,EAAErd,EAAEzO,EAAE1D,EAAE0D,EAAEzD,CAAC,CA1U9Lk6V,CAAIl6V,EAAEuvB,EAAErd,EAAE,CAvCzCioV,CAAIn6V,GAAKA,EAAEuF,GAgP7Q,SAAavF,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAE,IAAI8B,EAAE,IAAIogK,GAAIzzJ,EAAElS,GAAGuF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAiD2rL,GAAxB/uJ,EAAEytK,IAAlBxoM,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAayiM,MAAM0/C,MAAc,MAAgBjkP,EAAE22V,IAAIloV,EAAEnS,GAAnB4S,EAAEgrK,GAAG7iJ,EAAE,KAAgB56B,EAAEF,EAAE2S,EAAEzS,EAAEgS,GAAGS,EAAE/S,EAAEI,EAAEyD,EAAEzD,EAAE2S,EAAE/S,EAAEsS,EAAEzO,EAAEyO,EAAEysP,IAAIhsP,EAAEgrK,GAAG4qB,IAAIxoM,EAAEgpM,KAAK,MAAMx5K,EAAE,IAAI0lL,GAAI/iM,EAAE4oB,EAAE96B,EAAEkS,EAAEnS,EAAEmS,EAAEA,EAAEnS,EAAEwvB,EAAErd,EAAE4oB,EAAE5oB,EAAEA,EAAEnS,EAAEA,EAAEmS,EAAEnS,EAAEC,GAAM29K,GAAG4qB,IAAIr2L,GAAG81L,MAAM4yH,MAAM,IAAI36H,IAAI0zG,MAAMG,OAAO/rG,GAAI/nM,GAAGq9J,MAAMykI,MAAMxM,MAAMt4D,MAAMr/C,GAAG4qB,IAAIg3C,GAAIv/O,GAAG46T,KAAK,IAAI/yG,GAAGosF,KAAKomD,IAAIr6V,EAAEuvB,GAAE,IAAY8qU,IAAIr6V,EAAEuvB,GAAE,EAAM,CAhPvH+qU,CAAIt6V,EAAEuF,EAAEvF,GAAGuiS,IAAIrwR,EAAE,CACjS,SAASqoV,IAAIv6V,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAI+6B,EAAEnoB,EAAI3U,EAAEoU,EAAgG,GAAxF0oB,GAAN/6B,EAAEC,EAAEkS,GAAM3M,EAAEoN,EAAEkqN,GAAIl/C,GAAG4qB,IAAIxoM,GAAGs9J,MAAMykI,MAAM,KAAKvyQ,IAAIuL,GAAG6iJ,GAAG4qB,IAAIztK,GAAGktK,MAAM4yH,MAAM,IAAI36H,IAAI0zG,MAAMG,OAASnhS,IAAG4c,EAAU,IAAInd,EAAgC,IAAI6yJ,GAA9B,IAAIR,GAAIzkK,EAAEuF,GAAIvF,EAAEspO,KAAK3tB,MAAiBvpM,EAAEpS,EAAEu7M,MAAUrpM,EAAEyrK,GAAGvrK,EAAEpS,EAAEy7M,KAAK,KAAjBz9M,EAAqB2/K,GAAGzrK,EAAE4oM,KAAK,MAAW96M,IAASuyP,GAAJv0P,EAAE+B,EAAQ,MAAM/B,EAAEuxB,GAAE,EAAKvvB,EAAEA,GAAE,EAAM,CACjS,SAASw6V,IAAIx6V,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAI2O,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAW,IAAToT,GAAG,EAAEpT,EAAE,EAAUyB,EAAE,EAAEyS,GAAR1B,EAAEpS,GAAU9B,OAAOmD,EAAEyS,IAAIzS,EAAE,CAAQ,IAAQsR,EAAE,EAAElP,GAARq3B,EAAT1oB,EAAE/Q,IAAmBnD,OAAOyU,EAAElP,IAAIkP,EAA4C,IAAzCpN,EAAEu1B,EAAEnoB,GAAGT,EAAE,IAAI2+L,IAAQ,GAAJ79L,EAAMhT,EAAE,GAAGA,EAAEgT,GAAGi0T,IAAI1hU,IAAQgqB,EAAE,EAAEA,EAAEhqB,EAAE6M,EAAEmd,EAAErxB,OAAOqxB,IAAK,IAAIxvB,EAAEwvB,EAAE,EAAExvB,EAAEwF,EAAE6M,EAAEmd,EAAErxB,OAAO6B,IAAK6wO,GAAI1+N,EAAEyrK,GAAG0pB,GAAI9hM,EAAE6M,EAAEmd,GAAG,IAAIouJ,GAAG0pB,GAAI9hM,EAAE6M,EAAErS,GAAG,KAAK,KAAKH,IAAMoT,CAAC,CAAC,OAAOpT,CAAC,CAEjS,SAASmoN,IAAI/nN,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,OAAlBqxK,KAAsBj6L,EAAsBA,IAAIwnP,MAAM+gG,OAAOvoV,GAAGwoV,KAAKxoV,GAAGyoV,KAAKzoV,GAAG0oV,MAAM56V,GAAG66V,IAAY,IAAIC,IAAI96V,EAAEkS,KAAoBqd,GAAZxvB,EAAE49K,GAAGzrK,EAAE,MAASmsL,QAAYkkD,GAAIiU,IAAKnW,MAAMwiF,KAAK3wT,IAAIqd,EAAExvB,EAAEs+L,OAAS9uK,EAAEvxB,IAAIuxB,EAAEvxB,EAAE,IAAIw0K,MAAUjtK,EAAEo4K,GAAGk9B,GAAGq4B,IAApCp4M,EAAuBvL,EAAEvxB,GAAiB88B,EAAE96B,IAAI,QAAU22L,GAAI77J,EAAE96B,EAAEuF,EAAE,IAAIu1V,IAAI96V,EAAEkS,IAAW3M,GAA7O6mM,GAA+O,CACjS,SAAS2uJ,IAAI/6V,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAiG,IAA/FrD,EAAE2/K,GAAG4qB,IAAIvoM,GAAGgoM,MAAM0/C,MAAM,IAAIt1O,EAAEsjP,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC71L,EAAEA,EAAE4B,EAAE5B,EAAE4B,EAAE5B,EAAEgC,KAAKA,EAAEqB,EAAErB,EAAEhC,EAAE4B,EAAEsS,EAAqB4oB,EAAE,EAAEnoB,GAARpN,EAAbi1P,GAAIx6P,EAAEuF,IAAmBrH,OAAO48B,EAAEnoB,IAAImoB,EAAUs3N,GAAPryP,EAAEwF,EAAEu1B,GAAS98B,GAAGg/M,GAAIj9M,EAAEC,EAAE,IAAIi1M,GAAI7iM,EAAE/Q,IAAO6Q,KAAGzO,EAAEk6K,GAAG4qB,IAAIxoM,GAAGs9J,MAAM2hG,MAAM,OAAWv7P,EAAE,IAAI+1K,GAAIuuB,GAAIhoM,EAAEi/P,IAAIv7P,IAAGmiO,GAAIniO,EAAE,IAAIwxM,GAAI7iM,EAAE/Q,IAAK,CAClS,SAAS25V,IAAIh7V,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAiG,IAA/FkE,EAAEo4K,GAAG4qB,IAAIvoM,GAAGgoM,MAAM0/C,MAAM,IAAIt1O,EAAEsjP,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACtuL,EAAEvH,EAAE4B,EAAE2F,EAAE3F,EAAE2F,EAAEvF,KAAKA,EAAEqB,EAAErB,EAAEhC,EAAE4B,EAAEsS,EAAqBzO,EAAE,EAAEzF,GAAR2U,EAAb6nP,GAAIx6P,EAAE2S,IAAmBzU,OAAOuF,EAAEzF,IAAIyF,EAAU4uP,GAAPv3N,EAAEnoB,EAAElP,GAAS8B,GAAGu3M,GAAIhiL,EAAE96B,EAAE,IAAIi1M,GAAI7iM,EAAE/Q,IAAO6Q,KAAGnS,EAAE49K,GAAG4qB,IAAIztK,GAAGuiI,MAAM2hG,MAAM,OAAWj/P,EAAE,IAAIy5K,GAAIuuB,GAAIjtK,EAAEkkO,IAAIj/P,IAAG6lO,GAAI7lO,EAAE,IAAIk1M,GAAI7iM,EAAE/Q,IAAK,CAClS,SAAS45V,IAAIj7V,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAA0G,IAAtG3S,EAAEkS,EAAE,IAAIogK,GAAItyK,EAAED,EAAE49K,GAAG4qB,IAAIr2L,GAAG81L,MAAM89C,MAAM,KAAK9lP,EAAEuF,EAh1E/E,SAAavF,GAAG,OAAO0qM,GAAI/R,GAAIiS,GAAI0hC,IAAItsO,EAAE,KAAK,IAAI4qM,GAAI0hC,IAAItsO,EAAE,KAAK,CAg1EgBk7V,CAAIl7V,EAAED,GAAG+6B,EAAE,IAAI2+I,GAAIl0K,EAAEorQ,GAAGpyF,GAAGC,GAAGgmK,IAAG,GAAGC,IAAI,GAAG,EAAE,CAACvyU,KAAKS,EAAE,EAAQA,EAAEpN,EAAEgqB,EAAErxB,QAAWu/M,GAAI9qM,EAAEpN,EAAEgqB,EAAErxB,SAAb6B,EAAqB49K,GAAGp4K,EAAEgqB,EAAE5c,GAAG,KAAOvP,EAAEuP,IAAyBi2O,GAAIrjP,GAAzBgqB,EAAE,IAAI4rU,IAAIp7V,EAAEC,EAAEA,EAAEA,EAAEkS,IAAWA,GAAG6jK,GAAI/1K,EAAEkS,EAAEqd,GAAGA,EAAE1b,GAAekiO,GAAT+oB,IAAIhkO,EAAE,GAASvL,GAAgB,OAAZvvB,EAAEuvB,EAAE,IAAIknJ,GAAW37I,CAAC,CAKlS,SAAS6yR,IAAI3tT,GAAG,IAAIkS,EAAEqd,EAAEA,EAAEouJ,GAAG4qB,IAAIvoM,GAAGq9J,MAAM0uI,MAAM,KAAK75R,EAAEyrK,GAAG4qB,IAAIvoM,GAAGgoM,MAAMy7G,MAAM,KAAQl0R,IAAIihQ,KAAMI,MAAM7oF,GAAI/nM,EAAE+rS,IAAIrb,KAAK3oF,GAAI/nM,EAAEyjT,KAAK5rC,KAAMG,OAAczoP,GAAGuhQ,KAAK/oF,GAAI/nM,EAAE+rS,IAAIrb,KAAK3oF,GAAI/nM,EAAEyjT,KAAK5rC,KAAMI,OAAc/lQ,IAAI2lQ,KAAMG,MAAMjwE,GAAI/nM,EAAE+rS,IAAInb,KAAK7oF,GAAI/nM,EAAEyjT,IAAI1rC,MAAa7lQ,GAAG+lQ,MAAKlwE,GAAI/nM,EAAE+rS,IAAIjb,KAAK/oF,GAAI/nM,EAAEyjT,IAAI1rC,KAAK,CACrS,SAAS1+D,MAAMA,IAAI3kE,EAAI0mN,IAAI,IAAIvwM,GAAIwwM,IAAI5zH,GAAI,IAAI/iC,IAAKuuD,MAAMs/B,MAAMp/B,MAAMujG,MAAM4E,IAAI/tH,GAAI9F,GAAI,IAAI/iC,GAAI6tF,IAAIskE,KAAK3jG,IAAI8kG,KAAKuD,IAAI35E,IAAIA,IAAI14E,GAAIqkC,GAAI9F,GAAI,IAAI/iC,GAAIy7E,IAAI81E,KAAK/iG,IAAI4kG,KAAKtlE,KAAKykE,KAAKE,KAAKqE,IAAIjuH,GAAI9F,GAAIA,GAAIA,GAAI,IAAI/iC,GAAI4tF,IAAI0jE,KAAKxjE,IAAI8kE,KAAK9kE,IAAI+kE,KAAKrkG,IAAIglG,KAAKuD,IAAIluH,GAAI9F,GAAIA,GAAI,IAAI/iC,GAAI8tF,IAAI+kE,KAAK/kE,IAAI6kE,KAAKnkG,IAAIklG,IAAI,CACrS,SAAS91B,MAAMA,IAAI5tL,EAAIgnN,IAAIj0H,GAAI8F,GAAI,IAAI7oC,IAAKuuD,MAAMC,MAAMC,MAAMglG,MAAM5lE,IAAImkE,KAAKiF,IAAI/5E,IAAIA,IAAI14E,GAAIqkC,GAAI9F,GAAI,IAAI/iC,GAAIy7E,IAAI81E,KAAK/iG,IAAI4kG,KAAKtlE,KAAKykE,KAAKE,KAAKyE,IAAIruH,GAAI9F,GAAIA,GAAIA,GAAI,IAAI/iC,GAAI4tF,IAAI0jE,KAAKxjE,IAAI8kE,KAAK9kE,IAAI+kE,KAAKrkG,IAAIglG,KAAK2D,IAAIp0H,GAAIA,GAAI,IAAI/iC,GAAI6tF,IAAIskE,KAAK3jG,IAAI8kG,KAAK8D,IAAIvuH,GAAI9F,GAAIA,GAAI,IAAI/iC,GAAI8tF,IAAI+kE,KAAK/kE,IAAI6kE,KAAKnkG,IAAIklG,IAAI,CACtS,SAAS2D,IAAI/7V,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,GAAOy2M,GAAIl3M,IAAIA,EAAEqd,EAAEvxB,EAAEuxB,GAAGrd,EAAEnS,EAAE/B,EAAEuxB,IAAI8xQ,GAAI3rC,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACtuL,EAAEvH,EAAE4B,EAAE2F,EAAE3F,EAAE2F,EAAEvF,KAAKuvB,IAAM65L,GAAIl3M,KAAIA,EAAEqd,GAAGhqB,EAAEktN,GAAGvgN,EAAElS,EAAE,EAAE,IAAI2gN,GAAIpxL,IAAIq2M,GAAI1zN,EAAElS,EAAE,IAAI2gN,GAAIpxL,IAAOxvB,IAAI0gM,GAAIzgM,EAAEA,EAAEuvB,MAAI5c,EAAEgrK,GAAG4qB,IAAIr2L,GAAGmrJ,MAAM2hG,MAAM,OAAWrsP,EAAE,IAAI6mK,GAAIuuB,GAAI71L,EAAE8sP,IAAIrsP,IAAgBoqM,GAAIpqM,EAAjBmoB,EAAE,IAAI6lL,GAAIpxL,GAAW5c,EAAE4c,EAAErd,EAAES,EAAE4c,GAAGo4J,GAAI3nL,EAAEA,EAAE86B,IAAI,CACrS,SAASkhU,IAAIh8V,GAAG,IAAMuvB,EAAE,IAAIA,EAAE,IAAIu/M,GAAG7hB,GAAGi1E,GAAIliS,GAAGA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG77L,IAAoB,GAAbouJ,GAAGwtC,GAAG57L,GAAG,IAASA,EAAEvxB,EAAEqD,IAAI49P,MAAMk4B,KAAM,MAAMjkH,GAAI,IAAI5zE,GAAIuwO,IAAIlX,IAAI34T,GAAR6vU,qJAAqK,CAEtS,SAASxd,IAAIryT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAyB,IAAvBrO,KAAK4N,EAAE,IAAIogK,GAAI/sK,EAAE,EAAExF,EAAE,EAAM4S,EAAE,IAAIgzJ,GAAI3lK,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAK4c,GAAG0sU,IAAInhU,GAAGi7I,GAAIzxK,KAAK4N,EAAE4oB,GAAGv1B,GAAGu1B,EAAE56B,EAAEH,GAAG+6B,EAAE13B,EAAKkB,KAAK4N,EAAEqd,EAAErxB,OAAO,IAA2BqH,IAAxBu1B,EAAE6iJ,GAAG0pB,GAAI/iM,KAAK4N,EAAE,GAAG,MAAUhS,EAAEH,GAAG+6B,EAAE13B,GAAEmC,GAAG,EAAExF,GAAG,EAAEmS,EAAE,EAAG3M,EAAE4yL,GAAGllD,EAAK3/H,KAAKwd,KAAKvrB,EAAE2M,IAAMnS,EAAEo4L,GAAGllD,EAAK3/H,KAAKwd,KAAK/wB,EAAEmS,IAAK5N,KAAKtE,EAAE,IAAIy2N,IAAIlxN,EAAExF,EAAE,CACvS,SAASm8V,IAAIl8V,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAInoB,EAAElP,EAAI2O,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAIsP,EAAuL,IAArLrR,EAAEtB,EAAKmS,EAAEE,GAAGF,EAAEhS,GAAyBkD,GAAtBxD,EAAE+9K,GAAG+5B,GAAI13M,EAAE86B,EAAE5oB,EAAE0X,GAAG,KAAQ7pB,EAAEwvB,EAAE3vB,EAAEG,EAAEmS,IAAI7Q,GAAO+B,EAAE8O,EAAElS,EAAEuvB,EAAErd,EAAElS,EAAEkS,EAAE4B,EAAEvO,EAAKgqB,EAAEvb,GAAGub,EAAErvB,GAAyBkS,GAAtBxS,EAAE+9K,GAAG+5B,GAAI13M,EAAE86B,EAAEvL,EAAEsT,GAAG,KAAQ9iC,EAAEwvB,IAAIzb,GAAO1B,EAAEmd,EAAEvvB,EAAEuvB,EAAqCrvB,EAAEkD,GAARK,GAA3B2O,EAAEhP,GAAI6vI,EAAK3/H,KAAKugB,IAAI,EAAE/f,EAAEzS,IAAmB2R,EAAE3R,EAAE2R,EAAEc,IAAId,EAAqBN,GAAlBC,EAAEgrK,GAAG7iJ,EAAEugL,GAAGroM,GAAG,MAAShT,EAAEkS,EAAES,EAAE3S,EAAEuvB,EAAErvB,EAAEwS,EAAE,EAAExS,GAAGuD,CAAE,CACvS,SAASo/R,IAAI7iS,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAInoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAoD,IAAlD1B,EAAEmd,EAAEA,EAAErxB,OAAO48B,IAAI96B,EAAEuvB,EAAE0uJ,GAAGmV,IAAGsW,IAAI,GAAGx3L,EAAEhU,OAAO,GAAG,IAAQyU,EAAEpN,EAAE,EAAE2M,EAAEhU,OAAO,EAAEqH,EAAEoN,EAAET,EAAEhU,OAAOyU,GAAG,EAAEA,GAAGpN,EAAE,GAAG,EAAE,CAA8F,IAA7F9B,EAAEyO,EAAES,GAAG3U,EAAE+B,IAAI0/K,MAAMC,KAAKn6K,EAAE4jN,GAAI1lN,EAAE1D,GAAGspN,GAAGF,GAAI1lN,EAAE1D,IAAIwF,EAAE8jN,GAAGF,GAAI1lN,EAAE1D,IAAIopN,GAAI1lN,EAAE1D,GAAG+6B,IAAI96B,EAAEuvB,EAAE9rB,EAAEL,GAAGpF,EAAEihL,MAAUnrK,EAAE9V,EAAE29M,KAAK7nM,EAAEynM,MAAOl6M,EAAEs8K,GAAG7pK,EAAE2nM,KAAK,IAAIz7M,EAAED,EAAEsB,EAAE+B,GAAGgP,IAAIw2O,GAAIr5N,EAAEvxB,EAAE,CAAC,CACvS,SAASm+V,IAAIn8V,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAiK,IAA/Jy5B,EAAEwlJ,GAAIC,GAAGvgL,EAAEkS,EAAEypM,KAAKF,OAAOrpM,EAAEkuK,GAAIC,GAzgDvE,SAAYvgL,GAAG,IAAIkS,EAAE,GAAGlS,EAAE,CAAK,IAAJkS,EAAElS,GAAOqhC,KAAM,MAAM6xI,GAAI,IAAImC,IAAK,OAAOnjK,EAAEmpM,GAAGnpM,EAAE+sK,KAAK,EAAE,CAAC,OAAOg2E,GAAGj1P,EAAE27M,KAAK,CAygD1BygJ,CAAGlqV,EAAEA,KAAKnS,EAAEuqN,GAAIrE,GAAIjmN,EAAEA,GAAGoS,EAAEmd,GAAGhqB,EAAE+kN,GAAIrE,GAAI/zM,EAAElS,GAAGuvB,EAAEuL,GAAcwvL,GAAXjpN,EAAEw+K,GAAI9/K,EAAEwF,GAAS,GAAG6M,EAAE0oB,IAAIx2B,KAAKtE,EAAEqB,EAAEiD,KAAK4N,EAAE,IAAIogK,GAAI7uK,GAAE,GAAKkP,EAAE3S,EAAEkS,EAAEypM,MAAOF,KAAW9oM,EAAE4oM,MAAMv9M,EAAEsiL,GAAIC,GAAG5tK,EAAE8oM,OAAUh4M,GAAGzF,EAAEuxB,EAAEotS,MAAKr4T,KAAK4N,EAAE21M,GAAGt4L,GAAG9rB,GAAE,GAAMa,KAAK4N,EAAE21M,GAAG7pN,GAAGyF,GAAGa,KAAK4N,EAAE21M,GAAGt4L,EAAE,CACvS,SAAS8sU,IAAIr8V,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAa,GAoJvC,SAAavF,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAsC,IAApCuH,EAAE04K,GAAGmV,IAAGsW,IAAI,GAAG1pM,EAAEuF,EAAEvF,EAAEuvB,EAAErxB,OAAO,GAAG,GAAOyU,EAAE,IAAIgzJ,GAAI3lK,EAAEuF,EAAEvF,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAA0BqH,GAAjBu1B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,MAAS5S,IAAI+6B,EAAE5oB,EAAElS,EAAEuvB,EAAErxB,OAAOuF,EAAEi/N,GAAGxwN,GAAG,KAAW,GAALzO,EAAEyO,GAAuD,IAAInS,EAAEkiR,GAAG,IAAIt8G,IAA9D7qI,EAAE6iJ,GAAQ,GAALl6K,EAAEyO,EAAK,MAAMo3M,GAAS,GAAL7lN,EAAEyO,GAAMkyN,GAAI3gO,EAAEA,EAAEzD,EAAEA,IAAI,MAAwB2S,EAAE3S,IAAID,EAAEw7M,OAAwBv9M,GAAjBuxB,EAAEouJ,GAAG59K,EAAE07M,KAAK,MAASl2M,GAAIA,EAAE0tI,EAAK3/H,KAAKugB,IAAI71B,EAAEuH,EAAEu1B,EAAEv1B,EAAEgqB,EAAEvvB,KAAKuF,EAAEvH,EAAE+B,GAAW,GAARwF,EAAEvH,EAAE+B,IAAQg9M,GAAIt5M,EAAEzF,EAAEyF,EAAE8rB,EAAErd,EAAEzO,EAAE8rB,EAAU,CApJ1U+sU,CAAIt8V,EAAEA,EAAEJ,GAAMI,EAAED,EAAEwvB,EAAErxB,OAAO,EAAE,CAAU,IAATskL,GAAIxiL,EAAEuvB,GAAS45T,IAAInpV,EAAE29K,GAAGC,GAAI,IAAIjY,GAAI3lK,EAAEuF,EAAEvF,IAAI,MAAMA,EAAEuF,EAAEvF,EAAEuvB,EAAErxB,QAAO,CAA0C,IAAhCqH,GAAT2M,EAAE8wT,IAAIhjU,IAAOuF,EAAEA,EAAE2M,EAAEnS,EAAEwF,EAAE2M,EAAElS,EAAEkS,EAAE3M,EAAE6M,IAAI7M,GAAGA,GAAOxF,EAAE,IAAI4lK,GAAI3lK,EAAEuF,EAAEvF,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,SAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,MAAOqS,IAAImd,EAAEhqB,GAAGA,GAAGi9K,GAAIxiL,EAAEuvB,EAAE,CAACizJ,GAAIxiL,EAAEuvB,GAAG6yT,IAAIpiV,EAAE29K,GAAGC,GAAI,IAAIjY,GAAI3lK,EAAEuF,EAAEvF,IAAI,MAAMu8V,IAAIv8V,EAAE,CAAC,CAIxS,SAASq+S,IAAGt+S,EAAEmS,GAAG,GAAGA,aAAavT,OAAQ,IAAyB,GAArBuT,EAAEs/R,iBAAiBzxS,GAAyD,GAApD8O,UAAU2B,UAAUY,cAAckb,QAAQ,SAAakwU,KAAKC,aAAa,EAAG,OAAO,IAAIltU,EAAExvB,EAAEpB,OAAOsyI,iBAAiB/+H,EAAE,CAAC6gI,MAAM,CAAC1yI,IAAI,WAAW,IAAIL,EAAEuvB,EAAEmtU,KAAK,OAAO18V,GAAGA,EAAE28V,IAAI,GAAGC,WAAW,CAACv8V,IAAI,WAAW,OAAOkvB,EAAEstU,IAAI,IAAI,CAAC,MAAM78V,KAAG,CAAE,CACzS,SAASyvQ,IAAIzvQ,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAe,GAAb5S,EAAEmS,GAAG,EAAEA,GAAG,GAAMnS,GAAGC,EAAED,EAAG,OAAOC,EAAEuF,EAAE,GAAGw9M,MAAMo7F,MAAMp7F,MAAMmrE,KAAuD,GAAlDpzP,EAAE96B,EAAED,EAAEA,EAjdnG,SAAaC,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAS,IAAPq3B,GAAE,EAASnoB,EAAE,EAAEA,EAAE5S,EAAE4S,IAAKmoB,GAAU,GAANvL,EAAE5c,GAAM,GAAM,GAAHpN,EAAM+9P,IAAI/zO,EAAExvB,EAAEC,EAAE,EAAEkS,GAAGS,EAAET,MAAM,CAAuB,IAAtBzO,EAAE,GAAG8B,EAAEu1B,GAAIvL,EAAE5c,IAAIlP,GAAG,EAAMkP,EAAE,EAAEA,EAAET,EAAE,EAAES,IAAK3S,EAAE2S,GAAG4c,EAAE5c,EAAE5S,KAAKwF,EAAEgqB,EAAE5c,EAAE5S,EAAE,IAAI0D,EAAEzD,EAAE2S,GAAG4c,EAAE5c,EAAE5S,KAAKwF,IAAIoN,CAAC,CAAS,CAid1EmqV,CAAzBv3V,EAAE04K,GAAGmV,IAAGsW,IAAI,GAAG5uK,EAAE,EAAE,GAAG,GAASA,EAAE96B,EAAEA,EAAED,EAAEmS,GAAMlS,EAAEuF,EAAE,EAAE,CAAC,IAAIgqB,EAAE,EAAEA,EAAExvB,GAAW,GAARC,EAAEA,EAAEuvB,GAAMA,KAAK,GAAGA,EAAExvB,GAAGmS,EAAE,GAAGlS,EAAEA,EAAEuvB,IAAI,GAAGrd,GAAG,EAAE,CAAC,IAAIqd,EAAE,EAAEA,EAAEuL,IAAU,GAAPv1B,EAAEgqB,GAAOA,IAAKhqB,EAAEgqB,GAAG,EAAEA,GAAGuL,KAAKA,IAAIv1B,EAAEgqB,EAAE,CAAC,CAA2B,OAAP8qO,GAAnB1nP,EAAE,IAAIygO,GAAIpzO,EAAEuF,EAAEu1B,EAAEv1B,IAAiBoN,CAAC,CACzS,SAAS4wU,IAAIvjV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAqI,OAA1HgqB,EAAE,IAAI04I,GAAf1iK,EAAE4qP,GAAInwP,IAAgBD,EAAE,IAAImoK,GAAI3iK,GAAaqjP,GAAV12O,EAAE,IAAIogK,KAAYtyK,EAAED,IAAIC,EAAED,EAAE,IAAIgrN,GAAIl9B,IAAG7tL,EAAE,EAAE,IAAIA,EAAED,IAAI6oP,GAAI12O,IAAIlS,EAAEuF,IAAIvF,EAAEuF,EAAE,IAAIwlN,GAAIl9B,IAAG7tL,EAAE,EAAE,IAAIA,EAAEuF,IAAWo4K,GAAGopF,GAAI5wB,GAAIhsB,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAIr7L,EAAE,KAAKqd,GAAGxvB,GAAGgsO,GAAI,IAAIj2F,EAAI,IAAIC,EAAI,IAAIO,GAAI,IAAIC,GAAIgoC,GAAGC,GAAGwtD,IAAG,GAAGC,IAAI,IAAI,EAAE,EAAE4oC,KAAMG,KAAKD,QAAQ,GAAG,CACzS,SAASgoF,IAAI/8V,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAA0B,GAArBmuM,KAAH1oM,EAASk6K,GAAGzrK,EAAE,IAAIq1M,KAASC,IAAIxnN,EAAEuF,EAAE2M,IAAI,GAAGA,EAAEu1M,MAAMC,IAAI1nN,EAAEkS,EAAEnS,EAAE8pL,GAAG33K,EAAE,KAAwB,IAAlByrK,GAAGzrK,EAAE,IAAIsjK,GAAGmyC,MAAU,MAAMz0C,GAAI,IAAI2O,GAAIuhI,WAA4C,IAAhCplT,EAAE+pN,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAG3M,EAAEo4K,GAAG39K,EAAE2S,EAAE,KAASA,EAAE,EAAEA,EAAE3S,EAAEhC,IAAI2U,EAAU,GAAPmoB,EAAEv1B,EAAEoN,GAAM3U,EAAEiqN,GAAGntL,EAAEotL,MAAO,MAAMh1C,GAAI,IAAI2O,GAAIimC,MAAQknD,GAAIhvQ,EAAE07U,IAAI17U,EAAEkS,EAAEqd,GAAG9rB,EAAEk6K,GAAG59K,EAAE,IAAI6nN,GAAI11M,EAAEnS,GAAG,CACzS,SAASynN,IAAIxnN,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAEwF,EAAE,OAAhB4mM,OAAmBj6L,EAAE+rN,OAAmC,GAAT/rN,EAAEi2N,OAAaj2N,IAAI+zU,MAAMC,MAAMh0U,GAAGi0U,KAAKj0U,GAAGk0U,KAAKl0U,GAAGm0U,OAAkCn6D,IAAZ3mR,EAAEvF,EAAEgoN,KAAc91M,IAAI,OAAqBqd,EAAEonO,KAAKtW,MAAMwiF,KAAKt9T,EAAE2M,OAA2BnS,EAAEwvB,EAAE44M,MAAe,IAAO,GAAJpoO,IAAyB,GAAjBogP,GAAIqW,GAAIqsE,IAAItzS,KAA4B,CACzS,SAASytU,IAAIh9V,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAoH,OAAlHyF,EAAEunN,IAAIrtC,GAAG0O,KAAMn6K,EAAEA,IAAIA,EAAEA,EAAE,IAAI64M,GAAI19B,IAAGn7K,EAAE,EAAE,IAAIA,EAAEA,GAAG,GAAG,KAAKlU,EAAEgtN,IAAIrtC,GAAG0O,KAAMn6K,EAAEqd,IAAIrd,EAAEqd,EAAE,IAAIw7L,GAAI19B,IAAGn7K,EAAE,EAAE,IAAIA,EAAEqd,GAAG,GAAG,KAAQuuL,GAAIr6M,IAAIq6M,GAAI9/M,IAAmBqtN,GAAIrtN,EAAEyF,GAAd,MAA8BkP,EAAE8lM,GAAIvmM,KAASqd,EAAUxvB,GAAO+6B,EAAE6iJ,GAAG+5B,GAAI13M,EAAEA,EAAE2S,GAAG,OAAUpN,EAAEu1B,EAAEv1B,GAAeA,EAAW,IAAI,CAE1S,SAASo+S,IAAI3jT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAA2B,GAAzB+B,EA1lIpC,SAAaC,EAAEkS,GAAG,OAAOlS,EAAEkS,EAAE,EAAE,CAAC,CA0lIM+qV,CAAI1tU,EAAEvvB,EAAE9B,SAAQyU,EAAE3S,EAAED,IAAQ,GAAGsB,IAAI49P,MAAMC,KAAqC,IAAxBpkO,EAAEyrJ,GAAIh3J,EAAE5c,EAAEzU,QAAQF,EAAEkU,EAAEE,EAAM7M,EAAE,EAAEA,EAAEvH,EAAEuxB,EAAErxB,OAAOqH,IAAQk4M,GAAIl4M,EAAEvH,EAAEuxB,EAAErxB,QAAbuF,EAAqBk6K,GAAG3/K,EAAEuxB,EAAEhqB,GAAG,KAASgqB,EAAE9rB,EAAE2O,IAAIqtK,MAAMC,KAAKj8K,EAAE2O,IAAIqtK,MAAMG,OAAOqC,GAAIk6B,GAAG5T,IAAI9kM,GAAGukM,MAAM+yH,UAAS3mF,GAAIp2O,EAAEuH,EAAEo4K,GAAG4qB,IAAI51L,EAAEmoB,IAAIktK,MAAM0/C,MAAM,KAAK5sN,GAAGvL,EAAE,GAAG,EAAG,CAC1S,SAAS2tU,IAAIl9V,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAEA,EAAE,IAAI2/J,GAAI/iJ,EAAErd,EAAE,IAAG4oB,EAAE6iJ,GAAG+5B,GAAI13M,EAAEkS,EAAEqd,GAAG,MAAOqV,EAAErV,EAAEA,EAAEuL,EAAEq2J,EAAE5hK,EAAExvB,EAAE4S,EAAE4c,EAAE5c,EAAE4c,EAAErxB,QAAQ48B,EAAEvL,EAAEouJ,GAAG+5B,GAAI13M,EAAEqB,EAAEkuB,GAAG,UAAUA,GAAgK,OAA1JkuL,GAAI,EAAE9qM,EAAE4c,EAAErxB,SAAb6B,EAAqB49K,GAAGhrK,EAAE4c,EAAE,GAAG,MAAQnd,GAAE,EAAKrS,EAAE6pB,EAAE+zJ,GAAG59K,EAAEA,EAAEC,EAAE2hP,KAAKhmC,KAAKF,KAAK,IAAIlsL,EAAEvxB,GAAEuH,EAAEo4K,GAAG0pB,GAAI10L,EAAEA,EAAE4c,EAAErxB,OAAO,GAAG,MAAO8V,GAAE,EAAKzO,EAAEs9B,EAAE86I,GAAGp4K,EAAExF,EAAEC,EAAE2hP,KAAKhmC,KAAKF,KAAK,IAAI17M,EAAE/B,EAAS2U,CAAC,CAC1S,SAASwqV,IAAIn9V,GAAG,GAAQ,MAALA,EAAE2S,EAAS,OAAO3S,EAAEoD,GAAG,KAAK,EAAEpD,EAAE2S,EAl9EnD,SAAa3S,GAAG,GAAQ,GAALA,EAAEoD,EAAK,MAAM8vK,GAAI,IAAI8B,IAAK,OAAO6mC,GAAI77M,EAAE86B,EAAE,EAAE,CAk9ETsiU,CAAIp9V,IAAI0tN,KAAME,MAAMF,KAAMC,KAAK,MAAM,KAAK,EAAE3tN,EAAE2S,EAAEi7Q,GAjuErG,SAAa5tR,GAAG,GAAQ,GAALA,EAAEoD,EAAK,MAAM8vK,GAAI,IAAI8B,IAAK,OAAOi1C,GAAIjqN,EAAE86B,IAAI,IAAI,EAAE,CAiuEqCuiU,CAAIr9V,IAAI,MAAM,KAAK,EAAEA,EAAE2S,EAAE4+R,GAr3ElI,SAAavxS,GAAG,GAAQ,GAALA,EAAEoD,EAAK,MAAM8vK,GAAI,IAAI8B,IAAK,OAAOi1C,GAAIjqN,EAAE86B,GAAG2hK,GAAG,CAq3EsE6gK,CAAIt9V,IAAI,MAAM,KAAK,EAAEA,EAAE2S,EA9sF7J,SAAa3S,GAAG,GAAQ,GAALA,EAAEoD,EAAK,MAAM8vK,GAAI,IAAI8B,IAAK,OAAOh1K,EAAEuF,CAAC,CA8sFwGg4V,CAAIv9V,GAAG,MAAM,KAAK,EAAEA,EAAE2S,EAAE,IAAIkyJ,GA/sF3L,SAAa7kK,GAAG,GAAQ,GAALA,EAAEoD,EAAK,MAAM8vK,GAAI,IAAI8B,IAAK,OAAOh1K,EAAEuF,CAAC,CA+sFwIi4V,CAAIx9V,IAAI,MAAM,KAAK,EAAEA,EAAE2S,EAAEk3N,IA7sFxN,SAAa7pO,GAAG,GAAQ,GAALA,EAAEoD,EAAK,MAAM8vK,GAAI,IAAI8B,IAAK,OAAOh1K,EAAE86B,CAAC,CA6sFqK2iU,CAAIz9V,IAAI,MAAM,KAAK,EAAEA,EAAE2S,EAAEqlM,GA1gFrP,SAAah4M,GAAG,GAAQ,GAALA,EAAEoD,EAAK,MAAM8vK,GAAI,IAAI8B,IAAK,OAAOi1C,GAAIjqN,EAAE86B,EAAE,CA0gF6L4iU,CAAI19V,IAAI,MAAM,KAAK,EAAEA,EAAE2S,EAAEuwS,GA9tElR,SAAaljT,GAAG,GAAQ,GAALA,EAAEoD,EAAK,MAAM8vK,GAAI,IAAI8B,IAAK,OAAOi1C,GAAIjqN,EAAE86B,IAAI,IAAI,EAAE,CA8tEkN6iU,CAAI39V,IAAM,OAAOA,EAAE2S,CAAC,CAC1S,SAASirV,IAAI59V,GAAG,GAAQ,MAALA,EAAEJ,EAAS,OAAOI,EAAEoD,GAAG,KAAK,EAAEpD,EAAEJ,EAl9EnD,SAAaI,GAAG,GAAQ,GAALA,EAAEoD,EAAK,MAAM8vK,GAAI,IAAI8B,IAAK,OAAO6mC,GAAI77M,EAAEqB,EAAE,EAAE,CAk9ETw8V,CAAI79V,IAAI0tN,KAAME,MAAMF,KAAMC,KAAK,MAAM,KAAK,EAAE3tN,EAAEJ,EAAEguR,GAjuErG,SAAa5tR,GAAG,GAAQ,GAALA,EAAEoD,EAAK,MAAM8vK,GAAI,IAAI8B,IAAK,OAAOi1C,GAAIjqN,EAAEqB,IAAI,IAAI,EAAE,CAiuEqCy8V,CAAI99V,IAAI,MAAM,KAAK,EAAEA,EAAEJ,EAAE2xS,GAr3ElI,SAAavxS,GAAG,GAAQ,GAALA,EAAEoD,EAAK,MAAM8vK,GAAI,IAAI8B,IAAK,OAAOi1C,GAAIjqN,EAAEqB,GAAGo7L,GAAG,CAq3EsEshK,CAAI/9V,IAAI,MAAM,KAAK,EAAEA,EAAEJ,EA5sF7J,SAAaI,GAAG,GAAQ,GAALA,EAAEoD,EAAK,MAAM8vK,GAAI,IAAI8B,IAAK,OAAOh1K,EAAEoS,CAAC,CA4sFwG4rV,CAAIh+V,GAAG,MAAM,KAAK,EAAEA,EAAEJ,EAAE,IAAIilK,GA3sF3L,SAAa7kK,GAAG,GAAQ,GAALA,EAAEoD,EAAK,MAAM8vK,GAAI,IAAI8B,IAAK,OAAOh1K,EAAEoS,CAAC,CA2sFwI6rV,CAAIj+V,IAAI,MAAM,KAAK,EAAEA,EAAEJ,EAAEiqO,IA7sFxN,SAAa7pO,GAAG,GAAQ,GAALA,EAAEoD,EAAK,MAAM8vK,GAAI,IAAI8B,IAAK,OAAOh1K,EAAEqB,CAAC,CA6sFqK68V,CAAIl+V,IAAI,MAAM,KAAK,EAAEA,EAAEJ,EAAEo4M,GA1gFrP,SAAah4M,GAAG,GAAQ,GAALA,EAAEoD,EAAK,MAAM8vK,GAAI,IAAI8B,IAAK,OAAOi1C,GAAIjqN,EAAEqB,EAAE,CA0gF6L88V,CAAIn+V,IAAI,MAAM,KAAK,EAAEA,EAAEJ,EAAEsjT,GAhuElR,SAAaljT,GAAG,GAAQ,GAALA,EAAEoD,EAAK,MAAM8vK,GAAI,IAAI8B,IAAK,OAAOi1C,GAAIjqN,EAAEqB,IAAI,IAAI,EAAE,CAguEkN+8V,CAAIp+V,IAAM,OAAOA,EAAEJ,CAAC,CAC1S,SAASuhU,IAAInhU,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAE,IAAIq3B,EAAE,IAAI6qI,GAAI3lK,EAAEA,EAAEA,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,SAAS6B,EAAE49K,GAAGC,GAAI9iJ,GAAG,MAAOnoB,EAAE,EAAE5S,EAAE/B,EAAE,EAAE+B,EAAEwF,EAAEvF,EAAEqvQ,KAAK,IAAI9pQ,EAAE,IAAIogK,GAAI3lK,EAAEA,EAAEA,GAAGuF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA0B,IAAIqxB,GAArBxvB,EAAE49K,GAAGC,GAAIr4K,GAAG,MAAavF,EAAEA,EAAE2hP,KAAKhmC,KAAKpsL,EAAEgsL,MAAuB,IAAI93M,EAAlBk6K,GAAGpuJ,EAAEksL,KAAK,IAAYlsL,EAAEosL,KAAKl4M,EAAE83M,OAAO5oM,EAAEgrK,GAAGl6K,EAAEg4M,KAAK,KAASz7M,GAAGD,IAAG4nL,GAAI5nL,EAAEwF,EAAEoN,KAAKA,EAAE3S,EAAE2S,IAAIA,EAAE3S,EAAEhC,EAAK,CAG3S,SAASs1V,IAAItzV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAM98B,EAAIqD,EAAEyS,EAAEd,EAAEzN,EAAE2M,EAAE,IAAI81I,GAAI,IAAIC,GAAIntH,GAAE,EAAM,GAA2B,IAAxBA,GAAE,EAA0B98B,GAAlBkU,EAAEm3M,GAAGrpN,EAAEkS,GAAGlS,EAAEkS,GAAUypM,KAAK39M,EAAEu9M,MAA8C,IAAvBvoM,EAAEqkP,GAAhB15E,GAAG3/K,EAAEy9M,KAAK,IAAWz7M,GAAGkS,GAAG,IAAI4qK,GAAG9pK,GAAOc,EAAE,IAAI6xJ,GAAI3yJ,GAAGc,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAASmD,EAAEs8K,GAAGC,GAAI9pK,GAAG,IAAOvO,EAAE06N,GAAG5+N,KAAItB,EAAEsB,EAAEkuB,EAAEouJ,GAAG4qB,IAAIlnM,GAAG2mM,MAAM0rF,MAAM,KAAiB54P,EAAEs4T,IAAIrzV,EAAhBmS,EAAEqd,EAAErd,EAAEqd,EAAEluB,EAAY6Q,GAAE,UAAgB4oB,EAAE,CAG3S,SAASi3T,IAAI/xV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAoQ,OAAlQq3B,EAAE96B,EAAED,GAAE0D,EAAE68K,GAAIC,GAAGgoB,IAAIvoM,GAAGq9J,MAAMq3H,SAAa,GAAO3sF,GAAI/nM,EAAE00R,IAAVjxR,EAAE,GAAeyO,EAAEhS,EAAEgS,EAAEzO,EAAEkP,EAAEsgI,EAAK3/H,KAAKC,MAAM9P,EAAE,GAAak7P,IAAV5+P,EAAE,IAAIg5U,KAAWt5J,MAAMG,MAAM2yE,GAAIxyP,EAAEmS,GAAGnS,EAAEH,EAAEsS,EAAES,EAAYgsP,IAAVp5P,EAAE,IAAIwzU,IAAUr5J,KAAK6yE,GAAIhtP,EAAE2M,GAAG3M,EAAE3F,EAAEsS,EAAES,EAAEy/O,GAAIpyP,EAAED,GAAa8vQ,GAAVtgP,EAAE,IAAIs7N,GAAU7qP,GAAG+nM,GAAIx4K,EAAEyvO,IAAI,MAAM3M,GAAI9iO,EAAEhqB,GAAG6sP,GAAI7iO,EAAEuL,GAuP7Q,SAAa96B,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAExF,EAAEmS,EAAEqd,EAAEvxB,EAAEuH,EAAEgqB,EAAExvB,EAAE/B,EAAK+B,EAAEsB,IAAI49P,MAAMg4B,MAAMlvF,GAAI/nM,GAAGgoM,MAAM8hI,KAAKnsJ,GAAG4qB,IAAIxoM,EAAE+pU,KAAK,KAAK/hI,GAAI/nM,EAAE+pU,IAAIpsJ,GAAG4qB,IAAIxoM,EAAEgqU,KAAK,KAAKhiI,GAAI/nM,EAAEq+V,IAAIliJ,GAAG5T,IAAIxoM,EAAEs+V,QAAet+V,EAAEsB,GAAG81R,KAAKpvF,GAAI/nM,GAAGgoM,MAAM8hI,KAAKnsJ,GAAG4qB,IAAIxoM,EAAE+pU,KAAK,KAAK/hI,GAAI/nM,EAAE+pU,IAAIpsJ,GAAG4qB,IAAIxoM,EAAEgqU,KAAK,KAAKhiI,GAAI/nM,EAAEq+V,KAAK3wI,MAAM,KAAenoN,EAAElE,GAAG81R,KAAKpvF,GAAI/nM,GAAGgoM,MAAM8hI,KAAKnsJ,GAAG4qB,IAAIhjM,EAAEukU,KAAK,KAAK/hI,GAAI/nM,EAAE+pU,IAAIpsJ,GAAG4qB,IAAIhjM,EAAEwkU,KAAK,KAAKhiI,GAAI/nM,EAAEq+V,KAAK3wI,MAAM,MAAY3lB,GAAI/nM,GAAGgoM,MAAM8hI,KAAK53T,EAAEqd,GAAGw4K,GAAI/nM,EAAE+pU,IAAIx6S,EAAExvB,GAAG,CAvPhJu+V,CAAIpsV,EAAElS,EAAEuvB,GA9ZxR,SAAavvB,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAqB,IAAjBA,EAAE,IAAIwpN,GAAIvpN,EAAEkS,EAAE,GAASnS,EAAEmS,EAAEnS,EAAEA,EAAEk/K,MAASqqC,GAAIvpN,EAAEmS,EAAEnS,EAAEA,EAAEk/K,MAAf1vJ,EAAqBouJ,GAAG59K,EAAEA,EAAEs7M,GAAGt7M,EAAEwvB,EAAExvB,EAAEmS,KAAK,IAAOyrK,GAAG4qB,IAAIh5K,GAAG8tI,MAAMq9J,MAAM,OAAY/7C,KAAMG,OAAMt1D,GAAIzpN,GAAGg2K,GAAI7jK,EAAEA,EAAEqd,GAAGijM,GAAIjjM,GAAGy4K,MAAMuuH,OAAOxuH,GAAIx4K,EAAEgnS,IAAIv2T,GAAI,CA8ZuEu+V,CAAIv+V,EAAEuvB,GAAUA,CAAC,CAG5S,SAASsnR,IAAI72S,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAE,OAAI5oB,EAAyC,IAAxB3M,EAAEvF,EAAEA,EAAEk5S,GAAG3pR,EAAExvB,EAAEmS,EAAEnS,KAAYA,EAAEA,EAAEy5N,GAAItnN,EAAEqd,EAAEhqB,GAAGxF,EAAEmS,GAAE,EAAYA,IAAE4oB,EAAEv1B,EAAE,EAAE,EAAE,EAAE2M,EAAElS,EAAE86B,GAAG+7Q,IAAI72S,EAAEkS,EAAElS,EAAE86B,GAAGvL,EAAExvB,GAAMsiL,GAAInwK,EAAElS,EAAE86B,MAAQunJ,GAAInwK,EAAElS,EAAE,EAAE86B,KAAK5oB,EAAEA,GAAE,EAAKA,EAAElS,EAAE,GAAGkS,GAAE,EAAMA,EAAElS,EAAE,GAAGkS,GAAE,GAAWmwK,GAAInwK,EAAElS,EAAE86B,GAAG96B,EAAE86B,IAAK5oB,EAAEgpP,GAAIhpP,EAAE,EAAE4oB,GAAIunJ,GAAInwK,EAAElS,EAAE86B,GAAG96B,EAAE,EAAE86B,MAAM5oB,EAAE+oP,GAAI/oP,EAAE,EAAE4oB,KAAa5oB,GAAhQqd,CAAiQ,CAC7S,SAASivU,IAAIx+V,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAEpN,EAAEvF,EAAEhC,EAAE+B,EAAEC,EAAEJ,EAAEqwQ,GAAIjwQ,GAAGwzQ,KAAME,KAAKnuQ,EAAEgqB,EAAExvB,EAAEmS,EAAEqd,GAAG0gP,GAAIjwQ,EAAE4zQ,IAAIruQ,EAAEgqB,EAAEhqB,EAAE2M,EAAEnS,EAAEwvB,EAAEA,EAAE,GAAGA,GAAG5c,EAAEpN,EAAE2M,EAAEnS,EAAEmS,EAAEnS,EAAEwvB,EAAKA,EAAE,GAAG,IAAGA,EAAE,IAAIvvB,EAAED,EAAE4S,GAAG4c,EAAE,IAAMA,EAAE,GAAG,IAAGA,EAAE,IAAIvvB,EAAED,EAAE4S,GAAG4c,EAAE,IAAGuL,EAAEm4G,EAAK3/H,KAAKugB,IAAI,EAAElhB,GAAG4c,EAAE,GAAG0jH,EAAK3/H,KAAKugB,IAAItE,EAAE,GAAG5c,GAAGs9P,GAAIjwQ,EAAE2zQ,IAAIpuQ,EAAEgqB,EAAExvB,EAAEmS,EAAEqd,EAAE,IAAIA,EAAE,GAAG5c,GAAG,EAAE4c,GAAMrd,GAAGyhQ,MAAK3zQ,EAAEuvB,EAAErd,EAAE4oB,EAAE96B,EAAEuvB,EAAEA,EAAEhqB,EAAEgqB,EAAExvB,EAAEmS,GAAG4oB,EAAEnoB,GAAG,EAAE,CAC7S,SAAS8rV,MAAMn6V,KAAKirB,EAAE0uJ,GAAGgV,IAAGwzD,IAAI,IAAIhnE,MAAMlB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC1/C,IAAI/mB,IAAIL,IAAImnB,IAAIjnB,OAAO1hL,OAAO,GAAG,GAAGoG,KAAK4N,EAAE+rK,GAAGgV,IAAGwzD,IAAI,GAAGloE,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC1/C,IAAI/mB,IAAIL,IAAImnB,IAAIjnB,MAAM1hL,OAAO,GAAG,GAAGoG,KAAKtE,EAAEi+K,GAAGgV,IAAGwzD,IAAI,GAAGloE,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC1/C,IAAI/mB,IAAIL,IAAImnB,IAAIjnB,MAAM1hL,OAAO,GAAG,GAAG4vM,GAAIxpM,KAAKirB,EAAE+mJ,KAAKw3B,GAAIxpM,KAAK4N,EAAEqkK,KAAKu3B,GAAIxpM,KAAKtE,EAAEu2K,IAAI,CAC7S,SAASo4I,IAAI3uT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAoC,GAA/BT,GAAGqd,GAAGhqB,EAAE2M,EAAE4oB,EAAEvL,IAAOhqB,EAAEgqB,EAAEuL,EAAE5oB,GAAEnS,EAAE,EAAU,MAALC,EAAEkS,EAASlS,EAAEkS,EAAE+rK,GAAGmV,IAAGsW,IAAI,GAAG,EAAE,GAAG,GAAG1pM,EAAEkS,EAAE,GAAG3M,EAAEvF,EAAEkS,EAAE,GAAG4oB,EAAE96B,EAAEuvB,GAAE,MAAS,CAAc,GAAbxvB,EAAEC,EAAEkS,EAAEhU,OAAU8B,EAAEkS,EAAEnS,EAAE,GAAG,GAAGwF,EAAc,YAAXvF,EAAEkS,EAAEnS,EAAE,GAAG+6B,GAASnoB,EAAEsrK,GAAGmV,IAAGsW,IAAI,GAAG3pM,EAAE,EAAE,GAAG,GAAGujQ,IAAItjQ,EAAEkS,EAAE,EAAES,EAAE,EAAE5S,GAAGC,EAAEkS,EAAES,EAAE3S,EAAEkS,EAAEnS,EAAE,IAAIwF,IAAIvF,EAAEuvB,GAAE,EAAMvvB,EAAEA,GAAE,GAAOA,EAAEkS,EAAEnS,KAAKwF,EAAEvF,EAAEkS,EAAEnS,GAAG+6B,EAAE96B,EAAEuvB,GAAGo/T,IAAI3uV,EAAE,CAAC,CAE7S,SAAS2tV,IAAI3tV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,IAAIskQ,GAAGpwP,GAAG,CAA+E,IAA3B2vR,IAAnD7jS,EAAEkoS,GAAI32Q,GAAGs6J,GAAG33K,EAAE,IAAIyrK,GAAGzrK,EAAE,IAAI+sK,KAAKwkF,GAAGvxP,EAAEypM,OAAO37M,EAAEA,EAAE,GAAS0+V,IAAI,GAAGj7V,EAAE,IAAIyoJ,GAAIv5I,EAAE,EAAMmoB,EAAE5oB,EAAEypM,KAAK7gL,EAAEygL,MAAOx7M,EAAE49K,GAAG7iJ,EAAE2gL,KAAK,IAAIh4M,EAAE0iG,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,CAAC16K,EAAE,IAAIiqK,GAAI3tK,MAAM4S,EAAE5S,EAAE+6B,EAAE5oB,IAAIS,EAAE5S,EAAE+6B,EAAE5oB,GAAG,IAAI3M,EAAE2M,EAAEypM,KAAKp2M,EAAEg2M,MAAuBxT,GAAhBhoM,EAAE49K,GAAGp4K,EAAEk2M,KAAK,KAAWirF,MAAMi4D,KAAKhsV,GAAG4vR,IAAIvkS,GAAG2vV,IAAI3tV,EAAEyD,EAAE8rB,EAAE,CAAC,CAC9S,SAASqvU,IAAI5+V,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAsB,IAApBuxB,EAAEgnJ,IAAO0oF,MAAHx7P,EAASwgQ,IAAS1+P,EAAE,IAAIogK,GAAIzzJ,EAAElS,GAAGuF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,SAAyB48B,GAAhB/6B,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAQlE,IAAQ4iQ,MAAoC,OAA/BtxP,EAAE4tK,GAAGgoB,IAAIxoM,GAAGioM,MAAM62J,SAAmBtvU,EAAE0jH,EAAK3/H,KAAKugB,IAAItE,EAAE,GAAGxvB,EAAEH,EAAEsS,EAAEqd,EAAE0gM,GAAIjwN,EAAEA,EAAE86B,EAAEr3B,IAAQ1D,EAAEH,EAAEsS,GAAG2uJ,GAAIluJ,GAAGA,IAAI3U,EAAEiyN,GAAIjwN,EAAEA,EAAE86B,EAAEr3B,GAAG1D,EAAEH,EAAEsS,EAAEqd,EAAEvxB,EAAE+B,EAAEA,EAAEA,IAAIA,EAAEH,EAAEsS,EAAEqd,EAAEvxB,EAAE+B,EAAEA,EAAEA,GAAGwvB,EAAExvB,EAAEH,EAAEsS,EAAEnS,EAAEG,EAAEgS,EAAEnS,EAAEA,EAAEC,EAAEyD,EAAEq3B,CAAE,CAC/S,SAASk6T,IAAIh1V,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAQ0D,EAAMpC,EAA0K,IAA9EwuQ,GAAbxuQ,EAAE,IAAImoV,IAAnBsV,IAAvCllB,IAArBmlB,IAAI7sV,GAAE,GAAM,IAAkBouK,GAAIC,GAAG+3B,IAAIpmM,GAAGqoJ,MAAMk9J,QAAkBz3T,EAAEA,IAAsBkS,GAAGykL,GAAI32L,EAAEkS,EAAEA,EAAE7Q,GAAGkuB,EAAEA,EAAEA,EAAEA,EAAErxB,QAAQmD,GAAM6Q,EAAEtS,IAAIsS,EAAEtS,EAAE,IAAI06L,GAAIrN,IAAG/6K,EAAE,EAAE,IAAazO,EAAE,IAAIs7K,GAAf7sK,EAAEtS,GAAoB6D,EAAE8B,GAAG9B,EAAEzF,EAAEihL,MAAwBl/K,EAAEi/V,IAAIh/V,EAArB29K,GAAGwB,IAAI17K,GAAG,MAAe,EAAK,EAAE,GAAG8rB,EAAEA,EAAEA,EAAEA,EAAErxB,QAAQ6B,EAAE,OAAOsB,CAAC,CAChT,SAASmwU,IAAIxxU,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAUvH,EAAEoU,EAAE/Q,EAAoC,GAAhCrB,EAAED,GAAGC,EAAED,EAAEg4F,GAAGxyF,GAAuB+2T,IAAIt8T,EAAEuvB,EAAxBouJ,GAAGp4K,EAAE81M,GAAG,GAAG,KAAiB,GAAQ,OAAO,EAA6B,GAAGihH,IAAIt8T,EAAED,EAA/B49K,GAAGp4K,EAAE81M,GAAG91M,EAAE05K,KAAK,GAAG,KAAiB,GAAO,OAAO,EAAK,GAAGyzJ,IAAI1yU,EAAEuF,GAAI,OAAO,EAAK,IAAIlE,EAAEkE,EAAEo2M,KAAKt6M,EAAEk6M,MAAuB,IAAhBnpM,EAAEurK,GAAGt8K,EAAEo6M,KAAK,IAAQz9M,EAAEkU,EAAEypM,KAAK39M,EAAEu9M,MAAuB,GAAGghH,IAAIv8T,EAAEoS,EAAvBurK,GAAG3/K,EAAEy9M,KAAK,KAAmB,OAAO,EAAO,OAAO,CAAK,CAEjT,SAASwjJ,IAAIj/V,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAsE,IAApE8B,EAAEo4K,GAAG0+I,IAAInqT,GAAGutK,MAAMG,MAAM+7B,KAAKF,KAAK,IAAI3gL,EAAE6iJ,GAAG0+I,IAAInqT,EAAEwtK,KAAKi8B,KAAKF,KAAK,IAAQh4M,EAAE,IAAIkiK,GAAI3lK,EAAEoS,GAAG3O,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAQ,CAAiB,IAAhByU,EAAEgrK,GAAGC,GAAIn6K,GAAG,IAAwB,GAAdkP,EAAEpN,EAAEgqB,EAAErxB,QAAWk0P,GAAIz0E,GAAG0pB,GAAI10L,EAAEpN,EAAE,GAAG,IAAIA,GAAG,KAAoB,GAAdoN,EAAEA,EAAE4c,EAAErxB,QAAWm0P,GAAI10E,GAAG0pB,GAAI10L,EAAEA,EAAE,GAAG,IAAImoB,EAAG,CAACvL,GAAGw4K,GAAI71L,GAAG81L,MAAM8hI,KAAK,MAAM/pU,GAAGgoM,GAAI71L,GAAG81L,MAAM+hI,KAAK,KAAK,CAClT,SAASg1B,IAAI/+V,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAE,GAA0C,KAArCvF,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,GAAGhC,EAAM,OAAOm1S,GAAInzS,GAA8I,GAAtID,EAAE49K,GAAG0O,KAAMrsL,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,GAAG,GAAG,KAAQkS,IAAGm1M,MAAMtnN,EAAEC,IAAID,EAAEC,EAAE,IAAIg/K,GAAI7qJ,IAAGp0B,EAAE,IAAIA,EAAEC,IAAIuiN,GAAIxiN,EAAE,GAAGyiN,GAAIziN,EAAE,GAAGsiN,GAAItiN,EAAE,GAAGuiN,GAAIviN,EAAE,IAAMwvB,EAAyC,KAAlCvvB,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAA7BuF,EAAiCvF,EAAEA,EAASuF,EAAEvH,EAAE,GAAGy8U,IAAIl1U,EAAEA,EAAEvH,EAAE,GAAI,OAAO+B,CAAE,CAElT,SAASm/V,IAAIl/V,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAI+6B,EAAEnoB,EAAElP,EAAEzF,EAAY,IAAVuxB,EAAE,IAAI6iJ,GAAQt3I,EAAE,IAAI6qI,GAAI3lK,EAAEkS,GAAG4oB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAQ,CAA4B,IAAXF,GAAE,EAAK+B,EAAE,EAAM0D,EAAE,IAAIkiK,GAAnCgY,GAAGC,GAAI9iJ,GAAG,IAA+B96B,GAAGyD,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAyB,QAAhByU,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAAapC,EAAEsR,GAAG,KAAK,IAAI5S,EAAE,KAAK,EAAE0iQ,GAAIlzO,EAAE5c,GAAG,MAAM,KAAK,EAAEosU,IAAIpsU,EAAET,GAAG,QAAQqd,EAAErd,GAAGqd,EAAEA,GAAG4vU,IAAI5vU,EAAExvB,EAAE/B,GAAE,EAAMkU,GAAGlU,GAAE,EAAM+B,EAAE,EAAIwvB,EAAErd,GAAGqd,EAAEA,GAAG4vU,IAAI5vU,EAAExvB,EAAE/B,GAAE,EAAKkU,EAAE,CAAC,CAEnT,SAAS4xT,IAAI9jU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAM,IAAJ8rB,EAAE,EAAM9rB,EAAE,IAAIkiK,GAAIzzJ,GAAGzO,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAQ,CAAmC,IAAlCyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,IAAIivQ,GAAI1yQ,EAAEkS,EAAElS,EAAED,EAAE4S,EAAEvP,IAAQmC,EAAE,IAAIisQ,GAAI7+P,EAAET,GAAG8yM,GAAIz/M,EAAEvF,IAAIglN,GAAIz/M,EAAE2M,KAAyC4oB,EAAEo/J,GAAIl6L,EAAE2S,IAA5C5S,EAAE49K,GAAGqnC,GAAIz/M,EAAEvF,GAAG49K,GAAIr4K,EAAEvF,GAAG49K,GAAIr4K,EAAE2M,GAAG,KAAiBqd,EAAExvB,EAAEA,EAAEA,EAAEwvB,IAAQvvB,EAAED,EAAE4S,EAAEvP,KAAImsB,GAAGq+O,GAAI5tQ,EAAEkS,EAAE4oB,GAAG6nO,GAAI3iQ,EAAEA,EAAEg4M,GAAIl9K,KAAK,MAAOsnJ,GAAIpiL,EAAEA,IAAI6yQ,GAAI7yQ,EAAEkS,EAAEyrK,GAAG41D,GAAIvzO,EAAEA,GAAG,IAAIA,EAAG,CAAC,OAAOuvB,CAAC,CACnT,SAAS6vU,IAAIp/V,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAA4C,IAA1CmoB,IAAI5oB,EAAElS,IAAIkS,EAAElS,EAAE,IAAIs6L,GAAI/M,IAAGr7K,EAAE,GAAG,KAAKA,EAAElS,GAAGhC,EAAMuH,EAAE,IAAIw5K,KAAM7sK,EAAElS,IAAIkS,EAAElS,EAAE,IAAIs6L,GAAI/M,IAAGr7K,EAAE,GAAG,KAAKA,EAAElS,IAAIuF,EAAEA,GAAGA,EAAEvH,EAAEihL,MAAgE,MAAzDl/K,EAAE49K,GAAGwB,IAAI55K,GAAG,KAAQvF,IAAID,EAAEC,EAAE,IAAIs6L,GAAI/M,IAAGxtL,EAAE,GAAG,KAAKA,EAAEC,GAAGhC,IAAO88B,GAAGskU,IAAIp/V,EAAED,GAAE,IAAQ,GAAGwvB,EAAY,IAAT5c,EAAEmrM,GAAI5rM,GAASS,GAAGmoB,KAAKnoB,EAAE3S,IAAI2S,EAAE3S,EAAE,IAAIs6L,GAAI/M,IAAG56K,EAAE,GAAG,KAAKA,EAAE3S,GAAGhC,EAAE2U,EAAEmrM,GAAInrM,GAAI,OAAOmoB,CAAC,CACpT,SAAS2/S,IAAIz6U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,OAAG96B,EAAEmkT,MAAMpkT,EAAE,KAAKwF,EAAEvF,EAAEokT,KAAKpkT,EAAE6sB,OAAO9sB,EAAEC,EAAE8sB,GAAG9sB,EAAE0lV,GAAGxzU,GAAG,OAAOqd,EAAEvvB,EAAEskT,GAAG,EAAExpR,EAAEk+R,IAAIh5T,EAAEkS,GAAG,KAAKA,EAAE3M,GAAMvF,EAAE+mV,MAAS,MAAHjsT,GAAS/6B,EAAEC,EAAEmoV,GAAGrtT,EAAE/6B,KAAuBA,EAAEu+N,GAAG/uM,GAAGxvB,EAAEisL,MAAvBhsL,EAAEu6P,GAAGhrO,GAAiCxvB,GAAgBA,EAAEu+N,GAAG/uM,GAAGxvB,EAAEisL,MAAvBhsL,EAAEu6P,GAAGhrO,GAA+BuL,IAAOA,EAAEk+R,IAAIh5T,EAAEkS,GAAMlS,EAAE+mV,MAAS,MAAHjsT,IAAS/6B,EAAEC,EAAEmoV,GAAGrtT,EAAE,QAAW/6B,EAAEisL,KAAYlxJ,EAAE,CAEpT,SAAS64Q,MAAMA,IAAIj/J,EAAIm/J,IAAI,IAAIjiG,GAAI,WAAW,GAAGkiG,IAAI,IAAIliG,GAAI,iBAAiB,GAAGmiG,IAAI,IAAIniG,GAAI,aAAa,GAAGoiG,IAAI,IAAIpiG,GAAI,aAAa,GAAGqiG,IAAI,IAAIriG,GAAI,iBAAiB,GAAGsiG,IAAI,IAAItiG,GAAI,oBAAoB,GAAGuiG,IAAI,IAAIviG,GAAIk3I,IAAI,GAAG10C,IAAI,IAAIxiG,GAAI,gBAAgB,GAAGyiG,IAAI,IAAIziG,GAAI,aAAa,GAAG0iG,IAAI,IAAI1iG,GAAI,aAAa,EAAE,CACrT,SAASwpD,IAAIp7P,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAA6D,IAA3Dv1B,EAAE,IAAI+sK,GAAIpgK,EAAE,IAAIs3N,KAAMxpO,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAI/M,IAAGvtL,EAAE,GAAG,KAAKA,EAAEA,IAAQD,EAAE,IAAI+uO,GAAG7hB,GAAG+oF,IAAIh2S,GAAGA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAAwB8pL,GAAGwC,MAAtB98J,EAAEouJ,GAAGwtC,GAAGprN,GAAG,KAAmBmS,IAAIqd,EAAErd,EAAE,IAAI64M,GAAI19B,IAAG99J,EAAE,EAAE,IAAIA,EAAErd,GAAG,GAAG,OAAM4oB,EAAEkwL,IAAIrtC,GAAG0O,KAAM98J,EAAEA,IAAIA,EAAEA,EAAE,IAAIw7L,GAAI19B,IAAG99J,EAAE,EAAE,IAAIA,EAAEA,GAAG,GAAG,KAAKrd,EAAElS,EAAEmH,GAAG2zB,KAAKv1B,EAAEgqB,EAAEhqB,EAAEgqB,EAAErxB,QAAQ48B,IAAS,OAAOv1B,CAAC,CACrT,SAAS06S,IAAIjgT,GAAG,IAAIkS,EAAInS,EAAEwF,EAAEu1B,EAAEnoB,EAA6D,IAA3DmoB,EAAE,IAAI27I,GAAIvkK,EAAE,IAAIs3N,KAAMxpO,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAI/M,IAAGvtL,EAAE,GAAG,KAAKA,EAAEA,IAAQuF,EAAE,IAAIupO,GAAG7hB,GAAG+oF,IAAIh2S,GAAGA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG7lN,IAAwBskL,GAAGwC,MAAtBtsL,EAAE49K,GAAGwtC,GAAG5lN,GAAG,KAAmB2M,IAAInS,EAAEmS,EAAE,IAAI64M,GAAI19B,IAAGttL,EAAE,EAAE,IAAIA,EAAEmS,GAAG,GAAG,OAAMS,EAAEq4M,IAAIrtC,GAAG0O,KAAMtsL,EAAEwvB,IAAIxvB,EAAEwvB,EAAE,IAAIw7L,GAAI19B,IAAGttL,EAAE,EAAE,IAAIA,EAAEwvB,GAAG,GAAG,KAAKrd,EAAElS,EAAEmH,GAAGwL,IAAOmoB,EAAE96B,EAAE65N,GAAGlnN,EAAEmoB,IAAa,OAAOA,CAAC,CAItT,SAASukU,IAAIr/V,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAIoN,EAAMmrM,GAAI99M,KAAW2S,EAAEgrK,GAAG4qB,IAAIr2L,GAAGmrJ,MAAM4nL,MAAM,KAAKlqI,GAAGzC,IAAIt4M,EAAE8hS,QAAQ/mF,IAAIu6E,MAAMj0E,OAAO+pF,IAAIprS,EAAE8hS,IAAI1gF,KAAQjW,KAAiE5lM,EAAE+5V,IAA7D,IAAI79K,GAAIq8B,GAAI99M,IAAO,IAAIqwN,GAAKvS,GAAI99M,GAAQ,IAAIyhL,GAAIq8B,GAAI99M,IAAjB,KAAqBA,IAAa,GAAM,GAAM4nM,GAAIj1L,GAAG2kN,MAAMmyD,OAAMl6P,EAAEouJ,GAAG4qB,IAAIr2L,EAAEyyU,KAAK,IAAK3kV,EAAEizI,EAAK3/H,KAAKugB,IAAItuB,EAAEvF,EAAEuvB,EAAEvvB,GAAGuvB,EAAErd,EAAE+gI,EAAK3/H,KAAKugB,IAAItuB,EAAE2M,EAAEqd,EAAErd,GAAE,CAEtT,SAASs2R,MAAMA,IAAI9zJ,EAAIg0J,IAAI,IAAIvkD,GAAIujD,IAAI,GAAGjoH,MAAMM,KAAKA,KAAK4oH,IAAI,IAAIxkD,GAAIg1E,IAAI,EAAEtyH,IAAIA,KAAK+hG,IAAI,IAAIzkD,GAAI+0E,IAAI,EAAEx5I,IAAIA,KAAKmpH,IAAI,IAAI1kD,GAAIi1E,IAAI,EAAEx5I,IAAIA,KAAKkpH,IAAI,IAAI3kD,GAAI,oBAAoB,EAAEvkE,IAAIG,KAAKgpH,IAAI,IAAI5kD,GAAI,oBAAoB,EAAEpkE,IAAIL,KAAKspH,IAAI,IAAI7kD,GAAI,oBAAoB,EAAEt9C,IAAIjnB,KAAKqpH,IAAI,IAAI9kD,GAAI,oBAAoB,EAAEzkE,IAAImnB,IAAI,CACtT,SAAS0qC,MAAMA,IAAI78F,EAAIo3L,IAAIvtJ,GAAGC,GAAG8U,IAAG,GAAG+4H,IAAI,GAAG,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,IAAI,KAAK,MAAM,OAAO,QAAQ,SAAS,UAAU,WAAW,YAAY,aAAc,CAACv4S,EAAE,QAAQd,EAAE,OAAOvP,EAAE,GAAG,CAACqQ,EAAE,OAAOd,EAAE,OAAOvP,EAAE,IAAI,CAACqQ,EAAE,QAAQd,EAAE,QAAQvP,EAAE,KAAK,CAACqQ,EAAE,OAAOd,EAAE,QAAQvP,EAAE,MAAM,CAACqQ,EAAE,QAAQd,EAAE,QAAQvP,EAAE,UAAUwvI,EAAK3/H,KAAKyd,IAAI,GAAG,GAAG,CACtT,SAASmrS,IAAIl8T,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,GAAe,GAAZ3S,EAAEuvB,EAAErxB,OAAW,OAAO,IAAIs4M,GAAIwB,GAAI,GAAGA,GAAI,IAA4D,IAAxDzoL,GAAGkuL,GAAI,EAAEz9M,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAE,GAAG,KAAKnd,EAAEO,EAAE,EAAEmoB,EAAE5oB,EAAES,EAAE5S,EAAEmS,EAAES,EAAE,EAAQA,EAAE3S,EAAEuvB,EAAErxB,OAAO,GAAGqxB,EAAE5c,EAAEmoB,GAAOvL,GAAGkuL,KAAL9qM,EAAW3S,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAE5c,GAAG,KAAKP,EAAM,IAAJ7M,EAAEoN,EAAQpN,EAAEvF,EAAEuvB,EAAErxB,OAAO,GAAGqxB,EAAE5c,EAAE5S,KAAKwF,EAAEgqB,GAAGkuL,GAAI9qM,EAAE3S,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAE5c,GAAG,KAAKP,EAAE,OAAO,IAAIokM,GAAIwB,GAAIrlM,GAAGqlM,GAAIzyM,GAAG,CACvT,SAASyjU,IAAIhpU,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAwE,IAAtE8nB,EAAE5oB,EAAEqd,EAAErxB,OAAUu/M,GAAIluL,EAAErd,EAAEqd,EAAErxB,QAAwBuF,GAArCkP,EAAqBgrK,GAAGzrK,EAAEqd,EAAEA,GAAG,MAAUvvB,EAAEE,EAAEF,EAAE8T,EAAEnB,EAAE4c,EAAEvc,EAAE,EAAMZ,EAAEO,EAAE4c,EAAEnd,GAAGO,EAAEmoB,EAAE1oB,IAAI,CAAC,GAAG3O,GAAGzD,EAAEA,EAAEoS,GAAI,OAAOA,EAAkB,IAAhB/Q,EAAErB,EAAEA,EAAEoS,GAAGpU,EAAE,KAASuH,EAAEgqB,EAAE,EAAEhqB,EAAEu1B,EAAEv1B,IAAQk4M,GAAIl4M,EAAE2M,EAAEqd,EAAErxB,SAAb6B,EAAqB49K,GAAGzrK,EAAEqd,EAAEhqB,GAAG,MAAQgqB,GAAGnd,GAAGrS,EAAE+6B,GAAG1oB,IAAIpU,EAAE+B,GAAK/B,IAAIqD,EAAE4xI,EAAK3/H,KAAKugB,IAAIxyB,EAAErD,EAAEgC,EAAEE,EAAEF,IAAOqB,EAAE2R,IAAGc,EAAE1B,EAAEY,EAAE3R,EAAE,CAAC,OAAOyS,CAAC,CAGxT,SAAS4oU,IAAI18U,EAAEkS,GAAG,IAAIqd,EAAS,OAAPA,EAAE,KAAYrd,EAAES,GAAG,KAAK,EAAE3S,EAAEuF,EAAEugM,IAAI/lC,MAAMw/L,QAAQhwU,EAAEouJ,GAAG39K,EAAEuF,EAAEygM,GAAGu5J,KAAK,MAAM,MAAM,KAAK,EAAEv/V,EAAEuF,EAAEugM,IAAI/lC,MAAMy/L,QAAQjwU,EAAEouJ,GAAG39K,EAAEuF,EAAEygM,GAAGw5J,KAAK,MAAM,MAAM,KAAK,EAAEx/V,EAAEuF,EAAEugM,IAAI/lC,MAAM0/L,QAAQlwU,EAAEouJ,GAAG39K,EAAEuF,EAAEygM,GAAGy5J,KAAK,MAAM,MAAM,KAAK,EAAEz/V,EAAEuF,EAAEugM,IAAI/lC,MAAM2/L,QAAQnwU,EAAEouJ,GAAG39K,EAAEuF,EAAEygM,GAAG05J,KAAK,MAA2C,OAAnCnwU,IAAIA,EAAEouJ,GAAG39K,EAAEuF,EAAEygM,IAAIjmC,MAAM4/L,MAAM,MAAapwU,CAAC,CAC1T,SAASqwU,IAAI5/V,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAEu1B,EAAIr3B,EAAEzF,EAAEoU,EAAI0B,EAAc,IAAZ5B,EAAE9O,EAAE,EAAE03B,EAAE5oB,EAAEqd,EAAMzb,EAAEk3S,IAAI94S,GAAG8nQ,KAAMG,MAAMx+D,KAAK7nM,EAAEynM,MAAuB,IAAIh2M,EAAE,IAAIogK,GAAxBgY,GAAG7pK,EAAE2nM,KAAK,IAAoB9oM,GAAGpN,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAoCgU,IAAXE,EAAdurK,GAAGC,GAAIr4K,GAAG,IAAQxF,EAAE/B,IAAaoU,EAAEmd,EAAOnsB,GAAG03B,EAAE13B,KAAGK,EAAEq3B,EAAE13B,EAAE,IAAQmsB,EAAErd,EAAEqd,EAAErxB,SAAQF,EAAE,IAAIk7O,GAAI3pN,IAAKnsB,EAAEK,EAAEsyK,GAAIxmJ,EAAErd,EAAElU,GAAGs0P,GAAIlgP,EAAEpU,IAA4Bs0P,GAAIlgP,EAAxBpU,EAAE2/K,GAAG0pB,GAAI93K,EAAErd,EAAEzO,GAAG,KAAam8V,IAAI5/V,EAAEoS,EAAEmd,GAAM,CAC1T,SAAS8rO,IAAIr7P,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAU,IAARuH,EAAEgqB,EAAEuL,EAAE,EAAMr3B,EAAE,IAAIkiK,GAAIzzJ,GAAGzO,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAyBktS,IAAhBz4R,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAAW46J,MAAM2mK,KAAKhtH,GAAIzyM,MAAMvH,EAAEo9P,IAAIzoP,GAAG5S,EAAEkzI,EAAK3/H,KAAKuf,MAAMlgB,EAAEP,EAAEO,EAAEmoB,EAAE,EAAEnoB,EAAE3U,EAAE2U,EAAEA,EAAE,IAAG5S,GAAGA,EAAE,EAAEgsU,IAAI,GAAI,mBAAoBhsU,EAAE8/V,IAAI/6I,GAAI9mN,EAAEgC,EAAEkS,GAAGnS,GAAG8/V,KAAK9/V,EAAE+/V,IAAIh7I,GAAI9mN,EAAEgC,EAAED,GAAGA,GAAG+/V,KAAK//V,EAAEggW,IAAIj7I,GAAI9mN,EAAEgC,EAAEuvB,GAAGxvB,GAAGggW,KAAKj7I,GAAI9mN,EAAEgC,EAAEA,GAAG86B,EAAEugO,IAAIr7P,EAAEhC,EAAE88B,GAAG,OAAOv1B,CAAC,CAC1T,SAASw9M,MAAc,IAAI/iN,EAAiP,IAA7P+iN,IAAIruE,EAAUqvM,IAAI,IAAI3wE,GAAI,EAAE,GAAG8zE,IAAI,IAAI9zE,GAAI,EAAE,IAAI8a,IAAI,IAAI9a,GAAI,EAAE,GAAG+qC,IAAI,IAAI/qC,IAAK,EAAE,GAAGgrC,IAAI7/H,GAAGC,GAAG6U,IAAG,GAAGQ,IAAI,GAAG,EAAE,CAACq6F,IAAI61D,IAAI,IAAI3wE,GAAI,EAAE,GAAG,IAAIA,GAAI,EAAE,GAAG,IAAIA,GAAI,EAAE,GAAG,IAAIA,GAAI,EAAE,GAAG,IAAIA,GAAI,EAAE,GAAG,IAAIA,GAAI,EAAE,GAAG,IAAIA,GAAI,EAAE,GAAG,IAAIA,GAAI,EAAE,GAAG8zE,MAAMjD,IAAIhmK,GAAGoV,IAAGQ,IAAI,GAAG,GAAG,EAAE,GAAO7zL,EAAE,EAAEA,EAAEikV,IAAI/lV,OAAO8B,IAAKikV,IAAIjkV,GAAGytR,IAAI90F,GAAI,EAAE34L,GAAI,CAC3T,SAASggW,IAAIhgW,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAInoB,EAAElP,EAAEzF,EAAEoU,EAA0J,IAAxJ3O,GAAGq2L,GAAIqwB,GAAInqN,EAAEgpL,KAAK,IAAIziB,GAAI,IAAItmB,MAAOw5C,IAAI2J,KAAMC,MAAM1wL,EAAE3S,EAAE86B,IAAI63P,KAAM7xE,OAAOnuM,EAAEk3K,GAAGl3K,EAAE,KAAKk+P,GAAGlzF,GAAGhrK,EAAE,MAAMk3K,GAAGl3K,EAAE,KAAKgrK,GAAGhrK,EAAE,KAAK3S,EAAE6pL,GAAGl3K,EAAE,IAAI,IAAImqK,GAAGnqK,GAAG,IAAIm4D,GAAGn4D,IAAQP,EAAEO,EAAEgpM,KAAKvpM,EAAEmpM,OAAOv9M,EAAE2/K,GAAGvrK,EAAEqpM,KAAK,KAAM77M,EAAEI,EAAEkS,EAAElS,EAAKhC,EAAE4B,EAAEsS,EAAPzO,EAASyO,EAAEA,GAAGnS,EAAEmS,EAAElU,EAAEkC,EAAEgS,GAAG,EAAG3M,EAAS2M,EAAEA,EAAUA,EAAEA,EAAEnS,EAAEmS,EAAElU,EAAEkC,EAAEgS,EAAGA,EAAElS,GAAGhC,EAAEkC,EAAEF,EAAEuvB,CAAE,CAC3T,SAASu1O,IAAI9kQ,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAkE,IAAhE7M,GAAGxF,EAAEwvB,EAAExvB,EAAEC,GAAG,EAAEyhM,GAAIvvL,EAAEE,GAAGwzN,GAAI1zN,EAAEE,EAAE7M,GAAGk8L,GAAIlyK,EAAEhqB,GAAGqgO,GAAIr2M,EAAEhqB,EAAEA,GAAG6M,EAAE,IAAIy2K,GAAQplL,EAAE,IAAIkiK,GAAI3lK,EAAE86B,GAAGr3B,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAgCmuU,IAAIj6T,EAAEF,EAAZlU,EAAf2/K,GAAGC,GAAIn6K,GAAG,KAASzD,GAAaqsU,IAAIj6T,EAAEmd,EAAEvxB,GAAG,IAAI2U,EAAE,IAAIgzJ,GAAI3lK,EAAEqB,GAAGsR,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAgCmuU,IAAIj6T,EAAEF,EAAZlU,EAAf2/K,GAAGC,GAAIjrK,GAAG,KAAST,GAAam6T,IAAIj6T,EAAEmd,EAAEvxB,GAA0C,OAAvCoU,EAAEF,GAAG,EAAEE,EAAEpS,GAAGspP,GAAIp3O,EAAElS,EAAEgU,GAAG5B,EAAEpS,GAAGspP,GAAItpP,EAAEgU,EAAEub,GAAUnd,CAAC,CAC3T,SAASurU,IAAI39U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAE,IAAI6+P,GAAGpwP,GAAG,CAAkF,IAA9B2vR,IAAnDp+R,EAAEyiS,GAAI32Q,GAAGs6J,GAAG33K,EAAE,IAAIyrK,GAAGzrK,EAAE,IAAI+sK,KAAKwkF,GAAGvxP,EAAEypM,OAAO37M,EAAEA,EAAE,GAAS0+V,IAAI,GAAG/rV,EAAE,IAAIy5I,GAAItxH,EAAE,KAASv1B,EAAE2M,EAAEypM,KAAKp2M,EAAEg2M,MAAOx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,IAAI9oM,EAAEwzF,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,CAACxrK,EAAE,IAAI+6J,GAAI3tK,MAAS+6B,IAAGitK,GAAIjtK,GAAG4rQ,MAAMu5D,KAAKlgW,GAAGgoM,GAAIhoM,EAAEmgW,IAAIplU,GAAMglP,GAAI//Q,IAAI+/Q,GAAIhlP,KAAIitK,GAAIjtK,EAAEqlU,IAAIpgW,GAAGgoM,GAAIhoM,EAAEqgW,IAAItlU,KAAIA,EAAE/6B,EAAEwiS,IAAI9+R,GAAGk6U,IAAI39U,EAAE2S,EAAE4c,EAAE,CAAC,CAC3T,SAAS2rK,IAAIl7L,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAiF,IAA/E8rB,EAAEvvB,EAAEhC,EAAEkU,EAAElS,EAAEJ,EAAE6D,EAAE8rB,EAAExvB,EAAEC,EAAE86B,IAAIw5O,KAAMG,KAAMhxQ,IAAI8rB,EAAEvvB,EAAEA,EAAEuF,EAAE2M,GAAG,EAAGlS,EAAE86B,GAAG45O,MAAMjxQ,GAAG8rB,EAAEvvB,EAAEA,EAAEuF,EAAE2M,GAAO3M,EAAE,IAAIogK,GAAI3lK,EAAED,GAAGwF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAQ,CAAsD,OAApCyU,GAAjB5S,EAAE49K,GAAGC,GAAIr4K,GAAG,MAASg6L,MAAKzkK,EAAE,IAAI8tJ,IAAM12K,EAAEzO,EAAEA,GAAGkP,EAAET,EAAElS,EAAEA,EAASA,EAAEkS,EAAES,GAAG,KAAK,EAAEmoB,EAAE96B,EAAEuvB,EAAEA,EAAErd,EAAEA,EAAE,MAAM,KAAK,EAAE4oB,EAAE96B,EAAEuvB,EAAEA,EAAErd,EAAEA,GAAGqd,EAAErd,EAAES,EAAE3S,GAAG,EAAE,MAAM,KAAK,EAAE86B,EAAE96B,EAAEuvB,EAAEA,EAAEA,EAAErd,EAAEA,EAAEqd,EAAE5c,EAAE3S,EAAGD,EAAEkuD,GAAGnzB,EAAE,CAAC,CAC5T,SAASqgK,IAAIn7L,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAiF,IAA/E8rB,EAAEvvB,EAAEhC,EAAEkU,EAAElS,EAAEJ,EAAE6D,EAAE8rB,EAAEA,EAAEvvB,EAAEkS,IAAI6hQ,KAAMG,KAAMzwQ,IAAI8rB,EAAErd,EAAElS,EAAEuF,EAAEvF,GAAG,EAAGA,EAAEkS,GAAGiiQ,MAAM1wQ,GAAG8rB,EAAErd,EAAElS,EAAEuF,EAAEvF,GAAOuF,EAAE,IAAIogK,GAAI3lK,EAAED,GAAGwF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAQ,CAAsD,OAApCyU,GAAjB5S,EAAE49K,GAAGC,GAAIr4K,GAAG,MAASg6L,MAAKzkK,EAAE,IAAI8tJ,IAAM5oL,EAAEyD,EAAEA,GAAGkP,EAAE3S,EAAEA,EAAEA,EAASA,EAAE86B,EAAEnoB,GAAG,KAAK,EAAEmoB,EAAE5oB,EAAEqd,EAAExvB,EAAEmS,EAAEnS,EAAE,MAAM,KAAK,EAAE+6B,EAAE5oB,EAAEqd,EAAExvB,EAAEmS,EAAEnS,GAAGwvB,EAAEvvB,EAAE2S,EAAET,GAAG,EAAE,MAAM,KAAK,EAAE4oB,EAAE5oB,EAAEqd,EAAExvB,EAAEwvB,EAAEvvB,EAAEkS,EAAElS,EAAE2S,EAAET,EAAGnS,EAAEkuD,GAAGnzB,EAAE,CAAC,CAC5T,SAASulU,IAAIrgW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAI3U,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEmB,EAAEkuB,EAAEvvB,EAAEuvB,EAAE5c,EAAE4c,EAAEvvB,EAAEuvB,EAAEA,EAAEvvB,EAAEkS,EAAuBtS,GAArBk7B,EAAE6iJ,GAAG+5B,GAAInoL,EAAEA,EAAErd,GAAG,MAAS4oB,EAAE56B,EAAE46B,EAAE96B,EAAEhC,EAAE,IAAIi3M,GAAI5zM,EAAEzB,GAAGkU,EAAE,IAAImhM,GAAItiM,EAAEzS,GAAGqF,EAAElE,EAAEkuB,EAAEnsB,IAAImC,GAAGvF,EAAEuvB,GAAkBnd,EAAE,IAAI6iM,GAArB1vM,GAAGgqB,EAAE6hK,EAAE7hK,EAAEpe,EAAEnR,EAAEkS,EAActS,GAAGoT,EAAE,IAAIiiM,GAAI1vM,EAAErF,GAAGizN,GAAIjhN,EAAElS,EAAEu+K,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC71L,EAAEoU,KAAOmd,EAAExvB,EAAEC,EAAEi/K,KAAK,IAAQl/K,EAAE,IAAIk1M,GAAI1vM,EAAEgqB,EAAErd,GAAG0zN,GAAI1zN,EAAElS,EAAED,IAAGozN,GAAIjhN,EAAElS,EAAEu+K,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC7gL,EAAEc,IAAI,CAC5T,SAASwsV,IAAItgW,GAAGylM,GAAIzlM,EAAE,IAAI6wU,IAAIjqJ,GAAIJ,GAAIG,GAAID,GAAI,IAAIh4B,GAAI6xM,KAAK,kBAAkB,yJAAyJ,IAAI1vM,MAAO0qG,GAAIv7P,EAAEugW,IAAIC,IAAIvyC,KAAK1yD,GAAIv7P,EAAEugW,IAAIE,IAAI,IAAIllG,GAAIv7P,EAAEugW,IAAIG,IAAI1oJ,GAAI,IAAIujD,GAAIv7P,EAAEugW,IAAII,IAAIlyC,IAAI,CAC9T,SAAS/4F,MAAc,IAAI11N,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAuD,IAA7E46L,IAAIhhF,EAAoBigL,IAAI12I,GAAGqS,IAAGokI,IAAI,GAAG,IAAI,GAAG,GAAG/+F,IAAI13C,GAAGo3C,IAAGC,IAAI,GAAG,GAAG,GAAG,GAAOpjN,EAAE,EAAEA,EAAE,IAAIA,IAAKyiT,IAAIziT,IAAI,EAAE,IAAIqd,EAAE,GAAGA,GAAG,GAAGA,IAAKolS,IAAIplS,GAAGA,EAAE,IAAI,IAAI,GAAG,IAAIxvB,EAAE,GAAGA,GAAG,GAAGA,IAAK40T,IAAI50T,GAAGA,EAAE,GAAG,IAAI,IAAI,GAAG,IAAIwF,EAAE,IAAIA,GAAG,GAAGA,IAAKovT,IAAIpvT,GAAGA,EAAE,GAAG,IAAI,IAAI,GAAG,IAAIu1B,EAAE,EAAEA,EAAE,GAAGA,IAAI66L,IAAI76L,GAAG,GAAGA,EAAE2hK,IAAI,IAAIz8L,EAAE,GAAGA,GAAG,GAAGA,IAAI21N,IAAI31N,GAAG,GAAGA,EAAE,GAAGy8L,GAAG,CAC9T,SAAS8/H,IAAIv8T,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAkG,OAAhGoC,EAAEyO,EAAElU,EAAEgC,EAAE2S,EAAE,EAAE3U,EAAEuxB,EAAEvxB,EAAEgC,EAAE2S,EAAE,EAAEP,EAAEF,EAAEE,EAAEpS,EAAE2S,EAAE,EAAEtR,EAAEkuB,EAAEnd,EAAEpS,EAAE2S,EAAE,EAAEmoB,EAAE5oB,EAAES,EAAE3S,EAAE2S,EAAE,EAAEA,EAAE4c,EAAE5c,EAAE3S,EAAE2S,EAAE,EAAE5S,EAAEmS,EAAE4oB,EAAE96B,EAAE2S,EAAE,EAAEpN,EAAEgqB,EAAEuL,EAAE96B,EAAE2S,EAAE,EAAKlP,EAAEzF,EAAE2U,GAAG3U,EAAEyF,GAAG2O,EAAE/Q,EAAEkE,GAAGlE,EAAE+Q,IAAuBpU,EAAEyF,EAAEq3B,GAAGr3B,EAAEzF,GAAGqD,EAAE+Q,EAAErS,GAAGqS,EAAE/Q,IAAuBoC,EAAEzF,EAAE2U,GAAG3U,EAAEyF,GAAG2O,EAAE/Q,GAAGA,EAAE+Q,EAAErS,GAAuB/B,EAAEyF,EAAEq3B,GAAGr3B,EAAEzF,GAAGoU,EAAE/Q,EAAEkE,GAAGlE,EAAE+Q,GAA2B,CAG/T,SAASwuV,IAAI5gW,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAIoN,EAAE,IAAI3S,EAAEuvB,EAAE,CAA+B,GAA9B5c,EAAE,IAAI4/I,GAA8B,OAA1BrgJ,EAAEmzR,KAAQrlS,EAAE65N,GAAG75N,EAAEkS,GAAc,CAAC,IAAInS,EAAE,IAAIg/K,GAAIgnF,GAAI/lQ,IAAID,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAgC4K,GAATtkL,EAAEguV,IAAlBhkU,EAAEouJ,GAAGwB,IAAIp/K,GAAG,KAAkB,KAAKqoN,GAAIz1M,EAAEiuV,IAAIjjL,GAAGp4K,EAAE,MAAM0lL,GAAIt4K,EAAE4c,GAAGrd,EAAElS,EAAE0oN,GAAG1oN,GAASkS,EAAElS,EAAEi/K,IAAkB,EAlrChO,SAAaj/K,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAkB,IAAdgqB,EAAEouJ,GAAG39K,EAAE2S,EAAE,KAAS5S,EAAEC,EAAEhC,EAAE,EAAE+B,GAAG,IAAIA,EAAU,IAAPmS,EAAEqd,EAAExvB,GAAOwF,EAAE,EAAEA,EAAExF,IAAIwF,EAAU,GAAGs7V,IAAI7gW,EAAEkS,EAAdqd,EAAEhqB,IAAiB,CAACyzT,IAAIh5T,EAAED,GAAG,KAAK,CAAG,CAkrCgG+gW,CAAInuV,GAAG06O,GAAI16O,GAAG3S,EAAEuvB,EAAE,IAAIwvL,IAAKphC,GAAG0O,GAAIC,IAAKytD,KAAMC,KAAK95O,GAAG,IAAI,IAAIyS,EAAE3U,GAAG2U,EAAEA,GAAGw4O,GAAInrP,GAAGkS,IAAI,EAAE,CAAC,OAAOlS,EAAEuvB,CAAC,CAChU,SAASwxU,IAAI/gW,GAAG,IAAIkS,EAAE,GAAQ,IAALlS,EAAEuvB,EAAM,MAAM2jJ,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMg3K,QAAc,OAAN9uV,EAAElS,EAAEA,GAAY,KAAK,IAAIkS,EAAE,GAAG,MAAM,KAAK,IAAIA,EAAE,GAAG,MAAM,KAAK,IAAIA,EAAE,EAAE,MAAM,KAAK,GAAG,KAAK,IAAI,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,IAAI,KAAK,IAAI,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,QAAQ,MAAMghK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMi3K,QAAS,OAAO/uV,CAAC,CAChU,SAASw9N,IAAG1vO,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAI+6B,EAAE,GAAQ,GAAL96B,EAAE8T,GAAW,GAAL9T,EAAEgT,GAAW,GAALhT,EAAEyD,EAAM,MAAO,IAAI,GAAGzD,EAAEyD,GAAG2nR,KAAU,GAALprR,EAAEgT,GAAW,GAALhT,EAAE8T,EAAM,MAAO,uBAAuB,GAAG9T,EAAEyD,GAAG,IAAI,EAAG,MAAO,IAAIisO,IAAG8tB,GAAGx9P,IAAa,IAATuvB,EAAEvvB,EAAED,EAAE,GAAgB,GAALwvB,EAAEzb,GAAW,GAALyb,EAAEvc,GAAW,GAALuc,EAAE9rB,GAAM,CAAsC,GAA3B8rB,EAAE+9R,IAAG/9R,EAAb2/O,GAAGghE,MAAc,GAAMh+T,EAAE,GAAG+nL,GAAG09G,KAAc,GAALpoR,EAAEzb,GAAW,GAALyb,EAAEvc,GAAW,GAALuc,EAAE9rB,EAAoB,IAAbq3B,EAAE,EAAE5oB,EAAEhU,OAAY48B,EAAE,EAAEA,IAAK5oB,EAAE,IAAIA,EAAGnS,EAAEmS,EAAEnS,CAAC,CAAC,OAAOA,CAAC,CAKjU,SAASmhW,IAAIlhW,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAI,GAAGggQ,IAAIloG,KAAM,IAAIuzE,GAAG7hB,GAAGu5F,GAAIt0S,GAAGlS,EAAE27M,KAAK,IAAIpoE,OAAQvzI,EAAEA,EAAG,OAAQ,EAAE,IAAI0vU,IAAIx9T,EAAEqd,GAAI,OAAQ,EAAE,GAAG+yO,GAAG3kF,GAAG59K,EAAEq8M,GAAGlqM,GAAG,KAAM,OAAO,EAAM,IAAJ3M,EAAE,EAAMoN,EAAEgrK,GAAG59K,EAAEq8M,GAAGlqM,GAAG,IAAIypM,KAAKhpM,EAAE4oM,MAAM,CAAuD,IAAO,IAAtB93M,EAAEy9V,IAAIlhW,GAA7C86B,EAAE6iJ,GAAGhrK,EAAE8oM,KAAK,KAAQlsL,EAAEvxB,GAAGkU,EAAE4oB,EAAE/6B,EAAE/B,EAAE88B,EAAEvL,EAAEvxB,EAAYuxB,EAAExvB,IAAa,OAAQ,EAAuB,IAArBwF,EAAE0tI,EAAK3/H,KAAKugB,IAAItuB,EAAE9B,IAAQzD,EAAEuvB,EAAE,EAAG,OAAQ,CAAE,CAAC,OAAOhqB,EAAE,CAAC,CACnU,SAAS23N,IAAIl9N,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAE,GAAGs3M,GAAG7oM,KAAK6oM,GAAG/6M,GAAI,OAAO,EAAK,IAAI6pL,GAAG33K,EAAE,IAAK,OAAO,EAA0B,GAApBnS,EAAE49K,GAAGzrK,EAAE,IAAIzO,EAAEzD,EAAEi/K,KAAQl/K,EAAEk/K,MAAMx7K,EAAG,OAAO,EAAe,GAATkP,EAAE5S,EAAE47M,KAAQ37M,EAAEwlU,MAAM,IAAIj2S,EAAE,EAAEA,EAAE9rB,IAAI8rB,EAAsB,GAAnBhqB,EAAEvF,EAAEqyS,GAAG9iR,GAAGuL,EAAEnoB,EAAE8oM,KAAW,MAAHl2M,EAAW,MAAHu1B,GAASw3J,GAAG/sL,EAAEu1B,GAAI,OAAO,OAAa,IAAIvL,EAAE,EAAEA,EAAE9rB,IAAI8rB,EAAsB,GAAnBhqB,EAAEvF,EAAEqyS,GAAG9iR,GAAGuL,EAAEnoB,EAAE8oM,KAAQV,GAAGx1M,KAAKw1M,GAAGjgL,GAAI,OAAO,EAAQ,OAAO,CAAI,CACnU,SAASqmU,IAAInhW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAE,GAAGzD,EAAE86B,EAAE,EAAU,GAAP96B,EAAEs4O,KAAW,MAAHpmO,GAAS,IAAI4oB,EAAE,EAAEA,EAAE96B,EAAED,EAAE7B,SAAS48B,EAAY,GAATvL,EAAEvvB,EAAED,EAAE+6B,GAA6B,IAApB/6B,EAAE49K,GAAGpuJ,EAAE5c,EAAE,KAAKlP,EAAE8rB,EAAEvxB,EAAM2U,EAAE,EAAEA,EAAElP,IAAIkP,EAAU,GAAG2/K,GAAGpgL,GAAb3M,EAAExF,EAAE4S,IAAamoM,MAAO,OAAO,OAAc,IAAIhgL,EAAE,EAAEA,EAAE96B,EAAED,EAAE7B,SAAS48B,EAAY,GAATvL,EAAEvvB,EAAED,EAAE+6B,GAA6B,IAApB/6B,EAAE49K,GAAGpuJ,EAAE5c,EAAE,KAAKlP,EAAE8rB,EAAEvxB,EAAM2U,EAAE,EAAEA,EAAElP,IAAIkP,EAAU,GAAPpN,EAAExF,EAAE4S,GAAMooM,GAAG7oM,KAAK6oM,GAAGx1M,EAAEu1M,MAAO,OAAO,EAAU,OAAO,CAAK,CACnU,SAASsmJ,IAAIphW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAEkvR,IAAItyQ,EAAE,+CAA+C,GAAGvvB,EAAEA,EAAE,EAAED,EA8T9F,SAAaC,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAI+6B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAI2R,EAAEpT,EAAY,GAAVwS,EAAE,IAAIkgK,IAAQkgD,GAAIxyN,GAAGgoM,MAAMq6F,MAAO,OAAOjwR,EAAE,IAAIrS,EAAE49K,GAAG4qB,IAAIvoM,EAAEqiS,KAAK,IAAI1mF,KAAK57M,EAAEw7M,MAAuB8lJ,IAAhBnvV,EAAEyrK,GAAG59K,EAAE07M,KAAK,IAAUz7M,GAAGoS,EAAEmd,EAAEnd,EAAEmd,EAAErxB,QAAQgU,EAAE,IAAI4oB,EAAE,IAAI6qI,GAAI3lK,EAAEkS,GAAG4oB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAyB,IAAIuF,EAAE,IAAIkiK,GAAxBgY,GAAGC,GAAI9iJ,GAAG,IAAoB96B,GAAGyD,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,SAASyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAASpC,IAAI49P,MAAMC,OAAelhQ,EAAE2/K,GAAG4qB,IAAI51L,EAAEgvU,KAAK,OAAoBpvF,GAAVlxP,EAAE,IAAI03U,IAAUpmU,GAAuBgsP,IAAIt9P,EAAtBs8K,GAAG4qB,IAAI51L,EAAEo2L,KAAK,KAAa/1L,EAAE2qK,GAAG0pB,GAAIrpM,EAAEoU,EAAE,GAAG,IAAcigP,GAAVzyP,EAAE,IAAIirP,GAAUxpP,GAAG+wP,GAAIxyP,EAAEoT,IAAe,IAAIuc,EAAE,IAAIo2I,GAAIvzJ,GAAGmd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAyBo0P,GAAhBpgP,EAAEyrK,GAAGC,GAAIruJ,GAAG,IAAUouJ,GAAG0pB,GAAIrnM,EAAEkS,EAAElS,EAAEkS,EAAEqd,EAAErxB,OAAO,GAAG,KAAK,OAAOkU,CAAC,CA9T5bkvV,CAAIpvV,GA8ZpG,SAAalS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAA8G,IAA5GmsB,EAAEouJ,GAAG4qB,IAAIvoM,GAAGq9J,MAAMykI,MAAM,IAAInvR,EAAE3S,EAAE86B,EAAEA,EAAE96B,EAAED,EAAE0D,EAAEkP,EAAE3S,EAAE86B,EAAE5oB,EAAE4oB,EAAEvL,EAAEvxB,EAAE,EAAE88B,EAAE/6B,EAAEC,EAAEuvB,EAAErd,EAAE7Q,EAAEsR,EAAET,EAAE4oB,EAAE/6B,EAAE+6B,EAAE96B,EAAEA,EAAEuvB,EAAErd,EAAEE,EAAE,IAAIkgK,GAAIx+J,EAAE,IAAIw+J,GAAQ/sK,EAAE,IAAIogK,GAAIzzJ,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAQ,CAAiB,OAAhB6B,EAAE49K,GAAGC,GAAIr4K,GAAG,IAAWgqB,EAAE5c,GAAG,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE6mV,IAAIz5V,GAAG,MAAM,KAAK,EAAqBH,GAAnBoT,EAAE2qK,GAAG4qB,IAAIxoM,EAAE05V,KAAK,IAAUzmV,EAAEhT,EAAJ,EAAMD,EAAEH,EAAEI,EAAEyD,EAAE68K,GAAIC,GAAGgoB,IAAIxoM,GAAGioM,MAAMu5J,QAAQ3hW,EAAEgxS,GAAI7wS,GAAE,GAAK,GAAO,MAAM,KAAK,EAAqBqD,GAAnBlD,EAAEy9K,GAAG4qB,IAAIxoM,EAAE05V,KAAK,IAAUv5V,EAAEF,EAAJ,EAAMD,EAAEH,EAAEI,EAAEsgL,GAAIC,GAAGgoB,IAAIxoM,GAAGioM,MAAMu5J,QAAQn+V,EAAEwtS,GAAI7wS,GAAE,GAAK,GAAO4S,EAAE3S,EAAEizI,EAAK3/H,KAAKugB,IAAIlhB,EAAE3S,EAAED,EAAEH,EAAEI,EAAED,EAAEG,EAAEF,EAAE,GAAI,OAAO29K,GAAG4qB,IAAIxoM,GAAGioM,MAAMe,MAAM,IAAIp2L,GAAG,KAAK,EAAE5S,EAAEH,EAAEsS,EAAElU,EAAEoU,EAAEmd,EAAEnd,EAAEmd,EAAErxB,QAAQ6B,EAAE,MAAM,KAAK,EAAEA,EAAEH,EAAEsS,EAAE7Q,EAAEyS,EAAEyb,EAAEzb,EAAEyb,EAAErxB,QAAQ6B,EAAG,CAAC,OAAOwvB,EAAE5c,GAAG,KAAK,EAAE,KAAK,EAAEyvS,GAAIhwS,EAAEpS,GAAGoiT,GAAItuS,EAAE9T,GAAG,MAAM,KAAK,EAAEsiT,GAAIlwS,EAAEpS,GAAGsiT,GAAIxuS,EAAE9T,GAAI,CA9ZvjBwhW,CAAItvV,EAAEnS,GAwX7G,SAAaC,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAIlU,EAAEM,EAAEkD,EAA8F,IAA5FgP,EAAE,IAAImuM,GAAIl/M,EAAE,IAAIk/M,GAAIrgN,EAAE,IAAIqgN,GAAIn9M,EAAE,IAAIm9M,GAAIviN,EAAEsiL,GAAIC,GAAGgoB,IAAIr2L,GAAGmrJ,MAAM6tJ,QAAQpwR,EAAEwlJ,GAAIC,GAAGgoB,IAAIr2L,EAAEm0O,OAAW5iP,EAAE,IAAIkiK,GAAIp2I,GAAG9rB,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAqD,GAA5CyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAAIqQ,EAAE6pK,GAAG4qB,IAAI51L,GAAGq1L,MAAMe,MAAM,OAAWtpB,MAAMM,KAAkB,IAAZ1+K,EAAErB,EAAE65N,GAAGlnN,EAAEtR,GAAOkE,EAAE,IAAIupO,GAAG7hB,GAAGi1E,GAAIvvR,GAAG3S,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG7lN,IAAoBoiL,GAAIv1K,EAAjBurK,GAAGwtC,GAAG5lN,GAAG,IAAYgqB,EAAEvxB,QAAS,GAAG8V,GAAG+yL,IAAiB,IAAZzjM,EAAEpD,EAAE65N,GAAGlnN,EAAEvP,GAAOmC,EAAE,IAAIupO,GAAG7hB,GAAGi1E,GAAIvvR,GAAG3S,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG7lN,IAAoBoiL,GAAIznL,EAAjBy9K,GAAGwtC,GAAG5lN,GAAG,IAAYgqB,EAAEvxB,GAAkB,GAAVoU,EAAEpS,EAAEi/K,OAAwBr/K,EAAE6hW,IAAf,IAAI9qH,GAAI,EAAE77M,GAAW5oB,EAAEE,EAAE/Q,GAAGrD,EAAEkU,EAAEqd,EAAErd,IAAQ,IAAGlS,EAAEA,EAAEhC,GAAG4B,EAAE,GAAGk7B,EAAE5oB,EAAEqd,EAAErd,GAAGlS,EAAEA,EAAEkS,EAAE4oB,EAAE5oB,GAAGlS,EAAEA,GAAgB,GAAVE,EAAEF,EAAEi/K,OAAwBr/K,EAAE6hW,IAAf,IAAI9qH,GAAI,EAAE77M,GAAW5oB,EAAEhS,EAAEkD,EAAE8O,EAAE4oB,EAAE5oB,EAAElU,EAAEkU,EAAEqd,EAAErd,IAAK,IAAIA,EAAE4oB,EAAE5oB,GAAGlU,GAAG4B,EAAE,GAAGk7B,EAAG,CAxX1f4mU,CAAI1hW,EAAEkS,EAAEnS,GAmfxH,SAAaC,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAI2O,EAAE/Q,EAAI2R,EAAI9S,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAEC,EAAY,IAAV7tL,EAAE,IAAI+uK,GAAQpyK,EAAE,IAAIylK,GAAI3lK,EAAEkS,GAAGhS,EAAEF,EAAEE,EAAEqvB,EAAEA,EAAErxB,QAAyB,IAAIwU,EAAE,IAAIizJ,GAAxBgY,GAAGC,GAAI19K,GAAG,IAAoBF,GAAG0S,EAAE1S,EAAE0S,EAAE6c,EAAEA,EAAErxB,QAAyB,IAAhBkF,EAAEu6K,GAAGC,GAAIlrK,GAAG,KAASrR,IAAI49P,MAAMC,MAAmB1sC,GAAIpvN,GAAG4kM,MAAM25I,MAAjB,CAAsD,IAArB9tU,EAAE,KAAKwU,EAAE,KAAKpU,EAAE,KAAS4uB,EAAE,IAAI8iI,GAAIviK,EAAEgP,GAAGywB,EAAE7iC,EAAE6iC,EAAEtT,EAAEA,EAAErxB,QAAyB,QAAhB0mC,EAAE+4I,GAAGC,GAAI/6I,GAAG,KAAazwB,EAAEO,GAAG,KAAK,EAAEkB,EAAE+wB,EAAE,MAAM,KAAK,EAAEvc,EAAEuc,EAAE,MAAM,QAAQ3wB,EAAE2wB,EAA4N,IAApMvjC,EAAE,IAAI4mL,IAA1B92K,EAAEwsK,GAAG0pB,GAAIpzL,EAAEtB,EAAE,GAAG,KAAgB3S,GAAkB6/K,GAAfztK,EAAE,IAAIuuM,GAAI1sM,EAAErU,GAASwD,EAAExD,GAAcm2O,GAAT+oB,IAAIz9P,EAAE,GAAS+Q,GAAGwX,EAAEquR,GAAI9mS,EAAEnR,GAAkB6/K,GAAf7sK,EAAE,IAAI2tM,GAAI1sM,EAAErU,GAASwD,EAAExD,GAAGm9M,GAAInzL,EAAE5W,EAAE4W,EAAE2F,EAAErd,EAAE0X,EAAE2F,GAAG4hK,EAAExT,GAAG4qB,IAAInlM,EAAEu+U,KAAK,IAAIvwJ,EAAEzT,GAAG0pB,GAAIlW,EAAE/+K,EAAE,GAAG,IAAmD0oB,EAAE,EAAEr3B,GAAR1D,EAAzC49K,GAAG88E,IAAI5mP,EAAEtO,EAAE04K,GAAGy8E,IAAGC,IAAI,GAAG,EAAE,EAAE,IAAI,MAAqBz8P,OAAO48B,EAAEr3B,IAAIq3B,EAAUs3N,GAAPlgP,EAAEnS,EAAE+6B,GAASs2J,GAAGu/G,GAAIz+R,EAAElS,EAAEkS,EAAElS,EAAEkS,EAAE7Q,GAAc,IAAQkE,EAAE,EAAEoN,GAAR4c,EAAbirO,GAAInyO,EAAE1V,IAAmBzU,OAAOqH,EAAEoN,IAAIpN,EAAU8sP,GAAPngP,EAAEqd,EAAEhqB,GAAS6rL,GAAGu/G,GAAIz+R,EAAElS,EAAE,EAAE4pB,GAAGyoO,GAAIlhP,EAAE,MAAMihP,GAAIjhP,EAAE,MAAM5N,EAAEgsB,EAAEhsB,EAAEgsB,EAAErxB,QAAQkF,CAAnhB,CAAshB,IAAI4Q,EAAE,IAAI2xJ,GAAIpiK,GAAGyQ,EAAEhU,EAAEgU,EAAEub,EAAEA,EAAErxB,QAAyBo0P,GAAhBlvP,EAAEu6K,GAAGC,GAAI5pK,GAAG,IAAU,KAAM,CAnfztB2tV,CAAIzvV,GAAG3M,EAAEo4K,GAAG4qB,IAAIr2L,GAAGmrJ,MAAMykI,MAAM,IAAU8/D,KAAKnkJ,GAAI,GAAf3iL,EAAE5oB,EAAEA,GAAeqd,EAAErxB,QAAQy/K,GAAG7iJ,EAAEvL,EAAE,GAAG,KAAKhqB,EAAE2M,GAAG0vV,IAAIjkL,GAAG0pB,GAAIvsK,EAAEA,EAAEvL,EAAErxB,OAAO,GAAG,IAAIqH,EAAE2M,GAAS2vV,KAAKpkJ,GAAI,GAAf9qM,EAAET,EAAEA,GAAeqd,EAAErxB,QAAQy/K,GAAGhrK,EAAE4c,EAAE,GAAG,MAAMsyU,IAAIlkL,GAAG0pB,GAAI10L,EAAEA,EAAE4c,EAAErxB,OAAO,GAAG,KAAKqkS,IAAIhzQ,EAAE,CACtU,SAASuyU,IAAI9hW,GAAG,OAAOA,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAI,OAAOA,EAAE,IAAI,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,IAAI,KAAK,IAAI,KAAK,IAAK,OAAOA,EAAE,GAAG,IAAI,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAI,OAAOA,EAAE,GAAG,IAAI,IAAI,GAAG,QAAS,MAAMkzK,GAAI,IAAImR,GAAI,wBAAyB,CACtU,SAAS09K,IAAI/hW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAA6E,IAA3EkvR,IAAItyQ,EAAE,wBAAwB,GAAGvvB,EAAEA,EAAEsgL,GAAIC,GAAGgoB,IAAIr2L,GAAG6sJ,MAAMgrL,QAAQxkV,EAAE,IAAIk0K,GAAQ9mK,EAAEmsP,IAAI5sP,EAAEA,EAAE,GAAGS,EAAET,GAAGS,EAAE5S,EAAEwvB,GAAoB0yJ,GAAIk6B,GAAG5T,IAAvBztK,EAAE6iJ,GAAGohF,GAAIpsP,GAAG,KAAkB+zR,MAAMg3C,SAAU3gI,GAAIx3M,EAAEu1B,EAAEv1B,EAAEgqB,EAAErd,EAAE3M,EAAEgqB,GAAY+5L,GAAS,GAAL/jN,EAAE2M,GAAsB8vV,IAAIhiW,EAAnCD,EAAe49K,GAAGp4K,EAAEvF,EAAEA,EAAEuvB,EAAE,MAAeA,EAAErd,GAAG8uR,GAAIzxQ,EAAE,GAAG0yU,IAAIjiW,EAAED,EAAE,EAAEugL,GAAIC,GAAGgoB,IAAIxoM,GAAG2mS,MAAMi4D,QAAQ,EAAE,IAAIpvU,EAAErd,GAAG8uR,GAAIzxQ,EAAE,GAAGgzQ,IAAIhzQ,EAAE,CACvU,SAAS8/Q,MAAMA,IAAI36J,EAAI66J,IAAI,IAAItgG,GAAI,SAAS,GAAGugG,IAAI,IAAIvgG,GAAI,eAAe,GAAGwgG,IAAI,IAAIxgG,GAAI,YAAY,GAAGygG,IAAI,IAAIzgG,GAAI,SAAS,GAAG0gG,IAAI,IAAI1gG,GAAI,yBAAyB,GAAG2gG,IAAI,IAAI3gG,GAAI,sBAAsB,GAAG4gG,IAAI,IAAI5gG,GAAI,mBAAmB,GAAG6gG,IAAI,IAAI7gG,GAAI,iCAAiC,GAAG8gG,IAAI,IAAI9gG,GAAI,2BAA2B,EAAE,CACxU,SAASmkJ,IAAIpzV,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAgC,IAA9BpU,EAAEkuU,IAAIlsU,EAAEuvB,GAAGnd,EAAE85T,IAAIh6T,EAAEqd,GAAGhqB,GAAE,EAAcvH,GAAKoU,IAAMrS,GAAG2iU,IAAI1kU,EAAEoU,EAAEmd,KAAI5c,EAAEu5T,IAAIluU,EAAEuxB,GAAG9rB,EAAEyoU,IAAI95T,EAAEmd,GAAG46P,GAAIj4Q,GAAGi4Q,GAAInqR,GAAG86B,EAAE98B,EAAEuxB,EAAE2yU,IAAIlkW,GAAE,GAAOkkW,IAAI9vV,GAAE,GAAUmd,GAAGk2S,IAAIvzT,EAAEE,EAAEhP,EAAE03B,GAAG5oB,EAAE9O,EAAEgP,EAAEhP,EAAEqiU,IAAIzlU,EAAEhC,EAAEoF,EAAE,EAAE03B,GAAG96B,EAAEoD,EAAEpF,EAAEoF,IAAOqiU,IAAIzlU,EAAEhC,EAAEoF,EAAE03B,GAAG96B,EAAEoD,EAAEpF,EAAEoF,EAAEqiU,IAAIvzT,EAAEE,EAAEhP,EAAE,EAAE03B,GAAG5oB,EAAE9O,EAAEgP,EAAEhP,GAAEkvP,GAAIt0P,EAAE,MAAMs0P,GAAIlgP,EAAE,MAAMpU,EAAE2U,EAAEP,EAAE3O,EAAE8B,GAAE,EAAiB,OAAOA,CAAC,CACxU,SAASgmR,IAAIvrR,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAkB,IAAhBuH,GAAE,EAAMu1B,GAAE,EAAUr3B,EAAE,IAAIkiK,GAAI5lK,EAAEqS,GAAG3O,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAyB68M,GAAGxS,IAAnB51L,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAAcukM,MAAM0/C,SAAS3sC,GAAGxrL,KAAmB,GAAd5c,EAAEA,EAAE4c,EAAErxB,OAAwB,GAAdyU,EAAEpN,EAAEgqB,EAAErxB,SAAYqH,GAAE,GAAOu1B,GAAE,GAAwI,OAAjI98B,EAAE,EAAEuH,GAAGA,EAAEu1B,EAAG98B,EAAEuxB,EAAEnd,IAAIqtK,MAAMM,MAAM//K,EAAEuF,EAAExF,EAAEwvB,EAAEnsB,GAAGrD,EAAEqD,GAAG8O,EAAElS,EAAEuF,EAAExF,EAAEwvB,EAAEnsB,GAAGrD,EAAEqD,GAAI03B,GAAGv1B,EAAEu1B,EAAG98B,EAAEgC,EAAEuF,EAAExF,EAAEwvB,EAAEnsB,GAAGrD,EAAEqD,GAAG,EAAGmC,GAAGu1B,IAAI98B,EAAEuxB,EAAEnd,IAAIqtK,MAAMM,KAAK,EAAE7tK,EAAE,GAAUlU,CAAC,CACxU,SAASs8S,IAAIt6S,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,GAAG,IAAIzF,EAAEoU,EAAE/Q,EAA6H,IAA3HrD,EAAE,EAAK,MAAHkU,IAAUlU,GAAGm6S,IAAIjmS,EAAEd,gBAAmB,MAAHme,IAAUvxB,GAAGm6S,IAAI5oR,IAAO,MAAHxvB,IAAU/B,GAAGm6S,IAAIp4S,IAAO,MAAH4S,IAAU3U,GAAGm6S,IAAIxlS,IAAO,MAAHlP,IAAUzF,GAAGm6S,IAAI10S,IAAQ2O,EAAE,EAAE/Q,EAAEy5B,EAAE58B,OAAOkU,EAAE/Q,EAAE+Q,IAAKpU,GAAGm6S,IAAIr9Q,EAAE1oB,IAAIpS,EAAGhC,GAAG,IAAMA,IAAI,IAAKuH,EAAGvH,GAAG,GAAKA,IAAI,GAAIsG,KAAKw2B,EAAE98B,EAAEsG,KAAKtG,EAAK,MAAHkU,EAAQ,MAAM2uJ,GAAI3uJ,GAAGA,GAAG5N,KAAKtE,EAAEuvB,EAAEjrB,KAAKvE,EAAEA,EAAEuE,KAAK8N,EAAE0oB,EAAEx2B,KAAKqO,EAAEA,EAAErO,KAAKiB,EAAE9B,CAAC,CACxU,SAASi+U,IAAI1hV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAS,OAAPA,EAAE,KAAY2M,EAAES,GAAG,KAAK,EAAK+9N,KAAHnrO,EAASmgS,IAAK,MAAM,KAAK,EAAKh1D,KAAHnrO,EAASkgS,IAAa,OAAP1lS,EAAE,KAAYwvB,EAAE5c,GAAG,KAAK,EAAK+9N,KAAH3wO,EAAS4lS,IAAK,MAAM,KAAK,EAAKj1D,KAAH3wO,EAAS6lS,IAAK,MAAM,KAAK,EAAKl1D,KAAH3wO,EAAS8lS,IAAK,MAAM,KAAK,EAAKn1D,KAAH3wO,EAAS+lS,IAAM,OAASvgS,GAAKxF,EAAEqiO,GAAGpiO,EAAEoS,EAAE,IAAI0uJ,GAAG,IAAIwd,GAAIC,GAAGC,GAAG2jL,IAAG,GAAGhkL,IAAI,IAAI,EAAE,CAACR,GAAGoG,GAAGx+K,GAAG,KAAKo4K,GAAGoG,GAAGhkL,GAAG,WAAWknN,KAAMA,KAAM+Y,IAAI,CACzU,SAASytF,IAAIztT,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAyD,OAAvDmS,EAAEyrK,GAAG4qB,IAAIvoM,GAAGq9J,MAAMsnL,MAAM,GAAG58I,GAAI/nM,EAAE2kV,IAAI,IAAI1vI,GAAI/iM,EAAEA,EAAEA,EAAElS,IAAW29K,GAAG4qB,IAAIvoM,EAAEu+P,KAAK,KAAK5rP,GAAG,KAAK,EAAEo1L,GAAI/nM,EAAEu+P,KAAKC,MAAME,MAAM,MAAM,KAAK,EAAE32D,GAAI/nM,EAAEu+P,KAAKC,MAAMC,MAAM,MAAM,KAAK,EAAE12D,GAAI/nM,EAAEu+P,KAAKC,MAAMiB,MAAM,MAAM,KAAK,EAAE13D,GAAI/nM,EAAEu+P,KAAKC,MAAMgB,OAAYx/P,EAAEgU,EAAoBhU,EAAEgU,GAAnBizM,KAAMA,KAAMgjB,MAAU9iO,GAAGm3P,OAAyBv+P,GAAnBwvB,EAAEouJ,GAAG4qB,IAAIvoM,EAAEs+P,KAAK,IAAOt+P,EAAEuvB,EAAEvvB,EAAEuvB,EAAErd,EAAEqd,EAAErd,EAAEnS,EAAE,CACzU,SAASygT,IAAIxgT,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAqB,GAAlBx2B,KAAK4N,EAAEqd,EAAEjrB,KAAKvE,EAAEwF,EAAKvF,GAAGkS,EAAEhU,OAAQ,MAAMg1K,GAAI,IAAIgO,GAAI,mDAAmD58K,KAAKirB,EAAErd,EAAElS,GAAGsE,KAAKiB,EAAE,IAAIs5N,GAAI9+N,GAAG6+O,GAAIt6O,KAAKiB,EAAEjB,KAAKirB,GAAGkwJ,MAAMG,MAAMt7K,KAAKtG,EAAE,IAAI6gO,GAAI9+N,GAAG6+O,GAAIt6O,KAAKtG,EAAEsG,KAAKirB,EAAEmwJ,KAAKp7K,KAAKw2B,EAAE,IAAIiwM,GAAIzmO,KAAKirB,GAAGjrB,KAAKtE,GAAG86B,GAAGv1B,EAAEvH,IAAIuH,EAAEsO,GAAGvP,KAAKirB,EAAE,GAAGluB,IAAI49P,MAAMC,KAAK56P,KAAKtE,GAnhBlT,SAAaA,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAY3O,GAARq3B,EAAE96B,EAAED,EAAEqD,GAAMmC,EAAEvH,EAAE88B,EAAEpoB,EAAE1S,EAAE2S,EAAE,IAAIksN,GAAI7gO,GAAe+B,GAAZ4S,EAAE3S,EAAED,EAAEG,EAAEqvB,EAAEnsB,GAAM,EAAEK,EAAEkP,EAAE,GAAGsrK,GAAGkuE,IAAGC,IAAI,GAAG,EAAE,EAAE,GAAG7mP,EAAE9B,EAAEkP,GAAGP,EAAEO,EAAElP,EAAEvF,OAAO,EAAEuF,EAAEkP,EAAE,GAAGsrK,GAAGkuE,IAAGC,IAAI,GAAG,EAAE,EAAE,GAAKl6O,GAAGqd,EAAE,EAAIshO,GAAI7wP,EAAE2S,EAAEpN,EAAE6M,GAAGy+O,GAAI7wP,EAAE2S,EAAE5S,EAAEwF,EAAE,CAmhBwG68V,CAAI99V,KAAKtE,EAAEkS,EAAEhU,OAAO,CACzU,SAASmkW,IAAIriW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEq3B,GAAG96B,EAAE4kC,EAAEq7J,IAAIssG,MAAM0I,MAAMtiS,EAAE3S,EAAE4kC,EAAEq7J,GAAG+0G,KAAKh1S,EAAEA,EAAE,IAAImsT,IAAIx5S,EAAEmoB,EAAE96B,EAAEuvB,GAAKvvB,EAAEJ,GAAGs8B,GAAIl8B,EAAEA,EAAEJ,EAAEI,EAAEJ,GAAGg/K,GAAI5+K,EAAE2S,GAAG6gQ,KAAMG,KAAK3zQ,EAAEA,GAAOkS,KAAGnS,EAAE,IAAI4yT,IAAI,EAAE73R,EAAE96B,EAAEuvB,IAAK3vB,EAAEI,EAAEA,EAAEqB,EAAEqlM,GAAI1mM,EAAEoD,GAAGq8K,MAAMM,KAAKhgL,IAAGwF,EAAE,IAAIotT,IAAI,EAAE73R,EAAE96B,EAAEuvB,IAAK3vB,EAAEG,EAAEC,EAAEqB,EAAEqlM,GAAI1mM,EAAEoD,EAAEyjM,IAAIthM,IAAG9B,EAAE,IAAIkvT,IAAI,EAAE73R,EAAE96B,EAAEuvB,IAAK3vB,EAAE2vB,EAAEvvB,EAAEqB,EAAEqlM,GAAI1mM,EAAEoD,EAAEw8K,IAAIn8K,IAAG8rB,EAAE,IAAIojS,IAAI,EAAE73R,EAAE96B,EAAEuvB,IAAK3vB,EAAEsS,EAAElS,EAAEqB,EAAEqlM,GAAI1mM,EAAEoD,EAAEs8K,IAAInwJ,GAAG,CAC1U,SAAS+yU,IAAItiW,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAiC,QAA/BmS,EAAEyrK,GAAG4qB,IAAIvoM,EAAED,GAAGs9J,MAAMqlI,MAAM,MAAc/vR,GAAG,KAAK,EAAE4c,EA+iB5E,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAI2R,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAY,IAAV5Q,EAAE,IAAIkvK,GAAQt/J,EAAE,IAAI2yJ,GAAI3lK,EAAED,EAAEmS,GAAGc,EAAEhT,EAAEgT,EAAEuc,EAAEA,EAAErxB,QAAyB,IAAIgC,EAAE,IAAIylK,GAAxBgY,GAAGC,GAAI5qK,GAAG,IAAoBhT,GAAGE,EAAEF,EAAEE,EAAEqvB,EAAEA,EAAErxB,QAAQ,CAAqC,IAApC0B,EAAE+9K,GAAGC,GAAI19K,GAAG,IAAIqF,EAAEo4K,GAAG+5B,GAAI13M,EAAE86B,EAAEl7B,GAAG,IAAQ5B,EAAE,IAAI8wO,GAAG7hB,GAAGm1E,GAAIxiS,GAAGI,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGptN,IAA+C,GAAdoU,GAAE,EAAK/Q,EAAE,MAAtBtB,EAAE++P,KAAjBnsP,EAAEgrK,GAAGwtC,GAAGntN,GAAG,KAAYgC,EAAE,IAAsBkS,GAAGnS,EAAEA,EAAEwvB,EAAE,CAAqN,IAApNrd,EAAEyrK,GAAGohF,GAAIh/P,GAAG,GAAGwvB,EAAE,KAAQ5c,EAAE4c,EAAEnd,IAAIqtK,MAAMM,QAAM/rK,EAAE,IAAIuuV,IAAIrwV,EAAE,IAAI+iM,GAAI/iM,EAAElS,EAAEuF,EAAExF,EAAEA,GAAGwF,EAAEoN,IAAKmoB,EAAE96B,GAAE,EAAKgU,EAAEhU,EAAE2S,EAAE4c,EAAEnsB,EAAEmsB,EAAEnsB,EAAEmsB,EAAErxB,QAAQ8V,GAAKrB,EAAE4c,EAAEnd,GAAGy0L,OAAK7yL,EAAE,IAAIuuV,IAAIrwV,EAAE,IAAI+iM,GAAI/iM,EAAElS,EAAEuF,EAAExF,EAAEA,EAAEwF,EAAExF,EAAEC,GAAGuF,EAAEoN,IAAKmoB,EAAE/6B,GAAE,EAAKiU,EAAEhU,EAAE2S,EAAE4c,EAAEnsB,EAAEmsB,EAAEnsB,EAAEmsB,EAAErxB,QAAQ8V,GAAQjU,EAAEmS,GAAGnS,EAAEA,EAAEwvB,GAAGA,EAAEouJ,GAAGohF,GAAIh/P,GAAG,GAAO02R,GAAIvkR,EAAEA,EAAEqd,EAAErd,KAAI7Q,EAAE,IAAIkhW,IAAIrwV,EAAEqd,EAAE,KAAK5c,GAAGvP,EAAEmsB,EAAEnsB,EAAEmsB,EAAErxB,QAAQmD,EAAK+Q,IAAGA,GAAE,EAASmd,EAAErd,EAAE3M,EAAExF,EAAEA,EAAGsB,EAAEy5B,EAAE96B,GAAE,EAAauvB,EAAErd,EAAE3M,EAAExF,EAAEA,EAAEwF,EAAExF,EAAEC,EAAGqB,EAAEy5B,EAAE/6B,GAAE,GAAUsB,EAAEy5B,EAAE/6B,GAAE,EAAKsB,EAAEy5B,EAAE96B,GAAE,KAAOD,EAAEmS,GAAGnS,EAAEA,EAAEwvB,IAAIrd,EAAEqd,GAAMluB,IAAGy5B,EAAE6iJ,GAAG+5B,GAAI13M,EAAE86B,EAAEnoB,EAAE5S,EAAE/B,GAAG,IAAOkU,EAAEA,EAAE4oB,EAAE/6B,EAAEA,EAAGsB,EAAEy5B,EAAE96B,GAAE,EAAakS,EAAEA,EAAE4oB,EAAE/6B,EAAEA,EAAE+6B,EAAE/6B,EAAEC,EAAGqB,EAAEy5B,EAAE/6B,GAAE,GAAUsB,EAAEy5B,EAAE/6B,GAAE,EAAKsB,EAAEy5B,EAAE96B,GAAE,GAAM,CAAE,IAAIyD,EAAE,IAAIqrO,GAAG7hB,GAAGi1E,GAAItiS,GAAGI,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG3nN,IAA8B,IAAzBkP,EAAEgrK,GAAGwtC,GAAG1nN,GAAG,KAASzD,EAAEkS,IAAMA,EAAEyrK,GAAG8zC,GAAI9+M,EAAE3S,GAAG,GAAM2S,EAAE5S,EAAEqS,IAAIqtK,MAAMM,QAAM/rK,EAAE,IAAIuuV,IAAIrwV,EAAE,IAAI+iM,GAAI/iM,EAAElS,EAAEuF,EAAExF,EAAEA,GAAGwF,EAAEoN,IAAKmoB,EAAE96B,GAAE,EAAKgU,EAAEhU,EAAE2S,EAAE5S,EAAEqD,EAAEmsB,EAAEnsB,EAAEmsB,EAAErxB,QAAQ8V,GAAKrB,EAAE5S,EAAEqS,GAAGy0L,OAAK7yL,EAAE,IAAIuuV,IAAIrwV,EAAE,IAAI+iM,GAAI/iM,EAAElS,EAAEuF,EAAExF,EAAEA,EAAEwF,EAAExF,EAAEC,GAAGuF,EAAEoN,IAAKmoB,EAAE/6B,GAAE,EAAKiU,EAAEhU,EAAE2S,EAAE5S,EAAEqD,EAAEmsB,EAAEnsB,EAAEmsB,EAAErxB,QAAQ8V,GAAI,CAAE,OAAO5Q,CAAC,CA/iBliCo/V,CAAIxiW,GAAG,MAAM,KAAK,EAAKD,EAAE,IAAIuyK,GAAIovB,GAAIyoB,GAAIgsB,GAAIg3C,GAAIA,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAIvtM,EAAED,EAAEmS,EAAE,KAAK,IAAIqzI,IAAK,IAAIC,IAAK,IAAIC,IAAK,IAAIf,IAAK,IAAIymB,GAAIprK,IAA7GwvB,EAAiHxvB,EAAG,MAAM,QAAQ,MAAMmzK,GAAI,IAAI4O,GAAI,gCAAgC5vK,EAAE,aA2UxR,SAAalS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAI3U,EAAIqD,EAAE,GAAe,GAAZ6Q,EAAEqd,EAAErxB,OAAW,OAAO+oN,KAAMlC,GAAI7yM,EAAEqd,EAAErd,EAAEqd,EAAErxB,OAAO,MAAMqH,EAAE,IAAIogK,GAAIzzJ,GAAGnS,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAK,KAAMA,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAQqxB,EAAEouJ,GAAGC,GAAIr4K,GAAG,MAAQkxR,GAAI12R,EAAEwF,EAAEgqB,EAAEA,EAAEhqB,EAAEgqB,IAAMygS,IAAIh5F,GAAIj3N,EAAEwF,GAAG2M,EAAEqd,EAAEhqB,EAAExF,IAAIiwT,IAAIh5F,GAAIznM,EAAEhqB,GAAG2M,EAAEnS,EAAEwF,EAAExF,IAA2T0iW,IAAIziW,EAAED,GAAGA,EAAEwvB,IAA9Tq5N,GAAI7oP,EAAEsB,EAAEkuB,EAAEluB,GAAGunP,GAAI7oP,EAAEmS,EAAEqd,EAAErd,GAAG02O,GAAI7oP,EAAEwvB,EAAEA,EAAEA,GAAGgqK,GAAGx5L,EAAE/B,EAAEuxB,EAAEvxB,GAAG4qP,GAAI7oP,EAAEA,EAAEwvB,EAAExvB,GAAG6oP,GAAI7oP,EAAEqS,EAAEmd,EAAEnd,GAAG0oB,EAAEm4G,EAAK3/H,KAAKsgB,IAAI7zB,EAAEwF,EAAEgqB,EAAEA,EAAEhqB,EAAEgqB,GAAG5c,EAAEsgI,EAAK3/H,KAAKsgB,IAAI7zB,EAAEwF,EAAExF,EAAEwvB,EAAEhqB,EAAExF,GAA4C/B,EAAvCi1I,EAAK3/H,KAAKugB,IAAI9zB,EAAEwF,EAAEgqB,EAAExvB,EAAEwF,EAAE2M,EAAEqd,EAAEhqB,EAAEgqB,EAAEA,EAAEhqB,EAAE2M,GAAO4oB,EAA2Cz5B,EAAvC4xI,EAAK3/H,KAAKugB,IAAI9zB,EAAEwF,EAAExF,EAAEA,EAAEwF,EAAEvF,EAAEuvB,EAAEhqB,EAAExF,EAAEwvB,EAAEhqB,EAAEvF,GAAO2S,EAAEgzN,GAAI5lO,EAAEwF,EAAEu1B,EAAEnoB,EAAE3U,EAAEqD,GAAG21P,GAAIj3P,EAAE+6B,EAAEvL,EAAEuL,IAAI/6B,EAAEC,IAAID,EAAEC,EAAEuvB,EAAEvvB,GAAG4oP,GAAI7oP,EAAE4S,EAAE4c,EAAE5c,GAAGojK,GAAIh2K,EAAE4S,EAAE4c,IAAyBkzU,IAAIziW,EAAED,EAAE,CA3UpR2iW,CAAI1iW,EAAEuvB,GAAGgpL,GAAI,IAAIh0C,GAAIvkK,EAAE2S,GAAG,IAAIs4J,GAAIjrK,GAAG,CAE1U,SAAS66J,MAAMA,IAAInmB,EAAIiuN,IAAI,IAAIj/I,IAAK3jD,MAAMk0K,KAAKj8H,GAAI,IAAIo2F,IAAI,IAAI1qF,GAAI0qG,IAAI,IAAIw0C,IAAI,IAAIl/I,GAAIm/I,IAAI,GAAGC,IAAI,IAAIp/I,GAAI8qG,IAAIC,KAAK6jC,IAAI,IAAI5uI,GAAI4qG,IAAIt2G,GAAI,IAAI+qJ,IAAI,IAAIr/I,GAAIymI,KAAKz8H,MAAM,IAAOs1I,IAAI,IAAIr/I,GAAI,IAAIs/I,IAAI,IAAIv/I,GAAI04F,IAAI4mD,KAAKE,IAAIh9B,IAAIpwB,IAAIprB,IAAIy4E,IAAI,IAAIz/I,GAAIyiH,KAAI,GAAOksB,IAAI9tB,IAAI6+B,IAAI/gF,IAAIghF,IAAI3mD,IAAI4mD,IAAIv9J,IAAIw9J,IAAI9+B,IAAS9pK,MAAL83L,IAAWpb,IAAKrzG,IAAI4zG,IAAIzpC,IAAIqpC,IAAInpC,IAAIypC,IAAI0rB,IAAI9rB,GAAG,CAE5U,SAAS/4K,MAAMA,IAAIjqB,EAAIqoL,IAAI,IAAIrsJ,GAAI+yL,KAAUx+J,KAAWi4H,IAAI,IAAIv+G,GAAI+kJ,IAA5BC,IAAWz+J,KAA+BgoE,KAAW2lE,IAAI,IAAIl0H,GAAIilJ,IAA5BC,IAAWz2F,KAA+B6jB,MAAW8hD,IAAI,IAAIp0H,GAAImlJ,IAA5BC,IAAW3yE,KAA0B6hD,IAAI,IAAIt0H,GAAIqlJ,IAAI,MAAWx2F,KAAW2lE,IAAI,IAAIx0H,GAAIslJ,IAA5BC,IAAWv2F,KAA+BhpE,KAAW8uI,IAAI,IAAI90H,GAAIwlJ,IAA5BC,IAAWx/J,KAA0B+uI,IAAI,IAAIh1H,GAAI0lJ,KAAK32I,MAAM,IAAQ0vG,IAAI,IAAIz+G,GAAI2lJ,IAAItsJ,GAAI,KAAKslH,IAAI,IAAI3+G,GAAI4lJ,KAAI,GAAMC,IAAI92F,GAAG,CAC5U,SAASljC,IAAIxqO,GAAG,IAAIkS,EAAEqd,EAAIhqB,EAAEu1B,EAAEnoB,EAAE,GAAQ,MAAL3S,EAAEA,EAAoE,GAApDA,EAAEA,EAAEi+K,GAAG8U,IAAIuyD,IAAI,GAAGtlP,EAAEuvB,EAAErd,EAAEqd,EAAErxB,OAAO,GAAG,GAAG8B,EAAEA,EAAE,IAAG,EAASwyN,GAAIxyN,EAAEuvB,GAAG8tI,MAAMonM,MAA6B,IAAIl1U,EAAxBouJ,GAAG4qB,IAAIvoM,EAAEuvB,EAAEk1U,KAAK,IAAY9oJ,KAAKpsL,EAAEgsL,OAAOrpM,EAAEyrK,GAAGpuJ,EAAEksL,KAAK,IAAIz7M,GAAI,GAAGkS,EAAElS,EAAEA,EAAE9B,SAAS8B,EAAEA,EAAEkS,IAAG,QAA2D,KAA9CS,EAAE,IAAIgzJ,GAAI3lK,EAAEuvB,EAAErd,IAAKlS,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAQ0/K,GAAIjrK,GAAGpN,EAAE,EAAQoN,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAQ48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,IAAI3S,EAAEA,EAAEuF,KAAKuqV,IAAIh1T,EAAI,CAC/U,SAAS6lT,IAAI3gV,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAU,OAANA,EAAEvF,EAAEkS,EAASA,GAAG,KAAK,EAAGlS,EAAEkS,GAAG,EAAElS,EAAEkS,GAAG,EAAElS,EAAEkS,GAAG,EAAE,MAAM,KAAK,EAAGlS,EAAEkS,GAAG,EAAElS,EAAEkS,GAAG,EAAElS,EAAEkS,GAAG,EAAE,MAAM,KAAK,EAAGlS,EAAEkS,GAAG,EAAElS,EAAEkS,GAAG,EAAElS,EAAEkS,GAAG,EAAElS,EAAEkS,GAAG,EAAE,MAAM,KAAK,EAAGlS,EAAEkS,GAAG,GAAGlS,EAAEkS,GAAG,EAAE,MAAM,KAAK,EAAGlS,EAAEkS,GAAG,GAAGlS,EAAEkS,GAAG,GAAGlS,EAAEkS,GAAG,EAAElS,EAAEkS,GAAG,EAAElS,EAAEkS,GAAG,EAAElS,EAAEkS,GAAG,EAAS,GAAGlS,EAAEkS,GAAG3M,GAAKvF,EAAEuvB,EAAG,IAAIxvB,EAAE,IAAIg/K,GAAI/+K,EAAEuvB,GAAGxvB,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAiCs1E,IAAPpJ,GAAjBxtE,GAAGwB,IAAIp/K,GAAG,MAAoBmS,EAAI,CAC/U,SAASknV,IAAIp5V,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAI9S,EAAU,IAARqF,GAAE,EAAc9B,EAAE,EAAEzF,GAAR2U,EAAET,GAAUhU,OAAOuF,EAAEzF,IAAIyF,EAAGq3B,EAAEnoB,EAAElP,GAAGw+K,IAAKyrC,OAAM5yL,EAAEv1B,MAAiBo4K,GAAG0pB,GAAIrnM,EAAEkS,EAAE4oB,EAAEv1B,EAAEnC,GAAG,KAAKyQ,IAAItO,IAAK6M,EAAE0oB,EAAEv1B,GAAyBuO,GAAvBzS,EAAEs8K,GAAG0pB,GAAIrnM,EAAEkS,EAAEE,EAAEhP,GAAG,MAASmC,GAAEyN,EAAEuzK,GAAIh3J,EAAEzb,EAAE5V,SAAe,GAAKmD,IAAI49P,MAAMC,KAAMprP,EAAEd,GAAG6lV,IAAI/9T,EAAEhnB,EAAEd,GAAGuc,GAAGkwJ,MAAMG,MAAMH,MAAMC,MAAOr+K,EAAEkuB,EAAEm1U,GAAG5wV,EAAEyb,GAAGrvB,EAAEi5V,IAAIn5V,EAAEqB,EAAEkuB,EAAExvB,GAAG4jT,IAAItiT,EAAEkE,EAAElE,EAAEnB,EAAEqvB,GAAGrvB,IAAI,OAAOqF,CAAC,CAChV,SAASo/V,IAAI3kW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAA4C,IAA1CmoB,IAAI5oB,EAAElS,IAAIkS,EAAElS,EAAE,IAAIs6L,GAAI/M,IAAGr7K,EAAE,GAAG,KAAKA,EAAElS,GAAGhC,EAAMuH,EAAE,IAAIw5K,KAAM7sK,EAAElS,IAAIkS,EAAElS,EAAE,IAAIs6L,GAAI/M,IAAGr7K,EAAE,GAAG,KAAKA,EAAElS,IAAIuF,EAAEA,GAAGA,EAAEvH,EAAEihL,MAA0B87B,GAAGzC,IAAtBv4M,EAAE49K,GAAGwB,IAAI55K,GAAG,KAAiBw6J,MAAMizJ,SAASj4G,IAAIqjE,KAAMI,SAAO7rQ,EAAEgrK,GAAG26B,IAAIpmM,EAAEm5R,KAAK,QAAK97Q,EAAEouJ,GAAG26B,IAAIv4M,EAAEsrS,KAAK,OAAc14R,GAAGi8P,GAAIj8P,EAAE4c,KAA8C,KAAvCxvB,EAAEC,IAAID,EAAEC,EAAE,IAAIs6L,GAAI/M,IAAGxtL,EAAE,GAAG,KAAKA,EAAEC,GAAGhC,IAAO88B,GAAG6pU,IAAI3kW,EAAED,IAAK,OAAO+6B,CAAC,CAGhV,SAAS0hT,IAAIx8U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAkK,GAAhKnB,EAAEgrK,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAIzO,EAAEzD,EAAEqoB,EAAE43K,IAAI4I,MAAMG,MAAMz5K,EAAEvvB,EAAEqoB,EAAE43K,GAAG87F,KAAKh8R,EAAEC,EAAEqoB,EAAE43K,GAAG+7F,KAAK5pR,EAAEpS,EAAEqoB,EAAE43K,GAAGg8F,KAAKnoR,EAAE9T,EAAE4kC,EAAEq7J,IAAIssG,MAAMuI,MAAMzzS,GAAGkuB,IAAIxvB,IAAIqS,GAAW,GAARO,EAAEssK,MAtH1K,SAAaj/K,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAE,IAAIkP,EAAEgrK,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAIypM,KAAKhpM,EAAE4oM,OAAwBhsL,GAAjBuL,EAAE6iJ,GAAGhrK,EAAE8oM,KAAK,MAASlsL,EAAE+2M,GAAIxrM,EAAEvL,GAAG,GAAO,EAAMuL,EAAE96B,EAAmBuvB,GAAhB9rB,EAAEq3B,EAAE5oB,EAAEqtL,KAAKv/L,KAAUuF,GAAGgqB,EAAE9rB,GAAG,EAAEq3B,EAAE/6B,EAAEmS,EAAE3M,EAAEu1B,EAAE/6B,EAAEwvB,EAAEhqB,GAAQu1B,EAAE/6B,EAAEwvB,EAAEvvB,EAAE6T,EAAE0b,EAAWkiN,GAAIzxO,EAAEqoB,MAAItoB,EAAEkmS,IAAInrQ,EAAE5oB,IAAKqd,EAAE,IAAIuL,EAAE/6B,EAAEmS,GAAGnS,EAAEwvB,GAAGxvB,EAAEwvB,EAAExvB,EAAEmS,EAAE4oB,EAAE5oB,EAAEqtL,KAAKv/L,IAAI86B,EAAE/6B,EAAEwvB,EAAExvB,EAAEwvB,EAAExvB,EAAEmS,EAAE4oB,EAAE5oB,EAAEqtL,KAAKv/L,GAAI,CAsHhH4kW,CAAI5kW,EAAEkS,GAAG3M,EAAE,KAAKvH,EAAE,KAAQyF,EAAE,CAA+B,IAAJzF,EAAjBuH,EAAEo4K,IAAX7iJ,EAAEnoB,EAAEgpM,MAAYF,KAAK,KAAe3gL,EAAEygL,MAAMv9M,EAAE2/K,GAAG7iJ,EAAE2gL,KAAK,KAAKl2M,EAAExF,EAAEmS,EAAE,EAAElU,EAAE+B,EAAEwvB,EAAE,EAAEluB,IAAIkE,EAAEvF,IAAIuF,EAAExF,EAAEwvB,EAAE,EAAE,CAAIzb,KA/qBnT,SAAa9T,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAU,IAAR5oB,EAAE,EAAEqd,EAAE,EAAMuL,EAAE96B,EAAE27M,KAAK7gL,EAAEygL,MAAOx7M,EAAE49K,GAAG7iJ,EAAE2gL,KAAK,KAAKvpM,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAEnS,EAAEA,EAAEmS,GAAGqd,EAAE0jH,EAAK3/H,KAAKugB,IAAItE,EAAExvB,EAAEA,EAAEwvB,GAAG,IAAIhqB,EAAEvF,EAAE27M,KAAKp2M,EAAEg2M,OAAOx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,MAAO17M,EAAEmS,EAAEA,EAAEnS,EAAEA,EAAEwvB,EAAEA,CAAE,CA+qBgIs1U,CAAIlyV,GAAMlP,IAAG8B,EAAExF,EAAEmS,EAAE,EAAElU,EAAE+B,EAAEwvB,EAAE,GAAG,CACpV,SAASqtT,IAAI58U,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAkK,GAAhKnB,EAAEgrK,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAIzO,EAAEzD,EAAEqoB,EAAE43K,IAAI4I,MAAMG,MAAMz5K,EAAEvvB,EAAEqoB,EAAE43K,GAAG87F,KAAKh8R,EAAEC,EAAEqoB,EAAE43K,GAAG+7F,KAAKh+R,EAAEgC,EAAEqoB,EAAE43K,GAAGg8F,KAAKnoR,EAAE9T,EAAE4kC,EAAEq7J,IAAIssG,MAAMuI,MAAM1iS,GAAGmd,IAAIxvB,IAAI/B,GAAW,GAAR2U,EAAEssK,MAwI1K,SAAaj/K,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE,IAAIpU,EAAE2/K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAIypM,KAAK39M,EAAEu9M,OAAwBh2M,GAAjB9B,EAAEk6K,GAAG3/K,EAAEy9M,KAAK,MAASlsL,EAAE82M,GAAI5iO,EAAE8rB,GAAG,GAAO,EAAM9rB,EAAEzD,EAAmBuF,GAAhB6M,EAAE3O,EAAEyO,EAAEqtL,KAAKrtL,KAAalS,EAAEmR,GAAmB,GAAhB1N,EAAE8rB,EAAExvB,EAAEwvB,EAAErxB,QAAWyU,GAAGpN,EAAE6M,GAAG,EAAE3O,EAAE1D,EAAEA,EAAE4S,EAAElP,EAAE1D,EAAEC,EAAE2S,IAAqC5S,GAA5B49K,GAAG0pB,GAAI5jM,EAAE8rB,EAAExvB,EAAE,GAAG,KAAKw/L,KAAKrtL,EAAOE,GAAG,EAAE3O,EAAE1D,EAAEA,EAAEkzI,EAAK3/H,KAAKugB,IAAI,EAAE9zB,GAAG0D,EAAE1D,EAAEC,EAAEuF,EAAExF,EAAEqS,IAAS3O,EAAE1D,EAAEC,EAAEA,EAAEiU,EAAE1O,EAAWksO,GAAIzxO,EAAEqoB,MAAIyS,EAAEmrQ,IAAIxiS,EAAEyO,IAAKnS,EAAE,IAAI0D,EAAE1D,EAAEA,GAAG+6B,EAAE/6B,GAAG+6B,EAAE/6B,EAAE+6B,EAAE96B,EAAEyD,EAAEyO,EAAEqtL,KAAKrtL,IAAIzO,EAAE1D,EAAEC,EAAE86B,EAAE/6B,EAAE+6B,EAAE96B,EAAEyD,EAAEyO,EAAEqtL,KAAKrtL,GAAI,CAxIlO4yV,CAAI9kW,EAAEkS,GAAG7Q,EAAE,KAAKkE,EAAE,KAAQ9B,EAAE,CAA+B,IAAJ8B,EAAjBlE,EAAEs8K,IAAX7iJ,EAAEnoB,EAAEgpM,MAAYF,KAAK,KAAe3gL,EAAEygL,MAAMh2M,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,KAAKp6M,EAAEtB,EAAEA,EAAE,EAAEwF,EAAExF,EAAEC,EAAE,EAAEoS,IAAI/Q,EAAErB,IAAIqB,EAAEtB,EAAEC,EAAE,EAAE,CAAI8T,KA/qBnT,SAAa9T,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAU,IAARvL,EAAE,EAAErd,EAAE,EAAM4oB,EAAE96B,EAAE27M,KAAK7gL,EAAEygL,MAAOx7M,EAAE49K,GAAG7iJ,EAAE2gL,KAAK,KAAKlsL,EAAE0jH,EAAK3/H,KAAKugB,IAAItE,EAAExvB,EAAEA,EAAEA,GAAGmS,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAEnS,EAAEA,EAAEC,GAAG,IAAIuF,EAAEvF,EAAE27M,KAAKp2M,EAAEg2M,OAAOx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,MAAO17M,EAAEA,EAAEwvB,EAAExvB,EAAEA,EAAEC,EAAEkS,CAAE,CA+qBgI6yV,CAAIpyV,GAAMlP,IAAGpC,EAAEtB,EAAEA,EAAE,EAAEwF,EAAExF,EAAEC,EAAE,GAAG,CACpV,SAASs/T,IAAIt/T,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAIoN,EAAElP,EAAEzF,EAAIqD,EAAQ,GAANkE,EAAE2M,EAAE7Q,EAAK6Q,EAAE9O,GAAG,EAAG,OAAO,EAA8B,GAAnB8O,EAAE9O,EAAEmsB,EAAErd,EAAE6jK,GAAIxmJ,EAAEhqB,EAAE2M,GAAM3M,IAAI05P,MAAMg4B,MAAM1xR,GAAG2xR,IAAK,IAAIvkR,EAAE,IAAIgzJ,GAAIzzJ,EAAEE,GAAGO,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAyB,IAAImD,EAA+B,IAAIynK,GAA9B,IAAInD,GAAK,IAAIkD,GAApC8U,GAAGC,GAAIjrK,GAAG,KAAkC3S,EAAE2S,IAAeqyM,GAAI3jN,EAAErB,IAAqC,GAANhC,GAANyF,EAAlBk6K,GAAGC,GAAIv8K,EAAErB,GAAG,IAAID,EAAM/B,GAAMqD,EAAK6Q,EAAEqd,GAAG9rB,EAAE8rB,IAAMvxB,GAAGi5R,KAAKj5R,GAAGk5R,MAAQooC,IAAIt/T,EAAEyD,EAAE8rB,GAAI,OAAO,EAAU,OAAO,CAAI,CACpV,SAASy1U,IAAIhlW,GAAG,IAAIkS,EAAE,OAAc,IAAL,GAALlS,EAAEgtN,IAAiBs6H,IAAItnV,KAAGkS,EAAE,IAAI27M,GAAIy5H,IAAItnV,KAAMA,GAAG,iBAAiB45L,GAAI1nL,EAAc,IAAXlS,EAAEw1K,GAAG+pH,MAASrtR,EAAElS,GAAG,eAAe45L,GAAI1nL,EAAc,IAAXlS,EAAEw1K,GAAGuvI,MAAS7yS,EAAElS,GAAG,gBAAgB45L,GAAI1nL,EAAc,IAAXlS,EAAEw1K,GAAG8/E,MAASpjP,EAAElS,GAAG,0BAA0By8M,GAAIvqM,EAAElS,EAAEoS,GAAGF,EAAElS,GAAG,iBAAiB45L,GAAI1nL,EAAc,IAAXlS,EAAEw1K,GAAGqvI,MAAS3yS,EAAElS,GAAG,cAAc45L,GAAI1nL,EAAc,IAAXlS,EAAEw1K,GAAGq8D,MAAS3/N,EAAElS,GAAG,IAAWkS,EAAElS,EAAC,CAIpV,SAASilW,IAAIjlW,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE,GAAM,MAAHmd,EAAuB,IAAdhqB,EAAEo4K,GAAG39K,EAAE2S,EAAE,KAASlP,EAAE,EAAEA,EAAEzD,EAAEhC,IAAIyF,EAAU,IAAPkP,EAAEpN,EAAE9B,IAAQykN,MAAMh2M,EAAG,OAAO6+R,IAAI/wS,EAAE2S,EAAE5S,GAAuN,OAA/MosM,KAAHrxK,EAAS6iJ,GAAGzrK,EAAE,IAAIq1M,KAAK5pC,GAAGpuJ,EAAE,IAAIq4L,GAAI11M,EAAEqd,GAAO+xL,GAAIthN,EAAEuF,IAAI6M,GAAGwoM,IAAI56M,EAAEkS,GAAGnS,EAAEwsT,IAAIvsT,EAAE86B,EAAE/6B,GAAG/B,EAAEkU,EAAE+rN,KAAKC,GAAIl+N,EAAE,EAAEkS,EAAE,KAAKqd,EAAE4uM,IAAIn+N,EAAEkS,EAAEqd,EAAEs6J,GAAG33K,EAAE,KAAwB,IAAlByrK,GAAGzrK,EAAE,IAAIsjK,GAAGmyC,MAASv1M,GAAG8rN,GAAIl+N,EAAE,EAAEkS,EAAEA,EAAEmsN,KAAK9uM,GAAG,EAAEnd,GAAGrS,EAAEA,EAAEu+N,GAAGtgO,GAAI+B,EAAE/B,GAAQ+B,EAAEwsT,IAAIvsT,EAAE86B,EAAE/6B,GAAUA,CAAC,CAGtV,SAASu+R,MAAMh6R,KAAK4N,EAAE,IAAIsuM,GAAIl8M,KAAKvE,EAAE,IAAIygN,GAAIl8M,KAAKiB,EAAE,IAAIi7M,GAAIl8M,KAAKirB,EAAE,IAAIixL,GAAIl8M,KAAKtE,EAAE,IAAIwyK,GAAIluK,KAAKw2B,EAAE,IAAI03I,GAAI28E,GAAI1oI,IAAG,IAAIqoC,GAAI,IAAIC,IAAKogG,GAAI+1G,IAAG,IAAIx1M,GAAI,IAAIC,IAAKw/F,GAAI9uJ,IAAG,IAAIuvD,GAAI,IAAIC,IAAKs/F,GAAIg2G,IAAG,IAAIp1M,GAAI,IAAIC,IAAKm/F,GAAI7uJ,IAAG,IAAI2vD,GAAI,IAAIC,IAAKi/F,GAAIi2G,IAAG,IAAIp2M,GAAI,IAAIC,IAAKkgG,GAAIk2G,IAAG,IAAIn2M,GAAI,IAAIC,IAAKggG,GAAIm2G,IAAG,IAAIl2M,GAAI,IAAIC,IAAK8/F,GAAIo2G,IAAG,IAAIj2M,GAAI,IAAIC,IAAK4/F,GAAIq2G,IAAG,IAAIh2M,GAAI,IAAIC,GAAI,CACxV,SAAS68F,IAAItsP,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAkT,OAAhTmoB,EAAE,GAAE5oB,EAAE6U,IAAI/mB,IAAOylW,OAAO3qU,GAAG,GAAe,IAAX96B,EAAEw1K,GAAGqvI,OAAU/pR,GAAG,GAAM+uJ,GAAG7pL,EAAE,KAAgBuF,EAAE6nP,IAAb79N,EAAEouJ,GAAG39K,EAAE,KAAyB,IAAXuvB,EAAEimJ,GAAGyhE,OAAUn8M,GAAG,IAAOv1B,IAAGuxO,GAAI6a,GAAIpsP,IAAIu1B,GAAG,IAAEnoB,EAAEpN,EAAE0O,GAAK,IAAO,GAAJtB,KAASmoB,GAAG,IAAgB,IAAXv1B,EAAEiwK,GAAGyhE,OAAUn8M,GAAG,KAAgB,IAAXvL,EAAEimJ,GAAGmyC,OAAU7sL,GAAGiqR,KAAKjqR,GAAGykQ,KAAY11G,GAAG33K,EAAE,KAAM4oB,GAAG,KAAS/6B,EAAEmS,EAAEuzV,OAAmB,IAAJ,EAAJ1lW,EAAE/B,KAAU88B,GAAG,KAAkB,IAAN,IAAL96B,EAAEw1K,MAAa16I,GAAG,KAAYA,CAAC,CACxV,SAASwhO,IAAGt8P,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAA2B,IAAzB3S,EAAK,MAAHA,EAAQ+3L,KAAKl3B,GAAI7gK,GAAGA,GAAOuF,EAAE,EAAEA,EAAE2M,EAAEhU,OAAOqH,IAAK2M,EAAE3M,GAAGs7F,IAAG3uF,EAAE3M,IAAsB,IAAlBgqB,EAAE,IAAIk1J,GAAI9xK,EAAE,EAAE5S,EAAE,EAAQA,EAAEmS,EAAEhU,SAAmC,IAA3B48B,EAAE96B,EAAEssB,QAAQ,KAAK3Z,KAAmB4c,EAAEvvB,GAAG,GAAG83L,GAAO,MAAH93L,EAAQ+3L,KAAKl3B,GAAI7gK,GAAGA,GAAG2S,EAAEmoB,GAAG6hL,GAAIptL,EAAErd,EAAEnS,MAAM4S,EAAEmoB,EAAE,EAAsB,GAApBm/N,GAAI1qO,EAAEvvB,EAAE2S,EAAE3S,EAAE9B,QAAW6B,EAAEmS,EAAEhU,OAAO,CAAyB,IAAxBqxB,EAAEvvB,GAAG,KAAK28M,GAAIptL,EAAErd,EAAEnS,MAAYA,EAAEmS,EAAEhU,QAAQqxB,EAAEvvB,GAAGgkL,IAAI24B,GAAIptL,EAAErd,EAAEnS,MAAMwvB,EAAEvvB,GAAG,GAAG,CAAC,OAAOuvB,EAAEvvB,CAAC,CAEzV,SAAS2+O,IAAI3+O,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAM,IAAJuxB,EAAE,EAAMvxB,EAAE,IAAI2nK,GAAIzzJ,GAAGlU,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAQ,CAAuC,IAAtCuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,IAAI00Q,GAAI1yQ,EAAEkS,EAAElS,EAAED,EAAE0D,EAAEL,IAAIuP,EAAE,EAAMpN,EAAE,IAAIisQ,GAAI/tQ,EAAEyO,GAAG8yM,GAAIz/M,EAAEvF,IAAIglN,GAAIz/M,EAAE2M,IAA4C+tO,GAAvClgP,EAAE49K,GAAGqnC,GAAIz/M,EAAEvF,GAAG49K,GAAIr4K,EAAEvF,GAAG49K,GAAIr4K,EAAE2M,GAAG,MAAe4oB,EAAEo/J,GAAIl6L,EAAEyD,GAAG1D,EAAEwvB,EAAExvB,EAAEA,EAAEA,EAAEwvB,IAAQvvB,EAAED,EAAE0D,EAAEL,KAAImsB,GAAGq+O,GAAI5tQ,EAAEkS,EAAE4oB,GAAG6nO,GAAI3iQ,EAAEA,EAAEg4M,GAAIl9K,OAAYnoB,EAAc,IAAX4c,GAAGvvB,EAAEkS,EAAEnS,EAAE4S,GAASyvK,GAAIpiL,EAAEA,IAAI6yQ,GAAI7yQ,EAAEkS,EAAEyrK,GAAG41D,GAAIvzO,EAAEA,GAAG,IAAIA,EAAG,CAAC,OAAOuvB,CAAC,CAGzV,SAASm2U,IAAI1lW,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAY,IAAVA,EAAE,IAAI+uK,GAAQzyK,EAAE,IAAI4lK,GAAI3lK,EAAEA,EAAEkS,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyBy4L,GAAIlzL,EAApByO,EAAEyrK,GAAGC,GAAI79K,GAAG,IAAY,IAAIuyK,IAAK,IAAI/sK,EAAE,IAAIogK,GAAI3lK,EAAEA,EAAEkS,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAiC,KAAxBgU,EAAEyrK,GAAGC,GAAIr4K,GAAG,KAAMvH,EAAEu4K,IAAQ5jK,EAAET,EAAEqd,EAAEosL,KAAKhpM,EAAE4oM,MAAOzgL,EAAE6iJ,GAAGhrK,EAAE8oM,KAAK,IAAI99B,GAAGk9B,GAAGq4B,GAAIzvO,EAAEq3B,EAAEA,IAAI,IAAI+sL,GAAG31M,GAAI,IAAIqd,EAAE,IAAIo2I,GAAI3lK,EAAEA,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,SAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAMA,EAAE8/O,KAAKn9P,EAAEqd,EAAEouJ,GAAGk9B,GAAGq4B,GAAIzvO,EAAEq3B,EAAE5oB,IAAI,IAAIivT,IAAInhU,EAAE,CAC3V,SAAS2lW,IAAI3lW,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAY,IAAVA,EAAE,IAAI+uK,GAAQzyK,EAAE,IAAI4lK,GAAI3lK,EAAEA,EAAEkS,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyBy4L,GAAIlzL,EAApByO,EAAEyrK,GAAGC,GAAI79K,GAAG,IAAY,IAAIuyK,IAAK,IAAI/sK,EAAE,IAAIogK,GAAI3lK,EAAEA,EAAEkS,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAiC,KAAxBgU,EAAEyrK,GAAGC,GAAIr4K,GAAG,KAAMrF,EAAEq2K,IAAQ5jK,EAAET,EAAE4oB,EAAE6gL,KAAKhpM,EAAE4oM,MAAOzgL,EAAE6iJ,GAAGhrK,EAAE8oM,KAAK,IAAI99B,GAAGk9B,GAAGq4B,GAAIzvO,EAAEq3B,EAAEA,IAAI,IAAI+sL,GAAG31M,GAAI,IAAIqd,EAAE,IAAIo2I,GAAI3lK,EAAEA,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,SAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAMuL,EAAEu0O,KAAKn9P,EAAE4oB,EAAE6iJ,GAAGk9B,GAAGq4B,GAAIzvO,EAAEq3B,EAAE5oB,IAAI,IAAIgmS,IAAIl4S,EAAE,CAC3V,SAASmyT,IAAInyT,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAiD,IA91B7E,SAAa96B,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAE,IAAI8B,EAAE,EAAEA,EAAE2M,EAAEhS,EAAEqF,IAAe,IAAVu1B,EAAEv1B,EAAE2M,EAAEE,EAAEmd,EAAM5c,EAAE,EAAEA,EAAET,EAAE9O,EAAEuP,IAAKlP,EAAEkP,EAAET,EAAE7Q,EAAEtB,EAAEw2S,IAAIrkS,EAAE3M,EAAEoN,GAAG2rT,IAAIt+T,EAAE86B,EAAEr3B,IAAI+9T,IAAIxhU,EAAE86B,EAAEr3B,GAAG86T,IAAIrsT,EAAE3M,EAAEoN,KAAKurT,IAAIl+T,EAAE86B,EAAEr3B,IAAIg+T,IAAIzhU,EAAE86B,EAAEr3B,GAAK,CA81BtImiW,CAAI5lW,EAAEkS,EAAEqd,EAAExvB,GA/sJxC,SAAaC,EAAEkS,GAAGlS,EAAE2S,EAAET,CAAC,CA+sJoB2zV,CAAI3zV,EAAElS,EAAEoS,EAAEF,EAAEE,EAAEmd,GA9sJzD,SAAavvB,EAAEkS,GAAGlS,EAAEhC,EAAEkU,CAAC,CA8sJqC4zV,CAAI5zV,EAAElS,EAAEqB,EAAE6Q,EAAE7Q,EAAEtB,GAAO+6B,EAAE,IAAI6qI,GAAIzzJ,EAAE4oB,GAAGA,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAA0B,QAAjBqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,MAAc96B,EAAE2S,GAAG,KAAK,EAAE2jS,GAAIt2S,EAAEkS,EAAES,EAAEpN,EAAE2M,EAAElS,EAAE,EAAEkS,EAAES,EAAEpN,EAAEgqB,EAAEvvB,EAAEkS,EAAElU,EAAE,GAAG,MAAM,KAAK,EAAEs4S,GAAIt2S,EAAEkS,EAAES,EAAET,EAAEhS,EAAEgS,EAAElU,EAAEuH,EAAE2M,EAAElS,EAAEA,EAAEE,EAAE,EAAEgS,EAAElU,EAAEuH,EAAEgqB,EAAEvvB,GAAG,MAAM,KAAK,EAAEs2S,GAAIt2S,EAAEkS,EAAES,EAAEpN,EAAE2M,EAAElS,EAAEkS,EAAElU,EAAEkU,EAAE9O,EAAE8O,EAAES,EAAEpN,EAAEgqB,EAAEvvB,EAAEA,EAAEoD,EAAE,GAAG,MAAM,QAAQkzS,GAAIt2S,EAAE,EAAEkS,EAAElU,EAAEuH,EAAE2M,EAAElS,EAAEkS,EAAES,EAAE,EAAET,EAAElU,EAAEuH,EAAEgqB,EAAEvvB,GAAK,CAC3V,SAASw2S,IAAItkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAInoB,EAAI3U,EAAE,IAAI,GAAGuxB,GAAGrd,EAAEhS,EAAG,MAAMgzK,GAAI,IAAI0C,IAAK53K,EAAEuxB,GAAG,EAAS5c,EAAEgmL,GAAI,EAAEsxB,GAAItxB,GAAf,GAAFppK,EAAuB,KAAQrd,EAAEtS,EAAEG,GAAG/B,GAAV88B,EAAa49J,GAAIxmL,EAAEtS,EAAEG,GAAG/B,GAAG2U,GAAeimL,GAAI1mL,EAAEtS,EAAEG,GAAG/B,GAAGulO,GAAI5wN,IAAKA,EAAEgmL,GAAIhmL,EAAE,GAAMT,EAAEtS,EAAEG,GAAG/B,GAAVuH,EAAamzL,GAAIxmL,EAAEtS,EAAEG,GAAG/B,GAAG2U,GAAeimL,GAAI1mL,EAAEtS,EAAEG,GAAG/B,GAAGulO,GAAI5wN,GAAI,CAAC,MAAM3S,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAAYkzK,GAAI,IAAIgO,GAAI29I,IAAI3sT,EAAEhS,EAAE,IAAIgS,EAAE9O,EAAE07T,IAAIvvS,EAAEy0J,IAAIjkL,EAAEg/T,MAAiB7rJ,GAAIlzK,IAAE,CAAC,CAC5V,SAASiiW,IAAIjiW,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAM+6B,EAAEnoB,EAAKT,IAAG4oB,EAAEwlJ,GAAIC,GAAGgoB,IAAIr2L,GAAGw0R,MAAMq/D,QAAQhmW,EAAE4S,EAAE4c,EAAE+wJ,GAAIC,GAAGgoB,IAAIr2L,EAAEysV,OAAO,EAAE52J,GAAI71L,EAAEsnU,IAAIxhI,GAAIiS,GAAIrf,GAAI33D,EAAK3/H,KAAKY,MAAM4mB,OAAOitK,GAAI71L,EAAEunU,IAAIzhI,GAAIiS,GAAIrf,GAAI33D,EAAK3/H,KAAKY,MAAMvB,OAAc,GAAPT,EAAEnS,EAAEmS,GAAM+vV,IAAIjiW,EAAE29K,GAAGgrC,GAA8B,IAAIh7C,GAA5BmxF,IAAK,IAAIpxF,GAAIx7J,GAAIlS,EAAED,EAAE,KAAgB,IAAIwvB,EAAE+wJ,GAAIC,GAAGgoB,IAAIr2L,EAAEysV,OAAO3+V,EAAEA,EAAED,EAAEugL,GAAIC,GAAGgoB,IAAIr2L,EAAE8zV,QAAoB,MAAZz9J,IAAIr2L,EAAEiuV,MAAY8B,IAAIjiW,EAAE29K,GAAG4qB,IAAIr2L,EAAEiuV,KAAK,IAAI5wU,EAAExvB,GAAG,CAI5V,SAASw1V,IAAIv1V,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,OAAc,IAAL,GAALC,EAAEgtN,IAAiBmqH,IAAIn3U,IAAGkS,EAAE,IAAI47M,GAAItgC,MAAKj+J,EAAEvvB,EAAEqB,GAAkJu7M,GAAIA,IAAK1qM,EAAElS,GAAG,KAAKkS,GAAGqd,GAAG,OAAjKvvB,EAAEJ,IAAII,EAAEJ,EAAE,IAAI06L,GAAIrN,IAAGjtL,EAAE,EAAE,IAAOA,EAAEJ,EAAE5B,EAAE,MAAG+B,IAAIC,EAAEJ,IAAII,EAAEJ,EAAE,IAAI06L,GAAIrN,IAAGjtL,EAAE,EAAE,IAAI29K,GAAG0O,GAAIrsL,EAAEJ,EAAE,GAAG,MAAMI,IAAM48M,GAAIA,IAAK1qM,EAAElS,GAAG,KAAKkS,GAAGnS,GAAG,OAAyC68M,GAAI/iB,GAAI+iB,GAAI/iB,GAAI+iB,GAAI/iB,GAAI+iB,GAAI/iB,IAAK3nL,EAAElS,GAAG,KAAKkS,GAAGlS,EAAEhC,GAAG,KAAKgC,EAAEoS,GAAG,OAAOpS,EAAE2S,GAAG,KAAK3S,EAAE86B,GAAG,KAAY5oB,EAAElS,EAAC,CAC7V,SAAS00V,IAAI10V,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,OAAc,IAAL,GAALC,EAAEgtN,IAAiBmqH,IAAIn3U,IAAGkS,EAAE,IAAI47M,GAAIlgC,MAAKr+J,EAAEvvB,EAAEqB,GAAkJu7M,GAAIA,IAAK1qM,EAAElS,GAAG,KAAKkS,GAAGqd,GAAG,OAAjKvvB,EAAEJ,IAAII,EAAEJ,EAAE,IAAI06L,GAAIrN,IAAGjtL,EAAE,EAAE,IAAOA,EAAEJ,EAAE5B,EAAE,MAAG+B,IAAIC,EAAEJ,IAAII,EAAEJ,EAAE,IAAI06L,GAAIrN,IAAGjtL,EAAE,EAAE,IAAI29K,GAAG0O,GAAIrsL,EAAEJ,EAAE,GAAG,MAAMI,IAAM48M,GAAIA,IAAK1qM,EAAElS,GAAG,KAAKkS,GAAGnS,GAAG,OAAyC68M,GAAI/iB,GAAI+iB,GAAI/iB,GAAI+iB,GAAI/iB,GAAI+iB,GAAI/iB,IAAK3nL,EAAElS,GAAG,KAAKkS,GAAGlS,EAAEhC,GAAG,KAAKgC,EAAEoS,GAAG,OAAOpS,EAAE2S,GAAG,KAAK3S,EAAE86B,GAAG,KAAY5oB,EAAElS,EAAC,CAC7V,SAASmrS,IAAInrS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAI3U,EAAE,GAAM,MAAHkU,GAAmB,GAAVA,EAAEhU,OAAW,OAAO,KAA0B,KAArBqH,EAAEo4K,GAAG2M,GAAItqL,EAAEA,EAAEkS,GAAG,MAAW,CAAC,IAAInS,EAAgC,IAAIklK,GAA9B,IAAIR,GAAIzkK,EAAEkS,GAAIlS,EAAEspO,KAAK3tB,MAAiB57M,EAAEC,EAAEu7M,MAA6D,GAAnDzgL,EAAE6iJ,GAAG59K,EAAEC,EAAEy7M,KAAK,IAAoB9oM,GAArC4c,EAAqBouJ,GAAG7iJ,EAAEggL,KAAK,MAAUvrL,EAAEvxB,EAAEkU,EAAEhU,OAAUm+N,GAAI1pN,EAAE8gD,OAAO9gD,EAAEzU,OAAOF,EAAEA,GAAGkU,KAAKA,EAAEhU,QAAQyU,EAAEzU,QAAoC,IAA5Bg7L,GAAIvmL,EAAEA,EAAEzU,OAAOgU,EAAEhU,OAAO,IAAQ,CAAC,GAAGqH,EAAG,OAAO,KAAKA,EAAEgqB,CAAC,CAAIhqB,GAAG2pL,GAAIlvL,EAAEA,EAAEkS,EAAE3M,EAAE,CAAC,OAAOA,CAAC,CAE/V,SAASioT,IAAIxtT,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAMyyN,GAAIxyN,GAAGq9J,MAAMqkK,SAAc3hU,EAAE49K,GAAG4qB,IAAIvoM,EAAE0hU,KAAK,KAASrgS,OAAa9R,EAAmB,IAAIk4K,GAApBv1L,EAAEyrK,GAAGsL,GAAIwlH,KAAI,GAAa9wH,GAAG+pB,GAAIx1L,EAAEA,EAAEhU,QAAQ,GAAG,GAAI6B,EAAEkgM,IAAIuuG,MAAMQ,MAAMpnG,GAAIr4K,EAAEy/Q,KAAKpnG,GAAIr4K,EAAE0/Q,KAAKlvS,EAAEkgM,GAAGivG,MAAMtnG,GAAIr4K,EAAE2/Q,KAAKnvS,EAAEkgM,GAAGyuG,KAAK9mG,GAAIr4K,EAAEs/Q,KAAK9uS,EAAEkgM,GAAG0uG,KAAK/mG,GAAIr4K,EAAEu/Q,KAAK/uS,EAAEkgM,GAAG2uG,MAAMhnG,GAAIr4K,EAAEw/Q,KAAKhvS,EAAEkgM,GAAG4uG,KAAKjnG,GAAIr4K,EAAEm/Q,KAAK3uS,EAAEkgM,GAAG6uG,KAAKlnG,GAAIr4K,EAAEo/Q,KAAK5uS,EAAEkgM,GAAG8uG,MAAMnnG,GAAIr4K,EAAEq/Q,KAAK7mG,GAAI/nM,EAAE0hU,IAAInyS,IAAE,CAChW,SAAS02U,IAAIjmW,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAwE,IAAtE8B,EAAEo4K,GAAG4qB,IAAIvoM,GAAGgoM,MAAMuqE,MAAM,IAAa90D,GAAI,GAAb19M,EAAEC,EAAEoS,GAAamd,EAAErxB,QAAbqxB,EAAqBouJ,GAAG59K,EAAEwvB,EAAE,GAAG,IAAS5c,EAAE,IAAIgzJ,GAAIpgK,EAAE6M,GAAGO,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAyB,GAAG68M,GAAnBjgL,EAAE6iJ,GAAGC,GAAIjrK,GAAG,OAAeooM,GAAGxS,IAAIh5K,EAAEm4N,MAAM,CAAI5sN,EAAE1oB,IAAIqtK,MAAMM,MAAM//K,EAAEoD,EAAEmC,EAAEnC,GAAGu7P,IAAI7jO,EAAE+rK,KAAQ/rK,EAAE/6B,IAAG0D,EAAEq3B,EAAE56B,EAAEgS,EAAEA,EAAE4oB,EAAE96B,EAAEkS,EAAE4oB,EAAE96B,EAAEkS,EAAEzO,EAAEyO,IAAW4oB,EAAE1oB,GAAGy0L,KAAKthM,EAAEnC,EAAEpD,EAAEoD,IAAGu7P,IAAI7jO,EAAEilJ,KAAQjlJ,EAAE/6B,IAAG0D,EAAEq3B,EAAE56B,EAAEgS,EAAEA,EAAE4oB,EAAE96B,EAAEkS,EAAE4oB,EAAE96B,EAAEkS,IAAIzO,EAAEyO,KAAI,KAAK,CAAE,OAAO3M,CAAC,CAEhW,SAASy5V,IAAIh/V,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAE,KAAK+1K,GAAG33K,EAAE,MAAM23K,GAAG33K,EAAE,MAAM23K,GAAG33K,EAAE,MAAO,MAAMghK,GAAI,IAAI2O,GAAI,kEAAsP,OAApLlvK,EAAE3S,EAAEA,EAAE,EAAEhC,EAAEkU,EAAElU,EAAE+B,EAAE4S,EAAEtR,EAAE6Q,EAAEE,EAAE7M,EAAEoN,EAAEP,EAAEpU,EAAEkU,EAAES,EAAE3S,EAAEA,EAAE8T,EAAEzS,EAAE6Q,EAAE4oB,EAAE96B,EAAEA,EAAY4lO,GAAV9qM,EAAE,IAAI0+I,GAAU,IAAIy7B,GAAIj3M,EAAEqD,IAAIukO,GAAI9qM,EAAE,IAAIm6K,GAAIj3M,EAAE8V,IAAI8xN,GAAI9qM,EAAE,IAAIm6K,GAAI7iM,EAAE0B,IAAI8xN,GAAI9qM,EAAE,IAAIm6K,GAAI7iM,EAAE/Q,IAAiBwuQ,GAAbpsQ,EAAE,IAAI+lV,IAAI1uT,GAAS5oB,GAAGqd,GAAGonK,GAAI32L,EAAEkS,EAAEA,EAAEzO,GAAUA,CAAC,CACjW,SAASu9Q,IAAIhhR,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAI3U,EAAEoU,EAAE/Q,EAAI2R,EAAiB,IAAf8nB,EAAE,IAAIm6K,GAAI/iM,EAAEqd,GAAOluB,EAAE,IAAIskK,GAAI3lK,EAAEA,GAAGqB,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAAoC,IAAX2hL,IAAhBztK,EAAEurK,GAAGC,GAAIv8K,GAAG,KAAUzB,EAAEk7B,GAAO9nB,EAAE,IAAI2yJ,GAAIvzJ,EAAEA,GAAGY,EAAEhT,EAAEgT,EAAEuc,EAAEA,EAAErxB,QAAyB,IAAIqH,EAAE,IAAIogK,GAAxBgY,GAAGC,GAAI5qK,GAAG,IAAoBL,GAAGpN,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA8E,IAArDi4R,IAAhBp2R,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAUvF,EAAE86B,IAAGnoB,EAAEgrK,GAAG4qB,IAAIxoM,GAAGs9J,MAAM2hG,MAAM,MAASm3B,GAAIxjR,EAAEmoB,GAAO98B,EAAE,IAAI2nK,GAAI5lK,EAAEmS,GAAGlU,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAyB2hL,GAAdlC,GAAGC,GAAI5/K,GAAG,IAAU4B,EAAEk7B,EAAM,CACjW,SAASorU,IAAIlmW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAI3U,EAAEoU,EAAE/Q,EAAI2R,EAAiB,IAAf8nB,EAAE,IAAIm6K,GAAI/iM,EAAEqd,GAAOluB,EAAE,IAAIskK,GAAI3lK,EAAEA,GAAGqB,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAAoC,IAAX2hL,IAAhBztK,EAAEurK,GAAGC,GAAIv8K,GAAG,KAAUzB,EAAEk7B,GAAO9nB,EAAE,IAAI2yJ,GAAIvzJ,EAAEA,GAAGY,EAAEhT,EAAEgT,EAAEuc,EAAEA,EAAErxB,QAAyB,IAAIqH,EAAE,IAAIogK,GAAxBgY,GAAGC,GAAI5qK,GAAG,IAAoBL,GAAGpN,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA8E,IAArDi4R,IAAhBp2R,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAUvF,EAAE86B,IAAGnoB,EAAEgrK,GAAG4qB,IAAIxoM,GAAGs9J,MAAM2hG,MAAM,MAASm3B,GAAIxjR,EAAEmoB,GAAO98B,EAAE,IAAI2nK,GAAI5lK,EAAEmS,GAAGlU,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAyB2hL,GAAdlC,GAAGC,GAAI5/K,GAAG,IAAU4B,EAAEk7B,EAAM,CACjW,SAASqrU,IAAInmW,GAAG,GAA0C,KAArCA,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,GAAGlU,EAAM,MAAMk1K,GAAI,IAAI2P,GAAI,8BAAmC,GAA0C,KAArC7iL,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,GAAGvxB,EAAM,MAAMk1K,GAAI,IAAI2P,GAAI,8BAAiE,IAA7B7iL,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,MAASA,EAAEkS,EAAElU,GAAG,KAAKgC,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,EAAEvxB,GAAG,IAAK,MAAMk1K,GAAI,IAAI2P,GAAI,iCAAmC,CACjW,SAASujL,IAAIpmW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAyB,IAAvBA,EAAE,EAAY6uP,GAAV7nO,EAAE,IAAIs3I,GAAUlgK,GAAS4oB,EAAE5oB,GAAG4oB,EAAEvL,GAA0K,IAAvKvxB,EAAE2/K,GAAG41D,GAAIz4M,GAAG,KAAK1oB,EAAE,EAAE/Q,EAAEs8K,GAAG4qB,IAAIr2L,EAAEE,GAAGirJ,MAAMgpM,MAAM,KAAK1zV,EAAE2tK,GAAIC,GAAGgoB,IAAIr2L,EAAEE,EAAEk0V,OAAO7iW,EAAE68K,GAAIC,GAAGgoB,IAAIr2L,EAAEE,EAAEm0V,OAAUllW,IAAIo4Q,KAAME,OAAMvnQ,GAAGO,EAAEk8U,IAAI7wV,EAAEuH,EAAElE,GAAG+Q,GAAG3O,EAAE+2V,IAAIx8V,EAAEuH,IAAGuO,GAAGsuT,IAAIpkU,EAAE+B,EAAE/B,EAAEuH,GAAG6M,EAAM7M,EAAE,IAAIogK,GAAI3nK,EAAEkU,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAS6B,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAIgqB,EAAEouJ,GAAG0pB,GAAIrnM,EAAEkS,EAAEnS,EAAEqD,GAAG,MAAOyQ,IAAIC,GAAG4qU,IAAI1+U,EAAEuvB,IAAK,OAAOzb,CAAC,CAEjW,SAAS0yV,IAAIxmW,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,GAAyF,GAAtF3S,EAAEuvB,EAAExvB,EAAEkxU,KAAKjxU,EAAEA,EAAED,EAAEA,EAAEkxU,KAAK/+T,EAAK3M,IAAGvF,EAAEuvB,GAAGhqB,EAAE0rU,KAAKjxU,EAAEA,EAAED,GAAGwF,EAAE0rU,KAAK/+T,GAAElS,EAAEkS,EAAEA,EAAEqtL,KAAKv/L,EAAEA,EAAEA,EAAEkS,EAAEqtL,KAAKrtL,EAAM3M,EAA8C,OAAOA,EAAE04L,KAAKtrL,GAAG,KAAK,EAAE,KAAK,EAAE3S,EAAEuvB,GAAGhqB,EAAEg6L,KAAKv/L,EAAE2S,EAAEmoB,EAAE96B,EAAE2S,EAAE,MAAM,KAAK,EAAE3S,EAAEuvB,GAAG5c,EAAEmoB,EAAE96B,EAAE2S,EAAET,EAAEqtL,KAAKv/L,EAAE,MAAM,KAAK,EAAEA,EAAEuvB,GAAGhqB,EAAEg6L,KAAKv/L,EAAE2S,EAAE3S,EAAED,GAAG4S,EAAEmoB,EAAE5oB,EAAES,EAAET,EAAEqtL,KAAKrtL,EAAE,MAAM,KAAK,EAAElS,EAAEuvB,GAAGhqB,EAAEg6L,KAAKv/L,EAAE2S,EAAE3S,EAAED,GAAGwF,EAAEg6L,KAAKrtL,EAAES,EAAEmoB,EAAE5oB,EAAES,OAAvO4c,EAAGvvB,EAAEuvB,GAAG5c,EAAET,EAAEqtL,KAAKv/L,EAAIA,EAAEuvB,GAAGxvB,EAAEw/L,KAAKv/L,EAAE2S,CAAwM,CACpW,SAAS8zV,IAAIzmW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAsN,IAApNuE,KAAK4N,EAAE,IAAIogK,GAAIhuK,KAAKiB,EAAE,IAAI+sK,GAAIhuK,KAAKtE,EAAEA,EAAEsE,KAAKvE,EAAEmS,EA1kCxE,SAAalS,GAAG,IAAIkS,EAAEA,EAAElS,EAAEA,EAAE,IAAGkS,EAAEyrK,GAAGwtC,GAAG,IAAI2jB,GAAG7hB,GAAGi1E,GAAIhwR,GAAGlS,EAAE27M,KAAK,IAAIpoE,KAAM,IAAIhkH,EAAEvxB,GAAIqD,IAAI49P,MAAMg4B,MAAMj3R,EAAEkS,EAAE21M,GAAG31M,SAASA,EAAE7Q,IAAI49P,MAAMg4B,MAAMj3R,EAAEkS,EAAEm3M,GAAGrpN,EAAEkS,EAAE,CA0kCtEw0V,CAAIpiW,MAjtC9E,SAAatE,GAAG,IAAIkS,EAAEA,EAAElS,EAAEA,EAAE,IAAGkS,EAAEyrK,GAAGwtC,GAAG,IAAI2jB,GAAG7hB,GAAGm1E,GAAIlwR,GAAGlS,EAAE27M,KAAK,IAAIpoE,KAAM,IAAIxzI,EAAE/B,GAAIqD,IAAI49P,MAAMg4B,MAAMlhH,GAAI/1K,EAAEuF,EAAE2M,SAASA,EAAE7Q,IAAI49P,MAAMg4B,KAAK,CAitCjD0vE,CAAIriW,MAAMA,KAAK4N,EAAEmvB,KAAM/8B,KAAKirB,EAAEvvB,EAAEuvB,EAAEnsB,EAAIkB,KAAKirB,EAAEouJ,GAAGr5K,KAAK4N,EAAEmpM,GAAG,GAAG,IAAI9rL,EAAEnsB,EAAoB,GAAjBkB,KAAKiB,EAAEgqB,EAAErxB,OAAWoG,KAAKw2B,EAAE96B,EAAEuvB,EAAEnsB,EAAIkB,KAAKw2B,EAAE6iJ,GAAG0pB,GAAI/iM,KAAKiB,EAAEjB,KAAKiB,EAAEgqB,EAAErxB,OAAO,GAAG,IAAIqxB,EAAEnsB,EAAOrD,EAAE49K,GAAG4qB,IAAIvoM,GAAGgoM,MAAM+yI,MAAM,IAAIp/H,KAAK57M,EAAEw7M,MAAuB,GAAGiX,GAAnBjjM,EAAEouJ,GAAG59K,EAAE07M,KAAK,KAAcp+C,MAAMupM,MAAM,CAACtiW,KAAKvE,EAAE49K,GAAG4qB,IAAIh5K,EAAEq3U,KAAK,KAAK,KAAK,CAAE,CACpW,SAASC,IAAI7mW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAA0G,IAAxGtB,EAAE49K,GAAG+5B,GAAI13M,EAAEA,EAAEkS,GAAG,IAAI4oB,EAAE6iJ,GAAG+5B,GAAI13M,EAAEA,EAAEuvB,GAAG,IAAIhqB,EAAEo4K,GAAG+5B,GAAI13M,EAAEuF,EAAE2M,GAAG,IAAIS,EAAEgrK,GAAG+5B,GAAI13M,EAAEuF,EAAEgqB,GAAG,IAAIxvB,EAAEC,EAAE65N,GAAGtqM,EAAExvB,GAAG4S,EAAE3S,EAAE65N,GAAG3nN,EAAES,GAAOtR,EAAEy5B,EAAE96B,EAAE2hP,KAAKhmC,KAAKt6M,EAAEk6M,MAAOnpM,EAAEurK,GAAGt8K,EAAEo6M,KAAK,IAAI17M,EAAEC,EAAE65N,GAAGznN,EAAErS,GAAG4nL,GAAIhK,GAAG+5B,GAAI13M,EAAEuF,EAAE6M,GAAG,IAAIF,GAAGqnL,GAAG5b,GAAG+5B,GAAI13M,EAAEuF,EAAE6M,GAAG,IAAI7M,GAAG,IAAIvH,EAAEuH,EAAEvF,EAAE2hP,KAAKhmC,KAAK39M,EAAEu9M,MAAO93M,EAAEk6K,GAAG3/K,EAAEy9M,KAAK,IAAI9oM,EAAE3S,EAAE65N,GAAGp2N,EAAEkP,GAAGg1K,GAAIhK,GAAG+5B,GAAI13M,EAAEA,EAAEyD,GAAG,IAAI8rB,GAAGgqK,GAAG5b,GAAG+5B,GAAI13M,EAAEA,EAAEyD,GAAG,IAAIq3B,EAAG,CACpW,SAASu+S,IAAIr5U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAA0G,IAAxGtB,EAAE49K,GAAG+5B,GAAI13M,EAAEA,EAAEkS,GAAG,IAAI4oB,EAAE6iJ,GAAG+5B,GAAI13M,EAAEA,EAAEuvB,GAAG,IAAIhqB,EAAEo4K,GAAG+5B,GAAI13M,EAAEkS,EAAEA,GAAG,IAAIS,EAAEgrK,GAAG+5B,GAAI13M,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEC,EAAE65N,GAAGtqM,EAAExvB,GAAG4S,EAAE3S,EAAE65N,GAAG3nN,EAAES,GAAOtR,EAAEy5B,EAAE96B,EAAE2hP,KAAKhmC,KAAKt6M,EAAEk6M,MAAOnpM,EAAEurK,GAAGt8K,EAAEo6M,KAAK,IAAI17M,EAAEC,EAAE65N,GAAGznN,EAAErS,GAAG4nL,GAAIhK,GAAG+5B,GAAI13M,EAAEkS,EAAEE,GAAG,IAAIF,GAAGqnL,GAAG5b,GAAG+5B,GAAI13M,EAAEkS,EAAEE,GAAG,IAAI7M,GAAG,IAAIvH,EAAEuH,EAAEvF,EAAE2hP,KAAKhmC,KAAK39M,EAAEu9M,MAAO93M,EAAEk6K,GAAG3/K,EAAEy9M,KAAK,IAAI9oM,EAAE3S,EAAE65N,GAAGp2N,EAAEkP,GAAGg1K,GAAIhK,GAAG+5B,GAAI13M,EAAEA,EAAEyD,GAAG,IAAI8rB,GAAGgqK,GAAG5b,GAAG+5B,GAAI13M,EAAEA,EAAEyD,GAAG,IAAIq3B,EAAG,CACpW,SAASgsU,IAAI9mW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAmD,OAAjDs8R,IAAI3vR,EAAE,2BAA2B,GAAGnS,EAAE,IAAI4pV,IAAI3pV,GAAU29K,GAAG4qB,IAAIvoM,GAAGq9J,MAAM0pM,MAAM,KAAKp0V,GAAG,KAAK,EAAEpN,EAAE,IAAIgjJ,GAAI,KAAK,EAAEhjJ,EAAE,IAAIsiJ,GAAI,MAAM,QAAQtiJ,EAAE,IAAIijJ,GAAmD,GAA9Cj5H,EAAEhqB,EAAEyhW,GAAGhnW,EAAED,GAAGkiL,GAAIk6B,GAAG5T,IAAIvoM,EAAEinW,SAAS13U,EA0S/M,SAAavvB,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAIr3B,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAA6B,IAA3BrV,EAAE,IAAIs/J,GAAI/sK,EAAE,IAAI+sK,GAAIlvK,EAAE,KAASK,EAAEyO,EAAEypM,KAAKl4M,EAAE83M,MAAuBzgL,EAAE,IAAImxI,GAApB0R,GAAGl6K,EAAEg4M,KAAK,IAAgBz7M,GAAGuF,EAAEgqB,EAAEhqB,EAAEgqB,EAAErxB,QAAQ48B,EAAK13B,IAAG03B,EAAE/6B,EAAEqD,EAAEA,EAAEmC,EAAEu1B,GAAE13B,EAAE03B,EAAW,IAAT7mB,EAzJpL,SAAajU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAIr3B,EAAEzF,EAAEoU,EAAE/Q,EAAoD,IAAlDA,EAAE48K,GAAGmV,IAAGsW,IAAI,GAAG1pM,EAAEkS,EAAEqd,EAAErxB,OAAO,EAAE,GAAG,GAAGkU,EAAE,IAAIqkK,GAAI12K,EAAE,EAAM+6B,EAAE,IAAI6qI,GAAI3lK,EAAEkS,GAAG4oB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAQ,CAAiC,IAAhCqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,IAAIz5B,EAAEtB,KAAKqS,EAAEpS,EAAEi/K,KAASjhL,EAAE,IAAI2nK,GAAIpgK,EAAEvF,GAAGhC,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAyB,IAAIqxB,EAAE,IAAIu/M,GAAG7hB,GAAGm1E,GAA9BzkH,GAAGC,GAAI5/K,GAAG,KAA2BgC,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG77L,IAAKrd,EAAEyrK,GAAGwtC,GAAG57L,GAAG,IAAInd,EAAEpS,EAAE65N,GAAG3nN,EAAEE,GAAI,IAAI3O,EAAE,IAAIkiK,GAAIpgK,EAAEvF,GAAGyD,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAyB,IAAIqxB,EAAE,IAAIu/M,GAAG7hB,GAAGi1E,GAA9BvkH,GAAGC,GAAIn6K,GAAG,KAA2BzD,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG77L,IAAKrd,EAAEyrK,GAAGwtC,GAAG57L,GAAG,IAAInd,EAAEpS,EAAE0oN,GAAGx2M,EAAU,CAAC,OAAO7Q,CAAC,CAyJzP6lW,CAAIlnW,GAAOqB,EAAE,EAAEA,EAAEkE,EAAEgqB,EAAErxB,SAASmD,EAAE,CAA+D,IAA9DzB,EAAE,KAAKoU,EAAEm9N,IAAK1zB,GAAI,EAAEl4M,EAAEgqB,EAAErxB,QAAQy/K,GAAGp4K,EAAEgqB,EAAE,GAAG,OAAOA,EAAE,KAAKxvB,EAAEu2K,IAAQxiK,EAAE,EAAEA,EAAE9T,EAAEkS,EAAEqd,EAAErxB,SAAS4V,EAAGpB,EAAEsB,EAAEi/H,EAAK3/H,KAAKskB,IAAI5jB,EAAE9B,EAAE4B,GAAGm/H,EAAK3/H,KAAKskB,IAAI9jB,EAAElU,EAAEsS,GAAG,GAAEhS,EAAEN,EAAEqzI,EAAK3/H,KAAKskB,IAAI9jB,EAAElU,EAAEsS,GAAGQ,EAAE,GAAOA,GAAGN,EAAExS,EAAE5B,EAAEkC,IAAOkS,EAAE4B,EAAEhW,EAAE0U,GAAK2V,EAAEi4J,GAAIC,GAAGgoB,IAAIvoM,GAAGq9J,MAAM8pM,SAAzBtzV,EAAiCI,EAAEH,GAAGm/H,EAAK3/H,KAAKyd,IAAI/yB,EAAEqqB,IAAStoB,IAAGA,EAAE8T,GAAE0b,EAAEnd,GAAImd,EAAEzb,GAAOE,GAAGF,GAAGE,EAAE9B,IAAGtS,EAAEoU,EAAEA,EAAEk9N,GAAIl9N,IAAOub,IAAGwmJ,GAAI/iK,EAAEglM,GAAIzoL,EAAEA,IAAIA,EAAEvvB,GAAE,EAAK6jT,GAAIt0R,GAAG,CAAgC,OAA/B03L,KAAMlC,GAAI/xM,EAAEuc,EAAEvc,EAAEuc,EAAErxB,OAAO,MAAa8U,CAAC,CA1StYo0V,CAAIpnW,EAAEuvB,KAAQhqB,EAAE8hW,MAAM70I,GAAIxyN,EAAEsnW,KAAM,OAAO3pL,GAAG4qB,IAAIvoM,EAAEsnW,KAAK,KAAK30V,GAAG,KAAK,EAAE4c,EAAE4xT,IAAIphV,EAAEwvB,GAAG,MAAM,KAAK,EAAEA,EAAEyhT,IAAIjxU,EAAEwvB,GAAQA,EAAE8R,MAgejU,SAAarhC,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAIH,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAEC,EAAEC,EAAEz7F,EAAE/hF,EAAE,IAAI01M,GAAIvpN,EAAEkS,EAAE,GAAG7Q,EAAE6Q,EAAEypM,KAAKz7M,EAAE,EAAEkS,EAAEurK,GAAGt8K,EAAEo6M,KAAK,IAAIz7M,EAAEmR,EAAE,EAAEoe,EAAE,IAAIknJ,GAAI7sJ,EAAE,IAAI22L,GAAI,KAAM1sM,EAAE3B,EAAE2B,EAAE9T,EAAEk/K,MAAK,CAAgD,IAA5CqqC,GAAIz1M,EAAE3B,EAAE2B,EAAE9T,EAAEk/K,MAAoC52J,EAAE,IAAIs9I,GAApCgY,GAAG9pK,EAAE9T,EAAEs7M,GAAGxnM,EAAE0b,EAAE1b,EAAE3B,KAAK,IAAqBlS,GAAGqoB,EAAEroB,EAAEqoB,EAAEkH,EAAEA,EAAErxB,QAAQ,CAAiB,IAAI0B,EAAE,IAAIkvO,GAAG7hB,GAAGm1E,GAAhCnuR,EAAE0pK,GAAGC,GAAIv1J,GAAG,KAA2BroB,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGxrN,IAAKkU,EAAE6pK,GAAGwtC,GAAGvrN,GAAG,IAAIgqB,EAAE5pB,EAAE65N,GAAG/lN,EAAE8V,GAAG,IAAI5W,EAAE,IAAI87N,GAAG7hB,GAAGi1E,GAAIjuR,GAAGjU,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGp4M,IAAKc,EAAE6pK,GAAGwtC,GAAGn4M,GAAG,IAAI4W,EAAE5pB,EAAE0oN,GAAG50M,EAAS,CAAC,GAAG5T,EAAE,GAAGkS,EAAE,CAA6C,IAA/BsnN,GAAI7lN,EAAjBtO,EAAE,IAAI2zO,GAAIl5O,IAAyB05N,GAAI7lN,EAAjBinB,EAAE,IAAIo+M,GAAIl5O,IAAgB6iC,EAAEjZ,EAAE5pB,EAAE2hP,KAAKhmC,KAAK94K,EAAE04K,MAAO32K,EAAE+4I,GAAG96I,EAAE44K,KAAK,IAAQlsL,EAAEvvB,EAAEmH,GAAGy9B,OAAMzzB,EAAEoe,EAAEvvB,EAAE65N,GAAGj1L,EAAErV,IAAgBw4K,GAAbp1L,EAAE,IAAIopT,IAAI/7T,IAAUq9J,MAAMykI,MAAMxM,MAAME,MAAMljC,GAAI3/O,EAAEpN,GAAG49J,GAAIxwJ,GAAGssP,MAAMm4B,MAAgB7kC,GAAVnvP,EAAE,IAAI21U,IAAUpmU,GAAGgsP,IAAIv7P,GAAGq8K,MAAMG,MAAgB2yE,GAAVphE,EAAE,IAAI4nJ,IAAUpmU,GAAGgsP,IAAIxtE,EAAEzR,KAAkBqoB,GAAbhoM,EAAE,IAAIg8T,IAAI/7T,GAAS8hS,IAAItM,KAAKljC,GAAIvyP,EAAE+6B,GAAGqoI,GAAIpjK,EAAEq3R,KAAe7kC,GAAVv+O,EAAE,IAAI+kU,IAAUh5U,GAAG4+P,IAAI3qP,EAAE4rK,KAAe2yE,GAAVnhE,EAAE,IAAI2nJ,IAAUh5U,GAAG4+P,IAAIvtE,EAAE1R,KAAe2yE,GAAV9uP,EAAE,IAAIsnP,GAAUjmN,EAAErV,GAAG6iO,GAAI7uP,EAAEH,GAAaivP,GAAVz8J,EAAE,IAAIi1J,GAAU15D,GAAGihE,GAAIx8J,EAAE5hF,GAAGq+O,GAAIztN,EAAEwsJ,GAAG3tL,EAAE,IAAIo/P,GAAIlwP,EAAE5S,EAAEwD,EAAEqyF,EAAEhxD,GAAGmjK,GAAIp1L,GAAGq1L,MAAM0rF,KAAKjwR,GAAGskM,GAAIhoM,EAAE2zR,IAAIjwR,IAAG4tL,EAAE9tL,EAAEgsB,EAAEvxB,GAAOqD,GAAG+1R,OAAKp5R,EAAE2/K,GAAG4qB,IAAIlX,EAAEqiG,KAAK,MAAO3zR,EAAE0D,EAAEA,EAAEkP,EAAE3U,GAAG,IAAGqD,EAAEk6M,KAA6B,MAAvBnpM,EAAEurK,GAAGt8K,EAAEo6M,KAAK,IAAIz7M,CAAa,GAAGE,CAAC,CAAQ83M,GAAI7mM,EAAE,CAhezrBo2V,CAAIvnW,EAAEuvB,GAApBgzQ,IAAIrwR,EAAyB,CACpW,SAASo9U,IAAItvV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAQqQ,EAAEd,EAAuI,GAAnI,KAAKA,EAAEd,EAAoBouR,GAAlBxsR,EAAEqwP,GAAInkQ,EAAEojQ,GAAI7zO,GAAGvc,GAASgtP,GAAIhtP,EAAE00N,MAAM/0N,EAAEktP,GAAI7sP,EAAE+6K,KApfnG,SAAa/tL,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAQ0D,EAAEzF,EAAE,GAAGuxB,EAA6B,IAAI9rB,IAAjB1D,EAAE,IAAIgvO,GAAjBx/M,EAAEvvB,EAAE9B,SAA6BgU,EAAEnS,EAAEC,GAAGD,EAAEwvB,EAAE,GAAGk9K,KAAMC,KAAK,IAAI+f,GAAI1sN,GAAG0D,EAAE83M,OAAuBv9M,EAAEuiU,IAAIvgU,EAAE0wT,IAAI/6E,GAAGpmN,EAA7BouJ,GAAGl6K,EAAEg4M,KAAK,IAAuBz7M,SAAekS,EAAEA,IAAIA,EAAEA,EAAE,IAAI64M,GAAI19B,IAAGn7K,EAAE,EAAE,IAAS+4K,GAAL/4K,EAAEA,EAASlU,GAAK,CAoflGwpW,EAAfznW,EAAE,IAAI62M,GAAI52M,EAAE8T,IAAS9T,EAAED,EAAEmS,EAAES,GAAGlP,EAAEo8P,GAAI7sP,EAAEg7K,KAnf9I,SAAahuL,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAQ0D,EAAEzF,EAAE,GAAGuxB,EAA6B,IAAI9rB,IAAjB1D,EAAE,IAAIgvO,GAAjBx/M,EAAEvvB,EAAE9B,SAA6BgU,EAAEnS,EAAEC,GAAGD,EAAEwvB,EAAE,GAAGk9K,KAAMC,KAAK,IAAI+f,GAAI1sN,GAAG0D,EAAE83M,OAAuBv9M,EAAEuiU,IAAIvgU,EAAE0wT,IAAI/6E,GAAGpmN,EAA7BouJ,GAAGl6K,EAAEg4M,KAAK,IAAuBz7M,SAAekS,EAAEqd,IAAIrd,EAAEqd,EAAE,IAAIw7L,GAAI19B,IAAGn7K,EAAE,EAAE,IAAS+4K,GAAL/4K,EAAEqd,EAASvxB,GAAK,CAmfvDypW,EAAfliW,EAAE,IAAIsxM,GAAI72M,EAAE8T,IAAS9T,EAAEuF,EAAE2M,EAAEzO,GAA6C,KAArCqQ,EAAE5B,IAAI4B,EAAE5B,EAAE,IAAI64M,GAAI19B,IAAGv5K,EAAE,EAAE,IAAIA,EAAE5B,GAAGlU,GAA6C,KAArC8V,EAAEyb,IAAIzb,EAAEyb,EAAE,IAAIw7L,GAAI19B,IAAGv5K,EAAE,EAAE,IAAIA,EAAEyb,GAAGvxB,EAAmC,MAA7B88B,EAAEklO,GAAIhtP,EAAE00N,KAA2Bx0D,GAAI,IAAIyP,GAA5B+kL,IAAI5sU,EAAM6sU,MAA2D,OAAjCtwD,IAAIrkS,EAAEc,GAuejU,SAAa9T,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAM4S,EAAI3U,EAAEoU,EAAE/Q,EAAQnB,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAEC,EAAEC,EAAkH,IAAhHp9K,EAAE/B,EAAE2B,EAAE,IAAIohN,GAAG5sM,EAAE,IAAI4sM,GAAG5zN,EAAEw+P,GAAI5rP,EAAEg6K,KA5kC1G,SAAajuL,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAMpC,EAAE,GAAGkE,EAA6B,IAAIlE,IAAjBy5B,EAAE,IAAIi0M,GAAjBxpO,EAAEvF,EAAE9B,SAA6BgU,EAAE4oB,EAAE96B,GAAG86B,EAAEvL,EAAE,GAAGk9K,KAAMC,KAAK,IAAI+f,GAAI3xL,GAAGz5B,EAAEk6M,MAAuB93M,EAAEq8P,GAAIv6P,EAApBo4K,GAAGt8K,EAAEo6M,KAAK,IAAcz7M,GAAsB4nW,KAAnBj1V,EAAE,IAAIo1O,GAAI/nP,EAAEkS,EAAEqd,EAAExvB,IAASC,EAAE2S,EAAET,EAAES,EAAE4c,EAAE5c,EAAE5S,EAAE0D,EAAI,CA4kCpEokW,EAAnB9nW,EAAE,IAAIioP,GAAIhoP,EAAEuvB,EAAE1b,EAAEwU,IAASroB,EAAED,EAAEmS,EAAEnS,EAAEwvB,EAAExvB,EAAEA,EAAEsB,GAAMuoB,EAAE/V,EAAE7V,EAAPA,EAAU4rB,IAAG/V,EAAE7V,EAAE,IAAI+/L,GAAGlqL,EAAEA,EAAE0b,IAAWsT,EAAE7kC,EAAE29M,KAAK94K,EAAE04K,MAAyC,IAAlC32K,EAAE+4I,GAAG96I,EAAE44K,KAAK,KAA0Br4M,EAAnBu6K,GAAG0iB,GAAGxsL,EAAE+wB,GAAG,IAAY+2K,KAAKv4M,EAAEm4M,MAAM,CAA8B,GAA7Br7M,EAAEkD,EAAEq4M,OAAKtqM,EAAEwsK,GAAG45B,GAAGv3M,EAAED,EAAEG,GAAG,MAAmG,MAAnCyS,EAAEqtP,GAAI/rP,EAAEyzN,KAAiCx0D,GAAI,IAAIyP,GAAlCmlL,IAAI5nW,EAAE6nW,IAAIp1V,EAAMg1V,OAAhF/iU,EAAEr/B,IAAIq/B,EAAEr/B,EAAE,IAAIwlN,GAAI58B,IAAGvpJ,EAAE,GAAG,IAASqmJ,GAALrmJ,EAAEr/B,EAAS4L,EAAiE,CAAqC,IAAhC5N,EAAE8kB,EAAErqB,EAAPoU,EAAU7O,IAAG8kB,EAAErqB,EAAE,IAAI+/L,GAAG11K,EAAEA,EAAEkH,IAAW6hK,EAAEh/K,EAAEupM,KAAKvqB,EAAEmqB,MAAyC,IAAlCpqB,EAAExT,GAAGyT,EAAEqqB,KAAK,KAA0B/oM,EAAnBirK,GAAG0iB,GAAGh4K,EAAE8oK,GAAG,IAAYwqB,KAAKjpM,EAAE6oM,MAAM,CAA8B,GAA7BvnM,EAAEtB,EAAE+oM,OAAKtqM,EAAEwsK,GAAG45B,GAAGv3M,EAAED,EAAEiU,GAAG,MAAmG,MAAnCrB,EAAEqtP,GAAI/rP,EAAEyzN,KAAiCx0D,GAAI,IAAIyP,GAAlCmlL,IAAI9zV,EAAE+zV,IAAIp1V,EAAMg1V,OAAhFx2K,EAAEx+K,IAAIw+K,EAAEx+K,EAAE,IAAIo4M,GAAI58B,IAAGgD,EAAE,EAAE,KAAUlG,GAALkG,EAAEx+K,EAASxB,EAAiE,EAAGoe,EAAErd,IAAIqd,EAAErd,EAAE,IAAI64M,GAAI19B,IAAG99J,EAAE,EAAE,IAAc,GAAPA,EAAErd,EAAElU,KAAQuxB,EAAEA,IAAIA,EAAEA,EAAE,IAAIw7L,GAAI19B,IAAG99J,EAAE,EAAE,IAAW,GAAPA,EAAEA,EAAEvxB,MAASuxB,EAAErd,IAAIqd,EAAErd,EAAE,IAAI64M,GAAI19B,IAAG99J,EAAE,EAAE,IAAIA,EAAErd,EAAElU,GAAG,KAAKuxB,EAAEA,IAAIA,EAAEA,EAAE,IAAIw7L,GAAI19B,IAAG99J,EAAE,EAAE,IAAIA,EAAEA,EAAEvxB,GAAG,KAA4C,KAArCuxB,EAAEvvB,IAAIuvB,EAAEvvB,EAAE,IAAIs6L,GAAInM,IAAG5+J,EAAE,EAAE,IAAIA,EAAEvvB,GAAGhC,IAA+D8pO,IAAzDz2C,EAAE1T,GAAG0O,KAAM98J,EAAEvvB,IAAIuvB,EAAEvvB,EAAE,IAAIs6L,GAAInM,IAAG5+J,EAAE,EAAE,IAAIA,EAAEvvB,GAAG,GAAG,OAAkBioO,IAAI52C,KAAIkvG,GAAIlvG,EAAE1T,GAAG0O,KAAM98J,EAAErd,IAAIqd,EAAErd,EAAE,IAAI64M,GAAI19B,IAAG99J,EAAE,EAAE,IAAIA,EAAErd,GAAG,GAAG,KAAKsuR,GAAInvG,EAAE1T,GAAG0O,KAAM98J,EAAEA,IAAIA,EAAEA,EAAE,IAAIw7L,GAAI19B,IAAG99J,EAAE,EAAE,IAAIA,EAAEA,GAAG,GAAG,MAAM,CAve7uBy4U,CAAIhoW,EAAEgT,EAAEc,GAAKsjS,GAAIp3S,EAAEgT,EAAEc,EAAW,CAEpW,SAASm0V,IAAIjoW,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAc,IAAZyb,EAAE0oK,IAAI1yL,EAAE2yL,IAAQz0L,EAAE,IAAIkiK,GAAI3lK,EAAEuF,EAAEvF,GAAGyD,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAS48B,EAAE6iJ,GAAGC,GAAIn6K,GAAG,KAAK8B,EAAE0tI,EAAK3/H,KAAKsgB,IAAIruB,EAAEu1B,EAAEv1B,GAAGgqB,EAAE0jH,EAAK3/H,KAAKugB,IAAItE,EAAEuL,EAAEv1B,GAA8B,IAA3B2M,EAAE+rK,GAAGmV,IAAGsW,IAAI,GAAGn6K,EAAEhqB,EAAE,EAAE,GAAG,GAAOoN,EAAE,IAAIgzJ,GAAI3lK,EAAEuF,EAAEvF,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,SAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,MAAOpN,GAAGA,IAAI2M,EAAE4oB,EAAEv1B,GAAO,GAAJxF,EAAE,EAAU,MAALC,EAAEqB,EAAS,IAAUA,EAAE,EAAEyS,GAAV1B,EAAEpS,EAAEqB,GAAUnD,OAAOmD,EAAEyS,IAAO9V,EAAEoU,EAAE/Q,GAAG6Q,EAAEnS,MAAM/B,EAAKkU,EAAEhU,QAAQ6B,KAAjCsB,GAA4C,OAAO6Q,CAAC,CACtW,SAASg2V,IAAIloW,GAAG,OAAOA,EAAED,GAAG,KAAK,EAAE,KAAK,EAAG,OAAO,EAAK,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAG,OAAO,EAAM,KAAK,EAAG,OAAO49K,GAAGigL,IAAI59V,GAAG,IAAIA,GAAGA,EAAEE,EAAE,KAAK,EAAE,KAAK,EAAG,IAAS,GAANF,EAAEE,EAAO,OAAO,EAAW,OAAOF,EAAEoD,GAAG,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAG,OAAOw4M,GAAI57M,EAAEqB,EAAErB,EAAE86B,GAAG,KAAK,EAAE,KAAK,EAAG,OAAO96B,EAAEoS,GAAGpS,EAAEuF,EAAE,QAAS,OAAY,MAALvF,EAAEJ,EAAa,MAALI,EAAE2S,EAAQ2/K,GAAGtyL,EAAEJ,EAAEI,EAAE2S,GAAM,QAAS,OAAO,EAAO,CACtW,SAASw1V,IAAInoW,GAAGylM,GAAIzlM,EAAE,IAAI6wU,IAAIjqJ,GAAIJ,GAAIG,GAAID,GAAI,IAAIh4B,GAAI05M,KAAK,aAAa,4IAA4I,IAAIx3M,MAAO2qG,GAAIv7P,EAAEooW,IAAI5H,IAAItkD,KAAK3gD,GAAIv7P,EAAEooW,IAAIC,IAAI7nL,IAAI67H,MAAM9gD,GAAIv7P,EAAEooW,IAAI9vQ,IAAIkoF,IAAI+7H,MAAMhhD,GAAIv7P,EAAEooW,IAAIE,IAAI9nL,IAAIi8H,MAAMlhD,GAAIv7P,EAAEooW,IAAIG,IAAI/nL,IAAIm8H,MAAMphD,GAAIv7P,EAAEooW,IAAII,IAAIhoL,IAAIq8H,KAAK,CACzW,SAAS15C,IAAGnjQ,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAIr3B,EAA0H,GAAxH1D,EAAEkqN,GAAIlxB,GAAIm8F,IAAItzC,GAAI33B,GAAIlxB,GAAO,MAAH7mL,EAAQ,EAAEqxM,GAAGrxM,GAAGijR,MAAM,MAAM1xR,EAAEwmN,GAAIlxB,GAAIm8F,IAAItzC,GAAI33B,GAAIlxB,GAAO,MAAHxpK,EAAQ,EAAEg0L,GAAGh0L,GAAG4lQ,MAAM,OAAMr6P,EAAE+7P,GAAG72R,EAAEkS,EAAEnS,KAAW0D,GAAGq3B,EAAEA,GAAGwkN,GAAG/vN,EAAEuL,EAAE98B,GAAI,OAAOuxB,EAAc,GAAV0lQ,GAAGj1R,EAAEuvB,EAAE9rB,GAAS,MAAMyvK,GAAI,IAAI2O,GAAI,0BAA0BtyJ,IAAsB,OAAlBhqB,EAAE,IAAIq7O,GAAG1uO,EAAEnS,EAAEwvB,EAAE9rB,GAAMq3B,GAAGs5T,IAAGp0V,EAAE86B,GAAG8uS,IAAG5pU,EAAEuF,EAAEu1B,GAAGA,EAAEv1B,EAAE,KAAKu1B,EAAEvL,EAAE,KAAYuL,EAAE98B,IAAO4rU,IAAG5pU,EAAEuF,EAAE,MAAM2nB,IAAGltB,GAAU,KAAK,CAC1W,SAASyoW,IAAIzoW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAI3U,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEmB,EAAEkuB,EAAEvvB,EAAEuvB,EAAE5c,EAAE4c,EAAEvvB,EAAEuvB,EAAEA,EAAEvvB,EAAEkS,EAAuBtS,GAArBk7B,EAAE6iJ,GAAG+5B,GAAInoL,EAAEA,EAAErd,GAAG,MAAS4oB,EAAE56B,EAAE46B,EAAE96B,EAAOhC,EAAL88B,EAAE5oB,EAAK,IAAI+iM,GAAItiM,EAAE/S,GAAO,IAAIq1M,GAAI5zM,EAAEzB,GAASkU,EAALgnB,EAAEvL,EAAK,IAAI0lL,GAAI5zM,EAAEnB,GAAO,IAAI+0M,GAAItiM,EAAEzS,GAAIqF,EAAElE,EAAEkuB,EAAEnsB,IAAImC,GAAGvF,EAAEuvB,GAAkBnd,EAAE,IAAI6iM,GAArB1vM,GAAGgqB,EAAE6hK,EAAE7hK,EAAEpe,EAAEnR,EAAEkS,EAActS,GAAGoT,EAAE,IAAIiiM,GAAI1vM,EAAErF,GAAGizN,GAAIjhN,EAAElS,EAAEu+K,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC71L,EAAEoU,KAAOmd,EAAExvB,EAAEC,EAAEi/K,KAAK,IAAQl/K,EAAE,IAAIk1M,GAAI1vM,EAAEgqB,EAAErd,GAAG0zN,GAAI1zN,EAAElS,EAAED,IAAGozN,GAAIjhN,EAAElS,EAAEu+K,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC7gL,EAAEc,IAAI,CAC1W,SAASk1U,IAAIhpV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,GAAIkU,EAAmB,CAAC,GAAGqd,IAAI,EAAE,CAAoB,GAAGs6J,GAAtB9pL,EAAEygR,GAAItuQ,EAAE81M,MAAM,EAAEz4L,GAAW,IAAK,OAAOouJ,GAAG59K,EAAE,IAA2B,IAAI0D,EAAE,EAAEzF,GAA1B2U,EAAEgrK,GAAGzrK,EAAEivJ,GAAGphK,GAAG,MAAiBk/K,KAAKx7K,EAAEzF,IAAIyF,EAAG,GAAGs3M,GAAGpoM,EAAEs1D,GAAGxkE,MAAMs3M,GAAG/6M,IAAiB6pL,GAAbtkL,EAAEoN,EAAE2oC,GAAG73C,GAAW,KAA+B,KAA1Bq3B,EAAE6iJ,GAAGp4K,EAAE,KAAUiwK,GAAGyhE,KAAS,OAAOn8M,EAAK,MAAMo4I,GAAI,IAAI4O,GAAI,gDAAiD,CAAM,OAAOsrE,IAAIzvE,GAAG6iG,GAAIxgR,EAAEgoN,KAAKz4L,GAAG,IAAK,CAA9T,OAAO,IAAwT,CAI1W,SAASm5U,IAAG1oW,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAA0U,OAAxUA,EAAE,IAAIusL,GAAGhtL,EAAEqd,GAAOvvB,EAAEA,EAAiDD,MAA2HwF,EAAEo4K,GAAG+5B,GAAI13M,EAAEkS,EAAEA,GAAG,MAASlS,EAAE2S,EAAE5S,EAAEA,EAAEA,EAAE4S,EAAEpN,EAAExF,EAAEwF,EAAEoN,EAAET,EAAEnS,EAAE4S,EAAE4c,EAAExvB,EAAGA,EAAEwF,EAA4BxF,EAAEwF,EAAEgqB,EAAE5c,EAA/BgrK,GAAG+5B,GAAI13M,EAAEkS,EAAEA,GAAG,KAAKA,EAAES,EAAc5S,EAAEA,EAAWA,EAAEA,EAAEmS,EAAES,EAAd3S,EAAEA,EAAE2S,EAAa5S,EAAEA,EAAE4S,EAAE5S,EAAEwF,EAAEoN,IAAxP3S,EAAEuF,EAAE2M,EAAES,EAAEA,EAAE5S,EAAEC,EAAEuF,EAAEvF,EAAEuF,EAAEoN,GAAEpN,EAAEo4K,GAAG+5B,GAAI13M,EAAEkS,EAAEA,GAAG,SAAgD3M,EAAEvF,GAAE86B,EAAEv1B,EAAEgqB,GAAIA,EAAE5c,EAAEA,EAAEpN,EAAEu1B,EAAEv1B,EAAEgqB,EAAE5c,IAA9DgkL,GAAI32L,EAAEkS,EAAEA,EAAE3M,EAAE,IAAImlP,GAAG/3O,MAAM3S,EAAEuvB,KAA9HvvB,EAAEA,EAAEA,EAAEuF,EAAEoN,EAAEgkL,GAAI32L,EAAEkS,EAAEA,EAAE,IAAIw4O,GAAG/3O,MAAM3S,EAAEuvB,KAA0QvvB,EAAED,EAAS4S,CAAC,CAC/W,SAAS6hO,IAAIx0O,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAA0D,IAAxDmd,EAAE,IAAItc,OAAOf,EAAE,KAAKlU,EAAEigL,GAAGoS,IAAGwD,IAAI,EAAE,EAAE,EAAE,GAAG9zL,EAAE,EAAEqS,EAAEpS,EAAE86B,EAAE,OAAgB,CAAa,GAAM,OAAlBr3B,EAAE8rB,EAAErc,KAAKd,KAAkB,IAAHA,EAAM,CAACpU,EAAE+B,GAAGqS,EAAE,KAAK,CAAMO,EAAElP,EAAEk0B,MAAM35B,EAAE+B,GAAGqS,EAAEqhD,OAAO,EAAE9gD,GAAGP,EAAE0lL,GAAI1lL,EAAEO,EAAElP,EAAE,GAAGvF,OAAOkU,EAAElU,QAAQqxB,EAAEo5U,UAAU,EAAK7tU,GAAG1oB,IAAGpU,EAAE+B,GAAGqS,EAAEqhD,OAAO,EAAE,GAAGrhD,EAAEA,EAAEqhD,OAAO,IAAG34B,EAAE1oB,IAAIrS,CAAE,CAAC,GAAGC,EAAE9B,OAAO,EAAE,CAAY,IAAXqH,EAAEvH,EAAEE,OAAaqH,EAAE,GAAW,IAARvH,EAAEuH,EAAE,MAAUA,EAAEA,EAAEvH,EAAEE,SAASF,EAAEE,OAAOqH,EAAE,CAAC,OAAOvH,CAAC,CAC/W,SAASywV,IAAIzuV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAM9B,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAA0B,IAAf1B,EAAE,KAAK7M,GAAE,EAAU9B,EAAE,EAAEpC,EAAE0kQ,IAAlCjyP,EAAEo3K,GAAIh5K,IAAkClS,GAAGhC,EAAEyF,EAAEpC,IAAIoC,GAAoF8rB,EAAEk/T,IAAIzuV,EAArF29K,GAAGirL,IAAI90V,EAAErQ,EAAkComL,GAAN7rL,EAAvB2/K,GAAG0O,GAAI05E,GAAIjyP,EAAE9T,GAAGyD,GAAG,IAAQ8rB,EAAO,IAAIouJ,GAAG3/K,EAAE,KAAKwwO,MAAMglH,MAAO,MAAqBnyT,OAAUjvB,GAAgB7M,IAAGA,GAAE,EAAK6M,EAAE,IAAIs4N,GAAIt4N,IAAGA,EAAEyvL,GAAGtyK,IAAzCnd,EAAEmd,GAAuD,OAAXxvB,EAzd7P,SAAaC,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAiD,KAA3CT,EAAE2B,IAAI3B,EAAE2B,EAAE,IAAIymL,GAAI2gD,IAAG/oO,EAAE,GAAG,KAAU4oB,EAAE,KAASv1B,EAAE,EAAEoN,GAAvD5S,EAAmCmS,EAAE2B,GAAsB7V,EAAEuH,EAAEoN,IAAIpN,EAAsB,OAAO46O,GAAIqW,GAAIx2P,EAAlCuvB,EAAEouJ,GAAG0O,GAAItsL,EAAEwF,GAAG,QAA2B,KAAK,EAAE,KAAK,GAAIu1B,IAAIA,EAAE,IAAIw3I,IAAKx3I,EAAEvL,EAAEuL,EAAEvL,EAAErxB,QAAQqxB,EAAI,OAAQuL,IAAGmsL,KAAMA,KAAM+Y,IAAM,CAydgC6oI,CAAI7oW,EAAEkS,GAAMnS,EAAEshC,KAAcjvB,IAAG60M,KAAMA,KAAM+Y,KAAgB5tN,GAAiB7M,IAAI6M,EAAE,IAAIs4N,GAAIt4N,IAAIA,EAAEyvL,GAAG9hM,GAAUqS,GAAxCrS,CAA2C,CAC/W,SAAS2uV,IAAI1uV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAM4S,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAA0B,IAAf1B,EAAE,KAAKrS,GAAE,EAAU0D,EAAE,EAAEpC,EAAE0kQ,IAAlCjyP,EAAEo3K,GAAIh5K,IAAkClS,GAAGhC,EAAEyF,EAAEpC,IAAIoC,GAAoF8rB,EAAEm/T,IAAI1uV,EAArF29K,GAAGirL,IAAI90V,EAAErQ,EAAkComL,GAAN7rL,EAAvB2/K,GAAG0O,GAAI05E,GAAIjyP,EAAE9T,GAAGyD,GAAG,IAAQ8rB,EAAO,IAAIouJ,GAAG3/K,EAAE,KAAKwwO,MAAMglH,MAAO,MAAqBnyT,OAAUjvB,GAAgBrS,IAAGA,GAAE,EAAKqS,EAAE,IAAIs4N,GAAIt4N,IAAGA,EAAEyvL,GAAGtyK,IAAzCnd,EAAEmd,GAAuD,OAAX5c,EAtZ7P,SAAa3S,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAiD,KAA3CT,EAAE2B,IAAI3B,EAAE2B,EAAE,IAAIymL,GAAI2gD,IAAG/oO,EAAE,GAAG,KAAU4oB,EAAE,KAASv1B,EAAE,EAAEoN,GAAvD5S,EAAmCmS,EAAE2B,GAAsB7V,EAAEuH,EAAEoN,IAAIpN,EAAsB,OAAO46O,GAAIqW,GAAIx2P,EAAlCuvB,EAAEouJ,GAAG0O,GAAItsL,EAAEwF,GAAG,QAA2B,KAAK,EAAE,KAAK,EAAE,KAAK,GAAIu1B,IAAIA,EAAE,IAAIw3I,IAAKx3I,EAAEvL,EAAEuL,EAAEvL,EAAErxB,QAAQqxB,EAAU,OAAQuL,IAAGmsL,KAAMA,KAAM+Y,IAAM,CAsZmB8oI,CAAI9oW,EAAEkS,GAAMS,EAAE0uB,KAAcjvB,IAAG60M,KAAMA,KAAM+Y,KAAgB5tN,GAAiBrS,IAAIqS,EAAE,IAAIs4N,GAAIt4N,IAAIA,EAAEyvL,GAAGlvL,GAAUP,GAAxCO,CAA2C,CAC/W,SAASo2V,IAAI/oW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,GAAG6rL,GAAG33K,EAAE,IAAK,OAAO6+R,IAAI/wS,EAAEkS,EAAEqd,GAAoC,IAA5B9rB,EAAE,KAAKq3B,EAAE,KAAK/6B,EAAE49K,GAAG39K,EAAE2S,EAAE,KAASA,EAAE,EAAEA,EAAE3S,EAAEhC,IAAI2U,EAAU,GAAG2/K,GAAGpgL,GAAb3M,EAAExF,EAAE4S,IAAamoM,OAAmBjxB,GAAZ/uJ,EAAEv1B,EAAE2iN,KAAa,KAAwB,IAAlBvqC,GAAG7iJ,EAAE,IAAI06I,GAAGyhE,KAAQ,CAACxzO,EAAE8B,EAAE,KAAK,CAAkK,OAA5J9B,IAAM69M,GAAIthN,EAAEuF,KAAIvH,EAAE88B,EAAEmjM,KAAKC,GAAIl+N,EAAE,EAAE86B,EAAE5oB,EAAE,KAAKisN,IAAIn+N,EAAE86B,EAAE5oB,EAAE23K,GAAG/uJ,EAAE,KAAwB,IAAlB6iJ,GAAG7iJ,EAAE,IAAI06I,GAAGmyC,OAAS,GAAMuW,GAAIl+N,EAAE86B,EAAEsjM,KAAK,EAAE,EAAEtjM,EAAE5oB,EAAE4oB,EAAEujM,MAAM,GAAE,GAAM9uM,EAAEA,EAAE+uM,GAAGtgO,GAAIuxB,EAAEvxB,GAAGuxB,EAAEw5U,IAAI/oW,EAAEyD,EAAE8rB,IAAUA,CAAE,CAG/W,SAASojU,IAAI3yV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAA2B,IAAzBwgS,IAAItyQ,EAAEy5U,IAAI,GAAGhpW,EAAEytF,GAAGv7E,GAAG4oB,EAAE,EAAQ96B,EAAEihK,GAAGnmI,IAAG,CAAC,IAAIz5B,EAAE,IAAIskK,GAAIzzJ,EAAE3M,GAAGlE,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAA0B,IAAjBF,EAAE2/K,GAAGC,GAAIv8K,GAAG,KAASoC,EAAEwnN,GAAG9kH,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,CAACjsK,EAAE3M,EAAE2M,EAAEnS,EAAEmS,EAAEA,MAAMk5M,IAAG3nN,KAAKkP,EAAEgrK,GAAGwtC,GAAG1nN,GAAG,OAAWzF,IAAGuH,EAAEvF,EAAEipW,GAAGt2V,EAAE3U,KAAQ6hL,GAAI7hL,EAAEgC,EAAEuF,GAAK,IAAI6M,EAAE,IAAIuzJ,GAAIzzJ,EAAE3M,GAAG6M,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAgC47U,IAAN/5U,GAAjB/B,EAAE2/K,GAAGC,GAAIxrK,GAAG,MAASpS,GAASA,EAAED,GAAGC,EAAED,EAAEC,EAAED,EAAEC,EAAED,GAAG8/K,GAAI7hL,EAAE+B,EAAEA,GAAG29M,GAAI39M,GAAGC,EAAEkpW,OAAOpuU,CAAC,CAACynQ,IAAIhzQ,EAAE,CAIjX,SAAS45U,IAAInpW,GAAGylM,GAAIzlM,EAAE,IAAI6wU,IAAIjqJ,GAAIJ,GAAIG,GAAID,GAAI,IAAIh4B,GAAI06M,KAAK,6BAA6B,+GAA+G,IAAIv7M,MAAO0tG,GAAIv7P,EAAEopW,IAAI3F,IAAIjjL,IAAIs8I,MAAMvhE,GAAIv7P,EAAEopW,IAAI5I,IAAIxjC,KAAKzhE,GAAIv7P,EAAEopW,IAAI3I,IAAI,GAAGllG,GAAIv7P,EAAEopW,IAAI1F,IAAIljL,IAAIy8I,MAAM1hE,GAAIv7P,EAAEopW,IAAI9E,IAAI9jL,IAAI28I,MAAM5hE,GAAIv7P,EAAEopW,IAAI7E,IAAI/jL,IAAI68I,MAAM9hE,GAAIv7P,EAAEopW,IAAIC,KAAK37I,MAAM,GAAO,CAClX,SAASwzD,IAAIlhR,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAI2O,EAAE/Q,EAAEyS,EAAIlU,EAAiB,IAAf+S,EAAEggN,GAAIzgN,EAAEqd,EAAEA,EAAExvB,GAAO+T,EAAE,IAAI6xJ,GAAIzzJ,EAAElS,GAAG8T,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAAQ,CAA4B,IAAX2hL,IAAhBx+K,EAAEs8K,GAAGC,GAAI9pK,GAAG,KAAUlU,EAAE+S,GAAO/S,EAAE,IAAI+lK,GAAItkK,EAAE+Q,GAAGxS,EAAEI,EAAEJ,EAAE2vB,EAAEA,EAAErxB,QAAyB,IAAI48B,EAAE,IAAI6qI,GAAxBgY,GAAGC,GAAIh+K,GAAG,IAAoB+S,GAAGmoB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAA8E,IAArDi4R,IAAhB5wR,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAU96B,EAAE2S,IAAGlP,EAAEk6K,GAAG4qB,IAAIhjM,GAAG83J,MAAM2hG,MAAM,MAASm3B,GAAI1yR,EAAEkP,GAAOP,EAAE,IAAIuzJ,GAAIpgK,EAAE2M,GAAGE,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAyB2hL,GAAdlC,GAAGC,GAAIxrK,GAAG,IAAUxS,EAAE+S,GAAKojK,GAAI/1K,EAAEA,EAAEqB,GAAGA,EAAErB,EAAEA,CAAC,CAAC,CAGnX,SAASspW,IAAItpW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAA0B,GAArB0oM,KAAHx5L,EAASgrK,GAAGzrK,EAAE,IAAIq1M,KAASC,IAAIxnN,EAAEuF,EAAE2M,IAAI,GAAGA,EAAEu1M,MAAMC,IAAI1nN,EAAEkS,EAAEqd,EAAEs6J,GAAG33K,EAAE,KAAwB,IAAlByrK,GAAGzrK,EAAE,IAAIsjK,GAAGmyC,MAAU,OAAO,OAA4C,IAAhClkN,EAAEskN,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAGnS,EAAE49K,GAAG39K,EAAE2S,EAAE,KAASmoB,EAAE,EAAEA,EAAE96B,EAAEhC,IAAI88B,EAAU,GAAPv1B,EAAExF,EAAE+6B,GAAMr3B,EAAEwkN,GAAG1iN,EAAE2iN,MAAO,QAAGv1M,EAAE2/K,GAAG/sL,EAAEgqB,GAAM,MAAHA,EAAgB,MAARhqB,EAAEu1M,KAAWxoB,GAAG/iK,EAAEhqB,EAAEu1M,SAAyBn9B,GAAGwqC,IAAInoN,EAAE86B,EAAEnoB,EAAEgrK,GAAGpuJ,EAAE,IAAIq4L,GAAI11M,EAAEqd,IAAI,KAAW,GAAQ,OAAO07J,GAAIjrL,EAAE2S,EAAEgrK,GAAGpuJ,EAAE,IAAIq4L,GAAI11M,EAAEqd,GAAG,CACnX,SAASg6U,IAAIvpW,GAAG,IAAMuvB,EAAIhqB,EAAEu1B,EAAEnoB,EAAI3U,EAAE,GAAGgC,EAAED,EAAG,MAAMmzK,GAAI,IAAI4O,IAAKwH,GAAIkgL,KAAIva,IAAIua,IAAGnoW,EAAE6tV,OAAoC,IAA7BlvV,EAAEuvB,IAAIojQ,KAAMC,MAAM62E,IAAIzpW,EAAE4gN,KAASrxL,EAAE,IAAIo2I,GAAI3lK,EAAEA,EAAEA,GAAGuvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAIruJ,GAAG,KAAOhqB,EAAE,EAAE,IAAIoN,EAAE,IAAIgzJ,GAAI3lK,EAAEA,EAAEkS,GAAGS,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAiC,KAAxB48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAMzS,EAAEq2K,IAAQhxK,EAAEu1B,EAAEA,EAAE6gL,KAAKp2M,EAAEg2M,QAAS59B,GAAGp4K,EAAEk2M,KAAK,IAAQ17M,EAAEwF,EAAU,IAkY3S,SAAavF,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAQ,IAANgP,EAAEkkK,IAAQv2K,EAAE,IAAI4lK,GAAI3lK,EAAEA,EAAEkS,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASgU,EAAEyrK,GAAGC,GAAI79K,GAAG,IAAIqS,EAAE6gI,EAAK3/H,KAAKsgB,IAAIxhB,EAAEF,EAAEnS,EAAE+6B,EAAEnoB,EAAE4c,EAAErd,EAAE3M,EAAEvF,GAAa,IAAVJ,EAAE,IAAI65K,GAAQ9mK,EAAE,IAAIgzJ,GAAI3lK,EAAEA,EAAEA,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,SAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,MAAO3U,EAAEoU,EAAO,GAAL0oB,EAAEv1B,GAAOw3M,GAAIn9M,EAAEk7B,EAAEl7B,EAAE2vB,EAAErd,EAAEtS,EAAE2vB,GAAS,KAAW,GAAL3vB,EAAEsS,GAAK,CAA4D,IAAV3M,GAAjDu1B,EAAE6iJ,GAAQ,GAAL/9K,EAAEsS,EAAK,MAAMo3M,GAAS,GAAL1pN,EAAEsS,GAAMkyN,GAAIxkO,EAAEA,EAAEI,EAAEA,IAAI,MAAS86B,EAAEnoB,EAAE4c,EAAMvc,EAAE8nB,EAAE96B,EAAEA,EAAE2hP,KAAKhmC,KAAK3oM,EAAEuoM,MAAOl6M,EAAEs8K,GAAG3qK,EAAEyoM,KAAK,IAAIr4M,EAAE03B,EAAE98B,EAAEqD,EAAEkE,EAAEvF,EAAEqB,EAAEtB,EAAE4S,GAAGtR,EAAEsR,EAAE4c,EAAEnsB,EAAG/B,EAAEnB,EAAEkD,EAAI/B,EAAEnB,EAAEmB,EAAEsR,EAAE4c,EAAgE,IAA7DhqB,GAAGu1B,EAAEA,EAAE56B,EAAE46B,EAAE5oB,GAAG3M,EAAEvF,EAAEuvB,IAAIojQ,KAAM9xE,MAAM7gN,EAAEuvB,GAAGwxL,IAAKjmL,EAAEvL,GAAGhqB,EAAIu1B,EAAEvL,GAAGhqB,EAAOuO,EAAEgnB,EAAE96B,EAAEA,EAAE2hP,KAAKhmC,KAAK7nM,EAAEynM,MAAuB,IAAIv9M,GAApBqD,EAAEs8K,GAAG7pK,EAAE2nM,KAAK,KAAY3gL,EAAE6gL,KAAK39M,EAAEu9M,MAAO93M,EAAEk6K,GAAG3/K,EAAEy9M,KAAK,IAAcv7M,EAAV29K,GAAI79K,EAAEuvB,GAAMvvB,EAAE86B,EAAE4uU,GAAGroW,EAAEoC,GAAOzD,EAAE86B,EAAE6uU,GAAGtoW,EAAEoC,GAAIA,EAAE1D,EAAE/B,EAAEi1I,EAAK3/H,KAAKugB,IAAIpwB,EAAE1D,EAAE/B,EAAEqD,EAAEnB,EAAEmB,EAAEsR,EAAET,EAAEhS,EAAEuD,EAAE8B,EAAEvF,GAAGyD,EAAEpC,IAAIoC,EAAE1D,EAAE/B,EAAEi1I,EAAK3/H,KAAKugB,IAAIpwB,EAAE1D,EAAE/B,EAAEyF,EAAEkP,EAAE4c,EAAE9rB,EAAE8B,EAAEvF,MAAMyD,EAAE1D,EAAEwF,EAAS,GAAP9B,EAAE1D,EAAEwF,GAAMqgO,GAAIhmO,EAAE6D,EAAE1D,EAAI,CAAC,IAAIwvB,EAAE,IAAIo2I,GAAI3lK,EAAEA,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,SAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAM5c,EAAE4c,EAAErd,EAAEhS,CAAE,CAlY1f0pW,CAAI5pW,GAAOhC,EAAE,IAAI2nK,GAAI3lK,EAAEA,EAAEkS,GAAGlU,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAI5/K,GAAG,IAAMqD,GAAE,EAAK,OAAOrB,CAAC,CACpX,SAAS6pW,IAAI7pW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAA4C,IAA1C3O,EAAE,IAAI23U,IAAIp7U,GAAa+8M,GAAVxtL,EAAE,IAAIkqJ,GAAUvnK,EAAEqd,EAAEA,EAAErd,EAAEqd,EAAEA,GAAc,GAALA,EAAErd,GAAK,CAA0D,KAAzDnS,EAAE49K,GAAQ,GAALpuJ,EAAErd,EAAK,MAAMo3M,GAAS,GAAL/5L,EAAErd,GAAMkyN,GAAI70M,EAAEA,EAAEvvB,EAAEA,IAAI,MAAOD,EAAEqD,EAAE,EAAMuP,EAAE,IAAIgzJ,GAAI5lK,EAAEwF,GAAGoN,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAA0BwyU,IAAIjtU,EAArB8B,EAAEo4K,GAAGC,GAAIjrK,GAAG,MAA2B,IAAbP,EAAE7M,EAAExF,GAAIA,EAAEqD,GAAO25M,GAAIxtL,EAAEnd,EAAEmd,EAAEA,EAAErd,EAAEqd,EAAEA,GAAS,IAAIuL,EAAE,IAAI6qI,GAAI5lK,EAAEmS,GAAG4oB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAA0BwyU,IAAIjtU,EAArB8B,EAAEo4K,GAAGC,GAAI9iJ,GAAG,MAA2B,IAAb98B,EAAEuH,EAAEgqB,GAAIxvB,EAAEqD,GAAO25M,GAAIxtL,EAAEvxB,EAAEuxB,EAAEA,EAAErd,EAAEqd,EAAEA,EAAS,CAAC,OAAO9rB,CAAC,CACpX,SAASqmW,IAAI9pW,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAgC,GAAM,IAApC/6B,EAAEugL,GAAIC,GAAG+3B,IAAIt4M,GAAG+/J,MAAMgqM,SAAiG,IAAzEhoJ,GAAI/hN,EAAED,EAAEC,EAAE2S,EAAE5S,EAAEC,EAAE86B,GAAGvL,EA5yH/F,SAAYvvB,GAAG,OAAO+jL,GAAG/jL,GAAG,IAAIy+M,GAAGz+M,EAAE,CA4yH4DgqW,CAluGjG,SAAYhqW,EAAEkS,GAAe,OAAZ6xK,GAAG/jL,GAAG+jL,GAAG7xK,GAAU,IAAIwsF,GAAG1+F,EAAEkS,EAAE,CAkuGqD+3V,GAAKjqW,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAI+qK,GAAI3M,IAAG3tL,EAAE,EAAE,IAAIA,EAAEuvB,GAAG,IAAI6gI,KAAUt1H,EAAEmwL,GAAG9kH,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,GAAGn+K,EAAEJ,IAAII,EAAEJ,EAAE,IAAI06L,GAAIrN,IAAGjtL,EAAE,EAAE,IAAIA,EAAEJ,KAAKI,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAI+qK,GAAI3M,IAAG3tL,EAAE,EAAE,IAAIA,EAAEuvB,GAAGA,MAAM67L,IAAGtwL,KAAKv1B,EAAEo4K,GAAGwtC,GAAGrwL,GAAG,MAAO8pL,GAAG7kN,EAAEwF,EAAE6+J,KAAKrkK,EAAEwF,EAAE6nN,MAAM7nN,EAAEw9O,GAAGhjP,EAAEwF,EAAE+sN,KAAKvyN,EAAEwF,EAAE2kW,OAAMh4V,EAAEyrK,GAAGp4K,EAAEygM,GAAGmkK,KAAK,MAASj4V,EAAElS,GAAGD,EAAEmS,EAAEA,GAAGnS,EAAG,CAKpX,SAASqqW,IAAIpqW,EAAEkS,EAAEqd,EAAExvB,GAAGuE,KAAKiB,EAAEvF,EAAEsE,KAAKjD,EAAEs8K,GAAG4qB,IAAIvoM,GAAGgoM,MAAMk3H,MAAM,KAAK56T,KAAKqO,EAAEsrK,GAAGkuE,IAAGC,IAAI,GAAGl6O,EAAE,EAAE,GAAG5N,KAAK4N,EAAE+rK,GAAGwS,IAAGoD,IAAI,IAAI3hL,EAAE,EAAE,GAAG5N,KAAKtE,EAAEi+K,GAAGkuE,IAAGC,IAAI,GAAGl6O,EAAE,EAAE,GAAG5N,KAAKvE,EAAEk+K,GAAGwS,IAAGoD,IAAI,IAAI3hL,EAAE,EAAE,GAAG5N,KAAK8N,EAAE6rK,GAAGkuE,IAAGC,IAAI,GAAGl6O,EAAE,EAAE,GAAG5N,KAAKtG,EAAEigL,GAAGwS,IAAGoD,IAAI,IAAI3hL,EAAE,EAAE,GAAG5N,KAAKlB,EAAE66K,GAAGwS,IAAGoD,IAAI,IAAI3hL,EAAE,EAAE,GAAG5N,KAAK1E,EAAEq+K,GAAGsS,IAAGsD,IAAI,IAAI3hL,EAAE,EAAE,GAAG87L,GAAI1pM,KAAK1E,GAAG8tN,MAAM,IAAQppN,KAAKw2B,EAAEmjJ,GAAGsS,IAAGsD,IAAI,IAAI3hL,EAAE,EAAE,GAAG87L,GAAI1pM,KAAKw2B,GAAE,GAAMx2B,KAAKpE,EAAEqvB,EAAEjrB,KAAKirB,EAAExvB,CAAC,CACtX,SAASsqW,IAAIrqW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAQ0D,EAAE,IAAGyO,EAAEmvB,KAAa,GAAGs8I,GAAGzrK,EAAEmpM,GAAG,GAAG,KAAKt7M,IAAIs4R,MAAMK,KAAMkwC,IAAI5oU,EAAEkS,QAAQ,IAAInS,EAAEmS,EAAEypM,KAAK57M,EAAEw7M,MAAM,CAAkB,QAAjBhsL,EAAEouJ,GAAG59K,EAAE07M,KAAK,MAAc17M,EAAE4S,GAAG,KAAK,EAAEk2T,IAAI7oU,EAAEuvB,EAAEs4R,GAAI7nT,EAAEuvB,IAAI,MAAM,KAAK,EAAEs5S,IAAI7oU,EAAEuvB,GAAe9rB,GAAV8rB,EAAEuL,EAAEvL,EAAEA,EAAE,EAAO,GAAG,EAAE,EAAEA,EAAEA,EAAE9rB,IAAI,MAAM,KAAK,EAAEolU,IAAI7oU,EAAEuvB,EAAEy+P,GAAIhuR,EAAEuvB,IAAI,MAAM,KAAK,EAAEk8R,IAAIl8R,GAAGs5S,IAAI7oU,EAAEuvB,EAAKm8R,IAAIn8R,GAAKA,EAAEA,EAAEA,EAAEuL,GAAI,MAAM,KAAK,EAAE2wR,IAAIl8R,GAAGs5S,IAAI7oU,EAAEuvB,EAAKm8R,IAAIn8R,GAAKA,EAAEuL,EAAEvL,EAAEA,GAAKqiT,IAAIriT,EAAEvvB,EAAE,CAAE,CAEvX,SAAS+zV,IAAI/zV,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAInoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAIlU,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAgO,IAA1NxQ,GAAG1D,EAAEwF,GAAG,EAAVu1B,EAAc9mB,EAAEub,EAAE0jH,EAAK3/H,KAAKmkB,IAAIh0B,GAAGiP,EAAE6c,EAAE0jH,EAAK3/H,KAAK6lB,IAAI11B,GAAGoQ,EAAEG,EAAE9B,EAAES,EAAE,EAAEsB,EAAEvB,EAAER,EAAE4oB,EAAE,EAAEqnL,GAAIjwM,EAAE2B,GAAGuuM,GAAIlwM,EAAE+B,GAAGH,EAAE9T,EAAEA,EAAEsqW,GAAGp4V,IAAG9O,EAAE,EAAE6vI,EAAK3/H,KAAKkkB,KAAKjI,EAAEA,EAAEvvB,EAAEuvB,IAAQhqB,EAAExF,GAAGH,EAAEwD,EAAE0Q,EAAEnB,GAAG5S,EAAEwF,EAAEnC,GAAG,IAAOxD,GAAG2F,EAAExF,GAAG+T,EAAEnB,EAAE5S,GAAEG,EAAEk7P,IAAIlpP,GAAMlS,EAAEuF,IAAGvF,EAAEuF,EAAEglW,GAAGvqW,EAAED,GAAGC,EAAEuF,EAAEwyF,GAAG73F,IAAOkS,EAAE,IAAIuzJ,GAAIzlK,GAAGkS,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAASF,EAAE2/K,GAAGC,GAAIxrK,GAAG,IAAI/Q,EAAErB,EAAEA,EAAEsqW,GAAGtsW,GAAG+1V,IAAI/zV,EAAEhC,EAAEuxB,EAAEvvB,EAAEuvB,EAAE5c,EAAEA,EAAE/S,EAAEyB,EAAEy5B,GAAGnoB,GAAG/S,EAAEyB,CAAE,CAExX,SAASmpW,IAAIxqW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAI+6B,EAAEnoB,EAA6B,GAA3BkvR,IAAI3vR,EAAE,kBAAkB,GAAMlS,EAAEuF,EAAEvF,EAAEuvB,EAAErxB,OAAO,EAAGqkS,IAAIrwR,OAAzB,CAAmC,IAAI4oB,EAAE,IAAI6qI,GAAI3lK,EAAEuF,EAAEvF,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAI9iJ,GAAG,KAAOv1B,EAAE,EAA4D,KAA1DoN,EAAE3S,EAAEuF,EAAEvF,EAAEuvB,EAAErxB,QAAQ,KAmF/K,SAAa8B,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAwB,IAAtBzD,EAAEE,EAAE,IAAIkyK,GAAIryK,EAAE,IAAI05K,GAAQ9mK,EAAE,IAAIgzJ,GAAI3lK,EAAEuF,EAAEvF,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAA2C,GAAjB+oT,GAAjBnsR,EAAE6iJ,GAAGC,GAAIjrK,GAAG,MAAY4c,EAAErxB,QAAY6+M,GAAIh9M,EAAE+6B,EAAE/6B,EAAEwvB,EAAErd,EAAEnS,EAAEwvB,GAAS,KAAW,GAALxvB,EAAEmS,GAA2E,GAAjB+0S,GAApDnsR,EAAE6iJ,GAAQ,GAAL59K,EAAEmS,EAAK,MAAMo3M,GAAS,GAALvpN,EAAEmS,GAAMkyN,GAAIrkO,EAAEA,EAAEC,EAAEA,IAAI,MAAeuvB,EAAErxB,SAAoBgU,EAAEyrK,GAAG0pB,GAAI4/G,GAAInsR,GAAG,GAAG,KAAKvL,EAAEuL,EAAEnoB,EAAE3S,EAAEuvB,EAAErxB,OAAO,EAAEuF,EAAE6jT,GAAIp1S,EAAE4oB,GAAK+0L,GAAFtgM,EAAM9rB,EAAEyO,EAASzO,EAAEkP,EAATT,GAA+B,GAAjB+0S,GAAIxjT,GAAG8rB,EAAErxB,QAAY6+M,GAAIh9M,EAAE0D,EAAE1D,EAAEwvB,EAAErd,EAAEnS,EAAEwvB,GAAShqB,EAAE,IAAIixM,GAAI17K,EAAE5oB,GAAGywP,GAAI3iQ,EAAEE,EAAEqF,GAAGuqN,GAAI9vN,EAAEuF,EAAEvF,EAAE86B,GAAG,CAnF5O2vU,CAAIzqW,GAiNzL,SAAaA,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAmB,IAAjBzS,EAAErB,EAAEuF,EAAEvF,EAAEuvB,EAAErxB,OAAWyU,EAAE,IAAIgzJ,GAAI3lK,EAAEuF,EAAEvF,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAIjrK,GAAG,KAAOP,GAAE,EAAkF,IAA5EpS,EAAEhC,EAAEigL,GAAGmV,IAAGsW,IAAI,GAAGroM,EAAE,GAAG,GAAGrB,EAAE2S,EAAEsrK,GAAGmV,IAAGsW,IAAI,GAAGroM,EAAE,GAAG,GAAGrB,EAAEJ,EAAE,IAAI0yK,GAAI/sK,EAAE,EAAEuO,EAAE,IAAIw+J,GAAQt0K,EAAE,IAAI2nK,GAAI3lK,EAAEuF,EAAEvF,GAAGhC,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,SAASuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,MAAO+B,EAAEwF,IAAoB,GAAhB9B,EAAEyO,EAAElS,EAAEuvB,EAAErxB,QAAW63K,GAAI/1K,EAAEJ,EAAE6D,GAAGmlP,GAAI90O,EAAErQ,EAAEkP,GAAO,IAAJT,EAAE,EAAMnS,EAAE,IAAI4lK,GAAI7xJ,GAAG/T,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,SAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,MAAOwvB,EAAErd,IAAIqd,EAAEuL,GAAE,EAAM1oB,EAAE0B,EAAEyb,EAAErxB,OAAe,MAAL8B,EAAEkS,GAASlS,EAAEkS,EAAEhU,OAAOkU,GAAGpS,EAAEkS,EAAE+rK,GAAGgV,IAAGwzD,IAAI,GAAGr0O,EAAE,GAAG,GAAGpS,EAAEuvB,EAAE0uJ,GAAG8U,IAAIuyD,IAAI,GAAGlzO,EAAE,GAAG,IAAQowK,GAAIxiL,EAAEuvB,GAAGvvB,EAAED,EAAE+T,EAAE9T,EAAEoD,EAAE,IAAIgsN,GAAI5Q,GAAGx+M,EAAED,EAAEwvB,EAAErxB,SAAS8B,EAAEoS,EAAE,CAAC,CAjNtVs4V,CAAI1qW,GAAGq8V,IAAIr8V,GAAGuvB,EAAEu0R,GAAI9jT,GAAGD,EAAE,EAAUwvB,GAAGxvB,EAAEC,EAAE86B,GAAG6vU,IAAI3qW,EAAEuvB,EAAE+9T,IAAIttV,EAAEuvB,IAAIA,EAAEu0R,GAAI9jT,KAAKD,EAAE4S,GApyBxQ,SAAa3S,GAAe,IAAZ,IAAIkS,EAAEqd,EAAExvB,EAAEwF,GAAS68K,GAAIpiL,EAAEE,IAAIqvB,EAAEouJ,GAAG41D,GAAIvzO,EAAEE,GAAG,IAAIH,EAAE49K,GAAGpuJ,EAAEvvB,EAAE,KAAmBuF,EAAE+hT,GAAhBp1S,EAAEyrK,GAAGpuJ,EAAErd,EAAE,KAAanS,GAAMmS,EAAE3M,GAAGxF,GAAG6vN,GAAIrqN,EAAEoN,EAAET,GAAGnS,EAAEwF,EAAEA,EAAEA,EAAE2M,EAAElS,IAAO4vN,GAAIrqN,EAAE2M,EAAEA,GAAGnS,EAAEwF,EAAEA,EAAEA,EAAE2M,EAAElS,GAAE+1K,GAAI/1K,EAAEuF,EAAEvF,EAAED,EAAG,CAoyB0F6qW,CAAI5qW,GAAGA,EAAEA,EAnWpR,SAAaA,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAS,IAAPA,EAAE,KAASmoB,EAAE,IAAI6qI,GAAI3lK,EAAEuF,EAAEvF,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAA0B,IAAjBqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,MAAU5oB,EAAElS,EAAEuvB,EAAErxB,QAAQqH,EAAEoN,EAAE3S,EAAEuvB,EAAErxB,OAAO,CAAgB,IAAf6B,EAAEwF,EAAEA,EAAEoN,EAAE2nU,IAAI/0U,GAAOgqB,EAAEhqB,EAAEA,EAAEo4K,GAAGhrK,EAAE3S,EAAE,IAAIA,EAAE,EAAEuvB,EAAEhqB,EAAEA,EAAEo4K,GAAGhrK,EAAET,EAAE,IAAIlS,EAAEuvB,IAAKrd,EAAEqd,GAAGrd,EAAEnS,KAAKA,EAAEwvB,GAAMrd,EAAEnS,GAAGmS,EAAE3M,EAAEA,OAAM2M,EAAE3M,EAAEA,KAAK2M,EAAEnS,GAAGwF,EAAEA,EAAExF,EAAE,CAAE,CAmW0B8qW,CAAI7qW,EAAEioW,IAAIjoW,IAAIioW,IAAIjoW,GAAGA,EAAEkS,EAAE,KAAKlS,EAAED,EAAE,KAAKC,EAAEoD,EAAE,KAAKpD,EAAEuvB,EAAE,KAAKvvB,EAAE2S,EAAE,KAAK3S,EAAEhC,EAAE,KAAKgC,EAAEJ,EAAE,KAAKI,EAAEE,EAAE,KAAKqiS,IAAIrwR,EAA1R,CAA4R,CACzX,SAAS44V,IAAI9qW,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAM+6B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAiD,IAAhC6nN,GAAf78N,EAAE,IAAIi3M,GAAI1lL,EAAExvB,GAAS49K,GAAG4qB,IAAIr2L,GAAGixR,KAAMK,MAAM,IAAQxwR,EAAE,IAAI2yJ,GAAIzzJ,EAAE3M,GAAGyN,EAAEhT,EAAEgT,EAAEuc,EAAEA,EAAErxB,QAA0B2hL,IAAjB/rK,EAAE6pK,GAAGC,GAAI5qK,GAAG,MAAWjT,EAAE/B,GAAG+3K,GAAI/1K,EAAEuF,EAAEuO,GAAG,IAAIrQ,EAAE,IAAIkiK,GAAIzzJ,EAAEqd,GAAG9rB,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAQ,CAAkB,IAAI48B,EAAE,IAAI6qI,IAA3BhzJ,EAAEgrK,GAAGC,GAAIn6K,GAAG,MAAqBzD,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAA0B2hL,GAAflC,GAAGC,GAAI9iJ,GAAG,KAAW/6B,EAAE/B,GAAG+3K,GAAI/1K,EAAEuvB,EAAE5c,EAAE,CAAC,IAAItR,EAAE,IAAIskK,GAAIzzJ,EAAEnS,GAAGsB,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAA0B2hL,IAAjBztK,EAAEurK,GAAGC,GAAIv8K,GAAG,MAAWtB,EAAE/B,GAAG+3K,GAAI/1K,EAAED,EAAEqS,EAAG,CACzX,SAAS24V,IAAI/qW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE,IAAIpU,EAAE,IAAI2nK,GAAIzzJ,EAAEE,GAAGpU,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAyB,IAAIqH,EAAE,IAAIisQ,IAA1B/tQ,EAAEk6K,GAAGC,GAAI5/K,GAAG,KAAoBkU,GAAG8yM,GAAIz/M,EAAEvF,IAAIglN,GAAIz/M,EAAE2M,IAAmEA,IAAT4oB,GAAjBvL,GAApCxvB,EAAE49K,GAAGqnC,GAAIz/M,EAAEvF,GAAG49K,GAAIr4K,EAAEvF,GAAG49K,GAAIr4K,EAAE2M,GAAG,KAAQqd,GAAG9rB,EAAE1D,EAAEA,EAAEA,EAAEwvB,GAAMvxB,MAAoBoU,EAAEurK,GAAG4qB,IAAIxoM,GAAGs9J,MAAM2tM,MAAM,IAAIhrW,GAAI,IAAIoS,EAAE,GAAGO,EAAEmoB,EAAE13B,EAAa,GAARpD,EAAEkS,EAAES,KAAU5S,EAAEA,GAAGwvB,GAAGvvB,EAAEA,EAAE2S,IAAIP,EAAE,EAAEpS,EAAEA,EAAE2S,IAAI,GAAG3S,EAAEuvB,EAAE5c,GAAG,GAAGizN,GAAI5lO,EAAE86B,EAAEA,KAAQ96B,EAAEuvB,EAAE5c,IAAIP,EAAE,EAAEpS,EAAEuvB,EAAE5c,IAAI,GAAG3S,EAAEA,EAAE2S,GAAG,GAAGizN,GAAI5lO,EAAEuF,EAAEu1B,KAAM,CAEzX,SAAS01Q,IAAIxwS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAwB,IAAtBgnB,EAAE,IAAIm2L,GAAI/+M,EAAEqd,EAAErxB,QAAYkU,EAAE,IAAIuzJ,GAAIzzJ,GAAGE,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAASyU,EAAEgrK,GAAGC,GAAIxrK,GAAG,IAAI2jK,GAAIj7I,EAAE96B,EAAEkS,EAAES,EAAE4c,EAAEnsB,GAAGuP,EAAEvP,IAAsB,KA6O7J,SAAapD,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAE,IAAI6D,EAAE,IAAIkiK,GAAIzzJ,GAAGzO,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,SAAS48B,EAAE6iJ,GAAGC,GAAIn6K,GAAG,MAAO8B,EAAE,KAAKu1B,EAAEvL,EAAE,EAAS,IAAPvxB,EAAE,KAAS2U,EAAE,IAAIgzJ,GAAIzzJ,GAAGS,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAmC,GAAT4V,GAAjBgnB,EAAE6iJ,GAAGC,GAAIjrK,GAAG,MAAS5S,EAAE,IAAMwvB,GAAGzb,EAAEzS,IAAI49P,MAAMgF,KAAlB,CAAiC,IAAIrkQ,EAAE+9K,GAAG4qB,IAAIz0L,GAAGk0L,MAAMinH,MAAM,IAAItzG,KAAK/7M,EAAE27M,MAAOvoM,EAAE2qK,GAAG/9K,EAAE67M,KAAK,IAAQlsL,GAAGvc,EAAE3R,IAAI49P,MAAMgF,SAAQnpO,EAAEv1B,IAAIu1B,EAAEv1B,EAAE,IAAI+sK,IAAKx3I,EAAEv1B,GAAGsiN,GAAG7nN,EAAEkS,EAAEc,EAAEuc,EAAEnsB,GAAG4P,EAAE5P,MAAMpD,EAAEkS,EAAEc,EAAEuc,EAAEnsB,GAAG4P,EAAE5P,GAAGmsB,GAAG,IAAIA,GAAGzb,EAAEzS,IAAI49P,MAAMgF,KAAK,CAAC,GAAGjmQ,EAAG,IAAIqD,EAAEs8K,GAAG0iB,GAAGrgM,EAAED,EAAE/B,GAAG,IAAI29M,KAAKt6M,EAAEk6M,MAAuB,IAAhBnpM,EAAEurK,GAAGt8K,EAAEo6M,KAAK,IAAQl2M,EAAEo4K,GAAG0iB,GAAGrgM,EAAED,EAAE+T,GAAG,IAAI6nM,KAAKp2M,EAAEg2M,MAAOx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,IAAIknB,GAAI3iO,EAAEkS,EAAEE,EAAEmd,EAAEnsB,GAAGgP,EAAEhP,IAAIykN,GAAG7nN,EAAEkS,EAAEnS,EAAEwvB,EAAEnsB,GAAGrD,EAAEqD,MAAMpD,EAAEkS,EAAEnS,EAAEwvB,EAAEnsB,GAAGrD,EAAEqD,GAAGmsB,EAAIvxB,EAAE8V,CAAC,CAAtW,CAAwW,CA7Opbm3V,CAAIjrW,EAAE86B,EAAEvL,GAAGzb,EAAE,KAAWA,EAAEo3V,IAAIpwU,IAAIqwU,IAAInrW,EAAE29K,GAAG7pK,EAAE9T,EAAE,KAAK29K,GAAG7pK,EAAE5B,EAAE,KAAK4oB,GAA0B,IAAvB5oB,EAAEqd,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAO54K,EAAE,IAAIogK,GAAI7qI,GAAGv1B,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA0B,IAAUF,EAAE,EAAEqD,GAAVoC,GAArB1D,EAAE49K,GAAGC,GAAIr4K,GAAG,MAAaxF,GAAU7B,OAAOF,EAAEqD,IAAIrD,EAAG2U,EAAElP,EAAEzF,GAAGkU,EAAEqd,EAAErd,EAAEqd,EAAErxB,QAAQyU,EAAE3S,EAAEA,EAAE2S,EAAE4c,EAAEnsB,GAAGuP,EAAEvP,GAAGpD,EAAE6pN,GAAI9pN,EAAE4S,EAAE5S,EAAEA,EAAE,IAAIC,CAAG,CAC1X,SAASorW,IAAIprW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,GAAG,GAAG+uJ,GAAG7pL,EAAE,IAAI29K,GAAG39K,EAAE,IAAIi/K,KAAKwkF,GAAGzjQ,EAAE27M,OAAO,CAAK,GAAG,GAAPp2M,EAAE2M,GAAS,CAAe,MAAZ3M,EAAEu1B,EAAE,IAAIwwH,GAAQvrJ,EAAEC,EAAE27M,KAAK57M,EAAEw7M,MAAOhsL,EAAEouJ,GAAG59K,EAAE07M,KAAK,IAAI3gL,EAAEqrE,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,CAACrjJ,EAAE,IAAI4yI,GAAIn+I,MAAM,OAAO67U,IAAItwU,EAAEv1B,EAAE,CAAC,GAAGA,EAAE,EAAE,CAAW,IAAVu1B,EAAE,IAAIywH,GAAQxrJ,EAAEC,EAAE27M,KAAK57M,EAAEw7M,MAAOhsL,EAAEouJ,GAAG59K,EAAE07M,KAAK,IAAI3gL,EAAEqrE,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,CAACrjJ,EAAE,IAAI4yI,GAAIn+I,MAAM,GAAG,GAAGs6J,GAAG/uJ,EAAE,IAAI6iJ,GAAG7iJ,EAAE,IAAImkJ,KAAKwkF,GAAG3oO,EAAE6gL,OAAQ,OAAOyvJ,IAAItwU,EAAEv1B,EAAG,CAAC,CAAC,OAAOo4K,GAAGgrC,GAAG3oN,EAAE27M,MAAM,GAAG,CAC1X,SAAS4wF,MAAMA,IAAI73J,EAAIggK,IAAI,IAAI1+F,GAAI,uBAAuB,GAAGw2F,IAAI,IAAIx2F,GAAI,oCAAoC,GAAG2+F,IAAI,IAAI3+F,GAAI,kBAAkB,GAAG4+F,IAAI,IAAI5+F,GAAI,+BAA+B,GAAG6+F,IAAI,IAAI7+F,GAAI,iBAAiB,GAAG8+F,IAAI,IAAI9+F,GAAI,uBAAuB,GAAG++F,IAAI,IAAI/+F,GAAI,8BAA8B,GAAGg/F,IAAI,IAAIh/F,GAAI,4BAA4B,GAAGi/F,IAAI,IAAIj/F,GAAI,eAAe,EAAE,CAC1X,SAASylD,IAAIz7P,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE,GAAIF,EAAmB,CAAwC,GAAvCqd,GAAGuL,EAAE5oB,EAAE81M,MAAaysB,GAAI35M,GAAGkhM,KAAKqvI,GAAGvwU,GAApB,KAA6B,CAAqB,IAApB4qK,IAAI1lM,EAAEkS,EAAEqd,GAAgBvxB,EAAE,EAAEoU,GAAQ,OAAzB7M,EAAE2M,EAAE81M,MAAkBhqN,GAAS+4O,IAAIxxO,GAAGA,EAAEvH,GAAGE,OAAOF,EAAEoU,IAAIpU,EAAc,MAALuH,EAAEvH,GAAS+4O,IAAIxxO,GAAlBxF,EAAqBwF,EAAEvH,GAA1ByF,EAA6BzF,GAAG,GAAGA,EAAE+B,EAAE7B,OAAO6B,EAAE/B,GAAG,MAAW29P,OAAOl4P,EAAE8oN,OAAS1iC,GAAGpmL,EAAE,KAAMg2T,IAAIz5T,EAAE29K,GAAGl6K,EAAE,IAAIyO,EAAEqd,GAA+B,KAAvB5c,EAAEgrK,GAAGl6K,EAAE,KAAO+xK,GAAGyhE,MAASs2F,IAAIvtU,EAAE2S,EAAET,EAAEqd,IAAKrd,EAAE0/N,MAAMj0D,GAAGpuJ,EAAE,IAAI+7U,GAAG3tL,GAAGzrK,EAAE,IAAIytU,KAAK,CAAC,OAAOpwT,CAAC,CAA5U,OAAO,IAAsU,CAC1X,SAASo7U,IAAI3qW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAE,IAAI5oB,EAAE4oB,EAAG,MAAMo4I,GAAI,IAAI2O,GAAI,sCAAsC,GAAGtyJ,EAAEuL,EAAG,MAAMo4I,GAAI,IAAI2O,GAAI,6CAA6H,IAAhF3vK,EAAE4oB,GAAE,EAAM2tL,GAAIzoN,EAAEoD,EAAE8O,GAAGqd,EAAEuL,GAAE,EAAK6sJ,GAAI3nL,EAAEoD,EAAEmsB,GAAGxvB,EAAEwvB,EAAEhqB,EAAEA,EAAEgqB,EAAExvB,EAAEwF,EAAEgqB,EAAEvvB,EAAEghV,IAAIhhV,EAAEuvB,EAAEhqB,EAAE2M,KAAKnS,GAAGA,GAAO+6B,EAAE,IAAI6qI,GAAI3lK,EAAEuF,EAAEvF,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAA0B8iV,IAAIhhV,EAArBuF,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAa5oB,KAAK3M,EAAEA,GAAGxF,GAAGC,EAAEoS,EAAE,EAAEowK,GAAIxiL,EAAEuvB,GAAG6yT,IAAIpiV,EAAE29K,GAAGC,GAAI,IAAIjY,GAAI3lK,EAAEuF,EAAEvF,IAAI,MAAMu8V,IAAIv8V,EAAE,CAC5X,SAASurW,IAAIvrW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAA8B,IAA5BA,EAAEk6K,GAAG4qB,IAAIr2L,GAAGmrJ,MAAMykI,MAAM,OAAaxM,MAAMv4D,MAAMt5N,GAAGu5N,IAAgE,IAAnDz3N,EAAG,IAAI0vM,GAAI/iM,EAAE4oB,EAAE96B,EAAEkS,EAAEnS,EAAEmS,EAAEA,EAAEnS,EAAEwvB,EAAErd,EAAE4oB,EAAE5oB,EAAEA,EAAEnS,EAAEA,EAAEmS,EAAEnS,EAAEC,GAAIkS,EAAMS,EAAE,IAAIgzJ,GAAI3lK,EAAEA,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,SAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAStR,IAAI49P,MAAMC,QAAe3vO,EAAEouJ,GAAG4qB,IAAIztK,GAAGktK,MAAMe,MAAM,OAAWtpB,MAAMC,MAAMnwJ,GAAGqwJ,MAAc7/K,EAAEugL,GAAIC,GAAGgoB,IAAIztK,EAAEymU,OAAO99V,GAAGs5N,MAAMh9N,GAAGwF,GAAGu1B,EAAEl7B,EAAEsS,EAAEnS,EAAE49K,GAAG4qB,IAAIztK,EAAE2+T,KAAK,GAAGvnV,EAAE0+R,GAAI91Q,GAAE,GAAM,IAAM,CAC5X,SAAS0wU,IAAIxrW,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAgD,GAz9D5F,SAAaI,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAS,IAAPv1B,EAAE2M,EAAEqd,GAAOxvB,EAAE,EAAEA,EAAEwF,EAAErH,OAAO6B,IAAK+6B,EAAEv1B,EAAExF,GAAGC,EAAEuF,EAAEu1B,EAAEvL,EAAEnsB,GAAG03B,EAAE13B,GAAGrD,CAAE,CAy9DxC0rW,CAAIzrW,EAAEkS,EAAEqd,GAAGuL,EAAE5oB,EAAEqd,GAAG3vB,EAAEG,GAAG0/K,MAAMG,MAAMH,MAAMC,KA1rHvF,SAAa1/K,EAAEkS,EAAEqd,GAAG,OAAOA,EAAK,GAAHrd,EAAKA,GAAGlS,EAAE,CAAC,CA0rHuD0rW,CAAIx5V,EAAEhU,OAAOqxB,EAAExvB,GAAG,CAAmD,IAAnCmzQ,GAAIlzQ,EAAnBuF,EAAE2M,EAAEnS,EAAEwvB,EAAE,EAAEA,EAAE,GAAWxvB,GAAGi6Q,KAAMG,MAAMH,KAAME,MAAc74Q,EAAE,EAAE2R,GAARhV,EAAE88B,GAAU58B,OAAOmD,EAAE2R,IAAI3R,EAAU+6T,IAAIp8T,EAAX2S,EAAE3U,EAAEqD,GAAWzB,GAAsC,IAAnCszQ,GAAIlzQ,EAAE86B,EAAE/6B,GAAGi6Q,KAAME,MAAMF,KAAMG,MAAc/nQ,EAAE,EAAE0B,GAARrQ,EAAE8B,GAAUrH,OAAOkU,EAAE0B,IAAI1B,GAAGO,EAAElP,EAAE2O,IAAO7M,GAAG62T,IAAIp8T,EAAE2S,EAAEuxS,GAAItkT,GAAI,MAAM,IAAQwS,EAAE,EAAE0B,GAARrQ,EAAEq3B,GAAU58B,OAAOkU,EAAE0B,IAAI1B,EAAUgqT,IAAIp8T,EAAX2S,EAAElP,EAAE2O,GAAWxS,GAAI,OAAO,CAAK,CAC5X,SAAS+rW,IAAI3rW,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAI3U,EAAIqD,EAAErD,EAAEmrN,GAAIj3M,EAAEqd,IAAIA,IAAIkwJ,MAAMonB,MAAMt3K,GAAGqwJ,OAAO5hL,EAAE6rL,GAAG7rL,EAAE,KAAK6yQ,GAAGlzF,GAAG3/K,EAAE,MAAM6rL,GAAG7rL,EAAE,KAAK2/K,GAAG3/K,EAAE,KAAKgC,EAAE6pL,GAAG7rL,EAAE,IAAI,IAAI8+K,GAAG9+K,GAAG,IAAI8sE,GAAG9sE,IAAI2U,GAAE,EAAM,GAAW,IAARpN,GAAE,EAAUu1B,EAAE,EAAEA,EAAE98B,EAAEihL,KAAK,EAAEnkJ,IAA4Ci7S,IAAI/1U,EAAzC29K,GAAG3/K,EAAEq9M,GAAGvgL,GAAG,IAAM6iJ,GAAG3/K,EAAEq9M,GAAGvgL,EAAE,GAAG,IAAiB/6B,KAAI4S,GAAE,EAAKmlP,GAAI93P,EAAEA,EAAE29K,GAAG3/K,EAAEq9M,GAAGvgL,GAAG,IAAI6iJ,GAAG3/K,EAAEq9M,GAAGvgL,EAAE,GAAG,KAAKz5B,EAAEs8K,GAAG3/K,EAAEq9M,GAAGvgL,EAAE,GAAG,IAAI98B,EAAEoJ,GAAG0zB,EAAE,EAAE6iJ,GAAG3/K,EAAEq9M,GAAGvgL,GAAG,KAAK98B,EAAEoJ,GAAG0zB,EAAEz5B,GAAGkE,GAAE,SAAaA,GAAG,OAAOoN,CAAC,CAG5X,SAASi5V,IAAI5rW,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAsB,IAApBA,EAAE,IAAIw0K,GAAItgK,EAAE,IAAI0kK,GAAQjkK,EAAE3S,EAAE27M,KAAKhpM,EAAE4oM,MAAOh2M,EAAEo4K,GAAGhrK,EAAE8oM,KAAK,IAAIh4M,EAAEyrN,GAAI5sB,GAAI,IAAIvrB,GAAIxxK,GAAG2M,GAAG2uO,IAAI7iP,EAAE88B,EAAEv1B,EAAE9B,GAAG,IAAIq3B,EAAE96B,EAAE27M,KAAK7gL,EAAEygL,MAAuB,IAAIx7M,EAAE,IAAI+uO,GAAG7hB,GAAGm1E,GAAhC78R,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,KAA2Bz7M,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAAuBqpN,GAAlB75L,EAAEouJ,GAAGwtC,GAAGprN,GAAG,MAAwBu7T,IAAIl5H,GAAID,GAAID,GAAIG,GAAI,IAAIvrB,GAAI7jC,EAAK3/H,KAAKugB,IAAI,EAAE8pJ,GAAG4qB,IAAIh5K,GAAG8tI,MAAMwuM,MAAM,IAAI7rW,IAAI,GAAG29K,GAAG+5B,GAAI15M,EAAEuxB,EAAEA,EAAEvxB,GAAG,MAAM2/K,GAAG+5B,GAAI15M,EAAEuxB,EAAExvB,EAAE/B,GAAG,OAAQ,OAAOkU,CAAC,CAC9X,SAASmtJ,MAAMA,IAAI3qB,EAAIo3N,IAAIrkI,GAAI,IAAI/iC,IAAKuuD,MAAMu/B,MAAMr/B,MAAMqkG,MAAMuU,IAAItkI,GAAI,IAAI/iC,GAAI6tF,IAAImkE,KAAKsV,IAAIz+H,GAAI9F,GAAI,IAAI/iC,GAAI6tF,IAAIskE,KAAK3jG,IAAI8kG,KAAKiU,IAAI1+H,GAAI9F,GAAIA,GAAI,IAAI/iC,GAAI6tF,IAAI+jE,KAAK9jE,IAAIilE,KAAKvkG,IAAI2kG,KAAKqU,IAAItqF,IAAIA,IAAI14E,GAAIqkC,GAAI9F,GAAI,IAAI/iC,GAAIy7E,IAAI81E,KAAK/iG,IAAI4kG,KAAKtlE,KAAKykE,KAAKE,KAAKgV,IAAI5+H,GAAI,IAAI7oC,GAAIwuD,IAAI0kG,KAAKwU,IAAI7+H,GAAI9F,GAAIA,GAAIA,GAAI,IAAI/iC,GAAI4tF,IAAI0jE,KAAKxjE,IAAI8kE,KAAK9kE,IAAI+kE,KAAKrkG,IAAIglG,KAAKmU,IAAI9+H,GAAI9F,GAAIA,GAAI,IAAI/iC,GAAI8tF,IAAI+kE,KAAK/kE,IAAI6kE,KAAKnkG,IAAIklG,IAAI,CAG9X,SAASpgK,IAAIh4L,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAIr3B,EAAE,GAAM,MAAHzD,EAAS,MAAMkzK,GAAI,IAAImR,GAAI0T,MAAyG,IAAIh4L,GAAvG+6B,EAAE96B,EAAE9B,QAAW,IAAI05L,GAAI,EAAE53L,EAAE9B,QAAyB,IAAjB8B,EAAEqf,WAAW,KAASu4K,GAAI,EAAE53L,EAAE9B,QAAyB,IAAjB8B,EAAEqf,WAAW,KAAS,EAAE,EAAUtf,EAAE+6B,EAAE/6B,IAAK,IAA4C,GAAzCmxT,KAAKt5H,GAAI73L,EAAEC,EAAE9B,QAAQ8B,EAAEqf,WAAWtf,KAAU,MAAMmzK,GAAI,IAAImR,GAAIwT,IAAI73L,EAAE,MAA8B,GAANuF,GAAjB9B,EAAEoP,SAAS7S,EAAE,KAAQkS,EAAKvC,MAAMlM,GAAI,MAAMyvK,GAAI,IAAImR,GAAIwT,IAAI73L,EAAE,MAAW,GAAGuF,GAAG9B,EAAE8rB,EAAG,MAAM2jJ,GAAI,IAAImR,GAAIwT,IAAI73L,EAAE,MAAM,OAAOyD,CAAC,CAGhY,SAAS6oW,IAAItsW,GAAS,OAAOA,GAAG,KAAK,IAAI,OAAOusW,IAAIC,KAAI,GAAM,KAAK,GAAG,OAAOD,IAAIC,KAAI,GAAO,KAAK,IAAI,OAAOD,IAAIE,KAAI,GAAM,KAAK,GAAG,OAAOF,IAAIE,KAAI,GAAO,KAAK,IAAI,OAAOF,IAAIG,KAAI,GAAM,KAAK,GAAG,OAAOH,IAAIG,KAAI,GAAO,KAAK,GAAG,OAAOH,IAAII,KAAI,GAAM,KAAK,GAAG,OAAOJ,IAAII,KAAI,GAAO,KAAK,IAAI,OAAOJ,IAAIK,KAAI,GAAM,KAAK,GAAG,OAAOL,IAAIK,KAAI,GAAO,QAAQ,MAAM15L,GAAI,IAAIiK,GAAQ0vL,IAAF7sW,EAAQtB,SAAS,MAAQ,CAEhY,SAASygW,IAAIn/V,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAMgqB,KAAKxvB,IAAIC,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,EAAEA,EAAE9B,OAAO,GAAG,IAAO,GAAHgU,GAAMyrK,GAAG39K,EAAEA,EAAEA,EAAEkS,GAAG,IAAI7Q,IAAI49P,MAAMk4B,KAAMuyD,IAAI/rK,GAAG39K,EAAEA,EAAEA,EAAEkS,GAAG,KAAK61Q,MAAMG,MAAcnoR,KAAKwvB,IAAIvvB,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,EAAEA,EAAE9B,OAAO,GAAG,IAAO,GAAHgU,GAAMyrK,GAAG39K,EAAEA,EAAEA,EAAEuvB,EAAE,EAAEvvB,EAAEA,EAAE9B,OAAO,GAAG,IAAImD,IAAI49P,MAAMk4B,KAAMuyD,IAAI/rK,GAAG39K,EAAEA,EAAEA,EAAEuvB,EAAE,EAAEvvB,EAAEA,EAAE9B,OAAO,GAAG,KAAK6pR,MAAMI,MAAsC,IAAvBnoR,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,EAAEA,EAAE9B,OAAO,IAAOwrV,IAAI/rK,GAAG61D,GAAIxzO,GAAG,KAAK+nR,MAAMG,MAAMwhE,IAAI/rK,GAAG61D,GAAIxzO,GAAG,IAAImoR,MA5UzW,SAAanoR,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAA2C,IAAzCrD,EAAE8yN,GAAG9wN,EAAEuvB,EAAEvvB,EAAEkS,EAAElS,EAAEA,EAAE9B,OAAO,GAAGkU,EAAE,KAAK/Q,EAAE,KAASy5B,EAAE,IAAIqnN,GAAIniP,GAAG86B,EAAE96B,GAAG86B,EAAE5oB,GAAI3M,EAAEo4K,GAAGk0H,GAAI/2Q,GAAG,IAAIvL,GAAG9rB,EAAEk6K,GAAG4qB,IAAIhjM,GAAGyiM,MAAM8hI,MAAM,KAAYrmU,EAAEzF,EAAP,KAAU+B,GAAG4S,EAAEgrK,GAAG4qB,IAAIhjM,EAAEwkU,KAAK,KAAYp3T,EAAE3U,EAAP,KAAaoU,GAAGmd,GAAGluB,GAAGtB,IAAGmtV,IAAIlvV,EAAEkU,GAAGE,EAAEmd,EAAEluB,EAAEtB,GAAE/B,EAAEuxB,EAAEvxB,EAAEuxB,EAAErxB,QAAQqH,EAAE2nV,IAAIlvV,EAAEkU,EAAE,CA4U4G46V,CAAI9sW,EAAEuF,GAAGygQ,GAAIhmQ,EAAE,CAGlY,SAAS+sW,IAAG/sW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,GAAGT,EAAE,IAAIlS,EAAE9B,OAAc,OAANqxB,EAAErvB,EAAE,GAAS,EAAK,OAAOg5L,GAAIl5L,EAAEkS,EAAE,KAAK,KAAK,GAAG3M,EAAE,EAAE,MAAM,KAAK,GAAGA,GAAG,EAAE,MAAM,QAAc,OAANgqB,EAAErvB,EAAE,GAAS,EAA8B,KAAtBgS,EAAE,GAAG4oB,EAAE5oB,EAAE,GAAmB,IAAhBS,EAAEwwU,IAAGnjV,EAAEkS,KAAYA,EAAE,IAAI4oB,EAAG,OAAO,EAAM,GAAG5oB,EAAE,GAAGlS,EAAE9B,QAAqB,IAAbg7L,GAAIl5L,EAAEkS,EAAE,IAAQ,CAAgC,GAA/BnS,EAAI,GAAF4S,IAAOT,EAAE,GAAG4oB,EAAE5oB,EAAE,GAAmB,IAAhBS,EAAEwwU,IAAGnjV,EAAEkS,KAAYA,EAAE,IAAI4oB,EAAG,OAAO,EAAM/6B,GAAG4S,CAAC,MAAM5S,EAAE4S,GAAI,IAAIT,EAAE,GAAG4oB,GAAG,EAAG/6B,GAAG,GAAKA,EAAEA,EAAE,IAAc,IAATA,EAAE,IAAI,GAAmB,OAAZA,GAAGwF,EAAEgqB,EAAErvB,GAAGH,GAAS,CAAI,CACpY,SAASitW,IAAIhtW,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAM4S,EAAElP,EAAEzF,EAAEoU,EAAY,IAAVO,EAAE,IAAI2/J,GAAQvyK,EAAE,IAAI+uO,GAAG7hB,GAAGm1E,GAAIpiS,EAAEkS,GAAGlS,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAAoBqpN,GAAf75L,EAAEouJ,GAAGwtC,GAAGprN,GAAG,MAAYg2K,GAAIpjK,EAAE,IAAI++P,GAAIniP,EAAE8xP,GAAIrhR,EAAEuvB,EAAEA,GAAG8xP,GAAIrhR,EAAEuvB,EAAExvB,KAAK,IAAIqS,EAAgC,IAAI6yJ,GAA9B,IAAIR,GAAIzkK,EAAEuF,GAAIvF,EAAEspO,KAAK3tB,MAAiBvpM,EAAEpS,EAAEu7M,MAAUrpM,EAAEyrK,GAAGvrK,EAAEpS,EAAEy7M,KAAK,KAAjBh4M,EAAqBk6K,GAAGzrK,EAAE4oM,KAAK,MAAQ/6M,EAAEqD,EAAE,EAAE,IAAIpF,EAAgC,IAAIinK,GAA9B,IAAIR,GAAIzkK,EAAEuF,GAAIvF,EAAEspO,KAAK3tB,MAAiB39M,EAAEgC,EAAEu7M,MAAUrpM,EAAEyrK,GAAG3/K,EAAEgC,EAAEy7M,KAAK,IAA2B,IAA5Ch4M,EAAqBk6K,GAAGzrK,EAAE4oM,KAAK,MAAQ/6M,EAAEqD,GAAM2yK,GAAI/1K,EAAED,EAAE8pW,IAAI7pW,EAAEyD,GAAI,CAGpY,SAASy0N,IAAIl4N,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAA4V,OAA1V2U,EAAE3S,EAAE2wT,KAAcprT,EAAE,MAAXvH,EAAEgC,EAAEgtT,MAAuB96S,GAAwB,IAApB82U,IAAIhpV,EAAEkS,EAAEqd,GAAGimJ,GAAGmyC,MAAS5nN,EAAEgxS,IAAI/yS,EAAEshT,KAAKt/S,EAAED,GAAGC,EAAEitW,GAAG,MAAM1nW,EAAE2M,EAAE2+S,MAAU7yT,EAAE,MAAa2U,IAAI3U,EAAE2U,EAAEk+S,MAAQ3+S,IAAI3M,EAAE2M,EAAE2+S,OAAM7yT,GAAGuH,GAAKvH,GAAGA,EAAEkvW,GAAGltW,GAAGyD,EAAEzD,EAAE8iN,KAAK9iN,EAAE2oV,GAAGz2U,EAAEqd,GAAGvxB,GAAGuH,GAAKA,GAAGA,EAAE4nW,GAAGntW,GAAMA,EAAEuhN,MAAMvhN,EAAEwhN,OAAW7uM,GAAGlP,GAAG,GAAGA,GAAG8rB,IAAGuL,EAAE,IAAIw3M,GAAItyO,EAAE,EAAEyD,EAAEkP,EAAE,MAAO5S,EAAQA,EAAEu+N,GAAGxjM,GAAV/6B,EAAE+6B,GAAcvL,GAAG,IAAGuL,EAAE,IAAIw3M,GAAItyO,EAAE,EAAEuvB,EAAE9rB,GAAG8rB,EAAE5c,EAAE,KAAKT,GAAInS,EAAQA,EAAEu+N,GAAGxjM,GAAV/6B,EAAE+6B,IAAmB/6B,CAAC,CACtY,SAAS6/U,IAAI5/U,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,GAAQ,MAALC,EAAEkS,EAAQ,CAA6C,GAA5CnS,EAAE,IAAIukL,GAAY,MAALtkL,EAAEhC,IAASy+M,GAAI18M,EAAEC,EAAEhC,GAAG+B,EAAEC,GAAG,KAAkB,IAAN,IAAJA,EAAE86B,GAAU,CAA4H,IAA7G,IAAN,IAAJ96B,EAAE86B,IAAgB,MAAL96B,EAAEA,IAx0FxH,SAAaA,GAAG,OAAU,MAAHA,GAASggM,GAAIi+I,IAAIj+U,EAAEoR,cAAc,CAw0FyEg8V,CAAIptW,EAAEhC,KAAK+B,EAAEC,GAAG,MAAQy8M,GAAI18M,EAAEC,EAAEA,IAAW,MAALA,EAAED,IAASA,EAAEC,GAAG,IAAIy8M,GAAI18M,EAAEC,EAAED,IAAa,IAAL,GAAJC,EAAE86B,KAAW/6B,EAAEC,GAAG,KAAWkS,EAAE,EAAEqd,EAAEvvB,EAAEoS,EAAElU,OAAOgU,EAAEqd,EAAErd,IAAQ,GAAHA,IAAOnS,EAAEC,GAAG,KAAOy8M,GAAI18M,EAAEC,EAAEoS,EAAEF,IAAY,MAALlS,EAAE2S,IAAS5S,EAAEC,GAAG,IAAIy8M,GAAI18M,EAAEC,EAAE2S,GAAG,MAAM8pM,GAAI18M,EAAEC,EAAEA,GAAW,MAALA,EAAEuF,IAASxF,EAAEC,GAAG,IAAIy8M,GAAI18M,EAAEC,EAAEuF,IAAGvF,EAAEkS,EAAEnS,EAAEC,CAAC,CAAC,OAAOA,EAAEkS,CAAC,CAEtY,SAASm7V,IAAIrtW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAIr3B,EAAEzF,EAAE6jS,IAAItyQ,EAAE,sBAAsBvvB,EAAEA,EAAE,GAAGD,EAAgB,GAAdmS,EAAEA,EAAEqd,EAAErxB,SAAY47L,GAAIqwB,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAIr7L,EAAEA,EAAE,KAAK,IAAIq0J,GAAI,IAAIzd,MAAO2wC,IAAI2J,KAAMC,MAAMrlM,EAAgB,GAAdkU,EAAEA,EAAEqd,EAAErxB,QAAyC,GAA9By/K,GAAG0pB,GAAIn1L,EAAEA,EAAE,GAAG,IAAIlS,EAAEuvB,EAAErxB,OAAU48B,EAAEigL,GAAGxS,IAAIr2L,GAAGmrJ,MAAMiwM,SAASvyJ,IAAIqjE,KAAMG,MAASx+Q,GAAG/B,IAAI88B,IAzlD5Q,SAAa96B,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,IAAIA,EAAE++P,IAAI9+P,EAAE,GAAGD,EAAEmS,GAAGnS,EAAEA,EAAEwvB,IAAIA,EAAEouJ,GAAGohF,GAAIh/P,GAAG,MAAUwF,EAAErH,OAAO,IAAGgU,EAAE0uK,GAAGrxJ,GAAGA,EAAEvxB,GAAG0lT,GAAIn0R,GAAI,CAylDoQg+U,CAApFhoW,EAAE01V,IAAIj7V,EAAEkS,IAAMzO,EAAEk6K,GAAGoiG,IAAGx6Q,EAAE,GAAG,MAAOgqB,EAAEq0R,KAAKngT,EAAE8rB,EAAEi+U,KAAK,IAAInhM,GAAIrsK,GAAG,IAAIssK,GAAItsK,GAAG,IAAIosK,GAAIpsK,IAjgD7W,SAAaA,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,IAAIA,EAAE,IAAI4lK,GAAI3lK,EAAEkS,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,SAA0BgU,GAAjBqd,EAAEouJ,GAAGC,GAAI79K,GAAG,MAASwvB,EAAEq0R,KAAKr0R,EAAEuL,EAAEvL,EAAEvvB,IAAOytW,IAAIv7V,EAAEqd,EAAEnd,EAAG,CAigDsQs7V,CAAI1tW,IAA/GuiS,IAAIhzQ,EAAoH,CAEvY,SAAS2yR,IAAIliT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAE,IAAIq3B,EAAE,EAAEA,EAAE5oB,EAAE4oB,IAAI,CAAK,IAAJ/6B,EAAE,EAAM0D,EAAEq3B,EAAE,EAAEr3B,EAAEyO,EAAEzO,IAAK1D,EAAE2qM,GAAIA,GAAI3R,GAAIH,GAAI54L,EAAE86B,GAAG+9J,KAAKD,GAAI54L,EAAEyD,GAAGo1L,MAAMD,GAAIrpK,EAAEuL,EAAEr3B,GAAGo1L,MAAMD,GAAIqxB,GAAIlqN,GAAG84L,MAAMtpK,EAAEuL,EAAEr3B,GAAGwmN,GAAIlqN,GAAGA,EAAEgwO,GAAIhwO,EAAE,IAAIwvB,EAAEuL,EAAE5oB,GAAG+3M,GAAIlqN,EAAE,CAAmB,IA70DjN,SAAaC,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAM,IAAJ/6B,EAAE,EAAMwF,EAAE,EAAEA,EAAEgqB,EAAEhqB,IAAKu1B,EAAE5oB,EAAE3M,GAAGvF,EAAEuF,GAAGu1B,GAAG,EAAE/6B,EAAEA,EAAE+6B,IAAI,GAAM,GAAH/6B,IAAOC,EAAEuvB,GAAGxvB,EAAE,CA60DkG4tW,CAAIp+U,EAAEA,EAAErd,GAAG,GAAGnS,EAAE,EAAMwF,EAAE,EAAEoN,EAAE,EAAEpN,EAAE2M,IAAI3M,EAAEoN,IAAK5S,EAAE2qM,GAAIA,GAAI3R,GAAIH,GAAI54L,EAAEuF,GAAGszL,KAAKD,GAAI54L,EAAEuF,GAAGszL,MAAMD,GAAIrpK,EAAE5c,GAAGkmL,MAAMD,GAAIqxB,GAAIlqN,GAAG84L,MAAMtpK,EAAE5c,GAAGs3M,GAAIlqN,GAAmBA,EAAE2qM,GAAlB3qM,EAAEgwO,GAAIhwO,EAAE,IAAgB64L,GAAIrpK,IAAd5c,GAAmBkmL,MAAMtpK,EAAE5c,GAAGs3M,GAAIlqN,GAAGA,EAAEgwO,GAAIhwO,EAAE,IAAI,OAAOwvB,CAAC,CACxY,SAASq+U,IAAI5tW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAE,IAAGihQ,GAAGpwP,GAAN,CAAqG,IAApFlU,EAAEsiL,GAAIC,GAAGosI,IAAIp9R,EAAEA,GAAG8tI,MAAMkuJ,UAAQn5S,EAAEurK,GAAGgvI,IAAIp9R,EAAEA,EAAEs+U,KAAK,QAAUz7V,EAAE,IAAIwmK,IAAK74K,EAAEwvB,EAAEvvB,EAAEuF,EAAE,KAAS9B,EAAEyO,EAAEypM,KAAKl4M,EAAE83M,MAAO5oM,EAAEgrK,GAAGl6K,EAAEg4M,KAAK,IAAIp6M,EAAE,EAAMkE,GAAclE,EAAErD,EAAEqD,GAAGkE,EAAErF,EAAEgS,GAAtB7Q,EAAE+Q,EAAErS,EAAoB+6B,EAAEo0L,GAAI5sB,GAAI,IAAIvrB,GAAIpkK,GAAG3S,EAAE86B,GAAG67J,GAAI32L,EAAEqB,EAAEsR,EAAEmoB,GAAGwgS,IAAIl5H,GAAID,GAAID,GAAIG,GAAI,IAAIvrB,GAAI,GAAGqhB,GAAGllD,EAAK3/H,KAAKwd,KAAKzvB,KAAKtB,GAAG+6B,IAAIv1B,EAAEoN,EAAE5S,EAAE+6B,EAAEwgS,IAAIl5H,GAAID,GAAID,GAAIG,GAAI,IAAIvrB,GAAI,GAAGqhB,GAAGllD,EAAK3/H,KAAKwd,KAAK1e,EAAEpS,EAAEuF,EAAErF,EAAEgS,KAAKnS,GAAGwvB,EAAExvB,GAA7U,CAAgV,CACxY,SAAS+tW,IAAI9tW,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,GAAG,IAAQpC,EAAI2R,EAAEpT,EAAmD,OAAjDA,GAAE,EAAMoT,EAAE8nB,EAAEvL,EAAE1b,EAAExS,EAAEkuB,EAAEtb,EAAE/B,EAAE4oB,EAAKsmP,IAAI7xP,EAAEvc,GAAE,GAAShT,IAAMD,EAAE4S,EAAElP,EAAEuP,KAA4C3R,EAAEoC,EAAzB29Q,IAAIrhR,EAAEiT,GAAE,GAAShT,GAAakS,EAAEA,IAAGivQ,GAAI5xP,EAAEuL,EAAEvL,EAAE1b,GAAG0b,EAAEA,GAAE,EAAK4xP,GAAIphR,EAAE+6B,EAAEvL,EAAE1b,GAAG+6S,IAAI7uT,EAAEwvB,EAAE1b,EAAE0b,EAAEtb,EAAEsb,EAAExvB,EAAE0D,GAAG1D,EAAEsB,GAAE,EAAKgmS,GAAI93Q,EAAEvb,EAAEjU,GAAGH,GAAE,EAAQ2F,IAAGs4R,GAAI3rR,EAAEnS,GAAGA,EAAEqS,EAAEF,EAAKlS,EAAEuvB,EAAErxB,OAAOyU,IAAGq1T,KAAKvqH,GAAI9qM,EAAE3S,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAE5c,GAAG,MAAM5S,GAAkD,IAA9C09M,GAAI9qM,EAAE3S,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAE5c,GAAG,MAAM3S,EAAEuvB,EAAErxB,QAAW22O,GAAI70O,EAAE2S,MAAY/S,EAAC,CAExY,SAAS8kV,IAAI1kV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAM4S,EAAElP,EAAEzF,EAAIqD,EAAE,GAAQ,GAAL6Q,EAAE9O,EAAK,CAA8K,IAA7K8O,EAAE9O,EAAE,GAAEuP,EAAE4c,KAA0E5c,EAAE,IAAI6jM,GAArE,IAAIlkC,GAAuB,IAAIm1B,GAApB1nM,EAAE49K,GAAGsL,GAAIue,KAAI,GAAa7pB,GAAG+pB,GAAI3nM,EAAEA,EAAE7B,QAAQ,GAAG,KAAmBy/K,GAAGhrK,EAAE3S,EAAE,IAAI6nN,GAAG31M,GAAGA,EAAE7Q,IAAI49P,MAAMC,MAAMvhF,GAAGhrK,EAAET,EAAE,IAAI21M,GAAGlqC,GAAG4qB,IAAIr2L,GAAG81L,MAAMe,MAAM,KAAS/qM,EAAE,IAAI2nK,GAAIzzJ,EAAEE,GAAGpU,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAyB,IAAhBuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,IAAQqD,EAAE4pN,GAAG9kH,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,CAAC,IAAIxV,GAAIllK,GAAG,IAAIolK,GAAIplK,OAAO2nN,IAAG/pN,IAAoBqjV,IAAI1kV,EAAjB29K,GAAGwtC,GAAG9pN,GAAG,IAAYrD,EAAE2U,GAAI,OAAOA,CAAC,CAAC,OAAO,IAAI,CAC3Y,SAASu6O,IAAIltP,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,GAAG3S,EAAEsxV,GAAI,GAAGtxV,EAAEsxV,IAAa,IAAT3+U,EAAE3S,EAAEsxV,GAAGtzV,GAAO,EAAqB,GAAlBuH,EAAEo4K,GAAG39K,EAAEsxV,GAAG3+U,EAAE,MAAY,MAAHT,GAAS,IAAI4oB,EAAE,EAAEA,EAAEnoB,IAAImoB,EAAU,GAAQ,OAAfvL,EAAEhqB,EAAEu1B,IAAQ/6B,EAAS,OAAOwvB,OAAS,IAAIuL,EAAE,EAAEA,EAAEnoB,IAAImoB,EAAU,GAAGuhM,GAAInqN,GAAdqd,EAAEhqB,EAAEu1B,IAAc/6B,GAAI,OAAOwvB,OAAW,GAAM,MAAHrd,GAAS,IAAInS,EAAE,IAAIg/K,GAAI/+K,EAAEsxV,IAAIvxV,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAwB,GAAQ,OAAzB1vJ,EAAEouJ,GAAGwB,IAAIp/K,GAAG,MAAUA,EAAS,OAAOwvB,OAAS,IAAIxvB,EAAE,IAAIg/K,GAAI/+K,EAAEsxV,IAAIvxV,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAwB,GAAGo9C,GAAInqN,GAAxBqd,EAAEouJ,GAAGwB,IAAIp/K,GAAG,MAAgBA,GAAI,OAAOwvB,EAAM,OAAO,IAAI,CAC3Y,SAASw+U,IAAI/tW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAIr3B,EAAEzF,EAAEoU,EAA2B,GAAM,OAA/BA,EAAE+pM,GAAG5T,IAAIr2L,GAAG6sJ,MAAMmrL,UAAoBrpL,GAAIzuJ,GAAGA,GAAG,CAAoB,IAre1G,SAAapS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAA4D,IAA1DpN,EAAE2M,EAAEA,EAAEA,EAAElS,EAAEA,EAAEi+K,GAAGyS,IAAGivI,IAAI,GAAGp6T,EAAE,EAAE,GAAGvF,EAAEkS,EAAE+rK,GAAG8U,IAAIuyD,IAAI,GAAG//O,EAAE,GAAG,GAAOoN,EAAEmsP,IAAI5sP,EAAEA,EAAE,GAAGS,EAAET,GAAGS,EAAE5S,EAAEwvB,GAAIuL,EAAE6iJ,GAAGohF,GAAIpsP,GAAG,IAAI3S,EAAEA,EAAE86B,EAAEnoB,GAAG,IAAI8mK,GAAI,IAAI15K,EAAE++P,IAAI5sP,EAAElS,EAAE,GAAGD,EAAEmS,GAAGnS,EAAEA,EAAEwvB,GAAIA,EAAEouJ,GAAGohF,GAAIh/P,GAAG,KAAKC,EAAEA,EAAEuvB,EAAErd,EAAES,GAAGk1M,GAAGt4L,GAAGvvB,EAAEA,EAAEuvB,EAAEA,EAAE5c,GAAGk1M,GAAGt4L,EAAG,CAqenJy+U,CAAIhuW,EAAEkS,GAAG3M,EAAE,IAAI+sK,GAAQt0K,EAAE8gQ,IAAI5sP,EAAEA,EAAE,GAAGlU,EAAEkU,GAAGlU,EAAE+B,EAAEwvB,IAAoBA,EAAEwsT,IAAI/7U,EAApB29K,GAAGohF,GAAI/gQ,GAAG,IAAc,SAAY6xQ,GAAItgP,EAAErd,GAAG3M,EAAEgqB,EAAEhqB,EAAEgqB,EAAErxB,QAAQqxB,GAAqB,GAAlBvvB,EAAEA,EAAE,KAAKA,EAAEkS,EAAE,KAAQ3M,EAAEgqB,EAAErxB,OAAO,EAAG,IAAI6B,EAAE,IAAI4lK,GAAIpgK,GAAGxF,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAA8B,IAAJ48B,EAAE,EAAMr3B,EAAEq7P,KAA3BvvO,EAAEouJ,GAAGC,GAAI79K,GAAG,MAAqBmS,EAAE,GAAGzO,EAAEyO,GAAGzO,EAAE1D,EAAEwvB,GAAMouJ,GAAGohF,GAAIt7P,GAAG,IAAMkP,EAAEmoB,IAAM,OAAOv1B,CAAC,CAAC,OAAOorQ,GAAGpyF,GAAGC,GAAGyvL,IAAG,GAAGpgB,IAAI,IAAI,EAAE,CAAC37U,IAAI,CAC5Y,SAAS01V,IAAI5nW,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEwD,EAAE4Q,EAAIH,EAAIwU,EAAIzoB,EA77E5D,SAAaI,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAoC,OAAlCA,EAAE83M,IAAItoL,GAAG4zO,IAAGnjQ,EAAED,EAAEA,EAAEmS,GAAGykL,GAAI32L,EAAEuF,EAAE2M,EAAEqd,GAAUrd,CAAC,CA67ENg8V,CAAIluW,EAAEmzS,GAAIjhS,GAAG3M,GAAGi8R,GAAI5hS,EAAEogQ,GAAIz6P,EAAEmiO,MAAQ,KAAS1zN,EAAE+rP,GAAN38P,EAAEmC,EAAUsiO,KA7tBnH,SAAa7nO,EAAEkS,GAAG,IAAQ3M,EAAEu1B,EAAE,IAAG5oB,EAAoG,MAAMghK,GAAI,IAAIyP,GAAI,0CAAnHp9K,EAAE+9O,GAAIpxO,EAAE,KAAkBqwM,GAAX,IAAIvzC,GAAIhvK,GAASA,GAAG6gK,GAAIt7J,GAAGA,IAAIu1B,EAAEwoN,GAAIpxO,EAAE,KAAkBswM,GAAX,IAAIvzC,GAAIjvK,GAASA,GAAG6gK,GAAI/lI,GAAGA,GAAqE,CA6tB5DqzU,CAAX,IAAIr/L,GAAIlvK,GAASI,EAAEgU,GAAGH,EAAEksP,GAAI38P,EAAE,YA9tBxJ,SAAapD,EAAEkS,GAAG,IAAQ3M,EAAEu1B,EAAE,IAAG5oB,EAAoG,MAAMghK,GAAI,IAAIyP,GAAI,yCAAnHp9K,EAAE+9O,GAAIpxO,EAAE,KAAkBmwM,GAAX,IAAIlzC,GAAInvK,GAASA,GAAG6gK,GAAIt7J,GAAGA,IAAIu1B,EAAEwoN,GAAIpxO,EAAE,KAAkBowM,GAAX,IAAIlzC,GAAIpvK,GAASA,GAAG6gK,GAAI/lI,GAAGA,GAAoE,CA8tBfszU,CAAX,IAAIl/L,GAAItvK,GAASI,EAAE6T,GAAGwU,EAAEw3O,GAAIz8P,EAAEirL,KA32BpM,SAAaruL,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAM9B,EAAE,GAAGyO,EAA6B,IAAIzO,IAAjB8rB,EAAE,IAAIw/M,GAAjB78N,EAAElS,EAAE9B,SAA6BgU,EAAEqd,EAAEvvB,GAAGuvB,EAAEA,EAAE,GAAGk9K,KAAMC,KAAK,IAAI+f,GAAIl9L,GAAG9rB,EAAE83M,MAAuBh2M,EAAEu6P,GAAI5tP,EAApByrK,GAAGl6K,EAAEg4M,KAAK,IAAcz7M,GAAgBujP,GAAX,IAAIj0E,GAAItvK,GAASA,EAAEuF,EAAI,CA22BwC8oW,CAAX,IAAIh/L,GAAIzvK,GAASI,EAAEqoB,GAAGvU,EAAEksP,GAAIz6P,EAAEgpL,KA1+GzO,SAAavuL,EAAEkS,EAAEqd,GAAM,MAAHA,GAASgxQ,GAAIruR,EAAEquT,IAAIvgU,EAAEuvB,GAAG,CA0+GiN++U,EAAfxzU,EAAE,IAAIg8K,GAAI92M,EAAEJ,IAASI,EAAE86B,EAAE5oB,EAAE4B,GAAGd,EAAEgtP,GAAIz6P,EAAE+oL,KAz+GpR,SAAatuL,EAAEkS,EAAEqd,GAAM,MAAHA,GAASixQ,GAAItuR,EAAEquT,IAAIvgU,EAAEuvB,GAAG,CAy+G4Pg/U,EAAf57V,EAAE,IAAIokM,GAAI/2M,EAAEJ,IAASI,EAAE2S,EAAET,EAAEc,GAAGZ,EAAEytP,GAAIt6P,EAAEkpL,KAjgC/T,SAAazuL,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAM4S,EAAE,GAAG4c,EAA6B,IAAI5c,IAAjB5S,EAAE,IAAIgvO,GAAjBx/M,EAAEvvB,EAAE9B,SAA6BgU,EAAEnS,EAAEC,GAAGD,EAAEwvB,EAAE,GAAGk9K,KAAMC,KAAK,IAAI+f,GAAI1sN,GAAG4S,EAAE4oM,MAAuBq5E,IAAG50R,EAAEkS,EAAEw+S,IAAI/6E,GAAGpmN,EAA5BouJ,GAAGhrK,EAAE8oM,KAAK,IAAsBz7M,IAAM,CAigCqLwuW,EAAf/qW,EAAE,IAAIuzM,GAAIznL,EAAE3vB,IAASsS,EAAEzO,EAAEzD,EAAEoS,GAAG/Q,EAAEw+P,GAAIt6P,EAAEipL,KAhgC1W,SAAaxuL,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAM4S,EAAE,GAAG4c,EAA6B,IAAI5c,IAAjB5S,EAAE,IAAIgvO,GAAjBx/M,EAAEvvB,EAAE9B,SAA6BgU,EAAEnS,EAAEC,GAAGD,EAAEwvB,EAAE,GAAGk9K,KAAMC,KAAK,IAAI+f,GAAI1sN,GAAG4S,EAAE4oM,MAAuBq5E,IAAG50R,EAAEkS,EAAEw+S,IAAI/6E,GAAGpmN,EAA5BouJ,GAAGhrK,EAAE8oM,KAAK,IAAsBz7M,IAAM,CAggCgOyuW,EAAfzwW,EAAE,IAAIi5M,GAAIl3M,EAAEH,IAASsS,EAAElU,EAAEgC,EAAEqB,EAAE,CAC5Y,SAASqtW,IAAI1uW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAS,OAAPA,EAAE,KAAYyO,EAAES,GAAG,KAAK,EAAE,IAAIpN,EAAE,IAAIogK,GAAI3lK,EAAEoS,GAAG7M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAyB,GAAG+jL,GAAIk6B,GAAG5T,IAA1BxoM,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAqByiM,MAAM2mK,QAAS,OAAO5uW,EAAagoM,GAAVtkM,EAAE,IAAIs1U,KAAW/wI,MAAM2mK,MAAMjhJ,MAAM,IAAO,MAAM,KAAK,EAAE,IAAI/6M,EAAE,IAAIgzJ,GAAI3lK,EAAEoS,GAAGO,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAyB,GAAG+jL,GAAIk6B,GAAG5T,IAA1BztK,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAqBq1L,MAAM4mK,QAAS,OAAO9zU,EAAaitK,GAAVtkM,EAAE,IAAIs1U,KAAW/wI,MAAM4mK,MAAMlhJ,MAAM,IAA+C,OAApCjqN,IAAG8uP,GAAI9uP,EAAEzD,GAAG2+P,IAAIl7P,EAAE8rB,GAloCnX,SAAavvB,EAAEkS,EAAEqd,GAAG,OAAOA,EAAE5c,GAAG,KAAK,EAAE3S,EAAEA,EAAEkS,EAAElS,EAAE,EAAEA,EAAEkS,EAAE,EAAE,MAAM,KAAK,EAAElS,EAAEA,EAAEkS,EAAElS,EAAEA,EAAEkS,EAAEA,EAAEA,EAAE,EAAE,MAAM,KAAK,EAAElS,EAAEA,EAAEkS,EAAElS,EAAE,EAAEA,EAAEkS,EAAEA,EAAEA,EAAE,MAAM,KAAK,EAAElS,EAAEA,EAAE,EAAEA,EAAEkS,EAAEA,EAAEA,EAAE,EAAG,CAkoCmO28V,CAAIprW,EAAE7D,EAAEI,EAAEE,EAAEqvB,IAAU9rB,CAAC,CAC7Y,SAAS2lV,IAAIppV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAiB,IAAfA,GAAG,EAAEkP,EAAE,IAAI8mK,GAAQ15K,EAAE,IAAIyxQ,GAAIxxQ,EAAEkS,GAAG8yM,GAAIjlN,EAAEC,IAAIglN,GAAIjlN,EAAEmS,IAAI,CAAiN,IAAhNqd,EAAEouJ,GAAGqnC,GAAIjlN,EAAEC,GAAG49K,GAAI79K,EAAEC,GAAG49K,GAAI79K,EAAEmS,GAAG,IAAIzO,EAAEwvI,EAAK3/H,KAAKugB,IAAIpwB,EAAE68K,GAAIC,GAAGgoB,IAAIh5K,GAAG8tI,MAAMq3H,SAASnlQ,EAAEA,GAAGvvB,EAAE0hM,GAAIyoB,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAIh+K,EAAErd,EAAE,KAAK,IAAIsrI,IAAK,IAAI+rB,GAAI52J,IAAI+uL,GAAIyoB,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAIh+K,EAAErd,EAAE,KAAK,IAAIurI,IAAK,IAAI+rB,GAAI72J,IAAQmoB,EAAEgkO,IAAInsP,EAAE,GAAGmoB,EAAE5oB,GAAG4oB,EAAE/6B,EAAEwvB,GAAoBijM,GAAhBjtN,EAAEo4K,GAAGohF,GAAIjkO,GAAG,KAAWktK,MAAMuuH,OAAOxuH,GAAIxiM,EAAEgxT,IAAIhnS,GAAGq5N,GAAI12O,EAAES,GAAG8uL,GAAI9uL,EAAE,CAAC,OAAOlP,CAAC,CAC9Y,SAASqrW,IAAI9uW,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAemlK,GAAbroI,EAAE,IAAIihS,IAAI/7T,IAAUi/P,MAAMi4B,MAAMnvF,GAAIjtK,GAAGuiI,MAAMykI,MAAMxM,MAAMt4D,MAAMj1B,GAAIjtK,GAAGktK,MAAM0/C,KAAKx1O,EAAEqd,EAAEvxB,GAAa+pM,GAAVp1L,EAAE,IAAIomU,IAAUrxF,IAAIx1O,EAAEqd,GAAGovO,IAAIhsP,EAAEpN,GAAGgtP,GAAI5/O,EAAEmoB,GAAGitK,GAAI71L,EAAEqd,EAAEojP,IAAI73O,GAAgBqoI,GAAb1/J,EAAE,IAAIs4T,IAAI/7T,GAASk3R,KAAKnvF,GAAItkM,EAAEq+R,IAAI9kE,KAAKj1B,GAAItkM,EAAEikP,IAAIx1O,EAAEnS,EAAE/B,GAAa+pM,GAAV/pM,EAAE,IAAI+6U,IAAUrxF,IAAIx1O,EAAEnS,GAAG4+P,IAAI3gQ,EAAEuH,GAAGgtP,GAAIv0P,EAAEyF,GAAGskM,GAAI71L,EAAEnS,EAAE4yQ,IAAIlvQ,GAAG4uP,GAAIngP,EAAES,GAAGy/O,GAAIlgP,EAAElU,GAAG0tO,GAAI,EAAEn8M,EAAEA,EAAErxB,QAAQgwM,GAAI3+K,EAAEA,EAAE,EAAEuL,GAAG/6B,EAAEwvB,EAAExvB,EAAEwvB,EAAErxB,QAAQuF,EAAEskM,GAAIjtK,EAAEi0U,IAAI/2J,GAAI,IAAIjQ,GAAItkM,EAAEsrW,IAAI/2J,GAAI,GAAG,CAC9Y,SAASg3J,IAAIhvW,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE3O,EAAE8B,EAAExF,EAAEmS,EAAEnS,EAAEC,EAAKygM,GAAIzgM,EAAEA,EAAED,KAAWqS,EAAE3O,EAAE8rB,EAAE1b,GAAGpQ,EAAE8rB,EAAEA,EAAEvxB,GAAE,EAAgB,GAAPuxB,EAAEhqB,EAAE2M,GAAa,GAAPqd,EAAEnd,EAAEF,IAAMlU,GAAKi1I,EAAK3/H,KAAKskB,IAAIn0B,EAAE68K,GAAIC,GAAGixC,GAAIjiM,EAAEhqB,MAAM6jT,KAAKn2K,EAAK3/H,KAAKskB,IAAIn0B,EAAE68K,GAAIC,GAAGixC,GAAIjiM,EAAEnd,MAAMg3S,IAAKprT,GAAKi1I,EAAK3/H,KAAKskB,IAAIn0B,EAAE68K,GAAIC,GAAGkxC,GAAIliM,EAAEhqB,MAAM6jT,KAAKn2K,EAAK3/H,KAAKskB,IAAIn0B,EAAE68K,GAAIC,GAAGkxC,GAAIliM,EAAEnd,MAAMg3S,MAAQh3S,GAAGpU,MAAG2U,EAAEgrK,GAAG4qB,IAAIr2L,GAAGmrJ,MAAM2hG,MAAM,OAAWrsP,EAAE,IAAI6mK,GAAIuuB,GAAI71L,EAAE8sP,IAAIrsP,IAAgBoqM,GAAIpqM,EAAjBmoB,EAAE,IAAI6lL,GAAI5gN,GAAW4S,EAAE4c,EAAErd,EAAES,EAAE4c,GAAGo4J,GAAI3nL,EAAEA,EAAE86B,IAAG,CAC9Y,SAASm3R,IAAIjyT,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAE,GArhBxC,SAAarB,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE,IAAI7M,EAAE,EAAEA,EAAE2M,EAAEhS,EAAEqF,IAAe,IAAVu1B,EAAEv1B,EAAE2M,EAAEE,EAAEmd,EAAM5c,EAAE,EAAEA,EAAET,EAAE9O,EAAEuP,IAAe,GAAI3U,EAAE88B,EAAE1oB,EAAlB3O,EAAEkP,EAAET,EAAE7Q,EAAEtB,EAAc/B,GAAGgC,EAAEoS,EAAEA,GAAGpS,EAAEqB,EAAErD,GAAG,GAAGoU,GAAG,GAAGpU,EAAEgC,EAAEE,GAAGkS,EAAEpS,EAAEoD,KAAMi7T,IAAInsT,EAAE3M,EAAEoN,IAAIurT,IAAIl+T,EAAE86B,EAAEr3B,IAAI8yS,IAAIrkS,EAAE3M,EAAEoN,KAAKyrT,IAAIp+T,EAAE86B,EAAEr3B,IAAK,OAAO,EAAO,OAAO,CAAK,CAqhBxLwrW,CAAIjvW,EAAEkS,EAAEqd,EAAExvB,GAAI,OAAO,EAAU,IAAI4S,EAAE,IAAIgzJ,GAAIzzJ,EAAE4oB,GAAGnoB,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAQ,CAAkE,OAAjE48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAKlP,GAAE,EAAkB2O,GAAZpU,EAAEgC,EAAEoS,EAAEF,EAAEE,EAAEmd,GAAMrd,EAAEhS,EAAcqF,GAAZlE,EAAErB,EAAEqB,EAAE6Q,EAAE7Q,EAAEtB,GAAMmS,EAAE9O,EAAS03B,EAAE96B,EAAE2S,GAAG,KAAK,EAAElP,EAAE82S,GAAIv6S,EAAEhC,EAAE88B,EAAE5oB,EAAElS,EAAE,EAAEhC,EAAE88B,EAAEvL,EAAEvvB,EAAEqB,EAAE,GAAG,MAAM,KAAK,EAAEoC,EAAE82S,GAAIv6S,EAAEoS,EAAE/Q,EAAEy5B,EAAE5oB,EAAElS,EAAEA,EAAEE,EAAE,EAAEmB,EAAEy5B,EAAEvL,EAAEvvB,GAAG,MAAM,KAAK,EAAEyD,EAAE82S,GAAIv6S,EAAEhC,EAAE88B,EAAE5oB,EAAElS,EAAEuF,EAAEvH,EAAE88B,EAAEvL,EAAEvvB,EAAEA,EAAEoD,EAAE,GAAG,MAAM,QAAQK,EAAE82S,GAAIv6S,EAAE,EAAEqB,EAAEy5B,EAAE5oB,EAAElS,EAAEhC,EAAE,EAAEqD,EAAEy5B,EAAEvL,EAAEvvB,GAAI,GAAGyD,EAAG,OAAO,CAAK,CAAE,OAAO,CAAK,CAG/Y,SAASyrW,IAAIlvW,GAAGylM,GAAIzlM,EAAE,IAAI6wU,IAAIjqJ,GAAIJ,GAAIG,GAAID,GAAI,IAAIh4B,GAAIygN,KAAK,WAAW,0EAA0E,IAAIr/M,MAAOyrG,GAAIv7P,EAAEmvW,IAAI3O,IAAI3sB,KAAKt4E,GAAIv7P,EAAEmvW,IAAI1O,IAAI,IAAIllG,GAAIv7P,EAAEmvW,IAAIC,IAAIp3J,GAAI,IAAIujD,GAAIv7P,EAAEmvW,IAAIE,IAAI7uL,IAAI0zJ,MAAM34E,GAAIv7P,EAAEmvW,IAAI7G,IAAI9nL,IAAI4zJ,MAAM74E,GAAIv7P,EAAEmvW,IAAIG,IAAI9uL,IAAI6zJ,MAAM94E,GAAIv7P,EAAEmvW,IAAIxO,IAAIpsB,KAAKh5E,GAAIv7P,EAAEmvW,IAAII,IAAI/uL,IAAIg0J,MAAMj5E,GAAIv7P,EAAEmvW,IAAI5G,IAAI/nL,IAAIi0J,MAAMl5E,GAAIv7P,EAAEmvW,IAAIK,IAAIhvL,IAAIk0J,MAAMn5E,GAAIv7P,EAAEmvW,IAAIM,IAAIjvL,IAAIo0J,KAAK,CAChZ,SAAS86B,IAAI1vW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAwB,GAAhBsR,GAANpN,EAAEvF,EAAEhC,GAAMkC,EAAEF,EAAE86B,EAAEv1B,EAAErF,EAAEgS,EAAKS,GAAG,GAAGmoB,GAAG,EAAG,OAAO2kJ,MAAMqnB,IAAoC,OAAhC10L,EAAEpS,EAAEJ,EAAEI,EAAEqB,EAAErB,EAAEJ,EAAEsS,EAAEzO,EAAEzD,EAAEE,EAAEF,EAAEuvB,EAAEvvB,EAAEE,EAAEgS,EAASA,EAAES,GAAG,KAAK,EAAE,KAAK,EAAE,GAAGP,EAAE,EAAG,OAAOqtK,MAAMG,IAAS,GAAGxtK,EAAE3O,EAAEkP,EAAG,OAAO8sK,MAAMC,IAAI,MAAM,KAAK,EAAE,KAAK,EAAE,GAAGr+K,EAAE,EAAG,OAAOo+K,MAAMM,IAAS,GAAG1+K,EAAEkuB,EAAEuL,EAAG,OAAO2kJ,MAAMonB,IAA6B,OAAxB7oM,GAAGoU,EAAE3O,EAAE,GAAGkP,IAAE5S,GAAGsB,EAAEkuB,EAAE,GAAGuL,IAAc,GAAG98B,EAAE+B,GAAG,GAAG0/K,MAAMG,KAAK5hL,EAAE+B,GAAG,GAAG/B,EAAE+B,GAAG,GAAG0/K,MAAMC,KAAK3/K,EAAE,IAAK0/K,MAAMM,MAAMN,MAAMonB,IAAI,CACjZ,SAASo5H,IAAIjgU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAIr3B,EAAI2O,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAgD,IAA9CmsB,GAAE,EAAMluB,EAAEi/K,GAAIC,GAAGgoB,IAAIr2L,GAAGmrJ,MAAM6tJ,QAAQhrT,EAAEy2R,IAAIt1R,EAAMkE,EAAE,IAAIogK,GAAIzzJ,EAAEA,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAwE,IAA/D6B,EAAE49K,GAAGC,GAAIr4K,GAAG,IAAmBu1B,EAAE6iJ,GAAGC,GAApBxrK,EAAE,IAAIuzJ,GAAI5lK,EAAEC,IAAe,IAAI8T,EAAEw/N,GAAItzO,EAAEA,EAAE86B,EAAE13B,IAAUgP,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAQuF,EAAEk6K,GAAGC,GAAIxrK,GAAG,IAAuB0B,IAAnBd,EAAEsgO,GAAItzO,EAAEA,EAAEyD,EAAEL,OAAaxD,EAAEimN,GAAI7lN,EAAEkS,EAAE4oB,EAAEr3B,GAAKq3B,EAAEl7B,EAAEsS,EAAE4oB,EAAE56B,EAAEgS,EAAE4oB,EAAE/6B,EAAEC,EAAE8T,EAAE9T,EAAEJ,EAAI6D,EAAE7D,EAAEsS,EAAEzO,EAAE1D,EAAEA,EAAEiT,EAAEhT,EAASE,IAAGkD,EAAE0Q,EAAEnB,EAAEK,EAAEL,EAAEK,EAAEhT,GAAGgT,EAAEL,EAAEK,EAAEhT,EAAE8T,EAAEnB,EAAEmB,EAAE9T,GAAGoD,EAAE4P,EAAEL,EAAEvP,EAAE0Q,EAAEgnB,EAAE9nB,EAAEuc,GAAE,IAAMuL,EAAEr3B,EAAEqQ,EAAEd,EAAG,OAAOuc,CAAC,CAClZ,SAASogV,IAAI3vW,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,GAAG,IAAM3U,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAY,IAAVA,EAAE,IAAI21L,GAAQv2L,EAAEF,EAAEypM,KAAKvpM,EAAEmpM,MAAwB,IAAIznM,EAAE,IAAI6xJ,GAAzBgY,GAAGvrK,EAAEqpM,KAAK,KAAqB2kG,MAAMtsS,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAA6B68M,IAApB15M,EAAEs8K,GAAGC,GAAI9pK,GAAG,MAAakyL,IAAIjmC,MAAM6vM,SAAS70J,IAAI4jE,KAAMzkP,QAAOssU,IAAIxzV,EAAE3R,GAAE,EAAMtB,EAAEwF,EAAEu1B,EAAEnoB,GAAGw1L,IAAInoM,EAAEgT,IAAK,IAAIhV,EAAEuxB,EAAEosL,KAAK39M,EAAEu9M,MAAwB,IAAIznM,EAAE,IAAI6xJ,GAAzBgY,GAAG3/K,EAAEy9M,KAAK,KAAqB2kG,MAAMtsS,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAA6B68M,IAApB15M,EAAEs8K,GAAGC,GAAI9pK,GAAG,MAAakyL,IAAIjmC,MAAM6vM,SAAS70J,IAAI4jE,KAAMG,QAAO0nF,IAAIxzV,EAAE3R,GAAE,EAAKtB,EAAEwF,EAAEu1B,EAAEnoB,GAAGw1L,IAAInoM,EAAEgT,GAAK,CAInZ,SAAS4wU,IAAI5jV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAA2L,OAAzL/6B,EAAEkzI,EAAK3/H,KAAKsgB,IAAIq/G,EAAK3/H,KAAKskB,IAAI53B,EAAEuvB,GAAGrd,EAAEqd,EAAErd,EAAEA,IAAI+gI,EAAK3/H,KAAKskB,IAAI53B,EAAEuvB,EAAEvvB,EAAEkS,EAAEA,EAAEqd,IAAIuL,EAAEm4G,EAAK3/H,KAAKsgB,IAAIq/G,EAAK3/H,KAAKskB,IAAI53B,EAAED,GAAGmS,EAAEnS,EAAEmS,EAAElS,IAAIizI,EAAK3/H,KAAKskB,IAAI53B,EAAED,EAAEC,EAAEA,EAAEkS,EAAEnS,KAAIwvB,EAAE0jH,EAAK3/H,KAAKskB,IAAI53B,EAAEuvB,EAAEvvB,EAAEkS,EAAE,GAAGA,EAAEqd,EAAErd,EAAEA,EAAE,KAASlS,EAAEkS,EAAE,EAAEA,EAAEA,EAAE,IAAY3M,EAAE0tI,EAAK3/H,KAAKskB,IAAI53B,EAAED,EAAEC,EAAEA,EAAE,GAAGkS,EAAEnS,EAAEmS,EAAElS,EAAE,KAASA,EAAEA,EAAE,EAAEkS,EAAElS,EAAE,EAAxD,EAA0E,GAAHuvB,GAAS,GAAHhqB,EAAa,EAAQ,GAAHgqB,EAAauL,EAAEv1B,EAAE,EAAQ,GAAHA,EAAaxF,EAAEwvB,EAAE,EAAS0jH,EAAK3/H,KAAKsgB,IAAI7zB,EAAEwvB,EAAEuL,EAAEv1B,GAAG,CAAC,CACvZ,SAASsqW,IAAI7vW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAoB,OAAlB8B,EAAE24R,GAAIl+R,MAAGyD,EAAEy6R,GAAIhsR,IAAelS,EAAEuF,GAAG2M,EAAE3M,GAAGvF,EAAEA,EAAE,IAAIkS,EAAElS,EAAE,GAAWA,EAAE86B,EAAE5oB,EAAE4oB,GAAG,EAAE96B,EAAE86B,EAAE5oB,EAAE4oB,EAAE,EAAE,GAAE/6B,EAAEC,EAAEuF,EAAE2M,EAAE3M,GAAEgqB,GAAGvvB,EAAED,EAAE,EAAEC,EAAED,EAAEkzI,EAAK3/H,KAAKC,OAAOvT,EAAEA,EAAE,GAAG8vW,KAAK,IAAI59V,EAAEnS,EAAE,EAAEmS,EAAEnS,EAAEkzI,EAAK3/H,KAAKC,OAAOrB,EAAElS,EAAE,GAAG8vW,KAAK,IAAQ/vW,EAAE,EAAUwF,EAAUgqB,EAAExvB,EAAE,GAAWwF,IAAWvF,EAAEuvB,IAAIvvB,EAAEuvB,EAAE4uQ,GAAIn+R,EAAE86B,IAApBA,EAAwB96B,EAAEuvB,GAAOrd,EAAEqd,IAAIrd,EAAEqd,EAAE4uQ,GAAIjsR,EAAE4oB,IAApBnoB,EAAwBT,EAAEqd,EAAGxvB,EAAE,EAAG+6B,EAAEmzP,GAAInzP,EAAEi1U,KAAKhwW,IAAKA,EAAE,IAAI4S,EAAEs7Q,GAAIt7Q,EAAEo9V,IAAIhwW,KAAYkxT,IAAIn2R,EAAEnoB,KAAgBpN,EAAE9B,GAAG,EAAE,CAAC,CACxZ,SAAS+pV,IAAIxtV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAc,IAAZ88B,EAAE,EAAEr3B,EAAE,EAAEzF,EAAE,EAAMuH,EAAE,IAAIogK,GAAI3lK,EAAE86B,EAAEv1B,GAAGA,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA6BgU,IAApBnS,EAAE49K,GAAGC,GAAIr4K,GAAG,QAAuCu1B,GAAhBnoB,EAAE3S,EAAEhC,EAAEkU,EAAEA,GAAGnS,EAAEmS,IAAQqd,EAAE0wP,GAAI/tQ,EAAEnS,EAAEA,EAAEA,IAAK,GAAGC,EAAED,IAAIo1Q,KAAMI,OAAO9xQ,GAAGkP,GAAG5S,EAAEA,EAAEC,EAAEA,EAAEA,EAAEkS,EAAEA,GAAGnS,EAAEmS,IAAIA,EAAEnS,EAAEC,EAAED,EAAEA,EAAEC,GAAGuvB,IAAIA,EAAE,GAAGvvB,EAAED,IAAIo1Q,KAAMG,OAAOt3Q,GAAG2U,GAAG5S,EAAEA,EAAEmS,EAAElS,EAAEA,EAAEkS,EAAEA,GAAGnS,EAAEmS,IAAIA,EAAEnS,EAAEmS,EAAEnS,EAAEA,EAAEmS,GAAGqd,KAAI,OAAOvvB,EAAED,EAAE4S,GAAG,KAAK,EAAE,OAAO,IAAIsiM,GAAIxxM,EAAEq3B,EAAE5oB,EAAEnS,EAAEmS,GAAG,KAAK,EAAE,OAAO,IAAI+iM,GAAI/iM,EAAEnS,EAAEC,EAAEhC,EAAE88B,GAAG,QAAQ,OAAO,IAAIm6K,GAAIxxM,EAAEq3B,EAAE98B,EAAE88B,GAAI,CACxZ,SAASk1U,IAAIhwW,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAEwF,EAAIoN,EAA8C,GAAhE4pJ,KAAoB5pJ,EAAEgrK,GAAG4qB,IAAIvoM,EAAEhC,GAAGq/J,MAAMykI,MAAM,IAAwB,GAAlB9hS,EAAEoS,EAAEO,EAAET,EAAEE,EAAEO,GAAaA,IAAI2iR,MAAMx4D,MAAMnqN,GAAGoqN,KAAKpqN,GAAGqqN,IAAM,OAAO,EAAE,GAAGrqN,IAAI2iR,MAAMx4D,OAAMvtM,EAAEouJ,GAAG4qB,IAAIvoM,EAAE6+P,KAAK,IAAI9+P,EAAE49K,GAAG4qB,IAAIr2L,EAAE2sP,KAAK,IAAStvO,GAAKxvB,GAAmB,IAAhBwF,EAAEgqB,EAAEvvB,EAAED,EAAEC,IAAW,OAAOuF,EAAI,OAAOvF,EAAEoS,EAAEO,GAAG,KAAK,EAAE,OAAOy9N,GAAIpwO,EAAEJ,EAAEI,EAAEkS,EAAEtS,EAAEI,GAAG,KAAK,EAAE,OAAOowO,GAAIpwO,EAAEJ,EAAEsS,EAAEA,EAAEtS,EAAEsS,GAAG,KAAK,EAAE,OAAOk+N,GAAIl+N,EAAEtS,EAAEI,EAAEA,EAAEJ,EAAEI,GAAG,KAAK,EAAE,OAAOowO,GAAIl+N,EAAEtS,EAAEsS,EAAElS,EAAEJ,EAAEsS,GAAG,QAAQ,MAAMghK,GAAI,IAAI4O,GAAImuL,MAAO,CACxZ,SAASC,IAAIlwW,GAAG,IAAIkS,EAAInS,EAAEwF,EAAEu1B,EAAEnoB,EAAuL,IAAhIojK,GAAbpjK,EAAE,IAAIs+M,KAA1CjxN,EAAEA,IAAIA,EAAEA,EAAE,IAAIg/K,GAAI7qJ,IAAGn0B,EAAE,IAAIA,EAAEA,GAAGhC,EAAE,GAAqB,IAAIi3M,GAAIj1M,EAAEoS,EAAEpS,EAAEqB,IAAIqgM,GAAI,IAAI0oB,GAAI,OAAOpqN,EAAEA,IAAIA,EAAEA,EAAE,IAAIg/K,GAAI7qJ,IAAGn0B,EAAE,IAAI,IAAIutM,GAAIvtM,EAAEA,EAAE,MAAM,IAAI0uK,GAAI/7J,IAAIojK,GAAIpjK,EAAE,IAAIsiM,GAAIj1M,EAAEkS,EAAElS,EAAEuvB,IAAIrd,EAAE,EAAQA,EAAES,EAAE4c,EAAErxB,OAAO,GAAMu/M,GAAIvrM,EAAE,EAAES,EAAE4c,EAAErxB,QAAf6B,EAAuB49K,GAAGhrK,EAAE4c,EAAErd,EAAE,GAAG,GAAOurM,GAAIvrM,EAAES,EAAE4c,EAAErxB,QAAbqH,EAAqBo4K,GAAGhrK,EAAE4c,EAAErd,GAAG,GAAOurM,GAAIvrM,EAAE,EAAES,EAAE4c,EAAErxB,QAAf48B,EAAuB6iJ,GAAGhrK,EAAE4c,EAAErd,EAAE,GAAG,GAAInS,EAAEC,GAAGuF,EAAEvF,GAAGuF,EAAEvF,GAAG86B,EAAE96B,GAAGD,EAAEmS,GAAG3M,EAAE2M,GAAG3M,EAAE2M,GAAG4oB,EAAE5oB,EAAE2iO,GAAIliO,EAAET,KAAKA,EAAE,OAAOS,CAAC,CACxZ,SAAS8vV,IAAIziW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAA8I,IAA5IuxB,EAAE0/L,GAAIhtB,GAAIF,GAAIC,GAAI,IAAIxqB,GAAItlK,GAAG,IAAI44O,GAAI54O,EAAE3M,IAAI27N,KAAKlhO,EAAEA,GAAiB,GAAdkS,EAAEE,EAAEmd,EAAErxB,QAAWglR,GAAIvlG,GAAG0pB,GAAIn1L,EAAEE,EAAE,GAAG,IAAIpS,EAAEuvB,GAAGvxB,EAAE,IAAI00K,GAAIikB,GAAI32L,EAAEuF,EAAEgqB,EAAEvxB,GAAG2U,EAAE,IAAI8jK,GAAIhzK,EAAE,IAAIgzK,GAAQ37I,EAAE,IAAI6qI,GAAIzzJ,EAAE7Q,GAAGy5B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAyBypL,GAAIh1K,GAApBpN,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAYvL,GAAGo4J,GAAIlkL,EAAE8B,EAAExF,IAAGA,EAAE4S,EAAE3S,EAAEi/K,KAAKx7K,EAAEzD,EAAEi/K,MAAU,GAAGq0H,GAAIt1S,GAAE,GAAM20R,KAAM/xE,MAAM0yF,GAAIt1S,GAAE,EAAM6iN,MAAa9gN,EAAE,IAAGuzS,GAAIt1S,GAAE,GAAO20R,KAAM/xE,MAAM0yF,GAAIt1S,GAAE,EAAK6iN,MAAKuC,GAAIlxM,EAAES,EAAE,IAAI29L,GAAItwM,EAAEuvB,IAAIonK,GAAI32L,EAAE2S,EAAET,EAAEqd,EAAE,CACzZ,SAAS4gV,MAAc,IAAInwW,EAAkT,IAA9TmwW,IAAIz7N,EAAU07N,IAAI7xL,GAAGC,GAAG4U,IAAG,GAAGsW,IAAI,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI2mK,IAAIpyL,GAAGmV,IAAGsW,IAAI,GAAG,GAAG,GAAG,GAAG4mK,IAAI/xL,GAAGC,GAAG4U,IAAG,GAAGsW,IAAI,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,KAAK6mK,IAAItyL,GAAGqV,IAAG+4H,IAAI,GAAG,GAAG,GAAG,GAAOrsT,EAAE,EAAEA,GAAG,GAAGA,IAAKqwW,IAAIrwW,GAAGm4L,GAAGllD,EAAK3/H,KAAKyd,IAAI/wB,EAAEowW,IAAIpwW,KAAKuwW,IAAIvwW,GAAG2qM,IAAI6yB,IAAI6yI,IAAIrwW,GAAI,CAC1Z,SAASuxG,IAAIvxG,GAAG,IAAIkS,EAAE,GAA0C,KAArClS,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,GAAGhC,EAAM,MAAMk1K,GAAI,IAAI2O,GAAI2uL,MAAMxwW,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,GAAGhC,IAAqR,OAAjRkU,EAAE,IAAIsnK,GAAMk4H,GAAI/zH,GAAG0O,KAAMrsL,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,GAAG,GAAG,MAAMqnL,GAAGrnL,EAAEu+V,IAAIzwW,EAAE0xS,GAAI/zH,GAAG0O,KAAMrsL,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,GAAG,GAAG,MAAK,IAAUw/R,GAAI/zH,GAAG0O,KAAMrsL,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,GAAG,GAAG,MAAMgqK,GAAGrnL,EAAEu+V,IAAIzwW,EAAE0xS,GAAI/zH,GAAG0O,KAAMrsL,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,GAAG,GAAG,MAAK,IAAcrd,CAAC,CAC1Z,SAASw+V,IAAI1wW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAI+6B,EAAkG,IAARA,GAAE,EAAU/6B,EAAE,IAAI+uO,GAAG7hB,IAA3G/6M,EAAEnS,EAAKC,EAAEA,EAAEuvB,IAAIw+N,KAAMC,KAAKk0C,GAAIhwR,EAAEA,GAAGkwR,GAAIlwR,EAAEA,GAAOlS,EAAEA,EAAEuvB,IAAIw+N,KAAME,KAAKi0C,GAAIhwR,EAAEA,GAAGkwR,GAAIlwR,EAAEA,IAA8BlS,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAAiD,GAA5CwvB,EAAEouJ,GAAGwtC,GAAGprN,GAAG,KAAMkiL,GAAIjiL,EAAEA,EAAE86B,EAAE96B,EAAEA,EAAE2S,EAAET,EAAEA,EAAE9O,GAAGA,KAAYgmN,GAAI75L,IAAIA,EAAEA,EAAEvxB,EAAEuxB,GAAGA,EAAExvB,EAAE/B,EAAEuxB,KAAe0yJ,GAAIjiL,EAAEA,EAAEJ,EAAEI,EAAEA,EAAE2S,EAAET,EAAEA,EAAE9O,GAAGA,MAAK6+K,GAAIjiL,EAAEA,EAAEJ,EAAEI,EAAEA,EAAE2S,EAAET,EAAEA,EAAE9O,GAAGA,MAAc03B,GAAE,EAAQ2lK,GAAIzgM,EAAEkS,EAAElS,EAAEA,EAAE2S,EAAE8tT,IAAIlxS,EAAErd,EAAEA,GAAG9O,KAAoB,OAAf8O,EAAEqd,GAAE,EAAKrd,EAAElS,EAAEuvB,EAASrd,EAAkB,OAAfA,EAAEqd,EAAEuL,EAAE5oB,EAAElS,EAAE,KAAYkS,CAAC,CAE3Z,SAASy+V,IAAI3wW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAW,GAAM,IAAfrS,EAAEwvB,EAAE0vJ,MAAc,OAAO,EAAW,GAAGj/K,EAAEmkT,KAAiF,GAA3EnmT,EAAEgC,EAAEokT,KAAKiG,GAAIrqT,EAAEkS,EAAEqd,GAAG5c,EAAK,GAAH5S,EAAKC,EAAEskT,GAAG,EAAE,KAAK/0R,EAAEosL,KAAKF,KAAKvpM,EAAElU,GAAGgC,EAAEskT,GAAG,EAAE,KAAK/0R,EAAErd,EAAElU,GAAMgC,EAAE+mV,KAAK,CAA+B,IAA9BtjV,EAAE1D,EAAE,IAAI,KAAK,IAAIsoL,GAAItoL,GAAG+6B,EAAE5oB,EAAEnS,EAAMwF,EAAE2M,EAAE3M,EAAEu1B,IAAIv1B,EAAG6M,EAAEpS,EAAEo1U,GAAG7vU,GAAG9B,EAAEzD,EAAE+gK,GAAG3uJ,EAAE3O,GAAWA,GAAgBA,EAAE66N,GAAG3rN,GAAGlP,EAAEuoL,MAAvBhsL,EAAEu6P,GAAG5nP,EAAuB,MAAM3S,EAAEu6P,GAAG5nP,QAAoB,GAAX03S,GAAIrqT,EAAEkS,EAAEqd,GAAMvvB,EAAE+mV,KAAK,CAA+B,IAA9BtjV,EAAE1D,EAAE,IAAI,KAAK,IAAIsoL,GAAItoL,GAAG+6B,EAAE5oB,EAAEnS,EAAMwF,EAAE2M,EAAE3M,EAAEu1B,IAAIv1B,EAAG9B,EAAEzD,EAAE+gK,GAAG/gK,EAAEo1U,GAAG7vU,GAAG9B,GAAKA,GAAGA,EAAEuoL,IAAI,CAAE,OAAO,CAAK,CAC3Z,SAAS4kL,IAAI5wW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAIr3B,EAAE,OAAGzD,EAAEmkT,MAAM5+S,EAAE,KAAKu1B,EAAE96B,EAAEokT,KAAKrkT,EAAEC,EAAEskT,GAAG,EAAE7gT,EAAKzD,EAAE4sU,GAAG16T,EAAElS,EAAEs7K,GAAGppK,EAAEqd,IAAOA,EAAErd,EAAE4oB,GAAM96B,EAAE+mV,QAAQ/mV,EAAEwlU,MAAQ/hU,EAAE6uL,GAAG7uL,EAAE8rB,GAAGwrL,GAAGt3M,KAAKs3M,GAAGxrL,KAAO9rB,IAAI8B,EAAEvF,EAAEmoV,GAAG1kV,EAAE8B,KAAIA,EAAEvF,EAAE+gK,GAAGxxI,EAAEhqB,KAAuBA,EAAE+4N,GAAGv+N,GAAGwF,EAAEymL,MAAvBhsL,EAAEu6P,GAAGx6P,IAAiCwF,GAAgBA,EAAE+4N,GAAGv+N,GAAGwF,EAAEymL,MAAvBhsL,EAAEu6P,GAAGx6P,GAA+B0D,IAAOA,EAAKzD,EAAE4sU,GAAG16T,EAAElS,EAAEs7K,GAAGppK,EAAEqd,IAAUvvB,EAAE+mV,QAAQ/mV,EAAEwlU,MAAQ/hU,EAAE6uL,GAAG7uL,EAAE8rB,GAAGwrL,GAAGt3M,KAAKs3M,GAAGxrL,MAAKhqB,EAAE,KAAO9B,IAAI8B,EAAEvF,EAAEmoV,GAAG1kV,EAAE,QAAO8B,EAAEvF,EAAE+gK,GAAGxxI,EAAEhqB,KAAQA,EAAEymL,MAAYvoL,EAAE,CAC3Z,SAASotW,IAAI7wW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAI3U,EAAEoU,EAAE/Q,EAAkG,GAAhGrB,EAAEuF,EAAE2M,EAAElS,EAAE86B,EAAE6iJ,GAAG4qB,IAAIr2L,GAAGixR,KAAMG,MAAM,KA3zBxE,SAAatjS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAyD,IAAvDA,EAAEC,EAAEuF,EAAEgqB,EAAErxB,OAAO8B,EAAEA,EAAEwoO,GAAGp1C,IAAG,CAACS,IAAI6V,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC3pM,EAAEA,GAAG,GAAOwvB,EAAE,IAAIo2I,GAAI3lK,EAAEuvB,GAAGA,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAKvvB,EAAEA,EAAEkS,EAAEqd,EAAErd,GAAGA,EAAEnS,EAAEmS,IAAIyrK,GAAG4qB,IAAIr2L,GAAG2oJ,MAAM8nM,MAAM,IAAI3iW,CAAE,CA2zB1G8wW,CAAI5+V,GAAGlS,EAAED,EAAEkzI,EAAK3/H,KAAKugB,IAAiB,GAAb3hB,EAAE3M,EAAEgqB,EAAErxB,OAAUgU,EAAEqd,EAAEA,EAAErxB,OAAO,MAAS+jL,GAAIk6B,GAAG5T,IAAIr2L,GAAG2oJ,MAAMqoM,QAA0B,IAAjB7hW,EAAErB,EAAEuF,EAAEA,EAAEgqB,EAAErxB,OAAWF,EAAE,IAAI2nK,GAAIzzJ,EAAE3M,GAAGvH,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,SAA0BkU,EAAfurK,GAAGC,GAAI5/K,GAAG,KAAS+B,GAAIC,EAAEqsO,GAAIrsO,EAAE86B,GAAGz5B,EAAE+Q,EAAEF,EAAEm6N,GAAIrsO,EAAE86B,GAAGz5B,EAAS,IAANkuB,EAAErd,EAAEA,EAAM4oB,EAAE,IAAI6qI,GAAIzzJ,EAAEqd,GAAGuL,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAgD,GAAvCqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,MAAK/6B,EAAE49K,GAAG4qB,IAAIhjM,EAAEi+V,KAAK,IAAIxjW,GAAO,EAAE,CAAC,IAAI2S,EAAE,EAAEA,EAAE5S,EAAE4S,IAAKojK,GAAIxmJ,EAAE,IAAImnN,GAAInxO,IAAI87T,IAAI97T,EAAE,CAAE,CAC5Z,SAASmkV,IAAI1pV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAI+6B,EAAEnoB,EAAElP,EAAE,GAAGzD,EAAEqB,IAAI49P,MAAMk4B,OAAM5nQ,EAAEuqK,GAAIqwB,GAAIxsC,GAAG4qB,IAAIvoM,GAAGgoM,MAAM+yI,MAAM,IAAI/xJ,KAAK,IAAIziB,GAAI,IAAIhmB,MAAOk5C,IAAI2J,KAAMC,MAAMnxL,GAAG61Q,MAAMK,KAAKrgF,GAAI/nM,EAAEw0R,IAAIjlQ,GAAMA,IAAIw4P,MAAMI,MAAiL,IAA3KpoR,EAAE49K,GAAG4qB,IAAIvoM,EAAE0nP,KAAK,IAAIjkP,EAAE68K,GAAIC,GAAGgoB,IAAIxoM,GAAGs9J,MAAMq3H,QAAQ/hR,EAAE,EAAK4c,GAAG24P,IAAKv1Q,EAAE3S,EAAEE,EAAEgS,EAAE+gI,EAAK3/H,KAAKwd,KAAKrtB,EAAE,GAAW8rB,GAAG64P,MAAKpoR,EAAEE,EAAEgS,GAAGouK,GAAIC,GAAGgoB,IAAIg3C,GAAIv/O,GAAGsmP,OAAO3zO,GAAG3S,EAAEE,EAAEgS,EAAE+gI,EAAK3/H,KAAKwd,KAAKrtB,IAAI,GAAMq3B,EAAE,IAAI6qI,GAAI3lK,EAAEoS,GAAG0oB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAI9iJ,GAAG,IAAMl7B,EAAEsS,EAAES,CAAI,CAC5Z,SAASguJ,MAAMA,IAAIjsB,EAAIu3D,KAAM8kK,IAAI,IAAI/2M,GAAIukB,GAAGC,GAAGwyL,IAAG,GAAGn9K,IAAI,IAAI,EAAE,CAACtV,GAAGC,GAAGwyL,IAAG,GAAGC,IAAI,IAAI,EAAE,CAAC,IAAI30K,GAAIlH,SAAS7W,GAAGC,GAAGwyL,IAAG,GAAGn9K,IAAI,IAAI,EAAE,CAACtV,GAAGC,GAAGwyL,IAAG,GAAGC,IAAI,IAAI,EAAE,CAAC,IAAI30K,GAAIhH,SAAS/W,GAAGC,GAAGwyL,IAAG,GAAGn9K,IAAI,IAAI,EAAE,CAACtV,GAAGC,GAAGwyL,IAAG,GAAGC,IAAI,IAAI,EAAE,CAAC,IAAI30K,GAAI/G,OAAOhX,GAAGC,GAAGwyL,IAAG,GAAGC,IAAI,IAAI,EAAE,CAAC,IAAI30K,GAAIhH,SAAS,IAAI2D,GAAI,MAAM1a,GAAGC,GAAGwyL,IAAG,GAAGn9K,IAAI,IAAI,EAAE,CAACtV,GAAGC,GAAGwyL,IAAG,GAAGC,IAAI,IAAI,EAAE,CAAC,IAAI30K,GAAI,YAAY,IAAIrD,GAAI,KAAK,IAAIA,GAAI,KAAK,IAAIA,GAAI,KAAK,IAAIA,GAAI,KAAK,IAAIA,GAAI7C,IAAI,CAC5Z,SAASm9J,IAAIvzV,GAAG,IAAIkS,EAAEqd,EAA6X,OAAtXvvB,EAAEuvB,GAAGvvB,EAAEuvB,EAAEqiN,OAAMriN,EAAEouJ,GAAG39K,EAAEuvB,EAAE,IAAIvvB,EAAEuvB,EAAEouJ,GAAG82C,GAAIz0N,EAAEuvB,GAAG,KAAQvvB,EAAEuvB,GAAGA,IAAa,IAAJ,EAALvvB,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAEuvB,EAAEvvB,EAAEuvB,IAAOs6J,GAAG7pL,EAAE8sN,GAAG,KAAM9sN,EAAEgtN,IAAI,KAAK,IAAIhtN,EAAE8sN,GAAGokJ,MAAM9mF,GAAI,IAAI73C,GAAIvyO,EAAE8sN,GAAG,EAAE,GAAGv9L,EAAEvvB,EAAEuvB,EAAEwqS,IAAI/uC,GAAIrtG,GAAG39K,EAAE8sN,GAAG,KAAK9sN,KAAa6pL,GAAG7pL,EAAE8sN,GAAG,KAAQ9sN,EAAEgtN,IAAI,KAAK,IAAIhtN,EAAE8sN,GAAGokJ,OAAYrnL,GAAN33K,EAAElS,EAAEuvB,EAAO,MAASi/M,MAAHt8N,EAASshV,KAAM3pK,GAAGt6J,EAAE,MAASi/M,MAAHj/M,EAASikU,KAAMppE,GAAI,IAAI73C,GAAIvyO,EAAE8sN,GAAG,EAAE,GAAGv9L,EAAErd,EAAE6nT,IAAIh0D,GAAIpoF,GAAG39K,EAAE8sN,GAAG,KAAK9sN,QAAeA,EAAEuvB,CAAC,CAG7Z,SAAS4hV,IAAInxW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAI3U,EAAEoU,EAAE/Q,EAAEyS,EAAyD,IAAvD+tR,IAAItyQ,EAAE,oBAAoB,GAldpE,SAAavvB,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAA4J,KAA1JA,EAAE6iJ,GAAGopF,GAAIomB,GAAIA,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAIr7L,EAAEA,EAAE,KAAK,IAAIgtI,IAAK,IAAIC,IAAKoiI,GAAI,IAAIjsI,EAAI,IAAID,EAAI,IAAIgB,GAAIkoC,GAAGC,GAAGwtD,IAAG,GAAGC,IAAI,IAAI,EAAE,EAAE4oC,KAAME,SAAS,KAAM3Y,GAAG,IAAIh9G,IAAK7vH,EAAE,EAAMhqB,EAAEu1B,EAAE6gL,KAAKp2M,EAAEg2M,OAA6B,IAAtBx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,KAAMr4M,GAAOwpV,IAAI5sV,EAAED,EAAEwvB,IAAK,CAkd7K6hV,CAAIpxW,EAAEkS,GAAGlU,EAAE,IAAIurN,GAAIr3M,EAAEA,EAAE,GAASlU,EAAEkU,EAAElU,EAAE+B,EAAEk/K,MAA2D,GAAlDqqC,GAAItrN,EAAEkU,EAAElU,EAAE+B,EAAEk/K,MAAqD,IAArB59K,EAA1Bs8K,GAAG3/K,EAAE+B,EAAEs7M,GAAGr9M,EAAEuxB,EAAEvxB,EAAEkU,KAAK,IAASlS,GAAOuvB,EAAErxB,OAAgD,IAA5B6B,EAAE,KAAKwF,EAAE,KAAKu1B,EAAE,KAAKnoB,EAAE,KAASP,EAAE,EAAEA,EAAE/Q,EAAEkuB,EAAErxB,OAAOkU,IAAQqrM,GAAIrrM,EAAE/Q,EAAEkuB,EAAErxB,SAAuBqH,GAApCxF,EAAqB49K,GAAGt8K,EAAEkuB,EAAEnd,GAAG,KAAS/Q,KAAS49P,MAAMg4B,MAAMtkR,GAAGskR,MAAKnjR,EAAEu9V,IAAItxW,EAAE+6B,IAAQ96B,IAAGi/V,IAAIl/V,EAAE+6B,EAAEhnB,EAAE5B,EAAE4B,EAAEyb,GAAGkuL,GAAIrrM,EAAE/Q,EAAEkuB,EAAErxB,QAAQ88L,GAAI35L,EAAEkuB,EAAEnd,EAAE,KAAKA,EAAErS,EAAE+6B,EAAEv1B,EAAEoN,GAAGmoB,EAAE/6B,EAAE4S,EAAEpN,EAAGg9R,IAAIhzQ,EAAE,CAC/Z,SAAS+hV,IAAItxW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAExF,EAAc,GAAZusO,IAAItsO,EAAED,EAAE,IAAOkiL,GAAIk6B,GAAG5T,IAAIr2L,EAAEE,GAAG41L,MAAMqxJ,UAAUp3K,GAAIk6B,GAAG5T,IAAIr2L,EAAEE,EAAEknV,QAAQv+I,GAAGxS,IAAIr2L,EAAEE,GAAGirJ,MAAMgpM,SAAStrJ,IAAI0+D,KAAME,MAAMznQ,EAAEqd,EAAEm1U,GAAGxyV,EAAE3M,EAAExF,GAAIA,EAAEkiL,GAAIk6B,GAAG5T,IAAIr2L,EAAEE,EAAEinV,OAAQF,IAAIn5V,EAAEkS,EAAEnS,GAAE,GAAMkiL,GAAIk6B,GAAG5T,IAAIr2L,EAAEE,EAAEknV,QAAQvxJ,GAAI71L,EAAEE,EAAEknV,KAAK5rI,MAAM,IAAWzrC,GAAIk6B,GAAG5T,IAAIr2L,EAAEE,EAAEinV,SAAQtxJ,GAAI71L,EAAEE,EAAEinV,KAAK3rI,MAAM,IAAQ3lB,GAAI71L,EAAEE,EAAEknV,KAAI,IAAM/pU,EAAE62U,IAAIpmW,EAAEkS,GAAG,EAAE,CAAQ,GAAP+xR,GAAIjkS,GAAS,GAAHuvB,EAAM,OAAO,EAAOhqB,EAAEgqB,EAAE4pU,IAAIn5V,EAAEkS,EAAfnS,GAAGA,GAAgB,GAAOwvB,EAAE62U,IAAIpmW,EAAEkS,EAAE,OAAO3M,EAAEgqB,GAAG,OAAOhqB,CAAC,CAC/Z,SAASgsW,IAAIvxW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAExF,EAAc,GAAZusO,IAAItsO,EAAED,EAAE,IAAOkiL,GAAIk6B,GAAG5T,IAAIr2L,EAAEE,GAAG41L,MAAMqxJ,UAAUp3K,GAAIk6B,GAAG5T,IAAIr2L,EAAEE,EAAEknV,QAAQv+I,GAAGxS,IAAIr2L,EAAEE,GAAGirJ,MAAMgpM,SAAStrJ,IAAI0+D,KAAME,MAAMznQ,EAAEqd,EAAEm1U,GAAGxyV,EAAE3M,EAAExF,GAAIA,EAAEkiL,GAAIk6B,GAAG5T,IAAIr2L,EAAEE,EAAEinV,OAAQF,IAAIn5V,EAAEkS,EAAEnS,GAAE,GAAMkiL,GAAIk6B,GAAG5T,IAAIr2L,EAAEE,EAAEknV,QAAQvxJ,GAAI71L,EAAEE,EAAEknV,KAAK5rI,MAAM,IAAWzrC,GAAIk6B,GAAG5T,IAAIr2L,EAAEE,EAAEinV,SAAQtxJ,GAAI71L,EAAEE,EAAEinV,KAAK3rI,MAAM,IAAQ3lB,GAAI71L,EAAEE,EAAEknV,KAAI,IAAM/pU,EAAEmvT,IAAI1+U,EAAEkS,GAAG,EAAE,CAAQ,GAAP+xR,GAAIjkS,GAAS,GAAHuvB,EAAM,OAAO,EAAOhqB,EAAEgqB,EAAE4pU,IAAIn5V,EAAEkS,EAAfnS,GAAGA,GAAgB,GAAOwvB,EAAEmvT,IAAI1+U,EAAEkS,EAAE,OAAO3M,EAAEgqB,GAAG,OAAOhqB,CAAC,CAC/Z,SAASs7V,IAAI7gW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAI+6B,EAAEnoB,EAAI3U,EAAEoU,EAAE/Q,EAAI2R,EAAM,GAAGd,GAAGqd,EAAG,OAAO,EAAyC,GAA/Brd,EAAE62U,IAAI/oV,EAAEkS,GAAGqd,EAAEw5T,IAAI/oV,EAAEuvB,GAAGxvB,EAAE29T,IAAIxrT,GAAQ,CAAU,IAAT7Q,EAAEq8T,IAAInuS,KAASxvB,EAAG,QAAIsB,KAAqBrD,EAAE+B,EAAEihK,OAAO3/J,EAAE2/J,MAAqB,MAAHhjK,GAA4F,IAA1EkU,EAAEnS,IAAImS,EAAEnS,EAAE,IAAIi/K,GAAIyM,IAAGv5K,EAAE,IAAS4oB,GAApCnoB,EAA+BT,EAAEnS,GAAO/B,GAAMuxB,EAAExvB,IAAIwvB,EAAExvB,EAAE,IAAIi/K,GAAIyM,IAAGl8J,EAAE,IAAYuL,IAAvC9nB,EAA+Buc,EAAExvB,GAAW/B,EAAG,IAAIoU,EAAE,EAAEA,EAAE0oB,IAAI1oB,EAAuC,IAAIyuV,IAAI7gW,EAA1C29K,GAAG0O,GAAI15K,EAAEP,GAAG,IAAMurK,GAAG0O,GAAIr5K,EAAEZ,GAAG,KAAoB,OAAO,EAAQ,OAAO,CAAK,CAAkB,OAAVF,EAAE3M,GAAIgqB,EAAEhqB,CAAe,CAC/Z,SAASisW,IAAIxxW,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAE,GAAG0zM,IAAIxnN,EAAEuF,EAAE2M,GAAG,CAAsD,IAArD4B,EAAEi0M,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAG4oB,EAAE6iJ,GAAG39K,EAAE2S,EAAE,KAAKtR,EAAE,KAAKrD,GAAG,EAAEyF,GAAG,EAAE8B,EAAE,EAAM6M,EAAE,EAAEA,EAAEpS,EAAEhC,IAAIoU,EAAGO,EAAEmoB,EAAE1oB,GAAM0B,EAAEm0M,GAAGt1M,EAAEu1M,QAAO3iN,GAAGgqB,IAAIvxB,EAAEoU,GAAM7M,GAAGxF,IAAG0D,EAAE2O,EAAE/Q,EAAEsR,EAAEmoM,QAAOv1M,GAAG,IAAO,GAAJvH,EAAO,MAAMk1K,GAAI,IAAIgO,GAAIg0J,IAAI3lT,EAAEyrM,IAAIz1N,IAAI,IAAO,GAAJ9B,EAAO,MAAMyvK,GAAI,IAAIgO,GAAIi0J,IAAIp1U,EAAEi7N,IAAIz1N,IAA2D,OAAvDqlR,GAAI5qR,EAAEhC,EAAEyF,GAAG69M,GAAIthN,EAAEuF,IAAIywK,GAAIh2K,EAAEk+N,GAAIl+N,EAAE,EAAEkS,EAAE8lM,GAAIj4M,GAAGsB,EAAEkuB,GAAE,IAAcluB,CAAC,CAAM,MAAM6xK,GAAI,IAAI2O,GAAI,mDAAoD,CAC/Z,SAASu4K,IAAIp6V,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAA2F,QAAzFA,EAAE,IAAI2iN,GAAIzuM,EAAEtS,IAAKI,GAAGkS,EAAEhS,EAAEF,EAAE,EAAEhC,EAAEkU,GAAGA,EAAEhS,EAAEgS,EAAE,EAAEzO,EAAE68K,GAAIC,GAAGgoB,IAAIr2L,GAAGmrJ,MAAMo0M,QAAQ32U,EAAE96B,EAAE86B,EAAEnoB,EAAE3S,EAAED,EAAEwF,EAAEvF,EAAEuvB,EAASouJ,GAAG4qB,IAAIr2L,GAAG81L,MAAMe,MAAM,IAAIp2L,GAAG,KAAK,EAAE3U,EAAEgC,GAAG2S,EAAET,EAAE3M,EAAEvF,EAAEuvB,EAAE,EAAEvxB,EAAEkU,GAAGnS,EAAE0D,EAAEyO,EAAEtS,EAAEsS,IAAIS,EAAE5S,EAAE0D,EAAE8B,EAAE2M,GAAG,MAAM,KAAK,EAAElU,EAAEgC,EAAE86B,EAAE96B,EAAE2S,EAAET,EAAES,EAAE4c,EAAE9rB,EAAEzF,EAAEkU,GAAGS,EAAE5S,EAAEwF,EAAE2M,EAAEnS,EAAE,EAAEmS,EAAEtS,EAAEI,EAAE86B,EAAE96B,EAAE2S,EAAE4c,EAAE9rB,EAAE8B,EAAEvF,EAAE,MAAM,KAAK,EAAEhC,EAAEgC,GAAG2S,EAAET,EAAE3M,EAAEvF,EAAEuvB,EAAE,EAAEvxB,EAAEkU,EAAE4oB,EAAE5oB,EAAES,EAAE5S,EAAE4S,EAAE3S,EAAEyD,EAAEyO,EAAEtS,EAAEsS,EAAE4oB,EAAE5oB,EAAES,EAAE3S,EAAEyD,EAAE8B,EAAE2M,EAAE,MAAM,KAAK,EAAElU,EAAEgC,GAAGuvB,EAAE9rB,EAAEzF,EAAEkU,GAAGS,EAAE5S,EAAEwF,EAAE2M,EAAEnS,EAAE,EAAEmS,EAAEtS,EAAEI,IAAI2S,EAAET,EAAEzO,EAAE8B,EAAEvF,GAAI,OAAOhC,CAAC,CACha,SAAS0zW,IAAI1xW,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAA0X,OAA9Wk9P,GAAV9vQ,EAAE,IAAIs/R,GAAUr/R,GAAG+6M,GAAGxS,IAAIxoM,GAAGs9J,MAAMsoJ,SAAS5qG,IAAI43E,KAAMC,OAAO7qF,GAAIhoM,EAAE4lT,IAAID,GAAI3lT,IAA2B,MAApBwoM,IAAIxoM,GAAGgyQ,KAAMC,QAAar/P,EAAEgrK,GAAG03J,IAAIr1U,GAAG,KAAK+nM,GAAIhoM,EAAEiyQ,IAAI11D,GAAG3pM,EAAEqzL,GAAGgsE,QAAOjqE,GAAIhoM,GAAGioM,MAAM0/C,KAAK1nP,GAAG+nM,GAAIhoM,EAAE66T,IAAqB,IAAInzH,GAApBv1L,EAAEyrK,GAAGsL,GAAI2qH,KAAI,GAAaj2H,GAAG+pB,GAAIx1L,EAAEA,EAAEhU,QAAQ,GAAG,IAAKqH,EAoR3Q,SAAavF,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAI9S,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAgE,IA/gGxH,SAAajU,EAAEkS,GAAGmwV,IAAIriW,GAAE,GAAMojN,GAAIpjN,EAAEuF,EAAE66S,KAAK,IAAIhgF,GAAIpgO,GAAE,EAAKkS,GAAG,CA+gGUy/V,CAAb79V,EAAE,IAAI89V,IAAI5xW,KAAWkS,IAAIygR,KAAM7xE,MAAM5uM,GAAG6uM,MAAM1/M,EAAEyS,EAAE9T,EAAEgT,EAAE,IAAI6lK,GAAW26F,KAAHjuQ,EAASg5K,GAAGC,GAAGi1F,IAAG,GAAGxnC,IAAI,IAAI,EAAE,CAACynC,IAAIC,IAAIC,MAAOjhQ,EAAE,EAAE3U,EAAEuH,EAAErH,OAAOyU,EAAE3U,IAAI2U,EAAG4c,EAAEhqB,EAAEoN,IAAGP,EAAEw3M,GAAIvoN,EAAEqyQ,IAAInkP,MAASvc,EAAEjT,EAAEkzI,EAAK3/H,KAAKugB,IAAI7gB,EAAEjT,EAAEqS,EAAE2rS,OAAO,IAAIh+S,EAAEw+K,GAAGC,GAAGi1F,IAAG,GAAGxnC,IAAI,IAAI,EAAE,CAACynC,IAAIC,IAAIC,MAAM94O,EAAE,EAAEr3B,EAAE1D,EAAE7B,OAAO48B,EAAEr3B,IAAIq3B,EAAGvL,EAAExvB,EAAE+6B,IAAG1oB,EAAEw3M,GAAIvoN,EAAEuyQ,IAAIrkP,MAASvc,EAAEhT,EAAEizI,EAAK3/H,KAAKugB,IAAI7gB,EAAEhT,EAAEoS,EAAE2rS,OAAO,IAAI36S,EAAEm7K,GAAGC,GAAGi1F,IAAG,GAAGxnC,IAAI,IAAI,EAAE,CAACynC,IAAIC,IAAIC,MAAMlhQ,EAAE,EAAEuB,EAAE7Q,EAAElF,OAAOwU,EAAEuB,IAAIvB,GAAUN,EAAEw3M,GAAIvoN,EAAX+B,EAAEsP,GAAaghQ,QAAW1gQ,EAAEd,EAAE+gI,EAAK3/H,KAAKugB,IAAI7gB,EAAEd,EAAEE,EAAE6rS,OAAO,IAAI/9S,EAAEq+K,GAAGC,GAAGi1F,IAAG,GAAGxnC,IAAI,IAAI,EAAE,CAACynC,IAAIC,IAAIC,MAAM5/P,EAAE,EAAEH,EAAE3T,EAAEhC,OAAO8V,EAAEH,IAAIG,GAAU5B,EAAEw3M,GAAIvoN,EAAXnB,EAAE8T,GAAa4/P,QAAW5gQ,EAAEuc,EAAE0jH,EAAK3/H,KAAKugB,IAAI7gB,EAAEuc,EAAEnd,EAAE6rS,OAAUjrS,EAAEjT,EAAE,IAAGiT,EAAEjT,GAAGsB,EAAEzB,EAAEG,EAAEiT,EAAEjT,GAAGsB,EAAEtB,GAAKiT,EAAEhT,EAAE,IAAGgT,EAAEhT,GAAGqB,EAAEzB,EAAEI,EAAEgT,EAAEhT,GAAGqB,EAAEtB,GAAKiT,EAAEd,EAAE,IAAGc,EAAEd,GAAG7Q,EAAEzB,EAAEsS,EAAEc,EAAEd,GAAG7Q,EAAEtB,GAAKiT,EAAEuc,EAAE,IAAGvc,EAAEuc,GAAGluB,EAAEzB,EAAE2vB,EAAEvc,EAAEuc,GAAGluB,EAAEtB,GAAE,OAAOiT,CAAC,CApR3e6+V,EAAM/zJ,GAAI99M,KAASmrM,KAAM,IAAI1pB,GAAIq8B,GAAI99M,KAAKmrM,KAAM,IAAIklB,GAAKvS,GAAI99M,GAAQ,IAAIyhL,GAAIq8B,GAAI99M,IAAjB,KAAqBA,IAAI6gN,KAAK/lL,EAAE6iJ,GAAG4qB,IAAIxoM,EAAE+xW,KAAK,KAAWrhH,GAANlhO,EAAExvB,EAAEA,EAAQ+6B,GAAG21N,GAAIlhO,EAAEhqB,GAAUxF,CAAC,CAGha,SAASgyW,IAAI/xW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAM4S,EAAElP,EAA6V,OAAzV1D,EAAEkzI,EAAK3/H,KAAKskB,IAAI85M,GAAI1xO,EAAEkS,GAAGlS,EAAE0xO,GAAIx/N,EAAEA,GAAGlS,GAAGyD,EAAEwvI,EAAK3/H,KAAKskB,IAAI85M,GAAI1xO,EAAEkS,GAAGA,EAAEw/N,GAAIx/N,EAAEA,GAAGA,GAAK,EAAI,EAAEqd,EAAE,EAAE5c,EAAE,EAAK5S,EAAEC,EAAEkS,EAAEA,EAAE,EAAEA,EAAEA,EAAEA,EAAE,IAAwFqd,EAAE,EAArF0jH,EAAK3/H,KAAKsgB,IAAIq/G,EAAK3/H,KAAKskB,IAAI53B,EAAEkS,EAAEqd,GAAGrd,EAAEA,EAAEqd,EAAErd,EAAEA,EAAEA,IAAI+gI,EAAK3/H,KAAKskB,IAAI53B,EAAEkS,EAAEqd,EAAEvvB,EAAEkS,EAAEA,EAAEA,EAAEA,EAAEqd,IAAUxvB,GAAK0D,EAAEzD,EAAEkS,EAAElS,EAAE,EAAEkS,EAAEA,EAAElS,EAAE,IAAwF2S,EAAE,EAArFsgI,EAAK3/H,KAAKsgB,IAAIq/G,EAAK3/H,KAAKskB,IAAI53B,EAAEkS,EAAEnS,GAAGmS,EAAEA,EAAEnS,EAAEmS,EAAEA,EAAElS,IAAIizI,EAAK3/H,KAAKskB,IAAI53B,EAAEkS,EAAEnS,EAAEC,EAAEkS,EAAElS,EAAEkS,EAAEA,EAAEnS,IAAU0D,IAA+B,EAA3BwvI,EAAK3/H,KAAKsgB,IAAIrE,EAAE5c,IAAgBsgI,EAAK3/H,KAAKuc,KAAK9vB,EAAEA,EAAE0D,EAAEA,EAAE,CACja,SAASuuW,IAAIhyW,GAAG,IAAIkS,EAAInS,EAAEwF,EAAoL,IAAlL0sW,IAAIjyW,EAAEA,EAAEuF,EAAEvF,EAAE86B,GAAG4yN,KAAMC,MAAK,EAAK3tP,EAAEuvB,EAAEvvB,EAAEhC,GAAGi0W,IAAIjyW,EAAEA,EAAEuF,EAAEvF,EAAE86B,EAAE6yN,KAAI,EAAM3tP,EAAEuvB,EAAEvvB,EAAEhC,GAAGi0W,IAAIjyW,EAAEA,EAAEuF,EAAEvF,EAAE86B,EAAE+yN,KAAI,EAAK7tP,EAAEuvB,EAAEvvB,EAAEhC,GAAGi0W,IAAIjyW,EAAEA,EAAEuF,EAAEvF,EAAE86B,EAAE+yN,KAAI,EAAM7tP,EAAEuvB,EAAEvvB,EAAEhC,GAInK,SAAagC,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAE,IAAInB,EAAE,IAAIgzJ,GAAIzzJ,GAAGS,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAQ,CAAuB,GAANF,GAAhB88B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAQ4c,EAAKA,EAAEvvB,EAAEmH,GAAGnJ,GAAO0vP,KAAHt7O,EAASu7O,QAAU,KAAG5tP,EAAEC,EAAEmH,GAAGnJ,GAAuB,MAAMk1K,GAAI,IAAI2O,GAAI,iDAAlC6rE,KAAHt7O,EAASy7O,GAA4E,CAAO,GAANxsP,EAAEy5B,EAAE/6B,EAAKwvB,EAAEvvB,EAAEmH,GAAG9F,GAAOqsP,KAAH55O,EAAS65O,QAAU,KAAG5tP,EAAEC,EAAEmH,GAAG9F,GAAuB,MAAM6xK,GAAI,IAAI2O,GAAI,iDAAlC6rE,KAAH55O,EAAS+5O,GAA4E,CAACpqP,EAAE,IAAIk7U,IAAI7jT,EAAE1oB,EAAE0B,GAAG6iL,GAAI32L,EAAEkS,EAAE4oB,EAAEr3B,GAAG8B,EAAEgqB,EAAEhqB,EAAEgqB,EAAErxB,QAAQuF,CAAC,CAAC,CAJ9PyuW,CAAIlyW,EAAEA,EAAEuvB,EAAEvvB,EAAEuF,EAAEvF,EAAE86B,EAAE96B,EAAEhC,GAAG+B,EAAE,IAAIwpN,GAAIvpN,EAAEhC,EAAE,GAAS+B,EAAEmS,EAAEnS,EAAEA,EAAEk/K,MAAyE,IAAhEqqC,GAAIvpN,EAAEmS,EAAEnS,EAAEA,EAAEk/K,MAAf/sK,EAAqByrK,GAAG59K,EAAEA,EAAEs7M,GAAGt7M,EAAEwvB,EAAExvB,EAAEmS,KAAK,KAAM3M,EAAE,IAAIgkN,GAAIvpN,EAAEhC,EAAE+B,EAAEmS,GAAS3M,EAAE2M,EAAE3M,EAAExF,EAAEk/K,MAASqqC,GAAI/jN,EAAE2M,EAAE3M,EAAExF,EAAEk/K,MAAiCkzL,IAAIjgW,EAA/ByrK,GAAGp4K,EAAExF,EAAEs7M,GAAG91M,EAAEgqB,EAAEhqB,EAAE2M,KAAK,OAiYnW,SAAalS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAEC,EAA2B,IAAzBvuJ,EAAE,IAAI42I,GAAIl2K,EAAE,IAAIk2K,GAAIzlK,GAAG,EAAMhW,EAAE,IAAI2nK,GAAI3lK,GAAGhC,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAQ,CAAkC,KAAjCyU,EAAEgrK,GAAGC,GAAI5/K,GAAG,MAAO6V,EAAEG,IAAI3S,EAAE,EAAE4S,EAAE,EAAM6mB,EAAE,IAAI6qI,GAAIhzJ,EAAEsB,GAAG6mB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAA0B+V,IAAjBlU,EAAE49K,GAAGC,GAAI9iJ,GAAG,MAAUvL,EAAE,IAAIhqB,EAAE,IAAIogK,GAAIhzJ,EAAE3U,GAAGuH,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA0BmD,IAAjBtB,EAAE49K,GAAGC,GAAIr4K,GAAG,MAAUgqB,EAAE5c,EAAE/S,EAAEyB,EAAEsR,EAAE0V,EAAEpU,EAAK,GAAHA,EAAM8oM,GAAIx5M,EAAEoP,EAAEpP,EAAEgsB,EAAErd,EAAE3O,EAAEgsB,GAAY,GAAHluB,GAAO07M,GAAIl6K,EAAElwB,EAAEkwB,EAAEtT,EAAErd,EAAE2wB,EAAEtT,EAAQ,CAAC6hK,EAAE01E,GAAG9mQ,GAAG8T,EAAE9T,EAAEuvB,EAAErxB,OAAOkF,EAAE0Q,EAAE,EAAEpB,EAAEoB,EAAE,EAAElU,EAAE,IAAI0yK,GAAI,KAAgB,GAAV8e,EAAEpxL,EAAEi/K,MAAQ,CAAC,KAAW,GAAL17K,EAAE2O,GAASo3M,GAAS,GAAL/lN,EAAE2O,GAATf,EAAewsK,GAAGymD,GAAI7gO,EAAEA,EAAEvD,EAAEA,GAAG,KAAMoxL,EAAEpxL,EAAE0oN,GAAGv3M,GAASA,EAAE0C,EAAEnB,IAAIm/U,IAAI1gV,EAAE0xB,EAAEt/B,GAAG,KAAW,GAALs/B,EAAE3wB,GAASo3M,GAAS,GAALzmL,EAAE3wB,GAAT0X,EAAe+zJ,GAAGymD,GAAIvhM,EAAEA,EAAE7iC,EAAEA,GAAG,KAAMoxL,EAAEpxL,EAAE0oN,GAAG9+L,GAASA,EAAE/V,EAAEzQ,IAAIyuV,IAAIjoU,EAAEiZ,EAAEt/B,GAAS,IAANrD,EAAE+3L,IAAQ7lL,EAAEg/K,EAAEpxL,EAAE2hP,KAAKhmC,KAAKvpM,EAAEmpM,OAAwB1nM,GAAjBlB,EAAEgrK,GAAGvrK,EAAEqpM,KAAK,MAASpzL,EAAE1V,EAAE/S,IAAQM,IAAM2T,EAAE3T,IAAGN,EAAE2vB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGj+K,EAAE2T,GAAEjU,EAAE2vB,EAAE3vB,EAAE2vB,EAAErxB,QAAQyU,GAAkB,GAAZ/S,EAAE2vB,EAAErxB,SAAW8U,EAAE2qK,GAAG0pB,GAAIznM,EAAE06T,IAAIpoT,EAAEtS,EAAE2vB,EAAErxB,SAAS,KAAKkzL,EAAEpxL,EAAE0oN,GAAG11M,GAASA,EAAEa,EAAEzQ,IAAIyuV,IAAI7+U,EAAE6vB,EAAEt/B,GAAG3D,EAAE2vB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAG,CAAgB,IAAf91J,EAAEroB,EAAEuvB,EAAErxB,OAAO,EAAMuF,EAAE,IAAIkiK,GAAI3lK,GAAGyD,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,SAASyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,MAAOoQ,EAAEC,IAAInB,EAAEkB,GAAGwU,GAAG,IAAIuc,EAAE,IAAI+gI,GAAI3lK,GAAG4kC,EAAE5kC,EAAE4kC,EAAErV,EAAEA,EAAErxB,QAA2C,IAAjBqxB,EAAE,IAAIg6L,IAAvB3/L,EAAE+zJ,GAAGC,GAAIh5I,GAAG,MAAiB3wB,EAAE,GAASsb,EAAErd,EAAEqd,EAAExvB,EAAEk/K,MAASqqC,GAAI/5L,EAAErd,EAAEqd,EAAExvB,EAAEk/K,MAAiCkS,GAAhDpxL,EAAqB49K,GAAGpuJ,EAAExvB,EAAEs7M,GAAG9rL,EAAEA,EAAEA,EAAErd,KAAK,MAAUA,EAAK0X,EAAE/V,EAAEs9K,EAAEt9K,IAAG21M,GAAIj6L,GAAGugM,GAAI3+B,EAAEnzL,EAAE+B,GAAMA,EAAEwvB,EAAE,IAAGxvB,EAAEC,EAAEmxL,EAAEpb,GAAIob,EAAEl9K,EAAElU,GAAGA,EAAEmS,EAAE0X,EAAEmsJ,GAAInsJ,EAAE5rB,EAAE+B,IAAM,CAjYpwBqyW,CAAIpyW,EAAEhC,EAAE2/K,GAAG4qB,IAAIvoM,EAAED,GAAGioM,MAAM89C,MAAM,MA2OnZ,SAAa9lP,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAsB,IAApB+Q,EAAE,IAAIqnK,GAAIh2K,EAAE,IAAIg2K,GAAQ3+I,EAAE,IAAI6qI,GAAI3lK,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,SAAS6B,EAAE49K,GAAGC,GAAI9iJ,GAAG,MAAO3pB,EAAE,EAAEpR,EAAEH,EAAEG,EAAE/B,EAAEuxB,EAAErxB,OAAO6B,EAAEsoB,EAAEtoB,EAAEkU,EAAEsb,EAAErxB,OAAY,GAAL6B,EAAEH,GAAOm9M,GAAI3qM,EAAErS,EAAEqS,EAAEmd,EAAErd,EAAEE,EAAEmd,GAAc,GAALxvB,EAAEsoB,GAAkB,GAAZtoB,EAAE2S,EAAE1S,EAAEi/K,MAAU89B,GAAIt5M,EAAE1D,EAAE0D,EAAE8rB,EAAErd,EAAEzO,EAAE8rB,GAAS5c,GAAG,EAAE,KAAW,GAALP,EAAEF,GAAwB,IAAIqd,EAAE,IAAIo2I,IAA5B5lK,EAAE49K,GAAGooJ,IAAG3zT,EAAE,GAAG,MAAqB6B,GAAGsb,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,SAA0BmD,EAAfs8K,GAAGC,GAAIruJ,GAAG,KAASrd,GAAIf,EAAE8hI,EAAK3/H,KAAKugB,IAAIxyB,EAAE8P,EAAEpR,EAAEoR,EAAE,GAAGwB,EAAEsgI,EAAK3/H,KAAKugB,IAAIlhB,EAAEtR,EAAE8P,KAAK9P,EAAEzB,EAAO,GAALyB,EAAEzB,GAAOm9M,GAAI3qM,EAAE/Q,EAAE+Q,EAAEmd,EAAErd,EAAEE,EAAEmd,GAAU,GAAG5c,GAAG,EAAE,CAAC,IAAIpN,EAAEu5P,IAAIr7P,EAAE,GAAG8B,EAAE2M,GAAG3M,EAAExF,EAAEwvB,IAAIxvB,EAAE49K,GAAGohF,GAAIx5P,GAAG,MAAO4L,EAAEwB,EAAE,KAAW,GAALlP,EAAEyO,GAAwB,IAAIqd,EAAE,IAAIo2I,IAA5B5lK,EAAE49K,GAAGooJ,IAAGtiU,EAAE,GAAG,MAAqBzF,GAAGuxB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAA+C,IAArBF,EAAf2/K,GAAGC,GAAIruJ,GAAG,KAASvvB,GAAO0S,EAAE1S,EAAEi/K,OAAkBjhL,EAAEmT,EAAE8hI,EAAK3/H,KAAKsgB,IAAI51B,EAAEmT,EAAEpR,EAAEoR,EAAE,KAAKnT,EAAEqqB,EAAO,GAALrqB,EAAEqqB,GAAO00L,GAAIt5M,EAAEzF,EAAEyF,EAAE8rB,EAAErd,EAAEzO,EAAE8rB,GAAU,CAAC,CA3O7Q8iV,CAAIryW,EAAEhC,EAAE,CACja,SAASs0W,IAAItyW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAE,GAAM,MAAHmS,EAAkB,GAATnS,EAAE+hU,IAAI9hU,GAAQ,CAAC,GAAY,IAAJ,EAAJD,EAAE/B,GAAmQ,OAAOquM,OAAM98K,EAAEouJ,GAAG+5B,GAAIpL,IAAIvsM,GAAG,MAAQwvB,EAAEi0O,GAAGtxP,GAApS,GAAGnS,GAAGgzL,IAAK,OAAOioB,GAAG9oM,GAAQ,GAAGnS,GAAGqzL,IAAI,OAAOvJ,GAAG33K,EAAE,IAAS,GAAGnS,GAAGozL,IAAI,OAAOtJ,GAAG33K,EAAE,KAAU,GAAGnS,GAAGuwL,IAAI,OAAOzG,GAAG33K,EAAE,KAAU,GAAGnS,GAAGs1N,IAAI,OAAOxrC,GAAG33K,EAAE,KAAU,GAAGnS,GAAGkzL,IAAI,OAAOgoB,GAAG/oM,GAAQ,GAAGnS,GAAG0zL,IAAK,OAAO5J,GAAG33K,EAAE,KAAU,GAAGnS,GAAGuzL,IAAI,OAAOzJ,GAAG33K,EAAE,IAAwD,MAAM,GAAG23K,GAAG33K,EAAE,IAAK,OAAOlS,EAAEuyW,GAAG50L,GAAGzrK,EAAE,KAAM,OAAO,CAAK,CACja,SAASkjN,MAAc,IAAIp1N,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAuD,IAAnFo3N,IAAI1gF,EAA0B8oD,IAAIvf,GAAGqS,IAAGokI,IAAI,GAAG,IAAI,GAAG,GAAGn/F,IAAIt3C,GAAGo3C,IAAGC,IAAI,GAAG,GAAG,GAAG,GAAOpjN,EAAE,EAAEA,EAAE,IAAIA,IAAKsrL,IAAItrL,IAAI,EAAE,IAAIqd,EAAE,GAAGA,GAAG,GAAGA,IAAKiuK,IAAIjuK,GAAGA,EAAE,IAAI,IAAI,GAAG,IAAIxvB,EAAE,IAAIA,GAAG,GAAGA,IAAKy9L,IAAIz9L,GAAGA,EAAE,GAAG,IAAI,IAAI,GAAG,IAAIwF,EAAE,GAAGA,GAAG,GAAGA,IAAKi4L,IAAIj4L,GAAGA,EAAE,GAAG,IAAI,IAAI,GAAyB,IAAtBi4L,IAAI,IAAI,GAAGA,IAAI,IAAI,GAAO1iK,EAAE,EAAEA,GAAG,GAAGA,IAAIy6L,IAAIz6L,GAAG,GAAGA,EAAE2hK,IAAI,IAAI9pL,EAAE,GAAG3U,EAAE,EAAE2U,GAAG,KAAKA,EAAE3U,IAAIu3N,IAAI5iN,GAAG,GAAG3U,EAAEy+L,IAAI,IAAIz8L,EAAE,GAAGyD,EAAE,EAAEzD,GAAG,KAAKA,EAAEyD,IAAI8xN,IAAIv1N,GAAG,GAAGyD,EAAEg5L,IAAI84B,IAAI,IAAI,GAAGA,IAAI,IAAI,EAAE,CAGja,SAASqxH,IAAI5mV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,IAAImyP,GAAInwP,GAAI,MAAMkzK,GAAI,IAAI4O,GAAI0wL,MAA2B,GAAZ13U,GAAT/6B,EAAEowP,GAAInwP,IAAO2S,EAAEpN,EAAExF,EAAE+6B,EAAKA,GAAG,GAAGv1B,GAAG,EAAG,OAAOk6K,MAAMqnB,IAAgB,OAAZrjM,EAAEzD,EAAEhC,EAAEA,EAAEgC,EAAEoS,EAASF,EAAES,GAAG,KAAK,EAAE,KAAK,EAAE,GAAGlP,EAAE,EAAG,OAAOg8K,MAAMG,IAAS,GAAGn8K,EAAEzD,EAAE2S,EAAEmoB,EAAG,OAAO2kJ,MAAMC,IAAI,MAAM,KAAK,EAAE,KAAK,EAAE,GAAG1hL,EAAE,EAAG,OAAOyhL,MAAMM,IAAS,GAAG/hL,EAAEgC,EAAE86B,EAAEv1B,EAAG,OAAOk6K,MAAMonB,IAAiC,OAA5Bl0L,GAAGlP,EAAEzD,EAAE2S,EAAE,GAAGmoB,IAAEvL,GAAGvxB,EAAEgC,EAAE86B,EAAE,GAAGv1B,IAAc,GAAGoN,EAAE4c,GAAG,GAAGkwJ,MAAMG,KAAKjtK,EAAE4c,GAAG,GAAG5c,EAAE4c,GAAG,GAAGkwJ,MAAMC,KAAKnwJ,EAAE,IAAKkwJ,MAAMM,MAAMN,MAAMonB,IAAI,CAEpa,SAAS4rK,IAAIzyW,GAAS,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,GAAtBuxM,MAA8B,GAALlkN,EAAEuF,GAAW,GAALvF,EAAEuF,EAAK,MAAM2tK,GAAI,IAAI2O,GAAI,4CAA4C7hL,EAAEuF,IAAsL,IAA9KopV,IAAJ7zT,EAAE96B,GAAS0yW,IAAI53U,GAAG/6B,EAAE+6B,EAAE5oB,EAAEhU,OAAO,EAAU,GAAR48B,EAAE5oB,EAAE,KAAQnS,GAAG,IAAGwvB,EAAEuL,EAAE5oB,EAAE4oB,EAAE5oB,EAAEhU,OAAO,KAAMy0W,MAAM5yW,GAAG,IAAGwF,EAAS,IAAI0yP,GAAI,IAAM/lP,EAAE+rK,GAAGmV,IAAGsW,IAAI,GAAG3pM,EAAE,GAAG,GAAG4S,EAAE,EAAKmoB,EAAE5oB,EAAE,GAAG,IAAG3M,EAAE2M,EAAES,KAAK,EAAEpN,EAAE2M,EAAES,KAAKmoB,EAAE5oB,EAAE,GAAG,GAAMA,EAAE,EAAEA,EAAE4oB,EAAE5oB,EAAEhU,OAAO,EAAEgU,GAAG,EAAG3M,EAAE2M,EAAES,KAAKmoB,EAAE5oB,EAAEA,GAAG,EAAE3M,EAAE2M,EAAES,KAAKmoB,EAAE5oB,EAAEA,EAAE,GAAG,EAA8C,OAAzCqd,GAAGojV,MAAKptW,EAAE2M,EAAES,KAAK4c,EAAE,EAAEhqB,EAAE2M,EAAES,GAAGggW,KAAIptW,EAAEvF,GAAE,EAAYuF,CAAC,CACra,SAASqtW,IAAI5yW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAW,GAAM,IAAftB,EAAEwvB,EAAE0vJ,MAAc,OAAO,EAAW,GAAGj/K,EAAEmkT,KAAiF,GAA3E/xS,EAAEpS,EAAEokT,KAAK+sB,IAAInxU,EAAEkS,EAAEqd,GAAG5c,EAAK,GAAH5S,EAAKC,EAAEskT,GAAG,EAAE,KAAK/0R,EAAEosL,KAAKF,KAAKvpM,EAAEE,GAAGpS,EAAEskT,GAAG,EAAE,KAAK/0R,EAAErd,EAAEE,GAAMpS,EAAE+mV,KAAK,CAA+B,IAA9BtjV,EAAE1D,EAAE,IAAI,KAAK,IAAIsoL,GAAItoL,GAAG+6B,EAAE5oB,EAAEnS,EAAMwF,EAAE2M,EAAE3M,EAAEu1B,IAAIv1B,EAAGlE,EAAErB,EAAE2S,EAAEpN,GAAG9B,EAAEzD,EAAE+gK,GAAG1/J,EAAEoC,GAAGA,EAAEzD,EAAEioV,GAAG5mV,EAAEoC,GAAOA,GAAgBA,EAAE66N,GAAG3rN,GAAGlP,EAAEuoL,MAAvBhsL,EAAEu6P,GAAG5nP,EAAuB,MAAM3S,EAAEu6P,GAAG5nP,QAAoB,GAAXw+T,IAAInxU,EAAEkS,EAAEqd,GAAMvvB,EAAE+mV,KAAK,CAA+B,IAA9BtjV,EAAE1D,EAAE,IAAI,KAAK,IAAIsoL,GAAItoL,GAAG+6B,EAAE5oB,EAAEnS,EAAMwF,EAAE2M,EAAE3M,EAAEu1B,IAAIv1B,EAAGvH,EAAEgC,EAAE2S,EAAEpN,GAAG9B,EAAEzD,EAAE+gK,GAAG/iK,EAAEyF,GAAKA,GAAGA,EAAEuoL,IAAI,CAAE,OAAO,CAAK,CACva,SAASqpK,IAAIr1V,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,IAAI2U,EAAE,IAAIgzJ,GAAI3lK,EAAEqB,GAAGsR,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAASqH,EAAEo4K,GAAGC,GAAIjrK,GAAG,KAAS5S,GAAGwF,EAAEgqB,IAAI+1O,KAAMC,OAAMvnQ,EAAEuH,EAAE2M,GAAOS,EAAE,GAAGpN,EAAExF,EAAE,IAAG2jK,GAAI1lK,EAAEA,EAAE+B,EAAEwF,EAAExF,GAAGwF,EAAEgqB,IAAI+1O,KAAMC,MAAM/hG,GAAIxlK,EAAEA,EAAEgC,EAAEuF,EAAExF,GAAG/B,EAAE+B,GAAG,GAAG/B,EAAEA,EAAE,GAAI++M,GAAI7qM,EAAElU,EAAEkU,EAAEqd,EAAErd,EAAEA,EAAEqd,IAAW,IAAIuL,EAAE,IAAI6qI,GAAI3lK,EAAE86B,GAAGA,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAASqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAS/6B,GAAGwF,EAAEgqB,IAAI+1O,KAAMC,OAAM9hQ,EAAE8B,EAAEvF,GAAO2S,EAAE,GAAGpN,EAAExF,EAAE,IAAG4jK,GAAIlgK,EAAEA,EAAEzF,EAAEuH,EAAExF,GAAGwF,EAAEgqB,IAAI+1O,KAAMC,MAAM9hG,GAAIhgK,EAAEA,EAAEyO,EAAE3M,EAAExF,GAAG0D,EAAEzF,GAAG,GAAGyF,EAAE1D,EAAE,GAAIg9M,GAAIxtL,EAAE9rB,EAAE8rB,EAAEA,EAAErd,EAAEqd,EAAEA,GAAW,CACxa,SAASsjV,IAAI7yW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAA4E,IAA1EwgS,IAAItyQ,EAAE,2BAA2B,GAAGkjJ,GAAIzyK,EAAEkS,GAAGugK,GAAIzyK,EAAEA,GAAGyD,EAAE,KAAKq3B,EAAEgkO,IAAI5sP,EAAEA,EAAE,IAAUzO,GAAGq3B,EAAE5oB,GAAG4oB,EAAE/6B,EAAEwvB,GAAmB0yJ,GAAIk6B,GAAG5T,IAAvBn2L,EAAEurK,GAAGohF,GAAIjkO,GAAG,KAAkB4rQ,MAAMg3C,UAAUj6U,EAAE2O,GAAyC,IAA5B2qM,GAAV/+M,EAAE,IAAIy7K,GAAUh2K,EAAEzF,EAAEuxB,EAAErd,EAAElU,EAAEuxB,GAAGujV,IAAI9yW,EAAEhC,GAAOqD,EAAEy9P,IAAI5sP,EAAEA,EAAE,GAAG7Q,EAAE6Q,GAAG7Q,EAAEtB,EAAEwvB,GAAoB5c,EAAEmxK,GAAGykB,IAArBn2L,EAAEurK,GAAGohF,GAAI19P,GAAG,KAAgBqlS,MAAMqsE,OAAOxtW,EAAc,MAAZ+kL,GAAItqL,EAAEkS,EAAES,GAASgrK,GAAG2M,GAAItqL,EAAEkS,EAAES,GAAG,IAAI3S,EAAE,EAAE+nM,GAAI31L,EAAE4gW,IAAIh7J,GAAIzyM,IAAIxF,EAAE,GAAe,MAAZuqL,GAAItqL,EAAEA,EAAE2S,GAASgrK,GAAG2M,GAAItqL,EAAEA,EAAE2S,GAAG,IAAI3S,EAAE,GAAG+nM,GAAI31L,EAAE6gW,IAAIj7J,GAAIj4M,IAAIwiS,IAAIhzQ,EAAE,CACxa,SAASqtS,IAAI58T,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAMoN,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAa,IAAX8S,EAv6BhD,SAAahT,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAEu1B,EAAuB,IAArBA,EAAE,IAAIyuL,GAAIvpN,EAAEuF,EAAE,GAAGgqB,EAAE,EAAQuL,EAAE5oB,EAAE4oB,EAAE/6B,EAAEk/K,MAAK,CAAwD,IAAN15K,EAA/C+6K,IAAKgpC,GAAIxuL,EAAE5oB,EAAE4oB,EAAE/6B,EAAEk/K,MAAMsB,GAAGzlJ,EAAE/6B,EAAEs7M,GAAGvgL,EAAEvL,EAAEuL,EAAE5oB,QAAYA,GAAOyqT,IAAK,OAAOptS,EAAOhqB,GAAG,QAAUgqB,CAAC,CAAC,OAAOA,CAAC,CAu6B3H2jV,CAAIlzW,EAAEuvB,GAAOvxB,EAAE,EAAEA,EAAEkU,EAAElU,IAAI,CAAoE,IAAnE07N,GAAIn0N,EAAEgqB,GAAG3vB,EAAE,IAAI0yK,GAAOg3C,GAAIvpN,EAAEmS,EAAEnS,EAAEA,EAAEk/K,MAAf/+K,EAAqBy9K,GAAG59K,EAAEA,EAAEs7M,GAAGt7M,EAAEwvB,EAAExvB,EAAEmS,KAAK,KAAU7Q,EAAE2R,EAAEhV,EAAEqD,EAAErB,EAAEkS,EAAE7Q,IAAKoC,EAAEvD,EAAKopN,GAAIvpN,EAAEmS,EAAEnS,EAAEA,EAAEk/K,MAAiClJ,GAAIn2K,EAAE,IAAIu8V,IAAI14V,EAA9DvD,EAAqBy9K,GAAG59K,EAAEA,EAAEs7M,GAAGt7M,EAAEwvB,EAAExvB,EAAEmS,KAAK,KAAwBqd,IAAI,IAAIzb,EAAEd,EAAEhV,EAAE8V,EAAE9T,EAAEkS,EAAE4B,IAAKw1M,GAAIvpN,EAAEmS,EAAE,GAAGnS,EAAEC,EAAEq7M,GAAGt7M,EAAEwvB,IAAIxvB,EAAEmS,GAAG4B,EAAEd,EAAEhV,GAAGwrN,GAAIzpN,GAAG,IAAI4S,EAAE,IAAIgzJ,GAAI/lK,GAAG+S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAA0Bw7N,GAAI35N,EAAnB49K,GAAGC,GAAIjrK,GAAG,MAAc,GAAG3U,EAAEkU,EAAE,EAAG,IAAIE,EAAEY,EAAEhV,EAAEoU,EAAEpS,EAAEkS,EAAEE,IAAKk3M,GAAIvpN,EAAEmS,EAAE,GAAGnS,EAAEC,EAAEq7M,GAAGt7M,EAAEwvB,IAAIxvB,EAAEmS,EAAI,CAAC,CAG1a,SAASkuU,IAAIpgV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAc,GAAZ2vB,EAAEvvB,EAAEhC,EAAEkU,EAAElS,EAAEJ,EAAU,GAALI,EAAEkS,EAA8B,IAAxBtS,EAAE2vB,EAAEA,EAAErd,EAAEA,EAAEc,EAAEuc,EAAErd,EAAEA,EAAEA,EAAEA,EAAEqd,EAAYvxB,EAAE,EAAEqD,GAAVsR,EAAE3S,EAAEA,GAAU9B,OAAOF,EAAEqD,IAAIrD,EAAUqvO,GAAP9nO,EAAEoN,EAAE3U,GAAS4B,EAAEoT,QAASjT,EAAE89T,IAAI79T,GAAE,GAAOqtO,GAAIrtO,EAAEA,EAAE,GAAGuvB,EAAEA,EAAErd,EAAEA,EAAEnS,EAAE,IAAIstO,GAAIrtO,EAAEA,EAAE,GAAGuvB,EAAEA,EAAEA,EAAErd,EAAEA,EAAEqd,EAAExvB,EAAE,GAAGA,EAAE,IAAI+T,EAAEyb,EAAErd,EAAEA,EAAEA,EAAEA,EAAEqd,EAAKxvB,EAAE,GAAG,IAAG+T,GAAG/T,EAAE,GAAGC,EAAEuvB,EAAExvB,EAAE,IAAIC,EAAEuvB,GAAExvB,EAAE,GAAG,IAAI+T,GAAG/T,EAAE,GAAGC,EAAEuvB,GAAGxvB,EAAE,GAAGkzI,EAAK3/H,KAAKugB,IAAI9zB,EAAE,GAAG+T,GAAGu5N,GAAIrtO,EAAEA,EAAE,GAAGuvB,EAAEA,EAAErd,EAAEA,EAAEnS,EAAE,IAAIA,EAAE,GAAG+T,GAAG,EAAE/T,EAAE,IAAI,IAAU0D,EAAE,EAAE2O,GAAV0oB,EAAE96B,EAAEA,GAAU9B,OAAOuF,EAAE2O,IAAI3O,EAAUomL,GAAPtkL,EAAEu1B,EAAEr3B,GAAQ,MAAMk6K,GAAGp4K,EAAE,KAAK4tW,IAAK,CAC7a,SAASC,IAAIpzW,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAkB,KAAhBA,EAAE,IAAI62I,IAAM5qJ,EAAE,EAAM4S,EAAE,IAAIgzJ,GAAI3lK,EAAEkS,GAAGS,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,IAAImB,EAAE/T,GAAG+6B,EAAE96B,EAAEuvB,EAAErxB,OAAsF,IAA/E6B,EAAE,EAAEwF,EAAE,EAAEuO,EAAE9T,EAAEi+K,GAAGmV,IAAGsW,IAAI,GAAG1pM,EAAEkS,EAAEqd,EAAErxB,OAAO,GAAG,GAAGkU,EAAE,EAAE/Q,EAAE,EAAEyS,EAAEvO,EAAE04K,GAAGmV,IAAGsW,IAAI,GAAG51L,EAAE/T,EAAE,GAAG,GAAOwvB,EAAE,IAAIo2I,GAAI3lK,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAkD,KAAzCgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAMnsB,EAAErD,IAAI+T,EAAE9T,EAAEkS,EAAE9O,GAAGmC,IAAIlE,EAAE,EAAMrD,EAAE,IAAI2nK,GAAIzzJ,EAAElS,GAAGhC,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,SAASuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,KAAMoF,EAAEgP,IAAI0B,EAAEvO,EAAE9B,EAAEL,GAAG/B,IAA8D,OAAzDyS,EAAEyb,EAAE,IAAIi+I,GAAI15J,GAAGA,EAAE5B,EAAE4+M,GAAGh9M,EAAE/T,GApDpY,SAAaC,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAE,IAAIsR,EAAE,IAAIgzJ,GAAIzzJ,EAAEA,GAAGS,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAyB,IAAIkU,EAAE,IAAIuzJ,GAAxBgY,GAAGC,GAAIjrK,GAAG,IAAoB3S,GAAGoS,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAQ,CAA+B,IAA9BF,EAAE2/K,GAAGC,GAAIxrK,GAAG,IAAI/Q,EAAE,IAAIixK,GAAI7uK,EAAE,EAAM1D,EAAE,IAAI+uO,GAAG7hB,GAAGi1E,GAAIlkS,GAAGgC,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAAuBqpN,GAAlB75L,EAAEouJ,GAAGwtC,GAAGprN,GAAG,OAAgBqpN,GAAI75L,IAAIA,EAAEA,EAAEvxB,EAAEuxB,GAAGA,EAAExvB,EAAE/B,EAAEuxB,KAAYhqB,EAAEo4K,GAAG4qB,IAAIh5K,GAAG8tI,MAAM8hK,MAAM,IAAIn/T,GAAOyD,IAAGA,EAAE8B,EAAElE,EAAEkuB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,IAAG54K,GAAG9B,GAAGsyK,GAAI10K,EAAE,IAAIm1M,GAAIjnL,EAAEA,EAAEvxB,EAAEuxB,KAAI03L,KAAMnC,GAAIzjN,EAAErB,EAAEuvB,GAAGk8M,GAAIzrO,EAAEkS,EAAElU,EAAEoF,EAAE/B,EAAE,CAAE,CAoDRgyW,CAAIv/V,EAAE9T,GAAG8T,EAAEgnB,EAAEg2L,GAAGh9M,EAAE/T,GAnDzZ,SAAaC,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAE,IAAIsR,EAAE,IAAIgzJ,GAAIzzJ,EAAEA,GAAGS,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAyB,IAAIkU,EAAE,IAAIuzJ,GAAxBgY,GAAGC,GAAIjrK,GAAG,IAAoB3S,GAAGoS,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAQ,CAA+B,IAA9BF,EAAE2/K,GAAGC,GAAIxrK,GAAG,IAAI/Q,EAAE,IAAIixK,GAAI7uK,EAAE,EAAM1D,EAAE,IAAI+uO,GAAG7hB,GAAGm1E,GAAIpkS,GAAGgC,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAAuBqpN,GAAlB75L,EAAEouJ,GAAGwtC,GAAGprN,GAAG,OAAgBqpN,GAAI75L,IAAIA,EAAEA,EAAEvxB,EAAEuxB,GAAGA,EAAExvB,EAAE/B,EAAEuxB,KAAYhqB,EAAEo4K,GAAG4qB,IAAIh5K,GAAG8tI,MAAM8hK,MAAM,IAAIn/T,GAAOyD,IAAGA,EAAE8B,EAAElE,EAAEkuB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,IAAG54K,GAAG9B,GAAGsyK,GAAI10K,EAAE,IAAIm1M,GAAIjnL,EAAExvB,EAAE/B,EAAEuxB,KAAI03L,KAAMnC,GAAIzjN,EAAErB,EAAEuvB,GAAGk8M,GAAIzrO,EAAE86B,EAAE98B,EAAEoF,EAAE/B,EAAE,CAAE,CAmDaiyW,CAAIx/V,EAAE9T,GAAU8T,CAAC,CAC7a,SAASkzS,IAAIhnT,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAA4Q,IAA1QA,EAAE6iJ,GAAG0pB,GAAIrnM,EAAEJ,EAAEI,EAAEJ,EAAE2vB,EAAErxB,OAAO,GAAG,KAAK6B,EAAEC,EAAEoD,EAAE6vI,EAAK3/H,KAAKsgB,IAAI5zB,EAAEoD,EAAE8O,EAAES,GAAG3S,EAAE0S,EAAEugI,EAAK3/H,KAAKugB,IAAI7zB,EAAE0S,EAAEooB,GAAG96B,EAAE2S,EAAEsgI,EAAK3/H,KAAKugB,IAAI7zB,EAAE2S,EAAET,EAAES,GAAiB,GAAd3S,EAAEkS,EAAEqd,EAAErxB,OAAU,EAAE8B,EAAEhC,IAAIgC,EAAEE,EAAE+yI,EAAK3/H,KAAKsgB,IAAI5zB,EAAEE,EAAEgS,EAAE4oB,GAAG96B,EAAEuF,GAAG2M,EAAE4oB,GAAiB,GAAd96B,EAAEkS,EAAEqd,EAAErxB,OAAU,EAAE8B,EAAEhC,GAAGgC,EAAE86B,EAAEm4G,EAAK3/H,KAAKugB,IAAI7zB,EAAE86B,EAAE5oB,EAAE4oB,GAAGv1B,EAAEvF,EAAEJ,EAAE2vB,EAAErxB,OAAO,GAAG8B,EAAEJ,EAAE2vB,EAAErxB,OAAO,GAAG8B,EAAEhC,EAAE,EAAM+B,EAAE,IAAI4lK,GAAI3lK,EAAEJ,GAAGG,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAA0BqH,GAAfo4K,GAAGC,GAAI79K,GAAG,KAAUC,EAAEA,EAAED,EAAEwF,EAAEvF,EAAEA,EAAEA,EAAEuF,EAAEvF,EAAEkS,EAAEqd,EAAErxB,OAAO8B,EAAEhC,IAAIgC,EAAEkS,EAAEqd,EAAErxB,OAAO,GAAG8B,EAAEkS,EAAEqd,EAAErxB,QAAQ0kU,IAAI5iU,EAAEoS,EAAE,CAC7a,SAASsgV,IAAI1yV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAI3U,EAAEoU,EAAE/Q,EAAEyS,EAA2B,GAAM,OAA/BzS,EAAE86M,GAAG5T,IAAIr2L,GAAG2oJ,MAAMkoM,UAAoBliM,GAAIx/J,GAAGA,GAAG,CAAuD,IAAtDyS,EAAEmqK,GAAG8U,IAAIuyD,IAAI,GAAGpzO,EAAE3M,EAAEgqB,EAAErxB,OAAO,GAAG,GAAGyU,EAjjB9H,SAAa3S,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAIoN,EAAuC,IAArCpN,EAAEvF,EAAEuF,EAAEgqB,EAAErxB,OAAO6B,EAAEk+K,GAAGyS,IAAGivI,IAAI,GAAGp6T,EAAE,EAAE,GAAOoN,EAAE,IAAIgzJ,GAAI3lK,EAAEuF,GAAGoN,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAA0B6B,EAAf49K,GAAGC,GAAIjrK,GAAG,KAAST,GAAG,IAAIunK,GAAI,IAAIlqJ,EAAE,IAAIo2I,GAAI3lK,EAAEuvB,GAAGA,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAA0B6B,GAAjBmS,EAAEyrK,GAAGC,GAAIruJ,GAAG,MAASA,EAAErd,GAAG21M,GAAG31M,GAAGnS,EAAEmS,EAAEnS,EAAEmS,GAAG21M,GAAG31M,GAAG,OAAOnS,CAAC,CAijBxGwzW,CAAIrhW,GAAG3M,EAAE,IAAIk0K,GAAQrnK,EAAE,IAAIuzJ,GAAIzzJ,EAAE3M,GAAG6M,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,SAA0BqxB,EAAEmiU,IAAI1xV,EAArB29K,GAAGC,GAAIxrK,GAAG,KAAe,KAAK,KAAK0B,EAAEnB,MAASk9P,GAAItgP,EAAErd,GAAG6qM,GAAIx3M,EAAEgqB,EAAEhqB,EAAEgqB,EAAErd,EAAE3M,EAAEgqB,IAAI,GAAGhqB,EAAE2M,EAAE,EAAG,IAAInS,EAAE++P,IAAIv5P,EAAE,GAAGxF,EAAEmS,GAAGnS,EAAEA,EAAEwvB,GAAyB,IAAJuL,EAAE,EAAM98B,EAAE,IAAI2nK,IAA/Bp2I,EAAEouJ,GAAGohF,GAAIh/P,GAAG,MAAyBwF,GAAGvH,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAI5/K,GAAG,KAAOkU,EAAE4oB,IAAM,OAAOv1B,CAAC,CAAC,OAAOorQ,GAAGpyF,GAAGC,GAAGg1L,IAAG,GAAG3lB,IAAI,IAAI,EAAE,CAAC37U,IAAI,CAC9a,SAAS6kO,IAAI/2O,GAAG,IAAIkS,EAAInS,EAAEwF,EAAEu1B,EAAIr3B,EAAE,IAAIzD,EAAE2S,EAAE,CAA+B,GAA9BlP,EAAE,IAAI+uJ,GAA8B,OAA1BtgJ,EAAEmzR,KAAQrlS,EAAE65N,GAAG75N,EAAEkS,GAAc,CAAC,IAAInS,EAAE,IAAIg/K,GAAImM,GAAIlrL,IAAID,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAuBmpC,GAAI3kN,EAAEszO,IAApBp5D,GAAGwB,IAAIp/K,GAAG,MAAkBmS,EAAElS,EAAE0oN,GAAG1oN,GAASkS,EAAElS,EAAEi/K,IAAkB,CAAO,IAAN15K,EAAE9B,EAAEzF,GAAUgC,EAAE6T,IAAI7T,EAAE6T,EAAE,IAAIymL,GAAI2gD,IAAGj7O,EAAE,GAAG,KAA9B86B,EAAmC,IAAIikJ,GAAI/+K,EAAE6T,GAAIinB,EAAEv1B,GAAGu1B,EAAE98B,EAAEihL,OAAO15K,EAAG2+J,GAAIyZ,GAAGwB,IAAIrkJ,GAAG,KAAKv1B,GAAG6iN,GAAI3kN,IAAIzD,EAAE6T,IAAI7T,EAAE6T,EAAE,IAAIymL,GAAI2gD,IAAGj7O,EAAE,GAAG,KAAKA,EAAE6T,IAAIw5O,GAAI5pP,GAAGzD,EAAE2S,EAAE,IAAI8jS,GAAIz2S,EAAEyD,GAAGzD,EAAEhC,EAAE2/K,GAAGl6K,EAAEkP,EAAE,KAAU,MAAL3S,EAAEhC,IAAUgC,EAAEhC,EAAEivP,KAAKjtP,EAAEoD,EAAE,KAAK+nP,GAAInrP,GAAGkS,IAAI,CAAC,CAAC,OAAOlS,EAAE2S,CAAC,CAC9a,SAAS0tU,IAAIrgV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAIlU,EAAEM,EAAc,GAAZH,EAAEC,EAAEhC,EAAEuxB,EAAEvvB,EAAEJ,EAAU,GAALI,EAAEkS,EAAMA,EAAE0rT,IAAI59T,GAAE,GAAOstO,GAAIttO,EAAEA,EAAE,GAAGD,EAAEA,EAAEwvB,EAAExvB,EAAEmS,EAAE,IAAIo7N,GAAIttO,EAAEA,EAAE,GAAGD,EAAEA,EAAEA,EAAEC,EAAEuvB,EAAEvvB,EAAEkS,EAAE,GAAGA,EAAE,IAAkB4B,EAAZ/T,EAAEC,EAAEuvB,EAAExvB,EAAEwvB,EAAEvvB,EAASkS,EAAE,GAAG,IAAGA,EAAE,IAAIlS,EAAEuvB,EAAEzb,GAAG5B,EAAE,IAAGA,EAAE,GAAG,IAAI4B,GAAG5B,EAAE,GAAGlS,EAAEuvB,GAAGrd,EAAE,GAAG+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAE,GAAG4B,GAAGw5N,GAAIttO,EAAEA,EAAE,GAAGD,EAAEA,EAAEwvB,EAAExvB,EAAEmS,EAAE,IAAIA,EAAE,GAAG4B,GAAG,EAAE5B,EAAE,SAAiC,IAAxBhS,EAAEH,EAAEA,EAAEwvB,EAAExvB,EAAEH,EAAEG,EAAEC,EAAEuvB,EAAExvB,EAAEwvB,EAAEvvB,EAAYhC,EAAE,EAAEqD,GAAVsR,EAAE3S,EAAEA,GAAU9B,OAAOF,EAAEqD,IAAIrD,EAAUsvO,GAAP/nO,EAAEoN,EAAE3U,GAASkC,EAAEN,GAAI,IAAU6D,EAAE,EAAE2O,GAAV0oB,EAAE96B,EAAEA,GAAU9B,OAAOuF,EAAE2O,IAAI3O,EAAUomL,GAAPtkL,EAAEu1B,EAAEr3B,GAAQ,MAAMk6K,GAAGp4K,EAAE,KAAK4rT,IAAK,CAE/a,SAASzpG,IAAI1nN,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAwC,GAAtCA,EAAE+pN,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAG3M,EAAEo4K,GAAG39K,EAAE2S,EAAE,KAAKw5L,KAASxuB,GAAGzrK,EAAE,IAAIq1M,MAAM,IAAI50M,EAAE,EAAEA,EAAE3S,EAAEhC,IAAI2U,EAAU,GAAPmoB,EAAEv1B,EAAEoN,GAAM3U,EAAEiqN,GAAGntL,EAAEotL,OAAO51B,GAAGx3J,EAAEvL,GAAI,OAAO,OAAY,GAAM,MAAHA,EAAQ,CAAC,IAAI9rB,EAAE,EAAEA,EAAEzD,EAAEhC,IAAIyF,EAAU,GAAPq3B,EAAEv1B,EAAE9B,GAAMzF,EAAEiqN,GAAGntL,EAAEotL,OAAO51B,GAAG/iK,EAAEuL,EAAEggL,MAAO,OAAO,EAAM,GAAG/6M,EAAG,IAAI4S,EAAE,EAAEA,EAAE3S,EAAEhC,IAAI2U,EAAU,GAAPmoB,EAAEv1B,EAAEoN,GAAM3U,EAAEiqN,GAAGntL,EAAEotL,OAAOnN,GAAGxrL,KAAKwrL,GAAGyZ,GAAIx0N,EAAE29K,GAAG7iJ,EAAEggL,KAAK,MAAO,OAAO,CAAO,MAAM,IAAInoM,EAAE,EAAEA,EAAE3S,EAAEhC,IAAI2U,EAAU,GAAPmoB,EAAEv1B,EAAEoN,GAAM3U,EAAEiqN,GAAGntL,EAAEotL,OAAe,MAARptL,EAAEggL,KAAY,OAAO,EAAQ,OAAO,CAAK,CAChb,SAAS24J,IAAIzzW,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAkC,GAAhCA,EAAE21M,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAGS,EAAEgrK,GAAG39K,EAAE2S,EAAE,KAAQ60M,IAAIxnN,EAAEuF,EAAE2M,GAAG,CAAC,GAAGA,EAAEu1M,OAAM3sL,EAAEqjM,IAAIn+N,EAAEkS,EAAEnS,EAAE8pL,GAAG33K,EAAE,KAAwB,IAAlByrK,GAAGzrK,EAAE,IAAIsjK,GAAGmyC,QAAe,GAAG7sL,GAAGvL,EAAG,MAAM2jJ,GAAI,IAAI2O,GAAIuhI,MAAW,IAAJ79S,EAAE,EAAMvH,EAAE,EAAEA,EAAEgC,EAAEhC,IAAIA,EAAU,GAAPyF,EAAEkP,EAAE3U,GAAMoU,EAAE61M,GAAGxkN,EAAEykN,MAAM,CAAC,GAAG3iN,GAAGgqB,EAAG,OAAOouJ,GAAGwqC,IAAInoN,EAAEhC,GAAGmuM,KAAMxuB,GAAGzrK,EAAE,IAAIq1M,KAAK5pC,GAAG59K,EAAE,IAAI6nN,GAAI11M,EAAEnS,KAAK,MAAMwF,CAAC,CAAE,MAAM2tK,GAAI,IAAIgO,GAAI65C,IAAIxrM,EAAEyrM,IAAIz1N,GAAG,CAAM,IAAIvH,EAAE,EAAEA,EAAEgC,EAAEhC,IAAIA,EAAU,GAAPyF,EAAEkP,EAAE3U,GAAMoU,EAAE61M,GAAGxkN,EAAEykN,MAAO,OAAO/b,KAAMxuB,GAAGzrK,EAAE,IAAIq1M,KAAK9jN,EAAEA,EAAEq3M,KAAM,OAAO,IAAK,CACjb,SAASyzH,IAAIvuU,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAM,IAAJA,EAAE8rB,EAAM5c,EAAE,IAAIgzJ,GAAIzzJ,EAAElS,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAQ,CAA+B,GAA9B48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAKpN,EAAEo4K,GAAG7iJ,EAAE5oB,EAAE,IAAOmjS,GAAGr1S,EAAEkS,EAAEqd,EAAEhqB,EAAE2M,EAAEqd,EAAEhqB,EAAE2M,EAAEA,IAAI,GAAGmjS,GAAG9vS,EAAE2M,EAAEqd,EAAEvvB,EAAEkS,EAAEqd,EAAEvvB,EAAEkS,EAAEA,IAAI,GAAGmjS,GAAGr1S,EAAEkS,EAAEnS,EAAEwF,EAAE2M,EAAEnS,EAAEwF,EAAE2M,EAAElS,IAAI,GAAGq1S,GAAG9vS,EAAE2M,EAAEnS,EAAEC,EAAEkS,EAAEnS,EAAEC,EAAEkS,EAAElS,IAAI,GAAG,GAA0B,GAAvBq1S,GAAG9vS,EAAE2M,EAAEqd,EAAEvvB,EAAEkS,EAAEqd,EAAEvvB,EAAEkS,EAAEA,IAAOnS,EAAEC,EAAE,GAA0B,GAAvBq1S,GAAG9vS,EAAE2M,EAAEqd,EAAEhqB,EAAE2M,EAAEA,EAAElS,EAAEkS,EAAEqd,IAAOxvB,EAAEC,EAAE,GAA0B,GAAvBq1S,GAAG9vS,EAAE2M,EAAEnS,EAAEC,EAAEkS,EAAEnS,EAAEC,EAAEkS,EAAElS,IAAOD,EAAEmS,EAAE,GAA0B,GAAvBmjS,GAAG9vS,EAAE2M,EAAEnS,EAAEwF,EAAE2M,EAAElS,EAAEA,EAAEkS,EAAEnS,IAAOA,EAAEmS,EAAE,EAAE,CAACzO,EAAE,EAAE,KAAK,OAAOA,EAAEwvI,EAAK3/H,KAAKsgB,IAAInwB,EAAEw9U,IAAIjhV,EAAEuF,EAAExF,IAAI0D,EAAEwvI,EAAK3/H,KAAKsgB,IAAInwB,EAAE8qU,IAAIvuU,EAAE86B,EAAEr3B,EAAE1D,GAAG,CAAC,OAAO0D,CAAC,CAClb,SAASiwW,IAAI1zW,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,GAAGgC,EAAEkS,EAAE,EAAG,MAAMghK,GAAI,IAAI2O,GAAI,wEAA6K,IAAlGynC,GAAS,GAALtpN,EAAEkS,GAAqB4sK,GAAI5sK,GAAlC3M,EAAeo4K,GAAG39K,EAAEA,EAAEA,EAAEuvB,EAAE,IAAYvvB,EAAEuF,EAAE2M,GAAGlU,EAAE,IAAI0yN,KAAMx+M,EAAElS,IAAIkS,EAAElS,EAAE,IAAIg/K,GAAI7qJ,IAAGjiB,EAAE,IAAIA,EAAElS,IAAI2S,EAAEmsP,IAAI9+P,EAAE,GAAS2S,EAAE3S,EAAEA,EAAEkS,EAAE,GAAGzO,EAAEk6K,GAAGohF,GAAIpsP,GAAG,GAAM3U,EAAEuH,GAAGvH,EAAEA,EAAEihL,KAAM1vJ,EAAEouJ,GAAGwB,IAAInhL,GAAG,MAAaurL,KAAmB0jI,IAAIjvT,EAA1BuxB,EAAW,IAAI8hI,KAAgB6tB,GAAI3vJ,EAAE9rB,EAAEzD,EAAEyD,EAAEyO,GAAG,KAAMlU,EAAEuH,GAAGvH,EAAEA,EAAEihL,MAAME,IAAInhL,GAAG6uU,IAAI7uU,GAAMsrN,GAAS,GAALtpN,EAAEkS,GAAqBktK,GAAIltK,GAAlC4oB,EAAe6iJ,GAAG39K,EAAEuvB,EAAErd,EAAEqd,EAAE,IAAYvvB,EAAE86B,EAAE5oB,EAAE,CAClb,SAASgzO,IAAIllP,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAM,IAAJkuB,EAAE,EAAMhqB,EAAE,IAAIogK,IAAK83C,GAAI,EAAEz9M,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAE,GAAG,MAAM5c,EAAET,EAAEE,GAAG7M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAIr4K,GAAG,IAAMnC,EAAEmsB,IAAoE,IAAhErd,IAAIutK,MAAMM,KAAK+kC,GAAI9kN,EAAE,IAAI+mJ,IAAK+9D,GAAI9kN,EAAE,IAAIgnJ,IAAKvjJ,EAAE,EAAEpC,EAAErB,EAAEuvB,EAAErxB,OAAO,EAAQuF,EAAEpC,GAAMo8M,GAAIh6M,EAAEzD,EAAEuvB,EAAErxB,QAAbyU,EAAqBgrK,GAAG39K,EAAEuvB,EAAE9rB,GAAG,KAASg6M,GAAIp8M,EAAErB,EAAEuvB,EAAErxB,QAAbkU,EAAqBurK,GAAG39K,EAAEuvB,EAAEluB,GAAG,KAAMy5B,EAAE5oB,GAAG6tK,IAAIptK,EAAE4c,EAAE5c,EAAE3S,EAAEhC,EAAEkU,GAAG6tK,IAAI3tK,EAAEpS,EAAEoS,EAAEmd,EAAE8jN,GAAI1gO,EAAET,GAAGqtK,KAAMI,KAAK7kJ,GAAGu4M,GAAIjhO,EAAEF,EAAEstK,IAAIxhL,KAAKyF,IAAIpC,EAAEoC,GAAGpC,GAAGgyO,IAAK51B,GAAIh6M,EAAEzD,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAE9rB,GAAG,MAAMyO,GAAGqtK,KAAM0lE,KAAK,KAAK,CACpb,SAAS0uH,IAAI3zW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAI+6B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAgS,OAAtRkU,EAAE9T,EAAEA,EAAEhC,EAAEgC,EAAEA,EAAE2S,EAAE,EAAEK,EAAEhT,EAAEA,EAAEhC,EAAEgC,EAAEA,EAAE2S,EAAE,EAA0BlP,EAAE,IAAIwxM,GAA5B/iM,EAAElU,EAAEkU,EAAES,EAAE,EAAIT,EAAEE,EAAEF,EAAE4oB,EAAE,IAAiB1oB,EAAEurK,GAAG26B,IAAIpmM,GAAG6tJ,MAAMu8I,MAAM,IAAKt8S,EAAEoS,EAAEpS,EAAE8T,EAAE1B,EAAEF,EAAEE,EAAEF,EAAEc,EAAE8nB,GAAGr3B,EAAEyO,EAAEE,EAAEF,IAAIzO,EAAEzD,EAAEoS,EAAEpS,GAAGD,EAAE0D,EAAEyO,EAAE4oB,EAAEr3B,EAAEzD,EAA0BhC,EAAE,IAAIi3M,GAA5B1lL,EAAEvxB,EAAEuxB,EAAE5c,EAAE,EAAI4c,EAAEnd,EAAEmd,EAAEuL,EAAE,IAAiBz5B,EAAEs8K,GAAG26B,IAAI/oL,EAAE+sR,KAAK,IAAKt8S,EAAEqB,EAAErB,EAAE8T,EAAEzS,EAAE6Q,EAAE7Q,EAAE6Q,EAAEc,EAAEL,GAAG3U,EAAEkU,EAAE7Q,EAAE6Q,IAAIlU,EAAEgC,EAAEqB,EAAErB,GAAeJ,GAAGG,GAAb/B,EAAEkU,EAAES,EAAE3U,EAAEgC,KAAW2S,EAAEmoB,KAAM1oB,EAAEpS,EAAEJ,GAAG6D,EAAEzD,EAAEJ,GAAGA,EAAEwS,EAAEpS,GAAGJ,EAAE6D,EAAEzD,MAAwBqB,EAAErB,EAAEJ,GAAG5B,EAAEgC,EAAEJ,GAAGA,EAAEyB,EAAErB,GAAGJ,EAAE5B,EAAEgC,EAA2B,CAEpb,SAAS4zW,IAAI5zW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAMsG,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAEA,EAAE5N,KAAKirB,EAAEA,EAAEjrB,KAAKiB,EAAEorQ,GAAGpyF,GAAGC,GAAGq1L,IAAG,GAAG11L,IAAI,IAAI,EAAE,CAAC,IAAIyJ,GAAI5nL,EAAEkS,GAAG,IAAI01K,GAAI11K,EAAEqd,GAAG,IAAIq4J,GAAIr4J,EAAEvvB,MAAMsE,KAAKw2B,EAAE61O,GAAGpyF,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC7zL,EAAEkS,EAAEqd,KAAKjrB,KAAKvE,GAAGA,EAAE86N,GAAI5U,GAAI3hN,KAAK4N,GAAG5N,KAAKtE,GAAGuF,EAAEs1N,GAAI5U,GAAI3hN,KAAKirB,GAAGjrB,KAAKtE,GAAG86B,EAAE+/L,GAAI5U,GAAI3hN,KAAKirB,GAAGjrB,KAAK4N,GAAGS,EAAE5S,EAAEC,GAAGsE,KAAKtE,EAAEA,EAAEsE,KAAK4N,EAAElS,GAAGD,EAAEmS,GAAG5N,KAAKtE,EAAEkS,EAAE5N,KAAK4N,EAAEA,GAAGzO,EAAE8B,EAAEvF,GAAGsE,KAAKtE,EAAEA,EAAEsE,KAAKirB,EAAEvvB,GAAGuF,EAAE2M,GAAG5N,KAAKtE,EAAEkS,EAAE5N,KAAKirB,EAAErd,GAAGlU,EAAE,GAAG+B,EAAEC,EAAE86B,EAAE5oB,EAAEnS,EAAEmS,EAAE4oB,EAAE96B,GAAuC,IAAIi1M,IAArC1vM,EAAE2M,EAAES,EAAE5S,EAAEmS,EAAEzO,GAAGzF,GAAK+B,EAAEC,EAAEyD,EAAE8B,EAAEvF,EAAE2S,GAAG3U,GAAe,CACvb,SAAS81W,IAAI9zW,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAIqD,EAAEyS,EAAEd,EAAI9S,EAA4B,GAA1B8S,EAAE,IAAIguK,GAAGhhL,EAAEoD,GAAG+0M,GAAGjmM,EAAE4hL,IAAI9gL,GAAMuc,KAAMvvB,EAAE86B,EAAOuvN,GAAIrqP,EAAE86B,GAAX,MAAe96B,EAAEqhC,KAAkC,IAAnB82K,GAAGjmM,EAAE,OAAd7Q,EAAE,IAAIyhK,IAAkBr/J,EAAE,EAAMvD,EAAE,IAAIolK,IAAMtlK,EAAE86B,EAAOuvN,GAAIrqP,EAAE86B,GAAX,MAAe5oB,EAAEypM,MAAMz7M,EAAEgS,EAAEqpM,MAAsBznM,EAAE,IAAIktK,GAAnB8C,GAAG5jL,EAAEgS,EAAEupM,OAAkBk6B,GAAGt0O,EAAEoC,GAAGmyO,GAAGv0O,EAAEoC,EAAEqQ,KAAKrQ,EAA+C,GAAzC1D,GAAiBo4M,GAAGjmM,EAAE,gBAAjB,IAAI0wJ,GAAG5iK,EAAEgU,KAA+Bq2O,GAAIrqP,EAAEA,GAAGA,EAAEqhC,KAA+B,IAAzB1uB,EAAE,IAAImwJ,GAAGq1C,GAAGjmM,EAAEu7K,IAAI96K,GAAGlP,EAAE,EAAMq3B,EAAE,IAAIwqI,GAAI+kF,GAAIrqP,EAAEA,GAAGkS,EAAEypM,MAAM7gL,EAAE5oB,EAAEqpM,MAAOh2M,EAAEo4K,GAAG7iJ,EAAE5oB,EAAEupM,KAAK,MAAMz9M,EAAE,IAAIs/K,GAAGq4D,GAAGhjO,EAAElP,GAAGmyO,GAAGjjO,EAAElP,EAAEzF,GAAG81W,IAAIvuW,EAAEvH,EAAEuxB,EAAExvB,KAAK0D,CAAG,CACvb,SAASsvV,IAAI/yV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAsM,IAApMq3B,EAAE96B,EAAEuvB,EAAE5c,EAAE3S,EAAED,EAAEsyP,GAAIryP,EAAE,MAAMoyP,GAAIpyP,EAAE,MAAMkS,GAAG+vK,GAAIk6B,GAAG5T,IAAI51L,GAAGq1L,MAAM2mK,QAAQt8G,GAAIryP,EAAE0uW,IAAI/7V,EAAE3U,GAAGg8Q,KAAMG,MAAM16F,MAAMC,OAAO2yE,GAAIryP,EAAE2S,GAAGT,GAAG+vK,GAAIk6B,GAAG5T,IAAIztK,GAAGktK,MAAM4mK,QAAQx8G,GAAIpyP,EAAE0uW,IAAI5zU,EAAE98B,GAAGg8Q,KAAME,MAAMz6F,MAAMG,OAAOwyE,GAAIpyP,EAAE86B,GAAO/6B,EAAE,IAAI4lK,GAAI3lK,EAAEkS,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,KAAIwF,EAAEo4K,GAAG4qB,IAAIh5K,GAAG8tI,MAAMq9J,MAAM,QAAS/7C,KAAMzkP,KAAK6tK,GAAIx4K,EAAEmrS,IAAI57C,KAAKv5Q,GAAGu5Q,KAAK/2E,GAAIx4K,EAAEmrS,IAAIxgS,KAAKz2B,EAAEw+K,GAAIk6B,GAAG5T,IAAIvoM,GAAGgoM,MAAM+oC,QAAQhpC,GAAI/nM,EAAE+wO,KAAKrjB,MAAMjqN,IAAezD,EAAEA,EAAEi4S,GAAIj4S,EAAEA,EAAE,CAGxb,SAASmrW,IAAInrW,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAA0C,IAAxCO,EAAE,IAAIohW,IAAI/zW,EAAEkS,EAAEqd,GAAGvxB,EAAE,IAAIurN,GAAIxpN,EAAE,GAAGwF,GAAE,EAAYvH,EAAEkU,EAAElU,EAAE+B,EAAEk/K,MAASqqC,GAAItrN,EAAEkU,EAAElU,EAAE+B,EAAEk/K,OAAfx7K,EAAqBk6K,GAAG3/K,EAAE+B,EAAEs7M,GAAGr9M,EAAEuxB,EAAEvxB,EAAEkU,KAAK,OAAYA,GAAGzO,GAAG8rB,EAAGi6L,GAAIxrN,IAAYuH,GAAG+6K,GAAIupC,GAAIpmN,EAAEkP,EAAElP,EAAE1D,EAAE,IAAIC,GAAGsgL,GAAIupC,GAAIl3M,EAAEA,EAAEA,EAAE5S,EAAE,IAAIC,IAAIspN,GAAItrN,EAAEkU,EAAE,GAAGlU,EAAEgC,EAAEq7M,GAAGr9M,EAAEuxB,IAAIvxB,EAAEkU,GAAGwnN,GAAI17N,EAAE2U,GAAGpN,GAAE,GAAe9B,EAAE8B,GAAG9B,EAAE8B,EAAE05K,KAAK,IAAGnkJ,IAAIr3B,EAAE8B,IAAI9B,EAAE8B,EAAE,IAAI+sK,IAAK7uK,EAAE8B,GAAGy0P,GAAG9nP,GAAGE,IAAI3O,EAAE8B,IAAI9B,EAAE8B,EAAE,IAAI+sK,IAAK7uK,EAAE8B,GAAGy0P,GAAGzqO,IAAMuL,GAAG1oB,OAAK3O,EAAE8B,IAAI9B,EAAE8B,EAAE,IAAI+sK,IAAK7uK,EAAE8B,GAAGsiN,GAAGl1M,KAAKA,EAAE4c,IAAIhqB,IAAIxF,EAAEwvB,EAAExvB,EAAEwvB,EAAErxB,QAAQyU,EAAO,CAC3b,SAASqhW,IAAIh0W,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,GAAGohN,GAAIxjC,GAAG4qB,IAAIvoM,GAAGq9J,MAAMykI,MAAM,KAAM,IAAIvyQ,EAAE,IAAIo2I,GAAI3lK,EAAEoS,GAAGmd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,SAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAMnd,IAAIqtK,MAAMqnB,QAAO/mM,EAAE49K,GAAG4qB,IAAIr2L,GAAG81L,MAAM2qE,MAAM,KAAMhU,IAAIzsP,EAAEyrK,GAAG4qB,IAAIxoM,EAAEgpM,KAAK,KAAK72L,EAAE3M,EAAEgqB,EAAErxB,OAAOgU,EAAES,EAAE4c,EAAErxB,OAAO,EAAEygQ,IAAIzsP,EAAEwtK,KAAKi/E,IAAIzsP,EAAE0tK,UAAW,CAAC,IAAIrwJ,EAAE,IAAIo2I,GAAI3lK,EAAEoS,GAAGmd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAIxvB,EAAE49K,GAAG4qB,IAAIr2L,GAAG81L,MAAM2qE,MAAM,KAAMhU,IAAIzsP,EAAEyrK,GAAG4qB,IAAIxoM,EAAEgpM,KAAK,KAAK72L,EAAE3M,EAAEgqB,EAAErxB,OAAOgU,EAAES,EAAE4c,EAAErxB,OAAO,EAAEygQ,IAAIzsP,GAAGutK,MAAMC,MAAMi/E,IAAIzsP,GAAGutK,MAAMG,MAAMmoB,GAAI/nM,EAAE8hS,KAAKxM,MAAME,KAAK,CAAC,CAC5b,SAASy+E,IAAIj0W,GAAG,IAAMuvB,EAAExvB,EAAE,OAAOC,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAGD,EAAE,KAAK0jG,OAAOgjH,aAAazmN,EAAEy8L,KAAK,MAAM,KAAK,GAAG18L,EAAE,MAAM,MAAM,KAAK,GAAGA,EAAE,MAAM,MAAM,KAAK,GAAGA,EAAE,MAAM,MAAM,KAAK,EAAEA,EAAE,MAAM,MAAM,KAAK,GAAGA,EAAE,MAAM,MAAM,QAAgDA,EAArCC,EAAE,GAAqC,MAAM83L,GAAvCvoK,EAAW,KAANvvB,IAAI,GAAQtB,SAAS,IAAmB6wB,EAAErxB,OAAO,EAAEqxB,EAAErxB,QAAgB8B,GAAG2nN,IAAsC,MAAM7vB,GAAvCvoK,EAAW,KAANvvB,IAAI,GAAQtB,SAAS,IAAmB6wB,EAAErxB,OAAO,EAAEqxB,EAAErxB,QAAe,GAAGulG,OAAOgjH,aAAazmN,EAAEy8L,KAAM,OAAO18L,CAAC,CAC5b,SAAS44V,IAAI34V,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAc,GAAZnB,EAAE3S,EAAEuF,EAAc,IAAZvH,EAAEkU,EAAE3M,GAAW,OAAOvF,EAAE,GAAM,GAAH2S,EAAM,OAAY,GAALT,EAAE3M,EAAK2M,EAAE,IAAIkhO,IAAKlhO,EAAE3M,EAAE2M,EAAEnS,EAAEmS,EAAElS,GAAe,IAAZ86B,EAAE96B,EAAED,IAAE0D,EAAEyO,EAAEnS,IAAU,EAAuE,OAApEwvB,EAAEqpK,GAAI54L,EAAEA,EAAE,GAAG64L,KAAK94L,EAAE64L,GAAI1mL,EAAElS,EAAE,GAAG64L,KAAKlmL,EAAE,IAAI4c,EAAEy6P,GAAIz6P,IAAIvxB,EAAE,IAAI+B,EAAEiqR,GAAIjqR,IAAW0tR,IAAItc,GAAI5hP,EAAExvB,IAAmC,IAAO,IAAtCwF,EAAEu1B,GAAGr3B,EAAEq3B,EAAEr3B,EAAE,GAAG,EAAEw2S,GAAIj6S,EAAEA,EAAEkS,EAAElS,EAAE86B,IAAahnB,GAAG9V,EAAEqD,EAAEsR,GAAG3U,EAAEkzQ,GAAIh/P,EAAElS,EAAEyD,EAAEzD,EAAEA,EAAE86B,GAAGskP,GAAIltQ,EAAElS,EAAEyD,EAAEzD,EAAEA,EAAE86B,QAAY,GAAJhnB,EAAEnB,EAAKA,GAAG3U,EAAE,CAAC,GAAM,GAAHuH,EAAM,OAAOw9M,MAAMmrE,IAAI7sR,EAAE6vQ,GAAIlxQ,EAAEA,EAAE86B,EAAE5oB,EAAElS,EAAEyD,EAAE,MAAMpC,EAAE+9Q,GAAIp/Q,EAAEA,EAAE86B,EAAE5oB,EAAElS,EAAEyD,GAAmC,OAAP42P,GAAxBjoP,EAAE,IAAIghO,GAAIt/N,EAAEzS,EAAEnD,OAAOmD,IAAiB+Q,CAAC,CAC7b,SAAS8hW,IAAIl0W,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAgC,IAA9BrO,KAAKiB,EAAE,IAAI+sK,GAAIhuK,KAAKtE,EAAE,IAAIsyK,GAAQ/iJ,EAAEvvB,EAAEkS,EAAE,EAAEqd,EAAE,EAAEA,IAAKkjM,GAAGzyN,EAAE,EAAE29K,GAAGoiG,IAAG//Q,EAAE,GAAG,IAAI,GAAGA,EAAEkS,EAAE,EAAG,MAAMghK,GAAI,IAAI2O,GAAI,2DAAqJ,IAArFv9K,KAAK4N,EAAE,EAAE5N,KAAKvE,GAAE,EAAKuE,KAAKirB,GAAE,EAjdjO,SAAavvB,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,GAAGT,EAAE,EAAElS,EAAEkS,EAAG,MAAMghK,GAAI,IAAI2O,GAAI,wEAA8E,IAAN7hL,EAAE86B,EAAE,EAAMv1B,EAAE,EAAEA,EAAEvF,EAAEkS,EAAE3M,IAAKwwK,GAAI/1K,EAAEuF,EAAE,GAAmB,IAAJgqB,EAAZ5c,EAAET,EAAE,EAAE,EAAElS,EAAEkS,EAAU4oB,EAAE,EAAEA,EAAEnoB,EAAEmoB,IAAKi7I,GAAI/1K,EAAEuF,EAAEu1B,EAAEvL,GAAG,GAAGvvB,EAAED,EAAG,IAAIA,EAAE,EAAEA,EAAEC,EAAEkS,EAAEnS,IAAKg2K,GAAI/1K,EAAEuF,EAAE,EAAI,CAidxB4uW,CAAI7vW,KAAKtE,EAAEkS,EAAE5N,KAAK4N,EAAE,GAAGS,EAAE,IAAI2/J,GAAIx3I,EAAE,IAAI6qI,GAAIrhK,KAAKiB,GAAO2M,EAAE,EAAEA,EAAE5N,KAAK4N,EAAE,EAAEA,IAAK6jK,GAAIpjK,EAAE4tK,GAAG3C,GAAI9iJ,KAAK,IAAIv1B,EAAEu5P,IAAI9+P,EAAE,GAAGuF,EAAE2M,GAAG3M,EAAExF,EAAEwvB,GAAIxvB,EAAE49K,GAAGohF,GAAIx5P,GAAG,GAAGwwK,GAAIpjK,EAAE4tK,GAAG3C,GAAI9iJ,KAAKi7I,GAAIzxK,KAAKtE,EAAE,IAAIutP,GAAIxtP,EAAE4S,IAAI8qM,GAAI,EAAE9qM,EAAE4c,EAAErxB,QAAQyU,EAAE4c,EAAE/N,OAAO,EAAE,EAAI,CAC7b,SAAS4yV,IAAIp0W,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAI+6B,EAAEnoB,EAAElP,EAAI2O,EAAE/Q,EAAE,IAAIy5B,EAAE,IAAI6qI,GAAI3lK,EAAEkS,GAAG4oB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAyB,IAAIuF,EAAE,IAAIkiK,GAAxBgY,GAAGC,GAAI9iJ,GAAG,IAAoB96B,GAAGyD,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAmN,KAA1MyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAASpC,IAAI49P,MAAMk4B,OAAS/kR,EAAEurK,GAAGwtC,GAAG,IAAI2jB,GAAG7hB,GAAGi1E,GAAIvvR,GAAG3S,EAAE27M,KAAK,IAAIpoE,KAAM,IAAIlyI,EAAEs8K,GAAGwtC,GAAG,IAAI2jB,GAAG7hB,GAAGm1E,GAAIzvR,GAAG3S,EAAE27M,KAAK,IAAIpoE,KAAM,IAAiEm2M,IAAI/2U,EAAhEsvK,GAAIk6B,GAAG5T,IAAIn2L,GAAG41L,MAAM+oC,SAAU9uD,GAAIk6B,GAAG5T,IAAIlnM,EAAE0vO,OAAUwiE,GAAIrhS,GAANA,IAAsBnS,EAAE,IAAI+uO,GAAG7hB,GAAGm1E,GAAIzvR,GAAG3S,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAA2D+xS,GAAtDviR,EAAEouJ,GAAGwtC,GAAGprN,GAAG,IAAMkiL,GAAIk6B,GAAG5T,IAAIh5K,GAAGy4K,MAAM+oC,QAAQwiE,GAAIrhS,GAAGA,EAAa,CAC9b,SAASykU,IAAI32U,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAMoN,EAAElP,EAAE,GAAG8rB,EAAEuL,GAAG5oB,EAAEhS,GAAGqvB,EAAEuL,GAAG5oB,EAAE4oB,GAAO,GAAJ5oB,EAAElS,GAAOuvB,EAAEuL,GAAO,IAAJ5oB,EAAElS,GAAOuvB,EAAEuL,EAAE,CAAmC,IAAlCnoB,EAAEgrK,GAAG0pB,GAAIn1L,EAAEtS,EAAEsS,EAAEtS,EAAE2vB,EAAErxB,OAAO,GAAG,MAAUqH,EAAEoN,EAAE5S,EAAEwvB,EAAE5c,EAAEpN,GAAGxF,IAAM49K,GAAG0pB,GAAIn1L,EAAEtS,EAAEsS,EAAEtS,EAAE2vB,EAAErxB,OAAO,GAAG,KAAO48B,EAAE96B,EAAE86B,EAAEvL,EAAEuL,GAAG96B,EAAEkS,GAAiB,GAAdlS,EAAEA,EAAEuvB,EAAErxB,QAAqB,OAAT4oT,GAAI50S,EAAEqd,IAAU,EAAU,GAAGrd,EAAE2B,EAAE0b,EAAE5c,GAAG5S,IAAImS,EAAE+B,EAAE/B,EAAEnS,EAAEwvB,EAAEuL,EAAEv1B,GAAGvF,EAAEkS,GAAiB,GAAdlS,EAAEA,EAAEuvB,EAAErxB,QAA+I,OAAnI63K,GAAI7jK,EAAEA,EAAEqd,GAAG9rB,EAAEk6K,GAAG0pB,GAAIn1L,EAAEtS,EAAEsS,EAAEtS,EAAE2vB,EAAErxB,OAAO,GAAG,KAAK63K,GAAI7jK,EAAEtS,EAAE,IAAI4vP,GAAIt9O,EAAE2B,EAAEpQ,EAAEq3B,EAAEr3B,EAAEzD,EAAEkS,EAAElU,EAAEkU,EAAElU,IAAI+oT,IAAIppI,GAAG0pB,GAAIn1L,EAAEtS,EAAEsS,EAAEtS,EAAE2vB,EAAErxB,OAAO,GAAG,KAAKqxB,GAAGy3R,IAAI90S,EAAEqd,IAAU,CAAK,CAAC,OAAO,CAAK,CAC/b,SAAS8kV,IAAIr0W,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,OAAG3S,EAAEmkT,MAAM5+S,EAAE,KAAKu1B,EAAE96B,EAAEokT,KAAKrkT,EAAEC,EAAEskT,GAAG,EAAE3xS,EAAEk6Q,GAAI7sR,EAAEkS,EAAEqd,GAAGA,EAAErd,EAAE4oB,GAAM96B,EAAE+mV,QAAQ/mV,EAAEwlU,MAAS,MAAH7yT,EAAQ2/K,GAAG3/K,EAAE4c,GAAGwrL,GAAGpoM,KAAKooM,GAAGxrL,KAAQ,MAAH5c,IAAUpN,EAAEvF,EAAEmoV,GAAGx1U,EAAEpN,IAAIA,EAAEvF,EAAE+gK,GAAGxxI,EAAEhqB,GAAGvF,EAAE6sB,OAAOtnB,EAAEvF,EAAEs0W,GAAG3hW,EAAE4c,EAAEhqB,IAAQA,GAAgBA,EAAE+4N,GAAGv+N,GAAGwF,EAAEymL,MAAvBhsL,EAAEu6P,GAAGx6P,KAA6BC,EAAE6sB,OAAOtnB,EAAEvF,EAAEs0W,GAAG3hW,EAAE4c,EAAEhqB,IAAQA,GAAgBA,EAAE+4N,GAAGv+N,GAAGwF,EAAEymL,MAAvBhsL,EAAEu6P,GAAGx6P,IAA+B4S,IAAOA,EAAEk6Q,GAAI7sR,EAAEkS,EAAEqd,GAAMvvB,EAAE+mV,QAAQ/mV,EAAEwlU,MAAS,MAAH7yT,EAAQ2/K,GAAG3/K,EAAE4c,GAAGwrL,GAAGpoM,KAAKooM,GAAGxrL,MAAKhqB,EAAE,KAAQ,MAAHoN,IAAUpN,EAAEvF,EAAEmoV,GAAGx1U,EAAE,QAAOpN,EAAEvF,EAAE+gK,GAAGxxI,EAAEhqB,KAAQA,EAAEymL,MAAYr5K,EAAE,CAC/b,SAASu3L,IAAGlqM,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAEF,GAAG,GAAMlS,EAAEgU,EAAEg2L,YAAY93L,KAAGnS,EAAE,IAAIkzI,EAAKl1H,KAAK/d,EAAEgU,EAAEsnG,YAAao0I,QAAQ3vP,EAAEypM,UAAU,IAAG/lM,EAAEzD,EAAEgU,EAAEg3L,oBAAoBjrM,EAAEirM,qBAAyB,IAAGhtM,EAAEyF,EAAE,GAAG,EAAE2O,EAAE3O,EAAE,GAAG8B,EAAEvF,EAAEgU,EAAEw1L,UAAYxpM,EAAEgU,EAAEg2L,WAAahsM,GAAG,MAAMuH,EAAEu1B,EAAE,IAAIm4G,EAAKl1H,KAAK/d,EAAEgU,EAAEq1L,cAAcrpM,EAAEgU,EAAEu1L,WAAWhkM,EAAE2M,EAAElU,EAAEgC,EAAEgU,EAAEugW,aAAaniW,EAAEpS,EAAEgU,EAAEwgW,aAAax0W,EAAEgU,EAAEygW,mBAAmBz0W,EAAEgU,EAAEipM,QAAQniL,EAAEwgF,aAAY3oG,EAAE3S,EAAEgU,EAAEsnG,UAAUt7G,EAAEgU,EAAEipM,QAAQtqM,EAAE,MAAS3S,EAAEgU,EAAEg2L,YAAY93L,GAAGlS,EAAEgU,EAAEipM,QAAQtqM,EAAE,CACnc,SAAS+hW,IAAI10W,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAwC,GAApC+mQ,IAAI3vR,EAAE,2BAA2B,GAAoB,GAAdlS,EAAEkS,EAAEqd,EAAErxB,OAAsI,GAAxF,OAArBqH,EAAE,IAAIokV,IAAI3pV,IAAQhC,IAAUuH,EAAEvH,EAAE0mS,GAAIn/R,EAAE,IAAI6iJ,KAAoB74H,EAAd+wJ,GAAI/6K,EAAEvH,GAAGuH,EAAEu1B,GAAa,MAALv1B,EAAEvH,IAAUuH,EAAEvH,EAAE0mS,GAAIn/R,EAAE,IAAI6iJ,KAAMk4B,GAAI/6K,EAAEvH,IAAOuH,EAAE2M,EAAEqd,EAAGgzQ,IAAIrwR,OAAd,CAAwB,OAAOyrK,GAAG4qB,IAAIvoM,GAAGq9J,MAAM0pM,MAAM,KAAKp0V,GAAG,KAAK,EAAEmoB,EAAE,IAAIytH,GAAI,MAAM,KAAK,EAAEztH,EAAE,IAAI+sH,GAAI,MAAM,QAAQ/sH,EAAE,IAAI0tH,GAAiB,GAAZzoJ,EAAE+6B,EAAEksU,GAAGhnW,EAAEuF,IAAOu1B,EAAEusU,KAAM,OAAO1pL,GAAG4qB,IAAIvoM,EAAEsnW,KAAK,KAAK30V,GAAG,KAAK,EAAE5S,EAAEohV,IAAI57U,EAAExF,GAAG,MAAM,KAAK,EAAEA,EAAEixU,IAAIzrU,EAAExF,IAkG7a,SAAaC,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAIr3B,EAAEzF,EAAIqD,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAI8T,EAAE,GAAGub,EAAE8R,KAAM,OAAO59B,EAAE,EAAEuP,EAAE,EAAEjT,EAAEwvB,EAAEosL,KAAKz7M,EAAEy9K,GAAG59K,EAAE07M,KAAK,IAAIz7M,EAAE,KAAMyD,EAAEyO,EAAE4oB,GAAE,CAAmD,GAA/Cr3B,GAAGvD,IAAG8S,EAAE,EAAU9S,EAARH,EAAEw7M,KAAQ59B,GAAG59K,EAAE07M,KAAK,IAAIz7M,EAAMkS,EAAE4oB,EAAE,GAAMr3B,GAAGuP,EAAqD,IAAlDgB,EAAE2pK,GAAG0pB,GAAIrnM,EAAEkS,EAAEzO,GAAG,IAAI7D,EAAE+9K,GAAG0pB,GAAIrnM,EAAEkS,EAAEc,GAAG,IAAkBc,EAAE,IAAI6xJ,GAAlB0xF,GAAGrjP,EAAEhU,IAAoB8T,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAA+C,GAAtBunU,IAAhBpkU,EAAEs8K,GAAGC,GAAI9pK,GAAG,IAAUlU,EAAEI,EAAEuvB,EAAErxB,OAAO0B,GAAS,GAAHoT,EAAmB,IAAI8nB,EAAE,IAAI6qI,GAArB0xF,GAAG6qC,GAAI7gS,KAAqBy5B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAyB60V,IAAhBxtV,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAU,GAAMitK,GAAI/nM,GAAGgoM,MAAMgrJ,MAAMtlI,MAAM,IAAOulI,IAAIjzV,EAAEuF,EAAE,KAAQyN,IAAIvP,CAAC,CAACzF,EAAE,IAAIurN,GAAIvpN,EAAEkS,EAAE,GAAG,KAAMlU,EAAEkU,EAAElU,EAAE+B,EAAEk/K,MAASqqC,GAAItrN,EAAEkU,EAAElU,EAAE+B,EAAEk/K,MAA8C,GAAxCtB,GAAG3/K,EAAE+B,EAAEs7M,GAAGr9M,EAAEuxB,EAAEvxB,EAAEkU,KAAK,IAAOlS,EAAEuvB,EAAErxB,QAAWsrN,GAAIxrN,EAAG,CAlGnH22W,CAAI30W,EAAEuF,EAAExF,GAAGwiS,IAAIrwR,EAAvN,MAAlJqwR,IAAIrwR,EAAuW,CACnc,SAAS0iW,IAAI50W,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAA0B,GAzsFtD,SAAa96B,EAAEkS,GAAGw3M,GAAI1pN,EAAEiqN,GAAIrxB,GAAIi3C,GAAI39N,EAAE,IAAIk1P,MAAMn9C,GAAIrxB,GAAI1mL,EAAEk1P,MAAM,CAysFlCytG,CAAI70W,EAAED,EAAEC,EAAEuF,GAAGvF,EAAEuvB,EAAEvvB,EAAEqvQ,KAAuC,GAA/B/uF,GAAIC,GAAGgoB,IAAIr2L,EAAEE,GAAGirJ,MAAMipM,SAAmC,GAAvBhmL,GAAIC,GAAGgoB,IAAIr2L,EAAEE,EAAEk0V,OAA+G,IAApG/2U,EAAEw9T,IAAIhyI,GAAGxS,IAAIr2L,EAAEE,EAAEi0V,QAAQtrJ,IAAI0+D,KAAME,OAAO5xE,GAAI71L,EAAEE,GAAG41L,MAAMqxJ,MAAM3rI,MAAM,IAAO5yL,EAAE6iJ,GAAG4qB,IAAIr2L,EAAEE,EAAE2tT,KAAK,IAAI//T,EAAMuF,EAAE,EAAEA,EAAEu1B,MAAO/6B,EAAEuxW,IAAItxW,EAAEkS,IAAQqd,IAAGA,EAAExvB,EAAEokS,GAAInkS,GAAS,GAAHuvB,IAAtChqB,UAA8J,IAApGgqB,EAAE2oK,IAAI6iB,GAAGxS,IAAIr2L,EAAEE,EAAEi0V,QAAQtrJ,IAAI0+D,KAAME,OAAO5xE,GAAI71L,EAAEE,GAAG41L,MAAMqxJ,MAAM3rI,MAAM,IAAO5yL,EAAE6iJ,GAAG4qB,IAAIr2L,EAAEE,EAAE2tT,KAAK,IAAI//T,EAAMuF,EAAE,EAAEA,EAAEu1B,MAAO/6B,EAAEwxW,IAAIvxW,EAAEkS,IAAQqd,IAAGA,EAAExvB,EAAEokS,GAAInkS,GAAS,GAAHuvB,IAAtChqB,KAAqD,CAEpc,SAASuvW,IAAI90W,GAAG,IAAIkS,EAAInS,EAAEwF,EAAIoN,EAAElP,EAAE,IAAIzD,EAAED,EAAE,CAA+B,GAA9B0D,EAAE,IAAIkvJ,GAA8B,OAA1BzgJ,EAAEmzR,KAAQrlS,EAAE65N,GAAG75N,EAAEkS,GAAc,CAAC,IAAInS,EAAE,IAAIg/K,GAAImM,GAAIlrL,IAAID,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAuBmpC,GAAI3kN,EAAEqxW,IAApBn3L,GAAGwB,IAAIp/K,GAAG,MAAkBmS,EAAElS,EAAE0oN,GAAG1oN,GAASkS,EAAElS,EAAEi/K,IAAkB,CAAO,IAANtsK,EAAElP,EAAEzF,GAAUgC,EAAEgU,IAAIhU,EAAEgU,EAAE,IAAIsmL,GAAIugD,IAAG76O,EAAE,GAAG,KAA9BuF,EAAmC,IAAIw5K,GAAI/+K,EAAEgU,GAAIzO,EAAEA,GAAGA,EAAEvH,EAAEihL,OAAOtsK,EAAGgrK,GAAGwB,IAAI55K,GAAG,KAAK6iN,GAAI3kN,IAAIzD,EAAEgU,IAAIhU,EAAEgU,EAAE,IAAIsmL,GAAIugD,IAAG76O,EAAE,GAAG,KAAKA,EAAEgU,IAAIq5O,GAAI5pP,GAAGzD,EAAED,EAAE,IAAIg/M,IAAKphC,GAAG0O,GAAIC,IAAKytD,KAAMC,KAAK95O,GAAG,GAAG,IAAIuD,EAAEzF,GAAGyF,EAAEkP,GAAG3S,EAAEuF,EAAEo4K,GAAGl6K,EAAEkP,EAAE,KAAU,MAAL3S,EAAEuF,IAAUvF,EAAEuF,EAAEggS,KAAKp6C,GAAInrP,GAAGkS,IAAI,EAAE,CAAC,OAAOlS,EAAED,CAAC,CACtc,SAASo+N,IAAIn+N,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAA4C,GAA1CA,EAAE21M,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAGlU,EAAE,EAAEuH,EAAEo4K,GAAG39K,EAAE2S,EAAE,KAAKw5L,KAASxuB,GAAGzrK,EAAE,IAAIq1M,MAAM,IAAI50M,EAAE,EAAEA,EAAE3S,EAAEhC,IAAI2U,EAAU,GAAPmoB,EAAEv1B,EAAEoN,GAAMP,EAAE61M,GAAGntL,EAAEotL,MAAM,CAAC,GAAG51B,GAAGx3J,EAAEvL,GAAI,OAAOvxB,IAAIA,CAAC,OAAQ,GAAM,MAAHuxB,EAAQ,CAAC,IAAI9rB,EAAE,EAAEA,EAAEzD,EAAEhC,IAAIyF,EAAU,GAAPq3B,EAAEv1B,EAAE9B,GAAM2O,EAAE61M,GAAGntL,EAAEotL,MAAM,CAAC,GAAG51B,GAAG/iK,EAAEuL,EAAEggL,MAAO,OAAO98M,IAAIA,CAAC,CAAE,GAAG+B,EAAO,IAAJ/B,EAAE,EAAM2U,EAAE,EAAEA,EAAE3S,EAAEhC,IAAI2U,EAAU,GAAPmoB,EAAEv1B,EAAEoN,GAAMP,EAAE61M,GAAGntL,EAAEotL,MAAM,CAAC,GAAGnN,GAAGxrL,KAAKwrL,GAAGyZ,GAAIx0N,EAAE29K,GAAG7iJ,EAAEggL,KAAK,MAAO,OAAO98M,IAAIA,CAAC,CAAG,MAAM,IAAI2U,EAAE,EAAEA,EAAE3S,EAAEhC,IAAI2U,EAAU,GAAPmoB,EAAEv1B,EAAEoN,GAAMP,EAAE61M,GAAGntL,EAAEotL,MAAM,CAAC,GAAW,MAARptL,EAAEggL,KAAY,OAAO98M,IAAIA,CAAC,CAAG,OAAQ,CAAC,CAEtc,SAAS49P,IAAI57P,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE,GAAGmsB,EAAEmqS,GAAGxnT,KAAI7Q,GAAGzB,EAAEsS,GAAUyrK,GAAG59K,EAAE,IAAI87P,GAAGj8P,GAAjB,MAA+C,GAApBwD,EAAEmsB,EAAEwlV,GAAG7iW,EAAElS,EAAEA,IAAGE,EAAEgS,EAAE+B,GAAO,IAAO,GAAJ/T,EAA6B,GAAtB4T,EAAE6pK,GAAGv6K,EAAE,IAAI4P,EAAE2qK,GAAGt8K,EAAE,IAAOyS,EAAEutB,KAAMruB,EAAEq8P,UAAyB,IAAf18P,IAAIy6O,IAAIl7O,GAAG4oB,EAAE,EAAMr3B,EAAEzD,EAAEA,EAAE8T,EAAE6nM,KAAK7nM,EAAEgtP,KAAKr9P,EAAE83M,MAAOnpM,EAAEurK,GAAGl6K,EAAEg4M,KAAK,KAAIl2M,EAAEo4K,GAAGk5C,GAAI72N,EAAEoS,GAAG,MAA8CO,GAAiB,IAAd3U,EAAEgV,EAAEg6Q,GAAGznR,IAASyN,EAAEqwS,GAAGvoR,EAAEv1B,GAAGu1B,GAAG98B,GAAGgV,EAAEgiW,GAAGl6U,EAAEv1B,GAAQyN,EAAEqwS,GAAGvoR,EAAEv1B,KAAKu1B,GAA9F96B,EAAEkS,IAAIS,IAAGK,EAAEqwS,GAAGvoR,EAAE1oB,KAAK0oB,QAAyF,MAAH13B,EAAS/B,EAAEuqS,GAAG,MAAyB,OAAdrmS,EAAEsxN,GAAI72N,EAAEoD,IAAWpD,EAAEkS,IAAIk7O,IAAIl7O,IAAI7Q,EAAEuqS,GAAGxoS,GAAG/B,EAAEuqS,GAAGrmS,EAAM,CACvc,SAAS0vW,IAAIj1W,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAY,IAAVmd,EAAE,IAAIuvH,GAAQv5I,EAAE,IAAIupO,GAAG7hB,GAAGi1E,GAAIhwR,GAAGlS,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG7lN,IAAoB,IAAG6jN,GAAlBrpN,EAAE49K,GAAGwtC,GAAG5lN,GAAG,MAAmCmqU,IAAXjsU,EAAE1D,EAAEwvB,EAAEvxB,EAAW+iO,KAAK,CAAoB,IAAO,IAA1B3uN,EAAE8uV,IAAIlhW,EAAEyD,EAAEs9N,IAAID,MAAe,SAASvxM,EAAErd,EAAE+gI,EAAK3/H,KAAKugB,IAAItE,EAAErd,EAAEE,IAAImd,EAAEvvB,IAAIuvB,EAAEvvB,EAAE,IAAIsyK,IAAKyD,GAAIxmJ,EAAEvvB,EAAEyD,EAAE,CAAE,IAAIkP,EAAE,IAAIm8N,GAAG7hB,GAAGm1E,GAAIlwR,GAAGlS,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGz4M,IAAoB,IAAGy2M,GAAlBtuL,EAAE6iJ,GAAGwtC,GAAGx4M,GAAG,MAAmC+8T,IAAX1xU,EAAE88B,EAAE/6B,EAAE/B,EAAW8iO,KAAK,CAAoB,IAAO,IAA1B1uN,EAAE8uV,IAAIlhW,EAAEhC,EAAE8iO,IAAIC,MAAe,SAASxxM,EAAExvB,EAAEkzI,EAAK3/H,KAAKugB,IAAItE,EAAExvB,EAAEqS,IAAImd,EAAEA,IAAIA,EAAEA,EAAE,IAAI+iJ,IAAKyD,GAAIxmJ,EAAEA,EAAEvxB,EAAE,CAAE,OAAOuxB,CAAC,CACxc,SAASwgV,IAAI/vW,GAAS,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAU,GAA1B4oR,MAAkBj8Q,EAAEimL,GAAGn4L,GAAMA,EAAEinV,IAAI/oV,OAAQ,OAAO+oV,IAAI/0U,GAAQ,GAAGlS,GAAG,GAAI,OAAO8jV,KAAK/gI,MAAMmkI,KAAKh1U,GAAQ,GAAGlS,GAAG6qM,IAAK,OAAO0kE,GAAIu0E,IAAIkD,IAAI,GAAG90U,GAAGA,GAAG,GAAGlS,EAAE,IAAS,MAAMkzK,GAAI,IAAI+N,GAAI,yBAAyB,GAAGjhL,GAAGk4L,IAAK,OAAOq3E,GAAIu0E,IAAIkD,IAAI,GAAG90U,GAAGA,GAAkD,IAA7B3M,EAAlBxF,EAAE+jV,IAAIkD,IAAI,GAAG9uJ,KAAS3oK,EAAEq7K,GAAI5qM,EAAEk4L,KAAKhmL,EAAEimL,GAAGn4L,EAAEk4L,KAAWgV,GAAI39K,EAAE2oK,KAAK,GAAG3yL,EAAE0oR,GAAI1oR,EAAExF,GAAGwvB,EAAE4hP,GAAI5hP,EAAE2oK,KAAsD,IAA1B3yL,EAAEgqQ,GAAzBhqQ,EAAE0oR,GAAI1oR,EAAEu+U,IAAIkD,IAAI,GAAG90U,IAAYgmL,KAAK3oK,EAAEq7K,GAAI5qM,EAAEk4L,KAAWgV,GAAI39K,EAAE2oK,KAAK,GAAG3yL,EAAEgqQ,GAAIhqQ,EAAE2yL,KAAK3oK,EAAE4hP,GAAI5hP,EAAE2oK,KAAgB,OAAX3yL,EAAEgqQ,GAAIhqQ,EAAE2M,EAAW,CAE3c,SAASgjW,IAAIl1W,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAEu1B,EAAIr3B,EAAEzF,EAAE6jS,IAAI3vR,EAAE,kCAAkC,GAAwB,IAArBlU,EAAEgC,EAAEkS,GAAOqd,EAAErxB,SAAcu/M,GAAI,EAAEz/M,EAAEuxB,EAAErxB,QAlJpH,SAAa8B,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAMoN,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAI,IAAInB,EAAE,IAAIgzJ,GAAI3lK,EAAEkS,GAAGS,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAoC,IAAQmD,EAAE,EAAEyS,GAAR1B,EAAbwoP,GAAhBj9E,GAAGC,GAAIjrK,GAAG,IAAY3S,IAAmB9B,OAAOmD,EAAEyS,IAAIzS,EAAU,OAAOs8K,GAAG4qB,IAAjBvqM,EAAEoU,EAAE/Q,IAAoBg8J,MAAM0uI,MAAM,KAAKp5R,GAAG,KAAK,EAAEqpV,IAAIh+V,GAAGs0P,GAAIt0P,EAAEkU,GAAGkoT,IAAIp8T,GAAE,EAAK+B,GAAG,MAAM,KAAK,EAAE+5V,IAAI97V,GAAGs0P,GAAIt0P,EAAEuxB,GAAG6qS,IAAIp8T,GAAE,EAAMuH,GAAuB,IAAjB9B,EAAE,IAAI8lN,GAAIvpN,EAAEkS,EAAE,GAASzO,EAAEyO,EAAEzO,EAAE1D,EAAEk/K,MAA+D,IAAxDqqC,GAAI7lN,EAAEyO,EAAEzO,EAAE1D,EAAEk/K,MAAMtB,GAAGl6K,EAAE1D,EAAEs7M,GAAG53M,EAAE8rB,EAAE9rB,EAAEyO,KAAK,KAAKlS,EAAEuvB,EAAErxB,QAAWsrN,GAAI/lN,EAAG,CAkJnL0xW,CAAIn1W,EAA1E29K,GAAG3/K,EAAEuxB,EAAE,GAAG,IAAOouJ,GAAG0pB,GAAIrpM,EAAEA,EAAEuxB,EAAErxB,OAAO,GAAG,IAAIqxB,EAAE,IAAI2pN,GAAIl5O,GAAG86B,EAAE,IAAIo+M,GAAIl5O,IAAgC,GAAduvB,EAAEvvB,EAAEuvB,EAAErxB,SAAYwtO,GAAI,EAAE1tO,EAAEuxB,EAAErxB,QAAQgwM,GAAIlwM,EAAEuxB,EAAE,EAAEA,IAAkB,GAAduL,EAAE96B,EAAEuvB,EAAErxB,SAAYF,EAAEuxB,EAAEvxB,EAAEuxB,EAAErxB,QAAQ48B,IAAW03L,GAAIxyN,GAAGgoM,MAAMotK,QAjR7T,SAAap1W,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,IAAI2U,EAAEgrK,GAAG4qB,IAAIvoM,GAAGgoM,MAAMotK,MAAM,IAAIz5J,KAAKhpM,EAAE4oM,MAAM,CAAiB,OAAhBzgL,EAAE6iJ,GAAGhrK,EAAE8oM,KAAK,IAAW99B,GAAG4qB,IAAIztK,GAAGuiI,MAAM0uI,MAAM,KAAKp5R,GAAG,KAAK,EAAE2/O,GAAIx3N,EAAE5oB,GAAG,MAAM,KAAK,EAAEogP,GAAIx3N,EAAEvL,GAAI,IAAIhqB,EAAE,IAAIupO,GAAG7hB,GAAGu5F,GAAI1rR,GAAG96B,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG7lN,KAAKxF,EAAE49K,GAAGwtC,GAAG5lN,GAAG,KAAWgqB,GAAKxvB,EAAEA,IAAY0D,GAAG1D,EAAEA,EAAE/B,EAAE2/K,GAAG4qB,IAAIxoM,EAAEgwU,KAAK,IAAItsU,EAAE2uP,GAAIryP,EAAE/B,GAAGq0P,GAAItyP,EAAE/B,GAAG,CAAC,CAiRwCq3W,CAAIr1W,EAA9BuF,EAAE,IAAI2zO,GAAIl5O,GAAGyD,EAAE,IAAIy1O,GAAIl5O,IAA4B,GAAduF,EAAEvF,EAAEuvB,EAAErxB,SAAYwtO,GAAI,EAAE1tO,EAAEuxB,EAAErxB,QAAQgwM,GAAIlwM,EAAEuxB,EAAE,EAAEhqB,IAAkB,GAAd9B,EAAEzD,EAAEuvB,EAAErxB,SAAYF,EAAEuxB,EAAEvxB,EAAEuxB,EAAErxB,QAAQuF,IAAQ8+R,IAAIrwR,EAAE,CAC3c,SAAS2vV,IAAI7hW,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAM9B,EAAEzF,EAAEoU,EAAE/Q,EAAE,IAAIrD,EAAE,IAAI2nK,GAAI3lK,EAAEA,GAAGhC,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAyB,IAAhBuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,KAASqD,IAAI49P,MAAMC,QAAe35P,EAAEo4K,GAAG4qB,IAAI9kM,GAAGukM,MAAMe,MAAM,OAAWtpB,MAAMC,MAAMn6K,GAAGq6K,KAAK,IAAI7/K,EAAE,IAAI+uO,GAAG7hB,GAAGu5F,GAAI/iT,GAAGzD,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAAkC,IAAdmS,GAAfqd,EAAEouJ,GAAGwtC,GAAGprN,GAAG,KAAQC,GAAOkS,KAAeE,EAAEmd,EAAEA,GAAOvxB,GAAGyF,IAAM6lN,GAAS,GAALp3M,EAAEA,GAAMyrK,GAAGzrK,EAAElS,EAAEA,EAAEuvB,EAAE,GAAMrd,EAAEwjP,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACzhL,EAAEpU,EAAE4B,EAAEwS,EAAExS,EAAEwS,EAAEpS,KAAKkS,IAAE7Q,EAAEkuB,EAAExvB,GAAO/B,GAAGyF,IAAM6lN,GAAS,GAALp3M,EAAEA,GAAMyrK,GAAGzrK,EAAEqd,EAAErd,EAAEqd,EAAE,GAAMrd,EAAEwjP,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACxyL,EAAErD,EAAE4B,EAAEyB,EAAEzB,EAAEyB,EAAErB,KAAKkS,GAAK,CAE5c,SAASojW,IAAIt1W,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAA8H,GAA5HA,EAAE42U,IAAIx/V,GAAGwvL,GAAI,IAAI0oB,GAAI,OAAOl4M,EAAEqd,IAAIrd,EAAEqd,EAAE,IAAI+qK,GAAI3M,IAAGz7K,EAAE,EAAE,IAAI,IAAIq7L,GAAIr7L,EAAEqd,EAAE,MAAM,IAAIw5I,GAAIjuI,IAqMjH,SAAa96B,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEL,EAAEsvK,GAAIk6B,GAAG7D,IAAIt4M,GAAGq9J,MAAMkzK,QAAQv9T,EAAE2qK,GAAG26B,IAAIt4M,EAAEu1W,KAAK,IAAIv3W,GAAE,EAAMoU,GAAE,EAAM0B,EAAE,IAAIirK,KAAM/+K,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAI+qK,GAAI3M,IAAG3tL,EAAE,EAAE,IAAIA,EAAEuvB,IAAI,KAAMzb,EAAEvO,GAAGuO,EAAE9V,EAAEihL,QAAQjhL,IAAIoU,IAAG,CAAsB,IAArB0oB,EAAE6iJ,GAAGwB,IAAIrrK,GAAG,KAAKrQ,EAAE,EAAM8B,EAAE0lN,GAAG9kH,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,GAAGrjJ,EAAE/6B,IAAI+6B,EAAE/6B,EAAE,IAAIgrN,GAAIl9B,IAAG/yJ,EAAE,EAAE,IAAIA,EAAE/6B,KAAK+6B,EAAEv1B,IAAIu1B,EAAEv1B,EAAE,IAAIwlN,GAAIl9B,IAAG/yJ,EAAE,EAAE,IAAIA,EAAEv1B,OAAO6lN,IAAG7lN,KAAKxF,EAAE49K,GAAGwtC,GAAG5lN,GAAG,IAAIlE,EAAEsR,GAAG69T,IAAIzwU,IAAIkiL,GAAIk6B,GAAG7D,IAAIv4M,EAAE0wU,OAAOlhT,EAAEimV,MAAMz1W,EAAEmS,IAAInS,EAAEmS,EAAE,IAAI64M,GAAI19B,IAAGttL,EAAE,EAAE,IAAIA,EAAEmS,GAAG4oB,GAAG96B,GAAG89M,GAAIkN,IAAIrtC,GAAG0O,KAAMtsL,EAAEwvB,IAAIxvB,EAAEwvB,EAAE,IAAIw7L,GAAI19B,IAAGttL,EAAE,EAAE,IAAIA,EAAEwvB,GAAG,GAAG,MAAMvvB,GAAG89M,GAAIkN,IAAIrtC,GAAG0O,KAAMtsL,EAAEmS,IAAInS,EAAEmS,EAAE,IAAI64M,GAAI19B,IAAGttL,EAAE,EAAE,IAAIA,EAAEmS,GAAG,GAAG,SAAS7Q,GAAGkuB,MAAK9rB,EAAO,OAAWA,EAAE,GAAWuP,EAAEitL,IAAI4I,MAAMC,SAAShuK,EAAEl7B,IAAIk7B,EAAEl7B,EAAE,IAAI06L,GAAIrN,IAAGnyJ,EAAE,EAAE,IAAIA,EAAEl7B,GAAG5B,EAAE,KAAjEA,GAAE,GAA2EyF,EAAE,IAAI2O,GAAE,EAAK,CAACpU,GAAGkU,EAAE21M,IAAI8rF,MAAMG,MAAM1hS,GAAGF,EAAE21M,IAAI8rF,MAAMI,KAAK,CArMvjB0hE,CAAIvjW,EAAhC3M,EAAEo4K,GAAG4qB,IAAIztK,GAAGktK,MAAM4yH,MAAM,KAAgBr1T,EAAE06L,IAAI0zG,MAAMG,MAAO,IAAI/zS,EAAE,IAAIg/K,KAAM7sK,EAAEqd,IAAIrd,EAAEqd,EAAE,IAAI+qK,GAAI3M,IAAGz7K,EAAE,EAAE,IAAIA,EAAEqd,IAAIxvB,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAwBy2L,IAAI11W,EAAEkS,EAAE4oB,EAAvB6iJ,GAAGwB,IAAIp/K,GAAG,MAAsM,OAAlJ,GAAjC49K,GAAG26B,IAAIpmM,GAAGmrJ,MAAM4nL,MAAM,KAAKhmK,MAASogL,IAAIntV,EAAE4oB,GAAGmnJ,GAAIk6B,GAAG5T,IAAIztK,EAAE66U,QAAQpwW,EAAEsiN,GAAGysF,KAAK9hF,GAAI13L,EAAE86U,MAAM11L,GAAI,IAAIspI,GAAIlpI,GAAIC,GAAGgoB,IAAIztK,EAAE86U,QAAQ96U,GAAGigL,GAAGzC,IAAIpmM,EAAEo7V,QAAQvyJ,IAAIqjE,KAAMG,MAwWza,SAAav+Q,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAQ2T,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAEC,EAAEz+K,EAAE,IAAI8mK,GAAItoK,EAAEwsK,GAAG4qB,IAAIh5K,GAAG8tI,MAAMsoJ,MAAM,KAAKzlT,EAAE,EAAEq5L,GAAG5mL,IAAIT,EAAElS,IAAIkS,EAAElS,EAAE,IAAIs6L,GAAI/M,IAAGr7K,EAAE,GAAG,KAAKA,EAAElS,IAAI,KAAW,GAAL2S,EAAET,GAAME,EAAEurK,GAAQ,GAALhrK,EAAET,EAAK,MAAMo3M,GAAS,GAAL32M,EAAET,GAAMkyN,GAAIzxN,EAAEA,EAAE3S,EAAEA,IAAI,KAAK+6M,GAAGzC,IAAIpmM,EAAEm0V,QAAQtrJ,IAAI0+D,KAAME,OAAO5+D,GAAGzC,IAAIpmM,EAAE2jW,QAAQ96J,IAAI8zE,MAAMK,OAAOn0E,GAAGzC,IAAIpmM,EAAE2jW,QAAQ96J,IAAI8zE,MAAMM,OAAOltG,GAAIk6B,GAAG7D,IAAIpmM,EAAE4jW,QAAQ/6J,GAAGzC,IAAIpmM,EAAE0yU,QAAQ7pI,IAAI26D,KAAME,SAAS3zF,GAAIk6B,GAAG7D,IAAIlmM,EAAE2jW,QAAQ3qE,IAAIh5R,GAAG41L,MAAM6oC,KAAK74B,GAAI93M,OAAS+hL,GAAIk6B,GAAG7D,IAAIlmM,EAAE4jW,SAAaliW,EAA2C,KAAvC1B,EAAEpS,IAAIoS,EAAEpS,EAAE,IAAIs6L,GAAI/M,IAAGn7K,EAAE,GAAG,KAAKA,EAAEpS,GAAGhC,EAAK4B,EAAE0wU,IAAIl+T,GAAGY,EAAE+nM,GAAGzC,IAAIlmM,EAAEk7V,QAAQvyJ,IAAIqjE,KAAMG,MAAqDtqQ,EAAE,MAAjDm9K,GAAGgnB,GAAIhmM,GAAG2tJ,MAAMk2M,OAAO55I,GAAIv4C,GAAGw0B,IAAIlmM,EAAE6jW,MAAMC,OAAkBljW,IAAIc,GAAGlU,KAAamoM,GAAT9zL,EAAEy9V,IAAIt/V,GAASuzS,IAAIx0S,GAAGqhN,GAAIv+M,EAAE2hW,MAAM11L,GAAI,IAAIspI,GAAIlpI,GAAIC,GAAGgoB,IAAIt0L,EAAE2hW,QAAQ3hW,GAA+B,GAAzB0pK,GAAG26B,IAAIlmM,EAAE6yU,KAAK,KAAKhmK,OAAS59K,EAAE4S,EAAEytL,GAAI,IAAI0oB,GAAI,OAAOh4M,EAAEmd,IAAInd,EAAEmd,EAAE,IAAI+qK,GAAI3M,IAAGv7K,EAAE,EAAE,IAAI,IAAIm7L,GAAIn7L,EAAEmd,EAAE,MAAM,IAAIy5I,GAAI3nK,IAAIg+V,IAAIjtV,EAAE6B,KAAI1Q,EAAEgsB,GAAE3F,EAAE+zJ,GAAG+5B,GAAI13M,EAAEA,EAAE89M,GAAI1rM,IAAI,OAAU7O,EAAEqmB,EAAErkB,GAAGsO,EAAEsiW,IAAIn2W,EAAEoS,EAAE7O,GAAM0Q,IAAGJ,EAAEtO,EAAE0O,EAAEA,EAAE1O,EAAEsO,EAAE0lL,GAAG5mL,IAAIP,EAAEpS,IAAIoS,EAAEpS,EAAE,IAAIs6L,GAAI/M,IAAGn7K,EAAE,GAAG,KAAKA,EAAEpS,MAAME,EAAE,EAAE68M,GAAIpqM,EAAET,EAAES,EAAE4c,EAAErd,EAAES,EAAE4c,GAAG,KAAW,GAAL5c,EAAET,GAAK,CAAiD,IAAIlU,EAAE,IAAI+gL,MAA1DjkJ,EAAE6iJ,GAAQ,GAALhrK,EAAET,EAAK,MAAMo3M,GAAS,GAAL32M,EAAET,GAAMkyN,GAAIzxN,EAAEA,EAAE3S,EAAEA,IAAI,KAAsBkS,IAAI4oB,EAAE5oB,EAAE,IAAIooL,GAAIzM,IAAG/yJ,EAAE,GAAG,IAAIA,EAAE5oB,IAAIlU,EAAEuH,GAAGvH,EAAEA,EAAEihL,MAAuBknL,IAAhB1iW,EAAEk6K,GAAGwB,IAAInhL,GAAG,MAAY+8M,GAAGzC,IAAIpmM,EAAEm0V,QAAQtrJ,IAAI0+D,KAAME,OAAO5+D,GAAGzC,IAAIpmM,EAAE2jW,QAAQ96J,IAAI8zE,MAAMK,OAAOn0E,GAAGzC,IAAIpmM,EAAE2jW,QAAQ96J,IAAI8zE,MAAMM,OAAOltG,GAAIk6B,GAAG7D,IAAIpmM,EAAE4jW,QAAQ/6J,GAAGzC,IAAIpmM,EAAE0yU,QAAQ7pI,IAAI26D,KAAME,QAAQw1B,IAAI3nS,GAAGukM,MAAM6oC,KAAK74B,GAAI93M,MAAM2iC,EAAEmoL,IAAIrtC,GAAG0O,KAAM5oL,EAAEyO,IAAIzO,EAAEyO,EAAE,IAAI64M,GAAI19B,IAAG5pL,EAAE,EAAE,IAAIA,EAAEyO,GAAG,GAAG,KAAKi/K,EAAE65B,IAAIrtC,GAAG0O,KAAM5oL,EAAE8rB,IAAI9rB,EAAE8rB,EAAE,IAAIw7L,GAAI19B,IAAG5pL,EAAE,EAAE,IAAIA,EAAE8rB,GAAG,GAAG,KAAQ0yJ,GAAIk6B,GAAG7D,IAAI70M,EAAEuyW,QAAQ/zL,GAAIk6B,GAAG7D,IAAIz1K,EAAEmzU,QAAQ/zL,GAAIk6B,GAAG7D,IAAInnB,EAAE6kL,SAAoE3tV,EAAEyS,EAAnD01S,IAAI/sU,IAAIw+K,GAAIk6B,GAAG7D,IAAIz1K,EAAE0tS,QAAQtuJ,GAAIk6B,GAAG7D,IAAI70M,EAAEgtU,QAAcplH,GAAIl6B,EAAEtuJ,GAAIxa,EAAEwa,EAAGwoL,GAAIxoL,EAAEsuJ,KAAK9oK,EAAE8oK,GAAG5tL,EAAEgsB,GAAE3F,EAAE+zJ,GAAG+5B,GAAI13M,EAAEA,EAAEqoB,GAAG,OAAU9kB,EAAEqmB,EAAErkB,GAAkBwiM,GAAbquK,IAAIp2W,EAAEyD,EAAE4kB,EAAE9kB,IAAUykM,MAAMquK,KAAKrZ,IAAIh9V,EAAEyD,EAAEyO,EAAEqd,KAAuC,GAAnCvc,EAAE+nM,GAAGzC,IAAIx9K,EAAEwyU,QAAQvyJ,IAAIqjE,KAAMG,MAAY,IAAIh5Q,EAAE,IAAIw5K,KAAMjkJ,EAAE96B,IAAI86B,EAAE96B,EAAE,IAAIs6L,GAAI/M,IAAGzyJ,EAAE,GAAG,KAAKA,EAAE96B,IAAIuF,EAAEA,GAAGA,EAAEvH,EAAEihL,MAAuBmS,GAAGgnB,GAAnBr4M,EAAE49K,GAAGwB,IAAI55K,GAAG,KAAcw6J,MAAMk2M,OAAO55I,GAAIv4C,GAAGw0B,IAAIv4M,EAAEk2W,MAAMC,KAAKtxU,EAAEm2K,GAAGzC,IAAIv4M,EAAEutW,QAAQvyJ,GAAGwjE,KAAKntF,GAAGxsJ,GAAIm4K,GAAIpqM,EAAE5S,EAAE4S,EAAE4c,EAAErd,EAAES,EAAE4c,EAAU,CAAC,CAxWr7C+mV,CAAIt2W,EAAEkS,EAAE4oB,GA6Svb,SAAa96B,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAM,IAAJ0Q,EAAE,EAAMvO,EAAE,IAAIw5K,KAAM7sK,EAAElS,IAAIkS,EAAElS,EAAE,IAAIs6L,GAAI/M,IAAGr7K,EAAE,GAAG,KAAKA,EAAElS,IAAIuF,EAAEA,GAAGA,EAAEvH,EAAEihL,MAA2BgD,GAAIk6B,GAAG7D,IAA3Bv4M,EAAE49K,GAAGwB,IAAI55K,GAAG,KAAsB83J,MAAM24M,UAAaj7J,GAAGzC,IAAIpmM,EAAEm0V,QAAQtrJ,IAAI0+D,KAAME,OAAO5+D,GAAGzC,IAAIpmM,EAAE2jW,QAAQ96J,IAAI8zE,MAAMK,OAAOn0E,GAAGzC,IAAIpmM,EAAE2jW,QAAQ96J,IAAI8zE,MAAMM,QAAOltG,GAAIk6B,GAAG7D,IAAIpmM,EAAE4jW,QAAQ/6J,GAAGzC,IAAIpmM,EAAE0yU,QAAQ7pI,IAAI26D,KAAME,OAAS3zF,GAAIk6B,GAAG7D,IAAIv4M,EAAEg2W,SAAQ3qE,IAAIrrS,GAAGioM,MAAM6oC,KAAK74B,GAAIlkM,MAAMA,GAAEqiW,IAAIn2W,EAAED,EAAEwvB,IAAQ,IAAJzb,EAAE,EAAM1B,EAAE,IAAI2sK,KAAM7sK,EAAEA,IAAIA,EAAEA,EAAE,IAAIooL,GAAIzM,IAAG37K,EAAE,GAAG,IAAIA,EAAEA,IAAIE,EAAE7M,GAAG6M,EAAEpU,EAAEihL,MAAOx7K,EAAEk6K,GAAGwB,IAAI/sK,GAAG,KAAO2oM,GAAGzC,IAAIpmM,GAAGmrJ,MAAMgpM,SAAStrJ,IAAI0+D,KAAME,OAAO5+D,GAAGzC,IAAIpmM,EAAE2jW,QAAQ96J,IAAI8zE,MAAMK,OAAOn0E,GAAGzC,IAAIpmM,EAAE2jW,QAAQ96J,IAAI8zE,MAAMM,OAAOltG,GAAIk6B,GAAG7D,IAAIpmM,EAAE4jW,QAAQ/6J,GAAGzC,IAAIpmM,EAAE0yU,QAAQ7pI,IAAI26D,KAAME,SAAOw1B,IAAI3nS,GAAGukM,MAAM6oC,KAAK74B,GAAIlkM,MAAMA,GAAE5T,EAAE69M,IAAIt6M,GAAGL,EAAE46M,IAAIv6M,GAAGpC,EAAE4gL,GAAIk6B,GAAG7D,IAAIp4M,EAAEqwU,OAAO3wU,GAAGqiL,GAAIk6B,GAAG7D,IAAI70M,EAAEuyW,OAAOhjW,EAAE3R,GAAGmvU,IAAI/sU,IAAIw+K,GAAIk6B,GAAG7D,IAAI70M,EAAEgtU,OAAO31S,EAAEgjL,GAAI59M,IAAIgS,GAAG4rM,GAAI59M,IAAI49M,GAAI16M,GAAGuP,GAAGmrM,GAAI59M,IAAIgS,GAAG9O,GAAG8O,IAAI4rM,GAAI16M,IAAI8O,GAAGhS,GAAGgS,GAAGtS,IAAIoT,IAAIL,GAAGmoB,IAAIs7U,IAAIp2W,EAAEyD,EAAEyO,EAAEqd,GAAG,GAAGuuL,GAAI5rM,GAAI,IAAIlU,EAAE,IAAI+gL,GAAI8oE,GAAI/pC,GAAI5rM,KAAKlU,EAAEuH,GAAGvH,EAAEA,EAAEihL,OAAuB/+K,EAAE69M,IAAlBt6M,EAAEk6K,GAAGwB,IAAInhL,GAAG,OAAmBkU,GAAGs+T,IAAI/sU,KAAIuP,EAAEivK,GAAIk6B,GAAG7D,IAAIp4M,GAAGm9J,MAAMkzK,SAAStuJ,GAAIk6B,GAAG7D,IAAI70M,EAAEgtU,SAAU2lC,IAAIp2W,EAAEyD,EAAEyO,EAAEqd,EAAK,CA7SrlBgnV,CAAIv2W,EAAEkS,EAAE4oB,GAAUA,CAAC,CAC7c,SAASynU,IAAIviW,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAiU,GAA/TrO,KAAK8N,EAAE,IAAIkgK,GAAIhuK,KAAKjD,EAAE,IAAIixK,GAAIhuK,KAAK4N,EAAE,IAAIogK,GAAIhuK,KAAKirB,EAAE,IAAI+iJ,GAAIhuK,KAAKiB,EAAE,IAAIojM,GAAIrkM,KAAKtG,EAAE,IAAIw7K,GAAIl1K,KAAKw2B,EAAE,IAAI43I,GAAIpuK,KAAKvE,EAAE,IAAIuyK,GAAIhuK,KAAKqO,EAAE,IAAI2/J,GAAIyD,GAAIzxK,KAAK4N,EAAElS,GAAG+1K,GAAIzxK,KAAK4N,EAAEA,GAAG5N,KAAKiB,EAAEgqB,EAAE0jH,EAAK3/H,KAAKsgB,IAAI5zB,EAAEA,EAAEkS,EAAElS,GAAGsE,KAAKiB,EAAExF,EAAEkzI,EAAK3/H,KAAKsgB,IAAI5zB,EAAEkS,EAAEA,EAAEA,GAAG5N,KAAKiB,EAAE2M,EAAE+gI,EAAK3/H,KAAKskB,IAAI53B,EAAEA,EAAEkS,EAAElS,GAAGsE,KAAKiB,EAAEvF,EAAEizI,EAAK3/H,KAAKskB,IAAI53B,EAAEkS,EAAEA,EAAEA,GAAG3M,EAAEo4K,GAAG4qB,IAAIxoM,GAAGs9J,MAAM2hG,MAAM,IAAU,IAAIrsP,EAAEmsP,IAAIv5P,EAAE,GAAGoN,EAAET,GAAGS,EAAE5S,EAAEwvB,GAAmBknQ,IAAf37P,EAAE6iJ,GAAGohF,GAAIpsP,GAAG,IAAS3S,EAAEA,EAAEA,IAAI4lO,GAAIthO,KAAKtG,EAAE88B,GAAMvL,GAAGwmJ,GAAIzxK,KAAK8N,EAAEmd,GAAGwmJ,GAAIzxK,KAAKjD,EAAEtB,EAAE,CAC7c,SAASy2W,IAAIx2W,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAsF,IAApF3R,EAAE,IAAIywO,GAAI,IAAI1pE,GAAI74I,IAAyCkzJ,GAArCh/K,EAAEw6K,GAAG8U,IAAIuyD,IAAI,GAAGtlP,EAAE86B,EAAEv1B,EAAEgqB,EAAErxB,OAAO,GAAG,GAASuF,EAAEvF,QAAQqxB,EAAErd,EAAEA,GAAG,EAAME,EAAE,IAAIuzJ,GAAI3lK,EAAE86B,EAAEv1B,GAAG6M,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,SAASF,EAAE2/K,GAAGC,GAAIxrK,GAAG,MAAOF,GAAGA,EAAEA,IAAIqd,EAAEvxB,EAAEkU,GAAGgmL,KAAKynF,GAAI+xD,IAAIrwU,EAAErD,IAAI,KAAoB,GAAdqD,EAAE6Q,EAAEqd,EAAErxB,QAAwC,IAAZuF,GAAjBqQ,EAAE6pK,GAAG0vG,GAAIhsR,GAAG,MAAS6Q,IAAG,EAAS4oB,EAAEqzL,GAAG,IAAIlvB,GAAGj/L,EAAEkS,EAAE4B,GAAG,GAAGgnB,EAAEvL,GAAkC9rB,GAAduP,EAAEwtT,IAAlBj7T,EAAEo4K,GAAGu0E,GAAGp3N,GAAG,KAAahnB,IAAU5B,KAAiCS,EAApB6/M,GAAIjtN,GAAG01J,MAAM6rK,MAASxmJ,GAAIC,GAAGgoB,IAAIhjM,EAAEuhU,OAAW9mU,EAAEuvB,GAAGxvB,EAAEwvB,EAAEzb,EAAE5B,GAAGS,GAAO4c,EAAEvc,EAAEd,KAAIqd,EAAEvc,EAAEd,GAAGnS,EAAE2hS,GAAIrgS,EAAE2R,GAAG2sQ,GAAI+xD,IAAIrwU,EAAE2R,KAAM,CAC9c,SAASyjW,IAAIz2W,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAS,IAAPvO,GAAE,EAASoN,EAAE,IAAIgzJ,GAAI3lK,EAAEkS,GAAGS,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAQ,CAA8B,IAA7B48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,IAAIP,EAAEmkK,IAAIl1K,EAAE,KAASrD,EAAE,IAAI2nK,GAAI7qI,EAAE96B,GAAGhC,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAQ,CAA+F,GAA9FuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,IAAI8V,EAAEwsK,GAAIpuK,EAAE9O,EAAEK,EAAEL,IAAIk9K,GAAIpuK,EAAEnS,EAAE0D,EAAEL,IAAIK,EAAE1D,EAAEA,EAAEA,EAAEugL,GAAIpuK,EAAE9O,EAAEK,EAAEL,IAAIk9K,GAAIpuK,EAAEnS,EAAE0D,EAAEL,IAAIK,EAAEvD,EAAEgS,EAAEzO,EAAE1D,EAAEC,IAAK8T,EAAE1B,GAAGrS,EAAEqS,GAAqD,CAAC7M,GAAE,EAAMgqB,EAAE3vB,GAAG2lO,GAAIh2M,EAAE,+BAA+B9rB,EAAE,iCAAiCpC,GAAG,KAAK,CAAhJA,EAAEoC,EAAE2O,EAAEkuK,GAAIpuK,EAAE9O,EAAEK,EAAEL,IAAIk9K,GAAIpuK,EAAEnS,EAAE0D,EAAEL,IAAIK,EAAEvD,EAAEgS,EAAEzO,EAAE1D,EAAEC,CAAqG,CAAC,IAAIuF,EAAG,KAAM,CAAkC,OAAjCgqB,EAAE3vB,GAAG2lO,GAAIh2M,EAAErd,EAAE,iBAAiB3M,GAAUA,CAAC,CAE9c,SAASmxW,IAAI12W,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAE,GAAGkuB,EAAExvB,EAAE/B,GAAGkU,EAAElU,EAAZ,CAAqR,IAAlPmlK,GAAb59J,EAAE,IAAIw2T,IAAI/7T,IAAUi/P,MAAMg4B,MAAMlvF,GAAIxiM,GAAGyiM,MAAM0/C,KAAKn4N,GAAGw4K,GAAIxiM,GAAG83J,MAAMykI,MAAMxM,MAAMt4D,MAAMj9N,EAAEwvB,EAAExvB,EAAEwvB,EAAErxB,QAAQqH,EAAYgtP,GAAV5/O,EAAE,IAAIomU,IAAUxzU,GAAGo5P,IAAIhsP,GAAG8sK,MAAMG,MAAgB2yE,GAAV9uP,EAAE,IAAIs1U,IAAUxzU,GAAGo5P,IAAIl7P,EAAEi8K,KAAKr+K,EAAEkuB,EAAExvB,EAAEqyP,GAAI7iO,EAAE5c,GAAak9P,GAAV/0O,EAAE,IAAI+vN,GAAUt7N,GAAGw4K,GAAIjtK,EAAEkkO,IAAI,MAAM3M,GAAIv3N,EAAEr3B,GAAG2uP,GAAIt3N,EAAEz5B,GAAG+Q,EAAE,IAAIm3M,GAAIh6L,EAAErd,EAAE,GAASE,EAAEF,EAAEE,EAAErS,EAAEk/K,MAASqqC,GAAIl3M,EAAEF,EAAEE,EAAErS,EAAEk/K,MAAmC87B,GAAGxS,IAArDvqM,EAAqB2/K,GAAGvrK,EAAErS,EAAEs7M,GAAGjpM,EAAEmd,EAAEnd,EAAEF,KAAK,IAAiBwoT,QAAQ3/G,IAAI4jE,KAAMG,QAAO/2E,GAAI/pM,EAAEu4T,IAAIhnS,GAAGi6L,GAAIp3M,GAAG2jK,GAAIj7I,EAAE5oB,EAAElU,IAAIsrV,IAAI/jV,EAAEoN,EAAElP,EAAhZ,CAAkZ,CAC/c,SAASkzW,IAAI32W,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAI,GAAGmd,EAAEA,EAAEvxB,GAAGkU,EAAElU,EAA8Q,IAAvPmlK,GAAb59J,EAAE,IAAIw2T,IAAI/7T,IAAUi/P,MAAMg4B,MAAMlvF,GAAIxiM,GAAGyiM,MAAM0/C,KAAKn4N,GAAGw4K,GAAIxiM,GAAG83J,MAAMykI,MAAMxM,MAAMt4D,MAAMj9N,EAAEwvB,EAAExvB,EAAEwvB,EAAErxB,QAAQqH,EAAYgtP,GAAV5/O,EAAE,IAAIomU,IAAUxzU,GAAGo5P,IAAIhsP,GAAG8sK,MAAMG,MAAgB2yE,GAAV9uP,EAAE,IAAIs1U,IAAUxzU,GAAGo5P,IAAIl7P,EAAEi8K,KAAK0yE,GAAI7iO,EAAE5c,GAAak9P,GAAV/0O,EAAE,IAAI+vN,GAAUt7N,GAAGw4K,GAAIjtK,EAAEkkO,IAAI,MAAM3M,GAAIv3N,EAAEr3B,GAAG2uP,GAAIt3N,EAAE5oB,GAAGo3U,IAAI/jV,EAAEoN,EAAElP,GAAG2O,EAAE,IAAIm3M,GAAIh6L,EAAErd,EAAE,GAASE,EAAEF,EAAEE,EAAErS,EAAEk/K,MAASqqC,GAAIl3M,EAAEF,EAAEE,EAAErS,EAAEk/K,MAAfjhL,EAAqB2/K,GAAGvrK,EAAErS,EAAEs7M,GAAGjpM,EAAEmd,EAAEnd,EAAEF,KAAK,IAAOyrK,GAAG4qB,IAAIvqM,EAAE08T,KAAK,OAAY/7C,KAAMG,OAAMtsD,GAAIx0N,EAAEu4T,MAAMxuH,GAAI/pM,EAAEu4T,IAAIhnS,GAAGi6L,GAAIp3M,GAAG2jK,GAAIj7I,EAAE5oB,EAAElU,GAAI,CACzd,SAAS44W,IAAI52W,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAI2R,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAA0F,IAAxFjB,EAAE,IAAIs/J,GAAI5/J,EAAEo0P,GAAG/mQ,GAAGiU,EAAE9B,EAAElS,EAAEA,EAAI,EAAEE,EAAE,EAAE46B,EAAE,IAAI27I,GAAI9jK,EAAE,IAAI8jK,GAAIhzK,EAAE,IAAI6uK,GAAIz+J,EAAE,EAAEI,EAAE,EAAErU,EAAE,EAAEwD,EAAE,EAAEgP,EAAE,EAAE/Q,EAAE,EAAkB,GAAVqR,EAAE1S,EAAEi/K,OAASjhL,EAAEgoT,GAAItzS,EAAEnN,EAAEoN,MAASD,EAAE1S,EAAE0oN,GAAG1qN,GAASyF,EAAE8rB,EAAE9rB,EAAE8rB,EAAErxB,QAAQF,EAAE88B,EAAE96B,EAAE65N,GAAG77N,EAAE88B,GAAG56B,EAAEF,EAAE86B,EAAE98B,EAAEoF,GAAGyQ,GAAG7T,EAAEuF,EAAEvH,EAAEoF,GAAGlD,EAAEF,EAAEkS,EAAa+B,GAATjU,EAAEuvB,EAAEvxB,EAAEoF,GAAQpD,EAAEkS,EAAE7Q,GAAGnB,EAAEF,EAAEkS,EAAE9O,GAAGpD,EAAEuF,EAAEvH,EAAEoF,MAAOpF,GAAa,GAAV0U,EAAE1S,EAAEi/K,MAASprK,GAAGG,GAAGhU,EAAEuF,EAAEvH,EAAEoF,GAAGlD,EAAEF,EAAEkS,GAAG+B,GAAGsb,EAAEvb,KAAGhB,EAAEuc,EAAEvc,EAAEuc,EAAErxB,QAAQuF,EAAEA,EAAE,IAAI6uK,GAAIinB,GAAG5mL,EAAEmoB,GAAGA,EAAE96B,EAAEqvQ,KAAKj9P,GAAG/Q,EAAEzB,EAAEqzI,EAAK3/H,KAAKugB,IAAIj0B,EAAEwS,EAAEpS,EAAEkS,EAAE9O,GAAGgP,GAAG6B,EAAEJ,EAAEI,EAAEA,EAAE,EAAE5S,EAAE,EAAE+B,EAAE,GAAG,OAAO,IAAIozM,GAAI52M,EAAEoT,EAAE,CACpd,SAAS4mS,IAAI55S,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAIqD,EAAEyS,EAAEd,EAAEpT,EAAE,IAAI2vB,EAAkC,IAAI01I,GAAhC,IAAIR,GAAIzkK,EAAEuvB,EAAErd,GAAIlS,EAAEspO,KAAK3tB,MAAiBpsL,EAAEvvB,EAAEu7M,MAAU93M,EAAEk6K,GAAGpuJ,EAAEvvB,EAAEy7M,KAAK,IAA6B,OAATl2M,GAArC2M,EAAqByrK,GAAGl6K,EAAEq3M,KAAK,MAAU96M,KAAYuF,EAAE,MAAIxF,EAAE+2N,GAAI92N,EAAEuvB,EAAEhqB,KAAiB,GAAVA,EAAErH,SAAY6B,EAAEuhT,GAAIthT,IAAMD,IAAIi5O,GAAGj5O,EAAEwvB,EAAErd,GAAE,IAAQ0zN,GAAI7lO,EAAEwvB,EAAErd,GAAG,IAAIS,EAAEmsP,IAAI9+P,EAAEA,EAAE,GAAG2S,EAAET,GAAGS,EAAE5S,EAAEwvB,GAAIuL,EAAE6iJ,GAAGohF,GAAIpsP,GAAG,KAAKtR,EAAE+4L,GAAIp6L,EAAEuvB,EAAEuL,EAAE96B,GAAGJ,EAAEw6L,GAAIp6L,EAAEuvB,EAAEuL,EAAE5oB,GAAK7Q,GAAKzB,GAAGgmO,GAAIvkO,EAAEkuB,EAAE,IAAIinL,GAAI52M,EAAEk7B,EAAEvL,IAAa,IAATkyK,GAAIzhM,EAAEA,GAAOgT,EAAE8rP,IAAI9+P,EAAEkS,EAAE,GAAGc,EAAEd,GAAGc,EAAEjT,EAAEwvB,GAAIzb,EAAE6pK,GAAGohF,GAAI/rP,GAAG,KAAKd,EAAE0kN,GAAI52N,EAAEuvB,EAAEzb,EAAE9T,GAAGhC,EAAEo8L,GAAIp6L,EAAEuvB,EAAEzb,EAAE5B,GAAKA,GAAKlU,GAAG4nM,GAAI1zL,EAAElU,EAAE8V,EAAEyb,GAAGkyK,GAAIzhM,EAAEkS,EAAE,CAGrd,SAASsrU,IAAIx9U,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAI+6B,EAAIr3B,EAAEzF,EAAE,IAAIgC,EAAE86B,EAAE,CAAyC,GAAxC98B,EAAE,IAAIy0J,GAAIhvJ,EAAE,IAAIgvJ,GAA8B,OAA1BvgJ,EAAEmzR,KAAQrlS,EAAE65N,GAAG75N,EAAEkS,GAAc,CAAC,IAAI4oB,EAAE,IAAIikJ,GAAImM,GAAIlrL,IAAI86B,EAAEv1B,GAAGu1B,EAAE98B,EAAEihL,MAAuBmpC,GAAIpqN,EAAEw/U,IAApB7/J,GAAGwB,IAAIrkJ,GAAG,MAAkB5oB,EAAElS,EAAE0oN,GAAG1oN,GAASkS,EAAElS,EAAEi/K,IAAkB,CAAC,KAAQj/K,EAAE6T,IAAI7T,EAAE6T,EAAE,IAAIymL,GAAI2gD,IAAGj7O,EAAE,GAAG,KAA9BD,EAAmC,IAAIg/K,GAAI/+K,EAAE6T,GAAI9T,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAwB4K,GAAjBt6J,EAAEouJ,GAAGwB,IAAIp/K,GAAG,KAAU,KAAKkrL,GAAIxnL,EAAEk6K,GAAGpuJ,EAAE,KAAK89N,GAAI5pP,GAAGzD,EAAE0S,EAAE,IAAImyN,GAAI7kO,GAAG29K,GAAG0O,GAAIC,IAAKytD,KAAMC,KAAK95O,GAAG,GAAG,IAAIuD,EAAEzF,GAAGyF,EAAEkP,GAAGy1M,GAAIpqN,EAAEgC,EAAE0S,GAAG26O,GAAIrvP,GAAGgC,EAAE86B,EAAE,IAAIikL,IAAKphC,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,GAAG,IAAIlC,EAAEA,GAAGA,EAAE2U,GAAGw4O,GAAInrP,GAAGkS,IAAI,CAAC,CAAC,OAAOlS,EAAE86B,CAAC,CACtd,SAASmhU,IAAIj8V,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAA0G,IAAxGyS,EAAE3S,EAAEE,EAAEH,EAAEk+K,GAAGmV,IAAGsW,IAAI,GAAG/2L,EAAE,GAAG,GAAGpN,EAAE04K,GAAGmV,IAAGsW,IAAI,GAAG/2L,EAAE,GAAG,GAAG4c,EAAEvvB,EAAEoD,EAAE8O,EAAE+rK,GAAGmV,IAAGsW,IAAI,GAAGn6K,EAAE,GAAG,GAAGuL,EAAEmjJ,GAAGmV,IAAGsW,IAAI,GAAGn6K,EAAE,GAAG,GAAOnd,EAAE,EAAEA,EAAEO,EAAEP,IAAI,CAAK,IAAJ0B,EAAE,EAAQA,EAAEyb,IAAIgnR,IAAIv2S,EAAEoS,EAAE0B,MAAMA,EAAE/T,EAAEqS,GAAG0B,CAAC,CAAC,IAAIzS,EAAE,EAAEA,EAAEsR,EAAEtR,IAAI,CAAO,IAANyS,EAAEyb,EAAE,EAAQzb,GAAG,IAAIyiS,IAAIv2S,EAAEqB,EAAEyS,MAAMA,EAAEvO,EAAElE,GAAGyS,CAAC,CAAC,IAAIlU,EAAE,EAAEA,EAAE2vB,EAAE3vB,IAAI,CAAK,IAAJ6D,EAAE,EAAQA,EAAEkP,IAAI4jS,IAAIv2S,EAAEyD,EAAE7D,MAAM6D,EAAEyO,EAAEtS,GAAG6D,CAAC,CAAC,IAAIvD,EAAE,EAAEA,EAAEqvB,EAAErvB,IAAI,CAAO,IAANuD,EAAEkP,EAAE,EAAQlP,GAAG,IAAI8yS,IAAIv2S,EAAEyD,EAAEvD,MAAMuD,EAAEq3B,EAAE56B,GAAGuD,CAAC,CAAC,IAAIzF,EAAE,EAAEA,EAAE2U,EAAE3U,IAAK,IAAIgV,EAAE,EAAEA,EAAEuc,EAAEvc,IAAKhV,EAAE88B,EAAE9nB,IAAIhV,EAAEkU,EAAEc,IAAIA,EAAEzN,EAAEvH,IAAIgV,EAAEjT,EAAE/B,IAAIw4S,IAAIx2S,EAAEhC,EAAEgV,GAAE,GAAM,EAAO,CACvd,SAASkjS,IAAIl2S,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEuxB,EAAE0yJ,GAAIk6B,GAAG5T,IAAIvoM,GAAG66J,MAAMsoM,QAAQroU,EAAE96B,EAAEA,EAAEuvB,EAAExvB,EAAE0D,EAAEzD,EAAEA,EAAED,EAAEA,EAAKwvB,GAAG5c,EAAE23M,GAAIuQ,GAAI,IAAI5lB,GAAIxxM,EAAEzD,EAAEyD,EAAEyO,GAAG4oB,GAAG,IAAK98B,EAAEssN,GAAIrE,GAAIjmN,EAAEuF,GAAG,IAAK2M,EAAE2oN,GAAIh7C,GAAI,IAAIo1B,GAAIn6K,EAAE96B,EAAE86B,EAAE5oB,GAAGS,GAAG3U,GAAG80N,GAAI9yN,EAAED,EAAEmS,KAAQ3M,EAAE+6K,GAAIC,GAAGgoB,IAAIvoM,EAAEA,EAAE4iW,OAAO7iW,EAAEC,EAAED,EAAK+6B,EAAE96B,GAAGyD,EAAEzD,EAAM86B,EAAE5oB,GAAGzO,EAAEyO,GAAGnS,EAAEC,EAAEyD,EAAEzD,GAAG86B,EAAE96B,EAAEyD,EAAEzD,GAAG,EAAEuF,EAAExF,EAAEmS,EAAEzO,EAAEyO,GAAG4oB,EAAE5oB,EAAEzO,EAAEyO,GAAG,EAAE3M,EAAEvF,EAAEuF,EAAE2M,IAAOnS,EAAEC,EAAEyD,EAAEzD,GAAG86B,EAAE96B,EAAEyD,EAAEzD,GAAG,EAAEuF,EAAExF,EAAEmS,EAAE4oB,EAAE5oB,GAAGzO,EAAEyO,EAAE4oB,EAAE5oB,GAAG,EAAE3M,GAAWu1B,EAAE5oB,GAAGzO,EAAEyO,GAAGnS,EAAEC,EAAE86B,EAAE96B,GAAGyD,EAAEzD,EAAE86B,EAAE96B,GAAG,EAAEuF,EAAExF,EAAEmS,EAAEzO,EAAEyO,GAAG4oB,EAAE5oB,EAAEzO,EAAEyO,GAAG,EAAE3M,IAAOxF,EAAEC,EAAE86B,EAAE96B,GAAGyD,EAAEzD,EAAE86B,EAAE96B,GAAG,EAAEuF,EAAExF,EAAEmS,EAAE4oB,EAAE5oB,GAAGzO,EAAEyO,EAAE4oB,EAAE5oB,GAAG,EAAE3M,EAAEvF,EAAEuF,EAAE2M,GAAI,CACvd,SAASg+S,IAAIlwT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,GAAM,MAAHgC,EAAS,OAAO,KAAgB,GAAM,IAAjB86B,EAAE96B,EAAE9B,QAAgB,MAAO,GAAwF,IAArFF,EAAEigL,GAAGo3C,IAAGC,IAAI,GAAGx6L,EAAE,GAAG,GAAG0kP,GAAI,EAAE1kP,EAAE96B,EAAE9B,QAAQshR,GAAI,EAAE1kP,EAAE98B,EAAEE,QAAQ23O,GAAI71O,EAAE,EAAE86B,EAAE98B,EAAE,GAAGuxB,EAAE,KAAK9rB,EAAEyO,EAAM3M,EAAE,EAAEoN,EAAE,EAAEpN,EAAEu1B,EAAEv1B,IAAKxF,EAAE/B,EAAEuH,GAAGsxW,MAAS92W,GAAG,IAAgB,IAAJ,EAAP+2W,IAAI/2W,IAAa0D,IAAI8rB,IAAIA,EAAE,IAAIs+L,GAAI7tN,IAAIwqP,GAAIj7N,EAAEhqB,EAAEoN,OAAUlP,EAAEyO,EAAQ,IAAHnS,KAAQwvB,IAAIA,EAAE,IAAIs+L,GAAI7tN,IAAI8hP,GAAIvyN,EAAEhqB,EAAEoN,EAAEpN,EAAEoN,EAAE,EAAE8wF,OAAOgjH,aAAa,OAAYhjN,GAAE,EAAO,OAAGA,EAAO8rB,GAA+BuL,EAAEvL,EAAEvvB,EAAE9B,QAAgB,EAAE45L,GAAIvoK,EAAEvvB,EAAE,EAAE86B,EAAE,GAAG,GAA5D96B,EAAEyzD,OAAO,EAAE34B,EAAE,GAAgEvL,EAAIA,EAAEvvB,EAAJA,CAAM,CACxd,SAAS+2W,IAAI/2W,GAAGylM,GAAIzlM,EAAE,IAAI6wU,IAAIjqJ,GAAIJ,GAAIG,GAAID,GAAI,IAAIh4B,GAAIsoN,KAAK,aAAa,yGAAyG,IAAIn9N,MAAO0hH,GAAIv7P,EAAEg3W,IAAIC,IAAIz2L,IAAI+2I,MAAMh8D,GAAIv7P,EAAEg3W,IAAIE,IAAI12L,IAAIi3I,MAAMl8D,GAAIv7P,EAAEg3W,IAAIrW,IAAIngL,IAAIm3I,MAAMp8D,GAAIv7P,EAAEg3W,IAAIxW,IAAIhgL,IAAIo3I,MAAMr8D,GAAIv7P,EAAEg3W,IAAI3tC,IAAI7oJ,IAAIq3I,MAAMt8D,GAAIv7P,EAAEg3W,IAAIztC,IAAI/oJ,IAAIs3I,MAAMv8D,GAAIv7P,EAAEg3W,IAAI7tC,IAAI3oJ,IAAIu3I,MAAMx8D,GAAIv7P,EAAEg3W,IAAIvtC,IAAIjpJ,IAAIw3I,MAAMz8D,GAAIv7P,EAAEg3W,IAAI37D,IAAI76H,IAAI03I,MAAM38D,GAAIv7P,EAAEg3W,IAAIx7D,IAAIh7H,IAAI23I,MAAM58D,GAAIv7P,EAAEg3W,IAAIt7D,IAAIl7H,IAAI43I,MAAM78D,GAAIv7P,EAAEg3W,IAAIp7D,IAAIp7H,IAAI63I,KAAK,CAC3d,SAAS8+C,IAAIn3W,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAI2O,EAAE/Q,EAAEyS,EAAuE,GAAtDqvJ,GAAbroI,EAAE,IAAIihS,IAAI/7T,IAAUi/P,MAAMi4B,MAAMnvF,GAAIjtK,GAAGuiI,MAAMykI,MAAMxM,MAAMt4D,MAAMz3N,EAAE,EAAK2M,EAAE,CAAsF,IAA3E61L,GAAVp1L,EAAE,IAAIomU,KAAW/wI,MAAM0/C,KAAKx1O,GAAG61L,GAAIjtK,EAAE4sN,IAAIx1O,EAAElU,GAAG2gQ,IAAIhsP,GAAG8sK,MAAMG,MAAM2yE,GAAI5/O,EAAEmoB,GAAsBz5B,EAAE,EAAEyS,GAAR1B,EAAbooP,GAAItoP,EAAE3M,IAAmBrH,OAAOmD,EAAEyS,IAAIzS,EAAU+wP,GAALhgP,EAAE/Q,GAASsR,GAAGo1L,GAAI71L,EAAEygQ,IAAI73O,KAAKv1B,CAAC,CAAC,GAAGgqB,EAAE,CAAsF,IAArF9rB,EAAE,IAAIs1U,IAAIhxI,GAAIjtK,GAAGktK,MAAM0/C,KAAKn4N,EAAEvxB,GAAG+pM,GAAItkM,EAAEikP,IAAIn4N,GAAGovO,IAAIl7P,GAAGg8K,MAAMC,MAAM6yE,GAAI9uP,EAAEq3B,GAAsBz5B,EAAE,EAAEyS,GAAR1B,EAAbooP,GAAIjrO,EAAE5c,IAAmBzU,OAAOmD,EAAEyS,IAAIzS,EAAUgxP,GAALjgP,EAAE/Q,GAASoC,GAAGskM,GAAIx4K,EAAEojP,IAAI73O,KAAKv1B,CAAC,CAA6C,OAA5CwiM,GAAIjtK,GAAGktK,MAAM+mK,KAAK/2J,GAAIzyM,IAAIxF,EAAEwvB,EAAExvB,EAAEwvB,EAAErxB,QAAQ48B,EAASA,CAAC,CAC3d,SAASulI,MAAMA,IAAI3rB,EAAIohJ,IAAIv3G,GAAGC,GAAG62C,IAAG,GAAGC,IAAI,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,KAAKokF,IAAI,IAAIzmS,OAAO,gBAAgB,IAAImkW,IAAI74L,GAAGC,GAAG64L,IAAG,GAAGl5L,IAAI,KAAK,EAAE,CAAC,IAAI9M,IAAKkzC,KAAK4oG,IAAG,+BAA+B/zF,IAAI91C,KAAKA,KAAKC,SAAQ,IAAIlS,GAAI87I,IAAG,8BAA8B/zF,GAAS71C,OAAO,IAAIlS,GAAI87I,IAAG,wBAAwB/zF,GAAS71C,OAAO,IAAIlS,GAAI87I,IAAG,qBAAqB/zF,GAAS71C,OAAO,IAAIlS,GAAI87I,IAAG,aAAa/zF,GAAS71C,QAAQ,CAAC,MAAMvjL,KAAY,IAAI6pL,GAAb7pL,IAAE8pL,GAAI9pL,KAAY,IAAI,MAAMkzK,GAAIlzK,IAAE,CAAC,CAE3d,SAASs3W,IAAIt3W,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAA4F,OAAhEZ,GAA1BpU,EAAE68N,GAAI,IAAI5lB,GAAI1lL,EAAEvvB,EAAEuvB,EAAErd,GAAGlS,IAAOA,EAAEkS,EAAEA,EAAElU,EAAEkU,EAAEA,EAAElS,EAAEqB,EAAE6Q,EAAElS,EAAED,EAAEmS,EAAEA,EAAEA,EAAEnS,EAAEC,EAAE8T,GAAG9V,EAAEgC,EAAED,EAAEmS,EAAElU,EAAEkU,EAAEnS,EAAEC,GAAGqB,EAAE2R,EAAEZ,EAAE/Q,EAAQ,GAAHA,EAAY,GAAH+Q,GAAwD0oB,EAAEmlP,GAAIjgR,EAAxDuF,EAAEs6K,GAAI,IAAIo1B,GAAI1lL,EAAEvvB,EAAEuvB,EAAErd,GAAGo4M,GAAI,IAAIrV,GAAIl1M,EAAEC,EAAED,EAAEmS,GAAG,MAAiBS,EAAEstQ,GAAIpgG,GAAI,IAAIo1B,GAAIj1M,EAAEA,EAAEA,EAAEkS,GAAGA,GAAG3M,GAAG9B,EAAkC,GAAhCwvI,EAAK3/H,KAAKuc,KAAK9vB,EAAEC,EAAED,EAAEC,EAAED,EAAEmS,EAAEnS,EAAEmS,GAAU4oB,EAAEnoB,GAAGmoB,GAAGr3B,EAAU,IAAIwxM,GAAIj1M,EAAEA,EAAEA,EAAEkS,GAAMS,GAAGlP,EAAUo8K,GAAI,IAAIo1B,GAAIj1M,EAAEA,EAAEA,EAAEkS,GAAGA,GAAU,MAAiB,KAAkB4B,GAAG,GAAGA,GAAG,GAAGd,GAAG,GAAGA,GAAG,EAAE6sK,GAAI,IAAIo1B,GAAIj1M,EAAEA,EAAEA,EAAEkS,GAAGo4M,GAAI,IAAIrV,GAAI/iM,EAAElS,EAAEkS,EAAEA,GAAG4B,IAAI,IAAK,CAG9d,SAASyjW,IAAIv3W,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAI3U,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAW,IAAI3R,EAA8B,IAAImjK,GAA5B,IAAID,GAArB6iL,IAAIpnV,IAAyBA,EAAEspO,KAAK3tB,MAAiBt6M,EAAErB,EAAEu7M,MAAM,CAAkF,IAA9Eh2M,EAAEo4K,GAAGt8K,EAAErB,EAAEy7M,KAAK,IAAmB3nM,EAAE,EAAEd,EAAE,EAAEc,GAA5C1B,EAAqBurK,GAAGp4K,EAAEsnM,KAAK,KAAiB9sM,EAAEA,EAAEiT,EAAEZ,EAAElS,EAAEgS,EAAEE,EAAErS,EAAEC,EAAEA,EAAED,EAAEqS,EAAEhP,GAAG,EAAEmsB,EAAEnd,GAAS0oB,EAAE96B,EAAEA,EAAEuvB,EAAEnsB,KAAKgP,GAAGrS,EAAEyyT,IAAIjjS,EAAEuL,GAAG98B,EAAE,EAAoBA,EAAlBgC,EAAEuvB,IAAIw+N,KAAME,KAAQluP,EAAEA,EAAEH,EAAEsS,EAAEnS,EAAEA,EAAEC,EAAEkS,EAAEnS,EAAEwvB,EAAE3vB,EAAEsS,EAAEnS,EAAEwvB,EAAEvvB,EAAEkS,EAAMnS,EAAEwvB,EAAE3vB,EAAEsS,EAAEnS,EAAEwvB,EAAEvvB,EAAEkS,EAAEnS,EAAEA,EAAEH,EAAEsS,EAAEnS,EAAEA,EAAEC,EAAEkS,EAAGS,EAAE2tK,GAAItgL,EAAED,EAAEwvB,EAAEnsB,IAAIpF,EAAEgC,EAAED,EAAE+6B,EAAE13B,GAAGuP,EAAEmB,EAAEm/H,EAAK3/H,KAAKugB,IAAI/f,EAAEgnB,EAAE/6B,EAAEA,EAAE4S,GAAGK,EAAEigI,EAAK3/H,KAAKugB,IAAI7gB,EAAEL,EAAEmoB,EAAE56B,EAAEgS,EAAE4oB,EAAE/6B,EAAEC,GAAGuvB,EAAEuL,EAAEvL,EAAEnd,EAAE,GAAGpS,EAAED,EAAEwvB,EAAEnsB,GAAGk9K,GAAItgL,EAAED,EAAEwvB,EAAEnsB,IAAI0Q,EAAEyb,EAAEvvB,EAAEA,EAAEuvB,EAAEnsB,SAASmsB,GAAGnd,GAAGpS,EAAEkS,EAAEE,EAAEhP,GAAG0Q,EAAEd,CAAC,CAAC,CAC/d,SAAS6wM,IAAI7jN,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAoC,IAAlChT,EAAEkS,GAAE,EAAM4B,EAAEwiK,IAAIt4K,EAAEu4K,IAAIvjK,EAAEsjK,IAAIlkK,EAAEmkK,IAAQx2K,EAAEC,EAAEuF,EAAEvF,EAAE2hP,KAAKhmC,KAAK57M,EAAEw7M,MAAkI,IAA1Gh2M,GAAjBgqB,EAAEouJ,GAAG59K,EAAE07M,KAAK,MAASz7M,EAAE8T,EAAEm/H,EAAK3/H,KAAKsgB,IAAI9f,EAAEvO,EAAEgqB,GAAGvxB,EAAEi1I,EAAK3/H,KAAKugB,IAAI71B,EAAEuH,EAAEgqB,EAAEhqB,EAAE2M,GAAGc,EAAEigI,EAAK3/H,KAAKsgB,IAAI5gB,EAAEzN,EAAExF,GAAGqS,EAAE6gI,EAAK3/H,KAAKugB,IAAIzhB,EAAE7M,EAAExF,EAAEwF,EAAEvF,GAAO2S,EAAE,IAAIgzJ,GAAIp2I,EAAEA,GAAG5c,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,SAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,MAAS3S,EAAOA,GAAeyD,GAAZpC,EAAEkE,EAAExF,EAAE+6B,EAAE5oB,EAAEA,GAAM4oB,EAAEvL,EAAEvc,EAAEigI,EAAK3/H,KAAKsgB,IAAI5gB,EAAE3R,GAAG+Q,EAAE6gI,EAAK3/H,KAAKugB,IAAIzhB,EAAE3O,KAAoBA,GAAZpC,EAAEkE,EAAEgqB,EAAEuL,EAAE5oB,EAAElS,GAAM86B,EAAEvL,EAAEzb,EAAEm/H,EAAK3/H,KAAKsgB,IAAI9f,EAAEzS,GAAGrD,EAAEi1I,EAAK3/H,KAAKugB,IAAI71B,EAAEyF,IAAKzD,EAAEA,EAAE,IAAIi1M,GAAIj3M,EAAE8V,EAAE1B,EAAEY,GAAGhT,EAAEuvB,EAAE,IAAI0lL,GAAInhM,EAAE9T,EAAED,EAAEC,EAAEgT,EAAEhT,EAAED,EAAEmS,EAAE,CAEje,SAASw5T,IAAI1rU,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAIoN,EAAI3U,EAAE,IAAIgC,EAAEA,EAAE,CAAqD,GAApDA,EAAEE,EAAE,KAAKlC,EAAE,IAAImzK,GAAInxK,GAAGkS,EAAE,IAAIwgJ,GAA8B,OAA1BnjI,EAAE81Q,KAAQrlS,EAAE65N,GAAG75N,EAAEuvB,GAAc,CAAC,IAAI5c,EAAE,IAAIosK,GAAImM,GAAIlrL,IAAI2S,EAAEpN,GAAGoN,EAAE3U,EAAEihL,MAAuBmpC,GAAIpqN,EAAE0tU,IAApB/tJ,GAAGwB,IAAIxsK,GAAG,MAAkB4c,EAAEvvB,EAAE0oN,GAAG1oN,GAASuvB,EAAEvvB,EAAEi/K,IAAkB,CAAC,KAAQj/K,EAAE6T,IAAI7T,EAAE6T,EAAE,IAAIymL,GAAI2gD,IAAGj7O,EAAE,GAAG,KAA9BuF,EAAmC,IAAIw5K,GAAI/+K,EAAE6T,GAAItO,EAAEA,GAAGA,EAAEvH,EAAEihL,MAAwB4K,GAAjB9pL,EAAE49K,GAAGwB,IAAI55K,GAAG,KAAU,MAAM0lL,GAAI/4K,EAAEyrK,GAAG59K,EAAE,KAAKstP,GAAIn7O,GAAGlS,EAAEqB,EAAE,IAAIujO,GAAI5kO,GAAG29K,GAAG0O,GAAIC,IAAKytD,KAAMC,KAAK95O,GAAG,GAAG,IAAIgS,EAAElU,GAAGkU,EAAES,GAAGy1M,GAAIpqN,EAAEgC,EAAEqB,GAAGgsP,GAAIrvP,GAAGgC,EAAEA,EAAE,IAAI++M,IAAKphC,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,GAAG,IAAIlC,EAAEA,GAAGA,EAAE2U,GAAGw4O,GAAInrP,GAAGkS,IAAI,CAAC,CAAC,OAAOlS,EAAEA,CAAC,CACne,SAASw3W,IAAIx3W,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,GAAG,IAAM3U,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAmD,OAAjDc,GAAE,EAAM9V,EAAE+gT,IAAIxvR,EAAEvb,EAAE9B,EAAE4oB,EAAE5oB,EAAEA,EAAEqd,EAAEvb,EAAE8mB,MAAG9nB,EAAEzN,GAAGgqB,EAAEvb,EAAEzO,EAAEvH,EAAE2U,IAAQ5S,EAAE4S,KAAgBP,EAAE0oB,GAAG96B,EAAEuvB,EAAErxB,OAAO,GAAG8U,IAAIyqM,GAAI3iL,EAAE96B,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAEuL,GAAG,MAAMv1B,KAAElE,EAAK+/Q,IAAIrhR,EAAEiT,GAAE,GAAShT,GAAQkS,EAAEA,IAAIE,MAAmBA,GAAG/Q,GAAG6Q,EAAEA,KAAME,GAAG/Q,EAAE6Q,EAAEA,GAAGqd,EAAExvB,EAAEsB,EAAE8/Q,GAAI5xP,EAAEmqT,IAAInqT,EAAEluB,MAAS29S,IAAIzvR,EAAEvb,EAAEhW,GAAGuxB,EAAEA,GAAE,GAAK4xP,GAAIphR,EAAEwF,GAAGgqB,EAAE1b,EAAE0b,EAAE7c,IAAIk8S,IAAI7uT,EAAEwvB,EAAEvb,EAAEzO,EAAEgqB,EAAEvb,EAAEjU,EAAEmS,EAAE4oB,GAAG+iQ,GAAI3rR,EAAEnS,GAAMC,EAAEuvB,EAAErxB,OAAO48B,IAAGktS,KAAKvqH,GAAI3iL,EAAE96B,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAEuL,GAAG,MAAM/6B,GAAkD,IAA9C09M,GAAI3iL,EAAE96B,EAAEuvB,EAAErxB,QAAQy/K,GAAG39K,EAAEuvB,EAAEuL,GAAG,MAAM96B,EAAEuvB,EAAErxB,QAAW22O,GAAI70O,EAAE86B,IAAGhnB,GAAE,GAAYA,GAAC,CACre,SAAS6kN,IAAI34N,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAmD,GAAjDA,EAAE0mN,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAG3M,EAAE,EAAEu1B,EAAE6iJ,GAAG39K,EAAE2S,EAAE,KAAK3U,EAAE,KAAKmuM,KAASxuB,GAAGzrK,EAAE,IAAIq1M,MAAM,IAAI9jN,EAAE,EAAEA,EAAEzD,EAAEhC,IAAIyF,EAAU,GAAPkP,EAAEmoB,EAAEr3B,GAAMpC,EAAE4mN,GAAGt1M,EAAEu1M,MAAM,CAAC,GAAG51B,GAAG3/K,EAAE4c,GAAG,CAACvxB,EAAE2U,EAAE,KAAK,GAAGpN,CAAC,OAAQ,GAAM,MAAHgqB,GAAS,IAAI9rB,EAAE,EAAEA,EAAEzD,EAAEhC,IAAIyF,EAAU,GAAPkP,EAAEmoB,EAAEr3B,GAAMpC,EAAE4mN,GAAGt1M,EAAEu1M,MAAM,CAAC,GAAG51B,GAAG/iK,EAAE5c,EAAEmoM,MAAM,CAAC98M,EAAE2U,EAAE,KAAK,GAAGpN,CAAC,OAAQ,IAAI9B,EAAE,EAAEA,EAAEzD,EAAEhC,IAAIyF,EAAU,GAAPkP,EAAEmoB,EAAEr3B,GAAMpC,EAAE4mN,GAAGt1M,EAAEu1M,MAAM,CAAC,GAAW,MAARv1M,EAAEmoM,KAAW,CAAC98M,EAAE2U,EAAE,KAAK,GAAGpN,CAAC,CAAgI,OAA1HvH,IAAMsjN,GAAIthN,EAAEuF,KAAI6M,EAAEF,EAAE+rN,KAAK,IAAI6tB,GAAI9rP,EAAEuF,EAAE,EAAE2M,EAAEqd,EAAE,KAAKhqB,GAAE,GAAM24N,GAAIl+N,EAAEkS,EAAEksN,KAAK,EAAE,EAAElsN,EAAEqd,EAAErd,EAAEmsN,MAAM,GAAE,GAAMt+N,EAAEA,EAAEu+N,GAAGlsN,GAAIrS,EAAEqS,GAAGrS,EAAEgpW,IAAI/oW,EAAEhC,EAAE+B,IAAUA,CAAC,CACre,SAAS03W,IAAIz3W,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,GAAG,IAAIlP,EAAEzF,EAAEoU,EAAE/Q,EAAI2R,EAAEpT,EAAEM,EAAEkD,EAAkC,OAAhClD,EAAE,EAAEkD,EAAE,EAAEpF,EAAEuH,EAAEgqB,EAAE9rB,EAAE8B,EAAE2M,EAAE7Q,EAAEkuB,EAAEuL,EAAEl7B,EAAE2vB,EAAE5c,EAAST,EAAES,GAAG,KAAK,EAAEzS,EAAEH,EAAE/B,EAAE+B,EAAE4S,EAAEA,EAAOvP,EAALpD,EAAEuvB,EA77BnH,SAAavvB,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAa,IAAX88B,EAAE,KAAKv1B,EAAE,EAAM9B,EAAE,IAAIkiK,GAAIzzJ,GAAGzO,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAyBF,GAAhB2U,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAAQ2O,EAAEO,EAAEmoB,EAAK96B,EAAE2S,EAAE3U,EAAE2U,EAAEA,EAAE5S,IAAI+6B,EAAQvL,EAAEnd,EAAEpU,EAAEuxB,EAAEnd,EAAE7M,IAAIu1B,EAAEnoB,GAArBmoB,EAAEnoB,EAAsBpN,EAAEu1B,EAAE1oB,EAAE0oB,EAAEA,GAAG,OAAQA,EAAIv1B,EAAExF,EAAJ,CAAK,CA67B3D23W,CAAIx3W,EAAE46B,EAAE/6B,EAAE4S,GAAO5S,EAAEqS,EAAGY,EAAEigI,EAAK3/H,KAAKugB,IAAI71B,EAAEkC,EAAEN,GAAGwS,EAAE6gI,EAAK3/H,KAAKugB,IAAIpwB,EAAEL,EAAE/B,GAAG,MAAM,KAAK,EAAE+B,EAAErD,EAAEqS,EAAErS,EAAE+6B,EAAEnoB,EAAOzS,EAALF,EAAEuvB,EA97BvN,SAAavvB,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAa,IAAXuH,EAAE,KAAKu1B,EAAE,EAAMr3B,EAAE,IAAIkiK,GAAIzzJ,GAAGzO,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAyBF,GAAhB2U,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAAQzF,EAAE2U,EAAEA,EAAK3S,EAAE2S,EAAEP,EAAEO,EAAEmoB,EAAE/6B,IAAIwF,EAAQgqB,EAAEvxB,EAAEA,EAAEuxB,EAAEvxB,EAAE88B,IAAIv1B,EAAEoN,GAArBpN,EAAEoN,EAAsBmoB,EAAEv1B,EAAEvH,EAAEuH,EAAEoN,GAAG,OAAQpN,EAAIu1B,EAAE/6B,EAAJ,CAAK,CA87ByC43W,CAAIv0W,EAAE03B,EAAE/6B,EAAE4S,GAAO5S,EAAE/B,EAAGgV,EAAEigI,EAAK3/H,KAAKugB,IAAI71B,EAAEkC,EAAEN,GAAGwS,EAAE6gI,EAAK3/H,KAAKugB,IAAIpwB,EAAEL,EAAE/B,GAAG,MAAM,KAAK,EAAEnB,EAAElC,EAAE2U,EAAEvP,EAAE,EAAE4P,EAAEhV,EAAE2U,EAAE/S,EAAEwS,EAAE6gI,EAAK3/H,KAAKugB,IAAIpwB,EAAEpC,GAAG,MAAM,KAAK,EAAEnB,EAAE,EAAEkD,EAAEK,EAAEkP,EAAEK,EAAEigI,EAAK3/H,KAAKugB,IAAI71B,EAAE4B,GAAGwS,EAAE3O,EAAEkP,EAAEtR,EAAE,MAAM,QAAQ,MAAM6xK,GAAI,IAAI2O,GAAI,4BAAsD,OAAvB,IAAIklD,GAAI/mO,EAAEA,EAAEgT,EAAEZ,EAAEF,EAAEhS,EAAEkD,EAAW,CAGte,SAASw0W,IAAI53W,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAkC,GAAhCpU,EAAE+pN,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAG4oB,EAAE6iJ,GAAG39K,EAAE2S,EAAE,KAAQ60M,IAAIxnN,EAAEuF,EAAE2M,GAAG,CAAK,IAAJ3M,EAAE,EAAM9B,EAAE,EAAEA,EAAEzD,EAAEhC,IAAIyF,EAAU,GAAPkP,EAAEmoB,EAAEr3B,GAAMzF,EAAEiqN,GAAGt1M,EAAEu1M,MAAM,CAAC,GAAG3iN,GAAGgqB,EAAS,OAAN48K,KAASxuB,GAAGzrK,EAAE,IAAIq1M,KAAa50M,GAAmB,OAAZP,EAAEO,EAAEmoM,OAAc/6M,GAAG8pL,GAAG33K,EAAE,KAAwB,IAAlByrK,GAAGzrK,EAAE,IAAIsjK,GAAGmyC,OAAUv1M,EAAEwjP,IAAI51P,EAAEkS,EAAEzO,EAAE8B,EAAE6M,IAAWA,KAAK7M,CAAC,CAAE,MAAM2tK,GAAI,IAAIgO,GAAI65C,IAAIxrM,EAAEyrM,IAAIz1N,GAAG,CAAU,IAAJA,EAAE,EAAM9B,EAAE,EAAEA,EAAEzD,EAAEhC,IAAIyF,EAAE,CAAQ,GAAPkP,EAAEmoB,EAAEr3B,GAAMzF,EAAEiqN,GAAGt1M,EAAEu1M,MAAa,OAAN/b,KAASxuB,GAAGzrK,EAAE,IAAIq1M,KAAa50M,GAAmB,OAAZP,EAAEO,EAAEmoM,OAAc/6M,GAAG8pL,GAAG33K,EAAE,KAAwB,IAAlByrK,GAAGzrK,EAAE,IAAIsjK,GAAGmyC,OAAUv1M,EAAEwjP,IAAI51P,EAAEkS,EAAEzO,EAAE8B,EAAE6M,IAAWA,KAAK7M,CAAC,CAAC,OAAO2M,EAAEmsN,IAAK,CACxe,SAASw5I,IAAI73W,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAgB,GAAdkE,EAAEo4K,GAAG39K,EAAE2S,EAAE,KAAQ60M,IAAIxnN,EAAEuF,EAAE2M,GAAI,OAAOi6L,KAAMxuB,GAAGzrK,EAAE,IAAIq1M,KAAK,IAAI6f,GAAIl1N,EAAElS,GAAG,IAAIm6M,GAAIjoM,EAAElS,GAA8B,IAAtBoS,EAAE21M,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAGnS,EAAE,EAAM0D,EAAE,EAAEA,EAAEzD,EAAEhC,IAAIyF,EAAE,CAAiB,GAATkP,GAAPmoB,EAAEv1B,EAAE9B,IAAOykN,KAAQ91M,EAAE61M,GAAGt1M,GAAG,CAAO,GAANw5L,KAASxuB,GAAGzrK,EAAE,IAAIq1M,KAAM,OAAOzsL,EAAO,GAAGnoB,IAAIszU,MAAMC,MAAMvzU,GAAGwzU,IAAI,CAAwB,IAAvBnoV,EAAE,IAAI8vN,GAAIW,GAAI3zL,EAAEggL,SAAer3M,EAAEzD,EAAEhC,KAAU2U,GAAPmoB,EAAEv1B,EAAE9B,IAAOykN,OAASg+H,KAAKvzU,GAAGwzU,MAAMvpI,GAAI5+M,EAAEywN,GAAI3zL,EAAEggL,OAAO,OAAOghB,GAAIn+C,GAAGzrK,EAAEqyP,KAAK,KAAKvmQ,EAAEgC,EAAE,CAA8E,OAA5D,OAAZqB,EAAEy5B,EAAEggL,OAAcvrL,GAAGs6J,GAAG33K,EAAE,KAAwB,IAAlByrK,GAAGzrK,EAAE,IAAIsjK,GAAGmyC,OAAUtmN,EAAEu0P,IAAI51P,EAAEkS,EAAEzO,EAAE1D,EAAEsB,IAAWA,CAAE,GAAGtB,CAAC,CAAC,OAAOmS,EAAEmsN,IAAK,CACxe,SAAS+iD,IAAIphR,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAiG,IAA/F8nB,EAAE,EAAEnoB,EAAE3S,EAAEiU,EAAE1O,EAAE,EAAExF,EAAE,EAAE/B,EAAE,EAAEgV,EAAE,EAAEc,EAAE,EAAKyb,IAAGvvB,EAAEJ,EAAE2vB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGpI,GAAI/1K,EAAEJ,EAAE,IAAI4vP,GAAIxvP,EAAE6T,EAAE7T,EAAEiU,EAAEjU,EAAEhC,KAAIyF,EAAE,EAAMpC,EAAE,IAAIskK,GAAI3lK,EAAEkS,GAAG7Q,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAA4B48B,GAAnB1oB,EAAEurK,GAAGC,GAAIv8K,GAAG,KAAWsR,GAAGlP,EAAE,EAAEzD,EAAEhC,EAAE,GAAGkU,GAAGlU,EAAE,IAAG88B,EAAE,EAAEnoB,GAAG3U,EAAEgC,EAAEhC,EAAEuH,EAAE0tI,EAAK3/H,KAAKugB,IAAItuB,EAAEyN,GAAGjT,GAAG/B,EAAEgC,EAAEhC,EAAEA,EAAE,EAAEgV,EAAE,EAAKuc,MAAKzb,EAAEiiK,GAAI/1K,EAAEJ,EAAE,IAAI4vP,GAAIxvP,EAAE6T,EAAElB,EAAE3S,EAAEhC,KAAIyF,EAAE,GAAEuP,GAAGZ,EAAEO,GAAGlP,EAAE,EAAEzD,EAAEhC,EAAE,GAAGA,EAAEi1I,EAAK3/H,KAAKugB,IAAI71B,EAAEoU,EAAE0oB,GAAGvL,GAAGw3R,IAAIppI,GAAG0pB,GAAIrnM,EAAEJ,EAAEkU,GAAG,KAAK1B,GAAG0oB,GAAG1oB,EAAEO,GAAGlP,EAAE,EAAEzD,EAAEhC,EAAE,KAAKyF,EAAuD,OAArD8B,EAAE0tI,EAAK3/H,KAAKugB,IAAItuB,EAAEyN,GAAGjT,GAAG/B,EAAKuxB,IAAGvvB,EAAE0S,EAAEnN,EAAEvF,EAAED,EAAEA,EAAE6iU,IAAI5iU,EAAEoS,IAAU,IAAI81L,GAAIloM,EAAE6T,EAAE7T,EAAEiU,EAAE1O,EAAExF,EAAE,CACze,SAASujQ,IAAItjQ,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAS,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAA8N,GAAxP+/L,KAA4Bq0C,GAAIh0O,EAAE,OAAOg0O,GAAIzkN,EAAE,QAAQvc,EAAEg2E,GAAGhpF,GAAGhC,EAAEgrF,GAAGz5D,GAAG+0M,GAAa,IAAJ,EAAJtxN,EAAEhV,GAAQ,2BAA2BsmO,GAAa,IAAJ,EAAJtmO,EAAEA,GAAQ,4BAA4B8V,EAAEd,EAAEuc,EAAE5c,EAAE3U,EAAEuxB,EAAE+0M,GAAa,IAAJ,EAAJxwN,EAAE9V,GAAQ8V,GAAGnB,EAAW,IAAJ,EAAJA,EAAE3U,GAAQ,2BAA2B4B,EAAEI,EAAE9B,OAAOkU,EAAEmd,EAAErxB,OAAUgU,EAAE,GAAGnS,EAAE,GAAGwF,EAAE,GAAG2M,EAAE3M,EAAE3F,GAAGG,EAAEwF,EAAE6M,EAAG,MAAM8gK,GAAI,IAAI0B,IAAK,GAAY,IAAJ,EAAJ9gK,EAAE9V,IAASgV,GAAGhV,EAAmB,GAAhBqD,EAAE0qR,GAAG/rR,GAAG86B,EAAEixP,GAAGx8P,GAAMwrL,GAAG/6M,KAAK+6M,GAAGxrL,IAAIrd,EAAEnS,EAAQ,IAALmS,GAAG3M,EAAM9B,EAAE1D,EAAEwF,EAAE9B,KAAI1D,GAAI4mM,GAAG7rK,EAAEr3B,EAAEpC,IAAI6Q,SAAU,IAAIzO,EAAE1D,EAAEwF,EAAExF,EAAE0D,GAAIkjM,GAAG7rK,EAAE/6B,IAAIsB,EAAE6Q,WAAa3M,EAAE,GAAG29N,IAAIljO,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAE,EAAK,CAC3e,SAASmnS,MAAMA,IAAIh4J,EAAIk4J,IAAIruH,GAAGC,GAAG4U,IAAG,GAAGsW,IAAI,GAAG,GAAG,CAACzR,IAAI,WAAW6I,IAAI,WAAW,UAAU,WAAWA,IAAI,UAAUovI,IAAI,UAAU,UAAU,UAAU,WAAW,UAAU,UAAU,UAAU,UAAU,UAAU,MAAW,WAAW,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,MAAU,UAAUpvI,IAAI,WAAW,WAAW,WAAW,WAAW6rG,IAAIpuH,GAAGC,GAAG4U,IAAG,GAAGsW,IAAI,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAE3e,SAASouK,IAAI93W,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAA4B,GAA1BA,EAAEgrK,GAAGzrK,EAAE,KAAKy8U,IAAI3uV,GAAG2uV,IAAIh8U,GAAW,MAALA,EAAET,EAAL,CAA6B,GAATlS,EAAEuvB,GAAE,EAAa,MAALvvB,EAAEkS,EAAuE,OAA9DlS,EAAEkS,EAAE+rK,GAAGmV,IAAGsW,IAAI,GAAG/2L,EAAET,EAAEhU,OAAO,GAAG,QAAGolQ,IAAI3wP,EAAET,EAAE,EAAElS,EAAEkS,EAAE,EAAES,EAAET,EAAEhU,QAA0D,IAA3C48B,EAAEmjJ,GAAGmV,IAAGsW,IAAI,GAAG1pM,EAAEkS,EAAEhU,OAAOyU,EAAET,EAAEhU,OAAO,GAAG,GAAOqxB,EAAE,EAAExvB,EAAE,EAAEwF,EAAE,EAAEgqB,EAAEvvB,EAAEkS,EAAEhU,QAAQ6B,EAAE4S,EAAET,EAAEhU,QAAYqxB,GAAGvvB,EAAEkS,EAAEhU,QAAQ48B,EAAEv1B,KAAKoN,EAAET,EAAEnS,KAAK+6B,EAAEv1B,KAAKoN,EAAET,EAAEnS,MAAaA,GAAG4S,EAAET,EAAEhU,QAAQ48B,EAAEv1B,KAAKvF,EAAEkS,EAAEqd,KAAKuL,EAAEv1B,KAAKvF,EAAEkS,EAAEqd,MAAa5c,EAAET,EAAEnS,GAAGC,EAAEkS,EAAEqd,IAAI5c,EAAET,EAAEnS,KAAKC,EAAEkS,EAAEqd,IAAI5c,EAAET,EAAEnS,EAAE,GAAGC,EAAEkS,EAAEqd,EAAE,IAAIuL,EAAEv1B,KAAKoN,EAAET,EAAEnS,KAAK+6B,EAAEv1B,KAAKoN,EAAET,EAAEnS,OAAU+6B,EAAEv1B,KAAKvF,EAAEkS,EAAEqd,KAAKuL,EAAEv1B,KAAKvF,EAAEkS,EAAEqd,MAAMvvB,EAAEkS,EAAE4oB,CAAna,CAAoa,CACjf,SAASu2U,IAAIrxW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAA8J,OAA5Jyb,EAAE0yJ,GAAIk6B,GAAG5T,IAAIvoM,GAAGgoM,MAAMq2J,QAAQ56V,EAAEw+K,GAAIk6B,GAAG5T,IAAIr2L,EAAEmsV,OAAOt+V,EAAE49K,GAAG4qB,IAAIvoM,EAAE8pU,KAAK,IAAI9rU,EAAE2/K,GAAG4qB,IAAIr2L,EAAE43T,KAAK,IAAIvkU,EAAEo4K,GAAG4qB,IAAIvoM,EAAE+pU,KAAK,IAAI33T,EAAEurK,GAAG4qB,IAAIr2L,EAAE63T,KAAK,IAAI1oU,IAAItB,GAAGA,GAAG/B,EAAE8V,IAAIvO,GAAGA,GAAG6M,EAAMmd,GAAI9rB,GAA8Eq3B,IAAImnJ,GAAIk6B,GAAG5T,IAAIvoM,EAAEq+V,QAAQp8K,GAAIk6B,GAAG5T,IAAIvoM,EAAE6xU,WAAW5vJ,GAAIk6B,GAAG5T,IAAIr2L,EAAEmsV,QAAQp8K,GAAIk6B,GAAG5T,IAAIr2L,EAAE2/T,QAAQl/T,IAAIsvK,GAAIk6B,GAAG5T,IAAIvoM,EAAEq+V,SAASp8K,GAAIk6B,GAAG5T,IAAIvoM,EAAE6xU,WAAW5vJ,GAAIk6B,GAAG5T,IAAIr2L,EAAEmsV,SAASp8K,GAAIk6B,GAAG5T,IAAIr2L,EAAE2/T,QAAe,IAAIpxG,GAAIp/N,GAAGy5B,GAAGhnB,GAAGnB,EAAEtR,EAAEyS,IAAxR,IAAI2sN,GAAI9iD,GAAGC,GAAI,IAAIjY,GAAI3lK,EAAEoS,IAAI,IAAIhP,GAAGu6K,GAAGC,GAAI,IAAIjY,GAAIzzJ,EAAEE,IAAI,IAAIhP,EAAE/B,EAAEyS,EAAyN,CAElf,SAAS6gV,IAAI30V,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAE,OAAc,IAAL,GAALvF,EAAEgtN,IAAiB64F,GAAI7lT,IAAGkS,EAAE,IAAI47M,GAAIhgC,MAAK/tL,EAAEC,EAAEqB,GAAkJu7M,GAAIA,IAAK1qM,EAAElS,GAAG,KAAKkS,GAAGnS,GAAG,OAAjKC,EAAEJ,IAAII,EAAEJ,EAAE,IAAI06L,GAAIrN,IAAGjtL,EAAE,EAAE,IAAOA,EAAEJ,EAAE5B,EAAE,MAAGuH,IAAIvF,EAAEJ,IAAII,EAAEJ,EAAE,IAAI06L,GAAIrN,IAAGjtL,EAAE,EAAE,IAAI29K,GAAG0O,GAAIrsL,EAAEJ,EAAE,GAAG,MAAMI,IAAM48M,GAAIA,IAAK1qM,EAAElS,GAAG,KAAKkS,GAAG3M,GAAG,QAA6CvF,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAA7BuvB,IAAmCvvB,EAAEkS,EAAElU,GAAG,KAAKgC,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,EAAEvxB,GAAG,IAAQkU,EAAElS,GAALuvB,EAAQ,KAAc,IAAOqtL,GAAI1qM,EAAE06M,GAAG,IAAI/oC,GAAG,IAAI9E,GAAI/+K,EAAEkS,KAAKqd,IAAIrd,EAAElS,GAAG,KAAOkS,EAAElS,GAAG0iV,IAAInzT,IAAIrd,EAAElS,GAAG,KAAO48M,GAAI1qM,EAAE06M,GAAG,IAAI/oC,GAAG,IAAI9E,GAAI/+K,EAAEuvB,KAAKA,IAAIrd,EAAElS,GAAG,KAAckS,EAAElS,EAAC,CACnf,SAAS+3W,IAAI/3W,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,GAAGgC,EAAEA,EAAE,CAAuK,GAA3JhC,EAAE,KAAW,OAAxByF,EAAEzD,EAAEA,EAAE++L,MAAwB7sL,EAAElS,GAAG,GAAGyD,EAAwB,OAAjBkP,EAAE3S,EAAEA,EAAEghK,SAAyC,IAAxBlmI,EAAEwkL,GAAI3sM,EAAEy+M,IAAI,OAAepzN,EAAE2U,EAAE8gD,OAAO34B,GAAG5oB,EAAElS,GAAG,GAAG83L,GAAO,MAAHnlL,EAAQolL,KAAKl3B,GAAIluJ,GAAGA,GAAG,EAAEmoB,IAAQ5oB,EAAElS,GAAG,GAAG2S,GAAS3S,EAAED,GAAU,GAAPC,EAAED,EAAE/B,EAAK,CAAiB,IAAhBuH,GAAE,EAAK2M,EAAElS,GAAG,IAAQD,EAAE,IAAIg/K,GAAI/+K,EAAED,GAAGA,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAO1vJ,EAAEouJ,GAAGwB,IAAIp/K,GAAG,IAAIwF,EAAGA,GAAE,EAAQ2M,EAAElS,GAAGgkL,IAAO+zL,IAAIxoV,EAAErd,GAAGA,EAAElS,GAAG,GAAG,CAAI,MAAHhC,IAAUkU,EAAElS,GAAG,GAAGhC,EAAI,MAASgC,EAAEuF,EAAe,OAAZ9B,EAAEzD,EAAEuF,EAAEi/P,MAAatyP,EAAElS,GAAG,GAAGyD,IAAUyO,EAAElS,GAAG,IAAOA,EAAEkS,GAAGA,EAAElS,GAAG,UAAU+3W,IAAI/3W,EAAEkS,EAAEA,IAAWlS,EAAE86B,IAAG5oB,EAAElS,GAAG,YAAY+3W,IAAI/3W,EAAE86B,EAAE5oB,IAAK,CAEnf,SAAS8lW,IAAIh4W,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAI3U,EAAEoU,EAAE/Q,EAAyC,GAAvCy5B,EAAE4qR,GAAI3lT,IAAKkiL,GAAIk6B,GAAG5T,IAAIxoM,GAAGs9J,MAAM46M,UAAeh2L,GAAIk6B,GAAG5T,IAAIvoM,EAAEk4W,QAAU/2J,GAAIxjC,GAAG4qB,IAAIvoM,EAAE8hS,KAAK,KAAwO,OAAvKvvC,GAAVv0P,EAAE,IAAI+6U,IAAU/4U,GAAMkS,IAAG7Q,EAAErD,EAAE4B,GAAII,EAAEkS,EAAElS,EAAEA,EAAEJ,EAAEI,EAAEqB,EAAE6Q,EAAEA,EAAEA,EAAElS,EAAEJ,EAAEsS,EAAE4nU,IAAIz4U,EAAE,EAAE,EAAErB,EAAEE,EAAEF,EAAEA,EAAEE,EAAEgS,GAAGysP,IAAI3gQ,EAAE0xW,IAAI1xW,EAAE88B,MAASv1B,EAAEwkT,GAAIjvR,GAAG6jO,IAAI3gQ,EAAEuxB,IAAIyqP,KAAMG,KAAK50Q,EAAE2+S,GAAI3+S,KAAIoN,EAAEgrK,GAAG4qB,IAAIxoM,GAAGioM,MAAM4yH,MAAM,IAAIxoT,EAAEpU,EAAEoU,EAAS0oB,EAAEnoB,GAAG,KAAK,EAAE,KAAK,GAAGP,IAAIqtK,MAAMM,MAAM3tK,GAAGy0L,MAAMl0L,EAAEk1M,IAAI8rF,MAAMO,MAAM,MAAM,KAAK,EAAE,KAAK,GAAG9hS,IAAIqtK,MAAMC,MAAMttK,GAAGwtK,MAAMjtK,EAAEk1M,IAAI8rF,MAAMO,WAAlW3uS,EAAEwkT,GAAIjvR,GAAG98B,EAAE0wW,IAAI1uW,EAAEuvB,EAAEA,IAAIyqP,KAAMG,KAAK50Q,EAAE2+S,GAAI3+S,IAAkU,OAAOvH,CAAC,CACvf,SAASwnQ,IAAIxlQ,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAE,OAAG4xI,EAAK3/H,KAAKskB,IAAI1lB,EAAE2B,EAAE3B,EAAEqd,GAAG65R,KAAKn2K,EAAK3/H,KAAKskB,IAAIrI,EAAE1b,EAAE0b,EAAEA,GAAG65R,IAAY,GAAErpT,EAAE85V,IAAI75V,EAAEkS,EAAEE,EAAEmd,EAAEhqB,GAAGA,EAAEs0V,IAAI75V,EAAEuvB,EAAEnd,EAAEF,EAAE3M,GAAkBoN,EAAE,GAAX,GAAJ5S,IAAW,GAAJwF,IAAuB,GAAJxF,IAAO,IAAIk0P,IAAKqR,KAAMC,KAAKh2O,EAAErd,EAAE,KAAKS,IAAS,GAAJpN,IAAO,IAAI0uP,IAAKqR,KAAMC,KAAKrzP,EAAEqd,EAAE,KAAK5c,KAAQlP,EAAE8lP,GAAIr3O,EAAEE,EAAEmd,EAAE1b,EAAE0b,EAAEA,GAAG9rB,GAAG8lP,GAAIh6N,EAAEhqB,EAAE2M,EAAE2B,EAAE3B,EAAEqd,GAAGvxB,EAAEurP,GAAIh6N,EAAEnd,EAAEF,EAAE2B,EAAE3B,EAAEqd,IAAuBnd,EAAErS,EAAE,GAAG0D,IAAEpC,EAAEkE,EAAE,IAAjCvH,GAAGurP,GAAIr3O,EAAE3M,EAAEgqB,EAAE1b,EAAE0b,EAAEA,KAA6B,IAAI0kO,IAAKqR,KAAMyF,KAAK74P,EAAEqd,EAAEluB,EAAE+Q,GAAWA,EAAE/Q,EAAG,IAAI4yP,IAAKqR,KAAMyF,KAAKx7O,EAAErd,EAAEE,EAAE/Q,GAAW+Q,EAAE,GAAG/Q,EAAE,IAAG,IAAI4yP,IAAKqR,KAAMyF,KAAK74P,EAAEqd,EAAE,GAAG,IAAI0kO,GAAI8W,IAAIx7O,EAAErd,EAAE,KAAWS,EAAC,CACvf,SAASwlW,IAAIn4W,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAI,IAAIA,EAAE,IAAIimS,GAAK,IAAIt0I,GAAItkK,EAAE86B,EAAE5oB,GAAIlS,GAAG2S,EAAET,GAAG,CAA2B,GAAjB3M,EAAEo4K,IAAX7iJ,EAAEs7P,GAAIzjR,IAAUk6L,KAAK,KAAW,GAAH36L,GAAM,GAAG3M,EAAE6yW,OAAOzlF,KAAM7xE,MAAMv7M,EAAE6yW,MAAMr3J,IAAK,cAAe,GAAGx7M,EAAE6yW,OAAOzlF,KAAM/xE,MAAMr7M,EAAE6yW,MAAMv3J,IAAK,SAAmE,OAAzD9gN,EAAE49K,GAAGA,GAAG7iJ,EAAEggL,KAAK,IAAI5oM,EAAE,IAA8Bqd,EAAxBouJ,GAAGA,GAAG7iJ,EAAEggL,KAAK,IAAI96M,EAAE,KAASuvB,EAAShqB,EAAE6yW,KAAKzlW,GAAG,KAAK,EAAE5S,EAAE4S,EAAE4c,EAAEvvB,EAAEuF,EAAEvF,EAAED,EAAE4S,EAAET,EAAE+gI,EAAK3/H,KAAKugB,IAAI,EAAE9zB,EAAE4S,EAAET,EAAEqd,GAAG,MAAM,KAAK,EAAExvB,EAAE4S,EAAE4c,EAAExvB,EAAE4S,EAAE4c,EAAEA,EAAExvB,EAAE4S,EAAET,EAAE+gI,EAAK3/H,KAAKugB,IAAI,EAAE9zB,EAAE4S,EAAET,EAAEqd,GAAG,MAAM,KAAK,EAAExvB,EAAE4S,EAAE5S,EAAEC,EAAEuF,EAAE2M,EAAEnS,EAAE4S,EAAE3S,EAAEizI,EAAK3/H,KAAKugB,IAAI,EAAE9zB,EAAE4S,EAAE3S,EAAEuvB,GAAG,MAAM,KAAK,EAAExvB,EAAE4S,EAAE5S,EAAEA,EAAE4S,EAAE5S,EAAEwvB,EAAExvB,EAAE4S,EAAE3S,EAAEizI,EAAK3/H,KAAKugB,IAAI,EAAE9zB,EAAE4S,EAAE3S,EAAEuvB,GAAI,CAAC,CAE1f,SAASw+S,IAAI/tU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAE,IAAIjT,EAAE,IAAI+uO,GAAG7hB,GAAG+oF,IAAI9jS,GAAGlS,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAAwB8pL,GAAGwC,MAAtB98J,EAAEouJ,GAAGwtC,GAAGprN,GAAG,KAAmBmS,IAAIqd,EAAErd,EAAE,IAAI64M,GAAI19B,IAAG99J,EAAE,EAAE,IAAIA,EAAErd,GAAG,GAAG,OAAMlU,EAAEgtN,IAAIrtC,GAAG0O,KAAM98J,EAAEA,IAAIA,EAAEA,EAAE,IAAIw7L,GAAI19B,IAAG99J,EAAE,EAAE,IAAIA,EAAEA,GAAG,GAAG,KAAS0mR,IAAI1mR,KAAI5c,EAAET,EAAElU,EAAEkU,EAAES,EAAE,EAAElP,EAAEyO,EAAEE,EAAEF,EAAE4oB,EAAE,EAAEz5B,EAAErD,EAAEA,EAAEA,EAAE2U,EAAE,EAAEmB,EAAE9V,EAAEoU,EAAEpU,EAAE88B,EAAE,GAAE9nB,EAAE,IAAI41K,IAAM5oL,EAAEqB,EAAEsR,EAAEK,EAAEd,EAAE4B,EAAErQ,EAAqBumU,IAAnBlvS,EAAE,IAAIm6K,GAAIjiM,EAAEhT,EAAEgT,EAAEd,GAASA,EAAES,EAAET,EAAE4oB,GAAG9nB,EAAEhT,GAAG86B,EAAE96B,EAAEgT,EAAEd,GAAG4oB,EAAE5oB,EAAES,EAAEtR,EAAE2R,EAAEhT,EAAEyD,EAAEqQ,EAAEd,EAAEd,EAAqB83T,IAAnB53T,EAAE,IAAI6iM,GAAIjiM,EAAEhT,EAAEgT,EAAEd,GAASlU,EAAE2U,EAAE3U,EAAE88B,GAAG9nB,EAAEhT,GAAGoS,EAAEpS,EAAEgT,EAAEd,GAAGE,EAAEF,EAAE7Q,EAAEsR,EAAEK,EAAEhT,EAAE8T,EAAErQ,EAAEuP,EAAEd,EAAqBqwM,GAAnBh9M,EAAEw5V,IAAIxvU,GAAE,GAAK,GAAY5c,GAAG6vM,GAAIj9M,EAAE9B,GAAG4+M,GAAI98M,EAAElE,GAAGihN,GAAI/8M,EAAEuO,GAAGi6T,IAAI/tU,EAAEhC,IAAK,CAC3f,SAASq6W,IAAIr4W,GAAGylM,GAAIzlM,EAAE,IAAI6wU,IAAIjqJ,GAAIJ,GAAIG,GAAID,GAAI,IAAIh4B,GAAI4pN,KAAK,wBAAwB,6JAA6J,IAAI1qN,MAAO2tG,GAAIv7P,EAAEs4W,IAAI7U,IAAIjjL,IAAImyJ,MAAMp3E,GAAIv7P,EAAEs4W,IAAI1U,IAAIpjL,IAAIoyJ,MAAMr3E,GAAIv7P,EAAEs4W,IAAIxU,IAAItjL,IAAIsyJ,MAAMv3E,GAAIv7P,EAAEs4W,IAAItU,IAAIxjL,IAAIwyJ,MAAMz3E,GAAIv7P,EAAEs4W,IAAIrU,IAAIzjL,IAAI0yJ,MAAM33E,GAAIv7P,EAAEs4W,IAAI9X,IAAIptB,KAAK73E,GAAIv7P,EAAEs4W,IAAI7X,IAAI,GAAGllG,GAAIv7P,EAAEs4W,IAAI5U,IAAIljL,IAAI+yJ,MAAMh4E,GAAIv7P,EAAEs4W,IAAInU,IAAI3jL,IAAIgzJ,MAAMj4E,GAAIv7P,EAAEs4W,IAAIjU,IAAI7jL,IAAIkzJ,MAAMn4E,GAAIv7P,EAAEs4W,IAAIjP,KAAK37I,MAAM,GAAO,CAI3f,SAAS6qJ,IAAIv4W,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAqD,OAAnDtB,EAAEC,EAAEA,EAAEE,IAAI8wP,KAAMG,KAAK76E,IAAIC,MAAI9yK,EAAEitW,IAAI1wW,EAAE,IAAIuzM,GAAIrhM,EAAEqd,KAAUvvB,GAAGyD,EAAE8rB,GAAGq2M,GAAI5lO,EAAED,EAAE0D,GAAU1D,GAAU0D,EAAEzD,GAAGuF,EAAE9B,EAAEzD,EAAEuvB,EAAEvxB,EAAEyF,EAAEzD,EAAED,EAAKwvB,GAAGnd,EAAEpS,EAAEA,EAAEuvB,IAAIw+N,KAAMC,KAAKhwP,EAAEuH,EAAEu1B,EAAE96B,EAAEA,EAAEuvB,GAAGy+N,IAAIzoP,EAAEvH,EAAE2U,EAAE3S,EAAEA,EAAE2S,EAAEmoB,EAAE98B,EAAEoF,GAAG/B,EAAEi/K,GAAItgL,EAAEA,EAAEoD,EAAEuP,EAAEvP,IAAIk9K,GAAItgL,EAAEA,EAAED,EAAE+6B,EAAE98B,EAAEoF,IAAI03B,EAAEl7B,EAAEsS,EAAE4oB,EAAE96B,EAAEkS,EAAEouK,GAAItgL,EAAEA,EAAED,EAAEqS,EAAEpU,EAAEoF,IAAIgP,EAAExS,EAAEsS,EAAEE,EAAEpS,EAAEkS,IAAOE,EAAEpS,EAAEA,EAAEuvB,IAAIw+N,KAAME,KAAKjwP,EAAEuH,EAAEu1B,EAAE96B,EAAEA,EAAEuvB,GAAG0+N,IAAI1oP,EAAEvH,EAAEqD,EAAEi/K,GAAItgL,EAAEA,EAAEoD,EAAEpD,EAAEA,EAAE2S,EAAEmoB,EAAE98B,EAAEoF,GAAGA,IAAIk9K,GAAItgL,EAAEA,EAAED,EAAE+6B,EAAE98B,EAAEoF,IAAI03B,EAAEl7B,EAAEsS,EAAE4oB,EAAE96B,EAAEkS,EAAEouK,GAAItgL,EAAEA,EAAED,EAAEqS,EAAEpU,EAAEoF,IAAIgP,EAAExS,EAAEsS,EAAEE,EAAEpS,EAAEkS,GAAElS,EAAEA,EAAEJ,EAAEI,EAAEA,EAAE2S,EAAEpN,EAAEvH,EAAEoF,GAAGA,IAAIsqN,MAAM,GAAM1tN,EAAEA,EAAEJ,EAAEI,EAAEA,EAAE2S,EAAE3U,EAAEA,EAAEoF,GAAGA,IAAG,EAAY/B,GAAStB,CAAC,CAC9f,SAAS05P,IAAIz5P,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAI+6B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAE,GAAGmmN,IAAIxnN,EAAEuF,EAAE2M,GAAOi6L,KAA+Ch2B,KAAlDn4K,EAAS2/K,GAAGzrK,EAAE,IAAIq1M,KAAK,IAAI6f,GAAIl1N,EAAElS,GAAG,IAAIm6M,GAAIjoM,EAAElS,IAAUuvB,EAAEvxB,EAAEkU,GAAGo1M,GAAItpN,EAAE2/K,GAAGpuJ,EAAE,SAAS,CAAiC,IAAhCluB,EAAE0mN,IAAI/nN,EAAEuF,EAAEyiN,KAAK91M,GAAGnS,EAAE49K,GAAG39K,EAAE2S,EAAE,KAASA,EAAE,EAAEA,EAAE3S,EAAEhC,IAAI2U,EAAmB,GAATmoB,EAAL/6B,EAAE4S,GAAOu1M,KAAQ7mN,EAAE4mN,GAAGntL,GAAG,CAAC,GAAGA,IAAImrT,MAAMC,MAAMprT,GAAGqrT,IAAI,CAAiC,IAAnB1iV,EAAEkP,GAAfP,EAAEwpT,IAAI57T,EAAEkS,EAAEqd,IAASkrT,IAAIz6U,EAAE2S,KAAKA,EAAQA,EAAE3S,EAAEhC,IAAU88B,EAAL/6B,EAAE4S,GAAOu1M,OAAQg+H,KAAKprT,GAAGqrT,IAAI1L,IAAIz6U,EAAE2S,KAAKA,EAAEP,GAAGurK,GAAGwqC,IAAInoN,EAAEyD,EAAEmkN,GAAI11M,EAAEqd,IAAI,GAAG,MAAMqsS,IAAI57T,EAAEkS,EAAEqd,GAAGkrT,IAAIz6U,EAAE2S,GAAGgrK,GAAGwqC,IAAInoN,EAAE2S,GAAGw5L,KAAMxuB,GAAGzrK,EAAE,IAAIq1M,KAAK5pC,GAAGpuJ,EAAE,IAAIq4L,GAAI11M,EAAEqd,KAAK,IAAI,MAAM,CAAEqsS,IAAI57T,EAAEkS,EAAEqd,IAAI07J,GAAIjrL,GAAGmsM,KAAMxuB,GAAGzrK,EAAE,IAAIq1M,KAAK5pC,GAAGpuJ,EAAE,IAAIq4L,GAAI11M,EAAEqd,IAAI,CAAC,CAC9f,SAAS+lN,IAAIt1O,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAqc,OAA/bixL,GAAG/iK,EAAEvvB,EAAEkS,KAAIlS,EAAEkS,EAAEqd,EAAEuL,EAAE,IAAIu+G,GAAI1mI,EAAEgrK,GAAGopF,GAAI5wB,GAAI,IAAI/rB,GAAI,KAAK,IAAI7c,GAAIh+K,EAAEuL,EAAE,KAAKA,GAAGixM,GAAI,IAAIj2F,EAAI,IAAIC,EAAI,IAAIO,GAAI,IAAIC,GAAIgoC,GAAGC,GAAGwtD,IAAG,GAAGC,IAAI,IAAI,EAAE,EAAE4oC,KAAMG,KAAKD,QAAQ,IAAI/0Q,EAAEuF,GAAE,EAAKvF,EAAE86B,GAAE,EAAK96B,EAAEuvB,GAAE,EAAKvvB,EAAED,GAAE,EAAKwF,EAAEoN,EAAEstL,IAAI0kF,MAAME,MAAM9kR,EAAE4S,EAAEstL,GAAG8kF,KAAKx/Q,IAAIxF,IAAIC,EAAE86B,GAAE,IAAQv1B,GAAGxF,IAAIC,EAAED,GAAE,GAAOwF,EAAEoN,EAAEstL,GAAG6kF,KAAK/kR,EAAE4S,EAAEstL,GAAG+kF,KAAKz/Q,IAAIxF,IAAIC,EAAEuvB,GAAE,IAAQhqB,GAAGxF,IAAIC,EAAEuF,GAAE,IAAOlE,EAAEs8K,GAAG39K,EAAEA,EAAEkyT,GAAGhgT,EAAEqd,GAAG,IAAIvxB,EAAE2/K,GAAGt8K,EAAErB,EAAE,IAAIA,EAAEoS,EAAEurK,GAAGt8K,EAAE6Q,EAAE,IAAIlS,EAAEyD,GAAE,EAAMzF,EAAE,EAAEgC,EAAEuvB,IAAI9rB,GAAE,GAAMzD,EAAEuF,IAAI9B,GAAE,GAAM2O,EAAE,EAAEpS,EAAED,IAAI0D,GAAE,GAAMzD,EAAE86B,IAAIr3B,GAAE,GAAaA,EAAE6xO,IAAIt1O,EAAEqB,EAAEkuB,GAAGluB,CAAC,CAEhgB,SAASm3W,IAAIx4W,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAIwD,EAAE,IAAI0Q,EAAE,EAAEA,EAAE5B,EAAEhU,OAAO4V,IAAI,CAAC,IAAIrQ,EAAEzD,EAAE27M,KAAKl4M,EAAE83M,MAAS59B,GAAGl6K,EAAEg4M,KAAK,KAAOg9J,GAAG3kW,EAAE5B,GAAG,IAAIc,EAAE,EAAEA,EAAEd,EAAE4B,GAAG5V,OAAO8U,IAAI,CAAC,IAAIhV,EAAEgC,EAAE27M,KAAK39M,EAAEu9M,MAAS59B,GAAG3/K,EAAEy9M,KAAK,KAAOi9J,GAAG5kW,EAAEd,EAAEd,GAAe,IAAZ9O,EAAE8O,EAAE4B,GAAGd,GAAGZ,EAAMxS,EAAE,EAAEA,EAAEwD,EAAEmsB,EAAErxB,OAAO0B,IAAI,CAAC,IAAIwS,EAAEpS,EAAE27M,KAAKvpM,EAAEmpM,MAAS59B,GAAGvrK,EAAEqpM,KAAK,KAAOk9J,GAAG7kW,EAAEd,EAAEpT,EAAEsS,GAA2C,IAArCurM,GAAI79M,EAAEwD,EAAEmsB,EAAErxB,QAAuBqxB,EAAE,EAAMhqB,EAAE,IAAIisQ,GAA7B7zF,GAAGv6K,EAAEmsB,EAAE3vB,GAAG,IAAyBsS,GAAG8yM,GAAIz/M,EAAEvF,IAAIglN,GAAIz/M,EAAE2M,IAAyC,IAApCnS,EAAE49K,GAAGqnC,GAAIz/M,EAAEvF,GAAG49K,GAAIr4K,EAAEvF,GAAG49K,GAAIr4K,EAAE2M,GAAG,IAAQ7Q,EAAErB,EAAE27M,KAAKt6M,EAAEk6M,MAAS59B,GAAGt8K,EAAEo6M,KAAK,KAAOm9J,GAAG9kW,EAAEd,EAAEpT,EAAE2vB,IAAIxvB,EAAEmS,EAAI,CAAC,CAAC,CAAC,IAAIS,EAAE3S,EAAE27M,KAAKhpM,EAAE4oM,MAAS59B,GAAGhrK,EAAE8oM,KAAK,KAAO0a,IAAK,CACrgB,SAAS0iJ,IAAI74W,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAM9B,EAAEzF,EAAiR,IAA/QgC,EAAEkS,EAAEouK,GAAIC,GAAGgoB,IAAIr2L,GAAGmrJ,MAAMmuJ,QAAQxrT,EAAEuvB,EAAE+wJ,GAAIC,GAAGgoB,IAAIr2L,EAAE41S,OAAO9nT,EAAED,EAAE49K,GAAG4qB,IAAIr2L,EAAE4mW,KAAK,KAAK94W,EAAEA,EAAE29K,GAAG4qB,IAAIr2L,EAAE6mW,KAAK,KA/uCrI,SAAa/4W,GAAG,IAAIkS,EAAInS,EAAI+6B,EAAE,IAAI/6B,EAAE,IAAI4lK,GAAI3lK,EAAEkS,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAA6B,IAAJgU,EAAE,EAAM4oB,EAAE,IAAI6qI,GAA5BgY,GAAGC,GAAI79K,GAAG,IAAwBC,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAI9iJ,GAAG,IAAM13B,EAAE8O,GAAK,CA+uCb8mW,CAAI9mW,GAAyK3M,GAAtK9B,EAAEk6K,GAAGopF,GAAI58C,GAAIA,GAAIgjE,GAAIA,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAIr7L,EAAEA,EAAE,KAAK,IAAI+rI,IAAK,IAAIC,IAAK,IAAIC,IAAK,IAAIC,IAAKmjI,GAAI,IAAIjsI,EAAI,IAAID,EAAI,IAAIgB,GAAIkoC,GAAGC,GAAGwtD,IAAG,GAAGC,IAAI,IAAI,EAAE,EAAE4oC,KAAME,SAAS,KAAYp5D,KAAKp2M,EAAEg2M,MAAOhsL,EAAEouJ,GAAGp4K,EAAEk2M,KAAK,IAAM99B,GAAG4qB,IAAIh5K,GAAGy4K,MAAMixK,MAAM,IAAM78G,GAAG,IAAI3yF,GAAIzpK,IAAI+nM,GAAIx4K,EAAE0pV,IAAI,MAAM,IAAIl5W,EAAE0D,EAAEk4M,KAAK57M,EAAEw7M,MAAOhsL,EAAEouJ,GAAG59K,EAAE07M,KAAK,IAAIz9M,EAAE2/K,GAAG4qB,IAAIh5K,GAAGy4K,MAAMkxK,MAAM,IAAwBC,IAAIn5W,EAAtB29K,GAAG4qB,IAAIh5K,EAAE6pV,KAAK,IAAYp7W,GAAG+pM,GAAIx4K,EAAE6pV,IAAI,KAAM,CAEvgB,SAASC,IAAIr5W,GAAG,IAAIkS,EAAEqd,EAAIhqB,EAAIoN,EAAMP,EAAE,GAAGpS,EAAEqB,IAAI49P,MAAMgF,KAAM,OAAO,EAAM,GAAGjkQ,EAAEoS,EAAEmd,EAAErxB,QAAQ,EAAG,OAAO,EAAkC,GAA1By/K,GAAG4qB,IAAIvoM,GAAGq9J,MAAMykI,MAAM,MAAWxM,MAAMt4D,KAAM,OAAO,EAA0G,GAAjGiqD,OAAH1hR,GAAWvF,EAAEgU,EAAoBhU,EAAEgU,GAAnBizM,KAAMA,KAAMgjB,MAAU9iO,GAAGslT,KAAQ9uI,GAAG4qB,IAAIvoM,EAAEysT,KAAK,KAAS9uI,GAAG4qB,IAAIg3C,GAAIv/O,GAAG0sT,KAAK,OAAevlC,IAAK,OAAO,EAAM,GAAK5hR,GAAG07M,KAAK17M,GAAG27M,IAAK,CAAiH,GAAhHvuM,EAAE2tK,GAAIC,GAAGosI,IAAI3sT,EAAEurT,SAAOr5S,EAAEyrK,GAAG4qB,IAAIvoM,EAAE6tW,KAAK,QAAU37V,EAAE,IAAIyoN,GAAIhoN,EAAEA,EAAEA,EAAEA,IAAIP,EAAE+2M,GAAInpN,GAAGy/K,MAAMG,MAAQ1tK,EAAEnS,EAAEmS,EAAElS,GAAGoS,EAAE6sK,KAAK,GAAGtsK,EAAO3S,EAAEE,EAAEgS,EAAG,OAAO,EAA0C,GAApCqd,EAAE45L,GAAInpN,EAAE0/K,KAAOxtK,EAAEnS,EAAEmS,EAAElS,GAAGuvB,EAAE0vJ,KAAK,GAAGtsK,EAAO3S,EAAEE,EAAEgS,EAAG,OAAO,CAAM,CAAC,OAAO,CAAI,CACzgB,SAAS0mV,IAAI54V,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAc,GAAZyS,EAAE3S,EAAEuF,EAAEvH,EAAEkU,EAAE3M,EAAQ,GAAHoN,EAAM,OAAOT,EAAE,GAAM,GAAHlU,EAAM,OAAOgC,EAAc,IAAZ86B,EAAE96B,EAAED,IAAE0D,EAAEyO,EAAEnS,IAAU,EAAuC,OAApCwvB,EAAEqpK,GAAI54L,EAAEA,EAAE,GAAG64L,KAAK94L,EAAE64L,GAAI1mL,EAAElS,EAAE,GAAG64L,KAAQlmL,GAAG3U,GAAckC,EAAE+pN,GAAb5oN,EAAEqpM,GAAIn7K,EAAExvB,IAAuC,IAA3BH,EAAEqqN,GAAI8lB,GAAI1uO,EAAE,MAAiB,IAAI+xQ,GAAIzgQ,EAAEzS,GAAG,IAAIkzO,GAAIzgO,EAAE,EAAE4rK,GAAGC,GAAG4U,IAAG,GAAGsW,IAAI,GAAG,GAAG,CAACxpM,EAAEN,MAAY6tR,IAAI96Q,EAAE,EAAEw+P,GAAIpxQ,EAAEwvB,GAAG4hP,GAAI5hP,EAAExvB,IAAS,GAAG4S,GAAG3U,EAAGgV,EAAEL,EAAEmB,EAAEgnB,GAAGr3B,EAAE27Q,GAAIp/Q,EAAEA,EAAE86B,EAAE5oB,EAAElS,EAAEyD,GAAG27Q,GAAIltQ,EAAElS,EAAEyD,EAAEzD,EAAEA,EAAE86B,OAAO,CAAgC,GAAM,IAArCv1B,EAAEu1B,GAAGr3B,EAAEq3B,EAAEr3B,EAAE,GAAG,EAAEw2S,GAAIj6S,EAAEA,EAAEkS,EAAElS,EAAE86B,IAAY,OAAOioL,MAAMmrE,IAAU,GAAH3oR,GAAMyN,EAAEL,EAAEmB,EAAEo9P,GAAIlxQ,EAAEA,EAAE86B,EAAE5oB,EAAElS,EAAEyD,KAAQuP,EAAEhV,EAAE8V,EAAEo9P,GAAIh/P,EAAElS,EAAEyD,EAAEzD,EAAEA,EAAE86B,GAAG,CAAgC,OAAPu/N,GAAxBjoP,EAAE,IAAIghO,GAAIpgO,EAAEc,EAAE5V,OAAO4V,IAAiB1B,CAAC,CAC3gB,SAASknW,IAAIt5W,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,GAAG,IAAIlP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAud,OAArdkU,EAAEmuK,GAAIk6B,GAAG5T,IAAIr2L,GAAGmrJ,MAAMk8M,QAAQvmW,EAAE,KAAK8nB,IAAIk/O,KAAME,MAAMn6Q,EAAEwvB,EAAEvxB,GAAGuxB,EAAGvc,EAAEjT,EAAEwvB,EAAGuL,GAAGq/O,KAAKp6Q,EAAEA,EAAE/B,GAAGuxB,IAAIvc,EAAEjT,EAAEA,IAAGqS,EAAEO,IAAUmB,IAAKd,GAAoP+iK,GAAI3jK,EAAE7M,EAAExF,GAAGH,EAAEqzI,EAAK3/H,KAAKugB,IAAIysJ,GAAIC,GAAGgoB,IAAIn2L,EAAErS,EAAE20R,OAAOp0G,GAAIC,GAAGgoB,IAAIxoM,EAAE20R,QAAQ3sF,GAAI31L,EAAErS,EAAE20R,IAAI90R,KAAhU6/K,MAAHp+K,EAASylM,IAAK9zL,EAAG3R,EAAE2R,EAAEZ,EAAG+uM,GAAIxjC,GAAG4qB,IAAIh5K,EAAEuyQ,KAAK,OAAOzgS,EAAEy5B,GAAGo/O,IAAIt6F,IAAIF,KAAK1hL,EAErO,SAAagC,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAInoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEnB,EAAE,KAAKP,EAAErS,IAAIi6Q,KAAME,KAAKp/O,EAAEvL,EAAEuL,EAAE/6B,EAAE/B,EAAE0nT,GAAIxzS,GAAME,EAAEpU,GAAGuxB,GAAG5c,EAAEgrK,GAAG+5B,GAAI13M,EAAEkS,EAAEE,GAAG,OAAWO,EAAE6mW,IAAIpnW,EAAEurK,GAAG4qB,IAAIh5K,GAAG8tI,MAAMykI,MAAM,IAAIv8R,EAjN3J,SAAavF,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAA8C,IAAtCzN,EAAE08K,GAAIk6B,GAAG5T,IAAf9kM,EAAEzD,EAAEhC,GAAkBq/J,MAAMkzK,QAAQlvU,EAAE,EAAEtB,EAAE,EAAMqS,EAAE,IAAIuzJ,GAAI3lK,EAAE2S,GAAGP,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAkC48B,GAATnoB,EAAEy2M,GAAlBprN,EAAE2/K,GAAGC,GAAIxrK,GAAG,OAAkB7M,GAAG08K,GAAIk6B,GAAG5T,IAAIvqM,EAAEyyU,OAAOz9T,EAAEhV,EAAE+B,EAAE/B,EAAE2U,GAAGmoB,IAAI/6B,EAAE4S,IAAImoB,IAAIz5B,EAAEk+O,GAAIvsO,GAAGzN,GAAG9B,IAAI1D,IAAIsB,EAAE,IAAIkuB,EAAE,IAAIo2I,GAAI3lK,EAAEuF,GAAGgqB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAkC48B,GAATnoB,EAAEy2M,GAAlBl3M,EAAEyrK,GAAGC,GAAIruJ,GAAG,OAAkBhqB,GAAG08K,GAAIk6B,GAAG5T,IAAIr2L,EAAEu+T,OAAO38T,EAAE5B,EAAEqd,EAAEvxB,EAAE2U,GAAGmoB,IAAIz5B,EAAEsR,IAAImoB,IAAI/6B,EAAEw/O,GAAIzrO,GAAGvO,GAAG9B,IAAIpC,IAAItB,EAAE,OAAOsB,EAAEtB,CAAC,CAiNzN05W,CAAIrnW,GAAG,KAAKA,EAAExS,EAAEwS,EAAElS,EAAElC,EAAEkU,GAAG61L,GAAIp1L,GAAGq1L,MAAM0/C,KAAKt1O,GAAGukL,GAAI32L,EAAEkS,EAAEE,EAAEO,KAAyIlP,EAvgC9V,SAAazD,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAEu1B,EAAuC,OAA5Bv1B,EAAEmgT,GAATnmE,GAAIrtO,IAAsBqgP,GAAVz3N,EAAE,IAAIi+S,IAAU7mU,GAAUqd,EAAE5c,GAAG,KAAK,EAAEgsP,IAAI7jO,EAAEopR,GAAI6F,GAAIxkT,KAAK,MAAM,KAAK,EAAEo5P,IAAI7jO,EAAEivR,GAAIxkT,IAAuC,OAAlCwiM,GAAIjtK,GAAGuiI,MAAMo0M,KAAKlxL,GAAGgoB,IAAIvoM,EAAEyxW,OAAc32U,CAAC,CAugCiL4+U,CAAlI/mW,EAAE6mW,KAAKn4W,EAAE,IAAIi4I,GAAIxlI,EAAEwsK,GAAIC,GAAGgoB,IAAIr2L,GAAGmrJ,MAAMgpF,QAAQ,EAAEuvD,GAAIv0S,EAAEowW,IAAI39V,GAAGzS,GAAGs8K,GAAG4qB,IAAIh5K,EAAEuyQ,KAAK,IAAIv8R,EAAExF,GAAGm6Q,KAAK,EAAE,EAAE,KAAK,IAAItxF,GAAI,IAAIqsB,GAAI,EAAE,GAAGj3M,EAAEkU,GAAWqd,EAAExvB,GAAGgoM,GAAIp1L,GAAGq1L,MAAM0/C,KAAKjkP,GAAGkzL,GAAI32L,EAAEkS,EAAEzO,EAAEkP,IAA0H,OAAvHgrK,GAAG4qB,IAAIr2L,GAAG81L,MAAM4yH,MAAM,IAAI/yG,IAAI8rF,MAAMG,MAAM3yF,GAAIxjC,GAAG4qB,IAAIr2L,GAAGmrJ,MAAMykI,MAAM,KAAK/5F,GAAI71L,EAAE4vR,KAAKxM,MAAME,MAAMztF,GAAI71L,EAAE4vR,KAAKxM,MAAMl0E,MAAazuM,CAAC,CAFrSgnW,CAAI35W,EAAEkS,EAAEqd,EAAEuL,EAAEz5B,EAAEtB,GAAG0D,EAAEmsQ,IAAKrwB,GAAIhwN,GAAGxvB,IAAO+6B,GAAGo/O,KAAK7nB,GAAI5uP,EAAEk6K,GAAG0pB,GAAIrpM,EAAEoU,EAAE,GAAG,KAAKggP,GAAI3uP,EAAE8B,KAAQ8sP,GAAI5uP,EAAE8B,GAAG6sP,GAAI3uP,EAAEk6K,GAAG0pB,GAAIrpM,EAAEoU,EAAE,GAAG,MAAKA,EAAE,IAAIwwS,GAAI7iT,EAAE0D,EAAEzF,EAAE2/K,GAAG4qB,IAAIvqM,GAAGgqM,MAAM0/C,MAAM,IAAI5sN,GAAG9nB,IAA6F4hR,IAAG50R,EAAEA,EAAED,EAAE,IAAIsgO,GAAIjuN,EAAErS,EAAEmS,EAAE4oB,IAAW1oB,CAAC,CAC3gB,SAASkiN,IAAIt0N,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAuC,GAArCzS,EAAE,KAAOrB,EAAED,IAAIsB,EAAEs8K,GAAG2M,GAAItqL,EAAED,EAAEmS,GAAG,OAAU7Q,EAAE,CAAkB,GAANyS,GAAXgnB,EAAE96B,EAAEA,EAAE45W,MAAS57W,GAAMgC,EAAED,GAAGggM,GAAI//L,EAAED,IAAI+T,EAAE,CAA0C,IAAzC9V,EAAE,IAAIw0K,GAAMxyK,EAAED,GAAGw9M,GAAGv/M,EAAEgC,EAAED,GAAqB0D,EAAlB2O,EAAEpU,EAAE88B,EAAEvL,EAAEvxB,EAAE2U,EAAE4c,EAAU9rB,EAAEqQ,IAAIrQ,EAAG1D,EAAE49K,GAAG0O,GAAIvxJ,EAAEr3B,GAAG,MAAuB8rB,EAAEouJ,GAAM,OAA1Bp4K,EAAEs8S,GAAI7hT,EAAEuF,EAAExF,GAAGg/L,MAAkB8hD,IAAI7iP,EAAE88B,EAAE,KAAK/6B,GAAG8xP,GAAI7zP,EAAE2U,EAAEpN,EAAExF,GAAG,OAAUwvB,GAAGxvB,IAAO,MAAHwF,EAAQs7O,IAAI7iP,EAAE88B,EAAE,KAAKvL,GAAGsiO,GAAI7zP,EAAE2U,EAAEpN,EAAEgqB,IAAI,GAAGvxB,EAAE88B,EAAEvL,EAAEvxB,EAAE2U,EAAE4c,GAAGzb,EAAG,IAAInB,EAAE,EAAEA,EAAEP,IAAIO,EAAG5S,EAAE49K,GAAG0O,GAAIvxJ,EAAEnoB,GAAG,MAAuB4c,EAAEouJ,GAAM,OAA1Bp4K,EAAEs8S,GAAI7hT,EAAEuF,EAAExF,GAAGg/L,MAAkB8hD,IAAI7iP,EAAE88B,EAAE,KAAK/6B,GAAG8xP,GAAI7zP,EAAE2U,EAAEpN,EAAExF,GAAG,OAAUwvB,GAAGxvB,IAAO,MAAHwF,EAAQs7O,IAAI7iP,EAAE88B,EAAE,KAAKvL,GAAGsiO,GAAI7zP,EAAE2U,EAAEpN,EAAEgqB,IAAKvvB,EAAED,EAAE/B,CAAC,CAACqD,EAAEs8K,GAAG2M,GAAItqL,EAAED,EAAEmS,GAAG,IAAI,CAAC,OAAO7Q,CAAC,CAG3gB,SAAS+9S,MAAc,IAAIp/S,EAAZo/S,IAAI1qK,EAAUmpM,IAAI,IAAI9jK,GAAI+jK,IAAI7/J,GAAGoS,IAAGwD,IAAI,EAAE,EAAE,EAAE,GAAGgmL,IAAInhL,GAAIu6G,GAAI,GAAG,IAAIA,GAAI,EAAE,KAAK6mE,IAAIphL,GAAIu6G,GAAI,GAAG,KAAKA,GAAI,GAAG,KAAK8mE,IAAI9mE,GAAI,GAAG,IAAI+mE,IAAIthL,GAAImhL,IAAI,GAAGI,IAAIvhL,GAAIohL,IAAIC,KAAKG,IAAIxhL,GAAIA,GAAI,EAAEu6G,GAAI,EAAE,IAAIA,GAAI,GAAG,KAAKknE,IAAIzhL,GAAIA,GAAIqhL,IAAI9mE,GAAI,GAAG,KAAKA,GAAI,GAAG,MAAMmnE,IAAI1hL,GAAIshL,IAAIpjD,IAAI,cAAcyjD,IAAI3hL,GAAIuhL,IAAI3tD,IAAI,cAAcsK,IAAI0jD,KAAKhuD,IAAIguD,KAAK5hL,GAAI0hL,IAAIxjD,IAAI,aAAal+H,GAAI2hL,IAAI/tD,IAAI,aAAayxB,IAAInnB,IAAI,QAAQonB,IAAI1xB,IAAI,QAAQnnF,IAAIyxF,IAAI,OAAOxxF,IAAIknF,IAAI,QAAOtsT,EAAE,IAAIy2K,IAAMz2K,EAAE65N,GAAG,MAAM75N,GAAGA,EAAEA,EAAE65N,GAAG,MAAM75N,GAAGA,EAAEA,EAAE65N,GAAG,UAAU75N,GAAQinN,KAALg3H,IAAW,IAAIt5J,GAAI3kL,EAAG,CAC5gB,SAASgiW,IAAIhiW,EAAEkS,GAAG,IAAMnS,EAAQ0D,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAA2C,GAAzCi0L,GAAI71L,GAAGw0R,MAAMs/D,KAAK,GAAGhoW,EAAE2/K,GAAG4qB,IAAIr2L,EAAEkuV,KAAK,IAAc,GAAPluV,EAAEnS,EAAEmS,EAASlU,GAAGqD,EAAEi/K,GAAIC,GAAGgoB,IAAIvqM,EAAE+nW,OAAO/lW,EAAEA,EAAE6uQ,GAAI7wQ,EAAEkU,GAAG61L,GAAI71L,EAAE6zV,IAAI1kW,IAAQ0mM,GAAI71L,EAAE6zV,IAAI,OAAQ,CAAC,IAAIhmW,EAA6B,IAAI4tK,GAA5BmxF,IAAK,IAAIpxF,GAAIx7J,GAAIlS,EAAED,EAAE,IAAei6L,GAAIj6L,EAAEC,IAA0BgiW,IAAIhiW,EAAvB29K,GAAGohF,GAAIh/P,EAAEC,GAAG,KAAKuvB,GAAW9rB,EAAEk6K,GAAGgrC,GAA8B,IAAIh7C,GAA5BmxF,IAAK,IAAIpxF,GAAIx7J,GAAIlS,EAAED,EAAE,KAAgB,IAAI+T,EAAE6pK,GAn0H1T,SAAY39K,GAAG,OAAOg6L,GAAIh6L,EAAEA,GAAGi1P,GAAGj1P,GAAG,IAAI,CAm0HoR05D,CAA8B,IAAIi0G,GAA5BmxF,IAAK,IAAIpxF,GAAIx7J,GAAIlS,EAAED,EAAE,KAAgB,IAAIqS,GAAGkuK,GAAIC,GAAGgoB,IAAIz0L,EAAEiyV,OAAOzlL,GAAIC,GAAGgoB,IAAI9kM,EAAEsiW,QAAQ,EAAK/nW,GAAGqD,EAAEi/K,GAAIC,GAAGgoB,IAAIvqM,EAAE+nW,OAAO/lW,EAAEA,EAAE6uQ,GAAI7wQ,EAAEkU,GAAG61L,GAAI71L,EAAE6zV,IAAI1kW,GAAG0mM,GAAI71L,EAAE8zV,IAAI1lL,GAAIC,GAAGgoB,IAAIr2L,EAAE6zV,OAAO3zV,GAmG9e,SAAapS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAEvU,EAAE6pK,GAAGgrC,IAAIh2M,EAAEmsP,IAAK,IAAIpxF,GAAIx7J,GAAIlS,EAAED,EAAE,GAAG,IAAI4tK,GAAIh7J,KAAK,IAAIzS,EAAE4T,EAAE6pK,GAAG4qB,IAAIz0L,GAAG4yR,MAAMw5D,MAAM,IAAI,KAAK36V,EAAE,EAAE,KAAQuO,GAAK5T,GAAE,CAAiB,IAAhBlC,EAAE,EAAEqqB,EAAE,EAAEkH,EAAEzb,EAAE/T,EAAEG,EAAMuD,EAAE,EAAEA,EAAE8B,EAAE9B,IAAK8rB,EAAEuwP,GAAIvwP,GAAGxvB,EAAE+/Q,GAAI//Q,GAAGsoB,GAAGi4J,GAAIC,GAAGgoB,IAAIh5K,GAAGm3Q,MAAMs/D,QAAQhoW,GAAGsiL,GAAIC,GAAGgoB,IAAIxoM,EAAEimW,OAAsF,GAA/E/xV,EAAEqsK,GAAIC,GAAGgoB,IAAIroM,GAAGwmS,MAAMq/D,QAAQlyV,EAAEysK,GAAIC,GAAGgoB,IAAIz0L,EAAEiyV,OAAO/yV,EAAE67P,GAAI/6P,EAAE5T,GAAsB,GAAnBN,EAAEqU,EAAEjW,EAAEgC,EAAEA,EAAEgT,EAAEa,EAAEwU,GAAS,CAAS,IAARjW,EAAEF,EAAE7Q,EAAE,EAAU+Q,GAAGA,GAAGrS,KAAKsB,EAAE+Q,EAAEurK,GAAG4qB,IAAIn2L,EAAEguV,KAAK,IAAI,IAAGhuV,EAAkI,OAArH,IAAVM,EAAE9S,EAAEyB,EAAE+Q,EAAEF,EAAQE,GAAGrS,GAAGiU,EAAEssK,GAAIC,GAAGgoB,IAAIn2L,EAAE2zV,OAAOnmW,EAAEmoM,GAAI31L,EAAE2zV,IAAI/xV,GAAG5Q,EAAEk9K,GAAIC,GAAGgoB,IAAIn2L,EAAE4zV,OAAOpmW,EAAEmoM,GAAI31L,EAAE4zV,IAAI5iW,GAAGxD,GAAG8S,EAAEN,EAAEurK,GAAG4qB,IAAIn2L,EAAEguV,KAAK,GAAiB,GAAG76V,EAAuFrF,GAA3E4T,EAAH,GAAPA,EAAE/T,EAAEmS,EAAQk5V,IAAI,IAAI19L,GAAIx7J,GAAG3M,GAAOo4K,GAAGgrC,GAA8B,IAAIh7C,GAA5BmxF,IAAK,IAAIpxF,GAAI55J,GAAI9T,EAAED,EAAE,KAAgB,KAAS49K,GAAG4qB,IAAIz0L,EAAEosV,KAAK,IAAI,IAAI,CAAC,CAnGxKqa,CAAIv6W,EAAEkS,IAAQ61L,GAAI71L,EAAE6zV,IAAI3zV,EAAG,CAAC,CAC7gB,SAASooW,IAAIx6W,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAIqD,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEuD,EAAE,EAAEvD,EAAE,EAAElC,EAAEwwP,GAAIxuP,EAAE86B,EAAE96B,EAAE86B,EAAE58B,QAAQ48B,EAAE96B,EAAED,EAAE4S,EAAE3S,EAAEhC,EAAE+B,EAAEC,EAAEA,EAAEuF,EAAEvF,EAAEkS,EAAE,EAAE,CAAK,IAAJtS,EAAE,EAAMyB,EAAE,IAAIskK,GAAI3lK,EAAEoD,GAAG/B,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAAyB8U,EAAEynW,IAAIz6W,EAApB29K,GAAGC,GAAIv8K,GAAG,KAAekuB,GAAE,GAAMvvB,EAAEgU,IAAI6zR,MAAME,MAAM/nS,EAAEgU,GAAGg0R,OAAOz4Q,EAAE0yJ,GAAIk6B,GAAGnpM,EAAEd,KAAQyrK,GAAG3qK,EAAEhT,EAAE,IAAIA,EAAE,GAAGuvB,KAAK3vB,EAAE5B,EAAEwwP,GAAIxuP,EAAE86B,EAAE96B,EAAE86B,EAAE58B,QAAQ8B,EAAED,EAAEC,EAAED,EAAE49K,GAAG3qK,EAAEhT,EAAE,IAAIA,EAAEE,GAAG46B,EAAE96B,EAAED,EAAE+6B,EAAE96B,EAAED,EAAE49K,GAAG3qK,EAAEhT,EAAE,IAAIA,EAAE2S,EAAE3S,EAAEhC,EAAE+B,EAAEs3P,GAAGr3P,EAAEA,GAAGuF,EAAE8xP,GAAGr3P,EAAEkS,KAAQlS,EAAE86B,EAAE0zN,GAAIxwP,EAAEA,EAAEE,QAAQ8B,EAAED,EAAE+6B,EAAE96B,EAAEA,GAAG+jL,GAAGhkL,GAAGA,EAAE,IAAIi/N,GAAIj/N,GAAGuiO,GAAG,IAAI38D,GAAI5lK,KAAKC,EAAEkS,GAAG6xK,GAAGx+K,GAAGA,EAAE,IAAIy5N,GAAIz5N,GAAG+8N,GAAG,IAAI38D,GAAIpgK,KAAKvF,EAAEhC,EAAE2U,KAAKlP,EAAEqQ,EAAK,GAAHlU,GAAMqiL,GAAIk6B,GAAGjqM,EAAEkqM,GAAG,IAAI5F,GAAIwB,GAAI93M,GAAG83M,GAAIv0M,MAAM,OAAOqQ,EAAE,CAG/gB,SAAS4mW,IAAI16W,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAE,KAAG6Q,EAAE3M,EAAEgqB,EAAErxB,QAAQ,GAAjB,CAAwJ,IAA7H8B,EAAE86B,EAAE5oB,EAAElS,EAAED,EAAE49K,GAAG4qB,IAAIvoM,EAAE86B,GAAGmgI,MAAM0rK,MAAM,KAAK3mU,EAAE2S,EAAEgrK,GAAG4qB,IAAIvoM,EAAE86B,EAAE+rS,KAAK,IAAI7mU,EAAEA,EAAEuF,EAAE+6K,GAAIC,GAAGgoB,IAAIvoM,EAAE86B,EAAE8rS,OAAO5mU,EAAEuvB,EAAE+wJ,GAAIC,GAAGgoB,IAAIvoM,EAAE86B,EAAEgsS,OAAOtwF,GAAGx2O,EAAEkS,GAAO3M,EAAE,IAAIogK,GAAI3lK,EAAE86B,EAAEvL,GAAGhqB,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAS6B,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAKmjW,IAAG1oW,EAAEkS,EAAEnS,EAAEwvB,EAAExvB,EAAE,MAAM2oW,IAAG1oW,EAAEkS,EAAEnS,EAAEA,EAAEA,EAAE,MAAgE,IAA1D0D,EAAEzD,EAAE86B,EAAEv1B,EAAEgqB,EAAErxB,OAAO8B,EAAEA,EAAEwoO,GAAGv1C,IAAG,CAACY,IAAI4yD,KAAK,CAAC,IAAI,IAAI,GAAG,CAAChjP,EAAEA,GAAG,GAAO2O,EAAE,IAAIuzJ,GAAI3lK,EAAE86B,EAAEv1B,GAAG6M,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAA0Bs4W,IAAIx2W,EAArBhC,EAAE2/K,GAAGC,GAAIxrK,GAAG,KAAapS,EAAEA,EAAEhC,EAAEkU,IAA6C,IAAzClS,EAAEhC,EAAEwqO,GAAGv1C,IAAG,CAACY,IAAI4yD,KAAK,CAAC,IAAI,IAAI,GAAG,CAAChjP,EAAEA,GAAG,GAAOq3B,EAAE,EAAEA,EAAEr3B,IAAIq3B,EAAG,IAAInoB,EAAE,EAAEA,EAAElP,IAAIkP,EAAetR,EAAE,IAAdkuB,EAAEvvB,EAAEA,EAAE86B,GAAGnoB,IAAU4c,GAAGvvB,EAAEhC,EAAE88B,GAAGnoB,GAAGtR,CAA7c,CAAgd,CAClhB,SAASqxW,IAAI1yW,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAE,KAAQ,MAALvF,EAAEkS,GAASlS,EAAEkS,EAAEhU,QAAQ,KAAY8B,EAAEA,EAAL,CAAsB,IAARkS,EAAE,EAAE3M,EAAE,EAAQA,EAAEvF,EAAEkS,EAAEhU,QAAO,CAAiE,IAA7DgU,GAAG3M,GAAGvF,EAAEkS,EAAEA,GAAGlS,EAAEkS,EAAE3M,KAAKvF,EAAEkS,EAAEA,EAAE,GAAGlS,EAAEkS,EAAE3M,MAAUA,GAAG,EAAEgqB,EAAEvvB,EAAEkS,EAAEA,EAAE,GAAS3M,EAAEvF,EAAEkS,EAAEhU,UAAWqxB,EAAE,EAAEvvB,EAAEkS,EAAE3M,KAAS,GAAGgqB,EAAE,GAAGvvB,EAAEkS,EAAE3M,GAAIvF,EAAEkS,EAAEA,EAAE,GAAGlS,EAAEkS,EAAE3M,EAAE,GAAGgqB,EAAEvvB,EAAEkS,EAAEA,EAAE,GAAG3M,GAAG,OAAO,GAAGgqB,GAAGvvB,EAAEkS,EAAE3M,EAAE,GAAIA,GAAG,MAAO,MAAGgqB,EAAEvvB,EAAEkS,EAAE3M,EAAE,IAA2C,MAAM2tK,GAAI,IAAIiK,GAAG,2CAA2Cn9K,EAAEkS,EAAEA,GAAG,IAAIlS,EAAEkS,EAAEA,EAAE,GAAG,MAAMlS,EAAEkS,EAAE3M,GAAG,IAAIvF,EAAEkS,EAAE3M,EAAE,GAAG,MAAjJvF,EAAEkS,EAAEA,EAAE,GAAGlS,EAAEkS,EAAE3M,EAAE,GAAGgqB,EAAEvvB,EAAEkS,EAAEA,EAAE,GAAG3M,GAAG,CAAsH,CAAE2M,GAAG,CAAC,CAAIA,GAAGlS,EAAEkS,EAAEhU,SAAQ6B,EAAEk+K,GAAGmV,IAAGsW,IAAI,GAAGx3L,EAAE,GAAG,GAAGoxP,IAAItjQ,EAAEkS,EAAE,EAAEnS,EAAE,EAAEmS,GAAGlS,EAAEkS,EAAEnS,GAAEC,EAAEA,GAAE,CAAtc,CAA0c,CAIthB,SAAS6mV,IAAI7mV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAiD,IAAtC8nB,EAAEmnJ,GAAIk6B,GAAG7D,IAAlBpmM,EAAEi+O,GAAInwP,IAAmBq9J,MAAMkzK,QAAQlvU,EAAE,EAAEkE,EAAE,EAAM6M,EAAE,IAAI2sK,KAAM/+K,EAAEuF,IAAIvF,EAAEuF,EAAE,IAAIwlN,GAAIl9B,IAAG7tL,EAAE,EAAE,IAAIA,EAAEuF,IAAI6M,EAAE7M,GAAG6M,EAAEpU,EAAEihL,MAAgCtsK,GAATlP,EAAE+sU,IAAlBxyU,EAAE2/K,GAAGwB,IAAI/sK,GAAG,OAAkB0oB,GAAGmnJ,GAAIk6B,GAAG7D,IAAIt6M,EAAEyyU,OAAOz9T,EAAEg4M,IAAIrtC,GAAG0O,KAAMruL,EAAEuxB,IAAIvxB,EAAEuxB,EAAE,IAAIw7L,GAAI19B,IAAGrvL,EAAE,EAAE,IAAIA,EAAEuxB,GAAG,GAAG,KAAK9rB,GAAGkP,IAAIpN,EAAE9B,IAAIkP,IAAItR,EAAEy8M,GAAI9qM,IAAId,GAAGc,GAAGd,IAAI3M,IAAIlE,EAAE,IAAItB,EAAE,IAAIg/K,KAAM/+K,EAAED,IAAIC,EAAED,EAAE,IAAIgrN,GAAIl9B,IAAG7tL,EAAE,EAAE,IAAIA,EAAED,IAAIA,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAgCtsK,GAATlP,EAAE+sU,IAAlBjhT,EAAEouJ,GAAGwB,IAAIp/K,GAAG,OAAkB+6B,GAAGmnJ,GAAIk6B,GAAG7D,IAAI/oL,EAAEkhT,OAAO38T,EAAEk3M,IAAIrtC,GAAG0O,KAAM98J,EAAErd,IAAIqd,EAAErd,EAAE,IAAI64M,GAAI19B,IAAG99J,EAAE,EAAE,IAAIA,EAAErd,GAAG,GAAG,KAAKzO,GAAGkP,IAAItR,EAAEoC,IAAIkP,IAAIpN,EAAEu4M,GAAIhqM,IAAI5B,GAAG4B,GAAG5B,IAAI7Q,IAAIkE,EAAE,OAAOlE,EAAEkE,CAAC,CAE7hB,SAASu/U,IAAI9kV,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAEu1B,EAAEnoB,EAAElP,EAAI2O,EAAI0B,EAAEd,EAAEpT,EAA6E,IAAzE6D,EAAO,MAALyO,EAAE9O,IAAU8O,EAAEA,IAAK2vR,IAAI3vR,EAAE82V,IAAI,GAA+Br2V,EAAE,GAA9B4c,EAAEouJ,GAAG4qB,IAAIvoM,GAAGgoM,MAAM6gH,MAAM,KAAU5pI,KAAQ/sK,EAAEtS,EAAmE,IAAhE2lO,GAAIrzN,EAAE,kCAAkCqd,EAAE0vJ,KAAK,aAAar/K,EAAE,EAAMoT,EAAEuc,EAAEosL,KAAK3oM,EAAEuoM,MAA2CgqB,GAAIrzN,EAAE,aAAvBtS,EAAE,GAAG,IAAI,IAAIA,KAAuB,KAAKypL,GAAIrgG,GAA9D20F,GAAG3qK,EAAEyoM,KAAK,OAAiE,IAAF,EAAM3nM,EAAEyb,EAAEosL,KAAK7nM,EAAEynM,MAAS59B,GAAG7pK,EAAE2nM,KAAK,IAAMqtG,GAAG9oT,EAAEkmS,GAAIh0R,EAAES,IAAQ,IAAImoB,EAAE,IAAI6qI,GAAI3lK,EAAEkS,GAAG4oB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAASqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,IAAI8tN,GAAI5oP,EAAEA,EAAEuF,EAAEvF,GAAGuF,EAAEvF,EAAEuvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAG,IAAI/rK,EAAE,IAAIuzJ,GAAI3lK,EAAEA,GAAGoS,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAyBo0P,GAAd30E,GAAGC,GAAIxrK,GAAG,IAAU,MAAMpS,EAAEkS,EAAEqd,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAG16K,GAAG8+R,IAAIrwR,EAAE,CAE/hB,SAASyoW,IAAI36W,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAY,IAAVA,EAAE,IAAIsyK,GAAQ13I,EAAE96B,EAAEA,EAAE2hP,KAAKhmC,KAAK7gL,EAAEygL,MAAwB5kB,GAAIz2L,EAArBH,EAAE49K,GAAG7iJ,EAAE2gL,KAAK,KAAalsL,EAAEqrV,GAAG76W,IAA2G,IAApGgkL,GAAG/jL,GAAmC8kN,GAAzCnyM,EAAS3S,EAAE,IAAIg/N,GAAIh/N,GAAGsiO,GAAGtiO,EAAEA,EAAE2hP,KAAKhmC,MAAa,IAAIn0C,GAAItnK,IAAIuD,EAAEqjQ,GAAGn0P,GAAG3U,EAAE,IAAIsnN,GAAIpzM,GAAa2uO,KAAVjhP,EAAE,IAAI4yK,IAAU13I,EAAE5oB,EAAElU,GAAmB,GAAVyF,EAAEzD,EAAEi/K,MAAQ,CAAsB,IAArB7sK,EAAE,KAAK/Q,EAAE,KAAKyS,EAAE,KAASvO,EAAE9B,EAAEzD,EAAE2hP,KAAKhmC,KAAKp2M,EAAEg2M,MAAwB,GAAjBx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,KAAQn7B,GAAIC,GAAGs6B,GAAGq4B,GAAIhzO,EAAE46B,EAAE/6B,OAAOu2K,IAAI,CAAC,GAAGsqB,GAAIhhM,EAAEG,EAAEC,KAAK4gM,GAAIhhM,EAAEG,EAAEmS,GAAG,CAAC7Q,EAAEtB,EAAEmS,EAAE4B,EAAE/T,EAAEC,EAAEoS,EAAErS,EAAE,KAAK,CAAC,GAAG6gM,GAAIhhM,EAAEG,EAAEmS,KAAQ0uL,GAAIhhM,EAAEG,EAAEC,GAAG,CAACqB,EAAEtB,EAAEC,EAAE8T,EAAE/T,EAAEmS,EAAEE,EAAErS,EAAE,KAAK,CAAE,CAAE,IAAIqS,EAAG,MAAMY,EAAE,IAAIsyM,GAAIjkN,GAAG00K,GAAI4H,GAAGk9B,GAAGq4B,GAAItzO,EAAEk7B,EAAEhnB,IAAI,KAAK9T,EAAEgT,GAAG6tO,IAAIjhP,EAAEk7B,EAAEz5B,EAAE2R,GAAGvP,EAAEzD,EAAE0oN,GAAGt2M,EAAQ,CAAC,OAAOpU,CAAC,CAIhiB,SAASwyT,IAAIxwT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAIoN,EAAElP,EAAE,GAAIyO,EAA6B,IAAnBlS,EAAEA,IAAIA,EAAEA,EAAE,IAAI22K,IAAa,GAAL32K,EAAEuF,EAAwB,GAAQ,GAAL2M,EAAE3M,EAAwE,IAAvB9B,EAAEzD,EAAEA,EAAEA,EAAEuvB,EAAErxB,QAAoE,IAAlCyU,EAAEgrK,GAAGof,GAAI/8L,EAAEA,EAAEyD,EAAE,GAAG,MAAa8B,GAAW,IAALoN,EAAEpN,GAAc,GAAL2M,EAAE3M,GAAW,IAAL2M,EAAE3M,EAASuwK,GAAI91K,EAAEA,EAAEkS,IAAiB,GAALA,EAAE3M,EAAK,EAAE2M,EAAE2oW,KAAK38W,OAAe,GAALyU,EAAEpN,GAAMgqB,EAAE,IAAIg1J,IAAIxkL,EAAE4S,EAAE0xD,OAAQsjJ,IAAIlL,GAAIltL,EAAEi2R,GAAIzlT,IAAIy8L,GAAIjtK,EAAExvB,EAAE08L,KAAK9pL,EAAS,IAAI68N,GAAI,GAAG,KAAK,GA/sGzY,SAAaxvO,EAAEkS,EAAEqd,GAAG8hN,GAAI9hN,EAAEvvB,EAAEA,EAAEuvB,EAAErxB,QAAQk2O,GAAIp0O,EAAEA,EAAEuvB,EAAErd,EAAE,CA+sGyV4oW,CAAI96W,EAAEA,EAAE2S,EAAElP,EAAE,KAAWkP,EAAEkoW,KAAK38W,OAAkBu+M,GAA5BltL,EAAmB,IAAIg1J,GAAW5xK,EAAEkoW,OAAc,GAAL3oW,EAAE3M,GAAMxF,EAAEmS,EAAEmyD,OAAQsjJ,IAAIlL,GAAIltL,EAAEi2R,GAAIzlT,IAAIy8L,GAAIjtK,EAAExvB,EAAE08L,KAAUggB,GAAIltL,EAAErd,EAAE2oW,MAAMl9L,GAAGhrK,EAAE,KAAKT,EAAEqd,EAAEvvB,GAAlX81K,GAAI91K,EAAEA,EAAEkS,QAA7E,IAAI3M,EAAE,EAAEA,EAAE2M,EAAE6oW,KAAKx1W,IAAIirT,IAAIxwT,EAAEkS,EAAE8oW,GAAGz1W,SAA7DuwK,GAAI91K,EAAEA,EAAEkS,EAA6c,CACniB,SAASa,IAAI/S,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,OAAQ,MAAL96B,EAAE2S,EAAgB3S,EAAE2S,EAAK3S,EAAEA,EAAE,IAAIA,EAAE2S,EAqMpE,SAAa3S,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAA6B,GAAjEspS,MAAsC1uS,EAAEkvM,GAAIltM,EAAE,GAAG,EAAEhC,IAAIgC,EAAEgqR,GAAIhqR,IAAiB,GAAVktM,GAAIltM,EAAE,GAAO,OAAOkS,GAAG,KAAK,EAAE,MAAO,IAAI,KAAK,EAAE,OAAO66K,IAAI,KAAK,EAAE,MAAO,OAAO,KAAK,EAAE,MAAO,QAAQ,KAAK,EAAE,MAAO,SAAS,KAAK,EAAE,MAAO,UAAU,KAAK,EAAE,MAAO,WAAW,QAAkF,OAA1EntL,EAAE,IAAI4kL,IAAWxkL,GAAPkS,EAAE,EAAQ,MAAe,KAAQtS,EAAEI,GAAGkS,GAAG+lL,IAAI,aAAa,IAAI/lL,EAAStS,EAAEI,EAAS8T,EAAEmqK,GAAGo3C,IAAGC,IAAI,GAAK,GAAtBj0N,EAAE,IAAsB,GAAG,GAAGkuB,EAAEluB,EAAE+B,EAAEpD,EAAE,GAAGoS,EAAEhP,EAAEA,EAAEunM,IAAIvnM,EAAE,IAAI0Q,IAAIyb,GAAG06L,GAAIvf,GAAI,GAAGymE,GAAI/+P,EAAE2mL,GAAI31L,EAAE,OAAOq5L,UAAoB,GAAVyQ,GAAI9pM,EAAE,IAAgC,GAAzBmC,EAAE4rQ,GAAIA,GAAIA,GAAI9vQ,EAAEkuB,GAAGrd,GAAG,GAAS,GAAHA,EAAqB,OAAflU,IAAI8V,IAAIyb,GAAG,IAAWs5L,IAAI/0M,EAAEyb,EAAEluB,EAAEkuB,GAAG,GAAGrd,EAAE,GAAGg7L,GAAI3nM,GAAG,IAAI,EAAE,CAAC,GAAG2nM,GAAI3nM,EAAE,IAAI,EAAE,CAAY,IAAXu1B,EAAEvL,EAAE06L,GAAI1kN,GAAO9B,EAAEpC,EAAE,EAAEoC,GAAGq3B,EAAEr3B,IAAKqQ,EAAErQ,EAAE,GAAGqQ,EAAErQ,GAA4B,OAAzBqQ,IAAIgnB,GAAG,GAAG98B,IAAI8V,IAAIyb,GAAG,IAAWs5L,IAAI/0M,EAAEyb,EAAEluB,EAAEkuB,EAAE,EAAE,CAAC,IAAI5c,EAAE,EAAEm4L,GAAIn4L,EAAE+3L,GAAIs/E,GAAIzkR,GAAG,IAAIoN,IAAKmB,IAAIyb,GAAG,GAAsC,OAAnCzb,IAAIyb,GAAG,GAAGzb,IAAIyb,GAAG,GAAGvxB,IAAI8V,IAAIyb,GAAG,IAAWs5L,IAAI/0M,EAAEyb,EAAEluB,EAAEkuB,EAAE,CAACrvB,EAAEqvB,EAAE,EAAExvB,EAAEsB,EAAE2R,EAAE,IAAIyxK,GAAIzmL,IAAIgV,EAAEhT,GAAG,KAAUD,EAAEG,GAAG,GAAG44O,GAAI9lO,EAAEc,EAAEyb,IAAIvc,EAAEhT,GAAG,IAAIgT,EAAEhT,GAAG6oN,IAAI/0M,EAAEyb,EAAE,EAAEluB,EAAEkuB,EAAE,IAAQvc,EAAEhT,GAAG6oN,IAAI/0M,EAAEyb,EAAEluB,EAAEkuB,GAAoD,OAAjDvc,EAAEhT,GAAG,IAAIktM,GAAI3nM,EAAE,GAAG,IAAIyN,EAAEhT,GAAG,KAAOgT,EAAEhT,GAAG,GAAGyvO,GAAIlqO,GAAUyN,EAAEhT,CAAC,CArMt2Bi7W,CAAIrwK,GAAI5qM,EAAE86B,GAAGq9J,GAAGn4L,EAAEuF,IAAWvF,EAAE2S,IAAEpN,EAAE21W,MAAMl7W,EAAEuvB,IAAIvvB,EAAEuvB,EAAE4uQ,GAAIn+R,EAAE86B,IAAI96B,EAAEuvB,GAAG,GAAW,GAALvvB,EAAEuF,EAAaA,GAAE2M,IAAIlS,EAAEuvB,IAAIvvB,EAAEuvB,EAAE4uQ,GAAIn+R,EAAE86B,IAAI96B,EAAEuvB,GAAGhqB,EAAE,EAAE,EAAE,EAAEgqB,EAAEhqB,EAAErH,OAAO6B,GAAGC,EAAEuF,EAAEgqB,EAAErd,GAAE4oB,EAAE,IAAI0pJ,IAAMxkL,GAAG,GAAGuF,EAAKvF,EAAEuF,EAAE,GAAGxF,IAAI,EAAMA,GAAG,EAAGgyP,GAAIj3N,EAAEvL,EAAE4oK,GAAGn4L,EAAEuF,GAAGk+F,OAAOgjH,aAAa,MAAU3rL,EAAE96B,EAAE83L,GAAIh9J,EAAE96B,EAAE,EAAEkS,EAAE,GAAG,KAAK6pM,GAAIjhL,EAAE96B,EAAEkS,EAAE,GAAG6/O,GAAIj3N,EAAE5oB,EAAE,EAAE22M,IAAIsyJ,IAAI,GAAGhjL,GAAGp4L,GAAG,MAAawvB,EAAErd,GAAG,IAAG6/O,GAAIj3N,EAAE5oB,EAAEuxF,OAAOgjH,aAAa,OAAOl3L,GAAEwiO,GAAIj3N,EAAEvL,EAAEk0E,OAAOgjH,aAAa,KAAK1mN,EAAE,GAAGgyP,GAAIj3N,IAAIvL,EAAEk0E,OAAOgjH,aAAa,KAAKsrC,GAAIj3N,IAAIvL,EAAE,GAAGkgN,GAAI7kC,GAAI7qM,MAAKC,EAAE2S,EAAEmoB,EAAE96B,EAASA,EAAE2S,GAAC,CAGriB,SAASyoW,IAAIp7W,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAA+B,IAA7Bv1B,EAAEo4K,GAAG4qB,IAAIr2L,GAAGmrJ,MAAM07M,MAAM,QAAYhgF,MAAME,KAAb,CAA2J,GAAjI4I,IAAItyQ,EAAE,wBAAwB,GAAGvvB,EAAEA,EAAEkS,EAAYnS,EAAE,IAAIimV,MAAhBlrT,EAAE,IAAImvP,IAAiBlqR,EAAEmS,EAAE4oB,EAAEvL,EAAEouJ,GAAG4qB,IAAIztK,EAAE/6B,EAAE2iS,KAAK,KAjV3K,SAAa1iS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAc,IAAZyO,GAAE,EAAMqd,EAAE,EAAMhqB,EAAE,IAAIogK,GAAI3lK,EAAED,EAAEmS,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAiC,KAAxB6B,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAMnC,EAAEmsB,IAAQ5c,EAAE,IAAIgzJ,GAAI5lK,EAAEC,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAKT,IAAIowP,GAAGkkD,GAAI1rR,MAAM5oB,GAAE,GAAOzO,EAAEkoO,IAAKgnD,KAAMC,KAAKr0G,GAAGC,GAAGzjJ,IAAG,GAAGkxM,IAAI,IAAI,EAAE,CAACrrB,IAAIC,OAAW3uM,IAAG01L,GAAInkM,EAAEq9M,KAAKlZ,GAAInkM,EAAEs9M,MAAK/gN,EAAEA,EAAE,IAAIq0R,GAAI5wR,GAAGgvK,GAAIzyK,EAAE86B,GAAG23I,GAAIzyK,EAAEkS,GAAGugK,GAAIzyK,EAAEuF,GAAGktK,GAAIzyK,EAAE2S,EAAE,CAiVlJ0oW,CAAIvgV,GA2EpL,SAAa96B,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAE,IAAInB,EAAE,IAAIgzJ,GAAI3lK,EAAED,EAAEmS,GAAGS,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAyB,IAAIF,EAAE,IAAI2nK,GAAxBgY,GAAGC,GAAIjrK,GAAG,IAAoB3S,GAAGhC,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,SAA4B+jL,GAAIk6B,GAAG5T,IAA1B9kM,EAAEk6K,GAAGC,GAAI5/K,GAAG,KAAqBq/J,MAAMi+M,SAAah5G,GAAGkkD,GAAI/iT,KAAuG8B,EAAE,IAAI2iM,GAAIzkM,EAAE7D,EAAEI,EAAEyD,EAAE1D,EAAEmS,EAAEzO,EAAE7D,EAAEsS,EAAEzO,EAAE1D,EAAEA,EAAE0D,EAAEvD,EAAEF,EAAEyD,EAAE1D,EAAEmS,EAAEzO,EAAE1D,EAAEwvB,EAAE9rB,EAAEvD,EAAEgS,EAAEzO,EAAE1D,EAAEA,EAAE0D,EAAE1D,EAAEC,GAAGkS,EAAE+8M,GAAIhtB,GAAIF,GAAIC,GAAI,IAAIxqB,GAAI/zK,GAAG8B,GAAG07N,KAAKjhO,EAAEA,GAAGgvN,GAAIltB,GAAIy7F,GAAI,IAAIjmH,GAAIiH,GAAGC,GAAGihK,IAAG,GAAGthK,IAAI,GAAG,EAAE,CAACjsK,KAAKA,GAAGlS,EAAEA,GAAGoS,EAAE,IAAIsgK,GAAIikB,GAAI32L,EAAEuF,EAAE2M,EAAEE,IAAGmd,EAAEk0O,GAAG,IAAI30B,GAAG7hB,GAAGi1E,GAAIz+R,GAAGzD,EAAE27M,KAAK,IAAIpoE,KAAMkwH,GAAG,IAAI30B,GAAG7hB,GAAGm1E,GAAI3+R,GAAGzD,EAAE27M,KAAK,IAAIpoE,MAAQ,EAAE+/J,GAAIlhS,GAAE,GAAMugR,KAAM/xE,MAAMrxL,EAAE,GAAG+jR,GAAIlhS,GAAE,GAAMugR,KAAM9xE,MAAMp9M,EAAEpC,IAAI49P,MAAMC,MAAMvsF,GAAIvgK,GAAGukL,GAAI32L,EAAE86B,EAAEr3B,EAAEyO,MAArb7Q,GAApBtB,EAAE49K,GAAGwsE,GAAGq8D,GAAI/iT,IAAI,KAAQ8rB,EAAEvxB,IAAKyF,IAAIpC,EAAEtB,EAAEA,EAAE/B,GAAG8V,EAAE,IAAI0iM,GAAIn1M,EAAEw5N,GAAI5U,GAAIxiN,EAAE7D,GAAGyB,EAAEzB,IAAI+2L,GAAI32L,EAAEkS,EAAEzO,EAAEqQ,GAAwX,CA3E9dynW,CAAIzgV,GAAGwnU,IAAIxnU,GAAGA,EAAE96B,IA7/IvM,SAAaA,EAAEkS,GAAGlS,EAAE2S,EAAET,CAAU,CA6/I2KspW,CAAIz7W,EAAEC,EAAEkS,GAAqC,IAA3ByrK,GAAG4qB,IAAIr2L,EAAEupW,KAAK,KAAK9oW,EAAUqzK,GAAIjmL,EAAE,IAAI0iS,GAAIziS,EAAEA,SAAkBgmL,GAAIjmL,GAAGkpP,KAAMG,MAAO,OAAO7jP,EAAEoN,GAAG,KAAK,EAAEo8U,IAAIhvV,GAAG,MAAM,KAAK,EAAEgvV,IAAII,IAAIpvV,GAAG4yR,KAAM9xE,OAAO,MAAM,KAAK,EAAEkuI,IAAIhpK,GAAIopK,IAAIJ,IAAIhvV,IAAI4yR,KAAM9xE,MAAM,IAAIp8D,KAAM,MAAM,KAAK,EAAEsqM,IAAIhpK,GAAIopK,IAAIJ,IAAIhvV,IAAI4yR,KAAM9xE,MAAM,IAAIj2C,GAAI9vI,KAAK,MAAM,KAAK,EAAEi0T,IA//I7e,SAAa/uV,EAAEkS,GAAS,OAANlS,EAAEkS,EAAEA,EAASlS,CAAC,CA+/Iid07W,CAAI37W,EAAEwkM,MAAO4qJ,IAAIpvV,GAAG4yR,KAAM/xE,MAAM7gN,EAAEwF,GAAE,EAwIrhB,SAAavF,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEm8L,GAAIyoB,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAIvtM,EAAEA,EAAEkS,EAAE,KAAK,IAAI2yI,IAAK,IAAIC,IA5rCjF,SAAa9kJ,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAE,IAAI/6B,EAAE,IAAI64S,GAAK,IAAIt0I,GAAItkK,EAAEkS,GAAIlS,GAAGD,EAAEmS,GAAaA,EAAEyrK,IAAXpuJ,EAAE6mQ,GAAIr2R,IAAU8sM,KAAK,IAAI/xK,EAAE6iJ,GAAGA,GAAGpuJ,EAAEurL,KAAK,IAAI96M,EAAE,IAAIuF,EAAEo4K,GAAGA,GAAGpuJ,EAAEurL,KAAK,IAAI5oM,EAAE,GAAG2tK,GAAI69B,GAAIxrM,EAAEtS,GAAGigL,GAAIomC,GAAInrL,EAAEl7B,GAAG2F,GAAI,CA4rCtFo2W,CAAI37W,GAAG0hM,GAAIyoB,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAIvtM,EAAEA,EAAEkS,EAAE,KAAK,IAAI6yI,IAAK,IAAIC,IAAQhlJ,EAAEuvB,IAAIg5P,KAAMI,OAAMjnF,GAAIyoB,GAAIgjE,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAI,IAAIhpC,GAAIvkK,EAAE86B,GAAG,IAAI,IAAImqH,IAAK,IAAIC,IAAK,IAAI8lB,GAAIhrK,IAAI0hM,GAAIyoB,GAAIgsB,GAAIg3C,GAAIA,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAIvtM,EAAED,EAAEmS,EAAE,KAAK,IAAIizI,IAAK,IAAIC,IAAK,IAAIC,IAAK,IAAIC,IAAK,IAAI4lB,GAAIlrK,KAA0C,IAAtCuF,EAAE,IAAI0vM,GAAI3+B,IAAIA,KAAKpkK,EAAE,IAAI+iM,GAAI1+B,IAAIA,KAASx2K,EAAE,IAAI4lK,GAAI3lK,EAAEA,EAAEkS,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,IAAIwF,EAAEvF,EAAEizI,EAAK3/H,KAAKsgB,IAAIruB,EAAEvF,EAAEuvB,EAAExvB,EAAEwvB,GAAGhqB,EAAE2M,EAAE+gI,EAAK3/H,KAAKsgB,IAAIruB,EAAE2M,EAAEqd,EAAExvB,EAAEA,GAAGmS,EAAElS,EAAEizI,EAAK3/H,KAAKugB,IAAI3hB,EAAElS,EAAEuvB,EAAExvB,EAAEwvB,EAAEA,EAAExvB,EAAEmS,GAAGA,EAAEA,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAEA,EAAEqd,EAAExvB,EAAEA,EAAEwvB,EAAExvB,EAAEC,GAAG6/K,GAAI69B,GAAI19M,EAAED,EAAEwvB,GAAGwjM,GAAI,IAAI9d,GAAI1vM,EAAEvF,EAAEuF,EAAE2M,KAAK2tK,GAAI69B,GAAI19M,EAAED,EAAE+6B,GAAG+/L,GAAI,IAAI5lB,GAAI/iM,EAAElS,EAAEkS,EAAEA,GAAG3M,IA3mBxoB,SAAavF,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAEu1B,EAAE,IAAIv1B,EAAE,IAAIogK,GAAI3lK,EAAEA,EAAEkS,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAkC,IAAT48B,EAAEohO,GAAhBv+E,GAAGC,GAAIr4K,GAAG,OAAsBu1B,EAAEz5B,IAAI49P,MAAMC,KAAM,OAAOvhF,GAAG4qB,IAAIztK,GAAGktK,MAAMe,MAAM,IAAIp2L,GAAG,KAAK,EAAEmoB,EAAEl7B,EAAEI,EAAEkS,EAAElS,EAAE,MAAM,KAAK,EAAE86B,EAAEl7B,EAAEI,EAAEuvB,EAAEvvB,GAAG86B,EAAE56B,EAAEF,EAAE86B,EAAE/6B,EAAEwvB,GAAG,MAAM,KAAK,EAAEuL,EAAEl7B,EAAEsS,EAAEA,EAAEA,EAAE,MAAM,KAAK,EAAE4oB,EAAEl7B,EAAEsS,EAAEqd,EAAErd,GAAG4oB,EAAE56B,EAAEgS,EAAE4oB,EAAE/6B,EAAEC,GAAO,CA2mBwX47W,CAAI57W,EAAEuF,EAAE2M,GAAGugK,GAAIzyK,EAAE86B,GAAG23I,GAAIzyK,EAAEkS,GAAGugK,GAAIzyK,EAAE2S,GAAG8/J,GAAIzyK,EAAEuF,GAAGvF,EAAEA,EAAEA,EAAEuvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGn+K,EAAEA,EAAEkS,EAAEqd,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGn+K,EAAEA,EAAE,KAAKA,EAAED,EAAE,IAAI,CAxIxO87W,CAAI/gV,GAAGynQ,IAAIhzQ,EAAjd,CAAmd,CACviB,SAASusV,IAAI97W,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,GAAG,IAAIzF,EAAEoU,EAAE/Q,EAAEyS,EAAgD,OAA9C9V,EAAE2yQ,GAAGpyF,GAAGC,GAAGu9L,IAAG,GAAG59L,IAAI,IAAI,EAAE,CAACjsK,EAAEqd,EAAExvB,EAAEwF,KAAKuO,EAAE,KAAY9T,EAAEkS,EAAES,GAAG,KAAK,EAAEmB,EAAE68P,GAAGpyF,GAAGC,GAAGw9L,IAAG,GAAG79L,IAAI,IAAI,EAAE,CAAC,IAAI1wB,GAAI,IAAIF,GAAI,IAAIC,MAAO,MAAM,KAAK,EAAE15I,EAAE68P,GAAGpyF,GAAGC,GAAGw9L,IAAG,GAAG79L,IAAI,IAAI,EAAE,CAAC,IAAI3wB,GAAI,IAAID,GAAI,IAAIE,MAAO,MAAM,KAAK,EAAE35I,EAAE68P,GAAGpyF,GAAGC,GAAGw9L,IAAG,GAAG79L,IAAI,IAAI,EAAE,CAAC,IAAI5wB,GAAI,IAAIE,GAAI,IAAID,MAAQ,IAAInsJ,EAAE,IAAIskK,GAAI7xJ,GAAGzS,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAASkU,EAAEurK,GAAGC,GAAIv8K,GAAG,KAAKrD,EAAEuxB,EAAErxB,OAAO,IAAIF,EAAEoU,EAAE6pW,GAAGj+W,EAAEgC,EAAEA,EAAEyD,IAAI,OAAe,GAAZzF,EAAEuxB,EAAErxB,OAAkBy/K,GAAG0pB,GAAIrpM,EAAEA,EAAEuxB,EAAErxB,OAAO,GAAG,KAAoB,GAAZF,EAAEuxB,EAAErxB,OApB9b,SAAa8B,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAM+6B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAI9S,EAAEkD,EAAE4Q,EAAEtB,EAAIuB,EAAI9C,EAAE5N,EAAkI,OAA1HoP,EAAE3S,EAAE86B,EAAE9nB,EAAEd,EAAE4oB,EAAEr3B,EAAEkP,IAAIk/Q,MAAMG,MAAMr/Q,GAAGu/Q,IAAqBl0R,EAAE2U,GAAGo/Q,KAAKp/Q,GAAGs/Q,IAAI/xR,EAAE8S,GAAG++Q,KAAK/+Q,GAAGi/Q,IAAI7/Q,EAAEO,GAAGo/Q,KAAKp/Q,GAAGq/Q,IAAI5uR,EAAE4P,GAAG++Q,KAAK/+Q,GAAGg/Q,KAAOvuR,GAAtFuP,GAAGg/Q,KAAKh/Q,GAAGk/Q,IAA6Gl0R,GAAGkC,EAAUF,EAAE86B,GAAGm3P,IAAIjyR,EAAEkS,EAAUE,GAAGhP,GAAMuP,GAAGo/Q,KAAKj+Q,EAAE9T,EAAEqB,EAAE6Q,IAAO4B,EAAE5B,EAAE7Q,EAAErB,GAAKgU,EAAEub,EAAEnd,EAAEmd,EAAEuL,EAAEpoB,EAAEoB,EAAEvO,EAAExF,EAAE+6B,EAAuB7mB,EAAnBg/H,EAAK3/H,KAAKugB,IAAI7f,EAAEtB,GAAOugI,EAAK3/H,KAAKsgB,IAAIrE,EAAEnd,EAAE0B,EAAEvO,GAApEu1B,GAAyEhnB,EAAE/T,EAAEA,EAAE4S,EAAE4c,EAAEvxB,GAAIiW,EAAM9C,EAAEoe,EAAEvxB,EAAEuxB,EAAE5c,EAAEpP,EAAElC,EAAEtB,EAAEA,EAAE4S,EAA4EmoB,IAAxEm4G,EAAK3/H,KAAKugB,IAAI1iB,EAAE5N,GAAO0vI,EAAK3/H,KAAKsgB,IAAIrE,EAAEvxB,EAAEqD,EAAEtB,KAAKsB,EAAEkE,EAAExF,EAAE+6B,EAAEvL,EAAEnd,GAAmBpS,EAAE86B,GAAGi3P,IAAI/xR,EAAEkS,EAAElS,EAAE86B,GAAGk3P,IAAIhyR,EAAEkS,GAASlS,EAA9TA,EAAE86B,GAAGo3P,IAAIlyR,EAAEkS,CAAoT,CAoB/DgqW,EAAKz+J,GAAI,EAAEz/M,EAAEuxB,EAAErxB,QAAQy/K,GAAG3/K,EAAEuxB,EAAE,GAAG,OAAOkuL,GAAI,EAAEz/M,EAAEuxB,EAAErxB,QAAQy/K,GAAG3/K,EAAEuxB,EAAE,GAAG,MAAM5c,EAAEmoB,GAAU,IAAI,CAC1iB,SAAS8xP,IAAI5sR,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAmB,IAAjBywM,GAAIpjN,EAAEA,EAAE,IAAIu5I,IAAShqH,EAAE,IAAIo2I,GAAI3lK,EAAEA,GAAGuvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAKxvB,EAAE86N,GAAI5U,GAAItoC,GAAG39K,EAAEkS,EAAE,IAAIqd,GAAGouJ,GAAGzrK,EAAEA,EAAE,IAAIqd,GAAMm9P,KAAK/5Q,EAAEgrK,GAAG39K,EAAEkS,EAAE,IAAIA,EAAE4oB,EAAE6iJ,GAAGzrK,EAAEA,EAAE,IAAIA,EAAK+gI,EAAK3/H,KAAKskB,IAAI73B,EAAEC,IAAIizI,EAAK3/H,KAAKskB,IAAI73B,EAAEmS,IAAInS,EAAEmS,EAAE,EAAE4oB,EAAE/6B,EAAE+6B,EAAE96B,EAAE2S,EAAE5S,GAAG+6B,EAAE/6B,EAAE4S,EAAE5S,EAAE4S,EAAE3S,GAAGylO,GAAI1lO,EAAEkzI,EAAK3/H,KAAKugB,IAAIlhB,EAAE4c,GAAGuL,EAAEvL,EAAEuL,EAAE5oB,GAAG4oB,EAAEvL,GAAG5c,EAAE4c,EAAE5c,EAAET,OAAUnS,EAAEC,EAAE,EAAE86B,EAAEvL,EAAEuL,EAAE5oB,EAAES,EAAE4c,GAAGuL,EAAEvL,EAAE5c,EAAE4c,EAAE5c,EAAET,GAAGuzN,GAAI1lO,EAAEkzI,EAAK3/H,KAAKugB,IAAIlhB,EAAE5S,GAAG+6B,EAAE/6B,EAAE+6B,EAAE96B,GAAG86B,EAAE/6B,GAAG4S,EAAE5S,EAAE4S,EAAE3S,OAAWylO,GAAI1lO,EAAEgyW,IAAIp0L,GAAG39K,EAAEkS,EAAE,IAAIyrK,GAAGzrK,EAAEA,EAAE,MAAM3M,EAAE0tI,EAAK3/H,KAAKuc,KAAK9vB,EAAEC,EAAED,EAAEC,EAAED,EAAEmS,EAAEnS,EAAEmS,GAAoBuzN,GAAI1lO,EAArBwF,EAAE+oU,IAAI3hD,IAAIz6Q,EAAE3M,EAAExF,IAAY2sO,GAAI/uD,GAAGzrK,EAAEA,EAAE,IAAInS,GAAGqjN,GAAIlxM,EAAElS,EAAE,IAAIgoK,GAAIjoK,IAAI49K,GAAGgvG,IAAIz6Q,EAAE,IAAIqtQ,GAAIoN,IAAIF,IAAIv6Q,EAAG,CAE9iB,SAASm1M,IAAIrnN,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE,GAAGpS,EAAEmkT,KAAe,GAATnmT,EAAEgC,EAAEokT,KAAQpkT,EAAEhC,EAAE,EAAE,CAAkD,GAAjDkU,EAAE,IAAIkoM,GAAIp6M,EAAEhC,EAAEgC,EAAE2S,GAASmoB,GAANvL,EAAEvvB,EAAEhC,GAAM,IAAI,KAAK,IAAIqqL,GAAI94J,GAAMvvB,EAAE6sB,KAAM,IAAI9sB,EAAE,EAAEA,EAAEC,EAAEhC,IAAI+B,EAAG4S,EAAE3S,EAAE2S,EAAE5S,GAAG+6B,EAAE96B,EAAE8sB,GAAGna,EAAEmoB,GAAgE,GAA5D41O,GAAI1wQ,GAAGuF,EAAK,GAAHgqB,EAAKvvB,EAAEskT,GAAG,EAAEj4H,GAAIn6K,EAAE,GAAG,KAAK,EAAElU,GAAGgC,EAAEskT,GAAG,EAAEpyS,EAAE,MAAM,EAAElU,GAAMgC,EAAE+mV,KAAK,CAAC,IAAIhnV,EAAE,IAAI4wN,GAAIz+M,GAAGnS,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAOnkJ,EAAE96B,EAAEmoV,GAAG7wB,IAAIv3T,GAAG+6B,GAAOA,GAAgBA,EAAEwjM,GAAG/4N,GAAGu1B,EAAEkxJ,MAAvBhsL,EAAEu6P,GAAGh1P,EAAuB,MAAUu1B,GAAgBA,EAAEwjM,GAAG/4N,GAAGu1B,EAAEkxJ,MAAvBhsL,EAAEu6P,GAAGh1P,EAAwB,MAAMmrQ,GAAI1wQ,GAAGA,EAAEu6P,GAAGv6P,EAAEskT,GAAG,GAAGr9F,KAAM+Y,KAAK,MAAM,EAAEhiO,SAAU,GAAGgC,EAAE+mV,KAAM,GAAG/mV,EAAEhC,EAAE,EAAE,CAA4C,IAA3CyF,EAAEzD,EAAE2S,EAAEP,EAAEpS,EAAEhC,EAAE0yQ,GAAI1wQ,GAAG86B,EAAE1oB,EAAE,IAAI,KAAK,IAAIi2K,GAAIj2K,GAAOrS,EAAE,EAAEA,EAAEqS,IAAIrS,EAAG4S,EAAElP,EAAE1D,GAAG+6B,EAAE96B,EAAEmoV,GAAGx1U,EAAEmoB,GAAKA,GAAGA,EAAEkxJ,IAAI,MAAM0kF,GAAI1wQ,QAAS0wQ,GAAI1wQ,EAAG,CAC/iB,SAASm8W,IAAIn8W,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAI2R,EAAmE,IAAjEs9R,GAAIhsS,MAAMirB,IAAIm+N,KAAMC,KAAKhmE,GAAIrjL,KAAKoO,EAAE1S,GAAG2nL,GAAIrjL,KAAKf,EAAEvD,GAAGqB,EAAEi1K,IAAIlkK,EAAEmkK,IAAQ5jK,EAAET,EAAElS,EAAE2hP,KAAKhmC,KAAKhpM,EAAE4oM,MAAOh2M,EAAEo4K,GAAGhrK,EAAE8oM,KAAK,IAAIh4M,EAAEk6K,GAAGp4K,EAAEvF,EAAE,MAAkBhC,GAAb+B,EAAE49K,GAAGp4K,EAAE2M,EAAE,KAAQqd,IAAKvvB,IAAIhC,EAAE+B,EAAEA,GAAU4nL,GAAPlkL,GAAGkqP,IAAQrpP,KAAKoO,EAASpO,KAAKf,EAAZvF,GAAiBgV,GAAGysK,MAAMm/H,KAAK3+G,GAAGjiM,EAAEoU,GAAGkuK,GAAIC,GAAGgoB,IAAIvqM,GAAGgqM,MAAM62G,QAAQnpD,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC71L,EAAEA,EAAE4B,EAAE5B,EAAE4B,EAAE5B,EAAEgC,KAAKkS,EAAE7Q,EAAE4xI,EAAK3/H,KAAKsgB,IAAIvyB,EAAE2R,GAAGZ,EAAE6gI,EAAK3/H,KAAKugB,IAAIzhB,EAAEY,GAAiH,IAAhBqjU,IAAI/xU,MAA/Fm7K,MAAMm/H,KAAK3+G,GAAGjgM,EAAEoS,GAAGkuK,GAAIC,GAAGgoB,IAAIvoM,GAAGgoM,MAAM62G,QAAQnpD,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC7zL,EAAEhC,EAAE4B,EAAEI,EAAEJ,EAAEI,EAAEA,KAAKkS,EAAa7Q,EAAE+Q,GAAO0oB,EAAE5oB,EAAElS,EAAE2hP,KAAKhmC,KAAK7gL,EAAEygL,MAAOh2M,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,IAAI4+H,IAAI/1U,KAAKq5K,GAAGp4K,EAAE2M,EAAE,KAAK5N,KAAKpE,GAAE,CAAK,CAEhjB,SAASk8W,IAAIp8W,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAsB,GAAiB,IAArCA,EAAEk6K,GAAG0pB,GAAIrnM,EAAEoS,EAAE,GAAG,KAASO,EAAE4c,EAAErxB,QAAyB,GAAduF,EAAE8B,EAAEgqB,EAAErxB,OAAW,MAAMg1K,GAAI,IAAI4O,GAAI,8FAA8F,GAAiB,GAAdr+K,EAAEkP,EAAE4c,EAAErxB,OAAU,CAAO,IAAN48B,EAAEw7I,IAAQ/mJ,EAAE,IAAIo2I,GAAIliK,EAAEkP,GAAG4c,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,IAAYxvB,EAAE49K,GAAG4qB,IAAb51L,EAAET,EAAEnS,EAAE/B,GAAcq/J,MAAMg/M,MAAM,KAAKvhV,EAAEm4G,EAAK3/H,KAAKsgB,IAAIkH,EAAEnoB,EAAE/S,EAAEI,EAAED,EAAEmS,GAAG,OAAO,IAAImwB,GAAG0hJ,GAAGjpJ,GAAG,CAAC,GAAiB,GAAdr3B,EAAE8B,EAAEgqB,EAAErxB,OAAU,CAAO,IAANqH,EAAEgxK,IAAQhnJ,EAAE,IAAIo2I,GAAIliK,EAAE8B,GAAGgqB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,IAAYxvB,EAAE49K,GAAG4qB,IAAb51L,EAAET,EAAEqd,EAAEvxB,GAAcq/J,MAAMg/M,MAAM,KAAK92W,EAAE0tI,EAAK3/H,KAAKugB,IAAItuB,EAAEoN,EAAE/S,EAAEI,EAAE2S,EAAEzS,EAAEF,EAAED,EAAEwvB,GAAG,OAAO,IAAI8S,GAAG0hJ,GAAGx+K,GAAG,CAAC,OAAO40J,KAAKA,KAAKgiB,GAAE,CACljB,SAASq5L,IAAIx1W,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,GAAGgC,EAAEshK,KAAK,CAAC,GAAGthK,EAAEhC,EAAE,EAAE,CAAC,IAAGgC,EAAEwjQ,GAAGtxP,GAAmW,OAAO,EAAtW,GAAGlS,EAAEk+L,KAAK,CAAsF,GAAjElgM,GAAT+B,GAAXwF,EAAEo4K,GAAGzrK,EAAE,KAAQk4S,OAAUpqT,EAAEuF,IAAIvF,EAAEs8W,KAAK/2W,EAAE09S,GAAG19S,EAAEu9M,KAAK9iN,EAAEu8W,OAAOv8W,EAAEu+L,MAAM,EAAEh5L,EAAEu9M,MAAM9iN,EAAEssN,MAAStsN,EAAE4iR,OAAO5kR,IAAI+B,GAAKwF,EAAEynT,KAAM,IAAIlyR,EAAE,EAAEA,EAAE96B,EAAEhC,IAAI88B,EAAyB,GAAGigL,GAAvB/6M,EAAEi6T,GAAGt8I,GAAG39K,EAAE2S,EAAEmoB,GAAG,QAAgBigL,GAAG7oM,GAAI,OAAO,EAAO,OAAOlU,CAAC,CAAM,GAAGgC,EAAEs8W,OAAOt8W,EAAEmhT,KAAK,CAAmC,GAAGpmG,GAArCpoM,EAAEgrK,GAAGzrK,EAAE,IAAIivJ,GAAGisF,IAAIzvE,GAAG39K,EAAEkoN,KAAK,SAAiBnN,GAAG/6M,EAAEuF,GAAI,OAAO,EAAU,GAAM,MAAHoN,IAAUgrK,GAAGhrK,EAAE,IAAIi/N,KAAM,OAAO,CAAM,CAAoB,CAAY,GAAXnuO,EAAEwoU,IAAIjsU,EAAEkS,GAAMlS,EAAE4iR,OAAOn/Q,EAAG,IAAIq3B,EAAE,EAAEA,EAAE96B,EAAEhC,IAAI88B,EAAyB,GAAGigL,GAAzBx1M,EAAEvF,EAAEi6T,GAAGt8I,GAAG39K,EAAE2S,EAAEmoB,GAAG,QAAgBigL,GAAG7oM,GAAI,OAAO,EAAO,OAAOzO,CAAC,CAAM,OAAOwoU,IAAIjsU,EAAEkS,EAAG,CACnjB,SAASu7V,IAAIztW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAA4B,IAA1B3R,EAAE,IAAIixK,GAAIt/J,EAAE,IAAIyjK,GAAI9jK,EAAET,EAAEA,EAAM3M,EAAE,EAAEA,EAAEoN,EAAE4c,EAAErxB,OAAOqH,IAAI,CAA8D,IAA7D6M,GAAGqrM,GAAIl4M,EAAEoN,EAAE4c,EAAErxB,QAAQy/K,GAAGhrK,EAAE4c,EAAEhqB,GAAG,KAAKvF,EAAEqB,EAAEkuB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAOrjJ,EAAE,EAAEA,EAAE1oB,EAAEmd,EAAErxB,OAAO48B,KAAKr3B,EAAEzD,EAAEA,EAAEuF,GAAGu1B,IAAK13B,EAAE03B,EAAEr3B,EAAEpC,IAAI49P,MAAMi4B,OAAO71R,EAAEkuB,EAAEluB,EAAEkuB,EAAErxB,QAAQuF,GAAQ2wO,GAAIz2D,GAAG0pB,GAAIn1L,EAAEA,EAAE3M,GAAG,IAAIvF,EAAE86B,EAAEr3B,GAAGA,EAAE2O,EAAEmd,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGyqE,GAAInlP,EAAE2O,EAAEurK,GAAGA,GAAG0pB,GAAIrnM,EAAEkS,EAAE3M,GAAG,IAAI81M,GAAGvgL,GAAG,KAAK+hM,GAAIl/C,GAAG4qB,IAAI9kM,GAAG45J,MAAMykI,MAAM,MAAM/5F,GAAItkM,EAAEq+R,KAAKxM,MAAMx4D,MAAM,IAAI/8N,EAAE,IAAI4lK,GAAItkK,GAAGtB,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyB4V,EAAEmyV,IAAlB12U,EAAEouJ,GAAGC,GAAI79K,GAAG,KAAaiT,EAAEhT,EAAE65N,GAAG/lN,EAAEd,GAAGA,EAAEhT,EAAE65N,GAAGtqM,EAAEvc,EAAG,CAAC,IAAIhV,EAAEgV,EAAEhT,EAAE2hP,KAAKhmC,KAAK39M,EAAEu9M,MAAO93M,EAAEk6K,GAAG3/K,EAAEy9M,KAAK,IAAIwL,KAAMnC,GAAIrhN,EAAE2O,GAAGmqJ,KAAM0/I,MAAMx4S,EAAEzF,GAAE,EAAKmoT,IAAI1iT,EAAG,CACvjB,SAAS49V,IAAIrhW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAA+F,GAA7FzS,EAAEs8K,GAAG4qB,IAAIvoM,GAAGgoM,MAAMe,MAAM,IAAIhpM,EAAE49K,GAAG0pB,GAAIrnM,EAAEoS,EAAE,GAAG,IAAI/Q,IAAIo+K,MAAMM,KAAK4+E,IAAI5+P,EAAE8mM,KAAKxlM,GAAGwlM,KAAK83D,IAAI5+P,EAAEggL,KAAQpC,GAAG4qB,IAAIr2L,GAAGmrJ,MAAM4nL,MAAM,KAAKhlJ,IAAIq3B,MAAMC,MAAM,CAAuF,GAAtFv5N,EAAEsiL,GAAIC,GAAGgoB,IAAIvoM,EAAEwoM,OAAOp2L,EAAEkuK,GAAIC,GAAGgoB,IAAIvoM,EAAEyoM,OAAO91L,EAAE2tK,GAAIC,GAAGgoB,IAAIvoM,EAAE0oM,QAAOjlM,EAAEk6K,GAAG4qB,IAAIr2L,EAAEqjW,KAAK,KAASt1K,IAAI4I,MAAMC,MAA2B,IAApBv5K,EAAEnd,EAAE0B,EAAE9T,EAAEE,EAAEF,EAAE,EAAED,EAAEH,EAAEI,EAAM86B,EAAE,IAAI6qI,GAAI5lK,EAAE+6B,GAAGA,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,SAASqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAMl7B,EAAEsS,EAAEqd,EAAEhqB,EAAE3F,EAAEI,EAAE8T,EAAEvO,EAAErF,EAAEF,EAAE,EAAEuvB,GAAGhqB,EAAErF,EAAEgS,EAAES,OAAQ,GAAGlP,EAAEw8L,GAAG+I,KAAM,IAAIluK,EAAE,IAAI6qI,GAAI5lK,EAAE+6B,GAAGA,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,SAASqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAMl7B,EAAEI,EAAEhC,EAAEgC,EAAEE,EAAEF,EAAED,EAAEH,EAAEI,GAhwF3e,SAAaA,EAAEkS,GAAG,IAAIqd,EAAEA,EAAE+wJ,GAAIC,GAAGvgL,EAAEA,EAAEgmM,IAAIjmC,MAAMooJ,QAAQC,IAAIpoT,EAAEkS,EAAEqd,EAAE,CAgwF6aitV,CAAI,IAAI50M,IAAK07B,KAAM,IAAIwgD,GAAI5xO,GAAE,GAAM,EAAM,IAAI6pI,MAAO,IAAI4kF,GAAI,KAAK3gO,GAAE,GAAO,CAAC,CAGzjB,SAASy8W,IAAIz8W,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAE,GAAGrB,EAAEmkT,KAAwB,GAAlB9iT,EAAErB,EAAEg4O,KAAKh6O,EAAEgC,EAAEokT,KAAQ/iT,EAAE,EAAmH,GAAhH6Q,EAAE,IAAI+0R,GAAIjnS,EAAE08W,MAAU5hV,GAAJvL,EAAEluB,GAAM,IAAI,KAAK,IAAIgnL,GAAI94J,GAAG8oM,GAAIr4N,EAAEuvB,EAAErd,EAAES,GAAGpN,EAAK,GAAHgqB,EAAKvvB,EAAEskT,GAAG,EAAEj4H,GAAIn6K,EAAE,GAAG,KAAK,EAAElU,GAAGgC,EAAEskT,GAAG,EAAEpyS,EAAE,MAAM,EAAElU,GAAMgC,EAAE+mV,KAAK,CAAC,IAAIhnV,EAAE,IAAIg/K,GAAI7sK,GAAGnS,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAOnkJ,EAAE96B,EAAEmoV,GAAGhpK,IAAIp/K,GAAG+6B,GAAOA,GAAgBA,EAAEwjM,GAAG/4N,GAAGu1B,EAAEkxJ,MAAvBhsL,EAAEu6P,GAAGh1P,EAAuB,MAAUu1B,GAAgBA,EAAEwjM,GAAG/4N,GAAGu1B,EAAEkxJ,MAAvBhsL,EAAEu6P,GAAGh1P,QAA8B8yN,GAAIr4N,EAAEA,EAAEg4O,KAAKh4O,EAAEsyS,MAAMtyS,EAAEu6P,GAAGv6P,EAAEskT,GAAG,GAAGr9F,KAAM+Y,KAAK,MAAM,EAAEhiO,SAAU,GAAGgC,EAAE+mV,KAAe,IAAT1lV,EAAErB,EAAEg4O,MAAU,EAAE,CAAiD,IAAhDv0O,EAAEzD,EAAEsyS,KAAKlgS,EAAE/Q,EAAEg3N,GAAIr4N,EAAEqB,EAAEoC,GAAGq3B,EAAE1oB,EAAE,IAAI,KAAK,IAAIi2K,GAAIj2K,GAAOrS,EAAE,EAAEA,EAAEqS,IAAIrS,EAAG4S,EAAElP,EAAE1D,GAAG+6B,EAAE96B,EAAEmoV,GAAGx1U,EAAEmoB,GAAKA,GAAGA,EAAEkxJ,IAAI,MAAMqsC,GAAIr4N,EAAEA,EAAEg4O,KAAKh4O,EAAEsyS,WAAYj6E,GAAIr4N,EAAEA,EAAEg4O,KAAKh4O,EAAEsyS,KAAM,CAG7jB,SAASqqE,IAAI38W,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAM5T,EAAEkD,EAAE4Q,EAAqK,KAAnKF,EAAE,IAAI6sM,GAAIhjC,GAAG26B,IAAIt4M,GAAG6/J,MAAM40K,MAAM,KAAMz0U,EAAEizI,EAAK3/H,KAAKugB,IAAI/f,EAAE9T,EAAEuvB,EAAErd,EAAEqd,EAAEA,EAAE,GAAGzb,EAAE5B,EAAE+gI,EAAK3/H,KAAKugB,IAAI/f,EAAE5B,EAAEqd,EAAExvB,EAAEwvB,EAAEvvB,EAAE,IAAwB,OAArBuF,EAAEg7K,GAAG+3B,IAAIt4M,EAAEs0U,SAAiBzzK,GAAIt7J,GAAGA,GAAI,MAAKA,EAAE,KAAK9B,EAAE,IAAI6uK,GAAQpyK,EAAE,IAAI6+K,KAAM/+K,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAI/M,IAAGvtL,EAAE,GAAG,KAAKA,EAAEA,IAAIE,EAAEqF,GAAGrF,EAAElC,EAAEihL,MAAuBtsK,EAAE,IAAIsgN,GAApBt1C,GAAGwB,IAAIj/K,GAAG,KAAiBuD,EAAE8rB,EAAE9rB,EAAE8rB,EAAErxB,QAAQyU,EAAuB,OAAnBgrK,GAAG26B,IAAIt4M,EAAE00U,KAAK,KAAc/hU,GAAG,KAAK,EAAEqB,EAjLnX,SAAahU,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAoD,IAAlDmzM,KAAMnC,GAAI9kN,EAAE,IAAI0wJ,IAAKjtJ,EAAE,IAAI8lN,GAAIvpN,EAAE,GAAG8T,EAAE,IAAIw+J,GAAIx3I,EAAE,EAAQr3B,EAAEyO,EAAEzO,EAAE1D,EAAEk/K,MAASqqC,GAAI7lN,EAAEyO,EAAEzO,EAAE1D,EAAEk/K,MAAftsK,EAAqBgrK,GAAGl6K,EAAE1D,EAAEs7M,GAAG53M,EAAE8rB,EAAE9rB,EAAEyO,KAAK,KAAqB,GAAZ4B,EAAEyb,EAAErxB,QAAW0d,GAAIjJ,GAAG83N,GAAI93N,GAAK,EAAFmoB,GAAKz5B,EAAE,IAAIq0R,GAAI5hR,GAAG1B,EAAEwJ,GAAIjJ,GAAG83N,GAAI93N,GAAG3U,EAAE4+W,IAAIv7W,EAAE6Q,EAAE,IAAI2mK,GAAItpJ,EAAExvB,EAAEwF,EAAE6M,GAAGytK,GAAI69B,GAAIr8M,EAAEkE,GAAGvH,GAAG8V,EAAEyb,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGrjJ,EAAE,EAAEhnB,EAAEyb,EAAEzb,EAAEyb,EAAErxB,QAAQmD,EAAEyS,EAAEyb,EAAEzb,EAAEyb,EAAErxB,QAAQyU,EAAEmoB,EAAElf,GAAIva,GAAGopO,GAAIppO,GAAGua,GAAIjJ,GAAG83N,GAAI93N,KAAQmB,EAAEyb,EAAEzb,EAAEyb,EAAErxB,QAAQyU,EAAEmoB,GAAGlf,GAAIjJ,GAAG83N,GAAI93N,IAAI,OAAOmB,CAAC,CAiLtC+oW,CAAIp5W,EAAEyO,EAAE4B,EAAE9T,EAAE8T,EAAE5B,GAAGE,EAAErS,EAAE8gK,GAAIt7J,GAAK6M,IAAI,MAAM,KAAK,EAAE4B,EA/Gpa,SAAahU,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAA8D,IAA5DqnN,KAAMnC,GAAI9kN,EAAE,IAAIwwJ,IAAK79I,EAAE+vN,GAAG1iO,GAAGJ,EAAE,IAAI0yK,GAAIt/J,EAAE,IAAIs/J,GAAI7uK,EAAE,KAAKzF,EAAE,EAAa,GAAL2U,EAAET,GAAM4oB,EAAE6iJ,GAAQ,GAALhrK,EAAET,EAAK,MAAMo3M,GAAS,GAAL32M,EAAET,GAAMkyN,GAAIzxN,EAAEA,EAAE3S,EAAEA,IAAI,MAASyD,GAAGmY,GAAInY,GAAGgnO,GAAIhnO,GAAG,EAAEmY,GAAIkf,GAAG2vM,GAAI3vM,IAAIr3B,EAAEq3B,EAAEl7B,EAAE2vB,EAAE3vB,EAAE2vB,EAAErxB,QAAQ48B,IAAO98B,GAAG4d,GAAIkf,GAAG2vM,GAAI3vM,GAAG9nB,EAAEuc,EAAEvc,EAAEuc,EAAErxB,QAAQ48B,EAAK9nB,EAAEuc,EAAErxB,OAAO,IAAIF,EAAE4d,GAAInY,GAAGgnO,GAAIhnO,GAAG,GAAQ,GAALkP,EAAET,KAAO4B,EAAE,IAAI4hR,GAAI1iR,GAAG3R,EAAEua,GAAInY,GAAGgnO,GAAIhnO,GAAG2O,EAAEwqW,IAAI9oW,EAAE5B,EAAE,IAAI2mK,GAAItpJ,EAAExvB,EAAEwF,EAAElE,GAAGw+K,GAAI69B,GAAI5pM,EAAEvO,GAAG6M,GAAG3O,EAAEqQ,EAAElU,EAAE2vB,EAAE3vB,EAAE2vB,EAAErxB,QAAQ4V,EAAE9V,EAAE,EAAEgV,EAAEuc,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,KAAc,OAATyqE,GAAIhpP,EAAEoT,GAAUpT,CAAC,CA+GjCk9W,CAAIr5W,EAAEyO,EAAE4B,EAAE9T,EAAE8T,EAAE5B,GAAG7Q,EAAEtB,EAAE8gK,GAAIt7J,GAAKlE,IAAI,MAAM,QAAQ2S,EAItd,SAAahU,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAM5P,EAAIK,EAAEw6K,GAAGgV,IAAGwzD,IAAI,GAAGzmP,EAAEuvB,EAAErxB,OAAO,GAAG,GAAG8U,EAAE,IAAI8+N,GAAI,IAAIrhF,IAAKu1K,IAAIhzT,EAAEhT,GAAGoS,EAAE,EAAEhP,EAAE,IAAIkvK,GAAI,KAAoB,GAAdt/J,EAAEd,EAAEqd,EAAErxB,QAAqD,GAA1CyU,EAAEgrK,GAAiB,GAAd3qK,EAAEd,EAAEqd,EAAErxB,OAAU,KAAKmpM,GAAIr0L,EAAEd,EAAE,GAAG,KAAQE,EAAE,GAAGwJ,GAAIjJ,GAAG83N,GAAI93N,GAAG,EAAElP,EAAE,GAAG,CAAK,IAAJq3B,EAAE,EAAQA,EAAE13B,EAAEmsB,EAAErxB,OAAO,GAAG0d,GAAIjJ,GAAG83N,GAAI93N,GAAG,EAAElP,EAAEq3B,MAAMA,EAAqBhnB,EAAE,IAAI4hR,GAAvB,IAAIvgC,GAAI/xP,EAAE,EAAE03B,EAAE,IAAgBz5B,EAAEua,GAAIjJ,GAAG83N,GAAI93N,GAAG3U,EAAE4+W,IAAI9oW,EAAE5B,EAAE,IAAI2mK,GAAItpJ,EAAExvB,EAAEwF,EAAElE,GAAGw+K,GAAI69B,GAAI5pM,EAAEvO,GAAGvH,GAAG2hR,GAAI+xD,IAAI1+T,EAAEc,IAAgCkyT,IAAIhzT,EAA9B,IAAImiP,GAAI/xP,EAAE03B,EAAE,EAAE13B,EAAEmsB,EAAErxB,SAAiBkF,EAAEmsB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAG/rK,EAAE,EAAE27L,GAAItqM,EAAEA,EAAEvF,OAAO,EAAE,MAA2C,OAArB,GAAd8U,EAAEd,EAAEqd,EAAErxB,OAAU,KAAKmpM,GAAIr0L,EAAEd,EAAE,KAAYo7Q,GAAIt6Q,EAAE,GAAGZ,EAAE,IAAI3O,EAAE2O,GAAG3O,EAAE2O,EAAE,IAAI3O,EAAE2O,IAAIwJ,GAAIjJ,GAAG83N,GAAI93N,KAAKP,EAAEhP,EAAEmsB,EAAEnsB,EAAEmsB,EAAErxB,QAAQyU,EAAG,OAAOvP,CAAC,CAJnH25W,CAAIt5W,EAAEyO,EAAE4B,EAAE9T,EAAE8T,EAAE5B,GAAGlU,EAAE+B,EAAE8gK,GAAIt7J,GAAKvH,IAAoDg/W,IAAIh9W,GAAtCoD,EAAEw5W,IAAb,IAAIlnF,GAAI1hR,GAAW9B,EAAEqd,EAAEzb,EAAE9T,EAAE8T,EAAE5B,EAAEnS,GAAG8gK,GAAIt7J,GAAGA,KAAYvF,EAAEoD,EAAE8O,GAAE,GAAM,EAAK,CAGnkB,SAAS+qW,IAAIj9W,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAU,IAARooB,EAAE,EAAEnoB,EAAE,EAAMP,EAAE,IAAIuzJ,GAAI3lK,EAAEA,GAAGoS,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAASuF,EAAEk6K,GAAGC,GAAIxrK,GAAG,IAAI0oB,EAAEm4G,EAAK3/H,KAAKugB,IAAIiH,EAAEr3B,EAAE1D,EAAEmS,GAAGS,EAAEsgI,EAAK3/H,KAAKugB,IAAIlhB,EAAElP,EAAE1D,EAAEwvB,GAAG,IAAIvxB,EAAE,IAAI2nK,GAAI3lK,EAAEA,GAAGhC,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAQ,CAA8C,OAA7CuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,IAAM2/K,GAAG4qB,IAAI9kM,GAAG45J,MAAMkhG,MAAM,KAAc5rP,GAAG,KAAK,EAAEzS,EAAE,EAAE,MAAM,KAAK,EAAEA,EAAE,EAAE,MAAM,KAAK,EAAEA,EAAE,GAAI,MAAM,QAAgB,IAARH,EAAE,EAAE+T,EAAE,EAAMlU,EAAE,IAAI+lK,GAAIliK,EAAE2O,GAAGxS,EAAEI,EAAEJ,EAAE2vB,EAAEA,EAAErxB,QAAuC,IAA9B8U,EAAE2qK,GAAGC,GAAIh+K,GAAG,KAAM2F,EAAEgqB,EAAErxB,UAAa6B,EAAgB,GAAdiT,EAAEL,EAAE4c,EAAErxB,UAAa4V,EAAU5T,EAARH,EAAE+T,GAAG,EAAK,GAAQA,GAAG/T,EAAE+T,GAAKE,EAAEhU,EAAEuvB,EAAEluB,EAAEoC,EAAEvD,EAAEF,EAAE0S,GAAGsB,EAAEhU,EAAEqB,GAAGnB,EAAEA,EAAE,GAAKwS,GAAK,EAAFC,GAAKzS,EAAE,IAAMA,EAAE,KAAMwS,GAAK,EAAFooB,GAAK,GAAI56B,IAAYwS,GAARnN,EAAE9B,EAAE1D,EAAEmS,KAAQQ,EAAEnN,GAAGnC,EAAEK,EAAE1D,EAAEwvB,EAAE7c,EAAEsB,EAAEhU,EAAEoD,EAAE/B,IAAIqR,EAAEsB,EAAEhU,EAAEoD,EAAE/B,GAAGoC,EAAE7D,EAAEI,EAAEkS,EAAEQ,CAAC,CAAC,CAM3kB,SAASwqW,IAAGl9W,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAO,OAAL+Q,EAAE,GAAgB,GAAVF,EAAEhU,OAAkB8B,EAAEm9W,GAAGj6H,IAAIu6C,KAAK,GAAG,IAAYphE,IAATh7N,EAAEq0U,IAAIxjU,IAASuhD,OAAO,EAAE,GAAG,SAASpyD,EAAEA,EAAEoyD,OAAO,KAAuD,IAAxB9gD,GAA3BtR,EAAEA,EAAE6P,QAAQ,WAAW,KAAQob,QAAQ,OAAuC,IAAxB3Z,EAAEtR,EAAEirB,QAAQ,OAAela,EAAE/Q,EAAEA,EAAE,KAAQ+Q,EAAEsjU,IAAIr0U,EAAEoyD,OAAO9gD,EAAE,IAAItR,EAAEq0U,IAAIr0U,EAAEoyD,OAAO,EAAE9gD,MAAU4c,EAAEluB,EAAEirB,QAAQ,IAAI3Z,GAAGP,EAAE/Q,EAAEoyD,OAAO9gD,EAAE,EAAE4c,GAAG5c,EAAE,IAAItR,EAAEq0U,IAAIr0U,EAAEoyD,OAAO,EAAE9gD,MAAyB,IAArBA,EAAE2sM,GAAIj+M,EAAE+vN,IAAI,QAAa/vN,EAAEA,EAAEoyD,OAAO9gD,EAAE,KAAe,GAAVtR,EAAEnD,QAAWm+N,GAAIh7N,EAAE,yBAAyBA,EAAEo8R,KAAKh6R,EAAE4qN,GAAIj8M,EAAEg/M,IAAI,KAAK7rN,EAAEo3N,GAAIvqN,EAAEg/M,IAAI,IAAI3tN,EAAE,GAAGzF,GAAG,EAAE+B,GAAG,EAAE+6B,EAAEooN,KAAW,GAAJz/O,IAAW,GAAJ8B,IAAOu1B,EAAE1oB,EAAEqhD,OAAO,EAAEluD,GAAGvH,EAAEkzN,GAAG9+M,EAAEqhD,OAAOluD,EAAE,EAAE9B,GAAG8B,EAAE,KAAKxF,EAAEmxN,GAAG9+M,EAAEqhD,OAAOhwD,EAAE,KAAWzD,EAAEm9W,GAAGriV,EAAEz5B,EAAErD,EAAE+B,GAAE,CACllB,SAASutT,IAAGttT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,GAAQ,GAALkU,EAAE4B,GAAW,GAAL5B,EAAEc,GAAW,GAALd,EAAEzO,EAAM,MAAMyvK,GAAI,IAAI+N,GAAI,mBAAmB,GAAQ,GAALjhL,EAAE8T,GAAW,GAAL9T,EAAEgT,GAAW,GAALhT,EAAEyD,EAAwB,OAAlB8rB,IAAIooR,IAAGj4F,GAAG,EAAE,EAAE,IAAWA,GAAG,EAAE,EAAE,GAAG,GAAGxtM,EAAEzO,GAAG2nR,KAAU,GAALl5Q,EAAEc,GAAW,GAALd,EAAE4B,EAAM,OA/kD9L,SAAY9T,EAAEkS,GAAG,OAAGlS,EAAEyD,GAAG2nR,KAAU,GAALprR,EAAEgT,GAAW,GAALhT,EAAE8T,GAAM5B,IAAIylS,IAAGj4F,GAAG,EAAE,EAAE,IAAWD,IAAI09C,KAAKkuB,QAAKn5Q,IAAIylS,IAAGj4F,GAAG1/M,EAAE8T,EAAE9T,EAAEgT,EAAEhT,EAAEyD,IAAWi8M,GAAG,EAAE,EAAE,GAAE,CA+kDwE09J,CAAGp9W,EAAEuvB,GAAuE,GAApEvxB,GAAE,EAASkU,EAAEzO,GAAG,IAAI,IAAGyO,EAAEsrP,GAAGtrP,GAAGlU,GAAGA,GAAE2U,EA7hBjP,SAAY3S,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAQ,OAAY,KAAlBwvB,EAAEvvB,EAAE8T,GAAQyb,EAAE,IAAmC,KAAlBxvB,EAAEC,EAAEgT,GAAQjT,EAAE,IAAmC,KAAlBmS,EAAElS,EAAEyD,GAAQyO,EAAE,IAAuB,GAAHA,GAAS,GAAHnS,GAAS,GAAHwvB,GAA/E,EAAqG,GAAHrd,GAAS,GAAHnS,GAAS,GAAHwvB,EAAa4vQ,GAAI5vQ,GAAS,GAAHrd,GAAS,GAAHnS,GAAS,GAAHwvB,EAAa4vQ,GAAIp/R,GAAG,GAAS,GAAHmS,GAAS,GAAHnS,GAAS,GAAHwvB,EAAa4vQ,GAAIjtR,GAAG,IAAW,CAAC,CA6hB1B0wB,CAAG1wB,GAAG4oB,GAAE,EAAMv1B,GAAE,EAAMxF,GAAE,EAASC,EAAEyD,GAAG2nR,KAAU,GAALprR,EAAEgT,GAAW,GAALhT,EAAE8T,EAAK,CAAe,GAAdvO,GAAE,EAAKu1B,GAAE,GAAY,GAAJnoB,EAA6E,OAArClP,EAAEqsO,IAAG9vO,EAAE2S,GAAG3U,GAAGkvS,GAAGzpS,GAAG8rB,IAAIooR,IAAGj4F,GAAG,EAAE,EAAE,IAAWj8M,EAA7EzD,EAAEy/M,IAAI09C,KAAK+tB,MAAKnrR,GAAE,EAAK/B,GAAGA,CAAqD,MAASgC,EAAEyD,GAAG,IAAI,IAAGq3B,GAAE,EAAK96B,EAAEw9P,GAAGx9P,GAAGD,GAAE,EAAK/B,GAAGA,GAAE,OAAO,GAAJ2U,EAAc8kS,GAAGz3S,EAAE2S,EAAE3U,EAAE88B,EAAEvL,GAAM2tO,IAAGl9P,EAAEkS,GAAG,GAAGqd,IAAOooR,IAAH78Q,EAAM0iO,GAAGx9P,GAAQ0/M,GAAG1/M,EAAE8T,EAAE9T,EAAEgT,EAAEhT,EAAEyD,IAAYi8M,GAAG,EAAE,EAAE,IA7OviB,SAAY1/M,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAInoB,EAAI3U,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAsC,IAAtBL,EAAEi9N,IAAG19N,EAAnBE,EAAEukS,GAAGzkS,GAAGykS,GAAG32S,IAAahC,EAAE0hN,GAAG,EAAE,EAAE,GAASttM,GAAG,KAAK0wT,IAAG9iU,EAAE2S,KAASP,EAAE,GAAIpU,EAAE8V,GAAG,GAAG1B,EAAaA,EAAE,GAAIpU,EAAEgV,GAAG,GAAGZ,EAAE,GAAepU,EAAEyF,GAAG,GAAG2O,EAAE,GAAsB,GAALpS,EAAE8T,GAAW,GAAL9T,EAAEgT,GAAW,GAALhT,EAAEyD,KAAapC,EAAEsR,EAAEK,EAAEc,EAAEnB,EAAElP,EAAEuP,EAAEL,EAAEmB,EAAEnB,EAAElP,EAAEqQ,IAAI,EAAEnB,EAAEK,EAAE3R,IAAI,GAAK,EAAFyS,IAAM,GAAGnB,EAAEmB,EAAEd,IAAI,GAAK,EAAF3R,IAAM,KAAK+Q,EAAkF,OAAhFmd,GAAG29Q,GAAGlvS,GAAM88B,IAAM/6B,GAAG43S,IAAGn6C,GAAGx9P,GAAGuF,IAAIoyS,IAAGrG,GAAGqG,KAAIx6C,KAAKkuB,QAAWssB,IAAGj4F,GAAG1/M,EAAE8T,EAAE9T,EAAEgT,EAAEhT,EAAEyD,IAAWzF,CAAC,CA6OkLq/W,CAAGt9W,EAAEC,EAAE0/M,GAAG1/M,EAAE8T,EAAE9T,EAAEgT,EAAEhT,EAAEyD,GAAGyO,EAAElU,EAAE88B,EAAEv1B,EAAEgqB,EAAE,CACllB,SAAS4/S,IAAInvU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAE,GAAGF,EAAEuF,GAAGvF,EAAEuvB,EAAEA,EAAEvvB,EAAE86B,EAAG,MAAMo4I,GAAI,IAAI4O,GAAI,YAAY9hL,EAAE86B,EAAd,wCAA2D96B,EAAEuvB,EAAEA,IAA+B,IAA3BluB,EAAEs8K,GAAGsL,GAAIjpL,EAAE2S,GAAG,GAAG/S,EAAEkxN,GAAG9wN,EAAE86B,GAAWr3B,EAAE,EAAE2O,GAAR0oB,EAAEz5B,GAAUnD,OAAOuF,EAAE2O,IAAI3O,GAAUqQ,EAAE6pK,GAAGyyC,GAAIpwN,GAAhBD,EAAE+6B,EAAEr3B,IAAgBkP,GAAG,MAAOojK,GAAIn2K,EAAE+9K,GAAGgsI,GAAI3pT,EAAE8T,GAAG,MAAOlU,EAAE2vB,EAAE3vB,EAAE2vB,EAAErxB,QAAQ,KAAgI,IAArHgC,EAAE,IAAIwkM,GAAIhD,GAAIyoB,GAAIgsB,GAAIhsB,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAI3tM,EAAE,KAAK,IAAIyuJ,IAAK,IAAI+f,GAAIl8J,IAAI,IAAIo8I,IAAK,IAAI+f,GAAInuK,IAAIkgN,GAAIlgN,EAAEF,EAAEA,GAAGuvB,EAAE,IAAI+iJ,GAAY3/J,EAAE,EAAE3U,GAARuH,EAAElE,GAAUnD,OAAOyU,EAAE3U,IAAI2U,EAAUi2O,GAAIr5N,EAAE4iR,GAAInyS,EAAE8pP,GAAGnsE,GAAGyyC,GAAIlwN,GAA7BH,EAAEwF,EAAEoN,IAA6BA,GAAG,QAAOK,EAAE2qK,GAAG0pB,GAAIznM,EAAEG,EAAE4S,GAAG,QAAW4c,EAAEA,EAAEA,EAAEA,EAAErxB,QAAQ8U,GAA0D,OAAlD41O,GAAIr5N,EAAE4iR,GAAInyS,EAAE8pP,GAAGnsE,GAAGyyC,GAAIlwN,EAAEmB,EAAEA,EAAEnD,OAAO,GAAGyU,EAAE,GAAG,OAAc4c,CAAC,CAEllB,SAAS4iV,IAAInyW,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,KAAGgC,EAAE2S,EAAET,EAAE4oB,GAAG5oB,EAAES,EAAE3S,EAAE86B,GAAlB,CAAoC,IAARvL,EAAE,EAAExvB,EAAE,EAAM4S,EAAE3S,EAAEuD,EAAEvD,EAAE2hP,KAAKhmC,KAAKhpM,EAAE4oM,MAAOh2M,EAAEo4K,GAAGhrK,EAAE8oM,KAAK,IAAImiG,GAAIloD,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACtuL,EAAEvH,EAAE4B,EAAE2F,EAAE3F,EAAE2F,EAAEvF,KAAKkS,EAAEA,EAAES,EAAET,EAAE4oB,MAAMvL,EAAE,IAAI9rB,EAAEzD,EAAE0S,EAAE1S,EAAE2hP,KAAKhmC,KAAKl4M,EAAE83M,MAAOh2M,EAAEo4K,GAAGl6K,EAAEg4M,KAAK,IAAImiG,GAAIloD,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACtuL,EAAEvH,EAAE4B,EAAE2F,EAAE3F,EAAE2F,EAAEvF,KAAKkS,EAAEA,EAAES,EAAET,EAAE4oB,MAAMvL,EAAE,IAAIvxB,EAAEkU,EAAE3O,EAAEvD,EAAE2hP,KAAKhmC,KAAK39M,EAAEu9M,MAAOh2M,EAAEo4K,GAAG3/K,EAAEy9M,KAAK,IAAImiG,GAAIloD,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACtuL,EAAEvH,EAAE4B,EAAE2F,EAAE3F,EAAE2F,EAAEvF,KAAKkS,EAAElS,EAAE2S,EAAE3S,EAAE86B,MAAM/6B,EAAE,IAAI+6B,EAAE5oB,EAAEQ,EAAE1S,EAAE2hP,KAAKhmC,KAAK7gL,EAAEygL,MAAOh2M,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,IAAImiG,GAAIloD,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACtuL,EAAEvH,EAAE4B,EAAE2F,EAAE3F,EAAE2F,EAAEvF,KAAKkS,EAAElS,EAAE2S,EAAE3S,EAAE86B,MAAM/6B,EAAKwvB,EAAExvB,EAAG,IAAI8xQ,GAAI7xQ,EAAEkS,EAAEnS,EAAEwvB,GAAWxvB,EAAEwvB,EAAG,IAAIsiP,GAAI3/P,EAAElS,EAAEuvB,EAAExvB,IAAQ,IAAI8xQ,GAAI3/P,EAAElS,EAAE,GAAG,IAAI6xQ,GAAI7xQ,EAAEkS,EAAE,GAAphB,CAAuhB,CACtlB,SAASu/U,IAAIzxV,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAA4G,IAA1GzB,EAAEF,EAAEqd,EAAEhqB,EAAEu+M,GAAI9jN,EAAEuF,GAAGuO,EAAEw2M,GAAIuI,GAAI5M,GAAIrC,GAAI5jN,EAAEuF,IAAIvF,EAAED,EAAEC,EAAEA,EAAEA,EAAEuvB,EAAEvvB,EAAEkS,IAAI,IAAKqd,EAAEhqB,EAAEvF,EAAE8T,EAAE9T,EAAED,EAAEwF,EAAE2M,EAAE4B,EAAE5B,EAAQqd,GAAN5c,EAAET,EAAElS,GAAMuvB,EAAEA,EAAExvB,EAAE4S,EAAE5S,EAAEA,EAAM/B,EAAE,IAAI2nK,GAAIvzJ,GAAGpU,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAQ,CAAsE,OAA9C0B,EAAE2vB,GAARvc,GAAjBvP,EAAEk6K,GAAGC,GAAI5/K,GAAG,MAASkU,GAAQlS,EAAEgU,EAAEjU,EAAEiT,EAAEd,EAAEhS,EAAEi4L,GAAGv4L,EAAEI,EAAEA,GAAG0S,EAAEylL,GAAGnkL,EAAEhU,EAAEkS,IAAG4oB,EAAEr3B,EAAEzD,GAAW2S,GAAG,KAAK,EAAKgyQ,MAAHtjR,EAASwjR,IAAK,MAAM,KAAK,EAAKF,MAAHtjR,EAASyjR,IAAK,MAAM,KAAK,EAAKH,MAAHtjR,EAAS0jR,IAAK,MAAM,QAAWJ,MAAHtjR,EAAS2jR,IAASlqP,EAAE96B,GAAG6T,EAAEskL,IAAInkL,EAAEvQ,EAAE8rB,GAAGvvB,EAAEkS,GAAG6jK,GAAI/1K,EAAE86B,EAAE,IAAIylM,GAAIl/N,EAAE22M,GAAItlM,GAAGslM,GAAInkM,KAAKinB,IAAIqqP,MAAMK,KAAK8wB,GAAIt2S,EAAE,EAAE0S,EAAExS,EAAE2T,GAAGyiS,GAAIt2S,EAAEE,EAAEwS,EAAE1S,EAAED,EAAE,EAAE8T,KAAQzQ,EAAE+0L,IAAIv4L,EAAE6D,EAAE8rB,GAAGvvB,EAAEA,GAAG+1K,GAAI/1K,EAAE86B,EAAE,IAAIylM,GAAIl/N,EAAE22M,GAAI93M,GAAG83M,GAAI50M,KAAK03B,IAAIqqP,MAAME,KAAKixB,GAAIt2S,EAAEE,EAAE,EAAEkD,EAAEsP,GAAG4jS,GAAIt2S,EAAEE,EAAEwS,EAAEtP,EAAEpD,EAAEuvB,EAAE,GAAG,CAAC,CAIvlB,SAAS+tV,IAAIprW,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAIr3B,EAAEzF,EAAEoU,EAAE/Q,EAAI2R,EAAmD,GAAjC4kL,GAAhBxlL,EAAEmd,EAAErxB,OAAO,EAAWqxB,EAAErxB,QAA+B,KAA1CF,EAAmBuxB,EAAElQ,WAAWjN,KAA+B,IAAjB3O,EAAE67M,GAAI/vL,EAAE6hM,IAAI,OAAW,EAAoD,OAAjDt2L,EAhnD/H,SAAa96B,EAAEkS,GAAG,IAAIqd,EAAkB,GAAGs6J,GAAnBt6J,EAAEulQ,IAAI90R,EAAEgoN,KAAK91M,GAAW,IAAK,OAAOyrK,GAAGpuJ,EAAE,IAAI,MAAM2jJ,GAAI,IAAI2O,GAAI4iF,IAAIvyP,EAAE,8BAA8B,CAgnDM4Z,CAAI5Z,EAAEqd,EAAEkkC,OAAO,EAAEhwD,EAAE,IA+KpJ,SAAazD,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAgC,IAA9BhV,EAAE,IAAIs0K,GAAIx+J,EAAE5B,EAAEhU,OAAOyU,EAAEukS,GAAI3nR,GAAOnd,EAAE,EAAEA,EAAE0B,IAAI1B,EAAE,CAAoE,OAAnE/Q,EAAEktN,GAAIr8M,EAAEk/M,IAAI,IAAIh/M,GAAqC0oB,GAATv1B,EAAE6rS,GAA3BrxS,EAAEujT,GAAI3wS,EAAET,EAAEuhD,OAAOrhD,EAAE/Q,EAAE+Q,MAAiB2pN,KAAKC,KAAY9iC,GAAIhnL,IAAI7Q,IAAI,KAAK,GAAIoC,EAAE0tN,GAAIj/M,EAAE,KAAK7Q,GAAG00K,GAAI/3K,EAAE,IAAI47M,GAAI75M,EAAEqnP,GAAIl1O,EAAEuhD,OAAOpyD,EAAEoC,EAAEpC,GAAGy5B,EAAEv1B,KAAK6M,EAAE3O,EAAE,EAAE,MAAM,KAAK,GAAIA,EAAE0tN,GAAIj/M,EAAE,KAAK7Q,GAAG00K,GAAI/3K,EAAE,IAAI47M,GAAI75M,EAAEqnP,GAAIl1O,EAAEuhD,OAAOpyD,EAAEoC,EAAEpC,GAAGy5B,EAAEv1B,KAAK6M,EAAE3O,EAAE,EAAE,MAAM,KAAK,GAAcsyK,GAAI/3K,EAAE,IAAI47M,GAAI75M,EAAxBiT,EAAE,IAAIs/J,KAAwB1yK,EAAE,OAAO,CAAC,OAAOs5L,GAAIhnL,IAAI7Q,IAAI,KAAK,GAAIoC,EAAE0tN,GAAIj/M,EAAE,KAAK7Q,GAAG00K,GAAI/iK,EAAEo0O,GAAIl1O,EAAEuhD,OAAOpyD,EAAEoC,EAAEpC,GAAGy5B,EAAEv1B,IAAIlE,EAAEoC,EAAE,EAAE,MAAM,KAAK,GAAIA,EAAE0tN,GAAIj/M,EAAE,KAAK7Q,GAAG00K,GAAI/iK,EAAEo0O,GAAIl1O,EAAEuhD,OAAOpyD,EAAEoC,EAAEpC,GAAGy5B,EAAEv1B,IAAIlE,EAAEoC,EAAE,EAAE,MAAM,KAAK,IAAS,KAAFpC,EAAK6Q,EAAEoa,QAAQ,MAAMjrB,IAAIA,EAA6B,MAAM6xK,GAAI,IAAIiK,GAAGogM,MAA3CvqW,EAAEuc,EAAEvc,EAAEuc,EAAErxB,QAAQ,KAAiCmD,GAAG,EAAS,KAAGA,EAAEyS,GAAiI,MAA9H,OAAO8jL,GAAIv2L,EAAE6Q,EAAEhU,QAAQgU,EAAEmN,WAAWhe,IAAI,KAAK,GAAI,MAAM,KAAK,GAAI,MAAMzB,EAAE,QAAS,MAAMszK,GAAI,IAAIiK,GAAG,qBAAkC,CAAC/qK,EAAE/Q,EAAE,EAAE,MAAM,KAAK,IAAS,KAAFA,EAAK6Q,EAAEoa,QAAQ,MAAMjrB,IAAIA,EAA+B,MAAM6xK,GAAI,IAAIiK,GAAGogM,MAA7CxnM,GAAI/3K,EAAE,IAAI47M,GAAI75M,EAAE,OAAmCqS,EAAE/Q,EAAE,EAAS,KAAG+Q,EAAE0B,GAAkF,MAA/D,GAAhB8jL,GAAIxlL,EAAEF,EAAEhU,QAA4B,IAAjBgU,EAAEmN,WAAWjN,GAAQ,MAAM8gK,GAAI,IAAIiK,GAAG,eAA4B,CAAC,OA7kBn+B,SAAan9K,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAI2R,EAAEA,EAAEd,EAAEqd,EAAErxB,OAAmE0B,EAAE,IAAIk7B,EAArD6iJ,IAAVvrK,EAAEpS,EAAE22N,GAAGpnM,KAAS,EAAEvvB,EAAEkI,GAAGkK,GAAE,GAAM,GAAMwY,IAAI5qB,EAAEuvB,GAAE,GAAO,IAAeosL,KAAK7gL,EAAEygL,MAAM,CAAiB,IAAhBh2M,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,IAAQp6M,EAAE,EAAEA,EAAE2R,IAAI3R,EAAyE,GAAnEo8M,GAAIp8M,EAAE6Q,EAAEqd,EAAErxB,QAAuBF,GAApC2U,EAAqBgrK,GAAGzrK,EAAEqd,EAAEluB,GAAG,KAASy5M,KAAKr3M,EAAEkP,EAAEu1M,KAAKnoN,EAAEwF,EAAEwvW,GAAGtxW,GAAE,GAAa,MAAHzF,EAAW,MAAH+B,GAASuyL,GAAGt0L,EAAE+B,GAAI,SAASH,EAAG,OAAO2F,CAAC,CAAC,OAAO,IAAI,CA6kByrBi4W,CAAIx9W,EAAEhC,EAAEuxB,EAAE,CA/K7zBq3C,CAAI10D,EAAjCqd,EAAEkkC,OAAOhwD,EAAE,EAAE2O,GAAG3O,EAAE,IAAmBq3B,OAAQ,CAAyC,GAAxC/6B,GAAG,EAAO,MAAL09W,MAAYA,IAAI,IAAIxqW,OAAO,QAAWwqW,IAAInvW,KAAKm1F,OAAOgjH,aAAazoN,MAAK+B,EAAE48N,GAAIptM,EAAE6hM,IAAI,IAAIh/M,EAAE,KAAS,EAAE,CAAC7M,EAAEo4K,GAAGmyF,GAAI59P,EAAE2iR,GAAI3iR,EAAEqd,EAAEkkC,OAAO,EAAE1zD,EAAE,KAAI,GAAO,IAAIsB,EAAE,EAAE,IAAIA,EAAE22L,IAAIzoK,EAAEkkC,OAAO1zD,EAAE,GAAGk4L,IAAIC,IAAI,CAAC,MAAMl4L,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAAgBkzK,GAAI,IAAIo3G,GAAhBtqR,MAAmCkzK,GAAIlzK,IAAE,CAAC,GAAGqB,EAAEkE,EAAE05K,KAA4C,OAA5B4K,GAAV72K,EAAEzN,EAAE81M,GAAGh6M,GAAQ,MAAM2R,EAAE2qK,GAAG3qK,EAAE,IAAI8nM,MAAan9B,GAAG3qK,EAAE,GAAI,CAAE,GAAGjT,EAAE,EAAG,OAAO49K,GAAGmyF,GAAI59P,EAAE2iR,GAAI3iR,EAAEqd,EAAEkkC,OAAO,KAAI,GAAO,GAAI,CAAC,OAAO,IAAI,CACxlB,SAASkjM,IAAI32P,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAI3U,EAAIqD,EAAEyS,EAAE,GAAGo4Q,IAAIh6Q,EAAEqd,IAAI,EAAG,OAAOA,EAAE,OAAO4wN,GAAIqW,GAAIx2P,EAAEuvB,KAAK,KAAK,EAAG,GAAG8sM,GAAI,GAAGwlF,GAAI7hT,EAAEuvB,EAAEmlN,MAAM31C,MAAM,CAAgD,GAAf19L,EAAEo1P,IAAIz2P,EAAEkS,EAAxClU,EAAE2kP,GAAI6T,GAAIx2P,EAAEuvB,IAAMgzN,GAAIiU,GAAIx2P,EAAEuvB,KAAyB,OAAOluB,EAAa,IAAIsR,EAAE,EAAEmB,GAAnBvO,EAAEkpV,IAAIzuV,EAAEkS,IAAe+sK,KAAKtsK,EAAEmB,IAAInB,EAAqB,GAAG8iV,IAAI1iP,GAAIyjJ,GAAIx2P,EAAjCqB,EAAEs8K,GAAGp4K,EAAE81M,GAAG1oM,GAAG,OAA0B3U,GAAI,OAAOqD,CAAG,CAAC,OAAO,KAAK,KAAK,EAAG,GAAGg7N,GAAI,GAAGwlF,GAAI7hT,EAAEuvB,EAAEmlN,MAAM31C,MAAM,CAAC,IAAIh/L,EAAEwvB,EAAExvB,EAAEA,EAAEk2P,GAAIO,GAAIx2P,EAAED,IAAoD,GAAfsB,EAAEw1P,IAAI72P,EAAEkS,EAAtCywO,GAAI6T,GAAIx2P,EAAED,IAAMwiP,GAAIiU,GAAIx2P,EAAED,KAAyB,OAAOsB,EAAmB,GAAhBrD,EAAE2kP,GAAI6T,GAAIx2P,EAAEuvB,IAAO8sM,GAAI1sC,IAAI3xL,GAAI,OAAOytU,IAAIzrU,EAAEkS,GAAmB,IAAIS,EAAE,EAAEmB,GAAnBgnB,EAAE4zT,IAAI1uV,EAAEkS,IAAe+sK,KAAKtsK,EAAEmB,IAAInB,EAAqB,GAAG8iV,IAAI1iP,GAAIyjJ,GAAIx2P,EAAjCqB,EAAEs8K,GAAG7iJ,EAAEugL,GAAG1oM,GAAG,OAA0B3U,GAAI,OAAOqD,CAAI,CAAC,OAAO,KAAK,QAAS,OAAO,KAAM,CAGxlB,SAASqlS,MAAMA,IAAIhyJ,EAAIgpO,IAAI,IAAIhtM,GAAI2yH,KAAK,IAAI3yH,GAAI6yH,KAAK,IAAI3kF,GAAI,QAAQ5G,GAAI,IAAIg7J,IAAI,IAAIp0J,GAAI,MAAM5G,GAAI,IAAIi7J,IAAI,IAAIr0J,GAAI0yC,IAAIt5C,GAAI,IAAI0lI,IAAI,IAAI9+H,GAAI,QAAQ8O,MAAM,IAAQwyI,IAAI,IAAIthJ,GAAI,eAAe,MAAMqhJ,IAAI,IAAIrhJ,GAAI,gBAAgB,MAAMwhJ,IAAI,IAAIxhJ,GAAI,cAAc,MAAMuhJ,IAAI,IAAIvhJ,GAAI,eAAe,MAAM++J,IAAI,IAAI/+J,GAAI,SAAQ,GAAO,IAAIA,GAAI,QAAQ5G,GAAI,IAAI2uF,IAAI,IAAI/nF,GAAI,kBAAkB,IAAInlC,IAAK+/J,IAAI,IAAI56H,GAAI,QAAQ5G,GAAI,IAAIyhI,IAAI,IAAI76H,GAAI,QAAQ5G,GAAI,IAAI2mJ,IAAI,IAAI//I,GAAI,cAAc,GAAGm0J,IAAI,IAAIn0J,GAAI,KAAK,IAAIg/J,IAAI,IAAIh/J,GAAI,WAAW5G,GAAI,IAAI+tJ,IAAI,IAAInnJ,GAAI,SAAS,GAAGonJ,IAAI,IAAIpnJ,GAAI,WAAW,GAAG80I,IAAI,IAAIhjL,GAAI+yH,KAAKo6E,IAAI,IAAIntM,GAAIizH,IAAI,CAC3lB,SAASm6E,IAAI99W,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAgB,IAAZyB,EAAEkuB,EAAErd,EAAEqd,EAAEA,EAAEvvB,EAAMJ,EAAE,IAAI+lK,GAAIzzJ,EAAEE,GAAGxS,EAAEI,EAAEJ,EAAE2vB,EAAEA,EAAErxB,QAAQ,CAAyL,GAAxL8U,EAAE2qK,GAAGC,GAAIh+K,GAAG,IAAI2F,EAAEmwP,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC7gL,EAAEhV,EAAE4B,EAAEoT,EAAEpT,EAAEoT,EAAEhT,KAAQkS,EAAE7Q,IAAI49P,MAAMi4B,OAAMzzR,EAAEk6K,GAAG4qB,IAAIv1L,GAAGg1L,MAAM0/C,MAAM,IAAIniP,EAAEvF,EAAE01P,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACpwL,EAAEzF,EAAE4B,EAAE6D,EAAE7D,EAAE6D,EAAEzD,KAAKA,EAAEkS,EAAEtS,EAAEI,EAAEuF,EAAEvF,GAAE2S,EAAE,IAAIsiM,GAAI,EAAE1vM,EAAE2M,GAAMc,EAAEZ,IAAIqtK,MAAMC,KAAM/sK,EAAE3S,EAAEqB,MAAO,IAAG2R,EAAEZ,GAAGwtK,IAAgB,SAAXjtK,EAAE3S,EAAEuvB,CAAe,CAA0B,KAAvB0jH,EAAK3/H,KAAKskB,IAAIryB,EAAEvF,EAAE2S,EAAE3S,IAASD,IAAImpU,IAAIh3T,GAA2C,IAA9B4oB,EAAE9nB,EAAEL,EAAE4c,EAAErxB,OAAO8U,EAAEzN,EAAEgqB,EAAErxB,OAAO,EAAMkU,EAAE,IAAIo/P,GAAIx+P,EAAEd,GAAG8yM,GAAI5yM,EAAEpS,IAAIglN,GAAI5yM,EAAEF,IAAyC4B,GAApC9V,EAAE2/K,GAAGqnC,GAAI5yM,EAAEpS,GAAG49K,GAAIxrK,EAAEpS,GAAG49K,GAAIxrK,EAAEF,GAAG,KAAQqd,GAAGvc,EAAEhV,EAAE+B,EAAE/B,EAAEuxB,EAAE0jH,EAAK3/H,KAAKskB,IAAI89N,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC//K,EAAE9V,EAAE4B,EAAEkU,EAAElU,EAAEkU,EAAE9T,KAAKkS,EAAES,EAAET,GAAG,GAAG6pV,IAAI/7V,EAAEhC,EAAE2U,EAAEmoB,EAAE9nB,EAAG,CAAC,CAE5lB,SAAS0mP,MAAMA,IAAIhlH,EAAImmN,KAAKhrK,KAAMC,KAAK59K,EAAEwoV,IAAI/8K,GAAG0O,GAAIC,GAAIwD,IAAI59K,GAAG,GAAG,IAAIyoV,IAAIh9K,GAAG0O,GAAIC,GAAIwD,IAAI59K,GAAG,GAAG,IAAI0oV,IAAIj9K,GAAG0O,GAAIC,GAAIwD,IAAI59K,GAAG,GAAG,IAAI6rW,IAAIjuL,IAAI/7J,GAAG4pJ,GAAG0O,GAAIC,GAAIwD,IAAI/7J,IAAI,GAAG,IAAI4pJ,GAAG0O,GAAIC,GAAIwD,IAAI/7J,IAAI,GAAG,IAAIiqV,IAAIluL,IAAImB,GAAG0oE,IAAIh8E,GAAG0O,GAAIC,GAAIwD,IAAImB,IAAI,GAAG,IAAItT,GAAG0O,GAAIC,GAAIwD,IAAImB,IAAI,GAAG,IAAItT,GAAG0O,GAAIC,GAAIwD,IAAImB,IAAI,GAAG,IAAIgtL,IAAInuL,IAAIoB,GAAGupK,IAAI98K,GAAG0O,GAAIC,GAAIwD,IAAIoB,IAAI,GAAG,IAAIvT,GAAG0O,GAAIC,GAAIwD,IAAIoB,IAAI,GAAG,IAAIvT,GAAG0O,GAAIC,GAAIwD,IAAIoB,IAAI,GAAG,IAAIgtL,IAAIvgM,GAAG0O,GAAIC,GAAIwD,IAAIoB,IAAI,GAAG,IAAIitL,IAAIxgM,GAAG0O,GAAIC,GAAIwD,IAAIoB,IAAI,GAAG,IAAIktL,IAAIzgM,GAAG0O,GAAIC,GAAIwD,IAAIoB,IAAI,GAAG,IAAImtL,IAAI1gM,GAAG0O,GAAIC,GAAIwD,IAAIoB,IAAI,GAAG,IAAIotL,IAAIxuL,IAAI19K,EAAEmsW,IAAIzuL,IAAIzuL,EAAEm9W,IAAI1uL,IAAI97K,EAAEyqW,IAAI3uL,IAAIvsL,EAAEm7W,IAAI5uL,IAAIlrJ,EAAE+5U,IAAI7uL,IAAIlmK,EAAEg1V,IAAI9uL,IAAIjtJ,EAAEg8U,IAAI/uL,IAAIqB,EAAE2tL,IAAIhvL,IAAInD,EAAEoyL,IAAIjvL,IAAIz8I,GAAG2rU,IAAIlvL,IAAIiC,EAAE,CAKhmB,SAASktL,IAAIj/W,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEA,EAAE96B,EAAEoxL,EAAQ,MAAHl/K,GAASlS,EAAEoxL,EAAE,KAAKsxB,GAAI1iN,EAAE,QAAWA,EAAEoxL,GAAGvwB,GAAI3uJ,GAAGA,IAA2B,IAAxBnS,EAAEu/M,GAAIptM,EAAEk/M,IAAI,OAAe7rN,EAAE2M,EAAEuhD,OAAO,EAAE1zD,IAAoB,GAAjBu/M,GAAIptM,EAAEk/M,IAAI,OAAWiL,GAAI92N,EAAEgvL,OAAO8nC,GAAI92N,EAAEkvL,OAAO4nC,GAAI92N,EAAEw8T,OAAO1lG,GAAI92N,EAAEmvL,OAAO2nC,GAAI92N,EAAEuvL,OAAOunC,GAAI92N,EAAEyvL,OAAOqnC,GAAI92N,EAAE8vL,OAAOgnC,GAAI92N,EAAEywL,OAAOzwL,EAAE25W,MAA0B,IAArB3vV,EAAE8+L,GAAIn8M,EAAEk/M,IAAI,QAAa7rN,GAAG,GAAG2M,EAAEuhD,OAAOlkC,EAAE,IAAImzL,GAAI1iN,EAAEuF,KAAQA,EAAE2M,GAAsB,GAAjBotM,GAAIptM,EAAEk/M,IAAI,QAA+B,IAArBrxN,EAAEu/M,GAAIptM,EAAEk/M,IAAI,QAAa7rN,EAAE2M,EAAEuhD,OAAO,EAAE1zD,IAAQs8N,GAAI92N,EAAEgvL,MAAO8nC,GAAI92N,EAAEkvL,MAAO4nC,GAAI92N,EAAEw8T,MAAO1lG,GAAI92N,EAAEmvL,MAAO2nC,GAAI92N,EAAEuvL,MAAOunC,GAAI92N,EAAEyvL,MAAOqnC,GAAI92N,EAAE8vL,MAAOgnC,GAAI92N,EAAEywL,KAA4CzwL,EAAE2M,GAAxC3M,EAAE25W,KAAQ,GAAJn/W,IAAQwF,GAAG,GAAG2M,EAAEuhD,OAAO1zD,MAAc2iN,GAAI1iN,EAAEuF,GAAGA,GAAG2M,IAAIlS,EAAEoxL,EAAEpxL,EAAEmxL,KAAc,IAAJ,EAALnxL,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,KAAU/2C,GAAIj2K,EAAE,IAAIsyO,GAAItyO,EAAE,EAAE,EAAE86B,EAAE5oB,GAAG,CAE5mB,SAASmiT,IAAIniT,EAAEqd,GAAG,IAAIxvB,EAAE,GAAM,MAAHwvB,GAAS8sM,GAAI9sM,EAAEwoK,KAAM,OAAO,KAAK,GAAa,GAAVxoK,EAAErxB,QAAWgU,EAAE7Q,IAAI+nS,MAAMQ,KAAM,OAAO,KAAK,OAAO13R,EAAE7Q,EAAEsR,GAAG,KAAK,EAAE,OAAO2/S,IAAI/iS,EAAE2tN,MAAMxvB,KAAME,KAAK0kG,IAAI/iS,EAAE++M,MAAM5gB,KAAMC,KAAK,KAAK,KAAK,EAAE,IAAI,OAAO3V,GAAIhgB,IAAIzoK,EAAE0oK,IAAIC,KAAK,CAAC,MAAMl4L,KAAY,GAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAAM,OAAO,KAAU,MAAMkzK,GAAIlzK,IAAE,CAAC,KAAK,EAAE,IAAI,OAAOq2K,IAAI9mJ,EAAE,CAAC,MAAMvvB,KAAY,GAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAAM,OAAO,KAAU,MAAMkzK,GAAIlzK,IAAE,CAAC,KAAK,EAAE,OAAOuvB,EAAE,KAAK,EAAS,OAAP8tR,GAAInrS,GAAU8wU,IAAI9wU,EAAEqd,GAAG,KAAK,EAAS,OAAP8tR,GAAInrS,GAjmB7a,SAAalS,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAI2O,EAAE/Q,EAAqF,IAAnFA,EAAsB,IAAIomM,GAAvB1nM,EAAE49K,GAAGzrK,EAAE3M,GAAG2M,EAAE3M,IAAI,GAAao4K,GAAG+pB,GAAI3nM,EAAEA,EAAE7B,QAAQ,GAAG,GAAqCyU,EAAE,EAAElP,GAARq3B,EAA3B05M,IAAIjlN,EAAE,kBAAiCrxB,OAAOyU,EAAElP,IAAIkP,EAAU,GAAkB,GAAf+iU,IAAVnwU,EAAEu1B,EAAEnoB,IAAazU,OAAV,CAAyC,GAAM,OAAjBkU,EAAE4wU,IAAIhjV,EAAEuF,IAAe,OAAO,KAAUqiM,GAAIvmM,EAAEs8K,GAAGvrK,EAAE,IAApD,CAA0D,OAAO/Q,CAAC,CAimBsL89W,CAAIjtW,EAAEA,EAAElS,EAAEuvB,GAAG,KAAK,EAAE,IAAqB,OAAjBxvB,EAAEyoV,IAAIt2U,IAAKktW,GAAG7vV,GAAUxvB,CAAC,CAAC,MAAMC,KAAY,GAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,IAAK,OAAO,KAAU,MAAMkzK,GAAIlzK,IAAE,CAAC,QAAQ,MAAMkzK,GAAI,IAAI4O,GAAI,6CAA8C,CAE9mB,SAASu9L,IAAIr/W,GAAG,IAAIkS,EAAE,OAAOlS,EAAED,GAAG,KAAK,EAAG,GAAGC,EAAE02S,KAAM,OAAa,GAAN12S,EAAEE,EAAM,MAAM,KAAK,EAAG,GAAGF,EAAE02S,KAAM,OAAa,GAAN12S,EAAEE,EAAM,MAAM,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAG,OAAOF,EAAEE,GAAG,EAAE,QAAS,OAAO,EAAgB,OAATgS,EAAElS,EAAEs/W,KAAYt/W,EAAEoD,GAAG,KAAK,EAAE,OAAU,MAAH8O,GAAS+vK,GAAIk6B,GAAGjqM,KAAK2pM,GAAI77M,EAAEqB,EAAE,GAAG,KAAK,EAAE,OAAU,MAAH6Q,GAASyrK,GAAGzrK,EAAE,KAAKlS,GAAGiqN,GAAIjqN,EAAEqB,IAAI,IAAI,GAAG,KAAK,EAAE,OAAU,MAAH6Q,GAASyrK,GAAGzrK,EAAE,KAAKlS,IAAIiqN,GAAIjqN,EAAEqB,GAAGo7L,KAAK,KAAK,EAAE,OAAU,MAAHvqL,GAAS2pM,GAAIl+B,GAAGzrK,EAAE,KAAKlS,EAAEA,EAAEqB,GAAG,KAAK,EAAE,OAAU,MAAH6Q,GAASyrK,GAAGzrK,EAAE,IAAIlS,GAAGiqN,GAAIjqN,EAAEqB,GAAG,KAAK,EAAE,OAAU,MAAH6Q,GAASyrK,GAAGzrK,EAAE,KAAKlS,GAAGiqN,GAAIjqN,EAAEqB,IAAI,IAAI,GAAG,KAAK,EAAE,OAAU,MAAH6Q,GAASouK,GAAIC,GAAGruK,KAAKlS,EAAEoS,EAAE,KAAK,EAAE,OAAU,MAAHF,GAASyrK,GAAGzrK,EAAE,KAAKlS,GAAGA,EAAEoS,EAAE,QAAQ,OAAU,MAAHF,EAAa,MAALlS,EAAEJ,GAAS0yL,GAAGpgL,EAAElS,EAAEJ,GAAI,CAC/mB,SAASgpW,IAAI5oW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAE,OAAG3S,EAAEshK,MAAMthK,EAAE4iR,MAA2B7nE,GAArBpoM,EAAEg/N,GAAI3xO,EAAE29K,GAAGpuJ,EAAE,QAAgBwrL,GAAGxrL,IAAIvvB,EAAEo1U,GAAGljU,GAAGlS,EAAE4sU,GAAG16T,EAAEuwQ,GAAIziR,EAAEkS,EAAES,IAAO3S,EAAEk+L,OAAS34L,EAAEo4K,GAAGpuJ,EAAE,IAAVuL,EAAc96B,EAAEs8W,KAAKt8W,EAAEo9R,KAAK73R,EAAEi4H,GAAGx9H,EAAEkS,EAAEk7O,IAAIzvE,GAAG6iG,GAAIp1B,GAAIprP,EAAEkS,GAAGlS,EAAEssN,MAAM,KAAK1sN,EAAE+9K,GAAG6iG,GAAIp1B,GAAIprP,EAAEkS,GAAGlS,EAAEssN,MAAMi4C,KAAK,IAAIkhG,KAAK,MAAMlgW,EAAEi4H,GAAGx9H,EAAEkS,EAAEg6Q,IAAI3mR,EAAEyiN,KAAKolC,IAAIzvE,GAAG6iG,GAAIp1B,GAAIprP,EAAEkS,GAAGlS,EAAEssN,MAAM,MAAM,KAAK,MAAM/mN,EAAEi4H,GAAGx9H,EAAEkS,GAAG,EAAElS,EAAEssN,KAAK,KAAK,OAAQ3uC,GAAGhrK,EAAE,IAAIg+S,OAAU5wT,EAAE49K,GAAGhrK,EAAE,IAAVmoB,EAAc96B,EAAEs8W,KAAKt8W,EAAEo9R,KAAKr9R,EAAEw1U,GAAGv1U,EAAEkS,EAAEk7O,IAAIzvE,GAAG6iG,GAAIp1B,GAAIprP,EAAEkS,GAAGlS,EAAEssN,MAAM,KAAK1sN,EAAE+9K,GAAG6iG,GAAIp1B,GAAIprP,EAAEkS,GAAGlS,EAAEssN,MAAMi4C,KAAK,IAAIkhG,KAAK3qU,GAAG/6B,EAAEw1U,GAAGv1U,EAAEkS,EAAEg6Q,IAAInsR,EAAEioN,KAAKolC,IAAIzvE,GAAG6iG,GAAIp1B,GAAIprP,EAAEkS,GAAGlS,EAAEssN,MAAM,MAAM,KAAKxxL,GAAG/6B,EAAEw1U,GAAGv1U,EAAEkS,GAAG,EAAElS,EAAEssN,KAAK,KAAKxxL,IAAOA,GAAGA,EAAEkxJ,MAAKs1B,GAAIthN,EAAEkS,IAAIlS,EAAEu6P,GAAGv6P,EAAEskT,GAAG,EAAE/0R,EAAE5c,EAAET,GAAE,IAAeS,GAAU4c,CAAC,CAChnB,SAAS0jU,IAAIjzV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAyI,IAAvIhnB,EAAEi/K,GAAIC,GAAGgoB,IAAIvoM,GAAGq9J,MAAMguJ,QAAQtrT,EAAEugL,GAAIC,GAAGgoB,IAAIvoM,EAAEu/W,OAAiBx3K,GAAV/0L,EAAE,IAAI89I,GAAUu6J,IAAIhqT,EAAEtB,GAAO2S,GAAJN,EAAEF,GAAMnS,EAAEqD,EAAEgP,EAAEmd,EAAEvxB,EAAE6V,EAAEzB,EAAErS,EAAE/B,EAAEgW,EAAE+rM,GAAI38M,EAAEmsB,GAAGtb,EAAE8rM,GAAIlsM,EAAE0b,GAAGhqB,EAAE,IAAI+sK,GAAQx+J,EAAEE,EAAEF,GAAGG,EAAEH,IAAkBqvJ,GAAb1/J,EAAE,IAAIs4T,IAAI/7T,IAAUi/P,MAAMg4B,MAAMlvF,GAAItkM,GAAGukM,MAAM0/C,KAAKt1O,GAAG21L,GAAItkM,EAAEq+R,KAAKxM,MAAMt4D,MAAMj1B,GAAItkM,EAAEmpT,IAAI55S,GAAGpT,EAAE+9K,GAAG0pB,GAAIrnM,EAAEkS,EAAE4B,GAAG,IAAIA,GAAGE,EAAEyxT,IAAIhiU,EAAE7D,EAAEI,EAAEuvB,EAAErxB,OAAOqxB,EAAE3vB,GAAG0yP,GAAI7uP,EAAE7D,IAAGyoB,EAAEi4J,GAAIC,GAAGgoB,IAAIn2L,EAAEsiR,QAAY,GAAO3sF,GAAI31L,EAAEsiR,IAAVrsQ,EAAE,GAAe5kB,EAAEvD,EAAEgS,EAAEmW,EAAEnoB,EAAE+yI,EAAK3/H,KAAKC,MAAM8U,EAAE,GAAas2O,IAAVhsP,EAAE,IAAIomU,KAAWt5J,MAAMG,MAAM2yE,GAAI5/O,EAAElP,GAAGkP,EAAE/S,EAAEsS,EAAEhS,EAAYy+P,IAAV3gQ,EAAE,IAAI+6U,IAAUr5J,KAAK6yE,GAAIv0P,EAAEyF,GAAGzF,EAAE4B,EAAEsS,EAAEhS,EAAEkyP,GAAIhgP,EAAEO,GAAak9P,GAAV/0O,EAAE,IAAI+vN,GAAUz4O,GAAG21L,GAAIjtK,EAAEkkO,IAAI,MAAM3M,GAAIv3N,EAAE98B,GAAGo0P,GAAIt3N,EAAEpoB,GAAGm3T,IAAIpmU,EAAE2O,EAAE0oB,GAAGv1B,EAAEgqB,EAAEhqB,EAAEgqB,EAAErxB,QAAQ48B,EAAE1oB,EAAE0oB,EAAE,OAAOv1B,CAAC,CACjnB,SAAS28V,IAAIliW,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAIqD,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAIuB,EAAgH,IAA9GjW,EAAE2/K,GAAG0+I,IAAIr8T,GAAGy/K,MAAMG,MAAM+7B,KAAKF,KAAK,IAAIl2M,EAAE3F,EAAE+9K,GAAG0+I,IAAIr8T,EAAE0/K,KAAKi8B,KAAKF,KAAK,IAAI9oM,EAAElP,EAAEzF,EAAEuxB,EAAErxB,OAAO+V,EAAEwhP,GAAI93E,GAAG0pB,GAAIrnM,EAAEoS,EAAE,GAAG,KAAW3O,KAAI,GAAE,CAA8J,IAA1Jg6M,GAAI,EAAEz/M,EAAEuxB,EAAErxB,QAAbkF,EAAqBu6K,GAAG3/K,EAAEuxB,EAAE,GAAG,IAAQkuL,GAAI,EAAE79M,EAAE2vB,EAAErxB,QAA+B48B,EAAEqrK,IAA9C5gM,EAAqBo4K,GAAG/9K,EAAE2vB,EAAE,GAAG,KAASxvB,EAAEwF,EAAUA,EAAE,GAAG44P,GAAI/6P,EAAEmC,EAAExF,EAAE+6B,GAAGu3N,GAAI9sP,EAAE,MAAM6sP,GAAI7sP,EAAE,MAAMrF,EAAEkD,EAAEpD,EAAEkS,GAAG0zN,GAAI1lO,EAAE,IAAIygN,GAAI1sM,IAAQlU,EAAE++P,IAAIv5P,EAAEvF,EAAE,GAAGD,EAAEmS,GAAGnS,EAAEA,EAAEwvB,GAAmBq2M,GAAI1lO,EAAE,IAAIygN,GAAvBhjC,GAAGohF,GAAIh/P,GAAG,KAA2B,IAAN2S,EAAEtP,EAAE8O,EAAMc,EAAE,IAAI2yJ,GAAIpgK,EAAE2M,GAAGc,EAAEhT,EAAEgT,EAAEuc,EAAEA,EAAErxB,QAAS4V,EAAE6pK,GAAGC,GAAI5qK,GAAG,IAAIN,EAAE6c,EAAE7c,EAAE6c,EAAErxB,QAAQ4V,EAAkD,GAAhDE,EAAE2pK,GAAG4qB,IAAInlM,GAAGi6J,MAAM2hG,MAAM,IAAIrsP,EAAEgrK,GAAG4qB,IAAIhjM,EAAEy5P,KAAK,IAAwC,IAA1BhrP,IAAGA,EAAE,IAAIwlK,GAAIuuB,GAAI3kM,EAAE47P,IAAIhrP,IAAO3S,EAAEy9P,IAAInsP,EAAE,GAAGtR,EAAE6Q,GAAG7Q,EAAEtB,EAAEwvB,GAAmBq2M,GAAI5xN,EAAE,IAAI2sM,GAAvBhjC,GAAGohF,GAAI19P,GAAG,IAAsB,CAAC,CAClnB,SAASm+W,IAAIx/W,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAiD,GAA/C2vB,EAAEouJ,GAAG6oB,GAAIxmM,EAAEkS,EAAEA,GAAG,MAAKlU,EAAE2/K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,KAASmvB,KAAsB,OAAhB9R,EAAE3vB,EAAEsS,EAAE,OAAEqd,EAAE3vB,EAAE2vB,EAAE,GAA2D,IAAlDnd,EAAEpS,EAAEqoB,EAAE43K,IAAI4I,MAAMC,MAAMn2L,EAAE,EAAElP,EAAEzF,EAAE29M,KAAKt6M,EAAE,KAAKyS,EAAE,EAAEd,EAAE,EAAQvP,EAAE83M,MAAuBh2M,EAAE+6K,GAAIC,IAAvBxgL,EAAE49K,GAAGl6K,EAAEg4M,KAAK,MAAgBvpM,EAAE8zL,IAAIypB,KAAMC,QAAQ50L,EAAE/6B,EAAEmS,EAAEqtL,KAAKv/L,EAAEA,EAAE4pB,EAAEq2K,IAAIq3B,MAAMC,OAAOilH,IAAIx8U,EAAEkS,GAAO7Q,GAAgEzB,EAAEoT,EAAE3R,EAAEtB,EAAEwvB,EAAEvvB,EAAEuD,EAAExD,EAAEA,EAAEmS,EAAES,EAAEsgI,EAAK3/H,KAAKugB,IAAIlhB,GAAG8xM,KAAKiyE,GAAG1C,KAAK/gJ,EAAK3/H,KAAKskB,IAAI9jB,EAAEvO,IAAIyuR,KAAKlgR,GAAGvO,GAAGoK,MAAMmE,IAAInE,MAAMpK,GAAG,EAAE3F,GAAG2F,EAAEuO,MAAxK9T,EAAE6iC,GAAG7iC,EAAE6iC,EAAE3wB,EAAE,IAAIS,EAAEsgI,EAAK3/H,KAAKugB,IAAIlhB,EAAEyyR,GAAIplS,EAAE6iC,EAAE3wB,EAAEnS,EAAEA,EAAEmS,EAAE3M,KAA4HlE,EAAEtB,EAAE+T,EAAEvO,EAAEyN,EAAE8nB,EAAO96B,EAAE6iC,GAAG7iC,EAAE6iC,EAAEtT,EAAE,IAAG3vB,EAAEoT,EAAEhT,EAAE6iC,EAAEtT,EAAEnd,IAAIxS,GAAGyB,EAAEtB,EAAEwvB,GAAG5c,EAAEsgI,EAAK3/H,KAAKugB,IAAIlhB,GAAG8xM,KAAKiyE,GAAG1C,KAAK/gJ,EAAK3/H,KAAKskB,IAAI9jB,EAAE,IAAIkgR,KAAQ,GAAHlgR,GAAMnE,MAAMmE,IAAInE,MAAM,GAAG,EAAE/P,GAAG,EAAEkU,MAAKyb,EAAE3vB,EAAEsS,EAAE,EAAEqd,EAAEvvB,EAAEA,EAAE2S,CAAC,CACpnB,SAAS8sW,IAAIz/W,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAiD,GAA/C2vB,EAAEouJ,GAAG6oB,GAAIxmM,EAAEkS,EAAEA,GAAG,MAAKlU,EAAE2/K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,KAASmvB,KAAsB,OAAhB9R,EAAE3vB,EAAEG,EAAE,OAAEwvB,EAAE3vB,EAAEI,EAAE,GAAyF,IAAhFoS,EAAEpS,EAAEqoB,EAAE43K,IAAI4I,MAAMC,MAAMn2L,EAAE,EAAE3S,EAAE4pB,EAAEq2K,IAAIq3B,MAAMC,OAAOqlH,IAAI58U,EAAEkS,GAAGzO,EAAEzF,EAAE29M,KAAKt6M,EAAE,KAAK2R,EAAE,EAAEc,EAAE,EAAQrQ,EAAE83M,MAAuBzgL,EAAEwlJ,GAAIC,IAAvBxgL,EAAE49K,GAAGl6K,EAAEg4M,KAAK,MAAgBvpM,EAAE8zL,IAAIypB,KAAMC,QAAQnqN,EAAExF,EAAEmS,EAAEqtL,KAAKrtL,EAAM7Q,GAAgEzB,EAAEkU,EAAEzS,EAAEtB,EAAEC,EAAEA,EAAEuD,EAAExD,EAAEA,EAAEA,EAAE4S,EAAEsgI,EAAK3/H,KAAKugB,IAAIlhB,GAAG8xM,KAAKiyE,GAAG1C,KAAK/gJ,EAAK3/H,KAAKskB,IAAI5kB,EAAE8nB,IAAIk5P,KAAKhhR,GAAG8nB,GAAGnrB,MAAMqD,IAAIrD,MAAMmrB,GAAG,EAAEl7B,GAAGk7B,EAAE9nB,MAAxKhT,EAAE6iC,GAAG7iC,EAAE6iC,EAAE9iC,EAAE,IAAI4S,EAAEsgI,EAAK3/H,KAAKugB,IAAIlhB,EAAEyyR,GAAIplS,EAAE6iC,EAAE9iC,EAAEA,EAAEA,EAAEA,EAAE+6B,KAA4Hz5B,EAAEtB,EAAEiT,EAAE8nB,EAAEhnB,EAAEvO,EAAOvF,EAAE6iC,GAAG7iC,EAAE6iC,EAAE7iC,EAAE,IAAGJ,EAAEkU,EAAE9T,EAAE6iC,EAAE7iC,EAAEoS,IAAIxS,GAAGyB,EAAEtB,EAAEC,GAAG2S,EAAEsgI,EAAK3/H,KAAKugB,IAAIlhB,GAAG8xM,KAAKiyE,GAAG1C,KAAK/gJ,EAAK3/H,KAAKskB,IAAI5kB,EAAE,IAAIghR,KAAQ,GAAHhhR,GAAMrD,MAAMqD,IAAIrD,MAAM,GAAG,EAAE/P,GAAG,EAAEoT,MAAKuc,EAAE3vB,EAAEG,EAAE,EAAEwvB,EAAEvvB,EAAEkS,EAAES,CAAC,CACpnB,SAASohW,IAAI/zW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAkE,IAAhEsG,KAAKqO,EAAE3S,EAAEyD,EAAEyO,EAAEnS,EAAE7B,OAAOF,EAAEuxB,EAAExvB,EAAE7B,OAAOoG,KAAKvE,EAAEk+K,GAAGkuE,IAAGC,IAAI,GAAG3oP,EAAEzF,EAAE,EAAE,GAAO2U,EAAE,EAAEA,EAAElP,EAAEkP,IAAKrO,KAAKvE,EAAE4S,GAAGT,EAAEnS,EAAE4S,GAAG,IAAImoB,EAAE,EAAEA,EAAE98B,EAAE88B,IAAKx2B,KAAKvE,EAAE0D,EAAEq3B,GAAGvL,EAAExvB,EAAE+6B,GAAG,GAAG5oB,EAAE3M,GAA+B,GAA5BjB,KAAKiB,EAAEm9N,GAAGxwN,EAAE3M,GAAGjB,KAAKiB,EAAEy0P,GAAGzqO,GAAMA,EAAEhqB,EAAG,IAAIA,EAAEgqB,EAAEhqB,EAAEo2M,KAAKp2M,EAAEg2M,OAAOx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,OAAWvpM,IAAiB5N,KAAKiB,EAAE06L,GAAGlgM,KAAKA,EAAEwvB,EAAEjrB,KAAKiB,EAAEsiN,GAAG9nN,SAAawvB,EAAEhqB,IAAGjB,KAAKiB,EAAEm9N,GAAGnzM,EAAEhqB,GAAGjB,KAAKiB,EAAEy0P,GAAG9nP,IAAG5N,KAAKw2B,EAAE5oB,EAAE4oB,EAAEvL,EAAEuL,EAAEx2B,KAAKtE,EAAEkS,EAAElS,EAAEuvB,EAAEvvB,EAAEsE,KAAKtE,EAAE,EAAEk2R,GAAI5xR,KAAKA,KAAKw2B,EAAEx2B,KAAKtE,GAAsB,MAAnB6pN,GAAI33M,EAAES,EAAET,EAAEnS,EAAE,IAAIC,GAA4B,MAAnB6pN,GAAIt6L,EAAE5c,EAAE4c,EAAExvB,EAAE,IAAIC,EAAQk2R,GAAI5xR,MAAMg8K,GAAIupC,GAAI33M,EAAES,EAAET,EAAEnS,EAAE,IAAIC,GAAGsgL,GAAIupC,GAAIt6L,EAAE5c,EAAE4c,EAAExvB,EAAE,IAAIC,IAAI,GAAsB,MAAnB6pN,GAAI33M,EAAES,EAAET,EAAEnS,EAAE,IAAIC,EAAQk2R,GAAI5xR,KAAKulN,GAAI33M,EAAES,EAAET,EAAEnS,EAAE,IAAIC,GAAsB,MAAnB6pN,GAAIt6L,EAAE5c,EAAE4c,EAAExvB,EAAE,IAAIC,GAASk2R,GAAI5xR,KAAKulN,GAAIt6L,EAAE5c,EAAE4c,EAAExvB,EAAE,IAAIC,EAAE,CACrnB,SAAS0/W,IAAI1/W,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAI+6B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAuB,IAArB9T,EAAEA,EAAE,IAAIi5O,GAtiElD,SAAaj5O,GAAG,IAAIkS,EAA+C,OAAO,IAAIu1L,GAAtDv1L,EAAEyrK,GAAG39K,EAAEuF,GAAGvF,EAAEuF,IAAI,GAAKo4K,GAAG2zC,GAAIp/M,EAAEA,EAAEhU,QAAQ,GAAsBgU,EAAEhU,OAAO,CAsiEzCyhX,CAAI5kV,MAASh7B,EAAE,IAAI4lK,GAAIzzJ,EAAElS,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAQ,CAAmE,IAAlEqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,KAAK0D,EAAE,IAAIgvT,IAAIl0I,GAAGC,GAAGN,IAAG,GAAGC,IAAI,GAAG,EAAE,KAAKpI,GAAI/1K,EAAEA,EAAEA,EAAEyD,GAAO2O,EAAE,IAAIuzJ,GAAIp2I,EAAExvB,GAAGqS,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAyC0hX,IAAfv+W,EAAE,IAAIiuN,GAAItvN,EAA3BhC,EAAE2/K,GAAGC,GAAIxrK,GAAG,MAA0BurK,GAAG4qB,IAAIh5K,EAAEA,GAAGy4K,MAAMoxG,MAAM,KAASx4G,GAAI5gM,EAAE2S,EAAE4c,KAAIonK,GAAI32L,EAAE2S,EAAE4c,EAAE,IAAI0lL,GAAIj3M,EAAEuxB,EAAEvxB,EAAE+B,IAAI42L,GAAI32L,EAAE86B,EAAEvL,EAAEluB,IAAG00K,GAAI/1K,EAAEA,EAAEkS,EAAE7Q,GAAGu7P,GAAIn5P,EAAEpC,GAAG,IAAIsR,EAAE,IAAIgzJ,GAAIp2I,EAAErd,GAAGS,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAA0BmD,EAAE,IAAIiuN,GAAItvN,GAA3B86B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,MAAmBuuJ,MAAMy1B,GAAI32L,EAAEkS,EAAE4oB,EAAE,IAAI07K,GAAI/yM,EAAEpC,IAAIu+W,IAAIv+W,EAAEs8K,GAAG4qB,IAAIh5K,EAAEA,GAAGy4K,MAAMoxG,MAAM,KAAQt+Q,EAAE+kV,OAA4BD,IAAtB9rW,EAAE,IAAIy7M,IAAIvvN,EAAE86B,EAAE+kV,KAAK,GAASliM,GAAG4qB,IAAIh5K,EAAEA,EAAE6pR,KAAK,KAAyCx8C,GAAlC,IAAI61D,IAAIl0I,GAAGC,GAAGN,IAAG,GAAGC,IAAI,GAAG,EAAE,KAAWrqK,GAAG8gR,IAAG50R,EAAEuvB,EAAEuL,EAAEs9U,KAAK,IAAI5hK,GAAI/yM,EAAEqQ,IAAK,CAAC,OAAO9T,EAAEA,CAAC,CACtnB,SAAS8/W,IAAI9/W,GAAG,IAAIkS,EAAE5N,KAAKtE,EAAEA,EAAEkS,GAAG+sP,MAAM1gF,GAAGC,GAAGw4G,IAAG,GAAG/qD,IAAI,IAAI,EAAE,CAACg4B,IAAIgzB,IAAI/3B,IAAIg4B,IAAIC,IAAIC,OAAOl5R,OAAOoG,KAAK4N,EAAEs2N,GAAG35C,IAAG,CAACgF,IAAIs3H,KAAK,CAAC,IAAI,KAAK,EAAE,CAACj5S,EAAEA,GAAG,GAAG5N,KAAKirB,EAAEi5M,GAAG35C,IAAG,CAACgF,IAAIs3H,KAAK,CAAC,IAAI,KAAK,EAAE,CAACj5S,EAAEA,GAAG,GAAGw6O,GAAIpoP,KAAK2/P,KAAK5mG,MAAM6tJ,KAAKnD,KAAKlX,GAAIvsS,KAAK2/P,IAAIgzB,IAAIo0B,IAAIvD,KAAKr7D,GAAInoP,KAAK2/P,IAAIizB,IAAIm0B,KAAK5+D,GAAInoP,KAAK2/P,IAAI/E,IAAImsD,KAAKxa,GAAIvsS,KAAK2/P,IAAIkzB,IAAI+zB,IAAInD,KAAKr7D,GAAIpoP,KAAK2yR,IAAI5wC,IAAImlE,KAAK/+D,GAAInoP,KAAK2yR,IAAIC,IAAI7wC,KAAKoG,GAAInoP,KAAK2yR,IAAI/3B,IAAI7Y,KAAKwqD,GAAIvsS,KAAK2yR,IAAIE,IAAIk0B,IAAIvD,KAAK9jG,GAAI1/M,KAAK4yR,IAAI7wC,KAAKoG,GAAInoP,KAAK4yR,IAAIh4B,IAAI7Y,KAAKoG,GAAInoP,KAAK4yR,IAAIC,IAAIm0B,KAAKtnG,GAAI1/M,KAAK46P,IAAIqsD,KAAK1a,GAAIvsS,KAAK46P,IAAIi4B,IAAI1uF,IAAID,KAAKkkD,GAAIpoP,KAAK6yR,IAAI9wC,IAAIA,KAAKqG,GAAIpoP,KAAK8yR,IAAI/wC,IAAImlE,KAAK3a,GAAIvsS,KAAK8yR,IAAInzB,IAAIonD,IAAIvD,KAAKjX,GAAIvsS,KAAK8yR,IAAID,IAAIk0B,IAAIvD,KAAKjX,GAAIvsS,KAAK8yR,IAAIH,IAAIo0B,IAAIvD,IAAI,CAItnB,SAASuyC,IAAIr6V,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAyD,GAAvDM,EAAE,IAAI2tM,GAAI3gN,EAAEE,GAAGwS,EAAER,EAAElS,EAAEgT,EAAEhT,EAAEyD,EAAEyO,EAAEA,EAAEc,EAAEd,EAAE9O,EAAE8O,EAAElS,EAAEgT,EAAEhT,EAAE86B,EAAE5oB,EAAEA,EAAEc,EAAEd,EAAKqd,EAA8C,IAA3ChqB,EAAEw1M,GAAGxS,IAAIvoM,GAAGq9J,MAAMykI,SAAS/mF,IAAIu6E,MAAMt4D,MAAU98N,EAAE,IAAIylK,GAAI3lK,EAAEoS,GAAGlS,EAAEF,EAAEE,EAAEqvB,EAAEA,EAAErxB,QAAyB,QAAhB0B,EAAE+9K,GAAGC,GAAI19K,GAAG,KAAakS,EAAEO,GAAG,KAAK,EAAEpN,IAAI3F,EAAEA,EAAEI,GAAG0S,GAAG,MAAM,KAAK,EAAE9S,EAAEA,EAAEI,GAAGoD,EAAEmC,IAAI3F,EAAEA,EAAEsS,GAAGzO,GAAG,MAAM,KAAK,EAAE8B,IAAI3F,EAAEA,EAAEI,GAAG0S,GAAG9S,EAAEA,EAAEsS,GAAG4oB,EAAE,MAAM,KAAK,EAAEv1B,IAAI3F,EAAEA,EAAEsS,GAAGzO,GAAM,IAAI2O,EAAE,IAAIuzJ,GAAI3lK,EAAEkS,GAAGE,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAyBmD,GAAhBrD,EAAE2/K,GAAGC,GAAIxrK,GAAG,KAAQxS,EAAEI,EAAEhC,EAAEkC,EAAEF,EAAE,EAAE8T,EAAE9V,EAAE4B,EAAEsS,EAAElU,EAAEkC,EAAEgS,EAAE,GAAE8B,EAAE3S,EAAE2R,EAAEhT,IAAE2S,EAAEmB,EAAEd,EAAEd,IAAU,IAAM8B,EAAErB,EAAE,GAAGmB,GAAG,GAAG9V,EAAE4B,EAAEI,GAAGoD,EAAEpF,EAAE4B,EAAEsS,GAAG4oB,EAAEnoB,GAAUqB,EAAErB,EAAE,GAAGtR,GAAG,IAAGrD,EAAE4B,EAAEI,GAAGoD,EAAE4Q,EAAEhW,EAAE4B,EAAEsS,GAAG4oB,IAAI96B,EAAEE,EAAEF,EAAEkS,EAAElS,EAAEA,EAAEE,EAAEgS,EAAEA,EAAEA,EAAE61L,GAAI/nM,GAAGq9J,MAAM4nL,MAAM3tH,MAAsB,IAAI7vB,GAApB1nM,EAAE49K,GAAGsL,GAAIqgG,KAAI,GAAa3rG,GAAG+pB,GAAI3nM,EAAEA,EAAE7B,QAAQ,GAAG,IAAI,CAG9nB,SAASq+V,IAAIv8V,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAY,IAAVtB,EAAE,IAAIuyK,GAAQ3/J,EAAE,IAAIgzJ,GAAI3lK,EAAEuF,EAAEvF,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAQ,CAA+C,IAA7BmD,EAAE,GAAnBkE,EAAEo4K,GAAGC,GAAIjrK,GAAG,MAAWtR,EAAEkuB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAO5uJ,EAAE,IAAIo2I,GAAIshJ,GAAI1hT,IAAIgqB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,SAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,MAAUuL,IAAGi7I,GAAIxwK,EAAElE,EAAE6Q,KAAK7Q,GAAM,GAAHA,IAAOtB,EAAEwvB,EAAExvB,EAAEwvB,EAAErxB,QAAQqH,EAAO,CAAC,IAAIu1B,EAAE,IAAI6qI,GAAI5lK,GAAG+6B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAA0B,IAAjBqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAyB,GAAdv1B,EAAElE,EAAEkuB,EAAErxB,QAAU,CAAsD,IAArDkU,EAAEurK,GAAGC,GAAI,IAAIjY,GAAIpgK,EAAElE,IAAI,KAAKrB,EAAEkS,EAAEE,EAAEmd,GAAGnd,EAAEO,EAAElP,EAAE2O,EAAErS,EAAE/B,EAAEoU,EAAE7M,EAAMgqB,EAAE,IAAIo2I,GAAIshJ,GAAI1hT,IAAIgqB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAA0Bo0L,GAAjBpgL,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAUnd,KAAKF,EAAE4oB,EAAEr3B,GAAGyO,EAAEnS,GAAG/B,GAAGkU,EAAE3M,EAAGvF,EAAEkS,EAAEE,EAAEmd,IAAIvvB,EAAEkS,EAAEA,EAAEqd,GAAGrd,EAAES,EAAI3S,EAAEkS,EAAEE,EAAEmd,IAAIvvB,EAAEkS,EAAEA,EAAEqd,GAAGrd,EAAES,EAAGpN,GAAG9B,EAAEyO,EAAEnS,GAAGwF,EAAGvF,EAAEkS,EAAEE,EAAEmd,IAAIrd,EAAES,EAAI3S,EAAEkS,EAAEE,EAAEmd,IAAIrd,EAAES,EAAGT,EAAEnS,GAAGwF,EAAGvF,EAAEkS,EAAEE,EAAEmd,IAAIrd,EAAES,EAAI3S,EAAEkS,EAAEE,EAAEmd,IAAIrd,EAAES,GAAIm9M,GAAIrsN,EAAEpC,EAAE+Q,GAAG09M,GAAI9xN,EAAEqD,EAAE+Q,GAAS7M,EAAN9B,GAAG8B,EAAK6M,EAAE7M,EAAM6M,EAAErS,CAAE,CAAE,CACnoB,SAASq0T,IAAIp0T,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAM5T,EAAE,GAAM,MAAHgS,GAAmB,GAAVA,EAAEhU,OAAW,OAAO,KAAyB,KAApB48B,EAAE6iJ,GAAG2M,GAAItqL,EAAE86B,EAAE5oB,GAAG,KAAU,CAAC,IAAI3M,EAAgC,IAAI0/J,GAA9B,IAAIR,GAAIzkK,EAAED,GAAIC,EAAEspO,KAAK3tB,MAAiBp2M,EAAEvF,EAAEu7M,MAA4D,GAAlD5oM,EAAEgrK,GAAGp4K,EAAEvF,EAAEy7M,KAAK,IAAmBh4M,GAApC8rB,EAAqBouJ,GAAGhrK,EAAEmoM,KAAK,KAAShgL,EAAE56B,EAAEgS,EAAEhU,OAAUm+N,GAAI54N,EAAEgwD,OAAOhwD,EAAEvF,OAAOgC,EAAEA,GAAGgS,KAAKA,EAAEhU,QAAQuF,EAAEvF,QAAoC,IAA5Bg7L,GAAIz1L,EAAEA,EAAEvF,OAAOgU,EAAEhU,OAAO,IAAQ,CAAC,GAAG48B,EAAG,OAAO,KAAKA,EAAEvL,CAAC,CAAE,IAAIuL,EAAG,IAAI/6B,EAAgC,IAAIklK,GAA9B,IAAIR,GAAIzkK,EAAED,GAAIC,EAAEspO,KAAK3tB,MAAiB57M,EAAEC,EAAEu7M,MAAiD,GAAvC5oM,EAAEgrK,GAAG59K,EAAEC,EAAEy7M,KAAK,IAA+B,OAAZ3nM,GAApCyb,EAAqBouJ,GAAGhrK,EAAEmoM,KAAK,KAASnoM,GAAc,IAAQP,EAAE,EAAE/Q,GAARrD,EAAE8V,GAAU5V,OAAOkU,EAAE/Q,IAAI+Q,EAAqB,GAAlB3O,EAAEzF,EAAEoU,GAAGlS,EAAEgS,EAAEhU,OAAUm+N,GAAI54N,EAAEgwD,OAAOhwD,EAAEvF,OAAOgC,EAAEA,GAAGgS,KAAKA,EAAEhU,QAAQuF,EAAEvF,QAAoC,IAA5Bg7L,GAAIz1L,EAAEA,EAAEvF,OAAOgU,EAAEhU,OAAO,IAAQ,CAAC,GAAG48B,EAAG,OAAO,KAAKA,EAAEvL,CAAC,CAAOuL,GAAGo0J,GAAIlvL,EAAE86B,EAAE5oB,EAAE4oB,EAAE,CAAC,OAAOA,CAAC,CAEroB,SAASilV,IAAI//W,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAI0B,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAoF,GAAlFmvR,IAAItyQ,EAAE,2BAA2B,GAAGvvB,EAAEkS,EAAEA,EAAEQ,EAA8B,EAA5BirK,GAAG4qB,IAAIr2L,GAAGmrJ,MAAM0iK,MAAM,IAAI//T,GAAIgU,EAAEhU,EAAEkS,EAAElS,GAAOuvB,EAAErxB,OAAO,EAAGqkS,IAAIhzQ,OAArB,CAAiD,IAAlBuL,EA1TvK,SAAa96B,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAiG,IAA1F,MAAL3S,EAAEuvB,GAASvvB,EAAEuvB,EAAErxB,OAAOgU,EAAEqd,EAAErxB,OAAQ8B,EAAEuvB,EAAE0uJ,GAAG8U,IAAIuyD,IAAI,GAAGpzO,EAAEqd,EAAErxB,OAAO,GAAG,GAAIskL,GAAIxiL,EAAEuvB,GAAGvvB,EAAEA,EAAE,IAAIsyK,GAAIvyK,EAAE,EAAM4S,EAAE,IAAIgzJ,GAAIzzJ,GAAGS,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,SAASqH,EAAEo4K,GAAGC,GAAIjrK,GAAG,KAAMvP,EAAErD,IAAc,IAAVwvB,EAAE,IAAIkqJ,GAAQ3+I,EAAE,IAAI6qI,GAAIzzJ,GAAG4oB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAASqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,IAAQ96B,EAAEuvB,EAAEhqB,EAAEnC,KAAIy+U,IAAI7hV,EAAEuF,GAAQ,GAALgqB,EAAErd,IAAOo3M,GAAS,GAAL/5L,EAAErd,GAAMyrK,GAAGpuJ,EAAEvvB,EAAEA,EAAEuvB,EAAE,KAAK0vJ,KAAKj/K,EAAEA,EAAEuvB,EAAErxB,OAAO4+M,GAAIvtL,EAAEvvB,EAAEA,GAAGg9M,GAAIztL,EAAEvvB,EAAEA,GAAGA,EAAEA,EAAE,IAAIsyK,IAAK,OAAO/iJ,CAAC,CA0TzMywV,CAAIhgX,EAAEgU,GAAG5Q,EAAE,KAASmC,EAAEu5P,IAAIhkO,EAAE,GAAGv1B,EAAE2M,GAAG3M,EAAExF,EAAEwvB,GAAG,CAA8G,IAA7GxvB,EAAE49K,GAAGohF,GAAIx5P,GAAG,IAAI9B,EAAEiP,EAAEylL,GAAGllD,EAAK3/H,KAAKuc,KAAK9vB,EAAEk/K,OAAgBurL,IAAIvkL,GAAIE,GAAID,GAAI06C,GAAzBjuN,EAAEi5V,IAAI7rW,IAA0B0D,GAAGL,IAAG,GAAM8iS,GAAI32Q,EAAE,IAAIvc,EAAEhT,EAAEkS,EAAEA,EAAMhS,EAAE,IAAIylK,GAAIhzJ,EAAE3S,GAAGE,EAAEF,EAAEE,EAAEqvB,EAAEA,EAAErxB,QAAQ,CAAkB,IAAjB0B,EAAE+9K,GAAGC,GAAI19K,GAAG,KAAW8S,EAAEuc,EAAErxB,QAAQ0B,EAAE2F,GAAGkmO,GAAIz4N,EAAEA,EAAEuc,EAAErxB,OAAO,IAAIg7O,GAAIl5O,EAAEkS,IAAiBogP,GAAX30E,GAAG/9K,EAAEk7B,EAAE,IAAU6iJ,GAAG0pB,GAAIr0L,EAAEpT,EAAE2F,GAAG,IAAI,CAAC,GAAGu1B,EAAE5oB,EAAE,EAA2C,IAAxC9O,EAAE66K,GAAGmV,IAAGsW,IAAI,GAAG1pM,EAAEkS,EAAEA,EAAEqd,EAAErxB,OAAO,GAAG,GAAG4V,EAAE,EAAM1B,EAAE,IAAIuzJ,GAAI3lK,EAAEkS,EAAEA,GAAGE,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAASF,EAAE2/K,GAAGC,GAAIxrK,GAAG,IAAIhP,EAAE0Q,KAAK9V,EAAEgC,EAAEuvB,EAAErxB,MAAQ,CAAC8V,EAAEub,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGn+K,EAAEA,EAAE,KAAKA,EAAEkS,EAAE,KAAKlS,EAAEuvB,EAAE,KAAKgzQ,IAAIhzQ,EAAre,CAAue,CAC7oB,SAAS0wV,IAAIjgX,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAM,IAAJyO,EAAE,EAAM4oB,EAAE,IAAI6qI,GAAI3lK,EAAEkS,EAAElS,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,SAAS6B,EAAE49K,GAAGC,GAAI9iJ,GAAG,MAAO5oB,EAAE,EAAEnS,EAAEwvB,EAAE,EAA6L,IAA3L2oT,IAAIl4U,EAAE,GAAGqoT,GAAIroT,EAAEA,EAAE2S,GAAGokS,IAAI/2S,EAAEuvB,GAAG+yJ,GAAItiL,EAAEuvB,GAAMojQ,KAAHpjQ,EAASqxL,IAAK2oJ,IAAIrtJ,GAAIutJ,IAAIF,IAAIrtJ,GAAIutJ,IAAIF,IAAIE,IAAIzpW,EAAEuvB,EAAEA,IAAIy0R,GAAIz0R,MAAMA,KAAKk6U,IAAIzpW,EAAEuvB,EAAEqxL,KAAKwkG,GAAIplT,EAAEA,EAAE2S,GAAG0/T,IAAIryU,EAAE,GAAGm4W,IAAIn4W,EAAE,GAAG4uV,IAAI5uV,EAAE,GAAGk4U,IAAIl4U,EAAE,GAAGqoT,GAAIroT,EAAEA,EAAED,GAAGg3S,IAAI/2S,EAAEuvB,GAAO5c,EAAE,IAAIgzJ,GAAI3lK,EAAEkS,EAAElS,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAS6B,EAAE49K,GAAGC,GAAIjrK,GAAG,KAAKT,GAAG+gI,EAAK3/H,KAAKskB,IAAI73B,EAAEwvB,GAAG,IAAI9rB,EAAE,IAAIkiK,GAAI3lK,EAAEkS,EAAElS,GAAGyD,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,SAAS6B,EAAE49K,GAAGC,GAAIn6K,GAAG,MAAOyO,EAAE,EAAEnS,EAAEwvB,EAAE,EAAgI,IAA9HA,EAAEuxL,IAAIyoJ,IAAIrtJ,GAAIutJ,IAAIF,IAAIrtJ,GAAIutJ,IAAIF,IAAIjnL,GAAImnL,IAAIzpW,EAAEuvB,EAAEA,KAAKy0R,GAAIz0R,MAAMA,KAAKk6U,IAAIzpW,EAAEuvB,EAAEqxL,KAAKwkG,GAAIplT,EAAEA,EAAED,GAAGsyU,IAAIryU,EAAE,GAAGm4W,IAAIn4W,EAAE,GAAG4uV,IAAI5uV,EAAE,GAAGsiL,GAAItiL,EAAEuvB,GAAOhqB,EAAE,IAAIogK,GAAI3lK,EAAEkS,EAAElS,GAAGuF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAS6B,EAAE49K,GAAGC,GAAIr4K,GAAG,KAAK2M,GAAG+gI,EAAK3/H,KAAKskB,IAAI73B,EAAEwvB,GAAG,OAAOrd,CAAC,CAC/oB,SAASguW,IAAIlgX,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAM,GAAQ,OAAZ+Q,EAAEF,GAAOA,GAAc,MAALlS,EAAEkS,EAAhB,CAAkH,IAAnFy8U,IAAI3uV,GAAG0yW,IAAI1yW,GAAG2uV,IAAIv8U,GAAGsgW,IAAItgW,GAAGmd,EAAE0uJ,GAAGmV,IAAGsW,IAAI,GAAG1pM,EAAEkS,EAAEhU,OAAOkU,EAAEF,EAAEhU,OAAO,GAAG,GAAGmD,EAAE,EAAEtB,EAAE,EAAE4S,EAAE,EAAQ5S,EAAEC,EAAEkS,EAAEhU,QAAQyU,EAAEP,EAAEF,EAAEhU,QAAgD,GAAxCqH,EAAEvF,EAAEkS,EAAEnS,GAAG+6B,EAAE96B,EAAEkS,EAAEnS,EAAE,GAAG0D,EAAE2O,EAAEF,EAAES,GAAG3U,EAAEoU,EAAEF,EAAES,EAAE,GAAMmoB,EAAEr3B,EAAG1D,GAAG,OAAO,GAAG+6B,GAAGr3B,GAAG8B,GAAGvH,EAAMyF,GAAG8B,GAAGu1B,GAAG98B,GAAGuxB,EAAEluB,KAAKkE,EAAEgqB,EAAEluB,KAAKy5B,EAAE/6B,GAAG,GAAU0D,GAAG8B,GAAGgqB,EAAEluB,KAAKkE,EAAEgqB,EAAEluB,KAAKrD,EAAEgC,EAAEkS,EAAEnS,GAAG/B,EAAE,EAAE2U,GAAG,GAAUmoB,GAAG98B,GAAGuxB,EAAEluB,KAAKoC,EAAE8rB,EAAEluB,KAAKy5B,EAAE/6B,GAAG,IAAOwvB,EAAEluB,KAAKoC,EAAE8rB,EAAEluB,KAAKrD,EAAEgC,EAAEkS,EAAEnS,GAAG/B,EAAE,OAAQ,MAAGA,EAAEuH,GAAa,MAAM2tK,GAAI,IAAIiK,GAAG,6CAA6Cn9K,EAAEkS,EAAEnS,GAAG,IAAIC,EAAEkS,EAAEnS,EAAE,GAAG,QAAQqS,EAAEF,EAAES,GAAG,IAAIP,EAAEF,EAAES,EAAE,GAAG,MAAxHA,GAAG,CAA0H,CAAE,KAAM5S,EAAEC,EAAEkS,EAAEhU,QAAQqxB,EAAEluB,KAAKrB,EAAEkS,EAAEnS,KAAKwvB,EAAEluB,KAAKrB,EAAEkS,EAAEnS,KAAKC,EAAEkS,EAAE+rK,GAAGmV,IAAGsW,IAAI,GAAGroM,EAAE,GAAG,GAAGiiQ,IAAI/zO,EAAE,EAAEvvB,EAAEkS,EAAE,EAAE7Q,EAApkB,CAAskB,CAChpB,SAAS8+W,IAAIngX,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAoC,IAAlCyO,EAAE,IAAIogK,GAAItyK,EAAE2S,EAAE,IAAI2/J,GAAItyK,EAAED,EAAE,IAAIuyK,GAAQ3/J,EAAE,IAAIimS,GAAK,IAAIt0I,GAAItkK,EAAE86B,EAAE5oB,GAAIlS,GAAG2S,EAAET,GAAa6jK,GAAI7jK,EAAEyrK,GAAGA,IAAlB7iJ,EAAEs7P,GAAIzjR,IAAiBmoM,KAAK,IAAI5oM,EAAE,KAAK2rK,GAAIF,GAAG7iJ,EAAE+xK,KAAK,KAAKurK,MAAMriM,GAAI/1K,EAAED,EAAE49K,GAAG7iJ,EAAEggL,KAAK,KAAK/kC,GAAI/1K,EAAE2S,EAAEgrK,GAAG7iJ,EAAEggL,KAAK,KAAgJ,IAA3IutG,GAAIroT,EAAEA,EAAED,GAAGsoT,GAAIroT,EAAEA,EAAE2S,GAAG3S,EAAEuvB,EAAE,IAAI60T,IAAIpkV,EAAEkS,GA7jJ9P,SAAalS,EAAEkS,GAAGlS,EAAE86B,EAAE5oB,CAAU,CA6jJiOkuW,CAAIpgX,EAAEuvB,GAAGm0K,KAAMC,MAAMyhH,GAAIplT,EAAEA,EAAED,GAAGqlT,GAAIplT,EAAEA,EAAE2S,GAAGi2O,GAAI12O,EAAElS,EAAEuvB,EAAEvvB,EAAEkS,GAAGlS,EAAEuF,EAAE,IAAI0vM,GAAI3+B,IAAIA,KAAKt2K,EAAEA,EAAE,IAAIi1M,GAAI1+B,IAAIA,KAASx2K,EAAE,IAAI4lK,GAAIzzJ,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,IAAIC,EAAEuF,EAAEvF,EAAEizI,EAAK3/H,KAAKsgB,IAAI5zB,EAAEuF,EAAEvF,EAAEuvB,EAAE5c,EAAE4c,GAAGvvB,EAAEuF,EAAE2M,EAAE+gI,EAAK3/H,KAAKsgB,IAAI5zB,EAAEuF,EAAE2M,EAAEqd,EAAE5c,EAAE5S,GAAGC,EAAEA,EAAEA,EAAEizI,EAAK3/H,KAAKugB,IAAI7zB,EAAEA,EAAEA,EAAEuvB,EAAE5c,EAAE4c,EAAEA,EAAE5c,EAAET,GAAGlS,EAAEA,EAAEkS,EAAE+gI,EAAK3/H,KAAKugB,IAAI7zB,EAAEA,EAAEkS,EAAEqd,EAAE5c,EAAE5S,EAAEwvB,EAAE5c,EAAE3S,GAAGqmL,GAAIrmL,EAAEuvB,EAAE,IAAIsrH,IAAKp3I,EAAE,EAAE,GAAG8B,EAAE06W,IAAIjgX,KAAKyD,SAASA,EAAE,GAAG8B,EAAEoxR,MAAMlzR,EAAE,IAAI4iL,GAAIrmL,EAAEuvB,EAAE,IAAIurH,IAAKmlO,IAAIjgX,GAlxG7nB,SAAaA,GAAGypW,IAAIzpW,GAAG2yR,KAAM/xE,MAAM5gN,EAAED,GAAE,CAAa,CAkxG4kBsgX,CAAIrgX,EAAEuvB,GAXtoB,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,IAAI88B,EAAE,IAAI6qI,GAAI3lK,EAAEA,EAAEkS,GAAG4oB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,SAASqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAM5oB,EAAEqd,EAAEhqB,EAAEoN,EAAE4c,EAAEhqB,EAAE2M,EAAEnS,EAAEwF,EAAEoN,EAAE5S,EAAwC,IAAtC/B,EAAE,IAAIi3M,GAAI3+B,IAAIA,KAAKpkK,EAAE,IAAI+iM,GAAI1+B,IAAIA,KAASx2K,EAAE,IAAI4lK,GAAI3lK,EAAEA,EAAEkS,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,IAAI/B,EAAEgC,EAAEizI,EAAK3/H,KAAKsgB,IAAI51B,EAAEgC,EAAEuvB,EAAE5c,EAAE4c,GAAGvxB,EAAEkU,EAAE+gI,EAAK3/H,KAAKsgB,IAAI51B,EAAEkU,EAAEqd,EAAE5c,EAAE5S,GAAGmS,EAAElS,EAAEizI,EAAK3/H,KAAKugB,IAAI3hB,EAAElS,EAAEuvB,EAAE5c,EAAE4c,EAAEA,EAAE5c,EAAET,GAAGA,EAAEA,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAEA,EAAEqd,EAAE5c,EAAE5S,EAAEwvB,EAAE5c,EAAE3S,GAAG,IAAIyD,EAAEy0O,GAAGl4O,EAAEuvB,GAAGvvB,EAAEsgX,KAAK78W,EAAE83M,MAAO5oM,EAAEgrK,GAAGl6K,EAAEg4M,KAAK,IAAIlsL,EAAEouJ,GAAGhrK,EAAET,EAAE,IAAIlU,EAAEgC,EAAEizI,EAAK3/H,KAAKsgB,IAAI51B,EAAEgC,EAAEuvB,EAAE5c,EAAE4c,GAAGvxB,EAAEkU,EAAE+gI,EAAK3/H,KAAKsgB,IAAI51B,EAAEkU,EAAEqd,EAAE5c,EAAE5S,GAAGmS,EAAElS,EAAEizI,EAAK3/H,KAAKugB,IAAI3hB,EAAElS,EAAEuvB,EAAE5c,EAAE4c,EAAEA,EAAE5c,EAAET,GAAGA,EAAEA,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAEA,EAAEqd,EAAE5c,EAAE5S,EAAEwvB,EAAE5c,EAAE3S,GAAGA,EAAED,EAAEgzN,GAAI,IAAI9d,GAAIj3M,EAAEgC,EAAEhC,EAAEkU,IAAIlS,EAAEuF,EAAEs1N,GAAI,IAAI5lB,GAAI/iM,EAAElS,EAAEkS,EAAEA,GAAGlU,GAAGgC,EAAEA,EAAEA,EAAEuvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGn+K,EAAEA,EAAEkS,EAAEqd,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,EAAE,CAWiBoiM,CAAIvgX,EAAE86B,EAAE,CACjpB,SAAS0lV,IAAIxgX,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAQ0D,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAIlU,EAAEM,EAAEkD,EAAE4Q,EAAE,GAAIiuK,GAAIk6B,GAAG5T,IAAIh5K,GAAG8tI,MAAMkzK,QAAgB,IAAI9sU,EAAE,IAAIkiK,GAAIp2I,EAAEnd,GAAG3O,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAoC,IAAQmD,EAAE,EAAEyS,GAAR1B,EAAbooP,GAAhB78E,GAAGC,GAAIn6K,GAAG,IAAYkP,IAAmBzU,OAAOmD,EAAEyS,IAAIzS,GAAGrD,EAAEoU,EAAE/Q,IAAOtB,EAAE/B,GAAGuxB,GAAO0yJ,GAAIk6B,GAAG5T,IAAIvqM,EAAEyyU,SAAavwU,EAAElC,EAAEuxB,GAAE3vB,EAAE+9K,GAAG+5B,GAAI13M,EAAEkS,EAAEhS,GAAG,OAA0E6nM,GAA/DnoM,EAAE45W,IAAIt5W,GAAGo1R,MAAMl0E,KAAKlhN,EAAEkS,GAAG,EAAE,KAAK,KAAKlS,EAAEA,EAAEy9K,GAAG4qB,IAAIr2L,EAAEyzS,KAAK,KAAKzzS,IAAU81L,MAAM0/C,KAAKxnP,GAAGy2L,GAAI32L,EAAEkS,EAAEhS,EAAEN,GAAGm2K,GAAI7jK,EAAElS,EAAEJ,IAAGoU,EAAEhW,EAAE+B,GAAEqD,EAAEu6K,GAAG+5B,GAAI13M,EAAEkS,EAAE8B,GAAG,OAAyE+zL,GAA9D3kM,EAAEo2W,IAAIxlW,GAAGshR,MAAMl0E,KAAKptM,EAAE5B,EAAE,EAAE,KAAK,KAAK4B,EAAE9T,EAAEy9K,GAAG4qB,IAAIr2L,EAAEyzS,KAAK,KAAKzzS,IAAU81L,MAAM0/C,KAAK1zO,GAAG2iL,GAAI32L,EAAEkS,EAAE8B,EAAE5Q,GAAG2yK,GAAI7jK,EAAElS,EAAEoD,IAAYivP,GAATtyP,EAAE6vQ,GAAI5xQ,GAAS2/K,GAAG0pB,GAAIznM,EAAEwS,EAAE,GAAG,KAAKggP,GAAIryP,EAAE49K,GAAG0pB,GAAIjkM,EAAEgP,EAAE,GAAG,KAAKwiR,IAAG50R,EAAEA,EAAEhC,EAAE,IAAIqiO,GAAItgO,EAAEmS,GAAG8nQ,KAAMG,OAAOx8F,GAAG4qB,IAAIr2L,GAAG81L,MAAM4yH,MAAM,IAAI/yG,IAAI8rF,MAAMG,MAAQ,CACjpB,SAAS2sE,IAAIzgX,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAsH,IAApH2hS,IAAItyQ,EAAE,wBAAwB,GAAGxvB,EAAE49K,GAAG4qB,IAAIr2L,GAAGmrJ,MAAMupM,MAAM,KArkEzG,SAAa5mW,GAAG,IAAMuvB,EAAExvB,EAAM,IAAJA,EAAE,EAAMwvB,EAAE,IAAIo2I,GAAI3lK,EAAEkS,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAWy/K,GAAGC,GAAIruJ,GAAG,IAAMnsB,EAAErD,IAAIA,CAAE,CAqkEgB2gX,CAAIxuW,GAAG3M,EA1oBrH,SAAavF,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAEu1B,EAAEnoB,EAAgB,IAAd4c,EAAE,IAAI80L,GAAIi0E,KAAWD,MAAwDv9P,EAAE,EAAEnoB,GAA/DpN,EAASg5K,GAAGC,GAAG85G,IAAG,GAAGrsD,IAAI,IAAI,EAAE,CAACssD,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAe16R,OAAO48B,EAAEnoB,IAAImoB,EAAUw+L,GAAI/pM,EAAThqB,EAAEu1B,GAAW,IAAIw3I,IAA6F,OAAxFovB,GAAIy0C,GAAIhsB,GAAIgjE,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAIvtM,EAAEkS,EAAE,KAAK,IAAIguI,IAAK,IAAIC,IAAK,IAAI8pB,GAAI/3J,IAAI,IAAIg4J,GAAI36I,IAAWA,CAAC,CA0oBtIoxV,CAAIzuW,EAAEnS,GAAGC,EAAEA,EAAEi+K,GAAGgV,IAAGwzD,IAAI,GAAGv0O,EAAEA,EAAEqd,EAAErxB,OAAO,GAAG,GAAUm6R,MAAwDh3R,EAAE,EAAEzB,GAA/D6D,EAAS86K,GAAGC,GAAG85G,IAAG,GAAGrsD,IAAI,IAAI,EAAE,CAACssD,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAe16R,OAAOmD,EAAEzB,IAAIyB,EAAU,KAAPy5B,EAAEr3B,EAAEpC,KAAUs3R,KAAK79P,GAAG89P,KAAK99P,GAAG49P,OAAO/6G,GAAG6c,GAAIj1L,EAAEvF,EAAE86B,GAAGv1B,EAAE2M,EAAE4oB,EAAEnoB,GAAG,KAAK,IAAI0uB,KAAK,CAACiqQ,GAAItrS,EAAEkS,GAAG,KAAK,CAAE,IAAuD4B,EAAE,EAAE5T,GAAvDlC,EAAEugL,GAAGC,GAAG85G,IAAG,GAAGrsD,IAAI,IAAI,EAAE,CAACssD,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAc16R,OAAO4V,EAAE5T,IAAI4T,GAAGgnB,EAAE98B,EAAE8V,KAAM6kR,KAAK79P,GAAG89P,KAAK99P,GAAG49P,KAAK2xE,IAAIrqW,EAAE29K,GAAG6c,GAAIj1L,EAAEvF,EAAE86B,GAAGv1B,EAAE2M,EAAE4oB,EAAEnoB,GAAG,KAAK,KAAK,IAAuDP,EAAE,EAAEY,GAAvDL,EAAE4rK,GAAGC,GAAG85G,IAAG,GAAGrsD,IAAI,IAAI,EAAE,CAACssD,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,OAAc16R,OAAOkU,EAAEY,IAAIZ,IAAG0oB,EAAEnoB,EAAEP,KAAOumR,KAAK79P,GAAG89P,KAAK99P,GAAG49P,MAAM2xE,IAAIrqW,EAAE29K,GAAG6c,GAAIj1L,EAAEvF,EAAE86B,GAAGv1B,EAAE2M,EAAE4oB,EAAEnoB,GAAG,KAAK,KAAK3S,EAAEA,EAAE,KAAKuiS,IAAIhzQ,EAAE,CACjpB,SAASqxV,IAAI5gX,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAE,OAAOhT,EAAEqB,EAAEsR,GAAG,KAAK,EAAqH,GAAnH5S,EAAE49K,GAAG4qB,IAAIvoM,GAAGgoM,MAAM0/C,MAAM,KAAIn4N,EAAEouJ,GAAG4qB,IAAIxoM,EAAE8gX,KAAK,KAAmB5+L,GAAIk6B,GAAG5T,IAAIxoM,EAAEgxO,SAASxhN,EAAE0oR,GAAI1oR,IAAvCA,EAAE,IAAIiqJ,GAAqCpnK,EAAEurK,GAAG4qB,IAAIvoM,EAAE8pU,KAAK,IAAS,CAA6C,GAAG53T,IAA/C7Q,EAAEq0P,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACzhL,EAAEpU,EAAE4B,EAAEwS,EAAExS,EAAEwS,EAAEpS,MAAaA,EAAG,OAAOqB,EAAE6Q,EAAE6qM,GAAIxtL,EAAEluB,EAAEkuB,EAAEvvB,EAAEuvB,EAAEvvB,EAAEA,EAAE,CAAqB,GAApB8T,EAAE6pK,GAAG4qB,IAAIvoM,EAAE+pU,KAAK,IAAS,CAA6C,IAA5C/2T,EAAE0iP,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC//K,EAAE9V,EAAE4B,EAAEkU,EAAElU,EAAEkU,EAAE9T,MAAUA,GAAGkS,EAAG,OAAOc,EAAEd,EAAE6qM,GAAIxtL,EAAEvc,EAAEuc,EAAEA,EAAErd,EAAEqd,EAAEA,EAAE,CAAC,GAAGA,EAAErd,GAAG,EAAE,CAA0C,IAA9BS,EAAEgrK,GAAGohF,GAAhB/gQ,EAAE8gQ,IAAIvvO,EAAE,IAAe,GAAG9rB,EAAEk6K,GAAGohF,GAAI/gQ,GAAG,GAASyF,EAAEzD,EAAEkS,GAAGlU,EAAEkU,GAAGlU,EAAE+B,EAAEwvB,GAAG5c,EAAElP,EAAEA,EAAEk6K,GAAGohF,GAAI/gQ,GAAG,GAAG,OAAO2U,EAAET,GAAGA,EAAES,EAAE3S,IAAIyD,EAAEzD,EAAE2S,EAAE3S,IAAIyD,EAAEyO,EAAES,EAAET,EAAE,CAAC,MAAM,KAAK,EAAoD,OAAN3M,GAA5Cu1B,EAAE6iJ,GAAG4qB,IAAI5qB,GAAG0pB,GAAIrnM,EAAEoS,EAAE,GAAG,KAAK41L,MAAM0/C,MAAM,KAAQ1pP,EAAS88B,EAAE1oB,EAAEO,GAAG,KAAK,EAAE,OAAOpN,EAAE3F,EAAEsS,EAAE,KAAK,EAAE,OAAO3M,EAAE3F,EAAEsS,EAAE3M,EAAErF,EAAEgS,GAAI,OAAOs6T,IAAIxsU,GAAGkS,CAAC,CAEjpB,SAAS4uW,IAAI9gX,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAwH,OAAlHwgS,IAAItyQ,EAAE,2BAA2B,GAAGvvB,EAAE2S,EAAET,EAsGpF,SAAalS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAsK,IAApKpD,EAAEJ,EAAE0gL,GAAIC,GAAGgoB,IAAIvoM,EAAE2S,GAAG0qJ,MAAM6tJ,QAAQlrT,EAAEuF,EAAE+6K,GAAIC,GAAGgoB,IAAIvoM,EAAE2S,EAAEm1S,OAAO9nT,EAAEhC,EAAEgC,EAAE2S,EAAET,EAAEqd,EAAErxB,OAAOuF,EAAEzD,EAAEhC,EAAE,EAAEgV,EAAE,EAAEhT,EAAEoS,EAAE,EAAEpS,EAAEqB,EAAE,EAAErB,EAAEA,EAAE2wQ,GAAG1yF,GAAG2S,IAAGiD,IAAI,GAAG7zL,EAAEhC,EAAE,EAAE,IAAIgC,EAAEkS,EAAEy+P,GAAG1yF,GAAGwS,IAAGoD,IAAI,IAAI7zL,EAAEhC,EAAE,EAAE,IAAQ2U,EAAE,IAAIgzJ,GAAI3lK,EAAE2S,EAAET,GAAGS,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAQ,CAAuB,KAAtBqH,EAAEo4K,GAAGC,GAAIjrK,GAAG,KAAMvP,EAAEK,EAAMqQ,EAAE,IAAI6xJ,GAAIpgK,EAAEvF,GAAG8T,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,SAASmD,EAAEs8K,GAAGC,GAAI9pK,GAAG,KAAM1Q,EAAE4P,IAAIA,IAAIvP,CAAC,CAAoG,IAAnGzD,EAAE86B,EAAEmjJ,GAAGmV,IAAGsW,IAAI,GAAG12L,EAAE,GAAG,GAAGhT,EAAEuvB,EAAEi5M,GAAGp1C,IAAG,CAACS,IAAI6V,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC12L,EAAE,GAAG,GAAGhT,EAAEE,EAAE,IAAIoyK,GAAItyK,EAAEoD,EAAE,IAAIkvK,GAAIpgK,EAAE,EAAElS,EAAED,EAAE,EAAM+6B,EAAE,IAAI6qI,GAAI3lK,EAAE2S,EAAET,GAAG4oB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAQ,CAAkD,IAAjCuF,GAAhB8B,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAQ13B,EAAErD,EAAE,EAAEqD,EAAE,EAAEpF,EAAEuH,EAAEvF,EAAEuvB,EAAErxB,OAAOkU,EAAE,EAAM0B,EAAE,IAAI6xJ,GAAIpgK,EAAEvF,GAAG8T,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAAyB8U,GAAhB3R,EAAEs8K,GAAGC,GAAI9pK,GAAG,KAAQ1Q,EAAEpD,EAAE86B,EAAE9nB,GAAG3R,EAAEkuB,EAAEnsB,EAAEgP,GAAG/Q,EAAEnB,EAAEgS,EAAElS,EAAEJ,EAAE2vB,EAAEk0O,GAAG,IAAI30B,GAAG7hB,GAAGi1E,GAAI7gS,GAAGrB,EAAE27M,KAAK,IAAIpoE,KAAMrzI,EAAEujQ,GAAG,IAAI30B,GAAG7hB,GAAGm1E,GAAI/gS,GAAGrB,EAAE27M,KAAK,IAAIpoE,KAAMvzI,EAAEuvB,EAAEvc,GAAG,GAAG9S,EAAEqvB,EAAEvvB,EAAEuvB,EAAEvc,GAAG,GAAGuc,EAAEvvB,EAAEuvB,EAAEvc,GAAG,GAAG9S,EAAEH,GAAGwvB,EAAEnsB,GAAGlD,EAAEqvB,EAAE,GAAGwmJ,GAAI/1K,EAAEoD,EAAE/B,GAAG00K,GAAI/1K,EAAEE,EAAEmB,GAAQzB,EAAE5B,GAAPkU,GAAGnS,GAAQqS,GAAGF,EAAElS,EAAEuF,EAAE6uO,GAAIp0O,EAAEA,EAAEyD,EAAEu0M,GAAIp4M,IAAIw0O,GAAIp0O,EAAEkS,EAAEzO,EAAE2O,GAAGpS,EAAEoS,EAAE6gI,EAAK3/H,KAAKugB,IAAI7zB,EAAEoS,EAAExS,GAAGI,EAAEqB,EAAE4xI,EAAK3/H,KAAKugB,IAAI7zB,EAAEqB,EAAE+Q,GAAGpS,EAAED,GAAGmS,EAAEA,GAAG9O,CAAC,CAAC,CAtG9xB29W,CAAI/gX,GAAGA,EAAEgU,EAAE2pK,GAAG4qB,IAAIr2L,GAAGmrJ,MAAM2jN,MAAM,KAAK3/W,EAAEs8K,GAAG4qB,IAAIvoM,EAAE2S,EAAEsuW,KAAK,IAAIjhX,EAAE86B,EAAE,IAAI+lH,GAAW7gJ,EAAEgU,EAAErB,GAAG,KAAK,EAAE,KAAK,EAA8b,QAAQ6nW,IAAIx6W,EAAE86B,SAA3b,KAAK,EAA+B,IAA7B96B,EAAEgU,GAAG6zR,MAAMQ,KAAKmyE,IAAIx6W,EAAE86B,GAAG98B,EAAE,EAAMyF,EAAE,IAAIkiK,GAAI3lK,EAAEA,GAAGyD,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAASyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,IAAIzF,EAAEi1I,EAAK3/H,KAAKugB,IAAI71B,EAAE2U,EAAE3S,GAAMhC,EAAEgC,EAAEoS,IAAGpS,EAAEgU,EAAE+zR,IAAIyyE,IAAIx6W,EAAE86B,IAAG,MAAM,KAAK,EAA+B,IAA7B96B,EAAEgU,GAAG6zR,MAAMQ,KAAKmyE,IAAIx6W,EAAE86B,GAAG1oB,EAAE,EAAM7M,EAAE,IAAIogK,GAAI3lK,EAAEkS,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAS6B,EAAEwgL,GAAG3C,GAAIr4K,IAAI6M,EAAE6gI,EAAK3/H,KAAKugB,IAAIzhB,GAAGyuJ,GAAI9gK,GAAGA,IAAOqS,EAAEpS,EAAEqB,IAAGrB,EAAEgU,EAAEg0R,IAAIwyE,IAAIx6W,EAAE86B,IAAG,MAAM,KAAK,EAAyC0/U,IAAIx6W,EAAE,IAAI+pK,GAA/CouB,GAAGllD,EAAK3/H,KAAKwd,KAAK9wB,EAAE86B,EAAE58B,OAAOmD,EAAE,QAAwB,MAAM,KAAK,EAAkCm5W,IAAIx6W,EAAE,IAAIgqK,GAAxCmuB,GAAGllD,EAAK3/H,KAAKwd,KAAK9wB,EAAED,EAAEsB,EAAE,SAncxlB,SAAarB,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAc,IAAV8B,EAAE,IAAI+sK,GAAQ/iJ,EAAE,EAAEA,GAAGvvB,EAAEhC,EAAEuxB,KAAKxvB,EAAE,IAAIm5O,GAAIhnO,IAAK9O,EAAEpD,EAAEhC,EAAEuxB,EAAEhqB,EAAEgqB,EAAEhqB,EAAEgqB,EAAErxB,QAAQ6B,EAAE,IAAI0D,EAAE,IAAIkiK,GAAI3lK,EAAEE,GAAGuD,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAyBo0P,GAAhB3/O,EAAEgrK,GAAGC,GAAIn6K,GAAG,IAAUk6K,GAAG0pB,GAAI9hM,EAAEvF,EAAEhC,EAAEgC,EAAE86B,EAAEnoB,EAAEvP,IAAI,KAAkB,IAAb03B,EAAE,IAAI6qI,GAAIpgK,GAASu1B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAsC,GAA5By/K,GAAGC,GAAI9iJ,GAAG,IAAM96B,EAAEuvB,EAAErxB,QAAW02O,GAAI95M,GAAG5oB,EAAEA,EAAEqd,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGyqE,GAAI12O,EAAEA,EAAE3M,EAAE,CAmcqV27W,CAAIlhX,EAAEkS,GAAGqwR,IAAIhzQ,EAAE,CACvpB,SAAS4rU,IAAIn7V,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAErO,KAAK8N,EAAEpS,EAAEsE,KAAKiB,EAAEipU,IAAIxuU,GAAGsE,KAAKpE,EAAEoE,KAAK8N,EAAE7M,EAAEjB,KAAKtG,IAAIsG,KAAKpE,EAAEoE,KAAKlB,EAAEkB,KAAKtG,EAAE2/K,GAAG0pB,GAAI93K,EAAEgwN,GAAIj7O,KAAKpE,GAAGkD,GAAG,KAAK,KAAKmC,EAAEo4K,GAAG4qB,IAAIvoM,GAAGgoM,MAAM4yH,MAAM,IAAIt2T,KAAKqO,EAAEpN,EAAE06L,IAAI0zG,MAAMG,MAAMxvS,KAAK4N,EAAE,IAAIogK,GAAIhuK,KAAKvE,EAAE,IAAIguT,IAAIzpT,KAAKiB,GAAGoN,EAAEgrK,GAAG4qB,IAAIjkM,KAAK8N,EAAE0zO,KAAK,KAAKxhP,KAAK0P,EA1/DjQ,SAAahU,EAAEkS,EAAEqd,GAAG,OAAOvvB,IAAI27Q,KAAMI,KAAK,IAAIrzH,GAAc,GAAV4jF,IAAIp6N,EAAE,GAAM,IAAI81K,GAAIz4J,EAAErxB,QAAQ,IAAI4pL,GAAIv4J,EAAErxB,OAAO,CA0/DkKijX,CAAIjvW,EAAES,EAAErO,KAAKiB,GAAGjB,KAAKjD,EAAE,IAAIsvP,GAAIrsP,MAAMw2B,EAAE61O,GAAGpyF,GAAGC,GAAG4iM,IAAG,GAAGjjM,IAAI,IAAI,EAAE,CAAC75K,KAAKA,KAAKvE,EAAEuE,KAAKjD,EAAEiD,KAAK0P,KAAQ9B,IAAIypQ,KAAME,MAAO55F,GAAIk6B,GAAG5T,IAAIvoM,GAAGq9J,MAAMy4M,QAAwF5jW,GAAG2pQ,KAAK55F,GAAIk6B,GAAG5T,IAAIvoM,GAAGq9J,MAAMy4M,SAAS/1W,EAAE,IAAI8uU,IAAIvqU,KAAKiB,GAAGu1B,EAAEvL,EAAEuL,EAAEvL,EAAErxB,QAAQ6B,EAAEuE,KAAKirB,EAAE,IAAIozQ,GAAI5iS,EAAE4S,EAAEgrK,GAAGr5K,KAAK0P,EAAE,OAAW1P,KAAKirB,EAAE,IAAIuhL,GAAI5+L,EAAE5N,OAAjNvE,EAAE,IAAI8uU,IAAIvqU,KAAKiB,GAAGu1B,EAAEvL,EAAEuL,EAAEvL,EAAErxB,QAAQ6B,EAAEuE,KAAKirB,EAAE,IAAIyxO,GAAIjhQ,EAAE4S,EAAEgrK,GAAGr5K,KAAK0P,EAAE,OAAsJ+hK,GAAIj7I,EAAEx2B,KAAKirB,GAAGipV,IAAI19U,EAAEx2B,KAAKiB,GAAGjB,KAAKuP,EAqJ1oB,SAAa7T,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAI3U,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAIiZ,EAAoC,GAAlCtT,EAAE+wJ,GAAIC,GAAGgoB,IAAIvoM,EAAEA,EAAEoS,GAAGirJ,MAAMgkN,QAAW9xV,GAAG,IAAIvvB,EAAEA,EAAEhC,GAAG6+N,GAAIl/C,GAAG4qB,IAAIvoM,EAAEA,EAAEE,EAAE4hS,KAAK,MAAM34E,GAAInpN,EAAEA,EAAEE,GAAGu/K,MAAMC,MAAMT,KAAK,GAAGkqC,GAAInpN,EAAEA,EAAEE,EAAE0/K,KAAKX,KAAK,EAAG,OAAO,EAAK,GAAGj/K,EAAEA,EAAEuvB,EAAEq0R,KAAM,OAAO,EAAwB,IAAlBzyS,EAAE,EAAEkX,EAAE,EAAEpU,EAAE,IAAIq+J,GAAQt0K,EAAEgC,EAAEA,EAAEuF,EAAE6M,EAAE,EAAE/Q,EAAErD,EAAEE,OAAOkU,EAAE/Q,IAAI+Q,EAAE,CAAQ,IAAQxS,EAAE,EAAEwD,GAAR4P,EAAThV,EAAEoU,IAAmBlU,OAAO0B,EAAEwD,IAAIxD,EAAU,IAAPkU,EAAEd,EAAEpT,IAAQyB,IAAI49P,MAAMi4B,KAAf,CAAmP,IAAnMn3R,EAAEC,EAAEkS,EAAE4B,EAAEyb,EAAEnsB,GAAG0Q,EAAE1Q,GAAM0Q,EAAEzS,GAAG69P,KAAKn/P,EAAEmS,EAAE,EAAEyrK,GAAG4qB,IAAIz0L,GAAGk0L,MAAM0/C,MAAM,IAAIt1O,IAAIqtK,MAAMC,OAAOr3J,GAAGtoB,EAAEC,KAAQ6iC,EAAEsmL,GAAIr1M,GAAG2rK,MAAMG,OAAQv+I,OAAOinL,GAAGzlL,EAAE,IAAIomH,IAAMlpJ,EAAEwvB,EAAE,IAAIhqB,EAAE4jN,GAAIr1M,EAAE4rK,MAAQr+I,OAAOinL,GAAG/iN,EAAE,IAAIyjJ,OAAQ73I,GAAGpR,EAAEC,GAAQ2S,EAAE,IAAIm8N,GAAG7hB,GAAGm1E,GAAItuR,GAAG9T,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGz4M,IAAKmoB,EAAE6iJ,GAAGwtC,GAAGx4M,GAAG,IAAIxB,GAAGpR,EAAEwvB,EAAElH,GAAGtoB,EAAEmS,EAAU8tQ,GAAIhgR,EAAED,EAAZ+6B,EAAE/6B,EAAE/B,GAAyE,IAAI4rB,EAAE,IAAIklN,GAAG,IAAIpiB,IAA7Eh6M,EAAEyzF,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,CAACgrC,GAAIr1M,GAAG2rK,MAAMM,MAAMopC,GAAIr1M,EAAE+yL,SAA8B7mM,EAAE9B,OAAOwU,EAAE1S,IAAIorN,IAAGxhM,IAAKrmB,EAAEo6K,GAAGwtC,GAAGvhM,GAAG,KAAI/V,EAAE8pK,GAAG4qB,IAAIhlM,GAAGykM,MAAM2qE,MAAM,OAAUxhQ,GAAGpR,EAAEwvB,EAAElH,GAAGtoB,EAAEmS,EAAE8tQ,GAAIhgR,EAAED,EAAE8T,GAAnd,MAA1BI,EAAEsb,EAAEtb,EAAEsb,EAAErxB,QAAQ4V,EAAke,IAAI5T,EAAE,IAAIylK,GAAI1xJ,GAAG/T,EAAEF,EAAEE,EAAEqvB,EAAEA,EAAErxB,QAA2C,IAAlC4V,EAAE6pK,GAAGC,GAAI19K,GAAG,IAAIH,EAAEC,EAAEkS,EAAE4B,EAAEyb,EAAEnsB,GAAG0Q,EAAE1Q,GAAOuP,EAAE,IAAIm8N,GAAG7hB,GAAGm1E,GAAItuR,GAAG9T,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGz4M,IAAKmoB,EAAE6iJ,GAAGwtC,GAAGx4M,GAAG,IAAIxB,GAAGpR,EAAEwvB,EAAElH,GAAGtoB,EAAEmS,EAAU8tQ,GAAIhgR,EAAED,EAAZ+6B,EAAE/6B,EAAE/B,GAAciW,EAAEsb,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,EAAE,CAA0B,OAAzBjsK,EAAEf,EAAEkX,EAAErU,EAAK,GAAH9B,EAAKokK,KAAKnlK,EAAEkX,GAAGnW,EAAS8B,GAAGub,CAAC,CArJnb+xV,CAAIh9W,KAAKjD,EAAE,CAEvpB,SAASo5W,IAAIz6W,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAua,IAAra9V,GAAE,EAAKuH,EAAE,EAAE6M,EAAEpS,EAAE86B,EAAE5oB,EAAE9O,GAAG/B,EAAE6Q,EAAEhS,EAAEgS,EAAElS,EAAEJ,EAAE2vB,EAAEvvB,EAAEuvB,EAAErd,EAAE9O,GAAG,GAAGgxO,GAAIp0O,EAAEA,EAAEoS,EAAE4lM,GAAIr6B,GAAG0pB,GAAIrnM,EAAEA,EAAEoS,GAAG,IAAIpS,EAAE,EAAEuvB,IAAI6kN,GAAIp0O,EAAEkS,EAAEE,EAAEkuK,GAAIC,GAAG8mB,GAAIrnM,EAAEkS,EAAEE,KAAK/Q,EAAEkuB,EAAEvvB,EAAEuF,KAAK6M,GAAQpS,EAAEhC,KAAKgC,EAAEhC,EAAE+3K,GAAI/1K,EAAEA,EAAEg4M,GAAI,IAAIjiC,GAAI/1K,EAAEkS,EAAE7Q,KAAQtB,EAAEC,EAAEuvB,EAAErd,EAAE9O,GAAG,GAAGgxO,GAAIp0O,EAAEA,EAAEoS,EAAE4lM,GAAIr6B,GAAG0pB,GAAIrnM,EAAEA,EAAEoS,GAAG,IAAIpS,EAAE,EAAED,IAAIq0O,GAAIp0O,EAAEkS,EAAEE,EAAEkuK,GAAIC,GAAG8mB,GAAIrnM,EAAEkS,EAAEE,KAAK/Q,EAAEtB,EAAEC,EAAEuF,KAAIvF,EAAEgU,IAAI6zR,MAAME,OAAOpqH,GAAG0pB,GAAIrnM,EAAEA,EAAEoS,GAAG,IAAIpS,EAAEA,EAAEoS,GAAGurK,GAAG0pB,GAAIrnM,EAAEA,EAAEoS,EAAE,GAAG,IAAIpS,EAAEA,EAAEoS,IAAIpS,EAAEgU,GAAGg0R,MAAM1nH,GAAIC,GAAG8mB,GAAIrnM,EAAEkS,EAAEE,KAAKpS,EAAEqB,GAAGi/K,GAAIC,GAAG8mB,GAAIrnM,EAAEkS,EAAEE,EAAE,KAAKpS,EAAEqB,MAAMrD,GAAE,GAAW2U,EAAE,IAAIm8N,GAAG7hB,GAAGi1E,GAAIhwR,GAAGlS,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGz4M,IAAoBlP,EAAbk6K,GAAGwtC,GAAGx4M,GAAG,IAAQ4c,EAAEvxB,EAAKgC,EAAE86B,EAAEr3B,EAAEL,IAAIgP,IAAc7M,GAAIo4K,IAAf7pK,EAAE2mW,IAAIz6W,EAAEyD,IAAYzD,EAAE,IAAIA,EAAEhC,EAAEA,GAAGikL,GAAIk6B,GAAGroM,EAAE5B,KAAgC,OAA3BlS,EAAE86B,EAAE5oB,EAAE9O,GAAGgP,EAAyB,IAAIokM,GAAIwB,GAA/BzyM,GAAIvF,EAAEuvB,EAAErd,EAAE9O,GAAG,KAA0BsqN,OAAM1vN,GAAc,CAC1pB,SAASyjW,IAAIzhW,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAmM,IAAjMoB,EAAE,IAAI0+J,GAAI7/J,EAAE,IAAI2/J,GAAImvK,IAAIzhV,EAAEuvB,EAAEvvB,EAAED,EAAEs9U,KAAK1qU,EAAEmB,GAAG2tU,IAAIzhV,EAAED,EAAEC,EAAED,EAAEwhX,KAAK5uW,EAAEmB,GAAG9T,EAAEkS,EAAE,IAAK9O,EAAEypV,IAAI1/D,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAI56L,EAAE,KAAK,IAAIo5I,KAAM/3I,EAAE64U,IAAI1/D,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAI56L,EAAE,KAAK,IAAIq5I,KAAM/Y,EAAK3/H,KAAKsgB,IAAIxwB,EAAE4Q,IAAI8mB,EAAE,EAAMr3B,EAAE,EAAEA,EAAEkP,EAAE4c,EAAErxB,OAAO,EAAEuF,IAA0C,IAAlCg6M,GAAIh6M,EAAEkP,EAAE4c,EAAErxB,QAAbF,EAAqB2/K,GAAGhrK,EAAE4c,EAAE9rB,GAAG,KAAUvD,EAAEuD,EAAE,EAAEvD,EAAEyS,EAAE4c,EAAErxB,OAAOgC,IAAK46B,GAAG0qO,IAAIxlQ,EAAEhC,GAAGy/M,GAAIv9M,EAAEyS,EAAE4c,EAAErxB,QAAQy/K,GAAGhrK,EAAE4c,EAAErvB,GAAG,OAAoI,IAA5H8S,EAAE2qK,GAAG4qB,IAAIr2L,GAAG81L,MAAM89C,MAAM,KAAKhrN,GAAG,IAAIpoB,EAAEi9T,IAAIh9T,GAAE,EAAKK,IAAIhT,EAAEuF,IAAIvF,EAAEuF,EAAE,IAAIkoK,GAAIztK,IAAIoxT,IAAIpxT,EAAEuF,EAAEmN,EAAEC,EAAE3S,EAAEkS,IAAc2zO,IAAIlzO,EAAEK,GA4Bjf,SAAahT,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAsB,IAApB+Q,EAAE,IAAIkgK,GAAI7uK,EAAE,IAAI6uK,GAAQ3/J,EAAE,IAAIgzJ,GAAI3lK,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAA0BwlK,GAAjBn+J,EAAEo4K,GAAGC,GAAIjrK,GAAG,KAAWpN,EAAEu1B,EAAEvL,EAAErxB,QAAQylK,GAAIp+J,EAAEA,EAAElE,EAAEkuB,EAAErxB,QAAa,GAALqH,EAAExF,IAAOqS,EAAEmd,EAAEnd,EAAEmd,EAAErxB,QAAQqH,GAAa,GAALA,EAAEvH,GAAa,GAAPuH,EAAEA,EAAE2M,IAAOzO,EAAE8rB,EAAE9rB,EAAE8rB,EAAErxB,QAAQqH,GAAQxF,GAAG,EAAE,KAAkB,GAAZqS,EAAEmd,EAAErxB,QAA8B,IAAIqxB,EAAE,IAAIo2I,IAA7BpgK,EAAEo4K,GAAGk3D,GAAIziO,EAAE,GAAG,MAAqB/Q,GAAGkuB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAgC0lK,GAANviK,EAAfs8K,GAAGC,GAAIruJ,GAAG,KAASrd,EAAQ+gI,EAAK3/H,KAAKugB,IAAIxyB,EAAEnB,EAAEqF,EAAErF,EAAE,IAAIH,EAAEkzI,EAAK3/H,KAAKugB,IAAI9zB,EAAEsB,EAAEnB,GAAGwjK,GAAIriK,EAAEA,EAAEtB,EAAE,GAAQ,GAALsB,EAAEtB,IAAOqS,EAAEmd,EAAEnd,EAAEmd,EAAErxB,QAAQmD,GAAS,GAAGtB,GAAG,EAAE,CAAC,IAAI+6B,EAAE,IAAI6qI,GAAIliK,GAAGq3B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,SAASqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,MAAO56B,EAAEH,EAAE,KAAkB,GAAZ0D,EAAE8rB,EAAErxB,QAA8B,IAAIqxB,EAAE,IAAIo2I,IAA7BpgK,EAAEo4K,GAAGk3D,GAAIpxO,EAAE,GAAG,MAAqBq3B,GAAGvL,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,SAA0BF,EAAf2/K,GAAGC,GAAIruJ,GAAG,KAASvvB,GAAOuF,EAAE2M,EAAE,IAAY0xJ,GAAI5lK,EAAEi1I,EAAK3/H,KAAKsgB,IAAI51B,EAAEkC,EAAEqF,EAAErF,EAAE,IAAIyjK,GAAI3lK,EAAEA,EAAEA,EAAE,GAAQ,GAALA,EAAEA,IAAOyF,EAAE8rB,EAAE9rB,EAAE8rB,EAAErxB,QAAQF,GAAS,CAAC,CA5B/MwjX,CAAI7uW,GAAG/S,GAAG,EAAMyB,EAAE,IAAIskK,GAAIhzJ,GAAGtR,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAASkU,EAAEurK,GAAGC,GAAIv8K,GAAG,KAAQ4xI,EAAK3/H,KAAKskB,IAAIxlB,EAAEyB,EAAEzB,EAAEmd,GAAG65R,MAAcxpT,EAAEqzI,EAAK3/H,KAAKugB,IAAIj0B,EAAEwS,EAAElS,GAAGF,EAAED,EAAE22N,GAAGtkN,EAAE7M,EAAEvF,EAAEuvB,IAAgB,OAAbvvB,EAAED,EAAEC,EAAEA,EAAEqvQ,KAAYzvQ,EAAE,CAAC,CAC3pB,SAASgpT,IAAI5oT,EAAEkS,GAAG,IAAQ3M,EAAIoN,EAAI2tK,GAAIC,GAAGgoB,IAAIr2L,GAAGmrJ,MAAMgpF,QAAU,GAAGt+C,GAAI71L,EAAEm0O,IAAI,GAAK1oE,GAAG4qB,IAAIr2L,EAAEyzS,KAAK,OAAShzB,KAAMC,MAAM7qF,GAAI71L,EAAEyzS,IAAID,GAAIxzS,IAA6B,IAAzB3M,EAAEo4K,GAAG4qB,IAAIr2L,EAAEuvW,KAAK,KAAMzhX,EAAK+nM,GAAI71L,GAAG81L,MAAM89C,KAAK,IAAIsgE,IAAKr+G,GAAI71L,GAAG81L,MAAM89C,KAAK,IAAIohB,GAAI3hQ,EAAEvF,IAAwB,MAAlBm8M,GAAG5T,IAAIr2L,EAAEwvW,OAAe35K,GAAI71L,EAAEwvW,KAAKh0J,KAAM3S,GAAGxS,IAAIr2L,EAAEwwR,QAAQ3nF,IAAIwtE,KAAMG,QAAmBhnF,GAAI,IAAI0oB,GAAI,KAAK,IAAI7c,GAAIr7L,EAAElS,EAAE,KAAK,IAAIsoK,GAAItoK,IAAI0hM,GAAIyrF,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAIr7L,EAAEA,EAAE,KAAK,IAAIwoI,IAAK,IAAI6tB,GAAIvoK,IAAI2S,EAAE,IAAImtW,IAAI5tW,GAAG61L,GAAI71L,GAAG81L,MAAMk3H,KAAKvsT,GAAGqpP,GAAIh8P,EAAEA,GAAGk0O,GAAIl0O,EAAEA,GAAGizP,MAAMktB,KAAKxiG,GAAG4qB,IAAIr2L,EAAE2jW,KAAK,MAAM3hI,GAAIl0O,EAAEA,EAAEsyR,IAAI30G,GAAG4qB,IAAIr2L,EAAEyvW,KAAK,MAAMztI,GAAIl0O,EAAEA,EAAEuyR,IAAI50G,GAAG4qB,IAAIr2L,EAAEw2S,KAAK,MAAMx0E,GAAIl0O,EAAEA,EAAEwyR,IAAI70G,GAAG4qB,IAAIr2L,EAAE0vW,KAAK,MAAM1tI,GAAIl0O,EAAEA,EAAEkzP,IA9gE1lB,SAAalzP,GAAS,IAAIkS,EAA+C,OAAzDiyM,KAAgBpX,GAAIqX,IAAIpkN,MAAIkS,EAAE,IAAI04I,IAAM5qJ,EAAEA,EAAEs5N,GAAIlV,IAAIpkN,EAAEkS,IAAUyrK,GAAG6oB,GAAI4d,IAAIpkN,GAAG,IAAI,CA8gE4f6hX,CAAIlkM,GAAG4qB,IAAIr2L,EAAEwwR,KAAK,OAAOviF,GAAIngN,EAAEA,EAsK7nB,SAAaA,GAAG,IAAIkS,EAAEqd,EAAMuL,EAAmS,OAAjSvL,EAAEouJ,GAAG4qB,IAAIvoM,GAAGgoM,MAAM4yH,MAAM,IAAI1oT,EAAEyvM,GAAIsoH,KAAOtsJ,GAAG4qB,IAAIvoM,GAAGq9J,MAAMiwM,MAAM,OAASlvF,KAAMG,MAAMn+D,GAAIluM,EAAEu4T,KAAKxoJ,GAAIk6B,GAAG5T,IAAIvoM,EAAE8hX,OAAOr6I,GAAIv1N,GAAG+gP,MAAMktB,MAAMhtB,MAAMsjG,MAAMhvH,GAAIv1N,GAAG+gP,MAAMs/B,MAAMp/B,MAAMsjG,MAA0B,MAApBluJ,IAAIvoM,GAAG+xQ,KAAMC,OAAa5xD,GAAIluM,EAAEo4T,MAAMroJ,GAAIk6B,GAAG5T,IAAIvoM,EAAE+hX,QAAQ9/L,GAAIk6B,GAAG5T,IAAIvoM,EAAEgiX,SAASz0I,GAAIr7N,GAAG+gP,MAAMC,MAAMC,MAAMukG,MAAa/5K,GAAG4qB,IAAIvoM,EAAE2lT,KAAK,KAAKhzS,GAAG,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE46N,GAAI9F,GAAIv1N,GAAG+gP,MAAMktB,MAAMhtB,MAAM0iG,MAAM3iG,IAAImlG,KAAM9oU,EAAE0wK,IAAI0zG,MAAME,OAAOtmE,GAAI9F,GAAIA,GAAIv1N,GAAG+gP,MAAMktB,MAAMhtB,MAAM2iG,MAAMtjE,IAAI4kE,KAAKlkG,IAAIykG,KAAK58I,GAAGxS,IAAIvoM,EAAEghX,QAAQjmK,IAAI8sF,MAAMC,OAAOrgE,GAAIv1N,GAAG+gP,MAAMs/B,MAAMp/B,MAAMijG,MAAS7mU,EAAE0wK,GAAGq0G,OAAM7sE,GAAIv1N,GAAG+gP,MAAMktB,MAAMhtB,MAAM4iG,MAAMtuH,GAAIv1N,EAAEogR,IAAI4jE,KAAKzuH,GAAIv1N,EAAEqgR,IAAI8jE,MAAKt7I,GAAGxS,IAAIvoM,EAAE+4W,QAAQh+J,IAAIg+E,MAAME,OAAOl+E,GAAGxS,IAAIvoM,EAAE0iS,QAAQ3nF,IAAIwtE,KAAME,OAAOl7C,GAAIr7N,GAAG+gP,MAAMC,MAAMC,MAAM8kG,MAAMh2K,GAAIk6B,GAAG5T,IAAIvoM,EAAEiiX,QAAQx6I,GAAIv1N,GAAG+gP,MAAMs/B,MAAMp/B,MAAMgjG,MAAMl0K,GAAIk6B,GAAG5T,IAAIvoM,EAAEkiX,QAAQz6I,GAAIv1N,GAAG+gP,MAAMs/B,MAAMp/B,MAAMojG,MAlvB3zB,SAAav2V,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAE,OAAGw1M,GAAGxS,IAAIvoM,GAAGq9J,MAAMiwM,SAASvyJ,IAAIqjE,KAAMG,OAAev+Q,EAAEuF,GAAGw1M,GAAGxS,IAAIvoM,EAAE2oT,QAAQ5tG,IAAIq9D,KAAMI,OAAMz4Q,EAAE49K,GAAG4qB,IAAIvoM,EAAEmiX,KAAK,KAAK58W,EAAE08K,GAAIk6B,GAAG5T,IAAIvoM,EAAEkiX,QAAQnnK,GAAGxS,IAAIvoM,EAAE0oT,QAAQ3tG,IAAIk7D,KAAMG,MAAMlkQ,EAAEyrK,GAAG4qB,IAAIvoM,EAAEoiX,KAAK,IAAIpiX,EAAEuvB,EAAEvvB,EAAEA,EAAEuvB,EAAErxB,QAAeqH,GAAGxF,IAAIq4Q,KAAMI,OAAU,GAAHtmQ,GAAMA,EAAEqd,GAAE,CAkvBqjB8yV,CAAIriX,KAA2E86B,GAAvEigL,GAAGxS,IAAIvoM,EAAEstW,QAAQvyJ,GAAGwjE,KAAQ5gG,GAAG4qB,IAAIvoM,EAAE2oT,KAAK,KAAShrI,GAAG4qB,IAAIvoM,EAAEmiX,KAAK,QAAY/pG,KAAME,MAAMnlB,MAAM4jG,MAAM5jG,MAAM6jG,KAAKvvH,GAAIv1N,GAAG+gP,MAAMu/B,KAAK13P,IAAG,OAAO6iJ,GAAG4qB,IAAIvoM,EAAEsiX,KAAK,KAAK3vW,GAAG,KAAK,EAAE80N,GAAIv1N,GAAG+gP,MAAMu/B,MAAMr/B,MAAM+jG,MAAM,MAAM,KAAK,EAAE3pH,GAAI9F,GAAIA,GAAIv1N,GAAG+gP,MAAMs/B,MAAMp/B,MAAMqjG,MAAMhkE,IAAIskE,KAAK5jG,IAAI6kG,KAAuE,OAAjEh9I,GAAGxS,IAAIvoM,EAAEqmW,QAAQtrJ,IAAI0+D,KAAME,OAAOlyC,GAAIv1N,GAAG+gP,MAAMs/B,MAAMp/B,MAAMyjG,MAAa1kV,CAAC,CAtKriBqwW,CAAIrwW,IAAI61L,GAAI71L,EAAE22S,IAAIsmB,IAAInvU,EAAEA,EAAEkS,GAAG,CAI5pB,SAASswW,IAAIxiX,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAA0B,IAAxBzB,EAAEkkK,IAAIj1K,EAAEi1K,IAAI7yK,EAAE8yK,IAAIv4K,EAAEu4K,IAAQvjK,EAAE,IAAI2yJ,GAAIzzJ,EAAElU,GAAGgV,EAAEhT,EAAEgT,EAAEuc,EAAEA,EAAErxB,QAAS4V,EAAE6pK,GAAGC,GAAI5qK,GAAG,IAAmCkvM,GAA/B38M,EAAEo4K,GAAGA,GAAG+5B,GAAI13M,EAAE2S,EAAEmB,EAAE9T,GAAG,IAAIkS,EAAE,IAAU4B,EAAE5B,EAAEqd,EAAEzb,EAAE5B,EAAEnS,GAAGqS,EAAE6gI,EAAK3/H,KAAKsgB,IAAIxhB,EAAE7M,EAAEvH,GAAGqD,EAAE4xI,EAAK3/H,KAAKsgB,IAAIvyB,EAAEkE,EAAE6M,GAAG3O,EAAEwvI,EAAK3/H,KAAKugB,IAAIpwB,EAAE8B,EAAEvH,EAAEuH,EAAEoN,GAAG3U,EAAEi1I,EAAK3/H,KAAKugB,IAAI71B,EAAEuH,EAAE6M,EAAE7M,EAAEu1B,GAAwG,IAArGl7B,EAAE+9K,GAAG26B,IAAIt4M,EAAEuvB,GAAGkvI,MAAM40K,MAAM,KAAK2pC,IAAIh9W,EAAEuvB,EAAE9rB,EAAE2O,GAAGxS,EAAEsS,EAAEtS,EAAE2vB,GAAGvxB,EAAEqD,GAAGzB,EAAEG,EAAEH,EAAEI,IAAG,GAAK,GAAMmlT,IAAInlT,EAAEuvB,GAAGnd,EAAExS,EAAEsS,GAAG7Q,EAAEzB,EAAEG,GAAOA,EAAE,IAAIg/K,GAAI8oE,GAAI7nP,EAAEuvB,IAAIxvB,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAuBtsK,EAAEosV,IAAlBxvU,EAAEouJ,GAAGwB,IAAIp/K,GAAG,KAAY,GAAK,GAAMG,EAAE69M,IAAIxuL,GAAGvb,EAAEgqM,IAAIzuL,GAAGnsB,EAAE,IAAI6xM,GAAI/0M,EAAElC,EAAEkC,EAAEyS,EAAE,EAAEzS,EAAEkS,EAAElS,EAAE46B,EAAE,GAAGA,EAAE,IAAIm6K,GAAIjhM,EAAEhW,EAAEgW,EAAErB,EAAE,EAAEqB,EAAE5B,EAAE4B,EAAE8mB,EAAE,GAA6BkvS,IAA1Bt3T,EAAEmoN,GAAI,IAAI5lB,GAAIn6K,EAAE96B,EAAE86B,EAAE5oB,GAAG9O,GAASlD,EAAEyS,EAAEzS,EAAE46B,GAAG+kJ,GAAIz8K,EAAEsP,GAA6Bs3T,IAA1Bn2T,EAAEgnN,GAAI,IAAI5lB,GAAI7xM,EAAEpD,EAAEoD,EAAE8O,GAAG4oB,GAAS9mB,EAAErB,EAAEqB,EAAE8mB,GAAG+kJ,GAAI/kJ,EAAEjnB,GAAGirK,GAAInsK,EAAEvP,EAAEpD,EAAEoD,EAAE8O,GAAGktK,GAAIzsK,EAAEmoB,EAAE96B,EAAE86B,EAAE5oB,EAAG,CAE9pB,SAASuwW,IAAIziX,GAAGylM,GAAIzlM,EAAE,IAAI6wU,IAAIhqJ,GAAIJ,GAAIG,GAAIJ,GAAIG,GAAID,GAAI,IAAIh4B,GAAIg0N,KAAK,gBAAgB,yOAAyO,IAAIn2N,IAAKo2N,KAAKtrJ,IAAK2yE,MAAMS,SAASlvC,GAAIv7P,EAAE0iX,IAAIliB,IAAI3W,KAAKtuF,GAAIv7P,EAAE0iX,IAAIjiB,IAAI,IAAIllG,GAAIv7P,EAAE0iX,IAAI/hB,IAAIlyC,KAAKlzD,GAAIv7P,EAAE0iX,IAAItT,IAAIp3J,GAAI,IAAIujD,GAAIv7P,EAAE0iX,IAAIE,KAAKl1J,MAAM,IAAO6tC,GAAIv7P,EAAE0iX,IAAIrZ,IAAI7oL,IAAI4uJ,MAAM7zE,GAAIv7P,EAAE0iX,IAAIpa,IAAI9nL,IAAI4pK,MAAM7uF,GAAIv7P,EAAE0iX,IAAIna,IAAI/nL,IAAI6pK,MAAM9uF,GAAIv7P,EAAE0iX,IAAIpT,IAAI9uL,IAAI8pK,MAAM/uF,GAAIv7P,EAAE0iX,IAAIG,IAAIriM,IAAI+pK,MAAMhvF,GAAIv7P,EAAE0iX,IAAII,IAAItiM,IAAIgqK,MAAMjvF,GAAIv7P,EAAE0iX,IAAIK,IAAIviM,IAAIiqK,MAAMlvF,GAAIv7P,EAAE0iX,IAAIzyE,IAAIzvH,IAAIkqK,MAAMnvF,GAAIv7P,EAAE0iX,IAAItyE,IAAI5vH,IAAI+lH,KAAK,CAE/pB,SAASq5E,IAAI5/W,EAAEkS,GAAGA,EAAEmvB,MAAM8hM,GAAInjO,EAAEoS,GAAE,GAAK,GAAK,GAAK,GAAMkgL,GAAGpgL,GAAGutK,MAAMujM,OAAO7/I,GAAInjO,EAAEoS,GAAE,GAAK,GAAK,GAAK,GAAOkgL,GAAGpgL,EAAE+wW,MAAM9/I,GAAInjO,EAAEoS,GAAE,GAAM,GAAK,GAAK,GAAMkgL,GAAGpgL,EAAEgxW,MAAM//I,GAAInjO,EAAEoS,GAAE,GAAK,GAAK,GAAM,GAAMkgL,GAAGpgL,EAAEixW,MAAMhgJ,GAAInjO,EAAEoS,GAAE,GAAK,GAAM,GAAK,GAAMkgL,GAAGpgL,EAAEkxW,MAAMjgJ,GAAInjO,EAAEoS,GAAE,GAAM,GAAK,GAAK,GAAOkgL,GAAGpgL,EAAEmxW,MAAMlgJ,GAAInjO,EAAEoS,GAAE,GAAM,GAAK,GAAM,GAAMkgL,GAAGpgL,EAAEoxW,MAAMngJ,GAAInjO,EAAEoS,GAAE,GAAK,GAAM,GAAM,GAAMkgL,GAAGpgL,EAAEqxW,MAAMpgJ,GAAInjO,EAAEoS,GAAE,GAAK,GAAM,GAAK,GAAOkgL,GAAGpgL,EAAE0sS,MAAMz7E,GAAInjO,EAAEoS,GAAE,GAAK,GAAK,GAAK,GAAMkgL,GAAGpgL,EAAEsxW,MAAMrgJ,GAAInjO,EAAEoS,GAAE,GAAK,GAAK,GAAK,GAAMkgL,GAAGpgL,EAAE0sS,MAAMz7E,GAAInjO,EAAEoS,GAAE,GAAK,GAAK,GAAK,GAAMkgL,GAAGpgL,EAAEuxW,MAAMtgJ,GAAInjO,EAAEoS,GAAE,GAAK,GAAK,GAAK,GAAMkgL,GAAGpgL,EAAEwxW,MAAMvgJ,GAAInjO,EAAEoS,GAAE,GAAK,GAAK,GAAK,GAAMkgL,GAAGpgL,EAAEyxW,MAAMxgJ,GAAInjO,EAAEoS,GAAE,GAAK,GAAK,GAAK,GAAMkgL,GAAGpgL,EAAE0xW,MAAMzgJ,GAAInjO,EAAEoS,GAAE,GAAK,GAAK,GAAK,EAAK,CAGlqB,SAASyxW,IAAI3xW,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAE,GAAGd,EAAElS,GAAGuvB,EAAEwsM,KAAM,MAAM7oD,GAAI,IAAI2O,GAAIiiM,IAAIv0V,EAAEwvK,KAAKglL,MAAgC,GAA1Bx+W,EAAEs8S,IAAKxhE,MAAMwiF,KAAKtzS,GAAGusJ,KAAW,OAAOv2K,EAAEw2N,KAAKC,KAAKG,GAAG52N,EAAExF,GAAqB,GAAlB0D,EAAEo+S,GAAIghB,IAAItzS,GAAGwsJ,KAAU,CAAC,GAAM,MAAHh8K,EAAS,OAAO,KAAgB,IAAX/B,EAAE2/K,GAAG59K,EAAE,KAASshC,KAAM,MAAO,GAAa,IAAVruB,EAAE,IAAIsxK,GAAQ3xK,EAAE3U,EAAE29M,KAAKhpM,EAAE4oM,MAAOzgL,EAAEnoB,EAAE8oM,KAAKgB,GAAIzpM,EAAEvP,EAAEs4N,KAAKC,KAAKG,GAAG14N,EAAEq3B,IAAI9nB,EAAEhT,GAAG,IAAI,OAAOo/M,GAAIpsM,EAAEA,EAAEhT,EAAE9B,OAAO,EAAE,CAAmB,KAAlB4V,EAAE+tS,GAAIghB,IAAItzS,GAAGy0V,MAAW3iV,KAAK,CAAC,IAAIhgC,EAAEyS,EAAE6nM,KAAKt6M,EAAEk6M,MAAwB,IAAjBnpM,EAAEurK,GAAGt8K,EAAEo6M,KAAK,MAAU+nD,GAAGzjQ,GAAI,IAA0B,GAAM,OAA5BiT,EAAEZ,EAAE2pN,KAAKC,KAAKG,GAAG/pN,EAAErS,IAAe,OAAOiT,CAAE,CAAC,MAAMhT,KAAY,IAAI6pL,GAAb7pL,IAAE8pL,GAAI9pL,KAAY,KAAK,MAAMkzK,GAAIlzK,IAAE,CAAG,MAAMkzK,GAAI,IAAI2O,GAAI,mBAAmB9hL,EAAE,mBAAmBwvB,EAAEwvK,MAAM,CAAgB,OAAfphB,GAAGpuJ,EAAE,KAAKivK,KAAe,MAAHz+L,EAAQ,KAAK8pL,GAAG9pL,EAAE,KAAK,GAAG49K,GAAG59K,EAAE,KAAKC,EAAEgpF,GAAGjpF,IAAIq7O,IAAGl1B,GAAIkxJ,IAAI,GAAGz5L,GAAG59K,EAAE,MAAM0uN,GAAI1uN,EAAE,CAErqB,SAASyyS,IAAIxyS,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAA6nB,OAA3nBA,EAAEs4K,IAAI3jK,GAAE,EAAuFmoB,KAAjFr3B,EAAE6zW,IAAIt3W,EAAE66N,GAAI,IAAI5lB,GAAI/iM,EAAElS,EAAEkS,EAAEA,GAAGlS,GAAG6/K,GAAI,IAAIo1B,GAAI1lL,EAAEvvB,EAAEuvB,EAAErd,GAAG3M,GAAGs1N,GAAI,IAAI5lB,GAAIl1M,EAAEC,EAAED,EAAEmS,GAAGqd,QAAa0jH,EAAK3/H,KAAKskB,IAAIn0B,EAAEzD,EAAEA,EAAEA,IAAIikX,KAAKhxO,EAAK3/H,KAAKskB,IAAIn0B,EAAEyO,EAAElS,EAAEkS,IAAI+xW,KAAKhxO,EAAK3/H,KAAKskB,IAAIn0B,EAAEzD,EAAEkS,EAAElS,IAAIikX,KAAKhxO,EAAK3/H,KAAKskB,IAAIn0B,EAAEyO,EAAEA,EAAEA,IAAI+xW,MAAKxgX,EAAE6zW,IAAIt3W,EAAE66N,GAAI,IAAI5lB,GAAI/iM,EAAElS,EAAEkS,EAAEA,GAAGlS,GAAGuvB,EAAEhqB,OAAU0tI,EAAK3/H,KAAKskB,IAAIn0B,EAAEzD,EAAEA,EAAEA,IAAIikX,KAAKhxO,EAAK3/H,KAAKskB,IAAIn0B,EAAEyO,EAAElS,EAAEkS,IAAI+xW,OAAOhxO,EAAK3/H,KAAKskB,IAAIn0B,EAAEzD,EAAEkS,EAAElS,IAAIikX,KAAKhxO,EAAK3/H,KAAKskB,IAAIn0B,EAAEyO,EAAEA,EAAEA,IAAI+xW,MAAMnpV,EAAG98B,EAAEi1I,EAAK3/H,KAAKsgB,IAAI51B,EAAEqhP,GAAIxkB,GAAIp3N,EAAE8rB,KAAO5c,GAAE,IAAOlP,EAAE6zW,IAAIt3W,EAAE66N,GAAI,IAAI5lB,GAAI/iM,EAAElS,EAAEkS,EAAEA,GAAGlS,GAAGD,EAAEwF,MAASoN,IAAIsgI,EAAK3/H,KAAKskB,IAAIn0B,EAAEzD,EAAEA,EAAEA,IAAIikX,KAAKhxO,EAAK3/H,KAAKskB,IAAIn0B,EAAEyO,EAAElS,EAAEkS,IAAI+xW,OAAOhxO,EAAK3/H,KAAKskB,IAAIn0B,EAAEzD,EAAEkS,EAAElS,IAAIikX,KAAKhxO,EAAK3/H,KAAKskB,IAAIn0B,EAAEyO,EAAEA,EAAEA,IAAI+xW,MAAMnpV,KAAK98B,EAAEi1I,EAAK3/H,KAAKsgB,IAAI51B,EAAEqhP,GAAIxkB,GAAIp3N,EAAE1D,MAAa/B,CAAC,CACvqB,SAASkmX,IAAIlkX,GAAGylM,GAAIzlM,EAAE,IAAI6wU,IAAIpqJ,GAAIG,GAAIJ,GAAIG,GAAID,GAAI,IAAIh4B,GAAIy1N,KAAKC,KAAK,yRAAyR,IAAI7pO,IAAK8pO,OAAO9oH,GAAIv7P,EAAEmkX,IAAI5U,IAAI/uL,IAAIylJ,MAAM1qE,GAAIv7P,EAAEmkX,IAAIG,KAAK52J,MAAM,IAAO6tC,GAAIv7P,EAAEmkX,IAAI7b,IAAI9nL,IAAI4lJ,MAAM7qE,GAAIv7P,EAAEmkX,IAAI5b,IAAI/nL,IAAI6lJ,MAAM9qE,GAAIv7P,EAAEmkX,IAAI7U,IAAI9uL,IAAI8lJ,MAAM/qE,GAAIv7P,EAAEmkX,IAAItB,IAAIriM,IAAI+lJ,MAAMhrE,GAAIv7P,EAAEmkX,IAAIrB,IAAItiM,IAAIgmJ,MAAMjrE,GAAIv7P,EAAEmkX,IAAIpB,IAAIviM,IAAIimJ,MAAMlrE,GAAIv7P,EAAEmkX,IAAIjhD,IAAI1iJ,IAAIkmJ,MAAMnrE,GAAIv7P,EAAEmkX,IAAI7gD,IAAI9iJ,IAAImmJ,MAAMprE,GAAIv7P,EAAEmkX,IAAI1gD,IAAIjjJ,IAAIomJ,MAAMrrE,GAAIv7P,EAAEmkX,IAAIxgD,IAAInjJ,IAAIqmJ,MAAMtrE,GAAIv7P,EAAEmkX,IAAI/gD,IAAI5iJ,IAAIsmJ,KAAK,CAExqB,SAASy9C,IAAIvkX,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAE,GAAQ,GAAL6Q,EAAE3M,GAA0B,GAAQ,OAAZ6M,EAAEF,GAAOA,GAAc,MAALlS,EAAEkS,EAAhB,CAAkH,IAAnFy8U,IAAI3uV,GAAG0yW,IAAI1yW,GAAG2uV,IAAIv8U,GAAGsgW,IAAItgW,GAAGmd,EAAE0uJ,GAAGmV,IAAGsW,IAAI,GAAG1pM,EAAEkS,EAAEhU,OAAOkU,EAAEF,EAAEhU,OAAO,GAAG,GAAGmD,EAAE,EAAEtB,EAAE,EAAE4S,EAAE,EAAQ5S,EAAEC,EAAEkS,EAAEhU,QAAQyU,EAAEP,EAAEF,EAAEhU,QAAgD,GAAxCqH,EAAEvF,EAAEkS,EAAEnS,GAAG+6B,EAAE96B,EAAEkS,EAAEnS,EAAE,GAAG0D,EAAE2O,EAAEF,EAAES,GAAG3U,EAAEoU,EAAEF,EAAES,EAAE,GAAMmoB,EAAEr3B,EAAG8rB,EAAEluB,KAAKrB,EAAEkS,EAAEnS,KAAKwvB,EAAEluB,KAAKrB,EAAEkS,EAAEnS,UAAU,GAAG+6B,GAAGr3B,GAAG8B,GAAGvH,EAAMyF,GAAG8B,GAAGu1B,GAAG98B,EAAG+B,GAAG,EAAU0D,GAAG8B,GAAGvF,EAAEkS,EAAEnS,GAAG/B,EAAE,EAAE2U,GAAG,GAAUmoB,GAAG98B,GAAGuxB,EAAEluB,KAAKkE,EAAEgqB,EAAEluB,KAAKoC,EAAE,EAAE1D,GAAG,IAAOwvB,EAAEluB,KAAKkE,EAAEgqB,EAAEluB,KAAKoC,EAAE,EAAEzD,EAAEkS,EAAEnS,GAAG/B,EAAE,EAAE2U,GAAG,OAAQ,MAAG3U,EAAEuH,GAAa,MAAM2tK,GAAI,IAAIiK,GAAG,4CAA4Cn9K,EAAEkS,EAAEnS,GAAG,IAAIC,EAAEkS,EAAEnS,EAAE,GAAG,QAAQqS,EAAEF,EAAES,GAAG,IAAIP,EAAEF,EAAES,EAAE,GAAG,MAAvHA,GAAG,CAAyH,CAAE,KAAM5S,EAAEC,EAAEkS,EAAEhU,QAAQqxB,EAAEluB,KAAKrB,EAAEkS,EAAEnS,KAAKwvB,EAAEluB,KAAKrB,EAAEkS,EAAEnS,KAAKC,EAAEkS,EAAE+rK,GAAGmV,IAAGsW,IAAI,GAAGroM,EAAE,GAAG,GAAGiiQ,IAAI/zO,EAAE,EAAEvvB,EAAEkS,EAAE,EAAE7Q,EAAnkB,OAAlD6+W,IAAIlgX,EAAEkS,EAAinB,CAG1qB,SAAS68O,IAAI/uP,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAE,IAAII,EAAEkS,EAAG,OAAO,EAA4D,IAAtDS,EAAE,KAAKK,EAAE,KAA0BzN,EAAE,GAAvBvH,EAAE,IAAI4hR,GAAI,KAAK,OAAY5/Q,EAAE,GAAGA,EAAEkS,EAAE4B,EAAE9V,EAAQ8V,EAAE9T,EAAEuF,IAAI6M,EAAE7M,EAAE9B,EAAEuP,EAAEA,EAAEc,EAAEA,EAAEA,EAAE9T,EAAEuF,GAAmBA,GAAhBxF,EAAEC,EAAEA,EAAEk5S,GAAGhnS,EAAE4B,EAAE/T,IAAO,EAAE,EAAE,EAAK,GAAHA,KAAQwvB,EAAEA,GAAGsyN,GAAI/tO,EAAEvO,EAAEgqB,EAAExvB,MAAM4S,EAAEmB,GAAUA,GAAGA,EAAE5B,GAAKmwK,GAAIvuK,EAAE9T,EAAEuF,MAAQ88K,GAAIvuK,EAAE9T,EAAE,EAAEuF,IAAKyN,EAAEA,EAAEhT,EAAEoS,GAAG8oP,GAAIpnP,EAAEvO,GAAY88K,GAAIvuK,EAAE9T,EAAE,EAAEuF,MAAK3F,EAAEoT,EAAEhT,EAAE,EAAEoS,MAAaiwK,GAAIziL,EAAEI,EAAE,EAAEoS,KAAMiwK,GAAIziL,EAAEI,EAAEoS,KAAsC0oB,EAAEr3B,EAAEzD,EAAE,IAAIgT,EAAE,EAAE,EAAEqvK,GAAIziL,EAAEI,EAAEoS,IAAK3O,EAAEzD,EAAE86B,GAAGmgO,GAAIjoP,EAAEZ,GAAIiwK,GAAIziL,EAAEI,EAAE,EAAEoS,MAAM3O,EAAEzD,EAAE86B,GAAGogO,GAAIloP,EAAEZ,IAAI0B,EAAE5B,EAAEzO,EAAEzD,EAAE86B,GAAG5oB,GAAE,EAAKzO,EAAEzD,EAAE86B,GAAG96B,EAAE,GAAGkS,GAAE,EAAMzO,EAAEzD,EAAE86B,GAAG96B,EAAE,GAAGkS,GAAE,IAApKc,EAAEd,GAAE,EAAMtS,EAAEsS,GAAE,EAAK4B,EAAE5B,GAAE,KAA6S,OAAnJS,IAAG4c,EAAErd,GAAE,EAAKqd,EAAExvB,EAAE4S,EAAEpN,EAAKuO,GAAGnB,IAziChjB,SAAa3S,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAyC,IAAnCv1B,EAAO,OAAXu1B,EAAE5oB,GAAMnS,GAASC,EAAEA,EAAEk5S,GAAG3pR,EAAExvB,EAAE+6B,EAAE/6B,GAAG,EAAE,EAAE,EAAQ+6B,EAAE96B,EAAEuF,IAAIgqB,GAAGuL,EAAEA,EAAE96B,EAAEuF,GAAGA,EAAEvF,EAAEA,EAAEk5S,GAAG3pR,EAAExvB,EAAE+6B,EAAE/6B,GAAG,EAAE,EAAE,EAAE+6B,EAAE96B,EAAEuF,GAAGxF,EAAEA,EAAEmS,EAAEqd,EAAErd,EAAEnS,EAAEC,EAAE,GAAGuvB,EAAEvvB,EAAE,GAAGD,EAAEC,EAAE,GAAGuvB,EAAEvvB,EAAE,GAAGuvB,EAAEvvB,EAAE,GAAG,KAAKuvB,EAAEvvB,EAAE,GAAG,IAAI,CAyiC2YwkX,CAAIxkX,EAAEhC,EAAE2U,EAA3BtR,EAAE,IAAIu+Q,GAAI9rQ,EAAE/T,EAAE+T,EAAEvO,IAAgByN,GAAGL,IAAIK,EAAE3R,IAAG2R,EAAEhT,EAAEgT,EAAEhT,EAAE,IAAI8T,EAAE,EAAE,GAAGA,EAAE9T,EAAG8T,EAAE9T,EAAE,GAAK,EAAF,KAAOA,EAAEuvB,GAAEvvB,EAAEkS,EAAElU,EAAEgC,EAAE,GAAKA,EAAEkS,IAAIlS,EAAEkS,EAAEA,GAAE,GAAcqd,EAAErd,CAAC,CAEnrB,SAASuyW,IAAIzkX,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAE,GAAGuc,EAAuB,IAApBxvB,GAAG,EAAEsB,EAAE,IAAIkoN,GAAIr3M,EAAE,GAAS7Q,EAAE6Q,EAAE7Q,EAAEtB,EAAEk/K,MAAK,CAAoE,GAAhEqqC,GAAIjoN,EAAE6Q,EAAE7Q,EAAEtB,EAAEk/K,MAAfx7K,EAAqBk6K,GAAGt8K,EAAEtB,EAAEs7M,GAAGh6M,EAAEkuB,EAAEluB,EAAE6Q,KAAK,IAA+B,OAA1B4B,EAAE9T,EAAEuvB,EAAE9rB,EAAE8rB,EAAEnsB,GAAGK,EAAEL,GAAGpD,GAAa,CAAwB,IAAvB2S,EAAE5S,EAAE,EAAE+6B,EAAE,IAAIyuL,GAAIr3M,EAAE7Q,EAAE6Q,GAAS4oB,EAAE5oB,EAAE4oB,EAAE/6B,EAAEk/K,MAA8D,GAAM,OAA9DjsK,EAAE+2M,GAAI/pN,GAAGspN,GAAIxuL,EAAE5oB,EAAE4oB,EAAE/6B,EAAEk/K,MAAMtB,GAAG7iJ,EAAE/6B,EAAEs7M,GAAGvgL,EAAEvL,EAAEuL,EAAE5oB,KAAK,MAAMlS,GAAa,CAAI6gK,GAAI7tJ,GAAPL,EAAUK,EAAG,KAAK,CAAEc,GAAG/T,EAAE4S,GAAG,EAAE3S,EAAEuvB,EAAE9rB,EAAE8rB,EAAEnsB,GAAGK,EAAEL,GAAGpD,EAAE8T,EAAE9T,EAAEuvB,EAAE9rB,EAAE8rB,EAAEnsB,GAAGK,EAAEL,GAAGrD,GAAG8gK,GAAI/sJ,GAAGA,GAAG9T,EAAEuvB,EAAE9rB,EAAE8rB,EAAEnsB,GAAGK,EAAEL,GAAG8O,EAAE,CAAC,CAAI2uJ,GAAI/sJ,GAAP/T,EAAU+T,CAAE,KAAM,CAAK,IAAJvO,EAAE,EAAM6M,EAAE,IAAIuzJ,GAAIzzJ,GAAGE,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAASuF,EAAEk6K,GAAGC,GAAIxrK,GAAG,IAAuB,MAAnBpS,EAAEuvB,EAAE9rB,EAAE8rB,EAAEnsB,GAAGK,EAAEL,GAAGpD,IAAUuF,EAAE0tI,EAAK3/H,KAAKugB,IAAItuB,EAAE+6K,GAAItgL,EAAEuvB,EAAE9rB,EAAE8rB,EAAEnsB,GAAGK,EAAEL,GAAGpD,KAAU,IAALuF,GAAG,EAAMvH,EAAE,IAAI2nK,GAAIzzJ,GAAGlU,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAASuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,IAA0B,MAAnBgC,EAAEuvB,EAAE9rB,EAAE8rB,EAAEnsB,GAAGK,EAAEL,GAAGpD,IAAS8T,EAAEw4N,IAAItsO,EAAEhC,EAAE,IAAIsoT,IAAI/gT,EAAE,EAAEvF,EAAEuvB,EAAE9rB,EAAE8rB,EAAEnsB,GAAGK,EAAEL,GAAGpD,EAAE8T,EAAE9T,EAAEuvB,EAAE9rB,EAAE8rB,EAAEnsB,GAAGK,EAAEL,GAAGrD,EAAE+T,EAAE9T,EAAEuvB,EAAE9rB,EAAE8rB,EAAEnsB,GAAGK,EAAEL,GAAG8O,EAAE,EAAG,CAAC,CAGprB,SAASg5V,IAAIlrW,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAS,IAAPkU,EAAE,KAASnS,EAAE,IAAI4lK,GAAI3lK,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAA0BoiL,GAAIupC,IAArBt6L,EAAEouJ,GAAGC,GAAI79K,GAAG,MAAe4S,EAAE4c,EAAExvB,EAAE,IAAIC,GAAGuvB,EAAErd,EAAE,KAAUqd,EAAEhqB,GAAGgqB,EAAEhqB,EAAE05K,KAAK,GAAQ,GAAL1vJ,EAAEA,KAAOrd,IAAIA,EAAE,IAAIogK,IAAKpgK,EAAEqd,EAAErd,EAAEqd,EAAErxB,QAAQqxB,GAAG,GAAGrd,EAAG,KAAkB,GAAZA,EAAEqd,EAAErxB,QAAU,CAAoB,IAAnBqxB,EAAEouJ,GAAGk3D,GAAI3iO,EAAE,GAAG,MAAYA,GAAGqd,EAAErd,EAAEqd,EAAErxB,OAAO,EAAG,KAAQqxB,EAAErd,IAAIqd,EAAErd,EAAE,IAAIogK,IAAlBx3I,EAAuB,IAAI6qI,GAAIp2I,EAAErd,GAAI4oB,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAA0B,GAAGgkL,GAAI2nC,IAAxBtkN,EAAEo4K,GAAGC,GAAI9iJ,GAAG,MAAkBnoB,EAAEpN,EAAExF,EAAE,IAAIC,IAAIkiL,GAAI2nC,GAAIt6L,EAAE5c,EAAE4c,EAAExvB,EAAE,IAAIC,IAAI,GAAGmmM,GAAInmM,EAAEuF,EAAE,GAAG4gM,GAAInmM,EAAEuvB,EAAE,GAAI,OAAO,IAAIinL,GAAIjxM,EAAEgqB,QAAS,GAAG+wJ,GAAIupC,GAAItkN,EAAEoN,EAAEpN,EAAExF,EAAE,IAAIC,GAAGsgL,GAAIupC,GAAIt6L,EAAE5c,EAAE4c,EAAExvB,EAAE,IAAIC,GAAI,OAAO,IAAIw2M,GAAIjxM,EAAEgqB,GAAK,IAAI9rB,IAAI8rB,EAAEhqB,IAAIgqB,EAAEhqB,EAAE,IAAI+sK,IAAK/iJ,EAAEhqB,GAAGo2M,KAAKl4M,EAAE83M,QAAO5oM,EAAEgrK,GAAGl6K,EAAEg4M,KAAK,MAAWvpM,IAAIS,EAAET,EAAE,IAAIogK,IAAUo5D,GAAI,GAAhC1tO,EAAuB2U,EAAET,GAAWqd,EAAErxB,QAAQgwM,GAAIlwM,EAAEuxB,EAAE,EAAEA,GAAG5c,EAAE4c,GAAGvxB,EAAEuxB,EAAErxB,SAASgU,EAAEqd,EAAErd,EAAEqd,EAAErxB,QAAQyU,EAAQ,CAAE,OAAO,IAAI,CACtrB,SAAS+xW,IAAI1kX,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAQtR,EAAE,GAAM,MAAHrB,EAAS,OAAO+3L,IAAkB,GAAM,MAAlB7lL,EAAElS,EAAE65N,GAAG75N,EAAEkS,GAAe,MAAO,QAA+B,IAAvBqd,EAAE,IAAI0+Q,GAAIjqH,IAAI,IAAI,KAAalpJ,EAAE,EAAEnoB,GAARpN,EAAEvF,GAAU9B,OAAO48B,EAAEnoB,IAAImoB,EAAgB,OAAb/6B,EAAEwF,EAAEu1B,KAA4B,IAAJ,EAARkuD,GAAGjpF,GAAG/B,IAAYM,MAAMC,QAAQwB,KAAKsB,EAAEq3O,GAAG34O,KAAQ,IAAIsB,GAAG,GAA0HwoL,GAAG9pL,EAAE,KAAKkxQ,GAAI1hP,EAAEwxT,IAAIpjK,GAAG59K,EAAE,OAAO8pL,GAAG9pL,EAAE,KAAKkxQ,GAAI1hP,EAAEggT,IAAI5xJ,GAAG59K,EAAE,OAAO8pL,GAAG9pL,EAAE,KAAKkxQ,GAAI1hP,EAAE6nT,IAAIz5J,GAAG59K,EAAE,OAAO8pL,GAAG9pL,EAAE,MAAMkxQ,GAAI1hP,EAAEigT,IAAI7xJ,GAAG59K,EAAE,QAAQ8pL,GAAG9pL,EAAE,IAAIkxQ,GAAI1hP,EAAEuxT,IAAInjK,GAAG59K,EAAE,MAAM8pL,GAAG9pL,EAAE,KAAKkxQ,GAAI1hP,EAAE4yT,IAAIxkK,GAAG59K,EAAE,OAAO8pL,GAAG9pL,EAAE,KAAKkxQ,GAAI1hP,EAAEsxT,IAAIljK,GAAG59K,EAAE,OAAO8pL,GAAG9pL,EAAE,MAAMkxQ,GAAI1hP,EAAEqxT,IAAIjjK,GAAG59K,EAAE,OAA3WmS,EAAElS,EAAEmH,GAAGpH,IAAKwvB,EAAEvvB,EAAqB48M,GAAIrtL,EAAEvvB,EAAEuvB,EAAErd,GAA5Bqd,EAAEvvB,EAAE,IAAI8tN,GAAIv+L,EAAExvB,GAAiB28M,GAAIntL,EAAEvvB,EAAE,UAAmCixQ,GAAI1hP,EAAEm1V,IAAzB34F,GAAGhsR,GAAK,IAAIypO,GAAIt3N,KAA+R++P,GAAI1hP,EAAK,MAAHxvB,EAAQg4L,IAAI02B,GAAI1uN,IAAK,OAAQwvB,EAAEvvB,EAAkB,GAAZuvB,EAAEhqB,EAAErH,OAAUqxB,EAAEvvB,EAAEA,EAAEuvB,EAAEvvB,EAAEA,EAAG,GAAGuvB,EAAEhqB,EAApCgqB,EAAEA,CAAoC,CACzrB,SAAS0lU,IAAIj1V,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAIoN,EAAI3U,EAAEoU,EAAE/Q,EAAEyS,EAAIlU,EAAIwD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAA0iB,IAAnhBvB,EAAEknU,IAArBmlB,IAAI7sV,GAAE,GAAM,IAAgBnS,IAAI2S,EAAEulS,GAAIvlS,IAAIuB,EAAEqsK,GAAIC,GAAG+3B,IAAIpmM,GAAGqoJ,MAAMk9J,QAAWnuG,GAAS,GAAL52M,EAAER,GAAT8B,EAAe2pK,GAAGjrK,EAAE1S,EAAEA,EAAEuvB,EAAE,GAAIzb,EAAE6pK,GAAGoiG,IAAGrtQ,EAAE,GAAG,GAAMA,EAAER,EAAE,GAAa02O,GAAVvnP,EAAE,IAAIixK,GAAU,IAAI6iF,GAAIziP,EAAE,EAAEA,EAAER,IAAgC29P,GAAbh8P,EAAE,IAAI21U,IAAnBsV,IAAIz9V,EAAE4S,EAAEjU,EAAEA,IAAsBkS,GAAGqd,EAAEA,EAAEA,EAAEA,EAAErxB,QAAQ2V,GAAUA,EAAE8pK,GAAG+5B,GAAI13M,EAAEkS,EAAdnS,EAAgBg+M,IAAI7rM,GAAwB8rM,IAAI9rM,IAAxB,KAAkClU,EAAE+/M,IAAI7rM,GAAGnS,IAAI/B,EAAEggN,IAAI9rM,IAAIS,EA78B3W,SAAa3S,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAwK,OAAtKA,EAAEwnV,IAAO5nE,MAAHplR,EAASslR,IAAK9/Q,EAAE0tI,EAAK3/H,KAAKskB,IAAI53B,EAAEkS,IAAGqd,EAAE0jH,EAAK3/H,KAAKskB,IAAI1lB,EAAE4oB,EAAE96B,EAAEkS,IAAQ3M,IAAGA,EAAEgqB,EAAExvB,EAAEwlR,MAAIh2P,EAAE0jH,EAAK3/H,KAAKskB,IAAI53B,EAAEA,IAAQuF,IAAGA,EAAEgqB,EAAExvB,EAAEylR,MAAIj2P,EAAE0jH,EAAK3/H,KAAKskB,IAAI1lB,EAAES,EAAE3S,EAAEA,IAAQuF,IAAGA,EAAEgqB,EAAExvB,EAAEulR,KAAWvlR,CAAC,CA68BmK4kX,CAAI3wW,EAAEhW,GAAGoU,EAAE6B,EAAEjU,EAAEA,EAAK2S,EAAE3S,GAAGoS,GAAG6gI,EAAK3/H,KAAKskB,IAAI5jB,EAAE9B,EAAE4B,EAAE5B,GAAG9O,EAAE,IAAI6xM,GAAInhM,EAAE9T,GAAG8T,EAAE5B,EAAE8B,EAAE9B,GAAG,KAAQE,GAAG6gI,EAAK3/H,KAAKskB,IAAI5jB,EAAEhU,EAAE8T,EAAE9T,GAAGoD,EAAE,IAAI6xM,IAAKnhM,EAAE9T,EAAEgU,EAAEhU,GAAG,EAAE8T,EAAE5B,IAAKykL,GAAF52L,EAAMC,EAAED,EAA0BC,EAAEuvB,EAA1Brd,EAAE,IAAIkuT,IAAIvsT,EAAElB,EAAEvP,EAAEgP,IAAgCukL,GAAI32L,EAAEkS,EAAEA,EAAE2B,IAAO3B,EAAEtS,IAAIsS,EAAEtS,EAAE,IAAI06L,GAAIrN,IAAG/6K,EAAE,EAAE,IAAatS,EAAE,IAAIm/K,GAAf7sK,EAAEtS,GAAoBA,EAAE2F,GAAG3F,EAAE5B,EAAEihL,MAAwB15K,EAAEy5V,IAAIh/V,EAArB29K,GAAGwB,IAAIv/K,GAAG,MAAe,EAAK,EAAE,GAAG2vB,EAAEA,EAAEA,EAAEA,EAAErxB,QAAQqH,CAAE,CAE1rB,SAASg5O,IAAIv+O,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAEu1B,EAAIr3B,EAAEzF,EAAEoU,EAA+F,GAA7FA,EAAEpS,EAAEuvB,GAAGrd,IAAIA,EAAE4gK,KAAK9yK,EAAEuvB,EAAErd,EAAe,IAAJ,EAALlS,EAAEgtN,KAAoB,IAAJ,EAALhtN,EAAEgtN,MAAUhvN,EAAE,IAAIs0O,GAAItyO,EAAE,EAAE,EAAEoS,EAAEpS,EAAEuvB,GAAIA,EAAQA,EAAE+uM,GAAGtgO,GAAVuxB,EAAEvxB,GAAcoU,GAAGF,EAAG,GAAG23K,GAAG7pL,EAAE8sN,GAAG,KAAS9sN,EAAEgtN,IAAI,KAAK,GAAIz9L,EAAEouJ,GAAG39K,EAAE8sN,GAAG,KAAK2qB,GAAGvlO,EAAEqd,GAAWvvB,EAAEgtN,IAAI,KAAK,MAAK96M,IAAOs8N,MAAHt8N,EAASosO,MAAOlsO,IAAOo8N,MAAHp8N,EAASksO,KAASt+O,EAAE8sN,GAAGokJ,OAAMlzW,EAAE,IAAIq5O,GAAIr3O,EAAE8sN,GAAG,EAAE,GAAG16M,EAAEF,EAAE6nT,IAAI/uC,GAAIrtG,GAAG39K,EAAE8sN,GAAG,KAAK9sN,IAAG,GAAQuvB,EAAQA,EAAE+uM,GAAGtgO,GAAVuxB,EAAEvxB,SAAkB,GAAG6rL,GAAG7pL,EAAE8sN,GAAG,IAAQ9sN,EAAEgtN,IAAI,KAAK,KAAInjC,GAAG33K,EAAE,MAASs8N,MAAHt8N,EAASshV,KAAM3pK,GAAGz3K,EAAE,MAASo8N,MAAHp8N,EAASohV,KAASxzV,EAAE8sN,GAAGokJ,OAAMlzW,EAAE,IAAIq5O,GAAIr3O,EAAE8sN,GAAG,EAAE,GAAG16M,EAAEF,EAAE6nT,IAAIh0D,GAAIpoF,GAAG39K,EAAE8sN,GAAG,KAAK9sN,IAAG,GAAQuvB,EAAQA,EAAE+uM,GAAGtgO,GAAVuxB,EAAEvxB,SAAkB,GAAG6rL,GAAG7pL,EAAE8sN,GAAG,KAA0D,MAApDrpN,EAAEk6K,GAAG39K,EAAE8sN,GAAG,MAAW56M,IAAIzO,EAAEyO,EAAE,IAAIy/J,GAAI,IAAI+I,KAAe5/I,EAA+B,IAAI82I,GAA9B,IAAIgnI,GAAK,IAAIt0I,GAA3B7gK,EAAEyO,EAA+BlS,GAAIA,IAAe86B,EAAE96B,EAAEkS,GAA2Bqd,EAAEgvN,IAAzBh5O,EAAEo4K,GAAGy4G,GAAIt7P,EAAE96B,GAAG6sM,KAAK,IAAY2oI,IAAIjwU,EAAE9B,GAAG8rB,GAAK,OAAOA,CAAC,CAEtsB,SAASq1V,IAAI5kX,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAA8B,IAA5BA,EAAE2qK,GAAG26B,IAAIt4M,GAAG+/J,MAAM28I,MAAM,KAASr7Q,KAAM,OAAO,KAAa,GAAR59B,EAAE,EAAEkP,EAAE,EAAKK,EAAEitL,IAAIq3B,MAAMiyD,MAAM,CAA0F,IAAzFloR,EAAEs8K,GAAG26B,IAAIt4M,EAAE0qR,KAAK,IAAI3qR,EAAE,EAAEwvB,EAAE,EAAEhqB,EAAE,EAAEu1B,EAAE,EAAE5oB,EAAG4rM,GAAI99M,GAAsB29K,GAAG26B,IAAIwF,GAAI99M,GAAG6kX,KAAK,KAAtClnM,GAAG26B,IAAIt4M,EAAE6kX,KAAK,KAAiCzyW,EAAE,IAAI2sK,KAAM/+K,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAI+qK,GAAI3M,IAAG3tL,EAAE,EAAE,IAAIA,EAAEuvB,IAAInd,EAAE7M,GAAG6M,EAAEpU,EAAEihL,MAAuF,GAAhFjhL,EAAE2/K,GAAGwB,IAAI/sK,GAAG,MAAK0B,EAAE6pK,GAAG26B,IAAIt6M,EAAE8mX,KAAK,OAAWrlM,MAAMqnB,OAAMhzL,EAAE8yU,IAAI5oV,EAAEkU,GAAGk5R,IAAIptS,EAAE8mX,IAAIhxW,IAAMzS,IAAIi0R,MAAMt4D,KAAM,OAAOlpN,EAAEnB,GAAG,KAAK,EAAE5S,EAAEkzI,EAAK3/H,KAAKugB,IAAI9zB,EAAE/B,EAAEA,EAAEA,EAAE2U,GAAG,MAAM,KAAK,EAAE4c,EAAE0jH,EAAK3/H,KAAKugB,IAAItE,EAAEvxB,EAAEoU,EAAEpU,EAAE88B,GAAG,MAAM,KAAK,EAAEv1B,EAAE0tI,EAAK3/H,KAAKugB,IAAItuB,EAAEvH,EAAEA,EAAEA,EAAE2U,GAAG,MAAM,KAAK,EAAEmoB,EAAEm4G,EAAK3/H,KAAKugB,IAAIiH,EAAE98B,EAAEoU,EAAEpU,EAAE88B,QAAU,OAAOhnB,EAAEnB,GAAG,KAAK,EAAE5S,GAAG/B,EAAE2U,EAAE,EAAE,MAAM,KAAK,EAAE4c,GAAGvxB,EAAE88B,EAAE,EAAE,MAAM,KAAK,EAAEv1B,GAAGvH,EAAE2U,EAAE,EAAE,MAAM,KAAK,EAAEmoB,GAAG98B,EAAE88B,EAAE,EAAKr3B,EAAEwvI,EAAK3/H,KAAKugB,IAAI9zB,EAAEwF,GAAGoN,EAAEsgI,EAAK3/H,KAAKugB,IAAItE,EAAEuL,EAAE,CAAC,OAAOkiV,IAAIh9W,EAAEyD,EAAEkP,GAAE,GAAK,EAAK,CAC/sB,SAASuzO,IAAIlmP,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAA4J,IAA1JxU,EAAE8pK,GAAGopF,GAAI/R,GAAI7qC,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAIr7L,EAAEnS,EAAE,KAAK,IAAIwrK,GAAIh8I,IAAI,IAAIi8I,GAAIj8I,IAAIgyP,GAAI,IAAIjsI,EAAI,IAAID,EAAI,IAAIgB,GAAIkoC,GAAGC,GAAGwtD,IAAG,GAAGC,IAAI,IAAI,EAAE,EAAE4oC,KAAME,SAAS,IAAIjhQ,EAAEokL,IAAI72L,EAAE42L,IAAQj6L,EAAE,IAAI2nK,GAAIzzJ,EAAEA,EAAEE,GAAGpU,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,SAASuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,KAASoU,GAAGmd,IAAGzb,EAAEm/H,EAAK3/H,KAAKsgB,IAAI9f,EAAErQ,EAAEL,GAAG/B,EAAE4xI,EAAK3/H,KAAKugB,IAAIxyB,EAAEoC,EAAEL,IAAI,GAAG0Q,GAAGokL,IAAK,IAAIvlL,EAAE,EAAEA,EAAEkB,EAAEorK,KAAKtsK,IAAKqzO,GAAIroE,GAAG9pK,EAAEwnM,GAAG1oM,GAAG,KAAK4c,EAAE5c,QAAuD,IAr8Gtb,SAAa3S,EAAEkS,GAAG,IAAIqd,EAAE,IAAIA,EAAE,EAAEA,EAAErd,IAAIqd,EAAGvvB,EAAEuvB,IAAI,CAAE,CAq8GqXw1V,CAA9B9wW,EAAEgqK,GAAGmV,IAAGsW,IAAI,GAAGnkM,EAAErH,OAAO,GAAG,GAAS+V,EAAE/V,QAAYwU,EAAEmB,EAAE8nM,KAAKjpM,EAAE6oM,MAAM,CAA2C,IAA1CvnM,EAAE2pK,GAAGjrK,EAAE+oM,KAAK,KAAK3gL,EAAE6iJ,GAAG+5B,GAAI13M,EAAEkS,EAAE8B,GAAG,KAAK5B,EAAE,EAAMhP,EAAE0Q,EAAE1Q,GAAG/B,EAAE+B,IAAK03B,EAAE13B,KAAKgP,EAAE6gI,EAAK3/H,KAAKugB,IAAIzhB,EAAErS,EAAEqD,KAAK,GAAG4Q,EAAEhW,EAAE,CAAmB,IAAlB4B,EAAEoU,EAAEhW,EAAEuxB,EAAElH,EAAE,IAAIouJ,GAAQzjK,EAAE,EAAEA,EAAEzN,EAAErH,OAAO8U,IAAKzN,EAAE3F,GAAGoT,IAAI20K,GAAIt/J,EAAE2vL,GAAI/jM,EAAEjB,KAAK,KAAMytL,GAAIp4K,EAAE2vL,GAAI5lM,OAAOA,CAAE,CAAY,IAAX4zO,GAAIhyO,EAAEub,EAAEnd,GAAOlS,EAAE4T,EAAE5T,GAAGmB,EAAEnB,IAAK46B,EAAE56B,KAAKH,EAAEG,GAAGkS,EAAE,GAAK4B,EAAEhW,IAAIiW,EAAED,EAAEhW,EAAEuxB,GAAGnd,EAAE,CAAE,CACjtB,SAAS4yW,IAAIhlX,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAIlU,EAAEM,EAAEkD,EAAS,IAAPmC,EAAE,KAASxF,EAAE,IAAI4lK,GAAIzzJ,EAAElS,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyBm7W,IAAhB9pV,EAAEouJ,GAAGC,GAAI79K,GAAG,MAAmEqS,EAAE,IAAI4xO,GAAIz0N,GAAE,EAAhE9rB,EAAEyrN,GAAI5sB,GAAI,IAAIvrB,GAAIxnJ,GAAGvvB,EAAE86B,GAAG98B,EAAEkxN,GAAI5sB,GAAI,IAAIvrB,GAAIxnJ,GAAGvvB,EAAE86B,IAAyBz5B,EAAEkuB,EAAErvB,EAAEgS,EAAK+0Q,MAAyGrnR,EAAE,KAA9GkU,GAAWyb,EAAEvb,EAAoBub,EAAEvb,GAAnBizM,KAAMA,KAAMgjB,MAAU9iO,IAAIk2J,MAAMovJ,MAAS9uI,GAAG4qB,IAAIh5K,EAAEk9R,KAAK,KAAS9uI,GAAG4qB,IAAIg3C,GAAIhwN,GAAGm9R,KAAK,OAAoBxrG,MAAMthN,EAAE,GAAGM,EAAEo7T,IAAIl5H,GAAID,GAAID,GAAIG,GAAI,IAAIvrB,GAAIl3K,GAAGu4L,GAAGllD,EAAK3/H,KAAKwd,KAAKzvB,KAAKoC,GAAGzF,IAAI8V,GAAGmtM,KAAKt5B,GAAI3nL,EAAED,EAAEG,GAAG0tW,IAAI5tW,EAAEqpN,GAAGF,GAAI55L,GAAGkwJ,MAAMG,OAAOxtK,GAAGw7V,IAAI5tW,EAAEmpN,GAAI55L,EAAEmwJ,KAAKttK,GAA1V0oB,EAA6V1oB,IAAQhP,EAAE8rN,GAAI5sB,GAAI,IAAIvrB,GAAIxnJ,GAAGvvB,EAAE86B,GAAG4mK,GAAIyoB,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAIh+K,EAAEnd,EAAE,KAAK,IAAIo3I,IAAK,IAAI0pD,GAAIlzM,EAAEoD,IAAtF03B,EAA0F,IAAIkpN,GAAIz0N,GAAE,EAAMnsB,EAAEA,IAAKpD,EAAEhC,EAAEuxB,EAAEnsB,GAAG03B,EAAKv1B,IAAGoN,EAAEpN,EAAEgqB,EAAExvB,EAAEC,EAAE6lN,GAAI7lN,EAAEJ,EAAE2F,EAAEgqB,EAAEA,GAAGA,EAAExvB,EAAEA,EAAEwF,EAAE2M,IAAIS,GAAGpN,EAAEgqB,EAAErvB,EAAEgS,GAAGopT,IAAIl5H,GAAID,GAAIE,GAAIH,GAAI,IAAIprB,GAAIqhB,GAAGllD,EAAK3/H,KAAKwd,KAAKne,KAAK,GAAGpN,EAAExF,GAAG+6B,EAAE96B,KAAIuF,EAAEu1B,CAAE,CAEjtB,SAASmqV,IAAIjlX,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAA2E,IAA5DkU,EAnc3D,SAAa9T,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAA4K,IAA1K/T,EAAEwvB,EAAEA,EAAEhqB,EAAEgqB,EAAExvB,EAAE0D,EAAEgyP,GAAIvjP,EAAEqd,GAAGvxB,EAAEy3P,GAAIvjP,EAAEnS,GAAMA,GAAGmS,EAAEqd,GAAG9rB,EAAE0uV,IAAInyV,EAAEyD,EAAE8B,GAAGvH,EAAE2zU,IAAIz/T,EAAEnS,KAAQ0D,EAAEkuU,IAAIz/T,EAAEqd,GAAGvxB,EAAEm0V,IAAInyV,EAAEhC,EAAEuH,IAAkBw3M,GAAf3qM,EAAE,IAAI61K,GAAI/1K,EAAElS,GAASyD,EAAE2O,EAAEpS,EAAEoS,EAAEpS,EAAEA,GAAG+8M,GAAI3qM,EAAEpU,EAAEoU,EAAEmd,EAAErd,EAAEE,EAAEmd,GAAG5c,EAAET,EAAEqd,GAAGxvB,EAAE+T,EAAE,IAAI+jK,GAAQ/8I,EAAE,EAAEA,EAAE1oB,EAAEF,EAAE,IAAI4oB,EAAGz5B,EAAE,IAAIm1M,GAAI74B,GAAGoiG,IAAG3tQ,EAAE0oB,GAAG,GAAG6iJ,GAAGoiG,IAAG3tQ,EAAE0oB,EAAE,GAAG,IAAInoB,GAAM,GAAHmoB,IAAOnoB,GAAGmoB,GAAG1oB,EAAEF,EAAE,EAAG4B,EAAE5B,EAAE7Q,EAAG00K,GAAIjiK,EAAE9T,EAAEqB,GAAG,OAAOyS,CAAC,CAmctQoxW,CAAIllX,EAAEkS,EAArB4oB,EAAE,IAAIyqT,IAAIrzU,IAAgBtS,EAAEqzI,EAAK3/H,KAAKugB,IAAIysJ,GAAIC,GAAGgoB,IAAIr2L,GAAGmrJ,MAAMq3H,QAAQ,GAAOrzR,EAAE,IAAIskK,GAAI7xJ,EAAE9T,GAAGqB,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAASkU,EAAEurK,GAAGC,GAAIv8K,GAAG,IAAIrD,EAAE81T,IAAIn2I,GAAGvrK,EAAEpS,EAAE,GAAG29K,GAAGvrK,EAAEF,EAAE,GAAGtS,IAAK,EAASsmO,GAAI32M,EAAE,IAAI0lL,GAAIj3M,EAAEuxB,EAAEvxB,EAAE+B,IAAQmmO,GAAI32M,EAAEojM,GAAI,IAAI1d,GAAIj3M,EAAEuxB,EAAEvxB,EAAE+B,GAAG/B,EAAEkU,EAAE,IAAQg0N,GAAI32M,EAAEojM,GAAI,IAAI1d,GAAIj3M,EAAEuxB,EAAEvxB,EAAE+B,GAAG,EAAE/B,EAAEgC,IAAMkmO,GAAI32M,EAAEojM,GAAI,IAAI1d,GAAIj3M,EAAEuxB,EAAEvxB,EAAE+B,GAAG/B,EAAEkU,EAAElU,EAAEgC,IAAuP,OAAnPgT,EAAE8nB,EAAE/6B,EAAE0D,EAAEqwT,IAAIn2I,GAAG7pK,EAAE5B,EAAElS,EAAE,GAAG29K,GAAG7pK,EAAE5B,EAAEA,EAAE,GAAGtS,GAAMoT,IAAIysK,MAAMG,MAAM5sK,GAAG0sK,KAAK3/K,EAAEwvB,EAAEvc,EAAEL,GAAGsgI,EAAK3/H,KAAKsgB,IAAI7zB,EAAEwvB,EAAEvc,EAAEL,GAAGlP,EAAE1D,GAAGA,EAAEmS,EAAEc,EAAEL,GAAGsgI,EAAK3/H,KAAKugB,IAAI9zB,EAAEmS,EAAEc,EAAEL,GAAGlP,EAAE1D,EAAE0D,EAAEzD,KAAQD,EAAEwvB,EAAEvc,EAAEL,GAAGsgI,EAAK3/H,KAAKsgB,IAAI7zB,EAAEwvB,EAAEvc,EAAEL,GAAGlP,EAAE8rB,GAAGxvB,EAAEmS,EAAEc,EAAEL,GAAGsgI,EAAK3/H,KAAKugB,IAAI9zB,EAAEmS,EAAEc,EAAEL,GAAGlP,EAAE8rB,EAAE9rB,EAAEyO,IAAG3M,EAAEgxK,IAAI5jK,EAAEmoB,EAAEvL,EAAEvxB,EAAE+B,EAASiT,EAAEL,GAAG,KAAK,EAAEpN,EAAEoN,EAAE4c,EAAE,MAAM,KAAK,EAAEhqB,EAAEoN,EAAET,EAAE,MAAM,KAAK,EAAE3M,EAAEoN,EAAE3S,EAAE,MAAM,KAAK,EAAEuF,EAAEoN,EAAE5S,EAAsC,OAAnCA,EAAEC,EAAEgT,EAAEL,GAAGsgI,EAAK3/H,KAAKugB,IAAI9zB,EAAEC,EAAEgT,EAAEL,GAAGpN,GAAUu1B,CAAC,CAEntB,SAASq7U,IAAIn2W,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAA6U,IAA9TwuQ,GAAbz9P,EAAE,IAAI2pT,IAAIxsS,GAASrd,GAAG61L,GAAI31L,GAAG41L,MAAM0/C,KAAKx1O,GAAGE,EAAElS,EAAEF,EAAEkS,EAAES,EAAEP,EAAElS,EAAEgS,EAAEA,EAAE4oB,EAAE1oB,EAAExS,EAAEI,EAAEkS,EAAElU,EAAEoU,EAAExS,EAAEsS,EAAEA,EAAEE,EAAE2jK,GAAIxmJ,EAAEvvB,EAAEoS,GAAGukL,GAAI32L,EAAEA,EAAEkS,EAAEE,IAA6C,KAAvCF,EAAElS,IAAIkS,EAAElS,EAAE,IAAIs6L,GAAI/M,IAAGr7K,EAAE,GAAG,KAAKA,EAAElS,GAAGhC,GAAMikL,GAAIk6B,GAAG7D,IAAIpmM,GAAGmrJ,MAAMkzK,UAAUxoI,GAAI31L,EAAE+yW,KAAKz3J,MAAM,IAAO1vN,EAAE2/K,GAAG4qB,IAAIh5K,EAAEqrS,KAAK,KAAIv5T,EAAEs8K,GAAG4qB,IAAIn2L,GAAGirJ,MAAMykI,MAAM,OAAQxM,MAAMj0E,KAAKtZ,GAAI31L,EAAE0vR,IAAI1gF,KAAK//M,GAAG+/M,KAAKpjN,EAAE6pN,IAAI8rF,MAAMM,MAAMl0S,EAAE49K,GAAG4qB,IAAIh5K,EAAEo2R,KAAK,KAASliT,EAAE,IAAIs7K,KAAM7sK,EAAEqd,IAAIrd,EAAEqd,EAAE,IAAI+qK,GAAI3M,IAAGz7K,EAAE,EAAE,IAAIA,EAAEqd,IAAI9rB,EAAE8B,GAAG9B,EAAEzF,EAAEihL,MAAwBgD,GAAIk6B,GAAG7D,IAAxB3lM,EAAEgrK,GAAGwB,IAAI17K,GAAG,KAAkBuyW,QAAQoP,IAAIplX,EAAE2S,EAAEP,EAAEpU,EAAE+B,EAAEsB,GAAG,IAAIy5B,EAAE,IAAIikJ,KAAM7sK,EAAEtS,IAAIsS,EAAEtS,EAAE,IAAI06L,GAAIrN,IAAG/6K,EAAE,EAAE,IAAIA,EAAEtS,IAAIk7B,EAAEv1B,GAAGu1B,EAAE98B,EAAEihL,OAAyBgD,GAAIk6B,GAAG7D,IAAzB/yM,EAAEo4K,GAAGwB,IAAIrkJ,GAAG,KAAmBk7U,QAAUzwW,EAAEvF,GAAG+1K,GAAI3jK,EAAEF,EAAE0tS,GAAIr6S,IAA8G,OAA1G08K,GAAIk6B,GAAG5T,IAAIn2L,EAAEkpW,QAAQt9W,EAAE6pN,IAAI8rF,MAAME,MAAS5xH,GAAIk6B,GAAG5T,IAAIn2L,EAAE8lW,SAAQl6W,EAAE6pN,IAAI8rF,MAAMK,MAAMh2S,EAAE6pN,GAAGksF,KAAKhsG,GAAI31L,EAAE0vR,IAAI1gF,MAAYhvM,CAAC,CAChuB,SAASizW,IAAIrlX,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAMY,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAE1tL,EAAEk6K,GAAG+5B,GAAIxlM,EAAEqd,EAAEvvB,GAAG,KAAK6T,EAAE3B,EAAElS,EAAEuvB,EAAEvxB,EAAEkU,EAAElS,EAAEuvB,EAAErd,EAAElS,EAAEkS,EAAcS,GAAZkwB,EAAEp/B,EAAEq3B,IAAEq2J,EAAE1tL,EAAEzD,GAAQoD,EAAE,IAAI6xM,GAAIphM,EAAEgvB,GAAG5uB,EAAE,IAAIghM,GAAIj3M,EAAEmzL,GAAan9K,EAAE,IAAIihM,GAAhB1vM,GAAGsO,EAAE7V,GAAG,EAAc6kC,GAAGxa,EAAE,IAAI4sL,GAAI1vM,EAAE4rL,GAAGr2J,EA/lB3M,SAAa96B,EAAEkS,EAAEqd,GAAG,IAAQuL,EAAEnoB,EAAI3U,EAAU,GAAR88B,EAAE,EAAEnoB,EAAE,EAAK3S,EAAEuvB,EAAG,IAAIvxB,EAAE,IAAI2nK,GAAI3lK,EAAED,EAAE/B,EAAEoU,GAAGpU,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAyB48B,GAAd6iJ,GAAGC,GAAI5/K,GAAG,IAASuH,EAAEgqB,EAAErxB,YAAa48B,EAAE,EAAE,GAAG96B,EAAED,EAAG,IAAI/B,EAAE,IAAI2nK,GAAI3lK,EAAEuvB,EAAEvxB,EAAEoU,GAAGpU,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAyByU,GAAdgrK,GAAGC,GAAI5/K,GAAG,IAAS2U,EAAE4c,EAAErxB,YAAayU,EAAE,EAAyC,OAArB4c,EAAErd,GAAG,EAAS,GAA9BimL,GAAG8tC,GAAItzN,EAAEmoB,KAAevL,EAAErd,EAAmB,CA+lBtEozW,CAAItlX,EAAE6iC,EAAEsuJ,GAAG5tL,EAAEkyP,GAAIvjP,EAAE0yB,GAAGhb,EAAE,IAAIqrL,GAAI1vM,EAAEu1B,GAAG8J,EAAE6wN,GAAIvjP,EAAEi/K,GAAG5hK,EAr9D7P,SAAavvB,GAAS,IAAIkS,EAAEqd,EAAExvB,EAA2B,IAAzCwxO,MAAgBhiN,EAAE0uJ,GAAGx3D,IAAGotE,IAAI,EAAE,EAAE,EAAE,GAAG9zL,EAAE,EAAMmS,EAAE,EAAEA,EAAE,EAAEA,IAAKnS,GAAG,GAAIwvB,EAAErd,GAAGusT,IAAI1+T,EAAEC,GAAG,OAAOuvB,CAAC,CAq9DwJg2V,CAAIhnM,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACtwL,EAAEqmB,EAAEgb,KAAKhlC,GAAE,GAAM8S,EAAER,EAAE0yB,EAAE5mC,IAAY0U,EAAE6c,GAAG9rB,EAAE1D,KAAGqS,EAAEO,GAAGD,EAAEtP,EAAEsP,EAAE6c,EAAEvvB,EAAEuvB,EAAErxB,OAAO,IAAIyU,GAAGD,EAAEtP,EAAE,GAAWgP,IAAGY,EAAEN,EAAEtP,EAAEuP,IAAIK,IAAIA,EAAiCpT,IAAIg3U,IAAb72U,EAAEu1S,GAAtB33H,GAAG0pB,GAAI30L,EAAE6c,EAAEvvB,EAAEgT,GAAG,KAAuBzP,EAAEgsB,EAAE,KAAK+hN,GAAIvxO,EAAEwD,EAAEgsB,EAAE,MAAW3vB,GAAE,GAAMM,GAAE,GAAMiR,EAAEe,EAAEi/K,EAAEnzL,IAAYmT,EAAEoe,GAAG9rB,EAAE8B,IAAKoN,GAAGxB,EAAE/N,EAAE,IAAIuP,GAAGxB,EAAE/N,EAAE+N,EAAEoe,EAAEvvB,EAAEuvB,EAAErxB,OAAO,GAAQ8U,EAAE7B,EAAE/N,EAAEuP,IAAIK,IAAIA,EAAiC9S,IAAI02U,IAAb72U,EAAEu1S,GAAtB33H,GAAG0pB,GAAIl2L,EAAEoe,EAAEvvB,EAAEgT,GAAG,KAAuBuc,EAAE,GAAGqV,IAAI0sM,GAAIvxO,EAAEwvB,EAAE,GAAGqV,KAAS1kC,GAAE,GAAMN,GAAGM,GAAG0lO,GAAI5lO,EAAEA,EAAE4pB,GAAGhqB,GAAGuzN,GAAInzN,EAAEA,EAAEu+K,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACzwL,EAAE4Q,KAAK9T,GAAGizN,GAAInzN,EAAEA,EAAEu+K,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACxrK,EAAEpU,IAAI,CAChuB,SAASuxW,IAAIxlX,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAuJ,GAAlJy3K,GAAG7pL,EAAEoqT,KAAK,MAAMo7D,IAAI7nM,GAAG39K,EAAEoqT,KAAK,KAAKl4S,GAAGA,EAAElS,GAAG,OAAWkS,EAAElS,GAAG,QAAoBq8N,IAAZ9sM,EAAEvvB,EAAEgoN,KAAKw8C,IAAS/wM,OAAO,EAAE,GAAG,OAAOmpJ,GAAI1qM,EAAEqd,EAAEkkC,OAAO,IAAKvhD,EAAElS,GAAG,GAAGuvB,EAAKhqB,EAAEvF,EAAEmqT,KAAWvtG,IAAK1qM,EAAElS,GAAG,IAAIkS,GAAG3M,QAAU,GAAGskL,GAAG7pL,EAAE,OAAMoS,EAAEurK,GAAG39K,EAAE,KAAKA,GAAQ48M,IAAK1qM,EAAElS,GAAG,IAAIkS,GAAGE,OAAnD,CAA8D,IAAIO,EAAE,IAAIosK,GAAI/+K,EAAEylX,MAAM9yW,EAAEpN,GAAGoN,EAAE3U,EAAEihL,MAA8B,GAAN7sK,EAAfurK,GAAGwB,IAAIxsK,GAAG,KAAS3S,EAA4B,YAApB48M,IAAK1qM,EAAElS,GAAG,IAAIkS,GAAGE,GAAW,GAAGy3K,GAAG7pL,EAAE,SAAMD,EAAE49K,GAAG39K,EAAE,KAAOkS,IAAInS,EAAEmS,EAAE,IAAI64M,GAAI19B,IAAGttL,EAAE,EAAE,IAAc,GAAPA,EAAEmS,EAAElU,KAAQ+B,EAAEwvB,IAAIxvB,EAAEwvB,EAAE,IAAIw7L,GAAI19B,IAAGttL,EAAE,EAAE,IAAW,GAAPA,EAAEwvB,EAAEvxB,IAAM,CAA0D,IAAzDkU,EAAElS,GAAG,KAAKyD,EAAE,IAAIitN,KAAM3wN,EAAEmS,IAAInS,EAAEmS,EAAE,IAAI64M,GAAI19B,IAAGttL,EAAE,EAAE,IAAIA,EAAEmS,IAAUzO,EAAE8B,GAAG9B,EAAEzF,EAAEihL,MAAMx7K,EAAE8B,EAAE,IAAI2M,EAAElS,GAAGgkL,KAAOwhM,IAAI7nM,GAAGwB,IAAI17K,GAAG,KAAKyO,GAA2D,IAAxDA,EAAElS,GAAG0iV,IAAI1kV,EAAE,IAAI0yN,KAAM3wN,EAAEwvB,IAAIxvB,EAAEwvB,EAAE,IAAIw7L,GAAI19B,IAAGttL,EAAE,EAAE,IAAIA,EAAEwvB,IAAUvxB,EAAEuH,GAAGvH,EAAEA,EAAEihL,MAAMjhL,EAAEuH,EAAE,IAAI2M,EAAElS,GAAGgkL,KAAOwhM,IAAI7nM,GAAGwB,IAAInhL,GAAG,KAAKkU,GAAGA,EAAElS,GAAG,GAAG,CAArc,CAAuc,CAChuB,SAAS0lX,IAAI1lX,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAA8B,GAA5Bk7B,EAAE6iJ,GAAG4qB,IAAIvoM,GAAGgoM,MAAM0/C,MAAM,IAAI,CAA2X,IAA7W3nP,EAAEC,EAAEA,EAAe6/K,GAAbt6K,EAAE,IAAIo7M,GAAIpxL,GA9sCxG,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAA8B,GAA5BA,EAAEo4K,GAAG4qB,IAAIvoM,GAAGgoM,MAAMquK,MAAM,IAAS,CAAwB,IAAvBt2W,EAAE,IAAI6oL,GAAI12K,EAAEqtO,GAAIv/O,EAAEuvB,EAAEvxB,GAASkU,GAAG3M,GAAS2M,EAAEqtO,GAARhwN,EAAErd,EAAE3M,GAAWotN,GAAI9yC,GAAIA,GAAI9/K,EAAEwvB,EAAE3vB,GAAGsS,EAAEqd,GAAGrd,EAAEnS,EAAEmS,EAAEA,EAAEnS,EAAEA,GAAG,OAAOA,CAAC,CAAC,OAAO6jM,GAAG,CA8sCvD+hL,CAAI3lX,IAAOutS,GAAIvtS,EAAED,EAAE/B,EAAEgC,EAAEuvB,EAAEvxB,IAAIgV,EAAEhT,EAAEuvB,EAAwCsrM,GAAtC/mN,EAAE4hP,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC7gL,EAAEpT,EAAEoT,EAAEhT,KAAWuvB,IAAQzb,EAAE2hP,GAAIz1P,EAAEuvB,GAAGwtL,GAAIh9M,EAAE+T,EAAE/T,EAAEC,EAAED,EAAEC,EAAEA,GAAGJ,EAAE61P,GAAIz1P,EAAED,GAAe,MAAZwoM,IAAIvoM,EAAEqpT,MAAYxpI,GAAIjgL,EAAE+9K,GAAG4qB,IAAIvoM,EAAEqpT,KAAK,IAAItsG,GAAIh9M,EAAEH,EAAEG,EAAEwvB,EAAErd,EAAEnS,EAAEwvB,GAAG4mQ,GAAIp2R,EAAEwF,GAAsBg7R,GAAnB5tR,EAAEosV,IAAIjkU,GAAE,GAAK,GAAY6iJ,GAAG0O,KAAMvxJ,EAAE5oB,IAAI4oB,EAAE5oB,EAAE,IAAI64M,GAAI19B,IAAGvyJ,EAAE,EAAE,IAAIA,EAAE5oB,GAAG,GAAG,KAAKsuR,GAAI7tR,EAAEgrK,GAAG0O,KAAMvxJ,EAAEvL,IAAIuL,EAAEvL,EAAE,IAAIw7L,GAAI19B,IAAGvyJ,EAAE,EAAE,IAAIA,EAAEvL,GAAG,GAAG,KAAKmkV,IAAI3zW,EAAE4S,GAAOtR,EAAE,IAAIskK,GAAI3lK,EAAEkS,GAAG7Q,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAASkU,EAAEurK,GAAGC,GAAIv8K,GAAG,IAAyB2gN,GAArBv+M,EAAEk6K,GAAG4qB,IAAIn2L,EAAEs1O,KAAK,KAAWt1O,EAAElS,EAAEF,GAAGiiN,GAAIx+M,EAAE2O,EAAElS,EAAEgS,GAAGgwM,GAAIz+M,EAAE2O,EAAExS,EAAEI,EAAEuF,EAAEvF,EAAEoS,EAAExS,EAAEsS,EAAE3M,EAAE2M,GAAGk5R,IAAI3nS,GAAGk4J,KAAMioI,KAAKznF,GAAG5T,IAAIn2L,EAAEwxR,QAAO5lS,EAAE2/K,GAAG4qB,IAAIvoM,GAAGq9J,MAAM2hG,MAAM,MAAUm3B,GAAIn4R,EAAEuH,GAAG6lS,IAAItwQ,EAAEkkO,IAAIhhQ,IAAQotS,IAAItwQ,EAAEkkO,IAAI,MAAM9sP,IAAIq2Q,KAAMI,KAAKyiB,IAAItwQ,EAAE4nQ,IAAI/Z,KAAKyiB,IAAItwQ,EAAE4nQ,IAAI,KAAroB,CAA0oB,CAEjuB,SAAS8yD,IAAIx1V,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAqI,OAAnIjW,EAAEgC,EAAEqB,EAAEw5N,GAAI,IAAI5lB,GAAI/iM,EAAElS,EAAEkS,EAAEA,GAAGlS,GAAGoS,EAAEmd,EAAEzb,EAAE+mN,GAAI,IAAI5lB,GAAIl1M,EAAEC,EAAED,EAAEmS,GAAGqd,GAAGvc,EAAEhV,EAAEgC,EAAEgU,EAAEhW,EAAEkU,EAAEhS,EAAEkS,EAAEpS,EAAE6T,EAAEzB,EAAEF,EAAEtS,EAAEyB,EAAErB,EAAE0S,EAAErR,EAAE6Q,EAAc3M,GAAZnC,EAAE0Q,EAAE9T,GAAY0S,EAAE9S,GAAZqU,EAAEH,EAAE5B,GAAYuyM,KAAKiyE,GAAGgtD,OAAQzwM,EAAK3/H,KAAKskB,IAAI,EAAEryB,IAAIm+U,KAAK,GAAGn+U,GAAGoK,MAAM,IAAIA,MAAMpK,MAAiBoN,EAAE,EAAEpN,IAAIyN,EAAE9S,GAAGwS,GAAGsB,EAAEH,GAAGjU,GAAG6D,EAAE,EAAE8B,MAAMyN,EAAE9S,GAAG+T,GAAGD,EAAEH,GAAGzQ,GAAWszR,GAAGgtD,MAAMzwM,EAAK3/H,KAAKskB,IAAI,EAAEjlB,IAAI+wU,KAAK,GAAG/wU,GAAGhD,MAAM,IAAIA,MAAMgD,GAAG,EAAE,EAAEA,GAAG,EAAE,EAAEA,EAAE,EAAE4sM,GAAG5vM,MAAM,GAAGA,MAAMgD,KAAK,IAAS+jR,GAAGgtD,MAAMzwM,EAAK3/H,KAAKskB,IAAIjlB,EAAE,IAAI+wU,KAAQ,GAAH/wU,GAAMhD,MAAMgD,IAAIhD,MAAM,GAAG,EAAEgD,EAAE,GAAG,EAAEA,EAAE,EAAE,EAAE4sM,GAAG5vM,MAAMgD,GAAGhD,MAAM,KAAK,KAAU+mR,GAAGgtD,MAAMzwM,EAAK3/H,KAAKskB,IAAI,EAAEn0B,IAAIigV,KAAK,GAAGjgV,GAAGkM,MAAM,IAAIA,MAAMlM,GAAG,EAAE,EAAEA,GAAG,EAAE,EAAEA,EAAE,EAAE87M,GAAG5vM,MAAM,GAAGA,MAAMlM,KAAK,KAAUizR,GAAGgtD,MAAMzwM,EAAK3/H,KAAKskB,IAAIn0B,EAAE,IAAIigV,KAAQ,GAAHjgV,GAAMkM,MAAMlM,IAAIkM,MAAM,GAAG,EAAElM,EAAE,GAAG,EAAEA,EAAE,EAAE,EAAE87M,GAAG5vM,MAAMlM,GAAGkM,MAAM,KAAK,GAAY,CAEvuB,SAASi2W,IAAI5lX,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,GAAG,IAAIlP,EAAI2O,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAA0D,GAAxDvB,EA3L1D,SAAa1S,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAI3U,EAAEoU,EAAE/Q,EAAEyS,EAA2D,IAAzDA,EAAE,IAAIw+J,GAAmBx3I,EAAE,EAAE+iQ,GAAnBx8R,EAAE,IAAI63P,GAAI,EAAE3pO,GAAa,IAAIopR,GAAI,EAAE,EAAEt3S,EAAEkuB,IAAIhqB,EAAE,EAAM6M,EAAE,IAAI2sK,GAAI/+K,GAAGoS,EAAE7M,GAAG6M,EAAEpU,EAAEihL,MAAOjhL,EAAE2/K,GAAGwB,IAAI/sK,GAAG,IAAIrS,EAAE49K,GAAG0pB,GAAIhmM,EAAErB,EAAEqB,EAAErB,EAAEuvB,EAAErxB,OAAO,GAAG,KAAOqH,EAAEvH,EAAE2U,GAAkC,GAA/BgrK,GAAG0pB,GAAIhmM,EAAErB,EAAE,GAAG,KAAKkS,EAAEqd,EAAErxB,OAAU,EAAEqxB,GAAQrd,IAAG3M,EAAE,EAAEu1B,GAAGz5B,EAAE6Q,EAAEqd,EAAEzb,EAAEyb,EAAEzb,EAAEyb,EAAErxB,QAAQmD,EAAsCw8R,GAApCx8R,EAAE,IAAI63P,GAAIp+N,EAAEvL,GAAGxvB,EAAE,IAAI44S,GAAI,EAAEt3S,EAAEy5B,EAAEz5B,EAAEkuB,IAAYhqB,EAAE,GAAmB,GAAdxF,EAAEmS,EAAEqd,EAAErxB,QAAWF,EAAE88B,GAAG/6B,EAAEG,GAAGlC,EAAE88B,GAAG/6B,EAAE+6B,GAAO,GAAJ/6B,EAAEC,GAAOhC,EAAE88B,GAAO,IAAJ/6B,EAAEC,GAAOhC,EAAE88B,EAAGgsR,GAAI/mT,EAAE/B,IAAqC6/R,GAAIx8R,EAAjCsR,EAAE,IAAIgmS,GAAI54S,EAAE8T,EAAE9T,EAAE2S,EAAE6c,EAAEluB,EAAEy5B,EAAEz5B,EAAEkuB,IAAYu3R,GAAIn0S,EAAE3U,IAAGuH,EAAEvH,EAAEA,EAAEA,EAAE2U,EAAoB,OAAlBmB,EAAEyb,EAAEzb,EAAEyb,EAAErxB,QAAQmD,EAASyS,CAAC,CA2Lta+xW,CAAI3zW,EAAEqd,EAAEvvB,EAAE2S,GAAGpN,EAAE3F,GAAG2F,EAAE3F,GAAKk7B,GAAG+8N,GAAItyP,EAAEi2P,GAAI1gO,IAAIysP,KAAME,MAASznR,EAAEkS,EAAG,IAAI8B,EAAE,EAAEA,EAAEtB,EAAE6c,EAAErxB,OAAO8V,IAAQypM,GAAIzpM,EAAEtB,EAAE6c,EAAErxB,QAAb4V,EAAqB6pK,GAAGjrK,EAAE6c,EAAEvb,GAAG,KAAY,GAAHA,IAASypM,GAAIzpM,EAAE,EAAEtB,EAAE6c,EAAErxB,QAA0Bw/S,GAAI5pS,GAA7ClU,EAAuB+9K,GAAGjrK,EAAE6c,EAAEvb,EAAE,GAAG,MAAc8mB,EAAEl7B,EAAEsS,EAAElS,EAAE2S,IAAGmzW,IAAI9xW,EAAEtB,EAAE6c,EAAEvvB,EAAE2S,GAAGg3T,IAAI3pU,EAAE8T,GAAGvO,EAAE3F,GAAKk7B,GAAG+8N,GAAItyP,EAAEi2P,GAAI1gO,IAAIysP,KAAME,WAAY,IAAIrkR,EAAE,IAAIuiK,GAAIjzJ,GAAGtP,EAAEpD,EAAEoD,EAAEmsB,EAAEA,EAAErxB,QAA0B,IAAImD,EAAE,IAAIskK,IAA3BzlK,EAAEy9K,GAAGC,GAAIx6K,GAAG,MAAqBpD,GAAGqB,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAAiDmpS,GAAvBxzR,EAAE,IAAI47O,IAAvBr9O,EAAEurK,GAAGC,GAAIv8K,GAAG,MAAiBwS,EAAEzB,EAAE6B,EAAEjU,EAAE2S,GAASP,GAAG2jK,GAAI71K,EAAEH,EAAE8T,GAA8O,OAv2ClsB,SAAa7T,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAc,IAAZ5S,EAAE,EAAEwF,EAAE,EAAEgqB,EAAE,EAAM5c,EAAE,IAAIgzJ,GAAIzzJ,GAAGS,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAK5S,EAAEkzI,EAAK3/H,KAAKugB,IAAI9zB,EAAE+6B,EAAEv1B,GAAGA,GAAGu1B,EAAE5oB,GAAGqd,EAAE,EAAEvvB,EAAE2S,EAAE,KAAK4c,EAAEvvB,EAAEuvB,EAAEhqB,EAAEvF,EAAED,EAAEA,CAAC,CAu2C+TgmX,CAAI/lX,EAAE0S,GAAGnN,EAAE3F,GAAG2F,EAAE3F,GAAKk7B,GAAG+8N,GAAItyP,EAAEi2P,GAAI1gO,IAAIysP,KAAME,MAAMxzQ,EAAEg/H,EAAK3/H,KAAKugB,IAAI7zB,EAAED,EAAEA,EAAEC,GAAG2S,EAAET,EAAES,EAAE4c,IAAuC9rB,GAAnCuP,EAAEigI,EAAK3/H,KAAKugB,IAAI7zB,EAAEuvB,EAAExvB,EAAEmS,GAAGS,EAAE5S,EAAE4S,EAAE3S,KAAQA,EAAEuvB,EAAKvvB,EAAEuF,GAAGvF,EAAE86B,IAAK7mB,EAAEjB,EAAIhT,EAAEA,EAAGiU,EAAEjB,EAAEhT,EAAEA,EAAIyD,GAAGwQ,EAAEjU,EAAEA,EAAEgT,GAAGhT,EAAEuF,GA9kD3oB,SAAavF,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAqB,IAAnB5S,EAAEwvB,EAAEvvB,EAAEuvB,EAAErxB,OAAOqH,EAAE,EAAMoN,EAAE,IAAIgzJ,GAAI3lK,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAA0Bw/S,GAAjB5iR,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAWmoB,EAAEA,EAAE/6B,EAAEwF,GAAGqlU,IAAI9vS,EAAE5oB,EAAEnS,KAAKwF,CAAE,CA8kDwgBygX,CAAItzW,EAAEuB,EAAExQ,GAAG8B,EAAE3F,GAAG2F,EAAE3F,GAAKk7B,GAAG+8N,GAAItyP,EAAEi2P,GAAI1gO,IAAIysP,KAAME,MAAa,IAAI3gD,GAAI9mO,EAAEA,EAAEiU,EAAEjU,EAAEuvB,EAAE9rB,GAAGouR,MAAMM,KAAK,CAGzuB,SAASg9D,IAAInvV,EAAEkS,GAAG,IAAIqd,EAAE,GAAGvvB,EAAEuF,EAAG,MAAM2tK,GAAI,IAAI4O,IAAKwH,GAAI0lK,KAAIC,IAAID,IAAG3tV,EAAE6tV,OAAO,IAr4I3E,SAAalvV,EAAEkS,GAAG,OAAOsoL,GAAIx6L,EAAEuF,EAAE2M,EAAE,CAq4I4C+zW,CAAIjmX,EAAEA,EAAEkS,GAAI,MAAMghK,GAAI,IAAIiK,GAAG+oM,IAAIh0W,EAAEi0W,MAAM,GAAGj0W,GAAGlS,EAAED,EAAG,OAAOC,EAAc,OAAZuvB,EAAEvvB,EAAED,EAAEC,EAAED,EAAEmS,EAASqd,EAAE5c,GAAG,KAAK,EAAE,OAAOT,EAAES,GAAG,KAAK,EAAEsuT,IAAIjhU,GAAG,MAAM,KAAK,EAAEg3S,GAAIh3S,GAAGihU,IAAIjhU,GAAG,MAAM,KAAK,EAAE+sU,IAAI/sU,GAAGihU,IAAIjhU,GAAG,MAAM,KAAK,EAAE+sU,IAAI/sU,GAAGg3S,GAAIh3S,GAAGihU,IAAIjhU,GAAI,MAAM,KAAK,EAAE,OAAOkS,EAAES,GAAG,KAAK,EAAEqkS,GAAIh3S,GAAG0lW,IAAI1lW,GAAG,MAAM,KAAK,EAAE+sU,IAAI/sU,GAAGihU,IAAIjhU,GAAG,MAAM,KAAK,EAAE+sU,IAAI/sU,GAAGg3S,GAAIh3S,GAAGihU,IAAIjhU,GAAI,MAAM,KAAK,EAAE,OAAOkS,EAAES,GAAG,KAAK,EAAEqkS,GAAIh3S,GAAG0lW,IAAI1lW,GAAG,MAAM,KAAK,EAAEg3S,GAAIh3S,GAAG+sU,IAAI/sU,GAAGihU,IAAIjhU,GAAG,MAAM,KAAK,EAAEg3S,GAAIh3S,GAAG+sU,IAAI/sU,GAAGg3S,GAAIh3S,GAAGihU,IAAIjhU,GAAI,MAAM,KAAK,EAAE,OAAOkS,EAAES,GAAG,KAAK,EAAEo6T,IAAI/sU,GAAGihU,IAAIjhU,GAAG,MAAM,KAAK,EAAE+sU,IAAI/sU,GAAGg3S,GAAIh3S,GAAGihU,IAAIjhU,GAAG,MAAM,KAAK,EAAEg3S,GAAIh3S,GAAG0lW,IAAI1lW,GAAI,MAAM,KAAK,EAAE,OAAOkS,EAAES,GAAG,KAAK,EAAEqkS,GAAIh3S,GAAG+sU,IAAI/sU,GAAGihU,IAAIjhU,GAAG,MAAM,KAAK,EAAEg3S,GAAIh3S,GAAG+sU,IAAI/sU,GAAGg3S,GAAIh3S,GAAGihU,IAAIjhU,GAAG,MAAM,KAAK,EAAEg3S,GAAIh3S,GAAG0lW,IAAI1lW,IAAK,OAAOA,CAAC,CACnvB,SAASypW,IAAIzpW,EAAEkS,GAAG,IAAIqd,EAAE,GAAGvvB,EAAED,EAAG,MAAMmzK,GAAI,IAAI4O,IAAKwH,GAAIkgL,KAAIva,IAAIua,IAAGnoW,EAAE6tV,OAAO,IAzxI3E,SAAalvV,EAAEkS,GAAG,OAAOsoL,GAAIx6L,EAAEuvB,EAAErd,EAAE,CAyxI4Ck0W,CAAIpmX,EAAEA,EAAEkS,GAAI,MAAMghK,GAAI,IAAIiK,GAAG+oM,IAAIh0W,EAAEi0W,MAAM,GAAGj0W,GAAGlS,EAAEuvB,EAAG,OAAOvvB,EAAc,OAAZuvB,EAAEvvB,EAAEuvB,EAAEvvB,EAAEuvB,EAAErd,EAASqd,EAAE5c,GAAG,KAAK,EAAE,OAAOT,EAAES,GAAG,KAAK,EAAE4vK,GAAIviL,GAAG,MAAM,KAAK,EAAE82S,GAAI92S,GAAGuiL,GAAIviL,GAAG,MAAM,KAAK,EAAEgtU,IAAIhtU,GAAGuiL,GAAIviL,GAAG,MAAM,KAAK,EAAEgtU,IAAIhtU,GAAG82S,GAAI92S,GAAGuiL,GAAIviL,GAAI,MAAM,KAAK,EAAE,OAAOkS,EAAES,GAAG,KAAK,EAAEmkS,GAAI92S,GAAG2lW,IAAI3lW,GAAG,MAAM,KAAK,EAAEgtU,IAAIhtU,GAAGuiL,GAAIviL,GAAG,MAAM,KAAK,EAAEgtU,IAAIhtU,GAAG82S,GAAI92S,GAAGuiL,GAAIviL,GAAI,MAAM,KAAK,EAAE,OAAOkS,EAAES,GAAG,KAAK,EAAEmkS,GAAI92S,GAAG2lW,IAAI3lW,GAAG,MAAM,KAAK,EAAE82S,GAAI92S,GAAGgtU,IAAIhtU,GAAGuiL,GAAIviL,GAAG,MAAM,KAAK,EAAE82S,GAAI92S,GAAGgtU,IAAIhtU,GAAG82S,GAAI92S,GAAGuiL,GAAIviL,GAAI,MAAM,KAAK,EAAE,OAAOkS,EAAES,GAAG,KAAK,EAAEq6T,IAAIhtU,GAAGuiL,GAAIviL,GAAG,MAAM,KAAK,EAAEgtU,IAAIhtU,GAAG82S,GAAI92S,GAAGuiL,GAAIviL,GAAG,MAAM,KAAK,EAAE82S,GAAI92S,GAAG2lW,IAAI3lW,GAAI,MAAM,KAAK,EAAE,OAAOkS,EAAES,GAAG,KAAK,EAAEmkS,GAAI92S,GAAGgtU,IAAIhtU,GAAGuiL,GAAIviL,GAAG,MAAM,KAAK,EAAE82S,GAAI92S,GAAGgtU,IAAIhtU,GAAG82S,GAAI92S,GAAGuiL,GAAIviL,GAAG,MAAM,KAAK,EAAE82S,GAAI92S,GAAG2lW,IAAI3lW,IAAK,OAAOA,CAAC,CAGnvB,SAAS4hW,IAAI5hW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAmE,IAAjE8S,EAAEuc,EAAExvB,EAAE+T,EAAEyb,EAAEA,EAAiD5c,GAA/CmoB,EAAE,IAAIm6K,GAAI1lL,EAAEuL,EAAE96B,EAAEuvB,EAAExvB,EAAEmS,EAAEqd,EAAExvB,EAAEwvB,EAAEA,EAAEuL,EAAE5oB,EAAEqd,EAAExvB,EAAEA,EAAEwvB,EAAExvB,EAAEC,IAAOkS,EAAME,EAAE,IAAIuzJ,GAAI3lK,EAAEA,GAAGoS,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAyB,IAAhBuF,EAAEk6K,GAAGC,GAAIxrK,GAAG,KAAS/Q,IAAI49P,MAAMC,KAAf,CAAmF,OAArDn/P,EAAE49K,GAAG4qB,IAAI9kM,GAAGukM,MAAMe,MAAM,IAAIxjM,EAAEo4K,GAAG4qB,IAAI9kM,EAAE4iX,KAAK,GAAGhlX,EAAEoC,EAAE7D,EAASG,EAAE4S,GAAG,KAAK,EAAEtR,EAAErB,EAAEuvB,EAAEuL,EAAE96B,EAAEgT,EAAEuc,EAAEzb,EAAE9T,EAAE,MAAM,KAAK,EAAEqB,EAAErB,GAAG8T,EAAE9T,EAAEgT,EAAEd,EAAO,OAAJhS,EAAE,EAASH,EAAE4S,GAAG,KAAK,EAAE,KAAK,EAAKT,IAAIojR,MAAMv4D,MAAMn9N,EAAE0gL,GAAIC,GAAGgoB,IAAI9kM,EAAE89V,OAAOlgW,EAAE6Q,EAAE4oB,EAAE5oB,EAAEtS,EAAE+9K,GAAG4qB,IAAI9kM,GAAG45J,MAAMo8L,MAAM,GAAGvnV,EAAEhS,EAAEmB,EAAE6Q,EAAE3M,EAAE2M,EAAE0+R,GAAIntS,GAAE,GAAM,IAAcyO,GAAG8qN,MAAK37N,EAAE6Q,EAAEouK,GAAIC,GAAGgoB,IAAI9kM,EAAE89V,OAAO5jL,GAAG4qB,IAAI9kM,GAAG45J,MAAMo8L,MAAM,GAAGvnV,EAAEhS,EAAEmB,EAAE6Q,EAAE3M,EAAE2M,EAAE0+R,GAAIntS,GAAE,GAAM,IAAOkP,EAAEsgI,EAAK3/H,KAAKugB,IAAIlhB,EAAEzS,EAAhX,CAAgY,IAAbqvB,EAAEuL,EAAE5oB,GAAGS,EAAEmoB,EAAE5oB,EAAMlU,EAAE,IAAI2nK,GAAI3lK,EAAEA,GAAGhC,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAyB,IAAhBuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,KAASqD,IAAI49P,MAAMC,KAAiD,OAAlCn/P,EAAE49K,GAAG4qB,IAAI9kM,GAAGukM,MAAMe,MAAM,IAAI1nM,EAAEoC,EAAE7D,EAASG,EAAE4S,GAAG,KAAK,EAAEtR,EAAE6Q,GAAG4B,EAAE5B,EAAEc,EAAEjT,EAAE,MAAM,KAAK,EAAEsB,EAAE6Q,EAAEqd,EAAEuL,EAAE5oB,EAAEc,EAAEhT,EAAE8T,EAAE5B,EAAI,CAI3vB,SAASo0W,IAAItmX,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAmC,GAAjC8hS,IAAItyQ,EAAE,wBAAwB,GAAoB,GAAdrd,EAAElS,EAAEuvB,EAAErxB,OAAT,CAA4R,IAA1P8B,EAAEuvB,EAAErd,EAAElS,EAAEiU,EAAE,EAAEjU,EAAEqoB,EAAE,EAAEroB,EAAEhC,EAAEs4K,IAAIt2K,EAAE2S,EAAE4jK,IAAIv2K,EAAED,EAAEugL,GAAIC,GAAGgoB,IAAIr2L,GAAGmrJ,MAAMgpF,QA99CvJ,SAAarmP,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAiC,IAA/BA,EAAEC,EAAEuvB,EAAEvvB,EAAEA,EAAEoD,GAAG2gL,GAAGhkL,GAAG,IAAIi/N,GAAIj/N,IAAQwvB,EAAE,IAAIo2I,GAAI5lK,GAAGwvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,SAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAAMnsB,EAAE67U,IAAI/sU,GAAGlS,EAAEinN,KAAMnC,GAAI9kN,EAAEoD,EAAE,IAAIylJ,GAAI,CA89Ce09N,CAAIvmX,GAzvBnK,SAAaA,GAAG,IAAIkS,EAAInS,EAAEwF,EAAEu1B,EAAEnoB,EAA4B,IAA1BpN,EAAE,EAAEvF,EAAEgU,EAAE,IAAIs+J,GAAIpgK,EAAE,IAAIukK,GAAQ9jK,EAAE,IAAIgzJ,GAAI3lK,EAAEoD,GAAGuP,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAQ,CAAuB,KAAtB48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAMvP,EAAEmC,EAAMxF,EAAE,IAAI+uO,GAAG7hB,GAAGm1E,GAAItnQ,GAAG96B,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAAoB4nL,GAAIz1K,EAAjByrK,GAAGwtC,GAAGprN,GAAG,IAAYA,EAAE/B,GAAGkU,EAAElS,EAAE0oN,GAAG5tL,GAASi7I,GAAI/1K,EAAEgU,EAAE,IAAIw1N,GAAIt3N,IAAIA,EAAElS,EAAEqvQ,OAAO9pQ,CAAC,CAAC,CAyvB5EihX,CAAIxmX,GA1vB1K,SAAaA,GAAG,IAAIkS,EAAEqd,EAA0E,IAAxEvvB,EAAEuF,EAAE04K,GAAGmV,IAAGsW,IAAI,GAAG1pM,EAAEoD,EAAEmsB,EAAErxB,OAAO,GAAG,GAAG8B,EAAEqB,EAAE48K,GAAGmV,IAAGsW,IAAI,GAAG1pM,EAAEoD,EAAEmsB,EAAErxB,OAAO,GAAG,GAAOqxB,EAAE,IAAIo2I,GAAI3lK,EAAEoD,GAAGmsB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,IAAIvvB,EAAEuF,EAAE2M,EAAE9O,GAAGqgQ,GAAG,IAAI30B,GAAG7hB,GAAGi1E,GAAIhwR,GAAGlS,EAAE27M,KAAK,IAAIpoE,KAAMvzI,EAAEqB,EAAE6Q,EAAE9O,GAAGqgQ,GAAG,IAAI30B,GAAG7hB,GAAGm1E,GAAIlwR,GAAGlS,EAAE27M,KAAK,IAAIpoE,IAAM,CA0vBrEkzO,CAAIzmX,GA1tCjL,SAAaA,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,IAAIwvB,EAAE,IAAIo2I,GAAI3lK,EAAEoD,GAAGmsB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,SAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,KAASluB,IAAI49P,MAAMgF,OAAelkQ,EAAEmS,EAAEhS,EAAEgS,EAAElS,EAAEhC,EAAEi1I,EAAK3/H,KAAKsgB,IAAI5zB,EAAEhC,EAAE+B,GAAGC,EAAE2S,EAAEsgI,EAAK3/H,KAAKugB,IAAI7zB,EAAE2S,EAAE5S,GAAG,CA0tCY2mX,CAAI1mX,GAxmDxL,SAAaA,GAAG,IAAIkS,EAAEqd,EAAsC,IAApCvvB,EAAEoS,EAAE6rK,GAAGgV,IAAGwzD,IAAI,GAAGzmP,EAAEoD,EAAEmsB,EAAErxB,OAAO,GAAG,GAAOqxB,EAAE,IAAIo2I,GAAI3lK,EAAEoD,GAAGmsB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,IAAIvvB,EAAEoS,EAAEF,EAAE9O,GAAG8O,EAAEhS,EAAEgS,EAAElS,EAAEhC,CAAE,CAwmDsD2oX,CAAI3mX,GAAGA,EAAEhC,EAAEi1I,EAAK3/H,KAAKugB,IAAI,EAAE7zB,EAAEhC,GAAGgC,EAAE2S,EAAEsgI,EAAK3/H,KAAKugB,IAAI,EAAE7zB,EAAE2S,GAAG3S,EAAED,EAAEC,EAAED,EAAEC,EAAEhC,EAAEgC,EAAE86B,EAAE96B,EAAE2S,EAAE3S,EAAEhC,EAAEgC,EAAE6T,EA96C9Q,SAAa7T,GAAG,IAAIkS,EAAInS,EAAM,IAAJmS,EAAE,EAAMnS,EAAE,IAAI4lK,GAAI3lK,EAAEuvB,EAAEvvB,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyBgU,GAAGuxP,GAAG,IAAI30B,GAAG7hB,GAAGm1E,GAA9BzkH,GAAGC,GAAI79K,GAAG,KAA2BC,EAAE27M,KAAK,IAAIpoE,KAAM,OAAOrhI,EAAElS,EAAEuvB,EAAEvvB,EAAEuvB,EAAErxB,MAAM,CA86C2H0oX,CAAI5mX,GAAGD,EAAE,IAAIm5O,GAAIl5O,EAAEuvB,GAAGwmJ,GAAI/1K,EAAEuvB,EAAErd,EAAEnS,GAAGC,EAAE0S,EAAE2kP,GAAGr3P,EAAEoD,GAAGpD,EAAEJ,EAAE4uP,GAAIxuP,EAAEqB,EAAErB,EAAEqB,EAAEnD,QAA4B,GAAd8B,EAAE0S,EAAE6c,EAAErxB,QAAW8B,EAAEE,EAAE6/S,GAAI//S,IAAOA,EAAEE,GAAG02S,GAAI52S,IAAgB,GAAZA,EAAEkS,EAAElS,EAAEi/K,MAASmvJ,IAAIpuU,EAAED,GAAGA,EAAE,IAAIm5O,GAAIl5O,EAAEuvB,GAAGwmJ,GAAI/1K,EAAEuvB,EAAErd,EAAEnS,GAAGw5L,GAAGv5L,EAAEA,EAAEA,EAAEkS,GAAGlS,EAAEkS,EAAElS,EAAEqvQ,KAAKrvQ,EAAEiU,EAAEjU,EAAEqoB,EAAEroB,EAAEqoB,EAAE,GAAUuuR,GAAI52S,IAAIA,EAAEuvB,EAAErd,EAAEqd,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGp+K,EAAE,IAAIm5O,GAAIl5O,EAAEuvB,GAAGwmJ,GAAI/1K,EAAEuvB,EAAErd,EAAEnS,GAAGC,EAAEiU,EAAE,EAAEjU,EAAEqoB,EAAE,EAAEroB,EAAEkS,EAAElS,EAAEqvQ,KAAKrvQ,EAAEA,EAAEA,EAAEqvQ,OAAOrvQ,EAAE86B,EAAE96B,EAAE0S,EAAE2kP,GAAGr3P,EAAEoD,GAAGpD,EAAEJ,EAAE4uP,GAAIxuP,EAAEqB,EAAErB,EAAEqB,EAAEnD,UAAao0P,GAAItyP,EAAEE,EAAEH,GAAG+vN,GAAI9vN,EAAE0S,EAAE1S,EAAEE,GAAGynL,GAAI3nL,EAAEkS,EAAElS,EAAEE,GAAGF,EAAEiU,EAAEjU,EAAEiU,EAAEjU,EAAEqB,EAAErB,EAAEE,EAAEkD,GAAGpD,EAAED,EAAEC,EAAEoS,EAAEpS,EAAEE,EAAEkD,GAAGpD,EAAEqoB,GAAGroB,EAAEuF,EAAEvF,EAAEE,EAAEkD,GAAGpD,EAAED,GAAImS,EAAElS,EAAEuvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAG2yF,IAAI5+P,EAAEA,GAAGqwR,IAAIhzQ,EAAlqB,MAAbgzQ,IAAIhzQ,EAA6qB,CAEhwB,SAASkrS,IAAIz6T,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAY,IAAV1O,EAAE,IAAI+sK,GAAQlvK,EAAE,IAAIuiK,GAAIzzJ,EAAElS,GAAGoD,EAAEpD,EAAEoD,EAAEmsB,EAAEA,EAAErxB,QAA+B,IAAN0B,GAAhBM,EAAEy9K,GAAGC,GAAIx6K,GAAG,KAAQmC,KAAqBqjP,GAAIrjP,EAAfk1T,IAAIz6T,EAAEJ,EAAEM,IAAYsgX,IAAIxgX,EAAEJ,EAAEM,GAAMy9K,GAAG4qB,IAAI3oM,GAAGooM,MAAM4yH,MAAM,IAAI36H,IAAI0zG,MAAMG,OAAwE,IAAjEjgS,EAAE8pK,GAAG4qB,IAAIroM,GAAGm9J,MAAMykI,MAAM,IAAI9uR,EAAE2qK,GAAG4qB,IAAIroM,EAAEq1W,KAAK,KAAKt1K,IAAI4I,MAAMC,MAAUp2L,EAAE,IAAIizJ,GAAIzlK,EAAEkS,GAAGM,EAAE1S,EAAE0S,EAAE6c,EAAEA,EAAErxB,QAA+L,IAAtL8V,EAAE2pK,GAAGC,GAAIlrK,GAAG,KAAIooB,EAAE6iJ,GAAG+5B,GAAI13M,EAAEkS,EAAE8B,GAAG,OAA6F+zL,GAAlFjtK,EAAE0+U,IAAIxlW,EAAEH,EAAEG,EAAE5B,IAAI4B,EAAEzO,EAAEgqB,EAAErxB,OAAO8V,EAAErB,EAAE4c,EAAErxB,QAAQ,KAAK,IAAI0qL,GAAI50K,EAAE9T,EAAEy9K,GAAG4qB,IAAI3oM,EAAE+lT,KAAK,KAAK/lT,GAAS8nP,IAAI1zO,GAAG2iL,GAAI32L,EAAEkS,EAAE8B,EAAE8mB,GAAGi7I,GAAIn2K,EAAEI,EAAE86B,IAAGnoB,EAAEgrK,GAAG0pB,GAAIvsK,EAAE1oB,EAAE,GAAG,IAAQ/Q,EAAE,IAAIskK,GAAI3xJ,EAAE8mB,GAAGz5B,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAASkU,EAAEurK,GAAGC,GAAIv8K,GAAG,KAAIoC,EAAE,IAAIilL,IAAMxoL,EAAEF,EAAEoS,EAAElS,EAAEF,EAAEyD,EAAEvD,EAAEgS,EAAEE,EAAElS,EAAEgS,EAAE6jK,GAAIpjK,EAAEmoB,EAAEr3B,GAAOuP,IAAGiB,EAAED,EAAE5B,EAAE0B,EAAE,EAAE29N,GAAI9zD,GAAG4qB,IAAIroM,EAAEq1W,KAAK,OAAOzhW,EAAEkyR,IAAI5zR,EAAExS,EAAEwS,EAAElS,EAAE8T,EAAE9T,EAAE,EAAE+T,IAAIJ,IAAIyhR,MAAMl0E,OAAO3hC,MAAM+jM,KAAKvjL,GAAGhsL,GAAIxQ,EAAEvD,EAAEF,EAAE8T,EAAIrQ,EAAEvD,EAAEgS,EAAE4B,GAAmD,OA/C7vB,SAAa9T,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAY,IAAV8mB,EAAE,IAAIw3I,GAAQlgK,EAAE,IAAIuzJ,GAAI5lK,GAAGqS,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAiC,GAAPyU,EAAE,MAAnBlP,EAAEk6K,GAAGC,GAAIxrK,GAAG,MAAiB0oB,IAAIk/O,KAAMG,KAAM,IAAIj6Q,EAAE,IAAIylK,GAAIliK,EAAE8B,GAAGrF,EAAEF,EAAEE,EAAEqvB,EAAEA,EAAErxB,QAAoCqhP,GAAXvrO,GAAhBpU,EAAE+9K,GAAGC,GAAI19K,GAAG,KAAQH,EAAE/B,IAAakU,EAAGyiR,GAAI30R,EAAEkS,EAAEzO,EAAE7D,EAAE6D,EAAEyO,EAAEtS,EAAEG,IAAYwvB,GAAGg+Q,GAAIv5R,EAAEub,GAAI6mT,IAAIp2U,EAAEkS,EAAEzO,EAAE1D,EAAEH,KAAQoT,EAAEsmW,IAAIt5W,EAAEkS,EAAEqd,EAAE3vB,EAAE6D,EAAEyO,EAAEioQ,IAAIxnQ,KAAMA,IAAImoB,EAAEvL,EAAEuL,EAAEvL,EAAErxB,QAAQ8U,GAAQA,EAAEuc,IAAI5c,EAAEK,SAAU,IAAIc,EAAE,IAAI6xJ,GAAIliK,EAAE8B,GAAGuO,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAAiC,GAAGqhP,GAAXn8O,GAAhB/B,EAAEs8K,GAAGC,GAAI9pK,GAAG,KAAQyb,EAAEvxB,IAAakU,EAAGyiR,GAAI30R,EAAEkS,EAAEzO,EAAEpC,EAAEA,EAAEkuB,EAAE9rB,EAAEyO,OAAQ,KAAIqd,GAAGg+Q,GAAInqS,EAAEmsB,GAAI,UAAcvc,EAAEsmW,IAAIt5W,EAAEkS,EAAEqd,EAAEluB,EAAEoC,EAAEyO,EAAEgoQ,IAAIvnQ,KAAMA,IAAImoB,EAAEvL,EAAEuL,EAAEvL,EAAErxB,QAAQ8U,GAAQA,EAAEuc,IAAI5c,EAAEK,EAAE,CAAI,IAAIhV,EAAE,IAAI2nK,GAAI7qI,GAAG98B,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAASuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,MAAsB,GAAjBmoM,GAAIj0L,EAAElS,EAAEyD,EAAEzD,EAAE,IAAQ+1K,GAAI7jK,EAAElS,EAAEyD,EAAEzD,GAAGyD,EAAE8rB,IAAIhqB,EAAEgqB,EAAEhqB,EAAEgqB,EAAErxB,QAAQuF,EAAQ,CA+CyDojX,CAAI7mX,EAAEkS,EAAEqd,EAAEhqB,EAApBvH,EAAE,IAAIs0K,IAAqB/iJ,GAlH7uB,SAAavvB,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAM+6B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAY,IAAVnT,EAAE,IAAIs0K,GAAQx3I,EAAE,IAAI6qI,GAAIzzJ,EAAElS,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAyB,IAAIuF,EAAE,IAAIkiK,GAAxBgY,GAAGC,GAAI9iJ,GAAG,IAAoB1oB,GAAG3O,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAQ,CAAwB,IAAPmD,EAAE,KAAoBgnB,EAAE,EAAElX,GAAf8C,EAAEumP,IAA7B7nP,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAAuBkP,IAAWzU,OAAOmqB,EAAElX,IAAIkX,EAAcklR,IAAX15R,EAAEI,EAAEoU,IAAatoB,EAAE/B,EAAEuxB,MAAI7c,EAAE4mW,IAAIt5W,EAAEkS,EAAEqd,EAAE1b,EAAEA,EAAE0b,GAAGyqP,KAAMG,KAAK94Q,KAAMA,IAAIrD,EAAEuxB,EAAEvxB,EAAEuxB,EAAErxB,QAAQwU,GAAQA,EAAE6c,IAAIluB,EAAEqR,IAAW,IAAPN,EAAE,KAAoBhP,EAAE,EAAE4Q,GAAf9T,EAAEs6P,GAAI7nP,EAAEpN,IAAWrH,OAAOkF,EAAE4Q,IAAI5Q,EAAcmqS,IAAX3tS,EAAEM,EAAEkD,IAAamsB,EAAEvxB,EAAEuxB,MAAI7c,EAAE4mW,IAAIt5W,EAAEkS,EAAEqd,EAAE3vB,EAAEA,EAAEG,GAAGi6Q,KAAME,KAAK9nQ,KAAMA,IAAIpU,EAAEuxB,EAAEvxB,EAAEuxB,EAAErxB,QAAQwU,GAAQA,EAAE6c,IAAInd,EAAEM,GAAI,CAAE,IAAIM,EAAE,IAAI2yJ,GAAI3nK,GAAGgV,EAAEhT,EAAEgT,EAAEuc,EAAEA,EAAErxB,QAAS4V,EAAE6pK,GAAGC,GAAI5qK,GAAG,MAAsB,GAAjBmzL,GAAIj0L,EAAElS,EAAE8T,EAAE9T,EAAE,IAAQ+1K,GAAI7jK,EAAElS,EAAE8T,EAAE9T,GAAG8T,EAAEyb,IAAIxvB,EAAEwvB,EAAExvB,EAAEwvB,EAAErxB,QAAQ4V,EAAQ,CAkHgKgzW,CAAI9mX,EAAEkS,EAAEqd,EAAEvxB,GAAUA,CAAC,CACrwB,SAASouU,IAAIpsU,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAI,IAAGrB,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAGmC,EAAnB,CAAwH,IAAtFvF,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAGmC,GAAE,EAAKvF,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAG8O,EAAE,EAAElS,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAGrD,EAAE,EAAEC,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAGpD,EAAE,KAASqB,EAAE,IAAIskK,GAAIzzJ,EAAEE,GAAG/Q,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAAmD,IAA1CkU,EAAEurK,GAAGC,GAAIv8K,GAAG,IAAkCrD,GAA5BuxB,EAAE,IAAIo5I,GAAIv2J,GAAG,IAAIy2J,GAAIz2J,IAAWupM,KAAK39M,EAAEu9M,OAAuB5oM,GAAhBlP,EAAEk6K,GAAG3/K,EAAEy9M,KAAK,KAAQz9M,GAAOuxB,GAAGrd,EAAEqd,EAAM5c,GAAGT,IAAGk6T,IAAIpsU,EAAE2S,EAAE4c,GAAGvvB,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAG8O,GAAGlS,EAAEuvB,EAAE5c,EAAE4c,EAAEnsB,GAAGuP,EAAEvP,GAAG8O,EAAElS,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAGrD,GAAGC,EAAEuvB,EAAE5c,EAAE4c,EAAEnsB,GAAGuP,EAAEvP,GAAGrD,IAAQC,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAGrD,GAAGC,EAAE2S,EAAElP,EAAEL,KAAKpD,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAG8O,GAAgC,GAA5B4oB,EAAE6iJ,GAAG4qB,IAAIr2L,GAAG81L,MAAM++K,MAAM,IAAU,IAAIxhX,EAAEu1B,EAAE6gL,KAAKp2M,EAAEg2M,MAAOx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,IAAOvpM,EAAEqd,GAAGxvB,EAAEwvB,IAAG68S,IAAIpsU,EAAED,EAAEwvB,GAAGvvB,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAG8O,GAAGlS,EAAEuvB,EAAExvB,EAAEwvB,EAAEnsB,GAAGrD,EAAEqD,GAAG8O,EAAElS,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAGrD,GAAGC,EAAEuvB,EAAExvB,EAAEwvB,EAAEnsB,GAAGrD,EAAEqD,GAAGrD,GAAOC,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAG8O,EAAE,IAAGlS,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAGrD,GAAGusO,IAAItsO,EAAEhC,EAAE,IAAIsoT,IAAI,mBAAoB,mBAAoBtmT,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAGpD,EAAEA,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAGrD,EAAEC,EAAEuvB,EAAErd,EAAEqd,EAAEnsB,GAAG8O,EAAE9O,GAAG8O,EAAlqB,CAAoqB,CAMtwB,SAAS8tT,IAAIhgU,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAU,IAARA,EAAE,EAAE3D,EAAE,EAAMkU,EAAE,IAAI6xJ,GAAIzzJ,EAAE3M,GAAGuO,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAAQ,CAAsG,IAArGmD,EAAEs8K,GAAGC,GAAI9pK,GAAG,IAAId,EAAE,EAAEvP,EAAE,EAAEzF,EAAEuxB,EAAEouJ,GAAG4qB,IAAIlnM,EAAE+9T,KAAK,IAAIp/T,EAAEi4L,IAAIvlL,EAAE3S,EAAE49K,GAAG4qB,IAAIlnM,EAAEg+T,KAAK,IAAIr/T,EAAEi4L,IAAI7lL,EAAE6gI,EAAK3/H,KAAKugB,IAAI71B,EAAE0U,GAAOuB,EAAE,IAAI0xJ,GAAItkK,EAAE+Q,GAAG6B,EAAEjU,EAAEiU,EAAEsb,EAAEA,EAAErxB,QAAQ,CAAqC,GAApC2V,EAAE8pK,GAAGC,GAAI3pK,GAAG,IAAIoU,EAAEhnB,EAAEzB,EAAEsS,EAAE2B,EAAEjU,EAAEsS,EAAE2B,EAAE7T,EAAEkS,EAAKnS,EAAG,IAAI4S,EAAE,IAAIgzJ,GAAI9xJ,EAAElB,GAAGA,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAA+BgC,GAANkD,GAAhB03B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAQ5S,GAAM/B,EAAKkU,GAAGlS,EAAEA,EAAEE,EAAEkD,KAAI4Q,EAAEi/H,EAAK3/H,KAAKugB,IAAI8pJ,GAAG4qB,IAAIroM,EAAEk/T,KAAK,IAAIp/T,EAAE29K,GAAG4qB,IAAIroM,EAAEm/T,KAAK,IAAIr/T,IAAGmR,EAAEwsK,GAAG4qB,IAAIztK,GAAGuiI,MAAM8hK,MAAM,IAAIn/T,IAAQoS,GAAGjB,GAAG6C,IAAGhB,GAAG9S,EAAEN,EAAEsS,EAAE9O,EAAExD,EAAEsS,EAAE9O,EAAEpD,EAAEkS,EAAEmW,IAAI5kB,IAAK,GAAG8rB,EAAG,IAAI5c,EAAE,IAAIgzJ,GAAI9xJ,EAAEtO,GAAGoN,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAA+BgC,GAANkD,GAAhB03B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAQ4c,GAAMvxB,EAAKkU,GAAGlS,EAAEA,EAAEE,EAAEkD,KAAI4Q,EAAEi/H,EAAK3/H,KAAKugB,IAAI8pJ,GAAG4qB,IAAIroM,EAAEk/T,KAAK,IAAIp/T,EAAE29K,GAAG4qB,IAAIroM,EAAEm/T,KAAK,IAAIr/T,IAAGmR,EAAEwsK,GAAG4qB,IAAIztK,GAAGuiI,MAAM8hK,MAAM,IAAIn/T,IAAQoS,GAAGjB,GAAG6C,IAAGhB,GAAG9S,EAAEN,EAAEsS,EAAE9O,EAAExD,EAAEsS,EAAE9O,EAAEpD,EAAEkS,EAAEmW,IAAI5kB,GAAK,CAAIA,EAAE,IAAGF,GAAGyP,EAAEvP,IAAI7D,EAAE,CAAIA,EAAE,GAAGsS,EAAElS,EAAEuF,EAAEhC,EAAE3D,EAAEsS,EAAES,EAAE/S,IAAOsS,EAAElS,EAAE,EAAEkS,EAAES,EAAE,EAAE,CACnxB,SAASq0W,IAAIhnX,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAE,IAAIzN,EAAE,IAAIogK,GAAI3lK,EAAEA,EAAEkS,GAAG3M,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAyB,IAAIF,EAAE,IAAI2nK,GAAxBgY,GAAGC,GAAIr4K,GAAG,IAAoBvF,GAAGhC,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAASuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,IAAIkU,EAAEE,EAAE3O,EAAEL,GAAGK,EAAEyO,EAAElU,EAAEyF,EAAEL,GAAG8O,EAAEhS,IAAI8wP,KAAMG,KAAK56E,IAAID,IAAoJ,IAA/I7D,GAAIzyK,EAAEuvB,GAAG5c,EAAE3S,EAAEA,EAAEkS,EAAEA,EAAEqd,IAAIw+N,KAAME,OAAOt7O,EAAEk3K,GAAGl3K,EAAE,KAAKk+P,GAAGlzF,GAAGhrK,EAAE,MAAMk3K,GAAGl3K,EAAE,KAAKgrK,GAAGhrK,EAAE,KAAK3S,EAAE6pL,GAAGl3K,EAAE,IAAI,IAAImqK,GAAGnqK,GAAG,IAAIm4D,GAAGn4D,IAn/EtT,SAAa3S,EAAEkS,EAAEqd,GAAGvvB,EAAEA,EAAEkS,EAAElS,EAAEuvB,EAAEA,EAAEvvB,EAAEkS,EAAElS,EAAEqvQ,KAAK5tE,GAAIzhM,EAAED,GAAGC,EAAEuF,EAAEvF,EAAEuvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,EAAE,CAm/E4O8oM,CAAIjnX,EAAEuF,EAAE2M,EAAElS,EAAEkS,GAAG87L,GAAI97L,EAAE9O,EAAE,MAAU03B,EAAEnoB,EAAEgpM,KAAK7gL,EAAEygL,MAA8H,IAAvGnpM,EAAdurK,GAAG7iJ,EAAE2gL,KAAK,IAAQz7M,EAAEkS,EAAEhS,IAAI8wP,KAAMG,OAAO/+O,EAAEy3K,GAAGz3K,EAAE,KAAKy+P,GAAGlzF,GAAGvrK,EAAE,MAAMy3K,GAAGz3K,EAAE,KAAKurK,GAAGvrK,EAAE,KAAKpS,EAAE6pL,GAAGz3K,EAAE,IAAI,IAAI0qK,GAAG1qK,GAAG,IAAI04D,GAAG14D,IAAQY,EAAEZ,EAAEupM,KAAK3oM,EAAEuoM,MAAOznM,EAAE6pK,GAAG3qK,EAAEyoM,KAAK,IAAIvpM,EAAES,EAAEmB,EAAE1Q,IAAI0Q,GAAGozW,IAAIlnX,EAAE8T,EAAE5B,GAAa,IA5G5iB,SAAalS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAMpC,EAAY,IAAVA,EAAE,IAAIo4K,GAAQh2K,EAAgC,IAAIwhK,GAA9B,IAAIR,GAAIzkK,EAAEuvB,GAAIvvB,EAAEspO,KAAK3tB,MAAiBl4M,EAAEzD,EAAEu7M,MAAUh2M,EAAEo4K,GAAGl6K,EAAEzD,EAAEy7M,KAAK,IAAyB,IAA1C3gL,EAAqB6iJ,GAAGp4K,EAAEu1M,KAAK,MAAQ5oM,GAAO6qM,GAAI17M,EAAEy5B,EAAEz5B,EAAEkuB,EAAErd,EAAE7Q,EAAEkuB,GAAS,KAAW,GAALluB,EAAE6Q,GAA0E,IAAd,OAAtD4oB,EAAE6iJ,GAAQ,GAALt8K,EAAE6Q,EAAK,MAAMo3M,GAAS,GAALjoN,EAAE6Q,GAAMkyN,GAAI/iO,EAAEA,EAAErB,EAAEA,IAAI,MAAOA,IAAU86B,EAAE96B,EAAE,GAAOD,EAAE,IAAI4lK,GAAI7qI,EAAE/6B,GAAGA,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAiC,OAAxBqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,MAAOmS,EAAElS,EAASuvB,EAAErd,EAAElS,EAAEsgL,GAAIxlJ,EAAE96B,GAAGuvB,EAAEvvB,EAAGkS,EAAEhS,IAAI8wP,KAAMC,KAAM1hO,EAAErd,EAAElS,EAAEizI,EAAK3/H,KAAKsgB,IAAI0sJ,GAAI/wJ,EAAErd,EAAElS,GAAGsgL,GAAIxlJ,EAAE96B,GAAGuvB,EAAEvvB,GAAKuvB,EAAErd,EAAElS,EAAEizI,EAAK3/H,KAAKugB,IAAIysJ,GAAI/wJ,EAAErd,EAAElS,GAAGsgL,GAAIxlJ,EAAE96B,GAAGuvB,EAAEvvB,KAAMuvB,EAAErd,EAAEA,EAAS,GAAPqd,EAAErd,EAAEA,GAAM0zN,GAAIvkO,EAAEkuB,EAAErd,GAAI,IAAIS,EAAgC,IAAIsyJ,GAA9B,IAAIR,GAAIzkK,EAAEuvB,GAAIvvB,EAAEspO,KAAK3tB,MAAiBhpM,EAAE3S,EAAEu7M,MAAUh2M,EAAEo4K,GAAGhrK,EAAE3S,EAAEy7M,KAAK,IAAjB3gL,EAAqB6iJ,GAAGp4K,EAAEu1M,KAAK,KAAM5oM,EAAElU,EAAE88B,EAAEvL,EAAEnsB,GAAG03B,EAAE96B,CAAE,CA4GvDmnX,CAAInnX,EAAEkS,GAAOnS,EAAE4S,EAAEgpM,KAAK57M,EAAEw7M,MAAuB,IAAIvoM,EAAE,IAAI2yJ,GAAxBgY,GAAG59K,EAAE07M,KAAK,IAAoBz7M,GAAGgT,EAAEhT,EAAEgT,EAAEuc,EAAEA,EAAErxB,QAAS4V,EAAE6pK,GAAGC,GAAI5qK,GAAG,IAAId,EAAE9O,EAAE0Q,EAAE1Q,GAAG8O,EAAE9O,EAAE8O,EAAES,EAAEmB,EAAE1Q,GAAGA,GAAM0Q,GAAG5B,EAAES,EAAEmB,EAAE1Q,KAAI/B,EAAEi/K,GAAIpuK,EAAElU,EAAEkU,EAAEE,EAAE0B,EAAE1Q,GAAGA,KAAK8O,EAAEhS,IAAI8wP,KAAMG,MAAM9vP,EAAEk1K,KAAKrkK,EAAEhS,GAAG+wP,KAAK5vP,EAAEi1K,OAAOpkK,EAAE9O,EAAE0Q,EAAE1Q,GAAGk9K,GAAIpuK,EAAE9O,EAAE0Q,EAAE1Q,IAAI/B,IAAKrB,EAAEuF,EAAEy2M,IAAI,CACzxB,SAASsjJ,IAAIt/V,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAwc,OA5mB1e,SAAagC,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAiC,IAA/BvL,GAAGrd,IAAIlS,EAAEqoB,EAAE43K,IAAI4I,MAAMC,MAAMhuK,EAAE,EAAMv1B,EAAE,IAAIogK,GAAI3lK,EAAEuF,EAAE6hX,MAAM7hX,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAQ,CAAkB,IAAjB6B,EAAE49K,GAAGC,GAAIr4K,GAAG,MAAU04L,OAAOxe,MAAMqnB,KAAM,MAAM5zB,GAAI,IAAI2O,GAAI,8FAA8F9hL,EAAEsnX,GAAGvsV,KAAKolR,GAAIlgT,EAAED,EAAEwvB,EAAE,CAAC,CA4mBrO+3V,CAAb7jX,EAAE,IAAImuW,IAAI1/V,GAASnS,GAAGwF,GAAE,EAAUvF,GAAGA,EAAE8lM,IAAI/lC,MAAM8kN,QAAmCt/W,GAA5Bu1B,EAAE6iJ,GAAG39K,EAAEgmM,IAAIjmC,MAAM8kN,MAAM,QAAWlyF,KAAMC,MAAM93P,GAAG8lL,KAAK9lL,GAAG+lL,KAAIwhJ,IAAI5+V,GAAE,GAAO2/M,GAAI3/M,EAAE8B,EAAE66S,KAAK,IAAIhgF,GAAI38N,GAAE,EAAM8B,IAAIypP,GAAIvrP,EAAEA,EAAEq3B,GAAG04O,KAAME,MAAMj0F,MAAMM,MAAMivE,GAAIvrP,EAAEA,EAAEq3B,EAAE84O,IAAI/sE,KAAKmoD,GAAIvrP,EAAEA,EAAEkP,EAAE+gQ,IAAI9zF,KAAKovE,GAAIvrP,EAAEA,EAAEkP,EAAEihQ,IAAIl0F,KAAKu5I,IAAIx1T,EAAEs8K,KAAKk5I,IAAIx1T,EAAEojM,KAAKk7C,GAAIt+O,EAAEi8K,KAAKqiE,GAAIt+O,EAAEm8K,KAAKu3C,MAAMxkN,EAAElP,EAAEmmB,EAAEq2K,IAAIq3B,MAAMmyD,OAAOhmR,EAAEmhC,EAAEq7J,IAAIssG,MAAMC,MAAMC,IAAIhpS,GAAG,OAtoJvY,SAAazD,EAAEkS,GAAGlS,EAAEkS,EAAE,IAAIyuM,GAAIzuM,EAAE,CAsoJiXq1W,CAAI9jX,EAAEzD,EAAE2S,GAJzZ,SAAa3S,GAAS,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAU,IAAhC0zN,KAAwBp3N,EAAEC,EAAE86B,EAAEl7B,EAAM+S,EAAEslO,GAAGj4O,EAAE0S,GAAG1S,EAAEsgX,KAAK3tW,EAAE4oM,MAAM,CAAsB,GAAJh2M,EAAE,GAAnBu1B,EAAE6iJ,GAAGhrK,EAAE8oM,KAAK,MAAcvpM,EAAE4zL,IAAI/lC,MAAMmtE,QAAO3nO,EAAE+6K,GAAIC,GAAGzlJ,EAAE5oB,EAAE8zL,GAAGknC,QAAY,EAAG,OAAOpyM,EAAE5oB,EAAE+rL,KAAKtrL,GAAG,KAAK,EAAE5S,EAAEA,EAAEkzI,EAAK3/H,KAAKugB,IAAI9zB,EAAEA,GAAGwF,GAAG,MAAM,KAAK,EAAExF,EAAEC,EAAEizI,EAAK3/H,KAAKugB,IAAI9zB,EAAEC,GAAGuF,GAAG,MAAM,KAAK,EAAExF,EAAEwvB,EAAE0jH,EAAK3/H,KAAKugB,IAAI9zB,EAAEwvB,GAAGhqB,GAAG,MAAM,KAAK,EAAExF,EAAEmS,EAAE+gI,EAAK3/H,KAAKugB,IAAI9zB,EAAEmS,GAAG3M,GAAM,GAAGksO,GAAIzxO,EAAEqoB,GAAgE,OAA5DnW,EAAE6zR,GAAIjrQ,EAAE5oB,EAAE3M,GAAG9B,GAAGk6K,GAAG39K,EAAEuF,EAAEygM,GAAGq8E,KAAK,KAAKpiF,IAAIssG,MAAM0I,MAAM1lR,GAAE,EAAauL,EAAE5oB,EAAE+rL,KAAKtrL,GAAG,KAAK,EAAE4c,EAAErd,EAAEnS,EAAEA,EAAEA,EAAEA,EAAEkzI,EAAK3/H,KAAKugB,IAAI9zB,EAAEA,EAAEmS,GAAMzO,GAAG8rB,IAAGxvB,EAAEA,EAAEkzI,EAAK3/H,KAAKugB,IAAI9zB,EAAEA,EAAEA,EAAEC,GAAGD,EAAEC,EAAED,EAAEA,EAAEwF,GAAE,MAAM,KAAK,EAAEgqB,EAAErd,EAAEnS,EAAEC,EAAED,EAAEC,EAAEizI,EAAK3/H,KAAKugB,IAAI9zB,EAAEC,EAAEkS,GAAMzO,GAAG8rB,IAAGxvB,EAAEC,EAAEizI,EAAK3/H,KAAKugB,IAAI9zB,EAAEC,EAAED,EAAEA,GAAGA,EAAEA,EAAEA,EAAEC,EAAEuF,GAAE,MAAM,KAAK,EAAEgqB,EAAErd,EAAEnS,EAAEwvB,EAAExvB,EAAEwvB,EAAE0jH,EAAK3/H,KAAKugB,IAAI9zB,EAAEwvB,EAAErd,GAAMzO,GAAG8rB,IAAGxvB,EAAEwvB,EAAE0jH,EAAK3/H,KAAKugB,IAAI9zB,EAAEmS,EAAEnS,EAAEwvB,GAAGxvB,EAAEmS,EAAEnS,EAAEwvB,EAAEhqB,GAAE,MAAM,KAAK,EAAEgqB,EAAErd,EAAEnS,EAAEmS,EAAEnS,EAAEmS,EAAE+gI,EAAK3/H,KAAKugB,IAAI9zB,EAAEmS,EAAEA,GAAMzO,GAAG8rB,IAAGxvB,EAAEmS,EAAE+gI,EAAK3/H,KAAKugB,IAAI9zB,EAAEmS,EAAEnS,EAAEwvB,GAAGxvB,EAAEwvB,EAAExvB,EAAEmS,EAAE3M,GAAI,CAAC,CAInXiiX,CAAI/jX,GAh3Cha,SAAazD,GAAG,OAAOA,EAAEgU,EAAErB,GAAG,KAAK,EAAEg5T,IAAI3rU,GAAGy/K,MAAMM,MAAM4rJ,IAAI3rU,EAAE6mM,KAAK,MAAM,KAAK,EAAE24K,IAAIx/W,GAAGy/K,MAAMM,MAAMy/L,IAAIx/W,EAAE6mM,KAAK,MAAM,QAAQ01I,IAAIv8U,GAAGy/K,MAAMM,MAAMw8J,IAAIv8U,EAAE6mM,KAAM,CAg3CwQ4gL,CAAIhkX,GA/2Cva,SAAazD,GAAG,OAAOA,EAAEgU,EAAErB,GAAG,KAAK,EAAEi5T,IAAI5rU,GAAGy/K,MAAMC,MAAMksJ,IAAI5rU,EAAE4/K,KAAK,MAAM,KAAK,EAAE6/L,IAAIz/W,GAAGy/K,MAAMC,MAAM+/L,IAAIz/W,EAAE4/K,KAAK,MAAM,QAAQ+8J,IAAI38U,GAAGy/K,MAAMC,MAAMi9J,IAAI38U,EAAE4/K,KAAM,CA+2C+Q8nM,CAAIjkX,GAhD9a,SAAazD,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAE,IAAGzD,EAAE4pB,EAAEyX,KAAP,CAAwV,GAAjUrhC,EAAE4pB,EAAEq2K,IAAIq3B,MAAMiyD,QAAO5rG,GAAG6oB,GAAIxmM,EAAEkS,GAAGutK,MAAMM,MAAM,KAAK1+K,GAAE,EAAKs8K,GAAG6oB,GAAIxmM,EAAEkS,EAAE20L,KAAK,KAAKxlM,GAAE,EAAK6Q,EAAElS,EAAEgU,IAAIshR,MAAMv4D,MAAM/8N,EAAEgU,GAAGgpN,IAAIh6D,GAAI2a,GAAG6oB,GAAIxmM,EAAEkS,EAAEwtK,KAAK,KAAKxtK,GAAG8wJ,GAAI2a,GAAG6oB,GAAIxmM,EAAEkS,EAAE0tK,KAAK,KAAK1tK,GAAG8wJ,GAAIhjK,EAAE2S,EAAET,GAAMlS,EAAE4pB,EAAEq2K,GAAGs3B,OAAM55C,GAAG6oB,GAAIxmM,EAAEkS,EAAE6tK,KAAK,KAAK3tK,GAAE,EAAKurK,GAAG6oB,GAAIxmM,EAAEkS,EAAE20L,KAAK,KAAKz0L,GAAE,EAAKurK,GAAG6oB,GAAIxmM,EAAEkS,EAAEwtK,KAAK,KAAKr+K,GAAE,EAAKs8K,GAAG6oB,GAAIxmM,EAAEkS,EAAE0tK,KAAK,KAAKv+K,GAAE,EAAKrB,EAAE2S,EAAEtR,GAAE,IAASrB,EAAE4pB,EAAEq2K,GAAGupF,KAAwE,IAAlExpR,EAAEA,EAAEoS,GAAE,EAAKpS,EAAEA,EAAEqB,GAAE,EAAKrB,EAAE2S,EAAEP,GAAE,EAAKpS,EAAE2S,EAAEtR,GAAE,EAAKoC,EAAEzD,EAAE4kC,EAAEq7J,IAAIssG,MAAMqI,MAAkB95Q,EAAE,EAAEnoB,GAAZpN,EAAE2gM,OAAchoM,OAAO48B,EAAEnoB,IAAImoB,EAAG/6B,EAAEwF,EAAEu1B,IAAGvL,EAAEouJ,GAAG6oB,GAAIxmM,EAAEhC,EAAE+B,GAAG,QAAcumM,IAAIvmM,IAAIwvB,EAAEnd,GAAE,EAAKmd,EAAEluB,GAAE,IAAUkuB,EAAEnd,GAAG3O,EAAE8rB,EAAEluB,GAAGoC,IAAQzD,EAAE4pB,EAAEq2K,GAAGwpF,MAAMzpR,EAAE4kC,EAAEq7J,IAAIssG,MAAMC,QAAOxsS,EAAE2S,EAAEP,GAAE,EAAKpS,EAAE2S,EAAEP,GAAE,EAASpS,EAAEA,EAAEoS,IAAGpS,EAAEA,EAAEoS,GAAE,EAAKpS,EAAEA,EAAEqB,GAAE,EAAKrB,EAAEA,EAAEuF,GAAE,GAAlnB,CAAwnB,CAgD5PoiX,CAAIlkX,GA5Yrb,SAAazD,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAExF,EAAEC,EAAEE,EAAEi3N,KAASn3N,EAAE4pB,EAAEyX,MAAMixJ,GAAGtyL,EAAE4pB,EAAEwtM,KAAM7xN,EAAExF,EAAEC,GAAOuF,EAAE26U,IAAIlgV,EAAE86B,GAAM96B,EAAE4pB,EAAEq2K,IAAIq3B,MAAMkyD,QAAQxpR,EAAE4kC,EAAEq7J,IAAIssG,MAAMqI,QAAOrvS,EAAE0tI,EAAK3/H,KAAKugB,IAAItuB,EAAE26U,IAAIviK,GAAG6oB,GAAIxmM,EAAEoD,GAAGq8K,MAAMM,MAAM,OAAOx6K,EAAE0tI,EAAK3/H,KAAKugB,IAAItuB,EAAE26U,IAAIviK,GAAG6oB,GAAIxmM,EAAEoD,EAAEyjM,KAAK,SAAO30L,EAAEo6R,GAAItsS,MAASuF,EAAE0tI,EAAK3/H,KAAKugB,IAAItuB,EAAE2M,EAAElS,KAAIiiL,GAAIk6B,GAAGn8M,EAAEuF,EAAEugU,KAAK9/H,IAAIjmC,MAAM+8I,QAAS/8S,EAAEC,EAAEizI,EAAK3/H,KAAKugB,IAAI9zB,EAAEC,EAAEuF,GAAKxF,EAAEC,EAAEuF,GAAGgqB,EAAEvvB,EAAE86B,EAAE98B,GAAIuxB,EAAE,EAAEA,EAAErd,EAAE3M,EAAE66U,IAAIpgV,EAAE86B,EAAE,CA4YwE8sV,CAAInkX,GA3yC5b,SAAazD,GAAS,OAANyvN,KAAazvN,EAAEgU,EAAErB,GAAG,KAAK,EAAE0vU,IAAIriV,GAAGy/K,MAAMM,MAAMsiK,IAAIriV,EAAE6mM,KAAK,MAAM,KAAK,EAAEgpJ,IAAI7vV,GAAGy/K,MAAMM,MAAM8vK,IAAI7vV,EAAE6mM,KAAK,MAAM,QAAQghL,IAAI7nX,GAAGy/K,MAAMM,MAAM8nM,IAAI7nX,EAAE6mM,KAAM,CA2yC8RihL,CAAIrkX,GAAG8vT,IAAI9vT,EAAEs8K,KAAKwzI,IAAI9vT,EAAEojM,KA/bvd,SAAa7mM,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAK3S,EAAEgU,IAAIshR,MAAMv4D,MAAM/8N,EAAEgU,GAAGgpN,MAAYz3N,EAAEvF,EAAE86B,EAAEl7B,EAAEG,EAAEqmO,GAAIzoD,GAAG6oB,GAAIxmM,EAAEkS,GAAGutK,MAAMM,MAAM,MAAM//K,EAAEuvB,EAAErd,EAAElS,EAAE86B,EAAEl7B,EAAEI,EAAEomO,GAAIzoD,GAAG6oB,GAAIxmM,EAAEkS,EAAE20L,KAAK,MAAM7mM,EAAEuvB,EAAExvB,EAAE49K,GAAG6oB,GAAIxmM,EAAEkS,EAAEwtK,KAAK,KAAK/sK,EAAEgrK,GAAG6oB,GAAIxmM,EAAEkS,EAAE0tK,KAAK,KAAK9kJ,EAAEm4G,EAAK3/H,KAAKugB,IAAI,EAAE9zB,EAAEH,EAAEG,EAAEwF,GAAGu1B,EAAEm4G,EAAK3/H,KAAKugB,IAAIiH,EAAEnoB,EAAE/S,EAAEG,EAAEwF,GAAGgqB,EAAE0jH,EAAK3/H,KAAKugB,IAAI,EAAE9zB,EAAEH,EAAEI,EAAEkS,GAAGqd,EAAE0jH,EAAK3/H,KAAKugB,IAAItE,EAAE5c,EAAE/S,EAAEI,EAAEkS,GAAGnS,EAAEH,EAAEG,EAAE+6B,EAAEnoB,EAAE/S,EAAEG,EAAE+6B,EAAE/6B,EAAEH,EAAEI,EAAEuvB,EAAE5c,EAAE/S,EAAEI,EAAEuvB,EAAC,CA+bqIw4V,CAAItkX,GAlLhe,SAAazD,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEA,EAAEvF,EAAEE,EAAEi3N,KAASn3N,EAAE4pB,EAAEyX,MAAMixJ,GAAGtyL,EAAE4pB,EAAEwtM,KAAMllN,EAAE3M,EAAE2M,GAAOA,EAAEiuU,IAAIngV,EAAE86B,GAAM96B,EAAE4pB,EAAEq2K,IAAIq3B,MAAMkyD,QAAQxpR,EAAE4kC,EAAEq7J,IAAIssG,MAAMqI,QAAO1iS,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAEiuU,IAAIxiK,GAAG6oB,GAAIxmM,EAAEoD,GAAGq8K,MAAMC,MAAM,OAAOxtK,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAEiuU,IAAIxiK,GAAG6oB,GAAIxmM,EAAEoD,EAAEw8K,KAAK,SAAOrwJ,EAAE+8Q,GAAItsS,MAASkS,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAEqd,EAAErd,IAAOlS,EAAE4pB,EAAEq2K,GAAGspF,OAASvpR,EAAEgU,IAAIshR,MAAMv4D,MAAM/8N,EAAEgU,GAAGgpN,MAAK9qN,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAEk0N,GAAIzoD,GAAG6oB,GAAIxmM,EAAEkS,GAAGutK,MAAMC,MAAM,OAAOxtK,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAEk0N,GAAIzoD,GAAG6oB,GAAIxmM,EAAEkS,EAAE0tK,KAAK,UAASqC,GAAIk6B,GAAGn8M,EAAEuF,EAAEugU,KAAK9/H,IAAIjmC,MAAM+8I,QAASv3S,EAAE2M,EAAE+gI,EAAK3/H,KAAKugB,IAAItuB,EAAE2M,EAAEA,GAAK3M,EAAE2M,EAAEA,GAAGnS,EAAEC,EAAE86B,EAAE98B,GAAI+B,EAAE,EAAEA,EAAEC,EAAEkS,EAAEmuU,IAAIrgV,EAAE86B,EAAE,CAkLhCktV,CAAIvkX,GAAO8rB,GAnsD9e,SAAavvB,GAAS,IAAIkS,EAAInS,EAAY,IAA1Bo3N,KAAkBjlN,EAAElS,EAAEE,EAAEgS,EAAMnS,EAAE49K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,GAAG+sK,MAAMonB,MAAM,IAAI,IAAI8U,KAAK57M,EAAEw7M,MAAS59B,GAAG59K,EAAE07M,KAAK,KAASl2M,EAAI2M,GAAGA,CAAE,CAmsD8X+1W,CAAIxkX,GA1yChgB,SAAazD,GAAS,OAANyvN,KAAazvN,EAAEgU,EAAErB,GAAG,KAAK,EAAE8zU,IAAIzmV,GAAGy/K,MAAMC,MAAM+mK,IAAIzmV,EAAE4/K,KAAK,MAAM,KAAK,EAAE44I,IAAIx4T,GAAGy/K,MAAMC,MAAM84I,IAAIx4T,EAAE4/K,KAAK,MAAM,QAAQsoM,IAAIloX,GAAGy/K,MAAMC,MAAMwoM,IAAIloX,EAAE4/K,KAAM,CA0yCkWuoM,CAAI1kX,GAAG8vT,IAAI9vT,EAAEi8K,KAAK6zI,IAAI9vT,EAAEm8K,KAAK5hL,EAAEyF,EAAEmhC,EAAEq7J,IAAIssG,MAAMqI,MAAMqrC,IAAIx8U,EAAEzF,EAAE+hL,KAAKkgK,IAAIx8U,EAAEzF,EAAE6oM,KAAKy5I,IAAI78U,EAAEzF,EAAE0hL,KAAK4gK,IAAI78U,EAAEzF,EAAE4hL,KAAK8hB,GAAI,IAAI0oB,GAAI,KAAK,IAAI7c,GAAI,IAAI9oC,GAAIhhK,EAAEzF,GAAG,IAAI,IAAI85I,IAAK4pD,GAAIyoB,GAAI,IAAIC,GAAI,KAAK6tB,GAAGx0O,EAAEiP,GAAG1S,EAAEooX,MAAM,IAAIrwO,IAAK,IAAIC,IAvqC/sB,SAAah4I,GAAS,IAAIkS,EAAEqd,EAAExvB,EAAdo3N,KAAoBn3N,EAAE4kC,EAAEq7J,IAAIssG,MAAMoI,QAAc50S,EAAEC,EAAE86B,EAAE98B,EAAEkU,EAAE,IAAI44O,GAAI9qP,EAAEA,EAAEuvB,IAAGA,EAAE,IAAIspJ,IAAM3mK,EAAEA,EAAEqd,EAAExvB,EAAEwvB,EAAEA,EAAExvB,EAAEmS,EAAEnS,EAAEA,EAAEA,EAAEwvB,EAAEA,EAAExvB,EAAEwvB,EAAExvB,EAAEmS,GAAGA,EAAEqd,EAAErd,EAAEA,GAAGqd,EAAEvvB,EAAED,EAAEA,EAAEA,EAAEC,GAAGkS,EAAEnS,EAAEmS,EAAElS,GAAGA,EAAEuF,EAAE8iX,GAAG94V,GAAE,CAuqCoiB+4V,CAAI7kX,GAAGA,EAAE8B,EAAEgjX,GAAG9kX,EAAEvD,GAAGwhM,GAAI,IAAI0oB,GAAI,KAAK6tB,GAAGx0O,EAAEiP,GAAG1S,EAAEooX,MAAM,IAAIlwO,IAAYz0I,EAAEvD,GAAlSuD,EAAEvD,CAAiS,CAI3xB,SAASgyV,IAAIlyV,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAIwU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE,GAAe,GAAZrV,EAAEA,EAAErxB,OAAU,CAAW,IAAVgC,EAAE,IAAIoyK,GAAQ1yK,EAAE,IAAI+lK,GAAIp2I,GAAG3vB,EAAEI,EAAEJ,EAAE2vB,EAAEA,EAAErxB,QAAyB63K,GAAI71K,EAAE,IAAI+0M,IAA1BjiM,EAAE2qK,GAAGC,GAAIh+K,GAAG,KAAoB5B,EAAEgV,EAAEZ,IAAwC,IAApCrS,EAAEH,GAAKsS,GAAG2lP,GAAI93P,EAAEy7P,GAAItpP,IAAIq1Q,KAAME,MAAYirD,IAAI1yU,EAAEuvB,IAAIkiT,IAAIzxU,EAAEuvB,GAAE,GAAyO,IAAlOxvB,EAAEH,GAAKsS,GAAG2lP,GAAI93P,EAAEy7P,GAAItpP,IAAIq1Q,KAAME,MAAMhkR,EAAE,EAAEzF,EAAE,EAAEuH,EAAE,KAAoB,GAAZgqB,EAAEA,EAAErxB,SAAcu/M,GAAI,EAAEluL,EAAEA,EAAErxB,QAAuBuF,GAApC8B,EAAqBo4K,GAAGpuJ,EAAEA,EAAE,GAAG,KAASvxB,GAAGy/M,GAAI,EAAEv9M,EAAEqvB,EAAErxB,QAAQy/K,GAAGz9K,EAAEqvB,EAAE,GAAG,IAAIvvB,EAAEhC,EAAEuH,EAAE6M,GAAGqrM,GAAI,EAAEv9M,EAAEqvB,EAAErxB,QAAQy/K,GAAGz9K,EAAEqvB,EAAE,GAAG,IAAIrd,GAAES,EAAEsgI,EAAK3/H,KAAKuc,KAAKpsB,EAAEA,EAAEzF,EAAEA,GAAG8V,EAAEksS,GAAIzwR,GAAK,EAAkB,GAAVzb,EAAE9T,EAAEi/K,MAAQ,CAAC,IAAI59K,EAAEyS,EAAE9T,EAAE2hP,KAAKhmC,KAAKt6M,EAAEk6M,MAAOnpM,EAAEurK,GAAGt8K,EAAEo6M,KAAK,IAAUznM,GAAN5Q,EAAEpD,EAAE86B,GAAM98B,EAAEoF,EAAEuP,EAAE,EAAED,EAAEtP,EAAEgP,EAAEhP,EAAE03B,EAAE,EAAEjnB,EAAEzB,EAAEpU,EAAEoU,EAAEO,EAAE,EAAoBxB,EAAhBiB,EAAEA,EAAEA,EAAE0oB,EAAE,EAAYpoB,EAA4BkX,GAAtCvB,EAAExU,EAAEG,IAAQzQ,EAAE0vI,EAAK3/H,KAAKuc,KAAKxH,EAAEA,EAAElX,EAAEA,IAASyzB,EAAEzzB,EAAE5N,EAAE4+M,GAAI/vM,EAAEA,EAAEpU,EAAE4rB,EAAEjX,GAAGyvM,GAAIhwM,EAAEA,EAAEA,EAAEwyB,EAAEjyB,GAAG5S,EAAEH,GAAKsS,GAAG2lP,GAAI93P,EAAEy7P,GAAItpP,IAAIq1Q,KAAME,MAAM3zQ,EAAEksS,GAAI,IAAIhhF,GAAIlrN,GAAO,CAAG9T,EAAEA,GAAGA,EAAEA,EAAE+3F,GAAG,IAAIinI,GAAIlrN,IAAI/T,EAAEH,GAAKsS,GAAG2lP,GAAI93P,EAAEy7P,GAAItpP,IAAIq1Q,KAAME,MAAMyqE,IAAIlyV,EAAEkS,EAAE,IAAI8sN,GAAIlrN,GAAG/T,EAAE,CAAC,CACryB,SAASyoX,IAAIxoX,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAkD,GAAhDtP,EAAEpD,EAAEJ,EAAEoU,EAAEhU,EAAEE,EAAE8S,EAAEhT,EAAED,EAAE+T,EAAEwsK,GAAIC,GAAGosI,IAAI3sT,GAAGq9J,MAAMorN,QAAWv2W,EAAE,CAAoB,IAAnB7Q,EAAEyS,GAAG5B,EAAE+sK,KAAK,GAAGr/K,EAAE,EAAM5B,EAAEkU,EAAEypM,KAAK39M,EAAEu9M,MAAuBl6M,IAAhBsR,EAAEgrK,GAAG3/K,EAAEy9M,KAAK,KAASv7M,EAAEF,EAAEJ,EAAEqzI,EAAK3/H,KAAKugB,IAAIj0B,EAAE+S,EAAEzS,EAAEgS,GAAoD,IAAjDQ,EAAEtP,EAAEpD,GAAGqB,EAAE2S,EAAEhU,GAAG,EAAE86B,EAAE13B,EAAE8O,EAAEc,EAAEjT,EAAEH,EAAmB2F,EAAjBxF,EAAEiU,EAAEhU,GAAGkS,EAAE+sK,KAAK,GAAWx7K,EAAEyO,EAAEypM,KAAKl4M,EAAE83M,OAAO5oM,EAAEgrK,GAAGl6K,EAAEg4M,KAAK,KAAM77M,EAAEI,EAAE0S,EAAEC,EAAE/S,EAAEsS,EAAE4oB,EAAEnoB,EAAEzS,EAAEgS,EAAEQ,GAAGC,EAAEzS,EAAEF,EAAE8T,GAAE1B,EAAEkiV,IAAI3hV,IAAK/S,EAAEI,EAAE2S,EAAEzS,EAAEF,EAAE,EAAEoS,EAAEpS,EAAEA,EAAEoS,EAAExS,EAAEsS,EAAES,EAAEzS,EAAEgS,GAAEhS,EAAEy9K,GAAG4qB,IAAI51L,GAAGq1L,MAAMusJ,MAAM,KAAShvV,EAAEgqB,EAAErxB,OAAOgC,EAAEyS,EAAE4c,EAAErxB,QAAQ,IAAGgC,EAAEN,EAAEI,EAAEuF,EAAErF,EAAEF,EAAEA,EAAEE,EAAEN,EAAEsS,EAAE,EAAEqgP,GAAIryP,EAAEF,IAAGuF,GAAGxF,CAAE,CAAC,GAAGwvB,EAAE,CAAoB,IAAnBluB,EAAEyS,GAAGyb,EAAE0vJ,KAAK,GAAGr/K,EAAE,EAAM5B,EAAEuxB,EAAEosL,KAAK39M,EAAEu9M,MAAuBl6M,IAAhBsR,EAAEgrK,GAAG3/K,EAAEy9M,KAAK,KAASv7M,EAAEF,EAAEJ,EAAEqzI,EAAK3/H,KAAKugB,IAAIj0B,EAAE+S,EAAEzS,EAAEgS,GAAwD,IAArDQ,EAAEtP,EAAEpD,GAAGqB,EAAE2S,EAAEhU,GAAG,EAAE86B,EAAE13B,EAAE8O,EAAE8B,EAAE9B,EAAEc,EAAEhT,EAAEJ,EAAmB2F,EAAjBxF,EAAEiU,EAAEhU,GAAGuvB,EAAE0vJ,KAAK,GAAWx7K,EAAE8rB,EAAEosL,KAAKl4M,EAAE83M,OAAO5oM,EAAEgrK,GAAGl6K,EAAEg4M,KAAK,KAAM77M,EAAEI,EAAE0S,EAAEC,EAAE/S,EAAEsS,EAAE4oB,EAAEpoB,GAAGC,EAAEzS,EAAEF,EAAE8T,GAAE1B,EAAEkiV,IAAI3hV,IAAK/S,EAAEI,EAAE2S,EAAEzS,EAAEF,EAAE,EAAEoS,EAAEpS,EAAEA,EAAEoS,EAAExS,EAAEsS,EAAE,GAAEhS,EAAEy9K,GAAG4qB,IAAI51L,GAAGq1L,MAAMusJ,MAAM,KAAShvV,EAAEgqB,EAAErxB,OAAOgC,EAAEyS,EAAE4c,EAAErxB,QAAQ,IAAGgC,EAAEN,EAAEI,EAAEuF,EAAErF,EAAEF,EAAEA,EAAEE,EAAEN,EAAEsS,EAAE8B,EAAE9B,EAAEqgP,GAAIryP,EAAEF,IAAGuF,GAAGxF,CAAE,CAAC,CAE1yB,SAAS21W,IAAI11W,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAIqD,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAA0V,IAAxVhW,EAAE,IAAIi3M,GAAIl1M,EAAE/B,EAAE+B,EAAE4S,EAAE,EAAE5S,EAAEqS,EAAErS,EAAE+6B,EAAE,GAAGl7B,EAAEinV,IAAI9mV,GAAGG,EAAEy9K,GAAG26B,IAAIpmM,GAAGmrJ,MAAMykI,MAAM,IAAI9tR,EAAE2pK,GAAG26B,IAAIv4M,EAAE4mV,KAAK,IAAQlsI,GAAIg8G,IAAI12T,GAAG0xW,OAAsBruW,EAAX,GAALrD,EAAE/B,GAAW,GAAL+B,EAAEqS,EAAQ,EA1mCnL,SAAapS,EAAEkS,GAAG,IAAIqd,EAAE,IAAI4gO,GAAInwP,GAAI,MAAMkzK,GAAI,IAAI4O,GAAI0wL,MAAe,OAATjjV,EAAE4gO,GAAInwP,GAAUkS,EAAES,GAAG,KAAK,EAAE,QAAS3S,EAAEoS,EAAEpS,EAAE86B,GAAG,KAAK,EAAE,OAAO96B,EAAEhC,EAAEuxB,EAAE5c,EAAE,KAAK,EAAE,OAAO3S,EAAEoS,EAAEmd,EAAEuL,EAAE,KAAK,EAAE,QAAS96B,EAAEhC,EAAEgC,EAAE2S,GAAI,OAAO,CAAC,CA0mCC+1W,CAAI3oX,EAAEiU,GAAIo3R,IAAIrrS,EAAE0xW,IAAIruW,IAA+E2kM,GAAzDxiM,EAAEi0W,IAAIz5W,EAAEG,EAAE8T,EAAEpU,EAA7B,IAAIq1M,GAAI/iM,EAAES,EAAET,EAAE4oB,GAAmB98B,EAAE,IAAIi3M,GAAIl1M,EAAE4S,EAAE5S,EAAE+6B,GAAG6iJ,GAAG4qB,IAAIh5K,EAAEo2R,KAAK,KAAKp2R,IAAUy4K,MAAM0/C,KAAK3nP,GAnoK9S,SAAaC,EAAEkS,GAAGlS,EAAEuvB,EAAErd,CAAC,CAmoK8Sy2W,CAApB7tV,EAAE6iJ,GAAG0pB,GAAI9hM,EAAE6M,EAAE,GAAG,IAhWjU,SAAapS,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAe,IAATA,EAAEq1N,GAAInwP,GAAOuF,EAAE,IAAIw5K,KAAM/+K,EAAEuF,IAAIvF,EAAEuF,EAAE,IAAIwlN,GAAIl9B,IAAG7tL,EAAE,EAAE,IAAIA,EAAEuF,IAAIA,EAAEA,GAAGA,EAAEvH,EAAEihL,MAAgF,GAAzEl/K,EAAE49K,GAAGwB,IAAI55K,GAAG,KAAiE8lN,GAA3DL,IAAIrtC,GAAG0O,KAAMtsL,EAAEwvB,IAAIxvB,EAAEwvB,EAAE,IAAIw7L,GAAI19B,IAAGttL,EAAE,EAAE,IAAIA,EAAEwvB,GAAG,GAAG,KAAeuL,GAAI,OAAO,EAAM,IAAIvL,EAAE,IAAIwvJ,KAAM/+K,EAAED,IAAIC,EAAED,EAAE,IAAIgrN,GAAIl9B,IAAG7tL,EAAE,EAAE,IAAIA,EAAED,IAAIwvB,EAAEhqB,GAAGgqB,EAAEvxB,EAAEihL,MAAgF,GAAzE/sK,EAAEyrK,GAAGwB,IAAI5vJ,GAAG,KAAiE87L,GAA3DL,IAAIrtC,GAAG0O,KAAMn6K,EAAEA,IAAIA,EAAEA,EAAE,IAAI64M,GAAI19B,IAAGn7K,EAAE,EAAE,IAAIA,EAAEA,GAAG,GAAG,KAAe4oB,GAAI,OAAO,EAAM,OAAO,CAAK,CAgW1D8tV,CAAI7oX,IAAIgoM,GAAIxiM,EAAEgwW,KAAK1sK,MAAMwuB,GAAIruB,OAAOl1L,EAAE6pK,GAAG26B,IAAIpmM,EAAEqjW,KAAK,KAAKt1K,GAAG6I,KAASrlM,EAAE,IAAIs7K,KAAMh/K,EAAEH,IAAIG,EAAEH,EAAE,IAAI06L,GAAIrN,IAAGltL,EAAE,EAAE,IAAIA,EAAEH,IAAI6D,EAAE8B,GAAG9B,EAAEzF,EAAEihL,MAAwB,IAAIgD,GAAIk6B,GAAG7D,IAA5B3lM,EAAEgrK,GAAGwB,IAAI17K,GAAG,KAAsBuyW,QAAUrjW,EAAE3S,IAAGgT,EAAE4sS,GAAIjtS,GAAGojK,GAAIj7I,EAAEA,EAAE9nB,IAAOc,GAA+F,OAA5FzS,EAAE,EAAEowO,GAAI9zD,GAAG26B,IAAIpmM,EAAEqjW,KAAK,OAAOl0W,EAAE2kS,IAAI,IAAI/wF,GAAItiM,EAAE3U,EAAE2U,EAAEP,GAAG,IAAI6iM,GAAItiM,EAAEA,EAAEA,EAAEmoB,GAAG,IAAIm6K,GAAIl1M,EAAE4S,EAAE5S,EAAE+6B,GAAG,EAAE9mB,IAAWA,EAAErB,GAAG,KAAK,EAAE,KAAK,EAAEK,EAAE9S,EAAEF,EAAEqB,EAAE,MAAM,KAAK,EAAE,KAAK,EAAE2R,EAAE9S,EAAEgS,EAAE7Q,EAAM0mM,GAAIxiM,EAAEijM,IAAIjoB,GAAG+3B,IAAIwF,GAAI5rM,GAAGs2L,OAAOT,GAAIxiM,EAAEkjM,IAAIloB,GAAG+3B,IAAIwF,GAAI5rM,GAAGu2L,OAAOV,GAAIxiM,EAAEmjM,IAAInoB,GAAG+3B,IAAIwF,GAAI5rM,GAAGw2L,OAAO3yB,GAAIxmJ,EAAEvvB,EAAEuF,GAAGoxL,GAAI32L,EAAEA,EAAED,EAAEwF,EAAE,CAC7yB,SAAS45U,IAAIn/U,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAI9S,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAuG,IAAnGw5Q,IAAItyQ,EAAE,0BAA0B,GAAGluB,EAAE,EAAE4lN,KAAMo9E,GAAInyR,EAAE,IAAIu+J,IAAKi2H,MAAMssE,OAAOl4U,EAAE5oB,EAAEA,EAAEzO,EAAEq7P,IAAI5sP,EAAEA,EAAEA,GAAGE,GAAE,EAAWA,GAAG3O,EAAEyO,EAAEA,GAAGzO,EAAE1D,EAAEC,GAAG0S,EAAEirK,GAAGy8E,GAAI32P,GAAG,IAAyB,GAArBk6K,GAAG4qB,IAAI71L,EAAEsgW,KAAK,IAAIhzW,IAAO86B,EAAG1oB,GAAE,EAAqE,GAA7CO,EAAE,IAAIu1K,GAArB,IAAIitE,GAAIjjP,EAAE,EAAE4oB,IAAmC98B,EAAE,IAAIkqL,GAAvB,IAAIitE,GAAIjjP,EAAE4oB,EAAE5oB,EAAEA,IAAwB,GAALS,EAAET,EAAM,IAAIhS,EAAE4+P,IAAI9gQ,EAAE,GAAGkC,EAAEgS,GAAGhS,EAAEH,EAAEwvB,GAAoBw4K,GAAdpqB,GAAGohF,GAAI7+P,GAAG,IAAU09W,IAAI5lK,GAAI32M,WAAkB,IAANyS,EAAEnB,EAAET,EAAMmW,EAAEy2O,IAAInsP,EAAE,GAAG0V,EAAEnW,GAAGmW,EAAEtoB,EAAEwvB,GAAG,CAAuG,IAAtFw4K,GAAhB9zL,EAAE0pK,GAAGohF,GAAI12O,GAAG,IAAUu1V,IAAI5lK,GAAI32M,MAAe89U,IAAIn/U,EAAbD,EAAE6yS,GAAI3+R,GAAWiyR,GAAI32Q,EAAE,EAAEzb,EAAE,IAAIuwR,GAAItkS,EAAEkhP,GAAI,IAAIxwE,GAAImtM,OAAO5qW,EAAE,IAAIymK,GAAQ5lK,EAAEirP,IAAI/+P,EAAE,GAAG8T,EAAE3B,GAAG2B,EAAE9T,EAAEwvB,GAAoB,IAAhB7c,EAAEirK,GAAGohF,GAAIlrP,GAAG,IAAQG,EAAE8qP,IAAI7qP,EAAElU,EAAE,GAAGiU,EAAE9B,GAAG8B,EAAEjU,EAAEwvB,IAAInsB,EAAEu6K,GAAGohF,GAAI/qP,GAAG,MAAOub,GAAG7c,GAAIqqM,GAAI/pM,EAAE5P,EAAE4P,EAAEuc,EAAErd,EAAEc,EAAEuc,GAAyD,IAA/CkyK,GAAIxtL,EAAElU,GAAGw5L,GAAGtlL,EAAElU,EAAEiT,GAAGvP,EAAEq7P,IAAI9gQ,EAAEA,EAAEkU,GAAG3M,EAAE0O,EAAElU,EAAEmS,EAAEE,GAAE,EAAW,EAAE7M,GAAG6M,GAAG3O,EAAEyO,EAAEA,GAAGzO,EAAE1D,EAAEC,GAAG0S,EAAEirK,GAAGy8E,GAAI32P,GAAG,IAA4B,GAArBk6K,GAAG4qB,IAAI71L,EAAEsgW,KAAK,IAAIhzW,GAAM+nM,GAAIr1L,EAAEkrW,IAAI5lK,GAAI32M,QAAQkE,EAAE+uR,GAAI7wR,IAAQ2O,GAAE,CAAO,CAAEmwR,IAAIhzQ,EAAE,CAE7yB,SAAS61V,IAAIplX,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAInoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAof,IAAxe+7P,GAAVz9P,EAAE,IAAI2mU,IAAU7mU,GAAGysP,IAAIvsP,EAAEurK,GAAG26B,IAAIpmM,GAAGmrJ,MAAMspL,MAAM,KAAK5+I,GAAI31L,GAAG41L,MAAM0/C,KAAKx1O,GAAGqgP,GAAIngP,EAAEmd,IAAGzb,EAAE1B,EAAElS,GAAIF,EAAEkS,EAAES,EAAEmB,EAAE5B,EAAEA,EAAE4oB,GAAEz5B,EAAE+Q,EAAExS,GAAII,EAAEkS,EAAElU,EAAEqD,EAAE6Q,EAAEA,EAAEE,EAAEukL,GAAI32L,EAAEA,EAAEkS,EAAEE,IAAGO,EAAEo7P,GAAI53B,GAAIg3C,GAAI,IAAI/iE,GAAI,OAAOl4M,EAAE3M,IAAI2M,EAAE3M,EAAE,IAAIwlN,GAAIl9B,IAAG37K,EAAE,EAAE,IAAI,IAAIq7L,GAAIr7L,EAAE3M,EAAE,MAAM,IAAIi3I,IAAK,IAAIF,IAAK,IAAI2sB,GAAI/2J,OAAQS,EAAEo7P,GAAI53B,GAAIg3C,GAAI,IAAI/iE,GAAI,OAAOl4M,EAAEnS,IAAImS,EAAEnS,EAAE,IAAIgrN,GAAIl9B,IAAG37K,EAAE,EAAE,IAAI,IAAIq7L,GAAIr7L,EAAEnS,EAAE,MAAM,IAAI08I,IAAK,IAAIF,IAAK,IAAI2sB,GAAIh3J,KAAKS,IAAIA,EAAEo7P,GAAI,IAAI3jD,GAAI,OAAOl4M,EAAE3M,IAAI2M,EAAE3M,EAAE,IAAIwlN,GAAIl9B,IAAG37K,EAAE,EAAE,IAAI,IAAIq7L,GAAIr7L,EAAE3M,EAAE,MAAM,IAAIm3I,KAAMqrD,GAAI31L,EAAE2oT,KAAKrtG,OAAM/6M,IAhJjf,SAAa3S,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAgL,IAA9K3O,EAAEzD,EAAEoS,KAASqtK,MAAMqnB,MAAM50L,IAAIojR,MAAMl0E,MAAMlvM,IAAIojR,MAAMj0E,OAAiBs9C,IAAI3+P,EAAfyD,EAAEisW,IAAI1vW,EAAEuvB,MAAevvB,EAAEgU,EAAoBhU,EAAEgU,GAAnBizM,KAAMA,KAAMgjB,MAAU9iO,IAAIk2J,MAAMo0M,OAAOhuW,GAAGqjM,MAAa,GAAP9mM,EAAEJ,EAAEI,GAAa,GAAPA,EAAEJ,EAAEsS,IAAO61L,GAAI/nM,EAAEyxW,IAlqCtM,SAAazxW,EAAEkS,GAAG,IAAIqd,EAAQ,OAANA,EAAEvvB,EAAEhC,EAASkU,EAAES,GAAG,KAAK,EAAE,QAAS3S,EAAEJ,EAAEsS,EAAElS,EAAEE,EAAEgS,GAAG,KAAK,EAAE,OAAOlS,EAAEJ,EAAEI,EAAEuvB,EAAErvB,EAAEF,EAAE,KAAK,EAAE,OAAOA,EAAEJ,EAAEsS,EAAEqd,EAAErvB,EAAEgS,EAAE,KAAK,EAAE,QAASlS,EAAEJ,EAAEI,EAAEA,EAAEE,EAAEF,GAAI,OAAO,CAAC,CAkqCyC6oX,CAAI7oX,EAAEyD,KAAOyO,IAAIojR,MAAMv4D,KAAK,CAAK,OAAJ3qN,EAAE,EAAS3O,EAAEkP,GAAG,KAAK,EAAE,KAAK,GAAEmoB,EAAE96B,EAAEhC,EAAEkC,EAAEF,GAAI,IAAIoS,EAAEpS,EAAEJ,EAAEI,EAAE86B,GAAG,MAAM,KAAK,EAAE,KAAK,GAAEv1B,EAAEvF,EAAEhC,EAAEkC,EAAEgS,GAAI,IAAIE,EAAEpS,EAAEJ,EAAEsS,EAAE3M,GAAIwiM,GAAI/nM,GAAGgoM,MAAMu5J,KAAKnvV,EAAE,CAAa,GAAZpU,EAAEgC,EAAEE,EAAEyS,EAAE3S,EAAEA,EAAKD,EAAG4S,EAAE3S,EAAED,EAAEC,EAAE2S,EAAET,EAAEnS,EAAEmS,EAAElS,EAAED,GAAE,OAAU,GAAGmS,GAAGkvM,KAAKlvM,GAAGmvM,KAAK59M,GAAGqjM,IAAK,OAAOrjM,EAAEkP,GAAG,KAAK,EAAEA,EAAE3S,EAAEhC,EAAEgC,EAAE,EAAE,MAAM,KAAK,EAAE2S,EAAE3S,EAAEhC,EAAEgC,EAAE2S,EAAET,EAAElU,EAAEkU,EAAE,EAAE,MAAM,KAAK,EAAES,EAAE3S,EAAEhC,EAAEgC,EAAE,EAAE2S,EAAET,EAAElU,EAAEkU,EAAE,MAAM,KAAK,EAAES,EAAET,EAAElU,EAAEkU,EAAE,OAASS,EAAE3S,EAAEhC,EAAEgC,EAAE,EAAE2S,EAAET,EAAElU,EAAEkU,EAAE,CAAE,CAgJ7D42W,CAAI12W,EAAE0oB,EAAEv1B,EAAEo4K,GAAG26B,IAAIpmM,EAAEunV,KAAK,IAAQz7V,EAAE,IAAI+gL,KAAM7sK,EAAEtS,IAAIsS,EAAEtS,EAAE,IAAI06L,GAAIrN,IAAG/6K,EAAE,EAAE,IAAIA,EAAEtS,IAAI5B,EAAEuH,GAAGvH,EAAEA,EAAEihL,OAAyBgD,GAAIk6B,GAAG7D,IAAzB70M,EAAEk6K,GAAGwB,IAAInhL,GAAG,KAAmBg4W,QAAUvyW,EAAEzD,GAAG+1K,GAAI3jK,EAAE0oB,EAAE8kR,GAAIn8S,IAAI,OAAO8B,EAAEoN,GAAG,KAAK,EAAE,KAAK,GAAGP,EAAEA,IAAIqtK,MAAMM,MAAM3tK,EAAEA,GAAGy0L,MAAM9mM,EAAE8nN,IAAI8rF,MAAMO,MAAM,MAAM,KAAK,EAAE,KAAK,GAAG9hS,EAAEA,IAAIqtK,MAAMC,MAAMttK,EAAEA,GAAGwtK,MAAM7/K,EAAE8nN,IAAI8rF,MAAMO,MAAO,OAAO9hS,CAAC,CACpzB,SAAS6/V,IAAIjyW,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,GAAG,IAAIlP,EAAEzF,EAAEoU,EAAI0B,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAA4C,IAA1CjB,EAAE,KAAKjT,IAAI2tP,KAAMC,KAAM36O,EAAEd,EAAGnS,GAAG8tP,MAAM76O,EAAEuc,GAAOnsB,EAAE4P,EAAEhT,EAAE2hP,KAAKhmC,KAAKv4M,EAAEm4M,MAAM,CAAmF,IAAlFr7M,EAAEy9K,GAAGv6K,EAAEq4M,KAAK,IAAIznM,EAAE0hP,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC3zL,EAAElC,EAAE4B,EAAEM,EAAEN,EAAEM,EAAEF,KAAKkS,EAAE+B,EAAE,IAAIwiK,GAAIhzK,EAAE,IAAIgzK,GAAQrkK,EAAE,IAAIo/P,GAAItxQ,EAAEgS,GAAG8yM,GAAI5yM,EAAEpS,IAAIglN,GAAI5yM,EAAEF,IAAyC,GAAG+vK,GAAIk6B,GAAG5T,IAA9CvqM,EAAE2/K,GAAGqnC,GAAI5yM,EAAEpS,GAAG49K,GAAIxrK,EAAEpS,GAAG49K,GAAIxrK,EAAEF,GAAG,KAAqB81L,MAAM+oC,SAASxrO,IAA4B,GAAb4gM,GAAIrrK,EAAE98B,EAAE,GAAO,CAAsE,GAA7D0U,EAAR1U,EAAE+B,GAAGG,EAAKlC,EAAEuxB,EAAMvxB,EAAE+B,EAAG8T,EAAE6hP,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACnhL,EAAE1U,EAAE4B,EAAE8S,EAAE9S,EAAE8S,EAAE1S,KAAKkS,EAAK+gI,EAAK3/H,KAAKskB,IAAI/jB,EAAEG,GAAG,GAAK,SAASH,EAAEG,EAAE9B,EAAElS,EAAEmH,GAAGuL,GAAGi1K,GAAI1zK,EAAE,IAAIuiM,GAAIm3C,IAAI3vP,IAAI2pL,GAAI1zK,EAAE,IAAIuiM,GAAIq3C,IAAI7vP,IAAIkU,EAAElS,EAAEmH,GAAGuL,GAAGi1K,GAAIlkL,EAAE,IAAI+yM,GAAIm3C,IAAI3vP,IAAI2pL,GAAIlkL,EAAE,IAAI+yM,GAAIq3C,IAAI7vP,GAAG,CAAE,GAAGiW,EAAEjU,EAAEi/K,KAAK,EAA0D,IAAtCs5B,GAAItkM,EAAE,IAAIy/L,GAAI1zM,EAA/BJ,EAAE,IAAIu8W,IAAIj8W,EAAE+T,EAAElU,KAAuB4S,EAAE4c,EAAE5c,EAAE4c,EAAErxB,QAAQ0B,EAAMkU,EAAEG,EAAEjU,EAAE2hP,KAAKhmC,KAAK7nM,EAAEynM,MAAuBuU,GAAIh1L,EAAlB6iJ,GAAG7pK,EAAE2nM,KAAK,IAAYvpM,GAAI,GAAGzO,EAAEzD,EAAEi/K,KAAK,EAA0D,IAAtCs5B,GAAI90M,EAAE,IAAIkwM,GAAI3zM,EAA/BJ,EAAE,IAAIu8W,IAAIj8W,EAAEuD,EAAE1D,KAAuB4S,EAAE4c,EAAE5c,EAAE4c,EAAErxB,QAAQ0B,EAAMkU,EAAErQ,EAAEzD,EAAE2hP,KAAKhmC,KAAK7nM,EAAEynM,MAAuBuU,GAAIh1L,EAAlB6iJ,GAAG7pK,EAAE2nM,KAAK,IAAYvpM,EAAI,CAAC,CACvzB,SAAS62W,IAAI/oX,GAAGylM,GAAIzlM,EAAE,IAAI6wU,IAAIpqJ,GAAIG,GAAIJ,GAAIG,GAAID,GAAI,IAAIh4B,GAAIs6N,KAAK,cAAc,sXAAsX,IAAIj8N,IAAKi8N,OAAOztH,GAAIv7P,EAAEgpX,IAAI3gB,IAAI7nL,IAAIwjJ,MAAMzoE,GAAIv7P,EAAEgpX,IAAIvoB,IAAIjgL,IAAIyjJ,MAAM1oE,GAAIv7P,EAAEgpX,IAAI1gB,IAAI9nL,IAAI0jJ,MAAM3oE,GAAIv7P,EAAEgpX,IAAIzgB,IAAI/nL,IAAI2jJ,MAAM5oE,GAAIv7P,EAAEgpX,IAAI1Z,IAAI9uL,IAAI4jJ,MAAM7oE,GAAIv7P,EAAEgpX,IAAInG,IAAIriM,IAAI6jJ,MAAM9oE,GAAIv7P,EAAEgpX,IAAIlG,IAAItiM,IAAI8jJ,MAAM/oE,GAAIv7P,EAAEgpX,IAAIjG,IAAIviM,IAAIgkJ,MAAMjpE,GAAIv7P,EAAEgpX,IAAI38B,IAAI7rK,IAAIkkJ,MAAMnpE,GAAIv7P,EAAEgpX,IAAI78B,IAAI3rK,IAAIokJ,MAAMrpE,GAAIv7P,EAAEgpX,IAAIv8B,IAAIjsK,IAAIskJ,MAAMvpE,GAAIv7P,EAAEgpX,IAAI/8B,IAAIzrK,IAAIwkJ,MAAMzpE,GAAIv7P,EAAEgpX,IAAI98B,IAAI1rK,IAAI0kJ,MAAM3pE,GAAIv7P,EAAEgpX,IAAInqR,IAAI2hF,IAAI4kJ,MAAM7pE,GAAIv7P,EAAEgpX,IAAIz8B,IAAI/rK,IAAI8kJ,KAAK,CAC1zB,SAASssC,IAAI5xW,GAAG,IAAIkS,EAA4S,GAA1S5N,KAAKoO,EAlsG3B,SAAY1S,EAAEkS,GAAG,OAAO,IAAI64O,GAAGptE,GAAGoG,GAAG/jL,GAAG,IAAI29K,GAAGoG,GAAG7xK,GAAG,IAAI,CAksG5B+2W,CAAG,IAAIrxO,GAAI,IAAIC,IAAKvzI,KAAK4N,EAAE,IAAImyM,GAAI1mC,GAAGoG,GAAGyjB,KAAI,MAAMljM,KAAKlB,EAAE,IAAIihN,GAAI1mC,GAAGoG,GAAGyjB,KAAI,MAAMljM,KAAKtG,EAAE,IAAIqmN,GAAI1mC,GAAGoG,GAAG+wI,KAAI,MAAMxwT,KAAKiB,EAAEvF,EAAEsE,KAAKpE,EAAE,IAAIygN,GAAI3gN,EAAEu/L,MAAMj7L,KAAK6sL,EAAEnxL,EAAEkpX,MAAMjnM,GAAIk6B,GAAGn8M,EAAEgmM,IAAIjmC,MAAMopN,QAAQ7kX,KAAKslB,EAAE+zJ,GAAG39K,EAAEgmM,IAAIjmC,MAAM28I,MAAM,IAAIp4S,KAAKsgC,EAAE+4I,GAAG39K,EAAEgmM,GAAGq8E,KAAK,IAAI/9Q,KAAK0P,EAAE2pK,GAAG39K,EAAEgmM,GAAG0kF,KAAK,IAAIpmR,KAAK+jB,EAAEs1J,GAAG39K,EAAEgmM,GAAGy+H,KAAK,KAnmC5T,SAAazkU,GAAyD,OAAtD6oM,QAAyDklG,GAAGn/C,GAA5CjjB,GAAI7iC,IAAIvqB,GAAGC,GAAGq9G,IAAG,GAAG5vD,IAAI,IAAI,EAAE,CAACjjC,OAAkBhpM,IAAI,MAA+D+tS,GAAGn/C,GAAhDjjB,GAAIowD,IAAIx9G,GAAGC,GAAGq9G,IAAG,GAAG5vD,IAAI,IAAI,EAAE,CAAC+vD,IAAIC,OAAkBj8R,IAAI,EAA2B,CAmmCyIopX,CAAI9kX,KAAK+jB,GAAI,MAAM6qJ,GAAI,IAAI5zE,GAAI,iCAAiCh7F,KAAK+jB,IAAsD,GAAlD/jB,KAAK6M,EAAE8wK,GAAIk6B,GAAGn8M,EAAEgmM,GAAGqjL,OAAO/kX,KAAK8N,EAAEurK,GAAG39K,EAAEgmM,GAAGD,KAAK,KA/rB3b,SAAa/lM,GAA0D,OAAvDwuS,QAA0DT,GAAGn/C,GAA3CjjB,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAACgjE,OAAkBjvS,IAAI,MAA8D+tS,GAAGn/C,GAA/CjjB,GAAI+iE,IAAInwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC0iE,IAAIC,OAAkB5uS,IAAI,MAA8D+tS,GAAGn/C,GAA/CjjB,GAAIkjE,IAAItwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC6iE,IAAIC,OAAkB/uS,IAAI,EAA2B,CA+rB8LspX,CAAIhlX,KAAK8N,GAAI,MAAM8gK,GAAI,IAAI5zE,GAAI,iCAAiCh7F,KAAK8N,IAAI9N,KAAK1E,EAAE+9K,GAAGkoJ,IAAI7lU,EAAEupX,KAAK,KAAKjlX,KAAKjD,EAAEi/K,GAAIC,GAAGslJ,IAAI7lU,EAAEmoT,OAAO7jT,KAAKvE,EAAEugL,GAAIC,GAAGslJ,IAAI7lU,EAAEwpX,OAAOllX,KAAKf,EAAE+8K,GAAIC,GAAGslJ,IAAI7lU,EAAEypX,OAAOnlX,KAAKuP,EAAEysK,GAAIC,GAAGslJ,IAAI7lU,EAAE0pX,OAAOplX,KAAK2P,EAAEqsK,GAAIC,GAAGslJ,IAAI7lU,EAAE2pX,OAAOrlX,KAAKu+B,EAAE86I,GAAGkoJ,IAAI7lU,EAAE4pX,KAAK,KAAKtlX,KAAKirB,EAAE,EAAEjrB,KAAKvE,EAAEmS,GAAG5N,KAAKsgC,EAAEq7J,IAAIssG,MAAM0I,MAAM3wS,KAAKw2B,EAAE,IAAI63R,IAAI,EAAEzgT,EAAE,GAAG5N,KAAKqO,EAAE,IAAIggT,IAAI,EAAEzgT,EAAE,GAAG0sK,GAAIt6K,KAAKw2B,GAAG04O,KAAMG,KAAKrvQ,KAAKqO,EAAE,CAE3zB,SAASk3W,IAAI7pX,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAE,GAAM,MAAH9T,EAAS,MAAMkzK,GAAI,IAAImR,GAAI0T,MAAqH,GAA/G3lL,EAAEpS,EAAahC,GAAE,GAAb88B,EAAE96B,EAAE9B,QAAoB,IAAM05L,GAAI,EAAE53L,EAAE9B,QAA+B,KAA1CgU,EAAmBlS,EAAEqf,WAAW,KAAiB,IAAHnN,IAAOlS,EAAEA,EAAEyzD,OAAO,KAAK34B,EAAE98B,EAAK,IAAHkU,IAAa,GAAH4oB,EAAM,MAAMo4I,GAAI,IAAImR,GAAIwT,IAAIzlL,EAAE,MAAM,KAAMpS,EAAE9B,OAAO,IAAI05L,GAAI,EAAE53L,EAAE9B,QAAyB,IAAjB8B,EAAEqf,WAAW,KAASrf,EAAEA,EAAEyzD,OAAO,KAAK34B,EAAE,GAAGA,GAAGq1U,MAAMG,KAAK,IAAK,MAAMp9L,GAAI,IAAImR,GAAIwT,IAAIzlL,EAAE,MAAM,IAAI7M,EAAE,EAAEA,EAAEu1B,EAAEv1B,IAAK,IAA4C,GAAzC2rT,KAAKt5H,GAAIryL,EAAEvF,EAAE9B,QAAQ8B,EAAEqf,WAAW9Z,KAAU,MAAM2tK,GAAI,IAAImR,GAAIwT,IAAIzlL,EAAE,MAA4H,IAArH0B,EAAE,EAAEnB,EAAEy9V,IAAI,IAAI/uW,EAAEgvW,IAAI,IAAI5sW,EAAEumR,GAAIumF,IAAI,KAAKhhV,GAAE,GAAKxvB,EAAE+6B,EAAEnoB,GAAO,IAAGmB,GAAGjB,SAAS7S,EAAEyzD,OAAO,EAAE1zD,GAAG,IAAIC,EAAEA,EAAEyzD,OAAO1zD,GAAG+6B,GAAG/6B,EAAEwvB,GAAE,GAAYuL,GAAGnoB,GAAE,CAAiD,GAAhD5S,EAAE8S,SAAS7S,EAAEyzD,OAAO,EAAE9gD,GAAG,IAAI3S,EAAEA,EAAEyzD,OAAO9gD,GAAGmoB,GAAGnoB,EAAK4c,EAAGA,GAAE,MAAU,CAAC,GAAG29K,GAAIp5L,EAAErQ,GAAG,EAAG,MAAMyvK,GAAI,IAAImR,GAAIwT,IAAIzlL,EAAE,MAAM0B,EAAEilL,GAAIjlL,EAAEzS,EAAE,CAACyS,EAAEq9P,GAAIr9P,EAAE/T,EAAE,CAAC,GAAGmtM,GAAIp5L,EAAE,GAAG,EAAG,MAAMo/J,GAAI,IAAImR,GAAIwT,IAAIzlL,EAAE,MAAM,IAAIpU,GAAekvM,GAAZp5L,EAAEk2Q,GAAIl2Q,GAAY,GAAG,EAAG,MAAMo/J,GAAI,IAAImR,GAAIwT,IAAIzlL,EAAE,MAAO,OAAO0B,CAAC,CAC5zB,SAASgnV,IAAI96V,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAwE,GAA9FyoO,KAAwBniO,KAAKtE,EAAE,IAAI+mN,GAAIziN,MAAMA,KAAK4N,EAAElS,EAAEsE,KAAKirB,EAAErd,EAAE5N,KAAKw2B,EAAEi4E,GAAIyjJ,IAAKnW,MAAMwiF,KAAK3wT,IAAO5N,KAAKw2B,EAAEuG,KAAM,IAAI59B,EAAEgoU,IAAI5I,IAAI7iU,KAAKkS,EAA0H,IAAvH5N,KAAKiB,GAAE,EAAKjB,KAAKvE,EAAE,IAAIuyK,GAAIhuK,KAAKw2B,EAAE,IAAI82H,GAAIttJ,KAAKw2B,EAAE+sL,GAAGl4B,KAAKhS,GAAG22C,IAAIC,GAAIsuG,IAAIpuF,GAAIz0O,IAAI,IAAI,KAAKA,GAAGsE,KAAKw2B,EAAE+sL,GAAGqmB,GAAI20F,IAAIpuF,GAAIz0O,KAASuF,EAAEmpV,IAAI7rB,IAAI7iU,GAAG27M,KAAKp2M,EAAEg2M,MAAwB,OAAjBx7M,EAAE49K,GAAGp4K,EAAEk2M,KAAK,KAAY0kC,GAAIqW,GAAIqsE,IAAI9iU,KAAK,KAAK,EAAGuE,KAAKvE,EAAE8nN,GAAG9nN,GAAG,MAAM,KAAK,EAAGuE,KAAKw2B,EAAE+mK,GAAG9uF,GAAIyjJ,GAAIqsE,IAAI9iU,UAAyB,GAANosM,KAASxuB,GAAGzrK,EAAE,IAAIq1M,KAA6C,IAAvCjjN,KAAKiB,GAAE,EAAKjB,KAAKw2B,EAAE,KAAKx2B,KAAKvE,EAAE,IAAIuyK,GAAQ3/J,EAAE,EAAE3U,GAAQ,MAALgC,EAAEhC,GAAS+4O,IAAI/2O,GAAGA,EAAEhC,GAAGE,OAAOyU,EAAE3U,IAAI2U,EAA4D,IAA9C,MAAL3S,EAAEhC,GAAS+4O,IAAI/2O,GAAlBuvB,EAAqBvvB,EAAEhC,EAA1B+B,EAA6B4S,GAAG,GAAGA,EAAE4c,EAAErxB,OAAOqxB,EAAE5c,GAAG,KAAUmoB,EAAEw7N,GAAIE,GAAIqsE,IAAI9iU,IAAI+6B,EAAEA,EAAEw7N,GAAIE,GAAIqsE,IAAI/nS,IAAKA,GAAG5oB,GAAG5N,KAAKvE,EAAE8nN,GAAG9nN,QAA8B,GAAjBogP,GAAIqW,GAAIqsE,IAAI3wT,KAAUzO,GAAGa,KAAKw2B,EAAE,KAAKx2B,KAAKvE,GAAGkmV,MAAMK,OAAUhiV,KAAKw2B,EAAE,KAAKx2B,KAAKiB,GAAE,EAAKjB,KAAKvE,GAAGknN,KAAM,IAAI1hD,GAAIrzJ,UAAW5N,KAAKiB,EAAmB,GAAjB46O,GAAIqW,GAAIqsE,IAAI3wT,IAAO5N,KAAKw2B,EAAE+xL,GAAG6Z,OAAOpiO,KAAKw2B,EAAE4rM,IAAK,CACh0B,SAAS8sF,IAAIxzT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAA6B,IAA3BqvB,EAAE,EAAExvB,EAh6CpD,SAAaC,EAAEkS,GAAG,OAAOA,EAAES,GAAG,KAAK,EAAE,OAAO3S,EAAE86B,EAAEl7B,EAAEG,EAAEC,EAAEiU,EAAE,KAAK,EAAE,OAAOjU,EAAE86B,EAAEl7B,EAAEI,EAAEA,EAAEiU,EAAE,KAAK,EAAE,OAAOjU,EAAE86B,EAAEl7B,EAAE2vB,EAAEvvB,EAAE6T,EAAE,KAAK,EAAE,OAAO7T,EAAE86B,EAAEl7B,EAAEsS,EAAElS,EAAE6T,EAAE,QAAQ,OAAO,EAAG,CAg6ClGi2W,CAAI9pX,EAAEkS,GAAGc,EAAEhT,EAAE6T,EAAEjU,EAAEI,EAAEiU,EAAM7B,EAAEurK,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAIypM,KAAKvpM,EAAEmpM,MAAwB,IAAjBv9M,EAAE2/K,GAAGvrK,EAAEqpM,KAAK,MAAWlsL,KAAGvxB,EAAEuxB,EAAExvB,EAAEwvB,EAAErxB,QAAQ,GAAzB,CAA6J,OAAxHgC,EAAElC,EAAEkU,EAAEqtL,KAAK97L,EAAEzF,EAAEkU,EAAE4zL,IAAI/lC,MAAMmtE,MAAM5sD,GAAIC,GAAGviL,EAAEkU,EAAE8zL,GAAGknC,OAAO,GAAQp5N,GAANzS,EAAErD,EAAEuxB,GAAMvxB,GAAIkU,GAAGS,EAAEtR,EAAEzB,EAAEyB,EAAEkE,EAAEvF,EAAE2S,EAAET,EAAES,EAAE4c,GAAGzb,EAAE9T,GAAG86B,EAAEz5B,EAAEzB,EAAEyB,EAAEkE,EAAE2M,EAAE4oB,EAAE/6B,EAAE+6B,EAAE96B,GAAUkS,EAAES,GAAG,KAAK,EAAEmB,EAAEyb,EAAEvxB,EAAEgC,GAAGE,EAAEF,EAAE8T,EAAE5B,GAAG,EAAEhS,EAAEF,EAAEgT,EAAEc,EAAE/T,EAAEG,EAAEgS,EAAEzO,EAAE1D,EAAE2gR,GAAIr/Q,GAAG0yQ,KAAMG,MAAMn8C,GAAI12N,GAAGizQ,KAAME,MAAM,MAAM,KAAK,EAAE1gQ,EAAEyb,EAAEvxB,EAAEgC,GAAGE,EAAEF,EAAE8T,EAAE5B,GAAG,EAAEhS,EAAEF,EAAEgT,EAAEc,EAAE/T,GAAG0D,EAAE1D,EAAE+T,EAAE9T,EAAE0gR,GAAIr/Q,GAAG0yQ,KAAMG,MAAMn8C,GAAI12N,GAAGizQ,KAAMI,MAAM,MAAM,KAAK,EAAE5gQ,EAAEyb,GAAG9rB,EAAE1D,EAAE+T,EAAE5B,EAAKlU,EAAEgC,GAAGuF,EAAEvF,EAAEmR,EAAE2C,EAAE9T,EAAE29K,GAAG0pB,GAAIhmM,EAAEtB,EAAE,GAAG,KAAKw/L,KAAKrtL,EAAE4B,EAAE/T,GAAGG,EAAEgS,EAAE3M,GAAG,GAAOuO,EAAE/T,EAAEG,EAAEgS,EAAEtS,EAAE8gR,GAAIr/Q,GAAG0yQ,KAAMI,MAAMp8C,GAAI12N,GAAGizQ,KAAMG,MAAM,MAAM,KAAK,EAAE3gQ,EAAEyb,EAAErvB,EAAEF,EAAEyD,EAAE1D,EAAK/B,EAAEgC,GAAGuF,EAAEvF,EAAEmR,EAAE2C,EAAE9T,EAAE29K,GAAG0pB,GAAIhmM,EAAEtB,EAAE,GAAG,KAAKw/L,KAAKrtL,EAAE4B,EAAE/T,GAAGG,EAAEgS,EAAE3M,GAAG,GAAOuO,EAAE/T,EAAEG,EAAEgS,EAAEtS,EAAE8gR,GAAIr/Q,GAAG0yQ,KAAME,MAAMl8C,GAAI12N,GAAGizQ,KAAMG,OAAQviQ,IAAIutK,MAAMM,MAAM7tK,GAAG20L,OAAOt3K,EAAE0jH,EAAK3/H,KAAKugB,IAAItE,EAAEzb,EAAE9T,GAAnnB,CAAunBuvB,EAAE,IAAIouJ,GAAG6oB,GAAIxmM,EAAEkS,EAAEA,GAAG,KAAKlS,EAAEkS,EAAEqd,EAAE,CAIl0B,SAASw6V,IAAI73W,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAI2O,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAa,IAAXzoB,EAAE2vB,EAAErxB,QAAY,IAAM05L,GAAI,EAAEroK,EAAErxB,QAA+B,KAA1CkU,EAAmBmd,EAAElQ,WAAW,KAAa,CAAC,GAAM,IAAHjN,IAA4B/Q,GAAE,EAAY,IAAnC2R,EAAEuc,EAAE++L,YAAY,QAAuBt7M,GAAGpT,EAAE,IAAOg4L,GAAI5kL,EAAE,EAAEuc,EAAErxB,QAAbmD,EAAwC,IAAnBkuB,EAAElQ,WAAWrM,EAAE,MAAU,CAAgD,GAA7BqV,EAAEg0M,GAAI,IAAxB54N,EAAE8rB,EAAEkkC,OAAO,EAAEzgD,EAAE,IAAgB,KAAKq0O,IAAI5jP,GAAG8B,EAAE,EAAKlE,EAAG,IAAIkE,EAAEyyL,IAAIzoK,EAAEkkC,OAAOzgD,EAAE,GAAGilL,IAAIC,IAAI,CAAC,MAAMl4L,KAAY,MAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAAgBkzK,GAAI,IAAIo3G,GAAhBtqR,MAAmCkzK,GAAIlzK,IAAE,CAAE,IAAI0S,EAAEswR,GAAI9wR,EAAE2uP,MAAMnuP,EAAE6oM,MAAgB,GAAG1xB,GAAZzmL,EAAE0qS,GAAIp7R,GAAW,OAAkBuB,GAAZ6mB,EAAE6iJ,GAAGv6K,EAAE,MAASrD,GAAS,MAAHsoB,EAAW,MAAHpU,EAAQooN,GAAIh0M,EAAEpU,KAAU,GAAL1O,KAAQ,OAAOu1B,EAAI,OAAO,IAAI,CAAmD,GAA5B56B,GAAM,IAA3B4T,EAAEyb,EAAE++L,YAAY,MAAa/+L,EAAEA,EAAEkkC,OAAO,EAAE3/C,GAAG/T,EAAE,GAAS,GAAJ+T,EAAO,IAAI/T,EAAEi4L,IAAIzoK,EAAEkkC,OAAO3/C,EAAE,GAAGmkL,IAAIC,IAAI,CAAC,MAAMl4L,KAAY,IAAG6pL,GAAZ7pL,IAAE8pL,GAAI9pL,KAAW,KAAe,MAAMkzK,GAAIlzK,KAAnBE,EAAEqvB,CAAmB,CAA2B,IAAzBrvB,EAAEm8N,GAAI,IAAIn8N,GAAG,KAAKmnP,IAAInnP,GAAO8T,EAAEgvR,GAAI9wR,EAAE2uP,MAAM7sP,EAAEunM,MAAgB,GAAG1xB,GAAZzmL,EAAE0qS,GAAI95R,GAAW,OAAkBH,GAAZlB,EAAEgrK,GAAGv6K,EAAE,MAAS27L,MAAY,MAAH7+L,EAAW,MAAH2T,EAAQwoN,GAAIn8N,EAAE2T,KAAU,GAAL9T,KAAQ,OAAO4S,EAAI,OAAO,IAAI,CAAE,OAAO2qW,IAAIprW,EAAEqd,EAAE,CAE30B,SAASooK,MAAc,IAAI33L,EAAEkS,EAAEqd,EAA6mB,IAA7nBooK,IAAIjjD,EAAc,IAAI64I,GAAI,EAAE,GAAG,IAAIA,GAAI,GAAG,GAAG,IAAIA,GAAI,EAAE,GAAGy8F,IAAI/rM,GAAG+U,IAAGa,IAAI,IAAI,GAAG,EAAE,GAAGsnL,IAAIl9L,GAAGo3C,IAAGC,IAAI,GAAG,IAAI,GAAG,GAAG20J,IAAI1rM,GAAGC,GAAGyU,IAAG,GAAGwzD,IAAI,GAAG,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,IAAI,KAAK,MAAM,MAAM,OAAO,QAAQ,QAAQ,SAAS,UAAU,WAAW,WAAW,YAAY,aAAa,aAAa,cAAc,eAAe,eAAe,gBAAgB,kBAAmByjI,IAAIjsM,GAAGmV,IAAGsW,IAAI,GAAGugL,IAAI/rX,OAAO,GAAG,GAAGisX,IAAI5rM,GAAGC,GAAGyU,IAAG,GAAGwzD,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,IAAI57C,IAAI,IAAM+lH,IAAI,IAAQ,IAAS,IAAUsf,IAAI,KAAY,KAAa,KAAc,KAAe,KAAgB,KAAiB,OAAoBk6C,IAAInsM,GAAGmV,IAAGsW,IAAI,GAAGygL,IAAIjsX,OAAO,GAAG,GAAGmsX,IAAIpsM,GAAG+U,IAAGa,IAAI,IAAI,GAAG,EAAE,GAAG7zL,EAAE,EAAOA,EAAEqqX,IAAInsX,OAAO8B,IAAKgqX,IAAIhqX,GAAG,IAAIutR,GAAIvtR,EAAE,GAAGqqX,IAAIrqX,GAAG,IAAIutR,GAAI,EAAEvtR,GAAGm7W,IAAIn7W,GAAG,GAAG,KAAKA,EAAEm7W,IAAIj9W,OAAO8B,IAAKm7W,IAAIn7W,GAAG,GAAG,IAAIuvB,EAAE,EAAEA,EAAE26V,IAAIhsX,OAAOqxB,IAAK26V,IAAI36V,GAAG+oK,IAAI2xL,IAAI16V,IAAI,IAAIrd,EAAE,EAAEA,EAAEk4W,IAAIlsX,OAAOgU,IAAKk4W,IAAIl4W,GAAGomL,IAAI6xL,IAAIj4W,IAAIi8Q,KAAK,CAKr1B,SAASm8F,IAAItqX,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAIr3B,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAIsP,EAAEmB,EAAEI,EAAyB,GAAI41K,GAAzBtkL,EAAEgjM,IAAIr2L,GAAG81L,MAAM0/C,MAAe,KAAT,CAA6M,IAAvLxnP,EAAEy9K,GAAGp4K,EAAE,IAAInC,EAAE8O,EAAE3M,EAAEyN,EAAE,IAAI2tM,GAAIzuM,EAAEqd,GAAGuL,EAAE5oB,EAAEnS,EAAEiT,EAAEhT,GAAG86B,EAAE5oB,EAAEc,EAAEd,GAAG4oB,EAAE/6B,EAAkCy6L,GAA9B7c,GAAG26B,IAAIp4M,GAAGm9J,MAAM6nL,MAAM,MAAe34C,MAAMoI,QApqK5M,SAAa30S,EAAEkS,GAAGlS,EAAEA,EAAEkS,CAAC,CAoqKiNq4W,CAArB3qX,EAAE+9K,GAAG26B,IAAIp4M,EAAE4xW,KAAK,KAAWh3U,EAAE96B,GA3pKhP,SAAaA,EAAEkS,GAAGlS,EAAED,EAAEmS,CAAC,CA2pK4Ns4W,CAAI5qX,EAAEk7B,EAAE/6B,GAnqK3P,SAAaC,EAAEkS,GAAGlS,EAAEkS,EAAEA,CAAC,CAmqKuOu4W,CAAI7qX,EAAEk7B,EAAE5oB,GA1pKtQ,SAAalS,EAAEkS,GAAGlS,EAAEuvB,EAAErd,CAAC,CA0pKkPw4W,CAAI9qX,EAAEk7B,EAAEvL,IAAGA,EAAE,IAAI+iJ,GAAQjxK,EAAE,IAAIskK,GAAIzzJ,EAAElS,GAAGqB,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAAgJ,IAApH2rL,GAAG0e,IAAtBvqM,EAAE2/K,GAAGC,GAAIv8K,GAAG,IAAgBqmP,KAAK,KAAMijI,IAAI3sX,EAAEgV,GAAW62K,GAAG0e,IAAIvqM,EAAE0pP,KAAK,OAAOtkP,GAA2C8+M,GAAxCniN,EAAE49K,GAAG4qB,IAAIvqM,EAAE0pP,KAAK,MAAK7zO,EAAEumV,IAAIloV,EAAElU,EAAE+B,EAAE4S,EAAE5S,EAAE+6B,IAAW96B,EAAE6T,EAAE3B,GAAOQ,EAAE,IAAIizJ,GAAI3nK,EAAEoU,GAAGM,EAAE1S,EAAE0S,EAAE6c,EAAEA,EAAErxB,QAAyBwjM,GAAIyoB,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAvC5vB,GAAGC,GAAIlrK,GAAG,IAAmCC,EAAE,KAAK,IAAIw2J,GAAInrK,IAAI,IAAIorK,GAAI75I,IAAK,GAAGnsB,EAAG,IAAIsP,EAAE,IAAIizJ,GAAIviK,EAAEgP,GAAGM,EAAE1S,EAAE0S,EAAE6c,EAAEA,EAAErxB,QAAyBwjM,GAAIyoB,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAvC5vB,GAAGC,GAAIlrK,GAAG,IAAmCC,EAAE,KAAK,IAAI02J,GAAIjmK,IAAI,IAAIkmK,GAAI/5I,IAA0B,IAArBtb,EAAE0pK,GAAG26B,IAAIp4M,EAAEwiS,KAAK,KAASj/R,EAAE,IAAIkiK,GAAIp2I,GAAG9rB,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAyBwnX,IAAd/nM,GAAGC,GAAIn6K,GAAG,IAAUwQ,EAAEjB,GAAU,IAxXtxB,SAAahT,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAE/6B,EAAE49K,GAAG4qB,IAAIvoM,GAAGgoM,MAAM0/C,MAAM,IAAI5sN,EAAE6iJ,GAAG26B,IAAIv4M,GAAGs9J,MAAM4nL,MAAM,KAAKhlJ,IAAIq3B,MAAMC,MAAUv3N,EAAEuF,IAAGA,EAAEo4K,GAAG4qB,IAAIvoM,EAAE46T,KAAK,IAAI1oT,EAAE,IAAI+iM,GAAIj1M,EAAE86B,EAAE96B,EAAEA,EAAED,EAAEmS,EAAElS,EAAED,EAAEwvB,EAAEvvB,EAAE86B,EAAE5oB,EAAElS,EAAED,EAAEA,EAAEC,EAAED,EAAEC,GAAMuF,EAAE06L,IAAI0zG,MAAMG,OAAO1I,IAAIrrS,EAAE+hS,KAAKxM,MAAMt4D,MAAMggJ,IAAIj9W,EAAEmS,EAAElS,EAAEkS,EAAEA,GAAE,GAAM,IAAW+vK,GAAIk6B,GAAG7D,IAAIv4M,EAAEolV,QAAQ63B,IAAIj9W,EAAEmS,EAAElS,EAAEkS,EAAEA,GAAE,GAAK,IAASk5R,IAAIrrS,EAAEklV,IAARnqT,EAAYu8L,GAAIE,KAAiC,IAAI9vB,GAApBl4K,EAAEouJ,GAAGsL,GAAIqgG,KAAI,GAAa3rG,GAAG+pB,GAAIn4K,EAAEA,EAAErxB,QAAQ,GAAG,GAAI,CAwX4Y0sX,CAAI14W,GAAOE,EAAE,IAAIuzJ,GAAIzzJ,EAAElS,GAAGoS,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,SAAyB4V,GAAhB9V,EAAE2/K,GAAGC,GAAIxrK,GAAG,KAAQ7M,IAAO+kX,IAAItqX,EAAE8T,EAAvvB,CAA0vB,CACh2B,SAAS+2W,IAAI7qX,GAAGylM,GAAIzlM,EAAE,IAAI6wU,IAAIhqJ,GAAIJ,GAAIG,GAAIJ,GAAIG,GAAID,GAAI,IAAIh4B,GAAI21N,KAAK,aAAa,gRAAgR,IAAI/pO,IAAK+pO,KAAK14I,IAAKq+D,MAAMI,KAAK7rH,GAAGC,GAAGyrH,IAAG,GAAGh+D,IAAI,IAAI,EAAE,CAACo+D,UAAU9uC,GAAIv7P,EAAEqkX,IAAIjV,IAAIp3J,GAAI,IAAIujD,GAAIv7P,EAAEqkX,IAAI5jB,IAAI,IAAIllG,GAAIv7P,EAAEqkX,IAAIyG,IAAI,GAAGvvH,GAAIv7P,EAAEqkX,IAAI1jB,IAAIlyC,KAAKlzD,GAAIv7P,EAAEqkX,IAAI3jB,IAAI1oJ,GAAI,IAAIujD,GAAIv7P,EAAEqkX,IAAIzB,KAAKl1J,MAAM,IAAO6tC,GAAIv7P,EAAEqkX,IAAI7jB,IAAIwC,KAAKznG,GAAIv7P,EAAEqkX,IAAI9U,IAAI/uL,IAAI0iL,MAAM3nG,GAAIv7P,EAAEqkX,IAAI0G,IAAIvqM,IAAIs1H,MAAMv6C,GAAIv7P,EAAEqkX,IAAIC,KAAI,GAAO/oH,GAAIv7P,EAAEqkX,IAAIvB,IAAItiM,IAAI6xK,MAAM92F,GAAIv7P,EAAEqkX,IAAI/U,IAAI9uL,IAAI4iL,MAAM7nG,GAAIv7P,EAAEqkX,IAAI/b,IAAI9nL,IAAI6iL,MAAM9nG,GAAIv7P,EAAEqkX,IAAIxB,IAAIriM,IAAI8iL,MAAM/nG,GAAIv7P,EAAEqkX,IAAItB,IAAIviM,IAAI+iL,MAAMhoG,GAAIv7P,EAAEqkX,IAAI/sC,IAAI92J,IAAIiyK,MAAMl3F,GAAIv7P,EAAEqkX,IAAIxsC,IAAIr3J,IAAIwjD,MAAMu3B,GAAIv7P,EAAEqkX,IAAI5sC,IAAIj3J,IAAI2tH,MAAM5yC,GAAIv7P,EAAEqkX,IAAItsC,IAAIv3J,IAAI6tH,MAAM9yC,GAAIv7P,EAAEqkX,IAAI1sC,IAAIn3J,IAAIgjL,KAAK,CACp2B,SAASqkB,IAAI7nX,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAE,IAAG+9K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAImvB,KAA3B,CAAiN,GAApJrjC,GAArB2U,EAAEgrK,GAAG6oB,GAAIxmM,EAAEkS,EAAEA,GAAG,MAASlU,EAAEyF,EAAEkP,EAAE/S,EAAEyB,EAAEq7U,IAAI18U,EAAEkS,GAAGnS,EAAE/B,EAAEkU,EAAEzO,EAAEyO,EAAEzO,EAAE8rB,EAAEhqB,EAAEoN,EAAE3S,EAAEA,EAAE86B,EAAE98B,EAAEuxB,EAAE9rB,EAAEyO,EAAEtS,EAAEI,EAAEuD,EAAMlC,IAAI0xR,MAAME,MAAM5xR,GAAG6xR,KAAoC,GAA9Bv1G,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAI+sK,OAAS15K,EAAElE,GAAG4xR,IAAI1tR,EAAE,EAAEvF,EAAEuD,EAAEgC,EAAElE,EAAE+xR,KAAOrzR,EAAEwF,IAAIvF,EAAE4kC,EAAEq7J,IAAIssG,MAAMsI,MAAUxzS,GAAG4xR,IAA+Cn4P,GAA1Cl7B,IAAIG,EAAEwF,IAAIo4K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAI+sK,KAAK,GAAar/K,IAAIG,EAAEwF,IAAIo4K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAI+sK,KAAK,QAA0C,OAA9Bl/K,EAAEwF,IAAGA,EAAElE,GAAG4xR,IAAI1tR,EAAE,EAAEvF,EAAEuD,EAAEgC,EAAElE,EAAE+xR,KAAW/xR,EAAEsR,GAAG,KAAK,EAAEmoB,IAAI/6B,EAAEwF,GAAG,EAAE,MAAM,KAAK,EAAEu1B,GAAG/6B,EAAEwF,EAAE,MAAM,KAAK,EAAEgqB,GAAGxvB,EAAEwF,IAAIo4K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAI+sK,KAAK,GAAyBnkJ,GAAtBl7B,GAAGqzI,EAAK3/H,KAAKugB,IAAI,EAAEtE,GAAQ,MAAM,KAAK,EAAEA,GAAGxvB,EAAEwF,IAAIo4K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAI+sK,KAAK,GAAGr/K,GAAGqzI,EAAK3/H,KAAKugB,IAAI,EAAEtE,GAAK,IAAIvc,EAAE2qK,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAIypM,KAAK3oM,EAAEuoM,OAAOznM,EAAE6pK,GAAG3qK,EAAEyoM,KAAK,MAAOl2M,EAAEvF,EAAE86B,EAAEhnB,EAAE/T,EAAEmS,EAAE4B,EAAEvO,EAAE2M,GAAGE,EAAE0B,EAAE5B,GAAI4zL,IAAI/lC,MAAMmtE,MAAM96N,EAAE6rL,OAAOxe,MAAMM,MAAM3tK,EAAEmtL,KAAKrtL,EAAEouK,GAAIC,GAAGnuK,EAAE4zL,GAAGknC,OAAO5sD,GAAIC,GAAGnuK,EAAE4zL,GAAGknC,OAAO96N,EAAE6rL,OAAOxe,MAAMM,MAAM3tK,EAAEmtL,KAAKrtL,EAAE,EAAG4oB,GAAGhnB,EAAE/T,EAAEmS,EAAE4B,EAAE5B,EAAEqtL,KAAKv/L,EAAE8T,EAAE/T,EAAEwvB,EAAE3vB,CAAlxB,CAAoxB,CACz2B,SAASsoX,IAAIloX,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAE,IAAGy9K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAImvB,KAA3B,CAAyN,GAA5JrjC,GAArB2U,EAAEgrK,GAAG6oB,GAAIxmM,EAAEkS,EAAEA,GAAG,MAASlU,EAAEyF,EAAEkP,EAAE/S,EAAEkU,EAAE4oU,IAAI18U,EAAEkS,GAAGnS,EAAE/B,EAAEgC,EAAEyD,EAAE1D,EAAE0D,EAAEzD,EAAEuF,EAAEoN,EAAE3S,EAAEkS,EAAE4oB,EAAE98B,EAAE+B,EAAE0D,EAAE1D,EAAEG,EAAEF,EAAEuD,EAAE6O,EAAEpS,EAAEE,EAAEF,EAAM8T,IAAIi/Q,MAAME,MAAMn/Q,GAAGo/Q,KAAoC,GAA9Bv1G,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAI+sK,OAAS15K,EAAEuO,GAAGm/Q,IAAI1tR,EAAE,EAAEvF,EAAEuD,EAAEgC,EAAEuO,EAAEs/Q,KAAOrzR,EAAEwF,IAAIvF,EAAE4kC,EAAEq7J,IAAIssG,MAAMsI,MAAU/gS,GAAGm/Q,IAA+Cn4P,GAA1C56B,IAAIH,EAAEwF,IAAIo4K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAI+sK,KAAK,GAAa/+K,IAAIH,EAAEwF,IAAIo4K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAI+sK,KAAK,QAA0C,OAA9Bl/K,EAAEwF,IAAGA,EAAEuO,GAAGm/Q,IAAI1tR,EAAE,EAAEvF,EAAEuD,EAAEgC,EAAEuO,EAAEs/Q,KAAWt/Q,EAAEnB,GAAG,KAAK,EAAEmoB,IAAI/6B,EAAEwF,GAAG,EAAE,MAAM,KAAK,EAAEu1B,GAAG/6B,EAAEwF,EAAE,MAAM,KAAK,EAAEgqB,GAAGxvB,EAAEwF,IAAIo4K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAI+sK,KAAK,GAAyBnkJ,GAAtB56B,GAAG+yI,EAAK3/H,KAAKugB,IAAI,EAAEtE,GAAQ,MAAM,KAAK,EAAEA,GAAGxvB,EAAEwF,IAAIo4K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAI+sK,KAAK,GAAG/+K,GAAG+yI,EAAK3/H,KAAKugB,IAAI,EAAEtE,GAAK,IAAI3vB,EAAE+9K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAIypM,KAAK/7M,EAAE27M,OAAOvoM,EAAE2qK,GAAG/9K,EAAE67M,KAAK,MAAOl2M,EAAEvF,GAAGqB,EAAE2R,EAAEd,GAAI4zL,IAAI/lC,MAAMmtE,MAAM7rO,EAAE48L,OAAOxe,MAAMG,MAAMv+K,EAAEk+L,KAAKv/L,EAAEsgL,GAAIC,GAAGl/K,EAAE2kM,GAAGknC,OAAO96N,EAAEkuK,GAAIC,GAAGl/K,EAAE2kM,GAAGknC,OAAO7rO,EAAE48L,OAAOxe,MAAMG,MAAMv+K,EAAEk+L,KAAKv/L,EAAEoS,EAAGY,EAAEzN,EAAE2M,EAAE4oB,EAAE9nB,EAAEjT,EAAEA,EAAE+6B,GAAG9nB,EAAEjT,EAAEA,EAAEiT,EAAEd,EAAEqtL,KAAKrtL,EAAEc,EAAEjT,EAAEC,EAAEE,CAA5xB,CAA8xB,CAEr3B,SAASu/K,MAAc,IAAIz/K,EAAZy/K,IAAI/qC,EAAUoyD,IAAI,IAAIgP,GAAI0oF,IAAI,GAAGz+G,IAAI,IAAI+1B,GAAI4xF,IAAI,GAAGhoH,IAAI,IAAIo2B,GAAIojH,IAAI,GAAGryH,IAAI,IAAIiP,GAAIqjH,IAAI,GAAGv5I,IAAI,IAAIk2B,GAAIsjH,IAAI,GAAQnyG,KAAL+jK,IAAW,IAAIrmM,GAAqB,IAAI8iB,GAApBznM,EAAE29K,GAAGsL,GAAIue,KAAI,GAAa7pB,GAAG+pB,GAAI1nM,EAAEA,EAAE9B,QAAQ,GAAG,IAAM8kX,IAAI/hE,GAAGt1E,GAAI5rD,IAAIxB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,MAAMy8H,IAAIhiE,GAAGt1E,GAAIjsD,IAAInB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,MAAM08H,IAAIjiE,GAAGt1E,GAAI9kC,IAAItoB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,MAAM28H,IAAIliE,GAAGt1E,GAAI/rD,IAAIrB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,MAAMo4D,IAAIqC,GAAGt1E,GAAI5rD,IAAIxB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC3/C,QAAQ28K,IAAIviE,GAAGt1E,GAAIjsD,IAAInB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC5mE,QAAQ2jM,IAAItiE,GAAGt1E,GAAI5rD,IAAIxB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC5mE,QAAQwjM,IAAIniE,GAAGt1E,GAAI5rD,IAAIxB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC9mE,QAAQ4jM,IAAIriE,GAAGt1E,GAAI9kC,IAAItoB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC5mE,QAAQyjM,IAAIpiE,GAAGt1E,GAAIjsD,IAAInB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC3/C,QAAQ88K,IAAI1iE,GAAGt1E,GAAI5rD,IAAIxB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC9mE,IAAIE,QAAQ6jM,IAAIxiE,GAAGt1E,GAAIjsD,IAAInB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC3/C,IAAIjnB,QAAQ8jM,IAAIziE,GAAGt1E,GAAI5rD,IAAIxB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC3/C,IAAIjnB,QAAQqrM,IAAIhqE,GAAGt1E,GAAI5rD,IAAIxB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC9mE,IAAImnB,QAAQ+8K,IAAI3iE,GAAGt1E,GAAI5rD,IAAIxB,GAAGC,GAAGgpB,IAAG,GAAGg/C,IAAI,GAAG,EAAE,CAAC9mE,IAAImnB,IAAIjnB,OAAO,CACp3B,SAASkzL,IAAI9yW,EAAEkS,GAAG,IAAMnS,EAAI+6B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAE,GAAQ,GAAL/B,EAAEA,EAAK,CAA0F,IAAzFtS,EAAE,IAAI65K,GAAIh2K,EAAE,KAAKvD,EAAE,KAAKH,EAAEo4L,GAAGllD,EAAK3/H,KAAKC,MAAM0/H,EAAK3/H,KAAKoN,IAAIxO,EAAEA,GAAG+gI,EAAK3/H,KAAK43W,QAAQ,GAAGltX,EAAE,EAAMiW,EAAE6qP,IAAI5sP,EAAE,GAAG+B,EAAE/B,GAAG+B,EAAElU,EAAEwvB,GAAiI,IAA7H7c,EAAEirK,GAAGohF,GAAI9qP,GAAG,IAAO8mM,GAAG76M,KAAK66M,GAAGxS,IAAI71L,GAAGg0R,MAAMqsE,SAAQ7yW,EAAE4jL,GAAGykB,IAAI71L,EAAEqgW,MAAM/0W,EAAE,GAAWyF,EAAN,MAAHvD,EAAWA,EAAEs3P,GAAIx5P,IAAI+B,GAAOy3P,GAAIx5P,IAAI+B,GAAIgoM,GAAIr1L,EAAEqgW,IAAItvW,GAAOuQ,EAA6B,IAAI25J,GAA5BmxF,IAAK,IAAIpxF,GAAIh7J,GAAI1S,EAAED,EAAE,IAAei6L,GAAIhmL,EAAEhU,IAA0B+8M,GAAIn9M,EAAzBwD,EAAEu6K,GAAGohF,GAAI/qP,EAAEhU,GAAG,KAAKuvB,EAAU3vB,EAAE2vB,EAAErd,EAAEtS,EAAE2vB,GAAGw4K,GAAI3kM,EAAE2vW,IAAItvW,GAAc,IAAVuP,EAAE,IAAIw/J,GAAQ7/J,EAAE,EAAEA,EAAElP,EAAEvF,OAAO6B,EAAE4S,IAAK,IAAIkB,EAAEirP,IAAI5sP,EAAE,GAAG2B,EAAE3B,GAAG2B,EAAE9T,EAAEwvB,GAAyJ2/J,GAAIl8K,EAAzIZ,EAAE0lL,GAAIhU,GAAGykB,IAAzB71L,EAAEirK,GAAGohF,GAAIlrP,GAAG,KAAoB6yR,MAAMqsE,OAAO,EAAEpgW,EAAE,GAA4GqlM,GAA/D,OAApC,MAAH5lM,EAAQyoM,GAAGq4B,GAAIlgO,EAAE8nB,EAAE,OAAOqyK,GAAIn6L,EAAEL,EAAEP,IAAUurK,GAAM,MAAHvrK,EAAQyoM,GAAGq4B,GAAIlgO,EAAE8nB,EAAE,OAAOqyK,GAAIn6L,EAAEL,EAAEP,GAAG,IAAIpS,EAAE,EAAE,IAAmB,IAAI8T,EAAE,IAAI8kS,GAAK,IAAIt0I,GAAItxJ,GAAIhT,GAAG8T,EAAE5B,GAAI7Q,EAAE+0R,GAAItiR,GAAGgnB,EAAEk9K,GAAqB,MAAjBN,GAAI13M,EAAEA,EAAEqB,EAAEwrM,MAAYlvB,GAAG+5B,GAAI13M,EAAEA,EAAEqB,EAAEwrM,MAAM,IAAI7sM,EAAE,GAAGkvL,GAAIlvL,EAAEA,EAAE8jL,GAAGziL,EAAEwrM,MAAMmL,GAAIr6B,GAAGt8K,EAAEy5M,KAAK,IAAI96M,EAAE86B,EAAE96B,OAAI86B,EAAE6iJ,GAAG+5B,GAAI13M,EAAEkS,EAAE7Q,EAAEwrM,MAAM,MAAS/xK,EAAE96B,EAAE29K,GAAGt8K,EAAEy5M,KAAK,IAAI96M,IAAIkvL,GAAIlvL,EAAEkS,EAAE4xK,GAAGziL,EAAEwrM,MAAMlvB,GAAGt8K,EAAEy5M,KAAK,KAAKg4J,IAAI9yW,EAAEJ,EAAE,CAAC,CAI53B,SAASgzV,IAAI5yV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAMpC,EAAEyS,EAAIlU,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAEC,EAAIx7F,EAAE27F,EAAsD,IAApDz9K,EAAE6pK,GAAG4qB,IAAIvoM,GAAGmjS,KAAMC,MAAM,IAAI1wR,EAAEwlL,IAAIrkL,EAAEqkL,IAAI90L,EAAE60L,IAAIjkL,EAAEikL,IAAQ5vK,EAAE,IAAIs9I,GAAI3lK,EAAEuF,GAAG8iB,EAAEroB,EAAEqoB,EAAEkH,EAAEA,EAAErxB,QAA0B2kC,GAAjB5uB,EAAE0pK,GAAGC,GAAIv1J,GAAG,MAAStoB,EAAEoxL,EAAEl9K,EAAE1O,EAAEmN,EAAEugI,EAAK3/H,KAAKsgB,IAAIlhB,EAAEmwB,EAAE7iC,EAAEmxL,EAAEnxL,EAAE,GAAG6T,EAAEo/H,EAAK3/H,KAAKsgB,IAAI/f,EAAEgvB,EAAE3wB,EAAEi/K,EAAEj/K,EAAE,GAAG9O,EAAE6vI,EAAK3/H,KAAKugB,IAAIzwB,EAAEy/B,EAAE7iC,EAAEmxL,EAAEnxL,EAAE,GAAGgU,EAAEi/H,EAAK3/H,KAAKugB,IAAI7f,EAAE6uB,EAAE3wB,EAAEi/K,EAAEj/K,EAAE,GAAuD,IAAvB0X,EAAE,IAAIqrL,IAAnCrwK,EAAE+4I,GAAG26B,IAAIxkM,GAAG+mJ,MAAMooM,MAAM,MAAiB/wV,EAAEQ,EAAEkyB,EAAE7kC,EAAE8T,GAAOpQ,EAAE,IAAIkiK,GAAI3lK,EAAEuF,GAAG9B,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAA0C2rL,GAAhBtmL,EAAEglM,IAAnB51L,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAAa2/R,KAAa,MAA8BlhF,GAAxBtiN,EAAE+9K,GAAGp6K,EAAE,KAAI4N,EAAE0uK,GAAIltK,EAAE5S,EAAE6pB,IAAW5pB,EAAEJ,EAAE+S,EAAE,EAAExB,EAAEe,EAAEtS,EAAEk7B,EAAE,GAAI,IAAI/6B,EAAE,IAAI4lK,GAAI3lK,EAAEuvB,GAAGxvB,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,KAAyBsB,EAAE09V,IAApBphL,GAAG4qB,IAAIh5K,EAAE6zQ,KAAK,KAAY,GAAK,GAAiC4mC,IAAxBp0O,EAAEilI,GAAI5U,GAAI12L,EAAExvB,EAAEA,GAAGwvB,EAAEA,EAAExvB,GAASwvB,EAAEA,EAAEhqB,EAAEvF,EAAEuvB,EAAEA,EAAEhqB,EAAE2M,GAAiB4sK,GAAIz9K,GAApE+vL,EAAkDvR,GAAIjqF,EAAErmE,EAAEA,EAAExvB,IAAYC,EAAEoxL,EAAEl/K,GAA8B83T,IAAxBz4I,EAAEspC,GAAI5U,GAAI12L,EAAEA,EAAExvB,GAAGwvB,EAAExvB,EAAEA,GAASwvB,EAAExvB,EAAEwF,EAAEvF,EAAEuvB,EAAExvB,EAAEwF,EAAE2M,GAAiBktK,GAAI/9K,GAApE6Q,EAAkD2tK,GAAI0R,EAAEhiK,EAAExvB,EAAEA,IAAYC,EAAEkS,EAAEA,GAAG,IAAI4oB,EAAE,IAAI6qI,GAAI3lK,EAAED,GAAG+6B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAASqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,KAAuConL,GAAhCvkC,GAAG4qB,IAAIhjM,EAAE69R,KAAK,MAAKljS,EAAE2/K,GAAIt6K,EAAExF,EAAE6pB,IAAW5pB,EAAEE,EAAEgS,GAAmC8qW,IAAIlpW,EAAlC1Q,EAAEsP,GAAGkyB,EAAE1yB,EAAE0yB,EAAErV,GAAKvb,EAAEH,GAAG+wB,EAAE7kC,EAAE6kC,EAAE5kC,IAAa,GAAM,EAAK,CAE94B,SAAS2qX,IAAI3qX,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAIlU,EAAEM,EAAEkD,EAAuW,IAArWrD,EAAE49K,GAAG4qB,IAAIvoM,GAAGgoM,MAAM0/C,MAAM,IAAIxnP,EAAEy9K,GAAG4qB,IAAIvoM,GAAGq9J,MAAM8tN,MAAM,IAAInrX,EAAE86B,EAAE6iJ,GAAG4qB,IAAIvoM,EAAEorX,KAAK,IAAIprX,EAAEorS,IAAIrrS,EAAEorX,IAAInzK,GAAI93M,IAAIkrS,IAAIrrS,EAAEqrX,IAAIpzK,GAAIl9K,IAAIqnL,GAAIpiN,EAAEC,EAAEJ,EAAEI,EAAEkS,EAAElS,GAAGoiN,GAAIriN,EAAEC,EAAEJ,EAAEsS,EAAEA,EAAEA,IAA+B,GAAzByrK,GAAG26B,IAAIv4M,EAAEklV,KAAK,KAAKhmK,MAAWj/K,EAAEuF,GAAGw1M,GAAGxS,IAAIg3C,GAAIv/O,GAAG4hX,QAAQ7mK,IAAIu0E,MAAMM,OAAO5uE,IAAKimE,OAAQjnR,EAAEgU,EAAoBhU,EAAEgU,GAAnBizM,KAAMA,KAAMgjB,MAAU9iO,GAAGslT,KAAQ9uI,GAAG4qB,IAAIvoM,EAAEysT,KAAK,KAAS9uI,GAAG4qB,IAAIg3C,GAAIv/O,GAAG0sT,KAAK,UAAW1qG,GAAIjiN,EAAEC,EAAEE,EAAEF,GAAGiiN,GAAIliN,EAAEC,EAAEE,EAAEgS,IAAO4B,EAAE,IAAI6xJ,GAAI3lK,EAAEoS,GAAG0B,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAAyC2rL,GAAhBzmL,EAAEmlM,IAAlBn2L,EAAEurK,GAAGC,GAAI9pK,GAAG,IAAY4zO,KAAa,OAAkBxlC,GAAZ38M,EAAEo4K,GAAGv6K,EAAE,KAAWgP,EAAExS,EAAEI,EAAEoS,EAAExS,EAAEsS,GAAGk5R,IAAI7lS,EAAEohV,IAAIv0U,EAAEA,IAAiC,IAA7BxS,EAA2B,GAAzB+9K,GAAG4qB,IAAIvoM,EAAE0hU,KAAK,KAAKziJ,KAAYjhL,EAAE,IAAI2nK,GAAI3lK,EAAEkS,GAAGlU,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAASyU,EAAEgrK,GAAGC,GAAI5/K,GAAG,KAAO4B,GAA4B,GAAzB+9K,GAAG4qB,IAAI51L,EAAE+uT,KAAK,KAAKziJ,QAA8B8iC,GAArBxyL,EAAEouJ,GAAG4qB,IAAI51L,EAAE+0O,KAAK,KAAW/0O,EAAEzS,EAAEF,EAAE2S,EAAEzS,EAAEgS,GAAGgwM,GAAI3yL,EAAE5c,EAAE/S,EAAEI,EAAE2S,EAAE/S,EAAEsS,IAAI,IAAIu/N,GAAI9zD,GAAG4qB,IAAIvoM,EAAEu1W,KAAK,KAAM,IAAIl0W,EAAE,IAAIskK,GAAI3lK,EAAEoS,GAAG/Q,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAAyB,IAAIuF,EAAE,IAAIkiK,IAA1BvzJ,EAAEurK,GAAGC,GAAIv8K,GAAG,KAAoBy5B,GAAGr3B,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAASyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,IAAyBu+M,GAArBzyL,EAAEouJ,GAAG4qB,IAAI51L,EAAE+0O,KAAK,KAAW/0O,EAAEzS,EAAEF,GAAGiiN,GAAI1yL,EAAE5c,EAAEzS,EAAEgS,GAAGgwM,GAAI3yL,EAAE5c,EAAE/S,EAAEI,EAAE2S,EAAE/S,EAAEsS,EAAK,CAIp5B,SAASm1O,IAAIrnP,GAAS,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,GAA1BohT,MAAgC,MAAHp/S,EAAQ,OAAO,KAAsB,IAAjBuF,EAAE+5M,GAAIt/M,EAAEoxN,IAAI,MAAU,EAAG,OAAOpxN,EAA+D,IAAxDhC,EAAE,IAAI8vN,GAAI9tN,EAAEyzD,OAAO,EAAEluD,IAAI2M,EAAE+rK,GAAGqS,IAAGokI,IAAI,GAAG,EAAE,GAAG,GAAGjxT,EAAE,EAAE1D,EAAE,EAAM4S,EAAE3S,EAAE9B,OAAOqH,EAAEoN,EAAEpN,IAAqB,GAAhBqyL,GAAIryL,EAAEvF,EAAE9B,QAA4B,IAAjB8B,EAAEqf,WAAW9Z,IAAQvF,EAAE9B,OAAOqH,EAAE,GAAG6vS,IAAKx9G,GAAIryL,EAAE,EAAEvF,EAAE9B,QAAQ8B,EAAEqf,WAAW9Z,EAAE,IAAI20W,IAAIC,MAAM/kE,IAAKx9G,GAAIryL,EAAE,EAAEvF,EAAE9B,QAAQ8B,EAAEqf,WAAW9Z,EAAE,IAAI20W,IAAIC,KAAyR,GAAnR5qV,EAAE81M,IAAKztC,GAAIryL,EAAE,EAAEvF,EAAE9B,QAAQ8B,EAAEqf,WAAW9Z,EAAE,KAAKqyL,GAAIryL,EAAE,EAAEvF,EAAE9B,QAAQ8B,EAAEqf,WAAW9Z,EAAE,KAAKA,GAAG,EAAKxF,EAAE,EAAY,MAAN,IAAFwvB,GAAard,EAAEzO,KAAK8rB,GAAG,IAAI,GAAKxvB,EAAE,EAAWwvB,GAAG,MAAiB,MAAN,IAAFA,IAAard,EAAEzO,KAAK8rB,GAAG,IAAI,GAAGxvB,EAAE,GAAmB,MAAN,IAAFwvB,IAAard,EAAEzO,KAAK8rB,GAAG,IAAI,GAAGxvB,EAAE,GAAmB,MAAN,IAAFwvB,KAAard,EAAEzO,KAAK8rB,GAAG,IAAI,GAAGxvB,EAAE,IAAMA,EAAE,GAAG,GAAG0D,GAAG1D,EAAE,CAAC,OAAO0D,GAAG,KAAK,EAAGq1O,GAAI96O,IAAS,GAALkU,EAAE,KAAQ,EAAO,GAALA,EAAE,IAAOuqL,KAAK,MAAM,KAAK,EAAGq8C,GAAI96O,IAAS,GAALkU,EAAE,KAAQ,IAAS,GAALA,EAAE,KAAQ,EAAO,GAALA,EAAE,IAAOuqL,KAAYh5L,EAAE,EAAE1D,EAAE,CAAC,MAAM,CAAC,IAAI+6B,EAAE,EAAEA,EAAEr3B,IAAIq3B,EAAGg+M,GAAI96O,EAAEkU,EAAE4oB,GAAG2hK,KAAKh5L,EAAE,EAAEzF,EAAEgC,GAAGyjG,OAAOgjH,aAAal3L,EAAE,KAAM,CAAC,IAAIuL,EAAE,EAAEA,EAAEr3B,IAAIq3B,EAAGg+M,GAAI96O,EAAEkU,EAAE4oB,GAAG2hK,KAAKh5L,EAAE,EAAEq1O,GAAI96O,GAAG45L,GAAIryL,EAAEvF,EAAE9B,QAAQ8B,EAAEqf,WAAW9Z,IAAI,CAAE,OAAOvH,EAAEgC,CAAE,CACl6B,SAAS6pM,IAAG7pM,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAmC,GAAjCkmM,GAAG3pM,EAAEkS,GAAGS,EAAET,EAAE,GAAG4oB,EAAEo+J,GAAI3pK,EAAEA,EAAE,GAAG9rB,GAAG,EAAK81O,GAAGhqN,GAAI,GAAGxvB,EAAE,EAAE,CAAC,GAAG4S,EAAE5S,EAAEC,EAAE9B,OAAQ,OAAO,EAAMuF,EAAE0/U,IAAGnjV,EAAEyzD,OAAO,EAAE9gD,EAAE5S,GAAGmS,EAAE,MAAMzO,EAAE0/U,IAAGnjV,EAAEkS,GAAI,OAAO4oB,GAAG,KAAK,GAAoD,OAAjDr3B,EAAE2tU,IAAGpxU,EAAE2S,EAAE4rK,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACw3L,IAAIC,MAAMp5W,GAAG3M,EAAEA,EAAE9B,GAAS,EAAK,KAAK,GAAwB,KAAK,GAAG,OA7iB9Q,SAAYzD,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,OAAGxF,EAAE,IAAGA,EAAEqxU,IAAGpxU,EAAEuF,EAAEg5K,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC03L,IAAIC,IAAIC,IAAIC,IAAIz5C,IAAI05C,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,MAAM/5W,IAAK,IAAInS,EAAEqxU,IAAGpxU,EAAEuF,EAAEg5K,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,MAAM,MAAM,MAAM,MAAMo+I,IAAI,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,QAAQ//T,MAAOnS,EAAE,KAAgBwvB,EAAEluB,EAAEtB,GAAS,IAAaA,EAAE,IAAGwvB,EAAEluB,EAAEtB,EAAE,GAAS,EAAiB,CA6iBjCmsX,CAAGlsX,EAAEkS,EAAE3M,EAAE9B,EAAEkP,GAAG,KAAK,GAAsB,KAAK,GAAG,OAz+BtU,SAAY3S,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAqJ,OAAnJA,EAAE6rU,IAAGpxU,EAAEuvB,EAAEgvJ,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACs4L,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,MAAMv6W,IAAK,IAAI3M,EAAE6rU,IAAGpxU,EAAEuvB,EAAEgvJ,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,QAAQ3hL,MAAO3M,EAAE,KAAgBxF,EAAEA,EAAEwF,GAAS,EAAI,CAy+ByHmnX,CAAG1sX,EAAEkS,EAAES,EAAEpN,GAAG,KAAK,GAAsD,OAAnD9B,EAAE2tU,IAAGpxU,EAAE2S,EAAE4rK,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,KAAK,OAAO3hL,GAAG3M,EAAE2M,EAAEzO,GAAS,EAAK,KAAK,IAAI,OA5iBza,SAAYzD,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAInoB,EAAElP,EAAI2O,EAAO,GAAL3O,EAAE,GAAM1D,EAAE,EAAE,CAAC,GAAGmS,EAAE,IAAIlS,EAAE9B,OAAQ,OAAO,EAAoB,GAAM,KAApBuF,EAAEy1L,GAAIl5L,EAAEkS,EAAE,MAAiB,IAAHzO,EAAO,OAAO,EAAuB,KAAfyO,EAAE,IAAGnS,EAAEojV,IAAGnjV,EAAEkS,IAAQ,EAAG,OAAO,EAAS,IAAHzO,IAAQ1D,GAAGA,EAAE,CAA0H,OAAnH,IAAH0D,GAAOyO,EAAE,GAAGqd,GAAG,GAAQ,GAALhqB,EAAE2M,IAA8CS,GAA/BP,GAAP,IAAIstL,IAAO1rL,EAAEq1L,cAAcC,IAAIA,IAAI,IAAO,IAAIxuK,EAAE96B,EAAED,GAAG4S,EAAE5S,GAAa,KAATqS,EAAE,IAAI,IAAQrS,EAAE4S,EAAE,IAAI,IAAGmoB,EAAE13B,EAAErD,GAAS,CAAI,CA4iB0H4sX,CAAG3sX,EAAEkS,EAAES,EAAElP,EAAE8rB,EAAEhqB,GAAG,KAAK,IAAI,QAAG9B,GAAG,KAAgB8B,EAAEgqB,EAAE9rB,GAAS,GAAK,KAAK,GAAG,QAAGA,EAAE,IAhtD9f,SAAYzD,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAQ,IAANA,EAAEvL,EAAErd,GAAO,EAAG,KAAM4oB,EAAE,GAAG96B,GAAG,KAAK86B,MAAO,CAAK,IAAJv1B,EAAE,EAAQu1B,EAAE,GAAGv1B,GAAG,KAAKu1B,EAAE96B,GAAGA,GAAGuF,GAAG,IAAIA,EAAE,CAAC,CAAO,OAANxF,EAAE/B,EAAEgC,GAAS,CAAI,CAgtDoZ4sX,CAAGnpX,EAAEkP,EAAET,EAAE,GAAG3M,GAAG,KAAK,IAAO,IAAH9B,IAAQA,EAAE,GAAG,KAAK,GAAG,KAAK,GAAG,QAAGA,EAAE,KAAgB8B,EAAEu1B,EAAEr3B,EAAE8B,EAAEoN,GAAE,GAAa,GAAK,KAAK,IAAI,QAAGlP,EAAE,KAAgB8B,EAAEu1B,EAAEr3B,EAAE8B,EAAEoN,GAAE,GAAY,GAAK,KAAK,IAAI,QAAGlP,EAAE,KAAgB8B,EAAE6M,EAAE3O,GAAS,GAAK,KAAK,IAAI,QAAGA,EAAE,KAAgB8B,EAAE3F,EAAE6D,GAAS,GAAK,KAAK,GAAG,GAAGkP,EAAE3S,EAAE9B,SAAS05L,GAAIjlL,EAAE3S,EAAE9B,QAAyB,IAAjB8B,EAAEqf,WAAW1M,IAAsB,QAAXT,EAAE,GAAG3M,EAAErF,EAAE,GAAS,EAAK,KAAK,IAAI,KAAK,IAAI,OA3qC73B,SAAYF,EAAEkS,EAAEqd,EAAExvB,GAAG,OAAGmS,GAAG,GAAGmqN,GAAIr8N,EAAEyzD,OAAOvhD,EAAE,MAAMhU,QAAQ,QAAqCgU,GAAG,GAAGmqN,GAAIr8N,EAAEyzD,OAAOvhD,EAAE,MAAMhU,QAAQ,QAAhEqxB,EAAE,GAAGrd,EAAE,EAAS66V,IAAG/sW,EAAEuvB,EAAExvB,IAAkFgtW,IAAG/sW,EAAEuvB,EAAExvB,EAAE,CA2qC+sB8sX,CAAG7sX,EAAE2S,EAAET,EAAE3M,GAAG,QAAQ,OAAO,EAAO,CAIt6B,SAASunX,IAAI9sX,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAI2O,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAqF,GAAnFI,EAAEuF,EAAEvF,EAAEqvQ,KAAKrvQ,EAAE86B,EAAE96B,EAAEqvQ,KAAKrvQ,EAAEuvB,EAAEA,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGn+K,EAAEhC,EAAEuxB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGn+K,EAAE2S,EAAE3S,EAAEqvQ,KAAQn9P,EAAG,IAAIS,EAAE,IAAIgzJ,GAAIzzJ,EAAElS,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAyB,IAAI4V,EAAEuoT,IAAtBvhS,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAiB8sK,MAAMC,MAAMi8B,KAAK7nM,EAAEynM,MAAkC,IAA3Bl6M,EAAEs8K,GAAG7pK,EAAE2nM,KAAK,IAAI9zB,GAAI3nL,EAAEuF,EAAElE,GAAOkE,EAAE,IAAIogK,GAAItkK,EAAEsR,GAAGpN,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA4BkrN,GAAnBrpN,EAAE49K,GAAGC,GAAIr4K,GAAG,OAAwBwwK,GAAI/1K,EAAEuvB,EAAExvB,GAAG+2T,IAAI92T,EAAED,KAAG0D,EAAE1D,EAAEwvB,EAAEvxB,EAAEqD,KAAO49P,MAAMgF,MAAMxgQ,GAAGyzR,KAAKzzR,GAAGy7P,KAAKz7P,GAAG2zR,MAAMrhH,GAAI/1K,EAAEoS,EAAErS,IAASiT,GAANpT,EAAEG,EAAEA,GAAM/B,EAAEuxB,IAAKA,EAAEo4J,GAAI3nL,EAAE86B,EAAEl7B,GAAGoT,GAAGd,EAAEy1K,GAAI3nL,EAAEuF,EAAE3F,GAAGkwN,GAAI9vN,EAAEuvB,EAAExvB,IAAM,GAAGwvB,EAAG,IAAI5c,EAAE,IAAIgzJ,GAAIp2I,EAAEvvB,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAQ,CAAiB,IAAIkU,EAAE,IAAIuzJ,IAA1B7qI,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAoBP,GAAGA,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAyB,IAAIqH,EAAE,IAAIogK,GAAxBgY,GAAGC,GAAIxrK,GAAG,IAAoBO,GAAGpN,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAyBkrN,GAAhBrpN,EAAE49K,GAAGC,GAAIr4K,GAAG,MAAYoiL,GAAI3nL,EAAE2S,EAAE5S,GAAI,IAAI+T,EAAEuoT,IAAIvhS,GAAG2kJ,MAAMG,MAAM+7B,KAAK7nM,EAAEynM,MAAkC,IAA3Bl6M,EAAEs8K,GAAG7pK,EAAE2nM,KAAK,IAAI9zB,GAAI3nL,EAAE86B,EAAEz5B,GAAOkE,EAAE,IAAIogK,GAAItkK,EAAEsR,GAAGpN,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAA4BkrN,GAAnBrpN,EAAE49K,GAAGC,GAAIr4K,GAAG,OAAwBwwK,GAAI/1K,EAAEuvB,EAAExvB,GAAG+2T,IAAI92T,EAAED,KAAG0D,EAAE1D,EAAEwvB,EAAEvxB,EAAEqD,KAAO49P,MAAMgF,MAAMxgQ,GAAGyzR,KAAKzzR,GAAGy7P,KAAKz7P,GAAG2zR,MAAMrhH,GAAI/1K,EAAEoS,EAAErS,IAASiT,GAANpT,EAAEG,EAAEA,GAAM/B,EAAEuxB,IAAKA,EAAEo4J,GAAI3nL,EAAE86B,EAAEl7B,GAAGoT,GAAGd,EAAEy1K,GAAI3nL,EAAEuF,EAAE3F,GAAGkwN,GAAI9vN,EAAEuvB,EAAExvB,GAAI,CAAE,CAC/6B,SAASi9W,IAAIh9W,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAwH,GAAtHyQ,EAAE,IAAIihM,GAAIj1M,EAAE2S,EAAE3S,EAAE86B,IAAG13B,EAAEk6U,IAAIt9U,IAAKA,EAAEizI,EAAK3/H,KAAKugB,IAAIzwB,EAAEpD,EAAEkS,GAAG9O,EAAE8O,EAAE+gI,EAAK3/H,KAAKugB,IAAIzwB,EAAE8O,EAAEqd,GAAGhsB,EAAEH,EAAEpD,EAAEgU,EAAEhU,EAAEqB,EAAE+B,EAAE8O,EAAE8B,EAAE9B,EAAEmW,EAAEjlB,EAAEpD,EAAEgU,EAAEhU,EAAEhC,EAAEoF,EAAE8O,EAAE8B,EAAE9B,EAAKnS,EAAmH,IAAhH4S,EAAGmrM,GAAI99M,GAA8B29K,GAAG26B,IAAIwF,GAAI99M,IAAI+/J,MAAM8kN,MAAM,KAAtDlnM,GAAG26B,IAAIt4M,GAAG+/J,MAAM8kN,MAAM,KAAqCphX,EAAEs3M,GAAGzC,IAAIt4M,GAAG+/J,MAAM2qH,SAAS3vE,IAAIu6E,MAAMt4D,MAAUnpN,EAAE,IAAIkrK,KAAM/+K,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAI+qK,GAAI3M,IAAG3tL,EAAE,EAAE,IAAIA,EAAEuvB,IAAI1b,EAAEtO,GAAGsO,EAAE7V,EAAEihL,MAAuF,OAAhFvsK,EAAEirK,GAAGwB,IAAItrK,GAAG,MAAKI,EAAE0pK,GAAG26B,IAAI5lM,EAAEoyW,KAAK,OAAWrlM,MAAMqnB,OAAM7yL,EAAE2yU,IAAIl0U,EAAEC,GAAGy4R,IAAI14R,EAAEoyW,IAAI7wW,IAAUA,EAAEtB,GAAG,KAAK,EAAElP,GAAG0+M,GAAIzvM,EAAEA,EAAE1U,EAAEuF,GAAG,MAAM,KAAK,EAAE4+M,GAAIzvM,EAAEA,EAAE1U,EAAEqqB,GAAG5kB,GAAG2+M,GAAI1vM,EAAEA,EAAEN,EAAE/Q,GAAG,MAAM,KAAK,EAAEoC,GAAG0+M,GAAIzvM,EAAEA,EAAE1U,EAAEuF,GAAG6+M,GAAI1vM,EAAEA,EAAEN,EAAEpU,GAAG,MAAM,KAAK,EAAEyF,GAAG2+M,GAAI1vM,EAAEA,EAAEN,EAAE/Q,GAAqB,GAAf0gN,GAAI/hN,EAAEoD,EAAEpD,EAAEoD,EAAE8O,GAAM3M,EAAG,IAAIyN,EAAE,IAAI+rK,KAAM/+K,EAAEJ,IAAII,EAAEJ,EAAE,IAAI06L,GAAIrN,IAAGjtL,EAAE,EAAE,IAAIA,EAAEJ,IAAIoT,EAAEzN,GAAGyN,EAAEhV,EAAEihL,MAAwBr/K,GAAjBkU,EAAE6pK,GAAGwB,IAAInsK,GAAG,MAAShV,EAAE8V,EAAEnB,EAAE,EAAEzS,EAAE4T,EAAE1B,EAAE0B,EAAEgnB,EAAE,GAAE3pB,EAAEvR,EAAEoU,EAAEhU,IAAEoS,EAAElS,EAAE8T,EAAE9B,IAAU,IAAMf,EAAEiB,EAAE,GAAGlS,GAAG,GAAGiiN,GAAIruM,EAAEA,EAAE9V,EAAEqqB,GAAG+5L,GAAItuM,EAAEA,EAAE1B,EAAEpU,EAAEoU,IAAWjB,EAAEiB,EAAE,GAAGxS,GAAG,IAAGuiN,GAAIruM,EAAEA,EAAE9V,EAAEqqB,EAAElX,GAAGixM,GAAItuM,EAAEA,EAAE1B,EAAEpU,KAAoF,OAA9EotS,IAAIprS,GAAG+/J,MAAM28I,MAAMplF,MAAsB,IAAI7vB,GAApB3sK,EAAE6iJ,GAAGsL,GAAIqgG,KAAI,GAAa3rG,GAAG+pB,GAAI5sK,EAAEA,EAAE58B,QAAQ,GAAG,KAAY,IAAI+2M,GAAI1xM,EAAElC,EAAE,CACn7B,SAAS0rX,IAAI/sX,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAI+6B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAA+K,GAA7Cc,EAA1HgqM,GAAIkN,IAAIrtC,GAAG0O,KAAMrsL,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,GAAG,GAAG,OAAQ4rM,GAAIkN,IAAIrtC,GAAG0O,KAAMrsL,EAAEuvB,IAAIvvB,EAAEuvB,EAAE,IAAIw7L,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEuvB,GAAG,GAAG,MAAa9rB,EAAE,IAAImlL,IAAI12K,EAAEyrK,GAAG26B,IAAIt4M,GAAGigK,KAAMs8I,MAAM,MAAYrqS,EAAEA,GAAG,EAAE,CAAC,GAA0C,KAArClS,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,GAAGhC,EAASurL,KAAHh6J,EAAW,IAAI+hI,GAAO25B,KAAMjrL,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,GAAGuvB,QAAQ,KAAKvvB,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,GAAGhC,EAAE,EAAkD,IAA/CgV,EAAE,IAAI09M,KAAM1wN,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,IAAUgT,EAAEzN,GAAGyN,EAAEhV,EAAEihL,MAAM4tJ,IAAI75T,GAAI0gW,IAAIxhW,EAAEyrK,GAAG0O,KAAMrsL,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,GAAG,GAAG,KAAK,CAAC,GAAG8T,EAAG,IAAI/T,EAAE,IAAIg/K,KAAM/+K,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,IAAID,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAwB,IAAI7sK,EAAE,IAAI2sK,MAA3BxvJ,EAAEouJ,GAAGwB,IAAIp/K,GAAG,MAAuBC,IAAIuvB,EAAEvvB,EAAE,IAAIg/K,GAAI7qJ,IAAG5E,EAAE,IAAIA,EAAEvvB,IAAIoS,EAAE7M,GAAG6M,EAAEpU,EAAEihL,MAAOjhL,EAAE2/K,GAAGwB,IAAI/sK,GAAG,KAAK3O,EAAEzD,EAAEizI,EAAK3/H,KAAKugB,IAAIpwB,EAAEzD,EAAEhC,EAAEgC,GAAGyD,EAAEyO,EAAE+gI,EAAK3/H,KAAKugB,IAAIpwB,EAAEyO,EAAElU,EAAEkU,GAAK,IAAIS,EAAE,IAAIosK,KAAM/+K,EAAEJ,IAAII,EAAEJ,EAAE,IAAI06L,GAAIrN,IAAGjtL,EAAE,EAAE,IAAIA,EAAEJ,IAAI+S,EAAEpN,GAAGoN,EAAE3U,EAAEihL,MAAOnkJ,EAAE6iJ,GAAGwB,IAAIxsK,GAAG,MAAKtR,EAAEs8K,GAAG26B,IAAIx9K,EAAEuhR,KAAK,KAAQn6F,GAAIpnL,EAAEz5B,EAAErB,EAAEqB,EAAE6Q,GAAM4B,IAAGrQ,EAAEzD,EAAEizI,EAAK3/H,KAAKugB,IAAIpwB,EAAEzD,EAAE86B,EAAE98B,EAAE88B,EAAEnoB,GAAGlP,EAAEyO,EAAE+gI,EAAK3/H,KAAKugB,IAAIpwB,EAAEyO,EAAE4oB,EAAE1oB,EAAE0oB,EAAEA,IAAI,OAAOr3B,CAAC,CAE17B,SAASkkM,IAAI3nM,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAkE,OAAhE1D,EAAEmS,EAAElU,EAAE88B,EAAE96B,EAAEhC,EAAEkC,EAAEqF,EAAEvF,EAAEhC,EAAE+B,EAAE0D,EAAEzD,EAAEJ,EAAE+S,EAAE+iP,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACpwL,EAAEzD,EAAEA,KAAYA,EAAEoS,EAAEO,GAAG,KAAK,EAAEolN,GAAI7lN,GAAGoiQ,KAAMI,MAAM30Q,EAAEA,GAAGwF,EAAExF,EAAEwvB,EAAExvB,EAAEC,EAAK29K,GAAGA,GAAG0pB,GAAIn1L,EAAEnS,EAAE,GAAG,KAAKimM,IAAIgC,MAAMwsF,MAAM,OAAOzM,MAAMG,MAAMxH,GAAIxuQ,GAAG6hQ,KAAMI,MAAMp0Q,EAAEwvB,EAAE5c,EAAE3S,EAAEsgL,GAAIC,GAAGgoB,IAAIvoM,EAAEqpV,OAAO95T,EAAExvB,EAAEmS,IAAOwuQ,GAAIxuQ,GAAG6hQ,KAAME,MAAMl0Q,EAAEwvB,EAAE5c,EAAE3S,EAAEsgL,GAAIC,GAAGgoB,IAAIvoM,EAAEqpV,OAAO95T,GAAE,MAAM,KAAK,EAAEmxP,GAAIxuQ,GAAG6hQ,KAAME,MAAMl0Q,EAAEwvB,EAAEuL,EAAE96B,EAAEuF,EAAEgqB,EAAEA,EAAKouJ,GAAGA,GAAG0pB,GAAIn1L,EAAEnS,EAAE,GAAG,KAAKimM,IAAIgC,MAAMwsF,MAAM,OAAOzM,MAAMG,MAAMnwD,GAAI7lN,GAAGoiQ,KAAMI,MAAM30Q,EAAEA,EAAE4S,EAAET,EAAEouK,GAAIC,GAAGgoB,IAAIvoM,EAAEqpV,OAAO95T,EAAExvB,EAAEC,IAAO+3N,GAAI7lN,GAAGoiQ,KAAME,MAAMz0Q,EAAEA,EAAE4S,EAAET,EAAEouK,GAAIC,GAAGgoB,IAAIvoM,EAAEqpV,OAAO95T,GAAE,MAAM,KAAK,EAAEwoM,GAAI7lN,GAAGoiQ,KAAME,MAAMz0Q,EAAEA,EAAE+6B,EAAE5oB,EAAE3M,EAAEvF,EAAEuvB,EAAKouJ,GAAGA,GAAG0pB,GAAIn1L,EAAEnS,EAAE,GAAG,KAAKimM,IAAIgC,MAAMwsF,MAAM,OAAOzM,MAAMG,MAAMxH,GAAIxuQ,GAAG6hQ,KAAMI,MAAMp0Q,EAAEwvB,EAAE5c,EAAE3S,EAAEsgL,GAAIC,GAAGgoB,IAAIvoM,EAAEqpV,OAAO95T,EAAExvB,EAAEmS,IAAOwuQ,GAAIxuQ,GAAG6hQ,KAAME,MAAMl0Q,EAAEwvB,EAAE5c,EAAE3S,EAAEsgL,GAAIC,GAAGgoB,IAAIvoM,EAAEqpV,OAAO95T,GAAE,MAAM,KAAK,EAAEmxP,GAAIxuQ,GAAG6hQ,KAAMI,MAAMp0Q,EAAEwvB,GAAGhqB,EAAE2M,EAAEqd,EAAExvB,EAAEmS,EAAKyrK,GAAGA,GAAG0pB,GAAIn1L,EAAEnS,EAAE,GAAG,KAAKimM,IAAIgC,MAAMwsF,MAAM,OAAOzM,MAAMG,MAAMnwD,GAAI7lN,GAAGoiQ,KAAMI,MAAM30Q,EAAEA,EAAE4S,EAAET,EAAEouK,GAAIC,GAAGgoB,IAAIvoM,EAAEqpV,OAAO95T,EAAExvB,EAAEC,IAAO+3N,GAAI7lN,GAAGoiQ,KAAME,MAAMz0Q,EAAEA,EAAE4S,EAAET,EAAEouK,GAAIC,GAAGgoB,IAAIvoM,EAAEqpV,OAAO95T,GAAG,CACj8B,SAASy9V,IAAIhtX,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,GAAG,IAAIlP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAIwD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAEC,EAAEC,EAAEz7F,EAAE27F,EAAU,IAAR3xL,EAAE,EAAEuxL,EAAE,EAAMnzL,EAAE,IAAI2nK,GAAI3lK,GAAGhC,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAyB0mX,IAAhBnhX,EAAEk6K,GAAGC,GAAI5/K,GAAG,KAAW4B,EAAEqzI,EAAK3/H,KAAKugB,IAAIj0B,EAAE6D,EAAEkP,GAAGw+K,GAAG1tL,EAAEkP,EAAElP,EAAEq3B,EAAkK,IAAjJ+H,EAr3CpM,SAAa7iC,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAI+6B,EAAM,IAAJA,EAAE,EAAM/6B,EAAE,IAAI4lK,GAAI3lK,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,IAAI+6B,GAAGm4G,EAAK3/H,KAAKyd,IAAIxB,EAAE5c,EAAE4c,EAAEuL,EAAE5oB,EAAE,GAAsC,OAAjC+gI,EAAK3/H,KAAKuc,KAAKiL,GAAG96B,EAAEuvB,EAAErxB,OAAO,GAAY,CAq3CuC+uX,CAAIjtX,EAAnBmxL,EAAEnxL,EAAEuvB,EAAErxB,QAAkBizL,GAAGnxL,EAAEuvB,EAAErxB,OAAO2kC,EAAEjjC,EAAEqzI,EAAK3/H,KAAKugB,IAAIj0B,EAAEqzI,EAAK3/H,KAAKuc,KAAKshK,EAAEx+K,IAAI4c,EAAErd,EAAE0jF,EAAErmE,EAAErd,EAAEq/K,EAAEhiK,EAAExvB,EAAEiT,EAAE,EAAE3R,EAAEkuB,EAAErd,EAAEqd,EAAEA,EAAYq2M,GAAVhhM,EAAE,IAAI60I,GAAUu+B,GAAI,IAAIz0M,EAAE,IAAIk2K,GAAIrnK,EAAE,IAAIm3M,GAAIvpN,EAAE,GAASoS,EAAEF,EAAEE,EAAErS,EAAEk/K,MAASqqC,GAAIl3M,EAAEF,EAAEE,EAAErS,EAAEk/K,MAAgCoS,GAA/C5tL,EAAqBk6K,GAAGvrK,EAAErS,EAAEs7M,GAAGjpM,EAAEmd,EAAEnd,EAAEF,KAAK,KAASS,EAAEmB,EAAErQ,EAAEq3B,EAAK86D,EAAEy7F,EAAEzxL,IAAMk7B,IAAGkiL,GAAIz5M,EAAEyP,GAAGgqM,GAAIp4K,EAAEozK,GAAI5lM,EAAEF,EAAE,KAAI0jF,EAAErmE,EAAErd,EAAEq/K,GAAGv+K,EAAEd,EAAEc,EAAE,EAAE3R,EAAE4xI,EAAK3/H,KAAKugB,IAAIxyB,EAAEkuB,EAAErd,EAAEqd,EAAEA,EAAE8hK,IAAG8wB,GAAI1+M,EAAEmyF,GAAGwsH,GAAI3+M,EAAE8tL,GAAGlwL,EAAE4xI,EAAK3/H,KAAKugB,IAAIxyB,EAAEu0F,EAAEy7F,EAAE9hK,EAAEA,GAAGvc,EAAEigI,EAAK3/H,KAAKugB,IAAI7gB,EAAEc,GAAG8hF,GAAGy7F,EAAEn/K,EAAoD,GAAlD7Q,EAAE4xI,EAAK3/H,KAAKugB,IAAIxyB,EAAEtB,IAAGqxL,EAAEG,EAAEv+K,EAAEuc,EAAEvvB,GAAOuF,IAAGyN,GAAGzN,EAAE6rL,EAAEA,EAAE7rL,GAAKu1B,EAAoG,IAAjG86D,EAAErmE,EAAErd,EAAEE,EAAE,IAAIm3M,GAAIvpN,EAAE,GAAGg9M,GAAIp4K,EAAEozK,GAAIh4M,EAAEuvB,EAAErxB,SAAoBwU,EAAEirK,GAAGohF,GAAhBn1O,EAAEk1O,IAAIl6N,EAAE,IAAe,IAAI5kC,EAAEg9M,GAAIz5M,EAAEyP,GAAG7B,EAAE2tP,IAAIv7P,EAAE,GAAG8kB,EAAE,EAAQjW,EAAEF,EAAEE,EAAErS,EAAEk/K,MAAS7sK,EAAEF,GAAGQ,IAAGkjF,EAAErmE,EAAErd,EAAEmW,EAAEi4J,GAAIC,GAAGw+E,GAAI5tP,KAAKuB,EAAEirK,GAAGohF,GAAIn1O,GAAG,IAAI5pB,GAAKspN,GAAIl3M,EAAEF,EAAEE,EAAErS,EAAEk/K,MAAgCprK,GAA/CpQ,EAAqBk6K,GAAGvrK,EAAErS,EAAEs7M,GAAGjpM,EAAEmd,EAAEnd,EAAEF,KAAK,KAAS4oB,EAAEmnL,GAAIx+M,EAAE4kB,GAAGjlB,EAAEilB,EAAKjW,EAAEF,GAAGQ,IAAGsB,EAAE3S,EAAEu0F,EAAErmE,EAAEA,EAAEtb,EAAExQ,EAAEkP,EAAEqvM,GAAIv+M,EAAEuQ,GAAGorU,IAAI37U,EAAE,IAAIwxM,GAAIjhM,EAAE5Q,GAAG,IAAI6xM,GAAIhhM,EAAEJ,KAAI+hF,GAAGnyF,EAAEkP,EAAET,EAAG,OAAO,IAAI+iM,GAAI5zM,EAAE+vL,EAAE,CAE58B,SAASyhK,IAAI7yV,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAE,GAAW,GAARroB,EAAEi/K,KAAS,OAAOtB,GAAG39K,EAAEq7M,GAAG,GAAG,KAAU,GAAGr7M,EAAEi/K,MAAM,EAAG,OAAO,IAAIwyF,GAAI,IAAIlsQ,EAAEvF,EAAE27M,KAAKp2M,EAAEg2M,MAAM,CAA8C,IAA7ChsL,EAAEouJ,GAAGp4K,EAAEk2M,KAAK,KAAKv7M,EAAE,EAAEmB,EAAE62L,IAAIpkL,EAAEokL,IAAIl6L,EAAEi6L,IAAI7lL,EAAE6lL,IAAQr4L,EAAE,IAAI+lK,GAAIp2I,EAAEhqB,GAAG3F,EAAEI,EAAEJ,EAAE2vB,EAAEA,EAAErxB,QAAS8U,EAAE2qK,GAAGC,GAAIh+K,GAAG,KAAKM,GAAGy9K,GAAG4qB,IAAIv1L,GAAG6nJ,MAAM8nM,MAAM,IAAI3iW,EAAEqB,EAAE4xI,EAAK3/H,KAAKsgB,IAAIvyB,EAAE2R,EAAEjT,EAAEC,EAAEgT,EAAEzN,EAAEvF,EAAE,GAAG8T,EAAEm/H,EAAK3/H,KAAKsgB,IAAI9f,EAAEd,EAAEjT,EAAEmS,EAAEc,EAAEzN,EAAE2M,EAAE,GAAGlU,EAAEi1I,EAAK3/H,KAAKugB,IAAI71B,EAAEgV,EAAEjT,EAAEC,EAAEgT,EAAEzN,EAAEvF,EAAE,GAAGoS,EAAE6gI,EAAK3/H,KAAKugB,IAAIzhB,EAAEY,EAAEjT,EAAEmS,EAAEc,EAAEzN,EAAE2M,EAAE,GAAG61L,GAAIx4K,GAAGsrI,MAAM8nM,KAAK3qJ,GAAI93M,IAAI6nM,GAAIx4K,GAAG4zQ,KAAMK,KAAK,IAAIvuF,GAAI5zM,EAAEyS,IAAIi0L,GAAIx4K,EAAEm0Q,IAAI,IAAIzuF,GAAIj3M,EAAEoU,GAAG,CAA6D,IAA5D60M,KAAMjnN,EAAE6zK,GAAG,IAAIx5B,IAAew1H,GAAVzsQ,EAAE,IAAIquQ,GAAU9zF,GAAG39K,EAAEq7M,GAAG,GAAG,KAAK53M,EAAE,EAAEoQ,EAAE,EAAMinB,EAAE96B,EAAE27M,KAAK7gL,EAAEygL,MAAOhsL,EAAEouJ,GAAG7iJ,EAAE2gL,KAAK,KAAKznM,EAAE6mN,GAAI5U,GAAItoC,GAAG4qB,IAAIh5K,GAAG4zQ,KAAMO,MAAM,IAAI/lH,GAAG4qB,IAAIh5K,EAAEi0Q,KAAK,IAAI//R,EAAEwvI,EAAK3/H,KAAKugB,IAAIpwB,EAAEuQ,EAAEhU,GAAG6T,GAAGG,EAAEhU,EAAEgU,EAAE9B,EAAyG,IAAvGzO,EAAEwvI,EAAK3/H,KAAKugB,IAAIpwB,EAAEwvI,EAAK3/H,KAAKuc,KAAKhc,GAAGysK,GAAIC,GAAGgoB,IAAInlM,GAAGy3J,MAAMioM,SAA+B7uV,EAAE,EAAEoU,EAAE,EAAE1V,EAAE,EAAET,EAAlCQ,EAAE4tK,GAAIC,GAAGgoB,IAAInlM,EAAEgrS,OAA2BruS,EAAEC,EAAE27M,KAAK57M,EAAEw7M,MAAOhsL,EAAEouJ,GAAG59K,EAAE07M,KAAK,KAA8DxnM,GAAzDD,EAAE6mN,GAAI5U,GAAItoC,GAAG4qB,IAAIh5K,GAAG4zQ,KAAMO,MAAM,IAAI/lH,GAAG4qB,IAAIh5K,EAAEi0Q,KAAK,KAAWxjS,EAAEyD,IAAGwQ,EAAE,EAAEoU,GAAG1V,EAAED,EAAEC,EAAE,GAAEm4V,IAAI1nW,EAAEmsB,EAAEtb,EAAEoU,GAAGnW,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAE+B,EAAED,EAAEhU,GAAG2S,EAAEsgI,EAAK3/H,KAAKugB,IAAIlhB,EAAEqB,EAAE9B,GAAG+B,GAAGD,EAAEhU,EAAE0S,EAAE,OAAOtP,CAAC,CAC19B,SAAS8pX,IAAIltX,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAY,OAAVmB,EAAE,IAAIm4K,GAAWx5K,EAAEA,EAAE2S,GAAG,KAAK,EAAEK,EAAE2qK,GAAG4qB,IAAIr2L,EAAE3M,GAAGyiM,MAAMixK,MAAM,IAAIr5W,EAAE+9K,GAAG4qB,IAAIr2L,EAAEE,EAAE6mW,KAAK,IAAI/4W,EAAEy9K,GAAG4qB,IAAIr2L,EAAE4oB,EAAEm+U,KAAK,IAAI1pV,EAAEouJ,GAAG4qB,IAAIr2L,EAAE3M,EAAE6zW,KAAK,IAAIr5W,EAAE49K,GAAG4qB,IAAIr2L,EAAEE,EAAEgnW,KAAK,IAAI7zW,EAAEo4K,GAAG4qB,IAAIr2L,EAAE4oB,EAAEs+U,KAAK,IAAcxwH,GAAVj2O,EAAE,IAAI2/J,GAAUt/J,GAAGpT,EAAEw8P,GAAG,IAAIj0G,IAAKygG,GAAIj2O,EAAEk3K,GAAGjqL,EAAE,KAAKixQ,GAAGlzF,GAAG/9K,EAAE,MAAMiqL,GAAGjqL,EAAE,KAAK+9K,GAAG/9K,EAAE,KAAKI,EAAE6pL,GAAGjqL,EAAE,IAAI,IAAIk9K,GAAGl9K,GAAG,IAAIkrE,GAAGlrE,IAAIgpP,GAAIj2O,EAAEzS,GAAa0oP,GAAV9tN,EAAE,IAAIw3I,GAAU/iJ,GAAGq5N,GAAI9tN,EAAE+uJ,GAAG9pL,EAAE,KAAK8wQ,GAAGlzF,GAAG59K,EAAE,MAAM8pL,GAAG9pL,EAAE,KAAK49K,GAAG59K,EAAE,KAAKC,EAAE6pL,GAAG9pL,EAAE,IAAI,IAAI+8K,GAAG/8K,GAAG,IAAI+qE,GAAG/qE,IAAI6oP,GAAI9tN,EAAEv1B,GAAGwiM,GAAI71L,EAAE4oB,EAAEm+U,IAAItmW,GAAGo1L,GAAI71L,EAAE4oB,EAAEs+U,IAAIt+U,GAAGitK,GAAI71L,EAAE4oB,EAAEo+U,IAAIhnW,EAAE4oB,GAAGitK,GAAI71L,EAAE3M,EAAE0zW,IAAI,MAAMlxK,GAAI71L,EAAE3M,EAAE6zW,IAAI,MAAMrxK,GAAI71L,EAAEE,EAAE6mW,IAAI,MAAMlxK,GAAI71L,EAAEE,EAAEgnW,IAAI,MAAM,MAAM,KAAK,EAAE7/K,GAAGl4L,EAAE6Q,EAAE3M,EAAEvF,GAAG4lO,GAAIvkO,EAAE6Q,EAAElU,EAAE4B,GAAG25L,GAAGl4L,EAAEgoN,GAAGn3M,EAAEE,EAAEpS,IAAI4lO,GAAIvkO,EAAE6Q,EAAElS,EAAEJ,GAAG25L,GAAGl4L,EAAE6Q,EAAE4oB,EAAE96B,GAAG,MAAM,QAAQu5L,GAAGl4L,EAAE6Q,EAAE3M,EAAEvF,GAAGu5L,GAAGl4L,EAAEgoN,GAAGn3M,EAAEE,EAAEpS,IAAIu5L,GAAGl4L,EAAE6Q,EAAE4oB,EAAE96B,GAAIyhM,GAAIvvL,EAAE4oB,EAAE96B,GAAGu5L,GAAGrnL,EAAE4oB,EAAE96B,EAAEqB,GAAGgxP,GAAIngP,EAAE4oB,EAAE5oB,EAAE3M,EAAEgqB,GAAG9rB,EAAEk6K,GAAG4qB,IAAIr2L,EAAE3M,GAAG83J,MAAM2hG,MAAM,IAAI5sP,EAAEurK,GAAG4qB,IAAIr2L,EAAEE,EAAE4sP,KAAK,IAAIhhQ,EAAE2/K,GAAG4qB,IAAIr2L,EAAE4oB,EAAEkkO,KAAK,KAASv7P,GAAK2O,GAAKpU,KAAai2O,GAAVngO,EAAE,IAAI0lK,GAAUx7K,GAAGi2O,GAAIngO,EAAE1B,GAAG6hO,GAAIngO,EAAErQ,GAAGskM,GAAI71L,EAAE4oB,EAAEkkO,IAAIlrP,IAAGu+O,GAAIngP,EAAEE,EAAE,MAAMggP,GAAIlgP,EAAEE,EAAE,MAAMigP,GAAIngP,EAAE3M,EAAE,MAAM6sP,GAAIlgP,EAAE3M,EAAE,MAAM+sP,GAAIpgP,EAAElS,EAAE,MAAMsyP,GAAIpgP,EAAElU,EAAE,MAAQkU,EAAES,GAAGu6W,IAAIltX,EAAEkS,EAAES,EAAE,CAG79B,SAASw6W,IAAIntX,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAwF,OAAtF3wB,EAAEjU,EAAEuvB,GAAGkuL,GAAI,EAAEvrM,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAE,GAAG,KAAKnsB,GAAGwmB,EAAE5pB,EAAEuvB,GAAGkuL,GAAI,EAAEvrM,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAE,GAAG,KAAKnsB,IAAM6Q,EAAEjU,EAAEuF,EAAEA,EAAE0O,EAAEjU,EAAEA,GAAGiU,EAAE/B,EAAE3M,EAAEA,EAAE0O,EAAE/B,EAAElS,IAAI,GAAG4pB,EAAE5pB,EAAEuF,EAAEA,EAAEqkB,EAAE5pB,EAAEA,GAAG4pB,EAAE1X,EAAE3M,EAAEA,EAAEqkB,EAAE1X,EAAElS,IAAI,OAA8B6pL,GAAdn3K,EAAEuB,EAAE/B,EAAE3M,EAAEu1B,EAAW,MAAkB9mB,EAAE2pK,GAAGjrK,EAAE,IAAIvB,EAAEnR,EAAEhC,EAAEgW,EAAE5Q,GAAGG,EAAGyQ,EAAEub,EAAK42K,GAAInyL,EAAEub,EAAEvvB,EAAEgU,EAAE,IAAd,EAAiB8mB,EAAEw7I,IAAO/yK,EAAE,IAAGgC,EAAEo4K,GAAG0pB,GAAIrzL,EAAEub,EAAEvvB,EAAEuD,EAAE,GAAG,IAAIoP,EAAE3S,EAAEhC,EAAEuH,EAAEnC,GAAGwhC,EAAEquG,EAAK3/H,KAAKwd,KAAK+0L,GAAI7lN,EAAEJ,EAAE2F,EAAEyO,IAAI8mB,EAAE3pB,EAAEnR,EAAEuF,EAAEyO,EAAEjU,EAAEA,GAAG4S,EAAE3S,EAAEuF,EAAEA,EAAErF,EAAEgS,EAAE3M,EAAExF,EAAEC,GAAG4kC,GAAExyB,EAAEkkK,IAAO/yK,EAAEyQ,EAAEub,EAAEvvB,EAAEuvB,EAAErxB,OAAO,IAAGF,EAAE2/K,GAAG0pB,GAAIrzL,EAAEub,EAAEvvB,EAAEuD,EAAE,GAAG,IAAIlC,EAAErB,EAAEhC,EAAEA,EAAEoF,GAAGwhC,EAAEquG,EAAK3/H,KAAKwd,KAAK+0L,GAAI7lN,EAAEJ,EAAE5B,EAAEgW,IAAI5B,EAAE/Q,EAAErB,EAAEuF,EAAEvH,EAAE+B,EAAEA,GAAGoR,EAAEnR,EAAEuF,EAAEyO,EAAE9T,EAAEgS,EAAE8B,EAAEjU,EAAEC,GAAG4kC,MAAKrV,IAAIk1L,KAAKiyE,GAAGgtD,KAAKzwM,EAAK3/H,KAAKskB,IAAIkD,EAAE1oB,IAAIsxU,KAAK5oT,GAAG1oB,GAAGzC,MAAMmrB,IAAInrB,MAAMyC,OAAiBrS,EAAE02O,GAAIxiO,EAAEjU,GAAGyD,GAAGgzO,GAAIxiO,EAAE/B,GAAG4B,GAAG2iO,GAAI7sN,EAAE5pB,GAAG6T,EAAE4iO,GAAI7sN,EAAE1X,GAAG9O,EAAE6Q,EAAEjU,EAAEuF,EAAEA,EAAE0O,EAAEjU,EAAEA,GAAGiU,EAAE/B,EAAE3M,EAAEA,EAAE0O,EAAE/B,EAAElS,GAAG,GAAG4pB,EAAE5pB,EAAEuF,EAAEA,EAAEqkB,EAAE5pB,EAAEA,GAAG4pB,EAAE1X,EAAE3M,EAAEA,EAAEqkB,EAAE1X,EAAElS,GAAG,EAAEE,EAAE+T,EAAEjU,EAAEuF,EAAEA,EAAE0O,EAAEjU,EAAEA,GAAGiU,EAAE/B,EAAE3M,EAAEA,EAAE0O,EAAE/B,EAAElS,GAAG,GAAG4pB,EAAE5pB,EAAEuF,EAAEA,EAAEqkB,EAAE5pB,EAAEA,GAAG4pB,EAAE1X,EAAE3M,EAAEA,EAAEqkB,EAAE1X,EAAElS,GAAG,EAAEJ,EAAEqU,EAAEjU,EAAEuF,EAAEA,EAAE0O,EAAE/B,EAAElS,EAAE4pB,EAAE1X,EAAE3M,EAAEA,EAAEqkB,EAAE5pB,EAAEA,EAAEgT,EAAEiB,EAAEjU,EAAEuF,EAAEA,EAAE0O,EAAE/B,EAAElS,EAAE4pB,EAAE1X,EAAE3M,EAAEA,EAAEqkB,EAAE5pB,EAAEA,EAAEqoB,EAAE,GAAGjlB,IAAIlD,IAAI8S,EAAE8nB,EAAEhnB,EAAE,EAAGuU,EAAEvU,EAAG1B,EAAErS,EAAE,IAAIsoB,EAAEtoB,GAAGH,IAAIk7B,EAAEr3B,EAAE,EAAG4kB,EAAE5kB,EAAG2O,EAAEyB,EAAE,IAAIwU,EAAExU,KAAK1C,EAAEnR,EAAEuF,GAAG8iB,EAAElX,EAAEe,IAAIf,EAAEpR,EAAEwF,GAAG8iB,IAAU,IAAK,CACz+B,SAAS+/R,IAAIpoT,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAA2D,GAAzDjT,EAAE,IAAImoM,GAAIh2L,EAAE++T,KAAKjxU,EAAEkS,EAAE++T,KAAK/+T,EAAEA,EAAEqtL,KAAKv/L,EAAEkS,EAAEqtL,KAAKrtL,GAAG3M,EAAE,IAAIojM,GAAO3oM,EAAEuvB,EAAG,IAAI5c,EAAE,IAAIgzJ,GAAIzzJ,EAAEkuS,MAAMztS,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAKpN,EAAEgqB,EAAEuL,EAAEm2S,KAAKjxU,EAAEkS,EAAE++T,KAAKjxU,EAAEuF,EAAExF,EAAE+6B,EAAEm2S,KAAK/+T,EAAEA,EAAE++T,KAAK/+T,EAAE3M,EAAE2M,EAAE4oB,EAAEykK,KAAKv/L,EAAEuF,EAAEvF,EAAE86B,EAAEykK,KAAKrtL,EAAEi2L,IAAIpoM,EAAEwF,GAAI,IAAI6M,EAAE,IAAIuzJ,GAAIzzJ,EAAEk1W,MAAMh1W,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAQ,CAAiH,GAA/FmD,GAAjBrD,EAAE2/K,GAAGC,GAAIxrK,GAAG,MAAS6+T,KAAKjxU,EAAEkS,EAAE++T,KAAKjxU,EAAE8T,EAAE9V,EAAEizU,KAAK/+T,EAAEA,EAAE++T,KAAK/+T,EAAKlS,EAAEuF,IAAGA,EAAEgqB,EAAEluB,EAAEkE,EAAExF,EAAE+T,EAAEvO,EAAE2M,EAAElU,EAAEuhM,KAAKv/L,EAAEuF,EAAEvF,EAAEhC,EAAEuhM,KAAKrtL,EAAEi2L,IAAIpoM,EAAEwF,IAAMvF,EAAED,EAAG,IAAI4S,EAAE,IAAIgzJ,GAAI3nK,EAAEoiT,MAAMztS,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAKpN,EAAEgqB,EAAEuL,EAAEm2S,KAAKjxU,EAAEqB,EAAEkE,EAAExF,EAAE+6B,EAAEm2S,KAAK/+T,EAAE4B,EAAEvO,EAAE2M,EAAE4oB,EAAEykK,KAAKv/L,EAAEuF,EAAEvF,EAAE86B,EAAEykK,KAAKrtL,EAAEi2L,IAAIpoM,EAAEwF,GAAI,GAAGvF,EAAEkS,EAAE,CAAkB,GAAjBc,EAAE,IAAIiiM,IAAK1lL,GAAGA,GAAMouJ,GAAGzrK,EAAE8zL,IAAIjmC,MAAM0kK,MAAM,KAAKxkI,IAAI4I,MAAMG,MAAO,IAAIr2L,EAAE,IAAIgzJ,GAAI3nK,EAAEoiT,MAAMztS,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,KAAKK,EAAEhT,GAAG86B,EAAEykK,KAAKv/L,EAAEuvB,EAAEvc,EAAEd,GAAG4oB,EAAEykK,KAAKrtL,EAAEqd,EAAGvc,EAAEhT,EAAEizI,EAAK3/H,KAAKugB,IAAI7gB,EAAEhT,EAAE,GAAGgT,EAAEd,EAAE+gI,EAAK3/H,KAAKugB,IAAI7gB,EAAEd,EAAE,GAAGy9V,IAAI5vW,EAAE/B,EAAEwoV,KAAKxoV,EAAE+/L,KAAK7rL,EAAElU,EAAEgV,EAAEuc,EAAE,CAAC,CAACvvB,EAAEkS,GAAGy9V,IAAI5vW,EAAEmS,EAAEs0U,KAAKt0U,EAAE6rL,KAAK7rL,EAAE,KAAK,KAAKqd,IAAG9rB,EAAE,IAAI08N,GAAIjuN,EAAEk7W,OAAQrtX,EAAEkzI,EAAK3/H,KAAKugB,IAAI,EAAE3hB,EAAE++T,KAAK/+T,EAAEnS,EAAEA,GAAG0D,EAAEzD,EAAEizI,EAAK3/H,KAAKugB,IAAI,EAAE9zB,EAAEA,EAAEA,EAAEC,GAAGkS,EAAE++T,KAAK/+T,EAAEA,EAAEqtL,KAAKrtL,IAAIzO,EAAEyO,EAAE+gI,EAAK3/H,KAAKugB,IAAI,EAAE3hB,EAAE++T,KAAKjxU,EAAED,EAAEwvB,GAAG9rB,EAAE8rB,EAAE0jH,EAAK3/H,KAAKugB,IAAI,EAAE9zB,EAAEwvB,EAAExvB,EAAEmS,GAAGA,EAAE++T,KAAKjxU,EAAEkS,EAAEqtL,KAAKv/L,IAAIkS,EAAEm7W,GAAG5pX,EAAE,CAG7+B,SAASiwT,IAAI1zT,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAA6D,IAA3DZ,EAAEurK,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,IAAIS,EAtqCtE,SAAa3S,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAA4B,OAA5Cq8L,MAAkB5xN,EAAEo4K,GAAGA,GAAG0iB,GAAGrgM,EAAE0S,EAAER,GAAG,IAAI,KAAS+sK,MAAM,IAAGl/K,EAAE49K,GAAGp4K,EAAEo2M,KAAKF,KAAK,KAAKlsL,EAAEvvB,EAAEqoB,EAAE43K,IAAI4I,MAAMkzF,MAAMjhQ,EAAE96B,EAAEqoB,EAAE43K,GAAGg8F,MAAal8R,EAAEC,IAAIuvB,IAAY,GAARhqB,EAAE05K,MAASnkJ,GAAqB,CAsqChHwyV,CAAIttX,EAAEkS,GAAGqd,EAAEvvB,EAAEqoB,EAAE43K,IAAI4I,MAAMmzF,MAAUh+R,EAAEoU,EAAEupM,KAAK39M,EAAEu9M,MAAwB,IAAjB93M,EAAEk6K,GAAG3/K,EAAEy9M,KAAK,MAAWlsL,KAAG9rB,EAAE8rB,EAAExvB,EAAEwvB,EAAErxB,QAAQ,GAAzB,CAAgH,OAA3E8U,EAAEvP,EAAEyO,EAAEqtL,MAAWzrL,GAANzS,EAAEoC,EAAE8rB,GAAMvxB,GAAIkU,GAAG4oB,EAAEz5B,EAAEzB,EAAEyB,EAAEkE,EAAEvF,EAAE86B,EAAE5oB,EAAE4oB,EAAEvL,GAAGzb,EAAE9T,GAAGuF,EAAElE,EAAEzB,EAAEyB,EAAEkE,EAAE2M,EAAE3M,EAAExF,EAAEwF,EAAEvF,GAAUkS,EAAES,GAAG,KAAK,EAAKlP,EAAEzD,GAAG8T,EAAEyb,GAAGvc,EAAEhT,EAAE8T,EAAE5B,GAAG,EAAEwuQ,GAAIr/Q,GAAG0yQ,KAAMG,OAAcvhQ,GAAG4c,GAAGzb,EAAEyb,GAAGzb,EAAE5B,EAAElS,EAAE6T,EAAE6sQ,GAAIr/Q,GAAG0yQ,KAAMI,QAAWrgQ,EAAEyb,EAAEvc,EAAEhT,EAAEA,EAAE6T,EAAE6sQ,GAAIr/Q,GAAG0yQ,KAAME,OAAMngQ,EAAE/T,GAAG+T,EAAE9T,EAAEA,EAAEiU,EAAE8jN,GAAI12N,GAAGizQ,KAAMI,MAAM,MAAM,KAAK,EAAKjxQ,EAAEzD,GAAG8T,EAAEyb,GAAGvc,EAAEhT,EAAE8T,EAAE5B,GAAG,EAAEwuQ,GAAIr/Q,GAAG0yQ,KAAMG,OAAcvhQ,GAAG4c,GAAGzb,EAAEyb,GAAGzb,EAAE5B,EAAElS,EAAE6T,EAAE6sQ,GAAIr/Q,GAAG0yQ,KAAMI,QAAWrgQ,EAAEyb,EAAEvc,EAAEhT,EAAEA,EAAE6T,EAAE6sQ,GAAIr/Q,GAAG0yQ,KAAME,OAAMngQ,EAAE/T,EAAEiT,EAAEd,EAAElS,EAAEiU,EAAE8jN,GAAI12N,GAAGizQ,KAAME,MAAM,MAAM,KAAK,EAAK/wQ,EAAEzD,GAAGD,EAAEC,EAAEmR,EAAE2C,EAAE9T,EAAE29K,GAAG0pB,GAAIhmM,EAAEtB,EAAE,GAAG,KAAKw/L,KAAKrtL,EAAE4B,EAAE/T,GAAGiT,EAAEd,EAAEnS,GAAG,EAAEg4N,GAAI12N,GAAGizQ,KAAMG,OAAc9hQ,GAAG4c,GAAGzb,EAAE/T,GAAG+T,EAAE9T,EAAEA,EAAEiU,EAAE8jN,GAAI12N,GAAGizQ,KAAMI,QAAW5gQ,EAAE/T,EAAEiT,EAAEd,EAAElS,EAAEiU,EAAE8jN,GAAI12N,GAAGizQ,KAAME,OAAM1gQ,EAAEyb,EAAEvc,EAAEhT,EAAEA,EAAE6T,EAAE6sQ,GAAIr/Q,GAAG0yQ,KAAME,MAAM,MAAM,KAAK,EAAKxwQ,EAAEzD,GAAGD,EAAEC,EAAEmR,EAAE2C,EAAE9T,EAAE29K,GAAG0pB,GAAIhmM,EAAEtB,EAAE,GAAG,KAAKw/L,KAAKrtL,EAAE4B,EAAE/T,GAAGiT,EAAEd,EAAEnS,GAAG,EAAEg4N,GAAI12N,GAAGizQ,KAAMG,OAAc9hQ,GAAG4c,GAAGzb,EAAE/T,GAAG+T,EAAE9T,EAAEA,EAAEiU,EAAE8jN,GAAI12N,GAAGizQ,KAAMI,QAAW5gQ,EAAE/T,EAAEiT,EAAEd,EAAElS,EAAEiU,EAAE8jN,GAAI12N,GAAGizQ,KAAME,OAAM1gQ,EAAEyb,GAAGzb,EAAE5B,EAAElS,EAAE6T,EAAE6sQ,GAAIr/Q,GAAG0yQ,KAAMI,MAAOxhQ,GAAE,CAA/zB,CAAq0B,CACv/B,SAASiuQ,IAAI5gR,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAIlU,EAAI,GAApCskN,MAAiD,GAAVnkB,GAAIgvH,KAAQ,CAAkC,IAAjCj7S,EAAEmqK,GAAGsvM,IAAI15L,IAAI,IAAI25L,IAAItvX,OAAO,EAAE,GAAOyU,EAAE,EAAEA,EAAEmB,EAAE5V,OAAOyU,IAAKmB,EAAEnB,IAAU,IAAIslP,GAAI,IAAc,IAAVl4P,EAAE,IAAIwkL,GAAQzpJ,EAAE,EAAEA,EAAE2yV,IAAIvvX,OAAO48B,IAAI,CAA6Y,GAA5Yz5B,EAAS,IAAI42P,GAAI,GAAOn9N,EAAE,IAAa88J,GAATn0L,EAAI,EAAFq3B,EAAa4yV,IAAIxvX,QAAb0B,EAAqB8tX,IAAIruW,WAAW5b,GAAOm0L,GAAIn0L,EAAE,EAAEiqX,IAAIxvX,QAA6BywT,IAAIttT,EAAEzB,EAA3B8tX,IAAIruW,WAAW5b,EAAE,KAA+BkrT,IAAIttT,EAAEssX,IAAjBlqX,EAAS,GAANq3B,EAAE,KAAmB6yV,IAAIlqX,EAAE,IAAa44N,GAATr+N,EAAEyvX,IAAI3yV,GAAS,aAAa6zR,IAAIttT,EAAE,MAAM,OAAUg7N,GAAIr+N,EAAE4vX,OAAMj/D,IAAIttT,EAAE,OAAO,SAASstT,IAAIttT,EAAE,QAAQ,UAAS6tL,GAAI6/H,IAAI/wT,EAAEqD,GAAG6tL,GAAI8/H,IAAIhxT,EAAEy0W,IAAIpxW,IAAiB,GAAb+Q,EAAErS,EAAEC,EAAE9B,QAAY6B,EAAEC,EAAED,EAAEC,EAAEyzD,OAAO,EAAE,GAAI,EAAErhD,IAAIrS,EAAEC,GAAG4oN,GAAI3qC,GAAGo3C,IAAGC,IAAI,IAAIljN,EAAE,GAAG,KAAKrS,EAAEC,GAAG,KAAQs/M,GAAIthN,EAAEozN,IAAI,MAAM,EAAG,IAAI7rN,EAAE,EAAEA,EAAEvH,EAAEE,OAAOqH,IAAKqyL,GAAIryL,EAAEvH,EAAEE,QAAyB,IAAjBF,EAAEqhB,WAAW9Z,IAAQi3L,GAAIz8L,GAAG63L,GAAIryL,EAAEvH,EAAEE,QAAQF,EAAEqhB,WAAW9Z,UAAWxF,EAAEC,GAAG,GAAGhC,EAAE8wT,IAAI/uT,EAAEC,EAAEhC,GAAE,EAAK,CAAC8wT,IAAI++D,IAAI,MAAK,GAAO/+D,IAAIg/D,IAAI,MAAK,GAA2Bn/D,IAArBp/R,EAAS,IAAI0oO,GAAI,GAAU,EAAE06G,KAAKzjL,GAAI6/H,IAAI,MAAMx/R,GAAG2/J,GAAI8/H,IAAI,MAAMyjD,IAAIljV,KAAKsxP,MAAMA,IAAI,IAAIruG,IAAK0c,GAAI2xF,IAAIgtG,IAAIA,MAAMhtG,MAAMA,IAAI,IAAIruG,IAAK0c,GAAI2xF,IAAIitG,IAAIA,MAAMjtG,MAAMA,IAAI,IAAIruG,IAAK0c,GAAI2xF,IAAI,MAAM,MAAM,CAA2C,OAAtCljG,GAAG2M,GAALp4K,EAAS68S,IAAmBC,IAAfhvT,GAAG,IAAgC,CACx/B,SAAS+tX,IAAI/tX,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAI8T,EAAEtB,EAAEmB,EAAkB,GAAhBb,GAAE,EAAMc,GAAE,EAASqtM,GAAIxjC,GAAG4qB,IAAIxoM,GAAGs9J,MAAMykI,MAAM,KAAK,CAACnvR,GAAE,EAAMlP,GAAE,EAAMwQ,EAAE,IAAI/T,EAAE,IAAIylK,GAAI5lK,EAAEqS,GAAGlS,EAAEF,EAAEE,EAAEqvB,EAAEA,EAAErxB,QAAyB,IAAhB0B,EAAE+9K,GAAGC,GAAI19K,GAAG,IAAQ8T,EAAEi3M,GAAG9kH,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,CAAC,IAAIxV,GAAI/oK,GAAG,IAAIipK,GAAIjpK,OAAOwrN,IAAGp3M,IAAoB,IAAIiuK,GAAIk6B,GAAG5T,IAAxB5qB,GAAGwtC,GAAGn3M,GAAG,IAAqBhW,EAAEs9W,OAAO,CAAC,GAAG17W,EAAEwS,IAAIqtK,MAAMM,KAAK,CAACptK,GAAE,EAAK,MAAMsB,CAAC,CAAC,GAAGrU,EAAEwS,GAAGy0L,IAAI,CAACpjM,GAAE,EAAK,MAAMwQ,CAAC,CAAC,CAAGjB,EAAEvP,IAAIkP,EAAEmB,EAAEnB,IAAIlP,CAAC,CAAC,GAAIuP,GAAIc,GAAiB,GAAd/T,EAAEmS,EAAEqd,EAAErxB,OAAwH2V,GAAGC,MAAjH,CAAK,IAAJzS,EAAE,EAAM+Q,EAAE,IAAIuzJ,GAAI5lK,EAAEmS,GAAGE,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAyBmD,IAAhBrD,EAAE2/K,GAAGC,GAAIxrK,GAAG,KAASxS,EAAEsS,EAAElU,EAAEkC,EAAEgS,EAAE,EAAkB2B,GAAhBxS,GAAGtB,EAAEmS,EAAEqd,EAAErxB,SAAY6B,EAAEG,EAAEgS,EAAE,CAAC,CAAc2B,GAAGnB,EAAEirK,GAAG4qB,IAAIxoM,GAAGioM,MAAMgmL,MAAM,KAA0Ch7W,EAAG8nB,EAAEpoB,GAAOnN,EAAEo4K,GAAG4qB,IAAIxoM,EAAEiyC,KAAK,KAAuDlX,EAAhBpoB,EAAEusK,MAAM15K,EAAE05K,KAAQvsK,EAAMnN,GAApDu1B,EAAE,IAAIw3I,GAAIy1B,GAAIhoM,EAAEiyC,IAAIlX,KAA1FA,EAAE,IAAIw3I,GAAIy1B,GAAIhoM,EAAEiuX,IAAIlzV,KAAgHv1B,EAAEo4K,GAAG4qB,IAAIxoM,GAAGioM,MAAMh2J,MAAM,KAA0Cl+B,EAAGgnB,EAAEv1B,GAAOmN,EAAEirK,GAAG4qB,IAAIxoM,EAAEiuX,KAAK,KAAuDlzV,EAAhBv1B,EAAE05K,MAAMvsK,EAAEusK,KAAQ15K,EAAMmN,GAApDooB,EAAE,IAAIw3I,GAAIy1B,GAAIhoM,EAAEiuX,IAAIlzV,KAA1FA,EAAE,IAAIw3I,GAAIy1B,GAAIhoM,EAAEiyC,IAAIlX,IAA2GA,EAAE+sL,GAAG7nN,GAAG+nM,GAAI/nM,GAAGgoM,MAAMusJ,KAAKhlU,GAAMrd,EAAEnS,GAAGwvB,GAAG6iO,GAAIlgP,EAAE,MAAMqd,EAAEhqB,EAAEgqB,EAAErxB,OAAOqxB,EAAE5c,EAAE4c,EAAErxB,QAAQ,GAAGq0P,GAAIhjO,EAAE,MAz/Dz6B,SAAavvB,GAAG,IAAIkS,EAAEqd,GAAErd,EAAEyrK,GAAG4qB,IAAIvoM,GAAGgoM,MAAM2qE,MAAM,OAAgB7iD,IAANvgM,EAAErd,EAAEqd,GAAQvvB,EAAEkS,GAAiB,GAAdqd,EAAEvvB,EAAEuvB,EAAErxB,QAAW4xN,GAAIyvB,GAAIrtO,GAAGA,EAAEqd,GAAG,CAy/Dm0B0+V,CAAI1+V,KAAQ8iO,GAAIngP,EAAE,MAAMqd,EAAEhqB,EAAEgqB,EAAErxB,OAAOqxB,EAAE5c,EAAE4c,EAAErxB,QAAQ,GAAGq0P,GAAIhjO,EAAE,OAAMkyK,GAAIvvL,EAAElS,EAAE,CAGz/B,SAASkuX,IAAIluX,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAEC,EAAEC,EAAEz7F,EAAE27F,EAA+H,IAA7HswG,IAAItyQ,EAAE,oBAAoB,GAAG3vB,EAAEsS,EAAEA,EAAE0X,EAAE1X,EAAElS,EAAEuxL,EAAE5T,GAAG4qB,IAAIr2L,GAAGmrJ,MAAM8wN,MAAM,IAAInuX,EAAEyD,EAAEk6K,GAAG4qB,IAAIr2L,EAAEk8W,KAAK,IAAIpuX,EAAEA,EAAEkS,EAAEouK,GAAIC,GAAGgoB,IAAIr2L,EAAEm0O,OAAOrmP,EAAED,EAAEu2K,IAAQjuJ,EAAE,IAAIs9I,GAAI/7I,GAAGvB,EAAEroB,EAAEqoB,EAAEkH,EAAEA,EAAErxB,SAAS2V,EAAE8pK,GAAGC,GAAIv1J,GAAG,KAAShnB,IAAI49P,MAAMgF,OAAe9yE,EAAEt9K,EAAE3T,EAAEgS,EAAElS,EAAED,EAAEkzI,EAAK3/H,KAAKsgB,IAAI5zB,EAAED,EAAEoxL,IAA8H,IAA3HnxL,EAAED,EAAEkzI,EAAK3/H,KAAKugB,IAAI,EAAE7zB,EAAED,GAAG6kC,EAAEhb,EAAE2F,EAAErxB,OAAO8B,EAAEuvB,EAAE0uJ,GAAGmV,IAAGsW,IAAI,GAAG9kK,EAAE,GAAG,GAAG5kC,EAAE86B,EAAEmjJ,GAAGmV,IAAGsW,IAAI,GAAG9kK,EAAE,GAAG,GAAG5kC,EAAEuF,EAAE04K,GAAGgV,IAAGwzD,IAAI,GAAG7hN,EAAE,GAAG,GAAGxyB,EAAE,EAAEpS,EAAEA,EAAE,EAAMmR,EAAE,IAAIw0J,GAAI/7I,GAAGzY,EAAEnR,EAAEmR,EAAEoe,EAAEA,EAAErxB,SAAS2V,EAAE8pK,GAAGC,GAAIzsK,GAAG,KAAM/N,EAAEgP,IAAIpS,EAAEuvB,EAAE1b,EAAEzQ,GAAGo6S,GAAItb,GAAIruR,IAAI7T,EAAE86B,EAAEjnB,EAAEzQ,GAAGo6S,GAAIpb,GAAIvuR,IAAI7T,EAAEuF,EAAEsO,EAAEzQ,GAAGyQ,EAAE3T,EAAEgS,EAAElS,EAAED,EAAEC,EAAEA,GAAGA,EAAEuF,EAAEsO,EAAEzQ,GAA8L,IAA3LpD,EAAEkS,GAAGlS,EAAED,EAAEC,EAAEA,GAAG4kC,EAAErhC,EAp4BllB,SAAavD,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAIoN,EAAElP,EAAmB,IAAjBA,EAAEqtN,GAAG9wN,EAAEuvB,EAAErxB,QAAYqH,EAAE,IAAIogK,GAAI3lK,GAAGuF,EAAEvF,EAAEuF,EAAEgqB,EAAEA,EAAErxB,QAAQ,CAAoC,IAAnC6B,EAAE49K,GAAGC,GAAIr4K,GAAG,IAAIoN,EAAE,IAAI8jK,GAAiBlnJ,EAAE,IAAIu/M,GAAG7hB,GAApBm1E,GAAIriS,GAAqBC,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG77L,KAAKrd,EAAEyrK,GAAGwtC,GAAG57L,GAAG,KAAMA,EAAEvxB,GAAGkU,EAAEnS,EAAE/B,GAAG2pL,GAAIh1K,EAAET,EAAEnS,EAAE/B,GAAGyF,EAAE8rB,EAAE9rB,EAAE8rB,EAAErxB,QAAQyU,CAAC,CAAC,OAAOlP,CAAC,CAo4B4W4qX,CAAIzkW,GAAGk7L,GAAIl7L,EAAEq3N,GAAI,IAAIp1E,GAAI7rK,KAAKoD,EAAEkzK,IAAIp2K,EAAEg4L,IAAIvlL,EAAE,KAAKijF,EAAE27F,EAAEF,EAAEE,EAAEz2J,EAAEr3B,EAAE8B,EAAE9B,EAAK8tL,EAAE,IAAG37F,EAAE+nF,GAAG0jF,IAAIrhQ,EAAEsuX,KAAK,IAAItuX,EAAEqxL,EAAE1T,GAAG0jF,IAAInvP,EAAEo8W,KAAK,IAAItuX,GAAKyD,EAAE,IAAGq3B,EAAE6iJ,GAAG2jF,IAAIthQ,EAAEsuX,KAAK,IAAItuX,EAAEuF,EAAEo4K,GAAG2jF,IAAIpvP,EAAEo8W,KAAK,IAAItuX,GAAMoxL,EAAEx7F,EAAEw7F,GAAGC,EAAED,IAAK,IAAIrxL,EAAE+6B,EAAE/6B,GAAGwF,EAAExF,IAAsB2S,EAAE4tK,GAAIC,IAAvB19I,EAAE+zU,IAAI52W,EAAEoxL,EAAErxL,EAAE6pB,EAAErmB,IAAcvD,IAAiBgU,GAAbhB,EAAE2qK,GAAG96I,EAAE3wB,EAAE,KAAQ+sK,MAAQvsK,EAAEtP,GAAGsP,GAAGtP,GAAG4Q,EAAE9T,KAAGkD,EAAEsP,EAAExS,EAAE8T,EAAErB,EAAEK,GAAI,IAAIc,EAAEnB,EAAEgpM,KAAK7nM,EAAEynM,MAAM,CAA8B,IAA7Bl6M,EAAEs8K,GAAG7pK,EAAE2nM,KAAK,IAAIz9M,EAAE,IAAIk7O,GAAIhnO,GAAO+B,EAAE5S,EAAEs6M,KAAK1nM,EAAEsnM,MAAuB+2C,GAAhBz+O,EAAE8pK,GAAG1pK,EAAEwnM,KAAK,IAAUz9M,GAAG4B,EAAE2vB,EAAE3vB,EAAE2vB,EAAErxB,QAAQF,CAAC,CAAC8yQ,IAAIlxQ,GAAGgqB,EAAE2F,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGokH,IAAIhzQ,EAAE,CAGhhC,SAASuxS,IAAI9gU,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAIsP,EAAEmB,EAAEI,EAAEoU,EAA0B,GAAxBjlB,EAAO,GAALpD,EAAEhC,EAAKiW,GAAE,EAAMvB,EAAE,KAAQ4uM,GAAIthN,EAAEuF,IAAa,IAATlE,EAAE6Q,EAAE+sK,MAAU,EAAE,CAAoF,IAAnFjsK,EAAE3R,EAAE,IAAI,KAAK,IAAIgnL,GAAIhnL,GAAgBnB,GAAbkS,EAAE,IAAI60R,GAAI/0R,IAAOS,EAAED,EAAEurK,GAAGmV,IAAGsW,IAAI,GAAGroM,EAAE,GAAG,GAAGtB,EAAE,EAAEsoB,EAAE,IAAIigK,GAAIjnL,GAAOkE,EAAE,EAAEA,EAAEvF,EAAEhC,IAAIuH,EAAE,CAAU3F,EAAT6D,EAAEzD,EAAE2S,EAAEpN,GAAO4L,EAAE,IAAI0C,EAAE,EAAEA,EAAE,IAAIA,EAAE,CAAC,IAAI7V,EAAEqD,IAAIrD,GAAG,GAAI,GAAM,MAAH4B,EAAQ0yL,GAAG1yL,EAAEM,EAAElC,IAAI+8M,GAAGn7M,KAAKm7M,GAAG76M,EAAElC,IAAI,CAAI0U,EAAExU,QAAQ6B,GAAuCujQ,IAAlC5wP,EAAwC,EAAtCA,EAAEurK,GAAGmV,IAAGsW,IAAI,GAAG,EAAEh3L,EAAExU,OAAO,GAAG,GAAa,EAAE6B,GAAG2S,EAAE3S,KAAKwF,EAAE0lL,GAAI5iK,EAAEnoB,EAAElC,IAAI,MAAMmT,CAAC,CAAM,GAAG4pM,GAAGn7M,KAAKm7M,GAAGt3M,GAAI,KAAM,CAAC,CAAwE,GAAvE2O,EAAEiW,EAAEnoB,EAAEmoB,EAAE1V,EAAEtR,EAAEtB,EAAKA,EAAE2S,EAAExU,QAAmColQ,IAAzB5wP,EAA+B,EAA7BA,EAAEurK,GAAGmV,IAAGsW,IAAI,GAAG3pM,EAAE,GAAG,GAAa,EAAEA,GAAMA,EAAE,EAAE,CAAQ,IAAPkU,GAAE,EAAS6mB,EAAE,EAAEA,EAAE/6B,IAAI+6B,EAAU9nB,EAAEgrN,GAAIh+N,EAAE29K,GAAf/9K,EAAEM,EAAE46B,GAAgB,IAAI9nB,GAAG,IAAIL,EAAE5S,IAAI4S,GAAG,GAAIqmT,IAAIh5T,EAAE0S,EAAEC,IAAI,GAAG5S,GAAGsB,EAAE,CAAC,IAAIkE,EAAElE,IAAIkE,GAAGxF,GAAIi5T,IAAI5mT,EAAE7M,GAA8B+9P,IAAzB5wP,EAA+B,EAA7BA,EAAEurK,GAAGmV,IAAGsW,IAAI,GAAG3pM,EAAE,GAAG,GAAa,EAAEA,EAAE,CAACmS,EAAEE,CAAC,CAAC,OAAkB,IAAXF,EAt6CvqB,SAAalS,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAE,GAAG2M,EAAEmvB,KAAM,OAAOyzL,KAAMA,KAAMC,IAA6B,IAApBxlM,EAAE,IAAIwpM,GAAI/4N,EAAEkS,EAAE+sK,MAAU15K,EAAE,IAAIw5K,GAAI/+K,GAAGuF,EAAEA,GAAGA,EAAEvH,EAAEihL,MAAOl/K,EAAEo/K,IAAI55K,GAAG2M,EAAE+tL,GAAGlgM,IAAIkrL,GAAI17J,EAAExvB,GAAG,OAAOwvB,CAAE,CAs6C6gBg/V,CAAIvuX,EAAEkS,GAAO3M,EAAEvF,EAAEhC,IAAIuH,GAAG,GAAO2M,EAAE+tL,GAAGjgM,EAAE2S,EAAEpN,MAAKyzT,IAAIh5T,EAAEuF,GAAG0O,GAAE,GAAO,GAAGA,EAAE,CAAC,GAAM,MAAHvB,EAAQ,CAA8F,IAApFoB,EAAK,IAAdyb,EAAErd,EAAE+sK,MAAY6yE,GAAI9xP,EAAE,EAAEkS,EAAEypM,KAAKF,KAAK,KAAK/oM,EAAE,GAAGtP,GAAG0uP,GAAI9xP,EAAE,EAAEkS,EAAEQ,EAAEA,EAAE,GAAGtP,GAAG4P,EAAEuc,EAAE,IAAI,KAAK,IAAI84J,GAAI94J,GAAOhqB,EAAE2M,EAAEypM,KAAKp2M,EAAEg2M,MAAgBvoM,EAAE6qN,GAAI79N,EAAE29K,GAAjB/9K,EAAE2F,EAAEk2M,KAAkB,IAAIzoM,GAAOA,GAAmBA,EAAEsrN,GAAGxqN,GAAGd,EAAEg5K,MAA1B/V,GAAIj2K,EAAEuF,EAAEuO,EAAuB,KAAK,CAAe,IAAdd,EAl1Ht7B,SAAahT,GAAG,OAAOA,EAAE,IAAI,KAAK,IAAIqoL,GAAIroL,EAAE,CAk1H44BwuX,CAAIt8W,EAAE+sK,MAAU15K,EAAE2M,EAAEypM,KAAKp2M,EAAEg2M,MAAgBvoM,EAAE6qN,GAAI79N,EAAE29K,GAAjB/9K,EAAE2F,EAAEk2M,KAAkB,IAAIzoM,GAAKA,GAAGA,EAAEg5K,IAAI,CAAC,OAAO,CAAI,CAAM,OAAO,CAAM,CACjiC,SAASyiM,IAAIzuX,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAIwD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAuD,KAArDsb,EAAE,IAAI4qS,IAAIjoT,IAAKlS,GAxazE,SAAaA,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAgI,OAA9Hv1B,EAAEo4K,GAAG0pB,GAAIrnM,EAAEA,EAAE,GAAG,IAAIkS,EAAE,IAAI6pT,IAAI/7T,GAAG+1K,GAAI/1K,EAAEA,EAAEkS,GAAGA,EAAEhS,EAAEF,EAAEizI,EAAK3/H,KAAKugB,IAAI,EAAEtuB,EAAErF,EAAEF,GAAGkS,EAAEhS,EAAEgS,EAAE+gI,EAAK3/H,KAAKugB,IAAI,EAAEtuB,EAAErF,EAAEgS,GAAGA,EAAEtS,EAAEI,EAAEuF,EAAE3F,EAAEI,EAAEkS,EAAEtS,EAAEsS,EAAE3M,EAAE3F,EAAEsS,EAASyrK,GAAG4qB,IAAIhjM,GAAGyiM,MAAMe,MAAM,IAAIp2L,GAAG,KAAK,EAAET,EAAEtS,EAAEI,GAAG,EAAE,MAAM,KAAK,EAAEkS,EAAEtS,EAAEsS,GAAG,EAAE,MAAM,KAAK,EAAEA,EAAEtS,EAAEI,GAAG,EAAE,MAAM,KAAK,EAAEkS,EAAEtS,EAAEsS,GAAG,EAAaqgP,GAAVxyP,EAAE,IAAIg5U,IAAU7mU,GAAiCmgP,GAA9B9iO,EAAE,IAAIs7N,GAAI/vN,EAAE6iJ,GAAG0pB,GAAI9hM,EAAE6M,EAAE,GAAG,KAAaggP,GAAI7iO,EAAExvB,GAAG8/K,GAAI69B,GAAI39M,EAAEH,GAAGk7B,EAAEl7B,GAAGigL,GAAI69B,GAAI39M,EAAEC,GAAG86B,EAAE96B,EAAW,CAwatT0uX,CAAIx8W,GAAGE,EAxhBnF,SAAapS,GAAG,IAAIkS,EAAInS,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAY,IAAVA,EAAE,IAAIqwQ,GAAQ5qQ,EAAE,IAAIkiK,GAAI3lK,EAAEA,GAAGyD,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAyB,IAAhByU,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAASpC,IAAI49P,MAAMC,KAAgC,IAAjBytF,IAAI3uV,EAAE2U,EAAE,IAAIi2K,IAAS9tJ,EAAE,IAAIg0M,GAAG7hB,GAAGm1E,GAAIzvR,GAAG3S,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGtwL,IAAoB,IAAfv1B,EAAEo4K,GAAGwtC,GAAGrwL,GAAG,KAASvL,EAAEvxB,EAAEqD,GAAG69P,KAAK35P,EAAExF,EAAE/B,EAAEqD,GAAG69P,IAAc,IAAIn/P,EAAE++P,IAAIv5P,EAAEvF,EAAE,GAAGD,EAAEmS,GAAGnS,EAAEA,EAAEwvB,GAAuB42M,IAAInoO,EAAE,IAAI2yM,IAAdz+L,EAAbyrK,GAAGohF,GAAIh/P,GAAG,IAAuBC,EAAEkS,EAAEA,IAAM,OAAOlU,CAAC,CAwhBvP2wX,CAAIz8W,GAAGlU,EAAE,IAAIi3N,GAAGjhN,EAAE,IAAIyqV,IAAQr7V,EAAE,IAAIuiK,GAAIzzJ,EAAElS,GAAGoD,EAAEpD,EAAEoD,EAAEmsB,EAAEA,EAAErxB,QAAyB,IAAIqH,EAAE,IAAIupO,GAAG7hB,GAAGm1E,GAA9BzkH,GAAGC,GAAIx6K,GAAG,KAA2BpD,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG7lN,KAAKxF,EAAE49K,GAAGwtC,GAAG5lN,GAAG,KAASgqB,EAAEvxB,EAAEqD,IAAI49P,MAAMC,MAAMn/P,EAAEA,EAAE/B,EAAEqD,GAAG69P,KAAoB01B,IAAG52R,EAAEq4T,KAApBh1T,EAAE4jX,IAAIjlX,EAAED,EAAEqS,EAAE4B,IAAcjU,GAAGsB,EAAErB,GAAe,IAAV2S,EAAE,IAAI2/J,GAAQr+J,EAAE0pK,GAAG4qB,IAAIh5K,EAAEA,GAAGy4K,MAAMoxG,MAAM,IAAIz9F,KAAK1nM,EAAEsnM,MAAM,CAAgE,OAA/D1nM,EAAE8pK,GAAG1pK,EAAEwnM,KAAK,IAAI77M,EAAEoU,EAAEub,EAAE1b,EAAElB,GAAGK,EAAEgB,EAAE9B,EAAE2B,EAAElB,GAAGlP,EAAEuQ,EAAEhU,EAAE6T,EAAElB,GAAGmoB,EAAE,KAAKpoB,EAAE,KAAYmB,EAAElB,GAAG,KAAK,EAAEmoB,EAAE,IAAIotK,GAAIloM,EAAED,EAAEC,EAAEJ,EAAEwS,EAAEF,EAAElS,EAAEA,EAAED,EAAEC,EAAEgT,EAAEpT,GAAG8S,EAAE,IAAIw1L,GAAIloM,EAAED,EAAEC,EAAEJ,EAAE6D,EAAEuP,EAAEpT,GAAGsmO,GAAI9zN,EAAE,IAAI6iM,GAAIn6K,EAAEvL,EAAEuL,EAAE5oB,EAAE4oB,EAAE/6B,IAAImmO,GAAI9zN,EAAE,IAAI6iM,GAAIn6K,EAAEvL,EAAEuL,EAAE5oB,EAAE4oB,EAAE/6B,EAAE+6B,EAAE96B,IAAI,MAAM,KAAK,EAAE86B,EAAE,IAAIotK,GAAI91L,EAAEpS,EAAEA,EAAEJ,EAAEI,EAAEuvB,EAAEvvB,EAAEoS,EAAEpS,EAAEA,EAAEgT,EAAEpT,GAAG8S,EAAE,IAAIw1L,GAAIloM,EAAEuvB,EAAEvvB,EAAEyD,EAAE7D,EAAE6D,EAAEuP,EAAEpT,GAAGsmO,GAAI9zN,EAAE,IAAI6iM,GAAIn6K,EAAEvL,EAAEuL,EAAE/6B,IAAImmO,GAAI9zN,EAAE,IAAI6iM,GAAIn6K,EAAEvL,EAAEuL,EAAE/6B,EAAE+6B,EAAE96B,IAAI,MAAM,KAAK,EAAE86B,EAAE,IAAIotK,GAAItoM,EAAEI,EAAED,EAAEmS,EAAEc,EAAEpT,EAAEwS,EAAEF,EAAEA,EAAElS,EAAED,EAAEmS,GAAGQ,EAAE,IAAIw1L,GAAItoM,EAAEI,EAAED,EAAEmS,EAAEc,EAAEpT,EAAE6D,GAAGyiO,GAAI9zN,EAAE,IAAI6iM,GAAIn6K,EAAEvL,EAAEuL,EAAE/6B,EAAE+6B,EAAE96B,IAAIkmO,GAAI9zN,EAAE,IAAI6iM,GAAIn6K,EAAEvL,EAAEuL,EAAE5oB,EAAE4oB,EAAE/6B,EAAE+6B,EAAE96B,IAAI,MAAM,KAAK,EAAE86B,EAAE,IAAIotK,GAAItoM,EAAEwS,EAAEpS,EAAEkS,EAAEc,EAAEpT,EAAEI,EAAEuvB,EAAErd,EAAEE,EAAEpS,EAAEkS,GAAGQ,EAAE,IAAIw1L,GAAItoM,EAAEI,EAAEuvB,EAAErd,EAAEzO,EAAEuP,EAAEpT,EAAE6D,GAAGyiO,GAAI9zN,EAAE,IAAI6iM,GAAIn6K,EAAEvL,EAAEuL,EAAE/6B,IAAImmO,GAAI9zN,EAAE,IAAI6iM,GAAIn6K,EAAEvL,EAAEuL,EAAE5oB,EAAE4oB,EAAE/6B,IAAQ+6B,KAAGhnB,EAAE,IAAIikK,IAAMh4K,EAAE8T,EAAEC,EAAE5B,EAAE4oB,EAAEhnB,EAAEyb,EAAE7c,EAAEoB,EAAE9T,EAAE8pP,GAAGnsE,GAAG0iB,GAAGriM,EAAEq4T,IAAIxiT,IAAI,KAAKlB,EAAE4c,EAAE5c,EAAE4c,EAAErxB,QAAQ4V,EAAE,CAA4B,OAA3B80O,GAAIr5N,EAAErd,EAAES,GAAG4c,EAAExvB,EAj7DphC,SAAaC,GAAG,IAAIkS,EAAoF,OAAlFA,EAAE,IAAIkiR,GAAIp0R,GAAGq+K,GAAIr+K,EAAEA,EAAE0uR,IAAI,IAAIpwG,GAAIC,GAAGC,GAAGC,IAAG,GAAGN,IAAI,IAAI,EAAE,CAACjsK,MAAQA,EAAEnS,GAAGg2K,GAAI7jK,EAAE4oB,EAAE5oB,EAAEnS,GAAUmS,EAAE4oB,CAAC,CAi7Do6B8zV,CA1KthC,SAAa5uX,GAAS,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAY,IAAlC4qR,KAAwB5qR,EAAE,IAAIi0K,GAAQnoJ,EAAE,IAAIo2I,GAAI3lK,GAAGuvB,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAASgU,EAAEyrK,GAAGC,GAAIruJ,GAAG,OAAO9rB,EAAEyO,GAAGA,EAAEqd,GAAG9rB,EAAEyO,EAAEqd,KAAK9rB,EAAEyO,EAAEA,KAAOzO,EAAE8rB,GAAGrd,EAAEqd,GAAG9rB,EAAE8rB,EAAEA,KAAG9rB,EAAE1D,EAAE0D,EAAE8rB,EAAE9rB,EAAE8rB,EAAErd,KAAIzO,EAAE8B,GAAG2M,EAAEnS,GAAG0D,EAAE8B,EAAExF,KAAK0D,EAAE8B,EAAE2M,KAAKzO,EAAEq3B,GAAG5oB,EAAEnS,GAAG0D,EAAEq3B,EAAE/6B,KAAK0D,EAAEq3B,EAAE5oB,GAA4Y,OAAzYnS,EAAE,IAAIu4T,KAAK30C,KAAME,MAAMxlG,GAAIr+K,EAAEuuR,IAAI,IAAIjwG,GAAIC,GAAGC,GAAGC,IAAG,GAAGN,IAAI,IAAI,EAAE,CAACp+K,MAAM4S,EAAE,IAAI2lT,IAAIx0C,KAAKzlG,GAAIr+K,EAAEsuR,IAAI,IAAIhwG,GAAIC,GAAGC,GAAGC,IAAG,GAAGN,IAAI,IAAI,EAAE,CAACxrK,MAAMpN,EAAE,IAAI+yT,IAAIv0C,KAAK1lG,GAAIr+K,EAAEyuR,IAAI,IAAInwG,GAAIC,GAAGC,GAAGC,IAAG,GAAGN,IAAI,IAAI,EAAE,CAAC54K,MAAMu1B,EAAE,IAAIw9R,IAAIt0C,KAAK3lG,GAAIr+K,EAAEwuR,IAAI,IAAIlwG,GAAIC,GAAGC,GAAGC,IAAG,GAAGN,IAAI,IAAI,EAAE,CAACrjJ,MAAMu5T,IAAIt0V,EAAEwvB,EAAEs0P,KAAKwwE,IAAI9uV,EAAEgqB,EAAEw0P,KAAKswE,IAAIv5T,EAAEvL,EAAEy0P,KAAKqwE,IAAI1hV,EAAE4c,EAAEu0P,KAAKrgR,EAAEzD,EAAEuvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGyqE,GAAInlP,EAAEzD,EAAED,EAAEwvB,GAAGq5N,GAAInlP,EAAEzD,EAAEqpN,GAAG9jN,EAAEgqB,IAAIq5N,GAAInlP,EAAEzD,EAAE86B,EAAEvL,GAAGq5N,GAAInlP,EAAEzD,EAAEqpN,GAAG12M,EAAE4c,IAAW9rB,CAAC,CA0K2aorX,CAAIz8W,IAAWmd,CAAC,CAC1iC,SAAS23V,IAAIlnX,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAIlU,EAAEM,EAAEkD,EAAE,GAAa,MAAVmsB,EAAEnsB,EAAE8O,EAAE9O,GAAT,CAA0BK,GAAE,EAAK8rB,EAAEnsB,EAAE8O,EAAE9O,GAAG,EAAEuP,EAAET,EAAE9O,EAAEmsB,EAAErvB,IAAI8wP,KAAMC,KAAK16E,IAAID,IAAI,GAAG/wK,EAAEvF,EAAEkS,EAAE3M,EAAEoN,EAAEvP,GAAG03B,EAAEnoB,EAAE4c,EAAEvvB,EAAEuvB,EAAErxB,OAAUqxB,EAAErvB,GAAG+wP,KAAK1rP,EAAE,GAAGgqB,EAAErvB,GAAGixP,KAAK5rP,EAAEu1B,EAAE,GAAG98B,EAAE,KAAO,KAAeA,EAAVuxB,EAAErvB,GAAGixP,IAAOxzE,GAAG0pB,GAAI10L,EAAE4c,EAAEvvB,EAAEuF,EAAE,GAAG,IAAQo4K,GAAG0pB,GAAI10L,EAAE4c,EAAEvvB,EAAEuF,EAAE,GAAG,IAAgB2hX,IAAIlnX,EAAfoS,EAAEmd,EAAE5c,EAAE3U,EAAEoF,GAAWmsB,GAAGnsB,EAAEpD,EAAEuF,EAAE2pE,GAAG9rE,EAAE8O,EAAES,GAAG4c,EAAEnd,EAAEF,EAAE9O,IAAI8O,IAAIqd,EAAEnd,EAAEF,EAAE9O,GAAGmsB,EAAEnd,EAAEA,EAAEhP,IAAOmsB,EAAEnd,EAAEF,EAAE9O,IAAImsB,EAAEnd,EAAEA,EAAEhP,IAAIlD,EAAE2lN,GAAI7lN,EAAED,EAAE4S,EAAE3U,GAAMuxB,EAAErvB,GAAGixP,KAAKpxP,EAAEugL,GAAI/wJ,EAAEnsB,EAAE8O,EAAE9O,IAAI0Q,EAAEwsK,GAAI/wJ,EAAEnsB,EAAEgP,EAAEhP,IAAIk9K,GAAI/wJ,EAAExvB,EAAE/B,EAAEoF,IAAIpF,EAAE+B,EAAEA,EAAEG,EAAEyS,EAAE5S,EAAEC,EAAE2S,EAAEzS,EAAEgS,EAAEouK,GAAI/wJ,EAAExvB,EAAE4S,EAAEvP,IAAOK,GAAGA,GAAE,EAAM8rB,EAAEnsB,EAAE8O,EAAE9O,GAAG6vI,EAAK3/H,KAAKsgB,IAAI9f,EAAE1Q,IAAQmsB,EAAEnsB,EAAE8O,EAAE9O,GAAG6vI,EAAK3/H,KAAKsgB,IAAI7zB,EAAEkzI,EAAK3/H,KAAKsgB,IAAI9f,EAAE1Q,MAAUrD,EAAEugL,GAAI/wJ,EAAEnsB,EAAE8O,EAAE9O,IAAI0Q,EAAEwsK,GAAI/wJ,EAAEnsB,EAAEgP,EAAEhP,IAAIk9K,GAAI/wJ,EAAExvB,EAAE/B,EAAEoF,IAAIpF,EAAEkC,EAAEgS,EAAElU,EAAE+B,EAAEC,EAAEE,EAAEyS,EAAE5S,EAAEA,EAAEugL,GAAI/wJ,EAAExvB,EAAE4S,EAAEvP,IAAOK,GAAGA,GAAE,EAAM8rB,EAAEnsB,EAAE8O,EAAE9O,GAAG6vI,EAAK3/H,KAAKugB,IAAI/f,EAAE1Q,IAAQmsB,EAAEnsB,EAAE8O,EAAE9O,GAAG6vI,EAAK3/H,KAAKugB,IAAI9zB,EAAEkzI,EAAK3/H,KAAKugB,IAAI/f,EAAE1Q,OAAWlD,EAAEogL,GAAIC,GAAGgoB,IAAIvoM,EAAEA,GAAGq9J,MAAM6tJ,QAAQtrT,EAAEkjS,GAAI9iS,EAAEuvB,EAAEnd,EAAEF,EAAE9O,IAAI/B,EAAEyhS,GAAI9iS,EAAEuvB,EAAEnd,EAAEA,EAAEhP,IAAOmsB,EAAErvB,GAAGixP,IAAqF4E,GAAIn2P,EAAEyB,EAApFi/K,GAAI/wJ,EAAEnsB,EAAE8O,EAAE9O,IAAIk9K,GAAI/wJ,EAAExvB,EAAE4S,EAAEvP,IAAIuP,EAAEzS,EAAEgS,EAAES,EAAE5S,EAAEC,EAAEE,GAAGogL,GAAI/wJ,EAAEnsB,EAAEgP,EAAEhP,IAAIk9K,GAAI/wJ,EAAExvB,EAAE/B,EAAEoF,IAAIpF,EAAE+B,EAAEA,IAAiGg2P,GAAIn2P,EAAEyB,EAAlFi/K,GAAI/wJ,EAAEnsB,EAAE8O,EAAE9O,IAAIk9K,GAAI/wJ,EAAExvB,EAAE4S,EAAEvP,IAAIuP,EAAE5S,EAAEA,EAAEugL,GAAI/wJ,EAAEnsB,EAAEgP,EAAEhP,IAAIk9K,GAAI/wJ,EAAExvB,EAAE/B,EAAEoF,IAAIpF,EAAEkC,EAAEgS,EAAElU,EAAE+B,EAAEC,EAAEE,KAAoBkD,EAAEpD,EAAEuF,EAAE2pE,GAAG9rE,EAAE8O,EAAES,GAAGA,EAAE4c,EAAEvvB,EAAE2S,EAAEvP,SAASuP,GAAGT,IA94JhiC,SAAalS,EAAEkS,GAAGy1K,GAAI3nL,EAAEkS,EAAEA,EAAE,CA84JugC48W,CAAI9uX,EAAEuF,EAAE2M,EAAh+B,CAAk+B,CAG7iC,SAAS48U,IAAI9uV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAE,GAAG4sL,GAAI5gM,EAAEA,EAAEkS,IAAI,GAAGuuL,GAAI9iB,GAAG+5B,GAAI13M,EAAEA,EAAEkS,GAAG,IAAIqd,GAAI,OAAO,OAAQonK,GAAI32L,EAAEA,EAAEkS,EAAE,IAAIukK,IAAK,GAAGmqB,GAAI5gM,EAAEA,EAAEuvB,IAAI,GAAGkxK,GAAI9iB,GAAG+5B,GAAI13M,EAAEA,EAAEuvB,GAAG,IAAIrd,GAAI,OAAQ,OAAQykL,GAAI32L,EAAEA,EAAEuvB,EAAE,IAAIknJ,IAAK,GAAGmqB,GAAI5gM,EAAEuF,EAAE2M,IAAI,GAAGuuL,GAAI9iB,GAAG+5B,GAAI13M,EAAEuF,EAAE2M,GAAG,IAAIqd,GAAI,OAAQ,OAAQonK,GAAI32L,EAAEuF,EAAE2M,EAAE,IAAIukK,IAAK,GAAGmqB,GAAI5gM,EAAEuF,EAAEgqB,IAAI,GAAGkxK,GAAI9iB,GAAG+5B,GAAI13M,EAAEA,EAAEuvB,GAAG,IAAIrd,GAAI,OAAO,OAAQykL,GAAI32L,EAAEuF,EAAEgqB,EAAE,IAAIknJ,IAAK,GAAGz2K,EAAEuvB,IAAIkqP,KAAMI,OAAOrnD,GAAItgN,GAAG81L,MAAM6oC,QAAQre,GAAIjjM,GAAGy4K,MAAM6oC,MAAM,CAAuJ,GAAtJ7yO,EAAE2/K,GAAG+wC,GAAIk4C,GAAIgM,GAAIzoD,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAIr7L,EAAEE,EAAE,KAAK,IAAIo1I,KAAM,IAAIC,KAAM,IAAIpmJ,EAAEs8K,GAAG+wC,GAAIk4C,GAAIgM,GAAIzoD,GAAI,IAAIC,GAAI,KAAK,IAAI7c,GAAIh+K,EAAEnd,EAAE,KAAK,IAAIs1I,KAAM,IAAIC,KAAM,IAAS3pJ,GAAKqD,EAAE,CAAa,GAAZoC,EAAEzF,EAAEA,EAAEoU,EAAE/Q,EAAErD,EAAOyF,GAAGA,GAAG2O,EAAE,CAAC,IAAIY,EAAE,IAAI2yJ,GAAIliK,EAAE2O,GAAGY,EAAEhT,EAAEgT,EAAEuc,EAAEA,EAAErxB,QAAQ,CAAiB,IAAhB4V,EAAE6pK,GAAGC,GAAI5qK,GAAG,MAAUhV,EAAc,OAAX6oW,IAAI7mW,EAAEuvB,EAAErd,IAAW,EAAO,GAAG4B,GAAGzS,EAAc,OAAXwlW,IAAI7mW,EAAEkS,EAAEqd,GAAU,CAAE,CAAC,OAAOswL,GAAIotH,IAAIjtU,EAAEkS,GAAG+6T,IAAIjtU,EAAEuvB,GAAG,CAAC,IAAUnsB,EAAE,EAAE4Q,GAAV9T,EAAEF,EAAED,GAAU7B,OAAOkF,EAAE4Q,IAAI5Q,EAAE,CAAQ,IAAPxD,EAAEM,EAAEkD,KAASK,EAAc,OAAXojW,IAAI7mW,EAAEuvB,EAAErd,IAAW,EAAO,GAAGtS,GAAGwS,EAAc,OAAXy0V,IAAI7mW,EAAEkS,EAAEqd,GAAU,CAAE,CAAC,CAAC,IAAIijM,GAAItgN,GAAG81L,MAAM6oC,QAAQre,GAAIjjM,EAAEshN,KAAsD,OAAhDtrO,EAAE0nU,IAAIjtU,EAAEkS,KAAGS,EAAEs6T,IAAIjtU,EAAEuvB,IAAOs3U,IAAI7mW,EAAEkS,EAAEqd,GAAGs3U,IAAI7mW,EAAEuvB,EAAErd,GAAU3M,EAAEoN,GAAG,EAAEpN,EAAEoN,EAAE,EAAE,CAAE,CAA+E,OAA9E5S,EAAE49K,GAAG4qB,IAAIr2L,GAAG81L,MAAM6oC,MAAM,IAAI7wO,IAAE86B,EAAE6iJ,GAAG4qB,IAAIh5K,EAAEshN,KAAK,IAAI7wO,GAAM6mW,IAAI7mW,EAAEkS,EAAEqd,GAAGs3U,IAAI7mW,EAAEuvB,EAAErd,GAAUnS,EAAE+6B,GAAG,EAAE/6B,EAAE+6B,EAAE,EAAE,CAAC,CACzjC,SAASi0V,IAAI/uX,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAI3U,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAI8T,EAAIH,EAAE,GAAGouK,GAAIk6B,GAAG7D,IAAIpmM,GAAG6tJ,MAAMivN,QAAS,OAAO/nK,KAAMA,KAAM+Y,IAAoE,GAAhE5tN,EAA2C,KAAvCF,EAAElS,IAAIkS,EAAElS,EAAE,IAAIs6L,GAAI/M,IAAGr7K,EAAE,GAAG,KAAKA,EAAElS,GAAGhC,EAAK8V,EAr8B5J,SAAa9T,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,GAAGkiL,GAAIk6B,GAAG7D,IAAIt4M,GAAG+/J,MAAMopN,QAAQ,CAAW,IAAVppX,EAAE,IAAIuyK,GAAQ/iJ,EAAE,IAAIu/M,GAAG7hB,GAAG+oF,IAAIh2S,GAAGA,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAG77L,IAAoBihT,IAAft+T,EAAEyrK,GAAGwtC,GAAG57L,GAAG,MAAY0yJ,GAAIk6B,GAAG7D,IAAIpmM,EAAE+8W,SAASlvX,EAAEwvB,EAAExvB,EAAEwvB,EAAErxB,QAAQgU,GAAQ,OAAOnS,CAAC,CAAM,OAAOknN,KAAMA,KAAM+Y,GAAI,CAq8B/DkvJ,CAAIh9W,GAAG7Q,GAAGyS,EAAEutB,KAAQjvB,GAAG/Q,EAAE,CAAsB,KAArBkE,EAAEo4K,GAAG26B,IAAIpmM,EAAEm5R,KAAK,MAAY,MAAMn4H,GAAI,IAAI5zE,GAAI,4FAAwH,GAA5BzrF,EAAE+gM,GAAIrvM,GAAGykS,MAAMG,MAAM4oB,IAAI7gT,IAAOE,GAAG/Q,IAAIwS,EAAG,OAAOozM,KAAMA,KAAM+Y,IAAc,GAAVhiO,EAAE,IAAIs0K,GAAOyoC,GAAGzC,IAAIpmM,EAAE8gT,QAAQj4G,IAAIqjE,KAAMG,QAAQ3pE,GAAIrvM,EAAEglS,MAAM31F,GAAIrvM,EAAEilS,MAAwE,IAAjE5qS,EAAE+kW,IAAI3kW,EAAEkS,GAAaqnL,GAAVr5L,EAAE,IAAIu5K,KAAWvnK,EAAElS,IAAIkS,EAAElS,EAAE,IAAIs6L,GAAI/M,IAAGr7K,EAAE,GAAG,KAAKA,EAAElS,IAAe,GAALE,EAAEgS,GAAsD6gT,IAAhD//S,EAAE2qK,GAAQ,GAALz9K,EAAEgS,EAAK,MAAMo3M,GAAS,GAALppN,EAAEgS,GAAMkyN,GAAIlkO,EAAEA,EAAEF,EAAEA,IAAI,KAAa+6M,GAAGzC,IAAItlM,EAAEggT,QAAQj4G,GAAGyjE,MAAWpmE,GAAIplM,EAAEijW,OAAOrnG,GAAIrpQ,EAAE+yM,IAAItlM,EAAEq4R,OAAsBziD,GAAI5qP,EAAjB+wX,IAAI/uX,EAAEgT,EAAEuc,EAAExvB,IAAYqrS,IAAIp4R,EAAEggT,IAAIx0C,KAAKsrF,IAAI92V,IAAQumL,GAAGr5L,IAAI8S,EAAEhT,IAAIgT,EAAEhT,EAAE,IAAIs6L,GAAI/M,IAAGv6K,EAAE,GAAG,KAAKA,EAAEhT,SAAqD,IAA1CJ,IAAIsS,EAAElS,IAAIkS,EAAElS,EAAE,IAAIs6L,GAAI/M,IAAGr7K,EAAE,GAAG,KAAKA,EAAElS,GAAGhC,EAAM2U,EAAE,IAAIosK,KAAM7sK,EAAElS,IAAIkS,EAAElS,EAAE,IAAIs6L,GAAI/M,IAAGr7K,EAAE,GAAG,KAAKA,EAAElS,IAAI2S,EAAEpN,GAAGoN,EAAE3U,EAAEihL,MAAsC2pE,GAAI5qP,EAAjB+wX,IAAI/uX,EAAtB86B,EAAE6iJ,GAAGwB,IAAIxsK,GAAG,IAAc4c,EAAExvB,IAAY+pW,IAAIhvU,GAAI,IAAI9mB,EAAE,IAAI2xJ,GAAI3nK,GAAGgW,EAAEhU,EAAEgU,EAAEub,EAAEA,EAAErxB,QAAyBktS,IAAdztH,GAAGC,GAAI5pK,GAAG,IAAUg7W,KAAKthK,MAAM,IAAgC,OAAzBumG,IAAI/hT,EAAE3M,EAAE2gS,GAAInmS,EAAEH,IA/al/B,SAAaI,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAE,IAAI2U,EAAE,IAAIgzJ,GAAI3lK,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAQ,CAAiL,IAAhL48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,IAA6DlP,GAAzD1D,EAAEirN,IAAIrtC,GAAG0O,KAAMvxJ,EAAE5oB,IAAI4oB,EAAE5oB,EAAE,IAAI64M,GAAI19B,IAAGvyJ,EAAE,EAAE,IAAIA,EAAE5oB,GAAG,GAAG,MAASlU,EAAEA,EAAE+B,EAAEqS,EAAuD0sK,GAArDv5K,EAAEo4K,GAAG0O,KAAMvxJ,EAAE96B,IAAI86B,EAAE96B,EAAE,IAAIs6L,GAAInM,IAAGrzJ,EAAE,EAAE,IAAIA,EAAE96B,GAAG,GAAG,KAAWuF,EAAE6M,EAAE3O,EAAE8B,EAAElE,EAAErD,GAAGohL,GAAI75K,EAAEA,EAAE2M,EAAEzO,EAAE8B,EAAEgqB,EAAEvxB,GAAOuxB,EAAE,IAAIwvJ,KAAMx5K,EAAEvF,IAAIuF,EAAEvF,EAAE,IAAIg/K,GAAI7qJ,IAAG5uB,EAAE,IAAIA,EAAEvF,IAAIuvB,EAAEhqB,GAAGgqB,EAAEvxB,EAAEihL,MAAwBC,GAAjBhtK,EAAEyrK,GAAGwB,IAAI5vJ,GAAG,KAAWrd,EAAElS,EAAEyD,EAAEyO,EAAEA,EAAElU,GAAG2mS,GAAIhnH,GAAG26B,IAAIx9K,GAAGilI,MAAMs4C,MAAM,IAAI50M,EAAEzF,EAAE,CAAC,CA+asnBmxX,CAAInxX,GAAUqD,GAAGwS,EAAEC,GAAGmzM,KAAMA,KAAM+Y,IAAI,CAAM,OAAO/Y,KAAMA,KAAM+Y,GAAI,CACzjC,SAASw5I,IAAIx5W,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,GAAG,IAAIoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAuS,OAArSxD,EAAE2vB,EAAe4zI,GAAb9hK,EAAE,IAAI06T,IAAI/9T,IAAUihQ,MAAMC,MAAMn3D,GAAI1mM,GAAG2mM,MAAMq+K,KAAK1zW,GAAGo1L,GAAI1mM,GAAGg8J,MAAMykI,MAAMxM,MAAMt4D,MAAM55N,EAAEk9K,GAAIC,GAAGvgL,EAAEgmM,GAAGyrK,OAAO1pK,GAAI1mM,EAAEowW,IAAIruW,GAAamvP,GAAVz+O,EAAE,IAAIilU,IAAU13U,GAAQ6Q,GAAGkvM,KAAKlvM,GAAGmvM,MAAYzhN,EAANG,GAAG,EAAKgqT,GAAItmT,GAAOygT,GAAI6F,GAAItmT,IAAKzD,EAAEs0T,GAAGqyB,IAAI/mV,IAAGwS,EAAE,IAAIw2K,GAAI51K,GAAE,EAAShT,EAAE8lM,GAAG2zJ,MAAM3mI,GAAI1gN,EAAEurK,GAAG39K,EAAEgmM,GAAGyzJ,KAAK,IAAIzmV,GAAE,GAnnI1T,SAAahT,EAAEkS,EAAEqd,GAAGvvB,EAAEA,EAAEkS,EAAElS,EAAEkS,EAAEqd,CAAU,CAmnI4R6/V,CAAIh9W,EAAEO,EAAE3S,EAAE,EAAE2S,EAAET,EAAE,GAAUtS,EAAE+S,GAAG,KAAK,EAAEo1L,GAAI1mM,EAAE0qS,KAAKvb,KAAMI,MAAM7oF,GAAI1mM,EAAE2qS,KAAKj1B,KAAMI,MAAM91Q,EAAEnB,EAAEgS,EAAES,EAAET,EAAE9O,EAAE,IAAI/B,EAAEnB,EAAEF,GAAGoD,GAAGu7P,IAAI7qP,GAAG2rK,MAAMC,MAAM1sK,IAAIZ,EAAEpS,EAAE2S,EAAE3S,GAAGoS,EAAEpS,GAAG2S,EAAE3S,EAAE,MAAM,KAAK,EAAE+nM,GAAI1mM,EAAE0qS,KAAKvb,KAAMM,MAAM/oF,GAAI1mM,EAAE2qS,KAAKj1B,KAAMG,MAAM71Q,EAAEnB,EAAEgS,EAAES,EAAET,EAAE9O,EAAE,IAAI/B,EAAEnB,EAAEF,GAAGoD,GAAGu7P,IAAI7qP,GAAG2rK,MAAMG,MAAM5sK,IAAIZ,EAAEpS,EAAE,GAAG,MAAM,KAAK,EAAE+nM,GAAI1mM,EAAEoiT,KAAK5rC,KAAMG,MAAM32Q,EAAEnB,EAAEF,EAAE2S,EAAE3S,EAAEoD,EAAE,IAAI/B,EAAEnB,EAAEgS,GAAG9O,GAAGu7P,IAAI7qP,GAAG2rK,MAAMonB,MAAM7zL,IAAIZ,EAAEF,EAAES,EAAET,GAAGE,EAAEF,GAAGS,EAAET,EAAE,MAAM,KAAK,EAAE61L,GAAI1mM,EAAEoiT,KAAK5rC,KAAMI,MAAM52Q,EAAEnB,EAAEF,EAAE2S,EAAE3S,EAAEoD,EAAE,IAAI/B,EAAEnB,EAAEgS,GAAG9O,GAAGu7P,IAAI7qP,GAAG2rK,MAAMM,MAAM/sK,IAAIZ,EAAEF,EAAE,GAA4B,GAAxB4gN,GAAIh/M,EAAElU,EAAEwS,GAAG21L,GAAI1mM,EAAEo4V,IAAIrnV,GAAMF,GAAG4qN,KAAK5qN,GAAG6qN,KAAK7qN,GAAG8qN,IAAI,CAAK,GAAJ98N,EAAE,EAAKgS,GAAG4qN,KAAK98N,EAAE8lM,GAAG+4D,KAAM,OAAOj/P,EAAE+S,GAAG,KAAK,EAAE,KAAK,EAAEzS,EAAEy9K,GAAG39K,EAAEgmM,GAAG64D,KAAK,IAAI7+P,EAAE,MAAM,KAAK,EAAE,KAAK,EAAEE,GAAGy9K,GAAG39K,EAAEgmM,GAAG64D,KAAK,IAAI7+P,OAAS,OAAOJ,EAAE+S,GAAG,KAAK,EAAE,KAAK,EAAEzS,EAAE46B,EAAE5oB,EAAEA,GAAG6qN,MAAM78N,GAAGqF,EAAE2M,GAAG,MAAM,KAAK,EAAE,KAAK,EAAEhS,EAAE46B,EAAE96B,EAAEkS,GAAG6qN,MAAM78N,GAAGqF,EAAEvF,GAAK+nM,GAAI1mM,EAAEkgW,IAAIrhW,EAAE,CAAc,OAAb6nM,GAAI1mM,EAAE0nM,IAAInpM,GAAUyB,CAAC,CAQ/jC,SAASykX,IAAI9lX,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAkE,IAAhEkU,GAAE,EAAM1B,EAAEpS,EAAE,EAAKy9M,GAAIz9M,EAAEkS,EAAEqd,EAAErxB,QAAwByU,GAArCtR,EAAqBs8K,GAAGzrK,EAAEqd,EAAEvvB,GAAG,MAAUA,EAAEyD,EAAE,KAASq3B,EAAE,EAAEA,EAAEz5B,EAAErB,EAAEuvB,EAAErxB,OAAO48B,IAA0C,GAAlC2iL,GAAI3iL,EAAEnoB,EAAE4c,EAAErxB,UAAbqH,EAAqBo4K,GAAGhrK,EAAE4c,EAAEuL,GAAG,MAAWvL,EAAY,GAAiB,GAAdhqB,EAAE2M,EAAEqd,EAAErxB,OAAT,CAA8W,GAAnTqH,EAAElE,IAAKoC,GAAG69T,IAAI79T,GAAmCmrT,IAAIrpT,GAApC9B,EAAE,IAAIgsP,GAAKhsP,EAAIA,EAAE8B,EAAE9B,EAAE1D,EAAEA,EAAV,EAAYsB,EAAEy5B,EAAE/6B,IAAWwF,EAAE9B,EAAE1D,EAAEsB,EAAEy5B,GAAGi7I,GAAI10K,EAAEtB,EAAE0D,GAAG4jS,GAAI5jS,EAAE8B,GAAGA,EAAElE,GAAE,GAAKrD,EAAE,KAAQ4B,EAAE,KAAKk7B,EAAEz5B,EAAErB,EAAEuvB,EAAErxB,OAAO,EAAG0B,EAAE+9K,GAAG0pB,GAAIhmM,EAAErB,EAAE86B,EAAE,GAAG,KAAM1oB,EAAEF,EAAEqd,EAAErxB,QAAuD,IAA9Cu/M,GAAIrrM,EAAEF,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAEnd,GAAG,MAAMpS,EAAEuvB,EAAErxB,SAAY0B,EAAE+9K,GAAG0pB,IAAKoW,GAAIrrM,EAAEF,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAEnd,GAAG,MAAMpS,EAAE,GAAG,MAASgT,GAAE,GAAjLhV,EAA4K4B,KAAiBoT,GAAGs/K,GAAGt0L,EAAEoU,EAAE/Q,IAAOrD,EAAE,CAAC,GAAiB,GAAdA,EAAEkU,EAAEqd,EAAErxB,OAAU,CAAC8pU,IAAI3mU,EAAErD,GAAG,KAAK,CAA+C,GAAzCmjR,GAAI57Q,EAAEgqB,EAAEhqB,EAAEsO,GAAGytT,IAAI/7T,EAAEyO,GAAGF,GAAI4iU,IAAIr1U,EAAEkE,EAAEvH,EAAEuxB,EAAExvB,GAAoB,GAAd/B,EAAEkU,EAAEqd,EAAErxB,OAA4D,IAAjD8pU,KAAKvqH,GAAIrrM,EAAEF,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAEnd,GAAG,MAAMpU,GAAGA,EAAE,KAAWkU,EAAEqd,EAAErxB,OAAOkU,GAAkD,IAA9CqrM,GAAIrrM,EAAEF,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAEnd,GAAG,MAAMpS,EAAEuvB,EAAErxB,QAAW4xN,GAAI59M,GAAGurM,GAAIrrM,EAAEF,EAAEqd,EAAErxB,QAAQgU,EAAEqd,EAAEnd,KAAM,IAAIpU,EAAE,GAAG88B,EAAE,QAAQ,CAAC,GAAGgzU,IAAI57V,EAAE7Q,EAAEkE,EAAEvH,EAAEgV,EAAEuc,EAAEnd,EAAErS,GAAG,CAAC+T,GAAE,EAAK,QAAQ,CAAC,GAAGd,EAAE,CAAC,GAAGwkW,IAAItlW,EAAE7Q,EAAEkE,EAAEvH,EAAEuxB,EAAEnd,EAAErS,GAAG,CAAC+T,GAAE,EAAK,QAAQ,CAAM,GAAGgrS,GAAIz9S,EAAEkE,GAAG,CAACA,EAAEgqB,GAAE,EAAKzb,GAAE,EAAK,QAAQ,CAAC,MAAM,GAAGgrS,GAAIz9S,EAAEkE,GAAG,CAACA,EAAEgqB,GAAE,EAAKzb,GAAE,EAAK,QAAQ,CAAC,GAAGA,EAAG,QAAS,CAAIgrS,GAAIz9S,EAAEkE,IAAIA,EAAEgqB,GAAE,EAAKzb,GAAE,EAAO9V,IAAIA,EAAEqD,GAAE,IAAqBigU,IAAI/7T,EAAEyO,EAAh1B,MAAlC2rL,KAAMqoI,IAAI3mU,EAAEkE,KAAKu1B,EAAEhnB,GAAE,EAAi2B,OAAOA,CAAC,CACllC,SAAS8oW,IAAI58W,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,GAAG,IAAIlP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAEC,EAAEC,EAAEz7F,EAAE27F,EAAU,IAARnuL,EAAE,EAAE+tL,EAAE,EAAM/+K,EAAE,IAAIuzJ,GAAI3lK,EAAEkS,GAAGE,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,SAASF,EAAE2/K,GAAGC,GAAIxrK,GAAG,MAASmd,GAAGq1V,IAAI5mX,EAAEuxB,GAAGnsB,EAAE6vI,EAAK3/H,KAAKugB,IAAIzwB,EAAEwY,GAAI5d,IAAImzL,GAAGv1K,GAAI5d,GAAGysO,GAAIzsO,GAA4L,IAAzLgW,EAAEm9K,EAAEnxL,EAAEkS,EAAEqd,EAAErxB,OAAO2kC,EAt1C3N,SAAa7iC,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAI+6B,EAAM,IAAJA,EAAE,EAAM/6B,EAAE,IAAI4lK,GAAI3lK,GAAGD,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAASqxB,EAAEouJ,GAAGC,GAAI79K,GAAG,KAAK+6B,GAAGm4G,EAAK3/H,KAAKyd,IAAInV,GAAI2T,GAAGk7M,GAAIl7M,GAAGrd,EAAE,GAAsC,OAAjC+gI,EAAK3/H,KAAKuc,KAAKiL,GAAG96B,EAAEuvB,EAAErxB,OAAO,GAAY,CAs1CuDmxX,CAAIrvX,EAAEkS,EAAE8B,GAAGm9K,GAAGnxL,EAAEkS,EAAEqd,EAAErxB,OAAO2kC,EAAEz/B,EAAE6vI,EAAK3/H,KAAKugB,IAAIzwB,EAAE6vI,EAAK3/H,KAAKuc,KAAKshK,EAAEx+K,IAAI4c,EAAErd,EAAE0jF,EAAErmE,EAAErd,EAAEq/K,EAAEhiK,EAAExvB,EAAEH,EAAE,EAAEkU,EAAEyb,EAAErd,EAAEqd,EAAEA,EAAYq2M,GAAVhhM,EAAE,IAAI60I,GAAUu+B,GAAI,IAAIz0M,EAAE,IAAIk2K,GAAIp4K,EAAE,IAAIkoN,GAAIvpN,EAAEkS,EAAE,GAAGhS,EAAE,KAAKuD,EAAE,IAAI6uK,GAAUjxK,EAAE6Q,EAAE7Q,EAAEtB,EAAEk/K,MAASqqC,GAAIjoN,EAAE6Q,EAAE7Q,EAAEtB,EAAEk/K,MAAiCoS,EAAEz1K,GAAlD5d,EAAqB2/K,GAAGt8K,EAAEtB,EAAEs7M,GAAGh6M,EAAEkuB,EAAEluB,EAAE6Q,KAAK,MAAec,EAAEy3N,GAAIzsO,GAAM43F,EAAEy7F,EAAEjuL,IAAM03B,IAAGkiL,GAAIz5M,EAAE3D,GAAGo9M,GAAIp4K,EAAEozK,GAAI32M,EAAE6Q,EAAE,IAAI6jK,GAAI/1K,EAAED,EAAEG,GAAGuD,EAAE8rB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,IAAGvoF,EAAErmE,EAAErd,EAAEq/K,GAAG3xL,EAAEsS,EAAEtS,EAAE,EAAEkU,EAAEm/H,EAAK3/H,KAAKugB,IAAI/f,EAAEyb,EAAErd,EAAEqd,EAAEA,EAAE8hK,IAAG5tL,EAAE8rB,EAAE9rB,EAAE8rB,EAAErxB,QAAQF,EAAEu6T,IAAIv6T,EAAE43F,EAAE27F,GAAGz9K,EAAEm/H,EAAK3/H,KAAKugB,IAAI/f,EAAE8hF,EAAEy7F,EAAE9hK,EAAEA,GAAG3vB,EAAEqzI,EAAK3/H,KAAKugB,IAAIj0B,EAAEoT,GAAG4iF,GAAGy7F,EAAEn/K,EAAEhS,EAAElC,EAAoG,GAAlG4qP,GAAI5oP,EAAEA,EAAEyD,GAAGsyK,GAAI/1K,EAAED,EAAE49K,GAAG0pB,GAAI5jM,EAAEA,EAAE8rB,EAAErxB,OAAO,GAAG,MAAM4V,EAAEm/H,EAAK3/H,KAAKugB,IAAI/f,EAAE/T,IAAGqxL,EAAEG,EAAE3xL,EAAE2vB,EAAEvvB,GAAOuF,IAAG3F,GAAG2F,EAAE6rL,EAAEA,EAAE7rL,GAAKu1B,EAAwG,IAArG86D,EAAErmE,EAAErd,EAAE7Q,EAAE,IAAIkoN,GAAIvpN,EAAEkS,EAAE,GAAG8qM,GAAIp4K,EAAEozK,GAAIh4M,EAAEkS,EAAEqd,EAAErxB,SAAoB2V,EAAE8pK,GAAGohF,GAAhBn1O,EAAEk1O,IAAIl6N,EAAE,IAAe,IAAI5kC,EAAEg9M,GAAIz5M,EAAE3D,GAAGuR,EAAE2tP,IAAIv7P,EAAE,GAAG8kB,EAAE,EAAQhnB,EAAE6Q,EAAE7Q,EAAEtB,EAAEk/K,MAAS59K,EAAE6Q,GAAG2B,IAAG+hF,EAAErmE,EAAErd,EAAEmW,EAAEi4J,GAAIC,GAAGw+E,GAAI5tP,KAAK0C,EAAE8pK,GAAGohF,GAAIn1O,GAAG,IAAI5pB,GAAKspN,GAAIjoN,EAAE6Q,EAAE7Q,EAAEtB,EAAEk/K,MAAiCqxI,IAAhDtyT,EAAqB2/K,GAAGt8K,EAAEtB,EAAEs7M,GAAGh6M,EAAEkuB,EAAEluB,EAAE6Q,KAAK,KAAYmW,GAAMhnB,EAAE6Q,GAAG2B,IAAGnB,EAAEoB,EAAE8hF,EAAErmE,EAAEA,EAAEtb,EAAE2H,GAAI5d,GAAGqyT,IAAIryT,EAAE0U,GAAGwyS,GAAIlnT,GAAG0U,EAAEuB,GAAG,EAAE,IAAG2hF,GAAGh6E,GAAI5d,GAAGkU,EAAG,OAAO,IAAI+iM,GAAInhM,EAAEs9K,EAAE,CAEnlC,SAASk+L,IAAItvX,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAIwD,EAAIsP,EAA8B,GAA5B3S,EAAE,IAAIuyK,GAAI/sK,EAAE2yL,IAAIp9J,EAAEo9J,IAAIvlL,EAAEulL,IAAO3oK,EAAW,IAARhqB,EAAEvF,EAAE86B,EAAE96B,EAAMoD,EAAE,IAAIuiK,GAAIzzJ,EAAEE,GAAGhP,EAAEpD,EAAEoD,EAAEmsB,EAAEA,EAAErxB,QAAyB,IAAIF,EAAE,IAAI2nK,GAAxBgY,GAAGC,GAAIx6K,GAAG,IAAoBuP,GAAG3U,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAmC,IAA1BuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,KAASgC,EAAEkS,KAAM7Q,EAAEs8K,GAAG6zC,GAAI/tN,EAAEzD,GAAG,IAAQA,EAAEuF,IAAGu1B,EAAEv1B,EAAElE,EAAErB,EAAE2S,EAAEulL,IAAIn4L,EAAEwvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAG54K,EAAElE,EAAErB,GAAKqB,EAAErB,GAAGuF,IAAGxF,EAAEwvB,EAAExvB,EAAEwvB,EAAErxB,QAAQuF,EAAEA,EAAEzD,EAAEkS,EAAE,IAAIS,EAAEsgI,EAAK3/H,KAAKsgB,IAAIjhB,EAAEsgI,EAAK3/H,KAAKskB,IAAI+lJ,GAAGoiG,IAAGt8Q,EAAEzD,EAAE,GAAG,GAAGkS,EAAE7Q,EAAE6Q,YAAc,IAAI9O,EAAE,IAAIuiK,GAAIzzJ,EAAEE,GAAGhP,EAAEpD,EAAEoD,EAAEmsB,EAAEA,EAAErxB,QAAyB,IAAIF,EAAE,IAAI2nK,GAAxBgY,GAAGC,GAAIx6K,GAAG,IAAoBmC,GAAGvH,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAmC,IAA1BuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,KAASgC,EAAEkS,KAAMc,EAAE2qK,GAAG8zC,GAAIhuN,EAAEzD,GAAG,IAAQA,EAAEuF,IAAGu1B,EAAE9nB,EAAEhT,EAAEuF,EAAEoN,EAAEulL,IAAIn4L,EAAEwvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAG54K,EAAEyN,EAAEhT,GAAKgT,EAAEhT,GAAGuF,IAAGxF,EAAEwvB,EAAExvB,EAAEwvB,EAAErxB,QAAQuF,EAAEA,EAAEzD,EAAEkS,EAAE,IAAIS,EAAEsgI,EAAK3/H,KAAKsgB,IAAIjhB,EAAEsgI,EAAK3/H,KAAKskB,IAAI+lJ,GAAGoiG,IAAGt8Q,EAAEzD,EAAEyD,EAAEzD,EAAEkS,EAAE,GAAG,GAAGA,EAAEc,EAAEd,OAAS,GAAe,GAAZnS,EAAEwvB,EAAErxB,QAAW48B,EAAE5oB,EAAEhS,EAAEF,EAAE,GAAG2S,EAAET,EAAEhS,EAAEgS,EAAE,EAAE,CAA6G,IAAlGqgP,GAAV3yP,EAAE,IAAIm5U,IAAU7mU,GAAGysP,IAAI/+P,GAAG6/K,MAAMM,MAAMngL,EAAEA,EAAEI,EAAEkS,EAAEhS,EAAEF,EAAE,EAAYuyP,GAAV7/O,EAAE,IAAIqmU,IAAU7mU,GAAGysP,IAAIjsP,EAAEm0L,KAAKn0L,EAAE9S,EAAEI,EAAEkS,EAAEhS,EAAEF,EAAE,EAAE0S,EAAE9S,EAAEsS,EAAEA,EAAEhS,EAAEgS,EAAMlU,EAAE,IAAI2nK,GAAI5lK,GAAG/B,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAASuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,IAAOuxB,GAAGnd,EAAEurK,GAAGwmD,GAAI1gO,EAAEzD,GAAG,IAAY,GAAPyD,EAAEzD,EAAEkS,EAAKujP,GAAIhyP,EAAE1D,GAAG49K,GAAG6zC,GAAI/tN,EAAEzD,GAAG,IAAKkS,GAAGE,EAAEF,EAAEmgP,GAAI5uP,EAAEiP,GAAG2/O,GAAI5uP,EAAE7D,KAAQwS,EAAEurK,GAAG0mD,GAAI5gO,EAAEzD,GAAG,IAAY,GAAPyD,EAAEzD,EAAEkS,EAAKujP,GAAIhyP,EAAE8rB,GAAGouJ,GAAG8zC,GAAIhuN,EAAEzD,GAAG,IAAKkS,GAAGE,EAAEF,EAAEkgP,GAAI3uP,EAAEiP,GAAG0/O,GAAI3uP,EAAE7D,KAAGkU,EAAE6pK,GAAG4qB,IAAI9kM,GAAG45J,MAAM2hG,MAAM,MAAShmB,GAAGllO,EAAE1B,GAAE,GAAMF,EAAEtS,EAAEI,EAAEuF,EAAE2M,EAAEhS,EAAEF,EAAE,CAAC,CAAC,CAChmC,SAASuvV,IAAIvvV,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAYlE,EAAI2R,EAAEpT,EAA4BwxL,EAAEC,EAAEz7F,EAAE27F,EAAED,EAAErjJ,EAAiJ,GAA7I,KAAKojJ,EAAEn/K,EAAoBouR,GAAlBlvG,EAAE+yE,GAAInkQ,EAAEojQ,GAAI7zO,GAAG8hK,GAAS2uE,GAAI3uE,EAAEq2C,MAAM9xI,EAAE+nF,GAAG45B,GAAGv3M,EAAE2S,EAAE+9S,IAAI5gE,GAAGz+D,EAAEnF,OAAO,IAAyBnsL,EAAE,MAAvBiT,EAAE88O,GAAGz+D,EAAE,iBAA2BtxL,EAAE2wT,IAAI19S,IAAIu+K,EAAE5T,GAAG45B,GAAGv3M,EAAEoS,EAAErS,GAAG,MAAS61F,EAAsE,MAAMs9E,GAAI,IAAIyP,GAAtE,8CAATk1B,IAAIxmB,GAAyDs2K,MAA0B,GAAKp2K,IAAI+tD,GAAG6Q,GAAI5+D,GAAG37F,GAA+G,MAAMs9E,GAAI,IAAIyP,GAA1G,kFAAbq9E,GAAI3uE,EAAEq2C,KAA+FigI,MAA8L,IAAhKv2K,EAAEl/K,IAAIk/K,EAAEl/K,EAAE,IAAI64M,GAAI19B,IAAG+D,EAAE,EAAE,IAAW,KAAmBnG,GAA1BmG,EAAEl/K,EAAUq/K,GAAW37F,GAAY07F,EAAE3T,GAAG45B,GAAGv3M,EAAE2S,EAAE+9S,IAAI5gE,GAAGz+D,EAAEsB,OAAO,IAAyBptL,EAAE,MAAvB3F,EAAEkwP,GAAGz+D,EAAE,iBAA2B9rL,EAAEmrT,IAAI9wT,IAAIquC,EAAE0vI,GAAG45B,GAAGv3M,EAAEoS,EAAE7M,GAAG,MAAS+rL,EAAsE,MAAMpe,GAAI,IAAIyP,GAAtE,8CAATk1B,IAAIxmB,GAAyDs2K,MAA0B,GAAK15T,IAAIqxM,GAAG6Q,GAAIliN,GAAGqjJ,GAA+G,MAAMpe,GAAI,IAAIyP,GAA1G,kFAAbq9E,GAAI3uE,EAAEq2C,KAA+FigI,MAA8F,IAAhEv2K,EAAE7hK,IAAI6hK,EAAE7hK,EAAE,IAAIw7L,GAAI19B,IAAG+D,EAAE,EAAE,IAAW,KAAmBnG,GAA1BmG,EAAE7hK,EAAU0e,GAAWqjJ,GAAsD,KAArCF,EAAEl/K,IAAIk/K,EAAEl/K,EAAE,IAAI64M,GAAI19B,IAAG+D,EAAE,EAAE,IAAIA,EAAEl/K,GAAGlU,GAA6C,KAArCozL,EAAE7hK,IAAI6hK,EAAE7hK,EAAE,IAAIw7L,GAAI19B,IAAG+D,EAAE,EAAE,IAAIA,EAAE7hK,GAAGvxB,EAAmC,MAA7BqD,EAAE2+P,GAAI3uE,EAAEq2C,KAA2Bx0D,GAAI,IAAIyP,GAA5B+kL,IAAIrmW,EAAMsmW,MAAyD,OAA/BtwD,IAAIhmH,EAAED,GAAG08J,IAAIz8J,EAAED,GAAKgmH,GAAIp3S,EAAEqxL,EAAED,EAAW,CAC5mC,SAASm+L,IAAIvvX,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAgiC,OAA9hCr9K,EAzXxE,SAAa9T,EAAEkS,GAAG,IAAIqd,EAAIhqB,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAE,GAAGI,EAAEqhC,KAAM,OAAO,IAAIunJ,GAAY,IAARx2K,EAAE,EAAE0B,EAAE,EAAMvO,EAAEvF,EAAE27M,KAAKp2M,EAAEg2M,MAAuBzgL,EAAd6iJ,GAAGp4K,EAAEk2M,KAAK,IAAQ3gL,EAAE1oB,EAAE6gI,EAAK3/H,KAAKugB,IAAIzhB,EAAE0oB,EAAE96B,GAAG8T,GAAGgnB,EAAE96B,EAAE86B,EAAE5oB,EAAoG,IAAlGE,EAAE6gI,EAAK3/H,KAAKugB,IAAIzhB,EAAE6gI,EAAK3/H,KAAKuc,KAAK/b,GAAGwsK,GAAIC,GAAGgoB,IAAI5qB,GAAG39K,EAAE27M,KAAKF,KAAK,KAAKp+C,MAAMuoJ,SAAS5yS,EAAE,EAAEpT,EAAE,EAAE5B,EAAE,EAAEuxB,EAAErd,EAAMzO,EAAEzD,EAAE27M,KAAKl4M,EAAE83M,MAAgCvoM,GAAT3R,GAAhBsR,EAAEgrK,GAAGl6K,EAAEg4M,KAAK,KAAQ3gL,GAAS96B,EAAEoS,IAAGY,EAAE,EAAEpT,GAAG5B,EAAEkU,EAAElU,EAAE,GAAEgjR,IAAIruQ,EAAEK,EAAEpT,GAAG2vB,EAAE0jH,EAAK3/H,KAAKugB,IAAItE,EAAEvc,EAAE3R,EAAErB,GAAGhC,EAAEi1I,EAAK3/H,KAAKugB,IAAI71B,EAAEqD,EAAE6Q,GAAGc,GAAG3R,EAAErB,EAAEkS,EAAE,OAAO,IAAI+iM,GAAI1lL,EAAErd,EAAEtS,EAAE5B,EAAEkU,EAAE,CAyX1Vs9W,CAAIz/J,GAAI/vN,GAAGy/K,MAAMurM,MAAM94W,GAAGhS,EAAE+hU,IAAIlyG,GAAI/vN,EAAEgjX,KAAK9wW,GAAGmW,EAAE45S,IAAIlyG,GAAI/vN,EAAEkjX,KAAKhxW,GAAG0yB,EAAEs9R,IAAInyG,GAAI/vN,EAAEmjX,KAAKjxW,GAAGc,EAAEkvT,IAAInyG,GAAI/vN,EAAEijX,KAAK/wW,GAAG2B,EAAEouT,IAAIlyG,GAAI/vN,EAAEujX,KAAKrxW,GAAG9O,EAAE6+T,IAAIlyG,GAAI/vN,EAAEojX,KAAKlxW,GAAG3O,EAAE0+T,IAAIlyG,GAAI/vN,EAAEsjX,KAAKpxW,GAAGf,EAAE8wT,IAAIlyG,GAAI/vN,EAAEqjX,KAAKnxW,GAAG2wB,EAAEq/R,IAAInyG,GAAI/vN,EAAEwjX,KAAKtxW,GAAGQ,EAAEuvT,IAAIlyG,GAAI/vN,EAAE4+S,KAAK1sS,GAAG+B,EAAEguT,IAAIlyG,GAAI/vN,EAAE2jX,KAAKzxW,GAAG0X,EAAEq4S,IAAIlyG,GAAI/vN,EAAEyjX,KAAKvxW,GAAGi/K,EAAE+wI,IAAInyG,GAAI/vN,EAAE0jX,KAAKxxW,GAAGtS,EAAEsiU,IAAInyG,GAAI/vN,EAAEirX,KAAK/4W,GAAG8B,EAAEiuT,IAAIlyG,GAAI/vN,EAAE4jX,KAAK1xW,GAAGqd,EAAE4nR,GAAI54H,GAAGC,GAAGyU,IAAG,GAAGwzD,IAAI,GAAG,GAAG,CAAC5yO,EAAE7T,EAAE4kC,EAAE5kC,EAAEuD,EAAEvD,EAAEmxL,EAAEnxL,KAAKD,EAAEo3S,GAAI54H,GAAGC,GAAGyU,IAAG,GAAGwzD,IAAI,GAAG,GAAG,CAACvmP,EAAEF,EAAE8T,EAAE9T,EAAEqoB,EAAEroB,EAAEgU,EAAEhU,KAAKuF,EAAEmN,EAAE1S,EAAE86B,EAAEq8Q,GAAI54H,GAAGC,GAAGyU,IAAG,GAAGwzD,IAAI,GAAG,GAAG,CAACrjP,EAAEpD,EAAEgT,EAAEhT,EAAEmR,EAAEnR,EAAEJ,EAAEI,KAAKoS,EAAE+kS,GAAI54H,GAAGC,GAAGyU,IAAG,GAAGwzD,IAAI,GAAG,GAAG,CAAC5yO,EAAE3B,EAAEhS,EAAEgS,EAAE9O,EAAE8O,EAAE+B,EAAE/B,KAAKlU,EAAEm5S,GAAI54H,GAAGC,GAAGyU,IAAG,GAAGwzD,IAAI,GAAG,GAAG,CAAC7hN,EAAE1yB,EAAE4B,EAAE5B,EAAEc,EAAEd,EAAE8B,EAAE9B,KAAK7Q,EAAEwhC,EAAE3wB,EAAEzO,EAAE0zS,GAAI54H,GAAGC,GAAGyU,IAAG,GAAGwzD,IAAI,GAAG,GAAG,CAACljP,EAAE2O,EAAEmW,EAAEnW,EAAEf,EAAEe,EAAE0X,EAAE1X,KAAK6uQ,GAAIhxD,GAAI/vN,EAAEgrX,KAAKz7V,EAAEhqB,EAAE6M,EAAE/Q,GAAG0/Q,GAAIhxD,GAAI/vN,EAAE4jX,KAAKr0V,EAAEhqB,EAAE6M,EAAE/Q,GAAG0/Q,GAAIhxD,GAAI/vN,EAAEgjX,KAAKzzV,EAAEhqB,EAAE,GAAGw7Q,GAAIhxD,GAAI/vN,EAAEkjX,KAAK3zV,EAAEhqB,EAAE6M,EAAE/Q,EAAErD,GAAG+iR,GAAIhxD,GAAI/vN,EAAEmjX,KAAK,EAAE/wW,EAAE/Q,GAAG0/Q,GAAIhxD,GAAI/vN,EAAEijX,KAAK1zV,EAAEhqB,EAAExF,EAAEqS,EAAE/Q,GAAG0/Q,GAAIhxD,GAAI/vN,EAAEojX,KAAK7zV,EAAEhqB,EAAExF,EAAE,GAAGghR,GAAIhxD,GAAI/vN,EAAEsjX,KAAK,EAAElxW,EAAE/Q,EAAErD,GAAG+iR,GAAIhxD,GAAI/vN,EAAEqjX,KAAK9zV,EAAEhqB,EAAExF,EAAEqS,EAAE/Q,EAAErD,GAAG+iR,GAAIhxD,GAAI/vN,EAAEwjX,KAAK,EAAEpxW,GAAG2uQ,GAAIhxD,GAAI/vN,EAAE4+S,KAAKrvR,EAAE,GAAGwxP,GAAIhxD,GAAI/vN,EAAEyjX,KAAK,EAAErxW,EAAE/Q,EAAErD,GAAG+iR,GAAIhxD,GAAI/vN,EAAEirX,KAAK17V,EAAEhqB,EAAExF,EAAE,IAAG4S,EAAE,IAAIi2K,IAAM5oL,EAAEm3S,GAAI54H,GAAGC,GAAGyU,IAAG,GAAGwzD,IAAI,GAAG,GAAG,CAACl3N,EAAExvB,EAAEwF,EAAEu1B,EAAE+H,EAAE7iC,EAAEiU,EAAEjU,EAAE4pB,EAAE5pB,KAAK2S,EAAET,EAAEilS,GAAI54H,GAAGC,GAAGyU,IAAG,GAAGwzD,IAAI,GAAG,GAAG,CAACr0O,EAAEpU,EAAEqD,EAAEoC,EAAEiP,EAAER,EAAEi/K,EAAEj/K,EAAEtS,EAAEsS,KAAYS,CAAC,CAE9mC,SAAS88W,IAAIzvX,EAAEkS,EAAEqd,GAAG,IAAMhqB,EAAEu1B,EAAEnoB,EAAElP,EAAI2O,EAAE/Q,EAAEyS,EAA2b,GAAzb+tR,IAAItyQ,EAAE,iCAAiC,GAAGvvB,EAAEuF,EAAE2M,EAAElS,EAAEJ,EAAE+9K,GAAG4qB,IAAIr2L,GAAG81L,MAAMk3H,MAAM,KA7OpH,SAAal/T,GAAG,IAAIkS,EAAInS,EAAEwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAsB,IAApBF,EAAE86B,EAAE,IAAI87I,GAAIxkK,EAAE,EAAE7M,EAAE,EAAMoN,EAAE,IAAIgzJ,GAAI3lK,EAAEuF,EAAE2M,GAAGS,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAyB,IAAIF,EAAE,IAAI2nK,GAAxBgY,GAAGC,GAAIjrK,GAAG,IAAoB3S,GAAGhC,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAQ,CAAyB,KAAxBuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,KAAMoF,EAAEgP,IAAQrS,EAAE,IAAI+uO,GAAG7hB,GAAGm1E,GAAI3+R,GAAGzD,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAAO49K,GAAGwtC,GAAGprN,GAAG,IAAMqD,EAAEmC,IAAa,IAAT2M,EAAEmnW,IAAI51W,GAAOuP,EAAE,IAAI2yJ,GAAIliK,EAAE2O,GAAGY,EAAEhT,EAAEgT,EAAEuc,EAAEA,EAAErxB,QAAS4V,EAAE6pK,GAAGC,GAAI5qK,GAAG,IAAOd,IAAGhS,EAAE4T,EAAE9T,EAAEkS,IAAQ+gI,EAAK3/H,KAAKC,MAAMrT,KAAImB,EAAEnB,EAAE44L,GAAI8R,GAAI33D,EAAK3/H,KAAKY,MAAMhU,KAAK4T,EAAE9T,EAAEkS,GAAG7Q,IAAGzB,EAAEkU,EAAElU,EAAEsS,EAAE4B,EAAE9T,EAAEkS,IAAQ+gI,EAAK3/H,KAAKC,MAAM3T,KAAIyB,EAAEzB,EAAEk5L,GAAI8R,GAAI33D,EAAK3/H,KAAKY,MAAMtU,KAAKkU,EAAElU,EAAEsS,GAAG7Q,EAAG,CAAErB,EAAE2S,EAAEP,EAAEpS,EAAEkS,EAAE3M,EAAEvF,EAAEhC,EAAEigL,GAAGyxM,IAAGvxM,IAAI,IAAI/rK,EAAE,EAAE,GAAGpS,EAAEuvB,EAAE0uJ,GAAG0xM,IAAGxxM,IAAI,IAAI54K,EAAE,EAAE,GAAGvF,EAAED,EAAEC,EAAEqvQ,IAAI,CA6OtbugH,CAAI5vX,GAzwC7H,SAAaA,GAAG,IAAMuvB,EAAE,IAAIA,EAAE,IAAIo2I,GAAI3lK,EAAEuF,EAAE2M,GAAGqd,EAAEvvB,EAAEuvB,EAAEA,EAAEA,EAAErxB,QAAyB8mX,IAAIhlX,EAAlB29K,GAAGC,GAAIruJ,GAAG,KAAamyK,GAAIyoB,GAAIgjE,GAAIA,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAIvtM,EAAEuF,EAAE2M,EAAE,KAAK,IAAI43I,IAAK,IAAIM,IAAK,IAAIC,IAAK,IAAIkjB,GAAIvtK,GAAG,CAywC/C6vX,CAAI7vX,GAAG0hM,GAAIyrF,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAIvtM,EAAEuF,EAAE2M,EAAE,KAAK,IAAIu3I,IAAK,IAAIyjB,GAAIltK,IAAI0hM,GAAIyoB,GAAIgjE,GAAIhjE,GAAIgjE,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAIvtM,EAAEuF,EAAE2M,EAAE,KAAK,IAAIo4I,IAAK,IAAIC,IAAK,IAAIC,IAAK,IAAIC,IAAK,IAAIwiB,GAAIjtK,IAAOiiL,GAAIk6B,GAAG5T,IAAIvoM,EAAEuF,GAAG83J,MAAMqkN,UAAoB7/E,IAAXlvR,EAAEuzR,GAAI32Q,EAAE,GAAS,gCAAgC,GAnH3X,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAIhqB,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAiR,IAA/Q9T,EAAEoS,EAAE6rK,GAAGmV,IAAGsW,IAAI,GAAG1pM,EAAE2S,EAAE,GAAG,GAAG3S,EAAEE,EAAE,IAAIoyK,GAAIovB,GAAIyrF,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAIvtM,EAAEuF,EAAE2M,EAAE,KAAK,IAAI63I,IAAK,IAAIqjB,GAAIptK,IAAIA,EAAEA,EAAEi+K,GAAG8U,IAAIuyD,IAAI,GAAGtlP,EAAEkS,EAAE,GAAG,GAAGq+N,GAAI,IAAInmB,GAAI,KAAK,IAAI7c,GAAIvtM,EAAEuF,EAAE2M,EAAE,KAAK,IAAIo7J,GAAIttK,IAAO8T,EAAE,IAAIw+J,GAAIovB,GAAIyoB,GAAIgjE,GAAI,IAAI/iE,GAAI,KAAK,IAAI7c,GAAIvtM,EAAEuF,EAAE2M,EAAE,KAAK,IAAI+3I,IAAK,IAAIojB,GAAIrtK,IAAI,IAAImzM,GAAInzM,EAAE8T,IAAW9V,EAAE,IAAI2nK,GAAb7xJ,GAAoB9V,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAA0B,MAAjBuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,MAAUuxB,EAAErxB,QAAQ,GAAY,GAAe,GAAZuF,EAAE8rB,EAAErxB,QAAkF,IAAG+wU,IAAIxrU,KAAIq4U,IAAIr4U,EAAE,IAAIumJ,IAAmC,IAApB53I,EAAE,IAAIuzJ,GAAIliK,GAAG8B,EAAE,KAAW6M,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAQgU,EAAEyrK,GAAGC,GAAIxrK,GAAG,IAAImd,EAAEvvB,EAAEuvB,EAAErd,EAAE9O,GAA0B/B,GAAtBkE,GAAG6M,EAAEpS,GAAGoS,EAAEmd,EAAEA,EAAErxB,OAAU8lQ,IAAK/E,MAAMgF,KAAKgzB,KAASjzB,IAAK/E,MAAMg4B,KAAKA,KAAM51R,GAAG,EAAEy5B,EAAEvL,EAAEvvB,EAAE2S,EAAE4c,EAAEvvB,EAAE2S,EAAEsgI,EAAK3/H,KAAKugB,IAAIiH,EAAEA,GAAGz5B,EAAEy5B,IAAInoB,EAAE4c,EAAErd,EAAES,EAAE4c,EAAErd,EAAES,EAAEsgI,EAAK3/H,KAAKugB,IAAIlhB,EAAEA,GAAGtR,EAAEsR,IAAIpN,EAAE2M,OAA/Ui7U,IAAI1pV,GAAG41W,KAAK57J,GAAI,EAAEh6M,EAAE8rB,EAAErxB,QAAQy/K,GAAGl6K,EAAE8rB,EAAE,GAAG,KAAKxvB,EAAE/B,IAAI+3K,GAAI/1K,EAAEE,EAAEuD,EAAuR,CAmH/WqsX,CAAI9vX,GAAGuiS,IAAI5vR,IAAGyoT,IAAIp7T,EAAE86B,GAAGA,EAAE6iJ,GAAG4qB,IAAIr2L,EAAE6tT,KAAK,IAAI//T,EAAEA,EAAE86B,EAAE96B,EAAEuvB,EAAErxB,OAAOssW,IAAIvkL,GAAIC,GAAI06C,GAAI5gO,EAAE86B,GAAGA,IAAG,GAAOorQ,GAAI32Q,EAAE,IAAmB,GAAZvvB,EAAED,EAAEC,EAAEi/K,KAAQ,CAA6V,IAAjV4iH,IAAXlvR,EAAEuzR,GAAI32Q,EAAE,GAAS,kCAAkC,GAAG9rB,EAAEk6K,GAAGwxC,GAAIqhB,GAAI2F,GAAI,IAAI/rB,GAAI,KAAK,IAAI7c,GAAIvtM,EAAE86B,EAAE96B,EAAE,KAAK,IAAI0pJ,IAAK,IAAIP,KAAM,IAAInpJ,EAA4EoS,EAAxEurK,GAAGwxC,GAAImhB,GAAI6F,GAAI,IAAI/rB,GAAI,KAAK,IAAI7c,GAAIvtM,EAAE86B,EAAE96B,EAAE,KAAK,IAAI2pJ,IAAK,IAAIP,KAAM,IAAIppJ,EAAMyD,EAAEpC,EAAE6tN,GAAI,IAAIn4C,GAAI/2K,EAAE86B,GAAGhnB,EAAEo7M,GAAI,IAAIn4C,GAAI/2K,EAAE86B,GAAGwgS,IAAIl5H,GAAID,GAAID,GAAIG,GAAI,IAAIvrB,GAAI,KAAO1kK,GAAG/Q,GAAGyS,IAAI4tL,GAAIyoB,GAAIA,GAAI4qB,GAAI/0O,EAAEhC,GAAG,IAAI4rJ,IAAK,IAAIC,IAAK,IAAIo6F,GAAIxgP,EAAEpC,EAAE+Q,EAAE0B,IAAQvO,EAAEvF,EAAED,EAAEC,EAAE2hP,KAAKhmC,KAAKp2M,EAAEg2M,MAAS59B,GAAGp4K,EAAEk2M,KAAK,KAAO9oM,EAAE,EAAE63V,IAAIvkL,GAAIC,GAAI06C,GAAI5gO,EAAE86B,GAAGA,IAAG,GAAOorQ,GAAIvzR,EAAE,IAAI4vR,IAAI5vR,EAAE,CAAIsvK,GAAIk6B,GAAG5T,IAAIr2L,EAAEwvW,SAAmB7/E,IAAXlvR,EAAEuzR,GAAI32Q,EAAE,GAAS,iCAAiC,GA3jCjgC,SAAavvB,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAkC,IAApBw5L,GAAVhqK,EAAE,IAAIkqJ,GAASz5K,EAAEE,GAAGH,EAAE,IAAIw4K,GAAe,GAALhpJ,EAAErd,GAAyDi7W,IAAIntX,EAAvDkS,EAAEyrK,GAAQ,GAALpuJ,EAAErd,EAAK,MAAMo3M,GAAS,GAAL/5L,EAAErd,GAAMkyN,GAAI70M,EAAEA,EAAEvvB,EAAEA,IAAI,MAAe,IAAS+1K,GAAIh2K,EAAEC,EAAEkS,GAAG,KAAoB,GAAdnS,EAAEC,EAAEuvB,EAAErxB,QAA4BivX,IAAIntX,EAArBkS,EAAEyrK,GAAGw/H,GAAIp9S,GAAG,MAAa,EAAO,CA2jCszBgwX,CAAI/vX,GAAGuiS,IAAI5vR,IA7I/gC,SAAa3S,GAAG,IAAIkS,EAAInS,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAI2R,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAE,IAAI3S,EAAE,IAAI4lK,GAAI3lK,EAAEuF,EAAE2M,GAAGnS,EAAEC,EAAED,EAAEwvB,EAAEA,EAAErxB,QAAyB,IAAI48B,EAAE,IAAI6qI,GAAxBgY,GAAGC,GAAI79K,GAAG,IAAoBC,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAA6N,GAApNqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,IAAe1oB,GAAXxS,EAAEI,EAAEhC,EAAEuH,EAAEnC,IAAOpD,EAAEuF,EAAEvH,EAAE4B,EAAEG,EAAEwF,EAAEA,EAAE3F,EAAEsS,EAAEE,EAAEM,EAAE1U,EAAEoU,EAAE7M,EAAErF,EAAEgS,EAAEA,EAAEmnW,IAAI9zW,GAAM0hR,MAAHj0Q,GAAWzN,EAAEyO,EAAoBzO,EAAEyO,GAAnBizM,KAAMA,KAAMgjB,MAAU9iO,IAAIk2J,MAAMovJ,MAAS9uI,GAAG4qB,IAAIhjM,EAAEknT,KAAK,KAAS9uI,GAAG4qB,IAAIg3C,GAAIh6O,GAAGmnT,KAAK,KAASx6S,IAAIc,GAAGiuM,KAAKjuM,GAAGkuM,OAAO37M,EAAErF,EAAEgS,GAAGQ,GAAMR,IAAIc,GAAGo0Q,KAAKp0Q,GAAGiuM,KAAKjuM,GAAGkuM,KAAK,CAAC,IAAI99M,EAAE,IAAIuiK,GAAIpgK,EAAE6M,GAAGhP,EAAEpD,EAAEoD,EAAEmsB,EAAEA,EAAErxB,QAASgC,EAAEy9K,GAAGC,GAAIx6K,GAAG,KAAQq8K,MAAM+jM,KAAKvjL,GAAG//L,EAAEkS,KAAI/Q,EAAEs8K,GAAG+5B,GAAI13M,EAAEqB,EAAEnB,GAAG,KAAKA,EAAEN,EAAEsS,EAAE7Q,EAAEkE,EAAE6M,GAAG,IAAI3O,EAAE,IAAIkiK,GAAIpgK,EAAE2M,GAAGzO,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAASyU,EAAEgrK,GAAGC,GAAIn6K,GAAG,KAAIuQ,EAAE2pK,GAAG4qB,IAAIhjM,EAAEm8T,KAAK,KAAMzhI,IAAIuuG,MAAMO,MAAOp8R,EAAE/S,EAAEsS,GAAGQ,EAAGsB,EAAEisL,GAAG6uG,OAAOn8R,EAAE/S,EAAEsS,GAAGQ,EAAE,IAAIM,GAAGiuM,KAAKjuM,GAAGkuM,MAAMiI,GAAI5jN,GAAGk6K,MAAMonB,MAAMu1D,GAAG,IAAIjvF,GAAIz6J,GAAG,CAAG,CA6IqWs9W,CAAIhwX,GAAGA,EAAEuF,EAAE,KAAKvF,EAAE86B,EAAE,KAAK96B,EAAEhC,EAAE,KAAKgC,EAAEuvB,EAAE,KAAKkjJ,GAAIzyK,EAAEqB,GAAGrB,EAAEoS,EAAE,KAAKpS,EAAEA,EAAE,KAAKA,EAAEE,EAAE,KAAKF,EAAED,EAAEC,EAAEqvQ,KAAKkzB,IAAIhzQ,EAAE,CAClnC,SAAS0gW,IAAIjwX,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE,IAAI1N,EAAE,IAAIkiK,GAAI3lK,EAAEA,EAAEkS,GAAGzO,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAyB,IAAI+V,EAAE,IAAI0xJ,GAAxBgY,GAAGC,GAAIn6K,GAAG,IAAoBzD,GAAGiU,EAAEjU,EAAEiU,EAAEsb,EAAEA,EAAErxB,QAAS2V,EAAE8pK,GAAGC,GAAI3pK,GAAG,IAAI/B,EAAES,EAAEkB,EAAEzQ,GAAGyQ,EAAE3B,EAAElS,EAAE6T,EAAEzQ,GAAGyQ,EAAE3B,EAAEnS,EAAE8T,EAAEzQ,GAAG,EAA4G,IAAzGpF,EAAEgC,EAAEA,EAAEkS,EAAEA,EAAEqd,IAAIw+N,KAAME,OAAOjwP,EAAE6rL,GAAG7rL,EAAE,KAAK6yQ,GAAGlzF,GAAG3/K,EAAE,MAAM6rL,GAAG7rL,EAAE,KAAK2/K,GAAG3/K,EAAE,KAAKgC,EAAE6pL,GAAG7rL,EAAE,IAAI,IAAI8+K,GAAG9+K,GAAG,IAAI8sE,GAAG9sE,IAAQ2U,EAAE3U,EAAE29M,KAAKhpM,EAAE4oM,MAA0I,IAAnH37M,GAAG,EAAEoT,EAAnB2qK,GAAGhrK,EAAE8oM,KAAK,IAAaz7M,EAAKkS,EAAEhS,IAAI8wP,KAAMG,OAAMvxP,EAAEs4L,IAAIllL,EAAE62K,GAAG72K,EAAE,KAAK69P,GAAGlzF,GAAG3qK,EAAE,MAAM62K,GAAG72K,EAAE,KAAK2qK,GAAG3qK,EAAE,KAAKhT,EAAE6pL,GAAG72K,EAAE,IAAI,IAAI8pK,GAAG9pK,GAAG,IAAI83D,GAAG93D,IAAO7B,EAAE6B,EAAE2oM,KAAKxqM,EAAEoqM,MAA2F,GAApFlzL,EAAEs1J,GAAGxsK,EAAEsqM,KAAK,IAAI3nM,EAAE,MAAeA,EAAV5B,EAAEqd,GAAG0+N,IAAOtwE,GAAG0pB,GAAIrnM,EAAEkS,EAAE4oB,EAAEzS,EAAEjlB,GAAG,IAAQu6K,GAAG0pB,GAAIrnM,EAAEkS,EAAEA,EAAEmW,EAAEjlB,GAAG,KAAU67K,KAAK,EAA6E,GAA1El/K,EAAE+T,EAAEmrK,KAAK7sK,EAAE+lL,GAAGllD,EAAK3/H,KAAKC,OAAOxT,EAAE,GAAG,IAAI,EAAEwF,EAAE4yL,GAAGllD,EAAK3/H,KAAKwd,MAAM/wB,EAAE,GAAG,IAAI,EAAKmS,EAAEhS,GAAGixP,IAAK,IAAI9vP,EAAEkE,EAAElE,GAAG+Q,EAAE/Q,IAAQ6Q,EAAElS,EAAEqoB,EAAEjlB,IAAIilB,IAAGjlB,EAAEu6K,GAAG7pK,EAAEunM,GAAGh6M,GAAG,IAAInB,EAAEy9K,GAAGv6K,EAAEpD,EAAE,KAAQygM,GAAIlxK,EAAEnsB,EAAE8O,IAAItS,EAAEI,EAAEkS,EAAE3M,EAAErF,EAAEkD,KAAI8O,EAAElS,EAAEE,EAAEkD,GAAGilB,EAAEnW,EAAES,EAAE0V,EAAEjlB,GAAG8O,EAAES,EAAEzS,EAAEkD,GAAG8O,EAAElS,EAAEqoB,EAAEjlB,GAAG8O,EAAES,EAAE0V,EAAEjlB,GAAG8O,EAAE4oB,EAAE5oB,EAAES,EAAE0V,EAAEjlB,GAAGA,IAAIsqN,QAAMzrC,GAAI/vK,EAAE4oB,EAAE5oB,EAAES,EAAE0V,EAAEjlB,GAAGA,IAAIilB,EAAEhnB,IAAI49P,MAAMg4B,OAAiBr3R,EAAEI,EAAEkS,EAAE3M,EAAErF,EAAEkD,UAAW,IAAI/B,EAAE+Q,EAAE/Q,GAAGkE,EAAElE,IAAQ6Q,EAAElS,EAAEqoB,EAAEjlB,IAAIilB,IAAG3V,EAAEirK,GAAG7pK,EAAEunM,GAAGh6M,GAAG,IAAI2S,EAAE2pK,GAAGjrK,EAAE1S,EAAE,KAAQygM,GAAIlxK,EAAE7c,EAAER,IAAItS,EAAEI,EAAEkS,EAAE3M,EAAEyO,EAAE5Q,KAAI8O,EAAElS,EAAEgU,EAAE5Q,GAAGilB,EAAEnW,EAAES,EAAE0V,EAAEjlB,GAAG8O,EAAES,EAAEqB,EAAE5Q,GAAG8O,EAAElS,EAAEqoB,EAAEjlB,GAAG8O,EAAES,EAAE0V,EAAEjlB,GAAG8O,EAAE4oB,EAAE5oB,EAAES,EAAE0V,EAAEjlB,GAAGA,IAAIsqN,QAAMzrC,GAAI/vK,EAAE4oB,EAAE5oB,EAAES,EAAE0V,EAAEjlB,GAAGA,IAAIilB,EAAEhnB,IAAI49P,MAAMg4B,OAAiBr3R,EAAEI,EAAEkS,EAAE3M,EAAEyO,EAAE5Q,IAAS,CAClnC,SAAS27Q,MAAMA,IAAIrqI,EAAIw1C,KAAMgmM,IAAI/lM,IAAInqL,EAAE29K,GAAG0O,GAAIC,GAAInC,IAAInqL,GAAG,GAAG,IAAImwX,IAAIhmM,IAAIrvJ,EAAE6iJ,GAAG0O,GAAIC,GAAInC,IAAIrvJ,GAAG,GAAG,IAAI6iJ,GAAG0O,GAAIC,GAAInC,IAAIrvJ,GAAG,GAAG,IAAIs1V,IAAIjmM,IAAIvqL,EAAE+9K,GAAG0O,GAAIC,GAAInC,IAAIvqL,GAAG,GAAG,IAAI+9K,GAAG0O,GAAIC,GAAInC,IAAIvqL,GAAG,GAAG,IAAI+9K,GAAG0O,GAAIC,GAAInC,IAAIvqL,GAAG,GAAG,IAAI+9K,GAAG0O,GAAIC,GAAInC,IAAIvqL,GAAG,GAAG,IAAIynU,IAAIl9I,IAAIx3K,EAAEgrK,GAAG0O,GAAIC,GAAInC,IAAIx3K,GAAG,GAAG,IAAIgrK,GAAG0O,GAAIC,GAAInC,IAAIx3K,GAAG,GAAG,IAAI09W,IAAIlmM,IAAI56J,EAAEouJ,GAAG0O,GAAIC,GAAInC,IAAI56J,GAAG,GAAG,IAAIouJ,GAAG0O,GAAIC,GAAInC,IAAI56J,GAAG,GAAG,IAAI84S,IAAIl+I,IAAInsL,EAAE2/K,GAAG0O,GAAIC,GAAInC,IAAInsL,GAAG,GAAG,IAAI2/K,GAAG0O,GAAIC,GAAInC,IAAInsL,GAAG,GAAG,IAAI2/K,GAAG0O,GAAIC,GAAInC,IAAInsL,GAAG,GAAG,IAAI2/K,GAAG0O,GAAIC,GAAInC,IAAInsL,GAAG,GAAG,IAAI2/K,GAAG0O,GAAIC,GAAInC,IAAInsL,GAAG,GAAG,IAAIupU,IAAIp9I,IAAI/3K,EAAEurK,GAAG0O,GAAIC,GAAInC,IAAI/3K,GAAG,GAAG,IAAI+1T,IAAIh+I,IAAIpqL,EAAE49K,GAAG0O,GAAIC,GAAInC,IAAIpqL,GAAG,GAAG,IAAI49K,GAAG0O,GAAIC,GAAInC,IAAIpqL,GAAG,GAAG,IAAI49K,GAAG0O,GAAIC,GAAInC,IAAIpqL,GAAG,GAAG,IAAI49K,GAAG0O,GAAIC,GAAInC,IAAIpqL,GAAG,GAAG,IAAI49K,GAAG0O,GAAIC,GAAInC,IAAIpqL,GAAG,GAAG,IAAI49K,GAAG0O,GAAIC,GAAInC,IAAIpqL,GAAG,GAAG,IAAI49K,GAAG0O,GAAIC,GAAInC,IAAIpqL,GAAG,GAAG,IAAI49K,GAAG0O,GAAIC,GAAInC,IAAIpqL,GAAG,GAAG,IAAIuwX,IAAInmM,IAAIj4K,EAAEyrK,GAAG0O,GAAIC,GAAInC,IAAIj4K,GAAG,GAAG,IAAIyrK,GAAG0O,GAAIC,GAAInC,IAAIj4K,GAAG,GAAG,IAAIi1T,IAAIh9I,IAAI5kL,EAAEo4K,GAAG0O,GAAIC,GAAInC,IAAI5kL,GAAG,GAAG,IAAIo4K,GAAG0O,GAAIC,GAAInC,IAAI5kL,GAAG,GAAG,IAAIo4K,GAAG0O,GAAIC,GAAInC,IAAI5kL,GAAG,GAAG,IAAIo4K,GAAG0O,GAAIC,GAAInC,IAAI5kL,GAAG,GAAG,IAAIo4K,GAAG0O,GAAIC,GAAInC,IAAI5kL,GAAG,GAAG,IAAIo4K,GAAG0O,GAAIC,GAAInC,IAAI5kL,GAAG,GAAG,IAAIo4K,GAAG0O,GAAIC,GAAInC,IAAI5kL,GAAG,GAAG,IAAIo4K,GAAG0O,GAAIC,GAAInC,IAAI5kL,GAAG,GAAG,IAAIo4K,GAAG0O,GAAIC,GAAInC,IAAI5kL,GAAG,GAAG,IAAIo4K,GAAG0O,GAAIC,GAAInC,IAAI5kL,GAAG,GAAG,IAAIo4K,GAAG0O,GAAIC,GAAInC,IAAI5kL,GAAG,IAAI,IAAIy5Q,IAAI70F,IAAI9oL,EAAEs8K,GAAG0O,GAAIC,GAAInC,IAAI9oL,GAAG,GAAG,IAAIs8K,GAAG0O,GAAIC,GAAInC,IAAI9oL,GAAG,GAAG,GAAG,CAEnnC,SAASs5U,IAAI36U,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,EAAQ,OAAN5oB,EAAElS,EAAEuvB,GAAY,KAAK,GAAG,OAAOvvB,EAAEuwX,KAAK,KAAK,GAAG,OAAOvwX,EAAEwwX,KAAK,KAAK,GAAG,OAAOxwX,EAAEg0K,KAAK,KAAK,GAAG,OAAOh0K,EAAEywX,KAAK,KAAK,GAAG,OAAOzwX,EAAEmvO,KAAK,KAAK,GAAG,OAAOnvO,EAAE0wX,KAAK,KAAK,GAAU,OAAP/zL,IAAI38L,GAAUkkN,MAAMA,MAAMw2H,IAAI,KAAK,GAAG,OAAO16U,EAAEA,GAAG,KAAK,GAAG,OAAOA,EAAE2wX,KAAK,KAAK,GAAG,OAAO3wX,EAAE4wX,KAAK,KAAK,IAAI,OAAO5wX,EAAE6wX,KAAK,KAAK,GAAG,OAAO7wX,EAAE8wX,KAAK,KAAK,GAAG,OAAO9wX,EAAE+wX,KAAK,KAAK,GAAG,OAAO/wX,EAAEgxX,KAAK,KAAK,GAAG,OAAOhxX,EAAEixX,MAAsB,OAAfn2V,EATzY,SAAa96B,GAAG,IAAMuvB,EAAExvB,EAAEwF,EAAEu1B,EAAe,OAAPA,EAAE,KAAN96B,EAAEuvB,GAAmB,KAAK,EAAE,OAAOvvB,EAAEkxX,KAAK,KAAK,GAAG,OAAOlxX,EAAEmxX,KAAK,KAAK,GAAG,OAAOnxX,EAAEoxX,KAAK,KAAK,GAAG,OAAOpxX,EAAEqxX,KAAK,KAAK,GAAG,OAAOrxX,EAAEsxX,KAAK,KAAK,EAAE30L,IAAI38L,GAAMkkN,MAAHppL,EAASy2V,IAAK,MAAM,KAAK,EAAE,OAAOvxX,EAAE0+M,IAAG,GAAM,KAAK,GAAG,OAAO1+M,EAAEwxX,KAAK,KAAK,GAAG,OAAOxxX,EAAEA,GAAG,KAAK,IAAI,KAAK,GAAG,KAAK,IAAI,KAAK,GAAG,KAAK,IAAI,KAAK,GAAsB,OAAnB86B,EAAE96B,EAAEirN,GAAGjrN,EAAEA,GAAG28L,IAAI38L,GAAU86B,EAAE,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,KAAKvL,EAAEvvB,EAAEyxX,MAAO9pK,KAAQzD,MAAMA,MAATppL,EAAqB,IAAI0rM,GAAI,EAAEj3M,IAAMuL,EAAEy0M,GAAIi2E,GAAIj2R,IAAK,MAAM,KAAK,GAAG,OAAOvvB,EAAE0xX,KAAK,KAAK,GAAG,OAAO1xX,EAAE2xX,KAAK,KAAK,IAAI,OAAO3xX,EAAE4xX,KAAK,KAAK,GAAG,OAAO5xX,EAAE6xX,KAAK,KAAK,IAAI,OAAO7xX,EAAE8xX,KAAK,KAAK,GAAG,OAAO9xX,EAAE+xX,KAAK,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO/xX,EAAE0sN,KAAK,KAAK,GAAG,KAAK,IAAiB,KAAb5xL,EAAE+nT,IAAI7iV,EAAEA,EAAEA,IAAS,MAAMkzK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMgoM,QAAQ,MAAM,QAAQl3V,EAAEyrM,GAAIvmO,EAAEA,GAAI28L,IAAI38L,GAAG,MAAM,KAAK,EAAE,GAAQ,IAALA,EAAEA,GAAY,KAALA,EAAEA,GAAa,KAALA,EAAEA,EAAO,MAAMkzK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMioM,QAAQn3V,EAAEyrM,GAAIvmO,EAAEA,GAAGD,EAAEC,EAAEA,EAAE28L,IAAI38L,IAAS,MAAFD,IAAU0lT,KAAU,GAALzlT,EAAEuvB,GAAmB,QAAR,MAAJvvB,EAAEA,MAAiBuF,EAAE04K,GAAGo3C,IAAGC,IAAI,GAAG,EAAE,GAAG,IAAK,GAAGv1N,EAAE08L,IAAIl3L,EAAE,GAAGvF,EAAEA,EAAEy8L,IAAI3hK,EAAEi4M,GAAIxD,GAAI1mB,IAAItjN,EAAE,EAAEA,EAAErH,SAAS,GAAGy+L,IAAI38L,IAAG,MAAM,QAAQ,MAAMkzK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMioM,QAAS,OAAOn3V,CAAC,CAS9sBo3V,CAAIlyX,GAAGkS,EAAElS,EAAEuvB,GAAY,KAAK,EAAE,OAAOvvB,EAAE+zK,GAAGj5I,GAAG,KAAK,EAAE,OAAO96B,EAAEmyX,GAAGr3V,GAAG,KAAK,EAAE,OAAO96B,EAAEoyX,GAAGt3V,GAAG,KAAK,EAAE,GAAQ,KAAL96B,EAAEA,GAAQA,EAAED,EAAEC,EAAEoS,EAAE,CAAgB,GAAf7M,EAAEvF,EAAED,EAAEA,EAAE,EAAEwvB,GAAG,KAAMrd,EAAEgnL,GAAIl5L,EAAEhC,EAAEuH,OAAO,IAAI2M,GAAG,IAAmH,MAAMghK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMqoM,QAArI,IAAPtyX,EAAEmS,EAAE,GAAS3M,EAAEvF,EAAEoS,IAAIF,EAAEgnL,GAAIl5L,EAAEhC,EAAEuH,OAAO,IAAI2M,GAAG,IAAgB,IAAZnS,EAAI,GAAFA,EAAKmS,EAAE,IAAQ,EAAE,MAAMghK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMsoM,QAAuD,GAAJ/iW,EAAExvB,EAAQ,IAAHmS,EAAM,CAAC,GAAG3M,GAAGvF,EAAEoS,EAAG,MAAM8gK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMuoM,QAAa,IAAIrgX,EAAEgnL,GAAIl5L,EAAEhC,EAAEuH,OAAO,IAAI2M,GAAG,GAAG,CAAQ,IAAPqd,EAAErd,EAAE,GAAS3M,EAAEvF,EAAEoS,IAAIF,EAAEgnL,GAAIl5L,EAAEhC,EAAEuH,OAAO,IAAI2M,GAAG,IAAgB,IAAZqd,EAAI,GAAFA,EAAKrd,EAAE,IAAQ,EAAE,MAAMghK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMsoM,QAAQ,GAAGvyX,EAAEwvB,EAAE,MAAM2jJ,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMwoM,OAAO,MAAMjjW,GAAG,CAAE,CAAC,GAAM,KAAHrd,EAAO,MAAMghK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMyoM,QAAWzyX,EAAEy+M,GAAGl5M,IAAO2+M,MAAMA,MAATppL,EAAqB,IAAIorO,GAAI,EAAEprO,GAAI96B,EAAED,EAAEwF,EAAE,IAAU2+M,MAAMA,MAATppL,EAAqB,IAAIorO,GAAI,EAAEprO,GAAI96B,EAAED,EAAEwF,GAAEu1B,EAAE43V,GAAG3yX,GAAG+6B,EAAE63V,GAAGpjW,GAAGotK,IAAI38L,EAAE,EAAE,OAAO86B,CAAC,CAC3nC,SAAS83V,IAAI5yX,EAAEkS,EAAEqd,EAAExvB,EAAEwF,GAAG,IAAIu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAI9S,EAAEkD,EAAE4Q,EAAEtB,EAAIuB,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAEC,EAA6E,IAA3EhuL,EAAE,IAAI6tN,GAAI/+M,EAAEA,GAAGmW,EAAE,IAAI4oM,GAAI/+M,EAAEA,GAAGc,EAAE,IAAIi+M,GAAI/+M,EAAEA,GAAG0yB,EAAE,IAAIqsL,GAAI/+M,EAAEA,GAAG8B,EAAE,IAAIi9M,GAAI/+M,EAAEA,GAAO0X,EAAEk1O,IAAI5sP,EAAE,GAAG0X,EAAE1X,GAAG0X,EAAE7pB,EAAEwvB,GAAoB,IAAI9rB,EAAE,IAAIkiK,IAA1Bx0J,EAAEwsK,GAAGohF,GAAIn1O,GAAG,KAAoBjX,GAAGlP,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAAyB,IAAhB48B,EAAE6iJ,GAAGC,GAAIn6K,GAAG,KAAS8rB,EAAEvxB,GAAG88B,EAAE/6B,EAAE/B,EAAE,CAAC,GAAGmT,EAAEiB,GAAG0oB,EAAE/6B,EAAEqS,EAAE,CAACwyB,EAAErV,EAAEqV,EAAErV,EAAErxB,QAAQ48B,EAAE,QAAQ,CAAM,GAAG3pB,EAAEiB,IAAIqtK,MAAMM,MAAMjlJ,EAAE/6B,EAAEqS,GAAGy0L,IAAI,CAAC7yL,EAAEub,EAAEvb,EAAEub,EAAErxB,QAAQ48B,EAAE,QAAQ,CAAC,CAAG,IAAI98B,EAAE,IAAI2nK,GAAI3xJ,GAAGhW,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAAyB4wW,IAAI9uW,EAApB86B,EAAE6iJ,GAAGC,GAAI5/K,GAAG,IAAYuxB,EAAExvB,GAAG0/K,MAAMC,MAAM,IAAI/sK,EAAE,IAAIgzJ,GAAI/gI,GAAGjyB,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,IAAiBwwJ,GAAbtgI,EAAE,IAAIk5R,IAAI/7T,IAAUi/P,MAAMi4B,MAAMnvF,GAAIllK,GAAGw6H,MAAMykI,MAAMxM,MAAMt4D,MAAMj1B,GAAIllK,GAAGmlK,MAAM0/C,KAAK5sN,GAAaitK,GAAV5W,EAAE,IAAI4nJ,IAAUrxF,IAAI5sN,EAAE/6B,GAAG4+P,IAAIxtE,GAAG1R,MAAMG,MAAM2yE,GAAIphE,EAAEtuJ,GAAaklK,GAAV3W,EAAE,IAAI2nJ,IAAUrxF,IAAI5sN,EAAEvL,GAAGovO,IAAIvtE,EAAE1R,KAAK6yE,GAAInhE,EAAEvuJ,GAAGklK,GAAIjtK,EAAEvL,EAAEojP,IAAI9vO,GAAGklK,GAAIjtK,EAAE/6B,EAAE4yQ,IAAI9vO,GAAGwvN,GAAIv3N,EAAE,MAAMs3N,GAAIt3N,EAAE,MAAMvL,EAAEA,EAAEA,EAAEA,EAAErxB,QAAQ2kC,EAAEklK,GAAIllK,EAAEksU,IAAI/2J,GAAI,IAAI,IAAIz0M,EAAEu7P,IAAI5sP,EAAE,GAAG3O,EAAE2O,GAAG3O,EAAExD,EAAEwvB,GAAoBnd,GAAhBjB,EAAEwsK,GAAGohF,GAAIx7P,GAAG,KAAQgC,EAAEgqB,EAAErxB,OAAO,EAAEwU,EAAEvB,EAAEwB,EAAE4c,EAAErxB,OAAO,EAAEkU,GAAGM,EAAGM,EAAEuc,EAAEvc,EAAEuc,EAAErxB,QAAQiT,EAAQiB,EAAGhP,EAAEmsB,EAAEnsB,EAAEmsB,EAAErxB,QAAQiT,EAAQuB,IAAI2V,EAAEkH,EAAElH,EAAEkH,EAAErxB,QAAQiT,GAAQ,IAAIjR,EAAE,IAAIylK,GAAIviK,GAAGlD,EAAEF,EAAEE,EAAEqvB,EAAEA,EAAErxB,QAAyB63K,GAAIxwK,EAAE4xW,IAAIn3W,EAAxB29K,GAAGC,GAAI19K,GAAG,IAAkB,KAAKqvB,IAAI,IAAItb,EAAE,IAAI0xJ,GAAIt9I,GAAGpU,EAAEjU,EAAEiU,EAAEsb,EAAEA,EAAErxB,QAAyB63K,GAAIxwK,EAAE4xW,IAAIn3W,EAAE,KAA1B29K,GAAGC,GAAI3pK,GAAG,IAAuBsb,IAAI,IAAIzb,EAAE,IAAI6xJ,GAAI3yJ,GAAGc,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAAyB63K,GAAIxwK,EAAE4xW,IAAIn3W,EAA1BqB,EAAEs8K,GAAGC,GAAI9pK,GAAG,IAAkBzS,EAAEkuB,GAAI,CACxoC,SAASsjW,IAAI7yX,GAAG,IAAIkS,EAAEqd,EAAIhqB,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAQgV,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAwC,IAAtCt9K,EAAE,IAAIohM,GAAI3+B,IAAIA,KAAKpkK,EAAE,IAAI+iM,GAAI1+B,IAAIA,KAAS3xI,EAAE,IAAI+gI,GAAI3lK,GAAG4kC,EAAE5kC,EAAE4kC,EAAErV,EAAEA,EAAErxB,QAAS0rB,EAAE+zJ,GAAGC,GAAIh5I,GAAG,GAAG/wB,EAAE7T,EAAEizI,EAAK3/H,KAAKsgB,IAAI/f,EAAE7T,EAAE4pB,EAAE5pB,GAAG6T,EAAE3B,EAAE+gI,EAAK3/H,KAAKsgB,IAAI/f,EAAE3B,EAAE0X,EAAE1X,GAAGA,EAAElS,EAAEizI,EAAK3/H,KAAKugB,IAAI3hB,EAAElS,EAAE4pB,EAAE5pB,GAAGkS,EAAEA,EAAE+gI,EAAK3/H,KAAKugB,IAAI3hB,EAAEA,EAAE0X,EAAE1X,GAAqL,IAAlLc,EAAE,IAAIiiM,GAAI/iM,EAAElS,EAAE6T,EAAE7T,EAAEkS,EAAEA,EAAE2B,EAAE3B,GAA+FtS,EAAE,IAAIg0W,IAAhG,IAAI3+J,GAAIphM,EAAE7T,EAAE,GAAG6T,EAAE3B,EAAEc,EAAEhT,EAAE,IAAM,IAAIi1M,GAAIphM,EAAE7T,EAAE,GAAGkS,EAAEA,EAAEc,EAAEhT,EAAE,IAAM,IAAIi1M,GAAI/iM,EAAElS,EAAEgT,EAAEd,EAAE,EAAE,GAAG2B,EAAE3B,EAAEc,EAAEd,EAAE,IAAoB3O,EAAE,IAAIkzK,GAAI37I,EAAE,IAAIw3I,GAAI/iJ,EAAE,IAAI+iJ,GAAI/uK,EAAEvD,EAAE65N,GAAGj6N,EAAE2D,GAAO4tL,EAAE,IAAIxrB,GAAI3lK,GAAGmxL,EAAEnxL,EAAEmxL,EAAE5hK,EAAEA,EAAErxB,QAAQ,CAAuC,IAAtC2kC,EAAE86I,GAAGC,GAAIuT,GAAG,GAAGr2J,EAAEvL,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAOhtK,EAAE5N,EAAEvD,EAAE2hP,KAAKhmC,KAAKxqM,EAAEoqM,MAA8B0kE,IAAvBhsQ,EAAE0pK,GAAGxsK,EAAEsqM,KAAK,MAAS17M,EAAQkU,EAAEjU,GAAGq1S,GAAGp1B,GAAIhsQ,EAAElU,EAAE8iC,GAAGo9O,GAAIhsQ,EAAElU,EAAEkU,EAAEjU,IAAI,IAAI86B,EAAEvL,EAAEuL,EAAEvL,EAAErxB,QAAQ+V,GAA+B,IAAvBsb,EAAEA,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAO91J,EAAE,IAAIs9I,GAAI7qI,GAAGzS,EAAEroB,EAAEqoB,EAAEkH,EAAEA,EAAErxB,QAA0B,IAAI8V,EAAE,IAAI2xJ,IAA3B1xJ,EAAE0pK,GAAGC,GAAIv1J,GAAG,MAAqB9iB,GAAGyO,EAAEhU,EAAEgU,EAAEub,EAAEA,EAAErxB,QAAQ,CAAyB,IAAxBgC,EAAEy9K,GAAGC,GAAI5pK,GAAG,KAAKrB,GAAE,EAAS3U,EAAE,IAAI2nK,GAAI7qI,GAAG98B,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,SAASuF,EAAEk6K,GAAGC,GAAI5/K,GAAG,OAAQiW,IAAI4tO,GAAI3hP,EAAEmnM,GAAI5jM,EAAE8B,EAAE,KAAKs8O,GAAI3hP,EAAEmnM,GAAI5jM,EAAE8B,EAAE,KAAKs8O,GAAI3hP,EAAEmnM,GAAI5jM,EAAE8B,EAAE,OAAOoN,GAAE,GAAOA,IAAI4c,EAAEA,EAAEA,EAAEA,EAAErxB,QAAQgC,EAAO,CAAyB,IAAvBqwP,IAAGhtP,EAAEu3B,GAAGy9K,GAAIh1M,EAAE,IAAIuzI,IAAS1zI,EAAE,IAAIuiK,GAAIp2I,GAAGnsB,EAAEpD,EAAEoD,EAAEmsB,EAAEA,EAAErxB,QAA0BypL,GAAIpkL,EAAE,IAAIqwW,IAAI/wU,GAA/B3iC,EAAEy9K,GAAGC,GAAIx6K,GAAG,MAAuBpD,EAAEE,EAAEgS,GAAI,CAA6C,IAAlCqmM,GAAIh1M,EAAE,IAAIgkK,GAApB70J,EAAE,IAAI+jK,KAAsBlxK,EAAEmN,EAAE1S,EAAE2hP,KAAKhmC,KAAWp2M,EAAEg2M,OAAwBivE,GAAI5qR,GAAtBM,EAAEy9K,GAAGp4K,EAAEk2M,KAAK,MAAcz7M,IAAIwqR,GAAI5qR,EAAEM,EAAEgS,KAAK3M,EAAEw+K,KAAoB,OAAfw0B,GAAI7lM,EAAE,IAAIqkI,IAAYrkI,CAAC,CAEjpC,SAASogX,IAAI9yX,GAAGylM,GAAIzlM,EAAE,IAAI6wU,IAAIjqJ,GAAIJ,GAAIG,GAAID,GAAI,IAAIh4B,GAAIqkO,KAAK,yBAAyB,8lBAA8lB,IAAIrlO,MAAO6tG,GAAIv7P,EAAE+yX,IAAIpyB,IAAI,KAAKplG,GAAIv7P,EAAE+yX,IAAI1jB,IAAI7uL,IAAIwvK,MAAMz0F,GAAIv7P,EAAE+yX,IAAIvyB,IAAIvQ,KAAK10F,GAAIv7P,EAAE+yX,IAAItyB,IAAI,IAAIllG,GAAIv7P,EAAE+yX,IAAItjB,IAAIjvL,IAAI4vK,MAAM70F,GAAIv7P,EAAE+yX,IAAIzqB,IAAI9nL,IAAI6vK,MAAM90F,GAAIv7P,EAAE+yX,IAAIxqB,IAAI/nL,IAAI8vK,MAAM/0F,GAAIv7P,EAAE+yX,IAAIzjB,IAAI9uL,IAAI+vK,MAAMh1F,GAAIv7P,EAAE+yX,IAAIlQ,IAAIriM,IAAIgwK,MAAMj1F,GAAIv7P,EAAE+yX,IAAIjQ,IAAItiM,IAAIiwK,MAAMl1F,GAAIv7P,EAAE+yX,IAAIhQ,IAAIviM,IAAIkwK,MAAMn1F,GAAIv7P,EAAE+yX,IAAIloC,IAAIrqK,IAAImwK,MAAMp1F,GAAIv7P,EAAE+yX,IAAI/nC,IAAIxqK,IAAIowK,MAAMr1F,GAAIv7P,EAAE+yX,IAAIznC,IAAI9qK,IAAIqwK,MAAMt1F,GAAIv7P,EAAE+yX,IAAIvnC,IAAIhrK,IAAIswK,MAAMv1F,GAAIv7P,EAAE+yX,IAAIrnC,IAAIlrK,IAAIuwK,MAAMx1F,GAAIv7P,EAAE+yX,IAAIxjB,IAAI/uL,IAAIwwK,MAAMz1F,GAAIv7P,EAAE+yX,IAAIC,IAAIxyM,IAAIywK,MAAM11F,GAAIv7P,EAAE+yX,IAAI3nC,IAAI5qK,IAAI2wK,MAAM51F,GAAIv7P,EAAE+yX,IAAI7nC,IAAI1qK,IAAI4wK,MAAM71F,GAAIv7P,EAAE+yX,IAAInnC,IAAIprK,IAAI6wK,KAAK,CACpqC,SAAS4hC,IAAI/gX,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAIr3B,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EA/5DrC1S,EA+5DuC,GAAM,MAAHD,EAAS,OAAO,KAAK,GAAGmS,EAAElS,GAAGuvB,EAAEwsM,KAAM,MAAM7oD,GAAI,IAAI2O,GAAIiiM,IAAIv0V,EAAEwvK,KAAKglL,MAAM,GAAGl6L,GAAGt6J,EAAE,KAAK,CAAoB,GAAnB7c,EA9lB7I,SAAa1S,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAE,GAAM,MAAH2M,GAAS,KAAQlS,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAIkgD,IAAGx6O,EAAE,EAAE,IAA7BD,EAAiC,IAAIg/K,GAAI/+K,EAAEA,GAAID,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAA8B,GAAqB,OAAd,OAAb15K,GAAjBgqB,EAAEouJ,GAAGwB,IAAIp/K,GAAG,MAASwvB,GAAcA,EAAEi1O,GAAGj/P,GAAU,OAAOgqB,OAAS,KAAQvvB,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAIkgD,IAAGx6O,EAAE,EAAE,IAA7BD,EAAiC,IAAIg/K,GAAI/+K,EAAEA,GAAID,EAAEwF,GAAGxF,EAAE/B,EAAEihL,MAAwB,GAAGo9C,GAAInqN,EAAY,OAAT3M,GAA3BgqB,EAAEouJ,GAAGwB,IAAIp/K,GAAG,MAAmBwvB,GAAUA,EAAEi1O,GAAGj/P,GAAK,OAAOgqB,EAAI,OAAO,IAAI,CA8lB1K2jW,CAAIv1M,GAAGpuJ,EAAE,KAAKxvB,IAAO2S,EAAG,MAAMwgK,GAAI,IAAI2O,GAAIsxM,IAAIpzX,EAAE,mCAAmCwvB,EAAEwvK,KAAK,MAAM,OAAOrsL,CAAC,CAAC,OAAOmvS,IAAKxhE,MAAMwiF,KAAKtzS,GAAGk2F,MAAM,KAAK,EAAG1lH,EAAEmwT,IAAInwT,GAAE,GAAO,MAAM,KAAK,EAAGA,EAAEmwT,IAAInwT,GAAE,GAA+B,GAAlBwF,EAAEs8S,GAAIghB,IAAItzS,GAAGusJ,KAAW,OAAOv2K,EAAEw2N,KAAKC,KAAKC,GAAG12N,EAAExF,GAAqB,GAAlBH,EAAEiiT,GAAIghB,IAAItzS,GAAGwsJ,KAAU,CAAW,IAAVrpK,EAAE,IAAI4/J,GAAiBx+J,EAAE,EAAEd,GAAb3R,EAAEm4S,GAAIz5S,IAAW7B,OAAO4V,EAAEd,IAAIc,EAAG1B,EAAE/Q,EAAEyS,GAAGiiK,GAAIrjK,EAAE9S,EAAEm8N,KAAKC,KAAKC,GAAGr8N,EAAEwS,IAAI,OAAOM,CAAC,CAAmB,KAAlBsB,EAAE6tS,GAAIghB,IAAItzS,GAAGy0V,MAAW3iV,KAAK,CAAC,IAAIj+B,EAAE4Q,EAAE2nM,KAAKv4M,EAAEm4M,MAAM,CAACr7M,EAAEy9K,GAAGv6K,EAAEq4M,KAAK,KAAK,IAA0B,GAAM,OAA5B/oM,EAAExS,EAAE67N,KAAKC,KAAKC,GAAG/7N,EAAEH,IAAe,OAAO2S,CAAE,CAAC,MAAM1S,GAAY,IAAI6pL,GAAb7pL,EAAE8pL,GAAI9pL,GAAY,IAAI,MAAMkzK,GAAIlzK,EAAE,CAAC,CAAC,MAAMkzK,GAAI,IAAI2O,GAAIsxM,IAAIpzX,EAAE,4DAA4DwvB,EAAEwvK,KAAK,KAAK,CAA8B,GAA7BphB,GAAGpuJ,EAAE,KAAKivK,OAAK1jK,GA/5D5vB96B,EA+5DkwBuvB,EAAEk2U,MA/5DzuB,IAAJ,EAAJzlW,EAAEhC,GAAQgC,GAAG+yL,IAAIxC,IAAGvwL,GAAGozL,IAAGxC,IAAG5wL,GAAGmzL,IAAGxC,IAAG3wL,GAAGizL,IAAGxC,IAAGzwL,GAAGszL,IAAGzC,IAAG7wL,GAAGyzL,IAAI3C,IAAG9wL,GAAGswL,IAAGE,IAAG04C,IAAGlpO,EAApF,MA+5DmwB,OAAO,KAAK,GAAG86B,GAAGouM,IAAG,CAACzlO,EAAE,EAAE,IAAIA,EAAEu0L,IAAIj4L,EAAEk4L,IAAIC,KAAKuE,GAAG,CAAC,MAAMz8L,GAAY,IAAG6pL,GAAZ7pL,EAAE8pL,GAAI9pL,GAAW,KAA2B,MAAMkzK,GAAIlzK,GAAtByD,EAAPioR,GAAI3rR,GAAO,EAAoB,CAAC,OAAOwxS,GAAI9tS,EAAE,CAAC,GAAGq3B,GAAGsgN,IAAG,CAAC,IAAIp9O,EAAE,EAAEA,EAAEo5W,IAAIl5W,SAASF,EAAG,IAAI,OAAOmrM,GAAIiuK,IAAIp5W,GAAG+B,EAAE,CAAC,MAAMC,GAAY,IAAI6pL,GAAb7pL,EAAE8pL,GAAI9pL,GAAY,IAAI,MAAMkzK,GAAIlzK,EAAE,CAAE,MAAMkzK,GAAI,IAAI2O,GAAIsxM,IAAIpzX,EAAE,uGAAuG,CAAC,MAAMmzK,GAAI,IAAI2O,GAAIsxM,IAAIpzX,EAAE,kBAAkB,CAEprC,SAASszN,MAAMA,IAAI3+E,EAAekgJ,IAAX8gE,IAAI,IAAIzgI,IAAWx1C,MAAMurM,KAAKpH,KAAKhvF,IAAG8gE,IAAIytB,IAAIS,KAAKhvF,IAAG8gE,IAAIytB,IAAIO,KAAK9uF,IAAG8gE,IAAIutB,IAAIgI,KAAKr2F,IAAG8gE,IAAIutB,IAAIW,KAAKhvF,IAAG8gE,IAAIstB,IAAIY,KAAKhvF,IAAG8gE,IAAIstB,IAAIW,KAAK/uF,IAAG8gE,IAAIwtB,IAAIO,KAAK7uF,IAAG8gE,IAAIwtB,IAAIU,KAAKhvF,IAAG8gE,IAAI92C,IAAI4kE,KAAK5uF,IAAG8gE,IAAI92C,IAAIglE,KAAKhvF,IAAG8gE,IAAI92C,IAAI+kE,KAAK/uF,IAAG8gE,IAAI92C,IAAI6kE,KAAK7uF,IAAG8gE,IAAI8tB,IAAI5kE,KAAKhqB,IAAG8gE,IAAI8tB,IAAIE,KAAK9uF,IAAG8gE,IAAI8tB,IAAIyH,KAAKr2F,IAAG8gE,IAAI8tB,IAAII,KAAKhvF,IAAG8gE,IAAI6tB,IAAIA,KAAK3uF,IAAG8gE,IAAI6tB,IAAII,KAAK/uF,IAAG8gE,IAAI6tB,IAAIG,KAAK9uF,IAAG8gE,IAAI0tB,IAAIA,KAAKxuF,IAAG8gE,IAAI0tB,IAAIO,KAAK/uF,IAAG8gE,IAAI0tB,IAAI6H,KAAKr2F,IAAG8gE,IAAI4tB,IAAIA,KAAK1uF,IAAG8gE,IAAI4tB,IAAIG,KAAK7uF,IAAG8gE,IAAI4tB,IAAII,KAAK9uF,IAAG8gE,IAAI2tB,IAAIA,KAAKzuF,IAAG8gE,IAAI2tB,IAAII,KAAK7uF,IAAG8gE,IAAI2tB,IAAI4H,KAAKr2F,IAAG8gE,IAAIiuB,IAAIX,KAAKpuF,IAAG8gE,IAAIiuB,IAAI/kE,KAAKhqB,IAAG8gE,IAAIiuB,IAAIJ,KAAK3uF,IAAG8gE,IAAIiuB,IAAIP,KAAKxuF,IAAG8gE,IAAIiuB,IAAIC,KAAKhvF,IAAG8gE,IAAIiuB,IAAIA,KAAK/uF,IAAG8gE,IAAIiuB,IAAID,KAAK9uF,IAAG8gE,IAAIiuB,IAAIsH,KAAKr2F,IAAG8gE,IAAI+tB,IAAIP,KAAKtuF,IAAG8gE,IAAI+tB,IAAI7kE,KAAKhqB,IAAG8gE,IAAI+tB,IAAIH,KAAK1uF,IAAG8gE,IAAI+tB,IAAIJ,KAAKzuF,IAAG8gE,IAAI+tB,IAAIA,KAAK7uF,IAAG8gE,IAAI+tB,IAAIC,KAAK9uF,IAAG8gE,IAAI+tB,IAAIwH,KAAKr2F,IAAG8gE,IAAI+tB,IAAIG,KAAKhvF,IAAG8gE,IAAIguB,IAAIP,KAAKvuF,IAAG8gE,IAAIguB,IAAIF,KAAK5uF,IAAG8gE,IAAIguB,IAAIH,KAAK3uF,IAAG8gE,IAAIguB,IAAIJ,KAAK1uF,IAAG8gE,IAAIguB,IAAIC,KAAK/uF,IAAG8gE,IAAIguB,IAAID,KAAK7uF,IAAG8gE,IAAIguB,IAAIA,KAAK9uF,IAAG8gE,IAAIguB,IAAIE,KAAKhvF,IAAG8gE,IAAIu1B,IAAIhI,KAAKruF,IAAG8gE,IAAIu1B,IAAIzH,KAAK5uF,IAAG8gE,IAAIu1B,IAAI7H,KAAKxuF,IAAG8gE,IAAIu1B,IAAI5H,KAAKzuF,IAAG8gE,IAAIu1B,IAAItH,KAAK/uF,IAAG8gE,IAAIu1B,IAAIxH,KAAK7uF,IAAG8gE,IAAIu1B,IAAIA,KAAKr2F,IAAG8gE,IAAIu1B,IAAIrH,KAAKhvF,IAAG8gE,IAAIkuB,IAAIoH,KAAKp2F,IAAG8gE,IAAIkuB,IAAIT,KAAKvuF,IAAG8gE,IAAIkuB,IAAIX,KAAKruF,IAAG8gE,IAAIkuB,IAAIZ,KAAKpuF,IAAG8gE,IAAIkuB,IAAIV,KAAKtuF,IAAG8gE,IAAIkuB,IAAIhlE,KAAKhqB,IAAG8gE,IAAIkuB,IAAIJ,KAAK5uF,IAAG8gE,IAAIkuB,IAAID,KAAK/uF,IAAG8gE,IAAIkuB,IAAIH,KAAK7uF,IAAG8gE,IAAIkuB,IAAIF,KAAK9uF,IAAG8gE,IAAIkuB,IAAIqH,KAAKr2F,IAAG8gE,IAAIkuB,IAAIA,IAAI,CACzrC,SAASwP,IAAIpzX,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAI0B,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAA4C,IAA1C5kC,EAAED,EAAE,IAAIk1M,GAAI3+B,IAAIA,KAAKt2K,EAAEuvB,EAAE,IAAI0lL,GAAI1+B,IAAIA,KAASvjK,EAAEd,EAAEypM,KAAK3oM,EAAEuoM,MAAuB,IAAItnM,EAAE,IAAI0xJ,GAAxBgY,GAAG3qK,EAAEyoM,KAAK,IAAoBz7M,GAAGiU,EAAEjU,EAAEiU,EAAEsb,EAAEA,EAAErxB,QAAS2V,EAAE8pK,GAAGC,GAAI3pK,GAAG,IAAIjU,EAAED,EAAEC,EAAEizI,EAAK3/H,KAAKsgB,IAAI5zB,EAAED,EAAEC,EAAE6T,EAAEjU,EAAEI,EAAE6T,EAAE9T,EAAEmS,GAAGlS,EAAED,EAAEmS,EAAE+gI,EAAK3/H,KAAKsgB,IAAI5zB,EAAED,EAAEmS,EAAE2B,EAAEjU,EAAEsS,EAAE2B,EAAE9T,EAAEA,GAAGC,EAAEuvB,EAAEvvB,EAAEizI,EAAK3/H,KAAKugB,IAAI7zB,EAAEuvB,EAAEvvB,EAAE6T,EAAEjU,EAAEI,EAAE6T,EAAE3T,EAAEF,EAAE6T,EAAE9T,EAAEwvB,GAAGvvB,EAAEuvB,EAAErd,EAAE+gI,EAAK3/H,KAAKugB,IAAI7zB,EAAEuvB,EAAErd,EAAE2B,EAAEjU,EAAEsS,EAAE2B,EAAE3T,EAAEgS,EAAE2B,EAAE9T,EAAEC,GAAc,IAAVyD,EAAE,IAAIm0K,GAAQ9jK,EAAE5B,EAAEypM,KAAK7nM,EAAEynM,MAAuBx7M,EAAE0uX,IAAIzuX,EAApB29K,GAAG7pK,EAAE2nM,KAAK,KAAe1lC,GAAItyK,EAAEzD,EAAED,GAAGA,EAAEC,EAAED,EAAEC,GAAG29K,GAAG4qB,IAAIxoM,EAAEwvB,GAAGy4K,MAAMoxG,MAAM,IAAI/3Q,KAA0G,IAArGrhC,EAAEkS,GAAGssS,MAAM55Q,EAAE,IAAIg2G,IAAM9/G,EAAE,IAAIskQ,GAAI7vQ,GAAGqV,EAAE1yB,EAAEwtW,IAAI96U,EAAE9J,EAAEr3B,GAAGmhC,GAAGu7U,KAAKjgX,EAAEF,EAAEkS,EAAE,IAAIspK,GAAIt7K,IAAIF,EAAEuF,EAAE,IAAIqjL,GAAI5oL,EAAEA,EAAEA,EAAEkS,EAAE4oB,EAAEv1B,EAAMoN,EAAE,IAAIgzJ,GAAIliK,EAAEzD,GAAG2S,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,QAAwD,IAA/CqH,EAAEo4K,GAAGC,GAAIjrK,GAAG,KAAK0V,EAAEwmO,GAAI7uP,EAAEkS,EAAE3M,GAAG2gW,IAAI3gW,EAAEgqB,EAAElH,EAAEroB,EAAEqoB,EAAEnW,GAAO8B,EAAE,IAAI2xJ,GAAIpgK,EAAEgqB,EAAEvvB,GAAGgU,EAAEhU,EAAEgU,EAAEub,EAAEA,EAAErxB,SAASkF,EAAEu6K,GAAGC,GAAI5pK,GAAG,KAAS3S,IAAI49P,MAAMC,OAAMxsP,EAAEy/U,IAAInyV,EAAEoD,EAAExD,EAAE+9K,GAAG4qB,IAAInlM,GAAG4kM,MAAMe,MAAM,KAAKlpB,GAAI69B,GAAIt6M,EAAExD,GAAG8S,IAAK,IAAIooB,EAAE,IAAI6qI,GAAIliK,EAAEzD,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAA0B,IAAIkU,EAAE,IAAIuzJ,GAAI49I,GAA/Bh+S,EAAEo4K,GAAGC,GAAI9iJ,GAAG,OAA2B1oB,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAAgF,IAAxCu0N,GAAf7oM,EAAE,IAAIq+J,IAAtBjqL,EAAE2/K,GAAGC,GAAIxrK,GAAG,KAAgBpS,GAAQ,EAAEy1P,GAAIz3P,EAAEuxB,IAAIq2M,GAAIh8M,EAAE6rO,GAAIz3P,EAAE+B,IAAIH,EAAE,KAAS2D,EAAEu7P,IAAIl1O,EAAE,GAAGrmB,EAAE2O,GAAG3O,EAAExD,EAAEwvB,GAAIpe,EAAEwsK,GAAGohF,GAAIx7P,GAAG,GAAO3D,GAAmBygL,GAAGzgL,EAAEI,EAAEmR,EAAEnR,IAAIA,EAAEuF,EAAEvF,EAAEizI,EAAK3/H,KAAKsgB,IAAI5zB,EAAEuF,EAAEvF,EAAEJ,EAAEI,GAAGA,EAAEA,EAAEA,EAAEizI,EAAK3/H,KAAKugB,IAAI7zB,EAAEA,EAAEA,EAAEJ,EAAEI,IAAWqgL,GAAGzgL,EAAEsS,EAAEf,EAAEe,KAAIlS,EAAEuF,EAAE2M,EAAE+gI,EAAK3/H,KAAKsgB,IAAI5zB,EAAEuF,EAAE2M,EAAEtS,EAAEsS,GAAGlS,EAAEA,EAAEkS,EAAE+gI,EAAK3/H,KAAKugB,IAAI7zB,EAAEA,EAAEkS,EAAEtS,EAAEsS,IAAGtS,EAAEuR,GAAhLvR,EAAEuR,EAAkL4hN,GAAI/yN,EAAEuF,GAAGs6K,GAAI7/K,EAAEA,EAAEA,EAAEuF,EAAE,CAErsC,SAAS4zW,IAAIn5W,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAIr3B,EAAEzF,EAAIqD,EAAI2R,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAIyY,EAAEgb,EAAE/B,EAAE,IAAG3wB,EAAEmvB,KAAL,CAAqE,GAAnD97B,EAAE,IAAIi0K,GAAyBt5K,GAArBuD,EAAE8rB,GAAIouJ,GAAGzrK,EAAEmpM,GAAG,GAAG,KAAQ9rL,EAAE+yS,OAAMtvT,EAAE9S,EAAElC,EAAEqD,KAAW49P,MAAMgF,MAAMjxP,GAAGkkR,KAAKlkR,GAAGksP,KAAKlsP,GAAGokR,IAAM,MAAMlkH,GAAI,IAAI2O,GAAI,2EAAsR,IAA3Mm7B,GAAIz3M,EAAEmwP,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC3zL,EAAElC,EAAE4B,EAAEM,EAAEN,EAAEM,EAAEF,OAAUy/K,MAAMm/H,KAAK3+G,GAAG//L,EAAEkS,KAAI4B,EAAEssK,GAAIC,GAAGgoB,IAAIroM,GAAG8nM,MAAM62G,QAAiE9hG,GAAIx3M,EAA3D,IAAI0vM,GAAIygD,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAAC3zL,EAAElC,EAAE4B,EAAEM,EAAEN,EAAEM,EAAEF,KAAKA,EAAEgU,GAAWzO,EAAEgqB,EAAErd,EAAE3M,EAAEgqB,IAAGluB,EAAE,KAAKtB,GAAE,EAAM/B,EAAEkU,EAAEypM,KAAW39M,EAAEu9M,MAAoC,IAAdzgL,EAAd6iJ,GAAG3/K,EAAEy9M,KAAK,IAAQz7M,GAAOkS,IAASnS,GAAiDg9M,GAAIx3M,EAAhD+kN,GAAIzqC,GAAIx+K,GAAGioN,GAAS,GAALxuL,EAAE5oB,GAAMyrK,GAAG7iJ,EAAE96B,EAAEA,EAAEuvB,EAAE,KAAK,IAAahqB,EAAEgqB,EAAErd,EAAE3M,EAAEgqB,GAAGxvB,GAAE,GAAWA,GAAE,EAAKsB,EAAE4kN,IAAKqD,GAAS,GAALxuL,EAAE5oB,GAAMyrK,GAAG7iJ,EAAEvL,EAAErd,EAAEqd,EAAE,KAAKgqK,GAAGh0L,EAAEu1B,GAAG2mK,GAAI3mK,IAAI13B,EAAEK,EAAE1D,EAAK6+S,IAAI3+G,GAAG78L,EAAEgP,KAAI4B,EAAEssK,GAAIC,GAAGgoB,IAAInlM,GAAG4kM,MAAM62G,QAAiE9hG,GAAIx3M,EAA3D,IAAI0vM,GAAIygD,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACzwL,EAAEpF,EAAE4B,EAAEwD,EAAExD,EAAEwD,EAAEpD,KAAKA,EAAEgU,GAAWzO,EAAEgqB,EAAErd,EAAE3M,EAAEgqB,IAAGytL,GAAIz3M,EAAEmwP,GAAIn3E,GAAGC,GAAG/3D,IAAG,GAAGotE,IAAI,EAAE,EAAE,CAACzwL,EAAEpF,EAAE4B,EAAEwD,EAAExD,EAAEwD,EAAEpD,MAAMA,EAAED,IAAI86Q,KAAME,OAAUzxD,GAAS,GAAL/jN,EAAE2M,GAATQ,EAAeirK,GAAGp4K,EAAEvF,EAAEA,EAAEuvB,EAAE,GAAI1b,EAAE8pK,GAAGoiG,IAAGx6Q,EAAE,GAAG,IAAG0O,EAAE,IAAIkgP,GAAI2kD,GAAI54S,EAAEkS,KAAMpS,GAAG,EAAEiU,EAAE/B,GAAG,EAAEmW,EAAEwyM,GAAI,IAAI5lB,GAAIphM,EAAE7T,EAAE6T,EAAE3B,GAAGQ,GAAwCmtK,GAArC1uK,EAAE,IAAI8jM,GAAIy7C,GAAIz8O,EAAEjU,EAAEqoB,EAAEroB,GAAG0wP,GAAIz8O,EAAE/B,EAAEmW,EAAEnW,IAAUQ,GAAcqjO,GAAT+oB,IAAIv5P,EAAE,GAAS4L,GAAMm4M,GAAS,GAAL/jN,EAAE2M,GAAT0X,EAAe+zJ,GAAGp4K,EAAEgqB,EAAErd,EAAEqd,EAAE,GAAIqV,EAAE+4I,GAAGoiG,IAAGx6Q,EAAEA,EAAE2M,EAAE,GAAG,IAAG+B,EAAE,IAAIkgP,GAAI2kD,GAAI11S,EAAEgP,KAAMpS,GAAG,EAAEiU,EAAE/B,GAAG,EAAEmW,EAAEwyM,GAAI,IAAI5lB,GAAIrwK,EAAE5kC,EAAE4kC,EAAE1yB,GAAG0X,GAAwCi2J,GAArCh9I,EAAE,IAAIoyK,GAAIy7C,GAAIz8O,EAAEjU,EAAEqoB,EAAEroB,GAAG0wP,GAAIz8O,EAAE/B,EAAEmW,EAAEnW,IAAU0X,GAAG6oM,GAAGltN,EAAEA,EAAE2M,EAAE,EAAE2wB,IAAcjjC,EAAE,IAAIs0W,IAAI3uW,GAAGg0L,GAAG91L,EAAEzD,EAAE08T,IAAI98T,GAApoC,CAAuoC,CAC9tC,SAASyzX,IAAIrzX,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAMpC,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAEC,EAAEC,EAAEz7F,EAAE27F,EAAItjJ,EAAEujJ,EAAEltJ,EAAElY,EAAEomK,EAAExvJ,EAAkT,GAA5P7xB,GAApD8C,EAAE0pK,GAAG0O,KAAMrsL,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,GAAG,GAAG,KAAQkyJ,KAAK7gK,EAAE0Q,EAAEm5M,KAAK/kM,EAAEpU,EAAEq+M,KAAK,EAAElvN,EAAE6Q,EAAEi2V,KAAK,EAAKrgL,GAAG51K,EAAE,OAAkB9C,GAAGg/O,GAAft8O,EAAE8pK,GAAG1pK,EAAE,MAAejW,EAAEmT,GAAGg/O,GAAIt8O,GAAG7V,GAAEmT,GAAGkX,EAAE9kB,GAAGH,EAAsDwyF,GAApDw7F,EAAEzT,GAAG0O,KAAMrsL,EAAEkS,IAAIlS,EAAEkS,EAAE,IAAI64M,GAAI19B,IAAGrtL,EAAE,EAAE,IAAIA,EAAEkS,GAAG,GAAG,KAAQkyJ,KAAKmtB,EAAEH,EAAEg8B,KAAK/7B,EAAED,EAAEkhC,KAAK,EAAE1oM,EAAEwnK,EAAE84K,KAAK,EAAKrgL,GAAGuH,EAAE,OAAkBx7F,GAAGu6J,GAAfh/D,EAAExT,GAAGyT,EAAE,MAAepzL,EAAE43F,GAAGu6J,GAAIh/D,GAAGnzL,GAAE43F,GAAGy7F,EAAEE,GAAG3nK,EAA4C,KAArC5pB,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,GAAGhC,EAASurL,KAAH9lL,EAAW,IAAI6tJ,GAAO25B,KAAMjrL,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,GAAGyD,QAAQ,KAAKzD,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,GAAGhC,EAAE,EAAkD,IAA/CkC,EAAE,IAAIwwN,KAAM1wN,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,IAAUE,EAAEqF,GAAGrF,EAAElC,EAAEihL,MAAM4tJ,IAAI3sU,GAA+b,IAAtY8T,EAAE4hF,EAAEA,EAAEzkF,EAAEkX,EAAGrU,EAAE7C,EAAEkX,EAAGutE,EAAEzkF,EAAEkX,IAAIrU,EAAE7C,EAAEkX,GAAG3V,EAAE6+K,EAAEA,EAAEhuL,EAAEH,EAAGsP,EAAEnP,EAAEH,EAAGmuL,EAAEhuL,EAAEH,IAAIsP,EAAEnP,EAAEH,GAAG4Q,EAAE7C,EAAEkX,GAAGrU,EAAE7C,EAAEkX,GAAG3V,EAAEnP,EAAEH,GAAGsP,EAAEnP,EAAEH,IAAI4Q,EAAE7C,EAAEkX,GAAGk6L,GAA3J5vM,EAAEgrK,GAAG0O,KAAMrsL,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,GAAG,GAAG,KAAiHgU,GAAGwuM,GAAI7vM,EAAED,GAAGkyB,EAAEzzB,EAAEA,EAAEykF,EAAEy7F,EAAGzsJ,EAAEgxD,EAAEy7F,EAAGlgL,EAAEykF,EAAEy7F,IAAIzsJ,EAAEgxD,EAAEy7F,GAAGxuJ,EAAEt/B,EAAEA,EAAEguL,EAAE3nK,EAAGiZ,EAAE0uJ,EAAE3nK,EAAGrmB,EAAEguL,EAAE3nK,IAAIiZ,EAAE0uJ,EAAE3nK,GAAGgb,EAAEgxD,EAAEy7F,GAAGzsJ,EAAEgxD,EAAEy7F,GAAGxuJ,EAAE0uJ,EAAE3nK,GAAGiZ,EAAE0uJ,EAAE3nK,IAAIiZ,EAAE0uJ,EAAE3nK,GAAGy4L,GAAI1vM,EAAEiyB,GAAG09K,GAAI3vM,EAAEkwB,GAAGwkL,MAAM10M,EAAE3S,IAAI2S,EAAE3S,EAAE,IAAIg/K,GAAI7qJ,IAAGxhB,EAAE,IAAIA,EAAE3S,IAAI86B,EAAEw/R,IAAIpoT,EAAE,GAAG+B,GAAGm9K,KAAKt2J,EAAE02J,EAAE5sJ,EAAE5wB,EAAEw+K,EAAE3vJ,EAAEnwB,EAA4BoB,EAAI,mBAA5Bm/H,EAAK3/H,KAAKuc,KAAK2hK,EAAEA,EAAEgB,EAAEA,GAA2BluJ,EAAEktJ,GAAG12J,EAAE,GAAGkI,EAAEwvJ,GAAG13J,EAAE,GAAGmT,EAAEj6B,EAAEoY,EAAE1Z,EAAMrR,EAAE,EAAEA,EAAEy5B,EAAEz5B,IAAU+qB,GAAG4W,GAAEhwB,GAAVi7B,GAAG3J,GAAWgoM,IAAIp6N,EAAE,IAAIo0S,IAAIxyS,EAAEA,EAAE,GAAI,EAAGd,EAAE,EAAGA,EAAEuc,IAAIvc,EAAEuc,EAAE,IAAG3vB,EAAEwsB,EAAEkgN,IAAIp6N,EAAE,IAAIo0S,IAAIxyS,EAAEA,EAAE,GAAI,EAAGlU,EAAE,EAAGA,EAAEG,IAAIH,EAAEG,EAAE,GAAMwpL,KAAmBs4B,GAAtBt8M,EAAW,IAAI8rJ,GAAar+I,GAAG8uM,GAAIv8M,EAAE3F,GAAGqrL,KAAMt4K,EAAE3S,IAAI2S,EAAE3S,EAAE,IAAIg/K,GAAI7qJ,IAAGxhB,EAAE,IAAIA,EAAE3S,GAAGuF,EAAG,CAC9vC,SAAS83J,MAAMA,IAAI3oB,EAASqrB,MAAL0oN,IAAW6K,IAAKC,IAAIC,IAAIpoE,IAAIoM,IAAInxE,IAAIotI,IAAIntI,IAAIu8G,IAAIx3C,IAAIqoE,IAAIhrL,IAAI8gL,IAAIhhL,IAAIkhL,IAAIjhL,IAAIkhL,IAAIr+D,IAAInD,IAAI+C,IAAIkD,IAAI7nE,IAAIotI,IAAIpoE,IAAIk+D,IAAI78D,IAAIiK,IAAS95J,MAAL64M,IAAWge,IAAKpoE,IAAIqoE,IAAI/rE,IAAIgsE,IAAI/rE,IAAIgsE,IAAIC,IAAI,IAAItwK,GAAIuwH,IAAIj8H,GAAI,IAAIgzJ,IAAIipB,IAAIpoB,IAAIqoB,IAAI/0D,IAAIg1D,IAAI7R,IAAI8R,IAAI7U,IAAI8U,IAAIzqC,IAAI0qC,IAAIvtB,IAAIwtB,IAAIC,IAAIC,IAAIC,IAAIC,IAAIrtB,IAAIstB,IAAInwB,IAAIowB,IAAI5tB,IAAI6tB,IAAI3tB,IAAI4tB,IAAI5hC,IAAI6hC,IAAIvoE,IAAIwoE,IAAIvoE,IAAIwoE,IAAIpc,IAAIqc,IAAIC,IAAIC,IAAIC,IAAI,IAAI3xK,GAAI,IAAImuJ,IAAI,IAAIpuJ,GAAI04F,IAAIk5E,KAAU/sG,KAAWma,IAAI,IAAIh/E,GAAI6xK,IAA5BC,IAAW9sG,KAA0B+oF,IAAI,IAAI/tJ,GAAIwpB,IAAI,GAAGu0I,IAAI,IAAI/9J,GAAI4qG,IAAIt2G,GAAI,IAAI4tG,IAAI,IAAIliG,GAAI8qG,IAAIC,KAAKunD,IAAIgZ,IAAIltF,IAAIpX,IAAIi8D,IAAIm+B,IAAI2Q,IAAIj4D,IAAIj/D,IAAIm3H,IAAIpoB,IAAIt6C,IAAIuxB,IAAI,IAAI7gI,GAAIymI,KAAKz8H,MAAM,IAAO6iH,IAAI44C,IAAI14C,IAAIw+C,IAAIhqC,IAAIvoC,IAAIwoC,IAAI7iE,IAAI8iE,IAAIroC,IAASnqB,KAAWgzB,IAAI,IAAIjiG,GAAImhK,IAA5B8Q,IAAW/iG,KAA0B8uC,IAAI37H,IAAIs5D,IAAIkqH,IAAIhU,IAAI9wC,IAAImxD,IAAIxzG,IAAIyzG,IAAIxM,IAASt2F,MAAW,IAAIrvE,GAAIi8I,IAAxBm2B,IAAW5iG,KAAsB6iG,IAAIx2B,IAAIy2B,IAAIx2B,IAAIy2B,IAAIv2B,IAAIw2B,IAAIz2B,IAAIz2C,IAAImtE,IAAIxU,IAAIyU,IAAIpV,IAAIqV,IAAIt2D,IAAIu2D,IAAIvqF,IAAIwqF,IAAI1gB,IAAI2gB,IAAI9tE,IAAI+tE,IAAI3gB,IAAI4gB,IAAItU,IAAIuU,IAAIxU,IAAIyU,IAAIjuE,IAAIkuE,IAAI3U,IAAI4U,IAAI7e,IAAI8e,IAAIxd,IAAIyd,IAAIvqD,IAAIwqD,IAAIrV,IAAIsV,IAAIC,IAAIC,IAAItV,IAAIuV,IAAIv3D,IAAIw3D,IAAI5pD,IAAI6pD,IAAI1yI,IAAI2yI,IAAIpyC,IAAIvQ,IAAIjP,IAAI6xD,IAAI1e,IAAI2e,IAAIjc,IAAIkc,IAAIC,IAAIC,IAAI5V,IAAI6V,IAAIC,IAAIC,IAAIC,IAAIC,IAAIvzC,IAAI/nC,IAAI59C,IAAI3mD,IAAIq8E,IAAIgjC,IAAIgD,IAAIk1C,IAAIuoB,IAAIhyD,IAAIk7C,IAAI+W,IAAIv5H,IAAIw5H,IAAI/c,IAAIgd,IAAIpgB,IAAIqgB,IAAI9+B,IAAI0Q,IAAIwL,IAAI6iB,IAAIC,IAAIC,IAAIvK,IAAIwK,IAAIvK,IAAIwK,IAAIt6H,IAAIg+C,IAAIu8E,IAAIC,IAAI7X,IAAI8X,IAAIlrE,IAAImrE,IAAIpyB,IAAIqyB,IAAI5c,IAAI6c,IAAIC,IAAIC,IAAI1X,IAAI2X,IAAIxrB,IAAI+b,IAAI0P,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIhY,IAAI7wB,IAAIk6B,IAAI4O,IAAI7O,IAAI8O,IAAI5zB,IAAI6zB,IAAIC,IAAIC,IAAI9zB,IAAI+zB,IAAI9zB,IAAI+zB,IAAIvkB,IAAIwkB,IAAI31C,IAAI41C,IAAIxY,IAAIyY,GAAG,CACpwC,SAASvf,IAAIl7W,EAAEkS,GAAS,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAIE,EAAEz7F,EAAoB,GAApF82M,MAAkE9nQ,EAAE5kC,EAAEuF,EAAErF,EAAEF,EAAED,EAAEwF,EAAEvF,EAAEA,EAAQ,GAAH4kC,EAAM,OAAO1yB,GAAG,KAAK,EAAE,MAAO,IAAI,KAAK,EAAE,OAAO66K,IAAI,KAAK,EAAE,MAAO,OAAO,KAAK,EAAE,MAAO,QAAQ,KAAK,EAAE,MAAO,SAAS,KAAK,EAAE,MAAO,UAAU,KAAK,EAAE,MAAO,WAAW,QAA2D,OAAnDxpL,EAAE,IAAIihL,IAAWxkL,GAAPkS,EAAE,EAAQ,MAAe,KAAQ3O,EAAEvD,IAAIkS,EAAS3O,EAAEvD,EAA4C,GAA7BqoB,EAAE41J,GAAGo3C,IAAGC,IAAI,IAAvBrhN,EAAI,GAAF/T,EAAK,EAAE,GAAmB,EAAE,GAAG,GAAGqvB,EAAEtb,EAAQ,GAAH/T,EAAa,IAAPuD,EAAE8B,EAAE,IAAQ,EAAE,CAACqwF,EAAEgjG,GAAIn1L,EAAEo1L,KAAK,GAAGz1L,EAAEwyF,EAAEA,EAAE+0G,IAAI/0G,EAAE,IAAIvtE,IAAIkH,GAAG,GAAG06L,GAAIknD,GAAI/tQ,EAAE21L,GAAInjG,EAAE,MAAM6mG,UAAoB,GAAVyQ,GAAIt3G,EAAE,GAAM,KAAK,CAACA,EAAEnyF,EAAE,GAAGL,EAAEwyF,EAAEA,EAAEA,EAAE,GAAG,EAAEvtE,IAAIkH,GAAOnsB,EAAI,GAAFwyF,EAAN,GAAY6mG,UAAa,GAAH7mG,EAAK,KAAM,CAA4B0tK,IAAI/9P,EAAE,EAAjC4rL,EAAElT,GAAGmV,IAAGsW,IAAI,GAAGxpM,EAAE,GAAG,GAAiB,EAAdmxL,EAAEnxL,GAAiBqxL,EAAE,OAAW,CAAK,IAAJ3nK,EAAE,EAAMxX,EAAEi/K,EAAE,EAAEj/K,GAAG,EAAEA,IAAoCM,EAAEu9T,IAA/BvlI,GAAI/R,GAAI/uK,EAAE,IAAIgvK,GAAIzH,EAAE/+K,GAAGymL,OAAe1H,EAAE/+K,GAAG63M,GAAIv3M,GAAGkX,EAAEqgM,GAAI4lB,GAAIn9N,EAAE,KAAKmB,EAAEo2M,GAAIrgM,GAAG5V,EAAEub,EAAE,GAAGlH,IAAIkH,GAAG,GAAG1b,EAAE,GAAG4oL,UAAsB,IAAX5oL,EAAEA,EAAE,GAAG,IAAU,GAAH0b,GAAc,IAARxvB,EAAE,EAAEiU,EAAEub,EAAMvxB,EAAE,EAAEA,EAAE+B,GAAGwvB,EAAE,EAAEvxB,IAAKqqB,IAAIkH,GAAG,GAAS,IAANzb,EAAEu9K,EAAE,EAAa,GAANF,EAAEr9K,GAAMA,IAAK,GAAM,GAAHA,EAAM,MAAMy9K,EAAGF,EAAEv9K,EAAE,CAAC,CAAC,KAAY,IAANuU,EAAEkH,MAAUA,CAAE,CAAiB,GAAhB3vB,EAAEglC,EAAE,EAAEjyB,EAAEsB,EAAEsb,EAAErd,EAAE,EAAQ,GAAHA,EAAqB,OAAftS,IAAIyoB,IAAIkH,GAAG,IAAWs5L,IAAIxgM,EAAEkH,EAAEtb,EAAEsb,GAAG,GAAGrd,EAAE,GAAGS,IAAI,EAAE,CAAC,GAAGA,GAAG,EAAE,CAAO,IAANtR,EAAEkuB,EAAE5c,EAAMK,EAAEiB,EAAE,EAAEjB,GAAG3R,EAAE2R,IAAKqV,EAAErV,EAAE,GAAGqV,EAAErV,GAA4B,OAAzBqV,IAAIhnB,GAAG,GAAGzB,IAAIyoB,IAAIkH,GAAG,IAAWs5L,IAAIxgM,EAAEkH,EAAEtb,EAAEsb,EAAE,EAAE,CAAC,IAAIzb,EAAE,EAAEA,EAAK,EAAFnB,EAAImB,IAAKuU,IAAIkH,GAAG,GAAsC,OAAnClH,IAAIkH,GAAG,GAAGlH,IAAIkH,GAAG,GAAG3vB,IAAIyoB,IAAIkH,GAAG,IAAWs5L,IAAIxgM,EAAEkH,EAAEtb,EAAEsb,EAAE,CAAuJ,OAAtJsT,EAAEtT,EAAE,EAAEuL,EAAE7mB,EAAE9C,EAAE,IAAIszK,GAAI7kL,IAAIuR,EAAEnR,GAAG,KAAU86B,EAAE+H,GAAG,GAAGi2M,GAAI3nO,EAAEkX,EAAEkH,IAAIpe,EAAEnR,GAAG,IAAImR,EAAEnR,GAAG6oN,IAAIxgM,EAAEkH,EAAE,EAAEtb,EAAEsb,EAAE,IAAQpe,EAAEnR,GAAG6oN,IAAIxgM,EAAEkH,EAAEtb,EAAEsb,GAAGpe,EAAEnR,GAAG,IAAI2S,EAAE,IAAIxB,EAAEnR,GAAG,KAAOmR,EAAEnR,GAAG,GAAG2S,EAASxB,EAAEnR,CAAC,CAC/wC,SAAS06X,IAAI16X,EAAEkS,GAAG,IAAQ3M,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAsN,OAApNvD,EAAEuvB,EAAErd,EAAElS,EAAE2S,EAAE,IAAI6/J,GAAO24B,KAAiCojD,GAAX,IAAI3mF,GAApB,IAAI6Z,GAAIzhL,EAAEuvB,KAAwBtb,EAAE6vK,GAAGw0B,IAAIt4M,EAAEuvB,GAAGkvI,MAAMu0K,OAAOh1U,EAAE2/K,GAAG26B,IAAIt4M,EAAEuvB,EAAEujT,KAAK,KAAK3hU,EAAEwsK,GAAG26B,IAAIt4M,EAAEuvB,EAAEqjT,KAAK,KAAKjgU,EAAEgrK,GAAG26B,IAAIt4M,EAAEuvB,EAAEikT,KAAK,KAAKnrT,EAAEs1J,GAAG26B,IAAIt4M,EAAEuvB,EAAE2jT,KAAK,KAAKlzU,EAAEoS,EAAEkuK,GAAIC,GAAG+3B,IAAIt4M,EAAEuvB,EAAE+jT,OAAO7vU,EAAEzD,EAAEA,EAAShC,EAAE2U,GAAG,KAAK,EAAElP,EAAEzD,EAAEA,EAAE,MAAM,KAAK,EAAEyD,EAAEzD,EAAEkS,EAAE,MAAM,KAAK,EAAEzO,EAAEzD,EAAEhC,EAAE,MAAM,KAAK,EAAEyF,EAAEzD,EAAEuF,EAAE,MAAM,KAAK,EAAE9B,EAAEzD,EAAE86B,EAAE,MAAM,QAAQ,MAAMo4I,GAAI,IAAI2O,GAAIy2H,KAAU,MAALt6S,EAAE88B,EAAQ98B,EAAE88B,EAAE,GAAG98B,EAAE2U,KAA2F,GAArF3S,EAAED,EAAE,IAAIwvP,GAAI9rP,EAAE0N,EAAEwB,GAAGo1L,GAAI/nM,EAAED,GAAG2qS,KAAMC,KAAKxuF,GAAG7D,IAAIt4M,EAAEuvB,EAAEqkT,OAAO5zU,EAAED,EAAEwvB,EAAE0yJ,GAAIk6B,GAAG7D,IAAIt4M,EAAEuvB,EAAEmkT,OAAsB,GAAZ7pF,GAAI7pP,EAAEuvB,GAAGvxB,EAAM,OAAOgC,EAAED,EAAE,IAAI+T,EAAE,IAAIirK,GAAI8qE,GAAI7pP,EAAEuvB,IAAIzb,EAAEvO,GAAGuO,EAAE9V,EAAEihL,MAAM,CAAwD,IAAvCr/K,GAAhByB,EAAEs8K,GAAGwB,IAAIrrK,GAAG,KAAQnB,EAAE,EAAEK,EAAE3R,EAAEy5B,EAAE,EAAEv3B,EAAE,IAAI0xM,GAAI5zM,EAAErD,EAAE4B,EAAEyB,EAAE+Q,EAAEY,GAAS4tL,GAAI5gM,EAAE2S,EAAEpP,IAAIovN,GAAIpvN,GAAG0vI,EAAK3/H,KAAKwN,SAAS,IAAKsoS,KAAKn2K,EAAK3/H,KAAKwN,SAAS,IAAKsoS,KAAKhmT,EAAEu6K,GAAG26B,IAAIj3M,GAAG0+J,MAAMm5N,MAAM,KAAKllX,EAAE,IAAI0+O,GAAInvP,EAAE,IAAI2kM,GAAI3kM,EAAEvD,EAAEJ,EAAEI,EAAEoS,EAAE,EAAEhP,EAAE8O,EAAE3O,EAAE2O,EAAEc,EAAEhT,EAAEoS,EAAE,EAAEhP,EAAErD,EAAEsB,EAAEsR,EAAE3S,EAAEoS,GAAGhP,EAAE8O,EAAE9O,EAAEmsB,GAAGluB,EAAEy5B,EAAE96B,EAAEoS,GAAGhP,EAAErD,EAAEqD,EAAEpD,KAAK+1K,GAAI/1K,EAAED,EAAE/B,EAAEgW,GAAG2iL,GAAI32L,EAAE2S,EAAEpP,EAAE,IAAIizM,GAAIxiM,EAAE3S,GAAG,CAAC,OAAOgnB,EAAE1V,GAAG,KAAK,EAAE,GAAM,MAAHsB,EAASjU,EAAED,EAAEA,EAAE49K,GAAG0pB,GAAIrnM,EAAED,EAAE/B,EAAE,GAAG,SAAS,IAAI6V,EAAE,IAAI8xJ,GAAI3lK,EAAED,EAAE/B,GAAG6V,EAAE7T,EAAE6T,EAAE0b,EAAEA,EAAErxB,QAAS8V,EAAE2pK,GAAGC,GAAI/pK,GAAG,IAA2C,OAAvC3T,EAAEy9K,GAAGA,GAAG+5B,GAAI13M,EAAE2S,EAAEqB,EAAEhU,GAAG,IAAIkS,EAAE,IAAIi4S,OAAc9tF,GAAIn8N,EAAE+T,KAAKjU,EAAED,EAAEA,EAAEiU,GAAI,MAAM,KAAK,EAAoE,KAAlEzO,EAAE,IAAI0vM,GAAIj1M,EAAEuvB,EAAE5c,EAAE3S,EAAEuvB,EAAEuL,IAAK96B,GAAG,GAAIuF,EAAE2M,GAAG,GAAIygN,GAAIptN,EAAEvF,EAAEuvB,EAAEvxB,EAAEgC,EAAEuvB,EAAEnd,GAAG0oB,EAAEw7I,IAAQ5jK,EAAE,IAAIizJ,GAAI3lK,EAAED,EAAE/B,GAAG0U,EAAE1S,EAAE0S,EAAE6c,EAAEA,EAAErxB,SAAyBkU,EAAE6tQ,IAAlBjsQ,EAAE2pK,GAAGC,GAAIlrK,GAAG,KAAY1S,EAAEuF,IAAQu1B,IAAGA,EAAE1oB,EAAEpS,EAAED,EAAEA,EAAEiU,GAAG,MAAM,QAAQ,MAAMk/J,GAAI,IAAI2O,GAAIy2H,KAAU,MAALjwR,EAAEyS,EAAQzS,EAAEyS,EAAE,GAAGzS,EAAE1V,KAAM,OAAO3S,EAAED,CAAC,CAChyC,SAAS0wW,IAAIzwW,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAqH,IAAnH4N,EAAEwsK,GAAG0O,KAAMrsL,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,GAAG,GAAG,KAAKqB,EAAE,IAAIm4K,GAAInxJ,EAAE,IAAImqJ,GAAIjvK,EAAE2sW,IAAI/+V,GAAG0vO,IAAIx4N,EAAEyS,EAAE3pB,EAAE5N,GAAGyP,EAAE,IAAIw/J,GAAIzyK,EAAE,IAAI05K,GAAQv5K,EAAE+qN,GAAG9kH,GAAGo4E,GAAGC,GAAG0sC,IAAG,GAAG/sC,IAAI,GAAG,EAAE,GAAGjsK,EAAEnS,IAAImS,EAAEnS,EAAE,IAAIgrN,GAAIl9B,IAAG37K,EAAE,EAAE,IAAIA,EAAEnS,KAAKmS,EAAE3M,IAAI2M,EAAE3M,EAAE,IAAIwlN,GAAIl9B,IAAG37K,EAAE,EAAE,IAAIA,EAAE3M,OAAO6lN,IAAGlrN,IAAI,CAAgB,GAAfN,EAAE+9K,GAAGwtC,GAAGjrN,GAAG,IAA8C,KAArCF,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,GAAGhC,EAAM,MAAMk1K,GAAI,IAAI2O,GAAI2uL,MAAMxwW,EAAEA,IAAIA,EAAEA,EAAE,IAAIs6L,GAAInM,IAAGnuL,EAAE,EAAE,IAAIA,EAAEA,GAAGhC,IAAO4B,GAAGI,IAAwD+8M,GAAIh9M,EAAzDiU,EAAE2pK,GAAG0O,KAAMzsL,EAAEI,IAAIJ,EAAEI,EAAE,IAAIs6L,GAAInM,IAAGvuL,EAAE,EAAE,IAAIA,EAAEI,GAAG,GAAG,KAAaD,EAAEwvB,EAAErd,EAAEnS,EAAEwvB,IAAGnsB,EAAEu6K,GAAGk9B,GAAGq4B,GAAI7qN,EAAEyS,EAAE9mB,IAAI,OAAW5Q,EAAE8sW,IAAIl8V,GAAG6sO,IAAIx4N,EAAEyS,EAAE9mB,EAAE5Q,IAAG0Q,EAAEyb,EAAEsrM,GAAI,IAAIla,GAAIhjC,GAAG0pB,GAAI9jM,EAAEA,EAAEgsB,EAAErxB,OAAO,GAAG,IAAIy/K,GAAG0pB,GAAIjkM,EAAEA,EAAEmsB,EAAErxB,OAAO,GAAG,IAAI28N,GAAI,IAAIla,IAAKlD,GAAI,EAAEl6M,EAAEgsB,EAAErxB,QAAQy/K,GAAGp6K,EAAEgsB,EAAE,GAAG,MAAMkuL,GAAI,EAAEr6M,EAAEmsB,EAAErxB,QAAQy/K,GAAGv6K,EAAEmsB,EAAE,GAAG,KAAKsxN,IAAI7tO,EAAE8nB,EAAE9mB,EAAEF,GAAG,CAAC,GAAQ,GAAL/T,EAAEmS,EAAsC,IAAhCQ,EAAEirK,GAAG0pB,GAAI9jM,EAAEgsB,EAAEhsB,EAAEgsB,EAAErxB,OAAO,EAAE,GAAG,GAAOkU,EAAE,EAAEA,EAAE7O,EAAEgsB,EAAErxB,OAAOkU,IAAI,CAA8C,IAA7CyB,EAAE8pK,GAAG0pB,GAAI9jM,EAAEgsB,EAAEhsB,EAAEgsB,EAAErxB,OAAO,EAAEkU,EAAEA,GAAG,GAAG7M,EAAEu5P,IAAI/+P,EAAE,GAASwF,EAAE2M,GAAG3M,EAAExF,EAAEwvB,GAAGvb,EAAE2pK,GAAGohF,GAAIx5P,GAAG,MAAKnC,EAAEu6K,GAAGk9B,GAAGq4B,GAAI7qN,EAAEyS,EAAE9mB,IAAI,KAASub,EAAErxB,QAAQkU,EAAGkiR,GAAI/uR,IAAQ0O,EAAE4rK,GAAI,IAAI8gC,GAAIhjC,GAAG0pB,GAAIjkM,EAAEmsB,EAAEnsB,EAAEmsB,EAAErxB,OAAO,EAAEkU,EAAEA,GAAG,IAAIurK,GAAGk9B,GAAGq4B,GAAIlgO,EAAE8nB,EAAE9mB,IAAI,IAAOH,EAAE7T,GAAGiU,EAAEjU,GAAG6T,EAAE3B,GAAG+B,EAAE/B,IAAG4oB,EAAEjnB,EAAE7T,EAAE0S,EAAE1S,EAAEyD,EAAEoQ,EAAE3B,EAAEQ,EAAER,GAAES,EAAEsB,EAAEjU,EAAE0S,EAAE1S,GAAcyD,IAAZzF,EAAEiW,EAAE/B,EAAEQ,EAAER,GAAS4oB,IAAO,GAAHA,GAAMnrB,MAAMmrB,GAAGA,EAAEA,EAAE,GAAG,EAAE,KAAQ,GAAHnoB,GAAMhD,MAAMgD,GAAGA,EAAEA,EAAE,GAAG,EAAE,KAAQ,GAAHlP,GAAMkM,MAAMlM,GAAGA,EAAEA,EAAE,GAAG,EAAE,KAAQ,GAAHzF,GAAM2R,MAAM3R,GAAGA,EAAEA,EAAE,GAAG,EAAE,IAAIi1I,EAAK3/H,KAAKskB,IAAIkD,GAAGm4G,EAAK3/H,KAAKskB,IAAIjlB,IAAIsgI,EAAK3/H,KAAKskB,IAAIn0B,GAAGwvI,EAAK3/H,KAAKskB,IAAI55B,KAAM++M,GAAI17M,EAAEwS,EAAExS,EAAEkuB,EAAErd,EAAE7Q,EAAEkuB,GAASnd,EAAE,GAAI2qM,GAAI17M,EAAEqR,EAAErR,EAAEkuB,EAAErd,EAAE7Q,EAAEkuB,GAAS+kQ,GAAI/uR,KAAKmN,EAAEmB,CAAC,CAAE,OAAOxS,CAAC,CAEhzC,SAASy9V,IAAI9+V,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAA8K,IAA5K3S,EAAE,IAAIuyK,GAAI7uK,EAAE,IAAI6uK,GAAIt+J,EAAE9B,EAAE,EAAEtS,EAAEI,EAAEi/K,KAAK15K,EAAEo4K,GAAG39K,EAAEq7M,GAAG,GAAG,GAAG3oM,EAAEirK,GAAG39K,EAAEq7M,GAAG,GAAG,GAA4BtlC,GAAIh2K,GAAG09M,GAAI,GAApCv9M,EAAEmtV,IAAI9nV,EAAEvF,EAAEuF,EAAE2M,EAAEQ,EAAE1S,EAAE0S,EAAER,EAAE8B,IAAkBub,EAAErxB,QAAQy/K,GAAGz9K,EAAEqvB,EAAE,GAAG,KAAKwmJ,GAAItyK,GAAGg6M,GAAI,EAAEv9M,EAAEqvB,EAAErxB,QAAQy/K,GAAGz9K,EAAEqvB,EAAE,GAAG,KAASnd,EAAE,EAAEA,EAAExS,EAAEwS,IAAKhP,EAAEmC,EAAEA,EAAEmN,EAAEA,EAAEirK,GAAG39K,EAAEq7M,GAAGjpM,GAAG,GAA4B2jK,GAAIh2K,GAAG09M,GAAI,GAApCv9M,EAAEmtV,IAAI9nV,EAAEvF,EAAEuF,EAAE2M,EAAE9O,EAAEpD,EAAEoD,EAAE8O,EAAE8B,IAAkBub,EAAErxB,QAAQy/K,GAAGz9K,EAAEqvB,EAAE,GAAG,KAAKwmJ,GAAItyK,GAAGg6M,GAAI,EAAEv9M,EAAEqvB,EAAErxB,QAAQy/K,GAAGz9K,EAAEqvB,EAAE,GAAG,KAA8BwmJ,GAAIh2K,GAAG09M,GAAI,GAApCv9M,EAAEmtV,IAAI9nV,EAAEvF,EAAEuF,EAAE2M,EAAEQ,EAAE1S,EAAE0S,EAAER,EAAE8B,IAAkBub,EAAErxB,QAAQy/K,GAAGz9K,EAAEqvB,EAAE,GAAG,KAAKwmJ,GAAItyK,GAAGg6M,GAAI,EAAEv9M,EAAEqvB,EAAErxB,QAAQy/K,GAAGz9K,EAAEqvB,EAAE,GAAG,KAA0K,IAA5IwmJ,GAAIh2K,GAAG09M,GAAI,GAApCv9M,EAAEmtV,IAAI36U,EAAE1S,EAAE0S,EAAER,EAAE3M,EAAEvF,EAAEuF,EAAE2M,EAAE8B,IAAkBub,EAAErxB,QAAQy/K,GAAGz9K,EAAEqvB,EAAE,GAAG,KAAKwmJ,GAAItyK,GAAGg6M,GAAI,EAAEv9M,EAAEqvB,EAAErxB,QAAQy/K,GAAGz9K,EAAEqvB,EAAE,GAAG,KAAKA,EAAE,IAAIiqJ,GAAI7mK,EAAE,IAAI2/J,GAAIszD,GAAIr2M,GAAGkuL,GAAI,EAAE19M,EAAEwvB,EAAErxB,QAAQy/K,GAAG59K,EAAEwvB,EAAE,GAAG,KAASluB,EAAE,EAAEA,EAAEtB,EAAEwvB,EAAErxB,OAAO,EAAEmD,GAAG,EAAMo8M,GAAIp8M,EAAEtB,EAAEwvB,EAAErxB,QAAb48B,EAAqB6iJ,GAAG59K,EAAEwvB,EAAEluB,GAAG,GAAI2R,EAAEgqU,KAAKv/H,GAAIp8M,EAAE,EAAEtB,EAAEwvB,EAAErxB,QAAQy/K,GAAG59K,EAAEwvB,EAAEluB,EAAE,GAAG,IAAIy5B,GAAG2iL,GAAIp8M,EAAE,EAAEtB,EAAEwvB,EAAErxB,QAAQy/K,GAAG59K,EAAEwvB,EAAEluB,EAAE,GAAG,KAAKo8M,GAAIp8M,EAAE,EAAEtB,EAAEwvB,EAAErxB,QAAQy/K,GAAG59K,EAAEwvB,EAAEluB,EAAE,GAAG,KAAMmrC,SAASx5B,EAAEhT,IAAKwsC,SAASx5B,EAAEd,GAA8B6qM,GAAIxtL,EAAEvc,EAAEuc,EAAEA,EAAErd,EAAEqd,EAAEA,GAA1CwtL,GAAIxtL,EAAEuL,EAAEvL,EAAEA,EAAErd,EAAEqd,EAAEA,GAA4G,IAAzEq2M,GAAIr2M,EAAEouJ,GAAG0pB,GAAItnM,EAAEA,EAAEwvB,EAAErxB,OAAO,GAAG,IAAI63K,GAAIpjK,GAAG8qM,GAAI,EAAEh6M,EAAE8rB,EAAErxB,QAAQy/K,GAAGl6K,EAAE8rB,EAAE,GAAG,KAASzb,EAAE,EAAEA,EAAErQ,EAAE8rB,EAAErxB,OAAO,EAAE4V,GAAG,EAAM2pM,GAAI3pM,EAAErQ,EAAE8rB,EAAErxB,QAAb48B,EAAqB6iJ,GAAGl6K,EAAE8rB,EAAEzb,GAAG,GAAId,EAAEgqU,KAAKv/H,GAAI3pM,EAAE,EAAErQ,EAAE8rB,EAAErxB,QAAQy/K,GAAGl6K,EAAE8rB,EAAEzb,EAAE,GAAG,IAAIgnB,GAAG2iL,GAAI3pM,EAAE,EAAErQ,EAAE8rB,EAAErxB,QAAQy/K,GAAGl6K,EAAE8rB,EAAEzb,EAAE,GAAG,KAAK2pM,GAAI3pM,EAAE,EAAErQ,EAAE8rB,EAAErxB,QAAQy/K,GAAGl6K,EAAE8rB,EAAEzb,EAAE,GAAG,KAAM04B,SAASx5B,EAAEhT,IAAKwsC,SAASx5B,EAAEd,GAA6BS,EAAE4c,EAAE5c,EAAE4c,EAAErxB,QAAQ8U,EAAzCL,EAAE4c,EAAE5c,EAAE4c,EAAErxB,QAAQ48B,EAAkE,IAAjCi7I,GAAIpjK,EAAEgrK,GAAG0pB,GAAI5jM,EAAEA,EAAE8rB,EAAErxB,OAAO,GAAG,IAAQF,EAAE2U,EAAE4c,EAAErxB,OAAO,EAAEF,GAAG,EAAEA,IAAK4nO,GAAIr2M,GAAGkuL,GAAIz/M,EAAE2U,EAAE4c,EAAErxB,QAAQy/K,GAAGhrK,EAAE4c,EAAEvxB,GAAG,KAAK,OAAOuxB,CAAC,CAG70C,SAASotK,IAAI38L,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAE,GAAGC,EAAED,GAAGC,EAAEoS,EAAgB,OAAbpS,EAAEA,GAAG,OAAEA,EAAEuvB,EAAE,GAAgC,GAAvBrd,EAAEgnL,GAAIl5L,EAAEhC,EAAEgC,EAAED,KAAKC,EAAEA,EAAEkS,EAAU,GAALlS,EAAEkS,EAAL,CAAgY,OAAOA,GAAG,KAAK,IAAInS,EAAE,EAAE,MAAM,KAAK,GAAGA,EAAE,EAAE,MAAM,KAAK,GAAGA,EAAE,EAAE,MAAM,KAAK,GAAGA,EAAE,EAAE,MAAM,KAAK,GAAGA,EAAE,EAAE,MAAM,KAAK,GAAGA,EAAE,EAAE,MAAM,KAAK,GAAGA,EAAE,EAAE,MAAM,KAAK,GAAGA,EAAE,GAAG,MAAM,KAAK,GAAGA,EAAE,GAAG,MAAM,KAAK,GAAO,GAAJA,EAAE,EAAKC,EAAED,GAAGC,EAAEoS,EAAE,MAAM,GAAiB,IAAd8mL,GAAIl5L,EAAEhC,EAAEgC,EAAED,GAAO,MAAM,KAAKC,EAAED,GAAGC,EAAEoS,EAAE,MAAM8gK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAM2wM,QAAyB,OAAjBzoX,EAAEgnL,GAAIl5L,EAAEhC,EAAEgC,EAAED,MAAe,KAAK,GAAGA,EAAE,GAAG,MAAM,KAAK,GAAGA,EAAE,GAAG,MAAM,KAAK,GAAGA,EAAE,GAAG,MAAM,KAAK,GAAGA,EAAE,GAAG,MAAM,KAAK,GAAGA,EAAE,GAAG,MAAM,KAAK,GAAG,GAAGC,EAAED,GAAGC,EAAEoS,EAAE,MAAM8gK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAM2wM,QAAyB,GAAM,KAAvBzoX,EAAEgnL,GAAIl5L,EAAEhC,EAAEgC,EAAED,MAAeA,EAAE,OAAQ,IAAM,IAAHmS,EAAiB,MAAMghK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAM4wM,QAAvC76X,EAAE,EAA4C,CAAC,MAAM,KAAK,GAAG,KAAMC,EAAED,EAAEC,EAAEoS,GAA0B,KAAvBF,EAAEgnL,GAAIl5L,EAAEhC,EAAEgC,EAAED,QAAoB,GAAM,IAAHmS,EAAM,MAAMghK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAM6wM,QAAQ96X,EAAE,GAAG,MAAM,QAAQ,GAAM,IAAHmS,GAAO,IAAIA,GAAGA,GAAG,KAAK,IAAIA,GAAGA,GAAG,GAAG,GAAGlS,EAAED,EAAEA,EAAE,GAAG,KAAK,CAAM,GAAM,IAAHmS,EAAM,CAACnS,EAAE,GAAG,KAAK,CAAC,MAAMmzK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAM2wM,QAAS,MAAM,KAAK,GAAQ,GAAL56X,EAAE,GAAMC,EAAED,GAAGC,EAAEoS,EAAE,MAAM8gK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMg3K,QAAQhhW,EAAEA,EAAEk5L,GAAIl5L,EAAEhC,EAAEgC,EAAED,KAAK,MAAM,QAAQA,EAAE,EAAGC,EAAEuvB,EAAExvB,CAAh5B,KAA/X,CAAW,OAAOmS,GAAG,KAAK,GAAQ,GAALnS,EAAE,GAAMC,EAAED,GAAGC,EAAEoS,EAAE,MAAM8gK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMg3K,QAAQhhW,EAAEA,EAAEk5L,GAAIl5L,EAAEhC,EAAEgC,EAAED,KAAK,MAAM,KAAK,GAAiB,MAAN,IAAJC,EAAEuF,IAAavF,EAAED,EAAEC,EAAEoS,GAAiB,IAAd8mL,GAAIl5L,EAAEhC,EAAEgC,EAAED,MAAUC,EAAED,EAAEA,EAAE,IAAQA,EAAE,EAAE,MAAM,KAAK,GAAG,GAAc,MAAN,IAAJC,EAAEuF,IAAavF,EAAED,EAAEC,EAAEoS,GAAiB,IAAd8mL,GAAIl5L,EAAEhC,EAAEgC,EAAED,GAAO,GAAGC,EAAED,EAAEA,EAAE,GAAG,KAAK,CAAC,SAAc,MAAFmS,IAAUuzS,KAAKzlT,EAAED,EAAEC,EAAEoS,GAAgC,QAAR,OAArBmd,EAAE2pK,GAAIl5L,EAAEhC,EAAEgC,EAAED,OAAwBC,EAAEA,EAAE2nN,KAAKz1M,EAAEuzS,KAAK,IAAIl2R,EAAE,QAAQvvB,EAAED,GAAGA,EAAE,EAAGC,EAAEuvB,EAAExvB,CAAQ,CAAi5B,CAEl2C,SAAS+6X,IAAI96X,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAqC,GAAnC0wR,IAAItyQ,EAAE,0BAA0B,GAAoB,GAAdrd,EAAElS,EAAEuvB,EAAErxB,OAAT,CAAwE,IAAtCiT,EAAEwsK,GAAG4qB,IAAIr2L,GAAGmrJ,MAAM87N,MAAM,IAAIn5X,EAAEhC,EAAE,EAAE2U,EAAE,EAAMK,EAAE,IAAI2yJ,GAAIzzJ,EAAElS,GAAGgT,EAAEhT,EAAEgT,EAAEuc,EAAEA,EAAErxB,QAAiC,KAAxB4V,EAAE6pK,GAAGC,GAAI5qK,GAAG,KAAM5P,EAAEpF,IAAQ88B,EAAE,IAAIg0M,GAAG7hB,GAAGm1E,GAAItuR,GAAG9T,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGtwL,KAAKv1B,EAAEo4K,GAAGwtC,GAAGrwL,GAAG,KAAM13B,EAAEuP,IAA2K,IAAtK3S,EAAED,EAAEk+K,GAAG8U,IAAIuyD,IAAI,GAAGtnP,EAAE,GAAG,GAAGgC,EAAEA,EAAEi+K,GAAG8U,IAAIuyD,IAAI,GAAG3yO,EAAE,GAAG,GAAG3S,EAAEkS,EAAE+rK,GAAGmV,IAAGsW,IAAI,GAAG1rM,EAAE,GAAG,GAAGgC,EAAEuF,EAAE04K,GAAGmV,IAAGsW,IAAI,GAAG1rM,EAAE,GAAG,GAAGgC,EAAE86B,EAAEmjJ,GAAGmV,IAAGsW,IAAI,GAAG1rM,EAAE,GAAG,GAAGkhS,GAAGl/R,EAAEuvB,GAt0Clb,SAAavvB,EAAEkS,GAAG,IAAMnS,EAAEwF,EAAEu1B,EAAE,IAAIA,EAAE,IAAI6qI,GAAIzzJ,EAAElS,GAAG86B,EAAE96B,EAAE86B,EAAEvL,EAAEA,EAAErxB,QAAkC,IAAzBqH,EAAEo4K,GAAGC,GAAI9iJ,GAAG,IAAI0nJ,GAAIxiL,EAAED,GAAOA,EAAE,IAAI+uO,GAAG7hB,GAAGm1E,GAAI78R,GAAGvF,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGrrN,IAAoBsoV,IAAIroV,EAAEuF,EAAnBo4K,GAAGwtC,GAAGprN,GAAG,IAAcA,EAAE/B,EAAI,CAs0C0Q+8X,CAAI/6X,EAAEkS,GAAGhS,EAAE,IAAI4xO,GAAI,IAAInmE,GAAI3rK,IAAQqoB,EAAE,IAAIs9I,GAAIzzJ,EAAElS,GAAGqoB,EAAEroB,EAAEqoB,EAAEkH,EAAEA,EAAErxB,QAAQ,CAAiB,IAAI48B,EAAE,IAAIg0M,GAAG7hB,GAAGi1E,GAAhCruR,EAAE8pK,GAAGC,GAAIv1J,GAAG,KAA2BroB,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGtwL,IAAKv1B,EAAEo4K,GAAGwtC,GAAGrwL,GAAG,IAAI96B,EAAEA,EAAEuF,EAAEnC,MAAMpD,EAAEkS,EAAE2B,EAAEzQ,GAAa,GAAVpD,EAAEkS,EAAE2B,EAAEzQ,IAAQu8Q,GAAI+xD,IAAIxxU,EAAE2T,GAAS,CAAK,IAAJpQ,EAAE,EAAsB,GAAdvD,EAAEgS,EAAEqd,EAAErxB,QAAwC,IAA7B2V,EAAE8pK,GAAG0vG,GAAIntR,GAAG,IAAIF,EAAE86B,EAAEjnB,EAAEzQ,GAAGK,IAAQq3B,EAAE,IAAIg0M,GAAG7hB,GAAGm1E,GAAIvuR,GAAG7T,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGtwL,IAAKv1B,EAAEo4K,GAAGwtC,GAAGrwL,GAAG,IAAO96B,EAAEA,EAAEuF,EAAEnC,KAAa4Q,EAAEzO,EAAExF,EAAE/B,IAAIgC,EAAEkS,EAAE8B,EAAE5Q,GAAGwxR,IAAG50R,EAAEuvB,EAAEvb,EAAEgkM,GAAIh4M,EAAE86B,EAAEjnB,EAAEzQ,KAAe,GAAVpD,EAAEkS,EAAE8B,EAAE5Q,IAAQu8Q,GAAI+xD,IAAIxxU,EAAE8T,KAAiC,IAAtBpU,EAAE,IAAIkyO,GAAI,IAAIlmE,GAAI5rK,IAAQiU,EAAE,IAAI0xJ,GAAIzzJ,EAAElS,GAAGiU,EAAEjU,EAAEiU,EAAEsb,EAAEA,EAAErxB,QAAQ,CAAiB,IAAI48B,EAAE,IAAIg0M,GAAG7hB,GAAGm1E,GAAhCvuR,EAAE8pK,GAAGC,GAAI3pK,GAAG,KAA2BjU,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGtwL,IAAKv1B,EAAEo4K,GAAGwtC,GAAGrwL,GAAG,IAAI96B,EAAEA,EAAEuF,EAAEnC,MAAMpD,EAAEuF,EAAEsO,EAAEzQ,GAAa,GAAVpD,EAAEuF,EAAEsO,EAAEzQ,IAAQu8Q,GAAI+xD,IAAI9xU,EAAEiU,GAAS,CAAsB,IAAX9T,EAAE80P,GAAI3iP,EAAhB7Q,EAAE,IAAIixK,IAAmC,GAAd1yK,EAAEsS,EAAEqd,EAAErxB,QAA+E,IAApEwU,EAAEirK,GAAG0vG,GAAIztR,GAAG,KAAKG,EAAEC,EAAEuvB,EAAErxB,QAAQiT,IAAI0+S,IAAIn9S,EAAE3S,MAAMA,EAAE80P,GAAI3iP,EAAE7Q,IAAIixP,GAAI5/O,EAAE3S,GAAO+6B,EAAE,IAAIg0M,GAAG7hB,GAAGi1E,GAAIxvR,GAAG1S,EAAE27M,KAAK,IAAIpoE,IAAK63E,IAAGtwL,IAAKv1B,EAAEo4K,GAAGwtC,GAAGrwL,GAAG,IAAO96B,EAAEA,EAAEuF,EAAEnC,KAAaA,EAAEmC,EAAEgqB,EAAEvxB,IAAIgC,EAAEuF,EAAEnC,EAAEA,GAAa,GAAVpD,EAAEuF,EAAEnC,EAAEA,IAAQu8Q,GAAI+xD,IAAI9xU,EAAEwD,KAAW,IAAIgP,EAAE/Q,EAAEkuB,EAAErxB,OAAO,EAAEkU,GAAG,IAAIA,EAAG2jK,GAAI7jK,EAAEA,GAAGurM,GAAIrrM,EAAE/Q,EAAEkuB,EAAErxB,QAAQy/K,GAAGt8K,EAAEkuB,EAAEnd,GAAG,MAAMF,EAAElS,EAAEuvB,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGokH,IAAIhzQ,EAAvvC,MAAbgzQ,IAAIhzQ,EAAkwC,CAC33C,SAASyrW,IAAIh7X,GAAG,IAAIkS,EAAEqd,EAAExvB,EAAEwF,EAAIoN,EAAElP,EAAEzF,EAAEoU,EAAsK,IAApKpS,EAAEkS,EAAE,EAAEyqL,IAAI38L,GAAGkS,EAAE,KAAa,GAALlS,EAAEuvB,GAAW,IAALvvB,EAAEA,GAAO28L,IAAI38L,GAAMkkN,MAAMA,MAAwByqG,IAAjCz8S,EAAqB,IAAI+lP,GAAI,GAAU,EAAE06G,KAAKlvW,EAAc,IAAIw0P,GAAI,KAAY/zC,MAAMA,MAATzgN,EAAqB,IAAIw0P,GAAI,IAAI1yP,GAAE,EAAoB,IAAR6M,EAAEpS,EAAEuvB,IAAM,CAAC,GAAM,GAAHnd,GAAW,IAALpS,EAAEA,IAAQuF,EAAE,CAAI2M,IAAGqyW,IAAIryW,EAAEzO,GAAGA,EAAEyO,GAAE,KAAK,CAAe,GAAdqd,EAAEvvB,EAAEA,EAAED,GAAE,EAAY,IAAHqS,EAAO,OAAOmd,GAAG,KAAK,IAAI,KAAK,GAAG,KAAK,IAAI,KAAK,GAAG,KAAK,IAAI,KAAK,GAAGuoV,IAAIr0W,EAAE6oW,IAAI/8U,IAAIxvB,GAAE,EAAK,MAAM,KAAK,IAAI,KAAK,GAAG,KAAK,GAAG,KAAK,GAAM+3W,IAAIr0W,EAAE6oW,IAAI/8U,KAAbA,GAAkB,GAAK,IAAIxvB,GAAE,GAAM,MAAM,KAAK,IAAI,KAAK,GAAc,KAAX/B,EAAE6kV,IAAI7iV,EAAEuvB,IAAS,MAAM2jJ,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMgoM,QAAQla,IAAIr0W,EAAEzF,GAAG+B,GAAE,EAAK,MAAM,QAAQwvB,EAAEwxU,IAAI/gW,QAAU,GAAM,IAAHoS,IAAQ7M,EAAE,CAAsC,GAAlC2M,IAAGqyW,IAAIryW,EAAEzO,GAAGA,EAAEyO,GAAWqyW,IAAI9gX,EAAXu3X,IAAIh7X,IAAoB,GAALA,EAAEuvB,GAAW,IAALvvB,EAAEA,EAAM,MAAMkzK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMixM,QAAQ,KAAK,CAAQ,GAAPt+L,IAAI38L,IAAOD,EAAE,CAAC,GAAM,GAAHqS,EAAK,CAAC,GAAM,IAAHmd,EAAM,MAAM2jJ,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMkxM,QAAQ,GAAM,IAAH3rW,EAAM,MAAM2jJ,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMmxM,QAAQ,GAAM,IAAH5rW,IAAQhqB,GAAQ,IAALvF,EAAEA,EAAM,MAAMkzK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMoxM,OAAO,CAAC,GAAQ,GAALp7X,EAAEuvB,GAAW,IAALvvB,EAAEA,GAAU,IAAHuvB,GAAOhqB,EAAGopT,IAAIlrT,EAAE8rB,EAAEA,OAAO,CAAQ,GAAPotK,IAAI38L,GAAe,IAARoS,EAAEpS,EAAEuvB,GAAM,MAAM2jJ,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMqxM,QAAQ,GAAM,GAAHjpX,GAAW,IAALpS,EAAEA,EAAO2uT,IAAIlrT,EAAE8rB,EAAEA,GAAGo/R,IAAIlrT,EAAE,GAAG,QAAS,IAAM,GAAH2O,GAAW,IAALpS,EAAEA,GAAU,IAAHoS,EAAO,MAAM8gK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMoxM,QAAmB,GAANzoX,EAAE3S,EAAEA,EAAQ,GAAHoS,EAAK,CAAC,GAAM,IAAHO,EAAM,MAAMugK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMkxM,QAAQ,GAAM,IAAHvoX,EAAM,MAAMugK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMmxM,QAAQ,GAAM,IAAHxoX,EAAM,MAAMugK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMoxM,OAAO,MAAS,IAAHhpX,IAAQO,EAAEouV,IAAI/gW,IAAW,GAAP28L,IAAI38L,GAAMuvB,EAAE5c,EAAE,MAAMugK,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMsxM,QAAQ3sE,IAAIlrT,EAAE8rB,EAAE5c,EAAE,CAAC,CAAC,CAACpN,GAAE,CAAK,CAAC,GAAQ,GAALvF,EAAEuvB,EAAK,MAAM2jJ,GAAI,IAAI4P,GAAI+Z,KAAK7S,KAAMqxM,QAAmC,OAA3B1sC,IAAIlrV,GAAGivW,IAAIjvW,GAAGzD,EAAEkS,EAAE,EAAEyqL,IAAI38L,GAAUyD,CAAC,CAG73C,SAAS0qQ,MAAMA,IAAIz5H,EAAI2+E,MAAiBuhE,IAAX+gE,IAAI,IAAI1gI,IAAWx1C,MAAMujM,KAAKgI,KAAKp2F,IAAG+gE,IAAIwtB,IAAI6H,KAAKp2F,IAAG+gE,IAAIytB,IAAI4H,KAAKp2F,IAAG+gE,IAAI4tB,IAAIyH,KAAKp2F,IAAG+gE,IAAI+tB,IAAIsH,KAAKp2F,IAAG+gE,IAAIguB,IAAIqH,KAAKp2F,IAAG+gE,IAAI4tB,IAAIP,KAAKpuF,IAAG+gE,IAAIq1B,IAAI/H,KAAKruF,IAAG+gE,IAAIqtB,IAAIC,KAAKruF,IAAG+gE,IAAIwtB,IAAIF,KAAKruF,IAAG+gE,IAAIytB,IAAIH,KAAKruF,IAAG+gE,IAAI/2C,IAAIqkE,KAAKruF,IAAG+gE,IAAI4tB,IAAIN,KAAKruF,IAAG+gE,IAAI+tB,IAAIT,KAAKruF,IAAG+gE,IAAIguB,IAAIV,KAAKruF,IAAG+gE,IAAI6tB,IAAIP,KAAKruF,IAAG+gE,IAAIq1B,IAAI9H,KAAKtuF,IAAG+gE,IAAIqtB,IAAIE,KAAKtuF,IAAG+gE,IAAIstB,IAAIC,KAAKtuF,IAAG+gE,IAAIwtB,IAAID,KAAKtuF,IAAG+gE,IAAIytB,IAAIF,KAAKtuF,IAAG+gE,IAAI/2C,IAAIskE,KAAKtuF,IAAG+gE,IAAI4tB,IAAIL,KAAKtuF,IAAG+gE,IAAI6tB,IAAIN,KAAKtuF,IAAG+gE,IAAI2tB,IAAIJ,KAAKtuF,IAAG+gE,IAAI+tB,IAAIR,KAAKtuF,IAAG+gE,IAAIs1B,IAAI/H,KAAKtuF,IAAG+gE,IAAIguB,IAAIT,KAAKtuF,IAAG+gE,IAAIqtB,IAAIG,KAAKvuF,IAAG+gE,IAAIytB,IAAID,KAAKvuF,IAAG+gE,IAAI4tB,IAAIJ,KAAKvuF,IAAG+gE,IAAIguB,IAAIR,KAAKvuF,IAAG+gE,IAAIqtB,IAAII,KAAKxuF,IAAG+gE,IAAIwtB,IAAIC,KAAKxuF,IAAG+gE,IAAI4tB,IAAIH,KAAKxuF,IAAG+gE,IAAIytB,IAAIA,KAAKxuF,IAAG+gE,IAAI+tB,IAAIN,KAAKxuF,IAAG+gE,IAAIq1B,IAAI3H,KAAKzuF,IAAG+gE,IAAIqtB,IAAIK,KAAKzuF,IAAG+gE,IAAIstB,IAAII,KAAKzuF,IAAG+gE,IAAIutB,IAAIG,KAAKzuF,IAAG+gE,IAAIwtB,IAAIE,KAAKzuF,IAAG+gE,IAAIytB,IAAIC,KAAKzuF,IAAG+gE,IAAI/2C,IAAIykE,KAAKzuF,IAAG+gE,IAAI4tB,IAAIF,KAAKzuF,IAAG+gE,IAAI2tB,IAAID,KAAKzuF,IAAG+gE,IAAI6tB,IAAIH,KAAKzuF,IAAG+gE,IAAIguB,IAAIN,KAAKzuF,IAAG+gE,IAAI+tB,IAAIL,KAAKzuF,IAAG+gE,IAAIiuB,IAAIP,KAAKzuF,IAAG+gE,IAAIq1B,IAAI1H,KAAK1uF,IAAG+gE,IAAIqtB,IAAIM,KAAK1uF,IAAG+gE,IAAIstB,IAAIK,KAAK1uF,IAAG+gE,IAAIwtB,IAAIG,KAAK1uF,IAAG+gE,IAAIytB,IAAIE,KAAK1uF,IAAG+gE,IAAI/2C,IAAI0kE,KAAK1uF,IAAG+gE,IAAI4tB,IAAID,KAAK1uF,IAAG+gE,IAAI6tB,IAAIF,KAAK1uF,IAAG+gE,IAAIguB,IAAIL,KAAK1uF,IAAG+gE,IAAIs1B,IAAI3H,KAAK1uF,IAAG+gE,IAAIiuB,IAAIN,KAAK1uF,IAAG+gE,IAAIqtB,IAAIQ,KAAK5uF,IAAG+gE,IAAIwtB,IAAIK,KAAK5uF,IAAG+gE,IAAIytB,IAAII,KAAK5uF,IAAG+gE,IAAI4tB,IAAIC,KAAK5uF,IAAG+gE,IAAI2tB,IAAIE,KAAK5uF,IAAG+gE,IAAIguB,IAAIH,KAAK5uF,IAAG+gE,IAAI+tB,IAAIF,KAAK5uF,IAAG+gE,IAAIq1B,IAAIvH,KAAK7uF,IAAG+gE,IAAIqtB,IAAIS,KAAK7uF,IAAG+gE,IAAIstB,IAAIQ,KAAK7uF,IAAG+gE,IAAIwtB,IAAIM,KAAK7uF,IAAG+gE,IAAIytB,IAAIK,KAAK7uF,IAAG+gE,IAAI/2C,IAAI6kE,KAAK7uF,IAAG+gE,IAAI4tB,IAAIE,KAAK7uF,IAAG+gE,IAAI6tB,IAAIC,KAAK7uF,IAAG+gE,IAAIguB,IAAIF,KAAK7uF,IAAG+gE,IAAIqtB,IAAIU,KAAK9uF,IAAG+gE,IAAIstB,IAAIS,KAAK9uF,IAAG+gE,IAAIutB,IAAIQ,KAAK9uF,IAAG+gE,IAAIytB,IAAIM,KAAK9uF,IAAG+gE,IAAIq1B,IAAIC,KAAKr2F,IAAG+gE,IAAIqtB,IAAIiI,KAAKr2F,IAAG+gE,IAAIutB,IAAI+H,KAAKr2F,IAAG+gE,IAAIwtB,IAAI8H,KAAKr2F,IAAG+gE,IAAIytB,IAAI6H,KAAKr2F,IAAG+gE,IAAI/2C,IAAIqsE,KAAKr2F,IAAG+gE,IAAI4tB,IAAI0H,KAAKr2F,IAAG+gE,IAAI4tB,IAAIK,KAAKhvF,IAAG+gE,IAAIytB,IAAIQ,KAAKhvF,IAAG+gE,IAAI6tB,IAAIwH,KAAKp2F,IAAG+gE,IAAI6tB,IAAIL,KAAKvuF,IAAG+gE,IAAI6tB,IAAIP,KAAKruF,IAAG+gE,IAAI/2C,IAAIosE,KAAKp2F,IAAG+gE,IAAI/2C,IAAIokE,KAAKpuF,IAAG+gE,IAAI/2C,IAAIskE,IAAI,CAC/iD,SAASqY,IAAIv7X,EAAEkS,GAAG,OAAOlS,EAAEuF,GAAG,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,IAAIokP,GAAI3pP,EAAEkS,EAAElS,EAAEA,EAAEkS,EAAElS,EAAEuvB,GAAG,KAAK,EAAE,OAAO,IAAIq8L,GAAI5rN,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,IAAI,KAAK,GAAG,OAAO,IAAIu8L,GAAI9rN,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,IAAI,KAAK,EAAE,OAAO,IAAIyvJ,GAAIh/K,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,IAAI,KAAK,GAAG,OAAO,IAAIs8L,GAAI7rN,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,IAAI,KAAK,GAAG,OAAO,IAAIqkM,GAAIj2C,GAAG52J,IAAI/mB,EAAEuvB,GAAG,IAAIvvB,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,IAAI,KAAK,GAAG,OAAO,IAAI+vQ,GAAI3hH,GAAG52J,IAAI/mB,EAAEuvB,GAAG,IAAIvvB,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,IAAI,KAAK,EAAE,OAAO,IAAI2rM,GAAIl7N,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,GAAGvvB,EAAED,EAAEH,GAAG,KAAK,GAAG,OAAO,IAAIu7N,GAAIn7N,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,GAAGvvB,EAAED,EAAEH,GAAG,KAAK,EAAE,OAAO,IAAI06L,GAAIt6L,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,GAAGvvB,EAAED,EAAEH,GAAG,KAAK,GAAG,OAAO,IAAIq7N,GAAIj7N,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,GAAGvvB,EAAED,EAAEH,GAAG,KAAK,EAAE,OAAO,IAAIwsN,GAAIpsN,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,IAAI,KAAK,GAAG,OAAO,IAAI48L,GAAInsN,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,IAAI,KAAK,GAAG,OAAO,IAAI08L,GAAIjsN,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,IAAI,KAAK,GAAG,OAAO,IAAI28L,GAAIlsN,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,IAAI,KAAK,GAAG,OAAO,IAAI88L,GAAIrsN,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,IAAI,KAAK,GAAG,OAAO,IAAIy8L,GAAIhsN,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,IAAI,KAAK,GAAG,OAAO,IAAIw8L,GAAI/rN,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,IAAI,KAAK,GAAG,OAAO,IAAIo8L,GAAI3rN,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,IAAI,KAAK,GAAG,OAAO,IAAImsM,GAAI17N,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,GAAGvvB,EAAED,EAAEH,GAAG,KAAK,GAAG,OAAO,IAAImrN,GAAI/qN,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,GAAGvvB,EAAED,EAAEH,GAAG,KAAK,GAAG,OAAO,IAAI47N,GAAIx7N,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,GAAGvvB,EAAED,EAAEH,GAAG,KAAK,GAAG,OAAO,IAAIw7N,GAAIp7N,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,GAAGvvB,EAAED,EAAEH,GAAG,KAAK,GAAG,OAAO,IAAI67N,GAAIz7N,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,GAAGvvB,EAAED,EAAEH,GAAG,KAAK,GAAG,OAAO,IAAI27N,GAAIv7N,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,GAAGvvB,EAAED,EAAEH,GAAG,KAAK,GAAG,OAAO,IAAI07N,GAAIt7N,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,GAAGvvB,EAAED,EAAEH,GAAG,KAAK,GAAG,OAAO,IAAIy7N,GAAIr7N,EAAEA,EAAEkS,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,GAAGvvB,EAAED,EAAEH,GAAG,KAAK,GAAG,OAAO,IAAI45P,GAAItnP,EAAEg6Q,IAAIh6Q,EAAE81M,KAAKhoN,EAAEuvB,IAAI,QAAQ,MAAM2jJ,GAAI,IAAIiK,GAAG,0BAA0Bn9K,EAAEuF,IAAK,CAC1mD,SAASi2X,IAAIx7X,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAIwD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAA6M,OAA3Ms+R,IAAItyQ,EAAE,iCAAiC,GAAGvvB,EAAEA,EAAEkS,EAAElS,EAAEuvB,EAAE6jV,IAAIlhW,GAAGnS,EAAE49K,GAAG4qB,IAAIr2L,GAAGmrJ,MAAM85N,MAAM,KAAKv3X,EAAEqiL,GAAIk6B,GAAG5T,IAAIr2L,EAAEwvW,OAAO1hX,EAAED,EAAEA,IAAI05R,MAAME,OAAO/5R,GAAGG,GAAGi6R,IAjOzM,SAAah6R,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAiB,MAAf7Q,EAAE8O,EAAEA,EAAEqd,EAAErxB,QAAY,GAAL,CAA0C,IAA3B0B,EAAEq+K,GAAGmV,IAAGsW,IAAI,GAAGtmM,EAAE,GAAG,GAAG0Q,EAAE,EAAMzS,EAAE,IAAIskK,GAAIzzJ,EAAEA,GAAG7Q,EAAErB,EAAEqB,EAAEkuB,EAAEA,EAAErxB,QAASkU,EAAEurK,GAAGC,GAAIv8K,GAAG,IAAIzB,EAAEkU,KAAK1B,EAAEpS,EAAEuvB,EAAErxB,OAAwB,IAAjB8U,EAAE,IAAIu2M,GAAIr3M,EAAEA,EAAE,GAAOnS,EAAE,EAAEA,EAAEqD,EAAE,EAAErD,IAA2E,IAAnEupN,GAAIt2M,EAAEd,EAAEc,EAAEjT,EAAEk/K,MAAgC/+K,EAAE,IAAIylK,IAArDp2I,EAAqBouJ,GAAG3qK,EAAEjT,EAAEs7M,GAAGroM,EAAEuc,EAAEvc,EAAEd,KAAK,KAAiBlS,GAAG86B,EAAE,EAAEr3B,EAAE,EAAMzF,EAAE,EAAEA,EAAE4B,EAAEG,EAAE,GAAG/B,IAAqB,GAAhBiW,EAAE0pK,GAAGC,GAAI19K,GAAG,IAAOlC,GAAG4B,EAAEG,EAAE,GAAG,GAAGm6U,IAAIl6U,EAAEiU,EAAElU,EAAE,EAAEA,GAAG,CAAmF,IAAlF4S,EAAE/S,EAAEG,GAAG,EAAEm6U,IAAIl6U,EAAEiU,EAAElU,EAAE,EAAEA,KAAK4S,EAAE3S,EAAEuvB,EAAEhqB,EAAEo4K,GAAGA,GAAGA,GAAG0pB,GAAIrnM,EAAEuvB,EAAErd,EAAE+B,EAAE7Q,GAAG,IAAIi4M,GAAG,GAAG,IAAIr7M,EAAE,IAAIoD,IAAUK,GAAGzF,GAAE,CAAqB,IAAIk8U,IAAIl6U,EAA5B6T,EAAE8pK,GAAG0pB,GAAI93K,EAAEvvB,EAAEyD,GAAG,IAAgB1D,EAAE,EAAEA,GAAI,IAAI2S,EAAEirK,GAAG0pB,GAAIrnM,EAAEuvB,EAAErd,EAAE2B,EAAEzQ,GAAG,IAAIu4M,KAAKjpM,EAAE6oM,MAAOvnM,EAAE2pK,GAAGjrK,EAAE+oM,KAAK,MAAIl2M,EAAEvF,EAAEuvB,EAAEhqB,EAAEo4K,GAAG3pK,EAAEhU,EAAE,IAAIoD,IAAM03B,GAAGv1B,EAAEoN,IAAIg1K,GAAI3nL,EAAEkS,EAAEyrK,GAAG3pK,EAAE9B,EAAE,OAAQzO,CAAC,CAACq3B,EAAEnoB,CAAC,CAAphB,CAAuhB,CAiOja8oX,CAAIz7X,EAAEkS,GAAGf,EAAE,KAAK5N,EAAE,KAAKmP,EAAE,KAAKmB,EAAE,KAAQk9M,GAAG,EAAEC,KAARh9M,EAAa,IAAIi9M,GAAI,GAAWtzC,GAAG4qB,IAAIr2L,EAAEilX,KAAK,KAAKxkX,GAAG,KAAK,EAAED,EAAE,IAAI03V,IAAIl4V,EAAElS,EAAEuvB,EAAExvB,GAAGixP,KAAMC,MAAMlD,KAAME,MAAMj6O,EAAEub,EAAEvb,EAAEub,EAAErxB,QAAQwU,EAAE,MAAM,KAAK,EAAEmB,EAAE,IAAIu2V,IAAIl4V,EAAElS,EAAEuvB,EAAExvB,GAAGixP,KAAMG,MAAMpD,KAAME,MAAMj6O,EAAEub,EAAEvb,EAAEub,EAAErxB,QAAQ2V,EAAE,MAAM,KAAK,EAAE1C,EAAE,IAAIi5V,IAAIl4V,EAAElS,EAAEuvB,EAAExvB,GAAGixP,KAAMC,MAAMlD,KAAMC,MAAMh6O,EAAEub,EAAEvb,EAAEub,EAAErxB,QAAQiT,EAAE,MAAM,KAAK,EAAE5N,EAAE,IAAI6mW,IAAIl4V,EAAElS,EAAEuvB,EAAExvB,GAAGixP,KAAMG,MAAMpD,KAAMC,MAAMh6O,EAAEub,EAAEvb,EAAEub,EAAErxB,QAAQqF,EAAE,MAAM,QAAQmP,EAAE,IAAI03V,IAAIl4V,EAAElS,EAAEuvB,EAAExvB,GAAGixP,KAAMC,MAAMlD,KAAME,MAAMp6O,EAAE,IAAIu2V,IAAIl4V,EAAElS,EAAEuvB,EAAExvB,EAAEoxP,IAAIlD,KAAK98O,EAAE,IAAIi5V,IAAIl4V,EAAElS,EAAEuvB,EAAExvB,EAAEkxP,IAAIjD,KAAKzqP,EAAE,IAAI6mW,IAAIl4V,EAAElS,EAAEuvB,EAAExvB,EAAEoxP,IAAInD,KAAKh6O,EAAEub,EAAEvb,EAAEub,EAAErxB,QAAQiT,EAAE6C,EAAEub,EAAEvb,EAAEub,EAAErxB,QAAQqF,EAAEyQ,EAAEub,EAAEvb,EAAEub,EAAErxB,QAAQwU,EAAEsB,EAAEub,EAAEvb,EAAEub,EAAErxB,QAAQ2V,EAAoB,IAAjBtO,EAAE,IAAI6tM,GAAIlhM,EAAElS,EAAEuvB,GAAO9rB,EAAE,IAAIkiK,GAAI3xJ,GAAGvQ,EAAEzD,EAAEyD,EAAE8rB,EAAEA,EAAErxB,QAA0B+xX,IAAI1qX,EAArBu1B,EAAE6iJ,GAAGC,GAAIn6K,GAAG,KAAazD,EAAEkS,GAAGqlW,IAAIz8U,GAAoB,IAAjB9nB,EAAE,IAAI2yT,IAAIzzT,EAAElS,EAAEuvB,GAAOvxB,EAAE,IAAI2nK,GAAI3xJ,GAAGhW,EAAEgC,EAAEhC,EAAEuxB,EAAEA,EAAErxB,QAA0B8oX,IAAIh0W,EAArB8nB,EAAE6iJ,GAAGC,GAAI5/K,GAAG,MAAc,GAAGuxB,EAAE3vB,EAAG,IAAIwS,EAAE,IAAIuzJ,GAAI3xJ,GAAG5B,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAA0BqnO,GAAIh2M,GAArBuL,EAAE6iJ,GAAGC,GAAIxrK,GAAG,MAAa,YAAYo8U,IAAI1zT,IAAuD,GAAlDhnB,EAAE,KAAQ9T,EAAED,IAAGsB,EA1E/iC,SAAarB,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAI0B,EAAIlU,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAEI,EAAEoU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAmH,IAAjH3wB,EAAE/B,EAAEqd,EAAErxB,OAAOqH,EAAE,IAAI6kW,IAAIpqW,EAAEA,EAAEuvB,EAAE,KAAK,MAAMqV,EAAEq5I,GAAGgV,IAAGwzD,IAAI,GAAGxyO,EAAE,GAAG,GAAG7Q,EAAE66K,GAAGgV,IAAGwzD,IAAI,GAAGxyO,EAAE,GAAG,GAAG/T,EAAE+9K,GAAGgV,IAAGwzD,IAAI,GAAGxyO,EAAE,GAAG,GAAGD,EAAE,EAAMvQ,EAAE,EAAEA,EAAEwQ,EAAExQ,IAAKL,EAAEK,GAAGy0L,IAAIh4L,EAAEuD,GAAGw0L,IAAI,IAAIj6L,EAAE,EAAEA,EAAEiW,EAAEjW,IAAuE,IAA/Dy/M,GAAIz/M,EAAEkU,EAAEqd,EAAErxB,QAAb6B,EAAqB49K,GAAGzrK,EAAEqd,EAAEvxB,GAAG,KAAM4mC,EAAE5mC,GAAGwwV,IAAIzuV,GAAG6kC,EAAE5wB,GAAG4wB,EAAE5mC,KAAKgW,EAAEhW,GAAO8V,EAAE,IAAI6xJ,GAAI3lK,EAAEA,EAAEkS,GAAG4B,EAAE9T,EAAE8T,EAAEyb,EAAEA,EAAErxB,QAAyB,IAAI2V,EAAE,IAAI8xJ,GAAxBgY,GAAGC,GAAI9pK,GAAG,IAAoB9T,GAAG6T,EAAE7T,EAAE6T,EAAE0b,EAAEA,EAAErxB,QAASwU,EAAEirK,GAAGC,GAAI/pK,GAAG,IAAItQ,EAAE+8K,GAAIvgL,EAAEqD,EAAEsP,EAAEtP,IAAIk9K,GAAIvgL,EAAEA,EAAE2S,EAAEtP,IAAIA,EAAEpF,GAAGi1I,EAAK3/H,KAAKsgB,IAAIxwB,EAAEpF,GAAGuF,GAAGrD,EAAElC,GAAGi1I,EAAK3/H,KAAKugB,IAAI3zB,EAAElC,GAAGuF,EAAEmP,EAAExS,EAAEgS,GAA4B,IAAvB0X,EAAEq0J,GAAGgV,IAAGwzD,IAAI,GAAGxyO,EAAE,GAAG,GAAO7B,EAAE,EAAEA,EAAE6B,EAAE7B,KAAMqrM,GAAIrrM,EAAEF,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAEnd,GAAG,MAAMlS,IAAI8wP,KAAMC,KAAMrnO,EAAExX,GAAGhP,EAAE4Q,GAAG5Q,EAAEgP,GAAKwX,EAAExX,GAAGlS,EAAE8T,GAAG9T,EAAEkS,GAA2B,IAAvB0oB,EAAEmjJ,GAAGgV,IAAGwzD,IAAI,GAAGxyO,EAAE,GAAG,GAAOrU,EAAE,IAAI+lK,GAAI3lK,EAAEA,EAAEkS,GAAGtS,EAAEI,EAAEJ,EAAE2vB,EAAEA,EAAErxB,QAAyB,IAAIiT,EAAE,IAAIw0J,GAAxBgY,GAAGC,GAAIh+K,GAAG,IAAoBI,GAAGmR,EAAEnR,EAAEmR,EAAEoe,EAAEA,EAAErxB,QAAQ,CAAiB,IAAhBmqB,EAAEs1J,GAAGC,GAAIzsK,GAAG,IAAQwB,EAAE,EAAEA,EAAEsB,EAAEtB,IAAKmoB,EAAEnoB,GAAG2tK,IAAKm9B,GAAI9qM,EAAET,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAE5c,GAAG,MAAMvP,EAAEilB,EAAEjlB,IAAIk9K,IAAKm9B,GAAI9qM,EAAET,EAAEqd,EAAErxB,QAAQy/K,GAAGzrK,EAAEqd,EAAE5c,GAAG,MAAM5S,EAAEsoB,EAAEjlB,IAAIwmB,EAAEjX,GAAGmoB,EAAEhR,KAAKusQ,GAAIjiJ,EAAIx1I,UAAU88X,GAAGtnP,EAAI,KAAK7uI,EAAEnC,EAAEilB,EAAEjlB,IAAI03B,EAAE,GAAGA,EAAE,IAAI,EAAEv1B,EAAExF,EAAEsoB,EAAEjlB,GAAG,CAAC,CAAE,OAAOmC,CAAC,CA0EkHo2X,CAAI37X,EAAEgU,EAAEhU,EAAEuvB,EAAExvB,GAAG02W,IAAIvkW,EAAE7Q,EAAEkuB,KAAKzb,EAAEzS,KAAOyS,EAAG,IAAI1B,EAAE,IAAIuzJ,GAAI3xJ,GAAG5B,EAAEpS,EAAEoS,EAAEmd,EAAEA,EAAErxB,QAA0Bu4W,IAAIvkW,EAArB4oB,EAAE6iJ,GAAGC,GAAIxrK,GAAG,KAAamd,MAAMzb,GAAG06U,IAAI16U,GAAG06U,IAAI1zT,MAAMhnB,EAAEgnB,GAA+C,KAA1ChnB,IAAO2pM,GAAI,EAAEzpM,EAAEub,EAAErxB,QAAb4V,EAAqB6pK,GAAG3pK,EAAEub,EAAE,GAAG,MAAWnsB,EAAE,IAAIuiK,GAAIzzJ,EAAEA,GAAG9O,EAAEpD,EAAEoD,EAAEmsB,EAAEA,EAAErxB,QAAyB,IAAImqB,EAAE,IAAIs9I,GAAxBgY,GAAGC,GAAIx6K,GAAG,IAAoBpD,GAAGqoB,EAAEroB,EAAEqoB,EAAEkH,EAAEA,EAAErxB,SAAS+V,EAAE0pK,GAAGC,GAAIv1J,GAAG,KAAMzoB,EAAEsS,EAAEouK,GAAIxsK,EAAE1Q,EAAE6Q,EAAE7Q,IAAIk9K,GAAIxsK,EAAE/T,EAAEkU,EAAE7Q,IAAiI,IAAzHmsB,EAAE3vB,IAAG2lO,GAAIh2M,EAAE,0BAA0Bzb,GAAGyxN,GAAIh2M,EAAE,WAAW63T,IAAItzU,IAAIyxN,GAAIh2M,EAAE,YA/2B17C,SAAavvB,EAAEkS,GAAG,IAAIqd,EAAExvB,EAAEwF,EAAEu1B,EAAIr3B,EAA+B,IAA7B1D,EAAE,IAAIygN,GAA2B1lL,EAArBgsO,GAAG,IAAIxoF,GAAIt+K,EAAE2S,IAAY3S,EAAE2hP,KAAKhmC,KAAK7gL,EAAEygL,MAAM,CAAiB,KAAhBh2M,EAAEo4K,GAAG7iJ,EAAE2gL,KAAK,KAAU,CAAC8pB,GAAIrzN,EAAE,8CAA8C,KAAK,EAAYqd,EAAEouJ,GAAGk5C,GAAI92N,EAApB0D,EAAEzD,EAAEoS,EAAE7M,EAAEnC,IAAiB,MAAqBsiM,IAAI3lM,EAAE0D,EAAhB8rB,EAAE,IAAI+iJ,IAAe/iJ,EAAEs4L,GAAGtiN,EAAE,CAAC,OAAOxF,CAAC,CA+2BgtC67X,CAAI9nX,EAAEyb,IAAIg2M,GAAIh2M,EAAE,iBAAiBvvB,EAAEkS,IAAOS,EAAE,IAAIgzJ,GAAI3xJ,GAAGrB,EAAE3S,EAAE2S,EAAE4c,EAAEA,EAAErxB,SAAS48B,EAAE6iJ,GAAGC,GAAIjrK,GAAG,MAAOA,EAAE,KAAKmoB,EAAE5oB,EAAE,KAAK4oB,EAAE96B,EAAE,KAAK86B,EAAE/6B,EAAE,KAAK+6B,EAAE1oB,EAAE,KAAK0oB,EAAE98B,EAAE,KAAK88B,EAAE13B,EAAE,MAtyE3lD,SAAapD,GAAGA,EAAEA,EAAE,KAAKA,EAAEuF,EAAE,KAAKvF,EAAEkS,EAAEqd,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGn+K,EAAE86B,EAAEvL,EAAE0uJ,GAAG6Q,IAAG3Q,IAAI,EAAE,EAAE,EAAE,GAAGn+K,EAAEuvB,EAAE,IAAI,CAsyEogDssW,CAAI77X,EAAEuvB,GAAGvvB,EAAEkS,EAAElS,EAAEqvQ,KAAKkzB,IAAIhzQ,EAAE,CAE1nD,SAASi3L,IAAGxmN,EAAEkS,EAAEqd,EAAExvB,EAAEwF,EAAEu1B,GAAG,IAAMr3B,EAAEzF,EAAIqD,EAAEyS,EAAM5T,EAAEkD,EAAE4Q,EAAI,OAAO9B,GAAG,KAAK,GAAGzO,EAAE1D,EAAEiU,EAAEq1L,cAAcC,MAAM,KAAK,EAAE,EAAOsT,GAAI58M,EAATuvB,GAAG,EAAQgvJ,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACw3L,IAAIC,MAAM7nX,GAAU86K,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,KAAK,OAAOpwL,IAAI,MAAM,KAAK,KA9oD9M,SAAYzD,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAA0C,QAAxCA,EAAEwvB,EAAEvb,EAAEq1L,cAAcC,IAAIA,KAAM,IAAIvpM,GAAGA,GAAUmS,GAAG,KAAK,EAAElS,EAAEA,GAAGD,EAAE,MAAM,KAAK,EAAE4tR,GAAG3tR,EAAED,EAAE,IAAI,GAAG,MAAM,QAAQ4tR,GAAG3tR,EAAED,EAAEmS,GAAI,CA8oDqE4pX,CAAG97X,EAAEuvB,EAAExvB,GAAG,MAAM,KAAK,IAtfvO,SAAYC,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAmB,OAAjBA,EAAEwvB,EAAEvb,EAAEu1L,WAAkBr3L,GAAG,KAAK,EAAE0qM,GAAI58M,EAAEu+K,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,MAAM9zL,IAAI,MAAM,KAAK,EAAE68M,GAAI58M,EAAEu+K,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC03L,IAAIC,IAAIC,IAAIC,IAAIz5C,IAAI05C,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,MAAMlsX,IAAI,MAAM,KAAK,EAAE68M,GAAI58M,EAAEu+K,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,MAAM,MAAM,MAAM,MAAMo+I,IAAI,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,QAAQlyU,IAAI,MAAM,QAAQ4tR,GAAG3tR,EAAED,EAAE,EAAEmS,GAAI,CAsf/I6pX,CAAG/7X,EAAEuvB,EAAExvB,GAAG,MAAM,KAAK,IAA0B4tR,GAAG3tR,EAAL,IAApBhC,EAAEuH,EAAEyO,EAAEg2L,YAAqB,GAAWhsM,EAARuxB,GAAa,MAAM,KAAK,IA9wBzT,SAAYvvB,EAAEkS,EAAEqd,GAAG,IAAIxvB,EAAEwF,EAA0B2nM,GAAxBntM,EAAE6qM,GAAIr7K,EAAEvb,EAAEsnG,WAAoB,GAAG,GAAG/1G,EAAEslM,IAAIof,GAAIojG,IAAIrjC,GAAIjqR,GAAG8qM,QAASA,MAAMtlM,EAAE,GAAQA,EAAE0kN,GAAIojG,IAAIttT,EAAE8qM,MAAY,GAAH34L,EAAsC4mO,GAAI94O,EAAE,IAAtCuF,EAAE0tI,EAAK3/H,KAAKsgB,KAAKruB,EAAE,IAAI,IAAI,EAAE,IAAck3L,KAAgB,GAAHvqL,EAAqCy7Q,GAAG3tR,EAAlCuF,EAAE0tI,EAAK3/H,KAAKsgB,KAAKruB,EAAE,GAAG,GAAG,EAAE,IAAW,IAAQooR,GAAG3tR,EAAEuF,EAAE,GAAG2M,EAAE,GAAGy7Q,GAAG3tR,EAAE,EAAEkS,EAAE,GAAG,CA8wB6C8pX,CAAGh8X,EAAEuvB,EAAEhqB,GAAG,MAAM,KAAK,GAAGlE,EAAEtB,EAAEiU,EAAE+2L,SAAc6R,GAAI58M,EAAN,GAAHuvB,EAAWgvJ,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,MAAMxyL,GAAO,GAAHkuB,EAAWgvJ,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACs4L,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,MAAMprX,GAAUk9K,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,QAAQxyL,IAAI,MAAM,KAAK,GAAGkE,EAAEyO,EAAEg2L,YAAY,IAAIzkM,EAAEyO,EAAEg2L,WAAW,GAAG4S,GAAI58M,EAAEu+K,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,KAAK,OAAO,IAAI+oB,GAAI58M,EAAEu+K,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,KAAK,OAAO,IAAI,MAAM,KAAK,IAA6B85F,GAAG3tR,EAAL,IAAvB8T,EAAEvO,EAAEyO,EAAEg2L,WAAW,IAAa,GAAWl2L,EAARyb,GAAa,MAAM,KAAK,GAAuBo+P,GAAG3tR,EAArBuF,EAAEyO,EAAEg2L,WAAW,GAAUz6K,GAAG,MAAM,KAAK,GAAoBo+P,GAAG3tR,EAAlBuF,EAAEyO,EAAEg2L,WAAkBz6K,GAAG,MAAM,KAAK,GAAGrvB,EAAEH,EAAEiU,EAAE+2L,SAAY,GAAHx7K,EAAKqtL,GAAI58M,EAAEu+K,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,MAAM3zL,IAAO,GAAHqvB,EAAKqtL,GAAI58M,EAAEu+K,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAACs4L,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,MAAMvsX,IAAO,GAAHqvB,EAAKqtL,GAAI58M,EAAEu+K,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,QAAQ3zL,IAAIytR,GAAG3tR,EAAEE,EAAE,GAAG,MAAM,KAAK,GAAGkD,EAAErD,EAAEiU,EAAEu1L,WAAc,GAAHh6K,EAAKqtL,GAAI58M,EAAEu+K,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,MAAMzwL,IAAO,GAAHmsB,EAAKqtL,GAAI58M,EAAEu+K,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC03L,IAAIC,IAAIC,IAAIC,IAAIz5C,IAAI05C,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,MAAM7oX,IAAO,GAAHmsB,EAAKqtL,GAAI58M,EAAEu+K,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,MAAM,MAAM,MAAM,MAAMo+I,IAAI,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,QAAQ7uU,IAAIuqR,GAAG3tR,EAAEoD,EAAE,EAAEmsB,GAAG,MAAM,KAAK,GAAGvb,EAAEjU,EAAEiU,EAAEu1L,WAAW,EAAE,EAAMqT,GAAI58M,EAARuvB,EAAE,EAAQgvJ,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,KAAK,KAAK,KAAK,OAAO7/K,GAAUuqK,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,cAAc,cAAc,cAAc,gBAAgB7/K,IAAI,MAAM,KAAK,IAAoB25Q,GAAG3tR,EAAjBD,EAAEiU,EAAEw1L,UAAiBj6K,GAAG,MAAM,KAAK,IAAuBo+P,GAAG3tR,EAApBuF,EAAEyO,EAAEugW,aAAoBhlV,GAAG,MAAM,KAAK,IAAuBo+P,GAAG3tR,EAApBuF,EAAEyO,EAAEwgW,aAAoBjlV,GAAG,MAAM,KAAK,IAAQqtL,GAAI58M,EAARuvB,EAAE,EAAQuL,EAAEvL,EAAE,GAAUuL,EAAEvL,EAAE,IAAI,MAAM,KAAK,IAAIqtL,GAAI58M,EAAE86B,EAAE5oB,GAAG,MAAM,KAAK,GAAO0qM,GAAI58M,EAARuvB,EAAE,EA3gC3xD,SAAYvvB,GAAG,IAAIkS,EAAEqd,EAA6K,OAA3KA,GAAGvvB,EAAEA,EAAEkS,EAAEqsK,GAAGC,GAAG62C,IAAG,GAAGC,IAAI,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,KAAQ/lM,EAAE,IAAGrd,EAAE,GAAG,GAAGqd,GAAGA,GAAErd,EAAE,GAAGA,EAAE,KAAKqd,EAAE,GAAG,GAAG,GAAG,GAAGktK,IAAIvqL,EAAE,GAAGA,EAAE,IAAIqd,EAAE,GAAG,GAAG,GAAGktK,IAAIvqL,EAAE,GAAGA,EAAE,IAAIqd,EAAE,GAAG,GAAG,GAAGktK,IAAIvqL,EAAE,GAAGA,EAAE,GAAGqd,EAAE,GAAGktK,IAAWosB,IAAI32M,EAAE,EAAEA,EAAEhU,OAAO,CA2gCykD+9X,CAAGnhW,GAAO,GAAHvL,EA7/B1yD,SAAYvvB,GAAG,IAAIkS,EAAEqd,EAAgL,OAA9KA,GAAGvvB,EAAEA,EAAEkS,EAAEqsK,GAAGC,GAAG62C,IAAG,GAAGC,IAAI,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,KAAQ/lM,EAAE,IAAGrd,EAAE,GAAG,GAAGqd,GAAGA,GAAErd,EAAE,GAAGA,EAAE,KAAKqd,EAAE,GAAG,GAAG,GAAG,GAAGktK,IAAIvqL,EAAE,GAAGA,EAAE,IAAIqd,EAAE,GAAG,GAAG,GAAGktK,IAAIvqL,EAAE,GAAGA,EAAE,IAAIqd,EAAE,GAAG,GAAG,GAAGktK,IAAIvqL,EAAE,GAAGA,EAAE,GAAGqd,EAAE,GAAGktK,IAAWosB,IAAI32M,EAAE,EAAEA,EAAEhU,OAAO,CA6/BwlDg+X,CAAGphW,GA5/BxzD,SAAY96B,GAAG,IAAIkS,EAAmL,OAAjLA,EAAEqsK,GAAGC,GAAG62C,IAAG,GAAGC,IAAI,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,KAAQt1N,GAAG,IAAGkS,EAAE,GAAG,GAAGlS,GAAGA,GAAEkS,EAAE,GAAGA,EAAE,KAAKlS,EAAE,GAAG,GAAG,GAAG,GAAGy8L,IAAIvqL,EAAE,GAAGA,EAAE,IAAIlS,EAAE,GAAG,GAAG,GAAGy8L,IAAIvqL,EAAE,GAAGA,EAAE,IAAIlS,EAAE,GAAG,GAAG,GAAGy8L,IAAIvqL,EAAE,GAAGA,EAAE,GAAGlS,EAAE,GAAGy8L,IAAWosB,IAAI32M,EAAE,EAAEA,EAAEhU,OAAO,CA4/BomDi+X,CAAGrhW,EAAE96B,IAAI,MAAM,QAAQ,OAAO,EAAO,OAAO,CAAI,CACl3D,SAASo2W,IAAIp2W,EAAEkS,EAAEqd,EAAExvB,GAAG,IAAIwF,EAAEu1B,EAAEnoB,EAAElP,EAAEzF,EAAEoU,EAAE/Q,EAAEyS,EAAEd,EAAEpT,EAAEM,EAAEkD,EAAE4Q,EAAEtB,EAAEmB,EAAIwU,EAAElX,EAAE5N,EAAEqmB,EAAEgb,EAAE/B,EAAEsuJ,EAAEC,EAAEC,EAAEz7F,EAAsf,GAApfuwQ,IAAIj0V,GAAGlU,EAAE2/K,GAAG0O,KAAMn6K,EAAEA,IAAIA,EAAEA,EAAE,IAAI64M,GAAI19B,IAAGn7K,EAAE,EAAE,IAAIA,EAAEA,GAAG,GAAG,IAAI7Q,EAAEs8K,GAAG0O,KAAMn6K,EAAEqd,IAAIrd,EAAEqd,EAAE,IAAIw7L,GAAI19B,IAAGn7K,EAAE,EAAE,IAAIA,EAAEqd,GAAG,GAAG,IAAI9rB,EAAEunN,IAAIhtN,GAAGoU,EAAE44M,IAAI3pN,GAAGsR,EAAyC,KAArCT,EAAElS,IAAIkS,EAAElS,EAAE,IAAIs6L,GAAInM,IAAGj8K,EAAE,EAAE,IAAIA,EAAElS,GAAGhC,EAAK,KAAK2/K,GAAG0O,KAAMn6K,EAAElS,IAAIkS,EAAElS,EAAE,IAAIs6L,GAAInM,IAAGj8K,EAAE,EAAE,IAAIA,EAAElS,GAAG,GAAG,KAAK4pB,EAAE+zJ,GAAG+5B,GAAI13M,EAAEA,EAAEyD,GAAG,IAAI2tL,EAAEzT,GAAG+5B,GAAI13M,EAAEA,EAAEoS,GAAG,IAAIwyB,EAAE,KAAKysJ,EAAE,KAAQxH,GAAG7rL,EAAE,OAA8B6rL,GAAxBtmL,EAAEo6K,GAAG+5B,GAAI13M,EAAEA,EAAEhC,GAAG,KAAa,IAAK4mC,EAAE+4I,GAAGp6K,EAAE,IAAYsmL,GAAGtmL,EAAE,MAAKqmB,EAAE+zJ,GAAGp6K,EAAE,IAAIqhC,EAAE+4I,GAAG0pB,GAAIz9K,EAAExX,EAAE,GAAG,MAAQy3K,GAAGxoL,EAAE,OAA8BwoL,GAAxBsH,EAAExT,GAAG+5B,GAAI13M,EAAEA,EAAEqB,GAAG,KAAa,IAAKgwL,EAAE1T,GAAGwT,EAAE,IAAYtH,GAAGsH,EAAE,MAAKC,EAAEzT,GAAGwT,EAAE,IAAIE,EAAE1T,GAAG0pB,GAAIjW,EAAEh/K,EAAE,GAAG,OAASwX,IAAIwnK,EAAG,MAAMle,GAAI,IAAI2P,GAAI,oCAAoC3wK,EAApC,6TAA+0B,IAAtd29P,GAAVzsQ,EAAE,IAAIynP,GAAU34O,GAAG61L,GAAI3kM,GAAG4kM,MAAM0/C,KAAKx1O,GAAG61L,GAAI3kM,GAAGi6J,MAAM2hG,KAAK,MAAMp/P,EAAE+9K,GAAG4qB,IAAIxoM,EAAE66T,KAAK,IAAIhxS,GAAGwnK,GAAGxxL,EAAEioN,IAAI8rF,MAAMQ,MAAUvvQ,IAAMo1O,KAAH7oQ,EAASgpQ,IAAKt3O,EAAE,KAAUlwB,GAAGwuM,GAAIxjC,GAAG4qB,IAAI3+K,EAAEk4Q,KAAK,OAAyB19B,GAAnBvhO,EAAE,IAAIoyK,GAAItiM,EAAEP,EAAEO,EAAEtR,GAASo3M,GAAIvmM,IAAI27P,GAAIhrO,EAAEtT,GAAM87L,GAAIj5M,EAAE3O,KAAI0N,EAAE+oQ,IAAIr6F,GAAIh9I,EAAEjZ,EAAEhqB,KAAIglC,EAAEozU,IAAIpuV,EAAEiZ,EAAE1xB,EAAEpR,IAAOsxL,IAAM2oF,KAAH7oQ,EAAS+oQ,IAAKtkL,EAAE,KAAUjjF,GAAGwuM,GAAIxjC,GAAG4qB,IAAInX,EAAE0wG,KAAK,OAAyB19B,GAAnBxuK,EAAE,IAAIq/G,GAAItiM,EAAET,EAAES,EAAE4c,GAASkpL,GAAIvmM,IAAI27P,GAAIj4K,EAAErmE,IAAG8hK,EAAE2mL,IAAI5mL,EAAEx7F,EAAEzkF,EAAEouO,GAAInuD,KAAIihE,GAAIjvP,EAAEwhC,GAAGwtN,GAAIhvP,EAAEiuL,IAAIzsJ,EAAEr/B,EAAEgqB,EAAErxB,OAAO,GAAG0mC,EAAEjyB,EAAE4c,EAAErxB,OAAO,GAAGmzL,EAAE9rL,EAAEgqB,EAAErxB,OAAO,GAAGmzL,EAAE1+K,EAAE4c,EAAErxB,OAAO,IAAI0B,EAAEioN,IAAI8rF,MAAMI,MAAU/gS,EAAE,IAAI+rK,KAAM7sK,EAAEtS,IAAIsS,EAAEtS,EAAE,IAAI06L,GAAIrN,IAAG/6K,EAAE,EAAE,IAAIA,EAAEtS,IAAIoT,EAAEzN,GAAGyN,EAAEhV,EAAEihL,MAAwB,IAAIgD,GAAIk6B,GAAG7D,IAA5BxkM,EAAE6pK,GAAGwB,IAAInsK,GAAG,KAAsBgjW,QAAUliW,EAAE9T,EAAuB,OAApBgU,EAAE4rS,GAAI9rS,GAAGiiK,GAAI3yK,EAAE8O,EAAE8B,GAAU2pK,GAAG4qB,IAAIv0L,EAAE0mT,KAAK,KAAK/nT,GAAG,KAAK,EAAE,KAAK,EAAE/S,EAAEioN,IAAI8rF,MAAMU,MAAM,MAAM,KAAK,EAAEz0S,EAAEioN,IAAI8rF,MAAMS,MAAMrsG,GAAI/zL,EAAE0mT,KAAK/7C,KAAME,MAAoF,GAA3E/jP,EAAE6iJ,GAAG4qB,IAAIxoM,EAAE2oT,KAAK,KAAKh2S,EAAEirK,GAAG4qB,IAAIxoM,EAAE6hX,KAAK,KAAKr8W,EAAEu1B,IAAIm7O,KAAMG,MAAM1jQ,IAAI48Q,MAAMG,KAAU98Q,GAAwC,KAAnCA,EAAE3S,IAAI2S,EAAE3S,EAAE,IAAIg/K,GAAI7qJ,IAAGxhB,EAAE,IAAIA,EAAE3S,GAAGhC,GAAMuH,EAAE,CAAoB,IAAnBsO,EAAE+lU,IAAIjnU,GAAGzS,EAAE,IAAIs5K,GAAQnxJ,EAAEy2O,IAAIjrP,EAAE,GAAGwU,EAAEnW,GAAGmW,EAAEtoB,EAAEwvB,GAAmBq2M,GAAI1lO,EAAE,IAAIygN,GAAvBhjC,GAAGohF,GAAI12O,GAAG,KAAqB0/K,GAAI3kM,EAAEy9W,IAAI3gX,EAAE,CAAC,OAAOkD,CAAC,CAE/4D,SAAS28J,MAAc,IAAI//J,EAAEkS,EAAd6tJ,IAAIrrB,EAAYuhO,IAAI,IAAIvlM,GAAI0rN,KAAK/wF,IAAI,IAAI36H,GAAI2rN,KAAU79H,MAAWk3H,IAAI,IAAI/2K,GAAI29K,IAA5BC,IAAWtkG,KAA0B,IAAI9lH,GAAIq8I,IAAI,IAAI7vG,GAAIgiJ,IAAI,MAAMnkD,IAAI,IAAI9rI,GAAIp4E,KAAUi/L,MAALilG,IAAW7wJ,GAAI6rD,IAAIj5G,GAAGC,GAAGxlG,IAAG,GAAGizJ,IAAI,IAAI,EAAE,CAAC0rD,OAAQk9C,IAAI,IAAIl2H,GAAI8wJ,IAAI+sB,KAAKh/D,IAAI,IAAI7+G,GAAI0qJ,KAAK37I,MAAM,IAAailE,KAAWkyF,IAAI,IAAIlmK,GAAI89K,IAA5BC,IAAW9pG,KAA+BrK,KAAWgtG,IAAI,IAAI52K,GAAIg+K,IAA5BC,IAAWp0G,KAA0B2rD,IAAI,IAAIx1H,GAAI0wJ,KAAI,GAAYjxF,KAAW40C,IAAI,IAAIr0G,GAAIk+K,IAA5BC,IAAWx+G,KAA0By+G,IAAI,IAAIp5K,GAAI,IAAIy4F,IAAI,IAAIz9F,GAAI6hJ,IAAIu8B,KAAK72D,IAAI,IAAIvnH,GAAI4wJ,KAAI,GAAOre,IAAI,IAAIvyI,GAAIq0K,KAAI,GAAOzuD,IAAI,IAAI5lH,GAAImkK,KAAI,GAAYxtF,MAAW5K,IAAI,IAAI/rE,GAAIosK,IAA5BiS,IAAW37K,KAA0Bi7F,IAAI,IAAI5rI,GAAI23L,KAAKp0B,IAAI,IAAIvjK,GAAI0+L,KAAK9gD,IAAI,IAAI59I,GAAIgwL,KAAKvW,IAAI,IAAIz5K,GAAIkyM,KAAKqa,IAAI,IAAIzjN,GAAI6+B,IAAI,IAAIsG,GAAIu+K,IAAID,KAAK3E,IAAI,IAAI35K,GAAIw+K,KAAI,GAAO5E,IAAI,IAAI55K,GAAIy+K,KAAI,GAAO,IAAI1sN,GAAI2sN,KAAKC,IAAI,IAAI1kN,GAAIsgN,IAAI,IAAIv6K,GAAI4+K,IAAID,KAAKtO,IAAI,IAAIrwK,GAAI6+K,KAAI,GAAO,IAAIrrN,GAAI43L,IAAI,IAAIprJ,GAAI8+K,IAAI,GAAG,IAAI9+K,GAAI++K,KAAI,GAAM1lL,GAAI,GAAG,IAAI2G,GAAIg/K,IAAI3lL,GAAI,MAAM,IAAI2G,GAAIi/K,KAAI,GAAO5lL,GAAI,GAAG,IAAI2G,GAAIk/K,IAAI7lL,GAAI,MAAOA,GAAI,GAAG,IAAI2G,GAAIm/K,IAAI9lL,GAAI,MAAM,IAAI2G,GAAIo/K,KAAI,GAAO,IAAIp/K,GAAIq/K,KAAI,GAAO,IAAIr/K,GAAIs/K,KAAI,GAAM,IAAIt/K,GAAIu/K,KAAI,GAAYp1G,MAAW6rD,IAAI,IAAIh2H,GAAI6wJ,IAA5B2uB,IAAWn1G,KAA0BsqG,IAAI,IAAI30K,GAAIy/K,IAAI,IAAI5K,IAAI,IAAI70K,GAAI0/K,IAAI,IAAI7mE,IAAI,IAAI74G,GAAIs4J,IAAI,IAAIwc,IAAI,IAAI90K,GAAI2/K,IAAI,IAAIz7B,IAAI,IAAIlkJ,GAAImsK,IAAI,GAAG4I,IAAI,IAAI/0K,GAAI4/K,IAAI,IAAI/U,IAAI,IAAI7qK,GAAI6/K,IAAI,GAAGr2E,IAAI,IAAIxpG,GAAI8/K,IAAI,GAAG/U,IAAI,IAAI/qK,GAAI+/K,IAAI,GAAG/U,IAAI,IAAIhrK,GAAIggL,IAAI,GAAGvwE,IAAI,IAAIzvG,GAAI8hJ,IAAI,IAAIkzB,IAAI,IAAIh1K,GAAIigL,IAAI,IAAInV,IAAI,IAAI9qK,GAAIkgL,IAAI,IAAIhoE,IAAI,IAAInmJ,GAAIouN,KAAKC,IAAI,IAAIt+K,GAAImpK,IAAI,IAAIjrK,GAAIqgL,IAAID,KAAKrG,IAAI,IAAIhoN,GAAIuuN,KAAezG,IAAI,IAAI75K,GAAIugL,IAAtBC,KAAI,GAA2BC,IAAI,IAAIz7K,GAAI,GAAG4lK,IAAI,IAAI5qK,GAAI0gL,IAAID,KAAU5wF,MAAMt8R,EAAEyrK,GAAGsL,GAAIwlH,KAAI,GAAxB6wF,IAA2B,IAAI73L,GAAIv1L,EAAEyrK,GAAG+pB,GAAIx1L,EAAEA,EAAEhU,QAAQ,GAAG,GAAI6nM,IAAI,IAAI4Y,GAAIkkK,IAAIyc,KAAUvsG,MAAW4sE,IAAI,IAAIhhJ,GAAI4gL,IAA5BC,IAAWvsG,KAA0BssE,IAAI,IAAI7uL,GAAI+uN,KAAKjgC,IAAI,IAAI9uL,GAAIgvN,KAAKhgC,IAAI,IAAIhvL,GAAIivN,KAAKlgC,IAAI,IAAI/uL,GAAIkvN,KAAU5/X,EAAE29K,GAAGsL,GAAIqgG,KAAI,GAAlBu2G,IAAqB,IAAIp4L,GAAIznM,EAAE29K,GAAG+pB,GAAI1nM,EAAEA,EAAE9B,QAAQ,GAAG,GAAIw+S,IAAI,IAAI/9F,GAAI2pJ,IAAIu3B,KAAKC,IAAIzoK,IAAKk1E,MAAMmI,MAAMryB,IAAI,IAAI1jE,GAAI2wJ,IAAIwwB,KAAKC,IAAI,IAAI9qL,GAAI,EAAE,GAAG2nG,IAAI,IAAIj+F,GAAI4pJ,IAAIw3B,KAAKjjF,IAAI,IAAIn+F,GAAI6pJ,KAAI,GAAY7pF,KAAWixF,IAAI,IAAIjxJ,GAAIqhL,IAA5BC,IAAWphH,KAA0BsnD,IAAI,IAAIxnH,GAAI2lK,KAAI,GAAO,IAAI5zM,GAAIwvN,KAAKloL,GAAI,GAAG,IAAI2G,GAAIwhL,IAAI,MAAMh2B,IAAI,IAAIz5L,GAAI0vN,KAAK/H,IAAI,IAAI3nN,GAAI2vN,KAAU5gN,MAAWqlM,IAAI,IAAInmK,GAAI2hL,IAA5BC,IAAWz5L,KAA0BomC,IAAI,IAAIx8D,GAAI8vN,KAAU33L,MAAL43L,IAAWppK,GAAIruB,KAAMy7H,IAAI,IAAI9lH,GAAIokK,IAAI0d,KAAKr+G,IAAI,IAAIzjE,GAAI+hL,KAAI,GAAOrX,IAAI,IAAI1qK,GAAIgiL,KAAI,GAAMxX,IAAI,IAAIxqK,GAAIiiL,KAAI,GAAO3R,IAAI,IAAItwK,GAAIkiL,KAAI,GAAOnpE,IAAI,IAAI/4G,GAAIu4J,IAAI,GAAQ96E,MAAW,IAAIz9E,GAAImiL,IAAxBC,IAAW1kG,KAAsB2kG,KAAI,CAAI,CAClmE,SAASh5L,MAAc,IAAIhoM,EAAEkS,EAAd81L,IAAItzD,EAAYgzG,IAAI,IAAIh3E,GAAI2yH,KAAKgzE,IAAI,IAAI3lM,GAAI,oBAAoBm4I,IAAI,IAAIn4I,GAAI,cAAcy0M,IAAI,IAAIvmK,GAAI,gBAAgB8O,MAAM,IAAQqtG,IAAI,IAAIn8G,GAAI,qBAAoB,GAAOiiK,IAAI,IAAInwM,GAAI,sBAAsBmuL,IAAI,IAAInuL,GAAI,6BAA6BmqJ,IAAI,IAAInqJ,GAAI,qBAAqBqqK,IAAI,IAAIrqK,GAAI,qBAAqBu3B,IAAI,IAAIv3B,GAAI,aAAa6lJ,IAAI,IAAI7lJ,GAAI,mBAAmB8jH,IAAI,IAAI51E,GAAI,aAAampE,MAAME,MAAMohE,IAAI,IAAIzqI,GAAI,mBAAmB,GAAGmyB,IAAI,IAAInyB,GAAI,YAAW,GAAOknC,IAAI,IAAIp1E,GAAI6yH,KAAKumC,IAAI,IAAIlrH,GAAI,iBAAiB,MAAMmrH,IAAI,IAAInrH,GAAI,iBAAiB,MAAMy/I,IAAI,IAAIz/I,GAAI,2BAA0B,GAAOizH,IAAI,IAAIjzH,GAAI,4BAA2B,GAAOotF,IAAI,IAAIptF,GAAI,kBAAkBm4D,KAAME,MAAM1E,IAAI,IAAI7hG,GAAI,qBAAqB+yI,IAAI,IAAI7kG,GAAI,qBAAqBi5D,KAAME,MAAMk3C,IAAI,IAAIrwG,GAAI,6BAA6B,IAAItsC,IAAKw8J,IAAI,IAAIlwH,GAAI,+CAA8C,GAAO+zD,IAAI,IAAIjiG,GAAI,aAAaq+L,IAAI,IAAInwJ,GAAI,eAAe5G,GAAI,IAAI4iH,IAAI,IAAIh8G,GAAI,kBAAmC,IAAInX,GAApBv1L,EAAEyrK,GAAGsL,GAAI2qH,KAAI,GAAaj2H,GAAG+pB,GAAIx1L,EAAEA,EAAEhU,QAAQ,GAAG,IAAK6qM,IAAI,IAAI6V,GAAI,oBAAoBn/B,MAAMqnB,MAAMu/K,IAAI,IAAIznK,GAAI,mBAAmB,IAAIh2B,IAAKy5G,IAAI,IAAI3xH,GAAI,+BAA+BixK,IAAI,IAAIjxK,GAAI,6BAA6B0oI,IAAI,IAAIx6F,GAAI,0BAA2C,IAAInX,GAApBznM,EAAE29K,GAAGsL,GAAIue,KAAI,GAAa7pB,GAAG+pB,GAAI1nM,EAAEA,EAAE9B,QAAQ,GAAG,IAAKqjW,IAAI,IAAI3iJ,GAAI+Q,IAAI,GAAGo3J,IAAI,IAAIr2M,GAAI,wBAAwBs9M,IAAI,IAAIt9M,GAAI,mBAAmB1+H,IAAI,IAAI0+H,GAAI,sBAAsB6jL,IAAI,IAAI7jL,GAAI,yBAAyBi+L,IAAI,IAAI/vJ,GAAI,gBAAe,GAAOgwJ,IAAI,IAAIhwJ,GAAI,iBAAgB,GAAOo0I,IAAI,IAAIp0I,GAAI,UAAS,GAAOqqG,IAAI,IAAIv4I,GAAI,qBAAqB24I,IAAI,IAAI34I,GAAI,gBAAgB,IAAIkuC,GAAI,kBAAkB,IAAIh2B,IAAKs2I,IAAI,IAAIxuJ,GAAI,YAAYykL,IAAI,IAAIv2I,GAAI,uBAAsB,GAAO80E,IAAI,IAAIhjH,GAAI,sBAAsBwoM,IAAI,IAAIxoM,GAAI,yBAAyBuoM,IAAI,IAAIvoM,GAAI,uBAAuB0oM,IAAI,IAAI1oM,GAAI,qBAAqB8lK,IAAI,IAAI9lK,GAAI,2BAA2BuwN,IAAI,IAAIvwN,GAAI,kBAAkBmuI,IAAI,IAAInuI,GAAI,mBAAmBmgE,IAAI,IAAIngE,GAAI,cAAcogE,IAAI,IAAIpgE,GAAI,sBAAsB2oL,IAAI,IAAIz6I,GAAIsiL,KAAI,GAAO5nC,IAAI,IAAI16I,GAAIsiL,KAAI,GAAO9rB,IAAI,IAAI1kM,GAAI,gCAAgCq/J,IAAI,IAAIr/J,GAAI,iCAAiCw2J,IAAI,IAAIx2J,GAAI,wBAAwB,CAC3oE,SAAS3T,MAAMA,IAAIroB,EAASq0H,KAAWwwH,IAAI,IAAI56K,GAAIwiL,IAA5BC,IAAWn4H,KAA0BouH,IAAI,IAAI14K,GAAI0iL,KAAK3zK,MAAM,IAAauzC,KAAWg2H,IAAI,IAAIt4K,GAAI2iL,IAA5BC,IAAWrgI,KAA0B61H,IAAI,IAAIp4K,GAAI6iL,KAAI,GAAOxK,IAAI,IAAIr4K,GAAI8iL,KAAI,GAAM3I,IAAI,IAAIn6K,GAAI+iL,KAAI,GAAY33H,KAAW0vH,IAAI,IAAI96K,GAAIgjL,IAA5BC,IAAW33H,KAA0BjyD,GAAI,GAAGs+K,IAAI,IAAI33K,GAAIkjL,IAAI7pL,GAAI,IAAIm+K,IAAI,IAAIx3K,GAAImjL,KAAI,GAAOrH,IAAI,IAAI97K,GAAIojL,KAAI,GAAYlzG,MAAW2nG,IAAI,IAAI73K,GAAIqjL,IAA5BC,IAAWlzG,KAA+BoL,MAAWi8F,IAAI,IAAIz3K,GAAIujL,IAA5BC,IAAW9nG,KAA+B7J,KAAW+lG,IAAI,IAAI53K,GAAIyjL,IAA5BC,IAAW3xG,KAA0B14E,IAAK,GAAG6hL,IAAI,IAAIl7K,GAAI2jL,IAAItqL,IAAK,IAAIA,IAAK,GAAGgiL,IAAI,IAAIr7K,GAAI4jL,IAAIvqL,IAAK,IAAIA,IAAK,GAAG2gL,IAAI,IAAIh6K,GAAI6jL,IAAIxqL,GAAI,IAAIA,IAAK,GAAG4gL,IAAI,IAAIj6K,GAAI8jL,IAAIzqL,GAAI,IAAS6vF,MAAWwuF,IAAI,IAAI13K,GAAI+jL,IAA5BC,IAAW76F,KAA0B9vF,GAAI,GAAG+gL,IAAI,IAAIp6K,GAAIikL,IAAI5qL,GAAI,IAAIohL,IAAI,IAAIz6K,GAAIkkL,IAAI7qL,GAAI9f,MAAW+9E,KAAWwgH,IAAI,IAAI93K,GAAImkL,IAA5BC,IAAW5sH,KAA0BugH,IAAI,IAAI/3K,GAAIqkL,KAAI,GAAO5K,IAAI,IAAIz5K,GAAIskL,IAAI,IAAKnM,IAAI,IAAIn4K,GAAIukL,KAAI,GAAOlrL,IAAK,GAAG+hL,IAAI,IAAIp7K,GAAIwkL,IAAInrL,IAAK,IAAIA,IAAK,GAAGiiL,IAAI,IAAIt7K,GAAIykL,IAAIprL,IAAK,IAAIA,GAAI,GAAG2+K,IAAI,IAAIh4K,GAAI0kL,IAAIrrL,GAAI,KAAUogE,KAAWw+G,IAAI,IAAIj4K,GAAI2kL,IAA5BC,IAAWhrH,KAAkCs+G,IAAI,IAAIl4K,GAAI6kL,IAApBC,IAAIjrH,KAA8B8W,MAAW4nG,IAAI,IAAIv4K,GAAI+kL,IAA5BC,IAAWh0G,KAA0B0pG,IAAI,IAAI3oN,GAAIkzN,KAAUv6H,KAAWouH,IAAI,IAAI94K,GAAIklL,IAA5BC,IAAWt6H,KAA+BiwB,MAAW29F,IAAI,IAAIz4K,GAAIolL,IAA5BC,IAAWrqG,KAA0B,IAAIxnH,GAAImlN,IAAI,IAAI34K,GAAIslL,IAAI,IAAKhP,IAAI,IAAIvkN,GAAIwzN,KAAUj9G,MAAWiuG,IAAI,IAAIv2K,GAAIwlL,IAA5BC,IAAWj9G,KAA+BjO,KAAWq+G,IAAI,IAAI54K,GAAI0lL,IAA5BC,IAAWjrH,KAA+Bv0B,KAAW0yI,IAAI,IAAI74K,GAAI4lL,IAA5BC,IAAW56H,KAA+BiR,KAAWs6G,IAAI,IAAIx2K,GAAI8lL,IAA5BC,IAAWzpH,KAA0Bo6G,IAAI,IAAI12K,GAAIgmL,IAAI,IAAKhL,IAAI,IAAIh7K,GAAIimL,IAAI,GAAGhR,IAAI,IAAIj1K,GAAIkmL,IAAI,MAAM/Q,IAAI,IAAIn1K,GAAImmL,IAAI,IAAIjR,IAAI,IAAIl1K,GAAIomL,IAAI,IAAIhR,IAAI,IAAIp1K,GAAIqmL,IAAI,IAAIhtL,GAAI,GAAGi8K,IAAI,IAAIt1K,GAAIsmL,IAAIjtL,GAAI,IAAIA,GAAI,GAAGk8K,IAAI,IAAIv1K,GAAIumL,IAAIltL,GAAI,IAAIA,GAAI,GAAGm8K,IAAI,IAAIx1K,GAAIwmL,IAAIntL,GAAI,IAAI6/K,IAAI,IAAIl5K,GAAIymL,KAAI,GAAYrsG,MAAW2+F,IAAI,IAAI/4K,GAAI0mL,IAA5BC,IAAWrsG,KAA+B5uB,KAAWstH,IAAI,IAAIh5K,GAAI4mL,IAA5BC,IAAWh7H,KAA0BstH,IAAI,IAAIn5K,GAAI8mL,KAAI,GAAOztL,GAAI,GAAGggL,IAAI,IAAIr5K,GAAI+mL,IAAI1tL,GAAI,KAAKA,GAAI,GAAGkgL,IAAI,IAAIv5K,GAAIgnL,IAAI3tL,GAAI,IAASsiE,KAAW85G,IAAI,IAAIz1K,GAAIinL,IAA5BC,IAAWrrH,KAA0B65G,IAAI,IAAI11K,GAAImnL,IAAI,IAAIxR,IAAI,IAAI31K,GAAIonL,IAAI,GAAQvvH,KAAW+9G,IAAI,IAAI51K,GAAIqnL,IAA5BC,IAAWtvH,KAA0B89G,IAAI,IAAI/jN,GAAIw1N,KAAKC,IAAInuL,GAAI,GAAGA,GAAI,GAAG28K,IAAI,IAAIh2K,GAAIynL,IAAID,KAAU/qH,KAAWw5G,IAAI,IAAIj2K,GAAI0nL,IAA5BC,IAAW/qH,KAA0Bs5G,IAAI,IAAInkN,GAAI61N,KAAKzR,IAAI,IAAIn2K,GAAI6nL,KAAI,GAAMzR,IAAI,IAAIp2K,GAAI8nL,IAAI,GAAGzR,IAAI,IAAIr2K,GAAI+nL,KAAI,GAAW7rG,MAAWm+F,IAAI,IAAIr6K,GAAIgoL,IAA5BC,IAAWxrG,KAA+B/C,MAAW4gG,IAAI,IAAIt6K,GAAIkoL,IAA5BC,IAAWvuG,KAA+B9e,KAAWygH,IAAI,IAAIv7K,GAAIooL,IAA5BC,IAAWrtH,KAA0B4gH,IAAI,IAAI57K,GAAIsoL,KAAI,GAAYvxH,KAAW8kH,IAAI,IAAI77K,GAAIuoL,IAA5BC,IAAWvxH,KAA+B+C,KAAWyhH,IAAI,IAAIz7K,GAAIyoL,IAA5BC,IAAWxuH,KAA0BwhH,IAAI,IAAI17K,GAAI2oL,IAAI,GAAGhN,IAAI,IAAI37K,GAAI4oL,IAAI,GAAGC,IAAIv4G,IAAIw4G,IAAIrxH,IAAIsxH,IAAIhtG,IAAIitG,IAAIjtG,IAAIktG,IAAIrtG,IAASnc,KAALypH,IAAWtpH,IAAKupH,IAAI3xH,IAAI4xH,IAAI5xH,IAAI6xH,IAAI7xH,IAAI8xH,IAAI1pH,IAAI2pH,IAAIt4G,IAAIu4G,IAAIx4G,IAAIy4G,IAAIz4G,IAAI04G,IAAI14G,IAAI24G,IAAI54G,IAAI64G,IAAI34G,IAAI44G,IAAI54G,IAASrH,KAALkgH,IAAW9/G,IAAK+/G,IAAI//G,IAAIggH,IAAI1tH,IAAI2tH,IAAIngH,IAAIogH,IAAIpuH,IAAIquH,IAAIpuH,IAAIquH,IAAItuH,IAAIuuH,IAAItuH,IAAIuuH,IAAIxuH,IAAIyuH,IAAIxuH,IAAIyuH,IAAIvyH,IAAIwyH,IAAIzyH,IAAI0yH,IAAI5uH,IAAI6uH,IAAI5uH,IAAI6uH,IAAI9uH,IAAI+uH,IAAI9uH,IAAI+uH,IAAI/uH,IAAIgvH,IAAIhvH,IAAIivH,IAAIjvH,GAAG,CACp6E,SAASvnB,MAAMA,IAAIz+G,EAAImhN,IAAI,IAAIhmJ,GAAI,yBAAyB,GAAGimJ,IAAI,IAAIjmJ,GAAI,uBAAuB,GAAG8vF,IAAI,IAAI9vF,GAAI,0CAA0C,GAAGuwE,IAAI,IAAIvwE,GAAI,uCAAuC,GAAGkmJ,IAAI,IAAIlmJ,GAAI,yBAAyB,GAAGmmJ,IAAI,IAAInmJ,GAAI,uBAAuB,GAAGomJ,IAAI,IAAIpmJ,GAAI,yBAAyB,GAAG+vF,IAAI,IAAI/vF,GAAI,gCAAgC,GAAGqmJ,IAAI,IAAIrmJ,GAAI,yBAAyB,GAAGsmJ,IAAI,IAAItmJ,GAAI,mCAAmC,GAAGumJ,IAAI,IAAIvmJ,GAAI,iBAAiB,IAAIgwF,IAAI,IAAIhwF,GAAI,iCAAiC,IAAIwmJ,IAAI,IAAIxmJ,GAAI,0BAA0B,IAAIymJ,IAAI,IAAIzmJ,GAAI,yCAAyC,IAAI0mJ,IAAI,IAAI1mJ,GAAI,sCAAsC,IAAI2mJ,IAAI,IAAI3mJ,GAAI,0BAA0B,IAAIowF,IAAI,IAAIpwF,GAAI,qBAAqB,IAAI4mJ,IAAI,IAAI5mJ,GAAI,sBAAsB,IAAI6mJ,IAAI,IAAI7mJ,GAAI,0BAA0B,IAAI8mJ,IAAI,IAAI9mJ,GAAI,mBAAmB,IAAI+mJ,IAAI,IAAI/mJ,GAAI,+BAA+B,IAAIgnJ,IAAI,IAAIhnJ,GAAI,gCAAgC,IAAIinJ,IAAI,IAAIjnJ,GAAI,2BAA2B,IAAIknJ,IAAI,IAAIlnJ,GAAI4uF,IAAI,IAAIu4D,IAAI,IAAInnJ,GAAI6uF,IAAI,IAAIu4D,IAAI,IAAIpnJ,GAAI,0BAA0B,IAAIqnJ,IAAI,IAAIrnJ,GAAI,4BAA4B,IAAIqwF,IAAI,IAAIrwF,GAAI,gCAAgC,IAAI26H,IAAI,IAAI36H,GAAI,2CAA2C,IAAIs6H,IAAI,IAAIt6H,GAAI,gCAAgC,IAAIq6H,IAAI,IAAIr6H,GAAI,mCAAmC,IAAIsnJ,IAAI,IAAItnJ,GAAI,mBAAmB,IAAIunJ,IAAI,IAAIvnJ,GAAI,iCAAiC,IAAIwnJ,IAAI,IAAIxnJ,GAAI,yBAAyB,IAAIynJ,IAAI,IAAIznJ,GAAI,uBAAuB,IAAI06H,IAAI,IAAI16H,GAAI,oCAAoC,IAAI0nJ,IAAI,IAAI1nJ,GAAI,sBAAsB,IAAI2nJ,IAAI,IAAI3nJ,GAAI,yBAAyB,IAAI4nJ,IAAI,IAAI5nJ,GAAI,yCAAyC,IAAIu6H,IAAI,IAAIv6H,GAAI,yCAAyC,IAAI2jD,IAAI,IAAI3jD,GAAI,uCAAuC,IAAI6nJ,IAAI,IAAI7nJ,GAAI,4BAA4B,IAAI8nJ,IAAI,IAAI9nJ,GAAI,wBAAwB,IAAI+nJ,IAAI,IAAI/nJ,GAAI,sBAAsB,IAAIgoJ,IAAI,IAAIhoJ,GAAI,2CAA2C,IAAIswF,IAAI,IAAItwF,GAAI,mBAAmB,IAAIioJ,IAAI,IAAIjoJ,GAAI,0BAA0B,IAAIkoJ,IAAI,IAAIloJ,GAAI,yBAAyB,IAAImoJ,IAAI,IAAInoJ,GAAI,iCAAiC,IAAIooJ,IAAI,IAAIpoJ,GAAI,uBAAuB,IAAIqoJ,IAAI,IAAIroJ,GAAI,sBAAsB,IAAIsoJ,IAAI,IAAItoJ,GAAI,qCAAqC,IAAIw6H,IAAI,IAAIx6H,GAAI,mBAAmB,IAAIujD,IAAI,IAAIvjD,GAAI,yBAAyB,IAAIuoJ,IAAI,IAAIvoJ,GAAI,0BAA0B,IAAI66H,IAAI,IAAI76H,GAAI,4BAA4B,IAAIwoJ,IAAI,IAAIxoJ,GAAI,0BAA0B,GAAG,CAE/8E,SAASqU,MAAMA,IAAIxvE,EAAIgmM,IAAI,IAAIxoK,GAAI,GAAG03N,IAAW,IAAIpjK,GAAI,EAAE,IAAW,IAAIA,GAAI,EAAE,IAAIqjK,IAAW,IAAIrjK,GAAI,EAAE,IAAKsjK,IAAW,IAAItjK,GAAI,EAAE,IAAKujK,IAAW,IAAIvjK,GAAI,EAAE,KAAMwjK,IAAW,IAAIxjK,GAAI,EAAE,IAAKyjK,IAAW,IAAIzjK,GAAI,EAAE,IAAK0jK,IAAW,IAAI1jK,GAAI,EAAE,IAAK2jK,IAAW,IAAI3jK,GAAI,EAAE,IAAK4jK,IAAW,IAAI5jK,GAAI,EAAE,IAAK+qJ,IAAI,IAAIr/M,GAAI,IAA2By8I,IAAvB07E,IAAW,IAAIpyI,GAAI,GAAY,GAAG,IAA2B02D,IAAvB27E,IAAW,IAAIryI,GAAI,GAAY,GAAG,IAAI02D,IAAI27E,IAAI,GAAG,IAAI37E,IAAI27E,IAAI,GAAG,IAAI37E,IAAI27E,IAAI,GAAG,KAA4B37E,IAAvB47E,IAAW,IAAItyI,GAAI,GAAY,EAAE,GAAG02D,IAAI47E,IAAI,GAAG,IAAI57E,IAAI47E,IAAI,GAAG,IAAI57E,IAAI47E,IAAI,GAAG,IAAI57E,IAAI47E,IAAI,GAAG,IAAIC,IAAI/3B,IAAI43B,KAAKI,IAAIh4B,IAAI63B,KAAKI,IAAIj4B,IAAI83B,KAAKx7E,IAAI,IAAIv8I,GAAIw8I,IAAI,IAAIx8I,GAAIg7M,IAAIjvM,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,MAAM45L,IAAIlvM,GAAGC,GAAG6R,IAAG,GAAGwD,IAAI,EAAE,EAAE,CAAC,cAAc,qBAAqB,mBAAmB,mBAAmB,iBAAiB,2BAA2B,8BAA8B,QAAQ,WAAW,WAAW,SAAS,SAAS,SAAS,SAAS,aAAa,UAAU,WAAW,WAAW,QAAQ,QAAQ,SAAS,UAAU,YAAY,UAAU,OAAO,MAAM,UAAU,UAAU,WAAW,cAAc,WAAW,WAAW,wCAAwC,QAAQ,QAAQ,QAAQ,YAAY,4BAA4B,iBAAiB,sBAAsB,8BAA8B,mBAAmB,8BAA8B,qBAAqB,eAAe,SAAS,yBAAyB,0BAA0B,mBAAmB,gCAAgC,yBAAyB,cAAc,iBAAiB,mBAAmB,wBAAwB,WAAW,mBAAmB,0BAA0B,kBAAkB,qCAAqC,8BAA8B,WAAW,WAAW,WAAW,4BAA4B,SAAS,oBAAoB,kCAAkC,oBAAoB,qCAAqC,yBAAyB,eAAe,cAAc,mBAAmB+5L,IAAI,+BAA+B,gCAAgC,8BAA8B,uBAAuB,0BAA0B,sBAAsB,8BAA8B,WAAW,gCAAgC,aAAa,SAAS,UAAU,4BAA4B,kBAAkB,oCAAoC,qCAAqC,0CAA0C,SAASD,IAAIpvM,GAAGC,GAAG4U,IAAG,GAAGsW,IAAI,GAAG,GAAG,CAAC,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,OAAO,OAAO,OAAO,OAAO,OAAO,OAAO,OAAO,OAAO,OAAO,OAAO,OAAO,QAAQ,CAClnF,SAASzD,MAAMA,IAAIvxD,EAAIqgL,IAAI,IAAI5vB,GAAI,UAAU,GAAGpxB,KAAME,MAAMK,KAAMI,MAAMlB,KAAME,KAAKA,IAAIn1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,IAAK6iE,MAAMS,KAAK1wH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC4iE,IAAIH,UAAUsmB,IAAI,IAAI7vB,GAAI,UAAU,EAAEjxB,IAAIQ,IAAIhB,IAAIC,IAAIp1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIsjE,IAAI1wH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC4iE,IAAIF,OAAOhjE,GAAIsjE,IAAI1wH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC4iE,IAAIF,IAAIO,UAAU+lB,IAAI,IAAI9vB,GAAI,UAAU,EAAEhxB,IAAIO,IAAIhB,IAAIE,IAAIr1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIsjE,IAAI1wH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC4iE,IAAID,UAAUsmB,IAAI,IAAI/vB,GAAI,UAAU,EAAElxB,IAAIO,IAAIZ,IAAIF,IAAIn1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIsjE,IAAI1wH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC8iE,IAAIL,UAAUymB,IAAI,IAAIhwB,GAAI,UAAU,EAAEjxB,IAAIM,IAAIZ,IAAID,IAAIp1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIsjE,IAAI1wH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC8iE,IAAIJ,OAAOhjE,GAAIsjE,IAAI1wH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC8iE,IAAIJ,IAAIO,UAAUkmB,IAAI,IAAIjwB,GAAI,UAAU,EAAEhxB,IAAIK,IAAIZ,IAAIA,IAAIr1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIsjE,IAAI1wH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC8iE,IAAIH,UAAUymB,IAAI,IAAIlwB,GAAI,UAAU,EAAEhxB,IAAIK,IAAId,IAAIA,IAAIn1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIsjE,IAAI1wH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAACyiE,IAAIG,IAAIK,UAAUomB,IAAI,IAAInwB,GAAI,UAAU,EAAEhxB,IAAIM,IAAId,IAAID,IAAIn1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIsjE,IAAI1wH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAACyiE,IAAII,OAAOnjE,GAAIsjE,IAAI1wH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAACyiE,IAAII,IAAII,UAAUqmB,IAAI,IAAIpwB,GAAI,UAAU,EAAEhxB,IAAIO,IAAId,IAAIF,IAAIn1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIsjE,IAAI1wH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAACyiE,IAAIK,IAAIG,UAAUsmB,IAAI,IAAIrwB,GAAI,UAAU,EAAElxB,IAAIO,IAAId,IAAIE,IAAIr1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIsjE,IAAI1wH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC2iE,IAAIC,IAAIK,UAAUumB,IAAI,IAAItwB,GAAI,UAAU,GAAGlxB,IAAIQ,IAAId,IAAIC,IAAIr1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIsjE,IAAI1wH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC2iE,IAAIE,OAAOnjE,GAAIsjE,IAAI1wH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC2iE,IAAIE,IAAII,UAAUwmB,IAAI,IAAIvwB,GAAI,UAAU,GAAGlxB,IAAIS,IAAId,IAAIA,IAAIr1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIsjE,IAAI1wH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC2iE,IAAIG,IAAIG,UAAUymB,IAAI,IAAIxwB,GAAI,SAAS,GAAGlxB,IAAIO,IAAId,IAAIA,IAAIn1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC4iE,IAAIH,OAAO/iE,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC4iE,IAAIH,IAAIQ,UAAU0mB,IAAI,IAAIzwB,GAAI,SAAS,GAAGjxB,IAAIM,IAAId,IAAIC,IAAIp1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC4iE,IAAIF,OAAOhjE,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC4iE,IAAIF,IAAIO,UAAU2mB,IAAI,IAAI1wB,GAAI,SAAS,GAAGhxB,IAAIK,IAAId,IAAIE,IAAIr1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC4iE,IAAID,OAAOjjE,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC4iE,IAAID,IAAIM,UAAU4mB,IAAI,IAAI3wB,GAAI,SAAS,GAAGlxB,IAAIQ,IAAId,IAAID,IAAIn1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC6iE,IAAIJ,OAAO/iE,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC6iE,IAAIJ,IAAIQ,UAAU6mB,IAAI,IAAI5wB,GAAI,SAAS,GAAGjxB,IAAIO,IAAId,IAAIA,IAAIp1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC6iE,IAAIH,OAAOhjE,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC6iE,IAAIH,IAAIO,UAAU8mB,IAAI,IAAI7wB,GAAI,SAAS,GAAGhxB,IAAIM,IAAId,IAAIC,IAAIr1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC6iE,IAAIF,OAAOjjE,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC6iE,IAAIF,IAAIM,UAAU+mB,IAAI,IAAI9wB,GAAI,SAAS,GAAGlxB,IAAIS,IAAId,IAAIF,IAAIn1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC8iE,IAAIL,OAAO/iE,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC8iE,IAAIL,IAAIQ,UAAUgnB,IAAI,IAAI/wB,GAAI,SAAS,GAAGjxB,IAAIQ,IAAId,IAAID,IAAIp1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC8iE,IAAIJ,OAAOhjE,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC8iE,IAAIJ,IAAIO,UAAUinB,IAAI,IAAIhxB,GAAI,SAAS,GAAGhxB,IAAIO,IAAId,IAAIA,IAAIr1F,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,CAACwtD,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC8iE,IAAIH,OAAOjjE,GAAIqjE,IAAIzwH,GAAGC,GAAGiwH,IAAG,GAAGxiE,IAAI,GAAG,EAAE,CAAC8iE,IAAIH,IAAIM,UAAU9oG,IAAI,IAAI++F,GAAI3G,IAAI,GAAG,KAAK,KAAK,KAAK,KAAKjgH,GAAGC,GAAGmsN,IAAG,GAAGxsN,IAAI,GAAG,EAAE,IAAI,CACp4F,SAASqwD,MAAMA,IAAI95F,EAAIwpG,KAAKnE,KAAMC,KAAK9nO,EAAEyrK,GAAG0O,GAAIC,GAAI0tD,IAAI9nO,GAAG,GAAG,IAAIyrK,GAAG0O,GAAIC,GAAI0tD,IAAI9nO,GAAG,GAAG,IAAIy1T,IAAI3tF,IAAIh6O,EAAE29K,GAAG0O,GAAIC,GAAI0tD,IAAIh6O,GAAG,GAAG,IAAI29K,GAAG0O,GAAIC,GAAI0tD,IAAIh6O,GAAG,GAAG,IAAI29K,GAAG0O,GAAIC,GAAI0tD,IAAIh6O,GAAG,GAAG,IAAI29K,GAAG0O,GAAIC,GAAI0tD,IAAIh6O,GAAG,GAAG,IAAI29K,GAAG0O,GAAIC,GAAI0tD,IAAIh6O,GAAG,GAAG,IAAI4qY,IAAI5wJ,IAAI95O,EAAEy9K,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,GAAG,IAAI2qY,IAAIltN,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,IAAI,IAAIy9K,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,IAAI,IAAIy9K,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,IAAI,IAAIy9K,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,IAAI,IAAIy9K,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,IAAI,IAAIy9K,GAAG0O,GAAIC,GAAI0tD,IAAI95O,GAAG,IAAI,IAAIy9K,GAAG0O,GAAIkwD,GAAIvC,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIkwD,GAAIvC,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIkwD,GAAIvC,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIkwD,GAAIvC,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIkwD,GAAIvC,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIkwD,GAAIvC,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIkwD,GAAIvC,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIkwD,GAAIvC,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIkwD,GAAIvC,IAAI95O,GAAG,GAAG,IAAIy9K,GAAG0O,GAAIkwD,GAAIvC,IAAI95O,GAAG,GAAG,IAAI4qY,IAAI9wJ,IAAI52O,EAAEu6K,GAAG0O,GAAIC,GAAI0tD,IAAI52O,GAAG,GAAG,IAAIu6K,GAAG0O,GAAIC,GAAI0tD,IAAI52O,GAAG,GAAG,IAAIu6K,GAAG0O,GAAIC,GAAI0tD,IAAI52O,GAAG,GAAG,IAAIu6K,GAAG0O,GAAIC,GAAI0tD,IAAI52O,GAAG,GAAG,IAAIu6K,GAAG0O,GAAIC,GAAI0tD,IAAI52O,GAAG,GAAG,IAAIu6K,GAAG0O,GAAIC,GAAI0tD,IAAI52O,GAAG,GAAG,IAAIu6K,GAAG0O,GAAIkwD,GAAIvC,IAAI52O,GAAG,GAAG,IAAIu6K,GAAG0O,GAAIkwD,GAAIvC,IAAI52O,GAAG,GAAG,IAAI2nY,IAAI/wJ,IAAIhmO,EAAE2pK,GAAG0O,GAAIC,GAAI0tD,IAAIhmO,GAAG,GAAG,IAAIg3X,IAAIhxJ,IAAI7oO,EAAEwsK,GAAG0O,GAAIC,GAAI0tD,IAAI7oO,GAAG,GAAG,IAAIwsK,GAAG0O,GAAIkwD,GAAIvC,IAAI7oO,GAAG,GAAG,IAAIwsK,GAAG0O,GAAIkwD,GAAIvC,IAAI7oO,GAAG,GAAG,IAAIwsK,GAAG0O,GAAIkwD,GAAIvC,IAAI7oO,GAAG,GAAG,IAAIs2T,IAAIztF,IAAIz2O,EAAEo6K,GAAG0O,GAAIC,GAAI0tD,IAAIz2O,GAAG,GAAG,IAAIo6K,GAAG0O,GAAIC,GAAI0tD,IAAIz2O,GAAG,GAAG,IAAIo6K,GAAG0O,GAAIC,GAAI0tD,IAAIz2O,GAAG,GAAG,IAAIo6K,GAAG0O,GAAIC,GAAI0tD,IAAIz2O,GAAG,GAAG,IAAI0nY,IAAIjxJ,IAAIp1M,EAAE+4I,GAAG0O,GAAIC,GAAI0tD,IAAIp1M,GAAG,GAAG,IAAI+4I,GAAG0O,GAAIkwD,GAAIvC,IAAIp1M,GAAG,GAAG,IAAI+4I,GAAG0O,GAAIkwD,GAAIvC,IAAIp1M,GAAG,GAAG,IAAI+4I,GAAG0O,GAAIkwD,GAAIvC,IAAIp1M,GAAG,GAAG,IAAIsmW,IAAIlxJ,IAAIr0N,EAAEg4J,GAAG0O,GAAIC,GAAI0tD,IAAIr0N,GAAG,GAAG,IAAIg4J,GAAG0O,GAAIkwD,GAAIvC,IAAIr0N,GAAG,GAAG,IAAIwlX,IAAInxJ,IAAI/sM,EAAE0wI,GAAG0O,GAAIC,GAAI0tD,IAAI/sM,GAAG,GAAG,IAAIumT,IAAIx5G,IAAI1wN,EAAEq0J,GAAG0O,GAAIkwD,GAAIvC,IAAI1wN,GAAG,GAAG,IAAIq0J,GAAG0O,GAAIkwD,GAAIvC,IAAI1wN,GAAG,GAAG,IAAIq0J,GAAG0O,GAAIkwD,GAAIvC,IAAI1wN,GAAG,GAAG,IAAIq0J,GAAG0O,GAAIkwD,GAAIvC,IAAI1wN,GAAG,GAAG,IAAIq0J,GAAG0O,GAAIkwD,GAAIvC,IAAI1wN,GAAG,GAAG,IAAIq0J,GAAG0O,GAAIkwD,GAAIvC,IAAI1wN,GAAG,GAAG,IAAIq0J,GAAG0O,GAAIkwD,GAAIvC,IAAI1wN,GAAG,GAAG,IAAIq0J,GAAG0O,GAAIkwD,GAAIvC,IAAI1wN,GAAG,GAAG,IAAIq0J,GAAG0O,GAAIkwD,GAAIvC,IAAI1wN,GAAG,GAAG,IAAIq0J,GAAG0O,GAAIkwD,GAAIvC,IAAI1wN,GAAG,GAAG,IAAIq0J,GAAG0O,GAAIkwD,GAAIvC,IAAI1wN,GAAG,IAAI,IAAIq0J,GAAG0O,GAAIkwD,GAAIvC,IAAI1wN,GAAG,IAAI,IAAIq0J,GAAG0O,GAAIkwD,GAAIvC,IAAI1wN,GAAG,IAAI,IAAIq0J,GAAG0O,GAAIkwD,GAAIvC,IAAI1wN,GAAG,IAAI,IAAIq0J,GAAG0O,GAAIkwD,GAAIvC,IAAI1wN,GAAG,IAAI,IAAIi/S,IAAIvuF,IAAIvoD,EAAE9T,GAAG0O,GAAIC,GAAI0tD,IAAIvoD,GAAG,GAAG,IAAI9T,GAAG0O,GAAIC,GAAI0tD,IAAIvoD,GAAG,GAAG,IAAI25M,IAAIztN,GAAG0O,GAAIC,GAAI0tD,IAAIvoD,GAAG,GAAG,IAAI9T,GAAG0O,GAAIC,GAAI0tD,IAAIvoD,GAAG,GAAG,IAAI9T,GAAG0O,GAAIkwD,GAAIvC,IAAIvoD,GAAG,GAAG,IAAI9T,GAAG0O,GAAIkwD,GAAIvC,IAAIvoD,GAAG,GAAG,IAAI9T,GAAG0O,GAAIC,GAAI0tD,IAAIvoD,GAAG,GAAG,IAAIo2I,IAAI7tF,IAAIjxM,EAAE40I,GAAG0O,GAAIC,GAAI0tD,IAAIjxM,GAAG,GAAG,IAAI40I,GAAG0O,GAAIC,GAAI0tD,IAAIjxM,GAAG,GAAG,IAAI40I,GAAG0O,GAAIC,GAAI0tD,IAAIjxM,GAAG,GAAG,IAAI40I,GAAG0O,GAAIC,GAAI0tD,IAAIjxM,GAAG,GAAG,IAAI40I,GAAG0O,GAAIC,GAAI0tD,IAAIjxM,GAAG,GAAG,IAAI40I,GAAG0O,GAAIC,GAAI0tD,IAAIjxM,GAAG,GAAG,IAAI40I,GAAG0O,GAAIkwD,GAAIvC,IAAIjxM,GAAG,GAAG,IAAI0/R,IAAIzuF,IAAIj0N,EAAE43J,GAAG0O,GAAIC,GAAI0tD,IAAIj0N,GAAG,GAAG,IAAIslX,IAAIrxJ,IAAInkJ,EAAE8nF,GAAG0O,GAAIC,GAAI0tD,IAAInkJ,GAAG,GAAG,IAAI8nF,GAAG0O,GAAIC,GAAI0tD,IAAInkJ,GAAG,GAAG,IAAI8nF,GAAG0O,GAAIC,GAAI0tD,IAAInkJ,GAAG,GAAG,IAAI8nF,GAAG0O,GAAIC,GAAI0tD,IAAInkJ,GAAG,GAAG,IAAI8nF,GAAG0O,GAAIC,GAAI0tD,IAAInkJ,GAAG,GAAG,IAAI8nF,GAAG0O,GAAIC,GAAI0tD,IAAInkJ,GAAG,GAAG,IAAIy1S,IAAItxJ,IAAIjmN,GAAG4pJ,GAAG0O,GAAIC,GAAI0tD,IAAIjmN,IAAI,GAAG,IAAI4pJ,GAAG0O,GAAIC,GAAI0tD,IAAIjmN,IAAI,GAAG,IAAI4pJ,GAAG0O,GAAIC,GAAI0tD,IAAIjmN,IAAI,GAAG,IAAI4pJ,GAAG0O,GAAIC,GAAI0tD,IAAIjmN,IAAI,GAAG,IAAI4pJ,GAAG0O,GAAIC,GAAI0tD,IAAIjmN,IAAI,GAAG,IAAI4pJ,GAAG0O,GAAIC,GAAI0tD,IAAIjmN,IAAI,GAAG,IAAI4pJ,GAAG0O,GAAIC,GAAI0tD,IAAIjmN,IAAI,GAAG,IAAI4pJ,GAAG0O,GAAIC,GAAI0tD,IAAIjmN,IAAI,GAAG,IAAI4pJ,GAAG0O,GAAIkwD,GAAIvC,IAAIjmN,IAAI,GAAG,IAAI4pJ,GAAG0O,GAAIkwD,GAAIvC,IAAIjmN,IAAI,GAAG,IAAIw3W,IAAIvxJ,IAAInoD,GAAGlU,GAAG0O,GAAIC,GAAI0tD,IAAInoD,IAAI,GAAG,IAAIlU,GAAG0O,GAAIC,GAAI0tD,IAAInoD,IAAI,GAAG,IAAIlU,GAAG0O,GAAIC,GAAI0tD,IAAInoD,IAAI,GAAG,IAAIlU,GAAG0O,GAAIC,GAAI0tD,IAAInoD,IAAI,GAAG,IAAIlU,GAAG0O,GAAIC,GAAI0tD,IAAInoD,IAAI,GAAG,IAAIlU,GAAG0O,GAAIC,GAAI0tD,IAAInoD,IAAI,GAAG,IAAIlU,GAAG0O,GAAIC,GAAI0tD,IAAInoD,IAAI,GAAG,IAAIlU,GAAG0O,GAAIC,GAAI0tD,IAAInoD,IAAI,GAAG,IAAI48C,IAAIuL,IAAIroD,GAAGhU,GAAG0O,GAAIC,GAAI0tD,IAAIroD,IAAI,GAAG,IAAIhU,GAAG0O,GAAIC,GAAI0tD,IAAIroD,IAAI,GAAG,IAAI65M,IAAIxxJ,IAAIpkJ,EAAE+nF,GAAG0O,GAAIC,GAAI0tD,IAAIpkJ,GAAG,GAAG,IAAI+nF,GAAG0O,GAAIC,GAAI0tD,IAAIpkJ,GAAG,GAAG,IAAI+nF,GAAG0O,GAAIC,GAAI0tD,IAAIpkJ,GAAG,GAAG,IAAI+nF,GAAG0O,GAAIC,GAAI0tD,IAAIpkJ,GAAG,GAAG,IAAI+nF,GAAG0O,GAAIC,GAAI0tD,IAAIpkJ,GAAG,GAAG,IAAI+nF,GAAG0O,GAAIC,GAAI0tD,IAAIpkJ,GAAG,GAAG,IAAI+nF,GAAG0O,GAAIkwD,GAAIvC,IAAIpkJ,GAAG,GAAG,IAAI61S,IAAIzxJ,IAAIpoD,GAAGjU,GAAG0O,GAAIC,GAAI0tD,IAAIpoD,IAAI,GAAG,IAAI0sD,IAAItE,IAAI11M,CAAC,CAE7uG,SAASonW,IAAI1rY,GAAGylM,GAAIzlM,EAAE,IAAI6wU,IAAIhqJ,GAAIJ,GAAIG,GAAIJ,GAAIG,GAAID,GAAI,IAAIh4B,GAAIwnN,KAAK,eAAe,ijBAAijB,IAAIvtN,IAAKutN,KAAKvqI,IAAKq+D,MAAME,KAAK3rH,GAAGC,GAAGyrH,IAAG,GAAGh+D,IAAI,IAAI,EAAE,CAACk+D,IAAIC,IAAIC,IAAIC,IAAIC,IAAIC,UAAUjvC,GAAIv7P,EAAEk2W,IAAIkoB,IAAI59M,IAAIioM,MAAMltH,GAAIv7P,EAAEk2W,IAAImoB,IAAI79M,IAAI+yM,MAAMh4H,GAAIv7P,EAAEk2W,IAAIe,IAAIz2L,IAAI4qI,MAAM7vD,GAAIv7P,EAAEk2W,IAAIooB,IAAI99M,IAAI6lE,MAAMkV,GAAIv7P,EAAEk2W,IAAI4U,IAAItqM,IAAI8lE,MAAMiV,GAAIv7P,EAAEk2W,IAAIqoB,IAAI/9M,IAAI6qI,MAAM9vD,GAAIv7P,EAAEk2W,IAAIsoB,IAAIh+M,IAAIkoB,MAAM6yD,GAAIv7P,EAAEk2W,IAAIwoB,IAAIl+M,IAAIgoB,MAAM+yD,GAAIv7P,EAAEk2W,IAAIyoB,IAAIn+M,IAAIioB,MAAM8yD,GAAIv7P,EAAEk2W,IAAIuoB,IAAIj+M,IAAI8qI,MAAM/vD,GAAIv7P,EAAEk2W,IAAIzV,IAAIjgL,IAAI0qI,MAAM3vD,GAAIv7P,EAAEk2W,IAAI0oB,IAAIp+M,IAAI+lE,MAAMgV,GAAIv7P,EAAEk2W,IAAI2oB,IAAIr+M,IAAI+qI,MAAMhwD,GAAIv7P,EAAEk2W,IAAI4oB,IAAIt+M,IAAIosI,MAAMrxD,GAAIv7P,EAAEk2W,IAAI2uB,IAAIrkN,IAAIo1L,MAAMr6G,GAAIv7P,EAAEk2W,IAAI6uB,IAAIvkN,IAAIgrI,MAAMjwD,GAAIv7P,EAAEk2W,IAAI4uB,IAAItkN,IAAIsnI,MAAMvsD,GAAIv7P,EAAEk2W,IAAI8uB,IAAIxkN,IAAIunI,MAAMxsD,GAAIv7P,EAAEk2W,IAAI9G,IAAIp3J,GAAI,IAAIujD,GAAIv7P,EAAEk2W,IAAI+uB,IAAIzkN,IAAIwqL,MAAMzvG,GAAIv7P,EAAEk2W,IAAIgvB,IAAI1kN,IAAIqrL,MAAMtwG,GAAIv7P,EAAEk2W,IAAIivB,IAAI3kN,IAAI2+I,MAAM5jE,GAAIv7P,EAAEk2W,IAAI0vB,IAAIplN,IAAI8hM,MAAM/mH,GAAIv7P,EAAEk2W,IAAI4vB,IAAItlN,IAAI++L,MAAMhkH,GAAIv7P,EAAEk2W,IAAI6vB,IAAIvlN,IAAIopK,MAAMruF,GAAIv7P,EAAEk2W,IAAI8vB,IAAIxlN,IAAIumL,MAAMxrG,GAAIv7P,EAAEk2W,IAAIgwB,IAAI1lN,IAAIg0M,MAAMj5H,GAAIv7P,EAAEk2W,IAAIkwB,IAAI5lN,IAAIk0M,MAAMn5H,GAAIv7P,EAAEk2W,IAAImwB,IAAI7lN,IAAI8mL,MAAM/rG,GAAIv7P,EAAEk2W,IAAIqwB,IAAI/lN,IAAIikL,MAAMlpG,GAAIv7P,EAAEk2W,IAAIswB,IAAIhmN,IAAIymL,MAAM1rG,GAAIv7P,EAAEk2W,IAAIuwB,IAAIjmN,IAAI2mL,MAAM5rG,GAAIv7P,EAAEk2W,IAAIwwB,IAAIlmN,IAAI2yK,MAAM53F,GAAIv7P,EAAEk2W,IAAIguB,IAAI1jN,IAAIisI,MAAMlxD,GAAIv7P,EAAEk2W,IAAIiuB,IAAI3jN,IAAIksI,MAAMnxD,GAAIv7P,EAAEk2W,IAAIuuB,IAAIjkN,IAAIs4L,MAAMv9G,GAAIv7P,EAAEk2W,IAAIyuB,IAAInkN,IAAI40M,MAAM75H,GAAIv7P,EAAEk2W,IAAI1V,IAAI80B,KAAK/5H,GAAIv7P,EAAEk2W,IAAIymB,IAAInH,KAAKj6H,GAAIv7P,EAAEk2W,IAAIsqB,IAAI,GAAGjlI,GAAIv7P,EAAEk2W,IAAIxV,IAAI1oJ,GAAI,IAAIujD,GAAIv7P,EAAEk2W,IAAIvV,IAAIlyC,KAAKlzD,GAAIv7P,EAAEk2W,IAAIsnB,IAAIh9M,IAAIw1L,MAAMz6G,GAAIv7P,EAAEk2W,IAAI6U,IAAIvqM,IAAIshH,MAAMvmC,GAAIv7P,EAAEk2W,IAAIoqB,IAAI9/M,IAAImmK,MAAMprF,GAAIv7P,EAAEk2W,IAAI7M,IAAI7oL,IAAIi1M,MAAMl6H,GAAIv7P,EAAEk2W,IAAIomB,IAAI97M,IAAI+9E,MAAMhD,GAAIv7P,EAAEk2W,IAAI2mB,IAAIr8M,IAAI8sL,MAAM/xG,GAAIv7P,EAAEk2W,IAAI0M,KAAKl1J,MAAM,IAAO6tC,GAAIv7P,EAAEk2W,IAAI0qB,IAAIpgN,IAAI+vJ,MAAMh1E,GAAIv7P,EAAEk2W,IAAI2qB,IAAIrgN,IAAIiwJ,MAAMl1E,GAAIv7P,EAAEk2W,IAAI5N,IAAI9nL,IAAIykK,MAAM1pF,GAAIv7P,EAAEk2W,IAAI5G,IAAI9uL,IAAI0kK,MAAM3pF,GAAIv7P,EAAEk2W,IAAI1N,IAAIhoL,IAAI2kK,MAAM5pF,GAAIv7P,EAAEk2W,IAAIumB,IAAI9G,KAAKp6H,GAAIv7P,EAAEk2W,IAAI2M,IAAIriM,IAAIkhJ,MAAMnmE,GAAIv7P,EAAEk2W,IAAImpB,IAAI7+M,IAAI6+E,MAAM9D,GAAIv7P,EAAEk2W,IAAI6M,IAAIviM,IAAI+0L,MAAMh6G,GAAIv7P,EAAEk2W,IAAIwqB,IAAIlgN,IAAIo1M,MAAMr6H,GAAIv7P,EAAEk2W,IAAIyqB,IAAIngN,IAAIq1M,MAAMt6H,GAAIv7P,EAAEk2W,IAAIqpB,IAAIzJ,KAAKv6H,GAAIv7P,EAAEk2W,IAAIupB,IAAIj/M,IAAIu1M,MAAMx6H,GAAIv7P,EAAEk2W,IAAIwpB,IAAIl/M,IAAIw1M,MAAMz6H,GAAIv7P,EAAEk2W,IAAIypB,IAAIn/M,IAAIy1M,MAAM16H,GAAIv7P,EAAEk2W,IAAI0pB,IAAIp/M,IAAI01M,MAAM36H,GAAIv7P,EAAEk2W,IAAI4rB,IAAIthN,IAAIwoI,MAAMztD,GAAIv7P,EAAEk2W,IAAIgsB,IAAI1hN,IAAImhM,MAAMpmH,GAAIv7P,EAAEk2W,IAAIwsB,IAAIliN,IAAIwgM,MAAMzlH,GAAIv7P,EAAEk2W,IAAI2rB,IAAIrhN,IAAIu/I,MAAMxkE,GAAIv7P,EAAEk2W,IAAIksB,IAAI5hN,IAAIurH,MAAMxwC,GAAIv7P,EAAEk2W,IAAI8rB,IAAIxhN,IAAIq1L,MAAMt6G,GAAIv7P,EAAEk2W,IAAI4sB,IAAItiN,IAAIkoI,MAAMntD,GAAIv7P,EAAEk2W,IAAI8sB,IAAIxiN,IAAIs1L,MAAMv6G,GAAIv7P,EAAEk2W,IAAImtB,IAAI7iN,IAAI4hM,MAAM7mH,GAAIv7P,EAAEk2W,IAAIotB,IAAI9iN,IAAI2hM,MAAM5mH,GAAIv7P,EAAEk2W,IAAIstB,IAAIhjN,IAAImoI,MAAMptD,GAAIv7P,EAAEk2W,IAAIgtB,IAAI1iN,IAAI0hM,MAAM3mH,GAAIv7P,EAAEk2W,IAAIsrB,IAAIhhN,IAAIy3L,MAAM18G,GAAIv7P,EAAEk2W,IAAIurB,IAAIjhN,IAAI+4L,MAAMh+G,GAAIv7P,EAAEk2W,IAAIorB,IAAI9gN,IAAIisJ,MAAMlxE,GAAIv7P,EAAEk2W,IAAIwtB,IAAIljN,IAAIohM,MAAMrmH,GAAIv7P,EAAEk2W,IAAI6tB,IAAIvjN,IAAI22M,MAAM57H,GAAIv7P,EAAEk2W,IAAImrB,IAAI7gN,IAAIshM,MAAMvmH,GAAIv7P,EAAEk2W,IAAI+tB,IAAIzjN,IAAIs/I,MAAMvkE,GAAIv7P,EAAEk2W,IAAImuB,IAAI7jN,IAAIktJ,MAAMnyE,GAAIv7P,EAAEk2W,IAAIquB,IAAI/jN,IAAIqkE,MAAM0W,GAAIv7P,EAAEk2W,IAAIzG,IAAIjvL,IAAI4kK,MAAM7pF,GAAIv7P,EAAEk2W,IAAI2tB,IAAIrjN,IAAIolJ,MAAMrqE,GAAIv7P,EAAEk2W,IAAImvB,IAAI7kN,IAAIu4L,MAAMx9G,GAAIv7P,EAAEk2W,IAAIqvB,IAAI/kN,IAAIi7L,MAAMlgH,GAAIv7P,EAAEk2W,IAAIkvB,IAAI5kN,IAAIo3M,MAAMr8H,GAAIv7P,EAAEk2W,IAAIuvB,IAAIjlN,IAAIyhM,MAAM1mH,GAAIv7P,EAAEk2W,IAAIwvB,IAAIllN,IAAIu3M,MAAMx8H,GAAIv7P,EAAEk2W,IAAIyvB,IAAInlN,IAAIy3M,MAAM18H,GAAIv7P,EAAEk2W,IAAI3N,IAAI/nL,IAAImkK,MAAMppF,GAAIv7P,EAAEk2W,IAAIgnB,IAAI18M,IAAIw+E,MAAMzD,GAAIv7P,EAAEk2W,IAAIgB,IAAI12L,IAAIk0G,MAAMn5B,GAAIv7P,EAAEk2W,IAAI8pB,IAAIx/M,IAAIk6I,MAAMn/D,GAAIv7P,EAAEk2W,IAAIoO,IAAI9jM,IAAI23M,MAAM58H,GAAIv7P,EAAEk2W,IAAI+sB,IAAIziN,IAAI6gM,MAAM9lH,GAAIv7P,EAAEk2W,IAAImqB,IAAI7/M,IAAIq+E,MAAMtD,GAAIv7P,EAAEk2W,IAAIinB,IAAI38M,IAAI86L,MAAM//G,GAAIv7P,EAAEk2W,IAAIknB,IAAI58M,IAAI03L,MAAM38G,GAAIv7P,EAAEk2W,IAAIkqB,IAAI5/M,IAAIi5K,MAAMl+F,GAAIv7P,EAAEk2W,IAAIgpB,IAAI1+M,IAAIm1L,MAAMp6G,GAAIv7P,EAAEk2W,IAAI+oB,IAAIz+M,IAAIi4M,MAAMl9H,GAAIv7P,EAAEk2W,IAAIssB,IAAIhiN,IAAI2tM,MAAM5yH,GAAIv7P,EAAEk2W,IAAIusB,IAAIjiN,IAAI4tM,MAAM7yH,GAAIv7P,EAAEk2W,IAAI7N,IAAI7nL,IAAI89E,MAAM/C,GAAIv7P,EAAEk2W,IAAIwrB,IAAIlhN,IAAIq4M,MAAMt9H,GAAIv7P,EAAEk2W,IAAI0sB,IAAIpiN,IAAIygM,MAAM1lH,GAAIv7P,EAAEk2W,IAAIywB,IAAInmN,IAAIqtI,MAAMtyD,GAAIv7P,EAAEk2W,IAAI2wB,IAAIrmN,IAAIomL,MAAMrrG,GAAIv7P,EAAEk2W,IAAIqnB,IAAI/8M,IAAI67L,MAAM9gH,GAAIv7P,EAAEk2W,IAAI2sB,IAAIriN,IAAI24M,MAAM59H,GAAIv7P,EAAEk2W,IAAI0tB,IAAIpjN,IAAIkhM,MAAMnmH,GAAIv7P,EAAEk2W,IAAI8oB,IAAIx+M,IAAIqtL,MAAMtyG,GAAIv7P,EAAEk2W,IAAIirB,IAAI3gN,IAAI84M,MAAM/9H,GAAIv7P,EAAEk2W,IAAIyrB,IAAInhN,IAAIg5M,MAAMj+H,GAAIv7P,EAAEk2W,IAAI0uB,IAAIpkN,IAAIk5M,MAAMn+H,GAAIv7P,EAAEk2W,IAAIosB,IAAI9hN,IAAIo5M,MAAMr+H,GAAIv7P,EAAEk2W,IAAIitB,IAAI3iN,IAAIs5M,MAAMv+H,GAAIv7P,EAAEk2W,IAAI8c,IAAIxyM,IAAIuhM,MAAMxmH,GAAIv7P,EAAEk2W,IAAIqsB,IAAI/hN,IAAI4qM,MAAM7vH,GAAIv7P,EAAEk2W,IAAIktB,IAAI5iN,IAAI2qM,MAAM5vH,GAAIv7P,EAAEk2W,IAAI6wB,IAAIvmN,IAAI6lL,MAAM9qG,GAAIv7P,EAAEk2W,IAAIkxB,IAAI5mN,IAAI25M,MAAM5+H,GAAIv7P,EAAEk2W,IAAIoxB,IAAI9mN,IAAI8lL,MAAM/qG,GAAIv7P,EAAEk2W,IAAIqxB,IAAI/mN,IAAI+lL,MAAMhrG,GAAIv7P,EAAEk2W,IAAI+wB,IAAIzmN,IAAIu1L,MAAMx6G,GAAIv7P,EAAEk2W,IAAIgxB,IAAI1mN,IAAIokK,MAAMrpF,GAAIv7P,EAAEk2W,IAAI6rB,IAAIvhN,IAAIwhM,KAAK,CACrxH,SAASzV,IAAIvsW,EAAEkS,GAAG,IAAMnS,EAAs3H,OAAh3H4rY,MAAKA,IAAI,IAAIn5N,GAAIo5N,IAAI,IAAIp5N,GAAO0xC,MAAMA,MAAwBwqG,IAAjC3uT,EAAqB,IAAIk4P,GAAI,GAAU,cAAc/oE,GAAIy8M,IAAIj/B,IAAI3sW,GAAGmvL,GAAI08M,IAAIl/B,IAAI+F,IAAI1yW,IAA8B2uT,IAA1B3uT,EAAc,IAAIk4P,GAAI,GAAU4zI,KAAK38M,GAAIy8M,IAAIn/B,IAAIzsW,GAAGmvL,GAAI08M,IAAIp/B,IAAIiG,IAAI1yW,IAA8B2uT,IAA1B3uT,EAAc,IAAIk4P,GAAI,GAAU4zI,KAAK38M,GAAIy8M,IAAIn/B,IAAIzsW,GAAGmvL,GAAI08M,IAAIp/B,IAAIiG,IAAI1yW,IAA8B2uT,IAA1B3uT,EAAc,IAAIk4P,GAAI,GAAU6zI,KAAKh0B,IAAI/3W,EAAE49K,GAAG2M,GAAIqhN,IAAIn/B,KAAK,MAAMt9K,GAAIy8M,IAAIl/B,IAAI1sW,GAAGmvL,GAAI08M,IAAIn/B,IAAIgG,IAAI1yW,IAA8B2uT,IAA1B3uT,EAAc,IAAIk4P,GAAI,GAAU,wzGAAwzG/oE,GAAIy8M,IAAIh/B,IAAI5sW,GAAGmvL,GAAI08M,IAAIj/B,IAAI8F,IAAI1yW,IAA8B2uT,IAA1B3uT,EAAc,IAAIk4P,GAAI,GAAU6zI,KAAKn9E,IAAI5uT,EAAE,GAAG,IAAI4uT,IAAI5uT,EAAE,GAAG,IAAImvL,GAAIy8M,IAAI/+B,IAAI7sW,GAAGmvL,GAAI08M,IAAIh/B,IAAI6F,IAAI1yW,KAAQ49K,GAAG2M,GAALp4K,EAASy5X,IAAmBC,IAAf5rY,GAAG,IAAgC,CAEt5H,SAAS68L,IAAI78L,GAAG,OAAOq8N,GAAI,2BAA2Br8N,GAAG,cAAcq8N,GAAI,qCAAqCr8N,GAAG,8CAA8Cq8N,GAAIv/B,IAAI98L,GAAG,mBAAmBq8N,GAAIr/B,IAAIh9L,GAAG,4BAA4Bq8N,GAAI2kI,IAAIhhW,GAAG,oCAAoCq8N,GAAIs+J,IAAI36X,GAAG,4EAA4Eq8N,GAAIu+J,IAAI56X,GAAG,+BAA+Bq8N,GAAIw+J,IAAI76X,GAAG,+BAA+Bq8N,GAAI0vK,IAAI/rY,GAAG,mBAAmBq8N,GAAI2vK,IAAIhsY,GAAG,qDAAqDq8N,GAAI4vK,IAAIjsY,GAAG,mBAAmBq8N,GAAI6vK,IAAIlsY,GAAG,wDAAwDq8N,GAAI8vK,IAAInsY,GAAG,sGAAsGq8N,GAAI+vK,IAAIpsY,GAAG,4DAA4Dq8N,GAAIgwK,IAAIrsY,GAAG,gDAAgDq8N,GAAIymH,IAAI9iV,GAAG,iDAAiDq8N,GAAI0mH,IAAI/iV,GAAG,wCAAwCq8N,GAAI41J,IAAIjyX,GAAG,6BAA6Bq8N,GAAI21J,IAAIhyX,GAAG,oBAAoBq8N,GAAIiwK,IAAItsY,GAAG,kDAAkDq8N,GAAIg/J,IAAIr7X,GAAG,sDAAsDq8N,GAAIkwK,IAAIvsY,GAAG,4CAA4Cq8N,GAAI,cAAcr8N,GAAG,uBAAuBq8N,GAAI4+J,IAAIj7X,GAAG,mBAAmBq8N,GAAI6+J,IAAIl7X,GAAG,qDAAqDq8N,GAAI8+J,IAAIn7X,GAAG,qDAAqDq8N,GAAI++J,IAAIp7X,GAAG,kDAAkDq8N,GAAImwK,IAAIxsY,GAAG,mBAAmBq8N,GAAIowK,IAAIzsY,GAAG,2CAA2Cq8N,GAAIi/J,IAAIt7X,GAAG,8DAA8Dq8N,GAAIqwK,IAAI1sY,GAAG,gCAAgCq8N,GAAIswK,IAAI3sY,GAAG,8BAA8Bq8N,GAAIuwK,IAAI5sY,GAAG,gCAAgCq8N,GAAIwwK,IAAI7sY,GAAG,8BAA8Bq8N,GAAIywK,IAAI9sY,GAAG,8BAA8Bq8N,GAAI4kI,IAAIjhW,GAAG,kEAAkEq8N,GAAIg2J,IAAIryX,GAAG,2CAA2Cq8N,GAAIo2J,IAAIzyX,GAAG,4DAA4Dq8N,GAAIk2J,IAAIvyX,GAAG,kDAAkDq8N,GAAIm2J,IAAIxyX,GAAG,gEAAgEq8N,GAAIi2J,IAAItyX,GAAG,iDAAiDq8N,GAAI,qCAAqCr8N,GAAG,gDAAgDq8N,GAAI,4CAA4Cr8N,GAAG,8CAA8Cq8N,GAAI,qCAAqCr8N,GAAG,kCAAkCq8N,GAAI,gDAAgDr8N,GAAG,gCAAgCq8N,GAAI,+CAA+Cr8N,GAAG,+BAA+Bq8N,GAAI,8CAA8Cr8N,GAAG,8BAA8Bq8N,GAAI,4CAA4Cr8N,GAAG,2BAA2Bq8N,GAAI,wCAAwCr8N,GAAG,iCAAiCq8N,GAAI,mDAAmDr8N,GAAG,wCAAwCq8N,GAAI,gDAAgDr8N,GAAG,+BAA+Bq8N,GAAI,6CAA6Cr8N,GAAG,4CAA4Cq8N,GAAI,gDAAgDr8N,GAAG,iDAAiDq8N,GAAI,4CAA4Cr8N,GAAG,qDAAqDq8N,GAAI,4CAA4Cr8N,GAAG,4CAA4Cq8N,GAAI,gEAAgEr8N,GAAG,mGAAmGq8N,GAAI,0DAA0Dr8N,GAAG,8EAA8Eq8N,GAAI,oDAAoDr8N,GAAG,yDAAyDq8N,GAAI,yDAAyDr8N,GAAG,mFAAmFq8N,GAAI,mDAAmDr8N,GAAG,8EAA8Eq8N,GAAI,4CAA4Cr8N,GAAG,iGAAiGq8N,GAAI,qCAAqCr8N,GAAG,qCAAqCq8N,GAAI,sCAAsCr8N,GAAG,uDAAuDq8N,GAAI,mCAAmCr8N,GAAG,2DAA2Dq8N,GAAI,0DAA0Dr8N,GAAG,uEAAuEq8N,GAAI,qCAAqCr8N,GAAG,6CAA6Cq8N,GAAI,yDAAyDr8N,GAAG,gFAAgFq8N,GAAI,uDAAuDr8N,GAAG,mEAAmEq8N,GAAI,kDAAkDr8N,GAAG,+DAA+Dq8N,GAAI,iEAAiEr8N,GAAG,mFAAmFq8N,GAAI,yCAAyCr8N,GAAG,sEAAsEq8N,GAAI,qDAAqDr8N,GAAG,qEAAqEA,CAAC,CAElkL,SAAS62W,MAAMA,IAAIniO,GAAIoiO,IAAI74L,GAAGqS,IAAGokI,IAAI,GAAG/sG,IAAI,GAAG,IAAO,GAAG,GAAGmvJ,IAAI,IAAI,GAAGA,IAAI,IAAI,GAAGA,IAAI,IAAI,GAAGA,IAAI,IAAI,GAAGA,IAAI,IAAI,GAAGljI,GAAIkjI,IAAI,GAAG,GAAG,IAAIA,IAAI,IAAI,EAAEljI,GAAIkjI,IAAI,GAAG,GAAG,IAAIljI,GAAIkjI,IAAI,GAAG,IAAI,IAAIA,IAAI,IAAI,GAAGljI,GAAIkjI,IAAI,GAAG,IAAI,IAAIA,IAAI,IAAI,GAAGA,IAAI,IAAI,GAAGA,IAAI,IAAI,EAAEA,IAAI,IAAI,GAAGA,IAAI,IAAI,GAAGljI,GAAIkjI,IAAI,GAAG,GAAG,IAAIljI,GAAIkjI,IAAI,GAAG,IAAI,GAAGljI,GAAIkjI,IAAI,GAAG,GAAG,IAAIA,IAAI,IAAI,EAAEA,IAAI,IAAI,GAAGA,IAAI,KAAK,EAAEA,IAAI,IAAI,GAAGljI,GAAIkjI,IAAI,GAAG,KAAK,GAAGljI,GAAIkjI,IAAI,IAAI,IAAI,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,IAAI,IAAI,IAAIljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIA,IAAI,KAAK,GAAGljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIA,IAAI,KAAK,GAAGljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIljI,GAAIkjI,IAAI,IAAI,IAAI,IAAIljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIljI,GAAIkjI,IAAI,IAAI,IAAI,IAAIljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIA,IAAI,KAAK,GAAGljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIA,IAAI,KAAK,GAAGljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIljI,GAAIkjI,IAAI,IAAI,IAAI,IAAIljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIljI,GAAIkjI,IAAI,IAAI,IAAI,IAAIljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIljI,GAAIkjI,IAAI,IAAI,IAAI,IAAIljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIljI,GAAIkjI,IAAI,IAAI,IAAI,IAAIljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIljI,GAAIkjI,IAAI,IAAI,IAAI,IAAIljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIljI,GAAIkjI,IAAI,IAAI,IAAI,IAAIljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIljI,GAAIkjI,IAAI,IAAI,IAAI,IAAIljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIljI,GAAIkjI,IAAI,IAAI,IAAI,IAAIljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIljI,GAAIkjI,IAAI,IAAI,IAAI,IAAIA,IAAI,MAAM,GAAGA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIA,IAAI,KAAK,GAAGA,IAAI,MAAM,GAAGA,IAAI,KAAK,GAAGljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIA,IAAI,KAAK,GAAGljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIA,IAAI,KAAK,GAAGljI,GAAIkjI,IAAI,IAAI,KAAK,IAAIljI,GAAIkjI,IAAI,IAAI,IAAI,IAAIA,IAAI,MAAM,GAAGA,IAAI,KAAK,GAAGA,IAAI,MAAM,GAAGA,IAAI,KAAK,GAAGA,IAAI,MAAM,GAAGA,IAAI,KAAK,GAAGA,IAAI,MAAM,GAAGA,IAAI,KAAK,GAAGljI,GAAIkjI,IAAI,IAAI,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGA,IAAI,OAAO,GAAGljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIA,IAAI,MAAM,GAAGljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkjI,IAAI,KAAK,MAAM,IAAIljI,GAAIkjI,IAAI,KAAK,KAAK,IAAIljI,GAAIkj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","sources":["../node_modules/classnames/index.js","../node_modules/cytoscape-elk/dist/cytoscape-elk.js","../node_modules/cytoscape-node-html-label/src/cytoscape-node-html-label.ts","../node_modules/cytoscape/dist/cytoscape.cjs.js","../node_modules/elkjs/lib/elk-api.js","../node_modules/elkjs/lib/elk-worker.min.js","../node_modules/elkjs/lib/main.js","../node_modules/heap/index.js","../node_modules/heap/lib/heap.js","../node_modules/invariant/browser.js","../node_modules/lodash/_Hash.js","../node_modules/lodash/_ListCache.js","../node_modules/lodash/_Map.js","../node_modules/lodash/_MapCache.js","../node_modules/lodash/_Symbol.js","../node_modules/lodash/_arrayMap.js","../node_modules/lodash/_assignValue.js","../node_modules/lodash/_assocIndexOf.js","../node_modules/lodash/_baseAssignValue.js","../node_modules/lodash/_baseGet.js","../node_modules/lodash/_baseGetTag.js","../node_modules/lodash/_baseIsNative.js","../node_modules/lodash/_baseSet.js","../node_modules/lodash/_baseToString.js","../node_modules/lodash/_baseTrim.js","../node_modules/lodash/_castPath.js","../node_modules/lodash/_copyArray.js","../node_modules/lodash/_coreJsData.js","../node_modules/lodash/_defineProperty.js","../node_modules/lodash/_freeGlobal.js","../node_modules/lodash/_getMapData.js","../node_modules/lodash/_getNative.js","../node_modules/lodash/_getRawTag.js","../node_modules/lodash/_getValue.js","../node_modules/lodash/_hashClear.js","../node_modules/lodash/_hashDelete.js","../node_modules/lodash/_hashGet.js","../node_modules/lodash/_hashHas.js","../node_modules/lodash/_hashSet.js","../node_modules/lodash/_isIndex.js","../node_modules/lodash/_isKey.js","../node_modules/lodash/_isKeyable.js","../node_modules/lodash/_isMasked.js","../node_modules/lodash/_listCacheClear.js","../node_modules/lodash/_listCacheDelete.js","../node_modules/lodash/_listCacheGet.js","../node_modules/lodash/_listCacheHas.js","../node_modules/lodash/_listCacheSet.js","../node_modules/lodash/_mapCacheClear.js","../node_modules/lodash/_mapCacheDelete.js","../node_modules/lodash/_mapCacheGet.js","../node_modules/lodash/_mapCacheHas.js","../node_modules/lodash/_mapCacheSet.js","../node_modules/lodash/_memoizeCapped.js","../node_modules/lodash/_nativeCreate.js","../node_modules/lodash/_objectToString.js","../node_modules/lodash/_root.js","../node_modules/lodash/_stringToPath.js","../node_modules/lodash/_toKey.js","../node_modules/lodash/_toSource.js","../node_modules/lodash/_trimmedEndIndex.js","../node_modules/lodash/debounce.js","../node_modules/lodash/eq.js","../node_modules/lodash/get.js","../node_modules/lodash/isArray.js","../node_modules/lodash/isFunction.js","../node_modules/lodash/isObject.js","../node_modules/lodash/isObjectLike.js","../node_modules/lodash/isSymbol.js","../node_modules/lodash/memoize.js","../node_modules/lodash/now.js","../node_modules/lodash/set.js","../node_modules/lodash/toNumber.js","../node_modules/lodash/toPath.js","../node_modules/lodash/toString.js","../node_modules/moment/moment.js","../../../../../../solarch/plotly/webgl/plotly.js/node_modules/regl-splom/index.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/index.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/react-dom/cjs/react-dom.production.min.js","../node_modules/react-dom/client.js","../node_modules/react-dom/index.js","../node_modules/src/factory.js","../node_modules/src/react-plotly.js","../node_modules/react/cjs/react-jsx-runtime.production.min.js","../node_modules/react/cjs/react.production.min.js","../node_modules/react/index.js","../node_modules/react/jsx-runtime.js","../node_modules/scheduler/cjs/scheduler.production.min.js","../node_modules/scheduler/index.js","../node_modules/warning/warning.js","../node_modules/web-worker/cjs/browser.js","../webpack/bootstrap","../webpack/runtime/compat get default export","../webpack/runtime/define property getters","../webpack/runtime/ensure chunk","../webpack/runtime/get javascript chunk filename","../webpack/runtime/get mini-css chunk filename","../webpack/runtime/global","../webpack/runtime/hasOwnProperty shorthand","../webpack/runtime/load script","../webpack/runtime/make namespace object","../webpack/runtime/node module decorator","../webpack/runtime/publicPath","../webpack/runtime/jsonp chunk loading","../node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/inherits.js","../node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js","../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../node_modules/@babel/runtime/helpers/esm/createSuper.js","../node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/objectSpread2.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/@restart/ui/esm/Button.js","../node_modules/react-bootstrap/esm/ThemeProvider.js","../node_modules/react-bootstrap/esm/Button.js","components/Graph/Graph.js","components/OpDetails/OpDetails.js","../node_modules/react-bootstrap/esm/Table.js","components/OpList/OpList.js","../node_modules/react-bootstrap/esm/Spinner.js","components/Histogram/Histogram.js","../node_modules/@babel/runtime/helpers/esm/get.js","../node_modules/@babel/runtime/helpers/esm/superPropBase.js","../node_modules/@babel/runtime/helpers/esm/construct.js","../node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js","../node_modules/@babel/runtime/helpers/esm/isNativeFunction.js","../node_modules/engine.io-parser/build/esm/commons.js","../node_modules/engine.io-parser/build/esm/contrib/base64-arraybuffer.js","../node_modules/engine.io-parser/build/esm/encodePacket.browser.js","../node_modules/engine.io-parser/build/esm/decodePacket.browser.js","../node_modules/engine.io-parser/build/esm/index.js","../node_modules/@socket.io/component-emitter/index.mjs","../node_modules/engine.io-client/build/esm/globalThis.browser.js","../node_modules/engine.io-client/build/esm/util.js","../node_modules/engine.io-client/build/esm/transport.js","../node_modules/engine.io-client/build/esm/contrib/yeast.js","../node_modules/engine.io-client/build/esm/contrib/parseqs.js","../node_modules/engine.io-client/build/esm/contrib/has-cors.js","../node_modules/engine.io-client/build/esm/transports/xmlhttprequest.browser.js","../node_modules/engine.io-client/build/esm/transports/polling.js","../node_modules/engine.io-client/build/esm/transports/websocket-constructor.browser.js","../node_modules/engine.io-client/build/esm/transports/websocket.js","../node_modules/engine.io-client/build/esm/transports/index.js","../node_modules/engine.io-client/build/esm/contrib/parseuri.js","../node_modules/engine.io-client/build/esm/socket.js","../node_modules/engine.io-client/build/esm/index.js","../node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js","../node_modules/socket.io-parser/build/esm/is-binary.js","../node_modules/socket.io-parser/build/esm/binary.js","../node_modules/socket.io-parser/build/esm/index.js","../node_modules/socket.io-client/build/esm/on.js","../node_modules/socket.io-client/build/esm/socket.js","../node_modules/socket.io-client/build/esm/contrib/backo2.js","../node_modules/socket.io-client/build/esm/manager.js","../node_modules/socket.io-client/build/esm/index.js","../node_modules/socket.io-client/build/esm/url.js","components/Workloads/Workloads.js","components/Profiling/Profiling.js","../node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/uncontrollable/lib/esm/utils.js","../node_modules/uncontrollable/lib/esm/hook.js","../node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js","../node_modules/@restart/hooks/esm/useCommittedRef.js","../node_modules/@restart/hooks/esm/useEventCallback.js","../node_modules/@restart/hooks/esm/useIsomorphicEffect.js","../node_modules/@restart/hooks/esm/useResizeObserver.js","../node_modules/@restart/ui/esm/Anchor.js","../node_modules/react-transition-group/esm/config.js","../node_modules/react-transition-group/esm/TransitionGroupContext.js","../node_modules/react-transition-group/esm/Transition.js","../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../node_modules/react-transition-group/esm/utils/reflow.js","../node_modules/dom-helpers/esm/ownerWindow.js","../node_modules/dom-helpers/esm/ownerDocument.js","../node_modules/dom-helpers/esm/hyphenate.js","../node_modules/dom-helpers/esm/hyphenateStyle.js","../node_modules/dom-helpers/esm/isTransform.js","../node_modules/dom-helpers/esm/css.js","../node_modules/dom-helpers/esm/getComputedStyle.js","../node_modules/dom-helpers/esm/canUseDOM.js","../node_modules/dom-helpers/esm/addEventListener.js","../node_modules/dom-helpers/esm/removeEventListener.js","../node_modules/dom-helpers/esm/listen.js","../node_modules/dom-helpers/esm/transitionEnd.js","../node_modules/dom-helpers/esm/triggerEvent.js","../node_modules/react-bootstrap/esm/transitionEndListener.js","../node_modules/@restart/hooks/esm/useMergedRefs.js","../node_modules/react-bootstrap/esm/TransitionWrapper.js","../node_modules/react-bootstrap/esm/safeFindDOMNode.js","../node_modules/react-bootstrap/esm/Fade.js","../node_modules/react-bootstrap/esm/triggerBrowserReflow.js","../node_modules/react-bootstrap/esm/CloseButton.js","../node_modules/dom-helpers/esm/camelize.js","../node_modules/react-bootstrap/esm/createWithBsPrefix.js","../node_modules/react-bootstrap/esm/divWithClassName.js","../node_modules/react-bootstrap/esm/Alert.js","components/Warning/Warning.js","../node_modules/react-bootstrap/esm/Feedback.js","../node_modules/react-bootstrap/esm/FormContext.js","../node_modules/react-bootstrap/esm/FormCheckInput.js","../node_modules/react-bootstrap/esm/FormCheckLabel.js","../node_modules/react-bootstrap/esm/FormCheck.js","../node_modules/react-bootstrap/esm/ElementChildren.js","../node_modules/react-bootstrap/esm/FormControl.js","../node_modules/react-bootstrap/esm/FormFloating.js","../node_modules/react-bootstrap/esm/FormGroup.js","../node_modules/react-bootstrap/esm/Col.js","../node_modules/react-bootstrap/esm/FormLabel.js","../node_modules/react-bootstrap/esm/FormRange.js","../node_modules/react-bootstrap/esm/FormSelect.js","../node_modules/react-bootstrap/esm/FormText.js","../node_modules/react-bootstrap/esm/Switch.js","../node_modules/react-bootstrap/esm/FloatingLabel.js","../node_modules/react-bootstrap/esm/Form.js","../node_modules/react-bootstrap/esm/InputGroupContext.js","../node_modules/react-bootstrap/esm/InputGroup.js","components/Diagnosis/Diagnosis.js","../node_modules/axios/lib/helpers/bind.js","../node_modules/axios/lib/utils.js","../node_modules/axios/lib/core/AxiosError.js","../node_modules/axios/lib/helpers/null.js","../node_modules/axios/lib/helpers/toFormData.js","../node_modules/axios/lib/helpers/AxiosURLSearchParams.js","../node_modules/axios/lib/helpers/buildURL.js","../node_modules/axios/lib/core/InterceptorManager.js","../node_modules/axios/lib/defaults/transitional.js","../node_modules/axios/lib/platform/browser/index.js","../node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","../node_modules/axios/lib/platform/browser/classes/FormData.js","../node_modules/axios/lib/platform/browser/classes/Blob.js","../node_modules/axios/lib/helpers/formDataToJSON.js","../node_modules/axios/lib/defaults/index.js","../node_modules/axios/lib/helpers/toURLEncodedForm.js","../node_modules/axios/lib/helpers/parseHeaders.js","../node_modules/axios/lib/core/AxiosHeaders.js","../node_modules/axios/lib/core/transformData.js","../node_modules/axios/lib/cancel/isCancel.js","../node_modules/axios/lib/cancel/CanceledError.js","../node_modules/axios/lib/helpers/cookies.js","../node_modules/axios/lib/core/buildFullPath.js","../node_modules/axios/lib/helpers/isAbsoluteURL.js","../node_modules/axios/lib/helpers/combineURLs.js","../node_modules/axios/lib/helpers/isURLSameOrigin.js","../node_modules/axios/lib/helpers/speedometer.js","../node_modules/axios/lib/adapters/xhr.js","../node_modules/axios/lib/core/settle.js","../node_modules/axios/lib/helpers/parseProtocol.js","../node_modules/axios/lib/adapters/adapters.js","../node_modules/axios/lib/core/dispatchRequest.js","../node_modules/axios/lib/core/mergeConfig.js","../node_modules/axios/lib/env/data.js","../node_modules/axios/lib/helpers/validator.js","../node_modules/axios/lib/core/Axios.js","../node_modules/axios/lib/cancel/CancelToken.js","../node_modules/axios/lib/helpers/HttpStatusCode.js","../node_modules/axios/lib/axios.js","../node_modules/axios/lib/helpers/spread.js","../node_modules/axios/lib/helpers/isAxiosError.js","App.js","reportWebVitals.js","index.js"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\tvar nativeCodeString = '[native code]';\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"elkjs\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"elkjs\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"cytoscapeElk\"] = factory(require(\"elkjs\"));\n\telse\n\t\troot[\"cytoscapeElk\"] = factory(root[\"ELK\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE__245__) {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ 245:\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__245__;\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function() {\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"default\": function() { return /* binding */ src; }\n});\n\n// EXTERNAL MODULE: external {\"commonjs\":\"elkjs\",\"commonjs2\":\"elkjs\",\"amd\":\"elkjs\",\"root\":\"ELK\"}\nvar external_commonjs_elkjs_commonjs2_elkjs_amd_elkjs_root_ELK_ = __webpack_require__(245);\nvar external_commonjs_elkjs_commonjs2_elkjs_amd_elkjs_root_ELK_default = /*#__PURE__*/__webpack_require__.n(external_commonjs_elkjs_commonjs2_elkjs_amd_elkjs_root_ELK_);\n;// CONCATENATED MODULE: ./src/assign.js\n// Simple, internal Object.assign() polyfill for options objects etc.\nfunction assign_assign(tgt) {\n for (var _len = arguments.length, srcs = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n srcs[_key - 1] = arguments[_key];\n }\n\n srcs.forEach(function (src) {\n Object.keys(src).forEach(function (k) {\n return tgt[k] = src[k];\n });\n });\n return tgt;\n}\n\n/* harmony default export */ var src_assign = (Object.assign != null ? Object.assign.bind(Object) : assign_assign);\n;// CONCATENATED MODULE: ./src/defaults.js\nvar defaults = {\n nodeDimensionsIncludeLabels: false,\n // Boolean which changes whether label dimensions are included when calculating node dimensions\n fit: true,\n // Whether to fit\n padding: 20,\n // Padding on fit\n animate: false,\n // Whether to transition the node positions\n animateFilter: function animateFilter() {\n return true;\n },\n // Whether to animate specific nodes when animation is on; non-animated nodes immediately go to their final positions\n animationDuration: 500,\n // Duration of animation in ms if enabled\n animationEasing: undefined,\n // Easing of animation if enabled\n transform: function transform(node, pos) {\n return pos;\n },\n // A function that applies a transform to the final node position\n ready: undefined,\n // Callback on layoutready\n stop: undefined,\n // Callback on layoutstop\n elk: {\n // Options to pass directly to ELK `layoutOptions`. The subsequent identifier has to be used as property key in quotes.\n // E.g. for 'org.eclipse.elk.direction' use:\n // 'elk.direction'\n // Primary/mandatory, the elk algorithm to use\n // one of 'box', 'disco', 'force', 'layered', 'mrtree', 'radial', 'random', 'stress'\n // (see https://www.eclipse.org/elk/reference/algorithms.html)\n algorithm: undefined\n },\n priority: function priority() {\n return null;\n } // Edges with a non-nil value are skipped when geedy edge cycle breaking is enabled\n\n};\n/* harmony default export */ var src_defaults = (defaults);\n;// CONCATENATED MODULE: ./src/layout.js\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\n\n\n\nvar elkOverrides = {};\n\nvar getPos = function getPos(ele, options) {\n var dims = ele.layoutDimensions(options);\n var parent = ele.parent();\n var k = ele.scratch('elk');\n var p = {\n x: k.x,\n y: k.y\n };\n\n while (parent.nonempty()) {\n var kp = parent.scratch('elk');\n p.x += kp.x;\n p.y += kp.y;\n parent = parent.parent();\n } // elk considers a node position to be its top-left corner, while cy is the centre\n\n\n p.x += dims.w / 2;\n p.y += dims.h / 2;\n return p;\n};\n\nvar makeNode = function makeNode(node, options) {\n var k = {\n _cyEle: node,\n id: node.id()\n };\n\n if (!node.isParent()) {\n var dims = node.layoutDimensions(options);\n var p = node.position(); // the elk position is the top-left corner, cy is the centre\n\n k.x = p.x - dims.w / 2;\n k.y = p.y - dims.h / 2;\n k.width = dims.w;\n k.height = dims.h;\n }\n\n node.scratch('elk', k);\n return k;\n};\n\nvar makeEdge = function makeEdge(edge\n/*, options*/\n) {\n var k = {\n _cyEle: edge,\n id: edge.id(),\n source: edge.data('source'),\n target: edge.data('target')\n };\n edge.scratch('elk', k);\n return k;\n};\n\nvar makeGraph = function makeGraph(nodes, edges, options) {\n var elkNodes = [];\n var elkEdges = [];\n var elkEleLookup = {};\n var graph = {\n id: 'root',\n children: [],\n edges: []\n }; // map all nodes\n\n for (var i = 0; i < nodes.length; i++) {\n var n = nodes[i];\n var k = makeNode(n, options);\n elkNodes.push(k);\n elkEleLookup[n.id()] = k;\n } // map all edges\n\n\n for (var _i = 0; _i < edges.length; _i++) {\n var e = edges[_i];\n\n var _k = makeEdge(e, options);\n\n elkEdges.push(_k);\n elkEleLookup[e.id()] = _k;\n } // make hierarchy\n\n\n for (var _i2 = 0; _i2 < elkNodes.length; _i2++) {\n var _k2 = elkNodes[_i2];\n var _n = _k2._cyEle;\n\n if (!_n.isChild()) {\n graph.children.push(_k2);\n } else {\n var parent = _n.parent();\n\n var parentK = elkEleLookup[parent.id()];\n var children = parentK.children = parentK.children || [];\n children.push(_k2);\n }\n }\n\n for (var _i3 = 0; _i3 < elkEdges.length; _i3++) {\n var _k3 = elkEdges[_i3]; // put all edges in the top level for now\n // TODO does this cause issues in certain edgecases?\n\n /*let e = k._cyEle;\n let parentSrc = e.source().parent();\n let parentTgt = e.target().parent();\n if ( false && parentSrc.nonempty() && parentTgt.nonempty() && parentSrc.same( parentTgt ) ){\n let kp = elkEleLookup[ parentSrc.id() ];\n kp.edges = kp.edges || [];\n kp.edges.push( k );\n } else {*/\n\n graph.edges.push(_k3); //}\n }\n\n return graph;\n};\n\nvar Layout = /*#__PURE__*/function () {\n function Layout(options) {\n _classCallCheck(this, Layout);\n\n var elkOptions = options.elk;\n var cy = options.cy;\n this.options = src_assign({}, src_defaults, options);\n this.options.elk = src_assign({\n aspectRatio: cy.width() / cy.height()\n }, src_defaults.elk, elkOptions, elkOverrides);\n }\n\n _createClass(Layout, [{\n key: \"run\",\n value: function run() {\n var layout = this;\n var options = this.options;\n var eles = options.eles;\n var nodes = eles.nodes();\n var edges = eles.edges();\n var elk = new (external_commonjs_elkjs_commonjs2_elkjs_amd_elkjs_root_ELK_default())();\n var graph = makeGraph(nodes, edges, options);\n graph['layoutOptions'] = options.elk;\n elk.layout(graph).then(function () {\n nodes.filter(function (n) {\n return !n.isParent();\n }).layoutPositions(layout, options, function (n) {\n return getPos(n, options);\n });\n });\n return this;\n }\n }, {\n key: \"stop\",\n value: function stop() {\n return this; // chaining\n }\n }, {\n key: \"destroy\",\n value: function destroy() {\n return this; // chaining\n }\n }]);\n\n return Layout;\n}();\n\n/* harmony default export */ var layout = (Layout);\n;// CONCATENATED MODULE: ./src/index.js\n // registers the extension on a cytoscape lib ref\n\nvar register = function register(cytoscape) {\n if (!cytoscape) {\n return;\n } // can't register if cytoscape unspecified\n\n\n cytoscape('layout', 'elk', layout); // register with cytoscape.js\n};\n\nif (typeof cytoscape !== 'undefined') {\n // expose to global cytoscape (i.e. window.cytoscape)\n // eslint-disable-next-line no-undef\n register(cytoscape);\n}\n\n/* harmony default export */ var src = (register);\n}();\n__webpack_exports__ = __webpack_exports__[\"default\"];\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});","type IHAlign = \"left\" | \"center\" | \"right\";\ntype IVAlign = \"top\" | \"center\" | \"bottom\";\ndeclare var module: any;\ndeclare var define: any;\ndeclare var cytoscape: any;\n\ninterface CytoscapeNodeHtmlParams {\n query?: string;\n halign?: IHAlign;\n valign?: IVAlign;\n halignBox?: IHAlign;\n valignBox?: IVAlign;\n cssClass?: string;\n tpl?: (d: any) => string;\n}\n\ninterface CytoscapeContainerParams {\n enablePointerEvents?: boolean;\n}\n\n(function () {\n \"use strict\";\n const $$find = function (arr: T[], predicate: (a: T) => boolean) {\n if (typeof predicate !== \"function\") {\n throw new TypeError(\"predicate must be a function\");\n }\n const length = arr.length >>> 0;\n // eslint-disable-next-line prefer-rest-params\n const thisArg = arguments[1];\n let value;\n\n for (let i = 0; i < length; i++) {\n value = arr[i];\n if (predicate.call(thisArg, value, i, arr)) {\n return value;\n }\n }\n return undefined;\n };\n\n interface ICyEventObject {\n cy: any;\n type: string;\n target: any;\n }\n\n interface ICytoscapeNodeHtmlPosition {\n x: number;\n y: number;\n w: number;\n h: number;\n }\n\n interface ILabelElement {\n data?: any;\n position?: ICytoscapeNodeHtmlPosition;\n node: HTMLElement;\n }\n\n interface HashTableElements {\n [key: string]: LabelElement;\n }\n\n class LabelElement {\n public tpl: (d: any) => string;\n\n private _position: number[];\n private _node: HTMLElement;\n private _align: [number, number, number, number];\n\n constructor({\n node,\n position = null,\n data = null\n }: ILabelElement,\n params: CytoscapeNodeHtmlParams) {\n\n this.updateParams(params);\n this._node = node;\n\n this.initStyles(params.cssClass);\n\n if (data) {\n this.updateData(data);\n }\n if (position) {\n this.updatePosition(position);\n }\n }\n\n updateParams({\n tpl = () => \"\",\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n cssClass = null,\n halign = \"center\",\n valign = \"center\",\n halignBox = \"center\",\n valignBox = \"center\"\n }: CytoscapeNodeHtmlParams) {\n\n const _align = {\n \"top\": -.5,\n \"left\": -.5,\n \"center\": 0,\n \"right\": .5,\n \"bottom\": .5\n };\n\n this._align = [\n _align[halign],\n _align[valign],\n 100 * (_align[halignBox] - 0.5),\n 100 * (_align[valignBox] - 0.5)\n ];\n\n this.tpl = tpl;\n }\n\n updateData(data: any) {\n while (this._node.firstChild) {\n this._node.removeChild(this._node.firstChild);\n }\n\n const children = new DOMParser()\n .parseFromString(this.tpl(data), \"text/html\")\n .body.children;\n\n for (let i = 0; i < children.length; ++i) {\n const el = children[i];\n this._node.appendChild(el);\n }\n }\n\n getNode(): HTMLElement {\n return this._node;\n }\n\n updatePosition(pos: ICytoscapeNodeHtmlPosition) {\n this._renderPosition(pos);\n }\n\n private initStyles(cssClass: string) {\n const stl = this._node.style;\n stl.position = \"absolute\";\n if (cssClass && cssClass.length) {\n this._node.classList.add(cssClass);\n }\n }\n\n private _renderPosition(position: ICytoscapeNodeHtmlPosition) {\n const prev = this._position;\n const x = position.x + this._align[0] * position.w;\n const y = position.y + this._align[1] * position.h;\n\n if (!prev || prev[0] !== x || prev[1] !== y) {\n this._position = [x, y];\n\n const valRel = `translate(${this._align[2]}%,${this._align[3]}%) `;\n const valAbs = `translate(${x.toFixed(2)}px,${y.toFixed(2)}px) `;\n const val = valRel + valAbs;\n const stl = this._node.style;\n stl.webkitTransform = val;\n stl.msTransform = val;\n stl.transform = val;\n }\n }\n }\n\n /**\n * LabelContainer\n * Html manipulate, find and upgrade nodes\n * it don't know about cy.\n */\n class LabelContainer {\n private _elements: HashTableElements;\n private _node: HTMLElement;\n\n constructor(node: HTMLElement) {\n this._node = node;\n this._elements = {};\n }\n\n addOrUpdateElem(id: string, param: CytoscapeNodeHtmlParams, payload: { data?: any, position?: ICytoscapeNodeHtmlPosition } = {}) {\n const cur = this._elements[id];\n if (cur) {\n cur.updateParams(param);\n cur.updateData(payload.data);\n cur.updatePosition(payload.position);\n } else {\n const nodeElem = document.createElement(\"div\");\n this._node.appendChild(nodeElem);\n\n this._elements[id] = new LabelElement({\n node: nodeElem,\n data: payload.data,\n position: payload.position\n }, param);\n }\n }\n\n removeElemById(id: string) {\n if (this._elements[id]) {\n this._node.removeChild(this._elements[id].getNode());\n delete this._elements[id];\n }\n }\n\n updateElemPosition(id: string, position?: ICytoscapeNodeHtmlPosition) {\n const ele = this._elements[id];\n if (ele) {\n ele.updatePosition(position);\n }\n }\n\n updatePanZoom({pan, zoom}: { pan: { x: number, y: number }, zoom: number }) {\n const val = `translate(${pan.x}px,${pan.y}px) scale(${zoom})`;\n const stl = this._node.style;\n const origin = \"top left\";\n\n stl.webkitTransform = val;\n stl.msTransform = val;\n stl.transform = val;\n stl.webkitTransformOrigin = origin;\n stl.msTransformOrigin = origin;\n stl.transformOrigin = origin;\n }\n }\n\n function cyNodeHtmlLabel(_cy: any, params: CytoscapeNodeHtmlParams[], options?: CytoscapeContainerParams) {\n const _params = (!params || typeof params !== \"object\") ? [] : params;\n const _lc = createLabelContainer();\n\n _cy.one(\"render\", (e: any) => {\n createNodesCyHandler(e);\n wrapCyHandler(e);\n });\n _cy.on(\"add\", addCyHandler);\n _cy.on(\"layoutstop\", layoutstopHandler);\n _cy.on(\"remove\", removeCyHandler);\n _cy.on(\"data\", updateDataOrStyleCyHandler);\n _cy.on(\"style\", updateDataOrStyleCyHandler);\n _cy.on(\"pan zoom\", wrapCyHandler);\n _cy.on(\"position bounds\", moveCyHandler); // \"bounds\" - not documented event\n\n return _cy;\n\n function createLabelContainer(): LabelContainer {\n const _cyContainer = _cy.container();\n const _titlesContainer = document.createElement(\"div\");\n\n const _cyCanvas = _cyContainer.querySelector(\"canvas\");\n const cur = _cyContainer.querySelector(\"[class^='cy-node-html']\");\n if (cur) {\n _cyCanvas.parentNode.removeChild(cur);\n }\n\n const stl = _titlesContainer.style;\n stl.position = 'absolute';\n stl['z-index'] = 10;\n stl.width = '500px';\n stl.margin = '0px';\n stl.padding = '0px';\n stl.border = '0px';\n stl.outline = '0px';\n stl.outline = '0px';\n\n if (options && options.enablePointerEvents !== true) {\n stl['pointer-events'] = 'none';\n }\n\n _cyCanvas.parentNode.appendChild(_titlesContainer);\n\n return new LabelContainer(_titlesContainer);\n }\n\n function createNodesCyHandler({cy}: ICyEventObject) {\n _params.forEach(x => {\n cy.elements(x.query).forEach((d: any) => {\n if (d.isNode()) {\n _lc.addOrUpdateElem(d.id(), x, {\n position: getNodePosition(d),\n data: d.data()\n });\n }\n });\n });\n }\n\n function addCyHandler(ev: ICyEventObject) {\n const target = ev.target;\n const param = $$find(_params.slice().reverse(), x => target.is(x.query));\n if (param) {\n _lc.addOrUpdateElem(target.id(), param, {\n position: getNodePosition(target),\n data: target.data()\n });\n }\n }\n\n function layoutstopHandler({cy}: ICyEventObject) {\n _params.forEach(x => {\n cy.elements(x.query).forEach((d: any) => {\n if (d.isNode()) {\n _lc.updateElemPosition(d.id(), getNodePosition(d));\n }\n });\n });\n }\n\n function removeCyHandler(ev: ICyEventObject) {\n _lc.removeElemById(ev.target.id());\n }\n\n function moveCyHandler(ev: ICyEventObject) {\n // console.log('moveCyHandler');\n _lc.updateElemPosition(ev.target.id(), getNodePosition(ev.target));\n }\n\n function updateDataOrStyleCyHandler(ev: ICyEventObject) {\n setTimeout(() => {\n const target = ev.target;\n const param = $$find(_params.slice().reverse(), x => target.is(x.query));\n if (param && !target.removed()) {\n _lc.addOrUpdateElem(target.id(), param, {\n position: getNodePosition(target),\n data: target.data()\n });\n } else {\n _lc.removeElemById(target.id());\n }\n }, 0);\n }\n\n function wrapCyHandler({cy}: ICyEventObject) {\n _lc.updatePanZoom({\n pan: cy.pan(),\n zoom: cy.zoom()\n });\n }\n\n function getNodePosition(node: any): ICytoscapeNodeHtmlPosition {\n return {\n w: node.width(),\n h: node.height(),\n x: node.position(\"x\"),\n y: node.position(\"y\")\n };\n }\n }\n\n // registers the extension on a cytoscape lib ref\n const register = function (cy: any) {\n\n if (!cy) {\n return;\n } // can't register if cytoscape unspecified\n\n cy(\"core\", \"nodeHtmlLabel\", function (optArr: any, options?: any) {\n return cyNodeHtmlLabel(this, optArr, options);\n });\n };\n\n if (typeof module !== \"undefined\" && module.exports) { // expose as a commonjs module\n module.exports = function (cy: any) {\n register(cy);\n };\n } else {\n if (typeof define !== \"undefined\" && define.amd) { // expose as an amd/requirejs module\n define(\"cytoscape-nodeHtmlLabel\", function () {\n return register;\n });\n }\n }\n\n if (typeof cytoscape !== \"undefined\") { // expose to global cytoscape (i.e. window.cytoscape)\n register(cytoscape);\n }\n\n}());\n","/**\n * Copyright (c) 2016-2022, The Cytoscape Consortium.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of\n * this software and associated documentation files (the “Software”), to deal in\n * the Software without restriction, including without limitation the rights to\n * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies\n * of the Software, and to permit persons to whom the Software is furnished to do\n * so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\n\n'use strict';\n\nvar debounce = require('lodash/debounce');\nvar Heap = require('heap');\nvar get = require('lodash/get');\nvar set = require('lodash/set');\nvar toPath = require('lodash/toPath');\n\nfunction _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }\n\nvar debounce__default = /*#__PURE__*/_interopDefaultLegacy(debounce);\nvar Heap__default = /*#__PURE__*/_interopDefaultLegacy(Heap);\nvar get__default = /*#__PURE__*/_interopDefaultLegacy(get);\nvar set__default = /*#__PURE__*/_interopDefaultLegacy(set);\nvar toPath__default = /*#__PURE__*/_interopDefaultLegacy(toPath);\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nvar window$1 = typeof window === 'undefined' ? null : window; // eslint-disable-line no-undef\n\nvar navigator = window$1 ? window$1.navigator : null;\nwindow$1 ? window$1.document : null;\n\nvar typeofstr = _typeof('');\n\nvar typeofobj = _typeof({});\n\nvar typeoffn = _typeof(function () {});\n\nvar typeofhtmlele = typeof HTMLElement === \"undefined\" ? \"undefined\" : _typeof(HTMLElement);\n\nvar instanceStr = function instanceStr(obj) {\n return obj && obj.instanceString && fn$6(obj.instanceString) ? obj.instanceString() : null;\n};\n\nvar string = function string(obj) {\n return obj != null && _typeof(obj) == typeofstr;\n};\nvar fn$6 = function fn(obj) {\n return obj != null && _typeof(obj) === typeoffn;\n};\nvar array = function array(obj) {\n return !elementOrCollection(obj) && (Array.isArray ? Array.isArray(obj) : obj != null && obj instanceof Array);\n};\nvar plainObject = function plainObject(obj) {\n return obj != null && _typeof(obj) === typeofobj && !array(obj) && obj.constructor === Object;\n};\nvar object = function object(obj) {\n return obj != null && _typeof(obj) === typeofobj;\n};\nvar number$1 = function number(obj) {\n return obj != null && _typeof(obj) === _typeof(1) && !isNaN(obj);\n};\nvar integer = function integer(obj) {\n return number$1(obj) && Math.floor(obj) === obj;\n};\nvar htmlElement = function htmlElement(obj) {\n if ('undefined' === typeofhtmlele) {\n return undefined;\n } else {\n return null != obj && obj instanceof HTMLElement;\n }\n};\nvar elementOrCollection = function elementOrCollection(obj) {\n return element(obj) || collection(obj);\n};\nvar element = function element(obj) {\n return instanceStr(obj) === 'collection' && obj._private.single;\n};\nvar collection = function collection(obj) {\n return instanceStr(obj) === 'collection' && !obj._private.single;\n};\nvar core = function core(obj) {\n return instanceStr(obj) === 'core';\n};\nvar stylesheet = function stylesheet(obj) {\n return instanceStr(obj) === 'stylesheet';\n};\nvar event = function event(obj) {\n return instanceStr(obj) === 'event';\n};\nvar emptyString = function emptyString(obj) {\n if (obj === undefined || obj === null) {\n // null is empty\n return true;\n } else if (obj === '' || obj.match(/^\\s+$/)) {\n return true; // empty string is empty\n }\n\n return false; // otherwise, we don't know what we've got\n};\nvar domElement = function domElement(obj) {\n if (typeof HTMLElement === 'undefined') {\n return false; // we're not in a browser so it doesn't matter\n } else {\n return obj instanceof HTMLElement;\n }\n};\nvar boundingBox = function boundingBox(obj) {\n return plainObject(obj) && number$1(obj.x1) && number$1(obj.x2) && number$1(obj.y1) && number$1(obj.y2);\n};\nvar promise = function promise(obj) {\n return object(obj) && fn$6(obj.then);\n};\nvar ms = function ms() {\n return navigator && navigator.userAgent.match(/msie|trident|edge/i);\n}; // probably a better way to detect this...\n\nvar memoize = function memoize(fn, keyFn) {\n if (!keyFn) {\n keyFn = function keyFn() {\n if (arguments.length === 1) {\n return arguments[0];\n } else if (arguments.length === 0) {\n return 'undefined';\n }\n\n var args = [];\n\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n\n return args.join('$');\n };\n }\n\n var memoizedFn = function memoizedFn() {\n var self = this;\n var args = arguments;\n var ret;\n var k = keyFn.apply(self, args);\n var cache = memoizedFn.cache;\n\n if (!(ret = cache[k])) {\n ret = cache[k] = fn.apply(self, args);\n }\n\n return ret;\n };\n\n memoizedFn.cache = {};\n return memoizedFn;\n};\n\nvar camel2dash = memoize(function (str) {\n return str.replace(/([A-Z])/g, function (v) {\n return '-' + v.toLowerCase();\n });\n});\nvar dash2camel = memoize(function (str) {\n return str.replace(/(-\\w)/g, function (v) {\n return v[1].toUpperCase();\n });\n});\nvar prependCamel = memoize(function (prefix, str) {\n return prefix + str[0].toUpperCase() + str.substring(1);\n}, function (prefix, str) {\n return prefix + '$' + str;\n});\nvar capitalize = function capitalize(str) {\n if (emptyString(str)) {\n return str;\n }\n\n return str.charAt(0).toUpperCase() + str.substring(1);\n};\n\nvar number = '(?:[-+]?(?:(?:\\\\d+|\\\\d*\\\\.\\\\d+)(?:[Ee][+-]?\\\\d+)?))';\nvar rgba = 'rgb[a]?\\\\((' + number + '[%]?)\\\\s*,\\\\s*(' + number + '[%]?)\\\\s*,\\\\s*(' + number + '[%]?)(?:\\\\s*,\\\\s*(' + number + '))?\\\\)';\nvar rgbaNoBackRefs = 'rgb[a]?\\\\((?:' + number + '[%]?)\\\\s*,\\\\s*(?:' + number + '[%]?)\\\\s*,\\\\s*(?:' + number + '[%]?)(?:\\\\s*,\\\\s*(?:' + number + '))?\\\\)';\nvar hsla = 'hsl[a]?\\\\((' + number + ')\\\\s*,\\\\s*(' + number + '[%])\\\\s*,\\\\s*(' + number + '[%])(?:\\\\s*,\\\\s*(' + number + '))?\\\\)';\nvar hslaNoBackRefs = 'hsl[a]?\\\\((?:' + number + ')\\\\s*,\\\\s*(?:' + number + '[%])\\\\s*,\\\\s*(?:' + number + '[%])(?:\\\\s*,\\\\s*(?:' + number + '))?\\\\)';\nvar hex3 = '\\\\#[0-9a-fA-F]{3}';\nvar hex6 = '\\\\#[0-9a-fA-F]{6}';\n\nvar ascending = function ascending(a, b) {\n if (a < b) {\n return -1;\n } else if (a > b) {\n return 1;\n } else {\n return 0;\n }\n};\nvar descending = function descending(a, b) {\n return -1 * ascending(a, b);\n};\n\nvar extend = Object.assign != null ? Object.assign.bind(Object) : function (tgt) {\n var args = arguments;\n\n for (var i = 1; i < args.length; i++) {\n var obj = args[i];\n\n if (obj == null) {\n continue;\n }\n\n var keys = Object.keys(obj);\n\n for (var j = 0; j < keys.length; j++) {\n var k = keys[j];\n tgt[k] = obj[k];\n }\n }\n\n return tgt;\n};\n\nvar hex2tuple = function hex2tuple(hex) {\n if (!(hex.length === 4 || hex.length === 7) || hex[0] !== '#') {\n return;\n }\n\n var shortHex = hex.length === 4;\n var r, g, b;\n var base = 16;\n\n if (shortHex) {\n r = parseInt(hex[1] + hex[1], base);\n g = parseInt(hex[2] + hex[2], base);\n b = parseInt(hex[3] + hex[3], base);\n } else {\n r = parseInt(hex[1] + hex[2], base);\n g = parseInt(hex[3] + hex[4], base);\n b = parseInt(hex[5] + hex[6], base);\n }\n\n return [r, g, b];\n}; // get [r, g, b, a] from hsl(0, 0, 0) or hsla(0, 0, 0, 0)\n\nvar hsl2tuple = function hsl2tuple(hsl) {\n var ret;\n var h, s, l, a, r, g, b;\n\n function hue2rgb(p, q, t) {\n if (t < 0) t += 1;\n if (t > 1) t -= 1;\n if (t < 1 / 6) return p + (q - p) * 6 * t;\n if (t < 1 / 2) return q;\n if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;\n return p;\n }\n\n var m = new RegExp('^' + hsla + '$').exec(hsl);\n\n if (m) {\n // get hue\n h = parseInt(m[1]);\n\n if (h < 0) {\n h = (360 - -1 * h % 360) % 360;\n } else if (h > 360) {\n h = h % 360;\n }\n\n h /= 360; // normalise on [0, 1]\n\n s = parseFloat(m[2]);\n\n if (s < 0 || s > 100) {\n return;\n } // saturation is [0, 100]\n\n\n s = s / 100; // normalise on [0, 1]\n\n l = parseFloat(m[3]);\n\n if (l < 0 || l > 100) {\n return;\n } // lightness is [0, 100]\n\n\n l = l / 100; // normalise on [0, 1]\n\n a = m[4];\n\n if (a !== undefined) {\n a = parseFloat(a);\n\n if (a < 0 || a > 1) {\n return;\n } // alpha is [0, 1]\n\n } // now, convert to rgb\n // code from http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript\n\n\n if (s === 0) {\n r = g = b = Math.round(l * 255); // achromatic\n } else {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n r = Math.round(255 * hue2rgb(p, q, h + 1 / 3));\n g = Math.round(255 * hue2rgb(p, q, h));\n b = Math.round(255 * hue2rgb(p, q, h - 1 / 3));\n }\n\n ret = [r, g, b, a];\n }\n\n return ret;\n}; // get [r, g, b, a] from rgb(0, 0, 0) or rgba(0, 0, 0, 0)\n\nvar rgb2tuple = function rgb2tuple(rgb) {\n var ret;\n var m = new RegExp('^' + rgba + '$').exec(rgb);\n\n if (m) {\n ret = [];\n var isPct = [];\n\n for (var i = 1; i <= 3; i++) {\n var channel = m[i];\n\n if (channel[channel.length - 1] === '%') {\n isPct[i] = true;\n }\n\n channel = parseFloat(channel);\n\n if (isPct[i]) {\n channel = channel / 100 * 255; // normalise to [0, 255]\n }\n\n if (channel < 0 || channel > 255) {\n return;\n } // invalid channel value\n\n\n ret.push(Math.floor(channel));\n }\n\n var atLeastOneIsPct = isPct[1] || isPct[2] || isPct[3];\n var allArePct = isPct[1] && isPct[2] && isPct[3];\n\n if (atLeastOneIsPct && !allArePct) {\n return;\n } // must all be percent values if one is\n\n\n var alpha = m[4];\n\n if (alpha !== undefined) {\n alpha = parseFloat(alpha);\n\n if (alpha < 0 || alpha > 1) {\n return;\n } // invalid alpha value\n\n\n ret.push(alpha);\n }\n }\n\n return ret;\n};\nvar colorname2tuple = function colorname2tuple(color) {\n return colors[color.toLowerCase()];\n};\nvar color2tuple = function color2tuple(color) {\n return (array(color) ? color : null) || colorname2tuple(color) || hex2tuple(color) || rgb2tuple(color) || hsl2tuple(color);\n};\nvar colors = {\n // special colour names\n transparent: [0, 0, 0, 0],\n // NB alpha === 0\n // regular colours\n aliceblue: [240, 248, 255],\n antiquewhite: [250, 235, 215],\n aqua: [0, 255, 255],\n aquamarine: [127, 255, 212],\n azure: [240, 255, 255],\n beige: [245, 245, 220],\n bisque: [255, 228, 196],\n black: [0, 0, 0],\n blanchedalmond: [255, 235, 205],\n blue: [0, 0, 255],\n blueviolet: [138, 43, 226],\n brown: [165, 42, 42],\n burlywood: [222, 184, 135],\n cadetblue: [95, 158, 160],\n chartreuse: [127, 255, 0],\n chocolate: [210, 105, 30],\n coral: [255, 127, 80],\n cornflowerblue: [100, 149, 237],\n cornsilk: [255, 248, 220],\n crimson: [220, 20, 60],\n cyan: [0, 255, 255],\n darkblue: [0, 0, 139],\n darkcyan: [0, 139, 139],\n darkgoldenrod: [184, 134, 11],\n darkgray: [169, 169, 169],\n darkgreen: [0, 100, 0],\n darkgrey: [169, 169, 169],\n darkkhaki: [189, 183, 107],\n darkmagenta: [139, 0, 139],\n darkolivegreen: [85, 107, 47],\n darkorange: [255, 140, 0],\n darkorchid: [153, 50, 204],\n darkred: [139, 0, 0],\n darksalmon: [233, 150, 122],\n darkseagreen: [143, 188, 143],\n darkslateblue: [72, 61, 139],\n darkslategray: [47, 79, 79],\n darkslategrey: [47, 79, 79],\n darkturquoise: [0, 206, 209],\n darkviolet: [148, 0, 211],\n deeppink: [255, 20, 147],\n deepskyblue: [0, 191, 255],\n dimgray: [105, 105, 105],\n dimgrey: [105, 105, 105],\n dodgerblue: [30, 144, 255],\n firebrick: [178, 34, 34],\n floralwhite: [255, 250, 240],\n forestgreen: [34, 139, 34],\n fuchsia: [255, 0, 255],\n gainsboro: [220, 220, 220],\n ghostwhite: [248, 248, 255],\n gold: [255, 215, 0],\n goldenrod: [218, 165, 32],\n gray: [128, 128, 128],\n grey: [128, 128, 128],\n green: [0, 128, 0],\n greenyellow: [173, 255, 47],\n honeydew: [240, 255, 240],\n hotpink: [255, 105, 180],\n indianred: [205, 92, 92],\n indigo: [75, 0, 130],\n ivory: [255, 255, 240],\n khaki: [240, 230, 140],\n lavender: [230, 230, 250],\n lavenderblush: [255, 240, 245],\n lawngreen: [124, 252, 0],\n lemonchiffon: [255, 250, 205],\n lightblue: [173, 216, 230],\n lightcoral: [240, 128, 128],\n lightcyan: [224, 255, 255],\n lightgoldenrodyellow: [250, 250, 210],\n lightgray: [211, 211, 211],\n lightgreen: [144, 238, 144],\n lightgrey: [211, 211, 211],\n lightpink: [255, 182, 193],\n lightsalmon: [255, 160, 122],\n lightseagreen: [32, 178, 170],\n lightskyblue: [135, 206, 250],\n lightslategray: [119, 136, 153],\n lightslategrey: [119, 136, 153],\n lightsteelblue: [176, 196, 222],\n lightyellow: [255, 255, 224],\n lime: [0, 255, 0],\n limegreen: [50, 205, 50],\n linen: [250, 240, 230],\n magenta: [255, 0, 255],\n maroon: [128, 0, 0],\n mediumaquamarine: [102, 205, 170],\n mediumblue: [0, 0, 205],\n mediumorchid: [186, 85, 211],\n mediumpurple: [147, 112, 219],\n mediumseagreen: [60, 179, 113],\n mediumslateblue: [123, 104, 238],\n mediumspringgreen: [0, 250, 154],\n mediumturquoise: [72, 209, 204],\n mediumvioletred: [199, 21, 133],\n midnightblue: [25, 25, 112],\n mintcream: [245, 255, 250],\n mistyrose: [255, 228, 225],\n moccasin: [255, 228, 181],\n navajowhite: [255, 222, 173],\n navy: [0, 0, 128],\n oldlace: [253, 245, 230],\n olive: [128, 128, 0],\n olivedrab: [107, 142, 35],\n orange: [255, 165, 0],\n orangered: [255, 69, 0],\n orchid: [218, 112, 214],\n palegoldenrod: [238, 232, 170],\n palegreen: [152, 251, 152],\n paleturquoise: [175, 238, 238],\n palevioletred: [219, 112, 147],\n papayawhip: [255, 239, 213],\n peachpuff: [255, 218, 185],\n peru: [205, 133, 63],\n pink: [255, 192, 203],\n plum: [221, 160, 221],\n powderblue: [176, 224, 230],\n purple: [128, 0, 128],\n red: [255, 0, 0],\n rosybrown: [188, 143, 143],\n royalblue: [65, 105, 225],\n saddlebrown: [139, 69, 19],\n salmon: [250, 128, 114],\n sandybrown: [244, 164, 96],\n seagreen: [46, 139, 87],\n seashell: [255, 245, 238],\n sienna: [160, 82, 45],\n silver: [192, 192, 192],\n skyblue: [135, 206, 235],\n slateblue: [106, 90, 205],\n slategray: [112, 128, 144],\n slategrey: [112, 128, 144],\n snow: [255, 250, 250],\n springgreen: [0, 255, 127],\n steelblue: [70, 130, 180],\n tan: [210, 180, 140],\n teal: [0, 128, 128],\n thistle: [216, 191, 216],\n tomato: [255, 99, 71],\n turquoise: [64, 224, 208],\n violet: [238, 130, 238],\n wheat: [245, 222, 179],\n white: [255, 255, 255],\n whitesmoke: [245, 245, 245],\n yellow: [255, 255, 0],\n yellowgreen: [154, 205, 50]\n};\n\nvar setMap = function setMap(options) {\n var obj = options.map;\n var keys = options.keys;\n var l = keys.length;\n\n for (var i = 0; i < l; i++) {\n var key = keys[i];\n\n if (plainObject(key)) {\n throw Error('Tried to set map with object key');\n }\n\n if (i < keys.length - 1) {\n // extend the map if necessary\n if (obj[key] == null) {\n obj[key] = {};\n }\n\n obj = obj[key];\n } else {\n // set the value\n obj[key] = options.value;\n }\n }\n}; // gets the value in a map even if it's not built in places\n\nvar getMap = function getMap(options) {\n var obj = options.map;\n var keys = options.keys;\n var l = keys.length;\n\n for (var i = 0; i < l; i++) {\n var key = keys[i];\n\n if (plainObject(key)) {\n throw Error('Tried to get map with object key');\n }\n\n obj = obj[key];\n\n if (obj == null) {\n return obj;\n }\n }\n\n return obj;\n}; // deletes the entry in the map\n\nvar performance = window$1 ? window$1.performance : null;\nvar pnow = performance && performance.now ? function () {\n return performance.now();\n} : function () {\n return Date.now();\n};\n\nvar raf = function () {\n if (window$1) {\n if (window$1.requestAnimationFrame) {\n return function (fn) {\n window$1.requestAnimationFrame(fn);\n };\n } else if (window$1.mozRequestAnimationFrame) {\n return function (fn) {\n window$1.mozRequestAnimationFrame(fn);\n };\n } else if (window$1.webkitRequestAnimationFrame) {\n return function (fn) {\n window$1.webkitRequestAnimationFrame(fn);\n };\n } else if (window$1.msRequestAnimationFrame) {\n return function (fn) {\n window$1.msRequestAnimationFrame(fn);\n };\n }\n }\n\n return function (fn) {\n if (fn) {\n setTimeout(function () {\n fn(pnow());\n }, 1000 / 60);\n }\n };\n}();\n\nvar requestAnimationFrame = function requestAnimationFrame(fn) {\n return raf(fn);\n};\nvar performanceNow = pnow;\n\nvar DEFAULT_HASH_SEED = 9261;\nvar K = 65599; // 37 also works pretty well\n\nvar DEFAULT_HASH_SEED_ALT = 5381;\nvar hashIterableInts = function hashIterableInts(iterator) {\n var seed = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DEFAULT_HASH_SEED;\n // sdbm/string-hash\n var hash = seed;\n var entry;\n\n for (;;) {\n entry = iterator.next();\n\n if (entry.done) {\n break;\n }\n\n hash = hash * K + entry.value | 0;\n }\n\n return hash;\n};\nvar hashInt = function hashInt(num) {\n var seed = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DEFAULT_HASH_SEED;\n // sdbm/string-hash\n return seed * K + num | 0;\n};\nvar hashIntAlt = function hashIntAlt(num) {\n var seed = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DEFAULT_HASH_SEED_ALT;\n // djb2/string-hash\n return (seed << 5) + seed + num | 0;\n};\nvar combineHashes = function combineHashes(hash1, hash2) {\n return hash1 * 0x200000 + hash2;\n};\nvar combineHashesArray = function combineHashesArray(hashes) {\n return hashes[0] * 0x200000 + hashes[1];\n};\nvar hashArrays = function hashArrays(hashes1, hashes2) {\n return [hashInt(hashes1[0], hashes2[0]), hashIntAlt(hashes1[1], hashes2[1])];\n};\nvar hashIntsArray = function hashIntsArray(ints, seed) {\n var entry = {\n value: 0,\n done: false\n };\n var i = 0;\n var length = ints.length;\n var iterator = {\n next: function next() {\n if (i < length) {\n entry.value = ints[i++];\n } else {\n entry.done = true;\n }\n\n return entry;\n }\n };\n return hashIterableInts(iterator, seed);\n};\nvar hashString = function hashString(str, seed) {\n var entry = {\n value: 0,\n done: false\n };\n var i = 0;\n var length = str.length;\n var iterator = {\n next: function next() {\n if (i < length) {\n entry.value = str.charCodeAt(i++);\n } else {\n entry.done = true;\n }\n\n return entry;\n }\n };\n return hashIterableInts(iterator, seed);\n};\nvar hashStrings = function hashStrings() {\n return hashStringsArray(arguments);\n};\nvar hashStringsArray = function hashStringsArray(strs) {\n var hash;\n\n for (var i = 0; i < strs.length; i++) {\n var str = strs[i];\n\n if (i === 0) {\n hash = hashString(str);\n } else {\n hash = hashString(str, hash);\n }\n }\n\n return hash;\n};\n\n/*global console */\nvar warningsEnabled = true;\nvar warnSupported = console.warn != null; // eslint-disable-line no-console\n\nvar traceSupported = console.trace != null; // eslint-disable-line no-console\n\nvar MAX_INT$1 = Number.MAX_SAFE_INTEGER || 9007199254740991;\nvar trueify = function trueify() {\n return true;\n};\nvar falsify = function falsify() {\n return false;\n};\nvar zeroify = function zeroify() {\n return 0;\n};\nvar noop$1 = function noop() {};\nvar error = function error(msg) {\n throw new Error(msg);\n};\nvar warnings = function warnings(enabled) {\n if (enabled !== undefined) {\n warningsEnabled = !!enabled;\n } else {\n return warningsEnabled;\n }\n};\nvar warn = function warn(msg) {\n /* eslint-disable no-console */\n if (!warnings()) {\n return;\n }\n\n if (warnSupported) {\n console.warn(msg);\n } else {\n console.log(msg);\n\n if (traceSupported) {\n console.trace();\n }\n }\n};\n/* eslint-enable */\n\nvar clone = function clone(obj) {\n return extend({}, obj);\n}; // gets a shallow copy of the argument\n\nvar copy = function copy(obj) {\n if (obj == null) {\n return obj;\n }\n\n if (array(obj)) {\n return obj.slice();\n } else if (plainObject(obj)) {\n return clone(obj);\n } else {\n return obj;\n }\n};\nvar copyArray = function copyArray(arr) {\n return arr.slice();\n};\nvar uuid = function uuid(a, b\n/* placeholders */\n) {\n for ( // loop :)\n b = a = ''; // b - result , a - numeric letiable\n a++ < 36; //\n b += a * 51 & 52 // if \"a\" is not 9 or 14 or 19 or 24\n ? // return a random number or 4\n (a ^ 15 // if \"a\" is not 15\n ? // generate a random number from 0 to 15\n 8 ^ Math.random() * (a ^ 20 ? 16 : 4) // unless \"a\" is 20, in which case a random number from 8 to 11\n : 4 // otherwise 4\n ).toString(16) : '-' // in other cases (if \"a\" is 9,14,19,24) insert \"-\"\n ) {\n }\n\n return b;\n};\nvar _staticEmptyObject = {};\nvar staticEmptyObject = function staticEmptyObject() {\n return _staticEmptyObject;\n};\nvar defaults$g = function defaults(_defaults) {\n var keys = Object.keys(_defaults);\n return function (opts) {\n var filledOpts = {};\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n var optVal = opts == null ? undefined : opts[key];\n filledOpts[key] = optVal === undefined ? _defaults[key] : optVal;\n }\n\n return filledOpts;\n };\n};\nvar removeFromArray = function removeFromArray(arr, ele, oneCopy) {\n for (var i = arr.length - 1; i >= 0; i--) {\n if (arr[i] === ele) {\n arr.splice(i, 1);\n\n if (oneCopy) {\n break;\n }\n }\n }\n};\nvar clearArray = function clearArray(arr) {\n arr.splice(0, arr.length);\n};\nvar push = function push(arr, otherArr) {\n for (var i = 0; i < otherArr.length; i++) {\n var el = otherArr[i];\n arr.push(el);\n }\n};\nvar getPrefixedProperty = function getPrefixedProperty(obj, propName, prefix) {\n if (prefix) {\n propName = prependCamel(prefix, propName); // e.g. (labelWidth, source) => sourceLabelWidth\n }\n\n return obj[propName];\n};\nvar setPrefixedProperty = function setPrefixedProperty(obj, propName, prefix, value) {\n if (prefix) {\n propName = prependCamel(prefix, propName); // e.g. (labelWidth, source) => sourceLabelWidth\n }\n\n obj[propName] = value;\n};\n\n/* global Map */\nvar ObjectMap = /*#__PURE__*/function () {\n function ObjectMap() {\n _classCallCheck(this, ObjectMap);\n\n this._obj = {};\n }\n\n _createClass(ObjectMap, [{\n key: \"set\",\n value: function set(key, val) {\n this._obj[key] = val;\n return this;\n }\n }, {\n key: \"delete\",\n value: function _delete(key) {\n this._obj[key] = undefined;\n return this;\n }\n }, {\n key: \"clear\",\n value: function clear() {\n this._obj = {};\n }\n }, {\n key: \"has\",\n value: function has(key) {\n return this._obj[key] !== undefined;\n }\n }, {\n key: \"get\",\n value: function get(key) {\n return this._obj[key];\n }\n }]);\n\n return ObjectMap;\n}();\n\nvar Map$1 = typeof Map !== 'undefined' ? Map : ObjectMap;\n\n/* global Set */\nvar undef = \"undefined\" ;\n\nvar ObjectSet = /*#__PURE__*/function () {\n function ObjectSet(arrayOrObjectSet) {\n _classCallCheck(this, ObjectSet);\n\n this._obj = Object.create(null);\n this.size = 0;\n\n if (arrayOrObjectSet != null) {\n var arr;\n\n if (arrayOrObjectSet.instanceString != null && arrayOrObjectSet.instanceString() === this.instanceString()) {\n arr = arrayOrObjectSet.toArray();\n } else {\n arr = arrayOrObjectSet;\n }\n\n for (var i = 0; i < arr.length; i++) {\n this.add(arr[i]);\n }\n }\n }\n\n _createClass(ObjectSet, [{\n key: \"instanceString\",\n value: function instanceString() {\n return 'set';\n }\n }, {\n key: \"add\",\n value: function add(val) {\n var o = this._obj;\n\n if (o[val] !== 1) {\n o[val] = 1;\n this.size++;\n }\n }\n }, {\n key: \"delete\",\n value: function _delete(val) {\n var o = this._obj;\n\n if (o[val] === 1) {\n o[val] = 0;\n this.size--;\n }\n }\n }, {\n key: \"clear\",\n value: function clear() {\n this._obj = Object.create(null);\n }\n }, {\n key: \"has\",\n value: function has(val) {\n return this._obj[val] === 1;\n }\n }, {\n key: \"toArray\",\n value: function toArray() {\n var _this = this;\n\n return Object.keys(this._obj).filter(function (key) {\n return _this.has(key);\n });\n }\n }, {\n key: \"forEach\",\n value: function forEach(callback, thisArg) {\n return this.toArray().forEach(callback, thisArg);\n }\n }]);\n\n return ObjectSet;\n}();\n\nvar Set$1 = (typeof Set === \"undefined\" ? \"undefined\" : _typeof(Set)) !== undef ? Set : ObjectSet;\n\nvar Element = function Element(cy, params) {\n var restore = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;\n\n if (cy === undefined || params === undefined || !core(cy)) {\n error('An element must have a core reference and parameters set');\n return;\n }\n\n var group = params.group; // try to automatically infer the group if unspecified\n\n if (group == null) {\n if (params.data && params.data.source != null && params.data.target != null) {\n group = 'edges';\n } else {\n group = 'nodes';\n }\n } // validate group\n\n\n if (group !== 'nodes' && group !== 'edges') {\n error('An element must be of type `nodes` or `edges`; you specified `' + group + '`');\n return;\n } // make the element array-like, just like a collection\n\n\n this.length = 1;\n this[0] = this; // NOTE: when something is added here, add also to ele.json()\n\n var _p = this._private = {\n cy: cy,\n single: true,\n // indicates this is an element\n data: params.data || {},\n // data object\n position: params.position || {\n x: 0,\n y: 0\n },\n // (x, y) position pair\n autoWidth: undefined,\n // width and height of nodes calculated by the renderer when set to special 'auto' value\n autoHeight: undefined,\n autoPadding: undefined,\n compoundBoundsClean: false,\n // whether the compound dimensions need to be recalculated the next time dimensions are read\n listeners: [],\n // array of bound listeners\n group: group,\n // string; 'nodes' or 'edges'\n style: {},\n // properties as set by the style\n rstyle: {},\n // properties for style sent from the renderer to the core\n styleCxts: [],\n // applied style contexts from the styler\n styleKeys: {},\n // per-group keys of style property values\n removed: true,\n // whether it's inside the vis; true if removed (set true here since we call restore)\n selected: params.selected ? true : false,\n // whether it's selected\n selectable: params.selectable === undefined ? true : params.selectable ? true : false,\n // whether it's selectable\n locked: params.locked ? true : false,\n // whether the element is locked (cannot be moved)\n grabbed: false,\n // whether the element is grabbed by the mouse; renderer sets this privately\n grabbable: params.grabbable === undefined ? true : params.grabbable ? true : false,\n // whether the element can be grabbed\n pannable: params.pannable === undefined ? group === 'edges' ? true : false : params.pannable ? true : false,\n // whether the element has passthrough panning enabled\n active: false,\n // whether the element is active from user interaction\n classes: new Set$1(),\n // map ( className => true )\n animation: {\n // object for currently-running animations\n current: [],\n queue: []\n },\n rscratch: {},\n // object in which the renderer can store information\n scratch: params.scratch || {},\n // scratch objects\n edges: [],\n // array of connected edges\n children: [],\n // array of children\n parent: params.parent && params.parent.isNode() ? params.parent : null,\n // parent ref\n traversalCache: {},\n // cache of output of traversal functions\n backgrounding: false,\n // whether background images are loading\n bbCache: null,\n // cache of the current bounding box\n bbCacheShift: {\n x: 0,\n y: 0\n },\n // shift applied to cached bb to be applied on next get\n bodyBounds: null,\n // bounds cache of element body, w/o overlay\n overlayBounds: null,\n // bounds cache of element body, including overlay\n labelBounds: {\n // bounds cache of labels\n all: null,\n source: null,\n target: null,\n main: null\n },\n arrowBounds: {\n // bounds cache of edge arrows\n source: null,\n target: null,\n 'mid-source': null,\n 'mid-target': null\n }\n };\n\n if (_p.position.x == null) {\n _p.position.x = 0;\n }\n\n if (_p.position.y == null) {\n _p.position.y = 0;\n } // renderedPosition overrides if specified\n\n\n if (params.renderedPosition) {\n var rpos = params.renderedPosition;\n var pan = cy.pan();\n var zoom = cy.zoom();\n _p.position = {\n x: (rpos.x - pan.x) / zoom,\n y: (rpos.y - pan.y) / zoom\n };\n }\n\n var classes = [];\n\n if (array(params.classes)) {\n classes = params.classes;\n } else if (string(params.classes)) {\n classes = params.classes.split(/\\s+/);\n }\n\n for (var i = 0, l = classes.length; i < l; i++) {\n var cls = classes[i];\n\n if (!cls || cls === '') {\n continue;\n }\n\n _p.classes.add(cls);\n }\n\n this.createEmitter();\n var bypass = params.style || params.css;\n\n if (bypass) {\n warn('Setting a `style` bypass at element creation should be done only when absolutely necessary. Try to use the stylesheet instead.');\n this.style(bypass);\n }\n\n if (restore === undefined || restore) {\n this.restore();\n }\n};\n\nvar defineSearch = function defineSearch(params) {\n params = {\n bfs: params.bfs || !params.dfs,\n dfs: params.dfs || !params.bfs\n }; // from pseudocode on wikipedia\n\n return function searchFn(roots, fn, directed) {\n var options;\n\n if (plainObject(roots) && !elementOrCollection(roots)) {\n options = roots;\n roots = options.roots || options.root;\n fn = options.visit;\n directed = options.directed;\n }\n\n directed = arguments.length === 2 && !fn$6(fn) ? fn : directed;\n fn = fn$6(fn) ? fn : function () {};\n var cy = this._private.cy;\n var v = roots = string(roots) ? this.filter(roots) : roots;\n var Q = [];\n var connectedNodes = [];\n var connectedBy = {};\n var id2depth = {};\n var V = {};\n var j = 0;\n var found;\n\n var _this$byGroup = this.byGroup(),\n nodes = _this$byGroup.nodes,\n edges = _this$byGroup.edges; // enqueue v\n\n\n for (var i = 0; i < v.length; i++) {\n var vi = v[i];\n var viId = vi.id();\n\n if (vi.isNode()) {\n Q.unshift(vi);\n\n if (params.bfs) {\n V[viId] = true;\n connectedNodes.push(vi);\n }\n\n id2depth[viId] = 0;\n }\n }\n\n var _loop = function _loop() {\n var v = params.bfs ? Q.shift() : Q.pop();\n var vId = v.id();\n\n if (params.dfs) {\n if (V[vId]) {\n return \"continue\";\n }\n\n V[vId] = true;\n connectedNodes.push(v);\n }\n\n var depth = id2depth[vId];\n var prevEdge = connectedBy[vId];\n var src = prevEdge != null ? prevEdge.source() : null;\n var tgt = prevEdge != null ? prevEdge.target() : null;\n var prevNode = prevEdge == null ? undefined : v.same(src) ? tgt[0] : src[0];\n var ret = void 0;\n ret = fn(v, prevEdge, prevNode, j++, depth);\n\n if (ret === true) {\n found = v;\n return \"break\";\n }\n\n if (ret === false) {\n return \"break\";\n }\n\n var vwEdges = v.connectedEdges().filter(function (e) {\n return (!directed || e.source().same(v)) && edges.has(e);\n });\n\n for (var _i2 = 0; _i2 < vwEdges.length; _i2++) {\n var e = vwEdges[_i2];\n var w = e.connectedNodes().filter(function (n) {\n return !n.same(v) && nodes.has(n);\n });\n var wId = w.id();\n\n if (w.length !== 0 && !V[wId]) {\n w = w[0];\n Q.push(w);\n\n if (params.bfs) {\n V[wId] = true;\n connectedNodes.push(w);\n }\n\n connectedBy[wId] = e;\n id2depth[wId] = id2depth[vId] + 1;\n }\n }\n };\n\n while (Q.length !== 0) {\n var _ret = _loop();\n\n if (_ret === \"continue\") continue;\n if (_ret === \"break\") break;\n }\n\n var connectedEles = cy.collection();\n\n for (var _i = 0; _i < connectedNodes.length; _i++) {\n var node = connectedNodes[_i];\n var edge = connectedBy[node.id()];\n\n if (edge != null) {\n connectedEles.push(edge);\n }\n\n connectedEles.push(node);\n }\n\n return {\n path: cy.collection(connectedEles),\n found: cy.collection(found)\n };\n };\n}; // search, spanning trees, etc\n\n\nvar elesfn$v = {\n breadthFirstSearch: defineSearch({\n bfs: true\n }),\n depthFirstSearch: defineSearch({\n dfs: true\n })\n}; // nice, short mathematical alias\n\nelesfn$v.bfs = elesfn$v.breadthFirstSearch;\nelesfn$v.dfs = elesfn$v.depthFirstSearch;\n\nvar dijkstraDefaults = defaults$g({\n root: null,\n weight: function weight(edge) {\n return 1;\n },\n directed: false\n});\nvar elesfn$u = {\n dijkstra: function dijkstra(options) {\n if (!plainObject(options)) {\n var args = arguments;\n options = {\n root: args[0],\n weight: args[1],\n directed: args[2]\n };\n }\n\n var _dijkstraDefaults = dijkstraDefaults(options),\n root = _dijkstraDefaults.root,\n weight = _dijkstraDefaults.weight,\n directed = _dijkstraDefaults.directed;\n\n var eles = this;\n var weightFn = weight;\n var source = string(root) ? this.filter(root)[0] : root[0];\n var dist = {};\n var prev = {};\n var knownDist = {};\n\n var _this$byGroup = this.byGroup(),\n nodes = _this$byGroup.nodes,\n edges = _this$byGroup.edges;\n\n edges.unmergeBy(function (ele) {\n return ele.isLoop();\n });\n\n var getDist = function getDist(node) {\n return dist[node.id()];\n };\n\n var setDist = function setDist(node, d) {\n dist[node.id()] = d;\n Q.updateItem(node);\n };\n\n var Q = new Heap__default[\"default\"](function (a, b) {\n return getDist(a) - getDist(b);\n });\n\n for (var i = 0; i < nodes.length; i++) {\n var node = nodes[i];\n dist[node.id()] = node.same(source) ? 0 : Infinity;\n Q.push(node);\n }\n\n var distBetween = function distBetween(u, v) {\n var uvs = (directed ? u.edgesTo(v) : u.edgesWith(v)).intersect(edges);\n var smallestDistance = Infinity;\n var smallestEdge;\n\n for (var _i = 0; _i < uvs.length; _i++) {\n var edge = uvs[_i];\n\n var _weight = weightFn(edge);\n\n if (_weight < smallestDistance || !smallestEdge) {\n smallestDistance = _weight;\n smallestEdge = edge;\n }\n }\n\n return {\n edge: smallestEdge,\n dist: smallestDistance\n };\n };\n\n while (Q.size() > 0) {\n var u = Q.pop();\n var smalletsDist = getDist(u);\n var uid = u.id();\n knownDist[uid] = smalletsDist;\n\n if (smalletsDist === Infinity) {\n continue;\n }\n\n var neighbors = u.neighborhood().intersect(nodes);\n\n for (var _i2 = 0; _i2 < neighbors.length; _i2++) {\n var v = neighbors[_i2];\n var vid = v.id();\n var vDist = distBetween(u, v);\n var alt = smalletsDist + vDist.dist;\n\n if (alt < getDist(v)) {\n setDist(v, alt);\n prev[vid] = {\n node: u,\n edge: vDist.edge\n };\n }\n } // for\n\n } // while\n\n\n return {\n distanceTo: function distanceTo(node) {\n var target = string(node) ? nodes.filter(node)[0] : node[0];\n return knownDist[target.id()];\n },\n pathTo: function pathTo(node) {\n var target = string(node) ? nodes.filter(node)[0] : node[0];\n var S = [];\n var u = target;\n var uid = u.id();\n\n if (target.length > 0) {\n S.unshift(target);\n\n while (prev[uid]) {\n var p = prev[uid];\n S.unshift(p.edge);\n S.unshift(p.node);\n u = p.node;\n uid = u.id();\n }\n }\n\n return eles.spawn(S);\n }\n };\n }\n};\n\nvar elesfn$t = {\n // kruskal's algorithm (finds min spanning tree, assuming undirected graph)\n // implemented from pseudocode from wikipedia\n kruskal: function kruskal(weightFn) {\n weightFn = weightFn || function (edge) {\n return 1;\n };\n\n var _this$byGroup = this.byGroup(),\n nodes = _this$byGroup.nodes,\n edges = _this$byGroup.edges;\n\n var numNodes = nodes.length;\n var forest = new Array(numNodes);\n var A = nodes; // assumes byGroup() creates new collections that can be safely mutated\n\n var findSetIndex = function findSetIndex(ele) {\n for (var i = 0; i < forest.length; i++) {\n var eles = forest[i];\n\n if (eles.has(ele)) {\n return i;\n }\n }\n }; // start with one forest per node\n\n\n for (var i = 0; i < numNodes; i++) {\n forest[i] = this.spawn(nodes[i]);\n }\n\n var S = edges.sort(function (a, b) {\n return weightFn(a) - weightFn(b);\n });\n\n for (var _i = 0; _i < S.length; _i++) {\n var edge = S[_i];\n var u = edge.source()[0];\n var v = edge.target()[0];\n var setUIndex = findSetIndex(u);\n var setVIndex = findSetIndex(v);\n var setU = forest[setUIndex];\n var setV = forest[setVIndex];\n\n if (setUIndex !== setVIndex) {\n A.merge(edge); // combine forests for u and v\n\n setU.merge(setV);\n forest.splice(setVIndex, 1);\n }\n }\n\n return A;\n }\n};\n\nvar aStarDefaults = defaults$g({\n root: null,\n goal: null,\n weight: function weight(edge) {\n return 1;\n },\n heuristic: function heuristic(edge) {\n return 0;\n },\n directed: false\n});\nvar elesfn$s = {\n // Implemented from pseudocode from wikipedia\n aStar: function aStar(options) {\n var cy = this.cy();\n\n var _aStarDefaults = aStarDefaults(options),\n root = _aStarDefaults.root,\n goal = _aStarDefaults.goal,\n heuristic = _aStarDefaults.heuristic,\n directed = _aStarDefaults.directed,\n weight = _aStarDefaults.weight;\n\n root = cy.collection(root)[0];\n goal = cy.collection(goal)[0];\n var sid = root.id();\n var tid = goal.id();\n var gScore = {};\n var fScore = {};\n var closedSetIds = {};\n var openSet = new Heap__default[\"default\"](function (a, b) {\n return fScore[a.id()] - fScore[b.id()];\n });\n var openSetIds = new Set$1();\n var cameFrom = {};\n var cameFromEdge = {};\n\n var addToOpenSet = function addToOpenSet(ele, id) {\n openSet.push(ele);\n openSetIds.add(id);\n };\n\n var cMin, cMinId;\n\n var popFromOpenSet = function popFromOpenSet() {\n cMin = openSet.pop();\n cMinId = cMin.id();\n openSetIds[\"delete\"](cMinId);\n };\n\n var isInOpenSet = function isInOpenSet(id) {\n return openSetIds.has(id);\n };\n\n addToOpenSet(root, sid);\n gScore[sid] = 0;\n fScore[sid] = heuristic(root); // Counter\n\n var steps = 0; // Main loop\n\n while (openSet.size() > 0) {\n popFromOpenSet();\n steps++; // If we've found our goal, then we are done\n\n if (cMinId === tid) {\n var path = [];\n var pathNode = goal;\n var pathNodeId = tid;\n var pathEdge = cameFromEdge[pathNodeId];\n\n for (;;) {\n path.unshift(pathNode);\n\n if (pathEdge != null) {\n path.unshift(pathEdge);\n }\n\n pathNode = cameFrom[pathNodeId];\n\n if (pathNode == null) {\n break;\n }\n\n pathNodeId = pathNode.id();\n pathEdge = cameFromEdge[pathNodeId];\n }\n\n return {\n found: true,\n distance: gScore[cMinId],\n path: this.spawn(path),\n steps: steps\n };\n } // Add cMin to processed nodes\n\n\n closedSetIds[cMinId] = true; // Update scores for neighbors of cMin\n // Take into account if graph is directed or not\n\n var vwEdges = cMin._private.edges;\n\n for (var i = 0; i < vwEdges.length; i++) {\n var e = vwEdges[i]; // edge must be in set of calling eles\n\n if (!this.hasElementWithId(e.id())) {\n continue;\n } // cMin must be the source of edge if directed\n\n\n if (directed && e.data('source') !== cMinId) {\n continue;\n }\n\n var wSrc = e.source();\n var wTgt = e.target();\n var w = wSrc.id() !== cMinId ? wSrc : wTgt;\n var wid = w.id(); // node must be in set of calling eles\n\n if (!this.hasElementWithId(wid)) {\n continue;\n } // if node is in closedSet, ignore it\n\n\n if (closedSetIds[wid]) {\n continue;\n } // New tentative score for node w\n\n\n var tempScore = gScore[cMinId] + weight(e); // Update gScore for node w if:\n // w not present in openSet\n // OR\n // tentative gScore is less than previous value\n // w not in openSet\n\n if (!isInOpenSet(wid)) {\n gScore[wid] = tempScore;\n fScore[wid] = tempScore + heuristic(w);\n addToOpenSet(w, wid);\n cameFrom[wid] = cMin;\n cameFromEdge[wid] = e;\n continue;\n } // w already in openSet, but with greater gScore\n\n\n if (tempScore < gScore[wid]) {\n gScore[wid] = tempScore;\n fScore[wid] = tempScore + heuristic(w);\n cameFrom[wid] = cMin;\n cameFromEdge[wid] = e;\n }\n } // End of neighbors update\n\n } // End of main loop\n // If we've reached here, then we've not reached our goal\n\n\n return {\n found: false,\n distance: undefined,\n path: undefined,\n steps: steps\n };\n }\n}; // elesfn\n\nvar floydWarshallDefaults = defaults$g({\n weight: function weight(edge) {\n return 1;\n },\n directed: false\n});\nvar elesfn$r = {\n // Implemented from pseudocode from wikipedia\n floydWarshall: function floydWarshall(options) {\n var cy = this.cy();\n\n var _floydWarshallDefault = floydWarshallDefaults(options),\n weight = _floydWarshallDefault.weight,\n directed = _floydWarshallDefault.directed;\n\n var weightFn = weight;\n\n var _this$byGroup = this.byGroup(),\n nodes = _this$byGroup.nodes,\n edges = _this$byGroup.edges;\n\n var N = nodes.length;\n var Nsq = N * N;\n\n var indexOf = function indexOf(node) {\n return nodes.indexOf(node);\n };\n\n var atIndex = function atIndex(i) {\n return nodes[i];\n }; // Initialize distance matrix\n\n\n var dist = new Array(Nsq);\n\n for (var n = 0; n < Nsq; n++) {\n var j = n % N;\n var i = (n - j) / N;\n\n if (i === j) {\n dist[n] = 0;\n } else {\n dist[n] = Infinity;\n }\n } // Initialize matrix used for path reconstruction\n // Initialize distance matrix\n\n\n var next = new Array(Nsq);\n var edgeNext = new Array(Nsq); // Process edges\n\n for (var _i = 0; _i < edges.length; _i++) {\n var edge = edges[_i];\n var src = edge.source()[0];\n var tgt = edge.target()[0];\n\n if (src === tgt) {\n continue;\n } // exclude loops\n\n\n var s = indexOf(src);\n var t = indexOf(tgt);\n var st = s * N + t; // source to target index\n\n var _weight = weightFn(edge); // Check if already process another edge between same 2 nodes\n\n\n if (dist[st] > _weight) {\n dist[st] = _weight;\n next[st] = t;\n edgeNext[st] = edge;\n } // If undirected graph, process 'reversed' edge\n\n\n if (!directed) {\n var ts = t * N + s; // target to source index\n\n if (!directed && dist[ts] > _weight) {\n dist[ts] = _weight;\n next[ts] = s;\n edgeNext[ts] = edge;\n }\n }\n } // Main loop\n\n\n for (var k = 0; k < N; k++) {\n for (var _i2 = 0; _i2 < N; _i2++) {\n var ik = _i2 * N + k;\n\n for (var _j = 0; _j < N; _j++) {\n var ij = _i2 * N + _j;\n var kj = k * N + _j;\n\n if (dist[ik] + dist[kj] < dist[ij]) {\n dist[ij] = dist[ik] + dist[kj];\n next[ij] = next[ik];\n }\n }\n }\n }\n\n var getArgEle = function getArgEle(ele) {\n return (string(ele) ? cy.filter(ele) : ele)[0];\n };\n\n var indexOfArgEle = function indexOfArgEle(ele) {\n return indexOf(getArgEle(ele));\n };\n\n var res = {\n distance: function distance(from, to) {\n var i = indexOfArgEle(from);\n var j = indexOfArgEle(to);\n return dist[i * N + j];\n },\n path: function path(from, to) {\n var i = indexOfArgEle(from);\n var j = indexOfArgEle(to);\n var fromNode = atIndex(i);\n\n if (i === j) {\n return fromNode.collection();\n }\n\n if (next[i * N + j] == null) {\n return cy.collection();\n }\n\n var path = cy.collection();\n var prev = i;\n var edge;\n path.merge(fromNode);\n\n while (i !== j) {\n prev = i;\n i = next[i * N + j];\n edge = edgeNext[prev * N + i];\n path.merge(edge);\n path.merge(atIndex(i));\n }\n\n return path;\n }\n };\n return res;\n } // floydWarshall\n\n}; // elesfn\n\nvar bellmanFordDefaults = defaults$g({\n weight: function weight(edge) {\n return 1;\n },\n directed: false,\n root: null\n});\nvar elesfn$q = {\n // Implemented from pseudocode from wikipedia\n bellmanFord: function bellmanFord(options) {\n var _this = this;\n\n var _bellmanFordDefaults = bellmanFordDefaults(options),\n weight = _bellmanFordDefaults.weight,\n directed = _bellmanFordDefaults.directed,\n root = _bellmanFordDefaults.root;\n\n var weightFn = weight;\n var eles = this;\n var cy = this.cy();\n\n var _this$byGroup = this.byGroup(),\n edges = _this$byGroup.edges,\n nodes = _this$byGroup.nodes;\n\n var numNodes = nodes.length;\n var infoMap = new Map$1();\n var hasNegativeWeightCycle = false;\n var negativeWeightCycles = [];\n root = cy.collection(root)[0]; // in case selector passed\n\n edges.unmergeBy(function (edge) {\n return edge.isLoop();\n });\n var numEdges = edges.length;\n\n var getInfo = function getInfo(node) {\n var obj = infoMap.get(node.id());\n\n if (!obj) {\n obj = {};\n infoMap.set(node.id(), obj);\n }\n\n return obj;\n };\n\n var getNodeFromTo = function getNodeFromTo(to) {\n return (string(to) ? cy.$(to) : to)[0];\n };\n\n var distanceTo = function distanceTo(to) {\n return getInfo(getNodeFromTo(to)).dist;\n };\n\n var pathTo = function pathTo(to) {\n var thisStart = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : root;\n var end = getNodeFromTo(to);\n var path = [];\n var node = end;\n\n for (;;) {\n if (node == null) {\n return _this.spawn();\n }\n\n var _getInfo = getInfo(node),\n edge = _getInfo.edge,\n pred = _getInfo.pred;\n\n path.unshift(node[0]);\n\n if (node.same(thisStart) && path.length > 0) {\n break;\n }\n\n if (edge != null) {\n path.unshift(edge);\n }\n\n node = pred;\n }\n\n return eles.spawn(path);\n }; // Initializations { dist, pred, edge }\n\n\n for (var i = 0; i < numNodes; i++) {\n var node = nodes[i];\n var info = getInfo(node);\n\n if (node.same(root)) {\n info.dist = 0;\n } else {\n info.dist = Infinity;\n }\n\n info.pred = null;\n info.edge = null;\n } // Edges relaxation\n\n\n var replacedEdge = false;\n\n var checkForEdgeReplacement = function checkForEdgeReplacement(node1, node2, edge, info1, info2, weight) {\n var dist = info1.dist + weight;\n\n if (dist < info2.dist && !edge.same(info1.edge)) {\n info2.dist = dist;\n info2.pred = node1;\n info2.edge = edge;\n replacedEdge = true;\n }\n };\n\n for (var _i = 1; _i < numNodes; _i++) {\n replacedEdge = false;\n\n for (var e = 0; e < numEdges; e++) {\n var edge = edges[e];\n var src = edge.source();\n var tgt = edge.target();\n\n var _weight = weightFn(edge);\n\n var srcInfo = getInfo(src);\n var tgtInfo = getInfo(tgt);\n checkForEdgeReplacement(src, tgt, edge, srcInfo, tgtInfo, _weight); // If undirected graph, we need to take into account the 'reverse' edge\n\n if (!directed) {\n checkForEdgeReplacement(tgt, src, edge, tgtInfo, srcInfo, _weight);\n }\n }\n\n if (!replacedEdge) {\n break;\n }\n }\n\n if (replacedEdge) {\n // Check for negative weight cycles\n var negativeWeightCycleIds = [];\n\n for (var _e = 0; _e < numEdges; _e++) {\n var _edge = edges[_e];\n\n var _src = _edge.source();\n\n var _tgt = _edge.target();\n\n var _weight2 = weightFn(_edge);\n\n var srcDist = getInfo(_src).dist;\n var tgtDist = getInfo(_tgt).dist;\n\n if (srcDist + _weight2 < tgtDist || !directed && tgtDist + _weight2 < srcDist) {\n if (!hasNegativeWeightCycle) {\n warn('Graph contains a negative weight cycle for Bellman-Ford');\n hasNegativeWeightCycle = true;\n }\n\n if (options.findNegativeWeightCycles !== false) {\n var negativeNodes = [];\n\n if (srcDist + _weight2 < tgtDist) {\n negativeNodes.push(_src);\n }\n\n if (!directed && tgtDist + _weight2 < srcDist) {\n negativeNodes.push(_tgt);\n }\n\n var numNegativeNodes = negativeNodes.length;\n\n for (var n = 0; n < numNegativeNodes; n++) {\n var start = negativeNodes[n];\n var cycle = [start];\n cycle.push(getInfo(start).edge);\n var _node = getInfo(start).pred;\n\n while (cycle.indexOf(_node) === -1) {\n cycle.push(_node);\n cycle.push(getInfo(_node).edge);\n _node = getInfo(_node).pred;\n }\n\n cycle = cycle.slice(cycle.indexOf(_node));\n var smallestId = cycle[0].id();\n var smallestIndex = 0;\n\n for (var c = 2; c < cycle.length; c += 2) {\n if (cycle[c].id() < smallestId) {\n smallestId = cycle[c].id();\n smallestIndex = c;\n }\n }\n\n cycle = cycle.slice(smallestIndex).concat(cycle.slice(0, smallestIndex));\n cycle.push(cycle[0]);\n var cycleId = cycle.map(function (el) {\n return el.id();\n }).join(\",\");\n\n if (negativeWeightCycleIds.indexOf(cycleId) === -1) {\n negativeWeightCycles.push(eles.spawn(cycle));\n negativeWeightCycleIds.push(cycleId);\n }\n }\n } else {\n break;\n }\n }\n }\n }\n\n return {\n distanceTo: distanceTo,\n pathTo: pathTo,\n hasNegativeWeightCycle: hasNegativeWeightCycle,\n negativeWeightCycles: negativeWeightCycles\n };\n } // bellmanFord\n\n}; // elesfn\n\nvar sqrt2 = Math.sqrt(2); // Function which colapses 2 (meta) nodes into one\n// Updates the remaining edge lists\n// Receives as a paramater the edge which causes the collapse\n\nvar collapse = function collapse(edgeIndex, nodeMap, remainingEdges) {\n if (remainingEdges.length === 0) {\n error(\"Karger-Stein must be run on a connected (sub)graph\");\n }\n\n var edgeInfo = remainingEdges[edgeIndex];\n var sourceIn = edgeInfo[1];\n var targetIn = edgeInfo[2];\n var partition1 = nodeMap[sourceIn];\n var partition2 = nodeMap[targetIn];\n var newEdges = remainingEdges; // re-use array\n // Delete all edges between partition1 and partition2\n\n for (var i = newEdges.length - 1; i >= 0; i--) {\n var edge = newEdges[i];\n var src = edge[1];\n var tgt = edge[2];\n\n if (nodeMap[src] === partition1 && nodeMap[tgt] === partition2 || nodeMap[src] === partition2 && nodeMap[tgt] === partition1) {\n newEdges.splice(i, 1);\n }\n } // All edges pointing to partition2 should now point to partition1\n\n\n for (var _i = 0; _i < newEdges.length; _i++) {\n var _edge = newEdges[_i];\n\n if (_edge[1] === partition2) {\n // Check source\n newEdges[_i] = _edge.slice(); // copy\n\n newEdges[_i][1] = partition1;\n } else if (_edge[2] === partition2) {\n // Check target\n newEdges[_i] = _edge.slice(); // copy\n\n newEdges[_i][2] = partition1;\n }\n } // Move all nodes from partition2 to partition1\n\n\n for (var _i2 = 0; _i2 < nodeMap.length; _i2++) {\n if (nodeMap[_i2] === partition2) {\n nodeMap[_i2] = partition1;\n }\n }\n\n return newEdges;\n}; // Contracts a graph until we reach a certain number of meta nodes\n\n\nvar contractUntil = function contractUntil(metaNodeMap, remainingEdges, size, sizeLimit) {\n while (size > sizeLimit) {\n // Choose an edge randomly\n var edgeIndex = Math.floor(Math.random() * remainingEdges.length); // Collapse graph based on edge\n\n remainingEdges = collapse(edgeIndex, metaNodeMap, remainingEdges);\n size--;\n }\n\n return remainingEdges;\n};\n\nvar elesfn$p = {\n // Computes the minimum cut of an undirected graph\n // Returns the correct answer with high probability\n kargerStein: function kargerStein() {\n var _this = this;\n\n var _this$byGroup = this.byGroup(),\n nodes = _this$byGroup.nodes,\n edges = _this$byGroup.edges;\n\n edges.unmergeBy(function (edge) {\n return edge.isLoop();\n });\n var numNodes = nodes.length;\n var numEdges = edges.length;\n var numIter = Math.ceil(Math.pow(Math.log(numNodes) / Math.LN2, 2));\n var stopSize = Math.floor(numNodes / sqrt2);\n\n if (numNodes < 2) {\n error('At least 2 nodes are required for Karger-Stein algorithm');\n return undefined;\n } // Now store edge destination as indexes\n // Format for each edge (edge index, source node index, target node index)\n\n\n var edgeIndexes = [];\n\n for (var i = 0; i < numEdges; i++) {\n var e = edges[i];\n edgeIndexes.push([i, nodes.indexOf(e.source()), nodes.indexOf(e.target())]);\n } // We will store the best cut found here\n\n\n var minCutSize = Infinity;\n var minCutEdgeIndexes = [];\n var minCutNodeMap = new Array(numNodes); // Initial meta node partition\n\n var metaNodeMap = new Array(numNodes);\n var metaNodeMap2 = new Array(numNodes);\n\n var copyNodesMap = function copyNodesMap(from, to) {\n for (var _i3 = 0; _i3 < numNodes; _i3++) {\n to[_i3] = from[_i3];\n }\n }; // Main loop\n\n\n for (var iter = 0; iter <= numIter; iter++) {\n // Reset meta node partition\n for (var _i4 = 0; _i4 < numNodes; _i4++) {\n metaNodeMap[_i4] = _i4;\n } // Contract until stop point (stopSize nodes)\n\n\n var edgesState = contractUntil(metaNodeMap, edgeIndexes.slice(), numNodes, stopSize);\n var edgesState2 = edgesState.slice(); // copy\n // Create a copy of the colapsed nodes state\n\n copyNodesMap(metaNodeMap, metaNodeMap2); // Run 2 iterations starting in the stop state\n\n var res1 = contractUntil(metaNodeMap, edgesState, stopSize, 2);\n var res2 = contractUntil(metaNodeMap2, edgesState2, stopSize, 2); // Is any of the 2 results the best cut so far?\n\n if (res1.length <= res2.length && res1.length < minCutSize) {\n minCutSize = res1.length;\n minCutEdgeIndexes = res1;\n copyNodesMap(metaNodeMap, minCutNodeMap);\n } else if (res2.length <= res1.length && res2.length < minCutSize) {\n minCutSize = res2.length;\n minCutEdgeIndexes = res2;\n copyNodesMap(metaNodeMap2, minCutNodeMap);\n }\n } // end of main loop\n // Construct result\n\n\n var cut = this.spawn(minCutEdgeIndexes.map(function (e) {\n return edges[e[0]];\n }));\n var partition1 = this.spawn();\n var partition2 = this.spawn(); // traverse metaNodeMap for best cut\n\n var witnessNodePartition = minCutNodeMap[0];\n\n for (var _i5 = 0; _i5 < minCutNodeMap.length; _i5++) {\n var partitionId = minCutNodeMap[_i5];\n var node = nodes[_i5];\n\n if (partitionId === witnessNodePartition) {\n partition1.merge(node);\n } else {\n partition2.merge(node);\n }\n } // construct components corresponding to each disjoint subset of nodes\n\n\n var constructComponent = function constructComponent(subset) {\n var component = _this.spawn();\n\n subset.forEach(function (node) {\n component.merge(node);\n node.connectedEdges().forEach(function (edge) {\n // ensure edge is within calling collection and edge is not in cut\n if (_this.contains(edge) && !cut.contains(edge)) {\n component.merge(edge);\n }\n });\n });\n return component;\n };\n\n var components = [constructComponent(partition1), constructComponent(partition2)];\n var ret = {\n cut: cut,\n components: components,\n // n.b. partitions are included to be compatible with the old api spec\n // (could be removed in a future major version)\n partition1: partition1,\n partition2: partition2\n };\n return ret;\n }\n}; // elesfn\n\nvar copyPosition = function copyPosition(p) {\n return {\n x: p.x,\n y: p.y\n };\n};\nvar modelToRenderedPosition = function modelToRenderedPosition(p, zoom, pan) {\n return {\n x: p.x * zoom + pan.x,\n y: p.y * zoom + pan.y\n };\n};\nvar renderedToModelPosition = function renderedToModelPosition(p, zoom, pan) {\n return {\n x: (p.x - pan.x) / zoom,\n y: (p.y - pan.y) / zoom\n };\n};\nvar array2point = function array2point(arr) {\n return {\n x: arr[0],\n y: arr[1]\n };\n};\nvar min = function min(arr) {\n var begin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var end = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : arr.length;\n var min = Infinity;\n\n for (var i = begin; i < end; i++) {\n var val = arr[i];\n\n if (isFinite(val)) {\n min = Math.min(val, min);\n }\n }\n\n return min;\n};\nvar max = function max(arr) {\n var begin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var end = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : arr.length;\n var max = -Infinity;\n\n for (var i = begin; i < end; i++) {\n var val = arr[i];\n\n if (isFinite(val)) {\n max = Math.max(val, max);\n }\n }\n\n return max;\n};\nvar mean = function mean(arr) {\n var begin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var end = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : arr.length;\n var total = 0;\n var n = 0;\n\n for (var i = begin; i < end; i++) {\n var val = arr[i];\n\n if (isFinite(val)) {\n total += val;\n n++;\n }\n }\n\n return total / n;\n};\nvar median = function median(arr) {\n var begin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var end = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : arr.length;\n var copy = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;\n var sort = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;\n var includeHoles = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : true;\n\n if (copy) {\n arr = arr.slice(begin, end);\n } else {\n if (end < arr.length) {\n arr.splice(end, arr.length - end);\n }\n\n if (begin > 0) {\n arr.splice(0, begin);\n }\n } // all non finite (e.g. Infinity, NaN) elements must be -Infinity so they go to the start\n\n\n var off = 0; // offset from non-finite values\n\n for (var i = arr.length - 1; i >= 0; i--) {\n var v = arr[i];\n\n if (includeHoles) {\n if (!isFinite(v)) {\n arr[i] = -Infinity;\n off++;\n }\n } else {\n // just remove it if we don't want to consider holes\n arr.splice(i, 1);\n }\n }\n\n if (sort) {\n arr.sort(function (a, b) {\n return a - b;\n }); // requires copy = true if you don't want to change the orig\n }\n\n var len = arr.length;\n var mid = Math.floor(len / 2);\n\n if (len % 2 !== 0) {\n return arr[mid + 1 + off];\n } else {\n return (arr[mid - 1 + off] + arr[mid + off]) / 2;\n }\n};\nvar deg2rad = function deg2rad(deg) {\n return Math.PI * deg / 180;\n};\nvar getAngleFromDisp = function getAngleFromDisp(dispX, dispY) {\n return Math.atan2(dispY, dispX) - Math.PI / 2;\n};\nvar log2 = Math.log2 || function (n) {\n return Math.log(n) / Math.log(2);\n};\nvar signum = function signum(x) {\n if (x > 0) {\n return 1;\n } else if (x < 0) {\n return -1;\n } else {\n return 0;\n }\n};\nvar dist = function dist(p1, p2) {\n return Math.sqrt(sqdist(p1, p2));\n};\nvar sqdist = function sqdist(p1, p2) {\n var dx = p2.x - p1.x;\n var dy = p2.y - p1.y;\n return dx * dx + dy * dy;\n};\nvar inPlaceSumNormalize = function inPlaceSumNormalize(v) {\n var length = v.length; // First, get sum of all elements\n\n var total = 0;\n\n for (var i = 0; i < length; i++) {\n total += v[i];\n } // Now, divide each by the sum of all elements\n\n\n for (var _i = 0; _i < length; _i++) {\n v[_i] = v[_i] / total;\n }\n\n return v;\n};\n\nvar qbezierAt = function qbezierAt(p0, p1, p2, t) {\n return (1 - t) * (1 - t) * p0 + 2 * (1 - t) * t * p1 + t * t * p2;\n};\nvar qbezierPtAt = function qbezierPtAt(p0, p1, p2, t) {\n return {\n x: qbezierAt(p0.x, p1.x, p2.x, t),\n y: qbezierAt(p0.y, p1.y, p2.y, t)\n };\n};\nvar lineAt = function lineAt(p0, p1, t, d) {\n var vec = {\n x: p1.x - p0.x,\n y: p1.y - p0.y\n };\n var vecDist = dist(p0, p1);\n var normVec = {\n x: vec.x / vecDist,\n y: vec.y / vecDist\n };\n t = t == null ? 0 : t;\n d = d != null ? d : t * vecDist;\n return {\n x: p0.x + normVec.x * d,\n y: p0.y + normVec.y * d\n };\n};\nvar bound = function bound(min, val, max) {\n return Math.max(min, Math.min(max, val));\n}; // makes a full bb (x1, y1, x2, y2, w, h) from implicit params\n\nvar makeBoundingBox = function makeBoundingBox(bb) {\n if (bb == null) {\n return {\n x1: Infinity,\n y1: Infinity,\n x2: -Infinity,\n y2: -Infinity,\n w: 0,\n h: 0\n };\n } else if (bb.x1 != null && bb.y1 != null) {\n if (bb.x2 != null && bb.y2 != null && bb.x2 >= bb.x1 && bb.y2 >= bb.y1) {\n return {\n x1: bb.x1,\n y1: bb.y1,\n x2: bb.x2,\n y2: bb.y2,\n w: bb.x2 - bb.x1,\n h: bb.y2 - bb.y1\n };\n } else if (bb.w != null && bb.h != null && bb.w >= 0 && bb.h >= 0) {\n return {\n x1: bb.x1,\n y1: bb.y1,\n x2: bb.x1 + bb.w,\n y2: bb.y1 + bb.h,\n w: bb.w,\n h: bb.h\n };\n }\n }\n};\nvar copyBoundingBox = function copyBoundingBox(bb) {\n return {\n x1: bb.x1,\n x2: bb.x2,\n w: bb.w,\n y1: bb.y1,\n y2: bb.y2,\n h: bb.h\n };\n};\nvar clearBoundingBox = function clearBoundingBox(bb) {\n bb.x1 = Infinity;\n bb.y1 = Infinity;\n bb.x2 = -Infinity;\n bb.y2 = -Infinity;\n bb.w = 0;\n bb.h = 0;\n};\nvar updateBoundingBox = function updateBoundingBox(bb1, bb2) {\n // update bb1 with bb2 bounds\n bb1.x1 = Math.min(bb1.x1, bb2.x1);\n bb1.x2 = Math.max(bb1.x2, bb2.x2);\n bb1.w = bb1.x2 - bb1.x1;\n bb1.y1 = Math.min(bb1.y1, bb2.y1);\n bb1.y2 = Math.max(bb1.y2, bb2.y2);\n bb1.h = bb1.y2 - bb1.y1;\n};\nvar expandBoundingBoxByPoint = function expandBoundingBoxByPoint(bb, x, y) {\n bb.x1 = Math.min(bb.x1, x);\n bb.x2 = Math.max(bb.x2, x);\n bb.w = bb.x2 - bb.x1;\n bb.y1 = Math.min(bb.y1, y);\n bb.y2 = Math.max(bb.y2, y);\n bb.h = bb.y2 - bb.y1;\n};\nvar expandBoundingBox = function expandBoundingBox(bb) {\n var padding = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n bb.x1 -= padding;\n bb.x2 += padding;\n bb.y1 -= padding;\n bb.y2 += padding;\n bb.w = bb.x2 - bb.x1;\n bb.h = bb.y2 - bb.y1;\n return bb;\n};\nvar expandBoundingBoxSides = function expandBoundingBoxSides(bb) {\n var padding = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [0];\n var top, right, bottom, left;\n\n if (padding.length === 1) {\n top = right = bottom = left = padding[0];\n } else if (padding.length === 2) {\n top = bottom = padding[0];\n left = right = padding[1];\n } else if (padding.length === 4) {\n var _padding = _slicedToArray(padding, 4);\n\n top = _padding[0];\n right = _padding[1];\n bottom = _padding[2];\n left = _padding[3];\n }\n\n bb.x1 -= left;\n bb.x2 += right;\n bb.y1 -= top;\n bb.y2 += bottom;\n bb.w = bb.x2 - bb.x1;\n bb.h = bb.y2 - bb.y1;\n return bb;\n};\n\nvar assignBoundingBox = function assignBoundingBox(bb1, bb2) {\n bb1.x1 = bb2.x1;\n bb1.y1 = bb2.y1;\n bb1.x2 = bb2.x2;\n bb1.y2 = bb2.y2;\n bb1.w = bb1.x2 - bb1.x1;\n bb1.h = bb1.y2 - bb1.y1;\n};\nvar boundingBoxesIntersect = function boundingBoxesIntersect(bb1, bb2) {\n // case: one bb to right of other\n if (bb1.x1 > bb2.x2) {\n return false;\n }\n\n if (bb2.x1 > bb1.x2) {\n return false;\n } // case: one bb to left of other\n\n\n if (bb1.x2 < bb2.x1) {\n return false;\n }\n\n if (bb2.x2 < bb1.x1) {\n return false;\n } // case: one bb above other\n\n\n if (bb1.y2 < bb2.y1) {\n return false;\n }\n\n if (bb2.y2 < bb1.y1) {\n return false;\n } // case: one bb below other\n\n\n if (bb1.y1 > bb2.y2) {\n return false;\n }\n\n if (bb2.y1 > bb1.y2) {\n return false;\n } // otherwise, must have some overlap\n\n\n return true;\n};\nvar inBoundingBox = function inBoundingBox(bb, x, y) {\n return bb.x1 <= x && x <= bb.x2 && bb.y1 <= y && y <= bb.y2;\n};\nvar pointInBoundingBox = function pointInBoundingBox(bb, pt) {\n return inBoundingBox(bb, pt.x, pt.y);\n};\nvar boundingBoxInBoundingBox = function boundingBoxInBoundingBox(bb1, bb2) {\n return inBoundingBox(bb1, bb2.x1, bb2.y1) && inBoundingBox(bb1, bb2.x2, bb2.y2);\n};\nvar roundRectangleIntersectLine = function roundRectangleIntersectLine(x, y, nodeX, nodeY, width, height, padding) {\n var cornerRadius = getRoundRectangleRadius(width, height);\n var halfWidth = width / 2;\n var halfHeight = height / 2; // Check intersections with straight line segments\n\n var straightLineIntersections; // Top segment, left to right\n\n {\n var topStartX = nodeX - halfWidth + cornerRadius - padding;\n var topStartY = nodeY - halfHeight - padding;\n var topEndX = nodeX + halfWidth - cornerRadius + padding;\n var topEndY = topStartY;\n straightLineIntersections = finiteLinesIntersect(x, y, nodeX, nodeY, topStartX, topStartY, topEndX, topEndY, false);\n\n if (straightLineIntersections.length > 0) {\n return straightLineIntersections;\n }\n } // Right segment, top to bottom\n\n {\n var rightStartX = nodeX + halfWidth + padding;\n var rightStartY = nodeY - halfHeight + cornerRadius - padding;\n var rightEndX = rightStartX;\n var rightEndY = nodeY + halfHeight - cornerRadius + padding;\n straightLineIntersections = finiteLinesIntersect(x, y, nodeX, nodeY, rightStartX, rightStartY, rightEndX, rightEndY, false);\n\n if (straightLineIntersections.length > 0) {\n return straightLineIntersections;\n }\n } // Bottom segment, left to right\n\n {\n var bottomStartX = nodeX - halfWidth + cornerRadius - padding;\n var bottomStartY = nodeY + halfHeight + padding;\n var bottomEndX = nodeX + halfWidth - cornerRadius + padding;\n var bottomEndY = bottomStartY;\n straightLineIntersections = finiteLinesIntersect(x, y, nodeX, nodeY, bottomStartX, bottomStartY, bottomEndX, bottomEndY, false);\n\n if (straightLineIntersections.length > 0) {\n return straightLineIntersections;\n }\n } // Left segment, top to bottom\n\n {\n var leftStartX = nodeX - halfWidth - padding;\n var leftStartY = nodeY - halfHeight + cornerRadius - padding;\n var leftEndX = leftStartX;\n var leftEndY = nodeY + halfHeight - cornerRadius + padding;\n straightLineIntersections = finiteLinesIntersect(x, y, nodeX, nodeY, leftStartX, leftStartY, leftEndX, leftEndY, false);\n\n if (straightLineIntersections.length > 0) {\n return straightLineIntersections;\n }\n } // Check intersections with arc segments\n\n var arcIntersections; // Top Left\n\n {\n var topLeftCenterX = nodeX - halfWidth + cornerRadius;\n var topLeftCenterY = nodeY - halfHeight + cornerRadius;\n arcIntersections = intersectLineCircle(x, y, nodeX, nodeY, topLeftCenterX, topLeftCenterY, cornerRadius + padding); // Ensure the intersection is on the desired quarter of the circle\n\n if (arcIntersections.length > 0 && arcIntersections[0] <= topLeftCenterX && arcIntersections[1] <= topLeftCenterY) {\n return [arcIntersections[0], arcIntersections[1]];\n }\n } // Top Right\n\n {\n var topRightCenterX = nodeX + halfWidth - cornerRadius;\n var topRightCenterY = nodeY - halfHeight + cornerRadius;\n arcIntersections = intersectLineCircle(x, y, nodeX, nodeY, topRightCenterX, topRightCenterY, cornerRadius + padding); // Ensure the intersection is on the desired quarter of the circle\n\n if (arcIntersections.length > 0 && arcIntersections[0] >= topRightCenterX && arcIntersections[1] <= topRightCenterY) {\n return [arcIntersections[0], arcIntersections[1]];\n }\n } // Bottom Right\n\n {\n var bottomRightCenterX = nodeX + halfWidth - cornerRadius;\n var bottomRightCenterY = nodeY + halfHeight - cornerRadius;\n arcIntersections = intersectLineCircle(x, y, nodeX, nodeY, bottomRightCenterX, bottomRightCenterY, cornerRadius + padding); // Ensure the intersection is on the desired quarter of the circle\n\n if (arcIntersections.length > 0 && arcIntersections[0] >= bottomRightCenterX && arcIntersections[1] >= bottomRightCenterY) {\n return [arcIntersections[0], arcIntersections[1]];\n }\n } // Bottom Left\n\n {\n var bottomLeftCenterX = nodeX - halfWidth + cornerRadius;\n var bottomLeftCenterY = nodeY + halfHeight - cornerRadius;\n arcIntersections = intersectLineCircle(x, y, nodeX, nodeY, bottomLeftCenterX, bottomLeftCenterY, cornerRadius + padding); // Ensure the intersection is on the desired quarter of the circle\n\n if (arcIntersections.length > 0 && arcIntersections[0] <= bottomLeftCenterX && arcIntersections[1] >= bottomLeftCenterY) {\n return [arcIntersections[0], arcIntersections[1]];\n }\n }\n return []; // if nothing\n};\nvar inLineVicinity = function inLineVicinity(x, y, lx1, ly1, lx2, ly2, tolerance) {\n var t = tolerance;\n var x1 = Math.min(lx1, lx2);\n var x2 = Math.max(lx1, lx2);\n var y1 = Math.min(ly1, ly2);\n var y2 = Math.max(ly1, ly2);\n return x1 - t <= x && x <= x2 + t && y1 - t <= y && y <= y2 + t;\n};\nvar inBezierVicinity = function inBezierVicinity(x, y, x1, y1, x2, y2, x3, y3, tolerance) {\n var bb = {\n x1: Math.min(x1, x3, x2) - tolerance,\n x2: Math.max(x1, x3, x2) + tolerance,\n y1: Math.min(y1, y3, y2) - tolerance,\n y2: Math.max(y1, y3, y2) + tolerance\n }; // if outside the rough bounding box for the bezier, then it can't be a hit\n\n if (x < bb.x1 || x > bb.x2 || y < bb.y1 || y > bb.y2) {\n // console.log('bezier out of rough bb')\n return false;\n } else {\n // console.log('do more expensive check');\n return true;\n }\n};\nvar solveQuadratic = function solveQuadratic(a, b, c, val) {\n c -= val;\n var r = b * b - 4 * a * c;\n\n if (r < 0) {\n return [];\n }\n\n var sqrtR = Math.sqrt(r);\n var denom = 2 * a;\n var root1 = (-b + sqrtR) / denom;\n var root2 = (-b - sqrtR) / denom;\n return [root1, root2];\n};\nvar solveCubic = function solveCubic(a, b, c, d, result) {\n // Solves a cubic function, returns root in form [r1, i1, r2, i2, r3, i3], where\n // r is the real component, i is the imaginary component\n // An implementation of the Cardano method from the year 1545\n // http://en.wikipedia.org/wiki/Cubic_function#The_nature_of_the_roots\n var epsilon = 0.00001; // avoid division by zero while keeping the overall expression close in value\n\n if (a === 0) {\n a = epsilon;\n }\n\n b /= a;\n c /= a;\n d /= a;\n var discriminant, q, r, dum1, s, t, term1, r13;\n q = (3.0 * c - b * b) / 9.0;\n r = -(27.0 * d) + b * (9.0 * c - 2.0 * (b * b));\n r /= 54.0;\n discriminant = q * q * q + r * r;\n result[1] = 0;\n term1 = b / 3.0;\n\n if (discriminant > 0) {\n s = r + Math.sqrt(discriminant);\n s = s < 0 ? -Math.pow(-s, 1.0 / 3.0) : Math.pow(s, 1.0 / 3.0);\n t = r - Math.sqrt(discriminant);\n t = t < 0 ? -Math.pow(-t, 1.0 / 3.0) : Math.pow(t, 1.0 / 3.0);\n result[0] = -term1 + s + t;\n term1 += (s + t) / 2.0;\n result[4] = result[2] = -term1;\n term1 = Math.sqrt(3.0) * (-t + s) / 2;\n result[3] = term1;\n result[5] = -term1;\n return;\n }\n\n result[5] = result[3] = 0;\n\n if (discriminant === 0) {\n r13 = r < 0 ? -Math.pow(-r, 1.0 / 3.0) : Math.pow(r, 1.0 / 3.0);\n result[0] = -term1 + 2.0 * r13;\n result[4] = result[2] = -(r13 + term1);\n return;\n }\n\n q = -q;\n dum1 = q * q * q;\n dum1 = Math.acos(r / Math.sqrt(dum1));\n r13 = 2.0 * Math.sqrt(q);\n result[0] = -term1 + r13 * Math.cos(dum1 / 3.0);\n result[2] = -term1 + r13 * Math.cos((dum1 + 2.0 * Math.PI) / 3.0);\n result[4] = -term1 + r13 * Math.cos((dum1 + 4.0 * Math.PI) / 3.0);\n return;\n};\nvar sqdistToQuadraticBezier = function sqdistToQuadraticBezier(x, y, x1, y1, x2, y2, x3, y3) {\n // Find minimum distance by using the minimum of the distance\n // function between the given point and the curve\n // This gives the coefficients of the resulting cubic equation\n // whose roots tell us where a possible minimum is\n // (Coefficients are divided by 4)\n var a = 1.0 * x1 * x1 - 4 * x1 * x2 + 2 * x1 * x3 + 4 * x2 * x2 - 4 * x2 * x3 + x3 * x3 + y1 * y1 - 4 * y1 * y2 + 2 * y1 * y3 + 4 * y2 * y2 - 4 * y2 * y3 + y3 * y3;\n var b = 1.0 * 9 * x1 * x2 - 3 * x1 * x1 - 3 * x1 * x3 - 6 * x2 * x2 + 3 * x2 * x3 + 9 * y1 * y2 - 3 * y1 * y1 - 3 * y1 * y3 - 6 * y2 * y2 + 3 * y2 * y3;\n var c = 1.0 * 3 * x1 * x1 - 6 * x1 * x2 + x1 * x3 - x1 * x + 2 * x2 * x2 + 2 * x2 * x - x3 * x + 3 * y1 * y1 - 6 * y1 * y2 + y1 * y3 - y1 * y + 2 * y2 * y2 + 2 * y2 * y - y3 * y;\n var d = 1.0 * x1 * x2 - x1 * x1 + x1 * x - x2 * x + y1 * y2 - y1 * y1 + y1 * y - y2 * y; // debug(\"coefficients: \" + a / a + \", \" + b / a + \", \" + c / a + \", \" + d / a);\n\n var roots = []; // Use the cubic solving algorithm\n\n solveCubic(a, b, c, d, roots);\n var zeroThreshold = 0.0000001;\n var params = [];\n\n for (var index = 0; index < 6; index += 2) {\n if (Math.abs(roots[index + 1]) < zeroThreshold && roots[index] >= 0 && roots[index] <= 1.0) {\n params.push(roots[index]);\n }\n }\n\n params.push(1.0);\n params.push(0.0);\n var minDistanceSquared = -1;\n var curX, curY, distSquared;\n\n for (var i = 0; i < params.length; i++) {\n curX = Math.pow(1.0 - params[i], 2.0) * x1 + 2.0 * (1 - params[i]) * params[i] * x2 + params[i] * params[i] * x3;\n curY = Math.pow(1 - params[i], 2.0) * y1 + 2 * (1.0 - params[i]) * params[i] * y2 + params[i] * params[i] * y3;\n distSquared = Math.pow(curX - x, 2) + Math.pow(curY - y, 2); // debug('distance for param ' + params[i] + \": \" + Math.sqrt(distSquared));\n\n if (minDistanceSquared >= 0) {\n if (distSquared < minDistanceSquared) {\n minDistanceSquared = distSquared;\n }\n } else {\n minDistanceSquared = distSquared;\n }\n }\n\n return minDistanceSquared;\n};\nvar sqdistToFiniteLine = function sqdistToFiniteLine(x, y, x1, y1, x2, y2) {\n var offset = [x - x1, y - y1];\n var line = [x2 - x1, y2 - y1];\n var lineSq = line[0] * line[0] + line[1] * line[1];\n var hypSq = offset[0] * offset[0] + offset[1] * offset[1];\n var dotProduct = offset[0] * line[0] + offset[1] * line[1];\n var adjSq = dotProduct * dotProduct / lineSq;\n\n if (dotProduct < 0) {\n return hypSq;\n }\n\n if (adjSq > lineSq) {\n return (x - x2) * (x - x2) + (y - y2) * (y - y2);\n }\n\n return hypSq - adjSq;\n};\nvar pointInsidePolygonPoints = function pointInsidePolygonPoints(x, y, points) {\n var x1, y1, x2, y2;\n var y3; // Intersect with vertical line through (x, y)\n\n var up = 0; // let down = 0;\n\n for (var i = 0; i < points.length / 2; i++) {\n x1 = points[i * 2];\n y1 = points[i * 2 + 1];\n\n if (i + 1 < points.length / 2) {\n x2 = points[(i + 1) * 2];\n y2 = points[(i + 1) * 2 + 1];\n } else {\n x2 = points[(i + 1 - points.length / 2) * 2];\n y2 = points[(i + 1 - points.length / 2) * 2 + 1];\n }\n\n if (x1 == x && x2 == x) ; else if (x1 >= x && x >= x2 || x1 <= x && x <= x2) {\n y3 = (x - x1) / (x2 - x1) * (y2 - y1) + y1;\n\n if (y3 > y) {\n up++;\n } // if( y3 < y ){\n // down++;\n // }\n\n } else {\n continue;\n }\n }\n\n if (up % 2 === 0) {\n return false;\n } else {\n return true;\n }\n};\nvar pointInsidePolygon = function pointInsidePolygon(x, y, basePoints, centerX, centerY, width, height, direction, padding) {\n var transformedPoints = new Array(basePoints.length); // Gives negative angle\n\n var angle;\n\n if (direction[0] != null) {\n angle = Math.atan(direction[1] / direction[0]);\n\n if (direction[0] < 0) {\n angle = angle + Math.PI / 2;\n } else {\n angle = -angle - Math.PI / 2;\n }\n } else {\n angle = direction;\n }\n\n var cos = Math.cos(-angle);\n var sin = Math.sin(-angle); // console.log(\"base: \" + basePoints);\n\n for (var i = 0; i < transformedPoints.length / 2; i++) {\n transformedPoints[i * 2] = width / 2 * (basePoints[i * 2] * cos - basePoints[i * 2 + 1] * sin);\n transformedPoints[i * 2 + 1] = height / 2 * (basePoints[i * 2 + 1] * cos + basePoints[i * 2] * sin);\n transformedPoints[i * 2] += centerX;\n transformedPoints[i * 2 + 1] += centerY;\n }\n\n var points;\n\n if (padding > 0) {\n var expandedLineSet = expandPolygon(transformedPoints, -padding);\n points = joinLines(expandedLineSet);\n } else {\n points = transformedPoints;\n }\n\n return pointInsidePolygonPoints(x, y, points);\n};\nvar pointInsideRoundPolygon = function pointInsideRoundPolygon(x, y, basePoints, centerX, centerY, width, height) {\n var cutPolygonPoints = new Array(basePoints.length);\n var halfW = width / 2;\n var halfH = height / 2;\n var cornerRadius = getRoundPolygonRadius(width, height);\n var squaredCornerRadius = cornerRadius * cornerRadius;\n\n for (var i = 0; i < basePoints.length / 4; i++) {\n var sourceUv = void 0,\n destUv = void 0;\n\n if (i === 0) {\n sourceUv = basePoints.length - 2;\n } else {\n sourceUv = i * 4 - 2;\n }\n\n destUv = i * 4 + 2;\n var px = centerX + halfW * basePoints[i * 4];\n var py = centerY + halfH * basePoints[i * 4 + 1];\n var cosTheta = -basePoints[sourceUv] * basePoints[destUv] - basePoints[sourceUv + 1] * basePoints[destUv + 1];\n var offset = cornerRadius / Math.tan(Math.acos(cosTheta) / 2);\n var cp0x = px - offset * basePoints[sourceUv];\n var cp0y = py - offset * basePoints[sourceUv + 1];\n var cp1x = px + offset * basePoints[destUv];\n var cp1y = py + offset * basePoints[destUv + 1];\n cutPolygonPoints[i * 4] = cp0x;\n cutPolygonPoints[i * 4 + 1] = cp0y;\n cutPolygonPoints[i * 4 + 2] = cp1x;\n cutPolygonPoints[i * 4 + 3] = cp1y;\n var orthx = basePoints[sourceUv + 1];\n var orthy = -basePoints[sourceUv];\n var cosAlpha = orthx * basePoints[destUv] + orthy * basePoints[destUv + 1];\n\n if (cosAlpha < 0) {\n orthx *= -1;\n orthy *= -1;\n }\n\n var cx = cp0x + orthx * cornerRadius;\n var cy = cp0y + orthy * cornerRadius;\n var squaredDistance = Math.pow(cx - x, 2) + Math.pow(cy - y, 2);\n\n if (squaredDistance <= squaredCornerRadius) {\n return true;\n }\n }\n\n return pointInsidePolygonPoints(x, y, cutPolygonPoints);\n};\nvar joinLines = function joinLines(lineSet) {\n var vertices = new Array(lineSet.length / 2);\n var currentLineStartX, currentLineStartY, currentLineEndX, currentLineEndY;\n var nextLineStartX, nextLineStartY, nextLineEndX, nextLineEndY;\n\n for (var i = 0; i < lineSet.length / 4; i++) {\n currentLineStartX = lineSet[i * 4];\n currentLineStartY = lineSet[i * 4 + 1];\n currentLineEndX = lineSet[i * 4 + 2];\n currentLineEndY = lineSet[i * 4 + 3];\n\n if (i < lineSet.length / 4 - 1) {\n nextLineStartX = lineSet[(i + 1) * 4];\n nextLineStartY = lineSet[(i + 1) * 4 + 1];\n nextLineEndX = lineSet[(i + 1) * 4 + 2];\n nextLineEndY = lineSet[(i + 1) * 4 + 3];\n } else {\n nextLineStartX = lineSet[0];\n nextLineStartY = lineSet[1];\n nextLineEndX = lineSet[2];\n nextLineEndY = lineSet[3];\n }\n\n var intersection = finiteLinesIntersect(currentLineStartX, currentLineStartY, currentLineEndX, currentLineEndY, nextLineStartX, nextLineStartY, nextLineEndX, nextLineEndY, true);\n vertices[i * 2] = intersection[0];\n vertices[i * 2 + 1] = intersection[1];\n }\n\n return vertices;\n};\nvar expandPolygon = function expandPolygon(points, pad) {\n var expandedLineSet = new Array(points.length * 2);\n var currentPointX, currentPointY, nextPointX, nextPointY;\n\n for (var i = 0; i < points.length / 2; i++) {\n currentPointX = points[i * 2];\n currentPointY = points[i * 2 + 1];\n\n if (i < points.length / 2 - 1) {\n nextPointX = points[(i + 1) * 2];\n nextPointY = points[(i + 1) * 2 + 1];\n } else {\n nextPointX = points[0];\n nextPointY = points[1];\n } // Current line: [currentPointX, currentPointY] to [nextPointX, nextPointY]\n // Assume CCW polygon winding\n\n\n var offsetX = nextPointY - currentPointY;\n var offsetY = -(nextPointX - currentPointX); // Normalize\n\n var offsetLength = Math.sqrt(offsetX * offsetX + offsetY * offsetY);\n var normalizedOffsetX = offsetX / offsetLength;\n var normalizedOffsetY = offsetY / offsetLength;\n expandedLineSet[i * 4] = currentPointX + normalizedOffsetX * pad;\n expandedLineSet[i * 4 + 1] = currentPointY + normalizedOffsetY * pad;\n expandedLineSet[i * 4 + 2] = nextPointX + normalizedOffsetX * pad;\n expandedLineSet[i * 4 + 3] = nextPointY + normalizedOffsetY * pad;\n }\n\n return expandedLineSet;\n};\nvar intersectLineEllipse = function intersectLineEllipse(x, y, centerX, centerY, ellipseWradius, ellipseHradius) {\n var dispX = centerX - x;\n var dispY = centerY - y;\n dispX /= ellipseWradius;\n dispY /= ellipseHradius;\n var len = Math.sqrt(dispX * dispX + dispY * dispY);\n var newLength = len - 1;\n\n if (newLength < 0) {\n return [];\n }\n\n var lenProportion = newLength / len;\n return [(centerX - x) * lenProportion + x, (centerY - y) * lenProportion + y];\n};\nvar checkInEllipse = function checkInEllipse(x, y, width, height, centerX, centerY, padding) {\n x -= centerX;\n y -= centerY;\n x /= width / 2 + padding;\n y /= height / 2 + padding;\n return x * x + y * y <= 1;\n}; // Returns intersections of increasing distance from line's start point\n\nvar intersectLineCircle = function intersectLineCircle(x1, y1, x2, y2, centerX, centerY, radius) {\n // Calculate d, direction vector of line\n var d = [x2 - x1, y2 - y1]; // Direction vector of line\n\n var f = [x1 - centerX, y1 - centerY];\n var a = d[0] * d[0] + d[1] * d[1];\n var b = 2 * (f[0] * d[0] + f[1] * d[1]);\n var c = f[0] * f[0] + f[1] * f[1] - radius * radius;\n var discriminant = b * b - 4 * a * c;\n\n if (discriminant < 0) {\n return [];\n }\n\n var t1 = (-b + Math.sqrt(discriminant)) / (2 * a);\n var t2 = (-b - Math.sqrt(discriminant)) / (2 * a);\n var tMin = Math.min(t1, t2);\n var tMax = Math.max(t1, t2);\n var inRangeParams = [];\n\n if (tMin >= 0 && tMin <= 1) {\n inRangeParams.push(tMin);\n }\n\n if (tMax >= 0 && tMax <= 1) {\n inRangeParams.push(tMax);\n }\n\n if (inRangeParams.length === 0) {\n return [];\n }\n\n var nearIntersectionX = inRangeParams[0] * d[0] + x1;\n var nearIntersectionY = inRangeParams[0] * d[1] + y1;\n\n if (inRangeParams.length > 1) {\n if (inRangeParams[0] == inRangeParams[1]) {\n return [nearIntersectionX, nearIntersectionY];\n } else {\n var farIntersectionX = inRangeParams[1] * d[0] + x1;\n var farIntersectionY = inRangeParams[1] * d[1] + y1;\n return [nearIntersectionX, nearIntersectionY, farIntersectionX, farIntersectionY];\n }\n } else {\n return [nearIntersectionX, nearIntersectionY];\n }\n};\nvar midOfThree = function midOfThree(a, b, c) {\n if (b <= a && a <= c || c <= a && a <= b) {\n return a;\n } else if (a <= b && b <= c || c <= b && b <= a) {\n return b;\n } else {\n return c;\n }\n}; // (x1,y1)=>(x2,y2) intersect with (x3,y3)=>(x4,y4)\n\nvar finiteLinesIntersect = function finiteLinesIntersect(x1, y1, x2, y2, x3, y3, x4, y4, infiniteLines) {\n var dx13 = x1 - x3;\n var dx21 = x2 - x1;\n var dx43 = x4 - x3;\n var dy13 = y1 - y3;\n var dy21 = y2 - y1;\n var dy43 = y4 - y3;\n var ua_t = dx43 * dy13 - dy43 * dx13;\n var ub_t = dx21 * dy13 - dy21 * dx13;\n var u_b = dy43 * dx21 - dx43 * dy21;\n\n if (u_b !== 0) {\n var ua = ua_t / u_b;\n var ub = ub_t / u_b;\n var flptThreshold = 0.001;\n\n var _min = 0 - flptThreshold;\n\n var _max = 1 + flptThreshold;\n\n if (_min <= ua && ua <= _max && _min <= ub && ub <= _max) {\n return [x1 + ua * dx21, y1 + ua * dy21];\n } else {\n if (!infiniteLines) {\n return [];\n } else {\n return [x1 + ua * dx21, y1 + ua * dy21];\n }\n }\n } else {\n if (ua_t === 0 || ub_t === 0) {\n // Parallel, coincident lines. Check if overlap\n // Check endpoint of second line\n if (midOfThree(x1, x2, x4) === x4) {\n return [x4, y4];\n } // Check start point of second line\n\n\n if (midOfThree(x1, x2, x3) === x3) {\n return [x3, y3];\n } // Endpoint of first line\n\n\n if (midOfThree(x3, x4, x2) === x2) {\n return [x2, y2];\n }\n\n return [];\n } else {\n // Parallel, non-coincident\n return [];\n }\n }\n}; // math.polygonIntersectLine( x, y, basePoints, centerX, centerY, width, height, padding )\n// intersect a node polygon (pts transformed)\n//\n// math.polygonIntersectLine( x, y, basePoints, centerX, centerY )\n// intersect the points (no transform)\n\nvar polygonIntersectLine = function polygonIntersectLine(x, y, basePoints, centerX, centerY, width, height, padding) {\n var intersections = [];\n var intersection;\n var transformedPoints = new Array(basePoints.length);\n var doTransform = true;\n\n if (width == null) {\n doTransform = false;\n }\n\n var points;\n\n if (doTransform) {\n for (var i = 0; i < transformedPoints.length / 2; i++) {\n transformedPoints[i * 2] = basePoints[i * 2] * width + centerX;\n transformedPoints[i * 2 + 1] = basePoints[i * 2 + 1] * height + centerY;\n }\n\n if (padding > 0) {\n var expandedLineSet = expandPolygon(transformedPoints, -padding);\n points = joinLines(expandedLineSet);\n } else {\n points = transformedPoints;\n }\n } else {\n points = basePoints;\n }\n\n var currentX, currentY, nextX, nextY;\n\n for (var _i2 = 0; _i2 < points.length / 2; _i2++) {\n currentX = points[_i2 * 2];\n currentY = points[_i2 * 2 + 1];\n\n if (_i2 < points.length / 2 - 1) {\n nextX = points[(_i2 + 1) * 2];\n nextY = points[(_i2 + 1) * 2 + 1];\n } else {\n nextX = points[0];\n nextY = points[1];\n }\n\n intersection = finiteLinesIntersect(x, y, centerX, centerY, currentX, currentY, nextX, nextY);\n\n if (intersection.length !== 0) {\n intersections.push(intersection[0], intersection[1]);\n }\n }\n\n return intersections;\n};\nvar roundPolygonIntersectLine = function roundPolygonIntersectLine(x, y, basePoints, centerX, centerY, width, height, padding) {\n var intersections = [];\n var intersection;\n var lines = new Array(basePoints.length);\n var halfW = width / 2;\n var halfH = height / 2;\n var cornerRadius = getRoundPolygonRadius(width, height);\n\n for (var i = 0; i < basePoints.length / 4; i++) {\n var sourceUv = void 0,\n destUv = void 0;\n\n if (i === 0) {\n sourceUv = basePoints.length - 2;\n } else {\n sourceUv = i * 4 - 2;\n }\n\n destUv = i * 4 + 2;\n var px = centerX + halfW * basePoints[i * 4];\n var py = centerY + halfH * basePoints[i * 4 + 1];\n var cosTheta = -basePoints[sourceUv] * basePoints[destUv] - basePoints[sourceUv + 1] * basePoints[destUv + 1];\n var offset = cornerRadius / Math.tan(Math.acos(cosTheta) / 2);\n var cp0x = px - offset * basePoints[sourceUv];\n var cp0y = py - offset * basePoints[sourceUv + 1];\n var cp1x = px + offset * basePoints[destUv];\n var cp1y = py + offset * basePoints[destUv + 1];\n\n if (i === 0) {\n lines[basePoints.length - 2] = cp0x;\n lines[basePoints.length - 1] = cp0y;\n } else {\n lines[i * 4 - 2] = cp0x;\n lines[i * 4 - 1] = cp0y;\n }\n\n lines[i * 4] = cp1x;\n lines[i * 4 + 1] = cp1y;\n var orthx = basePoints[sourceUv + 1];\n var orthy = -basePoints[sourceUv];\n var cosAlpha = orthx * basePoints[destUv] + orthy * basePoints[destUv + 1];\n\n if (cosAlpha < 0) {\n orthx *= -1;\n orthy *= -1;\n }\n\n var cx = cp0x + orthx * cornerRadius;\n var cy = cp0y + orthy * cornerRadius;\n intersection = intersectLineCircle(x, y, centerX, centerY, cx, cy, cornerRadius);\n\n if (intersection.length !== 0) {\n intersections.push(intersection[0], intersection[1]);\n }\n }\n\n for (var _i3 = 0; _i3 < lines.length / 4; _i3++) {\n intersection = finiteLinesIntersect(x, y, centerX, centerY, lines[_i3 * 4], lines[_i3 * 4 + 1], lines[_i3 * 4 + 2], lines[_i3 * 4 + 3], false);\n\n if (intersection.length !== 0) {\n intersections.push(intersection[0], intersection[1]);\n }\n }\n\n if (intersections.length > 2) {\n var lowestIntersection = [intersections[0], intersections[1]];\n var lowestSquaredDistance = Math.pow(lowestIntersection[0] - x, 2) + Math.pow(lowestIntersection[1] - y, 2);\n\n for (var _i4 = 1; _i4 < intersections.length / 2; _i4++) {\n var squaredDistance = Math.pow(intersections[_i4 * 2] - x, 2) + Math.pow(intersections[_i4 * 2 + 1] - y, 2);\n\n if (squaredDistance <= lowestSquaredDistance) {\n lowestIntersection[0] = intersections[_i4 * 2];\n lowestIntersection[1] = intersections[_i4 * 2 + 1];\n lowestSquaredDistance = squaredDistance;\n }\n }\n\n return lowestIntersection;\n }\n\n return intersections;\n};\nvar shortenIntersection = function shortenIntersection(intersection, offset, amount) {\n var disp = [intersection[0] - offset[0], intersection[1] - offset[1]];\n var length = Math.sqrt(disp[0] * disp[0] + disp[1] * disp[1]);\n var lenRatio = (length - amount) / length;\n\n if (lenRatio < 0) {\n lenRatio = 0.00001;\n }\n\n return [offset[0] + lenRatio * disp[0], offset[1] + lenRatio * disp[1]];\n};\nvar generateUnitNgonPointsFitToSquare = function generateUnitNgonPointsFitToSquare(sides, rotationRadians) {\n var points = generateUnitNgonPoints(sides, rotationRadians);\n points = fitPolygonToSquare(points);\n return points;\n};\nvar fitPolygonToSquare = function fitPolygonToSquare(points) {\n var x, y;\n var sides = points.length / 2;\n var minX = Infinity,\n minY = Infinity,\n maxX = -Infinity,\n maxY = -Infinity;\n\n for (var i = 0; i < sides; i++) {\n x = points[2 * i];\n y = points[2 * i + 1];\n minX = Math.min(minX, x);\n maxX = Math.max(maxX, x);\n minY = Math.min(minY, y);\n maxY = Math.max(maxY, y);\n } // stretch factors\n\n\n var sx = 2 / (maxX - minX);\n var sy = 2 / (maxY - minY);\n\n for (var _i5 = 0; _i5 < sides; _i5++) {\n x = points[2 * _i5] = points[2 * _i5] * sx;\n y = points[2 * _i5 + 1] = points[2 * _i5 + 1] * sy;\n minX = Math.min(minX, x);\n maxX = Math.max(maxX, x);\n minY = Math.min(minY, y);\n maxY = Math.max(maxY, y);\n }\n\n if (minY < -1) {\n for (var _i6 = 0; _i6 < sides; _i6++) {\n y = points[2 * _i6 + 1] = points[2 * _i6 + 1] + (-1 - minY);\n }\n }\n\n return points;\n};\nvar generateUnitNgonPoints = function generateUnitNgonPoints(sides, rotationRadians) {\n var increment = 1.0 / sides * 2 * Math.PI;\n var startAngle = sides % 2 === 0 ? Math.PI / 2.0 + increment / 2.0 : Math.PI / 2.0;\n startAngle += rotationRadians;\n var points = new Array(sides * 2);\n var currentAngle;\n\n for (var i = 0; i < sides; i++) {\n currentAngle = i * increment + startAngle;\n points[2 * i] = Math.cos(currentAngle); // x\n\n points[2 * i + 1] = Math.sin(-currentAngle); // y\n }\n\n return points;\n}; // Set the default radius, unless half of width or height is smaller than default\n\nvar getRoundRectangleRadius = function getRoundRectangleRadius(width, height) {\n return Math.min(width / 4, height / 4, 8);\n}; // Set the default radius\n\nvar getRoundPolygonRadius = function getRoundPolygonRadius(width, height) {\n return Math.min(width / 10, height / 10, 8);\n};\nvar getCutRectangleCornerLength = function getCutRectangleCornerLength() {\n return 8;\n};\nvar bezierPtsToQuadCoeff = function bezierPtsToQuadCoeff(p0, p1, p2) {\n return [p0 - 2 * p1 + p2, 2 * (p1 - p0), p0];\n}; // get curve width, height, and control point position offsets as a percentage of node height / width\n\nvar getBarrelCurveConstants = function getBarrelCurveConstants(width, height) {\n return {\n heightOffset: Math.min(15, 0.05 * height),\n widthOffset: Math.min(100, 0.25 * width),\n ctrlPtOffsetPct: 0.05\n };\n};\n\nvar pageRankDefaults = defaults$g({\n dampingFactor: 0.8,\n precision: 0.000001,\n iterations: 200,\n weight: function weight(edge) {\n return 1;\n }\n});\nvar elesfn$o = {\n pageRank: function pageRank(options) {\n var _pageRankDefaults = pageRankDefaults(options),\n dampingFactor = _pageRankDefaults.dampingFactor,\n precision = _pageRankDefaults.precision,\n iterations = _pageRankDefaults.iterations,\n weight = _pageRankDefaults.weight;\n\n var cy = this._private.cy;\n\n var _this$byGroup = this.byGroup(),\n nodes = _this$byGroup.nodes,\n edges = _this$byGroup.edges;\n\n var numNodes = nodes.length;\n var numNodesSqd = numNodes * numNodes;\n var numEdges = edges.length; // Construct transposed adjacency matrix\n // First lets have a zeroed matrix of the right size\n // We'll also keep track of the sum of each column\n\n var matrix = new Array(numNodesSqd);\n var columnSum = new Array(numNodes);\n var additionalProb = (1 - dampingFactor) / numNodes; // Create null matrix\n\n for (var i = 0; i < numNodes; i++) {\n for (var j = 0; j < numNodes; j++) {\n var n = i * numNodes + j;\n matrix[n] = 0;\n }\n\n columnSum[i] = 0;\n } // Now, process edges\n\n\n for (var _i = 0; _i < numEdges; _i++) {\n var edge = edges[_i];\n var srcId = edge.data('source');\n var tgtId = edge.data('target'); // Don't include loops in the matrix\n\n if (srcId === tgtId) {\n continue;\n }\n\n var s = nodes.indexOfId(srcId);\n var t = nodes.indexOfId(tgtId);\n var w = weight(edge);\n\n var _n = t * numNodes + s; // Update matrix\n\n\n matrix[_n] += w; // Update column sum\n\n columnSum[s] += w;\n } // Add additional probability based on damping factor\n // Also, take into account columns that have sum = 0\n\n\n var p = 1.0 / numNodes + additionalProb; // Shorthand\n // Traverse matrix, column by column\n\n for (var _j = 0; _j < numNodes; _j++) {\n if (columnSum[_j] === 0) {\n // No 'links' out from node jth, assume equal probability for each possible node\n for (var _i2 = 0; _i2 < numNodes; _i2++) {\n var _n2 = _i2 * numNodes + _j;\n\n matrix[_n2] = p;\n }\n } else {\n // Node jth has outgoing link, compute normalized probabilities\n for (var _i3 = 0; _i3 < numNodes; _i3++) {\n var _n3 = _i3 * numNodes + _j;\n\n matrix[_n3] = matrix[_n3] / columnSum[_j] + additionalProb;\n }\n }\n } // Compute dominant eigenvector using power method\n\n\n var eigenvector = new Array(numNodes);\n var temp = new Array(numNodes);\n var previous; // Start with a vector of all 1's\n // Also, initialize a null vector which will be used as shorthand\n\n for (var _i4 = 0; _i4 < numNodes; _i4++) {\n eigenvector[_i4] = 1;\n }\n\n for (var iter = 0; iter < iterations; iter++) {\n // Temp array with all 0's\n for (var _i5 = 0; _i5 < numNodes; _i5++) {\n temp[_i5] = 0;\n } // Multiply matrix with previous result\n\n\n for (var _i6 = 0; _i6 < numNodes; _i6++) {\n for (var _j2 = 0; _j2 < numNodes; _j2++) {\n var _n4 = _i6 * numNodes + _j2;\n\n temp[_i6] += matrix[_n4] * eigenvector[_j2];\n }\n }\n\n inPlaceSumNormalize(temp);\n previous = eigenvector;\n eigenvector = temp;\n temp = previous;\n var diff = 0; // Compute difference (squared module) of both vectors\n\n for (var _i7 = 0; _i7 < numNodes; _i7++) {\n var delta = previous[_i7] - eigenvector[_i7];\n diff += delta * delta;\n } // If difference is less than the desired threshold, stop iterating\n\n\n if (diff < precision) {\n break;\n }\n } // Construct result\n\n\n var res = {\n rank: function rank(node) {\n node = cy.collection(node)[0];\n return eigenvector[nodes.indexOf(node)];\n }\n };\n return res;\n } // pageRank\n\n}; // elesfn\n\nvar defaults$f = defaults$g({\n root: null,\n weight: function weight(edge) {\n return 1;\n },\n directed: false,\n alpha: 0\n});\nvar elesfn$n = {\n degreeCentralityNormalized: function degreeCentralityNormalized(options) {\n options = defaults$f(options);\n var cy = this.cy();\n var nodes = this.nodes();\n var numNodes = nodes.length;\n\n if (!options.directed) {\n var degrees = {};\n var maxDegree = 0;\n\n for (var i = 0; i < numNodes; i++) {\n var node = nodes[i]; // add current node to the current options object and call degreeCentrality\n\n options.root = node;\n var currDegree = this.degreeCentrality(options);\n\n if (maxDegree < currDegree.degree) {\n maxDegree = currDegree.degree;\n }\n\n degrees[node.id()] = currDegree.degree;\n }\n\n return {\n degree: function degree(node) {\n if (maxDegree === 0) {\n return 0;\n }\n\n if (string(node)) {\n // from is a selector string\n node = cy.filter(node);\n }\n\n return degrees[node.id()] / maxDegree;\n }\n };\n } else {\n var indegrees = {};\n var outdegrees = {};\n var maxIndegree = 0;\n var maxOutdegree = 0;\n\n for (var _i = 0; _i < numNodes; _i++) {\n var _node = nodes[_i];\n\n var id = _node.id(); // add current node to the current options object and call degreeCentrality\n\n\n options.root = _node;\n\n var _currDegree = this.degreeCentrality(options);\n\n if (maxIndegree < _currDegree.indegree) maxIndegree = _currDegree.indegree;\n if (maxOutdegree < _currDegree.outdegree) maxOutdegree = _currDegree.outdegree;\n indegrees[id] = _currDegree.indegree;\n outdegrees[id] = _currDegree.outdegree;\n }\n\n return {\n indegree: function indegree(node) {\n if (maxIndegree == 0) {\n return 0;\n }\n\n if (string(node)) {\n // from is a selector string\n node = cy.filter(node);\n }\n\n return indegrees[node.id()] / maxIndegree;\n },\n outdegree: function outdegree(node) {\n if (maxOutdegree === 0) {\n return 0;\n }\n\n if (string(node)) {\n // from is a selector string\n node = cy.filter(node);\n }\n\n return outdegrees[node.id()] / maxOutdegree;\n }\n };\n }\n },\n // degreeCentralityNormalized\n // Implemented from the algorithm in Opsahl's paper\n // \"Node centrality in weighted networks: Generalizing degree and shortest paths\"\n // check the heading 2 \"Degree\"\n degreeCentrality: function degreeCentrality(options) {\n options = defaults$f(options);\n var cy = this.cy();\n var callingEles = this;\n var _options = options,\n root = _options.root,\n weight = _options.weight,\n directed = _options.directed,\n alpha = _options.alpha;\n root = cy.collection(root)[0];\n\n if (!directed) {\n var connEdges = root.connectedEdges().intersection(callingEles);\n var k = connEdges.length;\n var s = 0; // Now, sum edge weights\n\n for (var i = 0; i < connEdges.length; i++) {\n s += weight(connEdges[i]);\n }\n\n return {\n degree: Math.pow(k, 1 - alpha) * Math.pow(s, alpha)\n };\n } else {\n var edges = root.connectedEdges();\n var incoming = edges.filter(function (edge) {\n return edge.target().same(root) && callingEles.has(edge);\n });\n var outgoing = edges.filter(function (edge) {\n return edge.source().same(root) && callingEles.has(edge);\n });\n var k_in = incoming.length;\n var k_out = outgoing.length;\n var s_in = 0;\n var s_out = 0; // Now, sum incoming edge weights\n\n for (var _i2 = 0; _i2 < incoming.length; _i2++) {\n s_in += weight(incoming[_i2]);\n } // Now, sum outgoing edge weights\n\n\n for (var _i3 = 0; _i3 < outgoing.length; _i3++) {\n s_out += weight(outgoing[_i3]);\n }\n\n return {\n indegree: Math.pow(k_in, 1 - alpha) * Math.pow(s_in, alpha),\n outdegree: Math.pow(k_out, 1 - alpha) * Math.pow(s_out, alpha)\n };\n }\n } // degreeCentrality\n\n}; // elesfn\n// nice, short mathematical alias\n\nelesfn$n.dc = elesfn$n.degreeCentrality;\nelesfn$n.dcn = elesfn$n.degreeCentralityNormalised = elesfn$n.degreeCentralityNormalized;\n\nvar defaults$e = defaults$g({\n harmonic: true,\n weight: function weight() {\n return 1;\n },\n directed: false,\n root: null\n});\nvar elesfn$m = {\n closenessCentralityNormalized: function closenessCentralityNormalized(options) {\n var _defaults = defaults$e(options),\n harmonic = _defaults.harmonic,\n weight = _defaults.weight,\n directed = _defaults.directed;\n\n var cy = this.cy();\n var closenesses = {};\n var maxCloseness = 0;\n var nodes = this.nodes();\n var fw = this.floydWarshall({\n weight: weight,\n directed: directed\n }); // Compute closeness for every node and find the maximum closeness\n\n for (var i = 0; i < nodes.length; i++) {\n var currCloseness = 0;\n var node_i = nodes[i];\n\n for (var j = 0; j < nodes.length; j++) {\n if (i !== j) {\n var d = fw.distance(node_i, nodes[j]);\n\n if (harmonic) {\n currCloseness += 1 / d;\n } else {\n currCloseness += d;\n }\n }\n }\n\n if (!harmonic) {\n currCloseness = 1 / currCloseness;\n }\n\n if (maxCloseness < currCloseness) {\n maxCloseness = currCloseness;\n }\n\n closenesses[node_i.id()] = currCloseness;\n }\n\n return {\n closeness: function closeness(node) {\n if (maxCloseness == 0) {\n return 0;\n }\n\n if (string(node)) {\n // from is a selector string\n node = cy.filter(node)[0].id();\n } else {\n // from is a node\n node = node.id();\n }\n\n return closenesses[node] / maxCloseness;\n }\n };\n },\n // Implemented from pseudocode from wikipedia\n closenessCentrality: function closenessCentrality(options) {\n var _defaults2 = defaults$e(options),\n root = _defaults2.root,\n weight = _defaults2.weight,\n directed = _defaults2.directed,\n harmonic = _defaults2.harmonic;\n\n root = this.filter(root)[0]; // we need distance from this node to every other node\n\n var dijkstra = this.dijkstra({\n root: root,\n weight: weight,\n directed: directed\n });\n var totalDistance = 0;\n var nodes = this.nodes();\n\n for (var i = 0; i < nodes.length; i++) {\n var n = nodes[i];\n\n if (!n.same(root)) {\n var d = dijkstra.distanceTo(n);\n\n if (harmonic) {\n totalDistance += 1 / d;\n } else {\n totalDistance += d;\n }\n }\n }\n\n return harmonic ? totalDistance : 1 / totalDistance;\n } // closenessCentrality\n\n}; // elesfn\n// nice, short mathematical alias\n\nelesfn$m.cc = elesfn$m.closenessCentrality;\nelesfn$m.ccn = elesfn$m.closenessCentralityNormalised = elesfn$m.closenessCentralityNormalized;\n\nvar defaults$d = defaults$g({\n weight: null,\n directed: false\n});\nvar elesfn$l = {\n // Implemented from the algorithm in the paper \"On Variants of Shortest-Path Betweenness Centrality and their Generic Computation\" by Ulrik Brandes\n betweennessCentrality: function betweennessCentrality(options) {\n var _defaults = defaults$d(options),\n directed = _defaults.directed,\n weight = _defaults.weight;\n\n var weighted = weight != null;\n var cy = this.cy(); // starting\n\n var V = this.nodes();\n var A = {};\n var _C = {};\n var max = 0;\n var C = {\n set: function set(key, val) {\n _C[key] = val;\n\n if (val > max) {\n max = val;\n }\n },\n get: function get(key) {\n return _C[key];\n }\n }; // A contains the neighborhoods of every node\n\n for (var i = 0; i < V.length; i++) {\n var v = V[i];\n var vid = v.id();\n\n if (directed) {\n A[vid] = v.outgoers().nodes(); // get outgoers of every node\n } else {\n A[vid] = v.openNeighborhood().nodes(); // get neighbors of every node\n }\n\n C.set(vid, 0);\n }\n\n var _loop = function _loop(s) {\n var sid = V[s].id();\n var S = []; // stack\n\n var P = {};\n var g = {};\n var d = {};\n var Q = new Heap__default[\"default\"](function (a, b) {\n return d[a] - d[b];\n }); // queue\n // init dictionaries\n\n for (var _i = 0; _i < V.length; _i++) {\n var _vid = V[_i].id();\n\n P[_vid] = [];\n g[_vid] = 0;\n d[_vid] = Infinity;\n }\n\n g[sid] = 1; // sigma\n\n d[sid] = 0; // distance to s\n\n Q.push(sid);\n\n while (!Q.empty()) {\n var _v = Q.pop();\n\n S.push(_v);\n\n if (weighted) {\n for (var j = 0; j < A[_v].length; j++) {\n var w = A[_v][j];\n var vEle = cy.getElementById(_v);\n var edge = void 0;\n\n if (vEle.edgesTo(w).length > 0) {\n edge = vEle.edgesTo(w)[0];\n } else {\n edge = w.edgesTo(vEle)[0];\n }\n\n var edgeWeight = weight(edge);\n w = w.id();\n\n if (d[w] > d[_v] + edgeWeight) {\n d[w] = d[_v] + edgeWeight;\n\n if (Q.nodes.indexOf(w) < 0) {\n //if w is not in Q\n Q.push(w);\n } else {\n // update position if w is in Q\n Q.updateItem(w);\n }\n\n g[w] = 0;\n P[w] = [];\n }\n\n if (d[w] == d[_v] + edgeWeight) {\n g[w] = g[w] + g[_v];\n P[w].push(_v);\n }\n }\n } else {\n for (var _j = 0; _j < A[_v].length; _j++) {\n var _w = A[_v][_j].id();\n\n if (d[_w] == Infinity) {\n Q.push(_w);\n d[_w] = d[_v] + 1;\n }\n\n if (d[_w] == d[_v] + 1) {\n g[_w] = g[_w] + g[_v];\n\n P[_w].push(_v);\n }\n }\n }\n }\n\n var e = {};\n\n for (var _i2 = 0; _i2 < V.length; _i2++) {\n e[V[_i2].id()] = 0;\n }\n\n while (S.length > 0) {\n var _w2 = S.pop();\n\n for (var _j2 = 0; _j2 < P[_w2].length; _j2++) {\n var _v2 = P[_w2][_j2];\n e[_v2] = e[_v2] + g[_v2] / g[_w2] * (1 + e[_w2]);\n }\n\n if (_w2 != V[s].id()) {\n C.set(_w2, C.get(_w2) + e[_w2]);\n }\n }\n };\n\n for (var s = 0; s < V.length; s++) {\n _loop(s);\n }\n\n var ret = {\n betweenness: function betweenness(node) {\n var id = cy.collection(node).id();\n return C.get(id);\n },\n betweennessNormalized: function betweennessNormalized(node) {\n if (max == 0) {\n return 0;\n }\n\n var id = cy.collection(node).id();\n return C.get(id) / max;\n }\n }; // alias\n\n ret.betweennessNormalised = ret.betweennessNormalized;\n return ret;\n } // betweennessCentrality\n\n}; // elesfn\n// nice, short mathematical alias\n\nelesfn$l.bc = elesfn$l.betweennessCentrality;\n\n// Implemented by Zoe Xi @zoexi for GSOC 2016\n/* eslint-disable no-unused-vars */\n\nvar defaults$c = defaults$g({\n expandFactor: 2,\n // affects time of computation and cluster granularity to some extent: M * M\n inflateFactor: 2,\n // affects cluster granularity (the greater the value, the more clusters): M(i,j) / E(j)\n multFactor: 1,\n // optional self loops for each node. Use a neutral value to improve cluster computations.\n maxIterations: 20,\n // maximum number of iterations of the MCL algorithm in a single run\n attributes: [// attributes/features used to group nodes, ie. similarity values between nodes\n function (edge) {\n return 1;\n }]\n});\n/* eslint-enable */\n\nvar setOptions$3 = function setOptions(options) {\n return defaults$c(options);\n};\n/* eslint-enable */\n\n\nvar getSimilarity$1 = function getSimilarity(edge, attributes) {\n var total = 0;\n\n for (var i = 0; i < attributes.length; i++) {\n total += attributes[i](edge);\n }\n\n return total;\n};\n\nvar addLoops = function addLoops(M, n, val) {\n for (var i = 0; i < n; i++) {\n M[i * n + i] = val;\n }\n};\n\nvar normalize = function normalize(M, n) {\n var sum;\n\n for (var col = 0; col < n; col++) {\n sum = 0;\n\n for (var row = 0; row < n; row++) {\n sum += M[row * n + col];\n }\n\n for (var _row = 0; _row < n; _row++) {\n M[_row * n + col] = M[_row * n + col] / sum;\n }\n }\n}; // TODO: blocked matrix multiplication?\n\n\nvar mmult = function mmult(A, B, n) {\n var C = new Array(n * n);\n\n for (var i = 0; i < n; i++) {\n for (var j = 0; j < n; j++) {\n C[i * n + j] = 0;\n }\n\n for (var k = 0; k < n; k++) {\n for (var _j = 0; _j < n; _j++) {\n C[i * n + _j] += A[i * n + k] * B[k * n + _j];\n }\n }\n }\n\n return C;\n};\n\nvar expand = function expand(M, n, expandFactor\n/** power **/\n) {\n var _M = M.slice(0);\n\n for (var p = 1; p < expandFactor; p++) {\n M = mmult(M, _M, n);\n }\n\n return M;\n};\n\nvar inflate = function inflate(M, n, inflateFactor\n/** r **/\n) {\n var _M = new Array(n * n); // M(i,j) ^ inflatePower\n\n\n for (var i = 0; i < n * n; i++) {\n _M[i] = Math.pow(M[i], inflateFactor);\n }\n\n normalize(_M, n);\n return _M;\n};\n\nvar hasConverged = function hasConverged(M, _M, n2, roundFactor) {\n // Check that both matrices have the same elements (i,j)\n for (var i = 0; i < n2; i++) {\n var v1 = Math.round(M[i] * Math.pow(10, roundFactor)) / Math.pow(10, roundFactor); // truncate to 'roundFactor' decimal places\n\n var v2 = Math.round(_M[i] * Math.pow(10, roundFactor)) / Math.pow(10, roundFactor);\n\n if (v1 !== v2) {\n return false;\n }\n }\n\n return true;\n};\n\nvar assign$2 = function assign(M, n, nodes, cy) {\n var clusters = [];\n\n for (var i = 0; i < n; i++) {\n var cluster = [];\n\n for (var j = 0; j < n; j++) {\n // Row-wise attractors and elements that they attract belong in same cluster\n if (Math.round(M[i * n + j] * 1000) / 1000 > 0) {\n cluster.push(nodes[j]);\n }\n }\n\n if (cluster.length !== 0) {\n clusters.push(cy.collection(cluster));\n }\n }\n\n return clusters;\n};\n\nvar isDuplicate = function isDuplicate(c1, c2) {\n for (var i = 0; i < c1.length; i++) {\n if (!c2[i] || c1[i].id() !== c2[i].id()) {\n return false;\n }\n }\n\n return true;\n};\n\nvar removeDuplicates = function removeDuplicates(clusters) {\n for (var i = 0; i < clusters.length; i++) {\n for (var j = 0; j < clusters.length; j++) {\n if (i != j && isDuplicate(clusters[i], clusters[j])) {\n clusters.splice(j, 1);\n }\n }\n }\n\n return clusters;\n};\n\nvar markovClustering = function markovClustering(options) {\n var nodes = this.nodes();\n var edges = this.edges();\n var cy = this.cy(); // Set parameters of algorithm:\n\n var opts = setOptions$3(options); // Map each node to its position in node array\n\n var id2position = {};\n\n for (var i = 0; i < nodes.length; i++) {\n id2position[nodes[i].id()] = i;\n } // Generate stochastic matrix M from input graph G (should be symmetric/undirected)\n\n\n var n = nodes.length,\n n2 = n * n;\n\n var M = new Array(n2),\n _M;\n\n for (var _i = 0; _i < n2; _i++) {\n M[_i] = 0;\n }\n\n for (var e = 0; e < edges.length; e++) {\n var edge = edges[e];\n var _i2 = id2position[edge.source().id()];\n var j = id2position[edge.target().id()];\n var sim = getSimilarity$1(edge, opts.attributes);\n M[_i2 * n + j] += sim; // G should be symmetric and undirected\n\n M[j * n + _i2] += sim;\n } // Begin Markov cluster algorithm\n // Step 1: Add self loops to each node, ie. add multFactor to matrix diagonal\n\n\n addLoops(M, n, opts.multFactor); // Step 2: M = normalize( M );\n\n normalize(M, n);\n var isStillMoving = true;\n var iterations = 0;\n\n while (isStillMoving && iterations < opts.maxIterations) {\n isStillMoving = false; // Step 3:\n\n _M = expand(M, n, opts.expandFactor); // Step 4:\n\n M = inflate(_M, n, opts.inflateFactor); // Step 5: check to see if ~steady state has been reached\n\n if (!hasConverged(M, _M, n2, 4)) {\n isStillMoving = true;\n }\n\n iterations++;\n } // Build clusters from matrix\n\n\n var clusters = assign$2(M, n, nodes, cy); // Remove duplicate clusters due to symmetry of graph and M matrix\n\n clusters = removeDuplicates(clusters);\n return clusters;\n};\n\nvar markovClustering$1 = {\n markovClustering: markovClustering,\n mcl: markovClustering\n};\n\n// Common distance metrics for clustering algorithms\n\nvar identity = function identity(x) {\n return x;\n};\n\nvar absDiff = function absDiff(p, q) {\n return Math.abs(q - p);\n};\n\nvar addAbsDiff = function addAbsDiff(total, p, q) {\n return total + absDiff(p, q);\n};\n\nvar addSquaredDiff = function addSquaredDiff(total, p, q) {\n return total + Math.pow(q - p, 2);\n};\n\nvar sqrt = function sqrt(x) {\n return Math.sqrt(x);\n};\n\nvar maxAbsDiff = function maxAbsDiff(currentMax, p, q) {\n return Math.max(currentMax, absDiff(p, q));\n};\n\nvar getDistance = function getDistance(length, getP, getQ, init, visit) {\n var post = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : identity;\n var ret = init;\n var p, q;\n\n for (var dim = 0; dim < length; dim++) {\n p = getP(dim);\n q = getQ(dim);\n ret = visit(ret, p, q);\n }\n\n return post(ret);\n};\n\nvar distances = {\n euclidean: function euclidean(length, getP, getQ) {\n if (length >= 2) {\n return getDistance(length, getP, getQ, 0, addSquaredDiff, sqrt);\n } else {\n // for single attr case, more efficient to avoid sqrt\n return getDistance(length, getP, getQ, 0, addAbsDiff);\n }\n },\n squaredEuclidean: function squaredEuclidean(length, getP, getQ) {\n return getDistance(length, getP, getQ, 0, addSquaredDiff);\n },\n manhattan: function manhattan(length, getP, getQ) {\n return getDistance(length, getP, getQ, 0, addAbsDiff);\n },\n max: function max(length, getP, getQ) {\n return getDistance(length, getP, getQ, -Infinity, maxAbsDiff);\n }\n}; // in case the user accidentally doesn't use camel case\n\ndistances['squared-euclidean'] = distances['squaredEuclidean'];\ndistances['squaredeuclidean'] = distances['squaredEuclidean'];\nfunction clusteringDistance (method, length, getP, getQ, nodeP, nodeQ) {\n var impl;\n\n if (fn$6(method)) {\n impl = method;\n } else {\n impl = distances[method] || distances.euclidean;\n }\n\n if (length === 0 && fn$6(method)) {\n return impl(nodeP, nodeQ);\n } else {\n return impl(length, getP, getQ, nodeP, nodeQ);\n }\n}\n\nvar defaults$b = defaults$g({\n k: 2,\n m: 2,\n sensitivityThreshold: 0.0001,\n distance: 'euclidean',\n maxIterations: 10,\n attributes: [],\n testMode: false,\n testCentroids: null\n});\n\nvar setOptions$2 = function setOptions(options) {\n return defaults$b(options);\n};\n/* eslint-enable */\n\n\nvar getDist = function getDist(type, node, centroid, attributes, mode) {\n var noNodeP = mode !== 'kMedoids';\n var getP = noNodeP ? function (i) {\n return centroid[i];\n } : function (i) {\n return attributes[i](centroid);\n };\n\n var getQ = function getQ(i) {\n return attributes[i](node);\n };\n\n var nodeP = centroid;\n var nodeQ = node;\n return clusteringDistance(type, attributes.length, getP, getQ, nodeP, nodeQ);\n};\n\nvar randomCentroids = function randomCentroids(nodes, k, attributes) {\n var ndim = attributes.length;\n var min = new Array(ndim);\n var max = new Array(ndim);\n var centroids = new Array(k);\n var centroid = null; // Find min, max values for each attribute dimension\n\n for (var i = 0; i < ndim; i++) {\n min[i] = nodes.min(attributes[i]).value;\n max[i] = nodes.max(attributes[i]).value;\n } // Build k centroids, each represented as an n-dim feature vector\n\n\n for (var c = 0; c < k; c++) {\n centroid = [];\n\n for (var _i = 0; _i < ndim; _i++) {\n centroid[_i] = Math.random() * (max[_i] - min[_i]) + min[_i]; // random initial value\n }\n\n centroids[c] = centroid;\n }\n\n return centroids;\n};\n\nvar classify = function classify(node, centroids, distance, attributes, type) {\n var min = Infinity;\n var index = 0;\n\n for (var i = 0; i < centroids.length; i++) {\n var dist = getDist(distance, node, centroids[i], attributes, type);\n\n if (dist < min) {\n min = dist;\n index = i;\n }\n }\n\n return index;\n};\n\nvar buildCluster = function buildCluster(centroid, nodes, assignment) {\n var cluster = [];\n var node = null;\n\n for (var n = 0; n < nodes.length; n++) {\n node = nodes[n];\n\n if (assignment[node.id()] === centroid) {\n //console.log(\"Node \" + node.id() + \" is associated with medoid #: \" + m);\n cluster.push(node);\n }\n }\n\n return cluster;\n};\n\nvar haveValuesConverged = function haveValuesConverged(v1, v2, sensitivityThreshold) {\n return Math.abs(v2 - v1) <= sensitivityThreshold;\n};\n\nvar haveMatricesConverged = function haveMatricesConverged(v1, v2, sensitivityThreshold) {\n for (var i = 0; i < v1.length; i++) {\n for (var j = 0; j < v1[i].length; j++) {\n var diff = Math.abs(v1[i][j] - v2[i][j]);\n\n if (diff > sensitivityThreshold) {\n return false;\n }\n }\n }\n\n return true;\n};\n\nvar seenBefore = function seenBefore(node, medoids, n) {\n for (var i = 0; i < n; i++) {\n if (node === medoids[i]) return true;\n }\n\n return false;\n};\n\nvar randomMedoids = function randomMedoids(nodes, k) {\n var medoids = new Array(k); // For small data sets, the probability of medoid conflict is greater,\n // so we need to check to see if we've already seen or chose this node before.\n\n if (nodes.length < 50) {\n // Randomly select k medoids from the n nodes\n for (var i = 0; i < k; i++) {\n var node = nodes[Math.floor(Math.random() * nodes.length)]; // If we've already chosen this node to be a medoid, don't choose it again (for small data sets).\n // Instead choose a different random node.\n\n while (seenBefore(node, medoids, i)) {\n node = nodes[Math.floor(Math.random() * nodes.length)];\n }\n\n medoids[i] = node;\n }\n } else {\n // Relatively large data set, so pretty safe to not check and just select random nodes\n for (var _i2 = 0; _i2 < k; _i2++) {\n medoids[_i2] = nodes[Math.floor(Math.random() * nodes.length)];\n }\n }\n\n return medoids;\n};\n\nvar findCost = function findCost(potentialNewMedoid, cluster, attributes) {\n var cost = 0;\n\n for (var n = 0; n < cluster.length; n++) {\n cost += getDist('manhattan', cluster[n], potentialNewMedoid, attributes, 'kMedoids');\n }\n\n return cost;\n};\n\nvar kMeans = function kMeans(options) {\n var cy = this.cy();\n var nodes = this.nodes();\n var node = null; // Set parameters of algorithm: # of clusters, distance metric, etc.\n\n var opts = setOptions$2(options); // Begin k-means algorithm\n\n var clusters = new Array(opts.k);\n var assignment = {};\n var centroids; // Step 1: Initialize centroid positions\n\n if (opts.testMode) {\n if (typeof opts.testCentroids === 'number') {\n // TODO: implement a seeded random number generator.\n opts.testCentroids;\n centroids = randomCentroids(nodes, opts.k, opts.attributes);\n } else if (_typeof(opts.testCentroids) === 'object') {\n centroids = opts.testCentroids;\n } else {\n centroids = randomCentroids(nodes, opts.k, opts.attributes);\n }\n } else {\n centroids = randomCentroids(nodes, opts.k, opts.attributes);\n }\n\n var isStillMoving = true;\n var iterations = 0;\n\n while (isStillMoving && iterations < opts.maxIterations) {\n // Step 2: Assign nodes to the nearest centroid\n for (var n = 0; n < nodes.length; n++) {\n node = nodes[n]; // Determine which cluster this node belongs to: node id => cluster #\n\n assignment[node.id()] = classify(node, centroids, opts.distance, opts.attributes, 'kMeans');\n } // Step 3: For each of the k clusters, update its centroid\n\n\n isStillMoving = false;\n\n for (var c = 0; c < opts.k; c++) {\n // Get all nodes that belong to this cluster\n var cluster = buildCluster(c, nodes, assignment);\n\n if (cluster.length === 0) {\n // If cluster is empty, break out early & move to next cluster\n continue;\n } // Update centroids by calculating avg of all nodes within the cluster.\n\n\n var ndim = opts.attributes.length;\n var centroid = centroids[c]; // [ dim_1, dim_2, dim_3, ... , dim_n ]\n\n var newCentroid = new Array(ndim);\n var sum = new Array(ndim);\n\n for (var d = 0; d < ndim; d++) {\n sum[d] = 0.0;\n\n for (var i = 0; i < cluster.length; i++) {\n node = cluster[i];\n sum[d] += opts.attributes[d](node);\n }\n\n newCentroid[d] = sum[d] / cluster.length; // Check to see if algorithm has converged, i.e. when centroids no longer change\n\n if (!haveValuesConverged(newCentroid[d], centroid[d], opts.sensitivityThreshold)) {\n isStillMoving = true;\n }\n }\n\n centroids[c] = newCentroid;\n clusters[c] = cy.collection(cluster);\n }\n\n iterations++;\n }\n\n return clusters;\n};\n\nvar kMedoids = function kMedoids(options) {\n var cy = this.cy();\n var nodes = this.nodes();\n var node = null;\n var opts = setOptions$2(options); // Begin k-medoids algorithm\n\n var clusters = new Array(opts.k);\n var medoids;\n var assignment = {};\n var curCost;\n var minCosts = new Array(opts.k); // minimum cost configuration for each cluster\n // Step 1: Initialize k medoids\n\n if (opts.testMode) {\n if (typeof opts.testCentroids === 'number') ; else if (_typeof(opts.testCentroids) === 'object') {\n medoids = opts.testCentroids;\n } else {\n medoids = randomMedoids(nodes, opts.k);\n }\n } else {\n medoids = randomMedoids(nodes, opts.k);\n }\n\n var isStillMoving = true;\n var iterations = 0;\n\n while (isStillMoving && iterations < opts.maxIterations) {\n // Step 2: Assign nodes to the nearest medoid\n for (var n = 0; n < nodes.length; n++) {\n node = nodes[n]; // Determine which cluster this node belongs to: node id => cluster #\n\n assignment[node.id()] = classify(node, medoids, opts.distance, opts.attributes, 'kMedoids');\n }\n\n isStillMoving = false; // Step 3: For each medoid m, and for each node assciated with mediod m,\n // select the node with the lowest configuration cost as new medoid.\n\n for (var m = 0; m < medoids.length; m++) {\n // Get all nodes that belong to this medoid\n var cluster = buildCluster(m, nodes, assignment);\n\n if (cluster.length === 0) {\n // If cluster is empty, break out early & move to next cluster\n continue;\n }\n\n minCosts[m] = findCost(medoids[m], cluster, opts.attributes); // original cost\n // Select different medoid if its configuration has the lowest cost\n\n for (var _n = 0; _n < cluster.length; _n++) {\n curCost = findCost(cluster[_n], cluster, opts.attributes);\n\n if (curCost < minCosts[m]) {\n minCosts[m] = curCost;\n medoids[m] = cluster[_n];\n isStillMoving = true;\n }\n }\n\n clusters[m] = cy.collection(cluster);\n }\n\n iterations++;\n }\n\n return clusters;\n};\n\nvar updateCentroids = function updateCentroids(centroids, nodes, U, weight, opts) {\n var numerator, denominator;\n\n for (var n = 0; n < nodes.length; n++) {\n for (var c = 0; c < centroids.length; c++) {\n weight[n][c] = Math.pow(U[n][c], opts.m);\n }\n }\n\n for (var _c = 0; _c < centroids.length; _c++) {\n for (var dim = 0; dim < opts.attributes.length; dim++) {\n numerator = 0;\n denominator = 0;\n\n for (var _n2 = 0; _n2 < nodes.length; _n2++) {\n numerator += weight[_n2][_c] * opts.attributes[dim](nodes[_n2]);\n denominator += weight[_n2][_c];\n }\n\n centroids[_c][dim] = numerator / denominator;\n }\n }\n};\n\nvar updateMembership = function updateMembership(U, _U, centroids, nodes, opts) {\n // Save previous step\n for (var i = 0; i < U.length; i++) {\n _U[i] = U[i].slice();\n }\n\n var sum, numerator, denominator;\n var pow = 2 / (opts.m - 1);\n\n for (var c = 0; c < centroids.length; c++) {\n for (var n = 0; n < nodes.length; n++) {\n sum = 0;\n\n for (var k = 0; k < centroids.length; k++) {\n // against all other centroids\n numerator = getDist(opts.distance, nodes[n], centroids[c], opts.attributes, 'cmeans');\n denominator = getDist(opts.distance, nodes[n], centroids[k], opts.attributes, 'cmeans');\n sum += Math.pow(numerator / denominator, pow);\n }\n\n U[n][c] = 1 / sum;\n }\n }\n};\n\nvar assign$1 = function assign(nodes, U, opts, cy) {\n var clusters = new Array(opts.k);\n\n for (var c = 0; c < clusters.length; c++) {\n clusters[c] = [];\n }\n\n var max;\n var index;\n\n for (var n = 0; n < U.length; n++) {\n // for each node (U is N x C matrix)\n max = -Infinity;\n index = -1; // Determine which cluster the node is most likely to belong in\n\n for (var _c2 = 0; _c2 < U[0].length; _c2++) {\n if (U[n][_c2] > max) {\n max = U[n][_c2];\n index = _c2;\n }\n }\n\n clusters[index].push(nodes[n]);\n } // Turn every array into a collection of nodes\n\n\n for (var _c3 = 0; _c3 < clusters.length; _c3++) {\n clusters[_c3] = cy.collection(clusters[_c3]);\n }\n\n return clusters;\n};\n\nvar fuzzyCMeans = function fuzzyCMeans(options) {\n var cy = this.cy();\n var nodes = this.nodes();\n var opts = setOptions$2(options); // Begin fuzzy c-means algorithm\n\n var clusters;\n var centroids;\n var U;\n\n var _U;\n\n var weight; // Step 1: Initialize letiables.\n\n _U = new Array(nodes.length);\n\n for (var i = 0; i < nodes.length; i++) {\n // N x C matrix\n _U[i] = new Array(opts.k);\n }\n\n U = new Array(nodes.length);\n\n for (var _i3 = 0; _i3 < nodes.length; _i3++) {\n // N x C matrix\n U[_i3] = new Array(opts.k);\n }\n\n for (var _i4 = 0; _i4 < nodes.length; _i4++) {\n var total = 0;\n\n for (var j = 0; j < opts.k; j++) {\n U[_i4][j] = Math.random();\n total += U[_i4][j];\n }\n\n for (var _j = 0; _j < opts.k; _j++) {\n U[_i4][_j] = U[_i4][_j] / total;\n }\n }\n\n centroids = new Array(opts.k);\n\n for (var _i5 = 0; _i5 < opts.k; _i5++) {\n centroids[_i5] = new Array(opts.attributes.length);\n }\n\n weight = new Array(nodes.length);\n\n for (var _i6 = 0; _i6 < nodes.length; _i6++) {\n // N x C matrix\n weight[_i6] = new Array(opts.k);\n } // end init FCM\n\n\n var isStillMoving = true;\n var iterations = 0;\n\n while (isStillMoving && iterations < opts.maxIterations) {\n isStillMoving = false; // Step 2: Calculate the centroids for each step.\n\n updateCentroids(centroids, nodes, U, weight, opts); // Step 3: Update the partition matrix U.\n\n updateMembership(U, _U, centroids, nodes, opts); // Step 4: Check for convergence.\n\n if (!haveMatricesConverged(U, _U, opts.sensitivityThreshold)) {\n isStillMoving = true;\n }\n\n iterations++;\n } // Assign nodes to clusters with highest probability.\n\n\n clusters = assign$1(nodes, U, opts, cy);\n return {\n clusters: clusters,\n degreeOfMembership: U\n };\n};\n\nvar kClustering = {\n kMeans: kMeans,\n kMedoids: kMedoids,\n fuzzyCMeans: fuzzyCMeans,\n fcm: fuzzyCMeans\n};\n\n// Implemented by Zoe Xi @zoexi for GSOC 2016\nvar defaults$a = defaults$g({\n distance: 'euclidean',\n // distance metric to compare nodes\n linkage: 'min',\n // linkage criterion : how to determine the distance between clusters of nodes\n mode: 'threshold',\n // mode:'threshold' => clusters must be threshold distance apart\n threshold: Infinity,\n // the distance threshold\n // mode:'dendrogram' => the nodes are organised as leaves in a tree (siblings are close), merging makes clusters\n addDendrogram: false,\n // whether to add the dendrogram to the graph for viz\n dendrogramDepth: 0,\n // depth at which dendrogram branches are merged into the returned clusters\n attributes: [] // array of attr functions\n\n});\nvar linkageAliases = {\n 'single': 'min',\n 'complete': 'max'\n};\n\nvar setOptions$1 = function setOptions(options) {\n var opts = defaults$a(options);\n var preferredAlias = linkageAliases[opts.linkage];\n\n if (preferredAlias != null) {\n opts.linkage = preferredAlias;\n }\n\n return opts;\n};\n\nvar mergeClosest = function mergeClosest(clusters, index, dists, mins, opts) {\n // Find two closest clusters from cached mins\n var minKey = 0;\n var min = Infinity;\n var dist;\n var attrs = opts.attributes;\n\n var getDist = function getDist(n1, n2) {\n return clusteringDistance(opts.distance, attrs.length, function (i) {\n return attrs[i](n1);\n }, function (i) {\n return attrs[i](n2);\n }, n1, n2);\n };\n\n for (var i = 0; i < clusters.length; i++) {\n var key = clusters[i].key;\n var _dist = dists[key][mins[key]];\n\n if (_dist < min) {\n minKey = key;\n min = _dist;\n }\n }\n\n if (opts.mode === 'threshold' && min >= opts.threshold || opts.mode === 'dendrogram' && clusters.length === 1) {\n return false;\n }\n\n var c1 = index[minKey];\n var c2 = index[mins[minKey]];\n var merged; // Merge two closest clusters\n\n if (opts.mode === 'dendrogram') {\n merged = {\n left: c1,\n right: c2,\n key: c1.key\n };\n } else {\n merged = {\n value: c1.value.concat(c2.value),\n key: c1.key\n };\n }\n\n clusters[c1.index] = merged;\n clusters.splice(c2.index, 1);\n index[c1.key] = merged; // Update distances with new merged cluster\n\n for (var _i = 0; _i < clusters.length; _i++) {\n var cur = clusters[_i];\n\n if (c1.key === cur.key) {\n dist = Infinity;\n } else if (opts.linkage === 'min') {\n dist = dists[c1.key][cur.key];\n\n if (dists[c1.key][cur.key] > dists[c2.key][cur.key]) {\n dist = dists[c2.key][cur.key];\n }\n } else if (opts.linkage === 'max') {\n dist = dists[c1.key][cur.key];\n\n if (dists[c1.key][cur.key] < dists[c2.key][cur.key]) {\n dist = dists[c2.key][cur.key];\n }\n } else if (opts.linkage === 'mean') {\n dist = (dists[c1.key][cur.key] * c1.size + dists[c2.key][cur.key] * c2.size) / (c1.size + c2.size);\n } else {\n if (opts.mode === 'dendrogram') dist = getDist(cur.value, c1.value);else dist = getDist(cur.value[0], c1.value[0]);\n }\n\n dists[c1.key][cur.key] = dists[cur.key][c1.key] = dist; // distance matrix is symmetric\n } // Update cached mins\n\n\n for (var _i2 = 0; _i2 < clusters.length; _i2++) {\n var key1 = clusters[_i2].key;\n\n if (mins[key1] === c1.key || mins[key1] === c2.key) {\n var _min = key1;\n\n for (var j = 0; j < clusters.length; j++) {\n var key2 = clusters[j].key;\n\n if (dists[key1][key2] < dists[key1][_min]) {\n _min = key2;\n }\n }\n\n mins[key1] = _min;\n }\n\n clusters[_i2].index = _i2;\n } // Clean up meta data used for clustering\n\n\n c1.key = c2.key = c1.index = c2.index = null;\n return true;\n};\n\nvar getAllChildren = function getAllChildren(root, arr, cy) {\n if (!root) return;\n\n if (root.value) {\n arr.push(root.value);\n } else {\n if (root.left) getAllChildren(root.left, arr);\n if (root.right) getAllChildren(root.right, arr);\n }\n};\n\nvar buildDendrogram = function buildDendrogram(root, cy) {\n if (!root) return '';\n\n if (root.left && root.right) {\n var leftStr = buildDendrogram(root.left, cy);\n var rightStr = buildDendrogram(root.right, cy);\n var node = cy.add({\n group: 'nodes',\n data: {\n id: leftStr + ',' + rightStr\n }\n });\n cy.add({\n group: 'edges',\n data: {\n source: leftStr,\n target: node.id()\n }\n });\n cy.add({\n group: 'edges',\n data: {\n source: rightStr,\n target: node.id()\n }\n });\n return node.id();\n } else if (root.value) {\n return root.value.id();\n }\n};\n\nvar buildClustersFromTree = function buildClustersFromTree(root, k, cy) {\n if (!root) return [];\n var left = [],\n right = [],\n leaves = [];\n\n if (k === 0) {\n // don't cut tree, simply return all nodes as 1 single cluster\n if (root.left) getAllChildren(root.left, left);\n if (root.right) getAllChildren(root.right, right);\n leaves = left.concat(right);\n return [cy.collection(leaves)];\n } else if (k === 1) {\n // cut at root\n if (root.value) {\n // leaf node\n return [cy.collection(root.value)];\n } else {\n if (root.left) getAllChildren(root.left, left);\n if (root.right) getAllChildren(root.right, right);\n return [cy.collection(left), cy.collection(right)];\n }\n } else {\n if (root.value) {\n return [cy.collection(root.value)];\n } else {\n if (root.left) left = buildClustersFromTree(root.left, k - 1, cy);\n if (root.right) right = buildClustersFromTree(root.right, k - 1, cy);\n return left.concat(right);\n }\n }\n};\n/* eslint-enable */\n\n\nvar hierarchicalClustering = function hierarchicalClustering(options) {\n var cy = this.cy();\n var nodes = this.nodes(); // Set parameters of algorithm: linkage type, distance metric, etc.\n\n var opts = setOptions$1(options);\n var attrs = opts.attributes;\n\n var getDist = function getDist(n1, n2) {\n return clusteringDistance(opts.distance, attrs.length, function (i) {\n return attrs[i](n1);\n }, function (i) {\n return attrs[i](n2);\n }, n1, n2);\n }; // Begin hierarchical algorithm\n\n\n var clusters = [];\n var dists = []; // distances between each pair of clusters\n\n var mins = []; // closest cluster for each cluster\n\n var index = []; // hash of all clusters by key\n // In agglomerative (bottom-up) clustering, each node starts as its own cluster\n\n for (var n = 0; n < nodes.length; n++) {\n var cluster = {\n value: opts.mode === 'dendrogram' ? nodes[n] : [nodes[n]],\n key: n,\n index: n\n };\n clusters[n] = cluster;\n index[n] = cluster;\n dists[n] = [];\n mins[n] = 0;\n } // Calculate the distance between each pair of clusters\n\n\n for (var i = 0; i < clusters.length; i++) {\n for (var j = 0; j <= i; j++) {\n var dist = void 0;\n\n if (opts.mode === 'dendrogram') {\n // modes store cluster values differently\n dist = i === j ? Infinity : getDist(clusters[i].value, clusters[j].value);\n } else {\n dist = i === j ? Infinity : getDist(clusters[i].value[0], clusters[j].value[0]);\n }\n\n dists[i][j] = dist;\n dists[j][i] = dist;\n\n if (dist < dists[i][mins[i]]) {\n mins[i] = j; // Cache mins: closest cluster to cluster i is cluster j\n }\n }\n } // Find the closest pair of clusters and merge them into a single cluster.\n // Update distances between new cluster and each of the old clusters, and loop until threshold reached.\n\n\n var merged = mergeClosest(clusters, index, dists, mins, opts);\n\n while (merged) {\n merged = mergeClosest(clusters, index, dists, mins, opts);\n }\n\n var retClusters; // Dendrogram mode builds the hierarchy and adds intermediary nodes + edges\n // in addition to returning the clusters.\n\n if (opts.mode === 'dendrogram') {\n retClusters = buildClustersFromTree(clusters[0], opts.dendrogramDepth, cy);\n if (opts.addDendrogram) buildDendrogram(clusters[0], cy);\n } else {\n // Regular mode simply returns the clusters\n retClusters = new Array(clusters.length);\n clusters.forEach(function (cluster, i) {\n // Clean up meta data used for clustering\n cluster.key = cluster.index = null;\n retClusters[i] = cy.collection(cluster.value);\n });\n }\n\n return retClusters;\n};\n\nvar hierarchicalClustering$1 = {\n hierarchicalClustering: hierarchicalClustering,\n hca: hierarchicalClustering\n};\n\n// Implemented by Zoe Xi @zoexi for GSOC 2016\nvar defaults$9 = defaults$g({\n distance: 'euclidean',\n // distance metric to compare attributes between two nodes\n preference: 'median',\n // suitability of a data point to serve as an exemplar\n damping: 0.8,\n // damping factor between [0.5, 1)\n maxIterations: 1000,\n // max number of iterations to run\n minIterations: 100,\n // min number of iterations to run in order for clustering to stop\n attributes: [// functions to quantify the similarity between any two points\n // e.g. node => node.data('weight')\n ]\n});\n\nvar setOptions = function setOptions(options) {\n var dmp = options.damping;\n var pref = options.preference;\n\n if (!(0.5 <= dmp && dmp < 1)) {\n error(\"Damping must range on [0.5, 1). Got: \".concat(dmp));\n }\n\n var validPrefs = ['median', 'mean', 'min', 'max'];\n\n if (!(validPrefs.some(function (v) {\n return v === pref;\n }) || number$1(pref))) {\n error(\"Preference must be one of [\".concat(validPrefs.map(function (p) {\n return \"'\".concat(p, \"'\");\n }).join(', '), \"] or a number. Got: \").concat(pref));\n }\n\n return defaults$9(options);\n};\n/* eslint-enable */\n\n\nvar getSimilarity = function getSimilarity(type, n1, n2, attributes) {\n var attr = function attr(n, i) {\n return attributes[i](n);\n }; // nb negative because similarity should have an inverse relationship to distance\n\n\n return -clusteringDistance(type, attributes.length, function (i) {\n return attr(n1, i);\n }, function (i) {\n return attr(n2, i);\n }, n1, n2);\n};\n\nvar getPreference = function getPreference(S, preference) {\n // larger preference = greater # of clusters\n var p = null;\n\n if (preference === 'median') {\n p = median(S);\n } else if (preference === 'mean') {\n p = mean(S);\n } else if (preference === 'min') {\n p = min(S);\n } else if (preference === 'max') {\n p = max(S);\n } else {\n // Custom preference number, as set by user\n p = preference;\n }\n\n return p;\n};\n\nvar findExemplars = function findExemplars(n, R, A) {\n var indices = [];\n\n for (var i = 0; i < n; i++) {\n if (R[i * n + i] + A[i * n + i] > 0) {\n indices.push(i);\n }\n }\n\n return indices;\n};\n\nvar assignClusters = function assignClusters(n, S, exemplars) {\n var clusters = [];\n\n for (var i = 0; i < n; i++) {\n var index = -1;\n var max = -Infinity;\n\n for (var ei = 0; ei < exemplars.length; ei++) {\n var e = exemplars[ei];\n\n if (S[i * n + e] > max) {\n index = e;\n max = S[i * n + e];\n }\n }\n\n if (index > 0) {\n clusters.push(index);\n }\n }\n\n for (var _ei = 0; _ei < exemplars.length; _ei++) {\n clusters[exemplars[_ei]] = exemplars[_ei];\n }\n\n return clusters;\n};\n\nvar assign = function assign(n, S, exemplars) {\n var clusters = assignClusters(n, S, exemplars);\n\n for (var ei = 0; ei < exemplars.length; ei++) {\n var ii = [];\n\n for (var c = 0; c < clusters.length; c++) {\n if (clusters[c] === exemplars[ei]) {\n ii.push(c);\n }\n }\n\n var maxI = -1;\n var maxSum = -Infinity;\n\n for (var i = 0; i < ii.length; i++) {\n var sum = 0;\n\n for (var j = 0; j < ii.length; j++) {\n sum += S[ii[j] * n + ii[i]];\n }\n\n if (sum > maxSum) {\n maxI = i;\n maxSum = sum;\n }\n }\n\n exemplars[ei] = ii[maxI];\n }\n\n clusters = assignClusters(n, S, exemplars);\n return clusters;\n};\n\nvar affinityPropagation = function affinityPropagation(options) {\n var cy = this.cy();\n var nodes = this.nodes();\n var opts = setOptions(options); // Map each node to its position in node array\n\n var id2position = {};\n\n for (var i = 0; i < nodes.length; i++) {\n id2position[nodes[i].id()] = i;\n } // Begin affinity propagation algorithm\n\n\n var n; // number of data points\n\n var n2; // size of matrices\n\n var S; // similarity matrix (1D array)\n\n var p; // preference/suitability of a data point to serve as an exemplar\n\n var R; // responsibility matrix (1D array)\n\n var A; // availability matrix (1D array)\n\n n = nodes.length;\n n2 = n * n; // Initialize and build S similarity matrix\n\n S = new Array(n2);\n\n for (var _i = 0; _i < n2; _i++) {\n S[_i] = -Infinity; // for cases where two data points shouldn't be linked together\n }\n\n for (var _i2 = 0; _i2 < n; _i2++) {\n for (var j = 0; j < n; j++) {\n if (_i2 !== j) {\n S[_i2 * n + j] = getSimilarity(opts.distance, nodes[_i2], nodes[j], opts.attributes);\n }\n }\n } // Place preferences on the diagonal of S\n\n\n p = getPreference(S, opts.preference);\n\n for (var _i3 = 0; _i3 < n; _i3++) {\n S[_i3 * n + _i3] = p;\n } // Initialize R responsibility matrix\n\n\n R = new Array(n2);\n\n for (var _i4 = 0; _i4 < n2; _i4++) {\n R[_i4] = 0.0;\n } // Initialize A availability matrix\n\n\n A = new Array(n2);\n\n for (var _i5 = 0; _i5 < n2; _i5++) {\n A[_i5] = 0.0;\n }\n\n var old = new Array(n);\n var Rp = new Array(n);\n var se = new Array(n);\n\n for (var _i6 = 0; _i6 < n; _i6++) {\n old[_i6] = 0.0;\n Rp[_i6] = 0.0;\n se[_i6] = 0;\n }\n\n var e = new Array(n * opts.minIterations);\n\n for (var _i7 = 0; _i7 < e.length; _i7++) {\n e[_i7] = 0;\n }\n\n var iter;\n\n for (iter = 0; iter < opts.maxIterations; iter++) {\n // main algorithmic loop\n // Update R responsibility matrix\n for (var _i8 = 0; _i8 < n; _i8++) {\n var max = -Infinity,\n max2 = -Infinity,\n maxI = -1,\n AS = 0.0;\n\n for (var _j = 0; _j < n; _j++) {\n old[_j] = R[_i8 * n + _j];\n AS = A[_i8 * n + _j] + S[_i8 * n + _j];\n\n if (AS >= max) {\n max2 = max;\n max = AS;\n maxI = _j;\n } else if (AS > max2) {\n max2 = AS;\n }\n }\n\n for (var _j2 = 0; _j2 < n; _j2++) {\n R[_i8 * n + _j2] = (1 - opts.damping) * (S[_i8 * n + _j2] - max) + opts.damping * old[_j2];\n }\n\n R[_i8 * n + maxI] = (1 - opts.damping) * (S[_i8 * n + maxI] - max2) + opts.damping * old[maxI];\n } // Update A availability matrix\n\n\n for (var _i9 = 0; _i9 < n; _i9++) {\n var sum = 0;\n\n for (var _j3 = 0; _j3 < n; _j3++) {\n old[_j3] = A[_j3 * n + _i9];\n Rp[_j3] = Math.max(0, R[_j3 * n + _i9]);\n sum += Rp[_j3];\n }\n\n sum -= Rp[_i9];\n Rp[_i9] = R[_i9 * n + _i9];\n sum += Rp[_i9];\n\n for (var _j4 = 0; _j4 < n; _j4++) {\n A[_j4 * n + _i9] = (1 - opts.damping) * Math.min(0, sum - Rp[_j4]) + opts.damping * old[_j4];\n }\n\n A[_i9 * n + _i9] = (1 - opts.damping) * (sum - Rp[_i9]) + opts.damping * old[_i9];\n } // Check for convergence\n\n\n var K = 0;\n\n for (var _i10 = 0; _i10 < n; _i10++) {\n var E = A[_i10 * n + _i10] + R[_i10 * n + _i10] > 0 ? 1 : 0;\n e[iter % opts.minIterations * n + _i10] = E;\n K += E;\n }\n\n if (K > 0 && (iter >= opts.minIterations - 1 || iter == opts.maxIterations - 1)) {\n var _sum = 0;\n\n for (var _i11 = 0; _i11 < n; _i11++) {\n se[_i11] = 0;\n\n for (var _j5 = 0; _j5 < opts.minIterations; _j5++) {\n se[_i11] += e[_j5 * n + _i11];\n }\n\n if (se[_i11] === 0 || se[_i11] === opts.minIterations) {\n _sum++;\n }\n }\n\n if (_sum === n) {\n // then we have convergence\n break;\n }\n }\n } // Identify exemplars (cluster centers)\n\n\n var exemplarsIndices = findExemplars(n, R, A); // Assign nodes to clusters\n\n var clusterIndices = assign(n, S, exemplarsIndices);\n var clusters = {};\n\n for (var c = 0; c < exemplarsIndices.length; c++) {\n clusters[exemplarsIndices[c]] = [];\n }\n\n for (var _i12 = 0; _i12 < nodes.length; _i12++) {\n var pos = id2position[nodes[_i12].id()];\n\n var clusterIndex = clusterIndices[pos];\n\n if (clusterIndex != null) {\n // the node may have not been assigned a cluster if no valid attributes were specified\n clusters[clusterIndex].push(nodes[_i12]);\n }\n }\n\n var retClusters = new Array(exemplarsIndices.length);\n\n for (var _c = 0; _c < exemplarsIndices.length; _c++) {\n retClusters[_c] = cy.collection(clusters[exemplarsIndices[_c]]);\n }\n\n return retClusters;\n};\n\nvar affinityPropagation$1 = {\n affinityPropagation: affinityPropagation,\n ap: affinityPropagation\n};\n\nvar hierholzerDefaults = defaults$g({\n root: undefined,\n directed: false\n});\nvar elesfn$k = {\n hierholzer: function hierholzer(options) {\n if (!plainObject(options)) {\n var args = arguments;\n options = {\n root: args[0],\n directed: args[1]\n };\n }\n\n var _hierholzerDefaults = hierholzerDefaults(options),\n root = _hierholzerDefaults.root,\n directed = _hierholzerDefaults.directed;\n\n var eles = this;\n var dflag = false;\n var oddIn;\n var oddOut;\n var startVertex;\n if (root) startVertex = string(root) ? this.filter(root)[0].id() : root[0].id();\n var nodes = {};\n var edges = {};\n\n if (directed) {\n eles.forEach(function (ele) {\n var id = ele.id();\n\n if (ele.isNode()) {\n var ind = ele.indegree(true);\n var outd = ele.outdegree(true);\n var d1 = ind - outd;\n var d2 = outd - ind;\n\n if (d1 == 1) {\n if (oddIn) dflag = true;else oddIn = id;\n } else if (d2 == 1) {\n if (oddOut) dflag = true;else oddOut = id;\n } else if (d2 > 1 || d1 > 1) {\n dflag = true;\n }\n\n nodes[id] = [];\n ele.outgoers().forEach(function (e) {\n if (e.isEdge()) nodes[id].push(e.id());\n });\n } else {\n edges[id] = [undefined, ele.target().id()];\n }\n });\n } else {\n eles.forEach(function (ele) {\n var id = ele.id();\n\n if (ele.isNode()) {\n var d = ele.degree(true);\n\n if (d % 2) {\n if (!oddIn) oddIn = id;else if (!oddOut) oddOut = id;else dflag = true;\n }\n\n nodes[id] = [];\n ele.connectedEdges().forEach(function (e) {\n return nodes[id].push(e.id());\n });\n } else {\n edges[id] = [ele.source().id(), ele.target().id()];\n }\n });\n }\n\n var result = {\n found: false,\n trail: undefined\n };\n if (dflag) return result;else if (oddOut && oddIn) {\n if (directed) {\n if (startVertex && oddOut != startVertex) {\n return result;\n }\n\n startVertex = oddOut;\n } else {\n if (startVertex && oddOut != startVertex && oddIn != startVertex) {\n return result;\n } else if (!startVertex) {\n startVertex = oddOut;\n }\n }\n } else {\n if (!startVertex) startVertex = eles[0].id();\n }\n\n var walk = function walk(v) {\n var currentNode = v;\n var subtour = [v];\n var adj, adjTail, adjHead;\n\n while (nodes[currentNode].length) {\n adj = nodes[currentNode].shift();\n adjTail = edges[adj][0];\n adjHead = edges[adj][1];\n\n if (currentNode != adjHead) {\n nodes[adjHead] = nodes[adjHead].filter(function (e) {\n return e != adj;\n });\n currentNode = adjHead;\n } else if (!directed && currentNode != adjTail) {\n nodes[adjTail] = nodes[adjTail].filter(function (e) {\n return e != adj;\n });\n currentNode = adjTail;\n }\n\n subtour.unshift(adj);\n subtour.unshift(currentNode);\n }\n\n return subtour;\n };\n\n var trail = [];\n var subtour = [];\n subtour = walk(startVertex);\n\n while (subtour.length != 1) {\n if (nodes[subtour[0]].length == 0) {\n trail.unshift(eles.getElementById(subtour.shift()));\n trail.unshift(eles.getElementById(subtour.shift()));\n } else {\n subtour = walk(subtour.shift()).concat(subtour);\n }\n }\n\n trail.unshift(eles.getElementById(subtour.shift())); // final node\n\n for (var d in nodes) {\n if (nodes[d].length) {\n return result;\n }\n }\n\n result.found = true;\n result.trail = this.spawn(trail, true);\n return result;\n }\n};\n\nvar hopcroftTarjanBiconnected = function hopcroftTarjanBiconnected() {\n var eles = this;\n var nodes = {};\n var id = 0;\n var edgeCount = 0;\n var components = [];\n var stack = [];\n var visitedEdges = {};\n\n var buildComponent = function buildComponent(x, y) {\n var i = stack.length - 1;\n var cutset = [];\n var component = eles.spawn();\n\n while (stack[i].x != x || stack[i].y != y) {\n cutset.push(stack.pop().edge);\n i--;\n }\n\n cutset.push(stack.pop().edge);\n cutset.forEach(function (edge) {\n var connectedNodes = edge.connectedNodes().intersection(eles);\n component.merge(edge);\n connectedNodes.forEach(function (node) {\n var nodeId = node.id();\n var connectedEdges = node.connectedEdges().intersection(eles);\n component.merge(node);\n\n if (!nodes[nodeId].cutVertex) {\n component.merge(connectedEdges);\n } else {\n component.merge(connectedEdges.filter(function (edge) {\n return edge.isLoop();\n }));\n }\n });\n });\n components.push(component);\n };\n\n var biconnectedSearch = function biconnectedSearch(root, currentNode, parent) {\n if (root === parent) edgeCount += 1;\n nodes[currentNode] = {\n id: id,\n low: id++,\n cutVertex: false\n };\n var edges = eles.getElementById(currentNode).connectedEdges().intersection(eles);\n\n if (edges.size() === 0) {\n components.push(eles.spawn(eles.getElementById(currentNode)));\n } else {\n var sourceId, targetId, otherNodeId, edgeId;\n edges.forEach(function (edge) {\n sourceId = edge.source().id();\n targetId = edge.target().id();\n otherNodeId = sourceId === currentNode ? targetId : sourceId;\n\n if (otherNodeId !== parent) {\n edgeId = edge.id();\n\n if (!visitedEdges[edgeId]) {\n visitedEdges[edgeId] = true;\n stack.push({\n x: currentNode,\n y: otherNodeId,\n edge: edge\n });\n }\n\n if (!(otherNodeId in nodes)) {\n biconnectedSearch(root, otherNodeId, currentNode);\n nodes[currentNode].low = Math.min(nodes[currentNode].low, nodes[otherNodeId].low);\n\n if (nodes[currentNode].id <= nodes[otherNodeId].low) {\n nodes[currentNode].cutVertex = true;\n buildComponent(currentNode, otherNodeId);\n }\n } else {\n nodes[currentNode].low = Math.min(nodes[currentNode].low, nodes[otherNodeId].id);\n }\n }\n });\n }\n };\n\n eles.forEach(function (ele) {\n if (ele.isNode()) {\n var nodeId = ele.id();\n\n if (!(nodeId in nodes)) {\n edgeCount = 0;\n biconnectedSearch(nodeId, nodeId);\n nodes[nodeId].cutVertex = edgeCount > 1;\n }\n }\n });\n var cutVertices = Object.keys(nodes).filter(function (id) {\n return nodes[id].cutVertex;\n }).map(function (id) {\n return eles.getElementById(id);\n });\n return {\n cut: eles.spawn(cutVertices),\n components: components\n };\n};\n\nvar hopcroftTarjanBiconnected$1 = {\n hopcroftTarjanBiconnected: hopcroftTarjanBiconnected,\n htbc: hopcroftTarjanBiconnected,\n htb: hopcroftTarjanBiconnected,\n hopcroftTarjanBiconnectedComponents: hopcroftTarjanBiconnected\n};\n\nvar tarjanStronglyConnected = function tarjanStronglyConnected() {\n var eles = this;\n var nodes = {};\n var index = 0;\n var components = [];\n var stack = [];\n var cut = eles.spawn(eles);\n\n var stronglyConnectedSearch = function stronglyConnectedSearch(sourceNodeId) {\n stack.push(sourceNodeId);\n nodes[sourceNodeId] = {\n index: index,\n low: index++,\n explored: false\n };\n var connectedEdges = eles.getElementById(sourceNodeId).connectedEdges().intersection(eles);\n connectedEdges.forEach(function (edge) {\n var targetNodeId = edge.target().id();\n\n if (targetNodeId !== sourceNodeId) {\n if (!(targetNodeId in nodes)) {\n stronglyConnectedSearch(targetNodeId);\n }\n\n if (!nodes[targetNodeId].explored) {\n nodes[sourceNodeId].low = Math.min(nodes[sourceNodeId].low, nodes[targetNodeId].low);\n }\n }\n });\n\n if (nodes[sourceNodeId].index === nodes[sourceNodeId].low) {\n var componentNodes = eles.spawn();\n\n for (;;) {\n var nodeId = stack.pop();\n componentNodes.merge(eles.getElementById(nodeId));\n nodes[nodeId].low = nodes[sourceNodeId].index;\n nodes[nodeId].explored = true;\n\n if (nodeId === sourceNodeId) {\n break;\n }\n }\n\n var componentEdges = componentNodes.edgesWith(componentNodes);\n var component = componentNodes.merge(componentEdges);\n components.push(component);\n cut = cut.difference(component);\n }\n };\n\n eles.forEach(function (ele) {\n if (ele.isNode()) {\n var nodeId = ele.id();\n\n if (!(nodeId in nodes)) {\n stronglyConnectedSearch(nodeId);\n }\n }\n });\n return {\n cut: cut,\n components: components\n };\n};\n\nvar tarjanStronglyConnected$1 = {\n tarjanStronglyConnected: tarjanStronglyConnected,\n tsc: tarjanStronglyConnected,\n tscc: tarjanStronglyConnected,\n tarjanStronglyConnectedComponents: tarjanStronglyConnected\n};\n\nvar elesfn$j = {};\n[elesfn$v, elesfn$u, elesfn$t, elesfn$s, elesfn$r, elesfn$q, elesfn$p, elesfn$o, elesfn$n, elesfn$m, elesfn$l, markovClustering$1, kClustering, hierarchicalClustering$1, affinityPropagation$1, elesfn$k, hopcroftTarjanBiconnected$1, tarjanStronglyConnected$1].forEach(function (props) {\n extend(elesfn$j, props);\n});\n\n/*!\nEmbeddable Minimum Strictly-Compliant Promises/A+ 1.1.1 Thenable\nCopyright (c) 2013-2014 Ralf S. Engelschall (http://engelschall.com)\nLicensed under The MIT License (http://opensource.org/licenses/MIT)\n*/\n\n/* promise states [Promises/A+ 2.1] */\nvar STATE_PENDING = 0;\n/* [Promises/A+ 2.1.1] */\n\nvar STATE_FULFILLED = 1;\n/* [Promises/A+ 2.1.2] */\n\nvar STATE_REJECTED = 2;\n/* [Promises/A+ 2.1.3] */\n\n/* promise object constructor */\n\nvar api = function api(executor) {\n /* optionally support non-constructor/plain-function call */\n if (!(this instanceof api)) return new api(executor);\n /* initialize object */\n\n this.id = 'Thenable/1.0.7';\n this.state = STATE_PENDING;\n /* initial state */\n\n this.fulfillValue = undefined;\n /* initial value */\n\n /* [Promises/A+ 1.3, 2.1.2.2] */\n\n this.rejectReason = undefined;\n /* initial reason */\n\n /* [Promises/A+ 1.5, 2.1.3.2] */\n\n this.onFulfilled = [];\n /* initial handlers */\n\n this.onRejected = [];\n /* initial handlers */\n\n /* provide optional information-hiding proxy */\n\n this.proxy = {\n then: this.then.bind(this)\n };\n /* support optional executor function */\n\n if (typeof executor === 'function') executor.call(this, this.fulfill.bind(this), this.reject.bind(this));\n};\n/* promise API methods */\n\n\napi.prototype = {\n /* promise resolving methods */\n fulfill: function fulfill(value) {\n return deliver(this, STATE_FULFILLED, 'fulfillValue', value);\n },\n reject: function reject(value) {\n return deliver(this, STATE_REJECTED, 'rejectReason', value);\n },\n\n /* \"The then Method\" [Promises/A+ 1.1, 1.2, 2.2] */\n then: function then(onFulfilled, onRejected) {\n var curr = this;\n var next = new api();\n /* [Promises/A+ 2.2.7] */\n\n curr.onFulfilled.push(resolver(onFulfilled, next, 'fulfill'));\n /* [Promises/A+ 2.2.2/2.2.6] */\n\n curr.onRejected.push(resolver(onRejected, next, 'reject'));\n /* [Promises/A+ 2.2.3/2.2.6] */\n\n execute(curr);\n return next.proxy;\n /* [Promises/A+ 2.2.7, 3.3] */\n }\n};\n/* deliver an action */\n\nvar deliver = function deliver(curr, state, name, value) {\n if (curr.state === STATE_PENDING) {\n curr.state = state;\n /* [Promises/A+ 2.1.2.1, 2.1.3.1] */\n\n curr[name] = value;\n /* [Promises/A+ 2.1.2.2, 2.1.3.2] */\n\n execute(curr);\n }\n\n return curr;\n};\n/* execute all handlers */\n\n\nvar execute = function execute(curr) {\n if (curr.state === STATE_FULFILLED) execute_handlers(curr, 'onFulfilled', curr.fulfillValue);else if (curr.state === STATE_REJECTED) execute_handlers(curr, 'onRejected', curr.rejectReason);\n};\n/* execute particular set of handlers */\n\n\nvar execute_handlers = function execute_handlers(curr, name, value) {\n /* global setImmediate: true */\n\n /* global setTimeout: true */\n\n /* short-circuit processing */\n if (curr[name].length === 0) return;\n /* iterate over all handlers, exactly once */\n\n var handlers = curr[name];\n curr[name] = [];\n /* [Promises/A+ 2.2.2.3, 2.2.3.3] */\n\n var func = function func() {\n for (var i = 0; i < handlers.length; i++) {\n handlers[i](value);\n }\n /* [Promises/A+ 2.2.5] */\n\n };\n /* execute procedure asynchronously */\n\n /* [Promises/A+ 2.2.4, 3.1] */\n\n\n if (typeof setImmediate === 'function') setImmediate(func);else setTimeout(func, 0);\n};\n/* generate a resolver function */\n\n\nvar resolver = function resolver(cb, next, method) {\n return function (value) {\n if (typeof cb !== 'function')\n /* [Promises/A+ 2.2.1, 2.2.7.3, 2.2.7.4] */\n next[method].call(next, value);\n /* [Promises/A+ 2.2.7.3, 2.2.7.4] */\n else {\n var result;\n\n try {\n result = cb(value);\n }\n /* [Promises/A+ 2.2.2.1, 2.2.3.1, 2.2.5, 3.2] */\n catch (e) {\n next.reject(e);\n /* [Promises/A+ 2.2.7.2] */\n\n return;\n }\n\n resolve(next, result);\n /* [Promises/A+ 2.2.7.1] */\n }\n };\n};\n/* \"Promise Resolution Procedure\" */\n\n/* [Promises/A+ 2.3] */\n\n\nvar resolve = function resolve(promise, x) {\n /* sanity check arguments */\n\n /* [Promises/A+ 2.3.1] */\n if (promise === x || promise.proxy === x) {\n promise.reject(new TypeError('cannot resolve promise with itself'));\n return;\n }\n /* surgically check for a \"then\" method\n (mainly to just call the \"getter\" of \"then\" only once) */\n\n\n var then;\n\n if (_typeof(x) === 'object' && x !== null || typeof x === 'function') {\n try {\n then = x.then;\n }\n /* [Promises/A+ 2.3.3.1, 3.5] */\n catch (e) {\n promise.reject(e);\n /* [Promises/A+ 2.3.3.2] */\n\n return;\n }\n }\n /* handle own Thenables [Promises/A+ 2.3.2]\n and similar \"thenables\" [Promises/A+ 2.3.3] */\n\n\n if (typeof then === 'function') {\n var resolved = false;\n\n try {\n /* call retrieved \"then\" method */\n\n /* [Promises/A+ 2.3.3.3] */\n then.call(x,\n /* resolvePromise */\n\n /* [Promises/A+ 2.3.3.3.1] */\n function (y) {\n if (resolved) return;\n resolved = true;\n /* [Promises/A+ 2.3.3.3.3] */\n\n if (y === x)\n /* [Promises/A+ 3.6] */\n promise.reject(new TypeError('circular thenable chain'));else resolve(promise, y);\n },\n /* rejectPromise */\n\n /* [Promises/A+ 2.3.3.3.2] */\n function (r) {\n if (resolved) return;\n resolved = true;\n /* [Promises/A+ 2.3.3.3.3] */\n\n promise.reject(r);\n });\n } catch (e) {\n if (!resolved)\n /* [Promises/A+ 2.3.3.3.3] */\n promise.reject(e);\n /* [Promises/A+ 2.3.3.3.4] */\n }\n\n return;\n }\n /* handle other values */\n\n\n promise.fulfill(x);\n /* [Promises/A+ 2.3.4, 2.3.3.4] */\n}; // so we always have Promise.all()\n\n\napi.all = function (ps) {\n return new api(function (resolveAll, rejectAll) {\n var vals = new Array(ps.length);\n var doneCount = 0;\n\n var fulfill = function fulfill(i, val) {\n vals[i] = val;\n doneCount++;\n\n if (doneCount === ps.length) {\n resolveAll(vals);\n }\n };\n\n for (var i = 0; i < ps.length; i++) {\n (function (i) {\n var p = ps[i];\n var isPromise = p != null && p.then != null;\n\n if (isPromise) {\n p.then(function (val) {\n fulfill(i, val);\n }, function (err) {\n rejectAll(err);\n });\n } else {\n var val = p;\n fulfill(i, val);\n }\n })(i);\n }\n });\n};\n\napi.resolve = function (val) {\n return new api(function (resolve, reject) {\n resolve(val);\n });\n};\n\napi.reject = function (val) {\n return new api(function (resolve, reject) {\n reject(val);\n });\n};\n\nvar Promise$1 = typeof Promise !== 'undefined' ? Promise : api; // eslint-disable-line no-undef\n\nvar Animation = function Animation(target, opts, opts2) {\n var isCore = core(target);\n var isEle = !isCore;\n\n var _p = this._private = extend({\n duration: 1000\n }, opts, opts2);\n\n _p.target = target;\n _p.style = _p.style || _p.css;\n _p.started = false;\n _p.playing = false;\n _p.hooked = false;\n _p.applying = false;\n _p.progress = 0;\n _p.completes = [];\n _p.frames = [];\n\n if (_p.complete && fn$6(_p.complete)) {\n _p.completes.push(_p.complete);\n }\n\n if (isEle) {\n var pos = target.position();\n _p.startPosition = _p.startPosition || {\n x: pos.x,\n y: pos.y\n };\n _p.startStyle = _p.startStyle || target.cy().style().getAnimationStartStyle(target, _p.style);\n }\n\n if (isCore) {\n var pan = target.pan();\n _p.startPan = {\n x: pan.x,\n y: pan.y\n };\n _p.startZoom = target.zoom();\n } // for future timeline/animations impl\n\n\n this.length = 1;\n this[0] = this;\n};\n\nvar anifn = Animation.prototype;\nextend(anifn, {\n instanceString: function instanceString() {\n return 'animation';\n },\n hook: function hook() {\n var _p = this._private;\n\n if (!_p.hooked) {\n // add to target's animation queue\n var q;\n var tAni = _p.target._private.animation;\n\n if (_p.queue) {\n q = tAni.queue;\n } else {\n q = tAni.current;\n }\n\n q.push(this); // add to the animation loop pool\n\n if (elementOrCollection(_p.target)) {\n _p.target.cy().addToAnimationPool(_p.target);\n }\n\n _p.hooked = true;\n }\n\n return this;\n },\n play: function play() {\n var _p = this._private; // autorewind\n\n if (_p.progress === 1) {\n _p.progress = 0;\n }\n\n _p.playing = true;\n _p.started = false; // needs to be started by animation loop\n\n _p.stopped = false;\n this.hook(); // the animation loop will start the animation...\n\n return this;\n },\n playing: function playing() {\n return this._private.playing;\n },\n apply: function apply() {\n var _p = this._private;\n _p.applying = true;\n _p.started = false; // needs to be started by animation loop\n\n _p.stopped = false;\n this.hook(); // the animation loop will apply the animation at this progress\n\n return this;\n },\n applying: function applying() {\n return this._private.applying;\n },\n pause: function pause() {\n var _p = this._private;\n _p.playing = false;\n _p.started = false;\n return this;\n },\n stop: function stop() {\n var _p = this._private;\n _p.playing = false;\n _p.started = false;\n _p.stopped = true; // to be removed from animation queues\n\n return this;\n },\n rewind: function rewind() {\n return this.progress(0);\n },\n fastforward: function fastforward() {\n return this.progress(1);\n },\n time: function time(t) {\n var _p = this._private;\n\n if (t === undefined) {\n return _p.progress * _p.duration;\n } else {\n return this.progress(t / _p.duration);\n }\n },\n progress: function progress(p) {\n var _p = this._private;\n var wasPlaying = _p.playing;\n\n if (p === undefined) {\n return _p.progress;\n } else {\n if (wasPlaying) {\n this.pause();\n }\n\n _p.progress = p;\n _p.started = false;\n\n if (wasPlaying) {\n this.play();\n }\n }\n\n return this;\n },\n completed: function completed() {\n return this._private.progress === 1;\n },\n reverse: function reverse() {\n var _p = this._private;\n var wasPlaying = _p.playing;\n\n if (wasPlaying) {\n this.pause();\n }\n\n _p.progress = 1 - _p.progress;\n _p.started = false;\n\n var swap = function swap(a, b) {\n var _pa = _p[a];\n\n if (_pa == null) {\n return;\n }\n\n _p[a] = _p[b];\n _p[b] = _pa;\n };\n\n swap('zoom', 'startZoom');\n swap('pan', 'startPan');\n swap('position', 'startPosition'); // swap styles\n\n if (_p.style) {\n for (var i = 0; i < _p.style.length; i++) {\n var prop = _p.style[i];\n var name = prop.name;\n var startStyleProp = _p.startStyle[name];\n _p.startStyle[name] = prop;\n _p.style[i] = startStyleProp;\n }\n }\n\n if (wasPlaying) {\n this.play();\n }\n\n return this;\n },\n promise: function promise(type) {\n var _p = this._private;\n var arr;\n\n switch (type) {\n case 'frame':\n arr = _p.frames;\n break;\n\n default:\n case 'complete':\n case 'completed':\n arr = _p.completes;\n }\n\n return new Promise$1(function (resolve, reject) {\n arr.push(function () {\n resolve();\n });\n });\n }\n});\nanifn.complete = anifn.completed;\nanifn.run = anifn.play;\nanifn.running = anifn.playing;\n\nvar define$3 = {\n animated: function animated() {\n return function animatedImpl() {\n var self = this;\n var selfIsArrayLike = self.length !== undefined;\n var all = selfIsArrayLike ? self : [self]; // put in array if not array-like\n\n var cy = this._private.cy || this;\n\n if (!cy.styleEnabled()) {\n return false;\n }\n\n var ele = all[0];\n\n if (ele) {\n return ele._private.animation.current.length > 0;\n }\n };\n },\n // animated\n clearQueue: function clearQueue() {\n return function clearQueueImpl() {\n var self = this;\n var selfIsArrayLike = self.length !== undefined;\n var all = selfIsArrayLike ? self : [self]; // put in array if not array-like\n\n var cy = this._private.cy || this;\n\n if (!cy.styleEnabled()) {\n return this;\n }\n\n for (var i = 0; i < all.length; i++) {\n var ele = all[i];\n ele._private.animation.queue = [];\n }\n\n return this;\n };\n },\n // clearQueue\n delay: function delay() {\n return function delayImpl(time, complete) {\n var cy = this._private.cy || this;\n\n if (!cy.styleEnabled()) {\n return this;\n }\n\n return this.animate({\n delay: time,\n duration: time,\n complete: complete\n });\n };\n },\n // delay\n delayAnimation: function delayAnimation() {\n return function delayAnimationImpl(time, complete) {\n var cy = this._private.cy || this;\n\n if (!cy.styleEnabled()) {\n return this;\n }\n\n return this.animation({\n delay: time,\n duration: time,\n complete: complete\n });\n };\n },\n // delay\n animation: function animation() {\n return function animationImpl(properties, params) {\n var self = this;\n var selfIsArrayLike = self.length !== undefined;\n var all = selfIsArrayLike ? self : [self]; // put in array if not array-like\n\n var cy = this._private.cy || this;\n var isCore = !selfIsArrayLike;\n var isEles = !isCore;\n\n if (!cy.styleEnabled()) {\n return this;\n }\n\n var style = cy.style();\n properties = extend({}, properties, params);\n var propertiesEmpty = Object.keys(properties).length === 0;\n\n if (propertiesEmpty) {\n return new Animation(all[0], properties); // nothing to animate\n }\n\n if (properties.duration === undefined) {\n properties.duration = 400;\n }\n\n switch (properties.duration) {\n case 'slow':\n properties.duration = 600;\n break;\n\n case 'fast':\n properties.duration = 200;\n break;\n }\n\n if (isEles) {\n properties.style = style.getPropsList(properties.style || properties.css);\n properties.css = undefined;\n }\n\n if (isEles && properties.renderedPosition != null) {\n var rpos = properties.renderedPosition;\n var pan = cy.pan();\n var zoom = cy.zoom();\n properties.position = renderedToModelPosition(rpos, zoom, pan);\n } // override pan w/ panBy if set\n\n\n if (isCore && properties.panBy != null) {\n var panBy = properties.panBy;\n var cyPan = cy.pan();\n properties.pan = {\n x: cyPan.x + panBy.x,\n y: cyPan.y + panBy.y\n };\n } // override pan w/ center if set\n\n\n var center = properties.center || properties.centre;\n\n if (isCore && center != null) {\n var centerPan = cy.getCenterPan(center.eles, properties.zoom);\n\n if (centerPan != null) {\n properties.pan = centerPan;\n }\n } // override pan & zoom w/ fit if set\n\n\n if (isCore && properties.fit != null) {\n var fit = properties.fit;\n var fitVp = cy.getFitViewport(fit.eles || fit.boundingBox, fit.padding);\n\n if (fitVp != null) {\n properties.pan = fitVp.pan;\n properties.zoom = fitVp.zoom;\n }\n } // override zoom (& potentially pan) w/ zoom obj if set\n\n\n if (isCore && plainObject(properties.zoom)) {\n var vp = cy.getZoomedViewport(properties.zoom);\n\n if (vp != null) {\n if (vp.zoomed) {\n properties.zoom = vp.zoom;\n }\n\n if (vp.panned) {\n properties.pan = vp.pan;\n }\n } else {\n properties.zoom = null; // an inavalid zoom (e.g. no delta) gets automatically destroyed\n }\n }\n\n return new Animation(all[0], properties);\n };\n },\n // animate\n animate: function animate() {\n return function animateImpl(properties, params) {\n var self = this;\n var selfIsArrayLike = self.length !== undefined;\n var all = selfIsArrayLike ? self : [self]; // put in array if not array-like\n\n var cy = this._private.cy || this;\n\n if (!cy.styleEnabled()) {\n return this;\n }\n\n if (params) {\n properties = extend({}, properties, params);\n } // manually hook and run the animation\n\n\n for (var i = 0; i < all.length; i++) {\n var ele = all[i];\n var queue = ele.animated() && (properties.queue === undefined || properties.queue);\n var ani = ele.animation(properties, queue ? {\n queue: true\n } : undefined);\n ani.play();\n }\n\n return this; // chaining\n };\n },\n // animate\n stop: function stop() {\n return function stopImpl(clearQueue, jumpToEnd) {\n var self = this;\n var selfIsArrayLike = self.length !== undefined;\n var all = selfIsArrayLike ? self : [self]; // put in array if not array-like\n\n var cy = this._private.cy || this;\n\n if (!cy.styleEnabled()) {\n return this;\n }\n\n for (var i = 0; i < all.length; i++) {\n var ele = all[i];\n var _p = ele._private;\n var anis = _p.animation.current;\n\n for (var j = 0; j < anis.length; j++) {\n var ani = anis[j];\n var ani_p = ani._private;\n\n if (jumpToEnd) {\n // next iteration of the animation loop, the animation\n // will go straight to the end and be removed\n ani_p.duration = 0;\n }\n } // clear the queue of future animations\n\n\n if (clearQueue) {\n _p.animation.queue = [];\n }\n\n if (!jumpToEnd) {\n _p.animation.current = [];\n }\n } // we have to notify (the animation loop doesn't do it for us on `stop`)\n\n\n cy.notify('draw');\n return this;\n };\n } // stop\n\n}; // define\n\nvar define$2 = {\n // access data field\n data: function data(params) {\n var defaults = {\n field: 'data',\n bindingEvent: 'data',\n allowBinding: false,\n allowSetting: false,\n allowGetting: false,\n settingEvent: 'data',\n settingTriggersEvent: false,\n triggerFnName: 'trigger',\n immutableKeys: {},\n // key => true if immutable\n updateStyle: false,\n beforeGet: function beforeGet(self) {},\n beforeSet: function beforeSet(self, obj) {},\n onSet: function onSet(self) {},\n canSet: function canSet(self) {\n return true;\n }\n };\n params = extend({}, defaults, params);\n return function dataImpl(name, value) {\n var p = params;\n var self = this;\n var selfIsArrayLike = self.length !== undefined;\n var all = selfIsArrayLike ? self : [self]; // put in array if not array-like\n\n var single = selfIsArrayLike ? self[0] : self; // .data('foo', ...)\n\n if (string(name)) {\n // set or get property\n var isPathLike = name.indexOf('.') !== -1; // there might be a normal field with a dot \n\n var path = isPathLike && toPath__default[\"default\"](name); // .data('foo')\n\n if (p.allowGetting && value === undefined) {\n // get\n var ret;\n\n if (single) {\n p.beforeGet(single); // check if it's path and a field with the same name doesn't exist\n\n if (path && single._private[p.field][name] === undefined) {\n ret = get__default[\"default\"](single._private[p.field], path);\n } else {\n ret = single._private[p.field][name];\n }\n }\n\n return ret; // .data('foo', 'bar')\n } else if (p.allowSetting && value !== undefined) {\n // set\n var valid = !p.immutableKeys[name];\n\n if (valid) {\n var change = _defineProperty({}, name, value);\n\n p.beforeSet(self, change);\n\n for (var i = 0, l = all.length; i < l; i++) {\n var ele = all[i];\n\n if (p.canSet(ele)) {\n if (path && single._private[p.field][name] === undefined) {\n set__default[\"default\"](ele._private[p.field], path, value);\n } else {\n ele._private[p.field][name] = value;\n }\n }\n } // update mappers if asked\n\n\n if (p.updateStyle) {\n self.updateStyle();\n } // call onSet callback\n\n\n p.onSet(self);\n\n if (p.settingTriggersEvent) {\n self[p.triggerFnName](p.settingEvent);\n }\n }\n } // .data({ 'foo': 'bar' })\n\n } else if (p.allowSetting && plainObject(name)) {\n // extend\n var obj = name;\n var k, v;\n var keys = Object.keys(obj);\n p.beforeSet(self, obj);\n\n for (var _i = 0; _i < keys.length; _i++) {\n k = keys[_i];\n v = obj[k];\n\n var _valid = !p.immutableKeys[k];\n\n if (_valid) {\n for (var j = 0; j < all.length; j++) {\n var _ele = all[j];\n\n if (p.canSet(_ele)) {\n _ele._private[p.field][k] = v;\n }\n }\n }\n } // update mappers if asked\n\n\n if (p.updateStyle) {\n self.updateStyle();\n } // call onSet callback\n\n\n p.onSet(self);\n\n if (p.settingTriggersEvent) {\n self[p.triggerFnName](p.settingEvent);\n } // .data(function(){ ... })\n\n } else if (p.allowBinding && fn$6(name)) {\n // bind to event\n var fn = name;\n self.on(p.bindingEvent, fn); // .data()\n } else if (p.allowGetting && name === undefined) {\n // get whole object\n var _ret;\n\n if (single) {\n p.beforeGet(single);\n _ret = single._private[p.field];\n }\n\n return _ret;\n }\n\n return self; // maintain chainability\n }; // function\n },\n // data\n // remove data field\n removeData: function removeData(params) {\n var defaults = {\n field: 'data',\n event: 'data',\n triggerFnName: 'trigger',\n triggerEvent: false,\n immutableKeys: {} // key => true if immutable\n\n };\n params = extend({}, defaults, params);\n return function removeDataImpl(names) {\n var p = params;\n var self = this;\n var selfIsArrayLike = self.length !== undefined;\n var all = selfIsArrayLike ? self : [self]; // put in array if not array-like\n // .removeData('foo bar')\n\n if (string(names)) {\n // then get the list of keys, and delete them\n var keys = names.split(/\\s+/);\n var l = keys.length;\n\n for (var i = 0; i < l; i++) {\n // delete each non-empty key\n var key = keys[i];\n\n if (emptyString(key)) {\n continue;\n }\n\n var valid = !p.immutableKeys[key]; // not valid if immutable\n\n if (valid) {\n for (var i_a = 0, l_a = all.length; i_a < l_a; i_a++) {\n all[i_a]._private[p.field][key] = undefined;\n }\n }\n }\n\n if (p.triggerEvent) {\n self[p.triggerFnName](p.event);\n } // .removeData()\n\n } else if (names === undefined) {\n // then delete all keys\n for (var _i_a = 0, _l_a = all.length; _i_a < _l_a; _i_a++) {\n var _privateFields = all[_i_a]._private[p.field];\n\n var _keys = Object.keys(_privateFields);\n\n for (var _i2 = 0; _i2 < _keys.length; _i2++) {\n var _key = _keys[_i2];\n var validKeyToDelete = !p.immutableKeys[_key];\n\n if (validKeyToDelete) {\n _privateFields[_key] = undefined;\n }\n }\n }\n\n if (p.triggerEvent) {\n self[p.triggerFnName](p.event);\n }\n }\n\n return self; // maintain chaining\n }; // function\n } // removeData\n\n}; // define\n\nvar define$1 = {\n eventAliasesOn: function eventAliasesOn(proto) {\n var p = proto;\n p.addListener = p.listen = p.bind = p.on;\n p.unlisten = p.unbind = p.off = p.removeListener;\n p.trigger = p.emit; // this is just a wrapper alias of .on()\n\n p.pon = p.promiseOn = function (events, selector) {\n var self = this;\n var args = Array.prototype.slice.call(arguments, 0);\n return new Promise$1(function (resolve, reject) {\n var callback = function callback(e) {\n self.off.apply(self, offArgs);\n resolve(e);\n };\n\n var onArgs = args.concat([callback]);\n var offArgs = onArgs.concat([]);\n self.on.apply(self, onArgs);\n });\n };\n }\n}; // define\n\n// use this module to cherry pick functions into your prototype\nvar define = {};\n[define$3, define$2, define$1].forEach(function (m) {\n extend(define, m);\n});\n\nvar elesfn$i = {\n animate: define.animate(),\n animation: define.animation(),\n animated: define.animated(),\n clearQueue: define.clearQueue(),\n delay: define.delay(),\n delayAnimation: define.delayAnimation(),\n stop: define.stop()\n};\n\nvar elesfn$h = {\n classes: function classes(_classes) {\n var self = this;\n\n if (_classes === undefined) {\n var ret = [];\n\n self[0]._private.classes.forEach(function (cls) {\n return ret.push(cls);\n });\n\n return ret;\n } else if (!array(_classes)) {\n // extract classes from string\n _classes = (_classes || '').match(/\\S+/g) || [];\n }\n\n var changed = [];\n var classesSet = new Set$1(_classes); // check and update each ele\n\n for (var j = 0; j < self.length; j++) {\n var ele = self[j];\n var _p = ele._private;\n var eleClasses = _p.classes;\n var changedEle = false; // check if ele has all of the passed classes\n\n for (var i = 0; i < _classes.length; i++) {\n var cls = _classes[i];\n var eleHasClass = eleClasses.has(cls);\n\n if (!eleHasClass) {\n changedEle = true;\n break;\n }\n } // check if ele has classes outside of those passed\n\n\n if (!changedEle) {\n changedEle = eleClasses.size !== _classes.length;\n }\n\n if (changedEle) {\n _p.classes = classesSet;\n changed.push(ele);\n }\n } // trigger update style on those eles that had class changes\n\n\n if (changed.length > 0) {\n this.spawn(changed).updateStyle().emit('class');\n }\n\n return self;\n },\n addClass: function addClass(classes) {\n return this.toggleClass(classes, true);\n },\n hasClass: function hasClass(className) {\n var ele = this[0];\n return ele != null && ele._private.classes.has(className);\n },\n toggleClass: function toggleClass(classes, toggle) {\n if (!array(classes)) {\n // extract classes from string\n classes = classes.match(/\\S+/g) || [];\n }\n\n var self = this;\n var toggleUndefd = toggle === undefined;\n var changed = []; // eles who had classes changed\n\n for (var i = 0, il = self.length; i < il; i++) {\n var ele = self[i];\n var eleClasses = ele._private.classes;\n var changedEle = false;\n\n for (var j = 0; j < classes.length; j++) {\n var cls = classes[j];\n var hasClass = eleClasses.has(cls);\n var changedNow = false;\n\n if (toggle || toggleUndefd && !hasClass) {\n eleClasses.add(cls);\n changedNow = true;\n } else if (!toggle || toggleUndefd && hasClass) {\n eleClasses[\"delete\"](cls);\n changedNow = true;\n }\n\n if (!changedEle && changedNow) {\n changed.push(ele);\n changedEle = true;\n }\n } // for j classes\n\n } // for i eles\n // trigger update style on those eles that had class changes\n\n\n if (changed.length > 0) {\n this.spawn(changed).updateStyle().emit('class');\n }\n\n return self;\n },\n removeClass: function removeClass(classes) {\n return this.toggleClass(classes, false);\n },\n flashClass: function flashClass(classes, duration) {\n var self = this;\n\n if (duration == null) {\n duration = 250;\n } else if (duration === 0) {\n return self; // nothing to do really\n }\n\n self.addClass(classes);\n setTimeout(function () {\n self.removeClass(classes);\n }, duration);\n return self;\n }\n};\nelesfn$h.className = elesfn$h.classNames = elesfn$h.classes;\n\nvar tokens = {\n metaChar: '[\\\\!\\\\\"\\\\#\\\\$\\\\%\\\\&\\\\\\'\\\\(\\\\)\\\\*\\\\+\\\\,\\\\.\\\\/\\\\:\\\\;\\\\<\\\\=\\\\>\\\\?\\\\@\\\\[\\\\]\\\\^\\\\`\\\\{\\\\|\\\\}\\\\~]',\n // chars we need to escape in let names, etc\n comparatorOp: '=|\\\\!=|>|>=|<|<=|\\\\$=|\\\\^=|\\\\*=',\n // binary comparison op (used in data selectors)\n boolOp: '\\\\?|\\\\!|\\\\^',\n // boolean (unary) operators (used in data selectors)\n string: '\"(?:\\\\\\\\\"|[^\"])*\"' + '|' + \"'(?:\\\\\\\\'|[^'])*'\",\n // string literals (used in data selectors) -- doublequotes | singlequotes\n number: number,\n // number literal (used in data selectors) --- e.g. 0.1234, 1234, 12e123\n meta: 'degree|indegree|outdegree',\n // allowed metadata fields (i.e. allowed functions to use from Collection)\n separator: '\\\\s*,\\\\s*',\n // queries are separated by commas, e.g. edge[foo = 'bar'], node.someClass\n descendant: '\\\\s+',\n child: '\\\\s+>\\\\s+',\n subject: '\\\\$',\n group: 'node|edge|\\\\*',\n directedEdge: '\\\\s+->\\\\s+',\n undirectedEdge: '\\\\s+<->\\\\s+'\n};\ntokens.variable = '(?:[\\\\w-.]|(?:\\\\\\\\' + tokens.metaChar + '))+'; // a variable name can have letters, numbers, dashes, and periods\n\ntokens.className = '(?:[\\\\w-]|(?:\\\\\\\\' + tokens.metaChar + '))+'; // a class name has the same rules as a variable except it can't have a '.' in the name\n\ntokens.value = tokens.string + '|' + tokens.number; // a value literal, either a string or number\n\ntokens.id = tokens.variable; // an element id (follows variable conventions)\n\n(function () {\n var ops, op, i; // add @ variants to comparatorOp\n\n ops = tokens.comparatorOp.split('|');\n\n for (i = 0; i < ops.length; i++) {\n op = ops[i];\n tokens.comparatorOp += '|@' + op;\n } // add ! variants to comparatorOp\n\n\n ops = tokens.comparatorOp.split('|');\n\n for (i = 0; i < ops.length; i++) {\n op = ops[i];\n\n if (op.indexOf('!') >= 0) {\n continue;\n } // skip ops that explicitly contain !\n\n\n if (op === '=') {\n continue;\n } // skip = b/c != is explicitly defined\n\n\n tokens.comparatorOp += '|\\\\!' + op;\n }\n})();\n\n/**\n * Make a new query object\n *\n * @prop type {Type} The type enum (int) of the query\n * @prop checks List of checks to make against an ele to test for a match\n */\nvar newQuery = function newQuery() {\n return {\n checks: []\n };\n};\n\n/**\n * A check type enum-like object. Uses integer values for fast match() lookup.\n * The ordering does not matter as long as the ints are unique.\n */\nvar Type = {\n /** E.g. node */\n GROUP: 0,\n\n /** A collection of elements */\n COLLECTION: 1,\n\n /** A filter(ele) function */\n FILTER: 2,\n\n /** E.g. [foo > 1] */\n DATA_COMPARE: 3,\n\n /** E.g. [foo] */\n DATA_EXIST: 4,\n\n /** E.g. [?foo] */\n DATA_BOOL: 5,\n\n /** E.g. [[degree > 2]] */\n META_COMPARE: 6,\n\n /** E.g. :selected */\n STATE: 7,\n\n /** E.g. #foo */\n ID: 8,\n\n /** E.g. .foo */\n CLASS: 9,\n\n /** E.g. #foo <-> #bar */\n UNDIRECTED_EDGE: 10,\n\n /** E.g. #foo -> #bar */\n DIRECTED_EDGE: 11,\n\n /** E.g. $#foo -> #bar */\n NODE_SOURCE: 12,\n\n /** E.g. #foo -> $#bar */\n NODE_TARGET: 13,\n\n /** E.g. $#foo <-> #bar */\n NODE_NEIGHBOR: 14,\n\n /** E.g. #foo > #bar */\n CHILD: 15,\n\n /** E.g. #foo #bar */\n DESCENDANT: 16,\n\n /** E.g. $#foo > #bar */\n PARENT: 17,\n\n /** E.g. $#foo #bar */\n ANCESTOR: 18,\n\n /** E.g. #foo > $bar > #baz */\n COMPOUND_SPLIT: 19,\n\n /** Always matches, useful placeholder for subject in `COMPOUND_SPLIT` */\n TRUE: 20\n};\n\nvar stateSelectors = [{\n selector: ':selected',\n matches: function matches(ele) {\n return ele.selected();\n }\n}, {\n selector: ':unselected',\n matches: function matches(ele) {\n return !ele.selected();\n }\n}, {\n selector: ':selectable',\n matches: function matches(ele) {\n return ele.selectable();\n }\n}, {\n selector: ':unselectable',\n matches: function matches(ele) {\n return !ele.selectable();\n }\n}, {\n selector: ':locked',\n matches: function matches(ele) {\n return ele.locked();\n }\n}, {\n selector: ':unlocked',\n matches: function matches(ele) {\n return !ele.locked();\n }\n}, {\n selector: ':visible',\n matches: function matches(ele) {\n return ele.visible();\n }\n}, {\n selector: ':hidden',\n matches: function matches(ele) {\n return !ele.visible();\n }\n}, {\n selector: ':transparent',\n matches: function matches(ele) {\n return ele.transparent();\n }\n}, {\n selector: ':grabbed',\n matches: function matches(ele) {\n return ele.grabbed();\n }\n}, {\n selector: ':free',\n matches: function matches(ele) {\n return !ele.grabbed();\n }\n}, {\n selector: ':removed',\n matches: function matches(ele) {\n return ele.removed();\n }\n}, {\n selector: ':inside',\n matches: function matches(ele) {\n return !ele.removed();\n }\n}, {\n selector: ':grabbable',\n matches: function matches(ele) {\n return ele.grabbable();\n }\n}, {\n selector: ':ungrabbable',\n matches: function matches(ele) {\n return !ele.grabbable();\n }\n}, {\n selector: ':animated',\n matches: function matches(ele) {\n return ele.animated();\n }\n}, {\n selector: ':unanimated',\n matches: function matches(ele) {\n return !ele.animated();\n }\n}, {\n selector: ':parent',\n matches: function matches(ele) {\n return ele.isParent();\n }\n}, {\n selector: ':childless',\n matches: function matches(ele) {\n return ele.isChildless();\n }\n}, {\n selector: ':child',\n matches: function matches(ele) {\n return ele.isChild();\n }\n}, {\n selector: ':orphan',\n matches: function matches(ele) {\n return ele.isOrphan();\n }\n}, {\n selector: ':nonorphan',\n matches: function matches(ele) {\n return ele.isChild();\n }\n}, {\n selector: ':compound',\n matches: function matches(ele) {\n if (ele.isNode()) {\n return ele.isParent();\n } else {\n return ele.source().isParent() || ele.target().isParent();\n }\n }\n}, {\n selector: ':loop',\n matches: function matches(ele) {\n return ele.isLoop();\n }\n}, {\n selector: ':simple',\n matches: function matches(ele) {\n return ele.isSimple();\n }\n}, {\n selector: ':active',\n matches: function matches(ele) {\n return ele.active();\n }\n}, {\n selector: ':inactive',\n matches: function matches(ele) {\n return !ele.active();\n }\n}, {\n selector: ':backgrounding',\n matches: function matches(ele) {\n return ele.backgrounding();\n }\n}, {\n selector: ':nonbackgrounding',\n matches: function matches(ele) {\n return !ele.backgrounding();\n }\n}].sort(function (a, b) {\n // n.b. selectors that are starting substrings of others must have the longer ones first\n return descending(a.selector, b.selector);\n});\n\nvar lookup = function () {\n var selToFn = {};\n var s;\n\n for (var i = 0; i < stateSelectors.length; i++) {\n s = stateSelectors[i];\n selToFn[s.selector] = s.matches;\n }\n\n return selToFn;\n}();\n\nvar stateSelectorMatches = function stateSelectorMatches(sel, ele) {\n return lookup[sel](ele);\n};\nvar stateSelectorRegex = '(' + stateSelectors.map(function (s) {\n return s.selector;\n}).join('|') + ')';\n\n// so that values get compared properly in Selector.filter()\n\nvar cleanMetaChars = function cleanMetaChars(str) {\n return str.replace(new RegExp('\\\\\\\\(' + tokens.metaChar + ')', 'g'), function (match, $1) {\n return $1;\n });\n};\n\nvar replaceLastQuery = function replaceLastQuery(selector, examiningQuery, replacementQuery) {\n selector[selector.length - 1] = replacementQuery;\n}; // NOTE: add new expression syntax here to have it recognised by the parser;\n// - a query contains all adjacent (i.e. no separator in between) expressions;\n// - the current query is stored in selector[i]\n// - you need to check the query objects in match() for it actually filter properly, but that's pretty straight forward\n\n\nvar exprs = [{\n name: 'group',\n // just used for identifying when debugging\n query: true,\n regex: '(' + tokens.group + ')',\n populate: function populate(selector, query, _ref) {\n var _ref2 = _slicedToArray(_ref, 1),\n group = _ref2[0];\n\n query.checks.push({\n type: Type.GROUP,\n value: group === '*' ? group : group + 's'\n });\n }\n}, {\n name: 'state',\n query: true,\n regex: stateSelectorRegex,\n populate: function populate(selector, query, _ref3) {\n var _ref4 = _slicedToArray(_ref3, 1),\n state = _ref4[0];\n\n query.checks.push({\n type: Type.STATE,\n value: state\n });\n }\n}, {\n name: 'id',\n query: true,\n regex: '\\\\#(' + tokens.id + ')',\n populate: function populate(selector, query, _ref5) {\n var _ref6 = _slicedToArray(_ref5, 1),\n id = _ref6[0];\n\n query.checks.push({\n type: Type.ID,\n value: cleanMetaChars(id)\n });\n }\n}, {\n name: 'className',\n query: true,\n regex: '\\\\.(' + tokens.className + ')',\n populate: function populate(selector, query, _ref7) {\n var _ref8 = _slicedToArray(_ref7, 1),\n className = _ref8[0];\n\n query.checks.push({\n type: Type.CLASS,\n value: cleanMetaChars(className)\n });\n }\n}, {\n name: 'dataExists',\n query: true,\n regex: '\\\\[\\\\s*(' + tokens.variable + ')\\\\s*\\\\]',\n populate: function populate(selector, query, _ref9) {\n var _ref10 = _slicedToArray(_ref9, 1),\n variable = _ref10[0];\n\n query.checks.push({\n type: Type.DATA_EXIST,\n field: cleanMetaChars(variable)\n });\n }\n}, {\n name: 'dataCompare',\n query: true,\n regex: '\\\\[\\\\s*(' + tokens.variable + ')\\\\s*(' + tokens.comparatorOp + ')\\\\s*(' + tokens.value + ')\\\\s*\\\\]',\n populate: function populate(selector, query, _ref11) {\n var _ref12 = _slicedToArray(_ref11, 3),\n variable = _ref12[0],\n comparatorOp = _ref12[1],\n value = _ref12[2];\n\n var valueIsString = new RegExp('^' + tokens.string + '$').exec(value) != null;\n\n if (valueIsString) {\n value = value.substring(1, value.length - 1);\n } else {\n value = parseFloat(value);\n }\n\n query.checks.push({\n type: Type.DATA_COMPARE,\n field: cleanMetaChars(variable),\n operator: comparatorOp,\n value: value\n });\n }\n}, {\n name: 'dataBool',\n query: true,\n regex: '\\\\[\\\\s*(' + tokens.boolOp + ')\\\\s*(' + tokens.variable + ')\\\\s*\\\\]',\n populate: function populate(selector, query, _ref13) {\n var _ref14 = _slicedToArray(_ref13, 2),\n boolOp = _ref14[0],\n variable = _ref14[1];\n\n query.checks.push({\n type: Type.DATA_BOOL,\n field: cleanMetaChars(variable),\n operator: boolOp\n });\n }\n}, {\n name: 'metaCompare',\n query: true,\n regex: '\\\\[\\\\[\\\\s*(' + tokens.meta + ')\\\\s*(' + tokens.comparatorOp + ')\\\\s*(' + tokens.number + ')\\\\s*\\\\]\\\\]',\n populate: function populate(selector, query, _ref15) {\n var _ref16 = _slicedToArray(_ref15, 3),\n meta = _ref16[0],\n comparatorOp = _ref16[1],\n number = _ref16[2];\n\n query.checks.push({\n type: Type.META_COMPARE,\n field: cleanMetaChars(meta),\n operator: comparatorOp,\n value: parseFloat(number)\n });\n }\n}, {\n name: 'nextQuery',\n separator: true,\n regex: tokens.separator,\n populate: function populate(selector, query) {\n var currentSubject = selector.currentSubject;\n var edgeCount = selector.edgeCount;\n var compoundCount = selector.compoundCount;\n var lastQ = selector[selector.length - 1];\n\n if (currentSubject != null) {\n lastQ.subject = currentSubject;\n selector.currentSubject = null;\n }\n\n lastQ.edgeCount = edgeCount;\n lastQ.compoundCount = compoundCount;\n selector.edgeCount = 0;\n selector.compoundCount = 0; // go on to next query\n\n var nextQuery = selector[selector.length++] = newQuery();\n return nextQuery; // this is the new query to be filled by the following exprs\n }\n}, {\n name: 'directedEdge',\n separator: true,\n regex: tokens.directedEdge,\n populate: function populate(selector, query) {\n if (selector.currentSubject == null) {\n // undirected edge\n var edgeQuery = newQuery();\n var source = query;\n var target = newQuery();\n edgeQuery.checks.push({\n type: Type.DIRECTED_EDGE,\n source: source,\n target: target\n }); // the query in the selector should be the edge rather than the source\n\n replaceLastQuery(selector, query, edgeQuery);\n selector.edgeCount++; // we're now populating the target query with expressions that follow\n\n return target;\n } else {\n // source/target\n var srcTgtQ = newQuery();\n var _source = query;\n\n var _target = newQuery();\n\n srcTgtQ.checks.push({\n type: Type.NODE_SOURCE,\n source: _source,\n target: _target\n }); // the query in the selector should be the neighbourhood rather than the node\n\n replaceLastQuery(selector, query, srcTgtQ);\n selector.edgeCount++;\n return _target; // now populating the target with the following expressions\n }\n }\n}, {\n name: 'undirectedEdge',\n separator: true,\n regex: tokens.undirectedEdge,\n populate: function populate(selector, query) {\n if (selector.currentSubject == null) {\n // undirected edge\n var edgeQuery = newQuery();\n var source = query;\n var target = newQuery();\n edgeQuery.checks.push({\n type: Type.UNDIRECTED_EDGE,\n nodes: [source, target]\n }); // the query in the selector should be the edge rather than the source\n\n replaceLastQuery(selector, query, edgeQuery);\n selector.edgeCount++; // we're now populating the target query with expressions that follow\n\n return target;\n } else {\n // neighbourhood\n var nhoodQ = newQuery();\n var node = query;\n var neighbor = newQuery();\n nhoodQ.checks.push({\n type: Type.NODE_NEIGHBOR,\n node: node,\n neighbor: neighbor\n }); // the query in the selector should be the neighbourhood rather than the node\n\n replaceLastQuery(selector, query, nhoodQ);\n return neighbor; // now populating the neighbor with following expressions\n }\n }\n}, {\n name: 'child',\n separator: true,\n regex: tokens.child,\n populate: function populate(selector, query) {\n if (selector.currentSubject == null) {\n // default: child query\n var parentChildQuery = newQuery();\n var child = newQuery();\n var parent = selector[selector.length - 1];\n parentChildQuery.checks.push({\n type: Type.CHILD,\n parent: parent,\n child: child\n }); // the query in the selector should be the '>' itself\n\n replaceLastQuery(selector, query, parentChildQuery);\n selector.compoundCount++; // we're now populating the child query with expressions that follow\n\n return child;\n } else if (selector.currentSubject === query) {\n // compound split query\n var compound = newQuery();\n var left = selector[selector.length - 1];\n var right = newQuery();\n var subject = newQuery();\n\n var _child = newQuery();\n\n var _parent = newQuery(); // set up the root compound q\n\n\n compound.checks.push({\n type: Type.COMPOUND_SPLIT,\n left: left,\n right: right,\n subject: subject\n }); // populate the subject and replace the q at the old spot (within left) with TRUE\n\n subject.checks = query.checks; // take the checks from the left\n\n query.checks = [{\n type: Type.TRUE\n }]; // checks under left refs the subject implicitly\n // set up the right q\n\n _parent.checks.push({\n type: Type.TRUE\n }); // parent implicitly refs the subject\n\n\n right.checks.push({\n type: Type.PARENT,\n // type is swapped on right side queries\n parent: _parent,\n child: _child // empty for now\n\n });\n replaceLastQuery(selector, left, compound); // update the ref since we moved things around for `query`\n\n selector.currentSubject = subject;\n selector.compoundCount++;\n return _child; // now populating the right side's child\n } else {\n // parent query\n // info for parent query\n var _parent2 = newQuery();\n\n var _child2 = newQuery();\n\n var pcQChecks = [{\n type: Type.PARENT,\n parent: _parent2,\n child: _child2\n }]; // the parent-child query takes the place of the query previously being populated\n\n _parent2.checks = query.checks; // the previous query contains the checks for the parent\n\n query.checks = pcQChecks; // pc query takes over\n\n selector.compoundCount++;\n return _child2; // we're now populating the child\n }\n }\n}, {\n name: 'descendant',\n separator: true,\n regex: tokens.descendant,\n populate: function populate(selector, query) {\n if (selector.currentSubject == null) {\n // default: descendant query\n var ancChQuery = newQuery();\n var descendant = newQuery();\n var ancestor = selector[selector.length - 1];\n ancChQuery.checks.push({\n type: Type.DESCENDANT,\n ancestor: ancestor,\n descendant: descendant\n }); // the query in the selector should be the '>' itself\n\n replaceLastQuery(selector, query, ancChQuery);\n selector.compoundCount++; // we're now populating the descendant query with expressions that follow\n\n return descendant;\n } else if (selector.currentSubject === query) {\n // compound split query\n var compound = newQuery();\n var left = selector[selector.length - 1];\n var right = newQuery();\n var subject = newQuery();\n\n var _descendant = newQuery();\n\n var _ancestor = newQuery(); // set up the root compound q\n\n\n compound.checks.push({\n type: Type.COMPOUND_SPLIT,\n left: left,\n right: right,\n subject: subject\n }); // populate the subject and replace the q at the old spot (within left) with TRUE\n\n subject.checks = query.checks; // take the checks from the left\n\n query.checks = [{\n type: Type.TRUE\n }]; // checks under left refs the subject implicitly\n // set up the right q\n\n _ancestor.checks.push({\n type: Type.TRUE\n }); // ancestor implicitly refs the subject\n\n\n right.checks.push({\n type: Type.ANCESTOR,\n // type is swapped on right side queries\n ancestor: _ancestor,\n descendant: _descendant // empty for now\n\n });\n replaceLastQuery(selector, left, compound); // update the ref since we moved things around for `query`\n\n selector.currentSubject = subject;\n selector.compoundCount++;\n return _descendant; // now populating the right side's descendant\n } else {\n // ancestor query\n // info for parent query\n var _ancestor2 = newQuery();\n\n var _descendant2 = newQuery();\n\n var adQChecks = [{\n type: Type.ANCESTOR,\n ancestor: _ancestor2,\n descendant: _descendant2\n }]; // the parent-child query takes the place of the query previously being populated\n\n _ancestor2.checks = query.checks; // the previous query contains the checks for the parent\n\n query.checks = adQChecks; // pc query takes over\n\n selector.compoundCount++;\n return _descendant2; // we're now populating the child\n }\n }\n}, {\n name: 'subject',\n modifier: true,\n regex: tokens.subject,\n populate: function populate(selector, query) {\n if (selector.currentSubject != null && selector.currentSubject !== query) {\n warn('Redefinition of subject in selector `' + selector.toString() + '`');\n return false;\n }\n\n selector.currentSubject = query;\n var topQ = selector[selector.length - 1];\n var topChk = topQ.checks[0];\n var topType = topChk == null ? null : topChk.type;\n\n if (topType === Type.DIRECTED_EDGE) {\n // directed edge with subject on the target\n // change to target node check\n topChk.type = Type.NODE_TARGET;\n } else if (topType === Type.UNDIRECTED_EDGE) {\n // undirected edge with subject on the second node\n // change to neighbor check\n topChk.type = Type.NODE_NEIGHBOR;\n topChk.node = topChk.nodes[1]; // second node is subject\n\n topChk.neighbor = topChk.nodes[0]; // clean up unused fields for new type\n\n topChk.nodes = null;\n }\n }\n}];\nexprs.forEach(function (e) {\n return e.regexObj = new RegExp('^' + e.regex);\n});\n\n/**\n * Of all the expressions, find the first match in the remaining text.\n * @param {string} remaining The remaining text to parse\n * @returns The matched expression and the newly remaining text `{ expr, match, name, remaining }`\n */\n\nvar consumeExpr = function consumeExpr(remaining) {\n var expr;\n var match;\n var name;\n\n for (var j = 0; j < exprs.length; j++) {\n var e = exprs[j];\n var n = e.name;\n var m = remaining.match(e.regexObj);\n\n if (m != null) {\n match = m;\n expr = e;\n name = n;\n var consumed = m[0];\n remaining = remaining.substring(consumed.length);\n break; // we've consumed one expr, so we can return now\n }\n }\n\n return {\n expr: expr,\n match: match,\n name: name,\n remaining: remaining\n };\n};\n/**\n * Consume all the leading whitespace\n * @param {string} remaining The text to consume\n * @returns The text with the leading whitespace removed\n */\n\n\nvar consumeWhitespace = function consumeWhitespace(remaining) {\n var match = remaining.match(/^\\s+/);\n\n if (match) {\n var consumed = match[0];\n remaining = remaining.substring(consumed.length);\n }\n\n return remaining;\n};\n/**\n * Parse the string and store the parsed representation in the Selector.\n * @param {string} selector The selector string\n * @returns `true` if the selector was successfully parsed, `false` otherwise\n */\n\n\nvar parse = function parse(selector) {\n var self = this;\n var remaining = self.inputText = selector;\n var currentQuery = self[0] = newQuery();\n self.length = 1;\n remaining = consumeWhitespace(remaining); // get rid of leading whitespace\n\n for (;;) {\n var exprInfo = consumeExpr(remaining);\n\n if (exprInfo.expr == null) {\n warn('The selector `' + selector + '`is invalid');\n return false;\n } else {\n var args = exprInfo.match.slice(1); // let the token populate the selector object in currentQuery\n\n var ret = exprInfo.expr.populate(self, currentQuery, args);\n\n if (ret === false) {\n return false; // exit if population failed\n } else if (ret != null) {\n currentQuery = ret; // change the current query to be filled if the expr specifies\n }\n }\n\n remaining = exprInfo.remaining; // we're done when there's nothing left to parse\n\n if (remaining.match(/^\\s*$/)) {\n break;\n }\n }\n\n var lastQ = self[self.length - 1];\n\n if (self.currentSubject != null) {\n lastQ.subject = self.currentSubject;\n }\n\n lastQ.edgeCount = self.edgeCount;\n lastQ.compoundCount = self.compoundCount;\n\n for (var i = 0; i < self.length; i++) {\n var q = self[i]; // in future, this could potentially be allowed if there were operator precedence and detection of invalid combinations\n\n if (q.compoundCount > 0 && q.edgeCount > 0) {\n warn('The selector `' + selector + '` is invalid because it uses both a compound selector and an edge selector');\n return false;\n }\n\n if (q.edgeCount > 1) {\n warn('The selector `' + selector + '` is invalid because it uses multiple edge selectors');\n return false;\n } else if (q.edgeCount === 1) {\n warn('The selector `' + selector + '` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.');\n }\n }\n\n return true; // success\n};\n/**\n * Get the selector represented as a string. This value uses default formatting,\n * so things like spacing may differ from the input text passed to the constructor.\n * @returns {string} The selector string\n */\n\n\nvar toString = function toString() {\n if (this.toStringCache != null) {\n return this.toStringCache;\n }\n\n var clean = function clean(obj) {\n if (obj == null) {\n return '';\n } else {\n return obj;\n }\n };\n\n var cleanVal = function cleanVal(val) {\n if (string(val)) {\n return '\"' + val + '\"';\n } else {\n return clean(val);\n }\n };\n\n var space = function space(val) {\n return ' ' + val + ' ';\n };\n\n var checkToString = function checkToString(check, subject) {\n var type = check.type,\n value = check.value;\n\n switch (type) {\n case Type.GROUP:\n {\n var group = clean(value);\n return group.substring(0, group.length - 1);\n }\n\n case Type.DATA_COMPARE:\n {\n var field = check.field,\n operator = check.operator;\n return '[' + field + space(clean(operator)) + cleanVal(value) + ']';\n }\n\n case Type.DATA_BOOL:\n {\n var _operator = check.operator,\n _field = check.field;\n return '[' + clean(_operator) + _field + ']';\n }\n\n case Type.DATA_EXIST:\n {\n var _field2 = check.field;\n return '[' + _field2 + ']';\n }\n\n case Type.META_COMPARE:\n {\n var _operator2 = check.operator,\n _field3 = check.field;\n return '[[' + _field3 + space(clean(_operator2)) + cleanVal(value) + ']]';\n }\n\n case Type.STATE:\n {\n return value;\n }\n\n case Type.ID:\n {\n return '#' + value;\n }\n\n case Type.CLASS:\n {\n return '.' + value;\n }\n\n case Type.PARENT:\n case Type.CHILD:\n {\n return queryToString(check.parent, subject) + space('>') + queryToString(check.child, subject);\n }\n\n case Type.ANCESTOR:\n case Type.DESCENDANT:\n {\n return queryToString(check.ancestor, subject) + ' ' + queryToString(check.descendant, subject);\n }\n\n case Type.COMPOUND_SPLIT:\n {\n var lhs = queryToString(check.left, subject);\n var sub = queryToString(check.subject, subject);\n var rhs = queryToString(check.right, subject);\n return lhs + (lhs.length > 0 ? ' ' : '') + sub + rhs;\n }\n\n case Type.TRUE:\n {\n return '';\n }\n }\n };\n\n var queryToString = function queryToString(query, subject) {\n return query.checks.reduce(function (str, chk, i) {\n return str + (subject === query && i === 0 ? '$' : '') + checkToString(chk, subject);\n }, '');\n };\n\n var str = '';\n\n for (var i = 0; i < this.length; i++) {\n var query = this[i];\n str += queryToString(query, query.subject);\n\n if (this.length > 1 && i < this.length - 1) {\n str += ', ';\n }\n }\n\n this.toStringCache = str;\n return str;\n};\nvar parse$1 = {\n parse: parse,\n toString: toString\n};\n\nvar valCmp = function valCmp(fieldVal, operator, value) {\n var matches;\n var isFieldStr = string(fieldVal);\n var isFieldNum = number$1(fieldVal);\n var isValStr = string(value);\n var fieldStr, valStr;\n var caseInsensitive = false;\n var notExpr = false;\n var isIneqCmp = false;\n\n if (operator.indexOf('!') >= 0) {\n operator = operator.replace('!', '');\n notExpr = true;\n }\n\n if (operator.indexOf('@') >= 0) {\n operator = operator.replace('@', '');\n caseInsensitive = true;\n }\n\n if (isFieldStr || isValStr || caseInsensitive) {\n fieldStr = !isFieldStr && !isFieldNum ? '' : '' + fieldVal;\n valStr = '' + value;\n } // if we're doing a case insensitive comparison, then we're using a STRING comparison\n // even if we're comparing numbers\n\n\n if (caseInsensitive) {\n fieldVal = fieldStr = fieldStr.toLowerCase();\n value = valStr = valStr.toLowerCase();\n }\n\n switch (operator) {\n case '*=':\n matches = fieldStr.indexOf(valStr) >= 0;\n break;\n\n case '$=':\n matches = fieldStr.indexOf(valStr, fieldStr.length - valStr.length) >= 0;\n break;\n\n case '^=':\n matches = fieldStr.indexOf(valStr) === 0;\n break;\n\n case '=':\n matches = fieldVal === value;\n break;\n\n case '>':\n isIneqCmp = true;\n matches = fieldVal > value;\n break;\n\n case '>=':\n isIneqCmp = true;\n matches = fieldVal >= value;\n break;\n\n case '<':\n isIneqCmp = true;\n matches = fieldVal < value;\n break;\n\n case '<=':\n isIneqCmp = true;\n matches = fieldVal <= value;\n break;\n\n default:\n matches = false;\n break;\n } // apply the not op, but null vals for inequalities should always stay non-matching\n\n\n if (notExpr && (fieldVal != null || !isIneqCmp)) {\n matches = !matches;\n }\n\n return matches;\n};\nvar boolCmp = function boolCmp(fieldVal, operator) {\n switch (operator) {\n case '?':\n return fieldVal ? true : false;\n\n case '!':\n return fieldVal ? false : true;\n\n case '^':\n return fieldVal === undefined;\n }\n};\nvar existCmp = function existCmp(fieldVal) {\n return fieldVal !== undefined;\n};\nvar data$1 = function data(ele, field) {\n return ele.data(field);\n};\nvar meta = function meta(ele, field) {\n return ele[field]();\n};\n\n/** A lookup of `match(check, ele)` functions by `Type` int */\n\nvar match = [];\n/**\n * Returns whether the query matches for the element\n * @param query The `{ type, value, ... }` query object\n * @param ele The element to compare against\n*/\n\nvar matches$1 = function matches(query, ele) {\n return query.checks.every(function (chk) {\n return match[chk.type](chk, ele);\n });\n};\n\nmatch[Type.GROUP] = function (check, ele) {\n var group = check.value;\n return group === '*' || group === ele.group();\n};\n\nmatch[Type.STATE] = function (check, ele) {\n var stateSelector = check.value;\n return stateSelectorMatches(stateSelector, ele);\n};\n\nmatch[Type.ID] = function (check, ele) {\n var id = check.value;\n return ele.id() === id;\n};\n\nmatch[Type.CLASS] = function (check, ele) {\n var cls = check.value;\n return ele.hasClass(cls);\n};\n\nmatch[Type.META_COMPARE] = function (check, ele) {\n var field = check.field,\n operator = check.operator,\n value = check.value;\n return valCmp(meta(ele, field), operator, value);\n};\n\nmatch[Type.DATA_COMPARE] = function (check, ele) {\n var field = check.field,\n operator = check.operator,\n value = check.value;\n return valCmp(data$1(ele, field), operator, value);\n};\n\nmatch[Type.DATA_BOOL] = function (check, ele) {\n var field = check.field,\n operator = check.operator;\n return boolCmp(data$1(ele, field), operator);\n};\n\nmatch[Type.DATA_EXIST] = function (check, ele) {\n var field = check.field;\n check.operator;\n return existCmp(data$1(ele, field));\n};\n\nmatch[Type.UNDIRECTED_EDGE] = function (check, ele) {\n var qA = check.nodes[0];\n var qB = check.nodes[1];\n var src = ele.source();\n var tgt = ele.target();\n return matches$1(qA, src) && matches$1(qB, tgt) || matches$1(qB, src) && matches$1(qA, tgt);\n};\n\nmatch[Type.NODE_NEIGHBOR] = function (check, ele) {\n return matches$1(check.node, ele) && ele.neighborhood().some(function (n) {\n return n.isNode() && matches$1(check.neighbor, n);\n });\n};\n\nmatch[Type.DIRECTED_EDGE] = function (check, ele) {\n return matches$1(check.source, ele.source()) && matches$1(check.target, ele.target());\n};\n\nmatch[Type.NODE_SOURCE] = function (check, ele) {\n return matches$1(check.source, ele) && ele.outgoers().some(function (n) {\n return n.isNode() && matches$1(check.target, n);\n });\n};\n\nmatch[Type.NODE_TARGET] = function (check, ele) {\n return matches$1(check.target, ele) && ele.incomers().some(function (n) {\n return n.isNode() && matches$1(check.source, n);\n });\n};\n\nmatch[Type.CHILD] = function (check, ele) {\n return matches$1(check.child, ele) && matches$1(check.parent, ele.parent());\n};\n\nmatch[Type.PARENT] = function (check, ele) {\n return matches$1(check.parent, ele) && ele.children().some(function (c) {\n return matches$1(check.child, c);\n });\n};\n\nmatch[Type.DESCENDANT] = function (check, ele) {\n return matches$1(check.descendant, ele) && ele.ancestors().some(function (a) {\n return matches$1(check.ancestor, a);\n });\n};\n\nmatch[Type.ANCESTOR] = function (check, ele) {\n return matches$1(check.ancestor, ele) && ele.descendants().some(function (d) {\n return matches$1(check.descendant, d);\n });\n};\n\nmatch[Type.COMPOUND_SPLIT] = function (check, ele) {\n return matches$1(check.subject, ele) && matches$1(check.left, ele) && matches$1(check.right, ele);\n};\n\nmatch[Type.TRUE] = function () {\n return true;\n};\n\nmatch[Type.COLLECTION] = function (check, ele) {\n var collection = check.value;\n return collection.has(ele);\n};\n\nmatch[Type.FILTER] = function (check, ele) {\n var filter = check.value;\n return filter(ele);\n};\n\nvar filter = function filter(collection) {\n var self = this; // for 1 id #foo queries, just get the element\n\n if (self.length === 1 && self[0].checks.length === 1 && self[0].checks[0].type === Type.ID) {\n return collection.getElementById(self[0].checks[0].value).collection();\n }\n\n var selectorFunction = function selectorFunction(element) {\n for (var j = 0; j < self.length; j++) {\n var query = self[j];\n\n if (matches$1(query, element)) {\n return true;\n }\n }\n\n return false;\n };\n\n if (self.text() == null) {\n selectorFunction = function selectorFunction() {\n return true;\n };\n }\n\n return collection.filter(selectorFunction);\n}; // filter\n// does selector match a single element?\n\n\nvar matches = function matches(ele) {\n var self = this;\n\n for (var j = 0; j < self.length; j++) {\n var query = self[j];\n\n if (matches$1(query, ele)) {\n return true;\n }\n }\n\n return false;\n}; // matches\n\n\nvar matching = {\n matches: matches,\n filter: filter\n};\n\nvar Selector = function Selector(selector) {\n this.inputText = selector;\n this.currentSubject = null;\n this.compoundCount = 0;\n this.edgeCount = 0;\n this.length = 0;\n\n if (selector == null || string(selector) && selector.match(/^\\s*$/)) ; else if (elementOrCollection(selector)) {\n this.addQuery({\n checks: [{\n type: Type.COLLECTION,\n value: selector.collection()\n }]\n });\n } else if (fn$6(selector)) {\n this.addQuery({\n checks: [{\n type: Type.FILTER,\n value: selector\n }]\n });\n } else if (string(selector)) {\n if (!this.parse(selector)) {\n this.invalid = true;\n }\n } else {\n error('A selector must be created from a string; found ');\n }\n};\n\nvar selfn = Selector.prototype;\n[parse$1, matching].forEach(function (p) {\n return extend(selfn, p);\n});\n\nselfn.text = function () {\n return this.inputText;\n};\n\nselfn.size = function () {\n return this.length;\n};\n\nselfn.eq = function (i) {\n return this[i];\n};\n\nselfn.sameText = function (otherSel) {\n return !this.invalid && !otherSel.invalid && this.text() === otherSel.text();\n};\n\nselfn.addQuery = function (q) {\n this[this.length++] = q;\n};\n\nselfn.selector = selfn.toString;\n\nvar elesfn$g = {\n allAre: function allAre(selector) {\n var selObj = new Selector(selector);\n return this.every(function (ele) {\n return selObj.matches(ele);\n });\n },\n is: function is(selector) {\n var selObj = new Selector(selector);\n return this.some(function (ele) {\n return selObj.matches(ele);\n });\n },\n some: function some(fn, thisArg) {\n for (var i = 0; i < this.length; i++) {\n var ret = !thisArg ? fn(this[i], i, this) : fn.apply(thisArg, [this[i], i, this]);\n\n if (ret) {\n return true;\n }\n }\n\n return false;\n },\n every: function every(fn, thisArg) {\n for (var i = 0; i < this.length; i++) {\n var ret = !thisArg ? fn(this[i], i, this) : fn.apply(thisArg, [this[i], i, this]);\n\n if (!ret) {\n return false;\n }\n }\n\n return true;\n },\n same: function same(collection) {\n // cheap collection ref check\n if (this === collection) {\n return true;\n }\n\n collection = this.cy().collection(collection);\n var thisLength = this.length;\n var collectionLength = collection.length; // cheap length check\n\n if (thisLength !== collectionLength) {\n return false;\n } // cheap element ref check\n\n\n if (thisLength === 1) {\n return this[0] === collection[0];\n }\n\n return this.every(function (ele) {\n return collection.hasElementWithId(ele.id());\n });\n },\n anySame: function anySame(collection) {\n collection = this.cy().collection(collection);\n return this.some(function (ele) {\n return collection.hasElementWithId(ele.id());\n });\n },\n allAreNeighbors: function allAreNeighbors(collection) {\n collection = this.cy().collection(collection);\n var nhood = this.neighborhood();\n return collection.every(function (ele) {\n return nhood.hasElementWithId(ele.id());\n });\n },\n contains: function contains(collection) {\n collection = this.cy().collection(collection);\n var self = this;\n return collection.every(function (ele) {\n return self.hasElementWithId(ele.id());\n });\n }\n};\nelesfn$g.allAreNeighbours = elesfn$g.allAreNeighbors;\nelesfn$g.has = elesfn$g.contains;\nelesfn$g.equal = elesfn$g.equals = elesfn$g.same;\n\nvar cache = function cache(fn, name) {\n return function traversalCache(arg1, arg2, arg3, arg4) {\n var selectorOrEles = arg1;\n var eles = this;\n var key;\n\n if (selectorOrEles == null) {\n key = '';\n } else if (elementOrCollection(selectorOrEles) && selectorOrEles.length === 1) {\n key = selectorOrEles.id();\n }\n\n if (eles.length === 1 && key) {\n var _p = eles[0]._private;\n var tch = _p.traversalCache = _p.traversalCache || {};\n var ch = tch[name] = tch[name] || [];\n var hash = hashString(key);\n var cacheHit = ch[hash];\n\n if (cacheHit) {\n return cacheHit;\n } else {\n return ch[hash] = fn.call(eles, arg1, arg2, arg3, arg4);\n }\n } else {\n return fn.call(eles, arg1, arg2, arg3, arg4);\n }\n };\n};\n\nvar elesfn$f = {\n parent: function parent(selector) {\n var parents = []; // optimisation for single ele call\n\n if (this.length === 1) {\n var parent = this[0]._private.parent;\n\n if (parent) {\n return parent;\n }\n }\n\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n var _parent = ele._private.parent;\n\n if (_parent) {\n parents.push(_parent);\n }\n }\n\n return this.spawn(parents, true).filter(selector);\n },\n parents: function parents(selector) {\n var parents = [];\n var eles = this.parent();\n\n while (eles.nonempty()) {\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n parents.push(ele);\n }\n\n eles = eles.parent();\n }\n\n return this.spawn(parents, true).filter(selector);\n },\n commonAncestors: function commonAncestors(selector) {\n var ancestors;\n\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n var parents = ele.parents();\n ancestors = ancestors || parents;\n ancestors = ancestors.intersect(parents); // current list must be common with current ele parents set\n }\n\n return ancestors.filter(selector);\n },\n orphans: function orphans(selector) {\n return this.stdFilter(function (ele) {\n return ele.isOrphan();\n }).filter(selector);\n },\n nonorphans: function nonorphans(selector) {\n return this.stdFilter(function (ele) {\n return ele.isChild();\n }).filter(selector);\n },\n children: cache(function (selector) {\n var children = [];\n\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n var eleChildren = ele._private.children;\n\n for (var j = 0; j < eleChildren.length; j++) {\n children.push(eleChildren[j]);\n }\n }\n\n return this.spawn(children, true).filter(selector);\n }, 'children'),\n siblings: function siblings(selector) {\n return this.parent().children().not(this).filter(selector);\n },\n isParent: function isParent() {\n var ele = this[0];\n\n if (ele) {\n return ele.isNode() && ele._private.children.length !== 0;\n }\n },\n isChildless: function isChildless() {\n var ele = this[0];\n\n if (ele) {\n return ele.isNode() && ele._private.children.length === 0;\n }\n },\n isChild: function isChild() {\n var ele = this[0];\n\n if (ele) {\n return ele.isNode() && ele._private.parent != null;\n }\n },\n isOrphan: function isOrphan() {\n var ele = this[0];\n\n if (ele) {\n return ele.isNode() && ele._private.parent == null;\n }\n },\n descendants: function descendants(selector) {\n var elements = [];\n\n function add(eles) {\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n elements.push(ele);\n\n if (ele.children().nonempty()) {\n add(ele.children());\n }\n }\n }\n\n add(this.children());\n return this.spawn(elements, true).filter(selector);\n }\n};\n\nfunction forEachCompound(eles, fn, includeSelf, recursiveStep) {\n var q = [];\n var did = new Set$1();\n var cy = eles.cy();\n var hasCompounds = cy.hasCompoundNodes();\n\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n\n if (includeSelf) {\n q.push(ele);\n } else if (hasCompounds) {\n recursiveStep(q, did, ele);\n }\n }\n\n while (q.length > 0) {\n var _ele = q.shift();\n\n fn(_ele);\n did.add(_ele.id());\n\n if (hasCompounds) {\n recursiveStep(q, did, _ele);\n }\n }\n\n return eles;\n}\n\nfunction addChildren(q, did, ele) {\n if (ele.isParent()) {\n var children = ele._private.children;\n\n for (var i = 0; i < children.length; i++) {\n var child = children[i];\n\n if (!did.has(child.id())) {\n q.push(child);\n }\n }\n }\n} // very efficient version of eles.add( eles.descendants() ).forEach()\n// for internal use\n\n\nelesfn$f.forEachDown = function (fn) {\n var includeSelf = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n return forEachCompound(this, fn, includeSelf, addChildren);\n};\n\nfunction addParent(q, did, ele) {\n if (ele.isChild()) {\n var parent = ele._private.parent;\n\n if (!did.has(parent.id())) {\n q.push(parent);\n }\n }\n}\n\nelesfn$f.forEachUp = function (fn) {\n var includeSelf = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n return forEachCompound(this, fn, includeSelf, addParent);\n};\n\nfunction addParentAndChildren(q, did, ele) {\n addParent(q, did, ele);\n addChildren(q, did, ele);\n}\n\nelesfn$f.forEachUpAndDown = function (fn) {\n var includeSelf = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n return forEachCompound(this, fn, includeSelf, addParentAndChildren);\n}; // aliases\n\n\nelesfn$f.ancestors = elesfn$f.parents;\n\nvar fn$5, elesfn$e;\nfn$5 = elesfn$e = {\n data: define.data({\n field: 'data',\n bindingEvent: 'data',\n allowBinding: true,\n allowSetting: true,\n settingEvent: 'data',\n settingTriggersEvent: true,\n triggerFnName: 'trigger',\n allowGetting: true,\n immutableKeys: {\n 'id': true,\n 'source': true,\n 'target': true,\n 'parent': true\n },\n updateStyle: true\n }),\n removeData: define.removeData({\n field: 'data',\n event: 'data',\n triggerFnName: 'trigger',\n triggerEvent: true,\n immutableKeys: {\n 'id': true,\n 'source': true,\n 'target': true,\n 'parent': true\n },\n updateStyle: true\n }),\n scratch: define.data({\n field: 'scratch',\n bindingEvent: 'scratch',\n allowBinding: true,\n allowSetting: true,\n settingEvent: 'scratch',\n settingTriggersEvent: true,\n triggerFnName: 'trigger',\n allowGetting: true,\n updateStyle: true\n }),\n removeScratch: define.removeData({\n field: 'scratch',\n event: 'scratch',\n triggerFnName: 'trigger',\n triggerEvent: true,\n updateStyle: true\n }),\n rscratch: define.data({\n field: 'rscratch',\n allowBinding: false,\n allowSetting: true,\n settingTriggersEvent: false,\n allowGetting: true\n }),\n removeRscratch: define.removeData({\n field: 'rscratch',\n triggerEvent: false\n }),\n id: function id() {\n var ele = this[0];\n\n if (ele) {\n return ele._private.data.id;\n }\n }\n}; // aliases\n\nfn$5.attr = fn$5.data;\nfn$5.removeAttr = fn$5.removeData;\nvar data = elesfn$e;\n\nvar elesfn$d = {};\n\nfunction defineDegreeFunction(callback) {\n return function (includeLoops) {\n var self = this;\n\n if (includeLoops === undefined) {\n includeLoops = true;\n }\n\n if (self.length === 0) {\n return;\n }\n\n if (self.isNode() && !self.removed()) {\n var degree = 0;\n var node = self[0];\n var connectedEdges = node._private.edges;\n\n for (var i = 0; i < connectedEdges.length; i++) {\n var edge = connectedEdges[i];\n\n if (!includeLoops && edge.isLoop()) {\n continue;\n }\n\n degree += callback(node, edge);\n }\n\n return degree;\n } else {\n return;\n }\n };\n}\n\nextend(elesfn$d, {\n degree: defineDegreeFunction(function (node, edge) {\n if (edge.source().same(edge.target())) {\n return 2;\n } else {\n return 1;\n }\n }),\n indegree: defineDegreeFunction(function (node, edge) {\n if (edge.target().same(node)) {\n return 1;\n } else {\n return 0;\n }\n }),\n outdegree: defineDegreeFunction(function (node, edge) {\n if (edge.source().same(node)) {\n return 1;\n } else {\n return 0;\n }\n })\n});\n\nfunction defineDegreeBoundsFunction(degreeFn, callback) {\n return function (includeLoops) {\n var ret;\n var nodes = this.nodes();\n\n for (var i = 0; i < nodes.length; i++) {\n var ele = nodes[i];\n var degree = ele[degreeFn](includeLoops);\n\n if (degree !== undefined && (ret === undefined || callback(degree, ret))) {\n ret = degree;\n }\n }\n\n return ret;\n };\n}\n\nextend(elesfn$d, {\n minDegree: defineDegreeBoundsFunction('degree', function (degree, min) {\n return degree < min;\n }),\n maxDegree: defineDegreeBoundsFunction('degree', function (degree, max) {\n return degree > max;\n }),\n minIndegree: defineDegreeBoundsFunction('indegree', function (degree, min) {\n return degree < min;\n }),\n maxIndegree: defineDegreeBoundsFunction('indegree', function (degree, max) {\n return degree > max;\n }),\n minOutdegree: defineDegreeBoundsFunction('outdegree', function (degree, min) {\n return degree < min;\n }),\n maxOutdegree: defineDegreeBoundsFunction('outdegree', function (degree, max) {\n return degree > max;\n })\n});\nextend(elesfn$d, {\n totalDegree: function totalDegree(includeLoops) {\n var total = 0;\n var nodes = this.nodes();\n\n for (var i = 0; i < nodes.length; i++) {\n total += nodes[i].degree(includeLoops);\n }\n\n return total;\n }\n});\n\nvar fn$4, elesfn$c;\n\nvar beforePositionSet = function beforePositionSet(eles, newPos, silent) {\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n\n if (!ele.locked()) {\n var oldPos = ele._private.position;\n var delta = {\n x: newPos.x != null ? newPos.x - oldPos.x : 0,\n y: newPos.y != null ? newPos.y - oldPos.y : 0\n };\n\n if (ele.isParent() && !(delta.x === 0 && delta.y === 0)) {\n ele.children().shift(delta, silent);\n }\n\n ele.dirtyBoundingBoxCache();\n }\n }\n};\n\nvar positionDef = {\n field: 'position',\n bindingEvent: 'position',\n allowBinding: true,\n allowSetting: true,\n settingEvent: 'position',\n settingTriggersEvent: true,\n triggerFnName: 'emitAndNotify',\n allowGetting: true,\n validKeys: ['x', 'y'],\n beforeGet: function beforeGet(ele) {\n ele.updateCompoundBounds();\n },\n beforeSet: function beforeSet(eles, newPos) {\n beforePositionSet(eles, newPos, false);\n },\n onSet: function onSet(eles) {\n eles.dirtyCompoundBoundsCache();\n },\n canSet: function canSet(ele) {\n return !ele.locked();\n }\n};\nfn$4 = elesfn$c = {\n position: define.data(positionDef),\n // position but no notification to renderer\n silentPosition: define.data(extend({}, positionDef, {\n allowBinding: false,\n allowSetting: true,\n settingTriggersEvent: false,\n allowGetting: false,\n beforeSet: function beforeSet(eles, newPos) {\n beforePositionSet(eles, newPos, true);\n },\n onSet: function onSet(eles) {\n eles.dirtyCompoundBoundsCache();\n }\n })),\n positions: function positions(pos, silent) {\n if (plainObject(pos)) {\n if (silent) {\n this.silentPosition(pos);\n } else {\n this.position(pos);\n }\n } else if (fn$6(pos)) {\n var _fn = pos;\n var cy = this.cy();\n cy.startBatch();\n\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n\n var _pos = void 0;\n\n if (_pos = _fn(ele, i)) {\n if (silent) {\n ele.silentPosition(_pos);\n } else {\n ele.position(_pos);\n }\n }\n }\n\n cy.endBatch();\n }\n\n return this; // chaining\n },\n silentPositions: function silentPositions(pos) {\n return this.positions(pos, true);\n },\n shift: function shift(dim, val, silent) {\n var delta;\n\n if (plainObject(dim)) {\n delta = {\n x: number$1(dim.x) ? dim.x : 0,\n y: number$1(dim.y) ? dim.y : 0\n };\n silent = val;\n } else if (string(dim) && number$1(val)) {\n delta = {\n x: 0,\n y: 0\n };\n delta[dim] = val;\n }\n\n if (delta != null) {\n var cy = this.cy();\n cy.startBatch();\n\n for (var i = 0; i < this.length; i++) {\n var ele = this[i]; // exclude any node that is a descendant of the calling collection\n\n if (cy.hasCompoundNodes() && ele.isChild() && ele.ancestors().anySame(this)) {\n continue;\n }\n\n var pos = ele.position();\n var newPos = {\n x: pos.x + delta.x,\n y: pos.y + delta.y\n };\n\n if (silent) {\n ele.silentPosition(newPos);\n } else {\n ele.position(newPos);\n }\n }\n\n cy.endBatch();\n }\n\n return this;\n },\n silentShift: function silentShift(dim, val) {\n if (plainObject(dim)) {\n this.shift(dim, true);\n } else if (string(dim) && number$1(val)) {\n this.shift(dim, val, true);\n }\n\n return this;\n },\n // get/set the rendered (i.e. on screen) positon of the element\n renderedPosition: function renderedPosition(dim, val) {\n var ele = this[0];\n var cy = this.cy();\n var zoom = cy.zoom();\n var pan = cy.pan();\n var rpos = plainObject(dim) ? dim : undefined;\n var setting = rpos !== undefined || val !== undefined && string(dim);\n\n if (ele && ele.isNode()) {\n // must have an element and must be a node to return position\n if (setting) {\n for (var i = 0; i < this.length; i++) {\n var _ele = this[i];\n\n if (val !== undefined) {\n // set one dimension\n _ele.position(dim, (val - pan[dim]) / zoom);\n } else if (rpos !== undefined) {\n // set whole position\n _ele.position(renderedToModelPosition(rpos, zoom, pan));\n }\n }\n } else {\n // getting\n var pos = ele.position();\n rpos = modelToRenderedPosition(pos, zoom, pan);\n\n if (dim === undefined) {\n // then return the whole rendered position\n return rpos;\n } else {\n // then return the specified dimension\n return rpos[dim];\n }\n }\n } else if (!setting) {\n return undefined; // for empty collection case\n }\n\n return this; // chaining\n },\n // get/set the position relative to the parent\n relativePosition: function relativePosition(dim, val) {\n var ele = this[0];\n var cy = this.cy();\n var ppos = plainObject(dim) ? dim : undefined;\n var setting = ppos !== undefined || val !== undefined && string(dim);\n var hasCompoundNodes = cy.hasCompoundNodes();\n\n if (ele && ele.isNode()) {\n // must have an element and must be a node to return position\n if (setting) {\n for (var i = 0; i < this.length; i++) {\n var _ele2 = this[i];\n var parent = hasCompoundNodes ? _ele2.parent() : null;\n var hasParent = parent && parent.length > 0;\n var relativeToParent = hasParent;\n\n if (hasParent) {\n parent = parent[0];\n }\n\n var origin = relativeToParent ? parent.position() : {\n x: 0,\n y: 0\n };\n\n if (val !== undefined) {\n // set one dimension\n _ele2.position(dim, val + origin[dim]);\n } else if (ppos !== undefined) {\n // set whole position\n _ele2.position({\n x: ppos.x + origin.x,\n y: ppos.y + origin.y\n });\n }\n }\n } else {\n // getting\n var pos = ele.position();\n\n var _parent = hasCompoundNodes ? ele.parent() : null;\n\n var _hasParent = _parent && _parent.length > 0;\n\n var _relativeToParent = _hasParent;\n\n if (_hasParent) {\n _parent = _parent[0];\n }\n\n var _origin = _relativeToParent ? _parent.position() : {\n x: 0,\n y: 0\n };\n\n ppos = {\n x: pos.x - _origin.x,\n y: pos.y - _origin.y\n };\n\n if (dim === undefined) {\n // then return the whole rendered position\n return ppos;\n } else {\n // then return the specified dimension\n return ppos[dim];\n }\n }\n } else if (!setting) {\n return undefined; // for empty collection case\n }\n\n return this; // chaining\n }\n}; // aliases\n\nfn$4.modelPosition = fn$4.point = fn$4.position;\nfn$4.modelPositions = fn$4.points = fn$4.positions;\nfn$4.renderedPoint = fn$4.renderedPosition;\nfn$4.relativePoint = fn$4.relativePosition;\nvar position = elesfn$c;\n\nvar fn$3, elesfn$b;\nfn$3 = elesfn$b = {};\n\nelesfn$b.renderedBoundingBox = function (options) {\n var bb = this.boundingBox(options);\n var cy = this.cy();\n var zoom = cy.zoom();\n var pan = cy.pan();\n var x1 = bb.x1 * zoom + pan.x;\n var x2 = bb.x2 * zoom + pan.x;\n var y1 = bb.y1 * zoom + pan.y;\n var y2 = bb.y2 * zoom + pan.y;\n return {\n x1: x1,\n x2: x2,\n y1: y1,\n y2: y2,\n w: x2 - x1,\n h: y2 - y1\n };\n};\n\nelesfn$b.dirtyCompoundBoundsCache = function () {\n var silent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n var cy = this.cy();\n\n if (!cy.styleEnabled() || !cy.hasCompoundNodes()) {\n return this;\n }\n\n this.forEachUp(function (ele) {\n if (ele.isParent()) {\n var _p = ele._private;\n _p.compoundBoundsClean = false;\n _p.bbCache = null;\n\n if (!silent) {\n ele.emitAndNotify('bounds');\n }\n }\n });\n return this;\n};\n\nelesfn$b.updateCompoundBounds = function () {\n var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n var cy = this.cy(); // not possible to do on non-compound graphs or with the style disabled\n\n if (!cy.styleEnabled() || !cy.hasCompoundNodes()) {\n return this;\n } // save cycles when batching -- but bounds will be stale (or not exist yet)\n\n\n if (!force && cy.batching()) {\n return this;\n }\n\n function update(parent) {\n if (!parent.isParent()) {\n return;\n }\n\n var _p = parent._private;\n var children = parent.children();\n var includeLabels = parent.pstyle('compound-sizing-wrt-labels').value === 'include';\n var min = {\n width: {\n val: parent.pstyle('min-width').pfValue,\n left: parent.pstyle('min-width-bias-left'),\n right: parent.pstyle('min-width-bias-right')\n },\n height: {\n val: parent.pstyle('min-height').pfValue,\n top: parent.pstyle('min-height-bias-top'),\n bottom: parent.pstyle('min-height-bias-bottom')\n }\n };\n var bb = children.boundingBox({\n includeLabels: includeLabels,\n includeOverlays: false,\n // updating the compound bounds happens outside of the regular\n // cache cycle (i.e. before fired events)\n useCache: false\n });\n var pos = _p.position; // if children take up zero area then keep position and fall back on stylesheet w/h\n\n if (bb.w === 0 || bb.h === 0) {\n bb = {\n w: parent.pstyle('width').pfValue,\n h: parent.pstyle('height').pfValue\n };\n bb.x1 = pos.x - bb.w / 2;\n bb.x2 = pos.x + bb.w / 2;\n bb.y1 = pos.y - bb.h / 2;\n bb.y2 = pos.y + bb.h / 2;\n }\n\n function computeBiasValues(propDiff, propBias, propBiasComplement) {\n var biasDiff = 0;\n var biasComplementDiff = 0;\n var biasTotal = propBias + propBiasComplement;\n\n if (propDiff > 0 && biasTotal > 0) {\n biasDiff = propBias / biasTotal * propDiff;\n biasComplementDiff = propBiasComplement / biasTotal * propDiff;\n }\n\n return {\n biasDiff: biasDiff,\n biasComplementDiff: biasComplementDiff\n };\n }\n\n function computePaddingValues(width, height, paddingObject, relativeTo) {\n // Assuming percentage is number from 0 to 1\n if (paddingObject.units === '%') {\n switch (relativeTo) {\n case 'width':\n return width > 0 ? paddingObject.pfValue * width : 0;\n\n case 'height':\n return height > 0 ? paddingObject.pfValue * height : 0;\n\n case 'average':\n return width > 0 && height > 0 ? paddingObject.pfValue * (width + height) / 2 : 0;\n\n case 'min':\n return width > 0 && height > 0 ? width > height ? paddingObject.pfValue * height : paddingObject.pfValue * width : 0;\n\n case 'max':\n return width > 0 && height > 0 ? width > height ? paddingObject.pfValue * width : paddingObject.pfValue * height : 0;\n\n default:\n return 0;\n }\n } else if (paddingObject.units === 'px') {\n return paddingObject.pfValue;\n } else {\n return 0;\n }\n }\n\n var leftVal = min.width.left.value;\n\n if (min.width.left.units === 'px' && min.width.val > 0) {\n leftVal = leftVal * 100 / min.width.val;\n }\n\n var rightVal = min.width.right.value;\n\n if (min.width.right.units === 'px' && min.width.val > 0) {\n rightVal = rightVal * 100 / min.width.val;\n }\n\n var topVal = min.height.top.value;\n\n if (min.height.top.units === 'px' && min.height.val > 0) {\n topVal = topVal * 100 / min.height.val;\n }\n\n var bottomVal = min.height.bottom.value;\n\n if (min.height.bottom.units === 'px' && min.height.val > 0) {\n bottomVal = bottomVal * 100 / min.height.val;\n }\n\n var widthBiasDiffs = computeBiasValues(min.width.val - bb.w, leftVal, rightVal);\n var diffLeft = widthBiasDiffs.biasDiff;\n var diffRight = widthBiasDiffs.biasComplementDiff;\n var heightBiasDiffs = computeBiasValues(min.height.val - bb.h, topVal, bottomVal);\n var diffTop = heightBiasDiffs.biasDiff;\n var diffBottom = heightBiasDiffs.biasComplementDiff;\n _p.autoPadding = computePaddingValues(bb.w, bb.h, parent.pstyle('padding'), parent.pstyle('padding-relative-to').value);\n _p.autoWidth = Math.max(bb.w, min.width.val);\n pos.x = (-diffLeft + bb.x1 + bb.x2 + diffRight) / 2;\n _p.autoHeight = Math.max(bb.h, min.height.val);\n pos.y = (-diffTop + bb.y1 + bb.y2 + diffBottom) / 2;\n }\n\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n var _p = ele._private;\n\n if (!_p.compoundBoundsClean || force) {\n update(ele);\n\n if (!cy.batching()) {\n _p.compoundBoundsClean = true;\n }\n }\n }\n\n return this;\n};\n\nvar noninf = function noninf(x) {\n if (x === Infinity || x === -Infinity) {\n return 0;\n }\n\n return x;\n};\n\nvar updateBounds = function updateBounds(b, x1, y1, x2, y2) {\n // don't update with zero area boxes\n if (x2 - x1 === 0 || y2 - y1 === 0) {\n return;\n } // don't update with null dim\n\n\n if (x1 == null || y1 == null || x2 == null || y2 == null) {\n return;\n }\n\n b.x1 = x1 < b.x1 ? x1 : b.x1;\n b.x2 = x2 > b.x2 ? x2 : b.x2;\n b.y1 = y1 < b.y1 ? y1 : b.y1;\n b.y2 = y2 > b.y2 ? y2 : b.y2;\n b.w = b.x2 - b.x1;\n b.h = b.y2 - b.y1;\n};\n\nvar updateBoundsFromBox = function updateBoundsFromBox(b, b2) {\n if (b2 == null) {\n return b;\n }\n\n return updateBounds(b, b2.x1, b2.y1, b2.x2, b2.y2);\n};\n\nvar prefixedProperty = function prefixedProperty(obj, field, prefix) {\n return getPrefixedProperty(obj, field, prefix);\n};\n\nvar updateBoundsFromArrow = function updateBoundsFromArrow(bounds, ele, prefix) {\n if (ele.cy().headless()) {\n return;\n }\n\n var _p = ele._private;\n var rstyle = _p.rstyle;\n var halfArW = rstyle.arrowWidth / 2;\n var arrowType = ele.pstyle(prefix + '-arrow-shape').value;\n var x;\n var y;\n\n if (arrowType !== 'none') {\n if (prefix === 'source') {\n x = rstyle.srcX;\n y = rstyle.srcY;\n } else if (prefix === 'target') {\n x = rstyle.tgtX;\n y = rstyle.tgtY;\n } else {\n x = rstyle.midX;\n y = rstyle.midY;\n } // always store the individual arrow bounds\n\n\n var bbs = _p.arrowBounds = _p.arrowBounds || {};\n var bb = bbs[prefix] = bbs[prefix] || {};\n bb.x1 = x - halfArW;\n bb.y1 = y - halfArW;\n bb.x2 = x + halfArW;\n bb.y2 = y + halfArW;\n bb.w = bb.x2 - bb.x1;\n bb.h = bb.y2 - bb.y1;\n expandBoundingBox(bb, 1);\n updateBounds(bounds, bb.x1, bb.y1, bb.x2, bb.y2);\n }\n};\n\nvar updateBoundsFromLabel = function updateBoundsFromLabel(bounds, ele, prefix) {\n if (ele.cy().headless()) {\n return;\n }\n\n var prefixDash;\n\n if (prefix) {\n prefixDash = prefix + '-';\n } else {\n prefixDash = '';\n }\n\n var _p = ele._private;\n var rstyle = _p.rstyle;\n var label = ele.pstyle(prefixDash + 'label').strValue;\n\n if (label) {\n var halign = ele.pstyle('text-halign');\n var valign = ele.pstyle('text-valign');\n var labelWidth = prefixedProperty(rstyle, 'labelWidth', prefix);\n var labelHeight = prefixedProperty(rstyle, 'labelHeight', prefix);\n var labelX = prefixedProperty(rstyle, 'labelX', prefix);\n var labelY = prefixedProperty(rstyle, 'labelY', prefix);\n var marginX = ele.pstyle(prefixDash + 'text-margin-x').pfValue;\n var marginY = ele.pstyle(prefixDash + 'text-margin-y').pfValue;\n var isEdge = ele.isEdge();\n var rotation = ele.pstyle(prefixDash + 'text-rotation');\n var outlineWidth = ele.pstyle('text-outline-width').pfValue;\n var borderWidth = ele.pstyle('text-border-width').pfValue;\n var halfBorderWidth = borderWidth / 2;\n var padding = ele.pstyle('text-background-padding').pfValue;\n var marginOfError = 2; // expand to work around browser dimension inaccuracies\n\n var lh = labelHeight;\n var lw = labelWidth;\n var lw_2 = lw / 2;\n var lh_2 = lh / 2;\n var lx1, lx2, ly1, ly2;\n\n if (isEdge) {\n lx1 = labelX - lw_2;\n lx2 = labelX + lw_2;\n ly1 = labelY - lh_2;\n ly2 = labelY + lh_2;\n } else {\n switch (halign.value) {\n case 'left':\n lx1 = labelX - lw;\n lx2 = labelX;\n break;\n\n case 'center':\n lx1 = labelX - lw_2;\n lx2 = labelX + lw_2;\n break;\n\n case 'right':\n lx1 = labelX;\n lx2 = labelX + lw;\n break;\n }\n\n switch (valign.value) {\n case 'top':\n ly1 = labelY - lh;\n ly2 = labelY;\n break;\n\n case 'center':\n ly1 = labelY - lh_2;\n ly2 = labelY + lh_2;\n break;\n\n case 'bottom':\n ly1 = labelY;\n ly2 = labelY + lh;\n break;\n }\n } // shift by margin and expand by outline and border\n\n\n lx1 += marginX - Math.max(outlineWidth, halfBorderWidth) - padding - marginOfError;\n lx2 += marginX + Math.max(outlineWidth, halfBorderWidth) + padding + marginOfError;\n ly1 += marginY - Math.max(outlineWidth, halfBorderWidth) - padding - marginOfError;\n ly2 += marginY + Math.max(outlineWidth, halfBorderWidth) + padding + marginOfError; // always store the unrotated label bounds separately\n\n var bbPrefix = prefix || 'main';\n var bbs = _p.labelBounds;\n var bb = bbs[bbPrefix] = bbs[bbPrefix] || {};\n bb.x1 = lx1;\n bb.y1 = ly1;\n bb.x2 = lx2;\n bb.y2 = ly2;\n bb.w = lx2 - lx1;\n bb.h = ly2 - ly1;\n var isAutorotate = isEdge && rotation.strValue === 'autorotate';\n var isPfValue = rotation.pfValue != null && rotation.pfValue !== 0;\n\n if (isAutorotate || isPfValue) {\n var theta = isAutorotate ? prefixedProperty(_p.rstyle, 'labelAngle', prefix) : rotation.pfValue;\n var cos = Math.cos(theta);\n var sin = Math.sin(theta); // rotation point (default value for center-center)\n\n var xo = (lx1 + lx2) / 2;\n var yo = (ly1 + ly2) / 2;\n\n if (!isEdge) {\n switch (halign.value) {\n case 'left':\n xo = lx2;\n break;\n\n case 'right':\n xo = lx1;\n break;\n }\n\n switch (valign.value) {\n case 'top':\n yo = ly2;\n break;\n\n case 'bottom':\n yo = ly1;\n break;\n }\n }\n\n var rotate = function rotate(x, y) {\n x = x - xo;\n y = y - yo;\n return {\n x: x * cos - y * sin + xo,\n y: x * sin + y * cos + yo\n };\n };\n\n var px1y1 = rotate(lx1, ly1);\n var px1y2 = rotate(lx1, ly2);\n var px2y1 = rotate(lx2, ly1);\n var px2y2 = rotate(lx2, ly2);\n lx1 = Math.min(px1y1.x, px1y2.x, px2y1.x, px2y2.x);\n lx2 = Math.max(px1y1.x, px1y2.x, px2y1.x, px2y2.x);\n ly1 = Math.min(px1y1.y, px1y2.y, px2y1.y, px2y2.y);\n ly2 = Math.max(px1y1.y, px1y2.y, px2y1.y, px2y2.y);\n }\n\n var bbPrefixRot = bbPrefix + 'Rot';\n var bbRot = bbs[bbPrefixRot] = bbs[bbPrefixRot] || {};\n bbRot.x1 = lx1;\n bbRot.y1 = ly1;\n bbRot.x2 = lx2;\n bbRot.y2 = ly2;\n bbRot.w = lx2 - lx1;\n bbRot.h = ly2 - ly1;\n updateBounds(bounds, lx1, ly1, lx2, ly2);\n updateBounds(_p.labelBounds.all, lx1, ly1, lx2, ly2);\n }\n\n return bounds;\n}; // get the bounding box of the elements (in raw model position)\n\n\nvar boundingBoxImpl = function boundingBoxImpl(ele, options) {\n var cy = ele._private.cy;\n var styleEnabled = cy.styleEnabled();\n var headless = cy.headless();\n var bounds = makeBoundingBox();\n var _p = ele._private;\n var isNode = ele.isNode();\n var isEdge = ele.isEdge();\n var ex1, ex2, ey1, ey2; // extrema of body / lines\n\n var x, y; // node pos\n\n var rstyle = _p.rstyle;\n var manualExpansion = isNode && styleEnabled ? ele.pstyle('bounds-expansion').pfValue : [0]; // must use `display` prop only, as reading `compound.width()` causes recursion\n // (other factors like width values will be considered later in this function anyway)\n\n var isDisplayed = function isDisplayed(ele) {\n return ele.pstyle('display').value !== 'none';\n };\n\n var displayed = !styleEnabled || isDisplayed(ele) // must take into account connected nodes b/c of implicit edge hiding on display:none node\n && (!isEdge || isDisplayed(ele.source()) && isDisplayed(ele.target()));\n\n if (displayed) {\n // displayed suffices, since we will find zero area eles anyway\n var overlayOpacity = 0;\n var overlayPadding = 0;\n\n if (styleEnabled && options.includeOverlays) {\n overlayOpacity = ele.pstyle('overlay-opacity').value;\n\n if (overlayOpacity !== 0) {\n overlayPadding = ele.pstyle('overlay-padding').value;\n }\n }\n\n var underlayOpacity = 0;\n var underlayPadding = 0;\n\n if (styleEnabled && options.includeUnderlays) {\n underlayOpacity = ele.pstyle('underlay-opacity').value;\n\n if (underlayOpacity !== 0) {\n underlayPadding = ele.pstyle('underlay-padding').value;\n }\n }\n\n var padding = Math.max(overlayPadding, underlayPadding);\n var w = 0;\n var wHalf = 0;\n\n if (styleEnabled) {\n w = ele.pstyle('width').pfValue;\n wHalf = w / 2;\n }\n\n if (isNode && options.includeNodes) {\n var pos = ele.position();\n x = pos.x;\n y = pos.y;\n\n var _w = ele.outerWidth();\n\n var halfW = _w / 2;\n var h = ele.outerHeight();\n var halfH = h / 2; // handle node dimensions\n /////////////////////////\n\n ex1 = x - halfW;\n ex2 = x + halfW;\n ey1 = y - halfH;\n ey2 = y + halfH;\n updateBounds(bounds, ex1, ey1, ex2, ey2);\n } else if (isEdge && options.includeEdges) {\n if (styleEnabled && !headless) {\n var curveStyle = ele.pstyle('curve-style').strValue; // handle edge dimensions (rough box estimate)\n //////////////////////////////////////////////\n\n ex1 = Math.min(rstyle.srcX, rstyle.midX, rstyle.tgtX);\n ex2 = Math.max(rstyle.srcX, rstyle.midX, rstyle.tgtX);\n ey1 = Math.min(rstyle.srcY, rstyle.midY, rstyle.tgtY);\n ey2 = Math.max(rstyle.srcY, rstyle.midY, rstyle.tgtY); // take into account edge width\n\n ex1 -= wHalf;\n ex2 += wHalf;\n ey1 -= wHalf;\n ey2 += wHalf;\n updateBounds(bounds, ex1, ey1, ex2, ey2); // precise edges\n ////////////////\n\n if (curveStyle === 'haystack') {\n var hpts = rstyle.haystackPts;\n\n if (hpts && hpts.length === 2) {\n ex1 = hpts[0].x;\n ey1 = hpts[0].y;\n ex2 = hpts[1].x;\n ey2 = hpts[1].y;\n\n if (ex1 > ex2) {\n var temp = ex1;\n ex1 = ex2;\n ex2 = temp;\n }\n\n if (ey1 > ey2) {\n var _temp = ey1;\n ey1 = ey2;\n ey2 = _temp;\n }\n\n updateBounds(bounds, ex1 - wHalf, ey1 - wHalf, ex2 + wHalf, ey2 + wHalf);\n }\n } else if (curveStyle === 'bezier' || curveStyle === 'unbundled-bezier' || curveStyle === 'segments' || curveStyle === 'taxi') {\n var pts;\n\n switch (curveStyle) {\n case 'bezier':\n case 'unbundled-bezier':\n pts = rstyle.bezierPts;\n break;\n\n case 'segments':\n case 'taxi':\n pts = rstyle.linePts;\n break;\n }\n\n if (pts != null) {\n for (var j = 0; j < pts.length; j++) {\n var pt = pts[j];\n ex1 = pt.x - wHalf;\n ex2 = pt.x + wHalf;\n ey1 = pt.y - wHalf;\n ey2 = pt.y + wHalf;\n updateBounds(bounds, ex1, ey1, ex2, ey2);\n }\n }\n } // bezier-like or segment-like edge\n\n } else {\n // headless or style disabled\n // fallback on source and target positions\n //////////////////////////////////////////\n var n1 = ele.source();\n var n1pos = n1.position();\n var n2 = ele.target();\n var n2pos = n2.position();\n ex1 = n1pos.x;\n ex2 = n2pos.x;\n ey1 = n1pos.y;\n ey2 = n2pos.y;\n\n if (ex1 > ex2) {\n var _temp2 = ex1;\n ex1 = ex2;\n ex2 = _temp2;\n }\n\n if (ey1 > ey2) {\n var _temp3 = ey1;\n ey1 = ey2;\n ey2 = _temp3;\n } // take into account edge width\n\n\n ex1 -= wHalf;\n ex2 += wHalf;\n ey1 -= wHalf;\n ey2 += wHalf;\n updateBounds(bounds, ex1, ey1, ex2, ey2);\n } // headless or style disabled\n\n } // edges\n // handle edge arrow size\n /////////////////////////\n\n\n if (styleEnabled && options.includeEdges && isEdge) {\n updateBoundsFromArrow(bounds, ele, 'mid-source');\n updateBoundsFromArrow(bounds, ele, 'mid-target');\n updateBoundsFromArrow(bounds, ele, 'source');\n updateBoundsFromArrow(bounds, ele, 'target');\n } // ghost\n ////////\n\n\n if (styleEnabled) {\n var ghost = ele.pstyle('ghost').value === 'yes';\n\n if (ghost) {\n var gx = ele.pstyle('ghost-offset-x').pfValue;\n var gy = ele.pstyle('ghost-offset-y').pfValue;\n updateBounds(bounds, bounds.x1 + gx, bounds.y1 + gy, bounds.x2 + gx, bounds.y2 + gy);\n }\n } // always store the body bounds separately from the labels\n\n\n var bbBody = _p.bodyBounds = _p.bodyBounds || {};\n assignBoundingBox(bbBody, bounds);\n expandBoundingBoxSides(bbBody, manualExpansion);\n expandBoundingBox(bbBody, 1); // expand to work around browser dimension inaccuracies\n // overlay\n //////////\n\n if (styleEnabled) {\n ex1 = bounds.x1;\n ex2 = bounds.x2;\n ey1 = bounds.y1;\n ey2 = bounds.y2;\n updateBounds(bounds, ex1 - padding, ey1 - padding, ex2 + padding, ey2 + padding);\n } // always store the body bounds separately from the labels\n\n\n var bbOverlay = _p.overlayBounds = _p.overlayBounds || {};\n assignBoundingBox(bbOverlay, bounds);\n expandBoundingBoxSides(bbOverlay, manualExpansion);\n expandBoundingBox(bbOverlay, 1); // expand to work around browser dimension inaccuracies\n // handle label dimensions\n //////////////////////////\n\n var bbLabels = _p.labelBounds = _p.labelBounds || {};\n\n if (bbLabels.all != null) {\n clearBoundingBox(bbLabels.all);\n } else {\n bbLabels.all = makeBoundingBox();\n }\n\n if (styleEnabled && options.includeLabels) {\n if (options.includeMainLabels) {\n updateBoundsFromLabel(bounds, ele, null);\n }\n\n if (isEdge) {\n if (options.includeSourceLabels) {\n updateBoundsFromLabel(bounds, ele, 'source');\n }\n\n if (options.includeTargetLabels) {\n updateBoundsFromLabel(bounds, ele, 'target');\n }\n }\n } // style enabled for labels\n\n } // if displayed\n\n\n bounds.x1 = noninf(bounds.x1);\n bounds.y1 = noninf(bounds.y1);\n bounds.x2 = noninf(bounds.x2);\n bounds.y2 = noninf(bounds.y2);\n bounds.w = noninf(bounds.x2 - bounds.x1);\n bounds.h = noninf(bounds.y2 - bounds.y1);\n\n if (bounds.w > 0 && bounds.h > 0 && displayed) {\n expandBoundingBoxSides(bounds, manualExpansion); // expand bounds by 1 because antialiasing can increase the visual/effective size by 1 on all sides\n\n expandBoundingBox(bounds, 1);\n }\n\n return bounds;\n};\n\nvar getKey = function getKey(opts) {\n var i = 0;\n\n var tf = function tf(val) {\n return (val ? 1 : 0) << i++;\n };\n\n var key = 0;\n key += tf(opts.incudeNodes);\n key += tf(opts.includeEdges);\n key += tf(opts.includeLabels);\n key += tf(opts.includeMainLabels);\n key += tf(opts.includeSourceLabels);\n key += tf(opts.includeTargetLabels);\n key += tf(opts.includeOverlays);\n return key;\n};\n\nvar getBoundingBoxPosKey = function getBoundingBoxPosKey(ele) {\n if (ele.isEdge()) {\n var p1 = ele.source().position();\n var p2 = ele.target().position();\n\n var r = function r(x) {\n return Math.round(x);\n };\n\n return hashIntsArray([r(p1.x), r(p1.y), r(p2.x), r(p2.y)]);\n } else {\n return 0;\n }\n};\n\nvar cachedBoundingBoxImpl = function cachedBoundingBoxImpl(ele, opts) {\n var _p = ele._private;\n var bb;\n var isEdge = ele.isEdge();\n var key = opts == null ? defBbOptsKey : getKey(opts);\n var usingDefOpts = key === defBbOptsKey;\n var currPosKey = getBoundingBoxPosKey(ele);\n var isPosKeySame = _p.bbCachePosKey === currPosKey;\n var useCache = opts.useCache && isPosKeySame;\n\n var isDirty = function isDirty(ele) {\n return ele._private.bbCache == null || ele._private.styleDirty;\n };\n\n var needRecalc = !useCache || isDirty(ele) || isEdge && isDirty(ele.source()) || isDirty(ele.target());\n\n if (needRecalc) {\n if (!isPosKeySame) {\n ele.recalculateRenderedStyle(useCache);\n }\n\n bb = boundingBoxImpl(ele, defBbOpts);\n _p.bbCache = bb;\n _p.bbCachePosKey = currPosKey;\n } else {\n bb = _p.bbCache;\n } // not using def opts => need to build up bb from combination of sub bbs\n\n\n if (!usingDefOpts) {\n var isNode = ele.isNode();\n bb = makeBoundingBox();\n\n if (opts.includeNodes && isNode || opts.includeEdges && !isNode) {\n if (opts.includeOverlays) {\n updateBoundsFromBox(bb, _p.overlayBounds);\n } else {\n updateBoundsFromBox(bb, _p.bodyBounds);\n }\n }\n\n if (opts.includeLabels) {\n if (opts.includeMainLabels && (!isEdge || opts.includeSourceLabels && opts.includeTargetLabels)) {\n updateBoundsFromBox(bb, _p.labelBounds.all);\n } else {\n if (opts.includeMainLabels) {\n updateBoundsFromBox(bb, _p.labelBounds.mainRot);\n }\n\n if (opts.includeSourceLabels) {\n updateBoundsFromBox(bb, _p.labelBounds.sourceRot);\n }\n\n if (opts.includeTargetLabels) {\n updateBoundsFromBox(bb, _p.labelBounds.targetRot);\n }\n }\n }\n\n bb.w = bb.x2 - bb.x1;\n bb.h = bb.y2 - bb.y1;\n }\n\n return bb;\n};\n\nvar defBbOpts = {\n includeNodes: true,\n includeEdges: true,\n includeLabels: true,\n includeMainLabels: true,\n includeSourceLabels: true,\n includeTargetLabels: true,\n includeOverlays: true,\n includeUnderlays: true,\n useCache: true\n};\nvar defBbOptsKey = getKey(defBbOpts);\nvar filledBbOpts = defaults$g(defBbOpts);\n\nelesfn$b.boundingBox = function (options) {\n var bounds; // the main usecase is ele.boundingBox() for a single element with no/def options\n // specified s.t. the cache is used, so check for this case to make it faster by\n // avoiding the overhead of the rest of the function\n\n if (this.length === 1 && this[0]._private.bbCache != null && !this[0]._private.styleDirty && (options === undefined || options.useCache === undefined || options.useCache === true)) {\n if (options === undefined) {\n options = defBbOpts;\n } else {\n options = filledBbOpts(options);\n }\n\n bounds = cachedBoundingBoxImpl(this[0], options);\n } else {\n bounds = makeBoundingBox();\n options = options || defBbOpts;\n var opts = filledBbOpts(options);\n var eles = this;\n var cy = eles.cy();\n var styleEnabled = cy.styleEnabled();\n\n if (styleEnabled) {\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n var _p = ele._private;\n var currPosKey = getBoundingBoxPosKey(ele);\n var isPosKeySame = _p.bbCachePosKey === currPosKey;\n var useCache = opts.useCache && isPosKeySame && !_p.styleDirty;\n ele.recalculateRenderedStyle(useCache);\n }\n }\n\n this.updateCompoundBounds(!options.useCache);\n\n for (var _i = 0; _i < eles.length; _i++) {\n var _ele = eles[_i];\n updateBoundsFromBox(bounds, cachedBoundingBoxImpl(_ele, opts));\n }\n }\n\n bounds.x1 = noninf(bounds.x1);\n bounds.y1 = noninf(bounds.y1);\n bounds.x2 = noninf(bounds.x2);\n bounds.y2 = noninf(bounds.y2);\n bounds.w = noninf(bounds.x2 - bounds.x1);\n bounds.h = noninf(bounds.y2 - bounds.y1);\n return bounds;\n};\n\nelesfn$b.dirtyBoundingBoxCache = function () {\n for (var i = 0; i < this.length; i++) {\n var _p = this[i]._private;\n _p.bbCache = null;\n _p.bbCachePosKey = null;\n _p.bodyBounds = null;\n _p.overlayBounds = null;\n _p.labelBounds.all = null;\n _p.labelBounds.source = null;\n _p.labelBounds.target = null;\n _p.labelBounds.main = null;\n _p.labelBounds.sourceRot = null;\n _p.labelBounds.targetRot = null;\n _p.labelBounds.mainRot = null;\n _p.arrowBounds.source = null;\n _p.arrowBounds.target = null;\n _p.arrowBounds['mid-source'] = null;\n _p.arrowBounds['mid-target'] = null;\n }\n\n this.emitAndNotify('bounds');\n return this;\n}; // private helper to get bounding box for custom node positions\n// - good for perf in certain cases but currently requires dirtying the rendered style\n// - would be better to not modify the nodes but the nodes are read directly everywhere in the renderer...\n// - try to use for only things like discrete layouts where the node position would change anyway\n\n\nelesfn$b.boundingBoxAt = function (fn) {\n var nodes = this.nodes();\n var cy = this.cy();\n var hasCompoundNodes = cy.hasCompoundNodes();\n var parents = cy.collection();\n\n if (hasCompoundNodes) {\n parents = nodes.filter(function (node) {\n return node.isParent();\n });\n nodes = nodes.not(parents);\n }\n\n if (plainObject(fn)) {\n var obj = fn;\n\n fn = function fn() {\n return obj;\n };\n }\n\n var storeOldPos = function storeOldPos(node, i) {\n return node._private.bbAtOldPos = fn(node, i);\n };\n\n var getOldPos = function getOldPos(node) {\n return node._private.bbAtOldPos;\n };\n\n cy.startBatch();\n nodes.forEach(storeOldPos).silentPositions(fn);\n\n if (hasCompoundNodes) {\n parents.dirtyCompoundBoundsCache();\n parents.dirtyBoundingBoxCache();\n parents.updateCompoundBounds(true); // force update b/c we're inside a batch cycle\n }\n\n var bb = copyBoundingBox(this.boundingBox({\n useCache: false\n }));\n nodes.silentPositions(getOldPos);\n\n if (hasCompoundNodes) {\n parents.dirtyCompoundBoundsCache();\n parents.dirtyBoundingBoxCache();\n parents.updateCompoundBounds(true); // force update b/c we're inside a batch cycle\n }\n\n cy.endBatch();\n return bb;\n};\n\nfn$3.boundingbox = fn$3.bb = fn$3.boundingBox;\nfn$3.renderedBoundingbox = fn$3.renderedBoundingBox;\nvar bounds = elesfn$b;\n\nvar fn$2, elesfn$a;\nfn$2 = elesfn$a = {};\n\nvar defineDimFns = function defineDimFns(opts) {\n opts.uppercaseName = capitalize(opts.name);\n opts.autoName = 'auto' + opts.uppercaseName;\n opts.labelName = 'label' + opts.uppercaseName;\n opts.outerName = 'outer' + opts.uppercaseName;\n opts.uppercaseOuterName = capitalize(opts.outerName);\n\n fn$2[opts.name] = function dimImpl() {\n var ele = this[0];\n var _p = ele._private;\n var cy = _p.cy;\n var styleEnabled = cy._private.styleEnabled;\n\n if (ele) {\n if (styleEnabled) {\n if (ele.isParent()) {\n ele.updateCompoundBounds();\n return _p[opts.autoName] || 0;\n }\n\n var d = ele.pstyle(opts.name);\n\n switch (d.strValue) {\n case 'label':\n ele.recalculateRenderedStyle();\n return _p.rstyle[opts.labelName] || 0;\n\n default:\n return d.pfValue;\n }\n } else {\n return 1;\n }\n }\n };\n\n fn$2['outer' + opts.uppercaseName] = function outerDimImpl() {\n var ele = this[0];\n var _p = ele._private;\n var cy = _p.cy;\n var styleEnabled = cy._private.styleEnabled;\n\n if (ele) {\n if (styleEnabled) {\n var dim = ele[opts.name]();\n var border = ele.pstyle('border-width').pfValue; // n.b. 1/2 each side\n\n var padding = 2 * ele.padding();\n return dim + border + padding;\n } else {\n return 1;\n }\n }\n };\n\n fn$2['rendered' + opts.uppercaseName] = function renderedDimImpl() {\n var ele = this[0];\n\n if (ele) {\n var d = ele[opts.name]();\n return d * this.cy().zoom();\n }\n };\n\n fn$2['rendered' + opts.uppercaseOuterName] = function renderedOuterDimImpl() {\n var ele = this[0];\n\n if (ele) {\n var od = ele[opts.outerName]();\n return od * this.cy().zoom();\n }\n };\n};\n\ndefineDimFns({\n name: 'width'\n});\ndefineDimFns({\n name: 'height'\n});\n\nelesfn$a.padding = function () {\n var ele = this[0];\n var _p = ele._private;\n\n if (ele.isParent()) {\n ele.updateCompoundBounds();\n\n if (_p.autoPadding !== undefined) {\n return _p.autoPadding;\n } else {\n return ele.pstyle('padding').pfValue;\n }\n } else {\n return ele.pstyle('padding').pfValue;\n }\n};\n\nelesfn$a.paddedHeight = function () {\n var ele = this[0];\n return ele.height() + 2 * ele.padding();\n};\n\nelesfn$a.paddedWidth = function () {\n var ele = this[0];\n return ele.width() + 2 * ele.padding();\n};\n\nvar widthHeight = elesfn$a;\n\nvar ifEdge = function ifEdge(ele, getValue) {\n if (ele.isEdge()) {\n return getValue(ele);\n }\n};\n\nvar ifEdgeRenderedPosition = function ifEdgeRenderedPosition(ele, getPoint) {\n if (ele.isEdge()) {\n var cy = ele.cy();\n return modelToRenderedPosition(getPoint(ele), cy.zoom(), cy.pan());\n }\n};\n\nvar ifEdgeRenderedPositions = function ifEdgeRenderedPositions(ele, getPoints) {\n if (ele.isEdge()) {\n var cy = ele.cy();\n var pan = cy.pan();\n var zoom = cy.zoom();\n return getPoints(ele).map(function (p) {\n return modelToRenderedPosition(p, zoom, pan);\n });\n }\n};\n\nvar controlPoints = function controlPoints(ele) {\n return ele.renderer().getControlPoints(ele);\n};\n\nvar segmentPoints = function segmentPoints(ele) {\n return ele.renderer().getSegmentPoints(ele);\n};\n\nvar sourceEndpoint = function sourceEndpoint(ele) {\n return ele.renderer().getSourceEndpoint(ele);\n};\n\nvar targetEndpoint = function targetEndpoint(ele) {\n return ele.renderer().getTargetEndpoint(ele);\n};\n\nvar midpoint = function midpoint(ele) {\n return ele.renderer().getEdgeMidpoint(ele);\n};\n\nvar pts = {\n controlPoints: {\n get: controlPoints,\n mult: true\n },\n segmentPoints: {\n get: segmentPoints,\n mult: true\n },\n sourceEndpoint: {\n get: sourceEndpoint\n },\n targetEndpoint: {\n get: targetEndpoint\n },\n midpoint: {\n get: midpoint\n }\n};\n\nvar renderedName = function renderedName(name) {\n return 'rendered' + name[0].toUpperCase() + name.substr(1);\n};\n\nvar edgePoints = Object.keys(pts).reduce(function (obj, name) {\n var spec = pts[name];\n var rName = renderedName(name);\n\n obj[name] = function () {\n return ifEdge(this, spec.get);\n };\n\n if (spec.mult) {\n obj[rName] = function () {\n return ifEdgeRenderedPositions(this, spec.get);\n };\n } else {\n obj[rName] = function () {\n return ifEdgeRenderedPosition(this, spec.get);\n };\n }\n\n return obj;\n}, {});\n\nvar dimensions = extend({}, position, bounds, widthHeight, edgePoints);\n\n/*!\nEvent object based on jQuery events, MIT license\n\nhttps://jquery.org/license/\nhttps://tldrlegal.com/license/mit-license\nhttps://github.com/jquery/jquery/blob/master/src/event.js\n*/\nvar Event = function Event(src, props) {\n this.recycle(src, props);\n};\n\nfunction returnFalse() {\n return false;\n}\n\nfunction returnTrue() {\n return true;\n} // http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html\n\n\nEvent.prototype = {\n instanceString: function instanceString() {\n return 'event';\n },\n recycle: function recycle(src, props) {\n this.isImmediatePropagationStopped = this.isPropagationStopped = this.isDefaultPrevented = returnFalse;\n\n if (src != null && src.preventDefault) {\n // Browser Event object\n this.type = src.type; // Events bubbling up the document may have been marked as prevented\n // by a handler lower down the tree; reflect the correct value.\n\n this.isDefaultPrevented = src.defaultPrevented ? returnTrue : returnFalse;\n } else if (src != null && src.type) {\n // Plain object containing all event details\n props = src;\n } else {\n // Event string\n this.type = src;\n } // Put explicitly provided properties onto the event object\n\n\n if (props != null) {\n // more efficient to manually copy fields we use\n this.originalEvent = props.originalEvent;\n this.type = props.type != null ? props.type : this.type;\n this.cy = props.cy;\n this.target = props.target;\n this.position = props.position;\n this.renderedPosition = props.renderedPosition;\n this.namespace = props.namespace;\n this.layout = props.layout;\n }\n\n if (this.cy != null && this.position != null && this.renderedPosition == null) {\n // create a rendered position based on the passed position\n var pos = this.position;\n var zoom = this.cy.zoom();\n var pan = this.cy.pan();\n this.renderedPosition = {\n x: pos.x * zoom + pan.x,\n y: pos.y * zoom + pan.y\n };\n } // Create a timestamp if incoming event doesn't have one\n\n\n this.timeStamp = src && src.timeStamp || Date.now();\n },\n preventDefault: function preventDefault() {\n this.isDefaultPrevented = returnTrue;\n var e = this.originalEvent;\n\n if (!e) {\n return;\n } // if preventDefault exists run it on the original event\n\n\n if (e.preventDefault) {\n e.preventDefault();\n }\n },\n stopPropagation: function stopPropagation() {\n this.isPropagationStopped = returnTrue;\n var e = this.originalEvent;\n\n if (!e) {\n return;\n } // if stopPropagation exists run it on the original event\n\n\n if (e.stopPropagation) {\n e.stopPropagation();\n }\n },\n stopImmediatePropagation: function stopImmediatePropagation() {\n this.isImmediatePropagationStopped = returnTrue;\n this.stopPropagation();\n },\n isDefaultPrevented: returnFalse,\n isPropagationStopped: returnFalse,\n isImmediatePropagationStopped: returnFalse\n};\n\nvar eventRegex = /^([^.]+)(\\.(?:[^.]+))?$/; // regex for matching event strings (e.g. \"click.namespace\")\n\nvar universalNamespace = '.*'; // matches as if no namespace specified and prevents users from unbinding accidentally\n\nvar defaults$8 = {\n qualifierCompare: function qualifierCompare(q1, q2) {\n return q1 === q2;\n },\n eventMatches: function\n /*context, listener, eventObj*/\n eventMatches() {\n return true;\n },\n addEventFields: function\n /*context, evt*/\n addEventFields() {},\n callbackContext: function callbackContext(context\n /*, listener, eventObj*/\n ) {\n return context;\n },\n beforeEmit: function\n /* context, listener, eventObj */\n beforeEmit() {},\n afterEmit: function\n /* context, listener, eventObj */\n afterEmit() {},\n bubble: function\n /*context*/\n bubble() {\n return false;\n },\n parent: function\n /*context*/\n parent() {\n return null;\n },\n context: null\n};\nvar defaultsKeys = Object.keys(defaults$8);\nvar emptyOpts = {};\n\nfunction Emitter() {\n var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : emptyOpts;\n var context = arguments.length > 1 ? arguments[1] : undefined;\n\n // micro-optimisation vs Object.assign() -- reduces Element instantiation time\n for (var i = 0; i < defaultsKeys.length; i++) {\n var key = defaultsKeys[i];\n this[key] = opts[key] || defaults$8[key];\n }\n\n this.context = context || this.context;\n this.listeners = [];\n this.emitting = 0;\n}\n\nvar p = Emitter.prototype;\n\nvar forEachEvent = function forEachEvent(self, handler, events, qualifier, callback, conf, confOverrides) {\n if (fn$6(qualifier)) {\n callback = qualifier;\n qualifier = null;\n }\n\n if (confOverrides) {\n if (conf == null) {\n conf = confOverrides;\n } else {\n conf = extend({}, conf, confOverrides);\n }\n }\n\n var eventList = array(events) ? events : events.split(/\\s+/);\n\n for (var i = 0; i < eventList.length; i++) {\n var evt = eventList[i];\n\n if (emptyString(evt)) {\n continue;\n }\n\n var match = evt.match(eventRegex); // type[.namespace]\n\n if (match) {\n var type = match[1];\n var namespace = match[2] ? match[2] : null;\n var ret = handler(self, evt, type, namespace, qualifier, callback, conf);\n\n if (ret === false) {\n break;\n } // allow exiting early\n\n }\n }\n};\n\nvar makeEventObj = function makeEventObj(self, obj) {\n self.addEventFields(self.context, obj);\n return new Event(obj.type, obj);\n};\n\nvar forEachEventObj = function forEachEventObj(self, handler, events) {\n if (event(events)) {\n handler(self, events);\n return;\n } else if (plainObject(events)) {\n handler(self, makeEventObj(self, events));\n return;\n }\n\n var eventList = array(events) ? events : events.split(/\\s+/);\n\n for (var i = 0; i < eventList.length; i++) {\n var evt = eventList[i];\n\n if (emptyString(evt)) {\n continue;\n }\n\n var match = evt.match(eventRegex); // type[.namespace]\n\n if (match) {\n var type = match[1];\n var namespace = match[2] ? match[2] : null;\n var eventObj = makeEventObj(self, {\n type: type,\n namespace: namespace,\n target: self.context\n });\n handler(self, eventObj);\n }\n }\n};\n\np.on = p.addListener = function (events, qualifier, callback, conf, confOverrides) {\n forEachEvent(this, function (self, event, type, namespace, qualifier, callback, conf) {\n if (fn$6(callback)) {\n self.listeners.push({\n event: event,\n // full event string\n callback: callback,\n // callback to run\n type: type,\n // the event type (e.g. 'click')\n namespace: namespace,\n // the event namespace (e.g. \".foo\")\n qualifier: qualifier,\n // a restriction on whether to match this emitter\n conf: conf // additional configuration\n\n });\n }\n }, events, qualifier, callback, conf, confOverrides);\n return this;\n};\n\np.one = function (events, qualifier, callback, conf) {\n return this.on(events, qualifier, callback, conf, {\n one: true\n });\n};\n\np.removeListener = p.off = function (events, qualifier, callback, conf) {\n var _this = this;\n\n if (this.emitting !== 0) {\n this.listeners = copyArray(this.listeners);\n }\n\n var listeners = this.listeners;\n\n var _loop = function _loop(i) {\n var listener = listeners[i];\n forEachEvent(_this, function (self, event, type, namespace, qualifier, callback\n /*, conf*/\n ) {\n if ((listener.type === type || events === '*') && (!namespace && listener.namespace !== '.*' || listener.namespace === namespace) && (!qualifier || self.qualifierCompare(listener.qualifier, qualifier)) && (!callback || listener.callback === callback)) {\n listeners.splice(i, 1);\n return false;\n }\n }, events, qualifier, callback, conf);\n };\n\n for (var i = listeners.length - 1; i >= 0; i--) {\n _loop(i);\n }\n\n return this;\n};\n\np.removeAllListeners = function () {\n return this.removeListener('*');\n};\n\np.emit = p.trigger = function (events, extraParams, manualCallback) {\n var listeners = this.listeners;\n var numListenersBeforeEmit = listeners.length;\n this.emitting++;\n\n if (!array(extraParams)) {\n extraParams = [extraParams];\n }\n\n forEachEventObj(this, function (self, eventObj) {\n if (manualCallback != null) {\n listeners = [{\n event: eventObj.event,\n type: eventObj.type,\n namespace: eventObj.namespace,\n callback: manualCallback\n }];\n numListenersBeforeEmit = listeners.length;\n }\n\n var _loop2 = function _loop2(i) {\n var listener = listeners[i];\n\n if (listener.type === eventObj.type && (!listener.namespace || listener.namespace === eventObj.namespace || listener.namespace === universalNamespace) && self.eventMatches(self.context, listener, eventObj)) {\n var args = [eventObj];\n\n if (extraParams != null) {\n push(args, extraParams);\n }\n\n self.beforeEmit(self.context, listener, eventObj);\n\n if (listener.conf && listener.conf.one) {\n self.listeners = self.listeners.filter(function (l) {\n return l !== listener;\n });\n }\n\n var context = self.callbackContext(self.context, listener, eventObj);\n var ret = listener.callback.apply(context, args);\n self.afterEmit(self.context, listener, eventObj);\n\n if (ret === false) {\n eventObj.stopPropagation();\n eventObj.preventDefault();\n }\n } // if listener matches\n\n };\n\n for (var i = 0; i < numListenersBeforeEmit; i++) {\n _loop2(i);\n } // for listener\n\n\n if (self.bubble(self.context) && !eventObj.isPropagationStopped()) {\n self.parent(self.context).emit(eventObj, extraParams);\n }\n }, events);\n this.emitting--;\n return this;\n};\n\nvar emitterOptions$1 = {\n qualifierCompare: function qualifierCompare(selector1, selector2) {\n if (selector1 == null || selector2 == null) {\n return selector1 == null && selector2 == null;\n } else {\n return selector1.sameText(selector2);\n }\n },\n eventMatches: function eventMatches(ele, listener, eventObj) {\n var selector = listener.qualifier;\n\n if (selector != null) {\n return ele !== eventObj.target && element(eventObj.target) && selector.matches(eventObj.target);\n }\n\n return true;\n },\n addEventFields: function addEventFields(ele, evt) {\n evt.cy = ele.cy();\n evt.target = ele;\n },\n callbackContext: function callbackContext(ele, listener, eventObj) {\n return listener.qualifier != null ? eventObj.target : ele;\n },\n beforeEmit: function beforeEmit(context, listener\n /*, eventObj*/\n ) {\n if (listener.conf && listener.conf.once) {\n listener.conf.onceCollection.removeListener(listener.event, listener.qualifier, listener.callback);\n }\n },\n bubble: function bubble() {\n return true;\n },\n parent: function parent(ele) {\n return ele.isChild() ? ele.parent() : ele.cy();\n }\n};\n\nvar argSelector$1 = function argSelector(arg) {\n if (string(arg)) {\n return new Selector(arg);\n } else {\n return arg;\n }\n};\n\nvar elesfn$9 = {\n createEmitter: function createEmitter() {\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n var _p = ele._private;\n\n if (!_p.emitter) {\n _p.emitter = new Emitter(emitterOptions$1, ele);\n }\n }\n\n return this;\n },\n emitter: function emitter() {\n return this._private.emitter;\n },\n on: function on(events, selector, callback) {\n var argSel = argSelector$1(selector);\n\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n ele.emitter().on(events, argSel, callback);\n }\n\n return this;\n },\n removeListener: function removeListener(events, selector, callback) {\n var argSel = argSelector$1(selector);\n\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n ele.emitter().removeListener(events, argSel, callback);\n }\n\n return this;\n },\n removeAllListeners: function removeAllListeners() {\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n ele.emitter().removeAllListeners();\n }\n\n return this;\n },\n one: function one(events, selector, callback) {\n var argSel = argSelector$1(selector);\n\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n ele.emitter().one(events, argSel, callback);\n }\n\n return this;\n },\n once: function once(events, selector, callback) {\n var argSel = argSelector$1(selector);\n\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n ele.emitter().on(events, argSel, callback, {\n once: true,\n onceCollection: this\n });\n }\n },\n emit: function emit(events, extraParams) {\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n ele.emitter().emit(events, extraParams);\n }\n\n return this;\n },\n emitAndNotify: function emitAndNotify(event, extraParams) {\n // for internal use only\n if (this.length === 0) {\n return;\n } // empty collections don't need to notify anything\n // notify renderer\n\n\n this.cy().notify(event, this);\n this.emit(event, extraParams);\n return this;\n }\n};\ndefine.eventAliasesOn(elesfn$9);\n\nvar elesfn$8 = {\n nodes: function nodes(selector) {\n return this.filter(function (ele) {\n return ele.isNode();\n }).filter(selector);\n },\n edges: function edges(selector) {\n return this.filter(function (ele) {\n return ele.isEdge();\n }).filter(selector);\n },\n // internal helper to get nodes and edges as separate collections with single iteration over elements\n byGroup: function byGroup() {\n var nodes = this.spawn();\n var edges = this.spawn();\n\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n\n if (ele.isNode()) {\n nodes.push(ele);\n } else {\n edges.push(ele);\n }\n }\n\n return {\n nodes: nodes,\n edges: edges\n };\n },\n filter: function filter(_filter, thisArg) {\n if (_filter === undefined) {\n // check this first b/c it's the most common/performant case\n return this;\n } else if (string(_filter) || elementOrCollection(_filter)) {\n return new Selector(_filter).filter(this);\n } else if (fn$6(_filter)) {\n var filterEles = this.spawn();\n var eles = this;\n\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n var include = thisArg ? _filter.apply(thisArg, [ele, i, eles]) : _filter(ele, i, eles);\n\n if (include) {\n filterEles.push(ele);\n }\n }\n\n return filterEles;\n }\n\n return this.spawn(); // if not handled by above, give 'em an empty collection\n },\n not: function not(toRemove) {\n if (!toRemove) {\n return this;\n } else {\n if (string(toRemove)) {\n toRemove = this.filter(toRemove);\n }\n\n var elements = this.spawn();\n\n for (var i = 0; i < this.length; i++) {\n var element = this[i];\n var remove = toRemove.has(element);\n\n if (!remove) {\n elements.push(element);\n }\n }\n\n return elements;\n }\n },\n absoluteComplement: function absoluteComplement() {\n var cy = this.cy();\n return cy.mutableElements().not(this);\n },\n intersect: function intersect(other) {\n // if a selector is specified, then filter by it instead\n if (string(other)) {\n var selector = other;\n return this.filter(selector);\n }\n\n var elements = this.spawn();\n var col1 = this;\n var col2 = other;\n var col1Smaller = this.length < other.length;\n var colS = col1Smaller ? col1 : col2;\n var colL = col1Smaller ? col2 : col1;\n\n for (var i = 0; i < colS.length; i++) {\n var ele = colS[i];\n\n if (colL.has(ele)) {\n elements.push(ele);\n }\n }\n\n return elements;\n },\n xor: function xor(other) {\n var cy = this._private.cy;\n\n if (string(other)) {\n other = cy.$(other);\n }\n\n var elements = this.spawn();\n var col1 = this;\n var col2 = other;\n\n var add = function add(col, other) {\n for (var i = 0; i < col.length; i++) {\n var ele = col[i];\n var id = ele._private.data.id;\n var inOther = other.hasElementWithId(id);\n\n if (!inOther) {\n elements.push(ele);\n }\n }\n };\n\n add(col1, col2);\n add(col2, col1);\n return elements;\n },\n diff: function diff(other) {\n var cy = this._private.cy;\n\n if (string(other)) {\n other = cy.$(other);\n }\n\n var left = this.spawn();\n var right = this.spawn();\n var both = this.spawn();\n var col1 = this;\n var col2 = other;\n\n var add = function add(col, other, retEles) {\n for (var i = 0; i < col.length; i++) {\n var ele = col[i];\n var id = ele._private.data.id;\n var inOther = other.hasElementWithId(id);\n\n if (inOther) {\n both.merge(ele);\n } else {\n retEles.push(ele);\n }\n }\n };\n\n add(col1, col2, left);\n add(col2, col1, right);\n return {\n left: left,\n right: right,\n both: both\n };\n },\n add: function add(toAdd) {\n var cy = this._private.cy;\n\n if (!toAdd) {\n return this;\n }\n\n if (string(toAdd)) {\n var selector = toAdd;\n toAdd = cy.mutableElements().filter(selector);\n }\n\n var elements = this.spawnSelf();\n\n for (var i = 0; i < toAdd.length; i++) {\n var ele = toAdd[i];\n var add = !this.has(ele);\n\n if (add) {\n elements.push(ele);\n }\n }\n\n return elements;\n },\n // in place merge on calling collection\n merge: function merge(toAdd) {\n var _p = this._private;\n var cy = _p.cy;\n\n if (!toAdd) {\n return this;\n }\n\n if (toAdd && string(toAdd)) {\n var selector = toAdd;\n toAdd = cy.mutableElements().filter(selector);\n }\n\n var map = _p.map;\n\n for (var i = 0; i < toAdd.length; i++) {\n var toAddEle = toAdd[i];\n var id = toAddEle._private.data.id;\n var add = !map.has(id);\n\n if (add) {\n var index = this.length++;\n this[index] = toAddEle;\n map.set(id, {\n ele: toAddEle,\n index: index\n });\n }\n }\n\n return this; // chaining\n },\n unmergeAt: function unmergeAt(i) {\n var ele = this[i];\n var id = ele.id();\n var _p = this._private;\n var map = _p.map; // remove ele\n\n this[i] = undefined;\n map[\"delete\"](id);\n var unmergedLastEle = i === this.length - 1; // replace empty spot with last ele in collection\n\n if (this.length > 1 && !unmergedLastEle) {\n var lastEleI = this.length - 1;\n var lastEle = this[lastEleI];\n var lastEleId = lastEle._private.data.id;\n this[lastEleI] = undefined;\n this[i] = lastEle;\n map.set(lastEleId, {\n ele: lastEle,\n index: i\n });\n } // the collection is now 1 ele smaller\n\n\n this.length--;\n return this;\n },\n // remove single ele in place in calling collection\n unmergeOne: function unmergeOne(ele) {\n ele = ele[0];\n var _p = this._private;\n var id = ele._private.data.id;\n var map = _p.map;\n var entry = map.get(id);\n\n if (!entry) {\n return this; // no need to remove\n }\n\n var i = entry.index;\n this.unmergeAt(i);\n return this;\n },\n // remove eles in place on calling collection\n unmerge: function unmerge(toRemove) {\n var cy = this._private.cy;\n\n if (!toRemove) {\n return this;\n }\n\n if (toRemove && string(toRemove)) {\n var selector = toRemove;\n toRemove = cy.mutableElements().filter(selector);\n }\n\n for (var i = 0; i < toRemove.length; i++) {\n this.unmergeOne(toRemove[i]);\n }\n\n return this; // chaining\n },\n unmergeBy: function unmergeBy(toRmFn) {\n for (var i = this.length - 1; i >= 0; i--) {\n var ele = this[i];\n\n if (toRmFn(ele)) {\n this.unmergeAt(i);\n }\n }\n\n return this;\n },\n map: function map(mapFn, thisArg) {\n var arr = [];\n var eles = this;\n\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n var ret = thisArg ? mapFn.apply(thisArg, [ele, i, eles]) : mapFn(ele, i, eles);\n arr.push(ret);\n }\n\n return arr;\n },\n reduce: function reduce(fn, initialValue) {\n var val = initialValue;\n var eles = this;\n\n for (var i = 0; i < eles.length; i++) {\n val = fn(val, eles[i], i, eles);\n }\n\n return val;\n },\n max: function max(valFn, thisArg) {\n var max = -Infinity;\n var maxEle;\n var eles = this;\n\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n var val = thisArg ? valFn.apply(thisArg, [ele, i, eles]) : valFn(ele, i, eles);\n\n if (val > max) {\n max = val;\n maxEle = ele;\n }\n }\n\n return {\n value: max,\n ele: maxEle\n };\n },\n min: function min(valFn, thisArg) {\n var min = Infinity;\n var minEle;\n var eles = this;\n\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n var val = thisArg ? valFn.apply(thisArg, [ele, i, eles]) : valFn(ele, i, eles);\n\n if (val < min) {\n min = val;\n minEle = ele;\n }\n }\n\n return {\n value: min,\n ele: minEle\n };\n }\n}; // aliases\n\nvar fn$1 = elesfn$8;\nfn$1['u'] = fn$1['|'] = fn$1['+'] = fn$1.union = fn$1.or = fn$1.add;\nfn$1['\\\\'] = fn$1['!'] = fn$1['-'] = fn$1.difference = fn$1.relativeComplement = fn$1.subtract = fn$1.not;\nfn$1['n'] = fn$1['&'] = fn$1['.'] = fn$1.and = fn$1.intersection = fn$1.intersect;\nfn$1['^'] = fn$1['(+)'] = fn$1['(-)'] = fn$1.symmetricDifference = fn$1.symdiff = fn$1.xor;\nfn$1.fnFilter = fn$1.filterFn = fn$1.stdFilter = fn$1.filter;\nfn$1.complement = fn$1.abscomp = fn$1.absoluteComplement;\n\nvar elesfn$7 = {\n isNode: function isNode() {\n return this.group() === 'nodes';\n },\n isEdge: function isEdge() {\n return this.group() === 'edges';\n },\n isLoop: function isLoop() {\n return this.isEdge() && this.source()[0] === this.target()[0];\n },\n isSimple: function isSimple() {\n return this.isEdge() && this.source()[0] !== this.target()[0];\n },\n group: function group() {\n var ele = this[0];\n\n if (ele) {\n return ele._private.group;\n }\n }\n};\n\n/**\n * Elements are drawn in a specific order based on compound depth (low to high), the element type (nodes above edges),\n * and z-index (low to high). These styles affect how this applies:\n *\n * z-compound-depth: May be `bottom | orphan | auto | top`. The first drawn is `bottom`, then `orphan` which is the\n * same depth as the root of the compound graph, followed by the default value `auto` which draws in order from\n * root to leaves of the compound graph. The last drawn is `top`.\n * z-index-compare: May be `auto | manual`. The default value is `auto` which always draws edges under nodes.\n * `manual` ignores this convention and draws based on the `z-index` value setting.\n * z-index: An integer value that affects the relative draw order of elements. In general, an element with a higher\n * `z-index` will be drawn on top of an element with a lower `z-index`.\n */\n\nvar zIndexSort = function zIndexSort(a, b) {\n var cy = a.cy();\n var hasCompoundNodes = cy.hasCompoundNodes();\n\n function getDepth(ele) {\n var style = ele.pstyle('z-compound-depth');\n\n if (style.value === 'auto') {\n return hasCompoundNodes ? ele.zDepth() : 0;\n } else if (style.value === 'bottom') {\n return -1;\n } else if (style.value === 'top') {\n return MAX_INT$1;\n } // 'orphan'\n\n\n return 0;\n }\n\n var depthDiff = getDepth(a) - getDepth(b);\n\n if (depthDiff !== 0) {\n return depthDiff;\n }\n\n function getEleDepth(ele) {\n var style = ele.pstyle('z-index-compare');\n\n if (style.value === 'auto') {\n return ele.isNode() ? 1 : 0;\n } // 'manual'\n\n\n return 0;\n }\n\n var eleDiff = getEleDepth(a) - getEleDepth(b);\n\n if (eleDiff !== 0) {\n return eleDiff;\n }\n\n var zDiff = a.pstyle('z-index').value - b.pstyle('z-index').value;\n\n if (zDiff !== 0) {\n return zDiff;\n } // compare indices in the core (order added to graph w/ last on top)\n\n\n return a.poolIndex() - b.poolIndex();\n};\n\nvar elesfn$6 = {\n forEach: function forEach(fn, thisArg) {\n if (fn$6(fn)) {\n var N = this.length;\n\n for (var i = 0; i < N; i++) {\n var ele = this[i];\n var ret = thisArg ? fn.apply(thisArg, [ele, i, this]) : fn(ele, i, this);\n\n if (ret === false) {\n break;\n } // exit each early on return false\n\n }\n }\n\n return this;\n },\n toArray: function toArray() {\n var array = [];\n\n for (var i = 0; i < this.length; i++) {\n array.push(this[i]);\n }\n\n return array;\n },\n slice: function slice(start, end) {\n var array = [];\n var thisSize = this.length;\n\n if (end == null) {\n end = thisSize;\n }\n\n if (start == null) {\n start = 0;\n }\n\n if (start < 0) {\n start = thisSize + start;\n }\n\n if (end < 0) {\n end = thisSize + end;\n }\n\n for (var i = start; i >= 0 && i < end && i < thisSize; i++) {\n array.push(this[i]);\n }\n\n return this.spawn(array);\n },\n size: function size() {\n return this.length;\n },\n eq: function eq(i) {\n return this[i] || this.spawn();\n },\n first: function first() {\n return this[0] || this.spawn();\n },\n last: function last() {\n return this[this.length - 1] || this.spawn();\n },\n empty: function empty() {\n return this.length === 0;\n },\n nonempty: function nonempty() {\n return !this.empty();\n },\n sort: function sort(sortFn) {\n if (!fn$6(sortFn)) {\n return this;\n }\n\n var sorted = this.toArray().sort(sortFn);\n return this.spawn(sorted);\n },\n sortByZIndex: function sortByZIndex() {\n return this.sort(zIndexSort);\n },\n zDepth: function zDepth() {\n var ele = this[0];\n\n if (!ele) {\n return undefined;\n } // let cy = ele.cy();\n\n\n var _p = ele._private;\n var group = _p.group;\n\n if (group === 'nodes') {\n var depth = _p.data.parent ? ele.parents().size() : 0;\n\n if (!ele.isParent()) {\n return MAX_INT$1 - 1; // childless nodes always on top\n }\n\n return depth;\n } else {\n var src = _p.source;\n var tgt = _p.target;\n var srcDepth = src.zDepth();\n var tgtDepth = tgt.zDepth();\n return Math.max(srcDepth, tgtDepth, 0); // depth of deepest parent\n }\n }\n};\nelesfn$6.each = elesfn$6.forEach;\n\nvar defineSymbolIterator = function defineSymbolIterator() {\n var typeofUndef = \"undefined\" ;\n var isIteratorSupported = (typeof Symbol === \"undefined\" ? \"undefined\" : _typeof(Symbol)) != typeofUndef && _typeof(Symbol.iterator) != typeofUndef; // eslint-disable-line no-undef\n\n if (isIteratorSupported) {\n elesfn$6[Symbol.iterator] = function () {\n var _this = this;\n\n // eslint-disable-line no-undef\n var entry = {\n value: undefined,\n done: false\n };\n var i = 0;\n var length = this.length;\n return _defineProperty({\n next: function next() {\n if (i < length) {\n entry.value = _this[i++];\n } else {\n entry.value = undefined;\n entry.done = true;\n }\n\n return entry;\n }\n }, Symbol.iterator, function () {\n // eslint-disable-line no-undef\n return this;\n });\n };\n }\n};\n\ndefineSymbolIterator();\n\nvar getLayoutDimensionOptions = defaults$g({\n nodeDimensionsIncludeLabels: false\n});\nvar elesfn$5 = {\n // Calculates and returns node dimensions { x, y } based on options given\n layoutDimensions: function layoutDimensions(options) {\n options = getLayoutDimensionOptions(options);\n var dims;\n\n if (!this.takesUpSpace()) {\n dims = {\n w: 0,\n h: 0\n };\n } else if (options.nodeDimensionsIncludeLabels) {\n var bbDim = this.boundingBox();\n dims = {\n w: bbDim.w,\n h: bbDim.h\n };\n } else {\n dims = {\n w: this.outerWidth(),\n h: this.outerHeight()\n };\n } // sanitise the dimensions for external layouts (avoid division by zero)\n\n\n if (dims.w === 0 || dims.h === 0) {\n dims.w = dims.h = 1;\n }\n\n return dims;\n },\n // using standard layout options, apply position function (w/ or w/o animation)\n layoutPositions: function layoutPositions(layout, options, fn) {\n var nodes = this.nodes().filter(function (n) {\n return !n.isParent();\n });\n var cy = this.cy();\n var layoutEles = options.eles; // nodes & edges\n\n var getMemoizeKey = function getMemoizeKey(node) {\n return node.id();\n };\n\n var fnMem = memoize(fn, getMemoizeKey); // memoized version of position function\n\n layout.emit({\n type: 'layoutstart',\n layout: layout\n });\n layout.animations = [];\n\n var calculateSpacing = function calculateSpacing(spacing, nodesBb, pos) {\n var center = {\n x: nodesBb.x1 + nodesBb.w / 2,\n y: nodesBb.y1 + nodesBb.h / 2\n };\n var spacingVector = {\n // scale from center of bounding box (not necessarily 0,0)\n x: (pos.x - center.x) * spacing,\n y: (pos.y - center.y) * spacing\n };\n return {\n x: center.x + spacingVector.x,\n y: center.y + spacingVector.y\n };\n };\n\n var useSpacingFactor = options.spacingFactor && options.spacingFactor !== 1;\n\n var spacingBb = function spacingBb() {\n if (!useSpacingFactor) {\n return null;\n }\n\n var bb = makeBoundingBox();\n\n for (var i = 0; i < nodes.length; i++) {\n var node = nodes[i];\n var pos = fnMem(node, i);\n expandBoundingBoxByPoint(bb, pos.x, pos.y);\n }\n\n return bb;\n };\n\n var bb = spacingBb();\n var getFinalPos = memoize(function (node, i) {\n var newPos = fnMem(node, i);\n\n if (useSpacingFactor) {\n var spacing = Math.abs(options.spacingFactor);\n newPos = calculateSpacing(spacing, bb, newPos);\n }\n\n if (options.transform != null) {\n newPos = options.transform(node, newPos);\n }\n\n return newPos;\n }, getMemoizeKey);\n\n if (options.animate) {\n for (var i = 0; i < nodes.length; i++) {\n var node = nodes[i];\n var newPos = getFinalPos(node, i);\n var animateNode = options.animateFilter == null || options.animateFilter(node, i);\n\n if (animateNode) {\n var ani = node.animation({\n position: newPos,\n duration: options.animationDuration,\n easing: options.animationEasing\n });\n layout.animations.push(ani);\n } else {\n node.position(newPos);\n }\n }\n\n if (options.fit) {\n var fitAni = cy.animation({\n fit: {\n boundingBox: layoutEles.boundingBoxAt(getFinalPos),\n padding: options.padding\n },\n duration: options.animationDuration,\n easing: options.animationEasing\n });\n layout.animations.push(fitAni);\n } else if (options.zoom !== undefined && options.pan !== undefined) {\n var zoomPanAni = cy.animation({\n zoom: options.zoom,\n pan: options.pan,\n duration: options.animationDuration,\n easing: options.animationEasing\n });\n layout.animations.push(zoomPanAni);\n }\n\n layout.animations.forEach(function (ani) {\n return ani.play();\n });\n layout.one('layoutready', options.ready);\n layout.emit({\n type: 'layoutready',\n layout: layout\n });\n Promise$1.all(layout.animations.map(function (ani) {\n return ani.promise();\n })).then(function () {\n layout.one('layoutstop', options.stop);\n layout.emit({\n type: 'layoutstop',\n layout: layout\n });\n });\n } else {\n nodes.positions(getFinalPos);\n\n if (options.fit) {\n cy.fit(options.eles, options.padding);\n }\n\n if (options.zoom != null) {\n cy.zoom(options.zoom);\n }\n\n if (options.pan) {\n cy.pan(options.pan);\n }\n\n layout.one('layoutready', options.ready);\n layout.emit({\n type: 'layoutready',\n layout: layout\n });\n layout.one('layoutstop', options.stop);\n layout.emit({\n type: 'layoutstop',\n layout: layout\n });\n }\n\n return this; // chaining\n },\n layout: function layout(options) {\n var cy = this.cy();\n return cy.makeLayout(extend({}, options, {\n eles: this\n }));\n }\n}; // aliases:\n\nelesfn$5.createLayout = elesfn$5.makeLayout = elesfn$5.layout;\n\nfunction styleCache(key, fn, ele) {\n var _p = ele._private;\n var cache = _p.styleCache = _p.styleCache || [];\n var val;\n\n if ((val = cache[key]) != null) {\n return val;\n } else {\n val = cache[key] = fn(ele);\n return val;\n }\n}\n\nfunction cacheStyleFunction(key, fn) {\n key = hashString(key);\n return function cachedStyleFunction(ele) {\n return styleCache(key, fn, ele);\n };\n}\n\nfunction cachePrototypeStyleFunction(key, fn) {\n key = hashString(key);\n\n var selfFn = function selfFn(ele) {\n return fn.call(ele);\n };\n\n return function cachedPrototypeStyleFunction() {\n var ele = this[0];\n\n if (ele) {\n return styleCache(key, selfFn, ele);\n }\n };\n}\n\nvar elesfn$4 = {\n recalculateRenderedStyle: function recalculateRenderedStyle(useCache) {\n var cy = this.cy();\n var renderer = cy.renderer();\n var styleEnabled = cy.styleEnabled();\n\n if (renderer && styleEnabled) {\n renderer.recalculateRenderedStyle(this, useCache);\n }\n\n return this;\n },\n dirtyStyleCache: function dirtyStyleCache() {\n var cy = this.cy();\n\n var dirty = function dirty(ele) {\n return ele._private.styleCache = null;\n };\n\n if (cy.hasCompoundNodes()) {\n var eles;\n eles = this.spawnSelf().merge(this.descendants()).merge(this.parents());\n eles.merge(eles.connectedEdges());\n eles.forEach(dirty);\n } else {\n this.forEach(function (ele) {\n dirty(ele);\n ele.connectedEdges().forEach(dirty);\n });\n }\n\n return this;\n },\n // fully updates (recalculates) the style for the elements\n updateStyle: function updateStyle(notifyRenderer) {\n var cy = this._private.cy;\n\n if (!cy.styleEnabled()) {\n return this;\n }\n\n if (cy.batching()) {\n var bEles = cy._private.batchStyleEles;\n bEles.merge(this);\n return this; // chaining and exit early when batching\n }\n\n var hasCompounds = cy.hasCompoundNodes();\n var updatedEles = this;\n notifyRenderer = notifyRenderer || notifyRenderer === undefined ? true : false;\n\n if (hasCompounds) {\n // then add everything up and down for compound selector checks\n updatedEles = this.spawnSelf().merge(this.descendants()).merge(this.parents());\n } // let changedEles = style.apply( updatedEles );\n\n\n var changedEles = updatedEles;\n\n if (notifyRenderer) {\n changedEles.emitAndNotify('style'); // let renderer know we changed style\n } else {\n changedEles.emit('style'); // just fire the event\n }\n\n updatedEles.forEach(function (ele) {\n return ele._private.styleDirty = true;\n });\n return this; // chaining\n },\n // private: clears dirty flag and recalculates style\n cleanStyle: function cleanStyle() {\n var cy = this.cy();\n\n if (!cy.styleEnabled()) {\n return;\n }\n\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n\n if (ele._private.styleDirty) {\n // n.b. this flag should be set before apply() to avoid potential infinite recursion\n ele._private.styleDirty = false;\n cy.style().apply(ele);\n }\n }\n },\n // get the internal parsed style object for the specified property\n parsedStyle: function parsedStyle(property) {\n var includeNonDefault = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n var ele = this[0];\n var cy = ele.cy();\n\n if (!cy.styleEnabled()) {\n return;\n }\n\n if (ele) {\n this.cleanStyle();\n var overriddenStyle = ele._private.style[property];\n\n if (overriddenStyle != null) {\n return overriddenStyle;\n } else if (includeNonDefault) {\n return cy.style().getDefaultProperty(property);\n } else {\n return null;\n }\n }\n },\n numericStyle: function numericStyle(property) {\n var ele = this[0];\n\n if (!ele.cy().styleEnabled()) {\n return;\n }\n\n if (ele) {\n var pstyle = ele.pstyle(property);\n return pstyle.pfValue !== undefined ? pstyle.pfValue : pstyle.value;\n }\n },\n numericStyleUnits: function numericStyleUnits(property) {\n var ele = this[0];\n\n if (!ele.cy().styleEnabled()) {\n return;\n }\n\n if (ele) {\n return ele.pstyle(property).units;\n }\n },\n // get the specified css property as a rendered value (i.e. on-screen value)\n // or get the whole rendered style if no property specified (NB doesn't allow setting)\n renderedStyle: function renderedStyle(property) {\n var cy = this.cy();\n\n if (!cy.styleEnabled()) {\n return this;\n }\n\n var ele = this[0];\n\n if (ele) {\n return cy.style().getRenderedStyle(ele, property);\n }\n },\n // read the calculated css style of the element or override the style (via a bypass)\n style: function style(name, value) {\n var cy = this.cy();\n\n if (!cy.styleEnabled()) {\n return this;\n }\n\n var updateTransitions = false;\n var style = cy.style();\n\n if (plainObject(name)) {\n // then extend the bypass\n var props = name;\n style.applyBypass(this, props, updateTransitions);\n this.emitAndNotify('style'); // let the renderer know we've updated style\n } else if (string(name)) {\n if (value === undefined) {\n // then get the property from the style\n var ele = this[0];\n\n if (ele) {\n return style.getStylePropertyValue(ele, name);\n } else {\n // empty collection => can't get any value\n return;\n }\n } else {\n // then set the bypass with the property value\n style.applyBypass(this, name, value, updateTransitions);\n this.emitAndNotify('style'); // let the renderer know we've updated style\n }\n } else if (name === undefined) {\n var _ele = this[0];\n\n if (_ele) {\n return style.getRawStyle(_ele);\n } else {\n // empty collection => can't get any value\n return;\n }\n }\n\n return this; // chaining\n },\n removeStyle: function removeStyle(names) {\n var cy = this.cy();\n\n if (!cy.styleEnabled()) {\n return this;\n }\n\n var updateTransitions = false;\n var style = cy.style();\n var eles = this;\n\n if (names === undefined) {\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n style.removeAllBypasses(ele, updateTransitions);\n }\n } else {\n names = names.split(/\\s+/);\n\n for (var _i = 0; _i < eles.length; _i++) {\n var _ele2 = eles[_i];\n style.removeBypasses(_ele2, names, updateTransitions);\n }\n }\n\n this.emitAndNotify('style'); // let the renderer know we've updated style\n\n return this; // chaining\n },\n show: function show() {\n this.css('display', 'element');\n return this; // chaining\n },\n hide: function hide() {\n this.css('display', 'none');\n return this; // chaining\n },\n effectiveOpacity: function effectiveOpacity() {\n var cy = this.cy();\n\n if (!cy.styleEnabled()) {\n return 1;\n }\n\n var hasCompoundNodes = cy.hasCompoundNodes();\n var ele = this[0];\n\n if (ele) {\n var _p = ele._private;\n var parentOpacity = ele.pstyle('opacity').value;\n\n if (!hasCompoundNodes) {\n return parentOpacity;\n }\n\n var parents = !_p.data.parent ? null : ele.parents();\n\n if (parents) {\n for (var i = 0; i < parents.length; i++) {\n var parent = parents[i];\n var opacity = parent.pstyle('opacity').value;\n parentOpacity = opacity * parentOpacity;\n }\n }\n\n return parentOpacity;\n }\n },\n transparent: function transparent() {\n var cy = this.cy();\n\n if (!cy.styleEnabled()) {\n return false;\n }\n\n var ele = this[0];\n var hasCompoundNodes = ele.cy().hasCompoundNodes();\n\n if (ele) {\n if (!hasCompoundNodes) {\n return ele.pstyle('opacity').value === 0;\n } else {\n return ele.effectiveOpacity() === 0;\n }\n }\n },\n backgrounding: function backgrounding() {\n var cy = this.cy();\n\n if (!cy.styleEnabled()) {\n return false;\n }\n\n var ele = this[0];\n return ele._private.backgrounding ? true : false;\n }\n};\n\nfunction checkCompound(ele, parentOk) {\n var _p = ele._private;\n var parents = _p.data.parent ? ele.parents() : null;\n\n if (parents) {\n for (var i = 0; i < parents.length; i++) {\n var parent = parents[i];\n\n if (!parentOk(parent)) {\n return false;\n }\n }\n }\n\n return true;\n}\n\nfunction defineDerivedStateFunction(specs) {\n var ok = specs.ok;\n var edgeOkViaNode = specs.edgeOkViaNode || specs.ok;\n var parentOk = specs.parentOk || specs.ok;\n return function () {\n var cy = this.cy();\n\n if (!cy.styleEnabled()) {\n return true;\n }\n\n var ele = this[0];\n var hasCompoundNodes = cy.hasCompoundNodes();\n\n if (ele) {\n var _p = ele._private;\n\n if (!ok(ele)) {\n return false;\n }\n\n if (ele.isNode()) {\n return !hasCompoundNodes || checkCompound(ele, parentOk);\n } else {\n var src = _p.source;\n var tgt = _p.target;\n return edgeOkViaNode(src) && (!hasCompoundNodes || checkCompound(src, edgeOkViaNode)) && (src === tgt || edgeOkViaNode(tgt) && (!hasCompoundNodes || checkCompound(tgt, edgeOkViaNode)));\n }\n }\n };\n}\n\nvar eleTakesUpSpace = cacheStyleFunction('eleTakesUpSpace', function (ele) {\n return ele.pstyle('display').value === 'element' && ele.width() !== 0 && (ele.isNode() ? ele.height() !== 0 : true);\n});\nelesfn$4.takesUpSpace = cachePrototypeStyleFunction('takesUpSpace', defineDerivedStateFunction({\n ok: eleTakesUpSpace\n}));\nvar eleInteractive = cacheStyleFunction('eleInteractive', function (ele) {\n return ele.pstyle('events').value === 'yes' && ele.pstyle('visibility').value === 'visible' && eleTakesUpSpace(ele);\n});\nvar parentInteractive = cacheStyleFunction('parentInteractive', function (parent) {\n return parent.pstyle('visibility').value === 'visible' && eleTakesUpSpace(parent);\n});\nelesfn$4.interactive = cachePrototypeStyleFunction('interactive', defineDerivedStateFunction({\n ok: eleInteractive,\n parentOk: parentInteractive,\n edgeOkViaNode: eleTakesUpSpace\n}));\n\nelesfn$4.noninteractive = function () {\n var ele = this[0];\n\n if (ele) {\n return !ele.interactive();\n }\n};\n\nvar eleVisible = cacheStyleFunction('eleVisible', function (ele) {\n return ele.pstyle('visibility').value === 'visible' && ele.pstyle('opacity').pfValue !== 0 && eleTakesUpSpace(ele);\n});\nvar edgeVisibleViaNode = eleTakesUpSpace;\nelesfn$4.visible = cachePrototypeStyleFunction('visible', defineDerivedStateFunction({\n ok: eleVisible,\n edgeOkViaNode: edgeVisibleViaNode\n}));\n\nelesfn$4.hidden = function () {\n var ele = this[0];\n\n if (ele) {\n return !ele.visible();\n }\n};\n\nelesfn$4.isBundledBezier = cachePrototypeStyleFunction('isBundledBezier', function () {\n if (!this.cy().styleEnabled()) {\n return false;\n }\n\n return !this.removed() && this.pstyle('curve-style').value === 'bezier' && this.takesUpSpace();\n});\nelesfn$4.bypass = elesfn$4.css = elesfn$4.style;\nelesfn$4.renderedCss = elesfn$4.renderedStyle;\nelesfn$4.removeBypass = elesfn$4.removeCss = elesfn$4.removeStyle;\nelesfn$4.pstyle = elesfn$4.parsedStyle;\n\nvar elesfn$3 = {};\n\nfunction defineSwitchFunction(params) {\n return function () {\n var args = arguments;\n var changedEles = []; // e.g. cy.nodes().select( data, handler )\n\n if (args.length === 2) {\n var data = args[0];\n var handler = args[1];\n this.on(params.event, data, handler);\n } // e.g. cy.nodes().select( handler )\n else if (args.length === 1 && fn$6(args[0])) {\n var _handler = args[0];\n this.on(params.event, _handler);\n } // e.g. cy.nodes().select()\n // e.g. (private) cy.nodes().select(['tapselect'])\n else if (args.length === 0 || args.length === 1 && array(args[0])) {\n var addlEvents = args.length === 1 ? args[0] : null;\n\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n var able = !params.ableField || ele._private[params.ableField];\n var changed = ele._private[params.field] != params.value;\n\n if (params.overrideAble) {\n var overrideAble = params.overrideAble(ele);\n\n if (overrideAble !== undefined) {\n able = overrideAble;\n\n if (!overrideAble) {\n return this;\n } // to save cycles assume not able for all on override\n\n }\n }\n\n if (able) {\n ele._private[params.field] = params.value;\n\n if (changed) {\n changedEles.push(ele);\n }\n }\n }\n\n var changedColl = this.spawn(changedEles);\n changedColl.updateStyle(); // change of state => possible change of style\n\n changedColl.emit(params.event);\n\n if (addlEvents) {\n changedColl.emit(addlEvents);\n }\n }\n\n return this;\n };\n}\n\nfunction defineSwitchSet(params) {\n elesfn$3[params.field] = function () {\n var ele = this[0];\n\n if (ele) {\n if (params.overrideField) {\n var val = params.overrideField(ele);\n\n if (val !== undefined) {\n return val;\n }\n }\n\n return ele._private[params.field];\n }\n };\n\n elesfn$3[params.on] = defineSwitchFunction({\n event: params.on,\n field: params.field,\n ableField: params.ableField,\n overrideAble: params.overrideAble,\n value: true\n });\n elesfn$3[params.off] = defineSwitchFunction({\n event: params.off,\n field: params.field,\n ableField: params.ableField,\n overrideAble: params.overrideAble,\n value: false\n });\n}\n\ndefineSwitchSet({\n field: 'locked',\n overrideField: function overrideField(ele) {\n return ele.cy().autolock() ? true : undefined;\n },\n on: 'lock',\n off: 'unlock'\n});\ndefineSwitchSet({\n field: 'grabbable',\n overrideField: function overrideField(ele) {\n return ele.cy().autoungrabify() || ele.pannable() ? false : undefined;\n },\n on: 'grabify',\n off: 'ungrabify'\n});\ndefineSwitchSet({\n field: 'selected',\n ableField: 'selectable',\n overrideAble: function overrideAble(ele) {\n return ele.cy().autounselectify() ? false : undefined;\n },\n on: 'select',\n off: 'unselect'\n});\ndefineSwitchSet({\n field: 'selectable',\n overrideField: function overrideField(ele) {\n return ele.cy().autounselectify() ? false : undefined;\n },\n on: 'selectify',\n off: 'unselectify'\n});\nelesfn$3.deselect = elesfn$3.unselect;\n\nelesfn$3.grabbed = function () {\n var ele = this[0];\n\n if (ele) {\n return ele._private.grabbed;\n }\n};\n\ndefineSwitchSet({\n field: 'active',\n on: 'activate',\n off: 'unactivate'\n});\ndefineSwitchSet({\n field: 'pannable',\n on: 'panify',\n off: 'unpanify'\n});\n\nelesfn$3.inactive = function () {\n var ele = this[0];\n\n if (ele) {\n return !ele._private.active;\n }\n};\n\nvar elesfn$2 = {}; // DAG functions\n////////////////\n\nvar defineDagExtremity = function defineDagExtremity(params) {\n return function dagExtremityImpl(selector) {\n var eles = this;\n var ret = [];\n\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n\n if (!ele.isNode()) {\n continue;\n }\n\n var disqualified = false;\n var edges = ele.connectedEdges();\n\n for (var j = 0; j < edges.length; j++) {\n var edge = edges[j];\n var src = edge.source();\n var tgt = edge.target();\n\n if (params.noIncomingEdges && tgt === ele && src !== ele || params.noOutgoingEdges && src === ele && tgt !== ele) {\n disqualified = true;\n break;\n }\n }\n\n if (!disqualified) {\n ret.push(ele);\n }\n }\n\n return this.spawn(ret, true).filter(selector);\n };\n};\n\nvar defineDagOneHop = function defineDagOneHop(params) {\n return function (selector) {\n var eles = this;\n var oEles = [];\n\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n\n if (!ele.isNode()) {\n continue;\n }\n\n var edges = ele.connectedEdges();\n\n for (var j = 0; j < edges.length; j++) {\n var edge = edges[j];\n var src = edge.source();\n var tgt = edge.target();\n\n if (params.outgoing && src === ele) {\n oEles.push(edge);\n oEles.push(tgt);\n } else if (params.incoming && tgt === ele) {\n oEles.push(edge);\n oEles.push(src);\n }\n }\n }\n\n return this.spawn(oEles, true).filter(selector);\n };\n};\n\nvar defineDagAllHops = function defineDagAllHops(params) {\n return function (selector) {\n var eles = this;\n var sEles = [];\n var sElesIds = {};\n\n for (;;) {\n var next = params.outgoing ? eles.outgoers() : eles.incomers();\n\n if (next.length === 0) {\n break;\n } // done if none left\n\n\n var newNext = false;\n\n for (var i = 0; i < next.length; i++) {\n var n = next[i];\n var nid = n.id();\n\n if (!sElesIds[nid]) {\n sElesIds[nid] = true;\n sEles.push(n);\n newNext = true;\n }\n }\n\n if (!newNext) {\n break;\n } // done if touched all outgoers already\n\n\n eles = next;\n }\n\n return this.spawn(sEles, true).filter(selector);\n };\n};\n\nelesfn$2.clearTraversalCache = function () {\n for (var i = 0; i < this.length; i++) {\n this[i]._private.traversalCache = null;\n }\n};\n\nextend(elesfn$2, {\n // get the root nodes in the DAG\n roots: defineDagExtremity({\n noIncomingEdges: true\n }),\n // get the leaf nodes in the DAG\n leaves: defineDagExtremity({\n noOutgoingEdges: true\n }),\n // normally called children in graph theory\n // these nodes =edges=> outgoing nodes\n outgoers: cache(defineDagOneHop({\n outgoing: true\n }), 'outgoers'),\n // aka DAG descendants\n successors: defineDagAllHops({\n outgoing: true\n }),\n // normally called parents in graph theory\n // these nodes <=edges= incoming nodes\n incomers: cache(defineDagOneHop({\n incoming: true\n }), 'incomers'),\n // aka DAG ancestors\n predecessors: defineDagAllHops({\n incoming: true\n })\n}); // Neighbourhood functions\n//////////////////////////\n\nextend(elesfn$2, {\n neighborhood: cache(function (selector) {\n var elements = [];\n var nodes = this.nodes();\n\n for (var i = 0; i < nodes.length; i++) {\n // for all nodes\n var node = nodes[i];\n var connectedEdges = node.connectedEdges(); // for each connected edge, add the edge and the other node\n\n for (var j = 0; j < connectedEdges.length; j++) {\n var edge = connectedEdges[j];\n var src = edge.source();\n var tgt = edge.target();\n var otherNode = node === src ? tgt : src; // need check in case of loop\n\n if (otherNode.length > 0) {\n elements.push(otherNode[0]); // add node 1 hop away\n } // add connected edge\n\n\n elements.push(edge[0]);\n }\n }\n\n return this.spawn(elements, true).filter(selector);\n }, 'neighborhood'),\n closedNeighborhood: function closedNeighborhood(selector) {\n return this.neighborhood().add(this).filter(selector);\n },\n openNeighborhood: function openNeighborhood(selector) {\n return this.neighborhood(selector);\n }\n}); // aliases\n\nelesfn$2.neighbourhood = elesfn$2.neighborhood;\nelesfn$2.closedNeighbourhood = elesfn$2.closedNeighborhood;\nelesfn$2.openNeighbourhood = elesfn$2.openNeighborhood; // Edge functions\n/////////////////\n\nextend(elesfn$2, {\n source: cache(function sourceImpl(selector) {\n var ele = this[0];\n var src;\n\n if (ele) {\n src = ele._private.source || ele.cy().collection();\n }\n\n return src && selector ? src.filter(selector) : src;\n }, 'source'),\n target: cache(function targetImpl(selector) {\n var ele = this[0];\n var tgt;\n\n if (ele) {\n tgt = ele._private.target || ele.cy().collection();\n }\n\n return tgt && selector ? tgt.filter(selector) : tgt;\n }, 'target'),\n sources: defineSourceFunction({\n attr: 'source'\n }),\n targets: defineSourceFunction({\n attr: 'target'\n })\n});\n\nfunction defineSourceFunction(params) {\n return function sourceImpl(selector) {\n var sources = [];\n\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n var src = ele._private[params.attr];\n\n if (src) {\n sources.push(src);\n }\n }\n\n return this.spawn(sources, true).filter(selector);\n };\n}\n\nextend(elesfn$2, {\n edgesWith: cache(defineEdgesWithFunction(), 'edgesWith'),\n edgesTo: cache(defineEdgesWithFunction({\n thisIsSrc: true\n }), 'edgesTo')\n});\n\nfunction defineEdgesWithFunction(params) {\n return function edgesWithImpl(otherNodes) {\n var elements = [];\n var cy = this._private.cy;\n var p = params || {}; // get elements if a selector is specified\n\n if (string(otherNodes)) {\n otherNodes = cy.$(otherNodes);\n }\n\n for (var h = 0; h < otherNodes.length; h++) {\n var edges = otherNodes[h]._private.edges;\n\n for (var i = 0; i < edges.length; i++) {\n var edge = edges[i];\n var edgeData = edge._private.data;\n var thisToOther = this.hasElementWithId(edgeData.source) && otherNodes.hasElementWithId(edgeData.target);\n var otherToThis = otherNodes.hasElementWithId(edgeData.source) && this.hasElementWithId(edgeData.target);\n var edgeConnectsThisAndOther = thisToOther || otherToThis;\n\n if (!edgeConnectsThisAndOther) {\n continue;\n }\n\n if (p.thisIsSrc || p.thisIsTgt) {\n if (p.thisIsSrc && !thisToOther) {\n continue;\n }\n\n if (p.thisIsTgt && !otherToThis) {\n continue;\n }\n }\n\n elements.push(edge);\n }\n }\n\n return this.spawn(elements, true);\n };\n}\n\nextend(elesfn$2, {\n connectedEdges: cache(function (selector) {\n var retEles = [];\n var eles = this;\n\n for (var i = 0; i < eles.length; i++) {\n var node = eles[i];\n\n if (!node.isNode()) {\n continue;\n }\n\n var edges = node._private.edges;\n\n for (var j = 0; j < edges.length; j++) {\n var edge = edges[j];\n retEles.push(edge);\n }\n }\n\n return this.spawn(retEles, true).filter(selector);\n }, 'connectedEdges'),\n connectedNodes: cache(function (selector) {\n var retEles = [];\n var eles = this;\n\n for (var i = 0; i < eles.length; i++) {\n var edge = eles[i];\n\n if (!edge.isEdge()) {\n continue;\n }\n\n retEles.push(edge.source()[0]);\n retEles.push(edge.target()[0]);\n }\n\n return this.spawn(retEles, true).filter(selector);\n }, 'connectedNodes'),\n parallelEdges: cache(defineParallelEdgesFunction(), 'parallelEdges'),\n codirectedEdges: cache(defineParallelEdgesFunction({\n codirected: true\n }), 'codirectedEdges')\n});\n\nfunction defineParallelEdgesFunction(params) {\n var defaults = {\n codirected: false\n };\n params = extend({}, defaults, params);\n return function parallelEdgesImpl(selector) {\n // micro-optimised for renderer\n var elements = [];\n var edges = this.edges();\n var p = params; // look at all the edges in the collection\n\n for (var i = 0; i < edges.length; i++) {\n var edge1 = edges[i];\n var edge1_p = edge1._private;\n var src1 = edge1_p.source;\n var srcid1 = src1._private.data.id;\n var tgtid1 = edge1_p.data.target;\n var srcEdges1 = src1._private.edges; // look at edges connected to the src node of this edge\n\n for (var j = 0; j < srcEdges1.length; j++) {\n var edge2 = srcEdges1[j];\n var edge2data = edge2._private.data;\n var tgtid2 = edge2data.target;\n var srcid2 = edge2data.source;\n var codirected = tgtid2 === tgtid1 && srcid2 === srcid1;\n var oppdirected = srcid1 === tgtid2 && tgtid1 === srcid2;\n\n if (p.codirected && codirected || !p.codirected && (codirected || oppdirected)) {\n elements.push(edge2);\n }\n }\n }\n\n return this.spawn(elements, true).filter(selector);\n };\n} // Misc functions\n/////////////////\n\n\nextend(elesfn$2, {\n components: function components(root) {\n var self = this;\n var cy = self.cy();\n var visited = cy.collection();\n var unvisited = root == null ? self.nodes() : root.nodes();\n var components = [];\n\n if (root != null && unvisited.empty()) {\n // root may contain only edges\n unvisited = root.sources(); // doesn't matter which node to use (undirected), so just use the source sides\n }\n\n var visitInComponent = function visitInComponent(node, component) {\n visited.merge(node);\n unvisited.unmerge(node);\n component.merge(node);\n };\n\n if (unvisited.empty()) {\n return self.spawn();\n }\n\n var _loop = function _loop() {\n // each iteration yields a component\n var cmpt = cy.collection();\n components.push(cmpt);\n var root = unvisited[0];\n visitInComponent(root, cmpt);\n self.bfs({\n directed: false,\n roots: root,\n visit: function visit(v) {\n return visitInComponent(v, cmpt);\n }\n });\n cmpt.forEach(function (node) {\n node.connectedEdges().forEach(function (e) {\n // connectedEdges() usually cached\n if (self.has(e) && cmpt.has(e.source()) && cmpt.has(e.target())) {\n // has() is cheap\n cmpt.merge(e); // forEach() only considers nodes -- sets N at call time\n }\n });\n });\n };\n\n do {\n _loop();\n } while (unvisited.length > 0);\n\n return components;\n },\n component: function component() {\n var ele = this[0];\n return ele.cy().mutableElements().components(ele)[0];\n }\n});\nelesfn$2.componentsOf = elesfn$2.components;\n\nvar Collection = function Collection(cy, elements) {\n var unique = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var removed = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n\n if (cy === undefined) {\n error('A collection must have a reference to the core');\n return;\n }\n\n var map = new Map$1();\n var createdElements = false;\n\n if (!elements) {\n elements = [];\n } else if (elements.length > 0 && plainObject(elements[0]) && !element(elements[0])) {\n createdElements = true; // make elements from json and restore all at once later\n\n var eles = [];\n var elesIds = new Set$1();\n\n for (var i = 0, l = elements.length; i < l; i++) {\n var json = elements[i];\n\n if (json.data == null) {\n json.data = {};\n }\n\n var _data = json.data; // make sure newly created elements have valid ids\n\n if (_data.id == null) {\n _data.id = uuid();\n } else if (cy.hasElementWithId(_data.id) || elesIds.has(_data.id)) {\n continue; // can't create element if prior id already exists\n }\n\n var ele = new Element(cy, json, false);\n eles.push(ele);\n elesIds.add(_data.id);\n }\n\n elements = eles;\n }\n\n this.length = 0;\n\n for (var _i = 0, _l = elements.length; _i < _l; _i++) {\n var element$1 = elements[_i][0]; // [0] in case elements is an array of collections, rather than array of elements\n\n if (element$1 == null) {\n continue;\n }\n\n var id = element$1._private.data.id;\n\n if (!unique || !map.has(id)) {\n if (unique) {\n map.set(id, {\n index: this.length,\n ele: element$1\n });\n }\n\n this[this.length] = element$1;\n this.length++;\n }\n }\n\n this._private = {\n eles: this,\n cy: cy,\n\n get map() {\n if (this.lazyMap == null) {\n this.rebuildMap();\n }\n\n return this.lazyMap;\n },\n\n set map(m) {\n this.lazyMap = m;\n },\n\n rebuildMap: function rebuildMap() {\n var m = this.lazyMap = new Map$1();\n var eles = this.eles;\n\n for (var _i2 = 0; _i2 < eles.length; _i2++) {\n var _ele = eles[_i2];\n m.set(_ele.id(), {\n index: _i2,\n ele: _ele\n });\n }\n }\n };\n\n if (unique) {\n this._private.map = map;\n } // restore the elements if we created them from json\n\n\n if (createdElements && !removed) {\n this.restore();\n }\n}; // Functions\n////////////////////////////////////////////////////////////////////////////////////////////////////\n// keep the prototypes in sync (an element has the same functions as a collection)\n// and use elefn and elesfn as shorthands to the prototypes\n\n\nvar elesfn$1 = Element.prototype = Collection.prototype = Object.create(Array.prototype);\n\nelesfn$1.instanceString = function () {\n return 'collection';\n};\n\nelesfn$1.spawn = function (eles, unique) {\n return new Collection(this.cy(), eles, unique);\n};\n\nelesfn$1.spawnSelf = function () {\n return this.spawn(this);\n};\n\nelesfn$1.cy = function () {\n return this._private.cy;\n};\n\nelesfn$1.renderer = function () {\n return this._private.cy.renderer();\n};\n\nelesfn$1.element = function () {\n return this[0];\n};\n\nelesfn$1.collection = function () {\n if (collection(this)) {\n return this;\n } else {\n // an element\n return new Collection(this._private.cy, [this]);\n }\n};\n\nelesfn$1.unique = function () {\n return new Collection(this._private.cy, this, true);\n};\n\nelesfn$1.hasElementWithId = function (id) {\n id = '' + id; // id must be string\n\n return this._private.map.has(id);\n};\n\nelesfn$1.getElementById = function (id) {\n id = '' + id; // id must be string\n\n var cy = this._private.cy;\n\n var entry = this._private.map.get(id);\n\n return entry ? entry.ele : new Collection(cy); // get ele or empty collection\n};\n\nelesfn$1.$id = elesfn$1.getElementById;\n\nelesfn$1.poolIndex = function () {\n var cy = this._private.cy;\n var eles = cy._private.elements;\n var id = this[0]._private.data.id;\n return eles._private.map.get(id).index;\n};\n\nelesfn$1.indexOf = function (ele) {\n var id = ele[0]._private.data.id;\n return this._private.map.get(id).index;\n};\n\nelesfn$1.indexOfId = function (id) {\n id = '' + id; // id must be string\n\n return this._private.map.get(id).index;\n};\n\nelesfn$1.json = function (obj) {\n var ele = this.element();\n var cy = this.cy();\n\n if (ele == null && obj) {\n return this;\n } // can't set to no eles\n\n\n if (ele == null) {\n return undefined;\n } // can't get from no eles\n\n\n var p = ele._private;\n\n if (plainObject(obj)) {\n // set\n cy.startBatch();\n\n if (obj.data) {\n ele.data(obj.data);\n var _data2 = p.data;\n\n if (ele.isEdge()) {\n // source and target are immutable via data()\n var move = false;\n var spec = {};\n var src = obj.data.source;\n var tgt = obj.data.target;\n\n if (src != null && src != _data2.source) {\n spec.source = '' + src; // id must be string\n\n move = true;\n }\n\n if (tgt != null && tgt != _data2.target) {\n spec.target = '' + tgt; // id must be string\n\n move = true;\n }\n\n if (move) {\n ele = ele.move(spec);\n }\n } else {\n // parent is immutable via data()\n var newParentValSpecd = ('parent' in obj.data);\n var parent = obj.data.parent;\n\n if (newParentValSpecd && (parent != null || _data2.parent != null) && parent != _data2.parent) {\n if (parent === undefined) {\n // can't set undefined imperatively, so use null\n parent = null;\n }\n\n if (parent != null) {\n parent = '' + parent; // id must be string\n }\n\n ele = ele.move({\n parent: parent\n });\n }\n }\n }\n\n if (obj.position) {\n ele.position(obj.position);\n } // ignore group -- immutable\n\n\n var checkSwitch = function checkSwitch(k, trueFnName, falseFnName) {\n var obj_k = obj[k];\n\n if (obj_k != null && obj_k !== p[k]) {\n if (obj_k) {\n ele[trueFnName]();\n } else {\n ele[falseFnName]();\n }\n }\n };\n\n checkSwitch('removed', 'remove', 'restore');\n checkSwitch('selected', 'select', 'unselect');\n checkSwitch('selectable', 'selectify', 'unselectify');\n checkSwitch('locked', 'lock', 'unlock');\n checkSwitch('grabbable', 'grabify', 'ungrabify');\n checkSwitch('pannable', 'panify', 'unpanify');\n\n if (obj.classes != null) {\n ele.classes(obj.classes);\n }\n\n cy.endBatch();\n return this;\n } else if (obj === undefined) {\n // get\n var json = {\n data: copy(p.data),\n position: copy(p.position),\n group: p.group,\n removed: p.removed,\n selected: p.selected,\n selectable: p.selectable,\n locked: p.locked,\n grabbable: p.grabbable,\n pannable: p.pannable,\n classes: null\n };\n json.classes = '';\n var i = 0;\n p.classes.forEach(function (cls) {\n return json.classes += i++ === 0 ? cls : ' ' + cls;\n });\n return json;\n }\n};\n\nelesfn$1.jsons = function () {\n var jsons = [];\n\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n var json = ele.json();\n jsons.push(json);\n }\n\n return jsons;\n};\n\nelesfn$1.clone = function () {\n var cy = this.cy();\n var elesArr = [];\n\n for (var i = 0; i < this.length; i++) {\n var ele = this[i];\n var json = ele.json();\n var clone = new Element(cy, json, false); // NB no restore\n\n elesArr.push(clone);\n }\n\n return new Collection(cy, elesArr);\n};\n\nelesfn$1.copy = elesfn$1.clone;\n\nelesfn$1.restore = function () {\n var notifyRenderer = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n var addToPool = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n var self = this;\n var cy = self.cy();\n var cy_p = cy._private; // create arrays of nodes and edges, since we need to\n // restore the nodes first\n\n var nodes = [];\n var edges = [];\n var elements;\n\n for (var _i3 = 0, l = self.length; _i3 < l; _i3++) {\n var ele = self[_i3];\n\n if (addToPool && !ele.removed()) {\n // don't need to handle this ele\n continue;\n } // keep nodes first in the array and edges after\n\n\n if (ele.isNode()) {\n // put to front of array if node\n nodes.push(ele);\n } else {\n // put to end of array if edge\n edges.push(ele);\n }\n }\n\n elements = nodes.concat(edges);\n var i;\n\n var removeFromElements = function removeFromElements() {\n elements.splice(i, 1);\n i--;\n }; // now, restore each element\n\n\n for (i = 0; i < elements.length; i++) {\n var _ele2 = elements[i];\n var _private = _ele2._private;\n var _data3 = _private.data; // the traversal cache should start fresh when ele is added\n\n _ele2.clearTraversalCache(); // set id and validate\n\n\n if (!addToPool && !_private.removed) ; else if (_data3.id === undefined) {\n _data3.id = uuid();\n } else if (number$1(_data3.id)) {\n _data3.id = '' + _data3.id; // now it's a string\n } else if (emptyString(_data3.id) || !string(_data3.id)) {\n error('Can not create element with invalid string ID `' + _data3.id + '`'); // can't create element if it has empty string as id or non-string id\n\n removeFromElements();\n continue;\n } else if (cy.hasElementWithId(_data3.id)) {\n error('Can not create second element with ID `' + _data3.id + '`'); // can't create element if one already has that id\n\n removeFromElements();\n continue;\n }\n\n var id = _data3.id; // id is finalised, now let's keep a ref\n\n if (_ele2.isNode()) {\n // extra checks for nodes\n var pos = _private.position; // make sure the nodes have a defined position\n\n if (pos.x == null) {\n pos.x = 0;\n }\n\n if (pos.y == null) {\n pos.y = 0;\n }\n }\n\n if (_ele2.isEdge()) {\n // extra checks for edges\n var edge = _ele2;\n var fields = ['source', 'target'];\n var fieldsLength = fields.length;\n var badSourceOrTarget = false;\n\n for (var j = 0; j < fieldsLength; j++) {\n var field = fields[j];\n var val = _data3[field];\n\n if (number$1(val)) {\n val = _data3[field] = '' + _data3[field]; // now string\n }\n\n if (val == null || val === '') {\n // can't create if source or target is not defined properly\n error('Can not create edge `' + id + '` with unspecified ' + field);\n badSourceOrTarget = true;\n } else if (!cy.hasElementWithId(val)) {\n // can't create edge if one of its nodes doesn't exist\n error('Can not create edge `' + id + '` with nonexistant ' + field + ' `' + val + '`');\n badSourceOrTarget = true;\n }\n }\n\n if (badSourceOrTarget) {\n removeFromElements();\n continue;\n } // can't create this\n\n\n var src = cy.getElementById(_data3.source);\n var tgt = cy.getElementById(_data3.target); // only one edge in node if loop\n\n if (src.same(tgt)) {\n src._private.edges.push(edge);\n } else {\n src._private.edges.push(edge);\n\n tgt._private.edges.push(edge);\n }\n\n edge._private.source = src;\n edge._private.target = tgt;\n } // if is edge\n // create mock ids / indexes maps for element so it can be used like collections\n\n\n _private.map = new Map$1();\n\n _private.map.set(id, {\n ele: _ele2,\n index: 0\n });\n\n _private.removed = false;\n\n if (addToPool) {\n cy.addToPool(_ele2);\n }\n } // for each element\n // do compound node sanity checks\n\n\n for (var _i4 = 0; _i4 < nodes.length; _i4++) {\n // each node\n var node = nodes[_i4];\n var _data4 = node._private.data;\n\n if (number$1(_data4.parent)) {\n // then automake string\n _data4.parent = '' + _data4.parent;\n }\n\n var parentId = _data4.parent;\n var specifiedParent = parentId != null;\n\n if (specifiedParent || node._private.parent) {\n var parent = node._private.parent ? cy.collection().merge(node._private.parent) : cy.getElementById(parentId);\n\n if (parent.empty()) {\n // non-existant parent; just remove it\n _data4.parent = undefined;\n } else if (parent[0].removed()) {\n warn('Node added with missing parent, reference to parent removed');\n _data4.parent = undefined;\n node._private.parent = null;\n } else {\n var selfAsParent = false;\n var ancestor = parent;\n\n while (!ancestor.empty()) {\n if (node.same(ancestor)) {\n // mark self as parent and remove from data\n selfAsParent = true;\n _data4.parent = undefined; // remove parent reference\n // exit or we loop forever\n\n break;\n }\n\n ancestor = ancestor.parent();\n }\n\n if (!selfAsParent) {\n // connect with children\n parent[0]._private.children.push(node);\n\n node._private.parent = parent[0]; // let the core know we have a compound graph\n\n cy_p.hasCompoundNodes = true;\n }\n } // else\n\n } // if specified parent\n\n } // for each node\n\n\n if (elements.length > 0) {\n var restored = elements.length === self.length ? self : new Collection(cy, elements);\n\n for (var _i5 = 0; _i5 < restored.length; _i5++) {\n var _ele3 = restored[_i5];\n\n if (_ele3.isNode()) {\n continue;\n } // adding an edge invalidates the traversal caches for the parallel edges\n\n\n _ele3.parallelEdges().clearTraversalCache(); // adding an edge invalidates the traversal cache for the connected nodes\n\n\n _ele3.source().clearTraversalCache();\n\n _ele3.target().clearTraversalCache();\n }\n\n var toUpdateStyle;\n\n if (cy_p.hasCompoundNodes) {\n toUpdateStyle = cy.collection().merge(restored).merge(restored.connectedNodes()).merge(restored.parent());\n } else {\n toUpdateStyle = restored;\n }\n\n toUpdateStyle.dirtyCompoundBoundsCache().dirtyBoundingBoxCache().updateStyle(notifyRenderer);\n\n if (notifyRenderer) {\n restored.emitAndNotify('add');\n } else if (addToPool) {\n restored.emit('add');\n }\n }\n\n return self; // chainability\n};\n\nelesfn$1.removed = function () {\n var ele = this[0];\n return ele && ele._private.removed;\n};\n\nelesfn$1.inside = function () {\n var ele = this[0];\n return ele && !ele._private.removed;\n};\n\nelesfn$1.remove = function () {\n var notifyRenderer = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n var removeFromPool = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n var self = this;\n var elesToRemove = [];\n var elesToRemoveIds = {};\n var cy = self._private.cy; // add connected edges\n\n function addConnectedEdges(node) {\n var edges = node._private.edges;\n\n for (var i = 0; i < edges.length; i++) {\n add(edges[i]);\n }\n } // add descendant nodes\n\n\n function addChildren(node) {\n var children = node._private.children;\n\n for (var i = 0; i < children.length; i++) {\n add(children[i]);\n }\n }\n\n function add(ele) {\n var alreadyAdded = elesToRemoveIds[ele.id()];\n\n if (removeFromPool && ele.removed() || alreadyAdded) {\n return;\n } else {\n elesToRemoveIds[ele.id()] = true;\n }\n\n if (ele.isNode()) {\n elesToRemove.push(ele); // nodes are removed last\n\n addConnectedEdges(ele);\n addChildren(ele);\n } else {\n elesToRemove.unshift(ele); // edges are removed first\n }\n } // make the list of elements to remove\n // (may be removing more than specified due to connected edges etc)\n\n\n for (var i = 0, l = self.length; i < l; i++) {\n var ele = self[i];\n add(ele);\n }\n\n function removeEdgeRef(node, edge) {\n var connectedEdges = node._private.edges;\n removeFromArray(connectedEdges, edge); // removing an edges invalidates the traversal cache for its nodes\n\n node.clearTraversalCache();\n }\n\n function removeParallelRef(pllEdge) {\n // removing an edge invalidates the traversal caches for the parallel edges\n pllEdge.clearTraversalCache();\n }\n\n var alteredParents = [];\n alteredParents.ids = {};\n\n function removeChildRef(parent, ele) {\n ele = ele[0];\n parent = parent[0];\n var children = parent._private.children;\n var pid = parent.id();\n removeFromArray(children, ele); // remove parent => child ref\n\n ele._private.parent = null; // remove child => parent ref\n\n if (!alteredParents.ids[pid]) {\n alteredParents.ids[pid] = true;\n alteredParents.push(parent);\n }\n }\n\n self.dirtyCompoundBoundsCache();\n\n if (removeFromPool) {\n cy.removeFromPool(elesToRemove); // remove from core pool\n }\n\n for (var _i6 = 0; _i6 < elesToRemove.length; _i6++) {\n var _ele4 = elesToRemove[_i6];\n\n if (_ele4.isEdge()) {\n // remove references to this edge in its connected nodes\n var src = _ele4.source()[0];\n\n var tgt = _ele4.target()[0];\n\n removeEdgeRef(src, _ele4);\n removeEdgeRef(tgt, _ele4);\n\n var pllEdges = _ele4.parallelEdges();\n\n for (var j = 0; j < pllEdges.length; j++) {\n var pllEdge = pllEdges[j];\n removeParallelRef(pllEdge);\n\n if (pllEdge.isBundledBezier()) {\n pllEdge.dirtyBoundingBoxCache();\n }\n }\n } else {\n // remove reference to parent\n var parent = _ele4.parent();\n\n if (parent.length !== 0) {\n removeChildRef(parent, _ele4);\n }\n }\n\n if (removeFromPool) {\n // mark as removed\n _ele4._private.removed = true;\n }\n } // check to see if we have a compound graph or not\n\n\n var elesStillInside = cy._private.elements;\n cy._private.hasCompoundNodes = false;\n\n for (var _i7 = 0; _i7 < elesStillInside.length; _i7++) {\n var _ele5 = elesStillInside[_i7];\n\n if (_ele5.isParent()) {\n cy._private.hasCompoundNodes = true;\n break;\n }\n }\n\n var removedElements = new Collection(this.cy(), elesToRemove);\n\n if (removedElements.size() > 0) {\n // must manually notify since trigger won't do this automatically once removed\n if (notifyRenderer) {\n removedElements.emitAndNotify('remove');\n } else if (removeFromPool) {\n removedElements.emit('remove');\n }\n } // the parents who were modified by the removal need their style updated\n\n\n for (var _i8 = 0; _i8 < alteredParents.length; _i8++) {\n var _ele6 = alteredParents[_i8];\n\n if (!removeFromPool || !_ele6.removed()) {\n _ele6.updateStyle();\n }\n }\n\n return removedElements;\n};\n\nelesfn$1.move = function (struct) {\n var cy = this._private.cy;\n var eles = this; // just clean up refs, caches, etc. in the same way as when removing and then restoring\n // (our calls to remove/restore do not remove from the graph or make events)\n\n var notifyRenderer = false;\n var modifyPool = false;\n\n var toString = function toString(id) {\n return id == null ? id : '' + id;\n }; // id must be string\n\n\n if (struct.source !== undefined || struct.target !== undefined) {\n var srcId = toString(struct.source);\n var tgtId = toString(struct.target);\n var srcExists = srcId != null && cy.hasElementWithId(srcId);\n var tgtExists = tgtId != null && cy.hasElementWithId(tgtId);\n\n if (srcExists || tgtExists) {\n cy.batch(function () {\n // avoid duplicate style updates\n eles.remove(notifyRenderer, modifyPool); // clean up refs etc.\n\n eles.emitAndNotify('moveout');\n\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n var _data5 = ele._private.data;\n\n if (ele.isEdge()) {\n if (srcExists) {\n _data5.source = srcId;\n }\n\n if (tgtExists) {\n _data5.target = tgtId;\n }\n }\n }\n\n eles.restore(notifyRenderer, modifyPool); // make new refs, style, etc.\n });\n eles.emitAndNotify('move');\n }\n } else if (struct.parent !== undefined) {\n // move node to new parent\n var parentId = toString(struct.parent);\n var parentExists = parentId === null || cy.hasElementWithId(parentId);\n\n if (parentExists) {\n var pidToAssign = parentId === null ? undefined : parentId;\n cy.batch(function () {\n // avoid duplicate style updates\n var updated = eles.remove(notifyRenderer, modifyPool); // clean up refs etc.\n\n updated.emitAndNotify('moveout');\n\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n var _data6 = ele._private.data;\n\n if (ele.isNode()) {\n _data6.parent = pidToAssign;\n }\n }\n\n updated.restore(notifyRenderer, modifyPool); // make new refs, style, etc.\n });\n eles.emitAndNotify('move');\n }\n }\n\n return this;\n};\n\n[elesfn$j, elesfn$i, elesfn$h, elesfn$g, elesfn$f, data, elesfn$d, dimensions, elesfn$9, elesfn$8, elesfn$7, elesfn$6, elesfn$5, elesfn$4, elesfn$3, elesfn$2].forEach(function (props) {\n extend(elesfn$1, props);\n});\n\nvar corefn$9 = {\n add: function add(opts) {\n var elements;\n var cy = this; // add the elements\n\n if (elementOrCollection(opts)) {\n var eles = opts;\n\n if (eles._private.cy === cy) {\n // same instance => just restore\n elements = eles.restore();\n } else {\n // otherwise, copy from json\n var jsons = [];\n\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n jsons.push(ele.json());\n }\n\n elements = new Collection(cy, jsons);\n }\n } // specify an array of options\n else if (array(opts)) {\n var _jsons = opts;\n elements = new Collection(cy, _jsons);\n } // specify via opts.nodes and opts.edges\n else if (plainObject(opts) && (array(opts.nodes) || array(opts.edges))) {\n var elesByGroup = opts;\n var _jsons2 = [];\n var grs = ['nodes', 'edges'];\n\n for (var _i = 0, il = grs.length; _i < il; _i++) {\n var group = grs[_i];\n var elesArray = elesByGroup[group];\n\n if (array(elesArray)) {\n for (var j = 0, jl = elesArray.length; j < jl; j++) {\n var json = extend({\n group: group\n }, elesArray[j]);\n\n _jsons2.push(json);\n }\n }\n }\n\n elements = new Collection(cy, _jsons2);\n } // specify options for one element\n else {\n var _json = opts;\n elements = new Element(cy, _json).collection();\n }\n\n return elements;\n },\n remove: function remove(collection) {\n if (elementOrCollection(collection)) ; else if (string(collection)) {\n var selector = collection;\n collection = this.$(selector);\n }\n\n return collection.remove();\n }\n};\n\n/* global Float32Array */\n\n/*! Bezier curve function generator. Copyright Gaetan Renaudeau. MIT License: http://en.wikipedia.org/wiki/MIT_License */\nfunction generateCubicBezier(mX1, mY1, mX2, mY2) {\n var NEWTON_ITERATIONS = 4,\n NEWTON_MIN_SLOPE = 0.001,\n SUBDIVISION_PRECISION = 0.0000001,\n SUBDIVISION_MAX_ITERATIONS = 10,\n kSplineTableSize = 11,\n kSampleStepSize = 1.0 / (kSplineTableSize - 1.0),\n float32ArraySupported = typeof Float32Array !== 'undefined';\n /* Must contain four arguments. */\n\n if (arguments.length !== 4) {\n return false;\n }\n /* Arguments must be numbers. */\n\n\n for (var i = 0; i < 4; ++i) {\n if (typeof arguments[i] !== \"number\" || isNaN(arguments[i]) || !isFinite(arguments[i])) {\n return false;\n }\n }\n /* X values must be in the [0, 1] range. */\n\n\n mX1 = Math.min(mX1, 1);\n mX2 = Math.min(mX2, 1);\n mX1 = Math.max(mX1, 0);\n mX2 = Math.max(mX2, 0);\n var mSampleValues = float32ArraySupported ? new Float32Array(kSplineTableSize) : new Array(kSplineTableSize);\n\n function A(aA1, aA2) {\n return 1.0 - 3.0 * aA2 + 3.0 * aA1;\n }\n\n function B(aA1, aA2) {\n return 3.0 * aA2 - 6.0 * aA1;\n }\n\n function C(aA1) {\n return 3.0 * aA1;\n }\n\n function calcBezier(aT, aA1, aA2) {\n return ((A(aA1, aA2) * aT + B(aA1, aA2)) * aT + C(aA1)) * aT;\n }\n\n function getSlope(aT, aA1, aA2) {\n return 3.0 * A(aA1, aA2) * aT * aT + 2.0 * B(aA1, aA2) * aT + C(aA1);\n }\n\n function newtonRaphsonIterate(aX, aGuessT) {\n for (var _i = 0; _i < NEWTON_ITERATIONS; ++_i) {\n var currentSlope = getSlope(aGuessT, mX1, mX2);\n\n if (currentSlope === 0.0) {\n return aGuessT;\n }\n\n var currentX = calcBezier(aGuessT, mX1, mX2) - aX;\n aGuessT -= currentX / currentSlope;\n }\n\n return aGuessT;\n }\n\n function calcSampleValues() {\n for (var _i2 = 0; _i2 < kSplineTableSize; ++_i2) {\n mSampleValues[_i2] = calcBezier(_i2 * kSampleStepSize, mX1, mX2);\n }\n }\n\n function binarySubdivide(aX, aA, aB) {\n var currentX,\n currentT,\n i = 0;\n\n do {\n currentT = aA + (aB - aA) / 2.0;\n currentX = calcBezier(currentT, mX1, mX2) - aX;\n\n if (currentX > 0.0) {\n aB = currentT;\n } else {\n aA = currentT;\n }\n } while (Math.abs(currentX) > SUBDIVISION_PRECISION && ++i < SUBDIVISION_MAX_ITERATIONS);\n\n return currentT;\n }\n\n function getTForX(aX) {\n var intervalStart = 0.0,\n currentSample = 1,\n lastSample = kSplineTableSize - 1;\n\n for (; currentSample !== lastSample && mSampleValues[currentSample] <= aX; ++currentSample) {\n intervalStart += kSampleStepSize;\n }\n\n --currentSample;\n var dist = (aX - mSampleValues[currentSample]) / (mSampleValues[currentSample + 1] - mSampleValues[currentSample]),\n guessForT = intervalStart + dist * kSampleStepSize,\n initialSlope = getSlope(guessForT, mX1, mX2);\n\n if (initialSlope >= NEWTON_MIN_SLOPE) {\n return newtonRaphsonIterate(aX, guessForT);\n } else if (initialSlope === 0.0) {\n return guessForT;\n } else {\n return binarySubdivide(aX, intervalStart, intervalStart + kSampleStepSize);\n }\n }\n\n var _precomputed = false;\n\n function precompute() {\n _precomputed = true;\n\n if (mX1 !== mY1 || mX2 !== mY2) {\n calcSampleValues();\n }\n }\n\n var f = function f(aX) {\n if (!_precomputed) {\n precompute();\n }\n\n if (mX1 === mY1 && mX2 === mY2) {\n return aX;\n }\n\n if (aX === 0) {\n return 0;\n }\n\n if (aX === 1) {\n return 1;\n }\n\n return calcBezier(getTForX(aX), mY1, mY2);\n };\n\n f.getControlPoints = function () {\n return [{\n x: mX1,\n y: mY1\n }, {\n x: mX2,\n y: mY2\n }];\n };\n\n var str = \"generateBezier(\" + [mX1, mY1, mX2, mY2] + \")\";\n\n f.toString = function () {\n return str;\n };\n\n return f;\n}\n\n/*! Runge-Kutta spring physics function generator. Adapted from Framer.js, copyright Koen Bok. MIT License: http://en.wikipedia.org/wiki/MIT_License */\n\n/* Given a tension, friction, and duration, a simulation at 60FPS will first run without a defined duration in order to calculate the full path. A second pass\n then adjusts the time delta -- using the relation between actual time and duration -- to calculate the path for the duration-constrained animation. */\nvar generateSpringRK4 = function () {\n function springAccelerationForState(state) {\n return -state.tension * state.x - state.friction * state.v;\n }\n\n function springEvaluateStateWithDerivative(initialState, dt, derivative) {\n var state = {\n x: initialState.x + derivative.dx * dt,\n v: initialState.v + derivative.dv * dt,\n tension: initialState.tension,\n friction: initialState.friction\n };\n return {\n dx: state.v,\n dv: springAccelerationForState(state)\n };\n }\n\n function springIntegrateState(state, dt) {\n var a = {\n dx: state.v,\n dv: springAccelerationForState(state)\n },\n b = springEvaluateStateWithDerivative(state, dt * 0.5, a),\n c = springEvaluateStateWithDerivative(state, dt * 0.5, b),\n d = springEvaluateStateWithDerivative(state, dt, c),\n dxdt = 1.0 / 6.0 * (a.dx + 2.0 * (b.dx + c.dx) + d.dx),\n dvdt = 1.0 / 6.0 * (a.dv + 2.0 * (b.dv + c.dv) + d.dv);\n state.x = state.x + dxdt * dt;\n state.v = state.v + dvdt * dt;\n return state;\n }\n\n return function springRK4Factory(tension, friction, duration) {\n var initState = {\n x: -1,\n v: 0,\n tension: null,\n friction: null\n },\n path = [0],\n time_lapsed = 0,\n tolerance = 1 / 10000,\n DT = 16 / 1000,\n have_duration,\n dt,\n last_state;\n tension = parseFloat(tension) || 500;\n friction = parseFloat(friction) || 20;\n duration = duration || null;\n initState.tension = tension;\n initState.friction = friction;\n have_duration = duration !== null;\n /* Calculate the actual time it takes for this animation to complete with the provided conditions. */\n\n if (have_duration) {\n /* Run the simulation without a duration. */\n time_lapsed = springRK4Factory(tension, friction);\n /* Compute the adjusted time delta. */\n\n dt = time_lapsed / duration * DT;\n } else {\n dt = DT;\n }\n\n for (;;) {\n /* Next/step function .*/\n last_state = springIntegrateState(last_state || initState, dt);\n /* Store the position. */\n\n path.push(1 + last_state.x);\n time_lapsed += 16;\n /* If the change threshold is reached, break. */\n\n if (!(Math.abs(last_state.x) > tolerance && Math.abs(last_state.v) > tolerance)) {\n break;\n }\n }\n /* If duration is not defined, return the actual time required for completing this animation. Otherwise, return a closure that holds the\n computed path and returns a snapshot of the position according to a given percentComplete. */\n\n\n return !have_duration ? time_lapsed : function (percentComplete) {\n return path[percentComplete * (path.length - 1) | 0];\n };\n };\n}();\n\nvar cubicBezier = function cubicBezier(t1, p1, t2, p2) {\n var bezier = generateCubicBezier(t1, p1, t2, p2);\n return function (start, end, percent) {\n return start + (end - start) * bezier(percent);\n };\n};\n\nvar easings = {\n 'linear': function linear(start, end, percent) {\n return start + (end - start) * percent;\n },\n // default easings\n 'ease': cubicBezier(0.25, 0.1, 0.25, 1),\n 'ease-in': cubicBezier(0.42, 0, 1, 1),\n 'ease-out': cubicBezier(0, 0, 0.58, 1),\n 'ease-in-out': cubicBezier(0.42, 0, 0.58, 1),\n // sine\n 'ease-in-sine': cubicBezier(0.47, 0, 0.745, 0.715),\n 'ease-out-sine': cubicBezier(0.39, 0.575, 0.565, 1),\n 'ease-in-out-sine': cubicBezier(0.445, 0.05, 0.55, 0.95),\n // quad\n 'ease-in-quad': cubicBezier(0.55, 0.085, 0.68, 0.53),\n 'ease-out-quad': cubicBezier(0.25, 0.46, 0.45, 0.94),\n 'ease-in-out-quad': cubicBezier(0.455, 0.03, 0.515, 0.955),\n // cubic\n 'ease-in-cubic': cubicBezier(0.55, 0.055, 0.675, 0.19),\n 'ease-out-cubic': cubicBezier(0.215, 0.61, 0.355, 1),\n 'ease-in-out-cubic': cubicBezier(0.645, 0.045, 0.355, 1),\n // quart\n 'ease-in-quart': cubicBezier(0.895, 0.03, 0.685, 0.22),\n 'ease-out-quart': cubicBezier(0.165, 0.84, 0.44, 1),\n 'ease-in-out-quart': cubicBezier(0.77, 0, 0.175, 1),\n // quint\n 'ease-in-quint': cubicBezier(0.755, 0.05, 0.855, 0.06),\n 'ease-out-quint': cubicBezier(0.23, 1, 0.32, 1),\n 'ease-in-out-quint': cubicBezier(0.86, 0, 0.07, 1),\n // expo\n 'ease-in-expo': cubicBezier(0.95, 0.05, 0.795, 0.035),\n 'ease-out-expo': cubicBezier(0.19, 1, 0.22, 1),\n 'ease-in-out-expo': cubicBezier(1, 0, 0, 1),\n // circ\n 'ease-in-circ': cubicBezier(0.6, 0.04, 0.98, 0.335),\n 'ease-out-circ': cubicBezier(0.075, 0.82, 0.165, 1),\n 'ease-in-out-circ': cubicBezier(0.785, 0.135, 0.15, 0.86),\n // user param easings...\n 'spring': function spring(tension, friction, duration) {\n if (duration === 0) {\n // can't get a spring w/ duration 0\n return easings.linear; // duration 0 => jump to end so impl doesn't matter\n }\n\n var spring = generateSpringRK4(tension, friction, duration);\n return function (start, end, percent) {\n return start + (end - start) * spring(percent);\n };\n },\n 'cubic-bezier': cubicBezier\n};\n\nfunction getEasedValue(type, start, end, percent, easingFn) {\n if (percent === 1) {\n return end;\n }\n\n if (start === end) {\n return end;\n }\n\n var val = easingFn(start, end, percent);\n\n if (type == null) {\n return val;\n }\n\n if (type.roundValue || type.color) {\n val = Math.round(val);\n }\n\n if (type.min !== undefined) {\n val = Math.max(val, type.min);\n }\n\n if (type.max !== undefined) {\n val = Math.min(val, type.max);\n }\n\n return val;\n}\n\nfunction getValue(prop, spec) {\n if (prop.pfValue != null || prop.value != null) {\n if (prop.pfValue != null && (spec == null || spec.type.units !== '%')) {\n return prop.pfValue;\n } else {\n return prop.value;\n }\n } else {\n return prop;\n }\n}\n\nfunction ease(startProp, endProp, percent, easingFn, propSpec) {\n var type = propSpec != null ? propSpec.type : null;\n\n if (percent < 0) {\n percent = 0;\n } else if (percent > 1) {\n percent = 1;\n }\n\n var start = getValue(startProp, propSpec);\n var end = getValue(endProp, propSpec);\n\n if (number$1(start) && number$1(end)) {\n return getEasedValue(type, start, end, percent, easingFn);\n } else if (array(start) && array(end)) {\n var easedArr = [];\n\n for (var i = 0; i < end.length; i++) {\n var si = start[i];\n var ei = end[i];\n\n if (si != null && ei != null) {\n var val = getEasedValue(type, si, ei, percent, easingFn);\n easedArr.push(val);\n } else {\n easedArr.push(ei);\n }\n }\n\n return easedArr;\n }\n\n return undefined;\n}\n\nfunction step$1(self, ani, now, isCore) {\n var isEles = !isCore;\n var _p = self._private;\n var ani_p = ani._private;\n var pEasing = ani_p.easing;\n var startTime = ani_p.startTime;\n var cy = isCore ? self : self.cy();\n var style = cy.style();\n\n if (!ani_p.easingImpl) {\n if (pEasing == null) {\n // use default\n ani_p.easingImpl = easings['linear'];\n } else {\n // then define w/ name\n var easingVals;\n\n if (string(pEasing)) {\n var easingProp = style.parse('transition-timing-function', pEasing);\n easingVals = easingProp.value;\n } else {\n // then assume preparsed array\n easingVals = pEasing;\n }\n\n var name, args;\n\n if (string(easingVals)) {\n name = easingVals;\n args = [];\n } else {\n name = easingVals[1];\n args = easingVals.slice(2).map(function (n) {\n return +n;\n });\n }\n\n if (args.length > 0) {\n // create with args\n if (name === 'spring') {\n args.push(ani_p.duration); // need duration to generate spring\n }\n\n ani_p.easingImpl = easings[name].apply(null, args);\n } else {\n // static impl by name\n ani_p.easingImpl = easings[name];\n }\n }\n }\n\n var easing = ani_p.easingImpl;\n var percent;\n\n if (ani_p.duration === 0) {\n percent = 1;\n } else {\n percent = (now - startTime) / ani_p.duration;\n }\n\n if (ani_p.applying) {\n percent = ani_p.progress;\n }\n\n if (percent < 0) {\n percent = 0;\n } else if (percent > 1) {\n percent = 1;\n }\n\n if (ani_p.delay == null) {\n // then update\n var startPos = ani_p.startPosition;\n var endPos = ani_p.position;\n\n if (endPos && isEles && !self.locked()) {\n var newPos = {};\n\n if (valid(startPos.x, endPos.x)) {\n newPos.x = ease(startPos.x, endPos.x, percent, easing);\n }\n\n if (valid(startPos.y, endPos.y)) {\n newPos.y = ease(startPos.y, endPos.y, percent, easing);\n }\n\n self.position(newPos);\n }\n\n var startPan = ani_p.startPan;\n var endPan = ani_p.pan;\n var pan = _p.pan;\n var animatingPan = endPan != null && isCore;\n\n if (animatingPan) {\n if (valid(startPan.x, endPan.x)) {\n pan.x = ease(startPan.x, endPan.x, percent, easing);\n }\n\n if (valid(startPan.y, endPan.y)) {\n pan.y = ease(startPan.y, endPan.y, percent, easing);\n }\n\n self.emit('pan');\n }\n\n var startZoom = ani_p.startZoom;\n var endZoom = ani_p.zoom;\n var animatingZoom = endZoom != null && isCore;\n\n if (animatingZoom) {\n if (valid(startZoom, endZoom)) {\n _p.zoom = bound(_p.minZoom, ease(startZoom, endZoom, percent, easing), _p.maxZoom);\n }\n\n self.emit('zoom');\n }\n\n if (animatingPan || animatingZoom) {\n self.emit('viewport');\n }\n\n var props = ani_p.style;\n\n if (props && props.length > 0 && isEles) {\n for (var i = 0; i < props.length; i++) {\n var prop = props[i];\n var _name = prop.name;\n var end = prop;\n var start = ani_p.startStyle[_name];\n var propSpec = style.properties[start.name];\n var easedVal = ease(start, end, percent, easing, propSpec);\n style.overrideBypass(self, _name, easedVal);\n } // for props\n\n\n self.emit('style');\n } // if\n\n }\n\n ani_p.progress = percent;\n return percent;\n}\n\nfunction valid(start, end) {\n if (start == null || end == null) {\n return false;\n }\n\n if (number$1(start) && number$1(end)) {\n return true;\n } else if (start && end) {\n return true;\n }\n\n return false;\n}\n\nfunction startAnimation(self, ani, now, isCore) {\n var ani_p = ani._private;\n ani_p.started = true;\n ani_p.startTime = now - ani_p.progress * ani_p.duration;\n}\n\nfunction stepAll(now, cy) {\n var eles = cy._private.aniEles;\n var doneEles = [];\n\n function stepOne(ele, isCore) {\n var _p = ele._private;\n var current = _p.animation.current;\n var queue = _p.animation.queue;\n var ranAnis = false; // if nothing currently animating, get something from the queue\n\n if (current.length === 0) {\n var next = queue.shift();\n\n if (next) {\n current.push(next);\n }\n }\n\n var callbacks = function callbacks(_callbacks) {\n for (var j = _callbacks.length - 1; j >= 0; j--) {\n var cb = _callbacks[j];\n cb();\n }\n\n _callbacks.splice(0, _callbacks.length);\n }; // step and remove if done\n\n\n for (var i = current.length - 1; i >= 0; i--) {\n var ani = current[i];\n var ani_p = ani._private;\n\n if (ani_p.stopped) {\n current.splice(i, 1);\n ani_p.hooked = false;\n ani_p.playing = false;\n ani_p.started = false;\n callbacks(ani_p.frames);\n continue;\n }\n\n if (!ani_p.playing && !ani_p.applying) {\n continue;\n } // an apply() while playing shouldn't do anything\n\n\n if (ani_p.playing && ani_p.applying) {\n ani_p.applying = false;\n }\n\n if (!ani_p.started) {\n startAnimation(ele, ani, now);\n }\n\n step$1(ele, ani, now, isCore);\n\n if (ani_p.applying) {\n ani_p.applying = false;\n }\n\n callbacks(ani_p.frames);\n\n if (ani_p.step != null) {\n ani_p.step(now);\n }\n\n if (ani.completed()) {\n current.splice(i, 1);\n ani_p.hooked = false;\n ani_p.playing = false;\n ani_p.started = false;\n callbacks(ani_p.completes);\n }\n\n ranAnis = true;\n }\n\n if (!isCore && current.length === 0 && queue.length === 0) {\n doneEles.push(ele);\n }\n\n return ranAnis;\n } // stepElement\n // handle all eles\n\n\n var ranEleAni = false;\n\n for (var e = 0; e < eles.length; e++) {\n var ele = eles[e];\n var handledThisEle = stepOne(ele);\n ranEleAni = ranEleAni || handledThisEle;\n } // each element\n\n\n var ranCoreAni = stepOne(cy, true); // notify renderer\n\n if (ranEleAni || ranCoreAni) {\n if (eles.length > 0) {\n cy.notify('draw', eles);\n } else {\n cy.notify('draw');\n }\n } // remove elements from list of currently animating if its queues are empty\n\n\n eles.unmerge(doneEles);\n cy.emit('step');\n} // stepAll\n\nvar corefn$8 = {\n // pull in animation functions\n animate: define.animate(),\n animation: define.animation(),\n animated: define.animated(),\n clearQueue: define.clearQueue(),\n delay: define.delay(),\n delayAnimation: define.delayAnimation(),\n stop: define.stop(),\n addToAnimationPool: function addToAnimationPool(eles) {\n var cy = this;\n\n if (!cy.styleEnabled()) {\n return;\n } // save cycles when no style used\n\n\n cy._private.aniEles.merge(eles);\n },\n stopAnimationLoop: function stopAnimationLoop() {\n this._private.animationsRunning = false;\n },\n startAnimationLoop: function startAnimationLoop() {\n var cy = this;\n cy._private.animationsRunning = true;\n\n if (!cy.styleEnabled()) {\n return;\n } // save cycles when no style used\n // NB the animation loop will exec in headless environments if style enabled\n // and explicit cy.destroy() is necessary to stop the loop\n\n\n function headlessStep() {\n if (!cy._private.animationsRunning) {\n return;\n }\n\n requestAnimationFrame(function animationStep(now) {\n stepAll(now, cy);\n headlessStep();\n });\n }\n\n var renderer = cy.renderer();\n\n if (renderer && renderer.beforeRender) {\n // let the renderer schedule animations\n renderer.beforeRender(function rendererAnimationStep(willDraw, now) {\n stepAll(now, cy);\n }, renderer.beforeRenderPriorities.animations);\n } else {\n // manage the animation loop ourselves\n headlessStep(); // first call\n }\n }\n};\n\nvar emitterOptions = {\n qualifierCompare: function qualifierCompare(selector1, selector2) {\n if (selector1 == null || selector2 == null) {\n return selector1 == null && selector2 == null;\n } else {\n return selector1.sameText(selector2);\n }\n },\n eventMatches: function eventMatches(cy, listener, eventObj) {\n var selector = listener.qualifier;\n\n if (selector != null) {\n return cy !== eventObj.target && element(eventObj.target) && selector.matches(eventObj.target);\n }\n\n return true;\n },\n addEventFields: function addEventFields(cy, evt) {\n evt.cy = cy;\n evt.target = cy;\n },\n callbackContext: function callbackContext(cy, listener, eventObj) {\n return listener.qualifier != null ? eventObj.target : cy;\n }\n};\n\nvar argSelector = function argSelector(arg) {\n if (string(arg)) {\n return new Selector(arg);\n } else {\n return arg;\n }\n};\n\nvar elesfn = {\n createEmitter: function createEmitter() {\n var _p = this._private;\n\n if (!_p.emitter) {\n _p.emitter = new Emitter(emitterOptions, this);\n }\n\n return this;\n },\n emitter: function emitter() {\n return this._private.emitter;\n },\n on: function on(events, selector, callback) {\n this.emitter().on(events, argSelector(selector), callback);\n return this;\n },\n removeListener: function removeListener(events, selector, callback) {\n this.emitter().removeListener(events, argSelector(selector), callback);\n return this;\n },\n removeAllListeners: function removeAllListeners() {\n this.emitter().removeAllListeners();\n return this;\n },\n one: function one(events, selector, callback) {\n this.emitter().one(events, argSelector(selector), callback);\n return this;\n },\n once: function once(events, selector, callback) {\n this.emitter().one(events, argSelector(selector), callback);\n return this;\n },\n emit: function emit(events, extraParams) {\n this.emitter().emit(events, extraParams);\n return this;\n },\n emitAndNotify: function emitAndNotify(event, eles) {\n this.emit(event);\n this.notify(event, eles);\n return this;\n }\n};\ndefine.eventAliasesOn(elesfn);\n\nvar corefn$7 = {\n png: function png(options) {\n var renderer = this._private.renderer;\n options = options || {};\n return renderer.png(options);\n },\n jpg: function jpg(options) {\n var renderer = this._private.renderer;\n options = options || {};\n options.bg = options.bg || '#fff';\n return renderer.jpg(options);\n }\n};\ncorefn$7.jpeg = corefn$7.jpg;\n\nvar corefn$6 = {\n layout: function layout(options) {\n var cy = this;\n\n if (options == null) {\n error('Layout options must be specified to make a layout');\n return;\n }\n\n if (options.name == null) {\n error('A `name` must be specified to make a layout');\n return;\n }\n\n var name = options.name;\n var Layout = cy.extension('layout', name);\n\n if (Layout == null) {\n error('No such layout `' + name + '` found. Did you forget to import it and `cytoscape.use()` it?');\n return;\n }\n\n var eles;\n\n if (string(options.eles)) {\n eles = cy.$(options.eles);\n } else {\n eles = options.eles != null ? options.eles : cy.$();\n }\n\n var layout = new Layout(extend({}, options, {\n cy: cy,\n eles: eles\n }));\n return layout;\n }\n};\ncorefn$6.createLayout = corefn$6.makeLayout = corefn$6.layout;\n\nvar corefn$5 = {\n notify: function notify(eventName, eventEles) {\n var _p = this._private;\n\n if (this.batching()) {\n _p.batchNotifications = _p.batchNotifications || {};\n var eles = _p.batchNotifications[eventName] = _p.batchNotifications[eventName] || this.collection();\n\n if (eventEles != null) {\n eles.merge(eventEles);\n }\n\n return; // notifications are disabled during batching\n }\n\n if (!_p.notificationsEnabled) {\n return;\n } // exit on disabled\n\n\n var renderer = this.renderer(); // exit if destroy() called on core or renderer in between frames #1499 #1528\n\n if (this.destroyed() || !renderer) {\n return;\n }\n\n renderer.notify(eventName, eventEles);\n },\n notifications: function notifications(bool) {\n var p = this._private;\n\n if (bool === undefined) {\n return p.notificationsEnabled;\n } else {\n p.notificationsEnabled = bool ? true : false;\n }\n\n return this;\n },\n noNotifications: function noNotifications(callback) {\n this.notifications(false);\n callback();\n this.notifications(true);\n },\n batching: function batching() {\n return this._private.batchCount > 0;\n },\n startBatch: function startBatch() {\n var _p = this._private;\n\n if (_p.batchCount == null) {\n _p.batchCount = 0;\n }\n\n if (_p.batchCount === 0) {\n _p.batchStyleEles = this.collection();\n _p.batchNotifications = {};\n }\n\n _p.batchCount++;\n return this;\n },\n endBatch: function endBatch() {\n var _p = this._private;\n\n if (_p.batchCount === 0) {\n return this;\n }\n\n _p.batchCount--;\n\n if (_p.batchCount === 0) {\n // update style for dirty eles\n _p.batchStyleEles.updateStyle();\n\n var renderer = this.renderer(); // notify the renderer of queued eles and event types\n\n Object.keys(_p.batchNotifications).forEach(function (eventName) {\n var eles = _p.batchNotifications[eventName];\n\n if (eles.empty()) {\n renderer.notify(eventName);\n } else {\n renderer.notify(eventName, eles);\n }\n });\n }\n\n return this;\n },\n batch: function batch(callback) {\n this.startBatch();\n callback();\n this.endBatch();\n return this;\n },\n // for backwards compatibility\n batchData: function batchData(map) {\n var cy = this;\n return this.batch(function () {\n var ids = Object.keys(map);\n\n for (var i = 0; i < ids.length; i++) {\n var id = ids[i];\n var data = map[id];\n var ele = cy.getElementById(id);\n ele.data(data);\n }\n });\n }\n};\n\nvar rendererDefaults = defaults$g({\n hideEdgesOnViewport: false,\n textureOnViewport: false,\n motionBlur: false,\n motionBlurOpacity: 0.05,\n pixelRatio: undefined,\n desktopTapThreshold: 4,\n touchTapThreshold: 8,\n wheelSensitivity: 1,\n debug: false,\n showFps: false\n});\nvar corefn$4 = {\n renderTo: function renderTo(context, zoom, pan, pxRatio) {\n var r = this._private.renderer;\n r.renderTo(context, zoom, pan, pxRatio);\n return this;\n },\n renderer: function renderer() {\n return this._private.renderer;\n },\n forceRender: function forceRender() {\n this.notify('draw');\n return this;\n },\n resize: function resize() {\n this.invalidateSize();\n this.emitAndNotify('resize');\n return this;\n },\n initRenderer: function initRenderer(options) {\n var cy = this;\n var RendererProto = cy.extension('renderer', options.name);\n\n if (RendererProto == null) {\n error(\"Can not initialise: No such renderer `\".concat(options.name, \"` found. Did you forget to import it and `cytoscape.use()` it?\"));\n return;\n }\n\n if (options.wheelSensitivity !== undefined) {\n warn(\"You have set a custom wheel sensitivity. This will make your app zoom unnaturally when using mainstream mice. You should change this value from the default only if you can guarantee that all your users will use the same hardware and OS configuration as your current machine.\");\n }\n\n var rOpts = rendererDefaults(options);\n rOpts.cy = cy;\n cy._private.renderer = new RendererProto(rOpts);\n this.notify('init');\n },\n destroyRenderer: function destroyRenderer() {\n var cy = this;\n cy.notify('destroy'); // destroy the renderer\n\n var domEle = cy.container();\n\n if (domEle) {\n domEle._cyreg = null;\n\n while (domEle.childNodes.length > 0) {\n domEle.removeChild(domEle.childNodes[0]);\n }\n }\n\n cy._private.renderer = null; // to be extra safe, remove the ref\n\n cy.mutableElements().forEach(function (ele) {\n var _p = ele._private;\n _p.rscratch = {};\n _p.rstyle = {};\n _p.animation.current = [];\n _p.animation.queue = [];\n });\n },\n onRender: function onRender(fn) {\n return this.on('render', fn);\n },\n offRender: function offRender(fn) {\n return this.off('render', fn);\n }\n};\ncorefn$4.invalidateDimensions = corefn$4.resize;\n\nvar corefn$3 = {\n // get a collection\n // - empty collection on no args\n // - collection of elements in the graph on selector arg\n // - guarantee a returned collection when elements or collection specified\n collection: function collection(eles, opts) {\n if (string(eles)) {\n return this.$(eles);\n } else if (elementOrCollection(eles)) {\n return eles.collection();\n } else if (array(eles)) {\n if (!opts) {\n opts = {};\n }\n\n return new Collection(this, eles, opts.unique, opts.removed);\n }\n\n return new Collection(this);\n },\n nodes: function nodes(selector) {\n var nodes = this.$(function (ele) {\n return ele.isNode();\n });\n\n if (selector) {\n return nodes.filter(selector);\n }\n\n return nodes;\n },\n edges: function edges(selector) {\n var edges = this.$(function (ele) {\n return ele.isEdge();\n });\n\n if (selector) {\n return edges.filter(selector);\n }\n\n return edges;\n },\n // search the graph like jQuery\n $: function $(selector) {\n var eles = this._private.elements;\n\n if (selector) {\n return eles.filter(selector);\n } else {\n return eles.spawnSelf();\n }\n },\n mutableElements: function mutableElements() {\n return this._private.elements;\n }\n}; // aliases\n\ncorefn$3.elements = corefn$3.filter = corefn$3.$;\n\nvar styfn$8 = {}; // keys for style blocks, e.g. ttfftt\n\nvar TRUE = 't';\nvar FALSE = 'f'; // (potentially expensive calculation)\n// apply the style to the element based on\n// - its bypass\n// - what selectors match it\n\nstyfn$8.apply = function (eles) {\n var self = this;\n var _p = self._private;\n var cy = _p.cy;\n var updatedEles = cy.collection();\n\n for (var ie = 0; ie < eles.length; ie++) {\n var ele = eles[ie];\n var cxtMeta = self.getContextMeta(ele);\n\n if (cxtMeta.empty) {\n continue;\n }\n\n var cxtStyle = self.getContextStyle(cxtMeta);\n var app = self.applyContextStyle(cxtMeta, cxtStyle, ele);\n\n if (ele._private.appliedInitStyle) {\n self.updateTransitions(ele, app.diffProps);\n } else {\n ele._private.appliedInitStyle = true;\n }\n\n var hintsDiff = self.updateStyleHints(ele);\n\n if (hintsDiff) {\n updatedEles.push(ele);\n }\n } // for elements\n\n\n return updatedEles;\n};\n\nstyfn$8.getPropertiesDiff = function (oldCxtKey, newCxtKey) {\n var self = this;\n var cache = self._private.propDiffs = self._private.propDiffs || {};\n var dualCxtKey = oldCxtKey + '-' + newCxtKey;\n var cachedVal = cache[dualCxtKey];\n\n if (cachedVal) {\n return cachedVal;\n }\n\n var diffProps = [];\n var addedProp = {};\n\n for (var i = 0; i < self.length; i++) {\n var cxt = self[i];\n var oldHasCxt = oldCxtKey[i] === TRUE;\n var newHasCxt = newCxtKey[i] === TRUE;\n var cxtHasDiffed = oldHasCxt !== newHasCxt;\n var cxtHasMappedProps = cxt.mappedProperties.length > 0;\n\n if (cxtHasDiffed || newHasCxt && cxtHasMappedProps) {\n var props = void 0;\n\n if (cxtHasDiffed && cxtHasMappedProps) {\n props = cxt.properties; // suffices b/c mappedProperties is a subset of properties\n } else if (cxtHasDiffed) {\n props = cxt.properties; // need to check them all\n } else if (cxtHasMappedProps) {\n props = cxt.mappedProperties; // only need to check mapped\n }\n\n for (var j = 0; j < props.length; j++) {\n var prop = props[j];\n var name = prop.name; // if a later context overrides this property, then the fact that this context has switched/diffed doesn't matter\n // (semi expensive check since it makes this function O(n^2) on context length, but worth it since overall result\n // is cached)\n\n var laterCxtOverrides = false;\n\n for (var k = i + 1; k < self.length; k++) {\n var laterCxt = self[k];\n var hasLaterCxt = newCxtKey[k] === TRUE;\n\n if (!hasLaterCxt) {\n continue;\n } // can't override unless the context is active\n\n\n laterCxtOverrides = laterCxt.properties[prop.name] != null;\n\n if (laterCxtOverrides) {\n break;\n } // exit early as long as one later context overrides\n\n }\n\n if (!addedProp[name] && !laterCxtOverrides) {\n addedProp[name] = true;\n diffProps.push(name);\n }\n } // for props\n\n } // if\n\n } // for contexts\n\n\n cache[dualCxtKey] = diffProps;\n return diffProps;\n};\n\nstyfn$8.getContextMeta = function (ele) {\n var self = this;\n var cxtKey = '';\n var diffProps;\n var prevKey = ele._private.styleCxtKey || ''; // get the cxt key\n\n for (var i = 0; i < self.length; i++) {\n var context = self[i];\n var contextSelectorMatches = context.selector && context.selector.matches(ele); // NB: context.selector may be null for 'core'\n\n if (contextSelectorMatches) {\n cxtKey += TRUE;\n } else {\n cxtKey += FALSE;\n }\n } // for context\n\n\n diffProps = self.getPropertiesDiff(prevKey, cxtKey);\n ele._private.styleCxtKey = cxtKey;\n return {\n key: cxtKey,\n diffPropNames: diffProps,\n empty: diffProps.length === 0\n };\n}; // gets a computed ele style object based on matched contexts\n\n\nstyfn$8.getContextStyle = function (cxtMeta) {\n var cxtKey = cxtMeta.key;\n var self = this;\n var cxtStyles = this._private.contextStyles = this._private.contextStyles || {}; // if already computed style, returned cached copy\n\n if (cxtStyles[cxtKey]) {\n return cxtStyles[cxtKey];\n }\n\n var style = {\n _private: {\n key: cxtKey\n }\n };\n\n for (var i = 0; i < self.length; i++) {\n var cxt = self[i];\n var hasCxt = cxtKey[i] === TRUE;\n\n if (!hasCxt) {\n continue;\n }\n\n for (var j = 0; j < cxt.properties.length; j++) {\n var prop = cxt.properties[j];\n style[prop.name] = prop;\n }\n }\n\n cxtStyles[cxtKey] = style;\n return style;\n};\n\nstyfn$8.applyContextStyle = function (cxtMeta, cxtStyle, ele) {\n var self = this;\n var diffProps = cxtMeta.diffPropNames;\n var retDiffProps = {};\n var types = self.types;\n\n for (var i = 0; i < diffProps.length; i++) {\n var diffPropName = diffProps[i];\n var cxtProp = cxtStyle[diffPropName];\n var eleProp = ele.pstyle(diffPropName);\n\n if (!cxtProp) {\n // no context prop means delete\n if (!eleProp) {\n continue; // no existing prop means nothing needs to be removed\n // nb affects initial application on mapped values like control-point-distances\n } else if (eleProp.bypass) {\n cxtProp = {\n name: diffPropName,\n deleteBypassed: true\n };\n } else {\n cxtProp = {\n name: diffPropName,\n \"delete\": true\n };\n }\n } // save cycles when the context prop doesn't need to be applied\n\n\n if (eleProp === cxtProp) {\n continue;\n } // save cycles when a mapped context prop doesn't need to be applied\n\n\n if (cxtProp.mapped === types.fn // context prop is function mapper\n && eleProp != null // some props can be null even by default (e.g. a prop that overrides another one)\n && eleProp.mapping != null // ele prop is a concrete value from from a mapper\n && eleProp.mapping.value === cxtProp.value // the current prop on the ele is a flat prop value for the function mapper\n ) {\n // NB don't write to cxtProp, as it's shared among eles (stored in stylesheet)\n var mapping = eleProp.mapping; // can write to mapping, as it's a per-ele copy\n\n var fnValue = mapping.fnValue = cxtProp.value(ele); // temporarily cache the value in case of a miss\n\n if (fnValue === mapping.prevFnValue) {\n continue;\n }\n }\n\n var retDiffProp = retDiffProps[diffPropName] = {\n prev: eleProp\n };\n self.applyParsedProperty(ele, cxtProp);\n retDiffProp.next = ele.pstyle(diffPropName);\n\n if (retDiffProp.next && retDiffProp.next.bypass) {\n retDiffProp.next = retDiffProp.next.bypassed;\n }\n }\n\n return {\n diffProps: retDiffProps\n };\n};\n\nstyfn$8.updateStyleHints = function (ele) {\n var _p = ele._private;\n var self = this;\n var propNames = self.propertyGroupNames;\n var propGrKeys = self.propertyGroupKeys;\n\n var propHash = function propHash(ele, propNames, seedKey) {\n return self.getPropertiesHash(ele, propNames, seedKey);\n };\n\n var oldStyleKey = _p.styleKey;\n\n if (ele.removed()) {\n return false;\n }\n\n var isNode = _p.group === 'nodes'; // get the style key hashes per prop group\n // but lazily -- only use non-default prop values to reduce the number of hashes\n //\n\n var overriddenStyles = ele._private.style;\n propNames = Object.keys(overriddenStyles);\n\n for (var i = 0; i < propGrKeys.length; i++) {\n var grKey = propGrKeys[i];\n _p.styleKeys[grKey] = [DEFAULT_HASH_SEED, DEFAULT_HASH_SEED_ALT];\n }\n\n var updateGrKey1 = function updateGrKey1(val, grKey) {\n return _p.styleKeys[grKey][0] = hashInt(val, _p.styleKeys[grKey][0]);\n };\n\n var updateGrKey2 = function updateGrKey2(val, grKey) {\n return _p.styleKeys[grKey][1] = hashIntAlt(val, _p.styleKeys[grKey][1]);\n };\n\n var updateGrKey = function updateGrKey(val, grKey) {\n updateGrKey1(val, grKey);\n updateGrKey2(val, grKey);\n };\n\n var updateGrKeyWStr = function updateGrKeyWStr(strVal, grKey) {\n for (var j = 0; j < strVal.length; j++) {\n var ch = strVal.charCodeAt(j);\n updateGrKey1(ch, grKey);\n updateGrKey2(ch, grKey);\n }\n }; // - hashing works on 32 bit ints b/c we use bitwise ops\n // - small numbers get cut off (e.g. 0.123 is seen as 0 by the hashing function)\n // - raise up small numbers so more significant digits are seen by hashing\n // - make small numbers larger than a normal value to avoid collisions\n // - works in practice and it's relatively cheap\n\n\n var N = 2000000000;\n\n var cleanNum = function cleanNum(val) {\n return -128 < val && val < 128 && Math.floor(val) !== val ? N - (val * 1024 | 0) : val;\n };\n\n for (var _i = 0; _i < propNames.length; _i++) {\n var name = propNames[_i];\n var parsedProp = overriddenStyles[name];\n\n if (parsedProp == null) {\n continue;\n }\n\n var propInfo = this.properties[name];\n var type = propInfo.type;\n var _grKey = propInfo.groupKey;\n var normalizedNumberVal = void 0;\n\n if (propInfo.hashOverride != null) {\n normalizedNumberVal = propInfo.hashOverride(ele, parsedProp);\n } else if (parsedProp.pfValue != null) {\n normalizedNumberVal = parsedProp.pfValue;\n } // might not be a number if it allows enums\n\n\n var numberVal = propInfo.enums == null ? parsedProp.value : null;\n var haveNormNum = normalizedNumberVal != null;\n var haveUnitedNum = numberVal != null;\n var haveNum = haveNormNum || haveUnitedNum;\n var units = parsedProp.units; // numbers are cheaper to hash than strings\n // 1 hash op vs n hash ops (for length n string)\n\n if (type.number && haveNum && !type.multiple) {\n var v = haveNormNum ? normalizedNumberVal : numberVal;\n updateGrKey(cleanNum(v), _grKey);\n\n if (!haveNormNum && units != null) {\n updateGrKeyWStr(units, _grKey);\n }\n } else {\n updateGrKeyWStr(parsedProp.strValue, _grKey);\n }\n } // overall style key\n //\n\n\n var hash = [DEFAULT_HASH_SEED, DEFAULT_HASH_SEED_ALT];\n\n for (var _i2 = 0; _i2 < propGrKeys.length; _i2++) {\n var _grKey2 = propGrKeys[_i2];\n var grHash = _p.styleKeys[_grKey2];\n hash[0] = hashInt(grHash[0], hash[0]);\n hash[1] = hashIntAlt(grHash[1], hash[1]);\n }\n\n _p.styleKey = combineHashes(hash[0], hash[1]); // label dims\n //\n\n var sk = _p.styleKeys;\n _p.labelDimsKey = combineHashesArray(sk.labelDimensions);\n var labelKeys = propHash(ele, ['label'], sk.labelDimensions);\n _p.labelKey = combineHashesArray(labelKeys);\n _p.labelStyleKey = combineHashesArray(hashArrays(sk.commonLabel, labelKeys));\n\n if (!isNode) {\n var sourceLabelKeys = propHash(ele, ['source-label'], sk.labelDimensions);\n _p.sourceLabelKey = combineHashesArray(sourceLabelKeys);\n _p.sourceLabelStyleKey = combineHashesArray(hashArrays(sk.commonLabel, sourceLabelKeys));\n var targetLabelKeys = propHash(ele, ['target-label'], sk.labelDimensions);\n _p.targetLabelKey = combineHashesArray(targetLabelKeys);\n _p.targetLabelStyleKey = combineHashesArray(hashArrays(sk.commonLabel, targetLabelKeys));\n } // node\n //\n\n\n if (isNode) {\n var _p$styleKeys = _p.styleKeys,\n nodeBody = _p$styleKeys.nodeBody,\n nodeBorder = _p$styleKeys.nodeBorder,\n backgroundImage = _p$styleKeys.backgroundImage,\n compound = _p$styleKeys.compound,\n pie = _p$styleKeys.pie;\n var nodeKeys = [nodeBody, nodeBorder, backgroundImage, compound, pie].filter(function (k) {\n return k != null;\n }).reduce(hashArrays, [DEFAULT_HASH_SEED, DEFAULT_HASH_SEED_ALT]);\n _p.nodeKey = combineHashesArray(nodeKeys);\n _p.hasPie = pie != null && pie[0] !== DEFAULT_HASH_SEED && pie[1] !== DEFAULT_HASH_SEED_ALT;\n }\n\n return oldStyleKey !== _p.styleKey;\n};\n\nstyfn$8.clearStyleHints = function (ele) {\n var _p = ele._private;\n _p.styleCxtKey = '';\n _p.styleKeys = {};\n _p.styleKey = null;\n _p.labelKey = null;\n _p.labelStyleKey = null;\n _p.sourceLabelKey = null;\n _p.sourceLabelStyleKey = null;\n _p.targetLabelKey = null;\n _p.targetLabelStyleKey = null;\n _p.nodeKey = null;\n _p.hasPie = null;\n}; // apply a property to the style (for internal use)\n// returns whether application was successful\n//\n// now, this function flattens the property, and here's how:\n//\n// for parsedProp:{ bypass: true, deleteBypass: true }\n// no property is generated, instead the bypass property in the\n// element's style is replaced by what's pointed to by the `bypassed`\n// field in the bypass property (i.e. restoring the property the\n// bypass was overriding)\n//\n// for parsedProp:{ mapped: truthy }\n// the generated flattenedProp:{ mapping: prop }\n//\n// for parsedProp:{ bypass: true }\n// the generated flattenedProp:{ bypassed: parsedProp }\n\n\nstyfn$8.applyParsedProperty = function (ele, parsedProp) {\n var self = this;\n var prop = parsedProp;\n var style = ele._private.style;\n var flatProp;\n var types = self.types;\n var type = self.properties[prop.name].type;\n var propIsBypass = prop.bypass;\n var origProp = style[prop.name];\n var origPropIsBypass = origProp && origProp.bypass;\n var _p = ele._private;\n var flatPropMapping = 'mapping';\n\n var getVal = function getVal(p) {\n if (p == null) {\n return null;\n } else if (p.pfValue != null) {\n return p.pfValue;\n } else {\n return p.value;\n }\n };\n\n var checkTriggers = function checkTriggers() {\n var fromVal = getVal(origProp);\n var toVal = getVal(prop);\n self.checkTriggers(ele, prop.name, fromVal, toVal);\n };\n\n if (prop && prop.name.substr(0, 3) === 'pie') {\n warn('The pie style properties are deprecated. Create charts using background images instead.');\n } // edge sanity checks to prevent the client from making serious mistakes\n\n\n if (parsedProp.name === 'curve-style' && ele.isEdge() && ( // loops must be bundled beziers\n parsedProp.value !== 'bezier' && ele.isLoop() || // edges connected to compound nodes can not be haystacks\n parsedProp.value === 'haystack' && (ele.source().isParent() || ele.target().isParent()))) {\n prop = parsedProp = this.parse(parsedProp.name, 'bezier', propIsBypass);\n }\n\n if (prop[\"delete\"]) {\n // delete the property and use the default value on falsey value\n style[prop.name] = undefined;\n checkTriggers();\n return true;\n }\n\n if (prop.deleteBypassed) {\n // delete the property that the\n if (!origProp) {\n checkTriggers();\n return true; // can't delete if no prop\n } else if (origProp.bypass) {\n // delete bypassed\n origProp.bypassed = undefined;\n checkTriggers();\n return true;\n } else {\n return false; // we're unsuccessful deleting the bypassed\n }\n } // check if we need to delete the current bypass\n\n\n if (prop.deleteBypass) {\n // then this property is just here to indicate we need to delete\n if (!origProp) {\n checkTriggers();\n return true; // property is already not defined\n } else if (origProp.bypass) {\n // then replace the bypass property with the original\n // because the bypassed property was already applied (and therefore parsed), we can just replace it (no reapplying necessary)\n style[prop.name] = origProp.bypassed;\n checkTriggers();\n return true;\n } else {\n return false; // we're unsuccessful deleting the bypass\n }\n }\n\n var printMappingErr = function printMappingErr() {\n warn('Do not assign mappings to elements without corresponding data (i.e. ele `' + ele.id() + '` has no mapping for property `' + prop.name + '` with data field `' + prop.field + '`); try a `[' + prop.field + ']` selector to limit scope to elements with `' + prop.field + '` defined');\n }; // put the property in the style objects\n\n\n switch (prop.mapped) {\n // flatten the property if mapped\n case types.mapData:\n {\n // flatten the field (e.g. data.foo.bar)\n var fields = prop.field.split('.');\n var fieldVal = _p.data;\n\n for (var i = 0; i < fields.length && fieldVal; i++) {\n var field = fields[i];\n fieldVal = fieldVal[field];\n }\n\n if (fieldVal == null) {\n printMappingErr();\n return false;\n }\n\n var percent;\n\n if (!number$1(fieldVal)) {\n // then don't apply and fall back on the existing style\n warn('Do not use continuous mappers without specifying numeric data (i.e. `' + prop.field + ': ' + fieldVal + '` for `' + ele.id() + '` is non-numeric)');\n return false;\n } else {\n var fieldWidth = prop.fieldMax - prop.fieldMin;\n\n if (fieldWidth === 0) {\n // safety check -- not strictly necessary as no props of zero range should be passed here\n percent = 0;\n } else {\n percent = (fieldVal - prop.fieldMin) / fieldWidth;\n }\n } // make sure to bound percent value\n\n\n if (percent < 0) {\n percent = 0;\n } else if (percent > 1) {\n percent = 1;\n }\n\n if (type.color) {\n var r1 = prop.valueMin[0];\n var r2 = prop.valueMax[0];\n var g1 = prop.valueMin[1];\n var g2 = prop.valueMax[1];\n var b1 = prop.valueMin[2];\n var b2 = prop.valueMax[2];\n var a1 = prop.valueMin[3] == null ? 1 : prop.valueMin[3];\n var a2 = prop.valueMax[3] == null ? 1 : prop.valueMax[3];\n var clr = [Math.round(r1 + (r2 - r1) * percent), Math.round(g1 + (g2 - g1) * percent), Math.round(b1 + (b2 - b1) * percent), Math.round(a1 + (a2 - a1) * percent)];\n flatProp = {\n // colours are simple, so just create the flat property instead of expensive string parsing\n bypass: prop.bypass,\n // we're a bypass if the mapping property is a bypass\n name: prop.name,\n value: clr,\n strValue: 'rgb(' + clr[0] + ', ' + clr[1] + ', ' + clr[2] + ')'\n };\n } else if (type.number) {\n var calcValue = prop.valueMin + (prop.valueMax - prop.valueMin) * percent;\n flatProp = this.parse(prop.name, calcValue, prop.bypass, flatPropMapping);\n } else {\n return false; // can only map to colours and numbers\n }\n\n if (!flatProp) {\n // if we can't flatten the property, then don't apply the property and fall back on the existing style\n printMappingErr();\n return false;\n }\n\n flatProp.mapping = prop; // keep a reference to the mapping\n\n prop = flatProp; // the flattened (mapped) property is the one we want\n\n break;\n }\n // direct mapping\n\n case types.data:\n {\n // flatten the field (e.g. data.foo.bar)\n var _fields = prop.field.split('.');\n\n var _fieldVal = _p.data;\n\n for (var _i3 = 0; _i3 < _fields.length && _fieldVal; _i3++) {\n var _field = _fields[_i3];\n _fieldVal = _fieldVal[_field];\n }\n\n if (_fieldVal != null) {\n flatProp = this.parse(prop.name, _fieldVal, prop.bypass, flatPropMapping);\n }\n\n if (!flatProp) {\n // if we can't flatten the property, then don't apply and fall back on the existing style\n printMappingErr();\n return false;\n }\n\n flatProp.mapping = prop; // keep a reference to the mapping\n\n prop = flatProp; // the flattened (mapped) property is the one we want\n\n break;\n }\n\n case types.fn:\n {\n var fn = prop.value;\n var fnRetVal = prop.fnValue != null ? prop.fnValue : fn(ele); // check for cached value before calling function\n\n prop.prevFnValue = fnRetVal;\n\n if (fnRetVal == null) {\n warn('Custom function mappers may not return null (i.e. `' + prop.name + '` for ele `' + ele.id() + '` is null)');\n return false;\n }\n\n flatProp = this.parse(prop.name, fnRetVal, prop.bypass, flatPropMapping);\n\n if (!flatProp) {\n warn('Custom function mappers may not return invalid values for the property type (i.e. `' + prop.name + '` for ele `' + ele.id() + '` is invalid)');\n return false;\n }\n\n flatProp.mapping = copy(prop); // keep a reference to the mapping\n\n prop = flatProp; // the flattened (mapped) property is the one we want\n\n break;\n }\n\n case undefined:\n break;\n // just set the property\n\n default:\n return false;\n // not a valid mapping\n } // if the property is a bypass property, then link the resultant property to the original one\n\n\n if (propIsBypass) {\n if (origPropIsBypass) {\n // then this bypass overrides the existing one\n prop.bypassed = origProp.bypassed; // steal bypassed prop from old bypass\n } else {\n // then link the orig prop to the new bypass\n prop.bypassed = origProp;\n }\n\n style[prop.name] = prop; // and set\n } else {\n // prop is not bypass\n if (origPropIsBypass) {\n // then keep the orig prop (since it's a bypass) and link to the new prop\n origProp.bypassed = prop;\n } else {\n // then just replace the old prop with the new one\n style[prop.name] = prop;\n }\n }\n\n checkTriggers();\n return true;\n};\n\nstyfn$8.cleanElements = function (eles, keepBypasses) {\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n this.clearStyleHints(ele);\n ele.dirtyCompoundBoundsCache();\n ele.dirtyBoundingBoxCache();\n\n if (!keepBypasses) {\n ele._private.style = {};\n } else {\n var style = ele._private.style;\n var propNames = Object.keys(style);\n\n for (var j = 0; j < propNames.length; j++) {\n var propName = propNames[j];\n var eleProp = style[propName];\n\n if (eleProp != null) {\n if (eleProp.bypass) {\n eleProp.bypassed = null;\n } else {\n style[propName] = null;\n }\n }\n }\n }\n }\n}; // updates the visual style for all elements (useful for manual style modification after init)\n\n\nstyfn$8.update = function () {\n var cy = this._private.cy;\n var eles = cy.mutableElements();\n eles.updateStyle();\n}; // diffProps : { name => { prev, next } }\n\n\nstyfn$8.updateTransitions = function (ele, diffProps) {\n var self = this;\n var _p = ele._private;\n var props = ele.pstyle('transition-property').value;\n var duration = ele.pstyle('transition-duration').pfValue;\n var delay = ele.pstyle('transition-delay').pfValue;\n\n if (props.length > 0 && duration > 0) {\n var style = {}; // build up the style to animate towards\n\n var anyPrev = false;\n\n for (var i = 0; i < props.length; i++) {\n var prop = props[i];\n var styProp = ele.pstyle(prop);\n var diffProp = diffProps[prop];\n\n if (!diffProp) {\n continue;\n }\n\n var prevProp = diffProp.prev;\n var fromProp = prevProp;\n var toProp = diffProp.next != null ? diffProp.next : styProp;\n var diff = false;\n var initVal = void 0;\n var initDt = 0.000001; // delta time % value for initVal (allows animating out of init zero opacity)\n\n if (!fromProp) {\n continue;\n } // consider px values\n\n\n if (number$1(fromProp.pfValue) && number$1(toProp.pfValue)) {\n diff = toProp.pfValue - fromProp.pfValue; // nonzero is truthy\n\n initVal = fromProp.pfValue + initDt * diff; // consider numerical values\n } else if (number$1(fromProp.value) && number$1(toProp.value)) {\n diff = toProp.value - fromProp.value; // nonzero is truthy\n\n initVal = fromProp.value + initDt * diff; // consider colour values\n } else if (array(fromProp.value) && array(toProp.value)) {\n diff = fromProp.value[0] !== toProp.value[0] || fromProp.value[1] !== toProp.value[1] || fromProp.value[2] !== toProp.value[2];\n initVal = fromProp.strValue;\n } // the previous value is good for an animation only if it's different\n\n\n if (diff) {\n style[prop] = toProp.strValue; // to val\n\n this.applyBypass(ele, prop, initVal); // from val\n\n anyPrev = true;\n }\n } // end if props allow ani\n // can't transition if there's nothing previous to transition from\n\n\n if (!anyPrev) {\n return;\n }\n\n _p.transitioning = true;\n new Promise$1(function (resolve) {\n if (delay > 0) {\n ele.delayAnimation(delay).play().promise().then(resolve);\n } else {\n resolve();\n }\n }).then(function () {\n return ele.animation({\n style: style,\n duration: duration,\n easing: ele.pstyle('transition-timing-function').value,\n queue: false\n }).play().promise();\n }).then(function () {\n // if( !isBypass ){\n self.removeBypasses(ele, props);\n ele.emitAndNotify('style'); // }\n\n _p.transitioning = false;\n });\n } else if (_p.transitioning) {\n this.removeBypasses(ele, props);\n ele.emitAndNotify('style');\n _p.transitioning = false;\n }\n};\n\nstyfn$8.checkTrigger = function (ele, name, fromValue, toValue, getTrigger, onTrigger) {\n var prop = this.properties[name];\n var triggerCheck = getTrigger(prop);\n\n if (triggerCheck != null && triggerCheck(fromValue, toValue)) {\n onTrigger(prop);\n }\n};\n\nstyfn$8.checkZOrderTrigger = function (ele, name, fromValue, toValue) {\n var _this = this;\n\n this.checkTrigger(ele, name, fromValue, toValue, function (prop) {\n return prop.triggersZOrder;\n }, function () {\n _this._private.cy.notify('zorder', ele);\n });\n};\n\nstyfn$8.checkBoundsTrigger = function (ele, name, fromValue, toValue) {\n this.checkTrigger(ele, name, fromValue, toValue, function (prop) {\n return prop.triggersBounds;\n }, function (prop) {\n ele.dirtyCompoundBoundsCache();\n ele.dirtyBoundingBoxCache(); // if the prop change makes the bb of pll bezier edges invalid,\n // then dirty the pll edge bb cache as well\n\n if ( // only for beziers -- so performance of other edges isn't affected\n prop.triggersBoundsOfParallelBeziers && (name === 'curve-style' && (fromValue === 'bezier' || toValue === 'bezier') || name === 'display' && (fromValue === 'none' || toValue === 'none'))) {\n ele.parallelEdges().forEach(function (pllEdge) {\n if (pllEdge.isBundledBezier()) {\n pllEdge.dirtyBoundingBoxCache();\n }\n });\n }\n });\n};\n\nstyfn$8.checkTriggers = function (ele, name, fromValue, toValue) {\n ele.dirtyStyleCache();\n this.checkZOrderTrigger(ele, name, fromValue, toValue);\n this.checkBoundsTrigger(ele, name, fromValue, toValue);\n};\n\nvar styfn$7 = {}; // bypasses are applied to an existing style on an element, and just tacked on temporarily\n// returns true iff application was successful for at least 1 specified property\n\nstyfn$7.applyBypass = function (eles, name, value, updateTransitions) {\n var self = this;\n var props = [];\n var isBypass = true; // put all the properties (can specify one or many) in an array after parsing them\n\n if (name === '*' || name === '**') {\n // apply to all property names\n if (value !== undefined) {\n for (var i = 0; i < self.properties.length; i++) {\n var prop = self.properties[i];\n var _name = prop.name;\n var parsedProp = this.parse(_name, value, true);\n\n if (parsedProp) {\n props.push(parsedProp);\n }\n }\n }\n } else if (string(name)) {\n // then parse the single property\n var _parsedProp = this.parse(name, value, true);\n\n if (_parsedProp) {\n props.push(_parsedProp);\n }\n } else if (plainObject(name)) {\n // then parse each property\n var specifiedProps = name;\n updateTransitions = value;\n var names = Object.keys(specifiedProps);\n\n for (var _i = 0; _i < names.length; _i++) {\n var _name2 = names[_i];\n var _value = specifiedProps[_name2];\n\n if (_value === undefined) {\n // try camel case name too\n _value = specifiedProps[dash2camel(_name2)];\n }\n\n if (_value !== undefined) {\n var _parsedProp2 = this.parse(_name2, _value, true);\n\n if (_parsedProp2) {\n props.push(_parsedProp2);\n }\n }\n }\n } else {\n // can't do anything without well defined properties\n return false;\n } // we've failed if there are no valid properties\n\n\n if (props.length === 0) {\n return false;\n } // now, apply the bypass properties on the elements\n\n\n var ret = false; // return true if at least one succesful bypass applied\n\n for (var _i2 = 0; _i2 < eles.length; _i2++) {\n // for each ele\n var ele = eles[_i2];\n var diffProps = {};\n var diffProp = void 0;\n\n for (var j = 0; j < props.length; j++) {\n // for each prop\n var _prop = props[j];\n\n if (updateTransitions) {\n var prevProp = ele.pstyle(_prop.name);\n diffProp = diffProps[_prop.name] = {\n prev: prevProp\n };\n }\n\n ret = this.applyParsedProperty(ele, copy(_prop)) || ret;\n\n if (updateTransitions) {\n diffProp.next = ele.pstyle(_prop.name);\n }\n } // for props\n\n\n if (ret) {\n this.updateStyleHints(ele);\n }\n\n if (updateTransitions) {\n this.updateTransitions(ele, diffProps, isBypass);\n }\n } // for eles\n\n\n return ret;\n}; // only useful in specific cases like animation\n\n\nstyfn$7.overrideBypass = function (eles, name, value) {\n name = camel2dash(name);\n\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n var prop = ele._private.style[name];\n var type = this.properties[name].type;\n var isColor = type.color;\n var isMulti = type.mutiple;\n var oldValue = !prop ? null : prop.pfValue != null ? prop.pfValue : prop.value;\n\n if (!prop || !prop.bypass) {\n // need a bypass if one doesn't exist\n this.applyBypass(ele, name, value);\n } else {\n prop.value = value;\n\n if (prop.pfValue != null) {\n prop.pfValue = value;\n }\n\n if (isColor) {\n prop.strValue = 'rgb(' + value.join(',') + ')';\n } else if (isMulti) {\n prop.strValue = value.join(' ');\n } else {\n prop.strValue = '' + value;\n }\n\n this.updateStyleHints(ele);\n }\n\n this.checkTriggers(ele, name, oldValue, value);\n }\n};\n\nstyfn$7.removeAllBypasses = function (eles, updateTransitions) {\n return this.removeBypasses(eles, this.propertyNames, updateTransitions);\n};\n\nstyfn$7.removeBypasses = function (eles, props, updateTransitions) {\n var isBypass = true;\n\n for (var j = 0; j < eles.length; j++) {\n var ele = eles[j];\n var diffProps = {};\n\n for (var i = 0; i < props.length; i++) {\n var name = props[i];\n var prop = this.properties[name];\n var prevProp = ele.pstyle(prop.name);\n\n if (!prevProp || !prevProp.bypass) {\n // if a bypass doesn't exist for the prop, nothing needs to be removed\n continue;\n }\n\n var value = ''; // empty => remove bypass\n\n var parsedProp = this.parse(name, value, true);\n var diffProp = diffProps[prop.name] = {\n prev: prevProp\n };\n this.applyParsedProperty(ele, parsedProp);\n diffProp.next = ele.pstyle(prop.name);\n } // for props\n\n\n this.updateStyleHints(ele);\n\n if (updateTransitions) {\n this.updateTransitions(ele, diffProps, isBypass);\n }\n } // for eles\n\n};\n\nvar styfn$6 = {}; // gets what an em size corresponds to in pixels relative to a dom element\n\nstyfn$6.getEmSizeInPixels = function () {\n var px = this.containerCss('font-size');\n\n if (px != null) {\n return parseFloat(px);\n } else {\n return 1; // for headless\n }\n}; // gets css property from the core container\n\n\nstyfn$6.containerCss = function (propName) {\n var cy = this._private.cy;\n var domElement = cy.container();\n\n if (window$1 && domElement && window$1.getComputedStyle) {\n return window$1.getComputedStyle(domElement).getPropertyValue(propName);\n }\n};\n\nvar styfn$5 = {}; // gets the rendered style for an element\n\nstyfn$5.getRenderedStyle = function (ele, prop) {\n if (prop) {\n return this.getStylePropertyValue(ele, prop, true);\n } else {\n return this.getRawStyle(ele, true);\n }\n}; // gets the raw style for an element\n\n\nstyfn$5.getRawStyle = function (ele, isRenderedVal) {\n var self = this;\n ele = ele[0]; // insure it's an element\n\n if (ele) {\n var rstyle = {};\n\n for (var i = 0; i < self.properties.length; i++) {\n var prop = self.properties[i];\n var val = self.getStylePropertyValue(ele, prop.name, isRenderedVal);\n\n if (val != null) {\n rstyle[prop.name] = val;\n rstyle[dash2camel(prop.name)] = val;\n }\n }\n\n return rstyle;\n }\n};\n\nstyfn$5.getIndexedStyle = function (ele, property, subproperty, index) {\n var pstyle = ele.pstyle(property)[subproperty][index];\n return pstyle != null ? pstyle : ele.cy().style().getDefaultProperty(property)[subproperty][0];\n};\n\nstyfn$5.getStylePropertyValue = function (ele, propName, isRenderedVal) {\n var self = this;\n ele = ele[0]; // insure it's an element\n\n if (ele) {\n var prop = self.properties[propName];\n\n if (prop.alias) {\n prop = prop.pointsTo;\n }\n\n var type = prop.type;\n var styleProp = ele.pstyle(prop.name);\n\n if (styleProp) {\n var value = styleProp.value,\n units = styleProp.units,\n strValue = styleProp.strValue;\n\n if (isRenderedVal && type.number && value != null && number$1(value)) {\n var zoom = ele.cy().zoom();\n\n var getRenderedValue = function getRenderedValue(val) {\n return val * zoom;\n };\n\n var getValueStringWithUnits = function getValueStringWithUnits(val, units) {\n return getRenderedValue(val) + units;\n };\n\n var isArrayValue = array(value);\n var haveUnits = isArrayValue ? units.every(function (u) {\n return u != null;\n }) : units != null;\n\n if (haveUnits) {\n if (isArrayValue) {\n return value.map(function (v, i) {\n return getValueStringWithUnits(v, units[i]);\n }).join(' ');\n } else {\n return getValueStringWithUnits(value, units);\n }\n } else {\n if (isArrayValue) {\n return value.map(function (v) {\n return string(v) ? v : '' + getRenderedValue(v);\n }).join(' ');\n } else {\n return '' + getRenderedValue(value);\n }\n }\n } else if (strValue != null) {\n return strValue;\n }\n }\n\n return null;\n }\n};\n\nstyfn$5.getAnimationStartStyle = function (ele, aniProps) {\n var rstyle = {};\n\n for (var i = 0; i < aniProps.length; i++) {\n var aniProp = aniProps[i];\n var name = aniProp.name;\n var styleProp = ele.pstyle(name);\n\n if (styleProp !== undefined) {\n // then make a prop of it\n if (plainObject(styleProp)) {\n styleProp = this.parse(name, styleProp.strValue);\n } else {\n styleProp = this.parse(name, styleProp);\n }\n }\n\n if (styleProp) {\n rstyle[name] = styleProp;\n }\n }\n\n return rstyle;\n};\n\nstyfn$5.getPropsList = function (propsObj) {\n var self = this;\n var rstyle = [];\n var style = propsObj;\n var props = self.properties;\n\n if (style) {\n var names = Object.keys(style);\n\n for (var i = 0; i < names.length; i++) {\n var name = names[i];\n var val = style[name];\n var prop = props[name] || props[camel2dash(name)];\n var styleProp = this.parse(prop.name, val);\n\n if (styleProp) {\n rstyle.push(styleProp);\n }\n }\n }\n\n return rstyle;\n};\n\nstyfn$5.getNonDefaultPropertiesHash = function (ele, propNames, seed) {\n var hash = seed.slice();\n var name, val, strVal, chVal;\n var i, j;\n\n for (i = 0; i < propNames.length; i++) {\n name = propNames[i];\n val = ele.pstyle(name, false);\n\n if (val == null) {\n continue;\n } else if (val.pfValue != null) {\n hash[0] = hashInt(chVal, hash[0]);\n hash[1] = hashIntAlt(chVal, hash[1]);\n } else {\n strVal = val.strValue;\n\n for (j = 0; j < strVal.length; j++) {\n chVal = strVal.charCodeAt(j);\n hash[0] = hashInt(chVal, hash[0]);\n hash[1] = hashIntAlt(chVal, hash[1]);\n }\n }\n }\n\n return hash;\n};\n\nstyfn$5.getPropertiesHash = styfn$5.getNonDefaultPropertiesHash;\n\nvar styfn$4 = {};\n\nstyfn$4.appendFromJson = function (json) {\n var style = this;\n\n for (var i = 0; i < json.length; i++) {\n var context = json[i];\n var selector = context.selector;\n var props = context.style || context.css;\n var names = Object.keys(props);\n style.selector(selector); // apply selector\n\n for (var j = 0; j < names.length; j++) {\n var name = names[j];\n var value = props[name];\n style.css(name, value); // apply property\n }\n }\n\n return style;\n}; // accessible cy.style() function\n\n\nstyfn$4.fromJson = function (json) {\n var style = this;\n style.resetToDefault();\n style.appendFromJson(json);\n return style;\n}; // get json from cy.style() api\n\n\nstyfn$4.json = function () {\n var json = [];\n\n for (var i = this.defaultLength; i < this.length; i++) {\n var cxt = this[i];\n var selector = cxt.selector;\n var props = cxt.properties;\n var css = {};\n\n for (var j = 0; j < props.length; j++) {\n var prop = props[j];\n css[prop.name] = prop.strValue;\n }\n\n json.push({\n selector: !selector ? 'core' : selector.toString(),\n style: css\n });\n }\n\n return json;\n};\n\nvar styfn$3 = {};\n\nstyfn$3.appendFromString = function (string) {\n var self = this;\n var style = this;\n var remaining = '' + string;\n var selAndBlockStr;\n var blockRem;\n var propAndValStr; // remove comments from the style string\n\n remaining = remaining.replace(/[/][*](\\s|.)+?[*][/]/g, '');\n\n function removeSelAndBlockFromRemaining() {\n // remove the parsed selector and block from the remaining text to parse\n if (remaining.length > selAndBlockStr.length) {\n remaining = remaining.substr(selAndBlockStr.length);\n } else {\n remaining = '';\n }\n }\n\n function removePropAndValFromRem() {\n // remove the parsed property and value from the remaining block text to parse\n if (blockRem.length > propAndValStr.length) {\n blockRem = blockRem.substr(propAndValStr.length);\n } else {\n blockRem = '';\n }\n }\n\n for (;;) {\n var nothingLeftToParse = remaining.match(/^\\s*$/);\n\n if (nothingLeftToParse) {\n break;\n }\n\n var selAndBlock = remaining.match(/^\\s*((?:.|\\s)+?)\\s*\\{((?:.|\\s)+?)\\}/);\n\n if (!selAndBlock) {\n warn('Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: ' + remaining);\n break;\n }\n\n selAndBlockStr = selAndBlock[0]; // parse the selector\n\n var selectorStr = selAndBlock[1];\n\n if (selectorStr !== 'core') {\n var selector = new Selector(selectorStr);\n\n if (selector.invalid) {\n warn('Skipping parsing of block: Invalid selector found in string stylesheet: ' + selectorStr); // skip this selector and block\n\n removeSelAndBlockFromRemaining();\n continue;\n }\n } // parse the block of properties and values\n\n\n var blockStr = selAndBlock[2];\n var invalidBlock = false;\n blockRem = blockStr;\n var props = [];\n\n for (;;) {\n var _nothingLeftToParse = blockRem.match(/^\\s*$/);\n\n if (_nothingLeftToParse) {\n break;\n }\n\n var propAndVal = blockRem.match(/^\\s*(.+?)\\s*:\\s*(.+?)(?:\\s*;|\\s*$)/);\n\n if (!propAndVal) {\n warn('Skipping parsing of block: Invalid formatting of style property and value definitions found in:' + blockStr);\n invalidBlock = true;\n break;\n }\n\n propAndValStr = propAndVal[0];\n var propStr = propAndVal[1];\n var valStr = propAndVal[2];\n var prop = self.properties[propStr];\n\n if (!prop) {\n warn('Skipping property: Invalid property name in: ' + propAndValStr); // skip this property in the block\n\n removePropAndValFromRem();\n continue;\n }\n\n var parsedProp = style.parse(propStr, valStr);\n\n if (!parsedProp) {\n warn('Skipping property: Invalid property definition in: ' + propAndValStr); // skip this property in the block\n\n removePropAndValFromRem();\n continue;\n }\n\n props.push({\n name: propStr,\n val: valStr\n });\n removePropAndValFromRem();\n }\n\n if (invalidBlock) {\n removeSelAndBlockFromRemaining();\n break;\n } // put the parsed block in the style\n\n\n style.selector(selectorStr);\n\n for (var i = 0; i < props.length; i++) {\n var _prop = props[i];\n style.css(_prop.name, _prop.val);\n }\n\n removeSelAndBlockFromRemaining();\n }\n\n return style;\n};\n\nstyfn$3.fromString = function (string) {\n var style = this;\n style.resetToDefault();\n style.appendFromString(string);\n return style;\n};\n\nvar styfn$2 = {};\n\n(function () {\n var number$1 = number;\n var rgba = rgbaNoBackRefs;\n var hsla = hslaNoBackRefs;\n var hex3$1 = hex3;\n var hex6$1 = hex6;\n\n var data = function data(prefix) {\n return '^' + prefix + '\\\\s*\\\\(\\\\s*([\\\\w\\\\.]+)\\\\s*\\\\)$';\n };\n\n var mapData = function mapData(prefix) {\n var mapArg = number$1 + '|\\\\w+|' + rgba + '|' + hsla + '|' + hex3$1 + '|' + hex6$1;\n return '^' + prefix + '\\\\s*\\\\(([\\\\w\\\\.]+)\\\\s*\\\\,\\\\s*(' + number$1 + ')\\\\s*\\\\,\\\\s*(' + number$1 + ')\\\\s*,\\\\s*(' + mapArg + ')\\\\s*\\\\,\\\\s*(' + mapArg + ')\\\\)$';\n };\n\n var urlRegexes = ['^url\\\\s*\\\\(\\\\s*[\\'\"]?(.+?)[\\'\"]?\\\\s*\\\\)$', '^(none)$', '^(.+)$']; // each visual style property has a type and needs to be validated according to it\n\n styfn$2.types = {\n time: {\n number: true,\n min: 0,\n units: 's|ms',\n implicitUnits: 'ms'\n },\n percent: {\n number: true,\n min: 0,\n max: 100,\n units: '%',\n implicitUnits: '%'\n },\n percentages: {\n number: true,\n min: 0,\n max: 100,\n units: '%',\n implicitUnits: '%',\n multiple: true\n },\n zeroOneNumber: {\n number: true,\n min: 0,\n max: 1,\n unitless: true\n },\n zeroOneNumbers: {\n number: true,\n min: 0,\n max: 1,\n unitless: true,\n multiple: true\n },\n nOneOneNumber: {\n number: true,\n min: -1,\n max: 1,\n unitless: true\n },\n nonNegativeInt: {\n number: true,\n min: 0,\n integer: true,\n unitless: true\n },\n position: {\n enums: ['parent', 'origin']\n },\n nodeSize: {\n number: true,\n min: 0,\n enums: ['label']\n },\n number: {\n number: true,\n unitless: true\n },\n numbers: {\n number: true,\n unitless: true,\n multiple: true\n },\n positiveNumber: {\n number: true,\n unitless: true,\n min: 0,\n strictMin: true\n },\n size: {\n number: true,\n min: 0\n },\n bidirectionalSize: {\n number: true\n },\n // allows negative\n bidirectionalSizeMaybePercent: {\n number: true,\n allowPercent: true\n },\n // allows negative\n bidirectionalSizes: {\n number: true,\n multiple: true\n },\n // allows negative\n sizeMaybePercent: {\n number: true,\n min: 0,\n allowPercent: true\n },\n axisDirection: {\n enums: ['horizontal', 'leftward', 'rightward', 'vertical', 'upward', 'downward', 'auto']\n },\n paddingRelativeTo: {\n enums: ['width', 'height', 'average', 'min', 'max']\n },\n bgWH: {\n number: true,\n min: 0,\n allowPercent: true,\n enums: ['auto'],\n multiple: true\n },\n bgPos: {\n number: true,\n allowPercent: true,\n multiple: true\n },\n bgRelativeTo: {\n enums: ['inner', 'include-padding'],\n multiple: true\n },\n bgRepeat: {\n enums: ['repeat', 'repeat-x', 'repeat-y', 'no-repeat'],\n multiple: true\n },\n bgFit: {\n enums: ['none', 'contain', 'cover'],\n multiple: true\n },\n bgCrossOrigin: {\n enums: ['anonymous', 'use-credentials'],\n multiple: true\n },\n bgClip: {\n enums: ['none', 'node'],\n multiple: true\n },\n bgContainment: {\n enums: ['inside', 'over'],\n multiple: true\n },\n color: {\n color: true\n },\n colors: {\n color: true,\n multiple: true\n },\n fill: {\n enums: ['solid', 'linear-gradient', 'radial-gradient']\n },\n bool: {\n enums: ['yes', 'no']\n },\n bools: {\n enums: ['yes', 'no'],\n multiple: true\n },\n lineStyle: {\n enums: ['solid', 'dotted', 'dashed']\n },\n lineCap: {\n enums: ['butt', 'round', 'square']\n },\n borderStyle: {\n enums: ['solid', 'dotted', 'dashed', 'double']\n },\n curveStyle: {\n enums: ['bezier', 'unbundled-bezier', 'haystack', 'segments', 'straight', 'straight-triangle', 'taxi']\n },\n fontFamily: {\n regex: '^([\\\\w- \\\\\"]+(?:\\\\s*,\\\\s*[\\\\w- \\\\\"]+)*)$'\n },\n fontStyle: {\n enums: ['italic', 'normal', 'oblique']\n },\n fontWeight: {\n enums: ['normal', 'bold', 'bolder', 'lighter', '100', '200', '300', '400', '500', '600', '800', '900', 100, 200, 300, 400, 500, 600, 700, 800, 900]\n },\n textDecoration: {\n enums: ['none', 'underline', 'overline', 'line-through']\n },\n textTransform: {\n enums: ['none', 'uppercase', 'lowercase']\n },\n textWrap: {\n enums: ['none', 'wrap', 'ellipsis']\n },\n textOverflowWrap: {\n enums: ['whitespace', 'anywhere']\n },\n textBackgroundShape: {\n enums: ['rectangle', 'roundrectangle', 'round-rectangle']\n },\n nodeShape: {\n enums: ['rectangle', 'roundrectangle', 'round-rectangle', 'cutrectangle', 'cut-rectangle', 'bottomroundrectangle', 'bottom-round-rectangle', 'barrel', 'ellipse', 'triangle', 'round-triangle', 'square', 'pentagon', 'round-pentagon', 'hexagon', 'round-hexagon', 'concavehexagon', 'concave-hexagon', 'heptagon', 'round-heptagon', 'octagon', 'round-octagon', 'tag', 'round-tag', 'star', 'diamond', 'round-diamond', 'vee', 'rhomboid', 'polygon']\n },\n overlayShape: {\n enums: ['roundrectangle', 'round-rectangle', 'ellipse']\n },\n compoundIncludeLabels: {\n enums: ['include', 'exclude']\n },\n arrowShape: {\n enums: ['tee', 'triangle', 'triangle-tee', 'circle-triangle', 'triangle-cross', 'triangle-backcurve', 'vee', 'square', 'circle', 'diamond', 'chevron', 'none']\n },\n arrowFill: {\n enums: ['filled', 'hollow']\n },\n display: {\n enums: ['element', 'none']\n },\n visibility: {\n enums: ['hidden', 'visible']\n },\n zCompoundDepth: {\n enums: ['bottom', 'orphan', 'auto', 'top']\n },\n zIndexCompare: {\n enums: ['auto', 'manual']\n },\n valign: {\n enums: ['top', 'center', 'bottom']\n },\n halign: {\n enums: ['left', 'center', 'right']\n },\n justification: {\n enums: ['left', 'center', 'right', 'auto']\n },\n text: {\n string: true\n },\n data: {\n mapping: true,\n regex: data('data')\n },\n layoutData: {\n mapping: true,\n regex: data('layoutData')\n },\n scratch: {\n mapping: true,\n regex: data('scratch')\n },\n mapData: {\n mapping: true,\n regex: mapData('mapData')\n },\n mapLayoutData: {\n mapping: true,\n regex: mapData('mapLayoutData')\n },\n mapScratch: {\n mapping: true,\n regex: mapData('mapScratch')\n },\n fn: {\n mapping: true,\n fn: true\n },\n url: {\n regexes: urlRegexes,\n singleRegexMatchValue: true\n },\n urls: {\n regexes: urlRegexes,\n singleRegexMatchValue: true,\n multiple: true\n },\n propList: {\n propList: true\n },\n angle: {\n number: true,\n units: 'deg|rad',\n implicitUnits: 'rad'\n },\n textRotation: {\n number: true,\n units: 'deg|rad',\n implicitUnits: 'rad',\n enums: ['none', 'autorotate']\n },\n polygonPointList: {\n number: true,\n multiple: true,\n evenMultiple: true,\n min: -1,\n max: 1,\n unitless: true\n },\n edgeDistances: {\n enums: ['intersection', 'node-position']\n },\n edgeEndpoint: {\n number: true,\n multiple: true,\n units: '%|px|em|deg|rad',\n implicitUnits: 'px',\n enums: ['inside-to-node', 'outside-to-node', 'outside-to-node-or-label', 'outside-to-line', 'outside-to-line-or-label'],\n singleEnum: true,\n validate: function validate(valArr, unitsArr) {\n switch (valArr.length) {\n case 2:\n // can be % or px only\n return unitsArr[0] !== 'deg' && unitsArr[0] !== 'rad' && unitsArr[1] !== 'deg' && unitsArr[1] !== 'rad';\n\n case 1:\n // can be enum, deg, or rad only\n return string(valArr[0]) || unitsArr[0] === 'deg' || unitsArr[0] === 'rad';\n\n default:\n return false;\n }\n }\n },\n easing: {\n regexes: ['^(spring)\\\\s*\\\\(\\\\s*(' + number$1 + ')\\\\s*,\\\\s*(' + number$1 + ')\\\\s*\\\\)$', '^(cubic-bezier)\\\\s*\\\\(\\\\s*(' + number$1 + ')\\\\s*,\\\\s*(' + number$1 + ')\\\\s*,\\\\s*(' + number$1 + ')\\\\s*,\\\\s*(' + number$1 + ')\\\\s*\\\\)$'],\n enums: ['linear', 'ease', 'ease-in', 'ease-out', 'ease-in-out', 'ease-in-sine', 'ease-out-sine', 'ease-in-out-sine', 'ease-in-quad', 'ease-out-quad', 'ease-in-out-quad', 'ease-in-cubic', 'ease-out-cubic', 'ease-in-out-cubic', 'ease-in-quart', 'ease-out-quart', 'ease-in-out-quart', 'ease-in-quint', 'ease-out-quint', 'ease-in-out-quint', 'ease-in-expo', 'ease-out-expo', 'ease-in-out-expo', 'ease-in-circ', 'ease-out-circ', 'ease-in-out-circ']\n },\n gradientDirection: {\n enums: ['to-bottom', 'to-top', 'to-left', 'to-right', 'to-bottom-right', 'to-bottom-left', 'to-top-right', 'to-top-left', 'to-right-bottom', 'to-left-bottom', 'to-right-top', 'to-left-top' // different order\n ]\n },\n boundsExpansion: {\n number: true,\n multiple: true,\n min: 0,\n validate: function validate(valArr) {\n var length = valArr.length;\n return length === 1 || length === 2 || length === 4;\n }\n }\n };\n var diff = {\n zeroNonZero: function zeroNonZero(val1, val2) {\n if ((val1 == null || val2 == null) && val1 !== val2) {\n return true; // null cases could represent any value\n }\n\n if (val1 == 0 && val2 != 0) {\n return true;\n } else if (val1 != 0 && val2 == 0) {\n return true;\n } else {\n return false;\n }\n },\n any: function any(val1, val2) {\n return val1 != val2;\n },\n emptyNonEmpty: function emptyNonEmpty(str1, str2) {\n var empty1 = emptyString(str1);\n var empty2 = emptyString(str2);\n return empty1 && !empty2 || !empty1 && empty2;\n }\n }; // define visual style properties\n //\n // - n.b. adding a new group of props may require updates to updateStyleHints()\n // - adding new props to an existing group gets handled automatically\n\n var t = styfn$2.types;\n var mainLabel = [{\n name: 'label',\n type: t.text,\n triggersBounds: diff.any,\n triggersZOrder: diff.emptyNonEmpty\n }, {\n name: 'text-rotation',\n type: t.textRotation,\n triggersBounds: diff.any\n }, {\n name: 'text-margin-x',\n type: t.bidirectionalSize,\n triggersBounds: diff.any\n }, {\n name: 'text-margin-y',\n type: t.bidirectionalSize,\n triggersBounds: diff.any\n }];\n var sourceLabel = [{\n name: 'source-label',\n type: t.text,\n triggersBounds: diff.any\n }, {\n name: 'source-text-rotation',\n type: t.textRotation,\n triggersBounds: diff.any\n }, {\n name: 'source-text-margin-x',\n type: t.bidirectionalSize,\n triggersBounds: diff.any\n }, {\n name: 'source-text-margin-y',\n type: t.bidirectionalSize,\n triggersBounds: diff.any\n }, {\n name: 'source-text-offset',\n type: t.size,\n triggersBounds: diff.any\n }];\n var targetLabel = [{\n name: 'target-label',\n type: t.text,\n triggersBounds: diff.any\n }, {\n name: 'target-text-rotation',\n type: t.textRotation,\n triggersBounds: diff.any\n }, {\n name: 'target-text-margin-x',\n type: t.bidirectionalSize,\n triggersBounds: diff.any\n }, {\n name: 'target-text-margin-y',\n type: t.bidirectionalSize,\n triggersBounds: diff.any\n }, {\n name: 'target-text-offset',\n type: t.size,\n triggersBounds: diff.any\n }];\n var labelDimensions = [{\n name: 'font-family',\n type: t.fontFamily,\n triggersBounds: diff.any\n }, {\n name: 'font-style',\n type: t.fontStyle,\n triggersBounds: diff.any\n }, {\n name: 'font-weight',\n type: t.fontWeight,\n triggersBounds: diff.any\n }, {\n name: 'font-size',\n type: t.size,\n triggersBounds: diff.any\n }, {\n name: 'text-transform',\n type: t.textTransform,\n triggersBounds: diff.any\n }, {\n name: 'text-wrap',\n type: t.textWrap,\n triggersBounds: diff.any\n }, {\n name: 'text-overflow-wrap',\n type: t.textOverflowWrap,\n triggersBounds: diff.any\n }, {\n name: 'text-max-width',\n type: t.size,\n triggersBounds: diff.any\n }, {\n name: 'text-outline-width',\n type: t.size,\n triggersBounds: diff.any\n }, {\n name: 'line-height',\n type: t.positiveNumber,\n triggersBounds: diff.any\n }];\n var commonLabel = [{\n name: 'text-valign',\n type: t.valign,\n triggersBounds: diff.any\n }, {\n name: 'text-halign',\n type: t.halign,\n triggersBounds: diff.any\n }, {\n name: 'color',\n type: t.color\n }, {\n name: 'text-outline-color',\n type: t.color\n }, {\n name: 'text-outline-opacity',\n type: t.zeroOneNumber\n }, {\n name: 'text-background-color',\n type: t.color\n }, {\n name: 'text-background-opacity',\n type: t.zeroOneNumber\n }, {\n name: 'text-background-padding',\n type: t.size,\n triggersBounds: diff.any\n }, {\n name: 'text-border-opacity',\n type: t.zeroOneNumber\n }, {\n name: 'text-border-color',\n type: t.color\n }, {\n name: 'text-border-width',\n type: t.size,\n triggersBounds: diff.any\n }, {\n name: 'text-border-style',\n type: t.borderStyle,\n triggersBounds: diff.any\n }, {\n name: 'text-background-shape',\n type: t.textBackgroundShape,\n triggersBounds: diff.any\n }, {\n name: 'text-justification',\n type: t.justification\n }];\n var behavior = [{\n name: 'events',\n type: t.bool\n }, {\n name: 'text-events',\n type: t.bool\n }];\n var visibility = [{\n name: 'display',\n type: t.display,\n triggersZOrder: diff.any,\n triggersBounds: diff.any,\n triggersBoundsOfParallelBeziers: true\n }, {\n name: 'visibility',\n type: t.visibility,\n triggersZOrder: diff.any\n }, {\n name: 'opacity',\n type: t.zeroOneNumber,\n triggersZOrder: diff.zeroNonZero\n }, {\n name: 'text-opacity',\n type: t.zeroOneNumber\n }, {\n name: 'min-zoomed-font-size',\n type: t.size\n }, {\n name: 'z-compound-depth',\n type: t.zCompoundDepth,\n triggersZOrder: diff.any\n }, {\n name: 'z-index-compare',\n type: t.zIndexCompare,\n triggersZOrder: diff.any\n }, {\n name: 'z-index',\n type: t.nonNegativeInt,\n triggersZOrder: diff.any\n }];\n var overlay = [{\n name: 'overlay-padding',\n type: t.size,\n triggersBounds: diff.any\n }, {\n name: 'overlay-color',\n type: t.color\n }, {\n name: 'overlay-opacity',\n type: t.zeroOneNumber,\n triggersBounds: diff.zeroNonZero\n }, {\n name: 'overlay-shape',\n type: t.overlayShape,\n triggersBounds: diff.any\n }];\n var underlay = [{\n name: 'underlay-padding',\n type: t.size,\n triggersBounds: diff.any\n }, {\n name: 'underlay-color',\n type: t.color\n }, {\n name: 'underlay-opacity',\n type: t.zeroOneNumber,\n triggersBounds: diff.zeroNonZero\n }, {\n name: 'underlay-shape',\n type: t.overlayShape,\n triggersBounds: diff.any\n }];\n var transition = [{\n name: 'transition-property',\n type: t.propList\n }, {\n name: 'transition-duration',\n type: t.time\n }, {\n name: 'transition-delay',\n type: t.time\n }, {\n name: 'transition-timing-function',\n type: t.easing\n }];\n\n var nodeSizeHashOverride = function nodeSizeHashOverride(ele, parsedProp) {\n if (parsedProp.value === 'label') {\n return -ele.poolIndex(); // no hash key hits is using label size (hitrate for perf probably low anyway)\n } else {\n return parsedProp.pfValue;\n }\n };\n\n var nodeBody = [{\n name: 'height',\n type: t.nodeSize,\n triggersBounds: diff.any,\n hashOverride: nodeSizeHashOverride\n }, {\n name: 'width',\n type: t.nodeSize,\n triggersBounds: diff.any,\n hashOverride: nodeSizeHashOverride\n }, {\n name: 'shape',\n type: t.nodeShape,\n triggersBounds: diff.any\n }, {\n name: 'shape-polygon-points',\n type: t.polygonPointList,\n triggersBounds: diff.any\n }, {\n name: 'background-color',\n type: t.color\n }, {\n name: 'background-fill',\n type: t.fill\n }, {\n name: 'background-opacity',\n type: t.zeroOneNumber\n }, {\n name: 'background-blacken',\n type: t.nOneOneNumber\n }, {\n name: 'background-gradient-stop-colors',\n type: t.colors\n }, {\n name: 'background-gradient-stop-positions',\n type: t.percentages\n }, {\n name: 'background-gradient-direction',\n type: t.gradientDirection\n }, {\n name: 'padding',\n type: t.sizeMaybePercent,\n triggersBounds: diff.any\n }, {\n name: 'padding-relative-to',\n type: t.paddingRelativeTo,\n triggersBounds: diff.any\n }, {\n name: 'bounds-expansion',\n type: t.boundsExpansion,\n triggersBounds: diff.any\n }];\n var nodeBorder = [{\n name: 'border-color',\n type: t.color\n }, {\n name: 'border-opacity',\n type: t.zeroOneNumber\n }, {\n name: 'border-width',\n type: t.size,\n triggersBounds: diff.any\n }, {\n name: 'border-style',\n type: t.borderStyle\n }];\n var backgroundImage = [{\n name: 'background-image',\n type: t.urls\n }, {\n name: 'background-image-crossorigin',\n type: t.bgCrossOrigin\n }, {\n name: 'background-image-opacity',\n type: t.zeroOneNumbers\n }, {\n name: 'background-image-containment',\n type: t.bgContainment\n }, {\n name: 'background-image-smoothing',\n type: t.bools\n }, {\n name: 'background-position-x',\n type: t.bgPos\n }, {\n name: 'background-position-y',\n type: t.bgPos\n }, {\n name: 'background-width-relative-to',\n type: t.bgRelativeTo\n }, {\n name: 'background-height-relative-to',\n type: t.bgRelativeTo\n }, {\n name: 'background-repeat',\n type: t.bgRepeat\n }, {\n name: 'background-fit',\n type: t.bgFit\n }, {\n name: 'background-clip',\n type: t.bgClip\n }, {\n name: 'background-width',\n type: t.bgWH\n }, {\n name: 'background-height',\n type: t.bgWH\n }, {\n name: 'background-offset-x',\n type: t.bgPos\n }, {\n name: 'background-offset-y',\n type: t.bgPos\n }];\n var compound = [{\n name: 'position',\n type: t.position,\n triggersBounds: diff.any\n }, {\n name: 'compound-sizing-wrt-labels',\n type: t.compoundIncludeLabels,\n triggersBounds: diff.any\n }, {\n name: 'min-width',\n type: t.size,\n triggersBounds: diff.any\n }, {\n name: 'min-width-bias-left',\n type: t.sizeMaybePercent,\n triggersBounds: diff.any\n }, {\n name: 'min-width-bias-right',\n type: t.sizeMaybePercent,\n triggersBounds: diff.any\n }, {\n name: 'min-height',\n type: t.size,\n triggersBounds: diff.any\n }, {\n name: 'min-height-bias-top',\n type: t.sizeMaybePercent,\n triggersBounds: diff.any\n }, {\n name: 'min-height-bias-bottom',\n type: t.sizeMaybePercent,\n triggersBounds: diff.any\n }];\n var edgeLine = [{\n name: 'line-style',\n type: t.lineStyle\n }, {\n name: 'line-color',\n type: t.color\n }, {\n name: 'line-fill',\n type: t.fill\n }, {\n name: 'line-cap',\n type: t.lineCap\n }, {\n name: 'line-opacity',\n type: t.zeroOneNumber\n }, {\n name: 'line-dash-pattern',\n type: t.numbers\n }, {\n name: 'line-dash-offset',\n type: t.number\n }, {\n name: 'line-gradient-stop-colors',\n type: t.colors\n }, {\n name: 'line-gradient-stop-positions',\n type: t.percentages\n }, {\n name: 'curve-style',\n type: t.curveStyle,\n triggersBounds: diff.any,\n triggersBoundsOfParallelBeziers: true\n }, {\n name: 'haystack-radius',\n type: t.zeroOneNumber,\n triggersBounds: diff.any\n }, {\n name: 'source-endpoint',\n type: t.edgeEndpoint,\n triggersBounds: diff.any\n }, {\n name: 'target-endpoint',\n type: t.edgeEndpoint,\n triggersBounds: diff.any\n }, {\n name: 'control-point-step-size',\n type: t.size,\n triggersBounds: diff.any\n }, {\n name: 'control-point-distances',\n type: t.bidirectionalSizes,\n triggersBounds: diff.any\n }, {\n name: 'control-point-weights',\n type: t.numbers,\n triggersBounds: diff.any\n }, {\n name: 'segment-distances',\n type: t.bidirectionalSizes,\n triggersBounds: diff.any\n }, {\n name: 'segment-weights',\n type: t.numbers,\n triggersBounds: diff.any\n }, {\n name: 'taxi-turn',\n type: t.bidirectionalSizeMaybePercent,\n triggersBounds: diff.any\n }, {\n name: 'taxi-turn-min-distance',\n type: t.size,\n triggersBounds: diff.any\n }, {\n name: 'taxi-direction',\n type: t.axisDirection,\n triggersBounds: diff.any\n }, {\n name: 'edge-distances',\n type: t.edgeDistances,\n triggersBounds: diff.any\n }, {\n name: 'arrow-scale',\n type: t.positiveNumber,\n triggersBounds: diff.any\n }, {\n name: 'loop-direction',\n type: t.angle,\n triggersBounds: diff.any\n }, {\n name: 'loop-sweep',\n type: t.angle,\n triggersBounds: diff.any\n }, {\n name: 'source-distance-from-node',\n type: t.size,\n triggersBounds: diff.any\n }, {\n name: 'target-distance-from-node',\n type: t.size,\n triggersBounds: diff.any\n }];\n var ghost = [{\n name: 'ghost',\n type: t.bool,\n triggersBounds: diff.any\n }, {\n name: 'ghost-offset-x',\n type: t.bidirectionalSize,\n triggersBounds: diff.any\n }, {\n name: 'ghost-offset-y',\n type: t.bidirectionalSize,\n triggersBounds: diff.any\n }, {\n name: 'ghost-opacity',\n type: t.zeroOneNumber\n }];\n var core = [{\n name: 'selection-box-color',\n type: t.color\n }, {\n name: 'selection-box-opacity',\n type: t.zeroOneNumber\n }, {\n name: 'selection-box-border-color',\n type: t.color\n }, {\n name: 'selection-box-border-width',\n type: t.size\n }, {\n name: 'active-bg-color',\n type: t.color\n }, {\n name: 'active-bg-opacity',\n type: t.zeroOneNumber\n }, {\n name: 'active-bg-size',\n type: t.size\n }, {\n name: 'outside-texture-bg-color',\n type: t.color\n }, {\n name: 'outside-texture-bg-opacity',\n type: t.zeroOneNumber\n }]; // pie backgrounds for nodes\n\n var pie = [];\n styfn$2.pieBackgroundN = 16; // because the pie properties are numbered, give access to a constant N (for renderer use)\n\n pie.push({\n name: 'pie-size',\n type: t.sizeMaybePercent\n });\n\n for (var i = 1; i <= styfn$2.pieBackgroundN; i++) {\n pie.push({\n name: 'pie-' + i + '-background-color',\n type: t.color\n });\n pie.push({\n name: 'pie-' + i + '-background-size',\n type: t.percent\n });\n pie.push({\n name: 'pie-' + i + '-background-opacity',\n type: t.zeroOneNumber\n });\n } // edge arrows\n\n\n var edgeArrow = [];\n var arrowPrefixes = styfn$2.arrowPrefixes = ['source', 'mid-source', 'target', 'mid-target'];\n [{\n name: 'arrow-shape',\n type: t.arrowShape,\n triggersBounds: diff.any\n }, {\n name: 'arrow-color',\n type: t.color\n }, {\n name: 'arrow-fill',\n type: t.arrowFill\n }].forEach(function (prop) {\n arrowPrefixes.forEach(function (prefix) {\n var name = prefix + '-' + prop.name;\n var type = prop.type,\n triggersBounds = prop.triggersBounds;\n edgeArrow.push({\n name: name,\n type: type,\n triggersBounds: triggersBounds\n });\n });\n }, {});\n var props = styfn$2.properties = [].concat(behavior, transition, visibility, overlay, underlay, ghost, commonLabel, labelDimensions, mainLabel, sourceLabel, targetLabel, nodeBody, nodeBorder, backgroundImage, pie, compound, edgeLine, edgeArrow, core);\n var propGroups = styfn$2.propertyGroups = {\n // common to all eles\n behavior: behavior,\n transition: transition,\n visibility: visibility,\n overlay: overlay,\n underlay: underlay,\n ghost: ghost,\n // labels\n commonLabel: commonLabel,\n labelDimensions: labelDimensions,\n mainLabel: mainLabel,\n sourceLabel: sourceLabel,\n targetLabel: targetLabel,\n // node props\n nodeBody: nodeBody,\n nodeBorder: nodeBorder,\n backgroundImage: backgroundImage,\n pie: pie,\n compound: compound,\n // edge props\n edgeLine: edgeLine,\n edgeArrow: edgeArrow,\n core: core\n };\n var propGroupNames = styfn$2.propertyGroupNames = {};\n var propGroupKeys = styfn$2.propertyGroupKeys = Object.keys(propGroups);\n propGroupKeys.forEach(function (key) {\n propGroupNames[key] = propGroups[key].map(function (prop) {\n return prop.name;\n });\n propGroups[key].forEach(function (prop) {\n return prop.groupKey = key;\n });\n }); // define aliases\n\n var aliases = styfn$2.aliases = [{\n name: 'content',\n pointsTo: 'label'\n }, {\n name: 'control-point-distance',\n pointsTo: 'control-point-distances'\n }, {\n name: 'control-point-weight',\n pointsTo: 'control-point-weights'\n }, {\n name: 'edge-text-rotation',\n pointsTo: 'text-rotation'\n }, {\n name: 'padding-left',\n pointsTo: 'padding'\n }, {\n name: 'padding-right',\n pointsTo: 'padding'\n }, {\n name: 'padding-top',\n pointsTo: 'padding'\n }, {\n name: 'padding-bottom',\n pointsTo: 'padding'\n }]; // list of property names\n\n styfn$2.propertyNames = props.map(function (p) {\n return p.name;\n }); // allow access of properties by name ( e.g. style.properties.height )\n\n for (var _i = 0; _i < props.length; _i++) {\n var prop = props[_i];\n props[prop.name] = prop; // allow lookup by name\n } // map aliases\n\n\n for (var _i2 = 0; _i2 < aliases.length; _i2++) {\n var alias = aliases[_i2];\n var pointsToProp = props[alias.pointsTo];\n var aliasProp = {\n name: alias.name,\n alias: true,\n pointsTo: pointsToProp\n }; // add alias prop for parsing\n\n props.push(aliasProp);\n props[alias.name] = aliasProp; // allow lookup by name\n }\n})();\n\nstyfn$2.getDefaultProperty = function (name) {\n return this.getDefaultProperties()[name];\n};\n\nstyfn$2.getDefaultProperties = function () {\n var _p = this._private;\n\n if (_p.defaultProperties != null) {\n return _p.defaultProperties;\n }\n\n var rawProps = extend({\n // core props\n 'selection-box-color': '#ddd',\n 'selection-box-opacity': 0.65,\n 'selection-box-border-color': '#aaa',\n 'selection-box-border-width': 1,\n 'active-bg-color': 'black',\n 'active-bg-opacity': 0.15,\n 'active-bg-size': 30,\n 'outside-texture-bg-color': '#000',\n 'outside-texture-bg-opacity': 0.125,\n // common node/edge props\n 'events': 'yes',\n 'text-events': 'no',\n 'text-valign': 'top',\n 'text-halign': 'center',\n 'text-justification': 'auto',\n 'line-height': 1,\n 'color': '#000',\n 'text-outline-color': '#000',\n 'text-outline-width': 0,\n 'text-outline-opacity': 1,\n 'text-opacity': 1,\n 'text-decoration': 'none',\n 'text-transform': 'none',\n 'text-wrap': 'none',\n 'text-overflow-wrap': 'whitespace',\n 'text-max-width': 9999,\n 'text-background-color': '#000',\n 'text-background-opacity': 0,\n 'text-background-shape': 'rectangle',\n 'text-background-padding': 0,\n 'text-border-opacity': 0,\n 'text-border-width': 0,\n 'text-border-style': 'solid',\n 'text-border-color': '#000',\n 'font-family': 'Helvetica Neue, Helvetica, sans-serif',\n 'font-style': 'normal',\n 'font-weight': 'normal',\n 'font-size': 16,\n 'min-zoomed-font-size': 0,\n 'text-rotation': 'none',\n 'source-text-rotation': 'none',\n 'target-text-rotation': 'none',\n 'visibility': 'visible',\n 'display': 'element',\n 'opacity': 1,\n 'z-compound-depth': 'auto',\n 'z-index-compare': 'auto',\n 'z-index': 0,\n 'label': '',\n 'text-margin-x': 0,\n 'text-margin-y': 0,\n 'source-label': '',\n 'source-text-offset': 0,\n 'source-text-margin-x': 0,\n 'source-text-margin-y': 0,\n 'target-label': '',\n 'target-text-offset': 0,\n 'target-text-margin-x': 0,\n 'target-text-margin-y': 0,\n 'overlay-opacity': 0,\n 'overlay-color': '#000',\n 'overlay-padding': 10,\n 'overlay-shape': 'round-rectangle',\n 'underlay-opacity': 0,\n 'underlay-color': '#000',\n 'underlay-padding': 10,\n 'underlay-shape': 'round-rectangle',\n 'transition-property': 'none',\n 'transition-duration': 0,\n 'transition-delay': 0,\n 'transition-timing-function': 'linear',\n // node props\n 'background-blacken': 0,\n 'background-color': '#999',\n 'background-fill': 'solid',\n 'background-opacity': 1,\n 'background-image': 'none',\n 'background-image-crossorigin': 'anonymous',\n 'background-image-opacity': 1,\n 'background-image-containment': 'inside',\n 'background-image-smoothing': 'yes',\n 'background-position-x': '50%',\n 'background-position-y': '50%',\n 'background-offset-x': 0,\n 'background-offset-y': 0,\n 'background-width-relative-to': 'include-padding',\n 'background-height-relative-to': 'include-padding',\n 'background-repeat': 'no-repeat',\n 'background-fit': 'none',\n 'background-clip': 'node',\n 'background-width': 'auto',\n 'background-height': 'auto',\n 'border-color': '#000',\n 'border-opacity': 1,\n 'border-width': 0,\n 'border-style': 'solid',\n 'height': 30,\n 'width': 30,\n 'shape': 'ellipse',\n 'shape-polygon-points': '-1, -1, 1, -1, 1, 1, -1, 1',\n 'bounds-expansion': 0,\n // node gradient\n 'background-gradient-direction': 'to-bottom',\n 'background-gradient-stop-colors': '#999',\n 'background-gradient-stop-positions': '0%',\n // ghost props\n 'ghost': 'no',\n 'ghost-offset-y': 0,\n 'ghost-offset-x': 0,\n 'ghost-opacity': 0,\n // compound props\n 'padding': 0,\n 'padding-relative-to': 'width',\n 'position': 'origin',\n 'compound-sizing-wrt-labels': 'include',\n 'min-width': 0,\n 'min-width-bias-left': 0,\n 'min-width-bias-right': 0,\n 'min-height': 0,\n 'min-height-bias-top': 0,\n 'min-height-bias-bottom': 0\n }, {\n // node pie bg\n 'pie-size': '100%'\n }, [{\n name: 'pie-{{i}}-background-color',\n value: 'black'\n }, {\n name: 'pie-{{i}}-background-size',\n value: '0%'\n }, {\n name: 'pie-{{i}}-background-opacity',\n value: 1\n }].reduce(function (css, prop) {\n for (var i = 1; i <= styfn$2.pieBackgroundN; i++) {\n var name = prop.name.replace('{{i}}', i);\n var val = prop.value;\n css[name] = val;\n }\n\n return css;\n }, {}), {\n // edge props\n 'line-style': 'solid',\n 'line-color': '#999',\n 'line-fill': 'solid',\n 'line-cap': 'butt',\n 'line-opacity': 1,\n 'line-gradient-stop-colors': '#999',\n 'line-gradient-stop-positions': '0%',\n 'control-point-step-size': 40,\n 'control-point-weights': 0.5,\n 'segment-weights': 0.5,\n 'segment-distances': 20,\n 'taxi-turn': '50%',\n 'taxi-turn-min-distance': 10,\n 'taxi-direction': 'auto',\n 'edge-distances': 'intersection',\n 'curve-style': 'haystack',\n 'haystack-radius': 0,\n 'arrow-scale': 1,\n 'loop-direction': '-45deg',\n 'loop-sweep': '-90deg',\n 'source-distance-from-node': 0,\n 'target-distance-from-node': 0,\n 'source-endpoint': 'outside-to-node',\n 'target-endpoint': 'outside-to-node',\n 'line-dash-pattern': [6, 3],\n 'line-dash-offset': 0\n }, [{\n name: 'arrow-shape',\n value: 'none'\n }, {\n name: 'arrow-color',\n value: '#999'\n }, {\n name: 'arrow-fill',\n value: 'filled'\n }].reduce(function (css, prop) {\n styfn$2.arrowPrefixes.forEach(function (prefix) {\n var name = prefix + '-' + prop.name;\n var val = prop.value;\n css[name] = val;\n });\n return css;\n }, {}));\n var parsedProps = {};\n\n for (var i = 0; i < this.properties.length; i++) {\n var prop = this.properties[i];\n\n if (prop.pointsTo) {\n continue;\n }\n\n var name = prop.name;\n var val = rawProps[name];\n var parsedProp = this.parse(name, val);\n parsedProps[name] = parsedProp;\n }\n\n _p.defaultProperties = parsedProps;\n return _p.defaultProperties;\n};\n\nstyfn$2.addDefaultStylesheet = function () {\n this.selector(':parent').css({\n 'shape': 'rectangle',\n 'padding': 10,\n 'background-color': '#eee',\n 'border-color': '#ccc',\n 'border-width': 1\n }).selector('edge').css({\n 'width': 3\n }).selector(':loop').css({\n 'curve-style': 'bezier'\n }).selector('edge:compound').css({\n 'curve-style': 'bezier',\n 'source-endpoint': 'outside-to-line',\n 'target-endpoint': 'outside-to-line'\n }).selector(':selected').css({\n 'background-color': '#0169D9',\n 'line-color': '#0169D9',\n 'source-arrow-color': '#0169D9',\n 'target-arrow-color': '#0169D9',\n 'mid-source-arrow-color': '#0169D9',\n 'mid-target-arrow-color': '#0169D9'\n }).selector(':parent:selected').css({\n 'background-color': '#CCE1F9',\n 'border-color': '#aec8e5'\n }).selector(':active').css({\n 'overlay-color': 'black',\n 'overlay-padding': 10,\n 'overlay-opacity': 0.25\n });\n this.defaultLength = this.length;\n};\n\nvar styfn$1 = {}; // a caching layer for property parsing\n\nstyfn$1.parse = function (name, value, propIsBypass, propIsFlat) {\n var self = this; // function values can't be cached in all cases, and there isn't much benefit of caching them anyway\n\n if (fn$6(value)) {\n return self.parseImplWarn(name, value, propIsBypass, propIsFlat);\n }\n\n var flatKey = propIsFlat === 'mapping' || propIsFlat === true || propIsFlat === false || propIsFlat == null ? 'dontcare' : propIsFlat;\n var bypassKey = propIsBypass ? 't' : 'f';\n var valueKey = '' + value;\n var argHash = hashStrings(name, valueKey, bypassKey, flatKey);\n var propCache = self.propCache = self.propCache || [];\n var ret;\n\n if (!(ret = propCache[argHash])) {\n ret = propCache[argHash] = self.parseImplWarn(name, value, propIsBypass, propIsFlat);\n } // - bypasses can't be shared b/c the value can be changed by animations or otherwise overridden\n // - mappings can't be shared b/c mappings are per-element\n\n\n if (propIsBypass || propIsFlat === 'mapping') {\n // need a copy since props are mutated later in their lifecycles\n ret = copy(ret);\n\n if (ret) {\n ret.value = copy(ret.value); // because it could be an array, e.g. colour\n }\n }\n\n return ret;\n};\n\nstyfn$1.parseImplWarn = function (name, value, propIsBypass, propIsFlat) {\n var prop = this.parseImpl(name, value, propIsBypass, propIsFlat);\n\n if (!prop && value != null) {\n warn(\"The style property `\".concat(name, \": \").concat(value, \"` is invalid\"));\n }\n\n if (prop && (prop.name === 'width' || prop.name === 'height') && value === 'label') {\n warn('The style value of `label` is deprecated for `' + prop.name + '`');\n }\n\n return prop;\n}; // parse a property; return null on invalid; return parsed property otherwise\n// fields :\n// - name : the name of the property\n// - value : the parsed, native-typed value of the property\n// - strValue : a string value that represents the property value in valid css\n// - bypass : true iff the property is a bypass property\n\n\nstyfn$1.parseImpl = function (name, value, propIsBypass, propIsFlat) {\n var self = this;\n name = camel2dash(name); // make sure the property name is in dash form (e.g. 'property-name' not 'propertyName')\n\n var property = self.properties[name];\n var passedValue = value;\n var types = self.types;\n\n if (!property) {\n return null;\n } // return null on property of unknown name\n\n\n if (value === undefined) {\n return null;\n } // can't assign undefined\n // the property may be an alias\n\n\n if (property.alias) {\n property = property.pointsTo;\n name = property.name;\n }\n\n var valueIsString = string(value);\n\n if (valueIsString) {\n // trim the value to make parsing easier\n value = value.trim();\n }\n\n var type = property.type;\n\n if (!type) {\n return null;\n } // no type, no luck\n // check if bypass is null or empty string (i.e. indication to delete bypass property)\n\n\n if (propIsBypass && (value === '' || value === null)) {\n return {\n name: name,\n value: value,\n bypass: true,\n deleteBypass: true\n };\n } // check if value is a function used as a mapper\n\n\n if (fn$6(value)) {\n return {\n name: name,\n value: value,\n strValue: 'fn',\n mapped: types.fn,\n bypass: propIsBypass\n };\n } // check if value is mapped\n\n\n var data, mapData;\n\n if (!valueIsString || propIsFlat || value.length < 7 || value[1] !== 'a') ; else if (value.length >= 7 && value[0] === 'd' && (data = new RegExp(types.data.regex).exec(value))) {\n if (propIsBypass) {\n return false;\n } // mappers not allowed in bypass\n\n\n var mapped = types.data;\n return {\n name: name,\n value: data,\n strValue: '' + value,\n mapped: mapped,\n field: data[1],\n bypass: propIsBypass\n };\n } else if (value.length >= 10 && value[0] === 'm' && (mapData = new RegExp(types.mapData.regex).exec(value))) {\n if (propIsBypass) {\n return false;\n } // mappers not allowed in bypass\n\n\n if (type.multiple) {\n return false;\n } // impossible to map to num\n\n\n var _mapped = types.mapData; // we can map only if the type is a colour or a number\n\n if (!(type.color || type.number)) {\n return false;\n }\n\n var valueMin = this.parse(name, mapData[4]); // parse to validate\n\n if (!valueMin || valueMin.mapped) {\n return false;\n } // can't be invalid or mapped\n\n\n var valueMax = this.parse(name, mapData[5]); // parse to validate\n\n if (!valueMax || valueMax.mapped) {\n return false;\n } // can't be invalid or mapped\n // check if valueMin and valueMax are the same\n\n\n if (valueMin.pfValue === valueMax.pfValue || valueMin.strValue === valueMax.strValue) {\n warn('`' + name + ': ' + value + '` is not a valid mapper because the output range is zero; converting to `' + name + ': ' + valueMin.strValue + '`');\n return this.parse(name, valueMin.strValue); // can't make much of a mapper without a range\n } else if (type.color) {\n var c1 = valueMin.value;\n var c2 = valueMax.value;\n var same = c1[0] === c2[0] // red\n && c1[1] === c2[1] // green\n && c1[2] === c2[2] // blue\n && ( // optional alpha\n c1[3] === c2[3] // same alpha outright\n || (c1[3] == null || c1[3] === 1 // full opacity for colour 1?\n ) && (c2[3] == null || c2[3] === 1) // full opacity for colour 2?\n );\n\n if (same) {\n return false;\n } // can't make a mapper without a range\n\n }\n\n return {\n name: name,\n value: mapData,\n strValue: '' + value,\n mapped: _mapped,\n field: mapData[1],\n fieldMin: parseFloat(mapData[2]),\n // min & max are numeric\n fieldMax: parseFloat(mapData[3]),\n valueMin: valueMin.value,\n valueMax: valueMax.value,\n bypass: propIsBypass\n };\n }\n\n if (type.multiple && propIsFlat !== 'multiple') {\n var vals;\n\n if (valueIsString) {\n vals = value.split(/\\s+/);\n } else if (array(value)) {\n vals = value;\n } else {\n vals = [value];\n }\n\n if (type.evenMultiple && vals.length % 2 !== 0) {\n return null;\n }\n\n var valArr = [];\n var unitsArr = [];\n var pfValArr = [];\n var strVal = '';\n var hasEnum = false;\n\n for (var i = 0; i < vals.length; i++) {\n var p = self.parse(name, vals[i], propIsBypass, 'multiple');\n hasEnum = hasEnum || string(p.value);\n valArr.push(p.value);\n pfValArr.push(p.pfValue != null ? p.pfValue : p.value);\n unitsArr.push(p.units);\n strVal += (i > 0 ? ' ' : '') + p.strValue;\n }\n\n if (type.validate && !type.validate(valArr, unitsArr)) {\n return null;\n }\n\n if (type.singleEnum && hasEnum) {\n if (valArr.length === 1 && string(valArr[0])) {\n return {\n name: name,\n value: valArr[0],\n strValue: valArr[0],\n bypass: propIsBypass\n };\n } else {\n return null;\n }\n }\n\n return {\n name: name,\n value: valArr,\n pfValue: pfValArr,\n strValue: strVal,\n bypass: propIsBypass,\n units: unitsArr\n };\n } // several types also allow enums\n\n\n var checkEnums = function checkEnums() {\n for (var _i = 0; _i < type.enums.length; _i++) {\n var en = type.enums[_i];\n\n if (en === value) {\n return {\n name: name,\n value: value,\n strValue: '' + value,\n bypass: propIsBypass\n };\n }\n }\n\n return null;\n }; // check the type and return the appropriate object\n\n\n if (type.number) {\n var units;\n var implicitUnits = 'px'; // not set => px\n\n if (type.units) {\n // use specified units if set\n units = type.units;\n }\n\n if (type.implicitUnits) {\n implicitUnits = type.implicitUnits;\n }\n\n if (!type.unitless) {\n if (valueIsString) {\n var unitsRegex = 'px|em' + (type.allowPercent ? '|\\\\%' : '');\n\n if (units) {\n unitsRegex = units;\n } // only allow explicit units if so set\n\n\n var match = value.match('^(' + number + ')(' + unitsRegex + ')?' + '$');\n\n if (match) {\n value = match[1];\n units = match[2] || implicitUnits;\n }\n } else if (!units || type.implicitUnits) {\n units = implicitUnits; // implicitly px if unspecified\n }\n }\n\n value = parseFloat(value); // if not a number and enums not allowed, then the value is invalid\n\n if (isNaN(value) && type.enums === undefined) {\n return null;\n } // check if this number type also accepts special keywords in place of numbers\n // (i.e. `left`, `auto`, etc)\n\n\n if (isNaN(value) && type.enums !== undefined) {\n value = passedValue;\n return checkEnums();\n } // check if value must be an integer\n\n\n if (type.integer && !integer(value)) {\n return null;\n } // check value is within range\n\n\n if (type.min !== undefined && (value < type.min || type.strictMin && value === type.min) || type.max !== undefined && (value > type.max || type.strictMax && value === type.max)) {\n return null;\n }\n\n var ret = {\n name: name,\n value: value,\n strValue: '' + value + (units ? units : ''),\n units: units,\n bypass: propIsBypass\n }; // normalise value in pixels\n\n if (type.unitless || units !== 'px' && units !== 'em') {\n ret.pfValue = value;\n } else {\n ret.pfValue = units === 'px' || !units ? value : this.getEmSizeInPixels() * value;\n } // normalise value in ms\n\n\n if (units === 'ms' || units === 's') {\n ret.pfValue = units === 'ms' ? value : 1000 * value;\n } // normalise value in rad\n\n\n if (units === 'deg' || units === 'rad') {\n ret.pfValue = units === 'rad' ? value : deg2rad(value);\n } // normalize value in %\n\n\n if (units === '%') {\n ret.pfValue = value / 100;\n }\n\n return ret;\n } else if (type.propList) {\n var props = [];\n var propsStr = '' + value;\n\n if (propsStr === 'none') ; else {\n // go over each prop\n var propsSplit = propsStr.split(/\\s*,\\s*|\\s+/);\n\n for (var _i2 = 0; _i2 < propsSplit.length; _i2++) {\n var propName = propsSplit[_i2].trim();\n\n if (self.properties[propName]) {\n props.push(propName);\n } else {\n warn('`' + propName + '` is not a valid property name');\n }\n }\n\n if (props.length === 0) {\n return null;\n }\n }\n\n return {\n name: name,\n value: props,\n strValue: props.length === 0 ? 'none' : props.join(' '),\n bypass: propIsBypass\n };\n } else if (type.color) {\n var tuple = color2tuple(value);\n\n if (!tuple) {\n return null;\n }\n\n return {\n name: name,\n value: tuple,\n pfValue: tuple,\n strValue: 'rgb(' + tuple[0] + ',' + tuple[1] + ',' + tuple[2] + ')',\n // n.b. no spaces b/c of multiple support\n bypass: propIsBypass\n };\n } else if (type.regex || type.regexes) {\n // first check enums\n if (type.enums) {\n var enumProp = checkEnums();\n\n if (enumProp) {\n return enumProp;\n }\n }\n\n var regexes = type.regexes ? type.regexes : [type.regex];\n\n for (var _i3 = 0; _i3 < regexes.length; _i3++) {\n var regex = new RegExp(regexes[_i3]); // make a regex from the type string\n\n var m = regex.exec(value);\n\n if (m) {\n // regex matches\n return {\n name: name,\n value: type.singleRegexMatchValue ? m[1] : m,\n strValue: '' + value,\n bypass: propIsBypass\n };\n }\n }\n\n return null; // didn't match any\n } else if (type.string) {\n // just return\n return {\n name: name,\n value: '' + value,\n strValue: '' + value,\n bypass: propIsBypass\n };\n } else if (type.enums) {\n // check enums last because it's a combo type in others\n return checkEnums();\n } else {\n return null; // not a type we can handle\n }\n};\n\nvar Style = function Style(cy) {\n if (!(this instanceof Style)) {\n return new Style(cy);\n }\n\n if (!core(cy)) {\n error('A style must have a core reference');\n return;\n }\n\n this._private = {\n cy: cy,\n coreStyle: {}\n };\n this.length = 0;\n this.resetToDefault();\n};\n\nvar styfn = Style.prototype;\n\nstyfn.instanceString = function () {\n return 'style';\n}; // remove all contexts\n\n\nstyfn.clear = function () {\n var _p = this._private;\n var cy = _p.cy;\n var eles = cy.elements();\n\n for (var i = 0; i < this.length; i++) {\n this[i] = undefined;\n }\n\n this.length = 0;\n _p.contextStyles = {};\n _p.propDiffs = {};\n this.cleanElements(eles, true);\n eles.forEach(function (ele) {\n var ele_p = ele[0]._private;\n ele_p.styleDirty = true;\n ele_p.appliedInitStyle = false;\n });\n return this; // chaining\n};\n\nstyfn.resetToDefault = function () {\n this.clear();\n this.addDefaultStylesheet();\n return this;\n}; // builds a style object for the 'core' selector\n\n\nstyfn.core = function (propName) {\n return this._private.coreStyle[propName] || this.getDefaultProperty(propName);\n}; // create a new context from the specified selector string and switch to that context\n\n\nstyfn.selector = function (selectorStr) {\n // 'core' is a special case and does not need a selector\n var selector = selectorStr === 'core' ? null : new Selector(selectorStr);\n var i = this.length++; // new context means new index\n\n this[i] = {\n selector: selector,\n properties: [],\n mappedProperties: [],\n index: i\n };\n return this; // chaining\n}; // add one or many css rules to the current context\n\n\nstyfn.css = function () {\n var self = this;\n var args = arguments;\n\n if (args.length === 1) {\n var map = args[0];\n\n for (var i = 0; i < self.properties.length; i++) {\n var prop = self.properties[i];\n var mapVal = map[prop.name];\n\n if (mapVal === undefined) {\n mapVal = map[dash2camel(prop.name)];\n }\n\n if (mapVal !== undefined) {\n this.cssRule(prop.name, mapVal);\n }\n }\n } else if (args.length === 2) {\n this.cssRule(args[0], args[1]);\n } // do nothing if args are invalid\n\n\n return this; // chaining\n};\n\nstyfn.style = styfn.css; // add a single css rule to the current context\n\nstyfn.cssRule = function (name, value) {\n // name-value pair\n var property = this.parse(name, value); // add property to current context if valid\n\n if (property) {\n var i = this.length - 1;\n this[i].properties.push(property);\n this[i].properties[property.name] = property; // allow access by name as well\n\n if (property.name.match(/pie-(\\d+)-background-size/) && property.value) {\n this._private.hasPie = true;\n }\n\n if (property.mapped) {\n this[i].mappedProperties.push(property);\n } // add to core style if necessary\n\n\n var currentSelectorIsCore = !this[i].selector;\n\n if (currentSelectorIsCore) {\n this._private.coreStyle[property.name] = property;\n }\n }\n\n return this; // chaining\n};\n\nstyfn.append = function (style) {\n if (stylesheet(style)) {\n style.appendToStyle(this);\n } else if (array(style)) {\n this.appendFromJson(style);\n } else if (string(style)) {\n this.appendFromString(style);\n } // you probably wouldn't want to append a Style, since you'd duplicate the default parts\n\n\n return this;\n}; // static function\n\n\nStyle.fromJson = function (cy, json) {\n var style = new Style(cy);\n style.fromJson(json);\n return style;\n};\n\nStyle.fromString = function (cy, string) {\n return new Style(cy).fromString(string);\n};\n\n[styfn$8, styfn$7, styfn$6, styfn$5, styfn$4, styfn$3, styfn$2, styfn$1].forEach(function (props) {\n extend(styfn, props);\n});\nStyle.types = styfn.types;\nStyle.properties = styfn.properties;\nStyle.propertyGroups = styfn.propertyGroups;\nStyle.propertyGroupNames = styfn.propertyGroupNames;\nStyle.propertyGroupKeys = styfn.propertyGroupKeys;\n\nvar corefn$2 = {\n style: function style(newStyle) {\n if (newStyle) {\n var s = this.setStyle(newStyle);\n s.update();\n }\n\n return this._private.style;\n },\n setStyle: function setStyle(style) {\n var _p = this._private;\n\n if (stylesheet(style)) {\n _p.style = style.generateStyle(this);\n } else if (array(style)) {\n _p.style = Style.fromJson(this, style);\n } else if (string(style)) {\n _p.style = Style.fromString(this, style);\n } else {\n _p.style = Style(this);\n }\n\n return _p.style;\n },\n // e.g. cy.data() changed => recalc ele mappers\n updateStyle: function updateStyle() {\n this.mutableElements().updateStyle(); // just send to all eles\n }\n};\n\nvar defaultSelectionType = 'single';\nvar corefn$1 = {\n autolock: function autolock(bool) {\n if (bool !== undefined) {\n this._private.autolock = bool ? true : false;\n } else {\n return this._private.autolock;\n }\n\n return this; // chaining\n },\n autoungrabify: function autoungrabify(bool) {\n if (bool !== undefined) {\n this._private.autoungrabify = bool ? true : false;\n } else {\n return this._private.autoungrabify;\n }\n\n return this; // chaining\n },\n autounselectify: function autounselectify(bool) {\n if (bool !== undefined) {\n this._private.autounselectify = bool ? true : false;\n } else {\n return this._private.autounselectify;\n }\n\n return this; // chaining\n },\n selectionType: function selectionType(selType) {\n var _p = this._private;\n\n if (_p.selectionType == null) {\n _p.selectionType = defaultSelectionType;\n }\n\n if (selType !== undefined) {\n if (selType === 'additive' || selType === 'single') {\n _p.selectionType = selType;\n }\n } else {\n return _p.selectionType;\n }\n\n return this;\n },\n panningEnabled: function panningEnabled(bool) {\n if (bool !== undefined) {\n this._private.panningEnabled = bool ? true : false;\n } else {\n return this._private.panningEnabled;\n }\n\n return this; // chaining\n },\n userPanningEnabled: function userPanningEnabled(bool) {\n if (bool !== undefined) {\n this._private.userPanningEnabled = bool ? true : false;\n } else {\n return this._private.userPanningEnabled;\n }\n\n return this; // chaining\n },\n zoomingEnabled: function zoomingEnabled(bool) {\n if (bool !== undefined) {\n this._private.zoomingEnabled = bool ? true : false;\n } else {\n return this._private.zoomingEnabled;\n }\n\n return this; // chaining\n },\n userZoomingEnabled: function userZoomingEnabled(bool) {\n if (bool !== undefined) {\n this._private.userZoomingEnabled = bool ? true : false;\n } else {\n return this._private.userZoomingEnabled;\n }\n\n return this; // chaining\n },\n boxSelectionEnabled: function boxSelectionEnabled(bool) {\n if (bool !== undefined) {\n this._private.boxSelectionEnabled = bool ? true : false;\n } else {\n return this._private.boxSelectionEnabled;\n }\n\n return this; // chaining\n },\n pan: function pan() {\n var args = arguments;\n var pan = this._private.pan;\n var dim, val, dims, x, y;\n\n switch (args.length) {\n case 0:\n // .pan()\n return pan;\n\n case 1:\n if (string(args[0])) {\n // .pan('x')\n dim = args[0];\n return pan[dim];\n } else if (plainObject(args[0])) {\n // .pan({ x: 0, y: 100 })\n if (!this._private.panningEnabled) {\n return this;\n }\n\n dims = args[0];\n x = dims.x;\n y = dims.y;\n\n if (number$1(x)) {\n pan.x = x;\n }\n\n if (number$1(y)) {\n pan.y = y;\n }\n\n this.emit('pan viewport');\n }\n\n break;\n\n case 2:\n // .pan('x', 100)\n if (!this._private.panningEnabled) {\n return this;\n }\n\n dim = args[0];\n val = args[1];\n\n if ((dim === 'x' || dim === 'y') && number$1(val)) {\n pan[dim] = val;\n }\n\n this.emit('pan viewport');\n break;\n // invalid\n }\n\n this.notify('viewport');\n return this; // chaining\n },\n panBy: function panBy(arg0, arg1) {\n var args = arguments;\n var pan = this._private.pan;\n var dim, val, dims, x, y;\n\n if (!this._private.panningEnabled) {\n return this;\n }\n\n switch (args.length) {\n case 1:\n if (plainObject(arg0)) {\n // .panBy({ x: 0, y: 100 })\n dims = args[0];\n x = dims.x;\n y = dims.y;\n\n if (number$1(x)) {\n pan.x += x;\n }\n\n if (number$1(y)) {\n pan.y += y;\n }\n\n this.emit('pan viewport');\n }\n\n break;\n\n case 2:\n // .panBy('x', 100)\n dim = arg0;\n val = arg1;\n\n if ((dim === 'x' || dim === 'y') && number$1(val)) {\n pan[dim] += val;\n }\n\n this.emit('pan viewport');\n break;\n // invalid\n }\n\n this.notify('viewport');\n return this; // chaining\n },\n fit: function fit(elements, padding) {\n var viewportState = this.getFitViewport(elements, padding);\n\n if (viewportState) {\n var _p = this._private;\n _p.zoom = viewportState.zoom;\n _p.pan = viewportState.pan;\n this.emit('pan zoom viewport');\n this.notify('viewport');\n }\n\n return this; // chaining\n },\n getFitViewport: function getFitViewport(elements, padding) {\n if (number$1(elements) && padding === undefined) {\n // elements is optional\n padding = elements;\n elements = undefined;\n }\n\n if (!this._private.panningEnabled || !this._private.zoomingEnabled) {\n return;\n }\n\n var bb;\n\n if (string(elements)) {\n var sel = elements;\n elements = this.$(sel);\n } else if (boundingBox(elements)) {\n // assume bb\n var bbe = elements;\n bb = {\n x1: bbe.x1,\n y1: bbe.y1,\n x2: bbe.x2,\n y2: bbe.y2\n };\n bb.w = bb.x2 - bb.x1;\n bb.h = bb.y2 - bb.y1;\n } else if (!elementOrCollection(elements)) {\n elements = this.mutableElements();\n }\n\n if (elementOrCollection(elements) && elements.empty()) {\n return;\n } // can't fit to nothing\n\n\n bb = bb || elements.boundingBox();\n var w = this.width();\n var h = this.height();\n var zoom;\n padding = number$1(padding) ? padding : 0;\n\n if (!isNaN(w) && !isNaN(h) && w > 0 && h > 0 && !isNaN(bb.w) && !isNaN(bb.h) && bb.w > 0 && bb.h > 0) {\n zoom = Math.min((w - 2 * padding) / bb.w, (h - 2 * padding) / bb.h); // crop zoom\n\n zoom = zoom > this._private.maxZoom ? this._private.maxZoom : zoom;\n zoom = zoom < this._private.minZoom ? this._private.minZoom : zoom;\n var pan = {\n // now pan to middle\n x: (w - zoom * (bb.x1 + bb.x2)) / 2,\n y: (h - zoom * (bb.y1 + bb.y2)) / 2\n };\n return {\n zoom: zoom,\n pan: pan\n };\n }\n\n return;\n },\n zoomRange: function zoomRange(min, max) {\n var _p = this._private;\n\n if (max == null) {\n var opts = min;\n min = opts.min;\n max = opts.max;\n }\n\n if (number$1(min) && number$1(max) && min <= max) {\n _p.minZoom = min;\n _p.maxZoom = max;\n } else if (number$1(min) && max === undefined && min <= _p.maxZoom) {\n _p.minZoom = min;\n } else if (number$1(max) && min === undefined && max >= _p.minZoom) {\n _p.maxZoom = max;\n }\n\n return this;\n },\n minZoom: function minZoom(zoom) {\n if (zoom === undefined) {\n return this._private.minZoom;\n } else {\n return this.zoomRange({\n min: zoom\n });\n }\n },\n maxZoom: function maxZoom(zoom) {\n if (zoom === undefined) {\n return this._private.maxZoom;\n } else {\n return this.zoomRange({\n max: zoom\n });\n }\n },\n getZoomedViewport: function getZoomedViewport(params) {\n var _p = this._private;\n var currentPan = _p.pan;\n var currentZoom = _p.zoom;\n var pos; // in rendered px\n\n var zoom;\n var bail = false;\n\n if (!_p.zoomingEnabled) {\n // zooming disabled\n bail = true;\n }\n\n if (number$1(params)) {\n // then set the zoom\n zoom = params;\n } else if (plainObject(params)) {\n // then zoom about a point\n zoom = params.level;\n\n if (params.position != null) {\n pos = modelToRenderedPosition(params.position, currentZoom, currentPan);\n } else if (params.renderedPosition != null) {\n pos = params.renderedPosition;\n }\n\n if (pos != null && !_p.panningEnabled) {\n // panning disabled\n bail = true;\n }\n } // crop zoom\n\n\n zoom = zoom > _p.maxZoom ? _p.maxZoom : zoom;\n zoom = zoom < _p.minZoom ? _p.minZoom : zoom; // can't zoom with invalid params\n\n if (bail || !number$1(zoom) || zoom === currentZoom || pos != null && (!number$1(pos.x) || !number$1(pos.y))) {\n return null;\n }\n\n if (pos != null) {\n // set zoom about position\n var pan1 = currentPan;\n var zoom1 = currentZoom;\n var zoom2 = zoom;\n var pan2 = {\n x: -zoom2 / zoom1 * (pos.x - pan1.x) + pos.x,\n y: -zoom2 / zoom1 * (pos.y - pan1.y) + pos.y\n };\n return {\n zoomed: true,\n panned: true,\n zoom: zoom2,\n pan: pan2\n };\n } else {\n // just set the zoom\n return {\n zoomed: true,\n panned: false,\n zoom: zoom,\n pan: currentPan\n };\n }\n },\n zoom: function zoom(params) {\n if (params === undefined) {\n // get\n return this._private.zoom;\n } else {\n // set\n var vp = this.getZoomedViewport(params);\n var _p = this._private;\n\n if (vp == null || !vp.zoomed) {\n return this;\n }\n\n _p.zoom = vp.zoom;\n\n if (vp.panned) {\n _p.pan.x = vp.pan.x;\n _p.pan.y = vp.pan.y;\n }\n\n this.emit('zoom' + (vp.panned ? ' pan' : '') + ' viewport');\n this.notify('viewport');\n return this; // chaining\n }\n },\n viewport: function viewport(opts) {\n var _p = this._private;\n var zoomDefd = true;\n var panDefd = true;\n var events = []; // to trigger\n\n var zoomFailed = false;\n var panFailed = false;\n\n if (!opts) {\n return this;\n }\n\n if (!number$1(opts.zoom)) {\n zoomDefd = false;\n }\n\n if (!plainObject(opts.pan)) {\n panDefd = false;\n }\n\n if (!zoomDefd && !panDefd) {\n return this;\n }\n\n if (zoomDefd) {\n var z = opts.zoom;\n\n if (z < _p.minZoom || z > _p.maxZoom || !_p.zoomingEnabled) {\n zoomFailed = true;\n } else {\n _p.zoom = z;\n events.push('zoom');\n }\n }\n\n if (panDefd && (!zoomFailed || !opts.cancelOnFailedZoom) && _p.panningEnabled) {\n var p = opts.pan;\n\n if (number$1(p.x)) {\n _p.pan.x = p.x;\n panFailed = false;\n }\n\n if (number$1(p.y)) {\n _p.pan.y = p.y;\n panFailed = false;\n }\n\n if (!panFailed) {\n events.push('pan');\n }\n }\n\n if (events.length > 0) {\n events.push('viewport');\n this.emit(events.join(' '));\n this.notify('viewport');\n }\n\n return this; // chaining\n },\n center: function center(elements) {\n var pan = this.getCenterPan(elements);\n\n if (pan) {\n this._private.pan = pan;\n this.emit('pan viewport');\n this.notify('viewport');\n }\n\n return this; // chaining\n },\n getCenterPan: function getCenterPan(elements, zoom) {\n if (!this._private.panningEnabled) {\n return;\n }\n\n if (string(elements)) {\n var selector = elements;\n elements = this.mutableElements().filter(selector);\n } else if (!elementOrCollection(elements)) {\n elements = this.mutableElements();\n }\n\n if (elements.length === 0) {\n return;\n } // can't centre pan to nothing\n\n\n var bb = elements.boundingBox();\n var w = this.width();\n var h = this.height();\n zoom = zoom === undefined ? this._private.zoom : zoom;\n var pan = {\n // middle\n x: (w - zoom * (bb.x1 + bb.x2)) / 2,\n y: (h - zoom * (bb.y1 + bb.y2)) / 2\n };\n return pan;\n },\n reset: function reset() {\n if (!this._private.panningEnabled || !this._private.zoomingEnabled) {\n return this;\n }\n\n this.viewport({\n pan: {\n x: 0,\n y: 0\n },\n zoom: 1\n });\n return this; // chaining\n },\n invalidateSize: function invalidateSize() {\n this._private.sizeCache = null;\n },\n size: function size() {\n var _p = this._private;\n var container = _p.container;\n return _p.sizeCache = _p.sizeCache || (container ? function () {\n var style = window$1.getComputedStyle(container);\n\n var val = function val(name) {\n return parseFloat(style.getPropertyValue(name));\n };\n\n return {\n width: container.clientWidth - val('padding-left') - val('padding-right'),\n height: container.clientHeight - val('padding-top') - val('padding-bottom')\n };\n }() : {\n // fallback if no container (not 0 b/c can be used for dividing etc)\n width: 1,\n height: 1\n });\n },\n width: function width() {\n return this.size().width;\n },\n height: function height() {\n return this.size().height;\n },\n extent: function extent() {\n var pan = this._private.pan;\n var zoom = this._private.zoom;\n var rb = this.renderedExtent();\n var b = {\n x1: (rb.x1 - pan.x) / zoom,\n x2: (rb.x2 - pan.x) / zoom,\n y1: (rb.y1 - pan.y) / zoom,\n y2: (rb.y2 - pan.y) / zoom\n };\n b.w = b.x2 - b.x1;\n b.h = b.y2 - b.y1;\n return b;\n },\n renderedExtent: function renderedExtent() {\n var width = this.width();\n var height = this.height();\n return {\n x1: 0,\n y1: 0,\n x2: width,\n y2: height,\n w: width,\n h: height\n };\n },\n multiClickDebounceTime: function multiClickDebounceTime(_int) {\n if (_int) this._private.multiClickDebounceTime = _int;else return this._private.multiClickDebounceTime;\n return this; // chaining\n }\n}; // aliases\n\ncorefn$1.centre = corefn$1.center; // backwards compatibility\n\ncorefn$1.autolockNodes = corefn$1.autolock;\ncorefn$1.autoungrabifyNodes = corefn$1.autoungrabify;\n\nvar fn = {\n data: define.data({\n field: 'data',\n bindingEvent: 'data',\n allowBinding: true,\n allowSetting: true,\n settingEvent: 'data',\n settingTriggersEvent: true,\n triggerFnName: 'trigger',\n allowGetting: true,\n updateStyle: true\n }),\n removeData: define.removeData({\n field: 'data',\n event: 'data',\n triggerFnName: 'trigger',\n triggerEvent: true,\n updateStyle: true\n }),\n scratch: define.data({\n field: 'scratch',\n bindingEvent: 'scratch',\n allowBinding: true,\n allowSetting: true,\n settingEvent: 'scratch',\n settingTriggersEvent: true,\n triggerFnName: 'trigger',\n allowGetting: true,\n updateStyle: true\n }),\n removeScratch: define.removeData({\n field: 'scratch',\n event: 'scratch',\n triggerFnName: 'trigger',\n triggerEvent: true,\n updateStyle: true\n })\n}; // aliases\n\nfn.attr = fn.data;\nfn.removeAttr = fn.removeData;\n\nvar Core = function Core(opts) {\n var cy = this;\n opts = extend({}, opts);\n var container = opts.container; // allow for passing a wrapped jquery object\n // e.g. cytoscape({ container: $('#cy') })\n\n if (container && !htmlElement(container) && htmlElement(container[0])) {\n container = container[0];\n }\n\n var reg = container ? container._cyreg : null; // e.g. already registered some info (e.g. readies) via jquery\n\n reg = reg || {};\n\n if (reg && reg.cy) {\n reg.cy.destroy();\n reg = {}; // old instance => replace reg completely\n }\n\n var readies = reg.readies = reg.readies || [];\n\n if (container) {\n container._cyreg = reg;\n } // make sure container assoc'd reg points to this cy\n\n\n reg.cy = cy;\n var head = window$1 !== undefined && container !== undefined && !opts.headless;\n var options = opts;\n options.layout = extend({\n name: head ? 'grid' : 'null'\n }, options.layout);\n options.renderer = extend({\n name: head ? 'canvas' : 'null'\n }, options.renderer);\n\n var defVal = function defVal(def, val, altVal) {\n if (val !== undefined) {\n return val;\n } else if (altVal !== undefined) {\n return altVal;\n } else {\n return def;\n }\n };\n\n var _p = this._private = {\n container: container,\n // html dom ele container\n ready: false,\n // whether ready has been triggered\n options: options,\n // cached options\n elements: new Collection(this),\n // elements in the graph\n listeners: [],\n // list of listeners\n aniEles: new Collection(this),\n // elements being animated\n data: options.data || {},\n // data for the core\n scratch: {},\n // scratch object for core\n layout: null,\n renderer: null,\n destroyed: false,\n // whether destroy was called\n notificationsEnabled: true,\n // whether notifications are sent to the renderer\n minZoom: 1e-50,\n maxZoom: 1e50,\n zoomingEnabled: defVal(true, options.zoomingEnabled),\n userZoomingEnabled: defVal(true, options.userZoomingEnabled),\n panningEnabled: defVal(true, options.panningEnabled),\n userPanningEnabled: defVal(true, options.userPanningEnabled),\n boxSelectionEnabled: defVal(true, options.boxSelectionEnabled),\n autolock: defVal(false, options.autolock, options.autolockNodes),\n autoungrabify: defVal(false, options.autoungrabify, options.autoungrabifyNodes),\n autounselectify: defVal(false, options.autounselectify),\n styleEnabled: options.styleEnabled === undefined ? head : options.styleEnabled,\n zoom: number$1(options.zoom) ? options.zoom : 1,\n pan: {\n x: plainObject(options.pan) && number$1(options.pan.x) ? options.pan.x : 0,\n y: plainObject(options.pan) && number$1(options.pan.y) ? options.pan.y : 0\n },\n animation: {\n // object for currently-running animations\n current: [],\n queue: []\n },\n hasCompoundNodes: false,\n multiClickDebounceTime: defVal(250, options.multiClickDebounceTime)\n };\n\n this.createEmitter(); // set selection type\n\n this.selectionType(options.selectionType); // init zoom bounds\n\n this.zoomRange({\n min: options.minZoom,\n max: options.maxZoom\n });\n\n var loadExtData = function loadExtData(extData, next) {\n var anyIsPromise = extData.some(promise);\n\n if (anyIsPromise) {\n return Promise$1.all(extData).then(next); // load all data asynchronously, then exec rest of init\n } else {\n next(extData); // exec synchronously for convenience\n }\n }; // start with the default stylesheet so we have something before loading an external stylesheet\n\n\n if (_p.styleEnabled) {\n cy.setStyle([]);\n } // create the renderer\n\n\n var rendererOptions = extend({}, options, options.renderer); // allow rendering hints in top level options\n\n cy.initRenderer(rendererOptions);\n\n var setElesAndLayout = function setElesAndLayout(elements, onload, ondone) {\n cy.notifications(false); // remove old elements\n\n var oldEles = cy.mutableElements();\n\n if (oldEles.length > 0) {\n oldEles.remove();\n }\n\n if (elements != null) {\n if (plainObject(elements) || array(elements)) {\n cy.add(elements);\n }\n }\n\n cy.one('layoutready', function (e) {\n cy.notifications(true);\n cy.emit(e); // we missed this event by turning notifications off, so pass it on\n\n cy.one('load', onload);\n cy.emitAndNotify('load');\n }).one('layoutstop', function () {\n cy.one('done', ondone);\n cy.emit('done');\n });\n var layoutOpts = extend({}, cy._private.options.layout);\n layoutOpts.eles = cy.elements();\n cy.layout(layoutOpts).run();\n };\n\n loadExtData([options.style, options.elements], function (thens) {\n var initStyle = thens[0];\n var initEles = thens[1]; // init style\n\n if (_p.styleEnabled) {\n cy.style().append(initStyle);\n } // initial load\n\n\n setElesAndLayout(initEles, function () {\n // onready\n cy.startAnimationLoop();\n _p.ready = true; // if a ready callback is specified as an option, the bind it\n\n if (fn$6(options.ready)) {\n cy.on('ready', options.ready);\n } // bind all the ready handlers registered before creating this instance\n\n\n for (var i = 0; i < readies.length; i++) {\n var fn = readies[i];\n cy.on('ready', fn);\n }\n\n if (reg) {\n reg.readies = [];\n } // clear b/c we've bound them all and don't want to keep it around in case a new core uses the same div etc\n\n\n cy.emit('ready');\n }, options.done);\n });\n};\n\nvar corefn = Core.prototype; // short alias\n\nextend(corefn, {\n instanceString: function instanceString() {\n return 'core';\n },\n isReady: function isReady() {\n return this._private.ready;\n },\n destroyed: function destroyed() {\n return this._private.destroyed;\n },\n ready: function ready(fn) {\n if (this.isReady()) {\n this.emitter().emit('ready', [], fn); // just calls fn as though triggered via ready event\n } else {\n this.on('ready', fn);\n }\n\n return this;\n },\n destroy: function destroy() {\n var cy = this;\n if (cy.destroyed()) return;\n cy.stopAnimationLoop();\n cy.destroyRenderer();\n this.emit('destroy');\n cy._private.destroyed = true;\n return cy;\n },\n hasElementWithId: function hasElementWithId(id) {\n return this._private.elements.hasElementWithId(id);\n },\n getElementById: function getElementById(id) {\n return this._private.elements.getElementById(id);\n },\n hasCompoundNodes: function hasCompoundNodes() {\n return this._private.hasCompoundNodes;\n },\n headless: function headless() {\n return this._private.renderer.isHeadless();\n },\n styleEnabled: function styleEnabled() {\n return this._private.styleEnabled;\n },\n addToPool: function addToPool(eles) {\n this._private.elements.merge(eles);\n\n return this; // chaining\n },\n removeFromPool: function removeFromPool(eles) {\n this._private.elements.unmerge(eles);\n\n return this;\n },\n container: function container() {\n return this._private.container || null;\n },\n mount: function mount(container) {\n if (container == null) {\n return;\n }\n\n var cy = this;\n var _p = cy._private;\n var options = _p.options;\n\n if (!htmlElement(container) && htmlElement(container[0])) {\n container = container[0];\n }\n\n cy.stopAnimationLoop();\n cy.destroyRenderer();\n _p.container = container;\n _p.styleEnabled = true;\n cy.invalidateSize();\n cy.initRenderer(extend({}, options, options.renderer, {\n // allow custom renderer name to be re-used, otherwise use canvas\n name: options.renderer.name === 'null' ? 'canvas' : options.renderer.name\n }));\n cy.startAnimationLoop();\n cy.style(options.style);\n cy.emit('mount');\n return cy;\n },\n unmount: function unmount() {\n var cy = this;\n cy.stopAnimationLoop();\n cy.destroyRenderer();\n cy.initRenderer({\n name: 'null'\n });\n cy.emit('unmount');\n return cy;\n },\n options: function options() {\n return copy(this._private.options);\n },\n json: function json(obj) {\n var cy = this;\n var _p = cy._private;\n var eles = cy.mutableElements();\n\n var getFreshRef = function getFreshRef(ele) {\n return cy.getElementById(ele.id());\n };\n\n if (plainObject(obj)) {\n // set\n cy.startBatch();\n\n if (obj.elements) {\n var idInJson = {};\n\n var updateEles = function updateEles(jsons, gr) {\n var toAdd = [];\n var toMod = [];\n\n for (var i = 0; i < jsons.length; i++) {\n var json = jsons[i];\n\n if (!json.data.id) {\n warn('cy.json() cannot handle elements without an ID attribute');\n continue;\n }\n\n var id = '' + json.data.id; // id must be string\n\n var ele = cy.getElementById(id);\n idInJson[id] = true;\n\n if (ele.length !== 0) {\n // existing element should be updated\n toMod.push({\n ele: ele,\n json: json\n });\n } else {\n // otherwise should be added\n if (gr) {\n json.group = gr;\n toAdd.push(json);\n } else {\n toAdd.push(json);\n }\n }\n }\n\n cy.add(toAdd);\n\n for (var _i = 0; _i < toMod.length; _i++) {\n var _toMod$_i = toMod[_i],\n _ele = _toMod$_i.ele,\n _json = _toMod$_i.json;\n\n _ele.json(_json);\n }\n };\n\n if (array(obj.elements)) {\n // elements: []\n updateEles(obj.elements);\n } else {\n // elements: { nodes: [], edges: [] }\n var grs = ['nodes', 'edges'];\n\n for (var i = 0; i < grs.length; i++) {\n var gr = grs[i];\n var elements = obj.elements[gr];\n\n if (array(elements)) {\n updateEles(elements, gr);\n }\n }\n }\n\n var parentsToRemove = cy.collection();\n eles.filter(function (ele) {\n return !idInJson[ele.id()];\n }).forEach(function (ele) {\n if (ele.isParent()) {\n parentsToRemove.merge(ele);\n } else {\n ele.remove();\n }\n }); // so that children are not removed w/parent\n\n parentsToRemove.forEach(function (ele) {\n return ele.children().move({\n parent: null\n });\n }); // intermediate parents may be moved by prior line, so make sure we remove by fresh refs\n\n parentsToRemove.forEach(function (ele) {\n return getFreshRef(ele).remove();\n });\n }\n\n if (obj.style) {\n cy.style(obj.style);\n }\n\n if (obj.zoom != null && obj.zoom !== _p.zoom) {\n cy.zoom(obj.zoom);\n }\n\n if (obj.pan) {\n if (obj.pan.x !== _p.pan.x || obj.pan.y !== _p.pan.y) {\n cy.pan(obj.pan);\n }\n }\n\n if (obj.data) {\n cy.data(obj.data);\n }\n\n var fields = ['minZoom', 'maxZoom', 'zoomingEnabled', 'userZoomingEnabled', 'panningEnabled', 'userPanningEnabled', 'boxSelectionEnabled', 'autolock', 'autoungrabify', 'autounselectify', 'multiClickDebounceTime'];\n\n for (var _i2 = 0; _i2 < fields.length; _i2++) {\n var f = fields[_i2];\n\n if (obj[f] != null) {\n cy[f](obj[f]);\n }\n }\n\n cy.endBatch();\n return this; // chaining\n } else {\n // get\n var flat = !!obj;\n var json = {};\n\n if (flat) {\n json.elements = this.elements().map(function (ele) {\n return ele.json();\n });\n } else {\n json.elements = {};\n eles.forEach(function (ele) {\n var group = ele.group();\n\n if (!json.elements[group]) {\n json.elements[group] = [];\n }\n\n json.elements[group].push(ele.json());\n });\n }\n\n if (this._private.styleEnabled) {\n json.style = cy.style().json();\n }\n\n json.data = copy(cy.data());\n var options = _p.options;\n json.zoomingEnabled = _p.zoomingEnabled;\n json.userZoomingEnabled = _p.userZoomingEnabled;\n json.zoom = _p.zoom;\n json.minZoom = _p.minZoom;\n json.maxZoom = _p.maxZoom;\n json.panningEnabled = _p.panningEnabled;\n json.userPanningEnabled = _p.userPanningEnabled;\n json.pan = copy(_p.pan);\n json.boxSelectionEnabled = _p.boxSelectionEnabled;\n json.renderer = copy(options.renderer);\n json.hideEdgesOnViewport = options.hideEdgesOnViewport;\n json.textureOnViewport = options.textureOnViewport;\n json.wheelSensitivity = options.wheelSensitivity;\n json.motionBlur = options.motionBlur;\n json.multiClickDebounceTime = options.multiClickDebounceTime;\n return json;\n }\n }\n});\ncorefn.$id = corefn.getElementById;\n[corefn$9, corefn$8, elesfn, corefn$7, corefn$6, corefn$5, corefn$4, corefn$3, corefn$2, corefn$1, fn].forEach(function (props) {\n extend(corefn, props);\n});\n\n/* eslint-disable no-unused-vars */\n\nvar defaults$7 = {\n fit: true,\n // whether to fit the viewport to the graph\n directed: false,\n // whether the tree is directed downwards (or edges can point in any direction if false)\n padding: 30,\n // padding on fit\n circle: false,\n // put depths in concentric circles if true, put depths top down if false\n grid: false,\n // whether to create an even grid into which the DAG is placed (circle:false only)\n spacingFactor: 1.75,\n // positive spacing factor, larger => more space between nodes (N.B. n/a if causes overlap)\n boundingBox: undefined,\n // constrain layout bounds; { x1, y1, x2, y2 } or { x1, y1, w, h }\n avoidOverlap: true,\n // prevents node overlap, may overflow boundingBox if not enough space\n nodeDimensionsIncludeLabels: false,\n // Excludes the label when calculating node bounding boxes for the layout algorithm\n roots: undefined,\n // the roots of the trees\n maximal: false,\n // whether to shift nodes down their natural BFS depths in order to avoid upwards edges (DAGS only)\n depthSort: undefined,\n // a sorting function to order nodes at equal depth. e.g. function(a, b){ return a.data('weight') - b.data('weight') }\n animate: false,\n // whether to transition the node positions\n animationDuration: 500,\n // duration of animation in ms if enabled\n animationEasing: undefined,\n // easing of animation if enabled,\n animateFilter: function animateFilter(node, i) {\n return true;\n },\n // a function that determines whether the node should be animated. All nodes animated by default on animate enabled. Non-animated nodes are positioned immediately when the layout starts\n ready: undefined,\n // callback on layoutready\n stop: undefined,\n // callback on layoutstop\n transform: function transform(node, position) {\n return position;\n } // transform a given node position. Useful for changing flow direction in discrete layouts\n\n};\n/* eslint-enable */\n\nvar getInfo = function getInfo(ele) {\n return ele.scratch('breadthfirst');\n};\n\nvar setInfo = function setInfo(ele, obj) {\n return ele.scratch('breadthfirst', obj);\n};\n\nfunction BreadthFirstLayout(options) {\n this.options = extend({}, defaults$7, options);\n}\n\nBreadthFirstLayout.prototype.run = function () {\n var params = this.options;\n var options = params;\n var cy = params.cy;\n var eles = options.eles;\n var nodes = eles.nodes().filter(function (n) {\n return !n.isParent();\n });\n var graph = eles;\n var directed = options.directed;\n var maximal = options.maximal || options.maximalAdjustments > 0; // maximalAdjustments for compat. w/ old code\n\n var bb = makeBoundingBox(options.boundingBox ? options.boundingBox : {\n x1: 0,\n y1: 0,\n w: cy.width(),\n h: cy.height()\n });\n var roots;\n\n if (elementOrCollection(options.roots)) {\n roots = options.roots;\n } else if (array(options.roots)) {\n var rootsArray = [];\n\n for (var i = 0; i < options.roots.length; i++) {\n var id = options.roots[i];\n var ele = cy.getElementById(id);\n rootsArray.push(ele);\n }\n\n roots = cy.collection(rootsArray);\n } else if (string(options.roots)) {\n roots = cy.$(options.roots);\n } else {\n if (directed) {\n roots = nodes.roots();\n } else {\n var components = eles.components();\n roots = cy.collection();\n\n var _loop = function _loop(_i) {\n var comp = components[_i];\n var maxDegree = comp.maxDegree(false);\n var compRoots = comp.filter(function (ele) {\n return ele.degree(false) === maxDegree;\n });\n roots = roots.add(compRoots);\n };\n\n for (var _i = 0; _i < components.length; _i++) {\n _loop(_i);\n }\n }\n }\n\n var depths = [];\n var foundByBfs = {};\n\n var addToDepth = function addToDepth(ele, d) {\n if (depths[d] == null) {\n depths[d] = [];\n }\n\n var i = depths[d].length;\n depths[d].push(ele);\n setInfo(ele, {\n index: i,\n depth: d\n });\n };\n\n var changeDepth = function changeDepth(ele, newDepth) {\n var _getInfo = getInfo(ele),\n depth = _getInfo.depth,\n index = _getInfo.index;\n\n depths[depth][index] = null;\n addToDepth(ele, newDepth);\n }; // find the depths of the nodes\n\n\n graph.bfs({\n roots: roots,\n directed: options.directed,\n visit: function visit(node, edge, pNode, i, depth) {\n var ele = node[0];\n var id = ele.id();\n addToDepth(ele, depth);\n foundByBfs[id] = true;\n }\n }); // check for nodes not found by bfs\n\n var orphanNodes = [];\n\n for (var _i2 = 0; _i2 < nodes.length; _i2++) {\n var _ele = nodes[_i2];\n\n if (foundByBfs[_ele.id()]) {\n continue;\n } else {\n orphanNodes.push(_ele);\n }\n } // assign the nodes a depth and index\n\n\n var assignDepthsAt = function assignDepthsAt(i) {\n var eles = depths[i];\n\n for (var j = 0; j < eles.length; j++) {\n var _ele2 = eles[j];\n\n if (_ele2 == null) {\n eles.splice(j, 1);\n j--;\n continue;\n }\n\n setInfo(_ele2, {\n depth: i,\n index: j\n });\n }\n };\n\n var assignDepths = function assignDepths() {\n for (var _i3 = 0; _i3 < depths.length; _i3++) {\n assignDepthsAt(_i3);\n }\n };\n\n var adjustMaximally = function adjustMaximally(ele, shifted) {\n var eInfo = getInfo(ele);\n var incomers = ele.incomers().filter(function (el) {\n return el.isNode() && eles.has(el);\n });\n var maxDepth = -1;\n var id = ele.id();\n\n for (var k = 0; k < incomers.length; k++) {\n var incmr = incomers[k];\n var iInfo = getInfo(incmr);\n maxDepth = Math.max(maxDepth, iInfo.depth);\n }\n\n if (eInfo.depth <= maxDepth) {\n if (shifted[id]) {\n return null;\n }\n\n changeDepth(ele, maxDepth + 1);\n shifted[id] = true;\n return true;\n }\n\n return false;\n }; // for the directed case, try to make the edges all go down (i.e. depth i => depth i + 1)\n\n\n if (directed && maximal) {\n var Q = [];\n var shifted = {};\n\n var enqueue = function enqueue(n) {\n return Q.push(n);\n };\n\n var dequeue = function dequeue() {\n return Q.shift();\n };\n\n nodes.forEach(function (n) {\n return Q.push(n);\n });\n\n while (Q.length > 0) {\n var _ele3 = dequeue();\n\n var didShift = adjustMaximally(_ele3, shifted);\n\n if (didShift) {\n _ele3.outgoers().filter(function (el) {\n return el.isNode() && eles.has(el);\n }).forEach(enqueue);\n } else if (didShift === null) {\n warn('Detected double maximal shift for node `' + _ele3.id() + '`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.');\n break; // exit on failure\n }\n }\n }\n\n assignDepths(); // clear holes\n // find min distance we need to leave between nodes\n\n var minDistance = 0;\n\n if (options.avoidOverlap) {\n for (var _i4 = 0; _i4 < nodes.length; _i4++) {\n var n = nodes[_i4];\n var nbb = n.layoutDimensions(options);\n var w = nbb.w;\n var h = nbb.h;\n minDistance = Math.max(minDistance, w, h);\n }\n } // get the weighted percent for an element based on its connectivity to other levels\n\n\n var cachedWeightedPercent = {};\n\n var getWeightedPercent = function getWeightedPercent(ele) {\n if (cachedWeightedPercent[ele.id()]) {\n return cachedWeightedPercent[ele.id()];\n }\n\n var eleDepth = getInfo(ele).depth;\n var neighbors = ele.neighborhood();\n var percent = 0;\n var samples = 0;\n\n for (var _i5 = 0; _i5 < neighbors.length; _i5++) {\n var neighbor = neighbors[_i5];\n\n if (neighbor.isEdge() || neighbor.isParent() || !nodes.has(neighbor)) {\n continue;\n }\n\n var bf = getInfo(neighbor);\n\n if (bf == null) {\n continue;\n }\n\n var index = bf.index;\n var depth = bf.depth; // unassigned neighbours shouldn't affect the ordering\n\n if (index == null || depth == null) {\n continue;\n }\n\n var nDepth = depths[depth].length;\n\n if (depth < eleDepth) {\n // only get influenced by elements above\n percent += index / nDepth;\n samples++;\n }\n }\n\n samples = Math.max(1, samples);\n percent = percent / samples;\n\n if (samples === 0) {\n // put lone nodes at the start\n percent = 0;\n }\n\n cachedWeightedPercent[ele.id()] = percent;\n return percent;\n }; // rearrange the indices in each depth level based on connectivity\n\n\n var sortFn = function sortFn(a, b) {\n var apct = getWeightedPercent(a);\n var bpct = getWeightedPercent(b);\n var diff = apct - bpct;\n\n if (diff === 0) {\n return ascending(a.id(), b.id()); // make sure sort doesn't have don't-care comparisons\n } else {\n return diff;\n }\n };\n\n if (options.depthSort !== undefined) {\n sortFn = options.depthSort;\n } // sort each level to make connected nodes closer\n\n\n for (var _i6 = 0; _i6 < depths.length; _i6++) {\n depths[_i6].sort(sortFn);\n\n assignDepthsAt(_i6);\n } // assign orphan nodes to a new top-level depth\n\n\n var orphanDepth = [];\n\n for (var _i7 = 0; _i7 < orphanNodes.length; _i7++) {\n orphanDepth.push(orphanNodes[_i7]);\n }\n\n depths.unshift(orphanDepth);\n assignDepths();\n var biggestDepthSize = 0;\n\n for (var _i8 = 0; _i8 < depths.length; _i8++) {\n biggestDepthSize = Math.max(depths[_i8].length, biggestDepthSize);\n }\n\n var center = {\n x: bb.x1 + bb.w / 2,\n y: bb.x1 + bb.h / 2\n };\n var maxDepthSize = depths.reduce(function (max, eles) {\n return Math.max(max, eles.length);\n }, 0);\n\n var getPosition = function getPosition(ele) {\n var _getInfo2 = getInfo(ele),\n depth = _getInfo2.depth,\n index = _getInfo2.index;\n\n var depthSize = depths[depth].length;\n var distanceX = Math.max(bb.w / ((options.grid ? maxDepthSize : depthSize) + 1), minDistance);\n var distanceY = Math.max(bb.h / (depths.length + 1), minDistance);\n var radiusStepSize = Math.min(bb.w / 2 / depths.length, bb.h / 2 / depths.length);\n radiusStepSize = Math.max(radiusStepSize, minDistance);\n\n if (!options.circle) {\n var epos = {\n x: center.x + (index + 1 - (depthSize + 1) / 2) * distanceX,\n y: (depth + 1) * distanceY\n };\n return epos;\n } else {\n var radius = radiusStepSize * depth + radiusStepSize - (depths.length > 0 && depths[0].length <= 3 ? radiusStepSize / 2 : 0);\n var theta = 2 * Math.PI / depths[depth].length * index;\n\n if (depth === 0 && depths[0].length === 1) {\n radius = 1;\n }\n\n return {\n x: center.x + radius * Math.cos(theta),\n y: center.y + radius * Math.sin(theta)\n };\n }\n };\n\n eles.nodes().layoutPositions(this, options, getPosition);\n return this; // chaining\n};\n\nvar defaults$6 = {\n fit: true,\n // whether to fit the viewport to the graph\n padding: 30,\n // the padding on fit\n boundingBox: undefined,\n // constrain layout bounds; { x1, y1, x2, y2 } or { x1, y1, w, h }\n avoidOverlap: true,\n // prevents node overlap, may overflow boundingBox and radius if not enough space\n nodeDimensionsIncludeLabels: false,\n // Excludes the label when calculating node bounding boxes for the layout algorithm\n spacingFactor: undefined,\n // Applies a multiplicative factor (>0) to expand or compress the overall area that the nodes take up\n radius: undefined,\n // the radius of the circle\n startAngle: 3 / 2 * Math.PI,\n // where nodes start in radians\n sweep: undefined,\n // how many radians should be between the first and last node (defaults to full circle)\n clockwise: true,\n // whether the layout should go clockwise (true) or counterclockwise/anticlockwise (false)\n sort: undefined,\n // a sorting function to order the nodes; e.g. function(a, b){ return a.data('weight') - b.data('weight') }\n animate: false,\n // whether to transition the node positions\n animationDuration: 500,\n // duration of animation in ms if enabled\n animationEasing: undefined,\n // easing of animation if enabled\n animateFilter: function animateFilter(node, i) {\n return true;\n },\n // a function that determines whether the node should be animated. All nodes animated by default on animate enabled. Non-animated nodes are positioned immediately when the layout starts\n ready: undefined,\n // callback on layoutready\n stop: undefined,\n // callback on layoutstop\n transform: function transform(node, position) {\n return position;\n } // transform a given node position. Useful for changing flow direction in discrete layouts \n\n};\n\nfunction CircleLayout(options) {\n this.options = extend({}, defaults$6, options);\n}\n\nCircleLayout.prototype.run = function () {\n var params = this.options;\n var options = params;\n var cy = params.cy;\n var eles = options.eles;\n var clockwise = options.counterclockwise !== undefined ? !options.counterclockwise : options.clockwise;\n var nodes = eles.nodes().not(':parent');\n\n if (options.sort) {\n nodes = nodes.sort(options.sort);\n }\n\n var bb = makeBoundingBox(options.boundingBox ? options.boundingBox : {\n x1: 0,\n y1: 0,\n w: cy.width(),\n h: cy.height()\n });\n var center = {\n x: bb.x1 + bb.w / 2,\n y: bb.y1 + bb.h / 2\n };\n var sweep = options.sweep === undefined ? 2 * Math.PI - 2 * Math.PI / nodes.length : options.sweep;\n var dTheta = sweep / Math.max(1, nodes.length - 1);\n var r;\n var minDistance = 0;\n\n for (var i = 0; i < nodes.length; i++) {\n var n = nodes[i];\n var nbb = n.layoutDimensions(options);\n var w = nbb.w;\n var h = nbb.h;\n minDistance = Math.max(minDistance, w, h);\n }\n\n if (number$1(options.radius)) {\n r = options.radius;\n } else if (nodes.length <= 1) {\n r = 0;\n } else {\n r = Math.min(bb.h, bb.w) / 2 - minDistance;\n } // calculate the radius\n\n\n if (nodes.length > 1 && options.avoidOverlap) {\n // but only if more than one node (can't overlap)\n minDistance *= 1.75; // just to have some nice spacing\n\n var dcos = Math.cos(dTheta) - Math.cos(0);\n var dsin = Math.sin(dTheta) - Math.sin(0);\n var rMin = Math.sqrt(minDistance * minDistance / (dcos * dcos + dsin * dsin)); // s.t. no nodes overlapping\n\n r = Math.max(rMin, r);\n }\n\n var getPos = function getPos(ele, i) {\n var theta = options.startAngle + i * dTheta * (clockwise ? 1 : -1);\n var rx = r * Math.cos(theta);\n var ry = r * Math.sin(theta);\n var pos = {\n x: center.x + rx,\n y: center.y + ry\n };\n return pos;\n };\n\n eles.nodes().layoutPositions(this, options, getPos);\n return this; // chaining\n};\n\nvar defaults$5 = {\n fit: true,\n // whether to fit the viewport to the graph\n padding: 30,\n // the padding on fit\n startAngle: 3 / 2 * Math.PI,\n // where nodes start in radians\n sweep: undefined,\n // how many radians should be between the first and last node (defaults to full circle)\n clockwise: true,\n // whether the layout should go clockwise (true) or counterclockwise/anticlockwise (false)\n equidistant: false,\n // whether levels have an equal radial distance betwen them, may cause bounding box overflow\n minNodeSpacing: 10,\n // min spacing between outside of nodes (used for radius adjustment)\n boundingBox: undefined,\n // constrain layout bounds; { x1, y1, x2, y2 } or { x1, y1, w, h }\n avoidOverlap: true,\n // prevents node overlap, may overflow boundingBox if not enough space\n nodeDimensionsIncludeLabels: false,\n // Excludes the label when calculating node bounding boxes for the layout algorithm\n height: undefined,\n // height of layout area (overrides container height)\n width: undefined,\n // width of layout area (overrides container width)\n spacingFactor: undefined,\n // Applies a multiplicative factor (>0) to expand or compress the overall area that the nodes take up\n concentric: function concentric(node) {\n // returns numeric value for each node, placing higher nodes in levels towards the centre\n return node.degree();\n },\n levelWidth: function levelWidth(nodes) {\n // the variation of concentric values in each level\n return nodes.maxDegree() / 4;\n },\n animate: false,\n // whether to transition the node positions\n animationDuration: 500,\n // duration of animation in ms if enabled\n animationEasing: undefined,\n // easing of animation if enabled\n animateFilter: function animateFilter(node, i) {\n return true;\n },\n // a function that determines whether the node should be animated. All nodes animated by default on animate enabled. Non-animated nodes are positioned immediately when the layout starts\n ready: undefined,\n // callback on layoutready\n stop: undefined,\n // callback on layoutstop\n transform: function transform(node, position) {\n return position;\n } // transform a given node position. Useful for changing flow direction in discrete layouts\n\n};\n\nfunction ConcentricLayout(options) {\n this.options = extend({}, defaults$5, options);\n}\n\nConcentricLayout.prototype.run = function () {\n var params = this.options;\n var options = params;\n var clockwise = options.counterclockwise !== undefined ? !options.counterclockwise : options.clockwise;\n var cy = params.cy;\n var eles = options.eles;\n var nodes = eles.nodes().not(':parent');\n var bb = makeBoundingBox(options.boundingBox ? options.boundingBox : {\n x1: 0,\n y1: 0,\n w: cy.width(),\n h: cy.height()\n });\n var center = {\n x: bb.x1 + bb.w / 2,\n y: bb.y1 + bb.h / 2\n };\n var nodeValues = []; // { node, value }\n\n var maxNodeSize = 0;\n\n for (var i = 0; i < nodes.length; i++) {\n var node = nodes[i];\n var value = void 0; // calculate the node value\n\n value = options.concentric(node);\n nodeValues.push({\n value: value,\n node: node\n }); // for style mapping\n\n node._private.scratch.concentric = value;\n } // in case we used the `concentric` in style\n\n\n nodes.updateStyle(); // calculate max size now based on potentially updated mappers\n\n for (var _i = 0; _i < nodes.length; _i++) {\n var _node = nodes[_i];\n\n var nbb = _node.layoutDimensions(options);\n\n maxNodeSize = Math.max(maxNodeSize, nbb.w, nbb.h);\n } // sort node values in descreasing order\n\n\n nodeValues.sort(function (a, b) {\n return b.value - a.value;\n });\n var levelWidth = options.levelWidth(nodes); // put the values into levels\n\n var levels = [[]];\n var currentLevel = levels[0];\n\n for (var _i2 = 0; _i2 < nodeValues.length; _i2++) {\n var val = nodeValues[_i2];\n\n if (currentLevel.length > 0) {\n var diff = Math.abs(currentLevel[0].value - val.value);\n\n if (diff >= levelWidth) {\n currentLevel = [];\n levels.push(currentLevel);\n }\n }\n\n currentLevel.push(val);\n } // create positions from levels\n\n\n var minDist = maxNodeSize + options.minNodeSpacing; // min dist between nodes\n\n if (!options.avoidOverlap) {\n // then strictly constrain to bb\n var firstLvlHasMulti = levels.length > 0 && levels[0].length > 1;\n var maxR = Math.min(bb.w, bb.h) / 2 - minDist;\n var rStep = maxR / (levels.length + firstLvlHasMulti ? 1 : 0);\n minDist = Math.min(minDist, rStep);\n } // find the metrics for each level\n\n\n var r = 0;\n\n for (var _i3 = 0; _i3 < levels.length; _i3++) {\n var level = levels[_i3];\n var sweep = options.sweep === undefined ? 2 * Math.PI - 2 * Math.PI / level.length : options.sweep;\n var dTheta = level.dTheta = sweep / Math.max(1, level.length - 1); // calculate the radius\n\n if (level.length > 1 && options.avoidOverlap) {\n // but only if more than one node (can't overlap)\n var dcos = Math.cos(dTheta) - Math.cos(0);\n var dsin = Math.sin(dTheta) - Math.sin(0);\n var rMin = Math.sqrt(minDist * minDist / (dcos * dcos + dsin * dsin)); // s.t. no nodes overlapping\n\n r = Math.max(rMin, r);\n }\n\n level.r = r;\n r += minDist;\n }\n\n if (options.equidistant) {\n var rDeltaMax = 0;\n var _r = 0;\n\n for (var _i4 = 0; _i4 < levels.length; _i4++) {\n var _level = levels[_i4];\n var rDelta = _level.r - _r;\n rDeltaMax = Math.max(rDeltaMax, rDelta);\n }\n\n _r = 0;\n\n for (var _i5 = 0; _i5 < levels.length; _i5++) {\n var _level2 = levels[_i5];\n\n if (_i5 === 0) {\n _r = _level2.r;\n }\n\n _level2.r = _r;\n _r += rDeltaMax;\n }\n } // calculate the node positions\n\n\n var pos = {}; // id => position\n\n for (var _i6 = 0; _i6 < levels.length; _i6++) {\n var _level3 = levels[_i6];\n var _dTheta = _level3.dTheta;\n var _r2 = _level3.r;\n\n for (var j = 0; j < _level3.length; j++) {\n var _val = _level3[j];\n var theta = options.startAngle + (clockwise ? 1 : -1) * _dTheta * j;\n var p = {\n x: center.x + _r2 * Math.cos(theta),\n y: center.y + _r2 * Math.sin(theta)\n };\n pos[_val.node.id()] = p;\n }\n } // position the nodes\n\n\n eles.nodes().layoutPositions(this, options, function (ele) {\n var id = ele.id();\n return pos[id];\n });\n return this; // chaining\n};\n\n/*\nThe CoSE layout was written by Gerardo Huck.\nhttps://www.linkedin.com/in/gerardohuck/\n\nBased on the following article:\nhttp://dl.acm.org/citation.cfm?id=1498047\n\nModifications tracked on Github.\n*/\nvar DEBUG;\n/**\n * @brief : default layout options\n */\n\nvar defaults$4 = {\n // Called on `layoutready`\n ready: function ready() {},\n // Called on `layoutstop`\n stop: function stop() {},\n // Whether to animate while running the layout\n // true : Animate continuously as the layout is running\n // false : Just show the end result\n // 'end' : Animate with the end result, from the initial positions to the end positions\n animate: true,\n // Easing of the animation for animate:'end'\n animationEasing: undefined,\n // The duration of the animation for animate:'end'\n animationDuration: undefined,\n // A function that determines whether the node should be animated\n // All nodes animated by default on animate enabled\n // Non-animated nodes are positioned immediately when the layout starts\n animateFilter: function animateFilter(node, i) {\n return true;\n },\n // The layout animates only after this many milliseconds for animate:true\n // (prevents flashing on fast runs)\n animationThreshold: 250,\n // Number of iterations between consecutive screen positions update\n refresh: 20,\n // Whether to fit the network view after when done\n fit: true,\n // Padding on fit\n padding: 30,\n // Constrain layout bounds; { x1, y1, x2, y2 } or { x1, y1, w, h }\n boundingBox: undefined,\n // Excludes the label when calculating node bounding boxes for the layout algorithm\n nodeDimensionsIncludeLabels: false,\n // Randomize the initial positions of the nodes (true) or use existing positions (false)\n randomize: false,\n // Extra spacing between components in non-compound graphs\n componentSpacing: 40,\n // Node repulsion (non overlapping) multiplier\n nodeRepulsion: function nodeRepulsion(node) {\n return 2048;\n },\n // Node repulsion (overlapping) multiplier\n nodeOverlap: 4,\n // Ideal edge (non nested) length\n idealEdgeLength: function idealEdgeLength(edge) {\n return 32;\n },\n // Divisor to compute edge forces\n edgeElasticity: function edgeElasticity(edge) {\n return 32;\n },\n // Nesting factor (multiplier) to compute ideal edge length for nested edges\n nestingFactor: 1.2,\n // Gravity force (constant)\n gravity: 1,\n // Maximum number of iterations to perform\n numIter: 1000,\n // Initial temperature (maximum node displacement)\n initialTemp: 1000,\n // Cooling factor (how the temperature is reduced between consecutive iterations\n coolingFactor: 0.99,\n // Lower temperature threshold (below this point the layout will end)\n minTemp: 1.0\n};\n/**\n * @brief : constructor\n * @arg options : object containing layout options\n */\n\nfunction CoseLayout(options) {\n this.options = extend({}, defaults$4, options);\n this.options.layout = this;\n}\n/**\n * @brief : runs the layout\n */\n\n\nCoseLayout.prototype.run = function () {\n var options = this.options;\n var cy = options.cy;\n var layout = this;\n layout.stopped = false;\n\n if (options.animate === true || options.animate === false) {\n layout.emit({\n type: 'layoutstart',\n layout: layout\n });\n } // Set DEBUG - Global variable\n\n\n if (true === options.debug) {\n DEBUG = true;\n } else {\n DEBUG = false;\n } // Initialize layout info\n\n\n var layoutInfo = createLayoutInfo(cy, layout, options); // Show LayoutInfo contents if debugging\n\n if (DEBUG) {\n printLayoutInfo(layoutInfo);\n } // If required, randomize node positions\n\n\n if (options.randomize) {\n randomizePositions(layoutInfo);\n }\n\n var startTime = performanceNow();\n\n var refresh = function refresh() {\n refreshPositions(layoutInfo, cy, options); // Fit the graph if necessary\n\n if (true === options.fit) {\n cy.fit(options.padding);\n }\n };\n\n var mainLoop = function mainLoop(i) {\n if (layout.stopped || i >= options.numIter) {\n // logDebug(\"Layout manually stopped. Stopping computation in step \" + i);\n return false;\n } // Do one step in the phisical simulation\n\n\n step(layoutInfo, options); // Update temperature\n\n layoutInfo.temperature = layoutInfo.temperature * options.coolingFactor; // logDebug(\"New temperature: \" + layoutInfo.temperature);\n\n if (layoutInfo.temperature < options.minTemp) {\n // logDebug(\"Temperature drop below minimum threshold. Stopping computation in step \" + i);\n return false;\n }\n\n return true;\n };\n\n var done = function done() {\n if (options.animate === true || options.animate === false) {\n refresh(); // Layout has finished\n\n layout.one('layoutstop', options.stop);\n layout.emit({\n type: 'layoutstop',\n layout: layout\n });\n } else {\n var nodes = options.eles.nodes();\n var getScaledPos = getScaleInBoundsFn(layoutInfo, options, nodes);\n nodes.layoutPositions(layout, options, getScaledPos);\n }\n };\n\n var i = 0;\n var loopRet = true;\n\n if (options.animate === true) {\n var frame = function frame() {\n var f = 0;\n\n while (loopRet && f < options.refresh) {\n loopRet = mainLoop(i);\n i++;\n f++;\n }\n\n if (!loopRet) {\n // it's done\n separateComponents(layoutInfo, options);\n done();\n } else {\n var now = performanceNow();\n\n if (now - startTime >= options.animationThreshold) {\n refresh();\n }\n\n requestAnimationFrame(frame);\n }\n };\n\n frame();\n } else {\n while (loopRet) {\n loopRet = mainLoop(i);\n i++;\n }\n\n separateComponents(layoutInfo, options);\n done();\n }\n\n return this; // chaining\n};\n/**\n * @brief : called on continuous layouts to stop them before they finish\n */\n\n\nCoseLayout.prototype.stop = function () {\n this.stopped = true;\n\n if (this.thread) {\n this.thread.stop();\n }\n\n this.emit('layoutstop');\n return this; // chaining\n};\n\nCoseLayout.prototype.destroy = function () {\n if (this.thread) {\n this.thread.stop();\n }\n\n return this; // chaining\n};\n/**\n * @brief : Creates an object which is contains all the data\n * used in the layout process\n * @arg cy : cytoscape.js object\n * @return : layoutInfo object initialized\n */\n\n\nvar createLayoutInfo = function createLayoutInfo(cy, layout, options) {\n // Shortcut\n var edges = options.eles.edges();\n var nodes = options.eles.nodes();\n var layoutInfo = {\n isCompound: cy.hasCompoundNodes(),\n layoutNodes: [],\n idToIndex: {},\n nodeSize: nodes.size(),\n graphSet: [],\n indexToGraph: [],\n layoutEdges: [],\n edgeSize: edges.size(),\n temperature: options.initialTemp,\n clientWidth: cy.width(),\n clientHeight: cy.width(),\n boundingBox: makeBoundingBox(options.boundingBox ? options.boundingBox : {\n x1: 0,\n y1: 0,\n w: cy.width(),\n h: cy.height()\n })\n };\n var components = options.eles.components();\n var id2cmptId = {};\n\n for (var i = 0; i < components.length; i++) {\n var component = components[i];\n\n for (var j = 0; j < component.length; j++) {\n var node = component[j];\n id2cmptId[node.id()] = i;\n }\n } // Iterate over all nodes, creating layout nodes\n\n\n for (var i = 0; i < layoutInfo.nodeSize; i++) {\n var n = nodes[i];\n var nbb = n.layoutDimensions(options);\n var tempNode = {};\n tempNode.isLocked = n.locked();\n tempNode.id = n.data('id');\n tempNode.parentId = n.data('parent');\n tempNode.cmptId = id2cmptId[n.id()];\n tempNode.children = [];\n tempNode.positionX = n.position('x');\n tempNode.positionY = n.position('y');\n tempNode.offsetX = 0;\n tempNode.offsetY = 0;\n tempNode.height = nbb.w;\n tempNode.width = nbb.h;\n tempNode.maxX = tempNode.positionX + tempNode.width / 2;\n tempNode.minX = tempNode.positionX - tempNode.width / 2;\n tempNode.maxY = tempNode.positionY + tempNode.height / 2;\n tempNode.minY = tempNode.positionY - tempNode.height / 2;\n tempNode.padLeft = parseFloat(n.style('padding'));\n tempNode.padRight = parseFloat(n.style('padding'));\n tempNode.padTop = parseFloat(n.style('padding'));\n tempNode.padBottom = parseFloat(n.style('padding')); // forces\n\n tempNode.nodeRepulsion = fn$6(options.nodeRepulsion) ? options.nodeRepulsion(n) : options.nodeRepulsion; // Add new node\n\n layoutInfo.layoutNodes.push(tempNode); // Add entry to id-index map\n\n layoutInfo.idToIndex[tempNode.id] = i;\n } // Inline implementation of a queue, used for traversing the graph in BFS order\n\n\n var queue = [];\n var start = 0; // Points to the start the queue\n\n var end = -1; // Points to the end of the queue\n\n var tempGraph = []; // Second pass to add child information and\n // initialize queue for hierarchical traversal\n\n for (var i = 0; i < layoutInfo.nodeSize; i++) {\n var n = layoutInfo.layoutNodes[i];\n var p_id = n.parentId; // Check if node n has a parent node\n\n if (null != p_id) {\n // Add node Id to parent's list of children\n layoutInfo.layoutNodes[layoutInfo.idToIndex[p_id]].children.push(n.id);\n } else {\n // If a node doesn't have a parent, then it's in the root graph\n queue[++end] = n.id;\n tempGraph.push(n.id);\n }\n } // Add root graph to graphSet\n\n\n layoutInfo.graphSet.push(tempGraph); // Traverse the graph, level by level,\n\n while (start <= end) {\n // Get the node to visit and remove it from queue\n var node_id = queue[start++];\n var node_ix = layoutInfo.idToIndex[node_id];\n var node = layoutInfo.layoutNodes[node_ix];\n var children = node.children;\n\n if (children.length > 0) {\n // Add children nodes as a new graph to graph set\n layoutInfo.graphSet.push(children); // Add children to que queue to be visited\n\n for (var i = 0; i < children.length; i++) {\n queue[++end] = children[i];\n }\n }\n } // Create indexToGraph map\n\n\n for (var i = 0; i < layoutInfo.graphSet.length; i++) {\n var graph = layoutInfo.graphSet[i];\n\n for (var j = 0; j < graph.length; j++) {\n var index = layoutInfo.idToIndex[graph[j]];\n layoutInfo.indexToGraph[index] = i;\n }\n } // Iterate over all edges, creating Layout Edges\n\n\n for (var i = 0; i < layoutInfo.edgeSize; i++) {\n var e = edges[i];\n var tempEdge = {};\n tempEdge.id = e.data('id');\n tempEdge.sourceId = e.data('source');\n tempEdge.targetId = e.data('target'); // Compute ideal length\n\n var idealLength = fn$6(options.idealEdgeLength) ? options.idealEdgeLength(e) : options.idealEdgeLength;\n var elasticity = fn$6(options.edgeElasticity) ? options.edgeElasticity(e) : options.edgeElasticity; // Check if it's an inter graph edge\n\n var sourceIx = layoutInfo.idToIndex[tempEdge.sourceId];\n var targetIx = layoutInfo.idToIndex[tempEdge.targetId];\n var sourceGraph = layoutInfo.indexToGraph[sourceIx];\n var targetGraph = layoutInfo.indexToGraph[targetIx];\n\n if (sourceGraph != targetGraph) {\n // Find lowest common graph ancestor\n var lca = findLCA(tempEdge.sourceId, tempEdge.targetId, layoutInfo); // Compute sum of node depths, relative to lca graph\n\n var lcaGraph = layoutInfo.graphSet[lca];\n var depth = 0; // Source depth\n\n var tempNode = layoutInfo.layoutNodes[sourceIx];\n\n while (-1 === lcaGraph.indexOf(tempNode.id)) {\n tempNode = layoutInfo.layoutNodes[layoutInfo.idToIndex[tempNode.parentId]];\n depth++;\n } // Target depth\n\n\n tempNode = layoutInfo.layoutNodes[targetIx];\n\n while (-1 === lcaGraph.indexOf(tempNode.id)) {\n tempNode = layoutInfo.layoutNodes[layoutInfo.idToIndex[tempNode.parentId]];\n depth++;\n } // logDebug('LCA of nodes ' + tempEdge.sourceId + ' and ' + tempEdge.targetId +\n // \". Index: \" + lca + \" Contents: \" + lcaGraph.toString() +\n // \". Depth: \" + depth);\n // Update idealLength\n\n\n idealLength *= depth * options.nestingFactor;\n }\n\n tempEdge.idealLength = idealLength;\n tempEdge.elasticity = elasticity;\n layoutInfo.layoutEdges.push(tempEdge);\n } // Finally, return layoutInfo object\n\n\n return layoutInfo;\n};\n/**\n * @brief : This function finds the index of the lowest common\n * graph ancestor between 2 nodes in the subtree\n * (from the graph hierarchy induced tree) whose\n * root is graphIx\n *\n * @arg node1: node1's ID\n * @arg node2: node2's ID\n * @arg layoutInfo: layoutInfo object\n *\n */\n\n\nvar findLCA = function findLCA(node1, node2, layoutInfo) {\n // Find their common ancester, starting from the root graph\n var res = findLCA_aux(node1, node2, 0, layoutInfo);\n\n if (2 > res.count) {\n // If aux function couldn't find the common ancester,\n // then it is the root graph\n return 0;\n } else {\n return res.graph;\n }\n};\n/**\n * @brief : Auxiliary function used for LCA computation\n *\n * @arg node1 : node1's ID\n * @arg node2 : node2's ID\n * @arg graphIx : subgraph index\n * @arg layoutInfo : layoutInfo object\n *\n * @return : object of the form {count: X, graph: Y}, where:\n * X is the number of ancesters (max: 2) found in\n * graphIx (and it's subgraphs),\n * Y is the graph index of the lowest graph containing\n * all X nodes\n */\n\n\nvar findLCA_aux = function findLCA_aux(node1, node2, graphIx, layoutInfo) {\n var graph = layoutInfo.graphSet[graphIx]; // If both nodes belongs to graphIx\n\n if (-1 < graph.indexOf(node1) && -1 < graph.indexOf(node2)) {\n return {\n count: 2,\n graph: graphIx\n };\n } // Make recursive calls for all subgraphs\n\n\n var c = 0;\n\n for (var i = 0; i < graph.length; i++) {\n var nodeId = graph[i];\n var nodeIx = layoutInfo.idToIndex[nodeId];\n var children = layoutInfo.layoutNodes[nodeIx].children; // If the node has no child, skip it\n\n if (0 === children.length) {\n continue;\n }\n\n var childGraphIx = layoutInfo.indexToGraph[layoutInfo.idToIndex[children[0]]];\n var result = findLCA_aux(node1, node2, childGraphIx, layoutInfo);\n\n if (0 === result.count) {\n // Neither node1 nor node2 are present in this subgraph\n continue;\n } else if (1 === result.count) {\n // One of (node1, node2) is present in this subgraph\n c++;\n\n if (2 === c) {\n // We've already found both nodes, no need to keep searching\n break;\n }\n } else {\n // Both nodes are present in this subgraph\n return result;\n }\n }\n\n return {\n count: c,\n graph: graphIx\n };\n};\n/**\n * @brief: printsLayoutInfo into js console\n * Only used for debbuging\n */\n\n\nvar printLayoutInfo; \n/**\n * @brief : Randomizes the position of all nodes\n */\n\n\nvar randomizePositions = function randomizePositions(layoutInfo, cy) {\n var width = layoutInfo.clientWidth;\n var height = layoutInfo.clientHeight;\n\n for (var i = 0; i < layoutInfo.nodeSize; i++) {\n var n = layoutInfo.layoutNodes[i]; // No need to randomize compound nodes or locked nodes\n\n if (0 === n.children.length && !n.isLocked) {\n n.positionX = Math.random() * width;\n n.positionY = Math.random() * height;\n }\n }\n};\n\nvar getScaleInBoundsFn = function getScaleInBoundsFn(layoutInfo, options, nodes) {\n var bb = layoutInfo.boundingBox;\n var coseBB = {\n x1: Infinity,\n x2: -Infinity,\n y1: Infinity,\n y2: -Infinity\n };\n\n if (options.boundingBox) {\n nodes.forEach(function (node) {\n var lnode = layoutInfo.layoutNodes[layoutInfo.idToIndex[node.data('id')]];\n coseBB.x1 = Math.min(coseBB.x1, lnode.positionX);\n coseBB.x2 = Math.max(coseBB.x2, lnode.positionX);\n coseBB.y1 = Math.min(coseBB.y1, lnode.positionY);\n coseBB.y2 = Math.max(coseBB.y2, lnode.positionY);\n });\n coseBB.w = coseBB.x2 - coseBB.x1;\n coseBB.h = coseBB.y2 - coseBB.y1;\n }\n\n return function (ele, i) {\n var lnode = layoutInfo.layoutNodes[layoutInfo.idToIndex[ele.data('id')]];\n\n if (options.boundingBox) {\n // then add extra bounding box constraint\n var pctX = (lnode.positionX - coseBB.x1) / coseBB.w;\n var pctY = (lnode.positionY - coseBB.y1) / coseBB.h;\n return {\n x: bb.x1 + pctX * bb.w,\n y: bb.y1 + pctY * bb.h\n };\n } else {\n return {\n x: lnode.positionX,\n y: lnode.positionY\n };\n }\n };\n};\n/**\n * @brief : Updates the positions of nodes in the network\n * @arg layoutInfo : LayoutInfo object\n * @arg cy : Cytoscape object\n * @arg options : Layout options\n */\n\n\nvar refreshPositions = function refreshPositions(layoutInfo, cy, options) {\n // var s = 'Refreshing positions';\n // logDebug(s);\n var layout = options.layout;\n var nodes = options.eles.nodes();\n var getScaledPos = getScaleInBoundsFn(layoutInfo, options, nodes);\n nodes.positions(getScaledPos); // Trigger layoutReady only on first call\n\n if (true !== layoutInfo.ready) {\n // s = 'Triggering layoutready';\n // logDebug(s);\n layoutInfo.ready = true;\n layout.one('layoutready', options.ready);\n layout.emit({\n type: 'layoutready',\n layout: this\n });\n }\n};\n/**\n * @brief : Logs a debug message in JS console, if DEBUG is ON\n */\n// var logDebug = function(text) {\n// if (DEBUG) {\n// console.debug(text);\n// }\n// };\n\n/**\n * @brief : Performs one iteration of the physical simulation\n * @arg layoutInfo : LayoutInfo object already initialized\n * @arg cy : Cytoscape object\n * @arg options : Layout options\n */\n\n\nvar step = function step(layoutInfo, options, _step) {\n // var s = \"\\n\\n###############################\";\n // s += \"\\nSTEP: \" + step;\n // s += \"\\n###############################\\n\";\n // logDebug(s);\n // Calculate node repulsions\n calculateNodeForces(layoutInfo, options); // Calculate edge forces\n\n calculateEdgeForces(layoutInfo); // Calculate gravity forces\n\n calculateGravityForces(layoutInfo, options); // Propagate forces from parent to child\n\n propagateForces(layoutInfo); // Update positions based on calculated forces\n\n updatePositions(layoutInfo);\n};\n/**\n * @brief : Computes the node repulsion forces\n */\n\n\nvar calculateNodeForces = function calculateNodeForces(layoutInfo, options) {\n // Go through each of the graphs in graphSet\n // Nodes only repel each other if they belong to the same graph\n // var s = 'calculateNodeForces';\n // logDebug(s);\n for (var i = 0; i < layoutInfo.graphSet.length; i++) {\n var graph = layoutInfo.graphSet[i];\n var numNodes = graph.length; // s = \"Set: \" + graph.toString();\n // logDebug(s);\n // Now get all the pairs of nodes\n // Only get each pair once, (A, B) = (B, A)\n\n for (var j = 0; j < numNodes; j++) {\n var node1 = layoutInfo.layoutNodes[layoutInfo.idToIndex[graph[j]]];\n\n for (var k = j + 1; k < numNodes; k++) {\n var node2 = layoutInfo.layoutNodes[layoutInfo.idToIndex[graph[k]]];\n nodeRepulsion(node1, node2, layoutInfo, options);\n }\n }\n }\n};\n\nvar randomDistance = function randomDistance(max) {\n return -max + 2 * max * Math.random();\n};\n/**\n * @brief : Compute the node repulsion forces between a pair of nodes\n */\n\n\nvar nodeRepulsion = function nodeRepulsion(node1, node2, layoutInfo, options) {\n // var s = \"Node repulsion. Node1: \" + node1.id + \" Node2: \" + node2.id;\n var cmptId1 = node1.cmptId;\n var cmptId2 = node2.cmptId;\n\n if (cmptId1 !== cmptId2 && !layoutInfo.isCompound) {\n return;\n } // Get direction of line connecting both node centers\n\n\n var directionX = node2.positionX - node1.positionX;\n var directionY = node2.positionY - node1.positionY;\n var maxRandDist = 1; // s += \"\\ndirectionX: \" + directionX + \", directionY: \" + directionY;\n // If both centers are the same, apply a random force\n\n if (0 === directionX && 0 === directionY) {\n directionX = randomDistance(maxRandDist);\n directionY = randomDistance(maxRandDist);\n }\n\n var overlap = nodesOverlap(node1, node2, directionX, directionY);\n\n if (overlap > 0) {\n // s += \"\\nNodes DO overlap.\";\n // s += \"\\nOverlap: \" + overlap;\n // If nodes overlap, repulsion force is proportional\n // to the overlap\n var force = options.nodeOverlap * overlap; // Compute the module and components of the force vector\n\n var distance = Math.sqrt(directionX * directionX + directionY * directionY); // s += \"\\nDistance: \" + distance;\n\n var forceX = force * directionX / distance;\n var forceY = force * directionY / distance;\n } else {\n // s += \"\\nNodes do NOT overlap.\";\n // If there's no overlap, force is inversely proportional\n // to squared distance\n // Get clipping points for both nodes\n var point1 = findClippingPoint(node1, directionX, directionY);\n var point2 = findClippingPoint(node2, -1 * directionX, -1 * directionY); // Use clipping points to compute distance\n\n var distanceX = point2.x - point1.x;\n var distanceY = point2.y - point1.y;\n var distanceSqr = distanceX * distanceX + distanceY * distanceY;\n var distance = Math.sqrt(distanceSqr); // s += \"\\nDistance: \" + distance;\n // Compute the module and components of the force vector\n\n var force = (node1.nodeRepulsion + node2.nodeRepulsion) / distanceSqr;\n var forceX = force * distanceX / distance;\n var forceY = force * distanceY / distance;\n } // Apply force\n\n\n if (!node1.isLocked) {\n node1.offsetX -= forceX;\n node1.offsetY -= forceY;\n }\n\n if (!node2.isLocked) {\n node2.offsetX += forceX;\n node2.offsetY += forceY;\n } // s += \"\\nForceX: \" + forceX + \" ForceY: \" + forceY;\n // logDebug(s);\n\n\n return;\n};\n/**\n * @brief : Determines whether two nodes overlap or not\n * @return : Amount of overlapping (0 => no overlap)\n */\n\n\nvar nodesOverlap = function nodesOverlap(node1, node2, dX, dY) {\n if (dX > 0) {\n var overlapX = node1.maxX - node2.minX;\n } else {\n var overlapX = node2.maxX - node1.minX;\n }\n\n if (dY > 0) {\n var overlapY = node1.maxY - node2.minY;\n } else {\n var overlapY = node2.maxY - node1.minY;\n }\n\n if (overlapX >= 0 && overlapY >= 0) {\n return Math.sqrt(overlapX * overlapX + overlapY * overlapY);\n } else {\n return 0;\n }\n};\n/**\n * @brief : Finds the point in which an edge (direction dX, dY) intersects\n * the rectangular bounding box of it's source/target node\n */\n\n\nvar findClippingPoint = function findClippingPoint(node, dX, dY) {\n // Shorcuts\n var X = node.positionX;\n var Y = node.positionY;\n var H = node.height || 1;\n var W = node.width || 1;\n var dirSlope = dY / dX;\n var nodeSlope = H / W; // var s = 'Computing clipping point of node ' + node.id +\n // \" . Height: \" + H + \", Width: \" + W +\n // \"\\nDirection \" + dX + \", \" + dY;\n //\n // Compute intersection\n\n var res = {}; // Case: Vertical direction (up)\n\n if (0 === dX && 0 < dY) {\n res.x = X; // s += \"\\nUp direction\";\n\n res.y = Y + H / 2;\n return res;\n } // Case: Vertical direction (down)\n\n\n if (0 === dX && 0 > dY) {\n res.x = X;\n res.y = Y + H / 2; // s += \"\\nDown direction\";\n\n return res;\n } // Case: Intersects the right border\n\n\n if (0 < dX && -1 * nodeSlope <= dirSlope && dirSlope <= nodeSlope) {\n res.x = X + W / 2;\n res.y = Y + W * dY / 2 / dX; // s += \"\\nRightborder\";\n\n return res;\n } // Case: Intersects the left border\n\n\n if (0 > dX && -1 * nodeSlope <= dirSlope && dirSlope <= nodeSlope) {\n res.x = X - W / 2;\n res.y = Y - W * dY / 2 / dX; // s += \"\\nLeftborder\";\n\n return res;\n } // Case: Intersects the top border\n\n\n if (0 < dY && (dirSlope <= -1 * nodeSlope || dirSlope >= nodeSlope)) {\n res.x = X + H * dX / 2 / dY;\n res.y = Y + H / 2; // s += \"\\nTop border\";\n\n return res;\n } // Case: Intersects the bottom border\n\n\n if (0 > dY && (dirSlope <= -1 * nodeSlope || dirSlope >= nodeSlope)) {\n res.x = X - H * dX / 2 / dY;\n res.y = Y - H / 2; // s += \"\\nBottom border\";\n\n return res;\n } // s += \"\\nClipping point found at \" + res.x + \", \" + res.y;\n // logDebug(s);\n\n\n return res;\n};\n/**\n * @brief : Calculates all edge forces\n */\n\n\nvar calculateEdgeForces = function calculateEdgeForces(layoutInfo, options) {\n // Iterate over all edges\n for (var i = 0; i < layoutInfo.edgeSize; i++) {\n // Get edge, source & target nodes\n var edge = layoutInfo.layoutEdges[i];\n var sourceIx = layoutInfo.idToIndex[edge.sourceId];\n var source = layoutInfo.layoutNodes[sourceIx];\n var targetIx = layoutInfo.idToIndex[edge.targetId];\n var target = layoutInfo.layoutNodes[targetIx]; // Get direction of line connecting both node centers\n\n var directionX = target.positionX - source.positionX;\n var directionY = target.positionY - source.positionY; // If both centers are the same, do nothing.\n // A random force has already been applied as node repulsion\n\n if (0 === directionX && 0 === directionY) {\n continue;\n } // Get clipping points for both nodes\n\n\n var point1 = findClippingPoint(source, directionX, directionY);\n var point2 = findClippingPoint(target, -1 * directionX, -1 * directionY);\n var lx = point2.x - point1.x;\n var ly = point2.y - point1.y;\n var l = Math.sqrt(lx * lx + ly * ly);\n var force = Math.pow(edge.idealLength - l, 2) / edge.elasticity;\n\n if (0 !== l) {\n var forceX = force * lx / l;\n var forceY = force * ly / l;\n } else {\n var forceX = 0;\n var forceY = 0;\n } // Add this force to target and source nodes\n\n\n if (!source.isLocked) {\n source.offsetX += forceX;\n source.offsetY += forceY;\n }\n\n if (!target.isLocked) {\n target.offsetX -= forceX;\n target.offsetY -= forceY;\n } // var s = 'Edge force between nodes ' + source.id + ' and ' + target.id;\n // s += \"\\nDistance: \" + l + \" Force: (\" + forceX + \", \" + forceY + \")\";\n // logDebug(s);\n\n }\n};\n/**\n * @brief : Computes gravity forces for all nodes\n */\n\n\nvar calculateGravityForces = function calculateGravityForces(layoutInfo, options) {\n if (options.gravity === 0) {\n return;\n }\n\n var distThreshold = 1; // var s = 'calculateGravityForces';\n // logDebug(s);\n\n for (var i = 0; i < layoutInfo.graphSet.length; i++) {\n var graph = layoutInfo.graphSet[i];\n var numNodes = graph.length; // s = \"Set: \" + graph.toString();\n // logDebug(s);\n // Compute graph center\n\n if (0 === i) {\n var centerX = layoutInfo.clientHeight / 2;\n var centerY = layoutInfo.clientWidth / 2;\n } else {\n // Get Parent node for this graph, and use its position as center\n var temp = layoutInfo.layoutNodes[layoutInfo.idToIndex[graph[0]]];\n var parent = layoutInfo.layoutNodes[layoutInfo.idToIndex[temp.parentId]];\n var centerX = parent.positionX;\n var centerY = parent.positionY;\n } // s = \"Center found at: \" + centerX + \", \" + centerY;\n // logDebug(s);\n // Apply force to all nodes in graph\n\n\n for (var j = 0; j < numNodes; j++) {\n var node = layoutInfo.layoutNodes[layoutInfo.idToIndex[graph[j]]]; // s = \"Node: \" + node.id;\n\n if (node.isLocked) {\n continue;\n }\n\n var dx = centerX - node.positionX;\n var dy = centerY - node.positionY;\n var d = Math.sqrt(dx * dx + dy * dy);\n\n if (d > distThreshold) {\n var fx = options.gravity * dx / d;\n var fy = options.gravity * dy / d;\n node.offsetX += fx;\n node.offsetY += fy; // s += \": Applied force: \" + fx + \", \" + fy;\n } // logDebug(s);\n\n }\n }\n};\n/**\n * @brief : This function propagates the existing offsets from\n * parent nodes to its descendents.\n * @arg layoutInfo : layoutInfo Object\n * @arg cy : cytoscape Object\n * @arg options : Layout options\n */\n\n\nvar propagateForces = function propagateForces(layoutInfo, options) {\n // Inline implementation of a queue, used for traversing the graph in BFS order\n var queue = [];\n var start = 0; // Points to the start the queue\n\n var end = -1; // Points to the end of the queue\n // logDebug('propagateForces');\n // Start by visiting the nodes in the root graph\n\n queue.push.apply(queue, layoutInfo.graphSet[0]);\n end += layoutInfo.graphSet[0].length; // Traverse the graph, level by level,\n\n while (start <= end) {\n // Get the node to visit and remove it from queue\n var nodeId = queue[start++];\n var nodeIndex = layoutInfo.idToIndex[nodeId];\n var node = layoutInfo.layoutNodes[nodeIndex];\n var children = node.children; // We only need to process the node if it's compound\n\n if (0 < children.length && !node.isLocked) {\n var offX = node.offsetX;\n var offY = node.offsetY; // var s = \"Propagating offset from parent node : \" + node.id +\n // \". OffsetX: \" + offX + \". OffsetY: \" + offY;\n // s += \"\\n Children: \" + children.toString();\n // logDebug(s);\n\n for (var i = 0; i < children.length; i++) {\n var childNode = layoutInfo.layoutNodes[layoutInfo.idToIndex[children[i]]]; // Propagate offset\n\n childNode.offsetX += offX;\n childNode.offsetY += offY; // Add children to queue to be visited\n\n queue[++end] = children[i];\n } // Reset parent offsets\n\n\n node.offsetX = 0;\n node.offsetY = 0;\n }\n }\n};\n/**\n * @brief : Updates the layout model positions, based on\n * the accumulated forces\n */\n\n\nvar updatePositions = function updatePositions(layoutInfo, options) {\n // var s = 'Updating positions';\n // logDebug(s);\n // Reset boundaries for compound nodes\n for (var i = 0; i < layoutInfo.nodeSize; i++) {\n var n = layoutInfo.layoutNodes[i];\n\n if (0 < n.children.length) {\n // logDebug(\"Resetting boundaries of compound node: \" + n.id);\n n.maxX = undefined;\n n.minX = undefined;\n n.maxY = undefined;\n n.minY = undefined;\n }\n }\n\n for (var i = 0; i < layoutInfo.nodeSize; i++) {\n var n = layoutInfo.layoutNodes[i];\n\n if (0 < n.children.length || n.isLocked) {\n // No need to set compound or locked node position\n // logDebug(\"Skipping position update of node: \" + n.id);\n continue;\n } // s = \"Node: \" + n.id + \" Previous position: (\" +\n // n.positionX + \", \" + n.positionY + \").\";\n // Limit displacement in order to improve stability\n\n\n var tempForce = limitForce(n.offsetX, n.offsetY, layoutInfo.temperature);\n n.positionX += tempForce.x;\n n.positionY += tempForce.y;\n n.offsetX = 0;\n n.offsetY = 0;\n n.minX = n.positionX - n.width;\n n.maxX = n.positionX + n.width;\n n.minY = n.positionY - n.height;\n n.maxY = n.positionY + n.height; // s += \" New Position: (\" + n.positionX + \", \" + n.positionY + \").\";\n // logDebug(s);\n // Update ancestry boudaries\n\n updateAncestryBoundaries(n, layoutInfo);\n } // Update size, position of compund nodes\n\n\n for (var i = 0; i < layoutInfo.nodeSize; i++) {\n var n = layoutInfo.layoutNodes[i];\n\n if (0 < n.children.length && !n.isLocked) {\n n.positionX = (n.maxX + n.minX) / 2;\n n.positionY = (n.maxY + n.minY) / 2;\n n.width = n.maxX - n.minX;\n n.height = n.maxY - n.minY; // s = \"Updating position, size of compound node \" + n.id;\n // s += \"\\nPositionX: \" + n.positionX + \", PositionY: \" + n.positionY;\n // s += \"\\nWidth: \" + n.width + \", Height: \" + n.height;\n // logDebug(s);\n }\n }\n};\n/**\n * @brief : Limits a force (forceX, forceY) to be not\n * greater (in modulo) than max.\n 8 Preserves force direction.\n */\n\n\nvar limitForce = function limitForce(forceX, forceY, max) {\n // var s = \"Limiting force: (\" + forceX + \", \" + forceY + \"). Max: \" + max;\n var force = Math.sqrt(forceX * forceX + forceY * forceY);\n\n if (force > max) {\n var res = {\n x: max * forceX / force,\n y: max * forceY / force\n };\n } else {\n var res = {\n x: forceX,\n y: forceY\n };\n } // s += \".\\nResult: (\" + res.x + \", \" + res.y + \")\";\n // logDebug(s);\n\n\n return res;\n};\n/**\n * @brief : Function used for keeping track of compound node\n * sizes, since they should bound all their subnodes.\n */\n\n\nvar updateAncestryBoundaries = function updateAncestryBoundaries(node, layoutInfo) {\n // var s = \"Propagating new position/size of node \" + node.id;\n var parentId = node.parentId;\n\n if (null == parentId) {\n // If there's no parent, we are done\n // s += \". No parent node.\";\n // logDebug(s);\n return;\n } // Get Parent Node\n\n\n var p = layoutInfo.layoutNodes[layoutInfo.idToIndex[parentId]];\n var flag = false; // MaxX\n\n if (null == p.maxX || node.maxX + p.padRight > p.maxX) {\n p.maxX = node.maxX + p.padRight;\n flag = true; // s += \"\\nNew maxX for parent node \" + p.id + \": \" + p.maxX;\n } // MinX\n\n\n if (null == p.minX || node.minX - p.padLeft < p.minX) {\n p.minX = node.minX - p.padLeft;\n flag = true; // s += \"\\nNew minX for parent node \" + p.id + \": \" + p.minX;\n } // MaxY\n\n\n if (null == p.maxY || node.maxY + p.padBottom > p.maxY) {\n p.maxY = node.maxY + p.padBottom;\n flag = true; // s += \"\\nNew maxY for parent node \" + p.id + \": \" + p.maxY;\n } // MinY\n\n\n if (null == p.minY || node.minY - p.padTop < p.minY) {\n p.minY = node.minY - p.padTop;\n flag = true; // s += \"\\nNew minY for parent node \" + p.id + \": \" + p.minY;\n } // If updated boundaries, propagate changes upward\n\n\n if (flag) {\n // logDebug(s);\n return updateAncestryBoundaries(p, layoutInfo);\n } // s += \". No changes in boundaries/position of parent node \" + p.id;\n // logDebug(s);\n\n\n return;\n};\n\nvar separateComponents = function separateComponents(layoutInfo, options) {\n var nodes = layoutInfo.layoutNodes;\n var components = [];\n\n for (var i = 0; i < nodes.length; i++) {\n var node = nodes[i];\n var cid = node.cmptId;\n var component = components[cid] = components[cid] || [];\n component.push(node);\n }\n\n var totalA = 0;\n\n for (var i = 0; i < components.length; i++) {\n var c = components[i];\n\n if (!c) {\n continue;\n }\n\n c.x1 = Infinity;\n c.x2 = -Infinity;\n c.y1 = Infinity;\n c.y2 = -Infinity;\n\n for (var j = 0; j < c.length; j++) {\n var n = c[j];\n c.x1 = Math.min(c.x1, n.positionX - n.width / 2);\n c.x2 = Math.max(c.x2, n.positionX + n.width / 2);\n c.y1 = Math.min(c.y1, n.positionY - n.height / 2);\n c.y2 = Math.max(c.y2, n.positionY + n.height / 2);\n }\n\n c.w = c.x2 - c.x1;\n c.h = c.y2 - c.y1;\n totalA += c.w * c.h;\n }\n\n components.sort(function (c1, c2) {\n return c2.w * c2.h - c1.w * c1.h;\n });\n var x = 0;\n var y = 0;\n var usedW = 0;\n var rowH = 0;\n var maxRowW = Math.sqrt(totalA) * layoutInfo.clientWidth / layoutInfo.clientHeight;\n\n for (var i = 0; i < components.length; i++) {\n var c = components[i];\n\n if (!c) {\n continue;\n }\n\n for (var j = 0; j < c.length; j++) {\n var n = c[j];\n\n if (!n.isLocked) {\n n.positionX += x - c.x1;\n n.positionY += y - c.y1;\n }\n }\n\n x += c.w + options.componentSpacing;\n usedW += c.w + options.componentSpacing;\n rowH = Math.max(rowH, c.h);\n\n if (usedW > maxRowW) {\n y += rowH + options.componentSpacing;\n x = 0;\n usedW = 0;\n rowH = 0;\n }\n }\n};\n\nvar defaults$3 = {\n fit: true,\n // whether to fit the viewport to the graph\n padding: 30,\n // padding used on fit\n boundingBox: undefined,\n // constrain layout bounds; { x1, y1, x2, y2 } or { x1, y1, w, h }\n avoidOverlap: true,\n // prevents node overlap, may overflow boundingBox if not enough space\n avoidOverlapPadding: 10,\n // extra spacing around nodes when avoidOverlap: true\n nodeDimensionsIncludeLabels: false,\n // Excludes the label when calculating node bounding boxes for the layout algorithm\n spacingFactor: undefined,\n // Applies a multiplicative factor (>0) to expand or compress the overall area that the nodes take up\n condense: false,\n // uses all available space on false, uses minimal space on true\n rows: undefined,\n // force num of rows in the grid\n cols: undefined,\n // force num of columns in the grid\n position: function position(node) {},\n // returns { row, col } for element\n sort: undefined,\n // a sorting function to order the nodes; e.g. function(a, b){ return a.data('weight') - b.data('weight') }\n animate: false,\n // whether to transition the node positions\n animationDuration: 500,\n // duration of animation in ms if enabled\n animationEasing: undefined,\n // easing of animation if enabled\n animateFilter: function animateFilter(node, i) {\n return true;\n },\n // a function that determines whether the node should be animated. All nodes animated by default on animate enabled. Non-animated nodes are positioned immediately when the layout starts\n ready: undefined,\n // callback on layoutready\n stop: undefined,\n // callback on layoutstop\n transform: function transform(node, position) {\n return position;\n } // transform a given node position. Useful for changing flow direction in discrete layouts \n\n};\n\nfunction GridLayout(options) {\n this.options = extend({}, defaults$3, options);\n}\n\nGridLayout.prototype.run = function () {\n var params = this.options;\n var options = params;\n var cy = params.cy;\n var eles = options.eles;\n var nodes = eles.nodes().not(':parent');\n\n if (options.sort) {\n nodes = nodes.sort(options.sort);\n }\n\n var bb = makeBoundingBox(options.boundingBox ? options.boundingBox : {\n x1: 0,\n y1: 0,\n w: cy.width(),\n h: cy.height()\n });\n\n if (bb.h === 0 || bb.w === 0) {\n eles.nodes().layoutPositions(this, options, function (ele) {\n return {\n x: bb.x1,\n y: bb.y1\n };\n });\n } else {\n // width/height * splits^2 = cells where splits is number of times to split width\n var cells = nodes.size();\n var splits = Math.sqrt(cells * bb.h / bb.w);\n var rows = Math.round(splits);\n var cols = Math.round(bb.w / bb.h * splits);\n\n var small = function small(val) {\n if (val == null) {\n return Math.min(rows, cols);\n } else {\n var min = Math.min(rows, cols);\n\n if (min == rows) {\n rows = val;\n } else {\n cols = val;\n }\n }\n };\n\n var large = function large(val) {\n if (val == null) {\n return Math.max(rows, cols);\n } else {\n var max = Math.max(rows, cols);\n\n if (max == rows) {\n rows = val;\n } else {\n cols = val;\n }\n }\n };\n\n var oRows = options.rows;\n var oCols = options.cols != null ? options.cols : options.columns; // if rows or columns were set in options, use those values\n\n if (oRows != null && oCols != null) {\n rows = oRows;\n cols = oCols;\n } else if (oRows != null && oCols == null) {\n rows = oRows;\n cols = Math.ceil(cells / rows);\n } else if (oRows == null && oCols != null) {\n cols = oCols;\n rows = Math.ceil(cells / cols);\n } // otherwise use the automatic values and adjust accordingly\n // if rounding was up, see if we can reduce rows or columns\n else if (cols * rows > cells) {\n var sm = small();\n var lg = large(); // reducing the small side takes away the most cells, so try it first\n\n if ((sm - 1) * lg >= cells) {\n small(sm - 1);\n } else if ((lg - 1) * sm >= cells) {\n large(lg - 1);\n }\n } else {\n // if rounding was too low, add rows or columns\n while (cols * rows < cells) {\n var _sm = small();\n\n var _lg = large(); // try to add to larger side first (adds less in multiplication)\n\n\n if ((_lg + 1) * _sm >= cells) {\n large(_lg + 1);\n } else {\n small(_sm + 1);\n }\n }\n }\n\n var cellWidth = bb.w / cols;\n var cellHeight = bb.h / rows;\n\n if (options.condense) {\n cellWidth = 0;\n cellHeight = 0;\n }\n\n if (options.avoidOverlap) {\n for (var i = 0; i < nodes.length; i++) {\n var node = nodes[i];\n var pos = node._private.position;\n\n if (pos.x == null || pos.y == null) {\n // for bb\n pos.x = 0;\n pos.y = 0;\n }\n\n var nbb = node.layoutDimensions(options);\n var p = options.avoidOverlapPadding;\n var w = nbb.w + p;\n var h = nbb.h + p;\n cellWidth = Math.max(cellWidth, w);\n cellHeight = Math.max(cellHeight, h);\n }\n }\n\n var cellUsed = {}; // e.g. 'c-0-2' => true\n\n var used = function used(row, col) {\n return cellUsed['c-' + row + '-' + col] ? true : false;\n };\n\n var use = function use(row, col) {\n cellUsed['c-' + row + '-' + col] = true;\n }; // to keep track of current cell position\n\n\n var row = 0;\n var col = 0;\n\n var moveToNextCell = function moveToNextCell() {\n col++;\n\n if (col >= cols) {\n col = 0;\n row++;\n }\n }; // get a cache of all the manual positions\n\n\n var id2manPos = {};\n\n for (var _i = 0; _i < nodes.length; _i++) {\n var _node = nodes[_i];\n var rcPos = options.position(_node);\n\n if (rcPos && (rcPos.row !== undefined || rcPos.col !== undefined)) {\n // must have at least row or col def'd\n var _pos = {\n row: rcPos.row,\n col: rcPos.col\n };\n\n if (_pos.col === undefined) {\n // find unused col\n _pos.col = 0;\n\n while (used(_pos.row, _pos.col)) {\n _pos.col++;\n }\n } else if (_pos.row === undefined) {\n // find unused row\n _pos.row = 0;\n\n while (used(_pos.row, _pos.col)) {\n _pos.row++;\n }\n }\n\n id2manPos[_node.id()] = _pos;\n use(_pos.row, _pos.col);\n }\n }\n\n var getPos = function getPos(element, i) {\n var x, y;\n\n if (element.locked() || element.isParent()) {\n return false;\n } // see if we have a manual position set\n\n\n var rcPos = id2manPos[element.id()];\n\n if (rcPos) {\n x = rcPos.col * cellWidth + cellWidth / 2 + bb.x1;\n y = rcPos.row * cellHeight + cellHeight / 2 + bb.y1;\n } else {\n // otherwise set automatically\n while (used(row, col)) {\n moveToNextCell();\n }\n\n x = col * cellWidth + cellWidth / 2 + bb.x1;\n y = row * cellHeight + cellHeight / 2 + bb.y1;\n use(row, col);\n moveToNextCell();\n }\n\n return {\n x: x,\n y: y\n };\n };\n\n nodes.layoutPositions(this, options, getPos);\n }\n\n return this; // chaining\n};\n\nvar defaults$2 = {\n ready: function ready() {},\n // on layoutready\n stop: function stop() {} // on layoutstop\n\n}; // constructor\n// options : object containing layout options\n\nfunction NullLayout(options) {\n this.options = extend({}, defaults$2, options);\n} // runs the layout\n\n\nNullLayout.prototype.run = function () {\n var options = this.options;\n var eles = options.eles; // elements to consider in the layout\n\n var layout = this; // cy is automatically populated for us in the constructor\n // (disable eslint for next line as this serves as example layout code to external developers)\n // eslint-disable-next-line no-unused-vars\n\n options.cy;\n layout.emit('layoutstart'); // puts all nodes at (0, 0)\n // n.b. most layouts would use layoutPositions(), instead of positions() and manual events\n\n eles.nodes().positions(function () {\n return {\n x: 0,\n y: 0\n };\n }); // trigger layoutready when each node has had its position set at least once\n\n layout.one('layoutready', options.ready);\n layout.emit('layoutready'); // trigger layoutstop when the layout stops (e.g. finishes)\n\n layout.one('layoutstop', options.stop);\n layout.emit('layoutstop');\n return this; // chaining\n}; // called on continuous layouts to stop them before they finish\n\n\nNullLayout.prototype.stop = function () {\n return this; // chaining\n};\n\nvar defaults$1 = {\n positions: undefined,\n // map of (node id) => (position obj); or function(node){ return somPos; }\n zoom: undefined,\n // the zoom level to set (prob want fit = false if set)\n pan: undefined,\n // the pan level to set (prob want fit = false if set)\n fit: true,\n // whether to fit to viewport\n padding: 30,\n // padding on fit\n animate: false,\n // whether to transition the node positions\n animationDuration: 500,\n // duration of animation in ms if enabled\n animationEasing: undefined,\n // easing of animation if enabled\n animateFilter: function animateFilter(node, i) {\n return true;\n },\n // a function that determines whether the node should be animated. All nodes animated by default on animate enabled. Non-animated nodes are positioned immediately when the layout starts\n ready: undefined,\n // callback on layoutready\n stop: undefined,\n // callback on layoutstop\n transform: function transform(node, position) {\n return position;\n } // transform a given node position. Useful for changing flow direction in discrete layouts\n\n};\n\nfunction PresetLayout(options) {\n this.options = extend({}, defaults$1, options);\n}\n\nPresetLayout.prototype.run = function () {\n var options = this.options;\n var eles = options.eles;\n var nodes = eles.nodes();\n var posIsFn = fn$6(options.positions);\n\n function getPosition(node) {\n if (options.positions == null) {\n return copyPosition(node.position());\n }\n\n if (posIsFn) {\n return options.positions(node);\n }\n\n var pos = options.positions[node._private.data.id];\n\n if (pos == null) {\n return null;\n }\n\n return pos;\n }\n\n nodes.layoutPositions(this, options, function (node, i) {\n var position = getPosition(node);\n\n if (node.locked() || position == null) {\n return false;\n }\n\n return position;\n });\n return this; // chaining\n};\n\nvar defaults = {\n fit: true,\n // whether to fit to viewport\n padding: 30,\n // fit padding\n boundingBox: undefined,\n // constrain layout bounds; { x1, y1, x2, y2 } or { x1, y1, w, h }\n animate: false,\n // whether to transition the node positions\n animationDuration: 500,\n // duration of animation in ms if enabled\n animationEasing: undefined,\n // easing of animation if enabled\n animateFilter: function animateFilter(node, i) {\n return true;\n },\n // a function that determines whether the node should be animated. All nodes animated by default on animate enabled. Non-animated nodes are positioned immediately when the layout starts\n ready: undefined,\n // callback on layoutready\n stop: undefined,\n // callback on layoutstop\n transform: function transform(node, position) {\n return position;\n } // transform a given node position. Useful for changing flow direction in discrete layouts \n\n};\n\nfunction RandomLayout(options) {\n this.options = extend({}, defaults, options);\n}\n\nRandomLayout.prototype.run = function () {\n var options = this.options;\n var cy = options.cy;\n var eles = options.eles;\n var bb = makeBoundingBox(options.boundingBox ? options.boundingBox : {\n x1: 0,\n y1: 0,\n w: cy.width(),\n h: cy.height()\n });\n\n var getPos = function getPos(node, i) {\n return {\n x: bb.x1 + Math.round(Math.random() * bb.w),\n y: bb.y1 + Math.round(Math.random() * bb.h)\n };\n };\n\n eles.nodes().layoutPositions(this, options, getPos);\n return this; // chaining\n};\n\nvar layout = [{\n name: 'breadthfirst',\n impl: BreadthFirstLayout\n}, {\n name: 'circle',\n impl: CircleLayout\n}, {\n name: 'concentric',\n impl: ConcentricLayout\n}, {\n name: 'cose',\n impl: CoseLayout\n}, {\n name: 'grid',\n impl: GridLayout\n}, {\n name: 'null',\n impl: NullLayout\n}, {\n name: 'preset',\n impl: PresetLayout\n}, {\n name: 'random',\n impl: RandomLayout\n}];\n\nfunction NullRenderer(options) {\n this.options = options;\n this.notifications = 0; // for testing\n}\n\nvar noop = function noop() {};\n\nvar throwImgErr = function throwImgErr() {\n throw new Error('A headless instance can not render images');\n};\n\nNullRenderer.prototype = {\n recalculateRenderedStyle: noop,\n notify: function notify() {\n this.notifications++;\n },\n init: noop,\n isHeadless: function isHeadless() {\n return true;\n },\n png: throwImgErr,\n jpg: throwImgErr\n};\n\nvar BRp$f = {};\nBRp$f.arrowShapeWidth = 0.3;\n\nBRp$f.registerArrowShapes = function () {\n var arrowShapes = this.arrowShapes = {};\n var renderer = this; // Contract for arrow shapes:\n // 0, 0 is arrow tip\n // (0, 1) is direction towards node\n // (1, 0) is right\n //\n // functional api:\n // collide: check x, y in shape\n // roughCollide: called before collide, no false negatives\n // draw: draw\n // spacing: dist(arrowTip, nodeBoundary)\n // gap: dist(edgeTip, nodeBoundary), edgeTip may != arrowTip\n\n var bbCollide = function bbCollide(x, y, size, angle, translation, edgeWidth, padding) {\n var x1 = translation.x - size / 2 - padding;\n var x2 = translation.x + size / 2 + padding;\n var y1 = translation.y - size / 2 - padding;\n var y2 = translation.y + size / 2 + padding;\n var inside = x1 <= x && x <= x2 && y1 <= y && y <= y2;\n return inside;\n };\n\n var transform = function transform(x, y, size, angle, translation) {\n var xRotated = x * Math.cos(angle) - y * Math.sin(angle);\n var yRotated = x * Math.sin(angle) + y * Math.cos(angle);\n var xScaled = xRotated * size;\n var yScaled = yRotated * size;\n var xTranslated = xScaled + translation.x;\n var yTranslated = yScaled + translation.y;\n return {\n x: xTranslated,\n y: yTranslated\n };\n };\n\n var transformPoints = function transformPoints(pts, size, angle, translation) {\n var retPts = [];\n\n for (var i = 0; i < pts.length; i += 2) {\n var x = pts[i];\n var y = pts[i + 1];\n retPts.push(transform(x, y, size, angle, translation));\n }\n\n return retPts;\n };\n\n var pointsToArr = function pointsToArr(pts) {\n var ret = [];\n\n for (var i = 0; i < pts.length; i++) {\n var p = pts[i];\n ret.push(p.x, p.y);\n }\n\n return ret;\n };\n\n var standardGap = function standardGap(edge) {\n return edge.pstyle('width').pfValue * edge.pstyle('arrow-scale').pfValue * 2;\n };\n\n var defineArrowShape = function defineArrowShape(name, defn) {\n if (string(defn)) {\n defn = arrowShapes[defn];\n }\n\n arrowShapes[name] = extend({\n name: name,\n points: [-0.15, -0.3, 0.15, -0.3, 0.15, 0.3, -0.15, 0.3],\n collide: function collide(x, y, size, angle, translation, padding) {\n var points = pointsToArr(transformPoints(this.points, size + 2 * padding, angle, translation));\n var inside = pointInsidePolygonPoints(x, y, points);\n return inside;\n },\n roughCollide: bbCollide,\n draw: function draw(context, size, angle, translation) {\n var points = transformPoints(this.points, size, angle, translation);\n renderer.arrowShapeImpl('polygon')(context, points);\n },\n spacing: function spacing(edge) {\n return 0;\n },\n gap: standardGap\n }, defn);\n };\n\n defineArrowShape('none', {\n collide: falsify,\n roughCollide: falsify,\n draw: noop$1,\n spacing: zeroify,\n gap: zeroify\n });\n defineArrowShape('triangle', {\n points: [-0.15, -0.3, 0, 0, 0.15, -0.3]\n });\n defineArrowShape('arrow', 'triangle');\n defineArrowShape('triangle-backcurve', {\n points: arrowShapes['triangle'].points,\n controlPoint: [0, -0.15],\n roughCollide: bbCollide,\n draw: function draw(context, size, angle, translation, edgeWidth) {\n var ptsTrans = transformPoints(this.points, size, angle, translation);\n var ctrlPt = this.controlPoint;\n var ctrlPtTrans = transform(ctrlPt[0], ctrlPt[1], size, angle, translation);\n renderer.arrowShapeImpl(this.name)(context, ptsTrans, ctrlPtTrans);\n },\n gap: function gap(edge) {\n return standardGap(edge) * 0.8;\n }\n });\n defineArrowShape('triangle-tee', {\n points: [0, 0, 0.15, -0.3, -0.15, -0.3, 0, 0],\n pointsTee: [-0.15, -0.4, -0.15, -0.5, 0.15, -0.5, 0.15, -0.4],\n collide: function collide(x, y, size, angle, translation, edgeWidth, padding) {\n var triPts = pointsToArr(transformPoints(this.points, size + 2 * padding, angle, translation));\n var teePts = pointsToArr(transformPoints(this.pointsTee, size + 2 * padding, angle, translation));\n var inside = pointInsidePolygonPoints(x, y, triPts) || pointInsidePolygonPoints(x, y, teePts);\n return inside;\n },\n draw: function draw(context, size, angle, translation, edgeWidth) {\n var triPts = transformPoints(this.points, size, angle, translation);\n var teePts = transformPoints(this.pointsTee, size, angle, translation);\n renderer.arrowShapeImpl(this.name)(context, triPts, teePts);\n }\n });\n defineArrowShape('circle-triangle', {\n radius: 0.15,\n pointsTr: [0, -0.15, 0.15, -0.45, -0.15, -0.45, 0, -0.15],\n collide: function collide(x, y, size, angle, translation, edgeWidth, padding) {\n var t = translation;\n var circleInside = Math.pow(t.x - x, 2) + Math.pow(t.y - y, 2) <= Math.pow((size + 2 * padding) * this.radius, 2);\n var triPts = pointsToArr(transformPoints(this.points, size + 2 * padding, angle, translation));\n return pointInsidePolygonPoints(x, y, triPts) || circleInside;\n },\n draw: function draw(context, size, angle, translation, edgeWidth) {\n var triPts = transformPoints(this.pointsTr, size, angle, translation);\n renderer.arrowShapeImpl(this.name)(context, triPts, translation.x, translation.y, this.radius * size);\n },\n spacing: function spacing(edge) {\n return renderer.getArrowWidth(edge.pstyle('width').pfValue, edge.pstyle('arrow-scale').value) * this.radius;\n }\n });\n defineArrowShape('triangle-cross', {\n points: [0, 0, 0.15, -0.3, -0.15, -0.3, 0, 0],\n baseCrossLinePts: [-0.15, -0.4, // first half of the rectangle\n -0.15, -0.4, 0.15, -0.4, // second half of the rectangle\n 0.15, -0.4],\n crossLinePts: function crossLinePts(size, edgeWidth) {\n // shift points so that the distance between the cross points matches edge width\n var p = this.baseCrossLinePts.slice();\n var shiftFactor = edgeWidth / size;\n var y0 = 3;\n var y1 = 5;\n p[y0] = p[y0] - shiftFactor;\n p[y1] = p[y1] - shiftFactor;\n return p;\n },\n collide: function collide(x, y, size, angle, translation, edgeWidth, padding) {\n var triPts = pointsToArr(transformPoints(this.points, size + 2 * padding, angle, translation));\n var teePts = pointsToArr(transformPoints(this.crossLinePts(size, edgeWidth), size + 2 * padding, angle, translation));\n var inside = pointInsidePolygonPoints(x, y, triPts) || pointInsidePolygonPoints(x, y, teePts);\n return inside;\n },\n draw: function draw(context, size, angle, translation, edgeWidth) {\n var triPts = transformPoints(this.points, size, angle, translation);\n var crossLinePts = transformPoints(this.crossLinePts(size, edgeWidth), size, angle, translation);\n renderer.arrowShapeImpl(this.name)(context, triPts, crossLinePts);\n }\n });\n defineArrowShape('vee', {\n points: [-0.15, -0.3, 0, 0, 0.15, -0.3, 0, -0.15],\n gap: function gap(edge) {\n return standardGap(edge) * 0.525;\n }\n });\n defineArrowShape('circle', {\n radius: 0.15,\n collide: function collide(x, y, size, angle, translation, edgeWidth, padding) {\n var t = translation;\n var inside = Math.pow(t.x - x, 2) + Math.pow(t.y - y, 2) <= Math.pow((size + 2 * padding) * this.radius, 2);\n return inside;\n },\n draw: function draw(context, size, angle, translation, edgeWidth) {\n renderer.arrowShapeImpl(this.name)(context, translation.x, translation.y, this.radius * size);\n },\n spacing: function spacing(edge) {\n return renderer.getArrowWidth(edge.pstyle('width').pfValue, edge.pstyle('arrow-scale').value) * this.radius;\n }\n });\n defineArrowShape('tee', {\n points: [-0.15, 0, -0.15, -0.1, 0.15, -0.1, 0.15, 0],\n spacing: function spacing(edge) {\n return 1;\n },\n gap: function gap(edge) {\n return 1;\n }\n });\n defineArrowShape('square', {\n points: [-0.15, 0.00, 0.15, 0.00, 0.15, -0.3, -0.15, -0.3]\n });\n defineArrowShape('diamond', {\n points: [-0.15, -0.15, 0, -0.3, 0.15, -0.15, 0, 0],\n gap: function gap(edge) {\n return edge.pstyle('width').pfValue * edge.pstyle('arrow-scale').value;\n }\n });\n defineArrowShape('chevron', {\n points: [0, 0, -0.15, -0.15, -0.1, -0.2, 0, -0.1, 0.1, -0.2, 0.15, -0.15],\n gap: function gap(edge) {\n return 0.95 * edge.pstyle('width').pfValue * edge.pstyle('arrow-scale').value;\n }\n });\n};\n\nvar BRp$e = {}; // Project mouse\n\nBRp$e.projectIntoViewport = function (clientX, clientY) {\n var cy = this.cy;\n var offsets = this.findContainerClientCoords();\n var offsetLeft = offsets[0];\n var offsetTop = offsets[1];\n var scale = offsets[4];\n var pan = cy.pan();\n var zoom = cy.zoom();\n var x = ((clientX - offsetLeft) / scale - pan.x) / zoom;\n var y = ((clientY - offsetTop) / scale - pan.y) / zoom;\n return [x, y];\n};\n\nBRp$e.findContainerClientCoords = function () {\n if (this.containerBB) {\n return this.containerBB;\n }\n\n var container = this.container;\n var rect = container.getBoundingClientRect();\n var style = window$1.getComputedStyle(container);\n\n var styleValue = function styleValue(name) {\n return parseFloat(style.getPropertyValue(name));\n };\n\n var padding = {\n left: styleValue('padding-left'),\n right: styleValue('padding-right'),\n top: styleValue('padding-top'),\n bottom: styleValue('padding-bottom')\n };\n var border = {\n left: styleValue('border-left-width'),\n right: styleValue('border-right-width'),\n top: styleValue('border-top-width'),\n bottom: styleValue('border-bottom-width')\n };\n var clientWidth = container.clientWidth;\n var clientHeight = container.clientHeight;\n var paddingHor = padding.left + padding.right;\n var paddingVer = padding.top + padding.bottom;\n var borderHor = border.left + border.right;\n var scale = rect.width / (clientWidth + borderHor);\n var unscaledW = clientWidth - paddingHor;\n var unscaledH = clientHeight - paddingVer;\n var left = rect.left + padding.left + border.left;\n var top = rect.top + padding.top + border.top;\n return this.containerBB = [left, top, unscaledW, unscaledH, scale];\n};\n\nBRp$e.invalidateContainerClientCoordsCache = function () {\n this.containerBB = null;\n};\n\nBRp$e.findNearestElement = function (x, y, interactiveElementsOnly, isTouch) {\n return this.findNearestElements(x, y, interactiveElementsOnly, isTouch)[0];\n};\n\nBRp$e.findNearestElements = function (x, y, interactiveElementsOnly, isTouch) {\n var self = this;\n var r = this;\n var eles = r.getCachedZSortedEles();\n var near = []; // 1 node max, 1 edge max\n\n var zoom = r.cy.zoom();\n var hasCompounds = r.cy.hasCompoundNodes();\n var edgeThreshold = (isTouch ? 24 : 8) / zoom;\n var nodeThreshold = (isTouch ? 8 : 2) / zoom;\n var labelThreshold = (isTouch ? 8 : 2) / zoom;\n var minSqDist = Infinity;\n var nearEdge;\n var nearNode;\n\n if (interactiveElementsOnly) {\n eles = eles.interactive;\n }\n\n function addEle(ele, sqDist) {\n if (ele.isNode()) {\n if (nearNode) {\n return; // can't replace node\n } else {\n nearNode = ele;\n near.push(ele);\n }\n }\n\n if (ele.isEdge() && (sqDist == null || sqDist < minSqDist)) {\n if (nearEdge) {\n // then replace existing edge\n // can replace only if same z-index\n if (nearEdge.pstyle('z-compound-depth').value === ele.pstyle('z-compound-depth').value && nearEdge.pstyle('z-compound-depth').value === ele.pstyle('z-compound-depth').value) {\n for (var i = 0; i < near.length; i++) {\n if (near[i].isEdge()) {\n near[i] = ele;\n nearEdge = ele;\n minSqDist = sqDist != null ? sqDist : minSqDist;\n break;\n }\n }\n }\n } else {\n near.push(ele);\n nearEdge = ele;\n minSqDist = sqDist != null ? sqDist : minSqDist;\n }\n }\n }\n\n function checkNode(node) {\n var width = node.outerWidth() + 2 * nodeThreshold;\n var height = node.outerHeight() + 2 * nodeThreshold;\n var hw = width / 2;\n var hh = height / 2;\n var pos = node.position();\n\n if (pos.x - hw <= x && x <= pos.x + hw // bb check x\n && pos.y - hh <= y && y <= pos.y + hh // bb check y\n ) {\n var shape = r.nodeShapes[self.getNodeShape(node)];\n\n if (shape.checkPoint(x, y, 0, width, height, pos.x, pos.y)) {\n addEle(node, 0);\n return true;\n }\n }\n }\n\n function checkEdge(edge) {\n var _p = edge._private;\n var rs = _p.rscratch;\n var styleWidth = edge.pstyle('width').pfValue;\n var scale = edge.pstyle('arrow-scale').value;\n var width = styleWidth / 2 + edgeThreshold; // more like a distance radius from centre\n\n var widthSq = width * width;\n var width2 = width * 2;\n var src = _p.source;\n var tgt = _p.target;\n var sqDist;\n\n if (rs.edgeType === 'segments' || rs.edgeType === 'straight' || rs.edgeType === 'haystack') {\n var pts = rs.allpts;\n\n for (var i = 0; i + 3 < pts.length; i += 2) {\n if (inLineVicinity(x, y, pts[i], pts[i + 1], pts[i + 2], pts[i + 3], width2) && widthSq > (sqDist = sqdistToFiniteLine(x, y, pts[i], pts[i + 1], pts[i + 2], pts[i + 3]))) {\n addEle(edge, sqDist);\n return true;\n }\n }\n } else if (rs.edgeType === 'bezier' || rs.edgeType === 'multibezier' || rs.edgeType === 'self' || rs.edgeType === 'compound') {\n var pts = rs.allpts;\n\n for (var i = 0; i + 5 < rs.allpts.length; i += 4) {\n if (inBezierVicinity(x, y, pts[i], pts[i + 1], pts[i + 2], pts[i + 3], pts[i + 4], pts[i + 5], width2) && widthSq > (sqDist = sqdistToQuadraticBezier(x, y, pts[i], pts[i + 1], pts[i + 2], pts[i + 3], pts[i + 4], pts[i + 5]))) {\n addEle(edge, sqDist);\n return true;\n }\n }\n } // if we're close to the edge but didn't hit it, maybe we hit its arrows\n\n\n var src = src || _p.source;\n var tgt = tgt || _p.target;\n var arSize = self.getArrowWidth(styleWidth, scale);\n var arrows = [{\n name: 'source',\n x: rs.arrowStartX,\n y: rs.arrowStartY,\n angle: rs.srcArrowAngle\n }, {\n name: 'target',\n x: rs.arrowEndX,\n y: rs.arrowEndY,\n angle: rs.tgtArrowAngle\n }, {\n name: 'mid-source',\n x: rs.midX,\n y: rs.midY,\n angle: rs.midsrcArrowAngle\n }, {\n name: 'mid-target',\n x: rs.midX,\n y: rs.midY,\n angle: rs.midtgtArrowAngle\n }];\n\n for (var i = 0; i < arrows.length; i++) {\n var ar = arrows[i];\n var shape = r.arrowShapes[edge.pstyle(ar.name + '-arrow-shape').value];\n var edgeWidth = edge.pstyle('width').pfValue;\n\n if (shape.roughCollide(x, y, arSize, ar.angle, {\n x: ar.x,\n y: ar.y\n }, edgeWidth, edgeThreshold) && shape.collide(x, y, arSize, ar.angle, {\n x: ar.x,\n y: ar.y\n }, edgeWidth, edgeThreshold)) {\n addEle(edge);\n return true;\n }\n } // for compound graphs, hitting edge may actually want a connected node instead (b/c edge may have greater z-index precedence)\n\n\n if (hasCompounds && near.length > 0) {\n checkNode(src);\n checkNode(tgt);\n }\n }\n\n function preprop(obj, name, pre) {\n return getPrefixedProperty(obj, name, pre);\n }\n\n function checkLabel(ele, prefix) {\n var _p = ele._private;\n var th = labelThreshold;\n var prefixDash;\n\n if (prefix) {\n prefixDash = prefix + '-';\n } else {\n prefixDash = '';\n }\n\n ele.boundingBox();\n var bb = _p.labelBounds[prefix || 'main'];\n var text = ele.pstyle(prefixDash + 'label').value;\n var eventsEnabled = ele.pstyle('text-events').strValue === 'yes';\n\n if (!eventsEnabled || !text) {\n return;\n }\n\n var lx = preprop(_p.rscratch, 'labelX', prefix);\n var ly = preprop(_p.rscratch, 'labelY', prefix);\n var theta = preprop(_p.rscratch, 'labelAngle', prefix);\n var ox = ele.pstyle(prefixDash + 'text-margin-x').pfValue;\n var oy = ele.pstyle(prefixDash + 'text-margin-y').pfValue;\n var lx1 = bb.x1 - th - ox; // (-ox, -oy) as bb already includes margin\n\n var lx2 = bb.x2 + th - ox; // and rotation is about (lx, ly)\n\n var ly1 = bb.y1 - th - oy;\n var ly2 = bb.y2 + th - oy;\n\n if (theta) {\n var cos = Math.cos(theta);\n var sin = Math.sin(theta);\n\n var rotate = function rotate(x, y) {\n x = x - lx;\n y = y - ly;\n return {\n x: x * cos - y * sin + lx,\n y: x * sin + y * cos + ly\n };\n };\n\n var px1y1 = rotate(lx1, ly1);\n var px1y2 = rotate(lx1, ly2);\n var px2y1 = rotate(lx2, ly1);\n var px2y2 = rotate(lx2, ly2);\n var points = [// with the margin added after the rotation is applied\n px1y1.x + ox, px1y1.y + oy, px2y1.x + ox, px2y1.y + oy, px2y2.x + ox, px2y2.y + oy, px1y2.x + ox, px1y2.y + oy];\n\n if (pointInsidePolygonPoints(x, y, points)) {\n addEle(ele);\n return true;\n }\n } else {\n // do a cheaper bb check\n if (inBoundingBox(bb, x, y)) {\n addEle(ele);\n return true;\n }\n }\n }\n\n for (var i = eles.length - 1; i >= 0; i--) {\n // reverse order for precedence\n var ele = eles[i];\n\n if (ele.isNode()) {\n checkNode(ele) || checkLabel(ele);\n } else {\n // then edge\n checkEdge(ele) || checkLabel(ele) || checkLabel(ele, 'source') || checkLabel(ele, 'target');\n }\n }\n\n return near;\n}; // 'Give me everything from this box'\n\n\nBRp$e.getAllInBox = function (x1, y1, x2, y2) {\n var eles = this.getCachedZSortedEles().interactive;\n var box = [];\n var x1c = Math.min(x1, x2);\n var x2c = Math.max(x1, x2);\n var y1c = Math.min(y1, y2);\n var y2c = Math.max(y1, y2);\n x1 = x1c;\n x2 = x2c;\n y1 = y1c;\n y2 = y2c;\n var boxBb = makeBoundingBox({\n x1: x1,\n y1: y1,\n x2: x2,\n y2: y2\n });\n\n for (var e = 0; e < eles.length; e++) {\n var ele = eles[e];\n\n if (ele.isNode()) {\n var node = ele;\n var nodeBb = node.boundingBox({\n includeNodes: true,\n includeEdges: false,\n includeLabels: false\n });\n\n if (boundingBoxesIntersect(boxBb, nodeBb) && !boundingBoxInBoundingBox(nodeBb, boxBb)) {\n box.push(node);\n }\n } else {\n var edge = ele;\n var _p = edge._private;\n var rs = _p.rscratch;\n\n if (rs.startX != null && rs.startY != null && !inBoundingBox(boxBb, rs.startX, rs.startY)) {\n continue;\n }\n\n if (rs.endX != null && rs.endY != null && !inBoundingBox(boxBb, rs.endX, rs.endY)) {\n continue;\n }\n\n if (rs.edgeType === 'bezier' || rs.edgeType === 'multibezier' || rs.edgeType === 'self' || rs.edgeType === 'compound' || rs.edgeType === 'segments' || rs.edgeType === 'haystack') {\n var pts = _p.rstyle.bezierPts || _p.rstyle.linePts || _p.rstyle.haystackPts;\n var allInside = true;\n\n for (var i = 0; i < pts.length; i++) {\n if (!pointInBoundingBox(boxBb, pts[i])) {\n allInside = false;\n break;\n }\n }\n\n if (allInside) {\n box.push(edge);\n }\n } else if (rs.edgeType === 'haystack' || rs.edgeType === 'straight') {\n box.push(edge);\n }\n }\n }\n\n return box;\n};\n\nvar BRp$d = {};\n\nBRp$d.calculateArrowAngles = function (edge) {\n var rs = edge._private.rscratch;\n var isHaystack = rs.edgeType === 'haystack';\n var isBezier = rs.edgeType === 'bezier';\n var isMultibezier = rs.edgeType === 'multibezier';\n var isSegments = rs.edgeType === 'segments';\n var isCompound = rs.edgeType === 'compound';\n var isSelf = rs.edgeType === 'self'; // Displacement gives direction for arrowhead orientation\n\n var dispX, dispY;\n var startX, startY, endX, endY, midX, midY;\n\n if (isHaystack) {\n startX = rs.haystackPts[0];\n startY = rs.haystackPts[1];\n endX = rs.haystackPts[2];\n endY = rs.haystackPts[3];\n } else {\n startX = rs.arrowStartX;\n startY = rs.arrowStartY;\n endX = rs.arrowEndX;\n endY = rs.arrowEndY;\n }\n\n midX = rs.midX;\n midY = rs.midY; // source\n //\n\n if (isSegments) {\n dispX = startX - rs.segpts[0];\n dispY = startY - rs.segpts[1];\n } else if (isMultibezier || isCompound || isSelf || isBezier) {\n var pts = rs.allpts;\n var bX = qbezierAt(pts[0], pts[2], pts[4], 0.1);\n var bY = qbezierAt(pts[1], pts[3], pts[5], 0.1);\n dispX = startX - bX;\n dispY = startY - bY;\n } else {\n dispX = startX - midX;\n dispY = startY - midY;\n }\n\n rs.srcArrowAngle = getAngleFromDisp(dispX, dispY); // mid target\n //\n\n var midX = rs.midX;\n var midY = rs.midY;\n\n if (isHaystack) {\n midX = (startX + endX) / 2;\n midY = (startY + endY) / 2;\n }\n\n dispX = endX - startX;\n dispY = endY - startY;\n\n if (isSegments) {\n var pts = rs.allpts;\n\n if (pts.length / 2 % 2 === 0) {\n var i2 = pts.length / 2;\n var i1 = i2 - 2;\n dispX = pts[i2] - pts[i1];\n dispY = pts[i2 + 1] - pts[i1 + 1];\n } else {\n var i2 = pts.length / 2 - 1;\n var i1 = i2 - 2;\n var i3 = i2 + 2;\n dispX = pts[i2] - pts[i1];\n dispY = pts[i2 + 1] - pts[i1 + 1];\n }\n } else if (isMultibezier || isCompound || isSelf) {\n var pts = rs.allpts;\n var cpts = rs.ctrlpts;\n var bp0x, bp0y;\n var bp1x, bp1y;\n\n if (cpts.length / 2 % 2 === 0) {\n var p0 = pts.length / 2 - 1; // startpt\n\n var ic = p0 + 2;\n var p1 = ic + 2;\n bp0x = qbezierAt(pts[p0], pts[ic], pts[p1], 0.0);\n bp0y = qbezierAt(pts[p0 + 1], pts[ic + 1], pts[p1 + 1], 0.0);\n bp1x = qbezierAt(pts[p0], pts[ic], pts[p1], 0.0001);\n bp1y = qbezierAt(pts[p0 + 1], pts[ic + 1], pts[p1 + 1], 0.0001);\n } else {\n var ic = pts.length / 2 - 1; // ctrpt\n\n var p0 = ic - 2; // startpt\n\n var p1 = ic + 2; // endpt\n\n bp0x = qbezierAt(pts[p0], pts[ic], pts[p1], 0.4999);\n bp0y = qbezierAt(pts[p0 + 1], pts[ic + 1], pts[p1 + 1], 0.4999);\n bp1x = qbezierAt(pts[p0], pts[ic], pts[p1], 0.5);\n bp1y = qbezierAt(pts[p0 + 1], pts[ic + 1], pts[p1 + 1], 0.5);\n }\n\n dispX = bp1x - bp0x;\n dispY = bp1y - bp0y;\n }\n\n rs.midtgtArrowAngle = getAngleFromDisp(dispX, dispY);\n rs.midDispX = dispX;\n rs.midDispY = dispY; // mid source\n //\n\n dispX *= -1;\n dispY *= -1;\n\n if (isSegments) {\n var pts = rs.allpts;\n\n if (pts.length / 2 % 2 === 0) ; else {\n var i2 = pts.length / 2 - 1;\n var i3 = i2 + 2;\n dispX = -(pts[i3] - pts[i2]);\n dispY = -(pts[i3 + 1] - pts[i2 + 1]);\n }\n }\n\n rs.midsrcArrowAngle = getAngleFromDisp(dispX, dispY); // target\n //\n\n if (isSegments) {\n dispX = endX - rs.segpts[rs.segpts.length - 2];\n dispY = endY - rs.segpts[rs.segpts.length - 1];\n } else if (isMultibezier || isCompound || isSelf || isBezier) {\n var pts = rs.allpts;\n var l = pts.length;\n var bX = qbezierAt(pts[l - 6], pts[l - 4], pts[l - 2], 0.9);\n var bY = qbezierAt(pts[l - 5], pts[l - 3], pts[l - 1], 0.9);\n dispX = endX - bX;\n dispY = endY - bY;\n } else {\n dispX = endX - midX;\n dispY = endY - midY;\n }\n\n rs.tgtArrowAngle = getAngleFromDisp(dispX, dispY);\n};\n\nBRp$d.getArrowWidth = BRp$d.getArrowHeight = function (edgeWidth, scale) {\n var cache = this.arrowWidthCache = this.arrowWidthCache || {};\n var cachedVal = cache[edgeWidth + ', ' + scale];\n\n if (cachedVal) {\n return cachedVal;\n }\n\n cachedVal = Math.max(Math.pow(edgeWidth * 13.37, 0.9), 29) * scale;\n cache[edgeWidth + ', ' + scale] = cachedVal;\n return cachedVal;\n};\n\nvar BRp$c = {};\n\nBRp$c.findHaystackPoints = function (edges) {\n for (var i = 0; i < edges.length; i++) {\n var edge = edges[i];\n var _p = edge._private;\n var rs = _p.rscratch;\n\n if (!rs.haystack) {\n var angle = Math.random() * 2 * Math.PI;\n rs.source = {\n x: Math.cos(angle),\n y: Math.sin(angle)\n };\n angle = Math.random() * 2 * Math.PI;\n rs.target = {\n x: Math.cos(angle),\n y: Math.sin(angle)\n };\n }\n\n var src = _p.source;\n var tgt = _p.target;\n var srcPos = src.position();\n var tgtPos = tgt.position();\n var srcW = src.width();\n var tgtW = tgt.width();\n var srcH = src.height();\n var tgtH = tgt.height();\n var radius = edge.pstyle('haystack-radius').value;\n var halfRadius = radius / 2; // b/c have to half width/height\n\n rs.haystackPts = rs.allpts = [rs.source.x * srcW * halfRadius + srcPos.x, rs.source.y * srcH * halfRadius + srcPos.y, rs.target.x * tgtW * halfRadius + tgtPos.x, rs.target.y * tgtH * halfRadius + tgtPos.y];\n rs.midX = (rs.allpts[0] + rs.allpts[2]) / 2;\n rs.midY = (rs.allpts[1] + rs.allpts[3]) / 2; // always override as haystack in case set to different type previously\n\n rs.edgeType = 'haystack';\n rs.haystack = true;\n this.storeEdgeProjections(edge);\n this.calculateArrowAngles(edge);\n this.recalculateEdgeLabelProjections(edge);\n this.calculateLabelAngles(edge);\n }\n};\n\nBRp$c.findSegmentsPoints = function (edge, pairInfo) {\n // Segments (multiple straight lines)\n var rs = edge._private.rscratch;\n var posPts = pairInfo.posPts,\n intersectionPts = pairInfo.intersectionPts,\n vectorNormInverse = pairInfo.vectorNormInverse;\n var edgeDistances = edge.pstyle('edge-distances').value;\n var segmentWs = edge.pstyle('segment-weights');\n var segmentDs = edge.pstyle('segment-distances');\n var segmentsN = Math.min(segmentWs.pfValue.length, segmentDs.pfValue.length);\n rs.edgeType = 'segments';\n rs.segpts = [];\n\n for (var s = 0; s < segmentsN; s++) {\n var w = segmentWs.pfValue[s];\n var d = segmentDs.pfValue[s];\n var w1 = 1 - w;\n var w2 = w;\n var midptPts = edgeDistances === 'node-position' ? posPts : intersectionPts;\n var adjustedMidpt = {\n x: midptPts.x1 * w1 + midptPts.x2 * w2,\n y: midptPts.y1 * w1 + midptPts.y2 * w2\n };\n rs.segpts.push(adjustedMidpt.x + vectorNormInverse.x * d, adjustedMidpt.y + vectorNormInverse.y * d);\n }\n};\n\nBRp$c.findLoopPoints = function (edge, pairInfo, i, edgeIsUnbundled) {\n // Self-edge\n var rs = edge._private.rscratch;\n var dirCounts = pairInfo.dirCounts,\n srcPos = pairInfo.srcPos;\n var ctrlptDists = edge.pstyle('control-point-distances');\n var ctrlptDist = ctrlptDists ? ctrlptDists.pfValue[0] : undefined;\n var loopDir = edge.pstyle('loop-direction').pfValue;\n var loopSwp = edge.pstyle('loop-sweep').pfValue;\n var stepSize = edge.pstyle('control-point-step-size').pfValue;\n rs.edgeType = 'self';\n var j = i;\n var loopDist = stepSize;\n\n if (edgeIsUnbundled) {\n j = 0;\n loopDist = ctrlptDist;\n }\n\n var loopAngle = loopDir - Math.PI / 2;\n var outAngle = loopAngle - loopSwp / 2;\n var inAngle = loopAngle + loopSwp / 2; // increase by step size for overlapping loops, keyed on direction and sweep values\n\n var dc = String(loopDir + '_' + loopSwp);\n j = dirCounts[dc] === undefined ? dirCounts[dc] = 0 : ++dirCounts[dc];\n rs.ctrlpts = [srcPos.x + Math.cos(outAngle) * 1.4 * loopDist * (j / 3 + 1), srcPos.y + Math.sin(outAngle) * 1.4 * loopDist * (j / 3 + 1), srcPos.x + Math.cos(inAngle) * 1.4 * loopDist * (j / 3 + 1), srcPos.y + Math.sin(inAngle) * 1.4 * loopDist * (j / 3 + 1)];\n};\n\nBRp$c.findCompoundLoopPoints = function (edge, pairInfo, i, edgeIsUnbundled) {\n // Compound edge\n var rs = edge._private.rscratch;\n rs.edgeType = 'compound';\n var srcPos = pairInfo.srcPos,\n tgtPos = pairInfo.tgtPos,\n srcW = pairInfo.srcW,\n srcH = pairInfo.srcH,\n tgtW = pairInfo.tgtW,\n tgtH = pairInfo.tgtH;\n var stepSize = edge.pstyle('control-point-step-size').pfValue;\n var ctrlptDists = edge.pstyle('control-point-distances');\n var ctrlptDist = ctrlptDists ? ctrlptDists.pfValue[0] : undefined;\n var j = i;\n var loopDist = stepSize;\n\n if (edgeIsUnbundled) {\n j = 0;\n loopDist = ctrlptDist;\n }\n\n var loopW = 50;\n var loopaPos = {\n x: srcPos.x - srcW / 2,\n y: srcPos.y - srcH / 2\n };\n var loopbPos = {\n x: tgtPos.x - tgtW / 2,\n y: tgtPos.y - tgtH / 2\n };\n var loopPos = {\n x: Math.min(loopaPos.x, loopbPos.x),\n y: Math.min(loopaPos.y, loopbPos.y)\n }; // avoids cases with impossible beziers\n\n var minCompoundStretch = 0.5;\n var compoundStretchA = Math.max(minCompoundStretch, Math.log(srcW * 0.01));\n var compoundStretchB = Math.max(minCompoundStretch, Math.log(tgtW * 0.01));\n rs.ctrlpts = [loopPos.x, loopPos.y - (1 + Math.pow(loopW, 1.12) / 100) * loopDist * (j / 3 + 1) * compoundStretchA, loopPos.x - (1 + Math.pow(loopW, 1.12) / 100) * loopDist * (j / 3 + 1) * compoundStretchB, loopPos.y];\n};\n\nBRp$c.findStraightEdgePoints = function (edge) {\n // Straight edge within bundle\n edge._private.rscratch.edgeType = 'straight';\n};\n\nBRp$c.findBezierPoints = function (edge, pairInfo, i, edgeIsUnbundled, edgeIsSwapped) {\n var rs = edge._private.rscratch;\n var vectorNormInverse = pairInfo.vectorNormInverse,\n posPts = pairInfo.posPts,\n intersectionPts = pairInfo.intersectionPts;\n var edgeDistances = edge.pstyle('edge-distances').value;\n var stepSize = edge.pstyle('control-point-step-size').pfValue;\n var ctrlptDists = edge.pstyle('control-point-distances');\n var ctrlptWs = edge.pstyle('control-point-weights');\n var bezierN = ctrlptDists && ctrlptWs ? Math.min(ctrlptDists.value.length, ctrlptWs.value.length) : 1;\n var ctrlptDist = ctrlptDists ? ctrlptDists.pfValue[0] : undefined;\n var ctrlptWeight = ctrlptWs.value[0]; // (Multi)bezier\n\n var multi = edgeIsUnbundled;\n rs.edgeType = multi ? 'multibezier' : 'bezier';\n rs.ctrlpts = [];\n\n for (var b = 0; b < bezierN; b++) {\n var normctrlptDist = (0.5 - pairInfo.eles.length / 2 + i) * stepSize * (edgeIsSwapped ? -1 : 1);\n var manctrlptDist = void 0;\n var sign = signum(normctrlptDist);\n\n if (multi) {\n ctrlptDist = ctrlptDists ? ctrlptDists.pfValue[b] : stepSize; // fall back on step size\n\n ctrlptWeight = ctrlptWs.value[b];\n }\n\n if (edgeIsUnbundled) {\n // multi or single unbundled\n manctrlptDist = ctrlptDist;\n } else {\n manctrlptDist = ctrlptDist !== undefined ? sign * ctrlptDist : undefined;\n }\n\n var distanceFromMidpoint = manctrlptDist !== undefined ? manctrlptDist : normctrlptDist;\n var w1 = 1 - ctrlptWeight;\n var w2 = ctrlptWeight;\n var midptPts = edgeDistances === 'node-position' ? posPts : intersectionPts;\n var adjustedMidpt = {\n x: midptPts.x1 * w1 + midptPts.x2 * w2,\n y: midptPts.y1 * w1 + midptPts.y2 * w2\n };\n rs.ctrlpts.push(adjustedMidpt.x + vectorNormInverse.x * distanceFromMidpoint, adjustedMidpt.y + vectorNormInverse.y * distanceFromMidpoint);\n }\n};\n\nBRp$c.findTaxiPoints = function (edge, pairInfo) {\n // Taxicab geometry with two turns maximum\n var rs = edge._private.rscratch;\n rs.edgeType = 'segments';\n var VERTICAL = 'vertical';\n var HORIZONTAL = 'horizontal';\n var LEFTWARD = 'leftward';\n var RIGHTWARD = 'rightward';\n var DOWNWARD = 'downward';\n var UPWARD = 'upward';\n var AUTO = 'auto';\n var posPts = pairInfo.posPts,\n srcW = pairInfo.srcW,\n srcH = pairInfo.srcH,\n tgtW = pairInfo.tgtW,\n tgtH = pairInfo.tgtH;\n var edgeDistances = edge.pstyle('edge-distances').value;\n var dIncludesNodeBody = edgeDistances !== 'node-position';\n var taxiDir = edge.pstyle('taxi-direction').value;\n var rawTaxiDir = taxiDir; // unprocessed value\n\n var taxiTurn = edge.pstyle('taxi-turn');\n var turnIsPercent = taxiTurn.units === '%';\n var taxiTurnPfVal = taxiTurn.pfValue;\n var turnIsNegative = taxiTurnPfVal < 0; // i.e. from target side\n\n var minD = edge.pstyle('taxi-turn-min-distance').pfValue;\n var dw = dIncludesNodeBody ? (srcW + tgtW) / 2 : 0;\n var dh = dIncludesNodeBody ? (srcH + tgtH) / 2 : 0;\n var pdx = posPts.x2 - posPts.x1;\n var pdy = posPts.y2 - posPts.y1; // take away the effective w/h from the magnitude of the delta value\n\n var subDWH = function subDWH(dxy, dwh) {\n if (dxy > 0) {\n return Math.max(dxy - dwh, 0);\n } else {\n return Math.min(dxy + dwh, 0);\n }\n };\n\n var dx = subDWH(pdx, dw);\n var dy = subDWH(pdy, dh);\n var isExplicitDir = false;\n\n if (rawTaxiDir === AUTO) {\n taxiDir = Math.abs(dx) > Math.abs(dy) ? HORIZONTAL : VERTICAL;\n } else if (rawTaxiDir === UPWARD || rawTaxiDir === DOWNWARD) {\n taxiDir = VERTICAL;\n isExplicitDir = true;\n } else if (rawTaxiDir === LEFTWARD || rawTaxiDir === RIGHTWARD) {\n taxiDir = HORIZONTAL;\n isExplicitDir = true;\n }\n\n var isVert = taxiDir === VERTICAL;\n var l = isVert ? dy : dx;\n var pl = isVert ? pdy : pdx;\n var sgnL = signum(pl);\n var forcedDir = false;\n\n if (!(isExplicitDir && (turnIsPercent || turnIsNegative)) // forcing in this case would cause weird growing in the opposite direction\n && (rawTaxiDir === DOWNWARD && pl < 0 || rawTaxiDir === UPWARD && pl > 0 || rawTaxiDir === LEFTWARD && pl > 0 || rawTaxiDir === RIGHTWARD && pl < 0)) {\n sgnL *= -1;\n l = sgnL * Math.abs(l);\n forcedDir = true;\n }\n\n var d;\n\n if (turnIsPercent) {\n var p = taxiTurnPfVal < 0 ? 1 + taxiTurnPfVal : taxiTurnPfVal;\n d = p * l;\n } else {\n var k = taxiTurnPfVal < 0 ? l : 0;\n d = k + taxiTurnPfVal * sgnL;\n }\n\n var getIsTooClose = function getIsTooClose(d) {\n return Math.abs(d) < minD || Math.abs(d) >= Math.abs(l);\n };\n\n var isTooCloseSrc = getIsTooClose(d);\n var isTooCloseTgt = getIsTooClose(Math.abs(l) - Math.abs(d));\n var isTooClose = isTooCloseSrc || isTooCloseTgt;\n\n if (isTooClose && !forcedDir) {\n // non-ideal routing\n if (isVert) {\n // vertical fallbacks\n var lShapeInsideSrc = Math.abs(pl) <= srcH / 2;\n var lShapeInsideTgt = Math.abs(pdx) <= tgtW / 2;\n\n if (lShapeInsideSrc) {\n // horizontal Z-shape (direction not respected)\n var x = (posPts.x1 + posPts.x2) / 2;\n var y1 = posPts.y1,\n y2 = posPts.y2;\n rs.segpts = [x, y1, x, y2];\n } else if (lShapeInsideTgt) {\n // vertical Z-shape (distance not respected)\n var y = (posPts.y1 + posPts.y2) / 2;\n var x1 = posPts.x1,\n x2 = posPts.x2;\n rs.segpts = [x1, y, x2, y];\n } else {\n // L-shape fallback (turn distance not respected, but works well with tree siblings)\n rs.segpts = [posPts.x1, posPts.y2];\n }\n } else {\n // horizontal fallbacks\n var _lShapeInsideSrc = Math.abs(pl) <= srcW / 2;\n\n var _lShapeInsideTgt = Math.abs(pdy) <= tgtH / 2;\n\n if (_lShapeInsideSrc) {\n // vertical Z-shape (direction not respected)\n var _y = (posPts.y1 + posPts.y2) / 2;\n\n var _x = posPts.x1,\n _x2 = posPts.x2;\n rs.segpts = [_x, _y, _x2, _y];\n } else if (_lShapeInsideTgt) {\n // horizontal Z-shape (turn distance not respected)\n var _x3 = (posPts.x1 + posPts.x2) / 2;\n\n var _y2 = posPts.y1,\n _y3 = posPts.y2;\n rs.segpts = [_x3, _y2, _x3, _y3];\n } else {\n // L-shape (turn distance not respected, but works well for tree siblings)\n rs.segpts = [posPts.x2, posPts.y1];\n }\n }\n } else {\n // ideal routing\n if (isVert) {\n var _y4 = posPts.y1 + d + (dIncludesNodeBody ? srcH / 2 * sgnL : 0);\n\n var _x4 = posPts.x1,\n _x5 = posPts.x2;\n rs.segpts = [_x4, _y4, _x5, _y4];\n } else {\n // horizontal\n var _x6 = posPts.x1 + d + (dIncludesNodeBody ? srcW / 2 * sgnL : 0);\n\n var _y5 = posPts.y1,\n _y6 = posPts.y2;\n rs.segpts = [_x6, _y5, _x6, _y6];\n }\n }\n};\n\nBRp$c.tryToCorrectInvalidPoints = function (edge, pairInfo) {\n var rs = edge._private.rscratch; // can only correct beziers for now...\n\n if (rs.edgeType === 'bezier') {\n var srcPos = pairInfo.srcPos,\n tgtPos = pairInfo.tgtPos,\n srcW = pairInfo.srcW,\n srcH = pairInfo.srcH,\n tgtW = pairInfo.tgtW,\n tgtH = pairInfo.tgtH,\n srcShape = pairInfo.srcShape,\n tgtShape = pairInfo.tgtShape;\n var badStart = !number$1(rs.startX) || !number$1(rs.startY);\n var badAStart = !number$1(rs.arrowStartX) || !number$1(rs.arrowStartY);\n var badEnd = !number$1(rs.endX) || !number$1(rs.endY);\n var badAEnd = !number$1(rs.arrowEndX) || !number$1(rs.arrowEndY);\n var minCpADistFactor = 3;\n var arrowW = this.getArrowWidth(edge.pstyle('width').pfValue, edge.pstyle('arrow-scale').value) * this.arrowShapeWidth;\n var minCpADist = minCpADistFactor * arrowW;\n var startACpDist = dist({\n x: rs.ctrlpts[0],\n y: rs.ctrlpts[1]\n }, {\n x: rs.startX,\n y: rs.startY\n });\n var closeStartACp = startACpDist < minCpADist;\n var endACpDist = dist({\n x: rs.ctrlpts[0],\n y: rs.ctrlpts[1]\n }, {\n x: rs.endX,\n y: rs.endY\n });\n var closeEndACp = endACpDist < minCpADist;\n var overlapping = false;\n\n if (badStart || badAStart || closeStartACp) {\n overlapping = true; // project control point along line from src centre to outside the src shape\n // (otherwise intersection will yield nothing)\n\n var cpD = {\n // delta\n x: rs.ctrlpts[0] - srcPos.x,\n y: rs.ctrlpts[1] - srcPos.y\n };\n var cpL = Math.sqrt(cpD.x * cpD.x + cpD.y * cpD.y); // length of line\n\n var cpM = {\n // normalised delta\n x: cpD.x / cpL,\n y: cpD.y / cpL\n };\n var radius = Math.max(srcW, srcH);\n var cpProj = {\n // *2 radius guarantees outside shape\n x: rs.ctrlpts[0] + cpM.x * 2 * radius,\n y: rs.ctrlpts[1] + cpM.y * 2 * radius\n };\n var srcCtrlPtIntn = srcShape.intersectLine(srcPos.x, srcPos.y, srcW, srcH, cpProj.x, cpProj.y, 0);\n\n if (closeStartACp) {\n rs.ctrlpts[0] = rs.ctrlpts[0] + cpM.x * (minCpADist - startACpDist);\n rs.ctrlpts[1] = rs.ctrlpts[1] + cpM.y * (minCpADist - startACpDist);\n } else {\n rs.ctrlpts[0] = srcCtrlPtIntn[0] + cpM.x * minCpADist;\n rs.ctrlpts[1] = srcCtrlPtIntn[1] + cpM.y * minCpADist;\n }\n }\n\n if (badEnd || badAEnd || closeEndACp) {\n overlapping = true; // project control point along line from tgt centre to outside the tgt shape\n // (otherwise intersection will yield nothing)\n\n var _cpD = {\n // delta\n x: rs.ctrlpts[0] - tgtPos.x,\n y: rs.ctrlpts[1] - tgtPos.y\n };\n\n var _cpL = Math.sqrt(_cpD.x * _cpD.x + _cpD.y * _cpD.y); // length of line\n\n\n var _cpM = {\n // normalised delta\n x: _cpD.x / _cpL,\n y: _cpD.y / _cpL\n };\n\n var _radius = Math.max(srcW, srcH);\n\n var _cpProj = {\n // *2 radius guarantees outside shape\n x: rs.ctrlpts[0] + _cpM.x * 2 * _radius,\n y: rs.ctrlpts[1] + _cpM.y * 2 * _radius\n };\n var tgtCtrlPtIntn = tgtShape.intersectLine(tgtPos.x, tgtPos.y, tgtW, tgtH, _cpProj.x, _cpProj.y, 0);\n\n if (closeEndACp) {\n rs.ctrlpts[0] = rs.ctrlpts[0] + _cpM.x * (minCpADist - endACpDist);\n rs.ctrlpts[1] = rs.ctrlpts[1] + _cpM.y * (minCpADist - endACpDist);\n } else {\n rs.ctrlpts[0] = tgtCtrlPtIntn[0] + _cpM.x * minCpADist;\n rs.ctrlpts[1] = tgtCtrlPtIntn[1] + _cpM.y * minCpADist;\n }\n }\n\n if (overlapping) {\n // recalc endpts\n this.findEndpoints(edge);\n }\n }\n};\n\nBRp$c.storeAllpts = function (edge) {\n var rs = edge._private.rscratch;\n\n if (rs.edgeType === 'multibezier' || rs.edgeType === 'bezier' || rs.edgeType === 'self' || rs.edgeType === 'compound') {\n rs.allpts = [];\n rs.allpts.push(rs.startX, rs.startY);\n\n for (var b = 0; b + 1 < rs.ctrlpts.length; b += 2) {\n // ctrl pt itself\n rs.allpts.push(rs.ctrlpts[b], rs.ctrlpts[b + 1]); // the midpt between ctrlpts as intermediate destination pts\n\n if (b + 3 < rs.ctrlpts.length) {\n rs.allpts.push((rs.ctrlpts[b] + rs.ctrlpts[b + 2]) / 2, (rs.ctrlpts[b + 1] + rs.ctrlpts[b + 3]) / 2);\n }\n }\n\n rs.allpts.push(rs.endX, rs.endY);\n var m, mt;\n\n if (rs.ctrlpts.length / 2 % 2 === 0) {\n m = rs.allpts.length / 2 - 1;\n rs.midX = rs.allpts[m];\n rs.midY = rs.allpts[m + 1];\n } else {\n m = rs.allpts.length / 2 - 3;\n mt = 0.5;\n rs.midX = qbezierAt(rs.allpts[m], rs.allpts[m + 2], rs.allpts[m + 4], mt);\n rs.midY = qbezierAt(rs.allpts[m + 1], rs.allpts[m + 3], rs.allpts[m + 5], mt);\n }\n } else if (rs.edgeType === 'straight') {\n // need to calc these after endpts\n rs.allpts = [rs.startX, rs.startY, rs.endX, rs.endY]; // default midpt for labels etc\n\n rs.midX = (rs.startX + rs.endX + rs.arrowStartX + rs.arrowEndX) / 4;\n rs.midY = (rs.startY + rs.endY + rs.arrowStartY + rs.arrowEndY) / 4;\n } else if (rs.edgeType === 'segments') {\n rs.allpts = [];\n rs.allpts.push(rs.startX, rs.startY);\n rs.allpts.push.apply(rs.allpts, rs.segpts);\n rs.allpts.push(rs.endX, rs.endY);\n\n if (rs.segpts.length % 4 === 0) {\n var i2 = rs.segpts.length / 2;\n var i1 = i2 - 2;\n rs.midX = (rs.segpts[i1] + rs.segpts[i2]) / 2;\n rs.midY = (rs.segpts[i1 + 1] + rs.segpts[i2 + 1]) / 2;\n } else {\n var _i = rs.segpts.length / 2 - 1;\n\n rs.midX = rs.segpts[_i];\n rs.midY = rs.segpts[_i + 1];\n }\n }\n};\n\nBRp$c.checkForInvalidEdgeWarning = function (edge) {\n var rs = edge[0]._private.rscratch;\n\n if (rs.nodesOverlap || number$1(rs.startX) && number$1(rs.startY) && number$1(rs.endX) && number$1(rs.endY)) {\n rs.loggedErr = false;\n } else {\n if (!rs.loggedErr) {\n rs.loggedErr = true;\n warn('Edge `' + edge.id() + '` has invalid endpoints and so it is impossible to draw. Adjust your edge style (e.g. control points) accordingly or use an alternative edge type. This is expected behaviour when the source node and the target node overlap.');\n }\n }\n};\n\nBRp$c.findEdgeControlPoints = function (edges) {\n var _this = this;\n\n if (!edges || edges.length === 0) {\n return;\n }\n\n var r = this;\n var cy = r.cy;\n var hasCompounds = cy.hasCompoundNodes();\n var hashTable = {\n map: new Map$1(),\n get: function get(pairId) {\n var map2 = this.map.get(pairId[0]);\n\n if (map2 != null) {\n return map2.get(pairId[1]);\n } else {\n return null;\n }\n },\n set: function set(pairId, val) {\n var map2 = this.map.get(pairId[0]);\n\n if (map2 == null) {\n map2 = new Map$1();\n this.map.set(pairId[0], map2);\n }\n\n map2.set(pairId[1], val);\n }\n };\n var pairIds = [];\n var haystackEdges = []; // create a table of edge (src, tgt) => list of edges between them\n\n for (var i = 0; i < edges.length; i++) {\n var edge = edges[i];\n var _p = edge._private;\n var curveStyle = edge.pstyle('curve-style').value; // ignore edges who are not to be displayed\n // they shouldn't take up space\n\n if (edge.removed() || !edge.takesUpSpace()) {\n continue;\n }\n\n if (curveStyle === 'haystack') {\n haystackEdges.push(edge);\n continue;\n }\n\n var edgeIsUnbundled = curveStyle === 'unbundled-bezier' || curveStyle === 'segments' || curveStyle === 'straight' || curveStyle === 'straight-triangle' || curveStyle === 'taxi';\n var edgeIsBezier = curveStyle === 'unbundled-bezier' || curveStyle === 'bezier';\n var src = _p.source;\n var tgt = _p.target;\n var srcIndex = src.poolIndex();\n var tgtIndex = tgt.poolIndex();\n var pairId = [srcIndex, tgtIndex].sort();\n var tableEntry = hashTable.get(pairId);\n\n if (tableEntry == null) {\n tableEntry = {\n eles: []\n };\n hashTable.set(pairId, tableEntry);\n pairIds.push(pairId);\n }\n\n tableEntry.eles.push(edge);\n\n if (edgeIsUnbundled) {\n tableEntry.hasUnbundled = true;\n }\n\n if (edgeIsBezier) {\n tableEntry.hasBezier = true;\n }\n } // for each pair (src, tgt), create the ctrl pts\n // Nested for loop is OK; total number of iterations for both loops = edgeCount\n\n\n var _loop = function _loop(p) {\n var pairId = pairIds[p];\n var pairInfo = hashTable.get(pairId);\n var swappedpairInfo = void 0;\n\n if (!pairInfo.hasUnbundled) {\n var pllEdges = pairInfo.eles[0].parallelEdges().filter(function (e) {\n return e.isBundledBezier();\n });\n clearArray(pairInfo.eles);\n pllEdges.forEach(function (edge) {\n return pairInfo.eles.push(edge);\n }); // for each pair id, the edges should be sorted by index\n\n pairInfo.eles.sort(function (edge1, edge2) {\n return edge1.poolIndex() - edge2.poolIndex();\n });\n }\n\n var firstEdge = pairInfo.eles[0];\n var src = firstEdge.source();\n var tgt = firstEdge.target(); // make sure src/tgt distinction is consistent w.r.t. pairId\n\n if (src.poolIndex() > tgt.poolIndex()) {\n var temp = src;\n src = tgt;\n tgt = temp;\n }\n\n var srcPos = pairInfo.srcPos = src.position();\n var tgtPos = pairInfo.tgtPos = tgt.position();\n var srcW = pairInfo.srcW = src.outerWidth();\n var srcH = pairInfo.srcH = src.outerHeight();\n var tgtW = pairInfo.tgtW = tgt.outerWidth();\n var tgtH = pairInfo.tgtH = tgt.outerHeight();\n\n var srcShape = pairInfo.srcShape = r.nodeShapes[_this.getNodeShape(src)];\n\n var tgtShape = pairInfo.tgtShape = r.nodeShapes[_this.getNodeShape(tgt)];\n\n pairInfo.dirCounts = {\n 'north': 0,\n 'west': 0,\n 'south': 0,\n 'east': 0,\n 'northwest': 0,\n 'southwest': 0,\n 'northeast': 0,\n 'southeast': 0\n };\n\n for (var _i2 = 0; _i2 < pairInfo.eles.length; _i2++) {\n var _edge = pairInfo.eles[_i2];\n var rs = _edge[0]._private.rscratch;\n\n var _curveStyle = _edge.pstyle('curve-style').value;\n\n var _edgeIsUnbundled = _curveStyle === 'unbundled-bezier' || _curveStyle === 'segments' || _curveStyle === 'taxi'; // whether the normalised pair order is the reverse of the edge's src-tgt order\n\n\n var edgeIsSwapped = !src.same(_edge.source());\n\n if (!pairInfo.calculatedIntersection && src !== tgt && (pairInfo.hasBezier || pairInfo.hasUnbundled)) {\n pairInfo.calculatedIntersection = true; // pt outside src shape to calc distance/displacement from src to tgt\n\n var srcOutside = srcShape.intersectLine(srcPos.x, srcPos.y, srcW, srcH, tgtPos.x, tgtPos.y, 0);\n var srcIntn = pairInfo.srcIntn = srcOutside; // pt outside tgt shape to calc distance/displacement from src to tgt\n\n var tgtOutside = tgtShape.intersectLine(tgtPos.x, tgtPos.y, tgtW, tgtH, srcPos.x, srcPos.y, 0);\n var tgtIntn = pairInfo.tgtIntn = tgtOutside;\n var intersectionPts = pairInfo.intersectionPts = {\n x1: srcOutside[0],\n x2: tgtOutside[0],\n y1: srcOutside[1],\n y2: tgtOutside[1]\n };\n var posPts = pairInfo.posPts = {\n x1: srcPos.x,\n x2: tgtPos.x,\n y1: srcPos.y,\n y2: tgtPos.y\n };\n var dy = tgtOutside[1] - srcOutside[1];\n var dx = tgtOutside[0] - srcOutside[0];\n var l = Math.sqrt(dx * dx + dy * dy);\n var vector = pairInfo.vector = {\n x: dx,\n y: dy\n };\n var vectorNorm = pairInfo.vectorNorm = {\n x: vector.x / l,\n y: vector.y / l\n };\n var vectorNormInverse = {\n x: -vectorNorm.y,\n y: vectorNorm.x\n }; // if node shapes overlap, then no ctrl pts to draw\n\n pairInfo.nodesOverlap = !number$1(l) || tgtShape.checkPoint(srcOutside[0], srcOutside[1], 0, tgtW, tgtH, tgtPos.x, tgtPos.y) || srcShape.checkPoint(tgtOutside[0], tgtOutside[1], 0, srcW, srcH, srcPos.x, srcPos.y);\n pairInfo.vectorNormInverse = vectorNormInverse;\n swappedpairInfo = {\n nodesOverlap: pairInfo.nodesOverlap,\n dirCounts: pairInfo.dirCounts,\n calculatedIntersection: true,\n hasBezier: pairInfo.hasBezier,\n hasUnbundled: pairInfo.hasUnbundled,\n eles: pairInfo.eles,\n srcPos: tgtPos,\n tgtPos: srcPos,\n srcW: tgtW,\n srcH: tgtH,\n tgtW: srcW,\n tgtH: srcH,\n srcIntn: tgtIntn,\n tgtIntn: srcIntn,\n srcShape: tgtShape,\n tgtShape: srcShape,\n posPts: {\n x1: posPts.x2,\n y1: posPts.y2,\n x2: posPts.x1,\n y2: posPts.y1\n },\n intersectionPts: {\n x1: intersectionPts.x2,\n y1: intersectionPts.y2,\n x2: intersectionPts.x1,\n y2: intersectionPts.y1\n },\n vector: {\n x: -vector.x,\n y: -vector.y\n },\n vectorNorm: {\n x: -vectorNorm.x,\n y: -vectorNorm.y\n },\n vectorNormInverse: {\n x: -vectorNormInverse.x,\n y: -vectorNormInverse.y\n }\n };\n }\n\n var passedPairInfo = edgeIsSwapped ? swappedpairInfo : pairInfo;\n rs.nodesOverlap = passedPairInfo.nodesOverlap;\n rs.srcIntn = passedPairInfo.srcIntn;\n rs.tgtIntn = passedPairInfo.tgtIntn;\n\n if (hasCompounds && (src.isParent() || src.isChild() || tgt.isParent() || tgt.isChild()) && (src.parents().anySame(tgt) || tgt.parents().anySame(src) || src.same(tgt) && src.isParent())) {\n _this.findCompoundLoopPoints(_edge, passedPairInfo, _i2, _edgeIsUnbundled);\n } else if (src === tgt) {\n _this.findLoopPoints(_edge, passedPairInfo, _i2, _edgeIsUnbundled);\n } else if (_curveStyle === 'segments') {\n _this.findSegmentsPoints(_edge, passedPairInfo);\n } else if (_curveStyle === 'taxi') {\n _this.findTaxiPoints(_edge, passedPairInfo);\n } else if (_curveStyle === 'straight' || !_edgeIsUnbundled && pairInfo.eles.length % 2 === 1 && _i2 === Math.floor(pairInfo.eles.length / 2)) {\n _this.findStraightEdgePoints(_edge);\n } else {\n _this.findBezierPoints(_edge, passedPairInfo, _i2, _edgeIsUnbundled, edgeIsSwapped);\n }\n\n _this.findEndpoints(_edge);\n\n _this.tryToCorrectInvalidPoints(_edge, passedPairInfo);\n\n _this.checkForInvalidEdgeWarning(_edge);\n\n _this.storeAllpts(_edge);\n\n _this.storeEdgeProjections(_edge);\n\n _this.calculateArrowAngles(_edge);\n\n _this.recalculateEdgeLabelProjections(_edge);\n\n _this.calculateLabelAngles(_edge);\n } // for pair edges\n\n };\n\n for (var p = 0; p < pairIds.length; p++) {\n _loop(p);\n } // for pair ids\n // haystacks avoid the expense of pairInfo stuff (intersections etc.)\n\n\n this.findHaystackPoints(haystackEdges);\n};\n\nfunction getPts(pts) {\n var retPts = [];\n\n if (pts == null) {\n return;\n }\n\n for (var i = 0; i < pts.length; i += 2) {\n var x = pts[i];\n var y = pts[i + 1];\n retPts.push({\n x: x,\n y: y\n });\n }\n\n return retPts;\n}\n\nBRp$c.getSegmentPoints = function (edge) {\n var rs = edge[0]._private.rscratch;\n var type = rs.edgeType;\n\n if (type === 'segments') {\n this.recalculateRenderedStyle(edge);\n return getPts(rs.segpts);\n }\n};\n\nBRp$c.getControlPoints = function (edge) {\n var rs = edge[0]._private.rscratch;\n var type = rs.edgeType;\n\n if (type === 'bezier' || type === 'multibezier' || type === 'self' || type === 'compound') {\n this.recalculateRenderedStyle(edge);\n return getPts(rs.ctrlpts);\n }\n};\n\nBRp$c.getEdgeMidpoint = function (edge) {\n var rs = edge[0]._private.rscratch;\n this.recalculateRenderedStyle(edge);\n return {\n x: rs.midX,\n y: rs.midY\n };\n};\n\nvar BRp$b = {};\n\nBRp$b.manualEndptToPx = function (node, prop) {\n var r = this;\n var npos = node.position();\n var w = node.outerWidth();\n var h = node.outerHeight();\n\n if (prop.value.length === 2) {\n var p = [prop.pfValue[0], prop.pfValue[1]];\n\n if (prop.units[0] === '%') {\n p[0] = p[0] * w;\n }\n\n if (prop.units[1] === '%') {\n p[1] = p[1] * h;\n }\n\n p[0] += npos.x;\n p[1] += npos.y;\n return p;\n } else {\n var angle = prop.pfValue[0];\n angle = -Math.PI / 2 + angle; // start at 12 o'clock\n\n var l = 2 * Math.max(w, h);\n var _p = [npos.x + Math.cos(angle) * l, npos.y + Math.sin(angle) * l];\n return r.nodeShapes[this.getNodeShape(node)].intersectLine(npos.x, npos.y, w, h, _p[0], _p[1], 0);\n }\n};\n\nBRp$b.findEndpoints = function (edge) {\n var r = this;\n var intersect;\n var source = edge.source()[0];\n var target = edge.target()[0];\n var srcPos = source.position();\n var tgtPos = target.position();\n var tgtArShape = edge.pstyle('target-arrow-shape').value;\n var srcArShape = edge.pstyle('source-arrow-shape').value;\n var tgtDist = edge.pstyle('target-distance-from-node').pfValue;\n var srcDist = edge.pstyle('source-distance-from-node').pfValue;\n var curveStyle = edge.pstyle('curve-style').value;\n var rs = edge._private.rscratch;\n var et = rs.edgeType;\n var taxi = curveStyle === 'taxi';\n var self = et === 'self' || et === 'compound';\n var bezier = et === 'bezier' || et === 'multibezier' || self;\n var multi = et !== 'bezier';\n var lines = et === 'straight' || et === 'segments';\n var segments = et === 'segments';\n var hasEndpts = bezier || multi || lines;\n var overrideEndpts = self || taxi;\n var srcManEndpt = edge.pstyle('source-endpoint');\n var srcManEndptVal = overrideEndpts ? 'outside-to-node' : srcManEndpt.value;\n var tgtManEndpt = edge.pstyle('target-endpoint');\n var tgtManEndptVal = overrideEndpts ? 'outside-to-node' : tgtManEndpt.value;\n rs.srcManEndpt = srcManEndpt;\n rs.tgtManEndpt = tgtManEndpt;\n var p1; // last known point of edge on target side\n\n var p2; // last known point of edge on source side\n\n var p1_i; // point to intersect with target shape\n\n var p2_i; // point to intersect with source shape\n\n if (bezier) {\n var cpStart = [rs.ctrlpts[0], rs.ctrlpts[1]];\n var cpEnd = multi ? [rs.ctrlpts[rs.ctrlpts.length - 2], rs.ctrlpts[rs.ctrlpts.length - 1]] : cpStart;\n p1 = cpEnd;\n p2 = cpStart;\n } else if (lines) {\n var srcArrowFromPt = !segments ? [tgtPos.x, tgtPos.y] : rs.segpts.slice(0, 2);\n var tgtArrowFromPt = !segments ? [srcPos.x, srcPos.y] : rs.segpts.slice(rs.segpts.length - 2);\n p1 = tgtArrowFromPt;\n p2 = srcArrowFromPt;\n }\n\n if (tgtManEndptVal === 'inside-to-node') {\n intersect = [tgtPos.x, tgtPos.y];\n } else if (tgtManEndpt.units) {\n intersect = this.manualEndptToPx(target, tgtManEndpt);\n } else if (tgtManEndptVal === 'outside-to-line') {\n intersect = rs.tgtIntn; // use cached value from ctrlpt calc\n } else {\n if (tgtManEndptVal === 'outside-to-node' || tgtManEndptVal === 'outside-to-node-or-label') {\n p1_i = p1;\n } else if (tgtManEndptVal === 'outside-to-line' || tgtManEndptVal === 'outside-to-line-or-label') {\n p1_i = [srcPos.x, srcPos.y];\n }\n\n intersect = r.nodeShapes[this.getNodeShape(target)].intersectLine(tgtPos.x, tgtPos.y, target.outerWidth(), target.outerHeight(), p1_i[0], p1_i[1], 0);\n\n if (tgtManEndptVal === 'outside-to-node-or-label' || tgtManEndptVal === 'outside-to-line-or-label') {\n var trs = target._private.rscratch;\n var lw = trs.labelWidth;\n var lh = trs.labelHeight;\n var lx = trs.labelX;\n var ly = trs.labelY;\n var lw2 = lw / 2;\n var lh2 = lh / 2;\n var va = target.pstyle('text-valign').value;\n\n if (va === 'top') {\n ly -= lh2;\n } else if (va === 'bottom') {\n ly += lh2;\n }\n\n var ha = target.pstyle('text-halign').value;\n\n if (ha === 'left') {\n lx -= lw2;\n } else if (ha === 'right') {\n lx += lw2;\n }\n\n var labelIntersect = polygonIntersectLine(p1_i[0], p1_i[1], [lx - lw2, ly - lh2, lx + lw2, ly - lh2, lx + lw2, ly + lh2, lx - lw2, ly + lh2], tgtPos.x, tgtPos.y);\n\n if (labelIntersect.length > 0) {\n var refPt = srcPos;\n var intSqdist = sqdist(refPt, array2point(intersect));\n var labIntSqdist = sqdist(refPt, array2point(labelIntersect));\n var minSqDist = intSqdist;\n\n if (labIntSqdist < intSqdist) {\n intersect = labelIntersect;\n minSqDist = labIntSqdist;\n }\n\n if (labelIntersect.length > 2) {\n var labInt2SqDist = sqdist(refPt, {\n x: labelIntersect[2],\n y: labelIntersect[3]\n });\n\n if (labInt2SqDist < minSqDist) {\n intersect = [labelIntersect[2], labelIntersect[3]];\n }\n }\n }\n }\n }\n\n var arrowEnd = shortenIntersection(intersect, p1, r.arrowShapes[tgtArShape].spacing(edge) + tgtDist);\n var edgeEnd = shortenIntersection(intersect, p1, r.arrowShapes[tgtArShape].gap(edge) + tgtDist);\n rs.endX = edgeEnd[0];\n rs.endY = edgeEnd[1];\n rs.arrowEndX = arrowEnd[0];\n rs.arrowEndY = arrowEnd[1];\n\n if (srcManEndptVal === 'inside-to-node') {\n intersect = [srcPos.x, srcPos.y];\n } else if (srcManEndpt.units) {\n intersect = this.manualEndptToPx(source, srcManEndpt);\n } else if (srcManEndptVal === 'outside-to-line') {\n intersect = rs.srcIntn; // use cached value from ctrlpt calc\n } else {\n if (srcManEndptVal === 'outside-to-node' || srcManEndptVal === 'outside-to-node-or-label') {\n p2_i = p2;\n } else if (srcManEndptVal === 'outside-to-line' || srcManEndptVal === 'outside-to-line-or-label') {\n p2_i = [tgtPos.x, tgtPos.y];\n }\n\n intersect = r.nodeShapes[this.getNodeShape(source)].intersectLine(srcPos.x, srcPos.y, source.outerWidth(), source.outerHeight(), p2_i[0], p2_i[1], 0);\n\n if (srcManEndptVal === 'outside-to-node-or-label' || srcManEndptVal === 'outside-to-line-or-label') {\n var srs = source._private.rscratch;\n var _lw = srs.labelWidth;\n var _lh = srs.labelHeight;\n var _lx = srs.labelX;\n var _ly = srs.labelY;\n\n var _lw2 = _lw / 2;\n\n var _lh2 = _lh / 2;\n\n var _va = source.pstyle('text-valign').value;\n\n if (_va === 'top') {\n _ly -= _lh2;\n } else if (_va === 'bottom') {\n _ly += _lh2;\n }\n\n var _ha = source.pstyle('text-halign').value;\n\n if (_ha === 'left') {\n _lx -= _lw2;\n } else if (_ha === 'right') {\n _lx += _lw2;\n }\n\n var _labelIntersect = polygonIntersectLine(p2_i[0], p2_i[1], [_lx - _lw2, _ly - _lh2, _lx + _lw2, _ly - _lh2, _lx + _lw2, _ly + _lh2, _lx - _lw2, _ly + _lh2], srcPos.x, srcPos.y);\n\n if (_labelIntersect.length > 0) {\n var _refPt = tgtPos;\n\n var _intSqdist = sqdist(_refPt, array2point(intersect));\n\n var _labIntSqdist = sqdist(_refPt, array2point(_labelIntersect));\n\n var _minSqDist = _intSqdist;\n\n if (_labIntSqdist < _intSqdist) {\n intersect = [_labelIntersect[0], _labelIntersect[1]];\n _minSqDist = _labIntSqdist;\n }\n\n if (_labelIntersect.length > 2) {\n var _labInt2SqDist = sqdist(_refPt, {\n x: _labelIntersect[2],\n y: _labelIntersect[3]\n });\n\n if (_labInt2SqDist < _minSqDist) {\n intersect = [_labelIntersect[2], _labelIntersect[3]];\n }\n }\n }\n }\n }\n\n var arrowStart = shortenIntersection(intersect, p2, r.arrowShapes[srcArShape].spacing(edge) + srcDist);\n var edgeStart = shortenIntersection(intersect, p2, r.arrowShapes[srcArShape].gap(edge) + srcDist);\n rs.startX = edgeStart[0];\n rs.startY = edgeStart[1];\n rs.arrowStartX = arrowStart[0];\n rs.arrowStartY = arrowStart[1];\n\n if (hasEndpts) {\n if (!number$1(rs.startX) || !number$1(rs.startY) || !number$1(rs.endX) || !number$1(rs.endY)) {\n rs.badLine = true;\n } else {\n rs.badLine = false;\n }\n }\n};\n\nBRp$b.getSourceEndpoint = function (edge) {\n var rs = edge[0]._private.rscratch;\n this.recalculateRenderedStyle(edge);\n\n switch (rs.edgeType) {\n case 'haystack':\n return {\n x: rs.haystackPts[0],\n y: rs.haystackPts[1]\n };\n\n default:\n return {\n x: rs.arrowStartX,\n y: rs.arrowStartY\n };\n }\n};\n\nBRp$b.getTargetEndpoint = function (edge) {\n var rs = edge[0]._private.rscratch;\n this.recalculateRenderedStyle(edge);\n\n switch (rs.edgeType) {\n case 'haystack':\n return {\n x: rs.haystackPts[2],\n y: rs.haystackPts[3]\n };\n\n default:\n return {\n x: rs.arrowEndX,\n y: rs.arrowEndY\n };\n }\n};\n\nvar BRp$a = {};\n\nfunction pushBezierPts(r, edge, pts) {\n var qbezierAt$1 = function qbezierAt$1(p1, p2, p3, t) {\n return qbezierAt(p1, p2, p3, t);\n };\n\n var _p = edge._private;\n var bpts = _p.rstyle.bezierPts;\n\n for (var i = 0; i < r.bezierProjPcts.length; i++) {\n var p = r.bezierProjPcts[i];\n bpts.push({\n x: qbezierAt$1(pts[0], pts[2], pts[4], p),\n y: qbezierAt$1(pts[1], pts[3], pts[5], p)\n });\n }\n}\n\nBRp$a.storeEdgeProjections = function (edge) {\n var _p = edge._private;\n var rs = _p.rscratch;\n var et = rs.edgeType; // clear the cached points state\n\n _p.rstyle.bezierPts = null;\n _p.rstyle.linePts = null;\n _p.rstyle.haystackPts = null;\n\n if (et === 'multibezier' || et === 'bezier' || et === 'self' || et === 'compound') {\n _p.rstyle.bezierPts = [];\n\n for (var i = 0; i + 5 < rs.allpts.length; i += 4) {\n pushBezierPts(this, edge, rs.allpts.slice(i, i + 6));\n }\n } else if (et === 'segments') {\n var lpts = _p.rstyle.linePts = [];\n\n for (var i = 0; i + 1 < rs.allpts.length; i += 2) {\n lpts.push({\n x: rs.allpts[i],\n y: rs.allpts[i + 1]\n });\n }\n } else if (et === 'haystack') {\n var hpts = rs.haystackPts;\n _p.rstyle.haystackPts = [{\n x: hpts[0],\n y: hpts[1]\n }, {\n x: hpts[2],\n y: hpts[3]\n }];\n }\n\n _p.rstyle.arrowWidth = this.getArrowWidth(edge.pstyle('width').pfValue, edge.pstyle('arrow-scale').value) * this.arrowShapeWidth;\n};\n\nBRp$a.recalculateEdgeProjections = function (edges) {\n this.findEdgeControlPoints(edges);\n};\n\n/* global document */\n\nvar BRp$9 = {};\n\nBRp$9.recalculateNodeLabelProjection = function (node) {\n var content = node.pstyle('label').strValue;\n\n if (emptyString(content)) {\n return;\n }\n\n var textX, textY;\n var _p = node._private;\n var nodeWidth = node.width();\n var nodeHeight = node.height();\n var padding = node.padding();\n var nodePos = node.position();\n var textHalign = node.pstyle('text-halign').strValue;\n var textValign = node.pstyle('text-valign').strValue;\n var rs = _p.rscratch;\n var rstyle = _p.rstyle;\n\n switch (textHalign) {\n case 'left':\n textX = nodePos.x - nodeWidth / 2 - padding;\n break;\n\n case 'right':\n textX = nodePos.x + nodeWidth / 2 + padding;\n break;\n\n default:\n // e.g. center\n textX = nodePos.x;\n }\n\n switch (textValign) {\n case 'top':\n textY = nodePos.y - nodeHeight / 2 - padding;\n break;\n\n case 'bottom':\n textY = nodePos.y + nodeHeight / 2 + padding;\n break;\n\n default:\n // e.g. middle\n textY = nodePos.y;\n }\n\n rs.labelX = textX;\n rs.labelY = textY;\n rstyle.labelX = textX;\n rstyle.labelY = textY;\n this.calculateLabelAngles(node);\n this.applyLabelDimensions(node);\n};\n\nvar lineAngleFromDelta = function lineAngleFromDelta(dx, dy) {\n var angle = Math.atan(dy / dx);\n\n if (dx === 0 && angle < 0) {\n angle = angle * -1;\n }\n\n return angle;\n};\n\nvar lineAngle = function lineAngle(p0, p1) {\n var dx = p1.x - p0.x;\n var dy = p1.y - p0.y;\n return lineAngleFromDelta(dx, dy);\n};\n\nvar bezierAngle = function bezierAngle(p0, p1, p2, t) {\n var t0 = bound(0, t - 0.001, 1);\n var t1 = bound(0, t + 0.001, 1);\n var lp0 = qbezierPtAt(p0, p1, p2, t0);\n var lp1 = qbezierPtAt(p0, p1, p2, t1);\n return lineAngle(lp0, lp1);\n};\n\nBRp$9.recalculateEdgeLabelProjections = function (edge) {\n var p;\n var _p = edge._private;\n var rs = _p.rscratch;\n var r = this;\n var content = {\n mid: edge.pstyle('label').strValue,\n source: edge.pstyle('source-label').strValue,\n target: edge.pstyle('target-label').strValue\n };\n\n if (content.mid || content.source || content.target) ; else {\n return; // no labels => no calcs\n } // add center point to style so bounding box calculations can use it\n //\n\n\n p = {\n x: rs.midX,\n y: rs.midY\n };\n\n var setRs = function setRs(propName, prefix, value) {\n setPrefixedProperty(_p.rscratch, propName, prefix, value);\n setPrefixedProperty(_p.rstyle, propName, prefix, value);\n };\n\n setRs('labelX', null, p.x);\n setRs('labelY', null, p.y);\n var midAngle = lineAngleFromDelta(rs.midDispX, rs.midDispY);\n setRs('labelAutoAngle', null, midAngle);\n\n var createControlPointInfo = function createControlPointInfo() {\n if (createControlPointInfo.cache) {\n return createControlPointInfo.cache;\n } // use cache so only 1x per edge\n\n\n var ctrlpts = []; // store each ctrlpt info init\n\n for (var i = 0; i + 5 < rs.allpts.length; i += 4) {\n var p0 = {\n x: rs.allpts[i],\n y: rs.allpts[i + 1]\n };\n var p1 = {\n x: rs.allpts[i + 2],\n y: rs.allpts[i + 3]\n }; // ctrlpt\n\n var p2 = {\n x: rs.allpts[i + 4],\n y: rs.allpts[i + 5]\n };\n ctrlpts.push({\n p0: p0,\n p1: p1,\n p2: p2,\n startDist: 0,\n length: 0,\n segments: []\n });\n }\n\n var bpts = _p.rstyle.bezierPts;\n var nProjs = r.bezierProjPcts.length;\n\n function addSegment(cp, p0, p1, t0, t1) {\n var length = dist(p0, p1);\n var prevSegment = cp.segments[cp.segments.length - 1];\n var segment = {\n p0: p0,\n p1: p1,\n t0: t0,\n t1: t1,\n startDist: prevSegment ? prevSegment.startDist + prevSegment.length : 0,\n length: length\n };\n cp.segments.push(segment);\n cp.length += length;\n } // update each ctrlpt with segment info\n\n\n for (var _i = 0; _i < ctrlpts.length; _i++) {\n var cp = ctrlpts[_i];\n var prevCp = ctrlpts[_i - 1];\n\n if (prevCp) {\n cp.startDist = prevCp.startDist + prevCp.length;\n }\n\n addSegment(cp, cp.p0, bpts[_i * nProjs], 0, r.bezierProjPcts[0]); // first\n\n for (var j = 0; j < nProjs - 1; j++) {\n addSegment(cp, bpts[_i * nProjs + j], bpts[_i * nProjs + j + 1], r.bezierProjPcts[j], r.bezierProjPcts[j + 1]);\n }\n\n addSegment(cp, bpts[_i * nProjs + nProjs - 1], cp.p2, r.bezierProjPcts[nProjs - 1], 1); // last\n }\n\n return createControlPointInfo.cache = ctrlpts;\n };\n\n var calculateEndProjection = function calculateEndProjection(prefix) {\n var angle;\n var isSrc = prefix === 'source';\n\n if (!content[prefix]) {\n return;\n }\n\n var offset = edge.pstyle(prefix + '-text-offset').pfValue;\n\n switch (rs.edgeType) {\n case 'self':\n case 'compound':\n case 'bezier':\n case 'multibezier':\n {\n var cps = createControlPointInfo();\n var selected;\n var startDist = 0;\n var totalDist = 0; // find the segment we're on\n\n for (var i = 0; i < cps.length; i++) {\n var _cp = cps[isSrc ? i : cps.length - 1 - i];\n\n for (var j = 0; j < _cp.segments.length; j++) {\n var _seg = _cp.segments[isSrc ? j : _cp.segments.length - 1 - j];\n var lastSeg = i === cps.length - 1 && j === _cp.segments.length - 1;\n startDist = totalDist;\n totalDist += _seg.length;\n\n if (totalDist >= offset || lastSeg) {\n selected = {\n cp: _cp,\n segment: _seg\n };\n break;\n }\n }\n\n if (selected) {\n break;\n }\n }\n\n var cp = selected.cp;\n var seg = selected.segment;\n var tSegment = (offset - startDist) / seg.length;\n var segDt = seg.t1 - seg.t0;\n var t = isSrc ? seg.t0 + segDt * tSegment : seg.t1 - segDt * tSegment;\n t = bound(0, t, 1);\n p = qbezierPtAt(cp.p0, cp.p1, cp.p2, t);\n angle = bezierAngle(cp.p0, cp.p1, cp.p2, t);\n break;\n }\n\n case 'straight':\n case 'segments':\n case 'haystack':\n {\n var d = 0,\n di,\n d0;\n var p0, p1;\n var l = rs.allpts.length;\n\n for (var _i2 = 0; _i2 + 3 < l; _i2 += 2) {\n if (isSrc) {\n p0 = {\n x: rs.allpts[_i2],\n y: rs.allpts[_i2 + 1]\n };\n p1 = {\n x: rs.allpts[_i2 + 2],\n y: rs.allpts[_i2 + 3]\n };\n } else {\n p0 = {\n x: rs.allpts[l - 2 - _i2],\n y: rs.allpts[l - 1 - _i2]\n };\n p1 = {\n x: rs.allpts[l - 4 - _i2],\n y: rs.allpts[l - 3 - _i2]\n };\n }\n\n di = dist(p0, p1);\n d0 = d;\n d += di;\n\n if (d >= offset) {\n break;\n }\n }\n\n var pD = offset - d0;\n\n var _t = pD / di;\n\n _t = bound(0, _t, 1);\n p = lineAt(p0, p1, _t);\n angle = lineAngle(p0, p1);\n break;\n }\n }\n\n setRs('labelX', prefix, p.x);\n setRs('labelY', prefix, p.y);\n setRs('labelAutoAngle', prefix, angle);\n };\n\n calculateEndProjection('source');\n calculateEndProjection('target');\n this.applyLabelDimensions(edge);\n};\n\nBRp$9.applyLabelDimensions = function (ele) {\n this.applyPrefixedLabelDimensions(ele);\n\n if (ele.isEdge()) {\n this.applyPrefixedLabelDimensions(ele, 'source');\n this.applyPrefixedLabelDimensions(ele, 'target');\n }\n};\n\nBRp$9.applyPrefixedLabelDimensions = function (ele, prefix) {\n var _p = ele._private;\n var text = this.getLabelText(ele, prefix);\n var labelDims = this.calculateLabelDimensions(ele, text);\n var lineHeight = ele.pstyle('line-height').pfValue;\n var textWrap = ele.pstyle('text-wrap').strValue;\n var lines = getPrefixedProperty(_p.rscratch, 'labelWrapCachedLines', prefix) || [];\n var numLines = textWrap !== 'wrap' ? 1 : Math.max(lines.length, 1);\n var normPerLineHeight = labelDims.height / numLines;\n var labelLineHeight = normPerLineHeight * lineHeight;\n var width = labelDims.width;\n var height = labelDims.height + (numLines - 1) * (lineHeight - 1) * normPerLineHeight;\n setPrefixedProperty(_p.rstyle, 'labelWidth', prefix, width);\n setPrefixedProperty(_p.rscratch, 'labelWidth', prefix, width);\n setPrefixedProperty(_p.rstyle, 'labelHeight', prefix, height);\n setPrefixedProperty(_p.rscratch, 'labelHeight', prefix, height);\n setPrefixedProperty(_p.rscratch, 'labelLineHeight', prefix, labelLineHeight);\n};\n\nBRp$9.getLabelText = function (ele, prefix) {\n var _p = ele._private;\n var pfd = prefix ? prefix + '-' : '';\n var text = ele.pstyle(pfd + 'label').strValue;\n var textTransform = ele.pstyle('text-transform').value;\n\n var rscratch = function rscratch(propName, value) {\n if (value) {\n setPrefixedProperty(_p.rscratch, propName, prefix, value);\n return value;\n } else {\n return getPrefixedProperty(_p.rscratch, propName, prefix);\n }\n }; // for empty text, skip all processing\n\n\n if (!text) {\n return '';\n }\n\n if (textTransform == 'none') ; else if (textTransform == 'uppercase') {\n text = text.toUpperCase();\n } else if (textTransform == 'lowercase') {\n text = text.toLowerCase();\n }\n\n var wrapStyle = ele.pstyle('text-wrap').value;\n\n if (wrapStyle === 'wrap') {\n var labelKey = rscratch('labelKey'); // save recalc if the label is the same as before\n\n if (labelKey != null && rscratch('labelWrapKey') === labelKey) {\n return rscratch('labelWrapCachedText');\n }\n\n var zwsp = \"\\u200B\";\n var lines = text.split('\\n');\n var maxW = ele.pstyle('text-max-width').pfValue;\n var overflow = ele.pstyle('text-overflow-wrap').value;\n var overflowAny = overflow === 'anywhere';\n var wrappedLines = [];\n var wordsRegex = /[\\s\\u200b]+/;\n var wordSeparator = overflowAny ? '' : ' ';\n\n for (var l = 0; l < lines.length; l++) {\n var line = lines[l];\n var lineDims = this.calculateLabelDimensions(ele, line);\n var lineW = lineDims.width;\n\n if (overflowAny) {\n var processedLine = line.split('').join(zwsp);\n line = processedLine;\n }\n\n if (lineW > maxW) {\n // line is too long\n var words = line.split(wordsRegex);\n var subline = '';\n\n for (var w = 0; w < words.length; w++) {\n var word = words[w];\n var testLine = subline.length === 0 ? word : subline + wordSeparator + word;\n var testDims = this.calculateLabelDimensions(ele, testLine);\n var testW = testDims.width;\n\n if (testW <= maxW) {\n // word fits on current line\n subline += word + wordSeparator;\n } else {\n // word starts new line\n if (subline) {\n wrappedLines.push(subline);\n }\n\n subline = word + wordSeparator;\n }\n } // if there's remaining text, put it in a wrapped line\n\n\n if (!subline.match(/^[\\s\\u200b]+$/)) {\n wrappedLines.push(subline);\n }\n } else {\n // line is already short enough\n wrappedLines.push(line);\n }\n } // for\n\n\n rscratch('labelWrapCachedLines', wrappedLines);\n text = rscratch('labelWrapCachedText', wrappedLines.join('\\n'));\n rscratch('labelWrapKey', labelKey);\n } else if (wrapStyle === 'ellipsis') {\n var _maxW = ele.pstyle('text-max-width').pfValue;\n var ellipsized = '';\n var ellipsis = \"\\u2026\";\n var incLastCh = false;\n\n if (this.calculateLabelDimensions(ele, text).width < _maxW) {\n // the label already fits\n return text;\n }\n\n for (var i = 0; i < text.length; i++) {\n var widthWithNextCh = this.calculateLabelDimensions(ele, ellipsized + text[i] + ellipsis).width;\n\n if (widthWithNextCh > _maxW) {\n break;\n }\n\n ellipsized += text[i];\n\n if (i === text.length - 1) {\n incLastCh = true;\n }\n }\n\n if (!incLastCh) {\n ellipsized += ellipsis;\n }\n\n return ellipsized;\n } // if ellipsize\n\n\n return text;\n};\n\nBRp$9.getLabelJustification = function (ele) {\n var justification = ele.pstyle('text-justification').strValue;\n var textHalign = ele.pstyle('text-halign').strValue;\n\n if (justification === 'auto') {\n if (ele.isNode()) {\n switch (textHalign) {\n case 'left':\n return 'right';\n\n case 'right':\n return 'left';\n\n default:\n return 'center';\n }\n } else {\n return 'center';\n }\n } else {\n return justification;\n }\n};\n\nBRp$9.calculateLabelDimensions = function (ele, text) {\n var r = this;\n var cacheKey = hashString(text, ele._private.labelDimsKey);\n var cache = r.labelDimCache || (r.labelDimCache = []);\n var existingVal = cache[cacheKey];\n\n if (existingVal != null) {\n return existingVal;\n }\n\n var padding = 0; // add padding around text dims, as the measurement isn't that accurate\n\n var fStyle = ele.pstyle('font-style').strValue;\n var size = ele.pstyle('font-size').pfValue;\n var family = ele.pstyle('font-family').strValue;\n var weight = ele.pstyle('font-weight').strValue;\n var canvas = this.labelCalcCanvas;\n var c2d = this.labelCalcCanvasContext;\n\n if (!canvas) {\n canvas = this.labelCalcCanvas = document.createElement('canvas');\n c2d = this.labelCalcCanvasContext = canvas.getContext('2d');\n var ds = canvas.style;\n ds.position = 'absolute';\n ds.left = '-9999px';\n ds.top = '-9999px';\n ds.zIndex = '-1';\n ds.visibility = 'hidden';\n ds.pointerEvents = 'none';\n }\n\n c2d.font = \"\".concat(fStyle, \" \").concat(weight, \" \").concat(size, \"px \").concat(family);\n var width = 0;\n var height = 0;\n var lines = text.split('\\n');\n\n for (var i = 0; i < lines.length; i++) {\n var line = lines[i];\n var metrics = c2d.measureText(line);\n var w = Math.ceil(metrics.width);\n var h = size;\n width = Math.max(w, width);\n height += h;\n }\n\n width += padding;\n height += padding;\n return cache[cacheKey] = {\n width: width,\n height: height\n };\n};\n\nBRp$9.calculateLabelAngle = function (ele, prefix) {\n var _p = ele._private;\n var rs = _p.rscratch;\n var isEdge = ele.isEdge();\n var prefixDash = prefix ? prefix + '-' : '';\n var rot = ele.pstyle(prefixDash + 'text-rotation');\n var rotStr = rot.strValue;\n\n if (rotStr === 'none') {\n return 0;\n } else if (isEdge && rotStr === 'autorotate') {\n return rs.labelAutoAngle;\n } else if (rotStr === 'autorotate') {\n return 0;\n } else {\n return rot.pfValue;\n }\n};\n\nBRp$9.calculateLabelAngles = function (ele) {\n var r = this;\n var isEdge = ele.isEdge();\n var _p = ele._private;\n var rs = _p.rscratch;\n rs.labelAngle = r.calculateLabelAngle(ele);\n\n if (isEdge) {\n rs.sourceLabelAngle = r.calculateLabelAngle(ele, 'source');\n rs.targetLabelAngle = r.calculateLabelAngle(ele, 'target');\n }\n};\n\nvar BRp$8 = {};\nvar TOO_SMALL_CUT_RECT = 28;\nvar warnedCutRect = false;\n\nBRp$8.getNodeShape = function (node) {\n var r = this;\n var shape = node.pstyle('shape').value;\n\n if (shape === 'cutrectangle' && (node.width() < TOO_SMALL_CUT_RECT || node.height() < TOO_SMALL_CUT_RECT)) {\n if (!warnedCutRect) {\n warn('The `cutrectangle` node shape can not be used at small sizes so `rectangle` is used instead');\n warnedCutRect = true;\n }\n\n return 'rectangle';\n }\n\n if (node.isParent()) {\n if (shape === 'rectangle' || shape === 'roundrectangle' || shape === 'round-rectangle' || shape === 'cutrectangle' || shape === 'cut-rectangle' || shape === 'barrel') {\n return shape;\n } else {\n return 'rectangle';\n }\n }\n\n if (shape === 'polygon') {\n var points = node.pstyle('shape-polygon-points').value;\n return r.nodeShapes.makePolygon(points).name;\n }\n\n return shape;\n};\n\nvar BRp$7 = {};\n\nBRp$7.registerCalculationListeners = function () {\n var cy = this.cy;\n var elesToUpdate = cy.collection();\n var r = this;\n\n var enqueue = function enqueue(eles) {\n var dirtyStyleCaches = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n elesToUpdate.merge(eles);\n\n if (dirtyStyleCaches) {\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n var _p = ele._private;\n var rstyle = _p.rstyle;\n rstyle.clean = false;\n rstyle.cleanConnected = false;\n }\n }\n };\n\n r.binder(cy).on('bounds.* dirty.*', function onDirtyBounds(e) {\n var ele = e.target;\n enqueue(ele);\n }).on('style.* background.*', function onDirtyStyle(e) {\n var ele = e.target;\n enqueue(ele, false);\n });\n\n var updateEleCalcs = function updateEleCalcs(willDraw) {\n if (willDraw) {\n var fns = r.onUpdateEleCalcsFns; // because we need to have up-to-date style (e.g. stylesheet mappers)\n // before calculating rendered style (and pstyle might not be called yet)\n\n elesToUpdate.cleanStyle();\n\n for (var i = 0; i < elesToUpdate.length; i++) {\n var ele = elesToUpdate[i];\n var rstyle = ele._private.rstyle;\n\n if (ele.isNode() && !rstyle.cleanConnected) {\n enqueue(ele.connectedEdges());\n rstyle.cleanConnected = true;\n }\n }\n\n if (fns) {\n for (var _i = 0; _i < fns.length; _i++) {\n var fn = fns[_i];\n fn(willDraw, elesToUpdate);\n }\n }\n\n r.recalculateRenderedStyle(elesToUpdate);\n elesToUpdate = cy.collection();\n }\n };\n\n r.flushRenderedStyleQueue = function () {\n updateEleCalcs(true);\n };\n\n r.beforeRender(updateEleCalcs, r.beforeRenderPriorities.eleCalcs);\n};\n\nBRp$7.onUpdateEleCalcs = function (fn) {\n var fns = this.onUpdateEleCalcsFns = this.onUpdateEleCalcsFns || [];\n fns.push(fn);\n};\n\nBRp$7.recalculateRenderedStyle = function (eles, useCache) {\n var isCleanConnected = function isCleanConnected(ele) {\n return ele._private.rstyle.cleanConnected;\n };\n\n var edges = [];\n var nodes = []; // the renderer can't be used for calcs when destroyed, e.g. ele.boundingBox()\n\n if (this.destroyed) {\n return;\n } // use cache by default for perf\n\n\n if (useCache === undefined) {\n useCache = true;\n }\n\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n var _p = ele._private;\n var rstyle = _p.rstyle; // an edge may be implicitly dirty b/c of one of its connected nodes\n // (and a request for recalc may come in between frames)\n\n if (ele.isEdge() && (!isCleanConnected(ele.source()) || !isCleanConnected(ele.target()))) {\n rstyle.clean = false;\n } // only update if dirty and in graph\n\n\n if (useCache && rstyle.clean || ele.removed()) {\n continue;\n } // only update if not display: none\n\n\n if (ele.pstyle('display').value === 'none') {\n continue;\n }\n\n if (_p.group === 'nodes') {\n nodes.push(ele);\n } else {\n // edges\n edges.push(ele);\n }\n\n rstyle.clean = true;\n } // update node data from projections\n\n\n for (var _i2 = 0; _i2 < nodes.length; _i2++) {\n var _ele = nodes[_i2];\n var _p2 = _ele._private;\n var _rstyle = _p2.rstyle;\n\n var pos = _ele.position();\n\n this.recalculateNodeLabelProjection(_ele);\n _rstyle.nodeX = pos.x;\n _rstyle.nodeY = pos.y;\n _rstyle.nodeW = _ele.pstyle('width').pfValue;\n _rstyle.nodeH = _ele.pstyle('height').pfValue;\n }\n\n this.recalculateEdgeProjections(edges); // update edge data from projections\n\n for (var _i3 = 0; _i3 < edges.length; _i3++) {\n var _ele2 = edges[_i3];\n var _p3 = _ele2._private;\n var _rstyle2 = _p3.rstyle;\n var rs = _p3.rscratch; // update rstyle positions\n\n _rstyle2.srcX = rs.arrowStartX;\n _rstyle2.srcY = rs.arrowStartY;\n _rstyle2.tgtX = rs.arrowEndX;\n _rstyle2.tgtY = rs.arrowEndY;\n _rstyle2.midX = rs.midX;\n _rstyle2.midY = rs.midY;\n _rstyle2.labelAngle = rs.labelAngle;\n _rstyle2.sourceLabelAngle = rs.sourceLabelAngle;\n _rstyle2.targetLabelAngle = rs.targetLabelAngle;\n }\n};\n\nvar BRp$6 = {};\n\nBRp$6.updateCachedGrabbedEles = function () {\n var eles = this.cachedZSortedEles;\n\n if (!eles) {\n // just let this be recalculated on the next z sort tick\n return;\n }\n\n eles.drag = [];\n eles.nondrag = [];\n var grabTargets = [];\n\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n var rs = ele._private.rscratch;\n\n if (ele.grabbed() && !ele.isParent()) {\n grabTargets.push(ele);\n } else if (rs.inDragLayer) {\n eles.drag.push(ele);\n } else {\n eles.nondrag.push(ele);\n }\n } // put the grab target nodes last so it's on top of its neighbourhood\n\n\n for (var i = 0; i < grabTargets.length; i++) {\n var ele = grabTargets[i];\n eles.drag.push(ele);\n }\n};\n\nBRp$6.invalidateCachedZSortedEles = function () {\n this.cachedZSortedEles = null;\n};\n\nBRp$6.getCachedZSortedEles = function (forceRecalc) {\n if (forceRecalc || !this.cachedZSortedEles) {\n var eles = this.cy.mutableElements().toArray();\n eles.sort(zIndexSort);\n eles.interactive = eles.filter(function (ele) {\n return ele.interactive();\n });\n this.cachedZSortedEles = eles;\n this.updateCachedGrabbedEles();\n } else {\n eles = this.cachedZSortedEles;\n }\n\n return eles;\n};\n\nvar BRp$5 = {};\n[BRp$e, BRp$d, BRp$c, BRp$b, BRp$a, BRp$9, BRp$8, BRp$7, BRp$6].forEach(function (props) {\n extend(BRp$5, props);\n});\n\nvar BRp$4 = {};\n\nBRp$4.getCachedImage = function (url, crossOrigin, onLoad) {\n var r = this;\n var imageCache = r.imageCache = r.imageCache || {};\n var cache = imageCache[url];\n\n if (cache) {\n if (!cache.image.complete) {\n cache.image.addEventListener('load', onLoad);\n }\n\n return cache.image;\n } else {\n cache = imageCache[url] = imageCache[url] || {};\n var image = cache.image = new Image(); // eslint-disable-line no-undef\n\n image.addEventListener('load', onLoad);\n image.addEventListener('error', function () {\n image.error = true;\n }); // #1582 safari doesn't load data uris with crossOrigin properly\n // https://bugs.webkit.org/show_bug.cgi?id=123978\n\n var dataUriPrefix = 'data:';\n var isDataUri = url.substring(0, dataUriPrefix.length).toLowerCase() === dataUriPrefix;\n\n if (!isDataUri) {\n image.crossOrigin = crossOrigin; // prevent tainted canvas\n }\n\n image.src = url;\n return image;\n }\n};\n\nvar BRp$3 = {};\n/* global document, window, ResizeObserver, MutationObserver */\n\nBRp$3.registerBinding = function (target, event, handler, useCapture) {\n // eslint-disable-line no-unused-vars\n var args = Array.prototype.slice.apply(arguments, [1]); // copy\n\n var b = this.binder(target);\n return b.on.apply(b, args);\n};\n\nBRp$3.binder = function (tgt) {\n var r = this;\n var tgtIsDom = tgt === window || tgt === document || tgt === document.body || domElement(tgt);\n\n if (r.supportsPassiveEvents == null) {\n // from https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md#feature-detection\n var supportsPassive = false;\n\n try {\n var opts = Object.defineProperty({}, 'passive', {\n get: function get() {\n supportsPassive = true;\n return true;\n }\n });\n window.addEventListener('test', null, opts);\n } catch (err) {// not supported\n }\n\n r.supportsPassiveEvents = supportsPassive;\n }\n\n var on = function on(event, handler, useCapture) {\n var args = Array.prototype.slice.call(arguments);\n\n if (tgtIsDom && r.supportsPassiveEvents) {\n // replace useCapture w/ opts obj\n args[2] = {\n capture: useCapture != null ? useCapture : false,\n passive: false,\n once: false\n };\n }\n\n r.bindings.push({\n target: tgt,\n args: args\n });\n (tgt.addEventListener || tgt.on).apply(tgt, args);\n return this;\n };\n\n return {\n on: on,\n addEventListener: on,\n addListener: on,\n bind: on\n };\n};\n\nBRp$3.nodeIsDraggable = function (node) {\n return node && node.isNode() && !node.locked() && node.grabbable();\n};\n\nBRp$3.nodeIsGrabbable = function (node) {\n return this.nodeIsDraggable(node) && node.interactive();\n};\n\nBRp$3.load = function () {\n var r = this;\n\n var isSelected = function isSelected(ele) {\n return ele.selected();\n };\n\n var triggerEvents = function triggerEvents(target, names, e, position) {\n if (target == null) {\n target = r.cy;\n }\n\n for (var i = 0; i < names.length; i++) {\n var name = names[i];\n target.emit({\n originalEvent: e,\n type: name,\n position: position\n });\n }\n };\n\n var isMultSelKeyDown = function isMultSelKeyDown(e) {\n return e.shiftKey || e.metaKey || e.ctrlKey; // maybe e.altKey\n };\n\n var allowPanningPassthrough = function allowPanningPassthrough(down, downs) {\n var allowPassthrough = true;\n\n if (r.cy.hasCompoundNodes() && down && down.pannable()) {\n // a grabbable compound node below the ele => no passthrough panning\n for (var i = 0; downs && i < downs.length; i++) {\n var down = downs[i]; //if any parent node in event hierarchy isn't pannable, reject passthrough\n\n if (down.isNode() && down.isParent() && !down.pannable()) {\n allowPassthrough = false;\n break;\n }\n }\n } else {\n allowPassthrough = true;\n }\n\n return allowPassthrough;\n };\n\n var setGrabbed = function setGrabbed(ele) {\n ele[0]._private.grabbed = true;\n };\n\n var setFreed = function setFreed(ele) {\n ele[0]._private.grabbed = false;\n };\n\n var setInDragLayer = function setInDragLayer(ele) {\n ele[0]._private.rscratch.inDragLayer = true;\n };\n\n var setOutDragLayer = function setOutDragLayer(ele) {\n ele[0]._private.rscratch.inDragLayer = false;\n };\n\n var setGrabTarget = function setGrabTarget(ele) {\n ele[0]._private.rscratch.isGrabTarget = true;\n };\n\n var removeGrabTarget = function removeGrabTarget(ele) {\n ele[0]._private.rscratch.isGrabTarget = false;\n };\n\n var addToDragList = function addToDragList(ele, opts) {\n var list = opts.addToList;\n var listHasEle = list.has(ele);\n\n if (!listHasEle && ele.grabbable() && !ele.locked()) {\n list.merge(ele);\n setGrabbed(ele);\n }\n }; // helper function to determine which child nodes and inner edges\n // of a compound node to be dragged as well as the grabbed and selected nodes\n\n\n var addDescendantsToDrag = function addDescendantsToDrag(node, opts) {\n if (!node.cy().hasCompoundNodes()) {\n return;\n }\n\n if (opts.inDragLayer == null && opts.addToList == null) {\n return;\n } // nothing to do\n\n\n var innerNodes = node.descendants();\n\n if (opts.inDragLayer) {\n innerNodes.forEach(setInDragLayer);\n innerNodes.connectedEdges().forEach(setInDragLayer);\n }\n\n if (opts.addToList) {\n addToDragList(innerNodes, opts);\n }\n }; // adds the given nodes and its neighbourhood to the drag layer\n\n\n var addNodesToDrag = function addNodesToDrag(nodes, opts) {\n opts = opts || {};\n var hasCompoundNodes = nodes.cy().hasCompoundNodes();\n\n if (opts.inDragLayer) {\n nodes.forEach(setInDragLayer);\n nodes.neighborhood().stdFilter(function (ele) {\n return !hasCompoundNodes || ele.isEdge();\n }).forEach(setInDragLayer);\n }\n\n if (opts.addToList) {\n nodes.forEach(function (ele) {\n addToDragList(ele, opts);\n });\n }\n\n addDescendantsToDrag(nodes, opts); // always add to drag\n // also add nodes and edges related to the topmost ancestor\n\n updateAncestorsInDragLayer(nodes, {\n inDragLayer: opts.inDragLayer\n });\n r.updateCachedGrabbedEles();\n };\n\n var addNodeToDrag = addNodesToDrag;\n\n var freeDraggedElements = function freeDraggedElements(grabbedEles) {\n if (!grabbedEles) {\n return;\n } // just go over all elements rather than doing a bunch of (possibly expensive) traversals\n\n\n r.getCachedZSortedEles().forEach(function (ele) {\n setFreed(ele);\n setOutDragLayer(ele);\n removeGrabTarget(ele);\n });\n r.updateCachedGrabbedEles();\n }; // helper function to determine which ancestor nodes and edges should go\n // to the drag layer (or should be removed from drag layer).\n\n\n var updateAncestorsInDragLayer = function updateAncestorsInDragLayer(node, opts) {\n if (opts.inDragLayer == null && opts.addToList == null) {\n return;\n } // nothing to do\n\n\n if (!node.cy().hasCompoundNodes()) {\n return;\n } // find top-level parent\n\n\n var parent = node.ancestors().orphans(); // no parent node: no nodes to add to the drag layer\n\n if (parent.same(node)) {\n return;\n }\n\n var nodes = parent.descendants().spawnSelf().merge(parent).unmerge(node).unmerge(node.descendants());\n var edges = nodes.connectedEdges();\n\n if (opts.inDragLayer) {\n edges.forEach(setInDragLayer);\n nodes.forEach(setInDragLayer);\n }\n\n if (opts.addToList) {\n nodes.forEach(function (ele) {\n addToDragList(ele, opts);\n });\n }\n };\n\n var blurActiveDomElement = function blurActiveDomElement() {\n if (document.activeElement != null && document.activeElement.blur != null) {\n document.activeElement.blur();\n }\n };\n\n var haveMutationsApi = typeof MutationObserver !== 'undefined';\n var haveResizeObserverApi = typeof ResizeObserver !== 'undefined'; // watch for when the cy container is removed from the dom\n\n if (haveMutationsApi) {\n r.removeObserver = new MutationObserver(function (mutns) {\n // eslint-disable-line no-undef\n for (var i = 0; i < mutns.length; i++) {\n var mutn = mutns[i];\n var rNodes = mutn.removedNodes;\n\n if (rNodes) {\n for (var j = 0; j < rNodes.length; j++) {\n var rNode = rNodes[j];\n\n if (rNode === r.container) {\n r.destroy();\n break;\n }\n }\n }\n }\n });\n\n if (r.container.parentNode) {\n r.removeObserver.observe(r.container.parentNode, {\n childList: true\n });\n }\n } else {\n r.registerBinding(r.container, 'DOMNodeRemoved', function (e) {\n // eslint-disable-line no-unused-vars\n r.destroy();\n });\n }\n\n var onResize = debounce__default[\"default\"](function () {\n r.cy.resize();\n }, 100);\n\n if (haveMutationsApi) {\n r.styleObserver = new MutationObserver(onResize); // eslint-disable-line no-undef\n\n r.styleObserver.observe(r.container, {\n attributes: true\n });\n } // auto resize\n\n\n r.registerBinding(window, 'resize', onResize); // eslint-disable-line no-undef\n\n if (haveResizeObserverApi) {\n r.resizeObserver = new ResizeObserver(onResize); // eslint-disable-line no-undef\n\n r.resizeObserver.observe(r.container);\n }\n\n var forEachUp = function forEachUp(domEle, fn) {\n while (domEle != null) {\n fn(domEle);\n domEle = domEle.parentNode;\n }\n };\n\n var invalidateCoords = function invalidateCoords() {\n r.invalidateContainerClientCoordsCache();\n };\n\n forEachUp(r.container, function (domEle) {\n r.registerBinding(domEle, 'transitionend', invalidateCoords);\n r.registerBinding(domEle, 'animationend', invalidateCoords);\n r.registerBinding(domEle, 'scroll', invalidateCoords);\n }); // stop right click menu from appearing on cy\n\n r.registerBinding(r.container, 'contextmenu', function (e) {\n e.preventDefault();\n });\n\n var inBoxSelection = function inBoxSelection() {\n return r.selection[4] !== 0;\n };\n\n var eventInContainer = function eventInContainer(e) {\n // save cycles if mouse events aren't to be captured\n var containerPageCoords = r.findContainerClientCoords();\n var x = containerPageCoords[0];\n var y = containerPageCoords[1];\n var width = containerPageCoords[2];\n var height = containerPageCoords[3];\n var positions = e.touches ? e.touches : [e];\n var atLeastOnePosInside = false;\n\n for (var i = 0; i < positions.length; i++) {\n var p = positions[i];\n\n if (x <= p.clientX && p.clientX <= x + width && y <= p.clientY && p.clientY <= y + height) {\n atLeastOnePosInside = true;\n break;\n }\n }\n\n if (!atLeastOnePosInside) {\n return false;\n }\n\n var container = r.container;\n var target = e.target;\n var tParent = target.parentNode;\n var containerIsTarget = false;\n\n while (tParent) {\n if (tParent === container) {\n containerIsTarget = true;\n break;\n }\n\n tParent = tParent.parentNode;\n }\n\n if (!containerIsTarget) {\n return false;\n } // if target is outisde cy container, then this event is not for us\n\n\n return true;\n }; // Primary key\n\n\n r.registerBinding(r.container, 'mousedown', function mousedownHandler(e) {\n if (!eventInContainer(e)) {\n return;\n }\n\n e.preventDefault();\n blurActiveDomElement();\n r.hoverData.capture = true;\n r.hoverData.which = e.which;\n var cy = r.cy;\n var gpos = [e.clientX, e.clientY];\n var pos = r.projectIntoViewport(gpos[0], gpos[1]);\n var select = r.selection;\n var nears = r.findNearestElements(pos[0], pos[1], true, false);\n var near = nears[0];\n var draggedElements = r.dragData.possibleDragElements;\n r.hoverData.mdownPos = pos;\n r.hoverData.mdownGPos = gpos;\n\n var checkForTaphold = function checkForTaphold() {\n r.hoverData.tapholdCancelled = false;\n clearTimeout(r.hoverData.tapholdTimeout);\n r.hoverData.tapholdTimeout = setTimeout(function () {\n if (r.hoverData.tapholdCancelled) {\n return;\n } else {\n var ele = r.hoverData.down;\n\n if (ele) {\n ele.emit({\n originalEvent: e,\n type: 'taphold',\n position: {\n x: pos[0],\n y: pos[1]\n }\n });\n } else {\n cy.emit({\n originalEvent: e,\n type: 'taphold',\n position: {\n x: pos[0],\n y: pos[1]\n }\n });\n }\n }\n }, r.tapholdDuration);\n }; // Right click button\n\n\n if (e.which == 3) {\n r.hoverData.cxtStarted = true;\n var cxtEvt = {\n originalEvent: e,\n type: 'cxttapstart',\n position: {\n x: pos[0],\n y: pos[1]\n }\n };\n\n if (near) {\n near.activate();\n near.emit(cxtEvt);\n r.hoverData.down = near;\n } else {\n cy.emit(cxtEvt);\n }\n\n r.hoverData.downTime = new Date().getTime();\n r.hoverData.cxtDragged = false; // Primary button\n } else if (e.which == 1) {\n if (near) {\n near.activate();\n } // Element dragging\n\n\n {\n // If something is under the cursor and it is draggable, prepare to grab it\n if (near != null) {\n if (r.nodeIsGrabbable(near)) {\n var makeEvent = function makeEvent(type) {\n return {\n originalEvent: e,\n type: type,\n position: {\n x: pos[0],\n y: pos[1]\n }\n };\n };\n\n var triggerGrab = function triggerGrab(ele) {\n ele.emit(makeEvent('grab'));\n };\n\n setGrabTarget(near);\n\n if (!near.selected()) {\n draggedElements = r.dragData.possibleDragElements = cy.collection();\n addNodeToDrag(near, {\n addToList: draggedElements\n });\n near.emit(makeEvent('grabon')).emit(makeEvent('grab'));\n } else {\n draggedElements = r.dragData.possibleDragElements = cy.collection();\n var selectedNodes = cy.$(function (ele) {\n return ele.isNode() && ele.selected() && r.nodeIsGrabbable(ele);\n });\n addNodesToDrag(selectedNodes, {\n addToList: draggedElements\n });\n near.emit(makeEvent('grabon'));\n selectedNodes.forEach(triggerGrab);\n }\n\n r.redrawHint('eles', true);\n r.redrawHint('drag', true);\n }\n }\n\n r.hoverData.down = near;\n r.hoverData.downs = nears;\n r.hoverData.downTime = new Date().getTime();\n }\n triggerEvents(near, ['mousedown', 'tapstart', 'vmousedown'], e, {\n x: pos[0],\n y: pos[1]\n });\n\n if (near == null) {\n select[4] = 1;\n r.data.bgActivePosistion = {\n x: pos[0],\n y: pos[1]\n };\n r.redrawHint('select', true);\n r.redraw();\n } else if (near.pannable()) {\n select[4] = 1; // for future pan\n }\n\n checkForTaphold();\n } // Initialize selection box coordinates\n\n\n select[0] = select[2] = pos[0];\n select[1] = select[3] = pos[1];\n }, false);\n r.registerBinding(window, 'mousemove', function mousemoveHandler(e) {\n // eslint-disable-line no-undef\n var capture = r.hoverData.capture;\n\n if (!capture && !eventInContainer(e)) {\n return;\n }\n\n var preventDefault = false;\n var cy = r.cy;\n var zoom = cy.zoom();\n var gpos = [e.clientX, e.clientY];\n var pos = r.projectIntoViewport(gpos[0], gpos[1]);\n var mdownPos = r.hoverData.mdownPos;\n var mdownGPos = r.hoverData.mdownGPos;\n var select = r.selection;\n var near = null;\n\n if (!r.hoverData.draggingEles && !r.hoverData.dragging && !r.hoverData.selecting) {\n near = r.findNearestElement(pos[0], pos[1], true, false);\n }\n\n var last = r.hoverData.last;\n var down = r.hoverData.down;\n var disp = [pos[0] - select[2], pos[1] - select[3]];\n var draggedElements = r.dragData.possibleDragElements;\n var isOverThresholdDrag;\n\n if (mdownGPos) {\n var dx = gpos[0] - mdownGPos[0];\n var dx2 = dx * dx;\n var dy = gpos[1] - mdownGPos[1];\n var dy2 = dy * dy;\n var dist2 = dx2 + dy2;\n r.hoverData.isOverThresholdDrag = isOverThresholdDrag = dist2 >= r.desktopTapThreshold2;\n }\n\n var multSelKeyDown = isMultSelKeyDown(e);\n\n if (isOverThresholdDrag) {\n r.hoverData.tapholdCancelled = true;\n }\n\n var updateDragDelta = function updateDragDelta() {\n var dragDelta = r.hoverData.dragDelta = r.hoverData.dragDelta || [];\n\n if (dragDelta.length === 0) {\n dragDelta.push(disp[0]);\n dragDelta.push(disp[1]);\n } else {\n dragDelta[0] += disp[0];\n dragDelta[1] += disp[1];\n }\n };\n\n preventDefault = true;\n triggerEvents(near, ['mousemove', 'vmousemove', 'tapdrag'], e, {\n x: pos[0],\n y: pos[1]\n });\n\n var goIntoBoxMode = function goIntoBoxMode() {\n r.data.bgActivePosistion = undefined;\n\n if (!r.hoverData.selecting) {\n cy.emit({\n originalEvent: e,\n type: 'boxstart',\n position: {\n x: pos[0],\n y: pos[1]\n }\n });\n }\n\n select[4] = 1;\n r.hoverData.selecting = true;\n r.redrawHint('select', true);\n r.redraw();\n }; // trigger context drag if rmouse down\n\n\n if (r.hoverData.which === 3) {\n // but only if over threshold\n if (isOverThresholdDrag) {\n var cxtEvt = {\n originalEvent: e,\n type: 'cxtdrag',\n position: {\n x: pos[0],\n y: pos[1]\n }\n };\n\n if (down) {\n down.emit(cxtEvt);\n } else {\n cy.emit(cxtEvt);\n }\n\n r.hoverData.cxtDragged = true;\n\n if (!r.hoverData.cxtOver || near !== r.hoverData.cxtOver) {\n if (r.hoverData.cxtOver) {\n r.hoverData.cxtOver.emit({\n originalEvent: e,\n type: 'cxtdragout',\n position: {\n x: pos[0],\n y: pos[1]\n }\n });\n }\n\n r.hoverData.cxtOver = near;\n\n if (near) {\n near.emit({\n originalEvent: e,\n type: 'cxtdragover',\n position: {\n x: pos[0],\n y: pos[1]\n }\n });\n }\n }\n } // Check if we are drag panning the entire graph\n\n } else if (r.hoverData.dragging) {\n preventDefault = true;\n\n if (cy.panningEnabled() && cy.userPanningEnabled()) {\n var deltaP;\n\n if (r.hoverData.justStartedPan) {\n var mdPos = r.hoverData.mdownPos;\n deltaP = {\n x: (pos[0] - mdPos[0]) * zoom,\n y: (pos[1] - mdPos[1]) * zoom\n };\n r.hoverData.justStartedPan = false;\n } else {\n deltaP = {\n x: disp[0] * zoom,\n y: disp[1] * zoom\n };\n }\n\n cy.panBy(deltaP);\n cy.emit('dragpan');\n r.hoverData.dragged = true;\n } // Needs reproject due to pan changing viewport\n\n\n pos = r.projectIntoViewport(e.clientX, e.clientY); // Checks primary button down & out of time & mouse not moved much\n } else if (select[4] == 1 && (down == null || down.pannable())) {\n if (isOverThresholdDrag) {\n if (!r.hoverData.dragging && cy.boxSelectionEnabled() && (multSelKeyDown || !cy.panningEnabled() || !cy.userPanningEnabled())) {\n goIntoBoxMode();\n } else if (!r.hoverData.selecting && cy.panningEnabled() && cy.userPanningEnabled()) {\n var allowPassthrough = allowPanningPassthrough(down, r.hoverData.downs);\n\n if (allowPassthrough) {\n r.hoverData.dragging = true;\n r.hoverData.justStartedPan = true;\n select[4] = 0;\n r.data.bgActivePosistion = array2point(mdownPos);\n r.redrawHint('select', true);\n r.redraw();\n }\n }\n\n if (down && down.pannable() && down.active()) {\n down.unactivate();\n }\n }\n } else {\n if (down && down.pannable() && down.active()) {\n down.unactivate();\n }\n\n if ((!down || !down.grabbed()) && near != last) {\n if (last) {\n triggerEvents(last, ['mouseout', 'tapdragout'], e, {\n x: pos[0],\n y: pos[1]\n });\n }\n\n if (near) {\n triggerEvents(near, ['mouseover', 'tapdragover'], e, {\n x: pos[0],\n y: pos[1]\n });\n }\n\n r.hoverData.last = near;\n }\n\n if (down) {\n if (isOverThresholdDrag) {\n // then we can take action\n if (cy.boxSelectionEnabled() && multSelKeyDown) {\n // then selection overrides\n if (down && down.grabbed()) {\n freeDraggedElements(draggedElements);\n down.emit('freeon');\n draggedElements.emit('free');\n\n if (r.dragData.didDrag) {\n down.emit('dragfreeon');\n draggedElements.emit('dragfree');\n }\n }\n\n goIntoBoxMode();\n } else if (down && down.grabbed() && r.nodeIsDraggable(down)) {\n // drag node\n var justStartedDrag = !r.dragData.didDrag;\n\n if (justStartedDrag) {\n r.redrawHint('eles', true);\n }\n\n r.dragData.didDrag = true; // indicate that we actually did drag the node\n // now, add the elements to the drag layer if not done already\n\n if (!r.hoverData.draggingEles) {\n addNodesToDrag(draggedElements, {\n inDragLayer: true\n });\n }\n\n var totalShift = {\n x: 0,\n y: 0\n };\n\n if (number$1(disp[0]) && number$1(disp[1])) {\n totalShift.x += disp[0];\n totalShift.y += disp[1];\n\n if (justStartedDrag) {\n var dragDelta = r.hoverData.dragDelta;\n\n if (dragDelta && number$1(dragDelta[0]) && number$1(dragDelta[1])) {\n totalShift.x += dragDelta[0];\n totalShift.y += dragDelta[1];\n }\n }\n }\n\n r.hoverData.draggingEles = true;\n draggedElements.silentShift(totalShift).emit('position drag');\n r.redrawHint('drag', true);\n r.redraw();\n }\n } else {\n // otherwise save drag delta for when we actually start dragging so the relative grab pos is constant\n updateDragDelta();\n }\n } // prevent the dragging from triggering text selection on the page\n\n\n preventDefault = true;\n }\n\n select[2] = pos[0];\n select[3] = pos[1];\n\n if (preventDefault) {\n if (e.stopPropagation) e.stopPropagation();\n if (e.preventDefault) e.preventDefault();\n return false;\n }\n }, false);\n var clickTimeout, didDoubleClick, prevClickTimeStamp;\n r.registerBinding(window, 'mouseup', function mouseupHandler(e) {\n // eslint-disable-line no-undef\n var capture = r.hoverData.capture;\n\n if (!capture) {\n return;\n }\n\n r.hoverData.capture = false;\n var cy = r.cy;\n var pos = r.projectIntoViewport(e.clientX, e.clientY);\n var select = r.selection;\n var near = r.findNearestElement(pos[0], pos[1], true, false);\n var draggedElements = r.dragData.possibleDragElements;\n var down = r.hoverData.down;\n var multSelKeyDown = isMultSelKeyDown(e);\n\n if (r.data.bgActivePosistion) {\n r.redrawHint('select', true);\n r.redraw();\n }\n\n r.hoverData.tapholdCancelled = true;\n r.data.bgActivePosistion = undefined; // not active bg now\n\n if (down) {\n down.unactivate();\n }\n\n if (r.hoverData.which === 3) {\n var cxtEvt = {\n originalEvent: e,\n type: 'cxttapend',\n position: {\n x: pos[0],\n y: pos[1]\n }\n };\n\n if (down) {\n down.emit(cxtEvt);\n } else {\n cy.emit(cxtEvt);\n }\n\n if (!r.hoverData.cxtDragged) {\n var cxtTap = {\n originalEvent: e,\n type: 'cxttap',\n position: {\n x: pos[0],\n y: pos[1]\n }\n };\n\n if (down) {\n down.emit(cxtTap);\n } else {\n cy.emit(cxtTap);\n }\n }\n\n r.hoverData.cxtDragged = false;\n r.hoverData.which = null;\n } else if (r.hoverData.which === 1) {\n triggerEvents(near, ['mouseup', 'tapend', 'vmouseup'], e, {\n x: pos[0],\n y: pos[1]\n });\n\n if (!r.dragData.didDrag && // didn't move a node around\n !r.hoverData.dragged && // didn't pan\n !r.hoverData.selecting && // not box selection\n !r.hoverData.isOverThresholdDrag // didn't move too much\n ) {\n triggerEvents(down, [\"click\", \"tap\", \"vclick\"], e, {\n x: pos[0],\n y: pos[1]\n });\n didDoubleClick = false;\n\n if (e.timeStamp - prevClickTimeStamp <= cy.multiClickDebounceTime()) {\n clickTimeout && clearTimeout(clickTimeout);\n didDoubleClick = true;\n prevClickTimeStamp = null;\n triggerEvents(down, [\"dblclick\", \"dbltap\", \"vdblclick\"], e, {\n x: pos[0],\n y: pos[1]\n });\n } else {\n clickTimeout = setTimeout(function () {\n if (didDoubleClick) return;\n triggerEvents(down, [\"oneclick\", \"onetap\", \"voneclick\"], e, {\n x: pos[0],\n y: pos[1]\n });\n }, cy.multiClickDebounceTime());\n prevClickTimeStamp = e.timeStamp;\n }\n } // Deselect all elements if nothing is currently under the mouse cursor and we aren't dragging something\n\n\n if (down == null // not mousedown on node\n && !r.dragData.didDrag // didn't move the node around\n && !r.hoverData.selecting // not box selection\n && !r.hoverData.dragged // didn't pan\n && !isMultSelKeyDown(e)) {\n cy.$(isSelected).unselect(['tapunselect']);\n\n if (draggedElements.length > 0) {\n r.redrawHint('eles', true);\n }\n\n r.dragData.possibleDragElements = draggedElements = cy.collection();\n } // Single selection\n\n\n if (near == down && !r.dragData.didDrag && !r.hoverData.selecting) {\n if (near != null && near._private.selectable) {\n if (r.hoverData.dragging) ; else if (cy.selectionType() === 'additive' || multSelKeyDown) {\n if (near.selected()) {\n near.unselect(['tapunselect']);\n } else {\n near.select(['tapselect']);\n }\n } else {\n if (!multSelKeyDown) {\n cy.$(isSelected).unmerge(near).unselect(['tapunselect']);\n near.select(['tapselect']);\n }\n }\n\n r.redrawHint('eles', true);\n }\n }\n\n if (r.hoverData.selecting) {\n var box = cy.collection(r.getAllInBox(select[0], select[1], select[2], select[3]));\n r.redrawHint('select', true);\n\n if (box.length > 0) {\n r.redrawHint('eles', true);\n }\n\n cy.emit({\n type: 'boxend',\n originalEvent: e,\n position: {\n x: pos[0],\n y: pos[1]\n }\n });\n\n var eleWouldBeSelected = function eleWouldBeSelected(ele) {\n return ele.selectable() && !ele.selected();\n };\n\n if (cy.selectionType() === 'additive') {\n box.emit('box').stdFilter(eleWouldBeSelected).select().emit('boxselect');\n } else {\n if (!multSelKeyDown) {\n cy.$(isSelected).unmerge(box).unselect();\n }\n\n box.emit('box').stdFilter(eleWouldBeSelected).select().emit('boxselect');\n } // always need redraw in case eles unselectable\n\n\n r.redraw();\n } // Cancel drag pan\n\n\n if (r.hoverData.dragging) {\n r.hoverData.dragging = false;\n r.redrawHint('select', true);\n r.redrawHint('eles', true);\n r.redraw();\n }\n\n if (!select[4]) {\n r.redrawHint('drag', true);\n r.redrawHint('eles', true);\n var downWasGrabbed = down && down.grabbed();\n freeDraggedElements(draggedElements);\n\n if (downWasGrabbed) {\n down.emit('freeon');\n draggedElements.emit('free');\n\n if (r.dragData.didDrag) {\n down.emit('dragfreeon');\n draggedElements.emit('dragfree');\n }\n }\n }\n } // else not right mouse\n\n\n select[4] = 0;\n r.hoverData.down = null;\n r.hoverData.cxtStarted = false;\n r.hoverData.draggingEles = false;\n r.hoverData.selecting = false;\n r.hoverData.isOverThresholdDrag = false;\n r.dragData.didDrag = false;\n r.hoverData.dragged = false;\n r.hoverData.dragDelta = [];\n r.hoverData.mdownPos = null;\n r.hoverData.mdownGPos = null;\n }, false);\n\n var wheelHandler = function wheelHandler(e) {\n if (r.scrollingPage) {\n return;\n } // while scrolling, ignore wheel-to-zoom\n\n\n var cy = r.cy;\n var zoom = cy.zoom();\n var pan = cy.pan();\n var pos = r.projectIntoViewport(e.clientX, e.clientY);\n var rpos = [pos[0] * zoom + pan.x, pos[1] * zoom + pan.y];\n\n if (r.hoverData.draggingEles || r.hoverData.dragging || r.hoverData.cxtStarted || inBoxSelection()) {\n // if pan dragging or cxt dragging, wheel movements make no zoom\n e.preventDefault();\n return;\n }\n\n if (cy.panningEnabled() && cy.userPanningEnabled() && cy.zoomingEnabled() && cy.userZoomingEnabled()) {\n e.preventDefault();\n r.data.wheelZooming = true;\n clearTimeout(r.data.wheelTimeout);\n r.data.wheelTimeout = setTimeout(function () {\n r.data.wheelZooming = false;\n r.redrawHint('eles', true);\n r.redraw();\n }, 150);\n var diff;\n\n if (e.deltaY != null) {\n diff = e.deltaY / -250;\n } else if (e.wheelDeltaY != null) {\n diff = e.wheelDeltaY / 1000;\n } else {\n diff = e.wheelDelta / 1000;\n }\n\n diff = diff * r.wheelSensitivity;\n var needsWheelFix = e.deltaMode === 1;\n\n if (needsWheelFix) {\n // fixes slow wheel events on ff/linux and ff/windows\n diff *= 33;\n }\n\n var newZoom = cy.zoom() * Math.pow(10, diff);\n\n if (e.type === 'gesturechange') {\n newZoom = r.gestureStartZoom * e.scale;\n }\n\n cy.zoom({\n level: newZoom,\n renderedPosition: {\n x: rpos[0],\n y: rpos[1]\n }\n });\n cy.emit(e.type === 'gesturechange' ? 'pinchzoom' : 'scrollzoom');\n }\n }; // Functions to help with whether mouse wheel should trigger zooming\n // --\n\n\n r.registerBinding(r.container, 'wheel', wheelHandler, true); // disable nonstandard wheel events\n // r.registerBinding(r.container, 'mousewheel', wheelHandler, true);\n // r.registerBinding(r.container, 'DOMMouseScroll', wheelHandler, true);\n // r.registerBinding(r.container, 'MozMousePixelScroll', wheelHandler, true); // older firefox\n\n r.registerBinding(window, 'scroll', function scrollHandler(e) {\n // eslint-disable-line no-unused-vars\n r.scrollingPage = true;\n clearTimeout(r.scrollingPageTimeout);\n r.scrollingPageTimeout = setTimeout(function () {\n r.scrollingPage = false;\n }, 250);\n }, true); // desktop safari pinch to zoom start\n\n r.registerBinding(r.container, 'gesturestart', function gestureStartHandler(e) {\n r.gestureStartZoom = r.cy.zoom();\n\n if (!r.hasTouchStarted) {\n // don't affect touch devices like iphone\n e.preventDefault();\n }\n }, true);\n r.registerBinding(r.container, 'gesturechange', function (e) {\n if (!r.hasTouchStarted) {\n // don't affect touch devices like iphone\n wheelHandler(e);\n }\n }, true); // Functions to help with handling mouseout/mouseover on the Cytoscape container\n // Handle mouseout on Cytoscape container\n\n r.registerBinding(r.container, 'mouseout', function mouseOutHandler(e) {\n var pos = r.projectIntoViewport(e.clientX, e.clientY);\n r.cy.emit({\n originalEvent: e,\n type: 'mouseout',\n position: {\n x: pos[0],\n y: pos[1]\n }\n });\n }, false);\n r.registerBinding(r.container, 'mouseover', function mouseOverHandler(e) {\n var pos = r.projectIntoViewport(e.clientX, e.clientY);\n r.cy.emit({\n originalEvent: e,\n type: 'mouseover',\n position: {\n x: pos[0],\n y: pos[1]\n }\n });\n }, false);\n var f1x1, f1y1, f2x1, f2y1; // starting points for pinch-to-zoom\n\n var distance1, distance1Sq; // initial distance between finger 1 and finger 2 for pinch-to-zoom\n\n var center1, modelCenter1; // center point on start pinch to zoom\n\n var offsetLeft, offsetTop;\n var containerWidth, containerHeight;\n var twoFingersStartInside;\n\n var distance = function distance(x1, y1, x2, y2) {\n return Math.sqrt((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1));\n };\n\n var distanceSq = function distanceSq(x1, y1, x2, y2) {\n return (x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1);\n };\n\n var touchstartHandler;\n r.registerBinding(r.container, 'touchstart', touchstartHandler = function touchstartHandler(e) {\n r.hasTouchStarted = true;\n\n if (!eventInContainer(e)) {\n return;\n }\n\n blurActiveDomElement();\n r.touchData.capture = true;\n r.data.bgActivePosistion = undefined;\n var cy = r.cy;\n var now = r.touchData.now;\n var earlier = r.touchData.earlier;\n\n if (e.touches[0]) {\n var pos = r.projectIntoViewport(e.touches[0].clientX, e.touches[0].clientY);\n now[0] = pos[0];\n now[1] = pos[1];\n }\n\n if (e.touches[1]) {\n var pos = r.projectIntoViewport(e.touches[1].clientX, e.touches[1].clientY);\n now[2] = pos[0];\n now[3] = pos[1];\n }\n\n if (e.touches[2]) {\n var pos = r.projectIntoViewport(e.touches[2].clientX, e.touches[2].clientY);\n now[4] = pos[0];\n now[5] = pos[1];\n } // record starting points for pinch-to-zoom\n\n\n if (e.touches[1]) {\n r.touchData.singleTouchMoved = true;\n freeDraggedElements(r.dragData.touchDragEles);\n var offsets = r.findContainerClientCoords();\n offsetLeft = offsets[0];\n offsetTop = offsets[1];\n containerWidth = offsets[2];\n containerHeight = offsets[3];\n f1x1 = e.touches[0].clientX - offsetLeft;\n f1y1 = e.touches[0].clientY - offsetTop;\n f2x1 = e.touches[1].clientX - offsetLeft;\n f2y1 = e.touches[1].clientY - offsetTop;\n twoFingersStartInside = 0 <= f1x1 && f1x1 <= containerWidth && 0 <= f2x1 && f2x1 <= containerWidth && 0 <= f1y1 && f1y1 <= containerHeight && 0 <= f2y1 && f2y1 <= containerHeight;\n var pan = cy.pan();\n var zoom = cy.zoom();\n distance1 = distance(f1x1, f1y1, f2x1, f2y1);\n distance1Sq = distanceSq(f1x1, f1y1, f2x1, f2y1);\n center1 = [(f1x1 + f2x1) / 2, (f1y1 + f2y1) / 2];\n modelCenter1 = [(center1[0] - pan.x) / zoom, (center1[1] - pan.y) / zoom]; // consider context tap\n\n var cxtDistThreshold = 200;\n var cxtDistThresholdSq = cxtDistThreshold * cxtDistThreshold;\n\n if (distance1Sq < cxtDistThresholdSq && !e.touches[2]) {\n var near1 = r.findNearestElement(now[0], now[1], true, true);\n var near2 = r.findNearestElement(now[2], now[3], true, true);\n\n if (near1 && near1.isNode()) {\n near1.activate().emit({\n originalEvent: e,\n type: 'cxttapstart',\n position: {\n x: now[0],\n y: now[1]\n }\n });\n r.touchData.start = near1;\n } else if (near2 && near2.isNode()) {\n near2.activate().emit({\n originalEvent: e,\n type: 'cxttapstart',\n position: {\n x: now[0],\n y: now[1]\n }\n });\n r.touchData.start = near2;\n } else {\n cy.emit({\n originalEvent: e,\n type: 'cxttapstart',\n position: {\n x: now[0],\n y: now[1]\n }\n });\n }\n\n if (r.touchData.start) {\n r.touchData.start._private.grabbed = false;\n }\n\n r.touchData.cxt = true;\n r.touchData.cxtDragged = false;\n r.data.bgActivePosistion = undefined;\n r.redraw();\n return;\n }\n }\n\n if (e.touches[2]) {\n // ignore\n // safari on ios pans the page otherwise (normally you should be able to preventdefault on touchmove...)\n if (cy.boxSelectionEnabled()) {\n e.preventDefault();\n }\n } else if (e.touches[1]) ; else if (e.touches[0]) {\n var nears = r.findNearestElements(now[0], now[1], true, true);\n var near = nears[0];\n\n if (near != null) {\n near.activate();\n r.touchData.start = near;\n r.touchData.starts = nears;\n\n if (r.nodeIsGrabbable(near)) {\n var draggedEles = r.dragData.touchDragEles = cy.collection();\n var selectedNodes = null;\n r.redrawHint('eles', true);\n r.redrawHint('drag', true);\n\n if (near.selected()) {\n // reset drag elements, since near will be added again\n selectedNodes = cy.$(function (ele) {\n return ele.selected() && r.nodeIsGrabbable(ele);\n });\n addNodesToDrag(selectedNodes, {\n addToList: draggedEles\n });\n } else {\n addNodeToDrag(near, {\n addToList: draggedEles\n });\n }\n\n setGrabTarget(near);\n\n var makeEvent = function makeEvent(type) {\n return {\n originalEvent: e,\n type: type,\n position: {\n x: now[0],\n y: now[1]\n }\n };\n };\n\n near.emit(makeEvent('grabon'));\n\n if (selectedNodes) {\n selectedNodes.forEach(function (n) {\n n.emit(makeEvent('grab'));\n });\n } else {\n near.emit(makeEvent('grab'));\n }\n }\n }\n\n triggerEvents(near, ['touchstart', 'tapstart', 'vmousedown'], e, {\n x: now[0],\n y: now[1]\n });\n\n if (near == null) {\n r.data.bgActivePosistion = {\n x: pos[0],\n y: pos[1]\n };\n r.redrawHint('select', true);\n r.redraw();\n } // Tap, taphold\n // -----\n\n\n r.touchData.singleTouchMoved = false;\n r.touchData.singleTouchStartTime = +new Date();\n clearTimeout(r.touchData.tapholdTimeout);\n r.touchData.tapholdTimeout = setTimeout(function () {\n if (r.touchData.singleTouchMoved === false && !r.pinching // if pinching, then taphold unselect shouldn't take effect\n && !r.touchData.selecting // box selection shouldn't allow taphold through\n ) {\n triggerEvents(r.touchData.start, ['taphold'], e, {\n x: now[0],\n y: now[1]\n });\n }\n }, r.tapholdDuration);\n }\n\n if (e.touches.length >= 1) {\n var sPos = r.touchData.startPosition = [];\n\n for (var i = 0; i < now.length; i++) {\n sPos[i] = earlier[i] = now[i];\n }\n\n var touch0 = e.touches[0];\n r.touchData.startGPosition = [touch0.clientX, touch0.clientY];\n }\n }, false);\n var touchmoveHandler;\n r.registerBinding(window, 'touchmove', touchmoveHandler = function touchmoveHandler(e) {\n // eslint-disable-line no-undef\n var capture = r.touchData.capture;\n\n if (!capture && !eventInContainer(e)) {\n return;\n }\n\n var select = r.selection;\n var cy = r.cy;\n var now = r.touchData.now;\n var earlier = r.touchData.earlier;\n var zoom = cy.zoom();\n\n if (e.touches[0]) {\n var pos = r.projectIntoViewport(e.touches[0].clientX, e.touches[0].clientY);\n now[0] = pos[0];\n now[1] = pos[1];\n }\n\n if (e.touches[1]) {\n var pos = r.projectIntoViewport(e.touches[1].clientX, e.touches[1].clientY);\n now[2] = pos[0];\n now[3] = pos[1];\n }\n\n if (e.touches[2]) {\n var pos = r.projectIntoViewport(e.touches[2].clientX, e.touches[2].clientY);\n now[4] = pos[0];\n now[5] = pos[1];\n }\n\n var startGPos = r.touchData.startGPosition;\n var isOverThresholdDrag;\n\n if (capture && e.touches[0] && startGPos) {\n var disp = [];\n\n for (var j = 0; j < now.length; j++) {\n disp[j] = now[j] - earlier[j];\n }\n\n var dx = e.touches[0].clientX - startGPos[0];\n var dx2 = dx * dx;\n var dy = e.touches[0].clientY - startGPos[1];\n var dy2 = dy * dy;\n var dist2 = dx2 + dy2;\n isOverThresholdDrag = dist2 >= r.touchTapThreshold2;\n } // context swipe cancelling\n\n\n if (capture && r.touchData.cxt) {\n e.preventDefault();\n var f1x2 = e.touches[0].clientX - offsetLeft,\n f1y2 = e.touches[0].clientY - offsetTop;\n var f2x2 = e.touches[1].clientX - offsetLeft,\n f2y2 = e.touches[1].clientY - offsetTop; // var distance2 = distance( f1x2, f1y2, f2x2, f2y2 );\n\n var distance2Sq = distanceSq(f1x2, f1y2, f2x2, f2y2);\n var factorSq = distance2Sq / distance1Sq;\n var distThreshold = 150;\n var distThresholdSq = distThreshold * distThreshold;\n var factorThreshold = 1.5;\n var factorThresholdSq = factorThreshold * factorThreshold; // cancel ctx gestures if the distance b/t the fingers increases\n\n if (factorSq >= factorThresholdSq || distance2Sq >= distThresholdSq) {\n r.touchData.cxt = false;\n r.data.bgActivePosistion = undefined;\n r.redrawHint('select', true);\n var cxtEvt = {\n originalEvent: e,\n type: 'cxttapend',\n position: {\n x: now[0],\n y: now[1]\n }\n };\n\n if (r.touchData.start) {\n r.touchData.start.unactivate().emit(cxtEvt);\n r.touchData.start = null;\n } else {\n cy.emit(cxtEvt);\n }\n }\n } // context swipe\n\n\n if (capture && r.touchData.cxt) {\n var cxtEvt = {\n originalEvent: e,\n type: 'cxtdrag',\n position: {\n x: now[0],\n y: now[1]\n }\n };\n r.data.bgActivePosistion = undefined;\n r.redrawHint('select', true);\n\n if (r.touchData.start) {\n r.touchData.start.emit(cxtEvt);\n } else {\n cy.emit(cxtEvt);\n }\n\n if (r.touchData.start) {\n r.touchData.start._private.grabbed = false;\n }\n\n r.touchData.cxtDragged = true;\n var near = r.findNearestElement(now[0], now[1], true, true);\n\n if (!r.touchData.cxtOver || near !== r.touchData.cxtOver) {\n if (r.touchData.cxtOver) {\n r.touchData.cxtOver.emit({\n originalEvent: e,\n type: 'cxtdragout',\n position: {\n x: now[0],\n y: now[1]\n }\n });\n }\n\n r.touchData.cxtOver = near;\n\n if (near) {\n near.emit({\n originalEvent: e,\n type: 'cxtdragover',\n position: {\n x: now[0],\n y: now[1]\n }\n });\n }\n } // box selection\n\n } else if (capture && e.touches[2] && cy.boxSelectionEnabled()) {\n e.preventDefault();\n r.data.bgActivePosistion = undefined;\n this.lastThreeTouch = +new Date();\n\n if (!r.touchData.selecting) {\n cy.emit({\n originalEvent: e,\n type: 'boxstart',\n position: {\n x: now[0],\n y: now[1]\n }\n });\n }\n\n r.touchData.selecting = true;\n r.touchData.didSelect = true;\n select[4] = 1;\n\n if (!select || select.length === 0 || select[0] === undefined) {\n select[0] = (now[0] + now[2] + now[4]) / 3;\n select[1] = (now[1] + now[3] + now[5]) / 3;\n select[2] = (now[0] + now[2] + now[4]) / 3 + 1;\n select[3] = (now[1] + now[3] + now[5]) / 3 + 1;\n } else {\n select[2] = (now[0] + now[2] + now[4]) / 3;\n select[3] = (now[1] + now[3] + now[5]) / 3;\n }\n\n r.redrawHint('select', true);\n r.redraw(); // pinch to zoom\n } else if (capture && e.touches[1] && !r.touchData.didSelect // don't allow box selection to degrade to pinch-to-zoom\n && cy.zoomingEnabled() && cy.panningEnabled() && cy.userZoomingEnabled() && cy.userPanningEnabled()) {\n // two fingers => pinch to zoom\n e.preventDefault();\n r.data.bgActivePosistion = undefined;\n r.redrawHint('select', true);\n var draggedEles = r.dragData.touchDragEles;\n\n if (draggedEles) {\n r.redrawHint('drag', true);\n\n for (var i = 0; i < draggedEles.length; i++) {\n var de_p = draggedEles[i]._private;\n de_p.grabbed = false;\n de_p.rscratch.inDragLayer = false;\n }\n }\n\n var _start = r.touchData.start; // (x2, y2) for fingers 1 and 2\n\n var f1x2 = e.touches[0].clientX - offsetLeft,\n f1y2 = e.touches[0].clientY - offsetTop;\n var f2x2 = e.touches[1].clientX - offsetLeft,\n f2y2 = e.touches[1].clientY - offsetTop;\n var distance2 = distance(f1x2, f1y2, f2x2, f2y2); // var distance2Sq = distanceSq( f1x2, f1y2, f2x2, f2y2 );\n // var factor = Math.sqrt( distance2Sq ) / Math.sqrt( distance1Sq );\n\n var factor = distance2 / distance1;\n\n if (twoFingersStartInside) {\n // delta finger1\n var df1x = f1x2 - f1x1;\n var df1y = f1y2 - f1y1; // delta finger 2\n\n var df2x = f2x2 - f2x1;\n var df2y = f2y2 - f2y1; // translation is the normalised vector of the two fingers movement\n // i.e. so pinching cancels out and moving together pans\n\n var tx = (df1x + df2x) / 2;\n var ty = (df1y + df2y) / 2; // now calculate the zoom\n\n var zoom1 = cy.zoom();\n var zoom2 = zoom1 * factor;\n var pan1 = cy.pan(); // the model center point converted to the current rendered pos\n\n var ctrx = modelCenter1[0] * zoom1 + pan1.x;\n var ctry = modelCenter1[1] * zoom1 + pan1.y;\n var pan2 = {\n x: -zoom2 / zoom1 * (ctrx - pan1.x - tx) + ctrx,\n y: -zoom2 / zoom1 * (ctry - pan1.y - ty) + ctry\n }; // remove dragged eles\n\n if (_start && _start.active()) {\n var draggedEles = r.dragData.touchDragEles;\n freeDraggedElements(draggedEles);\n r.redrawHint('drag', true);\n r.redrawHint('eles', true);\n\n _start.unactivate().emit('freeon');\n\n draggedEles.emit('free');\n\n if (r.dragData.didDrag) {\n _start.emit('dragfreeon');\n\n draggedEles.emit('dragfree');\n }\n }\n\n cy.viewport({\n zoom: zoom2,\n pan: pan2,\n cancelOnFailedZoom: true\n });\n cy.emit('pinchzoom');\n distance1 = distance2;\n f1x1 = f1x2;\n f1y1 = f1y2;\n f2x1 = f2x2;\n f2y1 = f2y2;\n r.pinching = true;\n } // Re-project\n\n\n if (e.touches[0]) {\n var pos = r.projectIntoViewport(e.touches[0].clientX, e.touches[0].clientY);\n now[0] = pos[0];\n now[1] = pos[1];\n }\n\n if (e.touches[1]) {\n var pos = r.projectIntoViewport(e.touches[1].clientX, e.touches[1].clientY);\n now[2] = pos[0];\n now[3] = pos[1];\n }\n\n if (e.touches[2]) {\n var pos = r.projectIntoViewport(e.touches[2].clientX, e.touches[2].clientY);\n now[4] = pos[0];\n now[5] = pos[1];\n }\n } else if (e.touches[0] && !r.touchData.didSelect // don't allow box selection to degrade to single finger events like panning\n ) {\n var start = r.touchData.start;\n var last = r.touchData.last;\n var near;\n\n if (!r.hoverData.draggingEles && !r.swipePanning) {\n near = r.findNearestElement(now[0], now[1], true, true);\n }\n\n if (capture && start != null) {\n e.preventDefault();\n } // dragging nodes\n\n\n if (capture && start != null && r.nodeIsDraggable(start)) {\n if (isOverThresholdDrag) {\n // then dragging can happen\n var draggedEles = r.dragData.touchDragEles;\n var justStartedDrag = !r.dragData.didDrag;\n\n if (justStartedDrag) {\n addNodesToDrag(draggedEles, {\n inDragLayer: true\n });\n }\n\n r.dragData.didDrag = true;\n var totalShift = {\n x: 0,\n y: 0\n };\n\n if (number$1(disp[0]) && number$1(disp[1])) {\n totalShift.x += disp[0];\n totalShift.y += disp[1];\n\n if (justStartedDrag) {\n r.redrawHint('eles', true);\n var dragDelta = r.touchData.dragDelta;\n\n if (dragDelta && number$1(dragDelta[0]) && number$1(dragDelta[1])) {\n totalShift.x += dragDelta[0];\n totalShift.y += dragDelta[1];\n }\n }\n }\n\n r.hoverData.draggingEles = true;\n draggedEles.silentShift(totalShift).emit('position drag');\n r.redrawHint('drag', true);\n\n if (r.touchData.startPosition[0] == earlier[0] && r.touchData.startPosition[1] == earlier[1]) {\n r.redrawHint('eles', true);\n }\n\n r.redraw();\n } else {\n // otherise keep track of drag delta for later\n var dragDelta = r.touchData.dragDelta = r.touchData.dragDelta || [];\n\n if (dragDelta.length === 0) {\n dragDelta.push(disp[0]);\n dragDelta.push(disp[1]);\n } else {\n dragDelta[0] += disp[0];\n dragDelta[1] += disp[1];\n }\n }\n } // touchmove\n\n\n {\n triggerEvents(start || near, ['touchmove', 'tapdrag', 'vmousemove'], e, {\n x: now[0],\n y: now[1]\n });\n\n if ((!start || !start.grabbed()) && near != last) {\n if (last) {\n last.emit({\n originalEvent: e,\n type: 'tapdragout',\n position: {\n x: now[0],\n y: now[1]\n }\n });\n }\n\n if (near) {\n near.emit({\n originalEvent: e,\n type: 'tapdragover',\n position: {\n x: now[0],\n y: now[1]\n }\n });\n }\n }\n\n r.touchData.last = near;\n } // check to cancel taphold\n\n if (capture) {\n for (var i = 0; i < now.length; i++) {\n if (now[i] && r.touchData.startPosition[i] && isOverThresholdDrag) {\n r.touchData.singleTouchMoved = true;\n }\n }\n } // panning\n\n\n if (capture && (start == null || start.pannable()) && cy.panningEnabled() && cy.userPanningEnabled()) {\n var allowPassthrough = allowPanningPassthrough(start, r.touchData.starts);\n\n if (allowPassthrough) {\n e.preventDefault();\n\n if (!r.data.bgActivePosistion) {\n r.data.bgActivePosistion = array2point(r.touchData.startPosition);\n }\n\n if (r.swipePanning) {\n cy.panBy({\n x: disp[0] * zoom,\n y: disp[1] * zoom\n });\n cy.emit('dragpan');\n } else if (isOverThresholdDrag) {\n r.swipePanning = true;\n cy.panBy({\n x: dx * zoom,\n y: dy * zoom\n });\n cy.emit('dragpan');\n\n if (start) {\n start.unactivate();\n r.redrawHint('select', true);\n r.touchData.start = null;\n }\n }\n } // Re-project\n\n\n var pos = r.projectIntoViewport(e.touches[0].clientX, e.touches[0].clientY);\n now[0] = pos[0];\n now[1] = pos[1];\n }\n }\n\n for (var j = 0; j < now.length; j++) {\n earlier[j] = now[j];\n } // the active bg indicator should be removed when making a swipe that is neither for dragging nodes or panning\n\n\n if (capture && e.touches.length > 0 && !r.hoverData.draggingEles && !r.swipePanning && r.data.bgActivePosistion != null) {\n r.data.bgActivePosistion = undefined;\n r.redrawHint('select', true);\n r.redraw();\n }\n }, false);\n var touchcancelHandler;\n r.registerBinding(window, 'touchcancel', touchcancelHandler = function touchcancelHandler(e) {\n // eslint-disable-line no-unused-vars\n var start = r.touchData.start;\n r.touchData.capture = false;\n\n if (start) {\n start.unactivate();\n }\n });\n var touchendHandler, didDoubleTouch, touchTimeout, prevTouchTimeStamp;\n r.registerBinding(window, 'touchend', touchendHandler = function touchendHandler(e) {\n // eslint-disable-line no-unused-vars\n var start = r.touchData.start;\n var capture = r.touchData.capture;\n\n if (capture) {\n if (e.touches.length === 0) {\n r.touchData.capture = false;\n }\n\n e.preventDefault();\n } else {\n return;\n }\n\n var select = r.selection;\n r.swipePanning = false;\n r.hoverData.draggingEles = false;\n var cy = r.cy;\n var zoom = cy.zoom();\n var now = r.touchData.now;\n var earlier = r.touchData.earlier;\n\n if (e.touches[0]) {\n var pos = r.projectIntoViewport(e.touches[0].clientX, e.touches[0].clientY);\n now[0] = pos[0];\n now[1] = pos[1];\n }\n\n if (e.touches[1]) {\n var pos = r.projectIntoViewport(e.touches[1].clientX, e.touches[1].clientY);\n now[2] = pos[0];\n now[3] = pos[1];\n }\n\n if (e.touches[2]) {\n var pos = r.projectIntoViewport(e.touches[2].clientX, e.touches[2].clientY);\n now[4] = pos[0];\n now[5] = pos[1];\n }\n\n if (start) {\n start.unactivate();\n }\n\n var ctxTapend;\n\n if (r.touchData.cxt) {\n ctxTapend = {\n originalEvent: e,\n type: 'cxttapend',\n position: {\n x: now[0],\n y: now[1]\n }\n };\n\n if (start) {\n start.emit(ctxTapend);\n } else {\n cy.emit(ctxTapend);\n }\n\n if (!r.touchData.cxtDragged) {\n var ctxTap = {\n originalEvent: e,\n type: 'cxttap',\n position: {\n x: now[0],\n y: now[1]\n }\n };\n\n if (start) {\n start.emit(ctxTap);\n } else {\n cy.emit(ctxTap);\n }\n }\n\n if (r.touchData.start) {\n r.touchData.start._private.grabbed = false;\n }\n\n r.touchData.cxt = false;\n r.touchData.start = null;\n r.redraw();\n return;\n } // no more box selection if we don't have three fingers\n\n\n if (!e.touches[2] && cy.boxSelectionEnabled() && r.touchData.selecting) {\n r.touchData.selecting = false;\n var box = cy.collection(r.getAllInBox(select[0], select[1], select[2], select[3]));\n select[0] = undefined;\n select[1] = undefined;\n select[2] = undefined;\n select[3] = undefined;\n select[4] = 0;\n r.redrawHint('select', true);\n cy.emit({\n type: 'boxend',\n originalEvent: e,\n position: {\n x: now[0],\n y: now[1]\n }\n });\n\n var eleWouldBeSelected = function eleWouldBeSelected(ele) {\n return ele.selectable() && !ele.selected();\n };\n\n box.emit('box').stdFilter(eleWouldBeSelected).select().emit('boxselect');\n\n if (box.nonempty()) {\n r.redrawHint('eles', true);\n }\n\n r.redraw();\n }\n\n if (start != null) {\n start.unactivate();\n }\n\n if (e.touches[2]) {\n r.data.bgActivePosistion = undefined;\n r.redrawHint('select', true);\n } else if (e.touches[1]) ; else if (e.touches[0]) ; else if (!e.touches[0]) {\n r.data.bgActivePosistion = undefined;\n r.redrawHint('select', true);\n var draggedEles = r.dragData.touchDragEles;\n\n if (start != null) {\n var startWasGrabbed = start._private.grabbed;\n freeDraggedElements(draggedEles);\n r.redrawHint('drag', true);\n r.redrawHint('eles', true);\n\n if (startWasGrabbed) {\n start.emit('freeon');\n draggedEles.emit('free');\n\n if (r.dragData.didDrag) {\n start.emit('dragfreeon');\n draggedEles.emit('dragfree');\n }\n }\n\n triggerEvents(start, ['touchend', 'tapend', 'vmouseup', 'tapdragout'], e, {\n x: now[0],\n y: now[1]\n });\n start.unactivate();\n r.touchData.start = null;\n } else {\n var near = r.findNearestElement(now[0], now[1], true, true);\n triggerEvents(near, ['touchend', 'tapend', 'vmouseup', 'tapdragout'], e, {\n x: now[0],\n y: now[1]\n });\n }\n\n var dx = r.touchData.startPosition[0] - now[0];\n var dx2 = dx * dx;\n var dy = r.touchData.startPosition[1] - now[1];\n var dy2 = dy * dy;\n var dist2 = dx2 + dy2;\n var rdist2 = dist2 * zoom * zoom; // Tap event, roughly same as mouse click event for touch\n\n if (!r.touchData.singleTouchMoved) {\n if (!start) {\n cy.$(':selected').unselect(['tapunselect']);\n }\n\n triggerEvents(start, ['tap', 'vclick'], e, {\n x: now[0],\n y: now[1]\n });\n didDoubleTouch = false;\n\n if (e.timeStamp - prevTouchTimeStamp <= cy.multiClickDebounceTime()) {\n touchTimeout && clearTimeout(touchTimeout);\n didDoubleTouch = true;\n prevTouchTimeStamp = null;\n triggerEvents(start, ['dbltap', 'vdblclick'], e, {\n x: now[0],\n y: now[1]\n });\n } else {\n touchTimeout = setTimeout(function () {\n if (didDoubleTouch) return;\n triggerEvents(start, ['onetap', 'voneclick'], e, {\n x: now[0],\n y: now[1]\n });\n }, cy.multiClickDebounceTime());\n prevTouchTimeStamp = e.timeStamp;\n }\n } // Prepare to select the currently touched node, only if it hasn't been dragged past a certain distance\n\n\n if (start != null && !r.dragData.didDrag // didn't drag nodes around\n && start._private.selectable && rdist2 < r.touchTapThreshold2 && !r.pinching // pinch to zoom should not affect selection\n ) {\n if (cy.selectionType() === 'single') {\n cy.$(isSelected).unmerge(start).unselect(['tapunselect']);\n start.select(['tapselect']);\n } else {\n if (start.selected()) {\n start.unselect(['tapunselect']);\n } else {\n start.select(['tapselect']);\n }\n }\n\n r.redrawHint('eles', true);\n }\n\n r.touchData.singleTouchMoved = true;\n }\n\n for (var j = 0; j < now.length; j++) {\n earlier[j] = now[j];\n }\n\n r.dragData.didDrag = false; // reset for next touchstart\n\n if (e.touches.length === 0) {\n r.touchData.dragDelta = [];\n r.touchData.startPosition = null;\n r.touchData.startGPosition = null;\n r.touchData.didSelect = false;\n }\n\n if (e.touches.length < 2) {\n if (e.touches.length === 1) {\n // the old start global pos'n may not be the same finger that remains\n r.touchData.startGPosition = [e.touches[0].clientX, e.touches[0].clientY];\n }\n\n r.pinching = false;\n r.redrawHint('eles', true);\n r.redraw();\n } //r.redraw();\n\n }, false); // fallback compatibility layer for ms pointer events\n\n if (typeof TouchEvent === 'undefined') {\n var pointers = [];\n\n var makeTouch = function makeTouch(e) {\n return {\n clientX: e.clientX,\n clientY: e.clientY,\n force: 1,\n identifier: e.pointerId,\n pageX: e.pageX,\n pageY: e.pageY,\n radiusX: e.width / 2,\n radiusY: e.height / 2,\n screenX: e.screenX,\n screenY: e.screenY,\n target: e.target\n };\n };\n\n var makePointer = function makePointer(e) {\n return {\n event: e,\n touch: makeTouch(e)\n };\n };\n\n var addPointer = function addPointer(e) {\n pointers.push(makePointer(e));\n };\n\n var removePointer = function removePointer(e) {\n for (var i = 0; i < pointers.length; i++) {\n var p = pointers[i];\n\n if (p.event.pointerId === e.pointerId) {\n pointers.splice(i, 1);\n return;\n }\n }\n };\n\n var updatePointer = function updatePointer(e) {\n var p = pointers.filter(function (p) {\n return p.event.pointerId === e.pointerId;\n })[0];\n p.event = e;\n p.touch = makeTouch(e);\n };\n\n var addTouchesToEvent = function addTouchesToEvent(e) {\n e.touches = pointers.map(function (p) {\n return p.touch;\n });\n };\n\n var pointerIsMouse = function pointerIsMouse(e) {\n return e.pointerType === 'mouse' || e.pointerType === 4;\n };\n\n r.registerBinding(r.container, 'pointerdown', function (e) {\n if (pointerIsMouse(e)) {\n return;\n } // mouse already handled\n\n\n e.preventDefault();\n addPointer(e);\n addTouchesToEvent(e);\n touchstartHandler(e);\n });\n r.registerBinding(r.container, 'pointerup', function (e) {\n if (pointerIsMouse(e)) {\n return;\n } // mouse already handled\n\n\n removePointer(e);\n addTouchesToEvent(e);\n touchendHandler(e);\n });\n r.registerBinding(r.container, 'pointercancel', function (e) {\n if (pointerIsMouse(e)) {\n return;\n } // mouse already handled\n\n\n removePointer(e);\n addTouchesToEvent(e);\n touchcancelHandler(e);\n });\n r.registerBinding(r.container, 'pointermove', function (e) {\n if (pointerIsMouse(e)) {\n return;\n } // mouse already handled\n\n\n e.preventDefault();\n updatePointer(e);\n addTouchesToEvent(e);\n touchmoveHandler(e);\n });\n }\n};\n\nvar BRp$2 = {};\n\nBRp$2.generatePolygon = function (name, points) {\n return this.nodeShapes[name] = {\n renderer: this,\n name: name,\n points: points,\n draw: function draw(context, centerX, centerY, width, height) {\n this.renderer.nodeShapeImpl('polygon', context, centerX, centerY, width, height, this.points);\n },\n intersectLine: function intersectLine(nodeX, nodeY, width, height, x, y, padding) {\n return polygonIntersectLine(x, y, this.points, nodeX, nodeY, width / 2, height / 2, padding);\n },\n checkPoint: function checkPoint(x, y, padding, width, height, centerX, centerY) {\n return pointInsidePolygon(x, y, this.points, centerX, centerY, width, height, [0, -1], padding);\n }\n };\n};\n\nBRp$2.generateEllipse = function () {\n return this.nodeShapes['ellipse'] = {\n renderer: this,\n name: 'ellipse',\n draw: function draw(context, centerX, centerY, width, height) {\n this.renderer.nodeShapeImpl(this.name, context, centerX, centerY, width, height);\n },\n intersectLine: function intersectLine(nodeX, nodeY, width, height, x, y, padding) {\n return intersectLineEllipse(x, y, nodeX, nodeY, width / 2 + padding, height / 2 + padding);\n },\n checkPoint: function checkPoint(x, y, padding, width, height, centerX, centerY) {\n return checkInEllipse(x, y, width, height, centerX, centerY, padding);\n }\n };\n};\n\nBRp$2.generateRoundPolygon = function (name, points) {\n // Pre-compute control points\n // Since these points depend on the radius length (which in turns depend on the width/height of the node) we will only pre-compute\n // the unit vectors.\n // For simplicity the layout will be:\n // [ p0, UnitVectorP0P1, p1, UniVectorP1P2, ..., pn, UnitVectorPnP0 ]\n var allPoints = new Array(points.length * 2);\n\n for (var i = 0; i < points.length / 2; i++) {\n var sourceIndex = i * 2;\n var destIndex = void 0;\n\n if (i < points.length / 2 - 1) {\n destIndex = (i + 1) * 2;\n } else {\n destIndex = 0;\n }\n\n allPoints[i * 4] = points[sourceIndex];\n allPoints[i * 4 + 1] = points[sourceIndex + 1];\n var xDest = points[destIndex] - points[sourceIndex];\n var yDest = points[destIndex + 1] - points[sourceIndex + 1];\n var norm = Math.sqrt(xDest * xDest + yDest * yDest);\n allPoints[i * 4 + 2] = xDest / norm;\n allPoints[i * 4 + 3] = yDest / norm;\n }\n\n return this.nodeShapes[name] = {\n renderer: this,\n name: name,\n points: allPoints,\n draw: function draw(context, centerX, centerY, width, height) {\n this.renderer.nodeShapeImpl('round-polygon', context, centerX, centerY, width, height, this.points);\n },\n intersectLine: function intersectLine(nodeX, nodeY, width, height, x, y, padding) {\n return roundPolygonIntersectLine(x, y, this.points, nodeX, nodeY, width, height);\n },\n checkPoint: function checkPoint(x, y, padding, width, height, centerX, centerY) {\n return pointInsideRoundPolygon(x, y, this.points, centerX, centerY, width, height);\n }\n };\n};\n\nBRp$2.generateRoundRectangle = function () {\n return this.nodeShapes['round-rectangle'] = this.nodeShapes['roundrectangle'] = {\n renderer: this,\n name: 'round-rectangle',\n points: generateUnitNgonPointsFitToSquare(4, 0),\n draw: function draw(context, centerX, centerY, width, height) {\n this.renderer.nodeShapeImpl(this.name, context, centerX, centerY, width, height);\n },\n intersectLine: function intersectLine(nodeX, nodeY, width, height, x, y, padding) {\n return roundRectangleIntersectLine(x, y, nodeX, nodeY, width, height, padding);\n },\n checkPoint: function checkPoint(x, y, padding, width, height, centerX, centerY) {\n var cornerRadius = getRoundRectangleRadius(width, height);\n var diam = cornerRadius * 2; // Check hBox\n\n if (pointInsidePolygon(x, y, this.points, centerX, centerY, width, height - diam, [0, -1], padding)) {\n return true;\n } // Check vBox\n\n\n if (pointInsidePolygon(x, y, this.points, centerX, centerY, width - diam, height, [0, -1], padding)) {\n return true;\n } // Check top left quarter circle\n\n\n if (checkInEllipse(x, y, diam, diam, centerX - width / 2 + cornerRadius, centerY - height / 2 + cornerRadius, padding)) {\n return true;\n } // Check top right quarter circle\n\n\n if (checkInEllipse(x, y, diam, diam, centerX + width / 2 - cornerRadius, centerY - height / 2 + cornerRadius, padding)) {\n return true;\n } // Check bottom right quarter circle\n\n\n if (checkInEllipse(x, y, diam, diam, centerX + width / 2 - cornerRadius, centerY + height / 2 - cornerRadius, padding)) {\n return true;\n } // Check bottom left quarter circle\n\n\n if (checkInEllipse(x, y, diam, diam, centerX - width / 2 + cornerRadius, centerY + height / 2 - cornerRadius, padding)) {\n return true;\n }\n\n return false;\n }\n };\n};\n\nBRp$2.generateCutRectangle = function () {\n return this.nodeShapes['cut-rectangle'] = this.nodeShapes['cutrectangle'] = {\n renderer: this,\n name: 'cut-rectangle',\n cornerLength: getCutRectangleCornerLength(),\n points: generateUnitNgonPointsFitToSquare(4, 0),\n draw: function draw(context, centerX, centerY, width, height) {\n this.renderer.nodeShapeImpl(this.name, context, centerX, centerY, width, height);\n },\n generateCutTrianglePts: function generateCutTrianglePts(width, height, centerX, centerY) {\n var cl = this.cornerLength;\n var hh = height / 2;\n var hw = width / 2;\n var xBegin = centerX - hw;\n var xEnd = centerX + hw;\n var yBegin = centerY - hh;\n var yEnd = centerY + hh; // points are in clockwise order, inner (imaginary) triangle pt on [4, 5]\n\n return {\n topLeft: [xBegin, yBegin + cl, xBegin + cl, yBegin, xBegin + cl, yBegin + cl],\n topRight: [xEnd - cl, yBegin, xEnd, yBegin + cl, xEnd - cl, yBegin + cl],\n bottomRight: [xEnd, yEnd - cl, xEnd - cl, yEnd, xEnd - cl, yEnd - cl],\n bottomLeft: [xBegin + cl, yEnd, xBegin, yEnd - cl, xBegin + cl, yEnd - cl]\n };\n },\n intersectLine: function intersectLine(nodeX, nodeY, width, height, x, y, padding) {\n var cPts = this.generateCutTrianglePts(width + 2 * padding, height + 2 * padding, nodeX, nodeY);\n var pts = [].concat.apply([], [cPts.topLeft.splice(0, 4), cPts.topRight.splice(0, 4), cPts.bottomRight.splice(0, 4), cPts.bottomLeft.splice(0, 4)]);\n return polygonIntersectLine(x, y, pts, nodeX, nodeY);\n },\n checkPoint: function checkPoint(x, y, padding, width, height, centerX, centerY) {\n // Check hBox\n if (pointInsidePolygon(x, y, this.points, centerX, centerY, width, height - 2 * this.cornerLength, [0, -1], padding)) {\n return true;\n } // Check vBox\n\n\n if (pointInsidePolygon(x, y, this.points, centerX, centerY, width - 2 * this.cornerLength, height, [0, -1], padding)) {\n return true;\n }\n\n var cutTrianglePts = this.generateCutTrianglePts(width, height, centerX, centerY);\n return pointInsidePolygonPoints(x, y, cutTrianglePts.topLeft) || pointInsidePolygonPoints(x, y, cutTrianglePts.topRight) || pointInsidePolygonPoints(x, y, cutTrianglePts.bottomRight) || pointInsidePolygonPoints(x, y, cutTrianglePts.bottomLeft);\n }\n };\n};\n\nBRp$2.generateBarrel = function () {\n return this.nodeShapes['barrel'] = {\n renderer: this,\n name: 'barrel',\n points: generateUnitNgonPointsFitToSquare(4, 0),\n draw: function draw(context, centerX, centerY, width, height) {\n this.renderer.nodeShapeImpl(this.name, context, centerX, centerY, width, height);\n },\n intersectLine: function intersectLine(nodeX, nodeY, width, height, x, y, padding) {\n // use two fixed t values for the bezier curve approximation\n var t0 = 0.15;\n var t1 = 0.5;\n var t2 = 0.85;\n var bPts = this.generateBarrelBezierPts(width + 2 * padding, height + 2 * padding, nodeX, nodeY);\n\n var approximateBarrelCurvePts = function approximateBarrelCurvePts(pts) {\n // approximate curve pts based on the two t values\n var m0 = qbezierPtAt({\n x: pts[0],\n y: pts[1]\n }, {\n x: pts[2],\n y: pts[3]\n }, {\n x: pts[4],\n y: pts[5]\n }, t0);\n var m1 = qbezierPtAt({\n x: pts[0],\n y: pts[1]\n }, {\n x: pts[2],\n y: pts[3]\n }, {\n x: pts[4],\n y: pts[5]\n }, t1);\n var m2 = qbezierPtAt({\n x: pts[0],\n y: pts[1]\n }, {\n x: pts[2],\n y: pts[3]\n }, {\n x: pts[4],\n y: pts[5]\n }, t2);\n return [pts[0], pts[1], m0.x, m0.y, m1.x, m1.y, m2.x, m2.y, pts[4], pts[5]];\n };\n\n var pts = [].concat(approximateBarrelCurvePts(bPts.topLeft), approximateBarrelCurvePts(bPts.topRight), approximateBarrelCurvePts(bPts.bottomRight), approximateBarrelCurvePts(bPts.bottomLeft));\n return polygonIntersectLine(x, y, pts, nodeX, nodeY);\n },\n generateBarrelBezierPts: function generateBarrelBezierPts(width, height, centerX, centerY) {\n var hh = height / 2;\n var hw = width / 2;\n var xBegin = centerX - hw;\n var xEnd = centerX + hw;\n var yBegin = centerY - hh;\n var yEnd = centerY + hh;\n var curveConstants = getBarrelCurveConstants(width, height);\n var hOffset = curveConstants.heightOffset;\n var wOffset = curveConstants.widthOffset;\n var ctrlPtXOffset = curveConstants.ctrlPtOffsetPct * width; // points are in clockwise order, inner (imaginary) control pt on [4, 5]\n\n var pts = {\n topLeft: [xBegin, yBegin + hOffset, xBegin + ctrlPtXOffset, yBegin, xBegin + wOffset, yBegin],\n topRight: [xEnd - wOffset, yBegin, xEnd - ctrlPtXOffset, yBegin, xEnd, yBegin + hOffset],\n bottomRight: [xEnd, yEnd - hOffset, xEnd - ctrlPtXOffset, yEnd, xEnd - wOffset, yEnd],\n bottomLeft: [xBegin + wOffset, yEnd, xBegin + ctrlPtXOffset, yEnd, xBegin, yEnd - hOffset]\n };\n pts.topLeft.isTop = true;\n pts.topRight.isTop = true;\n pts.bottomLeft.isBottom = true;\n pts.bottomRight.isBottom = true;\n return pts;\n },\n checkPoint: function checkPoint(x, y, padding, width, height, centerX, centerY) {\n var curveConstants = getBarrelCurveConstants(width, height);\n var hOffset = curveConstants.heightOffset;\n var wOffset = curveConstants.widthOffset; // Check hBox\n\n if (pointInsidePolygon(x, y, this.points, centerX, centerY, width, height - 2 * hOffset, [0, -1], padding)) {\n return true;\n } // Check vBox\n\n\n if (pointInsidePolygon(x, y, this.points, centerX, centerY, width - 2 * wOffset, height, [0, -1], padding)) {\n return true;\n }\n\n var barrelCurvePts = this.generateBarrelBezierPts(width, height, centerX, centerY);\n\n var getCurveT = function getCurveT(x, y, curvePts) {\n var x0 = curvePts[4];\n var x1 = curvePts[2];\n var x2 = curvePts[0];\n var y0 = curvePts[5]; // var y1 = curvePts[ 3 ];\n\n var y2 = curvePts[1];\n var xMin = Math.min(x0, x2);\n var xMax = Math.max(x0, x2);\n var yMin = Math.min(y0, y2);\n var yMax = Math.max(y0, y2);\n\n if (xMin <= x && x <= xMax && yMin <= y && y <= yMax) {\n var coeff = bezierPtsToQuadCoeff(x0, x1, x2);\n var roots = solveQuadratic(coeff[0], coeff[1], coeff[2], x);\n var validRoots = roots.filter(function (r) {\n return 0 <= r && r <= 1;\n });\n\n if (validRoots.length > 0) {\n return validRoots[0];\n }\n }\n\n return null;\n };\n\n var curveRegions = Object.keys(barrelCurvePts);\n\n for (var i = 0; i < curveRegions.length; i++) {\n var corner = curveRegions[i];\n var cornerPts = barrelCurvePts[corner];\n var t = getCurveT(x, y, cornerPts);\n\n if (t == null) {\n continue;\n }\n\n var y0 = cornerPts[5];\n var y1 = cornerPts[3];\n var y2 = cornerPts[1];\n var bezY = qbezierAt(y0, y1, y2, t);\n\n if (cornerPts.isTop && bezY <= y) {\n return true;\n }\n\n if (cornerPts.isBottom && y <= bezY) {\n return true;\n }\n }\n\n return false;\n }\n };\n};\n\nBRp$2.generateBottomRoundrectangle = function () {\n return this.nodeShapes['bottom-round-rectangle'] = this.nodeShapes['bottomroundrectangle'] = {\n renderer: this,\n name: 'bottom-round-rectangle',\n points: generateUnitNgonPointsFitToSquare(4, 0),\n draw: function draw(context, centerX, centerY, width, height) {\n this.renderer.nodeShapeImpl(this.name, context, centerX, centerY, width, height);\n },\n intersectLine: function intersectLine(nodeX, nodeY, width, height, x, y, padding) {\n var topStartX = nodeX - (width / 2 + padding);\n var topStartY = nodeY - (height / 2 + padding);\n var topEndY = topStartY;\n var topEndX = nodeX + (width / 2 + padding);\n var topIntersections = finiteLinesIntersect(x, y, nodeX, nodeY, topStartX, topStartY, topEndX, topEndY, false);\n\n if (topIntersections.length > 0) {\n return topIntersections;\n }\n\n return roundRectangleIntersectLine(x, y, nodeX, nodeY, width, height, padding);\n },\n checkPoint: function checkPoint(x, y, padding, width, height, centerX, centerY) {\n var cornerRadius = getRoundRectangleRadius(width, height);\n var diam = 2 * cornerRadius; // Check hBox\n\n if (pointInsidePolygon(x, y, this.points, centerX, centerY, width, height - diam, [0, -1], padding)) {\n return true;\n } // Check vBox\n\n\n if (pointInsidePolygon(x, y, this.points, centerX, centerY, width - diam, height, [0, -1], padding)) {\n return true;\n } // check non-rounded top side\n\n\n var outerWidth = width / 2 + 2 * padding;\n var outerHeight = height / 2 + 2 * padding;\n var points = [centerX - outerWidth, centerY - outerHeight, centerX - outerWidth, centerY, centerX + outerWidth, centerY, centerX + outerWidth, centerY - outerHeight];\n\n if (pointInsidePolygonPoints(x, y, points)) {\n return true;\n } // Check bottom right quarter circle\n\n\n if (checkInEllipse(x, y, diam, diam, centerX + width / 2 - cornerRadius, centerY + height / 2 - cornerRadius, padding)) {\n return true;\n } // Check bottom left quarter circle\n\n\n if (checkInEllipse(x, y, diam, diam, centerX - width / 2 + cornerRadius, centerY + height / 2 - cornerRadius, padding)) {\n return true;\n }\n\n return false;\n }\n };\n};\n\nBRp$2.registerNodeShapes = function () {\n var nodeShapes = this.nodeShapes = {};\n var renderer = this;\n this.generateEllipse();\n this.generatePolygon('triangle', generateUnitNgonPointsFitToSquare(3, 0));\n this.generateRoundPolygon('round-triangle', generateUnitNgonPointsFitToSquare(3, 0));\n this.generatePolygon('rectangle', generateUnitNgonPointsFitToSquare(4, 0));\n nodeShapes['square'] = nodeShapes['rectangle'];\n this.generateRoundRectangle();\n this.generateCutRectangle();\n this.generateBarrel();\n this.generateBottomRoundrectangle();\n {\n var diamondPoints = [0, 1, 1, 0, 0, -1, -1, 0];\n this.generatePolygon('diamond', diamondPoints);\n this.generateRoundPolygon('round-diamond', diamondPoints);\n }\n this.generatePolygon('pentagon', generateUnitNgonPointsFitToSquare(5, 0));\n this.generateRoundPolygon('round-pentagon', generateUnitNgonPointsFitToSquare(5, 0));\n this.generatePolygon('hexagon', generateUnitNgonPointsFitToSquare(6, 0));\n this.generateRoundPolygon('round-hexagon', generateUnitNgonPointsFitToSquare(6, 0));\n this.generatePolygon('heptagon', generateUnitNgonPointsFitToSquare(7, 0));\n this.generateRoundPolygon('round-heptagon', generateUnitNgonPointsFitToSquare(7, 0));\n this.generatePolygon('octagon', generateUnitNgonPointsFitToSquare(8, 0));\n this.generateRoundPolygon('round-octagon', generateUnitNgonPointsFitToSquare(8, 0));\n var star5Points = new Array(20);\n {\n var outerPoints = generateUnitNgonPoints(5, 0);\n var innerPoints = generateUnitNgonPoints(5, Math.PI / 5); // Outer radius is 1; inner radius of star is smaller\n\n var innerRadius = 0.5 * (3 - Math.sqrt(5));\n innerRadius *= 1.57;\n\n for (var i = 0; i < innerPoints.length / 2; i++) {\n innerPoints[i * 2] *= innerRadius;\n innerPoints[i * 2 + 1] *= innerRadius;\n }\n\n for (var i = 0; i < 20 / 4; i++) {\n star5Points[i * 4] = outerPoints[i * 2];\n star5Points[i * 4 + 1] = outerPoints[i * 2 + 1];\n star5Points[i * 4 + 2] = innerPoints[i * 2];\n star5Points[i * 4 + 3] = innerPoints[i * 2 + 1];\n }\n }\n star5Points = fitPolygonToSquare(star5Points);\n this.generatePolygon('star', star5Points);\n this.generatePolygon('vee', [-1, -1, 0, -0.333, 1, -1, 0, 1]);\n this.generatePolygon('rhomboid', [-1, -1, 0.333, -1, 1, 1, -0.333, 1]);\n this.nodeShapes['concavehexagon'] = this.generatePolygon('concave-hexagon', [-1, -0.95, -0.75, 0, -1, 0.95, 1, 0.95, 0.75, 0, 1, -0.95]);\n {\n var tagPoints = [-1, -1, 0.25, -1, 1, 0, 0.25, 1, -1, 1];\n this.generatePolygon('tag', tagPoints);\n this.generateRoundPolygon('round-tag', tagPoints);\n }\n\n nodeShapes.makePolygon = function (points) {\n // use caching on user-specified polygons so they are as fast as native shapes\n var key = points.join('$');\n var name = 'polygon-' + key;\n var shape;\n\n if (shape = this[name]) {\n // got cached shape\n return shape;\n } // create and cache new shape\n\n\n return renderer.generatePolygon(name, points);\n };\n};\n\nvar BRp$1 = {};\n\nBRp$1.timeToRender = function () {\n return this.redrawTotalTime / this.redrawCount;\n};\n\nBRp$1.redraw = function (options) {\n options = options || staticEmptyObject();\n var r = this;\n\n if (r.averageRedrawTime === undefined) {\n r.averageRedrawTime = 0;\n }\n\n if (r.lastRedrawTime === undefined) {\n r.lastRedrawTime = 0;\n }\n\n if (r.lastDrawTime === undefined) {\n r.lastDrawTime = 0;\n }\n\n r.requestedFrame = true;\n r.renderOptions = options;\n};\n\nBRp$1.beforeRender = function (fn, priority) {\n // the renderer can't add tick callbacks when destroyed\n if (this.destroyed) {\n return;\n }\n\n if (priority == null) {\n error('Priority is not optional for beforeRender');\n }\n\n var cbs = this.beforeRenderCallbacks;\n cbs.push({\n fn: fn,\n priority: priority\n }); // higher priority callbacks executed first\n\n cbs.sort(function (a, b) {\n return b.priority - a.priority;\n });\n};\n\nvar beforeRenderCallbacks = function beforeRenderCallbacks(r, willDraw, startTime) {\n var cbs = r.beforeRenderCallbacks;\n\n for (var i = 0; i < cbs.length; i++) {\n cbs[i].fn(willDraw, startTime);\n }\n};\n\nBRp$1.startRenderLoop = function () {\n var r = this;\n var cy = r.cy;\n\n if (r.renderLoopStarted) {\n return;\n } else {\n r.renderLoopStarted = true;\n }\n\n var renderFn = function renderFn(requestTime) {\n if (r.destroyed) {\n return;\n }\n\n if (cy.batching()) ; else if (r.requestedFrame && !r.skipFrame) {\n beforeRenderCallbacks(r, true, requestTime);\n var startTime = performanceNow();\n r.render(r.renderOptions);\n var endTime = r.lastDrawTime = performanceNow();\n\n if (r.averageRedrawTime === undefined) {\n r.averageRedrawTime = endTime - startTime;\n }\n\n if (r.redrawCount === undefined) {\n r.redrawCount = 0;\n }\n\n r.redrawCount++;\n\n if (r.redrawTotalTime === undefined) {\n r.redrawTotalTime = 0;\n }\n\n var duration = endTime - startTime;\n r.redrawTotalTime += duration;\n r.lastRedrawTime = duration; // use a weighted average with a bias from the previous average so we don't spike so easily\n\n r.averageRedrawTime = r.averageRedrawTime / 2 + duration / 2;\n r.requestedFrame = false;\n } else {\n beforeRenderCallbacks(r, false, requestTime);\n }\n\n r.skipFrame = false;\n requestAnimationFrame(renderFn);\n };\n\n requestAnimationFrame(renderFn);\n};\n\nvar BaseRenderer = function BaseRenderer(options) {\n this.init(options);\n};\n\nvar BR = BaseRenderer;\nvar BRp = BR.prototype;\nBRp.clientFunctions = ['redrawHint', 'render', 'renderTo', 'matchCanvasSize', 'nodeShapeImpl', 'arrowShapeImpl'];\n\nBRp.init = function (options) {\n var r = this;\n r.options = options;\n r.cy = options.cy;\n var ctr = r.container = options.cy.container(); // prepend a stylesheet in the head such that\n\n if (window$1) {\n var document = window$1.document;\n var head = document.head;\n var stylesheetId = '__________cytoscape_stylesheet';\n var className = '__________cytoscape_container';\n var stylesheetAlreadyExists = document.getElementById(stylesheetId) != null;\n\n if (ctr.className.indexOf(className) < 0) {\n ctr.className = (ctr.className || '') + ' ' + className;\n }\n\n if (!stylesheetAlreadyExists) {\n var stylesheet = document.createElement('style');\n stylesheet.id = stylesheetId;\n stylesheet.innerHTML = '.' + className + ' { position: relative; }';\n head.insertBefore(stylesheet, head.children[0]); // first so lowest priority\n }\n\n var computedStyle = window$1.getComputedStyle(ctr);\n var position = computedStyle.getPropertyValue('position');\n\n if (position === 'static') {\n warn('A Cytoscape container has style position:static and so can not use UI extensions properly');\n }\n }\n\n r.selection = [undefined, undefined, undefined, undefined, 0]; // Coordinates for selection box, plus enabled flag\n\n r.bezierProjPcts = [0.05, 0.225, 0.4, 0.5, 0.6, 0.775, 0.95]; //--Pointer-related data\n\n r.hoverData = {\n down: null,\n last: null,\n downTime: null,\n triggerMode: null,\n dragging: false,\n initialPan: [null, null],\n capture: false\n };\n r.dragData = {\n possibleDragElements: []\n };\n r.touchData = {\n start: null,\n capture: false,\n // These 3 fields related to tap, taphold events\n startPosition: [null, null, null, null, null, null],\n singleTouchStartTime: null,\n singleTouchMoved: true,\n now: [null, null, null, null, null, null],\n earlier: [null, null, null, null, null, null]\n };\n r.redraws = 0;\n r.showFps = options.showFps;\n r.debug = options.debug;\n r.hideEdgesOnViewport = options.hideEdgesOnViewport;\n r.textureOnViewport = options.textureOnViewport;\n r.wheelSensitivity = options.wheelSensitivity;\n r.motionBlurEnabled = options.motionBlur; // on by default\n\n r.forcedPixelRatio = number$1(options.pixelRatio) ? options.pixelRatio : null;\n r.motionBlur = options.motionBlur; // for initial kick off\n\n r.motionBlurOpacity = options.motionBlurOpacity;\n r.motionBlurTransparency = 1 - r.motionBlurOpacity;\n r.motionBlurPxRatio = 1;\n r.mbPxRBlurry = 1; //0.8;\n\n r.minMbLowQualFrames = 4;\n r.fullQualityMb = false;\n r.clearedForMotionBlur = [];\n r.desktopTapThreshold = options.desktopTapThreshold;\n r.desktopTapThreshold2 = options.desktopTapThreshold * options.desktopTapThreshold;\n r.touchTapThreshold = options.touchTapThreshold;\n r.touchTapThreshold2 = options.touchTapThreshold * options.touchTapThreshold;\n r.tapholdDuration = 500;\n r.bindings = [];\n r.beforeRenderCallbacks = [];\n r.beforeRenderPriorities = {\n // higher priority execs before lower one\n animations: 400,\n eleCalcs: 300,\n eleTxrDeq: 200,\n lyrTxrDeq: 150,\n lyrTxrSkip: 100\n };\n r.registerNodeShapes();\n r.registerArrowShapes();\n r.registerCalculationListeners();\n};\n\nBRp.notify = function (eventName, eles) {\n var r = this;\n var cy = r.cy; // the renderer can't be notified after it's destroyed\n\n if (this.destroyed) {\n return;\n }\n\n if (eventName === 'init') {\n r.load();\n return;\n }\n\n if (eventName === 'destroy') {\n r.destroy();\n return;\n }\n\n if (eventName === 'add' || eventName === 'remove' || eventName === 'move' && cy.hasCompoundNodes() || eventName === 'load' || eventName === 'zorder' || eventName === 'mount') {\n r.invalidateCachedZSortedEles();\n }\n\n if (eventName === 'viewport') {\n r.redrawHint('select', true);\n }\n\n if (eventName === 'load' || eventName === 'resize' || eventName === 'mount') {\n r.invalidateContainerClientCoordsCache();\n r.matchCanvasSize(r.container);\n }\n\n r.redrawHint('eles', true);\n r.redrawHint('drag', true);\n this.startRenderLoop();\n this.redraw();\n};\n\nBRp.destroy = function () {\n var r = this;\n r.destroyed = true;\n r.cy.stopAnimationLoop();\n\n for (var i = 0; i < r.bindings.length; i++) {\n var binding = r.bindings[i];\n var b = binding;\n var tgt = b.target;\n (tgt.off || tgt.removeEventListener).apply(tgt, b.args);\n }\n\n r.bindings = [];\n r.beforeRenderCallbacks = [];\n r.onUpdateEleCalcsFns = [];\n\n if (r.removeObserver) {\n r.removeObserver.disconnect();\n }\n\n if (r.styleObserver) {\n r.styleObserver.disconnect();\n }\n\n if (r.resizeObserver) {\n r.resizeObserver.disconnect();\n }\n\n if (r.labelCalcDiv) {\n try {\n document.body.removeChild(r.labelCalcDiv); // eslint-disable-line no-undef\n } catch (e) {// ie10 issue #1014\n }\n }\n};\n\nBRp.isHeadless = function () {\n return false;\n};\n\n[BRp$f, BRp$5, BRp$4, BRp$3, BRp$2, BRp$1].forEach(function (props) {\n extend(BRp, props);\n});\n\nvar fullFpsTime = 1000 / 60; // assume 60 frames per second\n\nvar defs = {\n setupDequeueing: function setupDequeueing(opts) {\n return function setupDequeueingImpl() {\n var self = this;\n var r = this.renderer;\n\n if (self.dequeueingSetup) {\n return;\n } else {\n self.dequeueingSetup = true;\n }\n\n var queueRedraw = debounce__default[\"default\"](function () {\n r.redrawHint('eles', true);\n r.redrawHint('drag', true);\n r.redraw();\n }, opts.deqRedrawThreshold);\n\n var dequeue = function dequeue(willDraw, frameStartTime) {\n var startTime = performanceNow();\n var avgRenderTime = r.averageRedrawTime;\n var renderTime = r.lastRedrawTime;\n var deqd = [];\n var extent = r.cy.extent();\n var pixelRatio = r.getPixelRatio(); // if we aren't in a tick that causes a draw, then the rendered style\n // queue won't automatically be flushed before dequeueing starts\n\n if (!willDraw) {\n r.flushRenderedStyleQueue();\n }\n\n while (true) {\n // eslint-disable-line no-constant-condition\n var now = performanceNow();\n var duration = now - startTime;\n var frameDuration = now - frameStartTime;\n\n if (renderTime < fullFpsTime) {\n // if we're rendering faster than the ideal fps, then do dequeueing\n // during all of the remaining frame time\n var timeAvailable = fullFpsTime - (willDraw ? avgRenderTime : 0);\n\n if (frameDuration >= opts.deqFastCost * timeAvailable) {\n break;\n }\n } else {\n if (willDraw) {\n if (duration >= opts.deqCost * renderTime || duration >= opts.deqAvgCost * avgRenderTime) {\n break;\n }\n } else if (frameDuration >= opts.deqNoDrawCost * fullFpsTime) {\n break;\n }\n }\n\n var thisDeqd = opts.deq(self, pixelRatio, extent);\n\n if (thisDeqd.length > 0) {\n for (var i = 0; i < thisDeqd.length; i++) {\n deqd.push(thisDeqd[i]);\n }\n } else {\n break;\n }\n } // callbacks on dequeue\n\n\n if (deqd.length > 0) {\n opts.onDeqd(self, deqd);\n\n if (!willDraw && opts.shouldRedraw(self, deqd, pixelRatio, extent)) {\n queueRedraw();\n }\n }\n };\n\n var priority = opts.priority || noop$1;\n r.beforeRender(dequeue, priority(self));\n };\n }\n};\n\n// Uses keys so elements may share the same cache.\n\nvar ElementTextureCacheLookup = /*#__PURE__*/function () {\n function ElementTextureCacheLookup(getKey) {\n var doesEleInvalidateKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : falsify;\n\n _classCallCheck(this, ElementTextureCacheLookup);\n\n this.idsByKey = new Map$1();\n this.keyForId = new Map$1();\n this.cachesByLvl = new Map$1();\n this.lvls = [];\n this.getKey = getKey;\n this.doesEleInvalidateKey = doesEleInvalidateKey;\n }\n\n _createClass(ElementTextureCacheLookup, [{\n key: \"getIdsFor\",\n value: function getIdsFor(key) {\n if (key == null) {\n error(\"Can not get id list for null key\");\n }\n\n var idsByKey = this.idsByKey;\n var ids = this.idsByKey.get(key);\n\n if (!ids) {\n ids = new Set$1();\n idsByKey.set(key, ids);\n }\n\n return ids;\n }\n }, {\n key: \"addIdForKey\",\n value: function addIdForKey(key, id) {\n if (key != null) {\n this.getIdsFor(key).add(id);\n }\n }\n }, {\n key: \"deleteIdForKey\",\n value: function deleteIdForKey(key, id) {\n if (key != null) {\n this.getIdsFor(key)[\"delete\"](id);\n }\n }\n }, {\n key: \"getNumberOfIdsForKey\",\n value: function getNumberOfIdsForKey(key) {\n if (key == null) {\n return 0;\n } else {\n return this.getIdsFor(key).size;\n }\n }\n }, {\n key: \"updateKeyMappingFor\",\n value: function updateKeyMappingFor(ele) {\n var id = ele.id();\n var prevKey = this.keyForId.get(id);\n var currKey = this.getKey(ele);\n this.deleteIdForKey(prevKey, id);\n this.addIdForKey(currKey, id);\n this.keyForId.set(id, currKey);\n }\n }, {\n key: \"deleteKeyMappingFor\",\n value: function deleteKeyMappingFor(ele) {\n var id = ele.id();\n var prevKey = this.keyForId.get(id);\n this.deleteIdForKey(prevKey, id);\n this.keyForId[\"delete\"](id);\n }\n }, {\n key: \"keyHasChangedFor\",\n value: function keyHasChangedFor(ele) {\n var id = ele.id();\n var prevKey = this.keyForId.get(id);\n var newKey = this.getKey(ele);\n return prevKey !== newKey;\n }\n }, {\n key: \"isInvalid\",\n value: function isInvalid(ele) {\n return this.keyHasChangedFor(ele) || this.doesEleInvalidateKey(ele);\n }\n }, {\n key: \"getCachesAt\",\n value: function getCachesAt(lvl) {\n var cachesByLvl = this.cachesByLvl,\n lvls = this.lvls;\n var caches = cachesByLvl.get(lvl);\n\n if (!caches) {\n caches = new Map$1();\n cachesByLvl.set(lvl, caches);\n lvls.push(lvl);\n }\n\n return caches;\n }\n }, {\n key: \"getCache\",\n value: function getCache(key, lvl) {\n return this.getCachesAt(lvl).get(key);\n }\n }, {\n key: \"get\",\n value: function get(ele, lvl) {\n var key = this.getKey(ele);\n var cache = this.getCache(key, lvl); // getting for an element may need to add to the id list b/c eles can share keys\n\n if (cache != null) {\n this.updateKeyMappingFor(ele);\n }\n\n return cache;\n }\n }, {\n key: \"getForCachedKey\",\n value: function getForCachedKey(ele, lvl) {\n var key = this.keyForId.get(ele.id()); // n.b. use cached key, not newly computed key\n\n var cache = this.getCache(key, lvl);\n return cache;\n }\n }, {\n key: \"hasCache\",\n value: function hasCache(key, lvl) {\n return this.getCachesAt(lvl).has(key);\n }\n }, {\n key: \"has\",\n value: function has(ele, lvl) {\n var key = this.getKey(ele);\n return this.hasCache(key, lvl);\n }\n }, {\n key: \"setCache\",\n value: function setCache(key, lvl, cache) {\n cache.key = key;\n this.getCachesAt(lvl).set(key, cache);\n }\n }, {\n key: \"set\",\n value: function set(ele, lvl, cache) {\n var key = this.getKey(ele);\n this.setCache(key, lvl, cache);\n this.updateKeyMappingFor(ele);\n }\n }, {\n key: \"deleteCache\",\n value: function deleteCache(key, lvl) {\n this.getCachesAt(lvl)[\"delete\"](key);\n }\n }, {\n key: \"delete\",\n value: function _delete(ele, lvl) {\n var key = this.getKey(ele);\n this.deleteCache(key, lvl);\n }\n }, {\n key: \"invalidateKey\",\n value: function invalidateKey(key) {\n var _this = this;\n\n this.lvls.forEach(function (lvl) {\n return _this.deleteCache(key, lvl);\n });\n } // returns true if no other eles reference the invalidated cache (n.b. other eles may need the cache with the same key)\n\n }, {\n key: \"invalidate\",\n value: function invalidate(ele) {\n var id = ele.id();\n var key = this.keyForId.get(id); // n.b. use stored key rather than current (potential key)\n\n this.deleteKeyMappingFor(ele);\n var entireKeyInvalidated = this.doesEleInvalidateKey(ele);\n\n if (entireKeyInvalidated) {\n // clear mapping for current key\n this.invalidateKey(key);\n }\n\n return entireKeyInvalidated || this.getNumberOfIdsForKey(key) === 0;\n }\n }]);\n\n return ElementTextureCacheLookup;\n}();\n\nvar minTxrH = 25; // the size of the texture cache for small height eles (special case)\n\nvar txrStepH = 50; // the min size of the regular cache, and the size it increases with each step up\n\nvar minLvl$1 = -4; // when scaling smaller than that we don't need to re-render\n\nvar maxLvl$1 = 3; // when larger than this scale just render directly (caching is not helpful)\n\nvar maxZoom$1 = 7.99; // beyond this zoom level, layered textures are not used\n\nvar eleTxrSpacing = 8; // spacing between elements on textures to avoid blitting overlaps\n\nvar defTxrWidth = 1024; // default/minimum texture width\n\nvar maxTxrW = 1024; // the maximum width of a texture\n\nvar maxTxrH = 1024; // the maximum height of a texture\n\nvar minUtility = 0.2; // if usage of texture is less than this, it is retired\n\nvar maxFullness = 0.8; // fullness of texture after which queue removal is checked\n\nvar maxFullnessChecks = 10; // dequeued after this many checks\n\nvar deqCost$1 = 0.15; // % of add'l rendering cost allowed for dequeuing ele caches each frame\n\nvar deqAvgCost$1 = 0.1; // % of add'l rendering cost compared to average overall redraw time\n\nvar deqNoDrawCost$1 = 0.9; // % of avg frame time that can be used for dequeueing when not drawing\n\nvar deqFastCost$1 = 0.9; // % of frame time to be used when >60fps\n\nvar deqRedrawThreshold$1 = 100; // time to batch redraws together from dequeueing to allow more dequeueing calcs to happen in the meanwhile\n\nvar maxDeqSize$1 = 1; // number of eles to dequeue and render at higher texture in each batch\n\nvar getTxrReasons = {\n dequeue: 'dequeue',\n downscale: 'downscale',\n highQuality: 'highQuality'\n};\nvar initDefaults = defaults$g({\n getKey: null,\n doesEleInvalidateKey: falsify,\n drawElement: null,\n getBoundingBox: null,\n getRotationPoint: null,\n getRotationOffset: null,\n isVisible: trueify,\n allowEdgeTxrCaching: true,\n allowParentTxrCaching: true\n});\n\nvar ElementTextureCache = function ElementTextureCache(renderer, initOptions) {\n var self = this;\n self.renderer = renderer;\n self.onDequeues = [];\n var opts = initDefaults(initOptions);\n extend(self, opts);\n self.lookup = new ElementTextureCacheLookup(opts.getKey, opts.doesEleInvalidateKey);\n self.setupDequeueing();\n};\n\nvar ETCp = ElementTextureCache.prototype;\nETCp.reasons = getTxrReasons; // the list of textures in which new subtextures for elements can be placed\n\nETCp.getTextureQueue = function (txrH) {\n var self = this;\n self.eleImgCaches = self.eleImgCaches || {};\n return self.eleImgCaches[txrH] = self.eleImgCaches[txrH] || [];\n}; // the list of usused textures which can be recycled (in use in texture queue)\n\n\nETCp.getRetiredTextureQueue = function (txrH) {\n var self = this;\n var rtxtrQs = self.eleImgCaches.retired = self.eleImgCaches.retired || {};\n var rtxtrQ = rtxtrQs[txrH] = rtxtrQs[txrH] || [];\n return rtxtrQ;\n}; // queue of element draw requests at different scale levels\n\n\nETCp.getElementQueue = function () {\n var self = this;\n var q = self.eleCacheQueue = self.eleCacheQueue || new Heap__default[\"default\"](function (a, b) {\n return b.reqs - a.reqs;\n });\n return q;\n}; // queue of element draw requests at different scale levels (element id lookup)\n\n\nETCp.getElementKeyToQueue = function () {\n var self = this;\n var k2q = self.eleKeyToCacheQueue = self.eleKeyToCacheQueue || {};\n return k2q;\n};\n\nETCp.getElement = function (ele, bb, pxRatio, lvl, reason) {\n var self = this;\n var r = this.renderer;\n var zoom = r.cy.zoom();\n var lookup = this.lookup;\n\n if (!bb || bb.w === 0 || bb.h === 0 || isNaN(bb.w) || isNaN(bb.h) || !ele.visible() || ele.removed()) {\n return null;\n }\n\n if (!self.allowEdgeTxrCaching && ele.isEdge() || !self.allowParentTxrCaching && ele.isParent()) {\n return null;\n }\n\n if (lvl == null) {\n lvl = Math.ceil(log2(zoom * pxRatio));\n }\n\n if (lvl < minLvl$1) {\n lvl = minLvl$1;\n } else if (zoom >= maxZoom$1 || lvl > maxLvl$1) {\n return null;\n }\n\n var scale = Math.pow(2, lvl);\n var eleScaledH = bb.h * scale;\n var eleScaledW = bb.w * scale;\n var scaledLabelShown = r.eleTextBiggerThanMin(ele, scale);\n\n if (!this.isVisible(ele, scaledLabelShown)) {\n return null;\n }\n\n var eleCache = lookup.get(ele, lvl); // if this get was on an unused/invalidated cache, then restore the texture usage metric\n\n if (eleCache && eleCache.invalidated) {\n eleCache.invalidated = false;\n eleCache.texture.invalidatedWidth -= eleCache.width;\n }\n\n if (eleCache) {\n return eleCache;\n }\n\n var txrH; // which texture height this ele belongs to\n\n if (eleScaledH <= minTxrH) {\n txrH = minTxrH;\n } else if (eleScaledH <= txrStepH) {\n txrH = txrStepH;\n } else {\n txrH = Math.ceil(eleScaledH / txrStepH) * txrStepH;\n }\n\n if (eleScaledH > maxTxrH || eleScaledW > maxTxrW) {\n return null; // caching large elements is not efficient\n }\n\n var txrQ = self.getTextureQueue(txrH); // first try the second last one in case it has space at the end\n\n var txr = txrQ[txrQ.length - 2];\n\n var addNewTxr = function addNewTxr() {\n return self.recycleTexture(txrH, eleScaledW) || self.addTexture(txrH, eleScaledW);\n }; // try the last one if there is no second last one\n\n\n if (!txr) {\n txr = txrQ[txrQ.length - 1];\n } // if the last one doesn't exist, we need a first one\n\n\n if (!txr) {\n txr = addNewTxr();\n } // if there's no room in the current texture, we need a new one\n\n\n if (txr.width - txr.usedWidth < eleScaledW) {\n txr = addNewTxr();\n }\n\n var scalableFrom = function scalableFrom(otherCache) {\n return otherCache && otherCache.scaledLabelShown === scaledLabelShown;\n };\n\n var deqing = reason && reason === getTxrReasons.dequeue;\n var highQualityReq = reason && reason === getTxrReasons.highQuality;\n var downscaleReq = reason && reason === getTxrReasons.downscale;\n var higherCache; // the nearest cache with a higher level\n\n for (var l = lvl + 1; l <= maxLvl$1; l++) {\n var c = lookup.get(ele, l);\n\n if (c) {\n higherCache = c;\n break;\n }\n }\n\n var oneUpCache = higherCache && higherCache.level === lvl + 1 ? higherCache : null;\n\n var downscale = function downscale() {\n txr.context.drawImage(oneUpCache.texture.canvas, oneUpCache.x, 0, oneUpCache.width, oneUpCache.height, txr.usedWidth, 0, eleScaledW, eleScaledH);\n }; // reset ele area in texture\n\n\n txr.context.setTransform(1, 0, 0, 1, 0, 0);\n txr.context.clearRect(txr.usedWidth, 0, eleScaledW, txrH);\n\n if (scalableFrom(oneUpCache)) {\n // then we can relatively cheaply rescale the existing image w/o rerendering\n downscale();\n } else if (scalableFrom(higherCache)) {\n // then use the higher cache for now and queue the next level down\n // to cheaply scale towards the smaller level\n if (highQualityReq) {\n for (var _l = higherCache.level; _l > lvl; _l--) {\n oneUpCache = self.getElement(ele, bb, pxRatio, _l, getTxrReasons.downscale);\n }\n\n downscale();\n } else {\n self.queueElement(ele, higherCache.level - 1);\n return higherCache;\n }\n } else {\n var lowerCache; // the nearest cache with a lower level\n\n if (!deqing && !highQualityReq && !downscaleReq) {\n for (var _l2 = lvl - 1; _l2 >= minLvl$1; _l2--) {\n var _c = lookup.get(ele, _l2);\n\n if (_c) {\n lowerCache = _c;\n break;\n }\n }\n }\n\n if (scalableFrom(lowerCache)) {\n // then use the lower quality cache for now and queue the better one for later\n self.queueElement(ele, lvl);\n return lowerCache;\n }\n\n txr.context.translate(txr.usedWidth, 0);\n txr.context.scale(scale, scale);\n this.drawElement(txr.context, ele, bb, scaledLabelShown, false);\n txr.context.scale(1 / scale, 1 / scale);\n txr.context.translate(-txr.usedWidth, 0);\n }\n\n eleCache = {\n x: txr.usedWidth,\n texture: txr,\n level: lvl,\n scale: scale,\n width: eleScaledW,\n height: eleScaledH,\n scaledLabelShown: scaledLabelShown\n };\n txr.usedWidth += Math.ceil(eleScaledW + eleTxrSpacing);\n txr.eleCaches.push(eleCache);\n lookup.set(ele, lvl, eleCache);\n self.checkTextureFullness(txr);\n return eleCache;\n};\n\nETCp.invalidateElements = function (eles) {\n for (var i = 0; i < eles.length; i++) {\n this.invalidateElement(eles[i]);\n }\n};\n\nETCp.invalidateElement = function (ele) {\n var self = this;\n var lookup = self.lookup;\n var caches = [];\n var invalid = lookup.isInvalid(ele);\n\n if (!invalid) {\n return; // override the invalidation request if the element key has not changed\n }\n\n for (var lvl = minLvl$1; lvl <= maxLvl$1; lvl++) {\n var cache = lookup.getForCachedKey(ele, lvl);\n\n if (cache) {\n caches.push(cache);\n }\n }\n\n var noOtherElesUseCache = lookup.invalidate(ele);\n\n if (noOtherElesUseCache) {\n for (var i = 0; i < caches.length; i++) {\n var _cache = caches[i];\n var txr = _cache.texture; // remove space from the texture it belongs to\n\n txr.invalidatedWidth += _cache.width; // mark the cache as invalidated\n\n _cache.invalidated = true; // retire the texture if its utility is low\n\n self.checkTextureUtility(txr);\n }\n } // remove from queue since the old req was for the old state\n\n\n self.removeFromQueue(ele);\n};\n\nETCp.checkTextureUtility = function (txr) {\n // invalidate all entries in the cache if the cache size is small\n if (txr.invalidatedWidth >= minUtility * txr.width) {\n this.retireTexture(txr);\n }\n};\n\nETCp.checkTextureFullness = function (txr) {\n // if texture has been mostly filled and passed over several times, remove\n // it from the queue so we don't need to waste time looking at it to put new things\n var self = this;\n var txrQ = self.getTextureQueue(txr.height);\n\n if (txr.usedWidth / txr.width > maxFullness && txr.fullnessChecks >= maxFullnessChecks) {\n removeFromArray(txrQ, txr);\n } else {\n txr.fullnessChecks++;\n }\n};\n\nETCp.retireTexture = function (txr) {\n var self = this;\n var txrH = txr.height;\n var txrQ = self.getTextureQueue(txrH);\n var lookup = this.lookup; // retire the texture from the active / searchable queue:\n\n removeFromArray(txrQ, txr);\n txr.retired = true; // remove the refs from the eles to the caches:\n\n var eleCaches = txr.eleCaches;\n\n for (var i = 0; i < eleCaches.length; i++) {\n var eleCache = eleCaches[i];\n lookup.deleteCache(eleCache.key, eleCache.level);\n }\n\n clearArray(eleCaches); // add the texture to a retired queue so it can be recycled in future:\n\n var rtxtrQ = self.getRetiredTextureQueue(txrH);\n rtxtrQ.push(txr);\n};\n\nETCp.addTexture = function (txrH, minW) {\n var self = this;\n var txrQ = self.getTextureQueue(txrH);\n var txr = {};\n txrQ.push(txr);\n txr.eleCaches = [];\n txr.height = txrH;\n txr.width = Math.max(defTxrWidth, minW);\n txr.usedWidth = 0;\n txr.invalidatedWidth = 0;\n txr.fullnessChecks = 0;\n txr.canvas = self.renderer.makeOffscreenCanvas(txr.width, txr.height);\n txr.context = txr.canvas.getContext('2d');\n return txr;\n};\n\nETCp.recycleTexture = function (txrH, minW) {\n var self = this;\n var txrQ = self.getTextureQueue(txrH);\n var rtxtrQ = self.getRetiredTextureQueue(txrH);\n\n for (var i = 0; i < rtxtrQ.length; i++) {\n var txr = rtxtrQ[i];\n\n if (txr.width >= minW) {\n txr.retired = false;\n txr.usedWidth = 0;\n txr.invalidatedWidth = 0;\n txr.fullnessChecks = 0;\n clearArray(txr.eleCaches);\n txr.context.setTransform(1, 0, 0, 1, 0, 0);\n txr.context.clearRect(0, 0, txr.width, txr.height);\n removeFromArray(rtxtrQ, txr);\n txrQ.push(txr);\n return txr;\n }\n }\n};\n\nETCp.queueElement = function (ele, lvl) {\n var self = this;\n var q = self.getElementQueue();\n var k2q = self.getElementKeyToQueue();\n var key = this.getKey(ele);\n var existingReq = k2q[key];\n\n if (existingReq) {\n // use the max lvl b/c in between lvls are cheap to make\n existingReq.level = Math.max(existingReq.level, lvl);\n existingReq.eles.merge(ele);\n existingReq.reqs++;\n q.updateItem(existingReq);\n } else {\n var req = {\n eles: ele.spawn().merge(ele),\n level: lvl,\n reqs: 1,\n key: key\n };\n q.push(req);\n k2q[key] = req;\n }\n};\n\nETCp.dequeue = function (pxRatio\n/*, extent*/\n) {\n var self = this;\n var q = self.getElementQueue();\n var k2q = self.getElementKeyToQueue();\n var dequeued = [];\n var lookup = self.lookup;\n\n for (var i = 0; i < maxDeqSize$1; i++) {\n if (q.size() > 0) {\n var req = q.pop();\n var key = req.key;\n var ele = req.eles[0]; // all eles have the same key\n\n var cacheExists = lookup.hasCache(ele, req.level); // clear out the key to req lookup\n\n k2q[key] = null; // dequeueing isn't necessary with an existing cache\n\n if (cacheExists) {\n continue;\n }\n\n dequeued.push(req);\n var bb = self.getBoundingBox(ele);\n self.getElement(ele, bb, pxRatio, req.level, getTxrReasons.dequeue);\n } else {\n break;\n }\n }\n\n return dequeued;\n};\n\nETCp.removeFromQueue = function (ele) {\n var self = this;\n var q = self.getElementQueue();\n var k2q = self.getElementKeyToQueue();\n var key = this.getKey(ele);\n var req = k2q[key];\n\n if (req != null) {\n if (req.eles.length === 1) {\n // remove if last ele in the req\n // bring to front of queue\n req.reqs = MAX_INT$1;\n q.updateItem(req);\n q.pop(); // remove from queue\n\n k2q[key] = null; // remove from lookup map\n } else {\n // otherwise just remove ele from req\n req.eles.unmerge(ele);\n }\n }\n};\n\nETCp.onDequeue = function (fn) {\n this.onDequeues.push(fn);\n};\n\nETCp.offDequeue = function (fn) {\n removeFromArray(this.onDequeues, fn);\n};\n\nETCp.setupDequeueing = defs.setupDequeueing({\n deqRedrawThreshold: deqRedrawThreshold$1,\n deqCost: deqCost$1,\n deqAvgCost: deqAvgCost$1,\n deqNoDrawCost: deqNoDrawCost$1,\n deqFastCost: deqFastCost$1,\n deq: function deq(self, pxRatio, extent) {\n return self.dequeue(pxRatio, extent);\n },\n onDeqd: function onDeqd(self, deqd) {\n for (var i = 0; i < self.onDequeues.length; i++) {\n var fn = self.onDequeues[i];\n fn(deqd);\n }\n },\n shouldRedraw: function shouldRedraw(self, deqd, pxRatio, extent) {\n for (var i = 0; i < deqd.length; i++) {\n var eles = deqd[i].eles;\n\n for (var j = 0; j < eles.length; j++) {\n var bb = eles[j].boundingBox();\n\n if (boundingBoxesIntersect(bb, extent)) {\n return true;\n }\n }\n }\n\n return false;\n },\n priority: function priority(self) {\n return self.renderer.beforeRenderPriorities.eleTxrDeq;\n }\n});\n\nvar defNumLayers = 1; // default number of layers to use\n\nvar minLvl = -4; // when scaling smaller than that we don't need to re-render\n\nvar maxLvl = 2; // when larger than this scale just render directly (caching is not helpful)\n\nvar maxZoom = 3.99; // beyond this zoom level, layered textures are not used\n\nvar deqRedrawThreshold = 50; // time to batch redraws together from dequeueing to allow more dequeueing calcs to happen in the meanwhile\n\nvar refineEleDebounceTime = 50; // time to debounce sharper ele texture updates\n\nvar deqCost = 0.15; // % of add'l rendering cost allowed for dequeuing ele caches each frame\n\nvar deqAvgCost = 0.1; // % of add'l rendering cost compared to average overall redraw time\n\nvar deqNoDrawCost = 0.9; // % of avg frame time that can be used for dequeueing when not drawing\n\nvar deqFastCost = 0.9; // % of frame time to be used when >60fps\n\nvar maxDeqSize = 1; // number of eles to dequeue and render at higher texture in each batch\n\nvar invalidThreshold = 250; // time threshold for disabling b/c of invalidations\n\nvar maxLayerArea = 4000 * 4000; // layers can't be bigger than this\n\nvar useHighQualityEleTxrReqs = true; // whether to use high quality ele txr requests (generally faster and cheaper in the longterm)\n// var log = function(){ console.log.apply( console, arguments ); };\n\nvar LayeredTextureCache = function LayeredTextureCache(renderer) {\n var self = this;\n var r = self.renderer = renderer;\n var cy = r.cy;\n self.layersByLevel = {}; // e.g. 2 => [ layer1, layer2, ..., layerN ]\n\n self.firstGet = true;\n self.lastInvalidationTime = performanceNow() - 2 * invalidThreshold;\n self.skipping = false;\n self.eleTxrDeqs = cy.collection();\n self.scheduleElementRefinement = debounce__default[\"default\"](function () {\n self.refineElementTextures(self.eleTxrDeqs);\n self.eleTxrDeqs.unmerge(self.eleTxrDeqs);\n }, refineEleDebounceTime);\n r.beforeRender(function (willDraw, now) {\n if (now - self.lastInvalidationTime <= invalidThreshold) {\n self.skipping = true;\n } else {\n self.skipping = false;\n }\n }, r.beforeRenderPriorities.lyrTxrSkip);\n\n var qSort = function qSort(a, b) {\n return b.reqs - a.reqs;\n };\n\n self.layersQueue = new Heap__default[\"default\"](qSort);\n self.setupDequeueing();\n};\n\nvar LTCp = LayeredTextureCache.prototype;\nvar layerIdPool = 0;\nvar MAX_INT = Math.pow(2, 53) - 1;\n\nLTCp.makeLayer = function (bb, lvl) {\n var scale = Math.pow(2, lvl);\n var w = Math.ceil(bb.w * scale);\n var h = Math.ceil(bb.h * scale);\n var canvas = this.renderer.makeOffscreenCanvas(w, h);\n var layer = {\n id: layerIdPool = ++layerIdPool % MAX_INT,\n bb: bb,\n level: lvl,\n width: w,\n height: h,\n canvas: canvas,\n context: canvas.getContext('2d'),\n eles: [],\n elesQueue: [],\n reqs: 0\n }; // log('make layer %s with w %s and h %s and lvl %s', layer.id, layer.width, layer.height, layer.level);\n\n var cxt = layer.context;\n var dx = -layer.bb.x1;\n var dy = -layer.bb.y1; // do the transform on creation to save cycles (it's the same for all eles)\n\n cxt.scale(scale, scale);\n cxt.translate(dx, dy);\n return layer;\n};\n\nLTCp.getLayers = function (eles, pxRatio, lvl) {\n var self = this;\n var r = self.renderer;\n var cy = r.cy;\n var zoom = cy.zoom();\n var firstGet = self.firstGet;\n self.firstGet = false; // log('--\\nget layers with %s eles', eles.length);\n //log eles.map(function(ele){ return ele.id() }) );\n\n if (lvl == null) {\n lvl = Math.ceil(log2(zoom * pxRatio));\n\n if (lvl < minLvl) {\n lvl = minLvl;\n } else if (zoom >= maxZoom || lvl > maxLvl) {\n return null;\n }\n }\n\n self.validateLayersElesOrdering(lvl, eles);\n var layersByLvl = self.layersByLevel;\n var scale = Math.pow(2, lvl);\n var layers = layersByLvl[lvl] = layersByLvl[lvl] || [];\n var bb;\n var lvlComplete = self.levelIsComplete(lvl, eles);\n var tmpLayers;\n\n var checkTempLevels = function checkTempLevels() {\n var canUseAsTmpLvl = function canUseAsTmpLvl(l) {\n self.validateLayersElesOrdering(l, eles);\n\n if (self.levelIsComplete(l, eles)) {\n tmpLayers = layersByLvl[l];\n return true;\n }\n };\n\n var checkLvls = function checkLvls(dir) {\n if (tmpLayers) {\n return;\n }\n\n for (var l = lvl + dir; minLvl <= l && l <= maxLvl; l += dir) {\n if (canUseAsTmpLvl(l)) {\n break;\n }\n }\n };\n\n checkLvls(+1);\n checkLvls(-1); // remove the invalid layers; they will be replaced as needed later in this function\n\n for (var i = layers.length - 1; i >= 0; i--) {\n var layer = layers[i];\n\n if (layer.invalid) {\n removeFromArray(layers, layer);\n }\n }\n };\n\n if (!lvlComplete) {\n // if the current level is incomplete, then use the closest, best quality layerset temporarily\n // and later queue the current layerset so we can get the proper quality level soon\n checkTempLevels();\n } else {\n // log('level complete, using existing layers\\n--');\n return layers;\n }\n\n var getBb = function getBb() {\n if (!bb) {\n bb = makeBoundingBox();\n\n for (var i = 0; i < eles.length; i++) {\n updateBoundingBox(bb, eles[i].boundingBox());\n }\n }\n\n return bb;\n };\n\n var makeLayer = function makeLayer(opts) {\n opts = opts || {};\n var after = opts.after;\n getBb();\n var area = bb.w * scale * (bb.h * scale);\n\n if (area > maxLayerArea) {\n return null;\n }\n\n var layer = self.makeLayer(bb, lvl);\n\n if (after != null) {\n var index = layers.indexOf(after) + 1;\n layers.splice(index, 0, layer);\n } else if (opts.insert === undefined || opts.insert) {\n // no after specified => first layer made so put at start\n layers.unshift(layer);\n } // if( tmpLayers ){\n //self.queueLayer( layer );\n // }\n\n\n return layer;\n };\n\n if (self.skipping && !firstGet) {\n // log('skip layers');\n return null;\n } // log('do layers');\n\n\n var layer = null;\n var maxElesPerLayer = eles.length / defNumLayers;\n var allowLazyQueueing = !firstGet;\n\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n var rs = ele._private.rscratch;\n var caches = rs.imgLayerCaches = rs.imgLayerCaches || {}; // log('look at ele', ele.id());\n\n var existingLayer = caches[lvl];\n\n if (existingLayer) {\n // reuse layer for later eles\n // log('reuse layer for', ele.id());\n layer = existingLayer;\n continue;\n }\n\n if (!layer || layer.eles.length >= maxElesPerLayer || !boundingBoxInBoundingBox(layer.bb, ele.boundingBox())) {\n // log('make new layer for ele %s', ele.id());\n layer = makeLayer({\n insert: true,\n after: layer\n }); // if now layer can be built then we can't use layers at this level\n\n if (!layer) {\n return null;\n } // log('new layer with id %s', layer.id);\n\n }\n\n if (tmpLayers || allowLazyQueueing) {\n // log('queue ele %s in layer %s', ele.id(), layer.id);\n self.queueLayer(layer, ele);\n } else {\n // log('draw ele %s in layer %s', ele.id(), layer.id);\n self.drawEleInLayer(layer, ele, lvl, pxRatio);\n }\n\n layer.eles.push(ele);\n caches[lvl] = layer;\n } // log('--');\n\n\n if (tmpLayers) {\n // then we only queued the current layerset and can't draw it yet\n return tmpLayers;\n }\n\n if (allowLazyQueueing) {\n // log('lazy queue level', lvl);\n return null;\n }\n\n return layers;\n}; // a layer may want to use an ele cache of a higher level to avoid blurriness\n// so the layer level might not equal the ele level\n\n\nLTCp.getEleLevelForLayerLevel = function (lvl, pxRatio) {\n return lvl;\n};\n\nLTCp.drawEleInLayer = function (layer, ele, lvl, pxRatio) {\n var self = this;\n var r = this.renderer;\n var context = layer.context;\n var bb = ele.boundingBox();\n\n if (bb.w === 0 || bb.h === 0 || !ele.visible()) {\n return;\n }\n\n lvl = self.getEleLevelForLayerLevel(lvl, pxRatio);\n\n {\n r.setImgSmoothing(context, false);\n }\n\n {\n r.drawCachedElement(context, ele, null, null, lvl, useHighQualityEleTxrReqs);\n }\n\n {\n r.setImgSmoothing(context, true);\n }\n};\n\nLTCp.levelIsComplete = function (lvl, eles) {\n var self = this;\n var layers = self.layersByLevel[lvl];\n\n if (!layers || layers.length === 0) {\n return false;\n }\n\n var numElesInLayers = 0;\n\n for (var i = 0; i < layers.length; i++) {\n var layer = layers[i]; // if there are any eles needed to be drawn yet, the level is not complete\n\n if (layer.reqs > 0) {\n return false;\n } // if the layer is invalid, the level is not complete\n\n\n if (layer.invalid) {\n return false;\n }\n\n numElesInLayers += layer.eles.length;\n } // we should have exactly the number of eles passed in to be complete\n\n\n if (numElesInLayers !== eles.length) {\n return false;\n }\n\n return true;\n};\n\nLTCp.validateLayersElesOrdering = function (lvl, eles) {\n var layers = this.layersByLevel[lvl];\n\n if (!layers) {\n return;\n } // if in a layer the eles are not in the same order, then the layer is invalid\n // (i.e. there is an ele in between the eles in the layer)\n\n\n for (var i = 0; i < layers.length; i++) {\n var layer = layers[i];\n var offset = -1; // find the offset\n\n for (var j = 0; j < eles.length; j++) {\n if (layer.eles[0] === eles[j]) {\n offset = j;\n break;\n }\n }\n\n if (offset < 0) {\n // then the layer has nonexistant elements and is invalid\n this.invalidateLayer(layer);\n continue;\n } // the eles in the layer must be in the same continuous order, else the layer is invalid\n\n\n var o = offset;\n\n for (var j = 0; j < layer.eles.length; j++) {\n if (layer.eles[j] !== eles[o + j]) {\n // log('invalidate based on ordering', layer.id);\n this.invalidateLayer(layer);\n break;\n }\n }\n }\n};\n\nLTCp.updateElementsInLayers = function (eles, update) {\n var self = this;\n var isEles = element(eles[0]); // collect udpated elements (cascaded from the layers) and update each\n // layer itself along the way\n\n for (var i = 0; i < eles.length; i++) {\n var req = isEles ? null : eles[i];\n var ele = isEles ? eles[i] : eles[i].ele;\n var rs = ele._private.rscratch;\n var caches = rs.imgLayerCaches = rs.imgLayerCaches || {};\n\n for (var l = minLvl; l <= maxLvl; l++) {\n var layer = caches[l];\n\n if (!layer) {\n continue;\n } // if update is a request from the ele cache, then it affects only\n // the matching level\n\n\n if (req && self.getEleLevelForLayerLevel(layer.level) !== req.level) {\n continue;\n }\n\n update(layer, ele, req);\n }\n }\n};\n\nLTCp.haveLayers = function () {\n var self = this;\n var haveLayers = false;\n\n for (var l = minLvl; l <= maxLvl; l++) {\n var layers = self.layersByLevel[l];\n\n if (layers && layers.length > 0) {\n haveLayers = true;\n break;\n }\n }\n\n return haveLayers;\n};\n\nLTCp.invalidateElements = function (eles) {\n var self = this;\n\n if (eles.length === 0) {\n return;\n }\n\n self.lastInvalidationTime = performanceNow(); // log('update invalidate layer time from eles');\n\n if (eles.length === 0 || !self.haveLayers()) {\n return;\n }\n\n self.updateElementsInLayers(eles, function invalAssocLayers(layer, ele, req) {\n self.invalidateLayer(layer);\n });\n};\n\nLTCp.invalidateLayer = function (layer) {\n // log('update invalidate layer time');\n this.lastInvalidationTime = performanceNow();\n\n if (layer.invalid) {\n return;\n } // save cycles\n\n\n var lvl = layer.level;\n var eles = layer.eles;\n var layers = this.layersByLevel[lvl]; // log('invalidate layer', layer.id );\n\n removeFromArray(layers, layer); // layer.eles = [];\n\n layer.elesQueue = [];\n layer.invalid = true;\n\n if (layer.replacement) {\n layer.replacement.invalid = true;\n }\n\n for (var i = 0; i < eles.length; i++) {\n var caches = eles[i]._private.rscratch.imgLayerCaches;\n\n if (caches) {\n caches[lvl] = null;\n }\n }\n};\n\nLTCp.refineElementTextures = function (eles) {\n var self = this; // log('refine', eles.length);\n\n self.updateElementsInLayers(eles, function refineEachEle(layer, ele, req) {\n var rLyr = layer.replacement;\n\n if (!rLyr) {\n rLyr = layer.replacement = self.makeLayer(layer.bb, layer.level);\n rLyr.replaces = layer;\n rLyr.eles = layer.eles; // log('make replacement layer %s for %s with level %s', rLyr.id, layer.id, rLyr.level);\n }\n\n if (!rLyr.reqs) {\n for (var i = 0; i < rLyr.eles.length; i++) {\n self.queueLayer(rLyr, rLyr.eles[i]);\n } // log('queue replacement layer refinement', rLyr.id);\n\n }\n });\n};\n\nLTCp.enqueueElementRefinement = function (ele) {\n\n this.eleTxrDeqs.merge(ele);\n this.scheduleElementRefinement();\n};\n\nLTCp.queueLayer = function (layer, ele) {\n var self = this;\n var q = self.layersQueue;\n var elesQ = layer.elesQueue;\n var hasId = elesQ.hasId = elesQ.hasId || {}; // if a layer is going to be replaced, queuing is a waste of time\n\n if (layer.replacement) {\n return;\n }\n\n if (ele) {\n if (hasId[ele.id()]) {\n return;\n }\n\n elesQ.push(ele);\n hasId[ele.id()] = true;\n }\n\n if (layer.reqs) {\n layer.reqs++;\n q.updateItem(layer);\n } else {\n layer.reqs = 1;\n q.push(layer);\n }\n};\n\nLTCp.dequeue = function (pxRatio) {\n var self = this;\n var q = self.layersQueue;\n var deqd = [];\n var eleDeqs = 0;\n\n while (eleDeqs < maxDeqSize) {\n if (q.size() === 0) {\n break;\n }\n\n var layer = q.peek(); // if a layer has been or will be replaced, then don't waste time with it\n\n if (layer.replacement) {\n // log('layer %s in queue skipped b/c it already has a replacement', layer.id);\n q.pop();\n continue;\n } // if this is a replacement layer that has been superceded, then forget it\n\n\n if (layer.replaces && layer !== layer.replaces.replacement) {\n // log('layer is no longer the most uptodate replacement; dequeued', layer.id)\n q.pop();\n continue;\n }\n\n if (layer.invalid) {\n // log('replacement layer %s is invalid; dequeued', layer.id);\n q.pop();\n continue;\n }\n\n var ele = layer.elesQueue.shift();\n\n if (ele) {\n // log('dequeue layer %s', layer.id);\n self.drawEleInLayer(layer, ele, layer.level, pxRatio);\n eleDeqs++;\n }\n\n if (deqd.length === 0) {\n // we need only one entry in deqd to queue redrawing etc\n deqd.push(true);\n } // if the layer has all its eles done, then remove from the queue\n\n\n if (layer.elesQueue.length === 0) {\n q.pop();\n layer.reqs = 0; // log('dequeue of layer %s complete', layer.id);\n // when a replacement layer is dequeued, it replaces the old layer in the level\n\n if (layer.replaces) {\n self.applyLayerReplacement(layer);\n }\n\n self.requestRedraw();\n }\n }\n\n return deqd;\n};\n\nLTCp.applyLayerReplacement = function (layer) {\n var self = this;\n var layersInLevel = self.layersByLevel[layer.level];\n var replaced = layer.replaces;\n var index = layersInLevel.indexOf(replaced); // if the replaced layer is not in the active list for the level, then replacing\n // refs would be a mistake (i.e. overwriting the true active layer)\n\n if (index < 0 || replaced.invalid) {\n // log('replacement layer would have no effect', layer.id);\n return;\n }\n\n layersInLevel[index] = layer; // replace level ref\n // replace refs in eles\n\n for (var i = 0; i < layer.eles.length; i++) {\n var _p = layer.eles[i]._private;\n var cache = _p.imgLayerCaches = _p.imgLayerCaches || {};\n\n if (cache) {\n cache[layer.level] = layer;\n }\n } // log('apply replacement layer %s over %s', layer.id, replaced.id);\n\n\n self.requestRedraw();\n};\n\nLTCp.requestRedraw = debounce__default[\"default\"](function () {\n var r = this.renderer;\n r.redrawHint('eles', true);\n r.redrawHint('drag', true);\n r.redraw();\n}, 100);\nLTCp.setupDequeueing = defs.setupDequeueing({\n deqRedrawThreshold: deqRedrawThreshold,\n deqCost: deqCost,\n deqAvgCost: deqAvgCost,\n deqNoDrawCost: deqNoDrawCost,\n deqFastCost: deqFastCost,\n deq: function deq(self, pxRatio) {\n return self.dequeue(pxRatio);\n },\n onDeqd: noop$1,\n shouldRedraw: trueify,\n priority: function priority(self) {\n return self.renderer.beforeRenderPriorities.lyrTxrDeq;\n }\n});\n\nvar CRp$a = {};\nvar impl;\n\nfunction polygon(context, points) {\n for (var i = 0; i < points.length; i++) {\n var pt = points[i];\n context.lineTo(pt.x, pt.y);\n }\n}\n\nfunction triangleBackcurve(context, points, controlPoint) {\n var firstPt;\n\n for (var i = 0; i < points.length; i++) {\n var pt = points[i];\n\n if (i === 0) {\n firstPt = pt;\n }\n\n context.lineTo(pt.x, pt.y);\n }\n\n context.quadraticCurveTo(controlPoint.x, controlPoint.y, firstPt.x, firstPt.y);\n}\n\nfunction triangleTee(context, trianglePoints, teePoints) {\n if (context.beginPath) {\n context.beginPath();\n }\n\n var triPts = trianglePoints;\n\n for (var i = 0; i < triPts.length; i++) {\n var pt = triPts[i];\n context.lineTo(pt.x, pt.y);\n }\n\n var teePts = teePoints;\n var firstTeePt = teePoints[0];\n context.moveTo(firstTeePt.x, firstTeePt.y);\n\n for (var i = 1; i < teePts.length; i++) {\n var pt = teePts[i];\n context.lineTo(pt.x, pt.y);\n }\n\n if (context.closePath) {\n context.closePath();\n }\n}\n\nfunction circleTriangle(context, trianglePoints, rx, ry, r) {\n if (context.beginPath) {\n context.beginPath();\n }\n\n context.arc(rx, ry, r, 0, Math.PI * 2, false);\n var triPts = trianglePoints;\n var firstTrPt = triPts[0];\n context.moveTo(firstTrPt.x, firstTrPt.y);\n\n for (var i = 0; i < triPts.length; i++) {\n var pt = triPts[i];\n context.lineTo(pt.x, pt.y);\n }\n\n if (context.closePath) {\n context.closePath();\n }\n}\n\nfunction circle(context, rx, ry, r) {\n context.arc(rx, ry, r, 0, Math.PI * 2, false);\n}\n\nCRp$a.arrowShapeImpl = function (name) {\n return (impl || (impl = {\n 'polygon': polygon,\n 'triangle-backcurve': triangleBackcurve,\n 'triangle-tee': triangleTee,\n 'circle-triangle': circleTriangle,\n 'triangle-cross': triangleTee,\n 'circle': circle\n }))[name];\n};\n\nvar CRp$9 = {};\n\nCRp$9.drawElement = function (context, ele, shiftToOriginWithBb, showLabel, showOverlay, showOpacity) {\n var r = this;\n\n if (ele.isNode()) {\n r.drawNode(context, ele, shiftToOriginWithBb, showLabel, showOverlay, showOpacity);\n } else {\n r.drawEdge(context, ele, shiftToOriginWithBb, showLabel, showOverlay, showOpacity);\n }\n};\n\nCRp$9.drawElementOverlay = function (context, ele) {\n var r = this;\n\n if (ele.isNode()) {\n r.drawNodeOverlay(context, ele);\n } else {\n r.drawEdgeOverlay(context, ele);\n }\n};\n\nCRp$9.drawElementUnderlay = function (context, ele) {\n var r = this;\n\n if (ele.isNode()) {\n r.drawNodeUnderlay(context, ele);\n } else {\n r.drawEdgeUnderlay(context, ele);\n }\n};\n\nCRp$9.drawCachedElementPortion = function (context, ele, eleTxrCache, pxRatio, lvl, reason, getRotation, getOpacity) {\n var r = this;\n var bb = eleTxrCache.getBoundingBox(ele);\n\n if (bb.w === 0 || bb.h === 0) {\n return;\n } // ignore zero size case\n\n\n var eleCache = eleTxrCache.getElement(ele, bb, pxRatio, lvl, reason);\n\n if (eleCache != null) {\n var opacity = getOpacity(r, ele);\n\n if (opacity === 0) {\n return;\n }\n\n var theta = getRotation(r, ele);\n var x1 = bb.x1,\n y1 = bb.y1,\n w = bb.w,\n h = bb.h;\n var x, y, sx, sy, smooth;\n\n if (theta !== 0) {\n var rotPt = eleTxrCache.getRotationPoint(ele);\n sx = rotPt.x;\n sy = rotPt.y;\n context.translate(sx, sy);\n context.rotate(theta);\n smooth = r.getImgSmoothing(context);\n\n if (!smooth) {\n r.setImgSmoothing(context, true);\n }\n\n var off = eleTxrCache.getRotationOffset(ele);\n x = off.x;\n y = off.y;\n } else {\n x = x1;\n y = y1;\n }\n\n var oldGlobalAlpha;\n\n if (opacity !== 1) {\n oldGlobalAlpha = context.globalAlpha;\n context.globalAlpha = oldGlobalAlpha * opacity;\n }\n\n context.drawImage(eleCache.texture.canvas, eleCache.x, 0, eleCache.width, eleCache.height, x, y, w, h);\n\n if (opacity !== 1) {\n context.globalAlpha = oldGlobalAlpha;\n }\n\n if (theta !== 0) {\n context.rotate(-theta);\n context.translate(-sx, -sy);\n\n if (!smooth) {\n r.setImgSmoothing(context, false);\n }\n }\n } else {\n eleTxrCache.drawElement(context, ele); // direct draw fallback\n }\n};\n\nvar getZeroRotation = function getZeroRotation() {\n return 0;\n};\n\nvar getLabelRotation = function getLabelRotation(r, ele) {\n return r.getTextAngle(ele, null);\n};\n\nvar getSourceLabelRotation = function getSourceLabelRotation(r, ele) {\n return r.getTextAngle(ele, 'source');\n};\n\nvar getTargetLabelRotation = function getTargetLabelRotation(r, ele) {\n return r.getTextAngle(ele, 'target');\n};\n\nvar getOpacity = function getOpacity(r, ele) {\n return ele.effectiveOpacity();\n};\n\nvar getTextOpacity = function getTextOpacity(e, ele) {\n return ele.pstyle('text-opacity').pfValue * ele.effectiveOpacity();\n};\n\nCRp$9.drawCachedElement = function (context, ele, pxRatio, extent, lvl, requestHighQuality) {\n var r = this;\n var _r$data = r.data,\n eleTxrCache = _r$data.eleTxrCache,\n lblTxrCache = _r$data.lblTxrCache,\n slbTxrCache = _r$data.slbTxrCache,\n tlbTxrCache = _r$data.tlbTxrCache;\n var bb = ele.boundingBox();\n var reason = requestHighQuality === true ? eleTxrCache.reasons.highQuality : null;\n\n if (bb.w === 0 || bb.h === 0 || !ele.visible()) {\n return;\n }\n\n if (!extent || boundingBoxesIntersect(bb, extent)) {\n var isEdge = ele.isEdge();\n\n var badLine = ele.element()._private.rscratch.badLine;\n\n r.drawElementUnderlay(context, ele);\n r.drawCachedElementPortion(context, ele, eleTxrCache, pxRatio, lvl, reason, getZeroRotation, getOpacity);\n\n if (!isEdge || !badLine) {\n r.drawCachedElementPortion(context, ele, lblTxrCache, pxRatio, lvl, reason, getLabelRotation, getTextOpacity);\n }\n\n if (isEdge && !badLine) {\n r.drawCachedElementPortion(context, ele, slbTxrCache, pxRatio, lvl, reason, getSourceLabelRotation, getTextOpacity);\n r.drawCachedElementPortion(context, ele, tlbTxrCache, pxRatio, lvl, reason, getTargetLabelRotation, getTextOpacity);\n }\n\n r.drawElementOverlay(context, ele);\n }\n};\n\nCRp$9.drawElements = function (context, eles) {\n var r = this;\n\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n r.drawElement(context, ele);\n }\n};\n\nCRp$9.drawCachedElements = function (context, eles, pxRatio, extent) {\n var r = this;\n\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n r.drawCachedElement(context, ele, pxRatio, extent);\n }\n};\n\nCRp$9.drawCachedNodes = function (context, eles, pxRatio, extent) {\n var r = this;\n\n for (var i = 0; i < eles.length; i++) {\n var ele = eles[i];\n\n if (!ele.isNode()) {\n continue;\n }\n\n r.drawCachedElement(context, ele, pxRatio, extent);\n }\n};\n\nCRp$9.drawLayeredElements = function (context, eles, pxRatio, extent) {\n var r = this;\n var layers = r.data.lyrTxrCache.getLayers(eles, pxRatio);\n\n if (layers) {\n for (var i = 0; i < layers.length; i++) {\n var layer = layers[i];\n var bb = layer.bb;\n\n if (bb.w === 0 || bb.h === 0) {\n continue;\n }\n\n context.drawImage(layer.canvas, bb.x1, bb.y1, bb.w, bb.h);\n }\n } else {\n // fall back on plain caching if no layers\n r.drawCachedElements(context, eles, pxRatio, extent);\n }\n};\n\n/* global Path2D */\nvar CRp$8 = {};\n\nCRp$8.drawEdge = function (context, edge, shiftToOriginWithBb) {\n var drawLabel = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;\n var shouldDrawOverlay = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;\n var shouldDrawOpacity = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : true;\n var r = this;\n var rs = edge._private.rscratch;\n\n if (shouldDrawOpacity && !edge.visible()) {\n return;\n } // if bezier ctrl pts can not be calculated, then die\n\n\n if (rs.badLine || rs.allpts == null || isNaN(rs.allpts[0])) {\n // isNaN in case edge is impossible and browser bugs (e.g. safari)\n return;\n }\n\n var bb;\n\n if (shiftToOriginWithBb) {\n bb = shiftToOriginWithBb;\n context.translate(-bb.x1, -bb.y1);\n }\n\n var opacity = shouldDrawOpacity ? edge.pstyle('opacity').value : 1;\n var lineOpacity = shouldDrawOpacity ? edge.pstyle('line-opacity').value : 1;\n var curveStyle = edge.pstyle('curve-style').value;\n var lineStyle = edge.pstyle('line-style').value;\n var edgeWidth = edge.pstyle('width').pfValue;\n var lineCap = edge.pstyle('line-cap').value;\n var effectiveLineOpacity = opacity * lineOpacity; // separate arrow opacity would require arrow-opacity property\n\n var effectiveArrowOpacity = opacity * lineOpacity;\n\n var drawLine = function drawLine() {\n var strokeOpacity = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : effectiveLineOpacity;\n\n if (curveStyle === 'straight-triangle') {\n r.eleStrokeStyle(context, edge, strokeOpacity);\n r.drawEdgeTrianglePath(edge, context, rs.allpts);\n } else {\n context.lineWidth = edgeWidth;\n context.lineCap = lineCap;\n r.eleStrokeStyle(context, edge, strokeOpacity);\n r.drawEdgePath(edge, context, rs.allpts, lineStyle);\n context.lineCap = 'butt'; // reset for other drawing functions\n }\n };\n\n var drawOverlay = function drawOverlay() {\n if (!shouldDrawOverlay) {\n return;\n }\n\n r.drawEdgeOverlay(context, edge);\n };\n\n var drawUnderlay = function drawUnderlay() {\n if (!shouldDrawOverlay) {\n return;\n }\n\n r.drawEdgeUnderlay(context, edge);\n };\n\n var drawArrows = function drawArrows() {\n var arrowOpacity = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : effectiveArrowOpacity;\n r.drawArrowheads(context, edge, arrowOpacity);\n };\n\n var drawText = function drawText() {\n r.drawElementText(context, edge, null, drawLabel);\n };\n\n context.lineJoin = 'round';\n var ghost = edge.pstyle('ghost').value === 'yes';\n\n if (ghost) {\n var gx = edge.pstyle('ghost-offset-x').pfValue;\n var gy = edge.pstyle('ghost-offset-y').pfValue;\n var ghostOpacity = edge.pstyle('ghost-opacity').value;\n var effectiveGhostOpacity = effectiveLineOpacity * ghostOpacity;\n context.translate(gx, gy);\n drawLine(effectiveGhostOpacity);\n drawArrows(effectiveGhostOpacity);\n context.translate(-gx, -gy);\n }\n\n drawUnderlay();\n drawLine();\n drawArrows();\n drawOverlay();\n drawText();\n\n if (shiftToOriginWithBb) {\n context.translate(bb.x1, bb.y1);\n }\n};\n\nvar drawEdgeOverlayUnderlay = function drawEdgeOverlayUnderlay(overlayOrUnderlay) {\n if (!['overlay', 'underlay'].includes(overlayOrUnderlay)) {\n throw new Error('Invalid state');\n }\n\n return function (context, edge) {\n if (!edge.visible()) {\n return;\n }\n\n var opacity = edge.pstyle(\"\".concat(overlayOrUnderlay, \"-opacity\")).value;\n\n if (opacity === 0) {\n return;\n }\n\n var r = this;\n var usePaths = r.usePaths();\n var rs = edge._private.rscratch;\n var padding = edge.pstyle(\"\".concat(overlayOrUnderlay, \"-padding\")).pfValue;\n var width = 2 * padding;\n var color = edge.pstyle(\"\".concat(overlayOrUnderlay, \"-color\")).value;\n context.lineWidth = width;\n\n if (rs.edgeType === 'self' && !usePaths) {\n context.lineCap = 'butt';\n } else {\n context.lineCap = 'round';\n }\n\n r.colorStrokeStyle(context, color[0], color[1], color[2], opacity);\n r.drawEdgePath(edge, context, rs.allpts, 'solid');\n };\n};\n\nCRp$8.drawEdgeOverlay = drawEdgeOverlayUnderlay('overlay');\nCRp$8.drawEdgeUnderlay = drawEdgeOverlayUnderlay('underlay');\n\nCRp$8.drawEdgePath = function (edge, context, pts, type) {\n var rs = edge._private.rscratch;\n var canvasCxt = context;\n var path;\n var pathCacheHit = false;\n var usePaths = this.usePaths();\n var lineDashPattern = edge.pstyle('line-dash-pattern').pfValue;\n var lineDashOffset = edge.pstyle('line-dash-offset').pfValue;\n\n if (usePaths) {\n var pathCacheKey = pts.join('$');\n var keyMatches = rs.pathCacheKey && rs.pathCacheKey === pathCacheKey;\n\n if (keyMatches) {\n path = context = rs.pathCache;\n pathCacheHit = true;\n } else {\n path = context = new Path2D();\n rs.pathCacheKey = pathCacheKey;\n rs.pathCache = path;\n }\n }\n\n if (canvasCxt.setLineDash) {\n // for very outofdate browsers\n switch (type) {\n case 'dotted':\n canvasCxt.setLineDash([1, 1]);\n break;\n\n case 'dashed':\n canvasCxt.setLineDash(lineDashPattern);\n canvasCxt.lineDashOffset = lineDashOffset;\n break;\n\n case 'solid':\n canvasCxt.setLineDash([]);\n break;\n }\n }\n\n if (!pathCacheHit && !rs.badLine) {\n if (context.beginPath) {\n context.beginPath();\n }\n\n context.moveTo(pts[0], pts[1]);\n\n switch (rs.edgeType) {\n case 'bezier':\n case 'self':\n case 'compound':\n case 'multibezier':\n for (var i = 2; i + 3 < pts.length; i += 4) {\n context.quadraticCurveTo(pts[i], pts[i + 1], pts[i + 2], pts[i + 3]);\n }\n\n break;\n\n case 'straight':\n case 'segments':\n case 'haystack':\n for (var _i = 2; _i + 1 < pts.length; _i += 2) {\n context.lineTo(pts[_i], pts[_i + 1]);\n }\n\n break;\n }\n }\n\n context = canvasCxt;\n\n if (usePaths) {\n context.stroke(path);\n } else {\n context.stroke();\n } // reset any line dashes\n\n\n if (context.setLineDash) {\n // for very outofdate browsers\n context.setLineDash([]);\n }\n};\n\nCRp$8.drawEdgeTrianglePath = function (edge, context, pts) {\n // use line stroke style for triangle fill style\n context.fillStyle = context.strokeStyle;\n var edgeWidth = edge.pstyle('width').pfValue;\n\n for (var i = 0; i + 1 < pts.length; i += 2) {\n var vector = [pts[i + 2] - pts[i], pts[i + 3] - pts[i + 1]];\n var length = Math.sqrt(vector[0] * vector[0] + vector[1] * vector[1]);\n var normal = [vector[1] / length, -vector[0] / length];\n var triangleHead = [normal[0] * edgeWidth / 2, normal[1] * edgeWidth / 2];\n context.beginPath();\n context.moveTo(pts[i] - triangleHead[0], pts[i + 1] - triangleHead[1]);\n context.lineTo(pts[i] + triangleHead[0], pts[i + 1] + triangleHead[1]);\n context.lineTo(pts[i + 2], pts[i + 3]);\n context.closePath();\n context.fill();\n }\n};\n\nCRp$8.drawArrowheads = function (context, edge, opacity) {\n var rs = edge._private.rscratch;\n var isHaystack = rs.edgeType === 'haystack';\n\n if (!isHaystack) {\n this.drawArrowhead(context, edge, 'source', rs.arrowStartX, rs.arrowStartY, rs.srcArrowAngle, opacity);\n }\n\n this.drawArrowhead(context, edge, 'mid-target', rs.midX, rs.midY, rs.midtgtArrowAngle, opacity);\n this.drawArrowhead(context, edge, 'mid-source', rs.midX, rs.midY, rs.midsrcArrowAngle, opacity);\n\n if (!isHaystack) {\n this.drawArrowhead(context, edge, 'target', rs.arrowEndX, rs.arrowEndY, rs.tgtArrowAngle, opacity);\n }\n};\n\nCRp$8.drawArrowhead = function (context, edge, prefix, x, y, angle, opacity) {\n if (isNaN(x) || x == null || isNaN(y) || y == null || isNaN(angle) || angle == null) {\n return;\n }\n\n var self = this;\n var arrowShape = edge.pstyle(prefix + '-arrow-shape').value;\n\n if (arrowShape === 'none') {\n return;\n }\n\n var arrowClearFill = edge.pstyle(prefix + '-arrow-fill').value === 'hollow' ? 'both' : 'filled';\n var arrowFill = edge.pstyle(prefix + '-arrow-fill').value;\n var edgeWidth = edge.pstyle('width').pfValue;\n var edgeOpacity = edge.pstyle('opacity').value;\n\n if (opacity === undefined) {\n opacity = edgeOpacity;\n }\n\n var gco = context.globalCompositeOperation;\n\n if (opacity !== 1 || arrowFill === 'hollow') {\n // then extra clear is needed\n context.globalCompositeOperation = 'destination-out';\n self.colorFillStyle(context, 255, 255, 255, 1);\n self.colorStrokeStyle(context, 255, 255, 255, 1);\n self.drawArrowShape(edge, context, arrowClearFill, edgeWidth, arrowShape, x, y, angle);\n context.globalCompositeOperation = gco;\n } // otherwise, the opaque arrow clears it for free :)\n\n\n var color = edge.pstyle(prefix + '-arrow-color').value;\n self.colorFillStyle(context, color[0], color[1], color[2], opacity);\n self.colorStrokeStyle(context, color[0], color[1], color[2], opacity);\n self.drawArrowShape(edge, context, arrowFill, edgeWidth, arrowShape, x, y, angle);\n};\n\nCRp$8.drawArrowShape = function (edge, context, fill, edgeWidth, shape, x, y, angle) {\n var r = this;\n var usePaths = this.usePaths() && shape !== 'triangle-cross';\n var pathCacheHit = false;\n var path;\n var canvasContext = context;\n var translation = {\n x: x,\n y: y\n };\n var scale = edge.pstyle('arrow-scale').value;\n var size = this.getArrowWidth(edgeWidth, scale);\n var shapeImpl = r.arrowShapes[shape];\n\n if (usePaths) {\n var cache = r.arrowPathCache = r.arrowPathCache || [];\n var key = hashString(shape);\n var cachedPath = cache[key];\n\n if (cachedPath != null) {\n path = context = cachedPath;\n pathCacheHit = true;\n } else {\n path = context = new Path2D();\n cache[key] = path;\n }\n }\n\n if (!pathCacheHit) {\n if (context.beginPath) {\n context.beginPath();\n }\n\n if (usePaths) {\n // store in the path cache with values easily manipulated later\n shapeImpl.draw(context, 1, 0, {\n x: 0,\n y: 0\n }, 1);\n } else {\n shapeImpl.draw(context, size, angle, translation, edgeWidth);\n }\n\n if (context.closePath) {\n context.closePath();\n }\n }\n\n context = canvasContext;\n\n if (usePaths) {\n // set transform to arrow position/orientation\n context.translate(x, y);\n context.rotate(angle);\n context.scale(size, size);\n }\n\n if (fill === 'filled' || fill === 'both') {\n if (usePaths) {\n context.fill(path);\n } else {\n context.fill();\n }\n }\n\n if (fill === 'hollow' || fill === 'both') {\n context.lineWidth = (shapeImpl.matchEdgeWidth ? edgeWidth : 1) / (usePaths ? size : 1);\n context.lineJoin = 'miter';\n\n if (usePaths) {\n context.stroke(path);\n } else {\n context.stroke();\n }\n }\n\n if (usePaths) {\n // reset transform by applying inverse\n context.scale(1 / size, 1 / size);\n context.rotate(-angle);\n context.translate(-x, -y);\n }\n};\n\nvar CRp$7 = {};\n\nCRp$7.safeDrawImage = function (context, img, ix, iy, iw, ih, x, y, w, h) {\n // detect problematic cases for old browsers with bad images (cheaper than try-catch)\n if (iw <= 0 || ih <= 0 || w <= 0 || h <= 0) {\n return;\n }\n\n try {\n context.drawImage(img, ix, iy, iw, ih, x, y, w, h);\n } catch (e) {\n warn(e);\n }\n};\n\nCRp$7.drawInscribedImage = function (context, img, node, index, nodeOpacity) {\n var r = this;\n var pos = node.position();\n var nodeX = pos.x;\n var nodeY = pos.y;\n var styleObj = node.cy().style();\n var getIndexedStyle = styleObj.getIndexedStyle.bind(styleObj);\n var fit = getIndexedStyle(node, 'background-fit', 'value', index);\n var repeat = getIndexedStyle(node, 'background-repeat', 'value', index);\n var nodeW = node.width();\n var nodeH = node.height();\n var paddingX2 = node.padding() * 2;\n var nodeTW = nodeW + (getIndexedStyle(node, 'background-width-relative-to', 'value', index) === 'inner' ? 0 : paddingX2);\n var nodeTH = nodeH + (getIndexedStyle(node, 'background-height-relative-to', 'value', index) === 'inner' ? 0 : paddingX2);\n var rs = node._private.rscratch;\n var clip = getIndexedStyle(node, 'background-clip', 'value', index);\n var shouldClip = clip === 'node';\n var imgOpacity = getIndexedStyle(node, 'background-image-opacity', 'value', index) * nodeOpacity;\n var smooth = getIndexedStyle(node, 'background-image-smoothing', 'value', index);\n var imgW = img.width || img.cachedW;\n var imgH = img.height || img.cachedH; // workaround for broken browsers like ie\n\n if (null == imgW || null == imgH) {\n document.body.appendChild(img); // eslint-disable-line no-undef\n\n imgW = img.cachedW = img.width || img.offsetWidth;\n imgH = img.cachedH = img.height || img.offsetHeight;\n document.body.removeChild(img); // eslint-disable-line no-undef\n }\n\n var w = imgW;\n var h = imgH;\n\n if (getIndexedStyle(node, 'background-width', 'value', index) !== 'auto') {\n if (getIndexedStyle(node, 'background-width', 'units', index) === '%') {\n w = getIndexedStyle(node, 'background-width', 'pfValue', index) * nodeTW;\n } else {\n w = getIndexedStyle(node, 'background-width', 'pfValue', index);\n }\n }\n\n if (getIndexedStyle(node, 'background-height', 'value', index) !== 'auto') {\n if (getIndexedStyle(node, 'background-height', 'units', index) === '%') {\n h = getIndexedStyle(node, 'background-height', 'pfValue', index) * nodeTH;\n } else {\n h = getIndexedStyle(node, 'background-height', 'pfValue', index);\n }\n }\n\n if (w === 0 || h === 0) {\n return; // no point in drawing empty image (and chrome is broken in this case)\n }\n\n if (fit === 'contain') {\n var scale = Math.min(nodeTW / w, nodeTH / h);\n w *= scale;\n h *= scale;\n } else if (fit === 'cover') {\n var scale = Math.max(nodeTW / w, nodeTH / h);\n w *= scale;\n h *= scale;\n }\n\n var x = nodeX - nodeTW / 2; // left\n\n var posXUnits = getIndexedStyle(node, 'background-position-x', 'units', index);\n var posXPfVal = getIndexedStyle(node, 'background-position-x', 'pfValue', index);\n\n if (posXUnits === '%') {\n x += (nodeTW - w) * posXPfVal;\n } else {\n x += posXPfVal;\n }\n\n var offXUnits = getIndexedStyle(node, 'background-offset-x', 'units', index);\n var offXPfVal = getIndexedStyle(node, 'background-offset-x', 'pfValue', index);\n\n if (offXUnits === '%') {\n x += (nodeTW - w) * offXPfVal;\n } else {\n x += offXPfVal;\n }\n\n var y = nodeY - nodeTH / 2; // top\n\n var posYUnits = getIndexedStyle(node, 'background-position-y', 'units', index);\n var posYPfVal = getIndexedStyle(node, 'background-position-y', 'pfValue', index);\n\n if (posYUnits === '%') {\n y += (nodeTH - h) * posYPfVal;\n } else {\n y += posYPfVal;\n }\n\n var offYUnits = getIndexedStyle(node, 'background-offset-y', 'units', index);\n var offYPfVal = getIndexedStyle(node, 'background-offset-y', 'pfValue', index);\n\n if (offYUnits === '%') {\n y += (nodeTH - h) * offYPfVal;\n } else {\n y += offYPfVal;\n }\n\n if (rs.pathCache) {\n x -= nodeX;\n y -= nodeY;\n nodeX = 0;\n nodeY = 0;\n }\n\n var gAlpha = context.globalAlpha;\n context.globalAlpha = imgOpacity;\n var smoothingEnabled = r.getImgSmoothing(context);\n var isSmoothingSwitched = false;\n\n if (smooth === 'no' && smoothingEnabled) {\n r.setImgSmoothing(context, false);\n isSmoothingSwitched = true;\n } else if (smooth === 'yes' && !smoothingEnabled) {\n r.setImgSmoothing(context, true);\n isSmoothingSwitched = true;\n }\n\n if (repeat === 'no-repeat') {\n if (shouldClip) {\n context.save();\n\n if (rs.pathCache) {\n context.clip(rs.pathCache);\n } else {\n r.nodeShapes[r.getNodeShape(node)].draw(context, nodeX, nodeY, nodeTW, nodeTH);\n context.clip();\n }\n }\n\n r.safeDrawImage(context, img, 0, 0, imgW, imgH, x, y, w, h);\n\n if (shouldClip) {\n context.restore();\n }\n } else {\n var pattern = context.createPattern(img, repeat);\n context.fillStyle = pattern;\n r.nodeShapes[r.getNodeShape(node)].draw(context, nodeX, nodeY, nodeTW, nodeTH);\n context.translate(x, y);\n context.fill();\n context.translate(-x, -y);\n }\n\n context.globalAlpha = gAlpha;\n\n if (isSmoothingSwitched) {\n r.setImgSmoothing(context, smoothingEnabled);\n }\n};\n\nvar CRp$6 = {};\n\nCRp$6.eleTextBiggerThanMin = function (ele, scale) {\n if (!scale) {\n var zoom = ele.cy().zoom();\n var pxRatio = this.getPixelRatio();\n var lvl = Math.ceil(log2(zoom * pxRatio)); // the effective texture level\n\n scale = Math.pow(2, lvl);\n }\n\n var computedSize = ele.pstyle('font-size').pfValue * scale;\n var minSize = ele.pstyle('min-zoomed-font-size').pfValue;\n\n if (computedSize < minSize) {\n return false;\n }\n\n return true;\n};\n\nCRp$6.drawElementText = function (context, ele, shiftToOriginWithBb, force, prefix) {\n var useEleOpacity = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : true;\n var r = this;\n\n if (force == null) {\n if (useEleOpacity && !r.eleTextBiggerThanMin(ele)) {\n return;\n }\n } else if (force === false) {\n return;\n }\n\n if (ele.isNode()) {\n var label = ele.pstyle('label');\n\n if (!label || !label.value) {\n return;\n }\n\n var justification = r.getLabelJustification(ele);\n context.textAlign = justification;\n context.textBaseline = 'bottom';\n } else {\n var badLine = ele.element()._private.rscratch.badLine;\n\n var _label = ele.pstyle('label');\n\n var srcLabel = ele.pstyle('source-label');\n var tgtLabel = ele.pstyle('target-label');\n\n if (badLine || (!_label || !_label.value) && (!srcLabel || !srcLabel.value) && (!tgtLabel || !tgtLabel.value)) {\n return;\n }\n\n context.textAlign = 'center';\n context.textBaseline = 'bottom';\n }\n\n var applyRotation = !shiftToOriginWithBb;\n var bb;\n\n if (shiftToOriginWithBb) {\n bb = shiftToOriginWithBb;\n context.translate(-bb.x1, -bb.y1);\n }\n\n if (prefix == null) {\n r.drawText(context, ele, null, applyRotation, useEleOpacity);\n\n if (ele.isEdge()) {\n r.drawText(context, ele, 'source', applyRotation, useEleOpacity);\n r.drawText(context, ele, 'target', applyRotation, useEleOpacity);\n }\n } else {\n r.drawText(context, ele, prefix, applyRotation, useEleOpacity);\n }\n\n if (shiftToOriginWithBb) {\n context.translate(bb.x1, bb.y1);\n }\n};\n\nCRp$6.getFontCache = function (context) {\n var cache;\n this.fontCaches = this.fontCaches || [];\n\n for (var i = 0; i < this.fontCaches.length; i++) {\n cache = this.fontCaches[i];\n\n if (cache.context === context) {\n return cache;\n }\n }\n\n cache = {\n context: context\n };\n this.fontCaches.push(cache);\n return cache;\n}; // set up canvas context with font\n// returns transformed text string\n\n\nCRp$6.setupTextStyle = function (context, ele) {\n var useEleOpacity = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;\n // Font style\n var labelStyle = ele.pstyle('font-style').strValue;\n var labelSize = ele.pstyle('font-size').pfValue + 'px';\n var labelFamily = ele.pstyle('font-family').strValue;\n var labelWeight = ele.pstyle('font-weight').strValue;\n var opacity = useEleOpacity ? ele.effectiveOpacity() * ele.pstyle('text-opacity').value : 1;\n var outlineOpacity = ele.pstyle('text-outline-opacity').value * opacity;\n var color = ele.pstyle('color').value;\n var outlineColor = ele.pstyle('text-outline-color').value;\n context.font = labelStyle + ' ' + labelWeight + ' ' + labelSize + ' ' + labelFamily;\n context.lineJoin = 'round'; // so text outlines aren't jagged\n\n this.colorFillStyle(context, color[0], color[1], color[2], opacity);\n this.colorStrokeStyle(context, outlineColor[0], outlineColor[1], outlineColor[2], outlineOpacity);\n}; // TODO ensure re-used\n\n\nfunction roundRect(ctx, x, y, width, height) {\n var radius = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 5;\n ctx.beginPath();\n ctx.moveTo(x + radius, y);\n ctx.lineTo(x + width - radius, y);\n ctx.quadraticCurveTo(x + width, y, x + width, y + radius);\n ctx.lineTo(x + width, y + height - radius);\n ctx.quadraticCurveTo(x + width, y + height, x + width - radius, y + height);\n ctx.lineTo(x + radius, y + height);\n ctx.quadraticCurveTo(x, y + height, x, y + height - radius);\n ctx.lineTo(x, y + radius);\n ctx.quadraticCurveTo(x, y, x + radius, y);\n ctx.closePath();\n ctx.fill();\n}\n\nCRp$6.getTextAngle = function (ele, prefix) {\n var theta;\n var _p = ele._private;\n var rscratch = _p.rscratch;\n var pdash = prefix ? prefix + '-' : '';\n var rotation = ele.pstyle(pdash + 'text-rotation');\n var textAngle = getPrefixedProperty(rscratch, 'labelAngle', prefix);\n\n if (rotation.strValue === 'autorotate') {\n theta = ele.isEdge() ? textAngle : 0;\n } else if (rotation.strValue === 'none') {\n theta = 0;\n } else {\n theta = rotation.pfValue;\n }\n\n return theta;\n};\n\nCRp$6.drawText = function (context, ele, prefix) {\n var applyRotation = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;\n var useEleOpacity = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;\n var _p = ele._private;\n var rscratch = _p.rscratch;\n var parentOpacity = useEleOpacity ? ele.effectiveOpacity() : 1;\n\n if (useEleOpacity && (parentOpacity === 0 || ele.pstyle('text-opacity').value === 0)) {\n return;\n } // use 'main' as an alias for the main label (i.e. null prefix)\n\n\n if (prefix === 'main') {\n prefix = null;\n }\n\n var textX = getPrefixedProperty(rscratch, 'labelX', prefix);\n var textY = getPrefixedProperty(rscratch, 'labelY', prefix);\n var orgTextX, orgTextY; // used for rotation\n\n var text = this.getLabelText(ele, prefix);\n\n if (text != null && text !== '' && !isNaN(textX) && !isNaN(textY)) {\n this.setupTextStyle(context, ele, useEleOpacity);\n var pdash = prefix ? prefix + '-' : '';\n var textW = getPrefixedProperty(rscratch, 'labelWidth', prefix);\n var textH = getPrefixedProperty(rscratch, 'labelHeight', prefix);\n var marginX = ele.pstyle(pdash + 'text-margin-x').pfValue;\n var marginY = ele.pstyle(pdash + 'text-margin-y').pfValue;\n var isEdge = ele.isEdge();\n var halign = ele.pstyle('text-halign').value;\n var valign = ele.pstyle('text-valign').value;\n\n if (isEdge) {\n halign = 'center';\n valign = 'center';\n }\n\n textX += marginX;\n textY += marginY;\n var theta;\n\n if (!applyRotation) {\n theta = 0;\n } else {\n theta = this.getTextAngle(ele, prefix);\n }\n\n if (theta !== 0) {\n orgTextX = textX;\n orgTextY = textY;\n context.translate(orgTextX, orgTextY);\n context.rotate(theta);\n textX = 0;\n textY = 0;\n }\n\n switch (valign) {\n case 'top':\n break;\n\n case 'center':\n textY += textH / 2;\n break;\n\n case 'bottom':\n textY += textH;\n break;\n }\n\n var backgroundOpacity = ele.pstyle('text-background-opacity').value;\n var borderOpacity = ele.pstyle('text-border-opacity').value;\n var textBorderWidth = ele.pstyle('text-border-width').pfValue;\n var backgroundPadding = ele.pstyle('text-background-padding').pfValue;\n\n if (backgroundOpacity > 0 || textBorderWidth > 0 && borderOpacity > 0) {\n var bgX = textX - backgroundPadding;\n\n switch (halign) {\n case 'left':\n bgX -= textW;\n break;\n\n case 'center':\n bgX -= textW / 2;\n break;\n }\n\n var bgY = textY - textH - backgroundPadding;\n var bgW = textW + 2 * backgroundPadding;\n var bgH = textH + 2 * backgroundPadding;\n\n if (backgroundOpacity > 0) {\n var textFill = context.fillStyle;\n var textBackgroundColor = ele.pstyle('text-background-color').value;\n context.fillStyle = 'rgba(' + textBackgroundColor[0] + ',' + textBackgroundColor[1] + ',' + textBackgroundColor[2] + ',' + backgroundOpacity * parentOpacity + ')';\n var styleShape = ele.pstyle('text-background-shape').strValue;\n\n if (styleShape.indexOf('round') === 0) {\n roundRect(context, bgX, bgY, bgW, bgH, 2);\n } else {\n context.fillRect(bgX, bgY, bgW, bgH);\n }\n\n context.fillStyle = textFill;\n }\n\n if (textBorderWidth > 0 && borderOpacity > 0) {\n var textStroke = context.strokeStyle;\n var textLineWidth = context.lineWidth;\n var textBorderColor = ele.pstyle('text-border-color').value;\n var textBorderStyle = ele.pstyle('text-border-style').value;\n context.strokeStyle = 'rgba(' + textBorderColor[0] + ',' + textBorderColor[1] + ',' + textBorderColor[2] + ',' + borderOpacity * parentOpacity + ')';\n context.lineWidth = textBorderWidth;\n\n if (context.setLineDash) {\n // for very outofdate browsers\n switch (textBorderStyle) {\n case 'dotted':\n context.setLineDash([1, 1]);\n break;\n\n case 'dashed':\n context.setLineDash([4, 2]);\n break;\n\n case 'double':\n context.lineWidth = textBorderWidth / 4; // 50% reserved for white between the two borders\n\n context.setLineDash([]);\n break;\n\n case 'solid':\n context.setLineDash([]);\n break;\n }\n }\n\n context.strokeRect(bgX, bgY, bgW, bgH);\n\n if (textBorderStyle === 'double') {\n var whiteWidth = textBorderWidth / 2;\n context.strokeRect(bgX + whiteWidth, bgY + whiteWidth, bgW - whiteWidth * 2, bgH - whiteWidth * 2);\n }\n\n if (context.setLineDash) {\n // for very outofdate browsers\n context.setLineDash([]);\n }\n\n context.lineWidth = textLineWidth;\n context.strokeStyle = textStroke;\n }\n }\n\n var lineWidth = 2 * ele.pstyle('text-outline-width').pfValue; // *2 b/c the stroke is drawn centred on the middle\n\n if (lineWidth > 0) {\n context.lineWidth = lineWidth;\n }\n\n if (ele.pstyle('text-wrap').value === 'wrap') {\n var lines = getPrefixedProperty(rscratch, 'labelWrapCachedLines', prefix);\n var lineHeight = getPrefixedProperty(rscratch, 'labelLineHeight', prefix);\n var halfTextW = textW / 2;\n var justification = this.getLabelJustification(ele);\n\n if (justification === 'auto') ; else if (halign === 'left') {\n // auto justification : right\n if (justification === 'left') {\n textX += -textW;\n } else if (justification === 'center') {\n textX += -halfTextW;\n } // else same as auto\n\n } else if (halign === 'center') {\n // auto justfication : center\n if (justification === 'left') {\n textX += -halfTextW;\n } else if (justification === 'right') {\n textX += halfTextW;\n } // else same as auto\n\n } else if (halign === 'right') {\n // auto justification : left\n if (justification === 'center') {\n textX += halfTextW;\n } else if (justification === 'right') {\n textX += textW;\n } // else same as auto\n\n }\n\n switch (valign) {\n case 'top':\n textY -= (lines.length - 1) * lineHeight;\n break;\n\n case 'center':\n case 'bottom':\n textY -= (lines.length - 1) * lineHeight;\n break;\n }\n\n for (var l = 0; l < lines.length; l++) {\n if (lineWidth > 0) {\n context.strokeText(lines[l], textX, textY);\n }\n\n context.fillText(lines[l], textX, textY);\n textY += lineHeight;\n }\n } else {\n if (lineWidth > 0) {\n context.strokeText(text, textX, textY);\n }\n\n context.fillText(text, textX, textY);\n }\n\n if (theta !== 0) {\n context.rotate(-theta);\n context.translate(-orgTextX, -orgTextY);\n }\n }\n};\n\n/* global Path2D */\nvar CRp$5 = {};\n\nCRp$5.drawNode = function (context, node, shiftToOriginWithBb) {\n var drawLabel = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;\n var shouldDrawOverlay = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;\n var shouldDrawOpacity = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : true;\n var r = this;\n var nodeWidth, nodeHeight;\n var _p = node._private;\n var rs = _p.rscratch;\n var pos = node.position();\n\n if (!number$1(pos.x) || !number$1(pos.y)) {\n return; // can't draw node with undefined position\n }\n\n if (shouldDrawOpacity && !node.visible()) {\n return;\n }\n\n var eleOpacity = shouldDrawOpacity ? node.effectiveOpacity() : 1;\n var usePaths = r.usePaths();\n var path;\n var pathCacheHit = false;\n var padding = node.padding();\n nodeWidth = node.width() + 2 * padding;\n nodeHeight = node.height() + 2 * padding; //\n // setup shift\n\n var bb;\n\n if (shiftToOriginWithBb) {\n bb = shiftToOriginWithBb;\n context.translate(-bb.x1, -bb.y1);\n } //\n // load bg image\n\n\n var bgImgProp = node.pstyle('background-image');\n var urls = bgImgProp.value;\n var urlDefined = new Array(urls.length);\n var image = new Array(urls.length);\n var numImages = 0;\n\n for (var i = 0; i < urls.length; i++) {\n var url = urls[i];\n var defd = urlDefined[i] = url != null && url !== 'none';\n\n if (defd) {\n var bgImgCrossOrigin = node.cy().style().getIndexedStyle(node, 'background-image-crossorigin', 'value', i);\n numImages++; // get image, and if not loaded then ask to redraw when later loaded\n\n image[i] = r.getCachedImage(url, bgImgCrossOrigin, function () {\n _p.backgroundTimestamp = Date.now();\n node.emitAndNotify('background');\n });\n }\n } //\n // setup styles\n\n\n var darkness = node.pstyle('background-blacken').value;\n var borderWidth = node.pstyle('border-width').pfValue;\n var bgOpacity = node.pstyle('background-opacity').value * eleOpacity;\n var borderColor = node.pstyle('border-color').value;\n var borderStyle = node.pstyle('border-style').value;\n var borderOpacity = node.pstyle('border-opacity').value * eleOpacity;\n context.lineJoin = 'miter'; // so borders are square with the node shape\n\n var setupShapeColor = function setupShapeColor() {\n var bgOpy = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : bgOpacity;\n r.eleFillStyle(context, node, bgOpy);\n };\n\n var setupBorderColor = function setupBorderColor() {\n var bdrOpy = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : borderOpacity;\n r.colorStrokeStyle(context, borderColor[0], borderColor[1], borderColor[2], bdrOpy);\n }; //\n // setup shape\n\n\n var styleShape = node.pstyle('shape').strValue;\n var shapePts = node.pstyle('shape-polygon-points').pfValue;\n\n if (usePaths) {\n context.translate(pos.x, pos.y);\n var pathCache = r.nodePathCache = r.nodePathCache || [];\n var key = hashStrings(styleShape === 'polygon' ? styleShape + ',' + shapePts.join(',') : styleShape, '' + nodeHeight, '' + nodeWidth);\n var cachedPath = pathCache[key];\n\n if (cachedPath != null) {\n path = cachedPath;\n pathCacheHit = true;\n rs.pathCache = path;\n } else {\n path = new Path2D();\n pathCache[key] = rs.pathCache = path;\n }\n }\n\n var drawShape = function drawShape() {\n if (!pathCacheHit) {\n var npos = pos;\n\n if (usePaths) {\n npos = {\n x: 0,\n y: 0\n };\n }\n\n r.nodeShapes[r.getNodeShape(node)].draw(path || context, npos.x, npos.y, nodeWidth, nodeHeight);\n }\n\n if (usePaths) {\n context.fill(path);\n } else {\n context.fill();\n }\n };\n\n var drawImages = function drawImages() {\n var nodeOpacity = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : eleOpacity;\n var inside = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n var prevBging = _p.backgrounding;\n var totalCompleted = 0;\n\n for (var _i = 0; _i < image.length; _i++) {\n var bgContainment = node.cy().style().getIndexedStyle(node, 'background-image-containment', 'value', _i);\n\n if (inside && bgContainment === 'over' || !inside && bgContainment === 'inside') {\n totalCompleted++;\n continue;\n }\n\n if (urlDefined[_i] && image[_i].complete && !image[_i].error) {\n totalCompleted++;\n r.drawInscribedImage(context, image[_i], node, _i, nodeOpacity);\n }\n }\n\n _p.backgrounding = !(totalCompleted === numImages);\n\n if (prevBging !== _p.backgrounding) {\n // update style b/c :backgrounding state changed\n node.updateStyle(false);\n }\n };\n\n var drawPie = function drawPie() {\n var redrawShape = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n var pieOpacity = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : eleOpacity;\n\n if (r.hasPie(node)) {\n r.drawPie(context, node, pieOpacity); // redraw/restore path if steps after pie need it\n\n if (redrawShape) {\n if (!usePaths) {\n r.nodeShapes[r.getNodeShape(node)].draw(context, pos.x, pos.y, nodeWidth, nodeHeight);\n }\n }\n }\n };\n\n var darken = function darken() {\n var darkenOpacity = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : eleOpacity;\n var opacity = (darkness > 0 ? darkness : -darkness) * darkenOpacity;\n var c = darkness > 0 ? 0 : 255;\n\n if (darkness !== 0) {\n r.colorFillStyle(context, c, c, c, opacity);\n\n if (usePaths) {\n context.fill(path);\n } else {\n context.fill();\n }\n }\n };\n\n var drawBorder = function drawBorder() {\n if (borderWidth > 0) {\n context.lineWidth = borderWidth;\n context.lineCap = 'butt';\n\n if (context.setLineDash) {\n // for very outofdate browsers\n switch (borderStyle) {\n case 'dotted':\n context.setLineDash([1, 1]);\n break;\n\n case 'dashed':\n context.setLineDash([4, 2]);\n break;\n\n case 'solid':\n case 'double':\n context.setLineDash([]);\n break;\n }\n }\n\n if (usePaths) {\n context.stroke(path);\n } else {\n context.stroke();\n }\n\n if (borderStyle === 'double') {\n context.lineWidth = borderWidth / 3;\n var gco = context.globalCompositeOperation;\n context.globalCompositeOperation = 'destination-out';\n\n if (usePaths) {\n context.stroke(path);\n } else {\n context.stroke();\n }\n\n context.globalCompositeOperation = gco;\n } // reset in case we changed the border style\n\n\n if (context.setLineDash) {\n // for very outofdate browsers\n context.setLineDash([]);\n }\n }\n };\n\n var drawOverlay = function drawOverlay() {\n if (shouldDrawOverlay) {\n r.drawNodeOverlay(context, node, pos, nodeWidth, nodeHeight);\n }\n };\n\n var drawUnderlay = function drawUnderlay() {\n if (shouldDrawOverlay) {\n r.drawNodeUnderlay(context, node, pos, nodeWidth, nodeHeight);\n }\n };\n\n var drawText = function drawText() {\n r.drawElementText(context, node, null, drawLabel);\n };\n\n var ghost = node.pstyle('ghost').value === 'yes';\n\n if (ghost) {\n var gx = node.pstyle('ghost-offset-x').pfValue;\n var gy = node.pstyle('ghost-offset-y').pfValue;\n var ghostOpacity = node.pstyle('ghost-opacity').value;\n var effGhostOpacity = ghostOpacity * eleOpacity;\n context.translate(gx, gy);\n setupShapeColor(ghostOpacity * bgOpacity);\n drawShape();\n drawImages(effGhostOpacity, true);\n setupBorderColor(ghostOpacity * borderOpacity);\n drawBorder();\n drawPie(darkness !== 0 || borderWidth !== 0);\n drawImages(effGhostOpacity, false);\n darken(effGhostOpacity);\n context.translate(-gx, -gy);\n }\n\n if (usePaths) {\n context.translate(-pos.x, -pos.y);\n }\n\n drawUnderlay();\n\n if (usePaths) {\n context.translate(pos.x, pos.y);\n }\n\n setupShapeColor();\n drawShape();\n drawImages(eleOpacity, true);\n setupBorderColor();\n drawBorder();\n drawPie(darkness !== 0 || borderWidth !== 0);\n drawImages(eleOpacity, false);\n darken();\n\n if (usePaths) {\n context.translate(-pos.x, -pos.y);\n }\n\n drawText();\n drawOverlay(); //\n // clean up shift\n\n if (shiftToOriginWithBb) {\n context.translate(bb.x1, bb.y1);\n }\n};\n\nvar drawNodeOverlayUnderlay = function drawNodeOverlayUnderlay(overlayOrUnderlay) {\n if (!['overlay', 'underlay'].includes(overlayOrUnderlay)) {\n throw new Error('Invalid state');\n }\n\n return function (context, node, pos, nodeWidth, nodeHeight) {\n var r = this;\n\n if (!node.visible()) {\n return;\n }\n\n var padding = node.pstyle(\"\".concat(overlayOrUnderlay, \"-padding\")).pfValue;\n var opacity = node.pstyle(\"\".concat(overlayOrUnderlay, \"-opacity\")).value;\n var color = node.pstyle(\"\".concat(overlayOrUnderlay, \"-color\")).value;\n var shape = node.pstyle(\"\".concat(overlayOrUnderlay, \"-shape\")).value;\n\n if (opacity > 0) {\n pos = pos || node.position();\n\n if (nodeWidth == null || nodeHeight == null) {\n var _padding = node.padding();\n\n nodeWidth = node.width() + 2 * _padding;\n nodeHeight = node.height() + 2 * _padding;\n }\n\n r.colorFillStyle(context, color[0], color[1], color[2], opacity);\n r.nodeShapes[shape].draw(context, pos.x, pos.y, nodeWidth + padding * 2, nodeHeight + padding * 2);\n context.fill();\n }\n };\n};\n\nCRp$5.drawNodeOverlay = drawNodeOverlayUnderlay('overlay');\nCRp$5.drawNodeUnderlay = drawNodeOverlayUnderlay('underlay'); // does the node have at least one pie piece?\n\nCRp$5.hasPie = function (node) {\n node = node[0]; // ensure ele ref\n\n return node._private.hasPie;\n};\n\nCRp$5.drawPie = function (context, node, nodeOpacity, pos) {\n node = node[0]; // ensure ele ref\n\n pos = pos || node.position();\n var cyStyle = node.cy().style();\n var pieSize = node.pstyle('pie-size');\n var x = pos.x;\n var y = pos.y;\n var nodeW = node.width();\n var nodeH = node.height();\n var radius = Math.min(nodeW, nodeH) / 2; // must fit in node\n\n var lastPercent = 0; // what % to continue drawing pie slices from on [0, 1]\n\n var usePaths = this.usePaths();\n\n if (usePaths) {\n x = 0;\n y = 0;\n }\n\n if (pieSize.units === '%') {\n radius = radius * pieSize.pfValue;\n } else if (pieSize.pfValue !== undefined) {\n radius = pieSize.pfValue / 2;\n }\n\n for (var i = 1; i <= cyStyle.pieBackgroundN; i++) {\n // 1..N\n var size = node.pstyle('pie-' + i + '-background-size').value;\n var color = node.pstyle('pie-' + i + '-background-color').value;\n var opacity = node.pstyle('pie-' + i + '-background-opacity').value * nodeOpacity;\n var percent = size / 100; // map integer range [0, 100] to [0, 1]\n // percent can't push beyond 1\n\n if (percent + lastPercent > 1) {\n percent = 1 - lastPercent;\n }\n\n var angleStart = 1.5 * Math.PI + 2 * Math.PI * lastPercent; // start at 12 o'clock and go clockwise\n\n var angleDelta = 2 * Math.PI * percent;\n var angleEnd = angleStart + angleDelta; // ignore if\n // - zero size\n // - we're already beyond the full circle\n // - adding the current slice would go beyond the full circle\n\n if (size === 0 || lastPercent >= 1 || lastPercent + percent > 1) {\n continue;\n }\n\n context.beginPath();\n context.moveTo(x, y);\n context.arc(x, y, radius, angleStart, angleEnd);\n context.closePath();\n this.colorFillStyle(context, color[0], color[1], color[2], opacity);\n context.fill();\n lastPercent += percent;\n }\n};\n\nvar CRp$4 = {};\nvar motionBlurDelay = 100; // var isFirefox = typeof InstallTrigger !== 'undefined';\n\nCRp$4.getPixelRatio = function () {\n var context = this.data.contexts[0];\n\n if (this.forcedPixelRatio != null) {\n return this.forcedPixelRatio;\n }\n\n var backingStore = context.backingStorePixelRatio || context.webkitBackingStorePixelRatio || context.mozBackingStorePixelRatio || context.msBackingStorePixelRatio || context.oBackingStorePixelRatio || context.backingStorePixelRatio || 1;\n return (window.devicePixelRatio || 1) / backingStore; // eslint-disable-line no-undef\n};\n\nCRp$4.paintCache = function (context) {\n var caches = this.paintCaches = this.paintCaches || [];\n var needToCreateCache = true;\n var cache;\n\n for (var i = 0; i < caches.length; i++) {\n cache = caches[i];\n\n if (cache.context === context) {\n needToCreateCache = false;\n break;\n }\n }\n\n if (needToCreateCache) {\n cache = {\n context: context\n };\n caches.push(cache);\n }\n\n return cache;\n};\n\nCRp$4.createGradientStyleFor = function (context, shapeStyleName, ele, fill, opacity) {\n var gradientStyle;\n var usePaths = this.usePaths();\n var colors = ele.pstyle(shapeStyleName + '-gradient-stop-colors').value,\n positions = ele.pstyle(shapeStyleName + '-gradient-stop-positions').pfValue;\n\n if (fill === 'radial-gradient') {\n if (ele.isEdge()) {\n var start = ele.sourceEndpoint(),\n end = ele.targetEndpoint(),\n mid = ele.midpoint();\n var d1 = dist(start, mid);\n var d2 = dist(end, mid);\n gradientStyle = context.createRadialGradient(mid.x, mid.y, 0, mid.x, mid.y, Math.max(d1, d2));\n } else {\n var pos = usePaths ? {\n x: 0,\n y: 0\n } : ele.position(),\n width = ele.paddedWidth(),\n height = ele.paddedHeight();\n gradientStyle = context.createRadialGradient(pos.x, pos.y, 0, pos.x, pos.y, Math.max(width, height));\n }\n } else {\n if (ele.isEdge()) {\n var _start = ele.sourceEndpoint(),\n _end = ele.targetEndpoint();\n\n gradientStyle = context.createLinearGradient(_start.x, _start.y, _end.x, _end.y);\n } else {\n var _pos = usePaths ? {\n x: 0,\n y: 0\n } : ele.position(),\n _width = ele.paddedWidth(),\n _height = ele.paddedHeight(),\n halfWidth = _width / 2,\n halfHeight = _height / 2;\n\n var direction = ele.pstyle('background-gradient-direction').value;\n\n switch (direction) {\n case 'to-bottom':\n gradientStyle = context.createLinearGradient(_pos.x, _pos.y - halfHeight, _pos.x, _pos.y + halfHeight);\n break;\n\n case 'to-top':\n gradientStyle = context.createLinearGradient(_pos.x, _pos.y + halfHeight, _pos.x, _pos.y - halfHeight);\n break;\n\n case 'to-left':\n gradientStyle = context.createLinearGradient(_pos.x + halfWidth, _pos.y, _pos.x - halfWidth, _pos.y);\n break;\n\n case 'to-right':\n gradientStyle = context.createLinearGradient(_pos.x - halfWidth, _pos.y, _pos.x + halfWidth, _pos.y);\n break;\n\n case 'to-bottom-right':\n case 'to-right-bottom':\n gradientStyle = context.createLinearGradient(_pos.x - halfWidth, _pos.y - halfHeight, _pos.x + halfWidth, _pos.y + halfHeight);\n break;\n\n case 'to-top-right':\n case 'to-right-top':\n gradientStyle = context.createLinearGradient(_pos.x - halfWidth, _pos.y + halfHeight, _pos.x + halfWidth, _pos.y - halfHeight);\n break;\n\n case 'to-bottom-left':\n case 'to-left-bottom':\n gradientStyle = context.createLinearGradient(_pos.x + halfWidth, _pos.y - halfHeight, _pos.x - halfWidth, _pos.y + halfHeight);\n break;\n\n case 'to-top-left':\n case 'to-left-top':\n gradientStyle = context.createLinearGradient(_pos.x + halfWidth, _pos.y + halfHeight, _pos.x - halfWidth, _pos.y - halfHeight);\n break;\n }\n }\n }\n\n if (!gradientStyle) return null; // invalid gradient style\n\n var hasPositions = positions.length === colors.length;\n var length = colors.length;\n\n for (var i = 0; i < length; i++) {\n gradientStyle.addColorStop(hasPositions ? positions[i] : i / (length - 1), 'rgba(' + colors[i][0] + ',' + colors[i][1] + ',' + colors[i][2] + ',' + opacity + ')');\n }\n\n return gradientStyle;\n};\n\nCRp$4.gradientFillStyle = function (context, ele, fill, opacity) {\n var gradientStyle = this.createGradientStyleFor(context, 'background', ele, fill, opacity);\n if (!gradientStyle) return null; // error\n\n context.fillStyle = gradientStyle;\n};\n\nCRp$4.colorFillStyle = function (context, r, g, b, a) {\n context.fillStyle = 'rgba(' + r + ',' + g + ',' + b + ',' + a + ')'; // turn off for now, seems context does its own caching\n // var cache = this.paintCache(context);\n // var fillStyle = 'rgba(' + r + ',' + g + ',' + b + ',' + a + ')';\n // if( cache.fillStyle !== fillStyle ){\n // context.fillStyle = cache.fillStyle = fillStyle;\n // }\n};\n\nCRp$4.eleFillStyle = function (context, ele, opacity) {\n var backgroundFill = ele.pstyle('background-fill').value;\n\n if (backgroundFill === 'linear-gradient' || backgroundFill === 'radial-gradient') {\n this.gradientFillStyle(context, ele, backgroundFill, opacity);\n } else {\n var backgroundColor = ele.pstyle('background-color').value;\n this.colorFillStyle(context, backgroundColor[0], backgroundColor[1], backgroundColor[2], opacity);\n }\n};\n\nCRp$4.gradientStrokeStyle = function (context, ele, fill, opacity) {\n var gradientStyle = this.createGradientStyleFor(context, 'line', ele, fill, opacity);\n if (!gradientStyle) return null; // error\n\n context.strokeStyle = gradientStyle;\n};\n\nCRp$4.colorStrokeStyle = function (context, r, g, b, a) {\n context.strokeStyle = 'rgba(' + r + ',' + g + ',' + b + ',' + a + ')'; // turn off for now, seems context does its own caching\n // var cache = this.paintCache(context);\n // var strokeStyle = 'rgba(' + r + ',' + g + ',' + b + ',' + a + ')';\n // if( cache.strokeStyle !== strokeStyle ){\n // context.strokeStyle = cache.strokeStyle = strokeStyle;\n // }\n};\n\nCRp$4.eleStrokeStyle = function (context, ele, opacity) {\n var lineFill = ele.pstyle('line-fill').value;\n\n if (lineFill === 'linear-gradient' || lineFill === 'radial-gradient') {\n this.gradientStrokeStyle(context, ele, lineFill, opacity);\n } else {\n var lineColor = ele.pstyle('line-color').value;\n this.colorStrokeStyle(context, lineColor[0], lineColor[1], lineColor[2], opacity);\n }\n}; // Resize canvas\n\n\nCRp$4.matchCanvasSize = function (container) {\n var r = this;\n var data = r.data;\n var bb = r.findContainerClientCoords();\n var width = bb[2];\n var height = bb[3];\n var pixelRatio = r.getPixelRatio();\n var mbPxRatio = r.motionBlurPxRatio;\n\n if (container === r.data.bufferCanvases[r.MOTIONBLUR_BUFFER_NODE] || container === r.data.bufferCanvases[r.MOTIONBLUR_BUFFER_DRAG]) {\n pixelRatio = mbPxRatio;\n }\n\n var canvasWidth = width * pixelRatio;\n var canvasHeight = height * pixelRatio;\n var canvas;\n\n if (canvasWidth === r.canvasWidth && canvasHeight === r.canvasHeight) {\n return; // save cycles if same\n }\n\n r.fontCaches = null; // resizing resets the style\n\n var canvasContainer = data.canvasContainer;\n canvasContainer.style.width = width + 'px';\n canvasContainer.style.height = height + 'px';\n\n for (var i = 0; i < r.CANVAS_LAYERS; i++) {\n canvas = data.canvases[i];\n canvas.width = canvasWidth;\n canvas.height = canvasHeight;\n canvas.style.width = width + 'px';\n canvas.style.height = height + 'px';\n }\n\n for (var i = 0; i < r.BUFFER_COUNT; i++) {\n canvas = data.bufferCanvases[i];\n canvas.width = canvasWidth;\n canvas.height = canvasHeight;\n canvas.style.width = width + 'px';\n canvas.style.height = height + 'px';\n }\n\n r.textureMult = 1;\n\n if (pixelRatio <= 1) {\n canvas = data.bufferCanvases[r.TEXTURE_BUFFER];\n r.textureMult = 2;\n canvas.width = canvasWidth * r.textureMult;\n canvas.height = canvasHeight * r.textureMult;\n }\n\n r.canvasWidth = canvasWidth;\n r.canvasHeight = canvasHeight;\n};\n\nCRp$4.renderTo = function (cxt, zoom, pan, pxRatio) {\n this.render({\n forcedContext: cxt,\n forcedZoom: zoom,\n forcedPan: pan,\n drawAllLayers: true,\n forcedPxRatio: pxRatio\n });\n};\n\nCRp$4.render = function (options) {\n options = options || staticEmptyObject();\n var forcedContext = options.forcedContext;\n var drawAllLayers = options.drawAllLayers;\n var drawOnlyNodeLayer = options.drawOnlyNodeLayer;\n var forcedZoom = options.forcedZoom;\n var forcedPan = options.forcedPan;\n var r = this;\n var pixelRatio = options.forcedPxRatio === undefined ? this.getPixelRatio() : options.forcedPxRatio;\n var cy = r.cy;\n var data = r.data;\n var needDraw = data.canvasNeedsRedraw;\n var textureDraw = r.textureOnViewport && !forcedContext && (r.pinching || r.hoverData.dragging || r.swipePanning || r.data.wheelZooming);\n var motionBlur = options.motionBlur !== undefined ? options.motionBlur : r.motionBlur;\n var mbPxRatio = r.motionBlurPxRatio;\n var hasCompoundNodes = cy.hasCompoundNodes();\n var inNodeDragGesture = r.hoverData.draggingEles;\n var inBoxSelection = r.hoverData.selecting || r.touchData.selecting ? true : false;\n motionBlur = motionBlur && !forcedContext && r.motionBlurEnabled && !inBoxSelection;\n var motionBlurFadeEffect = motionBlur;\n\n if (!forcedContext) {\n if (r.prevPxRatio !== pixelRatio) {\n r.invalidateContainerClientCoordsCache();\n r.matchCanvasSize(r.container);\n r.redrawHint('eles', true);\n r.redrawHint('drag', true);\n }\n\n r.prevPxRatio = pixelRatio;\n }\n\n if (!forcedContext && r.motionBlurTimeout) {\n clearTimeout(r.motionBlurTimeout);\n }\n\n if (motionBlur) {\n if (r.mbFrames == null) {\n r.mbFrames = 0;\n }\n\n r.mbFrames++;\n\n if (r.mbFrames < 3) {\n // need several frames before even high quality motionblur\n motionBlurFadeEffect = false;\n } // go to lower quality blurry frames when several m/b frames have been rendered (avoids flashing)\n\n\n if (r.mbFrames > r.minMbLowQualFrames) {\n //r.fullQualityMb = false;\n r.motionBlurPxRatio = r.mbPxRBlurry;\n }\n }\n\n if (r.clearingMotionBlur) {\n r.motionBlurPxRatio = 1;\n } // b/c drawToContext() may be async w.r.t. redraw(), keep track of last texture frame\n // because a rogue async texture frame would clear needDraw\n\n\n if (r.textureDrawLastFrame && !textureDraw) {\n needDraw[r.NODE] = true;\n needDraw[r.SELECT_BOX] = true;\n }\n\n var style = cy.style();\n var zoom = cy.zoom();\n var effectiveZoom = forcedZoom !== undefined ? forcedZoom : zoom;\n var pan = cy.pan();\n var effectivePan = {\n x: pan.x,\n y: pan.y\n };\n var vp = {\n zoom: zoom,\n pan: {\n x: pan.x,\n y: pan.y\n }\n };\n var prevVp = r.prevViewport;\n var viewportIsDiff = prevVp === undefined || vp.zoom !== prevVp.zoom || vp.pan.x !== prevVp.pan.x || vp.pan.y !== prevVp.pan.y; // we want the low quality motionblur only when the viewport is being manipulated etc (where it's not noticed)\n\n if (!viewportIsDiff && !(inNodeDragGesture && !hasCompoundNodes)) {\n r.motionBlurPxRatio = 1;\n }\n\n if (forcedPan) {\n effectivePan = forcedPan;\n } // apply pixel ratio\n\n\n effectiveZoom *= pixelRatio;\n effectivePan.x *= pixelRatio;\n effectivePan.y *= pixelRatio;\n var eles = r.getCachedZSortedEles();\n\n function mbclear(context, x, y, w, h) {\n var gco = context.globalCompositeOperation;\n context.globalCompositeOperation = 'destination-out';\n r.colorFillStyle(context, 255, 255, 255, r.motionBlurTransparency);\n context.fillRect(x, y, w, h);\n context.globalCompositeOperation = gco;\n }\n\n function setContextTransform(context, clear) {\n var ePan, eZoom, w, h;\n\n if (!r.clearingMotionBlur && (context === data.bufferContexts[r.MOTIONBLUR_BUFFER_NODE] || context === data.bufferContexts[r.MOTIONBLUR_BUFFER_DRAG])) {\n ePan = {\n x: pan.x * mbPxRatio,\n y: pan.y * mbPxRatio\n };\n eZoom = zoom * mbPxRatio;\n w = r.canvasWidth * mbPxRatio;\n h = r.canvasHeight * mbPxRatio;\n } else {\n ePan = effectivePan;\n eZoom = effectiveZoom;\n w = r.canvasWidth;\n h = r.canvasHeight;\n }\n\n context.setTransform(1, 0, 0, 1, 0, 0);\n\n if (clear === 'motionBlur') {\n mbclear(context, 0, 0, w, h);\n } else if (!forcedContext && (clear === undefined || clear)) {\n context.clearRect(0, 0, w, h);\n }\n\n if (!drawAllLayers) {\n context.translate(ePan.x, ePan.y);\n context.scale(eZoom, eZoom);\n }\n\n if (forcedPan) {\n context.translate(forcedPan.x, forcedPan.y);\n }\n\n if (forcedZoom) {\n context.scale(forcedZoom, forcedZoom);\n }\n }\n\n if (!textureDraw) {\n r.textureDrawLastFrame = false;\n }\n\n if (textureDraw) {\n r.textureDrawLastFrame = true;\n\n if (!r.textureCache) {\n r.textureCache = {};\n r.textureCache.bb = cy.mutableElements().boundingBox();\n r.textureCache.texture = r.data.bufferCanvases[r.TEXTURE_BUFFER];\n var cxt = r.data.bufferContexts[r.TEXTURE_BUFFER];\n cxt.setTransform(1, 0, 0, 1, 0, 0);\n cxt.clearRect(0, 0, r.canvasWidth * r.textureMult, r.canvasHeight * r.textureMult);\n r.render({\n forcedContext: cxt,\n drawOnlyNodeLayer: true,\n forcedPxRatio: pixelRatio * r.textureMult\n });\n var vp = r.textureCache.viewport = {\n zoom: cy.zoom(),\n pan: cy.pan(),\n width: r.canvasWidth,\n height: r.canvasHeight\n };\n vp.mpan = {\n x: (0 - vp.pan.x) / vp.zoom,\n y: (0 - vp.pan.y) / vp.zoom\n };\n }\n\n needDraw[r.DRAG] = false;\n needDraw[r.NODE] = false;\n var context = data.contexts[r.NODE];\n var texture = r.textureCache.texture;\n var vp = r.textureCache.viewport;\n context.setTransform(1, 0, 0, 1, 0, 0);\n\n if (motionBlur) {\n mbclear(context, 0, 0, vp.width, vp.height);\n } else {\n context.clearRect(0, 0, vp.width, vp.height);\n }\n\n var outsideBgColor = style.core('outside-texture-bg-color').value;\n var outsideBgOpacity = style.core('outside-texture-bg-opacity').value;\n r.colorFillStyle(context, outsideBgColor[0], outsideBgColor[1], outsideBgColor[2], outsideBgOpacity);\n context.fillRect(0, 0, vp.width, vp.height);\n var zoom = cy.zoom();\n setContextTransform(context, false);\n context.clearRect(vp.mpan.x, vp.mpan.y, vp.width / vp.zoom / pixelRatio, vp.height / vp.zoom / pixelRatio);\n context.drawImage(texture, vp.mpan.x, vp.mpan.y, vp.width / vp.zoom / pixelRatio, vp.height / vp.zoom / pixelRatio);\n } else if (r.textureOnViewport && !forcedContext) {\n // clear the cache since we don't need it\n r.textureCache = null;\n }\n\n var extent = cy.extent();\n var vpManip = r.pinching || r.hoverData.dragging || r.swipePanning || r.data.wheelZooming || r.hoverData.draggingEles || r.cy.animated();\n var hideEdges = r.hideEdgesOnViewport && vpManip;\n var needMbClear = [];\n needMbClear[r.NODE] = !needDraw[r.NODE] && motionBlur && !r.clearedForMotionBlur[r.NODE] || r.clearingMotionBlur;\n\n if (needMbClear[r.NODE]) {\n r.clearedForMotionBlur[r.NODE] = true;\n }\n\n needMbClear[r.DRAG] = !needDraw[r.DRAG] && motionBlur && !r.clearedForMotionBlur[r.DRAG] || r.clearingMotionBlur;\n\n if (needMbClear[r.DRAG]) {\n r.clearedForMotionBlur[r.DRAG] = true;\n }\n\n if (needDraw[r.NODE] || drawAllLayers || drawOnlyNodeLayer || needMbClear[r.NODE]) {\n var useBuffer = motionBlur && !needMbClear[r.NODE] && mbPxRatio !== 1;\n var context = forcedContext || (useBuffer ? r.data.bufferContexts[r.MOTIONBLUR_BUFFER_NODE] : data.contexts[r.NODE]);\n var clear = motionBlur && !useBuffer ? 'motionBlur' : undefined;\n setContextTransform(context, clear);\n\n if (hideEdges) {\n r.drawCachedNodes(context, eles.nondrag, pixelRatio, extent);\n } else {\n r.drawLayeredElements(context, eles.nondrag, pixelRatio, extent);\n }\n\n if (r.debug) {\n r.drawDebugPoints(context, eles.nondrag);\n }\n\n if (!drawAllLayers && !motionBlur) {\n needDraw[r.NODE] = false;\n }\n }\n\n if (!drawOnlyNodeLayer && (needDraw[r.DRAG] || drawAllLayers || needMbClear[r.DRAG])) {\n var useBuffer = motionBlur && !needMbClear[r.DRAG] && mbPxRatio !== 1;\n var context = forcedContext || (useBuffer ? r.data.bufferContexts[r.MOTIONBLUR_BUFFER_DRAG] : data.contexts[r.DRAG]);\n setContextTransform(context, motionBlur && !useBuffer ? 'motionBlur' : undefined);\n\n if (hideEdges) {\n r.drawCachedNodes(context, eles.drag, pixelRatio, extent);\n } else {\n r.drawCachedElements(context, eles.drag, pixelRatio, extent);\n }\n\n if (r.debug) {\n r.drawDebugPoints(context, eles.drag);\n }\n\n if (!drawAllLayers && !motionBlur) {\n needDraw[r.DRAG] = false;\n }\n }\n\n if (r.showFps || !drawOnlyNodeLayer && needDraw[r.SELECT_BOX] && !drawAllLayers) {\n var context = forcedContext || data.contexts[r.SELECT_BOX];\n setContextTransform(context);\n\n if (r.selection[4] == 1 && (r.hoverData.selecting || r.touchData.selecting)) {\n var zoom = r.cy.zoom();\n var borderWidth = style.core('selection-box-border-width').value / zoom;\n context.lineWidth = borderWidth;\n context.fillStyle = 'rgba(' + style.core('selection-box-color').value[0] + ',' + style.core('selection-box-color').value[1] + ',' + style.core('selection-box-color').value[2] + ',' + style.core('selection-box-opacity').value + ')';\n context.fillRect(r.selection[0], r.selection[1], r.selection[2] - r.selection[0], r.selection[3] - r.selection[1]);\n\n if (borderWidth > 0) {\n context.strokeStyle = 'rgba(' + style.core('selection-box-border-color').value[0] + ',' + style.core('selection-box-border-color').value[1] + ',' + style.core('selection-box-border-color').value[2] + ',' + style.core('selection-box-opacity').value + ')';\n context.strokeRect(r.selection[0], r.selection[1], r.selection[2] - r.selection[0], r.selection[3] - r.selection[1]);\n }\n }\n\n if (data.bgActivePosistion && !r.hoverData.selecting) {\n var zoom = r.cy.zoom();\n var pos = data.bgActivePosistion;\n context.fillStyle = 'rgba(' + style.core('active-bg-color').value[0] + ',' + style.core('active-bg-color').value[1] + ',' + style.core('active-bg-color').value[2] + ',' + style.core('active-bg-opacity').value + ')';\n context.beginPath();\n context.arc(pos.x, pos.y, style.core('active-bg-size').pfValue / zoom, 0, 2 * Math.PI);\n context.fill();\n }\n\n var timeToRender = r.lastRedrawTime;\n\n if (r.showFps && timeToRender) {\n timeToRender = Math.round(timeToRender);\n var fps = Math.round(1000 / timeToRender);\n context.setTransform(1, 0, 0, 1, 0, 0);\n context.fillStyle = 'rgba(255, 0, 0, 0.75)';\n context.strokeStyle = 'rgba(255, 0, 0, 0.75)';\n context.lineWidth = 1;\n context.fillText('1 frame = ' + timeToRender + ' ms = ' + fps + ' fps', 0, 20);\n var maxFps = 60;\n context.strokeRect(0, 30, 250, 20);\n context.fillRect(0, 30, 250 * Math.min(fps / maxFps, 1), 20);\n }\n\n if (!drawAllLayers) {\n needDraw[r.SELECT_BOX] = false;\n }\n } // motionblur: blit rendered blurry frames\n\n\n if (motionBlur && mbPxRatio !== 1) {\n var cxtNode = data.contexts[r.NODE];\n var txtNode = r.data.bufferCanvases[r.MOTIONBLUR_BUFFER_NODE];\n var cxtDrag = data.contexts[r.DRAG];\n var txtDrag = r.data.bufferCanvases[r.MOTIONBLUR_BUFFER_DRAG];\n\n var drawMotionBlur = function drawMotionBlur(cxt, txt, needClear) {\n cxt.setTransform(1, 0, 0, 1, 0, 0);\n\n if (needClear || !motionBlurFadeEffect) {\n cxt.clearRect(0, 0, r.canvasWidth, r.canvasHeight);\n } else {\n mbclear(cxt, 0, 0, r.canvasWidth, r.canvasHeight);\n }\n\n var pxr = mbPxRatio;\n cxt.drawImage(txt, // img\n 0, 0, // sx, sy\n r.canvasWidth * pxr, r.canvasHeight * pxr, // sw, sh\n 0, 0, // x, y\n r.canvasWidth, r.canvasHeight // w, h\n );\n };\n\n if (needDraw[r.NODE] || needMbClear[r.NODE]) {\n drawMotionBlur(cxtNode, txtNode, needMbClear[r.NODE]);\n needDraw[r.NODE] = false;\n }\n\n if (needDraw[r.DRAG] || needMbClear[r.DRAG]) {\n drawMotionBlur(cxtDrag, txtDrag, needMbClear[r.DRAG]);\n needDraw[r.DRAG] = false;\n }\n }\n\n r.prevViewport = vp;\n\n if (r.clearingMotionBlur) {\n r.clearingMotionBlur = false;\n r.motionBlurCleared = true;\n r.motionBlur = true;\n }\n\n if (motionBlur) {\n r.motionBlurTimeout = setTimeout(function () {\n r.motionBlurTimeout = null;\n r.clearedForMotionBlur[r.NODE] = false;\n r.clearedForMotionBlur[r.DRAG] = false;\n r.motionBlur = false;\n r.clearingMotionBlur = !textureDraw;\n r.mbFrames = 0;\n needDraw[r.NODE] = true;\n needDraw[r.DRAG] = true;\n r.redraw();\n }, motionBlurDelay);\n }\n\n if (!forcedContext) {\n cy.emit('render');\n }\n};\n\nvar CRp$3 = {}; // @O Polygon drawing\n\nCRp$3.drawPolygonPath = function (context, x, y, width, height, points) {\n var halfW = width / 2;\n var halfH = height / 2;\n\n if (context.beginPath) {\n context.beginPath();\n }\n\n context.moveTo(x + halfW * points[0], y + halfH * points[1]);\n\n for (var i = 1; i < points.length / 2; i++) {\n context.lineTo(x + halfW * points[i * 2], y + halfH * points[i * 2 + 1]);\n }\n\n context.closePath();\n};\n\nCRp$3.drawRoundPolygonPath = function (context, x, y, width, height, points) {\n var halfW = width / 2;\n var halfH = height / 2;\n var cornerRadius = getRoundPolygonRadius(width, height);\n\n if (context.beginPath) {\n context.beginPath();\n }\n\n for (var _i = 0; _i < points.length / 4; _i++) {\n var sourceUv = void 0,\n destUv = void 0;\n\n if (_i === 0) {\n sourceUv = points.length - 2;\n } else {\n sourceUv = _i * 4 - 2;\n }\n\n destUv = _i * 4 + 2;\n var px = x + halfW * points[_i * 4];\n var py = y + halfH * points[_i * 4 + 1];\n var cosTheta = -points[sourceUv] * points[destUv] - points[sourceUv + 1] * points[destUv + 1];\n var offset = cornerRadius / Math.tan(Math.acos(cosTheta) / 2);\n var cp0x = px - offset * points[sourceUv];\n var cp0y = py - offset * points[sourceUv + 1];\n var cp1x = px + offset * points[destUv];\n var cp1y = py + offset * points[destUv + 1];\n\n if (_i === 0) {\n context.moveTo(cp0x, cp0y);\n } else {\n context.lineTo(cp0x, cp0y);\n }\n\n context.arcTo(px, py, cp1x, cp1y, cornerRadius);\n }\n\n context.closePath();\n}; // Round rectangle drawing\n\n\nCRp$3.drawRoundRectanglePath = function (context, x, y, width, height) {\n var halfWidth = width / 2;\n var halfHeight = height / 2;\n var cornerRadius = getRoundRectangleRadius(width, height);\n\n if (context.beginPath) {\n context.beginPath();\n } // Start at top middle\n\n\n context.moveTo(x, y - halfHeight); // Arc from middle top to right side\n\n context.arcTo(x + halfWidth, y - halfHeight, x + halfWidth, y, cornerRadius); // Arc from right side to bottom\n\n context.arcTo(x + halfWidth, y + halfHeight, x, y + halfHeight, cornerRadius); // Arc from bottom to left side\n\n context.arcTo(x - halfWidth, y + halfHeight, x - halfWidth, y, cornerRadius); // Arc from left side to topBorder\n\n context.arcTo(x - halfWidth, y - halfHeight, x, y - halfHeight, cornerRadius); // Join line\n\n context.lineTo(x, y - halfHeight);\n context.closePath();\n};\n\nCRp$3.drawBottomRoundRectanglePath = function (context, x, y, width, height) {\n var halfWidth = width / 2;\n var halfHeight = height / 2;\n var cornerRadius = getRoundRectangleRadius(width, height);\n\n if (context.beginPath) {\n context.beginPath();\n } // Start at top middle\n\n\n context.moveTo(x, y - halfHeight);\n context.lineTo(x + halfWidth, y - halfHeight);\n context.lineTo(x + halfWidth, y);\n context.arcTo(x + halfWidth, y + halfHeight, x, y + halfHeight, cornerRadius);\n context.arcTo(x - halfWidth, y + halfHeight, x - halfWidth, y, cornerRadius);\n context.lineTo(x - halfWidth, y - halfHeight);\n context.lineTo(x, y - halfHeight);\n context.closePath();\n};\n\nCRp$3.drawCutRectanglePath = function (context, x, y, width, height) {\n var halfWidth = width / 2;\n var halfHeight = height / 2;\n var cornerLength = getCutRectangleCornerLength();\n\n if (context.beginPath) {\n context.beginPath();\n }\n\n context.moveTo(x - halfWidth + cornerLength, y - halfHeight);\n context.lineTo(x + halfWidth - cornerLength, y - halfHeight);\n context.lineTo(x + halfWidth, y - halfHeight + cornerLength);\n context.lineTo(x + halfWidth, y + halfHeight - cornerLength);\n context.lineTo(x + halfWidth - cornerLength, y + halfHeight);\n context.lineTo(x - halfWidth + cornerLength, y + halfHeight);\n context.lineTo(x - halfWidth, y + halfHeight - cornerLength);\n context.lineTo(x - halfWidth, y - halfHeight + cornerLength);\n context.closePath();\n};\n\nCRp$3.drawBarrelPath = function (context, x, y, width, height) {\n var halfWidth = width / 2;\n var halfHeight = height / 2;\n var xBegin = x - halfWidth;\n var xEnd = x + halfWidth;\n var yBegin = y - halfHeight;\n var yEnd = y + halfHeight;\n var barrelCurveConstants = getBarrelCurveConstants(width, height);\n var wOffset = barrelCurveConstants.widthOffset;\n var hOffset = barrelCurveConstants.heightOffset;\n var ctrlPtXOffset = barrelCurveConstants.ctrlPtOffsetPct * wOffset;\n\n if (context.beginPath) {\n context.beginPath();\n }\n\n context.moveTo(xBegin, yBegin + hOffset);\n context.lineTo(xBegin, yEnd - hOffset);\n context.quadraticCurveTo(xBegin + ctrlPtXOffset, yEnd, xBegin + wOffset, yEnd);\n context.lineTo(xEnd - wOffset, yEnd);\n context.quadraticCurveTo(xEnd - ctrlPtXOffset, yEnd, xEnd, yEnd - hOffset);\n context.lineTo(xEnd, yBegin + hOffset);\n context.quadraticCurveTo(xEnd - ctrlPtXOffset, yBegin, xEnd - wOffset, yBegin);\n context.lineTo(xBegin + wOffset, yBegin);\n context.quadraticCurveTo(xBegin + ctrlPtXOffset, yBegin, xBegin, yBegin + hOffset);\n context.closePath();\n};\n\nvar sin0 = Math.sin(0);\nvar cos0 = Math.cos(0);\nvar sin = {};\nvar cos = {};\nvar ellipseStepSize = Math.PI / 40;\n\nfor (var i = 0 * Math.PI; i < 2 * Math.PI; i += ellipseStepSize) {\n sin[i] = Math.sin(i);\n cos[i] = Math.cos(i);\n}\n\nCRp$3.drawEllipsePath = function (context, centerX, centerY, width, height) {\n if (context.beginPath) {\n context.beginPath();\n }\n\n if (context.ellipse) {\n context.ellipse(centerX, centerY, width / 2, height / 2, 0, 0, 2 * Math.PI);\n } else {\n var xPos, yPos;\n var rw = width / 2;\n var rh = height / 2;\n\n for (var i = 0 * Math.PI; i < 2 * Math.PI; i += ellipseStepSize) {\n xPos = centerX - rw * sin[i] * sin0 + rw * cos[i] * cos0;\n yPos = centerY + rh * cos[i] * sin0 + rh * sin[i] * cos0;\n\n if (i === 0) {\n context.moveTo(xPos, yPos);\n } else {\n context.lineTo(xPos, yPos);\n }\n }\n }\n\n context.closePath();\n};\n\n/* global atob, ArrayBuffer, Uint8Array, Blob */\nvar CRp$2 = {};\n\nCRp$2.createBuffer = function (w, h) {\n var buffer = document.createElement('canvas'); // eslint-disable-line no-undef\n\n buffer.width = w;\n buffer.height = h;\n return [buffer, buffer.getContext('2d')];\n};\n\nCRp$2.bufferCanvasImage = function (options) {\n var cy = this.cy;\n var eles = cy.mutableElements();\n var bb = eles.boundingBox();\n var ctrRect = this.findContainerClientCoords();\n var width = options.full ? Math.ceil(bb.w) : ctrRect[2];\n var height = options.full ? Math.ceil(bb.h) : ctrRect[3];\n var specdMaxDims = number$1(options.maxWidth) || number$1(options.maxHeight);\n var pxRatio = this.getPixelRatio();\n var scale = 1;\n\n if (options.scale !== undefined) {\n width *= options.scale;\n height *= options.scale;\n scale = options.scale;\n } else if (specdMaxDims) {\n var maxScaleW = Infinity;\n var maxScaleH = Infinity;\n\n if (number$1(options.maxWidth)) {\n maxScaleW = scale * options.maxWidth / width;\n }\n\n if (number$1(options.maxHeight)) {\n maxScaleH = scale * options.maxHeight / height;\n }\n\n scale = Math.min(maxScaleW, maxScaleH);\n width *= scale;\n height *= scale;\n }\n\n if (!specdMaxDims) {\n width *= pxRatio;\n height *= pxRatio;\n scale *= pxRatio;\n }\n\n var buffCanvas = document.createElement('canvas'); // eslint-disable-line no-undef\n\n buffCanvas.width = width;\n buffCanvas.height = height;\n buffCanvas.style.width = width + 'px';\n buffCanvas.style.height = height + 'px';\n var buffCxt = buffCanvas.getContext('2d'); // Rasterize the layers, but only if container has nonzero size\n\n if (width > 0 && height > 0) {\n buffCxt.clearRect(0, 0, width, height);\n buffCxt.globalCompositeOperation = 'source-over';\n var zsortedEles = this.getCachedZSortedEles();\n\n if (options.full) {\n // draw the full bounds of the graph\n buffCxt.translate(-bb.x1 * scale, -bb.y1 * scale);\n buffCxt.scale(scale, scale);\n this.drawElements(buffCxt, zsortedEles);\n buffCxt.scale(1 / scale, 1 / scale);\n buffCxt.translate(bb.x1 * scale, bb.y1 * scale);\n } else {\n // draw the current view\n var pan = cy.pan();\n var translation = {\n x: pan.x * scale,\n y: pan.y * scale\n };\n scale *= cy.zoom();\n buffCxt.translate(translation.x, translation.y);\n buffCxt.scale(scale, scale);\n this.drawElements(buffCxt, zsortedEles);\n buffCxt.scale(1 / scale, 1 / scale);\n buffCxt.translate(-translation.x, -translation.y);\n } // need to fill bg at end like this in order to fill cleared transparent pixels in jpgs\n\n\n if (options.bg) {\n buffCxt.globalCompositeOperation = 'destination-over';\n buffCxt.fillStyle = options.bg;\n buffCxt.rect(0, 0, width, height);\n buffCxt.fill();\n }\n }\n\n return buffCanvas;\n};\n\nfunction b64ToBlob(b64, mimeType) {\n var bytes = atob(b64);\n var buff = new ArrayBuffer(bytes.length);\n var buffUint8 = new Uint8Array(buff);\n\n for (var i = 0; i < bytes.length; i++) {\n buffUint8[i] = bytes.charCodeAt(i);\n }\n\n return new Blob([buff], {\n type: mimeType\n });\n}\n\nfunction b64UriToB64(b64uri) {\n var i = b64uri.indexOf(',');\n return b64uri.substr(i + 1);\n}\n\nfunction output(options, canvas, mimeType) {\n var getB64Uri = function getB64Uri() {\n return canvas.toDataURL(mimeType, options.quality);\n };\n\n switch (options.output) {\n case 'blob-promise':\n return new Promise$1(function (resolve, reject) {\n try {\n canvas.toBlob(function (blob) {\n if (blob != null) {\n resolve(blob);\n } else {\n reject(new Error('`canvas.toBlob()` sent a null value in its callback'));\n }\n }, mimeType, options.quality);\n } catch (err) {\n reject(err);\n }\n });\n\n case 'blob':\n return b64ToBlob(b64UriToB64(getB64Uri()), mimeType);\n\n case 'base64':\n return b64UriToB64(getB64Uri());\n\n case 'base64uri':\n default:\n return getB64Uri();\n }\n}\n\nCRp$2.png = function (options) {\n return output(options, this.bufferCanvasImage(options), 'image/png');\n};\n\nCRp$2.jpg = function (options) {\n return output(options, this.bufferCanvasImage(options), 'image/jpeg');\n};\n\nvar CRp$1 = {};\n\nCRp$1.nodeShapeImpl = function (name, context, centerX, centerY, width, height, points) {\n switch (name) {\n case 'ellipse':\n return this.drawEllipsePath(context, centerX, centerY, width, height);\n\n case 'polygon':\n return this.drawPolygonPath(context, centerX, centerY, width, height, points);\n\n case 'round-polygon':\n return this.drawRoundPolygonPath(context, centerX, centerY, width, height, points);\n\n case 'roundrectangle':\n case 'round-rectangle':\n return this.drawRoundRectanglePath(context, centerX, centerY, width, height);\n\n case 'cutrectangle':\n case 'cut-rectangle':\n return this.drawCutRectanglePath(context, centerX, centerY, width, height);\n\n case 'bottomroundrectangle':\n case 'bottom-round-rectangle':\n return this.drawBottomRoundRectanglePath(context, centerX, centerY, width, height);\n\n case 'barrel':\n return this.drawBarrelPath(context, centerX, centerY, width, height);\n }\n};\n\nvar CR = CanvasRenderer;\nvar CRp = CanvasRenderer.prototype;\nCRp.CANVAS_LAYERS = 3; //\n\nCRp.SELECT_BOX = 0;\nCRp.DRAG = 1;\nCRp.NODE = 2;\nCRp.BUFFER_COUNT = 3; //\n\nCRp.TEXTURE_BUFFER = 0;\nCRp.MOTIONBLUR_BUFFER_NODE = 1;\nCRp.MOTIONBLUR_BUFFER_DRAG = 2;\n\nfunction CanvasRenderer(options) {\n var r = this;\n r.data = {\n canvases: new Array(CRp.CANVAS_LAYERS),\n contexts: new Array(CRp.CANVAS_LAYERS),\n canvasNeedsRedraw: new Array(CRp.CANVAS_LAYERS),\n bufferCanvases: new Array(CRp.BUFFER_COUNT),\n bufferContexts: new Array(CRp.CANVAS_LAYERS)\n };\n var tapHlOffAttr = '-webkit-tap-highlight-color';\n var tapHlOffStyle = 'rgba(0,0,0,0)';\n r.data.canvasContainer = document.createElement('div'); // eslint-disable-line no-undef\n\n var containerStyle = r.data.canvasContainer.style;\n r.data.canvasContainer.style[tapHlOffAttr] = tapHlOffStyle;\n containerStyle.position = 'relative';\n containerStyle.zIndex = '0';\n containerStyle.overflow = 'hidden';\n var container = options.cy.container();\n container.appendChild(r.data.canvasContainer);\n container.style[tapHlOffAttr] = tapHlOffStyle;\n var styleMap = {\n '-webkit-user-select': 'none',\n '-moz-user-select': '-moz-none',\n 'user-select': 'none',\n '-webkit-tap-highlight-color': 'rgba(0,0,0,0)',\n 'outline-style': 'none'\n };\n\n if (ms()) {\n styleMap['-ms-touch-action'] = 'none';\n styleMap['touch-action'] = 'none';\n }\n\n for (var i = 0; i < CRp.CANVAS_LAYERS; i++) {\n var canvas = r.data.canvases[i] = document.createElement('canvas'); // eslint-disable-line no-undef\n\n r.data.contexts[i] = canvas.getContext('2d');\n Object.keys(styleMap).forEach(function (k) {\n canvas.style[k] = styleMap[k];\n });\n canvas.style.position = 'absolute';\n canvas.setAttribute('data-id', 'layer' + i);\n canvas.style.zIndex = String(CRp.CANVAS_LAYERS - i);\n r.data.canvasContainer.appendChild(canvas);\n r.data.canvasNeedsRedraw[i] = false;\n }\n\n r.data.topCanvas = r.data.canvases[0];\n r.data.canvases[CRp.NODE].setAttribute('data-id', 'layer' + CRp.NODE + '-node');\n r.data.canvases[CRp.SELECT_BOX].setAttribute('data-id', 'layer' + CRp.SELECT_BOX + '-selectbox');\n r.data.canvases[CRp.DRAG].setAttribute('data-id', 'layer' + CRp.DRAG + '-drag');\n\n for (var i = 0; i < CRp.BUFFER_COUNT; i++) {\n r.data.bufferCanvases[i] = document.createElement('canvas'); // eslint-disable-line no-undef\n\n r.data.bufferContexts[i] = r.data.bufferCanvases[i].getContext('2d');\n r.data.bufferCanvases[i].style.position = 'absolute';\n r.data.bufferCanvases[i].setAttribute('data-id', 'buffer' + i);\n r.data.bufferCanvases[i].style.zIndex = String(-i - 1);\n r.data.bufferCanvases[i].style.visibility = 'hidden'; //r.data.canvasContainer.appendChild(r.data.bufferCanvases[i]);\n }\n\n r.pathsEnabled = true;\n var emptyBb = makeBoundingBox();\n\n var getBoxCenter = function getBoxCenter(bb) {\n return {\n x: (bb.x1 + bb.x2) / 2,\n y: (bb.y1 + bb.y2) / 2\n };\n };\n\n var getCenterOffset = function getCenterOffset(bb) {\n return {\n x: -bb.w / 2,\n y: -bb.h / 2\n };\n };\n\n var backgroundTimestampHasChanged = function backgroundTimestampHasChanged(ele) {\n var _p = ele[0]._private;\n var same = _p.oldBackgroundTimestamp === _p.backgroundTimestamp;\n return !same;\n };\n\n var getStyleKey = function getStyleKey(ele) {\n return ele[0]._private.nodeKey;\n };\n\n var getLabelKey = function getLabelKey(ele) {\n return ele[0]._private.labelStyleKey;\n };\n\n var getSourceLabelKey = function getSourceLabelKey(ele) {\n return ele[0]._private.sourceLabelStyleKey;\n };\n\n var getTargetLabelKey = function getTargetLabelKey(ele) {\n return ele[0]._private.targetLabelStyleKey;\n };\n\n var drawElement = function drawElement(context, ele, bb, scaledLabelShown, useEleOpacity) {\n return r.drawElement(context, ele, bb, false, false, useEleOpacity);\n };\n\n var drawLabel = function drawLabel(context, ele, bb, scaledLabelShown, useEleOpacity) {\n return r.drawElementText(context, ele, bb, scaledLabelShown, 'main', useEleOpacity);\n };\n\n var drawSourceLabel = function drawSourceLabel(context, ele, bb, scaledLabelShown, useEleOpacity) {\n return r.drawElementText(context, ele, bb, scaledLabelShown, 'source', useEleOpacity);\n };\n\n var drawTargetLabel = function drawTargetLabel(context, ele, bb, scaledLabelShown, useEleOpacity) {\n return r.drawElementText(context, ele, bb, scaledLabelShown, 'target', useEleOpacity);\n };\n\n var getElementBox = function getElementBox(ele) {\n ele.boundingBox();\n return ele[0]._private.bodyBounds;\n };\n\n var getLabelBox = function getLabelBox(ele) {\n ele.boundingBox();\n return ele[0]._private.labelBounds.main || emptyBb;\n };\n\n var getSourceLabelBox = function getSourceLabelBox(ele) {\n ele.boundingBox();\n return ele[0]._private.labelBounds.source || emptyBb;\n };\n\n var getTargetLabelBox = function getTargetLabelBox(ele) {\n ele.boundingBox();\n return ele[0]._private.labelBounds.target || emptyBb;\n };\n\n var isLabelVisibleAtScale = function isLabelVisibleAtScale(ele, scaledLabelShown) {\n return scaledLabelShown;\n };\n\n var getElementRotationPoint = function getElementRotationPoint(ele) {\n return getBoxCenter(getElementBox(ele));\n };\n\n var addTextMargin = function addTextMargin(prefix, pt, ele) {\n var pre = prefix ? prefix + '-' : '';\n return {\n x: pt.x + ele.pstyle(pre + 'text-margin-x').pfValue,\n y: pt.y + ele.pstyle(pre + 'text-margin-y').pfValue\n };\n };\n\n var getRsPt = function getRsPt(ele, x, y) {\n var rs = ele[0]._private.rscratch;\n return {\n x: rs[x],\n y: rs[y]\n };\n };\n\n var getLabelRotationPoint = function getLabelRotationPoint(ele) {\n return addTextMargin('', getRsPt(ele, 'labelX', 'labelY'), ele);\n };\n\n var getSourceLabelRotationPoint = function getSourceLabelRotationPoint(ele) {\n return addTextMargin('source', getRsPt(ele, 'sourceLabelX', 'sourceLabelY'), ele);\n };\n\n var getTargetLabelRotationPoint = function getTargetLabelRotationPoint(ele) {\n return addTextMargin('target', getRsPt(ele, 'targetLabelX', 'targetLabelY'), ele);\n };\n\n var getElementRotationOffset = function getElementRotationOffset(ele) {\n return getCenterOffset(getElementBox(ele));\n };\n\n var getSourceLabelRotationOffset = function getSourceLabelRotationOffset(ele) {\n return getCenterOffset(getSourceLabelBox(ele));\n };\n\n var getTargetLabelRotationOffset = function getTargetLabelRotationOffset(ele) {\n return getCenterOffset(getTargetLabelBox(ele));\n };\n\n var getLabelRotationOffset = function getLabelRotationOffset(ele) {\n var bb = getLabelBox(ele);\n var p = getCenterOffset(getLabelBox(ele));\n\n if (ele.isNode()) {\n switch (ele.pstyle('text-halign').value) {\n case 'left':\n p.x = -bb.w;\n break;\n\n case 'right':\n p.x = 0;\n break;\n }\n\n switch (ele.pstyle('text-valign').value) {\n case 'top':\n p.y = -bb.h;\n break;\n\n case 'bottom':\n p.y = 0;\n break;\n }\n }\n\n return p;\n };\n\n var eleTxrCache = r.data.eleTxrCache = new ElementTextureCache(r, {\n getKey: getStyleKey,\n doesEleInvalidateKey: backgroundTimestampHasChanged,\n drawElement: drawElement,\n getBoundingBox: getElementBox,\n getRotationPoint: getElementRotationPoint,\n getRotationOffset: getElementRotationOffset,\n allowEdgeTxrCaching: false,\n allowParentTxrCaching: false\n });\n var lblTxrCache = r.data.lblTxrCache = new ElementTextureCache(r, {\n getKey: getLabelKey,\n drawElement: drawLabel,\n getBoundingBox: getLabelBox,\n getRotationPoint: getLabelRotationPoint,\n getRotationOffset: getLabelRotationOffset,\n isVisible: isLabelVisibleAtScale\n });\n var slbTxrCache = r.data.slbTxrCache = new ElementTextureCache(r, {\n getKey: getSourceLabelKey,\n drawElement: drawSourceLabel,\n getBoundingBox: getSourceLabelBox,\n getRotationPoint: getSourceLabelRotationPoint,\n getRotationOffset: getSourceLabelRotationOffset,\n isVisible: isLabelVisibleAtScale\n });\n var tlbTxrCache = r.data.tlbTxrCache = new ElementTextureCache(r, {\n getKey: getTargetLabelKey,\n drawElement: drawTargetLabel,\n getBoundingBox: getTargetLabelBox,\n getRotationPoint: getTargetLabelRotationPoint,\n getRotationOffset: getTargetLabelRotationOffset,\n isVisible: isLabelVisibleAtScale\n });\n var lyrTxrCache = r.data.lyrTxrCache = new LayeredTextureCache(r);\n r.onUpdateEleCalcs(function invalidateTextureCaches(willDraw, eles) {\n // each cache should check for sub-key diff to see that the update affects that cache particularly\n eleTxrCache.invalidateElements(eles);\n lblTxrCache.invalidateElements(eles);\n slbTxrCache.invalidateElements(eles);\n tlbTxrCache.invalidateElements(eles); // any change invalidates the layers\n\n lyrTxrCache.invalidateElements(eles); // update the old bg timestamp so diffs can be done in the ele txr caches\n\n for (var _i = 0; _i < eles.length; _i++) {\n var _p = eles[_i]._private;\n _p.oldBackgroundTimestamp = _p.backgroundTimestamp;\n }\n });\n\n var refineInLayers = function refineInLayers(reqs) {\n for (var i = 0; i < reqs.length; i++) {\n lyrTxrCache.enqueueElementRefinement(reqs[i].ele);\n }\n };\n\n eleTxrCache.onDequeue(refineInLayers);\n lblTxrCache.onDequeue(refineInLayers);\n slbTxrCache.onDequeue(refineInLayers);\n tlbTxrCache.onDequeue(refineInLayers);\n}\n\nCRp.redrawHint = function (group, bool) {\n var r = this;\n\n switch (group) {\n case 'eles':\n r.data.canvasNeedsRedraw[CRp.NODE] = bool;\n break;\n\n case 'drag':\n r.data.canvasNeedsRedraw[CRp.DRAG] = bool;\n break;\n\n case 'select':\n r.data.canvasNeedsRedraw[CRp.SELECT_BOX] = bool;\n break;\n }\n}; // whether to use Path2D caching for drawing\n\n\nvar pathsImpld = typeof Path2D !== 'undefined';\n\nCRp.path2dEnabled = function (on) {\n if (on === undefined) {\n return this.pathsEnabled;\n }\n\n this.pathsEnabled = on ? true : false;\n};\n\nCRp.usePaths = function () {\n return pathsImpld && this.pathsEnabled;\n};\n\nCRp.setImgSmoothing = function (context, bool) {\n if (context.imageSmoothingEnabled != null) {\n context.imageSmoothingEnabled = bool;\n } else {\n context.webkitImageSmoothingEnabled = bool;\n context.mozImageSmoothingEnabled = bool;\n context.msImageSmoothingEnabled = bool;\n }\n};\n\nCRp.getImgSmoothing = function (context) {\n if (context.imageSmoothingEnabled != null) {\n return context.imageSmoothingEnabled;\n } else {\n return context.webkitImageSmoothingEnabled || context.mozImageSmoothingEnabled || context.msImageSmoothingEnabled;\n }\n};\n\nCRp.makeOffscreenCanvas = function (width, height) {\n var canvas;\n\n if ((typeof OffscreenCanvas === \"undefined\" ? \"undefined\" : _typeof(OffscreenCanvas)) !== (\"undefined\" )) {\n canvas = new OffscreenCanvas(width, height);\n } else {\n canvas = document.createElement('canvas'); // eslint-disable-line no-undef\n\n canvas.width = width;\n canvas.height = height;\n }\n\n return canvas;\n};\n\n[CRp$a, CRp$9, CRp$8, CRp$7, CRp$6, CRp$5, CRp$4, CRp$3, CRp$2, CRp$1].forEach(function (props) {\n extend(CRp, props);\n});\n\nvar renderer = [{\n name: 'null',\n impl: NullRenderer\n}, {\n name: 'base',\n impl: BR\n}, {\n name: 'canvas',\n impl: CR\n}];\n\nvar incExts = [{\n type: 'layout',\n extensions: layout\n}, {\n type: 'renderer',\n extensions: renderer\n}];\n\nvar extensions = {}; // registered modules for extensions, indexed by name\n\nvar modules = {};\n\nfunction setExtension(type, name, registrant) {\n var ext = registrant;\n\n var overrideErr = function overrideErr(field) {\n warn('Can not register `' + name + '` for `' + type + '` since `' + field + '` already exists in the prototype and can not be overridden');\n };\n\n if (type === 'core') {\n if (Core.prototype[name]) {\n return overrideErr(name);\n } else {\n Core.prototype[name] = registrant;\n }\n } else if (type === 'collection') {\n if (Collection.prototype[name]) {\n return overrideErr(name);\n } else {\n Collection.prototype[name] = registrant;\n }\n } else if (type === 'layout') {\n // fill in missing layout functions in the prototype\n var Layout = function Layout(options) {\n this.options = options;\n registrant.call(this, options); // make sure layout has _private for use w/ std apis like .on()\n\n if (!plainObject(this._private)) {\n this._private = {};\n }\n\n this._private.cy = options.cy;\n this._private.listeners = [];\n this.createEmitter();\n };\n\n var layoutProto = Layout.prototype = Object.create(registrant.prototype);\n var optLayoutFns = [];\n\n for (var i = 0; i < optLayoutFns.length; i++) {\n var fnName = optLayoutFns[i];\n\n layoutProto[fnName] = layoutProto[fnName] || function () {\n return this;\n };\n } // either .start() or .run() is defined, so autogen the other\n\n\n if (layoutProto.start && !layoutProto.run) {\n layoutProto.run = function () {\n this.start();\n return this;\n };\n } else if (!layoutProto.start && layoutProto.run) {\n layoutProto.start = function () {\n this.run();\n return this;\n };\n }\n\n var regStop = registrant.prototype.stop;\n\n layoutProto.stop = function () {\n var opts = this.options;\n\n if (opts && opts.animate) {\n var anis = this.animations;\n\n if (anis) {\n for (var _i = 0; _i < anis.length; _i++) {\n anis[_i].stop();\n }\n }\n }\n\n if (regStop) {\n regStop.call(this);\n } else {\n this.emit('layoutstop');\n }\n\n return this;\n };\n\n if (!layoutProto.destroy) {\n layoutProto.destroy = function () {\n return this;\n };\n }\n\n layoutProto.cy = function () {\n return this._private.cy;\n };\n\n var getCy = function getCy(layout) {\n return layout._private.cy;\n };\n\n var emitterOpts = {\n addEventFields: function addEventFields(layout, evt) {\n evt.layout = layout;\n evt.cy = getCy(layout);\n evt.target = layout;\n },\n bubble: function bubble() {\n return true;\n },\n parent: function parent(layout) {\n return getCy(layout);\n }\n };\n extend(layoutProto, {\n createEmitter: function createEmitter() {\n this._private.emitter = new Emitter(emitterOpts, this);\n return this;\n },\n emitter: function emitter() {\n return this._private.emitter;\n },\n on: function on(evt, cb) {\n this.emitter().on(evt, cb);\n return this;\n },\n one: function one(evt, cb) {\n this.emitter().one(evt, cb);\n return this;\n },\n once: function once(evt, cb) {\n this.emitter().one(evt, cb);\n return this;\n },\n removeListener: function removeListener(evt, cb) {\n this.emitter().removeListener(evt, cb);\n return this;\n },\n removeAllListeners: function removeAllListeners() {\n this.emitter().removeAllListeners();\n return this;\n },\n emit: function emit(evt, params) {\n this.emitter().emit(evt, params);\n return this;\n }\n });\n define.eventAliasesOn(layoutProto);\n ext = Layout; // replace with our wrapped layout\n } else if (type === 'renderer' && name !== 'null' && name !== 'base') {\n // user registered renderers inherit from base\n var BaseRenderer = getExtension('renderer', 'base');\n var bProto = BaseRenderer.prototype;\n var RegistrantRenderer = registrant;\n var rProto = registrant.prototype;\n\n var Renderer = function Renderer() {\n BaseRenderer.apply(this, arguments);\n RegistrantRenderer.apply(this, arguments);\n };\n\n var proto = Renderer.prototype;\n\n for (var pName in bProto) {\n var pVal = bProto[pName];\n var existsInR = rProto[pName] != null;\n\n if (existsInR) {\n return overrideErr(pName);\n }\n\n proto[pName] = pVal; // take impl from base\n }\n\n for (var _pName in rProto) {\n proto[_pName] = rProto[_pName]; // take impl from registrant\n }\n\n bProto.clientFunctions.forEach(function (name) {\n proto[name] = proto[name] || function () {\n error('Renderer does not implement `renderer.' + name + '()` on its prototype');\n };\n });\n ext = Renderer;\n } else if (type === '__proto__' || type === 'constructor' || type === 'prototype') {\n // to avoid potential prototype pollution\n return error(type + ' is an illegal type to be registered, possibly lead to prototype pollutions');\n }\n\n return setMap({\n map: extensions,\n keys: [type, name],\n value: ext\n });\n}\n\nfunction getExtension(type, name) {\n return getMap({\n map: extensions,\n keys: [type, name]\n });\n}\n\nfunction setModule(type, name, moduleType, moduleName, registrant) {\n return setMap({\n map: modules,\n keys: [type, name, moduleType, moduleName],\n value: registrant\n });\n}\n\nfunction getModule(type, name, moduleType, moduleName) {\n return getMap({\n map: modules,\n keys: [type, name, moduleType, moduleName]\n });\n}\n\nvar extension = function extension() {\n // e.g. extension('renderer', 'svg')\n if (arguments.length === 2) {\n return getExtension.apply(null, arguments);\n } // e.g. extension('renderer', 'svg', { ... })\n else if (arguments.length === 3) {\n return setExtension.apply(null, arguments);\n } // e.g. extension('renderer', 'svg', 'nodeShape', 'ellipse')\n else if (arguments.length === 4) {\n return getModule.apply(null, arguments);\n } // e.g. extension('renderer', 'svg', 'nodeShape', 'ellipse', { ... })\n else if (arguments.length === 5) {\n return setModule.apply(null, arguments);\n } else {\n error('Invalid extension access syntax');\n }\n}; // allows a core instance to access extensions internally\n\n\nCore.prototype.extension = extension; // included extensions\n\nincExts.forEach(function (group) {\n group.extensions.forEach(function (ext) {\n setExtension(group.type, ext.name, ext.impl);\n });\n});\n\n// (useful for init)\n\nvar Stylesheet = function Stylesheet() {\n if (!(this instanceof Stylesheet)) {\n return new Stylesheet();\n }\n\n this.length = 0;\n};\n\nvar sheetfn = Stylesheet.prototype;\n\nsheetfn.instanceString = function () {\n return 'stylesheet';\n}; // just store the selector to be parsed later\n\n\nsheetfn.selector = function (selector) {\n var i = this.length++;\n this[i] = {\n selector: selector,\n properties: []\n };\n return this; // chaining\n}; // just store the property to be parsed later\n\n\nsheetfn.css = function (name, value) {\n var i = this.length - 1;\n\n if (string(name)) {\n this[i].properties.push({\n name: name,\n value: value\n });\n } else if (plainObject(name)) {\n var map = name;\n var propNames = Object.keys(map);\n\n for (var j = 0; j < propNames.length; j++) {\n var key = propNames[j];\n var mapVal = map[key];\n\n if (mapVal == null) {\n continue;\n }\n\n var prop = Style.properties[key] || Style.properties[dash2camel(key)];\n\n if (prop == null) {\n continue;\n }\n\n var _name = prop.name;\n var _value = mapVal;\n this[i].properties.push({\n name: _name,\n value: _value\n });\n }\n }\n\n return this; // chaining\n};\n\nsheetfn.style = sheetfn.css; // generate a real style object from the dummy stylesheet\n\nsheetfn.generateStyle = function (cy) {\n var style = new Style(cy);\n return this.appendToStyle(style);\n}; // append a dummy stylesheet object on a real style object\n\n\nsheetfn.appendToStyle = function (style) {\n for (var i = 0; i < this.length; i++) {\n var context = this[i];\n var selector = context.selector;\n var props = context.properties;\n style.selector(selector); // apply selector\n\n for (var j = 0; j < props.length; j++) {\n var prop = props[j];\n style.css(prop.name, prop.value); // apply property\n }\n }\n\n return style;\n};\n\nvar version = \"3.23.0\";\n\nvar cytoscape = function cytoscape(options) {\n // if no options specified, use default\n if (options === undefined) {\n options = {};\n } // create instance\n\n\n if (plainObject(options)) {\n return new Core(options);\n } // allow for registration of extensions\n else if (string(options)) {\n return extension.apply(extension, arguments);\n }\n}; // e.g. cytoscape.use( require('cytoscape-foo'), bar )\n\n\ncytoscape.use = function (ext) {\n var args = Array.prototype.slice.call(arguments, 1); // args to pass to ext\n\n args.unshift(cytoscape); // cytoscape is first arg to ext\n\n ext.apply(null, args);\n return this;\n};\n\ncytoscape.warnings = function (bool) {\n return warnings(bool);\n}; // replaced by build system\n\n\ncytoscape.version = version; // expose public apis (mostly for extensions)\n\ncytoscape.stylesheet = cytoscape.Stylesheet = Stylesheet;\n\nmodule.exports = cytoscape;\n","(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.ELK = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref$defaultLayoutOpt = _ref.defaultLayoutOptions,\n defaultLayoutOptions = _ref$defaultLayoutOpt === undefined ? {} : _ref$defaultLayoutOpt,\n _ref$algorithms = _ref.algorithms,\n algorithms = _ref$algorithms === undefined ? ['layered', 'stress', 'mrtree', 'radial', 'force', 'disco', 'sporeOverlap', 'sporeCompaction', 'rectpacking'] : _ref$algorithms,\n workerFactory = _ref.workerFactory,\n workerUrl = _ref.workerUrl;\n\n _classCallCheck(this, ELK);\n\n this.defaultLayoutOptions = defaultLayoutOptions;\n this.initialized = false;\n\n // check valid worker construction possible\n if (typeof workerUrl === 'undefined' && typeof workerFactory === 'undefined') {\n throw new Error(\"Cannot construct an ELK without both 'workerUrl' and 'workerFactory'.\");\n }\n var factory = workerFactory;\n if (typeof workerUrl !== 'undefined' && typeof workerFactory === 'undefined') {\n // use default Web Worker\n factory = function factory(url) {\n return new Worker(url);\n };\n }\n\n // create the worker\n var worker = factory(workerUrl);\n if (typeof worker.postMessage !== 'function') {\n throw new TypeError(\"Created worker does not provide\" + \" the required 'postMessage' function.\");\n }\n\n // wrap the worker to return promises\n this.worker = new PromisedWorker(worker);\n\n // initially register algorithms\n this.worker.postMessage({\n cmd: 'register',\n algorithms: algorithms\n }).then(function (r) {\n return _this.initialized = true;\n }).catch(console.err);\n }\n\n _createClass(ELK, [{\n key: 'layout',\n value: function layout(graph) {\n var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref2$layoutOptions = _ref2.layoutOptions,\n layoutOptions = _ref2$layoutOptions === undefined ? this.defaultLayoutOptions : _ref2$layoutOptions,\n _ref2$logging = _ref2.logging,\n logging = _ref2$logging === undefined ? false : _ref2$logging,\n _ref2$measureExecutio = _ref2.measureExecutionTime,\n measureExecutionTime = _ref2$measureExecutio === undefined ? false : _ref2$measureExecutio;\n\n if (!graph) {\n return Promise.reject(new Error(\"Missing mandatory parameter 'graph'.\"));\n }\n return this.worker.postMessage({\n cmd: 'layout',\n graph: graph,\n layoutOptions: layoutOptions,\n options: {\n logging: logging,\n measureExecutionTime: measureExecutionTime\n }\n });\n }\n }, {\n key: 'knownLayoutAlgorithms',\n value: function knownLayoutAlgorithms() {\n return this.worker.postMessage({ cmd: 'algorithms' });\n }\n }, {\n key: 'knownLayoutOptions',\n value: function knownLayoutOptions() {\n return this.worker.postMessage({ cmd: 'options' });\n }\n }, {\n key: 'knownLayoutCategories',\n value: function knownLayoutCategories() {\n return this.worker.postMessage({ cmd: 'categories' });\n }\n }, {\n key: 'terminateWorker',\n value: function terminateWorker() {\n this.worker.terminate();\n }\n }]);\n\n return ELK;\n}();\n\nexports.default = ELK;\n\nvar PromisedWorker = function () {\n function PromisedWorker(worker) {\n var _this2 = this;\n\n _classCallCheck(this, PromisedWorker);\n\n if (worker === undefined) {\n throw new Error(\"Missing mandatory parameter 'worker'.\");\n }\n this.resolvers = {};\n this.worker = worker;\n this.worker.onmessage = function (answer) {\n // why is this necessary?\n setTimeout(function () {\n _this2.receive(_this2, answer);\n }, 0);\n };\n }\n\n _createClass(PromisedWorker, [{\n key: 'postMessage',\n value: function postMessage(msg) {\n var id = this.id || 0;\n this.id = id + 1;\n msg.id = id;\n var self = this;\n return new Promise(function (resolve, reject) {\n // prepare the resolver\n self.resolvers[id] = function (err, res) {\n if (err) {\n self.convertGwtStyleError(err);\n reject(err);\n } else {\n resolve(res);\n }\n };\n // post the message\n self.worker.postMessage(msg);\n });\n }\n }, {\n key: 'receive',\n value: function receive(self, answer) {\n var json = answer.data;\n var resolver = self.resolvers[json.id];\n if (resolver) {\n delete self.resolvers[json.id];\n if (json.error) {\n resolver(json.error);\n } else {\n resolver(null, json.data);\n }\n }\n }\n }, {\n key: 'terminate',\n value: function terminate() {\n if (this.worker.terminate) {\n this.worker.terminate();\n }\n }\n }, {\n key: 'convertGwtStyleError',\n value: function convertGwtStyleError(err) {\n if (!err) {\n return;\n }\n // Somewhat flatten the way GWT stores nested exception(s)\n var javaException = err['__java$exception'];\n if (javaException) {\n // Note that the property name of the nested exception is different\n // in the non-minified ('cause') and the minified (not deterministic) version.\n // Hence, the version below only works for the non-minified version.\n // However, as the minified stack trace is not of much use anyway, one\n // should switch the used version for debugging in such a case.\n if (javaException.cause && javaException.cause.backingJsObject) {\n err.cause = javaException.cause.backingJsObject;\n this.convertGwtStyleError(err.cause);\n }\n delete err['__java$exception'];\n }\n }\n }]);\n\n return PromisedWorker;\n}();\n},{}],2:[function(require,module,exports){\n\"use strict\";\n\n/*******************************************************************************\n * Copyright (c) 2021 Kiel University and others.\n * This program and the accompanying materials are made available under the\n * terms of the Eclipse Public License 2.0 which is available at\n * http://www.eclipse.org/legal/epl-2.0.\n * \n * SPDX-License-Identifier: EPL-2.0\n *******************************************************************************/\nvar ELK = require('./elk-api.js').default;\n\nObject.defineProperty(module.exports, \"__esModule\", {\n value: true\n});\nmodule.exports = ELK;\nELK.default = ELK;\n},{\"./elk-api.js\":1}]},{},[2])(2)\n});\n","'use strict';\n\n// -------------- FAKE ELEMENTS GWT ASSUMES EXIST -------------- \nvar $wnd;\nif (typeof window !== 'undefined')\n $wnd = window\nelse if (typeof global !== 'undefined')\n $wnd = global // nodejs\nelse if (typeof self !== 'undefined')\n $wnd = self // web worker\n\nvar $moduleName,\n $moduleBase;\n\n// -------------- WORKAROUND STRICT MODE, SEE #127 -------------- \nvar g, i, o;\n\n// -------------- GENERATED CODE -------------- \nfunction nb(){}\nfunction xb(){}\nfunction Fd(){}\nfunction $g(){}\nfunction _p(){}\nfunction yq(){}\nfunction Sq(){}\nfunction Es(){}\nfunction Jw(){}\nfunction Vw(){}\nfunction VA(){}\nfunction dA(){}\nfunction MA(){}\nfunction PA(){}\nfunction PB(){}\nfunction bx(){}\nfunction cx(){}\nfunction vy(){}\nfunction Nz(){}\nfunction Yz(){}\nfunction Ylb(){}\nfunction Ymb(){}\nfunction xmb(){}\nfunction Fmb(){}\nfunction Qmb(){}\nfunction gcb(){}\nfunction ccb(){}\nfunction jcb(){}\nfunction jtb(){}\nfunction otb(){}\nfunction qtb(){}\nfunction _fb(){}\nfunction bpb(){}\nfunction kpb(){}\nfunction ppb(){}\nfunction Gpb(){}\nfunction drb(){}\nfunction dzb(){}\nfunction fzb(){}\nfunction fxb(){}\nfunction Vxb(){}\nfunction Ovb(){}\nfunction byb(){}\nfunction zyb(){}\nfunction Zyb(){}\nfunction _yb(){}\nfunction hzb(){}\nfunction jzb(){}\nfunction lzb(){}\nfunction nzb(){}\nfunction rzb(){}\nfunction zzb(){}\nfunction Czb(){}\nfunction Ezb(){}\nfunction Gzb(){}\nfunction Izb(){}\nfunction Mzb(){}\nfunction bBb(){}\nfunction NBb(){}\nfunction PBb(){}\nfunction RBb(){}\nfunction iCb(){}\nfunction OCb(){}\nfunction SCb(){}\nfunction GDb(){}\nfunction JDb(){}\nfunction fEb(){}\nfunction xEb(){}\nfunction CEb(){}\nfunction GEb(){}\nfunction yFb(){}\nfunction KGb(){}\nfunction tIb(){}\nfunction vIb(){}\nfunction xIb(){}\nfunction zIb(){}\nfunction OIb(){}\nfunction SIb(){}\nfunction TJb(){}\nfunction VJb(){}\nfunction XJb(){}\nfunction XKb(){}\nfunction fKb(){}\nfunction VKb(){}\nfunction VLb(){}\nfunction jLb(){}\nfunction nLb(){}\nfunction GLb(){}\nfunction KLb(){}\nfunction MLb(){}\nfunction OLb(){}\nfunction RLb(){}\nfunction YLb(){}\nfunction bMb(){}\nfunction gMb(){}\nfunction lMb(){}\nfunction pMb(){}\nfunction wMb(){}\nfunction zMb(){}\nfunction CMb(){}\nfunction FMb(){}\nfunction LMb(){}\nfunction zNb(){}\nfunction PNb(){}\nfunction kOb(){}\nfunction pOb(){}\nfunction tOb(){}\nfunction yOb(){}\nfunction FOb(){}\nfunction GPb(){}\nfunction aQb(){}\nfunction cQb(){}\nfunction eQb(){}\nfunction gQb(){}\nfunction iQb(){}\nfunction CQb(){}\nfunction MQb(){}\nfunction OQb(){}\nfunction ASb(){}\nfunction fTb(){}\nfunction kTb(){}\nfunction STb(){}\nfunction fUb(){}\nfunction DUb(){}\nfunction VUb(){}\nfunction YUb(){}\nfunction _Ub(){}\nfunction _Wb(){}\nfunction QWb(){}\nfunction XWb(){}\nfunction jVb(){}\nfunction DVb(){}\nfunction VVb(){}\nfunction $Vb(){}\nfunction dXb(){}\nfunction hXb(){}\nfunction lXb(){}\nfunction gYb(){}\nfunction HYb(){}\nfunction SYb(){}\nfunction VYb(){}\nfunction dZb(){}\nfunction P$b(){}\nfunction T$b(){}\nfunction h1b(){}\nfunction m1b(){}\nfunction q1b(){}\nfunction u1b(){}\nfunction y1b(){}\nfunction C1b(){}\nfunction e2b(){}\nfunction g2b(){}\nfunction m2b(){}\nfunction q2b(){}\nfunction u2b(){}\nfunction S2b(){}\nfunction U2b(){}\nfunction W2b(){}\nfunction _2b(){}\nfunction e3b(){}\nfunction h3b(){}\nfunction p3b(){}\nfunction t3b(){}\nfunction w3b(){}\nfunction y3b(){}\nfunction A3b(){}\nfunction M3b(){}\nfunction Q3b(){}\nfunction U3b(){}\nfunction Y3b(){}\nfunction l4b(){}\nfunction q4b(){}\nfunction s4b(){}\nfunction u4b(){}\nfunction w4b(){}\nfunction y4b(){}\nfunction L4b(){}\nfunction N4b(){}\nfunction P4b(){}\nfunction R4b(){}\nfunction T4b(){}\nfunction X4b(){}\nfunction I5b(){}\nfunction Q5b(){}\nfunction T5b(){}\nfunction Z5b(){}\nfunction l6b(){}\nfunction o6b(){}\nfunction t6b(){}\nfunction z6b(){}\nfunction L6b(){}\nfunction M6b(){}\nfunction P6b(){}\nfunction X6b(){}\nfunction $6b(){}\nfunction a7b(){}\nfunction c7b(){}\nfunction g7b(){}\nfunction j7b(){}\nfunction m7b(){}\nfunction r7b(){}\nfunction x7b(){}\nfunction D7b(){}\nfunction D9b(){}\nfunction b9b(){}\nfunction h9b(){}\nfunction j9b(){}\nfunction l9b(){}\nfunction w9b(){}\nfunction F9b(){}\nfunction hac(){}\nfunction jac(){}\nfunction pac(){}\nfunction uac(){}\nfunction Iac(){}\nfunction Kac(){}\nfunction Sac(){}\nfunction obc(){}\nfunction rbc(){}\nfunction vbc(){}\nfunction Fbc(){}\nfunction Jbc(){}\nfunction Xbc(){}\nfunction ccc(){}\nfunction fcc(){}\nfunction lcc(){}\nfunction occ(){}\nfunction tcc(){}\nfunction ycc(){}\nfunction Acc(){}\nfunction Ccc(){}\nfunction Ecc(){}\nfunction Gcc(){}\nfunction Zcc(){}\nfunction _cc(){}\nfunction bdc(){}\nfunction fdc(){}\nfunction jdc(){}\nfunction pdc(){}\nfunction sdc(){}\nfunction ydc(){}\nfunction Adc(){}\nfunction Cdc(){}\nfunction Edc(){}\nfunction Idc(){}\nfunction Ndc(){}\nfunction Qdc(){}\nfunction Sdc(){}\nfunction Udc(){}\nfunction Wdc(){}\nfunction Ydc(){}\nfunction aec(){}\nfunction hec(){}\nfunction jec(){}\nfunction lec(){}\nfunction nec(){}\nfunction uec(){}\nfunction wec(){}\nfunction yec(){}\nfunction Aec(){}\nfunction Fec(){}\nfunction Jec(){}\nfunction Lec(){}\nfunction Nec(){}\nfunction Rec(){}\nfunction Uec(){}\nfunction Zec(){}\nfunction Zfc(){}\nfunction lfc(){}\nfunction tfc(){}\nfunction xfc(){}\nfunction zfc(){}\nfunction Ffc(){}\nfunction Jfc(){}\nfunction Nfc(){}\nfunction Pfc(){}\nfunction Vfc(){}\nfunction _fc(){}\nfunction fgc(){}\nfunction jgc(){}\nfunction lgc(){}\nfunction Bgc(){}\nfunction ehc(){}\nfunction ghc(){}\nfunction ihc(){}\nfunction khc(){}\nfunction mhc(){}\nfunction ohc(){}\nfunction qhc(){}\nfunction yhc(){}\nfunction Ahc(){}\nfunction Ghc(){}\nfunction Ihc(){}\nfunction Khc(){}\nfunction Mhc(){}\nfunction Shc(){}\nfunction Uhc(){}\nfunction Whc(){}\nfunction dic(){}\nfunction dlc(){}\nfunction blc(){}\nfunction flc(){}\nfunction hlc(){}\nfunction jlc(){}\nfunction Glc(){}\nfunction Ilc(){}\nfunction Klc(){}\nfunction Mlc(){}\nfunction Mjc(){}\nfunction Qjc(){}\nfunction Qlc(){}\nfunction Ulc(){}\nfunction Ylc(){}\nfunction Lkc(){}\nfunction Nkc(){}\nfunction Pkc(){}\nfunction Rkc(){}\nfunction Xkc(){}\nfunction _kc(){}\nfunction gmc(){}\nfunction kmc(){}\nfunction zmc(){}\nfunction Fmc(){}\nfunction Wmc(){}\nfunction $mc(){}\nfunction anc(){}\nfunction mnc(){}\nfunction wnc(){}\nfunction Hnc(){}\nfunction Jnc(){}\nfunction Lnc(){}\nfunction Nnc(){}\nfunction Pnc(){}\nfunction Ync(){}\nfunction eoc(){}\nfunction Aoc(){}\nfunction Coc(){}\nfunction Eoc(){}\nfunction Joc(){}\nfunction Loc(){}\nfunction Zoc(){}\nfunction _oc(){}\nfunction bpc(){}\nfunction hpc(){}\nfunction kpc(){}\nfunction ppc(){}\nfunction pFc(){}\nfunction Ryc(){}\nfunction QCc(){}\nfunction PDc(){}\nfunction xGc(){}\nfunction HGc(){}\nfunction JGc(){}\nfunction NGc(){}\nfunction GIc(){}\nfunction iKc(){}\nfunction mKc(){}\nfunction wKc(){}\nfunction yKc(){}\nfunction AKc(){}\nfunction EKc(){}\nfunction KKc(){}\nfunction OKc(){}\nfunction QKc(){}\nfunction SKc(){}\nfunction UKc(){}\nfunction YKc(){}\nfunction aLc(){}\nfunction fLc(){}\nfunction hLc(){}\nfunction nLc(){}\nfunction pLc(){}\nfunction tLc(){}\nfunction vLc(){}\nfunction zLc(){}\nfunction BLc(){}\nfunction DLc(){}\nfunction FLc(){}\nfunction sMc(){}\nfunction JMc(){}\nfunction hNc(){}\nfunction RNc(){}\nfunction ZNc(){}\nfunction _Nc(){}\nfunction bOc(){}\nfunction dOc(){}\nfunction fOc(){}\nfunction hOc(){}\nfunction hRc(){}\nfunction jRc(){}\nfunction KRc(){}\nfunction NRc(){}\nfunction NQc(){}\nfunction LQc(){}\nfunction _Qc(){}\nfunction cPc(){}\nfunction iPc(){}\nfunction kPc(){}\nfunction mPc(){}\nfunction xPc(){}\nfunction zPc(){}\nfunction zSc(){}\nfunction BSc(){}\nfunction GSc(){}\nfunction ISc(){}\nfunction NSc(){}\nfunction TSc(){}\nfunction NTc(){}\nfunction NVc(){}\nfunction oVc(){}\nfunction SVc(){}\nfunction VVc(){}\nfunction XVc(){}\nfunction ZVc(){}\nfunction bWc(){}\nfunction bXc(){}\nfunction CXc(){}\nfunction FXc(){}\nfunction IXc(){}\nfunction MXc(){}\nfunction UXc(){}\nfunction bYc(){}\nfunction fYc(){}\nfunction oYc(){}\nfunction qYc(){}\nfunction uYc(){}\nfunction pZc(){}\nfunction G$c(){}\nfunction h0c(){}\nfunction N0c(){}\nfunction k1c(){}\nfunction I1c(){}\nfunction Q1c(){}\nfunction f2c(){}\nfunction i2c(){}\nfunction k2c(){}\nfunction w2c(){}\nfunction O2c(){}\nfunction S2c(){}\nfunction Z2c(){}\nfunction v3c(){}\nfunction x3c(){}\nfunction R3c(){}\nfunction U3c(){}\nfunction e4c(){}\nfunction w4c(){}\nfunction x4c(){}\nfunction z4c(){}\nfunction B4c(){}\nfunction D4c(){}\nfunction F4c(){}\nfunction H4c(){}\nfunction J4c(){}\nfunction L4c(){}\nfunction N4c(){}\nfunction P4c(){}\nfunction R4c(){}\nfunction T4c(){}\nfunction V4c(){}\nfunction X4c(){}\nfunction Z4c(){}\nfunction _4c(){}\nfunction _7c(){}\nfunction b5c(){}\nfunction d5c(){}\nfunction f5c(){}\nfunction h5c(){}\nfunction H5c(){}\nfunction Hfd(){}\nfunction Zfd(){}\nfunction Zed(){}\nfunction ged(){}\nfunction Jed(){}\nfunction Ned(){}\nfunction Red(){}\nfunction Ved(){}\nfunction bbd(){}\nfunction mdd(){}\nfunction _fd(){}\nfunction fgd(){}\nfunction kgd(){}\nfunction Mgd(){}\nfunction Ahd(){}\nfunction Ald(){}\nfunction Tld(){}\nfunction xkd(){}\nfunction rmd(){}\nfunction knd(){}\nfunction Jod(){}\nfunction JCd(){}\nfunction Bpd(){}\nfunction BFd(){}\nfunction oFd(){}\nfunction bqd(){}\nfunction bvd(){}\nfunction jvd(){}\nfunction yud(){}\nfunction Hxd(){}\nfunction EBd(){}\nfunction aDd(){}\nfunction MGd(){}\nfunction vHd(){}\nfunction RHd(){}\nfunction wNd(){}\nfunction zNd(){}\nfunction CNd(){}\nfunction KNd(){}\nfunction XNd(){}\nfunction $Nd(){}\nfunction HPd(){}\nfunction lUd(){}\nfunction XUd(){}\nfunction DWd(){}\nfunction GWd(){}\nfunction JWd(){}\nfunction MWd(){}\nfunction PWd(){}\nfunction SWd(){}\nfunction VWd(){}\nfunction YWd(){}\nfunction _Wd(){}\nfunction xYd(){}\nfunction BYd(){}\nfunction mZd(){}\nfunction EZd(){}\nfunction GZd(){}\nfunction JZd(){}\nfunction MZd(){}\nfunction PZd(){}\nfunction SZd(){}\nfunction VZd(){}\nfunction YZd(){}\nfunction _Zd(){}\nfunction c$d(){}\nfunction f$d(){}\nfunction i$d(){}\nfunction l$d(){}\nfunction o$d(){}\nfunction r$d(){}\nfunction u$d(){}\nfunction x$d(){}\nfunction A$d(){}\nfunction D$d(){}\nfunction G$d(){}\nfunction J$d(){}\nfunction M$d(){}\nfunction P$d(){}\nfunction S$d(){}\nfunction V$d(){}\nfunction Y$d(){}\nfunction _$d(){}\nfunction c_d(){}\nfunction f_d(){}\nfunction i_d(){}\nfunction l_d(){}\nfunction o_d(){}\nfunction r_d(){}\nfunction u_d(){}\nfunction x_d(){}\nfunction A_d(){}\nfunction D_d(){}\nfunction G_d(){}\nfunction J_d(){}\nfunction M_d(){}\nfunction P_d(){}\nfunction S_d(){}\nfunction V_d(){}\nfunction Y_d(){}\nfunction h5d(){}\nfunction U6d(){}\nfunction U9d(){}\nfunction _8d(){}\nfunction fae(){}\nfunction hae(){}\nfunction kae(){}\nfunction nae(){}\nfunction qae(){}\nfunction tae(){}\nfunction wae(){}\nfunction zae(){}\nfunction Cae(){}\nfunction Fae(){}\nfunction Iae(){}\nfunction Lae(){}\nfunction Oae(){}\nfunction Rae(){}\nfunction Uae(){}\nfunction Xae(){}\nfunction $ae(){}\nfunction bbe(){}\nfunction ebe(){}\nfunction hbe(){}\nfunction kbe(){}\nfunction nbe(){}\nfunction qbe(){}\nfunction tbe(){}\nfunction wbe(){}\nfunction zbe(){}\nfunction Cbe(){}\nfunction Fbe(){}\nfunction Ibe(){}\nfunction Lbe(){}\nfunction Obe(){}\nfunction Rbe(){}\nfunction Ube(){}\nfunction Xbe(){}\nfunction $be(){}\nfunction bce(){}\nfunction ece(){}\nfunction hce(){}\nfunction kce(){}\nfunction nce(){}\nfunction qce(){}\nfunction tce(){}\nfunction wce(){}\nfunction zce(){}\nfunction Cce(){}\nfunction Fce(){}\nfunction Ice(){}\nfunction Lce(){}\nfunction Oce(){}\nfunction Rce(){}\nfunction Uce(){}\nfunction Xce(){}\nfunction ude(){}\nfunction Vge(){}\nfunction dhe(){}\nfunction s_b(a){}\nfunction jSd(a){}\nfunction ol(){wb()}\nfunction oPb(){nPb()}\nfunction EPb(){CPb()}\nfunction gFb(){fFb()}\nfunction TRb(){SRb()}\nfunction ySb(){wSb()}\nfunction PSb(){OSb()}\nfunction dTb(){bTb()}\nfunction i4b(){b4b()}\nfunction D2b(){x2b()}\nfunction J6b(){D6b()}\nfunction u9b(){q9b()}\nfunction $9b(){I9b()}\nfunction Umc(){Imc()}\nfunction abc(){Vac()}\nfunction ZCc(){VCc()}\nfunction kCc(){hCc()}\nfunction rCc(){oCc()}\nfunction Tcc(){Occ()}\nfunction xkc(){gkc()}\nfunction xDc(){rDc()}\nfunction iDc(){cDc()}\nfunction kwc(){jwc()}\nfunction tJc(){jJc()}\nfunction dJc(){aJc()}\nfunction Pyc(){Nyc()}\nfunction VBc(){SBc()}\nfunction CFc(){yFc()}\nfunction CUc(){wUc()}\nfunction lUc(){fUc()}\nfunction sUc(){pUc()}\nfunction IUc(){GUc()}\nfunction IWc(){HWc()}\nfunction _Wc(){ZWc()}\nfunction fHc(){dHc()}\nfunction f0c(){d0c()}\nfunction B0c(){A0c()}\nfunction L0c(){J0c()}\nfunction LTc(){JTc()}\nfunction sTc(){rTc()}\nfunction KLc(){ILc()}\nfunction wNc(){tNc()}\nfunction PYc(){OYc()}\nfunction nZc(){lZc()}\nfunction q3c(){p3c()}\nfunction Z7c(){X7c()}\nfunction Z9c(){Y9c()}\nfunction _ad(){Zad()}\nfunction kdd(){idd()}\nfunction $md(){Smd()}\nfunction HGd(){tGd()}\nfunction hLd(){NKd()}\nfunction J6d(){Uge()}\nfunction Mvb(a){uCb(a)}\nfunction Yb(a){this.a=a}\nfunction cc(a){this.a=a}\nfunction cj(a){this.a=a}\nfunction ij(a){this.a=a}\nfunction Dj(a){this.a=a}\nfunction df(a){this.a=a}\nfunction kf(a){this.a=a}\nfunction ah(a){this.a=a}\nfunction lh(a){this.a=a}\nfunction th(a){this.a=a}\nfunction Ph(a){this.a=a}\nfunction vi(a){this.a=a}\nfunction Ci(a){this.a=a}\nfunction Fk(a){this.a=a}\nfunction Ln(a){this.a=a}\nfunction ap(a){this.a=a}\nfunction zp(a){this.a=a}\nfunction Yp(a){this.a=a}\nfunction qq(a){this.a=a}\nfunction Dq(a){this.a=a}\nfunction wr(a){this.a=a}\nfunction Ir(a){this.b=a}\nfunction sj(a){this.c=a}\nfunction sw(a){this.a=a}\nfunction fw(a){this.a=a}\nfunction xw(a){this.a=a}\nfunction Cw(a){this.a=a}\nfunction Qw(a){this.a=a}\nfunction Rw(a){this.a=a}\nfunction Xw(a){this.a=a}\nfunction Xv(a){this.a=a}\nfunction Sv(a){this.a=a}\nfunction eu(a){this.a=a}\nfunction Zx(a){this.a=a}\nfunction _x(a){this.a=a}\nfunction xy(a){this.a=a}\nfunction xB(a){this.a=a}\nfunction HB(a){this.a=a}\nfunction TB(a){this.a=a}\nfunction fC(a){this.a=a}\nfunction wB(){this.a=[]}\nfunction MBb(a,b){a.a=b}\nfunction w_b(a,b){a.a=b}\nfunction x_b(a,b){a.b=b}\nfunction YOb(a,b){a.b=b}\nfunction $Ob(a,b){a.b=b}\nfunction ZGb(a,b){a.j=b}\nfunction qNb(a,b){a.g=b}\nfunction rNb(a,b){a.i=b}\nfunction dRb(a,b){a.c=b}\nfunction eRb(a,b){a.d=b}\nfunction z_b(a,b){a.d=b}\nfunction y_b(a,b){a.c=b}\nfunction __b(a,b){a.k=b}\nfunction E0b(a,b){a.c=b}\nfunction njc(a,b){a.c=b}\nfunction mjc(a,b){a.a=b}\nfunction dFc(a,b){a.a=b}\nfunction eFc(a,b){a.f=b}\nfunction nOc(a,b){a.a=b}\nfunction oOc(a,b){a.b=b}\nfunction pOc(a,b){a.d=b}\nfunction qOc(a,b){a.i=b}\nfunction rOc(a,b){a.o=b}\nfunction sOc(a,b){a.r=b}\nfunction $Pc(a,b){a.a=b}\nfunction _Pc(a,b){a.b=b}\nfunction DVc(a,b){a.e=b}\nfunction EVc(a,b){a.f=b}\nfunction FVc(a,b){a.g=b}\nfunction SZc(a,b){a.e=b}\nfunction TZc(a,b){a.f=b}\nfunction c$c(a,b){a.f=b}\nfunction bJd(a,b){a.n=b}\nfunction A1d(a,b){a.a=b}\nfunction J1d(a,b){a.a=b}\nfunction B1d(a,b){a.c=b}\nfunction K1d(a,b){a.c=b}\nfunction L1d(a,b){a.d=b}\nfunction M1d(a,b){a.e=b}\nfunction N1d(a,b){a.g=b}\nfunction d2d(a,b){a.a=b}\nfunction e2d(a,b){a.c=b}\nfunction f2d(a,b){a.d=b}\nfunction g2d(a,b){a.e=b}\nfunction h2d(a,b){a.f=b}\nfunction i2d(a,b){a.j=b}\nfunction Z8d(a,b){a.a=b}\nfunction $8d(a,b){a.b=b}\nfunction g9d(a,b){a.a=b}\nfunction Cic(a){a.b=a.a}\nfunction Dg(a){a.c=a.d.d}\nfunction vib(a){this.d=a}\nfunction eib(a){this.a=a}\nfunction Pib(a){this.a=a}\nfunction Vib(a){this.a=a}\nfunction $ib(a){this.a=a}\nfunction mcb(a){this.a=a}\nfunction Mcb(a){this.a=a}\nfunction Xcb(a){this.a=a}\nfunction Ndb(a){this.a=a}\nfunction _db(a){this.a=a}\nfunction teb(a){this.a=a}\nfunction Qeb(a){this.a=a}\nfunction djb(a){this.a=a}\nfunction Gjb(a){this.a=a}\nfunction Njb(a){this.a=a}\nfunction Bjb(a){this.b=a}\nfunction lnb(a){this.b=a}\nfunction Dnb(a){this.b=a}\nfunction anb(a){this.a=a}\nfunction Mob(a){this.a=a}\nfunction Rob(a){this.a=a}\nfunction iob(a){this.c=a}\nfunction olb(a){this.c=a}\nfunction qub(a){this.c=a}\nfunction Tub(a){this.a=a}\nfunction Vub(a){this.a=a}\nfunction Xub(a){this.a=a}\nfunction Zub(a){this.a=a}\nfunction tpb(a){this.a=a}\nfunction _pb(a){this.a=a}\nfunction Wqb(a){this.a=a}\nfunction nsb(a){this.a=a}\nfunction Rxb(a){this.a=a}\nfunction Txb(a){this.a=a}\nfunction Xxb(a){this.a=a}\nfunction bzb(a){this.a=a}\nfunction tzb(a){this.a=a}\nfunction vzb(a){this.a=a}\nfunction xzb(a){this.a=a}\nfunction Kzb(a){this.a=a}\nfunction Ozb(a){this.a=a}\nfunction iAb(a){this.a=a}\nfunction kAb(a){this.a=a}\nfunction mAb(a){this.a=a}\nfunction BAb(a){this.a=a}\nfunction hBb(a){this.a=a}\nfunction jBb(a){this.a=a}\nfunction nBb(a){this.a=a}\nfunction TBb(a){this.a=a}\nfunction XBb(a){this.a=a}\nfunction QCb(a){this.a=a}\nfunction WCb(a){this.a=a}\nfunction _Cb(a){this.a=a}\nfunction dEb(a){this.a=a}\nfunction QGb(a){this.a=a}\nfunction YGb(a){this.a=a}\nfunction tKb(a){this.a=a}\nfunction CLb(a){this.a=a}\nfunction JMb(a){this.a=a}\nfunction RNb(a){this.a=a}\nfunction kQb(a){this.a=a}\nfunction mQb(a){this.a=a}\nfunction FQb(a){this.a=a}\nfunction ETb(a){this.a=a}\nfunction UTb(a){this.a=a}\nfunction dUb(a){this.a=a}\nfunction hUb(a){this.a=a}\nfunction EZb(a){this.a=a}\nfunction j$b(a){this.a=a}\nfunction v$b(a){this.e=a}\nfunction J0b(a){this.a=a}\nfunction M0b(a){this.a=a}\nfunction R0b(a){this.a=a}\nfunction U0b(a){this.a=a}\nfunction i2b(a){this.a=a}\nfunction k2b(a){this.a=a}\nfunction o2b(a){this.a=a}\nfunction s2b(a){this.a=a}\nfunction G2b(a){this.a=a}\nfunction I2b(a){this.a=a}\nfunction K2b(a){this.a=a}\nfunction M2b(a){this.a=a}\nfunction W3b(a){this.a=a}\nfunction $3b(a){this.a=a}\nfunction V4b(a){this.a=a}\nfunction u5b(a){this.a=a}\nfunction A7b(a){this.a=a}\nfunction G7b(a){this.a=a}\nfunction J7b(a){this.a=a}\nfunction M7b(a){this.a=a}\nfunction Mbc(a){this.a=a}\nfunction Pbc(a){this.a=a}\nfunction lac(a){this.a=a}\nfunction nac(a){this.a=a}\nfunction qcc(a){this.a=a}\nfunction Gdc(a){this.a=a}\nfunction $dc(a){this.a=a}\nfunction cec(a){this.a=a}\nfunction _ec(a){this.a=a}\nfunction pfc(a){this.a=a}\nfunction Bfc(a){this.a=a}\nfunction Lfc(a){this.a=a}\nfunction ygc(a){this.a=a}\nfunction Dgc(a){this.a=a}\nfunction shc(a){this.a=a}\nfunction uhc(a){this.a=a}\nfunction whc(a){this.a=a}\nfunction Chc(a){this.a=a}\nfunction Ehc(a){this.a=a}\nfunction Ohc(a){this.a=a}\nfunction Yhc(a){this.a=a}\nfunction Tkc(a){this.a=a}\nfunction Vkc(a){this.a=a}\nfunction Olc(a){this.a=a}\nfunction pnc(a){this.a=a}\nfunction rnc(a){this.a=a}\nfunction dpc(a){this.a=a}\nfunction fpc(a){this.a=a}\nfunction GCc(a){this.a=a}\nfunction KCc(a){this.a=a}\nfunction mDc(a){this.a=a}\nfunction jEc(a){this.a=a}\nfunction HEc(a){this.a=a}\nfunction FEc(a){this.c=a}\nfunction qoc(a){this.b=a}\nfunction bFc(a){this.a=a}\nfunction GFc(a){this.a=a}\nfunction iGc(a){this.a=a}\nfunction kGc(a){this.a=a}\nfunction mGc(a){this.a=a}\nfunction $Gc(a){this.a=a}\nfunction hIc(a){this.a=a}\nfunction lIc(a){this.a=a}\nfunction pIc(a){this.a=a}\nfunction tIc(a){this.a=a}\nfunction xIc(a){this.a=a}\nfunction zIc(a){this.a=a}\nfunction CIc(a){this.a=a}\nfunction LIc(a){this.a=a}\nfunction CKc(a){this.a=a}\nfunction IKc(a){this.a=a}\nfunction MKc(a){this.a=a}\nfunction $Kc(a){this.a=a}\nfunction cLc(a){this.a=a}\nfunction jLc(a){this.a=a}\nfunction rLc(a){this.a=a}\nfunction xLc(a){this.a=a}\nfunction OMc(a){this.a=a}\nfunction ZOc(a){this.a=a}\nfunction ZRc(a){this.a=a}\nfunction aSc(a){this.a=a}\nfunction I$c(a){this.a=a}\nfunction K$c(a){this.a=a}\nfunction M$c(a){this.a=a}\nfunction O$c(a){this.a=a}\nfunction U$c(a){this.a=a}\nfunction n1c(a){this.a=a}\nfunction z1c(a){this.a=a}\nfunction B1c(a){this.a=a}\nfunction Q2c(a){this.a=a}\nfunction U2c(a){this.a=a}\nfunction z3c(a){this.a=a}\nfunction med(a){this.a=a}\nfunction Xed(a){this.a=a}\nfunction _ed(a){this.a=a}\nfunction Qfd(a){this.a=a}\nfunction Bgd(a){this.a=a}\nfunction $gd(a){this.a=a}\nfunction lrd(a){this.a=a}\nfunction urd(a){this.a=a}\nfunction vrd(a){this.a=a}\nfunction wrd(a){this.a=a}\nfunction xrd(a){this.a=a}\nfunction yrd(a){this.a=a}\nfunction zrd(a){this.a=a}\nfunction Ard(a){this.a=a}\nfunction Brd(a){this.a=a}\nfunction Crd(a){this.a=a}\nfunction Ird(a){this.a=a}\nfunction Krd(a){this.a=a}\nfunction Lrd(a){this.a=a}\nfunction Mrd(a){this.a=a}\nfunction Nrd(a){this.a=a}\nfunction Prd(a){this.a=a}\nfunction Srd(a){this.a=a}\nfunction Yrd(a){this.a=a}\nfunction Zrd(a){this.a=a}\nfunction _rd(a){this.a=a}\nfunction asd(a){this.a=a}\nfunction bsd(a){this.a=a}\nfunction csd(a){this.a=a}\nfunction dsd(a){this.a=a}\nfunction msd(a){this.a=a}\nfunction osd(a){this.a=a}\nfunction qsd(a){this.a=a}\nfunction ssd(a){this.a=a}\nfunction Wsd(a){this.a=a}\nfunction Lsd(a){this.b=a}\nfunction thd(a){this.f=a}\nfunction qtd(a){this.a=a}\nfunction yBd(a){this.a=a}\nfunction GBd(a){this.a=a}\nfunction MBd(a){this.a=a}\nfunction SBd(a){this.a=a}\nfunction iCd(a){this.a=a}\nfunction YMd(a){this.a=a}\nfunction GNd(a){this.a=a}\nfunction EPd(a){this.a=a}\nfunction EQd(a){this.a=a}\nfunction NTd(a){this.a=a}\nfunction qOd(a){this.b=a}\nfunction lVd(a){this.c=a}\nfunction VVd(a){this.e=a}\nfunction iYd(a){this.a=a}\nfunction RYd(a){this.a=a}\nfunction ZYd(a){this.a=a}\nfunction z0d(a){this.a=a}\nfunction O0d(a){this.a=a}\nfunction s0d(a){this.d=a}\nfunction W5d(a){this.a=a}\nfunction cge(a){this.a=a}\nfunction xfe(a){this.e=a}\nfunction Tfd(){this.a=0}\nfunction jkb(){Vjb(this)}\nfunction Rkb(){Ckb(this)}\nfunction Lqb(){Uhb(this)}\nfunction lEb(){kEb(this)}\nfunction A_b(){s_b(this)}\nfunction UQd(){this.c=FQd}\nfunction v6d(a,b){b.Wb(a)}\nfunction moc(a,b){a.b+=b}\nfunction yXb(a){a.b=new Ji}\nfunction vbb(a){return a.e}\nfunction DB(a){return a.a}\nfunction LB(a){return a.a}\nfunction ZB(a){return a.a}\nfunction lC(a){return a.a}\nfunction EC(a){return a.a}\nfunction wC(){return null}\nfunction SB(){return null}\nfunction hcb(){mvd();ovd()}\nfunction zJb(a){a.b.tf(a.e)}\nfunction j5b(a,b){a.b=b-a.b}\nfunction g5b(a,b){a.a=b-a.a}\nfunction PXc(a,b){b.ad(a.a)}\nfunction plc(a,b){G0b(b,a)}\nfunction hp(a,b,c){a.Od(c,b)}\nfunction As(a,b){a.e=b;b.b=a}\nfunction Zl(a){Ql();this.a=a}\nfunction jq(a){Ql();this.a=a}\nfunction sq(a){Ql();this.a=a}\nfunction Fq(a){im();this.a=a}\nfunction Sz(a){Rz();Qz.be(a)}\nfunction gz(){Xy.call(this)}\nfunction xcb(){Xy.call(this)}\nfunction pcb(){gz.call(this)}\nfunction tcb(){gz.call(this)}\nfunction Bdb(){gz.call(this)}\nfunction Vdb(){gz.call(this)}\nfunction Ydb(){gz.call(this)}\nfunction Geb(){gz.call(this)}\nfunction bgb(){gz.call(this)}\nfunction Apb(){gz.call(this)}\nfunction Jpb(){gz.call(this)}\nfunction utb(){gz.call(this)}\nfunction x2c(){gz.call(this)}\nfunction rQd(){this.a=this}\nfunction MPd(){this.Bb|=256}\nfunction tTb(){this.b=new mt}\nfunction fA(){fA=ccb;new Lqb}\nfunction rcb(){pcb.call(this)}\nfunction dCb(a,b){a.length=b}\nfunction Tvb(a,b){Ekb(a.a,b)}\nfunction sKb(a,b){UHb(a.c,b)}\nfunction SMc(a,b){Qqb(a.b,b)}\nfunction vBd(a,b){uAd(a.a,b)}\nfunction wBd(a,b){vAd(a.a,b)}\nfunction GLd(a,b){Uhd(a.e,b)}\nfunction d7d(a){D2d(a.c,a.b)}\nfunction mj(a,b){a.kc().Nb(b)}\nfunction Odb(a){this.a=Tdb(a)}\nfunction Tqb(){this.a=new Lqb}\nfunction gyb(){this.a=new Lqb}\nfunction Wvb(){this.a=new Rkb}\nfunction KFb(){this.a=new Rkb}\nfunction PFb(){this.a=new Rkb}\nfunction FFb(){this.a=new yFb}\nfunction pGb(){this.a=new MFb}\nfunction ZQb(){this.a=new MQb}\nfunction Gxb(){this.a=new Pwb}\nfunction jUb(){this.a=new PTb}\nfunction sDb(){this.a=new oDb}\nfunction zDb(){this.a=new tDb}\nfunction CWb(){this.a=new Rkb}\nfunction HXb(){this.a=new Rkb}\nfunction nYb(){this.a=new Rkb}\nfunction BYb(){this.a=new Rkb}\nfunction fLb(){this.d=new Rkb}\nfunction vYb(){this.a=new Tqb}\nfunction a2b(){this.a=new Lqb}\nfunction wZb(){this.b=new Lqb}\nfunction TCc(){this.b=new Rkb}\nfunction zJc(){this.e=new Rkb}\nfunction uMc(){this.d=new Rkb}\nfunction wdc(){this.a=new xkc}\nfunction vKc(){Rkb.call(this)}\nfunction twb(){Wvb.call(this)}\nfunction oHb(){$Gb.call(this)}\nfunction LXb(){HXb.call(this)}\nfunction L_b(){H_b.call(this)}\nfunction H_b(){A_b.call(this)}\nfunction p0b(){A_b.call(this)}\nfunction s0b(){p0b.call(this)}\nfunction WMc(){VMc.call(this)}\nfunction bNc(){VMc.call(this)}\nfunction EPc(){CPc.call(this)}\nfunction JPc(){CPc.call(this)}\nfunction OPc(){CPc.call(this)}\nfunction w1c(){s1c.call(this)}\nfunction s7c(){Psb.call(this)}\nfunction apd(){Ald.call(this)}\nfunction ppd(){Ald.call(this)}\nfunction lDd(){YCd.call(this)}\nfunction NDd(){YCd.call(this)}\nfunction mFd(){Lqb.call(this)}\nfunction vFd(){Lqb.call(this)}\nfunction GFd(){Lqb.call(this)}\nfunction KPd(){Tqb.call(this)}\nfunction OJd(){hJd.call(this)}\nfunction aQd(){MPd.call(this)}\nfunction SSd(){FId.call(this)}\nfunction rUd(){FId.call(this)}\nfunction oUd(){Lqb.call(this)}\nfunction NYd(){Lqb.call(this)}\nfunction cZd(){Lqb.call(this)}\nfunction R8d(){MGd.call(this)}\nfunction o9d(){MGd.call(this)}\nfunction i9d(){R8d.call(this)}\nfunction hee(){ude.call(this)}\nfunction Dd(a){yd.call(this,a)}\nfunction Hd(a){yd.call(this,a)}\nfunction ph(a){lh.call(this,a)}\nfunction Sh(a){Wc.call(this,a)}\nfunction oi(a){Sh.call(this,a)}\nfunction Ii(a){Wc.call(this,a)}\nfunction Zdd(){this.a=new Psb}\nfunction CPc(){this.a=new Tqb}\nfunction s1c(){this.a=new Lqb}\nfunction QSc(){this.a=new Rkb}\nfunction D2c(){this.j=new Rkb}\nfunction QXc(){this.a=new UXc}\nfunction e_c(){this.a=new d_c}\nfunction YCd(){this.a=new aDd}\nfunction _k(){_k=ccb;$k=new al}\nfunction Lk(){Lk=ccb;Kk=new Mk}\nfunction wb(){wb=ccb;vb=new xb}\nfunction hs(){hs=ccb;gs=new is}\nfunction rs(a){Sh.call(this,a)}\nfunction Gp(a){Sh.call(this,a)}\nfunction xp(a){Lo.call(this,a)}\nfunction Ep(a){Lo.call(this,a)}\nfunction Tp(a){Wn.call(this,a)}\nfunction wx(a){un.call(this,a)}\nfunction ov(a){dv.call(this,a)}\nfunction Mv(a){Br.call(this,a)}\nfunction Ov(a){Br.call(this,a)}\nfunction Lw(a){Br.call(this,a)}\nfunction hz(a){Yy.call(this,a)}\nfunction MB(a){hz.call(this,a)}\nfunction eC(){fC.call(this,{})}\nfunction Ftb(a){Atb();this.a=a}\nfunction zwb(a){a.b=null;a.c=0}\nfunction Vy(a,b){a.e=b;Sy(a,b)}\nfunction LVb(a,b){a.a=b;NVb(a)}\nfunction lIb(a,b,c){a.a[b.g]=c}\nfunction vfd(a,b,c){Dfd(c,a,b)}\nfunction Odc(a,b){rjc(b.i,a.n)}\nfunction Wyc(a,b){Xyc(a).td(b)}\nfunction ERb(a,b){return a*a/b}\nfunction Xr(a,b){return a.g-b.g}\nfunction tC(a){return new TB(a)}\nfunction vC(a){return new yC(a)}\nfunction ocb(a){hz.call(this,a)}\nfunction qcb(a){hz.call(this,a)}\nfunction ucb(a){hz.call(this,a)}\nfunction vcb(a){Yy.call(this,a)}\nfunction fGc(a){LFc();this.a=a}\nfunction c0d(a){kzd();this.a=a}\nfunction bhd(a){Rgd();this.f=a}\nfunction dhd(a){Rgd();this.f=a}\nfunction Cdb(a){hz.call(this,a)}\nfunction Wdb(a){hz.call(this,a)}\nfunction Zdb(a){hz.call(this,a)}\nfunction Feb(a){hz.call(this,a)}\nfunction Heb(a){hz.call(this,a)}\nfunction Ccb(a){return uCb(a),a}\nfunction Edb(a){return uCb(a),a}\nfunction Gdb(a){return uCb(a),a}\nfunction jfb(a){return uCb(a),a}\nfunction tfb(a){return uCb(a),a}\nfunction akb(a){return a.b==a.c}\nfunction Hwb(a){return !!a&&a.b}\nfunction pIb(a){return !!a&&a.k}\nfunction qIb(a){return !!a&&a.j}\nfunction amb(a){uCb(a);this.a=a}\nfunction wVb(a){qVb(a);return a}\nfunction Blb(a){Glb(a,a.length)}\nfunction cgb(a){hz.call(this,a)}\nfunction cqd(a){hz.call(this,a)}\nfunction n8d(a){hz.call(this,a)}\nfunction y2c(a){hz.call(this,a)}\nfunction z2c(a){hz.call(this,a)}\nfunction mde(a){hz.call(this,a)}\nfunction pc(a){qc.call(this,a,0)}\nfunction Ji(){Ki.call(this,12,3)}\nfunction Kz(){Kz=ccb;Jz=new Nz}\nfunction jz(){jz=ccb;iz=new nb}\nfunction KA(){KA=ccb;JA=new MA}\nfunction OB(){OB=ccb;NB=new PB}\nfunction jc(){throw vbb(new bgb)}\nfunction zh(){throw vbb(new bgb)}\nfunction Pi(){throw vbb(new bgb)}\nfunction Pj(){throw vbb(new bgb)}\nfunction Qj(){throw vbb(new bgb)}\nfunction Ym(){throw vbb(new bgb)}\nfunction Gb(){this.a=GD(Qb(She))}\nfunction oy(a){Ql();this.a=Qb(a)}\nfunction Bs(a,b){a.Td(b);b.Sd(a)}\nfunction iw(a,b){a.a.ec().Mc(b)}\nfunction CYb(a,b,c){a.c.lf(b,c)}\nfunction scb(a){qcb.call(this,a)}\nfunction Oeb(a){Wdb.call(this,a)}\nfunction Hfb(){mcb.call(this,'')}\nfunction Ifb(){mcb.call(this,'')}\nfunction Ufb(){mcb.call(this,'')}\nfunction Vfb(){mcb.call(this,'')}\nfunction Xfb(a){qcb.call(this,a)}\nfunction zob(a){lnb.call(this,a)}\nfunction Yob(a){Inb.call(this,a)}\nfunction Gob(a){zob.call(this,a)}\nfunction Mk(){Fk.call(this,null)}\nfunction al(){Fk.call(this,null)}\nfunction Az(){Az=ccb;!!(Rz(),Qz)}\nfunction wrb(){wrb=ccb;vrb=yrb()}\nfunction Mtb(a){return a.a?a.b:0}\nfunction Vtb(a){return a.a?a.b:0}\nfunction Lcb(a,b){return a.a-b.a}\nfunction Wcb(a,b){return a.a-b.a}\nfunction Peb(a,b){return a.a-b.a}\nfunction eCb(a,b){return PC(a,b)}\nfunction GC(a,b){return rdb(a,b)}\nfunction _B(b,a){return a in b.a}\nfunction _Db(a,b){a.f=b;return a}\nfunction ZDb(a,b){a.b=b;return a}\nfunction $Db(a,b){a.c=b;return a}\nfunction aEb(a,b){a.g=b;return a}\nfunction HGb(a,b){a.a=b;return a}\nfunction IGb(a,b){a.f=b;return a}\nfunction JGb(a,b){a.k=b;return a}\nfunction dLb(a,b){a.a=b;return a}\nfunction eLb(a,b){a.e=b;return a}\nfunction zVb(a,b){a.e=b;return a}\nfunction AVb(a,b){a.f=b;return a}\nfunction KOb(a,b){a.b=true;a.d=b}\nfunction DHb(a,b){a.b=new g7c(b)}\nfunction uvb(a,b,c){b.td(a.a[c])}\nfunction zvb(a,b,c){b.we(a.a[c])}\nfunction wJc(a,b){return a.b-b.b}\nfunction kOc(a,b){return a.g-b.g}\nfunction WQc(a,b){return a.s-b.s}\nfunction Lic(a,b){return a?0:b-1}\nfunction SFc(a,b){return a?0:b-1}\nfunction RFc(a,b){return a?b-1:0}\nfunction M2c(a,b){return b.Yf(a)}\nfunction M3c(a,b){a.b=b;return a}\nfunction L3c(a,b){a.a=b;return a}\nfunction N3c(a,b){a.c=b;return a}\nfunction O3c(a,b){a.d=b;return a}\nfunction P3c(a,b){a.e=b;return a}\nfunction Q3c(a,b){a.f=b;return a}\nfunction b4c(a,b){a.a=b;return a}\nfunction c4c(a,b){a.b=b;return a}\nfunction d4c(a,b){a.c=b;return a}\nfunction z5c(a,b){a.c=b;return a}\nfunction y5c(a,b){a.b=b;return a}\nfunction A5c(a,b){a.d=b;return a}\nfunction B5c(a,b){a.e=b;return a}\nfunction C5c(a,b){a.f=b;return a}\nfunction D5c(a,b){a.g=b;return a}\nfunction E5c(a,b){a.a=b;return a}\nfunction F5c(a,b){a.i=b;return a}\nfunction G5c(a,b){a.j=b;return a}\nfunction Vdd(a,b){a.k=b;return a}\nfunction Wdd(a,b){a.j=b;return a}\nfunction ykc(a,b){gkc();F0b(b,a)}\nfunction T$c(a,b,c){R$c(a.a,b,c)}\nfunction RGc(a){cEc.call(this,a)}\nfunction iHc(a){cEc.call(this,a)}\nfunction t7c(a){Qsb.call(this,a)}\nfunction aPb(a){_Ob.call(this,a)}\nfunction Ixd(a){zud.call(this,a)}\nfunction dCd(a){ZBd.call(this,a)}\nfunction fCd(a){ZBd.call(this,a)}\nfunction p_b(){q_b.call(this,'')}\nfunction d7c(){this.a=0;this.b=0}\nfunction aPc(){this.b=0;this.a=0}\nfunction NJd(a,b){a.b=0;DId(a,b)}\nfunction X1d(a,b){a.c=b;a.b=true}\nfunction Oc(a,b){return a.c._b(b)}\nfunction gdb(a){return a.e&&a.e()}\nfunction Vd(a){return !a?null:a.d}\nfunction sn(a,b){return Gv(a.b,b)}\nfunction Fv(a){return !a?null:a.g}\nfunction Kv(a){return !a?null:a.i}\nfunction hdb(a){fdb(a);return a.o}\nfunction Fhd(){Fhd=ccb;Ehd=ond()}\nfunction Hhd(){Hhd=ccb;Ghd=Cod()}\nfunction LFd(){LFd=ccb;KFd=qZd()}\nfunction p8d(){p8d=ccb;o8d=Y9d()}\nfunction r8d(){r8d=ccb;q8d=dae()}\nfunction mvd(){mvd=ccb;lvd=n4c()}\nfunction Srb(){throw vbb(new bgb)}\nfunction enb(){throw vbb(new bgb)}\nfunction fnb(){throw vbb(new bgb)}\nfunction gnb(){throw vbb(new bgb)}\nfunction jnb(){throw vbb(new bgb)}\nfunction Cnb(){throw vbb(new bgb)}\nfunction Uqb(a){this.a=new Mqb(a)}\nfunction tgb(a){lgb();ngb(this,a)}\nfunction Hxb(a){this.a=new Qwb(a)}\nfunction _ub(a,b){while(a.ye(b));}\nfunction Sub(a,b){while(a.sd(b));}\nfunction Bfb(a,b){a.a+=b;return a}\nfunction Cfb(a,b){a.a+=b;return a}\nfunction Ffb(a,b){a.a+=b;return a}\nfunction Lfb(a,b){a.a+=b;return a}\nfunction WAb(a){Tzb(a);return a.a}\nfunction Wsb(a){return a.b!=a.d.c}\nfunction pD(a){return a.l|a.m<<22}\nfunction aIc(a,b){return a.d[b.p]}\nfunction h2c(a,b){return c2c(a,b)}\nfunction cCb(a,b,c){a.splice(b,c)}\nfunction WHb(a){a.c?VHb(a):XHb(a)}\nfunction jVc(a){this.a=0;this.b=a}\nfunction ZUc(){this.a=new L2c(K$)}\nfunction tRc(){this.b=new L2c(h$)}\nfunction Q$c(){this.b=new L2c(J_)}\nfunction d_c(){this.b=new L2c(J_)}\nfunction OCd(){throw vbb(new bgb)}\nfunction PCd(){throw vbb(new bgb)}\nfunction QCd(){throw vbb(new bgb)}\nfunction RCd(){throw vbb(new bgb)}\nfunction SCd(){throw vbb(new bgb)}\nfunction TCd(){throw vbb(new bgb)}\nfunction UCd(){throw vbb(new bgb)}\nfunction VCd(){throw vbb(new bgb)}\nfunction WCd(){throw vbb(new bgb)}\nfunction XCd(){throw vbb(new bgb)}\nfunction ahe(){throw vbb(new utb)}\nfunction bhe(){throw vbb(new utb)}\nfunction Rge(a){this.a=new ege(a)}\nfunction ege(a){dge(this,a,Vee())}\nfunction Fhe(a){return !a||Ehe(a)}\nfunction dde(a){return $ce[a]!=-1}\nfunction Iz(){xz!=0&&(xz=0);zz=-1}\nfunction Ybb(){Wbb==null&&(Wbb=[])}\nfunction ONd(a,b){Rxd(ZKd(a.a),b)}\nfunction TNd(a,b){Rxd(ZKd(a.a),b)}\nfunction Yf(a,b){zf.call(this,a,b)}\nfunction $f(a,b){Yf.call(this,a,b)}\nfunction Hf(a,b){this.b=a;this.c=b}\nfunction rk(a,b){this.b=a;this.a=b}\nfunction ek(a,b){this.a=a;this.b=b}\nfunction gk(a,b){this.a=a;this.b=b}\nfunction pk(a,b){this.a=a;this.b=b}\nfunction yk(a,b){this.a=a;this.b=b}\nfunction Ak(a,b){this.a=a;this.b=b}\nfunction Fj(a,b){this.a=a;this.b=b}\nfunction _j(a,b){this.a=a;this.b=b}\nfunction dr(a,b){this.a=a;this.b=b}\nfunction zr(a,b){this.b=a;this.a=b}\nfunction So(a,b){this.b=a;this.a=b}\nfunction qp(a,b){this.b=a;this.a=b}\nfunction $q(a,b){this.b=a;this.a=b}\nfunction $r(a,b){this.f=a;this.g=b}\nfunction ne(a,b){this.e=a;this.d=b}\nfunction Wo(a,b){this.g=a;this.i=b}\nfunction bu(a,b){this.a=a;this.b=b}\nfunction qu(a,b){this.a=a;this.f=b}\nfunction qv(a,b){this.b=a;this.c=b}\nfunction ox(a,b){this.a=a;this.b=b}\nfunction Px(a,b){this.a=a;this.b=b}\nfunction mC(a,b){this.a=a;this.b=b}\nfunction Wc(a){Lb(a.dc());this.c=a}\nfunction rf(a){this.b=BD(Qb(a),83)}\nfunction Zv(a){this.a=BD(Qb(a),83)}\nfunction dv(a){this.a=BD(Qb(a),15)}\nfunction $u(a){this.a=BD(Qb(a),15)}\nfunction Br(a){this.b=BD(Qb(a),47)}\nfunction eB(){this.q=new $wnd.Date}\nfunction Zfb(){Zfb=ccb;Yfb=new jcb}\nfunction Emb(){Emb=ccb;Dmb=new Fmb}\nfunction Vhb(a){return a.f.c+a.g.c}\nfunction hnb(a,b){return a.b.Hc(b)}\nfunction inb(a,b){return a.b.Ic(b)}\nfunction knb(a,b){return a.b.Qc(b)}\nfunction Dob(a,b){return a.b.Hc(b)}\nfunction dob(a,b){return a.c.uc(b)}\nfunction Rqb(a,b){return a.a._b(b)}\nfunction fob(a,b){return pb(a.c,b)}\nfunction jt(a,b){return Mhb(a.b,b)}\nfunction Lp(a,b){return a>b&&b0}\nfunction Gbb(a,b){return ybb(a,b)<0}\nfunction Crb(a,b){return a.a.get(b)}\nfunction icb(b,a){return a.split(b)}\nfunction Vrb(a,b){return Mhb(a.e,b)}\nfunction Nvb(a){return uCb(a),false}\nfunction Rub(a){Kub.call(this,a,21)}\nfunction wcb(a,b){Zy.call(this,a,b)}\nfunction mxb(a,b){$r.call(this,a,b)}\nfunction Gyb(a,b){$r.call(this,a,b)}\nfunction zx(a){yx();Wn.call(this,a)}\nfunction zlb(a,b){Dlb(a,a.length,b)}\nfunction Alb(a,b){Flb(a,a.length,b)}\nfunction ABb(a,b,c){b.ud(a.a.Ge(c))}\nfunction uBb(a,b,c){b.we(a.a.Fe(c))}\nfunction GBb(a,b,c){b.td(a.a.Kb(c))}\nfunction Zq(a,b,c){a.Mb(c)&&b.td(c)}\nfunction aCb(a,b,c){a.splice(b,0,c)}\nfunction lDb(a,b){return uqb(a.e,b)}\nfunction pjb(a,b){this.d=a;this.e=b}\nfunction kqb(a,b){this.b=a;this.a=b}\nfunction VBb(a,b){this.b=a;this.a=b}\nfunction BEb(a,b){this.b=a;this.a=b}\nfunction sBb(a,b){this.a=a;this.b=b}\nfunction yBb(a,b){this.a=a;this.b=b}\nfunction EBb(a,b){this.a=a;this.b=b}\nfunction KBb(a,b){this.a=a;this.b=b}\nfunction aDb(a,b){this.a=a;this.b=b}\nfunction tMb(a,b){this.b=a;this.a=b}\nfunction oOb(a,b){this.b=a;this.a=b}\nfunction SOb(a,b){$r.call(this,a,b)}\nfunction SMb(a,b){$r.call(this,a,b)}\nfunction NEb(a,b){$r.call(this,a,b)}\nfunction VEb(a,b){$r.call(this,a,b)}\nfunction sFb(a,b){$r.call(this,a,b)}\nfunction hHb(a,b){$r.call(this,a,b)}\nfunction OHb(a,b){$r.call(this,a,b)}\nfunction FIb(a,b){$r.call(this,a,b)}\nfunction wLb(a,b){$r.call(this,a,b)}\nfunction YRb(a,b){$r.call(this,a,b)}\nfunction zTb(a,b){$r.call(this,a,b)}\nfunction rUb(a,b){$r.call(this,a,b)}\nfunction oWb(a,b){$r.call(this,a,b)}\nfunction SXb(a,b){$r.call(this,a,b)}\nfunction k0b(a,b){$r.call(this,a,b)}\nfunction z5b(a,b){$r.call(this,a,b)}\nfunction T8b(a,b){$r.call(this,a,b)}\nfunction ibc(a,b){$r.call(this,a,b)}\nfunction Cec(a,b){this.a=a;this.b=b}\nfunction rfc(a,b){this.a=a;this.b=b}\nfunction Rfc(a,b){this.a=a;this.b=b}\nfunction Tfc(a,b){this.a=a;this.b=b}\nfunction bgc(a,b){this.a=a;this.b=b}\nfunction ngc(a,b){this.a=a;this.b=b}\nfunction Qhc(a,b){this.a=a;this.b=b}\nfunction $hc(a,b){this.a=a;this.b=b}\nfunction Z0b(a,b){this.a=a;this.b=b}\nfunction ZVb(a,b){this.b=a;this.a=b}\nfunction Dfc(a,b){this.b=a;this.a=b}\nfunction dgc(a,b){this.b=a;this.a=b}\nfunction Bmc(a,b){this.b=a;this.a=b}\nfunction cWb(a,b){this.c=a;this.d=b}\nfunction I$b(a,b){this.e=a;this.d=b}\nfunction Unc(a,b){this.a=a;this.b=b}\nfunction Oic(a,b){this.b=b;this.c=a}\nfunction Bjc(a,b){$r.call(this,a,b)}\nfunction Yjc(a,b){$r.call(this,a,b)}\nfunction Gkc(a,b){$r.call(this,a,b)}\nfunction Bpc(a,b){$r.call(this,a,b)}\nfunction Jpc(a,b){$r.call(this,a,b)}\nfunction Tpc(a,b){$r.call(this,a,b)}\nfunction cqc(a,b){$r.call(this,a,b)}\nfunction oqc(a,b){$r.call(this,a,b)}\nfunction yqc(a,b){$r.call(this,a,b)}\nfunction Hqc(a,b){$r.call(this,a,b)}\nfunction Uqc(a,b){$r.call(this,a,b)}\nfunction arc(a,b){$r.call(this,a,b)}\nfunction mrc(a,b){$r.call(this,a,b)}\nfunction zrc(a,b){$r.call(this,a,b)}\nfunction Prc(a,b){$r.call(this,a,b)}\nfunction Yrc(a,b){$r.call(this,a,b)}\nfunction fsc(a,b){$r.call(this,a,b)}\nfunction nsc(a,b){$r.call(this,a,b)}\nfunction nzc(a,b){$r.call(this,a,b)}\nfunction zzc(a,b){$r.call(this,a,b)}\nfunction Kzc(a,b){$r.call(this,a,b)}\nfunction Xzc(a,b){$r.call(this,a,b)}\nfunction Dtc(a,b){$r.call(this,a,b)}\nfunction lAc(a,b){$r.call(this,a,b)}\nfunction uAc(a,b){$r.call(this,a,b)}\nfunction CAc(a,b){$r.call(this,a,b)}\nfunction LAc(a,b){$r.call(this,a,b)}\nfunction UAc(a,b){$r.call(this,a,b)}\nfunction aBc(a,b){$r.call(this,a,b)}\nfunction uBc(a,b){$r.call(this,a,b)}\nfunction DBc(a,b){$r.call(this,a,b)}\nfunction MBc(a,b){$r.call(this,a,b)}\nfunction sGc(a,b){$r.call(this,a,b)}\nfunction VIc(a,b){$r.call(this,a,b)}\nfunction EIc(a,b){this.b=a;this.a=b}\nfunction qKc(a,b){this.a=a;this.b=b}\nfunction GKc(a,b){this.a=a;this.b=b}\nfunction lLc(a,b){this.a=a;this.b=b}\nfunction mMc(a,b){this.a=a;this.b=b}\nfunction fMc(a,b){$r.call(this,a,b)}\nfunction ZLc(a,b){$r.call(this,a,b)}\nfunction ZMc(a,b){this.b=a;this.d=b}\nfunction IOc(a,b){$r.call(this,a,b)}\nfunction GQc(a,b){$r.call(this,a,b)}\nfunction PQc(a,b){this.a=a;this.b=b}\nfunction RQc(a,b){this.a=a;this.b=b}\nfunction ARc(a,b){$r.call(this,a,b)}\nfunction rSc(a,b){$r.call(this,a,b)}\nfunction TTc(a,b){$r.call(this,a,b)}\nfunction _Tc(a,b){$r.call(this,a,b)}\nfunction RUc(a,b){$r.call(this,a,b)}\nfunction uVc(a,b){$r.call(this,a,b)}\nfunction hWc(a,b){$r.call(this,a,b)}\nfunction rWc(a,b){$r.call(this,a,b)}\nfunction kXc(a,b){$r.call(this,a,b)}\nfunction uXc(a,b){$r.call(this,a,b)}\nfunction AYc(a,b){$r.call(this,a,b)}\nfunction l$c(a,b){$r.call(this,a,b)}\nfunction Z$c(a,b){$r.call(this,a,b)}\nfunction D_c(a,b){$r.call(this,a,b)}\nfunction O_c(a,b){$r.call(this,a,b)}\nfunction c1c(a,b){$r.call(this,a,b)}\nfunction cVb(a,b){return uqb(a.c,b)}\nfunction nnc(a,b){return uqb(b.b,a)}\nfunction x1c(a,b){return -a.b.Je(b)}\nfunction D3c(a,b){return uqb(a.g,b)}\nfunction O5c(a,b){$r.call(this,a,b)}\nfunction a6c(a,b){$r.call(this,a,b)}\nfunction m2c(a,b){this.a=a;this.b=b}\nfunction W2c(a,b){this.a=a;this.b=b}\nfunction f7c(a,b){this.a=a;this.b=b}\nfunction G7c(a,b){$r.call(this,a,b)}\nfunction j8c(a,b){$r.call(this,a,b)}\nfunction iad(a,b){$r.call(this,a,b)}\nfunction rad(a,b){$r.call(this,a,b)}\nfunction Bad(a,b){$r.call(this,a,b)}\nfunction Nad(a,b){$r.call(this,a,b)}\nfunction ibd(a,b){$r.call(this,a,b)}\nfunction tbd(a,b){$r.call(this,a,b)}\nfunction Ibd(a,b){$r.call(this,a,b)}\nfunction Ubd(a,b){$r.call(this,a,b)}\nfunction gcd(a,b){$r.call(this,a,b)}\nfunction scd(a,b){$r.call(this,a,b)}\nfunction Ycd(a,b){$r.call(this,a,b)}\nfunction udd(a,b){$r.call(this,a,b)}\nfunction Jdd(a,b){$r.call(this,a,b)}\nfunction Eed(a,b){$r.call(this,a,b)}\nfunction bfd(a,b){this.a=a;this.b=b}\nfunction dfd(a,b){this.a=a;this.b=b}\nfunction ffd(a,b){this.a=a;this.b=b}\nfunction Kfd(a,b){this.a=a;this.b=b}\nfunction Mfd(a,b){this.a=a;this.b=b}\nfunction Ofd(a,b){this.a=a;this.b=b}\nfunction vgd(a,b){this.a=a;this.b=b}\nfunction qgd(a,b){$r.call(this,a,b)}\nfunction jrd(a,b){this.a=a;this.b=b}\nfunction krd(a,b){this.a=a;this.b=b}\nfunction mrd(a,b){this.a=a;this.b=b}\nfunction nrd(a,b){this.a=a;this.b=b}\nfunction qrd(a,b){this.a=a;this.b=b}\nfunction rrd(a,b){this.a=a;this.b=b}\nfunction srd(a,b){this.b=a;this.a=b}\nfunction trd(a,b){this.b=a;this.a=b}\nfunction Drd(a,b){this.b=a;this.a=b}\nfunction Frd(a,b){this.b=a;this.a=b}\nfunction Hrd(a,b){this.a=a;this.b=b}\nfunction Jrd(a,b){this.a=a;this.b=b}\nfunction Ord(a,b){Xqd(a.a,BD(b,56))}\nfunction BIc(a,b){gIc(a.a,BD(b,11))}\nfunction fIc(a,b){FHc();return b!=a}\nfunction Arb(){wrb();return new vrb}\nfunction CMc(){wMc();this.b=new Tqb}\nfunction NNc(){FNc();this.a=new Tqb}\nfunction eCc(){ZBc();aCc.call(this)}\nfunction Dsd(a,b){$r.call(this,a,b)}\nfunction Urd(a,b){this.a=a;this.b=b}\nfunction Wrd(a,b){this.a=a;this.b=b}\nfunction kGd(a,b){this.a=a;this.b=b}\nfunction nGd(a,b){this.a=a;this.b=b}\nfunction bUd(a,b){this.a=a;this.b=b}\nfunction zVd(a,b){this.a=a;this.b=b}\nfunction C1d(a,b){this.d=a;this.b=b}\nfunction MLd(a,b){this.d=a;this.e=b}\nfunction Wud(a,b){this.f=a;this.c=b}\nfunction f7d(a,b){this.b=a;this.c=b}\nfunction _zd(a,b){this.i=a;this.g=b}\nfunction Y1d(a,b){this.e=a;this.a=b}\nfunction c8d(a,b){this.a=a;this.b=b}\nfunction $Id(a,b){a.i=null;_Id(a,b)}\nfunction ivd(a,b){!!a&&Rhb(cvd,a,b)}\nfunction hCd(a,b){return qAd(a.a,b)}\nfunction e7d(a){return R2d(a.c,a.b)}\nfunction Wd(a){return !a?null:a.dd()}\nfunction PD(a){return a==null?null:a}\nfunction KD(a){return typeof a===Khe}\nfunction LD(a){return typeof a===Lhe}\nfunction ND(a){return typeof a===Mhe}\nfunction Em(a,b){return a.Hd().Xb(b)}\nfunction Kq(a,b){return hr(a.Kc(),b)}\nfunction Bbb(a,b){return ybb(a,b)==0}\nfunction Ebb(a,b){return ybb(a,b)>=0}\nfunction Kbb(a,b){return ybb(a,b)!=0}\nfunction Jdb(a){return ''+(uCb(a),a)}\nfunction pfb(a,b){return a.substr(b)}\nfunction cg(a){ag(a);return a.d.gc()}\nfunction oVb(a){pVb(a,a.c);return a}\nfunction RD(a){CCb(a==null);return a}\nfunction Dfb(a,b){a.a+=''+b;return a}\nfunction Efb(a,b){a.a+=''+b;return a}\nfunction Nfb(a,b){a.a+=''+b;return a}\nfunction Pfb(a,b){a.a+=''+b;return a}\nfunction Qfb(a,b){a.a+=''+b;return a}\nfunction Mfb(a,b){return a.a+=''+b,a}\nfunction Esb(a,b){Gsb(a,b,a.a,a.a.a)}\nfunction Fsb(a,b){Gsb(a,b,a.c.b,a.c)}\nfunction Mqd(a,b,c){Rpd(b,kqd(a,c))}\nfunction Nqd(a,b,c){Rpd(b,kqd(a,c))}\nfunction Dhe(a,b){Hhe(new Fyd(a),b)}\nfunction cB(a,b){a.q.setTime(Sbb(b))}\nfunction fvb(a,b){bvb.call(this,a,b)}\nfunction jvb(a,b){bvb.call(this,a,b)}\nfunction nvb(a,b){bvb.call(this,a,b)}\nfunction Nqb(a){Uhb(this);Ld(this,a)}\nfunction wmb(a){tCb(a,0);return null}\nfunction X6c(a){a.a=0;a.b=0;return a}\nfunction f3c(a,b){a.a=b.g+1;return a}\nfunction PJc(a,b){return a.j[b.p]==2}\nfunction _Pb(a){return VPb(BD(a,79))}\nfunction yJb(){yJb=ccb;xJb=as(wJb())}\nfunction Y8b(){Y8b=ccb;X8b=as(W8b())}\nfunction mt(){this.b=new Mqb(Cv(12))}\nfunction Otb(){this.b=0;this.a=false}\nfunction Wtb(){this.b=0;this.a=false}\nfunction sl(a){this.a=a;ol.call(this)}\nfunction vl(a){this.a=a;ol.call(this)}\nfunction Nsd(a,b){Msd.call(this,a,b)}\nfunction $zd(a,b){Cyd.call(this,a,b)}\nfunction nNd(a,b){_zd.call(this,a,b)}\nfunction s4d(a,b){p4d.call(this,a,b)}\nfunction w4d(a,b){qRd.call(this,a,b)}\nfunction rEd(a,b){pEd();Rhb(oEd,a,b)}\nfunction lcb(a,b){return qfb(a.a,0,b)}\nfunction ww(a,b){return a.a.a.a.cc(b)}\nfunction mb(a,b){return PD(a)===PD(b)}\nfunction Mdb(a,b){return Kdb(a.a,b.a)}\nfunction $db(a,b){return beb(a.a,b.a)}\nfunction seb(a,b){return ueb(a.a,b.a)}\nfunction hfb(a,b){return a.indexOf(b)}\nfunction Ny(a,b){return a==b?0:a?1:-1}\nfunction kB(a){return a<10?'0'+a:''+a}\nfunction Mq(a){return Qb(a),new sl(a)}\nfunction SC(a){return TC(a.l,a.m,a.h)}\nfunction Hdb(a){return QD((uCb(a),a))}\nfunction Idb(a){return QD((uCb(a),a))}\nfunction NIb(a,b){return beb(a.g,b.g)}\nfunction Fbb(a){return typeof a===Lhe}\nfunction mWb(a){return a==hWb||a==kWb}\nfunction nWb(a){return a==hWb||a==iWb}\nfunction G1b(a){return Jkb(a.b.b,a,0)}\nfunction lrb(a){this.a=Arb();this.b=a}\nfunction Frb(a){this.a=Arb();this.b=a}\nfunction swb(a,b){Ekb(a.a,b);return b}\nfunction Z1c(a,b){Ekb(a.c,b);return a}\nfunction E2c(a,b){d3c(a.a,b);return a}\nfunction _gc(a,b){Hgc();return b.a+=a}\nfunction bhc(a,b){Hgc();return b.a+=a}\nfunction ahc(a,b){Hgc();return b.c+=a}\nfunction Nlb(a,b){Klb(a,0,a.length,b)}\nfunction zsb(){Wqb.call(this,new $rb)}\nfunction I_b(){B_b.call(this,0,0,0,0)}\nfunction I6c(){J6c.call(this,0,0,0,0)}\nfunction g7c(a){this.a=a.a;this.b=a.b}\nfunction fad(a){return a==aad||a==bad}\nfunction gad(a){return a==dad||a==_9c}\nfunction Jzc(a){return a==Fzc||a==Ezc}\nfunction fcd(a){return a!=bcd&&a!=ccd}\nfunction oid(a){return a.Lg()&&a.Mg()}\nfunction Gfd(a){return Kkd(BD(a,118))}\nfunction k3c(a){return d3c(new j3c,a)}\nfunction y2d(a,b){return new p4d(b,a)}\nfunction z2d(a,b){return new p4d(b,a)}\nfunction ukd(a,b,c){vkd(a,b);wkd(a,c)}\nfunction _kd(a,b,c){cld(a,b);ald(a,c)}\nfunction bld(a,b,c){dld(a,b);eld(a,c)}\nfunction gmd(a,b,c){hmd(a,b);imd(a,c)}\nfunction nmd(a,b,c){omd(a,b);pmd(a,c)}\nfunction iKd(a,b){$Jd(a,b);_Jd(a,a.D)}\nfunction _ud(a){Wud.call(this,a,true)}\nfunction Xg(a,b,c){Vg.call(this,a,b,c)}\nfunction Ygb(a){Hgb();Zgb.call(this,a)}\nfunction rxb(){mxb.call(this,'Head',1)}\nfunction wxb(){mxb.call(this,'Tail',3)}\nfunction Ckb(a){a.c=KC(SI,Uhe,1,0,5,1)}\nfunction Vjb(a){a.a=KC(SI,Uhe,1,8,5,1)}\nfunction MGb(a){Hkb(a.xf(),new QGb(a))}\nfunction xtb(a){return a!=null?tb(a):0}\nfunction b2b(a,b){return ntd(b,mpd(a))}\nfunction c2b(a,b){return ntd(b,mpd(a))}\nfunction dAb(a,b){return a[a.length]=b}\nfunction gAb(a,b){return a[a.length]=b}\nfunction Vq(a){return lr(a.b.Kc(),a.a)}\nfunction dqd(a,b){return _o(qo(a.d),b)}\nfunction eqd(a,b){return _o(qo(a.g),b)}\nfunction fqd(a,b){return _o(qo(a.j),b)}\nfunction Osd(a,b){Msd.call(this,a.b,b)}\nfunction q0b(a){B_b.call(this,a,a,a,a)}\nfunction HOb(a){a.b&&LOb(a);return a.a}\nfunction IOb(a){a.b&&LOb(a);return a.c}\nfunction uyb(a,b){if(lyb){return}a.b=b}\nfunction lzd(a,b,c){NC(a,b,c);return c}\nfunction mBc(a,b,c){NC(a.c[b.g],b.g,c)}\nfunction _Hd(a,b,c){BD(a.c,69).Xh(b,c)}\nfunction wfd(a,b,c){bld(c,c.i+a,c.j+b)}\nfunction UOd(a,b){wtd(VKd(a.a),XOd(b))}\nfunction bTd(a,b){wtd(QSd(a.a),eTd(b))}\nfunction Lge(a){wfe();xfe.call(this,a)}\nfunction CAd(a){return a==null?0:tb(a)}\nfunction fNc(){fNc=ccb;eNc=new Rpb(v1)}\nfunction h0d(){h0d=ccb;new i0d;new Rkb}\nfunction i0d(){new Lqb;new Lqb;new Lqb}\nfunction GA(){GA=ccb;fA();FA=new Lqb}\nfunction Iy(){Iy=ccb;$wnd.Math.log(2)}\nfunction UVd(){UVd=ccb;TVd=(AFd(),zFd)}\nfunction _ge(){throw vbb(new cgb(Cxe))}\nfunction ohe(){throw vbb(new cgb(Cxe))}\nfunction che(){throw vbb(new cgb(Dxe))}\nfunction rhe(){throw vbb(new cgb(Dxe))}\nfunction Mg(a){this.a=a;Gg.call(this,a)}\nfunction up(a){this.a=a;rf.call(this,a)}\nfunction Bp(a){this.a=a;rf.call(this,a)}\nfunction Okb(a,b){Mlb(a.c,a.c.length,b)}\nfunction llb(a){return a.ab?1:0}\nfunction Deb(a,b){return ybb(a,b)>0?a:b}\nfunction TC(a,b,c){return {l:a,m:b,h:c}}\nfunction Ctb(a,b){a.a!=null&&BIc(b,a.a)}\nfunction Csb(a){a.a=new jtb;a.c=new jtb}\nfunction hDb(a){this.b=a;this.a=new Rkb}\nfunction dOb(a){this.b=new pOb;this.a=a}\nfunction q_b(a){n_b.call(this);this.a=a}\nfunction txb(){mxb.call(this,'Range',2)}\nfunction bUb(){ZTb();this.a=new L2c(zP)}\nfunction Bh(a,b){Qb(b);Ah(a).Jc(new Vw)}\nfunction fKc(a,b){FJc();return b.n.b+=a}\nfunction Tgc(a,b,c){return Rhb(a.g,c,b)}\nfunction LJc(a,b,c){return Rhb(a.k,c,b)}\nfunction r1c(a,b){return Rhb(a.a,b.a,b)}\nfunction jBc(a,b,c){return hBc(b,c,a.c)}\nfunction E6c(a){return new f7c(a.c,a.d)}\nfunction F6c(a){return new f7c(a.c,a.d)}\nfunction R6c(a){return new f7c(a.a,a.b)}\nfunction CQd(a,b){return hA(a.a,b,null)}\nfunction fec(a){QZb(a,null);RZb(a,null)}\nfunction AOc(a){BOc(a,null);COc(a,null)}\nfunction u4d(){qRd.call(this,null,null)}\nfunction y4d(){RRd.call(this,null,null)}\nfunction a7d(a){this.a=a;Lqb.call(this)}\nfunction Pp(a){this.b=(mmb(),new iob(a))}\nfunction Py(a){a.j=KC(VI,nie,310,0,0,1)}\nfunction oAd(a,b,c){a.c.Vc(b,BD(c,133))}\nfunction GAd(a,b,c){a.c.ji(b,BD(c,133))}\nfunction JLd(a,b){Uxd(a);a.Gc(BD(b,15))}\nfunction b7d(a,b){return t2d(a.c,a.b,b)}\nfunction Bv(a,b){return new Qv(a.Kc(),b)}\nfunction Lq(a,b){return rr(a.Kc(),b)!=-1}\nfunction Sqb(a,b){return a.a.Bc(b)!=null}\nfunction pr(a){return a.Ob()?a.Pb():null}\nfunction yfb(a){return zfb(a,0,a.length)}\nfunction JD(a,b){return a!=null&&AD(a,b)}\nfunction $A(a,b){a.q.setHours(b);YA(a,b)}\nfunction Yrb(a,b){if(a.c){jsb(b);isb(b)}}\nfunction nk(a,b,c){BD(a.Kb(c),164).Nb(b)}\nfunction RJc(a,b,c){SJc(a,b,c);return c}\nfunction Eub(a,b,c){a.a=b^1502;a.b=c^kke}\nfunction xHb(a,b,c){return a.a[b.g][c.g]}\nfunction REc(a,b){return a.a[b.c.p][b.p]}\nfunction aEc(a,b){return a.e[b.c.p][b.p]}\nfunction tEc(a,b){return a.c[b.c.p][b.p]}\nfunction OJc(a,b){return a.j[b.p]=aKc(b)}\nfunction k5c(a,b){return cfb(a.f,b.tg())}\nfunction Isd(a,b){return cfb(a.b,b.tg())}\nfunction Sfd(a,b){return a.a0?b*b/a:b*b*100}\nfunction CRb(a,b){return a>0?b/(a*a):b*100}\nfunction G2c(a,b,c){return Ekb(b,I2c(a,c))}\nfunction t3c(a,b,c){p3c();a.Xe(b)&&c.td(a)}\nfunction St(a,b,c){var d;d=a.Zc(b);d.Rb(c)}\nfunction O6c(a,b,c){a.a+=b;a.b+=c;return a}\nfunction Z6c(a,b,c){a.a*=b;a.b*=c;return a}\nfunction b7c(a,b,c){a.a-=b;a.b-=c;return a}\nfunction a7c(a,b){a.a=b.a;a.b=b.b;return a}\nfunction V6c(a){a.a=-a.a;a.b=-a.b;return a}\nfunction Dic(a){this.c=a;this.a=1;this.b=1}\nfunction xed(a){this.c=a;dld(a,0);eld(a,0)}\nfunction u7c(a){Psb.call(this);n7c(this,a)}\nfunction AXb(a){xXb();yXb(this);this.mf(a)}\nfunction GRd(a,b){nRd();qRd.call(this,a,b)}\nfunction dSd(a,b){LRd();RRd.call(this,a,b)}\nfunction hSd(a,b){LRd();RRd.call(this,a,b)}\nfunction fSd(a,b){LRd();dSd.call(this,a,b)}\nfunction sId(a,b,c){dId.call(this,a,b,c,2)}\nfunction zXd(a,b){UVd();nXd.call(this,a,b)}\nfunction BXd(a,b){UVd();zXd.call(this,a,b)}\nfunction DXd(a,b){UVd();zXd.call(this,a,b)}\nfunction FXd(a,b){UVd();DXd.call(this,a,b)}\nfunction PXd(a,b){UVd();nXd.call(this,a,b)}\nfunction RXd(a,b){UVd();PXd.call(this,a,b)}\nfunction XXd(a,b){UVd();nXd.call(this,a,b)}\nfunction pAd(a,b){return a.c.Fc(BD(b,133))}\nfunction w1d(a,b,c){return V1d(p1d(a,b),c)}\nfunction N2d(a,b,c){return b.Qk(a.e,a.c,c)}\nfunction P2d(a,b,c){return b.Rk(a.e,a.c,c)}\nfunction a3d(a,b){return xid(a.e,BD(b,49))}\nfunction aTd(a,b,c){vtd(QSd(a.a),b,eTd(c))}\nfunction TOd(a,b,c){vtd(VKd(a.a),b,XOd(c))}\nfunction ypb(a,b){b.$modCount=a.$modCount}\nfunction MUc(){MUc=ccb;LUc=new Lsd('root')}\nfunction LCd(){LCd=ccb;KCd=new lDd;new NDd}\nfunction KVc(){this.a=new Hp;this.b=new Hp}\nfunction FUd(){hJd.call(this);this.Bb|=Tje}\nfunction t_c(){$r.call(this,'GROW_TREE',0)}\nfunction C9d(a){return a==null?null:cde(a)}\nfunction G9d(a){return a==null?null:jde(a)}\nfunction J9d(a){return a==null?null:fcb(a)}\nfunction K9d(a){return a==null?null:fcb(a)}\nfunction fdb(a){if(a.o!=null){return}vdb(a)}\nfunction DD(a){CCb(a==null||KD(a));return a}\nfunction ED(a){CCb(a==null||LD(a));return a}\nfunction GD(a){CCb(a==null||ND(a));return a}\nfunction gB(a){this.q=new $wnd.Date(Sbb(a))}\nfunction Mf(a,b){this.c=a;ne.call(this,a,b)}\nfunction Sf(a,b){this.a=a;Mf.call(this,a,b)}\nfunction Hg(a,b){this.d=a;Dg(this);this.b=b}\nfunction bAb(a,b){Vzb.call(this,a);this.a=b}\nfunction vAb(a,b){Vzb.call(this,a);this.a=b}\nfunction sNb(a){pNb.call(this,0,0);this.f=a}\nfunction Vg(a,b,c){dg.call(this,a,b,c,null)}\nfunction Yg(a,b,c){dg.call(this,a,b,c,null)}\nfunction Pxb(a,b,c){return a.ue(b,c)<=0?c:b}\nfunction Qxb(a,b,c){return a.ue(b,c)<=0?b:c}\nfunction g4c(a,b){return BD(Wrb(a.b,b),149)}\nfunction i4c(a,b){return BD(Wrb(a.c,b),229)}\nfunction wic(a){return BD(Ikb(a.a,a.b),287)}\nfunction B6c(a){return new f7c(a.c,a.d+a.a)}\nfunction eLc(a){return FJc(),Jzc(BD(a,197))}\nfunction $Jb(){$Jb=ccb;ZJb=pqb((tdd(),sdd))}\nfunction fOb(a,b){b.a?gOb(a,b):Fxb(a.a,b.b)}\nfunction qyb(a,b){if(lyb){return}Ekb(a.a,b)}\nfunction F2b(a,b){x2b();return f_b(b.d.i,a)}\nfunction _9b(a,b){I9b();return new gac(b,a)}\nfunction _Hb(a,b){ytb(b,lle);a.f=b;return a}\nfunction Kld(a,b,c){c=_hd(a,b,3,c);return c}\nfunction bmd(a,b,c){c=_hd(a,b,6,c);return c}\nfunction kpd(a,b,c){c=_hd(a,b,9,c);return c}\nfunction Cvd(a,b,c){++a.j;a.Ki();Atd(a,b,c)}\nfunction Avd(a,b,c){++a.j;a.Hi(b,a.oi(b,c))}\nfunction bRd(a,b,c){var d;d=a.Zc(b);d.Rb(c)}\nfunction c7d(a,b,c){return C2d(a.c,a.b,b,c)}\nfunction DAd(a,b){return (b&Ohe)%a.d.length}\nfunction Msd(a,b){Lsd.call(this,a);this.a=b}\nfunction uVd(a,b){lVd.call(this,a);this.a=b}\nfunction sYd(a,b){lVd.call(this,a);this.a=b}\nfunction zyd(a,b){this.c=a;zud.call(this,b)}\nfunction YOd(a,b){this.a=a;qOd.call(this,b)}\nfunction fTd(a,b){this.a=a;qOd.call(this,b)}\nfunction Xp(a){this.a=(Xj(a,Jie),new Skb(a))}\nfunction cq(a){this.a=(Xj(a,Jie),new Skb(a))}\nfunction LA(a){!a.a&&(a.a=new VA);return a.a}\nfunction XMb(a){if(a>8){return 0}return a+1}\nfunction Ecb(a,b){Bcb();return a==b?0:a?1:-1}\nfunction Opb(a,b,c){return Npb(a,BD(b,22),c)}\nfunction Bz(a,b,c){return a.apply(b,c);var d}\nfunction Sfb(a,b,c){a.a+=zfb(b,0,c);return a}\nfunction ijb(a,b){var c;c=a.e;a.e=b;return c}\nfunction trb(a,b){var c;c=a[hke];c.call(a,b)}\nfunction urb(a,b){var c;c=a[hke];c.call(a,b)}\nfunction Aib(a,b){a.a.Vc(a.b,b);++a.b;a.c=-1}\nfunction Urb(a){Uhb(a.e);a.d.b=a.d;a.d.a=a.d}\nfunction _f(a){a.b?_f(a.b):a.f.c.zc(a.e,a.d)}\nfunction _Ab(a,b,c){EAb();MBb(a,b.Ce(a.a,c))}\nfunction Bxb(a,b){return Vd(Cwb(a.a,b,true))}\nfunction Cxb(a,b){return Vd(Dwb(a.a,b,true))}\nfunction _Bb(a,b){return eCb(new Array(b),a)}\nfunction HD(a){return String.fromCharCode(a)}\nfunction mz(a){return a==null?null:a.message}\nfunction gRb(){this.a=new Rkb;this.b=new Rkb}\nfunction iTb(){this.a=new MQb;this.b=new tTb}\nfunction tDb(){this.b=new d7c;this.c=new Rkb}\nfunction _Qb(){this.d=new d7c;this.e=new d7c}\nfunction n_b(){this.n=new d7c;this.o=new d7c}\nfunction $Gb(){this.n=new p0b;this.i=new I6c}\nfunction sec(){this.a=new Umc;this.b=new mnc}\nfunction NIc(){this.a=new Rkb;this.d=new Rkb}\nfunction LDc(){this.b=new Tqb;this.a=new Tqb}\nfunction hSc(){this.b=new Lqb;this.a=new Lqb}\nfunction HRc(){this.b=new tRc;this.a=new hRc}\nfunction aHb(){$Gb.call(this);this.a=new d7c}\nfunction Ywb(a){Zwb.call(this,a,(lxb(),hxb))}\nfunction J_b(a,b,c,d){B_b.call(this,a,b,c,d)}\nfunction sqd(a,b,c){c!=null&&kmd(b,Wqd(a,c))}\nfunction tqd(a,b,c){c!=null&&lmd(b,Wqd(a,c))}\nfunction Tod(a,b,c){c=_hd(a,b,11,c);return c}\nfunction P6c(a,b){a.a+=b.a;a.b+=b.b;return a}\nfunction c7c(a,b){a.a-=b.a;a.b-=b.b;return a}\nfunction u7b(a,b){return a.n.a=(uCb(b),b)+10}\nfunction v7b(a,b){return a.n.a=(uCb(b),b)+10}\nfunction dLd(a,b){return b==a||pud(UKd(b),a)}\nfunction PYd(a,b){return Rhb(a.a,b,'')==null}\nfunction E2b(a,b){x2b();return !f_b(b.d.i,a)}\nfunction rjc(a,b){fad(a.f)?sjc(a,b):tjc(a,b)}\nfunction h1d(a,b){var c;c=b.Hh(a.a);return c}\nfunction Cyd(a,b){qcb.call(this,gve+a+mue+b)}\nfunction gUd(a,b,c,d){cUd.call(this,a,b,c,d)}\nfunction Q4d(a,b,c,d){cUd.call(this,a,b,c,d)}\nfunction U4d(a,b,c,d){Q4d.call(this,a,b,c,d)}\nfunction n5d(a,b,c,d){i5d.call(this,a,b,c,d)}\nfunction p5d(a,b,c,d){i5d.call(this,a,b,c,d)}\nfunction v5d(a,b,c,d){i5d.call(this,a,b,c,d)}\nfunction t5d(a,b,c,d){p5d.call(this,a,b,c,d)}\nfunction A5d(a,b,c,d){p5d.call(this,a,b,c,d)}\nfunction y5d(a,b,c,d){v5d.call(this,a,b,c,d)}\nfunction D5d(a,b,c,d){A5d.call(this,a,b,c,d)}\nfunction d6d(a,b,c,d){Y5d.call(this,a,b,c,d)}\nfunction Vp(a,b,c){this.a=a;qc.call(this,b,c)}\nfunction tk(a,b,c){this.c=b;this.b=c;this.a=a}\nfunction ik(a,b,c){return a.d=BD(b.Kb(c),164)}\nfunction j6d(a,b){return a.Aj().Nh().Kh(a,b)}\nfunction h6d(a,b){return a.Aj().Nh().Ih(a,b)}\nfunction Fdb(a,b){return uCb(a),PD(a)===PD(b)}\nfunction dfb(a,b){return uCb(a),PD(a)===PD(b)}\nfunction Dxb(a,b){return Vd(Cwb(a.a,b,false))}\nfunction Exb(a,b){return Vd(Dwb(a.a,b,false))}\nfunction vBb(a,b){return a.b.sd(new yBb(a,b))}\nfunction BBb(a,b){return a.b.sd(new EBb(a,b))}\nfunction HBb(a,b){return a.b.sd(new KBb(a,b))}\nfunction lfb(a,b,c){return a.lastIndexOf(b,c)}\nfunction uTb(a,b,c){return Kdb(a[b.b],a[c.b])}\nfunction RTb(a,b){return yNb(b,(Nyc(),Cwc),a)}\nfunction fmc(a,b){return beb(b.a.d.p,a.a.d.p)}\nfunction emc(a,b){return beb(a.a.d.p,b.a.d.p)}\nfunction _Oc(a,b){return Kdb(a.c-a.s,b.c-b.s)}\nfunction S_b(a){return !a.c?-1:Jkb(a.c.a,a,0)}\nfunction Vxd(a){return a<100?null:new Ixd(a)}\nfunction ecd(a){return a==Zbd||a==_bd||a==$bd}\nfunction zAd(a,b){return JD(b,15)&&Btd(a.c,b)}\nfunction vyb(a,b){if(lyb){return}!!b&&(a.d=b)}\nfunction ujb(a,b){var c;c=b;return !!Awb(a,c)}\nfunction czd(a,b){this.c=a;Pyd.call(this,a,b)}\nfunction fBb(a){this.c=a;nvb.call(this,rie,0)}\nfunction Avb(a,b){Bvb.call(this,a,a.length,b)}\nfunction aId(a,b,c){return BD(a.c,69).lk(b,c)}\nfunction bId(a,b,c){return BD(a.c,69).mk(b,c)}\nfunction O2d(a,b,c){return N2d(a,BD(b,332),c)}\nfunction Q2d(a,b,c){return P2d(a,BD(b,332),c)}\nfunction i3d(a,b,c){return h3d(a,BD(b,332),c)}\nfunction k3d(a,b,c){return j3d(a,BD(b,332),c)}\nfunction tn(a,b){return b==null?null:Hv(a.b,b)}\nfunction Kcb(a){return LD(a)?(uCb(a),a):a.ke()}\nfunction Ldb(a){return !isNaN(a)&&!isFinite(a)}\nfunction Wn(a){Ql();this.a=(mmb(),new zob(a))}\nfunction dIc(a){FHc();this.d=a;this.a=new jkb}\nfunction xqb(a,b,c){this.a=a;this.b=b;this.c=c}\nfunction Nrb(a,b,c){this.a=a;this.b=b;this.c=c}\nfunction $sb(a,b,c){this.d=a;this.b=c;this.a=b}\nfunction Qsb(a){Csb(this);Osb(this);ye(this,a)}\nfunction Tkb(a){Ckb(this);bCb(this.c,0,a.Pc())}\nfunction Xwb(a){uib(a.a);Kwb(a.c,a.b);a.b=null}\nfunction iyb(a){this.a=a;Zfb();Cbb(Date.now())}\nfunction JCb(){JCb=ccb;GCb=new nb;ICb=new nb}\nfunction ntb(){ntb=ccb;ltb=new otb;mtb=new qtb}\nfunction kzd(){kzd=ccb;jzd=KC(SI,Uhe,1,0,5,1)}\nfunction tGd(){tGd=ccb;sGd=KC(SI,Uhe,1,0,5,1)}\nfunction $Gd(){$Gd=ccb;ZGd=KC(SI,Uhe,1,0,5,1)}\nfunction Ql(){Ql=ccb;new Zl((mmb(),mmb(),jmb))}\nfunction pxb(a){lxb();return es((zxb(),yxb),a)}\nfunction Hyb(a){Fyb();return es((Kyb(),Jyb),a)}\nfunction OEb(a){MEb();return es((REb(),QEb),a)}\nfunction WEb(a){UEb();return es((ZEb(),YEb),a)}\nfunction tFb(a){rFb();return es((wFb(),vFb),a)}\nfunction iHb(a){gHb();return es((lHb(),kHb),a)}\nfunction PHb(a){NHb();return es((SHb(),RHb),a)}\nfunction GIb(a){EIb();return es((JIb(),IIb),a)}\nfunction vJb(a){qJb();return es((yJb(),xJb),a)}\nfunction xLb(a){vLb();return es((ALb(),zLb),a)}\nfunction TMb(a){RMb();return es((WMb(),VMb),a)}\nfunction TOb(a){ROb();return es((WOb(),VOb),a)}\nfunction ePb(a){cPb();return es((hPb(),gPb),a)}\nfunction ZRb(a){XRb();return es((aSb(),_Rb),a)}\nfunction ATb(a){yTb();return es((DTb(),CTb),a)}\nfunction sUb(a){qUb();return es((vUb(),uUb),a)}\nfunction rWb(a){lWb();return es((uWb(),tWb),a)}\nfunction TXb(a){RXb();return es((WXb(),VXb),a)}\nfunction Mb(a,b){if(!a){throw vbb(new Wdb(b))}}\nfunction l0b(a){j0b();return es((o0b(),n0b),a)}\nfunction r0b(a){B_b.call(this,a.d,a.c,a.a,a.b)}\nfunction K_b(a){B_b.call(this,a.d,a.c,a.a,a.b)}\nfunction mKb(a,b,c){this.b=a;this.c=b;this.a=c}\nfunction BZb(a,b,c){this.b=a;this.a=b;this.c=c}\nfunction TNb(a,b,c){this.a=a;this.b=b;this.c=c}\nfunction uOb(a,b,c){this.a=a;this.b=b;this.c=c}\nfunction S3b(a,b,c){this.a=a;this.b=b;this.c=c}\nfunction Z6b(a,b,c){this.a=a;this.b=b;this.c=c}\nfunction n9b(a,b,c){this.b=a;this.a=b;this.c=c}\nfunction x$b(a,b,c){this.e=b;this.b=a;this.d=c}\nfunction $Ab(a,b,c){EAb();a.a.Od(b,c);return b}\nfunction LGb(a){var b;b=new KGb;b.e=a;return b}\nfunction iLb(a){var b;b=new fLb;b.b=a;return b}\nfunction D6b(){D6b=ccb;B6b=new M6b;C6b=new P6b}\nfunction Hgc(){Hgc=ccb;Fgc=new ghc;Ggc=new ihc}\nfunction jbc(a){gbc();return es((mbc(),lbc),a)}\nfunction Cjc(a){Ajc();return es((Fjc(),Ejc),a)}\nfunction Clc(a){Alc();return es((Flc(),Elc),a)}\nfunction Cpc(a){Apc();return es((Fpc(),Epc),a)}\nfunction Kpc(a){Ipc();return es((Npc(),Mpc),a)}\nfunction Wpc(a){Rpc();return es((Zpc(),Ypc),a)}\nfunction $jc(a){Xjc();return es((bkc(),akc),a)}\nfunction Hkc(a){Fkc();return es((Kkc(),Jkc),a)}\nfunction dqc(a){bqc();return es((gqc(),fqc),a)}\nfunction rqc(a){mqc();return es((uqc(),tqc),a)}\nfunction zqc(a){xqc();return es((Cqc(),Bqc),a)}\nfunction Iqc(a){Gqc();return es((Lqc(),Kqc),a)}\nfunction Vqc(a){Sqc();return es((Yqc(),Xqc),a)}\nfunction brc(a){_qc();return es((erc(),drc),a)}\nfunction nrc(a){lrc();return es((qrc(),prc),a)}\nfunction Arc(a){yrc();return es((Drc(),Crc),a)}\nfunction Qrc(a){Orc();return es((Trc(),Src),a)}\nfunction Zrc(a){Xrc();return es((asc(),_rc),a)}\nfunction gsc(a){esc();return es((jsc(),isc),a)}\nfunction osc(a){msc();return es((rsc(),qsc),a)}\nfunction Etc(a){Ctc();return es((Htc(),Gtc),a)}\nfunction qzc(a){lzc();return es((tzc(),szc),a)}\nfunction Azc(a){xzc();return es((Dzc(),Czc),a)}\nfunction Mzc(a){Izc();return es((Pzc(),Ozc),a)}\nfunction MAc(a){KAc();return es((PAc(),OAc),a)}\nfunction mAc(a){kAc();return es((pAc(),oAc),a)}\nfunction vAc(a){tAc();return es((yAc(),xAc),a)}\nfunction DAc(a){BAc();return es((GAc(),FAc),a)}\nfunction VAc(a){TAc();return es((YAc(),XAc),a)}\nfunction $zc(a){Vzc();return es((bAc(),aAc),a)}\nfunction bBc(a){_Ac();return es((eBc(),dBc),a)}\nfunction vBc(a){tBc();return es((yBc(),xBc),a)}\nfunction EBc(a){CBc();return es((HBc(),GBc),a)}\nfunction NBc(a){LBc();return es((QBc(),PBc),a)}\nfunction tGc(a){rGc();return es((wGc(),vGc),a)}\nfunction WIc(a){UIc();return es((ZIc(),YIc),a)}\nfunction $Lc(a){YLc();return es((bMc(),aMc),a)}\nfunction gMc(a){eMc();return es((jMc(),iMc),a)}\nfunction JOc(a){HOc();return es((MOc(),LOc),a)}\nfunction HQc(a){FQc();return es((KQc(),JQc),a)}\nfunction DRc(a){yRc();return es((GRc(),FRc),a)}\nfunction tSc(a){qSc();return es((wSc(),vSc),a)}\nfunction UTc(a){STc();return es((XTc(),WTc),a)}\nfunction UUc(a){PUc();return es((XUc(),WUc),a)}\nfunction aUc(a){$Tc();return es((dUc(),cUc),a)}\nfunction wVc(a){tVc();return es((zVc(),yVc),a)}\nfunction iWc(a){fWc();return es((lWc(),kWc),a)}\nfunction sWc(a){pWc();return es((vWc(),uWc),a)}\nfunction lXc(a){iXc();return es((oXc(),nXc),a)}\nfunction vXc(a){sXc();return es((yXc(),xXc),a)}\nfunction BYc(a){zYc();return es((EYc(),DYc),a)}\nfunction m$c(a){k$c();return es((p$c(),o$c),a)}\nfunction $$c(a){Y$c();return es((b_c(),a_c),a)}\nfunction n_c(a){i_c();return es((q_c(),p_c),a)}\nfunction w_c(a){s_c();return es((z_c(),y_c),a)}\nfunction E_c(a){C_c();return es((H_c(),G_c),a)}\nfunction P_c(a){N_c();return es((S_c(),R_c),a)}\nfunction W0c(a){R0c();return es((Z0c(),Y0c),a)}\nfunction f1c(a){a1c();return es((i1c(),h1c),a)}\nfunction P5c(a){N5c();return es((S5c(),R5c),a)}\nfunction b6c(a){_5c();return es((e6c(),d6c),a)}\nfunction H7c(a){F7c();return es((K7c(),J7c),a)}\nfunction k8c(a){i8c();return es((n8c(),m8c),a)}\nfunction V8b(a){S8b();return es((Y8b(),X8b),a)}\nfunction A5b(a){y5b();return es((D5b(),C5b),a)}\nfunction jad(a){ead();return es((mad(),lad),a)}\nfunction sad(a){qad();return es((vad(),uad),a)}\nfunction Cad(a){Aad();return es((Fad(),Ead),a)}\nfunction Oad(a){Mad();return es((Rad(),Qad),a)}\nfunction jbd(a){hbd();return es((mbd(),lbd),a)}\nfunction ubd(a){rbd();return es((xbd(),wbd),a)}\nfunction Kbd(a){Hbd();return es((Nbd(),Mbd),a)}\nfunction Vbd(a){Tbd();return es((Ybd(),Xbd),a)}\nfunction hcd(a){dcd();return es((kcd(),jcd),a)}\nfunction vcd(a){rcd();return es((ycd(),xcd),a)}\nfunction vdd(a){tdd();return es((ydd(),xdd),a)}\nfunction Kdd(a){Idd();return es((Ndd(),Mdd),a)}\nfunction $cd(a){Ucd();return es((cdd(),bdd),a)}\nfunction Fed(a){Ded();return es((Ied(),Hed),a)}\nfunction rgd(a){pgd();return es((ugd(),tgd),a)}\nfunction Esd(a){Csd();return es((Hsd(),Gsd),a)}\nfunction Yoc(a,b){return (uCb(a),a)+(uCb(b),b)}\nfunction NNd(a,b){Zfb();return wtd(ZKd(a.a),b)}\nfunction SNd(a,b){Zfb();return wtd(ZKd(a.a),b)}\nfunction bPc(a,b){this.c=a;this.a=b;this.b=b-a}\nfunction nYc(a,b,c){this.a=a;this.b=b;this.c=c}\nfunction L1c(a,b,c){this.a=a;this.b=b;this.c=c}\nfunction T1c(a,b,c){this.a=a;this.b=b;this.c=c}\nfunction Rrd(a,b,c){this.a=a;this.b=b;this.c=c}\nfunction zCd(a,b,c){this.a=a;this.b=b;this.c=c}\nfunction IVd(a,b,c){this.e=a;this.a=b;this.c=c}\nfunction kWd(a,b,c){UVd();cWd.call(this,a,b,c)}\nfunction HXd(a,b,c){UVd();oXd.call(this,a,b,c)}\nfunction TXd(a,b,c){UVd();oXd.call(this,a,b,c)}\nfunction ZXd(a,b,c){UVd();oXd.call(this,a,b,c)}\nfunction JXd(a,b,c){UVd();HXd.call(this,a,b,c)}\nfunction LXd(a,b,c){UVd();HXd.call(this,a,b,c)}\nfunction NXd(a,b,c){UVd();LXd.call(this,a,b,c)}\nfunction VXd(a,b,c){UVd();TXd.call(this,a,b,c)}\nfunction _Xd(a,b,c){UVd();ZXd.call(this,a,b,c)}\nfunction $j(a,b){Qb(a);Qb(b);return new _j(a,b)}\nfunction Nq(a,b){Qb(a);Qb(b);return new Wq(a,b)}\nfunction Rq(a,b){Qb(a);Qb(b);return new ar(a,b)}\nfunction lr(a,b){Qb(a);Qb(b);return new zr(a,b)}\nfunction BD(a,b){CCb(a==null||AD(a,b));return a}\nfunction Nu(a){var b;b=new Rkb;fr(b,a);return b}\nfunction Ex(a){var b;b=new Tqb;fr(b,a);return b}\nfunction Hx(a){var b;b=new Gxb;Jq(b,a);return b}\nfunction Ru(a){var b;b=new Psb;Jq(b,a);return b}\nfunction YEc(a){!a.e&&(a.e=new Rkb);return a.e}\nfunction SMd(a){!a.c&&(a.c=new xYd);return a.c}\nfunction Ekb(a,b){a.c[a.c.length]=b;return true}\nfunction WA(a,b){this.c=a;this.b=b;this.a=false}\nfunction Gg(a){this.d=a;Dg(this);this.b=ed(a.d)}\nfunction pzb(){this.a=';,;';this.b='';this.c=''}\nfunction Bvb(a,b,c){qvb.call(this,b,c);this.a=a}\nfunction fAb(a,b,c){this.b=a;fvb.call(this,b,c)}\nfunction lsb(a,b,c){this.c=a;pjb.call(this,b,c)}\nfunction bCb(a,b,c){$Bb(c,0,a,b,c.length,false)}\nfunction HVb(a,b,c,d,e){a.b=b;a.c=c;a.d=d;a.a=e}\nfunction eBb(a,b){if(b){a.b=b;a.a=(Tzb(b),b.a)}}\nfunction v_b(a,b,c,d,e){a.d=b;a.c=c;a.a=d;a.b=e}\nfunction h5b(a){var b,c;b=a.b;c=a.c;a.b=c;a.c=b}\nfunction k5b(a){var b,c;c=a.d;b=a.a;a.d=b;a.a=c}\nfunction Lbb(a){return zbb(iD(Fbb(a)?Rbb(a):a))}\nfunction rlc(a,b){return beb(D0b(a.d),D0b(b.d))}\nfunction uic(a,b){return b==(Ucd(),Tcd)?a.c:a.d}\nfunction FHc(){FHc=ccb;DHc=(Ucd(),Tcd);EHc=zcd}\nfunction DRb(){this.b=Edb(ED(Ksd((wSb(),vSb))))}\nfunction aBb(a){return EAb(),KC(SI,Uhe,1,a,5,1)}\nfunction C6c(a){return new f7c(a.c+a.b,a.d+a.a)}\nfunction Vmc(a,b){Imc();return beb(a.d.p,b.d.p)}\nfunction Lsb(a){sCb(a.b!=0);return Nsb(a,a.a.a)}\nfunction Msb(a){sCb(a.b!=0);return Nsb(a,a.c.b)}\nfunction rCb(a,b){if(!a){throw vbb(new ucb(b))}}\nfunction mCb(a,b){if(!a){throw vbb(new Wdb(b))}}\nfunction dWb(a,b,c){cWb.call(this,a,b);this.b=c}\nfunction pMd(a,b,c){MLd.call(this,a,b);this.c=c}\nfunction Dnc(a,b,c){Cnc.call(this,b,c);this.d=a}\nfunction _Gd(a){$Gd();MGd.call(this);this.th(a)}\nfunction PNd(a,b,c){this.a=a;nNd.call(this,b,c)}\nfunction UNd(a,b,c){this.a=a;nNd.call(this,b,c)}\nfunction k2d(a,b,c){MLd.call(this,a,b);this.c=c}\nfunction y1d(){T0d();z1d.call(this,(yFd(),xFd))}\nfunction gFd(a){return a!=null&&!OEd(a,CEd,DEd)}\nfunction dFd(a,b){return (jFd(a)<<4|jFd(b))&aje}\nfunction ln(a,b){return Vm(),Wj(a,b),new iy(a,b)}\nfunction Sdd(a,b){var c;if(a.n){c=b;Ekb(a.f,c)}}\nfunction Upd(a,b,c){var d;d=new yC(c);cC(a,b,d)}\nfunction WUd(a,b){var c;c=a.c;VUd(a,b);return c}\nfunction Ydd(a,b){b<0?(a.g=-1):(a.g=b);return a}\nfunction $6c(a,b){W6c(a);a.a*=b;a.b*=b;return a}\nfunction G6c(a,b,c,d,e){a.c=b;a.d=c;a.b=d;a.a=e}\nfunction Dsb(a,b){Gsb(a,b,a.c.b,a.c);return true}\nfunction jsb(a){a.a.b=a.b;a.b.a=a.a;a.a=a.b=null}\nfunction Aq(a){this.b=a;this.a=Wm(this.b.a).Ed()}\nfunction Wq(a,b){this.b=a;this.a=b;ol.call(this)}\nfunction ar(a,b){this.a=a;this.b=b;ol.call(this)}\nfunction vvb(a,b){qvb.call(this,b,1040);this.a=a}\nfunction Eeb(a){return a==0||isNaN(a)?a:a<0?-1:1}\nfunction WPb(a){QPb();return jtd(a)==Xod(ltd(a))}\nfunction XPb(a){QPb();return ltd(a)==Xod(jtd(a))}\nfunction iYb(a,b){return hYb(a,new cWb(b.a,b.b))}\nfunction NZb(a){return !OZb(a)&&a.c.i.c==a.d.i.c}\nfunction _Gb(a){var b;b=a.n;return a.a.b+b.d+b.a}\nfunction YHb(a){var b;b=a.n;return a.e.b+b.d+b.a}\nfunction ZHb(a){var b;b=a.n;return a.e.a+b.b+b.c}\nfunction zfe(a){wfe();++vfe;return new ige(0,a)}\nfunction o_b(a){if(a.a){return a.a}return JZb(a)}\nfunction CCb(a){if(!a){throw vbb(new Cdb(null))}}\nfunction X6d(){X6d=ccb;W6d=(mmb(),new anb(Fwe))}\nfunction ex(){ex=ccb;new gx((_k(),$k),(Lk(),Kk))}\nfunction oeb(){oeb=ccb;neb=KC(JI,nie,19,256,0,1)}\nfunction d$c(a,b,c,d){e$c.call(this,a,b,c,d,0,0)}\nfunction sQc(a,b,c){return Rhb(a.b,BD(c.b,17),b)}\nfunction tQc(a,b,c){return Rhb(a.b,BD(c.b,17),b)}\nfunction xfd(a,b){return Ekb(a,new f7c(b.a,b.b))}\nfunction Bic(a,b){return a.c=b){throw vbb(new rcb)}}\nfunction Pyb(a,b,c){NC(b,0,Bzb(b[0],c[0]));return b}\nfunction _yc(a,b,c){b.Ye(c,Edb(ED(Ohb(a.b,c)))*a.a)}\nfunction n6c(a,b,c){i6c();return m6c(a,b)&&m6c(a,c)}\nfunction tcd(a){rcd();return !a.Hc(ncd)&&!a.Hc(pcd)}\nfunction D6c(a){return new f7c(a.c+a.b/2,a.d+a.a/2)}\nfunction oOd(a,b){return b.kh()?xid(a.b,BD(b,49)):b}\nfunction bvb(a,b){this.e=a;this.d=(b&64)!=0?b|oie:b}\nfunction qvb(a,b){this.c=0;this.d=a;this.b=b|64|oie}\nfunction gub(a){this.b=new Skb(11);this.a=(ipb(),a)}\nfunction Qwb(a){this.b=null;this.a=(ipb(),!a?fpb:a)}\nfunction nHc(a){this.a=lHc(a.a);this.b=new Tkb(a.b)}\nfunction Pzd(a){this.b=a;Oyd.call(this,a);Ozd(this)}\nfunction Xzd(a){this.b=a;bzd.call(this,a);Wzd(this)}\nfunction jUd(a,b,c){this.a=a;gUd.call(this,b,c,5,6)}\nfunction Y5d(a,b,c,d){this.b=a;xMd.call(this,b,c,d)}\nfunction nSd(a,b,c,d,e){oSd.call(this,a,b,c,d,e,-1)}\nfunction DSd(a,b,c,d,e){ESd.call(this,a,b,c,d,e,-1)}\nfunction cUd(a,b,c,d){xMd.call(this,a,b,c);this.b=d}\nfunction i5d(a,b,c,d){pMd.call(this,a,b,c);this.b=d}\nfunction x0d(a){Wud.call(this,a,false);this.a=false}\nfunction Lj(a,b){this.b=a;sj.call(this,a.b);this.a=b}\nfunction px(a,b){im();ox.call(this,a,Dm(new amb(b)))}\nfunction Cfe(a,b){wfe();++vfe;return new Dge(a,b,0)}\nfunction Efe(a,b){wfe();++vfe;return new Dge(6,a,b)}\nfunction nfb(a,b){return dfb(a.substr(0,b.length),b)}\nfunction Mhb(a,b){return ND(b)?Qhb(a,b):!!irb(a.f,b)}\nfunction Rrb(a,b){uCb(b);while(a.Ob()){b.td(a.Pb())}}\nfunction Vgb(a,b,c){Hgb();this.e=a;this.d=b;this.a=c}\nfunction amc(a,b,c,d){var e;e=a.i;e.i=b;e.a=c;e.b=d}\nfunction xJc(a){var b;b=a;while(b.f){b=b.f}return b}\nfunction fkb(a){var b;b=bkb(a);sCb(b!=null);return b}\nfunction gkb(a){var b;b=ckb(a);sCb(b!=null);return b}\nfunction cv(a,b){var c;c=a.a.gc();Sb(b,c);return c-b}\nfunction Glb(a,b){var c;for(c=0;c0?$wnd.Math.log(a/b):-100}\nfunction ueb(a,b){return ybb(a,b)<0?-1:ybb(a,b)>0?1:0}\nfunction HMb(a,b,c){return IMb(a,BD(b,46),BD(c,167))}\nfunction iq(a,b){return BD(Rl(Wm(a.a)).Xb(b),42).cd()}\nfunction Olb(a,b){return avb(b,a.length),new vvb(a,b)}\nfunction Pyd(a,b){this.d=a;Fyd.call(this,a);this.e=b}\nfunction Lub(a){this.d=(uCb(a),a);this.a=0;this.c=rie}\nfunction rge(a,b){xfe.call(this,1);this.a=a;this.b=b}\nfunction Rzb(a,b){!a.c?Ekb(a.b,b):Rzb(a.c,b);return a}\nfunction uB(a,b,c){var d;d=tB(a,b);vB(a,b,c);return d}\nfunction ZBb(a,b){var c;c=a.slice(0,b);return PC(c,a)}\nfunction Flb(a,b,c){var d;for(d=0;d=a.g}\nfunction NHc(a,b,c){var d;d=THc(a,b,c);return MHc(a,d)}\nfunction Qpd(a,b){var c;c=a.a.length;tB(a,c);vB(a,c,b)}\nfunction gCb(a,b){var c;c=console[a];c.call(console,b)}\nfunction Bvd(a,b){var c;++a.j;c=a.Vi();a.Ii(a.oi(c,b))}\nfunction E1c(a,b,c){BD(b.b,65);Hkb(b.a,new L1c(a,c,b))}\nfunction oXd(a,b,c){VVd.call(this,b);this.a=a;this.b=c}\nfunction Dge(a,b,c){xfe.call(this,a);this.a=b;this.b=c}\nfunction dYd(a,b,c){this.a=a;lVd.call(this,b);this.b=c}\nfunction f0d(a,b,c){this.a=a;mxd.call(this,8,b,null,c)}\nfunction z1d(a){this.a=(uCb(Rve),Rve);this.b=a;new oUd}\nfunction ct(a){this.c=a;this.b=this.c.a;this.a=this.c.e}\nfunction usb(a){this.c=a;this.b=a.a.d.a;ypb(a.a.e,this)}\nfunction uib(a){yCb(a.c!=-1);a.d.$c(a.c);a.b=a.c;a.c=-1}\nfunction U6c(a){return $wnd.Math.sqrt(a.a*a.a+a.b*a.b)}\nfunction Uvb(a,b){return _vb(b,a.a.c.length),Ikb(a.a,b)}\nfunction Hb(a,b){return PD(a)===PD(b)||a!=null&&pb(a,b)}\nfunction oAb(a){if(0>=a){return new yAb}return pAb(a-1)}\nfunction Nfe(a){if(!bfe)return false;return Qhb(bfe,a)}\nfunction Ehe(a){if(a)return a.dc();return !a.Kc().Ob()}\nfunction Q_b(a){if(!a.a&&!!a.c){return a.c.b}return a.a}\nfunction LHd(a){!a.a&&(a.a=new xMd(m5,a,4));return a.a}\nfunction LQd(a){!a.d&&(a.d=new xMd(j5,a,1));return a.d}\nfunction uCb(a){if(a==null){throw vbb(new Geb)}return a}\nfunction Qzb(a){if(!a.c){a.d=true;Szb(a)}else{a.c.He()}}\nfunction Tzb(a){if(!a.c){Uzb(a);a.d=true}else{Tzb(a.c)}}\nfunction Kpb(a){Ae(a.a);a.b=KC(SI,Uhe,1,a.b.length,5,1)}\nfunction qlc(a,b){return beb(b.j.c.length,a.j.c.length)}\nfunction igd(a,b){a.c<0||a.b.b=0?a.Bh(c):vid(a,b)}\nfunction WHc(a){var b,c;b=a.c.i.c;c=a.d.i.c;return b==c}\nfunction Wwd(a){if(a.p!=4)throw vbb(new Ydb);return a.e}\nfunction Vwd(a){if(a.p!=3)throw vbb(new Ydb);return a.e}\nfunction Ywd(a){if(a.p!=6)throw vbb(new Ydb);return a.f}\nfunction fxd(a){if(a.p!=6)throw vbb(new Ydb);return a.k}\nfunction cxd(a){if(a.p!=3)throw vbb(new Ydb);return a.j}\nfunction dxd(a){if(a.p!=4)throw vbb(new Ydb);return a.j}\nfunction AYd(a){!a.b&&(a.b=new RYd(new NYd));return a.b}\nfunction $1d(a){a.c==-2&&e2d(a,X0d(a.g,a.b));return a.c}\nfunction pdb(a,b){var c;c=ldb('',a);c.n=b;c.i=1;return c}\nfunction MNb(a,b){$Nb(BD(b.b,65),a);Hkb(b.a,new RNb(a))}\nfunction Cnd(a,b){wtd((!a.a&&(a.a=new fTd(a,a)),a.a),b)}\nfunction Qzd(a,b){this.b=a;Pyd.call(this,a,b);Ozd(this)}\nfunction Yzd(a,b){this.b=a;czd.call(this,a,b);Wzd(this)}\nfunction Ms(a,b,c,d){Wo.call(this,a,b);this.d=c;this.a=d}\nfunction $o(a,b,c,d){Wo.call(this,a,c);this.a=b;this.f=d}\nfunction iy(a,b){Pp.call(this,umb(Qb(a),Qb(b)));this.a=b}\nfunction cae(){fod.call(this,Ewe,(p8d(),o8d));$9d(this)}\nfunction AZd(){fod.call(this,_ve,(LFd(),KFd));uZd(this)}\nfunction T0c(){$r.call(this,'DELAUNAY_TRIANGULATION',0)}\nfunction vfb(a){return String.fromCharCode.apply(null,a)}\nfunction Rhb(a,b,c){return ND(b)?Shb(a,b,c):jrb(a.f,b,c)}\nfunction tmb(a){mmb();return !a?(ipb(),ipb(),hpb):a.ve()}\nfunction d2c(a,b,c){Y1c();return c.pg(a,BD(b.cd(),146))}\nfunction ix(a,b){ex();return new gx(new il(a),new Uk(b))}\nfunction Iu(a){Xj(a,Mie);return Oy(wbb(wbb(5,a),a/10|0))}\nfunction Vm(){Vm=ccb;Um=new wx(OC(GC(CK,1),zie,42,0,[]))}\nfunction hob(a){!a.d&&(a.d=new lnb(a.c.Cc()));return a.d}\nfunction eob(a){!a.a&&(a.a=new Gob(a.c.vc()));return a.a}\nfunction gob(a){!a.b&&(a.b=new zob(a.c.ec()));return a.b}\nfunction keb(a,b){while(b-->0){a=a<<1|(a<0?1:0)}return a}\nfunction wtb(a,b){return PD(a)===PD(b)||a!=null&&pb(a,b)}\nfunction Gbc(a,b){return Bcb(),BD(b.b,19).ad&&++d;return d}\nfunction Nnd(a){var b,c;c=(b=new UQd,b);NQd(c,a);return c}\nfunction Ond(a){var b,c;c=(b=new UQd,b);RQd(c,a);return c}\nfunction hqd(a,b){var c;c=Ohb(a.f,b);Yqd(b,c);return null}\nfunction JZb(a){var b;b=P2b(a);if(b){return b}return null}\nfunction Wod(a){!a.b&&(a.b=new cUd(B2,a,12,3));return a.b}\nfunction YEd(a){return a!=null&&hnb(GEd,a.toLowerCase())}\nfunction ied(a,b){return Kdb(red(a)*qed(a),red(b)*qed(b))}\nfunction jed(a,b){return Kdb(red(a)*qed(a),red(b)*qed(b))}\nfunction wEb(a,b){return Kdb(a.d.c+a.d.b/2,b.d.c+b.d.b/2)}\nfunction UVb(a,b){return Kdb(a.g.c+a.g.b/2,b.g.c+b.g.b/2)}\nfunction pQb(a,b,c){c.a?eld(a,b.b-a.f/2):dld(a,b.a-a.g/2)}\nfunction prd(a,b,c,d){this.a=a;this.b=b;this.c=c;this.d=d}\nfunction ord(a,b,c,d){this.a=a;this.b=b;this.c=c;this.d=d}\nfunction JVd(a,b,c,d){this.e=a;this.a=b;this.c=c;this.d=d}\nfunction ZVd(a,b,c,d){this.a=a;this.c=b;this.d=c;this.b=d}\nfunction cXd(a,b,c,d){UVd();mWd.call(this,b,c,d);this.a=a}\nfunction jXd(a,b,c,d){UVd();mWd.call(this,b,c,d);this.a=a}\nfunction Ng(a,b){this.a=a;Hg.call(this,a,BD(a.d,15).Zc(b))}\nfunction ZBd(a){this.f=a;this.c=this.f.e;a.f>0&&YBd(this)}\nfunction lBb(a,b,c,d){this.b=a;this.c=d;nvb.call(this,b,c)}\nfunction tib(a){sCb(a.b=0&&dfb(a.substr(c,b.length),b)}\nfunction H2d(a,b,c,d,e,f,g){return new O7d(a.e,b,c,d,e,f,g)}\nfunction Cxd(a,b,c,d,e,f){this.a=a;nxd.call(this,b,c,d,e,f)}\nfunction vyd(a,b,c,d,e,f){this.a=a;nxd.call(this,b,c,d,e,f)}\nfunction $Ec(a,b){this.g=a;this.d=OC(GC(OQ,1),kne,10,0,[b])}\nfunction KVd(a,b){this.e=a;this.a=SI;this.b=R5d(b);this.c=b}\nfunction cIb(a,b){$Gb.call(this);THb(this);this.a=a;this.c=b}\nfunction kBc(a,b,c,d){NC(a.c[b.g],c.g,d);NC(a.c[c.g],b.g,d)}\nfunction nBc(a,b,c,d){NC(a.c[b.g],b.g,c);NC(a.b[b.g],b.g,d)}\nfunction cBc(){_Ac();return OC(GC(fX,1),Kie,376,0,[$Ac,ZAc])}\nfunction crc(){_qc();return OC(GC(MW,1),Kie,479,0,[$qc,Zqc])}\nfunction Aqc(){xqc();return OC(GC(JW,1),Kie,419,0,[vqc,wqc])}\nfunction Lpc(){Ipc();return OC(GC(FW,1),Kie,422,0,[Gpc,Hpc])}\nfunction psc(){msc();return OC(GC(SW,1),Kie,420,0,[ksc,lsc])}\nfunction EAc(){BAc();return OC(GC(cX,1),Kie,421,0,[zAc,AAc])}\nfunction XIc(){UIc();return OC(GC(mY,1),Kie,523,0,[TIc,SIc])}\nfunction KOc(){HOc();return OC(GC(DZ,1),Kie,520,0,[GOc,FOc])}\nfunction _Lc(){YLc();return OC(GC(fZ,1),Kie,516,0,[XLc,WLc])}\nfunction hMc(){eMc();return OC(GC(gZ,1),Kie,515,0,[cMc,dMc])}\nfunction IQc(){FQc();return OC(GC(YZ,1),Kie,455,0,[DQc,EQc])}\nfunction bUc(){$Tc();return OC(GC(F$,1),Kie,425,0,[ZTc,YTc])}\nfunction VTc(){STc();return OC(GC(E$,1),Kie,480,0,[QTc,RTc])}\nfunction VUc(){PUc();return OC(GC(K$,1),Kie,495,0,[NUc,OUc])}\nfunction jWc(){fWc();return OC(GC(X$,1),Kie,426,0,[dWc,eWc])}\nfunction g1c(){a1c();return OC(GC(X_,1),Kie,429,0,[_0c,$0c])}\nfunction F_c(){C_c();return OC(GC(P_,1),Kie,430,0,[B_c,A_c])}\nfunction PEb(){MEb();return OC(GC(aN,1),Kie,428,0,[LEb,KEb])}\nfunction XEb(){UEb();return OC(GC(bN,1),Kie,427,0,[SEb,TEb])}\nfunction $Rb(){XRb();return OC(GC(gP,1),Kie,424,0,[VRb,WRb])}\nfunction B5b(){y5b();return OC(GC(ZR,1),Kie,511,0,[x5b,w5b])}\nfunction lid(a,b,c,d){return c>=0?a.jh(b,c,d):a.Sg(null,c,d)}\nfunction hgd(a){if(a.b.b==0){return a.a.$e()}return Lsb(a.b)}\nfunction Xwd(a){if(a.p!=5)throw vbb(new Ydb);return Tbb(a.f)}\nfunction exd(a){if(a.p!=5)throw vbb(new Ydb);return Tbb(a.k)}\nfunction pNd(a){PD(a.a)===PD((NKd(),MKd))&&qNd(a);return a.a}\nfunction by(a){this.a=BD(Qb(a),271);this.b=(mmb(),new Zob(a))}\nfunction bQc(a,b){$Pc(this,new f7c(a.a,a.b));_Pc(this,Ru(b))}\nfunction FQc(){FQc=ccb;DQc=new GQc(jle,0);EQc=new GQc(kle,1)}\nfunction YLc(){YLc=ccb;XLc=new ZLc(kle,0);WLc=new ZLc(jle,1)}\nfunction Hp(){Gp.call(this,new Mqb(Cv(12)));Lb(true);this.a=2}\nfunction Hge(a,b,c){wfe();xfe.call(this,a);this.b=b;this.a=c}\nfunction cWd(a,b,c){UVd();VVd.call(this,b);this.a=a;this.b=c}\nfunction aIb(a){$Gb.call(this);THb(this);this.a=a;this.c=true}\nfunction isb(a){var b;b=a.c.d.b;a.b=b;a.a=a.c.d;b.a=a.c.d.b=a}\nfunction $Cb(a){var b;NGb(a.a);MGb(a.a);b=new YGb(a.a);UGb(b)}\nfunction iKb(a,b){hKb(a,true);Hkb(a.e.wf(),new mKb(a,true,b))}\nfunction tlb(a,b){pCb(b);return vlb(a,KC(WD,oje,25,b,15,1),b)}\nfunction YPb(a,b){QPb();return a==Xod(jtd(b))||a==Xod(ltd(b))}\nfunction Phb(a,b){return b==null?Wd(irb(a.f,null)):Crb(a.g,b)}\nfunction Ksb(a){return a.b==0?null:(sCb(a.b!=0),Nsb(a,a.a.a))}\nfunction QD(a){return Math.max(Math.min(a,Ohe),-2147483648)|0}\nfunction uz(a,b){var c=tz[a.charCodeAt(0)];return c==null?a:c}\nfunction Cx(a,b){Rb(a,'set1');Rb(b,'set2');return new Px(a,b)}\nfunction QUb(a,b){var c;c=zUb(a.f,b);return P6c(V6c(c),a.f.d)}\nfunction Jwb(a,b){var c,d;c=b;d=new fxb;Lwb(a,c,d);return d.d}\nfunction NJb(a,b,c,d){var e;e=new aHb;b.a[c.g]=e;Npb(a.b,d,e)}\nfunction zid(a,b,c){var d;d=a.Yg(b);d>=0?a.sh(d,c):uid(a,b,c)}\nfunction hvd(a,b,c){evd();!!a&&Rhb(dvd,a,b);!!a&&Rhb(cvd,a,c)}\nfunction g_c(a,b,c){this.i=new Rkb;this.b=a;this.g=b;this.a=c}\nfunction VZc(a,b,c){this.c=new Rkb;this.e=a;this.f=b;this.b=c}\nfunction b$c(a,b,c){this.a=new Rkb;this.e=a;this.f=b;this.c=c}\nfunction Zy(a,b){Py(this);this.f=b;this.g=a;Ry(this);this._d()}\nfunction ZA(a,b){var c;c=a.q.getHours();a.q.setDate(b);YA(a,c)}\nfunction no(a,b){var c;Qb(b);for(c=a.a;c;c=c.c){b.Od(c.g,c.i)}}\nfunction Fx(a){var b;b=new Uqb(Cv(a.length));nmb(b,a);return b}\nfunction ecb(a){function b(){}\n;b.prototype=a||{};return new b}\nfunction dkb(a,b){if(Zjb(a,b)){wkb(a);return true}return false}\nfunction aC(a,b){if(b==null){throw vbb(new Geb)}return bC(a,b)}\nfunction tdb(a){if(a.qe()){return null}var b=a.n;return _bb[b]}\nfunction Mld(a){if(a.Db>>16!=3)return null;return BD(a.Cb,33)}\nfunction mpd(a){if(a.Db>>16!=9)return null;return BD(a.Cb,33)}\nfunction fmd(a){if(a.Db>>16!=6)return null;return BD(a.Cb,79)}\nfunction Ind(a){if(a.Db>>16!=7)return null;return BD(a.Cb,235)}\nfunction Fod(a){if(a.Db>>16!=7)return null;return BD(a.Cb,160)}\nfunction Xod(a){if(a.Db>>16!=11)return null;return BD(a.Cb,33)}\nfunction nid(a,b){var c;c=a.Yg(b);return c>=0?a.lh(c):tid(a,b)}\nfunction Dtd(a,b){var c;c=new Bsb(b);Ve(c,a);return new Tkb(c)}\nfunction Uud(a){var b;b=a.d;b=a.si(a.f);wtd(a,b);return b.Ob()}\nfunction t_b(a,b){a.b+=b.b;a.c+=b.c;a.d+=b.d;a.a+=b.a;return a}\nfunction A4b(a,b){return $wnd.Math.abs(a)<$wnd.Math.abs(b)?a:b}\nfunction Zod(a){return !a.a&&(a.a=new cUd(E2,a,10,11)),a.a.i>0}\nfunction oDb(){this.a=new zsb;this.e=new Tqb;this.g=0;this.i=0}\nfunction BGc(a){this.a=a;this.b=KC(SX,nie,1944,a.e.length,0,2)}\nfunction RHc(a,b,c){var d;d=SHc(a,b,c);a.b=new BHc(d.c.length)}\nfunction eMc(){eMc=ccb;cMc=new fMc(vle,0);dMc=new fMc('UP',1)}\nfunction STc(){STc=ccb;QTc=new TTc(Yqe,0);RTc=new TTc('FAN',1)}\nfunction evd(){evd=ccb;dvd=new Lqb;cvd=new Lqb;ivd(hK,new jvd)}\nfunction Swd(a){if(a.p!=0)throw vbb(new Ydb);return Kbb(a.f,0)}\nfunction _wd(a){if(a.p!=0)throw vbb(new Ydb);return Kbb(a.k,0)}\nfunction MHd(a){if(a.Db>>16!=3)return null;return BD(a.Cb,147)}\nfunction ZJd(a){if(a.Db>>16!=6)return null;return BD(a.Cb,235)}\nfunction WId(a){if(a.Db>>16!=17)return null;return BD(a.Cb,26)}\nfunction rdb(a,b){var c=a.a=a.a||[];return c[b]||(c[b]=a.le(b))}\nfunction hrb(a,b){var c;c=a.a.get(b);return c==null?new Array:c}\nfunction aB(a,b){var c;c=a.q.getHours();a.q.setMonth(b);YA(a,c)}\nfunction Shb(a,b,c){return b==null?jrb(a.f,null,c):Drb(a.g,b,c)}\nfunction FLd(a,b,c,d,e,f){return new pSd(a.e,b,a.aj(),c,d,e,f)}\nfunction Tfb(a,b,c){a.a=qfb(a.a,0,b)+(''+c)+pfb(a.a,b);return a}\nfunction bq(a,b,c){Ekb(a.a,(Vm(),Wj(b,c),new Wo(b,c)));return a}\nfunction uu(a){ot(a.c);a.e=a.a=a.c;a.c=a.c.c;++a.d;return a.a.f}\nfunction vu(a){ot(a.e);a.c=a.a=a.e;a.e=a.e.e;--a.d;return a.a.f}\nfunction RZb(a,b){!!a.d&&Lkb(a.d.e,a);a.d=b;!!a.d&&Ekb(a.d.e,a)}\nfunction QZb(a,b){!!a.c&&Lkb(a.c.g,a);a.c=b;!!a.c&&Ekb(a.c.g,a)}\nfunction $_b(a,b){!!a.c&&Lkb(a.c.a,a);a.c=b;!!a.c&&Ekb(a.c.a,a)}\nfunction F0b(a,b){!!a.i&&Lkb(a.i.j,a);a.i=b;!!a.i&&Ekb(a.i.j,a)}\nfunction jDb(a,b,c){this.a=b;this.c=a;this.b=(Qb(c),new Tkb(c))}\nfunction qXb(a,b,c){this.a=b;this.c=a;this.b=(Qb(c),new Tkb(c))}\nfunction aOb(a,b){this.a=a;this.c=R6c(this.a);this.b=new K6c(b)}\nfunction IAb(a){var b;Uzb(a);b=new Tqb;return JAb(a,new jBb(b))}\nfunction wCb(a,b){if(a<0||a>b){throw vbb(new qcb(Ake+a+Bke+b))}}\nfunction Ppb(a,b){return vqb(a.a,b)?Qpb(a,BD(b,22).g,null):null}\nfunction WUb(a){LUb();return Bcb(),BD(a.a,81).d.e!=0?true:false}\nfunction qs(){qs=ccb;ps=as((hs(),OC(GC(yG,1),Kie,538,0,[gs])))}\nfunction SBc(){SBc=ccb;RBc=c3c(new j3c,(qUb(),pUb),(S8b(),J8b))}\nfunction ZBc(){ZBc=ccb;YBc=c3c(new j3c,(qUb(),pUb),(S8b(),J8b))}\nfunction oCc(){oCc=ccb;nCc=c3c(new j3c,(qUb(),pUb),(S8b(),J8b))}\nfunction aJc(){aJc=ccb;_Ic=e3c(new j3c,(qUb(),pUb),(S8b(),h8b))}\nfunction FJc(){FJc=ccb;EJc=e3c(new j3c,(qUb(),pUb),(S8b(),h8b))}\nfunction ILc(){ILc=ccb;HLc=e3c(new j3c,(qUb(),pUb),(S8b(),h8b))}\nfunction wMc(){wMc=ccb;vMc=e3c(new j3c,(qUb(),pUb),(S8b(),h8b))}\nfunction fUc(){fUc=ccb;eUc=c3c(new j3c,(yRc(),xRc),(qSc(),kSc))}\nfunction DOc(a,b,c,d){this.c=a;this.d=d;BOc(this,b);COc(this,c)}\nfunction W3c(a){this.c=new Psb;this.b=a.b;this.d=a.c;this.a=a.a}\nfunction e7c(a){this.a=$wnd.Math.cos(a);this.b=$wnd.Math.sin(a)}\nfunction BOc(a,b){!!a.a&&Lkb(a.a.k,a);a.a=b;!!a.a&&Ekb(a.a.k,a)}\nfunction COc(a,b){!!a.b&&Lkb(a.b.f,a);a.b=b;!!a.b&&Ekb(a.b.f,a)}\nfunction D1c(a,b){E1c(a,a.b,a.c);BD(a.b.b,65);!!b&&BD(b.b,65).b}\nfunction BUd(a,b){CUd(a,b);JD(a.Cb,88)&&XMd($Kd(BD(a.Cb,88)),2)}\nfunction cJd(a,b){JD(a.Cb,88)&&XMd($Kd(BD(a.Cb,88)),4);pnd(a,b)}\nfunction lKd(a,b){JD(a.Cb,179)&&(BD(a.Cb,179).tb=null);pnd(a,b)}\nfunction T2d(a,b){return Q6d(),YId(b)?new R7d(b,a):new f7d(b,a)}\nfunction jsd(a,b){var c,d;c=b.c;d=c!=null;d&&Qpd(a,new yC(b.c))}\nfunction XOd(a){var b,c;c=(LFd(),b=new UQd,b);NQd(c,a);return c}\nfunction eTd(a){var b,c;c=(LFd(),b=new UQd,b);NQd(c,a);return c}\nfunction yCc(a,b){var c;c=new H1b(a);b.c[b.c.length]=c;return c}\nfunction Aw(a,b){var c;c=BD(Hv(nd(a.a),b),14);return !c?0:c.gc()}\nfunction UAb(a){var b;Uzb(a);b=(ipb(),ipb(),gpb);return VAb(a,b)}\nfunction nr(a){var b;while(true){b=a.Pb();if(!a.Ob()){return b}}}\nfunction Ki(a,b){Ii.call(this,new Mqb(Cv(a)));Xj(b,mie);this.a=b}\nfunction Jib(a,b,c){xCb(b,c,a.gc());this.c=a;this.a=b;this.b=c-b}\nfunction Mkb(a,b,c){var d;xCb(b,c,a.c.length);d=c-b;cCb(a.c,b,d)}\nfunction Fub(a,b){Eub(a,Tbb(xbb(Obb(b,24),nke)),Tbb(xbb(b,nke)))}\nfunction tCb(a,b){if(a<0||a>=b){throw vbb(new qcb(Ake+a+Bke+b))}}\nfunction BCb(a,b){if(a<0||a>=b){throw vbb(new Xfb(Ake+a+Bke+b))}}\nfunction Kub(a,b){this.b=(uCb(a),a);this.a=(b&Rje)==0?b|64|oie:b}\nfunction kkb(a){Vjb(this);dCb(this.a,geb($wnd.Math.max(8,a))<<1)}\nfunction A0b(a){return l7c(OC(GC(m1,1),nie,8,0,[a.i.n,a.n,a.a]))}\nfunction Iyb(){Fyb();return OC(GC(xL,1),Kie,132,0,[Cyb,Dyb,Eyb])}\nfunction jHb(){gHb();return OC(GC(pN,1),Kie,232,0,[dHb,eHb,fHb])}\nfunction QHb(){NHb();return OC(GC(sN,1),Kie,461,0,[LHb,KHb,MHb])}\nfunction HIb(){EIb();return OC(GC(zN,1),Kie,462,0,[DIb,CIb,BIb])}\nfunction UXb(){RXb();return OC(GC(hQ,1),Kie,423,0,[QXb,PXb,OXb])}\nfunction BTb(){yTb();return OC(GC(oP,1),Kie,379,0,[wTb,vTb,xTb])}\nfunction Bzc(){xzc();return OC(GC(ZW,1),Kie,378,0,[uzc,vzc,wzc])}\nfunction Xpc(){Rpc();return OC(GC(GW,1),Kie,314,0,[Ppc,Opc,Qpc])}\nfunction eqc(){bqc();return OC(GC(HW,1),Kie,337,0,[$pc,aqc,_pc])}\nfunction Jqc(){Gqc();return OC(GC(KW,1),Kie,450,0,[Eqc,Dqc,Fqc])}\nfunction Ikc(){Fkc();return OC(GC(vV,1),Kie,361,0,[Ekc,Dkc,Ckc])}\nfunction hsc(){esc();return OC(GC(RW,1),Kie,303,0,[csc,dsc,bsc])}\nfunction $rc(){Xrc();return OC(GC(QW,1),Kie,292,0,[Vrc,Wrc,Urc])}\nfunction NAc(){KAc();return OC(GC(dX,1),Kie,452,0,[JAc,HAc,IAc])}\nfunction wAc(){tAc();return OC(GC(bX,1),Kie,339,0,[rAc,qAc,sAc])}\nfunction WAc(){TAc();return OC(GC(eX,1),Kie,375,0,[QAc,RAc,SAc])}\nfunction OBc(){LBc();return OC(GC(jX,1),Kie,377,0,[JBc,KBc,IBc])}\nfunction wBc(){tBc();return OC(GC(hX,1),Kie,336,0,[qBc,rBc,sBc])}\nfunction FBc(){CBc();return OC(GC(iX,1),Kie,338,0,[BBc,zBc,ABc])}\nfunction uGc(){rGc();return OC(GC(PX,1),Kie,454,0,[oGc,pGc,qGc])}\nfunction xVc(){tVc();return OC(GC(O$,1),Kie,442,0,[sVc,qVc,rVc])}\nfunction tWc(){pWc();return OC(GC(Y$,1),Kie,380,0,[mWc,nWc,oWc])}\nfunction CYc(){zYc();return OC(GC(q_,1),Kie,381,0,[xYc,yYc,wYc])}\nfunction wXc(){sXc();return OC(GC(b_,1),Kie,293,0,[qXc,rXc,pXc])}\nfunction _$c(){Y$c();return OC(GC(J_,1),Kie,437,0,[V$c,W$c,X$c])}\nfunction kbd(){hbd();return OC(GC(z1,1),Kie,334,0,[fbd,ebd,gbd])}\nfunction tad(){qad();return OC(GC(u1,1),Kie,272,0,[nad,oad,pad])}\nfunction o3d(a,b){return p3d(a,b,JD(b,99)&&(BD(b,18).Bb&Tje)!=0)}\nfunction LZc(a,b,c){var d;d=MZc(a,b,false);return d.b<=b&&d.a<=c}\nfunction tMc(a,b,c){var d;d=new sMc;d.b=b;d.a=c;++b.b;Ekb(a.d,d)}\nfunction fs(a,b){var c;c=(uCb(a),a).g;lCb(!!c);uCb(b);return c(b)}\nfunction av(a,b){var c,d;d=cv(a,b);c=a.a.Zc(d);return new qv(a,c)}\nfunction cKd(a){if(a.Db>>16!=6)return null;return BD(aid(a),235)}\nfunction Uwd(a){if(a.p!=2)throw vbb(new Ydb);return Tbb(a.f)&aje}\nfunction bxd(a){if(a.p!=2)throw vbb(new Ydb);return Tbb(a.k)&aje}\nfunction Z1d(a){a.a==(T0d(),S0d)&&d2d(a,U0d(a.g,a.b));return a.a}\nfunction _1d(a){a.d==(T0d(),S0d)&&f2d(a,Y0d(a.g,a.b));return a.d}\nfunction mlb(a){sCb(a.ad?1:0}\nfunction bjc(a,b){var c,d;c=ajc(b);d=c;return BD(Ohb(a.c,d),19).a}\nfunction iSc(a,b){var c;c=a+'';while(c.length0&&a.a[--a.d]==0);a.a[a.d++]==0&&(a.e=0)}\nfunction wwb(a){return !a.a?a.c:a.e.length==0?a.a.a:a.a.a+(''+a.e)}\nfunction RSd(a){return !!a.a&&QSd(a.a.a).i!=0&&!(!!a.b&&QTd(a.b))}\nfunction cLd(a){return !!a.u&&VKd(a.u.a).i!=0&&!(!!a.n&&FMd(a.n))}\nfunction $i(a){return Zj(a.e.Hd().gc()*a.c.Hd().gc(),16,new ij(a))}\nfunction XA(a,b){return ueb(Cbb(a.q.getTime()),Cbb(b.q.getTime()))}\nfunction k_b(a){return BD(Qkb(a,KC(AQ,jne,17,a.c.length,0,1)),474)}\nfunction l_b(a){return BD(Qkb(a,KC(OQ,kne,10,a.c.length,0,1)),193)}\nfunction cKc(a){FJc();return !OZb(a)&&!(!OZb(a)&&a.c.i.c==a.d.i.c)}\nfunction kDb(a,b,c){var d;d=(Qb(a),new Tkb(a));iDb(new jDb(d,b,c))}\nfunction rXb(a,b,c){var d;d=(Qb(a),new Tkb(a));pXb(new qXb(d,b,c))}\nfunction Nwb(a,b){var c;c=1-b;a.a[c]=Owb(a.a[c],c);return Owb(a,b)}\nfunction YXc(a,b){var c;a.e=new QXc;c=gVc(b);Okb(c,a.c);ZXc(a,c,0)}\nfunction o4c(a,b,c,d){var e;e=new w4c;e.a=b;e.b=c;e.c=d;Dsb(a.a,e)}\nfunction p4c(a,b,c,d){var e;e=new w4c;e.a=b;e.b=c;e.c=d;Dsb(a.b,e)}\nfunction i6d(a){var b,c,d;b=new A6d;c=s6d(b,a);z6d(b);d=c;return d}\nfunction vZd(){var a,b,c;b=(c=(a=new UQd,a),c);Ekb(rZd,b);return b}\nfunction H2c(a){a.j.c=KC(SI,Uhe,1,0,5,1);Ae(a.c);h3c(a.a);return a}\nfunction tgc(a){qgc();if(JD(a.g,10)){return BD(a.g,10)}return null}\nfunction Zw(a){if(Ah(a).dc()){return false}Bh(a,new bx);return true}\nfunction _y(b){if(!('stack' in b)){try{throw b}catch(a){}}return b}\nfunction Pb(a,b){if(a<0||a>=b){throw vbb(new qcb(Ib(a,b)))}return a}\nfunction Tb(a,b,c){if(a<0||bc){throw vbb(new qcb(Kb(a,b,c)))}}\nfunction eVb(a,b){Qqb(a.a,b);if(b.d){throw vbb(new hz(Hke))}b.d=a}\nfunction xpb(a,b){if(b.$modCount!=a.$modCount){throw vbb(new Apb)}}\nfunction $pb(a,b){if(JD(b,42)){return Jd(a.a,BD(b,42))}return false}\nfunction dib(a,b){if(JD(b,42)){return Jd(a.a,BD(b,42))}return false}\nfunction msb(a,b){if(JD(b,42)){return Jd(a.a,BD(b,42))}return false}\nfunction qAb(a,b){if(a.a<=a.b){b.ud(a.a++);return true}return false}\nfunction Sbb(a){var b;if(Fbb(a)){b=a;return b==-0.?0:b}return oD(a)}\nfunction tAb(a){var b;Tzb(a);b=new drb;_ub(a.a,new BAb(b));return b}\nfunction Yzb(a){var b;Tzb(a);b=new Gpb;_ub(a.a,new mAb(b));return b}\nfunction Bib(a,b){this.a=a;vib.call(this,a);wCb(b,a.gc());this.b=b}\nfunction orb(a){this.e=a;this.b=this.e.a.entries();this.a=new Array}\nfunction Oi(a){return Zj(a.e.Hd().gc()*a.c.Hd().gc(),273,new cj(a))}\nfunction Qu(a){return new Skb((Xj(a,Mie),Oy(wbb(wbb(5,a),a/10|0))))}\nfunction m_b(a){return BD(Qkb(a,KC(aR,lne,11,a.c.length,0,1)),1943)}\nfunction sMb(a,b,c){return c.f.c.length>0?HMb(a.a,b,c):HMb(a.b,b,c)}\nfunction SZb(a,b,c){!!a.d&&Lkb(a.d.e,a);a.d=b;!!a.d&&Dkb(a.d.e,c,a)}\nfunction a5b(a,b){i5b(b,a);k5b(a.d);k5b(BD(vNb(a,(Nyc(),wxc)),207))}\nfunction _4b(a,b){f5b(b,a);h5b(a.d);h5b(BD(vNb(a,(Nyc(),wxc)),207))}\nfunction Ypd(a,b){var c,d;c=aC(a,b);d=null;!!c&&(d=c.fe());return d}\nfunction Zpd(a,b){var c,d;c=tB(a,b);d=null;!!c&&(d=c.ie());return d}\nfunction $pd(a,b){var c,d;c=aC(a,b);d=null;!!c&&(d=c.ie());return d}\nfunction _pd(a,b){var c,d;c=aC(a,b);d=null;!!c&&(d=aqd(c));return d}\nfunction Tqd(a,b,c){var d;d=Wpd(c);ro(a.g,d,b);ro(a.i,b,c);return b}\nfunction Ez(a,b,c){var d;d=Cz();try{return Bz(a,b,c)}finally{Fz(d)}}\nfunction C6d(a){var b;b=a.Wg();this.a=JD(b,69)?BD(b,69).Zh():b.Kc()}\nfunction j3c(){D2c.call(this);this.j.c=KC(SI,Uhe,1,0,5,1);this.a=-1}\nfunction mxd(a,b,c,d){this.d=a;this.n=b;this.g=c;this.o=d;this.p=-1}\nfunction jk(a,b,c,d){this.e=d;this.d=null;this.c=a;this.a=b;this.b=c}\nfunction uEc(a,b,c){this.d=new HEc(this);this.e=a;this.i=b;this.f=c}\nfunction msc(){msc=ccb;ksc=new nsc(gle,0);lsc=new nsc('TOP_LEFT',1)}\nfunction cDc(){cDc=ccb;bDc=ix(meb(1),meb(4));aDc=ix(meb(1),meb(2))}\nfunction z_c(){z_c=ccb;y_c=as((s_c(),OC(GC(O_,1),Kie,551,0,[r_c])))}\nfunction q_c(){q_c=ccb;p_c=as((i_c(),OC(GC(N_,1),Kie,482,0,[h_c])))}\nfunction Z0c(){Z0c=ccb;Y0c=as((R0c(),OC(GC(W_,1),Kie,530,0,[Q0c])))}\nfunction hPb(){hPb=ccb;gPb=as((cPb(),OC(GC(GO,1),Kie,481,0,[bPb])))}\nfunction yLb(){vLb();return OC(GC(PN,1),Kie,406,0,[uLb,rLb,sLb,tLb])}\nfunction qxb(){lxb();return OC(GC(iL,1),Kie,297,0,[hxb,ixb,jxb,kxb])}\nfunction UOb(){ROb();return OC(GC(CO,1),Kie,394,0,[OOb,NOb,POb,QOb])}\nfunction UMb(){RMb();return OC(GC(jO,1),Kie,323,0,[OMb,NMb,PMb,QMb])}\nfunction sWb(){lWb();return OC(GC(SP,1),Kie,405,0,[hWb,kWb,iWb,jWb])}\nfunction kbc(){gbc();return OC(GC(VS,1),Kie,360,0,[fbc,dbc,ebc,cbc])}\nfunction Vc(a,b,c,d){return JD(c,54)?new Cg(a,b,c,d):new qg(a,b,c,d)}\nfunction Djc(){Ajc();return OC(GC(mV,1),Kie,411,0,[wjc,xjc,yjc,zjc])}\nfunction okc(a){var b;return a.j==(Ucd(),Rcd)&&(b=pkc(a),uqb(b,zcd))}\nfunction Mdc(a,b){var c;c=b.a;QZb(c,b.c.d);RZb(c,b.d.d);q7c(c.a,a.n)}\nfunction Smc(a,b){return BD(Btb(QAb(BD(Qc(a.k,b),15).Oc(),Hmc)),113)}\nfunction Tmc(a,b){return BD(Btb(RAb(BD(Qc(a.k,b),15).Oc(),Hmc)),113)}\nfunction _w(a){return new Kub(rmb(BD(a.a.dd(),14).gc(),a.a.cd()),16)}\nfunction Qq(a){if(JD(a,14)){return BD(a,14).dc()}return !a.Kc().Ob()}\nfunction ugc(a){qgc();if(JD(a.g,145)){return BD(a.g,145)}return null}\nfunction Ko(a){if(a.e.g!=a.b){throw vbb(new Apb)}return !!a.c&&a.d>0}\nfunction Xsb(a){sCb(a.b!=a.d.c);a.c=a.b;a.b=a.b.a;++a.a;return a.c.c}\nfunction Xjb(a,b){uCb(b);NC(a.a,a.c,b);a.c=a.c+1&a.a.length-1;_jb(a)}\nfunction Wjb(a,b){uCb(b);a.b=a.b-1&a.a.length-1;NC(a.a,a.b,b);_jb(a)}\nfunction A2c(a,b){var c;for(c=a.j.c.length;c0&&$fb(a.g,0,b,0,a.i);return b}\nfunction qEd(a,b){pEd();var c;c=BD(Ohb(oEd,a),55);return !c||c.wj(b)}\nfunction Twd(a){if(a.p!=1)throw vbb(new Ydb);return Tbb(a.f)<<24>>24}\nfunction axd(a){if(a.p!=1)throw vbb(new Ydb);return Tbb(a.k)<<24>>24}\nfunction gxd(a){if(a.p!=7)throw vbb(new Ydb);return Tbb(a.k)<<16>>16}\nfunction Zwd(a){if(a.p!=7)throw vbb(new Ydb);return Tbb(a.f)<<16>>16}\nfunction sr(a){var b;b=0;while(a.Ob()){a.Pb();b=wbb(b,1)}return Oy(b)}\nfunction nx(a,b){var c;c=new Vfb;a.xd(c);c.a+='..';b.yd(c);return c.a}\nfunction Sgc(a,b,c){var d;d=BD(Ohb(a.g,c),57);Ekb(a.a.c,new vgd(b,d))}\nfunction VCb(a,b,c){return Ddb(ED(Wd(irb(a.f,b))),ED(Wd(irb(a.f,c))))}\nfunction E2d(a,b,c){return F2d(a,b,c,JD(b,99)&&(BD(b,18).Bb&Tje)!=0)}\nfunction L2d(a,b,c){return M2d(a,b,c,JD(b,99)&&(BD(b,18).Bb&Tje)!=0)}\nfunction q3d(a,b,c){return r3d(a,b,c,JD(b,99)&&(BD(b,18).Bb&Tje)!=0)}\nfunction JJc(a,b){return a==(j0b(),h0b)&&b==h0b?4:a==h0b||b==h0b?8:32}\nfunction Nd(a,b){return PD(b)===PD(a)?'(this Map)':b==null?Xhe:fcb(b)}\nfunction kFd(a,b){return BD(b==null?Wd(irb(a.f,null)):Crb(a.g,b),281)}\nfunction Rqd(a,b,c){var d;d=Wpd(c);Rhb(a.b,d,b);Rhb(a.c,b,c);return b}\nfunction Bfd(a,b){var c;c=b;while(c){O6c(a,c.i,c.j);c=Xod(c)}return a}\nfunction kt(a,b){var c;c=vmb(Nu(new wu(a,b)));ir(new wu(a,b));return c}\nfunction R6d(a,b){Q6d();var c;c=BD(a,66).Mj();kVd(c,b);return c.Ok(b)}\nfunction TOc(a,b,c,d,e){var f;f=OOc(e,c,d);Ekb(b,tOc(e,f));XOc(a,e,b)}\nfunction mic(a,b,c){a.i=0;a.e=0;if(b==c){return}lic(a,b,c);kic(a,b,c)}\nfunction dB(a,b){var c;c=a.q.getHours();a.q.setFullYear(b+nje);YA(a,c)}\nfunction dC(d,a,b){if(b){var c=b.ee();d.a[a]=c(b)}else{delete d.a[a]}}\nfunction vB(d,a,b){if(b){var c=b.ee();b=c(b)}else{b=undefined}d.a[a]=b}\nfunction pCb(a){if(a<0){throw vbb(new Feb('Negative array size: '+a))}}\nfunction VKd(a){if(!a.n){$Kd(a);a.n=new JMd(a,j5,a);_Kd(a)}return a.n}\nfunction Fqb(a){sCb(a.a=0&&a.a[c]===b[c];c--);return c<0}\nfunction Ucc(a,b){Occ();var c;c=a.j.g-b.j.g;if(c!=0){return c}return 0}\nfunction Dtb(a,b){uCb(b);if(a.a!=null){return Itb(b.Kb(a.a))}return ztb}\nfunction Gx(a){var b;if(a){return new Bsb(a)}b=new zsb;Jq(b,a);return b}\nfunction GAb(a,b){var c;return b.b.Kb(SAb(a,b.c.Ee(),(c=new TBb(b),c)))}\nfunction Hub(a){zub();Eub(this,Tbb(xbb(Obb(a,24),nke)),Tbb(xbb(a,nke)))}\nfunction REb(){REb=ccb;QEb=as((MEb(),OC(GC(aN,1),Kie,428,0,[LEb,KEb])))}\nfunction ZEb(){ZEb=ccb;YEb=as((UEb(),OC(GC(bN,1),Kie,427,0,[SEb,TEb])))}\nfunction aSb(){aSb=ccb;_Rb=as((XRb(),OC(GC(gP,1),Kie,424,0,[VRb,WRb])))}\nfunction D5b(){D5b=ccb;C5b=as((y5b(),OC(GC(ZR,1),Kie,511,0,[x5b,w5b])))}\nfunction Cqc(){Cqc=ccb;Bqc=as((xqc(),OC(GC(JW,1),Kie,419,0,[vqc,wqc])))}\nfunction erc(){erc=ccb;drc=as((_qc(),OC(GC(MW,1),Kie,479,0,[$qc,Zqc])))}\nfunction eBc(){eBc=ccb;dBc=as((_Ac(),OC(GC(fX,1),Kie,376,0,[$Ac,ZAc])))}\nfunction GAc(){GAc=ccb;FAc=as((BAc(),OC(GC(cX,1),Kie,421,0,[zAc,AAc])))}\nfunction Npc(){Npc=ccb;Mpc=as((Ipc(),OC(GC(FW,1),Kie,422,0,[Gpc,Hpc])))}\nfunction rsc(){rsc=ccb;qsc=as((msc(),OC(GC(SW,1),Kie,420,0,[ksc,lsc])))}\nfunction MOc(){MOc=ccb;LOc=as((HOc(),OC(GC(DZ,1),Kie,520,0,[GOc,FOc])))}\nfunction ZIc(){ZIc=ccb;YIc=as((UIc(),OC(GC(mY,1),Kie,523,0,[TIc,SIc])))}\nfunction bMc(){bMc=ccb;aMc=as((YLc(),OC(GC(fZ,1),Kie,516,0,[XLc,WLc])))}\nfunction jMc(){jMc=ccb;iMc=as((eMc(),OC(GC(gZ,1),Kie,515,0,[cMc,dMc])))}\nfunction KQc(){KQc=ccb;JQc=as((FQc(),OC(GC(YZ,1),Kie,455,0,[DQc,EQc])))}\nfunction dUc(){dUc=ccb;cUc=as(($Tc(),OC(GC(F$,1),Kie,425,0,[ZTc,YTc])))}\nfunction XUc(){XUc=ccb;WUc=as((PUc(),OC(GC(K$,1),Kie,495,0,[NUc,OUc])))}\nfunction XTc(){XTc=ccb;WTc=as((STc(),OC(GC(E$,1),Kie,480,0,[QTc,RTc])))}\nfunction lWc(){lWc=ccb;kWc=as((fWc(),OC(GC(X$,1),Kie,426,0,[dWc,eWc])))}\nfunction i1c(){i1c=ccb;h1c=as((a1c(),OC(GC(X_,1),Kie,429,0,[_0c,$0c])))}\nfunction H_c(){H_c=ccb;G_c=as((C_c(),OC(GC(P_,1),Kie,430,0,[B_c,A_c])))}\nfunction UIc(){UIc=ccb;TIc=new VIc('UPPER',0);SIc=new VIc('LOWER',1)}\nfunction Lqd(a,b){var c;c=new eC;Spd(c,'x',b.a);Spd(c,'y',b.b);Qpd(a,c)}\nfunction Oqd(a,b){var c;c=new eC;Spd(c,'x',b.a);Spd(c,'y',b.b);Qpd(a,c)}\nfunction Jic(a,b){var c,d;d=false;do{c=Mic(a,b);d=d|c}while(c);return d}\nfunction zHc(a,b){var c,d;c=b;d=0;while(c>0){d+=a.a[c];c-=c&-c}return d}\nfunction Cfd(a,b){var c;c=b;while(c){O6c(a,-c.i,-c.j);c=Xod(c)}return a}\nfunction reb(a,b){var c,d;uCb(b);for(d=a.Kc();d.Ob();){c=d.Pb();b.td(c)}}\nfunction me(a,b){var c;c=b.cd();return new Wo(c,a.e.pc(c,BD(b.dd(),14)))}\nfunction Gsb(a,b,c,d){var e;e=new jtb;e.c=b;e.b=c;e.a=d;d.b=c.a=e;++a.b}\nfunction Nkb(a,b,c){var d;d=(tCb(b,a.c.length),a.c[b]);a.c[b]=c;return d}\nfunction lFd(a,b,c){return BD(b==null?jrb(a.f,null,c):Drb(a.g,b,c),281)}\nfunction fRb(a){return !!a.c&&!!a.d?oRb(a.c)+'->'+oRb(a.d):'e_'+FCb(a)}\nfunction FAb(a,b){return (Uzb(a),WAb(new YAb(a,new qBb(b,a.a)))).sd(DAb)}\nfunction tUb(){qUb();return OC(GC(zP,1),Kie,356,0,[lUb,mUb,nUb,oUb,pUb])}\nfunction _cd(){Ucd();return OC(GC(F1,1),bne,61,0,[Scd,Acd,zcd,Rcd,Tcd])}\nfunction Dz(b){Az();return function(){return Ez(b,this,arguments);var a}}\nfunction sz(){if(Date.now){return Date.now()}return (new Date).getTime()}\nfunction OZb(a){if(!a.c||!a.d){return false}return !!a.c.i&&a.c.i==a.d.i}\nfunction pv(a){if(!a.c.Sb()){throw vbb(new utb)}a.a=true;return a.c.Ub()}\nfunction ko(a){a.i=0;Alb(a.b,null);Alb(a.c,null);a.a=null;a.e=null;++a.g}\nfunction ycb(a){wcb.call(this,a==null?Xhe:fcb(a),JD(a,78)?BD(a,78):null)}\nfunction PYb(a){MYb();yXb(this);this.a=new Psb;NYb(this,a);Dsb(this.a,a)}\nfunction jYb(){Ckb(this);this.b=new f7c(Pje,Pje);this.a=new f7c(Qje,Qje)}\nfunction rAb(a,b){this.c=0;this.b=b;jvb.call(this,a,17493);this.a=this.c}\nfunction wyb(a){oyb();if(lyb){return}this.c=a;this.e=true;this.a=new Rkb}\nfunction oyb(){oyb=ccb;lyb=true;jyb=false;kyb=false;nyb=false;myb=false}\nfunction C3c(a,b){if(JD(b,149)){return dfb(a.c,BD(b,149).c)}return false}\nfunction zUc(a,b){var c;c=0;!!a&&(c+=a.f.a/2);!!b&&(c+=b.f.a/2);return c}\nfunction j4c(a,b){var c;c=BD(Wrb(a.d,b),23);return c?c:BD(Wrb(a.e,b),23)}\nfunction Lzd(a){this.b=a;Fyd.call(this,a);this.a=BD(Ajd(this.b.a,4),126)}\nfunction Uzd(a){this.b=a;$yd.call(this,a);this.a=BD(Ajd(this.b.a,4),126)}\nfunction $Kd(a){if(!a.t){a.t=new YMd(a);vtd(new c0d(a),0,a.t)}return a.t}\nfunction kad(){ead();return OC(GC(t1,1),Kie,103,0,[cad,bad,aad,_9c,dad])}\nfunction Wbd(){Tbd();return OC(GC(C1,1),Kie,249,0,[Qbd,Sbd,Obd,Pbd,Rbd])}\nfunction Q5c(){N5c();return OC(GC(e1,1),Kie,175,0,[L5c,K5c,I5c,M5c,J5c])}\nfunction Q_c(){N_c();return OC(GC(Q_,1),Kie,316,0,[I_c,J_c,M_c,K_c,L_c])}\nfunction _zc(){Vzc();return OC(GC(_W,1),Kie,315,0,[Uzc,Rzc,Szc,Qzc,Tzc])}\nfunction sqc(){mqc();return OC(GC(IW,1),Kie,335,0,[iqc,hqc,kqc,lqc,jqc])}\nfunction n$c(){k$c();return OC(GC(y_,1),Kie,355,0,[g$c,f$c,i$c,h$c,j$c])}\nfunction _jc(){Xjc();return OC(GC(uV,1),Kie,363,0,[Tjc,Vjc,Wjc,Ujc,Sjc])}\nfunction Ftc(){Ctc();return OC(GC(TW,1),Kie,163,0,[Btc,xtc,ytc,ztc,Atc])}\nfunction T0d(){T0d=ccb;var a,b;R0d=(LFd(),b=new MPd,b);S0d=(a=new OJd,a)}\nfunction yUd(a){var b;if(!a.c){b=a.r;JD(b,88)&&(a.c=BD(b,26))}return a.c}\nfunction zc(a){a.e=3;a.d=a.Yb();if(a.e!=2){a.e=0;return true}return false}\nfunction RC(a){var b,c,d;b=a&Eje;c=a>>22&Eje;d=a<0?Fje:0;return TC(b,c,d)}\nfunction uy(a){var b,c,d,e;for(c=a,d=0,e=c.length;d0?ihb(a,b):lhb(a,-b)}\nfunction Rgb(a,b){if(b==0||a.e==0){return a}return b>0?lhb(a,b):ihb(a,-b)}\nfunction Rr(a){if(Qr(a)){a.c=a.a;return a.a.Pb()}else{throw vbb(new utb)}}\nfunction Yac(a){var b,c;b=a.c.i;c=a.d.i;return b.k==(j0b(),e0b)&&c.k==e0b}\nfunction kZb(a){var b;b=new UZb;tNb(b,a);yNb(b,(Nyc(),jxc),null);return b}\nfunction hid(a,b,c){var d;return d=a.Yg(b),d>=0?a._g(d,c,true):sid(a,b,c)}\nfunction uHb(a,b,c,d){var e;for(e=0;eb){throw vbb(new qcb(Jb(a,b,'index')))}return a}\nfunction zhb(a,b,c,d){var e;e=KC(WD,oje,25,b,15,1);Ahb(e,a,b,c,d);return e}\nfunction _A(a,b){var c;c=a.q.getHours()+(b/60|0);a.q.setMinutes(b);YA(a,c)}\nfunction A$c(a,b){return $wnd.Math.min(S6c(b.a,a.d.d.c),S6c(b.b,a.d.d.c))}\nfunction Thb(a,b){return ND(b)?b==null?krb(a.f,null):Erb(a.g,b):krb(a.f,b)}\nfunction b1b(a){this.c=a;this.a=new olb(this.c.a);this.b=new olb(this.c.b)}\nfunction kRb(){this.e=new Rkb;this.c=new Rkb;this.d=new Rkb;this.b=new Rkb}\nfunction MFb(){this.g=new PFb;this.b=new PFb;this.a=new Rkb;this.k=new Rkb}\nfunction Gjc(a,b,c){this.a=a;this.c=b;this.d=c;Ekb(b.e,this);Ekb(c.b,this)}\nfunction wBb(a,b){fvb.call(this,b.rd(),b.qd()&-6);uCb(a);this.a=a;this.b=b}\nfunction CBb(a,b){jvb.call(this,b.rd(),b.qd()&-6);uCb(a);this.a=a;this.b=b}\nfunction IBb(a,b){nvb.call(this,b.rd(),b.qd()&-6);uCb(a);this.a=a;this.b=b}\nfunction BQc(a,b,c){this.a=a;this.b=b;this.c=c;Ekb(a.t,this);Ekb(b.i,this)}\nfunction SRc(){this.b=new Psb;this.a=new Psb;this.b=new Psb;this.a=new Psb}\nfunction g6c(){g6c=ccb;f6c=new Lsd('org.eclipse.elk.labels.labelManager')}\nfunction Vac(){Vac=ccb;Uac=new Msd('separateLayerConnections',(gbc(),fbc))}\nfunction HOc(){HOc=ccb;GOc=new IOc('REGULAR',0);FOc=new IOc('CRITICAL',1)}\nfunction _Ac(){_Ac=ccb;$Ac=new aBc('STACKED',0);ZAc=new aBc('SEQUENCED',1)}\nfunction C_c(){C_c=ccb;B_c=new D_c('FIXED',0);A_c=new D_c('CENTER_NODE',1)}\nfunction PHc(a,b){var c;c=VHc(a,b);a.b=new BHc(c.c.length);return OHc(a,c)}\nfunction KAd(a,b,c){var d;++a.e;--a.f;d=BD(a.d[b].$c(c),133);return d.dd()}\nfunction JJd(a){var b;if(!a.a){b=a.r;JD(b,148)&&(a.a=BD(b,148))}return a.a}\nfunction poc(a){if(a.a){if(a.e){return poc(a.e)}}else{return a}return null}\nfunction ODc(a,b){if(a.pb.p){return -1}return 0}\nfunction pvb(a,b){uCb(b);if(a.c=0,'Initial capacity must not be negative')}\nfunction lHb(){lHb=ccb;kHb=as((gHb(),OC(GC(pN,1),Kie,232,0,[dHb,eHb,fHb])))}\nfunction SHb(){SHb=ccb;RHb=as((NHb(),OC(GC(sN,1),Kie,461,0,[LHb,KHb,MHb])))}\nfunction JIb(){JIb=ccb;IIb=as((EIb(),OC(GC(zN,1),Kie,462,0,[DIb,CIb,BIb])))}\nfunction Kyb(){Kyb=ccb;Jyb=as((Fyb(),OC(GC(xL,1),Kie,132,0,[Cyb,Dyb,Eyb])))}\nfunction DTb(){DTb=ccb;CTb=as((yTb(),OC(GC(oP,1),Kie,379,0,[wTb,vTb,xTb])))}\nfunction WXb(){WXb=ccb;VXb=as((RXb(),OC(GC(hQ,1),Kie,423,0,[QXb,PXb,OXb])))}\nfunction Zpc(){Zpc=ccb;Ypc=as((Rpc(),OC(GC(GW,1),Kie,314,0,[Ppc,Opc,Qpc])))}\nfunction gqc(){gqc=ccb;fqc=as((bqc(),OC(GC(HW,1),Kie,337,0,[$pc,aqc,_pc])))}\nfunction Lqc(){Lqc=ccb;Kqc=as((Gqc(),OC(GC(KW,1),Kie,450,0,[Eqc,Dqc,Fqc])))}\nfunction Kkc(){Kkc=ccb;Jkc=as((Fkc(),OC(GC(vV,1),Kie,361,0,[Ekc,Dkc,Ckc])))}\nfunction jsc(){jsc=ccb;isc=as((esc(),OC(GC(RW,1),Kie,303,0,[csc,dsc,bsc])))}\nfunction asc(){asc=ccb;_rc=as((Xrc(),OC(GC(QW,1),Kie,292,0,[Vrc,Wrc,Urc])))}\nfunction Dzc(){Dzc=ccb;Czc=as((xzc(),OC(GC(ZW,1),Kie,378,0,[uzc,vzc,wzc])))}\nfunction YAc(){YAc=ccb;XAc=as((TAc(),OC(GC(eX,1),Kie,375,0,[QAc,RAc,SAc])))}\nfunction yAc(){yAc=ccb;xAc=as((tAc(),OC(GC(bX,1),Kie,339,0,[rAc,qAc,sAc])))}\nfunction PAc(){PAc=ccb;OAc=as((KAc(),OC(GC(dX,1),Kie,452,0,[JAc,HAc,IAc])))}\nfunction QBc(){QBc=ccb;PBc=as((LBc(),OC(GC(jX,1),Kie,377,0,[JBc,KBc,IBc])))}\nfunction yBc(){yBc=ccb;xBc=as((tBc(),OC(GC(hX,1),Kie,336,0,[qBc,rBc,sBc])))}\nfunction HBc(){HBc=ccb;GBc=as((CBc(),OC(GC(iX,1),Kie,338,0,[BBc,zBc,ABc])))}\nfunction wGc(){wGc=ccb;vGc=as((rGc(),OC(GC(PX,1),Kie,454,0,[oGc,pGc,qGc])))}\nfunction zVc(){zVc=ccb;yVc=as((tVc(),OC(GC(O$,1),Kie,442,0,[sVc,qVc,rVc])))}\nfunction vWc(){vWc=ccb;uWc=as((pWc(),OC(GC(Y$,1),Kie,380,0,[mWc,nWc,oWc])))}\nfunction EYc(){EYc=ccb;DYc=as((zYc(),OC(GC(q_,1),Kie,381,0,[xYc,yYc,wYc])))}\nfunction yXc(){yXc=ccb;xXc=as((sXc(),OC(GC(b_,1),Kie,293,0,[qXc,rXc,pXc])))}\nfunction b_c(){b_c=ccb;a_c=as((Y$c(),OC(GC(J_,1),Kie,437,0,[V$c,W$c,X$c])))}\nfunction mbd(){mbd=ccb;lbd=as((hbd(),OC(GC(z1,1),Kie,334,0,[fbd,ebd,gbd])))}\nfunction vad(){vad=ccb;uad=as((qad(),OC(GC(u1,1),Kie,272,0,[nad,oad,pad])))}\nfunction icd(){dcd();return OC(GC(D1,1),Kie,98,0,[ccd,bcd,acd,Zbd,_bd,$bd])}\nfunction ikd(a,b){return !a.o&&(a.o=new dId((Thd(),Qhd),S2,a,0)),qAd(a.o,b)}\nfunction NAd(a){!a.g&&(a.g=new JCd);!a.g.d&&(a.g.d=new MBd(a));return a.g.d}\nfunction yAd(a){!a.g&&(a.g=new JCd);!a.g.a&&(a.g.a=new SBd(a));return a.g.a}\nfunction EAd(a){!a.g&&(a.g=new JCd);!a.g.b&&(a.g.b=new GBd(a));return a.g.b}\nfunction FAd(a){!a.g&&(a.g=new JCd);!a.g.c&&(a.g.c=new iCd(a));return a.g.c}\nfunction A2d(a,b,c){var d,e;e=new p4d(b,a);for(d=0;dc||b=0?a._g(c,true,true):sid(a,b,true)}\nfunction s6b(a,b){return Kdb(Edb(ED(vNb(a,(wtc(),htc)))),Edb(ED(vNb(b,htc))))}\nfunction pUc(){pUc=ccb;oUc=b3c(b3c(g3c(new j3c,(yRc(),vRc)),(qSc(),pSc)),lSc)}\nfunction IHc(a,b,c){var d;d=SHc(a,b,c);a.b=new BHc(d.c.length);return KHc(a,d)}\nfunction qhe(a){if(a.b<=0)throw vbb(new utb);--a.b;a.a-=a.c.c;return meb(a.a)}\nfunction ptd(a){var b;if(!a.a){throw vbb(new vtb)}b=a.a;a.a=Xod(a.a);return b}\nfunction dBb(a){while(!a.a){if(!HBb(a.c,new hBb(a))){return false}}return true}\nfunction vr(a){var b;Qb(a);if(JD(a,198)){b=BD(a,198);return b}return new wr(a)}\nfunction r3c(a){p3c();BD(a.We((Y9c(),x9c)),174).Fc((rcd(),ocd));a.Ye(w9c,null)}\nfunction p3c(){p3c=ccb;m3c=new v3c;o3c=new x3c;n3c=mn((Y9c(),w9c),m3c,b9c,o3c)}\nfunction fWc(){fWc=ccb;dWc=new hWc('LEAF_NUMBER',0);eWc=new hWc('NODE_SIZE',1)}\nfunction UMc(a,b,c){a.a=b;a.c=c;a.b.a.$b();Osb(a.d);a.e.a.c=KC(SI,Uhe,1,0,5,1)}\nfunction yHc(a){a.a=KC(WD,oje,25,a.b+1,15,1);a.c=KC(WD,oje,25,a.b,15,1);a.d=0}\nfunction MWb(a,b){if(a.a.ue(b.d,a.b)>0){Ekb(a.c,new dWb(b.c,b.d,a.d));a.b=b.d}}\nfunction nud(a,b){if(a.g==null||b>=a.i)throw vbb(new $zd(b,a.i));return a.g[b]}\nfunction pOd(a,b,c){Itd(a,c);if(c!=null&&!a.wj(c)){throw vbb(new tcb)}return c}\nfunction KLd(a){var b;if(a.Ek()){for(b=a.i-1;b>=0;--b){qud(a,b)}}return wud(a)}\nfunction Bwb(a){var b,c;if(!a.b){return null}c=a.b;while(b=c.a[0]){c=b}return c}\nfunction ulb(a,b){var c,d;pCb(b);return c=(d=a.slice(0,b),PC(d,a)),c.length=b,c}\nfunction Klb(a,b,c,d){var e;d=(ipb(),!d?fpb:d);e=a.slice(b,c);Llb(e,a,b,c,-b,d)}\nfunction bid(a,b,c,d,e){return b<0?sid(a,c,d):BD(c,66).Nj().Pj(a,a.yh(),b,d,e)}\nfunction hZd(a){if(JD(a,172)){return ''+BD(a,172).a}return a==null?null:fcb(a)}\nfunction iZd(a){if(JD(a,172)){return ''+BD(a,172).a}return a==null?null:fcb(a)}\nfunction nDb(a,b){if(b.a){throw vbb(new hz(Hke))}Qqb(a.a,b);b.a=a;!a.j&&(a.j=b)}\nfunction qBb(a,b){nvb.call(this,b.rd(),b.qd()&-16449);uCb(a);this.a=a;this.c=b}\nfunction Ti(a,b){var c,d;d=b/a.c.Hd().gc()|0;c=b%a.c.Hd().gc();return Mi(a,d,c)}\nfunction NHb(){NHb=ccb;LHb=new OHb(jle,0);KHb=new OHb(gle,1);MHb=new OHb(kle,2)}\nfunction lxb(){lxb=ccb;hxb=new mxb('All',0);ixb=new rxb;jxb=new txb;kxb=new wxb}\nfunction zxb(){zxb=ccb;yxb=as((lxb(),OC(GC(iL,1),Kie,297,0,[hxb,ixb,jxb,kxb])))}\nfunction uWb(){uWb=ccb;tWb=as((lWb(),OC(GC(SP,1),Kie,405,0,[hWb,kWb,iWb,jWb])))}\nfunction ALb(){ALb=ccb;zLb=as((vLb(),OC(GC(PN,1),Kie,406,0,[uLb,rLb,sLb,tLb])))}\nfunction WMb(){WMb=ccb;VMb=as((RMb(),OC(GC(jO,1),Kie,323,0,[OMb,NMb,PMb,QMb])))}\nfunction WOb(){WOb=ccb;VOb=as((ROb(),OC(GC(CO,1),Kie,394,0,[OOb,NOb,POb,QOb])))}\nfunction GRc(){GRc=ccb;FRc=as((yRc(),OC(GC(h$,1),Kie,393,0,[uRc,vRc,wRc,xRc])))}\nfunction mbc(){mbc=ccb;lbc=as((gbc(),OC(GC(VS,1),Kie,360,0,[fbc,dbc,ebc,cbc])))}\nfunction oXc(){oXc=ccb;nXc=as((iXc(),OC(GC(a_,1),Kie,340,0,[hXc,fXc,gXc,eXc])))}\nfunction Fjc(){Fjc=ccb;Ejc=as((Ajc(),OC(GC(mV,1),Kie,411,0,[wjc,xjc,yjc,zjc])))}\nfunction Pzc(){Pzc=ccb;Ozc=as((Izc(),OC(GC($W,1),Kie,197,0,[Gzc,Hzc,Fzc,Ezc])))}\nfunction ugd(){ugd=ccb;tgd=as((pgd(),OC(GC(k2,1),Kie,396,0,[mgd,ngd,lgd,ogd])))}\nfunction xbd(){xbd=ccb;wbd=as((rbd(),OC(GC(A1,1),Kie,285,0,[qbd,nbd,obd,pbd])))}\nfunction Fad(){Fad=ccb;Ead=as((Aad(),OC(GC(v1,1),Kie,218,0,[zad,xad,wad,yad])))}\nfunction Ied(){Ied=ccb;Hed=as((Ded(),OC(GC(O1,1),Kie,311,0,[Ced,zed,Bed,Aed])))}\nfunction ydd(){ydd=ccb;xdd=as((tdd(),OC(GC(I1,1),Kie,374,0,[rdd,sdd,qdd,pdd])))}\nfunction A9d(){A9d=ccb;Smd();x9d=Pje;w9d=Qje;z9d=new Ndb(Pje);y9d=new Ndb(Qje)}\nfunction _qc(){_qc=ccb;$qc=new arc(ane,0);Zqc=new arc('IMPROVE_STRAIGHTNESS',1)}\nfunction eIc(a,b){FHc();return Ekb(a,new vgd(b,meb(b.e.c.length+b.g.c.length)))}\nfunction gIc(a,b){FHc();return Ekb(a,new vgd(b,meb(b.e.c.length+b.g.c.length)))}\nfunction PC(a,b){HC(b)!=10&&OC(rb(b),b.hm,b.__elementTypeId$,HC(b),a);return a}\nfunction Lkb(a,b){var c;c=Jkb(a,b,0);if(c==-1){return false}Kkb(a,c);return true}\nfunction Zrb(a,b){var c;c=BD(Thb(a.e,b),387);if(c){jsb(c);return c.e}return null}\nfunction Jbb(a){var b;if(Fbb(a)){b=0-a;if(!isNaN(b)){return b}}return zbb(hD(a))}\nfunction Jkb(a,b,c){for(;c=0?fid(a,c,true,true):sid(a,b,true)}\nfunction vgc(a,b){qgc();var c,d;c=ugc(a);d=ugc(b);return !!c&&!!d&&!omb(c.k,d.k)}\nfunction Gqd(a,b){dld(a,b==null||Ldb((uCb(b),b))||isNaN((uCb(b),b))?0:(uCb(b),b))}\nfunction Hqd(a,b){eld(a,b==null||Ldb((uCb(b),b))||isNaN((uCb(b),b))?0:(uCb(b),b))}\nfunction Iqd(a,b){cld(a,b==null||Ldb((uCb(b),b))||isNaN((uCb(b),b))?0:(uCb(b),b))}\nfunction Jqd(a,b){ald(a,b==null||Ldb((uCb(b),b))||isNaN((uCb(b),b))?0:(uCb(b),b))}\nfunction agd(a){(!this.q?(mmb(),mmb(),kmb):this.q).Ac(!a.q?(mmb(),mmb(),kmb):a.q)}\nfunction S2d(a,b){return JD(b,99)&&(BD(b,18).Bb&Tje)!=0?new s4d(b,a):new p4d(b,a)}\nfunction U2d(a,b){return JD(b,99)&&(BD(b,18).Bb&Tje)!=0?new s4d(b,a):new p4d(b,a)}\nfunction INb(a,b){HNb=new tOb;FNb=b;GNb=a;BD(GNb.b,65);KNb(GNb,HNb,null);JNb(GNb)}\nfunction uud(a,b,c){var d;d=a.g[b];mud(a,b,a.oi(b,c));a.gi(b,c,d);a.ci();return d}\nfunction Ftd(a,b){var c;c=a.Xc(b);if(c>=0){a.$c(c);return true}else{return false}}\nfunction YId(a){var b;if(a.d!=a.r){b=wId(a);a.e=!!b&&b.Cj()==Bve;a.d=b}return a.e}\nfunction fr(a,b){var c;Qb(a);Qb(b);c=false;while(b.Ob()){c=c|a.Fc(b.Pb())}return c}\nfunction Wrb(a,b){var c;c=BD(Ohb(a.e,b),387);if(c){Yrb(a,c);return c.e}return null}\nfunction UA(a){var b,c;b=a/60|0;c=a%60;if(c==0){return ''+b}return ''+b+':'+(''+c)}\nfunction LAb(a,b){var c,d;Uzb(a);d=new IBb(b,a.a);c=new fBb(d);return new YAb(a,c)}\nfunction tB(d,a){var b=d.a[a];var c=(rC(),qC)[typeof b];return c?c(b):xC(typeof b)}\nfunction yzc(a){switch(a.g){case 0:return Ohe;case 1:return -1;default:return 0;}}\nfunction oD(a){if(eD(a,(wD(),vD))<0){return -aD(hD(a))}return a.l+a.m*Hje+a.h*Ije}\nfunction HC(a){return a.__elementTypeCategory$==null?10:a.__elementTypeCategory$}\nfunction dub(a){var b;b=a.b.c.length==0?null:Ikb(a.b,0);b!=null&&fub(a,0);return b}\nfunction uA(a,b){while(b[0]=0){++b[0]}}\nfunction sgb(a,b){this.e=b;this.a=vgb(a);this.a<54?(this.f=Sbb(a)):(this.c=ghb(a))}\nfunction vge(a,b,c,d){wfe();xfe.call(this,26);this.c=a;this.a=b;this.d=c;this.b=d}\nfunction EA(a,b,c){var d,e;d=10;for(e=0;ea.a[d]&&(d=c)}return d}\nfunction fic(a,b){var c;c=Jy(a.e.c,b.e.c);if(c==0){return Kdb(a.e.d,b.e.d)}return c}\nfunction Ogb(a,b){if(b.e==0){return Ggb}if(a.e==0){return Ggb}return Dhb(),Ehb(a,b)}\nfunction nCb(a,b){if(!a){throw vbb(new Wdb(DCb('Enum constant undefined: %s',b)))}}\nfunction AWb(){AWb=ccb;xWb=new XWb;yWb=new _Wb;vWb=new dXb;wWb=new hXb;zWb=new lXb}\nfunction UEb(){UEb=ccb;SEb=new VEb('BY_SIZE',0);TEb=new VEb('BY_SIZE_AND_SHAPE',1)}\nfunction XRb(){XRb=ccb;VRb=new YRb('EADES',0);WRb=new YRb('FRUCHTERMAN_REINGOLD',1)}\nfunction xqc(){xqc=ccb;vqc=new yqc('READING_DIRECTION',0);wqc=new yqc('ROTATION',1)}\nfunction uqc(){uqc=ccb;tqc=as((mqc(),OC(GC(IW,1),Kie,335,0,[iqc,hqc,kqc,lqc,jqc])))}\nfunction bAc(){bAc=ccb;aAc=as((Vzc(),OC(GC(_W,1),Kie,315,0,[Uzc,Rzc,Szc,Qzc,Tzc])))}\nfunction bkc(){bkc=ccb;akc=as((Xjc(),OC(GC(uV,1),Kie,363,0,[Tjc,Vjc,Wjc,Ujc,Sjc])))}\nfunction Htc(){Htc=ccb;Gtc=as((Ctc(),OC(GC(TW,1),Kie,163,0,[Btc,xtc,ytc,ztc,Atc])))}\nfunction S_c(){S_c=ccb;R_c=as((N_c(),OC(GC(Q_,1),Kie,316,0,[I_c,J_c,M_c,K_c,L_c])))}\nfunction S5c(){S5c=ccb;R5c=as((N5c(),OC(GC(e1,1),Kie,175,0,[L5c,K5c,I5c,M5c,J5c])))}\nfunction p$c(){p$c=ccb;o$c=as((k$c(),OC(GC(y_,1),Kie,355,0,[g$c,f$c,i$c,h$c,j$c])))}\nfunction vUb(){vUb=ccb;uUb=as((qUb(),OC(GC(zP,1),Kie,356,0,[lUb,mUb,nUb,oUb,pUb])))}\nfunction mad(){mad=ccb;lad=as((ead(),OC(GC(t1,1),Kie,103,0,[cad,bad,aad,_9c,dad])))}\nfunction Ybd(){Ybd=ccb;Xbd=as((Tbd(),OC(GC(C1,1),Kie,249,0,[Qbd,Sbd,Obd,Pbd,Rbd])))}\nfunction cdd(){cdd=ccb;bdd=as((Ucd(),OC(GC(F1,1),bne,61,0,[Scd,Acd,zcd,Rcd,Tcd])))}\nfunction _1c(a,b){var c;c=BD(Ohb(a.a,b),134);if(!c){c=new zNb;Rhb(a.a,b,c)}return c}\nfunction hoc(a){var b;b=BD(vNb(a,(wtc(),usc)),305);if(b){return b.a==a}return false}\nfunction ioc(a){var b;b=BD(vNb(a,(wtc(),usc)),305);if(b){return b.i==a}return false}\nfunction Jub(a,b){uCb(b);Iub(a);if(a.d.Ob()){b.td(a.d.Pb());return true}return false}\nfunction Oy(a){if(ybb(a,Ohe)>0){return Ohe}if(ybb(a,Rie)<0){return Rie}return Tbb(a)}\nfunction Cv(a){if(a<3){Xj(a,Hie);return a+1}if(a=0&&b=-0.01&&a.a<=ple&&(a.a=0);a.b>=-0.01&&a.b<=ple&&(a.b=0);return a}\nfunction sfb(a,b){return b==(ntb(),ntb(),mtb)?a.toLocaleLowerCase():a.toLowerCase()}\nfunction idb(a){return ((a.i&2)!=0?'interface ':(a.i&1)!=0?'':'class ')+(fdb(a),a.o)}\nfunction Pnd(a){var b,c;c=(b=new SSd,b);wtd((!a.q&&(a.q=new cUd(n5,a,11,10)),a.q),c)}\nfunction Pdd(a,b){var c;c=b>0?b-1:b;return Vdd(Wdd(Xdd(Ydd(new Zdd,c),a.n),a.j),a.k)}\nfunction u2d(a,b,c,d){var e;a.j=-1;Qxd(a,I2d(a,b,c),(Q6d(),e=BD(b,66).Mj(),e.Ok(d)))}\nfunction VWb(a){this.g=a;this.f=new Rkb;this.a=$wnd.Math.min(this.g.c.c,this.g.d.c)}\nfunction mDb(a){this.b=new Rkb;this.a=new Rkb;this.c=new Rkb;this.d=new Rkb;this.e=a}\nfunction Cnc(a,b){this.a=new Lqb;this.e=new Lqb;this.b=(xzc(),wzc);this.c=a;this.b=b}\nfunction bIb(a,b,c){$Gb.call(this);THb(this);this.a=a;this.c=c;this.b=b.d;this.f=b.e}\nfunction yd(a){this.d=a;this.c=a.c.vc().Kc();this.b=null;this.a=null;this.e=(hs(),gs)}\nfunction zud(a){if(a<0){throw vbb(new Wdb('Illegal Capacity: '+a))}this.g=this.ri(a)}\nfunction avb(a,b){if(0>a||a>b){throw vbb(new scb('fromIndex: 0, toIndex: '+a+oke+b))}}\nfunction Gs(a){var b;if(a.a==a.b.a){throw vbb(new utb)}b=a.a;a.c=b;a.a=a.a.e;return b}\nfunction Zsb(a){var b;yCb(!!a.c);b=a.c.a;Nsb(a.d,a.c);a.b==a.c?(a.b=b):--a.a;a.c=null}\nfunction VAb(a,b){var c;Uzb(a);c=new lBb(a,a.a.rd(),a.a.qd()|4,b);return new YAb(a,c)}\nfunction ke(a,b){var c,d;c=BD(Hv(a.d,b),14);if(!c){return null}d=b;return a.e.pc(d,c)}\nfunction xac(a,b){var c,d;for(d=a.Kc();d.Ob();){c=BD(d.Pb(),70);yNb(c,(wtc(),Ssc),b)}}\nfunction t9b(a){var b;b=Edb(ED(vNb(a,(Nyc(),Zwc))));if(b<0){b=0;yNb(a,Zwc,b)}return b}\nfunction ifc(a,b,c){var d;d=$wnd.Math.max(0,a.b/2-0.5);cfc(c,d,1);Ekb(b,new rfc(c,d))}\nfunction NMc(a,b,c){var d;d=a.a.e[BD(b.a,10).p]-a.a.e[BD(c.a,10).p];return QD(Eeb(d))}\nfunction iZb(a,b,c,d,e,f){var g;g=kZb(d);QZb(g,e);RZb(g,f);Rc(a.a,d,new BZb(g,b,c.f))}\nfunction Bid(a,b){var c;c=YKd(a.Tg(),b);if(!c){throw vbb(new Wdb(ite+b+lte))}return c}\nfunction ntd(a,b){var c;c=a;while(Xod(c)){c=Xod(c);if(c==b){return true}}return false}\nfunction Uw(a,b){var c,d,e;d=b.a.cd();c=BD(b.a.dd(),14).gc();for(e=0;e0){a.a/=b;a.b/=b}return a}\nfunction bKd(a){var b;if(a.w){return a.w}else{b=cKd(a);!!b&&!b.kh()&&(a.w=b);return b}}\nfunction gZd(a){var b;if(a==null){return null}else{b=BD(a,190);return Umd(b,b.length)}}\nfunction qud(a,b){if(a.g==null||b>=a.i)throw vbb(new $zd(b,a.i));return a.li(b,a.g[b])}\nfunction Mmc(a){var b,c;b=a.a.d.j;c=a.c.d.j;while(b!=c){rqb(a.b,b);b=Xcd(b)}rqb(a.b,b)}\nfunction Jmc(a){var b;for(b=0;b=14&&b<=16)));return a}\nfunction dcb(a,b,c){var d=function(){return a.apply(d,arguments)};b.apply(d,c);return d}\nfunction TLc(a,b,c){var d,e;d=b;do{e=Edb(a.p[d.p])+c;a.p[d.p]=e;d=a.a[d.p]}while(d!=b)}\nfunction NQd(a,b){var c,d;d=a.a;c=OQd(a,b,null);d!=b&&!a.e&&(c=QQd(a,b,c));!!c&&c.Fi()}\nfunction ADb(a,b){return Iy(),My(Qie),$wnd.Math.abs(a-b)<=Qie||a==b||isNaN(a)&&isNaN(b)}\nfunction Ky(a,b){Iy();My(Qie);return $wnd.Math.abs(a-b)<=Qie||a==b||isNaN(a)&&isNaN(b)}\nfunction Akc(a,b){gkc();return beb(a.b.c.length-a.e.c.length,b.b.c.length-b.e.c.length)}\nfunction oo(a,b){return Kv(uo(a,b,Tbb(Ibb(Eie,keb(Tbb(Ibb(b==null?0:tb(b),Fie)),15)))))}\nfunction o0b(){o0b=ccb;n0b=as((j0b(),OC(GC(NQ,1),Kie,267,0,[h0b,g0b,e0b,i0b,f0b,d0b])))}\nfunction n8c(){n8c=ccb;m8c=as((i8c(),OC(GC(r1,1),Kie,291,0,[h8c,g8c,f8c,d8c,c8c,e8c])))}\nfunction K7c(){K7c=ccb;J7c=as((F7c(),OC(GC(o1,1),Kie,248,0,[z7c,C7c,D7c,E7c,A7c,B7c])))}\nfunction Fpc(){Fpc=ccb;Epc=as((Apc(),OC(GC(EW,1),Kie,227,0,[wpc,ypc,vpc,xpc,zpc,upc])))}\nfunction Drc(){Drc=ccb;Crc=as((yrc(),OC(GC(OW,1),Kie,275,0,[wrc,trc,xrc,vrc,urc,rrc])))}\nfunction qrc(){qrc=ccb;prc=as((lrc(),OC(GC(NW,1),Kie,274,0,[irc,hrc,krc,grc,jrc,frc])))}\nfunction tzc(){tzc=ccb;szc=as((lzc(),OC(GC(YW,1),Kie,313,0,[jzc,hzc,fzc,gzc,kzc,izc])))}\nfunction Yqc(){Yqc=ccb;Xqc=as((Sqc(),OC(GC(LW,1),Kie,276,0,[Nqc,Mqc,Pqc,Oqc,Rqc,Qqc])))}\nfunction wSc(){wSc=ccb;vSc=as((qSc(),OC(GC(t$,1),Kie,327,0,[pSc,lSc,nSc,mSc,oSc,kSc])))}\nfunction ycd(){ycd=ccb;xcd=as((rcd(),OC(GC(E1,1),Kie,273,0,[pcd,ncd,ocd,mcd,lcd,qcd])))}\nfunction Rad(){Rad=ccb;Qad=as((Mad(),OC(GC(w1,1),Kie,312,0,[Kad,Iad,Lad,Gad,Jad,Had])))}\nfunction Lbd(){Hbd();return OC(GC(B1,1),Kie,93,0,[zbd,ybd,Bbd,Gbd,Fbd,Ebd,Cbd,Dbd,Abd])}\nfunction vkd(a,b){var c;c=a.a;a.a=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new lSd(a,0,c,a.a))}\nfunction wkd(a,b){var c;c=a.b;a.b=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new lSd(a,1,c,a.b))}\nfunction hmd(a,b){var c;c=a.b;a.b=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new lSd(a,3,c,a.b))}\nfunction ald(a,b){var c;c=a.f;a.f=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new lSd(a,3,c,a.f))}\nfunction cld(a,b){var c;c=a.g;a.g=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new lSd(a,4,c,a.g))}\nfunction dld(a,b){var c;c=a.i;a.i=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new lSd(a,5,c,a.i))}\nfunction eld(a,b){var c;c=a.j;a.j=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new lSd(a,6,c,a.j))}\nfunction omd(a,b){var c;c=a.j;a.j=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new lSd(a,1,c,a.j))}\nfunction imd(a,b){var c;c=a.c;a.c=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new lSd(a,4,c,a.c))}\nfunction pmd(a,b){var c;c=a.k;a.k=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new lSd(a,2,c,a.k))}\nfunction qQd(a,b){var c;c=a.d;a.d=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new mSd(a,2,c,a.d))}\nfunction AId(a,b){var c;c=a.s;a.s=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new mSd(a,4,c,a.s))}\nfunction DId(a,b){var c;c=a.t;a.t=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new mSd(a,5,c,a.t))}\nfunction _Jd(a,b){var c;c=a.F;a.F=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,5,c,b))}\nfunction izd(a,b){var c;c=BD(Ohb((pEd(),oEd),a),55);return c?c.xj(b):KC(SI,Uhe,1,b,5,1)}\nfunction Xpd(a,b){var c,d;c=b in a.a;if(c){d=aC(a,b).he();if(d){return d.a}}return null}\nfunction ftd(a,b){var c,d,e;c=(d=(Fhd(),e=new Jod,e),!!b&&God(d,b),d);Hod(c,a);return c}\nfunction LLd(a,b,c){Itd(a,c);if(!a.Bk()&&c!=null&&!a.wj(c)){throw vbb(new tcb)}return c}\nfunction Xdd(a,b){a.n=b;if(a.n){a.f=new Rkb;a.e=new Rkb}else{a.f=null;a.e=null}return a}\nfunction ndb(a,b,c,d,e,f){var g;g=ldb(a,b);zdb(c,g);g.i=e?8:0;g.f=d;g.e=e;g.g=f;return g}\nfunction rSd(a,b,c,d,e){this.d=b;this.k=d;this.f=e;this.o=-1;this.p=1;this.c=a;this.a=c}\nfunction tSd(a,b,c,d,e){this.d=b;this.k=d;this.f=e;this.o=-1;this.p=2;this.c=a;this.a=c}\nfunction BSd(a,b,c,d,e){this.d=b;this.k=d;this.f=e;this.o=-1;this.p=6;this.c=a;this.a=c}\nfunction GSd(a,b,c,d,e){this.d=b;this.k=d;this.f=e;this.o=-1;this.p=7;this.c=a;this.a=c}\nfunction xSd(a,b,c,d,e){this.d=b;this.j=d;this.e=e;this.o=-1;this.p=4;this.c=a;this.a=c}\nfunction rDb(a,b){var c,d,e,f;for(d=b,e=0,f=d.length;e=0);if(ekb(a.d,a.c)<0){a.a=a.a-1&a.d.a.length-1;a.b=a.d.c}a.c=-1}\nfunction pgb(a){if(a.a<54){return a.f<0?-1:a.f>0?1:0}return (!a.c&&(a.c=fhb(a.f)),a.c).e}\nfunction My(a){if(!(a>=0)){throw vbb(new Wdb('tolerance ('+a+') must be >= 0'))}return a}\nfunction n4c(){if(!f4c){f4c=new m4c;l4c(f4c,OC(GC(C0,1),Uhe,130,0,[new Z9c]))}return f4c}\nfunction KAc(){KAc=ccb;JAc=new LAc(ole,0);HAc=new LAc('INPUT',1);IAc=new LAc('OUTPUT',2)}\nfunction bqc(){bqc=ccb;$pc=new cqc('ARD',0);aqc=new cqc('MSD',1);_pc=new cqc('MANUAL',2)}\nfunction rGc(){rGc=ccb;oGc=new sGc('BARYCENTER',0);pGc=new sGc(Bne,1);qGc=new sGc(Cne,2)}\nfunction ztd(a,b){var c;c=a.gc();if(b<0||b>c)throw vbb(new Cyd(b,c));return new czd(a,b)}\nfunction JAd(a,b){var c;if(JD(b,42)){return a.c.Mc(b)}else{c=qAd(a,b);LAd(a,b);return c}}\nfunction $nd(a,b,c){yId(a,b);pnd(a,c);AId(a,0);DId(a,1);CId(a,true);BId(a,true);return a}\nfunction Xj(a,b){if(a<0){throw vbb(new Wdb(b+' cannot be negative but was: '+a))}return a}\nfunction Bt(a,b){var c,d;for(c=0,d=a.gc();c0){return BD(Ikb(c.a,d-1),10)}return null}\nfunction Lkd(a,b){var c;c=a.k;a.k=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,2,c,a.k))}\nfunction kmd(a,b){var c;c=a.f;a.f=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,8,c,a.f))}\nfunction lmd(a,b){var c;c=a.i;a.i=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,7,c,a.i))}\nfunction Hod(a,b){var c;c=a.a;a.a=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,8,c,a.a))}\nfunction zpd(a,b){var c;c=a.b;a.b=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,0,c,a.b))}\nfunction UUd(a,b){var c;c=a.b;a.b=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,0,c,a.b))}\nfunction VUd(a,b){var c;c=a.c;a.c=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,1,c,a.c))}\nfunction Apd(a,b){var c;c=a.c;a.c=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,1,c,a.c))}\nfunction pQd(a,b){var c;c=a.c;a.c=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,4,c,a.c))}\nfunction PHd(a,b){var c;c=a.d;a.d=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,1,c,a.d))}\nfunction jKd(a,b){var c;c=a.D;a.D=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,2,c,a.D))}\nfunction Rdd(a,b){if(a.r>0&&a.c0&&a.g!=0&&Rdd(a.i,b/a.r*a.i.d)}}\nfunction dge(a,b,c){var d;a.b=b;a.a=c;d=(a.a&512)==512?new hee:new ude;a.c=ode(d,a.b,a.a)}\nfunction g3d(a,b){return T6d(a.e,b)?(Q6d(),YId(b)?new R7d(b,a):new f7d(b,a)):new c8d(b,a)}\nfunction _o(a,b){return Fv(vo(a.a,b,Tbb(Ibb(Eie,keb(Tbb(Ibb(b==null?0:tb(b),Fie)),15)))))}\nfunction Nyb(a,b,c){return Ayb(a,new Kzb(b),new Mzb,new Ozb(c),OC(GC(xL,1),Kie,132,0,[]))}\nfunction pAb(a){var b,c;if(0>a){return new yAb}b=a+1;c=new rAb(b,a);return new vAb(null,c)}\nfunction umb(a,b){mmb();var c;c=new Mqb(1);ND(a)?Shb(c,a,b):jrb(c.f,a,b);return new iob(c)}\nfunction aMb(a,b){var c,d;c=a.o+a.p;d=b.o+b.p;if(cb){b<<=1;return b>0?b:Iie}return b}\nfunction xc(a){Ub(a.e!=3);switch(a.e){case 2:return false;case 0:return true;}return zc(a)}\nfunction T6c(a,b){var c;if(JD(b,8)){c=BD(b,8);return a.a==c.a&&a.b==c.b}else{return false}}\nfunction _Mb(a,b,c){var d,e,f;f=b>>5;e=b&31;d=xbb(Pbb(a.n[c][f],Tbb(Nbb(e,1))),3);return d}\nfunction IAd(a,b){var c,d;for(d=b.vc().Kc();d.Ob();){c=BD(d.Pb(),42);HAd(a,c.cd(),c.dd())}}\nfunction N1c(a,b){var c;c=new tOb;BD(b.b,65);BD(b.b,65);BD(b.b,65);Hkb(b.a,new T1c(a,c,b))}\nfunction DUd(a,b){var c;c=a.b;a.b=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,21,c,a.b))}\nfunction jmd(a,b){var c;c=a.d;a.d=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,11,c,a.d))}\nfunction _Id(a,b){var c;c=a.j;a.j=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,13,c,a.j))}\nfunction $jb(a,b,c){var d,e,f;f=a.a.length-1;for(e=a.b,d=0;d>>31}d!=0&&(a[c]=d)}\nfunction rmb(a,b){mmb();var c,d;d=new Rkb;for(c=0;c0){this.g=this.ri(this.i+(this.i/8|0)+1);a.Qc(this.g)}}\nfunction u3d(a,b){k2d.call(this,D9,a,b);this.b=this;this.a=S6d(a.Tg(),XKd(this.e.Tg(),this.c))}\nfunction Ld(a,b){var c,d;uCb(b);for(d=b.vc().Kc();d.Ob();){c=BD(d.Pb(),42);a.zc(c.cd(),c.dd())}}\nfunction G2d(a,b,c){var d;for(d=c.Kc();d.Ob();){if(!E2d(a,b,d.Pb())){return false}}return true}\nfunction sVd(a,b,c,d,e){var f;if(c){f=bLd(b.Tg(),a.c);e=c.gh(b,-1-(f==-1?d:f),null,e)}return e}\nfunction tVd(a,b,c,d,e){var f;if(c){f=bLd(b.Tg(),a.c);e=c.ih(b,-1-(f==-1?d:f),null,e)}return e}\nfunction Mgb(a){var b;if(a.b==-2){if(a.e==0){b=-1}else{for(b=0;a.a[b]==0;b++);}a.b=b}return a.b}\nfunction Z4b(a){switch(a.g){case 2:return Ucd(),Tcd;case 4:return Ucd(),zcd;default:return a;}}\nfunction $4b(a){switch(a.g){case 1:return Ucd(),Rcd;case 3:return Ucd(),Acd;default:return a;}}\nfunction nkc(a){var b,c,d;return a.j==(Ucd(),Acd)&&(b=pkc(a),c=uqb(b,zcd),d=uqb(b,Tcd),d||d&&c)}\nfunction oqb(a){var b,c;b=BD(a.e&&a.e(),9);c=BD(ZBb(b,b.length),9);return new xqb(b,c,b.length)}\nfunction l7b(a,b){Odd(b,zne,1);UGb(TGb(new YGb((a$b(),new l$b(a,false,false,new T$b)))));Qdd(b)}\nfunction Fcb(a,b){Bcb();return ND(a)?cfb(a,GD(b)):LD(a)?Ddb(a,ED(b)):KD(a)?Dcb(a,DD(b)):a.wd(b)}\nfunction WZc(a,b){b.q=a;a.d=$wnd.Math.max(a.d,b.r);a.b+=b.d+(a.a.c.length==0?0:a.c);Ekb(a.a,b)}\nfunction m6c(a,b){var c,d,e,f;e=a.c;c=a.c+a.b;f=a.d;d=a.d+a.a;return b.a>e&&b.af&&b.b1||a.Ob()){++a.a;a.g=0;b=a.i;a.Ob();return b}else{throw vbb(new utb)}}\nfunction kNc(a){fNc();var b;if(!Lpb(eNc,a)){b=new hNc;b.a=a;Opb(eNc,a,b)}return BD(Mpb(eNc,a),635)}\nfunction Rbb(a){var b,c,d,e;e=a;d=0;if(e<0){e+=Ije;d=Fje}c=QD(e/Hje);b=QD(e-c*Hje);return TC(b,c,d)}\nfunction Ox(a){var b,c,d;d=0;for(c=new Gqb(a.a);c.a>22);e=a.h+b.h+(d>>22);return TC(c&Eje,d&Eje,e&Fje)}\nfunction nD(a,b){var c,d,e;c=a.l-b.l;d=a.m-b.m+(c>>22);e=a.h-b.h+(d>>22);return TC(c&Eje,d&Eje,e&Fje)}\nfunction bdb(a){var b;if(a<128){b=(ddb(),cdb)[a];!b&&(b=cdb[a]=new Xcb(a));return b}return new Xcb(a)}\nfunction ubb(a){var b;if(JD(a,78)){return a}b=a&&a.__java$exception;if(!b){b=new lz(a);Sz(b)}return b}\nfunction btd(a){if(JD(a,186)){return BD(a,118)}else if(!a){throw vbb(new Heb(gue))}else{return null}}\nfunction Zjb(a,b){if(b==null){return false}while(a.a!=a.b){if(pb(b,vkb(a))){return true}}return false}\nfunction kib(a){if(a.a.Ob()){return true}if(a.a!=a.d){return false}a.a=new orb(a.e.f);return a.a.Ob()}\nfunction Gkb(a,b){var c,d;c=b.Pc();d=c.length;if(d==0){return false}bCb(a.c,a.c.length,c);return true}\nfunction Vyb(a,b,c){var d,e;for(e=b.vc().Kc();e.Ob();){d=BD(e.Pb(),42);a.yc(d.cd(),d.dd(),c)}return a}\nfunction yac(a,b){var c,d;for(d=new olb(a.b);d.a=0,'Negative initial capacity');mCb(b>=0,'Non-positive load factor');Uhb(this)}\nfunction _Ed(a,b,c){if(a>=128)return false;return a<64?Kbb(xbb(Nbb(1,a),c),0):Kbb(xbb(Nbb(1,a-64),b),0)}\nfunction bOb(a,b){if(!a||!b||a==b){return false}return Jy(a.b.c,b.b.c+b.b.b)<0&&Jy(b.b.c,a.b.c+a.b.b)<0}\nfunction I4b(a){var b,c,d;c=a.n;d=a.o;b=a.d;return new J6c(c.a-b.b,c.b-b.d,d.a+(b.b+b.c),d.b+(b.d+b.a))}\nfunction $ic(a){var b,c,d,e;for(c=a.a,d=0,e=c.length;dd)throw vbb(new Cyd(b,d));a.hi()&&(c=Dtd(a,c));return a.Vh(b,c)}\nfunction xNb(a,b,c){return c==null?(!a.q&&(a.q=new Lqb),Thb(a.q,b)):(!a.q&&(a.q=new Lqb),Rhb(a.q,b,c)),a}\nfunction yNb(a,b,c){c==null?(!a.q&&(a.q=new Lqb),Thb(a.q,b)):(!a.q&&(a.q=new Lqb),Rhb(a.q,b,c));return a}\nfunction TQb(a){var b,c;c=new kRb;tNb(c,a);yNb(c,(HSb(),FSb),a);b=new Lqb;VQb(a,c,b);UQb(a,c,b);return c}\nfunction j6c(a){i6c();var b,c,d;c=KC(m1,nie,8,2,0,1);d=0;for(b=0;b<2;b++){d+=0.5;c[b]=r6c(d,a)}return c}\nfunction Mic(a,b){var c,d,e,f;c=false;d=a.a[b].length;for(f=0;f>=1);return b}}\nfunction $C(a){var b,c;c=heb(a.h);if(c==32){b=heb(a.m);return b==32?heb(a.l)+32:b+20-10}else{return c-12}}\nfunction bkb(a){var b;b=a.a[a.b];if(b==null){return null}NC(a.a,a.b,null);a.b=a.b+1&a.a.length-1;return b}\nfunction EDc(a){var b,c;b=a.t-a.k[a.o.p]*a.d+a.j[a.o.p]>a.f;c=a.u+a.e[a.o.p]*a.d>a.f*a.s*a.d;return b||c}\nfunction Iwb(a,b,c){var d,e;d=new exb(b,c);e=new fxb;a.b=Gwb(a,a.b,d,e);e.b||++a.c;a.b.b=false;return e.d}\nfunction djc(a,b,c){var d,e,f,g;g=CHc(b,c);f=0;for(e=g.Kc();e.Ob();){d=BD(e.Pb(),11);Rhb(a.c,d,meb(f++))}}\nfunction xVb(a){var b,c;for(c=new olb(a.a.b);c.ac&&(c=a[b])}return c}\nfunction SHc(a,b,c){var d;d=new Rkb;UHc(a,b,d,(Ucd(),zcd),true,false);UHc(a,c,d,Tcd,false,false);return d}\nfunction crd(a,b,c){var d,e,f,g;f=null;g=b;e=Ypd(g,'labels');d=new Hrd(a,c);f=(Dqd(d.a,d.b,e),e);return f}\nfunction j1d(a,b,c,d){var e;e=r1d(a,b,c,d);if(!e){e=i1d(a,c,d);if(!!e&&!e1d(a,b,e)){return null}}return e}\nfunction m1d(a,b,c,d){var e;e=s1d(a,b,c,d);if(!e){e=l1d(a,c,d);if(!!e&&!e1d(a,b,e)){return null}}return e}\nfunction Xb(a,b){var c;for(c=0;c1||b>=0&&a.b<3}\nfunction w7c(a){var b,c,d;b=new s7c;for(d=Jsb(a,0);d.b!=d.d.c;){c=BD(Xsb(d),8);St(b,0,new g7c(c))}return b}\nfunction qVb(a){var b,c;for(c=new olb(a.a.b);c.ad?1:0}\nfunction NYb(a,b){if(OYb(a,b)){Rc(a.b,BD(vNb(b,(wtc(),Esc)),21),b);Dsb(a.a,b);return true}else{return false}}\nfunction d3b(a){var b,c;b=BD(vNb(a,(wtc(),gtc)),10);if(b){c=b.c;Lkb(c.a,b);c.a.c.length==0&&Lkb(Q_b(b).b,c)}}\nfunction syb(a){if(lyb){return KC(qL,tke,572,0,0,1)}return BD(Qkb(a.a,KC(qL,tke,572,a.a.c.length,0,1)),842)}\nfunction mn(a,b,c,d){Vm();return new wx(OC(GC(CK,1),zie,42,0,[(Wj(a,b),new Wo(a,b)),(Wj(c,d),new Wo(c,d))]))}\nfunction Dnd(a,b,c){var d,e;e=(d=new SSd,d);$nd(e,b,c);wtd((!a.q&&(a.q=new cUd(n5,a,11,10)),a.q),e);return e}\nfunction Zmd(a){var b,c,d,e;e=icb(Rmd,a);c=e.length;d=KC(ZI,nie,2,c,6,1);for(b=0;b=a.b.c.length){return}aub(a,2*b+1);c=2*b+2;c=0&&a[d]===b[d];d--);return d<0?0:Gbb(xbb(a[d],Yje),xbb(b[d],Yje))?-1:1}\nfunction UFc(a,b){var c,d;for(d=Jsb(a,0);d.b!=d.d.c;){c=BD(Xsb(d),214);if(c.e.length>0){b.td(c);c.i&&_Fc(c)}}}\nfunction nzd(a,b){var c,d;d=BD(Ajd(a.a,4),126);c=KC($3,hve,415,b,0,1);d!=null&&$fb(d,0,c,0,d.length);return c}\nfunction JEd(a,b){var c;c=new NEd((a.f&256)!=0,a.i,a.a,a.d,(a.f&16)!=0,a.j,a.g,b);a.e!=null||(c.c=a);return c}\nfunction Dc(a,b){var c,d;for(d=a.Zb().Cc().Kc();d.Ob();){c=BD(d.Pb(),14);if(c.Hc(b)){return true}}return false}\nfunction oNb(a,b,c,d,e){var f,g;for(g=c;g<=e;g++){for(f=b;f<=d;f++){if(YMb(a,f,g)){return true}}}return false}\nfunction Tt(a,b,c){var d,e,f,g;uCb(c);g=false;f=a.Zc(b);for(e=c.Kc();e.Ob();){d=e.Pb();f.Rb(d);g=true}return g}\nfunction Dv(a,b){var c;if(a===b){return true}else if(JD(b,83)){c=BD(b,83);return Ax(Wm(a),c.vc())}return false}\nfunction Nhb(a,b,c){var d,e;for(e=c.Kc();e.Ob();){d=BD(e.Pb(),42);if(a.re(b,d.dd())){return true}}return false}\nfunction Hic(a,b,c){if(!a.d[b.p][c.p]){Gic(a,b,c);a.d[b.p][c.p]=true;a.d[c.p][b.p]=true}return a.a[b.p][c.p]}\nfunction Itd(a,b){if(!a.ai()&&b==null){throw vbb(new Wdb(\"The 'no null' constraint is violated\"))}return b}\nfunction $Jd(a,b){if(a.D==null&&a.B!=null){a.D=a.B;a.B=null}jKd(a,b==null?null:(uCb(b),b));!!a.C&&a.yk(null)}\nfunction XHc(a,b){var c;if(!a||a==b||!wNb(b,(wtc(),Psc))){return false}c=BD(vNb(b,(wtc(),Psc)),10);return c!=a}\nfunction b4d(a){switch(a.i){case 2:{return true}case 1:{return false}case -1:{++a.c}default:{return a.pl()}}}\nfunction c4d(a){switch(a.i){case -2:{return true}case -1:{return false}case 1:{--a.c}default:{return a.ql()}}}\nfunction Xdb(a){Zy.call(this,'The given string does not match the expected format for individual spacings.',a)}\nfunction pgd(){pgd=ccb;mgd=new qgd('ELK',0);ngd=new qgd('JSON',1);lgd=new qgd('DOT',2);ogd=new qgd('SVG',3)}\nfunction pWc(){pWc=ccb;mWc=new rWc(ane,0);nWc=new rWc('RADIAL_COMPACTION',1);oWc=new rWc('WEDGE_COMPACTION',2)}\nfunction Fyb(){Fyb=ccb;Cyb=new Gyb('CONCURRENT',0);Dyb=new Gyb('IDENTITY_FINISH',1);Eyb=new Gyb('UNORDERED',2)}\nfunction nPb(){nPb=ccb;kPb=(cPb(),bPb);jPb=new Nsd(Tle,kPb);iPb=new Lsd(Ule);lPb=new Lsd(Vle);mPb=new Lsd(Wle)}\nfunction Occ(){Occ=ccb;Mcc=new Zcc;Ncc=new _cc;Lcc=new bdc;Kcc=new fdc;Jcc=new jdc;Icc=(uCb(Jcc),new bpb)}\nfunction tBc(){tBc=ccb;qBc=new uBc('CONSERVATIVE',0);rBc=new uBc('CONSERVATIVE_SOFT',1);sBc=new uBc('SLOPPY',2)}\nfunction Zad(){Zad=ccb;Xad=new q0b(15);Wad=new Osd((Y9c(),f9c),Xad);Yad=C9c;Sad=s8c;Tad=Y8c;Vad=_8c;Uad=$8c}\nfunction o7c(a,b,c){var d,e,f;d=new Psb;for(f=Jsb(c,0);f.b!=f.d.c;){e=BD(Xsb(f),8);Dsb(d,new g7c(e))}Tt(a,b,d)}\nfunction r7c(a){var b,c,d;b=0;d=KC(m1,nie,8,a.b,0,1);c=Jsb(a,0);while(c.b!=c.d.c){d[b++]=BD(Xsb(c),8)}return d}\nfunction $Pd(a){var b;b=(!a.a&&(a.a=new cUd(g5,a,9,5)),a.a);if(b.i!=0){return nQd(BD(qud(b,0),678))}return null}\nfunction Ly(a,b){var c;c=wbb(a,b);if(Gbb(Vbb(a,b),0)|Ebb(Vbb(a,c),0)){return c}return wbb(rie,Vbb(Pbb(c,63),1))}\nfunction Yyc(a,b){var c;c=Ksd((dzc(),bzc))!=null&&b.wg()!=null?Edb(ED(b.wg()))/Edb(ED(Ksd(bzc))):1;Rhb(a.b,b,c)}\nfunction le(a,b){var c,d;c=BD(a.d.Bc(b),14);if(!c){return null}d=a.e.hc();d.Gc(c);a.e.d-=c.gc();c.$b();return d}\nfunction AHc(a,b){var c,d;d=a.c[b];if(d==0){return}a.c[b]=0;a.d-=d;c=b+1;while(c0){return _vb(b-1,a.a.c.length),Kkb(a.a,b-1)}else{throw vbb(new Jpb)}}\nfunction C2c(a,b,c){if(b<0){throw vbb(new qcb(ese+b))}if(bb){throw vbb(new Wdb(xke+a+yke+b))}if(a<0||b>c){throw vbb(new scb(xke+a+zke+b+oke+c))}}\nfunction j5c(a){if(!a.a||(a.a.i&8)==0){throw vbb(new Zdb('Enumeration class expected for layout option '+a.f))}}\nfunction vud(a){var b;++a.j;if(a.i==0){a.g=null}else if(a.iRqe?a-c>Rqe:c-a>Rqe}\nfunction pHb(a,b){if(!a){return 0}if(b&&!a.j){return 0}if(JD(a,124)){if(BD(a,124).a.b==0){return 0}}return a.Re()}\nfunction qHb(a,b){if(!a){return 0}if(b&&!a.k){return 0}if(JD(a,124)){if(BD(a,124).a.a==0){return 0}}return a.Se()}\nfunction fhb(a){Hgb();if(a<0){if(a!=-1){return new Tgb(-1,-a)}return Bgb}else return a<=10?Dgb[QD(a)]:new Tgb(1,a)}\nfunction xC(a){rC();throw vbb(new MB(\"Unexpected typeof result '\"+a+\"'; please report this bug to the GWT team\"))}\nfunction lz(a){jz();Py(this);Ry(this);this.e=a;Sy(this,a);this.g=a==null?Xhe:fcb(a);this.a='';this.b=a;this.a=''}\nfunction F$c(){this.a=new G$c;this.f=new I$c(this);this.b=new K$c(this);this.i=new M$c(this);this.e=new O$c(this)}\nfunction ss(){rs.call(this,new _rb(Cv(16)));Xj(2,mie);this.b=2;this.a=new Ms(null,null,0,null);As(this.a,this.a)}\nfunction xzc(){xzc=ccb;uzc=new zzc('DUMMY_NODE_OVER',0);vzc=new zzc('DUMMY_NODE_UNDER',1);wzc=new zzc('EQUAL',2)}\nfunction LUb(){LUb=ccb;JUb=Fx(OC(GC(t1,1),Kie,103,0,[(ead(),aad),bad]));KUb=Fx(OC(GC(t1,1),Kie,103,0,[dad,_9c]))}\nfunction VQc(a){return (Ucd(),Lcd).Hc(a.j)?Edb(ED(vNb(a,(wtc(),qtc)))):l7c(OC(GC(m1,1),nie,8,0,[a.i.n,a.n,a.a])).b}\nfunction DOb(a){var b,c,d,e;d=a.b.a;for(c=d.a.ec().Kc();c.Ob();){b=BD(c.Pb(),561);e=new MPb(b,a.e,a.f);Ekb(a.g,e)}}\nfunction yId(a,b){var c,d,e;d=a.nk(b,null);e=null;if(b){e=(LFd(),c=new UQd,c);NQd(e,a.r)}d=xId(a,e,d);!!d&&d.Fi()}\nfunction VFc(a,b){var c,d;d=Cub(a.d,1)!=0;c=true;while(c){c=false;c=b.c.Tf(b.e,d);c=c|dGc(a,b,d,false);d=!d}$Fc(a)}\nfunction wZc(a,b){var c,d,e;d=false;c=b.q.d;if(b.de){$Zc(b.q,e);d=c!=b.q.d}}return d}\nfunction PVc(a,b){var c,d,e,f,g,h,i,j;i=b.i;j=b.j;d=a.f;e=d.i;f=d.j;g=i-e;h=j-f;c=$wnd.Math.sqrt(g*g+h*h);return c}\nfunction Rnd(a,b){var c,d;d=jid(a);if(!d){!And&&(And=new lUd);c=(IEd(),PEd(b));d=new s0d(c);wtd(d.Vk(),a)}return d}\nfunction Sc(a,b){var c,d;c=BD(a.c.Bc(b),14);if(!c){return a.jc()}d=a.hc();d.Gc(c);a.d-=c.gc();c.$b();return a.mc(d)}\nfunction j7c(a,b){var c;for(c=0;c=a.c.b:a.a<=a.c.b)){throw vbb(new utb)}b=a.a;a.a+=a.c.c;++a.b;return meb(b)}\nfunction BWb(a){var b;b=new VWb(a);rXb(a.a,zWb,new amb(OC(GC(bQ,1),Uhe,369,0,[b])));!!b.d&&Ekb(b.f,b.d);return b.f}\nfunction Z1b(a){var b;b=new q_b(a.a);tNb(b,a);yNb(b,(wtc(),$sc),a);b.o.a=a.g;b.o.b=a.f;b.n.a=a.i;b.n.b=a.j;return b}\nfunction A9b(a,b,c,d){var e,f;for(f=a.Kc();f.Ob();){e=BD(f.Pb(),70);e.n.a=b.a+(d.a-e.o.a)/2;e.n.b=b.b;b.b+=e.o.b+c}}\nfunction UDb(a,b,c){var d,e;for(e=b.a.a.ec().Kc();e.Ob();){d=BD(e.Pb(),57);if(VDb(a,d,c)){return true}}return false}\nfunction JDc(a){var b,c;for(c=new olb(a.r);c.a=0?b:-b;while(d>0){if(d%2==0){c*=c;d=d/2|0}else{e*=c;d-=1}}return b<0?1/e:e}\nfunction y6c(a,b){var c,d,e;e=1;c=a;d=b>=0?b:-b;while(d>0){if(d%2==0){c*=c;d=d/2|0}else{e*=c;d-=1}}return b<0?1/e:e}\nfunction sAd(a){var b,c,d,e;if(a!=null){for(c=0;c0){c=BD(Ikb(a.a,a.a.c.length-1),570);if(NYb(c,b)){return}}Ekb(a.a,new PYb(b))}\nfunction $gc(a){Hgc();var b,c;b=a.d.c-a.e.c;c=BD(a.g,145);Hkb(c.b,new shc(b));Hkb(c.c,new uhc(b));reb(c.i,new whc(b))}\nfunction gic(a){var b;b=new Ufb;b.a+='VerticalSegment ';Pfb(b,a.e);b.a+=' ';Qfb(b,Eb(new Gb,new olb(a.k)));return b.a}\nfunction u4c(a){var b;b=BD(Wrb(a.c.c,''),229);if(!b){b=new W3c(d4c(c4c(new e4c,''),'Other'));Xrb(a.c.c,'',b)}return b}\nfunction qnd(a){var b;if((a.Db&64)!=0)return Eid(a);b=new Jfb(Eid(a));b.a+=' (name: ';Efb(b,a.zb);b.a+=')';return b.a}\nfunction Jnd(a,b,c){var d,e;e=a.sb;a.sb=b;if((a.Db&4)!=0&&(a.Db&1)==0){d=new nSd(a,1,4,e,b);!c?(c=d):c.Ei(d)}return c}\nfunction _ic(a,b){var c,d,e;c=0;for(e=V_b(a,b).Kc();e.Ob();){d=BD(e.Pb(),11);c+=vNb(d,(wtc(),gtc))!=null?1:0}return c}\nfunction vPc(a,b,c){var d,e,f;d=0;for(f=Jsb(a,0);f.b!=f.d.c;){e=Edb(ED(Xsb(f)));if(e>c){break}else e>=b&&++d}return d}\nfunction RTd(a,b,c){var d,e;d=new pSd(a.e,3,13,null,(e=b.c,e?e:(jGd(),YFd)),HLd(a,b),false);!c?(c=d):c.Ei(d);return c}\nfunction STd(a,b,c){var d,e;d=new pSd(a.e,4,13,(e=b.c,e?e:(jGd(),YFd)),null,HLd(a,b),false);!c?(c=d):c.Ei(d);return c}\nfunction zId(a,b,c){var d,e;e=a.r;a.r=b;if((a.Db&4)!=0&&(a.Db&1)==0){d=new nSd(a,1,8,e,a.r);!c?(c=d):c.Ei(d)}return c}\nfunction o1d(a,b){var c,d;c=BD(b,676);d=c.vk();!d&&c.wk(d=JD(b,88)?new C1d(a,BD(b,26)):new O1d(a,BD(b,148)));return d}\nfunction kud(a,b,c){var d;a.qi(a.i+1);d=a.oi(b,c);b!=a.i&&$fb(a.g,b,a.g,b+1,a.i-b);NC(a.g,b,d);++a.i;a.bi(b,c);a.ci()}\nfunction vwb(a,b){var c;if(b.a){c=b.a.a.length;!a.a?(a.a=new Wfb(a.d)):Qfb(a.a,a.b);Ofb(a.a,b.a,b.d.length,c)}return a}\nfunction __d(a,b){var c,d,e,f;b.vi(a.a);f=BD(Ajd(a.a,8),1936);if(f!=null){for(c=f,d=0,e=c.length;dc){throw vbb(new qcb(xke+a+zke+b+', size: '+c))}if(a>b){throw vbb(new Wdb(xke+a+yke+b))}}\nfunction eid(a,b,c){if(b<0){vid(a,c)}else{if(!c.Ij()){throw vbb(new Wdb(ite+c.ne()+jte))}BD(c,66).Nj().Vj(a,a.yh(),b)}}\nfunction Jlb(a,b,c,d,e,f,g,h){var i;i=c;while(f=d||b=65&&a<=70){return a-65+10}if(a>=97&&a<=102){return a-97+10}if(a>=48&&a<=57){return a-48}return 0}\nfunction QHd(a){var b;if((a.Db&64)!=0)return Eid(a);b=new Jfb(Eid(a));b.a+=' (source: ';Efb(b,a.d);b.a+=')';return b.a}\nfunction OQd(a,b,c){var d,e;e=a.a;a.a=b;if((a.Db&4)!=0&&(a.Db&1)==0){d=new nSd(a,1,5,e,a.a);!c?(c=d):Qwd(c,d)}return c}\nfunction BId(a,b){var c;c=(a.Bb&256)!=0;b?(a.Bb|=256):(a.Bb&=-257);(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new qSd(a,1,2,c,b))}\nfunction eLd(a,b){var c;c=(a.Bb&256)!=0;b?(a.Bb|=256):(a.Bb&=-257);(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new qSd(a,1,8,c,b))}\nfunction LPd(a,b){var c;c=(a.Bb&256)!=0;b?(a.Bb|=256):(a.Bb&=-257);(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new qSd(a,1,8,c,b))}\nfunction CId(a,b){var c;c=(a.Bb&512)!=0;b?(a.Bb|=512):(a.Bb&=-513);(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new qSd(a,1,3,c,b))}\nfunction fLd(a,b){var c;c=(a.Bb&512)!=0;b?(a.Bb|=512):(a.Bb&=-513);(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new qSd(a,1,9,c,b))}\nfunction N7d(a,b){var c;if(a.b==-1&&!!a.a){c=a.a.Gj();a.b=!c?bLd(a.c.Tg(),a.a):a.c.Xg(a.a.aj(),c)}return a.c.Og(a.b,b)}\nfunction meb(a){var b,c;if(a>-129&&a<128){b=a+128;c=(oeb(),neb)[b];!c&&(c=neb[b]=new _db(a));return c}return new _db(a)}\nfunction Web(a){var b,c;if(a>-129&&a<128){b=a+128;c=(Yeb(),Xeb)[b];!c&&(c=Xeb[b]=new Qeb(a));return c}return new Qeb(a)}\nfunction L5b(a){var b,c;b=a.k;if(b==(j0b(),e0b)){c=BD(vNb(a,(wtc(),Hsc)),61);return c==(Ucd(),Acd)||c==Rcd}return false}\nfunction i1d(a,b,c){var d,e,f;f=(e=nUd(a.b,b),e);if(f){d=BD(V1d(p1d(a,f),''),26);if(d){return r1d(a,d,b,c)}}return null}\nfunction l1d(a,b,c){var d,e,f;f=(e=nUd(a.b,b),e);if(f){d=BD(V1d(p1d(a,f),''),26);if(d){return s1d(a,d,b,c)}}return null}\nfunction cTd(a,b){var c,d;for(d=new Fyd(a);d.e!=d.i.gc();){c=BD(Dyd(d),138);if(PD(b)===PD(c)){return true}}return false}\nfunction vtd(a,b,c){var d;d=a.gc();if(b>d)throw vbb(new Cyd(b,d));if(a.hi()&&a.Hc(c)){throw vbb(new Wdb(kue))}a.Xh(b,c)}\nfunction iqd(a,b){var c;c=oo(a.i,b);if(c==null){throw vbb(new cqd('Node did not exist in input.'))}Yqd(b,c);return null}\nfunction $hd(a,b){var c;c=YKd(a,b);if(JD(c,322)){return BD(c,34)}throw vbb(new Wdb(ite+b+\"' is not a valid attribute\"))}\nfunction V2d(a,b,c){var d,e;e=JD(b,99)&&(BD(b,18).Bb&Tje)!=0?new s4d(b,a):new p4d(b,a);for(d=0;db){return 1}if(a==b){return a==0?Kdb(1/a,1/b):0}return isNaN(a)?isNaN(b)?0:1:-1}\nfunction f4b(a,b){Odd(b,'Sort end labels',1);MAb(JAb(LAb(new YAb(null,new Kub(a.b,16)),new q4b),new s4b),new u4b);Qdd(b)}\nfunction Wxd(a,b,c){var d,e;if(a.ej()){e=a.fj();d=sud(a,b,c);a.$i(a.Zi(7,meb(c),d,b,e));return d}else{return sud(a,b,c)}}\nfunction vAd(a,b){var c,d,e;if(a.d==null){++a.e;--a.f}else{e=b.cd();c=b.Sh();d=(c&Ohe)%a.d.length;KAd(a,d,xAd(a,d,c,e))}}\nfunction ZId(a,b){var c;c=(a.Bb&zte)!=0;b?(a.Bb|=zte):(a.Bb&=-1025);(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new qSd(a,1,10,c,b))}\nfunction dJd(a,b){var c;c=(a.Bb&Rje)!=0;b?(a.Bb|=Rje):(a.Bb&=-4097);(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new qSd(a,1,12,c,b))}\nfunction eJd(a,b){var c;c=(a.Bb&Cve)!=0;b?(a.Bb|=Cve):(a.Bb&=-8193);(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new qSd(a,1,15,c,b))}\nfunction fJd(a,b){var c;c=(a.Bb&Dve)!=0;b?(a.Bb|=Dve):(a.Bb&=-2049);(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new qSd(a,1,11,c,b))}\nfunction jOb(a,b){var c;c=Kdb(a.b.c,b.b.c);if(c!=0){return c}c=Kdb(a.a.a,b.a.a);if(c!=0){return c}return Kdb(a.a.b,b.a.b)}\nfunction jqd(a,b){var c;c=Ohb(a.k,b);if(c==null){throw vbb(new cqd('Port did not exist in input.'))}Yqd(b,c);return null}\nfunction k6d(a){var b,c;for(c=l6d(bKd(a)).Kc();c.Ob();){b=GD(c.Pb());if(Dmd(a,b)){return uFd((tFd(),sFd),b)}}return null}\nfunction n3d(a,b){var c,d,e,f,g;g=S6d(a.e.Tg(),b);f=0;c=BD(a.g,119);for(e=0;e>10)+Uje&aje;b[1]=(a&1023)+56320&aje;return zfb(b,0,b.length)}\nfunction a_b(a){var b,c;c=BD(vNb(a,(Nyc(),Lwc)),103);if(c==(ead(),cad)){b=Edb(ED(vNb(a,owc)));return b>=1?bad:_9c}return c}\nfunction rec(a){switch(BD(vNb(a,(Nyc(),Swc)),218).g){case 1:return new Fmc;case 3:return new wnc;default:return new zmc;}}\nfunction Uzb(a){if(a.c){Uzb(a.c)}else if(a.d){throw vbb(new Zdb(\"Stream already terminated, can't be modified or used\"))}}\nfunction Mkd(a){var b;if((a.Db&64)!=0)return Eid(a);b=new Jfb(Eid(a));b.a+=' (identifier: ';Efb(b,a.k);b.a+=')';return b.a}\nfunction ctd(a,b,c){var d,e;d=(Fhd(),e=new xkd,e);vkd(d,b);wkd(d,c);!!a&&wtd((!a.a&&(a.a=new xMd(y2,a,5)),a.a),d);return d}\nfunction ttb(a,b,c,d){var e,f;uCb(d);uCb(c);e=a.xc(b);f=e==null?c:Myb(BD(e,15),BD(c,14));f==null?a.Bc(b):a.zc(b,f);return f}\nfunction pqb(a){var b,c,d,e;c=(b=BD(gdb((d=a.gm,e=d.f,e==CI?d:e)),9),new xqb(b,BD(_Bb(b,b.length),9),0));rqb(c,a);return c}\nfunction hDc(a,b,c){var d,e;for(e=a.a.ec().Kc();e.Ob();){d=BD(e.Pb(),10);if(Be(c,BD(Ikb(b,d.p),14))){return d}}return null}\nfunction Db(b,c,d){var e;try{Cb(b,c,d)}catch(a){a=ubb(a);if(JD(a,597)){e=a;throw vbb(new ycb(e))}else throw vbb(a)}return c}\nfunction Qbb(a,b){var c;if(Fbb(a)&&Fbb(b)){c=a-b;if(Kje>1;a.k=c-1>>1}\nfunction Gub(){zub();var a,b,c;c=yub+++Date.now();a=QD($wnd.Math.floor(c*lke))&nke;b=QD(c-a*mke);this.a=a^1502;this.b=b^kke}\nfunction O_b(a){var b,c,d;b=new Rkb;for(d=new olb(a.j);d.a3.4028234663852886E38){return Pje}else if(b<-3.4028234663852886E38){return Qje}return b}\nfunction aeb(a){a-=a>>1&1431655765;a=(a>>2&858993459)+(a&858993459);a=(a>>4)+a&252645135;a+=a>>8;a+=a>>16;return a&63}\nfunction Ev(a){var b,c,d,e;b=new cq(a.Hd().gc());e=0;for(d=vr(a.Hd().Kc());d.Ob();){c=d.Pb();bq(b,c,meb(e++))}return fn(b.a)}\nfunction Uyb(a,b){var c,d,e;e=new Lqb;for(d=b.vc().Kc();d.Ob();){c=BD(d.Pb(),42);Rhb(e,c.cd(),Yyb(a,BD(c.dd(),15)))}return e}\nfunction EZc(a,b){a.n.c.length==0&&Ekb(a.n,new VZc(a.s,a.t,a.i));Ekb(a.b,b);QZc(BD(Ikb(a.n,a.n.c.length-1),211),b);GZc(a,b)}\nfunction LFb(a){if(a.c!=a.b.b||a.i!=a.g.b){a.a.c=KC(SI,Uhe,1,0,5,1);Gkb(a.a,a.b);Gkb(a.a,a.g);a.c=a.b.b;a.i=a.g.b}return a.a}\nfunction Ycc(a,b){var c,d,e;e=0;for(d=BD(b.Kb(a),20).Kc();d.Ob();){c=BD(d.Pb(),17);Ccb(DD(vNb(c,(wtc(),ltc))))||++e}return e}\nfunction efc(a,b){var c,d,e;d=tgc(b);e=Edb(ED(pBc(d,(Nyc(),lyc))));c=$wnd.Math.max(0,e/2-0.5);cfc(b,c,1);Ekb(a,new Dfc(b,c))}\nfunction Ctc(){Ctc=ccb;Btc=new Dtc(ane,0);xtc=new Dtc('FIRST',1);ytc=new Dtc(Gne,2);ztc=new Dtc('LAST',3);Atc=new Dtc(Hne,4)}\nfunction Aad(){Aad=ccb;zad=new Bad(ole,0);xad=new Bad('POLYLINE',1);wad=new Bad('ORTHOGONAL',2);yad=new Bad('SPLINES',3)}\nfunction zYc(){zYc=ccb;xYc=new AYc('ASPECT_RATIO_DRIVEN',0);yYc=new AYc('MAX_SCALE_DRIVEN',1);wYc=new AYc('AREA_DRIVEN',2)}\nfunction Y$c(){Y$c=ccb;V$c=new Z$c('P1_STRUCTURE',0);W$c=new Z$c('P2_PROCESSING_ORDER',1);X$c=new Z$c('P3_EXECUTION',2)}\nfunction tVc(){tVc=ccb;sVc=new uVc('OVERLAP_REMOVAL',0);qVc=new uVc('COMPACTION',1);rVc=new uVc('GRAPH_SIZE_CALCULATION',2)}\nfunction Jy(a,b){Iy();return My(Qie),$wnd.Math.abs(a-b)<=Qie||a==b||isNaN(a)&&isNaN(b)?0:ab?1:Ny(isNaN(a),isNaN(b))}\nfunction yOc(a,b){var c,d;c=Jsb(a,0);while(c.b!=c.d.c){d=Gdb(ED(Xsb(c)));if(d==b){return}else if(d>b){Ysb(c);break}}Vsb(c,b)}\nfunction t4c(a,b){var c,d,e,f,g;c=b.f;Xrb(a.c.d,c,b);if(b.g!=null){for(e=b.g,f=0,g=e.length;fb&&d.ue(a[f-1],a[f])>0;--f){g=a[f];NC(a,f,a[f-1]);NC(a,f-1,g)}}}\nfunction did(a,b,c,d){if(b<0){uid(a,c,d)}else{if(!c.Ij()){throw vbb(new Wdb(ite+c.ne()+jte))}BD(c,66).Nj().Tj(a,a.yh(),b,d)}}\nfunction xFb(a,b){if(b==a.d){return a.e}else if(b==a.e){return a.d}else{throw vbb(new Wdb('Node '+b+' not part of edge '+a))}}\nfunction iEb(a,b){switch(b.g){case 2:return a.b;case 1:return a.c;case 4:return a.d;case 3:return a.a;default:return false;}}\nfunction GVb(a,b){switch(b.g){case 2:return a.b;case 1:return a.c;case 4:return a.d;case 3:return a.a;default:return false;}}\nfunction Xkd(a,b,c,d){switch(b){case 3:return a.f;case 4:return a.g;case 5:return a.i;case 6:return a.j;}return Ekd(a,b,c,d)}\nfunction Ljc(a){if(a.k!=(j0b(),h0b)){return false}return FAb(new YAb(null,new Lub(new Sr(ur(U_b(a).a.Kc(),new Sq)))),new Mjc)}\nfunction MEd(a){if(a.e==null){return a}else !a.c&&(a.c=new NEd((a.f&256)!=0,a.i,a.a,a.d,(a.f&16)!=0,a.j,a.g,null));return a.c}\nfunction VC(a,b){if(a.h==Gje&&a.m==0&&a.l==0){b&&(QC=TC(0,0,0));return SC((wD(),uD))}b&&(QC=TC(a.l,a.m,a.h));return TC(0,0,0)}\nfunction fcb(a){var b;if(Array.isArray(a)&&a.im===gcb){return hdb(rb(a))+'@'+(b=tb(a)>>>0,b.toString(16))}return a.toString()}\nfunction Rpb(a){var b;this.a=(b=BD(a.e&&a.e(),9),new xqb(b,BD(_Bb(b,b.length),9),0));this.b=KC(SI,Uhe,1,this.a.a.length,5,1)}\nfunction _Ob(a){var b,c,d;this.a=new zsb;for(d=new olb(a);d.a0&&(BCb(b-1,a.length),a.charCodeAt(b-1)==58)&&!OEd(a,CEd,DEd)}\nfunction OEd(a,b,c){var d,e;for(d=0,e=a.length;d=e){return b.c+c}}return b.c+b.b.gc()}\nfunction NCd(a,b){LCd();var c,d,e,f;d=KLd(a);e=b;Klb(d,0,d.length,e);for(c=0;c0){d+=e;++c}}c>1&&(d+=a.d*(c-1));return d}\nfunction Htd(a){var b,c,d;d=new Hfb;d.a+='[';for(b=0,c=a.gc();b0&&this.b>0&&q$c(this.c,this.b,this.a)}\nfunction ezc(a){dzc();this.c=Ou(OC(GC(h0,1),Uhe,831,0,[Uyc]));this.b=new Lqb;this.a=a;Rhb(this.b,bzc,1);Hkb(czc,new Xed(this))}\nfunction I2c(a,b){var c;if(a.d){if(Mhb(a.b,b)){return BD(Ohb(a.b,b),51)}else{c=b.Kf();Rhb(a.b,b,c);return c}}else{return b.Kf()}}\nfunction Kgb(a,b){var c;if(PD(a)===PD(b)){return true}if(JD(b,91)){c=BD(b,91);return a.e==c.e&&a.d==c.d&&Lgb(a,c.a)}return false}\nfunction Zcd(a){Ucd();switch(a.g){case 4:return Acd;case 1:return zcd;case 3:return Rcd;case 2:return Tcd;default:return Scd;}}\nfunction Ykd(a,b){switch(b){case 3:return a.f!=0;case 4:return a.g!=0;case 5:return a.i!=0;case 6:return a.j!=0;}return Hkd(a,b)}\nfunction gWc(a){switch(a.g){case 0:return new FXc;case 1:return new IXc;default:throw vbb(new Wdb(jre+(a.f!=null?a.f:''+a.g)));}}\nfunction QUc(a){switch(a.g){case 0:return new CXc;case 1:return new MXc;default:throw vbb(new Wdb(Dne+(a.f!=null?a.f:''+a.g)));}}\nfunction b1c(a){switch(a.g){case 0:return new s1c;case 1:return new w1c;default:throw vbb(new Wdb(Mre+(a.f!=null?a.f:''+a.g)));}}\nfunction qWc(a){switch(a.g){case 1:return new SVc;case 2:return new KVc;default:throw vbb(new Wdb(jre+(a.f!=null?a.f:''+a.g)));}}\nfunction ryb(a){var b,c;if(a.b){return a.b}c=lyb?null:a.d;while(c){b=lyb?null:c.b;if(b){return b}c=lyb?null:c.d}return $xb(),Zxb}\nfunction hhb(a){var b,c,d;if(a.e==0){return 0}b=a.d<<5;c=a.a[a.d-1];if(a.e<0){d=Mgb(a);if(d==a.d-1){--c;c=c|0}}b-=heb(c);return b}\nfunction bhb(a){var b,c,d;if(a>5;b=a&31;d=KC(WD,oje,25,c+1,15,1);d[c]=1<3){e*=10;--f}a=(a+(e>>1))/e|0}d.i=a;return true}\nfunction XUb(a){LUb();return Bcb(),GVb(BD(a.a,81).j,BD(a.b,103))||BD(a.a,81).d.e!=0&&GVb(BD(a.a,81).j,BD(a.b,103))?true:false}\nfunction s3c(a){p3c();if(BD(a.We((Y9c(),b9c)),174).Hc((Idd(),Gdd))){BD(a.We(x9c),174).Fc((rcd(),qcd));BD(a.We(b9c),174).Mc(Gdd)}}\nfunction Gxd(a,b){var c,d;if(!b){return false}else{for(c=0;c=0;--d){b=c[d];for(e=0;e>1;this.k=b-1>>1}\nfunction r3b(a,b){Odd(b,'End label post-processing',1);MAb(JAb(LAb(new YAb(null,new Kub(a.b,16)),new w3b),new y3b),new A3b);Qdd(b)}\nfunction NLc(a,b,c){var d,e;d=Edb(a.p[b.i.p])+Edb(a.d[b.i.p])+b.n.b+b.a.b;e=Edb(a.p[c.i.p])+Edb(a.d[c.i.p])+c.n.b+c.a.b;return e-d}\nfunction xhb(a,b,c){var d,e;d=xbb(c,Yje);for(e=0;ybb(d,0)!=0&&e0&&(BCb(0,b.length),b.charCodeAt(0)==43)?b.substr(1):b))}\nfunction T9d(a){var b;return a==null?null:new Ygb((b=Qge(a,true),b.length>0&&(BCb(0,b.length),b.charCodeAt(0)==43)?b.substr(1):b))}\nfunction xud(a,b){var c;if(a.i>0){if(b.lengtha.i&&NC(b,a.i,null);return b}\nfunction Sxd(a,b,c){var d,e,f;if(a.ej()){d=a.i;f=a.fj();kud(a,d,b);e=a.Zi(3,null,b,d,f);!c?(c=e):c.Ei(e)}else{kud(a,a.i,b)}return c}\nfunction HMd(a,b,c){var d,e;d=new pSd(a.e,4,10,(e=b.c,JD(e,88)?BD(e,26):(jGd(),_Fd)),null,HLd(a,b),false);!c?(c=d):c.Ei(d);return c}\nfunction GMd(a,b,c){var d,e;d=new pSd(a.e,3,10,null,(e=b.c,JD(e,88)?BD(e,26):(jGd(),_Fd)),HLd(a,b),false);!c?(c=d):c.Ei(d);return c}\nfunction _Jb(a){$Jb();var b;b=new g7c(BD(a.e.We((Y9c(),_8c)),8));if(a.B.Hc((Idd(),Bdd))){b.a<=0&&(b.a=20);b.b<=0&&(b.b=20)}return b}\nfunction Lzc(a){Izc();var b;(!a.q?(mmb(),mmb(),kmb):a.q)._b((Nyc(),Cxc))?(b=BD(vNb(a,Cxc),197)):(b=BD(vNb(Q_b(a),Dxc),197));return b}\nfunction pBc(a,b){var c,d;d=null;if(wNb(a,(Nyc(),qyc))){c=BD(vNb(a,qyc),94);c.Xe(b)&&(d=c.We(b))}d==null&&(d=vNb(Q_b(a),b));return d}\nfunction Ze(a,b){var c,d,e;if(JD(b,42)){c=BD(b,42);d=c.cd();e=Hv(a.Rc(),d);return Hb(e,c.dd())&&(e!=null||a.Rc()._b(d))}return false}\nfunction qAd(a,b){var c,d,e;if(a.f>0){a.qj();d=b==null?0:tb(b);e=(d&Ohe)%a.d.length;c=xAd(a,e,d,b);return c!=-1}else{return false}}\nfunction AAd(a,b){var c,d,e;if(a.f>0){a.qj();d=b==null?0:tb(b);e=(d&Ohe)%a.d.length;c=wAd(a,e,d,b);if(c){return c.dd()}}return null}\nfunction R2d(a,b){var c,d,e,f;f=S6d(a.e.Tg(),b);c=BD(a.g,119);for(e=0;e1?Mbb(Nbb(b.a[1],32),xbb(b.a[0],Yje)):xbb(b.a[0],Yje),Sbb(Ibb(b.e,c))))}\nfunction Hbb(a,b){var c;if(Fbb(a)&&Fbb(b)){c=a%b;if(Kje>5;b&=31;e=a.d+c+(b==0?0:1);d=KC(WD,oje,25,e,15,1);jhb(d,a.a,c,b);f=new Vgb(a.e,e,d);Jgb(f);return f}\nfunction Ofe(a,b,c){var d,e;d=BD(Phb(Zee,b),117);e=BD(Phb($ee,b),117);if(c){Shb(Zee,a,d);Shb($ee,a,e)}else{Shb($ee,a,d);Shb(Zee,a,e)}}\nfunction Cwb(a,b,c){var d,e,f;e=null;f=a.b;while(f){d=a.a.ue(b,f.d);if(c&&d==0){return f}if(d>=0){f=f.a[1]}else{e=f;f=f.a[0]}}return e}\nfunction Dwb(a,b,c){var d,e,f;e=null;f=a.b;while(f){d=a.a.ue(b,f.d);if(c&&d==0){return f}if(d<=0){f=f.a[0]}else{e=f;f=f.a[1]}}return e}\nfunction Nic(a,b,c,d){var e,f,g;e=false;if(fjc(a.f,c,d)){ijc(a.f,a.a[b][c],a.a[b][d]);f=a.a[b];g=f[d];f[d]=f[c];f[c]=g;e=true}return e}\nfunction QHc(a,b,c,d,e){var f,g,h;g=e;while(b.b!=b.c){f=BD(fkb(b),10);h=BD(V_b(f,d).Xb(0),11);a.d[h.p]=g++;c.c[c.c.length]=h}return g}\nfunction hBc(a,b,c){var d,e,f,g,h;g=a.k;h=b.k;d=c[g.g][h.g];e=ED(pBc(a,d));f=ED(pBc(b,d));return $wnd.Math.max((uCb(e),e),(uCb(f),f))}\nfunction zZc(a,b,c){var d,e,f,g;d=c/a.c.length;e=0;for(g=new olb(a);g.a2000){yz=a;zz=$wnd.setTimeout(Iz,10)}}if(xz++==0){Lz((Kz(),Jz));return true}return false}\nfunction wCc(a,b){var c,d,e;for(d=new Sr(ur(U_b(a).a.Kc(),new Sq));Qr(d);){c=BD(Rr(d),17);e=c.d.i;if(e.c==b){return false}}return true}\nfunction Ek(b,c){var d,e;if(JD(c,245)){e=BD(c,245);try{d=b.vd(e);return d==0}catch(a){a=ubb(a);if(!JD(a,205))throw vbb(a)}}return false}\nfunction Xz(){if(Error.stackTraceLimit>0){$wnd.Error.stackTraceLimit=Error.stackTraceLimit=64;return true}return 'stack' in new Error}\nfunction BDb(a,b){return Iy(),Iy(),My(Qie),($wnd.Math.abs(a-b)<=Qie||a==b||isNaN(a)&&isNaN(b)?0:ab?1:Ny(isNaN(a),isNaN(b)))>0}\nfunction DDb(a,b){return Iy(),Iy(),My(Qie),($wnd.Math.abs(a-b)<=Qie||a==b||isNaN(a)&&isNaN(b)?0:ab?1:Ny(isNaN(a),isNaN(b)))<0}\nfunction CDb(a,b){return Iy(),Iy(),My(Qie),($wnd.Math.abs(a-b)<=Qie||a==b||isNaN(a)&&isNaN(b)?0:ab?1:Ny(isNaN(a),isNaN(b)))<=0}\nfunction ydb(a,b){var c=0;while(!b[c]||b[c]==''){c++}var d=b[c++];for(;cWje){return c.fh()}d=c.Zg();if(!!d||c==a){break}}}return d}\nfunction fvd(a){evd();if(JD(a,156)){return BD(Ohb(cvd,hK),288).vg(a)}if(Mhb(cvd,rb(a))){return BD(Ohb(cvd,rb(a)),288).vg(a)}return null}\nfunction fZd(a){if(efb(kse,a)){return Bcb(),Acb}else if(efb(lse,a)){return Bcb(),zcb}else{throw vbb(new Wdb('Expecting true or false'))}}\nfunction uDc(a,b){if(b.c==a){return b.d}else if(b.d==a){return b.c}throw vbb(new Wdb('Input edge is not connected to the input port.'))}\nfunction Igb(a,b){if(a.e>b.e){return 1}if(a.eb.d){return a.e}if(a.d=48&&a<48+$wnd.Math.min(10,10)){return a-48}if(a>=97&&a<97){return a-97+10}if(a>=65&&a<65){return a-65+10}return -1}\nfunction Ue(a,b){var c;if(PD(b)===PD(a)){return true}if(!JD(b,21)){return false}c=BD(b,21);if(c.gc()!=a.gc()){return false}return a.Ic(c)}\nfunction ekb(a,b){var c,d,e,f;d=a.a.length-1;c=b-a.b&d;f=a.c-b&d;e=a.c-a.b&d;mkb(c=f){hkb(a,b);return -1}else{ikb(a,b);return 1}}\nfunction lA(a,b){var c,d;c=(BCb(b,a.length),a.charCodeAt(b));d=b+1;while(db.e){return 1}else if(a.fb.f){return 1}return tb(a)-tb(b)}\nfunction efb(a,b){uCb(a);if(b==null){return false}if(dfb(a,b)){return true}return a.length==b.length&&dfb(a.toLowerCase(),b.toLowerCase())}\nfunction x6d(a,b){var c,d,e,f;for(d=0,e=b.gc();d0&&ybb(a,128)<0){b=Tbb(a)+128;c=(Ceb(),Beb)[b];!c&&(c=Beb[b]=new teb(a));return c}return new teb(a)}\nfunction _0d(a,b){var c,d;c=b.Hh(a.a);if(c){d=GD(AAd((!c.b&&(c.b=new sId((jGd(),fGd),x6,c)),c.b),fue));if(d!=null){return d}}return b.ne()}\nfunction a1d(a,b){var c,d;c=b.Hh(a.a);if(c){d=GD(AAd((!c.b&&(c.b=new sId((jGd(),fGd),x6,c)),c.b),fue));if(d!=null){return d}}return b.ne()}\nfunction FMc(a,b){wMc();var c,d;for(d=new Sr(ur(O_b(a).a.Kc(),new Sq));Qr(d);){c=BD(Rr(d),17);if(c.d.i==b||c.c.i==b){return c}}return null}\nfunction HUb(a,b,c){this.c=a;this.f=new Rkb;this.e=new d7c;this.j=new IVb;this.n=new IVb;this.b=b;this.g=new J6c(b.c,b.d,b.b,b.a);this.a=c}\nfunction gVb(a){var b,c,d,e;this.a=new zsb;this.d=new Tqb;this.e=0;for(c=a,d=0,e=c.length;d0}else{return false}}\nfunction q2c(a){var b;if(PD(hkd(a,(Y9c(),J8c)))===PD((hbd(),fbd))){if(!Xod(a)){jkd(a,J8c,gbd)}else{b=BD(hkd(Xod(a),J8c),334);jkd(a,J8c,b)}}}\nfunction ijc(a,b,c){var d,e;bIc(a.e,b,c,(Ucd(),Tcd));bIc(a.i,b,c,zcd);if(a.a){e=BD(vNb(b,(wtc(),$sc)),11);d=BD(vNb(c,$sc),11);cIc(a.g,e,d)}}\nfunction OEc(a,b,c){var d,e,f;d=b.c.p;f=b.p;a.b[d][f]=new $Ec(a,b);if(c){a.a[d][f]=new FEc(b);e=BD(vNb(b,(wtc(),Psc)),10);!!e&&Rc(a.d,e,b)}}\nfunction TPb(a,b){var c,d,e;Ekb(PPb,a);b.Fc(a);c=BD(Ohb(OPb,a),21);if(c){for(e=c.Kc();e.Ob();){d=BD(e.Pb(),33);Jkb(PPb,d,0)!=-1||TPb(d,b)}}}\nfunction tyb(a,b,c){var d;(jyb?(ryb(a),true):kyb?($xb(),true):nyb?($xb(),true):myb&&($xb(),false))&&(d=new iyb(b),d.b=c,pyb(a,d),undefined)}\nfunction xKb(a,b){var c;c=!a.A.Hc((tdd(),sdd))||a.q==(dcd(),$bd);a.u.Hc((rcd(),ncd))?c?vKb(a,b):zKb(a,b):a.u.Hc(pcd)&&(c?wKb(a,b):AKb(a,b))}\nfunction b0d(a,b){var c,d;++a.j;if(b!=null){c=(d=a.a.Cb,JD(d,97)?BD(d,97).Jg():null);if(xlb(b,c)){Cjd(a.a,4,c);return}}Cjd(a.a,4,BD(b,126))}\nfunction dYb(a,b,c){return new J6c($wnd.Math.min(a.a,b.a)-c/2,$wnd.Math.min(a.b,b.b)-c/2,$wnd.Math.abs(a.a-b.a)+c,$wnd.Math.abs(a.b-b.b)+c)}\nfunction k4b(a,b){var c,d;c=beb(a.a.c.p,b.a.c.p);if(c!=0){return c}d=beb(a.a.d.i.p,b.a.d.i.p);if(d!=0){return d}return beb(b.a.d.p,a.a.d.p)}\nfunction _Dc(a,b,c){var d,e,f,g;f=b.j;g=c.j;if(f!=g){return f.g-g.g}else{d=a.f[b.p];e=a.f[c.p];return d==0&&e==0?0:d==0?-1:e==0?1:Kdb(d,e)}}\nfunction HFb(a,b,c){var d,e,f;if(c[b.d]){return}c[b.d]=true;for(e=new olb(LFb(b));e.a=e)return e;for(b=b>0?b:0;bd&&NC(b,d,null);return b}\nfunction _lb(a,b){var c,d;d=a.a.length;b.lengthd&&NC(b,d,null);return b}\nfunction Xrb(a,b,c){var d,e,f;e=BD(Ohb(a.e,b),387);if(!e){d=new lsb(a,b,c);Rhb(a.e,b,d);isb(d);return null}else{f=ijb(e,c);Yrb(a,e);return f}}\nfunction P9d(a){var b;if(a==null)return null;b=ide(Qge(a,true));if(b==null){throw vbb(new n8d(\"Invalid hexBinary value: '\"+a+\"'\"))}return b}\nfunction ghb(a){Hgb();if(ybb(a,0)<0){if(ybb(a,-1)!=0){return new Wgb(-1,Jbb(a))}return Bgb}else return ybb(a,10)<=0?Dgb[Tbb(a)]:new Wgb(1,a)}\nfunction wJb(){qJb();return OC(GC(DN,1),Kie,159,0,[nJb,mJb,oJb,eJb,dJb,fJb,iJb,hJb,gJb,lJb,kJb,jJb,bJb,aJb,cJb,$Ib,ZIb,_Ib,XIb,WIb,YIb,pJb])}\nfunction vjc(a){var b;this.d=new Rkb;this.j=new d7c;this.g=new d7c;b=a.g.b;this.f=BD(vNb(Q_b(b),(Nyc(),Lwc)),103);this.e=Edb(ED(c_b(b,ryc)))}\nfunction Pjc(a){this.b=new Rkb;this.e=new Rkb;this.d=a;this.a=!WAb(JAb(new YAb(null,new Lub(new b1b(a.b))),new Xxb(new Qjc))).sd((EAb(),DAb))}\nfunction N5c(){N5c=ccb;L5c=new O5c('PARENTS',0);K5c=new O5c('NODES',1);I5c=new O5c('EDGES',2);M5c=new O5c('PORTS',3);J5c=new O5c('LABELS',4)}\nfunction Tbd(){Tbd=ccb;Qbd=new Ubd('DISTRIBUTED',0);Sbd=new Ubd('JUSTIFIED',1);Obd=new Ubd('BEGIN',2);Pbd=new Ubd(gle,3);Rbd=new Ubd('END',4)}\nfunction UMd(a){var b;b=a.yi(null);switch(b){case 10:return 0;case 15:return 1;case 14:return 2;case 11:return 3;case 21:return 4;}return -1}\nfunction cYb(a){switch(a.g){case 1:return ead(),dad;case 4:return ead(),aad;case 2:return ead(),bad;case 3:return ead(),_9c;}return ead(),cad}\nfunction kA(a,b,c){var d;d=c.q.getFullYear()-nje+nje;d<0&&(d=-d);switch(b){case 1:a.a+=d;break;case 2:EA(a,d%100,2);break;default:EA(a,d,b);}}\nfunction Jsb(a,b){var c,d;wCb(b,a.b);if(b>=a.b>>1){d=a.c;for(c=a.b;c>b;--c){d=d.b}}else{d=a.a.a;for(c=0;c=64&&b<128&&(e=Mbb(e,Nbb(1,b-64)))}return e}\nfunction c_b(a,b){var c,d;d=null;if(wNb(a,(Y9c(),O9c))){c=BD(vNb(a,O9c),94);c.Xe(b)&&(d=c.We(b))}d==null&&!!Q_b(a)&&(d=vNb(Q_b(a),b));return d}\nfunction oQc(a,b){var c,d,e;e=b.d.i;d=e.k;if(d==(j0b(),h0b)||d==d0b){return}c=new Sr(ur(U_b(e).a.Kc(),new Sq));Qr(c)&&Rhb(a.k,b,BD(Rr(c),17))}\nfunction mid(a,b){var c,d,e;d=XKd(a.Tg(),b);c=b-a.Ah();return c<0?(e=a.Yg(d),e>=0?a.lh(e):tid(a,d)):c<0?tid(a,d):BD(d,66).Nj().Sj(a,a.yh(),c)}\nfunction Ksd(a){var b;if(JD(a.a,4)){b=fvd(a.a);if(b==null){throw vbb(new Zdb(mse+a.b+\"'. \"+ise+(fdb(Y3),Y3.k)+jse))}return b}else{return a.a}}\nfunction L9d(a){var b;if(a==null)return null;b=bde(Qge(a,true));if(b==null){throw vbb(new n8d(\"Invalid base64Binary value: '\"+a+\"'\"))}return b}\nfunction Dyd(b){var c;try{c=b.i.Xb(b.e);b.mj();b.g=b.e++;return c}catch(a){a=ubb(a);if(JD(a,73)){b.mj();throw vbb(new utb)}else throw vbb(a)}}\nfunction Zyd(b){var c;try{c=b.c.ki(b.e);b.mj();b.g=b.e++;return c}catch(a){a=ubb(a);if(JD(a,73)){b.mj();throw vbb(new utb)}else throw vbb(a)}}\nfunction CPb(){CPb=ccb;BPb=(Y9c(),K9c);vPb=G8c;qPb=r8c;wPb=f9c;zPb=(fFb(),bFb);yPb=_Eb;APb=dFb;xPb=$Eb;sPb=(nPb(),jPb);rPb=iPb;tPb=lPb;uPb=mPb}\nfunction NWb(a){LWb();this.c=new Rkb;this.d=a;switch(a.g){case 0:case 2:this.a=tmb(KWb);this.b=Pje;break;case 3:case 1:this.a=KWb;this.b=Qje;}}\nfunction ued(a,b,c){var d,e;if(a.c){dld(a.c,a.c.i+b);eld(a.c,a.c.j+c)}else{for(e=new olb(a.b);e.a0){Ekb(a.b,new WA(b.a,c));d=b.a.length;0d&&(b.a+=yfb(KC(TD,$ie,25,-d,15,1)))}}\nfunction JKb(a,b){var c,d,e;c=a.o;for(e=BD(BD(Qc(a.r,b),21),84).Kc();e.Ob();){d=BD(e.Pb(),111);d.e.a=DKb(d,c.a);d.e.b=c.b*Edb(ED(d.b.We(BKb)))}}\nfunction S5b(a,b){var c,d,e,f;e=a.k;c=Edb(ED(vNb(a,(wtc(),htc))));f=b.k;d=Edb(ED(vNb(b,htc)));return f!=(j0b(),e0b)?-1:e!=e0b?1:c==d?0:c=0){return a.hh(b,c,d)}else{!!a.eh()&&(d=(e=a.Vg(),e>=0?a.Qg(d):a.eh().ih(a,-1-e,null,d)));return a.Sg(b,c,d)}}\nfunction zld(a,b){switch(b){case 7:!a.e&&(a.e=new y5d(B2,a,7,4));Uxd(a.e);return;case 8:!a.d&&(a.d=new y5d(B2,a,8,5));Uxd(a.d);return;}$kd(a,b)}\nfunction Ut(b,c){var d;d=b.Zc(c);try{return d.Pb()}catch(a){a=ubb(a);if(JD(a,109)){throw vbb(new qcb(\"Can't get element \"+c))}else throw vbb(a)}}\nfunction Tgb(a,b){this.e=a;if(b=0&&(c.d=a.t);break;case 3:a.t>=0&&(c.a=a.t);}if(a.C){c.b=a.C.b;c.c=a.C.c}}\nfunction RMb(){RMb=ccb;OMb=new SMb(xle,0);NMb=new SMb(yle,1);PMb=new SMb(zle,2);QMb=new SMb(Ale,3);OMb.a=false;NMb.a=true;PMb.a=false;QMb.a=true}\nfunction ROb(){ROb=ccb;OOb=new SOb(xle,0);NOb=new SOb(yle,1);POb=new SOb(zle,2);QOb=new SOb(Ale,3);OOb.a=false;NOb.a=true;POb.a=false;QOb.a=true}\nfunction dac(a){var b;b=a.a;do{b=BD(Rr(new Sr(ur(R_b(b).a.Kc(),new Sq))),17).c.i;b.k==(j0b(),g0b)&&a.b.Fc(b)}while(b.k==(j0b(),g0b));a.b=Su(a.b)}\nfunction CDc(a){var b,c,d;d=a.c.a;a.p=(Qb(d),new Tkb(d));for(c=new olb(d);c.ac.b){return true}}}return false}\nfunction AD(a,b){if(ND(a)){return !!zD[b]}else if(a.hm){return !!a.hm[b]}else if(LD(a)){return !!yD[b]}else if(KD(a)){return !!xD[b]}return false}\nfunction jkd(a,b,c){c==null?(!a.o&&(a.o=new dId((Thd(),Qhd),S2,a,0)),LAd(a.o,b)):(!a.o&&(a.o=new dId((Thd(),Qhd),S2,a,0)),HAd(a.o,b,c));return a}\nfunction jKb(a,b,c,d){var e,f;f=b.Xe((Y9c(),W8c))?BD(b.We(W8c),21):a.j;e=uJb(f);if(e==(qJb(),pJb)){return}if(c&&!sJb(e)){return}UHb(lKb(a,e,d),b)}\nfunction fid(a,b,c,d){var e,f,g;f=XKd(a.Tg(),b);e=b-a.Ah();return e<0?(g=a.Yg(f),g>=0?a._g(g,c,true):sid(a,f,c)):BD(f,66).Nj().Pj(a,a.yh(),e,c,d)}\nfunction u6d(a,b,c,d){var e,f,g;if(c.mh(b)){Q6d();if(YId(b)){e=BD(c.ah(b),153);x6d(a,e)}else{f=(g=b,!g?null:BD(d,49).xh(g));!!f&&v6d(c.ah(b),f)}}}\nfunction H3b(a){switch(a.g){case 1:return vLb(),uLb;case 3:return vLb(),rLb;case 2:return vLb(),tLb;case 4:return vLb(),sLb;default:return null;}}\nfunction kCb(a){switch(typeof(a)){case Mhe:return LCb(a);case Lhe:return QD(a);case Khe:return Bcb(),a?1231:1237;default:return a==null?0:FCb(a);}}\nfunction Gic(a,b,c){if(a.e){switch(a.b){case 1:oic(a.c,b,c);break;case 0:pic(a.c,b,c);}}else{mic(a.c,b,c)}a.a[b.p][c.p]=a.c.i;a.a[c.p][b.p]=a.c.e}\nfunction lHc(a){var b,c;if(a==null){return null}c=KC(OQ,nie,193,a.length,0,2);for(b=0;b=0)return e;if(a.Fk()){for(d=0;d=e)throw vbb(new Cyd(b,e));if(a.hi()){d=a.Xc(c);if(d>=0&&d!=b){throw vbb(new Wdb(kue))}}return a.mi(b,c)}\nfunction gx(a,b){this.a=BD(Qb(a),245);this.b=BD(Qb(b),245);if(a.vd(b)>0||a==(Lk(),Kk)||b==(_k(),$k)){throw vbb(new Wdb('Invalid range: '+nx(a,b)))}}\nfunction mYb(a){var b,c;this.b=new Rkb;this.c=a;this.a=false;for(c=new olb(a.a);c.a0);if((b&-b)==b){return QD(b*Cub(a,31)*4.6566128730773926E-10)}do{c=Cub(a,31);d=c%b}while(c-d+(b-1)<0);return QD(d)}\nfunction LCb(a){JCb();var b,c,d;c=':'+a;d=ICb[c];if(d!=null){return QD((uCb(d),d))}d=GCb[c];b=d==null?KCb(a):QD((uCb(d),d));MCb();ICb[c]=b;return b}\nfunction qZb(a,b,c){Odd(c,'Compound graph preprocessor',1);a.a=new Hp;vZb(a,b,null);pZb(a,b);uZb(a);yNb(b,(wtc(),zsc),a.a);a.a=null;Uhb(a.b);Qdd(c)}\nfunction X$b(a,b,c){switch(c.g){case 1:a.a=b.a/2;a.b=0;break;case 2:a.a=b.a;a.b=b.b/2;break;case 3:a.a=b.a/2;a.b=b.b;break;case 4:a.a=0;a.b=b.b/2;}}\nfunction tkc(a){var b,c,d;for(d=BD(Qc(a.a,(Xjc(),Vjc)),15).Kc();d.Ob();){c=BD(d.Pb(),101);b=Bkc(c);kkc(a,c,b[0],(Fkc(),Ckc),0);kkc(a,c,b[1],Ekc,1)}}\nfunction ukc(a){var b,c,d;for(d=BD(Qc(a.a,(Xjc(),Wjc)),15).Kc();d.Ob();){c=BD(d.Pb(),101);b=Bkc(c);kkc(a,c,b[0],(Fkc(),Ckc),0);kkc(a,c,b[1],Ekc,1)}}\nfunction tXc(a){switch(a.g){case 0:return null;case 1:return new $Xc;case 2:return new QXc;default:throw vbb(new Wdb(jre+(a.f!=null?a.f:''+a.g)));}}\nfunction OZc(a,b,c){var d,e;FZc(a,b-a.s,c-a.t);for(e=new olb(a.n);e.a1&&(f=GFb(a,b));return f}\nfunction dmd(a){var b;if(!!a.f&&a.f.kh()){b=BD(a.f,49);a.f=BD(xid(a,b),82);a.f!=b&&(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,9,8,b,a.f))}return a.f}\nfunction emd(a){var b;if(!!a.i&&a.i.kh()){b=BD(a.i,49);a.i=BD(xid(a,b),82);a.i!=b&&(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,9,7,b,a.i))}return a.i}\nfunction zUd(a){var b;if(!!a.b&&(a.b.Db&64)!=0){b=a.b;a.b=BD(xid(a,b),18);a.b!=b&&(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,9,21,b,a.b))}return a.b}\nfunction uAd(a,b){var c,d,e;if(a.d==null){++a.e;++a.f}else{d=b.Sh();BAd(a,a.f+1);e=(d&Ohe)%a.d.length;c=a.d[e];!c&&(c=a.d[e]=a.uj());c.Fc(b);++a.f}}\nfunction m3d(a,b,c){var d;if(b.Kj()){return false}else if(b.Zj()!=-2){d=b.zj();return d==null?c==null:pb(d,c)}else return b.Hj()==a.e.Tg()&&c==null}\nfunction wo(){var a;Xj(16,Hie);a=Kp(16);this.b=KC(GF,Gie,317,a,0,1);this.c=KC(GF,Gie,317,a,0,1);this.a=null;this.e=null;this.i=0;this.f=a-1;this.g=0}\nfunction b0b(a){n_b.call(this);this.k=(j0b(),h0b);this.j=(Xj(6,Jie),new Skb(6));this.b=(Xj(2,Jie),new Skb(2));this.d=new L_b;this.f=new s0b;this.a=a}\nfunction Scc(a){var b,c;if(a.c.length<=1){return}b=Pcc(a,(Ucd(),Rcd));Rcc(a,BD(b.a,19).a,BD(b.b,19).a);c=Pcc(a,Tcd);Rcc(a,BD(c.a,19).a,BD(c.b,19).a)}\nfunction Vzc(){Vzc=ccb;Uzc=new Xzc('SIMPLE',0);Rzc=new Xzc(Tne,1);Szc=new Xzc('LINEAR_SEGMENTS',2);Qzc=new Xzc('BRANDES_KOEPF',3);Tzc=new Xzc(Aqe,4)}\nfunction XDc(a,b,c){if(!ecd(BD(vNb(b,(Nyc(),Vxc)),98))){WDc(a,b,Y_b(b,c));WDc(a,b,Y_b(b,(Ucd(),Rcd)));WDc(a,b,Y_b(b,Acd));mmb();Okb(b.j,new jEc(a))}}\nfunction HVc(a,b,c,d){var e,f,g;e=d?BD(Qc(a.a,b),21):BD(Qc(a.b,b),21);for(g=e.Kc();g.Ob();){f=BD(g.Pb(),33);if(BVc(a,c,f)){return true}}return false}\nfunction FMd(a){var b,c;for(c=new Fyd(a);c.e!=c.i.gc();){b=BD(Dyd(c),87);if(!!b.e||(!b.d&&(b.d=new xMd(j5,b,1)),b.d).i!=0){return true}}return false}\nfunction QTd(a){var b,c;for(c=new Fyd(a);c.e!=c.i.gc();){b=BD(Dyd(c),87);if(!!b.e||(!b.d&&(b.d=new xMd(j5,b,1)),b.d).i!=0){return true}}return false}\nfunction FDc(a){var b,c,d;b=0;for(d=new olb(a.c.a);d.a102)return -1;if(a<=57)return a-48;if(a<65)return -1;if(a<=70)return a-65+10;if(a<97)return -1;return a-97+10}\nfunction Wj(a,b){if(a==null){throw vbb(new Heb('null key in entry: null='+b))}else if(b==null){throw vbb(new Heb('null value in entry: '+a+'=null'))}}\nfunction kr(a,b){var c,d;while(a.Ob()){if(!b.Ob()){return false}c=a.Pb();d=b.Pb();if(!(PD(c)===PD(d)||c!=null&&pb(c,d))){return false}}return !b.Ob()}\nfunction jIb(a,b){var c;c=OC(GC(UD,1),Vje,25,15,[pHb(a.a[0],b),pHb(a.a[1],b),pHb(a.a[2],b)]);if(a.d){c[0]=$wnd.Math.max(c[0],c[2]);c[2]=c[0]}return c}\nfunction kIb(a,b){var c;c=OC(GC(UD,1),Vje,25,15,[qHb(a.a[0],b),qHb(a.a[1],b),qHb(a.a[2],b)]);if(a.d){c[0]=$wnd.Math.max(c[0],c[2]);c[2]=c[0]}return c}\nfunction mqc(){mqc=ccb;iqc=new oqc('GREEDY',0);hqc=new oqc(Une,1);kqc=new oqc(Tne,2);lqc=new oqc('MODEL_ORDER',3);jqc=new oqc('GREEDY_MODEL_ORDER',4)}\nfunction iUc(a,b){var c,d,e;a.b[b.g]=1;for(d=Jsb(b.d,0);d.b!=d.d.c;){c=BD(Xsb(d),188);e=c.c;a.b[e.g]==1?Dsb(a.a,c):a.b[e.g]==2?(a.b[e.g]=1):iUc(a,e)}}\nfunction V9b(a,b){var c,d,e;e=new Skb(b.gc());for(d=b.Kc();d.Ob();){c=BD(d.Pb(),286);c.c==c.f?K9b(a,c,c.c):L9b(a,c)||(e.c[e.c.length]=c,true)}return e}\nfunction IZc(a,b,c){var d,e,f,g,h;h=a.r+b;a.r+=b;a.d+=c;d=c/a.n.c.length;e=0;for(g=new olb(a.n);g.af&&NC(b,f,null);return b}\nfunction Lu(a,b){var c,d;d=a.gc();if(b==null){for(c=0;c0&&(i+=e);j[k]=g;g+=h*(i+d)}}\nfunction Uoc(a){var b,c,d;d=a.f;a.n=KC(UD,Vje,25,d,15,1);a.d=KC(UD,Vje,25,d,15,1);for(b=0;b0?a.c:0);++e}a.b=d;a.d=f}\nfunction BZc(a,b){var c,d,e,f,g;d=0;e=0;c=0;for(g=new olb(b);g.a0?a.g:0);++c}a.c=e;a.d=d}\nfunction AHb(a,b){var c;c=OC(GC(UD,1),Vje,25,15,[zHb(a,(gHb(),dHb),b),zHb(a,eHb,b),zHb(a,fHb,b)]);if(a.f){c[0]=$wnd.Math.max(c[0],c[2]);c[2]=c[0]}return c}\nfunction lNb(b,c,d){var e;try{aNb(b,c+b.j,d+b.k,false,true)}catch(a){a=ubb(a);if(JD(a,73)){e=a;throw vbb(new qcb(e.g+Gle+c+She+d+').'))}else throw vbb(a)}}\nfunction mNb(b,c,d){var e;try{aNb(b,c+b.j,d+b.k,true,false)}catch(a){a=ubb(a);if(JD(a,73)){e=a;throw vbb(new qcb(e.g+Gle+c+She+d+').'))}else throw vbb(a)}}\nfunction d5b(a){var b;if(!wNb(a,(Nyc(),xxc))){return}b=BD(vNb(a,xxc),21);if(b.Hc((Hbd(),zbd))){b.Mc(zbd);b.Fc(Bbd)}else if(b.Hc(Bbd)){b.Mc(Bbd);b.Fc(zbd)}}\nfunction e5b(a){var b;if(!wNb(a,(Nyc(),xxc))){return}b=BD(vNb(a,xxc),21);if(b.Hc((Hbd(),Gbd))){b.Mc(Gbd);b.Fc(Ebd)}else if(b.Hc(Ebd)){b.Mc(Ebd);b.Fc(Gbd)}}\nfunction udc(a,b,c){Odd(c,'Self-Loop ordering',1);MAb(NAb(JAb(JAb(LAb(new YAb(null,new Kub(b.b,16)),new ydc),new Adc),new Cdc),new Edc),new Gdc(a));Qdd(c)}\nfunction ikc(a,b,c,d){var e,f;for(e=b;e0&&(e.b+=b);return e}\nfunction GXb(a,b){var c,d,e;e=new d7c;for(d=a.Kc();d.Ob();){c=BD(d.Pb(),37);uXb(c,0,e.b);e.b+=c.f.b+b;e.a=$wnd.Math.max(e.a,c.f.a)}e.a>0&&(e.a+=b);return e}\nfunction d_b(a){var b,c,d;d=Ohe;for(c=new olb(a.a);c.a>16==6){return a.Cb.ih(a,5,o5,b)}return d=zUd(BD(XKd((c=BD(Ajd(a,16),26),!c?a.zh():c),a.Db>>16),18)),a.Cb.ih(a,d.n,d.f,b)}\nfunction Wz(a){Rz();var b=a.e;if(b&&b.stack){var c=b.stack;var d=b+'\\n';c.substring(0,d.length)==d&&(c=c.substring(d.length));return c.split('\\n')}return []}\nfunction jeb(a){var b;b=(qeb(),peb);return b[a>>>28]|b[a>>24&15]<<4|b[a>>20&15]<<8|b[a>>16&15]<<12|b[a>>12&15]<<16|b[a>>8&15]<<20|b[a>>4&15]<<24|b[a&15]<<28}\nfunction _jb(a){var b,c,d;if(a.b!=a.c){return}d=a.a.length;c=geb($wnd.Math.max(8,d))<<1;if(a.b!=0){b=_Bb(a.a,c);$jb(a,b,d);a.a=b;a.b=0}else{dCb(a.a,c)}a.c=d}\nfunction DKb(a,b){var c;c=a.b;return c.Xe((Y9c(),s9c))?c.Hf()==(Ucd(),Tcd)?-c.rf().a-Edb(ED(c.We(s9c))):b+Edb(ED(c.We(s9c))):c.Hf()==(Ucd(),Tcd)?-c.rf().a:b}\nfunction P_b(a){var b;if(a.b.c.length!=0&&!!BD(Ikb(a.b,0),70).a){return BD(Ikb(a.b,0),70).a}b=JZb(a);if(b!=null){return b}return ''+(!a.c?-1:Jkb(a.c.a,a,0))}\nfunction C0b(a){var b;if(a.f.c.length!=0&&!!BD(Ikb(a.f,0),70).a){return BD(Ikb(a.f,0),70).a}b=JZb(a);if(b!=null){return b}return ''+(!a.i?-1:Jkb(a.i.j,a,0))}\nfunction Ogc(a,b){var c,d;if(b<0||b>=a.gc()){return null}for(c=b;c0?a.c:0);e=$wnd.Math.max(e,b.d);++d}a.e=f;a.b=e}\nfunction shd(a){var b,c;if(!a.b){a.b=Qu(BD(a.f,118).Ag().i);for(c=new Fyd(BD(a.f,118).Ag());c.e!=c.i.gc();){b=BD(Dyd(c),137);Ekb(a.b,new dhd(b))}}return a.b}\nfunction Ctd(a,b){var c,d,e;if(b.dc()){return LCd(),LCd(),KCd}else{c=new zyd(a,b.gc());for(e=new Fyd(a);e.e!=e.i.gc();){d=Dyd(e);b.Hc(d)&&wtd(c,d)}return c}}\nfunction bkd(a,b,c,d){if(b==0){return d?(!a.o&&(a.o=new dId((Thd(),Qhd),S2,a,0)),a.o):(!a.o&&(a.o=new dId((Thd(),Qhd),S2,a,0)),FAd(a.o))}return fid(a,b,c,d)}\nfunction Tnd(a){var b,c;if(a.rb){for(b=0,c=a.rb.i;b>22);e+=d>>22;if(e<0){return false}a.l=c&Eje;a.m=d&Eje;a.h=e&Fje;return true}\nfunction Fwb(a,b,c,d,e,f,g){var h,i;if(b.Ae()&&(i=a.a.ue(c,d),i<0||!e&&i==0)){return false}if(b.Be()&&(h=a.a.ue(c,f),h>0||!g&&h==0)){return false}return true}\nfunction Vcc(a,b){Occ();var c;c=a.j.g-b.j.g;if(c!=0){return 0}switch(a.j.g){case 2:return Ycc(b,Ncc)-Ycc(a,Ncc);case 4:return Ycc(a,Mcc)-Ycc(b,Mcc);}return 0}\nfunction Tqc(a){switch(a.g){case 0:return Mqc;case 1:return Nqc;case 2:return Oqc;case 3:return Pqc;case 4:return Qqc;case 5:return Rqc;default:return null;}}\nfunction End(a,b,c){var d,e;d=(e=new rUd,yId(e,b),pnd(e,c),wtd((!a.c&&(a.c=new cUd(p5,a,12,10)),a.c),e),e);AId(d,0);DId(d,1);CId(d,true);BId(d,true);return d}\nfunction tud(a,b){var c,d;if(b>=a.i)throw vbb(new $zd(b,a.i));++a.j;c=a.g[b];d=a.i-b-1;d>0&&$fb(a.g,b+1,a.g,b,d);NC(a.g,--a.i,null);a.fi(b,c);a.ci();return c}\nfunction UId(a,b){var c,d;if(a.Db>>16==17){return a.Cb.ih(a,21,c5,b)}return d=zUd(BD(XKd((c=BD(Ajd(a,16),26),!c?a.zh():c),a.Db>>16),18)),a.Cb.ih(a,d.n,d.f,b)}\nfunction iDb(a){var b,c,d,e;mmb();Okb(a.c,a.a);for(e=new olb(a.c);e.ac.a.c.length)){throw vbb(new Wdb('index must be >= 0 and <= layer node count'))}!!a.c&&Lkb(a.c.a,a);a.c=c;!!c&&Dkb(c.a,b,a)}\nfunction p7b(a,b){var c,d,e;for(d=new Sr(ur(O_b(a).a.Kc(),new Sq));Qr(d);){c=BD(Rr(d),17);e=BD(b.Kb(c),10);return new cc(Qb(e.n.b+e.o.b/2))}return wb(),wb(),vb}\nfunction rMc(a,b){this.c=new Lqb;this.a=a;this.b=b;this.d=BD(vNb(a,(wtc(),otc)),304);PD(vNb(a,(Nyc(),yxc)))===PD((_qc(),Zqc))?(this.e=new bNc):(this.e=new WMc)}\nfunction $dd(a,b){var c,d,e,f;f=0;for(d=new olb(a);d.a>16==6){return a.Cb.ih(a,6,B2,b)}return d=zUd(BD(XKd((c=BD(Ajd(a,16),26),!c?(Thd(),Lhd):c),a.Db>>16),18)),a.Cb.ih(a,d.n,d.f,b)}\nfunction Eod(a,b){var c,d;if(a.Db>>16==7){return a.Cb.ih(a,1,C2,b)}return d=zUd(BD(XKd((c=BD(Ajd(a,16),26),!c?(Thd(),Nhd):c),a.Db>>16),18)),a.Cb.ih(a,d.n,d.f,b)}\nfunction lpd(a,b){var c,d;if(a.Db>>16==9){return a.Cb.ih(a,9,E2,b)}return d=zUd(BD(XKd((c=BD(Ajd(a,16),26),!c?(Thd(),Phd):c),a.Db>>16),18)),a.Cb.ih(a,d.n,d.f,b)}\nfunction mQd(a,b){var c,d;if(a.Db>>16==5){return a.Cb.ih(a,9,h5,b)}return d=zUd(BD(XKd((c=BD(Ajd(a,16),26),!c?(jGd(),VFd):c),a.Db>>16),18)),a.Cb.ih(a,d.n,d.f,b)}\nfunction KHd(a,b){var c,d;if(a.Db>>16==3){return a.Cb.ih(a,0,k5,b)}return d=zUd(BD(XKd((c=BD(Ajd(a,16),26),!c?(jGd(),OFd):c),a.Db>>16),18)),a.Cb.ih(a,d.n,d.f,b)}\nfunction Snd(a,b){var c,d;if(a.Db>>16==7){return a.Cb.ih(a,6,o5,b)}return d=zUd(BD(XKd((c=BD(Ajd(a,16),26),!c?(jGd(),cGd):c),a.Db>>16),18)),a.Cb.ih(a,d.n,d.f,b)}\nfunction ird(){this.a=new bqd;this.g=new wo;this.j=new wo;this.b=new Lqb;this.d=new wo;this.i=new wo;this.k=new Lqb;this.c=new Lqb;this.e=new Lqb;this.f=new Lqb}\nfunction MCd(a,b,c){var d,e,f;c<0&&(c=0);f=a.i;for(e=c;eWje){return p6d(a,d)}if(d==a){return true}}}return false}\nfunction HKb(a){CKb();switch(a.q.g){case 5:EKb(a,(Ucd(),Acd));EKb(a,Rcd);break;case 4:FKb(a,(Ucd(),Acd));FKb(a,Rcd);break;default:GKb(a,(Ucd(),Acd));GKb(a,Rcd);}}\nfunction LKb(a){CKb();switch(a.q.g){case 5:IKb(a,(Ucd(),zcd));IKb(a,Tcd);break;case 4:JKb(a,(Ucd(),zcd));JKb(a,Tcd);break;default:KKb(a,(Ucd(),zcd));KKb(a,Tcd);}}\nfunction XQb(a){var b,c;b=BD(vNb(a,(wSb(),pSb)),19);if(b){c=b.a;c==0?yNb(a,(HSb(),GSb),new Gub):yNb(a,(HSb(),GSb),new Hub(c))}else{yNb(a,(HSb(),GSb),new Hub(1))}}\nfunction V$b(a,b){var c;c=a.i;switch(b.g){case 1:return -(a.n.b+a.o.b);case 2:return a.n.a-c.o.a;case 3:return a.n.b-c.o.b;case 4:return -(a.n.a+a.o.a);}return 0}\nfunction hbc(a,b){switch(a.g){case 0:return b==(Ctc(),ytc)?dbc:ebc;case 1:return b==(Ctc(),ytc)?dbc:cbc;case 2:return b==(Ctc(),ytc)?cbc:ebc;default:return cbc;}}\nfunction v$c(a,b){var c,d,e;Lkb(a.a,b);a.e-=b.r+(a.a.c.length==0?0:a.c);e=ere;for(d=new olb(a.a);d.a>16==3){return a.Cb.ih(a,12,E2,b)}return d=zUd(BD(XKd((c=BD(Ajd(a,16),26),!c?(Thd(),Khd):c),a.Db>>16),18)),a.Cb.ih(a,d.n,d.f,b)}\nfunction Uod(a,b){var c,d;if(a.Db>>16==11){return a.Cb.ih(a,10,E2,b)}return d=zUd(BD(XKd((c=BD(Ajd(a,16),26),!c?(Thd(),Ohd):c),a.Db>>16),18)),a.Cb.ih(a,d.n,d.f,b)}\nfunction PSd(a,b){var c,d;if(a.Db>>16==10){return a.Cb.ih(a,11,c5,b)}return d=zUd(BD(XKd((c=BD(Ajd(a,16),26),!c?(jGd(),aGd):c),a.Db>>16),18)),a.Cb.ih(a,d.n,d.f,b)}\nfunction qUd(a,b){var c,d;if(a.Db>>16==10){return a.Cb.ih(a,12,n5,b)}return d=zUd(BD(XKd((c=BD(Ajd(a,16),26),!c?(jGd(),dGd):c),a.Db>>16),18)),a.Cb.ih(a,d.n,d.f,b)}\nfunction wId(a){var b;if((a.Bb&1)==0&&!!a.r&&a.r.kh()){b=BD(a.r,49);a.r=BD(xid(a,b),138);a.r!=b&&(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,9,8,b,a.r))}return a.r}\nfunction yHb(a,b,c){var d;d=OC(GC(UD,1),Vje,25,15,[BHb(a,(gHb(),dHb),b,c),BHb(a,eHb,b,c),BHb(a,fHb,b,c)]);if(a.f){d[0]=$wnd.Math.max(d[0],d[2]);d[2]=d[0]}return d}\nfunction O9b(a,b){var c,d,e;e=V9b(a,b);if(e.c.length==0){return}Okb(e,new pac);c=e.c.length;for(d=0;d>19;j=b.h>>19;if(i!=j){return j-i}e=a.h;h=b.h;if(e!=h){return e-h}d=a.m;g=b.m;if(d!=g){return d-g}c=a.l;f=b.l;return c-f}\nfunction fFb(){fFb=ccb;eFb=(rFb(),oFb);dFb=new Nsd(Yke,eFb);cFb=(UEb(),TEb);bFb=new Nsd(Zke,cFb);aFb=(MEb(),LEb);_Eb=new Nsd($ke,aFb);$Eb=new Nsd(_ke,(Bcb(),true))}\nfunction cfc(a,b,c){var d,e;d=b*c;if(JD(a.g,145)){e=ugc(a);if(e.f.d){e.f.a||(a.d.a+=d+ple)}else{a.d.d-=d+ple;a.d.a+=d+ple}}else if(JD(a.g,10)){a.d.d-=d;a.d.a+=2*d}}\nfunction vmc(a,b,c){var d,e,f,g,h;e=a[c.g];for(h=new olb(b.d);h.a0?a.g:0);++c}b.b=d;b.e=e}\nfunction to(a){var b,c,d;d=a.b;if(Lp(a.i,d.length)){c=d.length*2;a.b=KC(GF,Gie,317,c,0,1);a.c=KC(GF,Gie,317,c,0,1);a.f=c-1;a.i=0;for(b=a.a;b;b=b.c){po(a,b,b)}++a.g}}\nfunction cNb(a,b,c,d){var e,f,g,h;for(e=0;eg&&(h=g/d);e>f&&(i=f/e);Y6c(a,$wnd.Math.min(h,i));return a}\nfunction ond(){Smd();var b,c;try{c=BD(mUd((yFd(),xFd),yte),2014);if(c){return c}}catch(a){a=ubb(a);if(JD(a,102)){b=a;uvd((h0d(),b))}else throw vbb(a)}return new knd}\nfunction Y9d(){A9d();var b,c;try{c=BD(mUd((yFd(),xFd),Ewe),2024);if(c){return c}}catch(a){a=ubb(a);if(JD(a,102)){b=a;uvd((h0d(),b))}else throw vbb(a)}return new U9d}\nfunction qZd(){Smd();var b,c;try{c=BD(mUd((yFd(),xFd),_ve),1941);if(c){return c}}catch(a){a=ubb(a);if(JD(a,102)){b=a;uvd((h0d(),b))}else throw vbb(a)}return new mZd}\nfunction HQd(a,b,c){var d,e;e=a.e;a.e=b;if((a.Db&4)!=0&&(a.Db&1)==0){d=new nSd(a,1,4,e,b);!c?(c=d):c.Ei(d)}e!=b&&(b?(c=QQd(a,MQd(a,b),c)):(c=QQd(a,a.a,c)));return c}\nfunction nB(){eB.call(this);this.e=-1;this.a=false;this.p=Rie;this.k=-1;this.c=-1;this.b=-1;this.g=false;this.f=-1;this.j=-1;this.n=-1;this.i=-1;this.d=-1;this.o=Rie}\nfunction qEb(a,b){var c,d,e;d=a.b.d.d;a.a||(d+=a.b.d.a);e=b.b.d.d;b.a||(e+=b.b.d.a);c=Kdb(d,e);if(c==0){if(!a.a&&b.a){return -1}else if(!b.a&&a.a){return 1}}return c}\nfunction eOb(a,b){var c,d,e;d=a.b.b.d;a.a||(d+=a.b.b.a);e=b.b.b.d;b.a||(e+=b.b.b.a);c=Kdb(d,e);if(c==0){if(!a.a&&b.a){return -1}else if(!b.a&&a.a){return 1}}return c}\nfunction PVb(a,b){var c,d,e;d=a.b.g.d;a.a||(d+=a.b.g.a);e=b.b.g.d;b.a||(e+=b.b.g.a);c=Kdb(d,e);if(c==0){if(!a.a&&b.a){return -1}else if(!b.a&&a.a){return 1}}return c}\nfunction ZTb(){ZTb=ccb;WTb=c3c(e3c(e3c(e3c(new j3c,(qUb(),oUb),(S8b(),m8b)),oUb,q8b),pUb,x8b),pUb,a8b);YTb=e3c(e3c(new j3c,oUb,S7b),oUb,b8b);XTb=c3c(new j3c,pUb,d8b)}\nfunction s3b(a){var b,c,d,e,f;b=BD(vNb(a,(wtc(),Csc)),83);f=a.n;for(d=b.Cc().Kc();d.Ob();){c=BD(d.Pb(),306);e=c.i;e.c+=f.a;e.d+=f.b;c.c?VHb(c):XHb(c)}yNb(a,Csc,null)}\nfunction qmc(a,b,c){var d,e;e=a.b;d=e.d;switch(b.g){case 1:return -d.d-c;case 2:return e.o.a+d.c+c;case 3:return e.o.b+d.a+c;case 4:return -d.b-c;default:return -1;}}\nfunction BXc(a){var b,c,d,e,f;d=0;e=dme;if(a.b){for(b=0;b<360;b++){c=b*0.017453292519943295;zXc(a,a.d,0,0,dre,c);f=a.b.ig(a.d);if(f0){g=(f&Ohe)%a.d.length;e=wAd(a,g,f,b);if(e){h=e.ed(c);return h}}d=a.tj(f,b,c);a.c.Fc(d);return null}\nfunction t1d(a,b){var c,d,e,f;switch(o1d(a,b)._k()){case 3:case 2:{c=OKd(b);for(e=0,f=c.i;e=0;d--){if(dfb(a[d].d,b)||dfb(a[d].d,c)){a.length>=d+1&&a.splice(0,d+1);break}}return a}\nfunction Abb(a,b){var c;if(Fbb(a)&&Fbb(b)){c=a/b;if(Kje0){a.b+=2;a.a+=d}}else{a.b+=1;a.a+=$wnd.Math.min(d,e)}}\nfunction Rpd(a,b){var c,d;d=false;if(ND(b)){d=true;Qpd(a,new yC(GD(b)))}if(!d){if(JD(b,236)){d=true;Qpd(a,(c=Kcb(BD(b,236)),new TB(c)))}}if(!d){throw vbb(new vcb(Ute))}}\nfunction IMd(a,b,c,d){var e,f,g;e=new pSd(a.e,1,10,(g=b.c,JD(g,88)?BD(g,26):(jGd(),_Fd)),(f=c.c,JD(f,88)?BD(f,26):(jGd(),_Fd)),HLd(a,b),false);!d?(d=e):d.Ei(e);return d}\nfunction T_b(a){var b,c;switch(BD(vNb(Q_b(a),(Nyc(),ixc)),420).g){case 0:b=a.n;c=a.o;return new f7c(b.a+c.a/2,b.b+c.b/2);case 1:return new g7c(a.n);default:return null;}}\nfunction lrc(){lrc=ccb;irc=new mrc(ane,0);hrc=new mrc('LEFTUP',1);krc=new mrc('RIGHTUP',2);grc=new mrc('LEFTDOWN',3);jrc=new mrc('RIGHTDOWN',4);frc=new mrc('BALANCED',5)}\nfunction FFc(a,b,c){var d,e,f;d=Kdb(a.a[b.p],a.a[c.p]);if(d==0){e=BD(vNb(b,(wtc(),Qsc)),15);f=BD(vNb(c,Qsc),15);if(e.Hc(c)){return -1}else if(f.Hc(b)){return 1}}return d}\nfunction jXc(a){switch(a.g){case 1:return new XVc;case 2:return new ZVc;case 3:return new VVc;case 0:return null;default:throw vbb(new Wdb(jre+(a.f!=null?a.f:''+a.g)));}}\nfunction Ikd(a,b,c){switch(b){case 1:!a.n&&(a.n=new cUd(D2,a,1,7));Uxd(a.n);!a.n&&(a.n=new cUd(D2,a,1,7));ytd(a.n,BD(c,14));return;case 2:Lkd(a,GD(c));return;}ekd(a,b,c)}\nfunction Zkd(a,b,c){switch(b){case 3:ald(a,Edb(ED(c)));return;case 4:cld(a,Edb(ED(c)));return;case 5:dld(a,Edb(ED(c)));return;case 6:eld(a,Edb(ED(c)));return;}Ikd(a,b,c)}\nfunction Fnd(a,b,c){var d,e,f;f=(d=new rUd,d);e=xId(f,b,null);!!e&&e.Fi();pnd(f,c);wtd((!a.c&&(a.c=new cUd(p5,a,12,10)),a.c),f);AId(f,0);DId(f,1);CId(f,true);BId(f,true)}\nfunction mUd(a,b){var c,d,e;c=Crb(a.g,b);if(JD(c,235)){e=BD(c,235);e.Qh()==null&&undefined;return e.Nh()}else if(JD(c,498)){d=BD(c,1938);e=d.b;return e}else{return null}}\nfunction Ui(a,b,c,d){var e,f;Qb(b);Qb(c);f=BD(tn(a.d,b),19);Ob(!!f,'Row %s not in %s',b,a.e);e=BD(tn(a.b,c),19);Ob(!!e,'Column %s not in %s',c,a.c);return Wi(a,f.a,e.a,d)}\nfunction JC(a,b,c,d,e,f,g){var h,i,j,k,l;k=e[f];j=f==g-1;h=j?d:0;l=LC(h,k);d!=10&&OC(GC(a,g-f),b[f],c[f],h,l);if(!j){++f;for(i=0;i1||h==-1){f=BD(i,15);e.Wb(t6d(a,f))}else{e.Wb(s6d(a,BD(i,56)))}}}}\nfunction Zbb(b,c,d,e){Ybb();var f=Wbb;$moduleName=c;$moduleBase=d;tbb=e;function g(){for(var a=0;aOqe){return c}else e>-1.0E-6&&++c}return c}\nfunction PQd(a,b){var c;if(b!=a.b){c=null;!!a.b&&(c=lid(a.b,a,-4,c));!!b&&(c=kid(b,a,-4,c));c=GQd(a,b,c);!!c&&c.Fi()}else (a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,3,b,b))}\nfunction SQd(a,b){var c;if(b!=a.f){c=null;!!a.f&&(c=lid(a.f,a,-1,c));!!b&&(c=kid(b,a,-1,c));c=IQd(a,b,c);!!c&&c.Fi()}else (a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,0,b,b))}\nfunction E9d(a){var b,c,d;if(a==null)return null;c=BD(a,15);if(c.dc())return '';d=new Hfb;for(b=c.Kc();b.Ob();){Efb(d,(Q8d(),GD(b.Pb())));d.a+=' '}return lcb(d,d.a.length-1)}\nfunction I9d(a){var b,c,d;if(a==null)return null;c=BD(a,15);if(c.dc())return '';d=new Hfb;for(b=c.Kc();b.Ob();){Efb(d,(Q8d(),GD(b.Pb())));d.a+=' '}return lcb(d,d.a.length-1)}\nfunction qEc(a,b,c){var d,e;d=a.c[b.c.p][b.p];e=a.c[c.c.p][c.p];if(d.a!=null&&e.a!=null){return Ddb(d.a,e.a)}else if(d.a!=null){return -1}else if(e.a!=null){return 1}return 0}\nfunction zqd(a,b){var c,d,e,f,g,h;if(b){f=b.a.length;c=new Yge(f);for(h=(c.b-c.a)*c.c<0?(Xge(),Wge):new she(c);h.Ob();){g=BD(h.Pb(),19);e=Zpd(b,g.a);d=new Crd(a);Aqd(d.a,e)}}}\nfunction Qqd(a,b){var c,d,e,f,g,h;if(b){f=b.a.length;c=new Yge(f);for(h=(c.b-c.a)*c.c<0?(Xge(),Wge):new she(c);h.Ob();){g=BD(h.Pb(),19);e=Zpd(b,g.a);d=new lrd(a);nqd(d.a,e)}}}\nfunction eFd(b){var c;if(b!=null&&b.length>0&&bfb(b,b.length-1)==33){try{c=PEd(qfb(b,0,b.length-1));return c.e==null}catch(a){a=ubb(a);if(!JD(a,32))throw vbb(a)}}return false}\nfunction h3d(a,b,c){var d,e,f;d=b.ak();f=b.dd();e=d.$j()?H2d(a,3,d,null,f,M2d(a,d,f,JD(d,99)&&(BD(d,18).Bb&Tje)!=0),true):H2d(a,1,d,d.zj(),f,-1,true);c?c.Ei(e):(c=e);return c}\nfunction Vee(){var a,b,c;b=0;for(a=0;a<'X'.length;a++){c=Uee((BCb(a,'X'.length),'X'.charCodeAt(a)));if(c==0)throw vbb(new mde('Unknown Option: '+'X'.substr(a)));b|=c}return b}\nfunction mZb(a,b,c){var d,e,f;d=Q_b(b);e=a_b(d);f=new H0b;F0b(f,b);switch(c.g){case 1:G0b(f,Wcd(Zcd(e)));break;case 2:G0b(f,Zcd(e));}yNb(f,(Nyc(),Uxc),ED(vNb(a,Uxc)));return f}\nfunction U9b(a){var b,c;b=BD(Rr(new Sr(ur(R_b(a.a).a.Kc(),new Sq))),17);c=BD(Rr(new Sr(ur(U_b(a.a).a.Kc(),new Sq))),17);return Ccb(DD(vNb(b,(wtc(),ltc))))||Ccb(DD(vNb(c,ltc)))}\nfunction Xjc(){Xjc=ccb;Tjc=new Yjc('ONE_SIDE',0);Vjc=new Yjc('TWO_SIDES_CORNER',1);Wjc=new Yjc('TWO_SIDES_OPPOSING',2);Ujc=new Yjc('THREE_SIDES',3);Sjc=new Yjc('FOUR_SIDES',4)}\nfunction jkc(a,b,c,d,e){var f,g;f=BD(GAb(JAb(b.Oc(),new _kc),Byb(new fzb,new dzb,new Ezb,OC(GC(xL,1),Kie,132,0,[(Fyb(),Dyb)]))),15);g=BD(Si(a.b,c,d),15);e==0?g.Wc(0,f):g.Gc(f)}\nfunction KDc(a,b){var c,d,e,f,g;for(f=new olb(b.a);f.a0&&ric(this,this.c-1,(Ucd(),zcd));this.c0&&a[0].length>0&&(this.c=Ccb(DD(vNb(Q_b(a[0][0]),(wtc(),Rsc)))));this.a=KC(CX,nie,2018,a.length,0,2);this.b=KC(FX,nie,2019,a.length,0,2);this.d=new ss}\nfunction tKc(a){if(a.c.length==0){return false}if((tCb(0,a.c.length),BD(a.c[0],17)).c.i.k==(j0b(),g0b)){return true}return FAb(NAb(new YAb(null,new Kub(a,16)),new wKc),new yKc)}\nfunction rRc(a,b,c){Odd(c,'Tree layout',1);H2c(a.b);K2c(a.b,(yRc(),uRc),uRc);K2c(a.b,vRc,vRc);K2c(a.b,wRc,wRc);K2c(a.b,xRc,xRc);a.a=F2c(a.b,b);sRc(a,b,Udd(c,1));Qdd(c);return b}\nfunction HXc(a,b){var c,d,e,f,g,h,i;h=gVc(b);f=b.f;i=b.g;g=$wnd.Math.sqrt(f*f+i*i);e=0;for(d=new olb(h);d.a=0){c=Abb(a,Jje);d=Hbb(a,Jje)}else{b=Pbb(a,1);c=Abb(b,500000000);d=Hbb(b,500000000);d=wbb(Nbb(d,1),xbb(a,1))}return Mbb(Nbb(d,32),xbb(c,Yje))}\nfunction oQb(a,b,c){var d,e;d=(sCb(b.b!=0),BD(Nsb(b,b.a.a),8));switch(c.g){case 0:d.b=0;break;case 2:d.b=a.f;break;case 3:d.a=0;break;default:d.a=a.g;}e=Jsb(b,0);Vsb(e,d);return b}\nfunction pmc(a,b,c,d){var e,f,g,h,i;i=a.b;f=b.d;g=f.j;h=umc(g,i.d[g.g],c);e=P6c(R6c(f.n),f.a);switch(f.j.g){case 1:case 3:h.a+=e.a;break;case 2:case 4:h.b+=e.b;}Gsb(d,h,d.c.b,d.c)}\nfunction yJc(a,b,c){var d,e,f,g;g=Jkb(a.e,b,0);f=new zJc;f.b=c;d=new Bib(a.e,g);while(d.b1;b>>=1){(b&1)!=0&&(d=Ogb(d,c));c.d==1?(c=Ogb(c,c)):(c=new Xgb(Lhb(c.a,c.d,KC(WD,oje,25,c.d<<1,15,1))))}d=Ogb(d,c);return d}\nfunction zub(){zub=ccb;var a,b,c,d;wub=KC(UD,Vje,25,25,15,1);xub=KC(UD,Vje,25,33,15,1);d=1.52587890625E-5;for(b=32;b>=0;b--){xub[b]=d;d*=0.5}c=1;for(a=24;a>=0;a--){wub[a]=c;c*=0.5}}\nfunction S1b(a){var b,c;if(Ccb(DD(hkd(a,(Nyc(),fxc))))){for(c=new Sr(ur(_sd(a).a.Kc(),new Sq));Qr(c);){b=BD(Rr(c),79);if(Qld(b)){if(Ccb(DD(hkd(b,gxc)))){return true}}}}return false}\nfunction kjc(a,b){var c,d,e;if(Qqb(a.f,b)){b.b=a;d=b.c;Jkb(a.j,d,0)!=-1||Ekb(a.j,d);e=b.d;Jkb(a.j,e,0)!=-1||Ekb(a.j,e);c=b.a.b;if(c.c.length!=0){!a.i&&(a.i=new vjc(a));qjc(a.i,c)}}}\nfunction rmc(a){var b,c,d,e,f;c=a.c.d;d=c.j;e=a.d.d;f=e.j;if(d==f){return c.p=0&&dfb(a.substr(b,'GMT'.length),'GMT')){c[0]=b+3;return tA(a,c,d)}if(b>=0&&dfb(a.substr(b,'UTC'.length),'UTC')){c[0]=b+3;return tA(a,c,d)}return tA(a,c,d)}\nfunction tjc(a,b){var c,d,e,f,g;f=a.g.a;g=a.g.b;for(d=new olb(a.d);d.ac;f--){a[f]|=b[f-c-1]>>>g;a[f-1]=b[f-c-1]<=a.f){break}f.c[f.c.length]=c}return f}\nfunction sfd(a){var b,c,d,e;b=null;for(e=new olb(a.wf());e.a0&&$fb(a.g,b,a.g,b+d,h);g=c.Kc();a.i+=d;for(e=0;ef&&nfb(j,sfb(c[h],ltb))){e=h;f=i}}e>=0&&(d[0]=b+f);return e}\nfunction MIb(a,b){var c;c=NIb(a.b.Hf(),b.b.Hf());if(c!=0){return c}switch(a.b.Hf().g){case 1:case 2:return beb(a.b.sf(),b.b.sf());case 3:case 4:return beb(b.b.sf(),a.b.sf());}return 0}\nfunction iRb(a){var b,c,d;d=a.e.c.length;a.a=IC(WD,[nie,oje],[48,25],15,[d,d],2);for(c=new olb(a.c);c.a>4&15;f=a[d]&15;g[e++]=Qmd[c];g[e++]=Qmd[f]}return zfb(g,0,g.length)}}\nfunction j3d(a,b,c){var d,e,f;d=b.ak();f=b.dd();e=d.$j()?H2d(a,4,d,f,null,M2d(a,d,f,JD(d,99)&&(BD(d,18).Bb&Tje)!=0),true):H2d(a,d.Kj()?2:1,d,f,d.zj(),-1,true);c?c.Ei(e):(c=e);return c}\nfunction wfb(a){var b,c;if(a>=Tje){b=Uje+(a-Tje>>10&1023)&aje;c=56320+(a-Tje&1023)&aje;return String.fromCharCode(b)+(''+String.fromCharCode(c))}else{return String.fromCharCode(a&aje)}}\nfunction bKb(a,b){$Jb();var c,d,e,f;e=BD(BD(Qc(a.r,b),21),84);if(e.gc()>=2){d=BD(e.Kc().Pb(),111);c=a.u.Hc((rcd(),mcd));f=a.u.Hc(qcd);return !d.a&&!c&&(e.gc()==2||f)}else{return false}}\nfunction IVc(a,b,c,d,e){var f,g,h;f=JVc(a,b,c,d,e);h=false;while(!f){AVc(a,e,true);h=true;f=JVc(a,b,c,d,e)}h&&AVc(a,e,false);g=dVc(e);if(g.c.length!=0){!!a.d&&a.d.lg(g);IVc(a,e,c,d,g)}}\nfunction Mad(){Mad=ccb;Kad=new Nad(ane,0);Iad=new Nad('DIRECTED',1);Lad=new Nad('UNDIRECTED',2);Gad=new Nad('ASSOCIATION',3);Jad=new Nad('GENERALIZATION',4);Had=new Nad('DEPENDENCY',5)}\nfunction kfd(a,b){var c;if(!mpd(a)){throw vbb(new Zdb(Sse))}c=mpd(a);switch(b.g){case 1:return -(a.j+a.f);case 2:return a.i-c.g;case 3:return a.j-c.f;case 4:return -(a.i+a.g);}return 0}\nfunction cub(a,b){var c,d;uCb(b);d=a.b.c.length;Ekb(a.b,b);while(d>0){c=d;d=(d-1)/2|0;if(a.a.ue(Ikb(a.b,d),b)<=0){Nkb(a.b,c,b);return true}Nkb(a.b,c,Ikb(a.b,d))}Nkb(a.b,d,b);return true}\nfunction BHb(a,b,c,d){var e,f;e=0;if(!c){for(f=0;f=h}\nfunction Tpd(a,b,c,d){var e;e=false;if(ND(d)){e=true;Upd(b,c,GD(d))}if(!e){if(KD(d)){e=true;Tpd(a,b,c,d)}}if(!e){if(JD(d,236)){e=true;Spd(b,c,BD(d,236))}}if(!e){throw vbb(new vcb(Ute))}}\nfunction W0d(a,b){var c,d,e;c=b.Hh(a.a);if(c){e=AAd((!c.b&&(c.b=new sId((jGd(),fGd),x6,c)),c.b),Sve);if(e!=null){for(d=1;d<(O6d(),K6d).length;++d){if(dfb(K6d[d],e)){return d}}}}return 0}\nfunction X0d(a,b){var c,d,e;c=b.Hh(a.a);if(c){e=AAd((!c.b&&(c.b=new sId((jGd(),fGd),x6,c)),c.b),Sve);if(e!=null){for(d=1;d<(O6d(),L6d).length;++d){if(dfb(L6d[d],e)){return d}}}}return 0}\nfunction Ve(a,b){var c,d,e,f;uCb(b);f=a.a.gc();if(f0?1:0;while(f.a[e]!=c){f=f.a[e];e=a.a.ue(c.d,f.d)>0?1:0}f.a[e]=d;d.b=c.b;d.a[0]=c.a[0];d.a[1]=c.a[1];c.a[0]=null;c.a[1]=null}\nfunction ucd(a){rcd();var b,c;b=qqb(ncd,OC(GC(E1,1),Kie,273,0,[pcd]));if(Ox(Cx(b,a))>1){return false}c=qqb(mcd,OC(GC(E1,1),Kie,273,0,[lcd,qcd]));if(Ox(Cx(c,a))>1){return false}return true}\nfunction fod(a,b){var c;c=Phb((yFd(),xFd),a);JD(c,498)?Shb(xFd,a,new bUd(this,b)):Shb(xFd,a,this);bod(this,b);if(b==(LFd(),KFd)){this.wb=BD(this,1939);BD(b,1941)}else{this.wb=(NFd(),MFd)}}\nfunction lZd(b){var c,d,e;if(b==null){return null}c=null;for(d=0;d=_ie?'error':d>=900?'warn':d>=800?'info':'log');gCb(c,a.a);!!a.b&&hCb(b,c,a.b,'Exception: ',true)}\nfunction vNb(a,b){var c,d;d=(!a.q&&(a.q=new Lqb),Ohb(a.q,b));if(d!=null){return d}c=b.wg();JD(c,4)&&(c==null?(!a.q&&(a.q=new Lqb),Thb(a.q,b)):(!a.q&&(a.q=new Lqb),Rhb(a.q,b,c)),a);return c}\nfunction qUb(){qUb=ccb;lUb=new rUb('P1_CYCLE_BREAKING',0);mUb=new rUb('P2_LAYERING',1);nUb=new rUb('P3_NODE_ORDERING',2);oUb=new rUb('P4_NODE_PLACEMENT',3);pUb=new rUb('P5_EDGE_ROUTING',4)}\nfunction SUb(a,b){var c,d,e,f,g;e=b==1?KUb:JUb;for(d=e.a.ec().Kc();d.Ob();){c=BD(d.Pb(),103);for(g=BD(Qc(a.f.c,c),21).Kc();g.Ob();){f=BD(g.Pb(),46);Lkb(a.b.b,f.b);Lkb(a.b.a,BD(f.b,81).d)}}}\nfunction IWb(a,b){AWb();var c;if(a.c==b.c){if(a.b==b.b||pWb(a.b,b.b)){c=mWb(a.b)?1:-1;if(a.a&&!b.a){return c}else if(!a.a&&b.a){return -c}}return beb(a.b.g,b.b.g)}else{return Kdb(a.c,b.c)}}\nfunction y6b(a,b){var c;Odd(b,'Hierarchical port position processing',1);c=a.b;c.c.length>0&&x6b((tCb(0,c.c.length),BD(c.c[0],29)),a);c.c.length>1&&x6b(BD(Ikb(c,c.c.length-1),29),a);Qdd(b)}\nfunction RVc(a,b){var c,d,e;if(CVc(a,b)){return true}for(d=new olb(b);d.a=e||b<0)throw vbb(new qcb(lue+b+mue+e));if(c>=e||c<0)throw vbb(new qcb(nue+c+mue+e));b!=c?(d=(f=a.Ti(c),a.Hi(b,f),f)):(d=a.Oi(c));return d}\nfunction m6d(a){var b,c,d;d=a;if(a){b=0;for(c=a.Ug();c;c=c.Ug()){if(++b>Wje){return m6d(c)}d=c;if(c==a){throw vbb(new Zdb('There is a cycle in the containment hierarchy of '+a))}}}return d}\nfunction Fe(a){var b,c,d;d=new xwb(She,'[',']');for(c=a.Kc();c.Ob();){b=c.Pb();uwb(d,PD(b)===PD(a)?'(this Collection)':b==null?Xhe:fcb(b))}return !d.a?d.c:d.e.length==0?d.a.a:d.a.a+(''+d.e)}\nfunction CVc(a,b){var c,d;d=false;if(b.gc()<2){return false}for(c=0;cd&&(BCb(b-1,a.length),a.charCodeAt(b-1)<=32)){--b}return d>0||b1&&(a.j.b+=a.e)}else{a.j.a+=c.a;a.j.b=$wnd.Math.max(a.j.b,c.b);a.d.c.length>1&&(a.j.a+=a.e)}}\nfunction gkc(){gkc=ccb;dkc=OC(GC(F1,1),bne,61,0,[(Ucd(),Acd),zcd,Rcd]);ckc=OC(GC(F1,1),bne,61,0,[zcd,Rcd,Tcd]);ekc=OC(GC(F1,1),bne,61,0,[Rcd,Tcd,Acd]);fkc=OC(GC(F1,1),bne,61,0,[Tcd,Acd,zcd])}\nfunction omc(a,b,c,d){var e,f,g,h,i,j,k;g=a.c.d;h=a.d.d;if(g.j==h.j){return}k=a.b;e=g.j;i=null;while(e!=h.j){i=b==0?Xcd(e):Vcd(e);f=umc(e,k.d[e.g],c);j=umc(i,k.d[i.g],c);Dsb(d,P6c(f,j));e=i}}\nfunction oFc(a,b,c,d){var e,f,g,h,i;g=JHc(a.a,b,c);h=BD(g.a,19).a;f=BD(g.b,19).a;if(d){i=BD(vNb(b,(wtc(),gtc)),10);e=BD(vNb(c,gtc),10);if(!!i&&!!e){mic(a.b,i,e);h+=a.b.i;f+=a.b.e}}return h>f}\nfunction oHc(a){var b,c,d,e,f,g,h,i,j;this.a=lHc(a);this.b=new Rkb;for(c=a,d=0,e=c.length;dwic(a.d).c){a.i+=a.g.c;yic(a.d)}else if(wic(a.d).c>wic(a.g).c){a.e+=a.d.c;yic(a.g)}else{a.i+=vic(a.g);a.e+=vic(a.d);yic(a.g);yic(a.d)}}}\nfunction XOc(a,b,c){var d,e,f,g;f=b.q;g=b.r;new DOc((HOc(),FOc),b,f,1);new DOc(FOc,f,g,1);for(e=new olb(c);e.ah&&(i=h/d);e>f&&(j=f/e);g=$wnd.Math.min(i,j);a.a+=g*(b.a-a.a);a.b+=g*(b.b-a.b)}\nfunction sZc(a,b,c,d,e){var f,g;g=false;f=BD(Ikb(c.b,0),33);while(yZc(a,b,f,d,e)){g=true;NZc(c,f);if(c.b.c.length==0){break}f=BD(Ikb(c.b,0),33)}c.b.c.length==0&&v$c(c.j,c);g&&a$c(b.q);return g}\nfunction t6c(a,b){i6c();var c,d,e,f;if(b.b<2){return false}f=Jsb(b,0);c=BD(Xsb(f),8);d=c;while(f.b!=f.d.c){e=BD(Xsb(f),8);if(s6c(a,d,e)){return true}d=e}if(s6c(a,d,c)){return true}return false}\nfunction ckd(a,b,c,d){var e,f;if(c==0){return !a.o&&(a.o=new dId((Thd(),Qhd),S2,a,0)),bId(a.o,b,d)}return f=BD(XKd((e=BD(Ajd(a,16),26),!e?a.zh():e),c),66),f.Nj().Rj(a,yjd(a),c-aLd(a.zh()),b,d)}\nfunction bod(a,b){var c;if(b!=a.sb){c=null;!!a.sb&&(c=BD(a.sb,49).ih(a,1,i5,c));!!b&&(c=BD(b,49).gh(a,1,i5,c));c=Jnd(a,b,c);!!c&&c.Fi()}else (a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,4,b,b))}\nfunction yqd(a,b){var c,d,e,f;if(b){e=Xpd(b,'x');c=new zrd(a);hmd(c.a,(uCb(e),e));f=Xpd(b,'y');d=new Ard(a);imd(d.a,(uCb(f),f))}else{throw vbb(new cqd('All edge sections need an end point.'))}}\nfunction wqd(a,b){var c,d,e,f;if(b){e=Xpd(b,'x');c=new wrd(a);omd(c.a,(uCb(e),e));f=Xpd(b,'y');d=new xrd(a);pmd(d.a,(uCb(f),f))}else{throw vbb(new cqd('All edge sections need a start point.'))}}\nfunction pyb(a,b){var c,d,e,f,g,h,i;for(d=syb(a),f=0,h=d.length;f>22-b;e=a.h<>22-b}else if(b<44){c=0;d=a.l<>44-b}else{c=0;d=0;e=a.l<a){throw vbb(new Wdb('k must be smaller than n'))}else return b==0||b==a?1:a==0?0:q6c(a)/(q6c(b)*q6c(a-b))}\nfunction jfd(a,b){var c,d,e,f;c=new _ud(a);while(c.g==null&&!c.c?Uud(c):c.g==null||c.i!=0&&BD(c.g[c.i-1],47).Ob()){f=BD(Vud(c),56);if(JD(f,160)){d=BD(f,160);for(e=0;e>4];b[c*2+1]=gde[f&15]}return zfb(b,0,b.length)}\nfunction fn(a){Vm();var b,c,d;d=a.c.length;switch(d){case 0:return Um;case 1:b=BD(qr(new olb(a)),42);return ln(b.cd(),b.dd());default:c=BD(Qkb(a,KC(CK,zie,42,a.c.length,0,1)),165);return new wx(c);}}\nfunction ITb(a){var b,c,d,e,f,g;b=new jkb;c=new jkb;Wjb(b,a);Wjb(c,a);while(c.b!=c.c){e=BD(fkb(c),37);for(g=new olb(e.a);g.a0&&WGc(a,c,b);return e}return TGc(a,b,c)}\nfunction MSc(a,b,c){var d,e,f,g;if(b.b!=0){d=new Psb;for(g=Jsb(b,0);g.b!=g.d.c;){f=BD(Xsb(g),86);ye(d,URc(f));e=f.e;e.a=BD(vNb(f,(mTc(),kTc)),19).a;e.b=BD(vNb(f,lTc),19).a}MSc(a,d,Udd(c,d.b/a.a|0))}}\nfunction JZc(a,b){var c,d,e,f,g;if(a.e<=b){return a.g}if(LZc(a,a.g,b)){return a.g}f=a.r;d=a.g;g=a.r;e=(f-d)/2+d;while(d+11&&(a.e.b+=a.a)}else{a.e.a+=c.a;a.e.b=$wnd.Math.max(a.e.b,c.b);a.d.c.length>1&&(a.e.a+=a.a)}}\nfunction cmc(a){var b,c,d,e;e=a.i;b=e.b;d=e.j;c=e.g;switch(e.a.g){case 0:c.a=(a.g.b.o.a-d.a)/2;break;case 1:c.a=b.d.n.a+b.d.a.a;break;case 2:c.a=b.d.n.a+b.d.a.a-d.a;break;case 3:c.b=b.d.n.b+b.d.a.b;}}\nfunction Q6c(a,b,c,d,e){if(dd&&(a.a=d);a.be&&(a.b=e);return a}\nfunction lsd(a){if(JD(a,149)){return esd(BD(a,149))}else if(JD(a,229)){return fsd(BD(a,229))}else if(JD(a,23)){return gsd(BD(a,23))}else{throw vbb(new Wdb(Xte+Fe(new amb(OC(GC(SI,1),Uhe,1,5,[a])))))}}\nfunction mhb(a,b,c,d,e){var f,g,h;f=true;for(g=0;g>>e|c[g+d+1]<>>e;++g}return f}\nfunction zMc(a,b,c,d){var e,f,g;if(b.k==(j0b(),g0b)){for(f=new Sr(ur(R_b(b).a.Kc(),new Sq));Qr(f);){e=BD(Rr(f),17);g=e.c.i.k;if(g==g0b&&a.c.a[e.c.i.c.p]==d&&a.c.a[b.c.p]==c){return true}}}return false}\nfunction mD(a,b){var c,d,e,f;b&=63;c=a.h&Fje;if(b<22){f=c>>>b;e=a.m>>b|c<<22-b;d=a.l>>b|a.m<<22-b}else if(b<44){f=0;e=c>>>b-22;d=a.m>>b-22|a.h<<44-b}else{f=0;e=0;d=c>>>b-44}return TC(d&Eje,e&Eje,f&Fje)}\nfunction Iic(a,b,c,d){var e;this.b=d;this.e=a==(rGc(),pGc);e=b[c];this.d=IC(sbb,[nie,dle],[177,25],16,[e.length,e.length],2);this.a=IC(WD,[nie,oje],[48,25],15,[e.length,e.length],2);this.c=new sic(b,c)}\nfunction ljc(a){var b,c,d;a.k=new Ki((Ucd(),OC(GC(F1,1),bne,61,0,[Scd,Acd,zcd,Rcd,Tcd])).length,a.j.c.length);for(d=new olb(a.j);d.a=c){K9b(a,b,d.p);return true}}return false}\nfunction Iod(a){var b;if((a.Db&64)!=0)return fld(a);b=new Wfb(dte);!a.a||Qfb(Qfb((b.a+=' \"',b),a.a),'\"');Qfb(Lfb(Qfb(Lfb(Qfb(Lfb(Qfb(Lfb((b.a+=' (',b),a.i),','),a.j),' | '),a.g),','),a.f),')');return b.a}\nfunction Z2d(a,b,c){var d,e,f,g,h;h=S6d(a.e.Tg(),b);e=BD(a.g,119);d=0;for(g=0;gc){return Jb(a,c,'start index')}if(b<0||b>c){return Jb(b,c,'end index')}return hc('end index (%s) must not be less than start index (%s)',OC(GC(SI,1),Uhe,1,5,[meb(b),meb(a)]))}\nfunction Pz(b,c){var d,e,f,g;for(e=0,f=b.length;e0&&iCc(a,f,c))}}b.p=0}\nfunction p5c(a){var b;this.c=new Psb;this.f=a.e;this.e=a.d;this.i=a.g;this.d=a.c;this.b=a.b;this.k=a.j;this.a=a.a;!a.i?(this.j=(b=BD(gdb(e1),9),new xqb(b,BD(_Bb(b,b.length),9),0))):(this.j=a.i);this.g=a.f}\nfunction Wb(a){var b,c,d,e;b=Kfb(Qfb(new Wfb('Predicates.'),'and'),40);c=true;for(e=new vib(a);e.b0?h[g-1]:KC(OQ,kne,10,0,0,1);e=h[g];j=g=0?a.Bh(e):vid(a,d)}else{throw vbb(new Wdb(ite+d.ne()+jte))}}else{eid(a,c,d)}}\nfunction aqd(a){var b,c;c=null;b=false;if(JD(a,204)){b=true;c=BD(a,204).a}if(!b){if(JD(a,258)){b=true;c=''+BD(a,258).a}}if(!b){if(JD(a,483)){b=true;c=''+BD(a,483).a}}if(!b){throw vbb(new vcb(Ute))}return c}\nfunction ORd(a,b){var c,d;if(a.f){while(b.Ob()){c=BD(b.Pb(),72);d=c.ak();if(JD(d,99)&&(BD(d,18).Bb&ote)!=0&&(!a.e||d.Gj()!=x2||d.aj()!=0)&&c.dd()!=null){b.Ub();return true}}return false}else{return b.Ob()}}\nfunction QRd(a,b){var c,d;if(a.f){while(b.Sb()){c=BD(b.Ub(),72);d=c.ak();if(JD(d,99)&&(BD(d,18).Bb&ote)!=0&&(!a.e||d.Gj()!=x2||d.aj()!=0)&&c.dd()!=null){b.Pb();return true}}return false}else{return b.Sb()}}\nfunction I2d(a,b,c){var d,e,f,g,h,i;i=S6d(a.e.Tg(),b);d=0;h=a.i;e=BD(a.g,119);for(g=0;g1&&(b.c[b.c.length]=f,true)}}\nfunction TJc(a){var b,c,d,e;c=new Psb;ye(c,a.o);d=new twb;while(c.b!=0){b=BD(c.b==0?null:(sCb(c.b!=0),Nsb(c,c.a.a)),508);e=KJc(a,b,true);e&&Ekb(d.a,b)}while(d.a.c.length!=0){b=BD(rwb(d),508);KJc(a,b,false)}}\nfunction _5c(){_5c=ccb;$5c=new a6c(ole,0);T5c=new a6c('BOOLEAN',1);X5c=new a6c('INT',2);Z5c=new a6c('STRING',3);U5c=new a6c('DOUBLE',4);V5c=new a6c('ENUM',5);W5c=new a6c('ENUMSET',6);Y5c=new a6c('OBJECT',7)}\nfunction H6c(a,b){var c,d,e,f,g;d=$wnd.Math.min(a.c,b.c);f=$wnd.Math.min(a.d,b.d);e=$wnd.Math.max(a.c+a.b,b.c+b.b);g=$wnd.Math.max(a.d+a.a,b.d+b.a);if(e=(e/2|0)){this.e=!d?null:d.c;this.d=e;while(c++0){uu(this)}}this.b=b;this.a=null}\nfunction rEb(a,b){var c,d;b.a?sEb(a,b):(c=BD(Exb(a.b,b.b),57),!!c&&c==a.a[b.b.f]&&!!c.a&&c.a!=b.b.a&&c.c.Fc(b.b),d=BD(Dxb(a.b,b.b),57),!!d&&a.a[d.f]==b.b&&!!d.a&&d.a!=b.b.a&&b.b.c.Fc(d),Fxb(a.b,b.b),undefined)}\nfunction FJb(a,b){var c,d;c=BD(Mpb(a.b,b),124);if(BD(BD(Qc(a.r,b),21),84).dc()){c.n.b=0;c.n.c=0;return}c.n.b=a.C.b;c.n.c=a.C.c;a.A.Hc((tdd(),sdd))&&KJb(a,b);d=JJb(a,b);KIb(a,b)==(Tbd(),Qbd)&&(d+=2*a.w);c.a.a=d}\nfunction OKb(a,b){var c,d;c=BD(Mpb(a.b,b),124);if(BD(BD(Qc(a.r,b),21),84).dc()){c.n.d=0;c.n.a=0;return}c.n.d=a.C.d;c.n.a=a.C.a;a.A.Hc((tdd(),sdd))&&SKb(a,b);d=RKb(a,b);KIb(a,b)==(Tbd(),Qbd)&&(d+=2*a.w);c.a.b=d}\nfunction cOb(a,b){var c,d,e,f;f=new Rkb;for(d=new olb(b);d.ac.a&&(d.Hc((i8c(),c8c))?(e=(b.a-c.a)/2):d.Hc(e8c)&&(e=b.a-c.a));b.b>c.b&&(d.Hc((i8c(),g8c))?(f=(b.b-c.b)/2):d.Hc(f8c)&&(f=b.b-c.b));Efd(a,e,f)}\nfunction aod(a,b,c,d,e,f,g,h,i,j,k,l,m){JD(a.Cb,88)&&XMd($Kd(BD(a.Cb,88)),4);pnd(a,c);a.f=g;dJd(a,h);fJd(a,i);ZId(a,j);eJd(a,k);CId(a,l);aJd(a,m);BId(a,true);AId(a,e);a.ok(f);yId(a,b);d!=null&&(a.i=null,_Id(a,d))}\nfunction PRd(a){var b,c;if(a.f){while(a.n>0){b=BD(a.k.Xb(a.n-1),72);c=b.ak();if(JD(c,99)&&(BD(c,18).Bb&ote)!=0&&(!a.e||c.Gj()!=x2||c.aj()!=0)&&b.dd()!=null){return true}else{--a.n}}return false}else{return a.n>0}}\nfunction Jb(a,b,c){if(a<0){return hc(The,OC(GC(SI,1),Uhe,1,5,[c,meb(a)]))}else if(b<0){throw vbb(new Wdb(Vhe+b))}else{return hc('%s (%s) must not be greater than size (%s)',OC(GC(SI,1),Uhe,1,5,[c,meb(a),meb(b)]))}}\nfunction Llb(a,b,c,d,e,f){var g,h,i,j;g=d-c;if(g<7){Ilb(b,c,d,f);return}i=c+e;h=d+e;j=i+(h-i>>1);Llb(b,a,i,j,-e,f);Llb(b,a,j,h,-e,f);if(f.ue(a[j-1],a[j])<=0){while(c=0?a.sh(f,c):uid(a,e,c)}else{throw vbb(new Wdb(ite+e.ne()+jte))}}else{did(a,d,e,c)}}\nfunction q6d(b){var c,d,e,f;d=BD(b,49).qh();if(d){try{e=null;c=nUd((yFd(),xFd),LEd(MEd(d)));if(c){f=c.rh();!!f&&(e=f.Wk(tfb(d.e)))}if(!!e&&e!=b){return q6d(e)}}catch(a){a=ubb(a);if(!JD(a,60))throw vbb(a)}}return b}\nfunction jrb(a,b,c){var d,e,f,g;g=b==null?0:a.b.se(b);e=(d=a.a.get(g),d==null?new Array:d);if(e.length==0){a.a.set(g,e)}else{f=grb(a,b,e);if(f){return f.ed(c)}}NC(e,e.length,new pjb(b,c));++a.c;zpb(a.b);return null}\nfunction YUc(a,b){var c,d;H2c(a.a);K2c(a.a,(PUc(),NUc),NUc);K2c(a.a,OUc,OUc);d=new j3c;e3c(d,OUc,(tVc(),sVc));PD(hkd(b,(ZWc(),LWc)))!==PD((pWc(),mWc))&&e3c(d,OUc,qVc);e3c(d,OUc,rVc);E2c(a.a,d);c=F2c(a.a,b);return c}\nfunction uC(a){if(!a){return OB(),NB}var b=a.valueOf?a.valueOf():a;if(b!==a){var c=qC[typeof b];return c?c(b):xC(typeof b)}else if(a instanceof Array||a instanceof $wnd.Array){return new xB(a)}else{return new fC(a)}}\nfunction RJb(a,b,c){var d,e,f;f=a.o;d=BD(Mpb(a.p,c),244);e=d.i;e.b=gIb(d);e.a=fIb(d);e.b=$wnd.Math.max(e.b,f.a);e.b>f.a&&!b&&(e.b=f.a);e.c=-(e.b-f.a)/2;switch(c.g){case 1:e.d=-e.a;break;case 3:e.d=f.b;}hIb(d);iIb(d)}\nfunction SJb(a,b,c){var d,e,f;f=a.o;d=BD(Mpb(a.p,c),244);e=d.i;e.b=gIb(d);e.a=fIb(d);e.a=$wnd.Math.max(e.a,f.b);e.a>f.b&&!b&&(e.a=f.b);e.d=-(e.a-f.b)/2;switch(c.g){case 4:e.c=-e.b;break;case 2:e.c=f.a;}hIb(d);iIb(d)}\nfunction Jgc(a,b){var c,d,e,f,g;if(b.dc()){return}e=BD(b.Xb(0),128);if(b.gc()==1){Igc(a,e,e,1,0,b);return}c=1;while(c0){try{f=Icb(c,Rie,Ohe)}catch(a){a=ubb(a);if(JD(a,127)){e=a;throw vbb(new rFd(e))}else throw vbb(a)}}d=(!b.a&&(b.a=new z0d(b)),b.a);return f=0?BD(qud(d,f),56):null}\nfunction Ib(a,b){if(a<0){return hc(The,OC(GC(SI,1),Uhe,1,5,['index',meb(a)]))}else if(b<0){throw vbb(new Wdb(Vhe+b))}else{return hc('%s (%s) must be less than size (%s)',OC(GC(SI,1),Uhe,1,5,['index',meb(a),meb(b)]))}}\nfunction Slb(a){var b,c,d,e,f;if(a==null){return Xhe}f=new xwb(She,'[',']');for(c=a,d=0,e=c.length;d0){g=a.c.d;h=a.d.d;e=Y6c(c7c(new f7c(h.a,h.b),g),1/(d+1));f=new f7c(g.a,g.b);for(c=new olb(a.a);c.a=0?a._g(c,true,true):sid(a,e,true),153));BD(d,215).ol(b)}else{throw vbb(new Wdb(ite+b.ne()+jte))}}\nfunction ugb(a){var b,c;if(a>-140737488355328&&a<140737488355328){if(a==0){return 0}b=a<0;b&&(a=-a);c=QD($wnd.Math.floor($wnd.Math.log(a)/0.6931471805599453));(!b||a!=$wnd.Math.pow(2,c))&&++c;return c}return vgb(Cbb(a))}\nfunction QOc(a){var b,c,d,e,f,g,h;f=new zsb;for(c=new olb(a);c.a2&&h.e.b+h.j.b<=2){e=h;d=g}f.a.zc(e,f);e.q=d}return f}\nfunction K5b(a,b){var c,d,e;d=new b0b(a);tNb(d,b);yNb(d,(wtc(),Gsc),b);yNb(d,(Nyc(),Vxc),(dcd(),$bd));yNb(d,mwc,(F7c(),B7c));__b(d,(j0b(),e0b));c=new H0b;F0b(c,d);G0b(c,(Ucd(),Tcd));e=new H0b;F0b(e,d);G0b(e,zcd);return d}\nfunction Spc(a){switch(a.g){case 0:return new fGc((rGc(),oGc));case 1:return new CFc;case 2:return new fHc;default:throw vbb(new Wdb('No implementation is available for the crossing minimizer '+(a.f!=null?a.f:''+a.g)));}}\nfunction tDc(a,b){var c,d,e,f,g;a.c[b.p]=true;Ekb(a.a,b);for(g=new olb(b.j);g.a=f){g.$b()}else{e=g.Kc();for(d=0;d0?zh():g<0&&Bw(a,b,-g);return true}else{return false}}\nfunction fIb(a){var b,c,d,e,f,g,h;h=0;if(a.b==0){g=jIb(a,true);b=0;for(d=g,e=0,f=d.length;e0){h+=c;++b}}b>1&&(h+=a.c*(b-1))}else{h=Mtb(Zzb(OAb(JAb(Plb(a.a),new xIb),new zIb)))}return h>0?h+a.n.d+a.n.a:0}\nfunction gIb(a){var b,c,d,e,f,g,h;h=0;if(a.b==0){h=Mtb(Zzb(OAb(JAb(Plb(a.a),new tIb),new vIb)))}else{g=kIb(a,true);b=0;for(d=g,e=0,f=d.length;e0){h+=c;++b}}b>1&&(h+=a.c*(b-1))}return h>0?h+a.n.b+a.n.c:0}\nfunction MJb(a,b){var c,d,e,f;f=BD(Mpb(a.b,b),124);c=f.a;for(e=BD(BD(Qc(a.r,b),21),84).Kc();e.Ob();){d=BD(e.Pb(),111);!!d.c&&(c.a=$wnd.Math.max(c.a,ZHb(d.c)))}if(c.a>0){switch(b.g){case 2:f.n.c=a.s;break;case 4:f.n.b=a.s;}}}\nfunction NQb(a,b){var c,d,e;c=BD(vNb(b,(wSb(),oSb)),19).a-BD(vNb(a,oSb),19).a;if(c==0){d=c7c(R6c(BD(vNb(a,(HSb(),DSb)),8)),BD(vNb(a,ESb),8));e=c7c(R6c(BD(vNb(b,DSb),8)),BD(vNb(b,ESb),8));return Kdb(d.a*d.b,e.a*e.b)}return c}\nfunction iRc(a,b){var c,d,e;c=BD(vNb(b,(JTc(),ETc)),19).a-BD(vNb(a,ETc),19).a;if(c==0){d=c7c(R6c(BD(vNb(a,(mTc(),VSc)),8)),BD(vNb(a,WSc),8));e=c7c(R6c(BD(vNb(b,VSc),8)),BD(vNb(b,WSc),8));return Kdb(d.a*d.b,e.a*e.b)}return c}\nfunction TZb(a){var b,c;c=new Ufb;c.a+='e_';b=KZb(a);b!=null&&(c.a+=''+b,c);if(!!a.c&&!!a.d){Qfb((c.a+=' ',c),C0b(a.c));Qfb(Pfb((c.a+='[',c),a.c.i),']');Qfb((c.a+=gne,c),C0b(a.d));Qfb(Pfb((c.a+='[',c),a.d.i),']')}return c.a}\nfunction zRc(a){switch(a.g){case 0:return new lUc;case 1:return new sUc;case 2:return new CUc;case 3:return new IUc;default:throw vbb(new Wdb('No implementation is available for the layout phase '+(a.f!=null?a.f:''+a.g)));}}\nfunction mfd(a,b,c,d,e){var f;f=0;switch(e.g){case 1:f=$wnd.Math.max(0,b.b+a.b-(c.b+d));break;case 3:f=$wnd.Math.max(0,-a.b-d);break;case 2:f=$wnd.Math.max(0,-a.a-d);break;case 4:f=$wnd.Math.max(0,b.a+a.a-(c.a+d));}return f}\nfunction mqd(a,b,c){var d,e,f,g,h;if(c){e=c.a.length;d=new Yge(e);for(h=(d.b-d.a)*d.c<0?(Xge(),Wge):new she(d);h.Ob();){g=BD(h.Pb(),19);f=Zpd(c,g.a);Lte in f.a||Mte in f.a?$qd(a,f,b):erd(a,f,b);otd(BD(Ohb(a.b,Wpd(f)),79))}}}\nfunction LJd(a){var b,c;switch(a.b){case -1:{return true}case 0:{c=a.t;if(c>1||c==-1){a.b=-1;return true}else{b=wId(a);if(!!b&&(Q6d(),b.Cj()==Bve)){a.b=-1;return true}else{a.b=1;return false}}}default:case 1:{return false}}}\nfunction k1d(a,b){var c,d,e,f,g;d=(!b.s&&(b.s=new cUd(t5,b,21,17)),b.s);f=null;for(e=0,g=d.i;e=0&&f=0?a._g(c,true,true):sid(a,e,true),153));return BD(d,215).ll(b)}else{throw vbb(new Wdb(ite+b.ne()+lte))}}\nfunction BZd(){tZd();var a;if(sZd)return BD(nUd((yFd(),xFd),_ve),1939);rEd(CK,new J_d);CZd();a=BD(JD(Phb((yFd(),xFd),_ve),547)?Phb(xFd,_ve):new AZd,547);sZd=true;yZd(a);zZd(a);Rhb((JFd(),IFd),a,new EZd);Shb(xFd,_ve,a);return a}\nfunction v2d(a,b){var c,d,e,f;a.j=-1;if(oid(a.e)){c=a.i;f=a.i!=0;lud(a,b);d=new pSd(a.e,3,a.c,null,b,c,f);e=b.Qk(a.e,a.c,null);e=h3d(a,b,e);if(!e){Uhd(a.e,d)}else{e.Ei(d);e.Fi()}}else{lud(a,b);e=b.Qk(a.e,a.c,null);!!e&&e.Fi()}}\nfunction rA(a,b){var c,d,e;e=0;d=b[0];if(d>=a.length){return -1}c=(BCb(d,a.length),a.charCodeAt(d));while(c>=48&&c<=57){e=e*10+(c-48);++d;if(d>=a.length){break}c=(BCb(d,a.length),a.charCodeAt(d))}d>b[0]?(b[0]=d):(e=-1);return e}\nfunction vMb(a){var b,c,d,e,f;e=BD(a.a,19).a;f=BD(a.b,19).a;c=e;d=f;b=$wnd.Math.max($wnd.Math.abs(e),$wnd.Math.abs(f));if(e<=0&&e==f){c=0;d=f-1}else{if(e==-b&&f!=b){c=f;d=e;f>=0&&++c}else{c=-f;d=e}}return new vgd(meb(c),meb(d))}\nfunction fNb(a,b,c,d){var e,f,g,h,i,j;for(e=0;e=0&&j>=0&&i=a.i)throw vbb(new qcb(lue+b+mue+a.i));if(c>=a.i)throw vbb(new qcb(nue+c+mue+a.i));d=a.g[c];if(b!=c){b>16);b=d>>16&16;c=16-b;a=a>>b;d=a-256;b=d>>16&8;c+=b;a<<=b;d=a-Rje;b=d>>16&4;c+=b;a<<=b;d=a-oie;b=d>>16&2;c+=b;a<<=b;d=a>>14;b=d&~(d>>1);return c+2-b}}\nfunction $Pb(a){QPb();var b,c,d,e;PPb=new Rkb;OPb=new Lqb;NPb=new Rkb;b=(!a.a&&(a.a=new cUd(E2,a,10,11)),a.a);SPb(b);for(e=new Fyd(b);e.e!=e.i.gc();){d=BD(Dyd(e),33);if(Jkb(PPb,d,0)==-1){c=new Rkb;Ekb(NPb,c);TPb(d,c)}}return NPb}\nfunction BQb(a,b,c){var d,e,f,g;a.a=c.b.d;if(JD(b,352)){e=itd(BD(b,79),false,false);f=ofd(e);d=new FQb(a);reb(f,d);ifd(f,e);b.We((Y9c(),Q8c))!=null&&reb(BD(b.We(Q8c),74),d)}else{g=BD(b,470);g.Hg(g.Dg()+a.a.a);g.Ig(g.Eg()+a.a.b)}}\nfunction _5b(a,b){var c,d,e,f,g,h,i,j;j=Edb(ED(vNb(b,(Nyc(),zyc))));i=a[0].n.a+a[0].o.a+a[0].d.c+j;for(h=1;h=0){return c}h=U6c(c7c(new f7c(g.c+g.b/2,g.d+g.a/2),new f7c(f.c+f.b/2,f.d+f.a/2)));return -(xOb(f,g)-1)*h}\nfunction ufd(a,b,c){var d;MAb(new YAb(null,(!c.a&&(c.a=new cUd(A2,c,6,6)),new Kub(c.a,16))),new Mfd(a,b));MAb(new YAb(null,(!c.n&&(c.n=new cUd(D2,c,1,7)),new Kub(c.n,16))),new Ofd(a,b));d=BD(hkd(c,(Y9c(),Q8c)),74);!!d&&p7c(d,a,b)}\nfunction sid(a,b,c){var d,e,f;f=e1d((O6d(),M6d),a.Tg(),b);if(f){Q6d();BD(f,66).Oj()||(f=_1d(q1d(M6d,f)));e=(d=a.Yg(f),BD(d>=0?a._g(d,true,true):sid(a,f,true),153));return BD(e,215).hl(b,c)}else{throw vbb(new Wdb(ite+b.ne()+lte))}}\nfunction wAd(a,b,c,d){var e,f,g,h,i;e=a.d[b];if(e){f=e.g;i=e.i;if(d!=null){for(h=0;h=c){d=b;j=(i.c+i.a)/2;g=j-c;if(i.c<=j-c){e=new bPc(i.c,g);Dkb(a,d++,e)}h=j+c;if(h<=i.a){f=new bPc(h,i.a);wCb(d,a.c.length);aCb(a.c,d,f)}}}\nfunction u0d(a){var b;if(!a.c&&a.g==null){a.d=a.si(a.f);wtd(a,a.d);b=a.d}else{if(a.g==null){return true}else if(a.i==0){return false}else{b=BD(a.g[a.i-1],47)}}if(b==a.b&&null.km>=null.jm()){Vud(a);return u0d(a)}else{return b.Ob()}}\nfunction KTb(a,b,c){var d,e,f,g,h;h=c;!h&&(h=Ydd(new Zdd,0));Odd(h,Vme,1);aUb(a.c,b);g=EYb(a.a,b);if(g.gc()==1){MTb(BD(g.Xb(0),37),h)}else{f=1/g.gc();for(e=g.Kc();e.Ob();){d=BD(e.Pb(),37);MTb(d,Udd(h,f))}}CYb(a.a,g,b);NTb(b);Qdd(h)}\nfunction qYb(a){this.a=a;if(a.c.i.k==(j0b(),e0b)){this.c=a.c;this.d=BD(vNb(a.c.i,(wtc(),Hsc)),61)}else if(a.d.i.k==e0b){this.c=a.d;this.d=BD(vNb(a.d.i,(wtc(),Hsc)),61)}else{throw vbb(new Wdb('Edge '+a+' is not an external edge.'))}}\nfunction oQd(a,b){var c,d,e;e=a.b;a.b=b;(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,3,e,a.b));if(!b){pnd(a,null);qQd(a,0);pQd(a,null)}else if(b!=a){pnd(a,b.zb);qQd(a,b.d);c=(d=b.c,d==null?b.zb:d);pQd(a,c==null||dfb(c,b.zb)?null:c)}}\nfunction NRd(a){var b,c;if(a.f){while(a.n=g)throw vbb(new Cyd(b,g));e=c[b];if(g==1){d=null}else{d=KC($3,hve,415,g-1,0,1);$fb(c,0,d,0,b);f=g-b-1;f>0&&$fb(c,b+1,d,b,f)}b0d(a,d);a0d(a,b,e);return e}\nfunction m8d(){m8d=ccb;k8d=BD(qud(ZKd((r8d(),q8d).qb),6),34);h8d=BD(qud(ZKd(q8d.qb),3),34);i8d=BD(qud(ZKd(q8d.qb),4),34);j8d=BD(qud(ZKd(q8d.qb),5),18);XId(k8d);XId(h8d);XId(i8d);XId(j8d);l8d=new amb(OC(GC(t5,1),Mve,170,0,[k8d,h8d]))}\nfunction AJb(a,b){var c;this.d=new H_b;this.b=b;this.e=new g7c(b.qf());c=a.u.Hc((rcd(),ocd));a.u.Hc(ncd)?a.D?(this.a=c&&!b.If()):(this.a=true):a.u.Hc(pcd)?c?(this.a=!(b.zf().Kc().Ob()||b.Bf().Kc().Ob())):(this.a=false):(this.a=false)}\nfunction IKb(a,b){var c,d,e,f;c=a.o.a;for(f=BD(BD(Qc(a.r,b),21),84).Kc();f.Ob();){e=BD(f.Pb(),111);e.e.a=(d=e.b,d.Xe((Y9c(),s9c))?d.Hf()==(Ucd(),Tcd)?-d.rf().a-Edb(ED(d.We(s9c))):c+Edb(ED(d.We(s9c))):d.Hf()==(Ucd(),Tcd)?-d.rf().a:c)}}\nfunction Q1b(a,b){var c,d,e,f;c=BD(vNb(a,(Nyc(),Lwc)),103);f=BD(hkd(b,$xc),61);e=BD(vNb(a,Vxc),98);if(e!=(dcd(),bcd)&&e!=ccd){if(f==(Ucd(),Scd)){f=lfd(b,c);f==Scd&&(f=Zcd(c))}}else{d=M1b(b);d>0?(f=Zcd(c)):(f=Wcd(Zcd(c)))}jkd(b,$xc,f)}\nfunction olc(a,b){var c,d,e,f,g;g=a.j;b.a!=b.b&&Okb(g,new Ulc);e=g.c.length/2|0;for(d=0;d0&&WGc(a,c,b);return f}else if(d.a!=null){WGc(a,b,c);return -1}else if(e.a!=null){WGc(a,c,b);return 1}return 0}\nfunction swd(a,b){var c,d,e,f;if(a.ej()){c=a.Vi();f=a.fj();++a.j;a.Hi(c,a.oi(c,b));d=a.Zi(3,null,b,c,f);if(a.bj()){e=a.cj(b,null);if(!e){a.$i(d)}else{e.Ei(d);e.Fi()}}else{a.$i(d)}}else{Bvd(a,b);if(a.bj()){e=a.cj(b,null);!!e&&e.Fi()}}}\nfunction D2d(a,b){var c,d,e,f,g;g=S6d(a.e.Tg(),b);e=new yud;c=BD(a.g,119);for(f=a.i;--f>=0;){d=c[f];g.rl(d.ak())&&wtd(e,d)}!Yxd(a,e)&&oid(a.e)&&GLd(a,b.$j()?H2d(a,6,b,(mmb(),jmb),null,-1,false):H2d(a,b.Kj()?2:1,b,null,null,-1,false))}\nfunction Dhb(){Dhb=ccb;var a,b;Bhb=KC(cJ,nie,91,32,0,1);Chb=KC(cJ,nie,91,32,0,1);a=1;for(b=0;b<=18;b++){Bhb[b]=ghb(a);Chb[b]=ghb(Nbb(a,b));a=Ibb(a,5)}for(;bg){return false}}if(b.q){d=b.C;g=d.c.c.a-d.o.a/2;e=d.n.a-c;if(e>g){return false}}return true}\nfunction wcc(a,b){var c;Odd(b,'Partition preprocessing',1);c=BD(GAb(JAb(LAb(JAb(new YAb(null,new Kub(a.a,16)),new Acc),new Ccc),new Ecc),Byb(new fzb,new dzb,new Ezb,OC(GC(xL,1),Kie,132,0,[(Fyb(),Dyb)]))),15);MAb(c.Oc(),new Gcc);Qdd(b)}\nfunction DMc(a){wMc();var b,c,d,e,f,g,h;c=new $rb;for(e=new olb(a.e.b);e.a1?(a.e*=Edb(a.a)):(a.f/=Edb(a.a));DOb(a);EOb(a);AOb(a);yNb(a.b,(CPb(),uPb),a.g)}\nfunction Y5b(a,b,c){var d,e,f,g,h,i;d=0;i=c;if(!b){d=c*(a.c.length-1);i*=-1}for(f=new olb(a);f.a=0){if(!b){b=new Ifb;d>0&&Efb(b,a.substr(0,d))}b.a+='\\\\';Afb(b,c&aje)}else !!b&&Afb(b,c&aje)}return b?b.a:a}\nfunction l5c(a){var b;if(!a.a){throw vbb(new Zdb('IDataType class expected for layout option '+a.f))}b=gvd(a.a);if(b==null){throw vbb(new Zdb(\"Couldn't create new instance of property '\"+a.f+\"'. \"+ise+(fdb(Y3),Y3.k)+jse))}return BD(b,414)}\nfunction aid(a){var b,c,d,e,f;f=a.eh();if(f){if(f.kh()){e=xid(a,f);if(e!=f){c=a.Vg();d=(b=a.Vg(),b>=0?a.Qg(null):a.eh().ih(a,-1-b,null,null));a.Rg(BD(e,49),c);!!d&&d.Fi();a.Lg()&&a.Mg()&&c>-1&&Uhd(a,new nSd(a,9,c,f,e));return e}}}return f}\nfunction nTb(a){var b,c,d,e,f,g,h,i;g=0;f=a.f.e;for(d=0;d>5;if(e>=a.d){return a.e<0}c=a.a[e];b=1<<(b&31);if(a.e<0){d=Mgb(a);if(e>16)),15).Xc(f);if(h0){!(fad(a.a.c)&&b.n.d)&&!(gad(a.a.c)&&b.n.b)&&(b.g.d+=$wnd.Math.max(0,d/2-0.5));!(fad(a.a.c)&&b.n.a)&&!(gad(a.a.c)&&b.n.c)&&(b.g.a-=d-1)}}}\nfunction N3b(a){var b,c,d,e,f;e=new Rkb;f=O3b(a,e);b=BD(vNb(a,(wtc(),gtc)),10);if(b){for(d=new olb(b.j);d.a>b;f=a.m>>b|c<<22-b;e=a.l>>b|a.m<<22-b}else if(b<44){g=d?Fje:0;f=c>>b-22;e=a.m>>b-22|c<<44-b}else{g=d?Fje:0;f=d?Eje:0;e=c>>b-44}return TC(e&Eje,f&Eje,g&Fje)}\nfunction XOb(a){var b,c,d,e,f,g;this.c=new Rkb;this.d=a;d=Pje;e=Pje;b=Qje;c=Qje;for(g=Jsb(a,0);g.b!=g.d.c;){f=BD(Xsb(g),8);d=$wnd.Math.min(d,f.a);e=$wnd.Math.min(e,f.b);b=$wnd.Math.max(b,f.a);c=$wnd.Math.max(c,f.b)}this.a=new J6c(d,e,b-d,c-e)}\nfunction Dac(a,b){var c,d,e,f,g,h;for(f=new olb(a.b);f.a0&&JD(b,42)){a.a.qj();j=BD(b,42);i=j.cd();f=i==null?0:tb(i);g=DAd(a.a,f);c=a.a.d[g];if(c){d=BD(c.g,367);k=c.i;for(h=0;h=2){c=e.Kc();b=ED(c.Pb());while(c.Ob()){f=b;b=ED(c.Pb());d=$wnd.Math.min(d,(uCb(b),b)-(uCb(f),f))}}return d}\nfunction gUc(a,b){var c,d,e,f,g;d=new Psb;Gsb(d,b,d.c.b,d.c);do{c=(sCb(d.b!=0),BD(Nsb(d,d.a.a),86));a.b[c.g]=1;for(f=Jsb(c.d,0);f.b!=f.d.c;){e=BD(Xsb(f),188);g=e.c;a.b[g.g]==1?Dsb(a.a,e):a.b[g.g]==2?(a.b[g.g]=1):Gsb(d,g,d.c.b,d.c)}}while(d.b!=0)}\nfunction Ju(a,b){var c,d,e;if(PD(b)===PD(Qb(a))){return true}if(!JD(b,15)){return false}d=BD(b,15);e=a.gc();if(e!=d.gc()){return false}if(JD(d,54)){for(c=0;c0&&(e=c);for(g=new olb(a.f.e);g.a0){b-=1;c-=1}else{if(d>=0&&e<0){b+=1;c+=1}else{if(d>0&&e>=0){b-=1;c+=1}else{b+=1;c-=1}}}}}return new vgd(meb(b),meb(c))}\nfunction PIc(a,b){if(a.cb.c){return 1}else if(a.bb.b){return 1}else if(a.a!=b.a){return tb(a.a)-tb(b.a)}else if(a.d==(UIc(),TIc)&&b.d==SIc){return -1}else if(a.d==SIc&&b.d==TIc){return 1}return 0}\nfunction aNc(a,b){var c,d,e,f,g;f=b.a;f.c.i==b.b?(g=f.d):(g=f.c);f.c.i==b.b?(d=f.c):(d=f.d);e=NLc(a.a,g,d);if(e>0&&e0}else if(e<0&&-e0}return false}\nfunction RZc(a,b,c,d){var e,f,g,h,i,j,k,l;e=(b-a.d)/a.c.c.length;f=0;a.a+=c;a.d=b;for(l=new olb(a.c);l.a>24}return g}\nfunction vdb(a){if(a.pe()){var b=a.c;b.qe()?(a.o='['+b.n):!b.pe()?(a.o='[L'+b.ne()+';'):(a.o='['+b.ne());a.b=b.me()+'[]';a.k=b.oe()+'[]';return}var c=a.j;var d=a.d;d=d.split('/');a.o=ydb('.',[c,ydb('$',d)]);a.b=ydb('.',[c,ydb('.',d)]);a.k=d[d.length-1]}\nfunction qGb(a,b){var c,d,e,f,g;g=null;for(f=new olb(a.e.a);f.a=0;b-=2){for(c=0;c<=b;c+=2){if(a.b[c]>a.b[c+2]||a.b[c]===a.b[c+2]&&a.b[c+1]>a.b[c+3]){d=a.b[c+2];a.b[c+2]=a.b[c];a.b[c]=d;d=a.b[c+3];a.b[c+3]=a.b[c+1];a.b[c+1]=d}}}a.c=true}\nfunction UUb(a,b){var c,d,e,f,g,h,i,j;g=b==1?KUb:JUb;for(f=g.a.ec().Kc();f.Ob();){e=BD(f.Pb(),103);for(i=BD(Qc(a.f.c,e),21).Kc();i.Ob();){h=BD(i.Pb(),46);d=BD(h.b,81);j=BD(h.a,189);c=j.c;switch(e.g){case 2:case 1:d.g.d+=c;break;case 4:case 3:d.g.c+=c;}}}}\nfunction PFc(a,b){var c,d,e,f,g,h,i,j,k;j=-1;k=0;for(g=a,h=0,i=g.length;h0&&++k}}++j}return k}\nfunction Eid(a){var b,c;c=new Wfb(hdb(a.gm));c.a+='@';Qfb(c,(b=tb(a)>>>0,b.toString(16)));if(a.kh()){c.a+=' (eProxyURI: ';Pfb(c,a.qh());if(a.$g()){c.a+=' eClass: ';Pfb(c,a.$g())}c.a+=')'}else if(a.$g()){c.a+=' (eClass: ';Pfb(c,a.$g());c.a+=')'}return c.a}\nfunction TDb(a){var b,c,d,e;if(a.e){throw vbb(new Zdb((fdb(TM),Jke+TM.k+Kke)))}a.d==(ead(),cad)&&SDb(a,aad);for(c=new olb(a.a.a);c.a>24}return c}\nfunction lKb(a,b,c){var d,e,f;e=BD(Mpb(a.i,b),306);if(!e){e=new bIb(a.d,b,c);Npb(a.i,b,e);if(sJb(b)){CHb(a.a,b.c,b.b,e)}else{f=rJb(b);d=BD(Mpb(a.p,f),244);switch(f.g){case 1:case 3:e.j=true;lIb(d,b.b,e);break;case 4:case 2:e.k=true;lIb(d,b.c,e);}}}return e}\nfunction r3d(a,b,c,d){var e,f,g,h,i,j;h=new yud;i=S6d(a.e.Tg(),b);e=BD(a.g,119);Q6d();if(BD(b,66).Oj()){for(g=0;g=0){return e}else{f=1;for(h=new olb(b.j);h.a0&&b.ue((tCb(e-1,a.c.length),BD(a.c[e-1],10)),f)>0){Nkb(a,e,(tCb(e-1,a.c.length),BD(a.c[e-1],10)));--e}tCb(e,a.c.length);a.c[e]=f}c.a=new Lqb;c.b=new Lqb}\nfunction n5c(a,b,c){var d,e,f,g,h,i,j,k;k=(d=BD(b.e&&b.e(),9),new xqb(d,BD(_Bb(d,d.length),9),0));i=mfb(c,'[\\\\[\\\\]\\\\s,]+');for(f=i,g=0,h=f.length;g0){!(fad(a.a.c)&&b.n.d)&&!(gad(a.a.c)&&b.n.b)&&(b.g.d-=$wnd.Math.max(0,d/2-0.5));!(fad(a.a.c)&&b.n.a)&&!(gad(a.a.c)&&b.n.c)&&(b.g.a+=$wnd.Math.max(0,d-1))}}}\nfunction Hac(a,b,c){var d,e;if((a.c-a.b&a.a.length-1)==2){if(b==(Ucd(),Acd)||b==zcd){xac(BD(bkb(a),15),(rbd(),nbd));xac(BD(bkb(a),15),obd)}else{xac(BD(bkb(a),15),(rbd(),obd));xac(BD(bkb(a),15),nbd)}}else{for(e=new xkb(a);e.a!=e.b;){d=BD(vkb(e),15);xac(d,c)}}}\nfunction htd(a,b){var c,d,e,f,g,h,i;e=Nu(new qtd(a));h=new Bib(e,e.c.length);f=Nu(new qtd(b));i=new Bib(f,f.c.length);g=null;while(h.b>0&&i.b>0){c=(sCb(h.b>0),BD(h.a.Xb(h.c=--h.b),33));d=(sCb(i.b>0),BD(i.a.Xb(i.c=--i.b),33));if(c==d){g=c}else{break}}return g}\nfunction Cub(a,b){var c,d,e,f,g,h;f=a.a*kke+a.b*1502;h=a.b*kke+11;c=$wnd.Math.floor(h*lke);f+=c;h-=c*mke;f%=mke;a.a=f;a.b=h;if(b<=24){return $wnd.Math.floor(a.a*wub[b])}else{e=a.a*(1<=2147483648&&(d-=Zje);return d}}\nfunction Zic(a,b,c){var d,e,f,g;if(bjc(a,b)>bjc(a,c)){d=V_b(c,(Ucd(),zcd));a.d=d.dc()?0:B0b(BD(d.Xb(0),11));g=V_b(b,Tcd);a.b=g.dc()?0:B0b(BD(g.Xb(0),11))}else{e=V_b(c,(Ucd(),Tcd));a.d=e.dc()?0:B0b(BD(e.Xb(0),11));f=V_b(b,zcd);a.b=f.dc()?0:B0b(BD(f.Xb(0),11))}}\nfunction l6d(a){var b,c,d,e,f,g,h;if(a){b=a.Hh(_ve);if(b){g=GD(AAd((!b.b&&(b.b=new sId((jGd(),fGd),x6,b)),b.b),'conversionDelegates'));if(g!=null){h=new Rkb;for(d=mfb(g,'\\\\w+'),e=0,f=d.length;ea.c){break}else if(e.a>=a.s){f<0&&(f=g);h=g}}i=(a.s+a.c)/2;if(f>=0){d=NOc(a,b,f,h);i=$Oc((tCb(d,b.c.length),BD(b.c[d],329)));YOc(b,d,c)}return i}\nfunction lZc(){lZc=ccb;RYc=new Osd((Y9c(),r8c),1.3);VYc=I8c;gZc=new q0b(15);fZc=new Osd(f9c,gZc);jZc=new Osd(T9c,15);SYc=w8c;_Yc=Y8c;aZc=_8c;bZc=b9c;$Yc=W8c;cZc=e9c;hZc=x9c;eZc=(OYc(),KYc);ZYc=IYc;dZc=JYc;iZc=MYc;WYc=HYc;XYc=O8c;YYc=P8c;UYc=GYc;TYc=FYc;kZc=NYc}\nfunction Bnd(a,b,c){var d,e,f,g,h,i,j;g=(f=new RHd,f);PHd(g,(uCb(b),b));j=(!g.b&&(g.b=new sId((jGd(),fGd),x6,g)),g.b);for(i=1;i0&&JPb(this,e)}}\nfunction IQb(a,b,c,d,e,f){var g,h,i;if(!e[b.b]){e[b.b]=true;g=d;!g&&(g=new kRb);Ekb(g.e,b);for(i=f[b.b].Kc();i.Ob();){h=BD(i.Pb(),282);if(h.d==c||h.c==c){continue}h.c!=b&&IQb(a,h.c,b,g,e,f);h.d!=b&&IQb(a,h.d,b,g,e,f);Ekb(g.c,h);Gkb(g.d,h.b)}return g}return null}\nfunction e4b(a){var b,c,d,e,f,g,h;b=0;for(e=new olb(a.e);e.a=2}\nfunction gec(a,b){var c,d,e,f;Odd(b,'Self-Loop pre-processing',1);for(d=new olb(a.a);d.a1){return false}b=qqb(zbd,OC(GC(B1,1),Kie,93,0,[ybd,Bbd]));if(Ox(Cx(b,a))>1){return false}d=qqb(Gbd,OC(GC(B1,1),Kie,93,0,[Fbd,Ebd]));if(Ox(Cx(d,a))>1){return false}return true}\nfunction U0d(a,b){var c,d,e;c=b.Hh(a.a);if(c){e=GD(AAd((!c.b&&(c.b=new sId((jGd(),fGd),x6,c)),c.b),'affiliation'));if(e!=null){d=kfb(e,wfb(35));return d==-1?l1d(a,u1d(a,bKd(b.Hj())),e):d==0?l1d(a,null,e.substr(1)):l1d(a,e.substr(0,d),e.substr(d+1))}}return null}\nfunction ic(b){var c,d,e;try{return b==null?Xhe:fcb(b)}catch(a){a=ubb(a);if(JD(a,102)){c=a;e=hdb(rb(b))+'@'+(d=(Zfb(),kCb(b))>>>0,d.toString(16));tyb(xyb(),($xb(),'Exception during lenientFormat for '+e),c);return '<'+e+' threw '+hdb(c.gm)+'>'}else throw vbb(a)}}\nfunction mzc(a){switch(a.g){case 0:return new xDc;case 1:return new ZCc;case 2:return new DCc;case 3:return new QCc;case 4:return new LDc;case 5:return new iDc;default:throw vbb(new Wdb('No implementation is available for the layerer '+(a.f!=null?a.f:''+a.g)));}}\nfunction AQc(a,b,c){var d,e,f;for(f=new olb(a.t);f.a0){d.b.n-=d.c;d.b.n<=0&&d.b.u>0&&Dsb(b,d.b)}}for(e=new olb(a.i);e.a0){d.a.u-=d.c;d.a.u<=0&&d.a.n>0&&Dsb(c,d.a)}}}\nfunction Vud(a){var b,c,d,e,f;if(a.g==null){a.d=a.si(a.f);wtd(a,a.d);if(a.c){f=a.f;return f}}b=BD(a.g[a.i-1],47);e=b.Pb();a.e=b;c=a.si(e);if(c.Ob()){a.d=c;wtd(a,c)}else{a.d=null;while(!b.Ob()){NC(a.g,--a.i,null);if(a.i==0){break}d=BD(a.g[a.i-1],47);b=d}}return e}\nfunction r2d(a,b){var c,d,e,f,g,h;d=b;e=d.ak();if(T6d(a.e,e)){if(e.hi()&&E2d(a,e,d.dd())){return false}}else{h=S6d(a.e.Tg(),e);c=BD(a.g,119);for(f=0;f1||c>1){return 2}}if(b+c==1){return 2}return 0}\nfunction WQb(a,b,c){var d,e,f,g,h;Odd(c,'ELK Force',1);Ccb(DD(hkd(b,(wSb(),jSb))))||$Cb((d=new _Cb((Pgd(),new bhd(b))),d));h=TQb(b);XQb(h);YQb(a,BD(vNb(h,fSb),424));g=LQb(a.a,h);for(f=g.Kc();f.Ob();){e=BD(f.Pb(),231);tRb(a.b,e,Udd(c,1/g.gc()))}h=KQb(g);SQb(h);Qdd(c)}\nfunction yoc(a,b){var c,d,e,f,g;Odd(b,'Breaking Point Processor',1);xoc(a);if(Ccb(DD(vNb(a,(Nyc(),Jyc))))){for(e=new olb(a.b);e.a=0?a._g(d,true,true):sid(a,f,true),153));BD(e,215).ml(b,c)}else{throw vbb(new Wdb(ite+b.ne()+jte))}}\nfunction ROc(a,b){var c,d,e,f,g;c=new Rkb;e=LAb(new YAb(null,new Kub(a,16)),new iPc);f=LAb(new YAb(null,new Kub(a,16)),new kPc);g=aAb(_zb(OAb(ty(OC(GC(xM,1),Uhe,833,0,[e,f])),new mPc)));for(d=1;d=2*b&&Ekb(c,new bPc(g[d-1]+b,g[d]-b))}return c}\nfunction AXc(a,b,c){Odd(c,'Eades radial',1);c.n&&!!b&&Tdd(c,i6d(b),(pgd(),mgd));a.d=BD(hkd(b,(MUc(),LUc)),33);a.c=Edb(ED(hkd(b,(ZWc(),VWc))));a.e=tXc(BD(hkd(b,WWc),293));a.a=gWc(BD(hkd(b,YWc),426));a.b=jXc(BD(hkd(b,RWc),340));BXc(a);c.n&&!!b&&Tdd(c,i6d(b),(pgd(),mgd))}\nfunction Fqd(a,b,c){var d,e,f,g,h,j,k,l;if(c){f=c.a.length;d=new Yge(f);for(h=(d.b-d.a)*d.c<0?(Xge(),Wge):new she(d);h.Ob();){g=BD(h.Pb(),19);e=Zpd(c,g.a);!!e&&(i=null,j=Uqd(a,(k=(Fhd(),l=new ppd,l),!!b&&npd(k,b),k),e),Lkd(j,_pd(e,Vte)),grd(e,j),hrd(e,j),crd(a,e,j))}}}\nfunction UKd(a){var b,c,d,e,f,g;if(!a.j){g=new HPd;b=KKd;f=b.a.zc(a,b);if(f==null){for(d=new Fyd(_Kd(a));d.e!=d.i.gc();){c=BD(Dyd(d),26);e=UKd(c);ytd(g,e);wtd(g,c)}b.a.Bc(a)!=null}vud(g);a.j=new nNd((BD(qud(ZKd((NFd(),MFd).o),11),18),g.i),g.g);$Kd(a).b&=-33}return a.j}\nfunction O9d(a){var b,c,d,e;if(a==null){return null}else{d=Qge(a,true);e=Nwe.length;if(dfb(d.substr(d.length-e,e),Nwe)){c=d.length;if(c==4){b=(BCb(0,d.length),d.charCodeAt(0));if(b==43){return z9d}else if(b==45){return y9d}}else if(c==3){return z9d}}return new Odb(d)}}\nfunction _C(a){var b,c,d;c=a.l;if((c&c-1)!=0){return -1}d=a.m;if((d&d-1)!=0){return -1}b=a.h;if((b&b-1)!=0){return -1}if(b==0&&d==0&&c==0){return -1}if(b==0&&d==0&&c!=0){return ieb(c)}if(b==0&&d!=0&&c==0){return ieb(d)+22}if(b!=0&&d==0&&c==0){return ieb(b)+44}return -1}\nfunction qbc(a,b){var c,d,e,f,g;Odd(b,'Edge joining',1);c=Ccb(DD(vNb(a,(Nyc(),Byc))));for(e=new olb(a.b);e.a1){for(e=new olb(a.a);e.a0);f.a.Xb(f.c=--f.b);Aib(f,e);sCb(f.b3&&EA(a,0,b-3)}}\nfunction cUb(a){var b,c,d,e;if(PD(vNb(a,(Nyc(),axc)))===PD((hbd(),ebd))){return !a.e&&PD(vNb(a,Cwc))!==PD((Xrc(),Urc))}d=BD(vNb(a,Dwc),292);e=Ccb(DD(vNb(a,Hwc)))||PD(vNb(a,Iwc))===PD((Rpc(),Opc));b=BD(vNb(a,Bwc),19).a;c=a.a.c.length;return !e&&d!=(Xrc(),Urc)&&(b==0||b>c)}\nfunction lkc(a){var b,c;c=0;for(;c0){break}}if(c>0&&c0){break}}if(b>0&&c>16!=6&&!!b){if(p6d(a,b))throw vbb(new Wdb(ste+qmd(a)));d=null;!!a.Cb&&(d=(c=a.Db>>16,c>=0?cmd(a,d):a.Cb.ih(a,-1-c,null,d)));!!b&&(d=kid(b,a,6,d));d=bmd(a,b,d);!!d&&d.Fi()}else (a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,6,b,b))}\nfunction npd(a,b){var c,d;if(b!=a.Cb||a.Db>>16!=9&&!!b){if(p6d(a,b))throw vbb(new Wdb(ste+opd(a)));d=null;!!a.Cb&&(d=(c=a.Db>>16,c>=0?lpd(a,d):a.Cb.ih(a,-1-c,null,d)));!!b&&(d=kid(b,a,9,d));d=kpd(a,b,d);!!d&&d.Fi()}else (a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,9,b,b))}\nfunction Rld(a,b){var c,d;if(b!=a.Cb||a.Db>>16!=3&&!!b){if(p6d(a,b))throw vbb(new Wdb(ste+Sld(a)));d=null;!!a.Cb&&(d=(c=a.Db>>16,c>=0?Lld(a,d):a.Cb.ih(a,-1-c,null,d)));!!b&&(d=kid(b,a,12,d));d=Kld(a,b,d);!!d&&d.Fi()}else (a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,3,b,b))}\nfunction VId(b){var c,d,e,f,g;e=wId(b);g=b.j;if(g==null&&!!e){return b.$j()?null:e.zj()}else if(JD(e,148)){d=e.Aj();if(d){f=d.Nh();if(f!=b.i){c=BD(e,148);if(c.Ej()){try{b.g=f.Kh(c,g)}catch(a){a=ubb(a);if(JD(a,78)){b.g=null}else throw vbb(a)}}b.i=f}}return b.g}return null}\nfunction wOb(a){var b;b=new Rkb;Ekb(b,new aDb(new f7c(a.c,a.d),new f7c(a.c+a.b,a.d)));Ekb(b,new aDb(new f7c(a.c,a.d),new f7c(a.c,a.d+a.a)));Ekb(b,new aDb(new f7c(a.c+a.b,a.d+a.a),new f7c(a.c+a.b,a.d)));Ekb(b,new aDb(new f7c(a.c+a.b,a.d+a.a),new f7c(a.c,a.d+a.a)));return b}\nfunction IJc(a,b,c,d){var e,f,g;g=LZb(b,c);d.c[d.c.length]=b;if(a.j[g.p]==-1||a.j[g.p]==2||a.a[b.p]){return d}a.j[g.p]=-1;for(f=new Sr(ur(O_b(g).a.Kc(),new Sq));Qr(f);){e=BD(Rr(f),17);if(!(!OZb(e)&&!(!OZb(e)&&e.c.i.c==e.d.i.c))||e==b){continue}return IJc(a,e,g,d)}return d}\nfunction vQb(a,b,c){var d,e,f;for(f=b.a.ec().Kc();f.Ob();){e=BD(f.Pb(),79);d=BD(Ohb(a.b,e),266);!d&&(Xod(jtd(e))==Xod(ltd(e))?uQb(a,e,c):jtd(e)==Xod(ltd(e))?Ohb(a.c,e)==null&&Ohb(a.b,ltd(e))!=null&&xQb(a,e,c,false):Ohb(a.d,e)==null&&Ohb(a.b,jtd(e))!=null&&xQb(a,e,c,true))}}\nfunction jcc(a,b){var c,d,e,f,g,h,i;for(e=a.Kc();e.Ob();){d=BD(e.Pb(),10);h=new H0b;F0b(h,d);G0b(h,(Ucd(),zcd));yNb(h,(wtc(),ftc),(Bcb(),true));for(g=b.Kc();g.Ob();){f=BD(g.Pb(),10);i=new H0b;F0b(i,f);G0b(i,Tcd);yNb(i,ftc,true);c=new UZb;yNb(c,ftc,true);QZb(c,h);RZb(c,i)}}}\nfunction jnc(a,b,c,d){var e,f,g,h;e=hnc(a,b,c);f=hnc(a,c,b);g=BD(Ohb(a.c,b),112);h=BD(Ohb(a.c,c),112);if(ed.b.g&&(f.c[f.c.length]=d,true)}}return f}\nfunction k$c(){k$c=ccb;g$c=new l$c('CANDIDATE_POSITION_LAST_PLACED_RIGHT',0);f$c=new l$c('CANDIDATE_POSITION_LAST_PLACED_BELOW',1);i$c=new l$c('CANDIDATE_POSITION_WHOLE_DRAWING_RIGHT',2);h$c=new l$c('CANDIDATE_POSITION_WHOLE_DRAWING_BELOW',3);j$c=new l$c('WHOLE_DRAWING',4)}\nfunction Xqd(a,b){if(JD(b,239)){return iqd(a,BD(b,33))}else if(JD(b,186)){return jqd(a,BD(b,118))}else if(JD(b,354)){return hqd(a,BD(b,137))}else if(JD(b,352)){return gqd(a,BD(b,79))}else if(b){return null}else{throw vbb(new Wdb(Xte+Fe(new amb(OC(GC(SI,1),Uhe,1,5,[b])))))}}\nfunction aic(a){var b,c,d,e,f,g,h;f=new Psb;for(e=new olb(a.d.a);e.a1){b=nGb((c=new pGb,++a.b,c),a.d);for(h=Jsb(f,0);h.b!=h.d.c;){g=BD(Xsb(h),121);AFb(DFb(CFb(EFb(BFb(new FFb,1),0),b),g))}}}\nfunction $od(a,b){var c,d;if(b!=a.Cb||a.Db>>16!=11&&!!b){if(p6d(a,b))throw vbb(new Wdb(ste+_od(a)));d=null;!!a.Cb&&(d=(c=a.Db>>16,c>=0?Uod(a,d):a.Cb.ih(a,-1-c,null,d)));!!b&&(d=kid(b,a,10,d));d=Tod(a,b,d);!!d&&d.Fi()}else (a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,11,b,b))}\nfunction uZb(a){var b,c,d,e;for(d=new nib((new eib(a.b)).a);d.b;){c=lib(d);e=BD(c.cd(),11);b=BD(c.dd(),10);yNb(b,(wtc(),$sc),e);yNb(e,gtc,b);yNb(e,Nsc,(Bcb(),true));G0b(e,BD(vNb(b,Hsc),61));vNb(b,Hsc);yNb(e.i,(Nyc(),Vxc),(dcd(),acd));BD(vNb(Q_b(e.i),Ksc),21).Fc((Orc(),Krc))}}\nfunction G4b(a,b,c){var d,e,f,g,h,i;f=0;g=0;if(a.c){for(i=new olb(a.d.i.j);i.af.a){return -1}else if(e.ai){k=a.d;a.d=KC(y4,jve,63,2*i+4,0,1);for(f=0;f=9223372036854775807){return wD(),sD}e=false;if(a<0){e=true;a=-a}d=0;if(a>=Ije){d=QD(a/Ije);a-=d*Ije}c=0;if(a>=Hje){c=QD(a/Hje);a-=c*Hje}b=QD(a);f=TC(b,c,d);e&&ZC(f);return f}\nfunction rKb(a,b){var c,d,e,f;c=!b||!a.u.Hc((rcd(),ncd));f=0;for(e=new olb(a.e.Cf());e.a=-b&&d==b){return new vgd(meb(c-1),meb(d))}return new vgd(meb(c),meb(d-1))}\nfunction W8b(){S8b();return OC(GC(AS,1),Kie,77,0,[Y7b,V7b,Z7b,n8b,G8b,r8b,M8b,w8b,E8b,i8b,A8b,v8b,F8b,e8b,O8b,P7b,z8b,I8b,o8b,H8b,Q8b,C8b,Q7b,D8b,R8b,K8b,P8b,p8b,b8b,q8b,m8b,N8b,T7b,_7b,t8b,S7b,u8b,k8b,f8b,x8b,h8b,W7b,U7b,l8b,g8b,y8b,L8b,R7b,B8b,j8b,s8b,c8b,a8b,J8b,$7b,d8b,X7b])}\nfunction Yic(a,b,c){a.d=0;a.b=0;b.k==(j0b(),i0b)&&c.k==i0b&&BD(vNb(b,(wtc(),$sc)),10)==BD(vNb(c,$sc),10)&&(ajc(b).j==(Ucd(),Acd)?Zic(a,b,c):Zic(a,c,b));b.k==i0b&&c.k==g0b?ajc(b).j==(Ucd(),Acd)?(a.d=1):(a.b=1):c.k==i0b&&b.k==g0b&&(ajc(c).j==(Ucd(),Acd)?(a.b=1):(a.d=1));cjc(a,b,c)}\nfunction esd(a){var b,c,d,e,f,g,h,i,j,k,l;l=hsd(a);b=a.a;i=b!=null;i&&Upd(l,'category',a.a);e=Fhe(new Pib(a.d));g=!e;if(g){j=new wB;cC(l,'knownOptions',j);c=new msd(j);reb(new Pib(a.d),c)}f=Fhe(a.g);h=!f;if(h){k=new wB;cC(l,'supportedFeatures',k);d=new osd(k);reb(a.g,d)}return l}\nfunction ty(a){var b,c,d,e,f,g,h,i,j;d=false;b=336;c=0;f=new Xp(a.length);for(h=a,i=0,j=h.length;i>16!=7&&!!b){if(p6d(a,b))throw vbb(new Wdb(ste+Iod(a)));d=null;!!a.Cb&&(d=(c=a.Db>>16,c>=0?Eod(a,d):a.Cb.ih(a,-1-c,null,d)));!!b&&(d=BD(b,49).gh(a,1,C2,d));d=Dod(a,b,d);!!d&&d.Fi()}else (a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,7,b,b))}\nfunction NHd(a,b){var c,d;if(b!=a.Cb||a.Db>>16!=3&&!!b){if(p6d(a,b))throw vbb(new Wdb(ste+QHd(a)));d=null;!!a.Cb&&(d=(c=a.Db>>16,c>=0?KHd(a,d):a.Cb.ih(a,-1-c,null,d)));!!b&&(d=BD(b,49).gh(a,0,k5,d));d=JHd(a,b,d);!!d&&d.Fi()}else (a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,3,b,b))}\nfunction Ehb(a,b){Dhb();var c,d,e,f,g,h,i,j,k;if(b.d>a.d){h=a;a=b;b=h}if(b.d<63){return Ihb(a,b)}g=(a.d&-2)<<4;j=Rgb(a,g);k=Rgb(b,g);d=yhb(a,Qgb(j,g));e=yhb(b,Qgb(k,g));i=Ehb(j,k);c=Ehb(d,e);f=Ehb(yhb(j,d),yhb(e,k));f=thb(thb(f,i),c);f=Qgb(f,g);i=Qgb(i,g<<1);return thb(thb(i,f),c)}\nfunction aGc(a,b,c){var d,e,f,g,h;g=CHc(a,c);h=KC(OQ,kne,10,b.length,0,1);d=0;for(f=g.Kc();f.Ob();){e=BD(f.Pb(),11);Ccb(DD(vNb(e,(wtc(),Nsc))))&&(h[d++]=BD(vNb(e,gtc),10))}if(d=0;f+=c?1:-1){g=g|b.c.Sf(i,f,c,d&&!Ccb(DD(vNb(b.j,(wtc(),Jsc))))&&!Ccb(DD(vNb(b.j,(wtc(),mtc)))));g=g|b.q._f(i,f,c);g=g|cGc(a,i[f],c,d)}Qqb(a.c,b);return g}\nfunction o3b(a,b,c){var d,e,f,g,h,i,j,k,l,m;for(k=m_b(a.j),l=0,m=k.length;l1&&(a.a=true);ZNb(BD(c.b,65),P6c(R6c(BD(b.b,65).c),Y6c(c7c(R6c(BD(c.b,65).a),BD(b.b,65).a),e)));D1c(a,b);F1c(a,c)}}\nfunction rVb(a){var b,c,d,e,f,g,h;for(f=new olb(a.a.a);f.a0&&f>0?(g.p=b++):d>0?(g.p=c++):f>0?(g.p=e++):(g.p=c++);}}mmb();Okb(a.j,new fcc)}\nfunction Vec(a){var b,c;c=null;b=BD(Ikb(a.g,0),17);do{c=b.d.i;if(wNb(c,(wtc(),Wsc))){return BD(vNb(c,Wsc),11).i}if(c.k!=(j0b(),h0b)&&Qr(new Sr(ur(U_b(c).a.Kc(),new Sq)))){b=BD(Rr(new Sr(ur(U_b(c).a.Kc(),new Sq))),17)}else if(c.k!=h0b){return null}}while(!!c&&c.k!=(j0b(),h0b));return c}\nfunction Omc(a,b){var c,d,e,f,g,h,i,j,k;h=b.j;g=b.g;i=BD(Ikb(h,h.c.length-1),113);k=(tCb(0,h.c.length),BD(h.c[0],113));j=Kmc(a,g,i,k);for(f=1;fj){i=c;k=e;j=d}}b.a=k;b.c=i}\nfunction sEb(a,b){var c,d;d=Axb(a.b,b.b);if(!d){throw vbb(new Zdb('Invalid hitboxes for scanline constraint calculation.'))}(mEb(b.b,BD(Cxb(a.b,b.b),57))||mEb(b.b,BD(Bxb(a.b,b.b),57)))&&(Zfb(),b.b+' has overlap.');a.a[b.b.f]=BD(Exb(a.b,b.b),57);c=BD(Dxb(a.b,b.b),57);!!c&&(a.a[c.f]=b.b)}\nfunction AFb(a){if(!a.a.d||!a.a.e){throw vbb(new Zdb((fdb(fN),fN.k+' must have a source and target '+(fdb(jN),jN.k)+' specified.')))}if(a.a.d==a.a.e){throw vbb(new Zdb('Network simplex does not support self-loops: '+a.a+' '+a.a.d+' '+a.a.e))}NFb(a.a.d.g,a.a);NFb(a.a.e.b,a.a);return a.a}\nfunction HHc(a,b,c){var d,e,f,g,h,i,j;j=new Hxb(new tIc(a));for(g=OC(GC(aR,1),lne,11,0,[b,c]),h=0,i=g.length;hi-a.b&&hi-a.a&&h0&&++n}}}++m}return n}\nfunction hUc(a,b){var c,d,e,f,g;g=BD(vNb(b,(JTc(),FTc)),425);for(f=Jsb(b.b,0);f.b!=f.d.c;){e=BD(Xsb(f),86);if(a.b[e.g]==0){switch(g.g){case 0:iUc(a,e);break;case 1:gUc(a,e);}a.b[e.g]=2}}for(d=Jsb(a.a,0);d.b!=d.d.c;){c=BD(Xsb(d),188);ze(c.b.d,c,true);ze(c.c.b,c,true)}yNb(b,(mTc(),gTc),a.a)}\nfunction S6d(a,b){Q6d();var c,d,e,f;if(!b){return P6d}else if(b==(Q8d(),N8d)||(b==v8d||b==t8d||b==u8d)&&a!=s8d){return new Z6d(a,b)}else{d=BD(b,677);c=d.pk();if(!c){a2d(q1d((O6d(),M6d),b));c=d.pk()}f=(!c.i&&(c.i=new Lqb),c.i);e=BD(Wd(irb(f.f,a)),1942);!e&&Rhb(f,a,e=new Z6d(a,b));return e}}\nfunction Tbc(a,b){var c,d,e,f,g,h,i,j,k;i=BD(vNb(a,(wtc(),$sc)),11);j=l7c(OC(GC(m1,1),nie,8,0,[i.i.n,i.n,i.a])).a;k=a.i.n.b;c=k_b(a.e);for(e=c,f=0,g=e.length;f0){if(f.a){h=f.b.rf().a;if(c>h){e=(c-h)/2;f.d.b=e;f.d.c=e}}else{f.d.c=a.s+c}}else if(tcd(a.u)){d=sfd(f.b);d.c<0&&(f.d.b=-d.c);d.c+d.b>f.b.rf().a&&(f.d.c=d.c+d.b-f.b.rf().a)}}}\nfunction Eec(a,b){var c,d,e,f;Odd(b,'Semi-Interactive Crossing Minimization Processor',1);c=false;for(e=new olb(a.b);e.a=0){if(b==c){return new vgd(meb(-b-1),meb(-b-1))}if(b==-c){return new vgd(meb(-b),meb(c+1))}}if($wnd.Math.abs(b)>$wnd.Math.abs(c)){if(b<0){return new vgd(meb(-b),meb(c))}return new vgd(meb(-b),meb(c+1))}return new vgd(meb(b+1),meb(c))}\nfunction q5b(a){var b,c;c=BD(vNb(a,(Nyc(),mxc)),163);b=BD(vNb(a,(wtc(),Osc)),303);if(c==(Ctc(),ytc)){yNb(a,mxc,Btc);yNb(a,Osc,(esc(),dsc))}else if(c==Atc){yNb(a,mxc,Btc);yNb(a,Osc,(esc(),bsc))}else if(b==(esc(),dsc)){yNb(a,mxc,ytc);yNb(a,Osc,csc)}else if(b==bsc){yNb(a,mxc,Atc);yNb(a,Osc,csc)}}\nfunction FNc(){FNc=ccb;DNc=new RNc;zNc=e3c(new j3c,(qUb(),nUb),(S8b(),o8b));CNc=c3c(e3c(new j3c,nUb,C8b),pUb,B8b);ENc=b3c(b3c(g3c(c3c(e3c(new j3c,lUb,M8b),pUb,L8b),oUb),K8b),N8b);ANc=c3c(e3c(e3c(e3c(new j3c,mUb,r8b),oUb,t8b),oUb,u8b),pUb,s8b);BNc=c3c(e3c(e3c(new j3c,oUb,u8b),oUb,_7b),pUb,$7b)}\nfunction hQc(){hQc=ccb;cQc=e3c(c3c(new j3c,(qUb(),pUb),(S8b(),c8b)),nUb,o8b);gQc=b3c(b3c(g3c(c3c(e3c(new j3c,lUb,M8b),pUb,L8b),oUb),K8b),N8b);dQc=c3c(e3c(e3c(e3c(new j3c,mUb,r8b),oUb,t8b),oUb,u8b),pUb,s8b);fQc=e3c(e3c(new j3c,nUb,C8b),pUb,B8b);eQc=c3c(e3c(e3c(new j3c,oUb,u8b),oUb,_7b),pUb,$7b)}\nfunction GNc(a,b,c,d,e){var f,g;if((!OZb(b)&&b.c.i.c==b.d.i.c||!T6c(l7c(OC(GC(m1,1),nie,8,0,[e.i.n,e.n,e.a])),c))&&!OZb(b)){b.c==e?St(b.a,0,new g7c(c)):Dsb(b.a,new g7c(c));if(d&&!Rqb(a.a,c)){g=BD(vNb(b,(Nyc(),jxc)),74);if(!g){g=new s7c;yNb(b,jxc,g)}f=new g7c(c);Gsb(g,f,g.c.b,g.c);Qqb(a.a,f)}}}\nfunction Qac(a){var b,c;for(c=new Sr(ur(R_b(a).a.Kc(),new Sq));Qr(c);){b=BD(Rr(c),17);if(b.c.i.k!=(j0b(),f0b)){throw vbb(new y2c(Fne+P_b(a)+\"' has its layer constraint set to FIRST, but has at least one incoming edge that \"+' does not come from a FIRST_SEPARATE node. That must not happen.'))}}}\nfunction vjd(a,b,c){var d,e,f,g,h,i,j;e=aeb(a.Db&254);if(e==0){a.Eb=c}else{if(e==1){h=KC(SI,Uhe,1,2,5,1);f=zjd(a,b);if(f==0){h[0]=c;h[1]=a.Eb}else{h[0]=a.Eb;h[1]=c}}else{h=KC(SI,Uhe,1,e+1,5,1);g=CD(a.Eb);for(d=2,i=0,j=0;d<=128;d<<=1){d==b?(h[j++]=c):(a.Db&d)!=0&&(h[j++]=g[i++])}}a.Eb=h}a.Db|=b}\nfunction ENb(a,b,c){var d,e,f,g;this.b=new Rkb;e=0;d=0;for(g=new olb(a);g.a0){f=BD(Ikb(this.b,0),167);e+=f.o;d+=f.p}e*=2;d*=2;b>1?(e=QD($wnd.Math.ceil(e*b))):(d=QD($wnd.Math.ceil(d/b)));this.a=new pNb(e,d)}\nfunction Igc(a,b,c,d,e,f){var g,h,i,j,k,l,m,n,o,p,q,r;k=d;if(b.j&&b.o){n=BD(Ohb(a.f,b.A),57);p=n.d.c+n.d.b;--k}else{p=b.a.c+b.a.b}l=e;if(c.q&&c.o){n=BD(Ohb(a.f,c.C),57);j=n.d.c;++l}else{j=c.a.c}q=j-p;i=$wnd.Math.max(2,l-k);h=q/i;o=p+h;for(m=k;m=0;g+=e?1:-1){h=b[g];i=d==(Ucd(),zcd)?e?V_b(h,d):Su(V_b(h,d)):e?Su(V_b(h,d)):V_b(h,d);f&&(a.c[h.p]=i.gc());for(l=i.Kc();l.Ob();){k=BD(l.Pb(),11);a.d[k.p]=j++}Gkb(c,i)}}\nfunction aQc(a,b,c){var d,e,f,g,h,i,j,k;f=Edb(ED(a.b.Kc().Pb()));j=Edb(ED(Pq(b.b)));d=Y6c(R6c(a.a),j-c);e=Y6c(R6c(b.a),c-f);k=P6c(d,e);Y6c(k,1/(j-f));this.a=k;this.b=new Rkb;h=true;g=a.b.Kc();g.Pb();while(g.Ob()){i=Edb(ED(g.Pb()));if(h&&i-c>Oqe){this.b.Fc(c);h=false}this.b.Fc(i)}h&&this.b.Fc(c)}\nfunction vGb(a){var b,c,d,e;yGb(a,a.n);if(a.d.c.length>0){Blb(a.c);while(GGb(a,BD(mlb(new olb(a.e.a)),121))>5;b&=31;if(d>=a.d){return a.e<0?(Hgb(),Bgb):(Hgb(),Ggb)}f=a.d-d;e=KC(WD,oje,25,f+1,15,1);mhb(e,f,a.a,d,b);if(a.e<0){for(c=0;c0&&a.a[c]<<32-b!=0){for(c=0;c=0){return false}else{c=e1d((O6d(),M6d),e,b);if(!c){return true}else{d=c.Zj();return (d>1||d==-1)&&$1d(q1d(M6d,c))!=3}}}}else{return false}}\nfunction R1b(a,b,c,d){var e,f,g,h,i;h=atd(BD(qud((!b.b&&(b.b=new y5d(z2,b,4,7)),b.b),0),82));i=atd(BD(qud((!b.c&&(b.c=new y5d(z2,b,5,8)),b.c),0),82));if(Xod(h)==Xod(i)){return null}if(ntd(i,h)){return null}g=Mld(b);if(g==c){return d}else{f=BD(Ohb(a.a,g),10);if(f){e=f.e;if(e){return e}}}return null}\nfunction Cac(a,b){var c;c=BD(vNb(a,(Nyc(),Rwc)),276);Odd(b,'Label side selection ('+c+')',1);switch(c.g){case 0:Dac(a,(rbd(),nbd));break;case 1:Dac(a,(rbd(),obd));break;case 2:Bac(a,(rbd(),nbd));break;case 3:Bac(a,(rbd(),obd));break;case 4:Eac(a,(rbd(),nbd));break;case 5:Eac(a,(rbd(),obd));}Qdd(b)}\nfunction bGc(a,b,c){var d,e,f,g,h,i;d=RFc(c,a.length);g=a[d];if(g[0].k!=(j0b(),e0b)){return}f=SFc(c,g.length);i=b.j;for(e=0;e0){c[0]+=a.d;g-=c[0]}if(c[2]>0){c[2]+=a.d;g-=c[2]}f=$wnd.Math.max(0,g);c[1]=$wnd.Math.max(c[1],g);vHb(a,eHb,e.c+d.b+c[0]-(c[1]-g)/2,c);if(b==eHb){a.c.b=f;a.c.c=e.c+d.b+(f-g)/2}}\nfunction AYb(){this.c=KC(UD,Vje,25,(Ucd(),OC(GC(F1,1),bne,61,0,[Scd,Acd,zcd,Rcd,Tcd])).length,15,1);this.b=KC(UD,Vje,25,OC(GC(F1,1),bne,61,0,[Scd,Acd,zcd,Rcd,Tcd]).length,15,1);this.a=KC(UD,Vje,25,OC(GC(F1,1),bne,61,0,[Scd,Acd,zcd,Rcd,Tcd]).length,15,1);zlb(this.c,Pje);zlb(this.b,Qje);zlb(this.a,Qje)}\nfunction Ufe(a,b,c){var d,e,f,g;if(b<=c){e=b;f=c}else{e=c;f=b}d=0;if(a.b==null){a.b=KC(WD,oje,25,2,15,1);a.b[0]=e;a.b[1]=f;a.c=true}else{d=a.b.length;if(a.b[d-1]+1==e){a.b[d-1]=f;return}g=KC(WD,oje,25,d+2,15,1);$fb(a.b,0,g,0,d);a.b=g;a.b[d-1]>=e&&(a.c=false,a.a=false);a.b[d++]=e;a.b[d]=f;a.c||Yfe(a)}}\nfunction inc(a,b,c){var d,e,f,g,h,i,j;j=b.d;a.a=new Skb(j.c.length);a.c=new Lqb;for(h=new olb(j);h.a=0?a._g(j,false,true):sid(a,c,false),58));n:for(f=l.Kc();f.Ob();){e=BD(f.Pb(),56);for(k=0;k1){Xxd(e,e.i-1)}}return d}}\nfunction Z2b(a,b){var c,d,e,f,g,h,i;Odd(b,'Comment post-processing',1);for(f=new olb(a.b);f.aa.d[g.p]){c+=zHc(a.b,f);Wjb(a.a,meb(f))}}while(!akb(a.a)){xHc(a.b,BD(fkb(a.a),19).a)}}return c}\nfunction o2c(a,b,c){var d,e,f,g;f=(!b.a&&(b.a=new cUd(E2,b,10,11)),b.a).i;for(e=new Fyd((!b.a&&(b.a=new cUd(E2,b,10,11)),b.a));e.e!=e.i.gc();){d=BD(Dyd(e),33);(!d.a&&(d.a=new cUd(E2,d,10,11)),d.a).i==0||(f+=o2c(a,d,false))}if(c){g=Xod(b);while(g){f+=(!g.a&&(g.a=new cUd(E2,g,10,11)),g.a).i;g=Xod(g)}}return f}\nfunction Xxd(a,b){var c,d,e,f;if(a.ej()){d=null;e=a.fj();a.ij()&&(d=a.kj(a.pi(b),null));c=a.Zi(4,f=tud(a,b),null,b,e);if(a.bj()&&f!=null){d=a.dj(f,d);if(!d){a.$i(c)}else{d.Ei(c);d.Fi()}}else{if(!d){a.$i(c)}else{d.Ei(c);d.Fi()}}return f}else{f=tud(a,b);if(a.bj()&&f!=null){d=a.dj(f,null);!!d&&d.Fi()}return f}}\nfunction UKb(a){var b,c,d,e,f,g,h,i,j,k;j=a.a;b=new Tqb;i=0;for(d=new olb(a.d);d.ah.d&&(k=h.d+h.a+j)}}c.c.d=k;b.a.zc(c,b);i=$wnd.Math.max(i,c.c.d+c.c.a)}return i}\nfunction Orc(){Orc=ccb;Frc=new Prc('COMMENTS',0);Hrc=new Prc('EXTERNAL_PORTS',1);Irc=new Prc('HYPEREDGES',2);Jrc=new Prc('HYPERNODES',3);Krc=new Prc('NON_FREE_PORTS',4);Lrc=new Prc('NORTH_SOUTH_PORTS',5);Nrc=new Prc(Wne,6);Erc=new Prc('CENTER_LABELS',7);Grc=new Prc('END_LABELS',8);Mrc=new Prc('PARTITIONS',9)}\nfunction gVc(a){var b,c,d,e,f;e=new Rkb;b=new Vqb((!a.a&&(a.a=new cUd(E2,a,10,11)),a.a));for(d=new Sr(ur(_sd(a).a.Kc(),new Sq));Qr(d);){c=BD(Rr(d),79);if(!JD(qud((!c.b&&(c.b=new y5d(z2,c,4,7)),c.b),0),186)){f=atd(BD(qud((!c.c&&(c.c=new y5d(z2,c,5,8)),c.c),0),82));b.a._b(f)||(e.c[e.c.length]=f,true)}}return e}\nfunction fVc(a){var b,c,d,e,f,g;f=new Tqb;b=new Vqb((!a.a&&(a.a=new cUd(E2,a,10,11)),a.a));for(e=new Sr(ur(_sd(a).a.Kc(),new Sq));Qr(e);){d=BD(Rr(e),79);if(!JD(qud((!d.b&&(d.b=new y5d(z2,d,4,7)),d.b),0),186)){g=atd(BD(qud((!d.c&&(d.c=new y5d(z2,d,5,8)),d.c),0),82));b.a._b(g)||(c=f.a.zc(g,f),c==null)}}return f}\nfunction zA(a,b,c,d,e){if(d<0){d=oA(a,e,OC(GC(ZI,1),nie,2,6,[bje,cje,dje,eje,fje,gje,hje,ije,jje,kje,lje,mje]),b);d<0&&(d=oA(a,e,OC(GC(ZI,1),nie,2,6,['Jan','Feb','Mar','Apr',fje,'Jun','Jul','Aug','Sep','Oct','Nov','Dec']),b));if(d<0){return false}c.k=d;return true}else if(d>0){c.k=d-1;return true}return false}\nfunction BA(a,b,c,d,e){if(d<0){d=oA(a,e,OC(GC(ZI,1),nie,2,6,[bje,cje,dje,eje,fje,gje,hje,ije,jje,kje,lje,mje]),b);d<0&&(d=oA(a,e,OC(GC(ZI,1),nie,2,6,['Jan','Feb','Mar','Apr',fje,'Jun','Jul','Aug','Sep','Oct','Nov','Dec']),b));if(d<0){return false}c.k=d;return true}else if(d>0){c.k=d-1;return true}return false}\nfunction DA(a,b,c,d,e,f){var g,h,i,j;h=32;if(d<0){if(b[0]>=a.length){return false}h=bfb(a,b[0]);if(h!=43&&h!=45){return false}++b[0];d=rA(a,b);if(d<0){return false}h==45&&(d=-d)}if(h==32&&b[0]-c==2&&e.b==2){i=new eB;j=i.q.getFullYear()-nje+nje-80;g=j%100;f.a=d==g;d+=(j/100|0)*100+(d=j&&(i=d)}!!i&&(k=$wnd.Math.max(k,i.a.o.a));if(k>m){l=j;m=k}}return l}\nfunction ode(a,b,c){var d,e,f;a.e=c;a.d=0;a.b=0;a.f=1;a.i=b;(a.e&16)==16&&(a.i=Xee(a.i));a.j=a.i.length;nde(a);f=rde(a);if(a.d!=a.j)throw vbb(new mde(tvd((h0d(),sue))));if(a.g){for(d=0;dvre?Okb(i,a.b):d<=vre&&d>wre?Okb(i,a.d):d<=wre&&d>xre?Okb(i,a.c):d<=xre&&Okb(i,a.a);f=ZXc(a,i,f)}return e}\nfunction Hgb(){Hgb=ccb;var a;Cgb=new Ugb(1,1);Egb=new Ugb(1,10);Ggb=new Ugb(0,0);Bgb=new Ugb(-1,1);Dgb=OC(GC(cJ,1),nie,91,0,[Ggb,Cgb,new Ugb(1,2),new Ugb(1,3),new Ugb(1,4),new Ugb(1,5),new Ugb(1,6),new Ugb(1,7),new Ugb(1,8),new Ugb(1,9),Egb]);Fgb=KC(cJ,nie,91,32,0,1);for(a=0;a1;if(h){d=new f7c(e,c.b);Dsb(b.a,d)}n7c(b.a,OC(GC(m1,1),nie,8,0,[m,l]))}\nfunction jdd(a){r4c(a,new E3c(P3c(M3c(O3c(N3c(new R3c,Rse),'ELK Randomizer'),'Distributes the nodes randomly on the plane, leading to very obfuscating layouts. Can be useful to demonstrate the power of \"real\" layout algorithms.'),new mdd)));p4c(a,Rse,ame,fdd);p4c(a,Rse,wme,15);p4c(a,Rse,yme,meb(0));p4c(a,Rse,_le,tme)}\nfunction hde(){hde=ccb;var a,b,c,d,e,f;fde=KC(SD,wte,25,255,15,1);gde=KC(TD,$ie,25,16,15,1);for(b=0;b<255;b++){fde[b]=-1}for(c=57;c>=48;c--){fde[c]=c-48<<24>>24}for(d=70;d>=65;d--){fde[d]=d-65+10<<24>>24}for(e=102;e>=97;e--){fde[e]=e-97+10<<24>>24}for(f=0;f<10;f++)gde[f]=48+f&aje;for(a=10;a<=15;a++)gde[a]=65+a-10&aje}\nfunction BVc(a,b,c){var d,e,f,g,h,i,j,k;h=b.i-a.g/2;i=c.i-a.g/2;j=b.j-a.g/2;k=c.j-a.g/2;f=b.g+a.g/2;g=c.g+a.g/2;d=b.f+a.g/2;e=c.f+a.g/2;if(h>19!=0){return '-'+qD(hD(a))}c=a;d='';while(!(c.l==0&&c.m==0&&c.h==0)){e=RC(Jje);c=UC(c,e,true);b=''+pD(QC);if(!(c.l==0&&c.m==0&&c.h==0)){f=9-b.length;for(;f>0;f--){b='0'+b}}d=b+d}return d}\nfunction xrb(){if(!Object.create||!Object.getOwnPropertyNames){return false}var a='__proto__';var b=Object.create(null);if(b[a]!==undefined){return false}var c=Object.getOwnPropertyNames(b);if(c.length!=0){return false}b[a]=42;if(b[a]!==42){return false}if(Object.getOwnPropertyNames(b).length==0){return false}return true}\nfunction Pgc(a){var b,c,d,e,f,g,h;b=false;c=0;for(e=new olb(a.d.b);e.a=a.a){return -1}if(!F6b(b,c)){return -1}if(Qq(BD(d.Kb(b),20))){return 1}e=0;for(g=BD(d.Kb(b),20).Kc();g.Ob();){f=BD(g.Pb(),17);i=f.c.i==b?f.d.i:f.c.i;h=G6b(a,i,c,d);if(h==-1){return -1}e=$wnd.Math.max(e,h);if(e>a.c-1){return -1}}return e+1}\nfunction Btd(a,b){var c,d,e,f,g,h;if(PD(b)===PD(a)){return true}if(!JD(b,15)){return false}d=BD(b,15);h=a.gc();if(d.gc()!=h){return false}g=d.Kc();if(a.ni()){for(c=0;c0){a.qj();if(b!=null){for(f=0;f>24}case 97:case 98:case 99:case 100:case 101:case 102:{return a-97+10<<24>>24}case 65:case 66:case 67:case 68:case 69:case 70:{return a-65+10<<24>>24}default:{throw vbb(new Oeb('Invalid hexadecimal'))}}}\nfunction AUc(a,b,c){var d,e,f,g;Odd(c,'Processor order nodes',2);a.a=Edb(ED(vNb(b,(JTc(),HTc))));e=new Psb;for(g=Jsb(b.b,0);g.b!=g.d.c;){f=BD(Xsb(g),86);Ccb(DD(vNb(f,(mTc(),jTc))))&&(Gsb(e,f,e.c.b,e.c),true)}d=(sCb(e.b!=0),BD(e.a.a.c,86));yUc(a,d);!c.b&&Rdd(c,1);BUc(a,d,0-Edb(ED(vNb(d,(mTc(),bTc))))/2,0);!c.b&&Rdd(c,1);Qdd(c)}\nfunction rFb(){rFb=ccb;qFb=new sFb('SPIRAL',0);lFb=new sFb('LINE_BY_LINE',1);mFb=new sFb('MANHATTAN',2);kFb=new sFb('JITTER',3);oFb=new sFb('QUADRANTS_LINE_BY_LINE',4);pFb=new sFb('QUADRANTS_MANHATTAN',5);nFb=new sFb('QUADRANTS_JITTER',6);jFb=new sFb('COMBINE_LINE_BY_LINE_MANHATTAN',7);iFb=new sFb('COMBINE_JITTER_MANHATTAN',8)}\nfunction roc(a,b,c,d){var e,f,g,h,i,j;i=woc(a,c);j=woc(b,c);e=false;while(!!i&&!!j){if(d||uoc(i,j,c)){g=woc(i,c);h=woc(j,c);zoc(b);zoc(a);f=i.c;sbc(i,false);sbc(j,false);if(c){Z_b(b,j.p,f);b.p=j.p;Z_b(a,i.p+1,f);a.p=i.p}else{Z_b(a,i.p,f);a.p=i.p;Z_b(b,j.p+1,f);b.p=j.p}$_b(i,null);$_b(j,null);i=g;j=h;e=true}else{break}}return e}\nfunction VDc(a,b,c,d){var e,f,g,h,i;e=false;f=false;for(h=new olb(d.j);h.a=b.length){throw vbb(new qcb('Greedy SwitchDecider: Free layer not in graph.'))}this.c=b[a];this.e=new dIc(d);THc(this.e,this.c,(Ucd(),Tcd));this.i=new dIc(d);THc(this.i,this.c,zcd);this.f=new ejc(this.c);this.a=!f&&e.i&&!e.s&&this.c[0].k==(j0b(),e0b);this.a&&hjc(this,a,b.length)}\nfunction hKb(a,b){var c,d,e,f,g,h;f=!a.B.Hc((Idd(),zdd));g=a.B.Hc(Cdd);a.a=new FHb(g,f,a.c);!!a.n&&u_b(a.a.n,a.n);lIb(a.g,(gHb(),eHb),a.a);if(!b){d=new mIb(1,f,a.c);d.n.a=a.k;Npb(a.p,(Ucd(),Acd),d);e=new mIb(1,f,a.c);e.n.d=a.k;Npb(a.p,Rcd,e);h=new mIb(0,f,a.c);h.n.c=a.k;Npb(a.p,Tcd,h);c=new mIb(0,f,a.c);c.n.b=a.k;Npb(a.p,zcd,c)}}\nfunction Vgc(a){var b,c,d;b=BD(vNb(a.d,(Nyc(),Swc)),218);switch(b.g){case 2:c=Ngc(a);break;case 3:c=(d=new Rkb,MAb(JAb(NAb(LAb(LAb(new YAb(null,new Kub(a.d.b,16)),new Shc),new Uhc),new Whc),new ehc),new Yhc(d)),d);break;default:throw vbb(new Zdb('Compaction not supported for '+b+' edges.'));}Ugc(a,c);reb(new Pib(a.g),new Ehc(a))}\nfunction a2c(a,b){var c;c=new zNb;!!b&&tNb(c,BD(Ohb(a.a,C2),94));JD(b,470)&&tNb(c,BD(Ohb(a.a,G2),94));if(JD(b,354)){tNb(c,BD(Ohb(a.a,D2),94));return c}JD(b,82)&&tNb(c,BD(Ohb(a.a,z2),94));if(JD(b,239)){tNb(c,BD(Ohb(a.a,E2),94));return c}if(JD(b,186)){tNb(c,BD(Ohb(a.a,F2),94));return c}JD(b,352)&&tNb(c,BD(Ohb(a.a,B2),94));return c}\nfunction wSb(){wSb=ccb;oSb=new Osd((Y9c(),D9c),meb(1));uSb=new Osd(T9c,80);tSb=new Osd(M9c,5);bSb=new Osd(r8c,tme);pSb=new Osd(E9c,meb(1));sSb=new Osd(H9c,(Bcb(),true));lSb=new q0b(50);kSb=new Osd(f9c,lSb);dSb=O8c;mSb=t9c;cSb=new Osd(B8c,false);jSb=e9c;iSb=b9c;hSb=Y8c;gSb=W8c;nSb=x9c;fSb=(SRb(),LRb);vSb=QRb;eSb=KRb;qSb=NRb;rSb=PRb}\nfunction ZXb(a){var b,c,d,e,f,g,h,i;i=new jYb;for(h=new olb(a.a);h.a0&&b=0){return false}else{b.p=c.b;Ekb(c.e,b)}if(e==(j0b(),g0b)||e==i0b){for(g=new olb(b.j);g.a1||g==-1)&&(f|=16);(e.Bb&ote)!=0&&(f|=64)}(c.Bb&Tje)!=0&&(f|=Dve);f|=zte}else{if(JD(b,457)){f|=512}else{d=b.Bj();!!d&&(d.i&1)!=0&&(f|=256)}}(a.Bb&512)!=0&&(f|=128);return f}\nfunction hc(a,b){var c,d,e,f,g;a=a==null?Xhe:(uCb(a),a);for(e=0;ea.d[h.p]){c+=zHc(a.b,f);Wjb(a.a,meb(f))}}else{++g}}c+=a.b.d*g;while(!akb(a.a)){xHc(a.b,BD(fkb(a.a),19).a)}}return c}\nfunction Y6d(a,b){var c;if(a.f==W6d){c=$1d(q1d((O6d(),M6d),b));return a.e?c==4&&b!=(m8d(),k8d)&&b!=(m8d(),h8d)&&b!=(m8d(),i8d)&&b!=(m8d(),j8d):c==2}if(!!a.d&&(a.d.Hc(b)||a.d.Hc(_1d(q1d((O6d(),M6d),b)))||a.d.Hc(e1d((O6d(),M6d),a.b,b)))){return true}if(a.f){if(x1d((O6d(),a.f),b2d(q1d(M6d,b)))){c=$1d(q1d(M6d,b));return a.e?c==4:c==2}}return false}\nfunction iVc(a,b,c,d){var e,f,g,h,i,j,k,l;g=BD(hkd(c,(Y9c(),C9c)),8);i=g.a;k=g.b+a;e=$wnd.Math.atan2(k,i);e<0&&(e+=dre);e+=b;e>dre&&(e-=dre);h=BD(hkd(d,C9c),8);j=h.a;l=h.b+a;f=$wnd.Math.atan2(l,j);f<0&&(f+=dre);f+=b;f>dre&&(f-=dre);return Iy(),My(1.0E-10),$wnd.Math.abs(e-f)<=1.0E-10||e==f||isNaN(e)&&isNaN(f)?0:ef?1:Ny(isNaN(e),isNaN(f))}\nfunction YDb(a){var b,c,d,e,f,g,h;h=new Lqb;for(d=new olb(a.a.b);d.a=b.o){throw vbb(new rcb)}i=c>>5;h=c&31;g=Nbb(1,Tbb(Nbb(h,1)));f?(b.n[d][i]=Mbb(b.n[d][i],g)):(b.n[d][i]=xbb(b.n[d][i],Lbb(g)));g=Nbb(g,1);e?(b.n[d][i]=Mbb(b.n[d][i],g)):(b.n[d][i]=xbb(b.n[d][i],Lbb(g)))}catch(a){a=ubb(a);if(JD(a,320)){throw vbb(new qcb(Dle+b.o+'*'+b.p+Ele+c+She+d+Fle))}else throw vbb(a)}}\nfunction BUc(a,b,c,d){var e,f,g;if(b){f=Edb(ED(vNb(b,(mTc(),fTc))))+d;g=c+Edb(ED(vNb(b,bTc)))/2;yNb(b,kTc,meb(Tbb(Cbb($wnd.Math.round(f)))));yNb(b,lTc,meb(Tbb(Cbb($wnd.Math.round(g)))));b.d.b==0||BUc(a,BD(pr((e=Jsb((new ZRc(b)).a.d,0),new aSc(e))),86),c+Edb(ED(vNb(b,bTc)))+a.a,d+Edb(ED(vNb(b,cTc))));vNb(b,iTc)!=null&&BUc(a,BD(vNb(b,iTc),86),c,d)}}\nfunction N9b(a,b){var c,d,e,f,g,h,i,j,k,l,m;i=Q_b(b.a);e=Edb(ED(vNb(i,(Nyc(),pyc))))*2;k=Edb(ED(vNb(i,wyc)));j=$wnd.Math.max(e,k);f=KC(UD,Vje,25,b.f-b.c+1,15,1);d=-j;c=0;for(h=b.b.Kc();h.Ob();){g=BD(h.Pb(),10);d+=a.a[g.c.p]+j;f[c++]=d}d+=a.a[b.a.c.p]+j;f[c++]=d;for(m=new olb(b.e);m.a0){d=(!a.n&&(a.n=new cUd(D2,a,1,7)),BD(qud(a.n,0),137)).a;!d||Qfb(Qfb((b.a+=' \"',b),d),'\"')}}else{Qfb(Qfb((b.a+=' \"',b),c),'\"')}Qfb(Lfb(Qfb(Lfb(Qfb(Lfb(Qfb(Lfb((b.a+=' (',b),a.i),','),a.j),' | '),a.g),','),a.f),')');return b.a}\nfunction opd(a){var b,c,d;if((a.Db&64)!=0)return fld(a);b=new Wfb(fte);c=a.k;if(!c){!a.n&&(a.n=new cUd(D2,a,1,7));if(a.n.i>0){d=(!a.n&&(a.n=new cUd(D2,a,1,7)),BD(qud(a.n,0),137)).a;!d||Qfb(Qfb((b.a+=' \"',b),d),'\"')}}else{Qfb(Qfb((b.a+=' \"',b),c),'\"')}Qfb(Lfb(Qfb(Lfb(Qfb(Lfb(Qfb(Lfb((b.a+=' (',b),a.i),','),a.j),' | '),a.g),','),a.f),')');return b.a}\nfunction h4c(a,b){var c,d,e,f,g,h,i;if(b==null||b.length==0){return null}e=BD(Phb(a.a,b),149);if(!e){for(d=(h=(new $ib(a.b)).a.vc().Kc(),new djb(h));d.a.Ob();){c=(f=BD(d.a.Pb(),42),BD(f.dd(),149));g=c.c;i=b.length;if(dfb(g.substr(g.length-i,i),b)&&(b.length==g.length||bfb(g,g.length-b.length-1)==46)){if(e){return null}e=c}}!!e&&Shb(a.a,b,e)}return e}\nfunction QLb(a,b){var c,d,e,f;c=new VLb;d=BD(GAb(NAb(new YAb(null,new Kub(a.f,16)),c),Ayb(new hzb,new jzb,new Gzb,new Izb,OC(GC(xL,1),Kie,132,0,[(Fyb(),Eyb),Dyb]))),21);e=d.gc();d=BD(GAb(NAb(new YAb(null,new Kub(b.f,16)),c),Ayb(new hzb,new jzb,new Gzb,new Izb,OC(GC(xL,1),Kie,132,0,[Eyb,Dyb]))),21);f=d.gc();if(ee.p){G0b(f,Rcd);if(f.d){h=f.o.b;b=f.a.b;f.a.b=h-b}}else if(f.j==Rcd&&e.p>a.p){G0b(f,Acd);if(f.d){h=f.o.b;b=f.a.b;f.a.b=-(h-b)}}break}}return e}\nfunction NOc(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o;f=c;if(c1;if(h){d=new f7c(e,c.b);Dsb(b.a,d)}n7c(b.a,OC(GC(m1,1),nie,8,0,[m,l]))}\nfunction Nid(a,b,c){var d,e,f,g,h,i;if(!b){return null}else{if(c<=-1){d=XKd(b.Tg(),-1-c);if(JD(d,99)){return BD(d,18)}else{g=BD(b.ah(d),153);for(h=0,i=g.gc();h0){e=i.length;while(e>0&&i[e-1]==''){--e}e=40;g&&FGb(a);wGb(a);vGb(a);c=zGb(a);d=0;while(!!c&&d0&&Dsb(a.f,f)}else{a.c[g]-=j+1;a.c[g]<=0&&a.a[g]>0&&Dsb(a.e,f)}}}}}\nfunction _Kb(a){var b,c,d,e,f,g,h,i,j;h=new Hxb(BD(Qb(new nLb),62));j=Qje;for(c=new olb(a.d);c.a=0&&ic?b:c;j<=l;++j){if(j==c){h=d++}else{f=e[j];k=o.rl(f.ak());j==b&&(i=j==l&&!k?d-1:d);k&&++d}}m=BD(Wxd(a,b,c),72);h!=i&&GLd(a,new ESd(a.e,7,g,meb(h),n.dd(),i));return m}}}else{return BD(sud(a,b,c),72)}return BD(Wxd(a,b,c),72)}\nfunction Qcc(a,b){var c,d,e,f,g,h,i;Odd(b,'Port order processing',1);i=BD(vNb(a,(Nyc(),_xc)),421);for(d=new olb(a.b);d.a=0){h=bD(a,g);if(h){j<22?(i.l|=1<>>1;g.m=k>>>1|(l&1)<<21;g.l=m>>>1|(k&1)<<21;--j}c&&ZC(i);if(f){if(d){QC=hD(a);e&&(QC=nD(QC,(wD(),uD)))}else{QC=TC(a.l,a.m,a.h)}}return i}\nfunction TDc(a,b){var c,d,e,f,g,h,i,j,k,l;j=a.e[b.c.p][b.p]+1;i=b.c.a.c.length+1;for(h=new olb(a.a);h.a0&&(BCb(0,a.length),a.charCodeAt(0)==45||(BCb(0,a.length),a.charCodeAt(0)==43))?1:0;for(d=g;dc){throw vbb(new Oeb(Oje+a+'\"'))}return h}\nfunction dnc(a){var b,c,d,e,f,g,h;g=new Psb;for(f=new olb(a.a);f.a1)&&b==1&&BD(a.a[a.b],10).k==(j0b(),f0b)){zac(BD(a.a[a.b],10),(rbd(),nbd))}else if(d&&(!c||(a.c-a.b&a.a.length-1)>1)&&b==1&&BD(a.a[a.c-1&a.a.length-1],10).k==(j0b(),f0b)){zac(BD(a.a[a.c-1&a.a.length-1],10),(rbd(),obd))}else if((a.c-a.b&a.a.length-1)==2){zac(BD(bkb(a),10),(rbd(),nbd));zac(BD(bkb(a),10),obd)}else{wac(a,e)}Yjb(a)}\nfunction pRc(a,b,c){var d,e,f,g,h;f=0;for(e=new Fyd((!a.a&&(a.a=new cUd(E2,a,10,11)),a.a));e.e!=e.i.gc();){d=BD(Dyd(e),33);g='';(!d.n&&(d.n=new cUd(D2,d,1,7)),d.n).i==0||(g=BD(qud((!d.n&&(d.n=new cUd(D2,d,1,7)),d.n),0),137).a);h=new XRc(f++,b,g);tNb(h,d);yNb(h,(mTc(),dTc),d);h.e.b=d.j+d.f/2;h.f.a=$wnd.Math.max(d.g,1);h.e.a=d.i+d.g/2;h.f.b=$wnd.Math.max(d.f,1);Dsb(b.b,h);jrb(c.f,d,h)}}\nfunction B2b(a){var b,c,d,e,f;d=BD(vNb(a,(wtc(),$sc)),33);f=BD(hkd(d,(Nyc(),Fxc)),174).Hc((tdd(),sdd));if(!a.e){e=BD(vNb(a,Ksc),21);b=new f7c(a.f.a+a.d.b+a.d.c,a.f.b+a.d.d+a.d.a);if(e.Hc((Orc(),Hrc))){jkd(d,Vxc,(dcd(),$bd));Afd(d,b.a,b.b,false,true)}else{Ccb(DD(hkd(d,Gxc)))||Afd(d,b.a,b.b,true,true)}}f?jkd(d,Fxc,pqb(sdd)):jkd(d,Fxc,(c=BD(gdb(I1),9),new xqb(c,BD(_Bb(c,c.length),9),0)))}\nfunction tA(a,b,c){var d,e,f,g;if(b[0]>=a.length){c.o=0;return true}switch(bfb(a,b[0])){case 43:e=1;break;case 45:e=-1;break;default:c.o=0;return true;}++b[0];f=b[0];g=rA(a,b);if(g==0&&b[0]==f){return false}if(b[0]=0&&h!=c){f=new nSd(a,1,h,g,null);!d?(d=f):d.Ei(f)}if(c>=0){f=new nSd(a,1,c,h==c?g:null,b);!d?(d=f):d.Ei(f)}}return d}\nfunction LEd(a){var b,c,d;if(a.b==null){d=new Hfb;if(a.i!=null){Efb(d,a.i);d.a+=':'}if((a.f&256)!=0){if((a.f&256)!=0&&a.a!=null){YEd(a.i)||(d.a+='//',d);Efb(d,a.a)}if(a.d!=null){d.a+='/';Efb(d,a.d)}(a.f&16)!=0&&(d.a+='/',d);for(b=0,c=a.j.length;bm){return false}l=(i=MZc(d,m,false),i.a);if(k+h+l<=b.b){KZc(c,f-c.s);c.c=true;KZc(d,f-c.s);OZc(d,c.s,c.t+c.d+h);d.k=true;WZc(c.q,d);n=true;if(e){s$c(b,d);d.j=b;if(a.c.length>g){v$c((tCb(g,a.c.length),BD(a.c[g],200)),d);(tCb(g,a.c.length),BD(a.c[g],200)).a.c.length==0&&Kkb(a,g)}}}return n}\nfunction kcc(a,b){var c,d,e,f,g,h;Odd(b,'Partition midprocessing',1);e=new Hp;MAb(JAb(new YAb(null,new Kub(a.a,16)),new occ),new qcc(e));if(e.d==0){return}h=BD(GAb(UAb((f=e.i,new YAb(null,(!f?(e.i=new zf(e,e.c)):f).Nc()))),Byb(new fzb,new dzb,new Ezb,OC(GC(xL,1),Kie,132,0,[(Fyb(),Dyb)]))),15);d=h.Kc();c=BD(d.Pb(),19);while(d.Ob()){g=BD(d.Pb(),19);jcc(BD(Qc(e,c),21),BD(Qc(e,g),21));c=g}Qdd(b)}\nfunction DYb(a,b,c){var d,e,f,g,h,i,j,k;if(b.p==0){b.p=1;g=c;if(!g){e=new Rkb;f=(d=BD(gdb(F1),9),new xqb(d,BD(_Bb(d,d.length),9),0));g=new vgd(e,f)}BD(g.a,15).Fc(b);b.k==(j0b(),e0b)&&BD(g.b,21).Fc(BD(vNb(b,(wtc(),Hsc)),61));for(i=new olb(b.j);i.a0){e=BD(a.Ab.g,1934);if(b==null){for(f=0;f1){for(d=new olb(e);d.ac.s&&hh){h=e;k.c=KC(SI,Uhe,1,0,5,1)}e==h&&Ekb(k,new vgd(c.c.i,c))}mmb();Okb(k,a.c);Dkb(a.b,i.p,k)}}}\nfunction MMc(a,b){var c,d,e,f,g,h,i,j,k;for(g=new olb(b.b);g.ah){h=e;k.c=KC(SI,Uhe,1,0,5,1)}e==h&&Ekb(k,new vgd(c.d.i,c))}mmb();Okb(k,a.c);Dkb(a.f,i.p,k)}}}\nfunction Y7c(a){r4c(a,new E3c(P3c(M3c(O3c(N3c(new R3c,qse),'ELK Box'),'Algorithm for packing of unconnected boxes, i.e. graphs without edges.'),new _7c)));p4c(a,qse,ame,U7c);p4c(a,qse,wme,15);p4c(a,qse,vme,meb(0));p4c(a,qse,Jre,Ksd(O7c));p4c(a,qse,Fme,Ksd(Q7c));p4c(a,qse,Eme,Ksd(S7c));p4c(a,qse,_le,pse);p4c(a,qse,Ame,Ksd(P7c));p4c(a,qse,Tme,Ksd(R7c));p4c(a,qse,rse,Ksd(M7c));p4c(a,qse,lqe,Ksd(N7c))}\nfunction W$b(a,b){var c,d,e,f,g,h,i,j,k;e=a.i;g=e.o.a;f=e.o.b;if(g<=0&&f<=0){return Ucd(),Scd}j=a.n.a;k=a.n.b;h=a.o.a;c=a.o.b;switch(b.g){case 2:case 1:if(j<0){return Ucd(),Tcd}else if(j+h>g){return Ucd(),zcd}break;case 4:case 3:if(k<0){return Ucd(),Acd}else if(k+c>f){return Ucd(),Rcd}}i=(j+h/2)/g;d=(k+c/2)/f;return i+d<=1&&i-d<=0?(Ucd(),Tcd):i+d>=1&&i-d>=0?(Ucd(),zcd):d<0.5?(Ucd(),Acd):(Ucd(),Rcd)}\nfunction pJc(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p;c=false;k=Edb(ED(vNb(b,(Nyc(),vyc))));o=Qie*k;for(e=new olb(b.b);e.ai+o){p=l.g+m.g;m.a=(m.g*m.a+l.g*l.a)/p;m.g=p;l.f=m;c=true}}f=h;l=m}}return c}\nfunction VGb(a,b,c,d,e,f,g){var h,i,j,k,l,m;m=new I6c;for(j=b.Kc();j.Ob();){h=BD(j.Pb(),839);for(l=new olb(h.wf());l.a0){if(h.a){j=h.b.rf().b;if(e>j){if(a.v||h.c.d.c.length==1){g=(e-j)/2;h.d.d=g;h.d.a=g}else{c=BD(Ikb(h.c.d,0),181).rf().b;d=(c-j)/2;h.d.d=$wnd.Math.max(0,d);h.d.a=e-d-j}}}else{h.d.a=a.t+e}}else if(tcd(a.u)){f=sfd(h.b);f.d<0&&(h.d.d=-f.d);f.d+f.a>h.b.rf().b&&(h.d.a=f.d+f.a-h.b.rf().b)}}}\nfunction FC(a,b){var c;switch(HC(a)){case 6:return ND(b);case 7:return LD(b);case 8:return KD(b);case 3:return Array.isArray(b)&&(c=HC(b),!(c>=14&&c<=16));case 11:return b!=null&&typeof b===Nhe;case 12:return b!=null&&(typeof b===Jhe||typeof b==Nhe);case 0:return AD(b,a.__elementTypeId$);case 2:return OD(b)&&!(b.im===gcb);case 1:return OD(b)&&!(b.im===gcb)||AD(b,a.__elementTypeId$);default:return true;}}\nfunction xOb(a,b){var c,d,e,f;d=$wnd.Math.min($wnd.Math.abs(a.c-(b.c+b.b)),$wnd.Math.abs(a.c+a.b-b.c));f=$wnd.Math.min($wnd.Math.abs(a.d-(b.d+b.a)),$wnd.Math.abs(a.d+a.a-b.d));c=$wnd.Math.abs(a.c+a.b/2-(b.c+b.b/2));if(c>a.b/2+b.b/2){return 1}e=$wnd.Math.abs(a.d+a.a/2-(b.d+b.a/2));if(e>a.a/2+b.a/2){return 1}if(c==0&&e==0){return 0}if(c==0){return f/e+1}if(e==0){return d/c+1}return $wnd.Math.min(d/c,f/e)+1}\nfunction mgb(a,b){var c,d,e,f,g,h;e=pgb(a);h=pgb(b);if(e==h){if(a.e==b.e&&a.a<54&&b.a<54){return a.fb.f?1:0}d=a.e-b.e;c=(a.d>0?a.d:$wnd.Math.floor((a.a-1)*Xje)+1)-(b.d>0?b.d:$wnd.Math.floor((b.a-1)*Xje)+1);if(c>d+1){return e}else if(c0&&(g=Ogb(g,Khb(d)));return Igb(f,g)}}else return e0&&a.d!=(yTb(),xTb)&&(h+=g*(d.d.a+a.a[b.b][d.b]*(b.d.a-d.d.a)/c));c>0&&a.d!=(yTb(),vTb)&&(i+=g*(d.d.b+a.a[b.b][d.b]*(b.d.b-d.d.b)/c))}switch(a.d.g){case 1:return new f7c(h/f,b.d.b);case 2:return new f7c(b.d.a,i/f);default:return new f7c(h/f,i/f);}}\nfunction Wcc(a,b){Occ();var c,d,e,f,g;g=BD(vNb(a.i,(Nyc(),Vxc)),98);f=a.j.g-b.j.g;if(f!=0||!(g==(dcd(),Zbd)||g==_bd||g==$bd)){return 0}if(g==(dcd(),Zbd)){c=BD(vNb(a,Wxc),19);d=BD(vNb(b,Wxc),19);if(!!c&&!!d){e=c.a-d.a;if(e!=0){return e}}}switch(a.j.g){case 1:return Kdb(a.n.a,b.n.a);case 2:return Kdb(a.n.b,b.n.b);case 3:return Kdb(b.n.a,a.n.a);case 4:return Kdb(b.n.b,a.n.b);default:throw vbb(new Zdb(ine));}}\nfunction tfd(a){var b,c,d,e,f,g;c=(!a.a&&(a.a=new xMd(y2,a,5)),a.a).i+2;g=new Skb(c);Ekb(g,new f7c(a.j,a.k));MAb(new YAb(null,(!a.a&&(a.a=new xMd(y2,a,5)),new Kub(a.a,16))),new Qfd(g));Ekb(g,new f7c(a.b,a.c));b=1;while(b0){jEb(i,false,(ead(),aad));jEb(i,true,bad)}Hkb(b.g,new $hc(a,c));Rhb(a.g,b,c)}\nfunction Neb(){Neb=ccb;var a;Jeb=OC(GC(WD,1),oje,25,15,[-1,-1,30,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5]);Keb=KC(WD,oje,25,37,15,1);Leb=OC(GC(WD,1),oje,25,15,[-1,-1,63,40,32,28,25,23,21,20,19,19,18,18,17,17,16,16,16,15,15,15,15,14,14,14,14,14,14,13,13,13,13,13,13,13,13]);Meb=KC(XD,Sje,25,37,14,1);for(a=2;a<=36;a++){Keb[a]=QD($wnd.Math.pow(a,Jeb[a]));Meb[a]=Abb(rie,Keb[a])}}\nfunction pfd(a){var b;if((!a.a&&(a.a=new cUd(A2,a,6,6)),a.a).i!=1){throw vbb(new Wdb(Tse+(!a.a&&(a.a=new cUd(A2,a,6,6)),a.a).i))}b=new s7c;!!btd(BD(qud((!a.b&&(a.b=new y5d(z2,a,4,7)),a.b),0),82))&&ye(b,qfd(a,btd(BD(qud((!a.b&&(a.b=new y5d(z2,a,4,7)),a.b),0),82)),false));!!btd(BD(qud((!a.c&&(a.c=new y5d(z2,a,5,8)),a.c),0),82))&&ye(b,qfd(a,btd(BD(qud((!a.c&&(a.c=new y5d(z2,a,5,8)),a.c),0),82)),true));return b}\nfunction _Mc(a,b){var c,d,e,f,g;b.d?(e=a.a.c==(YLc(),XLc)?R_b(b.b):U_b(b.b)):(e=a.a.c==(YLc(),WLc)?R_b(b.b):U_b(b.b));f=false;for(d=new Sr(ur(e.a.Kc(),new Sq));Qr(d);){c=BD(Rr(d),17);g=Ccb(a.a.f[a.a.g[b.b.p].p]);if(!g&&!OZb(c)&&c.c.i.c==c.d.i.c){continue}if(Ccb(a.a.n[a.a.g[b.b.p].p])||Ccb(a.a.n[a.a.g[b.b.p].p])){continue}f=true;if(Rqb(a.b,a.a.g[TMc(c,b.b).p])){b.c=true;b.a=c;return b}}b.c=f;b.a=null;return b}\nfunction bed(a,b,c,d,e){var f,g,h,i,j,k,l;mmb();Okb(a,new Red);h=new Bib(a,0);l=new Rkb;f=0;while(h.bf*2){k=new wed(l);j=red(g)/qed(g);i=fed(k,b,new p0b,c,d,e,j);P6c(X6c(k.e),i);l.c=KC(SI,Uhe,1,0,5,1);f=0;l.c[l.c.length]=k;l.c[l.c.length]=g;f=red(k)*qed(k)+red(g)*qed(g)}else{l.c[l.c.length]=g;f+=red(g)*qed(g)}}return l}\nfunction qwd(a,b,c){var d,e,f,g,h,i,j;d=c.gc();if(d==0){return false}else{if(a.ej()){i=a.fj();zvd(a,b,c);g=d==1?a.Zi(3,null,c.Kc().Pb(),b,i):a.Zi(5,null,c,b,i);if(a.bj()){h=d<100?null:new Ixd(d);f=b+d;for(e=b;e0){for(g=0;g>16==-15&&a.Cb.nh()&&Rwd(new oSd(a.Cb,9,13,c,a.c,HLd(QSd(BD(a.Cb,59)),a)))}else if(JD(a.Cb,88)){if(a.Db>>16==-23&&a.Cb.nh()){b=a.c;JD(b,88)||(b=(jGd(),_Fd));JD(c,88)||(c=(jGd(),_Fd));Rwd(new oSd(a.Cb,9,10,c,b,HLd(VKd(BD(a.Cb,26)),a)))}}}}return a.c}\nfunction f7b(a,b){var c,d,e,f,g,h,i,j,k,l;Odd(b,'Hypernodes processing',1);for(e=new olb(a.b);e.ac);return e}\nfunction XFc(a,b){var c,d,e;d=Cub(a.d,1)!=0;!Ccb(DD(vNb(b.j,(wtc(),Jsc))))&&!Ccb(DD(vNb(b.j,mtc)))||PD(vNb(b.j,(Nyc(),ywc)))===PD((tAc(),rAc))?b.c.Tf(b.e,d):(d=Ccb(DD(vNb(b.j,Jsc))));dGc(a,b,d,true);Ccb(DD(vNb(b.j,mtc)))&&yNb(b.j,mtc,(Bcb(),false));if(Ccb(DD(vNb(b.j,Jsc)))){yNb(b.j,Jsc,(Bcb(),false));yNb(b.j,mtc,true)}c=NFc(a,b);do{$Fc(a);if(c==0){return 0}d=!d;e=c;dGc(a,b,d,false);c=NFc(a,b)}while(e>c);return e}\nfunction uNd(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o;if(b==c){return true}else{b=vNd(a,b);c=vNd(a,c);d=JQd(b);if(d){k=JQd(c);if(k!=d){if(!k){return false}else{i=d.Dj();o=k.Dj();return i==o&&i!=null}}else{g=(!b.d&&(b.d=new xMd(j5,b,1)),b.d);f=g.i;m=(!c.d&&(c.d=new xMd(j5,c,1)),c.d);if(f==m.i){for(j=0;j0;h=xFb(b,f);c?OFb(h.b,b):OFb(h.g,b);LFb(h).c.length==1&&(Gsb(d,h,d.c.b,d.c),true);e=new vgd(f,b);Wjb(a.o,e);Lkb(a.e.a,f)}}\nfunction _Nb(a,b){var c,d,e,f,g,h,i;d=$wnd.Math.abs(D6c(a.b).a-D6c(b.b).a);h=$wnd.Math.abs(D6c(a.b).b-D6c(b.b).b);e=0;i=0;c=1;g=1;if(d>a.b.b/2+b.b.b/2){e=$wnd.Math.min($wnd.Math.abs(a.b.c-(b.b.c+b.b.b)),$wnd.Math.abs(a.b.c+a.b.b-b.b.c));c=1-e/d}if(h>a.b.a/2+b.b.a/2){i=$wnd.Math.min($wnd.Math.abs(a.b.d-(b.b.d+b.b.a)),$wnd.Math.abs(a.b.d+a.b.a-b.b.d));g=1-i/h}f=$wnd.Math.min(c,g);return (1-f)*$wnd.Math.sqrt(d*d+h*h)}\nfunction lQc(a){var b,c,d,e;nQc(a,a.e,a.f,(FQc(),DQc),true,a.c,a.i);nQc(a,a.e,a.f,DQc,false,a.c,a.i);nQc(a,a.e,a.f,EQc,true,a.c,a.i);nQc(a,a.e,a.f,EQc,false,a.c,a.i);mQc(a,a.c,a.e,a.f,a.i);d=new Bib(a.i,0);while(d.b=65;c--){$ce[c]=c-65<<24>>24}for(d=122;d>=97;d--){$ce[d]=d-97+26<<24>>24}for(e=57;e>=48;e--){$ce[e]=e-48+52<<24>>24}$ce[43]=62;$ce[47]=63;for(f=0;f<=25;f++)_ce[f]=65+f&aje;for(g=26,i=0;g<=51;++g,i++)_ce[g]=97+i&aje;for(a=52,h=0;a<=61;++a,h++)_ce[a]=48+h&aje;_ce[62]=43;_ce[63]=47}\nfunction FXb(a,b){var c,d,e,f,g,h,i,j,k,l,m,n;if(a.dc()){return new d7c}j=0;l=0;for(e=a.Kc();e.Ob();){d=BD(e.Pb(),37);f=d.f;j=$wnd.Math.max(j,f.a);l+=f.a*f.b}j=$wnd.Math.max(j,$wnd.Math.sqrt(l)*Edb(ED(vNb(BD(a.Kc().Pb(),37),(Nyc(),owc)))));m=0;n=0;i=0;c=b;for(h=a.Kc();h.Ob();){g=BD(h.Pb(),37);k=g.f;if(m+k.a>j){m=0;n+=i+b;i=0}uXb(g,m,n);c=$wnd.Math.max(c,m+k.a);i=$wnd.Math.max(i,k.b);m+=k.a+b}return new f7c(c+b,n+i+b)}\nfunction mQc(a,b,c,d,e){var f,g,h,i,j,k,l;for(g=new olb(b);g.af){return Ucd(),zcd}break;case 4:case 3:if(i<0){return Ucd(),Acd}else if(i+a.f>e){return Ucd(),Rcd}}g=(h+a.g/2)/f;c=(i+a.f/2)/e;return g+c<=1&&g-c<=0?(Ucd(),Tcd):g+c>=1&&g-c>=0?(Ucd(),zcd):c<0.5?(Ucd(),Acd):(Ucd(),Rcd)}\nfunction vhb(a,b,c,d,e){var f,g;f=wbb(xbb(b[0],Yje),xbb(d[0],Yje));a[0]=Tbb(f);f=Obb(f,32);if(c>=e){for(g=1;g0){e.b[g++]=0;e.b[g++]=f.b[0]-1}for(b=1;b0){pOc(i,i.d-e.d);e.c==(HOc(),FOc)&&nOc(i,i.a-e.d);i.d<=0&&i.i>0&&(Gsb(b,i,b.c.b,b.c),true)}}}for(f=new olb(a.f);f.a0){qOc(h,h.i-e.d);e.c==(HOc(),FOc)&&oOc(h,h.b-e.d);h.i<=0&&h.d>0&&(Gsb(c,h,c.c.b,c.c),true)}}}}\nfunction gSc(a,b,c){var d,e,f,g,h,i,j,k;Odd(c,'Processor compute fanout',1);Uhb(a.b);Uhb(a.a);h=null;f=Jsb(b.b,0);while(!h&&f.b!=f.d.c){j=BD(Xsb(f),86);Ccb(DD(vNb(j,(mTc(),jTc))))&&(h=j)}i=new Psb;Gsb(i,h,i.c.b,i.c);fSc(a,i);for(k=Jsb(b.b,0);k.b!=k.d.c;){j=BD(Xsb(k),86);g=GD(vNb(j,(mTc(),$Sc)));e=Phb(a.b,g)!=null?BD(Phb(a.b,g),19).a:0;yNb(j,ZSc,meb(e));d=1+(Phb(a.a,g)!=null?BD(Phb(a.a,g),19).a:0);yNb(j,XSc,meb(d))}Qdd(c)}\nfunction WPc(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o;m=VPc(a,c);for(i=0;i0);d.a.Xb(d.c=--d.b);l>m+i&&uib(d)}for(g=new olb(n);g.a0);d.a.Xb(d.c=--d.b)}}}}\nfunction Jfe(){wfe();var a,b,c,d,e,f;if(gfe)return gfe;a=(++vfe,new $fe(4));Xfe(a,Kfe(vxe,true));Zfe(a,Kfe('M',true));Zfe(a,Kfe('C',true));f=(++vfe,new $fe(4));for(d=0;d<11;d++){Ufe(f,d,d)}b=(++vfe,new $fe(4));Xfe(b,Kfe('M',true));Ufe(b,4448,4607);Ufe(b,65438,65439);e=(++vfe,new Lge(2));Kge(e,a);Kge(e,ffe);c=(++vfe,new Lge(2));c.$l(Bfe(f,Kfe('L',true)));c.$l(b);c=(++vfe,new lge(3,c));c=(++vfe,new rge(e,c));gfe=c;return gfe}\nfunction S3c(a){var b,c;b=GD(hkd(a,(Y9c(),o8c)));if(T3c(b,a)){return}if(!ikd(a,F9c)&&((!a.a&&(a.a=new cUd(E2,a,10,11)),a.a).i!=0||Ccb(DD(hkd(a,M8c))))){if(b==null||ufb(b).length==0){if(!T3c(sne,a)){c=Qfb(Qfb(new Wfb('Unable to load default layout algorithm '),sne),' for unconfigured node ');yfd(a,c);throw vbb(new y2c(c.a))}}else{c=Qfb(Qfb(new Wfb(\"Layout algorithm '\"),b),\"' not found for \");yfd(a,c);throw vbb(new y2c(c.a))}}}\nfunction hIb(a){var b,c,d,e,f,g,h,i,j,k,l,m,n;c=a.i;b=a.n;if(a.b==0){n=c.c+b.b;m=c.b-b.b-b.c;for(g=a.a,i=0,k=g.length;i0){l-=d[0]+a.c;d[0]+=a.c}d[2]>0&&(l-=d[2]+a.c);d[1]=$wnd.Math.max(d[1],l);mHb(a.a[1],c.c+b.b+d[0]-(d[1]-l)/2,d[1])}for(f=a.a,h=0,j=f.length;h0?(a.n.c.length-1)*a.i:0;for(d=new olb(a.n);d.a1){for(d=Jsb(e,0);d.b!=d.d.c;){c=BD(Xsb(d),231);f=0;for(i=new olb(c.e);i.a0){b[0]+=a.c;l-=b[0]}b[2]>0&&(l-=b[2]+a.c);b[1]=$wnd.Math.max(b[1],l);nHb(a.a[1],d.d+c.d+b[0]-(b[1]-l)/2,b[1])}else{o=d.d+c.d;n=d.a-c.d-c.a;for(g=a.a,i=0,k=g.length;i=0&&f!=c){throw vbb(new Wdb(kue))}}e=0;for(i=0;i0||Jy(e.b.d,a.b.d+a.b.a)==0&&d.b<0||Jy(e.b.d+e.b.a,a.b.d)==0&&d.b>0){h=0;break}}else{h=$wnd.Math.min(h,YNb(a,e,d))}h=$wnd.Math.min(h,ONb(a,f,h,d))}return h}\nfunction ifd(a,b){var c,d,e,f,g,h,i;if(a.b<2){throw vbb(new Wdb('The vector chain must contain at least a source and a target point.'))}e=(sCb(a.b!=0),BD(a.a.a.c,8));nmd(b,e.a,e.b);i=new Oyd((!b.a&&(b.a=new xMd(y2,b,5)),b.a));g=Jsb(a,1);while(g.aEdb(REc(g.g,g.d[0]).a)){sCb(i.b>0);i.a.Xb(i.c=--i.b);Aib(i,g);e=true}else if(!!h.e&&h.e.gc()>0){f=(!h.e&&(h.e=new Rkb),h.e).Mc(b);j=(!h.e&&(h.e=new Rkb),h.e).Mc(c);if(f||j){(!h.e&&(h.e=new Rkb),h.e).Fc(g);++g.c}}}e||(d.c[d.c.length]=g,true)}\nfunction odc(a){var b,c,d;if(fcd(BD(vNb(a,(Nyc(),Vxc)),98))){for(c=new olb(a.j);c.a>>0,'0'+b.toString(16));d='\\\\x'+qfb(c,c.length-2,c.length)}else if(a>=Tje){c=(b=a>>>0,'0'+b.toString(16));d='\\\\v'+qfb(c,c.length-6,c.length)}else d=''+String.fromCharCode(a&aje);}return d}\nfunction yhb(a,b){var c,d,e,f,g,h,i,j,k,l;g=a.e;i=b.e;if(i==0){return a}if(g==0){return b.e==0?b:new Vgb(-b.e,b.d,b.a)}f=a.d;h=b.d;if(f+h==2){c=xbb(a.a[0],Yje);d=xbb(b.a[0],Yje);g<0&&(c=Jbb(c));i<0&&(d=Jbb(d));return ghb(Qbb(c,d))}e=f!=h?f>h?1:-1:whb(a.a,b.a,f);if(e==-1){l=-i;k=g==i?zhb(b.a,h,a.a,f):uhb(b.a,h,a.a,f)}else{l=g;if(g==i){if(e==0){return Hgb(),Ggb}k=zhb(a.a,f,b.a,h)}else{k=uhb(a.a,f,b.a,h)}}j=new Vgb(l,k.length,k);Jgb(j);return j}\nfunction YPc(a){var b,c,d,e,f,g;this.e=new Rkb;this.a=new Rkb;for(c=a.b-1;c<3;c++){St(a,0,BD(Ut(a,0),8))}if(a.b<4){throw vbb(new Wdb('At (least dimension + 1) control points are necessary!'))}else{this.b=3;this.d=true;this.c=false;TPc(this,a.b+this.b-1);g=new Rkb;f=new olb(this.e);for(b=0;b=b.o&&c.f<=b.f||b.a*0.5<=c.f&&b.a*1.5>=c.f){g=BD(Ikb(b.n,b.n.c.length-1),211);if(g.e+g.d+c.g+e<=d&&(f=BD(Ikb(b.n,b.n.c.length-1),211),f.f-a.f+c.f<=a.b||a.a.c.length==1)){EZc(b,c);return true}else if(b.s+c.g<=d&&(b.t+b.d+c.f+e<=a.b||a.a.c.length==1)){Ekb(b.b,c);h=BD(Ikb(b.n,b.n.c.length-1),211);Ekb(b.n,new VZc(b.s,h.f+h.a+b.i,b.i));QZc(BD(Ikb(b.n,b.n.c.length-1),211),c);GZc(b,c);return true}}return false}\nfunction Zxd(a,b,c){var d,e,f,g;if(a.ej()){e=null;f=a.fj();d=a.Zi(1,g=uud(a,b,c),c,b,f);if(a.bj()&&!(a.ni()&&g!=null?pb(g,c):PD(g)===PD(c))){g!=null&&(e=a.dj(g,e));e=a.cj(c,e);a.ij()&&(e=a.lj(g,c,e));if(!e){a.$i(d)}else{e.Ei(d);e.Fi()}}else{a.ij()&&(e=a.lj(g,c,e));if(!e){a.$i(d)}else{e.Ei(d);e.Fi()}}return g}else{g=uud(a,b,c);if(a.bj()&&!(a.ni()&&g!=null?pb(g,c):PD(g)===PD(c))){e=null;g!=null&&(e=a.dj(g,null));e=a.cj(c,e);!!e&&e.Fi()}return g}}\nfunction YA(a,b){var c,d,e,f,g,h,i,j;b%=24;if(a.q.getHours()!=b){d=new $wnd.Date(a.q.getTime());d.setDate(d.getDate()+1);h=a.q.getTimezoneOffset()-d.getTimezoneOffset();if(h>0){i=h/60|0;j=h%60;e=a.q.getDate();c=a.q.getHours();c+i>=24&&++e;f=new $wnd.Date(a.q.getFullYear(),a.q.getMonth(),e,b+i,a.q.getMinutes()+j,a.q.getSeconds(),a.q.getMilliseconds());a.q.setTime(f.getTime())}}g=a.q.getTime();a.q.setTime(g+3600000);a.q.getHours()!=b&&a.q.setTime(g)}\nfunction opc(a,b){var c,d,e,f,g;Odd(b,'Path-Like Graph Wrapping',1);if(a.b.c.length==0){Qdd(b);return}e=new Xoc(a);g=(e.i==null&&(e.i=Soc(e,new Zoc)),Edb(e.i)*e.f);c=g/(e.i==null&&(e.i=Soc(e,new Zoc)),Edb(e.i));if(e.b>c){Qdd(b);return}switch(BD(vNb(a,(Nyc(),Gyc)),337).g){case 2:f=new hpc;break;case 0:f=new Ync;break;default:f=new kpc;}d=f.Vf(a,e);if(!f.Wf()){switch(BD(vNb(a,Myc),338).g){case 2:d=tpc(e,d);break;case 1:d=rpc(e,d);}}npc(a,e,d);Qdd(b)}\nfunction MFc(a,b){var c,d,e,f;Fub(a.d,a.e);a.c.a.$b();if(Edb(ED(vNb(b.j,(Nyc(),uwc))))!=0||Edb(ED(vNb(b.j,uwc)))!=0){c=dme;PD(vNb(b.j,ywc))!==PD((tAc(),rAc))&&yNb(b.j,(wtc(),Jsc),(Bcb(),true));f=BD(vNb(b.j,Ayc),19).a;for(e=0;ee&&++j;Ekb(g,(tCb(h+j,b.c.length),BD(b.c[h+j],19)));i+=(tCb(h+j,b.c.length),BD(b.c[h+j],19)).a-d;++c;while(c1&&(i>red(h)*qed(h)/2||g.b==0)){l=new wed(m);k=red(h)/qed(h);j=fed(l,b,new p0b,c,d,e,k);P6c(X6c(l.e),j);h=l;n.c[n.c.length]=l;i=0;m.c=KC(SI,Uhe,1,0,5,1)}}}Gkb(n,m);return n}\nfunction y6d(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o,p;if(c.mh(b)){k=(n=b,!n?null:BD(d,49).xh(n));if(k){p=c.bh(b,a.a);o=b.t;if(o>1||o==-1){l=BD(p,69);m=BD(k,69);if(l.dc()){m.$b()}else{g=!!zUd(b);f=0;for(h=a.a?l.Kc():l.Zh();h.Ob();){j=BD(h.Pb(),56);e=BD(Wrb(a,j),56);if(!e){if(a.b&&!g){m.Xh(f,j);++f}}else{if(g){i=m.Xc(e);i==-1?m.Xh(f,e):f!=i&&m.ji(f,e)}else{m.Xh(f,e)}++f}}}}else{if(p==null){k.Wb(null)}else{e=Wrb(a,p);e==null?a.b&&!zUd(b)&&k.Wb(p):k.Wb(e)}}}}}\nfunction E6b(a,b){var c,d,e,f,g,h,i,j;c=new L6b;for(e=new Sr(ur(R_b(b).a.Kc(),new Sq));Qr(e);){d=BD(Rr(e),17);if(OZb(d)){continue}h=d.c.i;if(F6b(h,C6b)){j=G6b(a,h,C6b,B6b);if(j==-1){continue}c.b=$wnd.Math.max(c.b,j);!c.a&&(c.a=new Rkb);Ekb(c.a,h)}}for(g=new Sr(ur(U_b(b).a.Kc(),new Sq));Qr(g);){f=BD(Rr(g),17);if(OZb(f)){continue}i=f.d.i;if(F6b(i,B6b)){j=G6b(a,i,B6b,C6b);if(j==-1){continue}c.d=$wnd.Math.max(c.d,j);!c.c&&(c.c=new Rkb);Ekb(c.c,i)}}return c}\nfunction Khb(a){Dhb();var b,c,d,e;b=QD(a);if(a1000000){throw vbb(new ocb('power of ten too big'))}if(a<=Ohe){return Qgb(Pgb(Bhb[1],b),b)}d=Pgb(Bhb[1],Ohe);e=d;c=Cbb(a-Ohe);b=QD(a%Ohe);while(ybb(c,Ohe)>0){e=Ogb(e,d);c=Qbb(c,Ohe)}e=Ogb(e,Pgb(Bhb[1],b));e=Qgb(e,Ohe);c=Cbb(a-Ohe);while(ybb(c,Ohe)>0){e=Qgb(e,Ohe);c=Qbb(c,Ohe)}e=Qgb(e,b);return e}\nfunction X5b(a,b){var c,d,e,f,g,h,i,j,k;Odd(b,'Hierarchical port dummy size processing',1);i=new Rkb;k=new Rkb;d=Edb(ED(vNb(a,(Nyc(),myc))));c=d*2;for(f=new olb(a.b);f.aj&&d>j){k=h;j=Edb(b.p[h.p])+Edb(b.d[h.p])+h.o.b+h.d.a}else{e=false;c.n&&Sdd(c,'bk node placement breaks on '+h+' which should have been after '+k);break}}if(!e){break}}c.n&&Sdd(c,b+' is feasible: '+e);return e}\nfunction XNc(a,b,c,d){var e,f,g,h,i,j,k;h=-1;for(k=new olb(a);k.a=q&&a.e[i.p]>o*a.b||t>=c*q){m.c[m.c.length]=h;h=new Rkb;ye(g,f);f.a.$b();j-=k;n=$wnd.Math.max(n,j*a.b+p);j+=t;s=t;t=0;k=0;p=0}}return new vgd(n,m)}\nfunction q4c(a){var b,c,d,e,f,g,h,i,j,k,l,m,n;for(c=(j=(new $ib(a.c.b)).a.vc().Kc(),new djb(j));c.a.Ob();){b=(h=BD(c.a.Pb(),42),BD(h.dd(),149));e=b.a;e==null&&(e='');d=i4c(a.c,e);!d&&e.length==0&&(d=u4c(a));!!d&&!ze(d.c,b,false)&&Dsb(d.c,b)}for(g=Jsb(a.a,0);g.b!=g.d.c;){f=BD(Xsb(g),478);k=j4c(a.c,f.a);n=j4c(a.c,f.b);!!k&&!!n&&Dsb(k.c,new vgd(n,f.c))}Osb(a.a);for(m=Jsb(a.b,0);m.b!=m.d.c;){l=BD(Xsb(m),478);b=g4c(a.c,l.a);i=j4c(a.c,l.b);!!b&&!!i&&B3c(b,i,l.c)}Osb(a.b)}\nfunction qvd(a,b,c){var d,e,f,g,h,i,j,k,l,m,n;f=new fC(a);g=new ird;e=(ko(g.g),ko(g.j),Uhb(g.b),ko(g.d),ko(g.i),Uhb(g.k),Uhb(g.c),Uhb(g.e),n=drd(g,f,null),ard(g,f),n);if(b){j=new fC(b);h=rvd(j);jfd(e,OC(GC(g2,1),Uhe,527,0,[h]))}m=false;l=false;if(c){j=new fC(c);que in j.a&&(m=aC(j,que).ge().a);rue in j.a&&(l=aC(j,rue).ge().a)}k=Vdd(Xdd(new Zdd,m),l);t2c(new w2c,e,k);que in f.a&&cC(f,que,null);if(m||l){i=new eC;nvd(k,i,m,l);cC(f,que,i)}d=new Prd(g);Ghe(new _ud(e),d)}\nfunction pA(a,b,c){var d,e,f,g,h,i,j,k,l;g=new nB;j=OC(GC(WD,1),oje,25,15,[0]);e=-1;f=0;d=0;for(i=0;i0){if(e<0&&k.a){e=i;f=j[0];d=0}if(e>=0){h=k.b;if(i==e){h-=d++;if(h==0){return 0}}if(!wA(b,j,k,h,g)){i=e-1;j[0]=f;continue}}else{e=-1;if(!wA(b,j,k,0,g)){return 0}}}else{e=-1;if(bfb(k.c,0)==32){l=j[0];uA(b,j);if(j[0]>l){continue}}else if(ofb(b,k.c,j[0])){j[0]+=k.c.length;continue}return 0}}if(!mB(g,c)){return 0}return j[0]}\nfunction SKd(a){var b,c,d,e,f,g,h,i;if(!a.f){i=new CNd;h=new CNd;b=KKd;g=b.a.zc(a,b);if(g==null){for(f=new Fyd(_Kd(a));f.e!=f.i.gc();){e=BD(Dyd(f),26);ytd(i,SKd(e))}b.a.Bc(a)!=null;b.a.gc()==0&&undefined}for(d=(!a.s&&(a.s=new cUd(t5,a,21,17)),new Fyd(a.s));d.e!=d.i.gc();){c=BD(Dyd(d),170);JD(c,99)&&wtd(h,BD(c,18))}vud(h);a.r=new UNd(a,(BD(qud(ZKd((NFd(),MFd).o),6),18),h.i),h.g);ytd(i,a.r);vud(i);a.f=new nNd((BD(qud(ZKd(MFd.o),5),18),i.i),i.g);$Kd(a).b&=-3}return a.f}\nfunction rMb(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o;g=a.o;d=KC(WD,oje,25,g,15,1);e=KC(WD,oje,25,g,15,1);c=a.p;b=KC(WD,oje,25,c,15,1);f=KC(WD,oje,25,c,15,1);for(j=0;j=0&&!YMb(a,k,l)){--l}e[k]=l}for(n=0;n=0&&!YMb(a,h,o)){--h}f[o]=h}for(i=0;ib[m]&&md[i]&&aNb(a,i,m,false,true)}}}\nfunction lRb(a){var b,c,d,e,f,g,h,i;c=Ccb(DD(vNb(a,(wSb(),cSb))));f=a.a.c.d;h=a.a.d.d;if(c){g=Y6c(c7c(new f7c(h.a,h.b),f),0.5);i=Y6c(R6c(a.e),0.5);b=c7c(P6c(new f7c(f.a,f.b),g),i);a7c(a.d,b)}else{e=Edb(ED(vNb(a.a,tSb)));d=a.d;if(f.a>=h.a){if(f.b>=h.b){d.a=h.a+(f.a-h.a)/2+e;d.b=h.b+(f.b-h.b)/2-e-a.e.b}else{d.a=h.a+(f.a-h.a)/2+e;d.b=f.b+(h.b-f.b)/2+e}}else{if(f.b>=h.b){d.a=f.a+(h.a-f.a)/2+e;d.b=h.b+(f.b-h.b)/2+e}else{d.a=f.a+(h.a-f.a)/2+e;d.b=f.b+(h.b-f.b)/2-e-a.e.b}}}}\nfunction Qge(a,b){var c,d,e,f,g,h,i;if(a==null){return null}f=a.length;if(f==0){return ''}i=KC(TD,$ie,25,f,15,1);ACb(0,f,a.length);ACb(0,f,i.length);ffb(a,0,f,i,0);c=null;h=b;for(e=0,g=0;e0?qfb(c.a,0,f-1):''}}else{return !c?a:c.a}}\nfunction DPb(a){r4c(a,new E3c(P3c(M3c(O3c(N3c(new R3c,Yle),'ELK DisCo'),'Layouter for arranging unconnected subgraphs. The subgraphs themselves are, by default, not laid out.'),new GPb)));p4c(a,Yle,Zle,Ksd(BPb));p4c(a,Yle,$le,Ksd(vPb));p4c(a,Yle,_le,Ksd(qPb));p4c(a,Yle,ame,Ksd(wPb));p4c(a,Yle,Zke,Ksd(zPb));p4c(a,Yle,$ke,Ksd(yPb));p4c(a,Yle,Yke,Ksd(APb));p4c(a,Yle,_ke,Ksd(xPb));p4c(a,Yle,Tle,Ksd(sPb));p4c(a,Yle,Ule,Ksd(rPb));p4c(a,Yle,Vle,Ksd(tPb));p4c(a,Yle,Wle,Ksd(uPb))}\nfunction Zbc(a,b,c,d){var e,f,g,h,i,j,k,l,m;f=new b0b(a);__b(f,(j0b(),i0b));yNb(f,(Nyc(),Vxc),(dcd(),$bd));e=0;if(b){g=new H0b;yNb(g,(wtc(),$sc),b);yNb(f,$sc,b.i);G0b(g,(Ucd(),Tcd));F0b(g,f);m=k_b(b.e);for(j=m,k=0,l=j.length;k0){c-=d.length-b;if(c>=0){e.a+='0.';for(;c>egb.length;c-=egb.length){Rfb(e,egb)}Sfb(e,egb,QD(c));Qfb(e,d.substr(b))}else{c=b-c;Qfb(e,qfb(d,b,QD(c)));e.a+='.';Qfb(e,pfb(d,QD(c)))}}else{Qfb(e,d.substr(b));for(;c<-egb.length;c+=egb.length){Rfb(e,egb)}Sfb(e,egb,QD(-c))}return e.a}\nfunction v6c(a,b,c,d){var e,f,g,h,i,j,k,l,m;i=c7c(new f7c(c.a,c.b),a);j=i.a*b.b-i.b*b.a;k=b.a*d.b-b.b*d.a;l=(i.a*d.b-i.b*d.a)/k;m=j/k;if(k==0){if(j==0){e=P6c(new f7c(c.a,c.b),Y6c(new f7c(d.a,d.b),0.5));f=S6c(a,e);g=S6c(P6c(new f7c(a.a,a.b),b),e);h=$wnd.Math.sqrt(d.a*d.a+d.b*d.b)*0.5;if(f=0&&l<=1&&m>=0&&m<=1?P6c(new f7c(a.a,a.b),Y6c(new f7c(b.a,b.b),l)):null}}\nfunction OTb(a,b,c){var d,e,f,g,h;d=BD(vNb(a,(Nyc(),zwc)),21);c.a>b.a&&(d.Hc((i8c(),c8c))?(a.c.a+=(c.a-b.a)/2):d.Hc(e8c)&&(a.c.a+=c.a-b.a));c.b>b.b&&(d.Hc((i8c(),g8c))?(a.c.b+=(c.b-b.b)/2):d.Hc(f8c)&&(a.c.b+=c.b-b.b));if(BD(vNb(a,(wtc(),Ksc)),21).Hc((Orc(),Hrc))&&(c.a>b.a||c.b>b.b)){for(h=new olb(a.a);h.ab.a&&(d.Hc((i8c(),c8c))?(a.c.a+=(c.a-b.a)/2):d.Hc(e8c)&&(a.c.a+=c.a-b.a));c.b>b.b&&(d.Hc((i8c(),g8c))?(a.c.b+=(c.b-b.b)/2):d.Hc(f8c)&&(a.c.b+=c.b-b.b));if(BD(vNb(a,(wtc(),Ksc)),21).Hc((Orc(),Hrc))&&(c.a>b.a||c.b>b.b)){for(g=new olb(a.a);g.ab){e=0;f+=k.b+c;l.c[l.c.length]=k;k=new x$c(f,c);d=new PZc(0,k.f,k,c);s$c(k,d);e=0}if(d.b.c.length==0||i.f>=d.o&&i.f<=d.f||d.a*0.5<=i.f&&d.a*1.5>=i.f){EZc(d,i)}else{g=new PZc(d.s+d.r+c,k.f,k,c);s$c(k,g);EZc(g,i)}e=i.i+i.g}l.c[l.c.length]=k;return l}\nfunction OKd(a){var b,c,d,e,f,g,h,i;if(!a.a){a.o=null;i=new GNd(a);b=new KNd;c=KKd;h=c.a.zc(a,c);if(h==null){for(g=new Fyd(_Kd(a));g.e!=g.i.gc();){f=BD(Dyd(g),26);ytd(i,OKd(f))}c.a.Bc(a)!=null;c.a.gc()==0&&undefined}for(e=(!a.s&&(a.s=new cUd(t5,a,21,17)),new Fyd(a.s));e.e!=e.i.gc();){d=BD(Dyd(e),170);JD(d,322)&&wtd(b,BD(d,34))}vud(b);a.k=new PNd(a,(BD(qud(ZKd((NFd(),MFd).o),7),18),b.i),b.g);ytd(i,a.k);vud(i);a.a=new nNd((BD(qud(ZKd(MFd.o),4),18),i.i),i.g);$Kd(a).b&=-2}return a.a}\nfunction vZc(a,b,c,d,e,f,g){var h,i,j,k,l,m;l=false;i=ZZc(c.q,b.f+b.b-c.q.f);m=e-(c.q.e+i-g);if(m=(tCb(f,a.c.length),BD(a.c[f],200)).e;k=(h=MZc(d,m,false),h.a);if(k>b.b&&!j){return false}if(j||k<=b.b){if(j&&k>b.b){c.d=k;KZc(c,JZc(c,k))}else{$Zc(c.q,i);c.c=true}KZc(d,e-(c.s+c.r));OZc(d,c.q.e+c.q.d,b.f);s$c(b,d);if(a.c.length>f){v$c((tCb(f,a.c.length),BD(a.c[f],200)),d);(tCb(f,a.c.length),BD(a.c[f],200)).a.c.length==0&&Kkb(a,f)}l=true}return l}\nfunction C2d(a,b,c,d){var e,f,g,h,i,j,k;k=S6d(a.e.Tg(),b);e=0;f=BD(a.g,119);i=null;Q6d();if(BD(b,66).Oj()){for(h=0;ha.o.a){k=(i-a.o.a)/2;h.b=$wnd.Math.max(h.b,k);h.c=$wnd.Math.max(h.c,k)}}\nfunction rvd(a){var b,c,d,e,f,g,h,i;f=new b2c;Z1c(f,(Y1c(),V1c));for(d=(e=$B(a,KC(ZI,nie,2,0,6,1)),new vib(new amb((new mC(a,e)).b)));d.b0?a.i:0)>b&&i>0){f=0;g+=i+a.i;e=$wnd.Math.max(e,m);d+=i+a.i;i=0;m=0;if(c){++l;Ekb(a.n,new VZc(a.s,g,a.i))}h=0}m+=j.g+(h>0?a.i:0);i=$wnd.Math.max(i,j.f);c&&QZc(BD(Ikb(a.n,l),211),j);f+=j.g+(h>0?a.i:0);++h}e=$wnd.Math.max(e,m);d+=i;if(c){a.r=e;a.d=d;u$c(a.j)}return new J6c(a.s,a.t,e,d)}\nfunction $fb(a,b,c,d,e){Zfb();var f,g,h,i,j,k,l,m,n;vCb(a,'src');vCb(c,'dest');m=rb(a);i=rb(c);rCb((m.i&4)!=0,'srcType is not an array');rCb((i.i&4)!=0,'destType is not an array');l=m.c;g=i.c;rCb((l.i&1)!=0?l==g:(g.i&1)==0,\"Array types don't match\");n=a.length;j=c.length;if(b<0||d<0||e<0||b+e>n||d+e>j){throw vbb(new pcb)}if((l.i&1)==0&&m!=i){k=CD(a);f=CD(c);if(PD(a)===PD(c)&&bd;){NC(f,h,k[--b])}}else{for(h=d+e;d0&&$Bb(a,b,c,d,e,true)}\nfunction phb(){phb=ccb;nhb=OC(GC(WD,1),oje,25,15,[Rie,1162261467,Iie,1220703125,362797056,1977326743,Iie,387420489,Jje,214358881,429981696,815730721,1475789056,170859375,268435456,410338673,612220032,893871739,1280000000,1801088541,113379904,148035889,191102976,244140625,308915776,387420489,481890304,594823321,729000000,887503681,Iie,1291467969,1544804416,1838265625,60466176]);ohb=OC(GC(WD,1),oje,25,15,[-1,-1,31,19,15,13,11,11,10,9,9,8,8,8,8,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5])}\nfunction soc(a){var b,c,d,e,f,g,h,i;for(e=new olb(a.b);e.a=a.b.length){f[e++]=g.b[d++];f[e++]=g.b[d++]}else if(d>=g.b.length){f[e++]=a.b[c++];f[e++]=a.b[c++]}else if(g.b[d]0?a.i:0)}++b}Ce(a.n,i);a.d=c;a.r=d;a.g=0;a.f=0;a.e=0;a.o=Pje;a.p=Pje;for(f=new olb(a.b);f.a0){e=(!a.n&&(a.n=new cUd(D2,a,1,7)),BD(qud(a.n,0),137)).a;!e||Qfb(Qfb((b.a+=' \"',b),e),'\"')}}else{Qfb(Qfb((b.a+=' \"',b),d),'\"')}c=(!a.b&&(a.b=new y5d(z2,a,4,7)),!(a.b.i<=1&&(!a.c&&(a.c=new y5d(z2,a,5,8)),a.c.i<=1)));c?(b.a+=' [',b):(b.a+=' ',b);Qfb(b,Eb(new Gb,new Fyd(a.b)));c&&(b.a+=']',b);b.a+=gne;c&&(b.a+='[',b);Qfb(b,Eb(new Gb,new Fyd(a.c)));c&&(b.a+=']',b);return b.a}\nfunction TQd(a,b){var c,d,e,f,g,h,i;if(a.a){h=a.a.ne();i=null;if(h!=null){b.a+=''+h}else{g=a.a.Dj();if(g!=null){f=hfb(g,wfb(91));if(f!=-1){i=g.substr(f);b.a+=''+qfb(g==null?Xhe:(uCb(g),g),0,f)}else{b.a+=''+g}}}if(!!a.d&&a.d.i!=0){e=true;b.a+='<';for(d=new Fyd(a.d);d.e!=d.i.gc();){c=BD(Dyd(d),87);e?(e=false):(b.a+=She,b);TQd(c,b)}b.a+='>'}i!=null&&(b.a+=''+i,b)}else if(a.e){h=a.e.zb;h!=null&&(b.a+=''+h,b)}else{b.a+='?';if(a.b){b.a+=' super ';TQd(a.b,b)}else{if(a.f){b.a+=' extends ';TQd(a.f,b)}}}}\nfunction Z9b(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D;v=a.c;w=b.c;c=Jkb(v.a,a,0);d=Jkb(w.a,b,0);t=BD(W_b(a,(KAc(),HAc)).Kc().Pb(),11);C=BD(W_b(a,IAc).Kc().Pb(),11);u=BD(W_b(b,HAc).Kc().Pb(),11);D=BD(W_b(b,IAc).Kc().Pb(),11);r=k_b(t.e);A=k_b(C.g);s=k_b(u.e);B=k_b(D.g);Z_b(a,d,w);for(g=s,k=0,o=g.length;kk){new DOc((HOc(),GOc),c,b,j-k)}else if(j>0&&k>0){new DOc((HOc(),GOc),b,c,0);new DOc(GOc,c,b,0)}}return g}\nfunction TUb(a,b){var c,d,e,f,g,h;for(g=new nib((new eib(a.f.b)).a);g.b;){f=lib(g);e=BD(f.cd(),594);if(b==1){if(e.gf()!=(ead(),dad)&&e.gf()!=_9c){continue}}else{if(e.gf()!=(ead(),aad)&&e.gf()!=bad){continue}}d=BD(BD(f.dd(),46).b,81);h=BD(BD(f.dd(),46).a,189);c=h.c;switch(e.gf().g){case 2:d.g.c=a.e.a;d.g.b=$wnd.Math.max(1,d.g.b+c);break;case 1:d.g.c=d.g.c+c;d.g.b=$wnd.Math.max(1,d.g.b-c);break;case 4:d.g.d=a.e.b;d.g.a=$wnd.Math.max(1,d.g.a+c);break;case 3:d.g.d=d.g.d+c;d.g.a=$wnd.Math.max(1,d.g.a-c);}}}\nfunction nJc(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p;h=KC(WD,oje,25,b.b.c.length,15,1);j=KC(NQ,Kie,267,b.b.c.length,0,1);i=KC(OQ,kne,10,b.b.c.length,0,1);for(l=a.a,m=0,n=l.length;m0&&!!i[d]&&(o=jBc(a.b,i[d],e));p=$wnd.Math.max(p,e.c.c.b+o)}for(f=new olb(k.e);f.a1){throw vbb(new Wdb(Hwe))}if(!i){f=R6d(b,d.Kc().Pb());g.Fc(f)}}return xtd(a,I2d(a,b,c),g)}\nfunction Pmc(a,b){var c,d,e,f;Jmc(b.b.j);MAb(NAb(new YAb(null,new Kub(b.d,16)),new $mc),new anc);for(f=new olb(b.d);f.aa.o.b){return false}c=V_b(a,zcd);h=b.d+b.a+(c.gc()-1)*g;if(h>a.o.b){return false}}return true}\nfunction thb(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o;g=a.e;i=b.e;if(g==0){return b}if(i==0){return a}f=a.d;h=b.d;if(f+h==2){c=xbb(a.a[0],Yje);d=xbb(b.a[0],Yje);if(g==i){k=wbb(c,d);o=Tbb(k);n=Tbb(Pbb(k,32));return n==0?new Ugb(g,o):new Vgb(g,2,OC(GC(WD,1),oje,25,15,[o,n]))}return ghb(g<0?Qbb(d,c):Qbb(c,d))}else if(g==i){m=g;l=f>=h?uhb(a.a,f,b.a,h):uhb(b.a,h,a.a,f)}else{e=f!=h?f>h?1:-1:whb(a.a,b.a,f);if(e==0){return Hgb(),Ggb}if(e==1){m=g;l=zhb(a.a,f,b.a,h)}else{m=i;l=zhb(b.a,h,a.a,f)}}j=new Vgb(m,l.length,l);Jgb(j);return j}\nfunction oZb(a,b,c,d,e,f,g){var h,i,j,k,l,m,n;l=Ccb(DD(vNb(b,(Nyc(),vxc))));m=null;f==(KAc(),HAc)&&d.c.i==c?(m=d.c):f==IAc&&d.d.i==c&&(m=d.d);j=g;if(!j||!l||!!m){k=(Ucd(),Scd);m?(k=m.j):fcd(BD(vNb(c,Vxc),98))&&(k=f==HAc?Tcd:zcd);i=lZb(a,b,c,f,k,d);h=kZb((Q_b(c),d));if(f==HAc){QZb(h,BD(Ikb(i.j,0),11));RZb(h,e)}else{QZb(h,e);RZb(h,BD(Ikb(i.j,0),11))}j=new yZb(d,h,i,BD(vNb(i,(wtc(),$sc)),11),f,!m)}else{Ekb(j.e,d);n=$wnd.Math.max(Edb(ED(vNb(j.d,Zwc))),Edb(ED(vNb(d,Zwc))));yNb(j.d,Zwc,n)}Rc(a.a,d,new BZb(j.d,b,f));return j}\nfunction V1d(a,b){var c,d,e,f,g,h,i,j,k,l;k=null;!!a.d&&(k=BD(Phb(a.d,b),138));if(!k){f=a.a.Mh();l=f.i;if(!a.d||Vhb(a.d)!=l){i=new Lqb;!!a.d&&Ld(i,a.d);j=i.f.c+i.g.c;for(h=j;h0){n=(o-1)*c;!!h&&(n+=d);!!k&&(n+=d);n=a.b[e+1]){e+=2}else if(c0){d=new Tkb(BD(Qc(a.a,f),21));mmb();Okb(d,new EZb(b));e=new Bib(f.b,0);while(e.bv)){i=2;g=Ohe}else if(i==0){i=1;g=A}else{i=0;g=A}}else{n=A>=g||g-A0?1:Ny(isNaN(d),isNaN(0)))>=0^(null,My(Jqe),($wnd.Math.abs(h)<=Jqe||h==0||isNaN(h)&&isNaN(0)?0:h<0?-1:h>0?1:Ny(isNaN(h),isNaN(0)))>=0)){return $wnd.Math.max(h,d)}My(Jqe);if(($wnd.Math.abs(d)<=Jqe||d==0||isNaN(d)&&isNaN(0)?0:d<0?-1:d>0?1:Ny(isNaN(d),isNaN(0)))>0){return $wnd.Math.sqrt(h*h+d*d)}return -$wnd.Math.sqrt(h*h+d*d)}\nfunction Kge(a,b){var c,d,e,f,g,h;if(!b)return;!a.a&&(a.a=new Wvb);if(a.e==2){Tvb(a.a,b);return}if(b.e==1){for(e=0;e=Tje?Efb(c,Tee(d)):Afb(c,d&aje);g=(++vfe,new Hge(10,null,0));Vvb(a.a,g,h-1)}else{c=(g.bm().length+f,new Ifb);Efb(c,g.bm())}if(b.e==0){d=b._l();d>=Tje?Efb(c,Tee(d)):Afb(c,d&aje)}else{Efb(c,b.bm())}BD(g,521).b=c.a}\nfunction rgb(a){var b,c,d,e,f;if(a.g!=null){return a.g}if(a.a<32){a.g=rhb(Cbb(a.f),QD(a.e));return a.g}e=shb((!a.c&&(a.c=fhb(a.f)),a.c),0);if(a.e==0){return e}b=(!a.c&&(a.c=fhb(a.f)),a.c).e<0?2:1;c=e.length;d=-a.e+c-b;f=new Ufb;f.a+=''+e;if(a.e>0&&d>=-6){if(d>=0){Tfb(f,c-QD(a.e),String.fromCharCode(46))}else{f.a=qfb(f.a,0,b-1)+'0.'+pfb(f.a,b-1);Tfb(f,b+1,zfb(egb,0,-QD(d)-1))}}else{if(c-b>=1){Tfb(f,b,String.fromCharCode(46));++c}Tfb(f,c,String.fromCharCode(69));d>0&&Tfb(f,++c,String.fromCharCode(43));Tfb(f,++c,''+Ubb(Cbb(d)))}a.g=f.a;return a.g}\nfunction npc(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q;if(c.dc()){return}h=0;m=0;d=c.Kc();o=BD(d.Pb(),19).a;while(h1&&(i=j.mg(i,a.a,h))}if(i.c.length==1){return BD(Ikb(i,i.c.length-1),220)}if(i.c.length==2){return lYc((tCb(0,i.c.length),BD(i.c[0],220)),(tCb(1,i.c.length),BD(i.c[1],220)),g,f)}return null}\nfunction JNb(a){var b,c,d,e,f,g;Hkb(a.a,new PNb);for(c=new olb(a.a);c.a=$wnd.Math.abs(d.b)){d.b=0;f.d+f.a>g.d&&f.dg.c&&f.c0){b=new _zd(a.i,a.g);c=a.i;f=c<100?null:new Ixd(c);if(a.ij()){for(d=0;d0){h=a.g;j=a.i;oud(a);f=j<100?null:new Ixd(j);for(d=0;d>13|(a.m&15)<<9;e=a.m>>4&8191;f=a.m>>17|(a.h&255)<<5;g=(a.h&1048320)>>8;h=b.l&8191;i=b.l>>13|(b.m&15)<<9;j=b.m>>4&8191;k=b.m>>17|(b.h&255)<<5;l=(b.h&1048320)>>8;B=c*h;C=d*h;D=e*h;F=f*h;G=g*h;if(i!=0){C+=c*i;D+=d*i;F+=e*i;G+=f*i}if(j!=0){D+=c*j;F+=d*j;G+=e*j}if(k!=0){F+=c*k;G+=d*k}l!=0&&(G+=c*l);n=B&Eje;o=(C&511)<<13;m=n+o;q=B>>22;r=C>>9;s=(D&262143)<<4;t=(F&31)<<17;p=q+r+s+t;v=D>>18;w=F>>5;A=(G&4095)<<8;u=v+w+A;p+=m>>22;m&=Eje;u+=p>>22;p&=Eje;u&=Fje;return TC(m,p,u)}\nfunction o7b(a){var b,c,d,e,f,g,h;h=BD(Ikb(a.j,0),11);if(h.g.c.length!=0&&h.e.c.length!=0){throw vbb(new Zdb('Interactive layout does not support NORTH/SOUTH ports with incoming _and_ outgoing edges.'))}if(h.g.c.length!=0){f=Pje;for(c=new olb(h.g);c.a4){if(a.wj(b)){if(a.rk()){e=BD(b,49);d=e.Ug();i=d==a.e&&(a.Dk()?e.Og(e.Vg(),a.zk())==a.Ak():-1-e.Vg()==a.aj());if(a.Ek()&&!i&&!d&&!!e.Zg()){for(f=0;f0&&(j=a.n.a/f);break;case 2:case 4:e=a.i.o.b;e>0&&(j=a.n.b/e);}yNb(a,(wtc(),htc),j)}i=a.o;g=a.a;if(d){g.a=d.a;g.b=d.b;a.d=true}else if(b!=bcd&&b!=ccd&&h!=Scd){switch(h.g){case 1:g.a=i.a/2;break;case 2:g.a=i.a;g.b=i.b/2;break;case 3:g.a=i.a/2;g.b=i.b;break;case 4:g.b=i.b/2;}}else{g.a=i.a/2;g.b=i.b/2}}\nfunction vwd(a){var b,c,d,e,f,g,h,i,j,k;if(a.ej()){k=a.Vi();i=a.fj();if(k>0){b=new Aud(a.Gi());c=k;f=c<100?null:new Ixd(c);Cvd(a,c,b.g);e=c==1?a.Zi(4,qud(b,0),null,0,i):a.Zi(6,b,null,-1,i);if(a.bj()){for(d=new Fyd(b);d.e!=d.i.gc();){f=a.dj(Dyd(d),f)}if(!f){a.$i(e)}else{f.Ei(e);f.Fi()}}else{if(!f){a.$i(e)}else{f.Ei(e);f.Fi()}}}else{Cvd(a,a.Vi(),a.Wi());a.$i(a.Zi(6,(mmb(),jmb),null,-1,i))}}else if(a.bj()){k=a.Vi();if(k>0){h=a.Wi();j=k;Cvd(a,k,h);f=j<100?null:new Ixd(j);for(d=0;da.d[g.p]){c+=zHc(a.b,f)*BD(i.b,19).a;Wjb(a.a,meb(f))}}while(!akb(a.a)){xHc(a.b,BD(fkb(a.a),19).a)}}return c}\nfunction eed(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o,p,q;l=new g7c(BD(hkd(a,(X7c(),R7c)),8));l.a=$wnd.Math.max(l.a-c.b-c.c,0);l.b=$wnd.Math.max(l.b-c.d-c.a,0);e=ED(hkd(a,L7c));(e==null||(uCb(e),e)<=0)&&(e=1.3);h=new Rkb;for(o=new Fyd((!a.a&&(a.a=new cUd(E2,a,10,11)),a.a));o.e!=o.i.gc();){n=BD(Dyd(o),33);g=new xed(n);h.c[h.c.length]=g}m=BD(hkd(a,M7c),311);switch(m.g){case 3:q=bed(h,b,l.a,l.b,(j=d,uCb(e),e,j));break;case 1:q=aed(h,b,l.a,l.b,(k=d,uCb(e),e,k));break;default:q=ced(h,b,l.a,l.b,(i=d,uCb(e),e,i));}f=new wed(q);p=fed(f,b,c,l.a,l.b,d,(uCb(e),e));Afd(a,p.a,p.b,false,true)}\nfunction vkc(a,b){var c,d,e,f;c=b.b;f=new Tkb(c.j);e=0;d=c.j;d.c=KC(SI,Uhe,1,0,5,1);hkc(BD(Si(a.b,(Ucd(),Acd),(Fkc(),Ekc)),15),c);e=ikc(f,e,new blc,d);hkc(BD(Si(a.b,Acd,Dkc),15),c);e=ikc(f,e,new dlc,d);hkc(BD(Si(a.b,Acd,Ckc),15),c);hkc(BD(Si(a.b,zcd,Ekc),15),c);hkc(BD(Si(a.b,zcd,Dkc),15),c);e=ikc(f,e,new flc,d);hkc(BD(Si(a.b,zcd,Ckc),15),c);hkc(BD(Si(a.b,Rcd,Ekc),15),c);e=ikc(f,e,new hlc,d);hkc(BD(Si(a.b,Rcd,Dkc),15),c);e=ikc(f,e,new jlc,d);hkc(BD(Si(a.b,Rcd,Ckc),15),c);hkc(BD(Si(a.b,Tcd,Ekc),15),c);e=ikc(f,e,new Pkc,d);hkc(BD(Si(a.b,Tcd,Dkc),15),c);hkc(BD(Si(a.b,Tcd,Ckc),15),c)}\nfunction nbc(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p;Odd(b,'Layer size calculation',1);k=Pje;j=Qje;e=false;for(h=new olb(a.b);h.a0.5?(r-=g*2*(o-0.5)):o<0.5&&(r+=f*2*(0.5-o));e=h.d.b;rq.a-p-k&&(r=q.a-p-k);h.n.a=b+r}}\nfunction ced(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q;h=KC(UD,Vje,25,a.c.length,15,1);m=new gub(new Ned);_tb(m,a);j=0;p=new Rkb;while(m.b.c.length!=0){g=BD(m.b.c.length==0?null:Ikb(m.b,0),157);if(j>1&&red(g)*qed(g)/2>h[0]){f=0;while(fh[f]){++f}o=new Jib(p,0,f+1);l=new wed(o);k=red(g)/qed(g);i=fed(l,b,new p0b,c,d,e,k);P6c(X6c(l.e),i);zCb(cub(m,l));n=new Jib(p,f+1,p.c.length);_tb(m,n);p.c=KC(SI,Uhe,1,0,5,1);j=0;Dlb(h,h.length,0)}else{q=m.b.c.length==0?null:Ikb(m.b,0);q!=null&&fub(m,0);j>0&&(h[j]=h[j-1]);h[j]+=red(g)*qed(g);++j;p.c[p.c.length]=g}}return p}\nfunction Wac(a){var b,c,d,e,f;d=BD(vNb(a,(Nyc(),mxc)),163);if(d==(Ctc(),ytc)){for(c=new Sr(ur(R_b(a).a.Kc(),new Sq));Qr(c);){b=BD(Rr(c),17);if(!Yac(b)){throw vbb(new y2c(Fne+P_b(a)+\"' has its layer constraint set to FIRST_SEPARATE, but has at least one incoming edge. \"+'FIRST_SEPARATE nodes must not have incoming edges.'))}}}else if(d==Atc){for(f=new Sr(ur(U_b(a).a.Kc(),new Sq));Qr(f);){e=BD(Rr(f),17);if(!Yac(e)){throw vbb(new y2c(Fne+P_b(a)+\"' has its layer constraint set to LAST_SEPARATE, but has at least one outgoing edge. \"+'LAST_SEPARATE nodes must not have outgoing edges.'))}}}}\nfunction C9b(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o;Odd(b,'Label dummy removal',1);d=Edb(ED(vNb(a,(Nyc(),nyc))));e=Edb(ED(vNb(a,ryc)));j=BD(vNb(a,Lwc),103);for(i=new olb(a.b);i.a0&&iCc(a,h,l)}for(e=new olb(l);e.a>19!=0){b=hD(b);i=!i}g=_C(b);f=false;e=false;d=false;if(a.h==Gje&&a.m==0&&a.l==0){e=true;f=true;if(g==-1){a=SC((wD(),sD));d=true;i=!i}else{h=lD(a,g);i&&ZC(h);c&&(QC=TC(0,0,0));return h}}else if(a.h>>19!=0){f=true;a=hD(a);d=true;i=!i}if(g!=-1){return WC(a,g,i,f,c)}if(eD(a,b)<0){c&&(f?(QC=hD(a)):(QC=TC(a.l,a.m,a.h)));return TC(0,0,0)}return XC(d?a:TC(a.l,a.m,a.h),b,i,f,e,c)}\nfunction F2c(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o;if(a.e&&a.c.cb.f||b.g>a.f){return}c=0;d=0;for(g=a.w.a.ec().Kc();g.Ob();){e=BD(g.Pb(),11);aRc(l7c(OC(GC(m1,1),nie,8,0,[e.i.n,e.n,e.a])).b,b.g,b.f)&&++c}for(h=a.r.a.ec().Kc();h.Ob();){e=BD(h.Pb(),11);aRc(l7c(OC(GC(m1,1),nie,8,0,[e.i.n,e.n,e.a])).b,b.g,b.f)&&--c}for(i=b.w.a.ec().Kc();i.Ob();){e=BD(i.Pb(),11);aRc(l7c(OC(GC(m1,1),nie,8,0,[e.i.n,e.n,e.a])).b,a.g,a.f)&&++d}for(f=b.r.a.ec().Kc();f.Ob();){e=BD(f.Pb(),11);aRc(l7c(OC(GC(m1,1),nie,8,0,[e.i.n,e.n,e.a])).b,a.g,a.f)&&--d}if(c=0){f=wid(b,c.substr(1,h-1));l=c.substr(h+1,j-(h+1));return pid(b,l,f)}}else{d=-1;Vcb==null&&(Vcb=new RegExp('\\\\d'));if(Vcb.test(String.fromCharCode(i))){d=lfb(c,wfb(46),j-1);if(d>=0){e=BD(hid(b,Bid(b,c.substr(1,d-1)),false),58);k=0;try{k=Icb(c.substr(d+1),Rie,Ohe)}catch(a){a=ubb(a);if(JD(a,127)){g=a;throw vbb(new rFd(g))}else throw vbb(a)}if(k=0){return c}switch($1d(q1d(a,c))){case 2:{if(dfb('',o1d(a,c.Hj()).ne())){i=b2d(q1d(a,c));h=a2d(q1d(a,c));k=r1d(a,b,i,h);if(k){return k}e=f1d(a,b);for(g=0,l=e.gc();g1){throw vbb(new Wdb(Hwe))}k=S6d(a.e.Tg(),b);d=BD(a.g,119);for(g=0;g1;for(j=new b1b(m.b);llb(j.a)||llb(j.b);){i=BD(llb(j.a)?mlb(j.a):mlb(j.b),17);l=i.c==m?i.d:i.c;$wnd.Math.abs(l7c(OC(GC(m1,1),nie,8,0,[l.i.n,l.n,l.a])).b-g.b)>1&&GNc(a,i,g,f,m)}}}\nfunction XPc(a){var b,c,d,e,f,g;e=new Bib(a.e,0);d=new Bib(a.a,0);if(a.d){for(c=0;cOqe){f=b;g=0;while($wnd.Math.abs(b-f)0);e.a.Xb(e.c=--e.b);WPc(a,a.b-g,f,d,e);sCb(e.b0);d.a.Xb(d.c=--d.b)}if(!a.d){for(c=0;c0){a.f[k.p]=n/(k.e.c.length+k.g.c.length);a.c=$wnd.Math.min(a.c,a.f[k.p]);a.b=$wnd.Math.max(a.b,a.f[k.p])}else h&&(a.f[k.p]=n)}}\nfunction $9d(a){a.b=null;a.bb=null;a.fb=null;a.qb=null;a.a=null;a.c=null;a.d=null;a.e=null;a.f=null;a.n=null;a.M=null;a.L=null;a.Q=null;a.R=null;a.K=null;a.db=null;a.eb=null;a.g=null;a.i=null;a.j=null;a.k=null;a.gb=null;a.o=null;a.p=null;a.q=null;a.r=null;a.$=null;a.ib=null;a.S=null;a.T=null;a.t=null;a.s=null;a.u=null;a.v=null;a.w=null;a.B=null;a.A=null;a.C=null;a.D=null;a.F=null;a.G=null;a.H=null;a.I=null;a.J=null;a.P=null;a.Z=null;a.U=null;a.V=null;a.W=null;a.X=null;a.Y=null;a._=null;a.ab=null;a.cb=null;a.hb=null;a.nb=null;a.lb=null;a.mb=null;a.ob=null;a.pb=null;a.jb=null;a.kb=null;a.N=false;a.O=false}\nfunction l5b(a,b,c){var d,e,f,g;Odd(c,'Graph transformation ('+a.a+')',1);g=Mu(b.a);for(f=new olb(b.b);f.a0){a.a=i+(n-1)*f;b.c.b+=a.a;b.f.b+=a.a}}if(o.a.gc()!=0){m=new tPc(1,f);n=sPc(m,b,o,p,b.f.b+i-b.c.b);n>0&&(b.f.b+=i+(n-1)*f)}}\nfunction kKd(a,b){var c,d,e,f;f=a.F;if(b==null){a.F=null;$Jd(a,null)}else{a.F=(uCb(b),b);d=hfb(b,wfb(60));if(d!=-1){e=b.substr(0,d);hfb(b,wfb(46))==-1&&!dfb(e,Khe)&&!dfb(e,Eve)&&!dfb(e,Fve)&&!dfb(e,Gve)&&!dfb(e,Hve)&&!dfb(e,Ive)&&!dfb(e,Jve)&&!dfb(e,Kve)&&(e=Lve);c=kfb(b,wfb(62));c!=-1&&(e+=''+b.substr(c+1));$Jd(a,e)}else{e=b;if(hfb(b,wfb(46))==-1){d=hfb(b,wfb(91));d!=-1&&(e=b.substr(0,d));if(!dfb(e,Khe)&&!dfb(e,Eve)&&!dfb(e,Fve)&&!dfb(e,Gve)&&!dfb(e,Hve)&&!dfb(e,Ive)&&!dfb(e,Jve)&&!dfb(e,Kve)){e=Lve;d!=-1&&(e+=''+b.substr(d))}else{e=b}}$Jd(a,e);e==b&&(a.F=a.D)}}(a.Db&4)!=0&&(a.Db&1)==0&&Uhd(a,new nSd(a,1,5,f,b))}\nfunction AMc(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;p=b.b.c.length;if(p<3){return}n=KC(WD,oje,25,p,15,1);l=0;for(k=new olb(b.b);k.ag)&&Qqb(a.b,BD(q.b,17))}}++h}f=g}}}}\nfunction o5c(b,c){var d;if(c==null||dfb(c,Xhe)){return null}if(c.length==0&&b.k!=(_5c(),W5c)){return null}switch(b.k.g){case 1:return efb(c,kse)?(Bcb(),Acb):efb(c,lse)?(Bcb(),zcb):null;case 2:try{return meb(Icb(c,Rie,Ohe))}catch(a){a=ubb(a);if(JD(a,127)){return null}else throw vbb(a)}case 4:try{return Hcb(c)}catch(a){a=ubb(a);if(JD(a,127)){return null}else throw vbb(a)}case 3:return c;case 5:j5c(b);return m5c(b,c);case 6:j5c(b);return n5c(b,b.a,c);case 7:try{d=l5c(b);d.Jf(c);return d}catch(a){a=ubb(a);if(JD(a,32)){return null}else throw vbb(a)}default:throw vbb(new Zdb('Invalid type set for this layout option.'));}}\nfunction JWb(a){AWb();var b,c,d,e,f,g,h;h=new CWb;for(c=new olb(a);c.a=h.b.c)&&(h.b=b);if(!h.c||b.c<=h.c.c){h.d=h.c;h.c=b}(!h.e||b.d>=h.e.d)&&(h.e=b);(!h.f||b.d<=h.f.d)&&(h.f=b)}d=new NWb((lWb(),hWb));rXb(a,yWb,new amb(OC(GC(bQ,1),Uhe,369,0,[d])));g=new NWb(kWb);rXb(a,xWb,new amb(OC(GC(bQ,1),Uhe,369,0,[g])));e=new NWb(iWb);rXb(a,wWb,new amb(OC(GC(bQ,1),Uhe,369,0,[e])));f=new NWb(jWb);rXb(a,vWb,new amb(OC(GC(bQ,1),Uhe,369,0,[f])));DWb(d.c,hWb);DWb(e.c,iWb);DWb(f.c,jWb);DWb(g.c,kWb);h.a.c=KC(SI,Uhe,1,0,5,1);Gkb(h.a,d.c);Gkb(h.a,Su(e.c));Gkb(h.a,f.c);Gkb(h.a,Su(g.c));return h}\nfunction jxd(a){var b;switch(a.d){case 1:{if(a.hj()){return a.o!=-2}break}case 2:{if(a.hj()){return a.o==-2}break}case 3:case 5:case 4:case 6:case 7:{return a.o>-2}default:{return false}}b=a.gj();switch(a.p){case 0:return b!=null&&Ccb(DD(b))!=Kbb(a.k,0);case 1:return b!=null&&BD(b,217).a!=Tbb(a.k)<<24>>24;case 2:return b!=null&&BD(b,172).a!=(Tbb(a.k)&aje);case 6:return b!=null&&Kbb(BD(b,162).a,a.k);case 5:return b!=null&&BD(b,19).a!=Tbb(a.k);case 7:return b!=null&&BD(b,184).a!=Tbb(a.k)<<16>>16;case 3:return b!=null&&Edb(ED(b))!=a.j;case 4:return b!=null&&BD(b,155).a!=a.j;default:return b==null?a.n!=null:!pb(b,a.n);}}\nfunction nOd(a,b,c){var d,e,f,g;if(a.Fk()&&a.Ek()){g=oOd(a,BD(c,56));if(PD(g)!==PD(c)){a.Oi(b);a.Ui(b,pOd(a,b,g));if(a.rk()){f=(e=BD(c,49),a.Dk()?a.Bk()?e.ih(a.b,zUd(BD(XKd(wjd(a.b),a.aj()),18)).n,BD(XKd(wjd(a.b),a.aj()).Yj(),26).Bj(),null):e.ih(a.b,bLd(e.Tg(),zUd(BD(XKd(wjd(a.b),a.aj()),18))),null,null):e.ih(a.b,-1-a.aj(),null,null));!BD(g,49).eh()&&(f=(d=BD(g,49),a.Dk()?a.Bk()?d.gh(a.b,zUd(BD(XKd(wjd(a.b),a.aj()),18)).n,BD(XKd(wjd(a.b),a.aj()).Yj(),26).Bj(),f):d.gh(a.b,bLd(d.Tg(),zUd(BD(XKd(wjd(a.b),a.aj()),18))),null,f):d.gh(a.b,-1-a.aj(),null,f)));!!f&&f.Fi()}oid(a.b)&&a.$i(a.Zi(9,c,g,b,false));return g}}return c}\nfunction Noc(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;k=Edb(ED(vNb(a,(Nyc(),oyc))));d=Edb(ED(vNb(a,Cyc)));m=new _fd;yNb(m,oyc,k+d);j=b;r=j.d;p=j.c.i;s=j.d.i;q=G1b(p.c);t=G1b(s.c);e=new Rkb;for(l=q;l<=t;l++){h=new b0b(a);__b(h,(j0b(),g0b));yNb(h,(wtc(),$sc),j);yNb(h,Vxc,(dcd(),$bd));yNb(h,qyc,m);n=BD(Ikb(a.b,l),29);l==q?Z_b(h,n.a.c.length-c,n):$_b(h,n);u=Edb(ED(vNb(j,Zwc)));if(u<0){u=0;yNb(j,Zwc,u)}h.o.b=u;o=$wnd.Math.floor(u/2);g=new H0b;G0b(g,(Ucd(),Tcd));F0b(g,h);g.n.b=o;i=new H0b;G0b(i,zcd);F0b(i,h);i.n.b=o;RZb(j,g);f=new UZb;tNb(f,j);yNb(f,jxc,null);QZb(f,i);RZb(f,r);Ooc(h,j,f);e.c[e.c.length]=f;j=f}return e}\nfunction sbc(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;i=BD(Y_b(a,(Ucd(),Tcd)).Kc().Pb(),11).e;n=BD(Y_b(a,zcd).Kc().Pb(),11).g;h=i.c.length;t=A0b(BD(Ikb(a.j,0),11));while(h-->0){p=(tCb(0,i.c.length),BD(i.c[0],17));e=(tCb(0,n.c.length),BD(n.c[0],17));s=e.d.e;f=Jkb(s,e,0);SZb(p,e.d,f);QZb(e,null);RZb(e,null);o=p.a;b&&Dsb(o,new g7c(t));for(d=Jsb(e.a,0);d.b!=d.d.c;){c=BD(Xsb(d),8);Dsb(o,new g7c(c))}r=p.b;for(m=new olb(e.b);m.a0&&(g=$wnd.Math.max(g,IJb(a.C.b+d.d.b,e)))}else{n=m+k.d.c+a.w+d.d.b;g=$wnd.Math.max(g,(Iy(),My(ple),$wnd.Math.abs(l-e)<=ple||l==e||isNaN(l)&&isNaN(e)?0:n/(e-l)))}k=d;l=e;m=f}if(!!a.C&&a.C.c>0){n=m+a.C.c;j&&(n+=k.d.c);g=$wnd.Math.max(g,(Iy(),My(ple),$wnd.Math.abs(l-1)<=ple||l==1||isNaN(l)&&isNaN(1)?0:n/(1-l)))}c.n.b=0;c.a.a=g}\nfunction NKb(a,b){var c,d,e,f,g,h,i,j,k,l,m,n;c=BD(Mpb(a.b,b),124);i=BD(BD(Qc(a.r,b),21),84);if(i.dc()){c.n.d=0;c.n.a=0;return}j=a.u.Hc((rcd(),ncd));g=0;a.A.Hc((tdd(),sdd))&&SKb(a,b);h=i.Kc();k=null;m=0;l=0;while(h.Ob()){d=BD(h.Pb(),111);f=Edb(ED(d.b.We((CKb(),BKb))));e=d.b.rf().b;if(!k){!!a.C&&a.C.d>0&&(g=$wnd.Math.max(g,IJb(a.C.d+d.d.d,f)))}else{n=l+k.d.a+a.w+d.d.d;g=$wnd.Math.max(g,(Iy(),My(ple),$wnd.Math.abs(m-f)<=ple||m==f||isNaN(m)&&isNaN(f)?0:n/(f-m)))}k=d;m=f;l=e}if(!!a.C&&a.C.a>0){n=l+a.C.a;j&&(n+=k.d.a);g=$wnd.Math.max(g,(Iy(),My(ple),$wnd.Math.abs(m-1)<=ple||m==1||isNaN(m)&&isNaN(1)?0:n/(1-m)))}c.n.d=0;c.a.b=g}\nfunction _Ec(a,b,c){var d,e,f,g,h,i;this.g=a;h=b.d.length;i=c.d.length;this.d=KC(OQ,kne,10,h+i,0,1);for(g=0;g0?ZEc(this,this.f/this.a):REc(b.g,b.d[0]).a!=null&&REc(c.g,c.d[0]).a!=null?ZEc(this,(Edb(REc(b.g,b.d[0]).a)+Edb(REc(c.g,c.d[0]).a))/2):REc(b.g,b.d[0]).a!=null?ZEc(this,REc(b.g,b.d[0]).a):REc(c.g,c.d[0]).a!=null&&ZEc(this,REc(c.g,c.d[0]).a)}\nfunction BUb(a,b){var c,d,e,f,g,h,i,j,k,l;a.a=new dVb(oqb(t1));for(d=new olb(b.a);d.a=1){if(q-g>0&&l>=0){i.n.a+=p;i.n.b+=f*g}else if(q-g<0&&k>=0){i.n.a+=p*q;i.n.b+=f}}}a.o.a=b.a;a.o.b=b.b;yNb(a,(Nyc(),Fxc),(tdd(),d=BD(gdb(I1),9),new xqb(d,BD(_Bb(d,d.length),9),0)))}\nfunction iFd(a,b,c,d,e,f){var g;if(!(b==null||!OEd(b,zEd,AEd))){throw vbb(new Wdb('invalid scheme: '+b))}if(!a&&!(c!=null&&hfb(c,wfb(35))==-1&&c.length>0&&(BCb(0,c.length),c.charCodeAt(0)!=47))){throw vbb(new Wdb('invalid opaquePart: '+c))}if(a&&!(b!=null&&hnb(GEd,b.toLowerCase()))&&!(c==null||!OEd(c,CEd,DEd))){throw vbb(new Wdb(mve+c))}if(a&&b!=null&&hnb(GEd,b.toLowerCase())&&!eFd(c)){throw vbb(new Wdb(mve+c))}if(!fFd(d)){throw vbb(new Wdb('invalid device: '+d))}if(!hFd(e)){g=e==null?'invalid segments: null':'invalid segment: '+VEd(e);throw vbb(new Wdb(g))}if(!(f==null||hfb(f,wfb(35))==-1)){throw vbb(new Wdb('invalid query: '+f))}}\nfunction nVc(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;Odd(b,'Calculate Graph Size',1);b.n&&!!a&&Tdd(b,i6d(a),(pgd(),mgd));h=dme;i=dme;f=ere;g=ere;for(l=new Fyd((!a.a&&(a.a=new cUd(E2,a,10,11)),a.a));l.e!=l.i.gc();){j=BD(Dyd(l),33);o=j.i;p=j.j;r=j.g;d=j.f;e=BD(hkd(j,(Y9c(),S8c)),142);h=$wnd.Math.min(h,o-e.b);i=$wnd.Math.min(i,p-e.d);f=$wnd.Math.max(f,o+r+e.c);g=$wnd.Math.max(g,p+d+e.a)}n=BD(hkd(a,(Y9c(),f9c)),116);m=new f7c(h-n.b,i-n.d);for(k=new Fyd((!a.a&&(a.a=new cUd(E2,a,10,11)),a.a));k.e!=k.i.gc();){j=BD(Dyd(k),33);dld(j,j.i-m.a);eld(j,j.j-m.b)}q=f-h+(n.b+n.c);c=g-i+(n.d+n.a);cld(a,q);ald(a,c);b.n&&!!a&&Tdd(b,i6d(a),(pgd(),mgd))}\nfunction rGb(a){var b,c,d,e,f,g,h,i,j,k;d=new Rkb;for(g=new olb(a.e.a);g.a0){gA(a,c,0);c.a+=String.fromCharCode(d);e=lA(b,f);gA(a,c,e);f+=e-1;continue}if(d==39){if(f+11){p=KC(WD,oje,25,a.b.b.c.length,15,1);l=0;for(j=new olb(a.b.b);j.a=h&&e<=i){if(h<=e&&f<=i){c[k++]=e;c[k++]=f;d+=2}else if(h<=e){c[k++]=e;c[k++]=i;a.b[d]=i+1;g+=2}else if(f<=i){c[k++]=h;c[k++]=f;d+=2}else{c[k++]=h;c[k++]=i;a.b[d]=i+1}}else if(iQie)&&h<10);zVb(a.c,new _Ub);OUb(a);vVb(a.c);yUb(a.f)}\nfunction sZb(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q;if(!Ccb(DD(vNb(c,(Nyc(),fxc))))){return}for(h=new olb(c.j);h.a=2){i=Jsb(c,0);g=BD(Xsb(i),8);h=BD(Xsb(i),8);while(h.a0&&jEb(j,true,(ead(),bad));h.k==(j0b(),e0b)&&kEb(j);Rhb(a.f,h,b)}}}\nfunction Bbc(a,b,c){var d,e,f,g,h,i,j,k,l,m;Odd(c,'Node promotion heuristic',1);a.g=b;Abc(a);a.q=BD(vNb(b,(Nyc(),rxc)),260);k=BD(vNb(a.g,qxc),19).a;f=new Jbc;switch(a.q.g){case 2:case 1:Dbc(a,f);break;case 3:a.q=(kAc(),jAc);Dbc(a,f);i=0;for(h=new olb(a.a);h.aa.j){a.q=dAc;Dbc(a,f)}break;case 4:a.q=(kAc(),jAc);Dbc(a,f);j=0;for(e=new olb(a.b);e.aa.k){a.q=gAc;Dbc(a,f)}break;case 6:m=QD($wnd.Math.ceil(a.f.length*k/100));Dbc(a,new Mbc(m));break;case 5:l=QD($wnd.Math.ceil(a.d*k/100));Dbc(a,new Pbc(l));break;default:Dbc(a,f);}Ebc(a,b);Qdd(c)}\nfunction fFc(a,b,c){var d,e,f,g;this.j=a;this.e=WZb(a);this.o=this.j.e;this.i=!!this.o;this.p=this.i?BD(Ikb(c,Q_b(this.o).p),214):null;e=BD(vNb(a,(wtc(),Ksc)),21);this.g=e.Hc((Orc(),Hrc));this.b=new Rkb;this.d=new rHc(this.e);g=BD(vNb(this.j,jtc),230);this.q=wFc(b,g,this.e);this.k=new BGc(this);f=Ou(OC(GC(qY,1),Uhe,225,0,[this,this.d,this.k,this.q]));if(b==(rGc(),oGc)&&!Ccb(DD(vNb(a,(Nyc(),Awc))))){d=new SEc(this.e);f.c[f.c.length]=d;this.c=new uEc(d,g,BD(this.q,402))}else if(b==oGc&&Ccb(DD(vNb(a,(Nyc(),Awc))))){d=new SEc(this.e);f.c[f.c.length]=d;this.c=new XGc(d,g,BD(this.q,402))}else{this.c=new Oic(b,this)}Ekb(f,this.c);$Ic(f,this.e);this.s=AGc(this.k)}\nfunction xUc(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;l=BD(pr((g=Jsb((new ZRc(b)).a.d,0),new aSc(g))),86);o=l?BD(vNb(l,(mTc(),_Sc)),86):null;e=1;while(!!l&&!!o){i=0;u=0;c=l;d=o;for(h=0;h=a.i){++a.i;Ekb(a.a,meb(1));Ekb(a.b,k)}else{d=a.c[b.p][1];Nkb(a.a,j,meb(BD(Ikb(a.a,j),19).a+1-d));Nkb(a.b,j,Edb(ED(Ikb(a.b,j)))+k-d*a.e)}(a.q==(kAc(),dAc)&&(BD(Ikb(a.a,j),19).a>a.j||BD(Ikb(a.a,j-1),19).a>a.j)||a.q==gAc&&(Edb(ED(Ikb(a.b,j)))>a.k||Edb(ED(Ikb(a.b,j-1)))>a.k))&&(i=false);for(g=new Sr(ur(R_b(b).a.Kc(),new Sq));Qr(g);){f=BD(Rr(g),17);h=f.c.i;if(a.f[h.p]==j){l=Cbc(a,h);e=e+BD(l.a,19).a;i=i&&Ccb(DD(l.b))}}a.f[b.p]=j;e=e+a.c[b.p][0];return new vgd(meb(e),(Bcb(),i?true:false))}\nfunction sPc(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q,r;l=new Lqb;g=new Rkb;qPc(a,c,a.d.fg(),g,l);qPc(a,d,a.d.gg(),g,l);a.b=0.2*(p=rPc(LAb(new YAb(null,new Kub(g,16)),new xPc)),q=rPc(LAb(new YAb(null,new Kub(g,16)),new zPc)),$wnd.Math.min(p,q));f=0;for(h=0;h=2&&(r=WNc(g,true,m),!a.e&&(a.e=new ZOc(a)),VOc(a.e,r,g,a.b),undefined);uPc(g,m);wPc(g);n=-1;for(k=new olb(g);k.ah}\nfunction k6b(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p;c=BD(vNb(a,(Nyc(),Vxc)),98);g=a.f;f=a.d;h=g.a+f.b+f.c;i=0-f.d-a.c.b;k=g.b+f.d+f.a-a.c.b;j=new Rkb;l=new Rkb;for(e=new olb(b);e.a0),BD(k.a.Xb(k.c=--k.b),17));while(f!=d&&k.b>0){a.a[f.p]=true;a.a[d.p]=true;f=(sCb(k.b>0),BD(k.a.Xb(k.c=--k.b),17))}k.b>0&&uib(k)}}}}\nfunction Vmd(b,c,d){var e,f,g,h,i,j,k,l,m;if(b.a!=c.Aj()){throw vbb(new Wdb(tte+c.ne()+ute))}e=o1d((O6d(),M6d),c).$k();if(e){return e.Aj().Nh().Ih(e,d)}h=o1d(M6d,c).al();if(h){if(d==null){return null}i=BD(d,15);if(i.dc()){return ''}m=new Hfb;for(g=i.Kc();g.Ob();){f=g.Pb();Efb(m,h.Aj().Nh().Ih(h,f));m.a+=' '}return lcb(m,m.a.length-1)}l=o1d(M6d,c).bl();if(!l.dc()){for(k=l.Kc();k.Ob();){j=BD(k.Pb(),148);if(j.wj(d)){try{m=j.Aj().Nh().Ih(j,d);if(m!=null){return m}}catch(a){a=ubb(a);if(!JD(a,102))throw vbb(a)}}}throw vbb(new Wdb(\"Invalid value: '\"+d+\"' for datatype :\"+c.ne()))}BD(c,834).Fj();return d==null?null:JD(d,172)?''+BD(d,172).a:rb(d)==$J?CQd(Pmd[0],BD(d,199)):fcb(d)}\nfunction zQc(a){var b,c,d,e,f,g,h,i,j,k;j=new Psb;h=new Psb;for(f=new olb(a);f.a-1){for(e=Jsb(h,0);e.b!=e.d.c;){d=BD(Xsb(e),128);d.v=g}while(h.b!=0){d=BD(Vt(h,0),128);for(c=new olb(d.i);c.a0){c+=i.n.a+i.o.a/2;++l}for(o=new olb(i.j);o.a0&&(c/=l);r=KC(UD,Vje,25,d.a.c.length,15,1);h=0;for(j=new olb(d.a);j.a=h&&e<=i){if(h<=e&&f<=i){d+=2}else if(h<=e){a.b[d]=i+1;g+=2}else if(f<=i){c[k++]=e;c[k++]=h-1;d+=2}else{c[k++]=e;c[k++]=h-1;a.b[d]=i+1;g+=2}}else if(i0?(e-=86400000):(e+=86400000);i=new gB(wbb(Cbb(b.q.getTime()),e))}k=new Vfb;j=a.a.length;for(f=0;f=97&&d<=122||d>=65&&d<=90){for(g=f+1;g=j){throw vbb(new Wdb(\"Missing trailing '\"))}g+10&&c.c==0){!b&&(b=new Rkb);b.c[b.c.length]=c}}if(b){while(b.c.length!=0){c=BD(Kkb(b,0),233);if(!!c.b&&c.b.c.length>0){for(f=(!c.b&&(c.b=new Rkb),new olb(c.b));f.aJkb(a,c,0)){return new vgd(e,c)}}else if(Edb(REc(e.g,e.d[0]).a)>Edb(REc(c.g,c.d[0]).a)){return new vgd(e,c)}}}for(h=(!c.e&&(c.e=new Rkb),c.e).Kc();h.Ob();){g=BD(h.Pb(),233);i=(!g.b&&(g.b=new Rkb),g.b);wCb(0,i.c.length);aCb(i.c,0,c);g.c==i.c.length&&(b.c[b.c.length]=g,true)}}}return null}\nfunction wlb(a,b){var c,d,e,f,g,h,i,j,k;if(a==null){return Xhe}i=b.a.zc(a,b);if(i!=null){return '[...]'}c=new xwb(She,'[',']');for(e=a,f=0,g=e.length;f=14&&k<=16))){if(b.a._b(d)){!c.a?(c.a=new Wfb(c.d)):Qfb(c.a,c.b);Nfb(c.a,'[...]')}else{h=CD(d);j=new Vqb(b);uwb(c,wlb(h,j))}}else JD(d,177)?uwb(c,Xlb(BD(d,177))):JD(d,190)?uwb(c,Qlb(BD(d,190))):JD(d,195)?uwb(c,Rlb(BD(d,195))):JD(d,2012)?uwb(c,Wlb(BD(d,2012))):JD(d,48)?uwb(c,Ulb(BD(d,48))):JD(d,364)?uwb(c,Vlb(BD(d,364))):JD(d,832)?uwb(c,Tlb(BD(d,832))):JD(d,104)&&uwb(c,Slb(BD(d,104)))}else{uwb(c,d==null?Xhe:fcb(d))}}return !c.a?c.c:c.e.length==0?c.a.a:c.a.a+(''+c.e)}\nfunction xQb(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;h=itd(b,false,false);r=ofd(h);d&&(r=w7c(r));t=Edb(ED(hkd(b,(CPb(),vPb))));q=(sCb(r.b!=0),BD(r.a.a.c,8));l=BD(Ut(r,1),8);if(r.b>2){k=new Rkb;Gkb(k,new Jib(r,1,r.b));f=sQb(k,t+a.a);s=new XOb(f);tNb(s,b);c.c[c.c.length]=s}else{d?(s=BD(Ohb(a.b,jtd(b)),266)):(s=BD(Ohb(a.b,ltd(b)),266))}i=jtd(b);d&&(i=ltd(b));g=zQb(q,i);j=t+a.a;if(g.a){j+=$wnd.Math.abs(q.b-l.b);p=new f7c(l.a,(l.b+q.b)/2)}else{j+=$wnd.Math.abs(q.a-l.a);p=new f7c((l.a+q.a)/2,l.b)}d?Rhb(a.d,b,new ZOb(s,g,p,j)):Rhb(a.c,b,new ZOb(s,g,p,j));Rhb(a.b,b,s);o=(!b.n&&(b.n=new cUd(D2,b,1,7)),b.n);for(n=new Fyd(o);n.e!=n.i.gc();){m=BD(Dyd(n),137);e=wQb(a,m,true,0,0);c.c[c.c.length]=e}}\nfunction wPc(a){var b,c,d,e,f,g,h,i,j,k;j=new Rkb;h=new Rkb;for(g=new olb(a);g.a-1){for(f=new olb(h);f.a0){continue}rOc(i,$wnd.Math.min(i.o,e.o-1));qOc(i,i.i-1);i.i==0&&(h.c[h.c.length]=i,true)}}}}\nfunction QQd(a,b,c){var d,e,f,g,h,i,j;j=a.c;!b&&(b=FQd);a.c=b;if((a.Db&4)!=0&&(a.Db&1)==0){i=new nSd(a,1,2,j,a.c);!c?(c=i):c.Ei(i)}if(j!=b){if(JD(a.Cb,284)){if(a.Db>>16==-10){c=BD(a.Cb,284).nk(b,c)}else if(a.Db>>16==-15){!b&&(b=(jGd(),YFd));!j&&(j=(jGd(),YFd));if(a.Cb.nh()){i=new pSd(a.Cb,1,13,j,b,HLd(QSd(BD(a.Cb,59)),a),false);!c?(c=i):c.Ei(i)}}}else if(JD(a.Cb,88)){if(a.Db>>16==-23){JD(b,88)||(b=(jGd(),_Fd));JD(j,88)||(j=(jGd(),_Fd));if(a.Cb.nh()){i=new pSd(a.Cb,1,10,j,b,HLd(VKd(BD(a.Cb,26)),a),false);!c?(c=i):c.Ei(i)}}}else if(JD(a.Cb,444)){h=BD(a.Cb,836);g=(!h.b&&(h.b=new RYd(new NYd)),h.b);for(f=(d=new nib((new eib(g.a)).a),new ZYd(d));f.a.b;){e=BD(lib(f.a).cd(),87);c=QQd(e,MQd(e,h),c)}}}return c}\nfunction O1b(a,b){var c,d,e,f,g,h,i,j,k,l,m;g=Ccb(DD(hkd(a,(Nyc(),fxc))));m=BD(hkd(a,Yxc),21);i=false;j=false;l=new Fyd((!a.c&&(a.c=new cUd(F2,a,9,9)),a.c));while(l.e!=l.i.gc()&&(!i||!j)){f=BD(Dyd(l),118);h=0;for(e=ul(pl(OC(GC(KI,1),Uhe,20,0,[(!f.d&&(f.d=new y5d(B2,f,8,5)),f.d),(!f.e&&(f.e=new y5d(B2,f,7,4)),f.e)])));Qr(e);){d=BD(Rr(e),79);k=g&&Qld(d)&&Ccb(DD(hkd(d,gxc)));c=ELd((!d.b&&(d.b=new y5d(z2,d,4,7)),d.b),f)?a==Xod(atd(BD(qud((!d.c&&(d.c=new y5d(z2,d,5,8)),d.c),0),82))):a==Xod(atd(BD(qud((!d.b&&(d.b=new y5d(z2,d,4,7)),d.b),0),82)));if(k||c){++h;if(h>1){break}}}h>0?(i=true):m.Hc((rcd(),ncd))&&(!f.n&&(f.n=new cUd(D2,f,1,7)),f.n).i>0&&(i=true);h>1&&(j=true)}i&&b.Fc((Orc(),Hrc));j&&b.Fc((Orc(),Irc))}\nfunction zfd(a){var b,c,d,e,f,g,h,i,j,k,l,m;m=BD(hkd(a,(Y9c(),Y8c)),21);if(m.dc()){return null}h=0;g=0;if(m.Hc((tdd(),rdd))){k=BD(hkd(a,t9c),98);d=2;c=2;e=2;f=2;b=!Xod(a)?BD(hkd(a,z8c),103):BD(hkd(Xod(a),z8c),103);for(j=new Fyd((!a.c&&(a.c=new cUd(F2,a,9,9)),a.c));j.e!=j.i.gc();){i=BD(Dyd(j),118);l=BD(hkd(i,A9c),61);if(l==(Ucd(),Scd)){l=lfd(i,b);jkd(i,A9c,l)}if(k==(dcd(),$bd)){switch(l.g){case 1:d=$wnd.Math.max(d,i.i+i.g);break;case 2:c=$wnd.Math.max(c,i.j+i.f);break;case 3:e=$wnd.Math.max(e,i.i+i.g);break;case 4:f=$wnd.Math.max(f,i.j+i.f);}}else{switch(l.g){case 1:d+=i.g+2;break;case 2:c+=i.f+2;break;case 3:e+=i.g+2;break;case 4:f+=i.f+2;}}}h=$wnd.Math.max(d,e);g=$wnd.Math.max(c,f)}return Afd(a,h,g,true,true)}\nfunction lnc(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;s=BD(GAb(VAb(JAb(new YAb(null,new Kub(b.d,16)),new pnc(c)),new rnc(c)),Byb(new fzb,new dzb,new Ezb,OC(GC(xL,1),Kie,132,0,[(Fyb(),Dyb)]))),15);l=Ohe;k=Rie;for(i=new olb(b.b.j);i.a0;if(j){if(j){m=r.p;g?++m:--m;l=BD(Ikb(r.c.a,m),10);d=I4b(l);n=!(s6c(d,w,c[0])||n6c(d,w,c[0]))}}else{n=true}}o=false;v=b.D.i;if(!!v&&!!v.c&&h.e){k=g&&v.p>0||!g&&v.p0&&(b.a+=She,b);yfd(BD(Dyd(h),160),b)}b.a+=gne;i=new Oyd((!d.c&&(d.c=new y5d(z2,d,5,8)),d.c));while(i.e!=i.i.gc()){i.e>0&&(b.a+=She,b);yfd(BD(Dyd(i),160),b)}b.a+=')'}}}\nfunction y2b(a,b,c){var d,e,f,g,h,i,j,k,l,m,n;f=BD(vNb(a,(wtc(),$sc)),79);if(!f){return}d=a.a;e=new g7c(c);P6c(e,C2b(a));if(f_b(a.d.i,a.c.i)){m=a.c;l=l7c(OC(GC(m1,1),nie,8,0,[m.n,m.a]));c7c(l,c)}else{l=A0b(a.c)}Gsb(d,l,d.a,d.a.a);n=A0b(a.d);vNb(a,utc)!=null&&P6c(n,BD(vNb(a,utc),8));Gsb(d,n,d.c.b,d.c);q7c(d,e);g=itd(f,true,true);kmd(g,BD(qud((!f.b&&(f.b=new y5d(z2,f,4,7)),f.b),0),82));lmd(g,BD(qud((!f.c&&(f.c=new y5d(z2,f,5,8)),f.c),0),82));ifd(d,g);for(k=new olb(a.b);k.a=0){i=null;h=new Bib(k.a,j+1);while(h.bg?1:Ny(isNaN(0),isNaN(g)))<0&&(null,My(Jqe),($wnd.Math.abs(g-1)<=Jqe||g==1||isNaN(g)&&isNaN(1)?0:g<1?-1:g>1?1:Ny(isNaN(g),isNaN(1)))<0)&&(null,My(Jqe),($wnd.Math.abs(0-h)<=Jqe||0==h||isNaN(0)&&isNaN(h)?0:0h?1:Ny(isNaN(0),isNaN(h)))<0)&&(null,My(Jqe),($wnd.Math.abs(h-1)<=Jqe||h==1||isNaN(h)&&isNaN(1)?0:h<1?-1:h>1?1:Ny(isNaN(h),isNaN(1)))<0));return f}\nfunction z6d(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;for(l=new usb(new nsb(a));l.b!=l.c.a.d;){k=tsb(l);h=BD(k.d,56);b=BD(k.e,56);g=h.Tg();for(p=0,u=(g.i==null&&TKd(g),g.i).length;p=0&&p=j.c.c.length?(k=JJc((j0b(),h0b),g0b)):(k=JJc((j0b(),g0b),g0b));k*=2;f=c.a.g;c.a.g=$wnd.Math.max(f,f+(k-f));g=c.b.g;c.b.g=$wnd.Math.max(g,g+(k-g));e=b}}}\nfunction VNc(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;v=Hx(a);k=new Rkb;h=a.c.length;l=h-1;m=h+1;while(v.a.c!=0){while(c.b!=0){t=(sCb(c.b!=0),BD(Nsb(c,c.a.a),112));Jwb(v.a,t)!=null;t.g=l--;YNc(t,b,c,d)}while(b.b!=0){u=(sCb(b.b!=0),BD(Nsb(b,b.a.a),112));Jwb(v.a,u)!=null;u.g=m++;YNc(u,b,c,d)}j=Rie;for(r=(g=new Ywb((new cxb((new Gjb(v.a)).a)).b),new Njb(g));sib(r.a.a);){q=(f=Wwb(r.a),BD(f.cd(),112));if(!d&&q.b>0&&q.a<=0){k.c=KC(SI,Uhe,1,0,5,1);k.c[k.c.length]=q;break}p=q.i-q.d;if(p>=j){if(p>j){k.c=KC(SI,Uhe,1,0,5,1);j=p}k.c[k.c.length]=q}}if(k.c.length!=0){i=BD(Ikb(k,Bub(e,k.c.length)),112);Jwb(v.a,i)!=null;i.g=m++;YNc(i,b,c,d);k.c=KC(SI,Uhe,1,0,5,1)}}s=a.c.length+1;for(o=new olb(a);o.a0){m.d+=k.n.d;m.d+=k.d}if(m.a>0){m.a+=k.n.a;m.a+=k.d}if(m.b>0){m.b+=k.n.b;m.b+=k.d}if(m.c>0){m.c+=k.n.c;m.c+=k.d}return m}\nfunction d6b(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o;m=c.d;l=c.c;f=new f7c(c.f.a+c.d.b+c.d.c,c.f.b+c.d.d+c.d.a);g=f.b;for(j=new olb(a.a);j.a0){a.c[b.c.p][b.p].d+=Cub(a.i,24)*lke*0.07000000029802322-0.03500000014901161;a.c[b.c.p][b.p].a=a.c[b.c.p][b.p].d/a.c[b.c.p][b.p].b}}\nfunction m5b(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;for(o=new olb(a);o.ad.d;d.d=$wnd.Math.max(d.d,b);if(h&&c){d.d=$wnd.Math.max(d.d,d.a);d.a=d.d+e}break;case 3:c=b>d.a;d.a=$wnd.Math.max(d.a,b);if(h&&c){d.a=$wnd.Math.max(d.a,d.d);d.d=d.a+e}break;case 2:c=b>d.c;d.c=$wnd.Math.max(d.c,b);if(h&&c){d.c=$wnd.Math.max(d.b,d.c);d.b=d.c+e}break;case 4:c=b>d.b;d.b=$wnd.Math.max(d.b,b);if(h&&c){d.b=$wnd.Math.max(d.b,d.c);d.c=d.b+e}}}}}\nfunction l3b(a){var b,c,d,e,f,g,h,i,j,k,l;for(j=new olb(a);j.a0||k.j==Tcd&&k.e.c.length-k.g.c.length<0)){b=false;break}for(e=new olb(k.g);e.a=j&&v>=q){m+=o.n.b+p.n.b+p.a.b-u;++h}}}}if(c){for(g=new olb(s.e);g.a=j&&v>=q){m+=o.n.b+p.n.b+p.a.b-u;++h}}}}}if(h>0){w+=m/h;++n}}if(n>0){b.a=e*w/n;b.g=n}else{b.a=0;b.g=0}}\nfunction oMc(a,b){var c,d,e,f,g,h,i,j,k,l,m;for(e=new olb(a.a.b);e.aQje||b.o==cMc&&k0&&dld(r,u*w);v>0&&eld(r,v*A)}stb(a.b,new CQb);b=new Rkb;for(h=new nib((new eib(a.c)).a);h.b;){g=lib(h);d=BD(g.cd(),79);c=BD(g.dd(),395).a;e=itd(d,false,false);l=oQb(jtd(d),ofd(e),c);ifd(l,e);t=ktd(d);if(!!t&&Jkb(b,t,0)==-1){b.c[b.c.length]=t;pQb(t,(sCb(l.b!=0),BD(l.a.a.c,8)),c)}}for(q=new nib((new eib(a.d)).a);q.b;){p=lib(q);d=BD(p.cd(),79);c=BD(p.dd(),395).a;e=itd(d,false,false);l=oQb(ltd(d),w7c(ofd(e)),c);l=w7c(l);ifd(l,e);t=mtd(d);if(!!t&&Jkb(b,t,0)==-1){b.c[b.c.length]=t;pQb(t,(sCb(l.b!=0),BD(l.c.b.c,8)),c)}}}\nfunction _Vc(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B;if(c.c.length!=0){o=new Rkb;for(n=new olb(c);n.a1){n=new ZQc(o,t,d);reb(t,new PQc(a,n));g.c[g.c.length]=n;for(l=t.a.ec().Kc();l.Ob();){k=BD(l.Pb(),46);Lkb(f,k.b)}}if(h.a.gc()>1){n=new ZQc(o,h,d);reb(h,new RQc(a,n));g.c[g.c.length]=n;for(l=h.a.ec().Kc();l.Ob();){k=BD(l.Pb(),46);Lkb(f,k.b)}}}}\nfunction $Wc(a){r4c(a,new E3c(L3c(P3c(M3c(O3c(N3c(new R3c,sre),'ELK Radial'),'A radial layout provider which is based on the algorithm of Peter Eades published in \"Drawing free trees.\", published by International Institute for Advanced Study of Social Information Science, Fujitsu Limited in 1991. The radial layouter takes a tree and places the nodes in radial order around the root. The nodes of the same tree level are placed on the same radius.'),new bXc),sre)));p4c(a,sre,uqe,Ksd(UWc));p4c(a,sre,wme,Ksd(XWc));p4c(a,sre,Fme,Ksd(NWc));p4c(a,sre,Tme,Ksd(OWc));p4c(a,sre,Eme,Ksd(PWc));p4c(a,sre,Gme,Ksd(MWc));p4c(a,sre,Dme,Ksd(QWc));p4c(a,sre,Hme,Ksd(TWc));p4c(a,sre,ore,Ksd(KWc));p4c(a,sre,nre,Ksd(LWc));p4c(a,sre,rre,Ksd(RWc));p4c(a,sre,lre,Ksd(SWc));p4c(a,sre,mre,Ksd(VWc));p4c(a,sre,pre,Ksd(WWc));p4c(a,sre,qre,Ksd(YWc))}\nfunction LIb(a){var b;this.r=Cy(new OIb,new SIb);this.b=new Rpb(BD(Qb(F1),290));this.p=new Rpb(BD(Qb(F1),290));this.i=new Rpb(BD(Qb(DN),290));this.e=a;this.o=new g7c(a.rf());this.D=a.Df()||Ccb(DD(a.We((Y9c(),M8c))));this.A=BD(a.We((Y9c(),Y8c)),21);this.B=BD(a.We(b9c),21);this.q=BD(a.We(t9c),98);this.u=BD(a.We(x9c),21);if(!ucd(this.u)){throw vbb(new y2c('Invalid port label placement: '+this.u))}this.v=Ccb(DD(a.We(z9c)));this.j=BD(a.We(W8c),21);if(!Jbd(this.j)){throw vbb(new y2c('Invalid node label placement: '+this.j))}this.n=BD(bgd(a,U8c),116);this.k=Edb(ED(bgd(a,Q9c)));this.d=Edb(ED(bgd(a,P9c)));this.w=Edb(ED(bgd(a,X9c)));this.s=Edb(ED(bgd(a,R9c)));this.t=Edb(ED(bgd(a,S9c)));this.C=BD(bgd(a,V9c),142);this.c=2*this.d;b=!this.B.Hc((Idd(),zdd));this.f=new mIb(0,b,0);this.g=new mIb(1,b,0);lIb(this.f,(gHb(),eHb),this.g)}\nfunction Lgd(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D;t=0;o=0;n=0;m=1;for(s=new Fyd((!a.a&&(a.a=new cUd(E2,a,10,11)),a.a));s.e!=s.i.gc();){q=BD(Dyd(s),33);m+=sr(new Sr(ur(_sd(q).a.Kc(),new Sq)));B=q.g;o=$wnd.Math.max(o,B);l=q.f;n=$wnd.Math.max(n,l);t+=B*l}p=(!a.a&&(a.a=new cUd(E2,a,10,11)),a.a).i;g=t+2*d*d*m*p;f=$wnd.Math.sqrt(g);i=$wnd.Math.max(f*c,o);h=$wnd.Math.max(f/c,n);for(r=new Fyd((!a.a&&(a.a=new cUd(E2,a,10,11)),a.a));r.e!=r.i.gc();){q=BD(Dyd(r),33);C=e.b+(Cub(b,26)*ike+Cub(b,27)*jke)*(i-q.g);D=e.b+(Cub(b,26)*ike+Cub(b,27)*jke)*(h-q.f);dld(q,C);eld(q,D)}A=i+(e.b+e.c);w=h+(e.d+e.a);for(v=new Fyd((!a.a&&(a.a=new cUd(E2,a,10,11)),a.a));v.e!=v.i.gc();){u=BD(Dyd(v),33);for(k=new Sr(ur(_sd(u).a.Kc(),new Sq));Qr(k);){j=BD(Rr(k),79);Pld(j)||Kgd(j,b,A,w)}}A+=e.b+e.c;w+=e.d+e.a;Afd(a,A,w,false,true)}\nfunction Jcb(a){var b,c,d,e,f,g,h,i,j,k,l;if(a==null){throw vbb(new Oeb(Xhe))}j=a;f=a.length;i=false;if(f>0){b=(BCb(0,a.length),a.charCodeAt(0));if(b==45||b==43){a=a.substr(1);--f;i=b==45}}if(f==0){throw vbb(new Oeb(Oje+j+'\"'))}while(a.length>0&&(BCb(0,a.length),a.charCodeAt(0)==48)){a=a.substr(1);--f}if(f>(Neb(),Leb)[10]){throw vbb(new Oeb(Oje+j+'\"'))}for(e=0;e0){l=-parseInt(a.substr(0,d),10);a=a.substr(d);f-=d;c=false}while(f>=g){d=parseInt(a.substr(0,g),10);a=a.substr(g);f-=g;if(c){c=false}else{if(ybb(l,h)<0){throw vbb(new Oeb(Oje+j+'\"'))}l=Ibb(l,k)}l=Qbb(l,d)}if(ybb(l,0)>0){throw vbb(new Oeb(Oje+j+'\"'))}if(!i){l=Jbb(l);if(ybb(l,0)<0){throw vbb(new Oeb(Oje+j+'\"'))}}return l}\nfunction Z6d(a,b){X6d();var c,d,e,f,g,h,i;this.a=new a7d(this);this.b=a;this.c=b;this.f=c2d(q1d((O6d(),M6d),b));if(this.f.dc()){if((h=t1d(M6d,a))==b){this.e=true;this.d=new Rkb;this.f=new oFd;this.f.Fc(Ewe);BD(V1d(p1d(M6d,bKd(a)),''),26)==a&&this.f.Fc(u1d(M6d,bKd(a)));for(e=g1d(M6d,a).Kc();e.Ob();){d=BD(e.Pb(),170);switch($1d(q1d(M6d,d))){case 4:{this.d.Fc(d);break}case 5:{this.f.Gc(c2d(q1d(M6d,d)));break}}}}else{Q6d();if(BD(b,66).Oj()){this.e=true;this.f=null;this.d=new Rkb;for(g=0,i=(a.i==null&&TKd(a),a.i).length;g=0&&g0&&(BD(Mpb(a.b,b),124).a.b=c)}\nfunction b3b(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;Odd(b,'Comment pre-processing',1);c=0;i=new olb(a.a);while(i.a0){j=(BCb(0,c.length),c.charCodeAt(0));if(j!=64){if(j==37){m=c.lastIndexOf('%');k=false;if(m!=0&&(m==n-1||(k=(BCb(m+1,c.length),c.charCodeAt(m+1)==46)))){h=c.substr(1,m-1);u=dfb('%',h)?null:QEd(h);e=0;if(k){try{e=Icb(c.substr(m+2),Rie,Ohe)}catch(a){a=ubb(a);if(JD(a,127)){i=a;throw vbb(new rFd(i))}else throw vbb(a)}}for(r=pRd(b.Wg());r.Ob();){p=MRd(r);if(JD(p,510)){f=BD(p,590);t=f.d;if((u==null?t==null:dfb(u,t))&&e--==0){return f}}}return null}}l=c.lastIndexOf('.');o=l==-1?c:c.substr(0,l);d=0;if(l!=-1){try{d=Icb(c.substr(l+1),Rie,Ohe)}catch(a){a=ubb(a);if(JD(a,127)){o=c}else throw vbb(a)}}o=dfb('%',o)?null:QEd(o);for(q=pRd(b.Wg());q.Ob();){p=MRd(q);if(JD(p,191)){g=BD(p,191);s=g.ne();if((o==null?s==null:dfb(o,s))&&d--==0){return g}}}return null}}return rid(b,c)}\nfunction f6b(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F;w=new Rkb;for(o=new olb(a.b);o.a=b.length)return {done:true};var a=b[d++];return {value:[a,c.get(a)],done:false}}}};if(!xrb()){e.prototype.createObject=function(){return {}};e.prototype.get=function(a){return this.obj[':'+a]};e.prototype.set=function(a,b){this.obj[':'+a]=b};e.prototype[hke]=function(a){delete this.obj[':'+a]};e.prototype.keys=function(){var a=[];for(var b in this.obj){b.charCodeAt(0)==58&&a.push(b.substring(1))}return a}}return e}\nfunction cde(a){ade();var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;if(a==null)return null;l=a.length*8;if(l==0){return ''}h=l%24;n=l/24|0;m=h!=0?n+1:n;f=null;f=KC(TD,$ie,25,m*4,15,1);j=0;k=0;b=0;c=0;d=0;g=0;e=0;for(i=0;i>24;j=(b&3)<<24>>24;o=(b&-128)==0?b>>2<<24>>24:(b>>2^192)<<24>>24;p=(c&-128)==0?c>>4<<24>>24:(c>>4^240)<<24>>24;q=(d&-128)==0?d>>6<<24>>24:(d>>6^252)<<24>>24;f[g++]=_ce[o];f[g++]=_ce[p|j<<4];f[g++]=_ce[k<<2|q];f[g++]=_ce[d&63]}if(h==8){b=a[e];j=(b&3)<<24>>24;o=(b&-128)==0?b>>2<<24>>24:(b>>2^192)<<24>>24;f[g++]=_ce[o];f[g++]=_ce[j<<4];f[g++]=61;f[g++]=61}else if(h==16){b=a[e];c=a[e+1];k=(c&15)<<24>>24;j=(b&3)<<24>>24;o=(b&-128)==0?b>>2<<24>>24:(b>>2^192)<<24>>24;p=(c&-128)==0?c>>4<<24>>24:(c>>4^240)<<24>>24;f[g++]=_ce[o];f[g++]=_ce[p|j<<4];f[g++]=_ce[k<<2];f[g++]=61}return zfb(f,0,f.length)}\nfunction mB(a,b){var c,d,e,f,g,h,i;a.e==0&&a.p>0&&(a.p=-(a.p-1));a.p>Rie&&dB(b,a.p-nje);g=b.q.getDate();ZA(b,1);a.k>=0&&aB(b,a.k);if(a.c>=0){ZA(b,a.c)}else if(a.k>=0){i=new fB(b.q.getFullYear()-nje,b.q.getMonth(),35);d=35-i.q.getDate();ZA(b,$wnd.Math.min(d,g))}else{ZA(b,g)}a.f<0&&(a.f=b.q.getHours());a.b>0&&a.f<12&&(a.f+=12);$A(b,a.f==24&&a.g?0:a.f);a.j>=0&&_A(b,a.j);a.n>=0&&bB(b,a.n);a.i>=0&&cB(b,wbb(Ibb(Abb(Cbb(b.q.getTime()),_ie),_ie),a.i));if(a.a){e=new eB;dB(e,e.q.getFullYear()-nje-80);Gbb(Cbb(b.q.getTime()),Cbb(e.q.getTime()))&&dB(b,e.q.getFullYear()-nje+100)}if(a.d>=0){if(a.c==-1){c=(7+a.d-b.q.getDay())%7;c>3&&(c-=7);h=b.q.getMonth();ZA(b,b.q.getDate()+c);b.q.getMonth()!=h&&ZA(b,b.q.getDate()+(c>0?-7:7))}else{if(b.q.getDay()!=a.d){return false}}}if(a.o>Rie){f=b.q.getTimezoneOffset();cB(b,wbb(Cbb(b.q.getTime()),(a.o-f)*60*_ie))}return true}\nfunction z2b(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;e=vNb(b,(wtc(),$sc));if(!JD(e,239)){return}o=BD(e,33);p=b.e;m=new g7c(b.c);f=b.d;m.a+=f.b;m.b+=f.d;u=BD(hkd(o,(Nyc(),Ixc)),174);if(uqb(u,(Idd(),Add))){n=BD(hkd(o,Kxc),116);w_b(n,f.a);z_b(n,f.d);x_b(n,f.b);y_b(n,f.c)}c=new Rkb;for(k=new olb(b.a);k.a0&&Ekb(a.p,k);Ekb(a.o,k)}b-=d;n=i+b;j+=b*a.e;Nkb(a.a,h,meb(n));Nkb(a.b,h,j);a.j=$wnd.Math.max(a.j,n);a.k=$wnd.Math.max(a.k,j);a.d+=b;b+=p}}\nfunction Ucd(){Ucd=ccb;var a;Scd=new Ycd(ole,0);Acd=new Ycd(xle,1);zcd=new Ycd(yle,2);Rcd=new Ycd(zle,3);Tcd=new Ycd(Ale,4);Fcd=(mmb(),new zob((a=BD(gdb(F1),9),new xqb(a,BD(_Bb(a,a.length),9),0))));Gcd=Up(qqb(Acd,OC(GC(F1,1),bne,61,0,[])));Bcd=Up(qqb(zcd,OC(GC(F1,1),bne,61,0,[])));Ocd=Up(qqb(Rcd,OC(GC(F1,1),bne,61,0,[])));Qcd=Up(qqb(Tcd,OC(GC(F1,1),bne,61,0,[])));Lcd=Up(qqb(Acd,OC(GC(F1,1),bne,61,0,[Rcd])));Ecd=Up(qqb(zcd,OC(GC(F1,1),bne,61,0,[Tcd])));Ncd=Up(qqb(Acd,OC(GC(F1,1),bne,61,0,[Tcd])));Hcd=Up(qqb(Acd,OC(GC(F1,1),bne,61,0,[zcd])));Pcd=Up(qqb(Rcd,OC(GC(F1,1),bne,61,0,[Tcd])));Ccd=Up(qqb(zcd,OC(GC(F1,1),bne,61,0,[Rcd])));Kcd=Up(qqb(Acd,OC(GC(F1,1),bne,61,0,[zcd,Tcd])));Dcd=Up(qqb(zcd,OC(GC(F1,1),bne,61,0,[Rcd,Tcd])));Mcd=Up(qqb(Acd,OC(GC(F1,1),bne,61,0,[Rcd,Tcd])));Icd=Up(qqb(Acd,OC(GC(F1,1),bne,61,0,[zcd,Rcd])));Jcd=Up(qqb(Acd,OC(GC(F1,1),bne,61,0,[zcd,Rcd,Tcd])))}\nfunction fSc(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;if(b.b!=0){n=new Psb;h=null;o=null;d=QD($wnd.Math.floor($wnd.Math.log(b.b)*$wnd.Math.LOG10E)+1);i=0;for(t=Jsb(b,0);t.b!=t.d.c;){r=BD(Xsb(t),86);if(PD(o)!==PD(vNb(r,(mTc(),$Sc)))){o=GD(vNb(r,$Sc));i=0}o!=null?(h=o+iSc(i++,d)):(h=iSc(i++,d));yNb(r,$Sc,h);for(q=(e=Jsb((new ZRc(r)).a.d,0),new aSc(e));Wsb(q.a);){p=BD(Xsb(q.a),188).c;Gsb(n,p,n.c.b,n.c);yNb(p,$Sc,h)}}m=new Lqb;for(g=0;g=i){sCb(r.b>0);r.a.Xb(r.c=--r.b);break}else if(p.a>j){if(!e){Ekb(p.b,l);p.c=$wnd.Math.min(p.c,j);p.a=$wnd.Math.max(p.a,i);e=p}else{Gkb(e.b,p.b);e.a=$wnd.Math.max(e.a,p.a);uib(r)}}}if(!e){e=new TCc;e.c=j;e.a=i;Aib(r,e);Ekb(e.b,l)}}h=b.b;k=0;for(q=new olb(d);q.ah?1:0}if(a.b){a.b._b(f)&&(e=BD(a.b.xc(f),19).a);a.b._b(i)&&(h=BD(a.b.xc(i),19).a)}return eh?1:0}return b.e.c.length!=0&&c.g.c.length!=0?1:-1}\nfunction acc(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A;Odd(b,Ine,1);p=new Rkb;w=new Rkb;for(j=new olb(a.b);j.a0&&(t-=n);h_b(g,t);k=0;for(m=new olb(g.a);m.a0);h.a.Xb(h.c=--h.b)}i=0.4*d*k;!f&&h.bb.d.c){n=a.c[b.a.d];q=a.c[l.a.d];if(n==q){continue}AFb(DFb(CFb(EFb(BFb(new FFb,1),100),n),q))}}}}}}}\nfunction QEd(a){IEd();var b,c,d,e,f,g,h,i;if(a==null)return null;e=hfb(a,wfb(37));if(e<0){return a}else{i=new Wfb(a.substr(0,e));b=KC(SD,wte,25,4,15,1);h=0;d=0;for(g=a.length;ee+2&&_Ed((BCb(e+1,a.length),a.charCodeAt(e+1)),xEd,yEd)&&_Ed((BCb(e+2,a.length),a.charCodeAt(e+2)),xEd,yEd)){c=dFd((BCb(e+1,a.length),a.charCodeAt(e+1)),(BCb(e+2,a.length),a.charCodeAt(e+2)));e+=2;if(d>0){(c&192)==128?(b[h++]=c<<24>>24):(d=0)}else if(c>=128){if((c&224)==192){b[h++]=c<<24>>24;d=2}else if((c&240)==224){b[h++]=c<<24>>24;d=3}else if((c&248)==240){b[h++]=c<<24>>24;d=4}}if(d>0){if(h==d){switch(h){case 2:{Kfb(i,((b[0]&31)<<6|b[1]&63)&aje);break}case 3:{Kfb(i,((b[0]&15)<<12|(b[1]&63)<<6|b[2]&63)&aje);break}}h=0;d=0}}else{for(f=0;f0){if(g+d>a.length){return false}h=rA(a.substr(0,g+d),b)}else{h=rA(a,b)}}switch(f){case 71:h=oA(a,g,OC(GC(ZI,1),nie,2,6,[pje,qje]),b);e.e=h;return true;case 77:return zA(a,b,e,h,g);case 76:return BA(a,b,e,h,g);case 69:return xA(a,b,g,e);case 99:return AA(a,b,g,e);case 97:h=oA(a,g,OC(GC(ZI,1),nie,2,6,['AM','PM']),b);e.b=h;return true;case 121:return DA(a,b,g,h,c,e);case 100:if(h<=0){return false}e.c=h;return true;case 83:if(h<0){return false}return yA(h,g,b[0],e);case 104:h==12&&(h=0);case 75:case 72:if(h<0){return false}e.f=h;e.g=false;return true;case 107:if(h<0){return false}e.f=h;e.g=true;return true;case 109:if(h<0){return false}e.j=h;return true;case 115:if(h<0){return false}e.n=h;return true;case 90:if(gw&&(o.c=w-o.b);Ekb(g.d,new BLb(o,bLb(g,o)));s=b==Acd?$wnd.Math.max(s,p.b+j.b.rf().b):$wnd.Math.min(s,p.b)}s+=b==Acd?a.t:-a.t;t=cLb((g.e=s,g));t>0&&(BD(Mpb(a.b,b),124).a.b=t);for(k=m.Kc();k.Ob();){j=BD(k.Pb(),111);if(!j.c||j.c.d.c.length<=0){continue}o=j.c.i;o.c-=j.e.a;o.d-=j.e.b}}\nfunction SPb(a){var b,c,d,e,f,g,h,i,j,k,l,m,n;b=new Lqb;for(i=new Fyd(a);i.e!=i.i.gc();){h=BD(Dyd(i),33);c=new Tqb;Rhb(OPb,h,c);n=new aQb;e=BD(GAb(new YAb(null,new Lub(new Sr(ur($sd(h).a.Kc(),new Sq)))),Wyb(n,Byb(new fzb,new dzb,new Ezb,OC(GC(xL,1),Kie,132,0,[(Fyb(),Dyb)])))),83);RPb(c,BD(e.xc((Bcb(),true)),14),new cQb);d=BD(GAb(JAb(BD(e.xc(false),15).Lc(),new eQb),Byb(new fzb,new dzb,new Ezb,OC(GC(xL,1),Kie,132,0,[Dyb]))),15);for(g=d.Kc();g.Ob();){f=BD(g.Pb(),79);m=ktd(f);if(m){j=BD(Wd(irb(b.f,m)),21);if(!j){j=UPb(m);jrb(b.f,m,j)}ye(c,j)}}e=BD(GAb(new YAb(null,new Lub(new Sr(ur(_sd(h).a.Kc(),new Sq)))),Wyb(n,Byb(new fzb,new dzb,new Ezb,OC(GC(xL,1),Kie,132,0,[Dyb])))),83);RPb(c,BD(e.xc(true),14),new gQb);d=BD(GAb(JAb(BD(e.xc(false),15).Lc(),new iQb),Byb(new fzb,new dzb,new Ezb,OC(GC(xL,1),Kie,132,0,[Dyb]))),15);for(l=d.Kc();l.Ob();){k=BD(l.Pb(),79);m=mtd(k);if(m){j=BD(Wd(irb(b.f,m)),21);if(!j){j=UPb(m);jrb(b.f,m,j)}ye(c,j)}}}}\nfunction rhb(a,b){phb();var c,d,e,f,g,h,i,j,k,l,m,n,o,p;i=ybb(a,0)<0;i&&(a=Jbb(a));if(ybb(a,0)==0){switch(b){case 0:return '0';case 1:return $je;case 2:return '0.00';case 3:return '0.000';case 4:return '0.0000';case 5:return '0.00000';case 6:return '0.000000';default:n=new Ufb;b<0?(n.a+='0E+',n):(n.a+='0E',n);n.a+=b==Rie?'2147483648':''+-b;return n.a;}}k=18;l=KC(TD,$ie,25,k+1,15,1);c=k;p=a;do{j=p;p=Abb(p,10);l[--c]=Tbb(wbb(48,Qbb(j,Ibb(p,10))))&aje}while(ybb(p,0)!=0);e=Qbb(Qbb(Qbb(k,c),b),1);if(b==0){i&&(l[--c]=45);return zfb(l,c,k-c)}if(b>0&&ybb(e,-6)>=0){if(ybb(e,0)>=0){f=c+Tbb(e);for(h=k-1;h>=f;h--){l[h+1]=l[h]}l[++f]=46;i&&(l[--c]=45);return zfb(l,c,k-c+1)}for(g=2;Gbb(g,wbb(Jbb(e),1));g++){l[--c]=48}l[--c]=46;l[--c]=48;i&&(l[--c]=45);return zfb(l,c,k-c)}o=c+1;d=k;m=new Vfb;i&&(m.a+='-',m);if(d-o>=1){Kfb(m,l[c]);m.a+='.';m.a+=zfb(l,c+1,k-c-1)}else{m.a+=zfb(l,c,k-c)}m.a+='E';ybb(e,0)>0&&(m.a+='+',m);m.a+=''+Ubb(e);return m.a}\nfunction iQc(a,b,c){var d,e,f,g,h,i,j,k,l,m,n;a.e.a.$b();a.f.a.$b();a.c.c=KC(SI,Uhe,1,0,5,1);a.i.c=KC(SI,Uhe,1,0,5,1);a.g.a.$b();if(b){for(g=new olb(b.a);g.a=1){if(v-j>0&&o>=0){dld(l,l.i+u);eld(l,l.j+i*j)}else if(v-j<0&&n>=0){dld(l,l.i+u*v);eld(l,l.j+i)}}}}jkd(a,(Y9c(),Y8c),(tdd(),f=BD(gdb(I1),9),new xqb(f,BD(_Bb(f,f.length),9),0)));return new f7c(w,k)}\nfunction Yfd(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o;n=Xod(atd(BD(qud((!a.b&&(a.b=new y5d(z2,a,4,7)),a.b),0),82)));o=Xod(atd(BD(qud((!a.c&&(a.c=new y5d(z2,a,5,8)),a.c),0),82)));l=n==o;h=new d7c;b=BD(hkd(a,(Zad(),Sad)),74);if(!!b&&b.b>=2){if((!a.a&&(a.a=new cUd(A2,a,6,6)),a.a).i==0){c=(Fhd(),e=new rmd,e);wtd((!a.a&&(a.a=new cUd(A2,a,6,6)),a.a),c)}else if((!a.a&&(a.a=new cUd(A2,a,6,6)),a.a).i>1){m=new Oyd((!a.a&&(a.a=new cUd(A2,a,6,6)),a.a));while(m.e!=m.i.gc()){Eyd(m)}}ifd(b,BD(qud((!a.a&&(a.a=new cUd(A2,a,6,6)),a.a),0),202))}if(l){for(d=new Fyd((!a.a&&(a.a=new cUd(A2,a,6,6)),a.a));d.e!=d.i.gc();){c=BD(Dyd(d),202);for(j=new Fyd((!c.a&&(c.a=new xMd(y2,c,5)),c.a));j.e!=j.i.gc();){i=BD(Dyd(j),469);h.a=$wnd.Math.max(h.a,i.a);h.b=$wnd.Math.max(h.b,i.b)}}}for(g=new Fyd((!a.n&&(a.n=new cUd(D2,a,1,7)),a.n));g.e!=g.i.gc();){f=BD(Dyd(g),137);k=BD(hkd(f,Yad),8);!!k&&bld(f,k.a,k.b);if(l){h.a=$wnd.Math.max(h.a,f.i+f.g);h.b=$wnd.Math.max(h.b,f.j+f.f)}}return h}\nfunction yMc(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B;t=b.c.length;e=new ULc(a.a,c,null,null);B=KC(UD,Vje,25,t,15,1);p=KC(UD,Vje,25,t,15,1);o=KC(UD,Vje,25,t,15,1);q=0;for(h=0;hB[i]&&(q=i);for(l=new olb(a.a.b);l.an){if(f){Fsb(w,m);Fsb(B,meb(j.b-1))}H=c.b;I+=m+b;m=0;k=$wnd.Math.max(k,c.b+c.c+G)}dld(h,H);eld(h,I);k=$wnd.Math.max(k,H+G+c.c);m=$wnd.Math.max(m,l);H+=G+b}k=$wnd.Math.max(k,d);F=I+m+c.a;if(Fqme;C=$wnd.Math.abs(m.b-o.b)>qme;(!c&&B&&C||c&&(B||C))&&Dsb(q.a,u)}ye(q.a,d);d.b==0?(m=u):(m=(sCb(d.b!=0),BD(d.c.b.c,8)));bZb(n,l,p);if(AZb(e)==A){if(Q_b(A.i)!=e.a){p=new d7c;Y$b(p,Q_b(A.i),s)}yNb(q,utc,p)}cZb(n,q,s);k.a.zc(n,k)}QZb(q,v);RZb(q,A)}for(j=k.a.ec().Kc();j.Ob();){i=BD(j.Pb(),17);QZb(i,null);RZb(i,null)}Qdd(b)}\nfunction KQb(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;if(a.gc()==1){return BD(a.Xb(0),231)}else if(a.gc()<=0){return new kRb}for(e=a.Kc();e.Ob();){c=BD(e.Pb(),231);o=0;k=Ohe;l=Ohe;i=Rie;j=Rie;for(n=new olb(c.e);n.ah){t=0;u+=g+r;g=0}JQb(p,c,t,u);b=$wnd.Math.max(b,t+q.a);g=$wnd.Math.max(g,q.b);t+=q.a+r}return p}\nfunction Ioc(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o;k=new s7c;switch(a.a.g){case 3:m=BD(vNb(b.e,(wtc(),rtc)),15);n=BD(vNb(b.j,rtc),15);o=BD(vNb(b.f,rtc),15);c=BD(vNb(b.e,ptc),15);d=BD(vNb(b.j,ptc),15);e=BD(vNb(b.f,ptc),15);g=new Rkb;Gkb(g,m);n.Jc(new Loc);Gkb(g,JD(n,152)?km(BD(n,152)):JD(n,131)?BD(n,131).a:JD(n,54)?new ov(n):new dv(n));Gkb(g,o);f=new Rkb;Gkb(f,c);Gkb(f,JD(d,152)?km(BD(d,152)):JD(d,131)?BD(d,131).a:JD(d,54)?new ov(d):new dv(d));Gkb(f,e);yNb(b.f,rtc,g);yNb(b.f,ptc,f);yNb(b.f,stc,b.f);yNb(b.e,rtc,null);yNb(b.e,ptc,null);yNb(b.j,rtc,null);yNb(b.j,ptc,null);break;case 1:ye(k,b.e.a);Dsb(k,b.i.n);ye(k,Su(b.j.a));Dsb(k,b.a.n);ye(k,b.f.a);break;default:ye(k,b.e.a);ye(k,Su(b.j.a));ye(k,b.f.a);}Osb(b.f.a);ye(b.f.a,k);QZb(b.f,b.e.c);h=BD(vNb(b.e,(Nyc(),jxc)),74);j=BD(vNb(b.j,jxc),74);i=BD(vNb(b.f,jxc),74);if(!!h||!!j||!!i){l=new s7c;Goc(l,i);Goc(l,j);Goc(l,h);yNb(b.f,jxc,l)}QZb(b.j,null);RZb(b.j,null);QZb(b.e,null);RZb(b.e,null);$_b(b.a,null);$_b(b.i,null);!!b.g&&Ioc(a,b.g)}\nfunction bde(a){ade();var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;if(a==null)return null;f=rfb(a);o=ede(f);if(o%4!=0){return null}p=o/4|0;if(p==0)return KC(SD,wte,25,0,15,1);l=null;b=0;c=0;d=0;e=0;g=0;h=0;i=0;j=0;n=0;m=0;k=0;l=KC(SD,wte,25,p*3,15,1);for(;n>4)<<24>>24;l[m++]=((c&15)<<4|d>>2&15)<<24>>24;l[m++]=(d<<6|e)<<24>>24}if(!dde(g=f[k++])||!dde(h=f[k++])){return null}b=$ce[g];c=$ce[h];i=f[k++];j=f[k++];if($ce[i]==-1||$ce[j]==-1){if(i==61&&j==61){if((c&15)!=0)return null;q=KC(SD,wte,25,n*3+1,15,1);$fb(l,0,q,0,n*3);q[m]=(b<<2|c>>4)<<24>>24;return q}else if(i!=61&&j==61){d=$ce[i];if((d&3)!=0)return null;q=KC(SD,wte,25,n*3+2,15,1);$fb(l,0,q,0,n*3);q[m++]=(b<<2|c>>4)<<24>>24;q[m]=((c&15)<<4|d>>2&15)<<24>>24;return q}else{return null}}else{d=$ce[i];e=$ce[j];l[m++]=(b<<2|c>>4)<<24>>24;l[m++]=((c&15)<<4|d>>2&15)<<24>>24;l[m++]=(d<<6|e)<<24>>24}return l}\nfunction Sbc(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;Odd(b,Ine,1);o=BD(vNb(a,(Nyc(),Swc)),218);for(e=new olb(a.b);e.a=2){p=true;m=new olb(f.j);c=BD(mlb(m),11);n=null;while(m.a0){e=BD(Ikb(q.c.a,w-1),10);g=a.i[e.p];B=$wnd.Math.ceil(jBc(a.n,e,q));f=v.a.e-q.d.d-(g.a.e+e.o.b+e.d.a)-B}j=Pje;if(w0&&A.a.e.e-A.a.a-(A.b.e.e-A.b.a)<0;o=t.a.e.e-t.a.a-(t.b.e.e-t.b.a)<0&&A.a.e.e-A.a.a-(A.b.e.e-A.b.a)>0;n=t.a.e.e+t.b.aA.b.e.e+A.a.a;u=0;!p&&!o&&(m?f+l>0?(u=l):j-d>0&&(u=d):n&&(f+h>0?(u=h):j-s>0&&(u=s)));v.a.e+=u;v.b&&(v.d.e+=u);return false}\nfunction XGb(a,b,c){var d,e,f,g,h,i,j,k,l,m;d=new J6c(b.qf().a,b.qf().b,b.rf().a,b.rf().b);e=new I6c;if(a.c){for(g=new olb(b.wf());g.aj&&(d.a+=yfb(KC(TD,$ie,25,-j,15,1)));d.a+='Is';if(hfb(i,wfb(32))>=0){for(e=0;e=d.o.b/2}else{s=!l}if(s){r=BD(vNb(d,(wtc(),vtc)),15);if(!r){f=new Rkb;yNb(d,vtc,f)}else if(m){f=r}else{e=BD(vNb(d,tsc),15);if(!e){f=new Rkb;yNb(d,tsc,f)}else{r.gc()<=e.gc()?(f=r):(f=e)}}}else{e=BD(vNb(d,(wtc(),tsc)),15);if(!e){f=new Rkb;yNb(d,tsc,f)}else if(l){f=e}else{r=BD(vNb(d,vtc),15);if(!r){f=new Rkb;yNb(d,vtc,f)}else{e.gc()<=r.gc()?(f=e):(f=r)}}}f.Fc(a);yNb(a,(wtc(),vsc),c);if(b.d==c){RZb(b,null);c.e.c.length+c.g.c.length==0&&F0b(c,null);d3b(c)}else{QZb(b,null);c.e.c.length+c.g.c.length==0&&F0b(c,null)}Osb(b.a)}\nfunction aoc(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G,H;s=new Bib(a.b,0);k=b.Kc();o=0;j=BD(k.Pb(),19).a;v=0;c=new Tqb;A=new zsb;while(s.b=a.a){d=E6b(a,s);k=$wnd.Math.max(k,d.b);u=$wnd.Math.max(u,d.d);Ekb(h,new vgd(s,d))}}B=new Rkb;for(j=0;j0),q.a.Xb(q.c=--q.b),C=new H1b(a.b),Aib(q,C),sCb(q.b0){j=0;!!q&&(j+=h);j+=(C-1)*g;!!t&&(j+=h);B&&!!t&&(j=$wnd.Math.max(j,jQc(t,g,s,A)));if(j0){m=k<100?null:new Ixd(k);j=new Aud(b);o=j.g;r=KC(WD,oje,25,k,15,1);d=0;u=new zud(k);for(e=0;e=0;){if(n!=null?pb(n,o[i]):PD(n)===PD(o[i])){if(r.length<=d){q=r;r=KC(WD,oje,25,2*r.length,15,1);$fb(q,0,r,0,d)}r[d++]=e;wtd(u,o[i]);break v}}n=n;if(PD(n)===PD(h)){break}}}j=u;o=u.g;k=d;if(d>r.length){q=r;r=KC(WD,oje,25,d,15,1);$fb(q,0,r,0,d)}if(d>0){t=true;for(f=0;f=0;){tud(a,r[g])}if(d!=k){for(e=k;--e>=d;){tud(j,e)}q=r;r=KC(WD,oje,25,d,15,1);$fb(q,0,r,0,d)}b=j}}}else{b=Ctd(a,b);for(e=a.i;--e>=0;){if(b.Hc(a.g[e])){tud(a,e);t=true}}}if(t){if(r!=null){c=b.gc();l=c==1?FLd(a,4,b.Kc().Pb(),null,r[0],p):FLd(a,6,b,r,r[0],p);m=c<100?null:new Ixd(c);for(e=b.Kc();e.Ob();){n=e.Pb();m=Q2d(a,BD(n,72),m)}if(!m){Uhd(a.e,l)}else{m.Ei(l);m.Fi()}}else{m=Vxd(b.gc());for(e=b.Kc();e.Ob();){n=e.Pb();m=Q2d(a,BD(n,72),m)}!!m&&m.Fi()}return true}else{return false}}\nfunction fYb(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;c=new mYb(b);c.a||$Xb(b);j=ZXb(b);i=new Hp;q=new AYb;for(p=new olb(b.a);p.a0||c.o==dMc&&e0){l=BD(Ikb(m.c.a,g-1),10);B=jBc(a.b,m,l);q=m.n.b-m.d.d-(l.n.b+l.o.b+l.d.a+B)}else{q=m.n.b-m.d.d}j=$wnd.Math.min(q,j);if(gg?Anc(a,b,c):Anc(a,c,b);return eg?1:0}}d=BD(vNb(b,(wtc(),Zsc)),19).a;f=BD(vNb(c,Zsc),19).a;d>f?Anc(a,b,c):Anc(a,c,b);return df?1:0}\nfunction u2c(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;if(Ccb(DD(hkd(b,(Y9c(),d9c))))){return mmb(),mmb(),jmb}j=(!b.a&&(b.a=new cUd(E2,b,10,11)),b.a).i!=0;l=s2c(b);k=!l.dc();if(j||k){e=BD(hkd(b,F9c),149);if(!e){throw vbb(new y2c('Resolved algorithm is not set; apply a LayoutAlgorithmResolver before computing layout.'))}s=D3c(e,(Csd(),ysd));q2c(b);if(!j&&k&&!s){return mmb(),mmb(),jmb}i=new Rkb;if(PD(hkd(b,J8c))===PD((hbd(),ebd))&&(D3c(e,vsd)||D3c(e,usd))){n=p2c(a,b);o=new Psb;ye(o,(!b.a&&(b.a=new cUd(E2,b,10,11)),b.a));while(o.b!=0){m=BD(o.b==0?null:(sCb(o.b!=0),Nsb(o,o.a.a)),33);q2c(m);r=PD(hkd(m,J8c))===PD(gbd);if(r||ikd(m,o8c)&&!C3c(e,hkd(m,F9c))){h=u2c(a,m,c,d);Gkb(i,h);jkd(m,J8c,gbd);hfd(m)}else{ye(o,(!m.a&&(m.a=new cUd(E2,m,10,11)),m.a))}}}else{n=(!b.a&&(b.a=new cUd(E2,b,10,11)),b.a).i;for(g=new Fyd((!b.a&&(b.a=new cUd(E2,b,10,11)),b.a));g.e!=g.i.gc();){f=BD(Dyd(g),33);h=u2c(a,f,c,d);Gkb(i,h);hfd(f)}}for(q=new olb(i);q.a=0?(n=Zcd(h)):(n=Wcd(Zcd(h)));a.Ye($xc,n)}j=new d7c;m=false;if(a.Xe(Txc)){a7c(j,BD(a.We(Txc),8));m=true}else{_6c(j,g.a/2,g.b/2)}switch(n.g){case 4:yNb(k,mxc,(Ctc(),ytc));yNb(k,Bsc,(Gqc(),Fqc));k.o.b=g.b;p<0&&(k.o.a=-p);G0b(l,(Ucd(),zcd));m||(j.a=g.a);j.a-=g.a;break;case 2:yNb(k,mxc,(Ctc(),Atc));yNb(k,Bsc,(Gqc(),Dqc));k.o.b=g.b;p<0&&(k.o.a=-p);G0b(l,(Ucd(),Tcd));m||(j.a=0);break;case 1:yNb(k,Osc,(esc(),dsc));k.o.a=g.a;p<0&&(k.o.b=-p);G0b(l,(Ucd(),Rcd));m||(j.b=g.b);j.b-=g.b;break;case 3:yNb(k,Osc,(esc(),bsc));k.o.a=g.a;p<0&&(k.o.b=-p);G0b(l,(Ucd(),Acd));m||(j.b=0);}a7c(l.n,j);yNb(k,Txc,j);if(b==Zbd||b==_bd||b==$bd){o=0;if(b==Zbd&&a.Xe(Wxc)){switch(n.g){case 1:case 2:o=BD(a.We(Wxc),19).a;break;case 3:case 4:o=-BD(a.We(Wxc),19).a;}}else{switch(n.g){case 4:case 2:o=f.b;b==_bd&&(o/=e.b);break;case 1:case 3:o=f.a;b==_bd&&(o/=e.a);}}yNb(k,htc,o)}yNb(k,Hsc,n);return k}\nfunction AGc(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C;c=Edb(ED(vNb(a.a.j,(Nyc(),Ewc))));if(c<-1||!a.a.i||ecd(BD(vNb(a.a.o,Vxc),98))||V_b(a.a.o,(Ucd(),zcd)).gc()<2&&V_b(a.a.o,Tcd).gc()<2){return true}if(a.a.c.Rf()){return false}v=0;u=0;t=new Rkb;for(i=a.a.e,j=0,k=i.length;j=c}\nfunction ovd(){mvd();function h(f){var g=this;this.dispatch=function(a){var b=a.data;switch(b.cmd){case 'algorithms':var c=pvd((mmb(),new lnb(new $ib(lvd.b))));f.postMessage({id:b.id,data:c});break;case 'categories':var d=pvd((mmb(),new lnb(new $ib(lvd.c))));f.postMessage({id:b.id,data:d});break;case 'options':var e=pvd((mmb(),new lnb(new $ib(lvd.d))));f.postMessage({id:b.id,data:e});break;case 'register':svd(b.algorithms);f.postMessage({id:b.id});break;case 'layout':qvd(b.graph,b.layoutOptions||{},b.options||{});f.postMessage({id:b.id,data:b.graph});break;}};this.saveDispatch=function(b){try{g.dispatch(b)}catch(a){f.postMessage({id:b.data.id,error:a})}}}\nfunction j(b){var c=this;this.dispatcher=new h({postMessage:function(a){c.onmessage({data:a})}});this.postMessage=function(a){setTimeout(function(){c.dispatcher.saveDispatch({data:a})},0)}}\nif(typeof document===uke&&typeof self!==uke){var i=new h(self);self.onmessage=i.saveDispatch}else if(typeof module!==uke&&module.exports){Object.defineProperty(exports,'__esModule',{value:true});module.exports={'default':j,Worker:j}}}\nfunction aae(a){if(a.N)return;a.N=true;a.b=Lnd(a,0);Knd(a.b,0);Knd(a.b,1);Knd(a.b,2);a.bb=Lnd(a,1);Knd(a.bb,0);Knd(a.bb,1);a.fb=Lnd(a,2);Knd(a.fb,3);Knd(a.fb,4);Qnd(a.fb,5);a.qb=Lnd(a,3);Knd(a.qb,0);Qnd(a.qb,1);Qnd(a.qb,2);Knd(a.qb,3);Knd(a.qb,4);Qnd(a.qb,5);Knd(a.qb,6);a.a=Mnd(a,4);a.c=Mnd(a,5);a.d=Mnd(a,6);a.e=Mnd(a,7);a.f=Mnd(a,8);a.g=Mnd(a,9);a.i=Mnd(a,10);a.j=Mnd(a,11);a.k=Mnd(a,12);a.n=Mnd(a,13);a.o=Mnd(a,14);a.p=Mnd(a,15);a.q=Mnd(a,16);a.s=Mnd(a,17);a.r=Mnd(a,18);a.t=Mnd(a,19);a.u=Mnd(a,20);a.v=Mnd(a,21);a.w=Mnd(a,22);a.B=Mnd(a,23);a.A=Mnd(a,24);a.C=Mnd(a,25);a.D=Mnd(a,26);a.F=Mnd(a,27);a.G=Mnd(a,28);a.H=Mnd(a,29);a.J=Mnd(a,30);a.I=Mnd(a,31);a.K=Mnd(a,32);a.M=Mnd(a,33);a.L=Mnd(a,34);a.P=Mnd(a,35);a.Q=Mnd(a,36);a.R=Mnd(a,37);a.S=Mnd(a,38);a.T=Mnd(a,39);a.U=Mnd(a,40);a.V=Mnd(a,41);a.X=Mnd(a,42);a.W=Mnd(a,43);a.Y=Mnd(a,44);a.Z=Mnd(a,45);a.$=Mnd(a,46);a._=Mnd(a,47);a.ab=Mnd(a,48);a.cb=Mnd(a,49);a.db=Mnd(a,50);a.eb=Mnd(a,51);a.gb=Mnd(a,52);a.hb=Mnd(a,53);a.ib=Mnd(a,54);a.jb=Mnd(a,55);a.kb=Mnd(a,56);a.lb=Mnd(a,57);a.mb=Mnd(a,58);a.nb=Mnd(a,59);a.ob=Mnd(a,60);a.pb=Mnd(a,61)}\nfunction f5b(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;s=0;if(b.f.a==0){for(q=new olb(a);q.aj&&(tCb(j,b.c.length),BD(b.c[j],200)).a.c.length==0){Lkb(b,(tCb(j,b.c.length),b.c[j]))}}if(!i){--f;continue}if(uZc(b,k,e,i,m,c,j,d)){l=true;continue}if(m){if(vZc(b,k,e,i,c,j,d)){l=true;continue}else if(wZc(k,e)){e.c=true;l=true;continue}}else if(wZc(k,e)){e.c=true;l=true;continue}if(l){continue}}if(wZc(k,e)){e.c=true;l=true;!!i&&(i.k=false);continue}else{a$c(e.q)}}return l}\nfunction fed(a,b,c,d,e,f,g){var h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G,H,I;p=0;D=0;for(j=new olb(a.b);j.ap){if(f){Fsb(w,n);Fsb(B,meb(k.b-1));Ekb(a.d,o);h.c=KC(SI,Uhe,1,0,5,1)}H=c.b;I+=n+b;n=0;l=$wnd.Math.max(l,c.b+c.c+G)}h.c[h.c.length]=i;ued(i,H,I);l=$wnd.Math.max(l,H+G+c.c);n=$wnd.Math.max(n,m);H+=G+b;o=i}Gkb(a.a,h);Ekb(a.d,BD(Ikb(h,h.c.length-1),157));l=$wnd.Math.max(l,d);F=I+n+c.a;if(F1&&(g=$wnd.Math.min(g,$wnd.Math.abs(BD(Ut(h.a,1),8).b-k.b)))}}}}}else{for(p=new olb(b.j);p.ae){f=m.a-e;g=Ohe;d.c=KC(SI,Uhe,1,0,5,1);e=m.a}if(m.a>=e){d.c[d.c.length]=h;h.a.b>1&&(g=$wnd.Math.min(g,$wnd.Math.abs(BD(Ut(h.a,h.a.b-2),8).b-m.b)))}}}}}if(d.c.length!=0&&f>b.o.a/2&&g>b.o.b/2){n=new H0b;F0b(n,b);G0b(n,(Ucd(),Acd));n.n.a=b.o.a/2;r=new H0b;F0b(r,b);G0b(r,Rcd);r.n.a=b.o.a/2;r.n.b=b.o.b;for(i=new olb(d);i.a=j.b?QZb(h,r):QZb(h,n)}else{j=BD(Msb(h.a),8);q=h.a.b==0?A0b(h.c):BD(Isb(h.a),8);q.b>=j.b?RZb(h,r):RZb(h,n)}l=BD(vNb(h,(Nyc(),jxc)),74);!!l&&ze(l,j,true)}b.n.a=e-b.o.a/2}}\nfunction erd(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G,H,I,J,K;D=null;G=b;F=Rqd(a,dtd(c),G);Lkd(F,_pd(G,Vte));H=BD(oo(a.g,Vpd(aC(G,Cte))),33);m=aC(G,'sourcePort');d=null;!!m&&(d=Vpd(m));I=BD(oo(a.j,d),118);if(!H){h=Wpd(G);o=\"An edge must have a source node (edge id: '\"+h;p=o+$te;throw vbb(new cqd(p))}if(!!I&&!Hb(mpd(I),H)){i=_pd(G,Vte);q=\"The source port of an edge must be a port of the edge's source node (edge id: '\"+i;r=q+$te;throw vbb(new cqd(r))}B=(!F.b&&(F.b=new y5d(z2,F,4,7)),F.b);f=null;I?(f=I):(f=H);wtd(B,f);J=BD(oo(a.g,Vpd(aC(G,bue))),33);n=aC(G,'targetPort');e=null;!!n&&(e=Vpd(n));K=BD(oo(a.j,e),118);if(!J){l=Wpd(G);s=\"An edge must have a target node (edge id: '\"+l;t=s+$te;throw vbb(new cqd(t))}if(!!K&&!Hb(mpd(K),J)){j=_pd(G,Vte);u=\"The target port of an edge must be a port of the edge's target node (edge id: '\"+j;v=u+$te;throw vbb(new cqd(v))}C=(!F.c&&(F.c=new y5d(z2,F,5,8)),F.c);g=null;K?(g=K):(g=J);wtd(C,g);if((!F.b&&(F.b=new y5d(z2,F,4,7)),F.b).i==0||(!F.c&&(F.c=new y5d(z2,F,5,8)),F.c).i==0){k=_pd(G,Vte);w=Zte+k;A=w+$te;throw vbb(new cqd(A))}grd(G,F);frd(G,F);D=crd(a,G,F);return D}\nfunction DXb(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D;l=FXb(zXb(a,(Ucd(),Fcd)),b);o=EXb(zXb(a,Gcd),b);u=EXb(zXb(a,Ocd),b);B=GXb(zXb(a,Qcd),b);m=GXb(zXb(a,Bcd),b);s=EXb(zXb(a,Ncd),b);p=EXb(zXb(a,Hcd),b);w=EXb(zXb(a,Pcd),b);v=EXb(zXb(a,Ccd),b);C=GXb(zXb(a,Ecd),b);r=EXb(zXb(a,Lcd),b);t=EXb(zXb(a,Kcd),b);A=EXb(zXb(a,Dcd),b);D=GXb(zXb(a,Mcd),b);n=GXb(zXb(a,Icd),b);q=EXb(zXb(a,Jcd),b);c=w6c(OC(GC(UD,1),Vje,25,15,[s.a,B.a,w.a,D.a]));d=w6c(OC(GC(UD,1),Vje,25,15,[o.a,l.a,u.a,q.a]));e=r.a;f=w6c(OC(GC(UD,1),Vje,25,15,[p.a,m.a,v.a,n.a]));j=w6c(OC(GC(UD,1),Vje,25,15,[s.b,o.b,p.b,t.b]));i=w6c(OC(GC(UD,1),Vje,25,15,[B.b,l.b,m.b,q.b]));k=C.b;h=w6c(OC(GC(UD,1),Vje,25,15,[w.b,u.b,v.b,A.b]));vXb(zXb(a,Fcd),c+e,j+k);vXb(zXb(a,Jcd),c+e,j+k);vXb(zXb(a,Gcd),c+e,0);vXb(zXb(a,Ocd),c+e,j+k+i);vXb(zXb(a,Qcd),0,j+k);vXb(zXb(a,Bcd),c+e+d,j+k);vXb(zXb(a,Hcd),c+e+d,0);vXb(zXb(a,Pcd),0,j+k+i);vXb(zXb(a,Ccd),c+e+d,j+k+i);vXb(zXb(a,Ecd),0,j);vXb(zXb(a,Lcd),c,0);vXb(zXb(a,Dcd),0,j+k+i);vXb(zXb(a,Icd),c+e+d,0);g=new d7c;g.a=w6c(OC(GC(UD,1),Vje,25,15,[c+d+e+f,C.a,t.a,A.a]));g.b=w6c(OC(GC(UD,1),Vje,25,15,[j+i+k+h,r.b,D.b,n.b]));return g}\nfunction Ngc(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;p=new Rkb;for(m=new olb(a.d.b);m.ae.d.d+e.d.a){k.f.d=true}else{k.f.d=true;k.f.a=true}}}d.b!=d.d.c&&(b=c)}if(k){f=BD(Ohb(a.f,g.d.i),57);if(b.bf.d.d+f.d.a){k.f.d=true}else{k.f.d=true;k.f.a=true}}}}for(h=new Sr(ur(R_b(n).a.Kc(),new Sq));Qr(h);){g=BD(Rr(h),17);if(g.a.b!=0){b=BD(Isb(g.a),8);if(g.d.j==(Ucd(),Acd)){q=new hic(b,new f7c(b.a,e.d.d),e,g);q.f.a=true;q.a=g.d;p.c[p.c.length]=q}if(g.d.j==Rcd){q=new hic(b,new f7c(b.a,e.d.d+e.d.a),e,g);q.f.d=true;q.a=g.d;p.c[p.c.length]=q}}}}}return p}\nfunction WJc(a,b,c){var d,e,f,g,h,i,j,k,l;Odd(c,'Network simplex node placement',1);a.e=b;a.n=BD(vNb(b,(wtc(),otc)),304);VJc(a);HJc(a);MAb(LAb(new YAb(null,new Kub(a.e.b,16)),new KKc),new MKc(a));MAb(JAb(LAb(JAb(LAb(new YAb(null,new Kub(a.e.b,16)),new zLc),new BLc),new DLc),new FLc),new IKc(a));if(Ccb(DD(vNb(a.e,(Nyc(),Axc))))){g=Udd(c,1);Odd(g,'Straight Edges Pre-Processing',1);UJc(a);Qdd(g)}JFb(a.f);f=BD(vNb(b,Ayc),19).a*a.f.a.c.length;uGb(HGb(IGb(LGb(a.f),f),false),Udd(c,1));if(a.d.a.gc()!=0){g=Udd(c,1);Odd(g,'Flexible Where Space Processing',1);h=BD(Btb(RAb(NAb(new YAb(null,new Kub(a.f.a,16)),new OKc),new iKc)),19).a;i=BD(Btb(QAb(NAb(new YAb(null,new Kub(a.f.a,16)),new QKc),new mKc)),19).a;j=i-h;k=nGb(new pGb,a.f);l=nGb(new pGb,a.f);AFb(DFb(CFb(BFb(EFb(new FFb,20000),j),k),l));MAb(JAb(JAb(Plb(a.i),new SKc),new UKc),new WKc(h,k,j,l));for(e=a.d.a.ec().Kc();e.Ob();){d=BD(e.Pb(),213);d.g=1}uGb(HGb(IGb(LGb(a.f),f),false),Udd(g,1));Qdd(g)}if(Ccb(DD(vNb(b,Axc)))){g=Udd(c,1);Odd(g,'Straight Edges Post-Processing',1);TJc(a);Qdd(g)}GJc(a);a.e=null;a.f=null;a.i=null;a.c=null;Uhb(a.k);a.j=null;a.a=null;a.o=null;a.d.a.$b();Qdd(c)}\nfunction lMc(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;for(h=new olb(a.a.b);h.a0){d=l.gc();j=QD($wnd.Math.floor((d+1)/2))-1;e=QD($wnd.Math.ceil((d+1)/2))-1;if(b.o==dMc){for(k=e;k>=j;k--){if(b.a[u.p]==u){p=BD(l.Xb(k),46);o=BD(p.a,10);if(!Rqb(c,p.b)&&n>a.b.e[o.p]){b.a[o.p]=u;b.g[u.p]=b.g[o.p];b.a[u.p]=b.g[u.p];b.f[b.g[u.p].p]=(Bcb(),Ccb(b.f[b.g[u.p].p])&u.k==(j0b(),g0b)?true:false);n=a.b.e[o.p]}}}}else{for(k=j;k<=e;k++){if(b.a[u.p]==u){r=BD(l.Xb(k),46);q=BD(r.a,10);if(!Rqb(c,r.b)&&n=o){if(s>o){n.c=KC(SI,Uhe,1,0,5,1);o=s}n.c[n.c.length]=g}}if(n.c.length!=0){m=BD(Ikb(n,Bub(b,n.c.length)),128);F.a.Bc(m)!=null;m.s=p++;AQc(m,C,w);n.c=KC(SI,Uhe,1,0,5,1)}}u=a.c.length+1;for(h=new olb(a);h.aD.s){uib(c);Lkb(D.i,d);if(d.c>0){d.a=D;Ekb(D.t,d);d.b=A;Ekb(A.i,d)}}}}}\nfunction qde(a){var b,c,d,e,f;b=a.c;switch(b){case 11:return a.Ml();case 12:return a.Ol();case 14:return a.Ql();case 15:return a.Tl();case 16:return a.Rl();case 17:return a.Ul();case 21:nde(a);return wfe(),wfe(),ffe;case 10:switch(a.a){case 65:return a.yl();case 90:return a.Dl();case 122:return a.Kl();case 98:return a.El();case 66:return a.zl();case 60:return a.Jl();case 62:return a.Hl();}}f=pde(a);b=a.c;switch(b){case 3:return a.Zl(f);case 4:return a.Xl(f);case 5:return a.Yl(f);case 0:if(a.a==123&&a.d=48&&b<=57){d=b-48;while(e=48&&b<=57){d=d*10+b-48;if(d<0)throw vbb(new mde(tvd((h0d(),bve))))}}else{throw vbb(new mde(tvd((h0d(),Zue))))}c=d;if(b==44){if(e>=a.j){throw vbb(new mde(tvd((h0d(),_ue))))}else if((b=bfb(a.i,e++))>=48&&b<=57){c=b-48;while(e=48&&b<=57){c=c*10+b-48;if(c<0)throw vbb(new mde(tvd((h0d(),bve))))}if(d>c)throw vbb(new mde(tvd((h0d(),ave))))}else{c=-1}}if(b!=125)throw vbb(new mde(tvd((h0d(),$ue))));if(a.sl(e)){f=(wfe(),wfe(),++vfe,new lge(9,f));a.d=e+1}else{f=(wfe(),wfe(),++vfe,new lge(3,f));a.d=e}f.dm(d);f.cm(c);nde(a)}}return f}\nfunction $bc(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F;p=new Skb(b.b);u=new Skb(b.b);m=new Skb(b.b);B=new Skb(b.b);q=new Skb(b.b);for(A=Jsb(b,0);A.b!=A.d.c;){v=BD(Xsb(A),11);for(h=new olb(v.g);h.a0;r=v.g.c.length>0;j&&r?(m.c[m.c.length]=v,true):j?(p.c[p.c.length]=v,true):r&&(u.c[u.c.length]=v,true)}for(o=new olb(p);o.a1){o=new Oyd((!a.a&&(a.a=new cUd(A2,a,6,6)),a.a));while(o.e!=o.i.gc()){Eyd(o)}}g=BD(qud((!a.a&&(a.a=new cUd(A2,a,6,6)),a.a),0),202);q=H;H>v+u?(q=v+u):Hw+p?(r=w+p):Iv-u&&qw-p&&rH+G?(B=H+G):vI+A?(C=I+A):wH-G&&BI-A&&Cc&&(m=c-1);n=N+Cub(b,24)*lke*l-l/2;n<0?(n=1):n>d&&(n=d-1);e=(Fhd(),i=new xkd,i);vkd(e,m);wkd(e,n);wtd((!g.a&&(g.a=new xMd(y2,g,5)),g.a),e)}}\nfunction Nyc(){Nyc=ccb;iyc=(Y9c(),I9c);jyc=J9c;kyc=K9c;lyc=L9c;nyc=M9c;oyc=N9c;ryc=P9c;tyc=R9c;uyc=S9c;syc=Q9c;vyc=T9c;xyc=U9c;zyc=X9c;qyc=O9c;hyc=(jwc(),Bvc);myc=Cvc;pyc=Dvc;wyc=Evc;byc=new Osd(D9c,meb(0));cyc=yvc;dyc=zvc;eyc=Avc;Kyc=awc;Cyc=Hvc;Dyc=Kvc;Gyc=Svc;Eyc=Nvc;Fyc=Pvc;Myc=fwc;Lyc=cwc;Iyc=Yvc;Hyc=Wvc;Jyc=$vc;Cxc=pvc;Dxc=qvc;Xwc=Auc;Ywc=Duc;Lxc=new q0b(12);Kxc=new Osd(f9c,Lxc);Twc=(Aad(),wad);Swc=new Osd(E8c,Twc);Uxc=new Osd(s9c,0);fyc=new Osd(E9c,meb(1));owc=new Osd(r8c,tme);Jxc=d9c;Vxc=t9c;$xc=A9c;Kwc=y8c;mwc=p8c;axc=J8c;gyc=new Osd(H9c,(Bcb(),true));fxc=M8c;gxc=N8c;Fxc=Y8c;Ixc=b9c;Gxc=$8c;Nwc=(ead(),cad);Lwc=new Osd(z8c,Nwc);xxc=W8c;wxc=U8c;Yxc=x9c;Xxc=w9c;Zxc=z9c;Oxc=(Tbd(),Sbd);new Osd(l9c,Oxc);Qxc=o9c;Rxc=p9c;Sxc=q9c;Pxc=n9c;Byc=Gvc;sxc=avc;rxc=$uc;Ayc=Fvc;mxc=Suc;Jwc=muc;Iwc=kuc;Awc=Xtc;Bwc=Ytc;Dwc=buc;Cwc=Ztc;Hwc=iuc;uxc=cvc;vxc=dvc;ixc=Luc;Exc=uvc;zxc=hvc;$wc=Guc;Bxc=nvc;Vwc=wuc;Wwc=yuc;zwc=w8c;yxc=evc;swc=Mtc;rwc=Ktc;qwc=Jtc;cxc=Juc;bxc=Iuc;dxc=Kuc;Hxc=_8c;jxc=Q8c;Zwc=G8c;Qwc=C8c;Pwc=B8c;Ewc=euc;Wxc=v9c;pwc=v8c;exc=L8c;Txc=r9c;Mxc=h9c;Nxc=j9c;oxc=Vuc;pxc=Xuc;ayc=C9c;nwc=Itc;qxc=Zuc;Rwc=suc;Owc=quc;txc=S8c;kxc=Puc;Axc=kvc;yyc=V9c;Mwc=ouc;_xc=wvc;Uwc=uuc;lxc=Ruc;Fwc=guc;hxc=P8c;nxc=Uuc;Gwc=huc;ywc=Vtc;wwc=Stc;uwc=Qtc;vwc=Rtc;xwc=Utc;twc=Otc;_wc=Huc}\nfunction shb(a,b){phb();var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G,H;B=a.e;o=a.d;e=a.a;if(B==0){switch(b){case 0:return '0';case 1:return $je;case 2:return '0.00';case 3:return '0.000';case 4:return '0.0000';case 5:return '0.00000';case 6:return '0.000000';default:w=new Ufb;b<0?(w.a+='0E+',w):(w.a+='0E',w);w.a+=-b;return w.a;}}t=o*10+1+7;u=KC(TD,$ie,25,t+1,15,1);c=t;if(o==1){h=e[0];if(h<0){H=xbb(h,Yje);do{p=H;H=Abb(H,10);u[--c]=48+Tbb(Qbb(p,Ibb(H,10)))&aje}while(ybb(H,0)!=0)}else{H=h;do{p=H;H=H/10|0;u[--c]=48+(p-H*10)&aje}while(H!=0)}}else{D=KC(WD,oje,25,o,15,1);G=o;$fb(e,0,D,0,G);I:while(true){A=0;for(j=G-1;j>=0;j--){F=wbb(Nbb(A,32),xbb(D[j],Yje));r=qhb(F);D[j]=Tbb(r);A=Tbb(Obb(r,32))}s=Tbb(A);q=c;do{u[--c]=48+s%10&aje}while((s=s/10|0)!=0&&c!=0);d=9-q+c;for(i=0;i0;i++){u[--c]=48}l=G-1;for(;D[l]==0;l--){if(l==0){break I}}G=l+1}while(u[c]==48){++c}}n=B<0;g=t-c-b-1;if(b==0){n&&(u[--c]=45);return zfb(u,c,t-c)}if(b>0&&g>=-6){if(g>=0){k=c+g;for(m=t-1;m>=k;m--){u[m+1]=u[m]}u[++k]=46;n&&(u[--c]=45);return zfb(u,c,t-c+1)}for(l=2;l<-g+1;l++){u[--c]=48}u[--c]=46;u[--c]=48;n&&(u[--c]=45);return zfb(u,c,t-c)}C=c+1;f=t;v=new Vfb;n&&(v.a+='-',v);if(f-C>=1){Kfb(v,u[c]);v.a+='.';v.a+=zfb(u,c+1,t-c-1)}else{v.a+=zfb(u,c,t-c)}v.a+='E';g>0&&(v.a+='+',v);v.a+=''+g;return v.a}\nfunction z$c(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;a.c=b;a.g=new Lqb;c=(Pgd(),new bhd(a.c));d=new YGb(c);UGb(d);t=GD(hkd(a.c,(d0c(),Y_c)));i=BD(hkd(a.c,$_c),316);v=BD(hkd(a.c,__c),429);g=BD(hkd(a.c,T_c),482);u=BD(hkd(a.c,Z_c),430);a.j=Edb(ED(hkd(a.c,a0c)));h=a.a;switch(i.g){case 0:h=a.a;break;case 1:h=a.b;break;case 2:h=a.i;break;case 3:h=a.e;break;case 4:h=a.f;break;default:throw vbb(new Wdb(Mre+(i.f!=null?i.f:''+i.g)));}a.d=new g_c(h,v,g);yNb(a.d,(XNb(),VNb),DD(hkd(a.c,V_c)));a.d.c=Ccb(DD(hkd(a.c,U_c)));if(Vod(a.c).i==0){return a.d}for(l=new Fyd(Vod(a.c));l.e!=l.i.gc();){k=BD(Dyd(l),33);n=k.g/2;m=k.f/2;w=new f7c(k.i+n,k.j+m);while(Mhb(a.g,w)){O6c(w,($wnd.Math.random()-0.5)*qme,($wnd.Math.random()-0.5)*qme)}p=BD(hkd(k,(Y9c(),S8c)),142);q=new aOb(w,new J6c(w.a-n-a.j/2-p.b,w.b-m-a.j/2-p.d,k.g+a.j+(p.b+p.c),k.f+a.j+(p.d+p.a)));Ekb(a.d.i,q);Rhb(a.g,w,new vgd(q,k))}switch(u.g){case 0:if(t==null){a.d.d=BD(Ikb(a.d.i,0),65)}else{for(s=new olb(a.d.i);s.a1&&(Gsb(k,r,k.c.b,k.c),true);Zsb(e)}}}r=s}}return k}\nfunction $Bc(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G,H,I,J,K,L;Odd(c,'Greedy cycle removal',1);t=b.a;L=t.c.length;a.a=KC(WD,oje,25,L,15,1);a.c=KC(WD,oje,25,L,15,1);a.b=KC(WD,oje,25,L,15,1);j=0;for(r=new olb(t);r.a0?G+1:1}for(g=new olb(w.g);g.a0?G+1:1}}a.c[j]==0?Dsb(a.e,p):a.a[j]==0&&Dsb(a.f,p);++j}o=-1;n=1;l=new Rkb;a.d=BD(vNb(b,(wtc(),jtc)),230);while(L>0){while(a.e.b!=0){I=BD(Lsb(a.e),10);a.b[I.p]=o--;_Bc(a,I);--L}while(a.f.b!=0){J=BD(Lsb(a.f),10);a.b[J.p]=n++;_Bc(a,J);--L}if(L>0){m=Rie;for(s=new olb(t);s.a=m){if(u>m){l.c=KC(SI,Uhe,1,0,5,1);m=u}l.c[l.c.length]=p}}}k=a.Zf(l);a.b[k.p]=n++;_Bc(a,k);--L}}H=t.c.length+1;for(j=0;ja.b[K]){PZb(d,true);yNb(b,Asc,(Bcb(),true))}}}}a.a=null;a.c=null;a.b=null;Osb(a.f);Osb(a.e);Qdd(c)}\nfunction sQb(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;d=new Rkb;h=new Rkb;q=b/2;n=a.gc();e=BD(a.Xb(0),8);r=BD(a.Xb(1),8);o=tQb(e.a,e.b,r.a,r.b,q);Ekb(d,(tCb(0,o.c.length),BD(o.c[0],8)));Ekb(h,(tCb(1,o.c.length),BD(o.c[1],8)));for(j=2;j=0;i--){Dsb(c,(tCb(i,g.c.length),BD(g.c[i],8)))}return c}\nfunction aFd(a){var b,c,d,e,f,g,h,i,j,k,l,m,n;g=true;l=null;d=null;e=null;b=false;n=BEd;j=null;f=null;h=0;i=UEd(a,h,zEd,AEd);if(i=0&&dfb(a.substr(h,'//'.length),'//')){h+=2;i=UEd(a,h,CEd,DEd);d=a.substr(h,i-h);h=i}else if(l!=null&&(h==a.length||(BCb(h,a.length),a.charCodeAt(h)!=47))){g=false;i=ifb(a,wfb(35),h);i==-1&&(i=a.length);d=a.substr(h,i-h);h=i}if(!c&&h0&&bfb(k,k.length-1)==58){e=k;h=i}}if(h=a.j){a.a=-1;a.c=1;return}b=bfb(a.i,a.d++);a.a=b;if(a.b==1){switch(b){case 92:d=10;if(a.d>=a.j)throw vbb(new mde(tvd((h0d(),uue))));a.a=bfb(a.i,a.d++);break;case 45:if((a.e&512)==512&&a.d=a.j)break;if(bfb(a.i,a.d)!=63)break;if(++a.d>=a.j)throw vbb(new mde(tvd((h0d(),vue))));b=bfb(a.i,a.d++);switch(b){case 58:d=13;break;case 61:d=14;break;case 33:d=15;break;case 91:d=19;break;case 62:d=18;break;case 60:if(a.d>=a.j)throw vbb(new mde(tvd((h0d(),vue))));b=bfb(a.i,a.d++);if(b==61){d=16}else if(b==33){d=17}else throw vbb(new mde(tvd((h0d(),wue))));break;case 35:while(a.d=a.j)throw vbb(new mde(tvd((h0d(),uue))));a.a=bfb(a.i,a.d++);break;default:d=0;}a.c=d}\nfunction P5b(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G;A=BD(vNb(a,(Nyc(),Vxc)),98);if(!(A!=(dcd(),bcd)&&A!=ccd)){return}o=a.b;n=o.c.length;k=new Skb((Xj(n+2,Mie),Oy(wbb(wbb(5,n+2),(n+2)/10|0))));p=new Skb((Xj(n+2,Mie),Oy(wbb(wbb(5,n+2),(n+2)/10|0))));Ekb(k,new Lqb);Ekb(k,new Lqb);Ekb(p,new Rkb);Ekb(p,new Rkb);w=new Rkb;for(b=0;b=v||!wCc(r,d))&&(d=yCc(b,k));$_b(r,d);for(f=new Sr(ur(R_b(r).a.Kc(),new Sq));Qr(f);){e=BD(Rr(f),17);if(a.a[e.p]){continue}p=e.c.i;--a.e[p.p];a.e[p.p]==0&&(zCb(cub(n,p)),true)}}for(j=k.c.length-1;j>=0;--j){Ekb(b.b,(tCb(j,k.c.length),BD(k.c[j],29)))}b.a.c=KC(SI,Uhe,1,0,5,1);Qdd(c)}\nfunction gee(a){var b,c,d,e,f,g,h,i,j;a.b=1;nde(a);b=null;if(a.c==0&&a.a==94){nde(a);b=(wfe(),wfe(),++vfe,new $fe(4));Ufe(b,0,lxe);h=(null,++vfe,new $fe(4))}else{h=(wfe(),wfe(),++vfe,new $fe(4))}e=true;while((j=a.c)!=1){if(j==0&&a.a==93&&!e){if(b){Zfe(b,h);h=b}break}c=a.a;d=false;if(j==10){switch(c){case 100:case 68:case 119:case 87:case 115:case 83:Xfe(h,fee(c));d=true;break;case 105:case 73:case 99:case 67:c=(Xfe(h,fee(c)),-1);c<0&&(d=true);break;case 112:case 80:i=tde(a,c);if(!i)throw vbb(new mde(tvd((h0d(),Iue))));Xfe(h,i);d=true;break;default:c=eee(a);}}else if(j==24&&!e){if(b){Zfe(b,h);h=b}f=gee(a);Zfe(h,f);if(a.c!=0||a.a!=93)throw vbb(new mde(tvd((h0d(),Mue))));break}nde(a);if(!d){if(j==0){if(c==91)throw vbb(new mde(tvd((h0d(),Nue))));if(c==93)throw vbb(new mde(tvd((h0d(),Oue))));if(c==45&&!e&&a.a!=93)throw vbb(new mde(tvd((h0d(),Pue))))}if(a.c!=0||a.a!=45||c==45&&e){Ufe(h,c,c)}else{nde(a);if((j=a.c)==1)throw vbb(new mde(tvd((h0d(),Kue))));if(j==0&&a.a==93){Ufe(h,c,c);Ufe(h,45,45)}else if(j==0&&a.a==93||j==24){throw vbb(new mde(tvd((h0d(),Pue))))}else{g=a.a;if(j==0){if(g==91)throw vbb(new mde(tvd((h0d(),Nue))));if(g==93)throw vbb(new mde(tvd((h0d(),Oue))));if(g==45)throw vbb(new mde(tvd((h0d(),Pue))))}else j==10&&(g=eee(a));nde(a);if(c>g)throw vbb(new mde(tvd((h0d(),Sue))));Ufe(h,c,g)}}}e=false}if(a.c==1)throw vbb(new mde(tvd((h0d(),Kue))));Yfe(h);Vfe(h);a.b=0;nde(a);return h}\nfunction xZd(a){Bnd(a.c,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'http://www.w3.org/2001/XMLSchema#decimal']));Bnd(a.d,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'http://www.w3.org/2001/XMLSchema#integer']));Bnd(a.e,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'http://www.w3.org/2001/XMLSchema#boolean']));Bnd(a.f,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'EBoolean',fue,'EBoolean:Object']));Bnd(a.i,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'http://www.w3.org/2001/XMLSchema#byte']));Bnd(a.g,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'http://www.w3.org/2001/XMLSchema#hexBinary']));Bnd(a.j,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'EByte',fue,'EByte:Object']));Bnd(a.n,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'EChar',fue,'EChar:Object']));Bnd(a.t,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'http://www.w3.org/2001/XMLSchema#double']));Bnd(a.u,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'EDouble',fue,'EDouble:Object']));Bnd(a.F,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'http://www.w3.org/2001/XMLSchema#float']));Bnd(a.G,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'EFloat',fue,'EFloat:Object']));Bnd(a.I,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'http://www.w3.org/2001/XMLSchema#int']));Bnd(a.J,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'EInt',fue,'EInt:Object']));Bnd(a.N,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'http://www.w3.org/2001/XMLSchema#long']));Bnd(a.O,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'ELong',fue,'ELong:Object']));Bnd(a.Z,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'http://www.w3.org/2001/XMLSchema#short']));Bnd(a.$,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'EShort',fue,'EShort:Object']));Bnd(a._,Rve,OC(GC(ZI,1),nie,2,6,[cwe,'http://www.w3.org/2001/XMLSchema#string']))}\nfunction fRc(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G;if(a.c.length==1){return tCb(0,a.c.length),BD(a.c[0],135)}else if(a.c.length<=0){return new SRc}for(i=new olb(a);i.al){F=0;G+=k+A;k=0}eRc(v,g,F,G);b=$wnd.Math.max(b,F+w.a);k=$wnd.Math.max(k,w.b);F+=w.a+A}u=new Lqb;c=new Lqb;for(C=new olb(a);C.aSLc(f))&&(l=f)}}!l&&(l=(tCb(0,q.c.length),BD(q.c[0],180)));for(p=new olb(b.b);p.a=-1900?1:0;c>=4?Qfb(a,OC(GC(ZI,1),nie,2,6,[pje,qje])[h]):Qfb(a,OC(GC(ZI,1),nie,2,6,['BC','AD'])[h]);break;case 121:kA(a,c,d);break;case 77:jA(a,c,d);break;case 107:i=e.q.getHours();i==0?EA(a,24,c):EA(a,i,c);break;case 83:iA(a,c,e);break;case 69:k=d.q.getDay();c==5?Qfb(a,OC(GC(ZI,1),nie,2,6,['S','M','T','W','T','F','S'])[k]):c==4?Qfb(a,OC(GC(ZI,1),nie,2,6,[rje,sje,tje,uje,vje,wje,xje])[k]):Qfb(a,OC(GC(ZI,1),nie,2,6,['Sun','Mon','Tue','Wed','Thu','Fri','Sat'])[k]);break;case 97:e.q.getHours()>=12&&e.q.getHours()<24?Qfb(a,OC(GC(ZI,1),nie,2,6,['AM','PM'])[1]):Qfb(a,OC(GC(ZI,1),nie,2,6,['AM','PM'])[0]);break;case 104:l=e.q.getHours()%12;l==0?EA(a,12,c):EA(a,l,c);break;case 75:m=e.q.getHours()%12;EA(a,m,c);break;case 72:n=e.q.getHours();EA(a,n,c);break;case 99:o=d.q.getDay();c==5?Qfb(a,OC(GC(ZI,1),nie,2,6,['S','M','T','W','T','F','S'])[o]):c==4?Qfb(a,OC(GC(ZI,1),nie,2,6,[rje,sje,tje,uje,vje,wje,xje])[o]):c==3?Qfb(a,OC(GC(ZI,1),nie,2,6,['Sun','Mon','Tue','Wed','Thu','Fri','Sat'])[o]):EA(a,o,1);break;case 76:p=d.q.getMonth();c==5?Qfb(a,OC(GC(ZI,1),nie,2,6,['J','F','M','A','M','J','J','A','S','O','N','D'])[p]):c==4?Qfb(a,OC(GC(ZI,1),nie,2,6,[bje,cje,dje,eje,fje,gje,hje,ije,jje,kje,lje,mje])[p]):c==3?Qfb(a,OC(GC(ZI,1),nie,2,6,['Jan','Feb','Mar','Apr',fje,'Jun','Jul','Aug','Sep','Oct','Nov','Dec'])[p]):EA(a,p+1,c);break;case 81:q=d.q.getMonth()/3|0;c<4?Qfb(a,OC(GC(ZI,1),nie,2,6,['Q1','Q2','Q3','Q4'])[q]):Qfb(a,OC(GC(ZI,1),nie,2,6,['1st quarter','2nd quarter','3rd quarter','4th quarter'])[q]);break;case 100:r=d.q.getDate();EA(a,r,c);break;case 109:j=e.q.getMinutes();EA(a,j,c);break;case 115:g=e.q.getSeconds();EA(a,g,c);break;case 122:c<4?Qfb(a,f.c[0]):Qfb(a,f.c[1]);break;case 118:Qfb(a,f.b);break;case 90:c<3?Qfb(a,OA(f)):c==3?Qfb(a,NA(f)):Qfb(a,QA(f.a));break;default:return false;}return true}\nfunction X1b(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G,H;N1b(b);i=BD(qud((!b.b&&(b.b=new y5d(z2,b,4,7)),b.b),0),82);k=BD(qud((!b.c&&(b.c=new y5d(z2,b,5,8)),b.c),0),82);h=atd(i);j=atd(k);g=(!b.a&&(b.a=new cUd(A2,b,6,6)),b.a).i==0?null:BD(qud((!b.a&&(b.a=new cUd(A2,b,6,6)),b.a),0),202);A=BD(Ohb(a.a,h),10);F=BD(Ohb(a.a,j),10);B=null;G=null;if(JD(i,186)){w=BD(Ohb(a.a,i),299);if(JD(w,11)){B=BD(w,11)}else if(JD(w,10)){A=BD(w,10);B=BD(Ikb(A.j,0),11)}}if(JD(k,186)){D=BD(Ohb(a.a,k),299);if(JD(D,11)){G=BD(D,11)}else if(JD(D,10)){F=BD(D,10);G=BD(Ikb(F.j,0),11)}}if(!A||!F){throw vbb(new z2c('The source or the target of edge '+b+' could not be found. '+'This usually happens when an edge connects a node laid out by ELK Layered to a node in '+'another level of hierarchy laid out by either another instance of ELK Layered or another '+'layout algorithm alltogether. The former can be solved by setting the hierarchyHandling '+'option to INCLUDE_CHILDREN.'))}p=new UZb;tNb(p,b);yNb(p,(wtc(),$sc),b);yNb(p,(Nyc(),jxc),null);n=BD(vNb(d,Ksc),21);A==F&&n.Fc((Orc(),Nrc));if(!B){v=(KAc(),IAc);C=null;if(!!g&&fcd(BD(vNb(A,Vxc),98))){C=new f7c(g.j,g.k);Bfd(C,Mld(b));Cfd(C,c);if(ntd(j,h)){v=HAc;P6c(C,A.n)}}B=$$b(A,C,v,d)}if(!G){v=(KAc(),HAc);H=null;if(!!g&&fcd(BD(vNb(F,Vxc),98))){H=new f7c(g.b,g.c);Bfd(H,Mld(b));Cfd(H,c)}G=$$b(F,H,v,Q_b(F))}QZb(p,B);RZb(p,G);(B.e.c.length>1||B.g.c.length>1||G.e.c.length>1||G.g.c.length>1)&&n.Fc((Orc(),Irc));for(m=new Fyd((!b.n&&(b.n=new cUd(D2,b,1,7)),b.n));m.e!=m.i.gc();){l=BD(Dyd(m),137);if(!Ccb(DD(hkd(l,Jxc)))&&!!l.a){q=Z1b(l);Ekb(p.b,q);switch(BD(vNb(q,Qwc),272).g){case 1:case 2:n.Fc((Orc(),Grc));break;case 0:n.Fc((Orc(),Erc));yNb(q,Qwc,(qad(),nad));}}}f=BD(vNb(d,Iwc),314);r=BD(vNb(d,Exc),315);e=f==(Rpc(),Opc)||r==(Vzc(),Rzc);if(!!g&&(!g.a&&(g.a=new xMd(y2,g,5)),g.a).i!=0&&e){s=ofd(g);o=new s7c;for(u=Jsb(s,0);u.b!=u.d.c;){t=BD(Xsb(u),8);Dsb(o,new g7c(t))}yNb(p,_sc,o)}return p}\nfunction yZd(a){if(a.gb)return;a.gb=true;a.b=Lnd(a,0);Knd(a.b,18);Qnd(a.b,19);a.a=Lnd(a,1);Knd(a.a,1);Qnd(a.a,2);Qnd(a.a,3);Qnd(a.a,4);Qnd(a.a,5);a.o=Lnd(a,2);Knd(a.o,8);Knd(a.o,9);Qnd(a.o,10);Qnd(a.o,11);Qnd(a.o,12);Qnd(a.o,13);Qnd(a.o,14);Qnd(a.o,15);Qnd(a.o,16);Qnd(a.o,17);Qnd(a.o,18);Qnd(a.o,19);Qnd(a.o,20);Qnd(a.o,21);Qnd(a.o,22);Qnd(a.o,23);Pnd(a.o);Pnd(a.o);Pnd(a.o);Pnd(a.o);Pnd(a.o);Pnd(a.o);Pnd(a.o);Pnd(a.o);Pnd(a.o);Pnd(a.o);a.p=Lnd(a,3);Knd(a.p,2);Knd(a.p,3);Knd(a.p,4);Knd(a.p,5);Qnd(a.p,6);Qnd(a.p,7);Pnd(a.p);Pnd(a.p);a.q=Lnd(a,4);Knd(a.q,8);a.v=Lnd(a,5);Qnd(a.v,9);Pnd(a.v);Pnd(a.v);Pnd(a.v);a.w=Lnd(a,6);Knd(a.w,2);Knd(a.w,3);Knd(a.w,4);Qnd(a.w,5);a.B=Lnd(a,7);Qnd(a.B,1);Pnd(a.B);Pnd(a.B);Pnd(a.B);a.Q=Lnd(a,8);Qnd(a.Q,0);Pnd(a.Q);a.R=Lnd(a,9);Knd(a.R,1);a.S=Lnd(a,10);Pnd(a.S);Pnd(a.S);Pnd(a.S);Pnd(a.S);Pnd(a.S);Pnd(a.S);Pnd(a.S);Pnd(a.S);Pnd(a.S);Pnd(a.S);Pnd(a.S);Pnd(a.S);Pnd(a.S);Pnd(a.S);Pnd(a.S);a.T=Lnd(a,11);Qnd(a.T,10);Qnd(a.T,11);Qnd(a.T,12);Qnd(a.T,13);Qnd(a.T,14);Pnd(a.T);Pnd(a.T);a.U=Lnd(a,12);Knd(a.U,2);Knd(a.U,3);Qnd(a.U,4);Qnd(a.U,5);Qnd(a.U,6);Qnd(a.U,7);Pnd(a.U);a.V=Lnd(a,13);Qnd(a.V,10);a.W=Lnd(a,14);Knd(a.W,18);Knd(a.W,19);Knd(a.W,20);Qnd(a.W,21);Qnd(a.W,22);Qnd(a.W,23);a.bb=Lnd(a,15);Knd(a.bb,10);Knd(a.bb,11);Knd(a.bb,12);Knd(a.bb,13);Knd(a.bb,14);Knd(a.bb,15);Knd(a.bb,16);Qnd(a.bb,17);Pnd(a.bb);Pnd(a.bb);a.eb=Lnd(a,16);Knd(a.eb,2);Knd(a.eb,3);Knd(a.eb,4);Knd(a.eb,5);Knd(a.eb,6);Knd(a.eb,7);Qnd(a.eb,8);Qnd(a.eb,9);a.ab=Lnd(a,17);Knd(a.ab,0);Knd(a.ab,1);a.H=Lnd(a,18);Qnd(a.H,0);Qnd(a.H,1);Qnd(a.H,2);Qnd(a.H,3);Qnd(a.H,4);Qnd(a.H,5);Pnd(a.H);a.db=Lnd(a,19);Qnd(a.db,2);a.c=Mnd(a,20);a.d=Mnd(a,21);a.e=Mnd(a,22);a.f=Mnd(a,23);a.i=Mnd(a,24);a.g=Mnd(a,25);a.j=Mnd(a,26);a.k=Mnd(a,27);a.n=Mnd(a,28);a.r=Mnd(a,29);a.s=Mnd(a,30);a.t=Mnd(a,31);a.u=Mnd(a,32);a.fb=Mnd(a,33);a.A=Mnd(a,34);a.C=Mnd(a,35);a.D=Mnd(a,36);a.F=Mnd(a,37);a.G=Mnd(a,38);a.I=Mnd(a,39);a.J=Mnd(a,40);a.L=Mnd(a,41);a.M=Mnd(a,42);a.N=Mnd(a,43);a.O=Mnd(a,44);a.P=Mnd(a,45);a.X=Mnd(a,46);a.Y=Mnd(a,47);a.Z=Mnd(a,48);a.$=Mnd(a,49);a._=Mnd(a,50);a.cb=Mnd(a,51);a.K=Mnd(a,52)}\nfunction Y9c(){Y9c=ccb;var a,b;o8c=new Lsd(sse);F9c=new Lsd(tse);q8c=(F7c(),z7c);p8c=new Nsd($pe,q8c);new Tfd;r8c=new Nsd(_le,null);s8c=new Lsd(use);x8c=(i8c(),qqb(h8c,OC(GC(r1,1),Kie,291,0,[d8c])));w8c=new Nsd(lqe,x8c);y8c=new Nsd(Zpe,(Bcb(),false));A8c=(ead(),cad);z8c=new Nsd(cqe,A8c);F8c=(Aad(),zad);E8c=new Nsd(ype,F8c);I8c=new Nsd(Jre,false);K8c=(hbd(),fbd);J8c=new Nsd(tpe,K8c);g9c=new q0b(12);f9c=new Nsd(ame,g9c);O8c=new Nsd(Ame,false);P8c=new Nsd(xqe,false);e9c=new Nsd(Dme,false);u9c=(dcd(),ccd);t9c=new Nsd(Bme,u9c);C9c=new Lsd(uqe);D9c=new Lsd(vme);E9c=new Lsd(yme);H9c=new Lsd(zme);R8c=new s7c;Q8c=new Nsd(mqe,R8c);v8c=new Nsd(pqe,false);L8c=new Nsd(qqe,false);new Lsd(vse);T8c=new H_b;S8c=new Nsd(vqe,T8c);d9c=new Nsd(Xpe,false);new Tfd;G9c=new Nsd(wse,1);new Nsd(xse,true);meb(0);new Nsd(yse,meb(100));new Nsd(zse,false);meb(0);new Nsd(Ase,meb(4000));meb(0);new Nsd(Bse,meb(400));new Nsd(Cse,false);new Nsd(Dse,false);new Nsd(Ese,true);new Nsd(Fse,false);u8c=(Ded(),Ced);t8c=new Nsd(rse,u8c);I9c=new Nsd(Lpe,10);J9c=new Nsd(Mpe,10);K9c=new Nsd(Zle,20);L9c=new Nsd(Npe,10);M9c=new Nsd(xme,2);N9c=new Nsd(Ope,10);P9c=new Nsd(Ppe,0);Q9c=new Nsd(Spe,5);R9c=new Nsd(Qpe,1);S9c=new Nsd(Rpe,1);T9c=new Nsd(wme,20);U9c=new Nsd(Tpe,10);X9c=new Nsd(Upe,10);O9c=new Lsd(Vpe);W9c=new I_b;V9c=new Nsd(wqe,W9c);j9c=new Lsd(tqe);i9c=false;h9c=new Nsd(sqe,i9c);V8c=new q0b(5);U8c=new Nsd(dqe,V8c);X8c=(Hbd(),b=BD(gdb(B1),9),new xqb(b,BD(_Bb(b,b.length),9),0));W8c=new Nsd(Gme,X8c);m9c=(Tbd(),Qbd);l9c=new Nsd(gqe,m9c);o9c=new Lsd(hqe);p9c=new Lsd(iqe);q9c=new Lsd(jqe);n9c=new Lsd(kqe);Z8c=(a=BD(gdb(I1),9),new xqb(a,BD(_Bb(a,a.length),9),0));Y8c=new Nsd(Fme,Z8c);c9c=pqb((Idd(),Bdd));b9c=new Nsd(Eme,c9c);a9c=new f7c(0,0);_8c=new Nsd(Tme,a9c);$8c=new Nsd(bqe,false);D8c=(qad(),nad);C8c=new Nsd(nqe,D8c);B8c=new Nsd(Cme,false);new Lsd(Gse);meb(1);new Nsd(Hse,null);r9c=new Lsd(rqe);v9c=new Lsd(oqe);B9c=(Ucd(),Scd);A9c=new Nsd(Ype,B9c);s9c=new Lsd(Wpe);y9c=(rcd(),pqb(pcd));x9c=new Nsd(Hme,y9c);w9c=new Nsd(eqe,false);z9c=new Nsd(fqe,true);M8c=new Nsd(_pe,false);N8c=new Nsd(aqe,false);G8c=new Nsd($le,1);H8c=(Mad(),Kad);new Nsd(Ise,H8c);k9c=true}\nfunction wtc(){wtc=ccb;var a,b;$sc=new Lsd(Ime);xsc=new Lsd('coordinateOrigin');itc=new Lsd('processors');wsc=new Msd('compoundNode',(Bcb(),false));Nsc=new Msd('insideConnections',false);_sc=new Lsd('originalBendpoints');atc=new Lsd('originalDummyNodePosition');btc=new Lsd('originalLabelEdge');ktc=new Lsd('representedLabels');Csc=new Lsd('endLabels');Dsc=new Lsd('endLabel.origin');Ssc=new Msd('labelSide',(rbd(),qbd));Ysc=new Msd('maxEdgeThickness',0);ltc=new Msd('reversed',false);jtc=new Lsd(Jme);Vsc=new Msd('longEdgeSource',null);Wsc=new Msd('longEdgeTarget',null);Usc=new Msd('longEdgeHasLabelDummies',false);Tsc=new Msd('longEdgeBeforeLabelDummy',false);Bsc=new Msd('edgeConstraint',(Gqc(),Eqc));Psc=new Lsd('inLayerLayoutUnit');Osc=new Msd('inLayerConstraint',(esc(),csc));Qsc=new Msd('inLayerSuccessorConstraint',new Rkb);Rsc=new Msd('inLayerSuccessorConstraintBetweenNonDummies',false);gtc=new Lsd('portDummy');ysc=new Msd('crossingHint',meb(0));Ksc=new Msd('graphProperties',(b=BD(gdb(PW),9),new xqb(b,BD(_Bb(b,b.length),9),0)));Hsc=new Msd('externalPortSide',(Ucd(),Scd));Isc=new Msd('externalPortSize',new d7c);Fsc=new Lsd('externalPortReplacedDummies');Gsc=new Lsd('externalPortReplacedDummy');Esc=new Msd('externalPortConnections',(a=BD(gdb(F1),9),new xqb(a,BD(_Bb(a,a.length),9),0)));htc=new Msd(tle,0);ssc=new Lsd('barycenterAssociates');vtc=new Lsd('TopSideComments');tsc=new Lsd('BottomSideComments');vsc=new Lsd('CommentConnectionPort');Msc=new Msd('inputCollect',false);etc=new Msd('outputCollect',false);Asc=new Msd('cyclic',false);zsc=new Lsd('crossHierarchyMap');utc=new Lsd('targetOffset');new Msd('splineLabelSize',new d7c);otc=new Lsd('spacings');ftc=new Msd('partitionConstraint',false);usc=new Lsd('breakingPoint.info');stc=new Lsd('splines.survivingEdge');rtc=new Lsd('splines.route.start');ptc=new Lsd('splines.edgeChain');dtc=new Lsd('originalPortConstraints');ntc=new Lsd('selfLoopHolder');qtc=new Lsd('splines.nsPortY');Zsc=new Lsd('modelOrder');Xsc=new Lsd('longEdgeTargetNode');Jsc=new Msd(Xne,false);mtc=new Msd(Xne,false);Lsc=new Lsd('layerConstraints.hiddenNodes');ctc=new Lsd('layerConstraints.opposidePort');ttc=new Lsd('targetNode.modelOrder')}\nfunction jwc(){jwc=ccb;puc=(xqc(),vqc);ouc=new Nsd(Yne,puc);Guc=new Nsd(Zne,(Bcb(),false));Muc=(msc(),ksc);Luc=new Nsd($ne,Muc);cvc=new Nsd(_ne,false);dvc=new Nsd(aoe,true);Itc=new Nsd(boe,false);xvc=(BAc(),zAc);wvc=new Nsd(coe,xvc);meb(1);Fvc=new Nsd(doe,meb(7));Gvc=new Nsd(eoe,false);Huc=new Nsd(foe,false);nuc=(mqc(),iqc);muc=new Nsd(goe,nuc);bvc=(lzc(),jzc);avc=new Nsd(hoe,bvc);Tuc=(Ctc(),Btc);Suc=new Nsd(ioe,Tuc);meb(-1);Ruc=new Nsd(joe,meb(-1));meb(-1);Uuc=new Nsd(koe,meb(-1));meb(-1);Vuc=new Nsd(loe,meb(4));meb(-1);Xuc=new Nsd(moe,meb(2));_uc=(kAc(),iAc);$uc=new Nsd(noe,_uc);meb(0);Zuc=new Nsd(ooe,meb(0));Puc=new Nsd(poe,meb(Ohe));luc=(Rpc(),Ppc);kuc=new Nsd(qoe,luc);Xtc=new Nsd(roe,false);euc=new Nsd(soe,0.1);iuc=new Nsd(toe,false);meb(-1);guc=new Nsd(uoe,meb(-1));meb(-1);huc=new Nsd(voe,meb(-1));meb(0);Ytc=new Nsd(woe,meb(40));cuc=(Xrc(),Wrc);buc=new Nsd(xoe,cuc);$tc=Urc;Ztc=new Nsd(yoe,$tc);vvc=(Vzc(),Qzc);uvc=new Nsd(zoe,vvc);kvc=new Lsd(Aoe);fvc=(_qc(),Zqc);evc=new Nsd(Boe,fvc);ivc=(lrc(),irc);hvc=new Nsd(Coe,ivc);new Tfd;nvc=new Nsd(Doe,0.3);pvc=new Lsd(Eoe);rvc=(Izc(),Gzc);qvc=new Nsd(Foe,rvc);xuc=(TAc(),RAc);wuc=new Nsd(Goe,xuc);zuc=(_Ac(),$Ac);yuc=new Nsd(Hoe,zuc);Buc=(tBc(),sBc);Auc=new Nsd(Ioe,Buc);Duc=new Nsd(Joe,0.2);uuc=new Nsd(Koe,2);Bvc=new Nsd(Loe,null);Dvc=new Nsd(Moe,10);Cvc=new Nsd(Noe,10);Evc=new Nsd(Ooe,20);meb(0);yvc=new Nsd(Poe,meb(0));meb(0);zvc=new Nsd(Qoe,meb(0));meb(0);Avc=new Nsd(Roe,meb(0));Jtc=new Nsd(Soe,false);Ntc=(yrc(),wrc);Mtc=new Nsd(Toe,Ntc);Ltc=(Ipc(),Hpc);Ktc=new Nsd(Uoe,Ltc);Juc=new Nsd(Voe,false);meb(0);Iuc=new Nsd(Woe,meb(16));meb(0);Kuc=new Nsd(Xoe,meb(5));bwc=(LBc(),JBc);awc=new Nsd(Yoe,bwc);Hvc=new Nsd(Zoe,10);Kvc=new Nsd($oe,1);Tvc=(bqc(),aqc);Svc=new Nsd(_oe,Tvc);Nvc=new Lsd(ape);Qvc=meb(1);meb(0);Pvc=new Nsd(bpe,Qvc);gwc=(CBc(),zBc);fwc=new Nsd(cpe,gwc);cwc=new Lsd(dpe);Yvc=new Nsd(epe,true);Wvc=new Nsd(fpe,2);$vc=new Nsd(gpe,true);tuc=(Sqc(),Qqc);suc=new Nsd(hpe,tuc);ruc=(Apc(),wpc);quc=new Nsd(ipe,ruc);Wtc=(tAc(),rAc);Vtc=new Nsd(jpe,Wtc);Utc=new Nsd(kpe,false);Ptc=(RXb(),QXb);Otc=new Nsd(lpe,Ptc);Ttc=(xzc(),uzc);Stc=new Nsd(mpe,Ttc);Qtc=new Nsd(npe,0);Rtc=new Nsd(ope,0);Ouc=kqc;Nuc=Opc;Wuc=izc;Yuc=izc;Quc=fzc;fuc=(hbd(),ebd);juc=Ppc;duc=Ppc;_tc=Ppc;auc=ebd;lvc=Tzc;mvc=Qzc;gvc=Qzc;jvc=Qzc;ovc=Szc;tvc=Tzc;svc=Tzc;Cuc=(Aad(),yad);Euc=yad;Fuc=sBc;vuc=xad;Ivc=KBc;Jvc=IBc;Lvc=KBc;Mvc=IBc;Uvc=KBc;Vvc=IBc;Ovc=_pc;Rvc=aqc;hwc=KBc;iwc=IBc;dwc=KBc;ewc=IBc;Zvc=IBc;Xvc=IBc;_vc=IBc}\nfunction S8b(){S8b=ccb;Y7b=new T8b('DIRECTION_PREPROCESSOR',0);V7b=new T8b('COMMENT_PREPROCESSOR',1);Z7b=new T8b('EDGE_AND_LAYER_CONSTRAINT_EDGE_REVERSER',2);n8b=new T8b('INTERACTIVE_EXTERNAL_PORT_POSITIONER',3);G8b=new T8b('PARTITION_PREPROCESSOR',4);r8b=new T8b('LABEL_DUMMY_INSERTER',5);M8b=new T8b('SELF_LOOP_PREPROCESSOR',6);w8b=new T8b('LAYER_CONSTRAINT_PREPROCESSOR',7);E8b=new T8b('PARTITION_MIDPROCESSOR',8);i8b=new T8b('HIGH_DEGREE_NODE_LAYER_PROCESSOR',9);A8b=new T8b('NODE_PROMOTION',10);v8b=new T8b('LAYER_CONSTRAINT_POSTPROCESSOR',11);F8b=new T8b('PARTITION_POSTPROCESSOR',12);e8b=new T8b('HIERARCHICAL_PORT_CONSTRAINT_PROCESSOR',13);O8b=new T8b('SEMI_INTERACTIVE_CROSSMIN_PROCESSOR',14);P7b=new T8b('BREAKING_POINT_INSERTER',15);z8b=new T8b('LONG_EDGE_SPLITTER',16);I8b=new T8b('PORT_SIDE_PROCESSOR',17);o8b=new T8b('INVERTED_PORT_PROCESSOR',18);H8b=new T8b('PORT_LIST_SORTER',19);Q8b=new T8b('SORT_BY_INPUT_ORDER_OF_MODEL',20);C8b=new T8b('NORTH_SOUTH_PORT_PREPROCESSOR',21);Q7b=new T8b('BREAKING_POINT_PROCESSOR',22);D8b=new T8b(Bne,23);R8b=new T8b(Cne,24);K8b=new T8b('SELF_LOOP_PORT_RESTORER',25);P8b=new T8b('SINGLE_EDGE_GRAPH_WRAPPER',26);p8b=new T8b('IN_LAYER_CONSTRAINT_PROCESSOR',27);b8b=new T8b('END_NODE_PORT_LABEL_MANAGEMENT_PROCESSOR',28);q8b=new T8b('LABEL_AND_NODE_SIZE_PROCESSOR',29);m8b=new T8b('INNERMOST_NODE_MARGIN_CALCULATOR',30);N8b=new T8b('SELF_LOOP_ROUTER',31);T7b=new T8b('COMMENT_NODE_MARGIN_CALCULATOR',32);_7b=new T8b('END_LABEL_PREPROCESSOR',33);t8b=new T8b('LABEL_DUMMY_SWITCHER',34);S7b=new T8b('CENTER_LABEL_MANAGEMENT_PROCESSOR',35);u8b=new T8b('LABEL_SIDE_SELECTOR',36);k8b=new T8b('HYPEREDGE_DUMMY_MERGER',37);f8b=new T8b('HIERARCHICAL_PORT_DUMMY_SIZE_PROCESSOR',38);x8b=new T8b('LAYER_SIZE_AND_GRAPH_HEIGHT_CALCULATOR',39);h8b=new T8b('HIERARCHICAL_PORT_POSITION_PROCESSOR',40);W7b=new T8b('CONSTRAINTS_POSTPROCESSOR',41);U7b=new T8b('COMMENT_POSTPROCESSOR',42);l8b=new T8b('HYPERNODE_PROCESSOR',43);g8b=new T8b('HIERARCHICAL_PORT_ORTHOGONAL_EDGE_ROUTER',44);y8b=new T8b('LONG_EDGE_JOINER',45);L8b=new T8b('SELF_LOOP_POSTPROCESSOR',46);R7b=new T8b('BREAKING_POINT_REMOVER',47);B8b=new T8b('NORTH_SOUTH_PORT_POSTPROCESSOR',48);j8b=new T8b('HORIZONTAL_COMPACTOR',49);s8b=new T8b('LABEL_DUMMY_REMOVER',50);c8b=new T8b('FINAL_SPLINE_BENDPOINTS_CALCULATOR',51);a8b=new T8b('END_LABEL_SORTER',52);J8b=new T8b('REVERSED_EDGE_RESTORER',53);$7b=new T8b('END_LABEL_POSTPROCESSOR',54);d8b=new T8b('HIERARCHICAL_NODE_RESIZER',55);X7b=new T8b('DIRECTION_POSTPROCESSOR',56)}\nfunction KIc(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,$,ab,bb,cb,db,eb,fb,gb,hb,ib,jb,kb,lb;cb=0;for(H=b,K=0,N=H.length;K0&&(a.a[U.p]=cb++)}}hb=0;for(I=c,L=0,O=I.length;L0){U=(sCb(Y.b>0),BD(Y.a.Xb(Y.c=--Y.b),11));X=0;for(h=new olb(U.e);h.a0){if(U.j==(Ucd(),Acd)){a.a[U.p]=hb;++hb}else{a.a[U.p]=hb+P+R;++R}}}hb+=R}W=new Lqb;o=new zsb;for(G=b,J=0,M=G.length;Jj.b&&(j.b=Z)}else if(U.i.c==bb){Zj.c&&(j.c=Z)}}}Klb(p,0,p.length,null);gb=KC(WD,oje,25,p.length,15,1);d=KC(WD,oje,25,hb+1,15,1);for(r=0;r0){A%2>0&&(e+=kb[A+1]);A=(A-1)/2|0;++kb[A]}}C=KC(nY,Uhe,362,p.length*2,0,1);for(u=0;u'?\":dfb(wue,a)?\"'(?<' or '(? toIndex: ',zke=', toIndex: ',Ake='Index: ',Bke=', Size: ',Cke='org.eclipse.elk.alg.common',Dke={62:1},Eke='org.eclipse.elk.alg.common.compaction',Fke='Scanline/EventHandler',Gke='org.eclipse.elk.alg.common.compaction.oned',Hke='CNode belongs to another CGroup.',Ike='ISpacingsHandler/1',Jke='The ',Kke=' instance has been finished already.',Lke='The direction ',Mke=' is not supported by the CGraph instance.',Nke='OneDimensionalCompactor',Oke='OneDimensionalCompactor/lambda$0$Type',Pke='Quadruplet',Qke='ScanlineConstraintCalculator',Rke='ScanlineConstraintCalculator/ConstraintsScanlineHandler',Ske='ScanlineConstraintCalculator/ConstraintsScanlineHandler/lambda$0$Type',Tke='ScanlineConstraintCalculator/Timestamp',Uke='ScanlineConstraintCalculator/lambda$0$Type',Vke={169:1,45:1},Wke='org.eclipse.elk.alg.common.compaction.options',Xke='org.eclipse.elk.core.data',Yke='org.eclipse.elk.polyomino.traversalStrategy',Zke='org.eclipse.elk.polyomino.lowLevelSort',$ke='org.eclipse.elk.polyomino.highLevelSort',_ke='org.eclipse.elk.polyomino.fill',ale={130:1},ble='polyomino',cle='org.eclipse.elk.alg.common.networksimplex',dle={177:1,3:1,4:1},ele='org.eclipse.elk.alg.common.nodespacing',fle='org.eclipse.elk.alg.common.nodespacing.cellsystem',gle='CENTER',hle={212:1,326:1},ile={3:1,4:1,5:1,595:1},jle='LEFT',kle='RIGHT',lle='Vertical alignment cannot be null',mle='BOTTOM',nle='org.eclipse.elk.alg.common.nodespacing.internal',ole='UNDEFINED',ple=0.01,qle='org.eclipse.elk.alg.common.nodespacing.internal.algorithm',rle='LabelPlacer/lambda$0$Type',sle='LabelPlacer/lambda$1$Type',tle='portRatioOrPosition',ule='org.eclipse.elk.alg.common.overlaps',vle='DOWN',wle='org.eclipse.elk.alg.common.polyomino',xle='NORTH',yle='EAST',zle='SOUTH',Ale='WEST',Ble='org.eclipse.elk.alg.common.polyomino.structures',Cle='Direction',Dle='Grid is only of size ',Ele='. Requested point (',Fle=') is out of bounds.',Gle=' Given center based coordinates were (',Hle='org.eclipse.elk.graph.properties',Ile='IPropertyHolder',Jle={3:1,94:1,134:1},Kle='org.eclipse.elk.alg.common.spore',Lle='org.eclipse.elk.alg.common.utils',Mle={209:1},Nle='org.eclipse.elk.core',Ole='Connected Components Compaction',Ple='org.eclipse.elk.alg.disco',Qle='org.eclipse.elk.alg.disco.graph',Rle='org.eclipse.elk.alg.disco.options',Sle='CompactionStrategy',Tle='org.eclipse.elk.disco.componentCompaction.strategy',Ule='org.eclipse.elk.disco.componentCompaction.componentLayoutAlgorithm',Vle='org.eclipse.elk.disco.debug.discoGraph',Wle='org.eclipse.elk.disco.debug.discoPolys',Xle='componentCompaction',Yle='org.eclipse.elk.disco',Zle='org.eclipse.elk.spacing.componentComponent',$le='org.eclipse.elk.edge.thickness',_le='org.eclipse.elk.aspectRatio',ame='org.eclipse.elk.padding',bme='org.eclipse.elk.alg.disco.transform',cme=1.5707963267948966,dme=1.7976931348623157E308,eme={3:1,4:1,5:1,192:1},fme={3:1,6:1,4:1,5:1,106:1,120:1},gme='org.eclipse.elk.alg.force',hme='ComponentsProcessor',ime='ComponentsProcessor/1',jme='org.eclipse.elk.alg.force.graph',kme='Component Layout',lme='org.eclipse.elk.alg.force.model',mme='org.eclipse.elk.force.model',nme='org.eclipse.elk.force.iterations',ome='org.eclipse.elk.force.repulsivePower',pme='org.eclipse.elk.force.temperature',qme=0.001,rme='org.eclipse.elk.force.repulsion',sme='org.eclipse.elk.alg.force.options',tme=1.600000023841858,ume='org.eclipse.elk.force',vme='org.eclipse.elk.priority',wme='org.eclipse.elk.spacing.nodeNode',xme='org.eclipse.elk.spacing.edgeLabel',yme='org.eclipse.elk.randomSeed',zme='org.eclipse.elk.separateConnectedComponents',Ame='org.eclipse.elk.interactive',Bme='org.eclipse.elk.portConstraints',Cme='org.eclipse.elk.edgeLabels.inline',Dme='org.eclipse.elk.omitNodeMicroLayout',Eme='org.eclipse.elk.nodeSize.options',Fme='org.eclipse.elk.nodeSize.constraints',Gme='org.eclipse.elk.nodeLabels.placement',Hme='org.eclipse.elk.portLabels.placement',Ime='origin',Jme='random',Kme='boundingBox.upLeft',Lme='boundingBox.lowRight',Mme='org.eclipse.elk.stress.fixed',Nme='org.eclipse.elk.stress.desiredEdgeLength',Ome='org.eclipse.elk.stress.dimension',Pme='org.eclipse.elk.stress.epsilon',Qme='org.eclipse.elk.stress.iterationLimit',Rme='org.eclipse.elk.stress',Sme='ELK Stress',Tme='org.eclipse.elk.nodeSize.minimum',Ume='org.eclipse.elk.alg.force.stress',Vme='Layered layout',Wme='org.eclipse.elk.alg.layered',Xme='org.eclipse.elk.alg.layered.compaction.components',Yme='org.eclipse.elk.alg.layered.compaction.oned',Zme='org.eclipse.elk.alg.layered.compaction.oned.algs',$me='org.eclipse.elk.alg.layered.compaction.recthull',_me='org.eclipse.elk.alg.layered.components',ane='NONE',bne={3:1,6:1,4:1,9:1,5:1,122:1},cne={3:1,6:1,4:1,5:1,141:1,106:1,120:1},dne='org.eclipse.elk.alg.layered.compound',ene={51:1},fne='org.eclipse.elk.alg.layered.graph',gne=' -> ',hne='Not supported by LGraph',ine='Port side is undefined',jne={3:1,6:1,4:1,5:1,474:1,141:1,106:1,120:1},kne={3:1,6:1,4:1,5:1,141:1,193:1,203:1,106:1,120:1},lne={3:1,6:1,4:1,5:1,141:1,1943:1,203:1,106:1,120:1},mne='([{\"\\' \\t\\r\\n',nne=')]}\"\\' \\t\\r\\n',one='The given string contains parts that cannot be parsed as numbers.',pne='org.eclipse.elk.core.math',qne={3:1,4:1,142:1,207:1,414:1},rne={3:1,4:1,116:1,207:1,414:1},sne='org.eclipse.elk.layered',tne='org.eclipse.elk.alg.layered.graph.transform',une='ElkGraphImporter',vne='ElkGraphImporter/lambda$0$Type',wne='ElkGraphImporter/lambda$1$Type',xne='ElkGraphImporter/lambda$2$Type',yne='ElkGraphImporter/lambda$4$Type',zne='Node margin calculation',Ane='org.eclipse.elk.alg.layered.intermediate',Bne='ONE_SIDED_GREEDY_SWITCH',Cne='TWO_SIDED_GREEDY_SWITCH',Dne='No implementation is available for the layout processor ',Ene='IntermediateProcessorStrategy',Fne=\"Node '\",Gne='FIRST_SEPARATE',Hne='LAST_SEPARATE',Ine='Odd port side processing',Jne='org.eclipse.elk.alg.layered.intermediate.compaction',Kne='org.eclipse.elk.alg.layered.intermediate.greedyswitch',Lne='org.eclipse.elk.alg.layered.p3order.counting',Mne={225:1},Nne='org.eclipse.elk.alg.layered.intermediate.loops',One='org.eclipse.elk.alg.layered.intermediate.loops.ordering',Pne='org.eclipse.elk.alg.layered.intermediate.loops.routing',Qne='org.eclipse.elk.alg.layered.intermediate.preserveorder',Rne='org.eclipse.elk.alg.layered.intermediate.wrapping',Sne='org.eclipse.elk.alg.layered.options',Tne='INTERACTIVE',Une='DEPTH_FIRST',Vne='EDGE_LENGTH',Wne='SELF_LOOPS',Xne='firstTryWithInitialOrder',Yne='org.eclipse.elk.layered.directionCongruency',Zne='org.eclipse.elk.layered.feedbackEdges',$ne='org.eclipse.elk.layered.interactiveReferencePoint',_ne='org.eclipse.elk.layered.mergeEdges',aoe='org.eclipse.elk.layered.mergeHierarchyEdges',boe='org.eclipse.elk.layered.allowNonFlowPortsToSwitchSides',coe='org.eclipse.elk.layered.portSortingStrategy',doe='org.eclipse.elk.layered.thoroughness',eoe='org.eclipse.elk.layered.unnecessaryBendpoints',foe='org.eclipse.elk.layered.generatePositionAndLayerIds',goe='org.eclipse.elk.layered.cycleBreaking.strategy',hoe='org.eclipse.elk.layered.layering.strategy',ioe='org.eclipse.elk.layered.layering.layerConstraint',joe='org.eclipse.elk.layered.layering.layerChoiceConstraint',koe='org.eclipse.elk.layered.layering.layerId',loe='org.eclipse.elk.layered.layering.minWidth.upperBoundOnWidth',moe='org.eclipse.elk.layered.layering.minWidth.upperLayerEstimationScalingFactor',noe='org.eclipse.elk.layered.layering.nodePromotion.strategy',ooe='org.eclipse.elk.layered.layering.nodePromotion.maxIterations',poe='org.eclipse.elk.layered.layering.coffmanGraham.layerBound',qoe='org.eclipse.elk.layered.crossingMinimization.strategy',roe='org.eclipse.elk.layered.crossingMinimization.forceNodeModelOrder',soe='org.eclipse.elk.layered.crossingMinimization.hierarchicalSweepiness',toe='org.eclipse.elk.layered.crossingMinimization.semiInteractive',uoe='org.eclipse.elk.layered.crossingMinimization.positionChoiceConstraint',voe='org.eclipse.elk.layered.crossingMinimization.positionId',woe='org.eclipse.elk.layered.crossingMinimization.greedySwitch.activationThreshold',xoe='org.eclipse.elk.layered.crossingMinimization.greedySwitch.type',yoe='org.eclipse.elk.layered.crossingMinimization.greedySwitchHierarchical.type',zoe='org.eclipse.elk.layered.nodePlacement.strategy',Aoe='org.eclipse.elk.layered.nodePlacement.favorStraightEdges',Boe='org.eclipse.elk.layered.nodePlacement.bk.edgeStraightening',Coe='org.eclipse.elk.layered.nodePlacement.bk.fixedAlignment',Doe='org.eclipse.elk.layered.nodePlacement.linearSegments.deflectionDampening',Eoe='org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility',Foe='org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility.default',Goe='org.eclipse.elk.layered.edgeRouting.selfLoopDistribution',Hoe='org.eclipse.elk.layered.edgeRouting.selfLoopOrdering',Ioe='org.eclipse.elk.layered.edgeRouting.splines.mode',Joe='org.eclipse.elk.layered.edgeRouting.splines.sloppy.layerSpacingFactor',Koe='org.eclipse.elk.layered.edgeRouting.polyline.slopedEdgeZoneWidth',Loe='org.eclipse.elk.layered.spacing.baseValue',Moe='org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers',Noe='org.eclipse.elk.layered.spacing.edgeEdgeBetweenLayers',Ooe='org.eclipse.elk.layered.spacing.nodeNodeBetweenLayers',Poe='org.eclipse.elk.layered.priority.direction',Qoe='org.eclipse.elk.layered.priority.shortness',Roe='org.eclipse.elk.layered.priority.straightness',Soe='org.eclipse.elk.layered.compaction.connectedComponents',Toe='org.eclipse.elk.layered.compaction.postCompaction.strategy',Uoe='org.eclipse.elk.layered.compaction.postCompaction.constraints',Voe='org.eclipse.elk.layered.highDegreeNodes.treatment',Woe='org.eclipse.elk.layered.highDegreeNodes.threshold',Xoe='org.eclipse.elk.layered.highDegreeNodes.treeHeight',Yoe='org.eclipse.elk.layered.wrapping.strategy',Zoe='org.eclipse.elk.layered.wrapping.additionalEdgeSpacing',$oe='org.eclipse.elk.layered.wrapping.correctionFactor',_oe='org.eclipse.elk.layered.wrapping.cutting.strategy',ape='org.eclipse.elk.layered.wrapping.cutting.cuts',bpe='org.eclipse.elk.layered.wrapping.cutting.msd.freedom',cpe='org.eclipse.elk.layered.wrapping.validify.strategy',dpe='org.eclipse.elk.layered.wrapping.validify.forbiddenIndices',epe='org.eclipse.elk.layered.wrapping.multiEdge.improveCuts',fpe='org.eclipse.elk.layered.wrapping.multiEdge.distancePenalty',gpe='org.eclipse.elk.layered.wrapping.multiEdge.improveWrappedEdges',hpe='org.eclipse.elk.layered.edgeLabels.sideSelection',ipe='org.eclipse.elk.layered.edgeLabels.centerLabelPlacementStrategy',jpe='org.eclipse.elk.layered.considerModelOrder.strategy',kpe='org.eclipse.elk.layered.considerModelOrder.noModelOrder',lpe='org.eclipse.elk.layered.considerModelOrder.components',mpe='org.eclipse.elk.layered.considerModelOrder.longEdgeStrategy',npe='org.eclipse.elk.layered.considerModelOrder.crossingCounterNodeInfluence',ope='org.eclipse.elk.layered.considerModelOrder.crossingCounterPortInfluence',ppe='layering',qpe='layering.minWidth',rpe='layering.nodePromotion',spe='crossingMinimization',tpe='org.eclipse.elk.hierarchyHandling',upe='crossingMinimization.greedySwitch',vpe='nodePlacement',wpe='nodePlacement.bk',xpe='edgeRouting',ype='org.eclipse.elk.edgeRouting',zpe='spacing',Ape='priority',Bpe='compaction',Cpe='compaction.postCompaction',Dpe='Specifies whether and how post-process compaction is applied.',Epe='highDegreeNodes',Fpe='wrapping',Gpe='wrapping.cutting',Hpe='wrapping.validify',Ipe='wrapping.multiEdge',Jpe='edgeLabels',Kpe='considerModelOrder',Lpe='org.eclipse.elk.spacing.commentComment',Mpe='org.eclipse.elk.spacing.commentNode',Npe='org.eclipse.elk.spacing.edgeEdge',Ope='org.eclipse.elk.spacing.edgeNode',Ppe='org.eclipse.elk.spacing.labelLabel',Qpe='org.eclipse.elk.spacing.labelPortHorizontal',Rpe='org.eclipse.elk.spacing.labelPortVertical',Spe='org.eclipse.elk.spacing.labelNode',Tpe='org.eclipse.elk.spacing.nodeSelfLoop',Upe='org.eclipse.elk.spacing.portPort',Vpe='org.eclipse.elk.spacing.individual',Wpe='org.eclipse.elk.port.borderOffset',Xpe='org.eclipse.elk.noLayout',Ype='org.eclipse.elk.port.side',Zpe='org.eclipse.elk.debugMode',$pe='org.eclipse.elk.alignment',_pe='org.eclipse.elk.insideSelfLoops.activate',aqe='org.eclipse.elk.insideSelfLoops.yo',bqe='org.eclipse.elk.nodeSize.fixedGraphSize',cqe='org.eclipse.elk.direction',dqe='org.eclipse.elk.nodeLabels.padding',eqe='org.eclipse.elk.portLabels.nextToPortIfPossible',fqe='org.eclipse.elk.portLabels.treatAsGroup',gqe='org.eclipse.elk.portAlignment.default',hqe='org.eclipse.elk.portAlignment.north',iqe='org.eclipse.elk.portAlignment.south',jqe='org.eclipse.elk.portAlignment.west',kqe='org.eclipse.elk.portAlignment.east',lqe='org.eclipse.elk.contentAlignment',mqe='org.eclipse.elk.junctionPoints',nqe='org.eclipse.elk.edgeLabels.placement',oqe='org.eclipse.elk.port.index',pqe='org.eclipse.elk.commentBox',qqe='org.eclipse.elk.hypernode',rqe='org.eclipse.elk.port.anchor',sqe='org.eclipse.elk.partitioning.activate',tqe='org.eclipse.elk.partitioning.partition',uqe='org.eclipse.elk.position',vqe='org.eclipse.elk.margins',wqe='org.eclipse.elk.spacing.portsSurrounding',xqe='org.eclipse.elk.interactiveLayout',yqe='org.eclipse.elk.core.util',zqe={3:1,4:1,5:1,593:1},Aqe='NETWORK_SIMPLEX',Bqe={123:1,51:1},Cqe='org.eclipse.elk.alg.layered.p1cycles',Dqe='org.eclipse.elk.alg.layered.p2layers',Eqe={402:1,225:1},Fqe={832:1,3:1,4:1},Gqe='org.eclipse.elk.alg.layered.p3order',Hqe='org.eclipse.elk.alg.layered.p4nodes',Iqe={3:1,4:1,5:1,840:1},Jqe=1.0E-5,Kqe='org.eclipse.elk.alg.layered.p4nodes.bk',Lqe='org.eclipse.elk.alg.layered.p5edges',Mqe='org.eclipse.elk.alg.layered.p5edges.orthogonal',Nqe='org.eclipse.elk.alg.layered.p5edges.orthogonal.direction',Oqe=1.0E-6,Pqe='org.eclipse.elk.alg.layered.p5edges.splines',Qqe=0.09999999999999998,Rqe=1.0E-8,Sqe=4.71238898038469,Tqe=3.141592653589793,Uqe='org.eclipse.elk.alg.mrtree',Vqe='org.eclipse.elk.alg.mrtree.graph',Wqe='org.eclipse.elk.alg.mrtree.intermediate',Xqe='Set neighbors in level',Yqe='DESCENDANTS',Zqe='org.eclipse.elk.mrtree.weighting',$qe='org.eclipse.elk.mrtree.searchOrder',_qe='org.eclipse.elk.alg.mrtree.options',are='org.eclipse.elk.mrtree',bre='org.eclipse.elk.tree',cre='org.eclipse.elk.alg.radial',dre=6.283185307179586,ere=4.9E-324,fre='org.eclipse.elk.alg.radial.intermediate',gre='org.eclipse.elk.alg.radial.intermediate.compaction',hre={3:1,4:1,5:1,106:1},ire='org.eclipse.elk.alg.radial.intermediate.optimization',jre='No implementation is available for the layout option ',kre='org.eclipse.elk.alg.radial.options',lre='org.eclipse.elk.radial.orderId',mre='org.eclipse.elk.radial.radius',nre='org.eclipse.elk.radial.compactor',ore='org.eclipse.elk.radial.compactionStepSize',pre='org.eclipse.elk.radial.sorter',qre='org.eclipse.elk.radial.wedgeCriteria',rre='org.eclipse.elk.radial.optimizationCriteria',sre='org.eclipse.elk.radial',tre='org.eclipse.elk.alg.radial.p1position.wedge',ure='org.eclipse.elk.alg.radial.sorting',vre=5.497787143782138,wre=3.9269908169872414,xre=2.356194490192345,yre='org.eclipse.elk.alg.rectpacking',zre='org.eclipse.elk.alg.rectpacking.firstiteration',Are='org.eclipse.elk.alg.rectpacking.options',Bre='org.eclipse.elk.rectpacking.optimizationGoal',Cre='org.eclipse.elk.rectpacking.lastPlaceShift',Dre='org.eclipse.elk.rectpacking.currentPosition',Ere='org.eclipse.elk.rectpacking.desiredPosition',Fre='org.eclipse.elk.rectpacking.onlyFirstIteration',Gre='org.eclipse.elk.rectpacking.rowCompaction',Hre='org.eclipse.elk.rectpacking.expandToAspectRatio',Ire='org.eclipse.elk.rectpacking.targetWidth',Jre='org.eclipse.elk.expandNodes',Kre='org.eclipse.elk.rectpacking',Lre='org.eclipse.elk.alg.rectpacking.util',Mre='No implementation available for ',Nre='org.eclipse.elk.alg.spore',Ore='org.eclipse.elk.alg.spore.options',Pre='org.eclipse.elk.sporeCompaction',Qre='org.eclipse.elk.underlyingLayoutAlgorithm',Rre='org.eclipse.elk.processingOrder.treeConstruction',Sre='org.eclipse.elk.processingOrder.spanningTreeCostFunction',Tre='org.eclipse.elk.processingOrder.preferredRoot',Ure='org.eclipse.elk.processingOrder.rootSelection',Vre='org.eclipse.elk.structure.structureExtractionStrategy',Wre='org.eclipse.elk.compaction.compactionStrategy',Xre='org.eclipse.elk.compaction.orthogonal',Yre='org.eclipse.elk.overlapRemoval.maxIterations',Zre='org.eclipse.elk.overlapRemoval.runScanline',$re='processingOrder',_re='overlapRemoval',ase='org.eclipse.elk.sporeOverlap',bse='org.eclipse.elk.alg.spore.p1structure',cse='org.eclipse.elk.alg.spore.p2processingorder',dse='org.eclipse.elk.alg.spore.p3execution',ese='Invalid index: ',fse='org.eclipse.elk.core.alg',gse={331:1},hse={288:1},ise='Make sure its type is registered with the ',jse=' utility class.',kse='true',lse='false',mse=\"Couldn't clone property '\",nse=0.05,ose='org.eclipse.elk.core.options',pse=1.2999999523162842,qse='org.eclipse.elk.box',rse='org.eclipse.elk.box.packingMode',sse='org.eclipse.elk.algorithm',tse='org.eclipse.elk.resolvedAlgorithm',use='org.eclipse.elk.bendPoints',vse='org.eclipse.elk.labelManager',wse='org.eclipse.elk.scaleFactor',xse='org.eclipse.elk.animate',yse='org.eclipse.elk.animTimeFactor',zse='org.eclipse.elk.layoutAncestors',Ase='org.eclipse.elk.maxAnimTime',Bse='org.eclipse.elk.minAnimTime',Cse='org.eclipse.elk.progressBar',Dse='org.eclipse.elk.validateGraph',Ese='org.eclipse.elk.validateOptions',Fse='org.eclipse.elk.zoomToFit',Gse='org.eclipse.elk.font.name',Hse='org.eclipse.elk.font.size',Ise='org.eclipse.elk.edge.type',Jse='partitioning',Kse='nodeLabels',Lse='portAlignment',Mse='nodeSize',Nse='port',Ose='portLabels',Pse='insideSelfLoops',Qse='org.eclipse.elk.fixed',Rse='org.eclipse.elk.random',Sse='port must have a parent node to calculate the port side',Tse='The edge needs to have exactly one edge section. Found: ',Use='org.eclipse.elk.core.util.adapters',Vse='org.eclipse.emf.ecore',Wse='org.eclipse.elk.graph',Xse='EMapPropertyHolder',Yse='ElkBendPoint',Zse='ElkGraphElement',$se='ElkConnectableShape',_se='ElkEdge',ate='ElkEdgeSection',bte='EModelElement',cte='ENamedElement',dte='ElkLabel',ete='ElkNode',fte='ElkPort',gte={92:1,90:1},hte='org.eclipse.emf.common.notify.impl',ite=\"The feature '\",jte=\"' is not a valid changeable feature\",kte='Expecting null',lte=\"' is not a valid feature\",mte='The feature ID',nte=' is not a valid feature ID',ote=32768,pte={105:1,92:1,90:1,56:1,49:1,97:1},qte='org.eclipse.emf.ecore.impl',rte='org.eclipse.elk.graph.impl',ste='Recursive containment not allowed for ',tte=\"The datatype '\",ute=\"' is not a valid classifier\",vte=\"The value '\",wte={190:1,3:1,4:1},xte=\"The class '\",yte='http://www.eclipse.org/elk/ElkGraph',zte=1024,Ate='property',Bte='value',Cte='source',Dte='properties',Ete='identifier',Fte='height',Gte='width',Hte='parent',Ite='text',Jte='children',Kte='hierarchical',Lte='sources',Mte='targets',Nte='sections',Ote='bendPoints',Pte='outgoingShape',Qte='incomingShape',Rte='outgoingSections',Ste='incomingSections',Tte='org.eclipse.emf.common.util',Ute='Severe implementation error in the Json to ElkGraph importer.',Vte='id',Wte='org.eclipse.elk.graph.json',Xte='Unhandled parameter types: ',Yte='startPoint',Zte=\"An edge must have at least one source and one target (edge id: '\",$te=\"').\",_te='Referenced edge section does not exist: ',aue=\" (edge id: '\",bue='target',cue='sourcePoint',due='targetPoint',eue='group',fue='name',gue='connectableShape cannot be null',hue='edge cannot be null',iue=\"Passed edge is not 'simple'.\",jue='org.eclipse.elk.graph.util',kue=\"The 'no duplicates' constraint is violated\",lue='targetIndex=',mue=', size=',nue='sourceIndex=',oue={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1},pue={3:1,4:1,20:1,28:1,52:1,14:1,47:1,15:1,54:1,67:1,63:1,58:1,588:1},que='logging',rue='measureExecutionTime',sue='parser.parse.1',tue='parser.parse.2',uue='parser.next.1',vue='parser.next.2',wue='parser.next.3',xue='parser.next.4',yue='parser.factor.1',zue='parser.factor.2',Aue='parser.factor.3',Bue='parser.factor.4',Cue='parser.factor.5',Due='parser.factor.6',Eue='parser.atom.1',Fue='parser.atom.2',Gue='parser.atom.3',Hue='parser.atom.4',Iue='parser.atom.5',Jue='parser.cc.1',Kue='parser.cc.2',Lue='parser.cc.3',Mue='parser.cc.5',Nue='parser.cc.6',Oue='parser.cc.7',Pue='parser.cc.8',Que='parser.ope.1',Rue='parser.ope.2',Sue='parser.ope.3',Tue='parser.descape.1',Uue='parser.descape.2',Vue='parser.descape.3',Wue='parser.descape.4',Xue='parser.descape.5',Yue='parser.process.1',Zue='parser.quantifier.1',$ue='parser.quantifier.2',_ue='parser.quantifier.3',ave='parser.quantifier.4',bve='parser.quantifier.5',cve='org.eclipse.emf.common.notify',dve={415:1,672:1},eve={3:1,4:1,20:1,28:1,52:1,14:1,15:1,67:1,58:1},fve={366:1,143:1},gve='index=',hve={3:1,4:1,5:1,126:1},ive={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,58:1},jve={3:1,6:1,4:1,5:1,192:1},kve={3:1,4:1,5:1,165:1,367:1},lve=';/?:@&=+$,',mve='invalid authority: ',nve='EAnnotation',ove='ETypedElement',pve='EStructuralFeature',qve='EAttribute',rve='EClassifier',sve='EEnumLiteral',tve='EGenericType',uve='EOperation',vve='EParameter',wve='EReference',xve='ETypeParameter',yve='org.eclipse.emf.ecore.util',zve={76:1},Ave={3:1,20:1,14:1,15:1,58:1,589:1,76:1,69:1,95:1},Bve='org.eclipse.emf.ecore.util.FeatureMap$Entry',Cve=8192,Dve=2048,Eve='byte',Fve='char',Gve='double',Hve='float',Ive='int',Jve='long',Kve='short',Lve='java.lang.Object',Mve={3:1,4:1,5:1,247:1},Nve={3:1,4:1,5:1,673:1},Ove={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,69:1},Pve={3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,76:1,69:1,95:1},Qve='mixed',Rve='http:///org/eclipse/emf/ecore/util/ExtendedMetaData',Sve='kind',Tve={3:1,4:1,5:1,674:1},Uve={3:1,4:1,20:1,28:1,52:1,14:1,15:1,67:1,58:1,76:1,69:1,95:1},Vve={20:1,28:1,52:1,14:1,15:1,58:1,69:1},Wve={47:1,125:1,279:1},Xve={72:1,332:1},Yve=\"The value of type '\",Zve=\"' must be of type '\",$ve=1316,_ve='http://www.eclipse.org/emf/2002/Ecore',awe=-32768,bwe='constraints',cwe='baseType',dwe='getEStructuralFeature',ewe='getFeatureID',fwe='feature',gwe='getOperationID',hwe='operation',iwe='defaultValue',jwe='eTypeParameters',kwe='isInstance',lwe='getEEnumLiteral',mwe='eContainingClass',nwe={55:1},owe={3:1,4:1,5:1,119:1},pwe='org.eclipse.emf.ecore.resource',qwe={92:1,90:1,591:1,1935:1},rwe='org.eclipse.emf.ecore.resource.impl',swe='unspecified',twe='simple',uwe='attribute',vwe='attributeWildcard',wwe='element',xwe='elementWildcard',ywe='collapse',zwe='itemType',Awe='namespace',Bwe='##targetNamespace',Cwe='whiteSpace',Dwe='wildcards',Ewe='http://www.eclipse.org/emf/2003/XMLType',Fwe='##any',Gwe='uninitialized',Hwe='The multiplicity constraint is violated',Iwe='org.eclipse.emf.ecore.xml.type',Jwe='ProcessingInstruction',Kwe='SimpleAnyType',Lwe='XMLTypeDocumentRoot',Mwe='org.eclipse.emf.ecore.xml.type.impl',Nwe='INF',Owe='processing',Pwe='ENTITIES_._base',Qwe='minLength',Rwe='ENTITY',Swe='NCName',Twe='IDREFS_._base',Uwe='integer',Vwe='token',Wwe='pattern',Xwe='[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*',Ywe='\\\\i\\\\c*',Zwe='[\\\\i-[:]][\\\\c-[:]]*',$we='nonPositiveInteger',_we='maxInclusive',axe='NMTOKEN',bxe='NMTOKENS_._base',cxe='nonNegativeInteger',dxe='minInclusive',exe='normalizedString',fxe='unsignedByte',gxe='unsignedInt',hxe='18446744073709551615',ixe='unsignedShort',jxe='processingInstruction',kxe='org.eclipse.emf.ecore.xml.type.internal',lxe=1114111,mxe='Internal Error: shorthands: \\\\u',nxe='xml:isDigit',oxe='xml:isWord',pxe='xml:isSpace',qxe='xml:isNameChar',rxe='xml:isInitialNameChar',sxe='09\\u0660\\u0669\\u06F0\\u06F9\\u0966\\u096F\\u09E6\\u09EF\\u0A66\\u0A6F\\u0AE6\\u0AEF\\u0B66\\u0B6F\\u0BE7\\u0BEF\\u0C66\\u0C6F\\u0CE6\\u0CEF\\u0D66\\u0D6F\\u0E50\\u0E59\\u0ED0\\u0ED9\\u0F20\\u0F29',txe='AZaz\\xC0\\xD6\\xD8\\xF6\\xF8\\u0131\\u0134\\u013E\\u0141\\u0148\\u014A\\u017E\\u0180\\u01C3\\u01CD\\u01F0\\u01F4\\u01F5\\u01FA\\u0217\\u0250\\u02A8\\u02BB\\u02C1\\u0386\\u0386\\u0388\\u038A\\u038C\\u038C\\u038E\\u03A1\\u03A3\\u03CE\\u03D0\\u03D6\\u03DA\\u03DA\\u03DC\\u03DC\\u03DE\\u03DE\\u03E0\\u03E0\\u03E2\\u03F3\\u0401\\u040C\\u040E\\u044F\\u0451\\u045C\\u045E\\u0481\\u0490\\u04C4\\u04C7\\u04C8\\u04CB\\u04CC\\u04D0\\u04EB\\u04EE\\u04F5\\u04F8\\u04F9\\u0531\\u0556\\u0559\\u0559\\u0561\\u0586\\u05D0\\u05EA\\u05F0\\u05F2\\u0621\\u063A\\u0641\\u064A\\u0671\\u06B7\\u06BA\\u06BE\\u06C0\\u06CE\\u06D0\\u06D3\\u06D5\\u06D5\\u06E5\\u06E6\\u0905\\u0939\\u093D\\u093D\\u0958\\u0961\\u0985\\u098C\\u098F\\u0990\\u0993\\u09A8\\u09AA\\u09B0\\u09B2\\u09B2\\u09B6\\u09B9\\u09DC\\u09DD\\u09DF\\u09E1\\u09F0\\u09F1\\u0A05\\u0A0A\\u0A0F\\u0A10\\u0A13\\u0A28\\u0A2A\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59\\u0A5C\\u0A5E\\u0A5E\\u0A72\\u0A74\\u0A85\\u0A8B\\u0A8D\\u0A8D\\u0A8F\\u0A91\\u0A93\\u0AA8\\u0AAA\\u0AB0\\u0AB2\\u0AB3\\u0AB5\\u0AB9\\u0ABD\\u0ABD\\u0AE0\\u0AE0\\u0B05\\u0B0C\\u0B0F\\u0B10\\u0B13\\u0B28\\u0B2A\\u0B30\\u0B32\\u0B33\\u0B36\\u0B39\\u0B3D\\u0B3D\\u0B5C\\u0B5D\\u0B5F\\u0B61\\u0B85\\u0B8A\\u0B8E\\u0B90\\u0B92\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8\\u0BAA\\u0BAE\\u0BB5\\u0BB7\\u0BB9\\u0C05\\u0C0C\\u0C0E\\u0C10\\u0C12\\u0C28\\u0C2A\\u0C33\\u0C35\\u0C39\\u0C60\\u0C61\\u0C85\\u0C8C\\u0C8E\\u0C90\\u0C92\\u0CA8\\u0CAA\\u0CB3\\u0CB5\\u0CB9\\u0CDE\\u0CDE\\u0CE0\\u0CE1\\u0D05\\u0D0C\\u0D0E\\u0D10\\u0D12\\u0D28\\u0D2A\\u0D39\\u0D60\\u0D61\\u0E01\\u0E2E\\u0E30\\u0E30\\u0E32\\u0E33\\u0E40\\u0E45\\u0E81\\u0E82\\u0E84\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8A\\u0E8D\\u0E8D\\u0E94\\u0E97\\u0E99\\u0E9F\\u0EA1\\u0EA3\\u0EA5\\u0EA5\\u0EA7\\u0EA7\\u0EAA\\u0EAB\\u0EAD\\u0EAE\\u0EB0\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EBD\\u0EC0\\u0EC4\\u0F40\\u0F47\\u0F49\\u0F69\\u10A0\\u10C5\\u10D0\\u10F6\\u1100\\u1100\\u1102\\u1103\\u1105\\u1107\\u1109\\u1109\\u110B\\u110C\\u110E\\u1112\\u113C\\u113C\\u113E\\u113E\\u1140\\u1140\\u114C\\u114C\\u114E\\u114E\\u1150\\u1150\\u1154\\u1155\\u1159\\u1159\\u115F\\u1161\\u1163\\u1163\\u1165\\u1165\\u1167\\u1167\\u1169\\u1169\\u116D\\u116E\\u1172\\u1173\\u1175\\u1175\\u119E\\u119E\\u11A8\\u11A8\\u11AB\\u11AB\\u11AE\\u11AF\\u11B7\\u11B8\\u11BA\\u11BA\\u11BC\\u11C2\\u11EB\\u11EB\\u11F0\\u11F0\\u11F9\\u11F9\\u1E00\\u1E9B\\u1EA0\\u1EF9\\u1F00\\u1F15\\u1F18\\u1F1D\\u1F20\\u1F45\\u1F48\\u1F4D\\u1F50\\u1F57\\u1F59\\u1F59\\u1F5B\\u1F5B\\u1F5D\\u1F5D\\u1F5F\\u1F7D\\u1F80\\u1FB4\\u1FB6\\u1FBC\\u1FBE\\u1FBE\\u1FC2\\u1FC4\\u1FC6\\u1FCC\\u1FD0\\u1FD3\\u1FD6\\u1FDB\\u1FE0\\u1FEC\\u1FF2\\u1FF4\\u1FF6\\u1FFC\\u2126\\u2126\\u212A\\u212B\\u212E\\u212E\\u2180\\u2182\\u3007\\u3007\\u3021\\u3029\\u3041\\u3094\\u30A1\\u30FA\\u3105\\u312C\\u4E00\\u9FA5\\uAC00\\uD7A3',uxe='Private Use',vxe='ASSIGNED',wxe='\\x00\\x7F\\x80\\xFF\\u0100\\u017F\\u0180\\u024F\\u0250\\u02AF\\u02B0\\u02FF\\u0300\\u036F\\u0370\\u03FF\\u0400\\u04FF\\u0530\\u058F\\u0590\\u05FF\\u0600\\u06FF\\u0700\\u074F\\u0780\\u07BF\\u0900\\u097F\\u0980\\u09FF\\u0A00\\u0A7F\\u0A80\\u0AFF\\u0B00\\u0B7F\\u0B80\\u0BFF\\u0C00\\u0C7F\\u0C80\\u0CFF\\u0D00\\u0D7F\\u0D80\\u0DFF\\u0E00\\u0E7F\\u0E80\\u0EFF\\u0F00\\u0FFF\\u1000\\u109F\\u10A0\\u10FF\\u1100\\u11FF\\u1200\\u137F\\u13A0\\u13FF\\u1400\\u167F\\u1680\\u169F\\u16A0\\u16FF\\u1780\\u17FF\\u1800\\u18AF\\u1E00\\u1EFF\\u1F00\\u1FFF\\u2000\\u206F\\u2070\\u209F\\u20A0\\u20CF\\u20D0\\u20FF\\u2100\\u214F\\u2150\\u218F\\u2190\\u21FF\\u2200\\u22FF\\u2300\\u23FF\\u2400\\u243F\\u2440\\u245F\\u2460\\u24FF\\u2500\\u257F\\u2580\\u259F\\u25A0\\u25FF\\u2600\\u26FF\\u2700\\u27BF\\u2800\\u28FF\\u2E80\\u2EFF\\u2F00\\u2FDF\\u2FF0\\u2FFF\\u3000\\u303F\\u3040\\u309F\\u30A0\\u30FF\\u3100\\u312F\\u3130\\u318F\\u3190\\u319F\\u31A0\\u31BF\\u3200\\u32FF\\u3300\\u33FF\\u3400\\u4DB5\\u4E00\\u9FFF\\uA000\\uA48F\\uA490\\uA4CF\\uAC00\\uD7A3\\uE000\\uF8FF\\uF900\\uFAFF\\uFB00\\uFB4F\\uFB50\\uFDFF\\uFE20\\uFE2F\\uFE30\\uFE4F\\uFE50\\uFE6F\\uFE70\\uFEFE\\uFEFF\\uFEFF\\uFF00\\uFFEF',xxe='UNASSIGNED',yxe={3:1,117:1},zxe='org.eclipse.emf.ecore.xml.type.util',Axe={3:1,4:1,5:1,368:1},Bxe='org.eclipse.xtext.xbase.lib',Cxe='Cannot add elements to a Range',Dxe='Cannot set elements in a Range',Exe='Cannot remove elements from a Range',Fxe='locale',Gxe='default',Hxe='user.agent';var _,_bb,Wbb,tbb=-1;$wnd.goog=$wnd.goog||{};$wnd.goog.global=$wnd.goog.global||$wnd;acb();bcb(1,null,{},nb);_.Fb=function ob(a){return mb(this,a)};_.Gb=function qb(){return this.gm};_.Hb=function sb(){return FCb(this)};_.Ib=function ub(){var a;return hdb(rb(this))+'@'+(a=tb(this)>>>0,a.toString(16))};_.equals=function(a){return this.Fb(a)};_.hashCode=function(){return this.Hb()};_.toString=function(){return this.Ib()};var xD,yD,zD;bcb(290,1,{290:1,2026:1},jdb);_.le=function kdb(a){var b;b=new jdb;b.i=4;a>1?(b.c=rdb(this,a-1)):(b.c=this);return b};_.me=function qdb(){fdb(this);return this.b};_.ne=function sdb(){return hdb(this)};_.oe=function udb(){return fdb(this),this.k};_.pe=function wdb(){return (this.i&4)!=0};_.qe=function xdb(){return (this.i&1)!=0};_.Ib=function Adb(){return idb(this)};_.i=0;var edb=1;var SI=mdb(Phe,'Object',1);var AI=mdb(Phe,'Class',290);bcb(1998,1,Qhe);var $D=mdb(Rhe,'Optional',1998);bcb(1170,1998,Qhe,xb);_.Fb=function yb(a){return a===this};_.Hb=function zb(){return 2040732332};_.Ib=function Ab(){return 'Optional.absent()'};_.Jb=function Bb(a){Qb(a);return wb(),vb};var vb;var YD=mdb(Rhe,'Absent',1170);bcb(628,1,{},Gb);var ZD=mdb(Rhe,'Joiner',628);var _D=odb(Rhe,'Predicate');bcb(582,1,{169:1,582:1,3:1,45:1},Yb);_.Mb=function ac(a){return Xb(this,a)};_.Lb=function Zb(a){return Xb(this,a)};_.Fb=function $b(a){var b;if(JD(a,582)){b=BD(a,582);return At(this.a,b.a)}return false};_.Hb=function _b(){return qmb(this.a)+306654252};_.Ib=function bc(){return Wb(this.a)};var aE=mdb(Rhe,'Predicates/AndPredicate',582);bcb(408,1998,{408:1,3:1},cc);_.Fb=function dc(a){var b;if(JD(a,408)){b=BD(a,408);return pb(this.a,b.a)}return false};_.Hb=function ec(){return 1502476572+tb(this.a)};_.Ib=function fc(){return Whe+this.a+')'};_.Jb=function gc(a){return new cc(Rb(a.Kb(this.a),'the Function passed to Optional.transform() must not return null.'))};var bE=mdb(Rhe,'Present',408);bcb(198,1,Yhe);_.Nb=function kc(a){Rrb(this,a)};_.Qb=function lc(){jc()};var MH=mdb(Zhe,'UnmodifiableIterator',198);bcb(1978,198,$he);_.Qb=function nc(){jc()};_.Rb=function mc(a){throw vbb(new bgb)};_.Wb=function oc(a){throw vbb(new bgb)};var NH=mdb(Zhe,'UnmodifiableListIterator',1978);bcb(386,1978,$he);_.Ob=function rc(){return this.c0};_.Pb=function tc(){if(this.c>=this.d){throw vbb(new utb)}return this.Xb(this.c++)};_.Tb=function uc(){return this.c};_.Ub=function vc(){if(this.c<=0){throw vbb(new utb)}return this.Xb(--this.c)};_.Vb=function wc(){return this.c-1};_.c=0;_.d=0;var cE=mdb(Zhe,'AbstractIndexedListIterator',386);bcb(699,198,Yhe);_.Ob=function Ac(){return xc(this)};_.Pb=function Bc(){return yc(this)};_.e=1;var dE=mdb(Zhe,'AbstractIterator',699);bcb(1986,1,{224:1});_.Zb=function Hc(){var a;return a=this.f,!a?(this.f=this.ac()):a};_.Fb=function Ic(a){return hw(this,a)};_.Hb=function Jc(){return tb(this.Zb())};_.dc=function Kc(){return this.gc()==0};_.ec=function Lc(){return Ec(this)};_.Ib=function Mc(){return fcb(this.Zb())};var IE=mdb(Zhe,'AbstractMultimap',1986);bcb(726,1986,_he);_.$b=function Xc(){Nc(this)};_._b=function Yc(a){return Oc(this,a)};_.ac=function Zc(){return new ne(this,this.c)};_.ic=function $c(a){return this.hc()};_.bc=function _c(){return new zf(this,this.c)};_.jc=function ad(){return this.mc(this.hc())};_.kc=function bd(){return new Hd(this)};_.lc=function cd(){return Yj(this.c.vc().Nc(),new $g,64,this.d)};_.cc=function dd(a){return Qc(this,a)};_.fc=function gd(a){return Sc(this,a)};_.gc=function hd(){return this.d};_.mc=function jd(a){return mmb(),new lnb(a)};_.nc=function kd(){return new Dd(this)};_.oc=function ld(){return Yj(this.c.Cc().Nc(),new Fd,64,this.d)};_.pc=function md(a,b){return new dg(this,a,b,null)};_.d=0;var DE=mdb(Zhe,'AbstractMapBasedMultimap',726);bcb(1631,726,_he);_.hc=function pd(){return new Skb(this.a)};_.jc=function qd(){return mmb(),mmb(),jmb};_.cc=function sd(a){return BD(Qc(this,a),15)};_.fc=function ud(a){return BD(Sc(this,a),15)};_.Zb=function od(){return nd(this)};_.Fb=function rd(a){return hw(this,a)};_.qc=function td(a){return BD(Qc(this,a),15)};_.rc=function vd(a){return BD(Sc(this,a),15)};_.mc=function wd(a){return vmb(BD(a,15))};_.pc=function xd(a,b){return Vc(this,a,BD(b,15),null)};var eE=mdb(Zhe,'AbstractListMultimap',1631);bcb(732,1,aie);_.Nb=function zd(a){Rrb(this,a)};_.Ob=function Ad(){return this.c.Ob()||this.e.Ob()};_.Pb=function Bd(){var a;if(!this.e.Ob()){a=BD(this.c.Pb(),42);this.b=a.cd();this.a=BD(a.dd(),14);this.e=this.a.Kc()}return this.sc(this.b,this.e.Pb())};_.Qb=function Cd(){this.e.Qb();this.a.dc()&&this.c.Qb();--this.d.d};var mE=mdb(Zhe,'AbstractMapBasedMultimap/Itr',732);bcb(1099,732,aie,Dd);_.sc=function Ed(a,b){return b};var fE=mdb(Zhe,'AbstractMapBasedMultimap/1',1099);bcb(1100,1,{},Fd);_.Kb=function Gd(a){return BD(a,14).Nc()};var gE=mdb(Zhe,'AbstractMapBasedMultimap/1methodref$spliterator$Type',1100);bcb(1101,732,aie,Hd);_.sc=function Id(a,b){return new Wo(a,b)};var hE=mdb(Zhe,'AbstractMapBasedMultimap/2',1101);var DK=odb(bie,'Map');bcb(1967,1,cie);_.wc=function Td(a){stb(this,a)};_.yc=function $d(a,b,c){return ttb(this,a,b,c)};_.$b=function Od(){this.vc().$b()};_.tc=function Pd(a){return Jd(this,a)};_._b=function Qd(a){return !!Kd(this,a,false)};_.uc=function Rd(a){var b,c,d;for(c=this.vc().Kc();c.Ob();){b=BD(c.Pb(),42);d=b.dd();if(PD(a)===PD(d)||a!=null&&pb(a,d)){return true}}return false};_.Fb=function Sd(a){var b,c,d;if(a===this){return true}if(!JD(a,83)){return false}d=BD(a,83);if(this.gc()!=d.gc()){return false}for(c=d.vc().Kc();c.Ob();){b=BD(c.Pb(),42);if(!this.tc(b)){return false}}return true};_.xc=function Ud(a){return Wd(Kd(this,a,false))};_.Hb=function Xd(){return pmb(this.vc())};_.dc=function Yd(){return this.gc()==0};_.ec=function Zd(){return new Pib(this)};_.zc=function _d(a,b){throw vbb(new cgb('Put not supported on this map'))};_.Ac=function ae(a){Ld(this,a)};_.Bc=function be(a){return Wd(Kd(this,a,true))};_.gc=function ce(){return this.vc().gc()};_.Ib=function de(){return Md(this)};_.Cc=function ee(){return new $ib(this)};var sJ=mdb(bie,'AbstractMap',1967);bcb(1987,1967,cie);_.bc=function ge(){return new rf(this)};_.vc=function he(){return fe(this)};_.ec=function ie(){var a;a=this.g;return !a?(this.g=this.bc()):a};_.Cc=function je(){var a;a=this.i;return !a?(this.i=new Zv(this)):a};var bH=mdb(Zhe,'Maps/ViewCachingAbstractMap',1987);bcb(389,1987,cie,ne);_.xc=function se(a){return ke(this,a)};_.Bc=function ve(a){return le(this,a)};_.$b=function oe(){this.d==this.e.c?this.e.$b():ir(new mf(this))};_._b=function pe(a){return Gv(this.d,a)};_.Ec=function qe(){return new df(this)};_.Dc=function(){return this.Ec()};_.Fb=function re(a){return this===a||pb(this.d,a)};_.Hb=function te(){return tb(this.d)};_.ec=function ue(){return this.e.ec()};_.gc=function we(){return this.d.gc()};_.Ib=function xe(){return fcb(this.d)};var lE=mdb(Zhe,'AbstractMapBasedMultimap/AsMap',389);var KI=odb(Phe,'Iterable');bcb(28,1,die);_.Jc=function Le(a){reb(this,a)};_.Lc=function Ne(){return this.Oc()};_.Nc=function Pe(){return new Kub(this,0)};_.Oc=function Qe(){return new YAb(null,this.Nc())};_.Fc=function Ge(a){throw vbb(new cgb('Add not supported on this collection'))};_.Gc=function He(a){return ye(this,a)};_.$b=function Ie(){Ae(this)};_.Hc=function Je(a){return ze(this,a,false)};_.Ic=function Ke(a){return Be(this,a)};_.dc=function Me(){return this.gc()==0};_.Mc=function Oe(a){return ze(this,a,true)};_.Pc=function Re(){return De(this)};_.Qc=function Se(a){return Ee(this,a)};_.Ib=function Te(){return Fe(this)};var dJ=mdb(bie,'AbstractCollection',28);var LK=odb(bie,'Set');bcb(eie,28,fie);_.Nc=function Ye(){return new Kub(this,1)};_.Fb=function We(a){return Ue(this,a)};_.Hb=function Xe(){return pmb(this)};var zJ=mdb(bie,'AbstractSet',eie);bcb(1970,eie,fie);var BH=mdb(Zhe,'Sets/ImprovedAbstractSet',1970);bcb(1971,1970,fie);_.$b=function $e(){this.Rc().$b()};_.Hc=function _e(a){return Ze(this,a)};_.dc=function af(){return this.Rc().dc()};_.Mc=function bf(a){var b;if(this.Hc(a)){b=BD(a,42);return this.Rc().ec().Mc(b.cd())}return false};_.gc=function cf(){return this.Rc().gc()};var WG=mdb(Zhe,'Maps/EntrySet',1971);bcb(1097,1971,fie,df);_.Hc=function ef(a){return Ck(this.a.d.vc(),a)};_.Kc=function ff(){return new mf(this.a)};_.Rc=function gf(){return this.a};_.Mc=function hf(a){var b;if(!Ck(this.a.d.vc(),a)){return false}b=BD(a,42);Tc(this.a.e,b.cd());return true};_.Nc=function jf(){return $j(this.a.d.vc().Nc(),new kf(this.a))};var jE=mdb(Zhe,'AbstractMapBasedMultimap/AsMap/AsMapEntries',1097);bcb(1098,1,{},kf);_.Kb=function lf(a){return me(this.a,BD(a,42))};var iE=mdb(Zhe,'AbstractMapBasedMultimap/AsMap/AsMapEntries/0methodref$wrapEntry$Type',1098);bcb(730,1,aie,mf);_.Nb=function nf(a){Rrb(this,a)};_.Pb=function pf(){var a;return a=BD(this.b.Pb(),42),this.a=BD(a.dd(),14),me(this.c,a)};_.Ob=function of(){return this.b.Ob()};_.Qb=function qf(){Vb(!!this.a);this.b.Qb();this.c.e.d-=this.a.gc();this.a.$b();this.a=null};var kE=mdb(Zhe,'AbstractMapBasedMultimap/AsMap/AsMapIterator',730);bcb(532,1970,fie,rf);_.$b=function sf(){this.b.$b()};_.Hc=function tf(a){return this.b._b(a)};_.Jc=function uf(a){Qb(a);this.b.wc(new Xv(a))};_.dc=function vf(){return this.b.dc()};_.Kc=function wf(){return new Mv(this.b.vc().Kc())};_.Mc=function xf(a){if(this.b._b(a)){this.b.Bc(a);return true}return false};_.gc=function yf(){return this.b.gc()};var $G=mdb(Zhe,'Maps/KeySet',532);bcb(318,532,fie,zf);_.$b=function Af(){var a;ir((a=this.b.vc().Kc(),new Hf(this,a)))};_.Ic=function Bf(a){return this.b.ec().Ic(a)};_.Fb=function Cf(a){return this===a||pb(this.b.ec(),a)};_.Hb=function Df(){return tb(this.b.ec())};_.Kc=function Ef(){var a;return a=this.b.vc().Kc(),new Hf(this,a)};_.Mc=function Ff(a){var b,c;c=0;b=BD(this.b.Bc(a),14);if(b){c=b.gc();b.$b();this.a.d-=c}return c>0};_.Nc=function Gf(){return this.b.ec().Nc()};var oE=mdb(Zhe,'AbstractMapBasedMultimap/KeySet',318);bcb(731,1,aie,Hf);_.Nb=function If(a){Rrb(this,a)};_.Ob=function Jf(){return this.c.Ob()};_.Pb=function Kf(){this.a=BD(this.c.Pb(),42);return this.a.cd()};_.Qb=function Lf(){var a;Vb(!!this.a);a=BD(this.a.dd(),14);this.c.Qb();this.b.a.d-=a.gc();a.$b();this.a=null};var nE=mdb(Zhe,'AbstractMapBasedMultimap/KeySet/1',731);bcb(491,389,{83:1,161:1},Mf);_.bc=function Nf(){return this.Sc()};_.ec=function Pf(){return this.Tc()};_.Sc=function Of(){return new Yf(this.c,this.Uc())};_.Tc=function Qf(){var a;return a=this.b,!a?(this.b=this.Sc()):a};_.Uc=function Rf(){return BD(this.d,161)};var sE=mdb(Zhe,'AbstractMapBasedMultimap/SortedAsMap',491);bcb(542,491,gie,Sf);_.bc=function Tf(){return new $f(this.a,BD(BD(this.d,161),171))};_.Sc=function Uf(){return new $f(this.a,BD(BD(this.d,161),171))};_.ec=function Vf(){var a;return a=this.b,BD(!a?(this.b=new $f(this.a,BD(BD(this.d,161),171))):a,271)};_.Tc=function Wf(){var a;return a=this.b,BD(!a?(this.b=new $f(this.a,BD(BD(this.d,161),171))):a,271)};_.Uc=function Xf(){return BD(BD(this.d,161),171)};var pE=mdb(Zhe,'AbstractMapBasedMultimap/NavigableAsMap',542);bcb(490,318,hie,Yf);_.Nc=function Zf(){return this.b.ec().Nc()};var tE=mdb(Zhe,'AbstractMapBasedMultimap/SortedKeySet',490);bcb(388,490,iie,$f);var qE=mdb(Zhe,'AbstractMapBasedMultimap/NavigableKeySet',388);bcb(541,28,die,dg);_.Fc=function eg(a){var b,c;ag(this);c=this.d.dc();b=this.d.Fc(a);if(b){++this.f.d;c&&_f(this)}return b};_.Gc=function fg(a){var b,c,d;if(a.dc()){return false}d=(ag(this),this.d.gc());b=this.d.Gc(a);if(b){c=this.d.gc();this.f.d+=c-d;d==0&&_f(this)}return b};_.$b=function gg(){var a;a=(ag(this),this.d.gc());if(a==0){return}this.d.$b();this.f.d-=a;bg(this)};_.Hc=function hg(a){ag(this);return this.d.Hc(a)};_.Ic=function ig(a){ag(this);return this.d.Ic(a)};_.Fb=function jg(a){if(a===this){return true}ag(this);return pb(this.d,a)};_.Hb=function kg(){ag(this);return tb(this.d)};_.Kc=function lg(){ag(this);return new Gg(this)};_.Mc=function mg(a){var b;ag(this);b=this.d.Mc(a);if(b){--this.f.d;bg(this)}return b};_.gc=function ng(){return cg(this)};_.Nc=function og(){return ag(this),this.d.Nc()};_.Ib=function pg(){ag(this);return fcb(this.d)};var vE=mdb(Zhe,'AbstractMapBasedMultimap/WrappedCollection',541);var yK=odb(bie,'List');bcb(728,541,{20:1,28:1,14:1,15:1},qg);_.ad=function zg(a){ktb(this,a)};_.Nc=function Ag(){return ag(this),this.d.Nc()};_.Vc=function rg(a,b){var c;ag(this);c=this.d.dc();BD(this.d,15).Vc(a,b);++this.a.d;c&&_f(this)};_.Wc=function sg(a,b){var c,d,e;if(b.dc()){return false}e=(ag(this),this.d.gc());c=BD(this.d,15).Wc(a,b);if(c){d=this.d.gc();this.a.d+=d-e;e==0&&_f(this)}return c};_.Xb=function tg(a){ag(this);return BD(this.d,15).Xb(a)};_.Xc=function ug(a){ag(this);return BD(this.d,15).Xc(a)};_.Yc=function vg(){ag(this);return new Mg(this)};_.Zc=function wg(a){ag(this);return new Ng(this,a)};_.$c=function xg(a){var b;ag(this);b=BD(this.d,15).$c(a);--this.a.d;bg(this);return b};_._c=function yg(a,b){ag(this);return BD(this.d,15)._c(a,b)};_.bd=function Bg(a,b){ag(this);return Vc(this.a,this.e,BD(this.d,15).bd(a,b),!this.b?this:this.b)};var xE=mdb(Zhe,'AbstractMapBasedMultimap/WrappedList',728);bcb(1096,728,{20:1,28:1,14:1,15:1,54:1},Cg);var rE=mdb(Zhe,'AbstractMapBasedMultimap/RandomAccessWrappedList',1096);bcb(620,1,aie,Gg);_.Nb=function Ig(a){Rrb(this,a)};_.Ob=function Jg(){Fg(this);return this.b.Ob()};_.Pb=function Kg(){Fg(this);return this.b.Pb()};_.Qb=function Lg(){Eg(this)};var uE=mdb(Zhe,'AbstractMapBasedMultimap/WrappedCollection/WrappedIterator',620);bcb(729,620,jie,Mg,Ng);_.Qb=function Tg(){Eg(this)};_.Rb=function Og(a){var b;b=cg(this.a)==0;(Fg(this),BD(this.b,125)).Rb(a);++this.a.a.d;b&&_f(this.a)};_.Sb=function Pg(){return (Fg(this),BD(this.b,125)).Sb()};_.Tb=function Qg(){return (Fg(this),BD(this.b,125)).Tb()};_.Ub=function Rg(){return (Fg(this),BD(this.b,125)).Ub()};_.Vb=function Sg(){return (Fg(this),BD(this.b,125)).Vb()};_.Wb=function Ug(a){(Fg(this),BD(this.b,125)).Wb(a)};var wE=mdb(Zhe,'AbstractMapBasedMultimap/WrappedList/WrappedListIterator',729);bcb(727,541,hie,Vg);_.Nc=function Wg(){return ag(this),this.d.Nc()};var AE=mdb(Zhe,'AbstractMapBasedMultimap/WrappedSortedSet',727);bcb(1095,727,iie,Xg);var yE=mdb(Zhe,'AbstractMapBasedMultimap/WrappedNavigableSet',1095);bcb(1094,541,fie,Yg);_.Nc=function Zg(){return ag(this),this.d.Nc()};var zE=mdb(Zhe,'AbstractMapBasedMultimap/WrappedSet',1094);bcb(1103,1,{},$g);_.Kb=function _g(a){return fd(BD(a,42))};var BE=mdb(Zhe,'AbstractMapBasedMultimap/lambda$1$Type',1103);bcb(1102,1,{},ah);_.Kb=function bh(a){return new Wo(this.a,a)};var CE=mdb(Zhe,'AbstractMapBasedMultimap/lambda$2$Type',1102);var CK=odb(bie,'Map/Entry');bcb(345,1,kie);_.Fb=function dh(a){var b;if(JD(a,42)){b=BD(a,42);return Hb(this.cd(),b.cd())&&Hb(this.dd(),b.dd())}return false};_.Hb=function eh(){var a,b;a=this.cd();b=this.dd();return (a==null?0:tb(a))^(b==null?0:tb(b))};_.ed=function fh(a){throw vbb(new bgb)};_.Ib=function gh(){return this.cd()+'='+this.dd()};var EE=mdb(Zhe,lie,345);bcb(1988,28,die);_.$b=function hh(){this.fd().$b()};_.Hc=function ih(a){var b;if(JD(a,42)){b=BD(a,42);return Cc(this.fd(),b.cd(),b.dd())}return false};_.Mc=function jh(a){var b;if(JD(a,42)){b=BD(a,42);return Gc(this.fd(),b.cd(),b.dd())}return false};_.gc=function kh(){return this.fd().d};var fH=mdb(Zhe,'Multimaps/Entries',1988);bcb(733,1988,die,lh);_.Kc=function mh(){return this.a.kc()};_.fd=function nh(){return this.a};_.Nc=function oh(){return this.a.lc()};var FE=mdb(Zhe,'AbstractMultimap/Entries',733);bcb(734,733,fie,ph);_.Nc=function sh(){return this.a.lc()};_.Fb=function qh(a){return Ax(this,a)};_.Hb=function rh(){return Bx(this)};var GE=mdb(Zhe,'AbstractMultimap/EntrySet',734);bcb(735,28,die,th);_.$b=function uh(){this.a.$b()};_.Hc=function vh(a){return Dc(this.a,a)};_.Kc=function wh(){return this.a.nc()};_.gc=function xh(){return this.a.d};_.Nc=function yh(){return this.a.oc()};var HE=mdb(Zhe,'AbstractMultimap/Values',735);bcb(1989,28,{835:1,20:1,28:1,14:1});_.Jc=function Gh(a){Qb(a);Ah(this).Jc(new Xw(a))};_.Nc=function Kh(){var a;return a=Ah(this).Nc(),Yj(a,new cx,64|a.qd()&1296,this.a.d)};_.Fc=function Ch(a){zh();return true};_.Gc=function Dh(a){return Qb(this),Qb(a),JD(a,543)?Zw(BD(a,835)):!a.dc()&&fr(this,a.Kc())};_.Hc=function Eh(a){var b;return b=BD(Hv(nd(this.a),a),14),(!b?0:b.gc())>0};_.Fb=function Fh(a){return $w(this,a)};_.Hb=function Hh(){return tb(Ah(this))};_.dc=function Ih(){return Ah(this).dc()};_.Mc=function Jh(a){return Bw(this,a,1)>0};_.Ib=function Lh(){return fcb(Ah(this))};var KE=mdb(Zhe,'AbstractMultiset',1989);bcb(1991,1970,fie);_.$b=function Mh(){Nc(this.a.a)};_.Hc=function Nh(a){var b,c;if(JD(a,492)){c=BD(a,416);if(BD(c.a.dd(),14).gc()<=0){return false}b=Aw(this.a,c.a.cd());return b==BD(c.a.dd(),14).gc()}return false};_.Mc=function Oh(a){var b,c,d,e;if(JD(a,492)){c=BD(a,416);b=c.a.cd();d=BD(c.a.dd(),14).gc();if(d!=0){e=this.a;return ax(e,b,d)}}return false};var pH=mdb(Zhe,'Multisets/EntrySet',1991);bcb(1109,1991,fie,Ph);_.Kc=function Qh(){return new Lw(fe(nd(this.a.a)).Kc())};_.gc=function Rh(){return nd(this.a.a).gc()};var JE=mdb(Zhe,'AbstractMultiset/EntrySet',1109);bcb(619,726,_he);_.hc=function Uh(){return this.gd()};_.jc=function Vh(){return this.hd()};_.cc=function Yh(a){return this.jd(a)};_.fc=function $h(a){return this.kd(a)};_.Zb=function Th(){var a;return a=this.f,!a?(this.f=this.ac()):a};_.hd=function Wh(){return mmb(),mmb(),lmb};_.Fb=function Xh(a){return hw(this,a)};_.jd=function Zh(a){return BD(Qc(this,a),21)};_.kd=function _h(a){return BD(Sc(this,a),21)};_.mc=function ai(a){return mmb(),new zob(BD(a,21))};_.pc=function bi(a,b){return new Yg(this,a,BD(b,21))};var LE=mdb(Zhe,'AbstractSetMultimap',619);bcb(1657,619,_he);_.hc=function ei(){return new Hxb(this.b)};_.gd=function fi(){return new Hxb(this.b)};_.jc=function gi(){return Ix(new Hxb(this.b))};_.hd=function hi(){return Ix(new Hxb(this.b))};_.cc=function ii(a){return BD(BD(Qc(this,a),21),84)};_.jd=function ji(a){return BD(BD(Qc(this,a),21),84)};_.fc=function ki(a){return BD(BD(Sc(this,a),21),84)};_.kd=function li(a){return BD(BD(Sc(this,a),21),84)};_.mc=function mi(a){return JD(a,271)?Ix(BD(a,271)):(mmb(),new Zob(BD(a,84)))};_.Zb=function di(){var a;return a=this.f,!a?(this.f=JD(this.c,171)?new Sf(this,BD(this.c,171)):JD(this.c,161)?new Mf(this,BD(this.c,161)):new ne(this,this.c)):a};_.pc=function ni(a,b){return JD(b,271)?new Xg(this,a,BD(b,271)):new Vg(this,a,BD(b,84))};var NE=mdb(Zhe,'AbstractSortedSetMultimap',1657);bcb(1658,1657,_he);_.Zb=function pi(){var a;return a=this.f,BD(BD(!a?(this.f=JD(this.c,171)?new Sf(this,BD(this.c,171)):JD(this.c,161)?new Mf(this,BD(this.c,161)):new ne(this,this.c)):a,161),171)};_.ec=function ri(){var a;return a=this.i,BD(BD(!a?(this.i=JD(this.c,171)?new $f(this,BD(this.c,171)):JD(this.c,161)?new Yf(this,BD(this.c,161)):new zf(this,this.c)):a,84),271)};_.bc=function qi(){return JD(this.c,171)?new $f(this,BD(this.c,171)):JD(this.c,161)?new Yf(this,BD(this.c,161)):new zf(this,this.c)};var ME=mdb(Zhe,'AbstractSortedKeySortedSetMultimap',1658);bcb(2010,1,{1947:1});_.Fb=function si(a){return zy(this,a)};_.Hb=function ti(){var a;return pmb((a=this.g,!a?(this.g=new vi(this)):a))};_.Ib=function ui(){var a;return Md((a=this.f,!a?(this.f=new Rj(this)):a))};var QE=mdb(Zhe,'AbstractTable',2010);bcb(665,eie,fie,vi);_.$b=function wi(){Pi()};_.Hc=function xi(a){var b,c;if(JD(a,468)){b=BD(a,682);c=BD(Hv(Vi(this.a),Em(b.c.e,b.b)),83);return !!c&&Ck(c.vc(),new Wo(Em(b.c.c,b.a),Mi(b.c,b.b,b.a)))}return false};_.Kc=function yi(){return Ni(this.a)};_.Mc=function zi(a){var b,c;if(JD(a,468)){b=BD(a,682);c=BD(Hv(Vi(this.a),Em(b.c.e,b.b)),83);return !!c&&Dk(c.vc(),new Wo(Em(b.c.c,b.a),Mi(b.c,b.b,b.a)))}return false};_.gc=function Ai(){return Xi(this.a)};_.Nc=function Bi(){return Oi(this.a)};var OE=mdb(Zhe,'AbstractTable/CellSet',665);bcb(1928,28,die,Ci);_.$b=function Di(){Pi()};_.Hc=function Ei(a){return Qi(this.a,a)};_.Kc=function Fi(){return Zi(this.a)};_.gc=function Gi(){return Xi(this.a)};_.Nc=function Hi(){return $i(this.a)};var PE=mdb(Zhe,'AbstractTable/Values',1928);bcb(1632,1631,_he);var RE=mdb(Zhe,'ArrayListMultimapGwtSerializationDependencies',1632);bcb(513,1632,_he,Ji,Ki);_.hc=function Li(){return new Skb(this.a)};_.a=0;var SE=mdb(Zhe,'ArrayListMultimap',513);bcb(664,2010,{664:1,1947:1,3:1},_i);var cF=mdb(Zhe,'ArrayTable',664);bcb(1924,386,$he,aj);_.Xb=function bj(a){return new hj(this.a,a)};var TE=mdb(Zhe,'ArrayTable/1',1924);bcb(1925,1,{},cj);_.ld=function dj(a){return new hj(this.a,a)};var UE=mdb(Zhe,'ArrayTable/1methodref$getCell$Type',1925);bcb(2011,1,{682:1});_.Fb=function ej(a){var b;if(a===this){return true}if(JD(a,468)){b=BD(a,682);return Hb(Em(this.c.e,this.b),Em(b.c.e,b.b))&&Hb(Em(this.c.c,this.a),Em(b.c.c,b.a))&&Hb(Mi(this.c,this.b,this.a),Mi(b.c,b.b,b.a))}return false};_.Hb=function fj(){return Hlb(OC(GC(SI,1),Uhe,1,5,[Em(this.c.e,this.b),Em(this.c.c,this.a),Mi(this.c,this.b,this.a)]))};_.Ib=function gj(){return '('+Em(this.c.e,this.b)+','+Em(this.c.c,this.a)+')='+Mi(this.c,this.b,this.a)};var JH=mdb(Zhe,'Tables/AbstractCell',2011);bcb(468,2011,{468:1,682:1},hj);_.a=0;_.b=0;_.d=0;var VE=mdb(Zhe,'ArrayTable/2',468);bcb(1927,1,{},ij);_.ld=function jj(a){return Ti(this.a,a)};var WE=mdb(Zhe,'ArrayTable/2methodref$getValue$Type',1927);bcb(1926,386,$he,kj);_.Xb=function lj(a){return Ti(this.a,a)};var XE=mdb(Zhe,'ArrayTable/3',1926);bcb(1979,1967,cie);_.$b=function nj(){ir(this.kc())};_.vc=function oj(){return new Sv(this)};_.lc=function pj(){return new Mub(this.kc(),this.gc())};var YG=mdb(Zhe,'Maps/IteratorBasedAbstractMap',1979);bcb(828,1979,cie);_.$b=function tj(){throw vbb(new bgb)};_._b=function uj(a){return sn(this.c,a)};_.kc=function vj(){return new Jj(this,this.c.b.c.gc())};_.lc=function wj(){return Zj(this.c.b.c.gc(),16,new Dj(this))};_.xc=function xj(a){var b;b=BD(tn(this.c,a),19);return !b?null:this.nd(b.a)};_.dc=function yj(){return this.c.b.c.dc()};_.ec=function zj(){return Xm(this.c)};_.zc=function Aj(a,b){var c;c=BD(tn(this.c,a),19);if(!c){throw vbb(new Wdb(this.md()+' '+a+' not in '+Xm(this.c)))}return this.od(c.a,b)};_.Bc=function Bj(a){throw vbb(new bgb)};_.gc=function Cj(){return this.c.b.c.gc()};var _E=mdb(Zhe,'ArrayTable/ArrayMap',828);bcb(1923,1,{},Dj);_.ld=function Ej(a){return qj(this.a,a)};var YE=mdb(Zhe,'ArrayTable/ArrayMap/0methodref$getEntry$Type',1923);bcb(1921,345,kie,Fj);_.cd=function Gj(){return rj(this.a,this.b)};_.dd=function Hj(){return this.a.nd(this.b)};_.ed=function Ij(a){return this.a.od(this.b,a)};_.b=0;var ZE=mdb(Zhe,'ArrayTable/ArrayMap/1',1921);bcb(1922,386,$he,Jj);_.Xb=function Kj(a){return qj(this.a,a)};var $E=mdb(Zhe,'ArrayTable/ArrayMap/2',1922);bcb(1920,828,cie,Lj);_.md=function Mj(){return 'Column'};_.nd=function Nj(a){return Mi(this.b,this.a,a)};_.od=function Oj(a,b){return Wi(this.b,this.a,a,b)};_.a=0;var bF=mdb(Zhe,'ArrayTable/Row',1920);bcb(829,828,cie,Rj);_.nd=function Tj(a){return new Lj(this.a,a)};_.zc=function Uj(a,b){return BD(b,83),Pj()};_.od=function Vj(a,b){return BD(b,83),Qj()};_.md=function Sj(){return 'Row'};var aF=mdb(Zhe,'ArrayTable/RowMap',829);bcb(1120,1,pie,_j);_.qd=function ak(){return this.a.qd()&-262};_.rd=function bk(){return this.a.rd()};_.Nb=function ck(a){this.a.Nb(new gk(a,this.b))};_.sd=function dk(a){return this.a.sd(new ek(a,this.b))};var lF=mdb(Zhe,'CollectSpliterators/1',1120);bcb(1121,1,qie,ek);_.td=function fk(a){this.a.td(this.b.Kb(a))};var dF=mdb(Zhe,'CollectSpliterators/1/lambda$0$Type',1121);bcb(1122,1,qie,gk);_.td=function hk(a){this.a.td(this.b.Kb(a))};var eF=mdb(Zhe,'CollectSpliterators/1/lambda$1$Type',1122);bcb(1123,1,pie,jk);_.qd=function kk(){return this.a};_.rd=function lk(){!!this.d&&(this.b=Deb(this.b,this.d.rd()));return Deb(this.b,0)};_.Nb=function mk(a){if(this.d){this.d.Nb(a);this.d=null}this.c.Nb(new rk(this.e,a));this.b=0};_.sd=function ok(a){while(true){if(!!this.d&&this.d.sd(a)){Kbb(this.b,rie)&&(this.b=Qbb(this.b,1));return true}else{this.d=null}if(!this.c.sd(new pk(this,this.e))){return false}}};_.a=0;_.b=0;var hF=mdb(Zhe,'CollectSpliterators/1FlatMapSpliterator',1123);bcb(1124,1,qie,pk);_.td=function qk(a){ik(this.a,this.b,a)};var fF=mdb(Zhe,'CollectSpliterators/1FlatMapSpliterator/lambda$0$Type',1124);bcb(1125,1,qie,rk);_.td=function sk(a){nk(this.b,this.a,a)};var gF=mdb(Zhe,'CollectSpliterators/1FlatMapSpliterator/lambda$1$Type',1125);bcb(1117,1,pie,tk);_.qd=function uk(){return 16464|this.b};_.rd=function vk(){return this.a.rd()};_.Nb=function wk(a){this.a.xe(new Ak(a,this.c))};_.sd=function xk(a){return this.a.ye(new yk(a,this.c))};_.b=0;var kF=mdb(Zhe,'CollectSpliterators/1WithCharacteristics',1117);bcb(1118,1,sie,yk);_.ud=function zk(a){this.a.td(this.b.ld(a))};var iF=mdb(Zhe,'CollectSpliterators/1WithCharacteristics/lambda$0$Type',1118);bcb(1119,1,sie,Ak);_.ud=function Bk(a){this.a.td(this.b.ld(a))};var jF=mdb(Zhe,'CollectSpliterators/1WithCharacteristics/lambda$1$Type',1119);bcb(245,1,tie);_.wd=function Hk(a){return this.vd(BD(a,245))};_.vd=function Gk(a){var b;if(a==(_k(),$k)){return 1}if(a==(Lk(),Kk)){return -1}b=(ex(),Fcb(this.a,a.a));if(b!=0){return b}return JD(this,519)==JD(a,519)?0:JD(this,519)?1:-1};_.zd=function Ik(){return this.a};_.Fb=function Jk(a){return Ek(this,a)};var qF=mdb(Zhe,'Cut',245);bcb(1761,245,tie,Mk);_.vd=function Nk(a){return a==this?0:1};_.xd=function Ok(a){throw vbb(new xcb)};_.yd=function Pk(a){a.a+='+\\u221E)'};_.zd=function Qk(){throw vbb(new Zdb(uie))};_.Hb=function Rk(){return Zfb(),kCb(this)};_.Ad=function Sk(a){return false};_.Ib=function Tk(){return '+\\u221E'};var Kk;var mF=mdb(Zhe,'Cut/AboveAll',1761);bcb(519,245,{245:1,519:1,3:1,35:1},Uk);_.xd=function Vk(a){Pfb((a.a+='(',a),this.a)};_.yd=function Wk(a){Kfb(Pfb(a,this.a),93)};_.Hb=function Xk(){return ~tb(this.a)};_.Ad=function Yk(a){return ex(),Fcb(this.a,a)<0};_.Ib=function Zk(){return '/'+this.a+'\\\\'};var nF=mdb(Zhe,'Cut/AboveValue',519);bcb(1760,245,tie,al);_.vd=function bl(a){return a==this?0:-1};_.xd=function cl(a){a.a+='(-\\u221E'};_.yd=function dl(a){throw vbb(new xcb)};_.zd=function el(){throw vbb(new Zdb(uie))};_.Hb=function fl(){return Zfb(),kCb(this)};_.Ad=function gl(a){return true};_.Ib=function hl(){return '-\\u221E'};var $k;var oF=mdb(Zhe,'Cut/BelowAll',1760);bcb(1762,245,tie,il);_.xd=function jl(a){Pfb((a.a+='[',a),this.a)};_.yd=function kl(a){Kfb(Pfb(a,this.a),41)};_.Hb=function ll(){return tb(this.a)};_.Ad=function ml(a){return ex(),Fcb(this.a,a)<=0};_.Ib=function nl(){return '\\\\'+this.a+'/'};var pF=mdb(Zhe,'Cut/BelowValue',1762);bcb(537,1,vie);_.Jc=function ql(a){reb(this,a)};_.Ib=function rl(){return tr(BD(Rb(this,'use Optional.orNull() instead of Optional.or(null)'),20).Kc())};var uF=mdb(Zhe,'FluentIterable',537);bcb(433,537,vie,sl);_.Kc=function tl(){return new Sr(ur(this.a.Kc(),new Sq))};var rF=mdb(Zhe,'FluentIterable/2',433);bcb(1046,537,vie,vl);_.Kc=function wl(){return ul(this)};var tF=mdb(Zhe,'FluentIterable/3',1046);bcb(708,386,$he,xl);_.Xb=function yl(a){return this.a[a].Kc()};var sF=mdb(Zhe,'FluentIterable/3/1',708);bcb(1972,1,{});_.Ib=function zl(){return fcb(this.Bd().b)};var BF=mdb(Zhe,'ForwardingObject',1972);bcb(1973,1972,wie);_.Bd=function Fl(){return this.Cd()};_.Jc=function Gl(a){reb(this,a)};_.Lc=function Jl(){return this.Oc()};_.Nc=function Ml(){return new Kub(this,0)};_.Oc=function Nl(){return new YAb(null,this.Nc())};_.Fc=function Al(a){return this.Cd(),enb()};_.Gc=function Bl(a){return this.Cd(),fnb()};_.$b=function Cl(){this.Cd(),gnb()};_.Hc=function Dl(a){return this.Cd().Hc(a)};_.Ic=function El(a){return this.Cd().Ic(a)};_.dc=function Hl(){return this.Cd().b.dc()};_.Kc=function Il(){return this.Cd().Kc()};_.Mc=function Kl(a){return this.Cd(),jnb()};_.gc=function Ll(){return this.Cd().b.gc()};_.Pc=function Ol(){return this.Cd().Pc()};_.Qc=function Pl(a){return this.Cd().Qc(a)};var vF=mdb(Zhe,'ForwardingCollection',1973);bcb(1980,28,xie);_.Kc=function Xl(){return this.Ed()};_.Fc=function Sl(a){throw vbb(new bgb)};_.Gc=function Tl(a){throw vbb(new bgb)};_.$b=function Ul(){throw vbb(new bgb)};_.Hc=function Vl(a){return a!=null&&ze(this,a,false)};_.Dd=function Wl(){switch(this.gc()){case 0:return im(),im(),hm;case 1:return im(),new my(Qb(this.Ed().Pb()));default:return new px(this,this.Pc());}};_.Mc=function Yl(a){throw vbb(new bgb)};var WF=mdb(Zhe,'ImmutableCollection',1980);bcb(712,1980,xie,Zl);_.Kc=function cm(){return vr(this.a.Kc())};_.Hc=function $l(a){return a!=null&&this.a.Hc(a)};_.Ic=function _l(a){return this.a.Ic(a)};_.dc=function am(){return this.a.dc()};_.Ed=function bm(){return vr(this.a.Kc())};_.gc=function dm(){return this.a.gc()};_.Pc=function em(){return this.a.Pc()};_.Qc=function fm(a){return this.a.Qc(a)};_.Ib=function gm(){return fcb(this.a)};var wF=mdb(Zhe,'ForwardingImmutableCollection',712);bcb(152,1980,yie);_.Kc=function sm(){return this.Ed()};_.Yc=function tm(){return this.Fd(0)};_.Zc=function vm(a){return this.Fd(a)};_.ad=function zm(a){ktb(this,a)};_.Nc=function Am(){return new Kub(this,16)};_.bd=function Cm(a,b){return this.Gd(a,b)};_.Vc=function lm(a,b){throw vbb(new bgb)};_.Wc=function mm(a,b){throw vbb(new bgb)};_.Fb=function om(a){return Ju(this,a)};_.Hb=function pm(){return Ku(this)};_.Xc=function qm(a){return a==null?-1:Lu(this,a)};_.Ed=function rm(){return this.Fd(0)};_.Fd=function um(a){return jm(this,a)};_.$c=function xm(a){throw vbb(new bgb)};_._c=function ym(a,b){throw vbb(new bgb)};_.Gd=function Bm(a,b){var c;return Dm((c=new $u(this),new Jib(c,a,b)))};var hm;var _F=mdb(Zhe,'ImmutableList',152);bcb(2006,152,yie);_.Kc=function Nm(){return vr(this.Hd().Kc())};_.bd=function Qm(a,b){return Dm(this.Hd().bd(a,b))};_.Hc=function Fm(a){return a!=null&&this.Hd().Hc(a)};_.Ic=function Gm(a){return this.Hd().Ic(a)};_.Fb=function Hm(a){return pb(this.Hd(),a)};_.Xb=function Im(a){return Em(this,a)};_.Hb=function Jm(){return tb(this.Hd())};_.Xc=function Km(a){return this.Hd().Xc(a)};_.dc=function Lm(){return this.Hd().dc()};_.Ed=function Mm(){return vr(this.Hd().Kc())};_.gc=function Om(){return this.Hd().gc()};_.Gd=function Pm(a,b){return Dm(this.Hd().bd(a,b))};_.Pc=function Rm(){return this.Hd().Qc(KC(SI,Uhe,1,this.Hd().gc(),5,1))};_.Qc=function Sm(a){return this.Hd().Qc(a)};_.Ib=function Tm(){return fcb(this.Hd())};var xF=mdb(Zhe,'ForwardingImmutableList',2006);bcb(714,1,Aie);_.vc=function cn(){return Wm(this)};_.wc=function en(a){stb(this,a)};_.ec=function jn(){return Xm(this)};_.yc=function kn(a,b,c){return ttb(this,a,b,c)};_.Cc=function rn(){return this.Ld()};_.$b=function Zm(){throw vbb(new bgb)};_._b=function $m(a){return this.xc(a)!=null};_.uc=function _m(a){return this.Ld().Hc(a)};_.Jd=function an(){return new jq(this)};_.Kd=function bn(){return new sq(this)};_.Fb=function dn(a){return Dv(this,a)};_.Hb=function gn(){return Wm(this).Hb()};_.dc=function hn(){return this.gc()==0};_.zc=function nn(a,b){return Ym()};_.Bc=function on(a){throw vbb(new bgb)};_.Ib=function pn(){return Jv(this)};_.Ld=function qn(){if(this.e){return this.e}return this.e=this.Kd()};_.c=null;_.d=null;_.e=null;var Um;var iG=mdb(Zhe,'ImmutableMap',714);bcb(715,714,Aie);_._b=function vn(a){return sn(this,a)};_.uc=function wn(a){return dob(this.b,a)};_.Id=function xn(){return Vn(new Ln(this))};_.Jd=function yn(){return Vn(gob(this.b))};_.Kd=function zn(){return Ql(),new Zl(hob(this.b))};_.Fb=function An(a){return fob(this.b,a)};_.xc=function Bn(a){return tn(this,a)};_.Hb=function Cn(){return tb(this.b.c)};_.dc=function Dn(){return this.b.c.dc()};_.gc=function En(){return this.b.c.gc()};_.Ib=function Fn(){return fcb(this.b.c)};var zF=mdb(Zhe,'ForwardingImmutableMap',715);bcb(1974,1973,Bie);_.Bd=function Gn(){return this.Md()};_.Cd=function Hn(){return this.Md()};_.Nc=function Kn(){return new Kub(this,1)};_.Fb=function In(a){return a===this||this.Md().Fb(a)};_.Hb=function Jn(){return this.Md().Hb()};var CF=mdb(Zhe,'ForwardingSet',1974);bcb(1069,1974,Bie,Ln);_.Bd=function Nn(){return eob(this.a.b)};_.Cd=function On(){return eob(this.a.b)};_.Hc=function Mn(b){if(JD(b,42)&&BD(b,42).cd()==null){return false}try{return Dob(eob(this.a.b),b)}catch(a){a=ubb(a);if(JD(a,205)){return false}else throw vbb(a)}};_.Md=function Pn(){return eob(this.a.b)};_.Qc=function Qn(a){var b;b=Eob(eob(this.a.b),a);eob(this.a.b).b.gc()=0?'+':'')+(c/60|0);b=kB($wnd.Math.abs(c)%60);return (Dpb(),Bpb)[this.q.getDay()]+' '+Cpb[this.q.getMonth()]+' '+kB(this.q.getDate())+' '+kB(this.q.getHours())+':'+kB(this.q.getMinutes())+':'+kB(this.q.getSeconds())+' GMT'+a+b+' '+this.q.getFullYear()};var $J=mdb(bie,'Date',199);bcb(1915,199,Cje,nB);_.a=false;_.b=0;_.c=0;_.d=0;_.e=0;_.f=0;_.g=false;_.i=0;_.j=0;_.k=0;_.n=0;_.o=0;_.p=0;var eI=mdb('com.google.gwt.i18n.shared.impl','DateRecord',1915);bcb(1966,1,{});_.fe=function oB(){return null};_.ge=function pB(){return null};_.he=function qB(){return null};_.ie=function rB(){return null};_.je=function sB(){return null};var nI=mdb(Dje,'JSONValue',1966);bcb(216,1966,{216:1},wB,xB);_.Fb=function yB(a){if(!JD(a,216)){return false}return qz(this.a,BD(a,216).a)};_.ee=function zB(){return DB};_.Hb=function AB(){return rz(this.a)};_.fe=function BB(){return this};_.Ib=function CB(){var a,b,c;c=new Wfb('[');for(b=0,a=this.a.length;b0&&(c.a+=',',c);Pfb(c,tB(this,b))}c.a+=']';return c.a};var fI=mdb(Dje,'JSONArray',216);bcb(483,1966,{483:1},HB);_.ee=function IB(){return LB};_.ge=function JB(){return this};_.Ib=function KB(){return Bcb(),''+this.a};_.a=false;var EB,FB;var gI=mdb(Dje,'JSONBoolean',483);bcb(985,60,Tie,MB);var hI=mdb(Dje,'JSONException',985);bcb(1023,1966,{},PB);_.ee=function QB(){return SB};_.Ib=function RB(){return Xhe};var NB;var iI=mdb(Dje,'JSONNull',1023);bcb(258,1966,{258:1},TB);_.Fb=function UB(a){if(!JD(a,258)){return false}return this.a==BD(a,258).a};_.ee=function VB(){return ZB};_.Hb=function WB(){return Hdb(this.a)};_.he=function XB(){return this};_.Ib=function YB(){return this.a+''};_.a=0;var jI=mdb(Dje,'JSONNumber',258);bcb(183,1966,{183:1},eC,fC);_.Fb=function gC(a){if(!JD(a,183)){return false}return qz(this.a,BD(a,183).a)};_.ee=function hC(){return lC};_.Hb=function iC(){return rz(this.a)};_.ie=function jC(){return this};_.Ib=function kC(){var a,b,c,d,e,f,g;g=new Wfb('{');a=true;f=$B(this,KC(ZI,nie,2,0,6,1));for(c=f,d=0,e=c.length;d=0?':'+this.c:'')+')'};_.c=0;var VI=mdb(Phe,'StackTraceElement',310);zD={3:1,475:1,35:1,2:1};var ZI=mdb(Phe,Vie,2);bcb(107,418,{475:1},Hfb,Ifb,Jfb);var WI=mdb(Phe,'StringBuffer',107);bcb(100,418,{475:1},Ufb,Vfb,Wfb);var XI=mdb(Phe,'StringBuilder',100);bcb(687,73,Mje,Xfb);var YI=mdb(Phe,'StringIndexOutOfBoundsException',687);bcb(2043,1,{});var Yfb;bcb(844,1,{},_fb);_.Kb=function agb(a){return BD(a,78).e};var $I=mdb(Phe,'Throwable/lambda$0$Type',844);bcb(41,60,{3:1,102:1,60:1,78:1,41:1},bgb,cgb);var aJ=mdb(Phe,'UnsupportedOperationException',41);bcb(240,236,{3:1,35:1,236:1,240:1},sgb,tgb);_.wd=function wgb(a){return mgb(this,BD(a,240))};_.ke=function xgb(){return Hcb(rgb(this))};_.Fb=function ygb(a){var b;if(this===a){return true}if(JD(a,240)){b=BD(a,240);return this.e==b.e&&mgb(this,b)==0}return false};_.Hb=function zgb(){var a;if(this.b!=0){return this.b}if(this.a<54){a=Cbb(this.f);this.b=Tbb(xbb(a,-1));this.b=33*this.b+Tbb(xbb(Obb(a,32),-1));this.b=17*this.b+QD(this.e);return this.b}this.b=17*Ngb(this.c)+QD(this.e);return this.b};_.Ib=function Agb(){return rgb(this)};_.a=0;_.b=0;_.d=0;_.e=0;_.f=0;var dgb,egb,fgb,ggb,hgb,igb,jgb,kgb;var bJ=mdb('java.math','BigDecimal',240);bcb(91,236,{3:1,35:1,236:1,91:1},Tgb,Ugb,Vgb,Wgb,Xgb,Ygb);_.wd=function $gb(a){return Igb(this,BD(a,91))};_.ke=function _gb(){return Hcb(shb(this,0))};_.Fb=function ahb(a){return Kgb(this,a)};_.Hb=function chb(){return Ngb(this)};_.Ib=function ehb(){return shb(this,0)};_.b=-2;_.c=0;_.d=0;_.e=0;var Bgb,Cgb,Dgb,Egb,Fgb,Ggb;var cJ=mdb('java.math','BigInteger',91);var nhb,ohb;var Bhb,Chb;bcb(488,1967,cie);_.$b=function Xhb(){Uhb(this)};_._b=function Yhb(a){return Mhb(this,a)};_.uc=function Zhb(a){return Nhb(this,a,this.g)||Nhb(this,a,this.f)};_.vc=function $hb(){return new eib(this)};_.xc=function _hb(a){return Ohb(this,a)};_.zc=function aib(a,b){return Rhb(this,a,b)};_.Bc=function bib(a){return Thb(this,a)};_.gc=function cib(){return Vhb(this)};var gJ=mdb(bie,'AbstractHashMap',488);bcb(261,eie,fie,eib);_.$b=function fib(){this.a.$b()};_.Hc=function gib(a){return dib(this,a)};_.Kc=function hib(){return new nib(this.a)};_.Mc=function iib(a){var b;if(dib(this,a)){b=BD(a,42).cd();this.a.Bc(b);return true}return false};_.gc=function jib(){return this.a.gc()};var fJ=mdb(bie,'AbstractHashMap/EntrySet',261);bcb(262,1,aie,nib);_.Nb=function oib(a){Rrb(this,a)};_.Pb=function qib(){return lib(this)};_.Ob=function pib(){return this.b};_.Qb=function rib(){mib(this)};_.b=false;var eJ=mdb(bie,'AbstractHashMap/EntrySetIterator',262);bcb(417,1,aie,vib);_.Nb=function wib(a){Rrb(this,a)};_.Ob=function xib(){return sib(this)};_.Pb=function yib(){return tib(this)};_.Qb=function zib(){uib(this)};_.b=0;_.c=-1;var hJ=mdb(bie,'AbstractList/IteratorImpl',417);bcb(96,417,jie,Bib);_.Qb=function Hib(){uib(this)};_.Rb=function Cib(a){Aib(this,a)};_.Sb=function Dib(){return this.b>0};_.Tb=function Eib(){return this.b};_.Ub=function Fib(){return sCb(this.b>0),this.a.Xb(this.c=--this.b)};_.Vb=function Gib(){return this.b-1};_.Wb=function Iib(a){yCb(this.c!=-1);this.a._c(this.c,a)};var iJ=mdb(bie,'AbstractList/ListIteratorImpl',96);bcb(219,52,Lie,Jib);_.Vc=function Kib(a,b){wCb(a,this.b);this.c.Vc(this.a+a,b);++this.b};_.Xb=function Lib(a){tCb(a,this.b);return this.c.Xb(this.a+a)};_.$c=function Mib(a){var b;tCb(a,this.b);b=this.c.$c(this.a+a);--this.b;return b};_._c=function Nib(a,b){tCb(a,this.b);return this.c._c(this.a+a,b)};_.gc=function Oib(){return this.b};_.a=0;_.b=0;var jJ=mdb(bie,'AbstractList/SubList',219);bcb(384,eie,fie,Pib);_.$b=function Qib(){this.a.$b()};_.Hc=function Rib(a){return this.a._b(a)};_.Kc=function Sib(){var a;return a=this.a.vc().Kc(),new Vib(a)};_.Mc=function Tib(a){if(this.a._b(a)){this.a.Bc(a);return true}return false};_.gc=function Uib(){return this.a.gc()};var mJ=mdb(bie,'AbstractMap/1',384);bcb(691,1,aie,Vib);_.Nb=function Wib(a){Rrb(this,a)};_.Ob=function Xib(){return this.a.Ob()};_.Pb=function Yib(){var a;return a=BD(this.a.Pb(),42),a.cd()};_.Qb=function Zib(){this.a.Qb()};var lJ=mdb(bie,'AbstractMap/1/1',691);bcb(226,28,die,$ib);_.$b=function _ib(){this.a.$b()};_.Hc=function ajb(a){return this.a.uc(a)};_.Kc=function bjb(){var a;return a=this.a.vc().Kc(),new djb(a)};_.gc=function cjb(){return this.a.gc()};var oJ=mdb(bie,'AbstractMap/2',226);bcb(294,1,aie,djb);_.Nb=function ejb(a){Rrb(this,a)};_.Ob=function fjb(){return this.a.Ob()};_.Pb=function gjb(){var a;return a=BD(this.a.Pb(),42),a.dd()};_.Qb=function hjb(){this.a.Qb()};var nJ=mdb(bie,'AbstractMap/2/1',294);bcb(484,1,{484:1,42:1});_.Fb=function jjb(a){var b;if(!JD(a,42)){return false}b=BD(a,42);return wtb(this.d,b.cd())&&wtb(this.e,b.dd())};_.cd=function kjb(){return this.d};_.dd=function ljb(){return this.e};_.Hb=function mjb(){return xtb(this.d)^xtb(this.e)};_.ed=function njb(a){return ijb(this,a)};_.Ib=function ojb(){return this.d+'='+this.e};var pJ=mdb(bie,'AbstractMap/AbstractEntry',484);bcb(383,484,{484:1,383:1,42:1},pjb);var qJ=mdb(bie,'AbstractMap/SimpleEntry',383);bcb(1984,1,_je);_.Fb=function qjb(a){var b;if(!JD(a,42)){return false}b=BD(a,42);return wtb(this.cd(),b.cd())&&wtb(this.dd(),b.dd())};_.Hb=function rjb(){return xtb(this.cd())^xtb(this.dd())};_.Ib=function sjb(){return this.cd()+'='+this.dd()};var rJ=mdb(bie,lie,1984);bcb(1992,1967,gie);_.tc=function vjb(a){return tjb(this,a)};_._b=function wjb(a){return ujb(this,a)};_.vc=function xjb(){return new Bjb(this)};_.xc=function yjb(a){var b;b=a;return Wd(Awb(this,b))};_.ec=function Ajb(){return new Gjb(this)};var wJ=mdb(bie,'AbstractNavigableMap',1992);bcb(739,eie,fie,Bjb);_.Hc=function Cjb(a){return JD(a,42)&&tjb(this.b,BD(a,42))};_.Kc=function Djb(){return new Ywb(this.b)};_.Mc=function Ejb(a){var b;if(JD(a,42)){b=BD(a,42);return Kwb(this.b,b)}return false};_.gc=function Fjb(){return this.b.c};var tJ=mdb(bie,'AbstractNavigableMap/EntrySet',739);bcb(493,eie,iie,Gjb);_.Nc=function Mjb(){return new Rub(this)};_.$b=function Hjb(){zwb(this.a)};_.Hc=function Ijb(a){return ujb(this.a,a)};_.Kc=function Jjb(){var a;return a=new Ywb((new cxb(this.a)).b),new Njb(a)};_.Mc=function Kjb(a){if(ujb(this.a,a)){Jwb(this.a,a);return true}return false};_.gc=function Ljb(){return this.a.c};var vJ=mdb(bie,'AbstractNavigableMap/NavigableKeySet',493);bcb(494,1,aie,Njb);_.Nb=function Ojb(a){Rrb(this,a)};_.Ob=function Pjb(){return sib(this.a.a)};_.Pb=function Qjb(){var a;return a=Wwb(this.a),a.cd()};_.Qb=function Rjb(){Xwb(this.a)};var uJ=mdb(bie,'AbstractNavigableMap/NavigableKeySet/1',494);bcb(2004,28,die);_.Fc=function Sjb(a){return zCb(cub(this,a)),true};_.Gc=function Tjb(a){uCb(a);mCb(a!=this,\"Can't add a queue to itself\");return ye(this,a)};_.$b=function Ujb(){while(dub(this)!=null);};var xJ=mdb(bie,'AbstractQueue',2004);bcb(302,28,{4:1,20:1,28:1,14:1},jkb,kkb);_.Fc=function lkb(a){return Xjb(this,a),true};_.$b=function nkb(){Yjb(this)};_.Hc=function okb(a){return Zjb(new xkb(this),a)};_.dc=function pkb(){return akb(this)};_.Kc=function qkb(){return new xkb(this)};_.Mc=function rkb(a){return dkb(new xkb(this),a)};_.gc=function skb(){return this.c-this.b&this.a.length-1};_.Nc=function tkb(){return new Kub(this,272)};_.Qc=function ukb(a){var b;b=this.c-this.b&this.a.length-1;a.lengthb&&NC(a,b,null);return a};_.b=0;_.c=0;var BJ=mdb(bie,'ArrayDeque',302);bcb(446,1,aie,xkb);_.Nb=function ykb(a){Rrb(this,a)};_.Ob=function zkb(){return this.a!=this.b};_.Pb=function Akb(){return vkb(this)};_.Qb=function Bkb(){wkb(this)};_.a=0;_.b=0;_.c=-1;var AJ=mdb(bie,'ArrayDeque/IteratorImpl',446);bcb(12,52,ake,Rkb,Skb,Tkb);_.Vc=function Ukb(a,b){Dkb(this,a,b)};_.Fc=function Vkb(a){return Ekb(this,a)};_.Wc=function Wkb(a,b){return Fkb(this,a,b)};_.Gc=function Xkb(a){return Gkb(this,a)};_.$b=function Ykb(){this.c=KC(SI,Uhe,1,0,5,1)};_.Hc=function Zkb(a){return Jkb(this,a,0)!=-1};_.Jc=function $kb(a){Hkb(this,a)};_.Xb=function _kb(a){return Ikb(this,a)};_.Xc=function alb(a){return Jkb(this,a,0)};_.dc=function blb(){return this.c.length==0};_.Kc=function clb(){return new olb(this)};_.$c=function dlb(a){return Kkb(this,a)};_.Mc=function elb(a){return Lkb(this,a)};_.Ud=function flb(a,b){Mkb(this,a,b)};_._c=function glb(a,b){return Nkb(this,a,b)};_.gc=function hlb(){return this.c.length};_.ad=function ilb(a){Okb(this,a)};_.Pc=function jlb(){return Pkb(this)};_.Qc=function klb(a){return Qkb(this,a)};var DJ=mdb(bie,'ArrayList',12);bcb(7,1,aie,olb);_.Nb=function plb(a){Rrb(this,a)};_.Ob=function qlb(){return llb(this)};_.Pb=function rlb(){return mlb(this)};_.Qb=function slb(){nlb(this)};_.a=0;_.b=-1;var CJ=mdb(bie,'ArrayList/1',7);bcb(2013,$wnd.Function,{},Ylb);_.te=function Zlb(a,b){return Kdb(a,b)};bcb(154,52,bke,amb);_.Hc=function bmb(a){return Bt(this,a)!=-1};_.Jc=function cmb(a){var b,c,d,e;uCb(a);for(c=this.a,d=0,e=c.length;d>>0,a.toString(16))};_.f=0;_.i=Qje;var PM=mdb(Gke,'CNode',57);bcb(814,1,{},zDb);var OM=mdb(Gke,'CNode/CNodeBuilder',814);var EDb;bcb(1525,1,{},GDb);_.Oe=function HDb(a,b){return 0};_.Pe=function IDb(a,b){return 0};var QM=mdb(Gke,Ike,1525);bcb(1790,1,{},JDb);_.Le=function KDb(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;j=Pje;for(d=new olb(a.a.b);d.ad.d.c||d.d.c==f.d.c&&d.d.b0?a+this.n.d+this.n.a:0};_.Se=function HHb(){var a,b,c,d,e;e=0;if(this.e){this.b?(e=this.b.a):!!this.a[1][1]&&(e=this.a[1][1].Se())}else if(this.g){e=EHb(this,yHb(this,null,true))}else{for(b=(gHb(),OC(GC(pN,1),Kie,232,0,[dHb,eHb,fHb])),c=0,d=b.length;c0?e+this.n.b+this.n.c:0};_.Te=function IHb(){var a,b,c,d,e;if(this.g){a=yHb(this,null,false);for(c=(gHb(),OC(GC(pN,1),Kie,232,0,[dHb,eHb,fHb])),d=0,e=c.length;d0){d[0]+=this.d;c-=d[0]}if(d[2]>0){d[2]+=this.d;c-=d[2]}this.c.a=$wnd.Math.max(0,c);this.c.d=b.d+a.d+(this.c.a-c)/2;d[1]=$wnd.Math.max(d[1],c);uHb(this,eHb,b.d+a.d+d[0]-(d[1]-c)/2,d)};_.b=null;_.d=0;_.e=false;_.f=false;_.g=false;var rHb=0,sHb=0;var rN=mdb(fle,'GridContainerCell',1473);bcb(461,22,{3:1,35:1,22:1,461:1},OHb);var KHb,LHb,MHb;var sN=ndb(fle,'HorizontalLabelAlignment',461,CI,QHb,PHb);var RHb;bcb(306,212,{212:1,306:1},aIb,bIb,cIb);_.Re=function dIb(){return YHb(this)};_.Se=function eIb(){return ZHb(this)};_.a=0;_.c=false;var tN=mdb(fle,'LabelCell',306);bcb(244,326,{212:1,326:1,244:1},mIb);_.Re=function nIb(){return fIb(this)};_.Se=function oIb(){return gIb(this)};_.Te=function rIb(){hIb(this)};_.Ue=function sIb(){iIb(this)};_.b=0;_.c=0;_.d=false;var yN=mdb(fle,'StripContainerCell',244);bcb(1626,1,Oie,tIb);_.Mb=function uIb(a){return pIb(BD(a,212))};var uN=mdb(fle,'StripContainerCell/lambda$0$Type',1626);bcb(1627,1,{},vIb);_.Fe=function wIb(a){return BD(a,212).Se()};var vN=mdb(fle,'StripContainerCell/lambda$1$Type',1627);bcb(1628,1,Oie,xIb);_.Mb=function yIb(a){return qIb(BD(a,212))};var wN=mdb(fle,'StripContainerCell/lambda$2$Type',1628);bcb(1629,1,{},zIb);_.Fe=function AIb(a){return BD(a,212).Re()};var xN=mdb(fle,'StripContainerCell/lambda$3$Type',1629);bcb(462,22,{3:1,35:1,22:1,462:1},FIb);var BIb,CIb,DIb;var zN=ndb(fle,'VerticalLabelAlignment',462,CI,HIb,GIb);var IIb;bcb(789,1,{},LIb);_.c=0;_.d=0;_.k=0;_.s=0;_.t=0;_.v=false;_.w=0;_.D=false;var CN=mdb(nle,'NodeContext',789);bcb(1471,1,Dke,OIb);_.ue=function PIb(a,b){return NIb(BD(a,61),BD(b,61))};_.Fb=function QIb(a){return this===a};_.ve=function RIb(){return new tpb(this)};var AN=mdb(nle,'NodeContext/0methodref$comparePortSides$Type',1471);bcb(1472,1,Dke,SIb);_.ue=function TIb(a,b){return MIb(BD(a,111),BD(b,111))};_.Fb=function UIb(a){return this===a};_.ve=function VIb(){return new tpb(this)};var BN=mdb(nle,'NodeContext/1methodref$comparePortContexts$Type',1472);bcb(159,22,{3:1,35:1,22:1,159:1},tJb);var WIb,XIb,YIb,ZIb,$Ib,_Ib,aJb,bJb,cJb,dJb,eJb,fJb,gJb,hJb,iJb,jJb,kJb,lJb,mJb,nJb,oJb,pJb;var DN=ndb(nle,'NodeLabelLocation',159,CI,wJb,vJb);var xJb;bcb(111,1,{111:1},AJb);_.a=false;var EN=mdb(nle,'PortContext',111);bcb(1476,1,qie,TJb);_.td=function UJb(a){WHb(BD(a,306))};var FN=mdb(qle,rle,1476);bcb(1477,1,Oie,VJb);_.Mb=function WJb(a){return !!BD(a,111).c};var GN=mdb(qle,sle,1477);bcb(1478,1,qie,XJb);_.td=function YJb(a){WHb(BD(a,111).c)};var HN=mdb(qle,'LabelPlacer/lambda$2$Type',1478);var ZJb;bcb(1475,1,qie,fKb);_.td=function gKb(a){$Jb();zJb(BD(a,111))};var IN=mdb(qle,'NodeLabelAndSizeUtilities/lambda$0$Type',1475);bcb(790,1,qie,mKb);_.td=function nKb(a){kKb(this.b,this.c,this.a,BD(a,181))};_.a=false;_.c=false;var JN=mdb(qle,'NodeLabelCellCreator/lambda$0$Type',790);bcb(1474,1,qie,tKb);_.td=function uKb(a){sKb(this.a,BD(a,181))};var KN=mdb(qle,'PortContextCreator/lambda$0$Type',1474);var BKb;bcb(1829,1,{},VKb);var MN=mdb(ule,'GreedyRectangleStripOverlapRemover',1829);bcb(1830,1,Dke,XKb);_.ue=function YKb(a,b){return WKb(BD(a,222),BD(b,222))};_.Fb=function ZKb(a){return this===a};_.ve=function $Kb(){return new tpb(this)};var LN=mdb(ule,'GreedyRectangleStripOverlapRemover/0methodref$compareByYCoordinate$Type',1830);bcb(1786,1,{},fLb);_.a=5;_.e=0;var SN=mdb(ule,'RectangleStripOverlapRemover',1786);bcb(1787,1,Dke,jLb);_.ue=function kLb(a,b){return gLb(BD(a,222),BD(b,222))};_.Fb=function lLb(a){return this===a};_.ve=function mLb(){return new tpb(this)};var NN=mdb(ule,'RectangleStripOverlapRemover/0methodref$compareLeftRectangleBorders$Type',1787);bcb(1789,1,Dke,nLb);_.ue=function oLb(a,b){return hLb(BD(a,222),BD(b,222))};_.Fb=function pLb(a){return this===a};_.ve=function qLb(){return new tpb(this)};var ON=mdb(ule,'RectangleStripOverlapRemover/1methodref$compareRightRectangleBorders$Type',1789);bcb(406,22,{3:1,35:1,22:1,406:1},wLb);var rLb,sLb,tLb,uLb;var PN=ndb(ule,'RectangleStripOverlapRemover/OverlapRemovalDirection',406,CI,yLb,xLb);var zLb;bcb(222,1,{222:1},BLb);var QN=mdb(ule,'RectangleStripOverlapRemover/RectangleNode',222);bcb(1788,1,qie,CLb);_.td=function DLb(a){aLb(this.a,BD(a,222))};var RN=mdb(ule,'RectangleStripOverlapRemover/lambda$1$Type',1788);bcb(1304,1,Dke,GLb);_.ue=function HLb(a,b){return FLb(BD(a,167),BD(b,167))};_.Fb=function ILb(a){return this===a};_.ve=function JLb(){return new tpb(this)};var WN=mdb(wle,'PolyominoCompactor/CornerCasesGreaterThanRestComparator',1304);bcb(1307,1,{},KLb);_.Kb=function LLb(a){return BD(a,324).a};var TN=mdb(wle,'PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$0$Type',1307);bcb(1308,1,Oie,MLb);_.Mb=function NLb(a){return BD(a,323).a};var UN=mdb(wle,'PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$1$Type',1308);bcb(1309,1,Oie,OLb);_.Mb=function PLb(a){return BD(a,323).a};var VN=mdb(wle,'PolyominoCompactor/CornerCasesGreaterThanRestComparator/lambda$2$Type',1309);bcb(1302,1,Dke,RLb);_.ue=function SLb(a,b){return QLb(BD(a,167),BD(b,167))};_.Fb=function TLb(a){return this===a};_.ve=function ULb(){return new tpb(this)};var YN=mdb(wle,'PolyominoCompactor/MinNumOfExtensionDirectionsComparator',1302);bcb(1305,1,{},VLb);_.Kb=function WLb(a){return BD(a,324).a};var XN=mdb(wle,'PolyominoCompactor/MinNumOfExtensionDirectionsComparator/lambda$0$Type',1305);bcb(767,1,Dke,YLb);_.ue=function ZLb(a,b){return XLb(BD(a,167),BD(b,167))};_.Fb=function $Lb(a){return this===a};_.ve=function _Lb(){return new tpb(this)};var ZN=mdb(wle,'PolyominoCompactor/MinNumOfExtensionsComparator',767);bcb(1300,1,Dke,bMb);_.ue=function cMb(a,b){return aMb(BD(a,321),BD(b,321))};_.Fb=function dMb(a){return this===a};_.ve=function eMb(){return new tpb(this)};var _N=mdb(wle,'PolyominoCompactor/MinPerimeterComparator',1300);bcb(1301,1,Dke,gMb);_.ue=function hMb(a,b){return fMb(BD(a,321),BD(b,321))};_.Fb=function iMb(a){return this===a};_.ve=function jMb(){return new tpb(this)};var $N=mdb(wle,'PolyominoCompactor/MinPerimeterComparatorWithShape',1301);bcb(1303,1,Dke,lMb);_.ue=function mMb(a,b){return kMb(BD(a,167),BD(b,167))};_.Fb=function nMb(a){return this===a};_.ve=function oMb(){return new tpb(this)};var bO=mdb(wle,'PolyominoCompactor/SingleExtensionSideGreaterThanRestComparator',1303);bcb(1306,1,{},pMb);_.Kb=function qMb(a){return BD(a,324).a};var aO=mdb(wle,'PolyominoCompactor/SingleExtensionSideGreaterThanRestComparator/lambda$0$Type',1306);bcb(777,1,{},tMb);_.Ce=function uMb(a,b){return sMb(this,BD(a,46),BD(b,167))};var cO=mdb(wle,'SuccessorCombination',777);bcb(644,1,{},wMb);_.Ce=function xMb(a,b){var c;return vMb((c=BD(a,46),BD(b,167),c))};var dO=mdb(wle,'SuccessorJitter',644);bcb(643,1,{},zMb);_.Ce=function AMb(a,b){var c;return yMb((c=BD(a,46),BD(b,167),c))};var eO=mdb(wle,'SuccessorLineByLine',643);bcb(568,1,{},CMb);_.Ce=function DMb(a,b){var c;return BMb((c=BD(a,46),BD(b,167),c))};var fO=mdb(wle,'SuccessorManhattan',568);bcb(1356,1,{},FMb);_.Ce=function GMb(a,b){var c;return EMb((c=BD(a,46),BD(b,167),c))};var gO=mdb(wle,'SuccessorMaxNormWindingInMathPosSense',1356);bcb(400,1,{},JMb);_.Ce=function KMb(a,b){return HMb(this,a,b)};_.c=false;_.d=false;_.e=false;_.f=false;var iO=mdb(wle,'SuccessorQuadrantsGeneric',400);bcb(1357,1,{},LMb);_.Kb=function MMb(a){return BD(a,324).a};var hO=mdb(wle,'SuccessorQuadrantsGeneric/lambda$0$Type',1357);bcb(323,22,{3:1,35:1,22:1,323:1},SMb);_.a=false;var NMb,OMb,PMb,QMb;var jO=ndb(Ble,Cle,323,CI,UMb,TMb);var VMb;bcb(1298,1,{});_.Ib=function bNb(){var a,b,c,d,e,f;c=' ';a=meb(0);for(e=0;e=0?'b'+a+'['+fRb(this.a)+']':'b['+fRb(this.a)+']'}return 'b_'+FCb(this)};var YO=mdb(jme,'FBendpoint',559);bcb(282,134,{3:1,282:1,94:1,134:1},gRb);_.Ib=function hRb(){return fRb(this)};var ZO=mdb(jme,'FEdge',282);bcb(231,134,{3:1,231:1,94:1,134:1},kRb);var $O=mdb(jme,'FGraph',231);bcb(447,357,{3:1,447:1,357:1,94:1,134:1},mRb);_.Ib=function nRb(){return this.b==null||this.b.length==0?'l['+fRb(this.a)+']':'l_'+this.b};var _O=mdb(jme,'FLabel',447);bcb(144,357,{3:1,144:1,357:1,94:1,134:1},pRb);_.Ib=function qRb(){return oRb(this)};_.b=0;var aP=mdb(jme,'FNode',144);bcb(2003,1,{});_.bf=function vRb(a){rRb(this,a)};_.cf=function wRb(){sRb(this)};_.d=0;var cP=mdb(lme,'AbstractForceModel',2003);bcb(631,2003,{631:1},xRb);_.af=function zRb(a,b){var c,d,e,f,g;uRb(this.f,a,b);e=c7c(R6c(b.d),a.d);g=$wnd.Math.sqrt(e.a*e.a+e.b*e.b);d=$wnd.Math.max(0,g-U6c(a.e)/2-U6c(b.e)/2);c=jRb(this.e,a,b);c>0?(f=-yRb(d,this.c)*c):(f=CRb(d,this.b)*BD(vNb(a,(wSb(),oSb)),19).a);Y6c(e,f/g);return e};_.bf=function ARb(a){rRb(this,a);this.a=BD(vNb(a,(wSb(),eSb)),19).a;this.c=Edb(ED(vNb(a,uSb)));this.b=Edb(ED(vNb(a,qSb)))};_.df=function BRb(a){return a0&&(f-=ERb(d,this.a)*c);Y6c(e,f*this.b/g);return e};_.bf=function GRb(a){var b,c,d,e,f,g,h;rRb(this,a);this.b=Edb(ED(vNb(a,(wSb(),vSb))));this.c=this.b/BD(vNb(a,eSb),19).a;d=a.e.c.length;f=0;e=0;for(h=new olb(a.e);h.a0};_.a=0;_.b=0;_.c=0;var eP=mdb(lme,'FruchtermanReingoldModel',632);bcb(849,1,ale,TRb);_.Qe=function URb(a){t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,mme),''),'Force Model'),'Determines the model for force calculation.'),MRb),(_5c(),V5c)),gP),pqb((N5c(),L5c)))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,nme),''),'Iterations'),'The number of iterations on the force model.'),meb(300)),X5c),JI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,ome),''),'Repulsive Power'),'Determines how many bend points are added to the edge; such bend points are regarded as repelling particles in the force model'),meb(0)),X5c),JI),pqb(I5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,pme),''),'FR Temperature'),'The temperature is used as a scaling factor for particle displacements.'),qme),U5c),BI),pqb(L5c))));o4c(a,pme,mme,RRb);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,rme),''),'Eades Repulsion'),\"Factor for repulsive forces in Eades' model.\"),5),U5c),BI),pqb(L5c))));o4c(a,rme,mme,ORb);xSb((new ySb,a))};var KRb,LRb,MRb,NRb,ORb,PRb,QRb,RRb;var fP=mdb(sme,'ForceMetaDataProvider',849);bcb(424,22,{3:1,35:1,22:1,424:1},YRb);var VRb,WRb;var gP=ndb(sme,'ForceModelStrategy',424,CI,$Rb,ZRb);var _Rb;bcb(988,1,ale,ySb);_.Qe=function zSb(a){xSb(a)};var bSb,cSb,dSb,eSb,fSb,gSb,hSb,iSb,jSb,kSb,lSb,mSb,nSb,oSb,pSb,qSb,rSb,sSb,tSb,uSb,vSb;var iP=mdb(sme,'ForceOptions',988);bcb(989,1,{},ASb);_.$e=function BSb(){var a;return a=new ZQb,a};_._e=function CSb(a){};var hP=mdb(sme,'ForceOptions/ForceFactory',989);var DSb,ESb,FSb,GSb;bcb(850,1,ale,PSb);_.Qe=function QSb(a){t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Mme),''),'Fixed Position'),'Prevent that the node is moved by the layout algorithm.'),(Bcb(),false)),(_5c(),T5c)),wI),pqb((N5c(),K5c)))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Nme),''),'Desired Edge Length'),'Either specified for parent nodes or for individual edges, where the latter takes higher precedence.'),100),U5c),BI),qqb(L5c,OC(GC(e1,1),Kie,175,0,[I5c])))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Ome),''),'Layout Dimension'),'Dimensions that are permitted to be altered during layout.'),KSb),V5c),oP),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Pme),''),'Stress Epsilon'),'Termination criterion for the iterative process.'),qme),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Qme),''),'Iteration Limit'),\"Maximum number of performed iterations. Takes higher precedence than 'epsilon'.\"),meb(Ohe)),X5c),JI),pqb(L5c))));cTb((new dTb,a))};var ISb,JSb,KSb,LSb,MSb,NSb;var jP=mdb(sme,'StressMetaDataProvider',850);bcb(992,1,ale,dTb);_.Qe=function eTb(a){cTb(a)};var RSb,SSb,TSb,USb,VSb,WSb,XSb,YSb,ZSb,$Sb,_Sb,aTb;var lP=mdb(sme,'StressOptions',992);bcb(993,1,{},fTb);_.$e=function gTb(){var a;return a=new iTb,a};_._e=function hTb(a){};var kP=mdb(sme,'StressOptions/StressFactory',993);bcb(1128,209,Mle,iTb);_.Ze=function jTb(a,b){var c,d,e,f,g;Odd(b,Sme,1);Ccb(DD(hkd(a,(bTb(),VSb))))?Ccb(DD(hkd(a,_Sb)))||$Cb((c=new _Cb((Pgd(),new bhd(a))),c)):WQb(new ZQb,a,Udd(b,1));e=TQb(a);d=LQb(this.a,e);for(g=d.Kc();g.Ob();){f=BD(g.Pb(),231);if(f.e.c.length<=1){continue}sTb(this.b,f);qTb(this.b);Hkb(f.d,new kTb)}e=KQb(d);SQb(e);Qdd(b)};var nP=mdb(Ume,'StressLayoutProvider',1128);bcb(1129,1,qie,kTb);_.td=function lTb(a){lRb(BD(a,447))};var mP=mdb(Ume,'StressLayoutProvider/lambda$0$Type',1129);bcb(990,1,{},tTb);_.c=0;_.e=0;_.g=0;var qP=mdb(Ume,'StressMajorization',990);bcb(379,22,{3:1,35:1,22:1,379:1},zTb);var vTb,wTb,xTb;var oP=ndb(Ume,'StressMajorization/Dimension',379,CI,BTb,ATb);var CTb;bcb(991,1,Dke,ETb);_.ue=function FTb(a,b){return uTb(this.a,BD(a,144),BD(b,144))};_.Fb=function GTb(a){return this===a};_.ve=function HTb(){return new tpb(this)};var pP=mdb(Ume,'StressMajorization/lambda$0$Type',991);bcb(1229,1,{},PTb);var tP=mdb(Wme,'ElkLayered',1229);bcb(1230,1,qie,STb);_.td=function TTb(a){QTb(BD(a,37))};var rP=mdb(Wme,'ElkLayered/lambda$0$Type',1230);bcb(1231,1,qie,UTb);_.td=function VTb(a){RTb(this.a,BD(a,37))};var sP=mdb(Wme,'ElkLayered/lambda$1$Type',1231);bcb(1263,1,{},bUb);var WTb,XTb,YTb;var xP=mdb(Wme,'GraphConfigurator',1263);bcb(759,1,qie,dUb);_.td=function eUb(a){$Tb(this.a,BD(a,10))};var uP=mdb(Wme,'GraphConfigurator/lambda$0$Type',759);bcb(760,1,{},fUb);_.Kb=function gUb(a){return ZTb(),new YAb(null,new Kub(BD(a,29).a,16))};var vP=mdb(Wme,'GraphConfigurator/lambda$1$Type',760);bcb(761,1,qie,hUb);_.td=function iUb(a){$Tb(this.a,BD(a,10))};var wP=mdb(Wme,'GraphConfigurator/lambda$2$Type',761);bcb(1127,209,Mle,jUb);_.Ze=function kUb(a,b){var c;c=U1b(new a2b,a);PD(hkd(a,(Nyc(),axc)))===PD((hbd(),ebd))?JTb(this.a,c,b):KTb(this.a,c,b);z2b(new D2b,c)};var yP=mdb(Wme,'LayeredLayoutProvider',1127);bcb(356,22,{3:1,35:1,22:1,356:1},rUb);var lUb,mUb,nUb,oUb,pUb;var zP=ndb(Wme,'LayeredPhases',356,CI,tUb,sUb);var uUb;bcb(1651,1,{},CUb);_.i=0;var wUb;var CP=mdb(Xme,'ComponentsToCGraphTransformer',1651);var hVb;bcb(1652,1,{},DUb);_.ef=function EUb(a,b){return $wnd.Math.min(a.a!=null?Edb(a.a):a.c.i,b.a!=null?Edb(b.a):b.c.i)};_.ff=function FUb(a,b){return $wnd.Math.min(a.a!=null?Edb(a.a):a.c.i,b.a!=null?Edb(b.a):b.c.i)};var AP=mdb(Xme,'ComponentsToCGraphTransformer/1',1652);bcb(81,1,{81:1});_.i=0;_.k=true;_.o=Qje;var IP=mdb(Yme,'CNode',81);bcb(460,81,{460:1,81:1},GUb,HUb);_.Ib=function IUb(){return ''};var BP=mdb(Xme,'ComponentsToCGraphTransformer/CRectNode',460);bcb(1623,1,{},VUb);var JUb,KUb;var FP=mdb(Xme,'OneDimensionalComponentsCompaction',1623);bcb(1624,1,{},YUb);_.Kb=function ZUb(a){return WUb(BD(a,46))};_.Fb=function $Ub(a){return this===a};var DP=mdb(Xme,'OneDimensionalComponentsCompaction/lambda$0$Type',1624);bcb(1625,1,{},_Ub);_.Kb=function aVb(a){return XUb(BD(a,46))};_.Fb=function bVb(a){return this===a};var EP=mdb(Xme,'OneDimensionalComponentsCompaction/lambda$1$Type',1625);bcb(1654,1,{},dVb);var GP=mdb(Yme,'CGraph',1654);bcb(189,1,{189:1},gVb);_.b=0;_.c=0;_.e=0;_.g=true;_.i=Qje;var HP=mdb(Yme,'CGroup',189);bcb(1653,1,{},jVb);_.ef=function kVb(a,b){return $wnd.Math.max(a.a!=null?Edb(a.a):a.c.i,b.a!=null?Edb(b.a):b.c.i)};_.ff=function lVb(a,b){return $wnd.Math.max(a.a!=null?Edb(a.a):a.c.i,b.a!=null?Edb(b.a):b.c.i)};var JP=mdb(Yme,Ike,1653);bcb(1655,1,{},CVb);_.d=false;var mVb;var LP=mdb(Yme,Nke,1655);bcb(1656,1,{},DVb);_.Kb=function EVb(a){return nVb(),Bcb(),BD(BD(a,46).a,81).d.e!=0?true:false};_.Fb=function FVb(a){return this===a};var KP=mdb(Yme,Oke,1656);bcb(823,1,{},IVb);_.a=false;_.b=false;_.c=false;_.d=false;var MP=mdb(Yme,Pke,823);bcb(1825,1,{},OVb);var RP=mdb(Zme,Qke,1825);var bQ=odb($me,Fke);bcb(1826,1,{369:1},SVb);_.Ke=function TVb(a){QVb(this,BD(a,466))};var OP=mdb(Zme,Rke,1826);bcb(1827,1,Dke,VVb);_.ue=function WVb(a,b){return UVb(BD(a,81),BD(b,81))};_.Fb=function XVb(a){return this===a};_.ve=function YVb(){return new tpb(this)};var NP=mdb(Zme,Ske,1827);bcb(466,1,{466:1},ZVb);_.a=false;var PP=mdb(Zme,Tke,466);bcb(1828,1,Dke,$Vb);_.ue=function _Vb(a,b){return PVb(BD(a,466),BD(b,466))};_.Fb=function aWb(a){return this===a};_.ve=function bWb(){return new tpb(this)};var QP=mdb(Zme,Uke,1828);bcb(140,1,{140:1},cWb,dWb);_.Fb=function eWb(a){var b;if(a==null){return false}if(TP!=rb(a)){return false}b=BD(a,140);return wtb(this.c,b.c)&&wtb(this.d,b.d)};_.Hb=function fWb(){return Hlb(OC(GC(SI,1),Uhe,1,5,[this.c,this.d]))};_.Ib=function gWb(){return '('+this.c+She+this.d+(this.a?'cx':'')+this.b+')'};_.a=true;_.c=0;_.d=0;var TP=mdb($me,'Point',140);bcb(405,22,{3:1,35:1,22:1,405:1},oWb);var hWb,iWb,jWb,kWb;var SP=ndb($me,'Point/Quadrant',405,CI,sWb,rWb);var tWb;bcb(1642,1,{},CWb);_.b=null;_.c=null;_.d=null;_.e=null;_.f=null;var vWb,wWb,xWb,yWb,zWb;var aQ=mdb($me,'RectilinearConvexHull',1642);bcb(574,1,{369:1},NWb);_.Ke=function OWb(a){MWb(this,BD(a,140))};_.b=0;var KWb;var VP=mdb($me,'RectilinearConvexHull/MaximalElementsEventHandler',574);bcb(1644,1,Dke,QWb);_.ue=function RWb(a,b){return PWb(ED(a),ED(b))};_.Fb=function SWb(a){return this===a};_.ve=function TWb(){return new tpb(this)};var UP=mdb($me,'RectilinearConvexHull/MaximalElementsEventHandler/lambda$0$Type',1644);bcb(1643,1,{369:1},VWb);_.Ke=function WWb(a){UWb(this,BD(a,140))};_.a=0;_.b=null;_.c=null;_.d=null;_.e=null;var WP=mdb($me,'RectilinearConvexHull/RectangleEventHandler',1643);bcb(1645,1,Dke,XWb);_.ue=function YWb(a,b){return EWb(BD(a,140),BD(b,140))};_.Fb=function ZWb(a){return this===a};_.ve=function $Wb(){return new tpb(this)};var XP=mdb($me,'RectilinearConvexHull/lambda$0$Type',1645);bcb(1646,1,Dke,_Wb);_.ue=function aXb(a,b){return FWb(BD(a,140),BD(b,140))};_.Fb=function bXb(a){return this===a};_.ve=function cXb(){return new tpb(this)};var YP=mdb($me,'RectilinearConvexHull/lambda$1$Type',1646);bcb(1647,1,Dke,dXb);_.ue=function eXb(a,b){return GWb(BD(a,140),BD(b,140))};_.Fb=function fXb(a){return this===a};_.ve=function gXb(){return new tpb(this)};var ZP=mdb($me,'RectilinearConvexHull/lambda$2$Type',1647);bcb(1648,1,Dke,hXb);_.ue=function iXb(a,b){return HWb(BD(a,140),BD(b,140))};_.Fb=function jXb(a){return this===a};_.ve=function kXb(){return new tpb(this)};var $P=mdb($me,'RectilinearConvexHull/lambda$3$Type',1648);bcb(1649,1,Dke,lXb);_.ue=function mXb(a,b){return IWb(BD(a,140),BD(b,140))};_.Fb=function nXb(a){return this===a};_.ve=function oXb(){return new tpb(this)};var _P=mdb($me,'RectilinearConvexHull/lambda$4$Type',1649);bcb(1650,1,{},qXb);var cQ=mdb($me,'Scanline',1650);bcb(2005,1,{});var dQ=mdb(_me,'AbstractGraphPlacer',2005);bcb(325,1,{325:1},AXb);_.mf=function BXb(a){if(this.nf(a)){Rc(this.b,BD(vNb(a,(wtc(),Esc)),21),a);return true}else{return false}};_.nf=function CXb(a){var b,c,d,e;b=BD(vNb(a,(wtc(),Esc)),21);e=BD(Qc(wXb,b),21);for(d=e.Kc();d.Ob();){c=BD(d.Pb(),21);if(!BD(Qc(this.b,c),15).dc()){return false}}return true};var wXb;var gQ=mdb(_me,'ComponentGroup',325);bcb(765,2005,{},HXb);_.of=function IXb(a){var b,c;for(c=new olb(this.a);c.an){v=0;w+=m+e;m=0}q=g.c;uXb(g,v+q.a,w+q.b);X6c(q);c=$wnd.Math.max(c,v+s.a);m=$wnd.Math.max(m,s.b);v+=s.a+e}b.f.a=c;b.f.b=w+m;if(Ccb(DD(vNb(f,qwc)))){d=new gYb;YXb(d,a,e);for(l=a.Kc();l.Ob();){k=BD(l.Pb(),37);P6c(X6c(k.c),d.e)}P6c(X6c(b.f),d.a)}tXb(b,a)};var uQ=mdb(_me,'SimpleRowGraphPlacer',1291);bcb(1292,1,Dke,VYb);_.ue=function WYb(a,b){return UYb(BD(a,37),BD(b,37))};_.Fb=function XYb(a){return this===a};_.ve=function YYb(){return new tpb(this)};var tQ=mdb(_me,'SimpleRowGraphPlacer/1',1292);var ZYb;bcb(1262,1,Vke,dZb);_.Lb=function eZb(a){var b;return b=BD(vNb(BD(a,243).b,(Nyc(),jxc)),74),!!b&&b.b!=0};_.Fb=function fZb(a){return this===a};_.Mb=function gZb(a){var b;return b=BD(vNb(BD(a,243).b,(Nyc(),jxc)),74),!!b&&b.b!=0};var vQ=mdb(dne,'CompoundGraphPostprocessor/1',1262);bcb(1261,1,ene,wZb);_.pf=function xZb(a,b){qZb(this,BD(a,37),b)};var xQ=mdb(dne,'CompoundGraphPreprocessor',1261);bcb(441,1,{441:1},yZb);_.c=false;var wQ=mdb(dne,'CompoundGraphPreprocessor/ExternalPort',441);bcb(243,1,{243:1},BZb);_.Ib=function CZb(){return Zr(this.c)+':'+TZb(this.b)};var zQ=mdb(dne,'CrossHierarchyEdge',243);bcb(763,1,Dke,EZb);_.ue=function FZb(a,b){return DZb(this,BD(a,243),BD(b,243))};_.Fb=function GZb(a){return this===a};_.ve=function IZb(){return new tpb(this)};var yQ=mdb(dne,'CrossHierarchyEdgeComparator',763);bcb(299,134,{3:1,299:1,94:1,134:1});_.p=0;var JQ=mdb(fne,'LGraphElement',299);bcb(17,299,{3:1,17:1,299:1,94:1,134:1},UZb);_.Ib=function VZb(){return TZb(this)};var AQ=mdb(fne,'LEdge',17);bcb(37,299,{3:1,20:1,37:1,299:1,94:1,134:1},XZb);_.Jc=function YZb(a){reb(this,a)};_.Kc=function ZZb(){return new olb(this.b)};_.Ib=function $Zb(){if(this.b.c.length==0){return 'G-unlayered'+Fe(this.a)}else if(this.a.c.length==0){return 'G-layered'+Fe(this.b)}return 'G[layerless'+Fe(this.a)+', layers'+Fe(this.b)+']'};var KQ=mdb(fne,'LGraph',37);var _Zb;bcb(657,1,{});_.qf=function b$b(){return this.e.n};_.We=function c$b(a){return vNb(this.e,a)};_.rf=function d$b(){return this.e.o};_.sf=function e$b(){return this.e.p};_.Xe=function f$b(a){return wNb(this.e,a)};_.tf=function g$b(a){this.e.n.a=a.a;this.e.n.b=a.b};_.uf=function h$b(a){this.e.o.a=a.a;this.e.o.b=a.b};_.vf=function i$b(a){this.e.p=a};var BQ=mdb(fne,'LGraphAdapters/AbstractLShapeAdapter',657);bcb(577,1,{839:1},j$b);_.wf=function k$b(){var a,b;if(!this.b){this.b=Pu(this.a.b.c.length);for(b=new olb(this.a.b);b.a0&&E_b((BCb(c-1,b.length),b.charCodeAt(c-1)),nne)){--c}if(g> ',a),C0b(c));Qfb(Pfb((a.a+='[',a),c.i),']')}return a.a};_.c=true;_.d=false;var t0b,u0b,v0b,w0b,x0b,y0b;var aR=mdb(fne,'LPort',11);bcb(397,1,vie,J0b);_.Jc=function K0b(a){reb(this,a)};_.Kc=function L0b(){var a;a=new olb(this.a.e);return new M0b(a)};var RQ=mdb(fne,'LPort/1',397);bcb(1290,1,aie,M0b);_.Nb=function N0b(a){Rrb(this,a)};_.Pb=function P0b(){return BD(mlb(this.a),17).c};_.Ob=function O0b(){return llb(this.a)};_.Qb=function Q0b(){nlb(this.a)};var QQ=mdb(fne,'LPort/1/1',1290);bcb(359,1,vie,R0b);_.Jc=function S0b(a){reb(this,a)};_.Kc=function T0b(){var a;return a=new olb(this.a.g),new U0b(a)};var TQ=mdb(fne,'LPort/2',359);bcb(762,1,aie,U0b);_.Nb=function V0b(a){Rrb(this,a)};_.Pb=function X0b(){return BD(mlb(this.a),17).d};_.Ob=function W0b(){return llb(this.a)};_.Qb=function Y0b(){nlb(this.a)};var SQ=mdb(fne,'LPort/2/1',762);bcb(1283,1,vie,Z0b);_.Jc=function $0b(a){reb(this,a)};_.Kc=function _0b(){return new b1b(this)};var VQ=mdb(fne,'LPort/CombineIter',1283);bcb(201,1,aie,b1b);_.Nb=function c1b(a){Rrb(this,a)};_.Qb=function f1b(){Srb()};_.Ob=function d1b(){return a1b(this)};_.Pb=function e1b(){return llb(this.a)?mlb(this.a):mlb(this.b)};var UQ=mdb(fne,'LPort/CombineIter/1',201);bcb(1285,1,Vke,h1b);_.Lb=function i1b(a){return g1b(a)};_.Fb=function j1b(a){return this===a};_.Mb=function k1b(a){return z0b(),BD(a,11).e.c.length!=0};var WQ=mdb(fne,'LPort/lambda$0$Type',1285);bcb(1284,1,Vke,m1b);_.Lb=function n1b(a){return l1b(a)};_.Fb=function o1b(a){return this===a};_.Mb=function p1b(a){return z0b(),BD(a,11).g.c.length!=0};var XQ=mdb(fne,'LPort/lambda$1$Type',1284);bcb(1286,1,Vke,q1b);_.Lb=function r1b(a){return z0b(),BD(a,11).j==(Ucd(),Acd)};_.Fb=function s1b(a){return this===a};_.Mb=function t1b(a){return z0b(),BD(a,11).j==(Ucd(),Acd)};var YQ=mdb(fne,'LPort/lambda$2$Type',1286);bcb(1287,1,Vke,u1b);_.Lb=function v1b(a){return z0b(),BD(a,11).j==(Ucd(),zcd)};_.Fb=function w1b(a){return this===a};_.Mb=function x1b(a){return z0b(),BD(a,11).j==(Ucd(),zcd)};var ZQ=mdb(fne,'LPort/lambda$3$Type',1287);bcb(1288,1,Vke,y1b);_.Lb=function z1b(a){return z0b(),BD(a,11).j==(Ucd(),Rcd)};_.Fb=function A1b(a){return this===a};_.Mb=function B1b(a){return z0b(),BD(a,11).j==(Ucd(),Rcd)};var $Q=mdb(fne,'LPort/lambda$4$Type',1288);bcb(1289,1,Vke,C1b);_.Lb=function D1b(a){return z0b(),BD(a,11).j==(Ucd(),Tcd)};_.Fb=function E1b(a){return this===a};_.Mb=function F1b(a){return z0b(),BD(a,11).j==(Ucd(),Tcd)};var _Q=mdb(fne,'LPort/lambda$5$Type',1289);bcb(29,299,{3:1,20:1,299:1,29:1,94:1,134:1},H1b);_.Jc=function I1b(a){reb(this,a)};_.Kc=function J1b(){return new olb(this.a)};_.Ib=function K1b(){return 'L_'+Jkb(this.b.b,this,0)+Fe(this.a)};var cR=mdb(fne,'Layer',29);bcb(1342,1,{},a2b);var mR=mdb(tne,une,1342);bcb(1346,1,{},e2b);_.Kb=function f2b(a){return atd(BD(a,82))};var dR=mdb(tne,'ElkGraphImporter/0methodref$connectableShapeToNode$Type',1346);bcb(1349,1,{},g2b);_.Kb=function h2b(a){return atd(BD(a,82))};var eR=mdb(tne,'ElkGraphImporter/1methodref$connectableShapeToNode$Type',1349);bcb(1343,1,qie,i2b);_.td=function j2b(a){Q1b(this.a,BD(a,118))};var fR=mdb(tne,vne,1343);bcb(1344,1,qie,k2b);_.td=function l2b(a){Q1b(this.a,BD(a,118))};var gR=mdb(tne,wne,1344);bcb(1345,1,{},m2b);_.Kb=function n2b(a){return new YAb(null,new Kub(Old(BD(a,79)),16))};var hR=mdb(tne,xne,1345);bcb(1347,1,Oie,o2b);_.Mb=function p2b(a){return b2b(this.a,BD(a,33))};var iR=mdb(tne,yne,1347);bcb(1348,1,{},q2b);_.Kb=function r2b(a){return new YAb(null,new Kub(Nld(BD(a,79)),16))};var jR=mdb(tne,'ElkGraphImporter/lambda$5$Type',1348);bcb(1350,1,Oie,s2b);_.Mb=function t2b(a){return c2b(this.a,BD(a,33))};var kR=mdb(tne,'ElkGraphImporter/lambda$7$Type',1350);bcb(1351,1,Oie,u2b);_.Mb=function v2b(a){return d2b(BD(a,79))};var lR=mdb(tne,'ElkGraphImporter/lambda$8$Type',1351);bcb(1278,1,{},D2b);var w2b;var rR=mdb(tne,'ElkGraphLayoutTransferrer',1278);bcb(1279,1,Oie,G2b);_.Mb=function H2b(a){return E2b(this.a,BD(a,17))};var nR=mdb(tne,'ElkGraphLayoutTransferrer/lambda$0$Type',1279);bcb(1280,1,qie,I2b);_.td=function J2b(a){x2b();Ekb(this.a,BD(a,17))};var oR=mdb(tne,'ElkGraphLayoutTransferrer/lambda$1$Type',1280);bcb(1281,1,Oie,K2b);_.Mb=function L2b(a){return F2b(this.a,BD(a,17))};var pR=mdb(tne,'ElkGraphLayoutTransferrer/lambda$2$Type',1281);bcb(1282,1,qie,M2b);_.td=function N2b(a){x2b();Ekb(this.a,BD(a,17))};var qR=mdb(tne,'ElkGraphLayoutTransferrer/lambda$3$Type',1282);bcb(1485,1,ene,S2b);_.pf=function T2b(a,b){Q2b(BD(a,37),b)};var uR=mdb(Ane,'CommentNodeMarginCalculator',1485);bcb(1486,1,{},U2b);_.Kb=function V2b(a){return new YAb(null,new Kub(BD(a,29).a,16))};var sR=mdb(Ane,'CommentNodeMarginCalculator/lambda$0$Type',1486);bcb(1487,1,qie,W2b);_.td=function X2b(a){R2b(BD(a,10))};var tR=mdb(Ane,'CommentNodeMarginCalculator/lambda$1$Type',1487);bcb(1488,1,ene,_2b);_.pf=function a3b(a,b){Z2b(BD(a,37),b)};var vR=mdb(Ane,'CommentPostprocessor',1488);bcb(1489,1,ene,e3b);_.pf=function f3b(a,b){b3b(BD(a,37),b)};var wR=mdb(Ane,'CommentPreprocessor',1489);bcb(1490,1,ene,h3b);_.pf=function i3b(a,b){g3b(BD(a,37),b)};var xR=mdb(Ane,'ConstraintsPostprocessor',1490);bcb(1491,1,ene,p3b);_.pf=function q3b(a,b){n3b(BD(a,37),b)};var yR=mdb(Ane,'EdgeAndLayerConstraintEdgeReverser',1491);bcb(1492,1,ene,t3b);_.pf=function v3b(a,b){r3b(BD(a,37),b)};var CR=mdb(Ane,'EndLabelPostprocessor',1492);bcb(1493,1,{},w3b);_.Kb=function x3b(a){return new YAb(null,new Kub(BD(a,29).a,16))};var zR=mdb(Ane,'EndLabelPostprocessor/lambda$0$Type',1493);bcb(1494,1,Oie,y3b);_.Mb=function z3b(a){return u3b(BD(a,10))};var AR=mdb(Ane,'EndLabelPostprocessor/lambda$1$Type',1494);bcb(1495,1,qie,A3b);_.td=function B3b(a){s3b(BD(a,10))};var BR=mdb(Ane,'EndLabelPostprocessor/lambda$2$Type',1495);bcb(1496,1,ene,M3b);_.pf=function P3b(a,b){I3b(BD(a,37),b)};var JR=mdb(Ane,'EndLabelPreprocessor',1496);bcb(1497,1,{},Q3b);_.Kb=function R3b(a){return new YAb(null,new Kub(BD(a,29).a,16))};var DR=mdb(Ane,'EndLabelPreprocessor/lambda$0$Type',1497);bcb(1498,1,qie,S3b);_.td=function T3b(a){E3b(this.a,this.b,this.c,BD(a,10))};_.a=0;_.b=0;_.c=false;var ER=mdb(Ane,'EndLabelPreprocessor/lambda$1$Type',1498);bcb(1499,1,Oie,U3b);_.Mb=function V3b(a){return PD(vNb(BD(a,70),(Nyc(),Qwc)))===PD((qad(),pad))};var FR=mdb(Ane,'EndLabelPreprocessor/lambda$2$Type',1499);bcb(1500,1,qie,W3b);_.td=function X3b(a){Dsb(this.a,BD(a,70))};var GR=mdb(Ane,'EndLabelPreprocessor/lambda$3$Type',1500);bcb(1501,1,Oie,Y3b);_.Mb=function Z3b(a){return PD(vNb(BD(a,70),(Nyc(),Qwc)))===PD((qad(),oad))};var HR=mdb(Ane,'EndLabelPreprocessor/lambda$4$Type',1501);bcb(1502,1,qie,$3b);_.td=function _3b(a){Dsb(this.a,BD(a,70))};var IR=mdb(Ane,'EndLabelPreprocessor/lambda$5$Type',1502);bcb(1551,1,ene,i4b);_.pf=function j4b(a,b){f4b(BD(a,37),b)};var a4b;var RR=mdb(Ane,'EndLabelSorter',1551);bcb(1552,1,Dke,l4b);_.ue=function m4b(a,b){return k4b(BD(a,456),BD(b,456))};_.Fb=function n4b(a){return this===a};_.ve=function o4b(){return new tpb(this)};var KR=mdb(Ane,'EndLabelSorter/1',1552);bcb(456,1,{456:1},p4b);var LR=mdb(Ane,'EndLabelSorter/LabelGroup',456);bcb(1553,1,{},q4b);_.Kb=function r4b(a){return b4b(),new YAb(null,new Kub(BD(a,29).a,16))};var MR=mdb(Ane,'EndLabelSorter/lambda$0$Type',1553);bcb(1554,1,Oie,s4b);_.Mb=function t4b(a){return b4b(),BD(a,10).k==(j0b(),h0b)};var NR=mdb(Ane,'EndLabelSorter/lambda$1$Type',1554);bcb(1555,1,qie,u4b);_.td=function v4b(a){g4b(BD(a,10))};var OR=mdb(Ane,'EndLabelSorter/lambda$2$Type',1555);bcb(1556,1,Oie,w4b);_.Mb=function x4b(a){return b4b(),PD(vNb(BD(a,70),(Nyc(),Qwc)))===PD((qad(),oad))};var PR=mdb(Ane,'EndLabelSorter/lambda$3$Type',1556);bcb(1557,1,Oie,y4b);_.Mb=function z4b(a){return b4b(),PD(vNb(BD(a,70),(Nyc(),Qwc)))===PD((qad(),pad))};var QR=mdb(Ane,'EndLabelSorter/lambda$4$Type',1557);bcb(1503,1,ene,L4b);_.pf=function M4b(a,b){J4b(this,BD(a,37))};_.b=0;_.c=0;var YR=mdb(Ane,'FinalSplineBendpointsCalculator',1503);bcb(1504,1,{},N4b);_.Kb=function O4b(a){return new YAb(null,new Kub(BD(a,29).a,16))};var SR=mdb(Ane,'FinalSplineBendpointsCalculator/lambda$0$Type',1504);bcb(1505,1,{},P4b);_.Kb=function Q4b(a){return new YAb(null,new Lub(new Sr(ur(U_b(BD(a,10)).a.Kc(),new Sq))))};var TR=mdb(Ane,'FinalSplineBendpointsCalculator/lambda$1$Type',1505);bcb(1506,1,Oie,R4b);_.Mb=function S4b(a){return !OZb(BD(a,17))};var UR=mdb(Ane,'FinalSplineBendpointsCalculator/lambda$2$Type',1506);bcb(1507,1,Oie,T4b);_.Mb=function U4b(a){return wNb(BD(a,17),(wtc(),rtc))};var VR=mdb(Ane,'FinalSplineBendpointsCalculator/lambda$3$Type',1507);bcb(1508,1,qie,V4b);_.td=function W4b(a){C4b(this.a,BD(a,128))};var WR=mdb(Ane,'FinalSplineBendpointsCalculator/lambda$4$Type',1508);bcb(1509,1,qie,X4b);_.td=function Y4b(a){smb(BD(a,17).a)};var XR=mdb(Ane,'FinalSplineBendpointsCalculator/lambda$5$Type',1509);bcb(792,1,ene,u5b);_.pf=function v5b(a,b){l5b(this,BD(a,37),b)};var $R=mdb(Ane,'GraphTransformer',792);bcb(511,22,{3:1,35:1,22:1,511:1},z5b);var w5b,x5b;var ZR=ndb(Ane,'GraphTransformer/Mode',511,CI,B5b,A5b);var C5b;bcb(1510,1,ene,I5b);_.pf=function J5b(a,b){F5b(BD(a,37),b)};var _R=mdb(Ane,'HierarchicalNodeResizingProcessor',1510);bcb(1511,1,ene,Q5b);_.pf=function R5b(a,b){M5b(BD(a,37),b)};var bS=mdb(Ane,'HierarchicalPortConstraintProcessor',1511);bcb(1512,1,Dke,T5b);_.ue=function U5b(a,b){return S5b(BD(a,10),BD(b,10))};_.Fb=function V5b(a){return this===a};_.ve=function W5b(){return new tpb(this)};var aS=mdb(Ane,'HierarchicalPortConstraintProcessor/NodeComparator',1512);bcb(1513,1,ene,Z5b);_.pf=function $5b(a,b){X5b(BD(a,37),b)};var cS=mdb(Ane,'HierarchicalPortDummySizeProcessor',1513);bcb(1514,1,ene,l6b);_.pf=function m6b(a,b){e6b(this,BD(a,37),b)};_.a=0;var fS=mdb(Ane,'HierarchicalPortOrthogonalEdgeRouter',1514);bcb(1515,1,Dke,o6b);_.ue=function p6b(a,b){return n6b(BD(a,10),BD(b,10))};_.Fb=function q6b(a){return this===a};_.ve=function r6b(){return new tpb(this)};var dS=mdb(Ane,'HierarchicalPortOrthogonalEdgeRouter/1',1515);bcb(1516,1,Dke,t6b);_.ue=function u6b(a,b){return s6b(BD(a,10),BD(b,10))};_.Fb=function v6b(a){return this===a};_.ve=function w6b(){return new tpb(this)};var eS=mdb(Ane,'HierarchicalPortOrthogonalEdgeRouter/2',1516);bcb(1517,1,ene,z6b);_.pf=function A6b(a,b){y6b(BD(a,37),b)};var gS=mdb(Ane,'HierarchicalPortPositionProcessor',1517);bcb(1518,1,ene,J6b);_.pf=function K6b(a,b){I6b(this,BD(a,37))};_.a=0;_.c=0;var B6b,C6b;var kS=mdb(Ane,'HighDegreeNodeLayeringProcessor',1518);bcb(571,1,{571:1},L6b);_.b=-1;_.d=-1;var hS=mdb(Ane,'HighDegreeNodeLayeringProcessor/HighDegreeNodeInformation',571);bcb(1519,1,{},M6b);_.Kb=function N6b(a){return D6b(),R_b(BD(a,10))};_.Fb=function O6b(a){return this===a};var iS=mdb(Ane,'HighDegreeNodeLayeringProcessor/lambda$0$Type',1519);bcb(1520,1,{},P6b);_.Kb=function Q6b(a){return D6b(),U_b(BD(a,10))};_.Fb=function R6b(a){return this===a};var jS=mdb(Ane,'HighDegreeNodeLayeringProcessor/lambda$1$Type',1520);bcb(1526,1,ene,X6b);_.pf=function Y6b(a,b){W6b(this,BD(a,37),b)};var pS=mdb(Ane,'HyperedgeDummyMerger',1526);bcb(793,1,{},Z6b);_.a=false;_.b=false;_.c=false;var lS=mdb(Ane,'HyperedgeDummyMerger/MergeState',793);bcb(1527,1,{},$6b);_.Kb=function _6b(a){return new YAb(null,new Kub(BD(a,29).a,16))};var mS=mdb(Ane,'HyperedgeDummyMerger/lambda$0$Type',1527);bcb(1528,1,{},a7b);_.Kb=function b7b(a){return new YAb(null,new Kub(BD(a,10).j,16))};var nS=mdb(Ane,'HyperedgeDummyMerger/lambda$1$Type',1528);bcb(1529,1,qie,c7b);_.td=function d7b(a){BD(a,11).p=-1};var oS=mdb(Ane,'HyperedgeDummyMerger/lambda$2$Type',1529);bcb(1530,1,ene,g7b);_.pf=function h7b(a,b){f7b(BD(a,37),b)};var qS=mdb(Ane,'HypernodesProcessor',1530);bcb(1531,1,ene,j7b);_.pf=function k7b(a,b){i7b(BD(a,37),b)};var rS=mdb(Ane,'InLayerConstraintProcessor',1531);bcb(1532,1,ene,m7b);_.pf=function n7b(a,b){l7b(BD(a,37),b)};var sS=mdb(Ane,'InnermostNodeMarginCalculator',1532);bcb(1533,1,ene,r7b);_.pf=function w7b(a,b){q7b(this,BD(a,37))};_.a=Qje;_.b=Qje;_.c=Pje;_.d=Pje;var zS=mdb(Ane,'InteractiveExternalPortPositioner',1533);bcb(1534,1,{},x7b);_.Kb=function y7b(a){return BD(a,17).d.i};_.Fb=function z7b(a){return this===a};var tS=mdb(Ane,'InteractiveExternalPortPositioner/lambda$0$Type',1534);bcb(1535,1,{},A7b);_.Kb=function B7b(a){return s7b(this.a,ED(a))};_.Fb=function C7b(a){return this===a};var uS=mdb(Ane,'InteractiveExternalPortPositioner/lambda$1$Type',1535);bcb(1536,1,{},D7b);_.Kb=function E7b(a){return BD(a,17).c.i};_.Fb=function F7b(a){return this===a};var vS=mdb(Ane,'InteractiveExternalPortPositioner/lambda$2$Type',1536);bcb(1537,1,{},G7b);_.Kb=function H7b(a){return t7b(this.a,ED(a))};_.Fb=function I7b(a){return this===a};var wS=mdb(Ane,'InteractiveExternalPortPositioner/lambda$3$Type',1537);bcb(1538,1,{},J7b);_.Kb=function K7b(a){return u7b(this.a,ED(a))};_.Fb=function L7b(a){return this===a};var xS=mdb(Ane,'InteractiveExternalPortPositioner/lambda$4$Type',1538);bcb(1539,1,{},M7b);_.Kb=function N7b(a){return v7b(this.a,ED(a))};_.Fb=function O7b(a){return this===a};var yS=mdb(Ane,'InteractiveExternalPortPositioner/lambda$5$Type',1539);bcb(77,22,{3:1,35:1,22:1,77:1,234:1},T8b);_.Kf=function U8b(){switch(this.g){case 15:return new eoc;case 22:return new Aoc;case 47:return new Joc;case 28:case 35:return new uac;case 32:return new S2b;case 42:return new _2b;case 1:return new e3b;case 41:return new h3b;case 56:return new u5b((y5b(),x5b));case 0:return new u5b((y5b(),w5b));case 2:return new p3b;case 54:return new t3b;case 33:return new M3b;case 51:return new L4b;case 55:return new I5b;case 13:return new Q5b;case 38:return new Z5b;case 44:return new l6b;case 40:return new z6b;case 9:return new J6b;case 49:return new sgc;case 37:return new X6b;case 43:return new g7b;case 27:return new j7b;case 30:return new m7b;case 3:return new r7b;case 18:return new b9b;case 29:return new h9b;case 5:return new u9b;case 50:return new D9b;case 34:return new $9b;case 36:return new Iac;case 52:return new i4b;case 11:return new Sac;case 7:return new abc;case 39:return new obc;case 45:return new rbc;case 16:return new vbc;case 10:return new Fbc;case 48:return new Xbc;case 21:return new ccc;case 23:return new fGc((rGc(),pGc));case 8:return new lcc;case 12:return new tcc;case 4:return new ycc;case 19:return new Tcc;case 17:return new pdc;case 53:return new sdc;case 6:return new hec;case 25:return new wdc;case 46:return new Ndc;case 31:return new sec;case 14:return new Fec;case 26:return new ppc;case 20:return new Uec;case 24:return new fGc((rGc(),qGc));default:throw vbb(new Wdb(Dne+(this.f!=null?this.f:''+this.g)));}};var P7b,Q7b,R7b,S7b,T7b,U7b,V7b,W7b,X7b,Y7b,Z7b,$7b,_7b,a8b,b8b,c8b,d8b,e8b,f8b,g8b,h8b,i8b,j8b,k8b,l8b,m8b,n8b,o8b,p8b,q8b,r8b,s8b,t8b,u8b,v8b,w8b,x8b,y8b,z8b,A8b,B8b,C8b,D8b,E8b,F8b,G8b,H8b,I8b,J8b,K8b,L8b,M8b,N8b,O8b,P8b,Q8b,R8b;var AS=ndb(Ane,Ene,77,CI,W8b,V8b);var X8b;bcb(1540,1,ene,b9b);_.pf=function c9b(a,b){_8b(BD(a,37),b)};var BS=mdb(Ane,'InvertedPortProcessor',1540);bcb(1541,1,ene,h9b);_.pf=function i9b(a,b){g9b(BD(a,37),b)};var FS=mdb(Ane,'LabelAndNodeSizeProcessor',1541);bcb(1542,1,Oie,j9b);_.Mb=function k9b(a){return BD(a,10).k==(j0b(),h0b)};var CS=mdb(Ane,'LabelAndNodeSizeProcessor/lambda$0$Type',1542);bcb(1543,1,Oie,l9b);_.Mb=function m9b(a){return BD(a,10).k==(j0b(),e0b)};var DS=mdb(Ane,'LabelAndNodeSizeProcessor/lambda$1$Type',1543);bcb(1544,1,qie,n9b);_.td=function o9b(a){e9b(this.b,this.a,this.c,BD(a,10))};_.a=false;_.c=false;var ES=mdb(Ane,'LabelAndNodeSizeProcessor/lambda$2$Type',1544);bcb(1545,1,ene,u9b);_.pf=function v9b(a,b){s9b(BD(a,37),b)};var p9b;var HS=mdb(Ane,'LabelDummyInserter',1545);bcb(1546,1,Vke,w9b);_.Lb=function x9b(a){return PD(vNb(BD(a,70),(Nyc(),Qwc)))===PD((qad(),nad))};_.Fb=function y9b(a){return this===a};_.Mb=function z9b(a){return PD(vNb(BD(a,70),(Nyc(),Qwc)))===PD((qad(),nad))};var GS=mdb(Ane,'LabelDummyInserter/1',1546);bcb(1547,1,ene,D9b);_.pf=function E9b(a,b){C9b(BD(a,37),b)};var JS=mdb(Ane,'LabelDummyRemover',1547);bcb(1548,1,Oie,F9b);_.Mb=function G9b(a){return Ccb(DD(vNb(BD(a,70),(Nyc(),Pwc))))};var IS=mdb(Ane,'LabelDummyRemover/lambda$0$Type',1548);bcb(1359,1,ene,$9b);_.pf=function cac(a,b){W9b(this,BD(a,37),b)};_.a=null;var H9b;var QS=mdb(Ane,'LabelDummySwitcher',1359);bcb(286,1,{286:1},gac);_.c=0;_.d=null;_.f=0;var KS=mdb(Ane,'LabelDummySwitcher/LabelDummyInfo',286);bcb(1360,1,{},hac);_.Kb=function iac(a){return I9b(),new YAb(null,new Kub(BD(a,29).a,16))};var LS=mdb(Ane,'LabelDummySwitcher/lambda$0$Type',1360);bcb(1361,1,Oie,jac);_.Mb=function kac(a){return I9b(),BD(a,10).k==(j0b(),f0b)};var MS=mdb(Ane,'LabelDummySwitcher/lambda$1$Type',1361);bcb(1362,1,{},lac);_.Kb=function mac(a){return _9b(this.a,BD(a,10))};var NS=mdb(Ane,'LabelDummySwitcher/lambda$2$Type',1362);bcb(1363,1,qie,nac);_.td=function oac(a){aac(this.a,BD(a,286))};var OS=mdb(Ane,'LabelDummySwitcher/lambda$3$Type',1363);bcb(1364,1,Dke,pac);_.ue=function qac(a,b){return bac(BD(a,286),BD(b,286))};_.Fb=function rac(a){return this===a};_.ve=function sac(){return new tpb(this)};var PS=mdb(Ane,'LabelDummySwitcher/lambda$4$Type',1364);bcb(791,1,ene,uac);_.pf=function vac(a,b){tac(BD(a,37),b)};var RS=mdb(Ane,'LabelManagementProcessor',791);bcb(1549,1,ene,Iac);_.pf=function Jac(a,b){Cac(BD(a,37),b)};var TS=mdb(Ane,'LabelSideSelector',1549);bcb(1550,1,Oie,Kac);_.Mb=function Lac(a){return Ccb(DD(vNb(BD(a,70),(Nyc(),Pwc))))};var SS=mdb(Ane,'LabelSideSelector/lambda$0$Type',1550);bcb(1558,1,ene,Sac);_.pf=function Tac(a,b){Oac(BD(a,37),b)};var US=mdb(Ane,'LayerConstraintPostprocessor',1558);bcb(1559,1,ene,abc);_.pf=function bbc(a,b){$ac(BD(a,37),b)};var Uac;var WS=mdb(Ane,'LayerConstraintPreprocessor',1559);bcb(360,22,{3:1,35:1,22:1,360:1},ibc);var cbc,dbc,ebc,fbc;var VS=ndb(Ane,'LayerConstraintPreprocessor/HiddenNodeConnections',360,CI,kbc,jbc);var lbc;bcb(1560,1,ene,obc);_.pf=function pbc(a,b){nbc(BD(a,37),b)};var XS=mdb(Ane,'LayerSizeAndGraphHeightCalculator',1560);bcb(1561,1,ene,rbc);_.pf=function tbc(a,b){qbc(BD(a,37),b)};var YS=mdb(Ane,'LongEdgeJoiner',1561);bcb(1562,1,ene,vbc);_.pf=function xbc(a,b){ubc(BD(a,37),b)};var ZS=mdb(Ane,'LongEdgeSplitter',1562);bcb(1563,1,ene,Fbc);_.pf=function Ibc(a,b){Bbc(this,BD(a,37),b)};_.d=0;_.e=0;_.i=0;_.j=0;_.k=0;_.n=0;var bT=mdb(Ane,'NodePromotion',1563);bcb(1564,1,{},Jbc);_.Kb=function Kbc(a){return BD(a,46),Bcb(),true};_.Fb=function Lbc(a){return this===a};var $S=mdb(Ane,'NodePromotion/lambda$0$Type',1564);bcb(1565,1,{},Mbc);_.Kb=function Nbc(a){return Gbc(this.a,BD(a,46))};_.Fb=function Obc(a){return this===a};_.a=0;var _S=mdb(Ane,'NodePromotion/lambda$1$Type',1565);bcb(1566,1,{},Pbc);_.Kb=function Qbc(a){return Hbc(this.a,BD(a,46))};_.Fb=function Rbc(a){return this===a};_.a=0;var aT=mdb(Ane,'NodePromotion/lambda$2$Type',1566);bcb(1567,1,ene,Xbc);_.pf=function Ybc(a,b){Sbc(BD(a,37),b)};var cT=mdb(Ane,'NorthSouthPortPostprocessor',1567);bcb(1568,1,ene,ccc);_.pf=function ecc(a,b){acc(BD(a,37),b)};var eT=mdb(Ane,'NorthSouthPortPreprocessor',1568);bcb(1569,1,Dke,fcc);_.ue=function gcc(a,b){return dcc(BD(a,11),BD(b,11))};_.Fb=function hcc(a){return this===a};_.ve=function icc(){return new tpb(this)};var dT=mdb(Ane,'NorthSouthPortPreprocessor/lambda$0$Type',1569);bcb(1570,1,ene,lcc);_.pf=function ncc(a,b){kcc(BD(a,37),b)};var hT=mdb(Ane,'PartitionMidprocessor',1570);bcb(1571,1,Oie,occ);_.Mb=function pcc(a){return wNb(BD(a,10),(Nyc(),Nxc))};var fT=mdb(Ane,'PartitionMidprocessor/lambda$0$Type',1571);bcb(1572,1,qie,qcc);_.td=function rcc(a){mcc(this.a,BD(a,10))};var gT=mdb(Ane,'PartitionMidprocessor/lambda$1$Type',1572);bcb(1573,1,ene,tcc);_.pf=function ucc(a,b){scc(BD(a,37),b)};var iT=mdb(Ane,'PartitionPostprocessor',1573);bcb(1574,1,ene,ycc);_.pf=function zcc(a,b){wcc(BD(a,37),b)};var nT=mdb(Ane,'PartitionPreprocessor',1574);bcb(1575,1,Oie,Acc);_.Mb=function Bcc(a){return wNb(BD(a,10),(Nyc(),Nxc))};var jT=mdb(Ane,'PartitionPreprocessor/lambda$0$Type',1575);bcb(1576,1,{},Ccc);_.Kb=function Dcc(a){return new YAb(null,new Lub(new Sr(ur(U_b(BD(a,10)).a.Kc(),new Sq))))};var kT=mdb(Ane,'PartitionPreprocessor/lambda$1$Type',1576);bcb(1577,1,Oie,Ecc);_.Mb=function Fcc(a){return vcc(BD(a,17))};var lT=mdb(Ane,'PartitionPreprocessor/lambda$2$Type',1577);bcb(1578,1,qie,Gcc);_.td=function Hcc(a){xcc(BD(a,17))};var mT=mdb(Ane,'PartitionPreprocessor/lambda$3$Type',1578);bcb(1579,1,ene,Tcc);_.pf=function Xcc(a,b){Qcc(BD(a,37),b)};var Icc,Jcc,Kcc,Lcc,Mcc,Ncc;var tT=mdb(Ane,'PortListSorter',1579);bcb(1580,1,{},Zcc);_.Kb=function $cc(a){return Occ(),BD(a,11).e};var oT=mdb(Ane,'PortListSorter/lambda$0$Type',1580);bcb(1581,1,{},_cc);_.Kb=function adc(a){return Occ(),BD(a,11).g};var pT=mdb(Ane,'PortListSorter/lambda$1$Type',1581);bcb(1582,1,Dke,bdc);_.ue=function cdc(a,b){return Ucc(BD(a,11),BD(b,11))};_.Fb=function ddc(a){return this===a};_.ve=function edc(){return new tpb(this)};var qT=mdb(Ane,'PortListSorter/lambda$2$Type',1582);bcb(1583,1,Dke,fdc);_.ue=function gdc(a,b){return Vcc(BD(a,11),BD(b,11))};_.Fb=function hdc(a){return this===a};_.ve=function idc(){return new tpb(this)};var rT=mdb(Ane,'PortListSorter/lambda$3$Type',1583);bcb(1584,1,Dke,jdc);_.ue=function kdc(a,b){return Wcc(BD(a,11),BD(b,11))};_.Fb=function ldc(a){return this===a};_.ve=function mdc(){return new tpb(this)};var sT=mdb(Ane,'PortListSorter/lambda$4$Type',1584);bcb(1585,1,ene,pdc);_.pf=function qdc(a,b){ndc(BD(a,37),b)};var uT=mdb(Ane,'PortSideProcessor',1585);bcb(1586,1,ene,sdc);_.pf=function tdc(a,b){rdc(BD(a,37),b)};var vT=mdb(Ane,'ReversedEdgeRestorer',1586);bcb(1591,1,ene,wdc);_.pf=function xdc(a,b){udc(this,BD(a,37),b)};var CT=mdb(Ane,'SelfLoopPortRestorer',1591);bcb(1592,1,{},ydc);_.Kb=function zdc(a){return new YAb(null,new Kub(BD(a,29).a,16))};var wT=mdb(Ane,'SelfLoopPortRestorer/lambda$0$Type',1592);bcb(1593,1,Oie,Adc);_.Mb=function Bdc(a){return BD(a,10).k==(j0b(),h0b)};var xT=mdb(Ane,'SelfLoopPortRestorer/lambda$1$Type',1593);bcb(1594,1,Oie,Cdc);_.Mb=function Ddc(a){return wNb(BD(a,10),(wtc(),ntc))};var yT=mdb(Ane,'SelfLoopPortRestorer/lambda$2$Type',1594);bcb(1595,1,{},Edc);_.Kb=function Fdc(a){return BD(vNb(BD(a,10),(wtc(),ntc)),403)};var zT=mdb(Ane,'SelfLoopPortRestorer/lambda$3$Type',1595);bcb(1596,1,qie,Gdc);_.td=function Hdc(a){vdc(this.a,BD(a,403))};var AT=mdb(Ane,'SelfLoopPortRestorer/lambda$4$Type',1596);bcb(794,1,qie,Idc);_.td=function Jdc(a){ljc(BD(a,101))};var BT=mdb(Ane,'SelfLoopPortRestorer/lambda$5$Type',794);bcb(1597,1,ene,Ndc);_.pf=function Pdc(a,b){Kdc(BD(a,37),b)};var LT=mdb(Ane,'SelfLoopPostProcessor',1597);bcb(1598,1,{},Qdc);_.Kb=function Rdc(a){return new YAb(null,new Kub(BD(a,29).a,16))};var DT=mdb(Ane,'SelfLoopPostProcessor/lambda$0$Type',1598);bcb(1599,1,Oie,Sdc);_.Mb=function Tdc(a){return BD(a,10).k==(j0b(),h0b)};var ET=mdb(Ane,'SelfLoopPostProcessor/lambda$1$Type',1599);bcb(1600,1,Oie,Udc);_.Mb=function Vdc(a){return wNb(BD(a,10),(wtc(),ntc))};var FT=mdb(Ane,'SelfLoopPostProcessor/lambda$2$Type',1600);bcb(1601,1,qie,Wdc);_.td=function Xdc(a){Ldc(BD(a,10))};var GT=mdb(Ane,'SelfLoopPostProcessor/lambda$3$Type',1601);bcb(1602,1,{},Ydc);_.Kb=function Zdc(a){return new YAb(null,new Kub(BD(a,101).f,1))};var HT=mdb(Ane,'SelfLoopPostProcessor/lambda$4$Type',1602);bcb(1603,1,qie,$dc);_.td=function _dc(a){Mdc(this.a,BD(a,409))};var IT=mdb(Ane,'SelfLoopPostProcessor/lambda$5$Type',1603);bcb(1604,1,Oie,aec);_.Mb=function bec(a){return !!BD(a,101).i};var JT=mdb(Ane,'SelfLoopPostProcessor/lambda$6$Type',1604);bcb(1605,1,qie,cec);_.td=function dec(a){Odc(this.a,BD(a,101))};var KT=mdb(Ane,'SelfLoopPostProcessor/lambda$7$Type',1605);bcb(1587,1,ene,hec);_.pf=function iec(a,b){gec(BD(a,37),b)};var PT=mdb(Ane,'SelfLoopPreProcessor',1587);bcb(1588,1,{},jec);_.Kb=function kec(a){return new YAb(null,new Kub(BD(a,101).f,1))};var MT=mdb(Ane,'SelfLoopPreProcessor/lambda$0$Type',1588);bcb(1589,1,{},lec);_.Kb=function mec(a){return BD(a,409).a};var NT=mdb(Ane,'SelfLoopPreProcessor/lambda$1$Type',1589);bcb(1590,1,qie,nec);_.td=function oec(a){fec(BD(a,17))};var OT=mdb(Ane,'SelfLoopPreProcessor/lambda$2$Type',1590);bcb(1606,1,ene,sec);_.pf=function tec(a,b){qec(this,BD(a,37),b)};var VT=mdb(Ane,'SelfLoopRouter',1606);bcb(1607,1,{},uec);_.Kb=function vec(a){return new YAb(null,new Kub(BD(a,29).a,16))};var QT=mdb(Ane,'SelfLoopRouter/lambda$0$Type',1607);bcb(1608,1,Oie,wec);_.Mb=function xec(a){return BD(a,10).k==(j0b(),h0b)};var RT=mdb(Ane,'SelfLoopRouter/lambda$1$Type',1608);bcb(1609,1,Oie,yec);_.Mb=function zec(a){return wNb(BD(a,10),(wtc(),ntc))};var ST=mdb(Ane,'SelfLoopRouter/lambda$2$Type',1609);bcb(1610,1,{},Aec);_.Kb=function Bec(a){return BD(vNb(BD(a,10),(wtc(),ntc)),403)};var TT=mdb(Ane,'SelfLoopRouter/lambda$3$Type',1610);bcb(1611,1,qie,Cec);_.td=function Dec(a){pec(this.a,this.b,BD(a,403))};var UT=mdb(Ane,'SelfLoopRouter/lambda$4$Type',1611);bcb(1612,1,ene,Fec);_.pf=function Iec(a,b){Eec(BD(a,37),b)};var $T=mdb(Ane,'SemiInteractiveCrossMinProcessor',1612);bcb(1613,1,Oie,Jec);_.Mb=function Kec(a){return BD(a,10).k==(j0b(),h0b)};var WT=mdb(Ane,'SemiInteractiveCrossMinProcessor/lambda$0$Type',1613);bcb(1614,1,Oie,Lec);_.Mb=function Mec(a){return uNb(BD(a,10))._b((Nyc(),ayc))};var XT=mdb(Ane,'SemiInteractiveCrossMinProcessor/lambda$1$Type',1614);bcb(1615,1,Dke,Nec);_.ue=function Oec(a,b){return Gec(BD(a,10),BD(b,10))};_.Fb=function Pec(a){return this===a};_.ve=function Qec(){return new tpb(this)};var YT=mdb(Ane,'SemiInteractiveCrossMinProcessor/lambda$2$Type',1615);bcb(1616,1,{},Rec);_.Ce=function Sec(a,b){return Hec(BD(a,10),BD(b,10))};var ZT=mdb(Ane,'SemiInteractiveCrossMinProcessor/lambda$3$Type',1616);bcb(1618,1,ene,Uec);_.pf=function Yec(a,b){Tec(BD(a,37),b)};var bU=mdb(Ane,'SortByInputModelProcessor',1618);bcb(1619,1,Oie,Zec);_.Mb=function $ec(a){return BD(a,11).g.c.length!=0};var _T=mdb(Ane,'SortByInputModelProcessor/lambda$0$Type',1619);bcb(1620,1,qie,_ec);_.td=function afc(a){Wec(this.a,BD(a,11))};var aU=mdb(Ane,'SortByInputModelProcessor/lambda$1$Type',1620);bcb(1693,803,{},jfc);_.Me=function kfc(a){var b,c,d,e;this.c=a;switch(this.a.g){case 2:b=new Rkb;MAb(JAb(new YAb(null,new Kub(this.c.a.b,16)),new lgc),new ngc(this,b));nEb(this,new tfc);Hkb(b,new xfc);b.c=KC(SI,Uhe,1,0,5,1);MAb(JAb(new YAb(null,new Kub(this.c.a.b,16)),new zfc),new Bfc(b));nEb(this,new Ffc);Hkb(b,new Jfc);b.c=KC(SI,Uhe,1,0,5,1);c=Ntb($zb(OAb(new YAb(null,new Kub(this.c.a.b,16)),new Lfc(this))),new Nfc);MAb(new YAb(null,new Kub(this.c.a.a,16)),new Rfc(c,b));nEb(this,new Vfc);Hkb(b,new Zfc);b.c=KC(SI,Uhe,1,0,5,1);break;case 3:d=new Rkb;nEb(this,new lfc);e=Ntb($zb(OAb(new YAb(null,new Kub(this.c.a.b,16)),new pfc(this))),new Pfc);MAb(JAb(new YAb(null,new Kub(this.c.a.b,16)),new _fc),new bgc(e,d));nEb(this,new fgc);Hkb(d,new jgc);d.c=KC(SI,Uhe,1,0,5,1);break;default:throw vbb(new x2c);}};_.b=0;var AU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation',1693);bcb(1694,1,Vke,lfc);_.Lb=function mfc(a){return JD(BD(a,57).g,145)};_.Fb=function nfc(a){return this===a};_.Mb=function ofc(a){return JD(BD(a,57).g,145)};var cU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$0$Type',1694);bcb(1695,1,{},pfc);_.Fe=function qfc(a){return dfc(this.a,BD(a,57))};var dU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$1$Type',1695);bcb(1703,1,Pie,rfc);_.Vd=function sfc(){cfc(this.a,this.b,-1)};_.b=0;var eU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$10$Type',1703);bcb(1705,1,Vke,tfc);_.Lb=function ufc(a){return JD(BD(a,57).g,145)};_.Fb=function vfc(a){return this===a};_.Mb=function wfc(a){return JD(BD(a,57).g,145)};var fU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$11$Type',1705);bcb(1706,1,qie,xfc);_.td=function yfc(a){BD(a,365).Vd()};var gU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$12$Type',1706);bcb(1707,1,Oie,zfc);_.Mb=function Afc(a){return JD(BD(a,57).g,10)};var hU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$13$Type',1707);bcb(1709,1,qie,Bfc);_.td=function Cfc(a){efc(this.a,BD(a,57))};var iU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$14$Type',1709);bcb(1708,1,Pie,Dfc);_.Vd=function Efc(){cfc(this.b,this.a,-1)};_.a=0;var jU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$15$Type',1708);bcb(1710,1,Vke,Ffc);_.Lb=function Gfc(a){return JD(BD(a,57).g,10)};_.Fb=function Hfc(a){return this===a};_.Mb=function Ifc(a){return JD(BD(a,57).g,10)};var kU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$16$Type',1710);bcb(1711,1,qie,Jfc);_.td=function Kfc(a){BD(a,365).Vd()};var lU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$17$Type',1711);bcb(1712,1,{},Lfc);_.Fe=function Mfc(a){return ffc(this.a,BD(a,57))};var mU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$18$Type',1712);bcb(1713,1,{},Nfc);_.De=function Ofc(){return 0};var nU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$19$Type',1713);bcb(1696,1,{},Pfc);_.De=function Qfc(){return 0};var oU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$2$Type',1696);bcb(1715,1,qie,Rfc);_.td=function Sfc(a){gfc(this.a,this.b,BD(a,307))};_.a=0;var pU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$20$Type',1715);bcb(1714,1,Pie,Tfc);_.Vd=function Ufc(){bfc(this.a,this.b,-1)};_.b=0;var qU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$21$Type',1714);bcb(1716,1,Vke,Vfc);_.Lb=function Wfc(a){return BD(a,57),true};_.Fb=function Xfc(a){return this===a};_.Mb=function Yfc(a){return BD(a,57),true};var rU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$22$Type',1716);bcb(1717,1,qie,Zfc);_.td=function $fc(a){BD(a,365).Vd()};var sU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$23$Type',1717);bcb(1697,1,Oie,_fc);_.Mb=function agc(a){return JD(BD(a,57).g,10)};var tU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$3$Type',1697);bcb(1699,1,qie,bgc);_.td=function cgc(a){hfc(this.a,this.b,BD(a,57))};_.a=0;var uU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$4$Type',1699);bcb(1698,1,Pie,dgc);_.Vd=function egc(){cfc(this.b,this.a,-1)};_.a=0;var vU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$5$Type',1698);bcb(1700,1,Vke,fgc);_.Lb=function ggc(a){return BD(a,57),true};_.Fb=function hgc(a){return this===a};_.Mb=function igc(a){return BD(a,57),true};var wU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$6$Type',1700);bcb(1701,1,qie,jgc);_.td=function kgc(a){BD(a,365).Vd()};var xU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$7$Type',1701);bcb(1702,1,Oie,lgc);_.Mb=function mgc(a){return JD(BD(a,57).g,145)};var yU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$8$Type',1702);bcb(1704,1,qie,ngc);_.td=function ogc(a){ifc(this.a,this.b,BD(a,57))};var zU=mdb(Jne,'EdgeAwareScanlineConstraintCalculation/lambda$9$Type',1704);bcb(1521,1,ene,sgc);_.pf=function xgc(a,b){rgc(this,BD(a,37),b)};var pgc;var EU=mdb(Jne,'HorizontalGraphCompactor',1521);bcb(1522,1,{},ygc);_.Oe=function zgc(a,b){var c,d,e;if(vgc(a,b)){return 0}c=tgc(a);d=tgc(b);if(!!c&&c.k==(j0b(),e0b)||!!d&&d.k==(j0b(),e0b)){return 0}e=BD(vNb(this.a.a,(wtc(),otc)),304);return fBc(e,c?c.k:(j0b(),g0b),d?d.k:(j0b(),g0b))};_.Pe=function Agc(a,b){var c,d,e;if(vgc(a,b)){return 1}c=tgc(a);d=tgc(b);e=BD(vNb(this.a.a,(wtc(),otc)),304);return iBc(e,c?c.k:(j0b(),g0b),d?d.k:(j0b(),g0b))};var BU=mdb(Jne,'HorizontalGraphCompactor/1',1522);bcb(1523,1,{},Bgc);_.Ne=function Cgc(a,b){return qgc(),a.a.i==0};var CU=mdb(Jne,'HorizontalGraphCompactor/lambda$0$Type',1523);bcb(1524,1,{},Dgc);_.Ne=function Egc(a,b){return wgc(this.a,a,b)};var DU=mdb(Jne,'HorizontalGraphCompactor/lambda$1$Type',1524);bcb(1664,1,{},Ygc);var Fgc,Ggc;var cV=mdb(Jne,'LGraphToCGraphTransformer',1664);bcb(1672,1,Oie,ehc);_.Mb=function fhc(a){return a!=null};var FU=mdb(Jne,'LGraphToCGraphTransformer/0methodref$nonNull$Type',1672);bcb(1665,1,{},ghc);_.Kb=function hhc(a){return Hgc(),fcb(vNb(BD(BD(a,57).g,10),(wtc(),$sc)))};var GU=mdb(Jne,'LGraphToCGraphTransformer/lambda$0$Type',1665);bcb(1666,1,{},ihc);_.Kb=function jhc(a){return Hgc(),gic(BD(BD(a,57).g,145))};var HU=mdb(Jne,'LGraphToCGraphTransformer/lambda$1$Type',1666);bcb(1675,1,Oie,khc);_.Mb=function lhc(a){return Hgc(),JD(BD(a,57).g,10)};var IU=mdb(Jne,'LGraphToCGraphTransformer/lambda$10$Type',1675);bcb(1676,1,qie,mhc);_.td=function nhc(a){Zgc(BD(a,57))};var JU=mdb(Jne,'LGraphToCGraphTransformer/lambda$11$Type',1676);bcb(1677,1,Oie,ohc);_.Mb=function phc(a){return Hgc(),JD(BD(a,57).g,145)};var KU=mdb(Jne,'LGraphToCGraphTransformer/lambda$12$Type',1677);bcb(1681,1,qie,qhc);_.td=function rhc(a){$gc(BD(a,57))};var LU=mdb(Jne,'LGraphToCGraphTransformer/lambda$13$Type',1681);bcb(1678,1,qie,shc);_.td=function thc(a){_gc(this.a,BD(a,8))};_.a=0;var MU=mdb(Jne,'LGraphToCGraphTransformer/lambda$14$Type',1678);bcb(1679,1,qie,uhc);_.td=function vhc(a){ahc(this.a,BD(a,110))};_.a=0;var NU=mdb(Jne,'LGraphToCGraphTransformer/lambda$15$Type',1679);bcb(1680,1,qie,whc);_.td=function xhc(a){bhc(this.a,BD(a,8))};_.a=0;var OU=mdb(Jne,'LGraphToCGraphTransformer/lambda$16$Type',1680);bcb(1682,1,{},yhc);_.Kb=function zhc(a){return Hgc(),new YAb(null,new Lub(new Sr(ur(U_b(BD(a,10)).a.Kc(),new Sq))))};var PU=mdb(Jne,'LGraphToCGraphTransformer/lambda$17$Type',1682);bcb(1683,1,Oie,Ahc);_.Mb=function Bhc(a){return Hgc(),OZb(BD(a,17))};var QU=mdb(Jne,'LGraphToCGraphTransformer/lambda$18$Type',1683);bcb(1684,1,qie,Chc);_.td=function Dhc(a){Qgc(this.a,BD(a,17))};var RU=mdb(Jne,'LGraphToCGraphTransformer/lambda$19$Type',1684);bcb(1668,1,qie,Ehc);_.td=function Fhc(a){Rgc(this.a,BD(a,145))};var SU=mdb(Jne,'LGraphToCGraphTransformer/lambda$2$Type',1668);bcb(1685,1,{},Ghc);_.Kb=function Hhc(a){return Hgc(),new YAb(null,new Kub(BD(a,29).a,16))};var TU=mdb(Jne,'LGraphToCGraphTransformer/lambda$20$Type',1685);bcb(1686,1,{},Ihc);_.Kb=function Jhc(a){return Hgc(),new YAb(null,new Lub(new Sr(ur(U_b(BD(a,10)).a.Kc(),new Sq))))};var UU=mdb(Jne,'LGraphToCGraphTransformer/lambda$21$Type',1686);bcb(1687,1,{},Khc);_.Kb=function Lhc(a){return Hgc(),BD(vNb(BD(a,17),(wtc(),rtc)),15)};var VU=mdb(Jne,'LGraphToCGraphTransformer/lambda$22$Type',1687);bcb(1688,1,Oie,Mhc);_.Mb=function Nhc(a){return chc(BD(a,15))};var WU=mdb(Jne,'LGraphToCGraphTransformer/lambda$23$Type',1688);bcb(1689,1,qie,Ohc);_.td=function Phc(a){Jgc(this.a,BD(a,15))};var XU=mdb(Jne,'LGraphToCGraphTransformer/lambda$24$Type',1689);bcb(1667,1,qie,Qhc);_.td=function Rhc(a){Sgc(this.a,this.b,BD(a,145))};var YU=mdb(Jne,'LGraphToCGraphTransformer/lambda$3$Type',1667);bcb(1669,1,{},Shc);_.Kb=function Thc(a){return Hgc(),new YAb(null,new Kub(BD(a,29).a,16))};var ZU=mdb(Jne,'LGraphToCGraphTransformer/lambda$4$Type',1669);bcb(1670,1,{},Uhc);_.Kb=function Vhc(a){return Hgc(),new YAb(null,new Lub(new Sr(ur(U_b(BD(a,10)).a.Kc(),new Sq))))};var $U=mdb(Jne,'LGraphToCGraphTransformer/lambda$5$Type',1670);bcb(1671,1,{},Whc);_.Kb=function Xhc(a){return Hgc(),BD(vNb(BD(a,17),(wtc(),rtc)),15)};var _U=mdb(Jne,'LGraphToCGraphTransformer/lambda$6$Type',1671);bcb(1673,1,qie,Yhc);_.td=function Zhc(a){dhc(this.a,BD(a,15))};var aV=mdb(Jne,'LGraphToCGraphTransformer/lambda$8$Type',1673);bcb(1674,1,qie,$hc);_.td=function _hc(a){Tgc(this.a,this.b,BD(a,145))};var bV=mdb(Jne,'LGraphToCGraphTransformer/lambda$9$Type',1674);bcb(1663,1,{},dic);_.Le=function eic(a){var b,c,d,e,f;this.a=a;this.d=new KFb;this.c=KC(jN,Uhe,121,this.a.a.a.c.length,0,1);this.b=0;for(c=new olb(this.a.a.a);c.a=p){Ekb(f,meb(k));s=$wnd.Math.max(s,t[k-1]-l);h+=o;q+=t[k-1]-q;l=t[k-1];o=i[k]}o=$wnd.Math.max(o,i[k]);++k}h+=o}n=$wnd.Math.min(1/s,1/b.b/h);if(n>d){d=n;c=f}}return c};_.Wf=function mpc(){return false};var CW=mdb(Rne,'MSDCutIndexHeuristic',802);bcb(1617,1,ene,ppc);_.pf=function qpc(a,b){opc(BD(a,37),b)};var DW=mdb(Rne,'SingleEdgeGraphWrapper',1617);bcb(227,22,{3:1,35:1,22:1,227:1},Bpc);var upc,vpc,wpc,xpc,ypc,zpc;var EW=ndb(Sne,'CenterEdgeLabelPlacementStrategy',227,CI,Dpc,Cpc);var Epc;bcb(422,22,{3:1,35:1,22:1,422:1},Jpc);var Gpc,Hpc;var FW=ndb(Sne,'ConstraintCalculationStrategy',422,CI,Lpc,Kpc);var Mpc;bcb(314,22,{3:1,35:1,22:1,314:1,246:1,234:1},Tpc);_.Kf=function Vpc(){return Spc(this)};_.Xf=function Upc(){return Spc(this)};var Opc,Ppc,Qpc;var GW=ndb(Sne,'CrossingMinimizationStrategy',314,CI,Xpc,Wpc);var Ypc;bcb(337,22,{3:1,35:1,22:1,337:1},cqc);var $pc,_pc,aqc;var HW=ndb(Sne,'CuttingStrategy',337,CI,eqc,dqc);var fqc;bcb(335,22,{3:1,35:1,22:1,335:1,246:1,234:1},oqc);_.Kf=function qqc(){return nqc(this)};_.Xf=function pqc(){return nqc(this)};var hqc,iqc,jqc,kqc,lqc;var IW=ndb(Sne,'CycleBreakingStrategy',335,CI,sqc,rqc);var tqc;bcb(419,22,{3:1,35:1,22:1,419:1},yqc);var vqc,wqc;var JW=ndb(Sne,'DirectionCongruency',419,CI,Aqc,zqc);var Bqc;bcb(450,22,{3:1,35:1,22:1,450:1},Hqc);var Dqc,Eqc,Fqc;var KW=ndb(Sne,'EdgeConstraint',450,CI,Jqc,Iqc);var Kqc;bcb(276,22,{3:1,35:1,22:1,276:1},Uqc);var Mqc,Nqc,Oqc,Pqc,Qqc,Rqc;var LW=ndb(Sne,'EdgeLabelSideSelection',276,CI,Wqc,Vqc);var Xqc;bcb(479,22,{3:1,35:1,22:1,479:1},arc);var Zqc,$qc;var MW=ndb(Sne,'EdgeStraighteningStrategy',479,CI,crc,brc);var drc;bcb(274,22,{3:1,35:1,22:1,274:1},mrc);var frc,grc,hrc,irc,jrc,krc;var NW=ndb(Sne,'FixedAlignment',274,CI,orc,nrc);var prc;bcb(275,22,{3:1,35:1,22:1,275:1},zrc);var rrc,trc,urc,vrc,wrc,xrc;var OW=ndb(Sne,'GraphCompactionStrategy',275,CI,Brc,Arc);var Crc;bcb(256,22,{3:1,35:1,22:1,256:1},Prc);var Erc,Frc,Grc,Hrc,Irc,Jrc,Krc,Lrc,Mrc,Nrc;var PW=ndb(Sne,'GraphProperties',256,CI,Rrc,Qrc);var Src;bcb(292,22,{3:1,35:1,22:1,292:1},Yrc);var Urc,Vrc,Wrc;var QW=ndb(Sne,'GreedySwitchType',292,CI,$rc,Zrc);var _rc;bcb(303,22,{3:1,35:1,22:1,303:1},fsc);var bsc,csc,dsc;var RW=ndb(Sne,'InLayerConstraint',303,CI,hsc,gsc);var isc;bcb(420,22,{3:1,35:1,22:1,420:1},nsc);var ksc,lsc;var SW=ndb(Sne,'InteractiveReferencePoint',420,CI,psc,osc);var qsc;var ssc,tsc,usc,vsc,wsc,xsc,ysc,zsc,Asc,Bsc,Csc,Dsc,Esc,Fsc,Gsc,Hsc,Isc,Jsc,Ksc,Lsc,Msc,Nsc,Osc,Psc,Qsc,Rsc,Ssc,Tsc,Usc,Vsc,Wsc,Xsc,Ysc,Zsc,$sc,_sc,atc,btc,ctc,dtc,etc,ftc,gtc,htc,itc,jtc,ktc,ltc,mtc,ntc,otc,ptc,qtc,rtc,stc,ttc,utc,vtc;bcb(163,22,{3:1,35:1,22:1,163:1},Dtc);var xtc,ytc,ztc,Atc,Btc;var TW=ndb(Sne,'LayerConstraint',163,CI,Ftc,Etc);var Gtc;bcb(848,1,ale,kwc);_.Qe=function lwc(a){t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Yne),''),'Direction Congruency'),'Specifies how drawings of the same graph with different layout directions compare to each other: either a natural reading direction is preserved or the drawings are rotated versions of each other.'),puc),(_5c(),V5c)),JW),pqb((N5c(),L5c)))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Zne),''),'Feedback Edges'),'Whether feedback edges should be highlighted by routing around the nodes.'),(Bcb(),false)),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,$ne),''),'Interactive Reference Point'),'Determines which point of a node is considered by interactive layout phases.'),Muc),V5c),SW),pqb(L5c))));o4c(a,$ne,goe,Ouc);o4c(a,$ne,qoe,Nuc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,_ne),''),'Merge Edges'),'Edges that have no ports are merged so they touch the connected nodes at the same points. When this option is disabled, one port is created for each edge directly connected to a node. When it is enabled, all such incoming edges share an input port, and all outgoing edges share an output port.'),false),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,aoe),''),'Merge Hierarchy-Crossing Edges'),'If hierarchical layout is active, hierarchy-crossing edges use as few hierarchical ports as possible. They are broken by the algorithm, with hierarchical ports inserted as required. Usually, one such port is created for each edge at each hierarchy crossing point. With this option set to true, we try to create as few hierarchical ports as possible in the process. In particular, all edges that form a hyperedge can share a port.'),true),T5c),wI),pqb(L5c))));t4c(a,new p5c(C5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,boe),''),'Allow Non-Flow Ports To Switch Sides'),\"Specifies whether non-flow ports may switch sides if their node's port constraints are either FIXED_SIDE or FIXED_ORDER. A non-flow port is a port on a side that is not part of the currently configured layout flow. For instance, given a left-to-right layout direction, north and south ports would be considered non-flow ports. Further note that the underlying criterium whether to switch sides or not solely relies on the minimization of edge crossings. Hence, edge length and other aesthetics criteria are not addressed.\"),false),T5c),wI),pqb(M5c)),OC(GC(ZI,1),nie,2,6,['org.eclipse.elk.layered.northOrSouthPort']))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,coe),''),'Port Sorting Strategy'),\"Only relevant for nodes with FIXED_SIDE port constraints. Determines the way a node's ports are distributed on the sides of a node if their order is not prescribed. The option is set on parent nodes.\"),xvc),V5c),cX),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,doe),''),'Thoroughness'),'How much effort should be spent to produce a nice layout.'),meb(7)),X5c),JI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,eoe),''),'Add Unnecessary Bendpoints'),'Adds bend points even if an edge does not change direction. If true, each long edge dummy will contribute a bend point to its edges and hierarchy-crossing edges will always get a bend point where they cross hierarchy boundaries. By default, bend points are only added where an edge changes direction.'),false),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,foe),''),'Generate Position and Layer IDs'),'If enabled position id and layer id are generated, which are usually only used internally when setting the interactiveLayout option. This option should be specified on the root node.'),false),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,goe),'cycleBreaking'),'Cycle Breaking Strategy'),'Strategy for cycle breaking. Cycle breaking looks for cycles in the graph and determines which edges to reverse to break the cycles. Reversed edges will end up pointing to the opposite direction of regular edges (that is, reversed edges will point left if edges usually point right).'),nuc),V5c),IW),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,hoe),ppe),'Node Layering Strategy'),'Strategy for node layering.'),bvc),V5c),YW),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,ioe),ppe),'Layer Constraint'),'Determines a constraint on the placement of the node regarding the layering.'),Tuc),V5c),TW),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,joe),ppe),'Layer Choice Constraint'),\"Allows to set a constraint regarding the layer placement of a node. Let i be the value of teh constraint. Assumed the drawing has n layers and i < n. If set to i, it expresses that the node should be placed in i-th layer. Should i>=n be true then the node is placed in the last layer of the drawing. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine.\"),meb(-1)),X5c),JI),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,koe),ppe),'Layer ID'),'Layer identifier that was calculated by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set.'),meb(-1)),X5c),JI),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,loe),qpe),'Upper Bound On Width [MinWidth Layerer]'),\"Defines a loose upper bound on the width of the MinWidth layerer. If set to '-1' multiple values are tested and the best result is selected.\"),meb(4)),X5c),JI),pqb(L5c))));o4c(a,loe,hoe,Wuc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,moe),qpe),'Upper Layer Estimation Scaling Factor [MinWidth Layerer]'),\"Multiplied with Upper Bound On Width for defining an upper bound on the width of layers which haven't been determined yet, but whose maximum width had been (roughly) estimated by the MinWidth algorithm. Compensates for too high estimations. If set to '-1' multiple values are tested and the best result is selected.\"),meb(2)),X5c),JI),pqb(L5c))));o4c(a,moe,hoe,Yuc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,noe),rpe),'Node Promotion Strategy'),'Reduces number of dummy nodes after layering phase (if possible).'),_uc),V5c),aX),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,ooe),rpe),'Max Node Promotion Iterations'),'Limits the number of iterations for node promotion.'),meb(0)),X5c),JI),pqb(L5c))));o4c(a,ooe,noe,null);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,poe),'layering.coffmanGraham'),'Layer Bound'),'The maximum number of nodes allowed per layer.'),meb(Ohe)),X5c),JI),pqb(L5c))));o4c(a,poe,hoe,Quc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,qoe),spe),'Crossing Minimization Strategy'),'Strategy for crossing minimization.'),luc),V5c),GW),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,roe),spe),'Force Node Model Order'),'The node order given by the model does not change to produce a better layout. E.g. if node A is before node B in the model this is not changed during crossing minimization. This assumes that the node model order is already respected before crossing minimization. This can be achieved by setting considerModelOrder.strategy to NODES_AND_EDGES.'),false),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,soe),spe),'Hierarchical Sweepiness'),'How likely it is to use cross-hierarchy (1) vs bottom-up (-1).'),0.1),U5c),BI),pqb(L5c))));o4c(a,soe,tpe,fuc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,toe),spe),'Semi-Interactive Crossing Minimization'),\"Preserves the order of nodes within a layer but still minimizes crossings between edges connecting long edge dummies. Derives the desired order from positions specified by the 'org.eclipse.elk.position' layout option. Requires a crossing minimization strategy that is able to process 'in-layer' constraints.\"),false),T5c),wI),pqb(L5c))));o4c(a,toe,qoe,juc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,uoe),spe),'Position Choice Constraint'),\"Allows to set a constraint regarding the position placement of a node in a layer. Assumed the layer in which the node placed includes n other nodes and i < n. If set to i, it expresses that the node should be placed at the i-th position. Should i>=n be true then the node is placed at the last position in the layer. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine.\"),meb(-1)),X5c),JI),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,voe),spe),'Position ID'),'Position within a layer that was determined by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set.'),meb(-1)),X5c),JI),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,woe),upe),'Greedy Switch Activation Threshold'),\"By default it is decided automatically if the greedy switch is activated or not. The decision is based on whether the size of the input graph (without dummy nodes) is smaller than the value of this option. A '0' enforces the activation.\"),meb(40)),X5c),JI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,xoe),upe),'Greedy Switch Crossing Minimization'),\"Greedy Switch strategy for crossing minimization. The greedy switch heuristic is executed after the regular crossing minimization as a post-processor. Note that if 'hierarchyHandling' is set to 'INCLUDE_CHILDREN', the 'greedySwitchHierarchical.type' option must be used.\"),cuc),V5c),QW),pqb(L5c))));o4c(a,xoe,qoe,duc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,yoe),'crossingMinimization.greedySwitchHierarchical'),'Greedy Switch Crossing Minimization (hierarchical)'),\"Activates the greedy switch heuristic in case hierarchical layout is used. The differences to the non-hierarchical case (see 'greedySwitch.type') are: 1) greedy switch is inactive by default, 3) only the option value set on the node at which hierarchical layout starts is relevant, and 2) if it's activated by the user, it properly addresses hierarchy-crossing edges.\"),$tc),V5c),QW),pqb(L5c))));o4c(a,yoe,qoe,_tc);o4c(a,yoe,tpe,auc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,zoe),vpe),'Node Placement Strategy'),'Strategy for node placement.'),vvc),V5c),_W),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,Aoe),vpe),'Favor Straight Edges Over Balancing'),\"Favor straight edges over a balanced node placement. The default behavior is determined automatically based on the used 'edgeRouting'. For an orthogonal style it is set to true, for all other styles to false.\"),T5c),wI),pqb(L5c))));o4c(a,Aoe,zoe,lvc);o4c(a,Aoe,zoe,mvc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Boe),wpe),'BK Edge Straightening'),\"Specifies whether the Brandes Koepf node placer tries to increase the number of straight edges at the expense of diagram size. There is a subtle difference to the 'favorStraightEdges' option, which decides whether a balanced placement of the nodes is desired, or not. In bk terms this means combining the four alignments into a single balanced one, or not. This option on the other hand tries to straighten additional edges during the creation of each of the four alignments.\"),fvc),V5c),MW),pqb(L5c))));o4c(a,Boe,zoe,gvc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Coe),wpe),'BK Fixed Alignment'),'Tells the BK node placer to use a certain alignment (out of its four) instead of the one producing the smallest height, or the combination of all four.'),ivc),V5c),NW),pqb(L5c))));o4c(a,Coe,zoe,jvc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Doe),'nodePlacement.linearSegments'),'Linear Segments Deflection Dampening'),'Dampens the movement of nodes to keep the diagram from getting too large.'),0.3),U5c),BI),pqb(L5c))));o4c(a,Doe,zoe,ovc);t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,Eoe),'nodePlacement.networkSimplex'),'Node Flexibility'),\"Aims at shorter and straighter edges. Two configurations are possible: (a) allow ports to move freely on the side they are assigned to (the order is always defined beforehand), (b) additionally allow to enlarge a node wherever it helps. If this option is not configured for a node, the 'nodeFlexibility.default' value is used, which is specified for the node's parent.\"),V5c),$W),pqb(K5c))));o4c(a,Eoe,zoe,tvc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Foe),'nodePlacement.networkSimplex.nodeFlexibility'),'Node Flexibility Default'),\"Default value of the 'nodeFlexibility' option for the children of a hierarchical node.\"),rvc),V5c),$W),pqb(L5c))));o4c(a,Foe,zoe,svc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Goe),xpe),'Self-Loop Distribution'),'Alter the distribution of the loops around the node. It only takes effect for PortConstraints.FREE.'),xuc),V5c),eX),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Hoe),xpe),'Self-Loop Ordering'),'Alter the ordering of the loops they can either be stacked or sequenced. It only takes effect for PortConstraints.FREE.'),zuc),V5c),fX),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Ioe),'edgeRouting.splines'),'Spline Routing Mode'),'Specifies the way control points are assembled for each individual edge. CONSERVATIVE ensures that edges are properly routed around the nodes but feels rather orthogonal at times. SLOPPY uses fewer control points to obtain curvier edge routes but may result in edges overlapping nodes.'),Buc),V5c),hX),pqb(L5c))));o4c(a,Ioe,ype,Cuc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Joe),'edgeRouting.splines.sloppy'),'Sloppy Spline Layer Spacing Factor'),'Spacing factor for routing area between layers when using sloppy spline routing.'),0.2),U5c),BI),pqb(L5c))));o4c(a,Joe,ype,Euc);o4c(a,Joe,Ioe,Fuc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Koe),'edgeRouting.polyline'),'Sloped Edge Zone Width'),'Width of the strip to the left and to the right of each layer where the polyline edge router is allowed to refrain from ensuring that edges are routed horizontally. This prevents awkward bend points for nodes that extent almost to the edge of their layer.'),2),U5c),BI),pqb(L5c))));o4c(a,Koe,ype,vuc);t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,Loe),zpe),'Spacing Base Value'),\"An optional base value for all other layout options of the 'spacing' group. It can be used to conveniently alter the overall 'spaciousness' of the drawing. Whenever an explicit value is set for the other layout options, this base value will have no effect. The base value is not inherited, i.e. it must be set for each hierarchical node.\"),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Moe),zpe),'Edge Node Between Layers Spacing'),\"The spacing to be preserved between nodes and edges that are routed next to the node's layer. For the spacing between nodes and edges that cross the node's layer 'spacing.edgeNode' is used.\"),10),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Noe),zpe),'Edge Edge Between Layer Spacing'),\"Spacing to be preserved between pairs of edges that are routed between the same pair of layers. Note that 'spacing.edgeEdge' is used for the spacing between pairs of edges crossing the same layer.\"),10),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Ooe),zpe),'Node Node Between Layers Spacing'),\"The spacing to be preserved between any pair of nodes of two adjacent layers. Note that 'spacing.nodeNode' is used for the spacing between nodes within the layer itself.\"),20),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Poe),Ape),'Direction Priority'),'Defines how important it is to have a certain edge point into the direction of the overall layout. This option is evaluated during the cycle breaking phase.'),meb(0)),X5c),JI),pqb(I5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Qoe),Ape),'Shortness Priority'),'Defines how important it is to keep an edge as short as possible. This option is evaluated during the layering phase.'),meb(0)),X5c),JI),pqb(I5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Roe),Ape),'Straightness Priority'),'Defines how important it is to keep an edge straight, i.e. aligned with one of the two axes. This option is evaluated during node placement.'),meb(0)),X5c),JI),pqb(I5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Soe),Bpe),Ole),'Tries to further compact components (disconnected sub-graphs).'),false),T5c),wI),pqb(L5c))));o4c(a,Soe,zme,true);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Toe),Cpe),'Post Compaction Strategy'),Dpe),Ntc),V5c),OW),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Uoe),Cpe),'Post Compaction Constraint Calculation'),Dpe),Ltc),V5c),FW),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Voe),Epe),'High Degree Node Treatment'),'Makes room around high degree nodes to place leafs and trees.'),false),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Woe),Epe),'High Degree Node Threshold'),'Whether a node is considered to have a high degree.'),meb(16)),X5c),JI),pqb(L5c))));o4c(a,Woe,Voe,true);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Xoe),Epe),'High Degree Node Maximum Tree Height'),'Maximum height of a subtree connected to a high degree node to be moved to separate layers.'),meb(5)),X5c),JI),pqb(L5c))));o4c(a,Xoe,Voe,true);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Yoe),Fpe),'Graph Wrapping Strategy'),\"For certain graphs and certain prescribed drawing areas it may be desirable to split the laid out graph into chunks that are placed side by side. The edges that connect different chunks are 'wrapped' around from the end of one chunk to the start of the other chunk. The points between the chunks are referred to as 'cuts'.\"),bwc),V5c),jX),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Zoe),Fpe),'Additional Wrapped Edges Spacing'),'To visually separate edges that are wrapped from regularly routed edges an additional spacing value can be specified in form of this layout option. The spacing is added to the regular edgeNode spacing.'),10),U5c),BI),pqb(L5c))));o4c(a,Zoe,Yoe,Ivc);o4c(a,Zoe,Yoe,Jvc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,$oe),Fpe),'Correction Factor for Wrapping'),\"At times and for certain types of graphs the executed wrapping may produce results that are consistently biased in the same fashion: either wrapping to often or to rarely. This factor can be used to correct the bias. Internally, it is simply multiplied with the 'aspect ratio' layout option.\"),1),U5c),BI),pqb(L5c))));o4c(a,$oe,Yoe,Lvc);o4c(a,$oe,Yoe,Mvc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,_oe),Gpe),'Cutting Strategy'),'The strategy by which the layer indexes are determined at which the layering crumbles into chunks.'),Tvc),V5c),HW),pqb(L5c))));o4c(a,_oe,Yoe,Uvc);o4c(a,_oe,Yoe,Vvc);t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,ape),Gpe),'Manually Specified Cuts'),'Allows the user to specify her own cuts for a certain graph.'),Y5c),yK),pqb(L5c))));o4c(a,ape,_oe,Ovc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,bpe),'wrapping.cutting.msd'),'MSD Freedom'),'The MSD cutting strategy starts with an initial guess on the number of chunks the graph should be split into. The freedom specifies how much the strategy may deviate from this guess. E.g. if an initial number of 3 is computed, a freedom of 1 allows 2, 3, and 4 cuts.'),Qvc),X5c),JI),pqb(L5c))));o4c(a,bpe,_oe,Rvc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,cpe),Hpe),'Validification Strategy'),'When wrapping graphs, one can specify indices that are not allowed as split points. The validification strategy makes sure every computed split point is allowed.'),gwc),V5c),iX),pqb(L5c))));o4c(a,cpe,Yoe,hwc);o4c(a,cpe,Yoe,iwc);t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,dpe),Hpe),'Valid Indices for Wrapping'),null),Y5c),yK),pqb(L5c))));o4c(a,dpe,Yoe,dwc);o4c(a,dpe,Yoe,ewc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,epe),Ipe),'Improve Cuts'),'For general graphs it is important that not too many edges wrap backwards. Thus a compromise between evenly-distributed cuts and the total number of cut edges is sought.'),true),T5c),wI),pqb(L5c))));o4c(a,epe,Yoe,Zvc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,fpe),Ipe),'Distance Penalty When Improving Cuts'),null),2),U5c),BI),pqb(L5c))));o4c(a,fpe,Yoe,Xvc);o4c(a,fpe,epe,true);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,gpe),Ipe),'Improve Wrapped Edges'),'The initial wrapping is performed in a very simple way. As a consequence, edges that wrap from one chunk to another may be unnecessarily long. Activating this option tries to shorten such edges.'),true),T5c),wI),pqb(L5c))));o4c(a,gpe,Yoe,_vc);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,hpe),Jpe),'Edge Label Side Selection'),'Method to decide on edge label sides.'),tuc),V5c),LW),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,ipe),Jpe),'Edge Center Label Placement Strategy'),'Determines in which layer center labels of long edges should be placed.'),ruc),V5c),EW),qqb(L5c,OC(GC(e1,1),Kie,175,0,[J5c])))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,jpe),Kpe),'Consider Model Order'),'Preserves the order of nodes and edges in the model file if this does not lead to additional edge crossings. Depending on the strategy this is not always possible since the node and edge order might be conflicting.'),Wtc),V5c),bX),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,kpe),Kpe),'No Model Order'),'Set on a node to not set a model order for this node even though it is a real node.'),false),T5c),wI),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,lpe),Kpe),'Consider Model Order for Components'),'If set to NONE the usual ordering strategy (by cumulative node priority and size of nodes) is used. INSIDE_PORT_SIDES orders the components with external ports only inside the groups with the same port side. FORCE_MODEL_ORDER enforces the mode order on components. This option might produce bad alignments and sub optimal drawings in terms of used area since the ordering should be respected.'),Ptc),V5c),hQ),pqb(L5c))));o4c(a,lpe,zme,null);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,mpe),Kpe),'Long Edge Ordering Strategy'),'Indicates whether long edges are sorted under, over, or equal to nodes that have no connection to a previous layer in a left-to-right or right-to-left layout. Under and over changes to right and left in a vertical layout.'),Ttc),V5c),ZW),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,npe),Kpe),'Crossing Counter Node Order Influence'),'Indicates with what percentage (1 for 100%) violations of the node model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal node order. Defaults to no influence (0).'),0),U5c),BI),pqb(L5c))));o4c(a,npe,jpe,null);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,ope),Kpe),'Crossing Counter Port Order Influence'),'Indicates with what percentage (1 for 100%) violations of the port model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal port order. Defaults to no influence (0).'),0),U5c),BI),pqb(L5c))));o4c(a,ope,jpe,null);Oyc((new Pyc,a))};var Itc,Jtc,Ktc,Ltc,Mtc,Ntc,Otc,Ptc,Qtc,Rtc,Stc,Ttc,Utc,Vtc,Wtc,Xtc,Ytc,Ztc,$tc,_tc,auc,buc,cuc,duc,euc,fuc,guc,huc,iuc,juc,kuc,luc,muc,nuc,ouc,puc,quc,ruc,suc,tuc,uuc,vuc,wuc,xuc,yuc,zuc,Auc,Buc,Cuc,Duc,Euc,Fuc,Guc,Huc,Iuc,Juc,Kuc,Luc,Muc,Nuc,Ouc,Puc,Quc,Ruc,Suc,Tuc,Uuc,Vuc,Wuc,Xuc,Yuc,Zuc,$uc,_uc,avc,bvc,cvc,dvc,evc,fvc,gvc,hvc,ivc,jvc,kvc,lvc,mvc,nvc,ovc,pvc,qvc,rvc,svc,tvc,uvc,vvc,wvc,xvc,yvc,zvc,Avc,Bvc,Cvc,Dvc,Evc,Fvc,Gvc,Hvc,Ivc,Jvc,Kvc,Lvc,Mvc,Nvc,Ovc,Pvc,Qvc,Rvc,Svc,Tvc,Uvc,Vvc,Wvc,Xvc,Yvc,Zvc,$vc,_vc,awc,bwc,cwc,dwc,ewc,fwc,gwc,hwc,iwc;var UW=mdb(Sne,'LayeredMetaDataProvider',848);bcb(986,1,ale,Pyc);_.Qe=function Qyc(a){Oyc(a)};var mwc,nwc,owc,pwc,qwc,rwc,swc,twc,uwc,vwc,wwc,xwc,ywc,zwc,Awc,Bwc,Cwc,Dwc,Ewc,Fwc,Gwc,Hwc,Iwc,Jwc,Kwc,Lwc,Mwc,Nwc,Owc,Pwc,Qwc,Rwc,Swc,Twc,Uwc,Vwc,Wwc,Xwc,Ywc,Zwc,$wc,_wc,axc,bxc,cxc,dxc,exc,fxc,gxc,hxc,ixc,jxc,kxc,lxc,mxc,nxc,oxc,pxc,qxc,rxc,sxc,txc,uxc,vxc,wxc,xxc,yxc,zxc,Axc,Bxc,Cxc,Dxc,Exc,Fxc,Gxc,Hxc,Ixc,Jxc,Kxc,Lxc,Mxc,Nxc,Oxc,Pxc,Qxc,Rxc,Sxc,Txc,Uxc,Vxc,Wxc,Xxc,Yxc,Zxc,$xc,_xc,ayc,byc,cyc,dyc,eyc,fyc,gyc,hyc,iyc,jyc,kyc,lyc,myc,nyc,oyc,pyc,qyc,ryc,syc,tyc,uyc,vyc,wyc,xyc,yyc,zyc,Ayc,Byc,Cyc,Dyc,Eyc,Fyc,Gyc,Hyc,Iyc,Jyc,Kyc,Lyc,Myc;var WW=mdb(Sne,'LayeredOptions',986);bcb(987,1,{},Ryc);_.$e=function Syc(){var a;return a=new jUb,a};_._e=function Tyc(a){};var VW=mdb(Sne,'LayeredOptions/LayeredFactory',987);bcb(1372,1,{});_.a=0;var Uyc;var $1=mdb(yqe,'ElkSpacings/AbstractSpacingsBuilder',1372);bcb(779,1372,{},ezc);var bzc,czc;var XW=mdb(Sne,'LayeredSpacings/LayeredSpacingsBuilder',779);bcb(313,22,{3:1,35:1,22:1,313:1,246:1,234:1},nzc);_.Kf=function pzc(){return mzc(this)};_.Xf=function ozc(){return mzc(this)};var fzc,gzc,hzc,izc,jzc,kzc;var YW=ndb(Sne,'LayeringStrategy',313,CI,rzc,qzc);var szc;bcb(378,22,{3:1,35:1,22:1,378:1},zzc);var uzc,vzc,wzc;var ZW=ndb(Sne,'LongEdgeOrderingStrategy',378,CI,Bzc,Azc);var Czc;bcb(197,22,{3:1,35:1,22:1,197:1},Kzc);var Ezc,Fzc,Gzc,Hzc;var $W=ndb(Sne,'NodeFlexibility',197,CI,Nzc,Mzc);var Ozc;bcb(315,22,{3:1,35:1,22:1,315:1,246:1,234:1},Xzc);_.Kf=function Zzc(){return Wzc(this)};_.Xf=function Yzc(){return Wzc(this)};var Qzc,Rzc,Szc,Tzc,Uzc;var _W=ndb(Sne,'NodePlacementStrategy',315,CI,_zc,$zc);var aAc;bcb(260,22,{3:1,35:1,22:1,260:1},lAc);var cAc,dAc,eAc,fAc,gAc,hAc,iAc,jAc;var aX=ndb(Sne,'NodePromotionStrategy',260,CI,nAc,mAc);var oAc;bcb(339,22,{3:1,35:1,22:1,339:1},uAc);var qAc,rAc,sAc;var bX=ndb(Sne,'OrderingStrategy',339,CI,wAc,vAc);var xAc;bcb(421,22,{3:1,35:1,22:1,421:1},CAc);var zAc,AAc;var cX=ndb(Sne,'PortSortingStrategy',421,CI,EAc,DAc);var FAc;bcb(452,22,{3:1,35:1,22:1,452:1},LAc);var HAc,IAc,JAc;var dX=ndb(Sne,'PortType',452,CI,NAc,MAc);var OAc;bcb(375,22,{3:1,35:1,22:1,375:1},UAc);var QAc,RAc,SAc;var eX=ndb(Sne,'SelfLoopDistributionStrategy',375,CI,WAc,VAc);var XAc;bcb(376,22,{3:1,35:1,22:1,376:1},aBc);var ZAc,$Ac;var fX=ndb(Sne,'SelfLoopOrderingStrategy',376,CI,cBc,bBc);var dBc;bcb(304,1,{304:1},oBc);var gX=mdb(Sne,'Spacings',304);bcb(336,22,{3:1,35:1,22:1,336:1},uBc);var qBc,rBc,sBc;var hX=ndb(Sne,'SplineRoutingMode',336,CI,wBc,vBc);var xBc;bcb(338,22,{3:1,35:1,22:1,338:1},DBc);var zBc,ABc,BBc;var iX=ndb(Sne,'ValidifyStrategy',338,CI,FBc,EBc);var GBc;bcb(377,22,{3:1,35:1,22:1,377:1},MBc);var IBc,JBc,KBc;var jX=ndb(Sne,'WrappingStrategy',377,CI,OBc,NBc);var PBc;bcb(1383,1,Bqe,VBc);_.Yf=function WBc(a){return BD(a,37),RBc};_.pf=function XBc(a,b){UBc(this,BD(a,37),b)};var RBc;var kX=mdb(Cqe,'DepthFirstCycleBreaker',1383);bcb(782,1,Bqe,aCc);_.Yf=function cCc(a){return BD(a,37),YBc};_.pf=function dCc(a,b){$Bc(this,BD(a,37),b)};_.Zf=function bCc(a){return BD(Ikb(a,Bub(this.d,a.c.length)),10)};var YBc;var lX=mdb(Cqe,'GreedyCycleBreaker',782);bcb(1386,782,Bqe,eCc);_.Zf=function fCc(a){var b,c,d,e;e=null;b=Ohe;for(d=new olb(a);d.a1){Ccb(DD(vNb(Q_b((tCb(0,a.c.length),BD(a.c[0],10))),(Nyc(),Awc))))?YGc(a,this.d,BD(this,660)):(mmb(),Okb(a,this.d));PEc(this.e,a)}};_.Sf=function DEc(a,b,c,d){var e,f,g,h,i,j,k;if(b!=sEc(c,a.length)){f=a[b-(c?1:-1)];UDc(this.f,f,c?(KAc(),IAc):(KAc(),HAc))}e=a[b][0];k=!d||e.k==(j0b(),e0b);j=Ou(a[b]);this.ag(j,k,false,c);g=0;for(i=new olb(j);i.a');a0?(RHc(this.a,a[b-1],a[b]),undefined):!c&&b1){Ccb(DD(vNb(Q_b((tCb(0,a.c.length),BD(a.c[0],10))),(Nyc(),Awc))))?YGc(a,this.d,this):(mmb(),Okb(a,this.d));Ccb(DD(vNb(Q_b((tCb(0,a.c.length),BD(a.c[0],10))),Awc)))||PEc(this.e,a)}};var YX=mdb(Gqe,'ModelOrderBarycenterHeuristic',660);bcb(1803,1,Dke,$Gc);_.ue=function _Gc(a,b){return VGc(this.a,BD(a,10),BD(b,10))};_.Fb=function aHc(a){return this===a};_.ve=function bHc(){return new tpb(this)};var XX=mdb(Gqe,'ModelOrderBarycenterHeuristic/lambda$0$Type',1803);bcb(1403,1,Bqe,fHc);_.Yf=function gHc(a){var b;return BD(a,37),b=k3c(cHc),e3c(b,(qUb(),nUb),(S8b(),H8b)),b};_.pf=function hHc(a,b){eHc((BD(a,37),b))};var cHc;var ZX=mdb(Gqe,'NoCrossingMinimizer',1403);bcb(796,402,Eqe,iHc);_.$f=function jHc(a,b,c){var d,e,f,g,h,i,j,k,l,m,n;l=this.g;switch(c.g){case 1:{e=0;f=0;for(k=new olb(a.j);k.a1&&(e.j==(Ucd(),zcd)?(this.b[a]=true):e.j==Tcd&&a>0&&(this.b[a-1]=true))};_.f=0;var aY=mdb(Lne,'AllCrossingsCounter',1798);bcb(587,1,{},BHc);_.b=0;_.d=0;var bY=mdb(Lne,'BinaryIndexedTree',587);bcb(524,1,{},dIc);var DHc,EHc;var lY=mdb(Lne,'CrossingsCounter',524);bcb(1906,1,Dke,hIc);_.ue=function iIc(a,b){return YHc(this.a,BD(a,11),BD(b,11))};_.Fb=function jIc(a){return this===a};_.ve=function kIc(){return new tpb(this)};var cY=mdb(Lne,'CrossingsCounter/lambda$0$Type',1906);bcb(1907,1,Dke,lIc);_.ue=function mIc(a,b){return ZHc(this.a,BD(a,11),BD(b,11))};_.Fb=function nIc(a){return this===a};_.ve=function oIc(){return new tpb(this)};var dY=mdb(Lne,'CrossingsCounter/lambda$1$Type',1907);bcb(1908,1,Dke,pIc);_.ue=function qIc(a,b){return $Hc(this.a,BD(a,11),BD(b,11))};_.Fb=function rIc(a){return this===a};_.ve=function sIc(){return new tpb(this)};var eY=mdb(Lne,'CrossingsCounter/lambda$2$Type',1908);bcb(1909,1,Dke,tIc);_.ue=function uIc(a,b){return _Hc(this.a,BD(a,11),BD(b,11))};_.Fb=function vIc(a){return this===a};_.ve=function wIc(){return new tpb(this)};var fY=mdb(Lne,'CrossingsCounter/lambda$3$Type',1909);bcb(1910,1,qie,xIc);_.td=function yIc(a){eIc(this.a,BD(a,11))};var gY=mdb(Lne,'CrossingsCounter/lambda$4$Type',1910);bcb(1911,1,Oie,zIc);_.Mb=function AIc(a){return fIc(this.a,BD(a,11))};var hY=mdb(Lne,'CrossingsCounter/lambda$5$Type',1911);bcb(1912,1,qie,CIc);_.td=function DIc(a){BIc(this,a)};var iY=mdb(Lne,'CrossingsCounter/lambda$6$Type',1912);bcb(1913,1,qie,EIc);_.td=function FIc(a){var b;FHc();Wjb(this.b,(b=this.a,BD(a,11),b))};var jY=mdb(Lne,'CrossingsCounter/lambda$7$Type',1913);bcb(826,1,Vke,GIc);_.Lb=function HIc(a){return FHc(),wNb(BD(a,11),(wtc(),gtc))};_.Fb=function IIc(a){return this===a};_.Mb=function JIc(a){return FHc(),wNb(BD(a,11),(wtc(),gtc))};var kY=mdb(Lne,'CrossingsCounter/lambda$8$Type',826);bcb(1905,1,{},LIc);var pY=mdb(Lne,'HyperedgeCrossingsCounter',1905);bcb(467,1,{35:1,467:1},NIc);_.wd=function OIc(a){return MIc(this,BD(a,467))};_.b=0;_.c=0;_.e=0;_.f=0;var oY=mdb(Lne,'HyperedgeCrossingsCounter/Hyperedge',467);bcb(362,1,{35:1,362:1},QIc);_.wd=function RIc(a){return PIc(this,BD(a,362))};_.b=0;_.c=0;var nY=mdb(Lne,'HyperedgeCrossingsCounter/HyperedgeCorner',362);bcb(523,22,{3:1,35:1,22:1,523:1},VIc);var SIc,TIc;var mY=ndb(Lne,'HyperedgeCrossingsCounter/HyperedgeCorner/Type',523,CI,XIc,WIc);var YIc;bcb(1405,1,Bqe,dJc);_.Yf=function eJc(a){return BD(vNb(BD(a,37),(wtc(),Ksc)),21).Hc((Orc(),Hrc))?_Ic:null};_.pf=function fJc(a,b){cJc(this,BD(a,37),b)};var _Ic;var rY=mdb(Hqe,'InteractiveNodePlacer',1405);bcb(1406,1,Bqe,tJc);_.Yf=function uJc(a){return BD(vNb(BD(a,37),(wtc(),Ksc)),21).Hc((Orc(),Hrc))?gJc:null};_.pf=function vJc(a,b){rJc(this,BD(a,37),b)};var gJc,hJc,iJc;var tY=mdb(Hqe,'LinearSegmentsNodePlacer',1406);bcb(257,1,{35:1,257:1},zJc);_.wd=function AJc(a){return wJc(this,BD(a,257))};_.Fb=function BJc(a){var b;if(JD(a,257)){b=BD(a,257);return this.b==b.b}return false};_.Hb=function CJc(){return this.b};_.Ib=function DJc(){return 'ls'+Fe(this.e)};_.a=0;_.b=0;_.c=-1;_.d=-1;_.g=0;var sY=mdb(Hqe,'LinearSegmentsNodePlacer/LinearSegment',257);bcb(1408,1,Bqe,$Jc);_.Yf=function _Jc(a){return BD(vNb(BD(a,37),(wtc(),Ksc)),21).Hc((Orc(),Hrc))?EJc:null};_.pf=function hKc(a,b){WJc(this,BD(a,37),b)};_.b=0;_.g=0;var EJc;var dZ=mdb(Hqe,'NetworkSimplexPlacer',1408);bcb(1427,1,Dke,iKc);_.ue=function jKc(a,b){return beb(BD(a,19).a,BD(b,19).a)};_.Fb=function kKc(a){return this===a};_.ve=function lKc(){return new tpb(this)};var uY=mdb(Hqe,'NetworkSimplexPlacer/0methodref$compare$Type',1427);bcb(1429,1,Dke,mKc);_.ue=function nKc(a,b){return beb(BD(a,19).a,BD(b,19).a)};_.Fb=function oKc(a){return this===a};_.ve=function pKc(){return new tpb(this)};var vY=mdb(Hqe,'NetworkSimplexPlacer/1methodref$compare$Type',1429);bcb(649,1,{649:1},qKc);var wY=mdb(Hqe,'NetworkSimplexPlacer/EdgeRep',649);bcb(401,1,{401:1},rKc);_.b=false;var xY=mdb(Hqe,'NetworkSimplexPlacer/NodeRep',401);bcb(508,12,{3:1,4:1,20:1,28:1,52:1,12:1,14:1,15:1,54:1,508:1},vKc);var CY=mdb(Hqe,'NetworkSimplexPlacer/Path',508);bcb(1409,1,{},wKc);_.Kb=function xKc(a){return BD(a,17).d.i.k};var yY=mdb(Hqe,'NetworkSimplexPlacer/Path/lambda$0$Type',1409);bcb(1410,1,Oie,yKc);_.Mb=function zKc(a){return BD(a,267)==(j0b(),g0b)};var zY=mdb(Hqe,'NetworkSimplexPlacer/Path/lambda$1$Type',1410);bcb(1411,1,{},AKc);_.Kb=function BKc(a){return BD(a,17).d.i};var AY=mdb(Hqe,'NetworkSimplexPlacer/Path/lambda$2$Type',1411);bcb(1412,1,Oie,CKc);_.Mb=function DKc(a){return eLc(Lzc(BD(a,10)))};var BY=mdb(Hqe,'NetworkSimplexPlacer/Path/lambda$3$Type',1412);bcb(1413,1,Oie,EKc);_.Mb=function FKc(a){return dKc(BD(a,11))};var DY=mdb(Hqe,'NetworkSimplexPlacer/lambda$0$Type',1413);bcb(1414,1,qie,GKc);_.td=function HKc(a){LJc(this.a,this.b,BD(a,11))};var EY=mdb(Hqe,'NetworkSimplexPlacer/lambda$1$Type',1414);bcb(1423,1,qie,IKc);_.td=function JKc(a){MJc(this.a,BD(a,17))};var FY=mdb(Hqe,'NetworkSimplexPlacer/lambda$10$Type',1423);bcb(1424,1,{},KKc);_.Kb=function LKc(a){return FJc(),new YAb(null,new Kub(BD(a,29).a,16))};var GY=mdb(Hqe,'NetworkSimplexPlacer/lambda$11$Type',1424);bcb(1425,1,qie,MKc);_.td=function NKc(a){NJc(this.a,BD(a,10))};var HY=mdb(Hqe,'NetworkSimplexPlacer/lambda$12$Type',1425);bcb(1426,1,{},OKc);_.Kb=function PKc(a){return FJc(),meb(BD(a,121).e)};var IY=mdb(Hqe,'NetworkSimplexPlacer/lambda$13$Type',1426);bcb(1428,1,{},QKc);_.Kb=function RKc(a){return FJc(),meb(BD(a,121).e)};var JY=mdb(Hqe,'NetworkSimplexPlacer/lambda$15$Type',1428);bcb(1430,1,Oie,SKc);_.Mb=function TKc(a){return FJc(),BD(a,401).c.k==(j0b(),h0b)};var KY=mdb(Hqe,'NetworkSimplexPlacer/lambda$17$Type',1430);bcb(1431,1,Oie,UKc);_.Mb=function VKc(a){return FJc(),BD(a,401).c.j.c.length>1};var LY=mdb(Hqe,'NetworkSimplexPlacer/lambda$18$Type',1431);bcb(1432,1,qie,WKc);_.td=function XKc(a){eKc(this.c,this.b,this.d,this.a,BD(a,401))};_.c=0;_.d=0;var MY=mdb(Hqe,'NetworkSimplexPlacer/lambda$19$Type',1432);bcb(1415,1,{},YKc);_.Kb=function ZKc(a){return FJc(),new YAb(null,new Kub(BD(a,29).a,16))};var NY=mdb(Hqe,'NetworkSimplexPlacer/lambda$2$Type',1415);bcb(1433,1,qie,$Kc);_.td=function _Kc(a){fKc(this.a,BD(a,11))};_.a=0;var OY=mdb(Hqe,'NetworkSimplexPlacer/lambda$20$Type',1433);bcb(1434,1,{},aLc);_.Kb=function bLc(a){return FJc(),new YAb(null,new Kub(BD(a,29).a,16))};var PY=mdb(Hqe,'NetworkSimplexPlacer/lambda$21$Type',1434);bcb(1435,1,qie,cLc);_.td=function dLc(a){OJc(this.a,BD(a,10))};var QY=mdb(Hqe,'NetworkSimplexPlacer/lambda$22$Type',1435);bcb(1436,1,Oie,fLc);_.Mb=function gLc(a){return eLc(a)};var RY=mdb(Hqe,'NetworkSimplexPlacer/lambda$23$Type',1436);bcb(1437,1,{},hLc);_.Kb=function iLc(a){return FJc(),new YAb(null,new Kub(BD(a,29).a,16))};var SY=mdb(Hqe,'NetworkSimplexPlacer/lambda$24$Type',1437);bcb(1438,1,Oie,jLc);_.Mb=function kLc(a){return PJc(this.a,BD(a,10))};var TY=mdb(Hqe,'NetworkSimplexPlacer/lambda$25$Type',1438);bcb(1439,1,qie,lLc);_.td=function mLc(a){QJc(this.a,this.b,BD(a,10))};var UY=mdb(Hqe,'NetworkSimplexPlacer/lambda$26$Type',1439);bcb(1440,1,Oie,nLc);_.Mb=function oLc(a){return FJc(),!OZb(BD(a,17))};var VY=mdb(Hqe,'NetworkSimplexPlacer/lambda$27$Type',1440);bcb(1441,1,Oie,pLc);_.Mb=function qLc(a){return FJc(),!OZb(BD(a,17))};var WY=mdb(Hqe,'NetworkSimplexPlacer/lambda$28$Type',1441);bcb(1442,1,{},rLc);_.Ce=function sLc(a,b){return RJc(this.a,BD(a,29),BD(b,29))};var XY=mdb(Hqe,'NetworkSimplexPlacer/lambda$29$Type',1442);bcb(1416,1,{},tLc);_.Kb=function uLc(a){return FJc(),new YAb(null,new Lub(new Sr(ur(U_b(BD(a,10)).a.Kc(),new Sq))))};var YY=mdb(Hqe,'NetworkSimplexPlacer/lambda$3$Type',1416);bcb(1417,1,Oie,vLc);_.Mb=function wLc(a){return FJc(),cKc(BD(a,17))};var ZY=mdb(Hqe,'NetworkSimplexPlacer/lambda$4$Type',1417);bcb(1418,1,qie,xLc);_.td=function yLc(a){XJc(this.a,BD(a,17))};var $Y=mdb(Hqe,'NetworkSimplexPlacer/lambda$5$Type',1418);bcb(1419,1,{},zLc);_.Kb=function ALc(a){return FJc(),new YAb(null,new Kub(BD(a,29).a,16))};var _Y=mdb(Hqe,'NetworkSimplexPlacer/lambda$6$Type',1419);bcb(1420,1,Oie,BLc);_.Mb=function CLc(a){return FJc(),BD(a,10).k==(j0b(),h0b)};var aZ=mdb(Hqe,'NetworkSimplexPlacer/lambda$7$Type',1420);bcb(1421,1,{},DLc);_.Kb=function ELc(a){return FJc(),new YAb(null,new Lub(new Sr(ur(O_b(BD(a,10)).a.Kc(),new Sq))))};var bZ=mdb(Hqe,'NetworkSimplexPlacer/lambda$8$Type',1421);bcb(1422,1,Oie,FLc);_.Mb=function GLc(a){return FJc(),NZb(BD(a,17))};var cZ=mdb(Hqe,'NetworkSimplexPlacer/lambda$9$Type',1422);bcb(1404,1,Bqe,KLc);_.Yf=function LLc(a){return BD(vNb(BD(a,37),(wtc(),Ksc)),21).Hc((Orc(),Hrc))?HLc:null};_.pf=function MLc(a,b){JLc(BD(a,37),b)};var HLc;var eZ=mdb(Hqe,'SimpleNodePlacer',1404);bcb(180,1,{180:1},ULc);_.Ib=function VLc(){var a;a='';this.c==(YLc(),XLc)?(a+=kle):this.c==WLc&&(a+=jle);this.o==(eMc(),cMc)?(a+=vle):this.o==dMc?(a+='UP'):(a+='BALANCED');return a};var hZ=mdb(Kqe,'BKAlignedLayout',180);bcb(516,22,{3:1,35:1,22:1,516:1},ZLc);var WLc,XLc;var fZ=ndb(Kqe,'BKAlignedLayout/HDirection',516,CI,_Lc,$Lc);var aMc;bcb(515,22,{3:1,35:1,22:1,515:1},fMc);var cMc,dMc;var gZ=ndb(Kqe,'BKAlignedLayout/VDirection',515,CI,hMc,gMc);var iMc;bcb(1634,1,{},mMc);var iZ=mdb(Kqe,'BKAligner',1634);bcb(1637,1,{},rMc);var lZ=mdb(Kqe,'BKCompactor',1637);bcb(654,1,{654:1},sMc);_.a=0;var jZ=mdb(Kqe,'BKCompactor/ClassEdge',654);bcb(458,1,{458:1},uMc);_.a=null;_.b=0;var kZ=mdb(Kqe,'BKCompactor/ClassNode',458);bcb(1407,1,Bqe,CMc);_.Yf=function GMc(a){return BD(vNb(BD(a,37),(wtc(),Ksc)),21).Hc((Orc(),Hrc))?vMc:null};_.pf=function HMc(a,b){BMc(this,BD(a,37),b)};_.d=false;var vMc;var mZ=mdb(Kqe,'BKNodePlacer',1407);bcb(1635,1,{},JMc);_.d=0;var oZ=mdb(Kqe,'NeighborhoodInformation',1635);bcb(1636,1,Dke,OMc);_.ue=function PMc(a,b){return NMc(this,BD(a,46),BD(b,46))};_.Fb=function QMc(a){return this===a};_.ve=function RMc(){return new tpb(this)};var nZ=mdb(Kqe,'NeighborhoodInformation/NeighborComparator',1636);bcb(808,1,{});var sZ=mdb(Kqe,'ThresholdStrategy',808);bcb(1763,808,{},WMc);_.bg=function XMc(a,b,c){return this.a.o==(eMc(),dMc)?Pje:Qje};_.cg=function YMc(){};var pZ=mdb(Kqe,'ThresholdStrategy/NullThresholdStrategy',1763);bcb(579,1,{579:1},ZMc);_.c=false;_.d=false;var qZ=mdb(Kqe,'ThresholdStrategy/Postprocessable',579);bcb(1764,808,{},bNc);_.bg=function cNc(a,b,c){var d,e,f;e=b==c;d=this.a.a[c.p]==b;if(!(e||d)){return a}f=a;if(this.a.c==(YLc(),XLc)){e&&(f=$Mc(this,b,true));!isNaN(f)&&!isFinite(f)&&d&&(f=$Mc(this,c,false))}else{e&&(f=$Mc(this,b,true));!isNaN(f)&&!isFinite(f)&&d&&(f=$Mc(this,c,false))}return f};_.cg=function dNc(){var a,b,c,d,e;while(this.d.b!=0){e=BD(Ksb(this.d),579);d=_Mc(this,e);if(!d.a){continue}a=d.a;c=Ccb(this.a.f[this.a.g[e.b.p].p]);if(!c&&!OZb(a)&&a.c.i.c==a.d.i.c){continue}b=aNc(this,e);b||swb(this.e,e)}while(this.e.a.c.length!=0){aNc(this,BD(rwb(this.e),579))}};var rZ=mdb(Kqe,'ThresholdStrategy/SimpleThresholdStrategy',1764);bcb(635,1,{635:1,246:1,234:1},hNc);_.Kf=function jNc(){return gNc(this)};_.Xf=function iNc(){return gNc(this)};var eNc;var tZ=mdb(Lqe,'EdgeRouterFactory',635);bcb(1458,1,Bqe,wNc);_.Yf=function xNc(a){return uNc(BD(a,37))};_.pf=function yNc(a,b){vNc(BD(a,37),b)};var lNc,mNc,nNc,oNc,pNc,qNc,rNc,sNc;var uZ=mdb(Lqe,'OrthogonalEdgeRouter',1458);bcb(1451,1,Bqe,NNc);_.Yf=function ONc(a){return INc(BD(a,37))};_.pf=function PNc(a,b){KNc(this,BD(a,37),b)};var zNc,ANc,BNc,CNc,DNc,ENc;var wZ=mdb(Lqe,'PolylineEdgeRouter',1451);bcb(1452,1,Vke,RNc);_.Lb=function SNc(a){return QNc(BD(a,10))};_.Fb=function TNc(a){return this===a};_.Mb=function UNc(a){return QNc(BD(a,10))};var vZ=mdb(Lqe,'PolylineEdgeRouter/1',1452);bcb(1809,1,Oie,ZNc);_.Mb=function $Nc(a){return BD(a,129).c==(HOc(),FOc)};var xZ=mdb(Mqe,'HyperEdgeCycleDetector/lambda$0$Type',1809);bcb(1810,1,{},_Nc);_.Ge=function aOc(a){return BD(a,129).d};var yZ=mdb(Mqe,'HyperEdgeCycleDetector/lambda$1$Type',1810);bcb(1811,1,Oie,bOc);_.Mb=function cOc(a){return BD(a,129).c==(HOc(),FOc)};var zZ=mdb(Mqe,'HyperEdgeCycleDetector/lambda$2$Type',1811);bcb(1812,1,{},dOc);_.Ge=function eOc(a){return BD(a,129).d};var AZ=mdb(Mqe,'HyperEdgeCycleDetector/lambda$3$Type',1812);bcb(1813,1,{},fOc);_.Ge=function gOc(a){return BD(a,129).d};var BZ=mdb(Mqe,'HyperEdgeCycleDetector/lambda$4$Type',1813);bcb(1814,1,{},hOc);_.Ge=function iOc(a){return BD(a,129).d};var CZ=mdb(Mqe,'HyperEdgeCycleDetector/lambda$5$Type',1814);bcb(112,1,{35:1,112:1},uOc);_.wd=function vOc(a){return kOc(this,BD(a,112))};_.Fb=function wOc(a){var b;if(JD(a,112)){b=BD(a,112);return this.g==b.g}return false};_.Hb=function xOc(){return this.g};_.Ib=function zOc(){var a,b,c,d;a=new Wfb('{');d=new olb(this.n);while(d.a'+this.b+' ('+Yr(this.c)+')'};_.d=0;var EZ=mdb(Mqe,'HyperEdgeSegmentDependency',129);bcb(520,22,{3:1,35:1,22:1,520:1},IOc);var FOc,GOc;var DZ=ndb(Mqe,'HyperEdgeSegmentDependency/DependencyType',520,CI,KOc,JOc);var LOc;bcb(1815,1,{},ZOc);var MZ=mdb(Mqe,'HyperEdgeSegmentSplitter',1815);bcb(1816,1,{},aPc);_.a=0;_.b=0;var FZ=mdb(Mqe,'HyperEdgeSegmentSplitter/AreaRating',1816);bcb(329,1,{329:1},bPc);_.a=0;_.b=0;_.c=0;var GZ=mdb(Mqe,'HyperEdgeSegmentSplitter/FreeArea',329);bcb(1817,1,Dke,cPc);_.ue=function dPc(a,b){return _Oc(BD(a,112),BD(b,112))};_.Fb=function ePc(a){return this===a};_.ve=function fPc(){return new tpb(this)};var HZ=mdb(Mqe,'HyperEdgeSegmentSplitter/lambda$0$Type',1817);bcb(1818,1,qie,gPc);_.td=function hPc(a){TOc(this.a,this.d,this.c,this.b,BD(a,112))};_.b=0;var IZ=mdb(Mqe,'HyperEdgeSegmentSplitter/lambda$1$Type',1818);bcb(1819,1,{},iPc);_.Kb=function jPc(a){return new YAb(null,new Kub(BD(a,112).e,16))};var JZ=mdb(Mqe,'HyperEdgeSegmentSplitter/lambda$2$Type',1819);bcb(1820,1,{},kPc);_.Kb=function lPc(a){return new YAb(null,new Kub(BD(a,112).j,16))};var KZ=mdb(Mqe,'HyperEdgeSegmentSplitter/lambda$3$Type',1820);bcb(1821,1,{},mPc);_.Fe=function nPc(a){return Edb(ED(a))};var LZ=mdb(Mqe,'HyperEdgeSegmentSplitter/lambda$4$Type',1821);bcb(655,1,{},tPc);_.a=0;_.b=0;_.c=0;var QZ=mdb(Mqe,'OrthogonalRoutingGenerator',655);bcb(1638,1,{},xPc);_.Kb=function yPc(a){return new YAb(null,new Kub(BD(a,112).e,16))};var OZ=mdb(Mqe,'OrthogonalRoutingGenerator/lambda$0$Type',1638);bcb(1639,1,{},zPc);_.Kb=function APc(a){return new YAb(null,new Kub(BD(a,112).j,16))};var PZ=mdb(Mqe,'OrthogonalRoutingGenerator/lambda$1$Type',1639);bcb(661,1,{});var RZ=mdb(Nqe,'BaseRoutingDirectionStrategy',661);bcb(1807,661,{},EPc);_.dg=function FPc(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p;if(!!a.r&&!a.q){return}k=b+a.o*c;for(j=new olb(a.n);j.aqme){f=k;e=a;d=new f7c(l,f);Dsb(g.a,d);BPc(this,g,e,d,false);m=a.r;if(m){n=Edb(ED(Ut(m.e,0)));d=new f7c(n,f);Dsb(g.a,d);BPc(this,g,e,d,false);f=b+m.o*c;e=m;d=new f7c(n,f);Dsb(g.a,d);BPc(this,g,e,d,false)}d=new f7c(p,f);Dsb(g.a,d);BPc(this,g,e,d,false)}}}}};_.eg=function GPc(a){return a.i.n.a+a.n.a+a.a.a};_.fg=function HPc(){return Ucd(),Rcd};_.gg=function IPc(){return Ucd(),Acd};var SZ=mdb(Nqe,'NorthToSouthRoutingStrategy',1807);bcb(1808,661,{},JPc);_.dg=function KPc(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p;if(!!a.r&&!a.q){return}k=b-a.o*c;for(j=new olb(a.n);j.aqme){f=k;e=a;d=new f7c(l,f);Dsb(g.a,d);BPc(this,g,e,d,false);m=a.r;if(m){n=Edb(ED(Ut(m.e,0)));d=new f7c(n,f);Dsb(g.a,d);BPc(this,g,e,d,false);f=b-m.o*c;e=m;d=new f7c(n,f);Dsb(g.a,d);BPc(this,g,e,d,false)}d=new f7c(p,f);Dsb(g.a,d);BPc(this,g,e,d,false)}}}}};_.eg=function LPc(a){return a.i.n.a+a.n.a+a.a.a};_.fg=function MPc(){return Ucd(),Acd};_.gg=function NPc(){return Ucd(),Rcd};var TZ=mdb(Nqe,'SouthToNorthRoutingStrategy',1808);bcb(1806,661,{},OPc);_.dg=function PPc(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p;if(!!a.r&&!a.q){return}k=b+a.o*c;for(j=new olb(a.n);j.aqme){f=k;e=a;d=new f7c(f,l);Dsb(g.a,d);BPc(this,g,e,d,true);m=a.r;if(m){n=Edb(ED(Ut(m.e,0)));d=new f7c(f,n);Dsb(g.a,d);BPc(this,g,e,d,true);f=b+m.o*c;e=m;d=new f7c(f,n);Dsb(g.a,d);BPc(this,g,e,d,true)}d=new f7c(f,p);Dsb(g.a,d);BPc(this,g,e,d,true)}}}}};_.eg=function QPc(a){return a.i.n.b+a.n.b+a.a.b};_.fg=function RPc(){return Ucd(),zcd};_.gg=function SPc(){return Ucd(),Tcd};var UZ=mdb(Nqe,'WestToEastRoutingStrategy',1806);bcb(813,1,{},YPc);_.Ib=function ZPc(){return Fe(this.a)};_.b=0;_.c=false;_.d=false;_.f=0;var WZ=mdb(Pqe,'NubSpline',813);bcb(407,1,{407:1},aQc,bQc);var VZ=mdb(Pqe,'NubSpline/PolarCP',407);bcb(1453,1,Bqe,vQc);_.Yf=function xQc(a){return qQc(BD(a,37))};_.pf=function yQc(a,b){uQc(this,BD(a,37),b)};var cQc,dQc,eQc,fQc,gQc;var b$=mdb(Pqe,'SplineEdgeRouter',1453);bcb(268,1,{268:1},BQc);_.Ib=function CQc(){return this.a+' ->('+this.c+') '+this.b};_.c=0;var XZ=mdb(Pqe,'SplineEdgeRouter/Dependency',268);bcb(455,22,{3:1,35:1,22:1,455:1},GQc);var DQc,EQc;var YZ=ndb(Pqe,'SplineEdgeRouter/SideToProcess',455,CI,IQc,HQc);var JQc;bcb(1454,1,Oie,LQc);_.Mb=function MQc(a){return hQc(),!BD(a,128).o};var ZZ=mdb(Pqe,'SplineEdgeRouter/lambda$0$Type',1454);bcb(1455,1,{},NQc);_.Ge=function OQc(a){return hQc(),BD(a,128).v+1};var $Z=mdb(Pqe,'SplineEdgeRouter/lambda$1$Type',1455);bcb(1456,1,qie,PQc);_.td=function QQc(a){sQc(this.a,this.b,BD(a,46))};var _Z=mdb(Pqe,'SplineEdgeRouter/lambda$2$Type',1456);bcb(1457,1,qie,RQc);_.td=function SQc(a){tQc(this.a,this.b,BD(a,46))};var a$=mdb(Pqe,'SplineEdgeRouter/lambda$3$Type',1457);bcb(128,1,{35:1,128:1},YQc,ZQc);_.wd=function $Qc(a){return WQc(this,BD(a,128))};_.b=0;_.e=false;_.f=0;_.g=0;_.j=false;_.k=false;_.n=0;_.o=false;_.p=false;_.q=false;_.s=0;_.u=0;_.v=0;_.F=0;var d$=mdb(Pqe,'SplineSegment',128);bcb(459,1,{459:1},_Qc);_.a=0;_.b=false;_.c=false;_.d=false;_.e=false;_.f=0;var c$=mdb(Pqe,'SplineSegment/EdgeInformation',459);bcb(1234,1,{},hRc);var f$=mdb(Uqe,hme,1234);bcb(1235,1,Dke,jRc);_.ue=function kRc(a,b){return iRc(BD(a,135),BD(b,135))};_.Fb=function lRc(a){return this===a};_.ve=function mRc(){return new tpb(this)};var e$=mdb(Uqe,ime,1235);bcb(1233,1,{},tRc);var g$=mdb(Uqe,'MrTree',1233);bcb(393,22,{3:1,35:1,22:1,393:1,246:1,234:1},ARc);_.Kf=function CRc(){return zRc(this)};_.Xf=function BRc(){return zRc(this)};var uRc,vRc,wRc,xRc;var h$=ndb(Uqe,'TreeLayoutPhases',393,CI,ERc,DRc);var FRc;bcb(1130,209,Mle,HRc);_.Ze=function IRc(a,b){var c,d,e,f,g,h,i;Ccb(DD(hkd(a,(JTc(),ATc))))||$Cb((c=new _Cb((Pgd(),new bhd(a))),c));g=(h=new SRc,tNb(h,a),yNb(h,(mTc(),dTc),a),i=new Lqb,pRc(a,h,i),oRc(a,h,i),h);f=gRc(this.a,g);for(e=new olb(f);e.a'+WRc(this.c):'e_'+tb(this)};var l$=mdb(Vqe,'TEdge',188);bcb(135,134,{3:1,135:1,94:1,134:1},SRc);_.Ib=function TRc(){var a,b,c,d,e;e=null;for(d=Jsb(this.b,0);d.b!=d.d.c;){c=BD(Xsb(d),86);e+=(c.c==null||c.c.length==0?'n_'+c.g:'n_'+c.c)+'\\n'}for(b=Jsb(this.a,0);b.b!=b.d.c;){a=BD(Xsb(b),188);e+=(!!a.b&&!!a.c?WRc(a.b)+'->'+WRc(a.c):'e_'+tb(a))+'\\n'}return e};var n$=mdb(Vqe,'TGraph',135);bcb(633,502,{3:1,502:1,633:1,94:1,134:1});var r$=mdb(Vqe,'TShape',633);bcb(86,633,{3:1,502:1,86:1,633:1,94:1,134:1},XRc);_.Ib=function YRc(){return WRc(this)};var q$=mdb(Vqe,'TNode',86);bcb(255,1,vie,ZRc);_.Jc=function $Rc(a){reb(this,a)};_.Kc=function _Rc(){var a;return a=Jsb(this.a.d,0),new aSc(a)};var p$=mdb(Vqe,'TNode/2',255);bcb(358,1,aie,aSc);_.Nb=function bSc(a){Rrb(this,a)};_.Pb=function dSc(){return BD(Xsb(this.a),188).c};_.Ob=function cSc(){return Wsb(this.a)};_.Qb=function eSc(){Zsb(this.a)};var o$=mdb(Vqe,'TNode/2/1',358);bcb(1840,1,ene,hSc);_.pf=function jSc(a,b){gSc(this,BD(a,135),b)};var s$=mdb(Wqe,'FanProcessor',1840);bcb(327,22,{3:1,35:1,22:1,327:1,234:1},rSc);_.Kf=function sSc(){switch(this.g){case 0:return new QSc;case 1:return new hSc;case 2:return new GSc;case 3:return new zSc;case 4:return new NSc;case 5:return new TSc;default:throw vbb(new Wdb(Dne+(this.f!=null?this.f:''+this.g)));}};var kSc,lSc,mSc,nSc,oSc,pSc;var t$=ndb(Wqe,Ene,327,CI,uSc,tSc);var vSc;bcb(1843,1,ene,zSc);_.pf=function ASc(a,b){xSc(this,BD(a,135),b)};_.a=0;var v$=mdb(Wqe,'LevelHeightProcessor',1843);bcb(1844,1,vie,BSc);_.Jc=function CSc(a){reb(this,a)};_.Kc=function DSc(){return mmb(),Emb(),Dmb};var u$=mdb(Wqe,'LevelHeightProcessor/1',1844);bcb(1841,1,ene,GSc);_.pf=function HSc(a,b){ESc(this,BD(a,135),b)};_.a=0;var x$=mdb(Wqe,'NeighborsProcessor',1841);bcb(1842,1,vie,ISc);_.Jc=function JSc(a){reb(this,a)};_.Kc=function KSc(){return mmb(),Emb(),Dmb};var w$=mdb(Wqe,'NeighborsProcessor/1',1842);bcb(1845,1,ene,NSc);_.pf=function OSc(a,b){LSc(this,BD(a,135),b)};_.a=0;var y$=mdb(Wqe,'NodePositionProcessor',1845);bcb(1839,1,ene,QSc);_.pf=function RSc(a,b){PSc(this,BD(a,135))};var z$=mdb(Wqe,'RootProcessor',1839);bcb(1846,1,ene,TSc);_.pf=function USc(a,b){SSc(BD(a,135))};var A$=mdb(Wqe,'Untreeifyer',1846);var VSc,WSc,XSc,YSc,ZSc,$Sc,_Sc,aTc,bTc,cTc,dTc,eTc,fTc,gTc,hTc,iTc,jTc,kTc,lTc;bcb(851,1,ale,sTc);_.Qe=function tTc(a){t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Zqe),''),'Weighting of Nodes'),'Which weighting to use when computing a node order.'),qTc),(_5c(),V5c)),E$),pqb((N5c(),L5c)))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,$qe),''),'Search Order'),'Which search order to use when computing a spanning tree.'),oTc),V5c),F$),pqb(L5c))));KTc((new LTc,a))};var nTc,oTc,pTc,qTc;var B$=mdb(_qe,'MrTreeMetaDataProvider',851);bcb(994,1,ale,LTc);_.Qe=function MTc(a){KTc(a)};var uTc,vTc,wTc,xTc,yTc,zTc,ATc,BTc,CTc,DTc,ETc,FTc,GTc,HTc,ITc;var D$=mdb(_qe,'MrTreeOptions',994);bcb(995,1,{},NTc);_.$e=function OTc(){var a;return a=new HRc,a};_._e=function PTc(a){};var C$=mdb(_qe,'MrTreeOptions/MrtreeFactory',995);bcb(480,22,{3:1,35:1,22:1,480:1},TTc);var QTc,RTc;var E$=ndb(_qe,'OrderWeighting',480,CI,VTc,UTc);var WTc;bcb(425,22,{3:1,35:1,22:1,425:1},_Tc);var YTc,ZTc;var F$=ndb(_qe,'TreeifyingOrder',425,CI,bUc,aUc);var cUc;bcb(1459,1,Bqe,lUc);_.Yf=function mUc(a){return BD(a,135),eUc};_.pf=function nUc(a,b){kUc(this,BD(a,135),b)};var eUc;var G$=mdb('org.eclipse.elk.alg.mrtree.p1treeify','DFSTreeifyer',1459);bcb(1460,1,Bqe,sUc);_.Yf=function tUc(a){return BD(a,135),oUc};_.pf=function uUc(a,b){rUc(this,BD(a,135),b)};var oUc;var H$=mdb('org.eclipse.elk.alg.mrtree.p2order','NodeOrderer',1460);bcb(1461,1,Bqe,CUc);_.Yf=function DUc(a){return BD(a,135),vUc};_.pf=function EUc(a,b){AUc(this,BD(a,135),b)};_.a=0;var vUc;var I$=mdb('org.eclipse.elk.alg.mrtree.p3place','NodePlacer',1461);bcb(1462,1,Bqe,IUc);_.Yf=function JUc(a){return BD(a,135),FUc};_.pf=function KUc(a,b){HUc(BD(a,135),b)};var FUc;var J$=mdb('org.eclipse.elk.alg.mrtree.p4route','EdgeRouter',1462);var LUc;bcb(495,22,{3:1,35:1,22:1,495:1,246:1,234:1},RUc);_.Kf=function TUc(){return QUc(this)};_.Xf=function SUc(){return QUc(this)};var NUc,OUc;var K$=ndb(cre,'RadialLayoutPhases',495,CI,VUc,UUc);var WUc;bcb(1131,209,Mle,ZUc);_.Ze=function $Uc(a,b){var c,d,e,f,g,h;c=YUc(this,a);Odd(b,'Radial layout',c.c.length);Ccb(DD(hkd(a,(ZWc(),QWc))))||$Cb((d=new _Cb((Pgd(),new bhd(a))),d));h=aVc(a);jkd(a,(MUc(),LUc),h);if(!h){throw vbb(new Wdb('The given graph is not a tree!'))}e=Edb(ED(hkd(a,VWc)));e==0&&(e=_Uc(a));jkd(a,VWc,e);for(g=new olb(YUc(this,a));g.a0&&j7c((BCb(c-1,b.length),b.charCodeAt(c-1)),nne)){--c}if(e>=c){throw vbb(new Wdb('The given string does not contain any numbers.'))}f=mfb(b.substr(e,c-e),',|;|\\r|\\n');if(f.length!=2){throw vbb(new Wdb('Exactly two numbers are expected, '+f.length+' were found.'))}try{this.a=Hcb(ufb(f[0]));this.b=Hcb(ufb(f[1]))}catch(a){a=ubb(a);if(JD(a,127)){d=a;throw vbb(new Wdb(one+d))}else throw vbb(a)}};_.Ib=function m7c(){return '('+this.a+','+this.b+')'};_.a=0;_.b=0;var m1=mdb(pne,'KVector',8);bcb(74,68,{3:1,4:1,20:1,28:1,52:1,14:1,68:1,15:1,74:1,414:1},s7c,t7c,u7c);_.Pc=function x7c(){return r7c(this)};_.Jf=function v7c(b){var c,d,e,f,g,h;e=mfb(b,',|;|\\\\(|\\\\)|\\\\[|\\\\]|\\\\{|\\\\}| |\\t|\\n');Osb(this);try{d=0;g=0;f=0;h=0;while(d0){g%2==0?(f=Hcb(e[d])):(h=Hcb(e[d]));g>0&&g%2!=0&&Dsb(this,new f7c(f,h));++g}++d}}catch(a){a=ubb(a);if(JD(a,127)){c=a;throw vbb(new Wdb('The given string does not match the expected format for vectors.'+c))}else throw vbb(a)}};_.Ib=function y7c(){var a,b,c;a=new Wfb('(');b=Jsb(this,0);while(b.b!=b.d.c){c=BD(Xsb(b),8);Qfb(a,c.a+','+c.b);b.b!=b.d.c&&(a.a+='; ',a)}return (a.a+=')',a).a};var l1=mdb(pne,'KVectorChain',74);bcb(248,22,{3:1,35:1,22:1,248:1},G7c);var z7c,A7c,B7c,C7c,D7c,E7c;var o1=ndb(ose,'Alignment',248,CI,I7c,H7c);var J7c;bcb(979,1,ale,Z7c);_.Qe=function $7c(a){Y7c(a)};var L7c,M7c,N7c,O7c,P7c,Q7c,R7c,S7c,T7c,U7c,V7c,W7c;var q1=mdb(ose,'BoxLayouterOptions',979);bcb(980,1,{},_7c);_.$e=function a8c(){var a;return a=new ged,a};_._e=function b8c(a){};var p1=mdb(ose,'BoxLayouterOptions/BoxFactory',980);bcb(291,22,{3:1,35:1,22:1,291:1},j8c);var c8c,d8c,e8c,f8c,g8c,h8c;var r1=ndb(ose,'ContentAlignment',291,CI,l8c,k8c);var m8c;bcb(684,1,ale,Z9c);_.Qe=function $9c(a){t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,sse),''),'Layout Algorithm'),'Select a specific layout algorithm.'),(_5c(),Z5c)),ZI),pqb((N5c(),L5c)))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,tse),''),'Resolved Layout Algorithm'),'Meta data associated with the selected algorithm.'),Y5c),E0),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,$pe),''),'Alignment'),'Alignment of the selected node relative to other nodes; the exact meaning depends on the used algorithm.'),q8c),V5c),o1),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,_le),''),'Aspect Ratio'),'The desired aspect ratio of the drawing, that is the quotient of width by height.'),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,use),''),'Bend Points'),\"A fixed list of bend points for the edge. This is used by the 'Fixed Layout' algorithm to specify a pre-defined routing for an edge. The vector chain must include the source point, any bend points, and the target point, so it must have at least two points.\"),Y5c),l1),pqb(I5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,lqe),''),'Content Alignment'),'Specifies how the content of a node are aligned. Each node can individually control the alignment of its contents. I.e. if a node should be aligned top left in its parent node, the parent node should specify that option.'),x8c),W5c),r1),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Zpe),''),'Debug Mode'),'Whether additional debug information shall be generated.'),(Bcb(),false)),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,cqe),''),Cle),'Overall direction of edges: horizontal (right / left) or vertical (down / up).'),A8c),V5c),t1),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,ype),''),'Edge Routing'),'What kind of edge routing style should be applied for the content of a parent node. Algorithms may also set this option to single edges in order to mark them as splines. The bend point list of edges with this option set to SPLINES must be interpreted as control points for a piecewise cubic spline.'),F8c),V5c),v1),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Jre),''),'Expand Nodes'),'If active, nodes are expanded to fill the area of their parent.'),false),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,tpe),''),'Hierarchy Handling'),\"Determines whether separate layout runs are triggered for different compound nodes in a hierarchical graph. Setting a node's hierarchy handling to `INCLUDE_CHILDREN` will lay out that node and all of its descendants in a single layout run, until a descendant is encountered which has its hierarchy handling set to `SEPARATE_CHILDREN`. In general, `SEPARATE_CHILDREN` will ensure that a new layout run is triggered for a node with that setting. Including multiple levels of hierarchy in a single layout run may allow cross-hierarchical edges to be laid out properly. If the root node is set to `INHERIT` (or not set at all), the default behavior is `SEPARATE_CHILDREN`.\"),K8c),V5c),z1),qqb(L5c,OC(GC(e1,1),Kie,175,0,[K5c])))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,ame),''),'Padding'),\"The padding to be left to a parent element's border when placing child elements. This can also serve as an output option of a layout algorithm if node size calculation is setup appropriately.\"),g9c),Y5c),j1),qqb(L5c,OC(GC(e1,1),Kie,175,0,[K5c])))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Ame),''),'Interactive'),'Whether the algorithm should be run in interactive mode for the content of a parent node. What this means exactly depends on how the specific algorithm interprets this option. Usually in the interactive mode algorithms try to modify the current layout as little as possible.'),false),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,xqe),''),'interactive Layout'),'Whether the graph should be changeable interactively and by setting constraints'),false),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Dme),''),'Omit Node Micro Layout'),\"Node micro layout comprises the computation of node dimensions (if requested), the placement of ports and their labels, and the placement of node labels. The functionality is implemented independent of any specific layout algorithm and shouldn't have any negative impact on the layout algorithm's performance itself. Yet, if any unforeseen behavior occurs, this option allows to deactivate the micro layout.\"),false),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Bme),''),'Port Constraints'),'Defines constraints of the position of the ports of a node.'),u9c),V5c),D1),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,uqe),''),'Position'),\"The position of a node, port, or label. This is used by the 'Fixed Layout' algorithm to specify a pre-defined position.\"),Y5c),m1),qqb(K5c,OC(GC(e1,1),Kie,175,0,[M5c,J5c])))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,vme),''),'Priority'),'Defines the priority of an object; its meaning depends on the specific layout algorithm and the context where it is used.'),X5c),JI),qqb(K5c,OC(GC(e1,1),Kie,175,0,[I5c])))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,yme),''),'Randomization Seed'),'Seed used for pseudo-random number generators to control the layout algorithm. If the value is 0, the seed shall be determined pseudo-randomly (e.g. from the system time).'),X5c),JI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,zme),''),'Separate Connected Components'),'Whether each connected component should be processed separately.'),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,mqe),''),'Junction Points'),'This option is not used as option, but as output of the layout algorithms. It is attached to edges and determines the points where junction symbols should be drawn in order to represent hyperedges with orthogonal routing. Whether such points are computed depends on the chosen layout algorithm and edge routing style. The points are put into the vector chain with no specific order.'),R8c),Y5c),l1),pqb(I5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,pqe),''),'Comment Box'),'Whether the node should be regarded as a comment box instead of a regular node. In that case its placement should be similar to how labels are handled. Any edges incident to a comment box specify to which graph elements the comment is related.'),false),T5c),wI),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,qqe),''),'Hypernode'),'Whether the node should be handled as a hypernode.'),false),T5c),wI),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,vse),''),'Label Manager'),\"Label managers can shorten labels upon a layout algorithm's request.\"),Y5c),h1),qqb(L5c,OC(GC(e1,1),Kie,175,0,[J5c])))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,vqe),''),'Margins'),\"Margins define additional space around the actual bounds of a graph element. For instance, ports or labels being placed on the outside of a node's border might introduce such a margin. The margin is used to guarantee non-overlap of other graph elements with those ports or labels.\"),T8c),Y5c),i1),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Xpe),''),'No Layout'),\"No layout is done for the associated element. This is used to mark parts of a diagram to avoid their inclusion in the layout graph, or to mark parts of the layout graph to prevent layout engines from processing them. If you wish to exclude the contents of a compound node from automatic layout, while the node itself is still considered on its own layer, use the 'Fixed Layout' algorithm for that node.\"),false),T5c),wI),qqb(K5c,OC(GC(e1,1),Kie,175,0,[I5c,M5c,J5c])))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,wse),''),'Scale Factor'),\"The scaling factor to be applied to the corresponding node in recursive layout. It causes the corresponding node's size to be adjusted, and its ports and labels to be sized and placed accordingly after the layout of that node has been determined (and before the node itself and its siblings are arranged). The scaling is not reverted afterwards, so the resulting layout graph contains the adjusted size and position data. This option is currently not supported if 'Layout Hierarchy' is set.\"),1),U5c),BI),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,xse),''),'Animate'),'Whether the shift from the old layout to the new computed layout shall be animated.'),true),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,yse),''),'Animation Time Factor'),\"Factor for computation of animation time. The higher the value, the longer the animation time. If the value is 0, the resulting time is always equal to the minimum defined by 'Minimal Animation Time'.\"),meb(100)),X5c),JI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,zse),''),'Layout Ancestors'),'Whether the hierarchy levels on the path from the selected element to the root of the diagram shall be included in the layout process.'),false),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Ase),''),'Maximal Animation Time'),'The maximal time for animations, in milliseconds.'),meb(4000)),X5c),JI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Bse),''),'Minimal Animation Time'),'The minimal time for animations, in milliseconds.'),meb(400)),X5c),JI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Cse),''),'Progress Bar'),'Whether a progress bar shall be displayed during layout computations.'),false),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Dse),''),'Validate Graph'),'Whether the graph shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user.'),false),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Ese),''),'Validate Options'),'Whether layout options shall be validated before any layout algorithm is applied. If this option is enabled and at least one error is found, the layout process is aborted and a message is shown to the user.'),true),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Fse),''),'Zoom to Fit'),'Whether the zoom level shall be set to view the whole diagram after layout.'),false),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,rse),'box'),'Box Layout Mode'),'Configures the packing mode used by the {@link BoxLayoutProvider}. If SIMPLE is not required (neither priorities are used nor the interactive mode), GROUP_DEC can improve the packing and decrease the area. GROUP_MIXED and GROUP_INC may, in very specific scenarios, work better.'),u8c),V5c),O1),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Lpe),zpe),'Comment Comment Spacing'),'Spacing to be preserved between a comment box and other comment boxes connected to the same node. The space left between comment boxes of different nodes is controlled by the node-node spacing.'),10),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Mpe),zpe),'Comment Node Spacing'),'Spacing to be preserved between a node and its connected comment boxes. The space left between a node and the comments of another node is controlled by the node-node spacing.'),10),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Zle),zpe),'Components Spacing'),\"Spacing to be preserved between pairs of connected components. This option is only relevant if 'separateConnectedComponents' is activated.\"),20),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Npe),zpe),'Edge Spacing'),'Spacing to be preserved between any two edges. Note that while this can somewhat easily be satisfied for the segments of orthogonally drawn edges, it is harder for general polylines or splines.'),10),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,xme),zpe),'Edge Label Spacing'),\"The minimal distance to be preserved between a label and the edge it is associated with. Note that the placement of a label is influenced by the 'edgelabels.placement' option.\"),2),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Ope),zpe),'Edge Node Spacing'),'Spacing to be preserved between nodes and edges.'),10),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Ppe),zpe),'Label Spacing'),'Determines the amount of space to be left between two labels of the same graph element.'),0),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Spe),zpe),'Label Node Spacing'),\"Spacing to be preserved between labels and the border of node they are associated with. Note that the placement of a label is influenced by the 'nodelabels.placement' option.\"),5),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Qpe),zpe),'Horizontal spacing between Label and Port'),\"Horizontal spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option.\"),1),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Rpe),zpe),'Vertical spacing between Label and Port'),\"Vertical spacing to be preserved between labels and the ports they are associated with. Note that the placement of a label is influenced by the 'portlabels.placement' option.\"),1),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,wme),zpe),'Node Spacing'),'The minimal distance to be preserved between each two nodes.'),20),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Tpe),zpe),'Node Self Loop Spacing'),'Spacing to be preserved between a node and its self loops.'),10),U5c),BI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Upe),zpe),'Port Spacing'),'Spacing between pairs of ports of the same node.'),10),U5c),BI),qqb(L5c,OC(GC(e1,1),Kie,175,0,[K5c])))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,Vpe),zpe),'Individual Spacing'),\"Allows to specify individual spacing values for graph elements that shall be different from the value specified for the element's parent.\"),Y5c),i2),qqb(K5c,OC(GC(e1,1),Kie,175,0,[I5c,M5c,J5c])))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,wqe),zpe),'Additional Port Space'),'Additional space around the sets of ports on each node side. For each side of a node, this option can reserve additional space before and after the ports on each side. For example, a top spacing of 20 makes sure that the first port on the western and eastern side is 20 units away from the northern border.'),W9c),Y5c),i1),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,tqe),Jse),'Layout Partition'),'Partition to which the node belongs. This requires Layout Partitioning to be active. Nodes with lower partition IDs will appear to the left of nodes with higher partition IDs (assuming a left-to-right layout direction).'),X5c),JI),qqb(L5c,OC(GC(e1,1),Kie,175,0,[K5c])))));o4c(a,tqe,sqe,k9c);t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,sqe),Jse),'Layout Partitioning'),'Whether to activate partitioned layout. This will allow to group nodes through the Layout Partition option. a pair of nodes with different partition indices is then placed such that the node with lower index is placed to the left of the other node (with left-to-right layout direction). Depending on the layout algorithm, this may only be guaranteed to work if all nodes have a layout partition configured, or at least if edges that cross partitions are not part of a partition-crossing cycle.'),i9c),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,dqe),Kse),'Node Label Padding'),'Define padding for node labels that are placed inside of a node.'),V8c),Y5c),j1),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Gme),Kse),'Node Label Placement'),\"Hints for where node labels are to be placed; if empty, the node label's position is not modified.\"),X8c),W5c),B1),qqb(K5c,OC(GC(e1,1),Kie,175,0,[J5c])))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,gqe),Lse),'Port Alignment'),'Defines the default port distribution for a node. May be overridden for each side individually.'),m9c),V5c),C1),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,hqe),Lse),'Port Alignment (North)'),\"Defines how ports on the northern side are placed, overriding the node's general port alignment.\"),V5c),C1),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,iqe),Lse),'Port Alignment (South)'),\"Defines how ports on the southern side are placed, overriding the node's general port alignment.\"),V5c),C1),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,jqe),Lse),'Port Alignment (West)'),\"Defines how ports on the western side are placed, overriding the node's general port alignment.\"),V5c),C1),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,kqe),Lse),'Port Alignment (East)'),\"Defines how ports on the eastern side are placed, overriding the node's general port alignment.\"),V5c),C1),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Fme),Mse),'Node Size Constraints'),\"What should be taken into account when calculating a node's size. Empty size constraints specify that a node's size is already fixed and should not be changed.\"),Z8c),W5c),I1),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Eme),Mse),'Node Size Options'),'Options modifying the behavior of the size constraints set on a node. Each member of the set specifies something that should be taken into account when calculating node sizes. The empty set corresponds to no further modifications.'),c9c),W5c),J1),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Tme),Mse),'Node Size Minimum'),'The minimal size to which a node can be reduced.'),a9c),Y5c),m1),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,bqe),Mse),'Fixed Graph Size'),\"By default, the fixed layout provider will enlarge a graph until it is large enough to contain its children. If this option is set, it won't do so.\"),false),T5c),wI),pqb(L5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,nqe),Jpe),'Edge Label Placement'),'Gives a hint on where to put edge labels.'),D8c),V5c),u1),pqb(J5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Cme),Jpe),'Inline Edge Labels'),\"If true, an edge label is placed directly on its edge. May only apply to center edge labels. This kind of label placement is only advisable if the label's rendering is such that it is not crossed by its edge and thus stays legible.\"),false),T5c),wI),pqb(J5c))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,Gse),'font'),'Font Name'),'Font name used for a label.'),Z5c),ZI),pqb(J5c))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,Hse),'font'),'Font Size'),'Font size used for a label.'),X5c),JI),pqb(J5c))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,rqe),Nse),'Port Anchor Offset'),'The offset to the port position where connections shall be attached.'),Y5c),m1),pqb(M5c))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,oqe),Nse),'Port Index'),\"The index of a port in the fixed order around a node. The order is assumed as clockwise, starting with the leftmost port on the top side. This option must be set if 'Port Constraints' is set to FIXED_ORDER and no specific positions are given for the ports. Additionally, the option 'Port Side' must be defined in this case.\"),X5c),JI),pqb(M5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Ype),Nse),'Port Side'),\"The side of a node on which a port is situated. This option must be set if 'Port Constraints' is set to FIXED_SIDE or FIXED_ORDER and no specific positions are given for the ports.\"),B9c),V5c),F1),pqb(M5c))));t4c(a,new p5c(F5c(E5c(G5c(z5c(D5c(A5c(B5c(new H5c,Wpe),Nse),'Port Border Offset'),\"The offset of ports on the node border. With a positive offset the port is moved outside of the node, while with a negative offset the port is moved towards the inside. An offset of 0 means that the port is placed directly on the node border, i.e. if the port side is north, the port's south border touches the nodes's north border; if the port side is east, the port's west border touches the nodes's east border; if the port side is south, the port's north border touches the node's south border; if the port side is west, the port's east border touches the node's west border.\"),U5c),BI),pqb(M5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Hme),Ose),'Port Label Placement'),\"Decides on a placement method for port labels; if empty, the node label's position is not modified.\"),y9c),W5c),E1),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,eqe),Ose),'Port Labels Next to Port'),\"Use 'portLabels.placement': NEXT_TO_PORT_OF_POSSIBLE.\"),false),T5c),wI),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,fqe),Ose),'Treat Port Labels as Group'),'If this option is true (default), the labels of a port will be treated as a group when it comes to centering them next to their port. If this option is false, only the first label will be centered next to the port, with the others being placed below. This only applies to labels of eastern and western ports and will have no effect if labels are not placed next to their port.'),true),T5c),wI),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,_pe),Pse),'Activate Inside Self Loops'),\"Whether this node allows to route self loops inside of it instead of around it. If set to true, this will make the node a compound node if it isn't already, and will require the layout algorithm to support compound nodes with hierarchical ports.\"),false),T5c),wI),pqb(K5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,aqe),Pse),'Inside Self Loop'),'Whether a self loop should be routed inside a node instead of around that node.'),false),T5c),wI),pqb(I5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,$le),'edge'),'Edge Thickness'),'The thickness of an edge. This is a hint on the line width used to draw an edge, possibly requiring more space to be reserved for it.'),1),U5c),BI),pqb(I5c))));t4c(a,new p5c(F5c(E5c(G5c(y5c(z5c(D5c(A5c(B5c(new H5c,Ise),'edge'),'Edge Type'),'The type of an edge. This is usually used for UML class diagrams, where associations must be handled differently from generalizations.'),H8c),V5c),w1),pqb(I5c))));s4c(a,new W3c(b4c(d4c(c4c(new e4c,sne),'Layered'),'The layer-based method was introduced by Sugiyama, Tagawa and Toda in 1981. It emphasizes the direction of edges by pointing as many edges as possible into the same direction. The nodes are arranged in layers, which are sometimes called \"hierarchies\", and then reordered such that the number of edge crossings is minimized. Afterwards, concrete coordinates are computed for the nodes and edge bend points.')));s4c(a,new W3c(b4c(d4c(c4c(new e4c,'org.eclipse.elk.orthogonal'),'Orthogonal'),'Orthogonal methods that follow the \"topology-shape-metrics\" approach by Batini, Nardelli and Tamassia \\'86. The first phase determines the topology of the drawing by applying a planarization technique, which results in a planar representation of the graph. The orthogonal shape is computed in the second phase, which aims at minimizing the number of edge bends, and is called orthogonalization. The third phase leads to concrete coordinates for nodes and edge bend points by applying a compaction method, thus defining the metrics.')));s4c(a,new W3c(b4c(d4c(c4c(new e4c,ume),'Force'),'Layout algorithms that follow physical analogies by simulating a system of attractive and repulsive forces. The first successful method of this kind was proposed by Eades in 1984.')));s4c(a,new W3c(b4c(d4c(c4c(new e4c,'org.eclipse.elk.circle'),'Circle'),'Circular layout algorithms emphasize cycles or biconnected components of a graph by arranging them in circles. This is useful if a drawing is desired where such components are clearly grouped, or where cycles are shown as prominent OPTIONS of the graph.')));s4c(a,new W3c(b4c(d4c(c4c(new e4c,bre),'Tree'),'Specialized layout methods for trees, i.e. acyclic graphs. The regular structure of graphs that have no undirected cycles can be emphasized using an algorithm of this type.')));s4c(a,new W3c(b4c(d4c(c4c(new e4c,'org.eclipse.elk.planar'),'Planar'),'Algorithms that require a planar or upward planar graph. Most of these algorithms are theoretically interesting, but not practically usable.')));s4c(a,new W3c(b4c(d4c(c4c(new e4c,sre),'Radial'),'Radial layout algorithms usually position the nodes of the graph on concentric circles.')));$ad((new _ad,a));Y7c((new Z7c,a));jdd((new kdd,a))};var o8c,p8c,q8c,r8c,s8c,t8c,u8c,v8c,w8c,x8c,y8c,z8c,A8c,B8c,C8c,D8c,E8c,F8c,G8c,H8c,I8c,J8c,K8c,L8c,M8c,N8c,O8c,P8c,Q8c,R8c,S8c,T8c,U8c,V8c,W8c,X8c,Y8c,Z8c,$8c,_8c,a9c,b9c,c9c,d9c,e9c,f9c,g9c,h9c,i9c,j9c,k9c,l9c,m9c,n9c,o9c,p9c,q9c,r9c,s9c,t9c,u9c,v9c,w9c,x9c,y9c,z9c,A9c,B9c,C9c,D9c,E9c,F9c,G9c,H9c,I9c,J9c,K9c,L9c,M9c,N9c,O9c,P9c,Q9c,R9c,S9c,T9c,U9c,V9c,W9c,X9c;var s1=mdb(ose,'CoreOptions',684);bcb(103,22,{3:1,35:1,22:1,103:1},iad);var _9c,aad,bad,cad,dad;var t1=ndb(ose,Cle,103,CI,kad,jad);var lad;bcb(272,22,{3:1,35:1,22:1,272:1},rad);var nad,oad,pad;var u1=ndb(ose,'EdgeLabelPlacement',272,CI,tad,sad);var uad;bcb(218,22,{3:1,35:1,22:1,218:1},Bad);var wad,xad,yad,zad;var v1=ndb(ose,'EdgeRouting',218,CI,Dad,Cad);var Ead;bcb(312,22,{3:1,35:1,22:1,312:1},Nad);var Gad,Had,Iad,Jad,Kad,Lad;var w1=ndb(ose,'EdgeType',312,CI,Pad,Oad);var Qad;bcb(977,1,ale,_ad);_.Qe=function abd(a){$ad(a)};var Sad,Tad,Uad,Vad,Wad,Xad,Yad;var y1=mdb(ose,'FixedLayouterOptions',977);bcb(978,1,{},bbd);_.$e=function cbd(){var a;return a=new Zfd,a};_._e=function dbd(a){};var x1=mdb(ose,'FixedLayouterOptions/FixedFactory',978);bcb(334,22,{3:1,35:1,22:1,334:1},ibd);var ebd,fbd,gbd;var z1=ndb(ose,'HierarchyHandling',334,CI,kbd,jbd);var lbd;bcb(285,22,{3:1,35:1,22:1,285:1},tbd);var nbd,obd,pbd,qbd;var A1=ndb(ose,'LabelSide',285,CI,vbd,ubd);var wbd;bcb(93,22,{3:1,35:1,22:1,93:1},Ibd);var ybd,zbd,Abd,Bbd,Cbd,Dbd,Ebd,Fbd,Gbd;var B1=ndb(ose,'NodeLabelPlacement',93,CI,Lbd,Kbd);var Mbd;bcb(249,22,{3:1,35:1,22:1,249:1},Ubd);var Obd,Pbd,Qbd,Rbd,Sbd;var C1=ndb(ose,'PortAlignment',249,CI,Wbd,Vbd);var Xbd;bcb(98,22,{3:1,35:1,22:1,98:1},gcd);var Zbd,$bd,_bd,acd,bcd,ccd;var D1=ndb(ose,'PortConstraints',98,CI,icd,hcd);var jcd;bcb(273,22,{3:1,35:1,22:1,273:1},scd);var lcd,mcd,ncd,ocd,pcd,qcd;var E1=ndb(ose,'PortLabelPlacement',273,CI,wcd,vcd);var xcd;bcb(61,22,{3:1,35:1,22:1,61:1},Ycd);var zcd,Acd,Bcd,Ccd,Dcd,Ecd,Fcd,Gcd,Hcd,Icd,Jcd,Kcd,Lcd,Mcd,Ncd,Ocd,Pcd,Qcd,Rcd,Scd,Tcd;var F1=ndb(ose,'PortSide',61,CI,_cd,$cd);var bdd;bcb(981,1,ale,kdd);_.Qe=function ldd(a){jdd(a)};var ddd,edd,fdd,gdd,hdd;var H1=mdb(ose,'RandomLayouterOptions',981);bcb(982,1,{},mdd);_.$e=function ndd(){var a;return a=new Mgd,a};_._e=function odd(a){};var G1=mdb(ose,'RandomLayouterOptions/RandomFactory',982);bcb(374,22,{3:1,35:1,22:1,374:1},udd);var pdd,qdd,rdd,sdd;var I1=ndb(ose,'SizeConstraint',374,CI,wdd,vdd);var xdd;bcb(259,22,{3:1,35:1,22:1,259:1},Jdd);var zdd,Add,Bdd,Cdd,Ddd,Edd,Fdd,Gdd,Hdd;var J1=ndb(ose,'SizeOptions',259,CI,Ldd,Kdd);var Mdd;bcb(370,1,{1949:1},Zdd);_.b=false;_.c=0;_.d=-1;_.e=null;_.f=null;_.g=-1;_.j=false;_.k=false;_.n=false;_.o=0;_.q=0;_.r=0;var L1=mdb(yqe,'BasicProgressMonitor',370);bcb(972,209,Mle,ged);_.Ze=function ked(a,b){var c,d,e,f,g,h,i,j,k;Odd(b,'Box layout',2);e=Gdb(ED(hkd(a,(X7c(),W7c))));f=BD(hkd(a,T7c),116);c=Ccb(DD(hkd(a,O7c)));d=Ccb(DD(hkd(a,P7c)));switch(BD(hkd(a,M7c),311).g){case 0:g=(h=new Tkb((!a.a&&(a.a=new cUd(E2,a,10,11)),a.a)),mmb(),Okb(h,new med(d)),h);i=rfd(a);j=ED(hkd(a,L7c));(j==null||(uCb(j),j)<=0)&&(j=1.3);k=ded(g,e,f,i.a,i.b,c,(uCb(j),j));Afd(a,k.a,k.b,false,true);break;default:eed(a,e,f,c);}Qdd(b)};var S1=mdb(yqe,'BoxLayoutProvider',972);bcb(973,1,Dke,med);_.ue=function ned(a,b){return led(this,BD(a,33),BD(b,33))};_.Fb=function oed(a){return this===a};_.ve=function ped(){return new tpb(this)};_.a=false;var M1=mdb(yqe,'BoxLayoutProvider/1',973);bcb(157,1,{157:1},wed,xed);_.Ib=function yed(){return this.c?_od(this.c):Fe(this.b)};var N1=mdb(yqe,'BoxLayoutProvider/Group',157);bcb(311,22,{3:1,35:1,22:1,311:1},Eed);var zed,Aed,Bed,Ced;var O1=ndb(yqe,'BoxLayoutProvider/PackingMode',311,CI,Ged,Fed);var Hed;bcb(974,1,Dke,Jed);_.ue=function Ked(a,b){return hed(BD(a,157),BD(b,157))};_.Fb=function Led(a){return this===a};_.ve=function Med(){return new tpb(this)};var P1=mdb(yqe,'BoxLayoutProvider/lambda$0$Type',974);bcb(975,1,Dke,Ned);_.ue=function Oed(a,b){return ied(BD(a,157),BD(b,157))};_.Fb=function Ped(a){return this===a};_.ve=function Qed(){return new tpb(this)};var Q1=mdb(yqe,'BoxLayoutProvider/lambda$1$Type',975);bcb(976,1,Dke,Red);_.ue=function Sed(a,b){return jed(BD(a,157),BD(b,157))};_.Fb=function Ted(a){return this===a};_.ve=function Ued(){return new tpb(this)};var R1=mdb(yqe,'BoxLayoutProvider/lambda$2$Type',976);bcb(1365,1,{831:1},Ved);_.qg=function Wed(a,b){return Vyc(),!JD(b,160)||h2c((Y1c(),X1c,BD(a,160)),b)};var T1=mdb(yqe,'ElkSpacings/AbstractSpacingsBuilder/lambda$0$Type',1365);bcb(1366,1,qie,Xed);_.td=function Yed(a){Yyc(this.a,BD(a,146))};var U1=mdb(yqe,'ElkSpacings/AbstractSpacingsBuilder/lambda$1$Type',1366);bcb(1367,1,qie,Zed);_.td=function $ed(a){BD(a,94);Vyc()};var V1=mdb(yqe,'ElkSpacings/AbstractSpacingsBuilder/lambda$2$Type',1367);bcb(1371,1,qie,_ed);_.td=function afd(a){Zyc(this.a,BD(a,94))};var W1=mdb(yqe,'ElkSpacings/AbstractSpacingsBuilder/lambda$3$Type',1371);bcb(1369,1,Oie,bfd);_.Mb=function cfd(a){return $yc(this.a,this.b,BD(a,146))};var X1=mdb(yqe,'ElkSpacings/AbstractSpacingsBuilder/lambda$4$Type',1369);bcb(1368,1,Oie,dfd);_.Mb=function efd(a){return azc(this.a,this.b,BD(a,831))};var Y1=mdb(yqe,'ElkSpacings/AbstractSpacingsBuilder/lambda$5$Type',1368);bcb(1370,1,qie,ffd);_.td=function gfd(a){_yc(this.a,this.b,BD(a,146))};var Z1=mdb(yqe,'ElkSpacings/AbstractSpacingsBuilder/lambda$6$Type',1370);bcb(935,1,{},Hfd);_.Kb=function Ifd(a){return Gfd(a)};_.Fb=function Jfd(a){return this===a};var _1=mdb(yqe,'ElkUtil/lambda$0$Type',935);bcb(936,1,qie,Kfd);_.td=function Lfd(a){ufd(this.a,this.b,BD(a,79))};_.a=0;_.b=0;var a2=mdb(yqe,'ElkUtil/lambda$1$Type',936);bcb(937,1,qie,Mfd);_.td=function Nfd(a){vfd(this.a,this.b,BD(a,202))};_.a=0;_.b=0;var b2=mdb(yqe,'ElkUtil/lambda$2$Type',937);bcb(938,1,qie,Ofd);_.td=function Pfd(a){wfd(this.a,this.b,BD(a,137))};_.a=0;_.b=0;var c2=mdb(yqe,'ElkUtil/lambda$3$Type',938);bcb(939,1,qie,Qfd);_.td=function Rfd(a){xfd(this.a,BD(a,469))};var d2=mdb(yqe,'ElkUtil/lambda$4$Type',939);bcb(342,1,{35:1,342:1},Tfd);_.wd=function Ufd(a){return Sfd(this,BD(a,236))};_.Fb=function Vfd(a){var b;if(JD(a,342)){b=BD(a,342);return this.a==b.a}return false};_.Hb=function Wfd(){return QD(this.a)};_.Ib=function Xfd(){return this.a+' (exclusive)'};_.a=0;var e2=mdb(yqe,'ExclusiveBounds/ExclusiveLowerBound',342);bcb(1138,209,Mle,Zfd);_.Ze=function $fd(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B;Odd(b,'Fixed Layout',1);f=BD(hkd(a,(Y9c(),E8c)),218);l=0;m=0;for(s=new Fyd((!a.a&&(a.a=new cUd(E2,a,10,11)),a.a));s.e!=s.i.gc();){q=BD(Dyd(s),33);B=BD(hkd(q,(Zad(),Yad)),8);if(B){bld(q,B.a,B.b);if(BD(hkd(q,Tad),174).Hc((tdd(),pdd))){n=BD(hkd(q,Vad),8);n.a>0&&n.b>0&&Afd(q,n.a,n.b,true,true)}}l=$wnd.Math.max(l,q.i+q.g);m=$wnd.Math.max(m,q.j+q.f);for(j=new Fyd((!q.n&&(q.n=new cUd(D2,q,1,7)),q.n));j.e!=j.i.gc();){h=BD(Dyd(j),137);B=BD(hkd(h,Yad),8);!!B&&bld(h,B.a,B.b);l=$wnd.Math.max(l,q.i+h.i+h.g);m=$wnd.Math.max(m,q.j+h.j+h.f)}for(v=new Fyd((!q.c&&(q.c=new cUd(F2,q,9,9)),q.c));v.e!=v.i.gc();){u=BD(Dyd(v),118);B=BD(hkd(u,Yad),8);!!B&&bld(u,B.a,B.b);w=q.i+u.i;A=q.j+u.j;l=$wnd.Math.max(l,w+u.g);m=$wnd.Math.max(m,A+u.f);for(i=new Fyd((!u.n&&(u.n=new cUd(D2,u,1,7)),u.n));i.e!=i.i.gc();){h=BD(Dyd(i),137);B=BD(hkd(h,Yad),8);!!B&&bld(h,B.a,B.b);l=$wnd.Math.max(l,w+h.i+h.g);m=$wnd.Math.max(m,A+h.j+h.f)}}for(e=new Sr(ur(_sd(q).a.Kc(),new Sq));Qr(e);){c=BD(Rr(e),79);k=Yfd(c);l=$wnd.Math.max(l,k.a);m=$wnd.Math.max(m,k.b)}for(d=new Sr(ur($sd(q).a.Kc(),new Sq));Qr(d);){c=BD(Rr(d),79);if(Xod(jtd(c))!=a){k=Yfd(c);l=$wnd.Math.max(l,k.a);m=$wnd.Math.max(m,k.b)}}}if(f==(Aad(),wad)){for(r=new Fyd((!a.a&&(a.a=new cUd(E2,a,10,11)),a.a));r.e!=r.i.gc();){q=BD(Dyd(r),33);for(d=new Sr(ur(_sd(q).a.Kc(),new Sq));Qr(d);){c=BD(Rr(d),79);g=pfd(c);g.b==0?jkd(c,Q8c,null):jkd(c,Q8c,g)}}}if(!Ccb(DD(hkd(a,(Zad(),Uad))))){t=BD(hkd(a,Wad),116);p=l+t.b+t.c;o=m+t.d+t.a;Afd(a,p,o,true,true)}Qdd(b)};var f2=mdb(yqe,'FixedLayoutProvider',1138);bcb(373,134,{3:1,414:1,373:1,94:1,134:1},_fd,agd);_.Jf=function dgd(b){var c,d,e,f,g,h,i,j,k;if(!b){return}try{j=mfb(b,';,;');for(g=j,h=0,i=g.length;h>16&aje|b^d<<16};_.Kc=function zgd(){return new Bgd(this)};_.Ib=function Agd(){return this.a==null&&this.b==null?'pair(null,null)':this.a==null?'pair(null,'+fcb(this.b)+')':this.b==null?'pair('+fcb(this.a)+',null)':'pair('+fcb(this.a)+','+fcb(this.b)+')'};var n2=mdb(yqe,'Pair',46);bcb(983,1,aie,Bgd);_.Nb=function Cgd(a){Rrb(this,a)};_.Ob=function Dgd(){return !this.c&&(!this.b&&this.a.a!=null||this.a.b!=null)};_.Pb=function Egd(){if(!this.c&&!this.b&&this.a.a!=null){this.b=true;return this.a.a}else if(!this.c&&this.a.b!=null){this.c=true;return this.a.b}throw vbb(new utb)};_.Qb=function Fgd(){this.c&&this.a.b!=null?(this.a.b=null):this.b&&this.a.a!=null&&(this.a.a=null);throw vbb(new Ydb)};_.b=false;_.c=false;var m2=mdb(yqe,'Pair/1',983);bcb(448,1,{448:1},Ggd);_.Fb=function Hgd(a){return wtb(this.a,BD(a,448).a)&&wtb(this.c,BD(a,448).c)&&wtb(this.d,BD(a,448).d)&&wtb(this.b,BD(a,448).b)};_.Hb=function Igd(){return Hlb(OC(GC(SI,1),Uhe,1,5,[this.a,this.c,this.d,this.b]))};_.Ib=function Jgd(){return '('+this.a+She+this.c+She+this.d+She+this.b+')'};var o2=mdb(yqe,'Quadruple',448);bcb(1126,209,Mle,Mgd);_.Ze=function Ngd(a,b){var c,d,e,f,g;Odd(b,'Random Layout',1);if((!a.a&&(a.a=new cUd(E2,a,10,11)),a.a).i==0){Qdd(b);return}f=BD(hkd(a,(idd(),gdd)),19);!!f&&f.a!=0?(e=new Hub(f.a)):(e=new Gub);c=Gdb(ED(hkd(a,ddd)));g=Gdb(ED(hkd(a,hdd)));d=BD(hkd(a,edd),116);Lgd(a,e,c,g,d);Qdd(b)};var p2=mdb(yqe,'RandomLayoutProvider',1126);var Ogd;bcb(553,1,{});_.qf=function Sgd(){return new f7c(this.f.i,this.f.j)};_.We=function Tgd(a){if(Jsd(a,(Y9c(),s9c))){return hkd(this.f,Qgd)}return hkd(this.f,a)};_.rf=function Ugd(){return new f7c(this.f.g,this.f.f)};_.sf=function Vgd(){return this.g};_.Xe=function Wgd(a){return ikd(this.f,a)};_.tf=function Xgd(a){dld(this.f,a.a);eld(this.f,a.b)};_.uf=function Ygd(a){cld(this.f,a.a);ald(this.f,a.b)};_.vf=function Zgd(a){this.g=a};_.g=0;var Qgd;var q2=mdb(Use,'ElkGraphAdapters/AbstractElkGraphElementAdapter',553);bcb(554,1,{839:1},$gd);_.wf=function _gd(){var a,b;if(!this.b){this.b=Qu(Kkd(this.a).i);for(b=new Fyd(Kkd(this.a));b.e!=b.i.gc();){a=BD(Dyd(b),137);Ekb(this.b,new dhd(a))}}return this.b};_.b=null;var r2=mdb(Use,'ElkGraphAdapters/ElkEdgeAdapter',554);bcb(301,553,{},bhd);_.xf=function chd(){return ahd(this)};_.a=null;var s2=mdb(Use,'ElkGraphAdapters/ElkGraphAdapter',301);bcb(630,553,{181:1},dhd);var t2=mdb(Use,'ElkGraphAdapters/ElkLabelAdapter',630);bcb(629,553,{680:1},hhd);_.wf=function khd(){return ehd(this)};_.Af=function lhd(){var a;return a=BD(hkd(this.f,(Y9c(),S8c)),142),!a&&(a=new H_b),a};_.Cf=function nhd(){return fhd(this)};_.Ef=function phd(a){var b;b=new K_b(a);jkd(this.f,(Y9c(),S8c),b)};_.Ff=function qhd(a){jkd(this.f,(Y9c(),f9c),new r0b(a))};_.yf=function ihd(){return this.d};_.zf=function jhd(){var a,b;if(!this.a){this.a=new Rkb;for(b=new Sr(ur($sd(BD(this.f,33)).a.Kc(),new Sq));Qr(b);){a=BD(Rr(b),79);Ekb(this.a,new $gd(a))}}return this.a};_.Bf=function mhd(){var a,b;if(!this.c){this.c=new Rkb;for(b=new Sr(ur(_sd(BD(this.f,33)).a.Kc(),new Sq));Qr(b);){a=BD(Rr(b),79);Ekb(this.c,new $gd(a))}}return this.c};_.Df=function ohd(){return Vod(BD(this.f,33)).i!=0||Ccb(DD(BD(this.f,33).We((Y9c(),M8c))))};_.Gf=function rhd(){ghd(this,(Pgd(),Ogd))};_.a=null;_.b=null;_.c=null;_.d=null;_.e=null;var u2=mdb(Use,'ElkGraphAdapters/ElkNodeAdapter',629);bcb(1266,553,{838:1},thd);_.wf=function vhd(){return shd(this)};_.zf=function uhd(){var a,b;if(!this.a){this.a=Pu(BD(this.f,118).xg().i);for(b=new Fyd(BD(this.f,118).xg());b.e!=b.i.gc();){a=BD(Dyd(b),79);Ekb(this.a,new $gd(a))}}return this.a};_.Bf=function whd(){var a,b;if(!this.c){this.c=Pu(BD(this.f,118).yg().i);for(b=new Fyd(BD(this.f,118).yg());b.e!=b.i.gc();){a=BD(Dyd(b),79);Ekb(this.c,new $gd(a))}}return this.c};_.Hf=function xhd(){return BD(BD(this.f,118).We((Y9c(),A9c)),61)};_.If=function yhd(){var a,b,c,d,e,f,g,h;d=mpd(BD(this.f,118));for(c=new Fyd(BD(this.f,118).yg());c.e!=c.i.gc();){a=BD(Dyd(c),79);for(h=new Fyd((!a.c&&(a.c=new y5d(z2,a,5,8)),a.c));h.e!=h.i.gc();){g=BD(Dyd(h),82);if(ntd(atd(g),d)){return true}else if(atd(g)==d&&Ccb(DD(hkd(a,(Y9c(),N8c))))){return true}}}for(b=new Fyd(BD(this.f,118).xg());b.e!=b.i.gc();){a=BD(Dyd(b),79);for(f=new Fyd((!a.b&&(a.b=new y5d(z2,a,4,7)),a.b));f.e!=f.i.gc();){e=BD(Dyd(f),82);if(ntd(atd(e),d)){return true}}}return false};_.a=null;_.b=null;_.c=null;var v2=mdb(Use,'ElkGraphAdapters/ElkPortAdapter',1266);bcb(1267,1,Dke,Ahd);_.ue=function Bhd(a,b){return zhd(BD(a,118),BD(b,118))};_.Fb=function Chd(a){return this===a};_.ve=function Dhd(){return new tpb(this)};var w2=mdb(Use,'ElkGraphAdapters/PortComparator',1267);var m5=odb(Vse,'EObject');var x2=odb(Wse,Xse);var y2=odb(Wse,Yse);var C2=odb(Wse,Zse);var G2=odb(Wse,'ElkShape');var z2=odb(Wse,$se);var B2=odb(Wse,_se);var A2=odb(Wse,ate);var k5=odb(Vse,bte);var i5=odb(Vse,'EFactory');var Ehd;var l5=odb(Vse,cte);var o5=odb(Vse,'EPackage');var Ghd;var Ihd,Jhd,Khd,Lhd,Mhd,Nhd,Ohd,Phd,Qhd,Rhd,Shd;var D2=odb(Wse,dte);var E2=odb(Wse,ete);var F2=odb(Wse,fte);bcb(90,1,gte);_.Jg=function Vhd(){this.Kg();return null};_.Kg=function Whd(){return null};_.Lg=function Xhd(){return this.Kg(),false};_.Mg=function Yhd(){return false};_.Ng=function Zhd(a){Uhd(this,a)};var b4=mdb(hte,'BasicNotifierImpl',90);bcb(97,90,pte);_.nh=function fjd(){return oid(this)};_.Og=function Fid(a,b){return a};_.Pg=function Gid(){throw vbb(new bgb)};_.Qg=function Hid(a){var b;return b=zUd(BD(XKd(this.Tg(),this.Vg()),18)),this.eh().ih(this,b.n,b.f,a)};_.Rg=function Iid(a,b){throw vbb(new bgb)};_.Sg=function Jid(a,b,c){return _hd(this,a,b,c)};_.Tg=function Kid(){var a;if(this.Pg()){a=this.Pg().ck();if(a){return a}}return this.zh()};_.Ug=function Lid(){return aid(this)};_.Vg=function Mid(){throw vbb(new bgb)};_.Wg=function Oid(){var a,b;b=this.ph().dk();!b&&this.Pg().ik(b=(nRd(),a=pNd(TKd(this.Tg())),a==null?mRd:new qRd(this,a)));return b};_.Xg=function Qid(a,b){return a};_.Yg=function Rid(a){var b;b=a.Gj();return !b?bLd(this.Tg(),a):a.aj()};_.Zg=function Sid(){var a;a=this.Pg();return !a?null:a.fk()};_.$g=function Tid(){return !this.Pg()?null:this.Pg().ck()};_._g=function Uid(a,b,c){return fid(this,a,b,c)};_.ah=function Vid(a){return gid(this,a)};_.bh=function Wid(a,b){return hid(this,a,b)};_.dh=function Xid(){var a;a=this.Pg();return !!a&&a.gk()};_.eh=function Yid(){throw vbb(new bgb)};_.fh=function Zid(){return jid(this)};_.gh=function $id(a,b,c,d){return kid(this,a,b,d)};_.hh=function _id(a,b,c){var d;return d=BD(XKd(this.Tg(),b),66),d.Nj().Qj(this,this.yh(),b-this.Ah(),a,c)};_.ih=function ajd(a,b,c,d){return lid(this,a,b,d)};_.jh=function bjd(a,b,c){var d;return d=BD(XKd(this.Tg(),b),66),d.Nj().Rj(this,this.yh(),b-this.Ah(),a,c)};_.kh=function cjd(){return !!this.Pg()&&!!this.Pg().ek()};_.lh=function djd(a){return mid(this,a)};_.mh=function ejd(a){return nid(this,a)};_.oh=function gjd(a){return rid(this,a)};_.ph=function hjd(){throw vbb(new bgb)};_.qh=function ijd(){return !this.Pg()?null:this.Pg().ek()};_.rh=function jjd(){return jid(this)};_.sh=function kjd(a,b){yid(this,a,b)};_.th=function ljd(a){this.ph().hk(a)};_.uh=function mjd(a){this.ph().kk(a)};_.vh=function njd(a){this.ph().jk(a)};_.wh=function ojd(a,b){var c,d,e,f;f=this.Zg();if(!!f&&!!a){b=Txd(f.Vk(),this,b);f.Zk(this)}d=this.eh();if(d){if((Nid(this,this.eh(),this.Vg()).Bb&Tje)!=0){e=d.fh();!!e&&(!a?e.Yk(this):!f&&e.Zk(this))}else{b=(c=this.Vg(),c>=0?this.Qg(b):this.eh().ih(this,-1-c,null,b));b=this.Sg(null,-1,b)}}this.uh(a);return b};_.xh=function pjd(a){var b,c,d,e,f,g,h,i;c=this.Tg();f=bLd(c,a);b=this.Ah();if(f>=b){return BD(a,66).Nj().Uj(this,this.yh(),f-b)}else if(f<=-1){g=e1d((O6d(),M6d),c,a);if(g){Q6d();BD(g,66).Oj()||(g=_1d(q1d(M6d,g)));e=(d=this.Yg(g),BD(d>=0?this._g(d,true,true):sid(this,g,true),153));i=g.Zj();if(i>1||i==-1){return BD(BD(e,215).hl(a,false),76)}}else{throw vbb(new Wdb(ite+a.ne()+lte))}}else if(a.$j()){return d=this.Yg(a),BD(d>=0?this._g(d,false,true):sid(this,a,false),76)}h=new nGd(this,a);return h};_.yh=function qjd(){return Aid(this)};_.zh=function rjd(){return (NFd(),MFd).S};_.Ah=function sjd(){return aLd(this.zh())};_.Bh=function tjd(a){Cid(this,a)};_.Ib=function ujd(){return Eid(this)};var B5=mdb(qte,'BasicEObjectImpl',97);var zFd;bcb(114,97,{105:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1});_.Ch=function Djd(a){var b;b=xjd(this);return b[a]};_.Dh=function Ejd(a,b){var c;c=xjd(this);NC(c,a,b)};_.Eh=function Fjd(a){var b;b=xjd(this);NC(b,a,null)};_.Jg=function Gjd(){return BD(Ajd(this,4),126)};_.Kg=function Hjd(){throw vbb(new bgb)};_.Lg=function Ijd(){return (this.Db&4)!=0};_.Pg=function Jjd(){throw vbb(new bgb)};_.Fh=function Kjd(a){Cjd(this,2,a)};_.Rg=function Ljd(a,b){this.Db=b<<16|this.Db&255;this.Fh(a)};_.Tg=function Mjd(){return wjd(this)};_.Vg=function Njd(){return this.Db>>16};_.Wg=function Ojd(){var a,b;return nRd(),b=pNd(TKd((a=BD(Ajd(this,16),26),!a?this.zh():a))),b==null?(null,mRd):new qRd(this,b)};_.Mg=function Pjd(){return (this.Db&1)==0};_.Zg=function Qjd(){return BD(Ajd(this,128),1935)};_.$g=function Rjd(){return BD(Ajd(this,16),26)};_.dh=function Sjd(){return (this.Db&32)!=0};_.eh=function Tjd(){return BD(Ajd(this,2),49)};_.kh=function Ujd(){return (this.Db&64)!=0};_.ph=function Vjd(){throw vbb(new bgb)};_.qh=function Wjd(){return BD(Ajd(this,64),281)};_.th=function Xjd(a){Cjd(this,16,a)};_.uh=function Yjd(a){Cjd(this,128,a)};_.vh=function Zjd(a){Cjd(this,64,a)};_.yh=function $jd(){return yjd(this)};_.Db=0;var s8=mdb(qte,'MinimalEObjectImpl',114);bcb(115,114,{105:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1});_.Fh=function _jd(a){this.Cb=a};_.eh=function akd(){return this.Cb};var r8=mdb(qte,'MinimalEObjectImpl/Container',115);bcb(1985,115,{105:1,413:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1});_._g=function kkd(a,b,c){return bkd(this,a,b,c)};_.jh=function lkd(a,b,c){return ckd(this,a,b,c)};_.lh=function mkd(a){return dkd(this,a)};_.sh=function nkd(a,b){ekd(this,a,b)};_.zh=function okd(){return Thd(),Shd};_.Bh=function pkd(a){fkd(this,a)};_.Ve=function qkd(){return gkd(this)};_.We=function rkd(a){return hkd(this,a)};_.Xe=function skd(a){return ikd(this,a)};_.Ye=function tkd(a,b){return jkd(this,a,b)};var H2=mdb(rte,'EMapPropertyHolderImpl',1985);bcb(567,115,{105:1,469:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},xkd);_._g=function ykd(a,b,c){switch(a){case 0:return this.a;case 1:return this.b;}return fid(this,a,b,c)};_.lh=function zkd(a){switch(a){case 0:return this.a!=0;case 1:return this.b!=0;}return mid(this,a)};_.sh=function Akd(a,b){switch(a){case 0:vkd(this,Edb(ED(b)));return;case 1:wkd(this,Edb(ED(b)));return;}yid(this,a,b)};_.zh=function Bkd(){return Thd(),Ihd};_.Bh=function Ckd(a){switch(a){case 0:vkd(this,0);return;case 1:wkd(this,0);return;}Cid(this,a)};_.Ib=function Dkd(){var a;if((this.Db&64)!=0)return Eid(this);a=new Jfb(Eid(this));a.a+=' (x: ';Bfb(a,this.a);a.a+=', y: ';Bfb(a,this.b);a.a+=')';return a.a};_.a=0;_.b=0;var I2=mdb(rte,'ElkBendPointImpl',567);bcb(723,1985,{105:1,413:1,160:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1});_._g=function Nkd(a,b,c){return Ekd(this,a,b,c)};_.hh=function Okd(a,b,c){return Fkd(this,a,b,c)};_.jh=function Pkd(a,b,c){return Gkd(this,a,b,c)};_.lh=function Qkd(a){return Hkd(this,a)};_.sh=function Rkd(a,b){Ikd(this,a,b)};_.zh=function Skd(){return Thd(),Mhd};_.Bh=function Tkd(a){Jkd(this,a)};_.zg=function Ukd(){return this.k};_.Ag=function Vkd(){return Kkd(this)};_.Ib=function Wkd(){return Mkd(this)};_.k=null;var M2=mdb(rte,'ElkGraphElementImpl',723);bcb(724,723,{105:1,413:1,160:1,470:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1});_._g=function gld(a,b,c){return Xkd(this,a,b,c)};_.lh=function hld(a){return Ykd(this,a)};_.sh=function ild(a,b){Zkd(this,a,b)};_.zh=function jld(){return Thd(),Rhd};_.Bh=function kld(a){$kd(this,a)};_.Bg=function lld(){return this.f};_.Cg=function mld(){return this.g};_.Dg=function nld(){return this.i};_.Eg=function old(){return this.j};_.Fg=function pld(a,b){_kd(this,a,b)};_.Gg=function qld(a,b){bld(this,a,b)};_.Hg=function rld(a){dld(this,a)};_.Ig=function sld(a){eld(this,a)};_.Ib=function tld(){return fld(this)};_.f=0;_.g=0;_.i=0;_.j=0;var T2=mdb(rte,'ElkShapeImpl',724);bcb(725,724,{105:1,413:1,82:1,160:1,470:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1});_._g=function Bld(a,b,c){return uld(this,a,b,c)};_.hh=function Cld(a,b,c){return vld(this,a,b,c)};_.jh=function Dld(a,b,c){return wld(this,a,b,c)};_.lh=function Eld(a){return xld(this,a)};_.sh=function Fld(a,b){yld(this,a,b)};_.zh=function Gld(){return Thd(),Jhd};_.Bh=function Hld(a){zld(this,a)};_.xg=function Ild(){return !this.d&&(this.d=new y5d(B2,this,8,5)),this.d};_.yg=function Jld(){return !this.e&&(this.e=new y5d(B2,this,7,4)),this.e};var J2=mdb(rte,'ElkConnectableShapeImpl',725);bcb(352,723,{105:1,413:1,79:1,160:1,352:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},Tld);_.Qg=function Uld(a){return Lld(this,a)};_._g=function Vld(a,b,c){switch(a){case 3:return Mld(this);case 4:return !this.b&&(this.b=new y5d(z2,this,4,7)),this.b;case 5:return !this.c&&(this.c=new y5d(z2,this,5,8)),this.c;case 6:return !this.a&&(this.a=new cUd(A2,this,6,6)),this.a;case 7:return Bcb(),!this.b&&(this.b=new y5d(z2,this,4,7)),this.b.i<=1&&(!this.c&&(this.c=new y5d(z2,this,5,8)),this.c.i<=1)?false:true;case 8:return Bcb(),Pld(this)?true:false;case 9:return Bcb(),Qld(this)?true:false;case 10:return Bcb(),!this.b&&(this.b=new y5d(z2,this,4,7)),this.b.i!=0&&(!this.c&&(this.c=new y5d(z2,this,5,8)),this.c.i!=0)?true:false;}return Ekd(this,a,b,c)};_.hh=function Wld(a,b,c){var d;switch(b){case 3:!!this.Cb&&(c=(d=this.Db>>16,d>=0?Lld(this,c):this.Cb.ih(this,-1-d,null,c)));return Kld(this,BD(a,33),c);case 4:return !this.b&&(this.b=new y5d(z2,this,4,7)),Sxd(this.b,a,c);case 5:return !this.c&&(this.c=new y5d(z2,this,5,8)),Sxd(this.c,a,c);case 6:return !this.a&&(this.a=new cUd(A2,this,6,6)),Sxd(this.a,a,c);}return Fkd(this,a,b,c)};_.jh=function Xld(a,b,c){switch(b){case 3:return Kld(this,null,c);case 4:return !this.b&&(this.b=new y5d(z2,this,4,7)),Txd(this.b,a,c);case 5:return !this.c&&(this.c=new y5d(z2,this,5,8)),Txd(this.c,a,c);case 6:return !this.a&&(this.a=new cUd(A2,this,6,6)),Txd(this.a,a,c);}return Gkd(this,a,b,c)};_.lh=function Yld(a){switch(a){case 3:return !!Mld(this);case 4:return !!this.b&&this.b.i!=0;case 5:return !!this.c&&this.c.i!=0;case 6:return !!this.a&&this.a.i!=0;case 7:return !this.b&&(this.b=new y5d(z2,this,4,7)),!(this.b.i<=1&&(!this.c&&(this.c=new y5d(z2,this,5,8)),this.c.i<=1));case 8:return Pld(this);case 9:return Qld(this);case 10:return !this.b&&(this.b=new y5d(z2,this,4,7)),this.b.i!=0&&(!this.c&&(this.c=new y5d(z2,this,5,8)),this.c.i!=0);}return Hkd(this,a)};_.sh=function Zld(a,b){switch(a){case 3:Rld(this,BD(b,33));return;case 4:!this.b&&(this.b=new y5d(z2,this,4,7));Uxd(this.b);!this.b&&(this.b=new y5d(z2,this,4,7));ytd(this.b,BD(b,14));return;case 5:!this.c&&(this.c=new y5d(z2,this,5,8));Uxd(this.c);!this.c&&(this.c=new y5d(z2,this,5,8));ytd(this.c,BD(b,14));return;case 6:!this.a&&(this.a=new cUd(A2,this,6,6));Uxd(this.a);!this.a&&(this.a=new cUd(A2,this,6,6));ytd(this.a,BD(b,14));return;}Ikd(this,a,b)};_.zh=function $ld(){return Thd(),Khd};_.Bh=function _ld(a){switch(a){case 3:Rld(this,null);return;case 4:!this.b&&(this.b=new y5d(z2,this,4,7));Uxd(this.b);return;case 5:!this.c&&(this.c=new y5d(z2,this,5,8));Uxd(this.c);return;case 6:!this.a&&(this.a=new cUd(A2,this,6,6));Uxd(this.a);return;}Jkd(this,a)};_.Ib=function amd(){return Sld(this)};var K2=mdb(rte,'ElkEdgeImpl',352);bcb(439,1985,{105:1,413:1,202:1,439:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},rmd);_.Qg=function smd(a){return cmd(this,a)};_._g=function tmd(a,b,c){switch(a){case 1:return this.j;case 2:return this.k;case 3:return this.b;case 4:return this.c;case 5:return !this.a&&(this.a=new xMd(y2,this,5)),this.a;case 6:return fmd(this);case 7:if(b)return emd(this);return this.i;case 8:if(b)return dmd(this);return this.f;case 9:return !this.g&&(this.g=new y5d(A2,this,9,10)),this.g;case 10:return !this.e&&(this.e=new y5d(A2,this,10,9)),this.e;case 11:return this.d;}return bkd(this,a,b,c)};_.hh=function umd(a,b,c){var d,e,f;switch(b){case 6:!!this.Cb&&(c=(e=this.Db>>16,e>=0?cmd(this,c):this.Cb.ih(this,-1-e,null,c)));return bmd(this,BD(a,79),c);case 9:return !this.g&&(this.g=new y5d(A2,this,9,10)),Sxd(this.g,a,c);case 10:return !this.e&&(this.e=new y5d(A2,this,10,9)),Sxd(this.e,a,c);}return f=BD(XKd((d=BD(Ajd(this,16),26),!d?(Thd(),Lhd):d),b),66),f.Nj().Qj(this,yjd(this),b-aLd((Thd(),Lhd)),a,c)};_.jh=function vmd(a,b,c){switch(b){case 5:return !this.a&&(this.a=new xMd(y2,this,5)),Txd(this.a,a,c);case 6:return bmd(this,null,c);case 9:return !this.g&&(this.g=new y5d(A2,this,9,10)),Txd(this.g,a,c);case 10:return !this.e&&(this.e=new y5d(A2,this,10,9)),Txd(this.e,a,c);}return ckd(this,a,b,c)};_.lh=function wmd(a){switch(a){case 1:return this.j!=0;case 2:return this.k!=0;case 3:return this.b!=0;case 4:return this.c!=0;case 5:return !!this.a&&this.a.i!=0;case 6:return !!fmd(this);case 7:return !!this.i;case 8:return !!this.f;case 9:return !!this.g&&this.g.i!=0;case 10:return !!this.e&&this.e.i!=0;case 11:return this.d!=null;}return dkd(this,a)};_.sh=function xmd(a,b){switch(a){case 1:omd(this,Edb(ED(b)));return;case 2:pmd(this,Edb(ED(b)));return;case 3:hmd(this,Edb(ED(b)));return;case 4:imd(this,Edb(ED(b)));return;case 5:!this.a&&(this.a=new xMd(y2,this,5));Uxd(this.a);!this.a&&(this.a=new xMd(y2,this,5));ytd(this.a,BD(b,14));return;case 6:mmd(this,BD(b,79));return;case 7:lmd(this,BD(b,82));return;case 8:kmd(this,BD(b,82));return;case 9:!this.g&&(this.g=new y5d(A2,this,9,10));Uxd(this.g);!this.g&&(this.g=new y5d(A2,this,9,10));ytd(this.g,BD(b,14));return;case 10:!this.e&&(this.e=new y5d(A2,this,10,9));Uxd(this.e);!this.e&&(this.e=new y5d(A2,this,10,9));ytd(this.e,BD(b,14));return;case 11:jmd(this,GD(b));return;}ekd(this,a,b)};_.zh=function ymd(){return Thd(),Lhd};_.Bh=function zmd(a){switch(a){case 1:omd(this,0);return;case 2:pmd(this,0);return;case 3:hmd(this,0);return;case 4:imd(this,0);return;case 5:!this.a&&(this.a=new xMd(y2,this,5));Uxd(this.a);return;case 6:mmd(this,null);return;case 7:lmd(this,null);return;case 8:kmd(this,null);return;case 9:!this.g&&(this.g=new y5d(A2,this,9,10));Uxd(this.g);return;case 10:!this.e&&(this.e=new y5d(A2,this,10,9));Uxd(this.e);return;case 11:jmd(this,null);return;}fkd(this,a)};_.Ib=function Amd(){return qmd(this)};_.b=0;_.c=0;_.d=null;_.j=0;_.k=0;var L2=mdb(rte,'ElkEdgeSectionImpl',439);bcb(150,115,{105:1,92:1,90:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1});_._g=function Emd(a,b,c){var d;if(a==0){return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),this.Ab}return bid(this,a-aLd(this.zh()),XKd((d=BD(Ajd(this,16),26),!d?this.zh():d),a),b,c)};_.hh=function Fmd(a,b,c){var d,e;if(b==0){return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Sxd(this.Ab,a,c)}return e=BD(XKd((d=BD(Ajd(this,16),26),!d?this.zh():d),b),66),e.Nj().Qj(this,yjd(this),b-aLd(this.zh()),a,c)};_.jh=function Gmd(a,b,c){var d,e;if(b==0){return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Txd(this.Ab,a,c)}return e=BD(XKd((d=BD(Ajd(this,16),26),!d?this.zh():d),b),66),e.Nj().Rj(this,yjd(this),b-aLd(this.zh()),a,c)};_.lh=function Hmd(a){var b;if(a==0){return !!this.Ab&&this.Ab.i!=0}return cid(this,a-aLd(this.zh()),XKd((b=BD(Ajd(this,16),26),!b?this.zh():b),a))};_.oh=function Imd(a){return Bmd(this,a)};_.sh=function Jmd(a,b){var c;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);!this.Ab&&(this.Ab=new cUd(a5,this,0,3));ytd(this.Ab,BD(b,14));return;}did(this,a-aLd(this.zh()),XKd((c=BD(Ajd(this,16),26),!c?this.zh():c),a),b)};_.uh=function Kmd(a){Cjd(this,128,a)};_.zh=function Lmd(){return jGd(),ZFd};_.Bh=function Mmd(a){var b;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);return;}eid(this,a-aLd(this.zh()),XKd((b=BD(Ajd(this,16),26),!b?this.zh():b),a))};_.Gh=function Nmd(){this.Bb|=1};_.Hh=function Omd(a){return Dmd(this,a)};_.Bb=0;var f6=mdb(qte,'EModelElementImpl',150);bcb(704,150,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1},$md);_.Ih=function _md(a,b){return Vmd(this,a,b)};_.Jh=function and(a){var b,c,d,e,f;if(this.a!=bKd(a)||(a.Bb&256)!=0){throw vbb(new Wdb(xte+a.zb+ute))}for(d=_Kd(a);VKd(d.a).i!=0;){c=BD(nOd(d,0,(b=BD(qud(VKd(d.a),0),87),f=b.c,JD(f,88)?BD(f,26):(jGd(),_Fd))),26);if(dKd(c)){e=bKd(c).Nh().Jh(c);BD(e,49).th(a);return e}d=_Kd(c)}return (a.D!=null?a.D:a.B)=='java.util.Map$Entry'?new lHd(a):new _Gd(a)};_.Kh=function bnd(a,b){return Wmd(this,a,b)};_._g=function cnd(a,b,c){var d;switch(a){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),this.Ab;case 1:return this.a;}return bid(this,a-aLd((jGd(),WFd)),XKd((d=BD(Ajd(this,16),26),!d?WFd:d),a),b,c)};_.hh=function dnd(a,b,c){var d,e;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Sxd(this.Ab,a,c);case 1:!!this.a&&(c=BD(this.a,49).ih(this,4,o5,c));return Tmd(this,BD(a,235),c);}return e=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),WFd):d),b),66),e.Nj().Qj(this,yjd(this),b-aLd((jGd(),WFd)),a,c)};_.jh=function end(a,b,c){var d,e;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Txd(this.Ab,a,c);case 1:return Tmd(this,null,c);}return e=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),WFd):d),b),66),e.Nj().Rj(this,yjd(this),b-aLd((jGd(),WFd)),a,c)};_.lh=function fnd(a){var b;switch(a){case 0:return !!this.Ab&&this.Ab.i!=0;case 1:return !!this.a;}return cid(this,a-aLd((jGd(),WFd)),XKd((b=BD(Ajd(this,16),26),!b?WFd:b),a))};_.sh=function gnd(a,b){var c;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);!this.Ab&&(this.Ab=new cUd(a5,this,0,3));ytd(this.Ab,BD(b,14));return;case 1:Ymd(this,BD(b,235));return;}did(this,a-aLd((jGd(),WFd)),XKd((c=BD(Ajd(this,16),26),!c?WFd:c),a),b)};_.zh=function hnd(){return jGd(),WFd};_.Bh=function ind(a){var b;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);return;case 1:Ymd(this,null);return;}eid(this,a-aLd((jGd(),WFd)),XKd((b=BD(Ajd(this,16),26),!b?WFd:b),a))};var Pmd,Qmd,Rmd;var d6=mdb(qte,'EFactoryImpl',704);bcb(zte,704,{105:1,2014:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1},knd);_.Ih=function lnd(a,b){switch(a.yj()){case 12:return BD(b,146).tg();case 13:return fcb(b);default:throw vbb(new Wdb(tte+a.ne()+ute));}};_.Jh=function mnd(a){var b,c,d,e,f,g,h,i;switch(a.G==-1&&(a.G=(b=bKd(a),b?HLd(b.Mh(),a):-1)),a.G){case 4:return f=new Jod,f;case 6:return g=new apd,g;case 7:return h=new ppd,h;case 8:return d=new Tld,d;case 9:return c=new xkd,c;case 10:return e=new rmd,e;case 11:return i=new Bpd,i;default:throw vbb(new Wdb(xte+a.zb+ute));}};_.Kh=function nnd(a,b){switch(a.yj()){case 13:case 12:return null;default:throw vbb(new Wdb(tte+a.ne()+ute));}};var N2=mdb(rte,'ElkGraphFactoryImpl',zte);bcb(438,150,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1});_.Wg=function rnd(){var a,b;b=(a=BD(Ajd(this,16),26),pNd(TKd(!a?this.zh():a)));return b==null?(nRd(),nRd(),mRd):new GRd(this,b)};_._g=function snd(a,b,c){var d;switch(a){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),this.Ab;case 1:return this.ne();}return bid(this,a-aLd(this.zh()),XKd((d=BD(Ajd(this,16),26),!d?this.zh():d),a),b,c)};_.lh=function tnd(a){var b;switch(a){case 0:return !!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;}return cid(this,a-aLd(this.zh()),XKd((b=BD(Ajd(this,16),26),!b?this.zh():b),a))};_.sh=function und(a,b){var c;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);!this.Ab&&(this.Ab=new cUd(a5,this,0,3));ytd(this.Ab,BD(b,14));return;case 1:this.Lh(GD(b));return;}did(this,a-aLd(this.zh()),XKd((c=BD(Ajd(this,16),26),!c?this.zh():c),a),b)};_.zh=function vnd(){return jGd(),$Fd};_.Bh=function wnd(a){var b;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);return;case 1:this.Lh(null);return;}eid(this,a-aLd(this.zh()),XKd((b=BD(Ajd(this,16),26),!b?this.zh():b),a))};_.ne=function xnd(){return this.zb};_.Lh=function ynd(a){pnd(this,a)};_.Ib=function znd(){return qnd(this)};_.zb=null;var j6=mdb(qte,'ENamedElementImpl',438);bcb(179,438,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1},eod);_.Qg=function god(a){return Snd(this,a)};_._g=function hod(a,b,c){var d;switch(a){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.yb;case 3:return this.xb;case 4:return this.sb;case 5:return !this.rb&&(this.rb=new jUd(this,d5,this)),this.rb;case 6:return !this.vb&&(this.vb=new gUd(o5,this,6,7)),this.vb;case 7:if(b)return this.Db>>16==7?BD(this.Cb,235):null;return Ind(this);}return bid(this,a-aLd((jGd(),cGd)),XKd((d=BD(Ajd(this,16),26),!d?cGd:d),a),b,c)};_.hh=function iod(a,b,c){var d,e,f;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Sxd(this.Ab,a,c);case 4:!!this.sb&&(c=BD(this.sb,49).ih(this,1,i5,c));return Jnd(this,BD(a,471),c);case 5:return !this.rb&&(this.rb=new jUd(this,d5,this)),Sxd(this.rb,a,c);case 6:return !this.vb&&(this.vb=new gUd(o5,this,6,7)),Sxd(this.vb,a,c);case 7:!!this.Cb&&(c=(e=this.Db>>16,e>=0?Snd(this,c):this.Cb.ih(this,-1-e,null,c)));return _hd(this,a,7,c);}return f=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),cGd):d),b),66),f.Nj().Qj(this,yjd(this),b-aLd((jGd(),cGd)),a,c)};_.jh=function jod(a,b,c){var d,e;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Txd(this.Ab,a,c);case 4:return Jnd(this,null,c);case 5:return !this.rb&&(this.rb=new jUd(this,d5,this)),Txd(this.rb,a,c);case 6:return !this.vb&&(this.vb=new gUd(o5,this,6,7)),Txd(this.vb,a,c);case 7:return _hd(this,null,7,c);}return e=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),cGd):d),b),66),e.Nj().Rj(this,yjd(this),b-aLd((jGd(),cGd)),a,c)};_.lh=function kod(a){var b;switch(a){case 0:return !!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.yb!=null;case 3:return this.xb!=null;case 4:return !!this.sb;case 5:return !!this.rb&&this.rb.i!=0;case 6:return !!this.vb&&this.vb.i!=0;case 7:return !!Ind(this);}return cid(this,a-aLd((jGd(),cGd)),XKd((b=BD(Ajd(this,16),26),!b?cGd:b),a))};_.oh=function lod(a){var b;b=Und(this,a);return b?b:Bmd(this,a)};_.sh=function mod(a,b){var c;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);!this.Ab&&(this.Ab=new cUd(a5,this,0,3));ytd(this.Ab,BD(b,14));return;case 1:pnd(this,GD(b));return;case 2:dod(this,GD(b));return;case 3:cod(this,GD(b));return;case 4:bod(this,BD(b,471));return;case 5:!this.rb&&(this.rb=new jUd(this,d5,this));Uxd(this.rb);!this.rb&&(this.rb=new jUd(this,d5,this));ytd(this.rb,BD(b,14));return;case 6:!this.vb&&(this.vb=new gUd(o5,this,6,7));Uxd(this.vb);!this.vb&&(this.vb=new gUd(o5,this,6,7));ytd(this.vb,BD(b,14));return;}did(this,a-aLd((jGd(),cGd)),XKd((c=BD(Ajd(this,16),26),!c?cGd:c),a),b)};_.vh=function nod(a){var b,c;if(!!a&&!!this.rb){for(c=new Fyd(this.rb);c.e!=c.i.gc();){b=Dyd(c);JD(b,351)&&(BD(b,351).w=null)}}Cjd(this,64,a)};_.zh=function ood(){return jGd(),cGd};_.Bh=function pod(a){var b;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);return;case 1:pnd(this,null);return;case 2:dod(this,null);return;case 3:cod(this,null);return;case 4:bod(this,null);return;case 5:!this.rb&&(this.rb=new jUd(this,d5,this));Uxd(this.rb);return;case 6:!this.vb&&(this.vb=new gUd(o5,this,6,7));Uxd(this.vb);return;}eid(this,a-aLd((jGd(),cGd)),XKd((b=BD(Ajd(this,16),26),!b?cGd:b),a))};_.Gh=function qod(){Tnd(this)};_.Mh=function rod(){return !this.rb&&(this.rb=new jUd(this,d5,this)),this.rb};_.Nh=function sod(){return this.sb};_.Oh=function tod(){return this.ub};_.Ph=function uod(){return this.xb};_.Qh=function vod(){return this.yb};_.Rh=function wod(a){this.ub=a};_.Ib=function xod(){var a;if((this.Db&64)!=0)return qnd(this);a=new Jfb(qnd(this));a.a+=' (nsURI: ';Efb(a,this.yb);a.a+=', nsPrefix: ';Efb(a,this.xb);a.a+=')';return a.a};_.xb=null;_.yb=null;var And;var t6=mdb(qte,'EPackageImpl',179);bcb(555,179,{105:1,2016:1,555:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1},Bod);_.q=false;_.r=false;var yod=false;var O2=mdb(rte,'ElkGraphPackageImpl',555);bcb(354,724,{105:1,413:1,160:1,137:1,470:1,354:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},Jod);_.Qg=function Kod(a){return Eod(this,a)};_._g=function Lod(a,b,c){switch(a){case 7:return Fod(this);case 8:return this.a;}return Xkd(this,a,b,c)};_.hh=function Mod(a,b,c){var d;switch(b){case 7:!!this.Cb&&(c=(d=this.Db>>16,d>=0?Eod(this,c):this.Cb.ih(this,-1-d,null,c)));return Dod(this,BD(a,160),c);}return Fkd(this,a,b,c)};_.jh=function Nod(a,b,c){if(b==7){return Dod(this,null,c)}return Gkd(this,a,b,c)};_.lh=function Ood(a){switch(a){case 7:return !!Fod(this);case 8:return !dfb('',this.a);}return Ykd(this,a)};_.sh=function Pod(a,b){switch(a){case 7:God(this,BD(b,160));return;case 8:Hod(this,GD(b));return;}Zkd(this,a,b)};_.zh=function Qod(){return Thd(),Nhd};_.Bh=function Rod(a){switch(a){case 7:God(this,null);return;case 8:Hod(this,'');return;}$kd(this,a)};_.Ib=function Sod(){return Iod(this)};_.a='';var P2=mdb(rte,'ElkLabelImpl',354);bcb(239,725,{105:1,413:1,82:1,160:1,33:1,470:1,239:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},apd);_.Qg=function bpd(a){return Uod(this,a)};_._g=function cpd(a,b,c){switch(a){case 9:return !this.c&&(this.c=new cUd(F2,this,9,9)),this.c;case 10:return !this.a&&(this.a=new cUd(E2,this,10,11)),this.a;case 11:return Xod(this);case 12:return !this.b&&(this.b=new cUd(B2,this,12,3)),this.b;case 13:return Bcb(),!this.a&&(this.a=new cUd(E2,this,10,11)),this.a.i>0?true:false;}return uld(this,a,b,c)};_.hh=function dpd(a,b,c){var d;switch(b){case 9:return !this.c&&(this.c=new cUd(F2,this,9,9)),Sxd(this.c,a,c);case 10:return !this.a&&(this.a=new cUd(E2,this,10,11)),Sxd(this.a,a,c);case 11:!!this.Cb&&(c=(d=this.Db>>16,d>=0?Uod(this,c):this.Cb.ih(this,-1-d,null,c)));return Tod(this,BD(a,33),c);case 12:return !this.b&&(this.b=new cUd(B2,this,12,3)),Sxd(this.b,a,c);}return vld(this,a,b,c)};_.jh=function epd(a,b,c){switch(b){case 9:return !this.c&&(this.c=new cUd(F2,this,9,9)),Txd(this.c,a,c);case 10:return !this.a&&(this.a=new cUd(E2,this,10,11)),Txd(this.a,a,c);case 11:return Tod(this,null,c);case 12:return !this.b&&(this.b=new cUd(B2,this,12,3)),Txd(this.b,a,c);}return wld(this,a,b,c)};_.lh=function fpd(a){switch(a){case 9:return !!this.c&&this.c.i!=0;case 10:return !!this.a&&this.a.i!=0;case 11:return !!Xod(this);case 12:return !!this.b&&this.b.i!=0;case 13:return !this.a&&(this.a=new cUd(E2,this,10,11)),this.a.i>0;}return xld(this,a)};_.sh=function gpd(a,b){switch(a){case 9:!this.c&&(this.c=new cUd(F2,this,9,9));Uxd(this.c);!this.c&&(this.c=new cUd(F2,this,9,9));ytd(this.c,BD(b,14));return;case 10:!this.a&&(this.a=new cUd(E2,this,10,11));Uxd(this.a);!this.a&&(this.a=new cUd(E2,this,10,11));ytd(this.a,BD(b,14));return;case 11:$od(this,BD(b,33));return;case 12:!this.b&&(this.b=new cUd(B2,this,12,3));Uxd(this.b);!this.b&&(this.b=new cUd(B2,this,12,3));ytd(this.b,BD(b,14));return;}yld(this,a,b)};_.zh=function hpd(){return Thd(),Ohd};_.Bh=function ipd(a){switch(a){case 9:!this.c&&(this.c=new cUd(F2,this,9,9));Uxd(this.c);return;case 10:!this.a&&(this.a=new cUd(E2,this,10,11));Uxd(this.a);return;case 11:$od(this,null);return;case 12:!this.b&&(this.b=new cUd(B2,this,12,3));Uxd(this.b);return;}zld(this,a)};_.Ib=function jpd(){return _od(this)};var Q2=mdb(rte,'ElkNodeImpl',239);bcb(186,725,{105:1,413:1,82:1,160:1,118:1,470:1,186:1,94:1,92:1,90:1,56:1,108:1,49:1,97:1,114:1,115:1},ppd);_.Qg=function qpd(a){return lpd(this,a)};_._g=function rpd(a,b,c){if(a==9){return mpd(this)}return uld(this,a,b,c)};_.hh=function spd(a,b,c){var d;switch(b){case 9:!!this.Cb&&(c=(d=this.Db>>16,d>=0?lpd(this,c):this.Cb.ih(this,-1-d,null,c)));return kpd(this,BD(a,33),c);}return vld(this,a,b,c)};_.jh=function tpd(a,b,c){if(b==9){return kpd(this,null,c)}return wld(this,a,b,c)};_.lh=function upd(a){if(a==9){return !!mpd(this)}return xld(this,a)};_.sh=function vpd(a,b){switch(a){case 9:npd(this,BD(b,33));return;}yld(this,a,b)};_.zh=function wpd(){return Thd(),Phd};_.Bh=function xpd(a){switch(a){case 9:npd(this,null);return;}zld(this,a)};_.Ib=function ypd(){return opd(this)};var R2=mdb(rte,'ElkPortImpl',186);var J4=odb(Tte,'BasicEMap/Entry');bcb(1092,115,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1,114:1,115:1},Bpd);_.Fb=function Hpd(a){return this===a};_.cd=function Jpd(){return this.b};_.Hb=function Lpd(){return FCb(this)};_.Uh=function Npd(a){zpd(this,BD(a,146))};_._g=function Cpd(a,b,c){switch(a){case 0:return this.b;case 1:return this.c;}return fid(this,a,b,c)};_.lh=function Dpd(a){switch(a){case 0:return !!this.b;case 1:return this.c!=null;}return mid(this,a)};_.sh=function Epd(a,b){switch(a){case 0:zpd(this,BD(b,146));return;case 1:Apd(this,b);return;}yid(this,a,b)};_.zh=function Fpd(){return Thd(),Qhd};_.Bh=function Gpd(a){switch(a){case 0:zpd(this,null);return;case 1:Apd(this,null);return;}Cid(this,a)};_.Sh=function Ipd(){var a;if(this.a==-1){a=this.b;this.a=!a?0:tb(a)}return this.a};_.dd=function Kpd(){return this.c};_.Th=function Mpd(a){this.a=a};_.ed=function Opd(a){var b;b=this.c;Apd(this,a);return b};_.Ib=function Ppd(){var a;if((this.Db&64)!=0)return Eid(this);a=new Ufb;Qfb(Qfb(Qfb(a,this.b?this.b.tg():Xhe),gne),xfb(this.c));return a.a};_.a=-1;_.c=null;var S2=mdb(rte,'ElkPropertyToValueMapEntryImpl',1092);bcb(984,1,{},bqd);var U2=mdb(Wte,'JsonAdapter',984);bcb(210,60,Tie,cqd);var V2=mdb(Wte,'JsonImportException',210);bcb(857,1,{},ird);var J3=mdb(Wte,'JsonImporter',857);bcb(891,1,{},jrd);var W2=mdb(Wte,'JsonImporter/lambda$0$Type',891);bcb(892,1,{},krd);var X2=mdb(Wte,'JsonImporter/lambda$1$Type',892);bcb(900,1,{},lrd);var Y2=mdb(Wte,'JsonImporter/lambda$10$Type',900);bcb(902,1,{},mrd);var Z2=mdb(Wte,'JsonImporter/lambda$11$Type',902);bcb(903,1,{},nrd);var $2=mdb(Wte,'JsonImporter/lambda$12$Type',903);bcb(909,1,{},ord);var _2=mdb(Wte,'JsonImporter/lambda$13$Type',909);bcb(908,1,{},prd);var a3=mdb(Wte,'JsonImporter/lambda$14$Type',908);bcb(904,1,{},qrd);var b3=mdb(Wte,'JsonImporter/lambda$15$Type',904);bcb(905,1,{},rrd);var c3=mdb(Wte,'JsonImporter/lambda$16$Type',905);bcb(906,1,{},srd);var d3=mdb(Wte,'JsonImporter/lambda$17$Type',906);bcb(907,1,{},trd);var e3=mdb(Wte,'JsonImporter/lambda$18$Type',907);bcb(912,1,{},urd);var f3=mdb(Wte,'JsonImporter/lambda$19$Type',912);bcb(893,1,{},vrd);var g3=mdb(Wte,'JsonImporter/lambda$2$Type',893);bcb(910,1,{},wrd);var h3=mdb(Wte,'JsonImporter/lambda$20$Type',910);bcb(911,1,{},xrd);var i3=mdb(Wte,'JsonImporter/lambda$21$Type',911);bcb(915,1,{},yrd);var j3=mdb(Wte,'JsonImporter/lambda$22$Type',915);bcb(913,1,{},zrd);var k3=mdb(Wte,'JsonImporter/lambda$23$Type',913);bcb(914,1,{},Ard);var l3=mdb(Wte,'JsonImporter/lambda$24$Type',914);bcb(917,1,{},Brd);var m3=mdb(Wte,'JsonImporter/lambda$25$Type',917);bcb(916,1,{},Crd);var n3=mdb(Wte,'JsonImporter/lambda$26$Type',916);bcb(918,1,qie,Drd);_.td=function Erd(a){Bqd(this.b,this.a,GD(a))};var o3=mdb(Wte,'JsonImporter/lambda$27$Type',918);bcb(919,1,qie,Frd);_.td=function Grd(a){Cqd(this.b,this.a,GD(a))};var p3=mdb(Wte,'JsonImporter/lambda$28$Type',919);bcb(920,1,{},Hrd);var q3=mdb(Wte,'JsonImporter/lambda$29$Type',920);bcb(896,1,{},Ird);var r3=mdb(Wte,'JsonImporter/lambda$3$Type',896);bcb(921,1,{},Jrd);var s3=mdb(Wte,'JsonImporter/lambda$30$Type',921);bcb(922,1,{},Krd);var t3=mdb(Wte,'JsonImporter/lambda$31$Type',922);bcb(923,1,{},Lrd);var u3=mdb(Wte,'JsonImporter/lambda$32$Type',923);bcb(924,1,{},Mrd);var v3=mdb(Wte,'JsonImporter/lambda$33$Type',924);bcb(925,1,{},Nrd);var w3=mdb(Wte,'JsonImporter/lambda$34$Type',925);bcb(859,1,{},Prd);var x3=mdb(Wte,'JsonImporter/lambda$35$Type',859);bcb(929,1,{},Rrd);var y3=mdb(Wte,'JsonImporter/lambda$36$Type',929);bcb(926,1,qie,Srd);_.td=function Trd(a){Lqd(this.a,BD(a,469))};var z3=mdb(Wte,'JsonImporter/lambda$37$Type',926);bcb(927,1,qie,Urd);_.td=function Vrd(a){Mqd(this.a,this.b,BD(a,202))};var A3=mdb(Wte,'JsonImporter/lambda$38$Type',927);bcb(928,1,qie,Wrd);_.td=function Xrd(a){Nqd(this.a,this.b,BD(a,202))};var B3=mdb(Wte,'JsonImporter/lambda$39$Type',928);bcb(894,1,{},Yrd);var C3=mdb(Wte,'JsonImporter/lambda$4$Type',894);bcb(930,1,qie,Zrd);_.td=function $rd(a){Oqd(this.a,BD(a,8))};var D3=mdb(Wte,'JsonImporter/lambda$40$Type',930);bcb(895,1,{},_rd);var E3=mdb(Wte,'JsonImporter/lambda$5$Type',895);bcb(899,1,{},asd);var F3=mdb(Wte,'JsonImporter/lambda$6$Type',899);bcb(897,1,{},bsd);var G3=mdb(Wte,'JsonImporter/lambda$7$Type',897);bcb(898,1,{},csd);var H3=mdb(Wte,'JsonImporter/lambda$8$Type',898);bcb(901,1,{},dsd);var I3=mdb(Wte,'JsonImporter/lambda$9$Type',901);bcb(948,1,qie,msd);_.td=function nsd(a){Qpd(this.a,new yC(GD(a)))};var K3=mdb(Wte,'JsonMetaDataConverter/lambda$0$Type',948);bcb(949,1,qie,osd);_.td=function psd(a){isd(this.a,BD(a,237))};var L3=mdb(Wte,'JsonMetaDataConverter/lambda$1$Type',949);bcb(950,1,qie,qsd);_.td=function rsd(a){jsd(this.a,BD(a,149))};var M3=mdb(Wte,'JsonMetaDataConverter/lambda$2$Type',950);bcb(951,1,qie,ssd);_.td=function tsd(a){ksd(this.a,BD(a,175))};var N3=mdb(Wte,'JsonMetaDataConverter/lambda$3$Type',951);bcb(237,22,{3:1,35:1,22:1,237:1},Dsd);var usd,vsd,wsd,xsd,ysd,zsd,Asd,Bsd;var O3=ndb(Hle,'GraphFeature',237,CI,Fsd,Esd);var Gsd;bcb(13,1,{35:1,146:1},Lsd,Msd,Nsd,Osd);_.wd=function Psd(a){return Isd(this,BD(a,146))};_.Fb=function Qsd(a){return Jsd(this,a)};_.wg=function Rsd(){return Ksd(this)};_.tg=function Ssd(){return this.b};_.Hb=function Tsd(){return LCb(this.b)};_.Ib=function Usd(){return this.b};var T3=mdb(Hle,'Property',13);bcb(818,1,Dke,Wsd);_.ue=function Xsd(a,b){return Vsd(this,BD(a,94),BD(b,94))};_.Fb=function Ysd(a){return this===a};_.ve=function Zsd(){return new tpb(this)};var S3=mdb(Hle,'PropertyHolderComparator',818);bcb(695,1,aie,qtd);_.Nb=function rtd(a){Rrb(this,a)};_.Pb=function ttd(){return ptd(this)};_.Qb=function utd(){Srb()};_.Ob=function std(){return !!this.a};var U3=mdb(jue,'ElkGraphUtil/AncestorIterator',695);var T4=odb(Tte,'EList');bcb(67,52,{20:1,28:1,52:1,14:1,15:1,67:1,58:1});_.Vc=function Jtd(a,b){vtd(this,a,b)};_.Fc=function Ktd(a){return wtd(this,a)};_.Wc=function Ltd(a,b){return xtd(this,a,b)};_.Gc=function Mtd(a){return ytd(this,a)};_.Zh=function Ntd(){return new $yd(this)};_.$h=function Otd(){return new bzd(this)};_._h=function Ptd(a){return ztd(this,a)};_.ai=function Qtd(){return true};_.bi=function Rtd(a,b){};_.ci=function Std(){};_.di=function Ttd(a,b){Atd(this,a,b)};_.ei=function Utd(a,b,c){};_.fi=function Vtd(a,b){};_.gi=function Wtd(a,b,c){};_.Fb=function Xtd(a){return Btd(this,a)};_.Hb=function Ytd(){return Etd(this)};_.hi=function Ztd(){return false};_.Kc=function $td(){return new Fyd(this)};_.Yc=function _td(){return new Oyd(this)};_.Zc=function aud(a){var b;b=this.gc();if(a<0||a>b)throw vbb(new Cyd(a,b));return new Pyd(this,a)};_.ji=function bud(a,b){this.ii(a,this.Xc(b))};_.Mc=function cud(a){return Ftd(this,a)};_.li=function dud(a,b){return b};_._c=function eud(a,b){return Gtd(this,a,b)};_.Ib=function fud(){return Htd(this)};_.ni=function gud(){return true};_.oi=function hud(a,b){return Itd(this,b)};var p4=mdb(Tte,'AbstractEList',67);bcb(63,67,oue,yud,zud,Aud);_.Vh=function Bud(a,b){return iud(this,a,b)};_.Wh=function Cud(a){return jud(this,a)};_.Xh=function Dud(a,b){kud(this,a,b)};_.Yh=function Eud(a){lud(this,a)};_.pi=function Fud(a){return nud(this,a)};_.$b=function Gud(){oud(this)};_.Hc=function Hud(a){return pud(this,a)};_.Xb=function Iud(a){return qud(this,a)};_.qi=function Jud(a){var b,c,d;++this.j;c=this.g==null?0:this.g.length;if(a>c){d=this.g;b=c+(c/2|0)+4;b=0){this.$c(b);return true}else{return false}};_.mi=function lwd(a,b){return this.Ui(a,this.oi(a,b))};_.gc=function mwd(){return this.Vi()};_.Pc=function nwd(){return this.Wi()};_.Qc=function owd(a){return this.Xi(a)};_.Ib=function pwd(){return this.Yi()};var M4=mdb(Tte,'DelegatingEList',1995);bcb(1996,1995,eve);_.Vh=function xwd(a,b){return qwd(this,a,b)};_.Wh=function ywd(a){return this.Vh(this.Vi(),a)};_.Xh=function zwd(a,b){rwd(this,a,b)};_.Yh=function Awd(a){swd(this,a)};_.ai=function Bwd(){return !this.bj()};_.$b=function Cwd(){vwd(this)};_.Zi=function Dwd(a,b,c,d,e){return new Cxd(this,a,b,c,d,e)};_.$i=function Ewd(a){Uhd(this.Ai(),a)};_._i=function Fwd(){return null};_.aj=function Gwd(){return -1};_.Ai=function Hwd(){return null};_.bj=function Iwd(){return false};_.cj=function Jwd(a,b){return b};_.dj=function Kwd(a,b){return b};_.ej=function Lwd(){return false};_.fj=function Mwd(){return !this.Ri()};_.ii=function Nwd(a,b){var c,d;if(this.ej()){d=this.fj();c=Dvd(this,a,b);this.$i(this.Zi(7,meb(b),c,a,d));return c}else{return Dvd(this,a,b)}};_.$c=function Owd(a){var b,c,d,e;if(this.ej()){c=null;d=this.fj();b=this.Zi(4,e=Evd(this,a),null,a,d);if(this.bj()&&!!e){c=this.dj(e,c);if(!c){this.$i(b)}else{c.Ei(b);c.Fi()}}else{if(!c){this.$i(b)}else{c.Ei(b);c.Fi()}}return e}else{e=Evd(this,a);if(this.bj()&&!!e){c=this.dj(e,null);!!c&&c.Fi()}return e}};_.mi=function Pwd(a,b){return wwd(this,a,b)};var d4=mdb(hte,'DelegatingNotifyingListImpl',1996);bcb(143,1,fve);_.Ei=function pxd(a){return Qwd(this,a)};_.Fi=function qxd(){Rwd(this)};_.xi=function rxd(){return this.d};_._i=function sxd(){return null};_.gj=function txd(){return null};_.yi=function uxd(a){return -1};_.zi=function vxd(){return $wd(this)};_.Ai=function wxd(){return null};_.Bi=function xxd(){return hxd(this)};_.Ci=function yxd(){return this.o<0?this.o<-2?-2-this.o-1:-1:this.o};_.hj=function zxd(){return false};_.Di=function Axd(a){var b,c,d,e,f,g,h,i,j,k,l;switch(this.d){case 1:case 2:{e=a.xi();switch(e){case 1:case 2:{f=a.Ai();if(PD(f)===PD(this.Ai())&&this.yi(null)==a.yi(null)){this.g=a.zi();a.xi()==1&&(this.d=1);return true}}}}case 4:{e=a.xi();switch(e){case 4:{f=a.Ai();if(PD(f)===PD(this.Ai())&&this.yi(null)==a.yi(null)){j=jxd(this);i=this.o<0?this.o<-2?-2-this.o-1:-1:this.o;g=a.Ci();this.d=6;l=new zud(2);if(i<=g){wtd(l,this.n);wtd(l,a.Bi());this.g=OC(GC(WD,1),oje,25,15,[this.o=i,g+1])}else{wtd(l,a.Bi());wtd(l,this.n);this.g=OC(GC(WD,1),oje,25,15,[this.o=g,i])}this.n=l;j||(this.o=-2-this.o-1);return true}break}}break}case 6:{e=a.xi();switch(e){case 4:{f=a.Ai();if(PD(f)===PD(this.Ai())&&this.yi(null)==a.yi(null)){j=jxd(this);g=a.Ci();k=BD(this.g,48);d=KC(WD,oje,25,k.length+1,15,1);b=0;while(b>>0,b.toString(16)));d.a+=' (eventType: ';switch(this.d){case 1:{d.a+='SET';break}case 2:{d.a+='UNSET';break}case 3:{d.a+='ADD';break}case 5:{d.a+='ADD_MANY';break}case 4:{d.a+='REMOVE';break}case 6:{d.a+='REMOVE_MANY';break}case 7:{d.a+='MOVE';break}case 8:{d.a+='REMOVING_ADAPTER';break}case 9:{d.a+='RESOLVE';break}default:{Cfb(d,this.d);break}}ixd(this)&&(d.a+=', touch: true',d);d.a+=', position: ';Cfb(d,this.o<0?this.o<-2?-2-this.o-1:-1:this.o);d.a+=', notifier: ';Dfb(d,this.Ai());d.a+=', feature: ';Dfb(d,this._i());d.a+=', oldValue: ';Dfb(d,hxd(this));d.a+=', newValue: ';if(this.d==6&&JD(this.g,48)){c=BD(this.g,48);d.a+='[';for(a=0;a10){if(!this.b||this.c.j!=this.a){this.b=new Vqb(this);this.a=this.j}return Rqb(this.b,a)}else{return pud(this,a)}};_.ni=function Byd(){return true};_.a=0;var j4=mdb(Tte,'AbstractEList/1',953);bcb(295,73,Mje,Cyd);var k4=mdb(Tte,'AbstractEList/BasicIndexOutOfBoundsException',295);bcb(40,1,aie,Fyd);_.Nb=function Iyd(a){Rrb(this,a)};_.mj=function Gyd(){if(this.i.j!=this.f){throw vbb(new Apb)}};_.nj=function Hyd(){return Dyd(this)};_.Ob=function Jyd(){return this.e!=this.i.gc()};_.Pb=function Kyd(){return this.nj()};_.Qb=function Lyd(){Eyd(this)};_.e=0;_.f=0;_.g=-1;var l4=mdb(Tte,'AbstractEList/EIterator',40);bcb(278,40,jie,Oyd,Pyd);_.Qb=function Xyd(){Eyd(this)};_.Rb=function Qyd(a){Myd(this,a)};_.oj=function Ryd(){var b;try{b=this.d.Xb(--this.e);this.mj();this.g=this.e;return b}catch(a){a=ubb(a);if(JD(a,73)){this.mj();throw vbb(new utb)}else throw vbb(a)}};_.pj=function Syd(a){Nyd(this,a)};_.Sb=function Tyd(){return this.e!=0};_.Tb=function Uyd(){return this.e};_.Ub=function Vyd(){return this.oj()};_.Vb=function Wyd(){return this.e-1};_.Wb=function Yyd(a){this.pj(a)};var m4=mdb(Tte,'AbstractEList/EListIterator',278);bcb(341,40,aie,$yd);_.nj=function _yd(){return Zyd(this)};_.Qb=function azd(){throw vbb(new bgb)};var n4=mdb(Tte,'AbstractEList/NonResolvingEIterator',341);bcb(385,278,jie,bzd,czd);_.Rb=function dzd(a){throw vbb(new bgb)};_.nj=function ezd(){var b;try{b=this.c.ki(this.e);this.mj();this.g=this.e++;return b}catch(a){a=ubb(a);if(JD(a,73)){this.mj();throw vbb(new utb)}else throw vbb(a)}};_.oj=function fzd(){var b;try{b=this.c.ki(--this.e);this.mj();this.g=this.e;return b}catch(a){a=ubb(a);if(JD(a,73)){this.mj();throw vbb(new utb)}else throw vbb(a)}};_.Qb=function gzd(){throw vbb(new bgb)};_.Wb=function hzd(a){throw vbb(new bgb)};var o4=mdb(Tte,'AbstractEList/NonResolvingEListIterator',385);bcb(1982,67,ive);_.Vh=function pzd(a,b){var c,d,e,f,g,h,i,j,k,l,m;e=b.gc();if(e!=0){j=BD(Ajd(this.a,4),126);k=j==null?0:j.length;m=k+e;d=nzd(this,m);l=k-a;l>0&&$fb(j,a,d,a+e,l);i=b.Kc();for(g=0;gc)throw vbb(new Cyd(a,c));return new Yzd(this,a)};_.$b=function wzd(){var a,b;++this.j;a=BD(Ajd(this.a,4),126);b=a==null?0:a.length;b0d(this,null);Atd(this,b,a)};_.Hc=function xzd(a){var b,c,d,e,f;b=BD(Ajd(this.a,4),126);if(b!=null){if(a!=null){for(d=b,e=0,f=d.length;e=c)throw vbb(new Cyd(a,c));return b[a]};_.Xc=function zzd(a){var b,c,d;b=BD(Ajd(this.a,4),126);if(b!=null){if(a!=null){for(c=0,d=b.length;cc)throw vbb(new Cyd(a,c));return new Qzd(this,a)};_.ii=function Ezd(a,b){var c,d,e;c=mzd(this);e=c==null?0:c.length;if(a>=e)throw vbb(new qcb(lue+a+mue+e));if(b>=e)throw vbb(new qcb(nue+b+mue+e));d=c[b];if(a!=b){a0&&$fb(a,0,b,0,c);return b};_.Qc=function Kzd(a){var b,c,d;b=BD(Ajd(this.a,4),126);d=b==null?0:b.length;if(d>0){if(a.lengthd&&NC(a,d,null);return a};var jzd;var v4=mdb(Tte,'ArrayDelegatingEList',1982);bcb(1038,40,aie,Lzd);_.mj=function Mzd(){if(this.b.j!=this.f||PD(BD(Ajd(this.b.a,4),126))!==PD(this.a)){throw vbb(new Apb)}};_.Qb=function Nzd(){Eyd(this);this.a=BD(Ajd(this.b.a,4),126)};var r4=mdb(Tte,'ArrayDelegatingEList/EIterator',1038);bcb(706,278,jie,Pzd,Qzd);_.mj=function Rzd(){if(this.b.j!=this.f||PD(BD(Ajd(this.b.a,4),126))!==PD(this.a)){throw vbb(new Apb)}};_.pj=function Szd(a){Nyd(this,a);this.a=BD(Ajd(this.b.a,4),126)};_.Qb=function Tzd(){Eyd(this);this.a=BD(Ajd(this.b.a,4),126)};var s4=mdb(Tte,'ArrayDelegatingEList/EListIterator',706);bcb(1039,341,aie,Uzd);_.mj=function Vzd(){if(this.b.j!=this.f||PD(BD(Ajd(this.b.a,4),126))!==PD(this.a)){throw vbb(new Apb)}};var t4=mdb(Tte,'ArrayDelegatingEList/NonResolvingEIterator',1039);bcb(707,385,jie,Xzd,Yzd);_.mj=function Zzd(){if(this.b.j!=this.f||PD(BD(Ajd(this.b.a,4),126))!==PD(this.a)){throw vbb(new Apb)}};var u4=mdb(Tte,'ArrayDelegatingEList/NonResolvingEListIterator',707);bcb(606,295,Mje,$zd);var w4=mdb(Tte,'BasicEList/BasicIndexOutOfBoundsException',606);bcb(696,63,oue,_zd);_.Vc=function aAd(a,b){throw vbb(new bgb)};_.Fc=function bAd(a){throw vbb(new bgb)};_.Wc=function cAd(a,b){throw vbb(new bgb)};_.Gc=function dAd(a){throw vbb(new bgb)};_.$b=function eAd(){throw vbb(new bgb)};_.qi=function fAd(a){throw vbb(new bgb)};_.Kc=function gAd(){return this.Zh()};_.Yc=function hAd(){return this.$h()};_.Zc=function iAd(a){return this._h(a)};_.ii=function jAd(a,b){throw vbb(new bgb)};_.ji=function kAd(a,b){throw vbb(new bgb)};_.$c=function lAd(a){throw vbb(new bgb)};_.Mc=function mAd(a){throw vbb(new bgb)};_._c=function nAd(a,b){throw vbb(new bgb)};var x4=mdb(Tte,'BasicEList/UnmodifiableEList',696);bcb(705,1,{3:1,20:1,14:1,15:1,58:1,589:1});_.Vc=function OAd(a,b){oAd(this,a,BD(b,42))};_.Fc=function PAd(a){return pAd(this,BD(a,42))};_.Jc=function XAd(a){reb(this,a)};_.Xb=function YAd(a){return BD(qud(this.c,a),133)};_.ii=function fBd(a,b){return BD(this.c.ii(a,b),42)};_.ji=function gBd(a,b){GAd(this,a,BD(b,42))};_.Lc=function jBd(){return new YAb(null,new Kub(this,16))};_.$c=function kBd(a){return BD(this.c.$c(a),42)};_._c=function mBd(a,b){return MAd(this,a,BD(b,42))};_.ad=function oBd(a){ktb(this,a)};_.Nc=function pBd(){return new Kub(this,16)};_.Oc=function qBd(){return new YAb(null,new Kub(this,16))};_.Wc=function QAd(a,b){return this.c.Wc(a,b)};_.Gc=function RAd(a){return this.c.Gc(a)};_.$b=function SAd(){this.c.$b()};_.Hc=function TAd(a){return this.c.Hc(a)};_.Ic=function UAd(a){return Be(this.c,a)};_.qj=function VAd(){var a,b,c;if(this.d==null){this.d=KC(y4,jve,63,2*this.f+1,0,1);c=this.e;this.f=0;for(b=this.c.Kc();b.e!=b.i.gc();){a=BD(b.nj(),133);uAd(this,a)}this.e=c}};_.Fb=function WAd(a){return zAd(this,a)};_.Hb=function ZAd(){return Etd(this.c)};_.Xc=function $Ad(a){return this.c.Xc(a)};_.rj=function _Ad(){this.c=new yBd(this)};_.dc=function aBd(){return this.f==0};_.Kc=function bBd(){return this.c.Kc()};_.Yc=function cBd(){return this.c.Yc()};_.Zc=function dBd(a){return this.c.Zc(a)};_.sj=function eBd(){return FAd(this)};_.tj=function hBd(a,b,c){return new zCd(a,b,c)};_.uj=function iBd(){return new EBd};_.Mc=function lBd(a){return JAd(this,a)};_.gc=function nBd(){return this.f};_.bd=function rBd(a,b){return new Jib(this.c,a,b)};_.Pc=function sBd(){return this.c.Pc()};_.Qc=function tBd(a){return this.c.Qc(a)};_.Ib=function uBd(){return Htd(this.c)};_.e=0;_.f=0;var L4=mdb(Tte,'BasicEMap',705);bcb(1033,63,oue,yBd);_.bi=function zBd(a,b){vBd(this,BD(b,133))};_.ei=function BBd(a,b,c){var d;++(d=this,BD(b,133),d).a.e};_.fi=function CBd(a,b){wBd(this,BD(b,133))};_.gi=function DBd(a,b,c){xBd(this,BD(b,133),BD(c,133))};_.di=function ABd(a,b){tAd(this.a)};var z4=mdb(Tte,'BasicEMap/1',1033);bcb(1034,63,oue,EBd);_.ri=function FBd(a){return KC(I4,kve,612,a,0,1)};var A4=mdb(Tte,'BasicEMap/2',1034);bcb(1035,eie,fie,GBd);_.$b=function HBd(){this.a.c.$b()};_.Hc=function IBd(a){return qAd(this.a,a)};_.Kc=function JBd(){return this.a.f==0?(LCd(),KCd.a):new dCd(this.a)};_.Mc=function KBd(a){var b;b=this.a.f;LAd(this.a,a);return this.a.f!=b};_.gc=function LBd(){return this.a.f};var B4=mdb(Tte,'BasicEMap/3',1035);bcb(1036,28,die,MBd);_.$b=function NBd(){this.a.c.$b()};_.Hc=function OBd(a){return rAd(this.a,a)};_.Kc=function PBd(){return this.a.f==0?(LCd(),KCd.a):new fCd(this.a)};_.gc=function QBd(){return this.a.f};var C4=mdb(Tte,'BasicEMap/4',1036);bcb(1037,eie,fie,SBd);_.$b=function TBd(){this.a.c.$b()};_.Hc=function UBd(a){var b,c,d,e,f,g,h,i,j;if(this.a.f>0&&JD(a,42)){this.a.qj();i=BD(a,42);h=i.cd();e=h==null?0:tb(h);f=DAd(this.a,e);b=this.a.d[f];if(b){c=BD(b.g,367);j=b.i;for(g=0;g'+this.c};_.a=0;var I4=mdb(Tte,'BasicEMap/EntryImpl',612);bcb(536,1,{},JCd);var K4=mdb(Tte,'BasicEMap/View',536);var KCd;bcb(768,1,{});_.Fb=function ZCd(a){return At((mmb(),jmb),a)};_.Hb=function $Cd(){return qmb((mmb(),jmb))};_.Ib=function _Cd(){return Fe((mmb(),jmb))};var Q4=mdb(Tte,'ECollections/BasicEmptyUnmodifiableEList',768);bcb(1312,1,jie,aDd);_.Nb=function cDd(a){Rrb(this,a)};_.Rb=function bDd(a){throw vbb(new bgb)};_.Ob=function dDd(){return false};_.Sb=function eDd(){return false};_.Pb=function fDd(){throw vbb(new utb)};_.Tb=function gDd(){return 0};_.Ub=function hDd(){throw vbb(new utb)};_.Vb=function iDd(){return -1};_.Qb=function jDd(){throw vbb(new bgb)};_.Wb=function kDd(a){throw vbb(new bgb)};var P4=mdb(Tte,'ECollections/BasicEmptyUnmodifiableEList/1',1312);bcb(1310,768,{20:1,14:1,15:1,58:1},lDd);_.Vc=function mDd(a,b){OCd()};_.Fc=function nDd(a){return PCd()};_.Wc=function oDd(a,b){return QCd()};_.Gc=function pDd(a){return RCd()};_.$b=function qDd(){SCd()};_.Hc=function rDd(a){return false};_.Ic=function sDd(a){return false};_.Jc=function tDd(a){reb(this,a)};_.Xb=function uDd(a){return wmb((mmb(),jmb,a)),null};_.Xc=function vDd(a){return -1};_.dc=function wDd(){return true};_.Kc=function xDd(){return this.a};_.Yc=function yDd(){return this.a};_.Zc=function zDd(a){return this.a};_.ii=function ADd(a,b){return TCd()};_.ji=function BDd(a,b){UCd()};_.Lc=function CDd(){return new YAb(null,new Kub(this,16))};_.$c=function DDd(a){return VCd()};_.Mc=function EDd(a){return WCd()};_._c=function FDd(a,b){return XCd()};_.gc=function GDd(){return 0};_.ad=function HDd(a){ktb(this,a)};_.Nc=function IDd(){return new Kub(this,16)};_.Oc=function JDd(){return new YAb(null,new Kub(this,16))};_.bd=function KDd(a,b){return mmb(),new Jib(jmb,a,b)};_.Pc=function LDd(){return De((mmb(),jmb))};_.Qc=function MDd(a){return mmb(),Ee(jmb,a)};var R4=mdb(Tte,'ECollections/EmptyUnmodifiableEList',1310);bcb(1311,768,{20:1,14:1,15:1,58:1,589:1},NDd);_.Vc=function ODd(a,b){OCd()};_.Fc=function PDd(a){return PCd()};_.Wc=function QDd(a,b){return QCd()};_.Gc=function RDd(a){return RCd()};_.$b=function SDd(){SCd()};_.Hc=function TDd(a){return false};_.Ic=function UDd(a){return false};_.Jc=function VDd(a){reb(this,a)};_.Xb=function WDd(a){return wmb((mmb(),jmb,a)),null};_.Xc=function XDd(a){return -1};_.dc=function YDd(){return true};_.Kc=function ZDd(){return this.a};_.Yc=function $Dd(){return this.a};_.Zc=function _Dd(a){return this.a};_.ii=function bEd(a,b){return TCd()};_.ji=function cEd(a,b){UCd()};_.Lc=function dEd(){return new YAb(null,new Kub(this,16))};_.$c=function eEd(a){return VCd()};_.Mc=function fEd(a){return WCd()};_._c=function gEd(a,b){return XCd()};_.gc=function hEd(){return 0};_.ad=function iEd(a){ktb(this,a)};_.Nc=function jEd(){return new Kub(this,16)};_.Oc=function kEd(){return new YAb(null,new Kub(this,16))};_.bd=function lEd(a,b){return mmb(),new Jib(jmb,a,b)};_.Pc=function mEd(){return De((mmb(),jmb))};_.Qc=function nEd(a){return mmb(),Ee(jmb,a)};_.sj=function aEd(){return mmb(),mmb(),kmb};var S4=mdb(Tte,'ECollections/EmptyUnmodifiableEMap',1311);var U4=odb(Tte,'Enumerator');var oEd;bcb(281,1,{281:1},NEd);_.Fb=function REd(a){var b;if(this===a)return true;if(!JD(a,281))return false;b=BD(a,281);return this.f==b.f&&TEd(this.i,b.i)&&SEd(this.a,(this.f&256)!=0?(b.f&256)!=0?b.a:null:(b.f&256)!=0?null:b.a)&&SEd(this.d,b.d)&&SEd(this.g,b.g)&&SEd(this.e,b.e)&&KEd(this,b)};_.Hb=function WEd(){return this.f};_.Ib=function cFd(){return LEd(this)};_.f=0;var sEd=0,tEd=0,uEd=0,vEd=0,wEd=0,xEd=0,yEd=0,zEd=0,AEd=0,BEd,CEd=0,DEd=0,EEd=0,FEd=0,GEd,HEd;var Z4=mdb(Tte,'URI',281);bcb(1091,43,fke,mFd);_.zc=function nFd(a,b){return BD(Shb(this,GD(a),BD(b,281)),281)};var Y4=mdb(Tte,'URI/URICache',1091);bcb(497,63,oue,oFd,pFd);_.hi=function qFd(){return true};var $4=mdb(Tte,'UniqueEList',497);bcb(581,60,Tie,rFd);var _4=mdb(Tte,'WrappedException',581);var a5=odb(Vse,nve);var v5=odb(Vse,ove);var t5=odb(Vse,pve);var b5=odb(Vse,qve);var d5=odb(Vse,rve);var c5=odb(Vse,'EClass');var f5=odb(Vse,'EDataType');var sFd;bcb(1183,43,fke,vFd);_.xc=function wFd(a){return ND(a)?Phb(this,a):Wd(irb(this.f,a))};var e5=mdb(Vse,'EDataType/Internal/ConversionDelegate/Factory/Registry/Impl',1183);var h5=odb(Vse,'EEnum');var g5=odb(Vse,sve);var j5=odb(Vse,tve);var n5=odb(Vse,uve);var xFd;var p5=odb(Vse,vve);var q5=odb(Vse,wve);bcb(1029,1,{},BFd);_.Ib=function CFd(){return 'NIL'};var r5=mdb(Vse,'EStructuralFeature/Internal/DynamicValueHolder/1',1029);var DFd;bcb(1028,43,fke,GFd);_.xc=function HFd(a){return ND(a)?Phb(this,a):Wd(irb(this.f,a))};var s5=mdb(Vse,'EStructuralFeature/Internal/SettingDelegate/Factory/Registry/Impl',1028);var u5=odb(Vse,xve);var w5=odb(Vse,'EValidator/PatternMatcher');var IFd;var KFd;var MFd;var OFd,PFd,QFd,RFd,SFd,TFd,UFd,VFd,WFd,XFd,YFd,ZFd,$Fd,_Fd,aGd,bGd,cGd,dGd,eGd,fGd,gGd,hGd,iGd;var E9=odb(yve,'FeatureMap/Entry');bcb(535,1,{72:1},kGd);_.ak=function lGd(){return this.a};_.dd=function mGd(){return this.b};var x5=mdb(qte,'BasicEObjectImpl/1',535);bcb(1027,1,zve,nGd);_.Wj=function oGd(a){return hid(this.a,this.b,a)};_.fj=function pGd(){return nid(this.a,this.b)};_.Wb=function qGd(a){zid(this.a,this.b,a)};_.Xj=function rGd(){Did(this.a,this.b)};var y5=mdb(qte,'BasicEObjectImpl/4',1027);bcb(1983,1,{108:1});_.bk=function uGd(a){this.e=a==0?sGd:KC(SI,Uhe,1,a,5,1)};_.Ch=function vGd(a){return this.e[a]};_.Dh=function wGd(a,b){this.e[a]=b};_.Eh=function xGd(a){this.e[a]=null};_.ck=function yGd(){return this.c};_.dk=function zGd(){throw vbb(new bgb)};_.ek=function AGd(){throw vbb(new bgb)};_.fk=function BGd(){return this.d};_.gk=function CGd(){return this.e!=null};_.hk=function DGd(a){this.c=a};_.ik=function EGd(a){throw vbb(new bgb)};_.jk=function FGd(a){throw vbb(new bgb)};_.kk=function GGd(a){this.d=a};var sGd;var z5=mdb(qte,'BasicEObjectImpl/EPropertiesHolderBaseImpl',1983);bcb(185,1983,{108:1},HGd);_.dk=function IGd(){return this.a};_.ek=function JGd(){return this.b};_.ik=function KGd(a){this.a=a};_.jk=function LGd(a){this.b=a};var A5=mdb(qte,'BasicEObjectImpl/EPropertiesHolderImpl',185);bcb(506,97,pte,MGd);_.Kg=function NGd(){return this.f};_.Pg=function OGd(){return this.k};_.Rg=function PGd(a,b){this.g=a;this.i=b};_.Tg=function QGd(){return (this.j&2)==0?this.zh():this.ph().ck()};_.Vg=function RGd(){return this.i};_.Mg=function SGd(){return (this.j&1)!=0};_.eh=function TGd(){return this.g};_.kh=function UGd(){return (this.j&4)!=0};_.ph=function VGd(){return !this.k&&(this.k=new HGd),this.k};_.th=function WGd(a){this.ph().hk(a);a?(this.j|=2):(this.j&=-3)};_.vh=function XGd(a){this.ph().jk(a);a?(this.j|=4):(this.j&=-5)};_.zh=function YGd(){return (NFd(),MFd).S};_.i=0;_.j=1;var l6=mdb(qte,'EObjectImpl',506);bcb(780,506,{105:1,92:1,90:1,56:1,108:1,49:1,97:1},_Gd);_.Ch=function aHd(a){return this.e[a]};_.Dh=function bHd(a,b){this.e[a]=b};_.Eh=function cHd(a){this.e[a]=null};_.Tg=function dHd(){return this.d};_.Yg=function eHd(a){return bLd(this.d,a)};_.$g=function fHd(){return this.d};_.dh=function gHd(){return this.e!=null};_.ph=function hHd(){!this.k&&(this.k=new vHd);return this.k};_.th=function iHd(a){this.d=a};_.yh=function jHd(){var a;if(this.e==null){a=aLd(this.d);this.e=a==0?ZGd:KC(SI,Uhe,1,a,5,1)}return this};_.Ah=function kHd(){return 0};var ZGd;var E5=mdb(qte,'DynamicEObjectImpl',780);bcb(1376,780,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1},lHd);_.Fb=function nHd(a){return this===a};_.Hb=function rHd(){return FCb(this)};_.th=function mHd(a){this.d=a;this.b=YKd(a,'key');this.c=YKd(a,Bte)};_.Sh=function oHd(){var a;if(this.a==-1){a=iid(this,this.b);this.a=a==null?0:tb(a)}return this.a};_.cd=function pHd(){return iid(this,this.b)};_.dd=function qHd(){return iid(this,this.c)};_.Th=function sHd(a){this.a=a};_.Uh=function tHd(a){zid(this,this.b,a)};_.ed=function uHd(a){var b;b=iid(this,this.c);zid(this,this.c,a);return b};_.a=0;var C5=mdb(qte,'DynamicEObjectImpl/BasicEMapEntry',1376);bcb(1377,1,{108:1},vHd);_.bk=function wHd(a){throw vbb(new bgb)};_.Ch=function xHd(a){throw vbb(new bgb)};_.Dh=function yHd(a,b){throw vbb(new bgb)};_.Eh=function zHd(a){throw vbb(new bgb)};_.ck=function AHd(){throw vbb(new bgb)};_.dk=function BHd(){return this.a};_.ek=function CHd(){return this.b};_.fk=function DHd(){return this.c};_.gk=function EHd(){throw vbb(new bgb)};_.hk=function FHd(a){throw vbb(new bgb)};_.ik=function GHd(a){this.a=a};_.jk=function HHd(a){this.b=a};_.kk=function IHd(a){this.c=a};var D5=mdb(qte,'DynamicEObjectImpl/DynamicEPropertiesHolderImpl',1377);bcb(510,150,{105:1,92:1,90:1,590:1,147:1,56:1,108:1,49:1,97:1,510:1,150:1,114:1,115:1},RHd);_.Qg=function SHd(a){return KHd(this,a)};_._g=function THd(a,b,c){var d;switch(a){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),this.Ab;case 1:return this.d;case 2:return c?(!this.b&&(this.b=new sId((jGd(),fGd),x6,this)),this.b):(!this.b&&(this.b=new sId((jGd(),fGd),x6,this)),FAd(this.b));case 3:return MHd(this);case 4:return !this.a&&(this.a=new xMd(m5,this,4)),this.a;case 5:return !this.c&&(this.c=new _4d(m5,this,5)),this.c;}return bid(this,a-aLd((jGd(),OFd)),XKd((d=BD(Ajd(this,16),26),!d?OFd:d),a),b,c)};_.hh=function UHd(a,b,c){var d,e,f;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Sxd(this.Ab,a,c);case 3:!!this.Cb&&(c=(e=this.Db>>16,e>=0?KHd(this,c):this.Cb.ih(this,-1-e,null,c)));return JHd(this,BD(a,147),c);}return f=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),OFd):d),b),66),f.Nj().Qj(this,yjd(this),b-aLd((jGd(),OFd)),a,c)};_.jh=function VHd(a,b,c){var d,e;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Txd(this.Ab,a,c);case 2:return !this.b&&(this.b=new sId((jGd(),fGd),x6,this)),bId(this.b,a,c);case 3:return JHd(this,null,c);case 4:return !this.a&&(this.a=new xMd(m5,this,4)),Txd(this.a,a,c);}return e=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),OFd):d),b),66),e.Nj().Rj(this,yjd(this),b-aLd((jGd(),OFd)),a,c)};_.lh=function WHd(a){var b;switch(a){case 0:return !!this.Ab&&this.Ab.i!=0;case 1:return this.d!=null;case 2:return !!this.b&&this.b.f!=0;case 3:return !!MHd(this);case 4:return !!this.a&&this.a.i!=0;case 5:return !!this.c&&this.c.i!=0;}return cid(this,a-aLd((jGd(),OFd)),XKd((b=BD(Ajd(this,16),26),!b?OFd:b),a))};_.sh=function XHd(a,b){var c;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);!this.Ab&&(this.Ab=new cUd(a5,this,0,3));ytd(this.Ab,BD(b,14));return;case 1:OHd(this,GD(b));return;case 2:!this.b&&(this.b=new sId((jGd(),fGd),x6,this));cId(this.b,b);return;case 3:NHd(this,BD(b,147));return;case 4:!this.a&&(this.a=new xMd(m5,this,4));Uxd(this.a);!this.a&&(this.a=new xMd(m5,this,4));ytd(this.a,BD(b,14));return;case 5:!this.c&&(this.c=new _4d(m5,this,5));Uxd(this.c);!this.c&&(this.c=new _4d(m5,this,5));ytd(this.c,BD(b,14));return;}did(this,a-aLd((jGd(),OFd)),XKd((c=BD(Ajd(this,16),26),!c?OFd:c),a),b)};_.zh=function YHd(){return jGd(),OFd};_.Bh=function ZHd(a){var b;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);return;case 1:PHd(this,null);return;case 2:!this.b&&(this.b=new sId((jGd(),fGd),x6,this));this.b.c.$b();return;case 3:NHd(this,null);return;case 4:!this.a&&(this.a=new xMd(m5,this,4));Uxd(this.a);return;case 5:!this.c&&(this.c=new _4d(m5,this,5));Uxd(this.c);return;}eid(this,a-aLd((jGd(),OFd)),XKd((b=BD(Ajd(this,16),26),!b?OFd:b),a))};_.Ib=function $Hd(){return QHd(this)};_.d=null;var G5=mdb(qte,'EAnnotationImpl',510);bcb(151,705,Ave,dId);_.Xh=function eId(a,b){_Hd(this,a,BD(b,42))};_.lk=function fId(a,b){return aId(this,BD(a,42),b)};_.pi=function gId(a){return BD(BD(this.c,69).pi(a),133)};_.Zh=function hId(){return BD(this.c,69).Zh()};_.$h=function iId(){return BD(this.c,69).$h()};_._h=function jId(a){return BD(this.c,69)._h(a)};_.mk=function kId(a,b){return bId(this,a,b)};_.Wj=function lId(a){return BD(this.c,76).Wj(a)};_.rj=function mId(){};_.fj=function nId(){return BD(this.c,76).fj()};_.tj=function oId(a,b,c){var d;d=BD(bKd(this.b).Nh().Jh(this.b),133);d.Th(a);d.Uh(b);d.ed(c);return d};_.uj=function pId(){return new W5d(this)};_.Wb=function qId(a){cId(this,a)};_.Xj=function rId(){BD(this.c,76).Xj()};var y9=mdb(yve,'EcoreEMap',151);bcb(158,151,Ave,sId);_.qj=function tId(){var a,b,c,d,e,f;if(this.d==null){f=KC(y4,jve,63,2*this.f+1,0,1);for(c=this.c.Kc();c.e!=c.i.gc();){b=BD(c.nj(),133);d=b.Sh();e=(d&Ohe)%f.length;a=f[e];!a&&(a=f[e]=new W5d(this));a.Fc(b)}this.d=f}};var F5=mdb(qte,'EAnnotationImpl/1',158);bcb(284,438,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,472:1,49:1,97:1,150:1,284:1,114:1,115:1});_._g=function GId(a,b,c){var d,e;switch(a){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Bcb(),(this.Bb&256)!=0?true:false;case 3:return Bcb(),(this.Bb&512)!=0?true:false;case 4:return meb(this.s);case 5:return meb(this.t);case 6:return Bcb(),this.$j()?true:false;case 7:return Bcb(),e=this.s,e>=1?true:false;case 8:if(b)return wId(this);return this.r;case 9:return this.q;}return bid(this,a-aLd(this.zh()),XKd((d=BD(Ajd(this,16),26),!d?this.zh():d),a),b,c)};_.jh=function HId(a,b,c){var d,e;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Txd(this.Ab,a,c);case 9:return vId(this,c);}return e=BD(XKd((d=BD(Ajd(this,16),26),!d?this.zh():d),b),66),e.Nj().Rj(this,yjd(this),b-aLd(this.zh()),a,c)};_.lh=function IId(a){var b,c;switch(a){case 0:return !!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return (this.Bb&256)==0;case 3:return (this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return this.$j();case 7:return c=this.s,c>=1;case 8:return !!this.r&&!this.q.e&&LQd(this.q).i==0;case 9:return !!this.q&&!(!!this.r&&!this.q.e&&LQd(this.q).i==0);}return cid(this,a-aLd(this.zh()),XKd((b=BD(Ajd(this,16),26),!b?this.zh():b),a))};_.sh=function JId(a,b){var c,d;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);!this.Ab&&(this.Ab=new cUd(a5,this,0,3));ytd(this.Ab,BD(b,14));return;case 1:this.Lh(GD(b));return;case 2:BId(this,Ccb(DD(b)));return;case 3:CId(this,Ccb(DD(b)));return;case 4:AId(this,BD(b,19).a);return;case 5:this.ok(BD(b,19).a);return;case 8:yId(this,BD(b,138));return;case 9:d=xId(this,BD(b,87),null);!!d&&d.Fi();return;}did(this,a-aLd(this.zh()),XKd((c=BD(Ajd(this,16),26),!c?this.zh():c),a),b)};_.zh=function KId(){return jGd(),hGd};_.Bh=function LId(a){var b,c;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);return;case 1:this.Lh(null);return;case 2:BId(this,true);return;case 3:CId(this,true);return;case 4:AId(this,0);return;case 5:this.ok(1);return;case 8:yId(this,null);return;case 9:c=xId(this,null,null);!!c&&c.Fi();return;}eid(this,a-aLd(this.zh()),XKd((b=BD(Ajd(this,16),26),!b?this.zh():b),a))};_.Gh=function MId(){wId(this);this.Bb|=1};_.Yj=function NId(){return wId(this)};_.Zj=function OId(){return this.t};_.$j=function PId(){var a;return a=this.t,a>1||a==-1};_.hi=function QId(){return (this.Bb&512)!=0};_.nk=function RId(a,b){return zId(this,a,b)};_.ok=function SId(a){DId(this,a)};_.Ib=function TId(){return EId(this)};_.s=0;_.t=1;var v7=mdb(qte,'ETypedElementImpl',284);bcb(449,284,{105:1,92:1,90:1,147:1,191:1,56:1,170:1,66:1,108:1,472:1,49:1,97:1,150:1,449:1,284:1,114:1,115:1,677:1});_.Qg=function iJd(a){return UId(this,a)};_._g=function jJd(a,b,c){var d,e;switch(a){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Bcb(),(this.Bb&256)!=0?true:false;case 3:return Bcb(),(this.Bb&512)!=0?true:false;case 4:return meb(this.s);case 5:return meb(this.t);case 6:return Bcb(),this.$j()?true:false;case 7:return Bcb(),e=this.s,e>=1?true:false;case 8:if(b)return wId(this);return this.r;case 9:return this.q;case 10:return Bcb(),(this.Bb&zte)!=0?true:false;case 11:return Bcb(),(this.Bb&Dve)!=0?true:false;case 12:return Bcb(),(this.Bb&Rje)!=0?true:false;case 13:return this.j;case 14:return VId(this);case 15:return Bcb(),(this.Bb&Cve)!=0?true:false;case 16:return Bcb(),(this.Bb&oie)!=0?true:false;case 17:return WId(this);}return bid(this,a-aLd(this.zh()),XKd((d=BD(Ajd(this,16),26),!d?this.zh():d),a),b,c)};_.hh=function kJd(a,b,c){var d,e,f;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Sxd(this.Ab,a,c);case 17:!!this.Cb&&(c=(e=this.Db>>16,e>=0?UId(this,c):this.Cb.ih(this,-1-e,null,c)));return _hd(this,a,17,c);}return f=BD(XKd((d=BD(Ajd(this,16),26),!d?this.zh():d),b),66),f.Nj().Qj(this,yjd(this),b-aLd(this.zh()),a,c)};_.jh=function lJd(a,b,c){var d,e;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Txd(this.Ab,a,c);case 9:return vId(this,c);case 17:return _hd(this,null,17,c);}return e=BD(XKd((d=BD(Ajd(this,16),26),!d?this.zh():d),b),66),e.Nj().Rj(this,yjd(this),b-aLd(this.zh()),a,c)};_.lh=function mJd(a){var b,c;switch(a){case 0:return !!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return (this.Bb&256)==0;case 3:return (this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return this.$j();case 7:return c=this.s,c>=1;case 8:return !!this.r&&!this.q.e&&LQd(this.q).i==0;case 9:return !!this.q&&!(!!this.r&&!this.q.e&&LQd(this.q).i==0);case 10:return (this.Bb&zte)==0;case 11:return (this.Bb&Dve)!=0;case 12:return (this.Bb&Rje)!=0;case 13:return this.j!=null;case 14:return VId(this)!=null;case 15:return (this.Bb&Cve)!=0;case 16:return (this.Bb&oie)!=0;case 17:return !!WId(this);}return cid(this,a-aLd(this.zh()),XKd((b=BD(Ajd(this,16),26),!b?this.zh():b),a))};_.sh=function nJd(a,b){var c,d;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);!this.Ab&&(this.Ab=new cUd(a5,this,0,3));ytd(this.Ab,BD(b,14));return;case 1:cJd(this,GD(b));return;case 2:BId(this,Ccb(DD(b)));return;case 3:CId(this,Ccb(DD(b)));return;case 4:AId(this,BD(b,19).a);return;case 5:this.ok(BD(b,19).a);return;case 8:yId(this,BD(b,138));return;case 9:d=xId(this,BD(b,87),null);!!d&&d.Fi();return;case 10:ZId(this,Ccb(DD(b)));return;case 11:fJd(this,Ccb(DD(b)));return;case 12:dJd(this,Ccb(DD(b)));return;case 13:$Id(this,GD(b));return;case 15:eJd(this,Ccb(DD(b)));return;case 16:aJd(this,Ccb(DD(b)));return;}did(this,a-aLd(this.zh()),XKd((c=BD(Ajd(this,16),26),!c?this.zh():c),a),b)};_.zh=function oJd(){return jGd(),gGd};_.Bh=function pJd(a){var b,c;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);return;case 1:JD(this.Cb,88)&&XMd($Kd(BD(this.Cb,88)),4);pnd(this,null);return;case 2:BId(this,true);return;case 3:CId(this,true);return;case 4:AId(this,0);return;case 5:this.ok(1);return;case 8:yId(this,null);return;case 9:c=xId(this,null,null);!!c&&c.Fi();return;case 10:ZId(this,true);return;case 11:fJd(this,false);return;case 12:dJd(this,false);return;case 13:this.i=null;_Id(this,null);return;case 15:eJd(this,false);return;case 16:aJd(this,false);return;}eid(this,a-aLd(this.zh()),XKd((b=BD(Ajd(this,16),26),!b?this.zh():b),a))};_.Gh=function qJd(){a2d(q1d((O6d(),M6d),this));wId(this);this.Bb|=1};_.Gj=function rJd(){return this.f};_.zj=function sJd(){return VId(this)};_.Hj=function tJd(){return WId(this)};_.Lj=function uJd(){return null};_.pk=function vJd(){return this.k};_.aj=function wJd(){return this.n};_.Mj=function xJd(){return XId(this)};_.Nj=function yJd(){var a,b,c,d,e,f,g,h,i;if(!this.p){c=WId(this);(c.i==null&&TKd(c),c.i).length;d=this.Lj();!!d&&aLd(WId(d));e=wId(this);g=e.Bj();a=!g?null:(g.i&1)!=0?g==sbb?wI:g==WD?JI:g==VD?FI:g==UD?BI:g==XD?MI:g==rbb?UI:g==SD?xI:yI:g;b=VId(this);h=e.zj();n6d(this);(this.Bb&oie)!=0&&(!!(f=t1d((O6d(),M6d),c))&&f!=this||!!(f=_1d(q1d(M6d,this))))?(this.p=new zVd(this,f)):this.$j()?this.rk()?!d?(this.Bb&Cve)!=0?!a?this.sk()?(this.p=new KVd(42,this)):(this.p=new KVd(0,this)):a==CK?(this.p=new IVd(50,J4,this)):this.sk()?(this.p=new IVd(43,a,this)):(this.p=new IVd(1,a,this)):!a?this.sk()?(this.p=new KVd(44,this)):(this.p=new KVd(2,this)):a==CK?(this.p=new IVd(41,J4,this)):this.sk()?(this.p=new IVd(45,a,this)):(this.p=new IVd(3,a,this)):(this.Bb&Cve)!=0?!a?this.sk()?(this.p=new LVd(46,this,d)):(this.p=new LVd(4,this,d)):this.sk()?(this.p=new JVd(47,a,this,d)):(this.p=new JVd(5,a,this,d)):!a?this.sk()?(this.p=new LVd(48,this,d)):(this.p=new LVd(6,this,d)):this.sk()?(this.p=new JVd(49,a,this,d)):(this.p=new JVd(7,a,this,d)):JD(e,148)?a==E9?(this.p=new KVd(40,this)):(this.Bb&512)!=0?(this.Bb&Cve)!=0?!a?(this.p=new KVd(8,this)):(this.p=new IVd(9,a,this)):!a?(this.p=new KVd(10,this)):(this.p=new IVd(11,a,this)):(this.Bb&Cve)!=0?!a?(this.p=new KVd(12,this)):(this.p=new IVd(13,a,this)):!a?(this.p=new KVd(14,this)):(this.p=new IVd(15,a,this)):!d?this.sk()?(this.Bb&Cve)!=0?!a?(this.p=new KVd(16,this)):(this.p=new IVd(17,a,this)):!a?(this.p=new KVd(18,this)):(this.p=new IVd(19,a,this)):(this.Bb&Cve)!=0?!a?(this.p=new KVd(20,this)):(this.p=new IVd(21,a,this)):!a?(this.p=new KVd(22,this)):(this.p=new IVd(23,a,this)):(i=d.t,i>1||i==-1?this.sk()?(this.Bb&Cve)!=0?!a?(this.p=new LVd(24,this,d)):(this.p=new JVd(25,a,this,d)):!a?(this.p=new LVd(26,this,d)):(this.p=new JVd(27,a,this,d)):(this.Bb&Cve)!=0?!a?(this.p=new LVd(28,this,d)):(this.p=new JVd(29,a,this,d)):!a?(this.p=new LVd(30,this,d)):(this.p=new JVd(31,a,this,d)):this.sk()?(this.Bb&Cve)!=0?!a?(this.p=new LVd(32,this,d)):(this.p=new JVd(33,a,this,d)):!a?(this.p=new LVd(34,this,d)):(this.p=new JVd(35,a,this,d)):(this.Bb&Cve)!=0?!a?(this.p=new LVd(36,this,d)):(this.p=new JVd(37,a,this,d)):!a?(this.p=new LVd(38,this,d)):(this.p=new JVd(39,a,this,d))):this.qk()?this.sk()?(this.p=new kWd(BD(e,26),this,d)):(this.p=new cWd(BD(e,26),this,d)):JD(e,148)?a==E9?(this.p=new KVd(40,this)):(this.Bb&Cve)!=0?!a?(this.p=new jXd(BD(e,148),b,h,this)):(this.p=new lXd(b,h,this,(CWd(),g==WD?yWd:g==sbb?tWd:g==XD?zWd:g==VD?xWd:g==UD?wWd:g==rbb?BWd:g==SD?uWd:g==TD?vWd:AWd))):!a?(this.p=new cXd(BD(e,148),b,h,this)):(this.p=new eXd(b,h,this,(CWd(),g==WD?yWd:g==sbb?tWd:g==XD?zWd:g==VD?xWd:g==UD?wWd:g==rbb?BWd:g==SD?uWd:g==TD?vWd:AWd))):this.rk()?!d?(this.Bb&Cve)!=0?this.sk()?(this.p=new FXd(BD(e,26),this)):(this.p=new DXd(BD(e,26),this)):this.sk()?(this.p=new BXd(BD(e,26),this)):(this.p=new zXd(BD(e,26),this)):(this.Bb&Cve)!=0?this.sk()?(this.p=new NXd(BD(e,26),this,d)):(this.p=new LXd(BD(e,26),this,d)):this.sk()?(this.p=new JXd(BD(e,26),this,d)):(this.p=new HXd(BD(e,26),this,d)):this.sk()?!d?(this.Bb&Cve)!=0?(this.p=new RXd(BD(e,26),this)):(this.p=new PXd(BD(e,26),this)):(this.Bb&Cve)!=0?(this.p=new VXd(BD(e,26),this,d)):(this.p=new TXd(BD(e,26),this,d)):!d?(this.Bb&Cve)!=0?(this.p=new XXd(BD(e,26),this)):(this.p=new nXd(BD(e,26),this)):(this.Bb&Cve)!=0?(this.p=new _Xd(BD(e,26),this,d)):(this.p=new ZXd(BD(e,26),this,d))}return this.p};_.Ij=function zJd(){return (this.Bb&zte)!=0};_.qk=function AJd(){return false};_.rk=function BJd(){return false};_.Jj=function CJd(){return (this.Bb&oie)!=0};_.Oj=function DJd(){return YId(this)};_.sk=function EJd(){return false};_.Kj=function FJd(){return (this.Bb&Cve)!=0};_.tk=function GJd(a){this.k=a};_.Lh=function HJd(a){cJd(this,a)};_.Ib=function IJd(){return gJd(this)};_.e=false;_.n=0;var n7=mdb(qte,'EStructuralFeatureImpl',449);bcb(322,449,{105:1,92:1,90:1,34:1,147:1,191:1,56:1,170:1,66:1,108:1,472:1,49:1,97:1,322:1,150:1,449:1,284:1,114:1,115:1,677:1},OJd);_._g=function PJd(a,b,c){var d,e;switch(a){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Bcb(),(this.Bb&256)!=0?true:false;case 3:return Bcb(),(this.Bb&512)!=0?true:false;case 4:return meb(this.s);case 5:return meb(this.t);case 6:return Bcb(),LJd(this)?true:false;case 7:return Bcb(),e=this.s,e>=1?true:false;case 8:if(b)return wId(this);return this.r;case 9:return this.q;case 10:return Bcb(),(this.Bb&zte)!=0?true:false;case 11:return Bcb(),(this.Bb&Dve)!=0?true:false;case 12:return Bcb(),(this.Bb&Rje)!=0?true:false;case 13:return this.j;case 14:return VId(this);case 15:return Bcb(),(this.Bb&Cve)!=0?true:false;case 16:return Bcb(),(this.Bb&oie)!=0?true:false;case 17:return WId(this);case 18:return Bcb(),(this.Bb&ote)!=0?true:false;case 19:if(b)return KJd(this);return JJd(this);}return bid(this,a-aLd((jGd(),PFd)),XKd((d=BD(Ajd(this,16),26),!d?PFd:d),a),b,c)};_.lh=function QJd(a){var b,c;switch(a){case 0:return !!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return (this.Bb&256)==0;case 3:return (this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return LJd(this);case 7:return c=this.s,c>=1;case 8:return !!this.r&&!this.q.e&&LQd(this.q).i==0;case 9:return !!this.q&&!(!!this.r&&!this.q.e&&LQd(this.q).i==0);case 10:return (this.Bb&zte)==0;case 11:return (this.Bb&Dve)!=0;case 12:return (this.Bb&Rje)!=0;case 13:return this.j!=null;case 14:return VId(this)!=null;case 15:return (this.Bb&Cve)!=0;case 16:return (this.Bb&oie)!=0;case 17:return !!WId(this);case 18:return (this.Bb&ote)!=0;case 19:return !!JJd(this);}return cid(this,a-aLd((jGd(),PFd)),XKd((b=BD(Ajd(this,16),26),!b?PFd:b),a))};_.sh=function RJd(a,b){var c,d;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);!this.Ab&&(this.Ab=new cUd(a5,this,0,3));ytd(this.Ab,BD(b,14));return;case 1:cJd(this,GD(b));return;case 2:BId(this,Ccb(DD(b)));return;case 3:CId(this,Ccb(DD(b)));return;case 4:AId(this,BD(b,19).a);return;case 5:NJd(this,BD(b,19).a);return;case 8:yId(this,BD(b,138));return;case 9:d=xId(this,BD(b,87),null);!!d&&d.Fi();return;case 10:ZId(this,Ccb(DD(b)));return;case 11:fJd(this,Ccb(DD(b)));return;case 12:dJd(this,Ccb(DD(b)));return;case 13:$Id(this,GD(b));return;case 15:eJd(this,Ccb(DD(b)));return;case 16:aJd(this,Ccb(DD(b)));return;case 18:MJd(this,Ccb(DD(b)));return;}did(this,a-aLd((jGd(),PFd)),XKd((c=BD(Ajd(this,16),26),!c?PFd:c),a),b)};_.zh=function SJd(){return jGd(),PFd};_.Bh=function TJd(a){var b,c;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);return;case 1:JD(this.Cb,88)&&XMd($Kd(BD(this.Cb,88)),4);pnd(this,null);return;case 2:BId(this,true);return;case 3:CId(this,true);return;case 4:AId(this,0);return;case 5:this.b=0;DId(this,1);return;case 8:yId(this,null);return;case 9:c=xId(this,null,null);!!c&&c.Fi();return;case 10:ZId(this,true);return;case 11:fJd(this,false);return;case 12:dJd(this,false);return;case 13:this.i=null;_Id(this,null);return;case 15:eJd(this,false);return;case 16:aJd(this,false);return;case 18:MJd(this,false);return;}eid(this,a-aLd((jGd(),PFd)),XKd((b=BD(Ajd(this,16),26),!b?PFd:b),a))};_.Gh=function UJd(){KJd(this);a2d(q1d((O6d(),M6d),this));wId(this);this.Bb|=1};_.$j=function VJd(){return LJd(this)};_.nk=function WJd(a,b){this.b=0;this.a=null;return zId(this,a,b)};_.ok=function XJd(a){NJd(this,a)};_.Ib=function YJd(){var a;if((this.Db&64)!=0)return gJd(this);a=new Jfb(gJd(this));a.a+=' (iD: ';Ffb(a,(this.Bb&ote)!=0);a.a+=')';return a.a};_.b=0;var H5=mdb(qte,'EAttributeImpl',322);bcb(351,438,{105:1,92:1,90:1,138:1,147:1,191:1,56:1,108:1,49:1,97:1,351:1,150:1,114:1,115:1,676:1});_.uk=function nKd(a){return a.Tg()==this};_.Qg=function oKd(a){return aKd(this,a)};_.Rg=function pKd(a,b){this.w=null;this.Db=b<<16|this.Db&255;this.Cb=a};_._g=function qKd(a,b,c){var d;switch(a){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.D!=null?this.D:this.B;case 3:return dKd(this);case 4:return this.zj();case 5:return this.F;case 6:if(b)return bKd(this);return ZJd(this);case 7:return !this.A&&(this.A=new K4d(u5,this,7)),this.A;}return bid(this,a-aLd(this.zh()),XKd((d=BD(Ajd(this,16),26),!d?this.zh():d),a),b,c)};_.hh=function rKd(a,b,c){var d,e,f;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Sxd(this.Ab,a,c);case 6:!!this.Cb&&(c=(e=this.Db>>16,e>=0?aKd(this,c):this.Cb.ih(this,-1-e,null,c)));return _hd(this,a,6,c);}return f=BD(XKd((d=BD(Ajd(this,16),26),!d?this.zh():d),b),66),f.Nj().Qj(this,yjd(this),b-aLd(this.zh()),a,c)};_.jh=function sKd(a,b,c){var d,e;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Txd(this.Ab,a,c);case 6:return _hd(this,null,6,c);case 7:return !this.A&&(this.A=new K4d(u5,this,7)),Txd(this.A,a,c);}return e=BD(XKd((d=BD(Ajd(this,16),26),!d?this.zh():d),b),66),e.Nj().Rj(this,yjd(this),b-aLd(this.zh()),a,c)};_.lh=function tKd(a){var b;switch(a){case 0:return !!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return !!dKd(this);case 4:return this.zj()!=null;case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return !!ZJd(this);case 7:return !!this.A&&this.A.i!=0;}return cid(this,a-aLd(this.zh()),XKd((b=BD(Ajd(this,16),26),!b?this.zh():b),a))};_.sh=function uKd(a,b){var c;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);!this.Ab&&(this.Ab=new cUd(a5,this,0,3));ytd(this.Ab,BD(b,14));return;case 1:lKd(this,GD(b));return;case 2:iKd(this,GD(b));return;case 5:kKd(this,GD(b));return;case 7:!this.A&&(this.A=new K4d(u5,this,7));Uxd(this.A);!this.A&&(this.A=new K4d(u5,this,7));ytd(this.A,BD(b,14));return;}did(this,a-aLd(this.zh()),XKd((c=BD(Ajd(this,16),26),!c?this.zh():c),a),b)};_.zh=function vKd(){return jGd(),RFd};_.Bh=function wKd(a){var b;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);return;case 1:JD(this.Cb,179)&&(BD(this.Cb,179).tb=null);pnd(this,null);return;case 2:$Jd(this,null);_Jd(this,this.D);return;case 5:kKd(this,null);return;case 7:!this.A&&(this.A=new K4d(u5,this,7));Uxd(this.A);return;}eid(this,a-aLd(this.zh()),XKd((b=BD(Ajd(this,16),26),!b?this.zh():b),a))};_.yj=function xKd(){var a;return this.G==-1&&(this.G=(a=bKd(this),a?HLd(a.Mh(),this):-1)),this.G};_.zj=function yKd(){return null};_.Aj=function zKd(){return bKd(this)};_.vk=function AKd(){return this.v};_.Bj=function BKd(){return dKd(this)};_.Cj=function CKd(){return this.D!=null?this.D:this.B};_.Dj=function DKd(){return this.F};_.wj=function EKd(a){return fKd(this,a)};_.wk=function FKd(a){this.v=a};_.xk=function GKd(a){gKd(this,a)};_.yk=function HKd(a){this.C=a};_.Lh=function IKd(a){lKd(this,a)};_.Ib=function JKd(){return mKd(this)};_.C=null;_.D=null;_.G=-1;var Z5=mdb(qte,'EClassifierImpl',351);bcb(88,351,{105:1,92:1,90:1,26:1,138:1,147:1,191:1,56:1,108:1,49:1,97:1,88:1,351:1,150:1,473:1,114:1,115:1,676:1},hLd);_.uk=function iLd(a){return dLd(this,a.Tg())};_._g=function jLd(a,b,c){var d;switch(a){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),this.Ab;case 1:return this.zb;case 2:return this.D!=null?this.D:this.B;case 3:return dKd(this);case 4:return null;case 5:return this.F;case 6:if(b)return bKd(this);return ZJd(this);case 7:return !this.A&&(this.A=new K4d(u5,this,7)),this.A;case 8:return Bcb(),(this.Bb&256)!=0?true:false;case 9:return Bcb(),(this.Bb&512)!=0?true:false;case 10:return _Kd(this);case 11:return !this.q&&(this.q=new cUd(n5,this,11,10)),this.q;case 12:return OKd(this);case 13:return SKd(this);case 14:return SKd(this),this.r;case 15:return OKd(this),this.k;case 16:return PKd(this);case 17:return RKd(this);case 18:return TKd(this);case 19:return UKd(this);case 20:return OKd(this),this.o;case 21:return !this.s&&(this.s=new cUd(t5,this,21,17)),this.s;case 22:return VKd(this);case 23:return QKd(this);}return bid(this,a-aLd((jGd(),QFd)),XKd((d=BD(Ajd(this,16),26),!d?QFd:d),a),b,c)};_.hh=function kLd(a,b,c){var d,e,f;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Sxd(this.Ab,a,c);case 6:!!this.Cb&&(c=(e=this.Db>>16,e>=0?aKd(this,c):this.Cb.ih(this,-1-e,null,c)));return _hd(this,a,6,c);case 11:return !this.q&&(this.q=new cUd(n5,this,11,10)),Sxd(this.q,a,c);case 21:return !this.s&&(this.s=new cUd(t5,this,21,17)),Sxd(this.s,a,c);}return f=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),QFd):d),b),66),f.Nj().Qj(this,yjd(this),b-aLd((jGd(),QFd)),a,c)};_.jh=function lLd(a,b,c){var d,e;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Txd(this.Ab,a,c);case 6:return _hd(this,null,6,c);case 7:return !this.A&&(this.A=new K4d(u5,this,7)),Txd(this.A,a,c);case 11:return !this.q&&(this.q=new cUd(n5,this,11,10)),Txd(this.q,a,c);case 21:return !this.s&&(this.s=new cUd(t5,this,21,17)),Txd(this.s,a,c);case 22:return Txd(VKd(this),a,c);}return e=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),QFd):d),b),66),e.Nj().Rj(this,yjd(this),b-aLd((jGd(),QFd)),a,c)};_.lh=function mLd(a){var b;switch(a){case 0:return !!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return !!dKd(this);case 4:return false;case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return !!ZJd(this);case 7:return !!this.A&&this.A.i!=0;case 8:return (this.Bb&256)!=0;case 9:return (this.Bb&512)!=0;case 10:return !!this.u&&VKd(this.u.a).i!=0&&!(!!this.n&&FMd(this.n));case 11:return !!this.q&&this.q.i!=0;case 12:return OKd(this).i!=0;case 13:return SKd(this).i!=0;case 14:return SKd(this),this.r.i!=0;case 15:return OKd(this),this.k.i!=0;case 16:return PKd(this).i!=0;case 17:return RKd(this).i!=0;case 18:return TKd(this).i!=0;case 19:return UKd(this).i!=0;case 20:return OKd(this),!!this.o;case 21:return !!this.s&&this.s.i!=0;case 22:return !!this.n&&FMd(this.n);case 23:return QKd(this).i!=0;}return cid(this,a-aLd((jGd(),QFd)),XKd((b=BD(Ajd(this,16),26),!b?QFd:b),a))};_.oh=function nLd(a){var b;b=this.i==null||!!this.q&&this.q.i!=0?null:YKd(this,a);return b?b:Bmd(this,a)};_.sh=function oLd(a,b){var c;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);!this.Ab&&(this.Ab=new cUd(a5,this,0,3));ytd(this.Ab,BD(b,14));return;case 1:lKd(this,GD(b));return;case 2:iKd(this,GD(b));return;case 5:kKd(this,GD(b));return;case 7:!this.A&&(this.A=new K4d(u5,this,7));Uxd(this.A);!this.A&&(this.A=new K4d(u5,this,7));ytd(this.A,BD(b,14));return;case 8:eLd(this,Ccb(DD(b)));return;case 9:fLd(this,Ccb(DD(b)));return;case 10:vwd(_Kd(this));ytd(_Kd(this),BD(b,14));return;case 11:!this.q&&(this.q=new cUd(n5,this,11,10));Uxd(this.q);!this.q&&(this.q=new cUd(n5,this,11,10));ytd(this.q,BD(b,14));return;case 21:!this.s&&(this.s=new cUd(t5,this,21,17));Uxd(this.s);!this.s&&(this.s=new cUd(t5,this,21,17));ytd(this.s,BD(b,14));return;case 22:Uxd(VKd(this));ytd(VKd(this),BD(b,14));return;}did(this,a-aLd((jGd(),QFd)),XKd((c=BD(Ajd(this,16),26),!c?QFd:c),a),b)};_.zh=function pLd(){return jGd(),QFd};_.Bh=function qLd(a){var b;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);return;case 1:JD(this.Cb,179)&&(BD(this.Cb,179).tb=null);pnd(this,null);return;case 2:$Jd(this,null);_Jd(this,this.D);return;case 5:kKd(this,null);return;case 7:!this.A&&(this.A=new K4d(u5,this,7));Uxd(this.A);return;case 8:eLd(this,false);return;case 9:fLd(this,false);return;case 10:!!this.u&&vwd(this.u);return;case 11:!this.q&&(this.q=new cUd(n5,this,11,10));Uxd(this.q);return;case 21:!this.s&&(this.s=new cUd(t5,this,21,17));Uxd(this.s);return;case 22:!!this.n&&Uxd(this.n);return;}eid(this,a-aLd((jGd(),QFd)),XKd((b=BD(Ajd(this,16),26),!b?QFd:b),a))};_.Gh=function rLd(){var a,b;OKd(this);SKd(this);PKd(this);RKd(this);TKd(this);UKd(this);QKd(this);oud(SMd($Kd(this)));if(this.s){for(a=0,b=this.s.i;a=0;--b){qud(this,b)}}return xud(this,a)};_.Xj=function nMd(){Uxd(this)};_.oi=function oMd(a,b){return LLd(this,a,b)};var t9=mdb(yve,'EcoreEList',622);bcb(496,622,Pve,pMd);_.ai=function qMd(){return false};_.aj=function rMd(){return this.c};_.bj=function sMd(){return false};_.Fk=function tMd(){return true};_.hi=function uMd(){return true};_.li=function vMd(a,b){return b};_.ni=function wMd(){return false};_.c=0;var d9=mdb(yve,'EObjectEList',496);bcb(85,496,Pve,xMd);_.bj=function yMd(){return true};_.Dk=function zMd(){return false};_.rk=function AMd(){return true};var Z8=mdb(yve,'EObjectContainmentEList',85);bcb(545,85,Pve,BMd);_.ci=function CMd(){this.b=true};_.fj=function DMd(){return this.b};_.Xj=function EMd(){var a;Uxd(this);if(oid(this.e)){a=this.b;this.b=false;Uhd(this.e,new qSd(this.e,2,this.c,a,false))}else{this.b=false}};_.b=false;var Y8=mdb(yve,'EObjectContainmentEList/Unsettable',545);bcb(1140,545,Pve,JMd);_.ii=function NMd(a,b){var c,d;return c=BD(Wxd(this,a,b),87),oid(this.e)&&GLd(this,new ESd(this.a,7,(jGd(),SFd),meb(b),(d=c.c,JD(d,88)?BD(d,26):_Fd),a)),c};_.jj=function OMd(a,b){return GMd(this,BD(a,87),b)};_.kj=function PMd(a,b){return HMd(this,BD(a,87),b)};_.lj=function QMd(a,b,c){return IMd(this,BD(a,87),BD(b,87),c)};_.Zi=function KMd(a,b,c,d,e){switch(a){case 3:{return FLd(this,a,b,c,d,this.i>1)}case 5:{return FLd(this,a,b,c,d,this.i-BD(c,15).gc()>0)}default:{return new pSd(this.e,a,this.c,b,c,d,true)}}};_.ij=function LMd(){return true};_.fj=function MMd(){return FMd(this)};_.Xj=function RMd(){Uxd(this)};var N5=mdb(qte,'EClassImpl/1',1140);bcb(1154,1153,dve);_.ui=function VMd(a){var b,c,d,e,f,g,h;c=a.xi();if(c!=8){d=UMd(a);if(d==0){switch(c){case 1:case 9:{h=a.Bi();if(h!=null){b=$Kd(BD(h,473));!b.c&&(b.c=new xYd);Ftd(b.c,a.Ai())}g=a.zi();if(g!=null){e=BD(g,473);if((e.Bb&1)==0){b=$Kd(e);!b.c&&(b.c=new xYd);wtd(b.c,BD(a.Ai(),26))}}break}case 3:{g=a.zi();if(g!=null){e=BD(g,473);if((e.Bb&1)==0){b=$Kd(e);!b.c&&(b.c=new xYd);wtd(b.c,BD(a.Ai(),26))}}break}case 5:{g=a.zi();if(g!=null){for(f=BD(g,14).Kc();f.Ob();){e=BD(f.Pb(),473);if((e.Bb&1)==0){b=$Kd(e);!b.c&&(b.c=new xYd);wtd(b.c,BD(a.Ai(),26))}}}break}case 4:{h=a.Bi();if(h!=null){e=BD(h,473);if((e.Bb&1)==0){b=$Kd(e);!b.c&&(b.c=new xYd);Ftd(b.c,a.Ai())}}break}case 6:{h=a.Bi();if(h!=null){for(f=BD(h,14).Kc();f.Ob();){e=BD(f.Pb(),473);if((e.Bb&1)==0){b=$Kd(e);!b.c&&(b.c=new xYd);Ftd(b.c,a.Ai())}}}break}}}this.Hk(d)}};_.Hk=function WMd(a){TMd(this,a)};_.b=63;var p7=mdb(qte,'ESuperAdapter',1154);bcb(1155,1154,dve,YMd);_.Hk=function ZMd(a){XMd(this,a)};var I5=mdb(qte,'EClassImpl/10',1155);bcb(1144,696,Pve);_.Vh=function $Md(a,b){return iud(this,a,b)};_.Wh=function _Md(a){return jud(this,a)};_.Xh=function aNd(a,b){kud(this,a,b)};_.Yh=function bNd(a){lud(this,a)};_.pi=function dNd(a){return nud(this,a)};_.mi=function lNd(a,b){return uud(this,a,b)};_.lk=function cNd(a,b){throw vbb(new bgb)};_.Zh=function eNd(){return new $yd(this)};_.$h=function fNd(){return new bzd(this)};_._h=function gNd(a){return ztd(this,a)};_.mk=function hNd(a,b){throw vbb(new bgb)};_.Wj=function iNd(a){return this};_.fj=function jNd(){return this.i!=0};_.Wb=function kNd(a){throw vbb(new bgb)};_.Xj=function mNd(){throw vbb(new bgb)};var s9=mdb(yve,'EcoreEList/UnmodifiableEList',1144);bcb(319,1144,Pve,nNd);_.ni=function oNd(){return false};var r9=mdb(yve,'EcoreEList/UnmodifiableEList/FastCompare',319);bcb(1147,319,Pve,rNd);_.Xc=function sNd(a){var b,c,d;if(JD(a,170)){b=BD(a,170);c=b.aj();if(c!=-1){for(d=this.i;c4){if(this.wj(a)){if(this.rk()){d=BD(a,49);c=d.Ug();h=c==this.b&&(this.Dk()?d.Og(d.Vg(),BD(XKd(wjd(this.b),this.aj()).Yj(),26).Bj())==zUd(BD(XKd(wjd(this.b),this.aj()),18)).n:-1-d.Vg()==this.aj());if(this.Ek()&&!h&&!c&&!!d.Zg()){for(e=0;e1||d==-1)}else{return false}};_.Dk=function COd(){var a,b,c;b=XKd(wjd(this.b),this.aj());if(JD(b,99)){a=BD(b,18);c=zUd(a);return !!c}else{return false}};_.Ek=function DOd(){var a,b;b=XKd(wjd(this.b),this.aj());if(JD(b,99)){a=BD(b,18);return (a.Bb&Tje)!=0}else{return false}};_.Xc=function EOd(a){var b,c,d,e;d=this.Qi(a);if(d>=0)return d;if(this.Fk()){for(c=0,e=this.Vi();c=0;--a){nOd(this,a,this.Oi(a))}}return this.Wi()};_.Qc=function QOd(a){var b;if(this.Ek()){for(b=this.Vi()-1;b>=0;--b){nOd(this,b,this.Oi(b))}}return this.Xi(a)};_.Xj=function ROd(){vwd(this)};_.oi=function SOd(a,b){return pOd(this,a,b)};var K8=mdb(yve,'DelegatingEcoreEList',742);bcb(1150,742,Uve,YOd);_.Hi=function _Od(a,b){TOd(this,a,BD(b,26))};_.Ii=function aPd(a){UOd(this,BD(a,26))};_.Oi=function gPd(a){var b,c;return b=BD(qud(VKd(this.a),a),87),c=b.c,JD(c,88)?BD(c,26):(jGd(),_Fd)};_.Ti=function lPd(a){var b,c;return b=BD(Xxd(VKd(this.a),a),87),c=b.c,JD(c,88)?BD(c,26):(jGd(),_Fd)};_.Ui=function mPd(a,b){return WOd(this,a,BD(b,26))};_.ai=function ZOd(){return false};_.Zi=function $Od(a,b,c,d,e){return null};_.Ji=function bPd(){return new EPd(this)};_.Ki=function cPd(){Uxd(VKd(this.a))};_.Li=function dPd(a){return VOd(this,a)};_.Mi=function ePd(a){var b,c;for(c=a.Kc();c.Ob();){b=c.Pb();if(!VOd(this,b)){return false}}return true};_.Ni=function fPd(a){var b,c,d;if(JD(a,15)){d=BD(a,15);if(d.gc()==VKd(this.a).i){for(b=d.Kc(),c=new Fyd(this);b.Ob();){if(PD(b.Pb())!==PD(Dyd(c))){return false}}return true}}return false};_.Pi=function hPd(){var a,b,c,d,e;c=1;for(b=new Fyd(VKd(this.a));b.e!=b.i.gc();){a=BD(Dyd(b),87);d=(e=a.c,JD(e,88)?BD(e,26):(jGd(),_Fd));c=31*c+(!d?0:FCb(d))}return c};_.Qi=function iPd(a){var b,c,d,e;d=0;for(c=new Fyd(VKd(this.a));c.e!=c.i.gc();){b=BD(Dyd(c),87);if(PD(a)===PD((e=b.c,JD(e,88)?BD(e,26):(jGd(),_Fd)))){return d}++d}return -1};_.Ri=function jPd(){return VKd(this.a).i==0};_.Si=function kPd(){return null};_.Vi=function nPd(){return VKd(this.a).i};_.Wi=function oPd(){var a,b,c,d,e,f;f=VKd(this.a).i;e=KC(SI,Uhe,1,f,5,1);c=0;for(b=new Fyd(VKd(this.a));b.e!=b.i.gc();){a=BD(Dyd(b),87);e[c++]=(d=a.c,JD(d,88)?BD(d,26):(jGd(),_Fd))}return e};_.Xi=function pPd(a){var b,c,d,e,f,g,h;h=VKd(this.a).i;if(a.lengthh&&NC(a,h,null);d=0;for(c=new Fyd(VKd(this.a));c.e!=c.i.gc();){b=BD(Dyd(c),87);f=(g=b.c,JD(g,88)?BD(g,26):(jGd(),_Fd));NC(a,d++,f)}return a};_.Yi=function qPd(){var a,b,c,d,e;e=new Hfb;e.a+='[';a=VKd(this.a);for(b=0,d=VKd(this.a).i;b>16,e>=0?aKd(this,c):this.Cb.ih(this,-1-e,null,c)));return _hd(this,a,6,c);case 9:return !this.a&&(this.a=new cUd(g5,this,9,5)),Sxd(this.a,a,c);}return f=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),UFd):d),b),66),f.Nj().Qj(this,yjd(this),b-aLd((jGd(),UFd)),a,c)};_.jh=function dQd(a,b,c){var d,e;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Txd(this.Ab,a,c);case 6:return _hd(this,null,6,c);case 7:return !this.A&&(this.A=new K4d(u5,this,7)),Txd(this.A,a,c);case 9:return !this.a&&(this.a=new cUd(g5,this,9,5)),Txd(this.a,a,c);}return e=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),UFd):d),b),66),e.Nj().Rj(this,yjd(this),b-aLd((jGd(),UFd)),a,c)};_.lh=function eQd(a){var b;switch(a){case 0:return !!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.D!=null&&this.D==this.F;case 3:return !!dKd(this);case 4:return !!$Pd(this);case 5:return this.F!=null&&this.F!=this.D&&this.F!=this.B;case 6:return !!ZJd(this);case 7:return !!this.A&&this.A.i!=0;case 8:return (this.Bb&256)==0;case 9:return !!this.a&&this.a.i!=0;}return cid(this,a-aLd((jGd(),UFd)),XKd((b=BD(Ajd(this,16),26),!b?UFd:b),a))};_.sh=function fQd(a,b){var c;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);!this.Ab&&(this.Ab=new cUd(a5,this,0,3));ytd(this.Ab,BD(b,14));return;case 1:lKd(this,GD(b));return;case 2:iKd(this,GD(b));return;case 5:kKd(this,GD(b));return;case 7:!this.A&&(this.A=new K4d(u5,this,7));Uxd(this.A);!this.A&&(this.A=new K4d(u5,this,7));ytd(this.A,BD(b,14));return;case 8:LPd(this,Ccb(DD(b)));return;case 9:!this.a&&(this.a=new cUd(g5,this,9,5));Uxd(this.a);!this.a&&(this.a=new cUd(g5,this,9,5));ytd(this.a,BD(b,14));return;}did(this,a-aLd((jGd(),UFd)),XKd((c=BD(Ajd(this,16),26),!c?UFd:c),a),b)};_.zh=function gQd(){return jGd(),UFd};_.Bh=function hQd(a){var b;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);return;case 1:JD(this.Cb,179)&&(BD(this.Cb,179).tb=null);pnd(this,null);return;case 2:$Jd(this,null);_Jd(this,this.D);return;case 5:kKd(this,null);return;case 7:!this.A&&(this.A=new K4d(u5,this,7));Uxd(this.A);return;case 8:LPd(this,true);return;case 9:!this.a&&(this.a=new cUd(g5,this,9,5));Uxd(this.a);return;}eid(this,a-aLd((jGd(),UFd)),XKd((b=BD(Ajd(this,16),26),!b?UFd:b),a))};_.Gh=function iQd(){var a,b;if(this.a){for(a=0,b=this.a.i;a>16==5?BD(this.Cb,671):null;}return bid(this,a-aLd((jGd(),VFd)),XKd((d=BD(Ajd(this,16),26),!d?VFd:d),a),b,c)};_.hh=function uQd(a,b,c){var d,e,f;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Sxd(this.Ab,a,c);case 5:!!this.Cb&&(c=(e=this.Db>>16,e>=0?mQd(this,c):this.Cb.ih(this,-1-e,null,c)));return _hd(this,a,5,c);}return f=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),VFd):d),b),66),f.Nj().Qj(this,yjd(this),b-aLd((jGd(),VFd)),a,c)};_.jh=function vQd(a,b,c){var d,e;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Txd(this.Ab,a,c);case 5:return _hd(this,null,5,c);}return e=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),VFd):d),b),66),e.Nj().Rj(this,yjd(this),b-aLd((jGd(),VFd)),a,c)};_.lh=function wQd(a){var b;switch(a){case 0:return !!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return this.d!=0;case 3:return !!this.b;case 4:return this.c!=null;case 5:return !!(this.Db>>16==5?BD(this.Cb,671):null);}return cid(this,a-aLd((jGd(),VFd)),XKd((b=BD(Ajd(this,16),26),!b?VFd:b),a))};_.sh=function xQd(a,b){var c;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);!this.Ab&&(this.Ab=new cUd(a5,this,0,3));ytd(this.Ab,BD(b,14));return;case 1:pnd(this,GD(b));return;case 2:qQd(this,BD(b,19).a);return;case 3:oQd(this,BD(b,1940));return;case 4:pQd(this,GD(b));return;}did(this,a-aLd((jGd(),VFd)),XKd((c=BD(Ajd(this,16),26),!c?VFd:c),a),b)};_.zh=function yQd(){return jGd(),VFd};_.Bh=function zQd(a){var b;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);return;case 1:pnd(this,null);return;case 2:qQd(this,0);return;case 3:oQd(this,null);return;case 4:pQd(this,null);return;}eid(this,a-aLd((jGd(),VFd)),XKd((b=BD(Ajd(this,16),26),!b?VFd:b),a))};_.Ib=function BQd(){var a;return a=this.c,a==null?this.zb:a};_.b=null;_.c=null;_.d=0;var a6=mdb(qte,'EEnumLiteralImpl',573);var c6=odb(qte,'EFactoryImpl/InternalEDateTimeFormat');bcb(489,1,{2015:1},EQd);var b6=mdb(qte,'EFactoryImpl/1ClientInternalEDateTimeFormat',489);bcb(241,115,{105:1,92:1,90:1,87:1,56:1,108:1,49:1,97:1,241:1,114:1,115:1},UQd);_.Sg=function VQd(a,b,c){var d;c=_hd(this,a,b,c);if(!!this.e&&JD(a,170)){d=MQd(this,this.e);d!=this.c&&(c=QQd(this,d,c))}return c};_._g=function WQd(a,b,c){var d;switch(a){case 0:return this.f;case 1:return !this.d&&(this.d=new xMd(j5,this,1)),this.d;case 2:if(b)return KQd(this);return this.c;case 3:return this.b;case 4:return this.e;case 5:if(b)return JQd(this);return this.a;}return bid(this,a-aLd((jGd(),XFd)),XKd((d=BD(Ajd(this,16),26),!d?XFd:d),a),b,c)};_.jh=function XQd(a,b,c){var d,e;switch(b){case 0:return IQd(this,null,c);case 1:return !this.d&&(this.d=new xMd(j5,this,1)),Txd(this.d,a,c);case 3:return GQd(this,null,c);}return e=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),XFd):d),b),66),e.Nj().Rj(this,yjd(this),b-aLd((jGd(),XFd)),a,c)};_.lh=function YQd(a){var b;switch(a){case 0:return !!this.f;case 1:return !!this.d&&this.d.i!=0;case 2:return !!this.c;case 3:return !!this.b;case 4:return !!this.e;case 5:return !!this.a;}return cid(this,a-aLd((jGd(),XFd)),XKd((b=BD(Ajd(this,16),26),!b?XFd:b),a))};_.sh=function ZQd(a,b){var c;switch(a){case 0:SQd(this,BD(b,87));return;case 1:!this.d&&(this.d=new xMd(j5,this,1));Uxd(this.d);!this.d&&(this.d=new xMd(j5,this,1));ytd(this.d,BD(b,14));return;case 3:PQd(this,BD(b,87));return;case 4:RQd(this,BD(b,836));return;case 5:NQd(this,BD(b,138));return;}did(this,a-aLd((jGd(),XFd)),XKd((c=BD(Ajd(this,16),26),!c?XFd:c),a),b)};_.zh=function $Qd(){return jGd(),XFd};_.Bh=function _Qd(a){var b;switch(a){case 0:SQd(this,null);return;case 1:!this.d&&(this.d=new xMd(j5,this,1));Uxd(this.d);return;case 3:PQd(this,null);return;case 4:RQd(this,null);return;case 5:NQd(this,null);return;}eid(this,a-aLd((jGd(),XFd)),XKd((b=BD(Ajd(this,16),26),!b?XFd:b),a))};_.Ib=function aRd(){var a;a=new Wfb(Eid(this));a.a+=' (expression: ';TQd(this,a);a.a+=')';return a.a};var FQd;var e6=mdb(qte,'EGenericTypeImpl',241);bcb(1969,1964,Vve);_.Xh=function cRd(a,b){bRd(this,a,b)};_.lk=function dRd(a,b){bRd(this,this.gc(),a);return b};_.pi=function eRd(a){return Ut(this.Gi(),a)};_.Zh=function fRd(){return this.$h()};_.Gi=function gRd(){return new O0d(this)};_.$h=function hRd(){return this._h(0)};_._h=function iRd(a){return this.Gi().Zc(a)};_.mk=function jRd(a,b){ze(this,a,true);return b};_.ii=function kRd(a,b){var c,d;d=Vt(this,b);c=this.Zc(a);c.Rb(d);return d};_.ji=function lRd(a,b){var c;ze(this,b,true);c=this.Zc(a);c.Rb(b)};var B8=mdb(yve,'AbstractSequentialInternalEList',1969);bcb(486,1969,Vve,qRd);_.pi=function rRd(a){return Ut(this.Gi(),a)};_.Zh=function sRd(){if(this.b==null){return LRd(),LRd(),KRd}return this.Jk()};_.Gi=function tRd(){return new w4d(this.a,this.b)};_.$h=function uRd(){if(this.b==null){return LRd(),LRd(),KRd}return this.Jk()};_._h=function vRd(a){var b,c;if(this.b==null){if(a<0||a>1){throw vbb(new qcb(gve+a+', size=0'))}return LRd(),LRd(),KRd}c=this.Jk();for(b=0;b0){b=this.c[--this.d];if((!this.e||b.Gj()!=x2||b.aj()!=0)&&(!this.Mk()||this.b.mh(b))){f=this.b.bh(b,this.Lk());this.f=(Q6d(),BD(b,66).Oj());if(this.f||b.$j()){if(this.Lk()){d=BD(f,15);this.k=d}else{d=BD(f,69);this.k=this.j=d}if(JD(this.k,54)){this.o=this.k.gc();this.n=this.o}else{this.p=!this.j?this.k.Zc(this.k.gc()):this.j._h(this.k.gc())}if(!this.p?PRd(this):QRd(this,this.p)){e=!this.p?!this.j?this.k.Xb(--this.n):this.j.pi(--this.n):this.p.Ub();if(this.f){a=BD(e,72);a.ak();c=a.dd();this.i=c}else{c=e;this.i=c}this.g=-3;return true}}else if(f!=null){this.k=null;this.p=null;c=f;this.i=c;this.g=-2;return true}}}this.k=null;this.p=null;this.g=-1;return false}else{e=!this.p?!this.j?this.k.Xb(--this.n):this.j.pi(--this.n):this.p.Ub();if(this.f){a=BD(e,72);a.ak();c=a.dd();this.i=c}else{c=e;this.i=c}this.g=-3;return true}}}};_.Pb=function XRd(){return MRd(this)};_.Tb=function YRd(){return this.a};_.Ub=function ZRd(){var a;if(this.g<-1||this.Sb()){--this.a;this.g=0;a=this.i;this.Sb();return a}else{throw vbb(new utb)}};_.Vb=function $Rd(){return this.a-1};_.Qb=function _Rd(){throw vbb(new bgb)};_.Lk=function aSd(){return false};_.Wb=function bSd(a){throw vbb(new bgb)};_.Mk=function cSd(){return true};_.a=0;_.d=0;_.f=false;_.g=0;_.n=0;_.o=0;var KRd;var P8=mdb(yve,'EContentsEList/FeatureIteratorImpl',279);bcb(697,279,Wve,dSd);_.Lk=function eSd(){return true};var Q8=mdb(yve,'EContentsEList/ResolvingFeatureIteratorImpl',697);bcb(1157,697,Wve,fSd);_.Mk=function gSd(){return false};var g6=mdb(qte,'ENamedElementImpl/1/1',1157);bcb(1158,279,Wve,hSd);_.Mk=function iSd(){return false};var h6=mdb(qte,'ENamedElementImpl/1/2',1158);bcb(36,143,fve,lSd,mSd,nSd,oSd,pSd,qSd,rSd,sSd,tSd,uSd,vSd,wSd,xSd,ySd,zSd,ASd,BSd,CSd,DSd,ESd,FSd,GSd,HSd,ISd,JSd);_._i=function KSd(){return kSd(this)};_.gj=function LSd(){var a;a=kSd(this);if(a){return a.zj()}return null};_.yi=function MSd(a){this.b==-1&&!!this.a&&(this.b=this.c.Xg(this.a.aj(),this.a.Gj()));return this.c.Og(this.b,a)};_.Ai=function NSd(){return this.c};_.hj=function OSd(){var a;a=kSd(this);if(a){return a.Kj()}return false};_.b=-1;var k6=mdb(qte,'ENotificationImpl',36);bcb(399,284,{105:1,92:1,90:1,147:1,191:1,56:1,59:1,108:1,472:1,49:1,97:1,150:1,399:1,284:1,114:1,115:1},SSd);_.Qg=function TSd(a){return PSd(this,a)};_._g=function USd(a,b,c){var d,e,f;switch(a){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Bcb(),(this.Bb&256)!=0?true:false;case 3:return Bcb(),(this.Bb&512)!=0?true:false;case 4:return meb(this.s);case 5:return meb(this.t);case 6:return Bcb(),f=this.t,f>1||f==-1?true:false;case 7:return Bcb(),e=this.s,e>=1?true:false;case 8:if(b)return wId(this);return this.r;case 9:return this.q;case 10:return this.Db>>16==10?BD(this.Cb,26):null;case 11:return !this.d&&(this.d=new K4d(u5,this,11)),this.d;case 12:return !this.c&&(this.c=new cUd(p5,this,12,10)),this.c;case 13:return !this.a&&(this.a=new fTd(this,this)),this.a;case 14:return QSd(this);}return bid(this,a-aLd((jGd(),aGd)),XKd((d=BD(Ajd(this,16),26),!d?aGd:d),a),b,c)};_.hh=function VSd(a,b,c){var d,e,f;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Sxd(this.Ab,a,c);case 10:!!this.Cb&&(c=(e=this.Db>>16,e>=0?PSd(this,c):this.Cb.ih(this,-1-e,null,c)));return _hd(this,a,10,c);case 12:return !this.c&&(this.c=new cUd(p5,this,12,10)),Sxd(this.c,a,c);}return f=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),aGd):d),b),66),f.Nj().Qj(this,yjd(this),b-aLd((jGd(),aGd)),a,c)};_.jh=function WSd(a,b,c){var d,e;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Txd(this.Ab,a,c);case 9:return vId(this,c);case 10:return _hd(this,null,10,c);case 11:return !this.d&&(this.d=new K4d(u5,this,11)),Txd(this.d,a,c);case 12:return !this.c&&(this.c=new cUd(p5,this,12,10)),Txd(this.c,a,c);case 14:return Txd(QSd(this),a,c);}return e=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),aGd):d),b),66),e.Nj().Rj(this,yjd(this),b-aLd((jGd(),aGd)),a,c)};_.lh=function XSd(a){var b,c,d;switch(a){case 0:return !!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return (this.Bb&256)==0;case 3:return (this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return d=this.t,d>1||d==-1;case 7:return c=this.s,c>=1;case 8:return !!this.r&&!this.q.e&&LQd(this.q).i==0;case 9:return !!this.q&&!(!!this.r&&!this.q.e&&LQd(this.q).i==0);case 10:return !!(this.Db>>16==10?BD(this.Cb,26):null);case 11:return !!this.d&&this.d.i!=0;case 12:return !!this.c&&this.c.i!=0;case 13:return !!this.a&&QSd(this.a.a).i!=0&&!(!!this.b&&QTd(this.b));case 14:return !!this.b&&QTd(this.b);}return cid(this,a-aLd((jGd(),aGd)),XKd((b=BD(Ajd(this,16),26),!b?aGd:b),a))};_.sh=function YSd(a,b){var c,d;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);!this.Ab&&(this.Ab=new cUd(a5,this,0,3));ytd(this.Ab,BD(b,14));return;case 1:pnd(this,GD(b));return;case 2:BId(this,Ccb(DD(b)));return;case 3:CId(this,Ccb(DD(b)));return;case 4:AId(this,BD(b,19).a);return;case 5:DId(this,BD(b,19).a);return;case 8:yId(this,BD(b,138));return;case 9:d=xId(this,BD(b,87),null);!!d&&d.Fi();return;case 11:!this.d&&(this.d=new K4d(u5,this,11));Uxd(this.d);!this.d&&(this.d=new K4d(u5,this,11));ytd(this.d,BD(b,14));return;case 12:!this.c&&(this.c=new cUd(p5,this,12,10));Uxd(this.c);!this.c&&(this.c=new cUd(p5,this,12,10));ytd(this.c,BD(b,14));return;case 13:!this.a&&(this.a=new fTd(this,this));vwd(this.a);!this.a&&(this.a=new fTd(this,this));ytd(this.a,BD(b,14));return;case 14:Uxd(QSd(this));ytd(QSd(this),BD(b,14));return;}did(this,a-aLd((jGd(),aGd)),XKd((c=BD(Ajd(this,16),26),!c?aGd:c),a),b)};_.zh=function ZSd(){return jGd(),aGd};_.Bh=function $Sd(a){var b,c;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);return;case 1:pnd(this,null);return;case 2:BId(this,true);return;case 3:CId(this,true);return;case 4:AId(this,0);return;case 5:DId(this,1);return;case 8:yId(this,null);return;case 9:c=xId(this,null,null);!!c&&c.Fi();return;case 11:!this.d&&(this.d=new K4d(u5,this,11));Uxd(this.d);return;case 12:!this.c&&(this.c=new cUd(p5,this,12,10));Uxd(this.c);return;case 13:!!this.a&&vwd(this.a);return;case 14:!!this.b&&Uxd(this.b);return;}eid(this,a-aLd((jGd(),aGd)),XKd((b=BD(Ajd(this,16),26),!b?aGd:b),a))};_.Gh=function _Sd(){var a,b;if(this.c){for(a=0,b=this.c.i;ah&&NC(a,h,null);d=0;for(c=new Fyd(QSd(this.a));c.e!=c.i.gc();){b=BD(Dyd(c),87);f=(g=b.c,g?g:(jGd(),YFd));NC(a,d++,f)}return a};_.Yi=function zTd(){var a,b,c,d,e;e=new Hfb;e.a+='[';a=QSd(this.a);for(b=0,d=QSd(this.a).i;b1)}case 5:{return FLd(this,a,b,c,d,this.i-BD(c,15).gc()>0)}default:{return new pSd(this.e,a,this.c,b,c,d,true)}}};_.ij=function WTd(){return true};_.fj=function XTd(){return QTd(this)};_.Xj=function aUd(){Uxd(this)};var o6=mdb(qte,'EOperationImpl/2',1341);bcb(498,1,{1938:1,498:1},bUd);var q6=mdb(qte,'EPackageImpl/1',498);bcb(16,85,Pve,cUd);_.zk=function dUd(){return this.d};_.Ak=function eUd(){return this.b};_.Dk=function fUd(){return true};_.b=0;var b9=mdb(yve,'EObjectContainmentWithInverseEList',16);bcb(353,16,Pve,gUd);_.Ek=function hUd(){return true};_.li=function iUd(a,b){return ILd(this,a,BD(b,56))};var $8=mdb(yve,'EObjectContainmentWithInverseEList/Resolving',353);bcb(298,353,Pve,jUd);_.ci=function kUd(){this.a.tb=null};var r6=mdb(qte,'EPackageImpl/2',298);bcb(1228,1,{},lUd);var s6=mdb(qte,'EPackageImpl/3',1228);bcb(718,43,fke,oUd);_._b=function pUd(a){return ND(a)?Qhb(this,a):!!irb(this.f,a)};var u6=mdb(qte,'EPackageRegistryImpl',718);bcb(509,284,{105:1,92:1,90:1,147:1,191:1,56:1,2017:1,108:1,472:1,49:1,97:1,150:1,509:1,284:1,114:1,115:1},rUd);_.Qg=function sUd(a){return qUd(this,a)};_._g=function tUd(a,b,c){var d,e,f;switch(a){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Bcb(),(this.Bb&256)!=0?true:false;case 3:return Bcb(),(this.Bb&512)!=0?true:false;case 4:return meb(this.s);case 5:return meb(this.t);case 6:return Bcb(),f=this.t,f>1||f==-1?true:false;case 7:return Bcb(),e=this.s,e>=1?true:false;case 8:if(b)return wId(this);return this.r;case 9:return this.q;case 10:return this.Db>>16==10?BD(this.Cb,59):null;}return bid(this,a-aLd((jGd(),dGd)),XKd((d=BD(Ajd(this,16),26),!d?dGd:d),a),b,c)};_.hh=function uUd(a,b,c){var d,e,f;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Sxd(this.Ab,a,c);case 10:!!this.Cb&&(c=(e=this.Db>>16,e>=0?qUd(this,c):this.Cb.ih(this,-1-e,null,c)));return _hd(this,a,10,c);}return f=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),dGd):d),b),66),f.Nj().Qj(this,yjd(this),b-aLd((jGd(),dGd)),a,c)};_.jh=function vUd(a,b,c){var d,e;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Txd(this.Ab,a,c);case 9:return vId(this,c);case 10:return _hd(this,null,10,c);}return e=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),dGd):d),b),66),e.Nj().Rj(this,yjd(this),b-aLd((jGd(),dGd)),a,c)};_.lh=function wUd(a){var b,c,d;switch(a){case 0:return !!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return (this.Bb&256)==0;case 3:return (this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return d=this.t,d>1||d==-1;case 7:return c=this.s,c>=1;case 8:return !!this.r&&!this.q.e&&LQd(this.q).i==0;case 9:return !!this.q&&!(!!this.r&&!this.q.e&&LQd(this.q).i==0);case 10:return !!(this.Db>>16==10?BD(this.Cb,59):null);}return cid(this,a-aLd((jGd(),dGd)),XKd((b=BD(Ajd(this,16),26),!b?dGd:b),a))};_.zh=function xUd(){return jGd(),dGd};var v6=mdb(qte,'EParameterImpl',509);bcb(99,449,{105:1,92:1,90:1,147:1,191:1,56:1,18:1,170:1,66:1,108:1,472:1,49:1,97:1,150:1,99:1,449:1,284:1,114:1,115:1,677:1},FUd);_._g=function GUd(a,b,c){var d,e,f,g;switch(a){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),this.Ab;case 1:return this.zb;case 2:return Bcb(),(this.Bb&256)!=0?true:false;case 3:return Bcb(),(this.Bb&512)!=0?true:false;case 4:return meb(this.s);case 5:return meb(this.t);case 6:return Bcb(),g=this.t,g>1||g==-1?true:false;case 7:return Bcb(),e=this.s,e>=1?true:false;case 8:if(b)return wId(this);return this.r;case 9:return this.q;case 10:return Bcb(),(this.Bb&zte)!=0?true:false;case 11:return Bcb(),(this.Bb&Dve)!=0?true:false;case 12:return Bcb(),(this.Bb&Rje)!=0?true:false;case 13:return this.j;case 14:return VId(this);case 15:return Bcb(),(this.Bb&Cve)!=0?true:false;case 16:return Bcb(),(this.Bb&oie)!=0?true:false;case 17:return WId(this);case 18:return Bcb(),(this.Bb&ote)!=0?true:false;case 19:return Bcb(),f=zUd(this),!!f&&(f.Bb&ote)!=0?true:false;case 20:return Bcb(),(this.Bb&Tje)!=0?true:false;case 21:if(b)return zUd(this);return this.b;case 22:if(b)return AUd(this);return yUd(this);case 23:return !this.a&&(this.a=new _4d(b5,this,23)),this.a;}return bid(this,a-aLd((jGd(),eGd)),XKd((d=BD(Ajd(this,16),26),!d?eGd:d),a),b,c)};_.lh=function HUd(a){var b,c,d,e;switch(a){case 0:return !!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return (this.Bb&256)==0;case 3:return (this.Bb&512)==0;case 4:return this.s!=0;case 5:return this.t!=1;case 6:return e=this.t,e>1||e==-1;case 7:return c=this.s,c>=1;case 8:return !!this.r&&!this.q.e&&LQd(this.q).i==0;case 9:return !!this.q&&!(!!this.r&&!this.q.e&&LQd(this.q).i==0);case 10:return (this.Bb&zte)==0;case 11:return (this.Bb&Dve)!=0;case 12:return (this.Bb&Rje)!=0;case 13:return this.j!=null;case 14:return VId(this)!=null;case 15:return (this.Bb&Cve)!=0;case 16:return (this.Bb&oie)!=0;case 17:return !!WId(this);case 18:return (this.Bb&ote)!=0;case 19:return d=zUd(this),!!d&&(d.Bb&ote)!=0;case 20:return (this.Bb&Tje)==0;case 21:return !!this.b;case 22:return !!yUd(this);case 23:return !!this.a&&this.a.i!=0;}return cid(this,a-aLd((jGd(),eGd)),XKd((b=BD(Ajd(this,16),26),!b?eGd:b),a))};_.sh=function IUd(a,b){var c,d;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);!this.Ab&&(this.Ab=new cUd(a5,this,0,3));ytd(this.Ab,BD(b,14));return;case 1:cJd(this,GD(b));return;case 2:BId(this,Ccb(DD(b)));return;case 3:CId(this,Ccb(DD(b)));return;case 4:AId(this,BD(b,19).a);return;case 5:DId(this,BD(b,19).a);return;case 8:yId(this,BD(b,138));return;case 9:d=xId(this,BD(b,87),null);!!d&&d.Fi();return;case 10:ZId(this,Ccb(DD(b)));return;case 11:fJd(this,Ccb(DD(b)));return;case 12:dJd(this,Ccb(DD(b)));return;case 13:$Id(this,GD(b));return;case 15:eJd(this,Ccb(DD(b)));return;case 16:aJd(this,Ccb(DD(b)));return;case 18:BUd(this,Ccb(DD(b)));return;case 20:EUd(this,Ccb(DD(b)));return;case 21:DUd(this,BD(b,18));return;case 23:!this.a&&(this.a=new _4d(b5,this,23));Uxd(this.a);!this.a&&(this.a=new _4d(b5,this,23));ytd(this.a,BD(b,14));return;}did(this,a-aLd((jGd(),eGd)),XKd((c=BD(Ajd(this,16),26),!c?eGd:c),a),b)};_.zh=function JUd(){return jGd(),eGd};_.Bh=function KUd(a){var b,c;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);return;case 1:JD(this.Cb,88)&&XMd($Kd(BD(this.Cb,88)),4);pnd(this,null);return;case 2:BId(this,true);return;case 3:CId(this,true);return;case 4:AId(this,0);return;case 5:DId(this,1);return;case 8:yId(this,null);return;case 9:c=xId(this,null,null);!!c&&c.Fi();return;case 10:ZId(this,true);return;case 11:fJd(this,false);return;case 12:dJd(this,false);return;case 13:this.i=null;_Id(this,null);return;case 15:eJd(this,false);return;case 16:aJd(this,false);return;case 18:CUd(this,false);JD(this.Cb,88)&&XMd($Kd(BD(this.Cb,88)),2);return;case 20:EUd(this,true);return;case 21:DUd(this,null);return;case 23:!this.a&&(this.a=new _4d(b5,this,23));Uxd(this.a);return;}eid(this,a-aLd((jGd(),eGd)),XKd((b=BD(Ajd(this,16),26),!b?eGd:b),a))};_.Gh=function LUd(){AUd(this);a2d(q1d((O6d(),M6d),this));wId(this);this.Bb|=1};_.Lj=function MUd(){return zUd(this)};_.qk=function NUd(){var a;return a=zUd(this),!!a&&(a.Bb&ote)!=0};_.rk=function OUd(){return (this.Bb&ote)!=0};_.sk=function PUd(){return (this.Bb&Tje)!=0};_.nk=function QUd(a,b){this.c=null;return zId(this,a,b)};_.Ib=function RUd(){var a;if((this.Db&64)!=0)return gJd(this);a=new Jfb(gJd(this));a.a+=' (containment: ';Ffb(a,(this.Bb&ote)!=0);a.a+=', resolveProxies: ';Ffb(a,(this.Bb&Tje)!=0);a.a+=')';return a.a};var w6=mdb(qte,'EReferenceImpl',99);bcb(548,115,{105:1,42:1,92:1,90:1,133:1,56:1,108:1,49:1,97:1,548:1,114:1,115:1},XUd);_.Fb=function bVd(a){return this===a};_.cd=function dVd(){return this.b};_.dd=function eVd(){return this.c};_.Hb=function fVd(){return FCb(this)};_.Uh=function hVd(a){SUd(this,GD(a))};_.ed=function iVd(a){return WUd(this,GD(a))};_._g=function YUd(a,b,c){var d;switch(a){case 0:return this.b;case 1:return this.c;}return bid(this,a-aLd((jGd(),fGd)),XKd((d=BD(Ajd(this,16),26),!d?fGd:d),a),b,c)};_.lh=function ZUd(a){var b;switch(a){case 0:return this.b!=null;case 1:return this.c!=null;}return cid(this,a-aLd((jGd(),fGd)),XKd((b=BD(Ajd(this,16),26),!b?fGd:b),a))};_.sh=function $Ud(a,b){var c;switch(a){case 0:TUd(this,GD(b));return;case 1:VUd(this,GD(b));return;}did(this,a-aLd((jGd(),fGd)),XKd((c=BD(Ajd(this,16),26),!c?fGd:c),a),b)};_.zh=function _Ud(){return jGd(),fGd};_.Bh=function aVd(a){var b;switch(a){case 0:UUd(this,null);return;case 1:VUd(this,null);return;}eid(this,a-aLd((jGd(),fGd)),XKd((b=BD(Ajd(this,16),26),!b?fGd:b),a))};_.Sh=function cVd(){var a;if(this.a==-1){a=this.b;this.a=a==null?0:LCb(a)}return this.a};_.Th=function gVd(a){this.a=a};_.Ib=function jVd(){var a;if((this.Db&64)!=0)return Eid(this);a=new Jfb(Eid(this));a.a+=' (key: ';Efb(a,this.b);a.a+=', value: ';Efb(a,this.c);a.a+=')';return a.a};_.a=-1;_.b=null;_.c=null;var x6=mdb(qte,'EStringToStringMapEntryImpl',548);var D9=odb(yve,'FeatureMap/Entry/Internal');bcb(565,1,Xve);_.Ok=function mVd(a){return this.Pk(BD(a,49))};_.Pk=function nVd(a){return this.Ok(a)};_.Fb=function oVd(a){var b,c;if(this===a){return true}else if(JD(a,72)){b=BD(a,72);if(b.ak()==this.c){c=this.dd();return c==null?b.dd()==null:pb(c,b.dd())}else{return false}}else{return false}};_.ak=function pVd(){return this.c};_.Hb=function qVd(){var a;a=this.dd();return tb(this.c)^(a==null?0:tb(a))};_.Ib=function rVd(){var a,b;a=this.c;b=bKd(a.Hj()).Ph();a.ne();return (b!=null&&b.length!=0?b+':'+a.ne():a.ne())+'='+this.dd()};var y6=mdb(qte,'EStructuralFeatureImpl/BasicFeatureMapEntry',565);bcb(776,565,Xve,uVd);_.Pk=function vVd(a){return new uVd(this.c,a)};_.dd=function wVd(){return this.a};_.Qk=function xVd(a,b,c){return sVd(this,a,this.a,b,c)};_.Rk=function yVd(a,b,c){return tVd(this,a,this.a,b,c)};var z6=mdb(qte,'EStructuralFeatureImpl/ContainmentUpdatingFeatureMapEntry',776);bcb(1314,1,{},zVd);_.Pj=function AVd(a,b,c,d,e){var f;f=BD(gid(a,this.b),215);return f.nl(this.a).Wj(d)};_.Qj=function BVd(a,b,c,d,e){var f;f=BD(gid(a,this.b),215);return f.el(this.a,d,e)};_.Rj=function CVd(a,b,c,d,e){var f;f=BD(gid(a,this.b),215);return f.fl(this.a,d,e)};_.Sj=function DVd(a,b,c){var d;d=BD(gid(a,this.b),215);return d.nl(this.a).fj()};_.Tj=function EVd(a,b,c,d){var e;e=BD(gid(a,this.b),215);e.nl(this.a).Wb(d)};_.Uj=function FVd(a,b,c){return BD(gid(a,this.b),215).nl(this.a)};_.Vj=function GVd(a,b,c){var d;d=BD(gid(a,this.b),215);d.nl(this.a).Xj()};var A6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateFeatureMapDelegator',1314);bcb(89,1,{},IVd,JVd,KVd,LVd);_.Pj=function MVd(a,b,c,d,e){var f;f=b.Ch(c);f==null&&b.Dh(c,f=HVd(this,a));if(!e){switch(this.e){case 50:case 41:return BD(f,589).sj();case 40:return BD(f,215).kl();}}return f};_.Qj=function NVd(a,b,c,d,e){var f,g;g=b.Ch(c);g==null&&b.Dh(c,g=HVd(this,a));f=BD(g,69).lk(d,e);return f};_.Rj=function OVd(a,b,c,d,e){var f;f=b.Ch(c);f!=null&&(e=BD(f,69).mk(d,e));return e};_.Sj=function PVd(a,b,c){var d;d=b.Ch(c);return d!=null&&BD(d,76).fj()};_.Tj=function QVd(a,b,c,d){var e;e=BD(b.Ch(c),76);!e&&b.Dh(c,e=HVd(this,a));e.Wb(d)};_.Uj=function RVd(a,b,c){var d,e;e=b.Ch(c);e==null&&b.Dh(c,e=HVd(this,a));if(JD(e,76)){return BD(e,76)}else{d=BD(b.Ch(c),15);return new iYd(d)}};_.Vj=function SVd(a,b,c){var d;d=BD(b.Ch(c),76);!d&&b.Dh(c,d=HVd(this,a));d.Xj()};_.b=0;_.e=0;var B6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateMany',89);bcb(504,1,{});_.Qj=function WVd(a,b,c,d,e){throw vbb(new bgb)};_.Rj=function XVd(a,b,c,d,e){throw vbb(new bgb)};_.Uj=function YVd(a,b,c){return new ZVd(this,a,b,c)};var TVd;var i7=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingle',504);bcb(1331,1,zve,ZVd);_.Wj=function $Vd(a){return this.a.Pj(this.c,this.d,this.b,a,true)};_.fj=function _Vd(){return this.a.Sj(this.c,this.d,this.b)};_.Wb=function aWd(a){this.a.Tj(this.c,this.d,this.b,a)};_.Xj=function bWd(){this.a.Vj(this.c,this.d,this.b)};_.b=0;var C6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingle/1',1331);bcb(769,504,{},cWd);_.Pj=function dWd(a,b,c,d,e){return Nid(a,a.eh(),a.Vg())==this.b?this.sk()&&d?aid(a):a.eh():null};_.Qj=function eWd(a,b,c,d,e){var f,g;!!a.eh()&&(e=(f=a.Vg(),f>=0?a.Qg(e):a.eh().ih(a,-1-f,null,e)));g=bLd(a.Tg(),this.e);return a.Sg(d,g,e)};_.Rj=function fWd(a,b,c,d,e){var f;f=bLd(a.Tg(),this.e);return a.Sg(null,f,e)};_.Sj=function gWd(a,b,c){var d;d=bLd(a.Tg(),this.e);return !!a.eh()&&a.Vg()==d};_.Tj=function hWd(a,b,c,d){var e,f,g,h,i;if(d!=null&&!fKd(this.a,d)){throw vbb(new Cdb(Yve+(JD(d,56)?gLd(BD(d,56).Tg()):idb(rb(d)))+Zve+this.a+\"'\"))}e=a.eh();g=bLd(a.Tg(),this.e);if(PD(d)!==PD(e)||a.Vg()!=g&&d!=null){if(p6d(a,BD(d,56)))throw vbb(new Wdb(ste+a.Ib()));i=null;!!e&&(i=(f=a.Vg(),f>=0?a.Qg(i):a.eh().ih(a,-1-f,null,i)));h=BD(d,49);!!h&&(i=h.gh(a,bLd(h.Tg(),this.b),null,i));i=a.Sg(h,g,i);!!i&&i.Fi()}else{a.Lg()&&a.Mg()&&Uhd(a,new nSd(a,1,g,d,d))}};_.Vj=function iWd(a,b,c){var d,e,f,g;d=a.eh();if(d){g=(e=a.Vg(),e>=0?a.Qg(null):a.eh().ih(a,-1-e,null,null));f=bLd(a.Tg(),this.e);g=a.Sg(null,f,g);!!g&&g.Fi()}else{a.Lg()&&a.Mg()&&Uhd(a,new DSd(a,1,this.e,null,null))}};_.sk=function jWd(){return false};var E6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleContainer',769);bcb(1315,769,{},kWd);_.sk=function lWd(){return true};var D6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleContainerResolving',1315);bcb(563,504,{});_.Pj=function oWd(a,b,c,d,e){var f;return f=b.Ch(c),f==null?this.b:PD(f)===PD(TVd)?null:f};_.Sj=function pWd(a,b,c){var d;d=b.Ch(c);return d!=null&&(PD(d)===PD(TVd)||!pb(d,this.b))};_.Tj=function qWd(a,b,c,d){var e,f;if(a.Lg()&&a.Mg()){e=(f=b.Ch(c),f==null?this.b:PD(f)===PD(TVd)?null:f);if(d==null){if(this.c!=null){b.Dh(c,null);d=this.b}else this.b!=null?b.Dh(c,TVd):b.Dh(c,null)}else{this.Sk(d);b.Dh(c,d)}Uhd(a,this.d.Tk(a,1,this.e,e,d))}else{if(d==null){this.c!=null?b.Dh(c,null):this.b!=null?b.Dh(c,TVd):b.Dh(c,null)}else{this.Sk(d);b.Dh(c,d)}}};_.Vj=function rWd(a,b,c){var d,e;if(a.Lg()&&a.Mg()){d=(e=b.Ch(c),e==null?this.b:PD(e)===PD(TVd)?null:e);b.Eh(c);Uhd(a,this.d.Tk(a,1,this.e,d,this.b))}else{b.Eh(c)}};_.Sk=function sWd(a){throw vbb(new Bdb)};var T6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleData',563);bcb($ve,1,{},DWd);_.Tk=function EWd(a,b,c,d,e){return new DSd(a,b,c,d,e)};_.Uk=function FWd(a,b,c,d,e,f){return new FSd(a,b,c,d,e,f)};var tWd,uWd,vWd,wWd,xWd,yWd,zWd,AWd,BWd;var N6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator',$ve);bcb(1332,$ve,{},GWd);_.Tk=function HWd(a,b,c,d,e){return new ISd(a,b,c,Ccb(DD(d)),Ccb(DD(e)))};_.Uk=function IWd(a,b,c,d,e,f){return new JSd(a,b,c,Ccb(DD(d)),Ccb(DD(e)),f)};var F6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/1',1332);bcb(1333,$ve,{},JWd);_.Tk=function KWd(a,b,c,d,e){return new rSd(a,b,c,BD(d,217).a,BD(e,217).a)};_.Uk=function LWd(a,b,c,d,e,f){return new sSd(a,b,c,BD(d,217).a,BD(e,217).a,f)};var G6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/2',1333);bcb(1334,$ve,{},MWd);_.Tk=function NWd(a,b,c,d,e){return new tSd(a,b,c,BD(d,172).a,BD(e,172).a)};_.Uk=function OWd(a,b,c,d,e,f){return new uSd(a,b,c,BD(d,172).a,BD(e,172).a,f)};var H6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/3',1334);bcb(1335,$ve,{},PWd);_.Tk=function QWd(a,b,c,d,e){return new vSd(a,b,c,Edb(ED(d)),Edb(ED(e)))};_.Uk=function RWd(a,b,c,d,e,f){return new wSd(a,b,c,Edb(ED(d)),Edb(ED(e)),f)};var I6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/4',1335);bcb(1336,$ve,{},SWd);_.Tk=function TWd(a,b,c,d,e){return new xSd(a,b,c,BD(d,155).a,BD(e,155).a)};_.Uk=function UWd(a,b,c,d,e,f){return new ySd(a,b,c,BD(d,155).a,BD(e,155).a,f)};var J6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/5',1336);bcb(1337,$ve,{},VWd);_.Tk=function WWd(a,b,c,d,e){return new zSd(a,b,c,BD(d,19).a,BD(e,19).a)};_.Uk=function XWd(a,b,c,d,e,f){return new ASd(a,b,c,BD(d,19).a,BD(e,19).a,f)};var K6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/6',1337);bcb(1338,$ve,{},YWd);_.Tk=function ZWd(a,b,c,d,e){return new BSd(a,b,c,BD(d,162).a,BD(e,162).a)};_.Uk=function $Wd(a,b,c,d,e,f){return new CSd(a,b,c,BD(d,162).a,BD(e,162).a,f)};var L6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/7',1338);bcb(1339,$ve,{},_Wd);_.Tk=function aXd(a,b,c,d,e){return new GSd(a,b,c,BD(d,184).a,BD(e,184).a)};_.Uk=function bXd(a,b,c,d,e,f){return new HSd(a,b,c,BD(d,184).a,BD(e,184).a,f)};var M6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleData/NotificationCreator/8',1339);bcb(1317,563,{},cXd);_.Sk=function dXd(a){if(!this.a.wj(a)){throw vbb(new Cdb(Yve+rb(a)+Zve+this.a+\"'\"))}};var O6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleDataDynamic',1317);bcb(1318,563,{},eXd);_.Sk=function fXd(a){};var P6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleDataStatic',1318);bcb(770,563,{});_.Sj=function gXd(a,b,c){var d;d=b.Ch(c);return d!=null};_.Tj=function hXd(a,b,c,d){var e,f;if(a.Lg()&&a.Mg()){e=true;f=b.Ch(c);if(f==null){e=false;f=this.b}else PD(f)===PD(TVd)&&(f=null);if(d==null){if(this.c!=null){b.Dh(c,null);d=this.b}else{b.Dh(c,TVd)}}else{this.Sk(d);b.Dh(c,d)}Uhd(a,this.d.Uk(a,1,this.e,f,d,!e))}else{if(d==null){this.c!=null?b.Dh(c,null):b.Dh(c,TVd)}else{this.Sk(d);b.Dh(c,d)}}};_.Vj=function iXd(a,b,c){var d,e;if(a.Lg()&&a.Mg()){d=true;e=b.Ch(c);if(e==null){d=false;e=this.b}else PD(e)===PD(TVd)&&(e=null);b.Eh(c);Uhd(a,this.d.Uk(a,2,this.e,e,this.b,d))}else{b.Eh(c)}};var S6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettable',770);bcb(1319,770,{},jXd);_.Sk=function kXd(a){if(!this.a.wj(a)){throw vbb(new Cdb(Yve+rb(a)+Zve+this.a+\"'\"))}};var Q6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableDynamic',1319);bcb(1320,770,{},lXd);_.Sk=function mXd(a){};var R6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleDataUnsettableStatic',1320);bcb(398,504,{},nXd);_.Pj=function pXd(a,b,c,d,e){var f,g,h,i,j;j=b.Ch(c);if(this.Kj()&&PD(j)===PD(TVd)){return null}else if(this.sk()&&d&&j!=null){h=BD(j,49);if(h.kh()){i=xid(a,h);if(h!=i){if(!fKd(this.a,i)){throw vbb(new Cdb(Yve+rb(i)+Zve+this.a+\"'\"))}b.Dh(c,j=i);if(this.rk()){f=BD(i,49);g=h.ih(a,!this.b?-1-bLd(a.Tg(),this.e):bLd(h.Tg(),this.b),null,null);!f.eh()&&(g=f.gh(a,!this.b?-1-bLd(a.Tg(),this.e):bLd(f.Tg(),this.b),null,g));!!g&&g.Fi()}a.Lg()&&a.Mg()&&Uhd(a,new DSd(a,9,this.e,h,i))}}return j}else{return j}};_.Qj=function qXd(a,b,c,d,e){var f,g;g=b.Ch(c);PD(g)===PD(TVd)&&(g=null);b.Dh(c,d);if(this.bj()){if(PD(g)!==PD(d)&&g!=null){f=BD(g,49);e=f.ih(a,bLd(f.Tg(),this.b),null,e)}}else this.rk()&&g!=null&&(e=BD(g,49).ih(a,-1-bLd(a.Tg(),this.e),null,e));if(a.Lg()&&a.Mg()){!e&&(e=new Ixd(4));e.Ei(new DSd(a,1,this.e,g,d))}return e};_.Rj=function rXd(a,b,c,d,e){var f;f=b.Ch(c);PD(f)===PD(TVd)&&(f=null);b.Eh(c);if(a.Lg()&&a.Mg()){!e&&(e=new Ixd(4));this.Kj()?e.Ei(new DSd(a,2,this.e,f,null)):e.Ei(new DSd(a,1,this.e,f,null))}return e};_.Sj=function sXd(a,b,c){var d;d=b.Ch(c);return d!=null};_.Tj=function tXd(a,b,c,d){var e,f,g,h,i;if(d!=null&&!fKd(this.a,d)){throw vbb(new Cdb(Yve+(JD(d,56)?gLd(BD(d,56).Tg()):idb(rb(d)))+Zve+this.a+\"'\"))}i=b.Ch(c);h=i!=null;this.Kj()&&PD(i)===PD(TVd)&&(i=null);g=null;if(this.bj()){if(PD(i)!==PD(d)){if(i!=null){e=BD(i,49);g=e.ih(a,bLd(e.Tg(),this.b),null,g)}if(d!=null){e=BD(d,49);g=e.gh(a,bLd(e.Tg(),this.b),null,g)}}}else if(this.rk()){if(PD(i)!==PD(d)){i!=null&&(g=BD(i,49).ih(a,-1-bLd(a.Tg(),this.e),null,g));d!=null&&(g=BD(d,49).gh(a,-1-bLd(a.Tg(),this.e),null,g))}}d==null&&this.Kj()?b.Dh(c,TVd):b.Dh(c,d);if(a.Lg()&&a.Mg()){f=new FSd(a,1,this.e,i,d,this.Kj()&&!h);if(!g){Uhd(a,f)}else{g.Ei(f);g.Fi()}}else !!g&&g.Fi()};_.Vj=function uXd(a,b,c){var d,e,f,g,h;h=b.Ch(c);g=h!=null;this.Kj()&&PD(h)===PD(TVd)&&(h=null);f=null;if(h!=null){if(this.bj()){d=BD(h,49);f=d.ih(a,bLd(d.Tg(),this.b),null,f)}else this.rk()&&(f=BD(h,49).ih(a,-1-bLd(a.Tg(),this.e),null,f))}b.Eh(c);if(a.Lg()&&a.Mg()){e=new FSd(a,this.Kj()?2:1,this.e,h,null,g);if(!f){Uhd(a,e)}else{f.Ei(e);f.Fi()}}else !!f&&f.Fi()};_.bj=function vXd(){return false};_.rk=function wXd(){return false};_.sk=function xXd(){return false};_.Kj=function yXd(){return false};var h7=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleEObject',398);bcb(564,398,{},zXd);_.rk=function AXd(){return true};var _6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainment',564);bcb(1323,564,{},BXd);_.sk=function CXd(){return true};var U6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentResolving',1323);bcb(772,564,{},DXd);_.Kj=function EXd(){return true};var W6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettable',772);bcb(1325,772,{},FXd);_.sk=function GXd(){return true};var V6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentUnsettableResolving',1325);bcb(640,564,{},HXd);_.bj=function IXd(){return true};var $6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverse',640);bcb(1324,640,{},JXd);_.sk=function KXd(){return true};var X6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseResolving',1324);bcb(773,640,{},LXd);_.Kj=function MXd(){return true};var Z6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettable',773);bcb(1326,773,{},NXd);_.sk=function OXd(){return true};var Y6=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectContainmentWithInverseUnsettableResolving',1326);bcb(641,398,{},PXd);_.sk=function QXd(){return true};var d7=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolving',641);bcb(1327,641,{},RXd);_.Kj=function SXd(){return true};var a7=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingUnsettable',1327);bcb(774,641,{},TXd);_.bj=function UXd(){return true};var c7=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverse',774);bcb(1328,774,{},VXd);_.Kj=function WXd(){return true};var b7=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectResolvingWithInverseUnsettable',1328);bcb(1321,398,{},XXd);_.Kj=function YXd(){return true};var e7=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectUnsettable',1321);bcb(771,398,{},ZXd);_.bj=function $Xd(){return true};var g7=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverse',771);bcb(1322,771,{},_Xd);_.Kj=function aYd(){return true};var f7=mdb(qte,'EStructuralFeatureImpl/InternalSettingDelegateSingleEObjectWithInverseUnsettable',1322);bcb(775,565,Xve,dYd);_.Pk=function eYd(a){return new dYd(this.a,this.c,a)};_.dd=function fYd(){return this.b};_.Qk=function gYd(a,b,c){return bYd(this,a,this.b,c)};_.Rk=function hYd(a,b,c){return cYd(this,a,this.b,c)};var j7=mdb(qte,'EStructuralFeatureImpl/InverseUpdatingFeatureMapEntry',775);bcb(1329,1,zve,iYd);_.Wj=function jYd(a){return this.a};_.fj=function kYd(){return JD(this.a,95)?BD(this.a,95).fj():!this.a.dc()};_.Wb=function lYd(a){this.a.$b();this.a.Gc(BD(a,15))};_.Xj=function mYd(){JD(this.a,95)?BD(this.a,95).Xj():this.a.$b()};var k7=mdb(qte,'EStructuralFeatureImpl/SettingMany',1329);bcb(1330,565,Xve,nYd);_.Ok=function oYd(a){return new sYd((Q8d(),P8d),this.b.Ih(this.a,a))};_.dd=function pYd(){return null};_.Qk=function qYd(a,b,c){return c};_.Rk=function rYd(a,b,c){return c};var l7=mdb(qte,'EStructuralFeatureImpl/SimpleContentFeatureMapEntry',1330);bcb(642,565,Xve,sYd);_.Ok=function tYd(a){return new sYd(this.c,a)};_.dd=function uYd(){return this.a};_.Qk=function vYd(a,b,c){return c};_.Rk=function wYd(a,b,c){return c};var m7=mdb(qte,'EStructuralFeatureImpl/SimpleFeatureMapEntry',642);bcb(391,497,oue,xYd);_.ri=function yYd(a){return KC(c5,Uhe,26,a,0,1)};_.ni=function zYd(){return false};var o7=mdb(qte,'ESuperAdapter/1',391);bcb(444,438,{105:1,92:1,90:1,147:1,191:1,56:1,108:1,836:1,49:1,97:1,150:1,444:1,114:1,115:1},BYd);_._g=function CYd(a,b,c){var d;switch(a){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),this.Ab;case 1:return this.zb;case 2:return !this.a&&(this.a=new KYd(this,j5,this)),this.a;}return bid(this,a-aLd((jGd(),iGd)),XKd((d=BD(Ajd(this,16),26),!d?iGd:d),a),b,c)};_.jh=function DYd(a,b,c){var d,e;switch(b){case 0:return !this.Ab&&(this.Ab=new cUd(a5,this,0,3)),Txd(this.Ab,a,c);case 2:return !this.a&&(this.a=new KYd(this,j5,this)),Txd(this.a,a,c);}return e=BD(XKd((d=BD(Ajd(this,16),26),!d?(jGd(),iGd):d),b),66),e.Nj().Rj(this,yjd(this),b-aLd((jGd(),iGd)),a,c)};_.lh=function EYd(a){var b;switch(a){case 0:return !!this.Ab&&this.Ab.i!=0;case 1:return this.zb!=null;case 2:return !!this.a&&this.a.i!=0;}return cid(this,a-aLd((jGd(),iGd)),XKd((b=BD(Ajd(this,16),26),!b?iGd:b),a))};_.sh=function FYd(a,b){var c;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);!this.Ab&&(this.Ab=new cUd(a5,this,0,3));ytd(this.Ab,BD(b,14));return;case 1:pnd(this,GD(b));return;case 2:!this.a&&(this.a=new KYd(this,j5,this));Uxd(this.a);!this.a&&(this.a=new KYd(this,j5,this));ytd(this.a,BD(b,14));return;}did(this,a-aLd((jGd(),iGd)),XKd((c=BD(Ajd(this,16),26),!c?iGd:c),a),b)};_.zh=function GYd(){return jGd(),iGd};_.Bh=function HYd(a){var b;switch(a){case 0:!this.Ab&&(this.Ab=new cUd(a5,this,0,3));Uxd(this.Ab);return;case 1:pnd(this,null);return;case 2:!this.a&&(this.a=new KYd(this,j5,this));Uxd(this.a);return;}eid(this,a-aLd((jGd(),iGd)),XKd((b=BD(Ajd(this,16),26),!b?iGd:b),a))};var u7=mdb(qte,'ETypeParameterImpl',444);bcb(445,85,Pve,KYd);_.cj=function LYd(a,b){return IYd(this,BD(a,87),b)};_.dj=function MYd(a,b){return JYd(this,BD(a,87),b)};var q7=mdb(qte,'ETypeParameterImpl/1',445);bcb(634,43,fke,NYd);_.ec=function OYd(){return new RYd(this)};var t7=mdb(qte,'ETypeParameterImpl/2',634);bcb(556,eie,fie,RYd);_.Fc=function SYd(a){return PYd(this,BD(a,87))};_.Gc=function TYd(a){var b,c,d;d=false;for(c=a.Kc();c.Ob();){b=BD(c.Pb(),87);Rhb(this.a,b,'')==null&&(d=true)}return d};_.$b=function UYd(){Uhb(this.a)};_.Hc=function VYd(a){return Mhb(this.a,a)};_.Kc=function WYd(){var a;return a=new nib((new eib(this.a)).a),new ZYd(a)};_.Mc=function XYd(a){return QYd(this,a)};_.gc=function YYd(){return Vhb(this.a)};var s7=mdb(qte,'ETypeParameterImpl/2/1',556);bcb(557,1,aie,ZYd);_.Nb=function $Yd(a){Rrb(this,a)};_.Pb=function aZd(){return BD(lib(this.a).cd(),87)};_.Ob=function _Yd(){return this.a.b};_.Qb=function bZd(){mib(this.a)};var r7=mdb(qte,'ETypeParameterImpl/2/1/1',557);bcb(1276,43,fke,cZd);_._b=function dZd(a){return ND(a)?Qhb(this,a):!!irb(this.f,a)};_.xc=function eZd(a){var b,c;b=ND(a)?Phb(this,a):Wd(irb(this.f,a));if(JD(b,837)){c=BD(b,837);b=c._j();Rhb(this,BD(a,235),b);return b}else return b!=null?b:a==null?(g5d(),f5d):null};var w7=mdb(qte,'EValidatorRegistryImpl',1276);bcb(1313,704,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,1941:1,49:1,97:1,150:1,114:1,115:1},mZd);_.Ih=function nZd(a,b){switch(a.yj()){case 21:case 22:case 23:case 24:case 26:case 31:case 32:case 37:case 38:case 39:case 40:case 43:case 44:case 48:case 49:case 20:return b==null?null:fcb(b);case 25:return gZd(b);case 27:return hZd(b);case 28:return iZd(b);case 29:return b==null?null:CQd(Pmd[0],BD(b,199));case 41:return b==null?'':hdb(BD(b,290));case 42:return fcb(b);case 50:return GD(b);default:throw vbb(new Wdb(tte+a.ne()+ute));}};_.Jh=function oZd(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;switch(a.G==-1&&(a.G=(m=bKd(a),m?HLd(m.Mh(),a):-1)),a.G){case 0:return c=new OJd,c;case 1:return b=new RHd,b;case 2:return d=new hLd,d;case 4:return e=new MPd,e;case 5:return f=new aQd,f;case 6:return g=new rQd,g;case 7:return h=new $md,h;case 10:return j=new MGd,j;case 11:return k=new SSd,k;case 12:return l=new eod,l;case 13:return n=new rUd,n;case 14:return o=new FUd,o;case 17:return p=new XUd,p;case 18:return i=new UQd,i;case 19:return q=new BYd,q;default:throw vbb(new Wdb(xte+a.zb+ute));}};_.Kh=function pZd(a,b){switch(a.yj()){case 20:return b==null?null:new tgb(b);case 21:return b==null?null:new Ygb(b);case 23:case 22:return b==null?null:fZd(b);case 26:case 24:return b==null?null:Scb(Icb(b,-128,127)<<24>>24);case 25:return Xmd(b);case 27:return jZd(b);case 28:return kZd(b);case 29:return lZd(b);case 32:case 31:return b==null?null:Hcb(b);case 38:case 37:return b==null?null:new Odb(b);case 40:case 39:return b==null?null:meb(Icb(b,Rie,Ohe));case 41:return null;case 42:return b==null?null:null;case 44:case 43:return b==null?null:Aeb(Jcb(b));case 49:case 48:return b==null?null:Web(Icb(b,awe,32767)<<16>>16);case 50:return b;default:throw vbb(new Wdb(tte+a.ne()+ute));}};var x7=mdb(qte,'EcoreFactoryImpl',1313);bcb(547,179,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,1939:1,49:1,97:1,150:1,179:1,547:1,114:1,115:1,675:1},AZd);_.gb=false;_.hb=false;var rZd,sZd=false;var o8=mdb(qte,'EcorePackageImpl',547);bcb(1184,1,{837:1},EZd);_._j=function FZd(){return I6d(),H6d};var I7=mdb(qte,'EcorePackageImpl/1',1184);bcb(1193,1,nwe,GZd);_.wj=function HZd(a){return JD(a,147)};_.xj=function IZd(a){return KC(k5,Uhe,147,a,0,1)};var y7=mdb(qte,'EcorePackageImpl/10',1193);bcb(1194,1,nwe,JZd);_.wj=function KZd(a){return JD(a,191)};_.xj=function LZd(a){return KC(l5,Uhe,191,a,0,1)};var z7=mdb(qte,'EcorePackageImpl/11',1194);bcb(1195,1,nwe,MZd);_.wj=function NZd(a){return JD(a,56)};_.xj=function OZd(a){return KC(m5,Uhe,56,a,0,1)};var A7=mdb(qte,'EcorePackageImpl/12',1195);bcb(1196,1,nwe,PZd);_.wj=function QZd(a){return JD(a,399)};_.xj=function RZd(a){return KC(n5,Nve,59,a,0,1)};var B7=mdb(qte,'EcorePackageImpl/13',1196);bcb(1197,1,nwe,SZd);_.wj=function TZd(a){return JD(a,235)};_.xj=function UZd(a){return KC(o5,Uhe,235,a,0,1)};var C7=mdb(qte,'EcorePackageImpl/14',1197);bcb(1198,1,nwe,VZd);_.wj=function WZd(a){return JD(a,509)};_.xj=function XZd(a){return KC(p5,Uhe,2017,a,0,1)};var D7=mdb(qte,'EcorePackageImpl/15',1198);bcb(1199,1,nwe,YZd);_.wj=function ZZd(a){return JD(a,99)};_.xj=function $Zd(a){return KC(q5,Mve,18,a,0,1)};var E7=mdb(qte,'EcorePackageImpl/16',1199);bcb(1200,1,nwe,_Zd);_.wj=function a$d(a){return JD(a,170)};_.xj=function b$d(a){return KC(t5,Mve,170,a,0,1)};var F7=mdb(qte,'EcorePackageImpl/17',1200);bcb(1201,1,nwe,c$d);_.wj=function d$d(a){return JD(a,472)};_.xj=function e$d(a){return KC(v5,Uhe,472,a,0,1)};var G7=mdb(qte,'EcorePackageImpl/18',1201);bcb(1202,1,nwe,f$d);_.wj=function g$d(a){return JD(a,548)};_.xj=function h$d(a){return KC(x6,kve,548,a,0,1)};var H7=mdb(qte,'EcorePackageImpl/19',1202);bcb(1185,1,nwe,i$d);_.wj=function j$d(a){return JD(a,322)};_.xj=function k$d(a){return KC(b5,Mve,34,a,0,1)};var T7=mdb(qte,'EcorePackageImpl/2',1185);bcb(1203,1,nwe,l$d);_.wj=function m$d(a){return JD(a,241)};_.xj=function n$d(a){return KC(j5,Tve,87,a,0,1)};var J7=mdb(qte,'EcorePackageImpl/20',1203);bcb(1204,1,nwe,o$d);_.wj=function p$d(a){return JD(a,444)};_.xj=function q$d(a){return KC(u5,Uhe,836,a,0,1)};var K7=mdb(qte,'EcorePackageImpl/21',1204);bcb(1205,1,nwe,r$d);_.wj=function s$d(a){return KD(a)};_.xj=function t$d(a){return KC(wI,nie,476,a,8,1)};var L7=mdb(qte,'EcorePackageImpl/22',1205);bcb(1206,1,nwe,u$d);_.wj=function v$d(a){return JD(a,190)};_.xj=function w$d(a){return KC(SD,nie,190,a,0,2)};var M7=mdb(qte,'EcorePackageImpl/23',1206);bcb(1207,1,nwe,x$d);_.wj=function y$d(a){return JD(a,217)};_.xj=function z$d(a){return KC(xI,nie,217,a,0,1)};var N7=mdb(qte,'EcorePackageImpl/24',1207);bcb(1208,1,nwe,A$d);_.wj=function B$d(a){return JD(a,172)};_.xj=function C$d(a){return KC(yI,nie,172,a,0,1)};var O7=mdb(qte,'EcorePackageImpl/25',1208);bcb(1209,1,nwe,D$d);_.wj=function E$d(a){return JD(a,199)};_.xj=function F$d(a){return KC($J,nie,199,a,0,1)};var P7=mdb(qte,'EcorePackageImpl/26',1209);bcb(1210,1,nwe,G$d);_.wj=function H$d(a){return false};_.xj=function I$d(a){return KC(O4,Uhe,2110,a,0,1)};var Q7=mdb(qte,'EcorePackageImpl/27',1210);bcb(1211,1,nwe,J$d);_.wj=function K$d(a){return LD(a)};_.xj=function L$d(a){return KC(BI,nie,333,a,7,1)};var R7=mdb(qte,'EcorePackageImpl/28',1211);bcb(1212,1,nwe,M$d);_.wj=function N$d(a){return JD(a,58)};_.xj=function O$d(a){return KC(T4,eme,58,a,0,1)};var S7=mdb(qte,'EcorePackageImpl/29',1212);bcb(1186,1,nwe,P$d);_.wj=function Q$d(a){return JD(a,510)};_.xj=function R$d(a){return KC(a5,{3:1,4:1,5:1,1934:1},590,a,0,1)};var c8=mdb(qte,'EcorePackageImpl/3',1186);bcb(1213,1,nwe,S$d);_.wj=function T$d(a){return JD(a,573)};_.xj=function U$d(a){return KC(U4,Uhe,1940,a,0,1)};var U7=mdb(qte,'EcorePackageImpl/30',1213);bcb(1214,1,nwe,V$d);_.wj=function W$d(a){return JD(a,153)};_.xj=function X$d(a){return KC(O9,eme,153,a,0,1)};var V7=mdb(qte,'EcorePackageImpl/31',1214);bcb(1215,1,nwe,Y$d);_.wj=function Z$d(a){return JD(a,72)};_.xj=function $$d(a){return KC(E9,owe,72,a,0,1)};var W7=mdb(qte,'EcorePackageImpl/32',1215);bcb(1216,1,nwe,_$d);_.wj=function a_d(a){return JD(a,155)};_.xj=function b_d(a){return KC(FI,nie,155,a,0,1)};var X7=mdb(qte,'EcorePackageImpl/33',1216);bcb(1217,1,nwe,c_d);_.wj=function d_d(a){return JD(a,19)};_.xj=function e_d(a){return KC(JI,nie,19,a,0,1)};var Y7=mdb(qte,'EcorePackageImpl/34',1217);bcb(1218,1,nwe,f_d);_.wj=function g_d(a){return JD(a,290)};_.xj=function h_d(a){return KC(AI,Uhe,290,a,0,1)};var Z7=mdb(qte,'EcorePackageImpl/35',1218);bcb(1219,1,nwe,i_d);_.wj=function j_d(a){return JD(a,162)};_.xj=function k_d(a){return KC(MI,nie,162,a,0,1)};var $7=mdb(qte,'EcorePackageImpl/36',1219);bcb(1220,1,nwe,l_d);_.wj=function m_d(a){return JD(a,83)};_.xj=function n_d(a){return KC(DK,Uhe,83,a,0,1)};var _7=mdb(qte,'EcorePackageImpl/37',1220);bcb(1221,1,nwe,o_d);_.wj=function p_d(a){return JD(a,591)};_.xj=function q_d(a){return KC(v8,Uhe,591,a,0,1)};var a8=mdb(qte,'EcorePackageImpl/38',1221);bcb(1222,1,nwe,r_d);_.wj=function s_d(a){return false};_.xj=function t_d(a){return KC(u8,Uhe,2111,a,0,1)};var b8=mdb(qte,'EcorePackageImpl/39',1222);bcb(1187,1,nwe,u_d);_.wj=function v_d(a){return JD(a,88)};_.xj=function w_d(a){return KC(c5,Uhe,26,a,0,1)};var i8=mdb(qte,'EcorePackageImpl/4',1187);bcb(1223,1,nwe,x_d);_.wj=function y_d(a){return JD(a,184)};_.xj=function z_d(a){return KC(UI,nie,184,a,0,1)};var d8=mdb(qte,'EcorePackageImpl/40',1223);bcb(1224,1,nwe,A_d);_.wj=function B_d(a){return ND(a)};_.xj=function C_d(a){return KC(ZI,nie,2,a,6,1)};var e8=mdb(qte,'EcorePackageImpl/41',1224);bcb(1225,1,nwe,D_d);_.wj=function E_d(a){return JD(a,588)};_.xj=function F_d(a){return KC(X4,Uhe,588,a,0,1)};var f8=mdb(qte,'EcorePackageImpl/42',1225);bcb(1226,1,nwe,G_d);_.wj=function H_d(a){return false};_.xj=function I_d(a){return KC(V4,nie,2112,a,0,1)};var g8=mdb(qte,'EcorePackageImpl/43',1226);bcb(1227,1,nwe,J_d);_.wj=function K_d(a){return JD(a,42)};_.xj=function L_d(a){return KC(CK,zie,42,a,0,1)};var h8=mdb(qte,'EcorePackageImpl/44',1227);bcb(1188,1,nwe,M_d);_.wj=function N_d(a){return JD(a,138)};_.xj=function O_d(a){return KC(d5,Uhe,138,a,0,1)};var j8=mdb(qte,'EcorePackageImpl/5',1188);bcb(1189,1,nwe,P_d);_.wj=function Q_d(a){return JD(a,148)};_.xj=function R_d(a){return KC(f5,Uhe,148,a,0,1)};var k8=mdb(qte,'EcorePackageImpl/6',1189);bcb(1190,1,nwe,S_d);_.wj=function T_d(a){return JD(a,457)};_.xj=function U_d(a){return KC(h5,Uhe,671,a,0,1)};var l8=mdb(qte,'EcorePackageImpl/7',1190);bcb(1191,1,nwe,V_d);_.wj=function W_d(a){return JD(a,573)};_.xj=function X_d(a){return KC(g5,Uhe,678,a,0,1)};var m8=mdb(qte,'EcorePackageImpl/8',1191);bcb(1192,1,nwe,Y_d);_.wj=function Z_d(a){return JD(a,471)};_.xj=function $_d(a){return KC(i5,Uhe,471,a,0,1)};var n8=mdb(qte,'EcorePackageImpl/9',1192);bcb(1025,1982,ive,c0d);_.bi=function d0d(a,b){__d(this,BD(b,415))};_.fi=function e0d(a,b){a0d(this,a,BD(b,415))};var q8=mdb(qte,'MinimalEObjectImpl/1ArrayDelegatingAdapterList',1025);bcb(1026,143,fve,f0d);_.Ai=function g0d(){return this.a.a};var p8=mdb(qte,'MinimalEObjectImpl/1ArrayDelegatingAdapterList/1',1026);bcb(1053,1052,{},i0d);var t8=mdb('org.eclipse.emf.ecore.plugin','EcorePlugin',1053);var v8=odb(pwe,'Resource');bcb(781,1378,qwe);_.Yk=function m0d(a){};_.Zk=function n0d(a){};_.Vk=function o0d(){return !this.a&&(this.a=new z0d(this)),this.a};_.Wk=function p0d(a){var b,c,d,e,f;d=a.length;if(d>0){BCb(0,a.length);if(a.charCodeAt(0)==47){f=new Skb(4);e=1;for(b=1;b0&&(a=a.substr(0,c))}}}return k0d(this,a)};_.Xk=function q0d(){return this.c};_.Ib=function r0d(){var a;return hdb(this.gm)+'@'+(a=tb(this)>>>0,a.toString(16))+\" uri='\"+this.d+\"'\"};_.b=false;var z8=mdb(rwe,'ResourceImpl',781);bcb(1379,781,qwe,s0d);var w8=mdb(rwe,'BinaryResourceImpl',1379);bcb(1169,694,pue);_.si=function v0d(a){return JD(a,56)?t0d(this,BD(a,56)):JD(a,591)?new Fyd(BD(a,591).Vk()):PD(a)===PD(this.f)?BD(a,14).Kc():(LCd(),KCd.a)};_.Ob=function w0d(){return u0d(this)};_.a=false;var z9=mdb(yve,'EcoreUtil/ContentTreeIterator',1169);bcb(1380,1169,pue,x0d);_.si=function y0d(a){return PD(a)===PD(this.f)?BD(a,15).Kc():new C6d(BD(a,56))};var x8=mdb(rwe,'ResourceImpl/5',1380);bcb(648,1994,Ove,z0d);_.Hc=function A0d(a){return this.i<=4?pud(this,a):JD(a,49)&&BD(a,49).Zg()==this.a};_.bi=function B0d(a,b){a==this.i-1&&(this.a.b||(this.a.b=true,null))};_.di=function C0d(a,b){a==0?this.a.b||(this.a.b=true,null):Atd(this,a,b)};_.fi=function D0d(a,b){};_.gi=function E0d(a,b,c){};_.aj=function F0d(){return 2};_.Ai=function G0d(){return this.a};_.bj=function H0d(){return true};_.cj=function I0d(a,b){var c;c=BD(a,49);b=c.wh(this.a,b);return b};_.dj=function J0d(a,b){var c;c=BD(a,49);return c.wh(null,b)};_.ej=function K0d(){return false};_.hi=function L0d(){return true};_.ri=function M0d(a){return KC(m5,Uhe,56,a,0,1)};_.ni=function N0d(){return false};var y8=mdb(rwe,'ResourceImpl/ContentsEList',648);bcb(957,1964,Lie,O0d);_.Zc=function P0d(a){return this.a._h(a)};_.gc=function Q0d(){return this.a.gc()};var A8=mdb(yve,'AbstractSequentialInternalEList/1',957);var K6d,L6d,M6d,N6d;bcb(624,1,{},y1d);var R0d,S0d;var G8=mdb(yve,'BasicExtendedMetaData',624);bcb(1160,1,{},C1d);_.$k=function D1d(){return null};_._k=function E1d(){this.a==-2&&A1d(this,W0d(this.d,this.b));return this.a};_.al=function F1d(){return null};_.bl=function G1d(){return mmb(),mmb(),jmb};_.ne=function H1d(){this.c==Gwe&&B1d(this,_0d(this.d,this.b));return this.c};_.cl=function I1d(){return 0};_.a=-2;_.c=Gwe;var C8=mdb(yve,'BasicExtendedMetaData/EClassExtendedMetaDataImpl',1160);bcb(1161,1,{},O1d);_.$k=function P1d(){this.a==(T0d(),R0d)&&J1d(this,V0d(this.f,this.b));return this.a};_._k=function Q1d(){return 0};_.al=function R1d(){this.c==(T0d(),R0d)&&K1d(this,Z0d(this.f,this.b));return this.c};_.bl=function S1d(){!this.d&&L1d(this,$0d(this.f,this.b));return this.d};_.ne=function T1d(){this.e==Gwe&&M1d(this,_0d(this.f,this.b));return this.e};_.cl=function U1d(){this.g==-2&&N1d(this,c1d(this.f,this.b));return this.g};_.e=Gwe;_.g=-2;var D8=mdb(yve,'BasicExtendedMetaData/EDataTypeExtendedMetaDataImpl',1161);bcb(1159,1,{},Y1d);_.b=false;_.c=false;var E8=mdb(yve,'BasicExtendedMetaData/EPackageExtendedMetaDataImpl',1159);bcb(1162,1,{},j2d);_.c=-2;_.e=Gwe;_.f=Gwe;var F8=mdb(yve,'BasicExtendedMetaData/EStructuralFeatureExtendedMetaDataImpl',1162);bcb(585,622,Pve,k2d);_.aj=function l2d(){return this.c};_.Fk=function m2d(){return false};_.li=function n2d(a,b){return b};_.c=0;var T8=mdb(yve,'EDataTypeEList',585);var O9=odb(yve,'FeatureMap');bcb(75,585,{3:1,4:1,20:1,28:1,52:1,14:1,15:1,54:1,67:1,63:1,58:1,76:1,153:1,215:1,1937:1,69:1,95:1},u3d);_.Vc=function v3d(a,b){o2d(this,a,BD(b,72))};_.Fc=function w3d(a){return r2d(this,BD(a,72))};_.Yh=function B3d(a){w2d(this,BD(a,72))};_.cj=function M3d(a,b){return O2d(this,BD(a,72),b)};_.dj=function N3d(a,b){return Q2d(this,BD(a,72),b)};_.ii=function P3d(a,b){return W2d(this,a,b)};_.li=function R3d(a,b){return _2d(this,a,BD(b,72))};_._c=function T3d(a,b){return c3d(this,a,BD(b,72))};_.jj=function X3d(a,b){return i3d(this,BD(a,72),b)};_.kj=function Y3d(a,b){return k3d(this,BD(a,72),b)};_.lj=function Z3d(a,b,c){return l3d(this,BD(a,72),BD(b,72),c)};_.oi=function _3d(a,b){return t3d(this,a,BD(b,72))};_.dl=function x3d(a,b){return q2d(this,a,b)};_.Wc=function y3d(a,b){var c,d,e,f,g,h,i,j,k;j=new zud(b.gc());for(e=b.Kc();e.Ob();){d=BD(e.Pb(),72);f=d.ak();if(T6d(this.e,f)){(!f.hi()||!E2d(this,f,d.dd())&&!pud(j,d))&&wtd(j,d)}else{k=S6d(this.e.Tg(),f);c=BD(this.g,119);g=true;for(h=0;h=0){b=a[this.c];if(this.k.rl(b.ak())){this.j=this.f?b:b.dd();this.i=-2;return true}}this.i=-1;this.g=-1;return false};var H8=mdb(yve,'BasicFeatureMap/FeatureEIterator',410);bcb(662,410,jie,s4d);_.Lk=function t4d(){return true};var I8=mdb(yve,'BasicFeatureMap/ResolvingFeatureEIterator',662);bcb(955,486,Vve,u4d);_.Gi=function v4d(){return this};var M8=mdb(yve,'EContentsEList/1',955);bcb(956,486,Vve,w4d);_.Lk=function x4d(){return false};var N8=mdb(yve,'EContentsEList/2',956);bcb(954,279,Wve,y4d);_.Nk=function z4d(a){};_.Ob=function A4d(){return false};_.Sb=function B4d(){return false};var O8=mdb(yve,'EContentsEList/FeatureIteratorImpl/1',954);bcb(825,585,Pve,C4d);_.ci=function D4d(){this.a=true};_.fj=function E4d(){return this.a};_.Xj=function F4d(){var a;Uxd(this);if(oid(this.e)){a=this.a;this.a=false;Uhd(this.e,new qSd(this.e,2,this.c,a,false))}else{this.a=false}};_.a=false;var S8=mdb(yve,'EDataTypeEList/Unsettable',825);bcb(1849,585,Pve,G4d);_.hi=function H4d(){return true};var V8=mdb(yve,'EDataTypeUniqueEList',1849);bcb(1850,825,Pve,I4d);_.hi=function J4d(){return true};var U8=mdb(yve,'EDataTypeUniqueEList/Unsettable',1850);bcb(139,85,Pve,K4d);_.Ek=function L4d(){return true};_.li=function M4d(a,b){return ILd(this,a,BD(b,56))};var W8=mdb(yve,'EObjectContainmentEList/Resolving',139);bcb(1163,545,Pve,N4d);_.Ek=function O4d(){return true};_.li=function P4d(a,b){return ILd(this,a,BD(b,56))};var X8=mdb(yve,'EObjectContainmentEList/Unsettable/Resolving',1163);bcb(748,16,Pve,Q4d);_.ci=function R4d(){this.a=true};_.fj=function S4d(){return this.a};_.Xj=function T4d(){var a;Uxd(this);if(oid(this.e)){a=this.a;this.a=false;Uhd(this.e,new qSd(this.e,2,this.c,a,false))}else{this.a=false}};_.a=false;var a9=mdb(yve,'EObjectContainmentWithInverseEList/Unsettable',748);bcb(1173,748,Pve,U4d);_.Ek=function V4d(){return true};_.li=function W4d(a,b){return ILd(this,a,BD(b,56))};var _8=mdb(yve,'EObjectContainmentWithInverseEList/Unsettable/Resolving',1173);bcb(743,496,Pve,X4d);_.ci=function Y4d(){this.a=true};_.fj=function Z4d(){return this.a};_.Xj=function $4d(){var a;Uxd(this);if(oid(this.e)){a=this.a;this.a=false;Uhd(this.e,new qSd(this.e,2,this.c,a,false))}else{this.a=false}};_.a=false;var c9=mdb(yve,'EObjectEList/Unsettable',743);bcb(328,496,Pve,_4d);_.Ek=function a5d(){return true};_.li=function b5d(a,b){return ILd(this,a,BD(b,56))};var f9=mdb(yve,'EObjectResolvingEList',328);bcb(1641,743,Pve,c5d);_.Ek=function d5d(){return true};_.li=function e5d(a,b){return ILd(this,a,BD(b,56))};var e9=mdb(yve,'EObjectResolvingEList/Unsettable',1641);bcb(1381,1,{},h5d);var f5d;var g9=mdb(yve,'EObjectValidator',1381);bcb(546,496,Pve,i5d);_.zk=function j5d(){return this.d};_.Ak=function k5d(){return this.b};_.bj=function l5d(){return true};_.Dk=function m5d(){return true};_.b=0;var k9=mdb(yve,'EObjectWithInverseEList',546);bcb(1176,546,Pve,n5d);_.Ck=function o5d(){return true};var h9=mdb(yve,'EObjectWithInverseEList/ManyInverse',1176);bcb(625,546,Pve,p5d);_.ci=function q5d(){this.a=true};_.fj=function r5d(){return this.a};_.Xj=function s5d(){var a;Uxd(this);if(oid(this.e)){a=this.a;this.a=false;Uhd(this.e,new qSd(this.e,2,this.c,a,false))}else{this.a=false}};_.a=false;var j9=mdb(yve,'EObjectWithInverseEList/Unsettable',625);bcb(1175,625,Pve,t5d);_.Ck=function u5d(){return true};var i9=mdb(yve,'EObjectWithInverseEList/Unsettable/ManyInverse',1175);bcb(749,546,Pve,v5d);_.Ek=function w5d(){return true};_.li=function x5d(a,b){return ILd(this,a,BD(b,56))};var o9=mdb(yve,'EObjectWithInverseResolvingEList',749);bcb(31,749,Pve,y5d);_.Ck=function z5d(){return true};var l9=mdb(yve,'EObjectWithInverseResolvingEList/ManyInverse',31);bcb(750,625,Pve,A5d);_.Ek=function B5d(){return true};_.li=function C5d(a,b){return ILd(this,a,BD(b,56))};var n9=mdb(yve,'EObjectWithInverseResolvingEList/Unsettable',750);bcb(1174,750,Pve,D5d);_.Ck=function E5d(){return true};var m9=mdb(yve,'EObjectWithInverseResolvingEList/Unsettable/ManyInverse',1174);bcb(1164,622,Pve);_.ai=function F5d(){return (this.b&1792)==0};_.ci=function G5d(){this.b|=1};_.Bk=function H5d(){return (this.b&4)!=0};_.bj=function I5d(){return (this.b&40)!=0};_.Ck=function J5d(){return (this.b&16)!=0};_.Dk=function K5d(){return (this.b&8)!=0};_.Ek=function L5d(){return (this.b&Dve)!=0};_.rk=function M5d(){return (this.b&32)!=0};_.Fk=function N5d(){return (this.b&zte)!=0};_.wj=function O5d(a){return !this.d?this.ak().Yj().wj(a):qEd(this.d,a)};_.fj=function P5d(){return (this.b&2)!=0?(this.b&1)!=0:this.i!=0};_.hi=function Q5d(){return (this.b&128)!=0};_.Xj=function S5d(){var a;Uxd(this);if((this.b&2)!=0){if(oid(this.e)){a=(this.b&1)!=0;this.b&=-2;GLd(this,new qSd(this.e,2,bLd(this.e.Tg(),this.ak()),a,false))}else{this.b&=-2}}};_.ni=function T5d(){return (this.b&1536)==0};_.b=0;var q9=mdb(yve,'EcoreEList/Generic',1164);bcb(1165,1164,Pve,U5d);_.ak=function V5d(){return this.a};var p9=mdb(yve,'EcoreEList/Dynamic',1165);bcb(747,63,oue,W5d);_.ri=function X5d(a){return izd(this.a.a,a)};var u9=mdb(yve,'EcoreEMap/1',747);bcb(746,85,Pve,Y5d);_.bi=function Z5d(a,b){uAd(this.b,BD(b,133))};_.di=function $5d(a,b){tAd(this.b)};_.ei=function _5d(a,b,c){var d;++(d=this.b,BD(b,133),d).e};_.fi=function a6d(a,b){vAd(this.b,BD(b,133))};_.gi=function b6d(a,b,c){vAd(this.b,BD(c,133));PD(c)===PD(b)&&BD(c,133).Th(CAd(BD(b,133).cd()));uAd(this.b,BD(b,133))};var v9=mdb(yve,'EcoreEMap/DelegateEObjectContainmentEList',746);bcb(1171,151,Ave,c6d);var x9=mdb(yve,'EcoreEMap/Unsettable',1171);bcb(1172,746,Pve,d6d);_.ci=function e6d(){this.a=true};_.fj=function f6d(){return this.a};_.Xj=function g6d(){var a;Uxd(this);if(oid(this.e)){a=this.a;this.a=false;Uhd(this.e,new qSd(this.e,2,this.c,a,false))}else{this.a=false}};_.a=false;var w9=mdb(yve,'EcoreEMap/Unsettable/UnsettableDelegateEObjectContainmentEList',1172);bcb(1168,228,fke,A6d);_.a=false;_.b=false;var A9=mdb(yve,'EcoreUtil/Copier',1168);bcb(745,1,aie,C6d);_.Nb=function D6d(a){Rrb(this,a)};_.Ob=function E6d(){return B6d(this)};_.Pb=function F6d(){var a;B6d(this);a=this.b;this.b=null;return a};_.Qb=function G6d(){this.a.Qb()};var B9=mdb(yve,'EcoreUtil/ProperContentIterator',745);bcb(1382,1381,{},J6d);var H6d;var C9=mdb(yve,'EcoreValidator',1382);var P6d;var N9=odb(yve,'FeatureMapUtil/Validator');bcb(1260,1,{1942:1},U6d);_.rl=function V6d(a){return true};var F9=mdb(yve,'FeatureMapUtil/1',1260);bcb(757,1,{1942:1},Z6d);_.rl=function $6d(a){var b;if(this.c==a)return true;b=DD(Ohb(this.a,a));if(b==null){if(Y6d(this,a)){_6d(this.a,a,(Bcb(),Acb));return true}else{_6d(this.a,a,(Bcb(),zcb));return false}}else{return b==(Bcb(),Acb)}};_.e=false;var W6d;var I9=mdb(yve,'FeatureMapUtil/BasicValidator',757);bcb(758,43,fke,a7d);var H9=mdb(yve,'FeatureMapUtil/BasicValidator/Cache',758);bcb(501,52,{20:1,28:1,52:1,14:1,15:1,58:1,76:1,69:1,95:1},f7d);_.Vc=function g7d(a,b){p2d(this.c,this.b,a,b)};_.Fc=function h7d(a){return q2d(this.c,this.b,a)};_.Wc=function i7d(a,b){return s2d(this.c,this.b,a,b)};_.Gc=function j7d(a){return b7d(this,a)};_.Xh=function k7d(a,b){u2d(this.c,this.b,a,b)};_.lk=function l7d(a,b){return x2d(this.c,this.b,a,b)};_.pi=function m7d(a){return J2d(this.c,this.b,a,false)};_.Zh=function n7d(){return y2d(this.c,this.b)};_.$h=function o7d(){return z2d(this.c,this.b)};_._h=function p7d(a){return A2d(this.c,this.b,a)};_.mk=function q7d(a,b){return c7d(this,a,b)};_.$b=function r7d(){d7d(this)};_.Hc=function s7d(a){return E2d(this.c,this.b,a)};_.Ic=function t7d(a){return G2d(this.c,this.b,a)};_.Xb=function u7d(a){return J2d(this.c,this.b,a,true)};_.Wj=function v7d(a){return this};_.Xc=function w7d(a){return L2d(this.c,this.b,a)};_.dc=function x7d(){return e7d(this)};_.fj=function y7d(){return !R2d(this.c,this.b)};_.Kc=function z7d(){return S2d(this.c,this.b)};_.Yc=function A7d(){return U2d(this.c,this.b)};_.Zc=function B7d(a){return V2d(this.c,this.b,a)};_.ii=function C7d(a,b){return X2d(this.c,this.b,a,b)};_.ji=function D7d(a,b){Y2d(this.c,this.b,a,b)};_.$c=function E7d(a){return Z2d(this.c,this.b,a)};_.Mc=function F7d(a){return $2d(this.c,this.b,a)};_._c=function G7d(a,b){return e3d(this.c,this.b,a,b)};_.Wb=function H7d(a){D2d(this.c,this.b);b7d(this,BD(a,15))};_.gc=function I7d(){return n3d(this.c,this.b)};_.Pc=function J7d(){return o3d(this.c,this.b)};_.Qc=function K7d(a){return q3d(this.c,this.b,a)};_.Ib=function L7d(){var a,b;b=new Hfb;b.a+='[';for(a=y2d(this.c,this.b);b4d(a);){Efb(b,xfb(d4d(a)));b4d(a)&&(b.a+=She,b)}b.a+=']';return b.a};_.Xj=function M7d(){D2d(this.c,this.b)};var J9=mdb(yve,'FeatureMapUtil/FeatureEList',501);bcb(627,36,fve,O7d);_.yi=function P7d(a){return N7d(this,a)};_.Di=function Q7d(a){var b,c,d,e,f,g,h;switch(this.d){case 1:case 2:{f=a.Ai();if(PD(f)===PD(this.c)&&N7d(this,null)==a.yi(null)){this.g=a.zi();a.xi()==1&&(this.d=1);return true}break}case 3:{e=a.xi();switch(e){case 3:{f=a.Ai();if(PD(f)===PD(this.c)&&N7d(this,null)==a.yi(null)){this.d=5;b=new zud(2);wtd(b,this.g);wtd(b,a.zi());this.g=b;return true}break}}break}case 5:{e=a.xi();switch(e){case 3:{f=a.Ai();if(PD(f)===PD(this.c)&&N7d(this,null)==a.yi(null)){c=BD(this.g,14);c.Fc(a.zi());return true}break}}break}case 4:{e=a.xi();switch(e){case 3:{f=a.Ai();if(PD(f)===PD(this.c)&&N7d(this,null)==a.yi(null)){this.d=1;this.g=a.zi();return true}break}case 4:{f=a.Ai();if(PD(f)===PD(this.c)&&N7d(this,null)==a.yi(null)){this.d=6;h=new zud(2);wtd(h,this.n);wtd(h,a.Bi());this.n=h;g=OC(GC(WD,1),oje,25,15,[this.o,a.Ci()]);this.g=g;return true}break}}break}case 6:{e=a.xi();switch(e){case 4:{f=a.Ai();if(PD(f)===PD(this.c)&&N7d(this,null)==a.yi(null)){c=BD(this.n,14);c.Fc(a.Bi());g=BD(this.g,48);d=KC(WD,oje,25,g.length+1,15,1);$fb(g,0,d,0,g.length);d[g.length]=a.Ci();this.g=d;return true}break}}break}}return false};var K9=mdb(yve,'FeatureMapUtil/FeatureENotificationImpl',627);bcb(552,501,{20:1,28:1,52:1,14:1,15:1,58:1,76:1,153:1,215:1,1937:1,69:1,95:1},R7d);_.dl=function S7d(a,b){return q2d(this.c,a,b)};_.el=function T7d(a,b,c){return x2d(this.c,a,b,c)};_.fl=function U7d(a,b,c){return C2d(this.c,a,b,c)};_.gl=function V7d(){return this};_.hl=function W7d(a,b){return K2d(this.c,a,b)};_.il=function X7d(a){return BD(J2d(this.c,this.b,a,false),72).ak()};_.jl=function Y7d(a){return BD(J2d(this.c,this.b,a,false),72).dd()};_.kl=function Z7d(){return this.a};_.ll=function $7d(a){return !R2d(this.c,a)};_.ml=function _7d(a,b){f3d(this.c,a,b)};_.nl=function a8d(a){return g3d(this.c,a)};_.ol=function b8d(a){s3d(this.c,a)};var L9=mdb(yve,'FeatureMapUtil/FeatureFeatureMap',552);bcb(1259,1,zve,c8d);_.Wj=function d8d(a){return J2d(this.b,this.a,-1,a)};_.fj=function e8d(){return !R2d(this.b,this.a)};_.Wb=function f8d(a){f3d(this.b,this.a,a)};_.Xj=function g8d(){D2d(this.b,this.a)};var M9=mdb(yve,'FeatureMapUtil/FeatureValue',1259);var h8d,i8d,j8d,k8d,l8d;var Q9=odb(Iwe,'AnyType');bcb(666,60,Tie,n8d);var R9=mdb(Iwe,'InvalidDatatypeValueException',666);var S9=odb(Iwe,Jwe);var T9=odb(Iwe,Kwe);var U9=odb(Iwe,Lwe);var o8d;var q8d;var s8d,t8d,u8d,v8d,w8d,x8d,y8d,z8d,A8d,B8d,C8d,D8d,E8d,F8d,G8d,H8d,I8d,J8d,K8d,L8d,M8d,N8d,O8d,P8d;bcb(830,506,{105:1,92:1,90:1,56:1,49:1,97:1,843:1},R8d);_._g=function S8d(a,b,c){switch(a){case 0:if(c)return !this.c&&(this.c=new u3d(this,0)),this.c;return !this.c&&(this.c=new u3d(this,0)),this.c.b;case 1:if(c)return !this.c&&(this.c=new u3d(this,0)),BD(T2d(this.c,(Q8d(),t8d)),153);return (!this.c&&(this.c=new u3d(this,0)),BD(BD(T2d(this.c,(Q8d(),t8d)),153),215)).kl();case 2:if(c)return !this.b&&(this.b=new u3d(this,2)),this.b;return !this.b&&(this.b=new u3d(this,2)),this.b.b;}return bid(this,a-aLd(this.zh()),XKd((this.j&2)==0?this.zh():(!this.k&&(this.k=new HGd),this.k).ck(),a),b,c)};_.jh=function T8d(a,b,c){var d;switch(b){case 0:return !this.c&&(this.c=new u3d(this,0)),B2d(this.c,a,c);case 1:return (!this.c&&(this.c=new u3d(this,0)),BD(BD(T2d(this.c,(Q8d(),t8d)),153),69)).mk(a,c);case 2:return !this.b&&(this.b=new u3d(this,2)),B2d(this.b,a,c);}return d=BD(XKd((this.j&2)==0?this.zh():(!this.k&&(this.k=new HGd),this.k).ck(),b),66),d.Nj().Rj(this,Aid(this),b-aLd(this.zh()),a,c)};_.lh=function U8d(a){switch(a){case 0:return !!this.c&&this.c.i!=0;case 1:return !(!this.c&&(this.c=new u3d(this,0)),BD(T2d(this.c,(Q8d(),t8d)),153)).dc();case 2:return !!this.b&&this.b.i!=0;}return cid(this,a-aLd(this.zh()),XKd((this.j&2)==0?this.zh():(!this.k&&(this.k=new HGd),this.k).ck(),a))};_.sh=function V8d(a,b){switch(a){case 0:!this.c&&(this.c=new u3d(this,0));d3d(this.c,b);return;case 1:(!this.c&&(this.c=new u3d(this,0)),BD(BD(T2d(this.c,(Q8d(),t8d)),153),215)).Wb(b);return;case 2:!this.b&&(this.b=new u3d(this,2));d3d(this.b,b);return;}did(this,a-aLd(this.zh()),XKd((this.j&2)==0?this.zh():(!this.k&&(this.k=new HGd),this.k).ck(),a),b)};_.zh=function W8d(){return Q8d(),s8d};_.Bh=function X8d(a){switch(a){case 0:!this.c&&(this.c=new u3d(this,0));Uxd(this.c);return;case 1:(!this.c&&(this.c=new u3d(this,0)),BD(T2d(this.c,(Q8d(),t8d)),153)).$b();return;case 2:!this.b&&(this.b=new u3d(this,2));Uxd(this.b);return;}eid(this,a-aLd(this.zh()),XKd((this.j&2)==0?this.zh():(!this.k&&(this.k=new HGd),this.k).ck(),a))};_.Ib=function Y8d(){var a;if((this.j&4)!=0)return Eid(this);a=new Jfb(Eid(this));a.a+=' (mixed: ';Dfb(a,this.c);a.a+=', anyAttribute: ';Dfb(a,this.b);a.a+=')';return a.a};var V9=mdb(Mwe,'AnyTypeImpl',830);bcb(667,506,{105:1,92:1,90:1,56:1,49:1,97:1,2021:1,667:1},_8d);_._g=function a9d(a,b,c){switch(a){case 0:return this.a;case 1:return this.b;}return bid(this,a-aLd((Q8d(),F8d)),XKd((this.j&2)==0?F8d:(!this.k&&(this.k=new HGd),this.k).ck(),a),b,c)};_.lh=function b9d(a){switch(a){case 0:return this.a!=null;case 1:return this.b!=null;}return cid(this,a-aLd((Q8d(),F8d)),XKd((this.j&2)==0?F8d:(!this.k&&(this.k=new HGd),this.k).ck(),a))};_.sh=function c9d(a,b){switch(a){case 0:Z8d(this,GD(b));return;case 1:$8d(this,GD(b));return;}did(this,a-aLd((Q8d(),F8d)),XKd((this.j&2)==0?F8d:(!this.k&&(this.k=new HGd),this.k).ck(),a),b)};_.zh=function d9d(){return Q8d(),F8d};_.Bh=function e9d(a){switch(a){case 0:this.a=null;return;case 1:this.b=null;return;}eid(this,a-aLd((Q8d(),F8d)),XKd((this.j&2)==0?F8d:(!this.k&&(this.k=new HGd),this.k).ck(),a))};_.Ib=function f9d(){var a;if((this.j&4)!=0)return Eid(this);a=new Jfb(Eid(this));a.a+=' (data: ';Efb(a,this.a);a.a+=', target: ';Efb(a,this.b);a.a+=')';return a.a};_.a=null;_.b=null;var W9=mdb(Mwe,'ProcessingInstructionImpl',667);bcb(668,830,{105:1,92:1,90:1,56:1,49:1,97:1,843:1,2022:1,668:1},i9d);_._g=function j9d(a,b,c){switch(a){case 0:if(c)return !this.c&&(this.c=new u3d(this,0)),this.c;return !this.c&&(this.c=new u3d(this,0)),this.c.b;case 1:if(c)return !this.c&&(this.c=new u3d(this,0)),BD(T2d(this.c,(Q8d(),t8d)),153);return (!this.c&&(this.c=new u3d(this,0)),BD(BD(T2d(this.c,(Q8d(),t8d)),153),215)).kl();case 2:if(c)return !this.b&&(this.b=new u3d(this,2)),this.b;return !this.b&&(this.b=new u3d(this,2)),this.b.b;case 3:return !this.c&&(this.c=new u3d(this,0)),GD(K2d(this.c,(Q8d(),I8d),true));case 4:return j6d(this.a,(!this.c&&(this.c=new u3d(this,0)),GD(K2d(this.c,(Q8d(),I8d),true))));case 5:return this.a;}return bid(this,a-aLd((Q8d(),H8d)),XKd((this.j&2)==0?H8d:(!this.k&&(this.k=new HGd),this.k).ck(),a),b,c)};_.lh=function k9d(a){switch(a){case 0:return !!this.c&&this.c.i!=0;case 1:return !(!this.c&&(this.c=new u3d(this,0)),BD(T2d(this.c,(Q8d(),t8d)),153)).dc();case 2:return !!this.b&&this.b.i!=0;case 3:return !this.c&&(this.c=new u3d(this,0)),GD(K2d(this.c,(Q8d(),I8d),true))!=null;case 4:return j6d(this.a,(!this.c&&(this.c=new u3d(this,0)),GD(K2d(this.c,(Q8d(),I8d),true))))!=null;case 5:return !!this.a;}return cid(this,a-aLd((Q8d(),H8d)),XKd((this.j&2)==0?H8d:(!this.k&&(this.k=new HGd),this.k).ck(),a))};_.sh=function l9d(a,b){switch(a){case 0:!this.c&&(this.c=new u3d(this,0));d3d(this.c,b);return;case 1:(!this.c&&(this.c=new u3d(this,0)),BD(BD(T2d(this.c,(Q8d(),t8d)),153),215)).Wb(b);return;case 2:!this.b&&(this.b=new u3d(this,2));d3d(this.b,b);return;case 3:h9d(this,GD(b));return;case 4:h9d(this,h6d(this.a,b));return;case 5:g9d(this,BD(b,148));return;}did(this,a-aLd((Q8d(),H8d)),XKd((this.j&2)==0?H8d:(!this.k&&(this.k=new HGd),this.k).ck(),a),b)};_.zh=function m9d(){return Q8d(),H8d};_.Bh=function n9d(a){switch(a){case 0:!this.c&&(this.c=new u3d(this,0));Uxd(this.c);return;case 1:(!this.c&&(this.c=new u3d(this,0)),BD(T2d(this.c,(Q8d(),t8d)),153)).$b();return;case 2:!this.b&&(this.b=new u3d(this,2));Uxd(this.b);return;case 3:!this.c&&(this.c=new u3d(this,0));f3d(this.c,(Q8d(),I8d),null);return;case 4:h9d(this,h6d(this.a,null));return;case 5:this.a=null;return;}eid(this,a-aLd((Q8d(),H8d)),XKd((this.j&2)==0?H8d:(!this.k&&(this.k=new HGd),this.k).ck(),a))};var X9=mdb(Mwe,'SimpleAnyTypeImpl',668);bcb(669,506,{105:1,92:1,90:1,56:1,49:1,97:1,2023:1,669:1},o9d);_._g=function p9d(a,b,c){switch(a){case 0:if(c)return !this.a&&(this.a=new u3d(this,0)),this.a;return !this.a&&(this.a=new u3d(this,0)),this.a.b;case 1:return c?(!this.b&&(this.b=new dId((jGd(),fGd),x6,this,1)),this.b):(!this.b&&(this.b=new dId((jGd(),fGd),x6,this,1)),FAd(this.b));case 2:return c?(!this.c&&(this.c=new dId((jGd(),fGd),x6,this,2)),this.c):(!this.c&&(this.c=new dId((jGd(),fGd),x6,this,2)),FAd(this.c));case 3:return !this.a&&(this.a=new u3d(this,0)),T2d(this.a,(Q8d(),L8d));case 4:return !this.a&&(this.a=new u3d(this,0)),T2d(this.a,(Q8d(),M8d));case 5:return !this.a&&(this.a=new u3d(this,0)),T2d(this.a,(Q8d(),O8d));case 6:return !this.a&&(this.a=new u3d(this,0)),T2d(this.a,(Q8d(),P8d));}return bid(this,a-aLd((Q8d(),K8d)),XKd((this.j&2)==0?K8d:(!this.k&&(this.k=new HGd),this.k).ck(),a),b,c)};_.jh=function q9d(a,b,c){var d;switch(b){case 0:return !this.a&&(this.a=new u3d(this,0)),B2d(this.a,a,c);case 1:return !this.b&&(this.b=new dId((jGd(),fGd),x6,this,1)),bId(this.b,a,c);case 2:return !this.c&&(this.c=new dId((jGd(),fGd),x6,this,2)),bId(this.c,a,c);case 5:return !this.a&&(this.a=new u3d(this,0)),c7d(T2d(this.a,(Q8d(),O8d)),a,c);}return d=BD(XKd((this.j&2)==0?(Q8d(),K8d):(!this.k&&(this.k=new HGd),this.k).ck(),b),66),d.Nj().Rj(this,Aid(this),b-aLd((Q8d(),K8d)),a,c)};_.lh=function r9d(a){switch(a){case 0:return !!this.a&&this.a.i!=0;case 1:return !!this.b&&this.b.f!=0;case 2:return !!this.c&&this.c.f!=0;case 3:return !this.a&&(this.a=new u3d(this,0)),!e7d(T2d(this.a,(Q8d(),L8d)));case 4:return !this.a&&(this.a=new u3d(this,0)),!e7d(T2d(this.a,(Q8d(),M8d)));case 5:return !this.a&&(this.a=new u3d(this,0)),!e7d(T2d(this.a,(Q8d(),O8d)));case 6:return !this.a&&(this.a=new u3d(this,0)),!e7d(T2d(this.a,(Q8d(),P8d)));}return cid(this,a-aLd((Q8d(),K8d)),XKd((this.j&2)==0?K8d:(!this.k&&(this.k=new HGd),this.k).ck(),a))};_.sh=function s9d(a,b){switch(a){case 0:!this.a&&(this.a=new u3d(this,0));d3d(this.a,b);return;case 1:!this.b&&(this.b=new dId((jGd(),fGd),x6,this,1));cId(this.b,b);return;case 2:!this.c&&(this.c=new dId((jGd(),fGd),x6,this,2));cId(this.c,b);return;case 3:!this.a&&(this.a=new u3d(this,0));d7d(T2d(this.a,(Q8d(),L8d)));!this.a&&(this.a=new u3d(this,0));b7d(T2d(this.a,L8d),BD(b,14));return;case 4:!this.a&&(this.a=new u3d(this,0));d7d(T2d(this.a,(Q8d(),M8d)));!this.a&&(this.a=new u3d(this,0));b7d(T2d(this.a,M8d),BD(b,14));return;case 5:!this.a&&(this.a=new u3d(this,0));d7d(T2d(this.a,(Q8d(),O8d)));!this.a&&(this.a=new u3d(this,0));b7d(T2d(this.a,O8d),BD(b,14));return;case 6:!this.a&&(this.a=new u3d(this,0));d7d(T2d(this.a,(Q8d(),P8d)));!this.a&&(this.a=new u3d(this,0));b7d(T2d(this.a,P8d),BD(b,14));return;}did(this,a-aLd((Q8d(),K8d)),XKd((this.j&2)==0?K8d:(!this.k&&(this.k=new HGd),this.k).ck(),a),b)};_.zh=function t9d(){return Q8d(),K8d};_.Bh=function u9d(a){switch(a){case 0:!this.a&&(this.a=new u3d(this,0));Uxd(this.a);return;case 1:!this.b&&(this.b=new dId((jGd(),fGd),x6,this,1));this.b.c.$b();return;case 2:!this.c&&(this.c=new dId((jGd(),fGd),x6,this,2));this.c.c.$b();return;case 3:!this.a&&(this.a=new u3d(this,0));d7d(T2d(this.a,(Q8d(),L8d)));return;case 4:!this.a&&(this.a=new u3d(this,0));d7d(T2d(this.a,(Q8d(),M8d)));return;case 5:!this.a&&(this.a=new u3d(this,0));d7d(T2d(this.a,(Q8d(),O8d)));return;case 6:!this.a&&(this.a=new u3d(this,0));d7d(T2d(this.a,(Q8d(),P8d)));return;}eid(this,a-aLd((Q8d(),K8d)),XKd((this.j&2)==0?K8d:(!this.k&&(this.k=new HGd),this.k).ck(),a))};_.Ib=function v9d(){var a;if((this.j&4)!=0)return Eid(this);a=new Jfb(Eid(this));a.a+=' (mixed: ';Dfb(a,this.a);a.a+=')';return a.a};var Y9=mdb(Mwe,'XMLTypeDocumentRootImpl',669);bcb(1919,704,{105:1,92:1,90:1,471:1,147:1,56:1,108:1,49:1,97:1,150:1,114:1,115:1,2024:1},U9d);_.Ih=function V9d(a,b){switch(a.yj()){case 7:case 8:case 9:case 10:case 16:case 22:case 23:case 24:case 25:case 26:case 32:case 33:case 34:case 36:case 37:case 44:case 45:case 50:case 51:case 53:case 55:case 56:case 57:case 58:case 60:case 61:case 4:return b==null?null:fcb(b);case 19:case 28:case 29:case 35:case 38:case 39:case 41:case 46:case 52:case 54:case 5:return GD(b);case 6:return C9d(BD(b,190));case 12:case 47:case 49:case 11:return Vmd(this,a,b);case 13:return b==null?null:qgb(BD(b,240));case 15:case 14:return b==null?null:D9d(Edb(ED(b)));case 17:return E9d((Q8d(),b));case 18:return E9d(b);case 21:case 20:return b==null?null:F9d(BD(b,155).a);case 27:return G9d(BD(b,190));case 30:return H9d((Q8d(),BD(b,15)));case 31:return H9d(BD(b,15));case 40:return K9d((Q8d(),b));case 42:return I9d((Q8d(),b));case 43:return I9d(b);case 59:case 48:return J9d((Q8d(),b));default:throw vbb(new Wdb(tte+a.ne()+ute));}};_.Jh=function W9d(a){var b,c,d,e,f;switch(a.G==-1&&(a.G=(c=bKd(a),c?HLd(c.Mh(),a):-1)),a.G){case 0:return b=new R8d,b;case 1:return d=new _8d,d;case 2:return e=new i9d,e;case 3:return f=new o9d,f;default:throw vbb(new Wdb(xte+a.zb+ute));}};_.Kh=function X9d(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;switch(a.yj()){case 5:case 52:case 4:return b;case 6:return L9d(b);case 8:case 7:return b==null?null:B9d(b);case 9:return b==null?null:Scb(Icb((d=Qge(b,true),d.length>0&&(BCb(0,d.length),d.charCodeAt(0)==43)?d.substr(1):d),-128,127)<<24>>24);case 10:return b==null?null:Scb(Icb((e=Qge(b,true),e.length>0&&(BCb(0,e.length),e.charCodeAt(0)==43)?e.substr(1):e),-128,127)<<24>>24);case 11:return GD(Wmd(this,(Q8d(),w8d),b));case 12:return GD(Wmd(this,(Q8d(),x8d),b));case 13:return b==null?null:new tgb(Qge(b,true));case 15:case 14:return M9d(b);case 16:return GD(Wmd(this,(Q8d(),y8d),b));case 17:return N9d((Q8d(),b));case 18:return N9d(b);case 28:case 29:case 35:case 38:case 39:case 41:case 54:case 19:return Qge(b,true);case 21:case 20:return O9d(b);case 22:return GD(Wmd(this,(Q8d(),z8d),b));case 23:return GD(Wmd(this,(Q8d(),A8d),b));case 24:return GD(Wmd(this,(Q8d(),B8d),b));case 25:return GD(Wmd(this,(Q8d(),C8d),b));case 26:return GD(Wmd(this,(Q8d(),D8d),b));case 27:return P9d(b);case 30:return Q9d((Q8d(),b));case 31:return Q9d(b);case 32:return b==null?null:meb(Icb((k=Qge(b,true),k.length>0&&(BCb(0,k.length),k.charCodeAt(0)==43)?k.substr(1):k),Rie,Ohe));case 33:return b==null?null:new Ygb((l=Qge(b,true),l.length>0&&(BCb(0,l.length),l.charCodeAt(0)==43)?l.substr(1):l));case 34:return b==null?null:meb(Icb((m=Qge(b,true),m.length>0&&(BCb(0,m.length),m.charCodeAt(0)==43)?m.substr(1):m),Rie,Ohe));case 36:return b==null?null:Aeb(Jcb((n=Qge(b,true),n.length>0&&(BCb(0,n.length),n.charCodeAt(0)==43)?n.substr(1):n)));case 37:return b==null?null:Aeb(Jcb((o=Qge(b,true),o.length>0&&(BCb(0,o.length),o.charCodeAt(0)==43)?o.substr(1):o)));case 40:return T9d((Q8d(),b));case 42:return R9d((Q8d(),b));case 43:return R9d(b);case 44:return b==null?null:new Ygb((p=Qge(b,true),p.length>0&&(BCb(0,p.length),p.charCodeAt(0)==43)?p.substr(1):p));case 45:return b==null?null:new Ygb((q=Qge(b,true),q.length>0&&(BCb(0,q.length),q.charCodeAt(0)==43)?q.substr(1):q));case 46:return Qge(b,false);case 47:return GD(Wmd(this,(Q8d(),E8d),b));case 59:case 48:return S9d((Q8d(),b));case 49:return GD(Wmd(this,(Q8d(),G8d),b));case 50:return b==null?null:Web(Icb((r=Qge(b,true),r.length>0&&(BCb(0,r.length),r.charCodeAt(0)==43)?r.substr(1):r),awe,32767)<<16>>16);case 51:return b==null?null:Web(Icb((f=Qge(b,true),f.length>0&&(BCb(0,f.length),f.charCodeAt(0)==43)?f.substr(1):f),awe,32767)<<16>>16);case 53:return GD(Wmd(this,(Q8d(),J8d),b));case 55:return b==null?null:Web(Icb((g=Qge(b,true),g.length>0&&(BCb(0,g.length),g.charCodeAt(0)==43)?g.substr(1):g),awe,32767)<<16>>16);case 56:return b==null?null:Web(Icb((h=Qge(b,true),h.length>0&&(BCb(0,h.length),h.charCodeAt(0)==43)?h.substr(1):h),awe,32767)<<16>>16);case 57:return b==null?null:Aeb(Jcb((i=Qge(b,true),i.length>0&&(BCb(0,i.length),i.charCodeAt(0)==43)?i.substr(1):i)));case 58:return b==null?null:Aeb(Jcb((j=Qge(b,true),j.length>0&&(BCb(0,j.length),j.charCodeAt(0)==43)?j.substr(1):j)));case 60:return b==null?null:meb(Icb((c=Qge(b,true),c.length>0&&(BCb(0,c.length),c.charCodeAt(0)==43)?c.substr(1):c),Rie,Ohe));case 61:return b==null?null:meb(Icb(Qge(b,true),Rie,Ohe));default:throw vbb(new Wdb(tte+a.ne()+ute));}};var w9d,x9d,y9d,z9d;var Z9=mdb(Mwe,'XMLTypeFactoryImpl',1919);bcb(586,179,{105:1,92:1,90:1,147:1,191:1,56:1,235:1,108:1,49:1,97:1,150:1,179:1,114:1,115:1,675:1,1945:1,586:1},cae);_.N=false;_.O=false;var Z9d=false;var Yab=mdb(Mwe,'XMLTypePackageImpl',586);bcb(1852,1,{837:1},fae);_._j=function gae(){return Uge(),Tge};var iab=mdb(Mwe,'XMLTypePackageImpl/1',1852);bcb(1861,1,nwe,hae);_.wj=function iae(a){return ND(a)};_.xj=function jae(a){return KC(ZI,nie,2,a,6,1)};var $9=mdb(Mwe,'XMLTypePackageImpl/10',1861);bcb(1862,1,nwe,kae);_.wj=function lae(a){return ND(a)};_.xj=function mae(a){return KC(ZI,nie,2,a,6,1)};var _9=mdb(Mwe,'XMLTypePackageImpl/11',1862);bcb(1863,1,nwe,nae);_.wj=function oae(a){return ND(a)};_.xj=function pae(a){return KC(ZI,nie,2,a,6,1)};var aab=mdb(Mwe,'XMLTypePackageImpl/12',1863);bcb(1864,1,nwe,qae);_.wj=function rae(a){return LD(a)};_.xj=function sae(a){return KC(BI,nie,333,a,7,1)};var bab=mdb(Mwe,'XMLTypePackageImpl/13',1864);bcb(1865,1,nwe,tae);_.wj=function uae(a){return ND(a)};_.xj=function vae(a){return KC(ZI,nie,2,a,6,1)};var cab=mdb(Mwe,'XMLTypePackageImpl/14',1865);bcb(1866,1,nwe,wae);_.wj=function xae(a){return JD(a,15)};_.xj=function yae(a){return KC(yK,eme,15,a,0,1)};var dab=mdb(Mwe,'XMLTypePackageImpl/15',1866);bcb(1867,1,nwe,zae);_.wj=function Aae(a){return JD(a,15)};_.xj=function Bae(a){return KC(yK,eme,15,a,0,1)};var eab=mdb(Mwe,'XMLTypePackageImpl/16',1867);bcb(1868,1,nwe,Cae);_.wj=function Dae(a){return ND(a)};_.xj=function Eae(a){return KC(ZI,nie,2,a,6,1)};var fab=mdb(Mwe,'XMLTypePackageImpl/17',1868);bcb(1869,1,nwe,Fae);_.wj=function Gae(a){return JD(a,155)};_.xj=function Hae(a){return KC(FI,nie,155,a,0,1)};var gab=mdb(Mwe,'XMLTypePackageImpl/18',1869);bcb(1870,1,nwe,Iae);_.wj=function Jae(a){return ND(a)};_.xj=function Kae(a){return KC(ZI,nie,2,a,6,1)};var hab=mdb(Mwe,'XMLTypePackageImpl/19',1870);bcb(1853,1,nwe,Lae);_.wj=function Mae(a){return JD(a,843)};_.xj=function Nae(a){return KC(Q9,Uhe,843,a,0,1)};var tab=mdb(Mwe,'XMLTypePackageImpl/2',1853);bcb(1871,1,nwe,Oae);_.wj=function Pae(a){return ND(a)};_.xj=function Qae(a){return KC(ZI,nie,2,a,6,1)};var jab=mdb(Mwe,'XMLTypePackageImpl/20',1871);bcb(1872,1,nwe,Rae);_.wj=function Sae(a){return ND(a)};_.xj=function Tae(a){return KC(ZI,nie,2,a,6,1)};var kab=mdb(Mwe,'XMLTypePackageImpl/21',1872);bcb(1873,1,nwe,Uae);_.wj=function Vae(a){return ND(a)};_.xj=function Wae(a){return KC(ZI,nie,2,a,6,1)};var lab=mdb(Mwe,'XMLTypePackageImpl/22',1873);bcb(1874,1,nwe,Xae);_.wj=function Yae(a){return ND(a)};_.xj=function Zae(a){return KC(ZI,nie,2,a,6,1)};var mab=mdb(Mwe,'XMLTypePackageImpl/23',1874);bcb(1875,1,nwe,$ae);_.wj=function _ae(a){return JD(a,190)};_.xj=function abe(a){return KC(SD,nie,190,a,0,2)};var nab=mdb(Mwe,'XMLTypePackageImpl/24',1875);bcb(1876,1,nwe,bbe);_.wj=function cbe(a){return ND(a)};_.xj=function dbe(a){return KC(ZI,nie,2,a,6,1)};var oab=mdb(Mwe,'XMLTypePackageImpl/25',1876);bcb(1877,1,nwe,ebe);_.wj=function fbe(a){return ND(a)};_.xj=function gbe(a){return KC(ZI,nie,2,a,6,1)};var pab=mdb(Mwe,'XMLTypePackageImpl/26',1877);bcb(1878,1,nwe,hbe);_.wj=function ibe(a){return JD(a,15)};_.xj=function jbe(a){return KC(yK,eme,15,a,0,1)};var qab=mdb(Mwe,'XMLTypePackageImpl/27',1878);bcb(1879,1,nwe,kbe);_.wj=function lbe(a){return JD(a,15)};_.xj=function mbe(a){return KC(yK,eme,15,a,0,1)};var rab=mdb(Mwe,'XMLTypePackageImpl/28',1879);bcb(1880,1,nwe,nbe);_.wj=function obe(a){return ND(a)};_.xj=function pbe(a){return KC(ZI,nie,2,a,6,1)};var sab=mdb(Mwe,'XMLTypePackageImpl/29',1880);bcb(1854,1,nwe,qbe);_.wj=function rbe(a){return JD(a,667)};_.xj=function sbe(a){return KC(S9,Uhe,2021,a,0,1)};var Eab=mdb(Mwe,'XMLTypePackageImpl/3',1854);bcb(1881,1,nwe,tbe);_.wj=function ube(a){return JD(a,19)};_.xj=function vbe(a){return KC(JI,nie,19,a,0,1)};var uab=mdb(Mwe,'XMLTypePackageImpl/30',1881);bcb(1882,1,nwe,wbe);_.wj=function xbe(a){return ND(a)};_.xj=function ybe(a){return KC(ZI,nie,2,a,6,1)};var vab=mdb(Mwe,'XMLTypePackageImpl/31',1882);bcb(1883,1,nwe,zbe);_.wj=function Abe(a){return JD(a,162)};_.xj=function Bbe(a){return KC(MI,nie,162,a,0,1)};var wab=mdb(Mwe,'XMLTypePackageImpl/32',1883);bcb(1884,1,nwe,Cbe);_.wj=function Dbe(a){return ND(a)};_.xj=function Ebe(a){return KC(ZI,nie,2,a,6,1)};var xab=mdb(Mwe,'XMLTypePackageImpl/33',1884);bcb(1885,1,nwe,Fbe);_.wj=function Gbe(a){return ND(a)};_.xj=function Hbe(a){return KC(ZI,nie,2,a,6,1)};var yab=mdb(Mwe,'XMLTypePackageImpl/34',1885);bcb(1886,1,nwe,Ibe);_.wj=function Jbe(a){return ND(a)};_.xj=function Kbe(a){return KC(ZI,nie,2,a,6,1)};var zab=mdb(Mwe,'XMLTypePackageImpl/35',1886);bcb(1887,1,nwe,Lbe);_.wj=function Mbe(a){return ND(a)};_.xj=function Nbe(a){return KC(ZI,nie,2,a,6,1)};var Aab=mdb(Mwe,'XMLTypePackageImpl/36',1887);bcb(1888,1,nwe,Obe);_.wj=function Pbe(a){return JD(a,15)};_.xj=function Qbe(a){return KC(yK,eme,15,a,0,1)};var Bab=mdb(Mwe,'XMLTypePackageImpl/37',1888);bcb(1889,1,nwe,Rbe);_.wj=function Sbe(a){return JD(a,15)};_.xj=function Tbe(a){return KC(yK,eme,15,a,0,1)};var Cab=mdb(Mwe,'XMLTypePackageImpl/38',1889);bcb(1890,1,nwe,Ube);_.wj=function Vbe(a){return ND(a)};_.xj=function Wbe(a){return KC(ZI,nie,2,a,6,1)};var Dab=mdb(Mwe,'XMLTypePackageImpl/39',1890);bcb(1855,1,nwe,Xbe);_.wj=function Ybe(a){return JD(a,668)};_.xj=function Zbe(a){return KC(T9,Uhe,2022,a,0,1)};var Pab=mdb(Mwe,'XMLTypePackageImpl/4',1855);bcb(1891,1,nwe,$be);_.wj=function _be(a){return ND(a)};_.xj=function ace(a){return KC(ZI,nie,2,a,6,1)};var Fab=mdb(Mwe,'XMLTypePackageImpl/40',1891);bcb(1892,1,nwe,bce);_.wj=function cce(a){return ND(a)};_.xj=function dce(a){return KC(ZI,nie,2,a,6,1)};var Gab=mdb(Mwe,'XMLTypePackageImpl/41',1892);bcb(1893,1,nwe,ece);_.wj=function fce(a){return ND(a)};_.xj=function gce(a){return KC(ZI,nie,2,a,6,1)};var Hab=mdb(Mwe,'XMLTypePackageImpl/42',1893);bcb(1894,1,nwe,hce);_.wj=function ice(a){return ND(a)};_.xj=function jce(a){return KC(ZI,nie,2,a,6,1)};var Iab=mdb(Mwe,'XMLTypePackageImpl/43',1894);bcb(1895,1,nwe,kce);_.wj=function lce(a){return ND(a)};_.xj=function mce(a){return KC(ZI,nie,2,a,6,1)};var Jab=mdb(Mwe,'XMLTypePackageImpl/44',1895);bcb(1896,1,nwe,nce);_.wj=function oce(a){return JD(a,184)};_.xj=function pce(a){return KC(UI,nie,184,a,0,1)};var Kab=mdb(Mwe,'XMLTypePackageImpl/45',1896);bcb(1897,1,nwe,qce);_.wj=function rce(a){return ND(a)};_.xj=function sce(a){return KC(ZI,nie,2,a,6,1)};var Lab=mdb(Mwe,'XMLTypePackageImpl/46',1897);bcb(1898,1,nwe,tce);_.wj=function uce(a){return ND(a)};_.xj=function vce(a){return KC(ZI,nie,2,a,6,1)};var Mab=mdb(Mwe,'XMLTypePackageImpl/47',1898);bcb(1899,1,nwe,wce);_.wj=function xce(a){return ND(a)};_.xj=function yce(a){return KC(ZI,nie,2,a,6,1)};var Nab=mdb(Mwe,'XMLTypePackageImpl/48',1899);bcb(nje,1,nwe,zce);_.wj=function Ace(a){return JD(a,184)};_.xj=function Bce(a){return KC(UI,nie,184,a,0,1)};var Oab=mdb(Mwe,'XMLTypePackageImpl/49',nje);bcb(1856,1,nwe,Cce);_.wj=function Dce(a){return JD(a,669)};_.xj=function Ece(a){return KC(U9,Uhe,2023,a,0,1)};var Tab=mdb(Mwe,'XMLTypePackageImpl/5',1856);bcb(1901,1,nwe,Fce);_.wj=function Gce(a){return JD(a,162)};_.xj=function Hce(a){return KC(MI,nie,162,a,0,1)};var Qab=mdb(Mwe,'XMLTypePackageImpl/50',1901);bcb(1902,1,nwe,Ice);_.wj=function Jce(a){return ND(a)};_.xj=function Kce(a){return KC(ZI,nie,2,a,6,1)};var Rab=mdb(Mwe,'XMLTypePackageImpl/51',1902);bcb(1903,1,nwe,Lce);_.wj=function Mce(a){return JD(a,19)};_.xj=function Nce(a){return KC(JI,nie,19,a,0,1)};var Sab=mdb(Mwe,'XMLTypePackageImpl/52',1903);bcb(1857,1,nwe,Oce);_.wj=function Pce(a){return ND(a)};_.xj=function Qce(a){return KC(ZI,nie,2,a,6,1)};var Uab=mdb(Mwe,'XMLTypePackageImpl/6',1857);bcb(1858,1,nwe,Rce);_.wj=function Sce(a){return JD(a,190)};_.xj=function Tce(a){return KC(SD,nie,190,a,0,2)};var Vab=mdb(Mwe,'XMLTypePackageImpl/7',1858);bcb(1859,1,nwe,Uce);_.wj=function Vce(a){return KD(a)};_.xj=function Wce(a){return KC(wI,nie,476,a,8,1)};var Wab=mdb(Mwe,'XMLTypePackageImpl/8',1859);bcb(1860,1,nwe,Xce);_.wj=function Yce(a){return JD(a,217)};_.xj=function Zce(a){return KC(xI,nie,217,a,0,1)};var Xab=mdb(Mwe,'XMLTypePackageImpl/9',1860);var $ce,_ce;var fde,gde;var kde;bcb(50,60,Tie,mde);var Zab=mdb(kxe,'RegEx/ParseException',50);bcb(820,1,{},ude);_.sl=function vde(a){return ac*16)throw vbb(new mde(tvd((h0d(),Uue))));c=c*16+e}while(true);if(this.a!=125)throw vbb(new mde(tvd((h0d(),Vue))));if(c>lxe)throw vbb(new mde(tvd((h0d(),Wue))));a=c}else{e=0;if(this.c!=0||(e=yde(this.a))<0)throw vbb(new mde(tvd((h0d(),Tue))));c=e;nde(this);if(this.c!=0||(e=yde(this.a))<0)throw vbb(new mde(tvd((h0d(),Tue))));c=c*16+e;a=c}break;case 117:d=0;nde(this);if(this.c!=0||(d=yde(this.a))<0)throw vbb(new mde(tvd((h0d(),Tue))));b=d;nde(this);if(this.c!=0||(d=yde(this.a))<0)throw vbb(new mde(tvd((h0d(),Tue))));b=b*16+d;nde(this);if(this.c!=0||(d=yde(this.a))<0)throw vbb(new mde(tvd((h0d(),Tue))));b=b*16+d;nde(this);if(this.c!=0||(d=yde(this.a))<0)throw vbb(new mde(tvd((h0d(),Tue))));b=b*16+d;a=b;break;case 118:nde(this);if(this.c!=0||(d=yde(this.a))<0)throw vbb(new mde(tvd((h0d(),Tue))));b=d;nde(this);if(this.c!=0||(d=yde(this.a))<0)throw vbb(new mde(tvd((h0d(),Tue))));b=b*16+d;nde(this);if(this.c!=0||(d=yde(this.a))<0)throw vbb(new mde(tvd((h0d(),Tue))));b=b*16+d;nde(this);if(this.c!=0||(d=yde(this.a))<0)throw vbb(new mde(tvd((h0d(),Tue))));b=b*16+d;nde(this);if(this.c!=0||(d=yde(this.a))<0)throw vbb(new mde(tvd((h0d(),Tue))));b=b*16+d;nde(this);if(this.c!=0||(d=yde(this.a))<0)throw vbb(new mde(tvd((h0d(),Tue))));b=b*16+d;if(b>lxe)throw vbb(new mde(tvd((h0d(),'parser.descappe.4'))));a=b;break;case 65:case 90:case 122:throw vbb(new mde(tvd((h0d(),Xue))));}return a};_.ul=function xde(a){var b,c;switch(a){case 100:c=(this.e&32)==32?Kfe('Nd',true):(wfe(),cfe);break;case 68:c=(this.e&32)==32?Kfe('Nd',false):(wfe(),jfe);break;case 119:c=(this.e&32)==32?Kfe('IsWord',true):(wfe(),sfe);break;case 87:c=(this.e&32)==32?Kfe('IsWord',false):(wfe(),lfe);break;case 115:c=(this.e&32)==32?Kfe('IsSpace',true):(wfe(),nfe);break;case 83:c=(this.e&32)==32?Kfe('IsSpace',false):(wfe(),kfe);break;default:throw vbb(new hz((b=a,mxe+b.toString(16))));}return c};_.vl=function zde(a){var b,c,d,e,f,g,h,i,j,k,l,m;this.b=1;nde(this);b=null;if(this.c==0&&this.a==94){nde(this);if(a){k=(wfe(),wfe(),++vfe,new $fe(5))}else{b=(wfe(),wfe(),++vfe,new $fe(4));Ufe(b,0,lxe);k=(null,++vfe,new $fe(4))}}else{k=(wfe(),wfe(),++vfe,new $fe(4))}e=true;while((m=this.c)!=1){if(m==0&&this.a==93&&!e)break;e=false;c=this.a;d=false;if(m==10){switch(c){case 100:case 68:case 119:case 87:case 115:case 83:Xfe(k,this.ul(c));d=true;break;case 105:case 73:case 99:case 67:c=this.Ll(k,c);c<0&&(d=true);break;case 112:case 80:l=tde(this,c);if(!l)throw vbb(new mde(tvd((h0d(),Iue))));Xfe(k,l);d=true;break;default:c=this.tl();}}else if(m==20){g=gfb(this.i,58,this.d);if(g<0)throw vbb(new mde(tvd((h0d(),Jue))));h=true;if(bfb(this.i,this.d)==94){++this.d;h=false}f=qfb(this.i,this.d,g);i=Lfe(f,h,(this.e&512)==512);if(!i)throw vbb(new mde(tvd((h0d(),Lue))));Xfe(k,i);d=true;if(g+1>=this.j||bfb(this.i,g+1)!=93)throw vbb(new mde(tvd((h0d(),Jue))));this.d=g+2}nde(this);if(!d){if(this.c!=0||this.a!=45){Ufe(k,c,c)}else{nde(this);if((m=this.c)==1)throw vbb(new mde(tvd((h0d(),Kue))));if(m==0&&this.a==93){Ufe(k,c,c);Ufe(k,45,45)}else{j=this.a;m==10&&(j=this.tl());nde(this);Ufe(k,c,j)}}}(this.e&zte)==zte&&this.c==0&&this.a==44&&nde(this)}if(this.c==1)throw vbb(new mde(tvd((h0d(),Kue))));if(b){Zfe(b,k);k=b}Yfe(k);Vfe(k);this.b=0;nde(this);return k};_.wl=function Ade(){var a,b,c,d;c=this.vl(false);while((d=this.c)!=7){a=this.a;if(d==0&&(a==45||a==38)||d==4){nde(this);if(this.c!=9)throw vbb(new mde(tvd((h0d(),Que))));b=this.vl(false);if(d==4)Xfe(c,b);else if(a==45)Zfe(c,b);else if(a==38)Wfe(c,b);else throw vbb(new hz('ASSERT'))}else{throw vbb(new mde(tvd((h0d(),Rue))))}}nde(this);return c};_.xl=function Bde(){var a,b;a=this.a-48;b=(wfe(),wfe(),++vfe,new Hge(12,null,a));!this.g&&(this.g=new Wvb);Tvb(this.g,new cge(a));nde(this);return b};_.yl=function Cde(){nde(this);return wfe(),ofe};_.zl=function Dde(){nde(this);return wfe(),mfe};_.Al=function Ede(){throw vbb(new mde(tvd((h0d(),Yue))))};_.Bl=function Fde(){throw vbb(new mde(tvd((h0d(),Yue))))};_.Cl=function Gde(){nde(this);return Ife()};_.Dl=function Hde(){nde(this);return wfe(),qfe};_.El=function Ide(){nde(this);return wfe(),tfe};_.Fl=function Jde(){var a;if(this.d>=this.j||((a=bfb(this.i,this.d++))&65504)!=64)throw vbb(new mde(tvd((h0d(),Eue))));nde(this);return wfe(),wfe(),++vfe,new ige(0,a-64)};_.Gl=function Kde(){nde(this);return Jfe()};_.Hl=function Lde(){nde(this);return wfe(),ufe};_.Il=function Mde(){var a;a=(wfe(),wfe(),++vfe,new ige(0,105));nde(this);return a};_.Jl=function Nde(){nde(this);return wfe(),rfe};_.Kl=function Ode(){nde(this);return wfe(),pfe};_.Ll=function Pde(a,b){return this.tl()};_.Ml=function Qde(){nde(this);return wfe(),hfe};_.Nl=function Rde(){var a,b,c,d,e;if(this.d+1>=this.j)throw vbb(new mde(tvd((h0d(),Bue))));d=-1;b=null;a=bfb(this.i,this.d);if(49<=a&&a<=57){d=a-48;!this.g&&(this.g=new Wvb);Tvb(this.g,new cge(d));++this.d;if(bfb(this.i,this.d)!=41)throw vbb(new mde(tvd((h0d(),yue))));++this.d}else{a==63&&--this.d;nde(this);b=qde(this);switch(b.e){case 20:case 21:case 22:case 23:break;case 8:if(this.c!=7)throw vbb(new mde(tvd((h0d(),yue))));break;default:throw vbb(new mde(tvd((h0d(),Cue))));}}nde(this);e=rde(this);c=null;if(e.e==2){if(e.em()!=2)throw vbb(new mde(tvd((h0d(),Due))));c=e.am(1);e=e.am(0)}if(this.c!=7)throw vbb(new mde(tvd((h0d(),yue))));nde(this);return wfe(),wfe(),++vfe,new vge(d,b,e,c)};_.Ol=function Sde(){nde(this);return wfe(),ife};_.Pl=function Tde(){var a;nde(this);a=Cfe(24,rde(this));if(this.c!=7)throw vbb(new mde(tvd((h0d(),yue))));nde(this);return a};_.Ql=function Ude(){var a;nde(this);a=Cfe(20,rde(this));if(this.c!=7)throw vbb(new mde(tvd((h0d(),yue))));nde(this);return a};_.Rl=function Vde(){var a;nde(this);a=Cfe(22,rde(this));if(this.c!=7)throw vbb(new mde(tvd((h0d(),yue))));nde(this);return a};_.Sl=function Wde(){var a,b,c,d,e;a=0;c=0;b=-1;while(this.d=this.j)throw vbb(new mde(tvd((h0d(),zue))));if(b==45){++this.d;while(this.d=this.j)throw vbb(new mde(tvd((h0d(),zue))))}if(b==58){++this.d;nde(this);d=Dfe(rde(this),a,c);if(this.c!=7)throw vbb(new mde(tvd((h0d(),yue))));nde(this)}else if(b==41){++this.d;nde(this);d=Dfe(rde(this),a,c)}else throw vbb(new mde(tvd((h0d(),Aue))));return d};_.Tl=function Xde(){var a;nde(this);a=Cfe(21,rde(this));if(this.c!=7)throw vbb(new mde(tvd((h0d(),yue))));nde(this);return a};_.Ul=function Yde(){var a;nde(this);a=Cfe(23,rde(this));if(this.c!=7)throw vbb(new mde(tvd((h0d(),yue))));nde(this);return a};_.Vl=function Zde(){var a,b;nde(this);a=this.f++;b=Efe(rde(this),a);if(this.c!=7)throw vbb(new mde(tvd((h0d(),yue))));nde(this);return b};_.Wl=function $de(){var a;nde(this);a=Efe(rde(this),0);if(this.c!=7)throw vbb(new mde(tvd((h0d(),yue))));nde(this);return a};_.Xl=function _de(a){nde(this);if(this.c==5){nde(this);return Bfe(a,(wfe(),wfe(),++vfe,new lge(9,a)))}else return Bfe(a,(wfe(),wfe(),++vfe,new lge(3,a)))};_.Yl=function aee(a){var b;nde(this);b=(wfe(),wfe(),++vfe,new Lge(2));if(this.c==5){nde(this);Kge(b,(null,ffe));Kge(b,a)}else{Kge(b,a);Kge(b,(null,ffe))}return b};_.Zl=function bee(a){nde(this);if(this.c==5){nde(this);return wfe(),wfe(),++vfe,new lge(9,a)}else return wfe(),wfe(),++vfe,new lge(3,a)};_.a=0;_.b=0;_.c=0;_.d=0;_.e=0;_.f=1;_.g=null;_.j=0;var bbb=mdb(kxe,'RegEx/RegexParser',820);bcb(1824,820,{},hee);_.sl=function iee(a){return false};_.tl=function jee(){return eee(this)};_.ul=function lee(a){return fee(a)};_.vl=function mee(a){return gee(this)};_.wl=function nee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.xl=function oee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.yl=function pee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.zl=function qee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.Al=function ree(){nde(this);return fee(67)};_.Bl=function see(){nde(this);return fee(73)};_.Cl=function tee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.Dl=function uee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.El=function vee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.Fl=function wee(){nde(this);return fee(99)};_.Gl=function xee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.Hl=function yee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.Il=function zee(){nde(this);return fee(105)};_.Jl=function Aee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.Kl=function Bee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.Ll=function Cee(a,b){return Xfe(a,fee(b)),-1};_.Ml=function Dee(){nde(this);return wfe(),wfe(),++vfe,new ige(0,94)};_.Nl=function Eee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.Ol=function Fee(){nde(this);return wfe(),wfe(),++vfe,new ige(0,36)};_.Pl=function Gee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.Ql=function Hee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.Rl=function Iee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.Sl=function Jee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.Tl=function Kee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.Ul=function Lee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.Vl=function Mee(){var a;nde(this);a=Efe(rde(this),0);if(this.c!=7)throw vbb(new mde(tvd((h0d(),yue))));nde(this);return a};_.Wl=function Nee(){throw vbb(new mde(tvd((h0d(),Yue))))};_.Xl=function Oee(a){nde(this);return Bfe(a,(wfe(),wfe(),++vfe,new lge(3,a)))};_.Yl=function Pee(a){var b;nde(this);b=(wfe(),wfe(),++vfe,new Lge(2));Kge(b,a);Kge(b,(null,ffe));return b};_.Zl=function Qee(a){nde(this);return wfe(),wfe(),++vfe,new lge(3,a)};var cee=null,dee=null;var $ab=mdb(kxe,'RegEx/ParserForXMLSchema',1824);bcb(117,1,yxe,xfe);_.$l=function yfe(a){throw vbb(new hz('Not supported.'))};_._l=function Gfe(){return -1};_.am=function Hfe(a){return null};_.bm=function Mfe(){return null};_.cm=function Pfe(a){};_.dm=function Qfe(a){};_.em=function Rfe(){return 0};_.Ib=function Sfe(){return this.fm(0)};_.fm=function Tfe(a){return this.e==11?'.':''};_.e=0;var Yee,Zee,$ee,_ee,afe,bfe=null,cfe,dfe=null,efe,ffe,gfe=null,hfe,ife,jfe,kfe,lfe,mfe,nfe,ofe,pfe,qfe,rfe,sfe,tfe,ufe,vfe=0;var lbb=mdb(kxe,'RegEx/Token',117);bcb(136,117,{3:1,136:1,117:1},$fe);_.fm=function bge(a){var b,c,d;if(this.e==4){if(this==efe)c='.';else if(this==cfe)c='\\\\d';else if(this==sfe)c='\\\\w';else if(this==nfe)c='\\\\s';else{d=new Hfb;d.a+='[';for(b=0;b0&&(d.a+=',',d);if(this.b[b]===this.b[b+1]){Efb(d,age(this.b[b]))}else{Efb(d,age(this.b[b]));d.a+='-';Efb(d,age(this.b[b+1]))}}d.a+=']';c=d.a}}else{if(this==jfe)c='\\\\D';else if(this==lfe)c='\\\\W';else if(this==kfe)c='\\\\S';else{d=new Hfb;d.a+='[^';for(b=0;b0&&(d.a+=',',d);if(this.b[b]===this.b[b+1]){Efb(d,age(this.b[b]))}else{Efb(d,age(this.b[b]));d.a+='-';Efb(d,age(this.b[b+1]))}}d.a+=']';c=d.a}}return c};_.a=false;_.c=false;var _ab=mdb(kxe,'RegEx/RangeToken',136);bcb(584,1,{584:1},cge);_.a=0;var abb=mdb(kxe,'RegEx/RegexParser/ReferencePosition',584);bcb(583,1,{3:1,583:1},ege);_.Fb=function fge(a){var b;if(a==null)return false;if(!JD(a,583))return false;b=BD(a,583);return dfb(this.b,b.b)&&this.a==b.a};_.Hb=function gge(){return LCb(this.b+'/'+See(this.a))};_.Ib=function hge(){return this.c.fm(this.a)};_.a=0;var cbb=mdb(kxe,'RegEx/RegularExpression',583);bcb(223,117,yxe,ige);_._l=function jge(){return this.a};_.fm=function kge(a){var b,c,d;switch(this.e){case 0:switch(this.a){case 124:case 42:case 43:case 63:case 40:case 41:case 46:case 91:case 123:case 92:d='\\\\'+HD(this.a&aje);break;case 12:d='\\\\f';break;case 10:d='\\\\n';break;case 13:d='\\\\r';break;case 9:d='\\\\t';break;case 27:d='\\\\e';break;default:if(this.a>=Tje){c=(b=this.a>>>0,'0'+b.toString(16));d='\\\\v'+qfb(c,c.length-6,c.length)}else d=''+HD(this.a&aje);}break;case 8:this==hfe||this==ife?(d=''+HD(this.a&aje)):(d='\\\\'+HD(this.a&aje));break;default:d=null;}return d};_.a=0;var dbb=mdb(kxe,'RegEx/Token/CharToken',223);bcb(309,117,yxe,lge);_.am=function mge(a){return this.a};_.cm=function nge(a){this.b=a};_.dm=function oge(a){this.c=a};_.em=function pge(){return 1};_.fm=function qge(a){var b;if(this.e==3){if(this.c<0&&this.b<0){b=this.a.fm(a)+'*'}else if(this.c==this.b){b=this.a.fm(a)+'{'+this.c+'}'}else if(this.c>=0&&this.b>=0){b=this.a.fm(a)+'{'+this.c+','+this.b+'}'}else if(this.c>=0&&this.b<0){b=this.a.fm(a)+'{'+this.c+',}'}else throw vbb(new hz('Token#toString(): CLOSURE '+this.c+She+this.b))}else{if(this.c<0&&this.b<0){b=this.a.fm(a)+'*?'}else if(this.c==this.b){b=this.a.fm(a)+'{'+this.c+'}?'}else if(this.c>=0&&this.b>=0){b=this.a.fm(a)+'{'+this.c+','+this.b+'}?'}else if(this.c>=0&&this.b<0){b=this.a.fm(a)+'{'+this.c+',}?'}else throw vbb(new hz('Token#toString(): NONGREEDYCLOSURE '+this.c+She+this.b))}return b};_.b=0;_.c=0;var ebb=mdb(kxe,'RegEx/Token/ClosureToken',309);bcb(821,117,yxe,rge);_.am=function sge(a){return a==0?this.a:this.b};_.em=function tge(){return 2};_.fm=function uge(a){var b;this.b.e==3&&this.b.am(0)==this.a?(b=this.a.fm(a)+'+'):this.b.e==9&&this.b.am(0)==this.a?(b=this.a.fm(a)+'+?'):(b=this.a.fm(a)+(''+this.b.fm(a)));return b};var fbb=mdb(kxe,'RegEx/Token/ConcatToken',821);bcb(1822,117,yxe,vge);_.am=function wge(a){if(a==0)return this.d;if(a==1)return this.b;throw vbb(new hz('Internal Error: '+a))};_.em=function xge(){return !this.b?1:2};_.fm=function yge(a){var b;this.c>0?(b='(?('+this.c+')'):this.a.e==8?(b='(?('+this.a+')'):(b='(?'+this.a);!this.b?(b+=this.d+')'):(b+=this.d+'|'+this.b+')');return b};_.c=0;var gbb=mdb(kxe,'RegEx/Token/ConditionToken',1822);bcb(1823,117,yxe,zge);_.am=function Age(a){return this.b};_.em=function Bge(){return 1};_.fm=function Cge(a){return '(?'+(this.a==0?'':See(this.a))+(this.c==0?'':See(this.c))+':'+this.b.fm(a)+')'};_.a=0;_.c=0;var hbb=mdb(kxe,'RegEx/Token/ModifierToken',1823);bcb(822,117,yxe,Dge);_.am=function Ege(a){return this.a};_.em=function Fge(){return 1};_.fm=function Gge(a){var b;b=null;switch(this.e){case 6:this.b==0?(b='(?:'+this.a.fm(a)+')'):(b='('+this.a.fm(a)+')');break;case 20:b='(?='+this.a.fm(a)+')';break;case 21:b='(?!'+this.a.fm(a)+')';break;case 22:b='(?<='+this.a.fm(a)+')';break;case 23:b='(?'+this.a.fm(a)+')';}return b};_.b=0;var ibb=mdb(kxe,'RegEx/Token/ParenToken',822);bcb(521,117,{3:1,117:1,521:1},Hge);_.bm=function Ige(){return this.b};_.fm=function Jge(a){return this.e==12?'\\\\'+this.a:Wee(this.b)};_.a=0;var jbb=mdb(kxe,'RegEx/Token/StringToken',521);bcb(465,117,yxe,Lge);_.$l=function Mge(a){Kge(this,a)};_.am=function Nge(a){return BD(Uvb(this.a,a),117)};_.em=function Oge(){return !this.a?0:this.a.a.c.length};_.fm=function Pge(a){var b,c,d,e,f;if(this.e==1){if(this.a.a.c.length==2){b=BD(Uvb(this.a,0),117);c=BD(Uvb(this.a,1),117);c.e==3&&c.am(0)==b?(e=b.fm(a)+'+'):c.e==9&&c.am(0)==b?(e=b.fm(a)+'+?'):(e=b.fm(a)+(''+c.fm(a)))}else{f=new Hfb;for(d=0;d=this.c.b:this.a<=this.c.b};_.Sb=function whe(){return this.b>0};_.Tb=function yhe(){return this.b};_.Vb=function Ahe(){return this.b-1};_.Qb=function Bhe(){throw vbb(new cgb(Exe))};_.a=0;_.b=0;var pbb=mdb(Bxe,'ExclusiveRange/RangeIterator',254);var TD=pdb(Fve,'C');var WD=pdb(Ive,'I');var sbb=pdb(Khe,'Z');var XD=pdb(Jve,'J');var SD=pdb(Eve,'B');var UD=pdb(Gve,'D');var VD=pdb(Hve,'F');var rbb=pdb(Kve,'S');var h1=odb('org.eclipse.elk.core.labels','ILabelManager');var O4=odb(Tte,'DiagnosticChain');var u8=odb(pwe,'ResourceSet');var V4=mdb(Tte,'InvocationTargetException',null);var Ihe=(Az(),Dz);var gwtOnLoad=gwtOnLoad=Zbb;Xbb(hcb);$bb('permProps',[[[Fxe,Gxe],[Hxe,'gecko1_8']],[[Fxe,Gxe],[Hxe,'ie10']],[[Fxe,Gxe],[Hxe,'ie8']],[[Fxe,Gxe],[Hxe,'ie9']],[[Fxe,Gxe],[Hxe,'safari']]]);\n// -------------- RUN GWT INITIALIZATION CODE -------------- \ngwtOnLoad(null, 'elk', null);\n","'use strict';\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n/*******************************************************************************\n * Copyright (c) 2021 Kiel University and others.\n * This program and the accompanying materials are made available under the\n * terms of the Eclipse Public License 2.0 which is available at\n * http://www.eclipse.org/legal/epl-2.0.\n * \n * SPDX-License-Identifier: EPL-2.0\n *******************************************************************************/\nvar ELK = require('./elk-api.js').default;\n\nvar ELKNode = function (_ELK) {\n _inherits(ELKNode, _ELK);\n\n function ELKNode() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n _classCallCheck(this, ELKNode);\n\n var optionsClone = Object.assign({}, options);\n\n var workerThreadsExist = false;\n try {\n require.resolve('web-worker');\n workerThreadsExist = true;\n } catch (e) {}\n\n // user requested a worker\n if (options.workerUrl) {\n if (workerThreadsExist) {\n var Worker = require('web-worker');\n optionsClone.workerFactory = function (url) {\n return new Worker(url);\n };\n } else {\n console.warn('Web worker requested but \\'web-worker\\' package not installed. \\nConsider installing the package or pass your own \\'workerFactory\\' to ELK\\'s constructor.\\n... Falling back to non-web worker version.');\n }\n }\n\n // unless no other workerFactory is registered, use the fake worker\n if (!optionsClone.workerFactory) {\n var _require = require('./elk-worker.min.js'),\n _Worker = _require.Worker;\n\n optionsClone.workerFactory = function (url) {\n return new _Worker(url);\n };\n }\n\n return _possibleConstructorReturn(this, (ELKNode.__proto__ || Object.getPrototypeOf(ELKNode)).call(this, optionsClone));\n }\n\n return ELKNode;\n}(ELK);\n\nObject.defineProperty(module.exports, \"__esModule\", {\n value: true\n});\nmodule.exports = ELKNode;\nELKNode.default = ELKNode;","module.exports = require('./lib/heap');\n","// Generated by CoffeeScript 1.8.0\n(function() {\n var Heap, defaultCmp, floor, heapify, heappop, heappush, heappushpop, heapreplace, insort, min, nlargest, nsmallest, updateItem, _siftdown, _siftup;\n\n floor = Math.floor, min = Math.min;\n\n\n /*\n Default comparison function to be used\n */\n\n defaultCmp = function(x, y) {\n if (x < y) {\n return -1;\n }\n if (x > y) {\n return 1;\n }\n return 0;\n };\n\n\n /*\n Insert item x in list a, and keep it sorted assuming a is sorted.\n \n If x is already in a, insert it to the right of the rightmost x.\n \n Optional args lo (default 0) and hi (default a.length) bound the slice\n of a to be searched.\n */\n\n insort = function(a, x, lo, hi, cmp) {\n var mid;\n if (lo == null) {\n lo = 0;\n }\n if (cmp == null) {\n cmp = defaultCmp;\n }\n if (lo < 0) {\n throw new Error('lo must be non-negative');\n }\n if (hi == null) {\n hi = a.length;\n }\n while (lo < hi) {\n mid = floor((lo + hi) / 2);\n if (cmp(x, a[mid]) < 0) {\n hi = mid;\n } else {\n lo = mid + 1;\n }\n }\n return ([].splice.apply(a, [lo, lo - lo].concat(x)), x);\n };\n\n\n /*\n Push item onto heap, maintaining the heap invariant.\n */\n\n heappush = function(array, item, cmp) {\n if (cmp == null) {\n cmp = defaultCmp;\n }\n array.push(item);\n return _siftdown(array, 0, array.length - 1, cmp);\n };\n\n\n /*\n Pop the smallest item off the heap, maintaining the heap invariant.\n */\n\n heappop = function(array, cmp) {\n var lastelt, returnitem;\n if (cmp == null) {\n cmp = defaultCmp;\n }\n lastelt = array.pop();\n if (array.length) {\n returnitem = array[0];\n array[0] = lastelt;\n _siftup(array, 0, cmp);\n } else {\n returnitem = lastelt;\n }\n return returnitem;\n };\n\n\n /*\n Pop and return the current smallest value, and add the new item.\n \n This is more efficient than heappop() followed by heappush(), and can be\n more appropriate when using a fixed size heap. Note that the value\n returned may be larger than item! That constrains reasonable use of\n this routine unless written as part of a conditional replacement:\n if item > array[0]\n item = heapreplace(array, item)\n */\n\n heapreplace = function(array, item, cmp) {\n var returnitem;\n if (cmp == null) {\n cmp = defaultCmp;\n }\n returnitem = array[0];\n array[0] = item;\n _siftup(array, 0, cmp);\n return returnitem;\n };\n\n\n /*\n Fast version of a heappush followed by a heappop.\n */\n\n heappushpop = function(array, item, cmp) {\n var _ref;\n if (cmp == null) {\n cmp = defaultCmp;\n }\n if (array.length && cmp(array[0], item) < 0) {\n _ref = [array[0], item], item = _ref[0], array[0] = _ref[1];\n _siftup(array, 0, cmp);\n }\n return item;\n };\n\n\n /*\n Transform list into a heap, in-place, in O(array.length) time.\n */\n\n heapify = function(array, cmp) {\n var i, _i, _j, _len, _ref, _ref1, _results, _results1;\n if (cmp == null) {\n cmp = defaultCmp;\n }\n _ref1 = (function() {\n _results1 = [];\n for (var _j = 0, _ref = floor(array.length / 2); 0 <= _ref ? _j < _ref : _j > _ref; 0 <= _ref ? _j++ : _j--){ _results1.push(_j); }\n return _results1;\n }).apply(this).reverse();\n _results = [];\n for (_i = 0, _len = _ref1.length; _i < _len; _i++) {\n i = _ref1[_i];\n _results.push(_siftup(array, i, cmp));\n }\n return _results;\n };\n\n\n /*\n Update the position of the given item in the heap.\n This function should be called every time the item is being modified.\n */\n\n updateItem = function(array, item, cmp) {\n var pos;\n if (cmp == null) {\n cmp = defaultCmp;\n }\n pos = array.indexOf(item);\n if (pos === -1) {\n return;\n }\n _siftdown(array, 0, pos, cmp);\n return _siftup(array, pos, cmp);\n };\n\n\n /*\n Find the n largest elements in a dataset.\n */\n\n nlargest = function(array, n, cmp) {\n var elem, result, _i, _len, _ref;\n if (cmp == null) {\n cmp = defaultCmp;\n }\n result = array.slice(0, n);\n if (!result.length) {\n return result;\n }\n heapify(result, cmp);\n _ref = array.slice(n);\n for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n elem = _ref[_i];\n heappushpop(result, elem, cmp);\n }\n return result.sort(cmp).reverse();\n };\n\n\n /*\n Find the n smallest elements in a dataset.\n */\n\n nsmallest = function(array, n, cmp) {\n var elem, i, los, result, _i, _j, _len, _ref, _ref1, _results;\n if (cmp == null) {\n cmp = defaultCmp;\n }\n if (n * 10 <= array.length) {\n result = array.slice(0, n).sort(cmp);\n if (!result.length) {\n return result;\n }\n los = result[result.length - 1];\n _ref = array.slice(n);\n for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n elem = _ref[_i];\n if (cmp(elem, los) < 0) {\n insort(result, elem, 0, null, cmp);\n result.pop();\n los = result[result.length - 1];\n }\n }\n return result;\n }\n heapify(array, cmp);\n _results = [];\n for (i = _j = 0, _ref1 = min(n, array.length); 0 <= _ref1 ? _j < _ref1 : _j > _ref1; i = 0 <= _ref1 ? ++_j : --_j) {\n _results.push(heappop(array, cmp));\n }\n return _results;\n };\n\n _siftdown = function(array, startpos, pos, cmp) {\n var newitem, parent, parentpos;\n if (cmp == null) {\n cmp = defaultCmp;\n }\n newitem = array[pos];\n while (pos > startpos) {\n parentpos = (pos - 1) >> 1;\n parent = array[parentpos];\n if (cmp(newitem, parent) < 0) {\n array[pos] = parent;\n pos = parentpos;\n continue;\n }\n break;\n }\n return array[pos] = newitem;\n };\n\n _siftup = function(array, pos, cmp) {\n var childpos, endpos, newitem, rightpos, startpos;\n if (cmp == null) {\n cmp = defaultCmp;\n }\n endpos = array.length;\n startpos = pos;\n newitem = array[pos];\n childpos = 2 * pos + 1;\n while (childpos < endpos) {\n rightpos = childpos + 1;\n if (rightpos < endpos && !(cmp(array[childpos], array[rightpos]) < 0)) {\n childpos = rightpos;\n }\n array[pos] = array[childpos];\n pos = childpos;\n childpos = 2 * pos + 1;\n }\n array[pos] = newitem;\n return _siftdown(array, startpos, pos, cmp);\n };\n\n Heap = (function() {\n Heap.push = heappush;\n\n Heap.pop = heappop;\n\n Heap.replace = heapreplace;\n\n Heap.pushpop = heappushpop;\n\n Heap.heapify = heapify;\n\n Heap.updateItem = updateItem;\n\n Heap.nlargest = nlargest;\n\n Heap.nsmallest = nsmallest;\n\n function Heap(cmp) {\n this.cmp = cmp != null ? cmp : defaultCmp;\n this.nodes = [];\n }\n\n Heap.prototype.push = function(x) {\n return heappush(this.nodes, x, this.cmp);\n };\n\n Heap.prototype.pop = function() {\n return heappop(this.nodes, this.cmp);\n };\n\n Heap.prototype.peek = function() {\n return this.nodes[0];\n };\n\n Heap.prototype.contains = function(x) {\n return this.nodes.indexOf(x) !== -1;\n };\n\n Heap.prototype.replace = function(x) {\n return heapreplace(this.nodes, x, this.cmp);\n };\n\n Heap.prototype.pushpop = function(x) {\n return heappushpop(this.nodes, x, this.cmp);\n };\n\n Heap.prototype.heapify = function() {\n return heapify(this.nodes, this.cmp);\n };\n\n Heap.prototype.updateItem = function(x) {\n return updateItem(this.nodes, x, this.cmp);\n };\n\n Heap.prototype.clear = function() {\n return this.nodes = [];\n };\n\n Heap.prototype.empty = function() {\n return this.nodes.length === 0;\n };\n\n Heap.prototype.size = function() {\n return this.nodes.length;\n };\n\n Heap.prototype.clone = function() {\n var heap;\n heap = new Heap();\n heap.nodes = this.nodes.slice(0);\n return heap;\n };\n\n Heap.prototype.toArray = function() {\n return this.nodes.slice(0);\n };\n\n Heap.prototype.insert = Heap.prototype.push;\n\n Heap.prototype.top = Heap.prototype.peek;\n\n Heap.prototype.front = Heap.prototype.peek;\n\n Heap.prototype.has = Heap.prototype.contains;\n\n Heap.prototype.copy = Heap.prototype.clone;\n\n return Heap;\n\n })();\n\n (function(root, factory) {\n if (typeof define === 'function' && define.amd) {\n return define([], factory);\n } else if (typeof exports === 'object') {\n return module.exports = factory();\n } else {\n return root.Heap = factory();\n }\n })(this, function() {\n return Heap;\n });\n\n}).call(this);\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar invariant = function(condition, format, a, b, c, d, e, f) {\n if (process.env.NODE_ENV !== 'production') {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n }\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error(\n 'Minified exception occurred; use the non-minified dev environment ' +\n 'for the full error message and additional helpful warnings.'\n );\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(\n format.replace(/%s/g, function() { return args[argIndex++]; })\n );\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n};\n\nmodule.exports = invariant;\n","var hashClear = require('./_hashClear'),\n hashDelete = require('./_hashDelete'),\n hashGet = require('./_hashGet'),\n hashHas = require('./_hashHas'),\n hashSet = require('./_hashSet');\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\nmodule.exports = Hash;\n","var listCacheClear = require('./_listCacheClear'),\n listCacheDelete = require('./_listCacheDelete'),\n listCacheGet = require('./_listCacheGet'),\n listCacheHas = require('./_listCacheHas'),\n listCacheSet = require('./_listCacheSet');\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nmodule.exports = ListCache;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nmodule.exports = Map;\n","var mapCacheClear = require('./_mapCacheClear'),\n mapCacheDelete = require('./_mapCacheDelete'),\n mapCacheGet = require('./_mapCacheGet'),\n mapCacheHas = require('./_mapCacheHas'),\n mapCacheSet = require('./_mapCacheSet');\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\nmodule.exports = MapCache;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n","/**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\nfunction arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n}\n\nmodule.exports = arrayMap;\n","var baseAssignValue = require('./_baseAssignValue'),\n eq = require('./eq');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nmodule.exports = assignValue;\n","var eq = require('./eq');\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nmodule.exports = assocIndexOf;\n","var defineProperty = require('./_defineProperty');\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nmodule.exports = baseAssignValue;\n","var castPath = require('./_castPath'),\n toKey = require('./_toKey');\n\n/**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\nfunction baseGet(object, path) {\n path = castPath(path, object);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n}\n\nmodule.exports = baseGet;\n","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n","var isFunction = require('./isFunction'),\n isMasked = require('./_isMasked'),\n isObject = require('./isObject'),\n toSource = require('./_toSource');\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\nmodule.exports = baseIsNative;\n","var assignValue = require('./_assignValue'),\n castPath = require('./_castPath'),\n isIndex = require('./_isIndex'),\n isObject = require('./isObject'),\n toKey = require('./_toKey');\n\n/**\n * The base implementation of `_.set`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\nfunction baseSet(object, path, value, customizer) {\n if (!isObject(object)) {\n return object;\n }\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n lastIndex = length - 1,\n nested = object;\n\n while (nested != null && ++index < length) {\n var key = toKey(path[index]),\n newValue = value;\n\n if (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n return object;\n }\n\n if (index != lastIndex) {\n var objValue = nested[key];\n newValue = customizer ? customizer(objValue, key, nested) : undefined;\n if (newValue === undefined) {\n newValue = isObject(objValue)\n ? objValue\n : (isIndex(path[index + 1]) ? [] : {});\n }\n }\n assignValue(nested, key, newValue);\n nested = nested[key];\n }\n return object;\n}\n\nmodule.exports = baseSet;\n","var Symbol = require('./_Symbol'),\n arrayMap = require('./_arrayMap'),\n isArray = require('./isArray'),\n isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nmodule.exports = baseToString;\n","var trimmedEndIndex = require('./_trimmedEndIndex');\n\n/** Used to match leading whitespace. */\nvar reTrimStart = /^\\s+/;\n\n/**\n * The base implementation of `_.trim`.\n *\n * @private\n * @param {string} string The string to trim.\n * @returns {string} Returns the trimmed string.\n */\nfunction baseTrim(string) {\n return string\n ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n : string;\n}\n\nmodule.exports = baseTrim;\n","var isArray = require('./isArray'),\n isKey = require('./_isKey'),\n stringToPath = require('./_stringToPath'),\n toString = require('./toString');\n\n/**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\nfunction castPath(value, object) {\n if (isArray(value)) {\n return value;\n }\n return isKey(value, object) ? [value] : stringToPath(toString(value));\n}\n\nmodule.exports = castPath;\n","/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\nmodule.exports = copyArray;\n","var root = require('./_root');\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nmodule.exports = coreJsData;\n","var getNative = require('./_getNative');\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nmodule.exports = defineProperty;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","var isKeyable = require('./_isKeyable');\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nmodule.exports = getMapData;\n","var baseIsNative = require('./_baseIsNative'),\n getValue = require('./_getValue');\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\nmodule.exports = getNative;\n","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n","/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nmodule.exports = getValue;\n","var nativeCreate = require('./_nativeCreate');\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nmodule.exports = hashClear;\n","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = hashDelete;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nmodule.exports = hashGet;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nmodule.exports = hashHas;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nmodule.exports = hashSet;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nmodule.exports = isIndex;\n","var isArray = require('./isArray'),\n isSymbol = require('./isSymbol');\n\n/** Used to match property names within property paths. */\nvar reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/;\n\n/**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\nfunction isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n}\n\nmodule.exports = isKey;\n","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nmodule.exports = isKeyable;\n","var coreJsData = require('./_coreJsData');\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nmodule.exports = isMasked;\n","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nmodule.exports = listCacheClear;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nmodule.exports = listCacheDelete;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\nmodule.exports = listCacheGet;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nmodule.exports = listCacheHas;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nmodule.exports = listCacheSet;\n","var Hash = require('./_Hash'),\n ListCache = require('./_ListCache'),\n Map = require('./_Map');\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\nmodule.exports = mapCacheClear;\n","var getMapData = require('./_getMapData');\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = mapCacheDelete;\n","var getMapData = require('./_getMapData');\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nmodule.exports = mapCacheGet;\n","var getMapData = require('./_getMapData');\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\nmodule.exports = mapCacheHas;\n","var getMapData = require('./_getMapData');\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nmodule.exports = mapCacheSet;\n","var memoize = require('./memoize');\n\n/** Used as the maximum memoize cache size. */\nvar MAX_MEMOIZE_SIZE = 500;\n\n/**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\nfunction memoizeCapped(func) {\n var result = memoize(func, function(key) {\n if (cache.size === MAX_MEMOIZE_SIZE) {\n cache.clear();\n }\n return key;\n });\n\n var cache = result.cache;\n return result;\n}\n\nmodule.exports = memoizeCapped;\n","var getNative = require('./_getNative');\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nmodule.exports = nativeCreate;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n","var memoizeCapped = require('./_memoizeCapped');\n\n/** Used to match property names within property paths. */\nvar rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoizeCapped(function(string) {\n var result = [];\n if (string.charCodeAt(0) === 46 /* . */) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, subString) {\n result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n});\n\nmodule.exports = stringToPath;\n","var isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nmodule.exports = toKey;\n","/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\nmodule.exports = toSource;\n","/** Used to match a single whitespace character. */\nvar reWhitespace = /\\s/;\n\n/**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n * character of `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the index of the last non-whitespace character.\n */\nfunction trimmedEndIndex(string) {\n var index = string.length;\n\n while (index-- && reWhitespace.test(string.charAt(index))) {}\n return index;\n}\n\nmodule.exports = trimmedEndIndex;\n","var isObject = require('./isObject'),\n now = require('./now'),\n toNumber = require('./toNumber');\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\nmodule.exports = debounce;\n","/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\nmodule.exports = eq;\n","var baseGet = require('./_baseGet');\n\n/**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\nfunction get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n}\n\nmodule.exports = get;\n","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nmodule.exports = isArray;\n","var baseGetTag = require('./_baseGetTag'),\n isObject = require('./isObject');\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nmodule.exports = isFunction;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nmodule.exports = isSymbol;\n","var MapCache = require('./_MapCache');\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result) || cache;\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n}\n\n// Expose `MapCache`.\nmemoize.Cache = MapCache;\n\nmodule.exports = memoize;\n","var root = require('./_root');\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\nmodule.exports = now;\n","var baseSet = require('./_baseSet');\n\n/**\n * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,\n * it's created. Arrays are created for missing index properties while objects\n * are created for all other missing properties. Use `_.setWith` to customize\n * `path` creation.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.set(object, 'a[0].b.c', 4);\n * console.log(object.a[0].b.c);\n * // => 4\n *\n * _.set(object, ['x', '0', 'y', 'z'], 5);\n * console.log(object.x[0].y.z);\n * // => 5\n */\nfunction set(object, path, value) {\n return object == null ? object : baseSet(object, path, value);\n}\n\nmodule.exports = set;\n","var baseTrim = require('./_baseTrim'),\n isObject = require('./isObject'),\n isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = baseTrim(value);\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = toNumber;\n","var arrayMap = require('./_arrayMap'),\n copyArray = require('./_copyArray'),\n isArray = require('./isArray'),\n isSymbol = require('./isSymbol'),\n stringToPath = require('./_stringToPath'),\n toKey = require('./_toKey'),\n toString = require('./toString');\n\n/**\n * Converts `value` to a property path array.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Util\n * @param {*} value The value to convert.\n * @returns {Array} Returns the new property path array.\n * @example\n *\n * _.toPath('a.b.c');\n * // => ['a', 'b', 'c']\n *\n * _.toPath('a[0].b.c');\n * // => ['a', '0', 'b', 'c']\n */\nfunction toPath(value) {\n if (isArray(value)) {\n return arrayMap(value, toKey);\n }\n return isSymbol(value) ? [value] : copyArray(stringToPath(toString(value)));\n}\n\nmodule.exports = toPath;\n","var baseToString = require('./_baseToString');\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\nmodule.exports = toString;\n","//! moment.js\n//! version : 2.29.4\n//! authors : Tim Wood, Iskren Chernev, Moment.js contributors\n//! license : MIT\n//! momentjs.com\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n global.moment = factory()\n}(this, (function () { 'use strict';\n\n var hookCallback;\n\n function hooks() {\n return hookCallback.apply(null, arguments);\n }\n\n // This is done to register the method called with moment()\n // without creating circular dependencies.\n function setHookCallback(callback) {\n hookCallback = callback;\n }\n\n function isArray(input) {\n return (\n input instanceof Array ||\n Object.prototype.toString.call(input) === '[object Array]'\n );\n }\n\n function isObject(input) {\n // IE8 will treat undefined and null as object if it wasn't for\n // input != null\n return (\n input != null &&\n Object.prototype.toString.call(input) === '[object Object]'\n );\n }\n\n function hasOwnProp(a, b) {\n return Object.prototype.hasOwnProperty.call(a, b);\n }\n\n function isObjectEmpty(obj) {\n if (Object.getOwnPropertyNames) {\n return Object.getOwnPropertyNames(obj).length === 0;\n } else {\n var k;\n for (k in obj) {\n if (hasOwnProp(obj, k)) {\n return false;\n }\n }\n return true;\n }\n }\n\n function isUndefined(input) {\n return input === void 0;\n }\n\n function isNumber(input) {\n return (\n typeof input === 'number' ||\n Object.prototype.toString.call(input) === '[object Number]'\n );\n }\n\n function isDate(input) {\n return (\n input instanceof Date ||\n Object.prototype.toString.call(input) === '[object Date]'\n );\n }\n\n function map(arr, fn) {\n var res = [],\n i,\n arrLen = arr.length;\n for (i = 0; i < arrLen; ++i) {\n res.push(fn(arr[i], i));\n }\n return res;\n }\n\n function extend(a, b) {\n for (var i in b) {\n if (hasOwnProp(b, i)) {\n a[i] = b[i];\n }\n }\n\n if (hasOwnProp(b, 'toString')) {\n a.toString = b.toString;\n }\n\n if (hasOwnProp(b, 'valueOf')) {\n a.valueOf = b.valueOf;\n }\n\n return a;\n }\n\n function createUTC(input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, true).utc();\n }\n\n function defaultParsingFlags() {\n // We need to deep clone this object.\n return {\n empty: false,\n unusedTokens: [],\n unusedInput: [],\n overflow: -2,\n charsLeftOver: 0,\n nullInput: false,\n invalidEra: null,\n invalidMonth: null,\n invalidFormat: false,\n userInvalidated: false,\n iso: false,\n parsedDateParts: [],\n era: null,\n meridiem: null,\n rfc2822: false,\n weekdayMismatch: false,\n };\n }\n\n function getParsingFlags(m) {\n if (m._pf == null) {\n m._pf = defaultParsingFlags();\n }\n return m._pf;\n }\n\n var some;\n if (Array.prototype.some) {\n some = Array.prototype.some;\n } else {\n some = function (fun) {\n var t = Object(this),\n len = t.length >>> 0,\n i;\n\n for (i = 0; i < len; i++) {\n if (i in t && fun.call(this, t[i], i, t)) {\n return true;\n }\n }\n\n return false;\n };\n }\n\n function isValid(m) {\n if (m._isValid == null) {\n var flags = getParsingFlags(m),\n parsedParts = some.call(flags.parsedDateParts, function (i) {\n return i != null;\n }),\n isNowValid =\n !isNaN(m._d.getTime()) &&\n flags.overflow < 0 &&\n !flags.empty &&\n !flags.invalidEra &&\n !flags.invalidMonth &&\n !flags.invalidWeekday &&\n !flags.weekdayMismatch &&\n !flags.nullInput &&\n !flags.invalidFormat &&\n !flags.userInvalidated &&\n (!flags.meridiem || (flags.meridiem && parsedParts));\n\n if (m._strict) {\n isNowValid =\n isNowValid &&\n flags.charsLeftOver === 0 &&\n flags.unusedTokens.length === 0 &&\n flags.bigHour === undefined;\n }\n\n if (Object.isFrozen == null || !Object.isFrozen(m)) {\n m._isValid = isNowValid;\n } else {\n return isNowValid;\n }\n }\n return m._isValid;\n }\n\n function createInvalid(flags) {\n var m = createUTC(NaN);\n if (flags != null) {\n extend(getParsingFlags(m), flags);\n } else {\n getParsingFlags(m).userInvalidated = true;\n }\n\n return m;\n }\n\n // Plugins that add properties should also add the key here (null value),\n // so we can properly clone ourselves.\n var momentProperties = (hooks.momentProperties = []),\n updateInProgress = false;\n\n function copyConfig(to, from) {\n var i,\n prop,\n val,\n momentPropertiesLen = momentProperties.length;\n\n if (!isUndefined(from._isAMomentObject)) {\n to._isAMomentObject = from._isAMomentObject;\n }\n if (!isUndefined(from._i)) {\n to._i = from._i;\n }\n if (!isUndefined(from._f)) {\n to._f = from._f;\n }\n if (!isUndefined(from._l)) {\n to._l = from._l;\n }\n if (!isUndefined(from._strict)) {\n to._strict = from._strict;\n }\n if (!isUndefined(from._tzm)) {\n to._tzm = from._tzm;\n }\n if (!isUndefined(from._isUTC)) {\n to._isUTC = from._isUTC;\n }\n if (!isUndefined(from._offset)) {\n to._offset = from._offset;\n }\n if (!isUndefined(from._pf)) {\n to._pf = getParsingFlags(from);\n }\n if (!isUndefined(from._locale)) {\n to._locale = from._locale;\n }\n\n if (momentPropertiesLen > 0) {\n for (i = 0; i < momentPropertiesLen; i++) {\n prop = momentProperties[i];\n val = from[prop];\n if (!isUndefined(val)) {\n to[prop] = val;\n }\n }\n }\n\n return to;\n }\n\n // Moment prototype object\n function Moment(config) {\n copyConfig(this, config);\n this._d = new Date(config._d != null ? config._d.getTime() : NaN);\n if (!this.isValid()) {\n this._d = new Date(NaN);\n }\n // Prevent infinite loop in case updateOffset creates new moment\n // objects.\n if (updateInProgress === false) {\n updateInProgress = true;\n hooks.updateOffset(this);\n updateInProgress = false;\n }\n }\n\n function isMoment(obj) {\n return (\n obj instanceof Moment || (obj != null && obj._isAMomentObject != null)\n );\n }\n\n function warn(msg) {\n if (\n hooks.suppressDeprecationWarnings === false &&\n typeof console !== 'undefined' &&\n console.warn\n ) {\n console.warn('Deprecation warning: ' + msg);\n }\n }\n\n function deprecate(msg, fn) {\n var firstTime = true;\n\n return extend(function () {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(null, msg);\n }\n if (firstTime) {\n var args = [],\n arg,\n i,\n key,\n argLen = arguments.length;\n for (i = 0; i < argLen; i++) {\n arg = '';\n if (typeof arguments[i] === 'object') {\n arg += '\\n[' + i + '] ';\n for (key in arguments[0]) {\n if (hasOwnProp(arguments[0], key)) {\n arg += key + ': ' + arguments[0][key] + ', ';\n }\n }\n arg = arg.slice(0, -2); // Remove trailing comma and space\n } else {\n arg = arguments[i];\n }\n args.push(arg);\n }\n warn(\n msg +\n '\\nArguments: ' +\n Array.prototype.slice.call(args).join('') +\n '\\n' +\n new Error().stack\n );\n firstTime = false;\n }\n return fn.apply(this, arguments);\n }, fn);\n }\n\n var deprecations = {};\n\n function deprecateSimple(name, msg) {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(name, msg);\n }\n if (!deprecations[name]) {\n warn(msg);\n deprecations[name] = true;\n }\n }\n\n hooks.suppressDeprecationWarnings = false;\n hooks.deprecationHandler = null;\n\n function isFunction(input) {\n return (\n (typeof Function !== 'undefined' && input instanceof Function) ||\n Object.prototype.toString.call(input) === '[object Function]'\n );\n }\n\n function set(config) {\n var prop, i;\n for (i in config) {\n if (hasOwnProp(config, i)) {\n prop = config[i];\n if (isFunction(prop)) {\n this[i] = prop;\n } else {\n this['_' + i] = prop;\n }\n }\n }\n this._config = config;\n // Lenient ordinal parsing accepts just a number in addition to\n // number + (possibly) stuff coming from _dayOfMonthOrdinalParse.\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n this._dayOfMonthOrdinalParseLenient = new RegExp(\n (this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) +\n '|' +\n /\\d{1,2}/.source\n );\n }\n\n function mergeConfigs(parentConfig, childConfig) {\n var res = extend({}, parentConfig),\n prop;\n for (prop in childConfig) {\n if (hasOwnProp(childConfig, prop)) {\n if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) {\n res[prop] = {};\n extend(res[prop], parentConfig[prop]);\n extend(res[prop], childConfig[prop]);\n } else if (childConfig[prop] != null) {\n res[prop] = childConfig[prop];\n } else {\n delete res[prop];\n }\n }\n }\n for (prop in parentConfig) {\n if (\n hasOwnProp(parentConfig, prop) &&\n !hasOwnProp(childConfig, prop) &&\n isObject(parentConfig[prop])\n ) {\n // make sure changes to properties don't modify parent config\n res[prop] = extend({}, res[prop]);\n }\n }\n return res;\n }\n\n function Locale(config) {\n if (config != null) {\n this.set(config);\n }\n }\n\n var keys;\n\n if (Object.keys) {\n keys = Object.keys;\n } else {\n keys = function (obj) {\n var i,\n res = [];\n for (i in obj) {\n if (hasOwnProp(obj, i)) {\n res.push(i);\n }\n }\n return res;\n };\n }\n\n var defaultCalendar = {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n };\n\n function calendar(key, mom, now) {\n var output = this._calendar[key] || this._calendar['sameElse'];\n return isFunction(output) ? output.call(mom, now) : output;\n }\n\n function zeroFill(number, targetLength, forceSign) {\n var absNumber = '' + Math.abs(number),\n zerosToFill = targetLength - absNumber.length,\n sign = number >= 0;\n return (\n (sign ? (forceSign ? '+' : '') : '-') +\n Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) +\n absNumber\n );\n }\n\n var formattingTokens =\n /(\\[[^\\[]*\\])|(\\\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,\n localFormattingTokens = /(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g,\n formatFunctions = {},\n formatTokenFunctions = {};\n\n // token: 'M'\n // padded: ['MM', 2]\n // ordinal: 'Mo'\n // callback: function () { this.month() + 1 }\n function addFormatToken(token, padded, ordinal, callback) {\n var func = callback;\n if (typeof callback === 'string') {\n func = function () {\n return this[callback]();\n };\n }\n if (token) {\n formatTokenFunctions[token] = func;\n }\n if (padded) {\n formatTokenFunctions[padded[0]] = function () {\n return zeroFill(func.apply(this, arguments), padded[1], padded[2]);\n };\n }\n if (ordinal) {\n formatTokenFunctions[ordinal] = function () {\n return this.localeData().ordinal(\n func.apply(this, arguments),\n token\n );\n };\n }\n }\n\n function removeFormattingTokens(input) {\n if (input.match(/\\[[\\s\\S]/)) {\n return input.replace(/^\\[|\\]$/g, '');\n }\n return input.replace(/\\\\/g, '');\n }\n\n function makeFormatFunction(format) {\n var array = format.match(formattingTokens),\n i,\n length;\n\n for (i = 0, length = array.length; i < length; i++) {\n if (formatTokenFunctions[array[i]]) {\n array[i] = formatTokenFunctions[array[i]];\n } else {\n array[i] = removeFormattingTokens(array[i]);\n }\n }\n\n return function (mom) {\n var output = '',\n i;\n for (i = 0; i < length; i++) {\n output += isFunction(array[i])\n ? array[i].call(mom, format)\n : array[i];\n }\n return output;\n };\n }\n\n // format date using native date object\n function formatMoment(m, format) {\n if (!m.isValid()) {\n return m.localeData().invalidDate();\n }\n\n format = expandFormat(format, m.localeData());\n formatFunctions[format] =\n formatFunctions[format] || makeFormatFunction(format);\n\n return formatFunctions[format](m);\n }\n\n function expandFormat(format, locale) {\n var i = 5;\n\n function replaceLongDateFormatTokens(input) {\n return locale.longDateFormat(input) || input;\n }\n\n localFormattingTokens.lastIndex = 0;\n while (i >= 0 && localFormattingTokens.test(format)) {\n format = format.replace(\n localFormattingTokens,\n replaceLongDateFormatTokens\n );\n localFormattingTokens.lastIndex = 0;\n i -= 1;\n }\n\n return format;\n }\n\n var defaultLongDateFormat = {\n LTS: 'h:mm:ss A',\n LT: 'h:mm A',\n L: 'MM/DD/YYYY',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY h:mm A',\n LLLL: 'dddd, MMMM D, YYYY h:mm A',\n };\n\n function longDateFormat(key) {\n var format = this._longDateFormat[key],\n formatUpper = this._longDateFormat[key.toUpperCase()];\n\n if (format || !formatUpper) {\n return format;\n }\n\n this._longDateFormat[key] = formatUpper\n .match(formattingTokens)\n .map(function (tok) {\n if (\n tok === 'MMMM' ||\n tok === 'MM' ||\n tok === 'DD' ||\n tok === 'dddd'\n ) {\n return tok.slice(1);\n }\n return tok;\n })\n .join('');\n\n return this._longDateFormat[key];\n }\n\n var defaultInvalidDate = 'Invalid date';\n\n function invalidDate() {\n return this._invalidDate;\n }\n\n var defaultOrdinal = '%d',\n defaultDayOfMonthOrdinalParse = /\\d{1,2}/;\n\n function ordinal(number) {\n return this._ordinal.replace('%d', number);\n }\n\n var defaultRelativeTime = {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n w: 'a week',\n ww: '%d weeks',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n };\n\n function relativeTime(number, withoutSuffix, string, isFuture) {\n var output = this._relativeTime[string];\n return isFunction(output)\n ? output(number, withoutSuffix, string, isFuture)\n : output.replace(/%d/i, number);\n }\n\n function pastFuture(diff, output) {\n var format = this._relativeTime[diff > 0 ? 'future' : 'past'];\n return isFunction(format) ? format(output) : format.replace(/%s/i, output);\n }\n\n var aliases = {};\n\n function addUnitAlias(unit, shorthand) {\n var lowerCase = unit.toLowerCase();\n aliases[lowerCase] = aliases[lowerCase + 's'] = aliases[shorthand] = unit;\n }\n\n function normalizeUnits(units) {\n return typeof units === 'string'\n ? aliases[units] || aliases[units.toLowerCase()]\n : undefined;\n }\n\n function normalizeObjectUnits(inputObject) {\n var normalizedInput = {},\n normalizedProp,\n prop;\n\n for (prop in inputObject) {\n if (hasOwnProp(inputObject, prop)) {\n normalizedProp = normalizeUnits(prop);\n if (normalizedProp) {\n normalizedInput[normalizedProp] = inputObject[prop];\n }\n }\n }\n\n return normalizedInput;\n }\n\n var priorities = {};\n\n function addUnitPriority(unit, priority) {\n priorities[unit] = priority;\n }\n\n function getPrioritizedUnits(unitsObj) {\n var units = [],\n u;\n for (u in unitsObj) {\n if (hasOwnProp(unitsObj, u)) {\n units.push({ unit: u, priority: priorities[u] });\n }\n }\n units.sort(function (a, b) {\n return a.priority - b.priority;\n });\n return units;\n }\n\n function isLeapYear(year) {\n return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;\n }\n\n function absFloor(number) {\n if (number < 0) {\n // -0 -> 0\n return Math.ceil(number) || 0;\n } else {\n return Math.floor(number);\n }\n }\n\n function toInt(argumentForCoercion) {\n var coercedNumber = +argumentForCoercion,\n value = 0;\n\n if (coercedNumber !== 0 && isFinite(coercedNumber)) {\n value = absFloor(coercedNumber);\n }\n\n return value;\n }\n\n function makeGetSet(unit, keepTime) {\n return function (value) {\n if (value != null) {\n set$1(this, unit, value);\n hooks.updateOffset(this, keepTime);\n return this;\n } else {\n return get(this, unit);\n }\n };\n }\n\n function get(mom, unit) {\n return mom.isValid()\n ? mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]()\n : NaN;\n }\n\n function set$1(mom, unit, value) {\n if (mom.isValid() && !isNaN(value)) {\n if (\n unit === 'FullYear' &&\n isLeapYear(mom.year()) &&\n mom.month() === 1 &&\n mom.date() === 29\n ) {\n value = toInt(value);\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](\n value,\n mom.month(),\n daysInMonth(value, mom.month())\n );\n } else {\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value);\n }\n }\n }\n\n // MOMENTS\n\n function stringGet(units) {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units]();\n }\n return this;\n }\n\n function stringSet(units, value) {\n if (typeof units === 'object') {\n units = normalizeObjectUnits(units);\n var prioritized = getPrioritizedUnits(units),\n i,\n prioritizedLen = prioritized.length;\n for (i = 0; i < prioritizedLen; i++) {\n this[prioritized[i].unit](units[prioritized[i].unit]);\n }\n } else {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units](value);\n }\n }\n return this;\n }\n\n var match1 = /\\d/, // 0 - 9\n match2 = /\\d\\d/, // 00 - 99\n match3 = /\\d{3}/, // 000 - 999\n match4 = /\\d{4}/, // 0000 - 9999\n match6 = /[+-]?\\d{6}/, // -999999 - 999999\n match1to2 = /\\d\\d?/, // 0 - 99\n match3to4 = /\\d\\d\\d\\d?/, // 999 - 9999\n match5to6 = /\\d\\d\\d\\d\\d\\d?/, // 99999 - 999999\n match1to3 = /\\d{1,3}/, // 0 - 999\n match1to4 = /\\d{1,4}/, // 0 - 9999\n match1to6 = /[+-]?\\d{1,6}/, // -999999 - 999999\n matchUnsigned = /\\d+/, // 0 - inf\n matchSigned = /[+-]?\\d+/, // -inf - inf\n matchOffset = /Z|[+-]\\d\\d:?\\d\\d/gi, // +00:00 -00:00 +0000 -0000 or Z\n matchShortOffset = /Z|[+-]\\d\\d(?::?\\d\\d)?/gi, // +00 -00 +00:00 -00:00 +0000 -0000 or Z\n matchTimestamp = /[+-]?\\d+(\\.\\d{1,3})?/, // 123456789 123456789.123\n // any word (or two) characters or numbers including two/three word month in arabic.\n // includes scottish gaelic two word and hyphenated months\n matchWord =\n /[0-9]{0,256}['a-z\\u00A0-\\u05FF\\u0700-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFF07\\uFF10-\\uFFEF]{1,256}|[\\u0600-\\u06FF\\/]{1,256}(\\s*?[\\u0600-\\u06FF]{1,256}){1,2}/i,\n regexes;\n\n regexes = {};\n\n function addRegexToken(token, regex, strictRegex) {\n regexes[token] = isFunction(regex)\n ? regex\n : function (isStrict, localeData) {\n return isStrict && strictRegex ? strictRegex : regex;\n };\n }\n\n function getParseRegexForToken(token, config) {\n if (!hasOwnProp(regexes, token)) {\n return new RegExp(unescapeFormat(token));\n }\n\n return regexes[token](config._strict, config._locale);\n }\n\n // Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript\n function unescapeFormat(s) {\n return regexEscape(\n s\n .replace('\\\\', '')\n .replace(\n /\\\\(\\[)|\\\\(\\])|\\[([^\\]\\[]*)\\]|\\\\(.)/g,\n function (matched, p1, p2, p3, p4) {\n return p1 || p2 || p3 || p4;\n }\n )\n );\n }\n\n function regexEscape(s) {\n return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n }\n\n var tokens = {};\n\n function addParseToken(token, callback) {\n var i,\n func = callback,\n tokenLen;\n if (typeof token === 'string') {\n token = [token];\n }\n if (isNumber(callback)) {\n func = function (input, array) {\n array[callback] = toInt(input);\n };\n }\n tokenLen = token.length;\n for (i = 0; i < tokenLen; i++) {\n tokens[token[i]] = func;\n }\n }\n\n function addWeekParseToken(token, callback) {\n addParseToken(token, function (input, array, config, token) {\n config._w = config._w || {};\n callback(input, config._w, config, token);\n });\n }\n\n function addTimeToArrayFromToken(token, input, config) {\n if (input != null && hasOwnProp(tokens, token)) {\n tokens[token](input, config._a, config, token);\n }\n }\n\n var YEAR = 0,\n MONTH = 1,\n DATE = 2,\n HOUR = 3,\n MINUTE = 4,\n SECOND = 5,\n MILLISECOND = 6,\n WEEK = 7,\n WEEKDAY = 8;\n\n function mod(n, x) {\n return ((n % x) + x) % x;\n }\n\n var indexOf;\n\n if (Array.prototype.indexOf) {\n indexOf = Array.prototype.indexOf;\n } else {\n indexOf = function (o) {\n // I know\n var i;\n for (i = 0; i < this.length; ++i) {\n if (this[i] === o) {\n return i;\n }\n }\n return -1;\n };\n }\n\n function daysInMonth(year, month) {\n if (isNaN(year) || isNaN(month)) {\n return NaN;\n }\n var modMonth = mod(month, 12);\n year += (month - modMonth) / 12;\n return modMonth === 1\n ? isLeapYear(year)\n ? 29\n : 28\n : 31 - ((modMonth % 7) % 2);\n }\n\n // FORMATTING\n\n addFormatToken('M', ['MM', 2], 'Mo', function () {\n return this.month() + 1;\n });\n\n addFormatToken('MMM', 0, 0, function (format) {\n return this.localeData().monthsShort(this, format);\n });\n\n addFormatToken('MMMM', 0, 0, function (format) {\n return this.localeData().months(this, format);\n });\n\n // ALIASES\n\n addUnitAlias('month', 'M');\n\n // PRIORITY\n\n addUnitPriority('month', 8);\n\n // PARSING\n\n addRegexToken('M', match1to2);\n addRegexToken('MM', match1to2, match2);\n addRegexToken('MMM', function (isStrict, locale) {\n return locale.monthsShortRegex(isStrict);\n });\n addRegexToken('MMMM', function (isStrict, locale) {\n return locale.monthsRegex(isStrict);\n });\n\n addParseToken(['M', 'MM'], function (input, array) {\n array[MONTH] = toInt(input) - 1;\n });\n\n addParseToken(['MMM', 'MMMM'], function (input, array, config, token) {\n var month = config._locale.monthsParse(input, token, config._strict);\n // if we didn't find a month name, mark the date as invalid.\n if (month != null) {\n array[MONTH] = month;\n } else {\n getParsingFlags(config).invalidMonth = input;\n }\n });\n\n // LOCALES\n\n var defaultLocaleMonths =\n 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n defaultLocaleMonthsShort =\n 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n MONTHS_IN_FORMAT = /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?/,\n defaultMonthsShortRegex = matchWord,\n defaultMonthsRegex = matchWord;\n\n function localeMonths(m, format) {\n if (!m) {\n return isArray(this._months)\n ? this._months\n : this._months['standalone'];\n }\n return isArray(this._months)\n ? this._months[m.month()]\n : this._months[\n (this._months.isFormat || MONTHS_IN_FORMAT).test(format)\n ? 'format'\n : 'standalone'\n ][m.month()];\n }\n\n function localeMonthsShort(m, format) {\n if (!m) {\n return isArray(this._monthsShort)\n ? this._monthsShort\n : this._monthsShort['standalone'];\n }\n return isArray(this._monthsShort)\n ? this._monthsShort[m.month()]\n : this._monthsShort[\n MONTHS_IN_FORMAT.test(format) ? 'format' : 'standalone'\n ][m.month()];\n }\n\n function handleStrictParse(monthName, format, strict) {\n var i,\n ii,\n mom,\n llc = monthName.toLocaleLowerCase();\n if (!this._monthsParse) {\n // this is not used\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n for (i = 0; i < 12; ++i) {\n mom = createUTC([2000, i]);\n this._shortMonthsParse[i] = this.monthsShort(\n mom,\n ''\n ).toLocaleLowerCase();\n this._longMonthsParse[i] = this.months(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n }\n\n function localeMonthsParse(monthName, format, strict) {\n var i, mom, regex;\n\n if (this._monthsParseExact) {\n return handleStrictParse.call(this, monthName, format, strict);\n }\n\n if (!this._monthsParse) {\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n }\n\n // TODO: add sorting\n // Sorting makes sure if one month (or abbr) is a prefix of another\n // see sorting in computeMonthsParse\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n if (strict && !this._longMonthsParse[i]) {\n this._longMonthsParse[i] = new RegExp(\n '^' + this.months(mom, '').replace('.', '') + '$',\n 'i'\n );\n this._shortMonthsParse[i] = new RegExp(\n '^' + this.monthsShort(mom, '').replace('.', '') + '$',\n 'i'\n );\n }\n if (!strict && !this._monthsParse[i]) {\n regex =\n '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, '');\n this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (\n strict &&\n format === 'MMMM' &&\n this._longMonthsParse[i].test(monthName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'MMM' &&\n this._shortMonthsParse[i].test(monthName)\n ) {\n return i;\n } else if (!strict && this._monthsParse[i].test(monthName)) {\n return i;\n }\n }\n }\n\n // MOMENTS\n\n function setMonth(mom, value) {\n var dayOfMonth;\n\n if (!mom.isValid()) {\n // No op\n return mom;\n }\n\n if (typeof value === 'string') {\n if (/^\\d+$/.test(value)) {\n value = toInt(value);\n } else {\n value = mom.localeData().monthsParse(value);\n // TODO: Another silent failure?\n if (!isNumber(value)) {\n return mom;\n }\n }\n }\n\n dayOfMonth = Math.min(mom.date(), daysInMonth(mom.year(), value));\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + 'Month'](value, dayOfMonth);\n return mom;\n }\n\n function getSetMonth(value) {\n if (value != null) {\n setMonth(this, value);\n hooks.updateOffset(this, true);\n return this;\n } else {\n return get(this, 'Month');\n }\n }\n\n function getDaysInMonth() {\n return daysInMonth(this.year(), this.month());\n }\n\n function monthsShortRegex(isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsShortStrictRegex;\n } else {\n return this._monthsShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsShortRegex')) {\n this._monthsShortRegex = defaultMonthsShortRegex;\n }\n return this._monthsShortStrictRegex && isStrict\n ? this._monthsShortStrictRegex\n : this._monthsShortRegex;\n }\n }\n\n function monthsRegex(isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsStrictRegex;\n } else {\n return this._monthsRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsRegex')) {\n this._monthsRegex = defaultMonthsRegex;\n }\n return this._monthsStrictRegex && isStrict\n ? this._monthsStrictRegex\n : this._monthsRegex;\n }\n }\n\n function computeMonthsParse() {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var shortPieces = [],\n longPieces = [],\n mixedPieces = [],\n i,\n mom;\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n shortPieces.push(this.monthsShort(mom, ''));\n longPieces.push(this.months(mom, ''));\n mixedPieces.push(this.months(mom, ''));\n mixedPieces.push(this.monthsShort(mom, ''));\n }\n // Sorting makes sure if one month (or abbr) is a prefix of another it\n // will match the longer piece.\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n for (i = 0; i < 12; i++) {\n shortPieces[i] = regexEscape(shortPieces[i]);\n longPieces[i] = regexEscape(longPieces[i]);\n }\n for (i = 0; i < 24; i++) {\n mixedPieces[i] = regexEscape(mixedPieces[i]);\n }\n\n this._monthsRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._monthsShortRegex = this._monthsRegex;\n this._monthsStrictRegex = new RegExp(\n '^(' + longPieces.join('|') + ')',\n 'i'\n );\n this._monthsShortStrictRegex = new RegExp(\n '^(' + shortPieces.join('|') + ')',\n 'i'\n );\n }\n\n // FORMATTING\n\n addFormatToken('Y', 0, 0, function () {\n var y = this.year();\n return y <= 9999 ? zeroFill(y, 4) : '+' + y;\n });\n\n addFormatToken(0, ['YY', 2], 0, function () {\n return this.year() % 100;\n });\n\n addFormatToken(0, ['YYYY', 4], 0, 'year');\n addFormatToken(0, ['YYYYY', 5], 0, 'year');\n addFormatToken(0, ['YYYYYY', 6, true], 0, 'year');\n\n // ALIASES\n\n addUnitAlias('year', 'y');\n\n // PRIORITIES\n\n addUnitPriority('year', 1);\n\n // PARSING\n\n addRegexToken('Y', matchSigned);\n addRegexToken('YY', match1to2, match2);\n addRegexToken('YYYY', match1to4, match4);\n addRegexToken('YYYYY', match1to6, match6);\n addRegexToken('YYYYYY', match1to6, match6);\n\n addParseToken(['YYYYY', 'YYYYYY'], YEAR);\n addParseToken('YYYY', function (input, array) {\n array[YEAR] =\n input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input);\n });\n addParseToken('YY', function (input, array) {\n array[YEAR] = hooks.parseTwoDigitYear(input);\n });\n addParseToken('Y', function (input, array) {\n array[YEAR] = parseInt(input, 10);\n });\n\n // HELPERS\n\n function daysInYear(year) {\n return isLeapYear(year) ? 366 : 365;\n }\n\n // HOOKS\n\n hooks.parseTwoDigitYear = function (input) {\n return toInt(input) + (toInt(input) > 68 ? 1900 : 2000);\n };\n\n // MOMENTS\n\n var getSetYear = makeGetSet('FullYear', true);\n\n function getIsLeapYear() {\n return isLeapYear(this.year());\n }\n\n function createDate(y, m, d, h, M, s, ms) {\n // can't just apply() to create a date:\n // https://stackoverflow.com/q/181348\n var date;\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n date = new Date(y + 400, m, d, h, M, s, ms);\n if (isFinite(date.getFullYear())) {\n date.setFullYear(y);\n }\n } else {\n date = new Date(y, m, d, h, M, s, ms);\n }\n\n return date;\n }\n\n function createUTCDate(y) {\n var date, args;\n // the Date.UTC function remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n args = Array.prototype.slice.call(arguments);\n // preserve leap years using a full 400 year cycle, then reset\n args[0] = y + 400;\n date = new Date(Date.UTC.apply(null, args));\n if (isFinite(date.getUTCFullYear())) {\n date.setUTCFullYear(y);\n }\n } else {\n date = new Date(Date.UTC.apply(null, arguments));\n }\n\n return date;\n }\n\n // start-of-first-week - start-of-year\n function firstWeekOffset(year, dow, doy) {\n var // first-week day -- which january is always in the first week (4 for iso, 1 for other)\n fwd = 7 + dow - doy,\n // first-week day local weekday -- which local weekday is fwd\n fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7;\n\n return -fwdlw + fwd - 1;\n }\n\n // https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday\n function dayOfYearFromWeeks(year, week, weekday, dow, doy) {\n var localWeekday = (7 + weekday - dow) % 7,\n weekOffset = firstWeekOffset(year, dow, doy),\n dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset,\n resYear,\n resDayOfYear;\n\n if (dayOfYear <= 0) {\n resYear = year - 1;\n resDayOfYear = daysInYear(resYear) + dayOfYear;\n } else if (dayOfYear > daysInYear(year)) {\n resYear = year + 1;\n resDayOfYear = dayOfYear - daysInYear(year);\n } else {\n resYear = year;\n resDayOfYear = dayOfYear;\n }\n\n return {\n year: resYear,\n dayOfYear: resDayOfYear,\n };\n }\n\n function weekOfYear(mom, dow, doy) {\n var weekOffset = firstWeekOffset(mom.year(), dow, doy),\n week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1,\n resWeek,\n resYear;\n\n if (week < 1) {\n resYear = mom.year() - 1;\n resWeek = week + weeksInYear(resYear, dow, doy);\n } else if (week > weeksInYear(mom.year(), dow, doy)) {\n resWeek = week - weeksInYear(mom.year(), dow, doy);\n resYear = mom.year() + 1;\n } else {\n resYear = mom.year();\n resWeek = week;\n }\n\n return {\n week: resWeek,\n year: resYear,\n };\n }\n\n function weeksInYear(year, dow, doy) {\n var weekOffset = firstWeekOffset(year, dow, doy),\n weekOffsetNext = firstWeekOffset(year + 1, dow, doy);\n return (daysInYear(year) - weekOffset + weekOffsetNext) / 7;\n }\n\n // FORMATTING\n\n addFormatToken('w', ['ww', 2], 'wo', 'week');\n addFormatToken('W', ['WW', 2], 'Wo', 'isoWeek');\n\n // ALIASES\n\n addUnitAlias('week', 'w');\n addUnitAlias('isoWeek', 'W');\n\n // PRIORITIES\n\n addUnitPriority('week', 5);\n addUnitPriority('isoWeek', 5);\n\n // PARSING\n\n addRegexToken('w', match1to2);\n addRegexToken('ww', match1to2, match2);\n addRegexToken('W', match1to2);\n addRegexToken('WW', match1to2, match2);\n\n addWeekParseToken(\n ['w', 'ww', 'W', 'WW'],\n function (input, week, config, token) {\n week[token.substr(0, 1)] = toInt(input);\n }\n );\n\n // HELPERS\n\n // LOCALES\n\n function localeWeek(mom) {\n return weekOfYear(mom, this._week.dow, this._week.doy).week;\n }\n\n var defaultLocaleWeek = {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n };\n\n function localeFirstDayOfWeek() {\n return this._week.dow;\n }\n\n function localeFirstDayOfYear() {\n return this._week.doy;\n }\n\n // MOMENTS\n\n function getSetWeek(input) {\n var week = this.localeData().week(this);\n return input == null ? week : this.add((input - week) * 7, 'd');\n }\n\n function getSetISOWeek(input) {\n var week = weekOfYear(this, 1, 4).week;\n return input == null ? week : this.add((input - week) * 7, 'd');\n }\n\n // FORMATTING\n\n addFormatToken('d', 0, 'do', 'day');\n\n addFormatToken('dd', 0, 0, function (format) {\n return this.localeData().weekdaysMin(this, format);\n });\n\n addFormatToken('ddd', 0, 0, function (format) {\n return this.localeData().weekdaysShort(this, format);\n });\n\n addFormatToken('dddd', 0, 0, function (format) {\n return this.localeData().weekdays(this, format);\n });\n\n addFormatToken('e', 0, 0, 'weekday');\n addFormatToken('E', 0, 0, 'isoWeekday');\n\n // ALIASES\n\n addUnitAlias('day', 'd');\n addUnitAlias('weekday', 'e');\n addUnitAlias('isoWeekday', 'E');\n\n // PRIORITY\n addUnitPriority('day', 11);\n addUnitPriority('weekday', 11);\n addUnitPriority('isoWeekday', 11);\n\n // PARSING\n\n addRegexToken('d', match1to2);\n addRegexToken('e', match1to2);\n addRegexToken('E', match1to2);\n addRegexToken('dd', function (isStrict, locale) {\n return locale.weekdaysMinRegex(isStrict);\n });\n addRegexToken('ddd', function (isStrict, locale) {\n return locale.weekdaysShortRegex(isStrict);\n });\n addRegexToken('dddd', function (isStrict, locale) {\n return locale.weekdaysRegex(isStrict);\n });\n\n addWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config, token) {\n var weekday = config._locale.weekdaysParse(input, token, config._strict);\n // if we didn't get a weekday name, mark the date as invalid\n if (weekday != null) {\n week.d = weekday;\n } else {\n getParsingFlags(config).invalidWeekday = input;\n }\n });\n\n addWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) {\n week[token] = toInt(input);\n });\n\n // HELPERS\n\n function parseWeekday(input, locale) {\n if (typeof input !== 'string') {\n return input;\n }\n\n if (!isNaN(input)) {\n return parseInt(input, 10);\n }\n\n input = locale.weekdaysParse(input);\n if (typeof input === 'number') {\n return input;\n }\n\n return null;\n }\n\n function parseIsoWeekday(input, locale) {\n if (typeof input === 'string') {\n return locale.weekdaysParse(input) % 7 || 7;\n }\n return isNaN(input) ? null : input;\n }\n\n // LOCALES\n function shiftWeekdays(ws, n) {\n return ws.slice(n, 7).concat(ws.slice(0, n));\n }\n\n var defaultLocaleWeekdays =\n 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n defaultWeekdaysRegex = matchWord,\n defaultWeekdaysShortRegex = matchWord,\n defaultWeekdaysMinRegex = matchWord;\n\n function localeWeekdays(m, format) {\n var weekdays = isArray(this._weekdays)\n ? this._weekdays\n : this._weekdays[\n m && m !== true && this._weekdays.isFormat.test(format)\n ? 'format'\n : 'standalone'\n ];\n return m === true\n ? shiftWeekdays(weekdays, this._week.dow)\n : m\n ? weekdays[m.day()]\n : weekdays;\n }\n\n function localeWeekdaysShort(m) {\n return m === true\n ? shiftWeekdays(this._weekdaysShort, this._week.dow)\n : m\n ? this._weekdaysShort[m.day()]\n : this._weekdaysShort;\n }\n\n function localeWeekdaysMin(m) {\n return m === true\n ? shiftWeekdays(this._weekdaysMin, this._week.dow)\n : m\n ? this._weekdaysMin[m.day()]\n : this._weekdaysMin;\n }\n\n function handleStrictParse$1(weekdayName, format, strict) {\n var i,\n ii,\n mom,\n llc = weekdayName.toLocaleLowerCase();\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._minWeekdaysParse = [];\n\n for (i = 0; i < 7; ++i) {\n mom = createUTC([2000, 1]).day(i);\n this._minWeekdaysParse[i] = this.weekdaysMin(\n mom,\n ''\n ).toLocaleLowerCase();\n this._shortWeekdaysParse[i] = this.weekdaysShort(\n mom,\n ''\n ).toLocaleLowerCase();\n this._weekdaysParse[i] = this.weekdays(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n }\n\n function localeWeekdaysParse(weekdayName, format, strict) {\n var i, mom, regex;\n\n if (this._weekdaysParseExact) {\n return handleStrictParse$1.call(this, weekdayName, format, strict);\n }\n\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._minWeekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._fullWeekdaysParse = [];\n }\n\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n\n mom = createUTC([2000, 1]).day(i);\n if (strict && !this._fullWeekdaysParse[i]) {\n this._fullWeekdaysParse[i] = new RegExp(\n '^' + this.weekdays(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n this._shortWeekdaysParse[i] = new RegExp(\n '^' + this.weekdaysShort(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n this._minWeekdaysParse[i] = new RegExp(\n '^' + this.weekdaysMin(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n }\n if (!this._weekdaysParse[i]) {\n regex =\n '^' +\n this.weekdays(mom, '') +\n '|^' +\n this.weekdaysShort(mom, '') +\n '|^' +\n this.weekdaysMin(mom, '');\n this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (\n strict &&\n format === 'dddd' &&\n this._fullWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'ddd' &&\n this._shortWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'dd' &&\n this._minWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (!strict && this._weekdaysParse[i].test(weekdayName)) {\n return i;\n }\n }\n }\n\n // MOMENTS\n\n function getSetDayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay();\n if (input != null) {\n input = parseWeekday(input, this.localeData());\n return this.add(input - day, 'd');\n } else {\n return day;\n }\n }\n\n function getSetLocaleDayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7;\n return input == null ? weekday : this.add(input - weekday, 'd');\n }\n\n function getSetISODayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n\n // behaves the same as moment#day except\n // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6)\n // as a setter, sunday should belong to the previous week.\n\n if (input != null) {\n var weekday = parseIsoWeekday(input, this.localeData());\n return this.day(this.day() % 7 ? weekday : weekday - 7);\n } else {\n return this.day() || 7;\n }\n }\n\n function weekdaysRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysStrictRegex;\n } else {\n return this._weekdaysRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n this._weekdaysRegex = defaultWeekdaysRegex;\n }\n return this._weekdaysStrictRegex && isStrict\n ? this._weekdaysStrictRegex\n : this._weekdaysRegex;\n }\n }\n\n function weekdaysShortRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysShortStrictRegex;\n } else {\n return this._weekdaysShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysShortRegex')) {\n this._weekdaysShortRegex = defaultWeekdaysShortRegex;\n }\n return this._weekdaysShortStrictRegex && isStrict\n ? this._weekdaysShortStrictRegex\n : this._weekdaysShortRegex;\n }\n }\n\n function weekdaysMinRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysMinStrictRegex;\n } else {\n return this._weekdaysMinRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysMinRegex')) {\n this._weekdaysMinRegex = defaultWeekdaysMinRegex;\n }\n return this._weekdaysMinStrictRegex && isStrict\n ? this._weekdaysMinStrictRegex\n : this._weekdaysMinRegex;\n }\n }\n\n function computeWeekdaysParse() {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var minPieces = [],\n shortPieces = [],\n longPieces = [],\n mixedPieces = [],\n i,\n mom,\n minp,\n shortp,\n longp;\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, 1]).day(i);\n minp = regexEscape(this.weekdaysMin(mom, ''));\n shortp = regexEscape(this.weekdaysShort(mom, ''));\n longp = regexEscape(this.weekdays(mom, ''));\n minPieces.push(minp);\n shortPieces.push(shortp);\n longPieces.push(longp);\n mixedPieces.push(minp);\n mixedPieces.push(shortp);\n mixedPieces.push(longp);\n }\n // Sorting makes sure if one weekday (or abbr) is a prefix of another it\n // will match the longer piece.\n minPieces.sort(cmpLenRev);\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n\n this._weekdaysRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._weekdaysShortRegex = this._weekdaysRegex;\n this._weekdaysMinRegex = this._weekdaysRegex;\n\n this._weekdaysStrictRegex = new RegExp(\n '^(' + longPieces.join('|') + ')',\n 'i'\n );\n this._weekdaysShortStrictRegex = new RegExp(\n '^(' + shortPieces.join('|') + ')',\n 'i'\n );\n this._weekdaysMinStrictRegex = new RegExp(\n '^(' + minPieces.join('|') + ')',\n 'i'\n );\n }\n\n // FORMATTING\n\n function hFormat() {\n return this.hours() % 12 || 12;\n }\n\n function kFormat() {\n return this.hours() || 24;\n }\n\n addFormatToken('H', ['HH', 2], 0, 'hour');\n addFormatToken('h', ['hh', 2], 0, hFormat);\n addFormatToken('k', ['kk', 2], 0, kFormat);\n\n addFormatToken('hmm', 0, 0, function () {\n return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2);\n });\n\n addFormatToken('hmmss', 0, 0, function () {\n return (\n '' +\n hFormat.apply(this) +\n zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2)\n );\n });\n\n addFormatToken('Hmm', 0, 0, function () {\n return '' + this.hours() + zeroFill(this.minutes(), 2);\n });\n\n addFormatToken('Hmmss', 0, 0, function () {\n return (\n '' +\n this.hours() +\n zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2)\n );\n });\n\n function meridiem(token, lowercase) {\n addFormatToken(token, 0, 0, function () {\n return this.localeData().meridiem(\n this.hours(),\n this.minutes(),\n lowercase\n );\n });\n }\n\n meridiem('a', true);\n meridiem('A', false);\n\n // ALIASES\n\n addUnitAlias('hour', 'h');\n\n // PRIORITY\n addUnitPriority('hour', 13);\n\n // PARSING\n\n function matchMeridiem(isStrict, locale) {\n return locale._meridiemParse;\n }\n\n addRegexToken('a', matchMeridiem);\n addRegexToken('A', matchMeridiem);\n addRegexToken('H', match1to2);\n addRegexToken('h', match1to2);\n addRegexToken('k', match1to2);\n addRegexToken('HH', match1to2, match2);\n addRegexToken('hh', match1to2, match2);\n addRegexToken('kk', match1to2, match2);\n\n addRegexToken('hmm', match3to4);\n addRegexToken('hmmss', match5to6);\n addRegexToken('Hmm', match3to4);\n addRegexToken('Hmmss', match5to6);\n\n addParseToken(['H', 'HH'], HOUR);\n addParseToken(['k', 'kk'], function (input, array, config) {\n var kInput = toInt(input);\n array[HOUR] = kInput === 24 ? 0 : kInput;\n });\n addParseToken(['a', 'A'], function (input, array, config) {\n config._isPm = config._locale.isPM(input);\n config._meridiem = input;\n });\n addParseToken(['h', 'hh'], function (input, array, config) {\n array[HOUR] = toInt(input);\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('hmmss', function (input, array, config) {\n var pos1 = input.length - 4,\n pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('Hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n });\n addParseToken('Hmmss', function (input, array, config) {\n var pos1 = input.length - 4,\n pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n });\n\n // LOCALES\n\n function localeIsPM(input) {\n // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays\n // Using charAt should be more compatible.\n return (input + '').toLowerCase().charAt(0) === 'p';\n }\n\n var defaultLocaleMeridiemParse = /[ap]\\.?m?\\.?/i,\n // Setting the hour should keep the time, because the user explicitly\n // specified which hour they want. So trying to maintain the same hour (in\n // a new timezone) makes sense. Adding/subtracting hours does not follow\n // this rule.\n getSetHour = makeGetSet('Hours', true);\n\n function localeMeridiem(hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'pm' : 'PM';\n } else {\n return isLower ? 'am' : 'AM';\n }\n }\n\n var baseConfig = {\n calendar: defaultCalendar,\n longDateFormat: defaultLongDateFormat,\n invalidDate: defaultInvalidDate,\n ordinal: defaultOrdinal,\n dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse,\n relativeTime: defaultRelativeTime,\n\n months: defaultLocaleMonths,\n monthsShort: defaultLocaleMonthsShort,\n\n week: defaultLocaleWeek,\n\n weekdays: defaultLocaleWeekdays,\n weekdaysMin: defaultLocaleWeekdaysMin,\n weekdaysShort: defaultLocaleWeekdaysShort,\n\n meridiemParse: defaultLocaleMeridiemParse,\n };\n\n // internal storage for locale config files\n var locales = {},\n localeFamilies = {},\n globalLocale;\n\n function commonPrefix(arr1, arr2) {\n var i,\n minl = Math.min(arr1.length, arr2.length);\n for (i = 0; i < minl; i += 1) {\n if (arr1[i] !== arr2[i]) {\n return i;\n }\n }\n return minl;\n }\n\n function normalizeLocale(key) {\n return key ? key.toLowerCase().replace('_', '-') : key;\n }\n\n // pick the locale from the array\n // try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each\n // substring from most specific to least, but move to the next array item if it's a more specific variant than the current root\n function chooseLocale(names) {\n var i = 0,\n j,\n next,\n locale,\n split;\n\n while (i < names.length) {\n split = normalizeLocale(names[i]).split('-');\n j = split.length;\n next = normalizeLocale(names[i + 1]);\n next = next ? next.split('-') : null;\n while (j > 0) {\n locale = loadLocale(split.slice(0, j).join('-'));\n if (locale) {\n return locale;\n }\n if (\n next &&\n next.length >= j &&\n commonPrefix(split, next) >= j - 1\n ) {\n //the next array item is better than a shallower substring of this one\n break;\n }\n j--;\n }\n i++;\n }\n return globalLocale;\n }\n\n function isLocaleNameSane(name) {\n // Prevent names that look like filesystem paths, i.e contain '/' or '\\'\n return name.match('^[^/\\\\\\\\]*$') != null;\n }\n\n function loadLocale(name) {\n var oldLocale = null,\n aliasedRequire;\n // TODO: Find a better way to register and load all the locales in Node\n if (\n locales[name] === undefined &&\n typeof module !== 'undefined' &&\n module &&\n module.exports &&\n isLocaleNameSane(name)\n ) {\n try {\n oldLocale = globalLocale._abbr;\n aliasedRequire = require;\n aliasedRequire('./locale/' + name);\n getSetGlobalLocale(oldLocale);\n } catch (e) {\n // mark as not found to avoid repeating expensive file require call causing high CPU\n // when trying to find en-US, en_US, en-us for every format call\n locales[name] = null; // null means not found\n }\n }\n return locales[name];\n }\n\n // This function will load locale and then set the global locale. If\n // no arguments are passed in, it will simply return the current global\n // locale key.\n function getSetGlobalLocale(key, values) {\n var data;\n if (key) {\n if (isUndefined(values)) {\n data = getLocale(key);\n } else {\n data = defineLocale(key, values);\n }\n\n if (data) {\n // moment.duration._locale = moment._locale = data;\n globalLocale = data;\n } else {\n if (typeof console !== 'undefined' && console.warn) {\n //warn user if arguments are passed but the locale could not be set\n console.warn(\n 'Locale ' + key + ' not found. Did you forget to load it?'\n );\n }\n }\n }\n\n return globalLocale._abbr;\n }\n\n function defineLocale(name, config) {\n if (config !== null) {\n var locale,\n parentConfig = baseConfig;\n config.abbr = name;\n if (locales[name] != null) {\n deprecateSimple(\n 'defineLocaleOverride',\n 'use moment.updateLocale(localeName, config) to change ' +\n 'an existing locale. moment.defineLocale(localeName, ' +\n 'config) should only be used for creating a new locale ' +\n 'See http://momentjs.com/guides/#/warnings/define-locale/ for more info.'\n );\n parentConfig = locales[name]._config;\n } else if (config.parentLocale != null) {\n if (locales[config.parentLocale] != null) {\n parentConfig = locales[config.parentLocale]._config;\n } else {\n locale = loadLocale(config.parentLocale);\n if (locale != null) {\n parentConfig = locale._config;\n } else {\n if (!localeFamilies[config.parentLocale]) {\n localeFamilies[config.parentLocale] = [];\n }\n localeFamilies[config.parentLocale].push({\n name: name,\n config: config,\n });\n return null;\n }\n }\n }\n locales[name] = new Locale(mergeConfigs(parentConfig, config));\n\n if (localeFamilies[name]) {\n localeFamilies[name].forEach(function (x) {\n defineLocale(x.name, x.config);\n });\n }\n\n // backwards compat for now: also set the locale\n // make sure we set the locale AFTER all child locales have been\n // created, so we won't end up with the child locale set.\n getSetGlobalLocale(name);\n\n return locales[name];\n } else {\n // useful for testing\n delete locales[name];\n return null;\n }\n }\n\n function updateLocale(name, config) {\n if (config != null) {\n var locale,\n tmpLocale,\n parentConfig = baseConfig;\n\n if (locales[name] != null && locales[name].parentLocale != null) {\n // Update existing child locale in-place to avoid memory-leaks\n locales[name].set(mergeConfigs(locales[name]._config, config));\n } else {\n // MERGE\n tmpLocale = loadLocale(name);\n if (tmpLocale != null) {\n parentConfig = tmpLocale._config;\n }\n config = mergeConfigs(parentConfig, config);\n if (tmpLocale == null) {\n // updateLocale is called for creating a new locale\n // Set abbr so it will have a name (getters return\n // undefined otherwise).\n config.abbr = name;\n }\n locale = new Locale(config);\n locale.parentLocale = locales[name];\n locales[name] = locale;\n }\n\n // backwards compat for now: also set the locale\n getSetGlobalLocale(name);\n } else {\n // pass null for config to unupdate, useful for tests\n if (locales[name] != null) {\n if (locales[name].parentLocale != null) {\n locales[name] = locales[name].parentLocale;\n if (name === getSetGlobalLocale()) {\n getSetGlobalLocale(name);\n }\n } else if (locales[name] != null) {\n delete locales[name];\n }\n }\n }\n return locales[name];\n }\n\n // returns locale data\n function getLocale(key) {\n var locale;\n\n if (key && key._locale && key._locale._abbr) {\n key = key._locale._abbr;\n }\n\n if (!key) {\n return globalLocale;\n }\n\n if (!isArray(key)) {\n //short-circuit everything else\n locale = loadLocale(key);\n if (locale) {\n return locale;\n }\n key = [key];\n }\n\n return chooseLocale(key);\n }\n\n function listLocales() {\n return keys(locales);\n }\n\n function checkOverflow(m) {\n var overflow,\n a = m._a;\n\n if (a && getParsingFlags(m).overflow === -2) {\n overflow =\n a[MONTH] < 0 || a[MONTH] > 11\n ? MONTH\n : a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH])\n ? DATE\n : a[HOUR] < 0 ||\n a[HOUR] > 24 ||\n (a[HOUR] === 24 &&\n (a[MINUTE] !== 0 ||\n a[SECOND] !== 0 ||\n a[MILLISECOND] !== 0))\n ? HOUR\n : a[MINUTE] < 0 || a[MINUTE] > 59\n ? MINUTE\n : a[SECOND] < 0 || a[SECOND] > 59\n ? SECOND\n : a[MILLISECOND] < 0 || a[MILLISECOND] > 999\n ? MILLISECOND\n : -1;\n\n if (\n getParsingFlags(m)._overflowDayOfYear &&\n (overflow < YEAR || overflow > DATE)\n ) {\n overflow = DATE;\n }\n if (getParsingFlags(m)._overflowWeeks && overflow === -1) {\n overflow = WEEK;\n }\n if (getParsingFlags(m)._overflowWeekday && overflow === -1) {\n overflow = WEEKDAY;\n }\n\n getParsingFlags(m).overflow = overflow;\n }\n\n return m;\n }\n\n // iso 8601 regex\n // 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00)\n var extendedIsoRegex =\n /^\\s*((?:[+-]\\d{6}|\\d{4})-(?:\\d\\d-\\d\\d|W\\d\\d-\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?::\\d\\d(?::\\d\\d(?:[.,]\\d+)?)?)?)([+-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,\n basicIsoRegex =\n /^\\s*((?:[+-]\\d{6}|\\d{4})(?:\\d\\d\\d\\d|W\\d\\d\\d|W\\d\\d|\\d\\d\\d|\\d\\d|))(?:(T| )(\\d\\d(?:\\d\\d(?:\\d\\d(?:[.,]\\d+)?)?)?)([+-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,\n tzRegex = /Z|[+-]\\d\\d(?::?\\d\\d)?/,\n isoDates = [\n ['YYYYYY-MM-DD', /[+-]\\d{6}-\\d\\d-\\d\\d/],\n ['YYYY-MM-DD', /\\d{4}-\\d\\d-\\d\\d/],\n ['GGGG-[W]WW-E', /\\d{4}-W\\d\\d-\\d/],\n ['GGGG-[W]WW', /\\d{4}-W\\d\\d/, false],\n ['YYYY-DDD', /\\d{4}-\\d{3}/],\n ['YYYY-MM', /\\d{4}-\\d\\d/, false],\n ['YYYYYYMMDD', /[+-]\\d{10}/],\n ['YYYYMMDD', /\\d{8}/],\n ['GGGG[W]WWE', /\\d{4}W\\d{3}/],\n ['GGGG[W]WW', /\\d{4}W\\d{2}/, false],\n ['YYYYDDD', /\\d{7}/],\n ['YYYYMM', /\\d{6}/, false],\n ['YYYY', /\\d{4}/, false],\n ],\n // iso time formats and regexes\n isoTimes = [\n ['HH:mm:ss.SSSS', /\\d\\d:\\d\\d:\\d\\d\\.\\d+/],\n ['HH:mm:ss,SSSS', /\\d\\d:\\d\\d:\\d\\d,\\d+/],\n ['HH:mm:ss', /\\d\\d:\\d\\d:\\d\\d/],\n ['HH:mm', /\\d\\d:\\d\\d/],\n ['HHmmss.SSSS', /\\d\\d\\d\\d\\d\\d\\.\\d+/],\n ['HHmmss,SSSS', /\\d\\d\\d\\d\\d\\d,\\d+/],\n ['HHmmss', /\\d\\d\\d\\d\\d\\d/],\n ['HHmm', /\\d\\d\\d\\d/],\n ['HH', /\\d\\d/],\n ],\n aspNetJsonRegex = /^\\/?Date\\((-?\\d+)/i,\n // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3\n rfc2822 =\n /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\\s)?(\\d{1,2})\\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\s(\\d{2,4})\\s(\\d\\d):(\\d\\d)(?::(\\d\\d))?\\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\\d{4}))$/,\n obsOffsets = {\n UT: 0,\n GMT: 0,\n EDT: -4 * 60,\n EST: -5 * 60,\n CDT: -5 * 60,\n CST: -6 * 60,\n MDT: -6 * 60,\n MST: -7 * 60,\n PDT: -7 * 60,\n PST: -8 * 60,\n };\n\n // date from iso format\n function configFromISO(config) {\n var i,\n l,\n string = config._i,\n match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string),\n allowTime,\n dateFormat,\n timeFormat,\n tzFormat,\n isoDatesLen = isoDates.length,\n isoTimesLen = isoTimes.length;\n\n if (match) {\n getParsingFlags(config).iso = true;\n for (i = 0, l = isoDatesLen; i < l; i++) {\n if (isoDates[i][1].exec(match[1])) {\n dateFormat = isoDates[i][0];\n allowTime = isoDates[i][2] !== false;\n break;\n }\n }\n if (dateFormat == null) {\n config._isValid = false;\n return;\n }\n if (match[3]) {\n for (i = 0, l = isoTimesLen; i < l; i++) {\n if (isoTimes[i][1].exec(match[3])) {\n // match[2] should be 'T' or space\n timeFormat = (match[2] || ' ') + isoTimes[i][0];\n break;\n }\n }\n if (timeFormat == null) {\n config._isValid = false;\n return;\n }\n }\n if (!allowTime && timeFormat != null) {\n config._isValid = false;\n return;\n }\n if (match[4]) {\n if (tzRegex.exec(match[4])) {\n tzFormat = 'Z';\n } else {\n config._isValid = false;\n return;\n }\n }\n config._f = dateFormat + (timeFormat || '') + (tzFormat || '');\n configFromStringAndFormat(config);\n } else {\n config._isValid = false;\n }\n }\n\n function extractFromRFC2822Strings(\n yearStr,\n monthStr,\n dayStr,\n hourStr,\n minuteStr,\n secondStr\n ) {\n var result = [\n untruncateYear(yearStr),\n defaultLocaleMonthsShort.indexOf(monthStr),\n parseInt(dayStr, 10),\n parseInt(hourStr, 10),\n parseInt(minuteStr, 10),\n ];\n\n if (secondStr) {\n result.push(parseInt(secondStr, 10));\n }\n\n return result;\n }\n\n function untruncateYear(yearStr) {\n var year = parseInt(yearStr, 10);\n if (year <= 49) {\n return 2000 + year;\n } else if (year <= 999) {\n return 1900 + year;\n }\n return year;\n }\n\n function preprocessRFC2822(s) {\n // Remove comments and folding whitespace and replace multiple-spaces with a single space\n return s\n .replace(/\\([^()]*\\)|[\\n\\t]/g, ' ')\n .replace(/(\\s\\s+)/g, ' ')\n .replace(/^\\s\\s*/, '')\n .replace(/\\s\\s*$/, '');\n }\n\n function checkWeekday(weekdayStr, parsedInput, config) {\n if (weekdayStr) {\n // TODO: Replace the vanilla JS Date object with an independent day-of-week check.\n var weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr),\n weekdayActual = new Date(\n parsedInput[0],\n parsedInput[1],\n parsedInput[2]\n ).getDay();\n if (weekdayProvided !== weekdayActual) {\n getParsingFlags(config).weekdayMismatch = true;\n config._isValid = false;\n return false;\n }\n }\n return true;\n }\n\n function calculateOffset(obsOffset, militaryOffset, numOffset) {\n if (obsOffset) {\n return obsOffsets[obsOffset];\n } else if (militaryOffset) {\n // the only allowed military tz is Z\n return 0;\n } else {\n var hm = parseInt(numOffset, 10),\n m = hm % 100,\n h = (hm - m) / 100;\n return h * 60 + m;\n }\n }\n\n // date and time from ref 2822 format\n function configFromRFC2822(config) {\n var match = rfc2822.exec(preprocessRFC2822(config._i)),\n parsedArray;\n if (match) {\n parsedArray = extractFromRFC2822Strings(\n match[4],\n match[3],\n match[2],\n match[5],\n match[6],\n match[7]\n );\n if (!checkWeekday(match[1], parsedArray, config)) {\n return;\n }\n\n config._a = parsedArray;\n config._tzm = calculateOffset(match[8], match[9], match[10]);\n\n config._d = createUTCDate.apply(null, config._a);\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n\n getParsingFlags(config).rfc2822 = true;\n } else {\n config._isValid = false;\n }\n }\n\n // date from 1) ASP.NET, 2) ISO, 3) RFC 2822 formats, or 4) optional fallback if parsing isn't strict\n function configFromString(config) {\n var matched = aspNetJsonRegex.exec(config._i);\n if (matched !== null) {\n config._d = new Date(+matched[1]);\n return;\n }\n\n configFromISO(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n configFromRFC2822(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n if (config._strict) {\n config._isValid = false;\n } else {\n // Final attempt, use Input Fallback\n hooks.createFromInputFallback(config);\n }\n }\n\n hooks.createFromInputFallback = deprecate(\n 'value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' +\n 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' +\n 'discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.',\n function (config) {\n config._d = new Date(config._i + (config._useUTC ? ' UTC' : ''));\n }\n );\n\n // Pick the first defined of two or three arguments.\n function defaults(a, b, c) {\n if (a != null) {\n return a;\n }\n if (b != null) {\n return b;\n }\n return c;\n }\n\n function currentDateArray(config) {\n // hooks is actually the exported moment object\n var nowValue = new Date(hooks.now());\n if (config._useUTC) {\n return [\n nowValue.getUTCFullYear(),\n nowValue.getUTCMonth(),\n nowValue.getUTCDate(),\n ];\n }\n return [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()];\n }\n\n // convert an array to a date.\n // the array should mirror the parameters below\n // note: all values past the year are optional and will default to the lowest possible value.\n // [year, month, day , hour, minute, second, millisecond]\n function configFromArray(config) {\n var i,\n date,\n input = [],\n currentDate,\n expectedWeekday,\n yearToUse;\n\n if (config._d) {\n return;\n }\n\n currentDate = currentDateArray(config);\n\n //compute day of the year from weeks and weekdays\n if (config._w && config._a[DATE] == null && config._a[MONTH] == null) {\n dayOfYearFromWeekInfo(config);\n }\n\n //if the day of the year is set, figure out what it is\n if (config._dayOfYear != null) {\n yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);\n\n if (\n config._dayOfYear > daysInYear(yearToUse) ||\n config._dayOfYear === 0\n ) {\n getParsingFlags(config)._overflowDayOfYear = true;\n }\n\n date = createUTCDate(yearToUse, 0, config._dayOfYear);\n config._a[MONTH] = date.getUTCMonth();\n config._a[DATE] = date.getUTCDate();\n }\n\n // Default to current date.\n // * if no year, month, day of month are given, default to today\n // * if day of month is given, default month and year\n // * if month is given, default only year\n // * if year is given, don't default anything\n for (i = 0; i < 3 && config._a[i] == null; ++i) {\n config._a[i] = input[i] = currentDate[i];\n }\n\n // Zero out whatever was not defaulted, including time\n for (; i < 7; i++) {\n config._a[i] = input[i] =\n config._a[i] == null ? (i === 2 ? 1 : 0) : config._a[i];\n }\n\n // Check for 24:00:00.000\n if (\n config._a[HOUR] === 24 &&\n config._a[MINUTE] === 0 &&\n config._a[SECOND] === 0 &&\n config._a[MILLISECOND] === 0\n ) {\n config._nextDay = true;\n config._a[HOUR] = 0;\n }\n\n config._d = (config._useUTC ? createUTCDate : createDate).apply(\n null,\n input\n );\n expectedWeekday = config._useUTC\n ? config._d.getUTCDay()\n : config._d.getDay();\n\n // Apply timezone offset from input. The actual utcOffset can be changed\n // with parseZone.\n if (config._tzm != null) {\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n }\n\n if (config._nextDay) {\n config._a[HOUR] = 24;\n }\n\n // check for mismatching day of week\n if (\n config._w &&\n typeof config._w.d !== 'undefined' &&\n config._w.d !== expectedWeekday\n ) {\n getParsingFlags(config).weekdayMismatch = true;\n }\n }\n\n function dayOfYearFromWeekInfo(config) {\n var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow, curWeek;\n\n w = config._w;\n if (w.GG != null || w.W != null || w.E != null) {\n dow = 1;\n doy = 4;\n\n // TODO: We need to take the current isoWeekYear, but that depends on\n // how we interpret now (local, utc, fixed offset). So create\n // a now version of current config (take local/utc/offset flags, and\n // create now).\n weekYear = defaults(\n w.GG,\n config._a[YEAR],\n weekOfYear(createLocal(), 1, 4).year\n );\n week = defaults(w.W, 1);\n weekday = defaults(w.E, 1);\n if (weekday < 1 || weekday > 7) {\n weekdayOverflow = true;\n }\n } else {\n dow = config._locale._week.dow;\n doy = config._locale._week.doy;\n\n curWeek = weekOfYear(createLocal(), dow, doy);\n\n weekYear = defaults(w.gg, config._a[YEAR], curWeek.year);\n\n // Default to current week.\n week = defaults(w.w, curWeek.week);\n\n if (w.d != null) {\n // weekday -- low day numbers are considered next week\n weekday = w.d;\n if (weekday < 0 || weekday > 6) {\n weekdayOverflow = true;\n }\n } else if (w.e != null) {\n // local weekday -- counting starts from beginning of week\n weekday = w.e + dow;\n if (w.e < 0 || w.e > 6) {\n weekdayOverflow = true;\n }\n } else {\n // default to beginning of week\n weekday = dow;\n }\n }\n if (week < 1 || week > weeksInYear(weekYear, dow, doy)) {\n getParsingFlags(config)._overflowWeeks = true;\n } else if (weekdayOverflow != null) {\n getParsingFlags(config)._overflowWeekday = true;\n } else {\n temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy);\n config._a[YEAR] = temp.year;\n config._dayOfYear = temp.dayOfYear;\n }\n }\n\n // constant that refers to the ISO standard\n hooks.ISO_8601 = function () {};\n\n // constant that refers to the RFC 2822 form\n hooks.RFC_2822 = function () {};\n\n // date from string and format string\n function configFromStringAndFormat(config) {\n // TODO: Move this to another part of the creation flow to prevent circular deps\n if (config._f === hooks.ISO_8601) {\n configFromISO(config);\n return;\n }\n if (config._f === hooks.RFC_2822) {\n configFromRFC2822(config);\n return;\n }\n config._a = [];\n getParsingFlags(config).empty = true;\n\n // This array is used to make a Date, either with `new Date` or `Date.UTC`\n var string = '' + config._i,\n i,\n parsedInput,\n tokens,\n token,\n skipped,\n stringLength = string.length,\n totalParsedInputLength = 0,\n era,\n tokenLen;\n\n tokens =\n expandFormat(config._f, config._locale).match(formattingTokens) || [];\n tokenLen = tokens.length;\n for (i = 0; i < tokenLen; i++) {\n token = tokens[i];\n parsedInput = (string.match(getParseRegexForToken(token, config)) ||\n [])[0];\n if (parsedInput) {\n skipped = string.substr(0, string.indexOf(parsedInput));\n if (skipped.length > 0) {\n getParsingFlags(config).unusedInput.push(skipped);\n }\n string = string.slice(\n string.indexOf(parsedInput) + parsedInput.length\n );\n totalParsedInputLength += parsedInput.length;\n }\n // don't parse if it's not a known token\n if (formatTokenFunctions[token]) {\n if (parsedInput) {\n getParsingFlags(config).empty = false;\n } else {\n getParsingFlags(config).unusedTokens.push(token);\n }\n addTimeToArrayFromToken(token, parsedInput, config);\n } else if (config._strict && !parsedInput) {\n getParsingFlags(config).unusedTokens.push(token);\n }\n }\n\n // add remaining unparsed input length to the string\n getParsingFlags(config).charsLeftOver =\n stringLength - totalParsedInputLength;\n if (string.length > 0) {\n getParsingFlags(config).unusedInput.push(string);\n }\n\n // clear _12h flag if hour is <= 12\n if (\n config._a[HOUR] <= 12 &&\n getParsingFlags(config).bigHour === true &&\n config._a[HOUR] > 0\n ) {\n getParsingFlags(config).bigHour = undefined;\n }\n\n getParsingFlags(config).parsedDateParts = config._a.slice(0);\n getParsingFlags(config).meridiem = config._meridiem;\n // handle meridiem\n config._a[HOUR] = meridiemFixWrap(\n config._locale,\n config._a[HOUR],\n config._meridiem\n );\n\n // handle era\n era = getParsingFlags(config).era;\n if (era !== null) {\n config._a[YEAR] = config._locale.erasConvertYear(era, config._a[YEAR]);\n }\n\n configFromArray(config);\n checkOverflow(config);\n }\n\n function meridiemFixWrap(locale, hour, meridiem) {\n var isPm;\n\n if (meridiem == null) {\n // nothing to do\n return hour;\n }\n if (locale.meridiemHour != null) {\n return locale.meridiemHour(hour, meridiem);\n } else if (locale.isPM != null) {\n // Fallback\n isPm = locale.isPM(meridiem);\n if (isPm && hour < 12) {\n hour += 12;\n }\n if (!isPm && hour === 12) {\n hour = 0;\n }\n return hour;\n } else {\n // this is not supposed to happen\n return hour;\n }\n }\n\n // date from string and array of format strings\n function configFromStringAndArray(config) {\n var tempConfig,\n bestMoment,\n scoreToBeat,\n i,\n currentScore,\n validFormatFound,\n bestFormatIsValid = false,\n configfLen = config._f.length;\n\n if (configfLen === 0) {\n getParsingFlags(config).invalidFormat = true;\n config._d = new Date(NaN);\n return;\n }\n\n for (i = 0; i < configfLen; i++) {\n currentScore = 0;\n validFormatFound = false;\n tempConfig = copyConfig({}, config);\n if (config._useUTC != null) {\n tempConfig._useUTC = config._useUTC;\n }\n tempConfig._f = config._f[i];\n configFromStringAndFormat(tempConfig);\n\n if (isValid(tempConfig)) {\n validFormatFound = true;\n }\n\n // if there is any input that was not parsed add a penalty for that format\n currentScore += getParsingFlags(tempConfig).charsLeftOver;\n\n //or tokens\n currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;\n\n getParsingFlags(tempConfig).score = currentScore;\n\n if (!bestFormatIsValid) {\n if (\n scoreToBeat == null ||\n currentScore < scoreToBeat ||\n validFormatFound\n ) {\n scoreToBeat = currentScore;\n bestMoment = tempConfig;\n if (validFormatFound) {\n bestFormatIsValid = true;\n }\n }\n } else {\n if (currentScore < scoreToBeat) {\n scoreToBeat = currentScore;\n bestMoment = tempConfig;\n }\n }\n }\n\n extend(config, bestMoment || tempConfig);\n }\n\n function configFromObject(config) {\n if (config._d) {\n return;\n }\n\n var i = normalizeObjectUnits(config._i),\n dayOrDate = i.day === undefined ? i.date : i.day;\n config._a = map(\n [i.year, i.month, dayOrDate, i.hour, i.minute, i.second, i.millisecond],\n function (obj) {\n return obj && parseInt(obj, 10);\n }\n );\n\n configFromArray(config);\n }\n\n function createFromConfig(config) {\n var res = new Moment(checkOverflow(prepareConfig(config)));\n if (res._nextDay) {\n // Adding is smart enough around DST\n res.add(1, 'd');\n res._nextDay = undefined;\n }\n\n return res;\n }\n\n function prepareConfig(config) {\n var input = config._i,\n format = config._f;\n\n config._locale = config._locale || getLocale(config._l);\n\n if (input === null || (format === undefined && input === '')) {\n return createInvalid({ nullInput: true });\n }\n\n if (typeof input === 'string') {\n config._i = input = config._locale.preparse(input);\n }\n\n if (isMoment(input)) {\n return new Moment(checkOverflow(input));\n } else if (isDate(input)) {\n config._d = input;\n } else if (isArray(format)) {\n configFromStringAndArray(config);\n } else if (format) {\n configFromStringAndFormat(config);\n } else {\n configFromInput(config);\n }\n\n if (!isValid(config)) {\n config._d = null;\n }\n\n return config;\n }\n\n function configFromInput(config) {\n var input = config._i;\n if (isUndefined(input)) {\n config._d = new Date(hooks.now());\n } else if (isDate(input)) {\n config._d = new Date(input.valueOf());\n } else if (typeof input === 'string') {\n configFromString(config);\n } else if (isArray(input)) {\n config._a = map(input.slice(0), function (obj) {\n return parseInt(obj, 10);\n });\n configFromArray(config);\n } else if (isObject(input)) {\n configFromObject(config);\n } else if (isNumber(input)) {\n // from milliseconds\n config._d = new Date(input);\n } else {\n hooks.createFromInputFallback(config);\n }\n }\n\n function createLocalOrUTC(input, format, locale, strict, isUTC) {\n var c = {};\n\n if (format === true || format === false) {\n strict = format;\n format = undefined;\n }\n\n if (locale === true || locale === false) {\n strict = locale;\n locale = undefined;\n }\n\n if (\n (isObject(input) && isObjectEmpty(input)) ||\n (isArray(input) && input.length === 0)\n ) {\n input = undefined;\n }\n // object construction must be done this way.\n // https://github.com/moment/moment/issues/1423\n c._isAMomentObject = true;\n c._useUTC = c._isUTC = isUTC;\n c._l = locale;\n c._i = input;\n c._f = format;\n c._strict = strict;\n\n return createFromConfig(c);\n }\n\n function createLocal(input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, false);\n }\n\n var prototypeMin = deprecate(\n 'moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other < this ? this : other;\n } else {\n return createInvalid();\n }\n }\n ),\n prototypeMax = deprecate(\n 'moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other > this ? this : other;\n } else {\n return createInvalid();\n }\n }\n );\n\n // Pick a moment m from moments so that m[fn](other) is true for all\n // other. This relies on the function fn to be transitive.\n //\n // moments should either be an array of moment objects or an array, whose\n // first element is an array of moment objects.\n function pickBy(fn, moments) {\n var res, i;\n if (moments.length === 1 && isArray(moments[0])) {\n moments = moments[0];\n }\n if (!moments.length) {\n return createLocal();\n }\n res = moments[0];\n for (i = 1; i < moments.length; ++i) {\n if (!moments[i].isValid() || moments[i][fn](res)) {\n res = moments[i];\n }\n }\n return res;\n }\n\n // TODO: Use [].sort instead?\n function min() {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isBefore', args);\n }\n\n function max() {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isAfter', args);\n }\n\n var now = function () {\n return Date.now ? Date.now() : +new Date();\n };\n\n var ordering = [\n 'year',\n 'quarter',\n 'month',\n 'week',\n 'day',\n 'hour',\n 'minute',\n 'second',\n 'millisecond',\n ];\n\n function isDurationValid(m) {\n var key,\n unitHasDecimal = false,\n i,\n orderLen = ordering.length;\n for (key in m) {\n if (\n hasOwnProp(m, key) &&\n !(\n indexOf.call(ordering, key) !== -1 &&\n (m[key] == null || !isNaN(m[key]))\n )\n ) {\n return false;\n }\n }\n\n for (i = 0; i < orderLen; ++i) {\n if (m[ordering[i]]) {\n if (unitHasDecimal) {\n return false; // only allow non-integers for smallest unit\n }\n if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) {\n unitHasDecimal = true;\n }\n }\n }\n\n return true;\n }\n\n function isValid$1() {\n return this._isValid;\n }\n\n function createInvalid$1() {\n return createDuration(NaN);\n }\n\n function Duration(duration) {\n var normalizedInput = normalizeObjectUnits(duration),\n years = normalizedInput.year || 0,\n quarters = normalizedInput.quarter || 0,\n months = normalizedInput.month || 0,\n weeks = normalizedInput.week || normalizedInput.isoWeek || 0,\n days = normalizedInput.day || 0,\n hours = normalizedInput.hour || 0,\n minutes = normalizedInput.minute || 0,\n seconds = normalizedInput.second || 0,\n milliseconds = normalizedInput.millisecond || 0;\n\n this._isValid = isDurationValid(normalizedInput);\n\n // representation for dateAddRemove\n this._milliseconds =\n +milliseconds +\n seconds * 1e3 + // 1000\n minutes * 6e4 + // 1000 * 60\n hours * 1000 * 60 * 60; //using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978\n // Because of dateAddRemove treats 24 hours as different from a\n // day when working around DST, we need to store them separately\n this._days = +days + weeks * 7;\n // It is impossible to translate months into days without knowing\n // which months you are are talking about, so we have to store\n // it separately.\n this._months = +months + quarters * 3 + years * 12;\n\n this._data = {};\n\n this._locale = getLocale();\n\n this._bubble();\n }\n\n function isDuration(obj) {\n return obj instanceof Duration;\n }\n\n function absRound(number) {\n if (number < 0) {\n return Math.round(-1 * number) * -1;\n } else {\n return Math.round(number);\n }\n }\n\n // compare two arrays, return the number of differences\n function compareArrays(array1, array2, dontConvert) {\n var len = Math.min(array1.length, array2.length),\n lengthDiff = Math.abs(array1.length - array2.length),\n diffs = 0,\n i;\n for (i = 0; i < len; i++) {\n if (\n (dontConvert && array1[i] !== array2[i]) ||\n (!dontConvert && toInt(array1[i]) !== toInt(array2[i]))\n ) {\n diffs++;\n }\n }\n return diffs + lengthDiff;\n }\n\n // FORMATTING\n\n function offset(token, separator) {\n addFormatToken(token, 0, 0, function () {\n var offset = this.utcOffset(),\n sign = '+';\n if (offset < 0) {\n offset = -offset;\n sign = '-';\n }\n return (\n sign +\n zeroFill(~~(offset / 60), 2) +\n separator +\n zeroFill(~~offset % 60, 2)\n );\n });\n }\n\n offset('Z', ':');\n offset('ZZ', '');\n\n // PARSING\n\n addRegexToken('Z', matchShortOffset);\n addRegexToken('ZZ', matchShortOffset);\n addParseToken(['Z', 'ZZ'], function (input, array, config) {\n config._useUTC = true;\n config._tzm = offsetFromString(matchShortOffset, input);\n });\n\n // HELPERS\n\n // timezone chunker\n // '+10:00' > ['10', '00']\n // '-1530' > ['-15', '30']\n var chunkOffset = /([\\+\\-]|\\d\\d)/gi;\n\n function offsetFromString(matcher, string) {\n var matches = (string || '').match(matcher),\n chunk,\n parts,\n minutes;\n\n if (matches === null) {\n return null;\n }\n\n chunk = matches[matches.length - 1] || [];\n parts = (chunk + '').match(chunkOffset) || ['-', 0, 0];\n minutes = +(parts[1] * 60) + toInt(parts[2]);\n\n return minutes === 0 ? 0 : parts[0] === '+' ? minutes : -minutes;\n }\n\n // Return a moment from input, that is local/utc/zone equivalent to model.\n function cloneWithOffset(input, model) {\n var res, diff;\n if (model._isUTC) {\n res = model.clone();\n diff =\n (isMoment(input) || isDate(input)\n ? input.valueOf()\n : createLocal(input).valueOf()) - res.valueOf();\n // Use low-level api, because this fn is low-level api.\n res._d.setTime(res._d.valueOf() + diff);\n hooks.updateOffset(res, false);\n return res;\n } else {\n return createLocal(input).local();\n }\n }\n\n function getDateOffset(m) {\n // On Firefox.24 Date#getTimezoneOffset returns a floating point.\n // https://github.com/moment/moment/pull/1871\n return -Math.round(m._d.getTimezoneOffset());\n }\n\n // HOOKS\n\n // This function will be called whenever a moment is mutated.\n // It is intended to keep the offset in sync with the timezone.\n hooks.updateOffset = function () {};\n\n // MOMENTS\n\n // keepLocalTime = true means only change the timezone, without\n // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->\n // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset\n // +0200, so we adjust the time as needed, to be valid.\n //\n // Keeping the time actually adds/subtracts (one hour)\n // from the actual represented time. That is why we call updateOffset\n // a second time. In case it wants us to change the offset again\n // _changeInProgress == true case, then we have to adjust, because\n // there is no such time in the given timezone.\n function getSetOffset(input, keepLocalTime, keepMinutes) {\n var offset = this._offset || 0,\n localAdjust;\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n if (input != null) {\n if (typeof input === 'string') {\n input = offsetFromString(matchShortOffset, input);\n if (input === null) {\n return this;\n }\n } else if (Math.abs(input) < 16 && !keepMinutes) {\n input = input * 60;\n }\n if (!this._isUTC && keepLocalTime) {\n localAdjust = getDateOffset(this);\n }\n this._offset = input;\n this._isUTC = true;\n if (localAdjust != null) {\n this.add(localAdjust, 'm');\n }\n if (offset !== input) {\n if (!keepLocalTime || this._changeInProgress) {\n addSubtract(\n this,\n createDuration(input - offset, 'm'),\n 1,\n false\n );\n } else if (!this._changeInProgress) {\n this._changeInProgress = true;\n hooks.updateOffset(this, true);\n this._changeInProgress = null;\n }\n }\n return this;\n } else {\n return this._isUTC ? offset : getDateOffset(this);\n }\n }\n\n function getSetZone(input, keepLocalTime) {\n if (input != null) {\n if (typeof input !== 'string') {\n input = -input;\n }\n\n this.utcOffset(input, keepLocalTime);\n\n return this;\n } else {\n return -this.utcOffset();\n }\n }\n\n function setOffsetToUTC(keepLocalTime) {\n return this.utcOffset(0, keepLocalTime);\n }\n\n function setOffsetToLocal(keepLocalTime) {\n if (this._isUTC) {\n this.utcOffset(0, keepLocalTime);\n this._isUTC = false;\n\n if (keepLocalTime) {\n this.subtract(getDateOffset(this), 'm');\n }\n }\n return this;\n }\n\n function setOffsetToParsedOffset() {\n if (this._tzm != null) {\n this.utcOffset(this._tzm, false, true);\n } else if (typeof this._i === 'string') {\n var tZone = offsetFromString(matchOffset, this._i);\n if (tZone != null) {\n this.utcOffset(tZone);\n } else {\n this.utcOffset(0, true);\n }\n }\n return this;\n }\n\n function hasAlignedHourOffset(input) {\n if (!this.isValid()) {\n return false;\n }\n input = input ? createLocal(input).utcOffset() : 0;\n\n return (this.utcOffset() - input) % 60 === 0;\n }\n\n function isDaylightSavingTime() {\n return (\n this.utcOffset() > this.clone().month(0).utcOffset() ||\n this.utcOffset() > this.clone().month(5).utcOffset()\n );\n }\n\n function isDaylightSavingTimeShifted() {\n if (!isUndefined(this._isDSTShifted)) {\n return this._isDSTShifted;\n }\n\n var c = {},\n other;\n\n copyConfig(c, this);\n c = prepareConfig(c);\n\n if (c._a) {\n other = c._isUTC ? createUTC(c._a) : createLocal(c._a);\n this._isDSTShifted =\n this.isValid() && compareArrays(c._a, other.toArray()) > 0;\n } else {\n this._isDSTShifted = false;\n }\n\n return this._isDSTShifted;\n }\n\n function isLocal() {\n return this.isValid() ? !this._isUTC : false;\n }\n\n function isUtcOffset() {\n return this.isValid() ? this._isUTC : false;\n }\n\n function isUtc() {\n return this.isValid() ? this._isUTC && this._offset === 0 : false;\n }\n\n // ASP.NET json date format regex\n var aspNetRegex = /^(-|\\+)?(?:(\\d*)[. ])?(\\d+):(\\d+)(?::(\\d+)(\\.\\d*)?)?$/,\n // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html\n // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere\n // and further modified to allow for strings containing both week and day\n isoRegex =\n /^(-|\\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;\n\n function createDuration(input, key) {\n var duration = input,\n // matching against regexp is expensive, do it on demand\n match = null,\n sign,\n ret,\n diffRes;\n\n if (isDuration(input)) {\n duration = {\n ms: input._milliseconds,\n d: input._days,\n M: input._months,\n };\n } else if (isNumber(input) || !isNaN(+input)) {\n duration = {};\n if (key) {\n duration[key] = +input;\n } else {\n duration.milliseconds = +input;\n }\n } else if ((match = aspNetRegex.exec(input))) {\n sign = match[1] === '-' ? -1 : 1;\n duration = {\n y: 0,\n d: toInt(match[DATE]) * sign,\n h: toInt(match[HOUR]) * sign,\n m: toInt(match[MINUTE]) * sign,\n s: toInt(match[SECOND]) * sign,\n ms: toInt(absRound(match[MILLISECOND] * 1000)) * sign, // the millisecond decimal point is included in the match\n };\n } else if ((match = isoRegex.exec(input))) {\n sign = match[1] === '-' ? -1 : 1;\n duration = {\n y: parseIso(match[2], sign),\n M: parseIso(match[3], sign),\n w: parseIso(match[4], sign),\n d: parseIso(match[5], sign),\n h: parseIso(match[6], sign),\n m: parseIso(match[7], sign),\n s: parseIso(match[8], sign),\n };\n } else if (duration == null) {\n // checks for null or undefined\n duration = {};\n } else if (\n typeof duration === 'object' &&\n ('from' in duration || 'to' in duration)\n ) {\n diffRes = momentsDifference(\n createLocal(duration.from),\n createLocal(duration.to)\n );\n\n duration = {};\n duration.ms = diffRes.milliseconds;\n duration.M = diffRes.months;\n }\n\n ret = new Duration(duration);\n\n if (isDuration(input) && hasOwnProp(input, '_locale')) {\n ret._locale = input._locale;\n }\n\n if (isDuration(input) && hasOwnProp(input, '_isValid')) {\n ret._isValid = input._isValid;\n }\n\n return ret;\n }\n\n createDuration.fn = Duration.prototype;\n createDuration.invalid = createInvalid$1;\n\n function parseIso(inp, sign) {\n // We'd normally use ~~inp for this, but unfortunately it also\n // converts floats to ints.\n // inp may be undefined, so careful calling replace on it.\n var res = inp && parseFloat(inp.replace(',', '.'));\n // apply sign while we're at it\n return (isNaN(res) ? 0 : res) * sign;\n }\n\n function positiveMomentsDifference(base, other) {\n var res = {};\n\n res.months =\n other.month() - base.month() + (other.year() - base.year()) * 12;\n if (base.clone().add(res.months, 'M').isAfter(other)) {\n --res.months;\n }\n\n res.milliseconds = +other - +base.clone().add(res.months, 'M');\n\n return res;\n }\n\n function momentsDifference(base, other) {\n var res;\n if (!(base.isValid() && other.isValid())) {\n return { milliseconds: 0, months: 0 };\n }\n\n other = cloneWithOffset(other, base);\n if (base.isBefore(other)) {\n res = positiveMomentsDifference(base, other);\n } else {\n res = positiveMomentsDifference(other, base);\n res.milliseconds = -res.milliseconds;\n res.months = -res.months;\n }\n\n return res;\n }\n\n // TODO: remove 'name' arg after deprecation is removed\n function createAdder(direction, name) {\n return function (val, period) {\n var dur, tmp;\n //invert the arguments, but complain about it\n if (period !== null && !isNaN(+period)) {\n deprecateSimple(\n name,\n 'moment().' +\n name +\n '(period, number) is deprecated. Please use moment().' +\n name +\n '(number, period). ' +\n 'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.'\n );\n tmp = val;\n val = period;\n period = tmp;\n }\n\n dur = createDuration(val, period);\n addSubtract(this, dur, direction);\n return this;\n };\n }\n\n function addSubtract(mom, duration, isAdding, updateOffset) {\n var milliseconds = duration._milliseconds,\n days = absRound(duration._days),\n months = absRound(duration._months);\n\n if (!mom.isValid()) {\n // No op\n return;\n }\n\n updateOffset = updateOffset == null ? true : updateOffset;\n\n if (months) {\n setMonth(mom, get(mom, 'Month') + months * isAdding);\n }\n if (days) {\n set$1(mom, 'Date', get(mom, 'Date') + days * isAdding);\n }\n if (milliseconds) {\n mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding);\n }\n if (updateOffset) {\n hooks.updateOffset(mom, days || months);\n }\n }\n\n var add = createAdder(1, 'add'),\n subtract = createAdder(-1, 'subtract');\n\n function isString(input) {\n return typeof input === 'string' || input instanceof String;\n }\n\n // type MomentInput = Moment | Date | string | number | (number | string)[] | MomentInputObject | void; // null | undefined\n function isMomentInput(input) {\n return (\n isMoment(input) ||\n isDate(input) ||\n isString(input) ||\n isNumber(input) ||\n isNumberOrStringArray(input) ||\n isMomentInputObject(input) ||\n input === null ||\n input === undefined\n );\n }\n\n function isMomentInputObject(input) {\n var objectTest = isObject(input) && !isObjectEmpty(input),\n propertyTest = false,\n properties = [\n 'years',\n 'year',\n 'y',\n 'months',\n 'month',\n 'M',\n 'days',\n 'day',\n 'd',\n 'dates',\n 'date',\n 'D',\n 'hours',\n 'hour',\n 'h',\n 'minutes',\n 'minute',\n 'm',\n 'seconds',\n 'second',\n 's',\n 'milliseconds',\n 'millisecond',\n 'ms',\n ],\n i,\n property,\n propertyLen = properties.length;\n\n for (i = 0; i < propertyLen; i += 1) {\n property = properties[i];\n propertyTest = propertyTest || hasOwnProp(input, property);\n }\n\n return objectTest && propertyTest;\n }\n\n function isNumberOrStringArray(input) {\n var arrayTest = isArray(input),\n dataTypeTest = false;\n if (arrayTest) {\n dataTypeTest =\n input.filter(function (item) {\n return !isNumber(item) && isString(input);\n }).length === 0;\n }\n return arrayTest && dataTypeTest;\n }\n\n function isCalendarSpec(input) {\n var objectTest = isObject(input) && !isObjectEmpty(input),\n propertyTest = false,\n properties = [\n 'sameDay',\n 'nextDay',\n 'lastDay',\n 'nextWeek',\n 'lastWeek',\n 'sameElse',\n ],\n i,\n property;\n\n for (i = 0; i < properties.length; i += 1) {\n property = properties[i];\n propertyTest = propertyTest || hasOwnProp(input, property);\n }\n\n return objectTest && propertyTest;\n }\n\n function getCalendarFormat(myMoment, now) {\n var diff = myMoment.diff(now, 'days', true);\n return diff < -6\n ? 'sameElse'\n : diff < -1\n ? 'lastWeek'\n : diff < 0\n ? 'lastDay'\n : diff < 1\n ? 'sameDay'\n : diff < 2\n ? 'nextDay'\n : diff < 7\n ? 'nextWeek'\n : 'sameElse';\n }\n\n function calendar$1(time, formats) {\n // Support for single parameter, formats only overload to the calendar function\n if (arguments.length === 1) {\n if (!arguments[0]) {\n time = undefined;\n formats = undefined;\n } else if (isMomentInput(arguments[0])) {\n time = arguments[0];\n formats = undefined;\n } else if (isCalendarSpec(arguments[0])) {\n formats = arguments[0];\n time = undefined;\n }\n }\n // We want to compare the start of today, vs this.\n // Getting start-of-today depends on whether we're local/utc/offset or not.\n var now = time || createLocal(),\n sod = cloneWithOffset(now, this).startOf('day'),\n format = hooks.calendarFormat(this, sod) || 'sameElse',\n output =\n formats &&\n (isFunction(formats[format])\n ? formats[format].call(this, now)\n : formats[format]);\n\n return this.format(\n output || this.localeData().calendar(format, this, createLocal(now))\n );\n }\n\n function clone() {\n return new Moment(this);\n }\n\n function isAfter(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() > localInput.valueOf();\n } else {\n return localInput.valueOf() < this.clone().startOf(units).valueOf();\n }\n }\n\n function isBefore(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() < localInput.valueOf();\n } else {\n return this.clone().endOf(units).valueOf() < localInput.valueOf();\n }\n }\n\n function isBetween(from, to, units, inclusivity) {\n var localFrom = isMoment(from) ? from : createLocal(from),\n localTo = isMoment(to) ? to : createLocal(to);\n if (!(this.isValid() && localFrom.isValid() && localTo.isValid())) {\n return false;\n }\n inclusivity = inclusivity || '()';\n return (\n (inclusivity[0] === '('\n ? this.isAfter(localFrom, units)\n : !this.isBefore(localFrom, units)) &&\n (inclusivity[1] === ')'\n ? this.isBefore(localTo, units)\n : !this.isAfter(localTo, units))\n );\n }\n\n function isSame(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input),\n inputMs;\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() === localInput.valueOf();\n } else {\n inputMs = localInput.valueOf();\n return (\n this.clone().startOf(units).valueOf() <= inputMs &&\n inputMs <= this.clone().endOf(units).valueOf()\n );\n }\n }\n\n function isSameOrAfter(input, units) {\n return this.isSame(input, units) || this.isAfter(input, units);\n }\n\n function isSameOrBefore(input, units) {\n return this.isSame(input, units) || this.isBefore(input, units);\n }\n\n function diff(input, units, asFloat) {\n var that, zoneDelta, output;\n\n if (!this.isValid()) {\n return NaN;\n }\n\n that = cloneWithOffset(input, this);\n\n if (!that.isValid()) {\n return NaN;\n }\n\n zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4;\n\n units = normalizeUnits(units);\n\n switch (units) {\n case 'year':\n output = monthDiff(this, that) / 12;\n break;\n case 'month':\n output = monthDiff(this, that);\n break;\n case 'quarter':\n output = monthDiff(this, that) / 3;\n break;\n case 'second':\n output = (this - that) / 1e3;\n break; // 1000\n case 'minute':\n output = (this - that) / 6e4;\n break; // 1000 * 60\n case 'hour':\n output = (this - that) / 36e5;\n break; // 1000 * 60 * 60\n case 'day':\n output = (this - that - zoneDelta) / 864e5;\n break; // 1000 * 60 * 60 * 24, negate dst\n case 'week':\n output = (this - that - zoneDelta) / 6048e5;\n break; // 1000 * 60 * 60 * 24 * 7, negate dst\n default:\n output = this - that;\n }\n\n return asFloat ? output : absFloor(output);\n }\n\n function monthDiff(a, b) {\n if (a.date() < b.date()) {\n // end-of-month calculations work correct when the start month has more\n // days than the end month.\n return -monthDiff(b, a);\n }\n // difference in months\n var wholeMonthDiff = (b.year() - a.year()) * 12 + (b.month() - a.month()),\n // b is in (anchor - 1 month, anchor + 1 month)\n anchor = a.clone().add(wholeMonthDiff, 'months'),\n anchor2,\n adjust;\n\n if (b - anchor < 0) {\n anchor2 = a.clone().add(wholeMonthDiff - 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor - anchor2);\n } else {\n anchor2 = a.clone().add(wholeMonthDiff + 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor2 - anchor);\n }\n\n //check for negative zero, return zero if negative zero\n return -(wholeMonthDiff + adjust) || 0;\n }\n\n hooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ';\n hooks.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]';\n\n function toString() {\n return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');\n }\n\n function toISOString(keepOffset) {\n if (!this.isValid()) {\n return null;\n }\n var utc = keepOffset !== true,\n m = utc ? this.clone().utc() : this;\n if (m.year() < 0 || m.year() > 9999) {\n return formatMoment(\n m,\n utc\n ? 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]'\n : 'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ'\n );\n }\n if (isFunction(Date.prototype.toISOString)) {\n // native implementation is ~50x faster, use it when we can\n if (utc) {\n return this.toDate().toISOString();\n } else {\n return new Date(this.valueOf() + this.utcOffset() * 60 * 1000)\n .toISOString()\n .replace('Z', formatMoment(m, 'Z'));\n }\n }\n return formatMoment(\n m,\n utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ'\n );\n }\n\n /**\n * Return a human readable representation of a moment that can\n * also be evaluated to get a new moment which is the same\n *\n * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects\n */\n function inspect() {\n if (!this.isValid()) {\n return 'moment.invalid(/* ' + this._i + ' */)';\n }\n var func = 'moment',\n zone = '',\n prefix,\n year,\n datetime,\n suffix;\n if (!this.isLocal()) {\n func = this.utcOffset() === 0 ? 'moment.utc' : 'moment.parseZone';\n zone = 'Z';\n }\n prefix = '[' + func + '(\"]';\n year = 0 <= this.year() && this.year() <= 9999 ? 'YYYY' : 'YYYYYY';\n datetime = '-MM-DD[T]HH:mm:ss.SSS';\n suffix = zone + '[\")]';\n\n return this.format(prefix + year + datetime + suffix);\n }\n\n function format(inputString) {\n if (!inputString) {\n inputString = this.isUtc()\n ? hooks.defaultFormatUtc\n : hooks.defaultFormat;\n }\n var output = formatMoment(this, inputString);\n return this.localeData().postformat(output);\n }\n\n function from(time, withoutSuffix) {\n if (\n this.isValid() &&\n ((isMoment(time) && time.isValid()) || createLocal(time).isValid())\n ) {\n return createDuration({ to: this, from: time })\n .locale(this.locale())\n .humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n }\n\n function fromNow(withoutSuffix) {\n return this.from(createLocal(), withoutSuffix);\n }\n\n function to(time, withoutSuffix) {\n if (\n this.isValid() &&\n ((isMoment(time) && time.isValid()) || createLocal(time).isValid())\n ) {\n return createDuration({ from: this, to: time })\n .locale(this.locale())\n .humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n }\n\n function toNow(withoutSuffix) {\n return this.to(createLocal(), withoutSuffix);\n }\n\n // If passed a locale key, it will set the locale for this\n // instance. Otherwise, it will return the locale configuration\n // variables for this instance.\n function locale(key) {\n var newLocaleData;\n\n if (key === undefined) {\n return this._locale._abbr;\n } else {\n newLocaleData = getLocale(key);\n if (newLocaleData != null) {\n this._locale = newLocaleData;\n }\n return this;\n }\n }\n\n var lang = deprecate(\n 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.',\n function (key) {\n if (key === undefined) {\n return this.localeData();\n } else {\n return this.locale(key);\n }\n }\n );\n\n function localeData() {\n return this._locale;\n }\n\n var MS_PER_SECOND = 1000,\n MS_PER_MINUTE = 60 * MS_PER_SECOND,\n MS_PER_HOUR = 60 * MS_PER_MINUTE,\n MS_PER_400_YEARS = (365 * 400 + 97) * 24 * MS_PER_HOUR;\n\n // actual modulo - handles negative numbers (for dates before 1970):\n function mod$1(dividend, divisor) {\n return ((dividend % divisor) + divisor) % divisor;\n }\n\n function localStartOfDate(y, m, d) {\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return new Date(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return new Date(y, m, d).valueOf();\n }\n }\n\n function utcStartOfDate(y, m, d) {\n // Date.UTC remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return Date.UTC(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return Date.UTC(y, m, d);\n }\n }\n\n function startOf(units) {\n var time, startOfDate;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year(), 0, 1);\n break;\n case 'quarter':\n time = startOfDate(\n this.year(),\n this.month() - (this.month() % 3),\n 1\n );\n break;\n case 'month':\n time = startOfDate(this.year(), this.month(), 1);\n break;\n case 'week':\n time = startOfDate(\n this.year(),\n this.month(),\n this.date() - this.weekday()\n );\n break;\n case 'isoWeek':\n time = startOfDate(\n this.year(),\n this.month(),\n this.date() - (this.isoWeekday() - 1)\n );\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date());\n break;\n case 'hour':\n time = this._d.valueOf();\n time -= mod$1(\n time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),\n MS_PER_HOUR\n );\n break;\n case 'minute':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_MINUTE);\n break;\n case 'second':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_SECOND);\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n }\n\n function endOf(units) {\n var time, startOfDate;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year() + 1, 0, 1) - 1;\n break;\n case 'quarter':\n time =\n startOfDate(\n this.year(),\n this.month() - (this.month() % 3) + 3,\n 1\n ) - 1;\n break;\n case 'month':\n time = startOfDate(this.year(), this.month() + 1, 1) - 1;\n break;\n case 'week':\n time =\n startOfDate(\n this.year(),\n this.month(),\n this.date() - this.weekday() + 7\n ) - 1;\n break;\n case 'isoWeek':\n time =\n startOfDate(\n this.year(),\n this.month(),\n this.date() - (this.isoWeekday() - 1) + 7\n ) - 1;\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date() + 1) - 1;\n break;\n case 'hour':\n time = this._d.valueOf();\n time +=\n MS_PER_HOUR -\n mod$1(\n time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),\n MS_PER_HOUR\n ) -\n 1;\n break;\n case 'minute':\n time = this._d.valueOf();\n time += MS_PER_MINUTE - mod$1(time, MS_PER_MINUTE) - 1;\n break;\n case 'second':\n time = this._d.valueOf();\n time += MS_PER_SECOND - mod$1(time, MS_PER_SECOND) - 1;\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n }\n\n function valueOf() {\n return this._d.valueOf() - (this._offset || 0) * 60000;\n }\n\n function unix() {\n return Math.floor(this.valueOf() / 1000);\n }\n\n function toDate() {\n return new Date(this.valueOf());\n }\n\n function toArray() {\n var m = this;\n return [\n m.year(),\n m.month(),\n m.date(),\n m.hour(),\n m.minute(),\n m.second(),\n m.millisecond(),\n ];\n }\n\n function toObject() {\n var m = this;\n return {\n years: m.year(),\n months: m.month(),\n date: m.date(),\n hours: m.hours(),\n minutes: m.minutes(),\n seconds: m.seconds(),\n milliseconds: m.milliseconds(),\n };\n }\n\n function toJSON() {\n // new Date(NaN).toJSON() === null\n return this.isValid() ? this.toISOString() : null;\n }\n\n function isValid$2() {\n return isValid(this);\n }\n\n function parsingFlags() {\n return extend({}, getParsingFlags(this));\n }\n\n function invalidAt() {\n return getParsingFlags(this).overflow;\n }\n\n function creationData() {\n return {\n input: this._i,\n format: this._f,\n locale: this._locale,\n isUTC: this._isUTC,\n strict: this._strict,\n };\n }\n\n addFormatToken('N', 0, 0, 'eraAbbr');\n addFormatToken('NN', 0, 0, 'eraAbbr');\n addFormatToken('NNN', 0, 0, 'eraAbbr');\n addFormatToken('NNNN', 0, 0, 'eraName');\n addFormatToken('NNNNN', 0, 0, 'eraNarrow');\n\n addFormatToken('y', ['y', 1], 'yo', 'eraYear');\n addFormatToken('y', ['yy', 2], 0, 'eraYear');\n addFormatToken('y', ['yyy', 3], 0, 'eraYear');\n addFormatToken('y', ['yyyy', 4], 0, 'eraYear');\n\n addRegexToken('N', matchEraAbbr);\n addRegexToken('NN', matchEraAbbr);\n addRegexToken('NNN', matchEraAbbr);\n addRegexToken('NNNN', matchEraName);\n addRegexToken('NNNNN', matchEraNarrow);\n\n addParseToken(\n ['N', 'NN', 'NNN', 'NNNN', 'NNNNN'],\n function (input, array, config, token) {\n var era = config._locale.erasParse(input, token, config._strict);\n if (era) {\n getParsingFlags(config).era = era;\n } else {\n getParsingFlags(config).invalidEra = input;\n }\n }\n );\n\n addRegexToken('y', matchUnsigned);\n addRegexToken('yy', matchUnsigned);\n addRegexToken('yyy', matchUnsigned);\n addRegexToken('yyyy', matchUnsigned);\n addRegexToken('yo', matchEraYearOrdinal);\n\n addParseToken(['y', 'yy', 'yyy', 'yyyy'], YEAR);\n addParseToken(['yo'], function (input, array, config, token) {\n var match;\n if (config._locale._eraYearOrdinalRegex) {\n match = input.match(config._locale._eraYearOrdinalRegex);\n }\n\n if (config._locale.eraYearOrdinalParse) {\n array[YEAR] = config._locale.eraYearOrdinalParse(input, match);\n } else {\n array[YEAR] = parseInt(input, 10);\n }\n });\n\n function localeEras(m, format) {\n var i,\n l,\n date,\n eras = this._eras || getLocale('en')._eras;\n for (i = 0, l = eras.length; i < l; ++i) {\n switch (typeof eras[i].since) {\n case 'string':\n // truncate time\n date = hooks(eras[i].since).startOf('day');\n eras[i].since = date.valueOf();\n break;\n }\n\n switch (typeof eras[i].until) {\n case 'undefined':\n eras[i].until = +Infinity;\n break;\n case 'string':\n // truncate time\n date = hooks(eras[i].until).startOf('day').valueOf();\n eras[i].until = date.valueOf();\n break;\n }\n }\n return eras;\n }\n\n function localeErasParse(eraName, format, strict) {\n var i,\n l,\n eras = this.eras(),\n name,\n abbr,\n narrow;\n eraName = eraName.toUpperCase();\n\n for (i = 0, l = eras.length; i < l; ++i) {\n name = eras[i].name.toUpperCase();\n abbr = eras[i].abbr.toUpperCase();\n narrow = eras[i].narrow.toUpperCase();\n\n if (strict) {\n switch (format) {\n case 'N':\n case 'NN':\n case 'NNN':\n if (abbr === eraName) {\n return eras[i];\n }\n break;\n\n case 'NNNN':\n if (name === eraName) {\n return eras[i];\n }\n break;\n\n case 'NNNNN':\n if (narrow === eraName) {\n return eras[i];\n }\n break;\n }\n } else if ([name, abbr, narrow].indexOf(eraName) >= 0) {\n return eras[i];\n }\n }\n }\n\n function localeErasConvertYear(era, year) {\n var dir = era.since <= era.until ? +1 : -1;\n if (year === undefined) {\n return hooks(era.since).year();\n } else {\n return hooks(era.since).year() + (year - era.offset) * dir;\n }\n }\n\n function getEraName() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].name;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].name;\n }\n }\n\n return '';\n }\n\n function getEraNarrow() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].narrow;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].narrow;\n }\n }\n\n return '';\n }\n\n function getEraAbbr() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].abbr;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].abbr;\n }\n }\n\n return '';\n }\n\n function getEraYear() {\n var i,\n l,\n dir,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n dir = eras[i].since <= eras[i].until ? +1 : -1;\n\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (\n (eras[i].since <= val && val <= eras[i].until) ||\n (eras[i].until <= val && val <= eras[i].since)\n ) {\n return (\n (this.year() - hooks(eras[i].since).year()) * dir +\n eras[i].offset\n );\n }\n }\n\n return this.year();\n }\n\n function erasNameRegex(isStrict) {\n if (!hasOwnProp(this, '_erasNameRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasNameRegex : this._erasRegex;\n }\n\n function erasAbbrRegex(isStrict) {\n if (!hasOwnProp(this, '_erasAbbrRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasAbbrRegex : this._erasRegex;\n }\n\n function erasNarrowRegex(isStrict) {\n if (!hasOwnProp(this, '_erasNarrowRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasNarrowRegex : this._erasRegex;\n }\n\n function matchEraAbbr(isStrict, locale) {\n return locale.erasAbbrRegex(isStrict);\n }\n\n function matchEraName(isStrict, locale) {\n return locale.erasNameRegex(isStrict);\n }\n\n function matchEraNarrow(isStrict, locale) {\n return locale.erasNarrowRegex(isStrict);\n }\n\n function matchEraYearOrdinal(isStrict, locale) {\n return locale._eraYearOrdinalRegex || matchUnsigned;\n }\n\n function computeErasParse() {\n var abbrPieces = [],\n namePieces = [],\n narrowPieces = [],\n mixedPieces = [],\n i,\n l,\n eras = this.eras();\n\n for (i = 0, l = eras.length; i < l; ++i) {\n namePieces.push(regexEscape(eras[i].name));\n abbrPieces.push(regexEscape(eras[i].abbr));\n narrowPieces.push(regexEscape(eras[i].narrow));\n\n mixedPieces.push(regexEscape(eras[i].name));\n mixedPieces.push(regexEscape(eras[i].abbr));\n mixedPieces.push(regexEscape(eras[i].narrow));\n }\n\n this._erasRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._erasNameRegex = new RegExp('^(' + namePieces.join('|') + ')', 'i');\n this._erasAbbrRegex = new RegExp('^(' + abbrPieces.join('|') + ')', 'i');\n this._erasNarrowRegex = new RegExp(\n '^(' + narrowPieces.join('|') + ')',\n 'i'\n );\n }\n\n // FORMATTING\n\n addFormatToken(0, ['gg', 2], 0, function () {\n return this.weekYear() % 100;\n });\n\n addFormatToken(0, ['GG', 2], 0, function () {\n return this.isoWeekYear() % 100;\n });\n\n function addWeekYearFormatToken(token, getter) {\n addFormatToken(0, [token, token.length], 0, getter);\n }\n\n addWeekYearFormatToken('gggg', 'weekYear');\n addWeekYearFormatToken('ggggg', 'weekYear');\n addWeekYearFormatToken('GGGG', 'isoWeekYear');\n addWeekYearFormatToken('GGGGG', 'isoWeekYear');\n\n // ALIASES\n\n addUnitAlias('weekYear', 'gg');\n addUnitAlias('isoWeekYear', 'GG');\n\n // PRIORITY\n\n addUnitPriority('weekYear', 1);\n addUnitPriority('isoWeekYear', 1);\n\n // PARSING\n\n addRegexToken('G', matchSigned);\n addRegexToken('g', matchSigned);\n addRegexToken('GG', match1to2, match2);\n addRegexToken('gg', match1to2, match2);\n addRegexToken('GGGG', match1to4, match4);\n addRegexToken('gggg', match1to4, match4);\n addRegexToken('GGGGG', match1to6, match6);\n addRegexToken('ggggg', match1to6, match6);\n\n addWeekParseToken(\n ['gggg', 'ggggg', 'GGGG', 'GGGGG'],\n function (input, week, config, token) {\n week[token.substr(0, 2)] = toInt(input);\n }\n );\n\n addWeekParseToken(['gg', 'GG'], function (input, week, config, token) {\n week[token] = hooks.parseTwoDigitYear(input);\n });\n\n // MOMENTS\n\n function getSetWeekYear(input) {\n return getSetWeekYearHelper.call(\n this,\n input,\n this.week(),\n this.weekday(),\n this.localeData()._week.dow,\n this.localeData()._week.doy\n );\n }\n\n function getSetISOWeekYear(input) {\n return getSetWeekYearHelper.call(\n this,\n input,\n this.isoWeek(),\n this.isoWeekday(),\n 1,\n 4\n );\n }\n\n function getISOWeeksInYear() {\n return weeksInYear(this.year(), 1, 4);\n }\n\n function getISOWeeksInISOWeekYear() {\n return weeksInYear(this.isoWeekYear(), 1, 4);\n }\n\n function getWeeksInYear() {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy);\n }\n\n function getWeeksInWeekYear() {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.weekYear(), weekInfo.dow, weekInfo.doy);\n }\n\n function getSetWeekYearHelper(input, week, weekday, dow, doy) {\n var weeksTarget;\n if (input == null) {\n return weekOfYear(this, dow, doy).year;\n } else {\n weeksTarget = weeksInYear(input, dow, doy);\n if (week > weeksTarget) {\n week = weeksTarget;\n }\n return setWeekAll.call(this, input, week, weekday, dow, doy);\n }\n }\n\n function setWeekAll(weekYear, week, weekday, dow, doy) {\n var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy),\n date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear);\n\n this.year(date.getUTCFullYear());\n this.month(date.getUTCMonth());\n this.date(date.getUTCDate());\n return this;\n }\n\n // FORMATTING\n\n addFormatToken('Q', 0, 'Qo', 'quarter');\n\n // ALIASES\n\n addUnitAlias('quarter', 'Q');\n\n // PRIORITY\n\n addUnitPriority('quarter', 7);\n\n // PARSING\n\n addRegexToken('Q', match1);\n addParseToken('Q', function (input, array) {\n array[MONTH] = (toInt(input) - 1) * 3;\n });\n\n // MOMENTS\n\n function getSetQuarter(input) {\n return input == null\n ? Math.ceil((this.month() + 1) / 3)\n : this.month((input - 1) * 3 + (this.month() % 3));\n }\n\n // FORMATTING\n\n addFormatToken('D', ['DD', 2], 'Do', 'date');\n\n // ALIASES\n\n addUnitAlias('date', 'D');\n\n // PRIORITY\n addUnitPriority('date', 9);\n\n // PARSING\n\n addRegexToken('D', match1to2);\n addRegexToken('DD', match1to2, match2);\n addRegexToken('Do', function (isStrict, locale) {\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n return isStrict\n ? locale._dayOfMonthOrdinalParse || locale._ordinalParse\n : locale._dayOfMonthOrdinalParseLenient;\n });\n\n addParseToken(['D', 'DD'], DATE);\n addParseToken('Do', function (input, array) {\n array[DATE] = toInt(input.match(match1to2)[0]);\n });\n\n // MOMENTS\n\n var getSetDayOfMonth = makeGetSet('Date', true);\n\n // FORMATTING\n\n addFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear');\n\n // ALIASES\n\n addUnitAlias('dayOfYear', 'DDD');\n\n // PRIORITY\n addUnitPriority('dayOfYear', 4);\n\n // PARSING\n\n addRegexToken('DDD', match1to3);\n addRegexToken('DDDD', match3);\n addParseToken(['DDD', 'DDDD'], function (input, array, config) {\n config._dayOfYear = toInt(input);\n });\n\n // HELPERS\n\n // MOMENTS\n\n function getSetDayOfYear(input) {\n var dayOfYear =\n Math.round(\n (this.clone().startOf('day') - this.clone().startOf('year')) / 864e5\n ) + 1;\n return input == null ? dayOfYear : this.add(input - dayOfYear, 'd');\n }\n\n // FORMATTING\n\n addFormatToken('m', ['mm', 2], 0, 'minute');\n\n // ALIASES\n\n addUnitAlias('minute', 'm');\n\n // PRIORITY\n\n addUnitPriority('minute', 14);\n\n // PARSING\n\n addRegexToken('m', match1to2);\n addRegexToken('mm', match1to2, match2);\n addParseToken(['m', 'mm'], MINUTE);\n\n // MOMENTS\n\n var getSetMinute = makeGetSet('Minutes', false);\n\n // FORMATTING\n\n addFormatToken('s', ['ss', 2], 0, 'second');\n\n // ALIASES\n\n addUnitAlias('second', 's');\n\n // PRIORITY\n\n addUnitPriority('second', 15);\n\n // PARSING\n\n addRegexToken('s', match1to2);\n addRegexToken('ss', match1to2, match2);\n addParseToken(['s', 'ss'], SECOND);\n\n // MOMENTS\n\n var getSetSecond = makeGetSet('Seconds', false);\n\n // FORMATTING\n\n addFormatToken('S', 0, 0, function () {\n return ~~(this.millisecond() / 100);\n });\n\n addFormatToken(0, ['SS', 2], 0, function () {\n return ~~(this.millisecond() / 10);\n });\n\n addFormatToken(0, ['SSS', 3], 0, 'millisecond');\n addFormatToken(0, ['SSSS', 4], 0, function () {\n return this.millisecond() * 10;\n });\n addFormatToken(0, ['SSSSS', 5], 0, function () {\n return this.millisecond() * 100;\n });\n addFormatToken(0, ['SSSSSS', 6], 0, function () {\n return this.millisecond() * 1000;\n });\n addFormatToken(0, ['SSSSSSS', 7], 0, function () {\n return this.millisecond() * 10000;\n });\n addFormatToken(0, ['SSSSSSSS', 8], 0, function () {\n return this.millisecond() * 100000;\n });\n addFormatToken(0, ['SSSSSSSSS', 9], 0, function () {\n return this.millisecond() * 1000000;\n });\n\n // ALIASES\n\n addUnitAlias('millisecond', 'ms');\n\n // PRIORITY\n\n addUnitPriority('millisecond', 16);\n\n // PARSING\n\n addRegexToken('S', match1to3, match1);\n addRegexToken('SS', match1to3, match2);\n addRegexToken('SSS', match1to3, match3);\n\n var token, getSetMillisecond;\n for (token = 'SSSS'; token.length <= 9; token += 'S') {\n addRegexToken(token, matchUnsigned);\n }\n\n function parseMs(input, array) {\n array[MILLISECOND] = toInt(('0.' + input) * 1000);\n }\n\n for (token = 'S'; token.length <= 9; token += 'S') {\n addParseToken(token, parseMs);\n }\n\n getSetMillisecond = makeGetSet('Milliseconds', false);\n\n // FORMATTING\n\n addFormatToken('z', 0, 0, 'zoneAbbr');\n addFormatToken('zz', 0, 0, 'zoneName');\n\n // MOMENTS\n\n function getZoneAbbr() {\n return this._isUTC ? 'UTC' : '';\n }\n\n function getZoneName() {\n return this._isUTC ? 'Coordinated Universal Time' : '';\n }\n\n var proto = Moment.prototype;\n\n proto.add = add;\n proto.calendar = calendar$1;\n proto.clone = clone;\n proto.diff = diff;\n proto.endOf = endOf;\n proto.format = format;\n proto.from = from;\n proto.fromNow = fromNow;\n proto.to = to;\n proto.toNow = toNow;\n proto.get = stringGet;\n proto.invalidAt = invalidAt;\n proto.isAfter = isAfter;\n proto.isBefore = isBefore;\n proto.isBetween = isBetween;\n proto.isSame = isSame;\n proto.isSameOrAfter = isSameOrAfter;\n proto.isSameOrBefore = isSameOrBefore;\n proto.isValid = isValid$2;\n proto.lang = lang;\n proto.locale = locale;\n proto.localeData = localeData;\n proto.max = prototypeMax;\n proto.min = prototypeMin;\n proto.parsingFlags = parsingFlags;\n proto.set = stringSet;\n proto.startOf = startOf;\n proto.subtract = subtract;\n proto.toArray = toArray;\n proto.toObject = toObject;\n proto.toDate = toDate;\n proto.toISOString = toISOString;\n proto.inspect = inspect;\n if (typeof Symbol !== 'undefined' && Symbol.for != null) {\n proto[Symbol.for('nodejs.util.inspect.custom')] = function () {\n return 'Moment<' + this.format() + '>';\n };\n }\n proto.toJSON = toJSON;\n proto.toString = toString;\n proto.unix = unix;\n proto.valueOf = valueOf;\n proto.creationData = creationData;\n proto.eraName = getEraName;\n proto.eraNarrow = getEraNarrow;\n proto.eraAbbr = getEraAbbr;\n proto.eraYear = getEraYear;\n proto.year = getSetYear;\n proto.isLeapYear = getIsLeapYear;\n proto.weekYear = getSetWeekYear;\n proto.isoWeekYear = getSetISOWeekYear;\n proto.quarter = proto.quarters = getSetQuarter;\n proto.month = getSetMonth;\n proto.daysInMonth = getDaysInMonth;\n proto.week = proto.weeks = getSetWeek;\n proto.isoWeek = proto.isoWeeks = getSetISOWeek;\n proto.weeksInYear = getWeeksInYear;\n proto.weeksInWeekYear = getWeeksInWeekYear;\n proto.isoWeeksInYear = getISOWeeksInYear;\n proto.isoWeeksInISOWeekYear = getISOWeeksInISOWeekYear;\n proto.date = getSetDayOfMonth;\n proto.day = proto.days = getSetDayOfWeek;\n proto.weekday = getSetLocaleDayOfWeek;\n proto.isoWeekday = getSetISODayOfWeek;\n proto.dayOfYear = getSetDayOfYear;\n proto.hour = proto.hours = getSetHour;\n proto.minute = proto.minutes = getSetMinute;\n proto.second = proto.seconds = getSetSecond;\n proto.millisecond = proto.milliseconds = getSetMillisecond;\n proto.utcOffset = getSetOffset;\n proto.utc = setOffsetToUTC;\n proto.local = setOffsetToLocal;\n proto.parseZone = setOffsetToParsedOffset;\n proto.hasAlignedHourOffset = hasAlignedHourOffset;\n proto.isDST = isDaylightSavingTime;\n proto.isLocal = isLocal;\n proto.isUtcOffset = isUtcOffset;\n proto.isUtc = isUtc;\n proto.isUTC = isUtc;\n proto.zoneAbbr = getZoneAbbr;\n proto.zoneName = getZoneName;\n proto.dates = deprecate(\n 'dates accessor is deprecated. Use date instead.',\n getSetDayOfMonth\n );\n proto.months = deprecate(\n 'months accessor is deprecated. Use month instead',\n getSetMonth\n );\n proto.years = deprecate(\n 'years accessor is deprecated. Use year instead',\n getSetYear\n );\n proto.zone = deprecate(\n 'moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/',\n getSetZone\n );\n proto.isDSTShifted = deprecate(\n 'isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information',\n isDaylightSavingTimeShifted\n );\n\n function createUnix(input) {\n return createLocal(input * 1000);\n }\n\n function createInZone() {\n return createLocal.apply(null, arguments).parseZone();\n }\n\n function preParsePostFormat(string) {\n return string;\n }\n\n var proto$1 = Locale.prototype;\n\n proto$1.calendar = calendar;\n proto$1.longDateFormat = longDateFormat;\n proto$1.invalidDate = invalidDate;\n proto$1.ordinal = ordinal;\n proto$1.preparse = preParsePostFormat;\n proto$1.postformat = preParsePostFormat;\n proto$1.relativeTime = relativeTime;\n proto$1.pastFuture = pastFuture;\n proto$1.set = set;\n proto$1.eras = localeEras;\n proto$1.erasParse = localeErasParse;\n proto$1.erasConvertYear = localeErasConvertYear;\n proto$1.erasAbbrRegex = erasAbbrRegex;\n proto$1.erasNameRegex = erasNameRegex;\n proto$1.erasNarrowRegex = erasNarrowRegex;\n\n proto$1.months = localeMonths;\n proto$1.monthsShort = localeMonthsShort;\n proto$1.monthsParse = localeMonthsParse;\n proto$1.monthsRegex = monthsRegex;\n proto$1.monthsShortRegex = monthsShortRegex;\n proto$1.week = localeWeek;\n proto$1.firstDayOfYear = localeFirstDayOfYear;\n proto$1.firstDayOfWeek = localeFirstDayOfWeek;\n\n proto$1.weekdays = localeWeekdays;\n proto$1.weekdaysMin = localeWeekdaysMin;\n proto$1.weekdaysShort = localeWeekdaysShort;\n proto$1.weekdaysParse = localeWeekdaysParse;\n\n proto$1.weekdaysRegex = weekdaysRegex;\n proto$1.weekdaysShortRegex = weekdaysShortRegex;\n proto$1.weekdaysMinRegex = weekdaysMinRegex;\n\n proto$1.isPM = localeIsPM;\n proto$1.meridiem = localeMeridiem;\n\n function get$1(format, index, field, setter) {\n var locale = getLocale(),\n utc = createUTC().set(setter, index);\n return locale[field](utc, format);\n }\n\n function listMonthsImpl(format, index, field) {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n\n if (index != null) {\n return get$1(format, index, field, 'month');\n }\n\n var i,\n out = [];\n for (i = 0; i < 12; i++) {\n out[i] = get$1(format, i, field, 'month');\n }\n return out;\n }\n\n // ()\n // (5)\n // (fmt, 5)\n // (fmt)\n // (true)\n // (true, 5)\n // (true, fmt, 5)\n // (true, fmt)\n function listWeekdaysImpl(localeSorted, format, index, field) {\n if (typeof localeSorted === 'boolean') {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n } else {\n format = localeSorted;\n index = format;\n localeSorted = false;\n\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n }\n\n var locale = getLocale(),\n shift = localeSorted ? locale._week.dow : 0,\n i,\n out = [];\n\n if (index != null) {\n return get$1(format, (index + shift) % 7, field, 'day');\n }\n\n for (i = 0; i < 7; i++) {\n out[i] = get$1(format, (i + shift) % 7, field, 'day');\n }\n return out;\n }\n\n function listMonths(format, index) {\n return listMonthsImpl(format, index, 'months');\n }\n\n function listMonthsShort(format, index) {\n return listMonthsImpl(format, index, 'monthsShort');\n }\n\n function listWeekdays(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdays');\n }\n\n function listWeekdaysShort(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysShort');\n }\n\n function listWeekdaysMin(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysMin');\n }\n\n getSetGlobalLocale('en', {\n eras: [\n {\n since: '0001-01-01',\n until: +Infinity,\n offset: 1,\n name: 'Anno Domini',\n narrow: 'AD',\n abbr: 'AD',\n },\n {\n since: '0000-12-31',\n until: -Infinity,\n offset: 1,\n name: 'Before Christ',\n narrow: 'BC',\n abbr: 'BC',\n },\n ],\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n toInt((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n });\n\n // Side effect imports\n\n hooks.lang = deprecate(\n 'moment.lang is deprecated. Use moment.locale instead.',\n getSetGlobalLocale\n );\n hooks.langData = deprecate(\n 'moment.langData is deprecated. Use moment.localeData instead.',\n getLocale\n );\n\n var mathAbs = Math.abs;\n\n function abs() {\n var data = this._data;\n\n this._milliseconds = mathAbs(this._milliseconds);\n this._days = mathAbs(this._days);\n this._months = mathAbs(this._months);\n\n data.milliseconds = mathAbs(data.milliseconds);\n data.seconds = mathAbs(data.seconds);\n data.minutes = mathAbs(data.minutes);\n data.hours = mathAbs(data.hours);\n data.months = mathAbs(data.months);\n data.years = mathAbs(data.years);\n\n return this;\n }\n\n function addSubtract$1(duration, input, value, direction) {\n var other = createDuration(input, value);\n\n duration._milliseconds += direction * other._milliseconds;\n duration._days += direction * other._days;\n duration._months += direction * other._months;\n\n return duration._bubble();\n }\n\n // supports only 2.0-style add(1, 's') or add(duration)\n function add$1(input, value) {\n return addSubtract$1(this, input, value, 1);\n }\n\n // supports only 2.0-style subtract(1, 's') or subtract(duration)\n function subtract$1(input, value) {\n return addSubtract$1(this, input, value, -1);\n }\n\n function absCeil(number) {\n if (number < 0) {\n return Math.floor(number);\n } else {\n return Math.ceil(number);\n }\n }\n\n function bubble() {\n var milliseconds = this._milliseconds,\n days = this._days,\n months = this._months,\n data = this._data,\n seconds,\n minutes,\n hours,\n years,\n monthsFromDays;\n\n // if we have a mix of positive and negative values, bubble down first\n // check: https://github.com/moment/moment/issues/2166\n if (\n !(\n (milliseconds >= 0 && days >= 0 && months >= 0) ||\n (milliseconds <= 0 && days <= 0 && months <= 0)\n )\n ) {\n milliseconds += absCeil(monthsToDays(months) + days) * 864e5;\n days = 0;\n months = 0;\n }\n\n // The following code bubbles up values, see the tests for\n // examples of what that means.\n data.milliseconds = milliseconds % 1000;\n\n seconds = absFloor(milliseconds / 1000);\n data.seconds = seconds % 60;\n\n minutes = absFloor(seconds / 60);\n data.minutes = minutes % 60;\n\n hours = absFloor(minutes / 60);\n data.hours = hours % 24;\n\n days += absFloor(hours / 24);\n\n // convert days to months\n monthsFromDays = absFloor(daysToMonths(days));\n months += monthsFromDays;\n days -= absCeil(monthsToDays(monthsFromDays));\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n data.days = days;\n data.months = months;\n data.years = years;\n\n return this;\n }\n\n function daysToMonths(days) {\n // 400 years have 146097 days (taking into account leap year rules)\n // 400 years have 12 months === 4800\n return (days * 4800) / 146097;\n }\n\n function monthsToDays(months) {\n // the reverse of daysToMonths\n return (months * 146097) / 4800;\n }\n\n function as(units) {\n if (!this.isValid()) {\n return NaN;\n }\n var days,\n months,\n milliseconds = this._milliseconds;\n\n units = normalizeUnits(units);\n\n if (units === 'month' || units === 'quarter' || units === 'year') {\n days = this._days + milliseconds / 864e5;\n months = this._months + daysToMonths(days);\n switch (units) {\n case 'month':\n return months;\n case 'quarter':\n return months / 3;\n case 'year':\n return months / 12;\n }\n } else {\n // handle milliseconds separately because of floating point math errors (issue #1867)\n days = this._days + Math.round(monthsToDays(this._months));\n switch (units) {\n case 'week':\n return days / 7 + milliseconds / 6048e5;\n case 'day':\n return days + milliseconds / 864e5;\n case 'hour':\n return days * 24 + milliseconds / 36e5;\n case 'minute':\n return days * 1440 + milliseconds / 6e4;\n case 'second':\n return days * 86400 + milliseconds / 1000;\n // Math.floor prevents floating point math errors here\n case 'millisecond':\n return Math.floor(days * 864e5) + milliseconds;\n default:\n throw new Error('Unknown unit ' + units);\n }\n }\n }\n\n // TODO: Use this.as('ms')?\n function valueOf$1() {\n if (!this.isValid()) {\n return NaN;\n }\n return (\n this._milliseconds +\n this._days * 864e5 +\n (this._months % 12) * 2592e6 +\n toInt(this._months / 12) * 31536e6\n );\n }\n\n function makeAs(alias) {\n return function () {\n return this.as(alias);\n };\n }\n\n var asMilliseconds = makeAs('ms'),\n asSeconds = makeAs('s'),\n asMinutes = makeAs('m'),\n asHours = makeAs('h'),\n asDays = makeAs('d'),\n asWeeks = makeAs('w'),\n asMonths = makeAs('M'),\n asQuarters = makeAs('Q'),\n asYears = makeAs('y');\n\n function clone$1() {\n return createDuration(this);\n }\n\n function get$2(units) {\n units = normalizeUnits(units);\n return this.isValid() ? this[units + 's']() : NaN;\n }\n\n function makeGetter(name) {\n return function () {\n return this.isValid() ? this._data[name] : NaN;\n };\n }\n\n var milliseconds = makeGetter('milliseconds'),\n seconds = makeGetter('seconds'),\n minutes = makeGetter('minutes'),\n hours = makeGetter('hours'),\n days = makeGetter('days'),\n months = makeGetter('months'),\n years = makeGetter('years');\n\n function weeks() {\n return absFloor(this.days() / 7);\n }\n\n var round = Math.round,\n thresholds = {\n ss: 44, // a few seconds to seconds\n s: 45, // seconds to minute\n m: 45, // minutes to hour\n h: 22, // hours to day\n d: 26, // days to month/week\n w: null, // weeks to month\n M: 11, // months to year\n };\n\n // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize\n function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) {\n return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture);\n }\n\n function relativeTime$1(posNegDuration, withoutSuffix, thresholds, locale) {\n var duration = createDuration(posNegDuration).abs(),\n seconds = round(duration.as('s')),\n minutes = round(duration.as('m')),\n hours = round(duration.as('h')),\n days = round(duration.as('d')),\n months = round(duration.as('M')),\n weeks = round(duration.as('w')),\n years = round(duration.as('y')),\n a =\n (seconds <= thresholds.ss && ['s', seconds]) ||\n (seconds < thresholds.s && ['ss', seconds]) ||\n (minutes <= 1 && ['m']) ||\n (minutes < thresholds.m && ['mm', minutes]) ||\n (hours <= 1 && ['h']) ||\n (hours < thresholds.h && ['hh', hours]) ||\n (days <= 1 && ['d']) ||\n (days < thresholds.d && ['dd', days]);\n\n if (thresholds.w != null) {\n a =\n a ||\n (weeks <= 1 && ['w']) ||\n (weeks < thresholds.w && ['ww', weeks]);\n }\n a = a ||\n (months <= 1 && ['M']) ||\n (months < thresholds.M && ['MM', months]) ||\n (years <= 1 && ['y']) || ['yy', years];\n\n a[2] = withoutSuffix;\n a[3] = +posNegDuration > 0;\n a[4] = locale;\n return substituteTimeAgo.apply(null, a);\n }\n\n // This function allows you to set the rounding function for relative time strings\n function getSetRelativeTimeRounding(roundingFunction) {\n if (roundingFunction === undefined) {\n return round;\n }\n if (typeof roundingFunction === 'function') {\n round = roundingFunction;\n return true;\n }\n return false;\n }\n\n // This function allows you to set a threshold for relative time strings\n function getSetRelativeTimeThreshold(threshold, limit) {\n if (thresholds[threshold] === undefined) {\n return false;\n }\n if (limit === undefined) {\n return thresholds[threshold];\n }\n thresholds[threshold] = limit;\n if (threshold === 's') {\n thresholds.ss = limit - 1;\n }\n return true;\n }\n\n function humanize(argWithSuffix, argThresholds) {\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var withSuffix = false,\n th = thresholds,\n locale,\n output;\n\n if (typeof argWithSuffix === 'object') {\n argThresholds = argWithSuffix;\n argWithSuffix = false;\n }\n if (typeof argWithSuffix === 'boolean') {\n withSuffix = argWithSuffix;\n }\n if (typeof argThresholds === 'object') {\n th = Object.assign({}, thresholds, argThresholds);\n if (argThresholds.s != null && argThresholds.ss == null) {\n th.ss = argThresholds.s - 1;\n }\n }\n\n locale = this.localeData();\n output = relativeTime$1(this, !withSuffix, th, locale);\n\n if (withSuffix) {\n output = locale.pastFuture(+this, output);\n }\n\n return locale.postformat(output);\n }\n\n var abs$1 = Math.abs;\n\n function sign(x) {\n return (x > 0) - (x < 0) || +x;\n }\n\n function toISOString$1() {\n // for ISO strings we do not use the normal bubbling rules:\n // * milliseconds bubble up until they become hours\n // * days do not bubble at all\n // * months bubble up until they become years\n // This is because there is no context-free conversion between hours and days\n // (think of clock changes)\n // and also not between days and months (28-31 days per month)\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var seconds = abs$1(this._milliseconds) / 1000,\n days = abs$1(this._days),\n months = abs$1(this._months),\n minutes,\n hours,\n years,\n s,\n total = this.asSeconds(),\n totalSign,\n ymSign,\n daysSign,\n hmsSign;\n\n if (!total) {\n // this is the same as C#'s (Noda) and python (isodate)...\n // but not other JS (goog.date)\n return 'P0D';\n }\n\n // 3600 seconds -> 60 minutes -> 1 hour\n minutes = absFloor(seconds / 60);\n hours = absFloor(minutes / 60);\n seconds %= 60;\n minutes %= 60;\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js\n s = seconds ? seconds.toFixed(3).replace(/\\.?0+$/, '') : '';\n\n totalSign = total < 0 ? '-' : '';\n ymSign = sign(this._months) !== sign(total) ? '-' : '';\n daysSign = sign(this._days) !== sign(total) ? '-' : '';\n hmsSign = sign(this._milliseconds) !== sign(total) ? '-' : '';\n\n return (\n totalSign +\n 'P' +\n (years ? ymSign + years + 'Y' : '') +\n (months ? ymSign + months + 'M' : '') +\n (days ? daysSign + days + 'D' : '') +\n (hours || minutes || seconds ? 'T' : '') +\n (hours ? hmsSign + hours + 'H' : '') +\n (minutes ? hmsSign + minutes + 'M' : '') +\n (seconds ? hmsSign + s + 'S' : '')\n );\n }\n\n var proto$2 = Duration.prototype;\n\n proto$2.isValid = isValid$1;\n proto$2.abs = abs;\n proto$2.add = add$1;\n proto$2.subtract = subtract$1;\n proto$2.as = as;\n proto$2.asMilliseconds = asMilliseconds;\n proto$2.asSeconds = asSeconds;\n proto$2.asMinutes = asMinutes;\n proto$2.asHours = asHours;\n proto$2.asDays = asDays;\n proto$2.asWeeks = asWeeks;\n proto$2.asMonths = asMonths;\n proto$2.asQuarters = asQuarters;\n proto$2.asYears = asYears;\n proto$2.valueOf = valueOf$1;\n proto$2._bubble = bubble;\n proto$2.clone = clone$1;\n proto$2.get = get$2;\n proto$2.milliseconds = milliseconds;\n proto$2.seconds = seconds;\n proto$2.minutes = minutes;\n proto$2.hours = hours;\n proto$2.days = days;\n proto$2.weeks = weeks;\n proto$2.months = months;\n proto$2.years = years;\n proto$2.humanize = humanize;\n proto$2.toISOString = toISOString$1;\n proto$2.toString = toISOString$1;\n proto$2.toJSON = toISOString$1;\n proto$2.locale = locale;\n proto$2.localeData = localeData;\n\n proto$2.toIsoString = deprecate(\n 'toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)',\n toISOString$1\n );\n proto$2.lang = lang;\n\n // FORMATTING\n\n addFormatToken('X', 0, 0, 'unix');\n addFormatToken('x', 0, 0, 'valueOf');\n\n // PARSING\n\n addRegexToken('x', matchSigned);\n addRegexToken('X', matchTimestamp);\n addParseToken('X', function (input, array, config) {\n config._d = new Date(parseFloat(input) * 1000);\n });\n addParseToken('x', function (input, array, config) {\n config._d = new Date(toInt(input));\n });\n\n //! moment.js\n\n hooks.version = '2.29.4';\n\n setHookCallback(createLocal);\n\n hooks.fn = proto;\n hooks.min = min;\n hooks.max = max;\n hooks.now = now;\n hooks.utc = createUTC;\n hooks.unix = createUnix;\n hooks.months = listMonths;\n hooks.isDate = isDate;\n hooks.locale = getSetGlobalLocale;\n hooks.invalid = createInvalid;\n hooks.duration = createDuration;\n hooks.isMoment = isMoment;\n hooks.weekdays = listWeekdays;\n hooks.parseZone = createInZone;\n hooks.localeData = getLocale;\n hooks.isDuration = isDuration;\n hooks.monthsShort = listMonthsShort;\n hooks.weekdaysMin = listWeekdaysMin;\n hooks.defineLocale = defineLocale;\n hooks.updateLocale = updateLocale;\n hooks.locales = listLocales;\n hooks.weekdaysShort = listWeekdaysShort;\n hooks.normalizeUnits = normalizeUnits;\n hooks.relativeTimeRounding = getSetRelativeTimeRounding;\n hooks.relativeTimeThreshold = getSetRelativeTimeThreshold;\n hooks.calendarFormat = getCalendarFormat;\n hooks.prototype = proto;\n\n // currently HTML5 input type only supports 24-hour formats\n hooks.HTML5_FMT = {\n DATETIME_LOCAL: 'YYYY-MM-DDTHH:mm', // \n DATETIME_LOCAL_SECONDS: 'YYYY-MM-DDTHH:mm:ss', // \n DATETIME_LOCAL_MS: 'YYYY-MM-DDTHH:mm:ss.SSS', // \n DATE: 'YYYY-MM-DD', // \n TIME: 'HH:mm', // \n TIME_SECONDS: 'HH:mm:ss', // \n TIME_MS: 'HH:mm:ss.SSS', // \n WEEK: 'GGGG-[W]WW', // \n MONTH: 'YYYY-MM', // \n };\n\n return hooks;\n\n})));\n","'use strict'\n\n\nconst createScatter = require('regl-scatter2d')\nconst pick = require('pick-by-alias')\nconst getBounds = require('array-bounds')\nconst raf = require('raf')\nconst arrRange = require('array-range')\nconst rect = require('parse-rect')\nconst flatten = require('flatten-vertex-data')\n\n\nmodule.exports = SPLOM\n\n\n// @constructor\nfunction SPLOM (regl, options) {\n\tif (!(this instanceof SPLOM)) return new SPLOM(regl, options)\n\n\t// render passes\n\tthis.traces = []\n\n\t// passes for scatter, combined across traces\n\tthis.passes = {}\n\n\tthis.regl = regl\n\n\t// main scatter drawing instance\n\tthis.scatter = createScatter(regl)\n\n\tthis.canvas = this.scatter.canvas\n}\n\n\n// update & draw passes once per frame\nSPLOM.prototype.render = function (...args) {\n\tif (args.length) {\n\t\tthis.update(...args)\n\t}\n\n\tif (this.regl.attributes.preserveDrawingBuffer) return this.draw()\n\n\t// make sure draw is not called more often than once a frame\n\tif (this.dirty) {\n\t\tif (this.planned == null) {\n\t\t\tthis.planned = raf(() => {\n\t\t\t\tthis.draw()\n\t\t\t\tthis.dirty = true\n\t\t\t\tthis.planned = null\n\t\t\t})\n\t\t}\n\t}\n\telse {\n\t\tthis.draw()\n\t\tthis.dirty = true\n\t\traf(() => {\n\t\t\tthis.dirty = false\n\t\t})\n\t}\n\n\treturn this\n}\n\n\n// update passes\nSPLOM.prototype.update = function (...args) {\n\tif (!args.length) return\n\n\tfor (let i = 0; i < args.length; i++) {\n\t\tthis.updateItem(i, args[i])\n\t}\n\n\t// remove nulled passes\n\tthis.traces = this.traces.filter(Boolean)\n\n\t// FIXME: update passes independently\n\tlet passes = []\n\tlet offset = 0\n\tfor (let i = 0; i < this.traces.length; i++) {\n\t\tlet trace = this.traces[i]\n\t\tlet tracePasses = this.traces[i].passes\n\t\tfor (let j = 0; j < tracePasses.length; j++) {\n\t\t\tpasses.push(this.passes[tracePasses[j]])\n\t\t}\n\t\t// save offset of passes\n\t\ttrace.passOffset = offset\n\t\toffset += trace.passes.length\n\t}\n\n\tthis.scatter.update(...passes)\n\n\treturn this\n}\n\n\n// update trace by index, not supposed to be called directly\nSPLOM.prototype.updateItem = function (i, options) {\n\tlet { regl } = this\n\n\t// remove pass if null\n\tif (options === null) {\n\t\tthis.traces[i] = null\n\t\treturn this\n\t}\n\n\tif (!options) return this\n\n\tlet o = pick(options, {\n\t\tdata: 'data items columns rows values dimensions samples x',\n\t\tsnap: 'snap cluster',\n\t\tsize: 'sizes size radius',\n\t\tcolor: 'colors color fill fill-color fillColor',\n\t\topacity: 'opacity alpha transparency opaque',\n\t\tborderSize: 'borderSizes borderSize border-size bordersize borderWidth borderWidths border-width borderwidth stroke-width strokeWidth strokewidth outline',\n\t\tborderColor: 'borderColors borderColor bordercolor stroke stroke-color strokeColor',\n\t\tmarker: 'markers marker shape',\n\t\trange: 'range ranges databox dataBox',\n\t\tviewport: 'viewport viewBox viewbox',\n\t\tdomain: 'domain domains area areas',\n\t\tpadding: 'pad padding paddings pads margin margins',\n\t\ttranspose: 'transpose transposed',\n\t\tdiagonal: 'diagonal diag showDiagonal',\n\t\tupper: 'upper up top upperhalf upperHalf showupperhalf showUpper showUpperHalf',\n\t\tlower: 'lower low bottom lowerhalf lowerHalf showlowerhalf showLowerHalf showLower'\n\t})\n\n\t// we provide regl buffer per-trace, since trace data can be changed\n\tlet trace = (this.traces[i] || (this.traces[i] = {\n\t\tid: i,\n\t\tbuffer: regl.buffer({\n\t\t\tusage: 'dynamic',\n\t\t\ttype: 'float',\n\t\t\tdata: new Uint8Array()\n\t\t}),\n\t\tcolor: 'black',\n\t\tmarker: null,\n\t\tsize: 12,\n\t\tborderColor: 'transparent',\n\t\tborderSize: 1,\n\t\tviewport: rect([regl._gl.drawingBufferWidth, regl._gl.drawingBufferHeight]),\n\t\tpadding: [0, 0, 0, 0],\n\t\topacity: 1,\n\t\tdiagonal: true,\n\t\tupper: true,\n\t\tlower: true\n\t}))\n\n\n\t// save styles\n\tif (o.color != null) {\n\t\ttrace.color = o.color\n\t}\n\tif (o.size != null) {\n\t\ttrace.size = o.size\n\t}\n\tif (o.marker != null) {\n\t\ttrace.marker = o.marker\n\t}\n\tif (o.borderColor != null) {\n\t\ttrace.borderColor = o.borderColor\n\t}\n\tif (o.borderSize != null) {\n\t\ttrace.borderSize = o.borderSize\n\t}\n\tif (o.opacity != null) {\n\t\ttrace.opacity = o.opacity\n\t}\n\tif (o.viewport) {\n\t\ttrace.viewport = rect(o.viewport)\n\t}\n\tif (o.diagonal != null) trace.diagonal = o.diagonal\n\tif (o.upper != null) trace.upper = o.upper\n\tif (o.lower != null) trace.lower = o.lower\n\n\t// put flattened data into buffer\n\tif (o.data) {\n\t\ttrace.buffer(flatten(o.data))\n\t\ttrace.columns = o.data.length\n\t\ttrace.count = o.data[0].length\n\n\t\t// detect bounds per-column\n\t\ttrace.bounds = []\n\n\t\tfor (let i = 0; i < trace.columns; i++) {\n\t\t\ttrace.bounds[i] = getBounds(o.data[i], 1)\n\t\t}\n\t}\n\n\t// add proper range updating markers\n\tlet multirange\n\tif (o.range) {\n\t\ttrace.range = o.range\n\t\tmultirange = trace.range && typeof trace.range[0] !== 'number'\n\t}\n\n\tif (o.domain) {\n\t\ttrace.domain = o.domain\n\t}\n\tlet multipadding = false\n\tif (o.padding != null) {\n\t\t// multiple paddings\n\t\tif (Array.isArray(o.padding) && o.padding.length === trace.columns && typeof o.padding[o.padding.length - 1] === 'number') {\n\t\t\ttrace.padding = o.padding.map(getPad)\n\t\t\tmultipadding = true\n\t\t}\n\t\t// single padding\n\t\telse {\n\t\t\ttrace.padding = getPad(o.padding)\n\t\t}\n\t}\n\n\t// create passes\n\tlet m = trace.columns\n\tlet n = trace.count\n\n\tlet w = trace.viewport.width\n\tlet h = trace.viewport.height\n\tlet left = trace.viewport.x\n\tlet top = trace.viewport.y\n\tlet iw = w / m\n\tlet ih = h / m\n\n\ttrace.passes = []\n\n\tfor (let i = 0; i < m; i++) {\n\t\tfor (let j = 0; j < m; j++) {\n\t\t\tif (!trace.diagonal && j === i) continue\n\t\t\tif (!trace.upper && i > j) continue\n\t\t\tif (!trace.lower && i < j) continue\n\n\t\t\tlet key = passId(trace.id, i, j)\n\n\t\t\tlet pass = this.passes[key] || (this.passes[key] = {})\n\n\t\t\tif (o.data) {\n\t\t\t\tif (o.transpose) {\n\t\t\t\t\tpass.positions = {\n\t\t\t\t\t\tx: {buffer: trace.buffer, offset: j, count: n, stride: m},\n\t\t\t\t\t\ty: {buffer: trace.buffer, offset: i, count: n, stride: m}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tpass.positions = {\n\t\t\t\t\t\tx: {buffer: trace.buffer, offset: j * n, count: n},\n\t\t\t\t\t\ty: {buffer: trace.buffer, offset: i * n, count: n}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tpass.bounds = getBox(trace.bounds, i, j)\n\t\t\t}\n\n\t\t\tif (o.domain || o.viewport || o.data) {\n\t\t\t\tlet pad = multipadding ? getBox(trace.padding, i, j) : trace.padding\n\t\t\t\tif (trace.domain) {\n\t\t\t\t\tlet [lox, loy, hix, hiy] = getBox(trace.domain, i, j)\n\n\t\t\t\t\tpass.viewport = [\n\t\t\t\t\t\tleft + lox * w + pad[0],\n\t\t\t\t\t\ttop + loy * h + pad[1],\n\t\t\t\t\t\tleft + hix * w - pad[2],\n\t\t\t\t\t\ttop + hiy * h - pad[3]\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t\t// consider auto-domain equipartial\n\t\t\t\telse {\n\t\t\t\t\tpass.viewport = [\n\t\t\t\t\t\tleft + j * iw + iw * pad[0],\n\t\t\t\t\t\ttop + i * ih + ih * pad[1],\n\t\t\t\t\t\tleft + (j + 1) * iw - iw * pad[2],\n\t\t\t\t\t\ttop + (i + 1) * ih - ih * pad[3]\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (o.color) pass.color = trace.color\n\t\t\tif (o.size) pass.size = trace.size\n\t\t\tif (o.marker) pass.marker = trace.marker\n\t\t\tif (o.borderSize) pass.borderSize = trace.borderSize\n\t\t\tif (o.borderColor) pass.borderColor = trace.borderColor\n\t\t\tif (o.opacity) pass.opacity = trace.opacity\n\n\t\t\tif (o.range) {\n\t\t\t\tpass.range = multirange ? getBox(trace.range, i, j) : trace.range || pass.bounds\n\t\t\t}\n\n\t\t\ttrace.passes.push(key)\n\t\t}\n\t}\n\n\treturn this\n}\n\n\n// draw all or passed passes\nSPLOM.prototype.draw = function (...args) {\n\tif (!args.length) {\n\t\tthis.scatter.draw()\n\t}\n\telse {\n\t\tlet idx = []\n\t\tfor (let i = 0; i < args.length; i++) {\n\t\t\t// draw(0, 2, 5) - draw traces\n\t\t\tif (typeof args[i] === 'number' ) {\n\t\t\t\tlet { passes, passOffset } = this.traces[args[i]]\n\t\t\t\tidx.push(...arrRange(passOffset, passOffset + passes.length))\n\t\t\t}\n\t\t\t// draw([0, 1, 2 ...], [3, 4, 5]) - draw points\n\t\t\telse if (args[i].length) {\n\t\t\t\tlet els = args[i]\n\t\t\t\tlet { passes, passOffset } = this.traces[i]\n\t\t\t\tpasses = passes.map((passId, i) => {\n\t\t\t\t\tidx[passOffset + i] = els\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t\tthis.scatter.draw(...idx)\n\t}\n\n\treturn this\n}\n\n\n// dispose resources\nSPLOM.prototype.destroy = function () {\n\tthis.traces.forEach(trace => {\n\t\tif (trace.buffer && trace.buffer.destroy) trace.buffer.destroy()\n\t})\n\tthis.traces = null\n\tthis.passes = null\n\n\tthis.scatter.destroy()\n\n\treturn this\n}\n\n\n// return pass corresponding to trace i- j- square\nfunction passId (trace, i, j) {\n\tlet id = (trace.id != null ? trace.id : trace)\n\tlet n = i\n\tlet m = j\n\tlet key = id << 16 | (n & 0xff) << 8 | m & 0xff\n\n\treturn key\n}\n\n\n// return bounding box corresponding to a pass\nfunction getBox (items, i, j) {\n\tlet ilox, iloy, ihix, ihiy, jlox, jloy, jhix, jhiy\n\tlet iitem = items[i], jitem = items[j]\n\n\tif (iitem.length > 2) {\n\t\tilox = iitem[0]\n\t\tihix = iitem[2]\n\t\tiloy = iitem[1]\n\t\tihiy = iitem[3]\n\t}\n\telse if (iitem.length) {\n\t\tilox = iloy = iitem[0]\n\t\tihix = ihiy = iitem[1]\n\t}\n\telse {\n\t\tilox = iitem.x\n\t\tiloy = iitem.y\n\t\tihix = iitem.x + iitem.width\n\t\tihiy = iitem.y + iitem.height\n\t}\n\n\tif (jitem.length > 2) {\n\t\tjlox = jitem[0]\n\t\tjhix = jitem[2]\n\t\tjloy = jitem[1]\n\t\tjhiy = jitem[3]\n\t}\n\telse if (jitem.length) {\n\t\tjlox = jloy = jitem[0]\n\t\tjhix = jhiy = jitem[1]\n\t}\n\telse {\n\t\tjlox = jitem.x\n\t\tjloy = jitem.y\n\t\tjhix = jitem.x + jitem.width\n\t\tjhiy = jitem.y + jitem.height\n\t}\n\n\treturn [ jlox, iloy, jhix, ihiy ]\n}\n\n\nfunction getPad (arg) {\n\tif (typeof arg === 'number') return [arg, arg, arg, arg]\n\telse if (arg.length === 2) return [arg[0], arg[1], arg[0], arg[1]]\n\telse {\n\t\tlet box = rect(arg)\n\t\treturn [box.x, box.y, box.x + box.width, box.y + box.height]\n\t}\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/**\n * @license React\n * react-dom.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n/*\n Modernizr 3.0.0pre (Custom Build) | MIT\n*/\n'use strict';var aa=require(\"react\"),ca=require(\"scheduler\");function p(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;cb}return!1}function v(a,b,c,d,e,f,g){this.acceptsBooleans=2===b||3===b||4===b;this.attributeName=d;this.attributeNamespace=e;this.mustUseProperty=c;this.propertyName=a;this.type=b;this.sanitizeURL=f;this.removeEmptyString=g}var z={};\n\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach(function(a){z[a]=new v(a,0,!1,a,null,!1,!1)});[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach(function(a){var b=a[0];z[b]=new v(b,1,!1,a[1],null,!1,!1)});[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach(function(a){z[a]=new v(a,2,!1,a.toLowerCase(),null,!1,!1)});\n[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach(function(a){z[a]=new v(a,2,!1,a,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(a){z[a]=new v(a,3,!1,a.toLowerCase(),null,!1,!1)});\n[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach(function(a){z[a]=new v(a,3,!0,a,null,!1,!1)});[\"capture\",\"download\"].forEach(function(a){z[a]=new v(a,4,!1,a,null,!1,!1)});[\"cols\",\"rows\",\"size\",\"span\"].forEach(function(a){z[a]=new v(a,6,!1,a,null,!1,!1)});[\"rowSpan\",\"start\"].forEach(function(a){z[a]=new v(a,5,!1,a.toLowerCase(),null,!1,!1)});var ra=/[\\-:]([a-z])/g;function sa(a){return a[1].toUpperCase()}\n\"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(a){var b=a.replace(ra,\nsa);z[b]=new v(b,1,!1,a,null,!1,!1)});\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach(function(a){var b=a.replace(ra,sa);z[b]=new v(b,1,!1,a,\"http://www.w3.org/1999/xlink\",!1,!1)});[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach(function(a){var b=a.replace(ra,sa);z[b]=new v(b,1,!1,a,\"http://www.w3.org/XML/1998/namespace\",!1,!1)});[\"tabIndex\",\"crossOrigin\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!1,!1)});\nz.xlinkHref=new v(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!0,!0)});\nfunction ta(a,b,c,d){var e=z.hasOwnProperty(b)?z[b]:null;if(null!==e?0!==e.type:d||!(2h||e[g]!==f[h]){var k=\"\\n\"+e[g].replace(\" at new \",\" at \");a.displayName&&k.includes(\"\")&&(k=k.replace(\"\",a.displayName));return k}while(1<=g&&0<=h)}break}}}finally{Na=!1,Error.prepareStackTrace=c}return(a=a?a.displayName||a.name:\"\")?Ma(a):\"\"}\nfunction Pa(a){switch(a.tag){case 5:return Ma(a.type);case 16:return Ma(\"Lazy\");case 13:return Ma(\"Suspense\");case 19:return Ma(\"SuspenseList\");case 0:case 2:case 15:return a=Oa(a.type,!1),a;case 11:return a=Oa(a.type.render,!1),a;case 1:return a=Oa(a.type,!0),a;default:return\"\"}}\nfunction Qa(a){if(null==a)return null;if(\"function\"===typeof a)return a.displayName||a.name||null;if(\"string\"===typeof a)return a;switch(a){case ya:return\"Fragment\";case wa:return\"Portal\";case Aa:return\"Profiler\";case za:return\"StrictMode\";case Ea:return\"Suspense\";case Fa:return\"SuspenseList\"}if(\"object\"===typeof a)switch(a.$$typeof){case Ca:return(a.displayName||\"Context\")+\".Consumer\";case Ba:return(a._context.displayName||\"Context\")+\".Provider\";case Da:var b=a.render;a=a.displayName;a||(a=b.displayName||\nb.name||\"\",a=\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");return a;case Ga:return b=a.displayName||null,null!==b?b:Qa(a.type)||\"Memo\";case Ha:b=a._payload;a=a._init;try{return Qa(a(b))}catch(c){}}return null}\nfunction Ra(a){var b=a.type;switch(a.tag){case 24:return\"Cache\";case 9:return(b.displayName||\"Context\")+\".Consumer\";case 10:return(b._context.displayName||\"Context\")+\".Provider\";case 18:return\"DehydratedFragment\";case 11:return a=b.render,a=a.displayName||a.name||\"\",b.displayName||(\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");case 7:return\"Fragment\";case 5:return b;case 4:return\"Portal\";case 3:return\"Root\";case 6:return\"Text\";case 16:return Qa(b);case 8:return b===za?\"StrictMode\":\"Mode\";case 22:return\"Offscreen\";\ncase 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(\"function\"===typeof b)return b.displayName||b.name||null;if(\"string\"===typeof b)return b}return null}function Sa(a){switch(typeof a){case \"boolean\":case \"number\":case \"string\":case \"undefined\":return a;case \"object\":return a;default:return\"\"}}\nfunction Ta(a){var b=a.type;return(a=a.nodeName)&&\"input\"===a.toLowerCase()&&(\"checkbox\"===b||\"radio\"===b)}\nfunction Ua(a){var b=Ta(a)?\"checked\":\"value\",c=Object.getOwnPropertyDescriptor(a.constructor.prototype,b),d=\"\"+a[b];if(!a.hasOwnProperty(b)&&\"undefined\"!==typeof c&&\"function\"===typeof c.get&&\"function\"===typeof c.set){var e=c.get,f=c.set;Object.defineProperty(a,b,{configurable:!0,get:function(){return e.call(this)},set:function(a){d=\"\"+a;f.call(this,a)}});Object.defineProperty(a,b,{enumerable:c.enumerable});return{getValue:function(){return d},setValue:function(a){d=\"\"+a},stopTracking:function(){a._valueTracker=\nnull;delete a[b]}}}}function Va(a){a._valueTracker||(a._valueTracker=Ua(a))}function Wa(a){if(!a)return!1;var b=a._valueTracker;if(!b)return!0;var c=b.getValue();var d=\"\";a&&(d=Ta(a)?a.checked?\"true\":\"false\":a.value);a=d;return a!==c?(b.setValue(a),!0):!1}function Xa(a){a=a||(\"undefined\"!==typeof document?document:void 0);if(\"undefined\"===typeof a)return null;try{return a.activeElement||a.body}catch(b){return a.body}}\nfunction Ya(a,b){var c=b.checked;return A({},b,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=c?c:a._wrapperState.initialChecked})}function Za(a,b){var c=null==b.defaultValue?\"\":b.defaultValue,d=null!=b.checked?b.checked:b.defaultChecked;c=Sa(null!=b.value?b.value:c);a._wrapperState={initialChecked:d,initialValue:c,controlled:\"checkbox\"===b.type||\"radio\"===b.type?null!=b.checked:null!=b.value}}function ab(a,b){b=b.checked;null!=b&&ta(a,\"checked\",b,!1)}\nfunction bb(a,b){ab(a,b);var c=Sa(b.value),d=b.type;if(null!=c)if(\"number\"===d){if(0===c&&\"\"===a.value||a.value!=c)a.value=\"\"+c}else a.value!==\"\"+c&&(a.value=\"\"+c);else if(\"submit\"===d||\"reset\"===d){a.removeAttribute(\"value\");return}b.hasOwnProperty(\"value\")?cb(a,b.type,c):b.hasOwnProperty(\"defaultValue\")&&cb(a,b.type,Sa(b.defaultValue));null==b.checked&&null!=b.defaultChecked&&(a.defaultChecked=!!b.defaultChecked)}\nfunction db(a,b,c){if(b.hasOwnProperty(\"value\")||b.hasOwnProperty(\"defaultValue\")){var d=b.type;if(!(\"submit\"!==d&&\"reset\"!==d||void 0!==b.value&&null!==b.value))return;b=\"\"+a._wrapperState.initialValue;c||b===a.value||(a.value=b);a.defaultValue=b}c=a.name;\"\"!==c&&(a.name=\"\");a.defaultChecked=!!a._wrapperState.initialChecked;\"\"!==c&&(a.name=c)}\nfunction cb(a,b,c){if(\"number\"!==b||Xa(a.ownerDocument)!==a)null==c?a.defaultValue=\"\"+a._wrapperState.initialValue:a.defaultValue!==\"\"+c&&(a.defaultValue=\"\"+c)}var eb=Array.isArray;\nfunction fb(a,b,c,d){a=a.options;if(b){b={};for(var e=0;e\"+b.valueOf().toString()+\"\";for(b=mb.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;b.firstChild;)a.appendChild(b.firstChild)}});\nfunction ob(a,b){if(b){var c=a.firstChild;if(c&&c===a.lastChild&&3===c.nodeType){c.nodeValue=b;return}}a.textContent=b}\nvar pb={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,\nzoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},qb=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(pb).forEach(function(a){qb.forEach(function(b){b=b+a.charAt(0).toUpperCase()+a.substring(1);pb[b]=pb[a]})});function rb(a,b,c){return null==b||\"boolean\"===typeof b||\"\"===b?\"\":c||\"number\"!==typeof b||0===b||pb.hasOwnProperty(a)&&pb[a]?(\"\"+b).trim():b+\"px\"}\nfunction sb(a,b){a=a.style;for(var c in b)if(b.hasOwnProperty(c)){var d=0===c.indexOf(\"--\"),e=rb(c,b[c],d);\"float\"===c&&(c=\"cssFloat\");d?a.setProperty(c,e):a[c]=e}}var tb=A({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});\nfunction ub(a,b){if(b){if(tb[a]&&(null!=b.children||null!=b.dangerouslySetInnerHTML))throw Error(p(137,a));if(null!=b.dangerouslySetInnerHTML){if(null!=b.children)throw Error(p(60));if(\"object\"!==typeof b.dangerouslySetInnerHTML||!(\"__html\"in b.dangerouslySetInnerHTML))throw Error(p(61));}if(null!=b.style&&\"object\"!==typeof b.style)throw Error(p(62));}}\nfunction vb(a,b){if(-1===a.indexOf(\"-\"))return\"string\"===typeof b.is;switch(a){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 wb=null;function xb(a){a=a.target||a.srcElement||window;a.correspondingUseElement&&(a=a.correspondingUseElement);return 3===a.nodeType?a.parentNode:a}var yb=null,zb=null,Ab=null;\nfunction Bb(a){if(a=Cb(a)){if(\"function\"!==typeof yb)throw Error(p(280));var b=a.stateNode;b&&(b=Db(b),yb(a.stateNode,a.type,b))}}function Eb(a){zb?Ab?Ab.push(a):Ab=[a]:zb=a}function Fb(){if(zb){var a=zb,b=Ab;Ab=zb=null;Bb(a);if(b)for(a=0;a>>=0;return 0===a?32:31-(pc(a)/qc|0)|0}var rc=64,sc=4194304;\nfunction tc(a){switch(a&-a){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 a&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return a&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;\ndefault:return a}}function uc(a,b){var c=a.pendingLanes;if(0===c)return 0;var d=0,e=a.suspendedLanes,f=a.pingedLanes,g=c&268435455;if(0!==g){var h=g&~e;0!==h?d=tc(h):(f&=g,0!==f&&(d=tc(f)))}else g=c&~e,0!==g?d=tc(g):0!==f&&(d=tc(f));if(0===d)return 0;if(0!==b&&b!==d&&0===(b&e)&&(e=d&-d,f=b&-b,e>=f||16===e&&0!==(f&4194240)))return b;0!==(d&4)&&(d|=c&16);b=a.entangledLanes;if(0!==b)for(a=a.entanglements,b&=d;0c;c++)b.push(a);return b}\nfunction Ac(a,b,c){a.pendingLanes|=b;536870912!==b&&(a.suspendedLanes=0,a.pingedLanes=0);a=a.eventTimes;b=31-oc(b);a[b]=c}function Bc(a,b){var c=a.pendingLanes&~b;a.pendingLanes=b;a.suspendedLanes=0;a.pingedLanes=0;a.expiredLanes&=b;a.mutableReadLanes&=b;a.entangledLanes&=b;b=a.entanglements;var d=a.eventTimes;for(a=a.expirationTimes;0=be),ee=String.fromCharCode(32),fe=!1;\nfunction ge(a,b){switch(a){case \"keyup\":return-1!==$d.indexOf(b.keyCode);case \"keydown\":return 229!==b.keyCode;case \"keypress\":case \"mousedown\":case \"focusout\":return!0;default:return!1}}function he(a){a=a.detail;return\"object\"===typeof a&&\"data\"in a?a.data:null}var ie=!1;function je(a,b){switch(a){case \"compositionend\":return he(b);case \"keypress\":if(32!==b.which)return null;fe=!0;return ee;case \"textInput\":return a=b.data,a===ee&&fe?null:a;default:return null}}\nfunction ke(a,b){if(ie)return\"compositionend\"===a||!ae&&ge(a,b)?(a=nd(),md=ld=kd=null,ie=!1,a):null;switch(a){case \"paste\":return null;case \"keypress\":if(!(b.ctrlKey||b.altKey||b.metaKey)||b.ctrlKey&&b.altKey){if(b.char&&1=b)return{node:c,offset:b-a};a=d}a:{for(;c;){if(c.nextSibling){c=c.nextSibling;break a}c=c.parentNode}c=void 0}c=Je(c)}}function Le(a,b){return a&&b?a===b?!0:a&&3===a.nodeType?!1:b&&3===b.nodeType?Le(a,b.parentNode):\"contains\"in a?a.contains(b):a.compareDocumentPosition?!!(a.compareDocumentPosition(b)&16):!1:!1}\nfunction Me(){for(var a=window,b=Xa();b instanceof a.HTMLIFrameElement;){try{var c=\"string\"===typeof b.contentWindow.location.href}catch(d){c=!1}if(c)a=b.contentWindow;else break;b=Xa(a.document)}return b}function Ne(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return b&&(\"input\"===b&&(\"text\"===a.type||\"search\"===a.type||\"tel\"===a.type||\"url\"===a.type||\"password\"===a.type)||\"textarea\"===b||\"true\"===a.contentEditable)}\nfunction Oe(a){var b=Me(),c=a.focusedElem,d=a.selectionRange;if(b!==c&&c&&c.ownerDocument&&Le(c.ownerDocument.documentElement,c)){if(null!==d&&Ne(c))if(b=d.start,a=d.end,void 0===a&&(a=b),\"selectionStart\"in c)c.selectionStart=b,c.selectionEnd=Math.min(a,c.value.length);else if(a=(b=c.ownerDocument||document)&&b.defaultView||window,a.getSelection){a=a.getSelection();var e=c.textContent.length,f=Math.min(d.start,e);d=void 0===d.end?f:Math.min(d.end,e);!a.extend&&f>d&&(e=d,d=f,f=e);e=Ke(c,f);var g=Ke(c,\nd);e&&g&&(1!==a.rangeCount||a.anchorNode!==e.node||a.anchorOffset!==e.offset||a.focusNode!==g.node||a.focusOffset!==g.offset)&&(b=b.createRange(),b.setStart(e.node,e.offset),a.removeAllRanges(),f>d?(a.addRange(b),a.extend(g.node,g.offset)):(b.setEnd(g.node,g.offset),a.addRange(b)))}b=[];for(a=c;a=a.parentNode;)1===a.nodeType&&b.push({element:a,left:a.scrollLeft,top:a.scrollTop});\"function\"===typeof c.focus&&c.focus();for(c=0;c=document.documentMode,Qe=null,Re=null,Se=null,Te=!1;\nfunction Ue(a,b,c){var d=c.window===c?c.document:9===c.nodeType?c:c.ownerDocument;Te||null==Qe||Qe!==Xa(d)||(d=Qe,\"selectionStart\"in d&&Ne(d)?d={start:d.selectionStart,end:d.selectionEnd}:(d=(d.ownerDocument&&d.ownerDocument.defaultView||window).getSelection(),d={anchorNode:d.anchorNode,anchorOffset:d.anchorOffset,focusNode:d.focusNode,focusOffset:d.focusOffset}),Se&&Ie(Se,d)||(Se=d,d=oe(Re,\"onSelect\"),0Tf||(a.current=Sf[Tf],Sf[Tf]=null,Tf--)}function G(a,b){Tf++;Sf[Tf]=a.current;a.current=b}var Vf={},H=Uf(Vf),Wf=Uf(!1),Xf=Vf;function Yf(a,b){var c=a.type.contextTypes;if(!c)return Vf;var d=a.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===b)return d.__reactInternalMemoizedMaskedChildContext;var e={},f;for(f in c)e[f]=b[f];d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=b,a.__reactInternalMemoizedMaskedChildContext=e);return e}\nfunction Zf(a){a=a.childContextTypes;return null!==a&&void 0!==a}function $f(){E(Wf);E(H)}function ag(a,b,c){if(H.current!==Vf)throw Error(p(168));G(H,b);G(Wf,c)}function bg(a,b,c){var d=a.stateNode;b=b.childContextTypes;if(\"function\"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in b))throw Error(p(108,Ra(a)||\"Unknown\",e));return A({},c,d)}\nfunction cg(a){a=(a=a.stateNode)&&a.__reactInternalMemoizedMergedChildContext||Vf;Xf=H.current;G(H,a);G(Wf,Wf.current);return!0}function dg(a,b,c){var d=a.stateNode;if(!d)throw Error(p(169));c?(a=bg(a,b,Xf),d.__reactInternalMemoizedMergedChildContext=a,E(Wf),E(H),G(H,a)):E(Wf);G(Wf,c)}var eg=null,fg=!1,gg=!1;function hg(a){null===eg?eg=[a]:eg.push(a)}function ig(a){fg=!0;hg(a)}\nfunction jg(){if(!gg&&null!==eg){gg=!0;var a=0,b=C;try{var c=eg;for(C=1;a>=g;e-=g;rg=1<<32-oc(b)+e|c<w?(x=u,u=null):x=u.sibling;var n=r(e,u,h[w],k);if(null===n){null===u&&(u=x);break}a&&u&&null===n.alternate&&b(e,u);g=f(n,g,w);null===m?l=n:m.sibling=n;m=n;u=x}if(w===h.length)return c(e,u),I&&tg(e,w),l;if(null===u){for(;ww?(x=m,m=null):x=m.sibling;var t=r(e,m,n.value,k);if(null===t){null===m&&(m=x);break}a&&m&&null===t.alternate&&b(e,m);g=f(t,g,w);null===u?l=t:u.sibling=t;u=t;m=x}if(n.done)return c(e,\nm),I&&tg(e,w),l;if(null===m){for(;!n.done;w++,n=h.next())n=q(e,n.value,k),null!==n&&(g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);I&&tg(e,w);return l}for(m=d(e,m);!n.done;w++,n=h.next())n=y(m,e,w,n.value,k),null!==n&&(a&&null!==n.alternate&&m.delete(null===n.key?w:n.key),g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);a&&m.forEach(function(a){return b(e,a)});I&&tg(e,w);return l}function J(a,d,f,h){\"object\"===typeof f&&null!==f&&f.type===ya&&null===f.key&&(f=f.props.children);if(\"object\"===typeof f&&null!==f){switch(f.$$typeof){case va:a:{for(var k=\nf.key,l=d;null!==l;){if(l.key===k){k=f.type;if(k===ya){if(7===l.tag){c(a,l.sibling);d=e(l,f.props.children);d.return=a;a=d;break a}}else if(l.elementType===k||\"object\"===typeof k&&null!==k&&k.$$typeof===Ha&&uh(k)===l.type){c(a,l.sibling);d=e(l,f.props);d.ref=sh(a,l,f);d.return=a;a=d;break a}c(a,l);break}else b(a,l);l=l.sibling}f.type===ya?(d=Ah(f.props.children,a.mode,h,f.key),d.return=a,a=d):(h=yh(f.type,f.key,f.props,null,a.mode,h),h.ref=sh(a,d,f),h.return=a,a=h)}return g(a);case wa:a:{for(l=f.key;null!==\nd;){if(d.key===l)if(4===d.tag&&d.stateNode.containerInfo===f.containerInfo&&d.stateNode.implementation===f.implementation){c(a,d.sibling);d=e(d,f.children||[]);d.return=a;a=d;break a}else{c(a,d);break}else b(a,d);d=d.sibling}d=zh(f,a.mode,h);d.return=a;a=d}return g(a);case Ha:return l=f._init,J(a,d,l(f._payload),h)}if(eb(f))return n(a,d,f,h);if(Ka(f))return t(a,d,f,h);th(a,f)}return\"string\"===typeof f&&\"\"!==f||\"number\"===typeof f?(f=\"\"+f,null!==d&&6===d.tag?(c(a,d.sibling),d=e(d,f),d.return=a,a=d):\n(c(a,d),d=xh(f,a.mode,h),d.return=a,a=d),g(a)):c(a,d)}return J}var Bh=vh(!0),Ch=vh(!1),Dh={},Eh=Uf(Dh),Fh=Uf(Dh),Gh=Uf(Dh);function Hh(a){if(a===Dh)throw Error(p(174));return a}function Ih(a,b){G(Gh,b);G(Fh,a);G(Eh,Dh);a=b.nodeType;switch(a){case 9:case 11:b=(b=b.documentElement)?b.namespaceURI:lb(null,\"\");break;default:a=8===a?b.parentNode:b,b=a.namespaceURI||null,a=a.tagName,b=lb(b,a)}E(Eh);G(Eh,b)}function Jh(){E(Eh);E(Fh);E(Gh)}\nfunction Kh(a){Hh(Gh.current);var b=Hh(Eh.current);var c=lb(b,a.type);b!==c&&(G(Fh,a),G(Eh,c))}function Lh(a){Fh.current===a&&(E(Eh),E(Fh))}var M=Uf(0);\nfunction Mh(a){for(var b=a;null!==b;){if(13===b.tag){var c=b.memoizedState;if(null!==c&&(c=c.dehydrated,null===c||\"$?\"===c.data||\"$!\"===c.data))return b}else if(19===b.tag&&void 0!==b.memoizedProps.revealOrder){if(0!==(b.flags&128))return b}else if(null!==b.child){b.child.return=b;b=b.child;continue}if(b===a)break;for(;null===b.sibling;){if(null===b.return||b.return===a)return null;b=b.return}b.sibling.return=b.return;b=b.sibling}return null}var Nh=[];\nfunction Oh(){for(var a=0;ac?c:4;a(!0);var d=Qh.transition;Qh.transition={};try{a(!1),b()}finally{C=c,Qh.transition=d}}function Fi(){return di().memoizedState}\nfunction Gi(a,b,c){var d=lh(a);c={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(Hi(a))Ii(b,c);else if(c=Yg(a,b,c,d),null!==c){var e=L();mh(c,a,d,e);Ji(c,b,d)}}\nfunction ri(a,b,c){var d=lh(a),e={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(Hi(a))Ii(b,e);else{var f=a.alternate;if(0===a.lanes&&(null===f||0===f.lanes)&&(f=b.lastRenderedReducer,null!==f))try{var g=b.lastRenderedState,h=f(g,c);e.hasEagerState=!0;e.eagerState=h;if(He(h,g)){var k=b.interleaved;null===k?(e.next=e,Xg(b)):(e.next=k.next,k.next=e);b.interleaved=e;return}}catch(l){}finally{}c=Yg(a,b,e,d);null!==c&&(e=L(),mh(c,a,d,e),Ji(c,b,d))}}\nfunction Hi(a){var b=a.alternate;return a===N||null!==b&&b===N}function Ii(a,b){Th=Sh=!0;var c=a.pending;null===c?b.next=b:(b.next=c.next,c.next=b);a.pending=b}function Ji(a,b,c){if(0!==(c&4194240)){var d=b.lanes;d&=a.pendingLanes;c|=d;b.lanes=c;Cc(a,c)}}\nvar ai={readContext:Vg,useCallback:Q,useContext:Q,useEffect:Q,useImperativeHandle:Q,useInsertionEffect:Q,useLayoutEffect:Q,useMemo:Q,useReducer:Q,useRef:Q,useState:Q,useDebugValue:Q,useDeferredValue:Q,useTransition:Q,useMutableSource:Q,useSyncExternalStore:Q,useId:Q,unstable_isNewReconciler:!1},Yh={readContext:Vg,useCallback:function(a,b){ci().memoizedState=[a,void 0===b?null:b];return a},useContext:Vg,useEffect:vi,useImperativeHandle:function(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return ti(4194308,\n4,yi.bind(null,b,a),c)},useLayoutEffect:function(a,b){return ti(4194308,4,a,b)},useInsertionEffect:function(a,b){return ti(4,2,a,b)},useMemo:function(a,b){var c=ci();b=void 0===b?null:b;a=a();c.memoizedState=[a,b];return a},useReducer:function(a,b,c){var d=ci();b=void 0!==c?c(b):b;d.memoizedState=d.baseState=b;a={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:a,lastRenderedState:b};d.queue=a;a=a.dispatch=Gi.bind(null,N,a);return[d.memoizedState,a]},useRef:function(a){var b=\nci();a={current:a};return b.memoizedState=a},useState:qi,useDebugValue:Ai,useDeferredValue:function(a){return ci().memoizedState=a},useTransition:function(){var a=qi(!1),b=a[0];a=Ei.bind(null,a[1]);ci().memoizedState=a;return[b,a]},useMutableSource:function(){},useSyncExternalStore:function(a,b,c){var d=N,e=ci();if(I){if(void 0===c)throw Error(p(407));c=c()}else{c=b();if(null===R)throw Error(p(349));0!==(Rh&30)||ni(d,b,c)}e.memoizedState=c;var f={value:c,getSnapshot:b};e.queue=f;vi(ki.bind(null,d,\nf,a),[a]);d.flags|=2048;li(9,mi.bind(null,d,f,c,b),void 0,null);return c},useId:function(){var a=ci(),b=R.identifierPrefix;if(I){var c=sg;var d=rg;c=(d&~(1<<32-oc(d)-1)).toString(32)+c;b=\":\"+b+\"R\"+c;c=Uh++;0\\x3c/script>\",a=a.removeChild(a.firstChild)):\n\"string\"===typeof d.is?a=g.createElement(c,{is:d.is}):(a=g.createElement(c),\"select\"===c&&(g=a,d.multiple?g.multiple=!0:d.size&&(g.size=d.size))):a=g.createElementNS(a,c);a[Of]=b;a[Pf]=d;Aj(a,b,!1,!1);b.stateNode=a;a:{g=vb(c,d);switch(c){case \"dialog\":D(\"cancel\",a);D(\"close\",a);e=d;break;case \"iframe\":case \"object\":case \"embed\":D(\"load\",a);e=d;break;case \"video\":case \"audio\":for(e=0;eHj&&(b.flags|=128,d=!0,Ej(f,!1),b.lanes=4194304)}else{if(!d)if(a=Mh(g),null!==a){if(b.flags|=128,d=!0,c=a.updateQueue,null!==c&&(b.updateQueue=c,b.flags|=4),Ej(f,!0),null===f.tail&&\"hidden\"===f.tailMode&&!g.alternate&&!I)return S(b),null}else 2*B()-f.renderingStartTime>Hj&&1073741824!==c&&(b.flags|=128,d=!0,Ej(f,!1),b.lanes=4194304);f.isBackwards?(g.sibling=b.child,b.child=g):(c=f.last,null!==c?c.sibling=g:b.child=g,f.last=g)}if(null!==f.tail)return b=f.tail,f.rendering=\nb,f.tail=b.sibling,f.renderingStartTime=B(),b.sibling=null,c=M.current,G(M,d?c&1|2:c&1),b;S(b);return null;case 22:case 23:return Ij(),d=null!==b.memoizedState,null!==a&&null!==a.memoizedState!==d&&(b.flags|=8192),d&&0!==(b.mode&1)?0!==(gj&1073741824)&&(S(b),b.subtreeFlags&6&&(b.flags|=8192)):S(b),null;case 24:return null;case 25:return null}throw Error(p(156,b.tag));}\nfunction Jj(a,b){wg(b);switch(b.tag){case 1:return Zf(b.type)&&$f(),a=b.flags,a&65536?(b.flags=a&-65537|128,b):null;case 3:return Jh(),E(Wf),E(H),Oh(),a=b.flags,0!==(a&65536)&&0===(a&128)?(b.flags=a&-65537|128,b):null;case 5:return Lh(b),null;case 13:E(M);a=b.memoizedState;if(null!==a&&null!==a.dehydrated){if(null===b.alternate)throw Error(p(340));Ig()}a=b.flags;return a&65536?(b.flags=a&-65537|128,b):null;case 19:return E(M),null;case 4:return Jh(),null;case 10:return Rg(b.type._context),null;case 22:case 23:return Ij(),\nnull;case 24:return null;default:return null}}var Kj=!1,U=!1,Lj=\"function\"===typeof WeakSet?WeakSet:Set,V=null;function Mj(a,b){var c=a.ref;if(null!==c)if(\"function\"===typeof c)try{c(null)}catch(d){W(a,b,d)}else c.current=null}function Nj(a,b,c){try{c()}catch(d){W(a,b,d)}}var Oj=!1;\nfunction Pj(a,b){Cf=dd;a=Me();if(Ne(a)){if(\"selectionStart\"in a)var c={start:a.selectionStart,end:a.selectionEnd};else a:{c=(c=a.ownerDocument)&&c.defaultView||window;var d=c.getSelection&&c.getSelection();if(d&&0!==d.rangeCount){c=d.anchorNode;var e=d.anchorOffset,f=d.focusNode;d=d.focusOffset;try{c.nodeType,f.nodeType}catch(F){c=null;break a}var g=0,h=-1,k=-1,l=0,m=0,q=a,r=null;b:for(;;){for(var y;;){q!==c||0!==e&&3!==q.nodeType||(h=g+e);q!==f||0!==d&&3!==q.nodeType||(k=g+d);3===q.nodeType&&(g+=\nq.nodeValue.length);if(null===(y=q.firstChild))break;r=q;q=y}for(;;){if(q===a)break b;r===c&&++l===e&&(h=g);r===f&&++m===d&&(k=g);if(null!==(y=q.nextSibling))break;q=r;r=q.parentNode}q=y}c=-1===h||-1===k?null:{start:h,end:k}}else c=null}c=c||{start:0,end:0}}else c=null;Df={focusedElem:a,selectionRange:c};dd=!1;for(V=b;null!==V;)if(b=V,a=b.child,0!==(b.subtreeFlags&1028)&&null!==a)a.return=b,V=a;else for(;null!==V;){b=V;try{var n=b.alternate;if(0!==(b.flags&1024))switch(b.tag){case 0:case 11:case 15:break;\ncase 1:if(null!==n){var t=n.memoizedProps,J=n.memoizedState,x=b.stateNode,w=x.getSnapshotBeforeUpdate(b.elementType===b.type?t:Lg(b.type,t),J);x.__reactInternalSnapshotBeforeUpdate=w}break;case 3:var u=b.stateNode.containerInfo;1===u.nodeType?u.textContent=\"\":9===u.nodeType&&u.documentElement&&u.removeChild(u.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(p(163));}}catch(F){W(b,b.return,F)}a=b.sibling;if(null!==a){a.return=b.return;V=a;break}V=b.return}n=Oj;Oj=!1;return n}\nfunction Qj(a,b,c){var d=b.updateQueue;d=null!==d?d.lastEffect:null;if(null!==d){var e=d=d.next;do{if((e.tag&a)===a){var f=e.destroy;e.destroy=void 0;void 0!==f&&Nj(b,c,f)}e=e.next}while(e!==d)}}function Rj(a,b){b=b.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){var c=b=b.next;do{if((c.tag&a)===a){var d=c.create;c.destroy=d()}c=c.next}while(c!==b)}}function Sj(a){var b=a.ref;if(null!==b){var c=a.stateNode;switch(a.tag){case 5:a=c;break;default:a=c}\"function\"===typeof b?b(a):b.current=a}}\nfunction Tj(a){var b=a.alternate;null!==b&&(a.alternate=null,Tj(b));a.child=null;a.deletions=null;a.sibling=null;5===a.tag&&(b=a.stateNode,null!==b&&(delete b[Of],delete b[Pf],delete b[of],delete b[Qf],delete b[Rf]));a.stateNode=null;a.return=null;a.dependencies=null;a.memoizedProps=null;a.memoizedState=null;a.pendingProps=null;a.stateNode=null;a.updateQueue=null}function Uj(a){return 5===a.tag||3===a.tag||4===a.tag}\nfunction Vj(a){a:for(;;){for(;null===a.sibling;){if(null===a.return||Uj(a.return))return null;a=a.return}a.sibling.return=a.return;for(a=a.sibling;5!==a.tag&&6!==a.tag&&18!==a.tag;){if(a.flags&2)continue a;if(null===a.child||4===a.tag)continue a;else a.child.return=a,a=a.child}if(!(a.flags&2))return a.stateNode}}\nfunction Wj(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,b?8===c.nodeType?c.parentNode.insertBefore(a,b):c.insertBefore(a,b):(8===c.nodeType?(b=c.parentNode,b.insertBefore(a,c)):(b=c,b.appendChild(a)),c=c._reactRootContainer,null!==c&&void 0!==c||null!==b.onclick||(b.onclick=Bf));else if(4!==d&&(a=a.child,null!==a))for(Wj(a,b,c),a=a.sibling;null!==a;)Wj(a,b,c),a=a.sibling}\nfunction Xj(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,b?c.insertBefore(a,b):c.appendChild(a);else if(4!==d&&(a=a.child,null!==a))for(Xj(a,b,c),a=a.sibling;null!==a;)Xj(a,b,c),a=a.sibling}var X=null,Yj=!1;function Zj(a,b,c){for(c=c.child;null!==c;)ak(a,b,c),c=c.sibling}\nfunction ak(a,b,c){if(lc&&\"function\"===typeof lc.onCommitFiberUnmount)try{lc.onCommitFiberUnmount(kc,c)}catch(h){}switch(c.tag){case 5:U||Mj(c,b);case 6:var d=X,e=Yj;X=null;Zj(a,b,c);X=d;Yj=e;null!==X&&(Yj?(a=X,c=c.stateNode,8===a.nodeType?a.parentNode.removeChild(c):a.removeChild(c)):X.removeChild(c.stateNode));break;case 18:null!==X&&(Yj?(a=X,c=c.stateNode,8===a.nodeType?Kf(a.parentNode,c):1===a.nodeType&&Kf(a,c),bd(a)):Kf(X,c.stateNode));break;case 4:d=X;e=Yj;X=c.stateNode.containerInfo;Yj=!0;\nZj(a,b,c);X=d;Yj=e;break;case 0:case 11:case 14:case 15:if(!U&&(d=c.updateQueue,null!==d&&(d=d.lastEffect,null!==d))){e=d=d.next;do{var f=e,g=f.destroy;f=f.tag;void 0!==g&&(0!==(f&2)?Nj(c,b,g):0!==(f&4)&&Nj(c,b,g));e=e.next}while(e!==d)}Zj(a,b,c);break;case 1:if(!U&&(Mj(c,b),d=c.stateNode,\"function\"===typeof d.componentWillUnmount))try{d.props=c.memoizedProps,d.state=c.memoizedState,d.componentWillUnmount()}catch(h){W(c,b,h)}Zj(a,b,c);break;case 21:Zj(a,b,c);break;case 22:c.mode&1?(U=(d=U)||null!==\nc.memoizedState,Zj(a,b,c),U=d):Zj(a,b,c);break;default:Zj(a,b,c)}}function bk(a){var b=a.updateQueue;if(null!==b){a.updateQueue=null;var c=a.stateNode;null===c&&(c=a.stateNode=new Lj);b.forEach(function(b){var d=ck.bind(null,a,b);c.has(b)||(c.add(b),b.then(d,d))})}}\nfunction dk(a,b){var c=b.deletions;if(null!==c)for(var d=0;de&&(e=g);d&=~f}d=e;d=B()-d;d=(120>d?120:480>d?480:1080>d?1080:1920>d?1920:3E3>d?3E3:4320>d?4320:1960*mk(d/1960))-d;if(10a?16:a;if(null===xk)var d=!1;else{a=xk;xk=null;yk=0;if(0!==(K&6))throw Error(p(331));var e=K;K|=4;for(V=a.current;null!==V;){var f=V,g=f.child;if(0!==(V.flags&16)){var h=f.deletions;if(null!==h){for(var k=0;kB()-gk?Lk(a,0):sk|=c);Ek(a,b)}function Zk(a,b){0===b&&(0===(a.mode&1)?b=1:(b=sc,sc<<=1,0===(sc&130023424)&&(sc=4194304)));var c=L();a=Zg(a,b);null!==a&&(Ac(a,b,c),Ek(a,c))}function vj(a){var b=a.memoizedState,c=0;null!==b&&(c=b.retryLane);Zk(a,c)}\nfunction ck(a,b){var c=0;switch(a.tag){case 13:var d=a.stateNode;var e=a.memoizedState;null!==e&&(c=e.retryLane);break;case 19:d=a.stateNode;break;default:throw Error(p(314));}null!==d&&d.delete(b);Zk(a,c)}var Wk;\nWk=function(a,b,c){if(null!==a)if(a.memoizedProps!==b.pendingProps||Wf.current)Ug=!0;else{if(0===(a.lanes&c)&&0===(b.flags&128))return Ug=!1,zj(a,b,c);Ug=0!==(a.flags&131072)?!0:!1}else Ug=!1,I&&0!==(b.flags&1048576)&&ug(b,ng,b.index);b.lanes=0;switch(b.tag){case 2:var d=b.type;jj(a,b);a=b.pendingProps;var e=Yf(b,H.current);Tg(b,c);e=Xh(null,b,d,a,e,c);var f=bi();b.flags|=1;\"object\"===typeof e&&null!==e&&\"function\"===typeof e.render&&void 0===e.$$typeof?(b.tag=1,b.memoizedState=null,b.updateQueue=\nnull,Zf(d)?(f=!0,cg(b)):f=!1,b.memoizedState=null!==e.state&&void 0!==e.state?e.state:null,ah(b),e.updater=nh,b.stateNode=e,e._reactInternals=b,rh(b,d,a,c),b=kj(null,b,d,!0,f,c)):(b.tag=0,I&&f&&vg(b),Yi(null,b,e,c),b=b.child);return b;case 16:d=b.elementType;a:{jj(a,b);a=b.pendingProps;e=d._init;d=e(d._payload);b.type=d;e=b.tag=$k(d);a=Lg(d,a);switch(e){case 0:b=dj(null,b,d,a,c);break a;case 1:b=ij(null,b,d,a,c);break a;case 11:b=Zi(null,b,d,a,c);break a;case 14:b=aj(null,b,d,Lg(d.type,a),c);break a}throw Error(p(306,\nd,\"\"));}return b;case 0:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Lg(d,e),dj(a,b,d,e,c);case 1:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Lg(d,e),ij(a,b,d,e,c);case 3:a:{lj(b);if(null===a)throw Error(p(387));d=b.pendingProps;f=b.memoizedState;e=f.element;bh(a,b);gh(b,d,null,c);var g=b.memoizedState;d=g.element;if(f.isDehydrated)if(f={element:d,isDehydrated:!1,cache:g.cache,pendingSuspenseBoundaries:g.pendingSuspenseBoundaries,transitions:g.transitions},b.updateQueue.baseState=\nf,b.memoizedState=f,b.flags&256){e=Ki(Error(p(423)),b);b=mj(a,b,d,c,e);break a}else if(d!==e){e=Ki(Error(p(424)),b);b=mj(a,b,d,c,e);break a}else for(yg=Lf(b.stateNode.containerInfo.firstChild),xg=b,I=!0,zg=null,c=Ch(b,null,d,c),b.child=c;c;)c.flags=c.flags&-3|4096,c=c.sibling;else{Ig();if(d===e){b=$i(a,b,c);break a}Yi(a,b,d,c)}b=b.child}return b;case 5:return Kh(b),null===a&&Eg(b),d=b.type,e=b.pendingProps,f=null!==a?a.memoizedProps:null,g=e.children,Ef(d,e)?g=null:null!==f&&Ef(d,f)&&(b.flags|=32),\nhj(a,b),Yi(a,b,g,c),b.child;case 6:return null===a&&Eg(b),null;case 13:return pj(a,b,c);case 4:return Ih(b,b.stateNode.containerInfo),d=b.pendingProps,null===a?b.child=Bh(b,null,d,c):Yi(a,b,d,c),b.child;case 11:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Lg(d,e),Zi(a,b,d,e,c);case 7:return Yi(a,b,b.pendingProps,c),b.child;case 8:return Yi(a,b,b.pendingProps.children,c),b.child;case 12:return Yi(a,b,b.pendingProps.children,c),b.child;case 10:a:{d=b.type._context;e=b.pendingProps;f=b.memoizedProps;\ng=e.value;G(Mg,d._currentValue);d._currentValue=g;if(null!==f)if(He(f.value,g)){if(f.children===e.children&&!Wf.current){b=$i(a,b,c);break a}}else for(f=b.child,null!==f&&(f.return=b);null!==f;){var h=f.dependencies;if(null!==h){g=f.child;for(var k=h.firstContext;null!==k;){if(k.context===d){if(1===f.tag){k=ch(-1,c&-c);k.tag=2;var l=f.updateQueue;if(null!==l){l=l.shared;var m=l.pending;null===m?k.next=k:(k.next=m.next,m.next=k);l.pending=k}}f.lanes|=c;k=f.alternate;null!==k&&(k.lanes|=c);Sg(f.return,\nc,b);h.lanes|=c;break}k=k.next}}else if(10===f.tag)g=f.type===b.type?null:f.child;else if(18===f.tag){g=f.return;if(null===g)throw Error(p(341));g.lanes|=c;h=g.alternate;null!==h&&(h.lanes|=c);Sg(g,c,b);g=f.sibling}else g=f.child;if(null!==g)g.return=f;else for(g=f;null!==g;){if(g===b){g=null;break}f=g.sibling;if(null!==f){f.return=g.return;g=f;break}g=g.return}f=g}Yi(a,b,e.children,c);b=b.child}return b;case 9:return e=b.type,d=b.pendingProps.children,Tg(b,c),e=Vg(e),d=d(e),b.flags|=1,Yi(a,b,d,c),\nb.child;case 14:return d=b.type,e=Lg(d,b.pendingProps),e=Lg(d.type,e),aj(a,b,d,e,c);case 15:return cj(a,b,b.type,b.pendingProps,c);case 17:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Lg(d,e),jj(a,b),b.tag=1,Zf(d)?(a=!0,cg(b)):a=!1,Tg(b,c),ph(b,d,e),rh(b,d,e,c),kj(null,b,d,!0,a,c);case 19:return yj(a,b,c);case 22:return ej(a,b,c)}throw Error(p(156,b.tag));};function Gk(a,b){return ac(a,b)}\nfunction al(a,b,c,d){this.tag=a;this.key=c;this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null;this.index=0;this.ref=null;this.pendingProps=b;this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null;this.mode=d;this.subtreeFlags=this.flags=0;this.deletions=null;this.childLanes=this.lanes=0;this.alternate=null}function Bg(a,b,c,d){return new al(a,b,c,d)}function bj(a){a=a.prototype;return!(!a||!a.isReactComponent)}\nfunction $k(a){if(\"function\"===typeof a)return bj(a)?1:0;if(void 0!==a&&null!==a){a=a.$$typeof;if(a===Da)return 11;if(a===Ga)return 14}return 2}\nfunction wh(a,b){var c=a.alternate;null===c?(c=Bg(a.tag,b,a.key,a.mode),c.elementType=a.elementType,c.type=a.type,c.stateNode=a.stateNode,c.alternate=a,a.alternate=c):(c.pendingProps=b,c.type=a.type,c.flags=0,c.subtreeFlags=0,c.deletions=null);c.flags=a.flags&14680064;c.childLanes=a.childLanes;c.lanes=a.lanes;c.child=a.child;c.memoizedProps=a.memoizedProps;c.memoizedState=a.memoizedState;c.updateQueue=a.updateQueue;b=a.dependencies;c.dependencies=null===b?null:{lanes:b.lanes,firstContext:b.firstContext};\nc.sibling=a.sibling;c.index=a.index;c.ref=a.ref;return c}\nfunction yh(a,b,c,d,e,f){var g=2;d=a;if(\"function\"===typeof a)bj(a)&&(g=1);else if(\"string\"===typeof a)g=5;else a:switch(a){case ya:return Ah(c.children,e,f,b);case za:g=8;e|=8;break;case Aa:return a=Bg(12,c,b,e|2),a.elementType=Aa,a.lanes=f,a;case Ea:return a=Bg(13,c,b,e),a.elementType=Ea,a.lanes=f,a;case Fa:return a=Bg(19,c,b,e),a.elementType=Fa,a.lanes=f,a;case Ia:return qj(c,e,f,b);default:if(\"object\"===typeof a&&null!==a)switch(a.$$typeof){case Ba:g=10;break a;case Ca:g=9;break a;case Da:g=11;\nbreak a;case Ga:g=14;break a;case Ha:g=16;d=null;break a}throw Error(p(130,null==a?a:typeof a,\"\"));}b=Bg(g,c,b,e);b.elementType=a;b.type=d;b.lanes=f;return b}function Ah(a,b,c,d){a=Bg(7,a,d,b);a.lanes=c;return a}function qj(a,b,c,d){a=Bg(22,a,d,b);a.elementType=Ia;a.lanes=c;a.stateNode={isHidden:!1};return a}function xh(a,b,c){a=Bg(6,a,null,b);a.lanes=c;return a}\nfunction zh(a,b,c){b=Bg(4,null!==a.children?a.children:[],a.key,b);b.lanes=c;b.stateNode={containerInfo:a.containerInfo,pendingChildren:null,implementation:a.implementation};return b}\nfunction bl(a,b,c,d,e){this.tag=b;this.containerInfo=a;this.finishedWork=this.pingCache=this.current=this.pendingChildren=null;this.timeoutHandle=-1;this.callbackNode=this.pendingContext=this.context=null;this.callbackPriority=0;this.eventTimes=zc(0);this.expirationTimes=zc(-1);this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0;this.entanglements=zc(0);this.identifierPrefix=d;this.onRecoverableError=e;this.mutableSourceEagerHydrationData=\nnull}function cl(a,b,c,d,e,f,g,h,k){a=new bl(a,b,c,h,k);1===b?(b=1,!0===f&&(b|=8)):b=0;f=Bg(3,null,null,b);a.current=f;f.stateNode=a;f.memoizedState={element:d,isDehydrated:c,cache:null,transitions:null,pendingSuspenseBoundaries:null};ah(f);return a}function dl(a,b,c){var d=3 {\n if (this.unmounting) {\n return;\n }\n if (!this.el) {\n throw new Error('Missing element reference');\n }\n // eslint-disable-next-line consistent-return\n return Plotly.react(this.el, {\n data: this.props.data,\n layout: this.props.layout,\n config: this.props.config,\n frames: this.props.frames,\n });\n })\n .then(() => {\n if (this.unmounting) {\n return;\n }\n this.syncWindowResize(shouldInvokeResizeHandler);\n this.syncEventHandlers();\n this.figureCallback(figureCallbackFunction);\n if (shouldAttachUpdateEvents) {\n this.attachUpdateEvents();\n }\n })\n .catch((err) => {\n if (this.props.onError) {\n this.props.onError(err);\n }\n });\n }\n\n componentDidMount() {\n this.unmounting = false;\n\n this.updatePlotly(true, this.props.onInitialized, true);\n }\n\n componentDidUpdate(prevProps) {\n this.unmounting = false;\n\n // frames *always* changes identity so fall back to check length only :(\n const numPrevFrames =\n prevProps.frames && prevProps.frames.length ? prevProps.frames.length : 0;\n const numNextFrames =\n this.props.frames && this.props.frames.length ? this.props.frames.length : 0;\n\n const figureChanged = !(\n prevProps.layout === this.props.layout &&\n prevProps.data === this.props.data &&\n prevProps.config === this.props.config &&\n numNextFrames === numPrevFrames\n );\n const revisionDefined = prevProps.revision !== void 0;\n const revisionChanged = prevProps.revision !== this.props.revision;\n\n if (!figureChanged && (!revisionDefined || (revisionDefined && !revisionChanged))) {\n return;\n }\n\n this.updatePlotly(false, this.props.onUpdate, false);\n }\n\n componentWillUnmount() {\n this.unmounting = true;\n\n this.figureCallback(this.props.onPurge);\n\n if (this.resizeHandler && isBrowser) {\n window.removeEventListener('resize', this.resizeHandler);\n this.resizeHandler = null;\n }\n\n this.removeUpdateEvents();\n\n Plotly.purge(this.el);\n }\n\n attachUpdateEvents() {\n if (!this.el || !this.el.removeListener) {\n return;\n }\n\n updateEvents.forEach((updateEvent) => {\n this.el.on(updateEvent, this.handleUpdate);\n });\n }\n\n removeUpdateEvents() {\n if (!this.el || !this.el.removeListener) {\n return;\n }\n\n updateEvents.forEach((updateEvent) => {\n this.el.removeListener(updateEvent, this.handleUpdate);\n });\n }\n\n handleUpdate() {\n this.figureCallback(this.props.onUpdate);\n }\n\n figureCallback(callback) {\n if (typeof callback === 'function') {\n const {data, layout} = this.el;\n const frames = this.el._transitionData ? this.el._transitionData._frames : null;\n const figure = {data, layout, frames};\n callback(figure, this.el);\n }\n }\n\n syncWindowResize(invoke) {\n if (!isBrowser) {\n return;\n }\n\n if (this.props.useResizeHandler && !this.resizeHandler) {\n this.resizeHandler = () => Plotly.Plots.resize(this.el);\n window.addEventListener('resize', this.resizeHandler);\n if (invoke) {\n this.resizeHandler();\n }\n } else if (!this.props.useResizeHandler && this.resizeHandler) {\n window.removeEventListener('resize', this.resizeHandler);\n this.resizeHandler = null;\n }\n }\n\n getRef(el) {\n this.el = el;\n\n if (this.props.debug && isBrowser) {\n window.gd = this.el;\n }\n }\n\n // Attach and remove event handlers as they're added or removed from props:\n syncEventHandlers() {\n eventNames.forEach((eventName) => {\n const prop = this.props['on' + eventName];\n const handler = this.handlers[eventName];\n const hasHandler = Boolean(handler);\n\n if (prop && !hasHandler) {\n this.addEventHandler(eventName, prop);\n } else if (!prop && hasHandler) {\n // Needs to be removed:\n this.removeEventHandler(eventName);\n } else if (prop && hasHandler && prop !== handler) {\n // replace the handler\n this.removeEventHandler(eventName);\n this.addEventHandler(eventName, prop);\n }\n });\n }\n\n addEventHandler(eventName, prop) {\n this.handlers[eventName] = prop;\n this.el.on(this.getPlotlyEventName(eventName), this.handlers[eventName]);\n }\n\n removeEventHandler(eventName) {\n this.el.removeListener(this.getPlotlyEventName(eventName), this.handlers[eventName]);\n delete this.handlers[eventName];\n }\n\n getPlotlyEventName(eventName) {\n return 'plotly_' + eventName.toLowerCase();\n }\n\n render() {\n return (\n \n );\n }\n }\n\n PlotlyComponent.propTypes = {\n data: PropTypes.arrayOf(PropTypes.object),\n config: PropTypes.object,\n layout: PropTypes.object,\n frames: PropTypes.arrayOf(PropTypes.object),\n revision: PropTypes.number,\n onInitialized: PropTypes.func,\n onPurge: PropTypes.func,\n onError: PropTypes.func,\n onUpdate: PropTypes.func,\n debug: PropTypes.bool,\n style: PropTypes.object,\n className: PropTypes.string,\n useResizeHandler: PropTypes.bool,\n divId: PropTypes.string,\n };\n\n eventNames.forEach((eventName) => {\n PlotlyComponent.propTypes['on' + eventName] = PropTypes.func;\n });\n\n PlotlyComponent.defaultProps = {\n debug: false,\n useResizeHandler: false,\n data: [],\n style: {position: 'relative', display: 'inline-block'},\n };\n\n return PlotlyComponent;\n}\n","import plotComponentFactory from './factory';\nimport Plotly from 'plotly.js/dist/plotly';\n\nconst PlotComponent = plotComponentFactory(Plotly);\n\nexport default PlotComponent;\n","/**\n * @license React\n * react-jsx-runtime.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var f=require(\"react\"),k=Symbol.for(\"react.element\"),l=Symbol.for(\"react.fragment\"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0};\nfunction q(c,a,g){var b,d={},e=null,h=null;void 0!==g&&(e=\"\"+g);void 0!==a.key&&(e=\"\"+a.key);void 0!==a.ref&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)void 0===d[b]&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}exports.Fragment=l;exports.jsx=q;exports.jsxs=q;\n","/**\n * @license React\n * react.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var l=Symbol.for(\"react.element\"),n=Symbol.for(\"react.portal\"),p=Symbol.for(\"react.fragment\"),q=Symbol.for(\"react.strict_mode\"),r=Symbol.for(\"react.profiler\"),t=Symbol.for(\"react.provider\"),u=Symbol.for(\"react.context\"),v=Symbol.for(\"react.forward_ref\"),w=Symbol.for(\"react.suspense\"),x=Symbol.for(\"react.memo\"),y=Symbol.for(\"react.lazy\"),z=Symbol.iterator;function A(a){if(null===a||\"object\"!==typeof a)return null;a=z&&a[z]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}\nvar B={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,D={};function E(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}E.prototype.isReactComponent={};\nE.prototype.setState=function(a,b){if(\"object\"!==typeof a&&\"function\"!==typeof a&&null!=a)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,a,b,\"setState\")};E.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,\"forceUpdate\")};function F(){}F.prototype=E.prototype;function G(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}var H=G.prototype=new F;\nH.constructor=G;C(H,E.prototype);H.isPureReactComponent=!0;var I=Array.isArray,J=Object.prototype.hasOwnProperty,K={current:null},L={key:!0,ref:!0,__self:!0,__source:!0};\nfunction M(a,b,e){var d,c={},k=null,h=null;if(null!=b)for(d in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(k=\"\"+b.key),b)J.call(b,d)&&!L.hasOwnProperty(d)&&(c[d]=b[d]);var g=arguments.length-2;if(1===g)c.children=e;else if(1>>1,e=a[d];if(0>>1;dg(C,c))ng(x,C)?(a[d]=x,a[n]=c,d=n):(a[d]=C,a[m]=c,d=m);else if(ng(x,c))a[d]=x,a[n]=c,d=n;else break a}}return b}\nfunction g(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}if(\"object\"===typeof performance&&\"function\"===typeof performance.now){var l=performance;exports.unstable_now=function(){return l.now()}}else{var p=Date,q=p.now();exports.unstable_now=function(){return p.now()-q}}var r=[],t=[],u=1,v=null,y=3,z=!1,A=!1,B=!1,D=\"function\"===typeof setTimeout?setTimeout:null,E=\"function\"===typeof clearTimeout?clearTimeout:null,F=\"undefined\"!==typeof setImmediate?setImmediate:null;\n\"undefined\"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function G(a){for(var b=h(t);null!==b;){if(null===b.callback)k(t);else if(b.startTime<=a)k(t),b.sortIndex=b.expirationTime,f(r,b);else break;b=h(t)}}function H(a){B=!1;G(a);if(!A)if(null!==h(r))A=!0,I(J);else{var b=h(t);null!==b&&K(H,b.startTime-a)}}\nfunction J(a,b){A=!1;B&&(B=!1,E(L),L=-1);z=!0;var c=y;try{G(b);for(v=h(r);null!==v&&(!(v.expirationTime>b)||a&&!M());){var d=v.callback;if(\"function\"===typeof d){v.callback=null;y=v.priorityLevel;var e=d(v.expirationTime<=b);b=exports.unstable_now();\"function\"===typeof e?v.callback=e:v===h(r)&&k(r);G(b)}else k(r);v=h(r)}if(null!==v)var w=!0;else{var m=h(t);null!==m&&K(H,m.startTime-b);w=!1}return w}finally{v=null,y=c,z=!1}}var N=!1,O=null,L=-1,P=5,Q=-1;\nfunction M(){return exports.unstable_now()-Qa||125d?(a.sortIndex=c,f(t,a),null===h(r)&&a===h(t)&&(B?(E(L),L=-1):B=!0,K(H,c-d))):(a.sortIndex=e,f(r,a),A||z||(A=!0,I(J)));return a};\nexports.unstable_shouldYield=M;exports.unstable_wrapCallback=function(a){var b=y;return function(){var c=y;y=b;try{return a.apply(this,arguments)}finally{y=c}}};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar __DEV__ = process.env.NODE_ENV !== 'production';\n\nvar warning = function() {};\n\nif (__DEV__) {\n var printWarning = function printWarning(format, args) {\n var len = arguments.length;\n args = new Array(len > 1 ? len - 1 : 0);\n for (var key = 1; key < len; key++) {\n args[key - 1] = arguments[key];\n }\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n }\n\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n if (!condition) {\n printWarning.apply(null, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n","/**\n * Copyright 2020 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nmodule.exports = Worker;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"static/js/\" + chunkId + \".\" + \"c1112931\" + \".chunk.js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn undefined;\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"app:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t};\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"/\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t179: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n// no on chunks loaded\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkapp\"] = self[\"webpackChunkapp\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","export default function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nimport possibleConstructorReturn from \"./possibleConstructorReturn.js\";\nexport default function _createSuper(Derived) {\n var hasNativeReflectConstruct = isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = getPrototypeOf(Derived),\n result;\n if (hasNativeReflectConstruct) {\n var NewTarget = getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return possibleConstructorReturn(this, result);\n };\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","import defineProperty from \"./defineProperty.js\";\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n return keys;\n}\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n return target;\n}","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","const _excluded = [\"as\", \"disabled\"];\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport * as React from 'react';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport function isTrivialHref(href) {\n return !href || href.trim() === '#';\n}\nexport function useButtonProps({\n tagName,\n disabled,\n href,\n target,\n rel,\n role,\n onClick,\n tabIndex = 0,\n type\n}) {\n if (!tagName) {\n if (href != null || target != null || rel != null) {\n tagName = 'a';\n } else {\n tagName = 'button';\n }\n }\n const meta = {\n tagName\n };\n if (tagName === 'button') {\n return [{\n type: type || 'button',\n disabled\n }, meta];\n }\n const handleClick = event => {\n if (disabled || tagName === 'a' && isTrivialHref(href)) {\n event.preventDefault();\n }\n if (disabled) {\n event.stopPropagation();\n return;\n }\n onClick == null ? void 0 : onClick(event);\n };\n const handleKeyDown = event => {\n if (event.key === ' ') {\n event.preventDefault();\n handleClick(event);\n }\n };\n if (tagName === 'a') {\n // Ensure there's a href so Enter can trigger anchor button.\n href || (href = '#');\n if (disabled) {\n href = undefined;\n }\n }\n return [{\n role: role != null ? role : 'button',\n // explicitly undefined so that it overrides the props disabled in a spread\n // e.g. \n disabled: undefined,\n tabIndex: disabled ? undefined : tabIndex,\n href,\n target: tagName === 'a' ? target : undefined,\n 'aria-disabled': !disabled ? undefined : disabled,\n rel: tagName === 'a' ? rel : undefined,\n onClick: handleClick,\n onKeyDown: handleKeyDown\n }, meta];\n}\nconst Button = /*#__PURE__*/React.forwardRef((_ref, ref) => {\n let {\n as: asProp,\n disabled\n } = _ref,\n props = _objectWithoutPropertiesLoose(_ref, _excluded);\n const [buttonProps, {\n tagName: Component\n }] = useButtonProps(Object.assign({\n tagName: asProp,\n disabled\n }, props));\n return /*#__PURE__*/_jsx(Component, Object.assign({}, props, buttonProps, {\n ref: ref\n }));\n});\nButton.displayName = 'Button';\nexport default Button;","import * as React from 'react';\nimport { useContext, useMemo } from 'react';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const DEFAULT_BREAKPOINTS = ['xxl', 'xl', 'lg', 'md', 'sm', 'xs'];\nexport const DEFAULT_MIN_BREAKPOINT = 'xs';\nconst ThemeContext = /*#__PURE__*/React.createContext({\n prefixes: {},\n breakpoints: DEFAULT_BREAKPOINTS,\n minBreakpoint: DEFAULT_MIN_BREAKPOINT\n});\nconst {\n Consumer,\n Provider\n} = ThemeContext;\nfunction ThemeProvider({\n prefixes = {},\n breakpoints = DEFAULT_BREAKPOINTS,\n minBreakpoint = DEFAULT_MIN_BREAKPOINT,\n dir,\n children\n}) {\n const contextValue = useMemo(() => ({\n prefixes: {\n ...prefixes\n },\n breakpoints,\n minBreakpoint,\n dir\n }), [prefixes, breakpoints, minBreakpoint, dir]);\n return /*#__PURE__*/_jsx(Provider, {\n value: contextValue,\n children: children\n });\n}\nexport function useBootstrapPrefix(prefix, defaultPrefix) {\n const {\n prefixes\n } = useContext(ThemeContext);\n return prefix || prefixes[defaultPrefix] || defaultPrefix;\n}\nexport function useBootstrapBreakpoints() {\n const {\n breakpoints\n } = useContext(ThemeContext);\n return breakpoints;\n}\nexport function useBootstrapMinBreakpoint() {\n const {\n minBreakpoint\n } = useContext(ThemeContext);\n return minBreakpoint;\n}\nexport function useIsRTL() {\n const {\n dir\n } = useContext(ThemeContext);\n return dir === 'rtl';\n}\nfunction createBootstrapComponent(Component, opts) {\n if (typeof opts === 'string') opts = {\n prefix: opts\n };\n const isClassy = Component.prototype && Component.prototype.isReactComponent;\n // If it's a functional component make sure we don't break it with a ref\n const {\n prefix,\n forwardRefAs = isClassy ? 'ref' : 'innerRef'\n } = opts;\n const Wrapped = /*#__PURE__*/React.forwardRef(({\n ...props\n }, ref) => {\n props[forwardRefAs] = ref;\n const bsPrefix = useBootstrapPrefix(props.bsPrefix, prefix);\n return /*#__PURE__*/_jsx(Component, {\n ...props,\n bsPrefix: bsPrefix\n });\n });\n Wrapped.displayName = `Bootstrap(${Component.displayName || Component.name})`;\n return Wrapped;\n}\nexport { createBootstrapComponent, Consumer as ThemeConsumer };\nexport default ThemeProvider;","import classNames from 'classnames';\nimport * as React from 'react';\nimport { useButtonProps } from '@restart/ui/Button';\nimport { useBootstrapPrefix } from './ThemeProvider';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst defaultProps = {\n variant: 'primary',\n active: false,\n disabled: false\n};\nconst Button = /*#__PURE__*/React.forwardRef(({\n as,\n bsPrefix,\n variant,\n size,\n active,\n className,\n ...props\n}, ref) => {\n const prefix = useBootstrapPrefix(bsPrefix, 'btn');\n const [buttonProps, {\n tagName\n }] = useButtonProps({\n tagName: as,\n ...props\n });\n const Component = tagName;\n return /*#__PURE__*/_jsx(Component, {\n ...buttonProps,\n ...props,\n ref: ref,\n className: classNames(className, prefix, active && 'active', variant && `${prefix}-${variant}`, size && `${prefix}-${size}`, props.href && props.disabled && 'disabled')\n });\n});\nButton.displayName = 'Button';\nButton.defaultProps = defaultProps;\nexport default Button;","// -* - coding: utf - 8 -* -\n// Copyright(c) 2023 Intel Corporation\n//\n// Licensed under the Apache License, Version 2.0(the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport React, { useEffect, useState } from 'react';\nimport './Graph.scss';\nimport { getLabel, customColor } from './../Diagnosis/Diagnosis';\nimport Button from 'react-bootstrap/Button';\nimport { api } from './../../App';\n\nconst cytoscape = require('cytoscape');\nconst nodeHtmlLabel = require('cytoscape-node-html-label');\ncytoscape.use(nodeHtmlLabel);\nconst elk = require('cytoscape-elk');\ncytoscape.use(elk);\n\nexport default function Graph({ setSelectedNode, selectedWorkload, selectedOp, selectedPattern, setWarningText }) {\n const [graph, setGraph] = useState(null);\n const [groupNode, setGroupNode] = useState([]);\n const groupNodeOpList = [];\n\n useEffect(() => {\n if (selectedWorkload) {\n const payload = {\n workload_id: selectedWorkload.uuid,\n path: [selectedWorkload.model_path],\n ...((groupNode.length || groupNodeOpList.length) && { group: [...groupNode, ...groupNodeOpList] })\n };\n api.post('api/model/graph?token=' + localStorage.getItem('token'), payload)\n .then(\n response => {\n setGraph(response.data);\n })\n .catch(error => {\n setWarningText(error.message);\n });\n }\n }, [selectedWorkload, groupNode]);\n\n useEffect(() => {\n if (selectedOp) {\n api.post('api/model/graph/highlight_pattern?token=' + localStorage.getItem('token'), {\n workload_id: selectedWorkload.uuid,\n path: [selectedWorkload.model_path],\n op_name: selectedOp,\n pattern: selectedPattern,\n ...((groupNode.length || groupNodeOpList.length) && { group: [...groupNode, ...groupNodeOpList] })\n })\n .then(\n response => {\n setGraph(response.data.graph);\n groupNodeOpList.push(...response.data.groups);\n })\n .catch(error => {\n setWarningText(error.message);\n });\n }\n }, [selectedPattern]);\n\n return (\n
\n \n
\n )\n};\n\nclass CytoGraph extends React.Component {\n constructor(props) {\n super(props);\n this.renderCytoscapeElement = this.renderCytoscapeElement.bind(this);\n }\n\n handleCallback = (childData) => {\n switch (childData) {\n case 'fit':\n this.cy.fit();\n break;\n case 'center':\n this.cy.center();\n break;\n case 'reset':\n this.cy.reset();\n break;\n default:\n break;\n }\n }\n\n renderCytoscapeElement() {\n const elements = getElements(this.props.graph);\n this.cy =\n cytoscape({\n container: document.getElementById('cy'),\n elements,\n style: [{\n selector: 'node',\n style: {\n 'background-color': 'data(color)',\n 'border-color': 'data(border_color)',\n 'border-width': '3px',\n color: '#fff',\n label: 'data(label)',\n shape: 'round-rectangle',\n 'text-valign': 'center',\n 'text-halign': 'center',\n width: (node) => node.data('label').length * 12,\n }\n },\n {\n selector: 'edge',\n style: {\n 'font-size': '10px',\n 'source-text-offset': '10px',\n 'target-text-offset': '10px',\n width: 3,\n 'line-color': '#ccc',\n 'target-arrow-color': '#ccc',\n 'target-arrow-shape': 'triangle',\n 'curve-style': 'taxi',\n }\n },\n {\n selector: 'node',\n css: {\n 'font-family': 'IntelClearRg',\n }\n },\n {\n selector: 'node.selected',\n css: {\n 'border-color': '#00c7fd'\n }\n },\n {\n selector: 'node.hover',\n css: {\n 'border-color': '#B1BABF',\n 'border-style': 'dashed',\n }\n },\n {\n selector: 'node[node_type = \\'group_node\\']',\n css: {\n color: 'black'\n }\n },\n {\n selector: 'node[highlight = \\'true\\']',\n css: {\n 'border-color': '#FEC91B'\n }\n }\n ],\n layout: {\n name: 'elk',\n animate: true,\n elk: {\n 'algorithm': 'layered',\n 'elk.direction': 'DOWN'\n }\n }\n });\n\n this.cy.nodeHtmlLabel([\n {\n query: 'node[node_type = \"group_node\"]',\n halign: 'right',\n valign: 'bottom',\n cssClass: 'plus-sign',\n tpl: (data) => '
'\n }\n ]);\n\n this.cy.on('click', (event) => {\n if (event.target._private.data.node_type === 'group_node') {\n this.props.setGroupNode([...this.props.groupNode, event.target._private.data.id]);\n }\n });\n\n this.cy.on('mouseover', 'node', e => {\n e.target.addClass('hover');\n });\n\n this.cy.on('mouseout', 'node', e => {\n e.target.removeClass('hover');\n });\n\n this.cy.on('tap', 'node', e => {\n this.cy.elements('node:selected').removeClass('selected');\n if (e.target._private.data.node_type === 'node') {\n e.target.addClass('selected');\n this.props.setSelectedNode(e.target._private.data);\n }\n });\n\n setTimeout(() => {\n if (this.cy.elements('node[highlight = \\'true\\']').length) {\n this.cy.reset();\n this.cy.center(this.cy.elements('node[highlight = \\'true\\']')[0]);\n } else {\n this.cy.zoom({\n level: 2.0\n });\n this.cy.center();\n }\n }, 1000);\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.graph !== this.props.graph) {\n this.renderCytoscapeElement();\n }\n }\n\n componentDidMount() {\n if (this.props.graph) {\n this.renderCytoscapeElement();\n }\n }\n\n collapseNode(nodeName) {\n const newExpandedNodes = this.props.groupNode.filter(x => x !== nodeName);\n this.props.setGroupNode(newExpandedNodes);\n }\n\n render() {\n return (\n
\n
\n \n {this.props.groupNode.length > 0 &&\n
\n \n \n \n \n \n \n {this.props.groupNode.map(groupNode => {\n return (\n \n \n \n \n )\n })}\n \n
Expanded groups
{groupNode.replace('node_group_', '')} this.collapseNode(groupNode)} className=\"clickable\" tooltip=\"Collapse this group\">✕
\n
\n }\n
\n
\n
\n
\n )\n }\n}\n\nclass GraphButtons extends React.Component {\n onTrigger = (event) => {\n this.props.parentCallback(event.target.id);\n event.preventDefault();\n }\n\n render() {\n return (\n
\n \n \n \n
\n )\n }\n}\n\nconst getElements = (graph) => {\n const elements = [];\n graph.nodes.forEach(node => {\n elements.push({\n data: {\n id: node.id,\n label: getLabel(node.label),\n parent: node.parent,\n attributes: node.attributes,\n properties: node.properties,\n node_type: node.node_type,\n highlight: String(node.highlight),\n border_color: node.node_type === 'group_node' ? '#5B69FF' : customColor[getHash(node.label)],\n color: node.node_type === 'group_node' ? '#fff' : customColor[getHash(node.label)],\n },\n grabbable: false,\n });\n });\n graph.edges.forEach(edge => {\n elements.push({\n data: {\n source: edge.source,\n target: edge.target,\n }\n });\n });\n return elements;\n}\n\nfunction getHash(input) {\n var hash = 0, len = input.length;\n for (var i = 0; i < len; i++) {\n hash = ((hash << 5) - hash) + input.charCodeAt(i);\n hash |= 0;\n }\n hash = Math.abs(hash);\n return hash % customColor.length;\n}\n\n","// -* - coding: utf - 8 -* -\n// Copyright(c) 2023 Intel Corporation\n//\n// Licensed under the Apache License, Version 2.0(the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport React, { useEffect, useState } from 'react';\nimport './OpDetails.scss';\nimport Button from 'react-bootstrap/esm/Button';\nimport { api } from './../../App';\n\nexport default function OpDetails({ selectedWorkload, selectedOp, setHistogramType, setSelectedPattern, setWarningText }) {\n const [opDetails, setOpDetails] = useState({\n \"OP name\": \"\",\n \"Pattern\": {\n \"sequence\": [],\n \"precision\": \"\"\n },\n \"Weights\": {\n \"dtype\": \"\",\n \"granularity\": \"\"\n },\n \"Activation\": {\n \"dtype\": \"\"\n }\n });\n\n useEffect(() => {\n if (selectedOp?.length) {\n api.post('api/diagnosis/op_details?token=' + localStorage.getItem('token'), { workload_id: selectedWorkload.uuid, op_name: selectedOp })\n .then(\n response => {\n setOpDetails(response.data);\n setSelectedPattern(response.data.Pattern.sequence);\n setHistogramType(null);\n })\n .catch(error => {\n setWarningText(error.message);\n });\n }\n }, [selectedOp]);\n\n return (\n
\n

OP details

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
OP name{opDetails['OP name']}
Pattern
Sequence\n {opDetails.Pattern.sequence.map(\n sequence => {\n return {sequence} \n }\n )}\n
Precision{opDetails.Pattern.precision}
\n Weights\n
Dtype{opDetails.Weights.dtype}\n \n
Granularity{opDetails.Weights.granularity}
\n Activation\n
Dtype{opDetails.Activation.dtype}\n \n
\n
\n );\n}\n","import classNames from 'classnames';\nimport * as React from 'react';\nimport { useBootstrapPrefix } from './ThemeProvider';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst Table = /*#__PURE__*/React.forwardRef(({\n bsPrefix,\n className,\n striped,\n bordered,\n borderless,\n hover,\n size,\n variant,\n responsive,\n ...props\n}, ref) => {\n const decoratedBsPrefix = useBootstrapPrefix(bsPrefix, 'table');\n const classes = classNames(className, decoratedBsPrefix, variant && `${decoratedBsPrefix}-${variant}`, size && `${decoratedBsPrefix}-${size}`, striped && `${decoratedBsPrefix}-${typeof striped === 'string' ? `striped-${striped}` : 'striped'}`, bordered && `${decoratedBsPrefix}-bordered`, borderless && `${decoratedBsPrefix}-borderless`, hover && `${decoratedBsPrefix}-hover`);\n const table = /*#__PURE__*/_jsx(\"table\", {\n ...props,\n className: classes,\n ref: ref\n });\n if (responsive) {\n let responsiveClass = `${decoratedBsPrefix}-responsive`;\n if (typeof responsive === 'string') {\n responsiveClass = `${responsiveClass}-${responsive}`;\n }\n return /*#__PURE__*/_jsx(\"div\", {\n className: responsiveClass,\n children: table\n });\n }\n return table;\n});\nexport default Table;","// -* - coding: utf - 8 -* -\n// Copyright(c) 2023 Intel Corporation\n//\n// Licensed under the Apache License, Version 2.0(the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport React, { useEffect, useState } from 'react';\nimport { api } from '../../App';\nimport Table from 'react-bootstrap/Table';\n\nexport default function OpList({ selectedWorkload, setSelectedOp, selectedOp, setWarningText }) {\n const [opList, setOpList] = useState([]);\n\n useEffect(() => {\n if (selectedWorkload) {\n setOpList([]);\n api.post('api/diagnosis/op_list?token=' + localStorage.getItem('token'), { workload_id: selectedWorkload.uuid })\n .then(\n response => {\n setOpList(response.data);\n })\n .catch(error => {\n if (selectedWorkload?.status !== 'wip') {\n setWarningText(error.message + ': ' + error?.response?.data);\n }\n });\n }\n }, [selectedWorkload, selectedOp]);\n\n const tableContent =\n opList.map(opData => {\n return (\n {\n setSelectedOp(opData['OP name']);\n setTimeout(() => {\n document.getElementById('opDetails').scrollIntoView({ behavior: 'smooth' });\n }, 500)\n }}>\n {opData['OP name']}\n {opData['MSE'].toExponential(3)}\n {opData['Activation Min'].toFixed(2)}\n {opData['Activation Max'].toFixed(2)}\n \n )\n });\n\n return (\n
\n {opList.length > 0 &&\n \n \n \n \n \n \n \n \n \n \n {tableContent}\n \n
OP NameMSEActivation MinActivation Max
\n }\n
\n );\n}","import classNames from 'classnames';\nimport * as React from 'react';\nimport { useBootstrapPrefix } from './ThemeProvider';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst Spinner = /*#__PURE__*/React.forwardRef(({\n bsPrefix,\n variant,\n animation = 'border',\n size,\n // Need to define the default \"as\" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595\n as: Component = 'div',\n className,\n ...props\n}, ref) => {\n bsPrefix = useBootstrapPrefix(bsPrefix, 'spinner');\n const bsSpinnerPrefix = `${bsPrefix}-${animation}`;\n return /*#__PURE__*/_jsx(Component, {\n ref: ref,\n ...props,\n className: classNames(className, bsSpinnerPrefix, size && `${bsSpinnerPrefix}-${size}`, variant && `text-${variant}`)\n });\n});\nSpinner.displayName = 'Spinner';\nexport default Spinner;","// -* - coding: utf - 8 -* -\n// Copyright(c) 2023 Intel Corporation\n//\n// Licensed under the Apache License, Version 2.0(the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport React, { useEffect, useState } from 'react';\nimport './Histogram.scss';\nimport Plot from 'react-plotly.js';\nimport { api } from './../../App';\nimport Spinner from 'react-bootstrap/Spinner';\n\nfunction Histogram({ selectedWorkload, selectedOp, histogramType, setWarningText }) {\n const [histogramData, setHistogramData] = useState(null);\n\n useEffect(() => {\n if (selectedOp.length && histogramType.length) {\n setHistogramData(null);\n api.post('api/diagnosis/histogram?token=' + localStorage.getItem('token'), { workload_id: selectedWorkload.uuid, op_name: selectedOp, type: histogramType })\n .then(\n response => {\n setHistogramData(response.data);\n })\n .catch(error => {\n setWarningText(error.message);\n });\n }\n }, [histogramType, selectedOp]);\n\n return (\n
\n

Histogram

\n {!histogramData && }\n\n {histogramData?.length === 0 &&

No histogram data for this OP.

}\n\n {histogramData?.length > 0 &&\n
\n
\n When you hover over the chart a menu will appear in the top right corner.
\n You can zoom the chart, save it as .png file or hide channels by clicking them in the legend.\n
\n\n
\n \n \n
\n
\n }\n
\n )\n};\n\nconst getHistogramData = (histogramData) => {\n const data = [];\n if (histogramData.length) {\n const colorPalette = generateColor(histogramData[0].histograms.length);\n histogramData[0].histograms.forEach((series, index) => {\n data.push(\n {\n x: series.data,\n type: 'violin',\n orientation: 'h',\n side: 'negative',\n y0: 'channel ' + index,\n name: 'channel ' + index,\n width: 100,\n opacity: 0.8,\n fillcolor: colorPalette[index],\n hoverinfo: 'none',\n line: {\n width: 1,\n color: series.data.length === 1 ? colorPalette[index] : '#fff',\n },\n points: false\n }\n );\n });\n }\n return data;\n}\n\nconst layout = {\n height: 356,\n responsive: true,\n yaxis: {\n autorange: 'reversed',\n showgrid: true,\n },\n legend: {\n tracegroupgap: 0,\n },\n violinmode: 'overlay',\n opacity: 1,\n // margin: {\n // l: 150,\n // r: 50,\n // b: 100,\n // t: 50,\n // pad: 40\n // }\n};\n\nconst generateColor = (num) => {\n const colorPalette = [];\n const step = 100 / num;\n for (let i = num; i > 0; --i) {\n colorPalette.push(`rgb(${20 + (step * i)}, ${100 - (step * i * 0.1)}, ${200 - (step * i * 0.1)})`);\n }\n return colorPalette;\n}\n\nHistogram.propTypes = {};\n\nHistogram.defaultProps = {};\n\nexport default Histogram;\n","import superPropBase from \"./superPropBase.js\";\nexport default function _get() {\n if (typeof Reflect !== \"undefined\" && Reflect.get) {\n _get = Reflect.get.bind();\n } else {\n _get = function _get(target, property, receiver) {\n var base = superPropBase(target, property);\n if (!base) return;\n var desc = Object.getOwnPropertyDescriptor(base, property);\n if (desc.get) {\n return desc.get.call(arguments.length < 3 ? target : receiver);\n }\n return desc.value;\n };\n }\n return _get.apply(this, arguments);\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nexport default function _superPropBase(object, property) {\n while (!Object.prototype.hasOwnProperty.call(object, property)) {\n object = getPrototypeOf(object);\n if (object === null) break;\n }\n return object;\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nexport default function _construct(Parent, args, Class) {\n if (isNativeReflectConstruct()) {\n _construct = Reflect.construct.bind();\n } else {\n _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) setPrototypeOf(instance, Class.prototype);\n return instance;\n };\n }\n return _construct.apply(null, arguments);\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeFunction from \"./isNativeFunction.js\";\nimport construct from \"./construct.js\";\nexport default function _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !isNativeFunction(Class)) return Class;\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n _cache.set(Class, Wrapper);\n }\n function Wrapper() {\n return construct(Class, arguments, getPrototypeOf(this).constructor);\n }\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return setPrototypeOf(Wrapper, Class);\n };\n return _wrapNativeSuper(Class);\n}","export default function _isNativeFunction(fn) {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n}","const PACKET_TYPES = Object.create(null); // no Map = no polyfill\nPACKET_TYPES[\"open\"] = \"0\";\nPACKET_TYPES[\"close\"] = \"1\";\nPACKET_TYPES[\"ping\"] = \"2\";\nPACKET_TYPES[\"pong\"] = \"3\";\nPACKET_TYPES[\"message\"] = \"4\";\nPACKET_TYPES[\"upgrade\"] = \"5\";\nPACKET_TYPES[\"noop\"] = \"6\";\nconst PACKET_TYPES_REVERSE = Object.create(null);\nObject.keys(PACKET_TYPES).forEach(key => {\n PACKET_TYPES_REVERSE[PACKET_TYPES[key]] = key;\n});\nconst ERROR_PACKET = { type: \"error\", data: \"parser error\" };\nexport { PACKET_TYPES, PACKET_TYPES_REVERSE, ERROR_PACKET };\n","// imported from https://github.com/socketio/base64-arraybuffer\nconst chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n// Use a lookup table to find the index.\nconst lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\nfor (let i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n}\nexport const encode = (arraybuffer) => {\n let bytes = new Uint8Array(arraybuffer), i, len = bytes.length, base64 = '';\n for (i = 0; i < len; i += 3) {\n base64 += chars[bytes[i] >> 2];\n base64 += chars[((bytes[i] & 3) << 4) | (bytes[i + 1] >> 4)];\n base64 += chars[((bytes[i + 1] & 15) << 2) | (bytes[i + 2] >> 6)];\n base64 += chars[bytes[i + 2] & 63];\n }\n if (len % 3 === 2) {\n base64 = base64.substring(0, base64.length - 1) + '=';\n }\n else if (len % 3 === 1) {\n base64 = base64.substring(0, base64.length - 2) + '==';\n }\n return base64;\n};\nexport const decode = (base64) => {\n let bufferLength = base64.length * 0.75, len = base64.length, i, p = 0, encoded1, encoded2, encoded3, encoded4;\n if (base64[base64.length - 1] === '=') {\n bufferLength--;\n if (base64[base64.length - 2] === '=') {\n bufferLength--;\n }\n }\n const arraybuffer = new ArrayBuffer(bufferLength), bytes = new Uint8Array(arraybuffer);\n for (i = 0; i < len; i += 4) {\n encoded1 = lookup[base64.charCodeAt(i)];\n encoded2 = lookup[base64.charCodeAt(i + 1)];\n encoded3 = lookup[base64.charCodeAt(i + 2)];\n encoded4 = lookup[base64.charCodeAt(i + 3)];\n bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);\n bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);\n bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);\n }\n return arraybuffer;\n};\n","import { PACKET_TYPES } from \"./commons.js\";\nconst withNativeBlob = typeof Blob === \"function\" ||\n (typeof Blob !== \"undefined\" &&\n Object.prototype.toString.call(Blob) === \"[object BlobConstructor]\");\nconst withNativeArrayBuffer = typeof ArrayBuffer === \"function\";\n// ArrayBuffer.isView method is not defined in IE10\nconst isView = obj => {\n return typeof ArrayBuffer.isView === \"function\"\n ? ArrayBuffer.isView(obj)\n : obj && obj.buffer instanceof ArrayBuffer;\n};\nconst encodePacket = ({ type, data }, supportsBinary, callback) => {\n if (withNativeBlob && data instanceof Blob) {\n if (supportsBinary) {\n return callback(data);\n }\n else {\n return encodeBlobAsBase64(data, callback);\n }\n }\n else if (withNativeArrayBuffer &&\n (data instanceof ArrayBuffer || isView(data))) {\n if (supportsBinary) {\n return callback(data);\n }\n else {\n return encodeBlobAsBase64(new Blob([data]), callback);\n }\n }\n // plain string\n return callback(PACKET_TYPES[type] + (data || \"\"));\n};\nconst encodeBlobAsBase64 = (data, callback) => {\n const fileReader = new FileReader();\n fileReader.onload = function () {\n const content = fileReader.result.split(\",\")[1];\n callback(\"b\" + (content || \"\"));\n };\n return fileReader.readAsDataURL(data);\n};\nexport default encodePacket;\n","import { ERROR_PACKET, PACKET_TYPES_REVERSE } from \"./commons.js\";\nimport { decode } from \"./contrib/base64-arraybuffer.js\";\nconst withNativeArrayBuffer = typeof ArrayBuffer === \"function\";\nconst decodePacket = (encodedPacket, binaryType) => {\n if (typeof encodedPacket !== \"string\") {\n return {\n type: \"message\",\n data: mapBinary(encodedPacket, binaryType)\n };\n }\n const type = encodedPacket.charAt(0);\n if (type === \"b\") {\n return {\n type: \"message\",\n data: decodeBase64Packet(encodedPacket.substring(1), binaryType)\n };\n }\n const packetType = PACKET_TYPES_REVERSE[type];\n if (!packetType) {\n return ERROR_PACKET;\n }\n return encodedPacket.length > 1\n ? {\n type: PACKET_TYPES_REVERSE[type],\n data: encodedPacket.substring(1)\n }\n : {\n type: PACKET_TYPES_REVERSE[type]\n };\n};\nconst decodeBase64Packet = (data, binaryType) => {\n if (withNativeArrayBuffer) {\n const decoded = decode(data);\n return mapBinary(decoded, binaryType);\n }\n else {\n return { base64: true, data }; // fallback for old browsers\n }\n};\nconst mapBinary = (data, binaryType) => {\n switch (binaryType) {\n case \"blob\":\n return data instanceof ArrayBuffer ? new Blob([data]) : data;\n case \"arraybuffer\":\n default:\n return data; // assuming the data is already an ArrayBuffer\n }\n};\nexport default decodePacket;\n","import encodePacket from \"./encodePacket.js\";\nimport decodePacket from \"./decodePacket.js\";\nconst SEPARATOR = String.fromCharCode(30); // see https://en.wikipedia.org/wiki/Delimiter#ASCII_delimited_text\nconst encodePayload = (packets, callback) => {\n // some packets may be added to the array while encoding, so the initial length must be saved\n const length = packets.length;\n const encodedPackets = new Array(length);\n let count = 0;\n packets.forEach((packet, i) => {\n // force base64 encoding for binary packets\n encodePacket(packet, false, encodedPacket => {\n encodedPackets[i] = encodedPacket;\n if (++count === length) {\n callback(encodedPackets.join(SEPARATOR));\n }\n });\n });\n};\nconst decodePayload = (encodedPayload, binaryType) => {\n const encodedPackets = encodedPayload.split(SEPARATOR);\n const packets = [];\n for (let i = 0; i < encodedPackets.length; i++) {\n const decodedPacket = decodePacket(encodedPackets[i], binaryType);\n packets.push(decodedPacket);\n if (decodedPacket.type === \"error\") {\n break;\n }\n }\n return packets;\n};\nexport const protocol = 4;\nexport { encodePacket, encodePayload, decodePacket, decodePayload };\n","/**\n * Initialize a new `Emitter`.\n *\n * @api public\n */\n\nexport function Emitter(obj) {\n if (obj) return mixin(obj);\n}\n\n/**\n * Mixin the emitter properties.\n *\n * @param {Object} obj\n * @return {Object}\n * @api private\n */\n\nfunction mixin(obj) {\n for (var key in Emitter.prototype) {\n obj[key] = Emitter.prototype[key];\n }\n return obj;\n}\n\n/**\n * Listen on the given `event` with `fn`.\n *\n * @param {String} event\n * @param {Function} fn\n * @return {Emitter}\n * @api public\n */\n\nEmitter.prototype.on =\nEmitter.prototype.addEventListener = function(event, fn){\n this._callbacks = this._callbacks || {};\n (this._callbacks['$' + event] = this._callbacks['$' + event] || [])\n .push(fn);\n return this;\n};\n\n/**\n * Adds an `event` listener that will be invoked a single\n * time then automatically removed.\n *\n * @param {String} event\n * @param {Function} fn\n * @return {Emitter}\n * @api public\n */\n\nEmitter.prototype.once = function(event, fn){\n function on() {\n this.off(event, on);\n fn.apply(this, arguments);\n }\n\n on.fn = fn;\n this.on(event, on);\n return this;\n};\n\n/**\n * Remove the given callback for `event` or all\n * registered callbacks.\n *\n * @param {String} event\n * @param {Function} fn\n * @return {Emitter}\n * @api public\n */\n\nEmitter.prototype.off =\nEmitter.prototype.removeListener =\nEmitter.prototype.removeAllListeners =\nEmitter.prototype.removeEventListener = function(event, fn){\n this._callbacks = this._callbacks || {};\n\n // all\n if (0 == arguments.length) {\n this._callbacks = {};\n return this;\n }\n\n // specific event\n var callbacks = this._callbacks['$' + event];\n if (!callbacks) return this;\n\n // remove all handlers\n if (1 == arguments.length) {\n delete this._callbacks['$' + event];\n return this;\n }\n\n // remove specific handler\n var cb;\n for (var i = 0; i < callbacks.length; i++) {\n cb = callbacks[i];\n if (cb === fn || cb.fn === fn) {\n callbacks.splice(i, 1);\n break;\n }\n }\n\n // Remove event specific arrays for event types that no\n // one is subscribed for to avoid memory leak.\n if (callbacks.length === 0) {\n delete this._callbacks['$' + event];\n }\n\n return this;\n};\n\n/**\n * Emit `event` with the given args.\n *\n * @param {String} event\n * @param {Mixed} ...\n * @return {Emitter}\n */\n\nEmitter.prototype.emit = function(event){\n this._callbacks = this._callbacks || {};\n\n var args = new Array(arguments.length - 1)\n , callbacks = this._callbacks['$' + event];\n\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n\n if (callbacks) {\n callbacks = callbacks.slice(0);\n for (var i = 0, len = callbacks.length; i < len; ++i) {\n callbacks[i].apply(this, args);\n }\n }\n\n return this;\n};\n\n// alias used for reserved events (protected method)\nEmitter.prototype.emitReserved = Emitter.prototype.emit;\n\n/**\n * Return array of callbacks for `event`.\n *\n * @param {String} event\n * @return {Array}\n * @api public\n */\n\nEmitter.prototype.listeners = function(event){\n this._callbacks = this._callbacks || {};\n return this._callbacks['$' + event] || [];\n};\n\n/**\n * Check if this emitter has `event` handlers.\n *\n * @param {String} event\n * @return {Boolean}\n * @api public\n */\n\nEmitter.prototype.hasListeners = function(event){\n return !! this.listeners(event).length;\n};\n","export const globalThisShim = (() => {\n if (typeof self !== \"undefined\") {\n return self;\n }\n else if (typeof window !== \"undefined\") {\n return window;\n }\n else {\n return Function(\"return this\")();\n }\n})();\n","import { globalThisShim as globalThis } from \"./globalThis.js\";\nexport function pick(obj, ...attr) {\n return attr.reduce((acc, k) => {\n if (obj.hasOwnProperty(k)) {\n acc[k] = obj[k];\n }\n return acc;\n }, {});\n}\n// Keep a reference to the real timeout functions so they can be used when overridden\nconst NATIVE_SET_TIMEOUT = globalThis.setTimeout;\nconst NATIVE_CLEAR_TIMEOUT = globalThis.clearTimeout;\nexport function installTimerFunctions(obj, opts) {\n if (opts.useNativeTimers) {\n obj.setTimeoutFn = NATIVE_SET_TIMEOUT.bind(globalThis);\n obj.clearTimeoutFn = NATIVE_CLEAR_TIMEOUT.bind(globalThis);\n }\n else {\n obj.setTimeoutFn = globalThis.setTimeout.bind(globalThis);\n obj.clearTimeoutFn = globalThis.clearTimeout.bind(globalThis);\n }\n}\n// base64 encoded buffers are about 33% bigger (https://en.wikipedia.org/wiki/Base64)\nconst BASE64_OVERHEAD = 1.33;\n// we could also have used `new Blob([obj]).size`, but it isn't supported in IE9\nexport function byteLength(obj) {\n if (typeof obj === \"string\") {\n return utf8Length(obj);\n }\n // arraybuffer or blob\n return Math.ceil((obj.byteLength || obj.size) * BASE64_OVERHEAD);\n}\nfunction utf8Length(str) {\n let c = 0, length = 0;\n for (let i = 0, l = str.length; i < l; i++) {\n c = str.charCodeAt(i);\n if (c < 0x80) {\n length += 1;\n }\n else if (c < 0x800) {\n length += 2;\n }\n else if (c < 0xd800 || c >= 0xe000) {\n length += 3;\n }\n else {\n i++;\n length += 4;\n }\n }\n return length;\n}\n","import { decodePacket } from \"engine.io-parser\";\nimport { Emitter } from \"@socket.io/component-emitter\";\nimport { installTimerFunctions } from \"./util.js\";\nclass TransportError extends Error {\n constructor(reason, description, context) {\n super(reason);\n this.description = description;\n this.context = context;\n this.type = \"TransportError\";\n }\n}\nexport class Transport extends Emitter {\n /**\n * Transport abstract constructor.\n *\n * @param {Object} opts - options\n * @protected\n */\n constructor(opts) {\n super();\n this.writable = false;\n installTimerFunctions(this, opts);\n this.opts = opts;\n this.query = opts.query;\n this.socket = opts.socket;\n }\n /**\n * Emits an error.\n *\n * @param {String} reason\n * @param description\n * @param context - the error context\n * @return {Transport} for chaining\n * @protected\n */\n onError(reason, description, context) {\n super.emitReserved(\"error\", new TransportError(reason, description, context));\n return this;\n }\n /**\n * Opens the transport.\n */\n open() {\n this.readyState = \"opening\";\n this.doOpen();\n return this;\n }\n /**\n * Closes the transport.\n */\n close() {\n if (this.readyState === \"opening\" || this.readyState === \"open\") {\n this.doClose();\n this.onClose();\n }\n return this;\n }\n /**\n * Sends multiple packets.\n *\n * @param {Array} packets\n */\n send(packets) {\n if (this.readyState === \"open\") {\n this.write(packets);\n }\n else {\n // this might happen if the transport was silently closed in the beforeunload event handler\n }\n }\n /**\n * Called upon open\n *\n * @protected\n */\n onOpen() {\n this.readyState = \"open\";\n this.writable = true;\n super.emitReserved(\"open\");\n }\n /**\n * Called with data.\n *\n * @param {String} data\n * @protected\n */\n onData(data) {\n const packet = decodePacket(data, this.socket.binaryType);\n this.onPacket(packet);\n }\n /**\n * Called with a decoded packet.\n *\n * @protected\n */\n onPacket(packet) {\n super.emitReserved(\"packet\", packet);\n }\n /**\n * Called upon close.\n *\n * @protected\n */\n onClose(details) {\n this.readyState = \"closed\";\n super.emitReserved(\"close\", details);\n }\n /**\n * Pauses the transport, in order not to lose packets during an upgrade.\n *\n * @param onPause\n */\n pause(onPause) { }\n}\n","// imported from https://github.com/unshiftio/yeast\n'use strict';\nconst alphabet = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_'.split(''), length = 64, map = {};\nlet seed = 0, i = 0, prev;\n/**\n * Return a string representing the specified number.\n *\n * @param {Number} num The number to convert.\n * @returns {String} The string representation of the number.\n * @api public\n */\nexport function encode(num) {\n let encoded = '';\n do {\n encoded = alphabet[num % length] + encoded;\n num = Math.floor(num / length);\n } while (num > 0);\n return encoded;\n}\n/**\n * Return the integer value specified by the given string.\n *\n * @param {String} str The string to convert.\n * @returns {Number} The integer value represented by the string.\n * @api public\n */\nexport function decode(str) {\n let decoded = 0;\n for (i = 0; i < str.length; i++) {\n decoded = decoded * length + map[str.charAt(i)];\n }\n return decoded;\n}\n/**\n * Yeast: A tiny growing id generator.\n *\n * @returns {String} A unique id.\n * @api public\n */\nexport function yeast() {\n const now = encode(+new Date());\n if (now !== prev)\n return seed = 0, prev = now;\n return now + '.' + encode(seed++);\n}\n//\n// Map each character to its index.\n//\nfor (; i < length; i++)\n map[alphabet[i]] = i;\n","// imported from https://github.com/galkn/querystring\n/**\n * Compiles a querystring\n * Returns string representation of the object\n *\n * @param {Object}\n * @api private\n */\nexport function encode(obj) {\n let str = '';\n for (let i in obj) {\n if (obj.hasOwnProperty(i)) {\n if (str.length)\n str += '&';\n str += encodeURIComponent(i) + '=' + encodeURIComponent(obj[i]);\n }\n }\n return str;\n}\n/**\n * Parses a simple querystring into an object\n *\n * @param {String} qs\n * @api private\n */\nexport function decode(qs) {\n let qry = {};\n let pairs = qs.split('&');\n for (let i = 0, l = pairs.length; i < l; i++) {\n let pair = pairs[i].split('=');\n qry[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1]);\n }\n return qry;\n}\n","// imported from https://github.com/component/has-cors\nlet value = false;\ntry {\n value = typeof XMLHttpRequest !== 'undefined' &&\n 'withCredentials' in new XMLHttpRequest();\n}\ncatch (err) {\n // if XMLHttp support is disabled in IE then it will throw\n // when trying to create\n}\nexport const hasCORS = value;\n","// browser shim for xmlhttprequest module\nimport { hasCORS } from \"../contrib/has-cors.js\";\nimport { globalThisShim as globalThis } from \"../globalThis.js\";\nexport function XHR(opts) {\n const xdomain = opts.xdomain;\n // XMLHttpRequest can be disabled on IE\n try {\n if (\"undefined\" !== typeof XMLHttpRequest && (!xdomain || hasCORS)) {\n return new XMLHttpRequest();\n }\n }\n catch (e) { }\n if (!xdomain) {\n try {\n return new globalThis[[\"Active\"].concat(\"Object\").join(\"X\")](\"Microsoft.XMLHTTP\");\n }\n catch (e) { }\n }\n}\n","import { Transport } from \"../transport.js\";\nimport { yeast } from \"../contrib/yeast.js\";\nimport { encode } from \"../contrib/parseqs.js\";\nimport { encodePayload, decodePayload } from \"engine.io-parser\";\nimport { XHR as XMLHttpRequest } from \"./xmlhttprequest.js\";\nimport { Emitter } from \"@socket.io/component-emitter\";\nimport { installTimerFunctions, pick } from \"../util.js\";\nimport { globalThisShim as globalThis } from \"../globalThis.js\";\nfunction empty() { }\nconst hasXHR2 = (function () {\n const xhr = new XMLHttpRequest({\n xdomain: false,\n });\n return null != xhr.responseType;\n})();\nexport class Polling extends Transport {\n /**\n * XHR Polling constructor.\n *\n * @param {Object} opts\n * @package\n */\n constructor(opts) {\n super(opts);\n this.polling = false;\n if (typeof location !== \"undefined\") {\n const isSSL = \"https:\" === location.protocol;\n let port = location.port;\n // some user agents have empty `location.port`\n if (!port) {\n port = isSSL ? \"443\" : \"80\";\n }\n this.xd =\n (typeof location !== \"undefined\" &&\n opts.hostname !== location.hostname) ||\n port !== opts.port;\n this.xs = opts.secure !== isSSL;\n }\n /**\n * XHR supports binary\n */\n const forceBase64 = opts && opts.forceBase64;\n this.supportsBinary = hasXHR2 && !forceBase64;\n }\n get name() {\n return \"polling\";\n }\n /**\n * Opens the socket (triggers polling). We write a PING message to determine\n * when the transport is open.\n *\n * @protected\n */\n doOpen() {\n this.poll();\n }\n /**\n * Pauses polling.\n *\n * @param {Function} onPause - callback upon buffers are flushed and transport is paused\n * @package\n */\n pause(onPause) {\n this.readyState = \"pausing\";\n const pause = () => {\n this.readyState = \"paused\";\n onPause();\n };\n if (this.polling || !this.writable) {\n let total = 0;\n if (this.polling) {\n total++;\n this.once(\"pollComplete\", function () {\n --total || pause();\n });\n }\n if (!this.writable) {\n total++;\n this.once(\"drain\", function () {\n --total || pause();\n });\n }\n }\n else {\n pause();\n }\n }\n /**\n * Starts polling cycle.\n *\n * @private\n */\n poll() {\n this.polling = true;\n this.doPoll();\n this.emitReserved(\"poll\");\n }\n /**\n * Overloads onData to detect payloads.\n *\n * @protected\n */\n onData(data) {\n const callback = (packet) => {\n // if its the first message we consider the transport open\n if (\"opening\" === this.readyState && packet.type === \"open\") {\n this.onOpen();\n }\n // if its a close packet, we close the ongoing requests\n if (\"close\" === packet.type) {\n this.onClose({ description: \"transport closed by the server\" });\n return false;\n }\n // otherwise bypass onData and handle the message\n this.onPacket(packet);\n };\n // decode payload\n decodePayload(data, this.socket.binaryType).forEach(callback);\n // if an event did not trigger closing\n if (\"closed\" !== this.readyState) {\n // if we got data we're not polling\n this.polling = false;\n this.emitReserved(\"pollComplete\");\n if (\"open\" === this.readyState) {\n this.poll();\n }\n else {\n }\n }\n }\n /**\n * For polling, send a close packet.\n *\n * @protected\n */\n doClose() {\n const close = () => {\n this.write([{ type: \"close\" }]);\n };\n if (\"open\" === this.readyState) {\n close();\n }\n else {\n // in case we're trying to close while\n // handshaking is in progress (GH-164)\n this.once(\"open\", close);\n }\n }\n /**\n * Writes a packets payload.\n *\n * @param {Array} packets - data packets\n * @protected\n */\n write(packets) {\n this.writable = false;\n encodePayload(packets, (data) => {\n this.doWrite(data, () => {\n this.writable = true;\n this.emitReserved(\"drain\");\n });\n });\n }\n /**\n * Generates uri for connection.\n *\n * @private\n */\n uri() {\n let query = this.query || {};\n const schema = this.opts.secure ? \"https\" : \"http\";\n let port = \"\";\n // cache busting is forced\n if (false !== this.opts.timestampRequests) {\n query[this.opts.timestampParam] = yeast();\n }\n if (!this.supportsBinary && !query.sid) {\n query.b64 = 1;\n }\n // avoid port if default for schema\n if (this.opts.port &&\n ((\"https\" === schema && Number(this.opts.port) !== 443) ||\n (\"http\" === schema && Number(this.opts.port) !== 80))) {\n port = \":\" + this.opts.port;\n }\n const encodedQuery = encode(query);\n const ipv6 = this.opts.hostname.indexOf(\":\") !== -1;\n return (schema +\n \"://\" +\n (ipv6 ? \"[\" + this.opts.hostname + \"]\" : this.opts.hostname) +\n port +\n this.opts.path +\n (encodedQuery.length ? \"?\" + encodedQuery : \"\"));\n }\n /**\n * Creates a request.\n *\n * @param {String} method\n * @private\n */\n request(opts = {}) {\n Object.assign(opts, { xd: this.xd, xs: this.xs }, this.opts);\n return new Request(this.uri(), opts);\n }\n /**\n * Sends data.\n *\n * @param {String} data to send.\n * @param {Function} called upon flush.\n * @private\n */\n doWrite(data, fn) {\n const req = this.request({\n method: \"POST\",\n data: data,\n });\n req.on(\"success\", fn);\n req.on(\"error\", (xhrStatus, context) => {\n this.onError(\"xhr post error\", xhrStatus, context);\n });\n }\n /**\n * Starts a poll cycle.\n *\n * @private\n */\n doPoll() {\n const req = this.request();\n req.on(\"data\", this.onData.bind(this));\n req.on(\"error\", (xhrStatus, context) => {\n this.onError(\"xhr poll error\", xhrStatus, context);\n });\n this.pollXhr = req;\n }\n}\nexport class Request extends Emitter {\n /**\n * Request constructor\n *\n * @param {Object} options\n * @package\n */\n constructor(uri, opts) {\n super();\n installTimerFunctions(this, opts);\n this.opts = opts;\n this.method = opts.method || \"GET\";\n this.uri = uri;\n this.async = false !== opts.async;\n this.data = undefined !== opts.data ? opts.data : null;\n this.create();\n }\n /**\n * Creates the XHR object and sends the request.\n *\n * @private\n */\n create() {\n const opts = pick(this.opts, \"agent\", \"pfx\", \"key\", \"passphrase\", \"cert\", \"ca\", \"ciphers\", \"rejectUnauthorized\", \"autoUnref\");\n opts.xdomain = !!this.opts.xd;\n opts.xscheme = !!this.opts.xs;\n const xhr = (this.xhr = new XMLHttpRequest(opts));\n try {\n xhr.open(this.method, this.uri, this.async);\n try {\n if (this.opts.extraHeaders) {\n xhr.setDisableHeaderCheck && xhr.setDisableHeaderCheck(true);\n for (let i in this.opts.extraHeaders) {\n if (this.opts.extraHeaders.hasOwnProperty(i)) {\n xhr.setRequestHeader(i, this.opts.extraHeaders[i]);\n }\n }\n }\n }\n catch (e) { }\n if (\"POST\" === this.method) {\n try {\n xhr.setRequestHeader(\"Content-type\", \"text/plain;charset=UTF-8\");\n }\n catch (e) { }\n }\n try {\n xhr.setRequestHeader(\"Accept\", \"*/*\");\n }\n catch (e) { }\n // ie6 check\n if (\"withCredentials\" in xhr) {\n xhr.withCredentials = this.opts.withCredentials;\n }\n if (this.opts.requestTimeout) {\n xhr.timeout = this.opts.requestTimeout;\n }\n xhr.onreadystatechange = () => {\n if (4 !== xhr.readyState)\n return;\n if (200 === xhr.status || 1223 === xhr.status) {\n this.onLoad();\n }\n else {\n // make sure the `error` event handler that's user-set\n // does not throw in the same tick and gets caught here\n this.setTimeoutFn(() => {\n this.onError(typeof xhr.status === \"number\" ? xhr.status : 0);\n }, 0);\n }\n };\n xhr.send(this.data);\n }\n catch (e) {\n // Need to defer since .create() is called directly from the constructor\n // and thus the 'error' event can only be only bound *after* this exception\n // occurs. Therefore, also, we cannot throw here at all.\n this.setTimeoutFn(() => {\n this.onError(e);\n }, 0);\n return;\n }\n if (typeof document !== \"undefined\") {\n this.index = Request.requestsCount++;\n Request.requests[this.index] = this;\n }\n }\n /**\n * Called upon error.\n *\n * @private\n */\n onError(err) {\n this.emitReserved(\"error\", err, this.xhr);\n this.cleanup(true);\n }\n /**\n * Cleans up house.\n *\n * @private\n */\n cleanup(fromError) {\n if (\"undefined\" === typeof this.xhr || null === this.xhr) {\n return;\n }\n this.xhr.onreadystatechange = empty;\n if (fromError) {\n try {\n this.xhr.abort();\n }\n catch (e) { }\n }\n if (typeof document !== \"undefined\") {\n delete Request.requests[this.index];\n }\n this.xhr = null;\n }\n /**\n * Called upon load.\n *\n * @private\n */\n onLoad() {\n const data = this.xhr.responseText;\n if (data !== null) {\n this.emitReserved(\"data\", data);\n this.emitReserved(\"success\");\n this.cleanup();\n }\n }\n /**\n * Aborts the request.\n *\n * @package\n */\n abort() {\n this.cleanup();\n }\n}\nRequest.requestsCount = 0;\nRequest.requests = {};\n/**\n * Aborts pending requests when unloading the window. This is needed to prevent\n * memory leaks (e.g. when using IE) and to ensure that no spurious error is\n * emitted.\n */\nif (typeof document !== \"undefined\") {\n // @ts-ignore\n if (typeof attachEvent === \"function\") {\n // @ts-ignore\n attachEvent(\"onunload\", unloadHandler);\n }\n else if (typeof addEventListener === \"function\") {\n const terminationEvent = \"onpagehide\" in globalThis ? \"pagehide\" : \"unload\";\n addEventListener(terminationEvent, unloadHandler, false);\n }\n}\nfunction unloadHandler() {\n for (let i in Request.requests) {\n if (Request.requests.hasOwnProperty(i)) {\n Request.requests[i].abort();\n }\n }\n}\n","import { globalThisShim as globalThis } from \"../globalThis.js\";\nexport const nextTick = (() => {\n const isPromiseAvailable = typeof Promise === \"function\" && typeof Promise.resolve === \"function\";\n if (isPromiseAvailable) {\n return (cb) => Promise.resolve().then(cb);\n }\n else {\n return (cb, setTimeoutFn) => setTimeoutFn(cb, 0);\n }\n})();\nexport const WebSocket = globalThis.WebSocket || globalThis.MozWebSocket;\nexport const usingBrowserWebSocket = true;\nexport const defaultBinaryType = \"arraybuffer\";\n","import { Transport } from \"../transport.js\";\nimport { encode } from \"../contrib/parseqs.js\";\nimport { yeast } from \"../contrib/yeast.js\";\nimport { pick } from \"../util.js\";\nimport { defaultBinaryType, nextTick, usingBrowserWebSocket, WebSocket, } from \"./websocket-constructor.js\";\nimport { encodePacket } from \"engine.io-parser\";\n// detect ReactNative environment\nconst isReactNative = typeof navigator !== \"undefined\" &&\n typeof navigator.product === \"string\" &&\n navigator.product.toLowerCase() === \"reactnative\";\nexport class WS extends Transport {\n /**\n * WebSocket transport constructor.\n *\n * @param {Object} opts - connection options\n * @protected\n */\n constructor(opts) {\n super(opts);\n this.supportsBinary = !opts.forceBase64;\n }\n get name() {\n return \"websocket\";\n }\n doOpen() {\n if (!this.check()) {\n // let probe timeout\n return;\n }\n const uri = this.uri();\n const protocols = this.opts.protocols;\n // React Native only supports the 'headers' option, and will print a warning if anything else is passed\n const opts = isReactNative\n ? {}\n : pick(this.opts, \"agent\", \"perMessageDeflate\", \"pfx\", \"key\", \"passphrase\", \"cert\", \"ca\", \"ciphers\", \"rejectUnauthorized\", \"localAddress\", \"protocolVersion\", \"origin\", \"maxPayload\", \"family\", \"checkServerIdentity\");\n if (this.opts.extraHeaders) {\n opts.headers = this.opts.extraHeaders;\n }\n try {\n this.ws =\n usingBrowserWebSocket && !isReactNative\n ? protocols\n ? new WebSocket(uri, protocols)\n : new WebSocket(uri)\n : new WebSocket(uri, protocols, opts);\n }\n catch (err) {\n return this.emitReserved(\"error\", err);\n }\n this.ws.binaryType = this.socket.binaryType || defaultBinaryType;\n this.addEventListeners();\n }\n /**\n * Adds event listeners to the socket\n *\n * @private\n */\n addEventListeners() {\n this.ws.onopen = () => {\n if (this.opts.autoUnref) {\n this.ws._socket.unref();\n }\n this.onOpen();\n };\n this.ws.onclose = (closeEvent) => this.onClose({\n description: \"websocket connection closed\",\n context: closeEvent,\n });\n this.ws.onmessage = (ev) => this.onData(ev.data);\n this.ws.onerror = (e) => this.onError(\"websocket error\", e);\n }\n write(packets) {\n this.writable = false;\n // encodePacket efficient as it uses WS framing\n // no need for encodePayload\n for (let i = 0; i < packets.length; i++) {\n const packet = packets[i];\n const lastPacket = i === packets.length - 1;\n encodePacket(packet, this.supportsBinary, (data) => {\n // always create a new object (GH-437)\n const opts = {};\n if (!usingBrowserWebSocket) {\n if (packet.options) {\n opts.compress = packet.options.compress;\n }\n if (this.opts.perMessageDeflate) {\n const len = \n // @ts-ignore\n \"string\" === typeof data ? Buffer.byteLength(data) : data.length;\n if (len < this.opts.perMessageDeflate.threshold) {\n opts.compress = false;\n }\n }\n }\n // Sometimes the websocket has already been closed but the browser didn't\n // have a chance of informing us about it yet, in that case send will\n // throw an error\n try {\n if (usingBrowserWebSocket) {\n // TypeError is thrown when passing the second argument on Safari\n this.ws.send(data);\n }\n else {\n this.ws.send(data, opts);\n }\n }\n catch (e) {\n }\n if (lastPacket) {\n // fake drain\n // defer to next tick to allow Socket to clear writeBuffer\n nextTick(() => {\n this.writable = true;\n this.emitReserved(\"drain\");\n }, this.setTimeoutFn);\n }\n });\n }\n }\n doClose() {\n if (typeof this.ws !== \"undefined\") {\n this.ws.close();\n this.ws = null;\n }\n }\n /**\n * Generates uri for connection.\n *\n * @private\n */\n uri() {\n let query = this.query || {};\n const schema = this.opts.secure ? \"wss\" : \"ws\";\n let port = \"\";\n // avoid port if default for schema\n if (this.opts.port &&\n ((\"wss\" === schema && Number(this.opts.port) !== 443) ||\n (\"ws\" === schema && Number(this.opts.port) !== 80))) {\n port = \":\" + this.opts.port;\n }\n // append timestamp to URI\n if (this.opts.timestampRequests) {\n query[this.opts.timestampParam] = yeast();\n }\n // communicate binary support capabilities\n if (!this.supportsBinary) {\n query.b64 = 1;\n }\n const encodedQuery = encode(query);\n const ipv6 = this.opts.hostname.indexOf(\":\") !== -1;\n return (schema +\n \"://\" +\n (ipv6 ? \"[\" + this.opts.hostname + \"]\" : this.opts.hostname) +\n port +\n this.opts.path +\n (encodedQuery.length ? \"?\" + encodedQuery : \"\"));\n }\n /**\n * Feature detection for WebSocket.\n *\n * @return {Boolean} whether this transport is available.\n * @private\n */\n check() {\n return !!WebSocket;\n }\n}\n","import { Polling } from \"./polling.js\";\nimport { WS } from \"./websocket.js\";\nexport const transports = {\n websocket: WS,\n polling: Polling,\n};\n","// imported from https://github.com/galkn/parseuri\n/**\n * Parses a URI\n *\n * Note: we could also have used the built-in URL object, but it isn't supported on all platforms.\n *\n * See:\n * - https://developer.mozilla.org/en-US/docs/Web/API/URL\n * - https://caniuse.com/url\n * - https://www.rfc-editor.org/rfc/rfc3986#appendix-B\n *\n * History of the parse() method:\n * - first commit: https://github.com/socketio/socket.io-client/commit/4ee1d5d94b3906a9c052b459f1a818b15f38f91c\n * - export into its own module: https://github.com/socketio/engine.io-client/commit/de2c561e4564efeb78f1bdb1ba39ef81b2822cb3\n * - reimport: https://github.com/socketio/engine.io-client/commit/df32277c3f6d622eec5ed09f493cae3f3391d242\n *\n * @author Steven Levithan (MIT license)\n * @api private\n */\nconst re = /^(?:(?![^:@\\/?#]+:[^:@\\/]*@)(http|https|ws|wss):\\/\\/)?((?:(([^:@\\/?#]*)(?::([^:@\\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\\/?#]*)(?::(\\d*))?)(((\\/(?:[^?#](?![^?#\\/]*\\.[^?#\\/.]+(?:[?#]|$)))*\\/?)?([^?#\\/]*))(?:\\?([^#]*))?(?:#(.*))?)/;\nconst parts = [\n 'source', 'protocol', 'authority', 'userInfo', 'user', 'password', 'host', 'port', 'relative', 'path', 'directory', 'file', 'query', 'anchor'\n];\nexport function parse(str) {\n const src = str, b = str.indexOf('['), e = str.indexOf(']');\n if (b != -1 && e != -1) {\n str = str.substring(0, b) + str.substring(b, e).replace(/:/g, ';') + str.substring(e, str.length);\n }\n let m = re.exec(str || ''), uri = {}, i = 14;\n while (i--) {\n uri[parts[i]] = m[i] || '';\n }\n if (b != -1 && e != -1) {\n uri.source = src;\n uri.host = uri.host.substring(1, uri.host.length - 1).replace(/;/g, ':');\n uri.authority = uri.authority.replace('[', '').replace(']', '').replace(/;/g, ':');\n uri.ipv6uri = true;\n }\n uri.pathNames = pathNames(uri, uri['path']);\n uri.queryKey = queryKey(uri, uri['query']);\n return uri;\n}\nfunction pathNames(obj, path) {\n const regx = /\\/{2,9}/g, names = path.replace(regx, \"/\").split(\"/\");\n if (path.slice(0, 1) == '/' || path.length === 0) {\n names.splice(0, 1);\n }\n if (path.slice(-1) == '/') {\n names.splice(names.length - 1, 1);\n }\n return names;\n}\nfunction queryKey(uri, query) {\n const data = {};\n query.replace(/(?:^|&)([^&=]*)=?([^&]*)/g, function ($0, $1, $2) {\n if ($1) {\n data[$1] = $2;\n }\n });\n return data;\n}\n","import { transports } from \"./transports/index.js\";\nimport { installTimerFunctions, byteLength } from \"./util.js\";\nimport { decode } from \"./contrib/parseqs.js\";\nimport { parse } from \"./contrib/parseuri.js\";\nimport { Emitter } from \"@socket.io/component-emitter\";\nimport { protocol } from \"engine.io-parser\";\nexport class Socket extends Emitter {\n /**\n * Socket constructor.\n *\n * @param {String|Object} uri - uri or options\n * @param {Object} opts - options\n */\n constructor(uri, opts = {}) {\n super();\n this.writeBuffer = [];\n if (uri && \"object\" === typeof uri) {\n opts = uri;\n uri = null;\n }\n if (uri) {\n uri = parse(uri);\n opts.hostname = uri.host;\n opts.secure = uri.protocol === \"https\" || uri.protocol === \"wss\";\n opts.port = uri.port;\n if (uri.query)\n opts.query = uri.query;\n }\n else if (opts.host) {\n opts.hostname = parse(opts.host).host;\n }\n installTimerFunctions(this, opts);\n this.secure =\n null != opts.secure\n ? opts.secure\n : typeof location !== \"undefined\" && \"https:\" === location.protocol;\n if (opts.hostname && !opts.port) {\n // if no port is specified manually, use the protocol default\n opts.port = this.secure ? \"443\" : \"80\";\n }\n this.hostname =\n opts.hostname ||\n (typeof location !== \"undefined\" ? location.hostname : \"localhost\");\n this.port =\n opts.port ||\n (typeof location !== \"undefined\" && location.port\n ? location.port\n : this.secure\n ? \"443\"\n : \"80\");\n this.transports = opts.transports || [\"polling\", \"websocket\"];\n this.writeBuffer = [];\n this.prevBufferLen = 0;\n this.opts = Object.assign({\n path: \"/engine.io\",\n agent: false,\n withCredentials: false,\n upgrade: true,\n timestampParam: \"t\",\n rememberUpgrade: false,\n addTrailingSlash: true,\n rejectUnauthorized: true,\n perMessageDeflate: {\n threshold: 1024,\n },\n transportOptions: {},\n closeOnBeforeunload: true,\n }, opts);\n this.opts.path =\n this.opts.path.replace(/\\/$/, \"\") +\n (this.opts.addTrailingSlash ? \"/\" : \"\");\n if (typeof this.opts.query === \"string\") {\n this.opts.query = decode(this.opts.query);\n }\n // set on handshake\n this.id = null;\n this.upgrades = null;\n this.pingInterval = null;\n this.pingTimeout = null;\n // set on heartbeat\n this.pingTimeoutTimer = null;\n if (typeof addEventListener === \"function\") {\n if (this.opts.closeOnBeforeunload) {\n // Firefox closes the connection when the \"beforeunload\" event is emitted but not Chrome. This event listener\n // ensures every browser behaves the same (no \"disconnect\" event at the Socket.IO level when the page is\n // closed/reloaded)\n this.beforeunloadEventListener = () => {\n if (this.transport) {\n // silently close the transport\n this.transport.removeAllListeners();\n this.transport.close();\n }\n };\n addEventListener(\"beforeunload\", this.beforeunloadEventListener, false);\n }\n if (this.hostname !== \"localhost\") {\n this.offlineEventListener = () => {\n this.onClose(\"transport close\", {\n description: \"network connection lost\",\n });\n };\n addEventListener(\"offline\", this.offlineEventListener, false);\n }\n }\n this.open();\n }\n /**\n * Creates transport of the given type.\n *\n * @param {String} name - transport name\n * @return {Transport}\n * @private\n */\n createTransport(name) {\n const query = Object.assign({}, this.opts.query);\n // append engine.io protocol identifier\n query.EIO = protocol;\n // transport name\n query.transport = name;\n // session id if we already have one\n if (this.id)\n query.sid = this.id;\n const opts = Object.assign({}, this.opts.transportOptions[name], this.opts, {\n query,\n socket: this,\n hostname: this.hostname,\n secure: this.secure,\n port: this.port,\n });\n return new transports[name](opts);\n }\n /**\n * Initializes transport to use and starts probe.\n *\n * @private\n */\n open() {\n let transport;\n if (this.opts.rememberUpgrade &&\n Socket.priorWebsocketSuccess &&\n this.transports.indexOf(\"websocket\") !== -1) {\n transport = \"websocket\";\n }\n else if (0 === this.transports.length) {\n // Emit error on next tick so it can be listened to\n this.setTimeoutFn(() => {\n this.emitReserved(\"error\", \"No transports available\");\n }, 0);\n return;\n }\n else {\n transport = this.transports[0];\n }\n this.readyState = \"opening\";\n // Retry with the next transport if the transport is disabled (jsonp: false)\n try {\n transport = this.createTransport(transport);\n }\n catch (e) {\n this.transports.shift();\n this.open();\n return;\n }\n transport.open();\n this.setTransport(transport);\n }\n /**\n * Sets the current transport. Disables the existing one (if any).\n *\n * @private\n */\n setTransport(transport) {\n if (this.transport) {\n this.transport.removeAllListeners();\n }\n // set up transport\n this.transport = transport;\n // set up transport listeners\n transport\n .on(\"drain\", this.onDrain.bind(this))\n .on(\"packet\", this.onPacket.bind(this))\n .on(\"error\", this.onError.bind(this))\n .on(\"close\", (reason) => this.onClose(\"transport close\", reason));\n }\n /**\n * Probes a transport.\n *\n * @param {String} name - transport name\n * @private\n */\n probe(name) {\n let transport = this.createTransport(name);\n let failed = false;\n Socket.priorWebsocketSuccess = false;\n const onTransportOpen = () => {\n if (failed)\n return;\n transport.send([{ type: \"ping\", data: \"probe\" }]);\n transport.once(\"packet\", (msg) => {\n if (failed)\n return;\n if (\"pong\" === msg.type && \"probe\" === msg.data) {\n this.upgrading = true;\n this.emitReserved(\"upgrading\", transport);\n if (!transport)\n return;\n Socket.priorWebsocketSuccess = \"websocket\" === transport.name;\n this.transport.pause(() => {\n if (failed)\n return;\n if (\"closed\" === this.readyState)\n return;\n cleanup();\n this.setTransport(transport);\n transport.send([{ type: \"upgrade\" }]);\n this.emitReserved(\"upgrade\", transport);\n transport = null;\n this.upgrading = false;\n this.flush();\n });\n }\n else {\n const err = new Error(\"probe error\");\n // @ts-ignore\n err.transport = transport.name;\n this.emitReserved(\"upgradeError\", err);\n }\n });\n };\n function freezeTransport() {\n if (failed)\n return;\n // Any callback called by transport should be ignored since now\n failed = true;\n cleanup();\n transport.close();\n transport = null;\n }\n // Handle any error that happens while probing\n const onerror = (err) => {\n const error = new Error(\"probe error: \" + err);\n // @ts-ignore\n error.transport = transport.name;\n freezeTransport();\n this.emitReserved(\"upgradeError\", error);\n };\n function onTransportClose() {\n onerror(\"transport closed\");\n }\n // When the socket is closed while we're probing\n function onclose() {\n onerror(\"socket closed\");\n }\n // When the socket is upgraded while we're probing\n function onupgrade(to) {\n if (transport && to.name !== transport.name) {\n freezeTransport();\n }\n }\n // Remove all listeners on the transport and on self\n const cleanup = () => {\n transport.removeListener(\"open\", onTransportOpen);\n transport.removeListener(\"error\", onerror);\n transport.removeListener(\"close\", onTransportClose);\n this.off(\"close\", onclose);\n this.off(\"upgrading\", onupgrade);\n };\n transport.once(\"open\", onTransportOpen);\n transport.once(\"error\", onerror);\n transport.once(\"close\", onTransportClose);\n this.once(\"close\", onclose);\n this.once(\"upgrading\", onupgrade);\n transport.open();\n }\n /**\n * Called when connection is deemed open.\n *\n * @private\n */\n onOpen() {\n this.readyState = \"open\";\n Socket.priorWebsocketSuccess = \"websocket\" === this.transport.name;\n this.emitReserved(\"open\");\n this.flush();\n // we check for `readyState` in case an `open`\n // listener already closed the socket\n if (\"open\" === this.readyState && this.opts.upgrade) {\n let i = 0;\n const l = this.upgrades.length;\n for (; i < l; i++) {\n this.probe(this.upgrades[i]);\n }\n }\n }\n /**\n * Handles a packet.\n *\n * @private\n */\n onPacket(packet) {\n if (\"opening\" === this.readyState ||\n \"open\" === this.readyState ||\n \"closing\" === this.readyState) {\n this.emitReserved(\"packet\", packet);\n // Socket is live - any packet counts\n this.emitReserved(\"heartbeat\");\n switch (packet.type) {\n case \"open\":\n this.onHandshake(JSON.parse(packet.data));\n break;\n case \"ping\":\n this.resetPingTimeout();\n this.sendPacket(\"pong\");\n this.emitReserved(\"ping\");\n this.emitReserved(\"pong\");\n break;\n case \"error\":\n const err = new Error(\"server error\");\n // @ts-ignore\n err.code = packet.data;\n this.onError(err);\n break;\n case \"message\":\n this.emitReserved(\"data\", packet.data);\n this.emitReserved(\"message\", packet.data);\n break;\n }\n }\n else {\n }\n }\n /**\n * Called upon handshake completion.\n *\n * @param {Object} data - handshake obj\n * @private\n */\n onHandshake(data) {\n this.emitReserved(\"handshake\", data);\n this.id = data.sid;\n this.transport.query.sid = data.sid;\n this.upgrades = this.filterUpgrades(data.upgrades);\n this.pingInterval = data.pingInterval;\n this.pingTimeout = data.pingTimeout;\n this.maxPayload = data.maxPayload;\n this.onOpen();\n // In case open handler closes socket\n if (\"closed\" === this.readyState)\n return;\n this.resetPingTimeout();\n }\n /**\n * Sets and resets ping timeout timer based on server pings.\n *\n * @private\n */\n resetPingTimeout() {\n this.clearTimeoutFn(this.pingTimeoutTimer);\n this.pingTimeoutTimer = this.setTimeoutFn(() => {\n this.onClose(\"ping timeout\");\n }, this.pingInterval + this.pingTimeout);\n if (this.opts.autoUnref) {\n this.pingTimeoutTimer.unref();\n }\n }\n /**\n * Called on `drain` event\n *\n * @private\n */\n onDrain() {\n this.writeBuffer.splice(0, this.prevBufferLen);\n // setting prevBufferLen = 0 is very important\n // for example, when upgrading, upgrade packet is sent over,\n // and a nonzero prevBufferLen could cause problems on `drain`\n this.prevBufferLen = 0;\n if (0 === this.writeBuffer.length) {\n this.emitReserved(\"drain\");\n }\n else {\n this.flush();\n }\n }\n /**\n * Flush write buffers.\n *\n * @private\n */\n flush() {\n if (\"closed\" !== this.readyState &&\n this.transport.writable &&\n !this.upgrading &&\n this.writeBuffer.length) {\n const packets = this.getWritablePackets();\n this.transport.send(packets);\n // keep track of current length of writeBuffer\n // splice writeBuffer and callbackBuffer on `drain`\n this.prevBufferLen = packets.length;\n this.emitReserved(\"flush\");\n }\n }\n /**\n * Ensure the encoded size of the writeBuffer is below the maxPayload value sent by the server (only for HTTP\n * long-polling)\n *\n * @private\n */\n getWritablePackets() {\n const shouldCheckPayloadSize = this.maxPayload &&\n this.transport.name === \"polling\" &&\n this.writeBuffer.length > 1;\n if (!shouldCheckPayloadSize) {\n return this.writeBuffer;\n }\n let payloadSize = 1; // first packet type\n for (let i = 0; i < this.writeBuffer.length; i++) {\n const data = this.writeBuffer[i].data;\n if (data) {\n payloadSize += byteLength(data);\n }\n if (i > 0 && payloadSize > this.maxPayload) {\n return this.writeBuffer.slice(0, i);\n }\n payloadSize += 2; // separator + packet type\n }\n return this.writeBuffer;\n }\n /**\n * Sends a message.\n *\n * @param {String} msg - message.\n * @param {Object} options.\n * @param {Function} callback function.\n * @return {Socket} for chaining.\n */\n write(msg, options, fn) {\n this.sendPacket(\"message\", msg, options, fn);\n return this;\n }\n send(msg, options, fn) {\n this.sendPacket(\"message\", msg, options, fn);\n return this;\n }\n /**\n * Sends a packet.\n *\n * @param {String} type: packet type.\n * @param {String} data.\n * @param {Object} options.\n * @param {Function} fn - callback function.\n * @private\n */\n sendPacket(type, data, options, fn) {\n if (\"function\" === typeof data) {\n fn = data;\n data = undefined;\n }\n if (\"function\" === typeof options) {\n fn = options;\n options = null;\n }\n if (\"closing\" === this.readyState || \"closed\" === this.readyState) {\n return;\n }\n options = options || {};\n options.compress = false !== options.compress;\n const packet = {\n type: type,\n data: data,\n options: options,\n };\n this.emitReserved(\"packetCreate\", packet);\n this.writeBuffer.push(packet);\n if (fn)\n this.once(\"flush\", fn);\n this.flush();\n }\n /**\n * Closes the connection.\n */\n close() {\n const close = () => {\n this.onClose(\"forced close\");\n this.transport.close();\n };\n const cleanupAndClose = () => {\n this.off(\"upgrade\", cleanupAndClose);\n this.off(\"upgradeError\", cleanupAndClose);\n close();\n };\n const waitForUpgrade = () => {\n // wait for upgrade to finish since we can't send packets while pausing a transport\n this.once(\"upgrade\", cleanupAndClose);\n this.once(\"upgradeError\", cleanupAndClose);\n };\n if (\"opening\" === this.readyState || \"open\" === this.readyState) {\n this.readyState = \"closing\";\n if (this.writeBuffer.length) {\n this.once(\"drain\", () => {\n if (this.upgrading) {\n waitForUpgrade();\n }\n else {\n close();\n }\n });\n }\n else if (this.upgrading) {\n waitForUpgrade();\n }\n else {\n close();\n }\n }\n return this;\n }\n /**\n * Called upon transport error\n *\n * @private\n */\n onError(err) {\n Socket.priorWebsocketSuccess = false;\n this.emitReserved(\"error\", err);\n this.onClose(\"transport error\", err);\n }\n /**\n * Called upon transport close.\n *\n * @private\n */\n onClose(reason, description) {\n if (\"opening\" === this.readyState ||\n \"open\" === this.readyState ||\n \"closing\" === this.readyState) {\n // clear timers\n this.clearTimeoutFn(this.pingTimeoutTimer);\n // stop event from firing again for transport\n this.transport.removeAllListeners(\"close\");\n // ensure transport won't stay open\n this.transport.close();\n // ignore further transport communication\n this.transport.removeAllListeners();\n if (typeof removeEventListener === \"function\") {\n removeEventListener(\"beforeunload\", this.beforeunloadEventListener, false);\n removeEventListener(\"offline\", this.offlineEventListener, false);\n }\n // set ready state\n this.readyState = \"closed\";\n // clear session id\n this.id = null;\n // emit close event\n this.emitReserved(\"close\", reason, description);\n // clean buffers after, so users can still\n // grab the buffers on `close` event\n this.writeBuffer = [];\n this.prevBufferLen = 0;\n }\n }\n /**\n * Filters upgrades, returning only those matching client transports.\n *\n * @param {Array} upgrades - server upgrades\n * @private\n */\n filterUpgrades(upgrades) {\n const filteredUpgrades = [];\n let i = 0;\n const j = upgrades.length;\n for (; i < j; i++) {\n if (~this.transports.indexOf(upgrades[i]))\n filteredUpgrades.push(upgrades[i]);\n }\n return filteredUpgrades;\n }\n}\nSocket.protocol = protocol;\n","import { Socket } from \"./socket.js\";\nexport { Socket };\nexport const protocol = Socket.protocol;\nexport { Transport } from \"./transport.js\";\nexport { transports } from \"./transports/index.js\";\nexport { installTimerFunctions } from \"./util.js\";\nexport { parse } from \"./contrib/parseuri.js\";\nexport { nextTick } from \"./transports/websocket-constructor.js\";\n","import unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nexport default function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}","const withNativeArrayBuffer = typeof ArrayBuffer === \"function\";\nconst isView = (obj) => {\n return typeof ArrayBuffer.isView === \"function\"\n ? ArrayBuffer.isView(obj)\n : obj.buffer instanceof ArrayBuffer;\n};\nconst toString = Object.prototype.toString;\nconst withNativeBlob = typeof Blob === \"function\" ||\n (typeof Blob !== \"undefined\" &&\n toString.call(Blob) === \"[object BlobConstructor]\");\nconst withNativeFile = typeof File === \"function\" ||\n (typeof File !== \"undefined\" &&\n toString.call(File) === \"[object FileConstructor]\");\n/**\n * Returns true if obj is a Buffer, an ArrayBuffer, a Blob or a File.\n *\n * @private\n */\nexport function isBinary(obj) {\n return ((withNativeArrayBuffer && (obj instanceof ArrayBuffer || isView(obj))) ||\n (withNativeBlob && obj instanceof Blob) ||\n (withNativeFile && obj instanceof File));\n}\nexport function hasBinary(obj, toJSON) {\n if (!obj || typeof obj !== \"object\") {\n return false;\n }\n if (Array.isArray(obj)) {\n for (let i = 0, l = obj.length; i < l; i++) {\n if (hasBinary(obj[i])) {\n return true;\n }\n }\n return false;\n }\n if (isBinary(obj)) {\n return true;\n }\n if (obj.toJSON &&\n typeof obj.toJSON === \"function\" &&\n arguments.length === 1) {\n return hasBinary(obj.toJSON(), true);\n }\n for (const key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key) && hasBinary(obj[key])) {\n return true;\n }\n }\n return false;\n}\n","import { isBinary } from \"./is-binary.js\";\n/**\n * Replaces every Buffer | ArrayBuffer | Blob | File in packet with a numbered placeholder.\n *\n * @param {Object} packet - socket.io event packet\n * @return {Object} with deconstructed packet and list of buffers\n * @public\n */\nexport function deconstructPacket(packet) {\n const buffers = [];\n const packetData = packet.data;\n const pack = packet;\n pack.data = _deconstructPacket(packetData, buffers);\n pack.attachments = buffers.length; // number of binary 'attachments'\n return { packet: pack, buffers: buffers };\n}\nfunction _deconstructPacket(data, buffers) {\n if (!data)\n return data;\n if (isBinary(data)) {\n const placeholder = { _placeholder: true, num: buffers.length };\n buffers.push(data);\n return placeholder;\n }\n else if (Array.isArray(data)) {\n const newData = new Array(data.length);\n for (let i = 0; i < data.length; i++) {\n newData[i] = _deconstructPacket(data[i], buffers);\n }\n return newData;\n }\n else if (typeof data === \"object\" && !(data instanceof Date)) {\n const newData = {};\n for (const key in data) {\n if (Object.prototype.hasOwnProperty.call(data, key)) {\n newData[key] = _deconstructPacket(data[key], buffers);\n }\n }\n return newData;\n }\n return data;\n}\n/**\n * Reconstructs a binary packet from its placeholder packet and buffers\n *\n * @param {Object} packet - event packet with placeholders\n * @param {Array} buffers - binary buffers to put in placeholder positions\n * @return {Object} reconstructed packet\n * @public\n */\nexport function reconstructPacket(packet, buffers) {\n packet.data = _reconstructPacket(packet.data, buffers);\n delete packet.attachments; // no longer useful\n return packet;\n}\nfunction _reconstructPacket(data, buffers) {\n if (!data)\n return data;\n if (data && data._placeholder === true) {\n const isIndexValid = typeof data.num === \"number\" &&\n data.num >= 0 &&\n data.num < buffers.length;\n if (isIndexValid) {\n return buffers[data.num]; // appropriate buffer (should be natural order anyway)\n }\n else {\n throw new Error(\"illegal attachments\");\n }\n }\n else if (Array.isArray(data)) {\n for (let i = 0; i < data.length; i++) {\n data[i] = _reconstructPacket(data[i], buffers);\n }\n }\n else if (typeof data === \"object\") {\n for (const key in data) {\n if (Object.prototype.hasOwnProperty.call(data, key)) {\n data[key] = _reconstructPacket(data[key], buffers);\n }\n }\n }\n return data;\n}\n","import { Emitter } from \"@socket.io/component-emitter\";\nimport { deconstructPacket, reconstructPacket } from \"./binary.js\";\nimport { isBinary, hasBinary } from \"./is-binary.js\";\n/**\n * Protocol version.\n *\n * @public\n */\nexport const protocol = 5;\nexport var PacketType;\n(function (PacketType) {\n PacketType[PacketType[\"CONNECT\"] = 0] = \"CONNECT\";\n PacketType[PacketType[\"DISCONNECT\"] = 1] = \"DISCONNECT\";\n PacketType[PacketType[\"EVENT\"] = 2] = \"EVENT\";\n PacketType[PacketType[\"ACK\"] = 3] = \"ACK\";\n PacketType[PacketType[\"CONNECT_ERROR\"] = 4] = \"CONNECT_ERROR\";\n PacketType[PacketType[\"BINARY_EVENT\"] = 5] = \"BINARY_EVENT\";\n PacketType[PacketType[\"BINARY_ACK\"] = 6] = \"BINARY_ACK\";\n})(PacketType || (PacketType = {}));\n/**\n * A socket.io Encoder instance\n */\nexport class Encoder {\n /**\n * Encoder constructor\n *\n * @param {function} replacer - custom replacer to pass down to JSON.parse\n */\n constructor(replacer) {\n this.replacer = replacer;\n }\n /**\n * Encode a packet as a single string if non-binary, or as a\n * buffer sequence, depending on packet type.\n *\n * @param {Object} obj - packet object\n */\n encode(obj) {\n if (obj.type === PacketType.EVENT || obj.type === PacketType.ACK) {\n if (hasBinary(obj)) {\n return this.encodeAsBinary({\n type: obj.type === PacketType.EVENT\n ? PacketType.BINARY_EVENT\n : PacketType.BINARY_ACK,\n nsp: obj.nsp,\n data: obj.data,\n id: obj.id,\n });\n }\n }\n return [this.encodeAsString(obj)];\n }\n /**\n * Encode packet as string.\n */\n encodeAsString(obj) {\n // first is type\n let str = \"\" + obj.type;\n // attachments if we have them\n if (obj.type === PacketType.BINARY_EVENT ||\n obj.type === PacketType.BINARY_ACK) {\n str += obj.attachments + \"-\";\n }\n // if we have a namespace other than `/`\n // we append it followed by a comma `,`\n if (obj.nsp && \"/\" !== obj.nsp) {\n str += obj.nsp + \",\";\n }\n // immediately followed by the id\n if (null != obj.id) {\n str += obj.id;\n }\n // json data\n if (null != obj.data) {\n str += JSON.stringify(obj.data, this.replacer);\n }\n return str;\n }\n /**\n * Encode packet as 'buffer sequence' by removing blobs, and\n * deconstructing packet into object with placeholders and\n * a list of buffers.\n */\n encodeAsBinary(obj) {\n const deconstruction = deconstructPacket(obj);\n const pack = this.encodeAsString(deconstruction.packet);\n const buffers = deconstruction.buffers;\n buffers.unshift(pack); // add packet info to beginning of data list\n return buffers; // write all the buffers\n }\n}\n/**\n * A socket.io Decoder instance\n *\n * @return {Object} decoder\n */\nexport class Decoder extends Emitter {\n /**\n * Decoder constructor\n *\n * @param {function} reviver - custom reviver to pass down to JSON.stringify\n */\n constructor(reviver) {\n super();\n this.reviver = reviver;\n }\n /**\n * Decodes an encoded packet string into packet JSON.\n *\n * @param {String} obj - encoded packet\n */\n add(obj) {\n let packet;\n if (typeof obj === \"string\") {\n if (this.reconstructor) {\n throw new Error(\"got plaintext data when reconstructing a packet\");\n }\n packet = this.decodeString(obj);\n const isBinaryEvent = packet.type === PacketType.BINARY_EVENT;\n if (isBinaryEvent || packet.type === PacketType.BINARY_ACK) {\n packet.type = isBinaryEvent ? PacketType.EVENT : PacketType.ACK;\n // binary packet's json\n this.reconstructor = new BinaryReconstructor(packet);\n // no attachments, labeled binary but no binary data to follow\n if (packet.attachments === 0) {\n super.emitReserved(\"decoded\", packet);\n }\n }\n else {\n // non-binary full packet\n super.emitReserved(\"decoded\", packet);\n }\n }\n else if (isBinary(obj) || obj.base64) {\n // raw binary data\n if (!this.reconstructor) {\n throw new Error(\"got binary data when not reconstructing a packet\");\n }\n else {\n packet = this.reconstructor.takeBinaryData(obj);\n if (packet) {\n // received final buffer\n this.reconstructor = null;\n super.emitReserved(\"decoded\", packet);\n }\n }\n }\n else {\n throw new Error(\"Unknown type: \" + obj);\n }\n }\n /**\n * Decode a packet String (JSON data)\n *\n * @param {String} str\n * @return {Object} packet\n */\n decodeString(str) {\n let i = 0;\n // look up type\n const p = {\n type: Number(str.charAt(0)),\n };\n if (PacketType[p.type] === undefined) {\n throw new Error(\"unknown packet type \" + p.type);\n }\n // look up attachments if type binary\n if (p.type === PacketType.BINARY_EVENT ||\n p.type === PacketType.BINARY_ACK) {\n const start = i + 1;\n while (str.charAt(++i) !== \"-\" && i != str.length) { }\n const buf = str.substring(start, i);\n if (buf != Number(buf) || str.charAt(i) !== \"-\") {\n throw new Error(\"Illegal attachments\");\n }\n p.attachments = Number(buf);\n }\n // look up namespace (if any)\n if (\"/\" === str.charAt(i + 1)) {\n const start = i + 1;\n while (++i) {\n const c = str.charAt(i);\n if (\",\" === c)\n break;\n if (i === str.length)\n break;\n }\n p.nsp = str.substring(start, i);\n }\n else {\n p.nsp = \"/\";\n }\n // look up id\n const next = str.charAt(i + 1);\n if (\"\" !== next && Number(next) == next) {\n const start = i + 1;\n while (++i) {\n const c = str.charAt(i);\n if (null == c || Number(c) != c) {\n --i;\n break;\n }\n if (i === str.length)\n break;\n }\n p.id = Number(str.substring(start, i + 1));\n }\n // look up json data\n if (str.charAt(++i)) {\n const payload = this.tryParse(str.substr(i));\n if (Decoder.isPayloadValid(p.type, payload)) {\n p.data = payload;\n }\n else {\n throw new Error(\"invalid payload\");\n }\n }\n return p;\n }\n tryParse(str) {\n try {\n return JSON.parse(str, this.reviver);\n }\n catch (e) {\n return false;\n }\n }\n static isPayloadValid(type, payload) {\n switch (type) {\n case PacketType.CONNECT:\n return typeof payload === \"object\";\n case PacketType.DISCONNECT:\n return payload === undefined;\n case PacketType.CONNECT_ERROR:\n return typeof payload === \"string\" || typeof payload === \"object\";\n case PacketType.EVENT:\n case PacketType.BINARY_EVENT:\n return Array.isArray(payload) && payload.length > 0;\n case PacketType.ACK:\n case PacketType.BINARY_ACK:\n return Array.isArray(payload);\n }\n }\n /**\n * Deallocates a parser's resources\n */\n destroy() {\n if (this.reconstructor) {\n this.reconstructor.finishedReconstruction();\n this.reconstructor = null;\n }\n }\n}\n/**\n * A manager of a binary event's 'buffer sequence'. Should\n * be constructed whenever a packet of type BINARY_EVENT is\n * decoded.\n *\n * @param {Object} packet\n * @return {BinaryReconstructor} initialized reconstructor\n */\nclass BinaryReconstructor {\n constructor(packet) {\n this.packet = packet;\n this.buffers = [];\n this.reconPack = packet;\n }\n /**\n * Method to be called when binary data received from connection\n * after a BINARY_EVENT packet.\n *\n * @param {Buffer | ArrayBuffer} binData - the raw binary data received\n * @return {null | Object} returns null if more binary data is expected or\n * a reconstructed packet object if all buffers have been received.\n */\n takeBinaryData(binData) {\n this.buffers.push(binData);\n if (this.buffers.length === this.reconPack.attachments) {\n // done with buffer list\n const packet = reconstructPacket(this.reconPack, this.buffers);\n this.finishedReconstruction();\n return packet;\n }\n return null;\n }\n /**\n * Cleans up binary packet reconstruction variables.\n */\n finishedReconstruction() {\n this.reconPack = null;\n this.buffers = [];\n }\n}\n","export function on(obj, ev, fn) {\n obj.on(ev, fn);\n return function subDestroy() {\n obj.off(ev, fn);\n };\n}\n","import { PacketType } from \"socket.io-parser\";\nimport { on } from \"./on.js\";\nimport { Emitter, } from \"@socket.io/component-emitter\";\n/**\n * Internal events.\n * These events can't be emitted by the user.\n */\nconst RESERVED_EVENTS = Object.freeze({\n connect: 1,\n connect_error: 1,\n disconnect: 1,\n disconnecting: 1,\n // EventEmitter reserved events: https://nodejs.org/api/events.html#events_event_newlistener\n newListener: 1,\n removeListener: 1,\n});\n/**\n * A Socket is the fundamental class for interacting with the server.\n *\n * A Socket belongs to a certain Namespace (by default /) and uses an underlying {@link Manager} to communicate.\n *\n * @example\n * const socket = io();\n *\n * socket.on(\"connect\", () => {\n * console.log(\"connected\");\n * });\n *\n * // send an event to the server\n * socket.emit(\"foo\", \"bar\");\n *\n * socket.on(\"foobar\", () => {\n * // an event was received from the server\n * });\n *\n * // upon disconnection\n * socket.on(\"disconnect\", (reason) => {\n * console.log(`disconnected due to ${reason}`);\n * });\n */\nexport class Socket extends Emitter {\n /**\n * `Socket` constructor.\n */\n constructor(io, nsp, opts) {\n super();\n /**\n * Whether the socket is currently connected to the server.\n *\n * @example\n * const socket = io();\n *\n * socket.on(\"connect\", () => {\n * console.log(socket.connected); // true\n * });\n *\n * socket.on(\"disconnect\", () => {\n * console.log(socket.connected); // false\n * });\n */\n this.connected = false;\n /**\n * Whether the connection state was recovered after a temporary disconnection. In that case, any missed packets will\n * be transmitted by the server.\n */\n this.recovered = false;\n /**\n * Buffer for packets received before the CONNECT packet\n */\n this.receiveBuffer = [];\n /**\n * Buffer for packets that will be sent once the socket is connected\n */\n this.sendBuffer = [];\n /**\n * The queue of packets to be sent with retry in case of failure.\n *\n * Packets are sent one by one, each waiting for the server acknowledgement, in order to guarantee the delivery order.\n * @private\n */\n this._queue = [];\n /**\n * A sequence to generate the ID of the {@link QueuedPacket}.\n * @private\n */\n this._queueSeq = 0;\n this.ids = 0;\n this.acks = {};\n this.flags = {};\n this.io = io;\n this.nsp = nsp;\n if (opts && opts.auth) {\n this.auth = opts.auth;\n }\n this._opts = Object.assign({}, opts);\n if (this.io._autoConnect)\n this.open();\n }\n /**\n * Whether the socket is currently disconnected\n *\n * @example\n * const socket = io();\n *\n * socket.on(\"connect\", () => {\n * console.log(socket.disconnected); // false\n * });\n *\n * socket.on(\"disconnect\", () => {\n * console.log(socket.disconnected); // true\n * });\n */\n get disconnected() {\n return !this.connected;\n }\n /**\n * Subscribe to open, close and packet events\n *\n * @private\n */\n subEvents() {\n if (this.subs)\n return;\n const io = this.io;\n this.subs = [\n on(io, \"open\", this.onopen.bind(this)),\n on(io, \"packet\", this.onpacket.bind(this)),\n on(io, \"error\", this.onerror.bind(this)),\n on(io, \"close\", this.onclose.bind(this)),\n ];\n }\n /**\n * Whether the Socket will try to reconnect when its Manager connects or reconnects.\n *\n * @example\n * const socket = io();\n *\n * console.log(socket.active); // true\n *\n * socket.on(\"disconnect\", (reason) => {\n * if (reason === \"io server disconnect\") {\n * // the disconnection was initiated by the server, you need to manually reconnect\n * console.log(socket.active); // false\n * }\n * // else the socket will automatically try to reconnect\n * console.log(socket.active); // true\n * });\n */\n get active() {\n return !!this.subs;\n }\n /**\n * \"Opens\" the socket.\n *\n * @example\n * const socket = io({\n * autoConnect: false\n * });\n *\n * socket.connect();\n */\n connect() {\n if (this.connected)\n return this;\n this.subEvents();\n if (!this.io[\"_reconnecting\"])\n this.io.open(); // ensure open\n if (\"open\" === this.io._readyState)\n this.onopen();\n return this;\n }\n /**\n * Alias for {@link connect()}.\n */\n open() {\n return this.connect();\n }\n /**\n * Sends a `message` event.\n *\n * This method mimics the WebSocket.send() method.\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/WebSocket/send\n *\n * @example\n * socket.send(\"hello\");\n *\n * // this is equivalent to\n * socket.emit(\"message\", \"hello\");\n *\n * @return self\n */\n send(...args) {\n args.unshift(\"message\");\n this.emit.apply(this, args);\n return this;\n }\n /**\n * Override `emit`.\n * If the event is in `events`, it's emitted normally.\n *\n * @example\n * socket.emit(\"hello\", \"world\");\n *\n * // all serializable datastructures are supported (no need to call JSON.stringify)\n * socket.emit(\"hello\", 1, \"2\", { 3: [\"4\"], 5: Uint8Array.from([6]) });\n *\n * // with an acknowledgement from the server\n * socket.emit(\"hello\", \"world\", (val) => {\n * // ...\n * });\n *\n * @return self\n */\n emit(ev, ...args) {\n if (RESERVED_EVENTS.hasOwnProperty(ev)) {\n throw new Error('\"' + ev.toString() + '\" is a reserved event name');\n }\n args.unshift(ev);\n if (this._opts.retries && !this.flags.fromQueue && !this.flags.volatile) {\n this._addToQueue(args);\n return this;\n }\n const packet = {\n type: PacketType.EVENT,\n data: args,\n };\n packet.options = {};\n packet.options.compress = this.flags.compress !== false;\n // event ack callback\n if (\"function\" === typeof args[args.length - 1]) {\n const id = this.ids++;\n const ack = args.pop();\n this._registerAckCallback(id, ack);\n packet.id = id;\n }\n const isTransportWritable = this.io.engine &&\n this.io.engine.transport &&\n this.io.engine.transport.writable;\n const discardPacket = this.flags.volatile && (!isTransportWritable || !this.connected);\n if (discardPacket) {\n }\n else if (this.connected) {\n this.notifyOutgoingListeners(packet);\n this.packet(packet);\n }\n else {\n this.sendBuffer.push(packet);\n }\n this.flags = {};\n return this;\n }\n /**\n * @private\n */\n _registerAckCallback(id, ack) {\n var _a;\n const timeout = (_a = this.flags.timeout) !== null && _a !== void 0 ? _a : this._opts.ackTimeout;\n if (timeout === undefined) {\n this.acks[id] = ack;\n return;\n }\n // @ts-ignore\n const timer = this.io.setTimeoutFn(() => {\n delete this.acks[id];\n for (let i = 0; i < this.sendBuffer.length; i++) {\n if (this.sendBuffer[i].id === id) {\n this.sendBuffer.splice(i, 1);\n }\n }\n ack.call(this, new Error(\"operation has timed out\"));\n }, timeout);\n this.acks[id] = (...args) => {\n // @ts-ignore\n this.io.clearTimeoutFn(timer);\n ack.apply(this, [null, ...args]);\n };\n }\n /**\n * Emits an event and waits for an acknowledgement\n *\n * @example\n * // without timeout\n * const response = await socket.emitWithAck(\"hello\", \"world\");\n *\n * // with a specific timeout\n * try {\n * const response = await socket.timeout(1000).emitWithAck(\"hello\", \"world\");\n * } catch (err) {\n * // the server did not acknowledge the event in the given delay\n * }\n *\n * @return a Promise that will be fulfilled when the server acknowledges the event\n */\n emitWithAck(ev, ...args) {\n // the timeout flag is optional\n const withErr = this.flags.timeout !== undefined || this._opts.ackTimeout !== undefined;\n return new Promise((resolve, reject) => {\n args.push((arg1, arg2) => {\n if (withErr) {\n return arg1 ? reject(arg1) : resolve(arg2);\n }\n else {\n return resolve(arg1);\n }\n });\n this.emit(ev, ...args);\n });\n }\n /**\n * Add the packet to the queue.\n * @param args\n * @private\n */\n _addToQueue(args) {\n let ack;\n if (typeof args[args.length - 1] === \"function\") {\n ack = args.pop();\n }\n const packet = {\n id: this._queueSeq++,\n tryCount: 0,\n pending: false,\n args,\n flags: Object.assign({ fromQueue: true }, this.flags),\n };\n args.push((err, ...responseArgs) => {\n if (packet !== this._queue[0]) {\n // the packet has already been acknowledged\n return;\n }\n const hasError = err !== null;\n if (hasError) {\n if (packet.tryCount > this._opts.retries) {\n this._queue.shift();\n if (ack) {\n ack(err);\n }\n }\n }\n else {\n this._queue.shift();\n if (ack) {\n ack(null, ...responseArgs);\n }\n }\n packet.pending = false;\n return this._drainQueue();\n });\n this._queue.push(packet);\n this._drainQueue();\n }\n /**\n * Send the first packet of the queue, and wait for an acknowledgement from the server.\n * @param force - whether to resend a packet that has not been acknowledged yet\n *\n * @private\n */\n _drainQueue(force = false) {\n if (!this.connected || this._queue.length === 0) {\n return;\n }\n const packet = this._queue[0];\n if (packet.pending && !force) {\n return;\n }\n packet.pending = true;\n packet.tryCount++;\n this.flags = packet.flags;\n this.emit.apply(this, packet.args);\n }\n /**\n * Sends a packet.\n *\n * @param packet\n * @private\n */\n packet(packet) {\n packet.nsp = this.nsp;\n this.io._packet(packet);\n }\n /**\n * Called upon engine `open`.\n *\n * @private\n */\n onopen() {\n if (typeof this.auth == \"function\") {\n this.auth((data) => {\n this._sendConnectPacket(data);\n });\n }\n else {\n this._sendConnectPacket(this.auth);\n }\n }\n /**\n * Sends a CONNECT packet to initiate the Socket.IO session.\n *\n * @param data\n * @private\n */\n _sendConnectPacket(data) {\n this.packet({\n type: PacketType.CONNECT,\n data: this._pid\n ? Object.assign({ pid: this._pid, offset: this._lastOffset }, data)\n : data,\n });\n }\n /**\n * Called upon engine or manager `error`.\n *\n * @param err\n * @private\n */\n onerror(err) {\n if (!this.connected) {\n this.emitReserved(\"connect_error\", err);\n }\n }\n /**\n * Called upon engine `close`.\n *\n * @param reason\n * @param description\n * @private\n */\n onclose(reason, description) {\n this.connected = false;\n delete this.id;\n this.emitReserved(\"disconnect\", reason, description);\n }\n /**\n * Called with socket packet.\n *\n * @param packet\n * @private\n */\n onpacket(packet) {\n const sameNamespace = packet.nsp === this.nsp;\n if (!sameNamespace)\n return;\n switch (packet.type) {\n case PacketType.CONNECT:\n if (packet.data && packet.data.sid) {\n this.onconnect(packet.data.sid, packet.data.pid);\n }\n else {\n this.emitReserved(\"connect_error\", new Error(\"It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)\"));\n }\n break;\n case PacketType.EVENT:\n case PacketType.BINARY_EVENT:\n this.onevent(packet);\n break;\n case PacketType.ACK:\n case PacketType.BINARY_ACK:\n this.onack(packet);\n break;\n case PacketType.DISCONNECT:\n this.ondisconnect();\n break;\n case PacketType.CONNECT_ERROR:\n this.destroy();\n const err = new Error(packet.data.message);\n // @ts-ignore\n err.data = packet.data.data;\n this.emitReserved(\"connect_error\", err);\n break;\n }\n }\n /**\n * Called upon a server event.\n *\n * @param packet\n * @private\n */\n onevent(packet) {\n const args = packet.data || [];\n if (null != packet.id) {\n args.push(this.ack(packet.id));\n }\n if (this.connected) {\n this.emitEvent(args);\n }\n else {\n this.receiveBuffer.push(Object.freeze(args));\n }\n }\n emitEvent(args) {\n if (this._anyListeners && this._anyListeners.length) {\n const listeners = this._anyListeners.slice();\n for (const listener of listeners) {\n listener.apply(this, args);\n }\n }\n super.emit.apply(this, args);\n if (this._pid && args.length && typeof args[args.length - 1] === \"string\") {\n this._lastOffset = args[args.length - 1];\n }\n }\n /**\n * Produces an ack callback to emit with an event.\n *\n * @private\n */\n ack(id) {\n const self = this;\n let sent = false;\n return function (...args) {\n // prevent double callbacks\n if (sent)\n return;\n sent = true;\n self.packet({\n type: PacketType.ACK,\n id: id,\n data: args,\n });\n };\n }\n /**\n * Called upon a server acknowlegement.\n *\n * @param packet\n * @private\n */\n onack(packet) {\n const ack = this.acks[packet.id];\n if (\"function\" === typeof ack) {\n ack.apply(this, packet.data);\n delete this.acks[packet.id];\n }\n else {\n }\n }\n /**\n * Called upon server connect.\n *\n * @private\n */\n onconnect(id, pid) {\n this.id = id;\n this.recovered = pid && this._pid === pid;\n this._pid = pid; // defined only if connection state recovery is enabled\n this.connected = true;\n this.emitBuffered();\n this.emitReserved(\"connect\");\n this._drainQueue(true);\n }\n /**\n * Emit buffered events (received and emitted).\n *\n * @private\n */\n emitBuffered() {\n this.receiveBuffer.forEach((args) => this.emitEvent(args));\n this.receiveBuffer = [];\n this.sendBuffer.forEach((packet) => {\n this.notifyOutgoingListeners(packet);\n this.packet(packet);\n });\n this.sendBuffer = [];\n }\n /**\n * Called upon server disconnect.\n *\n * @private\n */\n ondisconnect() {\n this.destroy();\n this.onclose(\"io server disconnect\");\n }\n /**\n * Called upon forced client/server side disconnections,\n * this method ensures the manager stops tracking us and\n * that reconnections don't get triggered for this.\n *\n * @private\n */\n destroy() {\n if (this.subs) {\n // clean subscriptions to avoid reconnections\n this.subs.forEach((subDestroy) => subDestroy());\n this.subs = undefined;\n }\n this.io[\"_destroy\"](this);\n }\n /**\n * Disconnects the socket manually. In that case, the socket will not try to reconnect.\n *\n * If this is the last active Socket instance of the {@link Manager}, the low-level connection will be closed.\n *\n * @example\n * const socket = io();\n *\n * socket.on(\"disconnect\", (reason) => {\n * // console.log(reason); prints \"io client disconnect\"\n * });\n *\n * socket.disconnect();\n *\n * @return self\n */\n disconnect() {\n if (this.connected) {\n this.packet({ type: PacketType.DISCONNECT });\n }\n // remove socket from pool\n this.destroy();\n if (this.connected) {\n // fire events\n this.onclose(\"io client disconnect\");\n }\n return this;\n }\n /**\n * Alias for {@link disconnect()}.\n *\n * @return self\n */\n close() {\n return this.disconnect();\n }\n /**\n * Sets the compress flag.\n *\n * @example\n * socket.compress(false).emit(\"hello\");\n *\n * @param compress - if `true`, compresses the sending data\n * @return self\n */\n compress(compress) {\n this.flags.compress = compress;\n return this;\n }\n /**\n * Sets a modifier for a subsequent event emission that the event message will be dropped when this socket is not\n * ready to send messages.\n *\n * @example\n * socket.volatile.emit(\"hello\"); // the server may or may not receive it\n *\n * @returns self\n */\n get volatile() {\n this.flags.volatile = true;\n return this;\n }\n /**\n * Sets a modifier for a subsequent event emission that the callback will be called with an error when the\n * given number of milliseconds have elapsed without an acknowledgement from the server:\n *\n * @example\n * socket.timeout(5000).emit(\"my-event\", (err) => {\n * if (err) {\n * // the server did not acknowledge the event in the given delay\n * }\n * });\n *\n * @returns self\n */\n timeout(timeout) {\n this.flags.timeout = timeout;\n return this;\n }\n /**\n * Adds a listener that will be fired when any event is emitted. The event name is passed as the first argument to the\n * callback.\n *\n * @example\n * socket.onAny((event, ...args) => {\n * console.log(`got ${event}`);\n * });\n *\n * @param listener\n */\n onAny(listener) {\n this._anyListeners = this._anyListeners || [];\n this._anyListeners.push(listener);\n return this;\n }\n /**\n * Adds a listener that will be fired when any event is emitted. The event name is passed as the first argument to the\n * callback. The listener is added to the beginning of the listeners array.\n *\n * @example\n * socket.prependAny((event, ...args) => {\n * console.log(`got event ${event}`);\n * });\n *\n * @param listener\n */\n prependAny(listener) {\n this._anyListeners = this._anyListeners || [];\n this._anyListeners.unshift(listener);\n return this;\n }\n /**\n * Removes the listener that will be fired when any event is emitted.\n *\n * @example\n * const catchAllListener = (event, ...args) => {\n * console.log(`got event ${event}`);\n * }\n *\n * socket.onAny(catchAllListener);\n *\n * // remove a specific listener\n * socket.offAny(catchAllListener);\n *\n * // or remove all listeners\n * socket.offAny();\n *\n * @param listener\n */\n offAny(listener) {\n if (!this._anyListeners) {\n return this;\n }\n if (listener) {\n const listeners = this._anyListeners;\n for (let i = 0; i < listeners.length; i++) {\n if (listener === listeners[i]) {\n listeners.splice(i, 1);\n return this;\n }\n }\n }\n else {\n this._anyListeners = [];\n }\n return this;\n }\n /**\n * Returns an array of listeners that are listening for any event that is specified. This array can be manipulated,\n * e.g. to remove listeners.\n */\n listenersAny() {\n return this._anyListeners || [];\n }\n /**\n * Adds a listener that will be fired when any event is emitted. The event name is passed as the first argument to the\n * callback.\n *\n * Note: acknowledgements sent to the server are not included.\n *\n * @example\n * socket.onAnyOutgoing((event, ...args) => {\n * console.log(`sent event ${event}`);\n * });\n *\n * @param listener\n */\n onAnyOutgoing(listener) {\n this._anyOutgoingListeners = this._anyOutgoingListeners || [];\n this._anyOutgoingListeners.push(listener);\n return this;\n }\n /**\n * Adds a listener that will be fired when any event is emitted. The event name is passed as the first argument to the\n * callback. The listener is added to the beginning of the listeners array.\n *\n * Note: acknowledgements sent to the server are not included.\n *\n * @example\n * socket.prependAnyOutgoing((event, ...args) => {\n * console.log(`sent event ${event}`);\n * });\n *\n * @param listener\n */\n prependAnyOutgoing(listener) {\n this._anyOutgoingListeners = this._anyOutgoingListeners || [];\n this._anyOutgoingListeners.unshift(listener);\n return this;\n }\n /**\n * Removes the listener that will be fired when any event is emitted.\n *\n * @example\n * const catchAllListener = (event, ...args) => {\n * console.log(`sent event ${event}`);\n * }\n *\n * socket.onAnyOutgoing(catchAllListener);\n *\n * // remove a specific listener\n * socket.offAnyOutgoing(catchAllListener);\n *\n * // or remove all listeners\n * socket.offAnyOutgoing();\n *\n * @param [listener] - the catch-all listener (optional)\n */\n offAnyOutgoing(listener) {\n if (!this._anyOutgoingListeners) {\n return this;\n }\n if (listener) {\n const listeners = this._anyOutgoingListeners;\n for (let i = 0; i < listeners.length; i++) {\n if (listener === listeners[i]) {\n listeners.splice(i, 1);\n return this;\n }\n }\n }\n else {\n this._anyOutgoingListeners = [];\n }\n return this;\n }\n /**\n * Returns an array of listeners that are listening for any event that is specified. This array can be manipulated,\n * e.g. to remove listeners.\n */\n listenersAnyOutgoing() {\n return this._anyOutgoingListeners || [];\n }\n /**\n * Notify the listeners for each packet sent\n *\n * @param packet\n *\n * @private\n */\n notifyOutgoingListeners(packet) {\n if (this._anyOutgoingListeners && this._anyOutgoingListeners.length) {\n const listeners = this._anyOutgoingListeners.slice();\n for (const listener of listeners) {\n listener.apply(this, packet.data);\n }\n }\n }\n}\n","/**\n * Initialize backoff timer with `opts`.\n *\n * - `min` initial timeout in milliseconds [100]\n * - `max` max timeout [10000]\n * - `jitter` [0]\n * - `factor` [2]\n *\n * @param {Object} opts\n * @api public\n */\nexport function Backoff(opts) {\n opts = opts || {};\n this.ms = opts.min || 100;\n this.max = opts.max || 10000;\n this.factor = opts.factor || 2;\n this.jitter = opts.jitter > 0 && opts.jitter <= 1 ? opts.jitter : 0;\n this.attempts = 0;\n}\n/**\n * Return the backoff duration.\n *\n * @return {Number}\n * @api public\n */\nBackoff.prototype.duration = function () {\n var ms = this.ms * Math.pow(this.factor, this.attempts++);\n if (this.jitter) {\n var rand = Math.random();\n var deviation = Math.floor(rand * this.jitter * ms);\n ms = (Math.floor(rand * 10) & 1) == 0 ? ms - deviation : ms + deviation;\n }\n return Math.min(ms, this.max) | 0;\n};\n/**\n * Reset the number of attempts.\n *\n * @api public\n */\nBackoff.prototype.reset = function () {\n this.attempts = 0;\n};\n/**\n * Set the minimum duration\n *\n * @api public\n */\nBackoff.prototype.setMin = function (min) {\n this.ms = min;\n};\n/**\n * Set the maximum duration\n *\n * @api public\n */\nBackoff.prototype.setMax = function (max) {\n this.max = max;\n};\n/**\n * Set the jitter\n *\n * @api public\n */\nBackoff.prototype.setJitter = function (jitter) {\n this.jitter = jitter;\n};\n","import { Socket as Engine, installTimerFunctions, nextTick, } from \"engine.io-client\";\nimport { Socket } from \"./socket.js\";\nimport * as parser from \"socket.io-parser\";\nimport { on } from \"./on.js\";\nimport { Backoff } from \"./contrib/backo2.js\";\nimport { Emitter, } from \"@socket.io/component-emitter\";\nexport class Manager extends Emitter {\n constructor(uri, opts) {\n var _a;\n super();\n this.nsps = {};\n this.subs = [];\n if (uri && \"object\" === typeof uri) {\n opts = uri;\n uri = undefined;\n }\n opts = opts || {};\n opts.path = opts.path || \"/socket.io\";\n this.opts = opts;\n installTimerFunctions(this, opts);\n this.reconnection(opts.reconnection !== false);\n this.reconnectionAttempts(opts.reconnectionAttempts || Infinity);\n this.reconnectionDelay(opts.reconnectionDelay || 1000);\n this.reconnectionDelayMax(opts.reconnectionDelayMax || 5000);\n this.randomizationFactor((_a = opts.randomizationFactor) !== null && _a !== void 0 ? _a : 0.5);\n this.backoff = new Backoff({\n min: this.reconnectionDelay(),\n max: this.reconnectionDelayMax(),\n jitter: this.randomizationFactor(),\n });\n this.timeout(null == opts.timeout ? 20000 : opts.timeout);\n this._readyState = \"closed\";\n this.uri = uri;\n const _parser = opts.parser || parser;\n this.encoder = new _parser.Encoder();\n this.decoder = new _parser.Decoder();\n this._autoConnect = opts.autoConnect !== false;\n if (this._autoConnect)\n this.open();\n }\n reconnection(v) {\n if (!arguments.length)\n return this._reconnection;\n this._reconnection = !!v;\n return this;\n }\n reconnectionAttempts(v) {\n if (v === undefined)\n return this._reconnectionAttempts;\n this._reconnectionAttempts = v;\n return this;\n }\n reconnectionDelay(v) {\n var _a;\n if (v === undefined)\n return this._reconnectionDelay;\n this._reconnectionDelay = v;\n (_a = this.backoff) === null || _a === void 0 ? void 0 : _a.setMin(v);\n return this;\n }\n randomizationFactor(v) {\n var _a;\n if (v === undefined)\n return this._randomizationFactor;\n this._randomizationFactor = v;\n (_a = this.backoff) === null || _a === void 0 ? void 0 : _a.setJitter(v);\n return this;\n }\n reconnectionDelayMax(v) {\n var _a;\n if (v === undefined)\n return this._reconnectionDelayMax;\n this._reconnectionDelayMax = v;\n (_a = this.backoff) === null || _a === void 0 ? void 0 : _a.setMax(v);\n return this;\n }\n timeout(v) {\n if (!arguments.length)\n return this._timeout;\n this._timeout = v;\n return this;\n }\n /**\n * Starts trying to reconnect if reconnection is enabled and we have not\n * started reconnecting yet\n *\n * @private\n */\n maybeReconnectOnOpen() {\n // Only try to reconnect if it's the first time we're connecting\n if (!this._reconnecting &&\n this._reconnection &&\n this.backoff.attempts === 0) {\n // keeps reconnection from firing twice for the same reconnection loop\n this.reconnect();\n }\n }\n /**\n * Sets the current transport `socket`.\n *\n * @param {Function} fn - optional, callback\n * @return self\n * @public\n */\n open(fn) {\n if (~this._readyState.indexOf(\"open\"))\n return this;\n this.engine = new Engine(this.uri, this.opts);\n const socket = this.engine;\n const self = this;\n this._readyState = \"opening\";\n this.skipReconnect = false;\n // emit `open`\n const openSubDestroy = on(socket, \"open\", function () {\n self.onopen();\n fn && fn();\n });\n // emit `error`\n const errorSub = on(socket, \"error\", (err) => {\n self.cleanup();\n self._readyState = \"closed\";\n this.emitReserved(\"error\", err);\n if (fn) {\n fn(err);\n }\n else {\n // Only do this if there is no fn to handle the error\n self.maybeReconnectOnOpen();\n }\n });\n if (false !== this._timeout) {\n const timeout = this._timeout;\n if (timeout === 0) {\n openSubDestroy(); // prevents a race condition with the 'open' event\n }\n // set timer\n const timer = this.setTimeoutFn(() => {\n openSubDestroy();\n socket.close();\n // @ts-ignore\n socket.emit(\"error\", new Error(\"timeout\"));\n }, timeout);\n if (this.opts.autoUnref) {\n timer.unref();\n }\n this.subs.push(function subDestroy() {\n clearTimeout(timer);\n });\n }\n this.subs.push(openSubDestroy);\n this.subs.push(errorSub);\n return this;\n }\n /**\n * Alias for open()\n *\n * @return self\n * @public\n */\n connect(fn) {\n return this.open(fn);\n }\n /**\n * Called upon transport open.\n *\n * @private\n */\n onopen() {\n // clear old subs\n this.cleanup();\n // mark as open\n this._readyState = \"open\";\n this.emitReserved(\"open\");\n // add new subs\n const socket = this.engine;\n this.subs.push(on(socket, \"ping\", this.onping.bind(this)), on(socket, \"data\", this.ondata.bind(this)), on(socket, \"error\", this.onerror.bind(this)), on(socket, \"close\", this.onclose.bind(this)), on(this.decoder, \"decoded\", this.ondecoded.bind(this)));\n }\n /**\n * Called upon a ping.\n *\n * @private\n */\n onping() {\n this.emitReserved(\"ping\");\n }\n /**\n * Called with data.\n *\n * @private\n */\n ondata(data) {\n try {\n this.decoder.add(data);\n }\n catch (e) {\n this.onclose(\"parse error\", e);\n }\n }\n /**\n * Called when parser fully decodes a packet.\n *\n * @private\n */\n ondecoded(packet) {\n // the nextTick call prevents an exception in a user-provided event listener from triggering a disconnection due to a \"parse error\"\n nextTick(() => {\n this.emitReserved(\"packet\", packet);\n }, this.setTimeoutFn);\n }\n /**\n * Called upon socket error.\n *\n * @private\n */\n onerror(err) {\n this.emitReserved(\"error\", err);\n }\n /**\n * Creates a new socket for the given `nsp`.\n *\n * @return {Socket}\n * @public\n */\n socket(nsp, opts) {\n let socket = this.nsps[nsp];\n if (!socket) {\n socket = new Socket(this, nsp, opts);\n this.nsps[nsp] = socket;\n }\n else if (this._autoConnect && !socket.active) {\n socket.connect();\n }\n return socket;\n }\n /**\n * Called upon a socket close.\n *\n * @param socket\n * @private\n */\n _destroy(socket) {\n const nsps = Object.keys(this.nsps);\n for (const nsp of nsps) {\n const socket = this.nsps[nsp];\n if (socket.active) {\n return;\n }\n }\n this._close();\n }\n /**\n * Writes a packet.\n *\n * @param packet\n * @private\n */\n _packet(packet) {\n const encodedPackets = this.encoder.encode(packet);\n for (let i = 0; i < encodedPackets.length; i++) {\n this.engine.write(encodedPackets[i], packet.options);\n }\n }\n /**\n * Clean up transport subscriptions and packet buffer.\n *\n * @private\n */\n cleanup() {\n this.subs.forEach((subDestroy) => subDestroy());\n this.subs.length = 0;\n this.decoder.destroy();\n }\n /**\n * Close the current socket.\n *\n * @private\n */\n _close() {\n this.skipReconnect = true;\n this._reconnecting = false;\n this.onclose(\"forced close\");\n if (this.engine)\n this.engine.close();\n }\n /**\n * Alias for close()\n *\n * @private\n */\n disconnect() {\n return this._close();\n }\n /**\n * Called upon engine close.\n *\n * @private\n */\n onclose(reason, description) {\n this.cleanup();\n this.backoff.reset();\n this._readyState = \"closed\";\n this.emitReserved(\"close\", reason, description);\n if (this._reconnection && !this.skipReconnect) {\n this.reconnect();\n }\n }\n /**\n * Attempt a reconnection.\n *\n * @private\n */\n reconnect() {\n if (this._reconnecting || this.skipReconnect)\n return this;\n const self = this;\n if (this.backoff.attempts >= this._reconnectionAttempts) {\n this.backoff.reset();\n this.emitReserved(\"reconnect_failed\");\n this._reconnecting = false;\n }\n else {\n const delay = this.backoff.duration();\n this._reconnecting = true;\n const timer = this.setTimeoutFn(() => {\n if (self.skipReconnect)\n return;\n this.emitReserved(\"reconnect_attempt\", self.backoff.attempts);\n // check again for the case socket closed in above events\n if (self.skipReconnect)\n return;\n self.open((err) => {\n if (err) {\n self._reconnecting = false;\n self.reconnect();\n this.emitReserved(\"reconnect_error\", err);\n }\n else {\n self.onreconnect();\n }\n });\n }, delay);\n if (this.opts.autoUnref) {\n timer.unref();\n }\n this.subs.push(function subDestroy() {\n clearTimeout(timer);\n });\n }\n }\n /**\n * Called upon successful reconnect.\n *\n * @private\n */\n onreconnect() {\n const attempt = this.backoff.attempts;\n this._reconnecting = false;\n this.backoff.reset();\n this.emitReserved(\"reconnect\", attempt);\n }\n}\n","import { url } from \"./url.js\";\nimport { Manager } from \"./manager.js\";\nimport { Socket } from \"./socket.js\";\n/**\n * Managers cache.\n */\nconst cache = {};\nfunction lookup(uri, opts) {\n if (typeof uri === \"object\") {\n opts = uri;\n uri = undefined;\n }\n opts = opts || {};\n const parsed = url(uri, opts.path || \"/socket.io\");\n const source = parsed.source;\n const id = parsed.id;\n const path = parsed.path;\n const sameNamespace = cache[id] && path in cache[id][\"nsps\"];\n const newConnection = opts.forceNew ||\n opts[\"force new connection\"] ||\n false === opts.multiplex ||\n sameNamespace;\n let io;\n if (newConnection) {\n io = new Manager(source, opts);\n }\n else {\n if (!cache[id]) {\n cache[id] = new Manager(source, opts);\n }\n io = cache[id];\n }\n if (parsed.query && !opts.query) {\n opts.query = parsed.queryKey;\n }\n return io.socket(parsed.path, opts);\n}\n// so that \"lookup\" can be used both as a function (e.g. `io(...)`) and as a\n// namespace (e.g. `io.connect(...)`), for backward compatibility\nObject.assign(lookup, {\n Manager,\n Socket,\n io: lookup,\n connect: lookup,\n});\n/**\n * Protocol version.\n *\n * @public\n */\nexport { protocol } from \"socket.io-parser\";\n/**\n * Expose constructors for standalone build.\n *\n * @public\n */\nexport { Manager, Socket, lookup as io, lookup as connect, lookup as default, };\n","import { parse } from \"engine.io-client\";\n/**\n * URL parser.\n *\n * @param uri - url\n * @param path - the request path of the connection\n * @param loc - An object meant to mimic window.location.\n * Defaults to window.location.\n * @public\n */\nexport function url(uri, path = \"\", loc) {\n let obj = uri;\n // default to window.location\n loc = loc || (typeof location !== \"undefined\" && location);\n if (null == uri)\n uri = loc.protocol + \"//\" + loc.host;\n // relative path support\n if (typeof uri === \"string\") {\n if (\"/\" === uri.charAt(0)) {\n if (\"/\" === uri.charAt(1)) {\n uri = loc.protocol + uri;\n }\n else {\n uri = loc.host + uri;\n }\n }\n if (!/^(https?|wss?):\\/\\//.test(uri)) {\n if (\"undefined\" !== typeof loc) {\n uri = loc.protocol + \"//\" + uri;\n }\n else {\n uri = \"https://\" + uri;\n }\n }\n // parse\n obj = parse(uri);\n }\n // make sure we treat `localhost:80` and `localhost` equally\n if (!obj.port) {\n if (/^(http|ws)$/.test(obj.protocol)) {\n obj.port = \"80\";\n }\n else if (/^(http|ws)s$/.test(obj.protocol)) {\n obj.port = \"443\";\n }\n }\n obj.path = obj.path || \"/\";\n const ipv6 = obj.host.indexOf(\":\") !== -1;\n const host = ipv6 ? \"[\" + obj.host + \"]\" : obj.host;\n // define unique id\n obj.id = obj.protocol + \"://\" + host + \":\" + obj.port + path;\n // define href\n obj.href =\n obj.protocol +\n \"://\" +\n host +\n (loc && loc.port === obj.port ? \"\" : \":\" + obj.port);\n return obj;\n}\n","// -* - coding: utf - 8 -* -\n// Copyright(c) 2023 Intel Corporation\n//\n// Licensed under the Apache License, Version 2.0(the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport React, { useEffect, useState } from 'react';\nimport Button from 'react-bootstrap/esm/Button';\nimport Spinner from 'react-bootstrap/Spinner';\nimport './Workloads.scss';\nimport moment from 'moment';\nimport { api } from './../../App';\nimport { getLabel } from './../Diagnosis/Diagnosis';\nimport { io } from 'socket.io-client';\n\nexport default function Workloads({ setSelectedWorkload, selectedWorkload, setWarningText }) {\n const [workloads, setWorkloads] = useState([]);\n const [spinner, setSpinner] = useState(true);\n\n let socket = io('/');\n socket.on('Config update', data => {\n getWorkloads(false);\n });\n\n useEffect(() => {\n getWorkloads(true);\n }, []);\n\n let getWorkloads = (changeSelectedWorkload) => {\n api.get('api/workloads?token=' + localStorage.getItem('token'))\n .then(\n response => {\n if (changeSelectedWorkload) {\n setSelectedWorkload(response.data.workloads[0]);\n }\n setWorkloads(response.data.workloads);\n setSpinner(false);\n }\n )\n .catch(error => {\n setWarningText(error.message);\n setSpinner(false);\n });\n }\n\n let workloadsList = workloads.map(workload => {\n return (\n
{ setSelectedWorkload(workload) }}>\n \n
\n );\n });\n\n return (\n
\n {spinner && }\n {workloadsList.length > 0 &&\n
\n

Workloads

\n {workloadsList}\n
\n }\n {workloadsList.length === 0 &&\n
\n

Neural Insights

\n

Run diagnosis or profiling process to see workloads on this page.

\n
\n }\n {selectedWorkload &&\n
\n

Details

\n

Framework: {selectedWorkload?.framework}

\n

Model path: {getLabel(selectedWorkload?.model_path)}

\n
\n }\n
\n )\n}\n","// -* - coding: utf - 8 -* -\n// Copyright(c) 2023 Intel Corporation\n//\n// Licensed under the Apache License, Version 2.0(the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport React, { useEffect, useState, useMemo } from 'react';\nimport './Profiling.scss';\nimport { api } from './../../App';\nimport Plot from 'react-plotly.js';\nimport { getLabel } from './../Diagnosis/Diagnosis';\nimport Table from 'react-bootstrap/Table';\n\nexport default function Profiling({ selectedWorkload }) {\n const [profilingTable, setProfilingTable] = useState([]);\n const [profilingChartData, setProfilingChartData] = useState([]);\n return (\n
\n \n \n
\n )\n}\n\nfunction ProfilingTable({ selectedWorkload, profilingTable, setProfilingTable, setProfilingChartData, setWarningText }) {\n\n const [checked, setChecked] = useState({});\n const [sorting, setSorting] = useState({ field: 'node_name', direction: 1 });\n\n useEffect(() => {\n if (selectedWorkload) {\n api.post('api/profiling?token=' + localStorage.getItem('token'), { workload_id: selectedWorkload.uuid })\n .then(\n response => {\n setProfilingTable(response.data);\n setSorting({ field: 'total_execution_time', direction: 1 });\n const showOnChart = {};\n const chartData = [];\n response.data.forEach((node, index) => {\n if (index < 10) {\n showOnChart[node.node_name] = true;\n chartData.push(node);\n } else {\n showOnChart[node.node_name] = false;\n }\n });\n setChecked(showOnChart);\n setProfilingChartData(chartData);\n })\n .catch(error => {\n setWarningText(error.message);\n });\n }\n }, [selectedWorkload]);\n\n let sortedProfiling = useMemo(() => {\n let sortedTable = [...profilingTable];\n if (sorting !== null) {\n sortedTable.sort((a, b) => {\n if (a[sorting.field] < b[sorting.field]) {\n return sorting.direction;\n }\n if (a[sorting.field] > b[sorting.field]) {\n return -sorting.direction;\n }\n return 0;\n });\n }\n return sortedTable;\n }, [sorting]);\n\n const requestSorting = field => {\n let direction = -sorting.direction;\n setSorting({ field, direction });\n };\n\n const getSortingClass = (name) => {\n let classes = 'header clickable';\n if (sorting.field === name) {\n return classes + (sorting.direction === 1 ? ' ascending' : ' descending');\n }\n return 'header clickable';\n };\n\n const requestChartCheck = (nodeName, value) => {\n let chartCheck = checked;\n chartCheck[nodeName] = value;\n setChecked(chartCheck);\n const newProfilingChartData = profilingTable.filter(node => checked[node.node_name] === true);\n setProfilingChartData(newProfilingChartData);\n };\n\n const tableContent = sortedProfiling?.map(profiling => {\n return (\n \n {profiling.node_name}\n {profiling.accelerator_execution_time}\n {profiling.cpu_execution_time}\n {profiling.op_defined}\n {profiling.op_run}\n {profiling.total_execution_time}\n \n {\n requestChartCheck(profiling.node_name, e.target.checked);\n }}\n />\n \n \n );\n });\n\n return (\n
\n \n \n \n \n \n \n \n \n \n \n \n {tableContent}\n \n
requestSorting('node_name')}>Name requestSorting('accelerator_execution_time')}>Accelerator execution time [μs] requestSorting('cpu_execution_time')}>CPU execution time [μs] requestSorting('op_defined')}>Op defined requestSorting('op_run')}>Op run requestSorting('total_execution_time')}>Total execution time [μs]Show on chart
\n
\n );\n}\n\nfunction ProfilingChart({ profilingChartData }) {\n return (
\n \n
)\n};\n\nconst getChartData = (profilingData) => {\n let data = [];\n if (Object.keys(profilingData).length) {\n const colorPalette = generateColor(profilingData.length);\n profilingData.forEach((node, index) => {\n data.push({\n name: getLabel(node.node_name),\n x: [node.node_name],\n y: [node.total_execution_time],\n type: 'bar',\n marker: {\n color: colorPalette[index]\n }\n });\n });\n }\n return data;\n}\n\nconst layout = {\n responsive: true,\n xaxis: {\n title: 'Total execution time [μs]',\n showticklabels: false\n },\n yaxis: {\n showgrid: true,\n },\n legend: {\n tracegroupgap: 0,\n },\n opacity: 1,\n};\n\nconst generateColor = (num) => {\n const colorPalette = [];\n const step = 100 / num;\n for (let i = num; i > 0; --i) {\n colorPalette.push(`rgb(${20 + (step * i)}, ${100 - (step * i * 0.1)}, ${200 - (step * i * 0.1)})`);\n }\n return colorPalette;\n}\n\n","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","import invariant from 'invariant';\n\nvar noop = function noop() {};\n\nfunction readOnlyPropType(handler, name) {\n return function (props, propName) {\n if (props[propName] !== undefined) {\n if (!props[handler]) {\n return new Error(\"You have provided a `\" + propName + \"` prop to `\" + name + \"` \" + (\"without an `\" + handler + \"` handler prop. This will render a read-only field. \") + (\"If the field should be mutable use `\" + defaultKey(propName) + \"`. \") + (\"Otherwise, set `\" + handler + \"`.\"));\n }\n }\n };\n}\n\nexport function uncontrolledPropTypes(controlledValues, displayName) {\n var propTypes = {};\n Object.keys(controlledValues).forEach(function (prop) {\n // add default propTypes for folks that use runtime checks\n propTypes[defaultKey(prop)] = noop;\n\n if (process.env.NODE_ENV !== 'production') {\n var handler = controlledValues[prop];\n !(typeof handler === 'string' && handler.trim().length) ? process.env.NODE_ENV !== \"production\" ? invariant(false, 'Uncontrollable - [%s]: the prop `%s` needs a valid handler key name in order to make it uncontrollable', displayName, prop) : invariant(false) : void 0;\n propTypes[prop] = readOnlyPropType(handler, displayName);\n }\n });\n return propTypes;\n}\nexport function isProp(props, prop) {\n return props[prop] !== undefined;\n}\nexport function defaultKey(key) {\n return 'default' + key.charAt(0).toUpperCase() + key.substr(1);\n}\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\nexport function canAcceptRef(component) {\n return !!component && (typeof component !== 'function' || component.prototype && component.prototype.isReactComponent);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\n\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\n\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\n\nimport { useCallback, useRef, useState } from 'react';\nimport * as Utils from './utils';\n\nfunction useUncontrolledProp(propValue, defaultValue, handler) {\n var wasPropRef = useRef(propValue !== undefined);\n\n var _useState = useState(defaultValue),\n stateValue = _useState[0],\n setState = _useState[1];\n\n var isProp = propValue !== undefined;\n var wasProp = wasPropRef.current;\n wasPropRef.current = isProp;\n /**\n * If a prop switches from controlled to Uncontrolled\n * reset its value to the defaultValue\n */\n\n if (!isProp && wasProp && stateValue !== defaultValue) {\n setState(defaultValue);\n }\n\n return [isProp ? propValue : stateValue, useCallback(function (value) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (handler) handler.apply(void 0, [value].concat(args));\n setState(value);\n }, [handler])];\n}\n\nexport { useUncontrolledProp };\nexport default function useUncontrolled(props, config) {\n return Object.keys(config).reduce(function (result, fieldName) {\n var _extends2;\n\n var _ref = result,\n defaultValue = _ref[Utils.defaultKey(fieldName)],\n propsValue = _ref[fieldName],\n rest = _objectWithoutPropertiesLoose(_ref, [Utils.defaultKey(fieldName), fieldName].map(_toPropertyKey));\n\n var handlerName = config[fieldName];\n\n var _useUncontrolledProp = useUncontrolledProp(propsValue, defaultValue, props[handlerName]),\n value = _useUncontrolledProp[0],\n handler = _useUncontrolledProp[1];\n\n return _extends({}, rest, (_extends2 = {}, _extends2[fieldName] = value, _extends2[handlerName] = handler, _extends2));\n }, props);\n}","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nfunction componentWillMount() {\n // Call this.constructor.gDSFP to support sub-classes.\n var state = this.constructor.getDerivedStateFromProps(this.props, this.state);\n if (state !== null && state !== undefined) {\n this.setState(state);\n }\n}\n\nfunction componentWillReceiveProps(nextProps) {\n // Call this.constructor.gDSFP to support sub-classes.\n // Use the setState() updater to ensure state isn't stale in certain edge cases.\n function updater(prevState) {\n var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);\n return state !== null && state !== undefined ? state : null;\n }\n // Binding \"this\" is important for shallow renderer support.\n this.setState(updater.bind(this));\n}\n\nfunction componentWillUpdate(nextProps, nextState) {\n try {\n var prevProps = this.props;\n var prevState = this.state;\n this.props = nextProps;\n this.state = nextState;\n this.__reactInternalSnapshotFlag = true;\n this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(\n prevProps,\n prevState\n );\n } finally {\n this.props = prevProps;\n this.state = prevState;\n }\n}\n\n// React may warn about cWM/cWRP/cWU methods being deprecated.\n// Add a flag to suppress these warnings for this special case.\ncomponentWillMount.__suppressDeprecationWarning = true;\ncomponentWillReceiveProps.__suppressDeprecationWarning = true;\ncomponentWillUpdate.__suppressDeprecationWarning = true;\n\nfunction polyfill(Component) {\n var prototype = Component.prototype;\n\n if (!prototype || !prototype.isReactComponent) {\n throw new Error('Can only polyfill class components');\n }\n\n if (\n typeof Component.getDerivedStateFromProps !== 'function' &&\n typeof prototype.getSnapshotBeforeUpdate !== 'function'\n ) {\n return Component;\n }\n\n // If new component APIs are defined, \"unsafe\" lifecycles won't be called.\n // Error if any of these lifecycles are present,\n // Because they would work differently between older and newer (16.3+) versions of React.\n var foundWillMountName = null;\n var foundWillReceivePropsName = null;\n var foundWillUpdateName = null;\n if (typeof prototype.componentWillMount === 'function') {\n foundWillMountName = 'componentWillMount';\n } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {\n foundWillMountName = 'UNSAFE_componentWillMount';\n }\n if (typeof prototype.componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'componentWillReceiveProps';\n } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';\n }\n if (typeof prototype.componentWillUpdate === 'function') {\n foundWillUpdateName = 'componentWillUpdate';\n } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {\n foundWillUpdateName = 'UNSAFE_componentWillUpdate';\n }\n if (\n foundWillMountName !== null ||\n foundWillReceivePropsName !== null ||\n foundWillUpdateName !== null\n ) {\n var componentName = Component.displayName || Component.name;\n var newApiName =\n typeof Component.getDerivedStateFromProps === 'function'\n ? 'getDerivedStateFromProps()'\n : 'getSnapshotBeforeUpdate()';\n\n throw Error(\n 'Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n' +\n componentName +\n ' uses ' +\n newApiName +\n ' but also contains the following legacy lifecycles:' +\n (foundWillMountName !== null ? '\\n ' + foundWillMountName : '') +\n (foundWillReceivePropsName !== null\n ? '\\n ' + foundWillReceivePropsName\n : '') +\n (foundWillUpdateName !== null ? '\\n ' + foundWillUpdateName : '') +\n '\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\n' +\n 'https://fb.me/react-async-component-lifecycle-hooks'\n );\n }\n\n // React <= 16.2 does not support static getDerivedStateFromProps.\n // As a workaround, use cWM and cWRP to invoke the new static lifecycle.\n // Newer versions of React will ignore these lifecycles if gDSFP exists.\n if (typeof Component.getDerivedStateFromProps === 'function') {\n prototype.componentWillMount = componentWillMount;\n prototype.componentWillReceiveProps = componentWillReceiveProps;\n }\n\n // React <= 16.2 does not support getSnapshotBeforeUpdate.\n // As a workaround, use cWU to invoke the new lifecycle.\n // Newer versions of React will ignore that lifecycle if gSBU exists.\n if (typeof prototype.getSnapshotBeforeUpdate === 'function') {\n if (typeof prototype.componentDidUpdate !== 'function') {\n throw new Error(\n 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'\n );\n }\n\n prototype.componentWillUpdate = componentWillUpdate;\n\n var componentDidUpdate = prototype.componentDidUpdate;\n\n prototype.componentDidUpdate = function componentDidUpdatePolyfill(\n prevProps,\n prevState,\n maybeSnapshot\n ) {\n // 16.3+ will not execute our will-update method;\n // It will pass a snapshot value to did-update though.\n // Older versions will require our polyfilled will-update value.\n // We need to handle both cases, but can't just check for the presence of \"maybeSnapshot\",\n // Because for <= 15.x versions this might be a \"prevContext\" object.\n // We also can't just check \"__reactInternalSnapshot\",\n // Because get-snapshot might return a falsy value.\n // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.\n var snapshot = this.__reactInternalSnapshotFlag\n ? this.__reactInternalSnapshot\n : maybeSnapshot;\n\n componentDidUpdate.call(this, prevProps, prevState, snapshot);\n };\n }\n\n return Component;\n}\n\nexport { polyfill };\n","import { useEffect, useRef } from 'react';\n/**\n * Creates a `Ref` whose value is updated in an effect, ensuring the most recent\n * value is the one rendered with. Generally only required for Concurrent mode usage\n * where previous work in `render()` may be discarded before being used.\n *\n * This is safe to access in an event handler.\n *\n * @param value The `Ref` value\n */\n\nfunction useCommittedRef(value) {\n var ref = useRef(value);\n useEffect(function () {\n ref.current = value;\n }, [value]);\n return ref;\n}\n\nexport default useCommittedRef;","import { useCallback } from 'react';\nimport useCommittedRef from './useCommittedRef';\nexport default function useEventCallback(fn) {\n var ref = useCommittedRef(fn);\n return useCallback(function () {\n return ref.current && ref.current.apply(ref, arguments);\n }, [ref]);\n}","import { useEffect, useLayoutEffect } from 'react';\nvar isReactNative = typeof global !== 'undefined' && // @ts-ignore\nglobal.navigator && // @ts-ignore\nglobal.navigator.product === 'ReactNative';\nvar isDOM = typeof document !== 'undefined';\n/**\n * Is `useLayoutEffect` in a DOM or React Native environment, otherwise resolves to useEffect\n * Only useful to avoid the console warning.\n *\n * PREFER `useEffect` UNLESS YOU KNOW WHAT YOU ARE DOING.\n *\n * @category effects\n */\n\nexport default isDOM || isReactNative ? useLayoutEffect : useEffect;","import { useState } from 'react';\nimport useEffect from './useIsomorphicEffect';\nvar targetMap = new WeakMap();\nvar resizeObserver;\n\nfunction getResizeObserver() {\n // eslint-disable-next-line no-return-assign\n return resizeObserver = resizeObserver || new window.ResizeObserver(function (entries) {\n entries.forEach(function (entry) {\n var handler = targetMap.get(entry.target);\n if (handler) handler(entry.contentRect);\n });\n });\n}\n/**\n * Efficiently observe size changes on an element. Depends on the `ResizeObserver` api,\n * and polyfills are needed in older browsers.\n *\n * ```ts\n * const [ref, attachRef] = useCallbackRef(null);\n *\n * const rect = useResizeObserver(ref);\n *\n * return (\n *
\n * {JSON.stringify(rect)}\n *
\n * )\n * ```\n *\n * @param element The DOM element to observe\n */\n\n\nexport default function useResizeObserver(element) {\n var _useState = useState(null),\n rect = _useState[0],\n setRect = _useState[1];\n\n useEffect(function () {\n if (!element) return;\n getResizeObserver().observe(element);\n setRect(element.getBoundingClientRect());\n targetMap.set(element, function (rect) {\n setRect(rect);\n });\n return function () {\n targetMap.delete(element);\n };\n }, [element]);\n return rect;\n}","const _excluded = [\"onKeyDown\"];\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n/* eslint-disable jsx-a11y/no-static-element-interactions */\n/* eslint-disable jsx-a11y/anchor-has-content */\n\nimport * as React from 'react';\nimport { useEventCallback } from '@restart/hooks';\nimport { useButtonProps } from './Button';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport function isTrivialHref(href) {\n return !href || href.trim() === '#';\n}\n/**\n * An generic `
` component that covers a few A11y cases, ensuring that\n * cases where the `href` is missing or trivial like \"#\" are treated like buttons.\n */\nconst Anchor = /*#__PURE__*/React.forwardRef((_ref, ref) => {\n let {\n onKeyDown\n } = _ref,\n props = _objectWithoutPropertiesLoose(_ref, _excluded);\n const [buttonProps] = useButtonProps(Object.assign({\n tagName: 'a'\n }, props));\n const handleKeyDown = useEventCallback(e => {\n buttonProps.onKeyDown(e);\n onKeyDown == null ? void 0 : onKeyDown(e);\n });\n if (isTrivialHref(props.href) || props.role === 'button') {\n return /*#__PURE__*/_jsx(\"a\", Object.assign({\n ref: ref\n }, props, buttonProps, {\n onKeyDown: handleKeyDown\n }));\n }\n return /*#__PURE__*/_jsx(\"a\", Object.assign({\n ref: ref\n }, props, {\n onKeyDown: onKeyDown\n }));\n});\nAnchor.displayName = 'Anchor';\nexport default Anchor;","export default {\n disabled: false\n};","import React from 'react';\nexport default React.createContext(null);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport config from './config';\nimport { timeoutsShape } from './utils/PropTypes';\nimport TransitionGroupContext from './TransitionGroupContext';\nimport { forceReflow } from './utils/reflow';\nexport var UNMOUNTED = 'unmounted';\nexport var EXITED = 'exited';\nexport var ENTERING = 'entering';\nexport var ENTERED = 'entered';\nexport var EXITING = 'exiting';\n/**\n * The Transition component lets you describe a transition from one component\n * state to another _over time_ with a simple declarative API. Most commonly\n * it's used to animate the mounting and unmounting of a component, but can also\n * be used to describe in-place transition states as well.\n *\n * ---\n *\n * **Note**: `Transition` is a platform-agnostic base component. If you're using\n * transitions in CSS, you'll probably want to use\n * [`CSSTransition`](https://reactcommunity.org/react-transition-group/css-transition)\n * instead. It inherits all the features of `Transition`, but contains\n * additional features necessary to play nice with CSS transitions (hence the\n * name of the component).\n *\n * ---\n *\n * By default the `Transition` component does not alter the behavior of the\n * component it renders, it only tracks \"enter\" and \"exit\" states for the\n * components. It's up to you to give meaning and effect to those states. For\n * example we can add styles to a component when it enters or exits:\n *\n * ```jsx\n * import { Transition } from 'react-transition-group';\n *\n * const duration = 300;\n *\n * const defaultStyle = {\n * transition: `opacity ${duration}ms ease-in-out`,\n * opacity: 0,\n * }\n *\n * const transitionStyles = {\n * entering: { opacity: 1 },\n * entered: { opacity: 1 },\n * exiting: { opacity: 0 },\n * exited: { opacity: 0 },\n * };\n *\n * const Fade = ({ in: inProp }) => (\n * \n * {state => (\n *
\n * I'm a fade Transition!\n *
\n * )}\n *
\n * );\n * ```\n *\n * There are 4 main states a Transition can be in:\n * - `'entering'`\n * - `'entered'`\n * - `'exiting'`\n * - `'exited'`\n *\n * Transition state is toggled via the `in` prop. When `true` the component\n * begins the \"Enter\" stage. During this stage, the component will shift from\n * its current transition state, to `'entering'` for the duration of the\n * transition and then to the `'entered'` stage once it's complete. Let's take\n * the following example (we'll use the\n * [useState](https://reactjs.org/docs/hooks-reference.html#usestate) hook):\n *\n * ```jsx\n * function App() {\n * const [inProp, setInProp] = useState(false);\n * return (\n *
\n * \n * {state => (\n * // ...\n * )}\n * \n * \n *
\n * );\n * }\n * ```\n *\n * When the button is clicked the component will shift to the `'entering'` state\n * and stay there for 500ms (the value of `timeout`) before it finally switches\n * to `'entered'`.\n *\n * When `in` is `false` the same thing happens except the state moves from\n * `'exiting'` to `'exited'`.\n */\n\nvar Transition = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(Transition, _React$Component);\n\n function Transition(props, context) {\n var _this;\n\n _this = _React$Component.call(this, props, context) || this;\n var parentGroup = context; // In the context of a TransitionGroup all enters are really appears\n\n var appear = parentGroup && !parentGroup.isMounting ? props.enter : props.appear;\n var initialStatus;\n _this.appearStatus = null;\n\n if (props.in) {\n if (appear) {\n initialStatus = EXITED;\n _this.appearStatus = ENTERING;\n } else {\n initialStatus = ENTERED;\n }\n } else {\n if (props.unmountOnExit || props.mountOnEnter) {\n initialStatus = UNMOUNTED;\n } else {\n initialStatus = EXITED;\n }\n }\n\n _this.state = {\n status: initialStatus\n };\n _this.nextCallback = null;\n return _this;\n }\n\n Transition.getDerivedStateFromProps = function getDerivedStateFromProps(_ref, prevState) {\n var nextIn = _ref.in;\n\n if (nextIn && prevState.status === UNMOUNTED) {\n return {\n status: EXITED\n };\n }\n\n return null;\n } // getSnapshotBeforeUpdate(prevProps) {\n // let nextStatus = null\n // if (prevProps !== this.props) {\n // const { status } = this.state\n // if (this.props.in) {\n // if (status !== ENTERING && status !== ENTERED) {\n // nextStatus = ENTERING\n // }\n // } else {\n // if (status === ENTERING || status === ENTERED) {\n // nextStatus = EXITING\n // }\n // }\n // }\n // return { nextStatus }\n // }\n ;\n\n var _proto = Transition.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n this.updateStatus(true, this.appearStatus);\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var nextStatus = null;\n\n if (prevProps !== this.props) {\n var status = this.state.status;\n\n if (this.props.in) {\n if (status !== ENTERING && status !== ENTERED) {\n nextStatus = ENTERING;\n }\n } else {\n if (status === ENTERING || status === ENTERED) {\n nextStatus = EXITING;\n }\n }\n }\n\n this.updateStatus(false, nextStatus);\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.cancelNextCallback();\n };\n\n _proto.getTimeouts = function getTimeouts() {\n var timeout = this.props.timeout;\n var exit, enter, appear;\n exit = enter = appear = timeout;\n\n if (timeout != null && typeof timeout !== 'number') {\n exit = timeout.exit;\n enter = timeout.enter; // TODO: remove fallback for next major\n\n appear = timeout.appear !== undefined ? timeout.appear : enter;\n }\n\n return {\n exit: exit,\n enter: enter,\n appear: appear\n };\n };\n\n _proto.updateStatus = function updateStatus(mounting, nextStatus) {\n if (mounting === void 0) {\n mounting = false;\n }\n\n if (nextStatus !== null) {\n // nextStatus will always be ENTERING or EXITING.\n this.cancelNextCallback();\n\n if (nextStatus === ENTERING) {\n if (this.props.unmountOnExit || this.props.mountOnEnter) {\n var node = this.props.nodeRef ? this.props.nodeRef.current : ReactDOM.findDOMNode(this); // https://github.com/reactjs/react-transition-group/pull/749\n // With unmountOnExit or mountOnEnter, the enter animation should happen at the transition between `exited` and `entering`.\n // To make the animation happen, we have to separate each rendering and avoid being processed as batched.\n\n if (node) forceReflow(node);\n }\n\n this.performEnter(mounting);\n } else {\n this.performExit();\n }\n } else if (this.props.unmountOnExit && this.state.status === EXITED) {\n this.setState({\n status: UNMOUNTED\n });\n }\n };\n\n _proto.performEnter = function performEnter(mounting) {\n var _this2 = this;\n\n var enter = this.props.enter;\n var appearing = this.context ? this.context.isMounting : mounting;\n\n var _ref2 = this.props.nodeRef ? [appearing] : [ReactDOM.findDOMNode(this), appearing],\n maybeNode = _ref2[0],\n maybeAppearing = _ref2[1];\n\n var timeouts = this.getTimeouts();\n var enterTimeout = appearing ? timeouts.appear : timeouts.enter; // no enter animation skip right to ENTERED\n // if we are mounting and running this it means appear _must_ be set\n\n if (!mounting && !enter || config.disabled) {\n this.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(maybeNode);\n });\n return;\n }\n\n this.props.onEnter(maybeNode, maybeAppearing);\n this.safeSetState({\n status: ENTERING\n }, function () {\n _this2.props.onEntering(maybeNode, maybeAppearing);\n\n _this2.onTransitionEnd(enterTimeout, function () {\n _this2.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(maybeNode, maybeAppearing);\n });\n });\n });\n };\n\n _proto.performExit = function performExit() {\n var _this3 = this;\n\n var exit = this.props.exit;\n var timeouts = this.getTimeouts();\n var maybeNode = this.props.nodeRef ? undefined : ReactDOM.findDOMNode(this); // no exit animation skip right to EXITED\n\n if (!exit || config.disabled) {\n this.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(maybeNode);\n });\n return;\n }\n\n this.props.onExit(maybeNode);\n this.safeSetState({\n status: EXITING\n }, function () {\n _this3.props.onExiting(maybeNode);\n\n _this3.onTransitionEnd(timeouts.exit, function () {\n _this3.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(maybeNode);\n });\n });\n });\n };\n\n _proto.cancelNextCallback = function cancelNextCallback() {\n if (this.nextCallback !== null) {\n this.nextCallback.cancel();\n this.nextCallback = null;\n }\n };\n\n _proto.safeSetState = function safeSetState(nextState, callback) {\n // This shouldn't be necessary, but there are weird race conditions with\n // setState callbacks and unmounting in testing, so always make sure that\n // we can cancel any pending setState callbacks after we unmount.\n callback = this.setNextCallback(callback);\n this.setState(nextState, callback);\n };\n\n _proto.setNextCallback = function setNextCallback(callback) {\n var _this4 = this;\n\n var active = true;\n\n this.nextCallback = function (event) {\n if (active) {\n active = false;\n _this4.nextCallback = null;\n callback(event);\n }\n };\n\n this.nextCallback.cancel = function () {\n active = false;\n };\n\n return this.nextCallback;\n };\n\n _proto.onTransitionEnd = function onTransitionEnd(timeout, handler) {\n this.setNextCallback(handler);\n var node = this.props.nodeRef ? this.props.nodeRef.current : ReactDOM.findDOMNode(this);\n var doesNotHaveTimeoutOrListener = timeout == null && !this.props.addEndListener;\n\n if (!node || doesNotHaveTimeoutOrListener) {\n setTimeout(this.nextCallback, 0);\n return;\n }\n\n if (this.props.addEndListener) {\n var _ref3 = this.props.nodeRef ? [this.nextCallback] : [node, this.nextCallback],\n maybeNode = _ref3[0],\n maybeNextCallback = _ref3[1];\n\n this.props.addEndListener(maybeNode, maybeNextCallback);\n }\n\n if (timeout != null) {\n setTimeout(this.nextCallback, timeout);\n }\n };\n\n _proto.render = function render() {\n var status = this.state.status;\n\n if (status === UNMOUNTED) {\n return null;\n }\n\n var _this$props = this.props,\n children = _this$props.children,\n _in = _this$props.in,\n _mountOnEnter = _this$props.mountOnEnter,\n _unmountOnExit = _this$props.unmountOnExit,\n _appear = _this$props.appear,\n _enter = _this$props.enter,\n _exit = _this$props.exit,\n _timeout = _this$props.timeout,\n _addEndListener = _this$props.addEndListener,\n _onEnter = _this$props.onEnter,\n _onEntering = _this$props.onEntering,\n _onEntered = _this$props.onEntered,\n _onExit = _this$props.onExit,\n _onExiting = _this$props.onExiting,\n _onExited = _this$props.onExited,\n _nodeRef = _this$props.nodeRef,\n childProps = _objectWithoutPropertiesLoose(_this$props, [\"children\", \"in\", \"mountOnEnter\", \"unmountOnExit\", \"appear\", \"enter\", \"exit\", \"timeout\", \"addEndListener\", \"onEnter\", \"onEntering\", \"onEntered\", \"onExit\", \"onExiting\", \"onExited\", \"nodeRef\"]);\n\n return (\n /*#__PURE__*/\n // allows for nested Transitions\n React.createElement(TransitionGroupContext.Provider, {\n value: null\n }, typeof children === 'function' ? children(status, childProps) : React.cloneElement(React.Children.only(children), childProps))\n );\n };\n\n return Transition;\n}(React.Component);\n\nTransition.contextType = TransitionGroupContext;\nTransition.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * A React reference to DOM element that need to transition:\n * https://stackoverflow.com/a/51127130/4671932\n *\n * - When `nodeRef` prop is used, `node` is not passed to callback functions\n * (e.g. `onEnter`) because user already has direct access to the node.\n * - When changing `key` prop of `Transition` in a `TransitionGroup` a new\n * `nodeRef` need to be provided to `Transition` with changed `key` prop\n * (see\n * [test/CSSTransition-test.js](https://github.com/reactjs/react-transition-group/blob/13435f897b3ab71f6e19d724f145596f5910581c/test/CSSTransition-test.js#L362-L437)).\n */\n nodeRef: PropTypes.shape({\n current: typeof Element === 'undefined' ? PropTypes.any : function (propValue, key, componentName, location, propFullName, secret) {\n var value = propValue[key];\n return PropTypes.instanceOf(value && 'ownerDocument' in value ? value.ownerDocument.defaultView.Element : Element)(propValue, key, componentName, location, propFullName, secret);\n }\n }),\n\n /**\n * A `function` child can be used instead of a React element. This function is\n * called with the current transition status (`'entering'`, `'entered'`,\n * `'exiting'`, `'exited'`), which can be used to apply context\n * specific props to a component.\n *\n * ```jsx\n * \n * {state => (\n * \n * )}\n * \n * ```\n */\n children: PropTypes.oneOfType([PropTypes.func.isRequired, PropTypes.element.isRequired]).isRequired,\n\n /**\n * Show the component; triggers the enter or exit states\n */\n in: PropTypes.bool,\n\n /**\n * By default the child component is mounted immediately along with\n * the parent `Transition` component. If you want to \"lazy mount\" the component on the\n * first `in={true}` you can set `mountOnEnter`. After the first enter transition the component will stay\n * mounted, even on \"exited\", unless you also specify `unmountOnExit`.\n */\n mountOnEnter: PropTypes.bool,\n\n /**\n * By default the child component stays mounted after it reaches the `'exited'` state.\n * Set `unmountOnExit` if you'd prefer to unmount the component after it finishes exiting.\n */\n unmountOnExit: PropTypes.bool,\n\n /**\n * By default the child component does not perform the enter transition when\n * it first mounts, regardless of the value of `in`. If you want this\n * behavior, set both `appear` and `in` to `true`.\n *\n * > **Note**: there are no special appear states like `appearing`/`appeared`, this prop\n * > only adds an additional enter transition. However, in the\n * > `` component that first enter transition does result in\n * > additional `.appear-*` classes, that way you can choose to style it\n * > differently.\n */\n appear: PropTypes.bool,\n\n /**\n * Enable or disable enter transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * Enable or disable exit transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * The duration of the transition, in milliseconds.\n * Required unless `addEndListener` is provided.\n *\n * You may specify a single timeout for all transitions:\n *\n * ```jsx\n * timeout={500}\n * ```\n *\n * or individually:\n *\n * ```jsx\n * timeout={{\n * appear: 500,\n * enter: 300,\n * exit: 500,\n * }}\n * ```\n *\n * - `appear` defaults to the value of `enter`\n * - `enter` defaults to `0`\n * - `exit` defaults to `0`\n *\n * @type {number | { enter?: number, exit?: number, appear?: number }}\n */\n timeout: function timeout(props) {\n var pt = timeoutsShape;\n if (!props.addEndListener) pt = pt.isRequired;\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return pt.apply(void 0, [props].concat(args));\n },\n\n /**\n * Add a custom transition end trigger. Called with the transitioning\n * DOM node and a `done` callback. Allows for more fine grained transition end\n * logic. Timeouts are still used as a fallback if provided.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * ```jsx\n * addEndListener={(node, done) => {\n * // use the css transitionend event to mark the finish of a transition\n * node.addEventListener('transitionend', done, false);\n * }}\n * ```\n */\n addEndListener: PropTypes.func,\n\n /**\n * Callback fired before the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEnter: PropTypes.func,\n\n /**\n * Callback fired after the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntering: PropTypes.func,\n\n /**\n * Callback fired after the \"entered\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEntered: PropTypes.func,\n\n /**\n * Callback fired before the \"exiting\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExit: PropTypes.func,\n\n /**\n * Callback fired after the \"exiting\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExiting: PropTypes.func,\n\n /**\n * Callback fired after the \"exited\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExited: PropTypes.func\n} : {}; // Name the function so it is clearer in the documentation\n\nfunction noop() {}\n\nTransition.defaultProps = {\n in: false,\n mountOnEnter: false,\n unmountOnExit: false,\n appear: false,\n enter: true,\n exit: true,\n onEnter: noop,\n onEntering: noop,\n onEntered: noop,\n onExit: noop,\n onExiting: noop,\n onExited: noop\n};\nTransition.UNMOUNTED = UNMOUNTED;\nTransition.EXITED = EXITED;\nTransition.ENTERING = ENTERING;\nTransition.ENTERED = ENTERED;\nTransition.EXITING = EXITING;\nexport default Transition;","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}","export var forceReflow = function forceReflow(node) {\n return node.scrollTop;\n};","import ownerDocument from './ownerDocument';\n/**\n * Returns the owner window of a given element.\n * \n * @param node the element\n */\n\nexport default function ownerWindow(node) {\n var doc = ownerDocument(node);\n return doc && doc.defaultView || window;\n}","/**\n * Returns the owner document of a given element.\n * \n * @param node the element\n */\nexport default function ownerDocument(node) {\n return node && node.ownerDocument || document;\n}","var rUpper = /([A-Z])/g;\nexport default function hyphenate(string) {\n return string.replace(rUpper, '-$1').toLowerCase();\n}","/**\n * Copyright 2013-2014, Facebook, Inc.\n * All rights reserved.\n * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/hyphenateStyleName.js\n */\nimport hyphenate from './hyphenate';\nvar msPattern = /^ms-/;\nexport default function hyphenateStyleName(string) {\n return hyphenate(string).replace(msPattern, '-ms-');\n}","var supportedTransforms = /^((translate|rotate|scale)(X|Y|Z|3d)?|matrix(3d)?|perspective|skew(X|Y)?)$/i;\nexport default function isTransform(value) {\n return !!(value && supportedTransforms.test(value));\n}","import getComputedStyle from './getComputedStyle';\nimport hyphenate from './hyphenateStyle';\nimport isTransform from './isTransform';\n\nfunction style(node, property) {\n var css = '';\n var transforms = '';\n\n if (typeof property === 'string') {\n return node.style.getPropertyValue(hyphenate(property)) || getComputedStyle(node).getPropertyValue(hyphenate(property));\n }\n\n Object.keys(property).forEach(function (key) {\n var value = property[key];\n\n if (!value && value !== 0) {\n node.style.removeProperty(hyphenate(key));\n } else if (isTransform(key)) {\n transforms += key + \"(\" + value + \") \";\n } else {\n css += hyphenate(key) + \": \" + value + \";\";\n }\n });\n\n if (transforms) {\n css += \"transform: \" + transforms + \";\";\n }\n\n node.style.cssText += \";\" + css;\n}\n\nexport default style;","import ownerWindow from './ownerWindow';\n/**\n * Returns one or all computed style properties of an element.\n * \n * @param node the element\n * @param psuedoElement the style property\n */\n\nexport default function getComputedStyle(node, psuedoElement) {\n return ownerWindow(node).getComputedStyle(node, psuedoElement);\n}","export default !!(typeof window !== 'undefined' && window.document && window.document.createElement);","/* eslint-disable no-return-assign */\nimport canUseDOM from './canUseDOM';\nexport var optionsSupported = false;\nexport var onceSupported = false;\n\ntry {\n var options = {\n get passive() {\n return optionsSupported = true;\n },\n\n get once() {\n // eslint-disable-next-line no-multi-assign\n return onceSupported = optionsSupported = true;\n }\n\n };\n\n if (canUseDOM) {\n window.addEventListener('test', options, options);\n window.removeEventListener('test', options, true);\n }\n} catch (e) {\n /* */\n}\n\n/**\n * An `addEventListener` ponyfill, supports the `once` option\n * \n * @param node the element\n * @param eventName the event name\n * @param handle the handler\n * @param options event options\n */\nfunction addEventListener(node, eventName, handler, options) {\n if (options && typeof options !== 'boolean' && !onceSupported) {\n var once = options.once,\n capture = options.capture;\n var wrappedHandler = handler;\n\n if (!onceSupported && once) {\n wrappedHandler = handler.__once || function onceHandler(event) {\n this.removeEventListener(eventName, onceHandler, capture);\n handler.call(this, event);\n };\n\n handler.__once = wrappedHandler;\n }\n\n node.addEventListener(eventName, wrappedHandler, optionsSupported ? options : capture);\n }\n\n node.addEventListener(eventName, handler, options);\n}\n\nexport default addEventListener;","/**\n * A `removeEventListener` ponyfill\n * \n * @param node the element\n * @param eventName the event name\n * @param handle the handler\n * @param options event options\n */\nfunction removeEventListener(node, eventName, handler, options) {\n var capture = options && typeof options !== 'boolean' ? options.capture : options;\n node.removeEventListener(eventName, handler, capture);\n\n if (handler.__once) {\n node.removeEventListener(eventName, handler.__once, capture);\n }\n}\n\nexport default removeEventListener;","import addEventListener from './addEventListener';\nimport removeEventListener from './removeEventListener';\n\nfunction listen(node, eventName, handler, options) {\n addEventListener(node, eventName, handler, options);\n return function () {\n removeEventListener(node, eventName, handler, options);\n };\n}\n\nexport default listen;","import css from './css';\nimport listen from './listen';\nimport triggerEvent from './triggerEvent';\n\nfunction parseDuration(node) {\n var str = css(node, 'transitionDuration') || '';\n var mult = str.indexOf('ms') === -1 ? 1000 : 1;\n return parseFloat(str) * mult;\n}\n\nfunction emulateTransitionEnd(element, duration, padding) {\n if (padding === void 0) {\n padding = 5;\n }\n\n var called = false;\n var handle = setTimeout(function () {\n if (!called) triggerEvent(element, 'transitionend', true);\n }, duration + padding);\n var remove = listen(element, 'transitionend', function () {\n called = true;\n }, {\n once: true\n });\n return function () {\n clearTimeout(handle);\n remove();\n };\n}\n\nexport default function transitionEnd(element, handler, duration, padding) {\n if (duration == null) duration = parseDuration(element) || 0;\n var removeEmulate = emulateTransitionEnd(element, duration, padding);\n var remove = listen(element, 'transitionend', handler);\n return function () {\n removeEmulate();\n remove();\n };\n}","/**\n * Triggers an event on a given element.\n * \n * @param node the element\n * @param eventName the event name to trigger\n * @param bubbles whether the event should bubble up\n * @param cancelable whether the event should be cancelable\n */\nexport default function triggerEvent(node, eventName, bubbles, cancelable) {\n if (bubbles === void 0) {\n bubbles = false;\n }\n\n if (cancelable === void 0) {\n cancelable = true;\n }\n\n if (node) {\n var event = document.createEvent('HTMLEvents');\n event.initEvent(eventName, bubbles, cancelable);\n node.dispatchEvent(event);\n }\n}","import css from 'dom-helpers/css';\nimport transitionEnd from 'dom-helpers/transitionEnd';\nfunction parseDuration(node, property) {\n const str = css(node, property) || '';\n const mult = str.indexOf('ms') === -1 ? 1000 : 1;\n return parseFloat(str) * mult;\n}\nexport default function transitionEndListener(element, handler) {\n const duration = parseDuration(element, 'transitionDuration');\n const delay = parseDuration(element, 'transitionDelay');\n const remove = transitionEnd(element, e => {\n if (e.target === element) {\n remove();\n handler(e);\n }\n }, duration + delay);\n}","import { useMemo } from 'react';\n\nvar toFnRef = function toFnRef(ref) {\n return !ref || typeof ref === 'function' ? ref : function (value) {\n ref.current = value;\n };\n};\n\nexport function mergeRefs(refA, refB) {\n var a = toFnRef(refA);\n var b = toFnRef(refB);\n return function (value) {\n if (a) a(value);\n if (b) b(value);\n };\n}\n/**\n * Create and returns a single callback ref composed from two other Refs.\n *\n * ```tsx\n * const Button = React.forwardRef((props, ref) => {\n * const [element, attachRef] = useCallbackRef();\n * const mergedRef = useMergedRefs(ref, attachRef);\n *\n * return \n \n \n )\n }\n}\n\nfunction AccuracyResults({ selectedWorkload }) {\n return (\n
\n \n \n \n \n \n \n \n \n \n
Accuracy
results
\n
{selectedWorkload.accuracy_data.baseline_accuracy * 100}%
\n
FP32
\n
\n
{selectedWorkload.accuracy_data.optimized_accuracy * 100}%
\n
INT8
\n
\n
{Math.round(selectedWorkload.accuracy_data.ratio * 100) / 100}
\n
Ratio
\n
\n
\n )\n}\n\nexport const getLabel = (label) => {\n if (label.includes('/')) {\n return label.replace(/^.*[\\\\\\/]/, '');\n } else {\n return label;\n }\n}\n\nexport const customColor = [\n '#5B69FF',\n '#FF848A',\n '#EDB200',\n '#1E2EB8',\n '#FF5662',\n '#C98F00',\n '#000F8A',\n '#C81326',\n '#000864',\n '#9D79BC',\n '#A14DA0',\n];\n\nexport default Diagnosis;\n","'use strict';\n\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n","'use strict';\n\nimport bind from './helpers/bind.js';\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst {toString} = Object.prototype;\nconst {getPrototypeOf} = Object;\n\nconst kindOf = (cache => thing => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type\n}\n\nconst typeOfTest = type => thing => typeof thing === type;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst {isArray} = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = thing => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nconst isFormData = (thing) => {\n const pattern = '[object FormData]';\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) ||\n toString.call(thing) === pattern ||\n (isFunction(thing.toString) && thing.toString() === pattern)\n );\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => str.trim ?\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Boolean} [allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n const {caseless} = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n }\n\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Boolean} [allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, {allOwnKeys});\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = (TypedArray => {\n // eslint-disable-next-line func-names\n return thing => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[Symbol.iterator];\n\n const iterator = generator.call(obj);\n\n let result;\n\n while ((result = iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n}\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n}\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = str => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n if (reducer(descriptor, name, obj) !== false) {\n reducedDescriptors[name] = descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n}\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n}\n\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach(value => {\n obj[value] = true;\n });\n }\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n}\n\nconst noop = () => {}\n\nconst toFiniteNumber = (value, defaultValue) => {\n value = +value;\n return Number.isFinite(value) ? value : defaultValue;\n}\n\nconst ALPHA = 'abcdefghijklmnopqrstuvwxyz'\n\nconst DIGIT = '0123456789';\n\nconst ALPHABET = {\n DIGIT,\n ALPHA,\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\n}\n\nconst generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {\n let str = '';\n const {length} = alphabet;\n while (size--) {\n str += alphabet[Math.random() * length|0]\n }\n\n return str;\n}\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\n\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n if(!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n }\n\n return visit(obj, 0);\n}\n\nexport default {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n ALPHABET,\n generateString,\n isSpecCompliantForm,\n toJSONObject\n};\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = (new Error()).stack;\n }\n\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n response && (this.response = response);\n}\n\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: utils.toJSONObject(this.config),\n code: this.code,\n status: this.response && this.response.status ? this.response.status : null\n };\n }\n});\n\nconst prototype = AxiosError.prototype;\nconst descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n// eslint-disable-next-line func-names\n].forEach(code => {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = (error, code, config, request, response, customProps) => {\n const axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, prop => {\n return prop !== 'isAxiosError';\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.cause = error;\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nexport default AxiosError;\n","// eslint-disable-next-line strict\nexport default null;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\nimport PlatformFormData from '../platform/node/classes/FormData.js';\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (PlatformFormData || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = utils.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !utils.isUndefined(source[option]);\n });\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\n\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (value && !path && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (utils.isArray(value) && isFlatArray(value)) ||\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))\n )) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n\n function build(value, path) {\n if (utils.isUndefined(value)) return;\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n utils.forEach(value, function each(el, key) {\n const result = !(utils.isUndefined(el) || el === null) && visitor.call(\n formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers\n );\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n\n stack.pop();\n }\n\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\nexport default toFormData;\n","'use strict';\n\nimport toFormData from './toFormData.js';\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object} params - The parameters to be converted to a FormData object.\n * @param {Object} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && toFormData(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode);\n } : encode;\n\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\n\nexport default AxiosURLSearchParams;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\n\n/**\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\n * URI encoded counterparts\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?object} options\n *\n * @returns {string} The formatted url\n */\nexport default function buildURL(url, params, options) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n \n const _encode = options && options.encode || encode;\n\n const serializeFn = options && options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils.isURLSearchParams(params) ?\n params.toString() :\n new AxiosURLSearchParams(params, options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\nexport default InterceptorManager;\n","'use strict';\n\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n","import URLSearchParams from './classes/URLSearchParams.js'\nimport FormData from './classes/FormData.js'\nimport Blob from './classes/Blob.js'\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst isStandardBrowserEnv = (() => {\n let product;\n if (typeof navigator !== 'undefined' && (\n (product = navigator.product) === 'ReactNative' ||\n product === 'NativeScript' ||\n product === 'NS')\n ) {\n return false;\n }\n\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n})();\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\n const isStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\n\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams,\n FormData,\n Blob\n },\n isStandardBrowserEnv,\n isStandardBrowserWebWorkerEnv,\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\n};\n","'use strict';\n\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\n","'use strict';\n\nexport default typeof FormData !== 'undefined' ? FormData : null;\n","'use strict'\n\nexport default typeof Blob !== 'undefined' ? Blob : null\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n const obj = {};\n\n utils.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\nexport default formDataToJSON;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\n\nconst DEFAULT_CONTENT_TYPE = {\n 'Content-Type': undefined\n};\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n\n transitional: transitionalDefaults,\n\n adapter: ['xhr', 'http'],\n\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = utils.isObject(data);\n\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = utils.isFormData(data);\n\n if (isFormData) {\n if (!hasJSONContentType) {\n return data;\n }\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n\n if (utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n const _FormData = this.env && this.env.FormData;\n\n return toFormData(\n isFileList ? {'files[]': data} : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType ) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n const transitional = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const JSONRequested = this.responseType === 'json';\n\n if (data && utils.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nexport default defaults;\n","'use strict';\n\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\n\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = utils.toObjectSet([\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\nexport default rawHeaders => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nfunction isValidHeaderName(str) {\n return /^[-_a-zA-Z]+$/.test(str.trim());\n}\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\nutils.freezeMethods(AxiosHeaders.prototype);\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n","'use strict';\n\nimport utils from './../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nexport default function transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n","'use strict';\n\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n","'use strict';\n\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\nfunction CanceledError(message, config, request) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nexport default CanceledError;\n","'use strict';\n\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.isStandardBrowserEnv ?\n\n// Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n const cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n// Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })();\n","'use strict';\n\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nexport default function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nexport default function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n","'use strict';\n\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.isStandardBrowserEnv ?\n\n// Standard browser envs have full support of the APIs needed to test\n// whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n const msie = /(msie|trident)/i.test(navigator.userAgent);\n const urlParsingNode = document.createElement('a');\n let originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n let href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n const parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })();\n","'use strict';\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\n\nexport default speedometer;\n","'use strict';\n\nimport utils from './../utils.js';\nimport settle from './../core/settle.js';\nimport cookies from './../helpers/cookies.js';\nimport buildURL from './../helpers/buildURL.js';\nimport buildFullPath from '../core/buildFullPath.js';\nimport isURLSameOrigin from './../helpers/isURLSameOrigin.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport speedometer from '../helpers/speedometer.js';\n\nfunction progressEventReducer(listener, isDownloadStream) {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n\n return e => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n\n bytesNotified = loaded;\n\n const data = {\n loaded,\n total,\n progress: total ? (loaded / total) : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e\n };\n\n data[isDownloadStream ? 'download' : 'upload'] = true;\n\n listener(data);\n };\n}\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\nexport default isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n let requestData = config.data;\n const requestHeaders = AxiosHeaders.from(config.headers).normalize();\n const responseType = config.responseType;\n let onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n\n if (utils.isFormData(requestData) && (platform.isStandardBrowserEnv || platform.isStandardBrowserWebWorkerEnv)) {\n requestHeaders.setContentType(false); // Let the browser set it\n }\n\n let request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n const username = config.auth.username || '';\n const password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.set('Authorization', 'Basic ' + btoa(username + ':' + password));\n }\n\n const fullPath = buildFullPath(config.baseURL, config.url);\n\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = AxiosHeaders.from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';\n const transitional = config.transitional || transitionalDefaults;\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (platform.isStandardBrowserEnv) {\n // Add xsrf header\n const xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath))\n && config.xsrfCookieName && cookies.read(config.xsrfCookieName);\n\n if (xsrfValue) {\n requestHeaders.set(config.xsrfHeaderName, xsrfValue);\n }\n }\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', progressEventReducer(config.onDownloadProgress, true));\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', progressEventReducer(config.onUploadProgress));\n }\n\n if (config.cancelToken || config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = cancel => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = parseProtocol(fullPath);\n\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData || null);\n });\n}\n","'use strict';\n\nimport AxiosError from './AxiosError.js';\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nexport default function settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\n","'use strict';\n\nexport default function parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}\n","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport AxiosError from \"../core/AxiosError.js\";\n\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter\n}\n\nutils.forEach(knownAdapters, (fn, value) => {\n if(fn) {\n try {\n Object.defineProperty(fn, 'name', {value});\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', {value});\n }\n});\n\nexport default {\n getAdapter: (adapters) => {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n\n const {length} = adapters;\n let nameOrAdapter;\n let adapter;\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n if((adapter = utils.isString(nameOrAdapter) ? knownAdapters[nameOrAdapter.toLowerCase()] : nameOrAdapter)) {\n break;\n }\n }\n\n if (!adapter) {\n if (adapter === false) {\n throw new AxiosError(\n `Adapter ${nameOrAdapter} is not supported by the environment`,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n throw new Error(\n utils.hasOwnProp(knownAdapters, nameOrAdapter) ?\n `Adapter '${nameOrAdapter}' is not available in the build` :\n `Unknown adapter '${nameOrAdapter}'`\n );\n }\n\n if (!utils.isFunction(adapter)) {\n throw new TypeError('adapter is not a function');\n }\n\n return adapter;\n },\n adapters: knownAdapters\n}\n","'use strict';\n\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from \"../adapters/adapters.js\";\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = AxiosHeaders.from(config.headers);\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.transformRequest\n );\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n config.transformResponse,\n response\n );\n\n response.headers = AxiosHeaders.from(response.headers);\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n });\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from \"./AxiosHeaders.js\";\n\nconst headersToObject = (thing) => thing instanceof AxiosHeaders ? thing.toJSON() : thing;\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nexport default function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n const config = {};\n\n function getMergedValue(target, source, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({caseless}, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(a, b, caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b) => mergeDeepProperties(headersToObject(a), headersToObject(b), true)\n };\n\n utils.forEach(Object.keys(config1).concat(Object.keys(config2)), function computeConfigValue(prop) {\n const merge = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge(config1[prop], config2[prop], prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n","export const VERSION = \"1.3.4\";","'use strict';\n\nimport {VERSION} from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator = schema[opt];\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nexport default {\n assertOptions,\n validators\n};\n","'use strict';\n\nimport utils from './../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst validators = validator.validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n const {transitional, paramsSerializer, headers} = config;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n if (paramsSerializer !== undefined) {\n validator.assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n let contextHeaders;\n\n // Flatten headers\n contextHeaders = headers && utils.merge(\n headers.common,\n headers[config.method]\n );\n\n contextHeaders && utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n (method) => {\n delete headers[method];\n }\n );\n\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), undefined];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n i = 0;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url,\n data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nexport default Axios;\n","'use strict';\n\nimport CanceledError from './CanceledError.js';\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(cancel => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = onfulfilled => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise(resolve => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\n\nexport default CancelToken;\n","const HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\nexport default HttpStatusCode;\n","'use strict';\n\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport {VERSION} from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from \"./core/AxiosHeaders.js\";\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context, {allOwnKeys: true});\n\n // Copy context to instance\n utils.extend(instance, context, null, {allOwnKeys: true});\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\n\n// Expose AxiosError class\naxios.AxiosError = AxiosError;\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = spread;\n\n// Expose isAxiosError\naxios.isAxiosError = isAxiosError;\n\n// Expose mergeConfig\naxios.mergeConfig = mergeConfig;\n\naxios.AxiosHeaders = AxiosHeaders;\n\naxios.formToJSON = thing => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.HttpStatusCode = HttpStatusCode;\n\naxios.default = axios;\n\n// this module should only have a default export\nexport default axios\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && (payload.isAxiosError === true);\n}\n","// -* - coding: utf - 8 -* -\n// Copyright(c) 2023 Intel Corporation\n//\n// Licensed under the Apache License, Version 2.0(the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport './App.scss';\nimport Diagnosis from './components/Diagnosis/Diagnosis';\nimport axios from 'axios';\n\nexport const api = axios.create({\n baseURL: `/`\n});\n\nfunction App() {\n document.body.style = 'background: #ececec;';\n localStorage.setItem('token', window.location.search.replace('?token=', ''));\n return (\n
\n \n
\n );\n}\n\nexport default App;\n","// -* - coding: utf - 8 -* -\n// Copyright(c) 2023 Intel Corporation\n//\n// Licensed under the Apache License, Version 2.0(the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nconst reportWebVitals = onPerfEntry => {\n if (onPerfEntry && onPerfEntry instanceof Function) {\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\n getCLS(onPerfEntry);\n getFID(onPerfEntry);\n getFCP(onPerfEntry);\n getLCP(onPerfEntry);\n getTTFB(onPerfEntry);\n });\n }\n};\n\nexport default reportWebVitals;\n","// -* - coding: utf - 8 -* -\n// Copyright(c) 2023 Intel Corporation\n//\n// Licensed under the Apache License, Version 2.0(the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport React from 'react';\nimport ReactDOM from 'react-dom/client';\nimport './index.scss';\nimport App from './App';\nimport reportWebVitals from './reportWebVitals';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n\nconst root = ReactDOM.createRoot(document.getElementById('root'));\nroot.render(\n \n);\n\n// If you want to start measuring performance in your app, pass a function\n// to log results (for example: reportWebVitals(console.log))\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\nreportWebVitals();\n"],"names":["hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","argType","push","Array","isArray","inner","apply","toString","Object","prototype","includes","key","call","join","module","exports","default","factory","__WEBPACK_EXTERNAL_MODULE__245__","__webpack_modules__","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","obj","prop","__webpack_exports__","external_commonjs_elkjs_commonjs2_elkjs_amd_elkjs_root_ELK_","external_commonjs_elkjs_commonjs2_elkjs_amd_elkjs_root_ELK_default","src_assign","assign","bind","tgt","_len","srcs","_key","forEach","src","keys","k","src_defaults","nodeDimensionsIncludeLabels","fit","padding","animate","animateFilter","animationDuration","animationEasing","transform","node","pos","ready","stop","elk","algorithm","priority","_defineProperties","target","props","descriptor","configurable","writable","elkOverrides","makeNode","options","_cyEle","id","isParent","dims","layoutDimensions","p","position","x","w","y","h","width","height","scratch","makeEdge","edge","source","data","Layout","instance","Constructor","TypeError","_classCallCheck","this","elkOptions","cy","aspectRatio","protoProps","staticProps","value","layout","eles","nodes","edges","graph","elkNodes","elkEdges","elkEleLookup","children","_i","e","_k","_i2","_k2","_n","isChild","parentK","parent","_i3","_k3","makeGraph","then","filter","layoutPositions","ele","nonempty","kp","getPos","register","cytoscape","require","$$find","arr","predicate","thisArg","LabelElement","_a","params","_b","_c","updateParams","_node","initStyles","cssClass","updateData","updatePosition","tpl","_d","halign","_e","valign","_f","halignBox","_g","valignBox","_align","firstChild","removeChild","DOMParser","parseFromString","body","el","appendChild","getNode","_renderPosition","style","classList","add","prev","_position","val","toFixed","stl","webkitTransform","msTransform","LabelContainer","_elements","addOrUpdateElem","param","payload","cur","nodeElem","document","createElement","removeElemById","updateElemPosition","updatePanZoom","pan","zoom","origin","webkitTransformOrigin","msTransformOrigin","transformOrigin","cyNodeHtmlLabel","_cy","_params","_lc","_cyContainer","container","_titlesContainer","_cyCanvas","querySelector","parentNode","margin","border","outline","enablePointerEvents","createLabelContainer","one","elements","query","isNode","getNodePosition","createNodesCyHandler","wrapCyHandler","on","ev","slice","reverse","is","updateDataOrStyleCyHandler","setTimeout","removed","optArr","define","debounce","Heap","set","toPath","_interopDefaultLegacy","debounce__default","Heap__default","get__default","set__default","toPath__default","_typeof","Symbol","iterator","constructor","_createClass","_defineProperty","_slicedToArray","_arrayWithHoles","_s","_arr","next","done","err","_iterableToArrayLimit","minLen","_arrayLikeToArray","name","from","test","_unsupportedIterableToArray","_nonIterableRest","len","arr2","window$1","window","navigator","typeofstr","typeofobj","typeoffn","typeofhtmlele","HTMLElement","instanceStr","instanceString","fn$6","string","array","elementOrCollection","plainObject","number$1","isNaN","htmlElement","element","collection","_private","single","core","stylesheet","emptyString","match","promise","object","ms","userAgent","memoize","fn","keyFn","args","memoizedFn","ret","cache","camel2dash","str","replace","v","toLowerCase","dash2camel","toUpperCase","prependCamel","prefix","substring","capitalize","charAt","number","rgba","rgbaNoBackRefs","hsla","hslaNoBackRefs","ascending","b","extend","j","color2tuple","color","colors","colorname2tuple","hex","r","g","base","parseInt","hex2tuple","rgb","m","RegExp","exec","isPct","channel","parseFloat","Math","floor","atLeastOneIsPct","allArePct","alpha","rgb2tuple","hsl","s","l","hue2rgb","q","t","round","hsl2tuple","transparent","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","setMap","map","Error","getMap","performance","pnow","now","Date","raf","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","performanceNow","DEFAULT_HASH_SEED","DEFAULT_HASH_SEED_ALT","hashIterableInts","entry","hash","hashInt","num","hashIntAlt","seed","combineHashesArray","hashes","hashArrays","hashes1","hashes2","hashString","charCodeAt","hashStrings","hashStringsArray","strs","warningsEnabled","warnSupported","console","warn","traceSupported","trace","MAX_INT$1","Number","MAX_SAFE_INTEGER","trueify","falsify","zeroify","noop$1","error","msg","warnings","enabled","log","copy","clone","uuid","random","_staticEmptyObject","staticEmptyObject","defaults$g","_defaults","opts","filledOpts","optVal","removeFromArray","oneCopy","splice","clearArray","getPrefixedProperty","propName","setPrefixedProperty","Map$1","Map","ObjectMap","_obj","ObjectSet","arrayOrObjectSet","create","size","toArray","_this","has","callback","Set$1","Set","Element","restore","group","_p","autoWidth","autoHeight","autoPadding","compoundBoundsClean","listeners","rstyle","styleCxts","styleKeys","selected","selectable","locked","grabbed","grabbable","pannable","active","animation","current","queue","rscratch","traversalCache","backgrounding","bbCache","bbCacheShift","bodyBounds","overlayBounds","labelBounds","all","main","arrowBounds","renderedPosition","rpos","split","cls","createEmitter","bypass","css","defineSearch","bfs","dfs","roots","directed","root","visit","found","Q","connectedNodes","connectedBy","id2depth","V","_this$byGroup","byGroup","vi","viId","unshift","_loop","shift","pop","vId","depth","prevEdge","prevNode","same","vwEdges","connectedEdges","wId","_ret","connectedEles","path","elesfn$v","breadthFirstSearch","depthFirstSearch","dijkstraDefaults","weight","elesfn$u","dijkstra","_dijkstraDefaults","weightFn","dist","knownDist","unmergeBy","isLoop","getDist","setDist","updateItem","Infinity","distBetween","u","smallestEdge","uvs","edgesTo","edgesWith","intersect","smallestDistance","_weight","smalletsDist","uid","neighbors","neighborhood","vid","vDist","alt","distanceTo","pathTo","S","spawn","elesfn$t","kruskal","numNodes","forest","A","findSetIndex","sort","setUIndex","setVIndex","setU","setV","merge","aStarDefaults","goal","heuristic","elesfn$s","aStar","_aStarDefaults","cMin","cMinId","sid","tid","gScore","fScore","closedSetIds","openSet","openSetIds","cameFrom","cameFromEdge","addToOpenSet","steps","pathNode","pathNodeId","pathEdge","distance","hasElementWithId","wSrc","wTgt","wid","tempScore","floydWarshallDefaults","elesfn$r","floydWarshall","_floydWarshallDefault","N","Nsq","indexOf","atIndex","edgeNext","st","ts","ik","_j","ij","kj","indexOfArgEle","getArgEle","res","to","fromNode","bellmanFordDefaults","elesfn$q","bellmanFord","_bellmanFordDefaults","infoMap","hasNegativeWeightCycle","negativeWeightCycles","numEdges","getInfo","getNodeFromTo","$","info","pred","replacedEdge","checkForEdgeReplacement","node1","node2","info1","info2","srcInfo","tgtInfo","negativeWeightCycleIds","_edge","_src","_tgt","_weight2","srcDist","tgtDist","findNegativeWeightCycles","negativeNodes","numNegativeNodes","start","cycle","smallestId","smallestIndex","c","concat","cycleId","thisStart","_getInfo","sqrt2","sqrt","collapse","edgeIndex","nodeMap","remainingEdges","edgeInfo","sourceIn","targetIn","partition1","partition2","newEdges","contractUntil","metaNodeMap","sizeLimit","elesfn$p","kargerStein","numIter","ceil","pow","LN2","stopSize","edgeIndexes","minCutSize","minCutEdgeIndexes","minCutNodeMap","metaNodeMap2","copyNodesMap","iter","_i4","edgesState","edgesState2","res1","res2","cut","witnessNodePartition","_i5","partitionId","constructComponent","subset","component","contains","components","modelToRenderedPosition","renderedToModelPosition","array2point","getAngleFromDisp","dispX","dispY","atan2","PI","log2","signum","p1","p2","sqdist","dx","dy","inPlaceSumNormalize","total","qbezierAt","p0","qbezierPtAt","bound","min","max","makeBoundingBox","bb","x1","y1","x2","y2","expandBoundingBoxByPoint","expandBoundingBox","expandBoundingBoxSides","top","right","bottom","left","_padding","assignBoundingBox","bb1","bb2","boundingBoxesIntersect","inBoundingBox","boundingBoxInBoundingBox","roundRectangleIntersectLine","nodeX","nodeY","straightLineIntersections","cornerRadius","getRoundRectangleRadius","halfWidth","halfHeight","topStartY","finiteLinesIntersect","rightStartX","bottomStartY","arcIntersections","leftStartX","topLeftCenterX","topLeftCenterY","intersectLineCircle","topRightCenterX","topRightCenterY","bottomRightCenterX","bottomRightCenterY","bottomLeftCenterX","bottomLeftCenterY","inLineVicinity","lx1","ly1","lx2","ly2","tolerance","inBezierVicinity","x3","y3","sqdistToQuadraticBezier","result","discriminant","dum1","term1","r13","acos","cos","solveCubic","index","abs","curX","curY","distSquared","minDistanceSquared","sqdistToFiniteLine","offset","line","lineSq","hypSq","dotProduct","adjSq","pointInsidePolygonPoints","points","up","pointInsidePolygon","basePoints","centerX","centerY","direction","angle","transformedPoints","atan","sin","expandedLineSet","expandPolygon","joinLines","lineSet","currentLineStartX","currentLineStartY","currentLineEndX","currentLineEndY","nextLineStartX","nextLineStartY","nextLineEndX","nextLineEndY","vertices","intersection","pad","currentPointX","currentPointY","nextPointX","nextPointY","offsetX","offsetY","offsetLength","normalizedOffsetX","normalizedOffsetY","checkInEllipse","radius","f","t1","t2","tMin","tMax","inRangeParams","nearIntersectionX","nearIntersectionY","midOfThree","x4","y4","infiniteLines","dx13","dx21","dx43","dy13","dy21","dy43","ua_t","ub_t","u_b","ua","ub","_min","polygonIntersectLine","currentX","currentY","nextX","nextY","intersections","doTransform","shortenIntersection","amount","disp","lenRatio","generateUnitNgonPointsFitToSquare","sides","rotationRadians","generateUnitNgonPoints","fitPolygonToSquare","minX","minY","maxX","maxY","sx","sy","_i6","increment","startAngle","currentAngle","getRoundPolygonRadius","getBarrelCurveConstants","heightOffset","widthOffset","ctrlPtOffsetPct","pageRankDefaults","dampingFactor","precision","iterations","elesfn$o","pageRank","_pageRankDefaults","numNodesSqd","matrix","columnSum","additionalProb","srcId","tgtId","indexOfId","_n3","previous","eigenvector","temp","_j2","_n4","diff","_i7","delta","rank","defaults$f","elesfn$n","degreeCentralityNormalized","indegrees","outdegrees","maxIndegree","maxOutdegree","_currDegree","degreeCentrality","indegree","outdegree","degrees","maxDegree","currDegree","degree","callingEles","_options","incoming","outgoing","k_in","k_out","s_in","s_out","connEdges","dc","dcn","degreeCentralityNormalised","defaults$e","harmonic","elesfn$m","closenessCentralityNormalized","closenesses","maxCloseness","fw","currCloseness","node_i","closeness","closenessCentrality","_defaults2","totalDistance","cc","ccn","closenessCentralityNormalised","defaults$d","elesfn$l","betweennessCentrality","weighted","_C","C","outgoers","openNeighborhood","P","_vid","empty","_v","vEle","getElementById","edgeWeight","_w","_w2","_v2","betweenness","betweennessNormalized","betweennessNormalised","bc","defaults$c","expandFactor","inflateFactor","multFactor","maxIterations","attributes","getSimilarity$1","normalize","M","sum","col","row","_row","mmult","B","expand","_M","inflate","hasConverged","n2","roundFactor","isDuplicate","c1","c2","markovClustering","setOptions$3","id2position","sim","addLoops","isStillMoving","clusters","cluster","assign$2","removeDuplicates","markovClustering$1","mcl","identity","absDiff","addAbsDiff","addSquaredDiff","maxAbsDiff","currentMax","getDistance","getP","getQ","init","post","dim","distances","euclidean","squaredEuclidean","manhattan","clusteringDistance","method","nodeP","nodeQ","impl","defaults$b","sensitivityThreshold","testMode","testCentroids","setOptions$2","type","centroid","mode","randomCentroids","ndim","centroids","classify","buildCluster","assignment","haveMatricesConverged","v1","v2","seenBefore","medoids","randomMedoids","findCost","potentialNewMedoid","cost","updateCentroids","U","numerator","denominator","_n2","updateMembership","_U","fuzzyCMeans","_c2","_c3","assign$1","degreeOfMembership","kClustering","kMeans","newCentroid","kMedoids","curCost","minCosts","fcm","defaults$a","linkage","threshold","addDendrogram","dendrogramDepth","linkageAliases","mergeClosest","dists","mins","minKey","attrs","n1","_dist","merged","key1","key2","getAllChildren","buildDendrogram","leftStr","rightStr","buildClustersFromTree","leaves","hierarchicalClustering","preferredAlias","setOptions$1","retClusters","hierarchicalClustering$1","hca","defaults$9","preference","damping","minIterations","getSimilarity","attr","getPreference","begin","end","includeHoles","off","isFinite","mid","median","mean","assignClusters","exemplars","ei","_ei","affinityPropagation","R","dmp","pref","validPrefs","some","setOptions","old","Rp","se","_i8","max2","maxI","AS","_i9","_j3","_j4","K","_i10","E","_sum","_i11","_j5","exemplarsIndices","indices","findExemplars","clusterIndices","ii","maxSum","_i12","clusterIndex","affinityPropagation$1","ap","hierholzerDefaults","elesfn$k","hierholzer","oddIn","oddOut","startVertex","_hierholzerDefaults","dflag","ind","outd","d1","d2","isEdge","trail","walk","adj","adjTail","adjHead","currentNode","subtour","hopcroftTarjanBiconnected","edgeCount","stack","visitedEdges","biconnectedSearch","low","cutVertex","sourceId","targetId","otherNodeId","edgeId","cutset","nodeId","buildComponent","cutVertices","tarjanStronglyConnected","stronglyConnectedSearch","sourceNodeId","explored","targetNodeId","componentNodes","componentEdges","difference","elesfn$j","htbc","htb","hopcroftTarjanBiconnectedComponents","tsc","tscc","tarjanStronglyConnectedComponents","api","executor","state","fulfillValue","rejectReason","onFulfilled","onRejected","proxy","fulfill","reject","deliver","curr","resolver","execute","execute_handlers","handlers","func","setImmediate","cb","resolve","resolved","ps","resolveAll","rejectAll","vals","doneCount","Promise$1","Promise","Animation","opts2","isCore","isEle","duration","started","playing","hooked","applying","progress","completes","frames","complete","startPosition","startStyle","getAnimationStartStyle","startPan","startZoom","anifn","hook","tAni","addToAnimationPool","play","stopped","pause","rewind","fastforward","time","wasPlaying","completed","swap","_pa","startStyleProp","run","running","define$3","animated","self","styleEnabled","clearQueue","delay","delayAnimation","properties","selfIsArrayLike","isEles","getPropsList","panBy","cyPan","center","centre","centerPan","getCenterPan","fitVp","getFitViewport","boundingBox","vp","getZoomedViewport","zoomed","panned","jumpToEnd","anis","ani_p","notify","define$2","field","bindingEvent","allowBinding","allowSetting","allowGetting","settingEvent","settingTriggersEvent","triggerFnName","immutableKeys","updateStyle","beforeGet","beforeSet","onSet","canSet","change","_ele","removeData","event","triggerEvent","names","i_a","l_a","_i_a","_l_a","_privateFields","_keys","define$1","eventAliasesOn","proto","addListener","listen","unlisten","unbind","removeListener","trigger","emit","pon","promiseOn","events","selector","onArgs","offArgs","elesfn$i","elesfn$h","_classes","changed","classesSet","eleClasses","changedEle","addClass","toggleClass","hasClass","className","toggle","toggleUndefd","il","changedNow","removeClass","flashClass","tokens","metaChar","comparatorOp","boolOp","meta","separator","descendant","child","subject","directedEdge","undirectedEdge","variable","ops","op","Type","stateSelectors","matches","visible","isChildless","isOrphan","isSimple","descending","lookup","selToFn","stateSelectorRegex","cleanMetaChars","$1","replaceLastQuery","examiningQuery","replacementQuery","exprs","regex","populate","_ref","checks","_ref3","_ref5","_ref7","_ref9","_ref11","_ref12","operator","_ref13","_ref14","_ref15","_ref16","currentSubject","compoundCount","lastQ","edgeQuery","srcTgtQ","_source","_target","nhoodQ","neighbor","parentChildQuery","compound","_child","_parent","_parent2","_child2","pcQChecks","ancChQuery","ancestor","_descendant","_ancestor","_ancestor2","_descendant2","adQChecks","modifier","topChk","topType","regexObj","consumeExpr","remaining","expr","consumed","parse$1","parse","inputText","currentQuery","consumeWhitespace","exprInfo","toStringCache","clean","cleanVal","space","checkToString","check","_operator","_field","_operator2","queryToString","lhs","sub","rhs","reduce","chk","valCmp","fieldVal","fieldStr","valStr","isFieldStr","isFieldNum","isValStr","caseInsensitive","notExpr","isIneqCmp","data$1","matches$1","every","sel","stateSelectorMatches","boolCmp","qA","qB","incomers","ancestors","descendants","matching","selectorFunction","text","Selector","addQuery","invalid","selfn","eq","sameText","otherSel","elesfn$g","allAre","selObj","thisLength","anySame","allAreNeighbors","nhood","allAreNeighbours","equal","equals","fn$5","elesfn$e","arg1","arg2","arg3","arg4","selectorOrEles","tch","ch","cacheHit","elesfn$f","parents","commonAncestors","orphans","stdFilter","nonorphans","eleChildren","siblings","not","forEachCompound","includeSelf","recursiveStep","did","hasCompounds","hasCompoundNodes","addChildren","addParent","addParentAndChildren","forEachDown","forEachUp","forEachUpAndDown","removeScratch","removeRscratch","removeAttr","fn$4","elesfn$c","elesfn$d","defineDegreeFunction","includeLoops","defineDegreeBoundsFunction","degreeFn","minDegree","minIndegree","minOutdegree","totalDegree","beforePositionSet","newPos","silent","oldPos","dirtyBoundingBoxCache","positionDef","validKeys","updateCompoundBounds","dirtyCompoundBoundsCache","silentPosition","positions","_fn","startBatch","_pos","endBatch","silentPositions","silentShift","setting","relativePosition","ppos","_hasParent","_relativeToParent","_origin","_ele2","hasParent","relativeToParent","modelPosition","point","modelPositions","renderedPoint","relativePoint","fn$3","elesfn$b","renderedBoundingBox","emitAndNotify","force","batching","update","includeLabels","pstyle","pfValue","includeOverlays","useCache","leftVal","units","rightVal","topVal","bottomVal","widthBiasDiffs","computeBiasValues","diffLeft","biasDiff","diffRight","biasComplementDiff","heightBiasDiffs","diffTop","diffBottom","paddingObject","relativeTo","computePaddingValues","propDiff","propBias","propBiasComplement","biasTotal","noninf","updateBounds","updateBoundsFromBox","b2","prefixedProperty","updateBoundsFromArrow","bounds","headless","halfArW","arrowWidth","srcX","srcY","tgtX","tgtY","midX","midY","bbs","updateBoundsFromLabel","prefixDash","strValue","labelWidth","labelHeight","labelX","labelY","marginX","marginY","rotation","outlineWidth","halfBorderWidth","lh","lw","lw_2","lh_2","bbPrefix","isAutorotate","isPfValue","theta","xo","yo","rotate","px1y1","px1y2","px2y1","px2y2","bbPrefixRot","bbRot","getKey","tf","incudeNodes","includeEdges","includeMainLabels","includeSourceLabels","includeTargetLabels","getBoundingBoxPosKey","ints","hashIntsArray","cachedBoundingBoxImpl","usingDefOpts","defBbOptsKey","currPosKey","isPosKeySame","bbCachePosKey","isDirty","styleDirty","recalculateRenderedStyle","ex1","ex2","ey1","ey2","manualExpansion","isDisplayed","displayed","overlayPadding","underlayPadding","includeUnderlays","wHalf","includeNodes","halfW","outerWidth","halfH","outerHeight","curveStyle","hpts","haystackPts","_temp","pts","bezierPts","linePts","pt","n1pos","n2pos","_temp2","_temp3","gx","gy","bbBody","bbOverlay","bbLabels","boundingBoxImpl","defBbOpts","mainRot","sourceRot","targetRot","filledBbOpts","boundingBoxAt","bbAtOldPos","copyBoundingBox","boundingbox","renderedBoundingbox","fn$2","elesfn$a","defineDimFns","uppercaseName","autoName","labelName","outerName","uppercaseOuterName","paddedHeight","paddedWidth","widthHeight","controlPoints","renderer","getControlPoints","mult","segmentPoints","getSegmentPoints","sourceEndpoint","getSourceEndpoint","targetEndpoint","getTargetEndpoint","midpoint","getEdgeMidpoint","edgePoints","spec","rName","substr","renderedName","getValue","ifEdge","getPoints","ifEdgeRenderedPositions","getPoint","ifEdgeRenderedPosition","dimensions","Event","recycle","returnFalse","returnTrue","isImmediatePropagationStopped","isPropagationStopped","isDefaultPrevented","preventDefault","defaultPrevented","originalEvent","namespace","timeStamp","stopPropagation","stopImmediatePropagation","eventRegex","defaults$8","qualifierCompare","q1","q2","eventMatches","addEventFields","callbackContext","context","beforeEmit","afterEmit","bubble","defaultsKeys","emptyOpts","Emitter","emitting","forEachEvent","handler","qualifier","conf","confOverrides","eventList","evt","makeEventObj","forEachEventObj","listener","removeAllListeners","extraParams","manualCallback","numListenersBeforeEmit","eventObj","_loop2","otherArr","emitterOptions$1","selector1","selector2","once","onceCollection","argSelector$1","elesfn$9","emitter","argSel","elesfn$8","_filter","filterEles","toRemove","absoluteComplement","mutableElements","other","col2","col1Smaller","colS","colL","xor","both","retEles","toAdd","spawnSelf","toAddEle","unmergeAt","unmergedLastEle","lastEleI","lastEle","lastEleId","unmergeOne","unmerge","toRmFn","mapFn","initialValue","valFn","maxEle","minEle","fn$1","union","or","relativeComplement","subtract","and","symmetricDifference","symdiff","fnFilter","filterFn","complement","abscomp","zIndexSort","getDepth","zDepth","depthDiff","getEleDepth","eleDiff","zDiff","poolIndex","elesfn$6","thisSize","first","last","sortFn","sorted","sortByZIndex","srcDepth","tgtDepth","each","typeofUndef","defineSymbolIterator","getLayoutDimensionOptions","elesfn$5","takesUpSpace","bbDim","layoutEles","getMemoizeKey","fnMem","animations","useSpacingFactor","spacingFactor","spacingBb","getFinalPos","spacing","nodesBb","calculateSpacing","ani","easing","fitAni","zoomPanAni","makeLayout","styleCache","cacheStyleFunction","cachePrototypeStyleFunction","selfFn","createLayout","elesfn$4","dirtyStyleCache","dirty","notifyRenderer","batchStyleEles","updatedEles","changedEles","cleanStyle","parsedStyle","property","includeNonDefault","overriddenStyle","getDefaultProperty","numericStyle","numericStyleUnits","renderedStyle","getRenderedStyle","applyBypass","getStylePropertyValue","getRawStyle","removeStyle","removeAllBypasses","removeBypasses","show","hide","effectiveOpacity","parentOpacity","checkCompound","parentOk","defineDerivedStateFunction","specs","ok","edgeOkViaNode","eleTakesUpSpace","eleInteractive","parentInteractive","interactive","noninteractive","eleVisible","edgeVisibleViaNode","hidden","isBundledBezier","renderedCss","removeBypass","removeCss","elesfn$3","defineSwitchFunction","_handler","addlEvents","able","ableField","overrideAble","changedColl","defineSwitchSet","overrideField","autolock","autoungrabify","autounselectify","deselect","unselect","inactive","elesfn$2","defineDagExtremity","disqualified","noIncomingEdges","noOutgoingEdges","defineDagOneHop","oEles","defineDagAllHops","sEles","sElesIds","newNext","nid","defineSourceFunction","sources","defineEdgesWithFunction","otherNodes","edgeData","thisToOther","otherToThis","thisIsSrc","thisIsTgt","defineParallelEdgesFunction","codirected","edge1_p","src1","srcid1","tgtid1","srcEdges1","edge2","edge2data","tgtid2","srcid2","oppdirected","clearTraversalCache","successors","predecessors","otherNode","closedNeighborhood","neighbourhood","closedNeighbourhood","openNeighbourhood","targets","parallelEdges","codirectedEdges","visited","unvisited","visitInComponent","cmpt","componentsOf","Collection","unique","createdElements","elesIds","json","_data","_l","element$1","lazyMap","rebuildMap","elesfn$1","$id","_data2","move","newParentValSpecd","checkSwitch","trueFnName","falseFnName","obj_k","jsons","elesArr","addToPool","cy_p","removeFromElements","_data3","fields","fieldsLength","badSourceOrTarget","_data4","parentId","selfAsParent","restored","_ele3","inside","remove","removeFromPool","elesToRemove","elesToRemoveIds","alreadyAdded","addConnectedEdges","removeEdgeRef","removeParallelRef","pllEdge","alteredParents","removeChildRef","pid","ids","_ele4","pllEdges","elesStillInside","removedElements","_ele6","struct","modifyPool","srcExists","tgtExists","batch","_data5","pidToAssign","updated","_data6","corefn$9","elesByGroup","_jsons2","grs","elesArray","jl","generateCubicBezier","mX1","mY1","mX2","mY2","NEWTON_ITERATIONS","NEWTON_MIN_SLOPE","SUBDIVISION_PRECISION","SUBDIVISION_MAX_ITERATIONS","kSplineTableSize","kSampleStepSize","float32ArraySupported","Float32Array","mSampleValues","aA1","aA2","calcBezier","aT","getSlope","getTForX","aX","intervalStart","currentSample","lastSample","guessForT","initialSlope","aGuessT","currentSlope","newtonRaphsonIterate","aA","aB","currentT","binarySubdivide","_precomputed","precompute","calcSampleValues","generateSpringRK4","springAccelerationForState","tension","friction","springEvaluateStateWithDerivative","initialState","dt","derivative","dv","springIntegrateState","dxdt","dvdt","springRK4Factory","have_duration","last_state","initState","time_lapsed","percentComplete","cubicBezier","bezier","percent","easings","linear","spring","getEasedValue","easingFn","roundValue","ease","startProp","endProp","propSpec","easedArr","si","step$1","pEasing","startTime","easingImpl","easingVals","startPos","endPos","valid","endPan","animatingPan","endZoom","animatingZoom","minZoom","maxZoom","_name","easedVal","overrideBypass","startAnimation","stepAll","aniEles","doneEles","stepOne","ranAnis","callbacks","_callbacks","step","ranEleAni","handledThisEle","ranCoreAni","corefn$8","stopAnimationLoop","animationsRunning","startAnimationLoop","beforeRender","willDraw","beforeRenderPriorities","headlessStep","emitterOptions","argSelector","elesfn","corefn$7","png","jpg","bg","jpeg","corefn$6","extension","corefn$5","eventName","eventEles","batchNotifications","notificationsEnabled","destroyed","notifications","bool","noNotifications","batchCount","batchData","rendererDefaults","hideEdgesOnViewport","textureOnViewport","motionBlur","motionBlurOpacity","pixelRatio","desktopTapThreshold","touchTapThreshold","wheelSensitivity","debug","showFps","corefn$4","renderTo","pxRatio","forceRender","resize","invalidateSize","initRenderer","RendererProto","rOpts","destroyRenderer","domEle","_cyreg","childNodes","onRender","offRender","invalidateDimensions","corefn$3","styfn$8","TRUE","ie","cxtMeta","getContextMeta","cxtStyle","getContextStyle","app","applyContextStyle","appliedInitStyle","updateTransitions","diffProps","updateStyleHints","getPropertiesDiff","oldCxtKey","newCxtKey","propDiffs","dualCxtKey","cachedVal","addedProp","cxt","oldHasCxt","newHasCxt","cxtHasDiffed","cxtHasMappedProps","mappedProperties","laterCxtOverrides","laterCxt","cxtKey","prevKey","styleCxtKey","diffPropNames","cxtStyles","contextStyles","retDiffProps","types","diffPropName","cxtProp","eleProp","deleteBypassed","mapped","mapping","fnValue","prevFnValue","retDiffProp","applyParsedProperty","bypassed","propNames","propertyGroupNames","propGrKeys","propertyGroupKeys","propHash","seedKey","getPropertiesHash","oldStyleKey","styleKey","overriddenStyles","grKey","updateGrKey1","updateGrKey2","updateGrKey","updateGrKeyWStr","strVal","parsedProp","propInfo","_grKey","groupKey","normalizedNumberVal","hashOverride","numberVal","enums","haveNormNum","haveNum","multiple","hash1","hash2","_grKey2","grHash","sk","labelDimsKey","labelDimensions","labelKeys","labelKey","labelStyleKey","commonLabel","sourceLabelKeys","sourceLabelKey","sourceLabelStyleKey","targetLabelKeys","targetLabelKey","targetLabelStyleKey","_p$styleKeys","nodeBody","nodeBorder","backgroundImage","pie","nodeKeys","nodeKey","hasPie","clearStyleHints","flatProp","propIsBypass","origProp","origPropIsBypass","flatPropMapping","getVal","checkTriggers","fromVal","toVal","deleteBypass","printMappingErr","mapData","fieldWidth","fieldMax","fieldMin","r1","valueMin","r2","valueMax","g1","g2","b1","a1","a2","clr","calcValue","_fields","_fieldVal","fnRetVal","cleanElements","keepBypasses","anyPrev","styProp","diffProp","fromProp","toProp","initVal","initDt","transitioning","checkTrigger","fromValue","toValue","getTrigger","onTrigger","triggerCheck","checkZOrderTrigger","triggersZOrder","checkBoundsTrigger","triggersBounds","triggersBoundsOfParallelBeziers","styfn$7","_parsedProp","specifiedProps","_name2","_value","_parsedProp2","_prop","prevProp","isColor","isMulti","mutiple","oldValue","propertyNames","styfn$6","px","containerCss","domElement","getComputedStyle","getPropertyValue","styfn$5","isRenderedVal","subproperty","alias","pointsTo","styleProp","getRenderedValue","getValueStringWithUnits","isArrayValue","aniProps","propsObj","chVal","getNonDefaultPropertiesHash","styfn$4","resetToDefault","appendFromJson","defaultLength","styfn$3","selAndBlockStr","blockRem","propAndValStr","removeSelAndBlockFromRemaining","removePropAndValFromRem","selAndBlock","selectorStr","blockStr","invalidBlock","propAndVal","propStr","appendFromString","styfn$2","mapArg","urlRegexes","implicitUnits","percentages","zeroOneNumber","unitless","zeroOneNumbers","nOneOneNumber","nonNegativeInt","integer","nodeSize","numbers","positiveNumber","strictMin","bidirectionalSize","bidirectionalSizeMaybePercent","allowPercent","bidirectionalSizes","sizeMaybePercent","axisDirection","paddingRelativeTo","bgWH","bgPos","bgRelativeTo","bgRepeat","bgFit","bgCrossOrigin","bgClip","bgContainment","fill","bools","lineStyle","lineCap","borderStyle","fontFamily","fontStyle","fontWeight","textDecoration","textTransform","textWrap","textOverflowWrap","textBackgroundShape","nodeShape","overlayShape","compoundIncludeLabels","arrowShape","arrowFill","display","visibility","zCompoundDepth","zIndexCompare","justification","layoutData","mapLayoutData","mapScratch","url","regexes","singleRegexMatchValue","urls","propList","textRotation","polygonPointList","evenMultiple","edgeDistances","edgeEndpoint","singleEnum","validate","valArr","unitsArr","gradientDirection","boundsExpansion","zeroNonZero","val1","val2","any","emptyNonEmpty","str1","str2","empty1","empty2","mainLabel","sourceLabel","targetLabel","behavior","overlay","underlay","transition","nodeSizeHashOverride","edgeLine","ghost","pieBackgroundN","edgeArrow","arrowPrefixes","propGroups","propertyGroups","propGroupNames","aliases","pointsToProp","aliasProp","getDefaultProperties","defaultProperties","rawProps","parsedProps","addDefaultStylesheet","styfn$1","propIsFlat","parseImplWarn","argHash","propCache","parseImpl","passedValue","valueIsString","trim","_mapped","pfValArr","hasEnum","deg","checkEnums","unitsRegex","strictMax","getEmSizeInPixels","propsStr","propsSplit","tuple","enumProp","Style","coreStyle","styfn","clear","ele_p","mapVal","cssRule","append","appendToStyle","fromJson","fromString","corefn$2","newStyle","setStyle","generateStyle","corefn$1","selectionType","selType","panningEnabled","userPanningEnabled","zoomingEnabled","userZoomingEnabled","boxSelectionEnabled","arg0","viewportState","bbe","zoomRange","currentPan","currentZoom","bail","level","pan1","zoom1","zoom2","viewport","zoomDefd","panDefd","zoomFailed","panFailed","z","cancelOnFailedZoom","reset","sizeCache","clientWidth","clientHeight","extent","rb","renderedExtent","multiClickDebounceTime","_int","autolockNodes","autoungrabifyNodes","Core","reg","destroy","readies","head","defVal","def","altVal","rendererOptions","extData","loadExtData","thens","initStyle","initEles","onload","ondone","oldEles","layoutOpts","setElesAndLayout","corefn","isReady","isHeadless","mount","unmount","idInJson","updateEles","gr","toMod","_toMod$_i","_json","parentsToRemove","getFreshRef","defaults$7","circle","grid","avoidOverlap","maximal","depthSort","setInfo","BreadthFirstLayout","maximalAdjustments","rootsArray","comp","compRoots","depths","foundByBfs","addToDepth","pNode","orphanNodes","assignDepthsAt","assignDepths","adjustMaximally","shifted","eInfo","maxDepth","incmr","iInfo","newDepth","changeDepth","enqueue","didShift","minDistance","nbb","cachedWeightedPercent","getWeightedPercent","eleDepth","samples","bf","nDepth","orphanDepth","biggestDepthSize","maxDepthSize","_getInfo2","depthSize","distanceX","distanceY","radiusStepSize","defaults$6","sweep","clockwise","CircleLayout","counterclockwise","dTheta","dcos","dsin","rMin","rx","ry","DEBUG","defaults$5","equidistant","minNodeSpacing","concentric","levelWidth","ConcentricLayout","nodeValues","maxNodeSize","levels","currentLevel","minDist","firstLvlHasMulti","rStep","rDeltaMax","_r","rDelta","_level2","_level3","_dTheta","_r2","_val","defaults$4","animationThreshold","refresh","randomize","componentSpacing","nodeRepulsion","nodeOverlap","idealEdgeLength","edgeElasticity","nestingFactor","gravity","initialTemp","coolingFactor","minTemp","CoseLayout","layoutInfo","createLayoutInfo","printLayoutInfo","randomizePositions","refreshPositions","mainLoop","temperature","getScaledPos","getScaleInBoundsFn","loopRet","frame","separateComponents","thread","isCompound","layoutNodes","idToIndex","graphSet","indexToGraph","layoutEdges","edgeSize","id2cmptId","tempNode","isLocked","cmptId","positionX","positionY","padLeft","padRight","padTop","padBottom","tempGraph","p_id","node_id","node_ix","tempEdge","idealLength","elasticity","sourceIx","targetIx","lca","findLCA","lcaGraph","findLCA_aux","count","graphIx","nodeIx","coseBB","lnode","pctX","pctY","_step","calculateNodeForces","calculateEdgeForces","calculateGravityForces","propagateForces","updatePositions","randomDistance","directionX","directionY","overlap","nodesOverlap","forceX","forceY","point1","findClippingPoint","point2","distanceSqr","dX","dY","overlapX","overlapY","X","Y","H","W","dirSlope","nodeSlope","lx","ly","fx","fy","nodeIndex","offX","offY","childNode","tempForce","limitForce","updateAncestryBoundaries","flag","cid","totalA","usedW","rowH","maxRowW","defaults$3","avoidOverlapPadding","condense","rows","cols","GridLayout","cells","splits","small","large","oRows","oCols","columns","sm","lg","_sm","_lg","cellWidth","cellHeight","cellUsed","used","use","moveToNextCell","id2manPos","rcPos","defaults$2","NullLayout","defaults$1","PresetLayout","posIsFn","copyPosition","getPosition","defaults","RandomLayout","NullRenderer","noop","throwImgErr","BRp$f","arrowShapes","bbCollide","translation","edgeWidth","xRotated","yScaled","transformPoints","retPts","pointsToArr","standardGap","defineArrowShape","defn","collide","roughCollide","draw","arrowShapeImpl","gap","controlPoint","ptsTrans","ctrlPt","ctrlPtTrans","pointsTee","triPts","teePts","pointsTr","circleInside","getArrowWidth","baseCrossLinePts","crossLinePts","shiftFactor","BRp$e","clientX","clientY","offsets","findContainerClientCoords","offsetLeft","offsetTop","scale","containerBB","rect","getBoundingClientRect","styleValue","paddingHor","paddingVer","borderHor","unscaledW","unscaledH","interactiveElementsOnly","isTouch","findNearestElements","nearEdge","nearNode","getCachedZSortedEles","near","edgeThreshold","nodeThreshold","labelThreshold","minSqDist","addEle","sqDist","checkNode","hw","hh","nodeShapes","getNodeShape","checkPoint","checkEdge","rs","styleWidth","widthSq","width2","edgeType","allpts","arSize","arrows","arrowStartX","arrowStartY","srcArrowAngle","arrowEndX","arrowEndY","tgtArrowAngle","midsrcArrowAngle","midtgtArrowAngle","ar","shape","preprop","pre","checkLabel","th","ox","oy","box","x1c","x2c","y1c","y2c","boxBb","nodeBb","startX","startY","endX","endY","allInside","BRp$d","isHaystack","isBezier","isMultibezier","isSegments","isSelf","segpts","i1","i2","i3","bp0x","bp0y","bp1x","bp1y","ctrlpts","ic","midDispX","midDispY","getArrowHeight","arrowWidthCache","BRp$c","getPts","findHaystackPoints","haystack","srcPos","tgtPos","srcW","tgtW","srcH","tgtH","halfRadius","storeEdgeProjections","calculateArrowAngles","recalculateEdgeLabelProjections","calculateLabelAngles","findSegmentsPoints","pairInfo","posPts","intersectionPts","vectorNormInverse","segmentWs","segmentDs","segmentsN","w1","w2","midptPts","adjustedMidpt","findLoopPoints","edgeIsUnbundled","dirCounts","ctrlptDists","ctrlptDist","loopDir","loopSwp","stepSize","loopDist","loopAngle","outAngle","inAngle","String","findCompoundLoopPoints","loopaPos","loopbPos","loopPos","compoundStretchA","compoundStretchB","findStraightEdgePoints","findBezierPoints","edgeIsSwapped","ctrlptWs","bezierN","ctrlptWeight","multi","normctrlptDist","manctrlptDist","sign","distanceFromMidpoint","findTaxiPoints","VERTICAL","HORIZONTAL","LEFTWARD","RIGHTWARD","DOWNWARD","UPWARD","dIncludesNodeBody","taxiDir","rawTaxiDir","taxiTurn","turnIsPercent","taxiTurnPfVal","turnIsNegative","minD","dw","dh","pdx","pdy","subDWH","dxy","dwh","isExplicitDir","isVert","pl","sgnL","forcedDir","getIsTooClose","isTooCloseSrc","isTooCloseTgt","lShapeInsideSrc","lShapeInsideTgt","_lShapeInsideSrc","_lShapeInsideTgt","_y","_x","_x2","_x3","_y2","_y3","_y4","_x4","_x5","_x6","_y5","_y6","tryToCorrectInvalidPoints","srcShape","tgtShape","badStart","badAStart","badEnd","badAEnd","minCpADist","arrowShapeWidth","startACpDist","closeStartACp","endACpDist","closeEndACp","overlapping","cpD","cpL","cpM","cpProj","srcCtrlPtIntn","intersectLine","_cpD","_cpL","_cpM","_radius","_cpProj","tgtCtrlPtIntn","findEndpoints","storeAllpts","checkForInvalidEdgeWarning","loggedErr","findEdgeControlPoints","hashTable","pairId","map2","pairIds","haystackEdges","edgeIsBezier","tableEntry","hasUnbundled","hasBezier","swappedpairInfo","edge1","firstEdge","_curveStyle","_edgeIsUnbundled","calculatedIntersection","srcOutside","srcIntn","tgtOutside","tgtIntn","vector","vectorNorm","passedPairInfo","BRp$b","npos","p1_i","p2_i","tgtArShape","srcArShape","et","lines","segments","hasEndpts","overrideEndpts","srcManEndpt","srcManEndptVal","tgtManEndpt","tgtManEndptVal","cpStart","srcArrowFromPt","manualEndptToPx","trs","lw2","lh2","va","ha","labelIntersect","refPt","intSqdist","labIntSqdist","arrowEnd","edgeEnd","srs","_lw","_lh","_lx","_ly","_lw2","_lh2","_va","_ha","_labelIntersect","_refPt","_intSqdist","_labIntSqdist","_minSqDist","arrowStart","edgeStart","badLine","BRp$a","pushBezierPts","qbezierAt$1","p3","bpts","bezierProjPcts","lpts","recalculateEdgeProjections","BRp$9","content","textX","textY","nodeWidth","nodeHeight","nodePos","textHalign","textValign","applyLabelDimensions","lineAngleFromDelta","lineAngle","setRs","midAngle","createControlPointInfo","startDist","nProjs","addSegment","cp","t0","prevSegment","segment","prevCp","calculateEndProjection","isSrc","cps","totalDist","_cp","_seg","lastSeg","seg","tSegment","segDt","lp0","lp1","bezierAngle","di","d0","_t","vec","vecDist","normVec","lineAt","applyPrefixedLabelDimensions","getLabelText","labelDims","calculateLabelDimensions","lineHeight","numLines","normPerLineHeight","labelLineHeight","pfd","wrapStyle","maxW","overflowAny","wrappedLines","wordsRegex","wordSeparator","lineW","processedLine","words","subline","word","testLine","_maxW","ellipsized","incLastCh","getLabelJustification","cacheKey","labelDimCache","existingVal","fStyle","family","canvas","labelCalcCanvas","c2d","labelCalcCanvasContext","getContext","ds","zIndex","pointerEvents","font","metrics","measureText","calculateLabelAngle","rot","rotStr","labelAutoAngle","labelAngle","sourceLabelAngle","targetLabelAngle","BRp$8","warnedCutRect","makePolygon","BRp$7","elesToUpdate","dirtyStyleCaches","cleanConnected","binder","updateEleCalcs","fns","onUpdateEleCalcsFns","flushRenderedStyleQueue","eleCalcs","isCleanConnected","_rstyle","recalculateNodeLabelProjection","nodeW","nodeH","_p3","_rstyle2","BRp$6","cachedZSortedEles","drag","nondrag","grabTargets","inDragLayer","forceRecalc","updateCachedGrabbedEles","BRp$5","BRp$4","crossOrigin","onLoad","imageCache","image","addEventListener","Image","dataUriPrefix","BRp$3","useCapture","tgtIsDom","supportsPassiveEvents","supportsPassive","capture","passive","bindings","nodeIsDraggable","nodeIsGrabbable","load","isSelected","triggerEvents","isMultSelKeyDown","shiftKey","metaKey","ctrlKey","allowPanningPassthrough","down","downs","allowPassthrough","setInDragLayer","setGrabTarget","isGrabTarget","addToDragList","list","addToList","setGrabbed","addNodesToDrag","innerNodes","addDescendantsToDrag","updateAncestorsInDragLayer","addNodeToDrag","freeDraggedElements","grabbedEles","setFreed","setOutDragLayer","removeGrabTarget","blurActiveDomElement","activeElement","blur","haveMutationsApi","MutationObserver","haveResizeObserverApi","ResizeObserver","removeObserver","mutns","rNodes","removedNodes","observe","childList","registerBinding","onResize","styleObserver","resizeObserver","invalidateCoords","invalidateContainerClientCoordsCache","clickTimeout","didDoubleClick","prevClickTimeStamp","eventInContainer","containerPageCoords","touches","atLeastOnePosInside","tParent","containerIsTarget","hoverData","which","gpos","projectIntoViewport","select","selection","nears","draggedElements","dragData","possibleDragElements","mdownPos","mdownGPos","cxtStarted","cxtEvt","activate","downTime","getTime","cxtDragged","makeEvent","selectedNodes","redrawHint","bgActivePosistion","redraw","tapholdCancelled","clearTimeout","tapholdTimeout","tapholdDuration","draggingEles","dragging","selecting","findNearestElement","isOverThresholdDrag","dx2","dist2","desktopTapThreshold2","multSelKeyDown","goIntoBoxMode","cxtOver","deltaP","justStartedPan","mdPos","dragged","unactivate","didDrag","justStartedDrag","totalShift","dragDelta","updateDragDelta","cxtTap","getAllInBox","eleWouldBeSelected","downWasGrabbed","f1x1","f1y1","f2x1","f2y1","distance1","distance1Sq","center1","modelCenter1","containerWidth","containerHeight","twoFingersStartInside","wheelHandler","scrollingPage","wheelZooming","wheelTimeout","deltaY","wheelDeltaY","wheelDelta","deltaMode","newZoom","gestureStartZoom","scrollingPageTimeout","hasTouchStarted","touchstartHandler","touchmoveHandler","touchcancelHandler","touchendHandler","didDoubleTouch","touchTimeout","prevTouchTimeStamp","distanceSq","touchData","earlier","singleTouchMoved","touchDragEles","cxtDistThreshold","near1","near2","starts","draggedEles","singleTouchStartTime","pinching","sPos","touch0","startGPosition","startGPos","touchTapThreshold2","f1x2","f1y2","f2x2","f2y2","distance2Sq","factorThreshold","distThreshold","lastThreeTouch","didSelect","de_p","_start","distance2","factor","tx","ty","ctrx","ctry","pan2","swipePanning","ctxTapend","ctxTap","startWasGrabbed","rdist2","TouchEvent","pointers","makeTouch","identifier","pointerId","pageX","pageY","radiusX","radiusY","screenX","screenY","addPointer","touch","makePointer","removePointer","addTouchesToEvent","pointerIsMouse","pointerType","updatePointer","BRp$2","nodeShapeImpl","generateEllipse","ellipseWradius","ellipseHradius","newLength","lenProportion","intersectLineEllipse","generateRoundPolygon","allPoints","sourceIndex","destIndex","xDest","yDest","norm","destUv","sourceUv","py","cosTheta","cp0x","cp0y","cp1x","cp1y","orthx","orthy","lowestIntersection","lowestSquaredDistance","squaredDistance","roundPolygonIntersectLine","cutPolygonPoints","squaredCornerRadius","cx","pointInsideRoundPolygon","generateRoundRectangle","diam","generateCutRectangle","cornerLength","generateCutTrianglePts","cl","xBegin","xEnd","yBegin","yEnd","topLeft","topRight","bottomRight","bottomLeft","cPts","cutTrianglePts","generateBarrel","bPts","generateBarrelBezierPts","approximateBarrelCurvePts","m0","m1","m2","curveConstants","hOffset","wOffset","ctrlPtXOffset","isTop","isBottom","barrelCurvePts","getCurveT","curvePts","x0","y0","xMin","xMax","yMin","yMax","coeff","validRoots","sqrtR","denom","solveQuadratic","curveRegions","cornerPts","bezY","generateBottomRoundrectangle","topIntersections","registerNodeShapes","generatePolygon","diamondPoints","star5Points","outerPoints","innerPoints","innerRadius","tagPoints","BRp$1","redrawTotalTime","redrawCount","averageRedrawTime","lastRedrawTime","lastDrawTime","requestedFrame","renderOptions","cbs","beforeRenderCallbacks","startRenderLoop","renderLoopStarted","renderFn","requestTime","skipFrame","render","endTime","BR","BRp","clientFunctions","ctr","stylesheetId","stylesheetAlreadyExists","innerHTML","insertBefore","triggerMode","initialPan","redraws","motionBlurEnabled","forcedPixelRatio","motionBlurTransparency","motionBlurPxRatio","mbPxRBlurry","minMbLowQualFrames","fullQualityMb","clearedForMotionBlur","eleTxrDeq","lyrTxrDeq","lyrTxrSkip","registerArrowShapes","registerCalculationListeners","invalidateCachedZSortedEles","matchCanvasSize","removeEventListener","disconnect","labelCalcDiv","fullFpsTime","defs","dequeueingSetup","queueRedraw","deqRedrawThreshold","frameStartTime","avgRenderTime","renderTime","deqd","getPixelRatio","frameDuration","timeAvailable","deqFastCost","deqCost","deqAvgCost","deqNoDrawCost","thisDeqd","deq","onDeqd","shouldRedraw","ElementTextureCacheLookup","doesEleInvalidateKey","idsByKey","keyForId","cachesByLvl","lvls","getIdsFor","currKey","deleteIdForKey","addIdForKey","keyHasChangedFor","lvl","caches","getCachesAt","getCache","updateKeyMappingFor","hasCache","setCache","deleteCache","deleteKeyMappingFor","entireKeyInvalidated","invalidateKey","getNumberOfIdsForKey","getTxrReasons","dequeue","downscale","highQuality","initDefaults","drawElement","getBoundingBox","getRotationPoint","getRotationOffset","isVisible","allowEdgeTxrCaching","allowParentTxrCaching","ElementTextureCache","initOptions","onDequeues","setupDequeueing","ETCp","reasons","getTextureQueue","txrH","eleImgCaches","getRetiredTextureQueue","rtxtrQs","retired","getElementQueue","eleCacheQueue","reqs","getElementKeyToQueue","eleKeyToCacheQueue","getElement","reason","eleScaledH","eleScaledW","scaledLabelShown","eleTextBiggerThanMin","eleCache","invalidated","texture","invalidatedWidth","txrQ","txr","addNewTxr","recycleTexture","addTexture","usedWidth","higherCache","scalableFrom","otherCache","deqing","highQualityReq","downscaleReq","oneUpCache","drawImage","setTransform","clearRect","queueElement","lowerCache","_l2","translate","eleCaches","checkTextureFullness","invalidateElements","invalidateElement","isInvalid","getForCachedKey","invalidate","_cache","checkTextureUtility","removeFromQueue","retireTexture","fullnessChecks","minW","makeOffscreenCanvas","rtxtrQ","k2q","existingReq","req","dequeued","cacheExists","onDequeue","offDequeue","LayeredTextureCache","layersByLevel","firstGet","lastInvalidationTime","skipping","eleTxrDeqs","scheduleElementRefinement","refineElementTextures","layersQueue","LTCp","layerIdPool","MAX_INT","makeLayer","layer","elesQueue","getLayers","validateLayersElesOrdering","tmpLayers","layersByLvl","layers","levelIsComplete","canUseAsTmpLvl","checkLvls","dir","checkTempLevels","after","getBb","insert","maxElesPerLayer","allowLazyQueueing","imgLayerCaches","existingLayer","queueLayer","drawEleInLayer","getEleLevelForLayerLevel","setImgSmoothing","drawCachedElement","numElesInLayers","invalidateLayer","updateElementsInLayers","haveLayers","replacement","rLyr","replaces","enqueueElementRefinement","elesQ","hasId","eleDeqs","peek","applyLayerReplacement","requestRedraw","layersInLevel","replaced","CRp$a","polygon","lineTo","triangleBackcurve","firstPt","quadraticCurveTo","triangleTee","trianglePoints","teePoints","beginPath","firstTeePt","moveTo","closePath","circleTriangle","arc","firstTrPt","CRp$9","shiftToOriginWithBb","showLabel","showOverlay","showOpacity","drawNode","drawEdge","drawNodeOverlay","drawEdgeOverlay","drawNodeUnderlay","drawEdgeUnderlay","eleTxrCache","getRotation","getOpacity","opacity","smooth","oldGlobalAlpha","rotPt","getImgSmoothing","globalAlpha","getZeroRotation","getLabelRotation","getTextAngle","getSourceLabelRotation","getTargetLabelRotation","getTextOpacity","requestHighQuality","_r$data","lblTxrCache","slbTxrCache","tlbTxrCache","drawElementUnderlay","drawCachedElementPortion","drawElementOverlay","drawElements","drawCachedElements","drawCachedNodes","drawLayeredElements","lyrTxrCache","CRp$8","drawLabel","shouldDrawOverlay","shouldDrawOpacity","lineOpacity","effectiveLineOpacity","effectiveArrowOpacity","drawLine","strokeOpacity","eleStrokeStyle","drawEdgeTrianglePath","lineWidth","drawEdgePath","drawArrows","arrowOpacity","drawArrowheads","lineJoin","ghostOpacity","effectiveGhostOpacity","drawElementText","drawEdgeOverlayUnderlay","overlayOrUnderlay","usePaths","colorStrokeStyle","canvasCxt","pathCacheHit","lineDashPattern","lineDashOffset","pathCacheKey","pathCache","Path2D","setLineDash","stroke","fillStyle","strokeStyle","normal","triangleHead","drawArrowhead","arrowClearFill","edgeOpacity","gco","globalCompositeOperation","colorFillStyle","drawArrowShape","canvasContext","shapeImpl","arrowPathCache","cachedPath","matchEdgeWidth","CRp$7","img","ix","iy","iw","ih","nodeOpacity","styleObj","getIndexedStyle","repeat","paddingX2","nodeTW","nodeTH","shouldClip","imgOpacity","imgW","cachedW","imgH","cachedH","offsetWidth","offsetHeight","posXUnits","posXPfVal","offXUnits","offXPfVal","posYUnits","posYPfVal","offYUnits","offYPfVal","gAlpha","smoothingEnabled","isSmoothingSwitched","save","clip","safeDrawImage","pattern","createPattern","CRp$6","useEleOpacity","label","textAlign","textBaseline","_label","srcLabel","tgtLabel","applyRotation","drawText","getFontCache","fontCaches","setupTextStyle","labelStyle","labelSize","labelFamily","labelWeight","outlineOpacity","outlineColor","pdash","textAngle","orgTextX","orgTextY","textW","textH","backgroundOpacity","borderOpacity","textBorderWidth","backgroundPadding","bgX","bgY","bgW","bgH","textFill","textBackgroundColor","ctx","roundRect","fillRect","textStroke","textLineWidth","textBorderColor","textBorderStyle","strokeRect","whiteWidth","halfTextW","strokeText","fillText","CRp$5","eleOpacity","urlDefined","numImages","bgImgCrossOrigin","getCachedImage","backgroundTimestamp","darkness","borderWidth","bgOpacity","borderColor","setupShapeColor","bgOpy","eleFillStyle","setupBorderColor","bdrOpy","styleShape","shapePts","nodePathCache","drawShape","drawImages","prevBging","totalCompleted","drawInscribedImage","drawPie","redrawShape","pieOpacity","darken","drawBorder","effGhostOpacity","drawNodeOverlayUnderlay","cyStyle","pieSize","lastPercent","angleStart","angleEnd","CRp$4","contexts","backingStore","backingStorePixelRatio","webkitBackingStorePixelRatio","mozBackingStorePixelRatio","msBackingStorePixelRatio","oBackingStorePixelRatio","devicePixelRatio","paintCache","paintCaches","needToCreateCache","createGradientStyleFor","shapeStyleName","gradientStyle","createRadialGradient","_end","createLinearGradient","hasPositions","addColorStop","gradientFillStyle","backgroundFill","backgroundColor","gradientStrokeStyle","lineFill","lineColor","mbPxRatio","bufferCanvases","MOTIONBLUR_BUFFER_NODE","MOTIONBLUR_BUFFER_DRAG","canvasWidth","canvasHeight","canvasContainer","CANVAS_LAYERS","canvases","BUFFER_COUNT","textureMult","TEXTURE_BUFFER","forcedContext","forcedZoom","forcedPan","drawAllLayers","forcedPxRatio","drawOnlyNodeLayer","needDraw","canvasNeedsRedraw","textureDraw","inNodeDragGesture","inBoxSelection","motionBlurFadeEffect","prevPxRatio","motionBlurTimeout","mbFrames","clearingMotionBlur","textureDrawLastFrame","NODE","SELECT_BOX","effectiveZoom","effectivePan","prevVp","prevViewport","mbclear","setContextTransform","ePan","eZoom","bufferContexts","textureCache","mpan","DRAG","outsideBgColor","outsideBgOpacity","vpManip","hideEdges","needMbClear","useBuffer","drawDebugPoints","timeToRender","fps","cxtNode","txtNode","cxtDrag","txtDrag","drawMotionBlur","txt","needClear","pxr","motionBlurCleared","CRp$3","arcTo","barrelCurveConstants","sin0","cos0","ellipseStepSize","drawEllipsePath","ellipse","xPos","yPos","rw","rh","CRp$2","b64UriToB64","b64uri","output","mimeType","getB64Uri","toDataURL","quality","toBlob","blob","b64","bytes","atob","buff","ArrayBuffer","buffUint8","Uint8Array","Blob","b64ToBlob","createBuffer","buffer","bufferCanvasImage","ctrRect","full","specdMaxDims","maxWidth","maxHeight","maxScaleW","maxScaleH","buffCanvas","buffCxt","zsortedEles","CRp$1","drawPolygonPath","drawRoundPolygonPath","drawRoundRectanglePath","drawCutRectanglePath","drawBottomRoundRectanglePath","drawBarrelPath","CR","CanvasRenderer","CRp","tapHlOffAttr","tapHlOffStyle","containerStyle","overflow","styleMap","setAttribute","topCanvas","pathsEnabled","emptyBb","getCenterOffset","getElementBox","getLabelBox","getSourceLabelBox","getTargetLabelBox","isLabelVisibleAtScale","addTextMargin","getRsPt","oldBackgroundTimestamp","onUpdateEleCalcs","refineInLayers","pathsImpld","path2dEnabled","imageSmoothingEnabled","webkitImageSmoothingEnabled","mozImageSmoothingEnabled","msImageSmoothingEnabled","OffscreenCanvas","incExts","extensions","modules","setExtension","registrant","ext","overrideErr","layoutProto","optLayoutFns","fnName","regStop","getCy","emitterOpts","BaseRenderer","getExtension","bProto","RegistrantRenderer","rProto","Renderer","pName","pVal","_pName","setModule","moduleType","moduleName","getModule","Stylesheet","sheetfn","version","code","defineProperties","ELK","_ref$defaultLayoutOpt","defaultLayoutOptions","_ref$algorithms","algorithms","workerFactory","workerUrl","initialized","Worker","worker","postMessage","PromisedWorker","cmd","catch","_ref2","_ref2$layoutOptions","layoutOptions","_ref2$logging","logging","_ref2$measureExecutio","measureExecutionTime","terminate","_this2","resolvers","onmessage","answer","receive","convertGwtStyleError","javaException","cause","backingJsObject","$wnd","nb","xb","Fd","$g","yq","Sq","Es","Jw","Vw","VA","dA","MA","PA","PB","bx","vy","Nz","Yz","Ylb","Ymb","xmb","Fmb","Qmb","gcb","ccb","jcb","jtb","otb","qtb","_fb","bpb","kpb","ppb","Gpb","drb","dzb","fzb","fxb","Vxb","Ovb","byb","zyb","Zyb","_yb","hzb","jzb","lzb","nzb","rzb","zzb","Czb","Ezb","Gzb","Izb","Mzb","bBb","NBb","PBb","RBb","iCb","OCb","SCb","GDb","JDb","fEb","xEb","CEb","GEb","yFb","KGb","tIb","vIb","xIb","zIb","OIb","SIb","TJb","VJb","XJb","XKb","fKb","VKb","VLb","jLb","nLb","GLb","KLb","MLb","OLb","RLb","YLb","bMb","gMb","lMb","pMb","wMb","zMb","CMb","FMb","LMb","zNb","PNb","kOb","pOb","tOb","yOb","FOb","GPb","aQb","cQb","eQb","gQb","iQb","CQb","MQb","OQb","ASb","fTb","kTb","STb","fUb","DUb","VUb","YUb","_Ub","_Wb","QWb","XWb","jVb","DVb","VVb","$Vb","dXb","hXb","lXb","gYb","HYb","SYb","VYb","dZb","P$b","T$b","h1b","m1b","q1b","u1b","y1b","C1b","e2b","g2b","m2b","q2b","u2b","S2b","U2b","W2b","_2b","e3b","h3b","p3b","t3b","w3b","y3b","A3b","M3b","Q3b","U3b","Y3b","l4b","q4b","s4b","u4b","w4b","y4b","L4b","N4b","P4b","R4b","T4b","X4b","I5b","Q5b","T5b","Z5b","l6b","o6b","t6b","z6b","L6b","M6b","P6b","X6b","$6b","a7b","c7b","g7b","j7b","m7b","r7b","x7b","D7b","D9b","b9b","h9b","j9b","l9b","w9b","F9b","hac","jac","pac","uac","Iac","Kac","Sac","obc","rbc","vbc","Fbc","Jbc","Xbc","ccc","fcc","lcc","occ","tcc","ycc","Acc","Ccc","Ecc","Gcc","Zcc","_cc","bdc","fdc","jdc","pdc","sdc","ydc","Adc","Cdc","Edc","Idc","Ndc","Qdc","Sdc","Udc","Wdc","Ydc","aec","hec","jec","lec","nec","uec","wec","yec","Aec","Fec","Jec","Lec","Nec","Rec","Uec","Zec","Zfc","lfc","tfc","xfc","zfc","Ffc","Jfc","Nfc","Pfc","Vfc","_fc","fgc","jgc","lgc","Bgc","ehc","ghc","ihc","khc","mhc","ohc","qhc","yhc","Ahc","Ghc","Ihc","Khc","Mhc","Shc","Uhc","Whc","dic","dlc","blc","flc","hlc","jlc","Glc","Ilc","Klc","Mlc","Mjc","Qjc","Qlc","Ulc","Ylc","Lkc","Nkc","Pkc","Rkc","Xkc","_kc","gmc","kmc","zmc","Fmc","Wmc","$mc","anc","mnc","wnc","Hnc","Jnc","Lnc","Nnc","Pnc","Ync","eoc","Aoc","Coc","Eoc","Joc","Loc","Zoc","_oc","bpc","hpc","kpc","ppc","pFc","Ryc","QCc","PDc","xGc","HGc","JGc","NGc","GIc","iKc","mKc","wKc","yKc","AKc","EKc","KKc","OKc","QKc","SKc","UKc","YKc","aLc","fLc","hLc","nLc","pLc","tLc","vLc","zLc","BLc","DLc","FLc","sMc","JMc","hNc","RNc","ZNc","_Nc","bOc","dOc","fOc","hOc","hRc","jRc","KRc","NRc","NQc","LQc","_Qc","cPc","iPc","kPc","mPc","xPc","zPc","zSc","BSc","GSc","ISc","NSc","TSc","NTc","NVc","oVc","SVc","VVc","XVc","ZVc","bWc","bXc","CXc","FXc","IXc","MXc","UXc","bYc","fYc","oYc","qYc","uYc","pZc","G$c","h0c","N0c","k1c","I1c","Q1c","f2c","i2c","k2c","w2c","O2c","S2c","Z2c","v3c","x3c","R3c","U3c","e4c","w4c","x4c","z4c","B4c","D4c","F4c","H4c","J4c","L4c","N4c","P4c","R4c","T4c","V4c","X4c","Z4c","_4c","_7c","b5c","d5c","f5c","h5c","H5c","Hfd","Zfd","Zed","ged","Jed","Ned","Red","Ved","bbd","mdd","_fd","fgd","kgd","Mgd","Ahd","Ald","Tld","xkd","rmd","knd","Jod","JCd","Bpd","BFd","oFd","bqd","bvd","jvd","yud","Hxd","EBd","aDd","MGd","vHd","RHd","wNd","zNd","CNd","KNd","XNd","$Nd","HPd","lUd","XUd","DWd","GWd","JWd","MWd","PWd","SWd","VWd","YWd","_Wd","xYd","BYd","mZd","EZd","GZd","JZd","MZd","PZd","SZd","VZd","YZd","_Zd","c$d","f$d","i$d","l$d","o$d","r$d","u$d","x$d","A$d","D$d","G$d","J$d","M$d","P$d","S$d","V$d","Y$d","_$d","c_d","f_d","i_d","l_d","o_d","r_d","u_d","x_d","A_d","D_d","G_d","J_d","M_d","P_d","S_d","V_d","Y_d","h5d","U6d","U9d","_8d","fae","hae","kae","nae","qae","tae","wae","zae","Cae","Fae","Iae","Lae","Oae","Rae","Uae","Xae","$ae","ebe","hbe","kbe","nbe","qbe","tbe","wbe","zbe","Cbe","Fbe","Ibe","Lbe","Obe","Rbe","Ube","Xbe","$be","bce","ece","hce","kce","nce","qce","tce","wce","zce","Cce","Fce","Ice","Lce","Oce","Rce","Uce","Xce","ude","Vge","dhe","ol","wb","oPb","nPb","EPb","CPb","gFb","fFb","TRb","SRb","ySb","wSb","PSb","OSb","dTb","bTb","i4b","b4b","D2b","x2b","J6b","D6b","u9b","q9b","$9b","I9b","Umc","Imc","abc","Vac","ZCc","VCc","kCc","hCc","rCc","oCc","Tcc","Occ","xkc","gkc","xDc","rDc","iDc","cDc","kwc","jwc","tJc","jJc","dJc","aJc","Pyc","Nyc","VBc","SBc","CFc","yFc","CUc","wUc","lUc","fUc","sUc","pUc","IUc","GUc","IWc","HWc","_Wc","ZWc","fHc","dHc","f0c","d0c","B0c","A0c","L0c","J0c","LTc","JTc","sTc","rTc","KLc","ILc","wNc","tNc","PYc","OYc","nZc","lZc","q3c","p3c","Z7c","X7c","Z9c","Y9c","_ad","Zad","kdd","idd","$md","Smd","HGd","tGd","hLd","NKd","J6d","Uge","Mvb","uCb","Yb","cj","Dj","df","kf","ah","Ph","Ci","Fk","Ln","zp","Yp","qq","Dq","wr","Ir","sj","sw","xw","Cw","Qw","Rw","Xw","Xv","Sv","eu","Zx","xy","xB","HB","TB","fC","wB","MBb","ZGb","dRb","eRb","__b","njc","mjc","dFc","eFc","nOc","oOc","pOc","qOc","rOc","DVc","FVc","SZc","TZc","c$c","bJd","Cic","Dg","vib","eib","Pib","Vib","$ib","mcb","Mcb","Xcb","Ndb","_db","teb","Qeb","djb","Gjb","Njb","Bjb","lnb","Dnb","anb","Mob","Rob","iob","olb","qub","Tub","Vub","Xub","Zub","tpb","_pb","Wqb","nsb","Rxb","Txb","Xxb","bzb","tzb","vzb","xzb","Kzb","Ozb","iAb","kAb","mAb","BAb","hBb","jBb","nBb","TBb","XBb","QCb","WCb","_Cb","dEb","QGb","YGb","tKb","CLb","JMb","RNb","kQb","mQb","FQb","ETb","UTb","dUb","hUb","EZb","j$b","v$b","J0b","M0b","R0b","U0b","i2b","k2b","o2b","s2b","G2b","I2b","K2b","M2b","W3b","$3b","V4b","u5b","A7b","G7b","J7b","M7b","Mbc","Pbc","lac","nac","qcc","Gdc","$dc","cec","_ec","pfc","Bfc","Lfc","ygc","Dgc","shc","uhc","whc","Chc","Ehc","Ohc","Yhc","Tkc","Vkc","Olc","pnc","rnc","dpc","fpc","GCc","KCc","mDc","jEc","HEc","FEc","qoc","bFc","GFc","iGc","kGc","mGc","$Gc","hIc","lIc","pIc","tIc","xIc","zIc","CIc","LIc","CKc","IKc","MKc","$Kc","cLc","jLc","rLc","xLc","OMc","ZOc","ZRc","aSc","I$c","K$c","M$c","O$c","U$c","n1c","z1c","B1c","Q2c","U2c","z3c","med","Xed","_ed","Qfd","Bgd","$gd","lrd","urd","vrd","wrd","xrd","yrd","zrd","Ard","Brd","Crd","Ird","Krd","Lrd","Mrd","Nrd","Prd","Srd","Yrd","Zrd","_rd","asd","bsd","csd","dsd","msd","osd","qsd","ssd","Wsd","Lsd","thd","qtd","yBd","GBd","MBd","SBd","iCd","YMd","GNd","EPd","EQd","NTd","qOd","lVd","VVd","iYd","RYd","ZYd","z0d","O0d","s0d","W5d","cge","xfe","Tfd","jkb","Vjb","Rkb","Ckb","Lqb","Uhb","lEb","kEb","A_b","UQd","FQd","moc","yXb","Ji","vbb","DB","LB","ZB","lC","EC","wC","SB","j5b","g5b","PXc","ad","As","Zl","Ql","jq","sq","Fq","im","Sz","Rz","Qz","be","gz","Xy","xcb","pcb","tcb","Bdb","Vdb","Ydb","Geb","bgb","Apb","Jpb","utb","rQd","MPd","Bb","tTb","mt","fA","rcb","dCb","Tvb","Ekb","GLd","Uhd","d7d","D2d","Odb","Hcb","Pje","Qje","Tdb","Tqb","gyb","Wvb","KFb","PFb","FFb","pGb","MFb","ZQb","Gxb","Pwb","jUb","PTb","sDb","oDb","zDb","tDb","CWb","HXb","nYb","BYb","fLb","vYb","a2b","wZb","TCc","zJc","uMc","wdc","vKc","twb","oHb","$Gb","LXb","L_b","H_b","p0b","s0b","WMc","VMc","bNc","EPc","CPc","JPc","OPc","w1c","s1c","s7c","Psb","apd","ppd","lDd","YCd","NDd","mFd","vFd","GFd","KPd","OJd","hJd","aQd","SSd","FId","rUd","oUd","NYd","cZd","R8d","o9d","i9d","hee","Dd","yd","Hd","ph","Sh","Wc","oi","Ii","Zdd","QSc","D2c","QXc","e_c","d_c","$k","al","Lk","Kk","Mk","vb","hs","gs","Gp","xp","Lo","Ep","Tp","Wn","wx","un","ov","Mv","Br","Ov","Lw","hz","Yy","MB","eC","Ftb","Atb","zwb","LVb","BD","mlb","fad","gad","KVb","ZVb","KC","IP","Uhe","RVb","rXb","amb","OC","GC","bQ","MVb","NVb","lIb","vfd","nmd","Fyd","xMd","gc","ukd","Dyd","gmd","Dfd","Odc","Ajc","xjc","Ucd","zcd","yjc","Tcd","P6c","sjc","Acd","tjc","rjc","Wyc","Y1c","W1c","Ky","Edb","ED","Ksd","dzc","bzc","Xyc","td","Xr","tC","vC","yC","ocb","qcb","ucb","vcb","fGc","LFc","c0d","kzd","bhd","Rgd","dhd","Cdb","Wdb","Zdb","Feb","Heb","Ccb","Gdb","jfb","akb","Hwb","wVb","qVb","Blb","Glb","cgb","cqd","n8d","z2c","mde","pc","qc","Ki","Kz","Jz","jz","iz","KA","JA","OB","NB","jc","zh","Pi","Gb","GD","Qb","She","Bs","Td","Sd","scb","Oeb","Hfb","Ifb","Ufb","Vfb","Xfb","zob","Yob","Inb","Gob","Az","wrb","vrb","entries","Nhe","createObject","hke","getOwnPropertyNames","xrb","zrb","yrb","Mtb","Vtb","eCb","PC","rdb","_Db","$Db","HGb","IGb","JGb","dLb","zVb","KOb","SFc","M3c","L3c","N3c","O3c","P3c","Q3c","b4c","c4c","d4c","z5c","y5c","A5c","B5c","D5c","E5c","F5c","G5c","Vdd","T$c","Qqb","aDb","R$c","RGc","cEc","iHc","t7c","Qsb","aPb","_Ob","Ixd","zud","dCd","ZBd","fCd","p_b","q_b","d7c","aPc","NJd","DId","Oc","gdb","Vd","sn","Gv","hdb","fdb","Fhd","Ehd","mUd","yFd","xFd","yte","JD","ubb","uvd","h0d","ond","Hhd","Ghd","yod","nUd","Phb","Bod","Lnd","Qnd","Knd","Mnd","zod","pnd","cod","dod","Gnd","wtd","_Kd","Xnd","P3","Ile","Dnd","Hnd","Nnd","j5","Ond","PQd","Fnd","Ate","Bte","xId","Fi","End","Cte","Xse","_nd","qud","ZKd","Dte","C2","Zse","Vnd","_","Ete","G2","Fte","$je","Gte","D2","dte","Hte","Ite","z2","$se","E2","ete","Jte","Kte","F2","fte","B2","_se","Lte","Mte","Nte","Yse","A2","ate","Ote","Pte","Qte","Rte","Ste","CK","Wnd","Znd","Q3","SI","Rnd","Aod","Tnd","Shb","Cod","LFd","KFd","_ve","qZd","p8d","o8d","A9d","Ewe","Y9d","r8d","q8d","Z9d","rEd","Q9","S9","T9","U9","ZI","SD","wI","xI","BI","yK","FI","JI","MI","UI","eae","cae","fb","qb","D","F","G","J","I","L","T","Z","ab","db","eb","gb","hb","ib","jb","kb","lb","mb","ob","pb","aae","O","Qve","Jwe","bue","Kwe","Lwe","jxe","sbb","bJ","UD","Rwe","VD","WD","cJ","XD","Swe","axe","rbb","Vie","Bnd","Rve","nie","fue","Sve","xwe","Dwe","Fwe","Owe","vwe","Cwe","ywe","Khe","cwe","Eve","Gve","Pwe","Qwe","zwe","Hve","Twe","Ive","Uwe","Vwe","Wwe","Xwe","Jve","Ywe","Zwe","$we","_we","bxe","cxe","dxe","exe","Mhe","uwe","Kve","twe","fxe","gxe","hxe","ixe","wwe","Awe","Bwe","_9d","bae","Rhb","JFd","IFd","dae","mvd","lvd","n4c","Srb","enb","fnb","gnb","jnb","Cnb","Uqb","Mqb","tgb","lgb","BCb","Oje","qfb","Xhe","Icb","Rie","Ohe","QD","kgb","NaN","ugb","Mgb","heb","hhb","Mbb","Nbb","xbb","Yje","Sbb","Ibb","ogb","Ygb","bfb","ngb","Hxb","Qwb","_ub","ye","Sub","sd","Bfb","Cfb","Ffb","Lfb","WAb","Tzb","Wsb","pD","aIc","h2c","j4c","tg","cUd","Zod","uqb","N5c","K5c","L5c","I5c","M5c","J5c","c2c","cCb","WHb","VHb","XHb","jVc","ZUc","L2c","K$","tRc","h$","Q$c","J_","OCd","PCd","QCd","RCd","SCd","TCd","UCd","VCd","WCd","XCd","Rge","ege","Afb","aje","Xee","nde","rde","tvd","sue","Uvb","tue","ode","dge","Uee","Vee","Fhe","Ehe","dde","$ce","Iz","xz","zz","Ybb","Wbb","Yf","zf","$f","Hf","rk","ek","gk","pk","yk","Ak","Fj","dr","zr","So","qp","$q","$r","ne","Wo","bu","qu","qv","Px","mC","Lb","rf","Zv","$u","eB","Zfb","Yfb","Emb","Dmb","Vhb","hnb","Hc","inb","Ic","knb","Qc","Dob","dob","uc","Rqb","fob","jt","Mhb","Lp","Iie","sC","GB","FB","EB","Whb","yAb","Vzb","Gqb","Dqb","Csb","Osb","MAb","Nb","Myb","Gc","qDb","wDb","xDb","yDb","BFb","CFb","DFb","EFb","oGb","Ltb","Ktb","Otb","Utb","Ttb","Wtb","$xb","Zxb","$Yb","ZYb","cPb","bPb","dPb","EAb","DAb","a$b","_Zb","FDb","EDb","xUb","wUb","w2b","iVb","hVb","nVb","mVb","OVb","LWb","KWb","a4b","p9b","qgc","pgc","Hmc","FUc","j3c","i_c","h_c","k_c","s_c","r_c","t_c","R0c","Q0c","T0c","Vyc","Uyc","DCc","vCc","Une","r4c","Xrb","s4c","B3c","kKb","Xe","W8c","We","qJb","wJb","Jkb","pJb","uJb","sJb","UHb","Mpb","bIb","Npb","NC","CHb","Rcd","Scd","rJb","lKb","jKb","E3b","tN","ile","Ikb","D3b","N3b","F1","xqb","_Bb","G3b","rqb","K3b","F3b","yNb","wtc","Csc","J6c","H6c","L3b","J3b","e9b","vNb","tyc","uyc","ryc","I6c","d9b","rcd","ncd","Hsc","pcd","f9b","g3c","DQd","fB","getFullYear","nje","getMonth","getDate","nB","oje","uA","ofb","wA","dB","ZA","getHours","setMonth","YA","setHours","$A","setMinutes","_A","setSeconds","bB","cB","wbb","Abb","Cbb","_ie","Gbb","getDay","getTimezoneOffset","mB","pA","Pgd","Ogd","AFd","zFd","tFd","sFd","EFd","DFd","nRd","mRd","u4d","LRd","KRd","y4d","g5d","f5d","Q6d","P6d","pEd","oEd","tZd","rZd","Xge","Wge","jw","Lv","cd","sib","Lpb","tqb","Dbb","ybb","Crb","Vrb","Nvb","Rub","Kub","wcb","Zy","mxb","Gyb","zx","yx","zlb","Dlb","Alb","Flb","aCb","pjb","kqb","VBb","BEb","sBb","yBb","EBb","KBb","tMb","oOb","SOb","SMb","NEb","VEb","sFb","hHb","OHb","FIb","wLb","YRb","zTb","rUb","oWb","SXb","k0b","z5b","T8b","ibc","Cec","rfc","Rfc","Tfc","bgc","ngc","Qhc","$hc","Z0b","Dfc","dgc","Bmc","cWb","I$b","Unc","Oic","Bjc","Yjc","Gkc","Bpc","Jpc","Tpc","cqc","oqc","yqc","Hqc","Uqc","mrc","zrc","Prc","Yrc","fsc","nsc","nzc","zzc","Kzc","Xzc","Dtc","lAc","uAc","CAc","LAc","UAc","aBc","uBc","DBc","MBc","sGc","VIc","EIc","qKc","GKc","lLc","mMc","fMc","ZLc","ZMc","IOc","GQc","PQc","RQc","ARc","rSc","TTc","_Tc","RUc","uVc","hWc","rWc","kXc","uXc","AYc","l$c","Z$c","D_c","O_c","c1c","D3c","O5c","a6c","m2c","W2c","f7c","G7c","j8c","iad","rad","Bad","Nad","ibd","tbd","Ibd","Ubd","gcd","scd","Ycd","udd","Jdd","Eed","bfd","dfd","ffd","Kfd","Mfd","Ofd","vgd","qgd","jrd","krd","mrd","nrd","qrd","rrd","srd","trd","Drd","Frd","Hrd","Jrd","Ord","oo","Yqd","iqd","Ohb","jqd","hqd","Wpd","Rrd","Qrd","meb","Hhe","Dhe","cC","ikd","Q8c","hkd","reb","Upd","Mld","gqd","Xte","Fe","Xqd","BIc","FHc","gIc","Arb","CMc","wMc","NNc","FNc","eCc","ZBc","aCc","Dsd","Urd","Wrd","kGd","nGd","bUd","zVd","C1d","MLd","Wud","f7d","_zd","Y1d","c8d","$Id","_Id","hCd","qAd","e7d","R2d","Wd","dd","PD","KD","LD","Lhe","ND","Em","Xb","Kq","Ob","QNc","Pb","hr","Kc","Bbb","Kbb","Jdb","pfb","cg","ag","oVb","DD","Kb","pVb","RD","CCb","Dfb","Efb","Nfb","Pfb","Qfb","Mfb","Esb","Gsb","Fsb","setTime","fvb","bvb","jvb","nvb","Nqb","Ld","wmb","tCb","X6c","f3c","_Pb","QPb","Xod","jtd","ltd","VPb","yJb","xJb","as","Y8b","X8b","W8b","Cv","sl","vl","Nsd","Msd","$zd","Cyd","nNd","s4d","p4d","w4d","qRd","lcb","ww","hfb","Ny","kB","SC","TC","Hdb","NIb","beb","Fbb","G1b","lrb","Frb","swb","E2c","d3c","Nlb","Klb","zsb","$rb","I_b","B_b","g7c","aad","bad","dad","_9c","Jzc","Fzc","Ezc","fcd","bcd","ccd","oid","Lg","Mg","Gfd","Kkd","k3c","y2d","vkd","wkd","_kd","cld","ald","bld","dld","eld","hmd","imd","omd","pmd","iKd","$Jd","_Jd","_ud","Xg","Vg","Hgb","Zgb","rxb","wxb","MGb","Hkb","xf","xtb","tb","Vq","lr","Osd","q0b","HOb","LOb","IOb","lzd","mBc","Lge","wfe","fNc","eNc","Rpb","i0d","GA","FA","Iy","UVd","TVd","Gg","Bp","Okb","Mlb","llb","Eqb","Ntb","De","Deb","Ctb","hDb","dOb","n_b","txb","bUb","ZTb","zP","jBc","hBc","E6c","F6c","R6c","CQd","UA","RA","SA","TA","gB","vA","fromCharCode","hA","AOc","BOc","COc","RRd","a7d","Pp","mmb","Py","VI","JLd","Uxd","b7d","Oj","T6d","hi","F2d","Tje","R6d","Fc","Hwe","S6d","Tg","rl","ak","Gtd","ytd","t2d","Lq","Rb","rr","Sqb","Bc","pr","yfb","zfb","AD","Yrb","jsb","isb","RJc","V_b","OZb","Su","sCb","Bib","uib","SJc","Eub","kke","xHb","REc","aEc","tEc","OJc","Tbb","HAb","JAb","YAb","aKc","Y6c","mud","Ozd","Ajd","Wzd","otd","ytb","hue","Rld","y5d","atd","ul","KI","Rr","Qr","ntd","htd","gtd","ztb","Ivb","Hvb","pMd","BMd","K4d","N4d","X4d","_4d","C4d","k2d","G4d","I4d","c5d","aj","Jj","Rj","she","xl","Qo","Eb","Fb","Cb","ycb","Db","ur","Gr","Hs","Eg","Uk","Ub","ot","I6d","H6d","Bcb","zcb","Acb","Jfb","Wfb","Xnb","Zob","Ry","Qv","au","xu","kfb","lastIndexOf","ifb","xfb","fcb","Etb","Fxb","Jwb","FCb","$H","ECb","pDb","vDb","nGb","Btb","Asb","_rb","GUb","HUb","cxb","CKb","BKb","tle","NFb","OFb","Lkb","zXb","a1b","iBc","gBc","i3c","B2c","hhd","Sb","n5b","jm","Vp","Oyd","$yd","bzd","sgc","Pu","Xj","Jie","Skb","Vz","gfb","wfb","Pkb","ZBb","Zr","Hsb","Isb","Cmd","Gh","Wwb","tib","Ptb","Xtb","Trb","ksb","mkb","lCb","yCb","lsb","Cg","qg","wNb","St","Zc","O6c","Z6c","b7c","a7c","V6c","Dic","xed","u7c","n7c","AXb","xXb","mf","GRd","dSd","hSd","fSd","sId","dId","zXd","nXd","BXd","DXd","FXd","PXd","RXd","XXd","w1d","V1d","p1d","a3d","xid","ypb","$modCount","MUc","LUc","LCd","KCd","KVc","Hp","FUd","C9d","ade","TD","$ie","_ce","cde","G9d","hde","gde","jde","pe","qe","me","oe","ydb","vdb","Mf","Sf","Hg","bAb","vAb","sNb","pNb","dg","Yg","g4c","Wrb","i4c","wic","B6c","eLc","FJc","$Jb","ZJb","pqb","tdd","sdd","fOb","Axb","Ywb","bOb","gOb","qyb","lyb","_Hb","lle","Kld","_hd","bmd","kpd","Cvd","Atd","Avd","Hi","bRd","c7d","C2d","DAd","uVd","sYd","zyd","YOd","fTd","Xp","cq","LA","XMb","Opb","Sfb","ijb","trb","Aib","Vc","Urb","zc","HD","gRb","iTb","_Qb","sec","NIc","LDc","hSc","HRc","aHb","Zwb","lxb","hxb","J_b","Tod","c7c","PYd","gve","mue","gUd","Q4d","U4d","n5d","i5d","p5d","v5d","t5d","A5d","D5d","d6d","Y5d","tk","j6d","Aj","Nh","Kh","h6d","Ih","Fdb","dfb","Dxb","Cwb","Exb","Dwb","HBb","lfb","S_b","ecd","Zbd","_bd","$bd","zAd","Btd","ujb","Awb","czd","Pyd","fBb","rie","Avb","Bvb","bId","mk","Q2d","Rk","P2d","k3d","$j","H2d","M2d","Kj","zj","Ei","j3d","tn","Hv","Kcb","ke","Ldb","dIc","Nrb","$sb","Tkb","bCb","Pc","Xwb","Kwb","iyb","JCb","GCb","ICb","ntb","ltb","mtb","jzd","sGd","$Gd","ZGd","jmb","Mb","r0b","K_b","mKb","BZb","TNb","uOb","S3b","Z6b","n9b","x$b","LGb","iLb","B6b","C6b","Hgc","Fgc","Ggc","bPc","nYc","L1c","T1c","zCd","IVd","kWd","cWd","HXd","oXd","TXd","ZXd","JXd","LXd","NXd","VXd","_Xd","Nq","Wq","Nu","fr","Hx","Jq","Ru","YEc","WA","Yc","ed","pzb","qvb","fAb","$Bb","HVb","v_b","h5b","k5b","Lbb","zbb","Eje","Fje","iD","Rbb","DHc","EHc","DRb","vSb","aBb","C6c","Lsb","Nsb","Msb","rCb","mCb","dWb","Dnc","Cnc","_Gd","PNd","UNd","y1d","T0d","z1d","gFd","OEd","CEd","DEd","dFd","jFd","Sdd","Ydd","$6c","W6c","G6c","Dsb","Aq","Wm","Ed","vvb","Eeb","iYb","hYb","_Gb","YHb","ZHb","zfe","ige","X6d","W6d","ex","oeb","neb","d$c","e$c","B0b","D0b","Ojc","lHd","R7d","odb","ldb","Evd","Ti","e3c","Vte","Qpd","Spd","Yte","dmd","Tpd","kqd","emd","Kqd","Zj","rAb","pAb","oAb","Ie","IC","JC","Ucb","Tcb","Ceb","Beb","Yeb","Xeb","ddb","cdb","yI","IVb","my","ir","vc","fqb","Vqb","Bsb","Rfb","$lb","Bzb","Aeb","Qyb","vic","uNb","kmb","Xi","q$c","sEc","bVc","hVc","Voc","Toc","qed","pFd","KYd","jgd","MOb","Nr","ejc","djc","$ic","ju","bt","Bfe","rge","SEd","Qpb","oCb","Dkb","wCb","qqb","nmb","Oz","Wyb","Ayb","xL","Kie","Nyb","vqb","wqb","Aub","Cub","ike","jke","MC","$Nb","ZNb","BLb","SVb","oEb","uEb","$Jc","Qgd","s9c","Mr","Lr","mHb","nHb","c3c","Dod","JHd","JMd","UTd","eXd","nWd","lXd","MD","OD","ID","u1d","X1d","Hh","h1d","lse","AAd","jGd","fGd","x6","W1d","Qh","Ty","Sr","Yge","Id","Xm","Jd","Rl","fe","Dc","Ec","Ffe","Hge","Ubb","qD","a4d","kD","Obb","lD","Pbb","mD","Dcb","Ecb","Ddb","Kdb","Ad","QAb","TAb","RAb","g1b","z0b","l1b","Rnc","Zsc","Xsc","ltc","xc","Snc","koc","poc","Iub","_vb","n6c","i6c","m6c","tcd","D6c","oOd","kh","oie","gub","ipb","fpb","nHc","lHc","Pzd","Xzd","jUd","nSd","oSd","DSd","ESd","x0d","Lj","Dm","Cfe","Dge","Efe","nfb","Qhb","irb","Rrb","Vgb","amc","xJc","fkb","bkb","gkb","ckb","cv","ylb","Clb","Lyb","zjb","vCb","Goc","K2c","ese","Nkb","A2c","C2c","i2d","mfb","bKd","Hj","d1d","nlb","Kkb","zpb","Plb","oke","avb","Olb","Jhe","ueb","HMb","IMb","iq","Lub","Rzb","uB","tB","vB","ffb","Iwb","Vsb","d3d","gl","hkc","NAb","kkc","jkc","lOc","mOc","it","gKc","aRb","tPc","DPc","A6d","aLd","TKd","oRd","ote","w2d","t3d","lud","pSd","Qk","h3d","v2d","nk","uId","Dtd","Wh","mdb","zdb","jdb","Vi","ci","Uc","qo","Ix","by","qj","Dfe","zge","qCb","HC","__elementTypeId$","FC","bv","Kfb","ovb","ze","dVb","H1b","pRb","HA","gA","lA","nA","mA","sA","v4c","hm","ux","xx","lmb","NFd","MFd","sZd","b5","a5","c5","d5","f5","h5","g5","i5","k5","l5","m5","n5","o5","p5","q5","t5","v5","u5","$J","O4","T4","U4","O9","E9","AI","DK","v8","u8","X4","V4","CZd","AZd","Pnd","yZd","qve","nve","$nd","WKd","dwe","ewe","fwe","gwe","hwe","rve","vZd","iwe","jwe","kwe","kse","lwe","sve","bte","cte","Cnd","uve","mwe","vve","wve","pve","ove","tve","xve","zZd","BZd","PFd","xZd","bwe","wZd","YFd","QQd","DZd","pTb","NHc","MHc","THc","gCb","Bvd","dYd","f0d","mxd","ct","usb","$c","U6c","Hb","Q_b","LHd","LQd","Qzb","He","Qy","Szb","Uzb","Kpb","Ae","WHc","AYd","$1d","e2d","O6d","L6d","X0d","pdb","Qzd","Yzd","Ms","$o","jrb","umb","fod","vfb","tmb","ve","hpb","Vm","Um","zie","hob","Cc","eob","gob","ec","keb","wtb","kcb","OJb","MJb","QJb","vtb","xkb","Ynd","LPd","Yod","a2d","Gwe","g2d","a1d","b2d","h2d","b1d","Ah","Fg","Xx","Zeb","Zie","Mub","nqd","ctd","Xpd","Aqd","qBb","IBb","OAb","wBb","PAb","CBb","l$b","QIc","rKc","WKc","gPc","Blc","Ggd","pec","Jmc","Bkc","Rmc","Qmc","Omc","Mmc","Pmc","Wwc","_Ac","ZAc","Fqb","wjc","$lc","bmc","cmc","dmc","dle","knc","fnc","uOc","gnc","jnc","inc","uPc","jtc","dnc","ojc","cnc","lnc","enc","c_b","lyc","nyc","xyc","bne","Vje","vmc","smc","tmc","rmc","pmc","omc","Uf","wmc","ymc","xmc","Pid","QEd","KPb","NQd","RQd","JZb","$sc","O2b","P2b","Wod","pQb","prd","ord","JVd","ZVd","cXd","mWd","jXd","Ng","YBd","lBb","Sie","FD","p4b","Gkb","PPb","OPb","NPb","gpb","ODb","LDb","NDb","MDb","nd","POc","vPc","ooc","noc","FSd","U5d","QRc","Vod","Dx","Ex","rz","hashCode","Brb","Oq","mr","vmb","VDb","Ne","Gfb","fVb","pu","hOb","FYb","UZb","K6c","Ay","eod","bod","Gz","$Kd","wjd","Jsd","stackTraceLimit","Xz","Wy","gm","Eob","Fob","grb","hrb","O7d","Cxd","nxd","vyd","$Ec","OQ","kne","KVd","R5d","cIb","THb","kBc","nBc","lid","jh","Sg","hgd","$e","pNd","MKd","Dmd","eue","zUd","vud","qNd","bQc","$Pc","_Pc","FQc","DQc","jle","EQc","kle","YLc","XLc","WLc","aIb","$Cb","ahd","Gf","NGb","UGb","tlb","pCb","vlb","Ksb","Cx","QUb","zUb","Lwb","NJb","zid","sh","hvd","evd","dvd","cvd","g_c","VZc","b$c","setDate","no","Od","Fx","aC","rC","qC","xC","bC","mpd","fmd","Ind","Fod","Ve","Uud","t_b","A4b","BGc","SX","RHc","SHc","BHc","eMc","cMc","vle","dMc","STc","QTc","Yqe","RTc","hK","MHd","ZJd","WId","le","Drb","FLd","Tfb","bq","Wj","uu","vu","RZb","QZb","$_b","F0b","jDb","qXb","aOb","Ake","Bke","Ppb","qs","yG","RBc","qUb","pUb","S8b","J8b","YBc","nCc","_Ic","h8b","EJc","HLc","vMc","eUc","yRc","xRc","qSc","kSc","DOc","W3c","e7c","D1c","E1c","cJd","XMd","lKd","T2d","YId","XOd","eTd","yCc","Aw","UAb","VAb","nr","mie","Jib","xCb","Mkb","Rje","kkb","geb","A0b","l7c","o3d","b3d","wud","p3d","tMc","av","Z1d","S0d","d2d","l1d","U0d","_1d","f2d","q1d","r1d","i1d","e1d","j1d","s1d","m1d","Y0d","hEb","dD","jD","Vbb","rD","Mu","bjc","ajc","iSc","WRc","oRb","qz","dkd","Tdd","cIc","kxd","lxd","$fe","sSd","rSd","uSd","tSd","wSd","vSd","ySd","xSd","ASd","zSd","CSd","BSd","HSd","GSd","JSd","ISd","x$c","b2c","j2d","O1d","R0d","h9d","u3d","f3d","Q8d","I8d","$Tc","ZTc","YTc","Zb","Mc","Ofb","eLd","fLd","Ysb","Jgb","wwb","$i","k_b","Qkb","AQ","jne","l_b","kDb","Ke","iDb","pXb","Nwb","Owb","YXc","gVc","ZXc","o4c","p4c","i6d","s6d","tsb","Ij","y6d","xh","dl","z6d","H2c","h3c","tgc","Zw","Jc","Bh","hc","The","Vhe","Ib","Tb","Jb","eVb","Hke","xpb","$pb","dib","msb","eD","wD","vD","Hje","Ije","aD","hD","oD","tAb","Yzb","orb","Qu","Mie","Oy","m_b","aR","lne","SZb","a5b","e5b","ayc","mwc","F7c","A7c","E7c","G0b","$4b","Wxc","Jsb","Xsb","jxc","j0b","e0b","b5b","i5b","wxc","_4b","d5b","D7c","C7c","Z4b","c5b","f5b","Ypd","Zpd","$pd","_pd","aqd","Ez","sz","yz","Pz","Lz","Cz","Bz","Mz","Hz","Fz","C6d","Wg","Zh","jk","uEc","msc","ksc","gle","lsc","bDc","aDc","z_c","y_c","O_","q_c","p_c","N_","Z0c","Y0c","W_","hPb","gPb","GO","Smc","Tmc","rmb","Qq","ugc","Ko","Xjb","_jb","Wjb","rg","goc","DZc","Nj","Sj","yh","Uqd","ro","dtd","ri","$fb","qEd","wj","sr","nx","xd","E2d","q3d","xud","r3d","JJc","h0b","Nd","Rqd","Bfd","kt","wu","Yj","zb","ite","kVd","Mj","Ok","TOc","UOc","SOc","NOc","$Oc","YOc","OOc","sOc","tOc","HOc","FOc","pPc","XOc","mic","lic","kic","setFullYear","ee","VKd","Yjb","AQb","lge","lSd","mSd","LVd","nYd","Irb","mRb","uFd","FFd","Ucc","Dtb","Itb","Gx","GAb","SAb","Ee","Hub","zub","nke","REb","QEb","MEb","aN","LEb","KEb","ZEb","YEb","UEb","bN","SEb","TEb","aSb","_Rb","XRb","gP","VRb","WRb","D5b","C5b","y5b","ZR","x5b","w5b","Cqc","Bqc","xqc","JW","vqc","wqc","erc","drc","_qc","MW","$qc","Zqc","eBc","dBc","fX","$Ac","GAc","FAc","BAc","cX","zAc","AAc","Npc","Mpc","Ipc","FW","Gpc","Hpc","rsc","qsc","SW","MOc","LOc","DZ","GOc","ZIc","YIc","UIc","mY","TIc","SIc","bMc","aMc","fZ","jMc","iMc","gZ","KQc","JQc","YZ","dUc","cUc","F$","XUc","WUc","PUc","NUc","OUc","XTc","WTc","E$","lWc","kWc","fWc","X$","dWc","eWc","i1c","h1c","a1c","X_","_0c","$0c","H_c","G_c","C_c","P_","B_c","A_c","zHc","Cfd","fRb","FAb","pv","ko","PYb","MYb","NYb","jYb","wyb","oyb","jyb","kyb","nyb","myb","C3c","zUc","Lzd","Uzd","vtd","yUd","RC","Tc","Iv","$b","tjb","Qgb","ihb","lhb","Rgb","Yac","kZb","tNb","hid","uHb","rHb","vHb","sHb","oxd","qSd","CWd","AWd","_6d","qi","bi","oud","Ou","Iu","km","smb","cfb","Fpb","uwb","zhb","Qbb","Ahb","Thb","krb","Erb","b1b","kRb","Gjc","rd","qd","BQc","SRc","g6c","f6c","Uac","gbc","fbc","PHc","XHc","QHc","Psc","yc","VHc","AHc","gtc","KAb","xHc","OHc","JJd","pvb","QYd","UDc","Mi","Ugb","o5b","lHb","kHb","gHb","pN","dHb","eHb","fHb","SHb","RHb","NHb","sN","LHb","KHb","MHb","JIb","IIb","EIb","zN","DIb","CIb","BIb","Kyb","Jyb","Fyb","Cyb","Dyb","Eyb","DTb","CTb","yTb","oP","wTb","vTb","xTb","WXb","VXb","RXb","hQ","QXb","PXb","OXb","Zpc","Ypc","Rpc","GW","Ppc","Opc","Qpc","gqc","fqc","bqc","HW","$pc","aqc","_pc","Lqc","Kqc","Gqc","KW","Eqc","Dqc","Fqc","Kkc","Jkc","Fkc","vV","Ekc","Dkc","Ckc","jsc","isc","esc","RW","csc","dsc","bsc","asc","_rc","Xrc","QW","Vrc","Wrc","Urc","Dzc","Czc","xzc","ZW","uzc","vzc","wzc","YAc","XAc","TAc","eX","QAc","RAc","SAc","yAc","xAc","tAc","bX","rAc","qAc","sAc","PAc","OAc","KAc","JAc","HAc","IAc","QBc","PBc","LBc","jX","JBc","KBc","IBc","yBc","xBc","tBc","hX","qBc","rBc","sBc","HBc","GBc","CBc","iX","BBc","zBc","ABc","wGc","vGc","rGc","PX","oGc","pGc","qGc","zVc","yVc","tVc","O$","sVc","qVc","rVc","vWc","uWc","pWc","Y$","mWc","nWc","oWc","EYc","DYc","zYc","q_","xYc","yYc","wYc","yXc","xXc","sXc","b_","qXc","rXc","pXc","b_c","a_c","Y$c","V$c","W$c","X$c","mbd","lbd","hbd","z1","fbd","ebd","gbd","vad","uad","qad","u1","nad","oad","Thd","Qhd","S2","FAd","fi","uhb","vhb","LC","KNb","ACb","xke","zke","zCb","exb","dL","VRc","Ut","zGc","S6c","gCc","lUb","n8b","mib","kib","kSd","XKd","Yh","$Hb","Lfe","Kfe","bfe","Nfe","vXb","uXb","tXb","sXb","KZc","MZc","Jjc","Pjc","Byb","rj","v1d","gid","oUc","b3c","vRc","pSc","lSc","dBb","vr","m3c","o3c","w9c","b9c","n3c","yHc","nud","pOd","Itd","KLd","Ek","Bwb","ulb","Llb","bid","Pj","nDb","ixb","jxb","kxb","zxb","yxb","iL","uWb","tWb","lWb","SP","hWb","kWb","iWb","jWb","ALb","zLb","vLb","PN","uLb","rLb","sLb","tLb","WMb","VMb","RMb","jO","OMb","NMb","PMb","QMb","WOb","VOb","ROb","CO","OOb","NOb","POb","QOb","GRc","FRc","uRc","wRc","mbc","lbc","VS","dbc","ebc","cbc","oXc","nXc","iXc","a_","hXc","fXc","gXc","eXc","Fjc","Ejc","mV","zjc","Pzc","Ozc","Izc","$W","Gzc","Hzc","ugd","tgd","pgd","k2","mgd","ngd","lgd","ogd","xbd","wbd","rbd","A1","qbd","nbd","obd","pbd","Fad","Ead","Aad","zad","xad","wad","yad","Ied","Hed","Ded","O1","Ced","zed","Bed","Aed","ydd","xdd","I1","rdd","qdd","pdd","x9d","w9d","z9d","y9d","ane","Zrb","Jbb","Ygc","Tnc","zoc","Rwd","Ai","rFd","$d","dDb","ghd","t9c","MCd","Wxd","NCd","Oh","Rh","QSd","mle","sD","tD","Gje","uD","WDc","VDc","$Dc","TDc","rfb","Aid","bk","Pg","xjd","CD","yjd","iid","bLd","fid","vgc","omb","agd","Ac","INb","HNb","FNb","GNb","JNb","uud","gi","Ftd","Xc","Cj","Bve","LAb","__elementTypeCategory$","dub","fub","sgb","vgb","ghb","vge","EA","Scb","es","DCb","nCb","S9b","Ogb","Ggb","Dhb","Ehb","AWb","xWb","yWb","vWb","wWb","zWb","uqc","tqc","mqc","IW","iqc","hqc","kqc","lqc","jqc","bAc","aAc","Vzc","_W","Uzc","Rzc","Szc","Qzc","Tzc","bkc","akc","Xjc","uV","Tjc","Vjc","Wjc","Ujc","Sjc","Htc","Gtc","Ctc","TW","Btc","xtc","ytc","ztc","Atc","S_c","R_c","N_c","Q_","I_c","J_c","M_c","K_c","L_c","S5c","R5c","e1","p$c","o$c","k$c","y_","g$c","f$c","i$c","h$c","j$c","vUb","uUb","mUb","nUb","oUb","mad","lad","ead","cad","Ybd","Xbd","Tbd","C1","Qbd","Sbd","Obd","Pbd","Rbd","cdd","bdd","_1c","hoc","usc","ioc","Jub","Hie","dC","Emc","ple","sfb","toLocaleLowerCase","idb","VWb","mDb","Zsb","xac","Ssc","t9b","Zwc","iZb","Rc","Bid","YKd","lte","lo","vo","Eie","Fie","kcd","jcd","dcd","D1","acd","tHb","wed","aid","cKd","gZd","Qmd","Umd","li","Xcd","ZEc","q7c","lib","dcb","TLc","Qwd","OQd","ADb","My","Qie","Kv","uo","o0b","n0b","NQ","g0b","i0b","f0b","d0b","n8c","m8c","i8c","h8c","g8c","f8c","d8c","c8c","e8c","K7c","J7c","o1","z7c","B7c","Fpc","Epc","Apc","EW","wpc","ypc","vpc","xpc","zpc","upc","Drc","Crc","yrc","OW","wrc","trc","xrc","vrc","urc","rrc","qrc","prc","lrc","NW","irc","hrc","krc","grc","jrc","frc","tzc","szc","lzc","YW","jzc","hzc","fzc","gzc","kzc","izc","Yqc","Xqc","Sqc","LW","Nqc","Mqc","Pqc","Oqc","Rqc","Qqc","wSc","vSc","t$","nSc","mSc","oSc","ycd","xcd","E1","ocd","mcd","lcd","qcd","Rad","Qad","Mad","Kad","Iad","Lad","Gad","Jad","Had","qQd","AId","izd","xj","he","ftd","God","Hod","LLd","Bk","Xdd","ndb","rDb","Uz","Xie","_bb","tdb","RPb","s$c","wkb","hkb","ikb","ekb","pgb","fhb","f4c","l4c","m4c","C0","ole","Bne","Cne","ztd","JAd","LAd","yId","CId","BId","Bt","Nc","ieb","CUb","XZb","c6d","zte","qeb","peb","uCc","Z7b","w8b","v8b","UCc","qDc","xFc","z8b","p8b","y8b","Tne","RLc","Lkd","kmd","lmd","zpd","UUd","VUd","Apd","pQd","PHd","jKd","Rdd","g3d","_o","Fv","Kp","T6c","_Mb","DUd","jmd","$jb","eub","bub","M5b","Odd","Vxc","O5b","N5b","L5b","R_b","K5b","U_b","Fsc","P5b","Qdd","GOb","jfc","Swc","XGc","ku","UHc","nMc","$B","pRd","Jk","r$c","HSb","FSb","Ime","GSb","Jme","ESb","Kme","DSb","Lme","H9b","$Xc","Tqe","Sqe","cme","$Fc","oHc","ZFc","yb","ktb","Bx","Bnc","gKd","Poc","Soc","p7c","Zzb","$zb","uAb","zZb","AZb","aod","MJd","tJb","IJb","KKd","Mve","LKd","Nve","w0b","u0b","v0b","t0b","x0b","y0b","nfd","mfd","sfd","Udd","Wdd","Pdd","kUc","jUc","FTc","iUc","gUc","mTc","gTc","hUc","zic","CHc","tic","xic","Aud","D9","Fcb","wd","WZc","hKd","xk","KFc","cHc","xle","pAc","oAc","kAc","iAc","dAc","gAc","eAc","fAc","cAc","hAc","jAc","Flc","Elc","Alc","KV","tlc","wlc","slc","zlc","vlc","ulc","ylc","xlc","e6c","d6c","_5c","f1","$5c","T5c","X5c","Z5c","U5c","V5c","W5c","Y5c","Hsd","Gsd","Csd","O3","Bsd","ysd","zsd","xsd","Asd","vsd","usd","wsd","XNb","VNb","WNb","Xyb","hyb","dyb","uyb","eyb","T3c","h4c","jkd","F9c","M9b","_$b","stb","cId","HAd","IAd","Wb","crb","n3b","mxc","Bsc","o3b","m3b","l3b","tAd","sAd","aKb","Idd","Ddd","_Jb","phb","ohb","nhb","Hhb","xhb","dhb","Vb","Kje","ZC","fD","Yyb","Jg","ui","f_b","Si","pQc","zjd","Hkd","gNc","vQc","MRd","Ox","Ewb","xwb","xRb","eSb","uSb","qSb","Nbd","Mbd","Hbd","B1","zbd","ybd","Bbd","Gbd","Fbd","Ebd","Cbd","Dbd","Abd","wFb","vFb","rFb","dN","qFb","lFb","mFb","kFb","oFb","pFb","nFb","jFb","iFb","pTc","Zqe","qTc","nTc","$qe","oTc","TQc","PEc","QEc","urb","bZb","o7c","M_b","lBc","Gkd","Txd","ckd","Zqd","drd","lqd","KJd","Be","nD","bdb","__java$exception","lz","btd","gue","Zjb","vkb","yac","mEb","CDb","xyb","fyb","J2c","Etd","ki","Wi","p6c","A6c","Gne","Hne","V1c","URc","dVc","q1c","p1c","QLc","ZEd","pmb","etd","fkd","Cid","jEb","sbd","Zac","Trc","Src","Orc","PW","Frc","Hrc","Irc","Jrc","Krc","Lrc","Nrc","Erc","Grc","Mrc","Ndd","Mdd","J1","Bdd","Add","Edd","Fdd","Hdd","Gdd","Cdd","zdd","vUc","uC","_Ed","Jy","I4b","Uy","Tz","ce","xtd","Vh","xNb","TQb","mSb","VQb","_sd","Pld","lRb","UQb","Mic","Nic","nNb","YMb","aNb","rNd","hj","$C","EDc","Gwb","xVb","sVb","XDb","RDb","AUd","w6c","crd","grd","hrd","Dqd","qmb","WC","YC","QC","jRb","xld","Ykd","qic","nic","w7c","rVb","LCb","PH","j_c","Mre","S0c","ekd","yid","XRc","PZc","nib","Pr","bRc","Ife","dfe","Afe","ue","OYb","Esc","syb","qL","tke","Zmd","icb","Rmd","Qe","q4c","aub","Ss","BG","Gie","whb","nzd","$3","hve","JEd","NEd","oNb","Tt","Nhb","re","Hic","oic","pic","Gic","ai","b4d","c4d","ql","Xdb","jPb","Tle","kPb","iPb","Ule","lPb","Vle","mPb","Wle","Mcc","Ncc","Lcc","Kcc","Icc","Xad","Wad","f9c","Yad","C9c","Sad","s8c","Tad","Y8c","Vad","_8c","Uad","$8c","$Pd","nQd","Ly","Ebb","rwb","yke","j5c","Fkb","Hlb","eDc","HZb","w$c","_Zc","aRc","Rqe","pHb","Re","qHb","Se","Tgb","Bgb","Dgb","Sy","F$c","ss","LUb","JUb","KUb","VQc","Lcd","qtc","wZc","ZZc","$Zc","PVc","jid","And","IEd","PEd","Vk","Sc","mc","j7c","E_b","Ngb","Z1b","A9b","UDb","JDc","cVc","fVc","qKb","AJb","wf","bFd","Kic","Iic","jjc","Tmd","GQd","IQd","q6d","Xk","x6c","Jkd","Vn","Up","qr","Ck","KXb","gic","u4c","qnd","Eid","Jnd","sb","_ic","zId","o1d","vk","wk","kud","Fhb","Lhb","Ghb","c6b","_5b","i6b","Ekd","bkd","eid","jte","Vj","yZb","VOd","QHd","N7d","Gj","Og","Web","cTd","kue","Xh","$hd","lYb","jf","Osc","_Fc","bGc","Rf","loc","zGb","bLb","had","Vcd","Wcd","ej","fj","sud","Zi","vAd","KAd","xAd","ZId","dJd","eJd","Cve","fJd","Dve","k6d","l6d","ved","Efd","RUb","aJd","CUd","EUd","Tee","Uje","a_b","Lwc","owc","Mkd","ttb","CI","hDc","cD","gD","N_b","Gub","yub","lke","mke","O_b","n6d","o6d","aeb","Ev","ln","EZc","QZc","GZc","LFb","Ycc","yOc","t4c","Tj","xFb","GVb","Xkd","Ljc","JOb","t6c","o6c","Q9b","pyc","wyc","N9b","EHb","Htd","Q9c","XGb","MUb","JTb","Vme","qZb","ITb","Iwc","Cwc","aUb","itc","pf","LTb","Byc","zsc","aZb","Y$b","qme","utc","cZb","_Yb","ezc","h0","czc","I2c","Kf","Kgb","Lgb","Zcd","QUc","Dne","b1c","zg","Ug","zvd","Gxd","Di","pvd","lsd","cLb","_Kb","UKb","mKd","nm","wm","W_b","$kd","vyc","zqe","kyc","oyc","syc","zyc","myc","Y9b","U9b","tWd","uWd","vWd","wWd","xWd","yWd","zWd","BWd","FHb","oN","Sje","$Ed","Sxd","Lzc","Cxc","Dxc","pBc","qyc","Ze","wAd","B6d","Zg","Myd","mj","IA","Epb","Hbb","UC","p5b","r5b","t5b","s5b","q5b","m5b","Rwc","Tqc","rHc","yic","fdd","edd","hdd","T9c","gdd","E9c","ddd","r8c","tme","Ree","Ufe","OZc","jhb","Ofe","Zee","$ee","Qsc","gjc","LHc","Zic","cjc","Yic","JHc","fjc","bIc","ijc","hnc","mzd","wCc","vd","BDb","DDb","N9d","Qge","Q9d","R9d","ted","sed","sde","Kge","$l","Vpd","eh","Wje","fh","fvd","vg","uDc","Igb","Zcb","Ue","VOc","aAb","_zb","xM","ROc","QOc","Cjd","Bjd","vjd","EOb","bFb","_Eb","dFb","gNb","Ce","dNb","ELb","ENb","efb","_0d","FMc","gVb","Xgb","mIb","Kjc","Vbc","Wbc","q2c","J8c","OEc","TPb","tyb","ryb","yyb","pyb","xKb","zKb","vKb","AKb","wKb","b0d","xlb","dYb","HFb","umc","r2c","igd","Vqd","k4c","o5c","Ye","UEd","_lb","P9d","wte","fde","ide","Wgb","DN","nJb","mJb","oJb","eJb","dJb","fJb","iJb","hJb","gJb","lJb","kJb","jJb","bJb","aJb","cJb","$Ib","ZIb","_Ib","XIb","WIb","YIb","vjc","cYb","h4b","Dsc","c4b","gkd","nj","Roc","XEd","O9c","oQc","mse","ise","Y3","jse","L9d","ede","bde","Zyd","BPb","K9c","vPb","G8c","qPb","wPb","zPb","yPb","APb","xPb","$Eb","sPb","rPb","tPb","uPb","NWb","ued","JKb","DKb","a0b","P_b","kid","Qg","zld","Zje","tud","PJb","yle","zle","Ale","eVc","zD","yD","xD","u6d","mh","x6d","v6d","kCb","d4d","HLd","rud","Gk","mi","mYb","Nac","zHb","Bub","KCb","HCb","vZb","Qwc","nZb","Ksc","btc","pZb","Nsc","uZb","tXc","jre","FZc","JFb","IFb","AFb","GFb","uAd","jve","uj","BAd","m3d","wo","GF","b0b","Scc","Rcc","Pcc","Aqe","XDc","Y_b","HVc","BVc","FMd","QTd","UPc","Oqe","WPc","XPc","I0c","z0c","G0c","H0c","x0c","E0c","n0c","F0c","o0c","D0c","y8c","uld","JQd","yde","jIb","kIb","IZc","RZc","P1c","N1c","hNb","Gle","iNb","ZMb","jNb","$Mb","XZc","r6c","k6c","jud","Fwb","Dle","Ele","Fle","Nyd","rJc","otc","eyc","hJc","iJc","oJc","yJc","mJc","sY","Iqe","eme","sJc","nJc","Bxc","Ayc","lJc","pJc","kJc","qJc","ZOb","YOb","Vne","Wqd","rTb","TMc","qmc","Uoc","Qoc","s3d","Yxd","H9d","_I","PDb","Me","QDb","sRb","cRb","a$c","AHb","lNb","mNb","xxc","ikc","Kmc","Nmc","dKd","Fve","eKd","EXb","GXb","d_b","pHc","qHc","hQc","aKd","C0b","Ogc","uoc","voc","u$c","M6d","bD","UId","AGb","MSb","Mme","ISb","Nme","JSb","Ome","KSb","LSb","Pme","NSb","Qme","ric","HHc","KHc","gJc","UWc","XWc","NWc","OWc","PWc","MWc","QWc","e9c","TWc","x9c","KWc","wWc","LWc","xWc","RWc","zWc","SWc","BWc","VWc","CWc","WWc","DWc","YWc","FWc","ni","Z_b","p7b","rMc","yxc","bgd","yf","Vt","_tb","VSb","O8c","B8c","YSb","ZSb","$Sb","XSb","_Sb","aTb","USb","SSb","TSb","WSb","RSb","H6b","bd","Xec","ttc","Lhd","Eod","Nhd","lpd","Phd","mQd","VFd","KHd","OFd","Snd","cGd","ird","p6d","v$c","ere","Lld","Khd","Uod","Ohd","PSd","aGd","qUd","dGd","yHb","BHb","O9b","K9b","L9b","V9b","R9b","LZb","JNc","Yke","eFb","Zke","cFb","$ke","aFb","_ke","cfc","AZc","po","Ooc","Vsc","Wsc","l6c","WTb","m8b","q8b","x8b","a8b","YTb","S7b","b8b","XTb","d8b","E$c","t$c","j0d","l0d","oh","rEc","GHc","MVc","qWc","hg","vld","Fkd","wld","tj","t1d","OKd","DJb","MKb","q6c","h6c","dre","y6c","pud","woc","oEc","nEc","WOc","Rpd","Ute","T_b","ixc","Ikd","Zkd","Ui","Eyd","UZc","bEb","BVb","znc","yzc","NZc","HZc","$sd","XId","w6d","t6d","llc","Vwc","nlc","olc","mlc","KXc","LXc","gLd","SQd","E9d","I9d","KDc","Kd","LNb","ONb","WZb","eLb","H3b","C3b","sic","SEc","Rsc","CX","FX","tKc","rRc","F2c","vTc","sRc","HXc","Qlb","Wlb","Md","F6b","WNc","Xac","Fne","Wac","ctc","_ac","qhb","Jje","oQb","wub","xub","S1b","fxc","Qld","gxc","kjc","ujc","qjc","E3c","hsd","sg","rpc","qf","Qj","iud","oA","H1c","F1c","IVc","JVc","AVc","cub","bYb","P9b","Tsc","Dpb","Bpb","Cpb","fje","uke","hCb","wg","SUb","IWb","pWb","mWb","RVc","CVc","c0c","__c","v0c","$_c","t0c","Y_c","p0c","Z_c","r0c","X_c","W_c","a0c","b0c","T_c","k0c","U_c","m0c","V_c","U7c","T7c","W7c","V7c","D9c","O7c","I8c","Q7c","S7c","L7c","pse","P7c","R7c","M7c","t8c","N7c","w8c","iue","ktd","mtd","Dvd","lue","nue","Oi","m6d","Ymd","gh","MQd","HQd","ufb","dkc","ckc","ekc","fkc","oFc","oY","nY","KIc","IHc","jZb","XQc","Qqe","$Tb","dtc","qRc","sZc","yZc","s6c","qec","rec","Gcb","jfd","Vud","og","fld","Rlb","LRb","mme","MRb","KRb","nme","PRb","ome","QRb","pme","NRb","rme","RRb","ORb","NUb","vdc","mkc","lkc","rkc","tkc","skc","qkc","ukc","vkc","Yi","wkc","Znc","H0b","j3b","k3b","uic","VGc","UGc","WGc","TGc","MSc","kTc","lTc","JZc","LZc","ofd","Ax","Q6c","esd","fsd","gsd","zMc","ljc","Zjc","UQc","BGb","Iod","Z2d","Xxd","ffe","qde","ae","Z9b","fac","ktc","Wec","Vec","iCc","p5c","pjc","QVc","mte","nte","ORd","QRd","I2d","swe","K6d","N6d","sKc","cRc","eqd","fqd","dqd","rEb","Cxb","Bxb","sEb","FJb","KJb","JJb","KIb","OKb","SKb","RKb","cOb","JM","rQb","TBc","pCc","jOc","eg","fg","rfd","PKd","SKd","ESc","jTc","FSc","kFd","HEd","BEd","zEd","AEd","GEd","mve","eFd","fFd","hFd","VEd","iFd","aFd","lFd","NFc","YQc","a0d","wi","ti","Gac","Hac","GDc","rUc","qUc","Ffd","PRd","Ilb","Jlb","nEb","PM","tEb","qh","LEd","Wk","tfb","YUc","valueOf","RJb","gIb","fIb","hIb","iIb","SJb","Gqd","Hqd","Iqd","Jqd","TMd","Slb","Tlb","Ulb","Xlb","xGb","YNb","wOb","tpc","spc","MJc","MZb","uRb","d4b","qPc","X_b","Gsc","Spc","tDc","_Uc","Tqd","$od","brd","Fqd","Vlb","DGb","EKb","Idb","Bw","TZb","KZb","gne","zRc","LJd","tde","Fue","Gue","m5c","fs","ll","rA","LNc","$Pb","Lc","UPb","SPb","D$c","Jqe","z6c","xOb","hl","Pgb","Cgb","Sgb","Fgb","bhb","Jhb","CVb","u0d","KTb","gyc","KQ","cne","DYb","Hxc","twc","EYb","MTb","lf","CYb","Fxc","Ixc","Gxc","zwc","OTb","NTb","qYb","oQd","NRd","pi","Ri","vz","tz","wz","uz","cEb","m8d","k8d","h8d","i8d","j8d","l8d","If","Bf","IKb","Q1b","$xc","lfd","M1b","swd","bj","Bhb","Chb","Egb","K4b","DMc","qmd","EId","vyb","BOb","COb","MPb","DOb","eNb","$Ob","AOb","Y5b","Qxd","jj","ILd","dj","pkc","zCc","Rxd","rwd","l5c","ug","gvd","Rg","nTb","hbc","Wne","vNd","Nid","bcb","ecb","GGb","O3b","Ysc","a9b","Rs","XOb","Dac","zac","Xoc","Dyc","CTc","BTc","HTc","uTc","ETc","GTc","H9c","xTc","yTc","zTc","wTc","ATc","DTc","ITc","RBd","KYc","Bre","LYc","IYc","Cre","FYc","Dre","GYc","Ere","JYc","Fre","MYc","Gre","HYc","Hre","NYc","Ire","yld","At","Wzc","nqc","lre","mre","nre","yWc","ore","EWc","qre","GWc","rre","AWc","XXb","T6b","rPc","IAb","dme","Ju","kr","Aac","uKc","bfc","tQb","sGb","qTb","mTb","LSc","xSc","ySc","q$","fme","frd","cue","due","Eqd","Pqd","Qqd","aNc","NLc","OLc","PLc","SLc","f1d","g1d","Yfe","UUb","PFc","ync","TDb","TM","Jke","Kke","SDb","Le","ard","$qd","erd","mqd","xqd","YCc","XCc","YGc","FKb","Woc","RYc","VYc","gZc","fZc","jZc","SYc","_Yc","aZc","bZc","$Yc","cZc","hZc","eZc","ZYc","dZc","iZc","WYc","XYc","YYc","P8c","UYc","TYc","kZc","Ab","kNb","LPb","JPb","IQb","e4b","mzc","AQc","r9b","zbc","HNc","aWc","_Vc","aYb","WQb","jSb","pSb","XQb","YQb","fSb","LQb","tRb","SQb","KQb","yoc","PZb","Asc","Noc","xoc","Jyc","roc","soc","toc","KQd","_Fd","eRc","WSc","ml","AXc","gWc","jXc","zXc","ig","BXc","npd","UKd","mo","DWb","Y2b","vsc","mmd","ste","opd","Sld","VId","Ej","IJc","vQb","uQb","xQb","jcc","ftc","XNc","YNc","VNc","_od","u6c","x1d","wXb","LYb","YZc","Y7b","V7b","G8b","r8b","M8b","E8b","i8b","A8b","F8b","e8b","O8b","P7b","I8b","o8b","H8b","Q8b","C8b","Q7b","D8b","R8b","K8b","P8b","N8b","T7b","_7b","t8b","u8b","k8b","f8b","W7b","U7b","l8b","g8b","L8b","R7b","B8b","j8b","s8b","c8b","$7b","X7b","UWb","qWb","nWb","NHd","Ihb","yhb","thb","aGc","groupCollapsed","fCb","Yie","jCb","groupEnd","dGc","cGc","Jsc","mtc","Lmc","a6b","Txc","bcc","fN","jN","oPc","Rac","jQc","See","F5b","H5b","G5b","b_b","j_b","E5b","eec","QFc","N8d","v8d","t8d","u8d","s8d","Z6d","Tbc","Ubc","TFc","Dub","fFc","DNc","zNc","CNc","ENc","ANc","BNc","cQc","gQc","dQc","fQc","eQc","GNc","Qac","rMb","Igc","aQc","Pq","vGb","yGb","rGb","$doc","documentMode","Zd","Xd","suppressed","Yd","mhb","p2d","R1b","RFc","rQc","$wd","Swd","Twd","Uwd","Vwd","Wwd","Ywd","Xwd","Zwd","hxd","_wd","axd","bxd","cxd","dxd","fxd","exd","gxd","Usc","ybc","wbc","wHb","AYb","Xqe","bTc","bJc","atc","sQb","itd","wQb","V6b","Eac","Fac","o2c","L1b","PGb","o9c","p9c","n9c","q9c","l9c","OCc","vre","wre","xre","B9b","hTc","_Sc","iTc","aTc","D4b","jdd","Rse","ame","wme","yme","_le","QKd","uNd","tNd","eee","uue","Yue","G6b","rAd","e6b","g6b","h6b","htc","k6b","sPc","j6b","f6b","d6b","b6b","jnd","AUc","yUc","BUc","sbc","_D","hjc","hKb","Vgc","hic","Ngc","Xgc","Ugc","oSb","tSb","M9c","bSb","sSb","lSb","kSb","dSb","cSb","iSb","hSb","gSb","nSb","rSb","Qre","Vre","y0c","Rre","w0c","Sre","u0c","Tre","Ure","s0c","Wre","l0c","Xre","Yre","Zre","q0c","Lyc","Tf","p2c","HJb","LJb","QKb","TKb","gJd","x2d","l1","j1","DJ","xK","jK","uK","kL","Bj","YDb","yVb","cNb","qNb","rNb","fTc","cTc","kHc","g_b","N1b","OFc","ywc","uwc","vwc","SGb","gac","dac","eac","Owc","Anc","doc","Gyc","Vf","Iyc","boc","Hyc","coc","Wf","Myc","aoc","oqd","pqd","Zte","$te","rqd","qqd","_te","aue","_qd","CGb","ixd","$ad","Qse","uqe","Fme","Tme","bqe","E4b","ht","lastIndex","nOd","k1d","n1d","B2d","kme","af","cf","K0c","ase","Zpe","q2d","uVb","LP","tVb","ef","ff","JVb","Ijc","hfd","G9c","Mq","Rq","Bg","r9c","ULc","X9b","jg","kg","uGb","FGb","wGb","tGb","EGb","qGb","JQb","_Bc","cyc","LEc","MEc","NEc","JRc","Jh","vh","x6b","YDc","bEc","ZDc","nFc","vDc","dyc","oNc","qNc","rNc","nNc","sNc","pNc","lNc","mNc","fee","kee","nxe","oxe","pxe","qxe","rxe","mxe","wac","tA","Hjc","uh","Zk","Yk","YEd","YFc","axc","UFc","Lf","mHc","eGc","khb","ZJc","yyc","uZc","gRc","dRc","n$","Sqd","wqd","yqd","zqd","sqd","tqd","uqd","vqd","i_b","Msc","etc","X$b","_bc","ysc","BPc","fNb","Y7c","qse","vme","Jre","Eme","Ame","rse","lqe","W$b","VGb","C8c","mgb","Xje","Khb","Wcc","ine","tfd","Neb","Jeb","Keb","Leb","Meb","Tse","qfd","_Mc","qwd","wwd","rRb","iRb","Tge","w5","Axe","nh","W6b","U6b","S6b","WFc","XFc","X2d","Uxc","P1b","iKb","LIb","OGb","Kxc","_Nb","lQc","nQc","mQc","kQc","wQc","zQc","fKd","uk","Sse","_fe","Vfe","lxe","Pxd","gSc","fSc","$Sc","ZSc","XSc","VPc","Te","KMc","LMc","MMc","HQb","$O","e3d","ifd","UVc","eDb","GM","nvd","_Ec","odc","age","YPc","TPc","Bac","Zxd","lj","getMinutes","getSeconds","getMilliseconds","opc","npc","MFc","Fub","RKd","bh","ji","E6b","Oac","Mac","Lsc","Pac","U1b","Yxc","ELd","O1b","Y1b","Mxc","hyc","Jwc","Awc","xwc","Jxc","o8c","sne","$1b","X1b","xsc","V1b","T1b","oTb","xMc","$8b","Z8b","dDc","lde","kde","DPb","Yle","Zle","$le","Zbc","Pmd","c6","v6c","kMc","vZc","kYc","tYc","sYc","J2d","K2d","Xfe","TQd","$$b","uxc","exc","TUb","gf","e0c","Pre","$Mc","$Ic","Of","Pf","Qf","Nf","J4b","Xwc","swc","H4b","rtc","stc","B4b","ptc","bKc","oZb","vxc","Z$b","hZb","mZb","lZb","Mh","uEd","vEd","wEd","sEd","tEd","xEd","yEd","EEd","FEd","lve","xUc","Dbc","Cbc","sTb","UCb","Je","bm","Vvb","em","am","rhb","shb","egb","rgc","Pgc","pwc","Wgc","aEb","rwc","ZDb","Kgc","Lgc","Mgc","mYc","z_","o_","mg","lYc","ZQc","o7b","txc","Dk","zk","WGb","vwd","Gi","eed","fed","bed","aed","ced","Afd","h_b","_z","de","VC","XC","rid","kte","qid","Vcb","dTc","YSc","eTc","VSc","MNc","F8d","H8d","K8d","L8d","M8d","P8d","O8d","w8d","x8d","y8d","z8d","A8d","B8d","C8d","D8d","E8d","G8d","J8d","kKd","Lve","n5c","Jf","jxd","gj","Cyc","EJb","NKb","BUb","oqb","AUb","hf","oBc","wDc","sDc","OUb","Wfe","PUb","AVb","vVb","nc","yUb","sZb","W9b","J9b","T9b","AFc","_sc","Bbc","Abc","rxc","qxc","Ebc","wFc","qY","Ewc","AGc","gg","wPc","fyc","Axc","sxc","Exc","kNc","$wc","hxc","_wc","cxc","Hwc","Dwc","Bwc","cUb","Kyc","_Tb","y$c","KTc","are","bre","zme","Gme","Dme","Hme","Gcd","Bcd","Ocd","Qcd","Hcd","Ccd","Pcd","Ncd","Ecd","Dcd","Mcd","Kcd","Jcd","Vmd","tte","ute","bl","nse","cTb","Rme","Sme","ume","Cme","Zfe","Mwb","pEc","wlb","zQb","zfd","z8c","A9c","Elb","YJc","eYb","_Xb","wsc","_1b","F4b","G4b","j6c","yfd","Ag","y2b","C2b","CZc","xZc","tZc","BZc","zZc","lDb","Lke","Mke","cVb","Isc","IDc","CDc","DDc","ADc","HDc","BDc","FDc","rZb","tZb","ssc","oMc","UMc","pMc","qMc","Cf","vf","rKb","DHb","eKb","GJb","PKb","BJb","pKb","GKb","HKb","CJb","oKb","cKb","KKb","LKb","oc","Ff","dKb","uf","$2b","iyc","kfd","E0b","W1b","V$b","e_b","$Wc","sre","Cy","Df","M8c","ucd","z9c","Jbd","U8c","P9c","X9c","R9c","S9c","V9c","Jcb","yKb","Bmd","dgb","fgb","ggb","hgb","igb","jgb","z2b","w_b","z_b","x_b","y_b","A2b","B2b","xSb","xme","Bme","Fcd","Icd","LOG10E","Gwc","nxc","pje","qje","bje","cje","dje","eje","gje","hje","ije","jje","kje","lje","mje","BA","rje","sje","tje","uje","vje","wje","xje","AA","DA","yA","CA","iQc","Yfd","ded","$dd","Ioc","KJc","Af","Ef","bKb","lbb","_ee","Yee","wxe","afe","uxe","vxe","xxe","c3b","vtc","d3b","gDc","oxc","pxc","fDc","zd","Ctd","Vxd","fYb","$Xb","ZXb","BWb","JWb","SMc","u2c","d9c","N8c","s2c","v2c","_6c","_dd","e7b","DXb","FXb","WJc","xY","wY","VJc","HJc","UJc","TJc","GJc","lMc","Shd","Mhd","Rhd","Jhd","Ihd","Ml","Ol","Tl","Ul","yl","Dl","Kl","El","zl","Jl","Hl","Vl","Wl","Nl","Sl","Pl","efe","wl","tl","Fl","Al","Il","Bl","Gl","Cl","Iue","Hue","pde","Xl","Yl","Zue","bve","_ue","ave","$ue","dm","cm","$bc","NCb","mZc","Kre","xqe","Wmd","_Pd","vte","YXb","Kgd","I9c","jyc","J9c","L9c","N9c","U9c","Bvc","Cvc","Dvc","Evc","byc","yvc","zvc","Avc","awc","Hvc","Kvc","Svc","Eyc","Nvc","Fyc","Pvc","fwc","cwc","Yvc","Wvc","$vc","pvc","qvc","Auc","Ywc","Duc","Lxc","E8c","Twc","Kwc","p8c","Nwc","Xxc","Zxc","Oxc","Qxc","Rxc","Sxc","Pxc","Gvc","avc","$uc","Fvc","Suc","muc","kuc","Xtc","Ytc","buc","Ztc","iuc","cvc","dvc","Luc","uvc","zxc","hvc","Guc","nvc","wuc","yuc","evc","Mtc","Ktc","qwc","Jtc","Juc","bxc","Iuc","dxc","Kuc","Pwc","euc","v9c","v8c","L8c","h9c","Nxc","j9c","Vuc","Xuc","nwc","Itc","Zuc","suc","quc","S8c","kxc","Puc","kvc","Mwc","ouc","_xc","wvc","Uwc","uuc","lxc","Ruc","Fwc","guc","Uuc","huc","Vtc","wwc","Stc","Qtc","Rtc","Utc","Otc","Huc","z$c","vue","wue","xue","BCc","CCc","gee","Mue","Nue","Oue","Pue","Kue","Sue","HVd","BMc","AMc","te","yMc","EMc","IMc","kA","jA","iA","OA","NA","QA","sse","tse","$pe","q8c","x8c","cqe","A8c","ype","F8c","tpe","K8c","g9c","u9c","R8c","mqe","pqe","qqe","vse","T8c","vqe","Xpe","wse","xse","yse","zse","Ase","Bse","Cse","Dse","Ese","Fse","u8c","Lpe","Mpe","Npe","Ope","Ppe","Spe","Qpe","Rpe","Tpe","Upe","Vpe","W9c","wqe","tqe","sqe","i9c","V8c","dqe","X8c","gqe","m9c","hqe","iqe","jqe","kqe","Z8c","c9c","a9c","nqe","D8c","Gse","Hse","rqe","oqe","Ype","B9c","Wpe","y9c","eqe","fqe","_pe","aqe","Ise","H8c","k9c","ntc","Xne","Yne","puc","Zne","$ne","Muc","_ne","aoe","boe","coe","xvc","doe","eoe","foe","goe","nuc","hoe","bvc","ioe","Tuc","joe","koe","loe","moe","noe","_uc","ooe","poe","qoe","luc","roe","soe","toe","uoe","voe","woe","xoe","cuc","yoe","$tc","zoe","vvc","Aoe","Boe","fvc","Coe","ivc","Doe","Eoe","Foe","rvc","Goe","xuc","Hoe","zuc","Ioe","Buc","Joe","Koe","Loe","Moe","Noe","Ooe","Poe","Qoe","Roe","Soe","Toe","Ntc","Uoe","Ltc","Voe","Woe","Xoe","Yoe","bwc","Zoe","$oe","_oe","Tvc","ape","Qvc","bpe","cpe","gwc","dpe","epe","fpe","gpe","hpe","tuc","ipe","ruc","jpe","Wtc","kpe","lpe","Ptc","mpe","Ttc","npe","ope","Ouc","Nuc","Wuc","Yuc","Quc","fuc","juc","duc","_tc","auc","lvc","mvc","gvc","jvc","ovc","tvc","svc","Cuc","Euc","Fuc","vuc","Ivc","Jvc","Lvc","Mvc","Uvc","Vvc","Ovc","Rvc","hwc","iwc","dwc","ewc","Zvc","Xvc","_vc","hfe","ife","ofe","pfe","qfe","tfe","mfe","rfe","ufe","cfe","sfe","nfe","jfe","lfe","kfe","LK","QFd","SFd","RFd","TFd","UFd","WFd","ZFd","$Fd","bGd","eGd","gGd","hGd","XFd","iGd","Oyc","cee","dee","sxe","txe","yue","zue","Aue","Bue","Cue","Due","Eue","Jue","Lue","Que","Rue","Tue","Uue","Vue","Wue","Xue","global","Phe","Qhe","Rhe","Whe","Yhe","Zhe","$he","_he","aie","bie","cie","die","eie","fie","gie","hie","iie","jie","kie","lie","qie","sie","tie","uie","vie","wie","xie","yie","Aie","Bie","Cie","Die","Lie","Nie","Oie","Pie","Tie","Uie","Wie","yje","zje","Aje","Bje","Cje","Dje","Lje","Mje","Nje","_je","ake","bke","cke","dke","eke","fke","gke","pke","qke","rke","ske","vke","wke","Cke","Dke","Eke","Fke","Gke","Ike","Nke","Oke","Pke","Qke","Rke","Ske","Tke","Uke","Vke","Wke","Xke","ale","ble","cle","fle","hle","nle","qle","rle","sle","ule","wle","Ble","Cle","Hle","Jle","Kle","Lle","Mle","Nle","Ole","Ple","Qle","Rle","Sle","Xle","bme","gme","hme","ime","jme","lme","sme","Ume","Wme","Xme","Yme","Zme","$me","_me","dne","ene","fne","hne","mne","nne","pne","qne","rne","tne","une","vne","wne","xne","yne","zne","Ane","Ene","Ine","Jne","Kne","Lne","Mne","Nne","One","Pne","Qne","Rne","Sne","ppe","qpe","rpe","spe","upe","vpe","wpe","xpe","zpe","Ape","Bpe","Cpe","Dpe","Epe","Fpe","Gpe","Hpe","Ipe","Jpe","Kpe","yqe","Bqe","Cqe","Dqe","Eqe","Fqe","Gqe","Hqe","Kqe","Lqe","Mqe","Nqe","Pqe","Uqe","Vqe","Wqe","_qe","cre","fre","gre","hre","ire","kre","tre","ure","yre","zre","Are","Lre","Nre","Ore","$re","_re","bse","cse","dse","fse","gse","hse","ose","Jse","Kse","Lse","Mse","Nse","Ose","Pse","Use","Vse","Wse","gte","hte","pte","qte","rte","xte","Tte","Wte","jue","oue","pue","que","rue","cve","dve","eve","fve","ive","kve","yve","zve","Ave","Ove","Pve","Tve","Uve","Vve","Wve","Xve","Yve","Zve","$ve","awe","nwe","owe","pwe","qwe","rwe","Iwe","Mwe","Nwe","kxe","yxe","zxe","Bxe","Cxe","Dxe","Exe","Fxe","Gxe","Hxe","goog","ac","kc","lc","fc","rc","sc","wc","tc","fd","$w","ax","gd","hd","jd","kd","zy","Qi","ld","md","od","xe","ud","tr","Bd","Cd","Gd","Ku","Lu","Dv","Ym","Jv","pd","so","hp","Pd","jr","Zq","Qd","Gs","Rd","Qs","Ud","lt","Tw","Uw","uy","XAb","nz","message","mz","kz","callee","caller","Wz","XA","ge","je","_B","Lcb","Wcb","Mdb","$db","seb","Peb","dkb","Function","jpb","opb","we","uvb","zvb","Pxb","Qxb","vwb","Oyb","Pyb","Ryb","Syb","Tyb","Vyb","Uyb","eAb","gAb","dAb","qAb","eBb","pBb","vBb","uBb","BBb","Ge","ABb","GBb","$Ab","_Ab","Xzb","VCb","Oe","Pe","WDb","wEb","qEb","pIb","qIb","sf","MIb","zJb","sKb","WKb","gLb","hLb","aLb","FLb","QLb","XLb","aMb","fMb","kMb","sMb","vMb","yMb","BMb","EMb","MNb","NNb","jOb","eOb","yQb","qQb","WPb","XPb","YPb","ZPb","Ig","BQb","EQb","NQb","yRb","CRb","JRb","ERb","uTb","QTb","RTb","WUb","XUb","QVb","UVb","PVb","TP","MWb","PWb","EWb","FWb","GWb","HWb","nf","of","GYb","UYb","DZb","O$b","o_b","Old","b2b","Nld","c2b","d2b","E2b","F2b","Q2b","R2b","Z2b","b3b","g3b","r3b","u3b","s3b","I3b","f4b","k4b","g4b","C4b","l5b","S5b","X5b","n6b","s6b","y6b","I6b","f7b","i7b","TGb","l7b","zS","q7b","s7b","t7b","u7b","v7b","_8b","g9b","s9b","C9b","_9b","aac","bac","tac","Cac","$ac","nbc","qbc","ubc","Gbc","Hbc","Sbc","acc","dcc","kcc","mcc","scc","wcc","vcc","xcc","Qcc","Vcc","ndc","rdc","udc","Kdc","Ldc","Mdc","gec","fec","Eec","Gec","Hec","Tec","dfc","efc","ffc","gfc","hfc","ifc","fBc","iEb","wgc","Zgc","$gc","_gc","ahc","bhc","Qgc","Rgc","chc","Jgc","Sgc","dhc","Tgc","cic","bic","aic","fic","Bic","Jic","Lic","ykc","zkc","Akc","nkc","okc","plc","qlc","rlc","emc","fmc","Dmc","Vmc","nnc","onc","vnc","Hoc","Yoc","Xf","C5c","UBc","Zf","$Bc","jCc","qCc","xCc","ACc","PCc","WCc","lDc","ODc","_Dc","qEc","mFc","zFc","BFc","FFc","VFc","eHc","YHc","ZHc","$Hc","_Hc","eIc","fIc","MIc","PIc","cJc","wJc","dKc","LJc","NJc","eKc","fKc","PJc","QJc","cKc","XJc","NZb","JLc","NMc","uNc","vNc","INc","KNc","kOc","_Oc","qQc","uQc","sQc","tQc","WQc","iRc","pRc","oRc","fRc","nRc","PSc","SSc","HUc","aVc","iVc","nVc","EVc","GVc","SXc","jYc","cYc","dYc","A$c","B$c","C$c","c_c","j1c","ng","r1c","G1c","O1c","a2c","$1c","pg","d2c","M2c","G2c","Y2c","r3c","s3c","t3c","E0","S3c","k5c","jeb","r7c","h1","led","hed","ied","jed","Yyc","Zyc","$yc","azc","_yc","ufd","wfd","xfd","Sfd","cgd","Lgd","ehd","fhd","shd","xg","yg","zhd","Kg","ck","dk","fk","hk","kk","wh","Uj","Ch","Dh","Eh","Fh","yj","Lh","Und","J4","Uh","Th","Bqd","Cqd","Lqd","Mqd","Nqd","Oqd","isd","jsd","ksd","Isd","Vsd","ptd","$h","_h","Nk","sqb","_3","Li","Ni","xi","yi","zi","Bi","oj","pj","ozd","oAd","pAd","GAd","MAd","vBd","wBd","xBd","I4","vj","TEd","KEd","Did","OHd","_Hd","lk","aId","qk","dLd","SMd","GMd","HMd","IMd","UMd","Hk","FNd","NNd","ONd","SNd","TNd","twd","uwd","TOd","UOd","WOd","Ik","aTd","bTd","dTd","RTd","STd","TTd","BUd","SUd","WUd","TUd","Pk","sVd","tVd","nl","fl","kl","Sk","Tk","bYd","cYd","IYd","JYd","iZd","fZd","Xmd","jZd","kZd","lZd","__d","k0d","t0d","W0d","V0d","Z0d","$0d","c1d","o2d","r2d","N2d","O2d","W2d","_2d","c3d","i3d","l3d","CAd","Y6d","s2d","u2d","A2d","G2d","L2d","V2d","Y2d","$2d","n3d","Z8d","$8d","g9d","qgb","D9d","F9d","J9d","B9d","M9d","O9d","S9d","Ll","gfe","Jfe","fm","Wee","_ge","ahe","bhe","che","ohe","phe","qhe","rhe","Ihe","gwtOnLoad","Xbb","dispatch","svd","Z1c","rvd","t2c","Ghe","qvd","saveDispatch","dispatcher","ovd","ELKNode","_ELK","optionsClone","workerThreadsExist","_Worker","ReferenceError","_possibleConstructorReturn","__proto__","getPrototypeOf","subClass","superClass","setPrototypeOf","_inherits","defaultCmp","heapify","heappop","heappush","heappushpop","heapreplace","insort","nlargest","nsmallest","_siftdown","_siftup","cmp","item","lastelt","returnitem","_ref1","_results","_results1","elem","los","startpos","newitem","parentpos","childpos","endpos","rightpos","pushpop","heap","front","condition","format","argIndex","framesToPop","hashClear","hashDelete","hashGet","hashHas","hashSet","Hash","listCacheClear","listCacheDelete","listCacheGet","listCacheHas","listCacheSet","ListCache","getNative","mapCacheClear","mapCacheDelete","mapCacheGet","mapCacheHas","mapCacheSet","MapCache","iteratee","baseAssignValue","objValue","castPath","toKey","getRawTag","objectToString","nullTag","undefinedTag","symToStringTag","toStringTag","isFunction","isMasked","isObject","toSource","reIsHostCtor","funcProto","objectProto","funcToString","reIsNative","assignValue","isIndex","customizer","nested","newValue","arrayMap","isSymbol","INFINITY","symbolProto","symbolToString","baseToString","trimmedEndIndex","reTrimStart","isKey","stringToPath","coreJsData","freeGlobal","isKeyable","__data__","baseIsNative","nativeObjectToString","isOwn","tag","unmasked","nativeCreate","HASH_UNDEFINED","reIsUint","reIsDeepProp","reIsPlainProp","maskSrcKey","IE_PROTO","assocIndexOf","getMapData","MAX_MEMOIZE_SIZE","freeSelf","memoizeCapped","rePropName","reEscapeChar","quote","subString","reWhitespace","toNumber","FUNC_ERROR_TEXT","nativeMax","nativeMin","wait","lastArgs","lastThis","maxWait","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","invokeFunc","shouldInvoke","timeSinceLastCall","timerExpired","trailingEdge","timeWaiting","remainingWait","debounced","isInvoking","leadingEdge","cancel","flush","baseGet","defaultValue","baseGetTag","asyncTag","funcTag","genTag","proxyTag","isObjectLike","symbolTag","memoized","Cache","baseSet","baseTrim","NAN","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","isBinary","copyArray","hookCallback","hooks","setHookCallback","input","hasOwnProp","isObjectEmpty","isUndefined","isNumber","isDate","arrLen","createUTC","locale","strict","createLocalOrUTC","defaultParsingFlags","unusedTokens","unusedInput","charsLeftOver","nullInput","invalidEra","invalidMonth","invalidFormat","userInvalidated","iso","parsedDateParts","era","meridiem","rfc2822","weekdayMismatch","getParsingFlags","_pf","isValid","_isValid","flags","parsedParts","isNowValid","invalidWeekday","_strict","bigHour","isFrozen","createInvalid","fun","momentProperties","updateInProgress","copyConfig","momentPropertiesLen","_isAMomentObject","_tzm","_isUTC","_offset","_locale","Moment","config","updateOffset","isMoment","suppressDeprecationWarnings","deprecate","firstTime","deprecationHandler","argLen","deprecations","deprecateSimple","_config","_dayOfMonthOrdinalParseLenient","_dayOfMonthOrdinalParse","_ordinalParse","mergeConfigs","parentConfig","childConfig","Locale","defaultCalendar","sameDay","nextDay","nextWeek","lastDay","lastWeek","sameElse","calendar","mom","_calendar","zeroFill","targetLength","forceSign","absNumber","zerosToFill","formattingTokens","localFormattingTokens","formatFunctions","formatTokenFunctions","addFormatToken","token","padded","ordinal","localeData","removeFormattingTokens","makeFormatFunction","formatMoment","expandFormat","invalidDate","replaceLongDateFormatTokens","longDateFormat","defaultLongDateFormat","LTS","LT","LL","LLL","LLLL","_longDateFormat","formatUpper","tok","defaultInvalidDate","_invalidDate","defaultOrdinal","defaultDayOfMonthOrdinalParse","_ordinal","defaultRelativeTime","future","past","mm","MM","yy","relativeTime","withoutSuffix","isFuture","_relativeTime","pastFuture","addUnitAlias","unit","shorthand","lowerCase","normalizeUnits","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","priorities","addUnitPriority","getPrioritizedUnits","unitsObj","isLeapYear","year","absFloor","toInt","argumentForCoercion","coercedNumber","makeGetSet","keepTime","set$1","month","date","daysInMonth","stringGet","stringSet","prioritized","prioritizedLen","match1","match2","match3","match4","match6","match1to2","match3to4","match5to6","match1to3","match1to4","match1to6","matchUnsigned","matchSigned","matchOffset","matchShortOffset","matchTimestamp","matchWord","addRegexToken","strictRegex","isStrict","getParseRegexForToken","unescapeFormat","regexEscape","matched","p4","addParseToken","tokenLen","addWeekParseToken","addTimeToArrayFromToken","YEAR","MONTH","DATE","HOUR","MINUTE","SECOND","MILLISECOND","WEEK","WEEKDAY","mod","modMonth","monthsShort","months","monthsShortRegex","monthsRegex","monthsParse","defaultLocaleMonths","defaultLocaleMonthsShort","MONTHS_IN_FORMAT","defaultMonthsShortRegex","defaultMonthsRegex","localeMonths","_months","isFormat","localeMonthsShort","_monthsShort","handleStrictParse","monthName","_monthsParse","_longMonthsParse","_shortMonthsParse","localeMonthsParse","_monthsParseExact","dayOfMonth","getSetMonth","getDaysInMonth","computeMonthsParse","_monthsShortStrictRegex","_monthsShortRegex","_monthsStrictRegex","_monthsRegex","cmpLenRev","shortPieces","longPieces","mixedPieces","daysInYear","parseTwoDigitYear","getSetYear","getIsLeapYear","createDate","createUTCDate","UTC","getUTCFullYear","setUTCFullYear","firstWeekOffset","dow","doy","fwd","getUTCDay","dayOfYearFromWeeks","week","weekday","resYear","resDayOfYear","dayOfYear","weekOfYear","resWeek","weekOffset","weeksInYear","weekOffsetNext","localeWeek","_week","defaultLocaleWeek","localeFirstDayOfWeek","localeFirstDayOfYear","getSetWeek","getSetISOWeek","parseWeekday","weekdaysParse","parseIsoWeekday","shiftWeekdays","ws","weekdaysMin","weekdaysShort","weekdays","weekdaysMinRegex","weekdaysShortRegex","weekdaysRegex","defaultLocaleWeekdays","defaultLocaleWeekdaysShort","defaultLocaleWeekdaysMin","defaultWeekdaysRegex","defaultWeekdaysShortRegex","defaultWeekdaysMinRegex","localeWeekdays","_weekdays","day","localeWeekdaysShort","_weekdaysShort","localeWeekdaysMin","_weekdaysMin","handleStrictParse$1","weekdayName","_weekdaysParse","_shortWeekdaysParse","_minWeekdaysParse","localeWeekdaysParse","_weekdaysParseExact","_fullWeekdaysParse","getSetDayOfWeek","getSetLocaleDayOfWeek","getSetISODayOfWeek","computeWeekdaysParse","_weekdaysStrictRegex","_weekdaysRegex","_weekdaysShortStrictRegex","_weekdaysShortRegex","_weekdaysMinStrictRegex","_weekdaysMinRegex","minp","shortp","longp","minPieces","hFormat","hours","kFormat","lowercase","minutes","matchMeridiem","_meridiemParse","localeIsPM","seconds","kInput","_isPm","isPM","_meridiem","pos1","pos2","defaultLocaleMeridiemParse","getSetHour","localeMeridiem","isLower","globalLocale","baseConfig","dayOfMonthOrdinalParse","meridiemParse","locales","localeFamilies","commonPrefix","arr1","minl","normalizeLocale","chooseLocale","loadLocale","isLocaleNameSane","oldLocale","_abbr","aliasedRequire","getSetGlobalLocale","values","getLocale","defineLocale","abbr","parentLocale","updateLocale","tmpLocale","listLocales","checkOverflow","_overflowDayOfYear","_overflowWeeks","_overflowWeekday","extendedIsoRegex","basicIsoRegex","tzRegex","isoDates","isoTimes","aspNetJsonRegex","obsOffsets","UT","GMT","EDT","EST","CDT","CST","MDT","MST","PDT","PST","configFromISO","allowTime","dateFormat","timeFormat","tzFormat","isoDatesLen","isoTimesLen","configFromStringAndFormat","extractFromRFC2822Strings","yearStr","monthStr","dayStr","hourStr","minuteStr","secondStr","untruncateYear","preprocessRFC2822","checkWeekday","weekdayStr","parsedInput","calculateOffset","obsOffset","militaryOffset","numOffset","configFromRFC2822","parsedArray","setUTCMinutes","getUTCMinutes","configFromString","createFromInputFallback","currentDateArray","nowValue","_useUTC","getUTCMonth","getUTCDate","configFromArray","currentDate","expectedWeekday","yearToUse","dayOfYearFromWeekInfo","_dayOfYear","_nextDay","weekYear","weekdayOverflow","curWeek","GG","createLocal","ISO_8601","RFC_2822","skipped","stringLength","totalParsedInputLength","meridiemFixWrap","erasConvertYear","hour","isPm","meridiemHour","configFromStringAndArray","tempConfig","bestMoment","scoreToBeat","currentScore","validFormatFound","bestFormatIsValid","configfLen","score","configFromObject","dayOrDate","minute","second","millisecond","createFromConfig","prepareConfig","preparse","configFromInput","isUTC","prototypeMin","prototypeMax","pickBy","moments","ordering","isDurationValid","unitHasDecimal","orderLen","isValid$1","createInvalid$1","createDuration","Duration","years","quarters","quarter","weeks","isoWeek","days","milliseconds","_milliseconds","_days","_bubble","isDuration","absRound","compareArrays","array1","array2","dontConvert","lengthDiff","diffs","utcOffset","offsetFromString","chunkOffset","matcher","parts","cloneWithOffset","model","local","getDateOffset","getSetOffset","keepLocalTime","keepMinutes","localAdjust","_changeInProgress","addSubtract","getSetZone","setOffsetToUTC","setOffsetToLocal","setOffsetToParsedOffset","tZone","hasAlignedHourOffset","isDaylightSavingTime","isDaylightSavingTimeShifted","_isDSTShifted","isLocal","isUtcOffset","isUtc","aspNetRegex","isoRegex","diffRes","parseIso","momentsDifference","inp","positiveMomentsDifference","isAfter","isBefore","createAdder","period","tmp","isAdding","isString","isMomentInput","isNumberOrStringArray","isMomentInputObject","objectTest","propertyTest","propertyLen","arrayTest","dataTypeTest","isCalendarSpec","getCalendarFormat","myMoment","calendar$1","formats","sod","startOf","calendarFormat","localInput","endOf","isBetween","inclusivity","localFrom","localTo","isSame","inputMs","isSameOrAfter","isSameOrBefore","asFloat","that","zoneDelta","monthDiff","wholeMonthDiff","anchor","toISOString","keepOffset","toDate","inspect","datetime","suffix","zone","inputString","defaultFormatUtc","defaultFormat","postformat","humanize","fromNow","toNow","newLocaleData","lang","MS_PER_SECOND","MS_PER_MINUTE","MS_PER_HOUR","MS_PER_400_YEARS","mod$1","dividend","divisor","localStartOfDate","utcStartOfDate","startOfDate","isoWeekday","unix","toObject","toJSON","isValid$2","parsingFlags","invalidAt","creationData","localeEras","eras","_eras","since","until","localeErasParse","eraName","narrow","localeErasConvertYear","getEraName","getEraNarrow","getEraAbbr","getEraYear","erasNameRegex","computeErasParse","_erasNameRegex","_erasRegex","erasAbbrRegex","_erasAbbrRegex","erasNarrowRegex","_erasNarrowRegex","matchEraAbbr","matchEraName","matchEraNarrow","matchEraYearOrdinal","_eraYearOrdinalRegex","abbrPieces","namePieces","narrowPieces","addWeekYearFormatToken","getSetWeekYear","getSetWeekYearHelper","getSetISOWeekYear","getISOWeeksInYear","getISOWeeksInISOWeekYear","isoWeekYear","getWeeksInYear","weekInfo","getWeeksInWeekYear","weeksTarget","setWeekAll","dayOfYearData","getSetQuarter","erasParse","eraYearOrdinalParse","getSetDayOfMonth","getSetDayOfYear","getSetMinute","getSetMillisecond","getSetSecond","parseMs","getZoneAbbr","getZoneName","createUnix","createInZone","parseZone","preParsePostFormat","for","eraNarrow","eraAbbr","eraYear","isoWeeks","weeksInWeekYear","isoWeeksInYear","isoWeeksInISOWeekYear","isDST","zoneAbbr","zoneName","dates","isDSTShifted","proto$1","get$1","setter","listMonthsImpl","out","listWeekdaysImpl","localeSorted","listMonths","listMonthsShort","listWeekdays","listWeekdaysShort","listWeekdaysMin","firstDayOfYear","firstDayOfWeek","langData","mathAbs","addSubtract$1","add$1","subtract$1","absCeil","monthsFromDays","monthsToDays","daysToMonths","valueOf$1","makeAs","asMilliseconds","asSeconds","asMinutes","asHours","asDays","asWeeks","asMonths","asQuarters","asYears","clone$1","get$2","makeGetter","thresholds","substituteTimeAgo","relativeTime$1","posNegDuration","getSetRelativeTimeRounding","roundingFunction","getSetRelativeTimeThreshold","limit","argWithSuffix","argThresholds","withSuffix","abs$1","toISOString$1","totalSign","ymSign","daysSign","hmsSign","proto$2","toIsoString","relativeTimeRounding","relativeTimeThreshold","HTML5_FMT","DATETIME_LOCAL","DATETIME_LOCAL_SECONDS","DATETIME_LOCAL_MS","TIME","TIME_SECONDS","TIME_MS","__unused_webpack_module","__unused_webpack_exports","Lib","rules","fullSelector","addStyleRule","Plotly","ReactPropTypesSecret","emptyFunction","emptyFunctionWithReset","resetWarningCache","shim","componentName","location","propFullName","secret","getShim","isRequired","ReactPropTypes","bigint","symbol","arrayOf","elementType","instanceOf","objectOf","oneOf","oneOfType","exact","checkPropTypes","PropTypes","aa","ca","encodeURIComponent","da","ea","fa","ia","ja","ka","la","ma","acceptsBooleans","attributeName","attributeNamespace","mustUseProperty","propertyName","sanitizeURL","removeEmptyString","ra","sa","ta","pa","qa","oa","removeAttribute","setAttributeNS","xlinkHref","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","wa","ya","za","Aa","Ba","Ca","Da","Ea","Fa","Ga","Ha","Ia","Ja","Ka","La","Ma","Na","Oa","prepareStackTrace","Reflect","construct","displayName","Pa","Qa","$$typeof","_context","_payload","_init","Ra","Sa","Ta","nodeName","Va","_valueTracker","getOwnPropertyDescriptor","setValue","stopTracking","Ua","Wa","checked","Xa","Ya","defaultChecked","_wrapperState","initialChecked","Za","controlled","ownerDocument","defaultSelected","disabled","dangerouslySetInnerHTML","textContent","namespaceURI","MSApp","execUnsafeLocalFunction","lastChild","nodeType","nodeValue","animationIterationCount","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridArea","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","lineClamp","order","tabSize","widows","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeWidth","setProperty","menuitem","area","br","embed","keygen","link","track","wbr","srcElement","correspondingUseElement","stateNode","onError","alternate","return","memoizedState","dehydrated","sibling","unstable_scheduleCallback","unstable_cancelCallback","unstable_shouldYield","unstable_requestPaint","unstable_now","unstable_getCurrentPriorityLevel","unstable_ImmediatePriority","unstable_UserBlockingPriority","unstable_NormalPriority","unstable_LowPriority","unstable_IdlePriority","clz32","pendingLanes","suspendedLanes","pingedLanes","entangledLanes","entanglements","eventTimes","delete","nativeEvent","blockedOn","domEventName","eventSystemFlags","targetContainers","isDehydrated","containerInfo","dispatchEvent","ReactCurrentBatchConfig","keyCode","charCode","_reactName","_targetInst","currentTarget","returnValue","cancelBubble","persist","isPersistent","eventPhase","bubbles","cancelable","isTrusted","view","detail","altKey","getModifierState","button","buttons","relatedTarget","fromElement","toElement","movementX","movementY","dataTransfer","animationName","elapsedTime","pseudoElement","clipboardData","Spacebar","Left","Right","Down","Del","Win","Menu","Apps","Scroll","MozPrintableKey","Alt","Control","Meta","Shift","pressure","tangentialPressure","tiltX","tiltY","twist","isPrimary","targetTouches","changedTouches","deltaX","wheelDeltaX","deltaZ","email","password","range","search","tel","oninput","detachEvent","attachEvent","nextSibling","compareDocumentPosition","HTMLIFrameElement","contentWindow","href","contentEditable","focusedElem","selectionRange","documentElement","selectionStart","selectionEnd","defaultView","getSelection","rangeCount","anchorNode","anchorOffset","focusNode","focusOffset","createRange","setStart","removeAllRanges","addRange","setEnd","scrollLeft","scrollTop","focus","animationend","animationiteration","animationstart","transitionend","parentWindow","na","xa","$a","ba","char","__html","queueMicrotask","previousSibling","contextTypes","__reactInternalMemoizedUnmaskedChildContext","__reactInternalMemoizedMaskedChildContext","childContextTypes","getChildContext","__reactInternalMemoizedMergedChildContext","deletions","pendingProps","treeContext","retryLane","memoizedProps","defaultProps","_currentValue","childLanes","dependencies","firstContext","lanes","memoizedValue","interleaved","updateQueue","baseState","firstBaseUpdate","lastBaseUpdate","shared","pending","effects","eventTime","lane","Component","refs","isMounted","_reactInternals","enqueueSetState","enqueueReplaceState","enqueueForceUpdate","shouldComponentUpdate","isPureReactComponent","contextType","updater","componentWillReceiveProps","UNSAFE_componentWillReceiveProps","getDerivedStateFromProps","getSnapshotBeforeUpdate","UNSAFE_componentWillMount","componentWillMount","componentDidMount","ref","_owner","_stringRef","implementation","tagName","revealOrder","_workInProgressVersionPrimary","ReactCurrentDispatcher","baseQueue","lastRenderedReducer","action","hasEagerState","eagerState","lastRenderedState","getSnapshot","lastEffect","stores","deps","readContext","useCallback","useContext","useEffect","useImperativeHandle","useInsertionEffect","useLayoutEffect","useMemo","useReducer","useRef","useState","useDebugValue","useDeferredValue","useTransition","useMutableSource","useSyncExternalStore","useId","unstable_isNewReconciler","identifierPrefix","digest","WeakMap","getDerivedStateFromError","componentDidCatch","componentStack","pingCache","ReactCurrentOwner","compare","baseLanes","cachePool","transitions","UNSAFE_componentWillUpdate","componentWillUpdate","componentDidUpdate","pendingContext","fallback","dataset","dgst","_reactRetry","subtreeFlags","isBackwards","rendering","renderingStartTime","tail","tailMode","wasMultiple","suppressHydrationWarning","onClick","onclick","createElementNS","autoFocus","createTextNode","WeakSet","_reactRootContainer","onCommitFiberUnmount","componentWillUnmount","isHidden","__reactInternalSnapshotBeforeUpdate","callbackNode","expirationTimes","expiredLanes","callbackPriority","finishedWork","finishedLanes","timeoutHandle","mutableReadLanes","onCommitFiberRoot","onRecoverableError","onPostCommitFiberRoot","isReactComponent","pendingChildren","mutableSourceEagerHydrationData","pendingSuspenseBoundaries","reportError","_internalRoot","unstable_scheduleHydration","querySelectorAll","JSON","stringify","form","usingClientEntryPoint","Events","findFiberByHostInstance","bundleType","rendererPackageName","rendererConfig","overrideHookState","overrideHookStateDeletePath","overrideHookStateRenamePath","overrideProps","overridePropsDeletePath","overridePropsRenamePath","setErrorHandler","setSuspenseHandler","scheduleUpdate","currentDispatcherRef","findHostInstanceByFiber","findHostInstancesForRefresh","scheduleRefresh","scheduleRoot","setRefreshHandler","getCurrentFiber","reconcilerVersion","__REACT_DEVTOOLS_GLOBAL_HOOK__","isDisabled","supportsFiber","inject","createPortal","createRoot","unstable_strictMode","findDOMNode","flushSync","hydrate","hydrateRoot","hydratedSources","_getVersion","unmountComponentAtNode","unstable_batchedUpdates","unstable_renderSubtreeIntoContainer","checkDCE","PlotlyComponent","_Component","_super","_createSuper","resizeHandler","syncWindowResize","_assertThisInitialized","syncEventHandlers","attachUpdateEvents","getRef","handleUpdate","figureCallback","updatePlotly","shouldInvokeResizeHandler","figureCallbackFunction","shouldAttachUpdateEvents","unmounting","react","onInitialized","prevProps","numPrevFrames","numNextFrames","figureChanged","revisionDefined","revision","revisionChanged","onUpdate","onPurge","isBrowser","removeUpdateEvents","purge","_this3","updateEvents","updateEvent","_this4","_this$el","_transitionData","_frames","invoke","_this5","useResizeHandler","Plots","_this6","eventNames","hasHandler","Boolean","addEventHandler","removeEventHandler","getPlotlyEventName","_react","divId","propTypes","_propTypes","_interopRequireWildcard","_factory","_interopRequireDefault","_plotly","__self","__source","Fragment","jsx","jsxs","setState","forceUpdate","escape","_status","_result","Children","only","Profiler","PureComponent","StrictMode","Suspense","cloneElement","createContext","_currentValue2","_threadCount","Provider","Consumer","_defaultValue","_globalName","createFactory","createRef","forwardRef","isValidElement","lazy","memo","startTransition","unstable_act","sortIndex","expirationTime","priorityLevel","scheduling","isInputPending","MessageChannel","port2","port1","unstable_Profiling","unstable_continueExecution","unstable_forceFrameRate","unstable_getFirstCallbackNode","unstable_next","unstable_pauseExecution","unstable_runWithPriority","unstable_wrapCallback","warning","loaded","chunkId","promises","miniCssF","globalThis","inProgress","dataWebpackPrefix","script","needAttach","scripts","getElementsByTagName","getAttribute","charset","timeout","onScriptComplete","onerror","doneFns","paths","installedChunks","installedChunkData","errorType","realSrc","request","webpackJsonpCallback","parentChunkLoadingFunction","chunkIds","moreModules","runtime","chunkLoadingGlobal","_toPropertyKey","hint","prim","toPrimitive","_setPrototypeOf","_getPrototypeOf","_isNativeReflectConstruct","sham","Proxy","Derived","hasNativeReflectConstruct","Super","NewTarget","_toConsumableArray","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","sym","_objectSpread2","getOwnPropertyDescriptors","excluded","sourceKeys","_objectWithoutProperties","sourceSymbolKeys","propertyIsEnumerable","_excluded","useButtonProps","rel","role","_ref2$tabIndex","tabIndex","handleClick","isTrivialHref","onKeyDown","Button","React","asProp","_objectWithoutPropertiesLoose","_useButtonProps2","buttonProps","_jsx","DEFAULT_BREAKPOINTS","DEFAULT_MIN_BREAKPOINT","ThemeContext","prefixes","breakpoints","minBreakpoint","useBootstrapPrefix","defaultPrefix","bsPrefix","variant","_objectSpread","nodeHtmlLabel","Graph","setSelectedNode","selectedWorkload","selectedOp","selectedPattern","setWarningText","_useState2","setGraph","_useState4","groupNode","setGroupNode","groupNodeOpList","workload_id","model_path","localStorage","getItem","response","op_name","groups","CytoGraph","_React$Component","handleCallback","childData","renderCytoscapeElement","getElements","node_type","newExpandedNodes","_jsxs","GraphButtons","parentCallback","collapseNode","tooltip","_React$Component2","_super2","getLabel","highlight","border_color","customColor","getHash","OpDetails","setHistogramType","setSelectedPattern","opDetails","setOpDetails","Pattern","sequence","colSpan","Weights","dtype","granularity","Activation","Table","striped","bordered","borderless","hover","responsive","decoratedBsPrefix","table","responsiveClass","OpList","setSelectedOp","opList","setOpList","_error$response","status","tableContent","opData","scrollIntoView","toExponential","Spinner","_ref$animation","_ref$as","bsSpinnerPrefix","Histogram","histogramType","histogramData","setHistogramData","Plot","getHistogramData","colorPalette","generateColor","histograms","series","orientation","side","fillcolor","hoverinfo","yaxis","autorange","showgrid","legend","tracegroupgap","violinmode","_get","receiver","desc","_construct","Parent","Class","_wrapNativeSuper","Wrapper","PACKET_TYPES","PACKET_TYPES_REVERSE","ERROR_PACKET","withNativeBlob","withNativeArrayBuffer","encodeBlobAsBase64","fileReader","FileReader","readAsDataURL","supportsBinary","isView","chars","decodeBase64Packet","binaryType","decoded","base64","encoded1","encoded2","encoded3","encoded4","bufferLength","arraybuffer","decode","mapBinary","encodedPacket","SEPARATOR","mixin","emitReserved","hasListeners","globalThisShim","pick","NATIVE_SET_TIMEOUT","NATIVE_CLEAR_TIMEOUT","installTimerFunctions","useNativeTimers","setTimeoutFn","clearTimeoutFn","BASE64_OVERHEAD","TransportError","_Error","description","Transport","_Emitter","socket","readyState","doOpen","doClose","onClose","packets","write","packet","decodePacket","onPacket","details","onPause","alphabet","encode","encoded","yeast","XMLHttpRequest","hasCORS","XHR","xdomain","hasXHR2","responseType","Polling","_Transport","polling","isSSL","protocol","port","hostname","xs","secure","forceBase64","poll","doPoll","encodedPayload","encodedPackets","decodedPacket","decodePayload","onOpen","close","encodePacket","encodePayload","doWrite","schema","timestampRequests","timestampParam","encodedQuery","Request","uri","xhrStatus","_this7","onData","pollXhr","_this8","async","_this9","xscheme","xhr","open","extraHeaders","setDisableHeaderCheck","setRequestHeader","withCredentials","requestTimeout","onreadystatechange","send","requestsCount","requests","cleanup","fromError","abort","responseText","unloadHandler","nextTick","WebSocket","isReactNative","product","WS","protocols","headers","addEventListeners","onopen","autoUnref","_socket","unref","onclose","closeEvent","lastPacket","transports","websocket","host","authority","ipv6uri","pathNames","regx","queryKey","$0","$2","Socket","writeBuffer","prevBufferLen","agent","upgrade","rememberUpgrade","addTrailingSlash","rejectUnauthorized","perMessageDeflate","transportOptions","closeOnBeforeunload","qry","pairs","pair","decodeURIComponent","upgrades","pingInterval","pingTimeout","pingTimeoutTimer","beforeunloadEventListener","transport","offlineEventListener","EIO","priorWebsocketSuccess","createTransport","setTransport","onDrain","failed","onTransportOpen","upgrading","freezeTransport","onTransportClose","onupgrade","probe","onHandshake","resetPingTimeout","sendPacket","filterUpgrades","maxPayload","getWritablePackets","payloadSize","utf8Length","byteLength","compress","cleanupAndClose","waitForUpgrade","filteredUpgrades","_createForOfIteratorHelper","allowArrayLike","normalCompletion","didErr","_e2","withNativeFile","File","hasBinary","deconstructPacket","buffers","packetData","pack","_deconstructPacket","attachments","placeholder","_placeholder","newData","reconstructPacket","_reconstructPacket","PacketType","Encoder","replacer","EVENT","ACK","encodeAsString","encodeAsBinary","BINARY_EVENT","BINARY_ACK","nsp","deconstruction","Decoder","reviver","reconstructor","isBinaryEvent","decodeString","BinaryReconstructor","takeBinaryData","buf","tryParse","isPayloadValid","finishedReconstruction","CONNECT","DISCONNECT","CONNECT_ERROR","reconPack","binData","RESERVED_EVENTS","freeze","connect","connect_error","disconnecting","newListener","io","connected","recovered","receiveBuffer","sendBuffer","_queue","_queueSeq","acks","auth","_opts","_autoConnect","subs","onpacket","subEvents","_readyState","_len2","_key2","retries","fromQueue","volatile","_addToQueue","ack","_registerAckCallback","isTransportWritable","engine","notifyOutgoingListeners","ackTimeout","timer","_len3","_key3","_len4","_key4","withErr","tryCount","_len5","responseArgs","_key5","_drainQueue","_packet","_sendConnectPacket","_pid","_lastOffset","onconnect","onevent","onack","ondisconnect","emitEvent","_anyListeners","_iterator","sent","_len6","_key6","emitBuffered","subDestroy","_anyOutgoingListeners","_step2","_iterator2","Backoff","jitter","attempts","rand","deviation","setMin","setMax","setJitter","Manager","nsps","reconnection","reconnectionAttempts","reconnectionDelay","reconnectionDelayMax","randomizationFactor","backoff","_parser","parser","encoder","decoder","autoConnect","_reconnection","_reconnectionAttempts","_reconnectionDelay","_randomizationFactor","_reconnectionDelayMax","_timeout","_reconnecting","reconnect","Engine","skipReconnect","openSubDestroy","errorSub","maybeReconnectOnOpen","onping","ondata","ondecoded","_nsps","_close","onreconnect","attempt","parsed","sameNamespace","forceNew","multiplex","Workloads","setSelectedWorkload","workloads","setWorkloads","spinner","setSpinner","getWorkloads","changeSelectedWorkload","workloadsList","workload","moment","creation_time","framework","Profiling","profilingTable","setProfilingTable","profilingChartData","setProfilingChartData","ProfilingChart","ProfilingTable","_useState6","setChecked","_useState8","sorting","setSorting","showOnChart","chartData","node_name","sortedProfiling","sortedTable","requestSorting","getSortingClass","profiling","accelerator_execution_time","cpu_execution_time","op_defined","op_run","total_execution_time","chartCheck","newProfilingChartData","requestChartCheck","getChartData","profilingData","marker","xaxis","title","showticklabels","defaultKey","_toPrimitive","useUncontrolled","fieldName","_extends2","Utils","propsValue","rest","handlerName","_useUncontrolledProp","propValue","wasPropRef","_useState","stateValue","isProp","wasProp","useUncontrolledProp","_extends","nextProps","prevState","nextState","__reactInternalSnapshotFlag","__reactInternalSnapshot","__suppressDeprecationWarning","useEventCallback","useCommittedRef","Anchor","handleKeyDown","UNMOUNTED","EXITED","ENTERING","ENTERED","EXITING","Transition","initialStatus","appear","isMounting","enter","appearStatus","in","unmountOnExit","mountOnEnter","nextCallback","_proto","updateStatus","nextStatus","cancelNextCallback","getTimeouts","exit","mounting","nodeRef","ReactDOM","forceReflow","performEnter","performExit","appearing","maybeNode","maybeAppearing","timeouts","enterTimeout","safeSetState","onEntered","onEnter","onEntering","onTransitionEnd","onExit","onExiting","onExited","setNextCallback","doesNotHaveTimeoutOrListener","addEndListener","maybeNextCallback","_this$props","childProps","TransitionGroupContext","ownerWindow","rUpper","msPattern","hyphenateStyleName","hyphenate","supportedTransforms","transforms","psuedoElement","isTransform","removeProperty","cssText","optionsSupported","onceSupported","canUseDOM","wrappedHandler","__once","onceHandler","emulateTransitionEnd","called","handle","createEvent","initEvent","transitionEnd","parseDuration","removeEmulate","transitionEndListener","toFnRef","refA","refB","mergeRefs","childRef","mergedRef","useMergedRefs","attachRef","componentOrElement","handleEnter","handleEntering","handleEntered","handleExit","handleExiting","handleExited","handleAddEndListener","innerProps","fadeStyles","_fadeStyles","Fade","_ref$transitionClasse","transitionClasses","isAppearing","triggerBrowserReflow","TransitionWrapper","CloseButton","rHyphen","pascalCase","chr","createWithBsPrefix","_ref$displayName","BsComponent","_ref2$as","Tag","resolvedPrefix","DivStyledAsH4","AlertHeading","AlertLink","closeLabel","Alert","uncontrolledProps","_useUncontrolled","closeVariant","dismissible","handleClose","alert","Link","Heading","Warning","warningText","Feedback","_ref$type","_ref$tooltip","FormCheckInput","_ref$isValid","_ref$isInvalid","controlId","FormContext","FormCheckLabel","htmlFor","FormCheck","bsSwitchPrefix","_ref$inline","inline","_ref$reverse","_ref$disabled","_ref$feedbackTooltip","feedbackTooltip","feedback","feedbackType","_ref$title","innerFormContext","hasLabel","hasChildOfType","_Fragment","Input","Label","FormControl","_classes2","htmlSize","plaintext","readOnly","FormGroup","useCol","spans","brkPoint","span","infix","Col","_useCol2","_useCol2$","colProps","_excluded2","_useCol2$2","_useCol2$2$as","FormLabel","column","visuallyHidden","columnClass","FormRange","FormSelect","FormText","muted","Switch","FloatingLabel","validated","Form","Group","Floating","FormFloating","Check","Text","Range","Select","InputGroupText","InputGroup","hasValidation","contextValue","InputGroupContext","Radio","Checkbox","NodeProperties","selectedNode","_selectedNode$attribu","propertyList","attributeList","attribute","AccuracyResults","_ref4","accuracy_data","baseline_accuracy","optimized_accuracy","ratio","_useState10","_useState12","kindOf","thing","kindOfTest","typeOfTest","isArrayBuffer","isPlainObject","isFile","isBlob","isFileList","isURLSearchParams","_ref$allOwnKeys","allOwnKeys","findKey","_global","isContextDefined","TypedArray","isTypedArray","isHTMLForm","isRegExp","reduceDescriptors","reducer","descriptors","reducedDescriptors","ALPHA","DIGIT","ALPHABET","ALPHA_DIGIT","isBuffer","isFormData","FormData","isArrayBufferView","isBoolean","isStream","pipe","caseless","targetKey","stripBOM","inherits","superConstructor","toFlatObject","sourceObj","destObj","propFilter","endsWith","searchString","forEachEntry","matchAll","regExp","freezeMethods","toObjectSet","arrayOrString","delimiter","toCamelCase","toFiniteNumber","generateString","isSpecCompliantForm","toJSONObject","reducedValue","AxiosError","captureStackTrace","utils","fileName","lineNumber","columnNumber","customProps","axiosError","isVisitable","removeBrackets","renderKey","dots","predicates","formData","PlatformFormData","metaTokens","indexes","option","visitor","defaultVisitor","useBlob","convertValue","Buffer","isFlatArray","exposedHelpers","build","charMap","AxiosURLSearchParams","_pairs","toFormData","_encode","buildURL","serializedParams","serializeFn","serialize","hashmarkIndex","InterceptorManager","fulfilled","rejected","synchronous","runWhen","silentJSONParsing","forcedJSONParsing","clarifyTimeoutError","URLSearchParams","isStandardBrowserEnv","isStandardBrowserWebWorkerEnv","WorkerGlobalScope","importScripts","buildPath","isNumericKey","isLast","arrayToObject","parsePropPath","DEFAULT_CONTENT_TYPE","transitional","transitionalDefaults","adapter","transformRequest","contentType","getContentType","hasJSONContentType","isObjectPayload","formDataToJSON","setContentType","platform","helpers","toURLEncodedForm","formSerializer","_FormData","env","rawValue","stringifySafely","transformResponse","JSONRequested","strictJSONParsing","xsrfCookieName","xsrfHeaderName","maxContentLength","maxBodyLength","validateStatus","common","ignoreDuplicateOf","$internals","normalizeHeader","header","normalizeValue","matchHeaderValue","isHeaderNameFilter","AxiosHeaders","_Symbol$iterator","_Symbol$toStringTag","valueOrRewrite","rewrite","setHeader","_header","_rewrite","lHeader","setHeaders","rawHeaders","parseHeaders","tokensRE","parseTokens","deleted","deleteHeader","normalized","formatHeader","_this$constructor","asStrings","computed","accessors","defineAccessor","accessorName","methodName","buildAccessors","accessor","transformData","isCancel","__CANCEL__","CanceledError","expires","domain","cookie","toGMTString","read","buildFullPath","baseURL","requestedURL","isAbsoluteURL","relativeURL","combineURLs","originURL","msie","urlParsingNode","resolveURL","pathname","requestURL","samplesCount","firstSampleTS","timestamps","chunkLength","startedAt","bytesCount","passed","progressEventReducer","isDownloadStream","bytesNotified","_speedometer","speedometer","lengthComputable","progressBytes","rate","estimated","onCanceled","requestData","requestHeaders","cancelToken","unsubscribe","signal","username","unescape","btoa","fullPath","onloadend","responseHeaders","getAllResponseHeaders","settle","statusText","paramsSerializer","responseURL","onabort","ontimeout","timeoutErrorMessage","xsrfValue","isURLSameOrigin","cookies","onDownloadProgress","onUploadProgress","upload","subscribe","aborted","parseProtocol","knownAdapters","http","httpAdapter","xhrAdapter","getAdapter","adapters","nameOrAdapter","throwIfCancellationRequested","throwIfRequested","dispatchRequest","headersToObject","mergeConfig","config1","config2","getMergedValue","mergeDeepProperties","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","timeoutMessage","decompress","beforeRedirect","httpAgent","httpsAgent","socketPath","responseEncoding","configValue","VERSION","validators","deprecatedWarnings","validator","formatMessage","opt","assertOptions","allowUnknown","Axios","instanceConfig","interceptors","configOrUrl","contextHeaders","boolean","function","requestInterceptorChain","synchronousRequestInterceptors","interceptor","responseInterceptorChain","chain","newConfig","generateHTTPMethod","isForm","CancelToken","resolvePromise","_listeners","onfulfilled","_resolve","HttpStatusCode","Continue","SwitchingProtocols","Processing","EarlyHints","Created","Accepted","NonAuthoritativeInformation","NoContent","ResetContent","PartialContent","MultiStatus","AlreadyReported","ImUsed","MultipleChoices","MovedPermanently","Found","SeeOther","NotModified","UseProxy","Unused","TemporaryRedirect","PermanentRedirect","BadRequest","Unauthorized","PaymentRequired","Forbidden","NotFound","MethodNotAllowed","NotAcceptable","ProxyAuthenticationRequired","RequestTimeout","Conflict","Gone","LengthRequired","PreconditionFailed","PayloadTooLarge","UriTooLong","UnsupportedMediaType","RangeNotSatisfiable","ExpectationFailed","ImATeapot","MisdirectedRequest","UnprocessableEntity","Locked","FailedDependency","TooEarly","UpgradeRequired","PreconditionRequired","TooManyRequests","RequestHeaderFieldsTooLarge","UnavailableForLegalReasons","InternalServerError","NotImplemented","BadGateway","ServiceUnavailable","GatewayTimeout","HttpVersionNotSupported","VariantAlsoNegotiates","InsufficientStorage","LoopDetected","NotExtended","NetworkAuthenticationRequired","axios","createInstance","defaultConfig","Cancel","spread","isAxiosError","formToJSON","setItem","Diagnosis","onPerfEntry","getCLS","getFID","getFCP","getLCP","getTTFB","App","reportWebVitals"],"sourceRoot":""} \ No newline at end of file diff --git a/neural_insights/web/configuration.py b/neural_insights/web/configuration.py index eeea33c1076..248c4973c78 100644 --- a/neural_insights/web/configuration.py +++ b/neural_insights/web/configuration.py @@ -18,13 +18,14 @@ import argparse import logging import os +import secrets import socket import sys from typing import Dict +from neural_compressor.utils.utility import singleton from numpy.random import randint -from neural_compressor.utils.utility import singleton from neural_insights.utils.consts import WORKDIR_LOCATION from neural_insights.utils.exceptions import NotFoundException from neural_insights.utils.logger import log @@ -65,7 +66,7 @@ def determine_values_from_environment(self) -> None: self.url_prefix = self.determine_url_prefix(args) self.gui_port = self.determine_gui_port(args) self.log_level = self.determine_log_level(args) - self.token = "asd" # secrets.token_hex(16) + self.token = secrets.token_hex(16) self.allow_insecure_connections = args.get("allow_insecure_connections", False) self.tls_certificate = args.get("cert", "") self.tls_key = args.get("key", "")